Как мы уже узнали, мир вокруг аналоговый, то есть окружающие нас процессы изменяются плавно и непрерывно, а логические элементы— цифровые. Оперируют только с логическим нулем и логической единицей, включено и выключено. Но что, если мы хотим плавно изменять яркость светодиода, подключенного к цифровой схеме?
Одним из способов добиться аналоговых сигналов от цифровых устройств является использование широтно- импульсной модуляции, сокращенно ШИМ (англ. Pulse Width Modulation- PWM). Чтобы понять что это такое, представим, что у нас есть лодка с электрическим мотором, скорость которого не регулируется. Он либо включен на полную мощность, либо выключен. Но нам необходимо обеспечить плавную регулировку скорости лодки. Как это сделать?
Мы можем включить двигатель, и тогда лодка постепенно наберет максимальную скорость, или выключить двигатель, и тогда лодка так же постепенно остановится. Но для нормального управления нам надо научиться регулировать скорость плавно. Что если мы станем периодически включать и выключать двигатель с некоторой частотой, допустим, 1 раз в секунду. Тогда за счет инерционности лодки ее ход станет плавным, будет обеспечена плавность движения. Для увеличения скорости движения лодки будем включать двигатель на более длительное время, и, меньшее время двигатель будет выключен. А для уменьшения скорости лодки будем больше времени плыть по инерции с выключенным двигателем и включать его лишь на короткое время.
Таким же образом можно управлять реальным электромотором, светодиодом или другой нагрузкой.
На графиках выше изображено 3 сигнала с разным коэффициентом заполнения. По вертикальной оси отмечаем напряжение сигнала в вольтах, а по горизонтальной время в секундах. Сразу видно, что меняется время высокого уровня напряжения и низкого. На первом графике лишь 15% времени сигнал на уровне 9 вольт. На втором графике— половину времени, а на третьем— почти все время, 85%. Это и описывает коэффициент заполнения— сколько процентов от всего времени периода занимает сигнал высокого уровня. Логично предположить, что при Кзаполнения = 100% сигнал постоянно высокий, никаких импульсов нет. А при Кзаполнения = 0% — постоянно низкий.
Также важно отметить, что период, то есть время, через которое периодический сигнал повторяется, не меняется. Например, это всегда 100 импульсов в секунду. Коэффициент заполнения импульсов меняется, а их частота нет.
Очевидно, что чем больше Кзаполнения, тем больше энергии передается. Также в литературе часто встречается термин скважность— это величина обратная коэффициенту заполнения. Широтно-импульсная модуляция очень широко используется в современной электронике. Всевозможные светодиодные лампы, импульсные блоки питания и силовые модули построены на принципах ШИМ.
Соберем схему, которая на практике позволит нам посмотреть, как регулируется яркость светодиода с помощью ШИМ.
Подключите батарею к макетной плате. Светодиод должен засветиться. Вращая подстроечный резистор убедитесь, что яркость светодиода также регулируется. Светодиод полностью не погаснет даже в крайнем положении, потому что эта схема регулирует Кзаполнения в определенном диапазоне, и он начинается не с нуля.
На логическом элементе DD1.1 («2И-НЕ» с триггерами Шмитта на входе) собран генератор импульсов частотой 2,5 кГц. Длительность (ширина) этих импульсов зависит от сопротивления переменного резистора R1 и емкости конденсатора С1.
Логический элемент DD1.2, включенный в режиме инвертора, является буфером и служит для минимизации влияния транзистора VT1 на работу генератора. Положительные импульсы с выхода логического элемента DD1.2 (вывод 4) через токоограничительный резистор поступают на светодиод VD1.
Изменяя сопротивление переменного резистора, мы увеличиваем или укорачиваем длительность импульсов генератора, тем самым увеличиваем или уменьшаем мощность, подводимую к светодиоду.