Этот пример вычисляет перемещение между ротором прямая ось (d
- ось), и положение обнаруживается датчиком Холла. Для алгоритма ориентированного на поле управления (FOC) нужно это смещение положения, чтобы запустить постоянный магнит синхронный двигатель (PMSM) правильно. Чтобы вычислить смещение, целевая модель запускает двигатель в условии разомкнутого контура. Модель использует константу (напряжение вдоль d
статора- ось) и нуль (напряжение вдоль
q
статора- ось), чтобы запустить двигатель (на низкой постоянной скорости) при помощи положения или генератора линейной функции. Когда значение положения или пандуса достигает нуля, соответствующее положение ротора является значением смещения для датчиков Холла.
Алгоритм управления (доступный в ориентированном на поле управлении и примерах оценки параметра) использует это значение смещения, чтобы вычислить точное положение d
- ось ротора. Контроллеру нужно это смещение, чтобы оптимально запустить PMSM.
Этот пример включает эти модели:
Можно использовать эти модели только для генерации кода. Можно также использовать open_system команду, чтобы открыть модели Simulink®. Например, используйте эту команду для F28069M, базирующегося контроллер:
open_system('mcb_pmsm_hall_offset_f28069m.slx');
Для имен модели, которые можно использовать для различных аппаратных конфигураций, смотрите тему "Необходимое аппаратное обеспечение" в разделах "Генерация кода" и "Развертывание модели на целевом аппаратном обеспечении".
Сгенерировать код и развернуть модель:
1. Для модели: mcb_pmsm_hall_offset_f28069m
Motor Control Blockset™
Embedded Coder®
Embedded Coder® Support Package для процессоров Instruments™ C2000™ Техаса
Fixed-Point Designer™
2. Для модели: mcb_pmsm_hall_offset_f28379d
Motor Control Blockset™
Embedded Coder®
Embedded Coder® Support Package для процессоров Instruments™ C2000™ Техаса
Fixed-Point Designer™ (только необходимый для генерации оптимизированного кода)
В этом разделе приведены инструкции для генерации кода и запуска двигателя при помощи регулирования без обратной связи.
Этот пример использует хост и целевую модель. Модель хоста является пользовательским интерфейсом к плате оборудования контроллеров. Можно запустить модель хоста на хосте - компьютере. Необходимое условие, чтобы использовать модель хоста должно развернуть целевую модель в плату оборудования контроллеров.
Модель хоста использует последовательную передачу, чтобы управлять целевой моделью и запустить двигатель в настройке разомкнутого контура. Можно использовать модель хоста, чтобы управлять моторными вращениями и подтвердить направление вращения двигателя. Неправильный моторный LED направления в модели хоста покраснел, чтобы указать, что двигатель запускается в противоположном направлении. Когда LED покраснел, необходимо инвертировать моторные связи фазы, чтобы изменить направление вращения. Модель хоста отображает расчетное значение смещения.
Необходимое оборудование
Этот пример поддерживает эти аппаратные конфигурации. Можно также использовать целевое имя модели, чтобы открыть модель для соответствующей аппаратной конфигурации от командной строки MATLAB®.
Плата контроллера F28069M + инвертор DRV8312-69M-KIT: mcb_pmsm_hall_offset_f28069m
Для связей, связанных с предыдущей аппаратной конфигурацией, см. настройку платы управления F28069.
Контроллер LAUNCHXL-F28379D + (BOOSTXL-DRV8305 или BOOSTXL-3PHGANINV) инвертор: mcb_pmsm_hall_offset_f28379d
Чтобы сконфигурировать модель mcb_pmsm_hall_offset_f28379d, установите поле Inverter Enable Logic (в панели Настройки целевой модели) к:
Активный Высоко: использовать модель с инвертором BOOSTXL-DRV8305.
Активный Низко: использовать модель с инвертором BOOSTXL-3PHGANINV.
Для связей, связанных с предыдущей аппаратной конфигурацией, см. LAUNCHXL-F28069M и Настройки LAUNCHXL-F28379D.
Сгенерируйте код и запущенную модель на целевом компьютере
1. Завершите аппаратные связи.
2. Откройте целевую модель для аппаратной конфигурации, которую вы хотите использовать. Если вы хотите изменить настройки аппаратной конфигурации по умолчанию для целевой модели, смотрите Параметры конфигурации Модели.
3. Обновите параметры двигателя в панели Настройки целевой модели.
Количество пар полюсов
Частота PWM [Гц]
Тип данных для алгоритма управления
Vd Касательно в На Модульное напряжение
4. Загрузите пример программы к CPU2 LAUNCHXL-F28379D, например, программа, которая управляет синим CPU2 Во главе с использованием GPIO31 (c28379D_cpu2_blink.slx), чтобы гарантировать, что CPU2 по ошибке не сконфигурирован, чтобы использовать периферийные устройства платы, предназначенные для CPU1.
5. Click Build, Deploy & Start на вкладке Hardware, чтобы развернуть целевую модель в оборудование.
6. Кликните по гиперссылке модели хоста в целевой модели, чтобы открыть связанную модель хоста. Можно также использовать open_system команду, чтобы открыть модель хоста. Например, используйте эту команду для F28069M, базирующегося контроллер:
open_system('mcb_pmsm_host_offsetComputation_f28069m.slx');
Для получения дополнительной информации о последовательной передаче между хостом и целевыми моделями, смотрите Целевую Хостом Коммуникацию.
Можно использовать Осциллограф в модели хоста, чтобы контролировать положение ротора и возместить значения.
7. В маске блока Host Serial Setup модели хоста выберите имя Port.
8. Нажмите работает на вкладке 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
параметр в скрипте инициализации модели, соединенном с примером. Для инструкций смотрите Оценочные Усиления Управления от Параметров двигателя.