首页 理论教育 计数器的使用方法和基本结构

计数器的使用方法和基本结构

时间:2023-06-18 理论教育 版权反馈
【摘要】:计数器的使用方法和基本结构与定时器基本相同, 主要由预置值寄存器、 当前值寄存器、状态位等组成, 计数器指令格式及功能见表3-5-1, 计数器指令的操作数见表3-5-2。表3-5-2计数器指令的操作数2) 工作原理分析 增计数器。当前值累加的最大值为32 767。增/减计数器应用程序梯形图及时序图示例如图3 -5 -1 所示。双字整数的范围在16#80000000 与16#7FFFFFFF 之间。

计数器的使用方法和基本结构

1. 计数器

1) 指令格式

计数器利用输入脉冲上升沿累计脉冲个数。 S7 -200 PLC 有增计数(CTU)、 增/减计数(CTUD)、 减计数(CTD) 等三类计数器, 编程范围为C0 ~C255。

计数器的使用方法和基本结构与定时器基本相同, 主要由预置值寄存器、 当前值寄存器、状态位等组成, 计数器指令格式及功能见表3-5-1, 计数器指令的操作数见表3-5-2。

表3-5-1 计数器指令格式及功能

注: CU 为增1 计数脉冲输入端; CD 为减1 计数脉冲输入端; R 为复位脉冲输入端; LD 为减计数器的复位输入端; PV 为预置值(INT) 输入端, 最大值为32 767。

表3-5-2 计数器指令的操作数

2) 工作原理分析

(1) 增计数器(CTU)。 在CU 端输入脉冲的上升沿, 增计数器的当前值增1 计数。 当前值大于或等于预置值(PV) 时, 增计数器状态位置“1”。 当前值累加的最大值为32 767。

复位脉冲输入(R) 有效时, 计数器状态位复位(置“0”), 当前计数值清零。 增计数器的应用可以参考图3 -5 -1 的增/减计数器中递增部分来理解。

(2) 增/减计数器(CTUD)。 增/减计数器的CU 端用于递增计数, CD 端用于递减计数。 指令执行时, 在CU/CD 端输入脉冲的上升沿当前值增1/减1。 当前值大于或等于预置值(PV) 时, 增/减计数器状态位置“1”。 复位输入脉冲(R) 有效或执行复位指令时, 增/减计数器状态位复位, 当前值清零。

图3-5-1 增/减计数器应用程序梯形图及时序图

(a) 梯形图; (b) 时序图

达到最大值32 767 后, 下一个CU 端输入脉冲的上升沿将使计数值变为最小值-32 678。 同样达到最小值后, 下一个CD 端输入脉冲的上升沿将使计数值变为最大值。

增/减计数器应用程序梯形图及时序图示例如图3 -5 -1 所示。

(3) 减计数器(CTD)。 复位输入脉冲(LD) 有效时, 计数器把预置值(PV) 装入当前值存储器, 计数器状态位复位。

从CD 端每一个输入脉冲上升沿开时, 减计数器的当前值从预置值开始递减计数, 当前值等于0 时, 计数器状态位置位, 并停止计数。

减计数器应用程序梯形图及时序图示例如图3 -5 -2 所示。

2. 比较指令

比较指令用于两个操作数按一定条件的比较。 操作数可以是整数, 也可以是实数(浮点数)。 在梯形图中用带参数和运算符的触点表示比较指令, 比较条件满足时, 触点闭合,否则打开。(www.xing528.com)

1) 字节比较指令

字节比较是无符号的, 字节比较指令包含: 等于( ==)、 不等于( <>)、 大于( >)、大于等于( >=)、 小于( <)、 小于等于( <=)。 字节比较指令格式见表3 -5 -3。

字节比较指令的触点与左母线相连时使用LD 指令, 若字节比较指令的触点与其他触点串联或并联时, 需使用A 或O 指令代替LD 指令(例如AB=, AB <>, OB=, OB <>等)。

图3-5-2 减计数器应用程序梯形图及时序图

(a) 梯形图; (b) 时序图

表3-5-3 字节比较指令格式

2) 整数比较指令

整数比较是有符号数的比较。 整数的范围在16#8000 与16#7FFF 之间。 整数比较指令格式见表3 -5 -4。

整数比较指令的触点与左母线相连时使用LD 指令, 若整数比较指令的触点与其他触点串联或并联时, 需使用A 或O 指令代替LD 指令(例如AW=, AW <>, OW=, OW <>等)。

3) 双字整数比较指令

双字整数比较是有符号数的比较。 双字整数的范围在16#80000000 与16#7FFFFFFF 之间。 双字整数比较指令格式见表3 -5 -5。

表3-5-4 整数比较指令格式

表3-5-5 双字整数比较指令格式

双字整数比较指令的触点与左母线相连时使用LD 指令, 若双字整数比较指令的触点与其他触点串联或并联时, 需使用A 或O 指令代替LD 指令(例如AD =, AD <>, OD =,OD <>等)。

4) 实数比较指令

实数比较是有符号的比较, 实数比较指令包含: 等于( ==)、 不等于( <>)、 大于( >)、 大于等于( >=)、 小于( <)、 小于等于( <=)。 实数比较指令格式见表3 -5 -6。

表3-5-6 实数比较指令格式

实数比较指令的触点与左母线相连时使用LD 指令, 若实数比较指令的触点与其他触点串联或并联时, 需使用A 或O 指令代替LD 指令(例如AR=, AR <>, OR=, OR <>等)。

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

我要反馈