CTUD和CTUDP指令中使用的计数器变量是结构变量。下表列出内部结构。
计数器变量
计数器变量 |
变量设置 |
描述 |
---|---|---|
变量名.R |
位变量 |
复位当前值。清0。
复位当前值。(预设值) |
变量名.Q |
位变量 |
在当前值达到预设值时置ON。 |
变量名.UP |
位变量 |
当变量为ON时进行加计数。 |
变量名.QU |
位变量 |
对于加/减计数器,在当前值达到预设值时置ON。 |
变量名.QD |
位变量 |
对于加/减计数器,在当前值达到0或更小时置ON。 |
变量名.PV |
整型变量 |
预设值 |
变量名.CV |
整型变量 |
过程变量 |
当CTUD和CTUDP指令的 .UP位为ON时,它们的操作同CTU指令相同。当 .UP位为OFF时,CTUD和CTUDP指令的操作同CTD指令相同。
当.UP为ON(加计数)且.CV(当前值)大于.PV(预设值)时,.Q在当前值达到预设值时置ON且.QU置ON。
当.UP为OFF(减计数)且.CV(当前值)为0或更小时, .Q在当前值达到预设值时置ON且.QD置ON。
程序示例
CTUD
在下面的例子中,如果1分钟内记下了5个操作错误,就会显示一个错误。
在程序示例中,不显示定时器指令。只显示用于定时器启动的一分钟定时器启动触发器。
要对操作错误进行计数,请创建一个独立的错误输入触发器。
当一分钟定时器的常开指令置ON时,分配给计数器.R(复位)的OUT指令置ON。当操作错误计数器.R(复位)置ON时,如果.UP为ON,将执行CTUD指令,并将.CV(当前值)清0。如果.UP为OFF,将执行CTD指令,并将.PV(预设值)复制到.CV(当前值)。
当第三行中的上升沿常开指令置ON时,如果.UP为ON,.CV值加1。如果.UP为OFF,.CV值(当前值)减1。
当.UP为ON且.PV值(预设值)和.CV值相等时,.Q和.QU置ON。当.UP为OFF且.CV值(当前值)小于0时,.Q和.QD置ON。
CTUD指令(当当前值达到预设值时置ON)的操作错误计数器.Q置ON,OUT指令输出错误检测消息。
CTUDP
CTUD和CTUDP指令之间的不同在于.CV值是作为电平计数器增加还是作为上升沿计数器增加。 程序创建中的不同在于位于第三行的用于检测操作错误的上升沿指令是常开指令。除了输入的决定方式外,操作上没有什么不同。