Таймеры 

Таймеры

2.6

Время практически всегда играет важную роль в системах управления. Вот типичные примеры: «Дать команду на снятие тормоза, подождать 0.5 секунды, чтобы он был отпущен, проехать до упора и прекратить движение, подождать 1 секунду и зафиксировать тормоз» и « Включить гидравлический насос, если вспомогательный контакт через 0.7 секунды не сигнализирует о неисправности привода, а если привод работает, то подождать 2 секунды и активизировать управляющий клапан, если затем через 3 секунды не установится требуемое давление, то выдать сигнал о неисправности гидравлической системы и выключить насос». Поэтому ПЛК должен иметь в своем составе таймеры как часть языка его программирования. Существует много типов таймеров, некоторые из них показаны на рис. 2.28.

Наиболее распространенным является таймер, осуществляющий задержку включения, действие которого проиллюстрировано на рис. 2.28 (а). На его основе, приложив некоторую смекалку, можно смоделировать все другие типы таймеров. Переход из 0 в 1 осуществляется с задержкой на заранее заданное время Т, но переход из 1 в 0 происходит совершенно без запаздывания. Входной сигнал длительностью менее Т игнорируется. В ПЛК GEM-80 используется только этот тип таймера.

Таймер, осуществляющий задержку выключения, обеспечивает мгновенный переход из 0 в 1, но переход из 1 в 0 — с задержкой. Его действие проиллюстрировано на рис. 2.28 {б). Задержка выключения обычно используется для устранения эффекта дребезга контактов или шума из входного сигнала. Задержку выключения можно получить на основе задержки включения, используя инверсию входного сигнала и инверсию выходного сигнала таймера (хотя результирующей программе немного недостает «прозрачности»).

На рис. 2.28 (в) проиллюстрировано действие запускаемого фронтом входного сигнала импульсного таймера, который обеспечивает формирование импульса фиксированной ширины для каждого перехода из 0 в 1 на входе таймера. В состав PLC-5 входит однопроходный таймер, который вырабатывает импульс, длительность которого равна времени одного (и только одного) прохода программы. Импульсы полезны для восстановления исходного состояния счетчиков или для управления переносом некоторых данных из одного места в другое. Типичным примером является сигнализатор (описываемый в разделе Аварийная сигнализация).

Таймер любого типа имеет несколько параметров, которые должны быть установлены пользователем. Важнейшим параметром является базовая единица времени (в этих единицах измеряются все временные интервалы). Типичными единицами являются 10 мс, 100 мс, 1 с, 10 с и 100 с. Базовая единица не влияет на точность таймера; эта точность обычно совпадает с точностью цикла выполнения программы.

Следующим параметром (preset) является длительность задаваемого таймером интервала времени (этот параметр часто называется уставкой). Длительность измеряется в базовых единицах времени; например, при базовой единице 10 мс таймер с уставкой 150 будет формировать длительность 1.5 с. В малых ПЛК уставка задается программистом; в больших ПЛК длительность может задаваться и изменяться внутри программы. Например, таймер, осуществляющий задержку выключения и используемый в системе торможения автомобиля, может иметь различные уставки в зависимости от того, с какой скоростью движется автомобиль — с высокой или низкой.

Рис. 2.28. Различные типы таймеров: (а) задержка включения; (б) задержка выключения; (в) формирование импульса фиксированной ширины

Работу таймера можно описать с помощью ряда сигналов. На рис. 2.29 изображены сигналы таймера PLC-5, осуществляющего задержку включения (называемого TON) и задержку выключения (называемого TOF). Обозначения сигналов следующие:

  • EN (от английского enable) — имитация входа (запуска) таймера. ТТ (от английского timer timing) - присутствует, пока идет отсчет времени.
  • DN (от английского done) — сообщает, что работа таймера закончена.

В больших ПЛК программным способом может быть получено истекшее время (часто называемое суммарным временем) для использования в тех или иных целях (например, от программы можно потребовать, чтобы она зарегистрировала, сколько времени занимает определенная операция).

Производители ПЛК программируют таймер по-разному. В некоторых ПЛК, например в GEM-80, таймер используется как элемент задержки, работа которого проиллюстрирована на рис. 2.28 (а), причем значение уставки хранится в блоке VALUE. Компания Siemens использует аналогичную идею, но применяет другие типы таймеров. Что касается PLC-5, то в нем таймер используется в качестве оконечного устройства звена многоступенчатой схемы, а его сигналы выполняют роль контактов в других цепях.

На рис. 2.30 приведен типичный пример программирования конкретной задачи для PLC-5, GEM-80 и Siemens 115U (с использованием логических обозначений). Эта программа управляет пусковым устройством двигателя, которое включается и выключается при помощи кнопок. Пусковое устройство имеет вспомогательный контакт, который, если это устройство активизировано, сигнализирует, что двигатель вращается. Если вращение прекращается из-за перегрузки, или если нажата кнопка аварийной остановки, или если пропадает питание, то сигнал от вспомогательного контакта исчезнет. Однако состояние этого контакта не может быть проверено, пока не истекут 1.5 с с момента активизации пускового устройства,

Рис. 2.29. Сигналы таймера ПЛК Allen Bradley: (а) таймер типа TON; (б) таймер типа TOF

поскольку именно столько времени требуется для срабатывания контакта. Если возникает одна из указанных выше проблем, то схема на рис. 2.30 проверяет состояние вспомогательного контакта и сигнализирует о неисправности привода. Обратите внимание на различия в использовании таймера и способе запоминания сигнала неисправности.

Рис. 2.30. Использование различных типов таймера в одной и той же задаче: (а) в обозначениях PLC-5; (б) в обозначениях GEM-80
Рис. 2.30 (продолжение), (в) в логических обозначениях Siemens

Истекшее (суммарное) время в таймере, о котором говорилось выше, сбрасывается до нуля каждый раз, когда становится равным нулю входной сигнал. Это проиллюстрировано на рис. 2.31 (а). Такой таймер называют несохраняюшим. Но иногда полезно иметь таймер, который запоминает текущее значение времени даже если входной сигнал становится равным нулю. Когда входной сигнал появляется снова, таймер продолжает отсчет времени с того значения, при котором он прекратил работу, как показано на рис. 2.31 (о"). Неудивительно, что такой таймер называют сохраняющим. Для сброса показаний таймера на ноль должен быть использован отдельный сигнал. Если в каком-либо ПЛК отсутствует сохраняющий таймер, те же самые функции могут быть реализованы с помощью счетчика, о чем речь пойдет в следующем разделе.

Типичный таймер может отсчитывать интервал времени до 32 767 базовых единиц (что соответствует 16 двоичным разрядам). Некоторые ПЛК старых моделей, работаюшие в двоично-десятичной системе, содержат таймеры, которые могут считать только до 999. При базовой единице в 1 с максимальное время отсчета составит чуть более 546 мин, или около 9 ч. Если необходимо получать большие интервалы времени (или отсчитывать время с разрешением менее 1 с), то для этого можно использовать комбинации таймеров и счетчиков, как описано в следующем разделе.

Рис. 2.31. Типы таймеров: (а) несохраняющий таймер; (б) сохраняющий таймер; (в) таймер в обозначениях Allen Bradley; (г) таймер в обозначениях Siemens