线下实训
HOME
线下实训
正文内容
plc计数编程 (博途)S7-300PLC传送带工件计数控制程序设计
发布时间 : 2025-04-18
作者 : 小编
访问数量 : 23
扫码分享至微信

(博途)S7-300PLC传送带工件计数控制程序设计

关注“PLC发烧友 ”,一起涨知识!

传送带想必在工控界并不陌生,商场的自动扶梯,机场的自动人行道,码头上自动装卸货传送带,工厂生产流水线,农业机械中(联合收割机、插秧机)都有应用,传送带上传送的物品肯定是要得知它传送了多少物品,那么如何得知呢?我们可以采用PLC计数器指令来实现,下面就带大家来完成传送带工件计数控制程序的设计。

01控制要求

传送带输送40个工件,用光电传感器计数,当计件数量小于35时指示灯常亮,当计件数量等于或大于35时指示灯闪烁,当计件数量为40时,10S后传送带停止,同时指示灯熄灭。

02 IO分配表

03组态配置

第一步: (点击添加新设备,选择CPU 315-2 DP版本号根据实际版本来设定,点击确认)

第二步: (项目树—PLC变量创建一下变量地址)

04编写程序

第一步: (传送带电机的启动与停止控制)

第二步: (工件计数及比较)

05演示运行

第一步: (启动,在程序段1中, 当按下启动按钮M3.0,M3.0常开触点接通,Q124.0线圈通电自锁,传送带电机启动运行)

第二步: (工件计数,在程序段2中,当传送带电机运行时,Q124.0常开触点接通,工件每次经过光电传感器时,光电开关接通1次,M3.3常开触点闭合1次,C0的当前值MW100加一,MW100<35时,Q124.1线圈一直通电, 指示灯常亮,MW100≥35时,指示灯每秒闪烁1次, MW100≥40时,定时器TO延时10s。 延时10S时间到,计数器C0复位,程序段1中TO常闭断开,传送带电机停止。)

来源:PLC发烧友,作者:技成-徐陈爽,未经授权请勿转载!评论处大家可以补充文章解释不对或欠缺的部分,这样下一个看到的人会学到更多,你知道的正是大家需要的。。。回复:”西门子全套 ”资料,可领含手册、案例、软件等资料包,不要忘记领取哦~

第3章 PLC编程中的计数器全面解析

计数器是常用和通用的功能之一。

3.1 计数器指令

如图3.1所示,a为加计数器指令,b为减计数器指令,c为加减计数器指令。

图3.1 计数器指令

3.1.1 加计数器

如图3.2所示,程序段1为加计数器的简单应用。

a为计数器的背景DB空间;用于存放计数器使用的一些变量信息等。

b为计数器开始计数的条件引脚CU;

c为计数器的复位引脚R;用于将计数器清零

d为计数器的目标值引脚PV;加计数器要达到的数值

f为计数器的当前值引脚CV;

e为计数器的输出引脚Q,当计数器的当前值大于等于设定值时,该引脚输出信号。

g为计数器输出时接通的信号,本段程序中使用的是DB201.DBX0.2。

图3.2 加计数

大致工作原理

当DB201.DBX0.0接通时,计数器C[21]开始计数,CU引脚每接通一次,计数器数值加一。一直加到CV值等于PV值时,DB201.DBX0.2接通。

当DB201.DBX0.0还继续重复接通时,计数器C[21]不超过限值的话就会一直计数,CV值会增加。

当改变PV值时,依然满足CV值大于等于PV值时,计数器的Q引脚才会输出。

当DB201.DBX0.1接通时,计数器C[21]清零。

计数器背景空间

a处可以是调用指令后,自动生成的DB块,也可以是自己在某一DB块建立的数据类型为IEC_COUNTER的数据类型。如图3.3所示我们建立了一个C数组,数量为1000个,编号从0-999,数据类型都是计数器的数据类型IEC_COUNTER,这样以后再使用计数器的时候都可以选择使用,没有用过的计数器变量,用于当做某一计数器的背景块。

图3.3 计数器数组

计数器清零

如图3.2所示,当计数器的R引脚接通时,计数器就会被复位,计数器的当前值就会为0,本案例中使用的地址为DB201.DBX0.1。

计数器清零还有另外一种方法就是直接令计数器的当前值CV=0,如图3.4所示,当M220.0接通时,将0赋值给DB11.DBW130,这样该计数器的CV值就变成了0,该计数器是咱们上边用到的计数器。需要给哪个计数器清零,就把它的计数器的CV值给0就可以了。这种方法与引脚R接通复位效果是一样的。

图3.4 计数器数组

3.1.2 减计数器

如图3.5所示,程序段3为减计数器的简单应用。

a为计数器的背景DB空间;用于存放计数器使用的一些变量信息等。

b为计数器开始计数的条件引脚CD;

c为计数器的装载引脚LD;接通时将PV值重新装载到计数器

d为计数器的目标值引脚PV;减计数器用于装载的数值

f为计数器的当前值引脚CV;

e为计数器的输出引脚Q,当计数器的当前值小于等于0时,该引脚输出信号。

g为计数器输出时接通的信号,本段程序中使用的是DB201.DBX6.2。

图3.5 减计数

大致工作原理

当DB201.DBX6.0接通时,计数器C[22]开始计数,CD引脚每接通一次,计数器数值减一。一直加到CV值等于0时,DB201.DBX0.2接通。

当DB201.DBX6.0还继续重复接通时,计数器C[22]不超过限值的话就会一直计数,CV值会减少。

当CV小于等于0时,计数器的Q引脚才会输出。

当DB201.DBX6.1接通时,计数器C[22]装载PV值。

3.1.3 加减计数器

如图3.6所示为加减计数器的简单应用。加减计数器是将加计数器和减计数器集合在了一起,对应的功能引脚功能如下,具体用法参照加计数和减计数的单独使用的方法即可。

a为计数器的背景DB空间;用于存放计数器使用的一些变量信息等。

b为计数器开始加计数的条件引脚CU;接通时开始加

c为计数器开始减计数的条件引脚CD;接通时开始减

d为计数器的复位引脚R;用于将计数器清零

e为计数器的装载引脚LD;接通时将PV值重新装载到计数器

f为计数器的目标值引脚PV;减计数器用于装载的数值

g为计数器的输出引脚QU,当计数器的当前值大于等于设定值时,该引脚输出信号。

h为计数器的输出引脚QD,当计数器的当前值小于等于0时,该引脚输出信号。

i为计数器的当前值引脚CV;

k为计数器QU引脚输出时接通的信号,本段程序中使用的是DB201.DBX12.4。

同一计数器具备了加和减的两种功能,加减相对独立,各自实现各自的功能,总体数值体现在一个计数器上。

图3.6 加减计数

3.2 计数器做定时器使用

有时候需要用到通过计数器做定时器的程序。如图3.7所示,做的是一个定时器。当(开始计时条件M220.1)接通时,通过1秒的脉冲时钟,每过1秒,计数器C[24]就会加1,这样C[24]就变成了秒级别的定时器,定时器的时间存放在DB201.DBW4中。

当(开始计时条件M220.1)断开时,计数器停止计数。M220.1的常闭触点接通,通过R引脚复位计数器,达到给定时器清零的目的。

图3.7 加减计数

3.3 问题思考

如果计数条件是一个信号,一个信号的通断能正常反应通断问题。如果计数条件如图3.8所示,我们应该做成置复位的形式。当满足计数条件时,置位计数条件信号,不需要计数时,复位该信号就行了。如果不采用置复位的话,当M30.0,M30.1,M30.2和M30.3中,有任何一个信号出现晃动,或者短时间内多次接通的情况,就会导致虚假计数的发生。因此在实际编程过程中,计数原来很简单,但是做好计数就不简单了!需要甄别选用哪些信号作为实用,如何过滤晃动信号,又该何时复位计数条件等。

图3.8计数条件案例

1、加计数最大能加到多少?为什么?如果想加到更大,如何操作?

2、减计数时,能产生负数吗?如果不想让减计数产生负数,怎么操作呢?

3、减计数能直接装载一个负数吗?如果在计数向负数的方向越变越小,那么减计数的线圈输出使用该怎么办呢?

4、加减计数同时用的时候,如果加计数和减计数同时发生了,怎么办?编程时是否需要把加减计数接通的条件完善一下,不让加减计数条件同时接通。

还在犹豫什么,抓紧时间实操一下吧,或者仿真操作也可以的!

喜欢的请收藏和转发!希望能帮到更多的朋友!

相关问答

plc怎么设置计数程序?

在PLC中设置计数程序需要编写相应的程序代码,下面介绍一般的设置计数程序的步骤。1.确定计数器类型。PLC中有多种计数器类型可供选择,如循环计数器、总计数...

plc如何做到批量计数?

首先在做程序前要规划好I/O已及内部中继,数据寄存器这是做批量控制的前题。第二要全用PLC的数据处理指令,逻辑门指令,还有FOR循环指令,这两类是做批量处理...

三菱plc旋转编码器怎么编程计数?

在三菱PLC中编程计数旋转编码器,您可以按照以下步骤进行操作:1.首先,确保您的PLC和旋转编码器已正确连线,并已连接到PLC的输入模块。2.在PLC编程软件(如GX...

三菱PLC怎样实现产品计数?

程序最好还是自己写的,我跟你说下我的思路吧。三菱的我没用过,西门子的是这样用的,首先,你把编码器接入到PLC上,然后在程序里面用个高速计数器计数,一般在...

如何用PLC对绝对值编码器计数?

绝对值编码器不用PLC计数的,编码器能够自己计数的PLC需要的只是把编码器计完数的数值读出来。要看编码器和PLC怎么连接,使用什么接口,最简单的是模拟量接口,4...

三菱PLC计数器计数的数字怎么用二进制(4输出)表示三菱Plc,...

[最佳回答]编了个三菱FX2N程序,用MOV传送指令编的,X0为计数脉冲输入,X1为计数器复位。Y0~Y3为二进制数输出。程序已经通过仿真运行。编了个三菱FX2N程序,用MO...

plc一相两计数怎么实现?

要实现PLC一相两计数,可以使用PLC的计数器功能来实现。以下是一种可能的实现方法:1.首先,确保PLC具有足够的计数器功能。大多数PLC都提供了多个计数器功能,...

三菱FX1S系列PLC记数指令程序如何编写?

应用指令:FNC21LDX000-----FNC21—D10-D12-D14当取X0时D10减去D12的差存贮在D14应用指令:FNC21LDX000-----FNC21—D10-D1...

PLC高速计数AB相计数是怎么计数的呢?

PLC高速计数AB相计数是指编码器输出两路计数信号(A.B),它们在相位上相差90°,PLC可以根据两者的相位,判断编码器的转向进行所要执行的控制。PLC高速计数AB...

松下plc计数器指令怎么输入?

符号是C.列如C100,计数器跟定时器是共享寄存器的,根据设定可以改变它们的数量,而却松下每种机型里的数量也不一致,根据你的机型来选择合适的计数器就可以了...

 h3cs1224  玉皇大帝圣诞日 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

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

热线

188-0000-0000
专属服务热线

微信

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