ДонНТУ   Портал магистров

Модуль ШИМ для микроконтроллера TMS320F28035

Описание принципа ШИМ

Модуль ePWM (Enhanced Pulse-Width Modulator) позволяет генерировать ШИМ-сигнал сложной формы с минимальным задействованием процессора.

ePWM модуль может изменять уровень GPIO процессора в автоматическом режиме, без необходимости вручную задавать уровень сигнала. Каждый модуль может управлять двумя выводами. Всего в микроконтроллере F28035 есть 6 таких модулей.

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

Аббревиатура ШИМ расшифровывается как «широтно-импульсный модулятор», или модуляция. В зарубежной литературе – Pulse-Width Modulator (PWM). На микроконтроллере TMS320F28035 модуль ШИМ называется – ePWM, где буква «e» означает «enhanced», то есть усовершенствованный. Подразумевается усовершенствование по сравнению с версиями модулей ШИМ в предыдущих моделях микроконтроллеров (TMS320F2407, TMS320F2812 и тд). Модуль ШИМ предназначен для формирования управляющих сигналов силовых ключей. Эти сигналы по сути представляют собой последовательность импульсов высокого уровня и низкого, то есть логические «0» и «1». Высокий сигнал открывает ключ, низкий закрывает. Либо наоборот, в зависимости от того, как организована схема драйвера ключа.

Для формирования ШИМ сигнала нужны две составляющие – несущий сигнал и задание. Несущий сигнал является периодическим сигналом. Его период называют «период ШИМ». На рисунке 1 несущий сигнал имеет «пилообразную» форму. Синусоидальный сигнал задания сравнивается с несущим сигналом. В тот момент, когда оба сигнала одинаковы при растущем несущем сигнале, выходной сигнал ШИМ меняет свой уровень с «1» на «0»; когда несущий сигнал достигает максимума и сбрасывается, выходной сигнал также сбрасывается. Реализация может быть и другой – несущий сигнал может быть не «растущим», а «падающим» или «треугольным»; выходной сигнал может меняться не с «1» на «0» при сравнении, а наоборот. Основной принцип остаётся неизменным: при сравнении несущего сигнала с сигналом задания, меняется выходной сигнал.

Рисунок 1 – Формирование ШИМ-сигнала

Рисунок 1 – Формирование ШИМ-сигнала

В цифровом виде роль несущего сигнала выполняет счётчик (таймер), который работает в автоматическом режиме. Счёт можно настроить разными способами: «вверх» (от нуля до периода, как на рисунке выше), «вниз» (от периода до нуля), или «вверх-вниз» (от нуля до периода, а затем обратно до нуля). В качестве сигнала задания выступает какое-либо число, которое задаёт программист, и с которым сравнивается значение счётчика. Такое число называется уставкой сравнения. При этом у каждого модуля ePWM есть две независимые уставки сравнения A и B, что даёт возможность сформировать сразу два выходных сигнала – EPWMxA и EPWMxB (здесь x – номер ePWM-модуля). Эти выходные сигналы могут быть выведены на выводы микроконтроллера вместо определённых GPIO. Например, для модуля ePWM1 канал A можно вывести вместо GPIO0, а канал B вместо GPIO1.

Модули ШИМ на микроконтроллере F28035

На микроконтроллере TMS320F28035 присутствуют 6 модулей ШИМ (ePWM), все они идентичны и могут работать независимо друг от друга; программист может задействовать столько модулей, сколько ему нужно. Как уже упоминалось, каждый модуль ePWM имеет два выходных канала A и B; другими словами, один модуль может формировать сразу два выходных сигнала. Эти два сигнала могут зависеть или не зависть друг от друга, например, канал B может автоматически принимать сигнал, комплементарный (противоположный) сигналу A с выдержкой мёртвого времени между ними – такой подход позволяет упростить организацию сигналов управления стойкой инвертора.

Структура модуля ШИМ

Модуль ePWM состоит из нескольких подмодулей. Его структура и отношения между подмодулями показаны на рисунке 2:

Рисунок 2 – Структура модуля ePWM

Рисунок 2 – Структура модуля ePWM

Краткое описание подмодулей:

Настройка модуля ШИМ

Под настройкой модуля ШИМ подразумевается настройка всех или нескольких его подмодулей. Каждый подмодуль имеет по несколько регистров для конфигурации. Все регистры подмодулей объединяются в группу регистров с названием «EPwmXRegs», где X означает номер модуля ePWM.

Рисунок 3 – Настройка модуля ШИМ

Рисунок 3 – Настройка модуля ШИМ

Список использованной литературы

1. Datasheet для TMS320F28035-EP Piccolo Microcontroller

2. Особенности реализации векторной ШИМ для микропроцессоров TMS320