首页 理论教育 高速比较指令使用技巧

高速比较指令使用技巧

时间:2023-06-27 理论教育 版权反馈
【摘要】:高速比较指令主要是作为高速计数器在数据处理时用。这个指令是接着高速计数器的计数处理之后执行比较处理的指令。区间比较指令示例如图5-60所示。②由于高速计数器用的指令是32位专用指令,只可以使用32位运算指令,所以要输入“DHSZ”。

高速比较指令使用技巧

高速比较指令主要是作为高速计数器(C235~C255)在数据处理时用。

1.高速计数器使用知识

高速计数器是32位停电保持型增/减计数器,它可以对频率高于10Hz的计数输入信号进行计数。它对特定输入端子(输入继电器X000~X007)的OFF→ON的动作进行计数(因为高速脉冲信号只能接入X000~X007端)。它采用中断方式进行计数处理,不受PLC扫描周期的影响。其计数范围为-2147483648~2147483647(十进制常数),地址编号是C235~C255,最高响应速度为60kHz。

高速计数器可由程序实现复位或计数开始,也可由中断输入来实现中断复位或计数开始。特定输入端子X000~X007不能重复使用,即当某个输入端子被计数器使用后,其他计数器或输入不能再使用该输入端子。高速计数器的特定输入端子号与高速计数器的地址编号的分配见表5-19,从表中可以看出,计数器的地址号选定后,带有起动或复位的中断输入也相应被指定。

5-19 高速计数器特定输入端子号与地址编号的分配

978-7-111-59091-0-Chapter05-88.jpg

注:表中,U:加计数器输入;D:减计数输入;R:复位输入;S:起动输入;A:A相输入;B:B相输入。

2.高速比较指令

(1)比较置位指令HSCS(FNC53)

比较置位是高速计数器每次计数时,都将高速计数器的计数值与比较源进行比较,然后立即置位外部输出(Y)的指令。由于指令是针对高速计数器用的指令(是32位专用指令),所以使用时要在指令前“D”,即输入“DHSCS”。示例如图5-58所示。

978-7-111-59091-0-Chapter05-89.jpg

图5-58 比较置位指令示例

图5-58中,高速计数器C255的当前值从99变为100或者从101变为100(计数)时,Y010被置位(输出刷新)。高速计数器C255的当前值从149变为150或者从151变为150(计数)时,Y011被置位(输出刷新)。

1)对象软元件说明:

[S1•]:与高速计数器的当前值比较的数据,或是保存比较数据的字软元件编号。

[S2•]:高速计数器的软元件编号[C235~C255]。

[D•]:一致后进行置位(ON)的位软元件编号。

2)功能和动作说明:32位运算(DHSCS)时,当[S2•]中指定的高速计数器(C235~C255)的当前值变成比较值[[S1•]+1,[S1•]]时(比较值K100时为99→100或101→100),位软元件[D•]被置位(ON),与扫描周期无关。这个指令是接着高速计数器的计数处理之后执行比较处理的指令。

3)注意要点:

①计数比较方法的选定:使用该指令时,硬件计数器(C235,C236,C237,C238,C239,C240,C244(OP),C245(OP),C246,C248(OP),C251,C253)会自动地切换成软件计数器,并影响计数器的最高频率以及综合频率。

②软元件的指定范围:[S•]中可以指定的软元件,仅高速计数器(C235~C255)有效。只可以使用32位运算指令。

(2)比较复位指令HSCR(FNC54)

HSCR为高速计数器每次计数时,将高速计数器的计数值和指定值作比较,然后立即复位外部输出(Y)的指令。

978-7-111-59091-0-Chapter05-90.jpg(www.xing528.com)

图5-59 比较复位指令示例

比较复位指令示例如图5-59所示。图中C255的当前值变为400后,立即执行C255的复位,当前值为0,输出触点为OFF。

1)对象软元件设定数据有关说明:

[S1•]:与高速计数器的当前值比较的数据,或是保存比较数据的字软元件编号。

[S2•]:高速计数器的软元件编号(C235~C255)。

[D•]:一致后进行复位(OFF)的位软元件编号。

2)功能与动作:指令执行与扫描周期无关,指令是接着高速计数器的计数处理之后执行比较处理的指令。

(3)区间比较指令HSZ(FNC55)

区间比较指的是将高速计数器的当前值和2个值(区间)进行比较,并将比较结果输出(刷新)到位软元件(3点)中。

区间比较指令示例如图5-60所示。

978-7-111-59091-0-Chapter05-91.jpg

图5-60 区间比较指令示例

1)对象软元件设定数据:

[S1•]中为与高速计数器的当前值进行比较的数据,或是保存比较数据的字软元件编号。

[S2•]中为与高速计数器的当前值进行比较的数据,或是保存比较数据的字软元件编号。

[S•]中为高速计数器的软元件编号(C235~C255)。

[D•]中为输出与比较上限值和比较下限值比较的结果的起始位软元件编号。

2)功能和动作说明:32位运算(DHSZ)时,[S•]中指定的高速计数器(C235~C255)的当前值和2个比较点(比较值1,比较值2)进行区间比较,将比较得出的小、区间内、大的结果[D•]、[D•]+1、[D•]+2中任意一个置ON(指令执行与扫描周期无关)。

3)注意事项:

①软元件的指定范围:[S•]中可以指定的软元件仅高速计数器(C235~C255)有效。

②由于高速计数器用的指令是32位专用指令,只可以使用32位运算指令,所以要输入“DHSZ”。

③设定数据值时比较值1和比较值2必须满足[S1•]≤[S2•]。

④软元件的占用点数:比较值占用[S1•]、[S2•]起始各2点,输出占用[D•]起始的3点。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈