
- •Язык программирования st (Обзор, принципы написания программы)
- •Пример Программы на языке st
- •Выражения
- •Правила приоритета
- •Оператор присваивания
- •Вызов функционального блока
- •Язык программирования ld (Обзор, принципы написания программы)
- •Контакт
- •Обмотка
- •Set и reset обмотки
- •Функциональные блоки
- •Функциональный блок
- •Функциональный блок со входом разрешения
- •Позиция курсора
- •Позиция курсора
- •Порядок выполнения схемы
- •Упорядочить топологически
- •Управление порядком
- •В соответствии с потоком данных
- •Обратные связи
- •Классификаторы действий мэк шага
- •Альтернативная ветвь
- •Параллельные ветви
- •Переход на произвольный шаг
Функциональные блоки
Кроме контактов и обмоток, в LD можно использовать функциональные блоки и программ. Они должны иметь логические вход и выход и могут использоваться так же, как контакты.
Цепь (перед)
-команда
для вставки цепи, выше выбранной в
редакторе LD
Цепь (после)
-команда
для вставки цепи, ниже выбранной в
редакторе
Контакт
-
для вставки контакта перед выбранной
позицией в цепи.
Инверсионный
контакт
-
заменяет последовательность команд
'Вставка' 'Контакт' и 'Дополнения'
'Инверсия'.
Параллельный контакт
-для вставки контакта, параллельного
выделенной позиции схемы.
Параллельный контакт
(инверсионный)
-
заменяет последовательность команд
'Вставка' 'Параллельный контакт' и
'Дополнения' 'Инверсия'.
Обмотка
-
для вставки обмотки, параллельной
выбранной.
SET
обмотка
-
для вставки 'Set' обмотки, параллельной
выбранной. Она заменяет последовательность
команд 'Вставка' 'Обмотка' и 'Дополнения'
'Set/Reset'.
RESET обмотка
-для
вставки 'Reset' обмотки, параллельной
выбранной. Она заменяет последовательность
команд 'Вставка' 'Обмотка' и 'Дополнения'
'Set/Reset'.
Инверсия
-
для инвертирования выбранного контакта,
обмотки, инструкции перехода или
возврата, входа или выхода POU
Функциональный блок
Эта
команда используется для вставки
оператора, функционального блока,
функции или программы.
Функциональный блок со входом разрешения
Если вы хотите управлять
вызовом POU из релейной цепи, то POU
должен иметь логический вход
разрешения EN.
Детектор переднего фронта
-вставляет
в цепь функциональный блок R_TRIG, который
служит для выделения переднего фронта
импульса (FALSE -> TRUE) сигнала.
Детектор заднего
фронта-вставляет в цепь функциональный
блок F_TRIG, который служит для выделения
заднего фронта импульса (TRUE -> FALSE)
сигнала.
Таймер
Язык программирования FBD (Обзор, принципы написания программы)
Язык FBD (Диаграмма Функциональных Блоков) является языком графического программирования, так же, как и LD, использующий аналогию с электрической (электронной) схемой. Программа на языке FBD представляет собой совокупность функциональных блоков (functional flocks, FBs), входа и выхода которых соединены линиями связи (connections). Эти связи, соединяющие выхода одних блоков с входами других, являются по сути дела переменными программы и служат для пересылки данных между блоками. Каждый блок представляет собой математическую операцию (сложение, умножение, триггер, логическое “или” и т.д.) и может иметь, в общем случае, произвольное количество входов и выходов.
Достоинства FBD: графическая форма представления алгоритма, простота в использовании, повторное использование функциональных диаграмм и библиотеки функциональных блоков делают язык FBD незаменимым при разработке программного обеспечения ПЛК.
Недостатки FBD: хотя FBD обеспечивает легкое представление функций обработки как «непрерывных» сигналов, в частности, функций регулирования, так и логических функций, в нем неудобным и неочевидным образом реализуются те участки программы, которые было бы удобно представить в виде конечного автомата.
Редактор FBD - графический редактор. Он работает со списком цепей, каждая из которых состоит из логических или арифметических выражений, вызовов функций, программ или функциональных блоков, инструкций возврата и перехода.
Наиболее важные функции вы можете найти в контекстном меню, которое вызывается правой кнопкой мыши или сочетанием клавиш <Ctrl>+<F10>.