МЭК 61131-3 (Прадо-Шляпцев)
Ярыгин (обсуждение | вклад) |
Ярыгин (обсуждение | вклад) |
||
Строка 43: | Строка 43: | ||
<u>Графическими языками являются SFC, FBD, LD. Языки IL и ST являются текстовыми.</u> | <u>Графическими языками являются SFC, FBD, LD. Языки IL и ST являются текстовыми.</u> | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | == Принципы языков МЭК == | ||
+ | |||
+ | Языки МЭК 61131-3 базируются на следующих принципах: | ||
+ | |||
+ | - Вся программа разбивается на множество функциональных элементов - Program Organization Units (POU), каждый из которых может состоять из функций, функциональных блоков и программ. Любой элемент МЭК-программы может быть сконструирован иерархически из более простых элементов; | ||
+ | |||
+ | - Стандарт требует строгой типизации данных. Указание типов данных позволяет легко обнаруживать большинство ошибок в программе до ее исполнения; | ||
+ | |||
+ | - Имеются средства для исполнения разных фрагментов программы в разное время, с разной скоростью, а также параллельно. Например, один фрагмент программы может сканировать концевой датчик с частотой 100 раз в секунду, в то время как второй фрагмент будет сканировать датчик температуры с частотой один раз в 10 сек; | ||
+ | |||
+ | - Для выполнение операций в определенной последовательности, которая задается моментами времени или событиями, используется специальный язык последовательных функциональных схем ( SFC); | ||
+ | |||
+ | - Стандарт поддерживает структуры для описания разнородных данных. Например, температуру подшипников насоса, давление и состояние "включено-выключено" можно описать с помощью единой структуры "Pomp" и передавать ее внутри программы как единый элемент данных; | ||
+ | |||
+ | - Стандарт обеспечивает совместное использование всех пяти языков, поэтому для каждого фрагмента задачи может быть выбран любой, наиболее удобный, язык; | ||
+ | |||
+ | - Программа, написанная для одного контроллера, может быть перенесена на любой контроллер, совместимый со стандартом МЭК 61131-3. | ||
+ | |||
+ | <u>Любой ПЛК работает в циклическом режиме.</u> Цикл начинается со сбора данных с модулей ввода, затем исполняется программа ПЛК и оканчивается цикл выводом данных в устройства вывода. Поэтому величина контроллерного цикла зависит от времени исполнения программы и быстродействия процессорного модуля. |
Версия 21:21, 10 июня 2015
Содержание |
Описание
Стандарт МЭК 61131-3 устанавливает пять языков программирования ПЛК, три графических и два текстовых.
Первоначально стандарт назывался IEC 1131-3 и был опубликован в 1993 г., но в 1997 г. МЭК перешел на новую систему обозначений и в названии стандарта добавилась цифра "6". Продвижением стандарта занимается организация PLCopen
IEC 61131-3 — раздел международного стандарта IEC 61131 (также существует соответствующий европейский стандарт EN 61131), описывающий языки программирования для программируемых логических контроллеров.
Программи́руемый логи́ческий контро́ллер (ПЛК) — электронная составляющая промышленного контроллера, специализированного (компьютеризированного) устройства, используемого для автоматизации технологических процессов. В качестве основного режима работы ПЛК выступает его длительное автономное использование, зачастую в неблагоприятных условиях окружающей среды, без серьёзного обслуживания и практически без вмешательства человека.
Цели
Основной целью стандарта было повышение скорости и качества разработки программ для ПЛК (см. раздел "Развитие программных средств автоматизации"), а также создание языков программирования, ориентированных на технологов, обеспечение соответствия ПЛК идеологии открытых систем, исключение этапа дополнительного обучения при смене типа ПЛК.
Характеристики системы программирования
Системы программирования, основанные на МЭК 61131-3, характеризуются следующими показателями:
- Hадежностью создаваемого программного обеспечения. Надежность обеспечивается тем, что программы для ПЛК создаются с помощью специально предназначенной для этого среды разработки, которая содержит все необходимые средства для написания, тестирования и отладки программ с помощью эмуляторов и реальных ПЛК, а также множество готовых фрагментов программного кода;
- Возможностью простой модификации программы и наращивания ее функциональности;
- Переносимостью проекта с одного ПЛК на другой;
- Возможностью повторного использования отработанных фрагментов программы;
- Простотой языка и ограничением количества его элементов.
Виды языков программирования МЭК
Языки МЭК 61131-3 появились не как теоретическая разработка, а как результат анализа множества языков, уже используемых на практике и предлагаемых рынку производителями ПЛК. Стандарт устанавливает пять языков программирования со следующими названиями:
- Структурированный текст (ST - Structured Text);
- Последовательные функциональные схемы (SFC - "Sequential Function Chart");
- Диаграммы функциональных блоков (FBD - Function Block Diagram);
- Релейно-контактные схемы, или релейные диаграммы (LD - Ladder Diagram);
- Список инструкций (IL - Instruction List).
Графическими языками являются SFC, FBD, LD. Языки IL и ST являются текстовыми.
Принципы языков МЭК
Языки МЭК 61131-3 базируются на следующих принципах:
- Вся программа разбивается на множество функциональных элементов - Program Organization Units (POU), каждый из которых может состоять из функций, функциональных блоков и программ. Любой элемент МЭК-программы может быть сконструирован иерархически из более простых элементов;
- Стандарт требует строгой типизации данных. Указание типов данных позволяет легко обнаруживать большинство ошибок в программе до ее исполнения;
- Имеются средства для исполнения разных фрагментов программы в разное время, с разной скоростью, а также параллельно. Например, один фрагмент программы может сканировать концевой датчик с частотой 100 раз в секунду, в то время как второй фрагмент будет сканировать датчик температуры с частотой один раз в 10 сек;
- Для выполнение операций в определенной последовательности, которая задается моментами времени или событиями, используется специальный язык последовательных функциональных схем ( SFC);
- Стандарт поддерживает структуры для описания разнородных данных. Например, температуру подшипников насоса, давление и состояние "включено-выключено" можно описать с помощью единой структуры "Pomp" и передавать ее внутри программы как единый элемент данных;
- Стандарт обеспечивает совместное использование всех пяти языков, поэтому для каждого фрагмента задачи может быть выбран любой, наиболее удобный, язык;
- Программа, написанная для одного контроллера, может быть перенесена на любой контроллер, совместимый со стандартом МЭК 61131-3.
Любой ПЛК работает в циклическом режиме. Цикл начинается со сбора данных с модулей ввода, затем исполняется программа ПЛК и оканчивается цикл выводом данных в устройства вывода. Поэтому величина контроллерного цикла зависит от времени исполнения программы и быстродействия процессорного модуля.