Tag Archives: стандарт МЭК 61131-3

Стандарт IEC 61131

Абсолютно одинаковые PLC могут выполнять совершенно разные функции. Причем для измененияалгоритма работы не требуется каких-либо переделок аппаратной части. Задачей прикладного про-граммирования PLC является только реализация алгоритма управления конкретной машиной. Опрос входови выходов контроллер осуществляет автоматически, вне зависимости от способа физического соединения.Эту работу выполняет системное программное обеспечение. В идеальном случае прикладной программистсовершенно не интересуется, как подсоединены и где расположены датчики и исполнительные механизмы.Мало того, его работа не зависит от того, с каким контроллером и какой фирмы он работает. Благодарястандартизации языков программирования прикладная программа оказывается переносимой. Это означает,что ее можно использовать в любом PLC, поддерживающем данный стандарт.

В настоящее время стандарт включает следующие части.

Часть 1. Общая информация.

Часть 2. Требования к оборудованию и тестам.

Часть 3. Языки программирования.

Часть 4. Руководства пользователя.

Часть 5. Спецификация сообщений.

Часть 6. Промышленные сети.

Часть 7. Программирование с нечеткой логикой.

Часть 8. Руководящие принципы применения и реализации языков PLC.Стандарт IEC 61131-3.

Часть 3 — Языки программирования.

Стандарт IEC 61131-3 предусматривает 5 языков программирования. Включение в стандарт пяти языковобъясняется в первую очередь историческими причинами. Разработчики стандарта столкнулись с наличиемогромного количества различных вариаций похожих языков программирования PLC. Вошедшие в стандартязыки созданы на основе наиболее популярных языков программирования, наиболее распространенных вмире контроллеров. Если взять любой контроллер, работающий в современном производстве, то его программу можно перенести в среду IEC 61131-3. Речь не идет о том, что программу можно будетиспользовать без какой-либо правки. Безусловно, потребуется некоторая адаптация и отладка.После принятия стандарта появилась возможность создания аппаратно-независимых библиотек. Эторегуляторы, фильтры, управление сервоприводом, модули с нечеткой логикой и т. д.Внедрение стандарта дало фундамент для создания единой системы подготовки специалистов. Человек,прошедший обучение по программе, включающей стандарт IEC -61131, сможет работать с PLC любойфирмы. В то же время, если он имел ранее опыт работы с любыми PLC, его навыки окажутся полезными исущественно упростят изучение новых возможностей.Программист не ограничен применением заданных в стандарте данных и операций. Стандарт допускаетвозможность осздания пользовательских типов данных и функциональных блоков. Функции ифункциональные блоки великолепно реализуют инкапсуляцию деталей реализации. Созданныепользователем библиотеки абсолютно равноправны стандартным. Новые оригинальные аппаратныерешения изготовителей могут быть поддержаны собственными библиотеками. Причем при созданиивнешних библиотек можно использовать любые инструменты, от ассемблера до С++.Стандартные компоненты IEC для программиста, как дороги для автомашин. Количество возможных путейвсегда очень ограничено. Ближе полем, но по дороге быстрее.

Доступность программирования.

Главным требованием к PLC всегда была и остается возможность его эксплуатации существующимтехническим персоналом и возможность быстрой замены старого оборудования. Поэтому языкипрограммирования компьютеров и встраиваемых микропроцессорных систем управления плохо подходятдля программирования PLC. Здесь нужны более простые и наглядные языки, позволяющие излагать задачу вблизких к применяемым технологиям категориях. Привлечение же к программированиюспециализированной фирмы неизбежно порождает зависимость, если реализация не является достаточнопрозрачной. Сложный язык программирования PLC снижает его шансы на конкурентном рынкесущественно больше, чем массогабаритные показатели.В последнее десятилетие появился целый класс инструментов визуального прикладного проектирования дляPLC. Понятие «программирование» для контроллеров всё более вытесняется словом «проектирование».Потребитель PLC работает с конкретным, адаптированным к системному, программным обеспечением и ненесёт расходов на адаптацию и настройку контроллера. Для изучения технологии PLC и программированиядостаточно иметь демо-версию комплекта PLC. На первом этапе пользователь, который имеетпредставление о работе с компьютером, понятиями «бит», «байт», «системы счисления», может решитьнекоторые задачи программирования PLC. Глубокое знание математики, РС, сетей, ОС, теории системавтоматического управления и идеологии построения PLC – все эти вопросы возникают в процессесерьёзной работы.

Мой блог находят по следующим фразам

Язык последовательных функциональных схем (SFC)

Язык последовательных функциональных схем (SFC)

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

Пример SFC диаграммы:

 

пример программы SFC

пример программы SFC

 

Шаг

SFC POU состоит из набора шагов, связанных переходами. Существуют 2 вида шагов:

  • Шаг простого типа (упрощенный SFC) может включать единственное действие. Графический флажок (небольшой треугольник в верхнем углушага) показывает, пустой шаг или нет.
  • МЭК шаг (стандартный SFC) связан с произвольным числом действий или логических переменных. Связанные действия располагаются с правой стороны от шага.

 

Действие

Действие может содержать список инструкций на IL или ST, схемы на FBD или LD, или снова схемы на SFC. При использовании простых шагов действие всегда связывается с этим шагом. Для того, чтобы редактировать действие, необходимо дважды щелкнуть левой клавишей мышки на шаге. Или выделить шаг и выбрать команду меню «Extras» «ZoomAction/Transition». Помимо основного действия, шаг может включать одно входное и одно выходное действие. Действия МЭК шагов показаны в Организаторе Объектов, непосредственно под вызывающей их POU. Редактирование действия запускается двойным щелчком мыши или клавишей <Enter>. Новые действия добавляются командой главного меню «Project» «Add Action». Вы можете сопоставить одному шагу до 9 действий.

 

Входное или выходное действие

В шаг можно добавить входное и выходное действие.

Входное действие выполняется один раз при активизации шага, выходное – при деактивизации. Шаг, который имеет входное действие, обозначается буквой «Е» в левом нижнем углу, шаг с выходными действиями – буквой «Х» в правом нижнем углу.

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

Переход/условие перехода

Между шагами находятся так называемые переходы. Условием перехода может быть логическая переменная или константа, логический адрес или логическое выражение, описанное на любом языке. Условие может включать серию инструкций, образующих логический результат, в виде ST выражения (т.е.(i<= 100) AND b) либо на любом другом языке. Но условие не должно содержать присваивания, вызов программ и экземпляров функциональных блоков.

В редакторе SFC условие перехода можно записать непосредственно около символа перехода либо в отдельном окне редактора для ввода условия  Условие заданное окне редактора предпочтительнее.

 

Активный шаг

После вызова SFC POU начальный шаг (шаг, выделенный двойной рамкой) выполняется первым. Шаг, выполняемый в данный момент, называется активным. Действия, связанные с активным шагом, выполняются один раз в каждом управляющем цикле. В режиме online активные шаги выделяются синим цветом. Следующий за активным шагом шаг станет активным, только когда условие перехода к этому шагу будет истинно.

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

 

Шаг МЭК

В отличие от упрощенного SFC МЭК шаги могут включать несколько действий. Действия МЭК шагов описываются отдельно от них и могут неоднократно использоваться в пределах данного POU, для чего их надо связать с шагом с помощью команды главного меню «Extras» «Associate action».

Кроме действий с шагом, можно связывать логические переменные.

С помощью так называемых классификаторов действия и логические переменные могут активироваться и деактивироваться, возможно, с задержкой времени. Например: действие может продолжать работу, даже если запустивший его шаг утратил активность; с помощью классификатора S (установка) можно программировать параллельные процессы и т.д. Логическая переменная, связанная с шагом, получает значение ИСТИНА при каждой активации шага. Действие, связанное с МЭК шагом, описывается справа от него в блоке, состоящем из двух частот. Левая часть этого блока содержит классификатор, возможно, с константой времени, а правая часть содержит имя действия или логической переменной.

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

При выполнении шага сначала производится деактивация действий, затем выполняются активные действия в алфавитном порядке. Для того чтобы использовать шаги с МЭК действиями, необходимо установить опцию «Extras» «Use IEC-Steps» и подключить к проекту специальную библиотеку Iecsfc.lib. В Организаторе объектов действия показаны непосредственно под SFC POUs, которые их вызывают. Новые действия можно создавать с помощью команды «Project» «Add Action«.

Альтернативная ветвь

Две и более ветви SFC могут быть альтернативными. Каждая альтернативная ветвь должна начинаться и заканчиваться переходом. Альтернативные ветви могут содержать параллельные ветви и другие альтернативные ветви. Альтернативная ветвь начинается горизонтальной линией (начало альтернативы), а заканчивается горизонтальной линией (конец альтернативы) или переходом на произвольный шаг (jump). Если шаг, который находится перед линией альтернативного начала, активен, то первые переходы альтернативных ветвей начинают оцениваться слева направо. Таким образом, первым активируется тот шаг, который следует за первым слева истинным переходом.

Параллельные ветви

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

Переход на произвольный шаг (Jump)

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

 

Мой блог находят по следующим фразам