CTD, CTD_***: Вычитающий счетчик
Описание функции
Функциональные блоки используются для счета вниз.
Сигнал "1" на входе LD вызывает присваивание значения на входе PV выходу CV . При каждом переходе из "0" в "1" на входе CD значение CV уменьшается на 1.
Когда CV <= 0, выход Q принимает значение "1".
Примечание: Счетчик работает только до достижения минимального значения используемого типа данных. Переполнения не происходит.
EN и ENO могут быть сконфигурированы как дополнительные параметры.
Доступные функции
Существует две спецификации функционального блока:
CTD
Эта спецификация функционального блока определена в IEC 61131-3 и относится только к типу INT .
CTD_***
Эта спецификация функционального блока является расширением IEC 61131-3 и относится к остальным типам данных. Доступны следующие блоки:
CTD_INT
CTD_DINT
CTD_UINT
CTD_UDINT
Представление в LD
Представление:
Описание параметров
Описание входных параметров:
Параметр | Тип данных | Значение |
CD | BOOL | Вход сигнала запуска |
LD | BOOL | Загрузка данных |
PV | Для CTD: INT Для CTD_***: INT, DINT, UINT, UDINT | Предустановленное значение |
Описание выходных параметров:
Параметр | Тип данных | Значение |
Q | BOOL | Выход |
CV | Для CTD: INT Для CTD_***: INT, DINT, UINT, UDINT | Значение счетчика (фактическое значение) |
Существует множество технологических процессов, где необходимо подсчитать количество действий совершенных при помощи соответствующих приборов оборудования.
Например, упаковка коробок с выпускаемой продукцией или подсчет бутылок на заводе и т.д.
Одним словом нужно вести счет. Для этих целей существуют различные виды счетчиков.
Первый из них CTD – счетчик, который уменьшает значение на 1.
Теперь рассмотрим на примере.
На рисунке показан простейший генератор импульса.
Ее представление в программе Unity Pro.
Этот способ не эффективен, поэтому я решил использовать другой способ, применив функцию R_TRIG, перехода из 0 в 1. Смотрите рисунок.
Данная тема была ранее рассмотрена.
При замыкании контакта «KEY» подается импульс на катушку «KM_1», которая в свою очередь замыкает катушку «HL».
Если запустить в таком виде, импульс настолько быстр, что порой не знаешь, сработала ли катушка али нет.
Второй вариант, я буду использовать временно, в качестве разъяснения, смотрите рисунок.
В данном примере открытый контакт «HL» нам необходим для шунтирования катушки «HL».
Двигаемся дальше:
Функция принимает следующие параметры:
- переменная HL: используется для запуска сигнала;
- переменная «LOAD»: загрузчик;
- 5: предустановленное значение;
- OUT_RELAY: реле выхода.
Закрытый контакт RESET1 необходим для первоначальной загрузки в функцию. Почему закрытый? Для того, чтобы выставить фактическое значение, которое должно совпадать с предустановленным значением, т.е. в данном случае цифра 5. Таким образом, мы выставим параметр, который позволит в дальнейшем производит отсчет по убыванию. Как только это значение дойдет до нижней отметки – 0, сработает реле OUT_RELAY.
Контакт «RESET1» перед использованием необходимо разомкнуть.
Общий вид схемы:
Можно упростить:
Значит, при запуске программы в первую очередь размыкаем контакт «RESET1» - позволив начать отсчет. Далее замыкаем и размыкаем ключ «KEY».
Действия происходит до тех пор, пока счетчик не установит значение в 0, дав сигнал на катушку «OUT_RELAY».
Действия, которые необходимо совершить:
На этом все, разрабатывайте, думайте и помните безопасность - залог успеха для человека на производстве.