汇川H3U的模拟量输入滤波设置
1. 问题背景与解决思路
模拟量信号容易受到电磁干扰,导致采集数值跳动。如果不进行滤波处理,后续的PID控制或显示数据会产生剧烈波动,影响设备稳定性。汇川H3U系列PLC通常有两种滤波方式:硬件配置软件参数和程序算法平滑。本指南将重点介绍如何在编程软件中直接配置系统参数,以及在必要时如何编写梯形图逻辑实现二次滤波。
2. 前期准备工作
在开始设置之前,必须确保物理连接正确。错误的接线无法通过软件过滤消除。
- 检查 信号线与动力线的距离,必须保持至少
20cm以上的间距。 - 使用 屏蔽电缆,并将屏蔽层在PLC端单点接地。
- 确认 传感器输出信号类型,是
0~10V电压信号还是4~20mA电流信号。 - 核对 H3U型号是否带有模拟量模块或板卡,例如
H3U-AE板卡或H3U-16XT等带扩展口的型号。
3. 方法一:ISPSoft 软件参数配置(推荐)
这是最直接的方法,利用PLC内置的处理机制去除高频噪声。该方法不占用额外的CPU运算时间。
3.1 进入设备参数设置界面
- 启动 汇川官方编程软件
ISPSoft。 - 打开 已有的
.isp项目文件,或者 新建 一个工程。 - 双击 左侧项目树中的
CPU信息或Device Information图标。 - 展开 硬件配置菜单,找到
Integrated IO(集成IO)或Expansion Modules(扩展模块)。 - 定位 到具体的模拟量输入通道,例如
Analog Input 1。
3.2 修改滤波系数
不同型号的H3U菜单名称略有差异,但核心参数一致。
- 勾选 启用数字滤波选项,部分版本称为
Digital Filter或Smoothing。 - 填写 滤波系数数值。该数值代表平均采样次数。
- 设置为
1表示直通无滤波。 - 设置为
10表示取最近10次采样的平均值。 - 设置为
255表示最高级滤波,响应速度最慢但最稳定。
- 设置为
- 建议 初始值设为
5,根据实际现场干扰情况递增调整。
注意:若使用的是模拟量扩展模块(如
IN0-ADP),需在模块对应的配置页签中单独设置,不能只设CPU主站。
3.3 常用寄存器地址参考
虽然大多数参数可在图形界面设置,但理解底层数据映射有助于后续调试。以下为常见H3U型号的模拟量数据存储地址规划:
| 通道类型 | 对应PLC寄存器 | 数据范围 | 说明 |
|---|---|---|---|
| 第一路模拟输入 | D200 |
0~27648 |
对应 0~10V 或 4~20mA |
| 第二路模拟输入 | D201 |
0~27648 |
同上 |
| 状态标志位 | M0 |
ON/OFF |
故障报警位 |
| 特殊功能字 | D8030 |
ms |
扫描周期相关(视具体固件而定) |
4. 方法二:梯形图程序二次滤波(进阶)
当内置硬件滤波无法满足要求,或者你需要对滤波强度进行动态控制时,必须在梯形图中编写平滑算法。最常用的方法是移动平均法。
4.1 算式原理
为了简化计算并保证精度,推荐使用算术平均值。假设当前读取值为 $X$,上一次保存的平均值为 $Y_{prev}$,新的平均值 $Y_{new}$ 计算公式如下:
$$ Y_{new} = \frac{\sum_{i=1}^{N} X_i}{N} $$
其中 $N$ 为采样点数。但在PLC中,实时累加所有历史数据会消耗大量内存。因此工业界常用“指数移动平均”公式来实现类似效果且运算量少:
$$ Y_t = \alpha \cdot X_t + (1-\alpha) \cdot Y_{t-1} $$
其中 $\alpha$ 为平滑系数,取值范围为 $0 < \alpha < 1$。$\alpha$ 越接近 1,跟踪速度越快;$\alpha$ 越接近 0,滤波效果越强。
4.2 梯形图实现步骤
由于不同型号的指令集略有差异,以通用梯形图逻辑描述:
- 建立 两个中间寄存器,分别用于存储
当前采样值和上次输出值。- 例如:
当前值存入D100。 - 例如:
滤波后值存入D101。
- 例如:
- 调用 浮点运算指令
DFLOAT,将整数模拟量转换为浮点数,以提高计算精度。 - 执行 乘法和加法运算。
- 将
D100乘以系数0.1(即 $\alpha=0.1$)。 - 将结果加上
D101乘以系数0.9(即 $1-\alpha$)。
- 将
- 赋值 最终结果回存至
D101。 - 触发 逻辑必须在每个扫描周期的上升沿,或使用定时器中断,避免在一个周期内重复计算导致数值错误归零。
4.3 伪代码示例
为了方便理解逻辑流向,以下是该算法的文本化流程描述:
- 读取
D200原始值。 - 判断 如果
M0(使能位)接通。 - 转换 将
D200转为浮点数R0。 - 读取
D101上一轮结果转为浮点数R1。 - 计算
R_result = R0 * 0.2 + R1 * 0.8。 - 转换 将
R_result转回整数写入D101。 - 循环 等待下一个扫描周期重复上述过程。
5. 验证与调试技巧
设置完成后,必须验证滤波效果是否达到预期。盲目修改参数可能导致控制滞后。
- 连接 电脑与PLC,进入在线模式。
- 打开
监控表窗口。 - 添加 原始变量
D200和滤波后变量D101。 - 观察 屏幕上的数值变化曲线。
- 如果波形锯齿状严重,说明滤波太弱。
- 如果操作信号后数值反应迟钝,说明滤波太强。
- 调整 硬件参数中的采样次数,或修改程序中的 $\alpha$ 系数。
- 若需更灵敏,将
0.2改为0.3。 - 若需更稳定,将
0.2改为0.05。
- 若需更灵敏,将
- 锁定 最佳数值,并在程序中增加注释,便于日后维护人员查阅。
6. 常见故障排查
在执行上述步骤过程中,可能会遇到以下典型问题:
- 数值始终为 0:
- 检查 硬件接线是否断路。
- 检查 供电电源是否稳定,24V 电源功率不足会导致信号丢失。
- 确认 ISPSoft 中的量程设置与实际传感器是否匹配(例如选了
-10~10V而传感器是0~10V)。
- 数值乱跳且有规律:
- 这通常是工频干扰(50Hz 或 60Hz)。
- 措施:提高滤波采样次数至
10的倍数以上,以抵消工频周期。
- 程序运行正常但下载后无效:
- 操作:点击
全编译按钮,确保无报错。 - 操作:执行
停止PLC后复位再运行,部分参数重置需要冷启动生效。 - 操作:检查 PLC CPU 开关位置是否在
RUN档。
- 操作:点击
7. 高级应用:多通道独立滤波
当一台PLC控制多个传感器时,不同信号源的干扰特性不同,不能使用同一套参数。
- 定义 不同的寄存器组。
- 通道1 使用
D100至D102进行滤波。 - 通道2 使用
D200至D202进行滤波。
- 通道1 使用
- 复制 滤波子程序段。
- 选中 写好的第一个通道的梯形图段落。
- 粘贴 到下一个网络块。
- 批量替换 其中的寄存器编号(如将
D1xx全部替换为D2xx)。
- 独立调整 每个通道的系数。
- 对于温度传感器,响应本身慢,可设置强滤波($\alpha=0.01$)。
- 对于压力阀反馈,需要快速响应,可设置弱滤波($\alpha=0.5$)。
通过以上步骤,可以完全掌控汇川H3U的模拟量输入质量。在实际工程中,优先尝试硬件内部滤波以减少CPU负载;仅在硬件滤波无法满足特定工艺需求时,再引入梯形图算法补偿。

暂无评论,快来抢沙发吧!