bannerbannerbanner
полная версияТабличный ПЛК.Табличное программирование контроллеров

Владимир Васильевич Стретенцев
Табличный ПЛК.Табличное программирование контроллеров

Полная версия

4.1. Концевой выключатель

Рассмотрим небольшую механическую систему, состоящую из подвижного элемента, движение которого не должно выходить за установленные пределы. Для ограничения движения будем использовать сигнал «Разрешение», который, перейдя в состояние ноль, запретит движение. Введем в таблицу переменные «Ограничение слева» и «Ограничение справа», отвечающие за состояния концевых выключателей. Обычно концевые выключатели имеют нормально замкнутый контакт и при срабатывании разрывают электрическую цепь. Это сделано для того, чтобы остановить работу механизма в случае отсутствия контакта в соединениях или при повреждении кабеля от концевого выключателя. Так как в нормальном состоянии цепь конечного выключателя должна быть замкнута, то любое повреждение, разрывающее цепь, будет аналогично срабатыванию концевого выключателя и ограничит движение механизма.

Рассмотрим пример табличной программы, использующей концевые выключатели. На рис. 49 показано состояние программы, когда концевые выключатели не сработали, их цепи замкнуты, следовательно, ограничений движению нет.

Рис. 49. Пример использования концевых выключателей – разрешено движение в обоих направлениях


На рис. 50 показана ситуация, когда сработал правый концевой выключатель и запретил движение вправо.

Часто концевые выключатели устанавливают совместно с аварийными концевыми выключателями, при срабатывании которых прекращается любое движение. Если обычные концевые выключатели задают диапазон, в котором механизм может двигаться во время работы, то аварийные концевые выключатели ограничивают передвижение в предельно возможных положениях.


Рис. 50. Пример использования концевых выключателей – запрещено движение вправо


Добавим в табличную программу аварийные концевые выключатели. Ситуация, когда ни концевые выключатели, ни аварийные выключатели не ограничивают движение, показана на рис. 51.


Рис. 51. Пример использования аварийных концевых выключателей – разрешено движение в обоих направлениях


На рис. 52 показана аварийная ситуация, когда сработавшие справа концевой и аварийный выключатели запретили движение в обоих направлениях. Причем правый концевой выключатель запретил движение вправо, а правый аварийный выключатель запретил любое движение.


Рис. 52. Пример использования аварийных концевых выключателей – аварийная ситуация


4.2. Готовность силового питания

Многие процессы и механизмы требуют для своего функционирования значительных затрат электроэнергии. Обычно питание оборудования разделяют на силовое и контрольное. Первое снабжает электричеством исполнительные механизмы и технологические процессы. Второе питает различные датчики и приборы управления, также такое питание называют цепью управления. Еще можно выделить питание осветительных приборов, подогрева, связного оборудования и других вспомогательных систем. Программируемые контроллеры успешно применяются во всех перечисленных системах, но мы рассмотрим их использование для управления исполнительными механизмами и процессами.

Так как подача силового питания приводит в действие исполнительные устройства, работа которых сама по себе может быть небезопасной, то необходима простая и надежная система отключения этих устройств. Во время работы могут возникать нештатные ситуации, при которых вероятен переход исполнительных механизмов и систем в состояния, не предусмотренные их конструкцией. Поэтому управление включением и отключением силового питания – наиболее важная часть системы безопасности.

Использование главного контактора, подающего силовое питание, – хорошее, испытанное временем решение. Напряжение на катушку главного контактора подается через цепь последовательно включенных аварийных кнопок, при нажатии на одну из которых отключается катушка главного контактора и снимается силовое питание. Конечно, есть ситуации, когда внезапное отключение главного контактора может привести к тяжелым последствиям. Например, в последовательной цепи конвейеров отключение одного из них приведет к заваливанию остановившегося конвейера грузом, перемещаемым предыдущим конвейером. Даже если при аварии одновременно будут отключены все конвейеры, то из-за разности скоростей торможения последовательно стоящих конвейеров вероятно заваливание конвейера грузом с предыдущего. Можно привести и другие неблагополучные примеры резкого отключения силового питания. Причем такое обесточивание чаще происходит не от нажатия аварийной кнопки, а, например, из-за аварии на подстанции или в передающих электросетях. Поэтому вопрос безопасной остановки механизма или процесса при отключении силового питания должен рассматриваться на стадии их проектирования. И здесь в первую очередь необходимо позаботиться о безопасности людей, а не о возможных экономических потерях.

Управление силовым питанием при помощи контроллера – удобное решение, когда оборудование эксплуатируется в штатном режиме и резкая остановка оборудования не предполагается. Но в этом случае должна быть предусмотрена возможность отключения силового питания независимо от работоспособности контроллера. Наиболее простым и безопасным способом подачи силового питания будет такой, при котором контроллер остается только наблюдателем за процессом включения. В цепи включения главного контактора помимо кнопок включения, выключения, аварийных кнопок и датчиков должен быть нормально открытый контакт реле готовности контроллера. Если программа контроллера полностью загрузилась и контроллер может управлять оборудованием в штатном режиме, программа активирует реле готовности контроллера и становится возможным включение главного контактора. То есть при неработающем контроллере главный контактор не включится.

Если необходимо программное управление различными электрическими устройствами, то силовое питание после главного контактора подается на так называемые линейные контакторы, питающие отдельные устройства. При таком способе можно из программы управлять силовым питанием отдельных частей оборудования, не вторгаясь в цепи безопасности.

На рис. 53 показана программа, выдающая разрешение на включение главного контактора и питающихся от него систем. Перед подачей питания на исполнительные устройства необходимо убедиться, что ручки управления установлены в безопасное положение и подача питания не приведет к серьезным последствиям. Если ручки управления выключены, то импульс, сформированный по переднему фронту сигнала «Цепь управ. 220 В включена», устанавливает в единицу ячейку RS в первом столбце и, следовательно, выходную переменную с адресом 11. Данная переменная разрешает включение силового питания и может быть сброшена либо сигналом аварии, либо обесточиванием цепи управления. Защита от подачи питания при включенных ручках управления предусмотрена для того, чтобы в момент включения не произошел случайный, непредсказуемый пуск оборудования.


Рис. 53. Программа, выдающая разрешение на подачу силового питания перед включением главного контактора


На рис. 53 показано состояние программы в момент появления на входе контроллера сигнала «Цепь управ. 220 В включена». Таймер задержки включения TON в строке 2 только что установил текущее значение времени. Данная задержка нужна для того, чтобы все датчики и приборы в цепи управления успели войти в работу до начала управления оборудованием. В зависимости от применяемых приборов время задержки может быть изменено. Так как главный контактор еще не включен и таймер в строке 2 не установил на своем выходе единицу, то разрешение управления системами отсутствует.

На рис. 54 показано состояние этой же программы при включенном силовом питании. Выходной сигнал «Разрешение управления системами» формируется двумя активными ячейками в строках 2 и 10. Состояние активной ячейки в строке 2 будет равным единице через 2 секунды после включения цепи управления. Состояние ячейки в строке 10 станет равным единице после включения главного контактора.


Рис. 54. Программа, выдающая разрешение на подачу силового питания после включения главного контактора


Если во время работы по какой-то причине пропадает напряжение 220 вольт в цепи управления, то дальнейшая эксплуатация оборудования должна быть прекращена. Состояния различных датчиков, концевых и аварийных выключателей при отсутствии напряжения управления не будут отражать текущие состояния исполнительных механизмов и систем. В таком случае при отключении цепи управления должен отключаться главный контактор и сниматься разрешение управлять системами.

На рис. 55 показано состояние табличной программы при пропадании напряжения 220 вольт в цепи управления.


Рис. 55. Программа, выдающая разрешение на подачу силового питания при пропадании напряжения в цепи управления


Данный вариант слежения за силовым питанием показан для примера. На практике алгоритм программы, управляющей питанием, будет зависеть от применяемых схемных решений и может сильно отличаться от приведенного выше. Но в любом случае необходимо предусмотреть, чтобы подача силового питания происходила только при наличии сигнала разрешения от контроллера, который должен гарантировать, что программа полностью загружена и находится в состоянии работы.

 

4.3. Кнопки «Пуск» и «Стоп»

При управлении различными устройствами на производстве часто применяются две кнопки – зеленая для включения оборудования и красная для его выключения. Возможны и другие варианты управления подачей силового питания, но двухкнопочное – самое распространенное. Чтобы реализовать такое управление в табличной программе, необходимо уточнить некоторые его особенности. Зеленую кнопку будем называть «Пуск», красную – «Стоп». При кратковременном нажатии на кнопку «Пуск» должно включиться оборудование, причем сразу же, в тот же момент. Возможный вариант включения в момент отпускания кнопки, или по заднему фронту, рассматривать не будем. Аналогично и кнопка «Стоп» отключит оборудование в момент ее нажатия.

С целью обеспечения безопасной эксплуатации оборудования требуется, чтобы кнопки управления давали возможность отключить питание при первой необходимости. Поэтому кнопка «Стоп» имеет приоритет над кнопкой «Пуск». Так же и в электрических схемах в целях безопасности предусматривается контроль состояния кнопки «Стоп» и подключающей ее линии. Многие производители выпускают зеленые кнопки с нормально открытым контактом, а красные кнопки – с нормально замкнутым контактом. Такое решение применяется с тем, чтобы обрыв в цепи красной кнопки «Стоп» был равнозначен ее нажатию и удержанию. В этом случае кнопка «Пуск» блокируется и, следовательно, эксплуатация оборудования невозможна.

На рис. 56 показаны четыре состояния программы, использующей кнопки «Пуск» и «Стоп». Так как кнопка «Стоп» имеет нормально замкнутый контакт, то значение соответствующей ей переменной с адресом 3 инвертируется. Теперь нажатие на кнопки «Пуск» и «Стоп» одинаково активирует соответствующие этим кнопкам активные триггерные ячейки – R для кнопки «Пуск» и S для кнопки «Стоп». Причем кнопка «Стоп» имеет приоритет. Если обе кнопки будут нажаты одновременно, то это будет равнозначно нажатию кнопки «Стоп». Программа пересчета таблицы обрабатывает строки сверху вниз. При нажатой кнопке «Пуск» будет установлена активная триггерная ячейка в строке 2, но она не повлияет на результат, так как состояние RS ячейки первого столбца будет определяться нижней триггерной ячейкой в строке 3, которая будет активна при нажатой кнопке «Стоп».

После подачи питания на контроллер и до тех пор, пока кнопки не будут нажаты, ячейка RS в первом столбце находится в состоянии «Единица», логическое И по столбцу тоже даст единицу (рис. 56, таблица «а»). Чтобы выходная переменная «Включить» с адресом 11 при первом пересчете таблицы после загрузки была равна нолю, используется выходная операция NOT, которая инвертирует результат логического И по столбцу.

При нажатии на кнопку «Пуск» ячейка RS в первом столбце будет сброшена в ноль и логическое И по столбцу станет равным нолю. Операция инверсии переведет выходную переменную «Включить» в единицу (рис. 56, «б»). После отпускания кнопки «Пуск» ячейка RS в первом столбце останется в сброшенном состоянии, при этом переменная «Включить» будет равна единице (рис. 56, «в»). Нажатие на кнопку «Стоп» установит ячейку RS в единицу, а операция инверсии переведет выходную переменную «Включить» в ноль (рис. 56, «г»). После отпускания кнопки «Стоп» состояние программы будет таким, как показано в таблице «а» на рис. 56.





Рис. 56. Использование кнопок «Пуск» и «Стоп» в табличной программе:

а) момент включения контроллера; б) нажата и не отпущена кнопка «Пуск»; в) кнопка «Пуск» отпущена после нажатия; г) нажата и не отпущена кнопка «Стоп»


Эта несложная программа двухкнопочного управления разобрана довольно подробно, чтобы показать влияние начальных условий на работу блоков программ, использующих триггерные ячейки. Так как после включения контроллера при первом проходе программы пересчета таблицы ячейки RS в столбцах имеют значение «Единица», то при отсутствии активных ячеек, обозначаемых символом &, состояние выходной переменной будет определяться только активными ячейками R и S. Первое изменение ячейки RS произойдет после того, как станет единицей значение в строке 2 с триггерной ячейкой R.

На рис. 57 представлена программа, в которой при нажатии на кнопку «Пуск» выходная переменная «Включить» становится равной единице не сразу, а только через полсекунды. Если время нажатого состояния кнопки «Пуск» будет меньше полсекунды, то переменная «Включить» останется в ноле.


Рис. 57. Использование таймера с задержкой на включение для защиты от случайного пуска


4.4. Реверсивное управление

Программируемые логические контроллеры применяются для управления различными исполнительными устройствами, среди которых наиболее распространенными являются электрические двигатели. Помимо простых операций включения и выключения, контроллеры производят реверсивное управление электродвигателями, приводящими в движение разные механизмы. Обычно для реверсивного управления трехфазным двигателем применяется схема, состоящая из двух трехфазных контакторов, один из которых подключает двигатель напрямую, а другой меняет очередность фаз, подключаемых к двигателю. Во время работы реверсивные контакторы включаются по одному в зависимости от необходимого направления вращения двигателя. При таком подключении требуется предусмотреть защиту от одновременного включения реверсивных контакторов.

Управление пуском двигателя в нужную сторону и защиту от одновременного включения реверсивных контакторов можно реализовать в программе контроллера. Так как при одновременном включении реверсивных контакторов произойдет короткое межфазное замыкание, то дополнительно к программной защите необходимо предусмотреть защиту от одновременного включения контакторов в электрической схеме. Пример программы реверсивного управления двигателем показан на рис. 58. Строки 2 и 3 программы служат для включения реверсивных контакторов, подающих питание на двигатель, а строки 5 и 6 блокируют возможность одновременного включения двух контакторов. Если возникнет ситуация, при которой одновременно могут быть поданы два сигнала – «пуск влево» и «пуск вправо», программа отключит оба контактора. Этот способ отличается от применяемых в электрических схемах, где первый включенный контактор блокирует включение другого и будет выключен только снятием напряжения с его катушки.




Рис. 58. Пример табличной программы реверсивного управления электродвигателем:

а) начальное состояние; б) пуск влево; в) блокировка пуска при одновременной подаче команд «Влево» и «Вправо»


Резкая смена направления вращения двигателя при отключении пуска в одну сторону и одновременном включении пуска в другую сторону в некоторых случаях может спровоцировать ударные механические нагрузки. Чтобы смягчить пуск при резкой смене направления вращения двигателя, введем в строки таблицы, отвечающие за блокировку включения контакторов, таймеры с задержкой включения TON. В этом случае разрешение включить противоположное направление вращения будет дано не сразу, а через некоторое время, необходимое для остановки двигателя. В примере, представленном на рис. 59, это время равно 0,5 секунды. На рис. 59 показано состояние программы, когда до снятия блокировки пуска вправо осталось 0,35 секунды.


Рис. 59. Использование таймеров в программе реверсивного управления электродвигателем


4.5. Контроль температуры

Температура различных сред, с которыми взаимодействует оборудование во время работы, а также тепловой режим важных частей оборудования должны находиться под непрерывным контролем управляющей автоматики. Даже в системах, которые при своей работе не изменяют состояния сред, соблюдение теплового режима ответственных элементов значительно продлит время безотказной работы.

В программе, контролирующей температуру, могут использоваться или аналоговые значения температуры, или дискретные сигналы превышения или снижения температуры относительно заданного порога. Соответственно, для этого могут быть задействованы как аналоговые входы контроллера, так и дискретные. Причем аналоговое значение температуры может быть получено двумя способами: в целочисленном виде при подключении аналогового датчика к обычному входу аналого-цифрового преобразователя (АЦП) и в градусах Цельсия при подключении к специальному входу измерения температуры. Специальные входы измерения температуры тоже являются входами АЦП, но, в отличие от обычных аналоговых входов, полученные от АЦП данные преобразуются в градусы Цельсия программой пересчета таблицы. В этом случае в таблицу будет записана температура в градусах Цельсия, а не целочисленное значение кода с АЦП. Подключение температурных датчиков к обычным аналоговым входам потребует либо дополнительной обработки в табличной программе получаемых с АЦП данных, либо использования в программе необработанных данных, по которым быстро определить температуру в градусах Цельсия достаточно сложно. При любом из этих решений табличная программа потеряет прозрачность, что, в свою очередь, усложнит дальнейшее обслуживание и ремонт оборудования. Использование простых аналоговых входов для измерения температуры – это возможное, но не лучшее решение.

При необходимости контролировать пороговые значения температуры можно использовать дискретные датчики, настроенные на определенную температуру. В отличие от тепловых реле с биметаллической пластиной и гистерезисом в 7°C и более, датчики температуры имеют гистерезис около 1°C. Их подключают к обычным дискретным входам контроллера. Чтобы однозначно зафиксировать превышение заданного порога, можно добавить таймер с задержкой на включение. Если датчик будет находиться во включенном состоянии больше установленного времени, то результат запишется в активные ячейки.

Пример программы, включающей вентилятор охлаждения при срабатывании дискретного датчика температуры, показан в таблице «а» на рис. 60. В момент срабатывания датчика температуры начинается отсчет времени таймеров TON в строке 2 и TOF в строке 3. При включенном больше 5 секунд датчике температуры запускается вентилятор охлаждения, и если он в течение 20 секунд не смог понизить температуру, то выходной сигнал «разрешение работы» переходит в ноль. Чтобы вентилятор не выключался сразу же после отключения датчика температуры, а продолжал работать еще некоторое время, можно использовать триггерные ячейки. Такой вариант программы показан в таблице «б» на рис. 60. В этом случае управление вентилятором осуществляется ячейками S и R. При срабатывании датчика температуры, как и в предыдущем случае, начинается отсчет времени таймеров. Через 5 секунд при включенном датчике активная триггерная ячейка S в строке 2 запускает вентилятор охлаждения. Если в предыдущем случае при отключении датчика температуры вентилятор отключался сразу, то здесь он будет работать еще 15 секунд. Такая задержка будет сформирована таймером TON в строке 4 (рис. 60, «б»).



Рис. 60. Программа управления вентилятором охлаждения:

а) управление с помощью логических ячеек; б) управление с помощью триггерных ячеек


Пример использования простых аналоговых входов для измерения температуры показан на рис. 61. Независимо от типа аналогового датчика измеряемая температура может быть преобразована в электрический сигнал, напряжение которого будет функцией от температуры, измеряемой датчиком. Напряжение с датчика температуры поступает на аналоговый вход контроллера. Аналого-цифровой преобразователь, подключенный к этому входу, преобразует измеряемое напряжение в цифровой код, разрядность которого будет определяться разрядностью АЦП. К примеру, если разрядность АЦП – 12 бит, то минимальное получаемое число будет ноль, а максимальное – 4095. Опытным путем или с помощью таблиц и вычислений мы можем найти, какие цифровые коды, получаемые с АЦП, соответствуют интересующим нас температурам.

 

Рис. 61. Программа контроля температуры с подключением датчиков к простым аналоговым входам


Рассмотрим пример, приведенный на рис. 61, в котором при температуре выше 30,5°С (измеряется датчиком) должен включиться вентилятор, а при температуре ниже 15,2°С должен включиться подогрев. Опытным путем составляем таблицу зависимости цифрового кода, получаемого с АЦП, от измеряемой температуры. Пока нас интересуют только два числа, которые соответствуют 15°С и 30°С. Допустим, это 1693 и 2091. Используя операции сравнения, включаем либо подогрев, либо вентиляцию.

Программа проста, понятна и не требует специальных входов для измерения температуры. Но при эксплуатации, настройке или ремонте оборудования довольно сложно интерпретировать такие показания датчика температуры. На рис. 61 полученное с АЦП число равно 1569. Сложно определить, какой температуре оно соответствует. Можно только сделать вывод, что температура ниже 15,2°С. Реализовать в табличной программе алгоритм пересчета данных, получаемых с АЦП, в температуру в градусах Цельсия нецелесообразно, это усложнит общий алгоритм управления и сделает его трудным для понимания. Поэтому предпочтительнее использовать для измерения температуры специальные входы.

На рис. 62 показана программа, в которой сигнал от температурного датчика приходит на аналоговый вход измерения температуры. Теперь вместо цифрового кода, получаемого с АЦП, в таблице мы увидим привычные градусы Цельсия. Помимо удобного представления текущей температуры, стало довольно просто производить настройку граничных условий в градусах.


Рис. 62. Программа контроля температуры с подключением датчиков ко входам измерения температуры


Рейтинг@Mail.ru