PLC的普通计数器的计数过程与扫描工作方式有关,CPU通过每一个扫描周期读取一次被测信号的方法来捕捉被测信号的上升沿,被测信号的频率较高时,会丢失计数脉冲。
因此普通计数器的高工作频率一般仅有几十赫兹。高速计数器(HSC)可以对发生速率快于程序循环OB执行速率的事件进行计数。
编码器
高速计数器一般与增量式编码器一起使用,后者每发出一定数量的计数脉冲或一个复位脉冲,都作为高速计数器的输入信号。编码器有以下几种类型。
(1)增量式编码器
光电增量式编码器的码盘上有均匀刻制的光栅。码盘旋转时,输出与转角的增量成正比的脉冲,需要用计数器来计脉冲数。
单通道增量式编码器内部只有一对光耦合器,只能产生一个脉冲列。
双通道增量式编码器又称为A/B相或正交相位编码器,内部有两对光合器,输出相差为90°的两组独立脉冲列。
正转和反转时两路脉冲的超前、滞后关系相反,如果使用A/B相编码器,PLC可以识别出转轴旋转的方向,A/B相编码器的输出波形。
高速计数器使用的输入点
S7-1200的系统手册给出了各种型号的CPU的HSCI-HSC6分别在单相、双相和A/B相指人时默认的数字量入点,以及各输入点在不同的计数模式的高计数频率。
HSC1-HSC6的实际计数值的数据类型为DInt,默认的地址为ID100-ID1020。
(1)HSC的工作模式
所有HSC有5种高速计数工作模式:具有内部方向控制的单相计数器,具有外部方向长制的时数器,具有两路时学原中输人的双相计数器,AB相正交计数器以及监控P1O数出每种HSC模式都可以使用或不使用支位输入。
复位输入为1状态时,HSC的实原计数值动能在到复位输入变为口的状点,才能的启动计数。
可测量的单脉冲频率高为100 kHZ,双相和A/B相频率高可为30kHZ,高速计数器可连接外部旋转编码器,用户可在软件中通过对PLC的硬件进行组态并调用相关指令来使用此功能。
(1)HSC的硬件组态
打开PLC的设备视图,选中其中的CPU。选中巡视窗口的“属性”选项卡左边的高速计数器HSC1的“常规”,勾选复选框“启用该高速计数器”。
选中左边窗口的“功能”,设置“计数类型”为“计数”,“工作模式”选择为A/B相计数器外部方向控制,初始计数方向为加计数。
选中左边窗口的“硬件输入”,设置“时钟发生器A相的输入”地址为10.0,“时钟发生器B相的输入”地址为10.1。选中左边窗口的“I/O地址”,HSC1默认的地址为ID1000,在运行时可以用该地址监视HSC1的计数值,HSC1的硬件组态。
(2)设置数字量输入的滤波时间
CPU和信号板的数字量输入通道的输入滤波器的滤波时间默认值为6.4 ms,如果滤波时间过长,则在滤波周期内容易把输入的脉冲过滤掉。
对于高速计数器的数字量输入,使用期望的小脉冲宽度设置对应的数字量输入滤波器。可选用CPU的数字量输入的输入滤波时间列表中较短的滤波时间,例如0.1 ms。如果改变了输入脉冲的宽度,应同时改变输入滤波器的滤波时间。