Материал: Программируемые логические контроллеры SIMATIC S7-300 400. лабораторный практикум. Таратынов О.Ю., Ткалич С.А

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

фронта сигнала, статус сигнала I 1.1 должен быть сохранен в M_BIT (бит памяти или бит блока данных) (например, M1.0).

Отрицательный фронт - когда состояние сигнала I 1.1 изменяется от “1” к “0”, операция контроля " NEG " дает результат "1" на выходе Q в течение одного цикла, причем д о- полнительный вход I 1.0 также должен иметь состояние "1" (как в примере выше). Чтобы можно было обнаружить изменение фронта сигнала, статус сигнала I 1.1 должен быть сохранен в M_BIT (бит памяти или бит блока данных) (например,

M1.1).

Инструкция перехода Jump

В языке LAD/FBD метка (label) вводится как идентификатор выше элемента катушки или элемента назначения. В STL она вводится после инструкции перехода Jump (рис. 6.9).

Для метки Вы можете использовать до 4-х символов, причем первый символ должен быть буквой или символом “_”. Метка отмечает точку, с которой выполнение программы должно быть продолжено. Любые инструкции или сегменты между инструкцией jump и меткой не выполняются.

Переходы могут быть выполнены как вперед, так и назад. Инструкция jump и адрес перехода (метка) должны быть в том же блоке. Адрес перехода должен быть представлен в блоке только один раз. Инструкции Jump могут быть использованы в

FB, FC и OB.

Инструкция безусловного перехода JU вызывает вы-

полнение программы с нового адреса независимо от RLO. Условный переход JC выполняется только тогда, когда

RLO равен “1”. Если RLO равен “0”, переход не выполняется, RLO устанавливается в “1” и выполнение программы продолжается со следующей инструкции (рис. 6.10).

Условный переход JCN выполняется только тогда, когда RLO равен "0". Если RLO равен "1", переход не выполняется, а выполнение программы продолжается со следующей инструкции.

75

Рис. 6.9. Безусловный переход (Независящий от RLO)

Рис. 6.10. Условный переход (Зависящий от RLO)

76

7. ЧИСЛОВЫЕ ОПЕРАЦИИ

Все данные в программе пользователя должны быть идентифицированы типом данных.

Команды двоичной логики работают с битами. Команды загрузки и передачи (STL) и команды пересылки (LAD и FBD) работают с байтами, словами и двойными словами. Бит – это двоичная цифра "0" или "1". Байт состоит из восьми битов, слово – из 16 битов, а двойное слово – из 32 битов. Математические команды тоже работают с байтами, словами или двойными словами. По адресам этих байтов, слов или двойных слов Вы можете закодировать числа разного формата, такие как целые числа и числа с плавающей точкой.

Числовые функции обрабатывают числовые значения преимущественно типов данных INT (целое), DINT (двойное целое) и REAL (вещественное). На рис. 7.1 представлены форматы 16-разрядных чисел.

Рис. 7.1. Форматы 16-разрядных чисел

77

INT - тип данных INT является стандартным для языков программирования типом integer (16 бит) и служит для хранения целых чисел со знаком. Число типа integer занимает одно слово памяти, находится в диапазоне -32768 и +32767.

В двоичном формате отрицательное число представляется дополнительным кодом. Дополнительный код отрицательного числа получается инверсией всех битов и добавлением к результату "1". Знак (бит 15) показывает, является ли число положительным или отрицательным ("0" = положительное, "1" = отрицательное).

BCD код - каждая цифра десятичного числа кодируется четырьмя двоичными разрядами. Четыре бита используются потому что самая большая десятичная цифра - 9 требует в двоичном коде четыре двоичных разряда (1001).

Двоично-десятичные коды (BCD) чисел от 0 до 9 совпадают с обычным двоичным представлением.

Форматы 32-разрядных чисел представлены на рис. 7.2.

Рис. 7.2. Форматы 32-разрядных чисел

78

DINT - 32-битные числа со знаком называются "double integers" (двойное целое) или “long integers” (длинное целое).

Они лежат в диапазоне L# -2147483648 до L#+2147483647.

REAL - число типа real (известное также как число с плавающей запятой) является положительным или отрицательным числом из диапазона от -3,402823x1038 до 3,402823x1038 . Представление чисел с плавающей запятой соответствует меж-

дународному стандарту IEEE

 

 

Примеры:

+10.339

или

+1.0339E1

 

-234567

или

-2.34567E5.

Число типа REAL занимает в памяти два слова. Самый старший разряд показывает знак. Другие биты представляют мантиссу и показатель степени числа 2. В экспоненциальном представлении число представляет собой произведение нормированного значения числа на степень числа 10.

Загрузка и передача данных осуществляется оператором MOVE (рис. 7.3). В приведенном примере число 5 пересылается в байт MB5.

Рис. 7.3. Загрузка и передача данных

MOVE (LAD/FBD) Если вход EN (разрешение) активен, значение на входе IN копируется по адресу на выходе OUT. Выход ENO (разрешение выхода) имеет такое же состояние, как и вход EN.

79

Источник: https://studfile.net/preview/16568750/