Оценка частотной характеристики PMSM с помощью векторного управления

Этот пример выполняет оценку частотной характеристики (FRE) модели объекта управления, работающей на трехфазном синхронном двигателе с постоянными магнитами (PMSM). Когда вы моделируете или запускаете модель на целевой компьютер, он запускает тесты, чтобы оценить частотную характеристику, как видна каждому ПИ-контроллеру (также известной как необработанные данные FRE), и строит графики данных FRE, чтобы обеспечить графическое представление динамики модели объекта управления.

Когда двигатель запусков в установившемся состоянии, оперативный блок Оценки Частотной Характеристики, который соединяется с каждым ПИ- цикл управления (током Id, током Q и скоростью), последовательно возмущает ПИ-контроллером выход и оценивает частотную характеристику модели объекта управления, как это видно каждым ПИ-контроллерам. Для оценки коэффициентов усиления ПИ-контроллера можно использовать частотную характеристику объекта.

Модель использует метод векторного управления (FOC), чтобы управлять PMSM. Алгоритм FOC требует обратной связи положения ротора, которая получается с помощью квадратурного датчика энкодера. Для получения дополнительной информации о ВОК смотрите Векторное управление (ВОК).

Модели

Пример включает в себя mcb_pmsm_freq_est_f28379d модели (целевой модели).

Можно использовать эту модель как для симуляции, так и для генерации кода. Можно также использовать команду open_system, чтобы открыть модель.

open_system('mcb_pmsm_freq_est_f28379d.slx');

Для получения дополнительной информации о поддерживаемом строении оборудования смотрите тему «Необходимое аппаратное обеспечение» в разделах «Генерация кода» и «Развертывание модели на целевом компьютере».

Необходимые продукты MathWorks ®

Чтобы симулировать модель:

  • Motor Control Blockset™

  • Simulink Control Design™

Чтобы сгенерировать код и развернуть модель:

1. Motor Control Blockset™

2. Embedded Coder ®

3. Пакет поддержки Embedded Coder ® для процессоров Instruments™ C2000™ в Техасе

4. Simulink Control Design™

Необходимые условия

1. Получите параметры двигателя. Мы предоставляем параметры двигателя по умолчанию с моделью Simulink ®, которую вы можете заменить значениями либо из таблицы данных двигателей, либо из других источников.

Однако, если у вас есть оборудование управления двигателем, можно оценить параметры для двигателя, который вы хотите использовать, с помощью инструмента оценки параметра Motor Control Blockset. Для получения инструкций смотрите Оценку параметров двигателя с помощью Parameter Estimation Tool Motor Control Blockset.

Инструмент оценки параметра обновляет motorParam переменная (в рабочей области MATLAB ®) с предполагаемыми параметрами двигателя.

2. Если вы получаете параметры двигателя из таблицы данных или других источников, обновляйте параметры двигателя и параметры инвертора в скрипте инициализации модели, сопоставленном с моделями Simulink ®. Для получения инструкций смотрите Оценку коэффициентов усиления из параметров двигателя.

Если вы используете инструмент оценки параметра, можно обновить параметры инвертора, но не обновляйте параметры двигателя в скрипте инициализации модели. Скрипт автоматически извлекает параметры двигателя из обновленного motorParam переменная рабочей области.

Моделируйте модель

Этот пример поддерживает симуляцию. Выполните следующие шаги, чтобы симулировать модель.

1. Откройте целевую модель, включенную в этот пример.

2. Щелкните Запуском на вкладке Симуляции, чтобы симулировать модель.

3. Щелкните Data Inspector на вкладке Simulation, чтобы просмотреть и проанализировать результаты симуляции.

4. На целевой модели щелкните гиперссылку Plot freq response, чтобы построить график данных частотной характеристики модели объекта управления (sys_sim_id, sys_sim_iq, и sys_sim_spd переменные в рабочей области), которые измеряют цикл управления скорости и текущие циклы управления.

Сгенерируйте код и развертывайте модель на целевом компьютере

В этом разделе приведены инструкции для генерации кода, запуска алгоритма FOC на целевом компьютере, запуска оценки частотной характеристики и построения графика данных FRE.

Этот пример использует хост и целевую модель. Модель хоста является пользовательским интерфейсом к аппаратной плате контроллера. Можно запустить главную модель на хост-компьютер. Необходимым условием для использования модели хоста является развертывание целевой модели на аппаратной плате контроллера. Модель хоста использует последовательную связь, чтобы командовать целевой моделью Simulink ® и запустить двигатель в системе управления с обратной связью.

Необходимое оборудование

Этот пример поддерживает это аппаратное строение. Можно также использовать имя целевой модели, чтобы открыть модель из командной строки MATLAB ®.

  • LAUNCHXL-F28379D контроллер + (BOOSTXL-DRV8305 или BOOSTXL-3PHGANINV) инвертор: mcb_pmsm_freq_est_f28379d

ПРИМЕЧАНИЕ. При использовании инвертора BOOSTXL-3PHGANINV убедитесь, что между нижним слоем BOOSTXL-3PHGANINV и платой LAUNCHXL имеется надлежащая изоляция.

Для подключений, связанных с предыдущими аппаратными строениями, смотрите LAUNCHXL-F28069M и LAUNCHXL-F28379D Строений.

Сгенерируйте код и запустите модель на целевом компьютере

1. Симулируйте целевую модель и наблюдайте результаты симуляции.

2. Завершите аппаратные подключения.

3. Модель автоматически вычисляет значения смещения АЦП (или тока). Чтобы отключить эту функциональность (включенную по умолчанию), обновите значение 0 в переменную inverter.ADCOffsetCalibEnable в скрипте инициализации модели.

Также можно вычислить значения смещения АЦП и обновить его вручную в скриптах инициализации модели. Для получения инструкций смотрите Запуск 3-Phase электродвигателей переменного тока в разомкнутом контуре управления и Калибровка смещения АЦП.

4. Вычислите значение смещения квадратурного энкодера и обновите его в pmsm.PositionOffset переменная, доступная в скрипте инициализации модели, сопоставленном с целевой моделью. Для получения инструкций смотрите Калибровку смещения квадратурного энкодера для двигателя PMSM.

5. Откройте целевую модель для оборудования строения, которую вы хотите использовать. Если вы хотите изменить настройки аппаратного строения по умолчанию для модели, см. Раздел «Параметры конфигурации модели».

6. Загрузите пример программы в CPU2 LAUNCHXL-F28379D, например, программу, которая управляет CPU2 синим светодиодом при помощи GPIO31 (c28379D_cpu2_blink.slx), чтобы убедиться, что CPU2 не настроена ошибочно использовать периферийные устройства платы, предназначенные для CPU1.

7. Щелкните Сборка, Развертывание и запуск на вкладке Оборудование, чтобы развернуть целевую модель на оборудовании.

8. Щелкните гиперссылку модели хоста в целевой модели, чтобы открыть связанную модель хоста. Можно также использовать команду open_system, чтобы открыть модель хоста.

open_system('mcb_pmsm_freq_host_f28379d.slx');

Для получения дополнительной информации о последовательной связи между хостом и целевыми моделями, смотрите Host-Target Communication.

9. В маске блока Host Serial Setup модели хоста выберите имя.

10. Смените положение переключателя Start/Stop Motor на On, чтобы начать вращать двигатель.

11. Обновите значение Задающая скорость в модели хоста.

12. Выберите сигнал отладки, который вы хотите контролировать, в разделе Debug signals модели хоста. Наблюдайте эти сигналы во временных возможностях SelectedSignals.

13. Нажмите кнопку FRE Trigger, чтобы запустить процесс FRE на целевом компьютере.

14. Выберите Position & Raw FRE data в разделе Debug signals модели хоста, чтобы начать прием необработанных данных FRE от целевого компьютера. Светодиодный индикатор состояния FRE становится желтым, чтобы указать, что модель хоста получает необработанные данные FRE от целевого компьютера.

ПРИМЕЧАНИЕ. Светодиодный индикатор показывает правильное состояние только при выборе Position & Raw FRE data в разделе Debug signals. В противном случае светодиод остается серым.

15. Проверьте состояние светодиодного индикатора состояния FRE на модели хоста. Светодиод становится зеленым после того, как модель хоста получит все необработанные данные FRE от целевого компьютера.

16. Нажмите кнопку FRE Plot, чтобы построить график необработанных данных FRE, полученных от целевого компьютера.

17. На модели хоста нажмите Stop на вкладке Simulation, чтобы остановить симуляцию.

18. Щелкните гиперссылку сравнения в модели хоста, чтобы построить график необработанных данных FRE, сгенерированных во время симуляции, и оборудования, запускаемого вместе, и сравнить их.

Для точного сравнения мы рекомендуем использовать ту же задающую скорость во время симуляции и при запуске примера на целевом компьютере.

Примечание:

  • Чтобы остановить процесс FRE в любое время, нажмите кнопку FRE Abort.

  • Чтобы немедленно остановить двигатель, включите переключатель Start/Stop Motor Off.

Сконфигурируйте блок оценки частотной характеристики

Сконфигурируйте эти параметры в маске Частотной характеристики Estimator блока (из Simulink Control Design™ тулбокса):

  • Шаг расчета (Ts) - введите блок шаг расчета, идентичную ПИ-контроллеру.

  • Частоты - Вводите массив частот, при которых блок возмущает выход ПИ-контроллера, чтобы оценить частотную характеристику объекта. В этом поле используется переменная рабочей области (отдельный тип данных) fre.i_freq для хранения массива частот сигнала возмущения.

ПРИМЕЧАНИЕ: По умолчанию в модели используется массив размером пятнадцать. Однако можно настроить размер массива.

Начальное / стоповое значение сигналов 1 который начал эксперимент FRE, должен измениться на 0 только после того, как возмущения и тесты на все частоты завершены, и эксперимент FRE заканчивается.

  • Амплитуды - введите амплитуду сигналов возмущения, которые блок применяет к выходу ПИ-контроллера, чтобы оценить частотную характеристику объекта. В этом поле используется переменная рабочей области (отдельный тип данных) fre.i_amp для хранения общего значения амплитуды сигналов возмущения.

Высокая амплитуда создает нарушения порядка, когда двигатель вращается. Амплитуда, которая является слишком низкой, приводит к неточной FRE.

Для получения дополнительной информации о блоке Frequency Response Estimator, смотрите Оценку частотной характеристики (Simulink Control Design).

Выход блока оценки частотной характеристики

Блок Частотная характеристика Estimator (соединенный с каждым ПИ-контроллером) выполняет эксперимент FRE, возмущая выход ПИ-контроллера, используя последовательность частот, сохраненных в fre.i_freq.

Для каждого сигнала возмущения (представленного частотой) блок оценивает частотную характеристику объекта в виде комплексного числа. Поэтому блок использует массив частот, чтобы сгенерировать массив комплексных чисел (необработанные данные FRE).

Сгенерированная последовательность комплексных чисел содержит информацию, связанную с задержкой усиления и фазы.

Управление экспериментами FRE

Алгоритм Подсистемы Управления Состоянием Машины включает три Блока Оценки Частотной Характеристики по одному (и, следовательно, запускает три эксперимента FRE) в этом порядке при помощи входного порта start/stop блока Оценки Частотной Характеристики:

1. Блок FRE, соединенный с идентификатором цикла управления

2. Блок FRE, подключенный к q- цикла управления

3. Блок FRE, подключенный к циклу управления скорости

Управление конечным автоматом гарантирует, что временной интервал между начальным и стоповым сигналами больше или равен длине эксперимента FRE (как показано диалоговым окном Frequency Response Estimator). Поэтому, если вы изменяете частоты сигнала возмущения, убедитесь, что управление конечным автоматом отправляет сигнал остановки только после завершения эксперимента FRE.

Для получения дополнительной информации о блоке Frequency Response Estimator, смотрите Оценку частотной характеристики (Simulink Control Design).

Постройте график частотной характеристики после симуляции

После окончания симуляции целевая модель сохраняет частотную характеристику (или необработанные данные FRE) в этих переменных рабочей области:

  • out.Idfreqdata- необработанные данные FRE для текущего ПИ-контроллера Id.

  • out.Iqfreqdata - необработанные данные FRE для текущего ПИ-контроллера q-составляющей тока.

  • out.Spdfreqdata - необработанные данные FRE для ПИ-контроллера скорости.

Когда вы нажимаете гиперссылку Plot freq response на целевой модели, она строит график частотной характеристики для трёх ПИ-контроллеров.

Целевая модель использует эти команды, чтобы построить график частотных характеристик, как видно из трёх ПИ-контроллеров:

Частотная характеристика d-составляющей тока ПИ-контроллера:

sys_sim_id = frd(out.Idfreqdata,fre.i_freq*2*pi);

bode(sys_sim_id);

Частотная характеристика тока q- ПИ-контроллера:

sys_sim_iq = frd(out.Iqfreqdata,fre.i_freq*2*pi);

bode(sys_sim_iq);

Частотная характеристика ПИ-контроллера скорости:

sys_sim_spd = frd(out.Spdfreqdata,fre.spd_freq*2*pi);

bodeplot(sys_sim_spd);

Для получения дополнительной информации об этих командах см. следующие файлы:

  • mcb_pmsm_freq_est_plot.m

  • mcb_pmsm_freq_host_est_plot.m

Отправка необработанных данных FRE на главную модель

При запуске целевой модели на оборудовании она постоянно передает необработанные данные FRE в главную модель.

Целевая модель разделяет всю последовательность комплексных чисел (или необработанных данных FRE) из каждого блока FRE на вещественные и мнимые массивы и добавляет заголовки, чтобы разделить их. Этот формат используется для отправки необработанных данных FRE из каждого блока FRE в главную модель при помощи последовательной передачи.

Постройте график частотной характеристики при использовании целевого компьютера

После получения сообщения от целевого компьютера модель хоста расшифровывает сообщение и сохраняет массив комплексных чисел (необработанных данных FRE) в этих переменных рабочей области:

  • IdfreqData - необработанные данные FRE для текущего ПИ-контроллера Id.

  • IqfreData - необработанные данные FRE для текущего ПИ-контроллера q-составляющей тока.

  • SpdfreqData - необработанные данные FRE для ПИ-контроллера скорости.

Когда вы нажимаете кнопку FRE Plot, модель хоста строит график частотной характеристики для трёх ПИ-контроллеров.

Модель хоста использует эти команды, чтобы построить график частотных характеристик, наблюдаемых для трёх ПИ-контроллеров:

Частотная характеристика d-составляющей тока ПИ-контроллера:

sys_hw_id=frd(IdFreqData.signals.values,fre.i_freq*2*pi);

bode(sys_hw_id);

Частотная характеристика тока q- ПИ-контроллера:

sys_hw_iq=frd(IqFreqData.signals.values,fre.i_freq*2*pi);

bode(sys_hw_iq);

Частотная характеристика ПИ-контроллера скорости:

sys_hw_spd=frd(SpdFreqData.signals.values,fre.spd_freq*2*pi);

bode(sys_hw_spd);

Для получения дополнительной информации об этих командах см. следующие файлы:

  • mcb_pmsm_freq_est_plot.m

  • mcb_pmsm_freq_host_est_plot.m

Настройка ПИ-контроллера коэффициент усиления

Эти шаги описывают, как настроить и определить усиления для тока D, тока q и ПИ-контроллеров скорости:

1. Перейдите к панели инструментов Simulink > Приложения и откройте приложение PID Tuner.

2. На вкладке PID Tuner выберите PI для Type, Parallel для Form и Frequency для область.

3. На вкладке PID Tuner выберите объект > Import.

4. В окне Import Linear System выберите sys_sim_id и нажмите Import, чтобы импортировать данные FRE для ПИ-контроллера идентификатора.

5. Выберите Add Plot > Bode > Разомкнутый контур, чтобы открыть диаграмму Боде без разомкнутого контура для ПИ-контроллера с идентификатором.

6. Используйте раздел Инструментов настройки на вкладке PID Tuner, чтобы настроить полосу пропускания и запас по фазе и наблюдать результаты в разомкнутый контур диаграмм Боде и объекта.

7. После завершения настройки нажатия кнопки Показа Parameters, чтобы отобразить настроенные параметры контроллера Kp и Ki для текущего ПИ-контроллера Id.

8. Повторите шаги с 3 по 7, выбрав sys_sim_iq в окне Import Linear System, чтобы получить настроенные параметры Kp и Ki для контроллера Iq PI.

9. Обновите значения коэффициента усиления Kp и Ki для текущих ПИ-контроллеров Id и Iq в скрипте инициализации модели примера mcb_pmsm_freq_est_f28379d.slx. Для получения инструкций смотрите Оценку коэффициентов усиления из параметров двигателя.

10. Снова выполните оценку частотной характеристики, используя обновленные коэффициенты усиления ПИ-контроллера путем симуляции примера или запуска его на целевой компьютер.

11. Выполните шаги с 3 по 7, выбрав sys_sim_spd в окне Import Линейной системы, чтобы получить настроенные параметры Kp и Ki для ПИ-контроллера скорости.

См. также

Другие вещи, чтобы попробовать

Можно попробовать оценить передаточные функции и модели пространства состояний из данных FRE с помощью этих функций из System Identification Toolbox™:

  • ssest

  • tfest

Для просмотра документации необходимо авторизоваться на сайте