课程中心
HOME
课程中心
正文内容
plc编程例子计数 入门学PLC不再缺少方法和技巧,西门子S7-1200计数干货很全面
发布时间 : 2024-10-16
作者 : 小编
访问数量 : 23
扫码分享至微信

入门学PLC不再缺少方法和技巧,西门子S7-1200计数干货很全面

今天就以西门子 S7-1200PLC 高速计数器为主以及实例来做讲解,S7-1200 CPU 提供了最多 6 个(1214C )高速计数器 ,其独立于 CPU 的扫描周期进行计数。

可测量的单相脉冲频率最高为 100KHz ,双相或 A/B 相最高为 30KHz ,除用来计数外还可用来进行频率测量,高速计数器可用于连接增量型旋转编码器,用户通过对硬件组态和调用相关指令块来使用此功能。

一、高速计数器工作模式

高速计数器定义为 5 种工作模式

1、计数器,外部方向控制 。

2、单相计数器,内部方向控制 。

3、双相增 /减计数器,双脉冲输入。

4、5A/B 相正交脉冲输入。

5、监控 PTO 输出。

每种高速计数器有两种工作状态。

1、外部复位,无启动输入。

2、内部复位,无启动输入。

所有的计数器无需启动条件设置,在硬件向导中设置完成后下载到 CPU 中即可启动高速计数器,在 A/B 相正交模式下可选择 1X(1 倍) 和 4X(4 倍)模式,高速计数功能所能支持的输入电压为 24V DC, 目前不支持 5V DC 的脉冲输入,表 8-1 列出了高速计数器的硬件输入定义和工作模式。

并非所有的 CPU 都可以使用 6 个高速计数器,如 1211C 只有 6 个集成输入点,所以最多只能支持 4 个(使用信号板的情况下)高速计数器。

由于不同计数器在不同的模式下,同一个物理点会有不同的定义,在使用多个计数器时需要注意不是所有计数器可以同时定义为任意工作模式。

高速计数器的输入使用与普通数字量输入相同的地址,当某个输入点已定义为高速计数器的输入点时,就不能再应用于其它功能,但在某个模式下,没有用到的输入点还可以用于其它功能的输入监控 PTO 的模式只有 HSC1 和 HSC2 支持,使用此模式时,不需要外部接线, CPU 在内部已作了硬件连接,可直接检测通过 PTO 功能所发脉冲。

二、高速计数器寻址

CPU 将每个高速计数器的测量值,存储在输入过程映像区内,数据类型为 32 位双整型有符号数,用户可以在设备组态中修改这些存储地址,在程序中可直接访问这些地址,但由于过程映像区受扫描周期影响,在一个扫描周期内,此数值不会发生变化,但高速计数器中的实际值有可能会在一个周期内变化,用户可通过读取外设地址的方式,读取到当前时刻的实际值。以 ID1000 为例,其外设地址为“ ID1000 :P”。表 8-2 所示为高速计数器寻址列表

三、频率测量

S7-1200 CPU 除了提供计数功能外,还提供了频率测量功能,有 3 种不同的频率测量周期: 1.0 秒, 0.1 秒和 0.01 秒,频率测量周期是这样定义的:计算并返回新的频率值的时间间隔。返回的频率值为上一个测量周期中所有测量值的平均,无论测量周期如何选择,测量出的频率值总是以 Hz( 每秒脉冲数 )为单位。

四、高速计数器指令块

高速计数器指令块,需要使用指定背景数据块用于存储参数。图 8-5 所示为高速计数器指令块

五、应用举例

为了便于理解如何使用高速计数功能,通过一个例子来学习组态及应用。

假设在旋转机械上有单相增量编码器作为反馈,接入到 S7-1200 CPU, 要求在计数 25 个脉冲时,计数器复位,并重新开始计数,周而复始执行此功能。

针对此应用,选择 CPU 1214C ,高速计数器为: HSC1 。模式为:单相计数,内部方向控制,无外部复位。据此,脉冲输入应接入 I0.0 ,使用 HSC1 的预置值中断( CV=RV )功能实现此应用。

组态步骤:

先在设备与组态中,选择 CPU ,单击属性,激活高速计数器,并设置相关参数。此步骤必须实现执行, 1200 的高速计数器功能必须要先在硬件组态中激活,才能进行下面的步骤

添加硬件中断块,关联相对应的高速计数器所产生的预置值中断

在中断块中添加高速计数器指令块,编写修改预置值程序,设置复位计数器等参数

将程序下载,执行功能

1、硬件组态

选中 CPU 如图 8-6

图 3 所示为选择属性打开组态界面

激活高速计数功能如图 4

计数类型,计数方向组态如图 5 所示

1 此处计数类型分为 3 种, Axis of motion( 运动轴 ),Frequency (频率测量),Counting( 计数 )。这里选择 Counting

2 模式分为 4 种: Single phase( 单相 ), Two phase (双相) , AB Quadrature 1X(A/B 相正交 1 倍速) , AB Quadrature 4X (A/B 相正交 4 倍速)。这里择 Single phase

3 输入源,这里使用的为 CPU 集成输入点。

4 计数方向选择,这里选用 User program (internal direction control) (内部方向控制)

5 初始计数方向。这里选择 Count up (向上计数)

初始值及复位组态如图 6

预置值中断组态如图 7

组态添加的硬件中断,如图 8-13 有图

地址分配与硬件识别号如图 9

至此硬件组态部分已经完成,下面进行程序编写

2、程序编写

将高速计数指令块添加到硬件中断中

图 12 定义高速计数器背景数据块

程序视图如图 13

1 这里就是图 9 中系统指定的高速计数器硬件识别号,这里填 1

2 “1”为使能更新初值

3 “0”新初始值为 0

至此程序编制部分完成,将完成的组态与程序下载到 CPU 后即可执行,当前的计数值

可在 ID1000 中读出 ,关于高速计数器指令块,若不需要修改硬件组态中的参数,可不需要调用,系统仍然可以计数。

以上,欢迎动动手分享及收藏!

「PLC编程好技巧」8种“单键启停”程序,你造了么?

“PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。PLC及其有关的外围设备都应该按易于与工业控制系统形成一个整体,易于扩展其功能的原则而设计。”

目前市场上的PLC机型很多,但其基本结构、原理相同,基本功能、指令系统、编程方法类似。因此,选择了当今最具特色和符合IEC标准的西门子S7-300/400作为背景机型论述。

在实际工作中,经常遇到这样一种题目:“用一个按钮控制电动机的启停,即第一下按按钮,电机运转,第二次按按钮,电机停止运转。”浏览了近几年各地的PLC技能比赛也多次涉及到类似问题。下面就以S7-300PLC为例,介绍七种“单键控制电机启停”PLC编程实例。

一、用SR触发器实现

二、用逻辑判断实现

三、用计数器实现

四、用字右移指令实现

五、用异或指令实现

六、用累加器指令实现

七 用S和R指令实现

八、用双字循环右移指令实现

免责声明:以上内容转载自北极星电气招聘网,所发内容不代表本平台立场。联系电话 010-56002763,邮箱 hz@people-energy.com.cn

相关问答

plc如何做到批量计数?

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

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

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

plc计数指令怎么输入?

可以按下述步骤输入1、假设x1为检测信号,在软件中用X1对C0计数,在左母线处可以直接输入“LDX1”2、以C0作为内部计数器,我们假设X1检测3次之后C0动作,这时...

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

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

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

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

三菱plc计数器c如何计数?

将Y0和C0在输出端并联。y0触发输出一次,c0就会计数一次。计数器必须要有一个复位指令。技术完毕触发rstc1复位如果要在触摸屏上面显示计数次数,要用mov指令...

plc脉冲计数指令?

PLC脉冲就是在PLC的输出端能够输出方波信号,也就是高低电平信号,这个信号的频率可通过PLC内部的脉冲指令来调节,不同品牌的PLC,脉冲指令也不太一样,不过基本...

plc如何通过光电开关计数?

要通过光电开关实现PLC的计数功能,可以按照以下步骤进行设置:1.连接光电开关:将光电开关连接到PLC的输入端口。确保正确连接光电开关的电源线、信号线和地线...

三菱fx2nplc计数器总计数30000次怎样设定程序?

将Y0和C0在输出端并联。y0触发输出一次,c0就会计数一次。计数器必须要有一个复位指令。技术完毕触发rstc1复位如果要在触摸屏上面显示计数次数,要用mov指...

1200plc没有计数与测量吗?

1.没有计数与测量功能2.1200plc是一种基本的可编程逻辑控制器,它主要用于控制和监控工业自动化系统。它的主要功能是通过输入输出模块来控制和操作外部设备,...

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

QQ

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

热线

188-0000-0000
专属服务热线

微信

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