Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Языки пр в Concept.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
1.87 Mб
Скачать

6.4. Пример программы на языке il

Ниже приведен листинг программы управления установкой для смешивания жидкостей, алгоритм работы которой, подключение датчиков и выходных устройств к ПЛК, объявление переменных приведены в п. 2.4. В программе дополнительно введены две переменные SA1 и SA2 типа BOOL, которые используются для реализации трех состояний конечного автомата.

(*Declaration EFB*)

VAR

Timer : TON;

END_VAR

(*Invocation EFB*)

CAL Timer(IN:=SA2, PT:=t#10s)

(*Transformation of a code temperature*)

LD DTemp

UINT_TO_REAL

SUB 6400.0

DIV 256.0

GT 70.0

ST TUp

(*Control of state SA1*)

LD Start

S SA1

LD SA2

R SA1

(*Control of state SA2*)

LD TUp

S SA2

LDN DU1

R SA2

(*Control of valve К1*)

LD SA1

ANDN DU2

AND Stop

ST K1

(*Control of valve К2*)

LD SA1

AND DU2

ANDN DU3

AND Stop

ST K2

(*Control of heater - Nagr*)

LD SA1

AND DU3

ANDN TUp

AND Stop

ST Nagr

(*Control of electric motor*)

LD SA1

AND DU2

AND Stop

OR( SA2

AND DU3

AND Stop

)

ST KM

(*Control of valve К3*)

LD Timer.Q

AND Stop

ST K3

Вопросы для самоконтроля

  1. Назовите основные особенности языка IL.

  2. Что такое инструкция, оператор, операнд, модификатор, метка и аккумулятор?

  3. Перечислите операторы языка IL и их функции.

  4. Перечислите модификаторы языка IL и их функции.

  5. Назовите особенности обращения к функциям и функциональным блокам.

Задания для самостоятельной работы

  1. Напишите программу вычисления функции, заданной выражением RESULT=(SENSOR_1 – SENSOR_2)/2*(SENSOR_3)2.

  2. Напишите программу реализации логической функции для переменных типа BOOL: .

  3. Напишите программу управления индикацией: LAMP_R=1, если выполняется SENSOR_P > 10.0; LAMP_G=1, если выполняется 8.0 ≤ SENSOR_P ≤ 10.0; LAMP_B=1, если выполняется 8.0 < SENSOR_P.

  4. Напишите программу реализации генератора прямоугольных импульсов с параметрами: частота импульсов – 0,8 Гц, длительность – 0,1 с.

  5. Напишите программу управления установкой по п. 2.3, в которой необходимо дополнительно предусмотреть останов установки и выдачу аварийной сигнализации в случае срабатывания реле токовой защиты электродвигателя мешалки.

Заключение

В пособии описаны языки программирования FBD, LD, SFC, ST и IL в среде Concept. При первом знакомстве с ними может возникнуть вопрос, какие из них следует применять? При выборе языка авторы советуют придерживаться приведенных ниже рекомендаций.

1. Поведение сложного объекта автоматизации можно описать в виде конечного автомата (автомата с памятью). Состояния конечного автомата наиболее просто и наглядно реализуются на языке SFC. На нем легко и естественным образом описываются технологические процессы, что делает его понятным для специалистов различного профиля. Кроме того он удобен для описания как последовательных, так и параллельных процессов. В его шагах легко реализуются временные задержки. Недостатком языка является отсутствие в нем возможности реализации математических вычислений.

2. Языки FBD, LD, ST и IL позволяют достаточно просто реализовывать математические вычисления, но конечные автоматы программируются на них неудобным и неочевидным образом. Кроме того, использование этих языков приводит к увеличению сложности интерпретации, анализа и отладки программ по мере возрастания их объема.

3. Напрашивается очевидное построение программы, реализующей конечный автомат – на языке SFC следует реализовывать состояния автомата и переходы между состояниями, а математические операции – на оном из языков FBD, LD, ST, IL или их комбинации. Выбор языка (языков) определяется его возможностями и степенью подготовки программиста. При выборе следует учесть, что язык IL имеет ряд недостатков, к которым относятся: высокая трудоемкость программирования, трудность модификации написанных на нем программ, малая степень «видимого» соответствия исходного текста программы и решаемой задачи.

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

Изучение языков программирования невозможно без навыков практического программирования ПЛК, которые студенты получают на лабораторных работах и в результате самостоятельного изучения данного пособия, а также дополнительной литературы, посвященной программным [1-3] и аппаратным [4-7] средствам ПЛК.