Применение шим. ШИМ и PWM - что это такое? Общие сведения о широтно-импульсной модуляции

ШИМ или в английском PWM (Pulse-Width Modulation) широтно-импульсная модуляция - способ используемый для контроля величины напряжения и тока. Принцип действия ШИМ состоит в изменении ширины импульса постоянной амплитуды при постоянной частоте.

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


Принцип действия ШИМ

Принцип действия состоит в изменении ширины импульса сигнала. При использовании способа широтно-импульсной модуляции, частота сигнала и амплитуда будут всегда постоянными. Важнейшим параметром сигнала ШИМ считают коэффициент заполнения, который можно вычислить по формуле.

где T = T ON + T OFF ; T ON - время высокого уровня; TOFF - время низкого уровня; T - период сигнала

Время высокого уровня и низкого уровня сигнала показано на рисунке выше. Остается добавить, то что U1- это состояния высокого уровня сигнала, то есть амплитуда.

Допустим у нас имеется ШИМ сигнал с заданным временным интервалом высокого и низкого уровня, смотри рисунок:

Подставив в формулу коэффициента заполнения ШИМ имеющиеся данные получим: 300/800=0,375. Для того чтобы узнать процентный коэффициент заполнения требуется результат умножить еще на 100%, т.е К ω% = 37,5% . Коэффициент заполнения это абстрактное значение.

Еще одним важнейшим параметром ШИМ считается также частота сигнала, которая определяется по известной формуле:

f=1/T=1/0,8=1,25 Гц

Благодаря возможности настройки ширины импульса можно регулировать среднее значение напряжения. На рисунке приведены различные коэффициенты заполнения при одной и той же частоте и амплитуды.

Для нахождения среднего значения напряжения ШИМ требуется коэффициент заполнения 37,5% и амплитуда 12 В:

U sr =К ω ×U 1 =0,375×12=4,5 Вольта

ШИМ позволяет понижать напряжение в интервале от U 1 и до 0. Это свойство часто используется в , или скорости вращения вала двигателя постоянного тока.

Сигнал ШИМ в электронике формируют с помощью микроконтроллера или какой-либо аналоговой схемой. Сигнал от них должен быть низкого уровня напряжения и очень малым током на выходе схемы. В случае если необходимо управление мощной нагрузкой, можно использовать типовую систему управления, с помощью биполярного или .

Сигнал ШИМ следует на базу транзистора через сопротивление R1, поэтому VT1 с изменением сигнала то открывается, то запирается. Если транзистор открыт, светодиод горит. А в момент времени, когда транзистор запирается, и светодиод тухнет. Если частота сигнала мала, то получим мигающий светодиод. При частоте от 50 Гц мигания уже не незаметны человеческим глазом, и мы видим эффект снижения яркости свечения. Чем ниже значение коэффициента заполнения, тем слабее будет гореть светодиод.

Этот же принцип и похожую электронную схему можно применить и в случае управления двигателем постоянного тока, но частота должна быть на порядок выше (15-20 кГц) по двум основным причинам.

При более низких частотах двигатель может издавать ужасный писк, вызывающий раздражение.
Ну и от частоты зависит стабильность работы двигателя. При управлении низкочастотным сигналом с низким коэффициентом заполнения, обороты будут нестабильны и он может даже полностью остановиться. Поэтому, с ростом частоты сигнала ШИМ, растет стабильность среднего выходного напряжения и снижаются пульсации напряжения. Однако, есть предел по частоте, т.к при больших частотах полупроводниковый прибор может не успеть полностью переключиться, и схема управления будет работать с ошибками. Кроме того высокая частота ШИМ сигнала также увеличивает потери на транзисторе. Управляя двигателем на высоких частотах желательно использовать быстродействующий полупроводник с низким сопротивлением проводимости.

Ниже рассмотрим реальную рабочую схему на операционном усилителе

Регулируя величину напряжения на неинвертирующем входе ОУ можно задаватьтребуюмую величину выходного напряжения. Поэтому, эту схему можно использовать в роли регулятора тока или напряжения или в роли регулятора оборотов двигателя постоянного тока.

Схема проста и надежна, состоит из доступных радиоэлементов и при правильной сборке сразу начнет работать. В роли управляющего ключа взят мощный полевой n- канальный транзистор.

Широтно-импульсная модуляция (ШИМ) – это метод преобразования сигнала, при котором изменяется длительность импульса (скважность), а частота остаётся константой. В английской терминологии обозначается как PWM (pulse-width modulation). В данной статье подробно разберемся, что такое ШИМ, где она применяется и как работает.

Область применения

С развитием микроконтроллерной техники перед ШИМ открылись новые возможности. Этот принцип стал основой для электронных устройств, требующих, как регулировки выходных параметров, так и поддержания их на заданном уровне. Метод широтно-импульсной модуляции применяется для изменения яркости света, скорости вращения двигателей, а также в управлении силовым транзистором блоков питания (БП) импульсного типа.

Широтно-импульсная (ШИ) модуляция активно используется в построении систем управления яркостью светодиодов. Благодаря низкой инерционности, светодиод успевает переключаться (вспыхивать и гаснуть) на частоте в несколько десятков кГц. Его работа в импульсном режиме воспринимается человеческим глазом как постоянное свечение. В свою очередь яркость зависит от длительности импульса (открытого состояния светодиода) в течение одного периода. Если время импульса равно времени паузы, то есть коэффициент заполнения – 50%, то яркость светодиода будет составлять половину от номинальной величины. С популяризацией светодиодных ламп на 220В стал вопрос о повышении надёжности их работы при нестабильном входном напряжении. Решение было найдено в виде универсальной микросхемы – драйвера питания, работающего по принципу широтно-импульсной или частотно-импульсной модуляции. Схема на базе одного из таких драйверов детально описана .

Подаваемое на вход микросхемы драйвера сетевое напряжение постоянно сравнивается с внутрисхемным опорным напряжением, формируя на выходе сигнал ШИМ (ЧИМ), параметры которого задаются внешними резисторами. Некоторые микросхемы имеют вывод для подачи аналогового или цифрового сигнала управления. Таким образом, работой импульсного драйвера можно управлять с помощью другого ШИ-преобразователя. Интересно, что на светодиод поступают не высокочастотные импульсы, а сглаженный дросселем ток, который является обязательным элементом подобных схем.

Масштабное применение ШИМ отражено во всех LCD панелях со светодиодной подсветкой. К сожалению, в LED мониторах большая часть ШИ-преобразователей работает на частоте в сотни Герц, что негативно отражается на зрении пользователей ПК.

Микроконтроллер Ардуино тоже может функционировать в режиме ШИМ контроллера. Для этого следует вызвать функцию AnalogWrite() с указанием в скобках значения от 0 до 255. Ноль соответствует 0В, а 255 – 5В. Промежуточные значения рассчитываются пропорционально.

Повсеместное распространение устройств, работающих по принципу ШИМ, позволило человечеству уйти от трансформаторных блоков питания линейного типа. Как результат – повышение КПД и снижение в несколько раз массы и размеров источников питания.

ШИМ-контроллер является неотъемлемой частью современного импульсного блока питания. Он управляет работой силового транзистора, расположенного в первичной цепи импульсного трансформатора. За счёт наличия цепи обратной связи напряжение на выходе БП всегда остаётся стабильным. Малейшее отклонение выходного напряжения через обратную связь фиксируется микросхемой, которая мгновенно корректирует скважность управляющих импульсов. Кроме этого современный ШИМ-контроллер решает ряд дополнительных задач, способствующих повышению надёжности источника питания:

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

Принцип работы ШИМ контроллера

Задача ШИМ контроллера состоит в управлении силовым ключом за счёт изменения управляющих импульсов. Работая в ключевом режиме, транзистор находится в одном из двух состояний (полностью открыт, полностью закрыт). В закрытом состоянии ток через p-n-переход не превышает несколько мкА, а значит, мощность рассеивания стремится к нулю. В открытом состоянии, несмотря на большой ток, сопротивление p-n-перехода чрезмерно мало, что также приводит к незначительным тепловым потерям. Наибольшее количество тепла выделяется в момент перехода из одного состояния в другое. Но за счёт малого времени переходного процесса по сравнению с частотой модуляции, мощность потерь при переключении незначительна.

Широтно-импульсная модуляция разделяется на два вида: аналоговая и цифровая. Каждый из видов имеет свои преимущества и схемотехнически может реализовываться разными способами.

Аналоговая ШИМ

Принцип действия аналогового ШИ-модулятора основан на сравнении двух сигналов, частота которых отличается на несколько порядков. Элементом сравнения выступает операционный усилитель (компаратор). На один из его входов подают пилообразное напряжение высокой постоянной частоты, а на другой – низкочастотное модулирующее напряжение с переменной амплитудой. Компаратор сравнивает оба значения и на выходе формирует прямоугольные импульсы, длительность которых определяется текущим значением модулирующего сигнала. При этом частота ШИМ равна частоте сигнала пилообразной формы.

Цифровая ШИМ

Широтно-импульсная модуляция в цифровой интерпретации является одной из многочисленных функций микроконтроллера (МК). Оперируя исключительно цифровыми данными, МК может формировать на своих выходах либо высокий (100%), либо низкий (0%) уровень напряжения. Однако в большинстве случаев для эффективного управления нагрузкой напряжение на выходе МК необходимо изменять. Например, регулировка скорости вращения двигателя, изменение яркости светодиода. Что делать, чтобы получить на выходе микроконтроллера любое значение напряжения в диапазоне от 0 до 100%?

Вопрос решается применением метода широтно-импульсной модуляции и, используя явление передискретизации, когда заданная частота переключения в несколько раз превышает реакцию управляемого устройства. Изменяя скважность импульсов, меняется среднее значение выходного напряжения. Как правило, весь процесс происходит на частоте в десятки-сотни кГц, что позволяет добиться плавной регулировки. Технически это реализуется с помощью ШИМ-контроллера – специализированной микросхемы, которая является «сердцем» любой цифровой системы управления. Активное использование контроллеров на основе ШИМ обусловлено их неоспоримыми преимуществами:

  • высокой эффективности преобразования сигнала;
  • стабильность работы;
  • экономии энергии, потребляемой нагрузкой;
  • низкой стоимости;
  • высокой надёжности всего устройства.

Получить на выводах микроконтроллера ШИМ сигнал можно двумя способами: аппаратно и программно. В каждом МК имеется встроенный таймер, который способен генерировать ШИМ импульсы на определённых выводах. Так достигается аппаратная реализация. Получение ШИМ сигнала с помощью программных команд имеет больше возможностей в плане разрешающей способности и позволяет задействовать большее количество выводов. Однако программный способ ведёт к высокой загрузке МК и занимает много памяти.

Примечательно, что в цифровой ШИМ количество импульсов за период может быть различным, а сами импульсы могут быть расположены в любой части периода. Уровень выходного сигнала определяется суммарной длительностью всех импульсов за период. При этом следует понимать, что каждый дополнительный импульс – это переход силового транзистора из открытого состояния в закрытое, что ведёт к росту потерь во время переключений.

Пример использования ШИМ регулятора

Один из вариантов реализации ШИМ простого регулятора уже описывался ранее в . Он построен на базе микросхемы и имеет небольшую обвязку. Но, несмотря на простату схемы, регулятор имеет довольно широкую область применения: схемы управления яркости светодиодов, светодиодных лент, регулировка скорость вращения двигателей постоянного тока.

Читайте так же

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

Так как для меня самым важным было применение ШИМ именно для управления яркостью светодиодов, то именно их я и буду использовать в примерах. В качестве микроконтроллера будем использовать горячо любимый ATmega8.

Для начала вспомним, что такое ШИМ. ШИМ сигнал - это импульсный сигнал определенной частоты и скважности:

Частота, это количество периодов за одну секунду. Скважность- отношение длительности импульса к длительности периода. Можно изменять и то и другое, но для управления светодиодами достаточно управлять скважностью. На картинке выше мы видим ШИМ сигнал со скважностью 50 %, так как длительность импульса (ширина импульса) ровно половина от периода. Соответственно светодиод будет ровно половину времени во включенном состоянии и половину в выключенном. Частота ШИМ очень большая и глаз не заметит мерцания светодиода из за инерционности нашего зрения, поэтому нам будет казаться, что светодиод светится на половину яркости. Если мы изменим скважность на 75%, то яркость светодиода будет на 3 четверти от полной, а график будет выглядеть так:

Получается, что мы можем регулировать яркость светодиода от 0 до 100 %. А теперь поговорим о таком параметре ШИМ, как разрешение. Разрешение- это количество градаций (шагов) регулировки скважности, мы будем рассматривать разрешение в 256 шагов.

С параметрами вроде разобрались, теперь поговорим о том, как нам получить этот самый ШИМ от микроконтроллера. Берем остро заточенный разогретый паяльник и начинаем пытать МК, одновременно подцепившись к двум его ногам осциллографом и проверяя наличие на них сигнала нужной нам скважности. В микроконтроллерах есть аппаратная поддержка ШИМ и несколько каналов для него, в нашем случае 3. За выдачу ШИМ отвечают определенные выводы МК, в нашем случае OC2, OC1A, OC1B (15,16,17 нога в DIP корпусе). Так же для этого используются таймеры микроконтроллера, в нашем случае TC1, TC2. Так как же сконфигурировать МК для выдачи сигнала необходимой скважности? Все очень просто, для начала сконфигурируем нужные нам ноги на выход:

PORTB=0x00; DDRB=0x0E; // 0b00001110

Далее начнем конфигурировать таймеры. Для таймера TC1 нам потребуются два регистра: TCCR1A и TCCR1B. Открываем даташит и читаем как настраиваются эти регистры. Я настроил его на 8 битный сигнал ШИМ, что соответствует разрешению в 256 шагов:

TCCR1A=0xA1; TCCR1B=0x09;

Для таймера TC2 мы будем использовать регистр TCCR2=0x69;. Его настройка выглядит так:

TCCR2=0x69;

Всё, таймеры сконфигурированы. Скважность будем задавать регистрами OCR1A,OCR1B, OCR2:

Зададим требуемые скважности:

OCR1A=0x32; //50 шагов OCR1B=0x6A; //106 шагов OCR2=0xF0; //240 шагов

Ну и поместим инкремент и декремент этих регистров в бесконечный цикл:

While(1) { OCR1A++; OCR1B--; OCR2++; delay_ms(50); }

Первая тестовая программа готова и выглядит для CVAVR она так:

#include "mega8.h" #include "delay.h" void main(void) { PORTB=0x00; DDRB=0x0E; // 0b00001110 TCCR1A=0xA1; TCCR1B=0x09; TCCR2=0x69; OCR1A=0x32; //50 шагов OCR1B=0x6A; //106 шагов OCR2=0xF0; //240 шагов while (1) { OCR1A++; OCR1B--; OCR2++; delay_ms(50); }; }

Основные технические параметры:

  • а) Частота ШИМ - сигнала 400 Гц
  • б) Количество градаций ШИМ - сигнала 16
  • в) ШИМ - контроллер на основе вычитающего счётчика TTL/74ХХ
  • д) ШИМ - контроллер разработать на микросхемах TTL/74ХХ серии SN74. Провести отработку основных блоков контроллера на логических элементах - Logic Gates (Ideal) и на D-триггерах (Ideal), составить схемы блоков контроллера на реальных TTL ИС - 4-ЛЭ и 2-D триггера в корпусе заданной серии.
  • г) Подготовить заказные микросхемы на основные блоки контроллера - генератор тактовых импульсов, делитель частоты и основной блок.

Основные требования:

Составить структурную и принципиальную схемы котроллера, провести отработку отдельных блоков в программной среде EWB, провести обоснованный выбор необходимых микросхем.

Представить принципиальную электрическую схему ШИМ - контроллера.

Цифровой ШИМ - контроллер

ШИМ (широтно-импульсная модуляция), англ. PWM-- pulse width modulation. ШИМ - это цифровой сигнал, с помощью которого можно задать и управлять в широких пределах уровнем аналогового сигнала с помощью ключей.

Рис.1.

Это особенно важно в мощных регуляторах с высоким КПД, так как на ключах рассеивается минимальная мощность только в момент переключения.

На рис.1 приведена временная диаграмма ШИМ с постоянной скважностью. На одном периоде укладывается один единичный импульс шириной T1 и один нулевой импульс шириной T0. При этом

Период ШИМ -.T, а, следовательно, частота следования импульсов F=1/Т - величина постоянная. Коэффициент ШИМ G - это и есть эквивалент амплитуды аналогового сигнала:

Изменением длительности импульса Т 1 можно регулировать средний уровень напряжения: если уровень максимального сигнала ШИМ Um=Еп, то подав сигнал ШИМ на фильтр напряжения, на выходе фильтра можно получить аналоговое напряжение

В некоторых случаях применение фильтра необязательно - например, при регулировании тока для управления яркостью свечения накала лампы, скорости вращения двигателя, так как у них есть некоторая постоянная времени, и если период ШИМ меньше этой постоянной, то мерцания или вибрации двигателя не будет. Но в некоторых случаях без фильтра не обойтись. Естественно, чем меньше период ШИМ, тем "глаже" будет аналоговый сигнал, но уменьшение периода ведёт к тому, что увеличивается дискретность регулирования скважности, растет частота следования импульсов F и, соответственно, растут потери мощности на ключах, снижается КПД.

Преобразователи аналогового сигнала в ШИМ импульсы получили название ШИМ - модуляторов , так как они используются широко в кодово-импульсной связи, простейших устройствах автоматики. Преобразователи двоичного кода в ШИМ импульсы получили особое распространение с развитием микропроцессорной техники, являются встроенными устройствами большинства современных микроконтроллеров. В литературе получили название ШИМ - контроллеры .

У аналогово-цифровых ШИМ - модуляторов и цифровых ШИМ - контроллеров много общего (см. рис. 2). Генератор синхронизирующих импульсов задает период (Т) и частоту следования импульсов ШИМ (F=1/Т). Формирователь пилообразного сигнала генерирует линейно изменяющийся сигнал. Устройство сравнения фиксирует момент времени, когда линейно изменяющийся сигнал достигнет уровня управляющего сигнала Uo. На выходе формируется импульсный сигнал от начала временной развертки до момента равенства. В ШИМ - модуляторах управляющий сигнал аналоговый, в ШИМ - контроллерах - цифровой. Это определяет конкретную схемотехнику (аналоговую или цифровую) генератора пилообразного сигнала и схемы сравнения.

Mark Thoren and Chad Steward, Linear Technology

Design Note 538

Введение

Широтно-импульсная модуляция (ШИМ) является распространенным методом формирования аналоговых напряжений с помощью цифровых устройств, таких, например, как микроконтроллеры или ПЛИС. В большинстве микроконтроллеров имеются специализированные периферийные блоки, предназначенные для формирования ШИМ, а для генерации сигналов ШИМ средствами ПЛИС достаточно написать лишь несколько строк RTL-кода. Эта технология исключительно проста и практична в случаях, когда требования к параметрам аналоговых сигналов не слишком строги, поскольку для ее реализации требуется всего один выход микросхемы, а количество необходимых строк программного кода, несоизмеримо меньше того, что потребовалось бы в случае использования цифро-аналогового преобразователя (ЦАП) с интерфейсом SPI или I 2 C. На Рисунке 1 приведен типичный пример приложения с цифровым выводом, выходной сигнал которого превращается в аналоговое напряжение с помощью фильтра.

Не нужно копать очень глубоко, чтобы обнаружить бесчисленные недостатки этой схемы. 12-битный аналоговый сигнал в идеале должен иметь пульсации менее величины младшего значащего разряда, что в случае, если частота ШИМ будет равна 5 кГц, потребует фильтра нижних частот с частотой среза 1.2 Гц. Импеданс выхода аналогового напряжения, определяемый сопротивлением резистора фильтра, из-за необходимости сохранения приемлемых габаритов конденсатора может оказаться слишком большим. Таким образом, выход может работать только на высокоомную нагрузку. Наклон характеристики преобразования ШИМ в аналоговый сигнал зависит от напряжения питания микроконтроллера, возможно, неточного. Более тонкий эффект обусловлен несовпадением эффективных выходных сопротивлений цифрового вывода в противоположных логических состояниях, которые для сохранения необходимой линейности должны быть значительно меньше, чем сопротивление резистора фильтра. И, наконец, для того, чтобы выходное напряжение оставалось постоянным, сигнал ШИМ должен быть непрерывным, что может оказаться проблематичным, если потребуется перевести процессор в режим останова с низким потреблением мощности.

Этот преобразователь ШИМ-аналог лучше?

Рисунок 2 иллюстрирует попытку исправить эти недостатки. Благодаря выходному буферу появилась возможность использования в фильтре высокоомных резисторов при сохранении низкого импеданса аналогового выхода. За счет использования внешнего КМОП буфера, получающего питание от прецизионного опорного источника, повысилась точность коэффициента передачи, так как границами изменения сигнала ШИМ теперь стали земля и точное положительное напряжение. Эта схема, безусловно, работоспособна, однако требует большого количества компонентов, не позволяет сделать время установления лучше, чем 1.1 с, и не содержит никаких механизмов, с помощью которых было бы возможно «удерживать» аналоговое напряжение при отключенном сигнале ШИМ.

Усовершенствованный преобразователь ШИМ-аналог

Цифро-аналоговые преобразователи (ЦАП) Dual 10-bit PWM to VOUT DACs with 10ppm/ C Reference

  • Спасибо, очень интересная статья и очень хороший перевод. Не ввести ли у вас на сайте механизм поиска всех работ одного автора?
  • Это как? :) До такого даже библиотеки не додумались... Поиск по переводчику... Другое дело - стимул ему лично, пусть больше работает:) Статья интересная, тем более, что используется Linear Technology, от которой не было отказа в опытных образцах + периодический бумажный бесплатный журнал с доставкой на дом!!! :)
  • Нет ничего сложного. Вот такой запрос в google выдаст все материалы одного переводчика google.com.ua/search?.com.ua/search?.com.ua/search?.Рен тюк А вот поисковик РЛ немного неудобен, если не сказать неприменим при поиске по автору перевода http://www..html?adv=1 Таким же образом в google можно искать материалы конкретного автора на РЛ. Но результаты будут более "грязными", поскольку при поиске по одному лишь имени в результаты будут включены все найденные на сайте упоминания - статьи, ссылки с форума, временные страницы, некогда попавшие в поле зрения поисковой машины и т.п. Например, Einar Abell. Много лишнего. https://www.google.com.ua/search?q=s...ru+Einar+Abell В этом случае поисковик РЛ даёт гораздо лучшие результаты http://www..html?q=Einar+Abell К вопросу о библиотеках. Электронные каталоги, которые теперь есть почти во всех "выживших" библиотеках (университетских, городских, районных, областных и т.д.), а равно и в архивах, позволяют производить поиск по каталогам и картотекам с любым сочетанием слов в запросе. Не считая стандартного поиска по алфавитному и систематическому каталогам. Удивительно, сколько на самом деле содержится данных в каталожной карточке издания! Конечно же, если библиографическое описание и аннотация были составлены правильно и на совесть. Но есть и оборотная сторона электронных каталогов. Например, в трёх ближайших ко мне крупных библиотеках с количеством книг миллион+ в электронных каталогах до недавних пор содержалось лишь 10-20% библиотечного фонда. Чтобы занести в базу данных миллионы карточек нужна уйма времени. При этом, как правило, проводится сверка с фондами, что только затягивает процесс оцифровки каталогов. Но вся литература, полученная библиотеками после скажем 2000 года, попадает в электронный каталог в первую очередь.
  • Да всё это понятно, найти через поисковик можно всё, что угодно:) Но зачем искать по переводчику? Из любви к его творчеству? В первую очередь нужна инфа