Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СУТП (для К.В.П. от Р.И.Р.).doc
Скачиваний:
49
Добавлен:
12.08.2019
Размер:
7.31 Mб
Скачать

Вводные понятия по использованию возможностей библиотек системы программирования b&r Automation Studio

Система программирования B&R Automation Studio содержит мощный пакет библиотек, реализующие наиболее часто встречающиеся при построении систем управления функции. Сюда относятся функции математические, тригонометрические, временные, счетные, цифровой фильтрации, PID-управления и многие другие. Библиотеки разбиты в соответствии с их функциональным назначением. Использование стандартных функций библиотек позволяет значительно сократить трудозатраты на разработку прикладных программ и повысить их эффективность. Библиотеки (Libraries) формируют интерфейс между прикладной программой и мощными возможностями программного обеспечения и оборудования системы программирования. Ввод составляющих интерфейсов, типы данных, используемых в библиотеке и константах сделан в табличной форме.

Общая информация о библиотеке standard

Библиотека STANDARD содержит стандартные функциональные блоки и функции, соответствующие IEC1131-3.

Функциональные блоки и функции разделены на следующие области:

  • Установка/Сброс и выделение фронтов (Setting/Resetting and Evaluating Edges)

  • Счетчики (Counter Function Blocks)

  • Функции, работающие с переменными типа СТРОКА (STRING Handling Functions).

Из этой библиотеки рассмотрим некоторые стандартные функции из раздела Таймеры(Timer Function Blocks).

Библиотека Timer Function Blocks содержит 6 функциональных блоков:

TOF()  (Switch off delay) (Выключение с задержкой) TON() (Switch on delay) (Включение с задержкой) TP() (Pulse) (Импульс с задержкой)

TOF_10ms() (Switch off delay with 10 ms base) (Выключение с задержкой и дискретностью 10 ms)

TON_10ms() (Switch on delay with 10 ms base ) (Выключение с задержкой и дискретностью 10 ms)

TP_10ms() Pulse with 10 ms base

Рассмотрим для примера функциональный блок TON_10ms()

STANDARD - TON_10ms()

The TON_10ms function block implements a switch on delay based on 10 ms steps.

Parameter

I/O

Parameter

Data Type

Description

IN

IN

BOOL

Input signal.

IN

PT

UDINT

Delay time in 10 ms steps

OUT

Q

BOOL

Output signal, the rising edge of the input signal is delayed by PT.

OUT

ET

UDINT

Elapsed time in 10 ms increments

Call Syntax (Automation Basic)

TON_10ms(IN,PT,Q,ET)

Рис. П.3.1. Временная диаграмма функции TON_10ms(IN,PT,Q,ET)

Описание работы

Время задержки задается переменной PT с дискретностью 10 милисекунд. Например, если PT = 1, то время задержки 10 ms, соответственно при 100 будет 1000 ms = 1 секунда.

Если переменная IN находится в состоянии FALSE(лог.0), то выходная переменная Q находится в состоянии FALSE и переменная ET имеет значение 0.

Если переменная IN принимает состояние TRUE(лог.1), начинается отсчет времени с шагом(дискретностью) 10 мсек, пока значение ET не равно значению PT. Переменная Q примет значение TRUE(лог.1), если состояние IN = TRUE , а ET = PT. В противном случае состояние Q = FALSE. В результате Q принимает логическую 1, если время (определенное с дискретностью 10 миллисекунд) в PT истекло.

Пример

Пусть требуется реализовать двухпозиционный с выдержкой времени закон управления инфракрасной лампой обогрева поросят по температуре. Если температура в течение 20 сек выше 250 С обогрев нужно выключить, .если температура течение 30 сек ниже 200 С обогрев нужно включить.

Вводим переменные: IK_Lamp типа BOOL; Temp_Ob типа USINT. Пишем программу.

Для использования стандартных функций таймирования необходимо в основном меню выбрать функцию Insert FBK, а затем в всплывшем меню (рис. П3.2) выбрать необходимую библиотеку(в нашем случае STANdART) и требуемый функциональный блок(в нашем случае TON_10ms(IN,PT,Q,ET))

При этом каждый вводимый блок вы должны задекларировать и имеется возможность присвоения индивидуального имени и комментария (рис. П.3.3)

Рис.П.3.2. Порядок выбора и вставки в текст управляющей программы стандартных функций из библиотек B&R Automation Studio.

Рис. П.3.3. Декларация типа, имени и комментарий к вводимому функциональному блоку.

(* cyclic program *)

;программа предназначена для управления

;обогревом поросят с использованием

;выдержки времени

;

;формируем контроль времени

;превышения заданной температуры

TON_10ms_0.IN= Prev_Temp; включение таймера

TON_10ms_0.PT= 2000; задание интервала задержки

TON_10ms_0 FUB TON_10ms();

FiksPrev = TON_10ms_0.Q;срабатывание таймера

;проверка температуры на перегрев

if Temp_Ob>25 then

Prev_Temp=1 ;

else

Prev_Temp=0;

endif

;проверка температуры на недогрев

if Temp_Ob<20 then

Ned_Temp=1 ;

else

Ned_Temp=0;

endif

;формируем контроль времени

;недостижения заданной температуры

TON_10ms_1.IN= Ned_Temp;

TON_10ms_1.PT= 3000;

TON_10ms_1 FUB TON_10ms()

FiksNed=TON_10ms_1.Q;

;отключение обогрева

if FiksPrev then;

IK_Lamp=0;

endif

;

;включение обогрева

if FiksNed then;

IK_Lamp=1;

endif

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