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

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

Модели

Пример включает эти модели:

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

open_system('mcb_pmsm_qep_offset_f28069m.slx');

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

Необходимый MathWorks® Products

Сгенерировать код и развернуть модель:

1. Для моделей: mcb_pmsm_qep_offset_f28069m и mcb_pmsm_qep_offset_f28069mLaunchPad

  • Motor Control Blockset™

  • Embedded Coder®

  • Embedded Coder® Support Package для процессоров Instruments™ C2000™ Техаса

  • Fixed-Point Designer™

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

  • Motor Control Blockset™

  • Embedded Coder®

  • Embedded Coder® Support Package для процессоров Instruments™ C2000™ Техаса

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

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

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

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

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

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

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

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

Чтобы сконфигурировать модель mcb_pmsm_qep_offset_f28379d, установите поле Inverter Enable Logic (в панели Настройки целевой модели) к:

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

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

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

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

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

1. Завершите аппаратные связи.

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

3. Обновите параметры двигателя в панели Настройки целевой модели.

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

  • Разрезы QEP

  • Частота PWM [Гц]

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

  • Vd Касательно в На Модульное напряжение

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

4. Click Build, Deploy & Start на вкладке Hardware, чтобы развернуть целевую модель в оборудование.

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

open_system('mcb_pmsm_host_offsetComputation_f28069m.slx');

Для получения дополнительной информации о последовательной передаче между хостом и целевыми моделями, смотрите Целевую Хостом Коммуникацию.

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

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

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

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

  • Калибровка в прогрессе, LED становится оранжевым, когда двигатель начинает запускаться. Заметьте положение ротора, и изменение значения смещения в Осциллографе (сигнал положения указывает на сигнал пандуса с амплитудой между 0 и 1). После того, как калибровочный процесс завершен, LED стал серым.

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

  • Неправильный моторный LED направления покраснел, если двигатель запускается в противоположном направлении. Затем Calibration Output поле отображает значение "NaN". Выключите предоставление мощности постоянного тока (24 В) и инвертируйте моторные связи фазы от ABC до CBA. Повторите шаги 5 - 8 и проверку, если Калибровка завершается, LED является зеленым. Проверьте что Calibration Output поле отображает значение смещения.

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

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

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