Написание программы в среде Step7
Для начала программирования в выбранном нами контроллере зайдем в закладку S7 Program(1)\Blocks и дважды щелкнем на иконке организационного блока OB1.
Это блок представляет собой основной программный блок, описывающий порядок и условия вызова остальных блоков. Кроме него программа может содержать блоки подпрограмм, функциональные блоки, блоки таблиц переменных (данных).
При его открытии будет вызвано окно, показанное на рисунке 1.5. Как видно из рисунка, в этом диалоговом окне можно ввести не только имя программного блока, но и выбрать язык программирования вбить комментарии и присвоить блоку символьное имя, по которому возможен его вызов в программе.
Рисунок 1.5 – Окно параметров созданного блока
В данном блоке возможно задать созданному блоку Имя [Name], Символическое имя [Symbolic Name] и Комментарий [Symbol Comment], а также выбрать язык программирования. В среде Step 7 можно программировать на трех языках стандарта IEC1131-3. К ним относятся FBD, LAD и STA.
FBD (Function Block Diagrams) – графический символьный язык, программа в котором выглядит как набор логических элементов, соединенных между собой определенным образом линиями связи.
LAD (Ladder and Diagram) - также является графическим символьным языком, однако программа в нем больше похожа на последовательность логических цепочек, построенных из элементов контактно-релейной логики.
Очень часто языки FBD и LAD являются совместимыми, и язык FBD дополняет функции языка LAD.
Последним в списке находится язык STA - это текстовый язык низкого уровня, по структуре ближе всего находящийся к ассемблеру.
Разработка программы осуществляется в организационных блоках, функциях и функциональных блоках, дополнительные функции несут блоки данных, таблицы переменных и типы данных.
После введения всех параметров откроется окно программирования, представленное на рисунке 1.6.
В левой части окна представлены инструменты, доступные для программирования на данном языке. Правая часть окна отведена под редактор программы, комментарии и выбор интерфейса. Написание программы производится в соответствии с правилами программирования на языках стандарта IEC1131-3. Основы программирования можно освоить, используя источник [11].
Рисунок 1.6 – Окно редактора программы
После этого разработчик должен описать сигналы управления, индикации и меркерные переменные, участвующие в программе. Это делается в разделе Symbols (рисунок 1.7), который представляет собой таблицу с указанием имени переменной, ее адреса и типа. После заполнения этих полей и сохранения результата, переменная становится доступна на этапе программирования в редакторе программы.
Рисунок 1.7 – Таблица переменных
Создадим две входные дискретные переменные под именами «SIGNAL1» и «SIGNAL2», две выходные дискретные переменные под именами «INOG1» и «INOG2» нулевого байта и аналоговую переменную «ANALOG» типа INTEGER. Сохраним данные.
Вернемся в окно редактора программы. По умолчанию для программиста доступен первый организационный блок, являющийся аналогом главной программы. Войдя в него двойным щелчком, мы запускаем редактор языка программирования выбранного при создании проекта, в нашем случае FBD.
Используя инструментальную панель слева, перетащим на рабочее поле логический элемент «И». Присоединим ко входам и выходу элемента соответствующие переменные. К входам сигнал 1 и 2, к выходу итог 1. Создадим новую логическую цепочку, щелкнув на пиктограмме «New network».
Для получения представления о работе с аналоговыми сигналами используем обычный компаратор с порогом срабатывания 200 у.е. На первый выход компаратора подключим выходную переменную ITOG2 на сигнал сравнения подаем константу в 200 у.е. В результате получим схему, внешний вид которой приведен на рисунке 1.8.
Рисунок 1.8 – Пример программы
На основе этих элементарных схем мы получили представление о принципе программирования в редакторе FBD среды Step 7, для просмотра результата исполнения программы необходимо провести ее симуляцию.