- •ПРОГРАММИРОВАНИЕ АЛГОРИТМОВ ОБРАБОТКИ ДАННЫХ В TRACE MODE 6
- •Языки программирования стандарта IEC(МЭК) 61131-3
- •Современная редакция стандарта (который с 1997 г. называется IEC 61131) включает:
- •Вид окна программы «Редактор программ»
- •Аргумент
- •Аргументы
- •Основные типы данных
- •Техно ST
- •Инициализац
- •Конструкц ии языка
- •Арифметические операции
- •Логические операции
- •Операции сравнения
- •Конструкция IF – ELSEIF –
- •Конструк
- •Цикл FOR
- •Цикл For
- •Цикл WHILE
- •Цикл REPEAT UNTIL
- •Конструкция CASE
- •Техно FBD
- •Функциональные блоки
- •Пример
- •Создание привязки
- •Порядок обработки в первую
- •FBD-программа
- •Техно IL
- •Техно IL
- •Одно и двухадресный режим
- •Конструкция программы на языке Техно IL
- •Значения по умолчанию
- •Операторы обмена с аккумулятором
- •Пример программы
- •Логические операторы Техно IL
- •Логические операторы Техно IL
- •Арифметические операторы Техно IL
- •Операторы сравнения
- •Операторы перехода и вызова функции Техно IL
- •Операторы перехода и вызова функции Техно IL
- •Язык SFC
- •LD (Ladder
- •Язык LD позволяет:
- •Контакт
- •Катушка
- •Катушки
- •Катушки
- •Катушка
- •Размещение
- •Размещение блоков
- •Пример
Операторы сравнения
|
|
|
|
|
Синтаксис |
Действие |
|
|
GT operand1 |
result := TRUE, если operand1 > |
|
|
operand2 |
operand2 |
|
|
GE operand1 |
result := TRUE, если operand1 >= |
|
|
operand2 |
operand2 |
|
|
EQ operand1 |
result := TRUE, если operand1 == |
|
|
operand2 |
operand2 |
|
|
NE operand1 |
result := TRUE, если operand1 <> |
|
|
operand2 |
operand2 |
|
|
LE operand1 |
result := TRUE, если operand1 <= |
|
|
operand2 |
operand2 |
|
|
LT operand1 |
result := TRUE, если operand1 < |
|
|
operand2 |
operand2 |
|
Операторы перехода и вызова функции Техно IL
|
|
|
|
|
|
Синтаксис |
Допустим |
Действие |
|
|
|
ый |
|
|
|
|
модифика |
|
|
|
|
тор |
|
|
|
JMP имя_метки |
C, X |
переход к строке с |
|
|
|
|
указанной меткой |
|
|
CAL |
C, X |
вызов функции или |
|
|
имя_функции(val1, ... |
|
функции-блока |
|
|
valN) |
|
|
|
|
RET |
C, X |
выход из программы, |
|
|
|
|
функции или функции- |
|
|
|
|
блока |
|
Операторы перехода и вызова функции Техно IL
Определены следующие модификации данных операторов:
•JMP, CAL, RET – соответственно оператор безусловного перехода, безусловного вызова и безусловного выхода.
•JMPX, CALX, RETX – соответственно оператор условного перехода, условного вызова и условного выхода. Инструкция, содержащая любой их этих операторов, выполняется только тогда, когда result=TRUE, в противном случае игнорируется.
•JMPC, CALC, RETC – соответственно оператор условного перехода, условного вызова и условного выхода. Эти операторы следуют непосредственно за оператором сравнения. Инструкция, содержащая любой из этих операторов, выполняется только тогда, когда результат предыдущей операции сравнения истинен (см. выше Операторы сравнения Техно IL), в противном случае игнорируется.
|
VAR VAR_000 : INT := 20; END_VAR |
|||
|
VAR VAR_001 : INT := 30; END_VAR |
|||
VAR_000 > VAR_001 |
VAR VAR_002 : BOOL; END_VAR |
|||
LD 1 |
//result := TRUE |
|||
|
||||
|
GT VAR_000 VAR_001 //результат сравнения |
|||
Загрузили в аккумулятор |
ложен, |
|
|
|
значение переменной |
//т.к. (20<30), |
Так как результат |
||
VAR_002, так как она не |
//значение |
|
||
|
ложен |
|||
инициализирована, то по |
|
|||
RETC |
|
|
||
умолчанию ее значение false |
|
|
||
мы |
LD VAR_002 |
//result := FALSE |
||
LT VAR_000 VAR_001 //результат сравнения |
||||
VAR_000 < VAR_001 |
истинен |
|
|
|
//result := TRUE |
|
|||
|
|
|||
|
CALC fff(VAR_000) |
//вызов функции |
||
|
произойдет |
|
|
|
Язык SFC
•SFC (Sequential Function Chart) расшифровывается как «Последовательность функциональных диаграмм», и является одним из языков стандарта IEC 61131-3.
•SFC позволяет легко описывать последовательность протекания процессов в системе.
•SFC осуществляет последовательное управление процессом, базируясь на системе условий, передающих управления с одной операции на другую.
•Язык SFC состоит из конечного числа базовых элементов, которые используются как блоки для построения целостного алгоритма протекания программы.
шаг |
перехо |
|
д |
||
|
||
Основные понятия языка SFC |
||
LD (Ladder
Diagram)
графический язык, основанный на принципах релейно- контактных схем (элементами релейно-контактной логики являются: контакты, обмотки реле, вертикальные и горизонтальные перемычки и др.) с возможностью использования большого количества различных функциональных блоков.
|
представление |
|
программы в виде |
|
электрического потока |
|
(близко специалистам по |
|
электротехнике), |
LD |
наличие простых правил, |
|
|
|
использование только |
|
булевых выражений. |
LD
программам на языке LD |
электрическая цепь с реле и выключателями |
LD
•Схемы, реализованные на данном языке, называются многоступенчатыми.
•Ступени, подключенные к левой шине питания, обрабатываются сверху вниз.
•Ступени внутри секции, которые не зависят друг от друга, обрабатываются в порядке размещения.
LD
•Если контакты соединены параллельно, тогда соединение передает состояние «логическое ИЛИ».
•Если контакты соединены последовательно, то соединение передаёт «логическое И».
•Контакт может быть инвертируемым. Такой контакт обозначается с помощью символа |/| и передает состояние “ON”, если значение переменной FALSE.
LD
•Если контакты соединены параллельно, тогда соединение передает состояние «логическое ИЛИ».
•Если контакты соединены последовательно, то соединение передаёт «логическое И».
•Контакт может быть инвертируемым. Такой контакт обозначается с помощью символа |/| и передает состояние “ON”, если значение переменной FALSE.
