Что такое ШИМ. Широтно Импульсная Модуляция. ШИМ контроллер


ШИМ — широтно-импульсная модуляция

Уважаемый микропрогер, будем разговаривать с вами предельно простым языком:

представим себе электрический импульс А с амплитудой напряжения от 0В до 5В, длиной 1 мс и периодом повторения 10мс (т.е. в течение 1 мс напряжение на линии, по которой проходит импульс А составляет 5В, затем в течение 9мс составляет 0В, и так повторяется каждые 10 мс). А теперь представим, что мы увеличиваем длительность импульса А до 2мс (пусть теперь это будет импульс Б), а повторяется он точно те же каждые 10мс. Задача изменения длительности импульса А с 1мс до импульса Б 2 мс и есть задача ШИМ.

Вообще говоря слово «Модуляция» означает изменение параметров колебания (частоты, амплитуды, фазы). Широтно-импульсная модуляция  — изменение скважности импульсов при постоянной частоте. Скважность — то же самое, что протяженность, т.е. в нашем примере это изменение протяженности импульса с 1мс до 2мс.

 

ШИМ регулятор. Пример

 

ШИМ регулятор

ШИМ регулятор

Работа ШИМ регулятора наглядно отображена на данной картинке-графике.

На графике мы видим три сигнала. Сигналы модулируются ШИМом, который генерирует и регулирует скважность импульсов.

Скважность на графике сверху — 15%. То есть, за один период, равный 100%, 15% времени выдается логическая единица (напряжение TTL уровня +3В либо +5В). 75% времени выдается логический ноль (отсутствие напряжения в линии — 0В).

На среднем графике скважность 50% —  50% времени выдается логическая 1, 50% выдается логический 0.

На графике снизу скважность 90%. 90% -1. 10% — 0.

Если подключить светодиод к нашему ШИМ регулятору, то в случае с первым графиком светодиод будет светиться слабо. С графиком 2 свечение светодиода будет ярче чем с 1, но сам светодиод будет светиться на 50% своей мощности. В случае с 3-им графиком, яркость свечения светодиода будет настроена на 90%, близкие к максимальным.

Как видим, с помощью ШИМ очень удобно регулировать яркость свечения светодиода, а также работу шагового двигателя.

 

Практическое значение ШИМ

Еще раз вспомнил наши импульсы А и Б. Они бегут по проводу к потребителю электрического тока и представляют собой электрический ток с определенным напряжением(Вольты) и определенной силой(Амперы), которая зависит от потребителя. Потребители в общем случае кушают фиксированный ток (например 300мА). То есть, если бы импульс А или Б длился все 10мс и не прерывался, то потребление тока для потребителя составило именно 300мА. Если же мы прерываем ток длительностью импульса, то потребление тока при действующем импульсе А составит 300мА * (1/10) = 30мА, при импульсе Б 300мА * (2/10) = 60мА.

Генераторы ШИМ применяются в  задачах управления светодиодными светильниками. Все предельное просто: чем больше тока подаем на светодиод, тем ярче он светится. То же самое с RGB светодиодами —  подаем на красный(R) импульс А(30мА), на синий импульс Б(60мА), на зеленый 0 — получаем тусклый фиолетовый свет, который получается от менее яркого красного и более яркого синего цветов.

ШИМ применяется в  задачах управления вращающимися двигателями — чем больший ток подаем на контакты движка, тем быстрее он вращается. А если двигателя мы имеем три, а в придачу у нас куча идей и целая программа для последовательной подачи импульсов типа А и Б на их обмотки? Тут можно сколотить целый 3Д принтер!

 

ШИМ контроллер

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

Допустим, у нас есть микроконтроллер или ПЛИС и все тот же вращающийся движок, который при постоянном токе 5В потребляет 300мА и при этом потреблении вертит своей осью 10 раз в секунду. Теперь нас попросили — сделайте так, чтобы я нажимал на кнопку, а движок сделал 5 оборотов с частотой 1 оборот в секунду, затем сделал еще 2 оборота за 1 секунду и выключился.

Что мы делаем?

Правильно, пишем программу для нашей любимой логической приблуды — плисины или микрика. В проге будет вход, при наличии 1 на котором запускается цикл — выдача 1 в течение 1мс, затем 0 в течение 9мс, так 5 раз подряд. Затем выдача 1 2мс два раза подряд. end module. Start Compilation.

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

Все просто!

Остались вопросы? Напишите комментарий. Мы ответим и поможем разобраться =)

0

Автор публикации

не в сети 4 месяца

wandrys

877
Комментарии: 1Публикации: 31Регистрация: 17-03-2016

Оставьте комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *