Программирование операций сравнения в LAD

При программировании функций сравнения необходимо руководствоваться следующей схемой операций:

1) загрузка первого числа;

2) загрузка второго числа;

3) применение функции сравнения;

4) присвоение результата.

При выполнении первой операции число загружается в аккумулятор 1. При выполнении второй операции содержимое аккумулятора 1 перемещается в аккумулятор 2, а число из второго адреса загружается в аккумулятор 1. Теперь операция сравнения выполняется между содержимым двух аккумуляторов.

Функция сравнения возвращает двоичный результат типа BOOL, который может быть назначен двоичному адресу или может быть использован в какой-нибудь другой двоичной проверке. Функции сравнения не меняют содержимого аккумуляторов. Они всегда выполняются вне всякой связи с какими-нибудь условиями.

Пример:

L #actval; //Загрузка первой переменной

L #calibra; // Загрузка второй переменной

>=R; //Проверка условия “больше или равно”

S #recali; //Установка переменной recali в “1”

Функции сравнения возвращают двоичный результат логической операции RLO и могут быть использованы в соединении с другими двоичными функциями. Функция сравнения в начале логической операции всегда является первичным опросом (first check). Значение RLO, которое возвращается функцией сравнения, может быть непосредственно использованно в логических операциях.

Пример:

L MW 120;

L 512;

> I;

A Input1;

= Output1;

В примере выход Output1 устанавливается, если выполняется условие сравнения, а вход Input1 при этом имеет состояние "1".

Функция сравнения внутри логической операции должна быть заключена в скобки, потому что эта функция начинает новый логический этап – первичный опрос.

Пример:

O Input2;

O (;

L MW 12;

L 200;

<= I;

);

O Input3;

= Output2;

В этом примере выход Output2 устанавливается, если вход Input2 или вход Input3 имеет состояние "1", или если выполняется условие сравнения.

Программирование операций сравнения в LAD и FBD

На рисунке 2.21, в качестве примера, показан блочный элемент операции «равно».

Программирование операций сравнения в LAD - №1 - открытая онлайн библиотека

Рисунок 2.21 - Обозначение блочного элемента сравнения «равно»

Блочный элемент функции сравнения имеет два входа IN1 и IN2, а также немаркированные вход и выход. Немаркированные вход и выход служат для присоединения других (двоичных) программных элементов.

Заголовок СМР в блочном элементе идентифицирует операцию сравнения (compare) и тип выполняемого сравнения.

В цепи LAD компаратор (блок сравнения) можно поставить вместо контакта. Сравниваемые (целочисленные) значения подаются на входы IN1 и IN2, результат сравнения выводится в виде булевой переменной на выходе. Успешное сравнение эквивалентно замкнутому контакту (ток протекает через компаратор). Если сравнение не успешно, то контакт разомкнут. Выход компаратора всегда должен быть подключен.

В примере на рисунке 2.22 меркер М 99.0 сбрасывается, если значение в слове MW 92 равно 120, иначе он остается без перемен.

Программирование операций сравнения в LAD - №2 - открытая онлайн библиотека

Рисунок 2.22 - Пример применения функции сравнения чисел INT

Контакты можно присоединить до и после функции сравнения. Сами блочные элементы сравнения могут быть соединены последовательно или параллельно.

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

В параллельной схеме ток будет протекать при выполнении одного из условий.