18c0693f

CTD


Аргументы:

CD                                             BOO вход для счета (считать вниз когда CD равно TRUE)

                                                  (счет вниз если CD равно TRUE)

LOAD                                        BOO  команда загрузить (доминанта)

                                                  (CV = PV если LOAD равно TRUE)

PV                                             INT планируемое максимальное значение

Q                                                BOO  переполнение: TRUE если CV = 0

CV                                             INT результат счета

Предупреждение:

Блок CTD не определяет передний и задний фронты входа (CD). Для того чтобы создать импульсный счетчик, его нужно связать с блоками “R_TRIG” или “F_TRIG”.

Описание:

Считает от заданного значения вниз до 0 по 1.

(*FBD пример блоков CTD*)

(* ST Эквивалент: Мы предполагаем, что R_TRIG1 - это экземпляр блока R_TRIG и CTD1 - это экземпляр блока CTD *)

CTD1(F_TRIG1(command),load_cmd,100);

underflow := CTD1.Q;

result := CTD1.CV;

(* IL Эквивалент: *)

LD                     command

ST                     F_TRIG1.clk

CAL                  F_TRIG1

LD                     F_TRIG1.Q

ST                     CTD1.cd

LD                     load_cmd

ST                     CTD1.load

LD                     100

ST                     CTD1.pv

CAL                  CTD1

LD                     CTD1.Q

ST                     underflow

LD                     CTD1.cv

ST                     result