exponenta event banner

Добавить блок драйвера PWM

В браузере библиотеки Simulink ® добавьте блок ePWM из пакета поддержки Embedded Coder ® для процессоров Texas Instruments™ C2000™ > F2837xD.

Сконфигурируйте блоки ePWM1, ePWM2 и ePWM3 для генерации импульса ШИМ. В диалоговом окне параметров блока ePWM вычислите значение регистра периода счетчика широтно-импульсной модуляции (PWM) из частоты CPU и частоты PWM. Для ШИМ, выровненных по центру, разделите значение на 2.

Период счетчика ШИМ = тактовая частота ЦП/частота ШИМ/ 2

Для получения дополнительной информации см. периферийное устройство ePWM процессора TMS320f28379d.

В диалоговом окне «Параметры блока F2837x/07x/004x/38x ePWM» обновите настройки для настройки PWM1 генерации импульсов PWM на целевом оборудовании, как показано в этой таблице.

Вкладка и параметр в блоке ePWMНастройки

Общие > Модуль

ePWM1

Общие > Период таймера

Введите значение периода ШИМ в тактовом цикле ЦП.

  • Период счетчика ШИМ = тактовая частота ЦП/частота ШИМ/ 2

  • Для LaunchPad 28379D тактовая частота равна 200 МГц. Для частоты ШИМ 20 кГц,

    Период счетчика PWM = 200e6 / 20e3 / 2;

    Период счетчика PWM = 5000

Counter Compare > Укажите CMPA через

Входной порт

Счетчик Сравнить > Начальное значение CMPA

Введите период счетчика PWM/ 2 (2500)

Counter Compare > Укажите CMPB через

Входной порт

Счетчик Сравнить > Начальное значение CMPB

Введите период счетчика PWM/ 2 (2500)

Единица измерения зоны нечувствительности > Использовать зону нечувствительности для ePWM1A

on

Единица измерения зоны нечувствительности > Использовать зону нечувствительности для ePWM1B

on

Единица измерения диапазона нечувствительности > Полярность диапазона нечувствительности

Активный высококомплементарный (AHC)

Диапазон нечувствительности > Период нарастания полосы нечувствительности (RED) (0 ~ 16383)

15

Единица нечувствительности > Период падения полосы нечувствительности (FED) (0 ~ 16383)

15

Триггер события > флажок Включить начало преобразования АЦП для модуля A (только для PWM1)

on

Триггер события > Начало преобразования для выбора события модуля A (только для PWM1)

Счетчик равен периоду (CTR = PRD)

Переименуйте блок в ePWM1.

В диалоговом окне параметров блока F2837x/07x/004x/38x ePWM обновите настройки, чтобы настроить PWM2 и PWM3, чтобы произвести импульсы PWM в целевых аппаратных средствах. PWM2 и PWM3 синхронизированы с PWM1. Следуйте ePWM1 конфигурациям (кроме триггера событий) и добавьте конфигурации, как показано в этой таблице.

Вкладка и параметр в блоке ePWMНастройки

Общие > Модуль

ePWM2

Общие > Период таймера

Введите значение периода ШИМ в тактовом цикле ЦП.

  • Период счетчика ШИМ = тактовая частота ЦП/частота ШИМ/ 2

  • Для LaunchPad 28379D тактовая частота равна 200 МГц. Для частоты ШИМ 20 кГц,

    Период счетчика PWM = 200e6 / 20e3 / 2;

    Период счетчика PWM = 5000

Общие > Действие синхронизации

Установите счетчик в значение фазы, указанное в диалоговом окне

General > Counting direction after phase synchronization

Отсчет после синхронизации

Общие > Значение смещения фазы (TBPHS)

0

Counter Compare > Укажите CMPA через

Входной порт

Счетчик Сравнить > Начальное значение CMPA

Введите период счетчика PWM/ 2 (2500)

Counter Compare > Укажите CMPB через

Входной порт

Счетчик Сравнить > Начальное значение CMPB

Введите период счетчика PWM/ 2 (2500)

Единица измерения зоны нечувствительности > Использовать зону нечувствительности для ePWM1A

on

Единица измерения зоны нечувствительности > Использовать зону нечувствительности для ePWM1B

on

Единица измерения диапазона нечувствительности > Полярность диапазона нечувствительности

Активный высококомплементарный (AHC)

Диапазон нечувствительности > Период нарастания полосы нечувствительности (RED) (0 ~ 16383)

15

Единица нечувствительности > Период падения полосы нечувствительности (FED) (0 ~ 16383)

15

Переименуйте блоки в ePWM2 и ePWM3.

В качестве входных портов выберите CMPA и CMPB, для которых в качестве входных данных задана функция PWM. Диапазон варьируется от 0 в PWM_counter_period. Выходные сигналы PWM, когда счетчик с повышением ШИМ соответствует CMPA, и счетчик с понижением ШИМ соответствует CMPB. По умолчанию система вводит рабочий цикл 50% путем выбора периода счетчика ШИМ/ 2.

Включить время простоя в конфигурации ePWM. На вкладке Event Trigger PWM1 модуля выберите ADC start of conversion event, когда счетчик ШИМ равен периоду ШИМ. На вкладке SOC Trigger блока ADC выберите источник триггера SOCx в качестве ePWM1_ADCSOCA.

Синхронизируйте блоки ePWM2 и ePWM3 с блоком ePWM1 путем установки синхронизации в момент, когда счетчик ШИМ равен нулю в блоках ePWM2 и ePWM3.

Блоки ePWM ожидают, что значение рабочего цикла будет находиться в диапазоне от 0 в регистр счетчика периодов (5000). Подсистема Control_System выводит ШИМ в диапазоне -1 кому 1. Эта модель масштабирует выходные данные до 0 кому 5000(значение счетчика периодов).

Для моделирования добавьте источник/приемник варианта в блок драйвера аппаратного обеспечения для моделирования и генерации кода.