西门子S7-1200编程实例,计数器如何使用?

简介: 计数器用来累计脉冲的个数。在西门子S7-1200 PLC中有三种类型的计数器:加减计数器CTUD、加计数器CTU、减计数器CTD。每个计数器都使用存储块中存储的结构来保存计数器数据。在编辑器中放置计数器指令时,分配相应的数据块即背景数据块。计数值的数值范围取决于所选的数据类型。

计数器用来累计脉冲的个数。在西门子S7-1200 PLC中有三种类型的计数器:加减计数器CTUD、加计数器CTU、减计数器CTD。每个计数器都使用存储块中存储的结构来保存计数器数据。在编辑器中放置计数器指令时,分配相应的数据块即背景数据块。计数值的数值范围取决于所选的数据类型。


640.jpg


下面我们以加减计数器CTUD为例来介绍计数器的工作过程。设定计数器的数据类型为无符号整数。当加减计数器的加计数端CU输入的值从0跳变到1时,计数器的当前计数值CV加1;当减计数端CD输入的值从0跳变到1时,计数器的当前计数值CV减1;如果当前计数器CV大于或等于预设值PV时,计数器输出端QU等于1;如果计数器当前值CV小于或等于0,计数器输出端QD等于1;当装载输入端LOAD的值从0变为1时,将预设值PV置入计数器的当前值;当复位端R为1时,则将计数器的计数值复位为0。


640.jpg

下面我们通过一个实例来说明加减计数器如何使用。按下I0.6加计数,按下I0.7减计数,计数值大于等于4时输出Q0.0接通。

 

一、编写程序。在项目视图中打开OB1,从指令树中选择加减计数器,双击或拖放到程序段1,并采用默认背景数据块,单击问号处选择数据类型为短整型,在计数器的加计数端输入常开触点I0.6,在减计数端输入常开触点I0.7,在复位输入端输入I1.0,在装载输入端输入I1.1,输入计数器预设值为4,插入一个输出线圈到QU输出端,输入地址Q0.0,将计数器当前值存储在MD10中。这样一个简单的加减计数器应用实例就完成了。


640.jpg


二、下载程序到PLC。单击保存项目按钮保存项目,单击下载按钮将所有块下载到PLC。


640.jpg


三、查看程序运行情况。单击“转到在线”,单击监视按钮启用或禁用监视,观察程序的运行情况。可以看到按动一次I0.6计数值加1,按动一次I0.7计数值减1,当计数值大于等于4时Q0.0接通,按下I1.0计数值复位为0,Q0.0断开,按下I1.1装载预设值,计数值变为4。

相关文章
西门子S7-1200编程实例,比较指令如何使用?
西门子S7-1200中的比较指令包括了值大小比较指令、是否在范围内指令以及有效性无效性检查指令。使用值大小比较指令,可以比较两个数据类型相同的数值的大小。
西门子S7-1200编程实例,比较指令如何使用?
|
存储 监控 C语言
西门子S7-1200编程实例,关断延迟定时器指令如何使用?
在西门子S7-1200中有四种类型的定时器:TON接通延迟定时器、TONR保持型接通延迟定时器、TOF关断延迟定时器、TP脉冲定时器。
西门子S7-1200编程实例,关断延迟定时器指令如何使用?
|
4月前
|
传感器
stm32f407探索者开发板(二十二)——通用定时器基本原理讲解
stm32f407探索者开发板(二十二)——通用定时器基本原理讲解
351 0
|
6月前
|
数据采集 异构计算
LabVIEW编程LabVIEW开发高级数据采集技术 操作数字IO 例程与相关资料
LabVIEW编程LabVIEW开发高级数据采集技术 操作数字IO 例程与相关资料
92 22
|
6月前
|
数据采集 编解码 芯片
LabVIEW编程LabVIEW开发高级数据采集技术 计数器定时器的操作 例程与相关资料
LabVIEW编程LabVIEW开发高级数据采集技术 计数器定时器的操作 例程与相关资料
72 11
|
6月前
LabVIEW编程LabVIEW开发天平Parr 4848例程与相关资料
LabVIEW编程LabVIEW开发天平Parr 4848例程与相关资料
60 0
西门子S7-1200编程实例,移位和循环移位指令如何使用?
西门子S7-1200的移位指令包括左移位指令和右移位指令,循环移位指令包括循环左移位指令和循环右移位指令。
西门子S7-1200编程实例,移位和循环移位指令如何使用?
|
存储 计算机视觉
西门子S7-1200计数器编程实例
计数器用来累计脉冲的个数。在西门子S7-1200 PLC中有三种类型的计数器:加减计数器CTUD、加计数器CTU、减计数器CTD。每个计数器都使用存储块中存储的结构来保存计数器数据。在编辑器中放置计数器指令时,分配相应的数据块即背景数据块。计数值的数值范围取决于所选的数据类型。
西门子S7-1200计数器编程实例
蓝桥杯之单片机学习(二十三)——对于官方驱动的函数调用,包装程序
蓝桥杯之单片机学习(二十三)——对于官方驱动的函数调用,包装程序
115 0
蓝桥杯之单片机学习(二十三)——对于官方驱动的函数调用,包装程序
|
存储 缓存 安全
【优化技术专题】「线程间的高性能消息框架」终极关注Disruptor的核心源码和Java8的@Contended伪共享指南
【优化技术专题】「线程间的高性能消息框架」终极关注Disruptor的核心源码和Java8的@Contended伪共享指南
86 0
【优化技术专题】「线程间的高性能消息框架」终极关注Disruptor的核心源码和Java8的@Contended伪共享指南