7.2.6 增减计数器_INT
功能
CTDU_INT称为增减计数器,用于累计输入端输入脉冲(0->1或者1->0)个数
LD图形
参数说明
接口变量 | 声明 | 数据类型 | 说明 |
---|---|---|---|
CU | Var_Input | BOOL | 增计数信号输入端 |
CD | Var_Input | BOOL | 减计数信号输入端 |
R | Var_Input | BOOL | 复位输入、CV清零 |
LD | Var_Input | BOOL | 装载预置值、CV设置为PV |
PV | Var_Input | INT | 预置值 |
QU | Var_Output | BOOL | 加计数器的状态 |
QD | Var_Output | BOOL | 减计数器的状态 |
CV | Var_Output | INT | 当前计数的值 |
对应语法
- 计数范围: -32768~32767
- 每当CU从FALSE变为TRUE,CV增加1,每当CD从FALSE变为TRUE,CV减少1;
- 当CV大于等于PV时,QU输出TRUE,当CV小于PV时,QU输出FALSE;
- 当CV小于等于0时,QD输出TRUE,当CV大于0时,QD输出FALSE;
- CV的上下限取决于计数器指定的正数类型的最大值与最小值(-32768~32767)
- 任意时刻,只要R为TRUE时,QU输出为FALSE,CV立即停止计数并回退至0;
- 任意时刻,只要LD为TRUE时,QD输出FALSE,CV立即停止计数并回到PV值
注意
功能块使用需要全局声明一个实例
示例
-
LD示例如下动图所示:
-
ST示例如下代码所示:
CTUD_INT_1(
CU:=UP,
CD:=DOWN,
R:=RESET,
LD:=LOAD,
PV:=1,
QU=>OUT,
QD=>OUT2,
CV=>cVar
);
IF OUT THEN
IVar:=iVar+1;
ELSE
iVar:=0;
END_IF;
IF OUT2 THEN
iVar2:=iVar2+1;
else
iVar2:=0;
END_IF;