Этот пример реализует метод векторного управления (FOC), чтобы контролировать крутящий момент и скорость трехфазного синхронного двигателя с постоянными магнитами (PMSM). Алгоритм FOC требует обратной связи положения ротора, которая получается с помощью квадратурного датчика энкодера. Для получения дополнительной информации о ВОК смотрите Векторное управление (ВОК).
Управление ослаблением поля
Когда вы используете алгоритм FOC, чтобы запустить двигатель с номинальным потоком, максимальная скорость ограничена напряжениями статора, номинальным током и коэффициентам противо-ЭДС. Эта скорость называется номинальной скоростью. Помимо этой скорости, операция машины является сложной, потому что задний ЭДС больше, чем напряжение питания. Однако, если вы задаете d
- ось тока статора (Id) до отрицательного значения, редактирования потока ротора уменьшается, что позволяет двигателю вращаться над номинальной скоростью. Эта операция известна как управление двигателем с ослаблением поля.
В зависимости от подключенной нагрузки и номинального тока машины, ссылки d
-ток оси () в управлении ослаблением поля также ограничивает ссылку q
-ток оси (), и, следовательно, ограничивает крутящий момент. Поэтому двигатель работает в области постоянного крутящего момента до номинальной скорости. Он действует в области постоянной степени с ограниченным крутящим моментом выше номинальной скорости, как показано на предыдущем рисунке.
Значение расчетов тока ссылки зависит от параметров двигателя и инвертора.
Примечание:
Для некоторых поверхностных PMSM (в зависимости от параметров) может оказаться невозможным достичь более высоких скоростей при номинальном токе. Для достижения более высоких скоростей необходимо перегрузить двигатель максимальными токами, которые выше номинального тока (если тепловые условия машины находятся в допустимых пределах).
Когда вы управляете двигателем выше номинальной скорости, мы рекомендуем вам контролировать температуру двигателя. Во время работы мотора, если температура двигателя повышается выше температуры, рекомендованной производителем, отключите двигатель по соображениям безопасности.
Когда вы управляете двигателем выше номинальной скорости, мы рекомендуем, чтобы вы увеличили ссылку скорости небольшими шагами, чтобы избежать динамики ослабления поля, которая может сделать некоторые системы нестабильными.
Максимальный крутящий момент на ампер (MTPA)
Для внутренних PMSM, салиентность в магнитной цепи ротора приводит к более высокому отношению (больше 1). Это создает реактивный крутящий момент в роторе (в дополнение к существующему электромагнитному крутящему моменту). Для получения дополнительной информации смотрите Ссылку управления MTPA.
Поэтому можно управлять машиной с оптимальной комбинацией и, и получить более высокий крутящий момент для того же тока статора,.
Это увеличивает эффективность машины, потому что потери тока статора минимизированы. Алгоритм, который вы используете, чтобы сгенерировать ссылку и токи для создания максимального крутящего момента в машине, называется Maximum Torque Per Ampere (MTPA).
Для внутреннего PMSM (IPMSM) этот пример вычисляет ссылку и токи с помощью метода MTPA до номинальной скорости. Для поверхностного PMSM (SPMSM), пример достигает операции MTPA с использованием нулевого d-ось опорного тока, пока не задана базовая скорость.
Чтобы работать с двигателем выше номинальной скорости, этот пример вычисляет ссылку и для управления MTPA и ослаблением поля, в зависимости от типа двигателя. Для поверхностного PMSM используется метод управления постоянной степенью постоянного напряжения (CVCP). Для внутреннего PMSM используется метод управления напряжением и током с ограниченным максимальным крутящим моментом (VCLMT).
Для получения информации о блоке MTPA Control Reference, смотрите MTPA Control Reference.
Целевая связь
Для аппаратной реализации в этом примере используются хост и целевая модель. Модель хоста, работающая на хосте-компьютере, общается с целевой моделью, развернутой к оборудованию, подключенному к двигателю. Модель хоста использует последовательную связь, чтобы командовать целевой моделью и запустить двигатель в системе управления с обратной связью.
Этот пример использует несколько моделей для этих аппаратных строений:
Регулирование скорости PMSM с ослаблением поля и MTPA:
Управление крутящим моментом PMSM с MTPA:
Можно использовать эти модели как для симуляции, так и для генерации кода. Можно также использовать команду open_system, чтобы открыть модели Simulink ®. Для примера используйте эту команду для основанного на F28069M контроллера:
open_system('mcb_pmsm_fwc_qep_f28069LaunchPad.slx');
Чтобы симулировать модель:
1. Для моделей: mcb_pmsm_fwc_qep_f28069LaunchPad и mcb_pmsm_mtpa_qep_f28069LaunchPad
Motor Control Blockset™
Fixed-Point Designer™
2. Для моделей: mcb_pmsm_fwc_qep_f28379d и mcb_pmsm_mtpa_qep_f28379d
Motor Control Blockset™
Чтобы сгенерировать код и развернуть модель:
1. Для моделей: mcb_pmsm_fwc_qep_f28069LaunchPad и mcb_pmsm_mtpa_qep_f28069LaunchPad
Motor Control Blockset™
Embedded Coder ®
Пакет поддержки Embedded Coder ® для процессоров Instruments™ C2000™ в Техасе
Fixed-Point Designer™
2. Для моделей: mcb_pmsm_fwc_qep_f28379d и mcb_pmsm_mtpa_qep_f28379d
Motor Control Blockset™
Embedded Coder ®
Пакет поддержки Embedded Coder ® для процессоров Instruments™ C2000™ в Техасе
Fixed-Point Designer™ (требуется только для оптимизированной генерации кода)
1. Получите параметры двигателя. Мы предоставляем параметры двигателя по умолчанию с моделью Simulink ®, которую вы можете заменить значениями либо из таблицы данных двигателей, либо из других источников.
Однако, если у вас есть оборудование управления двигателем, можно оценить параметры для двигателя, который вы хотите использовать, с помощью инструмента оценки параметра Motor Control Blockset. Для получения инструкций смотрите Оценку параметров двигателя с помощью Parameter Estimation Tool Motor Control Blockset.
Инструмент оценки параметра обновляет переменную motorParam (в рабочей области MATLAB ®) с помощью предполагаемых параметров двигателя.
2. Если вы получаете параметры двигателя из таблицы данных или других источников, обновляйте параметры калибровки двигателя, инвертора и датчика положения в скрипте инициализации модели, сопоставленном с моделями Simulink ®. Для получения инструкций смотрите Оценку коэффициентов усиления из параметров двигателя.
Если вы используете инструмент оценки параметра, можно обновить параметры калибровки инвертора и датчика положения, но не обновляйте параметры двигателя в скрипте инициализации модели. Скрипт автоматически извлекает параметры двигателя из обновленной переменной рабочей области motorParam.
Этот пример поддерживает симуляцию. Выполните следующие шаги, чтобы симулировать модель.
1. Откройте модель, включенную в этот пример.
2. Щелкните Запуском на вкладке Симуляции, чтобы симулировать модель.
3. Щелкните Data Inspector на вкладке Simulation, чтобы просмотреть и проанализировать результаты симуляции.
Анализ результатов симуляции для модели регулировки скорости
Модель использует систему в относительных единицах, чтобы представлять скорость, токи, напряжения, крутящий момент и степень. Введите PU System в рабочую область, чтобы увидеть преобразование значения в единицах СИ в модули для этих величин.
Наблюдайте динамику системы по скорости и токовым контроллерам. В сложение заметьте отрицательные токи Id для операции двигателя над номинальной скоростью.
Примечание:
Для некоторых поверхностных PMSM (в зависимости от параметров) может оказаться невозможным достичь более высоких скоростей при номинальном токе. Для достижения более высоких скоростей необходимо перегрузить двигатель максимальными токами, которые выше номинального тока (если тепловые условия машины находятся в допустимых пределах).
Когда вы управляете двигателем выше номинальной скорости, мы рекомендуем вам контролировать температуру двигателя. Во время работы мотора, если температура двигателя повышается выше температуры, рекомендованной производителем, отключите двигатель по соображениям безопасности.
Когда вы управляете двигателем выше номинальной скорости, мы рекомендуем, чтобы вы увеличили ссылку скорости небольшими шагами, чтобы избежать динамики ослабления поля, которая может сделать некоторые системы нестабильными.
Анализ результатов симуляции для модели управления крутящим моментом
Запустите симуляцию с токами D и q ссылки, сгенерированными этими тремя методами:
1. Сгенерируйте опорные токи с помощью MTPA Control Reference Block.
2. Сгенерируйте опорные токи MTPA вручную с помощью блока Vector Control Reference Block.
3. Сгенерируйте управляющую ссылку без MTPA.
Первый метод использует математические расчеты, чтобы определить опорные токи Id и Iq, после принятия линейной индуктивности.
Используйте второй метод, чтобы вручную сгенерировать интерполяционные таблицы MTPA для двигателей с нелинейными индуктивностями. Можно проиллюстрировать это с помощью ссылок Id и Iq, сгенерированных путем протаскивания угла крутящего момента между + (в/2) и - (в/2).
Используйте последний метод, чтобы получить опорные токи без алгоритма MTPA.
Можно сравнить крутящий момент и степени, генерируемые этими тремя методами в инспекторе данных.
В предыдущем примере можно заметить, что электрический крутящий момент, генерируемый с помощью MTPA 0.34PU в то время как электрический крутящий момент, генерируемый без MTPA, 0.27PU. Можно также заметить, что при меняющемся угле крутящего момента максимальный крутящий момент совпадает с крутящим моментом, создаваемым MTPA. Отрицательное d
-ток оси указывает, что MTPA использует реактивный крутящий момент для внутреннего PMSM.
ПРИМЕЧАНИЕ. Если вы работаете с Surface PMSM, измените параметр Type of motor с Interior PMSM на Surface PMSM, в контрольном блоке MTPA, расположенном в местоположении: «Torque Control\MTPA _ Reference\mate».
В этом разделе приведены инструкции для генерации кода и запуска алгоритма FOC на целевом компьютере.
Этот пример использует хост и целевую модель. Модель хоста является пользовательским интерфейсом к аппаратной плате контроллера. Можно запустить главную модель на хост-компьютер. Необходимым условием для использования модели хоста является развертывание целевой модели на аппаратной плате контроллера. Модель хоста использует последовательную связь, чтобы командовать целевой моделью Simulink ® и запустить двигатель в системе управления с обратной связью.
Необходимое оборудование
Этот пример поддерживает эти аппаратные строения. Можно также использовать имя целевой модели, чтобы открыть модель для соответствующего аппаратного строения, из командной строки MATLAB ®.
LAUNCHXL-F28069M контроллер + BOOSTXL-DRV8305 инвертор: mcb_pmsm_fwc_qep_f28069LaunchPad и mcb_pmsm_mtpa_qep_f28069LaunchPad
LAUNCHXL-F28379D контроллер + BOOSTXL-DRV8305 инвертор: mcb_pmsm_fwc_qep_f28379d и mcb_pmsm_mtpa_qep_f28379d
Для подключений, связанных с предыдущими аппаратными строениями, смотрите LAUNCHXL-F28069M и LAUNCHXL-F28379D Строений.
Запустите Модели, чтобы реализовать регулирование скорости и крутящего момента с ослаблением поля и MTPA
1. Моделируйте модель и анализируйте результаты симуляции с помощью предыдущего раздела.
2. Завершите аппаратные подключения.
3. Модель управления крутящим моментом требует Interior PMSM с датчиком QEP, управляемым внешним динамометром с управлением скоростью (который использует модель регулировки скорости).
4. Модель автоматически вычисляет значения смещения АЦП (или тока). Чтобы отключить эту функциональность (включенную по умолчанию), обновите значение нуля на инвертор переменной. ADCOffsetCalibEnable в скрипте инициализации модели.
Также можно вычислить значения смещения АЦП и обновить его вручную в скриптах инициализации модели. Для получения инструкций смотрите Запуск 3-Phase электродвигателей переменного тока в разомкнутом контуре управления и Калибровка смещения АЦП.
5. Вычислите значение смещения квадратурного энкодера и обновите его в скриптах инициализации модели, сопоставленных с целевой моделью. Для получения инструкций смотрите Калибровку смещения квадратурного энкодера для двигателя PMSM.
6. Откройте целевую модель для оборудования строения, которую вы хотите использовать. Если вы хотите изменить настройки аппаратного строения по умолчанию для целевой модели, см. Раздел «Параметры конфигурации модели».
7. Загрузите пример программы в CPU2 LAUNCHXL-F28379D, например, программу, которая управляет CPU2 синим светодиодом при помощи GPIO31 (c28379D_cpu2_blink.slx), чтобы убедиться, что CPU2 не ошибочно сконфигурирована, чтобы использовать периферийные устройства платы, предназначенные для CPU1.
8. Щелкните Сборка, Развертывание и запуск на вкладке Оборудование, чтобы развернуть целевую модель на оборудовании.
9. Щелкните гиперссылку модели хоста в целевой модели, чтобы открыть связанную модель хоста. Можно также использовать команду open_system, чтобы открыть модель хоста. Для примера используйте эту команду для реализации регулировки скорости:
open_system('mcb_pmsm_fwc_host_model.slx');
Для получения дополнительной информации о последовательной связи между хостом и целевыми моделями, смотрите Host-Target Communication.
10. В маске блока Host Serial Setup модели хоста выберите имя.
11. В модели Speed control обновите значение блока Задающая скорость (RPM). В модели управления крутящим моментом обновите текущий запрос с помощью блока Imag Reference.
12. Щелкните Запуском на вкладке Симуляции, чтобы запустить модель хоста.
13. Смените положение переключателя Start/Stop Motor на On, чтобы запустить и остановить вращение двигателя.
14. Введите различные задающие скорости (или токи) и наблюдайте сигналы отладки от подсистемы RX в Time Scope модели хоста.
Примечание
Если смещение положения неверно, этот пример может привести к сверхтокам в двигателе. Чтобы избежать этого, убедитесь, что смещение положения правильно вычислено и обновлено в переменной рабочей области: pmsm. PositionOffset.
Когда вы управляете двигателем выше номинальной скорости, мы рекомендуем вам контролировать температуру двигателя. Во время работы мотора, если температура двигателя повышается выше температуры, рекомендованной производителем, отключите двигатель по соображениям безопасности.
Когда вы управляете двигателем выше номинальной скорости, мы рекомендуем, чтобы вы увеличили ссылку скорости небольшими шагами, чтобы избежать динамики ослабления поля, которая может сделать некоторые системы нестабильными.
Ссылки
[1] B. Bose, современная степень и приводы переменного тока. Prentice Hall, 2001. ISBN-0-13-016743-6.
[2] Лоренц, Роберт Д., Томас Липо и Дональд В. Новотни. «Управление движением с асинхронными двигателями». Материалы IEEE, том 82, выпуск 8, август 1994 года, стр. 1215-1240.
[3] Моримото, Сигео, Масаюка Санада и Ёдзи Такэда. «Широкоскоростная операция синхронных двигателей с постоянными магнитами с высокопроизводительным регулятором тока». Транзакции IEEE по отраслевым приложениям, том 30, выпуск 4, июль/август 1994 года, стр. 920-926.
[4] Ли, Муян. Управление ослаблением потока синхронных двигателей с постоянными магнитами на основе инверторов Z-источника. Магистерская диссертация, Marquette University, e-Publications @ Marquette, осень 2014.
[5] Бриз, Фернандо, Майкл В. Дегнер и Роберт Д. Лоренц. «Анализ и проект регуляторов тока с использованием сложных векторов». Транзакции IEEE по отраслевым приложениям, том 36, выпуск 3, май/июнь 2000 года, стр. 817-825.
[6] Briz, Fernando, et al. «Регулирование тока и потока в операции ослабления поля [асинхронных двигателей]». Транзакции IEEE по отраслевым приложениям, том 37, выпуск 1, январь/февраль 2001 года, стр. 42-50.
[7] Примечание по применению TI, «Sensorless-FOC с ослаблением потока и MTPA для приводов с двигателем IPMSM».