- •Лабораторная работа №1 «Создание программы на языке fbd»
- •1. Охарактеризуйте язык функциональных блок-схем fbd.
- •Лабораторная работа №2 «Создание программы на языке ld»
- •Лабораторная работа №3 «Создание программы на языке sfc»
- •Лабораторная работа №4 «Создание программы на языке st»
- •Лабораторная работа №5 «Создание программы на языке il»
Лабораторная работа №5 «Создание программы на языке il»
Задание: создать программу на языке IL согласно условиям задания 1.
Решение: используем команду VAR…END_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 |
Рис. 12 – Окно редактора переменных
Ответы на контрольные вопросы:
1.Охарактеризуйте язык списка инструкций IL.
Текстовый язык IL(InstructionList) относится к ассемблероподобным языкам, т. е. к языкам низкого (машинного) уровня, что существенно облегчает, например, вызов функциональных блоков и функций «условно» или «безусловно», выполнение назначений и условных или безусловных переходов внутри секции.
Язык IL, позволяет создавать высокоэффективные и оптимизированные функции. Его можно рекомендовать для написания наиболее критических мест в программе.
Ассемблероподобные языки использовались для программирования компьютеров в 50-е годы прошлого века и все еще предлагаются некоторыми изготовителями ПЛК, особенно программистами, поддерживающими микроРС. Программу можно написать с помощью любого текстового редактора.
При вводе ключевых слов, разделителей и комментариев в редакторе предусмотрена непосредственная по буквам проверка. При обнаружении ключевого слова, разделителя или комментария они идентифицируются через цветовое оттенение. При введении несанкционированных ключевых слов (назначений или операторов) они будут также идентифицироваться через цветовое оттенение.
Согласно стандарту IEC61131-3 ключевые слова должны быть введены в символах верхнего регистра.
Пробелы и метки табуляции не влияют на синтаксис, они могут использоваться везде.
Генерация объектного кода вместе с проверкой синтаксиса будет выполняться, когда секция закрыта. Любые найденные ошибки затем отображаются в окне сообщений. Однако проверка синтаксиса может также осуществляться во время создания программы или блока DFBкомандойProject→AnalyzeSection.
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?
Объявление прямых адресов. В этом объявлении каждому используемому прямому адресу, который имеет тип данных, отличающийся от заданного по умолчанию типа данных, назначается тип данных по выбору.
Пример объявление прямых адресов приведен на рисунке 1.
Рис.1– Объявление прямых адресов