УТС 7 семестр / ПРСУ6
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра АПУ
отчет
по лабораторной работе №6
по дисциплине «Проектирование распределенных систем управления»
Тема: Разработка программы преобразования аналогового сигнала
Студенты гр. 8391 |
|
Волков А.В. |
|
|
Орещенко Н.В. |
|
|
Перевертайло Д.А. |
|
|
Петрухина М.С. |
Преподаватель |
|
Абрамкин С.Е. |
Санкт-Петербург
2021
Цель работы: получение навыков разработки программного блока.
Вариант задания:
Таблица 1
№ Вар. |
№ AI |
Диапазон сигнала датчика |
Диапазон измерения |
||||
3 |
1 |
4 |
20 |
мА |
-15 |
35 |
°С |
|
2 |
-1 |
1 |
В |
0 |
100 |
Па |
|
3 |
-5 |
5 |
В |
-50 |
50 |
°С |
|
4 |
0 |
20 |
мА |
0 |
5 |
м |
|
5 |
-10 |
10 |
В |
-15 |
25 |
°С |
Создадим функциональный блок, который будет преобразовывать аналоговые переменные.
Код функционального блока:
FUNCTION_BLOCK FB_ACP
VAR_TEMP
// Temporary Variable
END_VAR
VAR_INPUT
// Входные параметры
IN:INT; // Значение с АЦП
HI_LIM:INT; // Верхний предел диапазона сигнала датчика
LO_LIM:INT; // Нижний предел диапазона сигнала датчика
HI_LIM_MES:INT; // Верхний передел диапазона измерения
LO_LIM_MES:INT; // Нижний передел диапазона измерения
END_VAR
VAR_OUTPUT
// Выходом являются
// OUT1 – Выход сигнала датчика
// OUT2 – Измеряемое значение
OUT1:REAL;
OUT2:REAL;
END_VAR
OUT1 := (IN /27648.0) * (HI_LIM - LO_LIM) + LO_LIM;
OUT2 := (IN /27648.0) * (HI_LIM_MES - LO_LIM_MES) + LO_LIM_MES;
END_FUNCTION_BLOCK
Укажем имя функционального блока в таблице символов, а также создадим блоки данных для 5 реализаций блока FB_ACP.
Рис.1. Таблица символов
Код дополним объявлением блоков данных:
DATA_BLOCK ACP_EKZ1 FB_ACP
BEGIN
END_DATA_BLOCK
. . .
DATA_BLOCK ACP_EKZ5 FB_ACP
BEGIN
END_DATA_BLOCK
Вызовем внутри организационного блока пять экземпляров функционального блока FB1, передадим в них параметры в соответствии с вариантом задания.
Рис.2. Код организационного блока OB1
Выходные значения расположены в таблице переменных в порядке, соответствующем варианту, начиная с 22 строки. К примеру, первые две строки — сигнал датчика в миллиамперах и значение измеряемого значения в градусах Цельсия (16 мА и 22.5 градуса). AN_IN1 … AN_IN5 – выход 5 разных АЦП.
Рис.3. Пример работы программы