Таблица 1 – Параметры измерительных элементов установки
Датчик | Выходной параметр | Диапазон значений | Функция для вычисления линейной скорости VЛ |
ТгПр | Напряжение | 0…5В | Не используется |
ТгПас | Напряжение Uтг | 0…5В | VЛ = 1.2 САЦП [мм/с] |
ЭнПр | Импульсы Nпр | 0..300 имп/с | VЛ = 0.53 NПР [мм/с] |
ЭнПас | Импульсы Nпас | 0..600 имп/с | VЛ = 0.29 NПАС [мм/с] |
Примечания:
1 диапазон напряжений указан относительно выхода согласующего усилителя (СУс);
2 С – код, получаемый с АЦП (0…255), эквивалентный напряжению с тахогенератора (Тг);
3 NПР – количество импульсов от энкодера приводной оси за секунду;
4 NПАС – количество импульсов от энкодера пассивной оси за секунду.
Взаимодействие установки «Лентопротяжный механизм» с УУМС
Функциональная схема контура управления на основе стенда и УУМС представлена на рис.2. На схеме в качестве датчиков показаны один тахогенератор (Тг) и один оптический энкодер (Эн), поскольку в каждом из вариантов заданий используется только по одному датчику каждого типа.
|
|
Рисунок 2 – Функциональная схема контура управления (для варианта, когда основной сигнал скорости движения ленты принимается с тахогенератора)
В зависимости от варианта задания сигнал с тахогенератора или одного из энкодеров (NПР или NПАС) после пересчета в значение скорости ленты VЛ используется в качестве основного сигнала для контура управления, а информация с датчика другого типа должна использоваться как контрольная. Сигнал с энкодера приводной оси поступает на вход внешнего прерывания INT0, а с энкодера пассивной оси – на счетный вход таймера Т0.
В качестве объекта автоматического управления реализована совокупность таких устройств, как УМ, приводной двигатель (ДПТ), редуктор, лента, тахогенераторы и энкодеры приводной и пассивной осей с соответствующими согласующими усилителями (СУс).
На рис.3 представлена физическая реализация контура управления на основе установки «Лентопротяжный механизм». В качестве цифрового регулятора использована микроконтроллерная система УУМС-2. Задающее воздействие (требуемое значение выхода объекта) студенты должны задавать согласно вариантам в виде циклограммы, программно реализуемой в контроллере.
Рисунок 3 – Физическая реализация замкнутого контура цифрового управления
(для варианта, когда основной сигнал об объекте принимается с тахогенератора)
Характеристика входной и выходной информации алгоритма цифрового регулятора, реализованного на УУМС, представлена в табл.2
Таблица 2 – Входная и выходная информация алгоритма цифрового регулятора, который будет реализован на УУМС
|
|
Параметр | Тип | Источник или способ формирования | Способ ввода/вывода | Диапазон значений |
Y(t) Сигнал состояния объекта | вход | Тахогенератор на пассивной оси установки, сигнал эквивалентен скорости движения ленты, или сигнал одного из энкодеров (см. ниже) | АЦП, канал 2, или INT0, или вход Т0 | Вход (0…+5)В в алгоритме – число 0…255, получаемое с АЦП, пересчет в значение скорости ленты, см. NПР, NПАС |
G(t) Задающее воздействие | var | Значение формируется программно на основе реализации заданной циклограммы | Не выводится из контроллера на внешнее оборудование | Соответствует значению скоростей от 0 до 200 мм/с |
Upr(t) Сигнал управления для объекта | выход | ШИМ-модулятор в составе УУМС, схема сглаживания для получения аналогового сигнала | PWM, канал 0 (код канала – 8) | В алгоритме число 0…255; на ШИМ-модулятор выдается число 0…255 Скважность 0…100%. Физический выход (0 … +5) В |
NПР | Вход | Импульсы формируются энкодером, установленным на приводной оси | Вход внешнего прерывания INT0 | 0..300 импульсов за секунду, пересчет в значение скорости ленты |
NПАС | Вход | Импульсы формируются энкодером, установленным на пассивной оси | Вход таймера Т0 | 0..600 импульсов за секунду, пересчет в значение скорости ленты |
Значения параметров G(t), VЛ(t), Upr(t) и значение скорости ленты, рассчитанное на основании данных другого датчика, из программы регулятора должны передаваться на ПЭВМ, также значение скорости VЛ(t) нужно отображать на семисегментных индикаторах.
Входной параметр Y(t) должен усредняться методом скользящего среднего по 4-м измерениям для устранения «шума» (усреденение выполняется по двухбайтовым значениям).
Выходной сигнал ШИМ-модулятора сглаживается фильтром и проходит через схему формирования полярности. Таким образом, получается аналоговый входной сигнал Upr(t) для управления приводным двигателем в диапазоне (0…+5) В. Рекомендуемое значение периода дискретности для регулятора Т0 = 0.2 с. Это значение может быть изменено в процессе исследований.
Таблица 2 – Рекомендации по организации модулей в составе проекта
Название модуля | Назначение модуля | Входы | Выходы | Хранимые переменные | Вызов модуля |
Готовые модули | |||||
SetPWM.fc | Формирование однополярного ШИМ-сигнала | Channel – byte (канал ШИМ) Value – byte (значение для ШИМ) | нет | нет | FC, в модуле Main_LR6 |
Average4.fc | Усреднение методом скользящего среднего по 4 точкам | Inp – word (значение от АЦП или энкодера) | AvOut – word (усредненное значение) | Массив из 4-x элементов и сумма S типа word | FC, в модуле Main_LR6 |
Transporter.asm | Резервирование памяти, обработчик прерывания от INT0 | нет | нет | Нет | Ассемблер, автоматически |
SendFloat.fc | Пересылка значения типа float через UART | Value – float (параметр для пересылки) | нет | нет | FC, в модуле SendToPC |
Окончание табл. 2
Название модуля | Назначение модуля | Входы | Выходы | Хранимые переменные | Вызов модуля |
Модули, которые нужно разработать или модифицировать | |||||
InitSys.fc | Настройка таймеров, портов, прерываний | нет | нет | нет | Однократное выполнение |
CalcSetVal.fc | Расчет требуемой скорости в мм/с, по циклограмме – рис. 4.х | – | Gs – float, значение заданной скорости | Takt – word, номер периода дискретности | В модуле Main_LR6 |
CalcV.fbd | Расчет скорости в физических единицах по показаниям датчиков | InTg, InEn – тип byte, значение данных с АЦП и энкодера | VTg, VEn – тип float, значение скорости в [мм/с] | – | В модуле Main_LR6 |
PIreg.fbd | Алгоритм ПИ-регулятора | G, Y (скорость, мм/с), Kp, Ki. Все - тип float | Uk – float | Определить по алгоритму (см. п.3) | В модуле Main_LR6 |
ReadADC.fc | Ввод данных с АЦП | Channel – byte (канал АЦП) | Value – byte (Выход АЦП) | нет | В модуле Main_LR6 |
SendByte.fc | Пересылка значения типа byte через UART | Value – byte (параметр для пересылки) | нет | нет | В модуле SendToPC |
SendToPC.fc | Посылка параметров через UART | Gs, Vs, Ven – float (задающее, скорость ленты по Тг и по энкодеру); Upr – byte (значения управления) | нет | нет | В модуле Main_LR6 |
Main_LR6.fbd | Основной модуль регулятора | нет | нет | нет | В модуле MainCycle |
SampleTime.fc | Реализация периода дискретности Т0 | нет | нет | нет | Обработчик прерывания от таймера |
MainCycle.fc | Контроль цикла программы | нет | нет | нет | Циклическое выполнение |
|
|
1. Алгоритм ПИ-регулирования описывается следующими зависимостями:
2. Настройки таймеров, портов и системы прерываний обеспечивают передачу через UART со скоростью, заданной в таблице вариантов, для 10-битовой посылки без бита четности. Обработка признака завершения передачи TI – программная.
3. В проекте объявлены глобальные переменные:
AVR – тип byte – адрес 0xFFF4 – для обращения к АЦП и ШИМ-модулятору;
Led – тип byte – адрес 0xFFF1 – для отображения на светодиодах;
SignCon – тип byte – адрес 0xFFF3 – вывод бита знака для управления ЦАП.
Также объявлена специальная переменная Int_Cnt, в которой в течение периода дискретности формируется принятое количество импульсов от энкодера приводной оси (для соответствующих вариантов). Эта переменная размещена во внутреннем ОЗУ МК и используется как в основной программе, так и в обработчике соответствующего прерывания, написанном на языке ассемблер с именем _Int_Cnt.
4. Для преобразования типов данных (целое – вещественное) нужно использовать соответствующие операторы преобразования из библиотеки FBD/FC-редакторов.
5. Модуль SampleTime формирует признак завершения периода дискретности (глобальная переменная). Этот признак нужно проверяется в модуле MainCycle как условие вызова модуля Main_LR6.
6. Для отображения данных на ПЭВМ используется программа MCSVisiData. Настройки в программе соответствуют заданным режимам работы СОМ-порта. Состав входящего пакета – три параметра типа «Вещественное IEEE» и один – «однобайтовое без знака» (нужно следить за порядком параметров).
Таблица вариантов
Вариант | Циклограмма формирования G(t) | Способ получения значения Y(t) | Получение контрольного значения YK(t) | Скорость UART, (бит/с) | Таймер для тактирования UART | ||
1 | Рис. 4.1 | АЦП, канал 2 | ЭнПр, INT0 | 19200 | Т1 | ||
|
Рисунок 4.2 – Блок-схема модуля InitSys.fc
Рисунок 4.3 – Блок-схема модуля SetPWM.fc
Рисунок 4.4 – Блок-схема модуля SendFloat.fc
Рисунок 4.5 – Блок-схема модуля SampleTime.fc
Рисунок 4.8 – Блок-схема модуля CalcV.fbd
Рисунок 4.6 – Блок-схема модуля Average4.fc
Рисунок 4.7 – Блок-схема модуля CalcSetVal.fc
Рисунок 4.9 – Блок-схема модуля PIreg.fbd
Рисунок 4.9 – Блок-схема модуля ReadADC.fc
Рисунок 4.9 – Блок-схема модуля SendByte.fc
Рисунок 4.9 – Блок-схема модуля SendToPC.fc
Рисунок 4.9 – Блок-схема модуля MainCycle.fc
Рисунок 4.10 – Блок-схема модуля Main_LR6.fbd
Рисунок 4.12 – Вызов модулей
Рисунок 4.12 – Результаты проведенного исследования
Выводы: в ходе выполнения данной лабораторной работы было изучено аппаратные средства стенда «Лентопротяжный механизм», разработан алгоритмическое и программное обеспечения для управления скоростью ленты и его тестирование на стенде «Лентопротяжный механизм». Регулируемым параметром в данной установке является линейная скорость движения ленты Vл. Этот параметр оценивается по косвенным измерениям угловой скорости вращения валов.