- {{item.name}}
如何实现SIMATIC S7-1200的高速计数器(HSC)软件门控制?
- 0
- 2083
- 1
为了避免捕捉到不想要的计数脉冲,对于特定的应用是可以在运行时打开和关闭高速计数器的,例如那些由震动引起的干扰。 使用"HscGate" FB可以实现S7-1200高速计数执行的门控制。
"HscGate" FB
这个功能块是在STEP 7 V13 SP1 Update4中开发并用CPU 1211C DC/DC/DC固件V4.1.3进行测试的。
可以在循环组织块 "Main"中被调用。
Fig. 01
名称 | 数据类型 | 描述 | |
---|---|---|---|
输入 | enable | Bool | 给"HscGate" FB使能 |
hscValue | DInt | 高速计数器(计数值)的输入地址 | |
hsc | HW_HSC | 高速计数器的硬件(HW ID) | |
输出 | countValue | DInt | (可调)高速计数器的计数值 |
status | Word | CTRL_HSC instruction (control High Speed Counter)的状态 | |
输入输出 | reset | Bool | 重启高速计数器(在执行时候自动重启) |
"hscValue"和"hscHwId"输入可以从CPU属性里高速计数器的设置中获取。
- 为此,可以在STEP 7(TIA Portal)的项目导航中标记CPU并单击右键打开属性。
- 到"General" 标签并导航到"High-speed counters (HSC)" 条目。
- 对于选定(使能)的高速计数器(HSC),打开子目录"Input addresses" 和 "HW identifier"。
- 以起始地址作为双字输入给"hscValue" 参数、硬件标识符给"hscHwId" 参数。
图. 02
程序流程图
图. 03
在“enable”给一个下降沿信号,将高速计数器的当前值传输到计数值 "newCV"中。
在“enable”给一个上升沿信号,在SFB "CTRL_HSC"的帮助下将高速计数器值设置成"newCV"的值。
在Reset指令("reset")下 ,在传送到高速计数器之前将计数值"newCV"置0。
当"enable" = TRUE,高速计数器的数值被传到"countValue" 输出。
因此,在使用"enable" = TRUE时,高速计数器的计数值与"countValue"输出值完全相同。 只有在"enable" = FALSE时高速计数器值与"countValue" 输出值不相同。
这样,当给高速计数器做事件组态时,"enable"输入变量的状态也要考虑在内。
下载
STEP 7 Basic V13 SP1 Update 4 – Project with FB "HscGate" (2.3 MB)
创建环境
本FAQ的下载是用STEP 7 Basic V13 SP1 Update 4创建的。
https://support.industry.siemens.com/cs/cn/zh/view/109479811
剩余80%未阅读,请登录后下载/查看文档
- 评论
-
分享
扫码分享
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错
{{item.nickName}}