高速计数器寻址

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

表1.高速计数器寻址

高速计数器号

数据类型

默认地址

HSC1

DINT

ID1000

HSC2

DINT

ID1004

HSC3

DINT

ID1008

HSC4

DINT

ID1012

HSC5

DINT

ID1016

HSC6

DINT

ID1020

中断功能

S7-1200 在高速计数器中提供了中断功能,用以处理某些特定条件下触发的程序

共有 3 种中断事件:

1.当前值等于预置值

2.使用外部信号复位

3.带有外部方向控制时,计数方向发生改变

频率测量

S7-1200 除了提供计数功能外,还提供了频率测量功能,有 3 种不同的频率测量周期:1.0 秒,0.1 秒和0.01 秒。

频率测量周期是这样定义的:计算并返回新的频率值的时间间隔。返回的频率值为上一个测量周期中所有测量值的平均,无论测量周期如何选择,测量出的频率值总是以 Hz (每秒脉冲数)为单位。

高速计数器指令块

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

图1.高速计数器指令块

表2.高速计数器参数说明

HSC (HW_HSC)

高速计数器硬件识别号

DIR (BOOL) TRUE

: 使能新方向

CV (BOOL) TRUE

: 使能新起始值

RV (BOOL) TRUE

: 使能新参考值

PERIODE (BOOL) TRUE

: 使能新频率测量周期

NEW_DIR (INT)

: 方向选择1:=正向;-1 :=反向

NEW_CV (DINT)

: 新起始值

NEW_RV (DINT)

: 新参考值

NEW_PERIODE (INT)

: 新频率测量周期

表3.STATUS 错误代码

错误代码(十六进制)

描述

0

无错误

80A1

高速计数器的硬件标识符无效

80B1

计数方向 (NEW_DIR) 无效

80B2

计数值 (NEW_CV) 无效

80B3

参考值 (NEW_RV) 无效

80B4

频率测量周期 (NEW_PERIOD) 无效

80C0

多次访问高速计数器

应用举例

假设在旋转机械上有单相增量编码器作为反馈,接入到S7-1200 CPU,要求在计数25个脉冲时,计数器复位,置位 M0.5,并设定新预置值为50个脉冲,当计满50个脉冲后复位M0.5,并将预置值再设为25,周而复始执行此功能。

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

组态步骤:

先在设备与组态中,选择CPU,单击属性,激活高速计数器,并设置相关参数。此步骤必须事先执行,1200的高速计数器功能必须要先在硬件组态中激活,才能进行下面的步骤。添加硬件中断块,关联相对应的高速计数器所产生的预置值中断,在中断块中添加高速计数器指令块,编写修改预置值程序,设置复位计数器等参数。将程序下载,执行功能。

硬件组态

选中CPU如图1.所示。

图1.选中CPU

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

图2.选择属性打开组态界面

激活高速计数功能如图3

图3.激活高速计数功能

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

图4.计数类型,计数方向

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

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

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

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

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

初始值及复位组态如图5.

图5.初始值及复位组态

预置值中断组态如图6

图6. 预置值中断组态

图7.添加硬件中断

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

图8.组态添加的硬件中断

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

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

程序编写

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

图10. 打开硬件中断块

图11.添加高速计数器

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

程序视图如图13

图13. 程序视图

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

意:应根据CPU属性里的硬件标识符设置该值, 如硬件标识符为257,应将指令输入的 HSC 值从 1 改为 257,如下图 14 所示:

图 14. 硬件标识符

2 1为使能更新初值;

3 1为使能更新预置值;

4 新的初始值;

5 新的预置值。

至此程序编制部分完成,将完成的组态与程序下载到CPU后即可执行,当前的计数值可在ID1000中读出 ,关于高速计数器指令块,若不需要修改硬件组态中的参数,可不需要调用,系统仍然可以计数。

上位机与1200组态步骤_西门子1200的HSC的应用实例!相关推荐

  1. wincc上位机与1200组态步骤_西门子1200与WINCC上位机如何通讯?-工业支持中心-西门子中国...

    回答者: 大宝朱林森 - 高级顾问&nbsp&nbsp第14级 2020-03-04 10:49:18 我就提醒一点,装wincc的电脑必须安装step7或者SIMATIC NET软件 ...

  2. 上位机与1200组态步骤_西门子1200PLC的S7通讯组态编程

    S7-1200 的 PROFINET 通信口可以做 S7 通信的服务器端或客户端(CPU V2.0及以上版本).S7-1200 支持 S7 单边通信,仅需在客户端单边组态连接和编程,而服务器端只准备好 ...

  3. 上位机与1200组态步骤_图解组态王一组态王软件

    奥科远电器点击左上角奥科远电器加关注组态王软件 组态王软件是一种通用的工业监控软件,它将过程控制设计.现场操作以及工厂资源管理融于一体,将一个企业内部的各种生产系统和应用以及信息交流汇集在一起,实现最 ...

  4. wincc上位机与1200组态步骤_博途v13的wincc能组态上位机吗

    请问博途v13的wincc与wincc v7.3的区别在哪儿 最佳答案 可以的 博图WINCC分三个版本,其中Professional版本可以组态上位机运行系统comfort和basic 版本仅用于触 ...

  5. 上位机与1200组态步骤_组态王与 I/O 设备

    组态王软件是一种通用的工业监控软件,它将过程控制设计.现场操作以及工厂资源管理融于一体,将一个企业内部的各种生产系统和应用以及信息交流汇集在一起,实现最优化管理.它基于Microsoft Window ...

  6. wincc上位机与1200组态步骤_组态上位机WINCC与PLC通讯连接

    WINCC 与 PLC 通讯连接 1 . STEP 7 硬件组态 STEP7 设置 MPI 通讯, 2 .安装 CP5611 通讯板卡 3 .添加驱动程序和系统参数设置 打开 WINCC 工程在 Ta ...

  7. flymcu无法打开串口_西门子1200与其他PLC/组态软件无线串口通讯(自由口)

    一.控制系统原理 图1:控制系统原理 二.硬件需求 S7-1200 PLC目前有3种类型的CPU: 1)S7-1211C CPU 2)S7-1212C CPU 3)S7-1214C CPU 这三种类型 ...

  8. 电机编码器调零步骤_西门子伺服电机电缆选型

    点击上方蓝字"西家传动" 关注公众号! 一.伺服电机电缆简介 1.订货号编码 对于1FT7/ 1FK7/ 1PH8电机而言,电机使用的电源电缆和编码器信号电缆可以使用预制电缆.电缆 ...

  9. 300 s7 置零指令_西门子1200与200、200 SMART置位复位指令的区别

    S7-1200的位逻辑指令,这也是我们在学习PLC编程时最先接触到的指令,最基本的指令. 位逻辑运算指令是对二进制位进行操作的指令,数据类型是BOOL型,这其中又包括了触点指令与赋值指令.置位与复位指 ...

最新文章

  1. [置顶] 决策树绘图(二)
  2. golang 切片copy复制 和 等号复制 区别
  3. BZOJ 2045 容斥原理
  4. 终于等到DUDU把MetaBlog Api打开了
  5. 新版开发工具?全新智能设备?华为开发者大会2021(Together)来了!
  6. 23.1解析函数的级数表示(二)
  7. (Kinetis K60) FTM输出PWM
  8. Azkaban安装部署(附资源)
  9. python 对 文件内容 搜索_python实现搜索文本文件内容脚本
  10. 7-17 小红帽与大灰狼的故事
  11. 28岁华为员工工资表曝光,牛逼的人注定会牛逼
  12. 全国首例!法院判售假者在淘宝网说“对不起”
  13. rtklib学习——DCB改正
  14. mysql语句生成,SQL语句生成器
  15. Chrome谷歌浏览器,清除css或js文件缓存的方法
  16. IDEA中大小写切换
  17. 交换机和猫、路由器到底有什么区别?
  18. 基于springboot的小区社区物业管理系统
  19. NMS——非极大值抑制
  20. 第一章 人工智能的研究和发展《2022年斯坦福AI指数报告》中文全解读

热门文章

  1. Nuget 启用数据库迁移的时候一定要把包含DbContext的项目设为启动项目
  2. DZ论坛系统 UC_KEY拿webshell
  3. 485串口测试工具软件下载_串口调试助手详细讲解(结合实操),通讯问题不再是问题...
  4. 主机ping不通Virtualbox里的虚拟机
  5. oracle 如何终止存储过程的运行
  6. mybatis配置insert/update/delete同一个模板
  7. java continue goto_Java中goto和break、continue实现区别
  8. visual studio过期登录不了账户_具有最高管理权限账户,Windows 7设置Administrator密码永不过期...
  9. python离线录音转文字_Python将文字转成语音并读出来的实例详解
  10. apache目录 vscode_VsCode搭建Java开发环境(Spring Boot项目创建、运行、调试)