APP下载

基于PLC高速计数器在测频测速中的应用

2021-06-25傅元秀

中国设备工程 2021年11期
关键词:子程序计数器内置

傅元秀

(华自科技股份有限公司,湖南 长沙 410205)

随着PLC在工业控制领域的应用越来越广,越来越多的行业多将PLC做为主要设备的控制核心。下面介绍我公司在国外某站中采用OMRON PLC作为发电机设备控制的核心,并通过PLC高速计数器对发电机进行频率转速的测量及监控。

1 测频测速的硬件组成

测频测速的硬件主要由脉冲信号板、PLC、触摸屏组成(如图1)。将发电机的残压信号接入脉冲信号板,由脉冲信号板根据输入的信号,经过内置放大整形电路,输出幅度稳定的方波信号,再将幅度稳定的方波信号输出到PLC的高速计数器输入端,由PLC高速计数器进行脉冲计数,通过程序计算将测量到发电机的实时频率转速显示在触摸屏上面。

图1 测频测速硬件组成框图

2 PLC硬件接线

采用OMRON CJ1M-CPU23内置的IO,可以作为2路高速计数器使用。

本站采用的是脉冲递增输入跟软件复位方式,高速计数器0的递增输入接CPU内置IO的IN8,软件复位接的是CPU内置IO的IN0;高速计数器1的递增输入接CPU内置IO的IN6,软件复位接的是CPU内置IO的IN1。

3 PLC程序设计

3.1 程序框图(如图2,图3)

图2 主程序程序启动框图

图3 中断子程序启动框图

程序设计采用中断输入读取高速计数器脉冲数,将采样到的脉冲数进行计算成实时的频率、转速信号。

3.2 程序中CPU设置

用omron编程软件打开PLC程序,进行CPU设置,设置如下:

(1)在新PLC1[CJ1M]下面找到设置选项,双击弹出“PLC设定-新PLC1”窗口。

(2)通过方向箭头往右点,找到“内置输入设置”页面。

(3)在设置页面中有两个高速计数器设置,分别为高速计数器0跟高速计数器1。

(4)每个高速计数器可以根据使用计数器的频率,最大设置100kHz;

(5)计数模式分为线形模式跟循环模式两种,如果设置为循环计算模式需要设置循环最大计数,根据事件输入脉冲计数选择模式;

(6)复位设置选择默认Z相和软件复位;

(7)输入设置需要根据脉冲的输入类型来进行设置,可以分为相位差输入、脉冲加方向输入模式、加/减输入、增量脉冲输入几种。

每个高速计数器占有3个内置IO输入,高速计数器0占用IN8、IN9、IN3,其中IN8为高速计数器0的A相递增或计数输入,IN9为高速计数器0的B相递增或方向输入,IN3为高速计数器0的Z相或复位输入;高速计数器1占有IN6、IN7、IN2三个输入。使用中断输入则只有IN0与IN1可以使用。

注意计数器采用24V输入计数器采样频率为60kHz,有线驱动输入的计数器采样频率为100kHz。

3.3 程序编程及注释

高速计数程序分为主程序段、中断子程序两部分。主程序段分为两段,IO中断程序跟高速计数计算程序。中断子程序分为中断输入0子程序跟中断输入1子程序。IO中断程序中脉冲计数清零里需要两个寄存器的地址。其中主程序段中的高速计数程序程序均采用功能块封装。

通过调用直接封装好的功能块,在功能块的输入填上与被测设备相同的参数,输入端的脉冲采样值存放地址与中断子程序中读取到存放脉冲个数的地址一致即可,脉冲采样基准值要根据脉冲信号板来,一般50Hz时,对应的脉冲基准个数为1000,额定频率根据发电机设备上的铭牌参数来设定,额定转速也同样参照发电机设备上的铭牌参数设定,将功能块的输入端参数设定好后,程序就可以根据采样到的脉冲个数自动算出实时的频率、实时转速以及转速信号的百分比接点信号。

中断输入信号消失判断原理为当中断输入在500毫秒内状态没有发生改变,则将存储的对应脉冲数据地址中的内容进行清0。

4 结语

通过采用OMRON CJ1M-CPU23 PLC的内置IO作为高速计数器来监视控制发电机设备的频率转速,相对于国外设备用电的频率大多为60Hz,程序中对于发电机的额定频率、转速可以灵活的设置,无增加其他编程,能满足电站设备的频率转速测量。另外,PLC作为工业控制广泛使用的控制器,对电站设备进行多方面的监视控制,因此,利用高速计数器对电站设备进行频率、转速监测也可和其他控制作为一体,可使电站节省一个单独的转速监控装置,使系统的成本降低。此项技术应用的采样精度满足水电站的监控需要;目前,国内现状是设计院很少使用本方案,国外用得较多。

猜你喜欢

子程序计数器内置
采用虚拟计数器的电子式膜式燃气表
内置加劲环T型管节点抗冲击承载力计算
芯片内置测试电路的设计
计数器竞争冒险及其处理的仿真分析
内置管肠排列术治疗严重粘连性肠梗阻的临床分析
浅谈子程序在数控车编程中的应用
子程序在数控车加工槽中的应用探索
西门子840D系统JOG模式下PLC调用并执行NC程序
任意N进制计数器的设计方法
基于单片机的仰卧起坐计数器