文章目录

汇川H3U的模拟量输入滤波设置

发布于 2026-03-29 10:48:06 · 浏览 12 次 · 评论 0 条

汇川H3U的模拟量输入滤波设置

1. 问题背景与解决思路

模拟量信号容易受到电磁干扰,导致采集数值跳动。如果不进行滤波处理,后续的PID控制或显示数据会产生剧烈波动,影响设备稳定性。汇川H3U系列PLC通常有两种滤波方式:硬件配置软件参数和程序算法平滑。本指南将重点介绍如何在编程软件中直接配置系统参数,以及在必要时如何编写梯形图逻辑实现二次滤波。

2. 前期准备工作

在开始设置之前,必须确保物理连接正确。错误的接线无法通过软件过滤消除。

  1. 检查 信号线与动力线的距离,必须保持至少 20cm 以上的间距。
  2. 使用 屏蔽电缆,并将屏蔽层在PLC端单点接地。
  3. 确认 传感器输出信号类型,是 0~10V 电压信号还是 4~20mA 电流信号。
  4. 核对 H3U型号是否带有模拟量模块或板卡,例如 H3U-AE 板卡或 H3U-16XT 等带扩展口的型号。

3. 方法一:ISPSoft 软件参数配置(推荐)

这是最直接的方法,利用PLC内置的处理机制去除高频噪声。该方法不占用额外的CPU运算时间。

3.1 进入设备参数设置界面

  1. 启动 汇川官方编程软件 ISPSoft
  2. 打开 已有的 .isp 项目文件,或者 新建 一个工程。
  3. 双击 左侧项目树中的 CPU信息Device Information 图标。
  4. 展开 硬件配置菜单,找到 Integrated IO(集成IO)或 Expansion Modules(扩展模块)。
  5. 定位 到具体的模拟量输入通道,例如 Analog Input 1

3.2 修改滤波系数

不同型号的H3U菜单名称略有差异,但核心参数一致。

  1. 勾选 启用数字滤波选项,部分版本称为 Digital FilterSmoothing
  2. 填写 滤波系数数值。该数值代表平均采样次数。
    • 设置为 1 表示直通无滤波。
    • 设置为 10 表示取最近10次采样的平均值。
    • 设置为 255 表示最高级滤波,响应速度最慢但最稳定。
  3. 建议 初始值设为 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 梯形图实现步骤

由于不同型号的指令集略有差异,以通用梯形图逻辑描述:

  1. 建立 两个中间寄存器,分别用于存储 当前采样值上次输出值
    • 例如:当前值 存入 D100
    • 例如:滤波后值 存入 D101
  2. 调用 浮点运算指令 DFLOAT,将整数模拟量转换为浮点数,以提高计算精度。
  3. 执行 乘法和加法运算。
    • D100 乘以系数 0.1(即 $\alpha=0.1$)。
    • 将结果加上 D101 乘以系数 0.9(即 $1-\alpha$)。
  4. 赋值 最终结果回存至 D101
  5. 触发 逻辑必须在每个扫描周期的上升沿,或使用定时器中断,避免在一个周期内重复计算导致数值错误归零。

4.3 伪代码示例

为了方便理解逻辑流向,以下是该算法的文本化流程描述:

  1. 读取 D200 原始值。
  2. 判断 如果 M0(使能位)接通。
  3. 转换D200 转为浮点数 R0
  4. 读取 D101 上一轮结果转为浮点数 R1
  5. 计算 R_result = R0 * 0.2 + R1 * 0.8
  6. 转换R_result 转回整数写入 D101
  7. 循环 等待下一个扫描周期重复上述过程。

5. 验证与调试技巧

设置完成后,必须验证滤波效果是否达到预期。盲目修改参数可能导致控制滞后。

  1. 连接 电脑与PLC,进入在线模式。
  2. 打开 监控表 窗口。
  3. 添加 原始变量 D200 和滤波后变量 D101
  4. 观察 屏幕上的数值变化曲线。
    • 如果波形锯齿状严重,说明滤波太弱。
    • 如果操作信号后数值反应迟钝,说明滤波太强。
  5. 调整 硬件参数中的采样次数,或修改程序中的 $\alpha$ 系数。
    • 若需更灵敏,将 0.2 改为 0.3
    • 若需更稳定,将 0.2 改为 0.05
  6. 锁定 最佳数值,并在程序中增加注释,便于日后维护人员查阅。

6. 常见故障排查

在执行上述步骤过程中,可能会遇到以下典型问题:

  1. 数值始终为 0
    • 检查 硬件接线是否断路。
    • 检查 供电电源是否稳定,24V 电源功率不足会导致信号丢失。
    • 确认 ISPSoft 中的量程设置与实际传感器是否匹配(例如选了 -10~10V 而传感器是 0~10V)。
  2. 数值乱跳且有规律
    • 这通常是工频干扰(50Hz 或 60Hz)。
    • 措施:提高滤波采样次数至 10 的倍数以上,以抵消工频周期。
  3. 程序运行正常但下载后无效
    • 操作点击 全编译 按钮,确保无报错。
    • 操作执行 停止 PLC后 复位运行,部分参数重置需要冷启动生效。
    • 操作检查 PLC CPU 开关位置是否在 RUN 档。

7. 高级应用:多通道独立滤波

当一台PLC控制多个传感器时,不同信号源的干扰特性不同,不能使用同一套参数。

  1. 定义 不同的寄存器组。
    • 通道1 使用 D100D102 进行滤波。
    • 通道2 使用 D200D202 进行滤波。
  2. 复制 滤波子程序段。
    • 选中 写好的第一个通道的梯形图段落。
    • 粘贴 到下一个网络块。
    • 批量替换 其中的寄存器编号(如将 D1xx 全部替换为 D2xx)。
  3. 独立调整 每个通道的系数。
    • 对于温度传感器,响应本身慢,可设置强滤波($\alpha=0.01$)。
    • 对于压力阀反馈,需要快速响应,可设置弱滤波($\alpha=0.5$)。

通过以上步骤,可以完全掌控汇川H3U的模拟量输入质量。在实际工程中,优先尝试硬件内部滤波以减少CPU负载;仅在硬件滤波无法满足特定工艺需求时,再引入梯形图算法补偿。

评论 (0)

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

扫一扫,手机查看

扫描上方二维码,在手机上查看本文