首页 理论教育 使用5.12.7高速计数器指令进行计数

使用5.12.7高速计数器指令进行计数

时间:2023-06-27 理论教育 版权反馈
【摘要】:如果往预置值存储器写入16#00,则高速计数器不工作。8)执行中断允许ENI指令,允许系统接受高速计数器产生的中断请求。9)执行HSC指令,启动某高速计数器按前面的设置工作。

使用5.12.7高速计数器指令进行计数

1.指令使用步骤

高速计数器指令的使用较为复杂,一般使用步骤如下:

1)根据计数要求设置高速计数器的控制字节。例如,让HSC1的控制字节SMB47=16#F8,则将HSC1设为允许计数、允许写入计数初始值、允许写入计数预置值、更新计数方向为加计数、正交计数为4X模式、高电平复位、高电平启动。

2)执行HDEF指令,将某编号的高速计数器设为某种工作模式。

3)将计数初始值写入当前值存储器。当前值存储器是指SMD38、SMD48、SMD58、SMD138、SMD148和SMD158。

4)将计数预置值写入预置值存储器。预置值存储器是指SMD42、SMD52、SMD62、SMD142、SMD152和SMD162。如果往预置值存储器写入16#00,则高速计数器不工作。

5)为了捕捉当前值(CV)等于预置值(PV),可用中断连接ATCH指令将条件CV=PV中断事件(如中断事件13)与某中断程序连接起来。

6)为了捕捉计数方向改变,可用中断连接ATCH指令将方向改变中断事件(如中断事件14)与某中断程序连接起来。

7)为了捕捉计数器外部复位,可用中断连接ATCH指令将外部复位中断事件(如中断事件15)与某中断程序连接起来。

8)执行中断允许ENI指令,允许系统接受高速计数器(HSC)产生的中断请求。(www.xing528.com)

9)执行HSC指令,启动某高速计数器按前面的设置工作。

10)编写相关的中断程序。

2.指令的应用举例

高速计数器(HDEF、HSC)指令的应用如图5-45所示。在主程序中,PLC第一次扫描时SM0.1触点接通一个扫描周期,由上往下执行指令,依次进行高速计数器HSC1控制字节的设置、工作模式的设置、写入初始值、写入预置值、中断事件与中断程序连接、允许中断、启动HSC1工作。

978-7-111-55193-5-Chapter05-120.jpg

图5-45 高速计数器(HDEF、HSC)指令的应用举例

978-7-111-55193-5-Chapter05-121.jpg

图5-45 高速计数器(HDEF、HSC)指令的应用举例(续)

HSC1开始计数后,如果当前计数值等于预置值,此为中断事件13,由于已将中断事件13与INT_0中断程序连接起来,产生中断事件13后系统马上执行INT_0中断程序。在中断程序中,SM0.0触点闭合,由上往下执行指令,先读出HSC1的当前计数值,然后重新设置HSC1并对当前计数值清0,再启动HSC1重新开始工作。

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

我要反馈