如何实现SIMATIC S7-1200的高速计数器(HSC)软件门控制?

"HscGate" FB
这个功能块是在STEP 7 V13 SP1 Update4中开发并用CPU 1211C DC/DC/DC固件V4.1.3进行测试的。
可以在循环组织块 "Main"中被调用。

如何实现SIMATIC S7-1200的高速计数器(HSC)软件门控制?
Fig. 01

名称数据类型描述
输入enableBool给"HscGate" FB使能
hscValueDInt高速计数器(计数值)的输入地址
hscHW_HSC高速计数器的硬件(HW ID)
输出countValueDInt(可调)高速计数器的计数值
statusWord

CTRL_HSC instruction (control High Speed Counter)的状态

输入输出 reset Bool 重启高速计数器(在执行时候自动重启)

"hscValue"和"hscHwId"输入可以从CPU属性里高速计数器的设置中获取。

  1. 为此,可以在STEP 7(TIA Portal)的项目导航中标记CPU并单击右键打开属性。
  2. 到"General"标签并导航到"High-speed counters (HSC)" 条目。
  3. 对于选定(使能)的高速计数器(HSC),打开子目录"Input addresses"和 "HW identifier"。
  4. 以起始地址作为双字输入给"hscValue" 参数、硬件标识符给"hscHwId" 参数。

如何实现SIMATIC S7-1200的高速计数器(HSC)软件门控制?
图. 02

程序流程图

如何实现SIMATIC S7-1200的高速计数器(HSC)软件门控制?
图. 03

在“enable”给一个下降沿信号,将高速计数器的当前值传输到计数值 "newCV"中。
在“enable”给一个上升沿信号,在SFB "CTRL_HSC"的帮助下将高速计数器值设置成"newCV"的值。
在Reset指令("reset")下 ,在传送到高速计数器之前将计数值"newCV"置0。
当"enable" = TRUE,高速计数器的数值被传到"countValue" 输出。
因此,在使用"enable" = TRUE时,高速计数器的计数值与"countValue"输出值完全相同。 只有在"enable" = FALSE时高速计数器值与"countValue" 输出值不相同。
这样,当给高速计数器做事件组态时,"enable"输入变量的状态也要考虑在内。

下载
如何实现SIMATIC S7-1200的高速计数器(HSC)软件门控制?Registration required STEP 7 Basic V13 SP1 Update 4 – Project with FB "HscGate" (2.3 MB)

创建环境
本FAQ的下载是用STEP 7 Basic V13 SP1 Update 4创建的。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc323680.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日
下一篇 2021年4月12日

相关推荐

发表回复

登录后才能评论