Стандарт IEC 61131-3.
Проблема выбора той или иной системы для программирования ПЛК обычно решается сама при выборе пользователем конкретного контроллера. Практически каждый производитель ПЛК поставляет в комплекте с оборудованием программное обеспечение, позволяющее программировать данный контроллер. Такое программное обеспечение чаще всего применимо только к контроллерам конкретного производителя, а иногда и только к конкретному тину контроллера. Например, в рамках спектра продукции компании Schnekler Electric существует целый ряд программных пакетов: система PL7 предназначена для программирования контроллеров TSX Micro и TSX Premium, пакет Concept для TSX Momentum и TSX Quantum, также существуют свои системы для программирования контроллеров Zeiio и Twido. Некоторые компании придерживаются единой системы программирования своих контроллеров. Например, все контроллеры компании GE Fanuc программируются при помощи единого пакета VersaPro.
При этом программирование всех контроллеров данного производителя при помощи единого пакета в данном случае не является наиболее весомым достоинством. Поскольку в настоящее время подавляющее большинство контроллеров (исключая PC-base) программируются па языках стандарта IEC 61131-3, переход от одного программного пакета к другому обычно не требует значительных затрат времени па обучение. Основным критерием в данном случае является наличие в программном обеспечении данного производителя наибольшего количества языков стандарта IEC 61131-3. Так, система PL7 позволяет программировать контроллеры на четырех языках (исключая FBD), Concept — на всех пяти, с возможностью написания различных управляющих секций в рамках одного проекта на любом из языком, наиболее подходящем для данной задачи, тогда как единая система компании GE Fanuc VersaPro - всего на двух (IL и LD), что может существенно осложнить разработку крупных приложений.
Существует множество специализированных языков программирования. Обычно каждая фирма вводима собственный язык. В этом случае при смене аппаратной базы было необходимо переписывать программы заново. Радикально изменить ситуацию мог стандарт на языки программирования ПЛК, процесс разработки которого начался в 1979 году, и только к 1992 году он был утвержден как IEC 1131-3.
При его разработке было обнаружено так много вариаций языков контроллеров, что оказалось невозможно выбрать какой-то один как базовый. Поэтому был предложен совершенно новый язык с применением современных принципов структурного программирования, абстрактных типов данных, выделения данных и процедур в блок. Однако был сохранен и графический стиль классических языков для программируемых контроллеров.
В стандарте введена абстракция управления, и это можно считать главным достижением. Разработчик имеет дело с переменными состояния и не зависящими от типа контроллера способами их обработки, а реальный В/В вынесен на уровень драйверов.
Радикально изменить ситуацию мог стандарт на языки программирования ПЛК, процесс разработки которого начался в 1979 году, и только к 1992 году он был утвержден как IEC 1131-3. При его разработке было обнаружено так много вариаций языков контроллеров, что оказалось невозможно выбрать какой-то один как базовый. Поэтому был предложен совершенно новый язык с применением современных принципов структурного программирования, абстрактных типов данных, выделения данных и процедур в блок. Однако был сохранен и графический стиль классических языков для программируемых контроллеров. В обоих вариантах стандарта введена абстракция управления, и это можно считать главным достижением. Разработчик имеет дело с переменными состояния и не зависящими от типа контроллера способами их обработки, а реальный В/В вынесен на уровень драйверов.
В феврале 1993 года международная организация по стандартизации IEC приняла и выпустила стандарт IEC-1131-3 (МЭК-1131-3), описывающий синтаксис и семантику пяти языков программирования ПЛК.
Использование стандартных языков и компьютерных средств программирования позволяют существенно снизить затраты на разработку прикладного программного обеспечения контроллеров и обеспечить его переносимость с одного контроллера на другой.
Что определяет стандарт:
1) состав языков программирования (5 шт.)
2) Синтаксис языков программирования (для текстовых языков) – список ключевых слов, выполняемые ими функции, способы употребления.
3) Вид графических объектов (для графических языков).
4) Структуру программного обеспечения – из каких основных частей должна состоять любая программа управления.
5) Типы и виды переменных – внутреннюю структуру, но не внешние названия.
6) Интерфейсы функций и функциональных блоков – как должны организовываться входы и выходы этих ФБ.
Стандарт не определяет:
1) Размеры текстовых и графических редакторов.
2) Не определяет минимальный набор ФБ, но допускает создавать свою библиотеку, т.к. интерфейсы стандартизированы.
3) Средства разработки и сервисные утилиты (редакторы, отладчики, системы документирования).
4) Не описывает конвертирование языков.
5) Не определяет форматы файлов, т.о. не обеспечивается переносимость разработанного проекта в программные продукты других фирм.
В соответствии с указанным стандартом такими стандартными языками являются три графических языка и два текстовых:
FBD (Function Block Diagram) – графический язык функциональных блоковых диаграмм, с помощью которого программа составляется из различных функциональных библиотечных блоков - арифметических, тригонометрических, регуляторов, мультиплексоров и т.д. Язык удобен для программирования задач, например вычислительного характера, решение которых может быть представлена функциональной схемой, состоящий из таких блоков как сложение, умножение, интегрирование и т.д.
LD (Ladder Diagram) – графический язык диаграмм релейной логики. Язык удобен для программирования несложных булевых операций и для решения задач в виде релейно-контактных схем автоматики.
SFC (Sequential Function Chart) - графический язык последовательных функциональных схем. С его помощью программа представляется последовательностью шагов разделяемых переходами. Язык хорошо приспособлен для программирования задач логического управления и т.д. К программированию на этом языке удобно переходить от графа переходов.
Теория конечных автоматов, используемая для формализации состояний сложных процессов управления, опирается на различные графические модели описания состояний. Одной из наиболее известных является модель, предложенная К.Петри, получившая название "Сетей Петри" или диаграммы состояний. Она послужила теоретической основой языка SFC как наиболее важного из всего семейства стандартных языков.
ST (Structured Text) – язык структурированного текста - относится к классу языков высокого уровня, по мнемонике похож на Паскаль и применяется для разработки сложных процедур обработки данных, которые трудно описать графическими языками.
IL (Instruction List) – язык инструкций – текстовый язык низкого уровня. Это язык низкого уровня класса ассемблера, что объясняется его происхождением: для некоторых моделей ПЛК фирмы Siemens является языком Ассемблера. В рамках стандарта IEC 1131-3 к архитектуре конкретного процессора не привязан. Является высокоэффективным для небольших программ или для оптимизации отдельных частей сложных программ, если требуется высокое быстродействие, экономия памяти и т.д.
Типы контроллеров, поддерживающих стандарт: ABB, Allen Bradley, Honeywell, Omron, Moore Products, PEP Modular Computers и многих других.
Список инструментальных программных систем, реализующих стандарт IEC 1131-3, превышает два десятка.
Инструментальные программные системы
CoDeSys | (Smart Software Solutions, Германия) |
ACCON-ProSys | (Deltalogic , Германия) |
OpenDK | (Infoteam Software , Германия) |
PUMA | (KEBA, Австрия) |
SUCOsoft S340 | (Klokner-Moeller , Германия) |
NAIS CONTROL | (Matsushita AC , Германия) |
PDS7 | (Philips, Нидерланды) |
SELECONTROL | (Selectron Lyss, Швейцария) |
Soft Control | (Softing , Германия) |
ISaGRAF | (ICS Triplex, Канада) |
В последние годы реализации стандарта МЭК 1131-3 в виде дополнительных компонентов появились и в ряде SCADA-систем (Factory Suite/InControl, FIX/Paradym-31, WinCC/WinAC, TraceMode и др.).
По разным оценкам до 80% PLC-рынка обслуживается программными продуктами, реализующими в той или иной мере этот стандарт.
Дата добавления: 2020-08-31; просмотров: 557;