1.和输入输出有关的指令
(1)输入输出刷新指令REF REF(P)指令的编号为FNC50。FX系列PLC采用集中输入输出的方式。如果需要最新的输入信息以及希望立即输出结果则必须使用该指令。如图3-60所示,当X0接通时,X10~X17共8点将被刷新;当X1接通时,则Y0~Y7、Y10~Y17、共16点输出将被刷新。
图3-60 输入输出刷新指令的使用
使用REF指令时应注意:
1)目标操作数为元件编号个位为0的X和Y,n应为8的整倍数。
2)指令只要进行16位运算,占5个程序步。
(2)滤波调整指令REFF REFF(P)指令的编号为FNC51。在FX系列PLC中X0~X17使用了数字滤波器,用REFF指令可调节其滤波时间,范围为0~60ms(实际上由于输入端有RL滤波,所以最小滤波时间为50μs)。如图3-61所示,当X0接通时,执行REFF指令,滤波时间常数被设定为1ms。
图3-61滤波调整指令说明
使用REFF指令时应注意:
1)REFF为16位运算指令,占7个程序步。
2)当X0~X7用作高速计数输入时或使用FNC56速度检测指令以及中断输入时,输入滤波器的滤波时间自动设置为50ms。
(3)矩阵输入指令MTR MTR指令的编号为FNC52。利用MTR可以构成连续排列的8点输入与n点输出组成的8列n行的输入矩阵。如图3-62所示,由[S]指定的输入X0~X7共8点与n点输出Y0、Y1、Y2(n=3)组成一个输入矩阵。PLC在运行时执行MTR指令,当Y0为ON时,读入第一行的输入数据,存入M30~M37中;Y1为ON时读入第二行的输入状态,存入M40~M47。其余类推,反复执行。
图3-62 矩阵输入指令的使用
使用MTR指令时应注意:
1)源操作数[S]是元件编号个位为0的X,目标操作数[D1] 是元件编号个位为0的Y,目标操作数[D2] 是元件编号个位为0的Y、M和S,n的取值范围是2~8。
2)考虑到输入滤波应答延迟为10ms,对于每一个输出按20ms顺序中断,立即执行。
3)利用本指令通过8点晶体管输出获得64点输入,但读一次64点输入所许时间为20ms×8=160ms,不适应高速输入操作。
4)该指令只有16位运算,占9个程序步。
2.高速计数器指令
(1)高速计数器置位指令HSCS DHSCS指令的编号为FNC53。它应用于高速计数器的置位,使计数器的当前值达到预置值时,计数器的输出触点立即动作。它采用了中断方式使置位和输出立即执行而与扫描周期无关。如图3-63所示,[S1.]为设定值(100),当高速计数器C255的当前值由99变100或由101变为100时,Y0都将立即置1。
图3-63 高速计数器指令的使用
(2)高速计速器比较复位指令HSCR DHSCR指令的编号为FNC54。如图3-63所示,C254的当前值由199变为200或由201变为200时,则用中断的方式使Y10立即复位。
使用HSCS和HSCR时应注意:
1)源操作数[S1.]可取所有数据类型,[S2.]为C235~C255,目标操作数可取Y、M和S。
2)只有32位运算,占13个程序步。
(3)高速计速器区间比较指令HSZ DHSZ指令的编号为FNC55。如图3-63所示,目标操作数为Y20、Y21和Y22。如果C251的当前值
使用高速计速器区间比较指令时应注意:
1)操作数[S1.] 、[S2.]可取所有数据类型,[S .]为C235~C255,目标操作数[D.]可取Y、M、S。
2)指令为32位操作,占17个程序步。
2.速度检测指令
速度检测指令SPD的编号为FNC56。它的功能是用来检测给定时间内从编码器输入的脉冲个数,并计算出速度。如图4-64所示,[D. ]占三个目标元件。当X12为ON时,用D1对X0的输入上升沿计数,100ms后计数结果送入D0,D1复位,D1重新开始对X0计数。D2在计数结束后计算剩余时间。