Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Программирование технологических контроллеров в среде Unity. Учебное пособие.pdf
X
- •ВВЕДЕНИЕ
- •1.1. Принцип действия системы промышленной автоматизации
- •2.1. Структура программируемого логического контроллера
- •2.2. Конструктивное исполнение контроллеров
- •2.3. Модули ввода-вывода
- •2.4. Языки и среды программирования логических контроллеров
- •2.5. Триггеры, таймеры, счетчики
- •Значение
- •Значение
- •2.6. Математические операции и команды работы с массивами
- •3. ТИПЫ ПЕРЕМЕННЫХ
- •3.1. Элементарные типы данных
- •3.2. Представление элементарных типов данных
- •3.4. Система адресации переменных Telemecanique
- •4. ПАКЕТ ПРОГРАММИРОВАНИЯ Unity Pro
- •4.1. Общие сведения
- •4.2. Структура пакета Unity Pro
- •4.3. Интерфейс пользователя Unity Pro и его составные части
- •4.4. Иерархическое построение программы ПЛК
- •4.5. Редакторы языков программирования Unity Pro
- •4.6. Соединение терминала с ПЛК
- •5.1. Настройки проекта
- •5.2. Конфигурирование контроллера Premium
- •5.3. Работа с переменными
- •5.4. Структура приложения
- •5.5. Программирование с использованием блоков FBD
- •6.1. Введение
- •6.3. Библиотека для управления аналоговым вводом/выводом
- •6.3.2. Блоки настройки конфигурации
- •6.3.2.1. Блок конфигурации модуля ACI 030 00 (ACI030)
- •6.3.2.2. Блок конфигурации модуля AC0 020 00
- •6.3.2.3. Блок конфигурации модуля ATI 030 00
- •6.3.2.4. Блок конфигурации модуля ARI 030 00
- •6.3.2.5. Блок конфигурации модуля AVI 030 00
- •6.3.2.6. Блок конфигурации модуля AVO 020 00
- •6.3.2.8. Блок конфигурации главного модуля (QUANTUM)
- •6.3.2.9. Блок конфигурации расширителя объединенной платы (XBP)
- •6.3.3. Блоки масштабирования
- •6.3.3.1. Блок нормализации аналоговых входов (I_NORM)
- •6.3.3.3. Блок преобразования физических аналоговых входов (I_PHYS)
- •6.3.3.4. Блок преобразования физических аналоговых входов со статусом предупреждения (I_PHYS_WARN)
- •6.3.3.5. Блок масштабирования аналоговых входов (I_SCALE)
- •6.3.3.6. Блок масштабирования аналоговых входов со статусом предупреждения (I_SCALE_WARN)
- •6.3.3.7. Блок преобразования необработанных значений аналоговых входов (I_ROW)
- •6.3.3.8. Блок нормализации аналоговых выходов (O_NORM)
- •6.3.3.11. Блок имитации необработанных сигналов аналоговых входов (I_RAW_SIM)
- •6.3.4. Блоки отладки аналогового ввода/вывода
- •6.3.4.1. Блок линеаризации аналоговых входов (I_FILTER)
- •6.4.2. Регуляторы (Controller)
- •6.4.3. Арифметические операции (Mathematics)
- •6.4.4. Измерения (Measurement)
- •6.4.5. Устройства сопряжения с объектом (Output Processing)
- •6.4.6. Формирование сигналов задания (Setpoint Managment)
- •6.6. Управление с обратной связью (CLC)
- •6.6.1. Типовые динамические звенья
- •6.6.1.1. Блок запаздывания (DELAY)
- •6.6.1.2. Интегратор с ограничением выхода (INTEGRATOR1)
- •6.6.1.3. Апериодическое звено (фильтр) первого порядка (LAG1)
- •6.6.1.5. Ограничитель скорости первого порядка (LIMV)
- •6.6.1.6. Дифференциатор с запаздыванием (SMOOTH_RATE)
- •6.6.2. Регуляторы
- •6.6.2.1. Пропорционально-интегральный регулятор (PI1)
- •6.6.2.2. Пропорционально-интегрально-дифференциальный регулятор (PID1)
- •6.6.2.3. ПИД-регулятор с параллельной структурой (PIDP1)
- •6.6.3. Управление с обратной связью для профессионалов (CLC_PRO)
- •6.6.3.1. Генератор функций (FGEN)
- •6.6.3.2. Фильтр второго порядка (LAG2)
- •6.7. Автоматизированная настройка регулятора в пакете Unity
- •6.8. Упражнения для самостоятельной работы
- •ЗАКЛЮЧЕНИЕ
- •ЛИТЕРАТУРА

131
Ошибки функционирования
Параметр
Тип данных
Значение
CHANNEL
ANL_IN
Входное значение
Y
REAL
Физическое значение
0: нет предупреждения
I_PHYS_WARN
CHANNEL Y
WARN
ANL_IN
REAL
BOOL
Сообщение об ошибке появится:
• если входной канал не сконфигурирован; в этом случае необхо-
димо проверить элементарный функциональный блок (EFB) для соответствующего модуля ввода/вывода;
• если входное значение выше или ниже допустимого диапазона
(например, –1 V или 6 V при диапазоне от 0 до 5 V).
Замечание. Если необходимо отобразить состояние выхода за пре-
делы допустимого диапазона входных/выходных значений, используйте функциональный блок I_PHYS_WARN.
6.3.3.4. Блок преобразования физических аналоговых входов со статусом предупреждения (I_PHYS_WARN)
Краткое описание
Функциональный блок поддерживает аналоговые входные значе-
ния (напряжение, ток или температуру) как физические величины в
вещественном формате с плавающей точкой (REAL).
Кроме того, функциональный блок имеет логический выход WARN
для отображения состояния аналогового входа данного блока.
Представление
• Символическое
• Параметрическое
WARN BOOL
Ошибки функционирования
Сообщение об ошибке появится:
• если входной канал не сконфигурирован; в этом случае необхо-
димо проверить элементарный функциональный блок (EFB) для соответствующего модуля ввода/вывода;
1: есть предупреждение

132
• если входное значение выше или ниже допустимого диапазона
Параметр
Тип данных
Значение
CHANNEL
ANL_IN
Входное значение
MN
REAL
Вход масштабирования, 0 %
MX
REAL
Вход масштабирования, 100 %
Y
REAL
Масштабированное значение
I_SCALE _WARN
CHANNEL
MX
ANL_IN
REAL
REAL
REAL
(например, –1 V или 6 V при диапазоне от 0 до 5 V);
• если соединенный аналоговый вход функционального блока не
разрешен для формирования информации состояния и, следовательно,
выход WARN не активен, в этом случае необходимо использовать
функциональный блок I_PHYS.
6.3.3.5. Блок масштабирования аналоговых входов (I_SCALE) Краткое описание
Функциональный блок преобразует данные из 16-битового целого
формата в вещественный формат с плавающей точкой (REAL).
Входы масштабирования MN и MX заранее определяют диапазон
выходных значений. Вход MN соответствует 0 %, вход MX – 100 %.
Целое входное значение отображается в формате с плавающей точкой.
В случае превышения диапазона для текущего формата данных (например, 16 бит, +/– 10 V) диапазон выходных значений в формате с
плавающей точкой может превышать 100 % (например, составит
101.6 %).
Представление
• Символическое
MN Y
• Параметрическое
Ошибки функционирования
Сообщение об ошибке появится:
• если входной канал не сконфигурирован; в этом случае необхо-
димо проверить элементарный функциональный блок (EFB) для соответствующего модуля ввода/вывода;

133
• если входное значение выше или ниже допустимого диапазона
I_SCALE _WARN
CHANNEL
MX WARN
ANL_IN
REAL
REAL
REAL
(например, –1 V или 6 V при диапазоне от 0 до 5 V).
Замечание. Если необходимо отобразить состояние выхода за пре-
делами допустимого диапазона входных/выходных значений, используйте функциональный блок I_SCALE _WARN.
6.3.3.6. Блок масштабирования аналоговых входов со статусом предупреждения (I_SCALE_WARN)
Краткое описание
Функциональный блок преобразует данные из 16-битового целого
формата в вещественный формат с плавающей точкой (REAL). Входы
масштабирования MN и MX заранее определяют диапазон выходных
значений. Вход MN соответствует 0 %, вход MX – 100 %. Целое входное значение отображается в формате с плавающей точкой. В случае
превышения диапазона для текущего формата данных (например,
16 бит, +/– 10 V) диапазон выходных значений в формате с плавающей
точкой может превышать 100 % (например, 101.6 %).
Кроме того, функциональный блок имеет логический выход WARN
для отображения состояния аналогового входа данного блока.
Представление
• Символическое
MN Y
BOOL
• Параметрическое
Параметр Тип данных Значение
CHANNEL ANL_IN Входное значение
MN REAL Вход масштабирования, 0 %
MX REAL Вход масштабирования, 100 %
Y REAL Масштабированное значение
WARN BOOL
0: нет предупреждения
1: есть предупреждение

134
Ошибки функционирования
O_NORM
CHANNEL
ANL_OUT
Сообщение об ошибке появится:
• если входной канал не сконфигурирован; в этом случае необхо-
димо проверить элементарный функциональный блок (EFB) для соответствующего модуля ввода/вывода;
• если входное значение выше или ниже допустимого диапазона
(например, –1 V или 6 V в диапазоне 0…5 V);
• если соединенный аналоговый вход функционального блока не
разрешен для формирования информации состояния и, следовательно,
выход WARN не активен, в этом случае необходимо использовать
функциональный блок I_SCALE.
6.3.3.7. Блок преобразования необработанных значений аналоговых входов (I_ROW)
Краткое описание
Функциональный блок поддерживает аналоговые входные значе-
ния как необработанные значения в формате данных WORD.
Представление
• Символическое
REAL
X
• Параметрическое
димо проверить элементарный функциональный блок (EFB) для соответствующего модуля ввода/вывода;
Параметр Тип данных Значение
CHANNEL ANL_IN Входное значение
Y REAL Необработанное значение
Ошибки функционирования
Сообщение об ошибке появится:
• если входной канал не сконфигурирован; в этом случае необхо-
• если превышен диапазон входных значений.

135
6.3.3.8. Блок нормализации аналоговых выходов (O_NORM)
I_RAW
CHANNEL Y
ANL_IN
WORD
Краткое описание
Функциональный блок поддерживает значения в формате с пла-
вающей точкой как аналоговые значения в 16-разрядном целом формате. Значение в формате с плавающей точкой в диапазоне от 0.0 до 1.0
отображается в сконфигурированное выходное значение в целом формате.
Представление
• Символическое
• Параметрическое
Параметр Тип данных Значение
CHANNEL ANL_OUT Выходное значение
Y REAL Нормализованное значение
Ошибки функционирования
Сообщение об ошибке появится:
• если выходной канал не сконфигурирован; в этом случае необ-
ходимо проверить элементарный функциональный блок (EFB) для соответствующего модуля ввода/вывода;
• если выходное значение выше или ниже допустимого диапазона
(например, –1 V или 6 V при диапазоне 0…5 V).
6.3.3.9. Блок масштабирования аналоговых выходов
Краткое описание
Функциональный блок преобразует данные из вещественного фор-
мата с плавающей точкой (REAL) в 16-разрядный целый формат.
Входы масштабирования MN и MX заранее определяют диапазон
выходных значений. Вход MN соответствует 0 %, вход MX – 100 %.
Целое значение отображается в формате с плавающей точкой.
(O_SCALE)

136
Представление
Параметр
Тип данных
Значение
CHANNEL
ANL_OUT
Выходное значение
MN
REAL
Вход масштабирования, 0 %
MX
REAL
Вход масштабирования, 100 %
X
REAL
Значение с плавающей точкой
O_RAW
CHANNEL
X
ANL_OUT
WORD
O_SCALE
CHANNEL
X
ANL_OUT
REAL
REAL
• Символическое
REAL
MN
MX
• Параметрическое
Ошибки функционирования
Сообщение об ошибке появится:
• если выходной канал не сконфигурирован; в этом случае необ-
ходимо проверить элементарный функциональный блок (EFB) для соответствующего модуля ввода/вывода;
• если значения MN и MX тождественны и вызывают деление на
ноль;
• если выходное значение выше или ниже допустимого диапазона
(например, –1 V или 6 V при диапазоне от 0 до 5 V).
6.3.3.10. Блок преобразования необработанных значений
Краткое описание
Функциональный блок поддерживает необработанные значения в
формате данных WORD как аналоговые выходные значения.
Представление
• Символическое
аналоговых выходов (O_ROW)

137
• Параметрическое
Параметр
Тип данных
Значение
CHANNEL
ANL_OUT
Выходное значение
X
WORD
Необработанное значение
Параметр
Тип данных
Значение
CHANNEL
ANL_IN
Моделируемое необработанное значение
SIM
WORD
Входное значение
I RAWSIM
CHANNEL
ANL_IN
WORD
Ошибки функционирования
Сообщение об ошибке появится, если выходной канал не сконфи-
гурирован; в этом случае необходимо проверить элементарный функциональный блок (EFB) для соответствующего модуля ввода/вывода;
6.3.3.11. Блок имитации необработанных сигналов аналоговых входов (I_RAW_SIM)
Краткое описание
Функциональный блок имитирует необработанные сигналы анало-
говых входов в трех регистрах. Данный функциональный блок является поддержкой для редактора основных данных.
Замечание. Необходимо определить последовательность обработки
функционального блока I_RAW_SIM, который должен выполняться
перед всеми остальными функциональными блоками, которые считывают имитируемое необработанное значение. Для этого необходимо
соединить выход ENO блока I_RAW_SIM с входами EN всех функциональных блоков, которые считывают имитируемое необработанное
значение.
Представление
• Символическое
• Параметрическое
Ошибки функционирования
Если входной канал не сконфигурирован, появится сообщение об
ошибке. В этом случае необходимо проверить элементарный функциональный блок (EFB) для соответствующего модуля ввода/вывода.
SIM

138
6.3.4. Блоки отладки аналогового ввода/вывода
RNGE_ADJ
INT
Коррекция коэффициента усиления
SQRT
BOOL
Квадратичный фильтр: «1» = фильтр
активный; «0» = фильтр неактивный
I_FILTER
CH_IN CH_OUT
RNGE_ADG
ANL_IN
BOOL
INT
ANL_IN
Настройка аналоговых модулей ввода/вывода производится с ис-
пользованием блоков FFB, входящих в раздел Quantum I/O Configura-
tion библиотеки IO Management.
Типы данных ANL_INT и ANL_OUT обрабатываются при помощи
блоков EFB I_FILTER, I_SET и O_FILTER, O_SET, входящих в раздел
Analog I/O Configuration библиотеки I/O Management.
Рассмотрим блок I_FILTER.
6.3.4.1. Блок линеаризации аналоговых входов (I_FILTER)
Краткое описание
Функциональный блок позволяет корректировать характеристиче-
ские кривые аналоговых входных сигналов.
Возможны три различные корректировки:
• квадратичная линеаризация (в нормализованном диапазоне);
• коррекция смещения Offset (компенсация нулевого смещения);
• коррекция диапазона Range (коэффициент усиления).
Замечание. В общем случае не требуется корректировать автоматически установленные значения Offset и Range.
Представление
• Символическое
INT
• Параметрическое
SQRT
OFFS_ADJ
Параметр Тип данных Значение
CH_IN ANL_IN Входное значение
CH_OUT ANL_IN Выходное значение
OFFS_ADJ INT Коррекция смещения

139
Параметрическое описание
0 0.25 0.5 0.75 1
100
50
0
Характеристическая
кривая (SQRT=1)
Характеристическая
кривая (SQRT=0)
Выходное
значение
Нормализованное
необработанное
значение
1. Квадратичная линеаризация (в нормализованном диапазоне). Для
линеаризации аналогового входного сигнала используется параметр
SQRT. Квадратичный фильтр действует в соответствии со следующими функциями:
f(0) = 0, f(0.5) = 0.707, f(1) = 1.
Характеристическая кривая квадратичного фильтра представлена
на рис. 6.23.
Рис. 6.23. Характеристическая кривая квадратичного фильтра
2. Коррекция смещения Offset (компенсация нулевого смещения).
Для модификации (коррекции) вычисленного значения выхода
CH_OUT используется параметр OFFS_ADJ.
Замечание. В общем случае не требуется корректировать автомати-
чески установленное значение (OFFS_ADJ=0). Если, однако, вы все же
хотите выполнить коррекцию, необходимо проконтролировать ее с
помощью функционального блока I_DEBUG, поскольку произойдет
модификация типа данных ANL_IN (выхода CH_OUT).
3. Коррекция диапазона Range (коэффициент усиления). Для моди-
фикации (коррекции) вычисленного коэффициента усиления выхода
CH_OUT используется параметр RNGE_ADJ.
Замечание. В общем случае не требуется корректировать автомати-
чески установленное значение (RNGE_ADJ=0). Если, однако, вы все
же хотите выполнить коррекцию, необходимо проконтролировать ее с
помощью функционального блока I_DEBUG, поскольку произойдет
модификация типа данных ANL_IN (выхода CH_OUT).

140
На рис. 6.24 представлен пример использования функционального
QUANTUM
SLOT
SLOT
SLOT
SLOT
SLOT
SLOT
AVI030
SLOT
CHANNEL1
CHANNEL2
CHANNEL3
CHANNEL4
CHANNEL5
CHANNEL6
CHANNEL7
CHANNEL8
I_FILTER
CH_IN CH_OUT
SQRT
OFFS_ADJ
RNGE_ADG
I_PHYS
CHANNEL Y
I_PHYS
CHANNEL Y
по умолчанию OFFS_ADJ=0
и RNGE ADJ=0
Входы Выходы
(AVI030 10V) (I_PHYS)
0 V 0.0
2.5 V 5.0
5 V 7.07
10 V 10.0
Входы Выходы
(AVI030 10V) (I_PHYS)
0 V 0.0
2.5 V 2.5
5 V 5.0
10 V 10.0
блока I_FILTER.
Рис. 6.24. Пример использования функционального блока I_FILTER
Ошибки функционирования
Если входной канал не сконфигурирован, появится сообщение об
ошибке. В этом случае необходимо проверить элементарный функциональный блок (EFB) для соответствующего модуля ввода/вывода.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
