В модели примера mcb_pmsm_foc_sim
, конфигурирование токового контроллера и контроллера скорости являются двумя важными задачами. Текущий контроллер должен запускаться после каждого T с (50
мксек для 20
частота переключения кГц) и контроллер скорости запускается после каждого T s _ speed (10
* T с). Токовый контроллер считывает токи фазы двигателя и положение и вычисляет коэффициент заполнения ШИМ, чтобы запустить двигатель. Контроллер скорости запускает контур управления, вычисляет q I ссылку для токового контроллера и управляет скоростью двигателя в системе с обратной связью.
В целевом компьютере токовый контроллер синхронизируется с прерыванием АЦП (для каждого T с), и контроллер скорости запускается после каждого T s _ speed (10
* T с).
Этот рисунок показывает последовательность событий, триггер прерывания и время выполнения программного обеспечения для алгоритма управления, выполняемого в целевом компьютере.
На этом рисунке времена выполнения для токового контроллера и контроллера скорости не в шкале. Смотрите таблицу данных процессора, чтобы лучше изучить функциональность периферийных устройств процессора, таких как АЦП (аналого-цифровой преобразователь) и ШИМ (модуляция ширины импульса).
Последовательность событий, следующая в модели:
Периферийный ШИМ процессора, который является выровненным по центру (счетчик вверх-вниз), запускает событие запуска преобразования (SOC) для модуля АЦП, когда значение счетчика ШИМ равняется периоду ШИМ.
Модуль АЦП преобразует дискретизированный аналоговый сигнал в цифровые счетчики и запускает событие конца преобразования (EOC).
EOC инициирует прерывание АЦП.
Выполнение токового контроллера запланировано с прерыванием АЦП.
Контроллер скорости должен запускаться после каждого T s _ speed.
Можно также использовать SoC Blockset™ для планирования задач, профилирования и решения проблем, связанных с синхронизацией ADC-PWM, реакцией контроллера и изучением различных настроек PWM. Для получения дополнительной информации смотрите Интеграция планирования MCU и периферийных устройств в приложении управления двигателем.