ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 10.11.2023
Просмотров: 186
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
КРАТКИЙ ОБЗОР ФУНКЦИОНАЛЬНЫХ ВОЗМОЖНОСТЕЙ
Понятие переменной, имена переменных. в B&RAutomationBasic
Тип данных REAL (FLOAT) С ПЛАВАЮЩЕЙ ТОЧКОЙ
Тип данных ДАТА_И_ВРЕМЯ (DATE_AND_TIME)
Объявления переменных (Declarations)
АрифметическиеОператоры (Arithmetic Operators)
Логическиеоператоры Binary and Logical Operators
Операторы отношения (RelationalOperators)
Условный оператор (Statement) IF
Общая информация о библиотеке STANDARD
Библиотека Timer Function Blocks содержит 6 функциональных блоков:
Тип данных ВРЕМЯ (TIME)
Тип данных ВРЕМЯ может использоваться, чтобы хранить интервалы времени. В памяти процессора интервал времени сохранен в миллисекундах в подписанном 32-разрядном значении. В режиме Monitor и в программе, значение подразделено и отображено в днях, часах, минутах, секундах, и миллисекундах.
Диапазон Значений ВРЕМЕНИ (TIMEValueRange)
Диапазон значения составпяет +/-24 дня. Наименьшее число, которое может быть представлено кроме 0, - T#1ms, что соответствует одной миллисекунде.
Тип данных ДАТА_И_ВРЕМЯ (DATE_AND_TIME)
Тип данных DATE_AND_TIME используется, чтобы хранить информацию о дате. В внутренней памяти, секунды, которые прошли начиная с 1.1.1970 00:00, сохранены в 32-разрядном числе. Значение отображено в формате даты, который соответствуетIEC61131-3.
Как определить тип данных?
Тип переменной должен соответствовать возможному изменению диапазона ее значений. Т.е., если переменная может принимать только два значения 0 или 1, то тип такой переменной должен быть определен как BOOL(БИТ).Константы (Constants)
Константа - число, которое не изменяет своего значения. Есть константы, определенные в системе или в библиотеках, и Вы можете определить вашу собственную "определяемую пользователем" константу. Константы могут быть объявлены в различных формах, соответствуя различному числовой и форматах типа. Константа объявлена с простым оператором присваивания:
константа (constant) = значение (value)
Константа должна иметь имя, соответствующее общим правилам для имен переменной.
Объявления переменных (Declarations)
Для каждой вновь вводимой переменной должен быть определен тип
variable_name : TYPE_NAME
АрифметическиеОператоры (Arithmetic Operators)
B&R Automation Basic обеспечивает стандартные арифметические функции(операторы):
= | присваивание/равно |
+ | сложение, |
- | вычитание и отрицательное значение, |
* | умножение, |
/ | деление |
mod | модуль - целыйостаток от деления чисел. |
Эти операторы могут использоваться на числовых переменных в выражениях для выполнения вычислений. Эти операторы должны быть помещены между двумя переменными как в обычной математике.
Пример (Example)
x = 17
y = 3
result = x + y
Результат сложения 17+3 result = 20.
result = x mod y
Пример (Example)
x = 3
y = 5
a = 10
b = 5
result = x*y + a/b
result = 17.
Логическиеоператоры Binary and Logical Operators
Есть небольшой, но важный набор операторов с булевыми значениями. В одном контексте они используются как битовые операторы, и в другом они используются как логические операторы.
Это операторы: not, and, or, xor. Мы будем смотреть на них отдельно, чтобы Вы не запутываетесь с тем, как они работают в двух различных областях.
Использование в битовых операциях (Binary Use)
Эти операторы воздействуют на переменные поразрядным (bitwise) способом. Это означает, что они сравнивают переменные побитно. Так бит 1 первой переменной - по сравнению с битом 1 из второй переменной, и т.д. Они работают в том же самом как нормальные битовые операции. Эти операторы могут использоваться в операциях вычисления или назначении. Таблица истинности для битовых операций включена здесь для справочника:
Операторы отношения (RelationalOperators)
Операторы отношения:
-
=
<>
>
>=
<
<=
Эти операторы нужны для того, чтобы оценить выполнение условий. Результат их использования является всегда истинным или ложным. Рассмотрим пример использования операторов отношений.
Пример
Если переменная(variable) меньше чем 10, то выполняется набор операторов в стhоках между [if (variable < 10) then] и [endif].
if (variable < 10) then
; набор операторов, которые обрабатываются при выполнении ;этого условие
endif
Условный оператор (Statement) IF
оператор if(если) используется для проверки условного выражения на TRUE(ИСТИНА) или (лог1) и FALSE(ЛОЖЬ) или (лог0).Если условное выражение принимает значение TRUE(ИСТИНА) или (лог1), то выполняются операторы в строках между then и endif. Если условное выражение принимает значение FALSE(ЛОЖЬ) или (лог0).то выполняются операторы в строках после endif.
if (условное выражение) then
выполняемый набор операторов
endif
Данный оператор имеет ключевое значение для изучаемого языка.
Пример
Пусть требуется реализовать двухпозиционный закон управления инфракрасной лампой обогрева поросят по температуре. При температуре выше 250 С обогрев нужно выключить, .при температуре ниже 200 С обогрев нужно включить. Вводим переменные: IK_Lamp типа BOOL; Temp_Ob типа USINT. Пишем программу.
If (Temp_Ob>25) then; проверяем 1-ое условие задачи
IK_Lamp =0; выключаем обогрев
Endif
If (Temp_Ob<20) then; проверяем 2-ое условие задачи
IK_Lamp =1; включаем обогрев
Endif
Вот и все решение, конечно датчик температуры нужно подключить к входу контроллера, а инфракрасную лампу к его выходу.
ЛАБОРАТОРНАЯ РАБОТА №3
Разработка программного обеспечения с реализацией стандартных
функций таймера
Цель работы: изучение возможностей стандартных библиотек и построение простейших программ с использованием логических и временных функций.
-
ПРОГРАММА И МЕТОДИКА РАБОТЫ
-
Изучить теоретические разделы и пример программы Приложения 2. Особое внимание уделить разбору приведенной программы. -
С использованием оборудования лабораторного стенда разработать систему управления, реализующую генерацию последовательности импульсов и их подсчет, после поступления логического сигнала на один из входов контроллера, (рис.3.1).
Реализация алгоритма, заключается в организации последовательной записи лог.1 и лог.0 в произвольно выбранную однобитовую переменную. Параметр t вкл определяет длительность записи лог.1, а параметр t вкл - лог.1 (рис. 3.2.).
Временная диаграмма
Рис. 3.1. Временная последовательность записи лог. 0 и лог. 1 в однобитовую переменную BitVal.
А Л Г О Р И Т М У Т П
Подсчитать N импульсов генератора
Организовать генератор импульсов с параметрами tвкл и tвыкл
Включить выход ОДЕ
Создать импульс на выход ОХУ
нет
да
Рис. 3.1.
Численные значения параметров алгоритма представлены в табл.3.1
Таблица 3.1. Варианты параметров для разных бригад.
Номер бригады | ЗНАЧЕНИЕ ПАРАМЕТРОВ | |||||
tвкл, сек | tвыкл, сек | ОХУ | АВС | N | ОДЕ | |
1 | 1 | 1,5 | Output 05 | Input 01 | 11 | Output 06 |
2 | 2 | 2,5 | Output 04 | Input 02 | 12 | Output 07 |
3 | 3 | 3,5 | Output 03 | Input 03 | 13 | Output 08 |
4 | 4 | 4,5 | Output 02 | Input 04 | 14 | Output 09 |
5 | 5 | 5.5 | Output 01 | Input 04 | 15 | Output 10 |
-
Разработать схемы подключения датчиков и исполнительных механизмов к дискретным входам и выходам панели РР-35. -
Разработать текст управляющей программы на алгоритмическом языке B&R Automation Basic с использованием библиотечных функций таймирования(см. Приложение 3)
-
Включить стенд с микропроцессорным контроллером и ПЭВМ. Загрузить на ПЭВМ систему программирования Automation Studio. -
Создать проект под именем «Lab3_N», где вместо N подставить номер выполняемого варианта(задается преподавателем). -
Присвоить символьные номера дискретным входам и выходам, используя порядковые номера выполняемого варианта. -
Создать циклический объект (выполняемую программу) с использованием алгоритмического языка BASIC : -
Откомпилировать программу, загрузить в USER RAM контроллера и убедится в ее выполнении. -
Оформить отчет. Подготовить контрольные вопросы. Защитить лабораторную работу. Выключить стенд.
2. Контрольные вопросы