Программирование промышленных контроллеров (ПЛК). Стандарт МЭК (IEC) 61131


Общая информация

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

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

Прежде следует разобраться с самим устройством:

  • простой промышленный логический контроллер спереди включает 2 винтовые клеммы L1 и L2, которые отвечают за подключение внутренних цепей устройства;
  • слева находятся 6 винтовых клемм, которые необходимы для подключения входных приборов. Они представляют собой 6 входных каналов;
  • в корпусе расположен оптоизолятор для создания электрически изолированного сигнала для схемы ПК при установке связи между клеммой на входе и общей клеммой. Светодиод на входе отображает ситуацию, какой именно из входов сейчас находится под напряжением;
  • сигналы на выходе получаются за счет схемотехники контроллера за счет активизации переключающего устройства. Это позволяет связать клемму с источником с помеченным пользователем буквой Y выходом.

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

Для программирования промышленных контроллеров используются специальные системы. Для этого существуют 2 возможных варианта:

  • производитель PLC предлагает свою программную среду, которая реализована для работы от конкретного разработчика. Распространяются как на платной, так и на бесплатной основе в зависимости от компании и модели;
  • компании по разработке ПО занимаются созданием специальных систем программирования для ПЛК от разных производителей.

Состав проекта

Мы уже упоминали кратко состав дерева системы. Его создание идет сверху вниз. Добавляются контроллеры, в них добавляются встроенные модули либо протоколы связи, назначенные на конкретные порты, и в них — модули удаленного ввода/вывода. Модули имеют свой набор каналов. Канал ввода/вывода — это набор из типовых параметров: значение, метка времени, статус опроса. Состав модулей и типы каналов предопределены разработчиком библиотеки, но пользователь может создавать и собственные типы модулей и каналов, в том числе со встроенной обработкой сигналов. К примеру, в Modbus-устройстве он может разбить адресное пространство на такой набор модулей и каналов, который соответствует физической структуре устройства. Контроллерам, модулям и каналам дерева системы могут принадлежать не только системные программы (драйверы), включенные в состав конкретной исполнительной системы, но и любые пользовательские программы, созданные для конкретного проекта, либо библиотеки.

Иерархия дерева объектов состоит из объектов, тегов и параметров. Объектам и тегам так же, как и перечисленным выше элементам дерева системы, могут принадлежать ресурсы: программы, окна, сообщения и журналы сообщений. В отличие от них параметры — это атомарные элементы проекта, в которые нельзя ничего включить и которые не имеют собственных программ или окон. Создание типа параметра производится в специальном диалоге выбором из простого, библиотечного или сложного (массив, структура) типа данных (рис. 5).

Рис. 5. Создание параметра

Программирование Siemens

Сименс ПЛК программирование может понадобиться в следующих случаях:

  • происходит в составе с шкафом автоматики используется для управления различными системами автоматизации разного назначения и типа;
  • создание пользовательского интерфейса устройств с дисплеями или с одновременным подключением к панели оператора;
  • разработка программ для обработки, архивирования и хранения, а также вывода итоговых показаний с внутренними вычислениями самих PLC и от внешних приборов;
  • для организации взаимодействия контроллера с системами формата SCADA;
  • реализация в составе объемных систем автоматизации, где в схеме подключено сразу несколько ПЛК;
  • реализация функционала по взаимодействию в специальных режимах Slave и Master с промышленным оборудованием через протоколы связи.

Программирование Сименс контроллеров осуществляется в определенных средах. Одной из них является TIA Portal, которая предназначена для организации систем автоматизации разного уровня сложности и включает определенный набор программных компонентов: Simatic Step 7, WinCC, PLCSIM. Функционал:

  • разработка конфигурации и отладка компонентов систем;
  • создание и наладка коммуникационных сетей;
  • разработка программного обеспечения для контроллеров;
  • организация панелей операторов Simatic и реализация ЧМИ (человеко-машинный интерфейс).

Например, программирование контроллеров Siemens Logo производится, как и в классическом общем случае, после монтажа и настройки прибора. В данном случае простыми словами процесс представляет собой ввод коммутационной схемы. Перечислим основные этапы:

  • для начала с помощью стандартной схемы из руководства следует разобраться с расположением соединительных элементов: входов и выходов;
  • далее необходимо разобраться с блоками и их номерами. Блоки — это функции, которые отвечают за преобразование данных на входе в информацию на выходе. Поэтому требуется соединить соединительные элементы с помощью выбора необходимого соединения из меню Co. Самыми простыми блоками становятся логические операции. При вставке блока в программу первому назначается определенный номер, который в дальнейшем используется для отображения связей между блоками;
  • создание схемы происходит путем соединения блоков с соединительными элементами. Сам процесс начинается с выхода, которым является или реле или нагрузка, за счет которых происходит управление. На этом этапе нужно подключить выключатели S1-S3 к винтовым клеммам;
  • после проектирования схемы необходимо произвести ввод и запуск программы. Для этого PLC Siemens Logo подключается к сети, и включается питание. Затем логический контроллер переключается в режим программирования, где на основании предыдущей схемы организуется нужная программа.

Интегрированная среда

Интегрированная среда MasterPLC Designer (рис. 3) реализована с учетом многолетнего опыта эксплуатации MasterSCADA, оболочка которой стоит на двух «китах»: объектном подходе с разделением физической реализации системы и абстрактной модели объекта и принципе построения среды «все в одном», когда для каждого элемента проекта нужные ему редакторы или свойства открываются на закладках.

Рис. 3. Интегрированная среда MasterPLC Designer

Рис. 4. а) Дерево системы; б) Дерево объекта

Устройство интегрированной среды MasterPLC Designer осталось тем же: это организация проекта в виде двух объектных иерархий: дерева системы (рис. 4а) и дерева объекта (рис. 4б). Дерево системы содержит контроллеры, поддерживаемые ими протоколы связи и службы, подключенные модули и их сигналы. Поскольку программы могут разрабатываться и непосредственно для контроллера, и для любого его встроенного или внешнего модуля, в проекте можно обойтись и одним деревом системы. Однако правильнее использовать эту возможность только для первичной обработки сигналов, специфичной именно для данного типа оборудования, а логику контроля и управления разрабатывать в аппаратно-независимом дереве объектов, что позволяет в любой момент изменить типы и состав оборудования без переделки проекта. При таком подходе можно весь проект разработать без привязки к «железу», а лишь затем включить в дерево системы его описания и установить связи между двумя иерархиями. В дополнение к традиции в состав проекта было включено дерево подключенных библиотек, что повысило удобство работы с ними, позволило создавать проектные библиотеки в том же виде, что и сам проект. Разработка проекта состоит в создании иерархий, связей между их элементами, программ обработки, сообщений и окон (для контроллеров с локальной или веб-визуализацией). Все действия производятся, в основном, методом «перетащи и брось». Для удобства работы и установления связей любую ветку дерева можно открыть в отдельном окне.

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

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

Программирование ПЛК Овен

ПЛК Овен программирование осуществляется на языках МЭК 61131-3. Среди них используются IL, FBD, LD, SFC, ST. Как уже говорилось выше, для этого используются среды от производителя (наиболее подходящий вариант) или стороннее ПО. Если речь идет о продукции Овен, то выбор падает на CoDeSys.

Указанная среда программирования Овен контроллеров помогает спроектировать подходящую программу, а также произвести ее отладку и загрузку в ПЛК. Для использования CoDeSys пользователь должен позаботиться о среде исполнения, которую предоставляет производитель или создает сам разработчик.

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

HMI — визуализация «на борту» и в облаках

Новые времена — новые возможности контроллерных процессоров и программ. Сейчас уже стало нормой, что контроллер имеет встроенный веб-сервер. Технологически эту возможность предоставляют современные операционные системы, устанавливаемые на контроллеры, прежде всего Linux. Однако мало у каких контроллеров наличие технологических предпосылок приводит к появлению полноценной графики на уровне современных SCADA-систем. В MasterPLC Designer реализован полноценный редактор полностью векторных на базе формата SVG HTML-страниц, укомплектованный общепромышленной библиотекой проектных объектов типа задвижки, насоса и т. п., а также рядом отраслевых библиотек. Эти объекты наряду с логикой контроля и управления, реализованной в программе на ST, имеют и отображение в виде анимированных 3D-символов и окон управления (рис. 8).

Рис. 8. Библиотеки анимированных объектов

Возможности редактора не ограничиваются использованием готовых объектов. Пользователь может создать из базовых примитивов новый символ, любое свойство которого может быть динамизировано параметрами проекта. При этом обеспечивается верстка с использованием любых типов панелей для организации нужного расположения элементов, а готовая мнемосхема имеет ту степень адаптации к размеру экрана, которую заложил разработчик проекта. Например, «резиновая» (то есть растягивающаяся под размер клиентского экрана) верстка может содержать элементы с ограниченным минимальным размером (текст, изображения и т. п.). В результате одна и та же мнемосхема (рис. 9) с равным успехом может отображаться на встроенной панели контроллера, подключенном непосредственно к нему мониторе или на клиентском устройстве (компьютере, планшете, смартфоне), подключенном через Интернет. Примеры таких мнемосхем можно увидеть на сайте www.sky-monitor.ru.

Рис. 9. Мнемосхема насосной станции

ПЛК Delta

Программирование ПЛК Дельта осуществляется посредством специального пакета WPLSoft, который не нуждается в большом объеме ресурсов персонального компьютера. Поэтому подходит для использования специалистов разных категорий и является очень простым. Здесь применяются 3 языка: LD, SFC и IL.

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

OPC UA — основа кроссплатформенных коммуникаций

Широко распространенные протоколы связи с контроллером, например Modbus, имеют существенный недостаток. Они не позволяют обратиться к контроллеру через маршрутизируемую сеть, например через Интернет. Не спасают положение и классические OPC-серверы, установленные на находящемся в той же локальной сети компьютере. Клиентское приложение также не может обратиться к ним из внешней сети без использования дополнительного канало­образующего ПО. Выходом является наличие сервера кроссплатформенного стандарта OPC UA непосредственно на борту контроллера. Стандарт OPC UA не только обеспечивает транспорт данных в гетерогенных IP-сетях, но и обеспечивает сопровождение данных из контроллера их описанием, что позволяет подключать к контроллеру новых клиентов «на ходу», без передачи им конфигурационных файлов. Включение в состав исполнительной системы MasterPLC OPC UA сервера существенно расширяет спектр возможных применений данного продукта, в том числе и его использование в качестве серверного ПО сбора и отображения данных на любых клиентских устройствах через Интернет.

Schneider Electric

Программирование ПЛК Шнайдер Электрик может быть выполнено с участием одной из нескольких сред: EcoStruxure Machine Expert, EcoStruxure Machine Expert HVAC, Unity Pro, Zelio Soft. Создание программ используется для тех же целей, что и контроллеров марки Siemens. Наиболее часто предназначены для управления технологическими процессами систем автоматизации следующих видов:

  • вентиляционное оборудование;
  • системы кондиционирования;
  • индивидуальные тепловые пункты;
  • осветительные системы;
  • управления конвейерными линиями и станками;
  • водоподготовка;
  • упаковочное оборудование;
  • грузоподъемные машины и сопутствующие механизмы.

ПЛК Мицубиси

Программирование ПЛК Mitsubishi организуется с помощью среды GX Works2 нового поколения. Поддерживает следующие языки: IL, LD, SFC, LD, FBD, ST. Среда бывает двух видов GX Works2 и GX Works2 FX. Вторая предназначена для настройки контроллеров серии FX:

Функциональные возможности среды программирования для ПЛК Митсубиси:

  • параметризация функциональных модулей;
  • применение программных библиотек и специальных функциональных блоков;
  • моделирование является встроенным внутрь системы для автономной проверки конфигурации и программ;
  • широкий спектр функций для диагностики и отладки;
  • возможность восстановления предыдущих версий программ и проведения сравнения с текущими;
  • совместимость с рядом проектов GX Developer.

Редакторы технологических языков

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

Ранее было отмечено, как выглядит редактор текстового языка ST (рис. 3), который обладает всеми стандартными возможностями таких редакторов (контекстным помощником ввода и раскраской ключевых слов, отладчиком и др.). Но на один момент все же хотелось бы обратить внимание читателя. Это списки входных параметров программы слева и выходных параметров справа от поля самого редактора. Так выглядит механизм программных клеммников. Он позволяет разработчику, использующему готовую программу, работать с ней, даже если ее код закрыт от просмотра. Но и в случае, если он открыт, механизм клем­мников обеспечивает промежуточный слой, который защищает программу от неосторожного вмешательства, позволяет легко переносить ее в библиотеку или брать оттуда без коррекции кода, помогает пользоваться готовым кодом, не вникая в его внутреннее устройство. Число переменных в клеммнике большой программы может быть велико, поэтому к этому списку можно применять те же инструменты фильтрации, что и к основному проекту, с той разницей, что для клеммника изначально используется табличное представление параметров.

Редактор схем функциональных блоков (рис. 6) содержит большое число сервисных функций, обеспечивающих удобство «рисования» алгоритмов контроля и управления. На схему можно перетащить не только библиотечный блок, но и программу на любом языке, клеммники которой при этом преобразуются во входы/выходы блока на схеме. Автоматическая прокладка линий связи с возможностью их ручной корректировки, привязка к сетке при расстановке блоков, надписи, управление видимостью слоев, расстановка значений в режиме отладки прямо на входах/выходах блоков — это далеко не полный список имеющихся сервисных возможностей.

Рис. 6. Редактор схем функциональных блоков

Отдельно стоит упомянуть окно мини-карты, которое позволяет перемещать видимую зону на сжатом изображении всей схемы в том случае, когда она слишком велика, чтобы поместиться на экран. Этот механизм работает и в других графических редакторах, например редакторе языка SFC (рис. 7), предназначенного для управления последовательностью выполнения программ, написанных на иных языках стандарта.

Рис. 7. Редактор SFC и механизм миникарты

Рейтинг
( 2 оценки, среднее 5 из 5 )
Понравилась статья? Поделиться с друзьями:
Для любых предложений по сайту: [email protected]