S7-200PLC高速计数器指令详解 快速入门!

大家好,我是微控小智,今天又跟大家见面了。学习需要坚持,做技术亦是如此,厚积才能博发。小智写的程序都是进行反复测试过的,可以放心跟着操作,有疑问的地方可以留言。

在S7-200PLC中高速计数器与高速脉冲输出是编程步骤比较相似的一块内容,可以说学好高速计数器,高速脉冲输出也就简单了,对于初学者而言,高速计数器编程还是偏难的,虽然如此,但搞工控,怎能不懂高速计数器呢!

普通计数器受CPU扫描速度的影响,是按照顺序扫描的方式进行工作。在没个扫描周期中,对计数脉冲只能进行一次累加;对于脉冲信号的频率比PLC的扫描频率高时,如果仍采用普通计数器进行累加,必然会丢失很对输入脉冲信号。在PLC中,对比扫描频率高的输入信号的计数是使用高速计数器指令来实现的。

普通计数器

普通计数器编号 C0-C255 256个

普通计数器状态位 位数据

普通计数器当前值 16位整数范围为-32768至+32767

普通计数器设定值 16位整数范围为-32768至+32767

高速计数器

高速计数器编号 HC0-HC5(非程序中一般用HSC0-HSC5) 6个

高速计数器状态位 位数据

高速计数器当前值 范围是32位整数

高速计数器设定值 范围是32位整数

假如1秒可以计10000个脉冲信号,那么计一个脉冲花的时间即脉冲周期为0.0001秒,0.0001s=0.1ms=100us,而PLC的扫描周期最快也要1ms,由此可知高速计数的速度比扫描周期还要快,高速计数器工作在中断方式下,换言之高速计数器不经过扫描周期。

高速计数器的输入端

高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。

高速计数器的工作模式

高速计数器有12种不同的工作模式(0-11),分为4类。每个高速计数器都有多种工作模式,可以通过编程的方法,使用定义高速计数器指令HDEF来选定工作模式。

(1)带内部方向控制的单相增/减计数器

它有一个计数输入端,没有外部方向控制输入信号。计数方向由内部控制字节中的方向控制位设置,只能进行单向增计数或减计数。

(2)带外部方向控制的单相增/减计数器

它有一个计数输入端,由外部输入信号控制计数方向,只能进行单向增计数或减计数。

(3)带增减计数输入的双向计数器

它有两个计数输入端,一个为增计数输入,一个为减计数输入。增计数输入端有一个脉冲到达时,计数器当前值增加1;减计数输入端有一个脉冲到达时,计数器当前值减少1。若增计数脉冲与减计数脉冲相隔时间大于0.3ms,高速计数器就能够正确计数,若相隔时间小于0.3ms,高速计数器认为两个脉冲同时发生,计数器当前值不变。

(4)A/B相正交计数器

它有两个计数输入端A相和B相,A/B相正交计数器利用两个输入脉冲的相位确定计数方向。A相脉冲上升沿超前于B相脉冲上升沿时为增计数,反之则为减计数。

高速计数器的输入端和工作模式如下图所示:

时钟:是计数端口;

方向:是指增计数还是减计数两个方向;

复位:是清除计数器的当前值;

启动:带启动端的模式,要先接通启动端,计数和复位端才有效。

高速计数器指令

HDEF:定义高速计数器指令,连接高速计数器和工作模式;

HSC: 高速计数器指令,按照工作模式,控制高速计数器工作。

高速计数器指令用法如下图所示:

高速计数器的编程步骤

高速计数器编程需完成以下基本操作:

设置高速计数器控制字节

设置高速计数器初始值

设置高速计数器预设值

连接高速计数器和工作模式

激活高速计数器

有上面高速计数器编程步骤可知要,正确使用高速计数器,除用好高速计数器指令外,还要正确设置高速计数器的控制字节初始值预置值。高速计数器的控制字节、初始值和预置值将在下期中详细介绍。

实践出真知,没有实践,理论就是纸上谈兵;学习中需要多加验证。如果大家觉得小智的文章写得不错,很适合大家的口味,可以分享更多的朋友。

宝剑锋从磨砺出,梅花香自苦寒来

苦尽甘来才痛快,风霜历尽笑颜开

关注智微自控

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180115G0Y8G300?refer=cp_1026

相关快讯

扫码关注云+社区