PLC问答
> 松下FP-X PLC的模拟量输入模块读数有较大波动,如何滤波处理?
松下FP-X PLC的模拟量输入模块读数有较大波动,如何滤波处理?
松下FP-X PLC连接模拟量输入模块(AFPX-AD2),采集温度传感器信号,但读数波动很大(±10℃),即使传感器稳定时也一样。
如何在编程中实现滤波?
5 个回答
✓ 最佳回答
模拟量口诀:接线先查地,屏蔽单端接,量程要对齐,数字要换算。
读数跳变查电源干扰,读数恒0查断线开路,读满量程32767查超限。
记住:模拟量九成问题在硬件,先量表后动程序。
模拟量读数波动可能来自传感器噪声、电源干扰或模块分辨率限制。处理方案分硬件和软件两层:
硬件方面:
1. 检查传感器接线是否使用屏蔽双绞线,屏蔽层单端接地(PLC侧)。
2. 在模拟量输入端子间并联104电容(0.1μF)滤除高频噪声,但注意响应速度。
3. 确保模块供电稳定,使用24VDC开关电源,避免与电机共用电源。
软件滤波(松下FP-X编程):
1. 在FPWIN GR或Pro 7中,使用‘移动平均滤波’指令(如F60 MOV和算术指令实现)。例如采集10次数据,计算平均值。采样周期设为100ms,平均窗口10个周期,可有效抑制波动。
2. 使用‘一阶惯性滤波’:Y[n] = α * X[n] + (1-α) * Y[n-1],α取0.1~0.3,用浮点运算,注意防止溢出。
3. 对温度信号,可加入‘死区’判断:如果当前值与上次值差值小于死区(如2℃),则保持输出不变。
4. 利用模块自带的数字滤波功能(如有),在模块参数中设置滤波时间常数。
推荐结合移动平均和中值滤波:取5次采样,去掉最大最小后平均,效果最佳。注意滤波会增加延迟,需根据控制周期权衡。
补充一下:模拟量读数波动可能来自传感器噪声、电源干扰或模块分辨率限制。处理方案分硬件和软件两层:
硬件方面:
1. 检查传感器接线是否使用屏蔽双绞线,屏蔽层单端接地(PLC侧)。
2. 在模拟量输入端子间并联1另外建议检查现场环境温度和接线。
模拟量读数不准,先按这个顺序查:一查接线,屏蔽层单端接地、信号线双绞,和动力线分开走,公共端(COM)必须接对,这是七八成的根因;二查通道配置,量程、滤波时间常数、断线检测设没设对,通道有没有被屏蔽;三查现场信号源,变送器供电够不够、负载阻抗匹配不匹配,拿万用表量实际电流/电压和PLC读到的对不对得上。
别上来就调程序,先拿表量,模拟量问题九成在硬件。
分享个真实案例:有个厂4-20mA压力读数跳变,拆了换模块、换屏蔽线都没用,最后发现是变送器和PLC的电源共用了同一个开关电源,电机启停一下电压波动,读数就跟着跳。
后来变送器单独供电,问题当场消失。
模拟量跳变先查电源和接地:信号地和电源地分开、屏蔽层只在PLC端接地、走线远离变频器,这三点做好能解决绝大部分干扰问题。