ПЛК

Языки программирования ПЛК (Тема)

 

Прикладное программное обеспечение контроллеров разрабатывается с помощью специальных технологических языков, большей частью рассчитанных не на квалифицированных программистов, а на специалистов по автоматизации. Наиболее простой и распространенный язык программирования цепей контроля и управления - это набор программных модулей типовых алгоритмов обработки измерительной информации, регулирования, блокировочных зависимостей и графический конфигуратор, который собирает эти модули в заданные цепи контроля и управления. До недавнего времени (а частично и сейчас) каждый производитель ПТК разрабатывал свои языки программирования контроллеров. В последние годы ситуация начинает изменяться. К середине 90-х годов технологические языки программирования контроллеров были стандартизированы - стандарт IEC 1131.3. Этот стандарт определяет структуру пяти технологических языков:

-LD - язык лестничных диаграмм. Графический традиционный язык релейных блокировок, в котором разработчик изображает необходимые релейные схемы;

-FBD - язык функциональных блоковых диаграмм. Графический конфигуратор с набором типовых программных модулей;

-SFC - язык последовательных функциональных схем. Язык, близкий к традиционному программированию, предназначен для реализации алгоритмов последовательного управления. Элементы языка - процедуры и транзакции используются для определения порядка операций, написанных на любом языке стандарта;

-ST - язык структурированного текста. Язык типа Pascal, поддерживающий структурное программирование. Он может использоваться для программирования процедур и переходов в языке SFC и дополнять другие языки стандарта;

-IL - язык инструкций. Язык низкого уровня типа Ассемблера, но без ориентации на конкретную микропроцессорную архитектуру. С его помощью можно создавать быстродействующие программные модули.

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

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

Сертификация конкретных языков на соответствие стандарту осуществляется организацией PLCopen, имеющей свои отделения в разных странах. Сформулировано три уровня совместимости конкретных языков со стандартом:

-базовый уровень, когда язык соответствует некоторому подмножеству стандарта IEC 1131.3 (начальный уровень). На этом уровне проверяются типы переменных и языковые конструкции;

-уровень переносимости функций, когда существует формат файла обмена функциональных блоков;

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

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

Перспективные контроллеры в части их прикладного программного обеспечения выделяются следующими факторами:

-они обеспечены технологическими языками по стандарту IEC 1131.3;

-обязательный набор таких языков - языки типа LD и FBD. Желательный набор - все пять языков стандарта;

-эти языки сертифицированы на соответствие стандарту желательно по уровню переносимости функций;

- к языку FBD (функциональных блоковых диаграмм) прилагается обширный (порядка сотен единиц) набор программных модулей типовых алгоритмов контроля и управления;

-в этот набор, кроме обычных простейших функций, входят продвинутые типовые модули управления (Advance Control), повышающие эффективность автоматизации: модуль самонастройки регуляторов, адаптивные регуляторы, регуляторы на нечеткой логике, нейрорегуляторы и т.д.