研选课堂
HOME
研选课堂
正文内容
西门子plc计数器编程 西门子S7-1200编程实例,计数器如何使用?
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

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

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

下面我们以加减计数器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。

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

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

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

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

西门子SCL编程入门教程连载(8)-计数器指令

今天这篇文章我们来谈谈西门子SCL语言中的计数器(Counter)指令。

S7-1200和S7-1500系列PLC的使用IEC计数器,包括三类:加计数器(CTU,Count UP)、减计数器(CTD,Count Down)和加减计数器(CTUD,Count up and down)。

1、加计数器指令

加计数器指令(CTU)用来进行向上计数。

从指令列表中添加该指令时会提示生成背景数据块(或多重背景数据块),指令的初始状态如下:

该指令有五个参数,其含义如下:

CU:输入参数,布尔型数据,计数器向上计数启动信号(需要上升沿);R:输入参数,布尔型数据,计数器复位信号;PV:输入参数,整型数据,计数器预设值(Preset Value);Q:输出参数,布尔型数据,计数器的标志位;CV:输出参数,整型/字符型数据,计数器的当前值(Current Value);

加计数器的工作过程如下

输入参数CU信号的每一个上升沿(从0变为1)都会使计数器的当前值CV加1;

CU参数持续不断的上升沿信号会使CV的值持续增加,直到达到最大值(32767或127);达到最大值后,计数器不再受CU的上升沿信号影响;

在计数的过程中,如果计数器的当前值CV大于或者等于预设值PV,计数器的标志位Q被置位(值变为1);否则计数器的标志位Q的值为0;

当复位信号R的值为1时,计数器的当前值CV变为0;若R的值保持为1,CU信号的上升沿不能启动加计数器指令;

2、减计数器指令

减计数器指令(CTD)用来进行向下计数。

从指令列表中添加该指令时会提示生成背景数据块(或多重背景数据块),指令的初始状态如下:

该指令有五个参数,其含义如下:

CD:输入参数,布尔型数据,计数器的向下计数启动信号(需要上升沿);LD:输入参数,布尔型数据,加载计数器预设值信号;PV:输入参数,整型数据,计数器预设值(Preset Value);Q:输出参数,布尔型数据,计数器的标志位;CV:输出参数,整型/字符型数据,计数器的当前值(Current Value);

减计数器的工作过程如下

输入参数CD信号的每一个上升沿(从0变为1)都会使计数器的当前值CV减1;

CD参数持续不断的上升沿信号会使CV的值持续减小,直到达到最小值(-32768或者-128);达到最小值后,计数器不再受CD的上升沿信号影响;

在计数的过程中,如果计数器的当前值CV小于或者等于0,计数器的标志位Q被置位(值变为1);否则计数器的标志位Q的值为0;

当LD信号的值为1时,计数器的预设值PV被加载到当前值CV中;若LD的信号值保持为1,CD信号的上升沿不能启动减计数器指令;

3、加减计数器指令

加减计数器(CTUD)指令既可以进行向上计数,也可以进行向下计数。

从指令列表中添加该指令时会提示生成背景数据块(或多重背景数据块),指令的初始状态如下:

该指令有八个参数,其含义如下:

CU:输入参数,布尔型数据,计数器向上计数启动信号(需要上升沿);CD:输入参数,布尔型数据,计数器向下计数启动信号(需要上升沿);R:输入参数,布尔型数据,计数器复位信号;LD:输入参数,布尔型数据,加载计数器预设值信号;PV:输入参数,整型数据,计数器预设值(Preset Value);QU:输出参数,布尔型数据,向上计数(加计数器)标志位;QD:输出参数,布尔型数据,向下计数(减计数器)标志位;CV:输出参数,整型/字符型数据,计数器的当前值(Current Value);

加减计数器的工作原理如下

输入参数CU信号的每一个上升沿(从0变为1)都会使计数器的当前值CV加1;

输入参数CD信号的每一个上升沿(从0变为1)都会使计数器的当前值CV减1;

CU参数持续不断的上升沿信号会使CV的值持续增加,直到达到最大值(32767或127);

CD参数持续不断的上升沿信号会使CV的值持续减小,直到达到最小值(-32768或者-128);

在计数的过程中,如果计数器的当前值大于或等于预设值PV,则QU的值为1;否则QU的值为0;

在计数的过程中,如果计数器的当前值小于或等于0,则QD的值为1;否则QD的值为0;

当复位信号R的值为1时,计数器的当前值CV变为0;若R的值保持为1,CU信号或CD信号的上升沿都不能启动计数器指令;

当LD信号的值为1时,计数器的预设值PV被加载到当前值CV中;并且只要LD的信号值保持为1,CU信号或CD信号的上升沿都不能启动计数器指令;

好了,关于西门子SCL语言中计数器指令就先介绍到这里。如果你喜欢这篇文章,可以去官网(https://www.founderchip.com/)下载本文PDF版本。

相关问答

西门子PLC224编程软件中,用高速计数器采集频率信号,将频率信号转换成模拟量信号怎么实现?

时性变化。所以我们...但是这样做不能做得及时性变化。所以我们采集时间不会用1分钟,会使用0.1秒或者10毫秒等等,再换算成每分钟多少,最后再转化成对应的模...

西门子plcs200递增计数器的值如何输入?

计数器只能每次递增1,否则你可以使用加法指令来实现每次递增不是1的方式。计数器只能每次递增1,否则你可以使用加法指令来实现每次递增不是1的方式。

s7300高速计数器程序实例?

新型S7-300CPU(使用MMC卡)的数据保持问题1.存储器(M)、定时器(T)、计数器(C)的可保持性取决于是否被组态为保持,如果组态为非保持,则Stop->Run或者Pow...

plc里面pv是什么指令?

这是西门子的一个计数器指令在梯形图编程时可以在指令表里出来用,根据需要设置一些参数就可以。CTU是一个加计数器,CU为信号输入,R为复位端,PV为预置端,当C...

s7300计数器怎样配合比较指令编程?

300的计数器始终从0一直计数到999,在计数期间,计数器触点始终为ON,因此,在300中使用计数器必须配合比较指令,对计数器当前值进行比较,从而带动你的输出。例...

西门子m指令的全部代码?

很抱歉,我不能提供西门子M指令的全部代码。西门子PLC编程使用的是STEP7软件,其中包含了多种编程语言和指令集。M指令是西门子S7-300和S7-400系列PLC中的一种...

西门子PLC功能块编程怎么用?

西门子PLC(可编程逻辑控制器)的功能块编程是PLC编程的一种方法,通过预定义好的功能块,来完成复杂的控制任务。以下是使用西门子PLC进行功能块编程的一般步骤...

step7加计数器怎么用?

加计数器(S_CU)在计数初始值预置输入端S上有上升沿时,PV装入预置值,输入端CU每检测到一次上升沿,当前计数值CV加1(前提是CV小于999);当前计数值大于0时,Q...

西门子PLC数组编程方式array,在DB块定义好NAMEDTYPEARRCY[1。11],在程序里面具体怎么调用D[1],例子?

SM0.0PLC运行时一直为1,是常ON继电器。SM0.1PLC首次扫描为1,一个扫描周期。一般用于初始化程序。SM0.2若保持数据丢失,改为为1,一个扫描周期。SM0.3...SM0...

[求助-西门子PLC200]s7-200高速计数器中断的使用?

中断程序和HSC初始化程序都没有错误,错误在于你使用的MAP库Q0.0MoveRelative指令,这个指令的功能就是让轴按照指定的方向、以指定的速度,运动到指定的位移。...

 卡巴斯基服务器版  张馨予方力申 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部