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

PLC_博图系列☞基本指令"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帮助文档。


相关推荐
深蓝海拓4 天前
S7-1500PLC学习笔记:MOVE_BLK、MOVE_BLK_VARIANT、BLKMOV的区别
笔记·学习·plc
深蓝海拓4 天前
S7-1500学习笔记:用户自定义数据类型(UDT)
笔记·学习·plc
深蓝海拓4 天前
S7-1500学习笔记:Array数据类型
笔记·学习·plc
控电PLC5 天前
33. 顺序控制指令
plc·plc功能图
深蓝海拓8 天前
基于QtPy (PySide6) 的PLC-HMI工程项目(二)系统规划
笔记·python·qt·学习·plc
深蓝海拓9 天前
西门子S7-1500PLC的常用Area地址以及网络读写
笔记·学习·plc
深蓝海拓9 天前
基于QtPy (PySide6) 的PLC-HMI工程项目(一)使用自定义socket协议的基本方法
python·plc
Lilixxs11 天前
施耐德 M580、M340 PLC 中 BOOL 类型数组地址
数据结构·plc·施耐德·m580·m340·unity pro·control expert
9稳14 天前
基于PLC的生产线自动升降机设计
开发语言·网络·数据库·嵌入式硬件·plc
小码狐14 天前
GIT相关
git·idea·基础