Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ATPP / ИСПУ / Лекции ИСПУ.doc
Скачиваний:
249
Добавлен:
23.05.2015
Размер:
779.78 Кб
Скачать

8.2. Язык последовательных функциональных диаграмм sfc

Язык SFC(SequentalFunctionChart) стоит на более высоком уровне по отношению к остальным четырём языкам. Прототипом для созданияSFCпослужили сети Петри, хотя пути их развития оказались разными.SFCразвивается как инструмент описания производственных операций, а сети Петри расширяют возможности моделирования дискретных систем. В отличие от сетей Петри дуги вSFCнаправлены сверху вниз и отражаются прямыми линиями. Позиции вSFCназываютшагамиилиэтапами, и отображаются в виде прямоугольников, что дает возможность реализации диаграмм в символах псевдографики. Задать несколько стартовых шагов вSFCнельзя, только один шаг диаграммы является начальным.

ДиаграммаSFCсостоит из шагов и переходов между ними. Разрешение перехода определяется условием. С шагом связаны определённые действия. Описания действий выполняются на любом языке МЭК. СамSFCне содержит управляющих команд ПЛК. Можно создать несколько уровней вложенныхSFC-диаграмм. Действия нижнего уровня необходимо описать на языкеIL,ST,LDилиFBD. Целью примененияSFCявляется разделение задачи на простые этапы с формально определённой логикой работы системы без программирования. Причём для отработки верхнего уровня не требуется детальное описание действий, так же как и привязка к конкретным аппаратным средствам.

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

SFC-диаграмма блока управления реверсивным приводом

8.3. Язык инструкций il

Язык IL(InstructionList) представляет собой типичный ассемблер с аккумулятором и переходами по меткам. Набор инструкций стандартизирован и не зависит от конкретной целевой платформы. ЯзыкILпозволяет работать с любыми типами данных, вызывать функции и функциональные блоки, реализованные на любом языке. Таким образом, наILв принципе можно реализовать алгоритм любой сложности, хотя текст будет объемным.

Аккумулятор ILявляется универсальным контейнером, способным сохранять значения переменных любого типа. В стандарте МЭК вместо термина "аккумулятор" используется термин "результат" (result). Так, инструкция берёт "текущий результат" и формирует "новый результат".

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

Метка Оператор Операнд Комментарии

LDVoltage(*ЗагрузитьVoltageв аккумулятор*)

GT220 (*Если >220*)

JMPCNM1 (*Перейти к метке М1, иначе*)

LDCurrent(*ЗагрузитьCurrentв аккумулятор*)

SUB10 (*Вычесть из аккумулятора 10*)

STCurrent(*ПрисвоитьCurrentзначение аккумулятора*)

M1:LD0 (* Загрузить в аккумулятор значение 0*)

STOut(*ПрисвоитьOutзначение аккумулятора*)

8.4. Язык структурированного текста st

Язык ST(StructuredText) – это язык высокого уровня, синтаксически представляющий собой адаптированный язык Паскаль. Вместо процедур Паскаля вSTиспользуются компоненты программ стандарта МЭК. Пример программы на языкеST:

IF Voltage>220 THEN

Current:=Current-10; (*уменьшить ток на 10*)

ELSE

Current:=50; Speed:=ON;(*установить ток 50А и вкл.мотор*)

END_IF;

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

Соседние файлы в папке ИСПУ