Табличный ПЛК.Табличное программирование контроллеров - Владимир Васильевич Стретенцев
Шрифт:
Интервал:
Дальнейшие изменения программы управления шлагбаумом в основном будут предназначены для демонстрации возможностей табличного программирования. Помимо ситуаций, которые возникают при штатной работе оборудования, стоит продумать реакцию системы управления на аварийные ситуации. Добавим еще одно улучшение. Сформируем звуковой сигнал заданной длительности, оповещающий об аварии.
В таблице на рис. 22 к выходу 13 контроллера, который отвечает за индикацию аварийной ситуации, подключены световой и звуковой сигналы. При аварии звуковой сигнал будет включен до тех пор, пока оператор не нажмет кнопку «Стоп». Это не всегда удобно, так как вместе с отключением звукового сигнала отключается и световая индикация, которая могла быть подтверждением факта аварийной остановки.
Для того чтобы разделить световую и звуковую сигнализации добавим в программу выходную переменную «авария, звук» (рис. 23). Для ограничения длительности звукового сигнала используем таймер, формирующий импульс, TP. Установим длительность звукового сигнала в 2 секунды. Теперь при возникновении аварийной ситуации пуск двигателя будет заблокирован, раздастся короткий звуковой сигнал, индикаторная лампа «Авария» будет гореть до нажатия на кнопку «Стоп». На рис. 23 показано состояние программы, когда вышло время операции «открыть шлагбаум». Стрела не достигла своего верхнего положения за 8 секунд. Звуковой сигнал включен — и будет отключен через 0,845 секунды.
Рис. 23. Табличная программа управления шлагбаумом с ограничением длительности аварийного звукового сигнала
2.7. Управление скоростью
Многие современные шлагбаумы замедляют движение стрелы возле конечных положений. Такое решение делает работу шлагбаума плавной, уменьшает износ деталей, повышает безопасность эксплуатации. Находящиеся рядом со шлагбаумом люди могут успеть среагировать на начало движения. При этом время открывания шлагбаума может даже сократиться. Замедление во время пуска и останова будет компенсировано прохождением средней зоны с повышенной скоростью.
Чтобы реализовать замедление при подходе к конечным положениям, введем в схему предварительные верхний и нижний выключатели. Программа управления шлагбаумом с предварительными выключателями показана на рис. 24. Эти выключатели должны срабатывать до конечных выключателей. Теперь мы имеем три сектора движения стрелы: нижний сектор разгона или торможения, средний сектор движения стрелы с высокой скоростью, верхний сектор торможения или разгона.
Рис. 24. Табличная программа управления шлагбаумом с предварительными выключателями
При подъеме вверх стрела шлагбаума начинает медленное движение от своего нижнего положения до нижнего предварительного выключателя. По прохождении нижнего предварительного выключателя включается повышенная скорость и стрела с высокой скоростью движется до верхнего предварительного выключателя. Потом повышенная скорость отключается и стрела медленно подходит к своему верхнему положению.
Для реализации режима работы шлагбаума с изменением скорости движения стрелы необходимо ввести в программу две входные переменные, отражающие состояние предварительных выключателей, и одну выходную переменную, которая будет включать повышенную скорость. Обозначим ее как «2-я скорость».
В таблице, представленной на рис. 24, отображено состояние шлагбаума после нажатия кнопки «Открыть». В этот момент команда «вверх» запустит двигатель стрелы шлагбаума на пониженной скорости. На ограничение скорости будет влиять ноль в строке 13 от сработавшего нижнего предварительного выключателя. После прохождения нижнего предварительного выключателя значение в строке 13 станет равным единице, активная ячейка в этой строке тоже станет равной единице. Следовательно, логическое И по пятому столбцу и выходная переменная «2-я скорость» также будут равны единице. Стрела шлагбаума начнет двигаться с повышенной скоростью до верхнего предварительного выключателя. Далее, при срабатывании верхнего предварительного выключателя, произойдет замедление.
Из таблицы видно, что на отключение высокой скорости влияют три активные ячейки в пятом столбце. Состояние одной из них, в строке 10, зависит от кнопки «Шунт». Сделано это для того, чтобы при необходимости обойти концевые выключатели движение стрелы происходило на пониженной скорости.
2.8. Итог
Используя как пример задачу управления шлагбаумом, мы построили табличную программу, в которой реализовали алгоритм управления реальным объектом. Простой алгоритм занимал всего 7 строк. С дополнительными функциями контроля времени исполнения операций программа занимает 23 строки, из которых 6 — это заголовки, не имеющие ни данных, ни логических операций. При этом таблица не потеряла своей наглядности. В ней ясно отображаются значения входных и выходных переменных, внутренние цепи формирования сигналов. Видна работа таймеров. Просто и понятно производится предварительная обработка входных значений. При необходимости выходные значения могут быть инвертированы. Но это не все положительные качества табличного программирования контроллеров. Мы имеем не просто таблицу, а практически комплект документации. Распечатка программы умещается на один лист инструкции по эксплуатации и даже может быть напечатана на корпусе устройства. В случае потери файла с программой управления табличного контроллера ее можно ввести с клавиатуры за короткое время. Назначение входов и выходов нетрудно определить из таблицы. В случае отсутствия в системе монитора работу программы можно наблюдать на любом компьютере или смартфоне. Специалист, знакомый с табличным программированием, может определить неисправность дистанционно, по фотографии таблицы, причем не имея инструкции по эксплуатации или других документов. Программы в таблице может быть достаточно для подключения сигнальных проводов к контроллеру, так как номера контактов находятся в столбце «Адрес», а назначения входов и выходов — в столбце «Комментарий». Использование табличного программирования контроллеров не только упростит поиск неисправностей, но также снизит оговоренные ранее риски, связанные с эксплуатацией систем с закрытым программным кодом или требующих использования компьютера с установленной на нем средой разработки.
3. Табличное программирование. Особенности
3.1. Формат файла программы
Одно из требований, предъявляемых к формату файла табличной программы, — это возможность просмотра содержимого в любом текстовом редакторе. Поэтому для сохранения таблицы был выбран текстовый файл, в котором строки, содержащие данные таблицы, состоят из полей, отделяющихся друг от друга знаком табуляции (рис. 25). Конечно, в таком виде таблицу редактировать неудобно, поэтому текстовый формат рассматривался только как самый простой способ сохранения содержимого таблицы.
Рис. 25. Формат текстового файла табличной программы:
t — символ табуляции, r — символ перевода каретки, n — символ перевода строки
Для редактирования и отладки программ, организованных в виде таблиц, была написана специальная программа[3]. Чтобы не зависеть от конкретной операционной системы, эта программа была написана на языке JavaScript и может запускаться офлайн в любом современном браузере. По сути, это HTML-файл размером немногим более 100 килобайт. Безусловно, возможны и другие реализации, так как формат файла таблицы полностью открыт, а алгоритм пересчета таблицы несложен. Редактирование таблицы в окне браузера не вызывает каких-либо трудностей, все функции интуитивно понятны человеку, работавшему
Поделиться книгой в соц сетях:
Обратите внимание, что комментарий должен быть не короче 20 символов. Покажите уважение к себе и другим пользователям!