用S7-300 PLC对绝对值编码器进行实时数据采样,发现采样回来的信号,偶然会发生数据突变的现象,干扰信号时间很短,一闪而过,如何用编程方法把干扰信号过滤掉,请各位大侠指点,给出一些用编程方法过滤干扰信号的实例,谢谢!
最佳答案
滤波或者取平均值终不是最终解决问题的办法,只能算是一种临时措施,因为违背了实时性采集数据的原则。
1)首先排除地址重置问题;
2)这个编码器距离长?采用屏蔽电缆线连接到模块?屏蔽层连接到PE系统?设备接地?接地符合要求?
3)如果设备上使用到变频器,这些变频器均接地?有条件采用屏蔽动力电缆连接到电机。
高速数据取平均的方法:
1)定义一个循环定时中断如OB35,并定义一个合理的时间周期,这个需要实际现场调试;
2)在这个信号定时中断中编辑采集编码器数据,如采集5次,取一个平均值。
另一种方法:
假设这个系统中最高速度已经被测试出来,如200mm/S,那么在采集高速编码器数据时,当数据大于200mm/S的则判断为干扰信号。
提问者对于答案的评价:
请问老师:上面两种方法,能否给出具体的编程实例,谢谢!方便的话,请发到我邮箱:liu16328@163.com
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc345296.html