Pwm to voltage converter схема

Обновлено: 04.07.2024

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

Сначала, что такое ШИМ.
Когда нужна ШИМ

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

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

Регулировку можно осуществлять с помощью гасящих напряжение устройств: резисторов, транзисторов (если требуется регулировка). Главный недостаток такого решения потери мощности и повышенное тепловыделение на регулирующих устройствах.

Поскольку известно что выделяемая мощность равна :

P = I x U или P = I 2 x R Вт.

то чем больше ток I в цепи и падение напряжения U , тем больше потери мощности. Здесь R - величина сопротивления регулирующего элемента.

Представьте что требуется погасить хотя бы 3 V при токе нагрузки 10 A , это уже 30 Вт истраченных в пустую. А каждый ватт теряемой мощности не только снижает продолжительность работы источников питания, но и требует дополнительного оборудования для вывода выделяемого, этой мощностью, тепла.

Это относится к гасящим резисторам и полупроводниковым приборам тоже.

Но хорошо известно, что полупроводниковые приборы очень хорошо (с малыми потерями и тепловыделением) работают как ключи, когда имеют только два состояния открыт/закрыт.

Этот режим позволяет снизить потери на коммутирующем полупроводниковом приборе до уровня:

U нас для современных полупроводниковых коммутаторов приближается к 0,3 v и при потребляемых токах 10 А потери мощности будут приближаться к 3 Вт. Это в режиме ключа, а при работе в устройствах ШИМ и меньше.

Реализовать преимущества ключевого режима в схемах понижающих и регулирующих напряжение постоянного тока, позволило использование ШИМ.

Повторюсь, широтно-импульсная модуляция — управление средним значением напряжения на интегрирующей нагрузке путём изменения скважности импульсов, с помощью управляющего ключа.

Работа ШИМ на интегрирующую нагрузку показана на рис. 1.


Главным условиям такого применения ШИМ является наличие интегрирующей нагрузки.

Потому что амплитудное значение напряжения равно E .

Это могут быть интегрирующая RC, LC, RLC или RL цепи и механические интеграторы (например электромотор).

При работе ШИМ на интегрирующей нагрузке напряжение - эквивалентное постоянное напряжение изменяется в зависимости от скважности ( Q ) импульсов.

здесь: Q - скважность, t и - длительность импульса, T - период следования импульсов.

С учетом скважности эквивалентное постоянное напряжение будет равно:

E экв = Q x E Вольт

здесь: E экв - эквивалентное постоянное напряжение ( Вольт ), Q - скважность, E - напряжение источника от которого запитан ШИМ преобразователь ( Вольт ).

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

Мощность выделяемая на управляющем ключе, управляемом ШИМ равна:

Схема подключения нагрузки к ШИМ.

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

На рис. 2 показано такое подключение.

Мы видим, что коммутатор (полевой транзистор) можно просто заменить на переменный резистор.

Схема PWM

здесь: GND - земля (общий), Control - контакт P WM управления, +12 - напряжение питания, Sense - вывод датчика оборотов.

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

Для управления импульсным (ШИМ) сигналом требуется схема изображенная на рис. 4. Да и судя по параметрам транзистора "PWM" он выбирался именно для управления постоянным током. По крайней мере он будет нормально работать в таком режиме с вентилятором до 1,6 Вт.

А вот в импульсном режиме без конденсатора C , транзистор BC879 будет греться немного меньше чем на постоянном токе и возможен останов электродвигателя на малых длительностях токового импульса (малых оборотах) из-за его интегрирования на входной емкости C вх транзистора.

Основные параметры кремниевого биполярного высокочастотного n-p-n транзистора BC879 от SIEMENS

В случае необходимости отключить PWM (ШИМ) управление в схеме показанной на рис. 3 необходимо просто соединить вывод Control с проводом +12v .

Существенных отличий от рис. 3 нет, только в качестве управляемого ШИМ ключа используется МОП полевой транзистор со встроенным или индуцированным каналом p- типа. Данная схема тоже может управляться как P WM так и постоянным напряжением (но рисковать не стоит - надо знать параметры транзистора).

Данная схема вполне работоспособна и не имеет недостатков схемы показанной на рис. 3.

Для отключения (в зависимости от типа транзистора) достаточно соединить вывод Control с проводом + или -.

Вниманию самодельщиков!

Я бы не рекомендовал применение вентиляторов имеющих встроенный PWM (4- pin ) одновременно с какими либо иным регуляторам оборотов вентилятора.

В случае если Вас не устраивает алгоритм управления PWM встроенного на материнскую (системную) плату.

И у Вас есть устраивающий Вас реобас (контроллер управления вентилятором), то используйте вентилятор с 3-pin соединитель.

Если вентилятор с PWM вам дорог или не имеет замены - то необходимо отключить PWM , способом описанным выше, заменив соединитель 4-pin на 3-pin и подключить к реобасу.

Но помните применение вентилятора с PWM в любом нештатном режиме не позволит достичь его максимальной производительности.

Применение одновременно с PWM - токового управления на постоянном токе не рекомендуется по причине снижение напряжения питания вентилятора на 10-20%, что не даст вывести такой вентилятор на полную производительность.

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

Так что остановитесь на чем-то одном. Или используйте вентилятор с PWM , или применяйте внешнее управление вентилятором по цепи питания на вентиляторе с 3-pin разъемом.

Заключение

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

ШИМ позволяет создавать компактные системы регулируемого электропривода постоянного тока большой мощности.

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

LED-драйверы MEAN WELL для промышленных и уличных светодиодных светильников: особенности, преимущества, выбор

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

Рисунок 1. Простейший преобразователь ШИМ-аналог.

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

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

Рисунок 2. Усовершенствованный преобразователь ШИМ-аналог.

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

Рисунок 3. 4-канальный преобразователь ШИМ-аналог.

Внутренний источник опорного напряжения 1.25 В определяет полную шкалу выходных напряжений 2.5 В. Иное значение напряжения полной шкалы можно получить, используя внешний источник опорного напряжения. Для установки уровня входного цифрового сигнала используется отдельный вывод IOVCC, позволяющий напрямую подключать к микросхемам как ПЛИС с напряжением питания 1.8 В, так и 5-вольтовые микроконтроллеры, а также устройства с любым другим напряжением питания, лежащим внутри этого диапазона. В техническом описании гарантируются отличные точностные характеристики:

  • напряжение смещения 5 мВ,
  • максимальная ошибка усиления 0.8%,
  • максимальная интегральная нелинейность 2.5 единицы младшего разряда (12 бит).

Время установления, отсчитанное от переднего фронта входного сигнала ШИМ до момента, когда уровень выходного напряжения достигает точности 0.024% (веса единицы младшего разряда 12-битного ЦАП), составляет 8 мкс. Для 12-битных версий микросхем диапазон частот входных сигналов ШИМ составляет 30 Гц … 6.25 кГц.

Многообразие режимов выхода

На Рисунке 4 показано типичное приложение с подстройкой питания, основанное на использовании еще одной уникальной функции LTC2644. Подключение вывода IDLSEL к напряжению высокого уровня устанавливает режим выборки/хранения, в котором выходы при включении схемы будут находиться в высокоимпедансном состоянии (без подстройки), а непрерывный входной сигнал высокого уровня переведет его в режим постоянного удержания, в то время как непрерывный сигнал низкого уровня установит состояние высокого импеданса. Таким образом, при включении схемы можно выполнить однократную подстройку напряжения питания, подав на вход напряжение высокого уровня после однократного импульса ШИМ. Низким уровнем на входе ШИМ схему можно аккуратно вывести из режима подстройки. Соединением выводов IDLSEL и GND задается «прозрачный режим», в котором продолжительное удержание высокого уровня на входе устанавливает на выходе полную шкалу напряжений, а удержание низкого уровня – нулевую шкалу.

Рисунок 4. Приложение с подстройкой питания.

Заключение

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

Здравствуйте, есть задача управлять corrigo e аналоговым сигналом 0-10в. вентилятором 4-pin PWM EBM PARTS DC 24v.
С помощью какого преобразователя это можно реализовать?


stscat



Просмотр профиля Наверно, все-таки, ebm-papst. И какой конкретно вентилятор? Лучше ссылку на модель.


vkn9



Просмотр профиля


Kotlovoy



Просмотр профиля

"Rated voltage: 24V (AC)
Frequency: 50/60HZ"


vkn9



Просмотр профиля
Если я Вас правильно понял он переменного тока? так на нем четко написано DC, да и работает он на ура от постоянного тока


Kotlovoy



Просмотр профиля Если я Вас правильно понял он переменного тока? так на нем четко написано DC, да и работает он на ура от постоянного тока


Kotlovoy



Просмотр профиля Если я Вас правильно понял он переменного тока? так на нем четко написано DC, да и работает он на ура от постоянного тока


vkn9



Просмотр профиля


vkn9



Просмотр профиля Верить тому что на фото, на самом вентиляторе расписаны все четыре выхода


Kotlovoy



Просмотр профиля


stscat



Просмотр профиля Верить тому что на фото, на самом вентиляторе расписаны все четыре выхода

Судя по этому документу, можно напрямую 0..10В подавать без всяких ШИМов.

У него внутри стоит RC фильтр, который ШИМ преобразовывает в 0..10В.


Kotlovoy



Просмотр профиля

Судя по этому документу, можно напрямую 0..10В подавать без всяких ШИМов.

У него внутри стоит RC фильтр, который ШИМ преобразовывает в 0..10В.


А может быть, в 0..3В, или в 0. 1,7В. Что там внутри - неведомо.


stscat



Просмотр профиля


Есть преобразователь Esko Conv 102. Преобразование 0(2)..10В <-> 0(4)..20мА. Можно в него ввести режим ШИМ выхода.


vkn9



Просмотр профиля

А может быть, в 0..3В, или в 0. 1,7В. Что там внутри - неведомо.


Он понимает только PWM, пробовал подавать 0-10в. не работает(((
Дороговатый интерфейс, есле это мотором не запущу, может подскажете какой мотор EC прикупить для приточки кубов на 300 с управлением на прямую от контролера 0-10в. буду очень признательный.


vkn9



Просмотр профиля


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

* ВНИМАНИЕ! под катом видны грязные руки на фото и видео!

Суть состоит в том, что на некий например электромагнит подается не постоянный ток, а сигнал с некоторой частотой, при этом для плавного управления меняется соотношение высокого и низкого уровня за период. То есть если у нас 30% периода на привод будет подаваться питание, а 70% — нет, то он откроется меньше, чем если бы на него подавалось питание 70% времени, а 30% он отдыхал. За счет инерции привод не успевает полностью открыться либо закрыться, соответственно работает плавно. Данный принцип, повторюсь, используется весьма широко, везде где нужно обеспечить плавное регулирование. Два примера применения я покажу ниже.

Итак, данный девайс имеет размеры 79х43х24 (ШхВхГ), установочное отверстие 72х39, плюс выборки по бокам для защелок.



Клеммники не особо высокого качества, что и неудивительно; подписаны. 4 контакта: + и — питания, — и сигнал ШИМ. Минусы объединены. По питанию стоит диод.


Внутренний мир прост и незатейлив:





Тут у нас драйвер дисплея HT1621, микроконтроллер Nuvotek N76E003AT20, стабилизатор напряжения M5333B и выходной транзистор с маркировкой 1АМ — надо полагать это 3904.

На передней панели ЖКИ с на удивление неплохими углами обзора и 4 кнопки: частота+- и коэффициент заполнения +-

Посмотрим как оно работает.

Вот на самой низкой частоте для понимания принципов ШИМ-регулировки, кто не знает:


Индикация частоты следующим образом: герцы — без точки, килогерцы — с точкой, больше сотни килогерц — с двумя точками.Максимальная частота — 150кГц. Инкремент по 1% ШИМ и по единице младшего разряда, то есть 1Гц, либо 0.01кГц, либо 0.1кГц, либо 1кГц, либо 10кГц, в зависимости от частоты.

И сразу осциллки на высоких частотах, 20кГц, 50кГц, 100кГц, 150кГц.


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

А теперь осциллки на промежуточных частотах, если кому это интересно:




Ну вот такой, в общем, приборчик. Понравился, если честно. прям вот за 5 баксов, за которые я его взял — очень хорошо.

Ну а теперь — диайвай немножко рукоделия. Я придумал два применения данному генератору: проверка всеразличных соленоидов, например Регуляторов Холостого Хода, и промывка форсунок. При промывке форсунок в ультразвуковой ванне мне нравится загонять их в режим самопрокачки. Но аналоговый генератор не обладает достаточной стабильностью (а может дело и в форсунках — уходят характеристики при прогреве), так что я решил применить данный цифровой, в надежде на более высокую стабильность. Я в любом случае собирался делать еще один генератор, так что решил не заморачиваться и купил этот, сразу как только увидел.


Но у нас тут явно недостаточная мощность для управления форсунками, значит придётся ставить выходные ключи. Типа такого:

Возможно, придётся заменить выходной транзистор в самом устройстве, ну и надо подобрать силовые транзисторы получше, возможно мои любимые IRFZ44 — жаль, закончились. Собственно, на данном этапе устройство собрано на 50% — я впаял два первых попавшихся полевика, кажется IRF630 — ну потому что больше одинаковых нету у меня :( чисто для проверки идеи и картинок/видосиков для обзора.

Далее нам понадобится корпус. Примерно такой:



Ну и 3Д-принтер для его изготовления. Плату делал по фоторезистивной технологии описанной в прошлом обзоре.

Ну и сразу результат.






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

Выключатели: верхний подает питание на всю схему, нижний отключает выходной каскад.

А теперь — примеры работы. проверка РХХ

И режим самопрокачки форсунки

Подытоживая: отличный генератор. Повторять конструкцию возможно и не стОит в том виде в котором она сейчас показана в обзоре, но в целом что-то подобное — однозначно маст хэв в каждом сервисе. Да и не только в сервисе. Так что берите идею, и ваяйте своё.

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

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

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


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


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

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

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

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

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

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

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

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

Компилируем и пробуем в протеусе:


Как видим, программа полностью работоспособна и выполняет возложенные на нее задачи, ничего сложного в ней нет.

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

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