В начало

Создание программы на языке IL (Отчет по лабораторной работе)

 

ЗАДАНИЕ

Создать программу на языке IL согласно условиям задания 1.

 

РЕШЕНИЕ

Используем команду VAREND_VAR для объявления функциональных блоков и блоков DFB.

Объявляем переменные и их начальные значения в редакторе переменных. Создаем логику программы.

VAR

FBI_1_10:TON;

FBI_1_15:RS;

FBI_1_9:TON;

FBI_1_3:RS;

END_VAR

LD on_le

ANDN mot_ri

OR time_ri

ST FBI_1_3.S

LD stop

OR time_le

ST FBI_1_3.R1

CAL FBI_1_3

LD FBI_1_3.Q1

ST mot_le

LD FBI_1_3.Q1

ST FBI_1_9.IN

LD t#5s

ST FBI_1_9.PT

CAL FBI_1_9

LD FBI_1_9.q

ST time_le

LD FBI_1_9.ET

TIME_TO_INT

ST et_le

LD on_ri

ANDN mot_le

OR time_le

ST FBI_1_15.S

LD stop

OR time_ri

ST FBI_1_15.R1

CAL FBI_1_15

LD FBI_1_15.Q1

ST mot_ri

LD FBI_1_15.Q1

ST FBI_1_10.IN

LD t#10s

ST FBI_1_10.PT

CAL FBI_1_10

LD FBI_1_10.Q

ST time_ri

LD FBI_1_10.ET

TIME_TO_INT

ST et_ri

 

Рис. 1. Окно редактора переменных

 

Рис. 2

 

ОТВЕТЫ НА КОНТРОЛЬНЫЕ ВОПРОСЫ

 

1. Охарактеризуйте язык списка инструкций IL.

Текстовый язык IL (Instruction List) относится к ассемблероподобным языкам, т. е. к языкам низкого (машинного) уровня, что существенно облегчает, например, вызов функциональных блоков и функций «условно» или «безусловно», выполнение назначений и условных или безусловных переходов внутри секции.

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

Ассемблероподобные языки использовались для программиро­вания компьютеров в 50-е годы прошлого века и все еще предла­гаются некоторыми изготовителями ПЛК, особенно программи­стами, поддерживающими микроРС. Программу можно написать с помощью любого текстового редактора.

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

Согласно стандарту IEC 61131-3 ключевые слова должны быть введены в символах верхнего регистра.

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

Генерация объектного кода вместе с проверкой синтаксиса бу­дет выполняться, когда секция закрыта. Любые найденные ошибки затем отображаются в окне сообщений. Однако проверка синтак­сиса может также осуществляться во время создания программы или блока DFB командой ProjectAnalyze Section.

2. В чем назначение модификаторов в языке IL?

Модификаторы влияют на выполнение пред­шествующего оператора.

3. Назовите три способа для вызова функциональных блоков в языке IL.

Чтобы найти имена доступных функциональных блоков и блоков DFB, нужно обратиться к библиотекам блоков. Существуют три способа для вызова функционального блока и блока DFB:

· оператором с CAL и списком входных параметров;

· оператором CAL и загрузкой или сохранением входных параметров;

· с помощью входных операторов.

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

Каждый экземпляр FB/DFB может вызываться только один раз.

4. Для чего служат модификаторы в языке IL?

Модификатор N используется, чтобы инвертировать побитно значение операнда. Модификатор N может применяться только к операндам типа данных ANY_BIT.

Модификатор С используется, чтобы выполнить соответствующую команду, если значение аккумулятора равно 1 (TRUE). Модификатор С может применяться только к операндам типа данных BOOL.

Если модификатор С объединен с модификатором N, соответствующая команда выполняется, только если значение аккумуля­тора равно булеву 0 (FALSE).

Модификатор ( (левая круглая скобка) используется, чтобы задержать оценку операнда до появления оператора (правая круглая скобка). Число операций правой круглой скобки должно быть рав­ным числу модификаторов левой круглой скобки. Круглые скобки могут быть вложенными.

5. Что такое оператор в языке IL?

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

Операторы являются обобщенными, т. е. они автоматически корректируются к типу данных операнда.

6. С помощью какой команды производят прямое объявление адресов в языке IL?

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

Пример объявление прямых адресов приведен на рис. 3.

Рис.3. Объявление прямых адресов

Шрифт ККМ ФЕЛИКС-02К вер.4
Шрифт ККМ ФЕЛИКС-02К вер.4


Dark Souls-3
Dark Souls-3


Шрифт ККМ ФЕЛИКС-02К вер.4
Шрифт ККМ ФЕЛИКС-02К вер.4