西门子S7-1200高速计数功能简介(图文)
PLC/HMI 发布时间:2020年11月14日 16:56 收录时间:2020年11月24日 05:51 作者:工控PLC学习 来源:微信公众号

工控课堂

工控课堂【www.gkket.com】工程师必备网站

添加微信:gkket123 加入500人工控微信群

电气工控自动化-超万元免费资料

点我免费下载

(DownLoad)

S7-1200 高速计数功能简介

1高速计数器

S7-1200 CPU提供了最多6个(1214C)高速计数器,其独立于CPU的扫描周期进行计数。可测量的单相脉冲频率最高为100KHz,双相或A/B相最高为30KHz,除用来计数外还可用来进行频率测量,高速计数器可用于连接增量型旋转编码器,用户通过对硬件组态和调用相关指令块来使用此功能。

2高速计数器工作模式

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

· 计数器,外部方向控制。

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

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

· A/B相正交脉冲输入。

· 监控PTO输出。

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

· 外部复位,无启动输入。

· 内部复位,无启动输入。

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

描述

输入点定义

功能

HSC

HSC1

使用CPU集成I/O或信号板或监控PTO0

I0.0

I0.1

I0.3


I4.0

I4.1

PTO 0 

PTO 0 方向

HSC2

使用CPU集成I/O或监控PTO0

I0.2

I0.3

I0.1


PTO 1 

PTO 1 方向

HSC3

使用CPU集成I/O

I0.4

I0.5

I0.7


HSC4

使用CPU集成I/O

I0.6

I0.7

I0.5


HSC5

使用CPU集成I/O或信号板

I1.0

I1.1

I1.2


I4.0

I4.1

HSC6

使用CPU集成I/O

I1.3

I1.4

I1.5


模式

单相计数,内部方向控制

时钟



计数或频率

复位

计数

单相计数,外部方向控制

时钟

方向


计数或频率

复位

计数

双相计数,两路时钟输入

增时钟

减时钟


计数或频率

复位

计数

A/B相正交计数

A

B


计数或频率

Z

计数

监控PTO输出 

时钟

方向


计数

1 高速计数器硬件输入定义与工作模式

并非所有的CPU都可以使用6个高速计数器,如1211C只有6个集成输入点,所以最多只能支持4个(使用信号板的情况下)高速计数器。由于不同计数器在不同的模式下,同一个物理点会有不同的定义,在使用多个计数器时需要注意不是所有计数器可以同时定义为任意工作模式。高速计数器的输入使用与普通数字量输入相同的地址,当某个输入点已定义为高速计数器的输入点时,就不能再应用于其它功能,但在某个模式下,没有用到的输入点还可以用于其它功能的输入监控PTO的模式只有HSC1HSC2支持,使用此模式时,不需要外部接线,CPU在内部已作了硬件连接,可直接检测通过PTO功能所发脉冲。

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

高速计数器号

数据类型

默认地址

HSC1

DINT

ID1000

HSC2

DINT

ID1004

HSC3

DINT

ID1008

HSC4

DINT

ID1012

HSC5

DINT

ID1016

HSC6

DINT

ID1020

1 高速计数器寻址

 

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

5高速计数器指令块

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

1高速计数器指令块

3所示为高速计数器指令块参数说明

  HSC  (HW_HSC)

  高速计数器硬件识别号

  DIR  (BOOL)

  TRUE =使能新方向

  CV  (BOOL)

  TRUE = 使能新初始值

  RV (BOOL)

  TRUE = 使能新参考值

  PERIODE  (BOOL)

  TRUE = 使能新频率测量周期

  NEW_DIR  (INT)

  方向选择1=正向

                0=反向

  NEW_CV  (DINT)

 新初始值

  NEW_RV  (DINT)

 新参考值

  NEW_PERIODE  (INT)

 新频率测量周期 

1 高速计数器指令块参数

 

6应用举例为了便于理解如何使用高速计数功能,通过一个例子来学习组态及应用。假设在旋转机械上有单相增量编码器作为反馈,接入到S7-1200 CPU,要求在计数25个脉冲时,计数器复位,并重新开始计数,周而复始执行此功能。针对此应用,选择CPU 1214C,高速计数器为:HSC1。模式为:单相计数,内部方向控制,无外部复位。据此,脉冲输入应接入I0.0,使用HSC1的预置值中断(CV=RV)功能实现此应用。

组态步骤:

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

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

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

· 将程序下载,执行功能

1硬件组态选中CPU如图2

2选中CPU

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

3 选择属性打开组态界面

激活高速计数功能如图4

4 激活高速计数功能

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

5 计数类型,计数方向

1 此处计数类型分为3种,Axis of motion(运动轴)Frequency(频率测量),Counting(计数)。这里选择Counting2 模式分为4种:Single phase(单相), Two phase(双相), AB Quadrature 1XA/B相正交1倍速), AB Quadrature 4XA/B相正交4倍速)。这里择Single phase3 输入源,这里使用的为CPU集成输入点。4 计数方向选择,这里选用User program (internal direction control)(内部方向控制)5初始计数方向。这里选择Count up(向上计数)初始值及复位组态如图6

6 初始值及复位组态

预置值中断组态如图7

7 预置值中断组态

8 添加硬件中断

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

8 组态添加的硬件中断

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

9 地址分配与硬件识别号

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

2程序编写将高速计数指令块添加到硬件中断中

10 打开硬件中断块                             11 添加高速计数器

 

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

程序视图如图13

13 程序视图

1 这里就是图9中系统指定的高速计数器硬件识别号,这里填12 “1”为使能更新初值3 “0”新初始值为0至此程序编制部分完成,将完成的组态与程序下载到CPU后即可执行,当前的计数值可在ID1000中读出 ,关于高速计数器指令块,若不需要修改硬件组态中的参数,可不需要调用,系统仍然可以计数。


转发是最大的鼓励!谢谢您的支持!

重要通知

想加入工控PLC学习技术交流群

请添加班长为好友

并备注:地区-行业-姓名昵称获取进群资格。

工控PLC学习
专业专注分享

      

分享到朋友圈,和朋友们一起分享吧

——————————————————————

 来源:工控课堂www.gkket.com,侵删!

▣ 声明:我们尊重原创。文字图片视频素材,版权属于原作者。部分文章推送时因种种原因未能与原作者联系上,若涉及版权问题,敬请原作者联系我们删除处理(联系17621634088-微信同号),我们只做分享之用,不用于商业。


她们都关注了,你还等什么?

      

猛戳阅读原文,开启电气工控自动化之路

相关推荐

最新文章


热门文章