西门子PLC模拟量模块干扰问题的解决方法
程序调试时,模拟量模块干扰问题普遍存在,就是读取的数值跳变很快,有时数值这差在几百至10000,这就会引起系统中断电器的误动作,甚至不能实现调制。 现分享一下我在工程中遇此问题的解决方法(实际工程已验证此方超好,数值超稳):一般模拟量模块外部接线(信号为4-20mA)电流信号时,我们先把RA与A+短接后再接电流信号的正端,而电流负端接模块的A-,此为标准接线方法,但由于现场存在干扰,此法就不行了。改进后的方法为模块电源的M端不接地,而把信号负端与其短接。如图,效果很明显. |
S7-200 PLC可以连接型编码器,但应注意以下几点:
(1)S7-200 PLC可连接并行输出的型编码器。串行输出、总线型输出、变送一体型输出等型编码器需PLC具有相应的接口或组态能力,不能与西门子S7-200 PLC 直接连接。
(2)接入S7-200 PLC 的型编码器信号输出好是格雷码。如是纯二进制码,在数据刷新时可能有多位变化,读数会在短时间里造成错码。
(3)型编码器在每圈的每个位置都有唯一的编码,由于 PLC数据更新受程序扫描周期的影响,因此经PLC读取并换算后的编码器位置值相对于编码器当前位置值存在一定的误差。
(4)对型编码器进行接线时,必须确保其与PLC输入点连接好。如有个别连接不良点,该点电位始终是0,将会造成错码而无法判断。
使用Modbus库注意事项:
1.使用Modbus库指令,一定要分配库内存;
2.分配的库内存范围一定不要和可读取的内存范围有重复的地方,否则初始化不成功。
帮助:MaxHold参数设定供Modbus地址04xxx使用的V内存中的字保持寄存器数目。例如,为了允许主设备存取2000个字节的V内存,将MaxHold设为1000个字的数值(保持寄存器)。
HoldStart参数是V内存中保持寄存器的起始地址。该数值一般被设为VB0,因此HoldStart参数被设为&VB0(VB0地址)。其他V内存地址可指定为保持寄存器的起始地址,以便在项目的其他地方使用VB0。Modbus主设备可存取V内存MaxHold个字数,从HoldStart开始。
如果HoldStart设为&VB0,MaxHold设为1000,即Modbus主设备可存取V内存从VB0开始,可存取1000个字,2000个字节。则库内存的开始地址一定要从2000以上开始,否则初始化不成功,返回错误代码为5,即“保持寄存器与Modbus从属符号重叠”。