LS-Sb87952
.pdf
Если значение переменной температуры больше 75 °С, то в первый канал модуля вывода дискретных сигналов записывается нуль, а в третий канал– единица. Остальные каналы остаются без изменения.
Если значение температуры больше или равно 72 °С и меньше или равно 75 °С, то первый и третий каналы устанавливаются в нуль ( см. табл. 1.1), а остальные каналы остаются без изменения.
1.2.Порядок выполнения работы
1.Нарисовать и собрать схему лабораторного эксперимента, включая модули WAGO 750-461/000-006 и WAGO 750-530.
2.С помощью программы WAGO-I/O-CHECK 2 определить конфигурацию контроллера. Проверить соответствие подключенных модулей заданию, определить адреса аналогового ввода и дискретного вывода. Определить физические адреса каналов ввода и вывода.
3.В среде программирования WAGO-IO-PRO 32 создать новый проект.
Всозданном проекте объявить переменные для работы с каналами ввода и вывода и назначить им соответствующие адреса, определенные при выполнении п. 2.
4.Определить функциональный блок «Пауза» − WAIT − для реализации временной задержки [2].
5.Реализовать основной модуль проекта PLC_PRG на языке, заданном преподавателем (см. рис. 1.1).
6.Определить функцию цифроаналогового преобразования кода АЦП в значение температуры − TRANS_TEMP. Градуировочная характеристика модуля термометра сопротивления − АЦП 750-461/000-006 представлена в прил. 3 ( табл. П. 3.2). Функция преобразования значения кода температуры в вещественное значение должна в качестве входного параметра получать 16разрядное слово-значение кода АЦП и выдавать на выход вещественное значение (рис. 1.2).
VAL |
TRANS_TEMP |
TEMP |
|
|
|
|
|
|
Рис. 1.2. Модуль цифроаналогового преобразования кода
АЦП в значение температуры
Блок объявления функции TRANS_TEMP выглядит следующим образом:
11
FUNCTION TRANS_TEMP: REAL VAR_INPUT
VAL: WORD; END_VAR
Необходимо учитывать, что значение температуры кодируется с помощью дополнительного кода (старший 16-й разряд является знаковым), а значение единицы младшего разряда равно 0.1 °С.
7. Реализовать функции f1 (t1) и f2 (t2) формирования значений дискретного канала вывода в соответствии с текущими значениями первого и второго каналов температуры отдельно: SET_DO_F1 и SET_DO_F2. Для реализации функций использовать логиче-
Temp1 |
|
DO_new |
ские операции. На вход каж- |
|
Set_DO_F1 |
||
|
|
дой функции должно посту- |
|
DO_cur |
|
|
|
|
|
|
пать текущее значение темпе- |
|
|
|
|
Рис. 1.3. Модуль формирования выходных сигналов |
ратуры и текущее значение 8- |
||
модуля дискретного вывода |
канального модуля вывода |
||
|
|
|
|
дискретных сигналов постоянного тока (24 В) WAGO 750-530, а на выход должно выдаваться обновленное значение 8-канального модуля вывода дискретных сигналов постоянного тока
(24 В) – WAGO 750-530 ( рис. 1.3).
Блок объявления функции SET_DO_F1 выглядит следующим образом:
FUNCTION SET_DO_F1: BYTE
VAR_INPUT
TEMP1: REAL;
DO_cur: BYTE;
END_VAR
8.Реализовать каждый шаг исполнительного модуля PLC_PRG с помощью созданных в п. 7 функций формирования дискретных выводов.
9.Откомпилировать проект.
10.В случае обнаружения ошибок на этапе компиляции устранить их и откомпилировать программу заново.
11.В режиме симуляции (опция Online→Simulate должна быть включена) проверить корректность функции TRANS_TEMP, реализующей преобразование кода температуры в значение температуры, используя таблицу градуировочной характеристики (см. табл. П. 3.2).
12
12.В режиме симуляции (опция Online→Simulate должна быть включена) проверить корректность функций Set_DO_F1 и Set_DO_F2.
13.Подключить систему к ПК с помощью конфигурационного кабеля через COM-порт.
14.Включить питание контроллера.
15.Загрузить проект в контроллер с помощью главного меню: Online→Login, а затем Online→Run. Необходимо убедиться, что опция
Online→Simulate выключена.
16.Прошить программу в контроллер, используя опцию Online→Flash.
17.Подключить к каналам модуля WAGO 750-461/000-006 магазины сопротивлений в соответствии со схемой.
18.Изменяя значения магазинов сопротивлений, убедиться в корректной работе контроллера в соответствии с выданным заданием. Также для проверки использовать данные табл. П. 3.2.
19.Составить отчет о проделанной работе.
1.3. Требования к отчету
Отчет должен содержать:
1.Титульный лист, оформленный в соответствии со стандартом.
2.Задание на лабораторную работу.
3.Технические характеристики контроллера и используемых модулей.
4.Принципиальную электрическую схему лабораторного эксперимента.
5.Блок-схему алгоритма, автомат состояний программы управления.
6.Текст программы управления контроллером с комментариями.
7.Результаты эксперимента в виде таблиц.
8.Выводы по проделанной работе и полученным результатам.
1.4.Контрольные вопросы
1.Реализовать функциональный блок WAIT на языке ST.
2.Как следует объявить переменную для доступа к пятому разряду дискретного модуля вывода, если данный модуль расположен по адресу %QB3?
1.5. Варианты заданий к лабораторной работе 1
Сформировать значения дискретных каналов вывода Q в зависимости от значений температуры первого и второго каналов модуля АЦП. Так как используемые дискретные модули вывода являются 8-канальными (см. прил. 2), то для
13
обозначения номера канала используется индекс, например Q1, Q2 и т. д. Пер-
вый канал температуры модуля АЦП далее обозначается как t1, второй – t2.
Таблица 1.2
|
|
|
Состояния каналов дискретного вывода |
|
|||||
N |
ti |
Q1 |
Q2 |
Q3 |
Q4 |
Q5 |
Q6 |
Q7 |
Q8 |
|
|
||||||||
1 |
t1 < 70.5 |
X |
X |
X |
X |
1 |
X |
1 |
0 |
|
t1 ≥ 71 |
X |
X |
X |
X |
0 |
X |
1 |
0 |
|
|
|
|
|
|
|
|
|
|
|
70.5 ≤ t1 < 71 |
X |
X |
X |
X |
X |
X |
0 |
1 |
|
t2 < –5.5 |
X |
X |
1 |
1 |
X |
0 |
X |
X |
|
t2 > –5.1 |
X |
X |
1 |
1 |
X |
1 |
X |
X |
|
–5.5 ≤ t2 ≤ –5.1 |
X |
X |
0 |
0 |
X |
X |
X |
X |
2 |
t1 ≤ 9.7 |
1 |
0 |
X |
X |
0 |
X |
X |
1 |
|
t1 > 10 |
0 |
1 |
X |
X |
0 |
X |
X |
0 |
|
9.7 < t1 ≤ 10 |
X |
X |
X |
X |
1 |
X |
X |
X |
|
t2 < 101 |
X |
X |
0 |
X |
X |
0 |
X |
X |
|
t2 ≥ 101 |
X |
X |
1 |
X |
X |
1 |
X |
X |
3 |
t1 ≤ –2.4 |
1 |
0 |
X |
X |
X |
X |
X |
1 |
|
t1 > –2.4 |
0 |
1 |
X |
X |
X |
X |
X |
0 |
|
t2 < 148 |
X |
X |
0 |
1 |
1 |
X |
0 |
X |
|
t2 ≥ 150 |
X |
X |
1 |
1 |
X |
X |
1 |
X |
|
148 ≤ t2 < 150 |
X |
X |
X |
0 |
X |
X |
X |
X |
4 |
t1 ≤ –2.4 |
1 |
0 |
X |
X |
X |
X |
X |
1 |
|
t1 > –2.4 |
0 |
1 |
X |
X |
X |
X |
X |
0 |
|
t2 < 148 |
X |
X |
0 |
1 |
1 |
X |
0 |
X |
|
t2 ≥ 150 |
X |
X |
1 |
1 |
X |
X |
1 |
X |
|
148 ≤ t2 < 150 |
X |
X |
X |
0 |
X |
X |
X |
X |
5 |
t1 ≤ –20 |
X |
X |
X |
X |
0 |
0 |
X |
X |
|
t1 > 20 |
X |
X |
X |
X |
1 |
1 |
X |
X |
|
t2 < –2 |
0 |
0 |
1 |
X |
X |
X |
X |
X |
|
t2 ≥ 2 |
0 |
0 |
0 |
X |
X |
X |
X |
X |
|
–2 ≤ t2 < 2 |
1 |
1 |
X |
X |
X |
X |
X |
X |
Примеры вариантов заданий приведены в табл. 1.2.
14
Лабораторная работа 2 ОСНОВЫ РАБОТЫ С МОДУЛЯМИ АНАЛОГО-ЦИФРОВОГО
И ЦИФРОАНАЛОГОВОГО ПРЕОБРАЗОВАНИЙ
Цель работы: ознакомление с принципами разработки измерительных каналов при использовании модулей АЦП и ЦАП промышленной автоматики, освоение основ программирования модулей АЦП и ЦАП, анализ результатов.
Задание:
1. Ознакомиться с характеристиками контроллера и измерительных модулей:
4-канального аналогового модуля ввода WAGO 750-457;
2-канального аналогового модуля вывода WAGO 750-556;
8-канального модуля ввода дискретных сигналов постоянного то-
ка (24 В) – WAGO 750-430.
2.Получить задание у преподавателя и разработать структуру и схему соединений, обеспечивающих выполнение задания лабораторной работы. Программа для ПЛК WAGO должна быть реализована на языке, заданном преподавателем.
3.Разработать алгоритм управления измерительными каналами, составить блок-схему программы (если требуется автомат состояний).
4.Собрать схему эксперимента и, после проверки преподавателем, включить ее.
5.Написать и отладить программу управления проведением эксперимен-
та с помощью WAGO-I/O-PRO-32.
6.Загрузить программу в контроллер и провести эксперимент.
7.Составить отчет о выполнении лабораторной работы.
2.1. Подготовка к работе
Данная лабораторная работа предназначена для ознакомления с принципами программирования модулей АЦП и ЦАП WAGO.
Для выполнения работы необходимо собрать лабораторную установку на базе контроллера WAGO, так чтобы выходы модуля ЦАП были непосредственно подключены ко входам АЦП.
В качестве исходных данных служат 2 массива значений напряжений A и A*, которые далее будут использоваться для выдачи данных по первому и второму каналам модуля ЦАП соответственно. Через равные интервалы вре-
15
мени необходимо реализовать считывание значений с модуля АЦП и сравнить полученные значения с исходными.
8-канальный модуль ввода дискретных сигналов постоянного тока WAGO 750-430 используется для определения номера измерительного канала ЦАП и АЦП: первый или второй.
Опрос модуля дискретного ввода DIn
|
Да |
|
Нет |
|
|
|
|
||
|
|
DIn = 0 |
||
|
|
|
|
|
i = i + 1 |
|
i = i + 1 |
||
|
|
|
|
|
|
|
|
|
|
Выполнение программного |
|
Выполнение программного |
||
АЦП (Ai) |
|
АЦП (A*i) |
||
и выдача значения |
|
и выдача значения |
||
по первому каналу модуля |
|
по второму каналу модуля |
||
аналогового вывода |
|
аналогового вывода |
||
|
|
|
|
|
|
|
|
|
|
Пауза m секунд |
|
Пауза k секунд |
||
|
|
|
|
|
|
|
|
|
|
Считывание значения с пер- |
|
Считывание значения со вто- |
||
вого канала модуля аналого- |
|
рого канала модуля аналого- |
||
вого ввода и выполнение |
|
вого ввода и выполнение |
||
программного ЦАП = Bi |
|
ЦАП = B*i |
||
|
|
|
|
|
|
|
|
|
|
Сравнение результатов |
|
Сравнение результатов |
||
АЦП и ЦАП: |
|
АЦП и ЦАП: |
||
Сi = Ai − Bi |
|
С*i = A*i – B*i |
||
|
|
|
|
|
|
|
|
|
|
Рис. 2.1. Алгоритм работы контроллера узла WAGO при измерении температуры и индикации результатов измерений с помощью модуля дискретного вывода
16
Перед началом работы анализируется значение n-канала модуля дискретного ввода DI. Если значение данного канала равно нулю, то далее необходимо последовательно выполнить программно аналого-цифровое преобразование для первого элемента первого массива A (A1) и выдать полученное значение по первому каналу модуля ЦАП WAGO. Через m секунд необходимо считать значение с первого канала модуля АЦП WAGO и выполнить программно ЦАП – Bi, а затем вычислить разность Сi = Ai − Bi. Данный алгоритм необходимо применить ко всем элементам массива A. После этого необходимо опять проанализировать состояние n-канала модуля дискретного ввода DI. Если значение данного канала равно единице, то данный алгоритм должен быть применен для второго канала, используя исходные данные из массива A*. При работе со вторым каналом используется пауза k секунд.
На блок-схеме алгоритма (рис. 2.1) приняты следующие обозначения: DIn (Digital Input) – значение n-канала 8-канального модуля ввода дискретных сигналов постоянного тока (24 В) WAGO 750-430; Ai , Bi и Ci – массивы данных исходных, измеренных и их разности соответственно для первого канала; A*i , B*i и C*i – массивы данных исходных, измеренных и их разности соответственно для второго канала.
2.2.Порядок выполнения работы
1.Нарисовать и собрать схему лабораторного эксперимента, включая модули WAGO.
2.С помощью программы WAGO-I/O-CHECK 2 определить конфигурацию контроллера. Проверить соответствие подключенных модулей заданию, определить адреса аналогового ввода и дискретного вывода. Определить физические адреса каналов ввода и вывода.
3.В среде программирования WAGO-IO-PRO 32 создать новый проект. В созданном проекте объявить переменные для работы с каналами ввода и вывода и назначить им соответствующие адреса, определенные при выполнении п. 2.
4.Определить функциональный блок «Пауза» − WAIT − для реализации временной задержки [2].
5.Реализовать основной модуль проекта PLC_PRG на языке заданном преподавателем.
17
6. Определить типы данных для реализации алгоритма, описанного в 2.1. Для каждого канала должно быть определено 3 массива. Например, для первого канала должны быть объявлены следующие структуры данных:
VAR
A:ARRAY[1..10] of REAL;
B:ARRAY[1..10] of REAL;
C:ARRAY[1..10] of REAL;
END_VAR
Инициализация элементов массива может быть выполнена следующим образом сразу после объявления:
arr1 : ARRAY [1..5] OF INT := 1,2,3,4,5;
Для доступа к элементам массива используется следующий синтаксис:
<Имя_массива>[Индекс1]
Например, доступ к третьему элементу массива arr1 осуществляется так:
arr1 [3]
7. Определить функцию программного аналого-цифрового преобразо-
|
|
|
вания значения напряжения |
|||
Value |
|
|
в цифровой код – ADC. Ха- |
|||
|
|
|||||
|
|
|
рактеристики модуля, такие, |
|||
Min_Val |
ADC |
Result |
как |
диапазон |
выходного |
|
|
|
напряжения, |
разрядность |
|||
Max_Val |
|
|
||||
|
|
|
|
|
||
|
|
|
модуля WAGO, представле- |
|||
Length |
|
|
ны в прил.4 (таблица). Дан- |
|||
|
|
|
||||
|
|
|
ная |
функция |
в качестве |
|
Рис. 2.2. Модуль программного АЦП |
||||||
|
|
|
||||
для формирования кода для ЦАП |
входных параметров должна |
|
|
|
получать (рис. 2.2): |
значение напряжения, которое необходимо преобразовать в код;
диапазон значений модуля ЦАП: минимальное и максимальное значения;
разрядность ЦАП.
Блок объявления функции ADC выглядит следующим образом:
FUNCTION ADC: WORD VAR_INPUT
Value: REAL;
Min_Val: REAL;
18
Max_Val: REAL;
Length: BYTE;
END_VAR
8.Определить функцию программного цифроаналогового преобразования значения напряжения в цифровой код – DAC. Характеристики модуля, такие, как диапазон выходного напряжения, разрядность модуля WAGO представлены в прил. 5(таблица). Данная функция в качестве входных параметров должна получать:
значение кода, которое необходимо преобразовать в напряжение;
диапазон значений модуля АЦП: минимальное и максимальное значения;
разрядность АЦП.
9.Реализовать алгоритм, описанный в 2.1.
10.Откомпилировать проект.
11.В случае обнаружения ошибок на этапе компиляции устранить их и откомпилировать программу заново.
12.Подключить систему к ПК с помощью конфигурационного кабеля через COM-порт.
13.Включить питание контроллера.
14.Загрузить проект в контроллер с помощью главного меню: Online→Login, а затем Online→Run. Необходимо убедиться, что опция
Online→Simulate выключена.
15.Прошить программу в контроллер, используя опцию Online→Flash.
16.Составить отчет о проделанной работе.
2.3. Требования к отчету
Отчет должен содержать:
1.Титульный лист, оформленный в соответствии со стандартом.
2.Задание на лабораторную работу.
3.Технические характеристики контроллера и используемых модулей.
4.Принципиальную электрическую схему лабораторного эксперимента.
5.Блок-схему алгоритма, автомат состояний программы управления.
6.Текст программы управления контроллером с комментариями.
7.Результаты эксперимента в виде таблиц.
8.Выводы по проделанной работе и полученным результатам.
19
2.4.Контрольные вопросы
1.Как следует объявить переменные для доступа к младшему и старшему байтам аналогового модуля вывода, если он расположен по адресу %QW7?
2.Корректно следующее объявление массива? arr2 : ARRAY [0..2,3..4] OF INT;
3.Какими значениями будет проинициализирован массив? arr2 : ARRAY [1..2,3..4] OF INT := 1,3(7);
2.5.Варианты заданий к лабораторной работе 2
Примеры вариантов заданий приведены в таблице.
|
Размер- |
|
|
Временная |
|
||
|
ность |
|
|
Номер канала |
|||
Вари- |
Значения массивов |
задержка, с |
|||||
масси- |
модуля |
||||||
ант |
|
|
|
|
|||
вов |
|
|
|
|
цифрового входа |
||
|
А |
А* |
n |
k |
|||
|
А и А* |
|
|||||
|
|
|
|
|
|
||
1 |
5 |
−7, 3, 0, −1, 16 |
6, 3, −17, −1, 0 |
1 |
2 |
1 |
|
|
|
|
|
|
|
|
|
2 |
7 |
6, 0, −10, 11, 3, |
−3, 8, −11, 5, 6, |
1.5 |
3 |
2 |
|
4, −2 |
0, −7 |
||||||
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
3 |
6 |
5, −7, −10, 7, 3, |
−3, 15, −8, 0, |
1 |
4 |
3 |
|
19 |
−1, 6 |
||||||
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
4 |
5 |
−10, 0, 9, −4, 16 |
−3, −1, 6, 0, 10 |
2 |
6.5 |
4 |
|
|
|
|
|
|
|
|
|
5 |
10 |
1, −10, 0, −1, |
1, −10, 0, −1, |
1.3 |
2 |
5 |
|
14, 5, −3, 8, −9 |
14, 5, −3, 8, −9 |
||||||
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
6 |
5 |
−1, −10, 5, −14, |
−9, −5, 18, 10 |
1.1 |
3.3 |
6 |
|
−8 |
|||||||
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
7 |
7 |
5, −2, −6, 10, 0, |
9, 0, 10, −6, 7, |
0.5 |
2 |
7 |
|
−3, 4 |
−2, 15 |
||||||
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
8 |
9 |
−5, 6, −9, 16, |
3, 8, −6, 0, −14, |
0.9 |
2.7 |
8 |
|
−1, 0, 3, 8, −6 |
−10, 7, −2, 1 |
||||||
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
Список литературы
1. Петров И. В. Программируемые контроллеры. Стандартные языки и приемы прикладного программирования. Сер. «Библиотека инженера» / Под ред. Б. П. Дьяконова. М.: ООО «СОЛОН-Пресс», 2004.
2.Программирование логических контроллеров: Методические указания
клабораторным работам/ Сост.: В. В. Алексеев, К. О. Комшилова, П. Г. Королев. СПб.: Изд-во СПбГЭТУ«ЛЭТИ», 2007.
20
