西门子S7-1200基本指令第三篇(计数器操作)

本文阐述了S7-1200/S7-1500中加计数、减计数和加减计数指令的使用方法,涉及上升沿触发、参数设置及输出状态管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CTU:加计数

说明

可以使用“加计数”指令,递增输出 CV 的值。如果输入 CU 的信号状态从“0”变为“1”(信号上升沿),则执行该指令,同时输出 CV 的当前计数器值加 1。每检测到一个信号上升沿,计数器值就会递增,直到达到输出 CV 中所指定数据类型的上限。达到上限时,输入 CU 的信号状态将不再影响该指令。

可以查询 Q 输出中的计数器状态。输出 Q 的信号状态由参数 PV 决定。如果当前计数器值大于或等于参数 PV 的值,则将输出 Q 的信号状态置位为“1”。在其它任何情况下,输出 Q 的信号状态均为“0”。

输入 R 的信号状态变为“1”时,输出 CV 的值被复位为“0”。只要输入 R 的信号状态仍为“1”,输入 CU 的信号状态就不会影响该指令。

说明

只需在程序中的某一位置处使用计数器,即可避免计数错误的风险。

每次调用“加计数”指令,都会为其分配一个 IEC 计数器用于存储指令数据。IEC 计数器是一种具有以下某种数据类型的结构:

对于 S7-1200 CPU

系统数据类型 IEC_<Counter> 的数据块(共享 DB)

局部变量

  • IEC_SCOUNTER / IEC_USCOUNTER

  • IEC_COUNTER / IEC_UCOUNTER

  • IEC_DCOUNTER / IEC_UDCOUNTER

  • CTU_SINT / CTU_USINT

  • CTU_INT / CTU_UINT

  • CTU_DINT / CTU_UDINT

  • IEC_SCOUNTER / IEC_USCOUNTER

  • IEC_COUNTER / IEC_UCOUNTER

  • IEC_DCOUNTER / IEC_UDCOUNTER

执行“加计数”指令之前,需要事先预设一个逻辑运算。该运算可以放置在程序段的中间或者末尾。

参数

下表列出了“加计数”指令的参数:

参数

声明

数据类型

存储区

说明

S7-1200

S7-1500

CU

Input

BOOL

I、Q、M、D、L 或常数

I、Q、M、D、L 或常数

计数输入

R

Input

BOOL

I、Q、M、D、L、P 或常数

I、Q、M、T、C、D、L、P 或常数

复位输入

PV

Input

整数

</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值