Настройка коэффициентов усиления параметров управления в оборудовании и валидация объекта

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

В примере двигатель запускается в следующих режимах:

  • Stop - В этом режиме двигатель перестает вращаться, потому что инвертор выводит нуль вольт.

  • Разомкнутый контур - В этом режиме контроллер использует регулирование без разомкнутого контура, чтобы запустить двигатель. Можно использовать Переменные Рабочего Режима > Область режима разомкнутого контура модели хоста, чтобы изменить выходное напряжение инвертора (в относительных единицах) и скорость ротора (в относительных единицах). Используйте область Monitor, чтобы выбрать значения скорости и положения ротора, чтобы отобразить их на возможности для мониторинга.

  • Управление крутящим моментом - В этом режиме контроллер использует алгоритм управления крутящим моментом, чтобы запустить двигатель. Можно использовать Переменные Рабочего Режима > Крутящий момент двигателя области режима управления модели хоста, чтобы изменить${I_d}$ ссылку и${I_q}$ ссылку текущих значений (в относительных единицах). Можно также установить максимальный предел скорости двигателя (в относительных единицах).

Можно заблокировать ротор, повернув переключатель ползунка в положение Pos lock, которое устанавливает положение ротора в нуль. Поэтому в этом режиме контроллер получает обратную связь о положении как нуль, потому что двигатель перестает вращаться. Если вы поворачиваете переключатель в положение разблокировки, двигатель запускается, и контроллер получает обратную связь о положении от квадратурного энкодера (вы можете контролировать это значение, используя сигнал Position_meas в области Monitor модели хоста). Можно использовать возможности для мониторинга двух сигналов отладки (Monitor Signal # 1 и Monitor Signal # 2), которые вы выбираете в области Monitor. Поэтому можно использовать переключатель для настройки параметров усиления управления крутящим моментом.

  • Регулирование скорости - В этом режиме контроллер использует алгоритм управления скорости, чтобы запустить двигатель. Можно использовать Переменные Рабочего Режима > Область режима регулирования скорости двигателя модели хоста, чтобы изменить значение Опорной Скорости (в относительных единицах) ротора. Можно использовать возможности для мониторинга двух сигналов отладки (Monitor Signal # 1 и Monitor Signal # 2), которые вы выбираете в области Monitor.

Информацию, относящуюся к системе в относительных единицах, см. в разделе Система в относительных единицах.

Чтобы далее управлять двигателем, можно также использовать область усилений цикла управления модели хоста, чтобы изменить параметры управления d-ось и q-токовые контроллеры оси и контроллер скорости.

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

Предупреждение: Сначала остановите двигатель, прежде чем переходить от одного рабочего режима к другому.

Можно выбрать один из следующих рабочих режимов в области Control модели хоста:

  • Стоп

  • Разомкнутый контур

  • Управление крутящим моментом

  • Регулирование скорости

Модель

Пример включает в себя mcb_pmsm_operating_mode_f28379d модели.

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

open_system('mcb_pmsm_operating_mode_f28379d.slx');

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

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

  • Motor Control Blockset™

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

1. Motor Control Blockset™

2. Embedded Coder ®

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

4. Fixed-Point Designer™ (требуется только для оптимизированной генерации кода)

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

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

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

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

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

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

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

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

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

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

3. Откройте подсистему mcb_pmsm_operating_mode_f28379d > Simulate Dashboard. Можно также использовать команду open_system, чтобы открыть подсистему:

open_system('mcb_pmsm_operating_mode_f28379d/Simulate Dashboard');

Инструкции для Разомкнутого контура режима выполнения:

1. Если текущий режим работы отличается от разомкнутого контура запуска, выберите Stop в области Control, чтобы остановить двигатель. Выберите Разомкнутый контур run, чтобы запустить двигатель.

2. Установите ссылку напряжения и задающей скорости значений (в относительных единицах) в полях Voltage ref (PU) и Speed ref (PU), доступных в области Operation Mode Переменных > Разомкнутому контуру mode.

Инструкции по режиму управления крутящим моментом:

1. Если текущий режим работы отличается от регулирования крутящего момента, выберите Stop в области Control, чтобы остановить двигатель. Выберите Управление Крутящим моментом в области Управление.

2. Введите значение 0 (в относительных единицах) в поле Iq Reference в переменных рабочего режима» > «Режим управления крутящим моментом двигателя». В сложение установите предел скорости двигателя с помощью поля предела скорости.

3. Переместите переключатель ползунок в положение разблокировки в области Переменные рабочего режима > Режим управления крутящим моментом двигателя.

4. Введите значение 0.1 (в относительных единицах) в поле Iq Reference (в области Переменные Рабочего Режима), чтобы начать вращать двигатель.

5. Откройте Данные Моделирования Inspector и выберите сигналы Iq_ref_PU и Iq_fb_PU для мониторинга.

6. Следуйте шагам 2-5 для Id Reference и контролируйте сигналы Id_ref_PU и Id_fb_PU.

ПРИМЕЧАНИЕ: Двигатель может достичь высоких скоростей, если вы запускаете его без условий нагрузки в этом режиме работы. В сложение двигатель не будет соответствовать значению тока q ссылки при отсутствии нагрузки в этом рабочем режиме.

Инструкции для режима регулировки скорости:

1. Если текущий режим работы отличается от регулировки скорости, выберите Stop в области Control, чтобы остановить двигатель. Выберите Управление скоростью в области Управление.

2. Введите значение 0.5 (в относительных единицах) в поле Ссылка в области Operating Mode Variables > Motor Speed Control mode.

3. Откройте Данные Моделирования Inspector и выберите сигналы Speed_ref_PU и Speed_fb_PU для мониторинга.

Инструкции по настройке коэффициента усиления контроллера крутящего момента:

1. Если текущий режим работы отличается от регулирования крутящего момента, выберите Stop в области Control, чтобы остановить двигатель. Выберите Управление Крутящим моментом в области Управление.

2. Поверните переключатель ползунок в положение Pos lock в области Переменные рабочего режима > Режим управления крутящим моментом двигателя.

3. Введите значение 0.2 (в относительных единицах) в поле Id Reference в области Operating Mode Variables.

4. Откройте Данные моделирования Inspector, выберите Id_ref_PU и Id_fb_PU сигналы и наблюдайте за переходной характеристикой этих сигналов.

5. Настройте коэффициенты усиления Kp и Ki для токового контроллера оси D. Выполните изменение шага, чтобы подтвердить коэффициент усиления контроллера.

Инструкции по настройке коэффициента усиления контроллера скорости:

1. Если текущий режим работы отличается от регулировки скорости, выберите Stop в области Control, чтобы остановить двигатель. Выберите Управление скоростью в области Управление.

2. Введите значение 0.5 (в относительных единицах) в поле Ссылка в области Operating Mode Variables > Motor Speed Control mode.

3. Введите значение 0.8 (в относительных единицах) в поле Ссылка.

4. Откройте Данные Моделирования Inspector, выберите Speed_ref_PU и Speed_fb_PU сигналы и наблюдайте переходную характеристику скорости.

5. Настройте коэффициенты усиления Kp и Ki для контроллера скорости. Выполните изменение шага, чтобы подтвердить коэффициент усиления контроллера.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Примечание:

  • Не переключаться непосредственно между разомкнутым запуском, управлением крутящим моментом и рабочими режимами регулировки скорости. Всегда останавливайте двигатель перед изменением режима работы.

  • Прежде чем вы запустите двигатель в режиме регулировки скорости в первый раз, запустите двигатель в разомкнутом контуре, чтобы определить индекс четырехзвенника энкодера. Это помогает запускать двигатель плавно в режиме регулирования скорости с обратной связью.

Инструкции для Разомкнутого контура режима выполнения:

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

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

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

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

5. Выберите Stop в области Control, чтобы остановить двигатель.

6. Выберите Разомкнутый контур run, чтобы запустить двигатель.

7. Установите ссылку напряжения и задающей скорости значений (в относительных единицах) в полях Voltage ref (PU) и Speed ref (PU), доступных в области Operation Mode Переменных > Разомкнутому контуру mode.

Инструкции по режиму управления крутящим моментом:

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

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

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

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

5. Выберите Stop в области Control, чтобы остановить двигатель.

6. Введите значение 0 (в относительных единицах) в полях Id Ref (PU) и Iq Ref (PU) в области «Переменные рабочего режима» > «Режим управления крутящим моментом двигателя». В сложение установите предел скорости двигателя с помощью поля Speed предела (PU).

7. Выберите Управление Крутящим моментом в области Управление.

8. Переместите переключатель ползунок в положение разблокировки в области Переменные рабочего режима > Режим управления крутящим моментом двигателя.

9. Выберите Iq_ref для Monitor Signal # 1 и Iq_meas для Monitor Signal # 2 в области Monitor.

10. Введите значение 0.1 (в относительных единицах) в поле Iq Ref (PU) (в области Переменные Рабочего Режима), чтобы начать вращать двигатель.

11. Откройте возможности в модели хоста и отслеживайте сигналы Iq_ref и Iq_meas тока.

Примечание: Двигатель может достичь высоких скоростей, если вы запускаете его без условий нагрузки в этом рабочем режиме. В сложение двигатель не будет соответствовать значению тока q ссылки при отсутствии нагрузки в этом рабочем режиме.

Инструкции для режима регулировки скорости:

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

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

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

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

5. Выберите Stop в области Control, чтобы остановить двигатель.

6. Введите значение 0.5 (в относительных единицах) в поле Speed Ref (PU) в области Operating Mode Variables > Motor Speed Control mode.

7. Выберите Управление скоростью в области Управление.

8. Выберите Speed_ref для Monitor Signal # 1 и Speed_meas для Monitor Signal # 2 в области Monitor.

9. Откройте возможности в модели хоста и отслеживайте сигналы Speed_ref и Speed_meas выхода.

Инструкции по настройке коэффициента усиления контроллера крутящего момента:

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

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

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

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

5. Выберите Stop в области Control, чтобы остановить двигатель.

6. Выберите Управление Крутящим моментом в области Управление.

7. Поверните переключатель ползунок в положение Pos lock в области Переменные рабочего режима > Режим управления крутящим моментом двигателя.

8. Выберите Id_ref для Monitor Signal # 1 и Id_meas для Monitor Signal # 2 в области Monitor.

9. Введите значение 0.2 (в относительных единицах) в поле Id Ref (PU) в области «Переменные рабочего режима».

10. Откройте возможности и проконтролируйте сигнал переходной характеристики.

11. Настройте коэффициенты усиления Kp и Ki для d-токовый контроллер оси.

Инструкции по настройке коэффициента усиления контроллера скорости:

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

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

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

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

5. Выберите Stop в области Control, чтобы остановить двигатель.

6. Выберите Управление скоростью в области Управление.

7. Выберите Speed_ref для Monitor Signal # 1 и Speed_meas для Monitor Signal # 2 в области Monitor.

8. Введите значение 0.5 (в относительных единицах) в поле Speed Ref (PU) в области Operating Mode Variables > Motor Speed Control mode.

9. Откройте возможности и наблюдайте за ссылкой и измеренными значениями скорости.

10. Введите значение 0.8 (в относительных единицах) в поле Speed Ref (PU).

11. Наблюдайте переходную характеристику скорости в возможности.

12. Настройте коэффициенты усиления Kp и Ki для контроллера скорости.

Инструкции по проверке модели объекта управления:

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

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

3. Откройте подсистему mcb_pmsm_operating_mode_f28379d > Simulate Dashboard.

4. Если текущий режим работы отличается от регулировки скорости, выберите Stop в области Control, чтобы остановить двигатель. Выберите Управление скоростью в области Управление.

5. Введите значение 0.2 (в относительных единицах) в поле Ссылка в области Operating Mode Variables > Motor Speed Control mode.

6. Введите значение 0.5 (в относительных единицах) в поле Ссылка.

7. Откройте Данные Моделирования Inspector, выберите Speed_ref_PU и Speed_fb_PU сигналы и наблюдайте переходную характеристику скорости.

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

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

open_system('mcb_host_mode_control.slx');

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

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

12. Выберите Stop в области Control модели хоста, чтобы убедиться, что двигатель не вращается.

13. Выберите Управление скоростью в области Управление.

14. Выберите Speed_ref для Monitor Signal # 1 и Speed_meas для Monitor Signal # 2 в области Monitor.

15. Введите значение 0.2 (в относительных единицах) в поле Speed Ref (PU) в области Operating Mode Variables > Motor Speed Control mode.

16. Откройте возможности и наблюдайте за ссылкой и измеренными значениями скорости.

17. Введите значение 0.5 (в относительных единицах) в поле Speed Ref (PU).

18. Наблюдайте переходную характеристику скорости в возможности.

19. Сравните переходные характеристики скорости, полученные в шагах 7 (с симуляцией) и 18 (с генерацией кода).

ПРИМЕЧАНИЕ. В области коэффициентов усиления цикла управления необходимо ввести значения коэффициента усиления, которые могут быть представлены типом данных, заданным в скрипте инициализации модели.

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

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