高速处理指令(FNC50~FNC59)见表6-12。
表6-12 高速处理指令
1.和输入输出有关的指令
1)输入输出刷新指令REF、REF(P)的编号为FNC50。FX系列PLC采用集中输入输出的方式,如果需要最新的输入信息以及希望立即输出结果则必须使用该指令。
使用REF指令时应注意:
① 目标操作数为元件编号个位为0的X和Y,n应为8的整倍数。
② 指令只要进行16位运算,占5个程序步。
输入刷新指令如图6-72所示。
在多个输入中,只刷新X010~X017的8点。如果在该指令执行前约10ms(输入滤波应答滞后时间)置X010~X017为ON,则该指令执行时输入映像存储区X010~X017为ON。
输出刷新指令如图6-73所示。
图6-72 输入刷新指令
图6-73 输出刷新指令
在多个输出中,Y000~Y007、Y010~Y017、Y020~Y027的24点被刷新。Y000~Y027中的任何一点若为ON,则该指令执行时输出锁存存储区的该输出也为ON。
2)滤波调整指令REFF、REFF(P)的编号为FNC51。在FX系列PLC中X00~X017使用了数字滤波器,用REFF指令可调节其滤波时间,范围为0~60ms(实际上由于输入端有RL滤波,所以最小滤波时间为50μs)。
使用REFF指令时应注意:
① REFF为16位运算指令,占7个程序步。
② 当X000~X007用作高速计数输入时或使用FNC56速度检测指令以及中断输入时,输入滤波器的滤波时间自动设置为50ms,如图6-74所示。
X010为ON时,输入滤波器为1ms,刷新输入X000~X017的映像存储区。从0步到该指令作为滤波10ms处理。
从M8000触点后,到END或FEND指令输入滤波为20ms。
3)矩阵输入指令MTR、MTR(P)的编号为FNC52。利用MTR指令可以构成连续排列的8点输入与n点输出组成的8列n行的输入矩阵。
使用MTR指令时应注意:
① 源操作数[S.]是元件编号个位为0的X,目标操作数[D1.]是元件编号个位为0的Y,目标操作数[D2.]是元件编号个位为0的Y、M和S,n的取值范围是2~8。
② 考虑到输入滤波应答延迟为10ms,对于每一个输出按20ms顺序中断,立即执行。
③ 利用本指令通过8点晶体管输出获得64点输入,但读一次64点输入所许时间为20ms×8=160ms,不适应高速输入操作。
④ 该指令只有16位运算,占9个程序步,如图6-75所示。
图6-74 滤波调整指令
图6-75中,n=3点的输出Y020、Y021、Y022依次反复ON。每次依次反复获得第1列、第2列、第3列的输入,存入M30~M37、M40~M47、M50~M57。
图6-75 矩阵输入指令
2.高速计数器指令
1)高速计数器比较置位指令HSCS、DHSCS的编号为FNC53,它应用于高速计数器的置位,使计数器的当前值达到预置值时,计数器的输出触点立即动作。它采用了中断方式使置位和输出立即执行而与扫描周期无关。
高速计数器是根据计数输入的OFF、ON以中断方式计数的。计数器的当前值等于设定值时,计数器的输出触点立即工作。如图6-76中,当不使用FNC53指令时,向外部输出与顺控有关,受扫描周期的影响。
使用FNC53指令,能以中断方式处理外部输出,所以C255的当前值由99变为100或由101变为100时,Y010立即置位。
2)高速计速器比较复位指令HSCR、DHSCR的编号为FNC54。如图6-77所示,C255的当前值由199变为200或由201变为200时,不受扫描周期的影响,则用中断的方式使Y10立即复位。
图6-76 高速计数器置位指令(www.xing528.com)
图6-77 高速计数器比较复位指令
使用HSCS和HSCR指令时应注意:
① 源操作数[S1.]可取所有数据类型,[S2.]为C235~C255,目标操作数可取Y、M、S。
② 只有32位运算,占13个程序步。
3)高速计数器区间比较指令HSZ、(D)HSZ指令的编号为FNC55,如图6-78所示。
图6-78 高速计数器区间比较指令
K1000>C251当前值时,Y000为ON。此外,C255当前值由999变为1000或由1999变为2000时,输出Y001或Y002立即为ON。这些输出不受扫描周期的影响。
使用高速计速器区间比较指令时应注意:
① 操作数[S1.]、[S2.]可取所有数据类型,[S.]为C235~C255,目标操作数[D.]可取Y、M、S。
② 指令为32位运算,占17个程序步。
3.速度检测指令
速度检测指令SPD的编号为FNC56,它的功能是用来检测给定时间内从编码器输入的脉冲个数,并计算出速度,如图6-79所示。
在图6-79中,X000置ON时,D1对X000的OFF到ON动作计数,100ms后将其结果存入D0。随之D1复位,再次对X000的动作计数。D2用于测定剩余时间。
图6-79 速度检测指令
使用速度检测指令时应注意:
1)[S1.]为X000~X005,[S2.]可取所有的数据类型,[D.]可以是T、C、D、V、Z。
2)指令只有16位运算,占7个程序步。
4.脉冲输出指令
脉冲输出指令(D)PLSY的编号为FNC57,它用来产生指定数量的脉冲,如图6-80所示。
图6-80 脉冲输出指令
[S1.]指定频率;[S2.]指定产生脉冲量;[D.]指定输出脉冲的Y编号。
使用脉冲输出指令时应注意:
1)[S1.]、[S2.]可取所有的数据类型,[D.]为Y001和Y002。
2)该指令可进行16和32位运算,分别占用7个和13个程序步。
3)本指令在程序中只能使用一次。
5.脉宽调制指令
脉宽调制指令PWM的编号为FNC58,它的功能是用来产生指定脉冲宽度和周期的脉冲串,如图6-81所示。
图6-81 脉宽调制指令
图6-81中,使D10的内容从0~50变化时,Y000输出脉冲的占空比为0~100%(D10)的内容超过50时,就出现错误。X010置于OFF时,Y000为OFF。
使用脉宽调制指令时应注意:
1)操作数的类型与PLSY指令相同,该指令只有16位运算,占用7个程序步。
2)[S1.]应小于[S2.]。
6.可调速脉冲输出指令
可调速脉冲输出指令(D)PLSR指令的编号为FNC59。该指令可以对输出脉冲进行加速调整,也可进行减速调整。它的源操作数和目标操作数的类型和PLSY指令相同,只能用于晶体管PLC的Y000和Y001,可进行16位运算也可进行32位运算,分别占9个和17个程序步,该指令只能用一次,如图6-82所示。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。