PLC_博图系列☞基本指令”S_CU:分配参数并加计数”

PLC_博图系列☞基本指令”S_CU:分配参数并加计数”
文章目录
- PLC_博图系列☞基本指令”S_CU:分配参数并加计数”
- 背景介绍
- S_CU:分配参数并加计数
- 说明
- 参数
- 示例
关键字:
PLC
、
西门子
、
博图
、
Siemens
、
S_CU
背景介绍
这是一篇关于
PLC
编程的文章,特别是关于西门子的博图软件。我并不是专业的PLC
编程人员,也不懂电路,所以如果你希望从这里学习PLC
编程技术,可能会有些失望。然而,因为工作需要,我开始了解PLC
编程,特别是西门子的博图软件,并记录了这些经验。随着我国工业4.0
的推进,相信会有更多的人从事类似的工作。如果这篇文章能对你有所帮助,欢迎点赞
和关注
我❥(^_-)。
S_CU:分配参数并加计数
说明
可使用“分配参数并加计数”指令递增计数器值。如果输入 CU 的信号状态从“0”变为“1”(信号上升沿),则当前计数器值将加 1。当前计数器值在输出 CV 处输出十六进制值,在输出 CV_BCD 处输出 BCD 编码的值。计数达到上限“999”后,停止递增。达到上限后,即使出现信号上升沿,计数器值也不再递增。
当输入 S 的信号状态从“0”变为“1”时,将计数器值设置为参数 PV 的值。如果已设置计数器,并且输入 CU 处的 RLO 为“1”,则即使没有检测到信号沿的变化,计数器也会在下一扫描周期相应地进行计数。
当输入 R 的信号状态变为“1”时,将计数器值置位为“0”。只要 R 输入的信号状态为“1”,输入 CU 和 S 信号状态的处理就不会影响该计数器值。
如果计数器值大于 0,输出 Q 的信号状态就为“1”。如果计数器值等于 0,则输出 Q 的信号状态为“0”。
说明 只需在程序中的某一位置处使用计数器,即可避免计数错误的风险。
指令“分配参数并加计数”需要使用前导逻辑运算进行边沿检测,并可置于程序段中间或结尾。
参数
下表列出了指令“分配参数并加计数”的参数:
参数 | 声明 | 数据类型 | 存储区 | 说明 |
---|---|---|---|---|
<计数器> | InOut/Input | COUNTER | C | 指令中的计数器 计数器的数量取决于 CPU。 |
CU | Input | BOOL | I、Q、M、D、L、T、C 或常量 | 加计数输入 |
S | Input | BOOL | I、Q、M、D、L、T、C 或常量 | 用于预设置计数器的输入 |
PV | Input | WORD | I、Q、M、D、L 或常量 | 预置计数器值(C#0 至 C#999) |
R | Input | BOOL | I、Q、M、D、L、T、C 或常量 | 复位输入 |
CV | Output | WORD、S5TIME、DATE | I、Q、M、D、L | 当前计数器值(十六进制) |
CV_BCD | Output | WORD、S5TIME、DATE | I、Q、M、D、L | 当前计数器值(BCD 编码) |
Q | Output | BOOL | I、Q、M、D、L | 计数器状态 |
示例
以下示例说明了该指令的工作原理:
如果输入“TagIn_1”的信号状态从“0”变为“1”(信号上升沿)且当前计数器值小于“999”,则计数器值加 1。输入 TagIn_2 的信号状态从“0”变为“1”时,计数器值将设置为参数“TagPresetValue”的值。当“TagIn_3”操作数的信号状态为“1”时,计数器值复位为“0”。
当前计数器值在操作数“TagValue_1”中为十六进制值,在操作数“TagValue_2”中为 BCD 编码格式。
只要当前计数器值不等于“0”,输出“TagOut”的信号状态便为“1”。
**注:**以上部分内容来之博图V16帮助文档。
