Калибровка смещения Холла для двигателя PMSM

Этот пример вычисляет смещение между прямой осью ротора (d- ось) и положение, обнаруженное датчиком Холла. Алгоритму управления (FOC), ориентированному на поле, нужно это смещение положения, чтобы запустить синхронный двигатель с постоянными магнитами (PMSM) правильно. Чтобы вычислить смещение, целевая модель запускает двигатель в условии разомкнутого контура. В модели используется константа${V_d}$ (напряжение вдоль статора d-ось) и нуль${V_q}$ (напряжение вдоль q статора- ось), чтобы запустить двигатель (с низкой постоянной скоростью) с помощью генератора положения или наклона. Когда положение или значение наклона достигает нуля, соответствующее положение ротора является значением смещения для датчиков Холла.

Алгоритм управления (доступный в примерах векторного управления и оценки параметра) использует это значение смещения, чтобы вычислить точное положение d-ось ротора. Контроллеру нужно это смещение, чтобы оптимально запустить PMSM.

Модели

Этот пример включает в себя следующие модели:

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

open_system('mcb_pmsm_hall_offset_f28069m.slx');

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

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

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

1. Для модели: mcb_pmsm_hall_offset_f28069m

  • Motor Control Blockset™

  • Embedded Coder ®

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

  • Fixed-Point Designer™

2. Для модели: mcb_pmsm_hall_offset_f28379d

  • Motor Control Blockset™

  • Embedded Coder ®

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

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

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

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

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

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

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

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

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

Чтобы сконфигурировать mcb_pmsm_hall_offset_f28379d модели, установите в поле Логика включения инвертора (на панели Configuration целевой модели) значение:

  • Активный Высокий: Использовать модель с BOOSTXL-DRV8305 инвертором.

  • Активный низкий: Использовать модель с BOOSTXL-3PHGANINV инвертором.

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

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

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

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

3. Обновите параметры двигателя на панели « Строении» целевой модели.

  • Количество пар полюсов

  • Частота ШИМ [Гц]

  • Тип данных для алгоритма управления

  • Vd Ссылка на напряжение в модулях

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

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

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

open_system('mcb_pmsm_host_offsetComputation_f28069m.slx');

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

Можно использовать возможности в модели хоста, чтобы контролировать положение ротора и значения смещения.

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

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

9. Смотрите раздел «Статус калибровки», чтобы узнать о состоянии процесса калибровки:

  • Светодиод Calibration in progress становится оранжевым, когда двигатель начинает вращаться. Заметьте положение ротора и изменение значения смещения в возможности (сигнал положения указывает сигнал наклона с амплитудой от 0 до 1). После завершения калибровки светодиод становится серым.

  • Светодиод Calibration complete становится зеленым, когда процесс калибровки завершен. Затем Calibration Output в поле отображается вычисленное значение смещения.

  • Светодиодный индикатор неправильного направления двигателя становится красным, если двигатель вращается в противоположном направлении. Затем Calibration Output в поле отображается значение «NaN». Отключите источник степени постоянного тока (24V) и отключите соединения фазы двигателя от ABC к CBA. Повторите шаги 5-8 и проверьте, является ли индикатор Calibration complete зеленым. Проверьте, что Calibration Output в поле отображается значение смещения.

Примечание. Чтобы немедленно остановить двигатель, нажмите кнопку Emergency Motor Stop.

Этот пример не поддерживает симуляцию. Пример автоматически сохраняет вычисленное значение смещения в PositionOffset переменная, доступная в базовом рабочем пространстве.

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

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