本篇是《基于博途V15 西门子S7-1200 ...》系列的后续篇,看懂本篇文章之前请大家关注我,然后查找相关文章,学习之后再学习此篇。也请专业领域的大神批评指正。
感谢大家关注与支持!
这是第四篇功能指令,本篇介绍两个简单的定时器指令应用实例。上一篇是《基于博途V15 西门子S7-1200 定时器指令应用实例》,大家可以自行查阅学习。
1.打开已经创建项目
名称为计数器指令应用
2.添加PLC
3.计数器简单介绍
1)计数器指令
可使用计数器指令对内部程序事件和外部过程事件进行计数;
每个计数器都使用数据块中存储的结构来保存计数器数据;
用户在编辑器中放置计数器指令时分配相应的数据块。
CTU 是加计数器
CTD 是减计数器
CTUD 是加减计数器
2)参数的数据类型
参数 数据类型 说明
CU, CD Bool 加计数或减计数,按加或减一计数
R (CTU, CTUD) Bool 将计数值重置为零
LD (CTD, CTUD) Bool 预设值的装载控制
PV SInt, Int, DInt, USInt, UInt, UDInt 预设计数值
Q, QU Bool CV >= PV 时为真
QD Bool CV <= 0 时为真
CV SInt, Int, DInt, USInt, UInt, UDInt 当前计数值
注:a.计数值的数值范围取决于所选的数据类型。如果计数值是无符号整型数,则可以减计数到零或加计数到范围限值。如果计数值是有符号整数,则可以减计数到负整数限值或加计数到正整数限值。
b.用户程序中可以使用的计数器数仅受 CPU 存储器容量限制。计数器占用以下存储器空间:
对于 SInt 或 USInt 数据类型,计数器指令占用 3 个字节。
对于 Int 或 UInt 数据类型,计数器指令占用 6 个字节。
对于 DInt 或 UDInt 数据类型,计数器指令占用 12 个字节
3)RUN-STOP-RUN 切换或 CPU 循环上电后保留计数器数据
如果从运行模式阶段切换到停止模式或 CPU 循环上电并启动了新运行模式阶段,则存储在之前运行模式阶段中的计数器数据将丢失,除非将定时器数据结构指定为具有保持性(CTU、CTD 和 CTUD 计数器)。将计数器指令放到程序编辑器中后&#x