S7-200 plc高速计数器模式9﹑10﹑11支持A/B相正交计数器,其原理是判断A/B相正交脉冲输入信号A相超前或落后B相90度相位角,对应A/B相正交计数器增或减计数。
2.如何在S7-200 PLC中判断A/B相正交计数器方向
根据以上原理,比较相邻两次定时中断采集的高速计数器当前值大小,我们可以在S7-200 PLC中判断A/B相正交计数器的方向。具体可参考以下三部分编程来实现:
首先,设置定时中断时间(可设为0-255ms内任意值)并连接该中断。如下图1所示:
图1启用定时中断
其次在相邻两次定时中断执行时,分别采集高速计数器当前值并将其传送到两个不同寄存器地址中,如下图2所示:
图2采集高速计数器当前值
最后,在程序中比较相邻两次定时中断采集的高速计数器当前值大小,即可实现S7-200PLC中A/B相正交计数器的方向判断。
注意:判断方向的时间间隔是设置的定时中断周期的两倍。如下图3所示:
(1) 状态1的高速计数器数值大于状态0的高速计数器数值,A/B相正交计数器增计数;
(2) 状态1的高速计数器数值小于状态0的高速计数器数值,A/B相正交计数器减计数。
图3 A/B相正交计数器方向判断