Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программируемые логические контроллеры для управления технологическими процессами. В 2 ч. Ч 1.pdf
Скачиваний:
5
Добавлен:
29.11.2025
Размер:
2.39 Mб
Скачать

148

Глава 15. Работа с регистрами с помощью языка релейно-контактных схем (LD)

15.1 Основные команды

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

15.1.1 Передача данных. Команды (MOV) и (DMOV)

Команда служит для передачи данных от источника данных (S+) к данным цели (D+). Данные в источнике данных (S+) при выполнении «MOV»-команды автоматически интерпретируются как двоичные значения. Пример применения «MOV»-команды (рису-

нок 15.1).

Рисунок15.1 – Пример программирования с использованием MOV-инструкции

Если входное условие Х0 включено, то выполняется переход данных от (S+) к (D+). Если Х0 выключен, не выполняется никакой переход. Константа К100 при выполнении «MOV»-команды автоматически интерпретируется двоичным значением (рисунок 15.1).

Примечание:

Инструкции выполняются в каждом цикле программы. Этого можно избежать благодаря использованию вставленной впереди импульсной функции («PLS»- или «PLF»-инструкции или же параметра «Р»).

149

15.1.2 Сравнение числовых данных. Команды (CMP) и (DCMP)

Команды выполняют сравнение между двумя числовыми значениями данных (больше, меньше, равно) по следующему принципу:

Данные в обоих источниках (S1+) и (S2+) сравниваются друг с другом.

Результат сравнения (больше, меньше, равно) отображается (индицируется) с помощью внутреннего реле М, операнда состояния шага S или выхода Y. Определение, какой из этих операндов должен задействоваться, выполняется по адресу цели (D+).

(S1+) > (S2+)

(D+)

(S1+) = (S2+)

((D+)+1)

(S1+) < (S2+)

((D+)+2)

Данные в S1+ и S2+ обрабатываются как двоичные данные.

Пример применения «СMP»-команды показан на рисунке 15.2.

Рисунок 15.2 – Схема использования команды CMP

150

В адресе цели (D+) в этом примере указано внутреннее реле М0. Соответствующие результаты сравнения автоматически присваиваются приращиваемым на 1 последующих адресов внутренних реле М0, М1, М2 и имеют следующие значения:

A) M0 включено, если К100 > накопленного в счетчике С2 значения;

B) M1 включено, если К100 = нако пленному в счетчике С2 значению;

C) M2 включено, если К100 < накопленного в счетчике С2 значения.

М0, М1, М2 не изменяются, если входное условие Х0 выключено.

15.1.3Копирование и инвертирование. Команда (CML)

Функция этой команды – образование 1-го дополнения двоичного числа. Двоичное значение числа в (S+) преобразовывается в свое 1-е дополнение и записывается в данные цели (D+). Пример применения «CML»-инструкции (релейная схема и регистры) показан на рисунке 15.3.

Рисунок 15.3 – Схема использования команды «CML» (инвертирование и перенос). Значения бит в регистрах D0 и K4Y0 при выполнении команды «CML»

151

Примечание:

Если адрес цели располагает большим числом бит, чем адрес источника, то все неиспользуемые биты включаются.

15.1.4 Обмен данными. Команда (ХСН)

Команда предназначена для осуществления обмена данными между двумя операндами (регистрами). Обмениваются данные в регистрах (D1+) и (D2+). Пример применения «ХСН»-команды показан на рисунке 15.4.

Рисунок 15.4 – Пример записи схемы команды «XCH» (обмена данными)

Значения перед выполнением инструкции: D10 = 5, D11 = 7

Значения после выполнения инструкции: D10 = 7, D11 = 5

Примечание:

Процесс обмена выполняется в каждом цикле, если не программируются никакое управление по фронту.

15.1.5 Сдвиг регистра вправо/влево. Команды (ROR) и (ROL)

Команды выполняют сдвиг регистра на n мест вправо «ROR» / влево «ROL». Битовое отображение в регистре (D+) сдвигается вправо/влево на n мест при каждом исполнении одной из команды.

152

Состояние последнего сдвигаемого бита копируются в флаг передачи – «Carry». Пример применения команд «ROR» и «ROL» показаны на рисунках 15.5 и 15.6 соответственно:

Рисунок 15.5 – Сдвиг регистра вправо

Рисунок 15.6 – Сдвиг регистра влево