Моделирование электропривода в реальном времени да c интерфейсами
Разработка и отладка управляющего ПО для силовой электроники и привода, достаточно веселая и интересная задача. При решении данной задачи хочется минимизировать количество "белого дыма" на пути к этому, хочу поделиться своим опытом.
Недавно встал вопрос по наладке программного обеспечения управления электроприводом. Раньше я занимался наладкой и доработкой ПО используя натурный стенд, но сложились условия так, что силовая часть приедет еще не скоро, а ПО очень хотелось протестировать.
Пока управляющая часть силового преобразователя находится в монтаже, я решил воспользоваться паузой и разобраться с машиной реального времени РИТМ.
Для реализации я собрал простую модель, которая включает в себя несколько физических интерфейсов.
- Генератор ШИМ сигнала
- Захват ШИМ сигнала
- Модуль ЦАП
Системная модель имеет следующую структуру.
На первых порах с помощью интерфейсных плат ввода вывода было решено сделать запуск асинхронного двигателя в режиме u\f=const.
Будующую систему я разделил на 2 части.
1. Система управления.
Система управления реализует закон U\f=const и имеет крайне простую структуру.
Рисунок 1 Структура системы управления.
Частота расчета для системы управления была установлена в 20кГц, а частота ШИМ 10кгц. Фактически система управления формирует 3 синусоиды, которые подаются на блок формирования ШИМ для платы ввода вывода.
2. Модель с Асинхронным мотором.
Модель мотора выглядит как показано на рисунке ниже. На первом этапе меня интересовало замыкание системы по реальных интерфейсам через платы вводы вывода. Источник питания смоделирован как управляемый источник напряжения.
Рисунок 2 Модель мотора.
При запуске в реальном времени на графиках можно отображать сигналы управления и обратной связи, ну и вообще любые сигналы, которые присутствуют в модели. Для начала я вывел на график задания на ШИМ и полученные фазные токи.
Рисунок 3 Задание ШИМ (слева) Токи фаз(справа).
Воспользовавшись осциллографом, понаблюдал выход ШИМ с интерфейсной платы.
Рисунок 4 ШИМ сигнал с платы ввода вывода.
Все как было задумано. Получается, что генерация ШИМ работает, ну и скважность конечно же меняется по синусоидальному закону.
ШИМ, который генерируется платой ввода выхода захватывается на ней же, то есть вход и выход каналов ШИМ соединены, далее формируются питающие напряжения, которые подаются на мотор.
Токи, измеренные в модели, подаются на выход ЦАП плат ввода вывода, где, собственно, и контролируются осциллографом.
Рисунок 5 Токи с фаз двигателя (Выход ЦАП).
Хорошо видно, что токи очень хорошие по форме, еще бы ШИМ у нас 10кгц, а первая гармоника 170Гц. Работает все отлично. Интересно было взглянуть что будет если частоту ШИМ сделать 1 кГц, так как у нас машина реального времени и мы работаем с реальными сигналам, а главное можем менять что нужно, легким движением руки, ШИМ превращается ….
Рисунок 6 Токи фаз при частоте ШИМ 1кГц.
Как видно все довольно предсказуемо и это хорошо. Появилось большое количество гармоник в токе из-за падения частоты ШИМ.
Ну и конечно же хотелось записать переходный процесс при набросе момента на привод.
На осциллографе удалось увидеть следующее.
Рисунок 7 Фазные токи при переходном процессе.
Воспользовавшись осциллографами в машине реального времени, записал сигналы и модель, работающая в реальном времени, показала следующее...
Рисунок 8 Форма токов(слева) Скорость (справа).
Ну а теперь можно посмотреть на выход просто модели в Simulink.
Рисунок 9 Переходные процессы модели Simulink.
В целом можно сделать вывод что модель замкнута по входам выходам, причем входы выходы представляют собой реальные интерфейсы.
Поведение модели адекватно, а это значит можно дорабатывать модель и подключать контроллер, как только он приедет.
Комментарии
Интересный и наглядный материал. Скажите, а у вас нет опыта разработки ПО частотного запуска синхронной машины? Напряжение и частота статора увеличиваются из соотношения v/f=const (з-н Костенко) , а какое возбуждение в момент пуска? Я как-то не встречал ответ на этот вопрос в книгах. Как я себе представляю, в момент пуска возбуждение должно быть номинальным, чтобы даже при наименьшем соотношение v/f статора обеспечить максимальное потокосцеплление с ротором.
Запускали так машины для Мельниц. Регулятор возбуждения работал на номинальном токе возбужения, скорость нарастания частоты выбиральси исходя из парметров механической части системы.