跳到主要内容

7.2.6 增减计数器_INT

功能

CTDU_INT称为增减计数器,用于累计输入端输入脉冲(0->1或者1->0)个数

LD图形

Alt text

参数说明

接口变量声明数据类型说明
CUVar_InputBOOL增计数信号输入端
CDVar_InputBOOL减计数信号输入端
RVar_InputBOOL复位输入、CV清零
LDVar_InputBOOL装载预置值、CV设置为PV
PVVar_InputINT预置值
QUVar_OutputBOOL加计数器的状态
QDVar_OutputBOOL减计数器的状态
CVVar_OutputINT当前计数的值

对应语法

  • 计数范围: -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示例如下动图所示: alt text

  • 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;