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

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

Ключ я взял IRF630 . Почему именно этот MOSFET ? Да просто у меня их откуда то завелось штук десять. Вот и применяю, так то можно поставить что либо менее габаритное и маломощное. Т.к. ток тут вряд ли будет больше ампера, а IRF630 способен протащить через себя под 9А. Зато можно будет сделать целый каскад из вентиляторов, подсоединив их к одной крутилке — мощи хватит:)

Теперь пришло время подумать о том, чем мы будем делать ШИМ . Сразу напрашивается мысль — микроконтроллером. Взять какой-нибудь Tiny12 и сделать на нем. Мысль я эту отбросил мгновенно.

  1. Тратить такую ценную и дорогую деталь на какой то вентилятор мне западло. Я для микроконтроллера поинтересней задачу найду
  2. Еще софт под это писать, вдвойне западло.
  3. Напряжение питания там 12 вольт, понижать его для питания МК до 5 вольт это вообще уже лениво
  4. IRF630 не откроется от 5 вольт, поэтому тут пришлось бы еще и транзистор ставить, чтобы он подавал высокий потенциал на затвор полевика. Нафиг нафиг.
Остается аналоговая схема. А что, тоже неплохо. Наладки не требует, мы же не высокоточный девайс делаем. Детали тоже минимальные. Надо только прикинуть на чем делать.

Операционные усилители можно отбросить сразу. Дело в том, что у ОУ общего назначения уже после 8-10кГц, как правило, предельное выходное напряжение начинает резко заваливаться, а нам надо полевик дрыгать. Да еще на сверхзвуковой частоте, чтобы не пищало.


ОУ лишенные такого недостатка стоят столько, что на эти деньги можно с десяток крутейших микроконтроллеров купить. В топку!

Остаются компараторы, они не обладают способностью операционника плавно менять выходное напряжение, могут только сравнивать две напруги и замыкать выходной транзистор по итогам сравнения, но зато делают это быстро и без завала характеристики. Пошарил по сусекам и компараторов не нашел. Засада! Точнее был LM339 , но он был в большом корпусе, а впаивать микросхему больше чем на 8 ног на такую простую задачу мне религия не позволяет. В лабаз тащиться тоже было влом. Что делать?

И тут я вспомнил про такую замечательную вещь как аналоговый таймер — NE555 . Представляет собой своеобразный генератор, где можно комбинацией резисторов и конденсатором задавать частоту, а также длительность импульса и паузы. Сколько на этом таймере разной хрени сделали, за его более чем тридцатилетнюю историю… До сих пор эта микросхема, несмотря на почтенный возраст, штампуется миллионными тиражами и есть практически в каждом лабазе по цене в считанные рубли. У нас, например, он стоит около 5 рублей. Порылся по сусекам и нашел пару штук. О! Щас и замутим.


Как это работает
Если не вникать глубоко в структуру таймера 555, то несложно. Грубо говоря, таймер следит за напряжением на конденсаторе С1, которое снимает с вывода THR (THRESHOLD — порог). Как только оно достигнет максимума (кондер заряжен), так открывается внутренний транзистор. Который замыкает вывод DIS (DISCHARGE — разряд) на землю. При этом на выходе OUT появляется логический ноль. Конденсатор начинает разряжаться через DIS и когда напряжение на нем станет равно нулю (полный разряд) система перекинется в противоположное состояние — на выходе 1, транзистор закрыт. Конденсатор начинает снова заряжаться и все повторяется вновь.
Заряд конденсатора С1 идет по пути: «R4->верхнее плечо R1 ->D2 «, а разряд по пути: D1 -> нижнее плечо R1 -> DIS . Когда мы крутим переменный резистор R1 то у нас меняются соотношения сопротивлений верхнего и нижнего плеча. Что, соответственно, меняет отношение длины импульса к паузе.
Частота задается в основном конденсатором С1 и еще немного зависит от величины сопротивления R1.
Резистор R3 обеспечивает подтяжку выхода к высокому уровню — так так там выход с открытым коллектором. Который не способен самостоятельно выставить высокий уровень.

Диоды можно ставить любые совершенно, кондеры примерно такого номинала, отклонения в пределах одного порядка не влияют особо на качество работы. На 4.7нанофарадах, поставленных в С1, например, частота снижается до 18кГц, но ее почти не слышно, видать слух у меня уже не идеальный:(

Покопался в закромах, которая сама расчитывает параметры работы таймера NE555 и собрал схему оттуда, для астабильного режима со коэффициентом заполнения меньше 50%, да вкрутил там вместо R1 и R2 переменный резистор, которым у меня менялась скважность выходного сигнала. Надо только обратить внимание на то, что выход DIS (DISCHARGE) через внутренний ключ таймера подключен на землю, поэтому нельзя было его сажать напрямую к потенциометру , т.к. при закручивании регулятора в крайнее положение этот вывод бы сажался на Vcc. А когда транзистор откроется, то будет натуральное КЗ и таймер с красивым пшиком испустит волшебный дым, на котором, как известно, работает вся электроника. Как только дым покидает микросхему — она перестает работать. Вот так то. Посему берем и добавляем еще один резистор на один килоом. Погоды в регулировании он не сделает, а от перегорания защитит.

Сказано — сделано. Вытравил плату, впаял компоненты:

Снизу все просто.
Вот и печатку прилагаю, в родимом Sprint Layout —

А это напряжение на движке. Видно небольшой переходный процесс. Надо кондерчик поставить в параллель на пол микрофарады и его сгладит.

Как видно, частота плывет — оно и понятно, у нас ведь частота работы зависит от резисторов и конденсатора, а раз они меняются, то и частота уплывает, но это не беда. Во всем диапазоне регулирования она ни разу не влазит в слышимый диапазон. А вся конструкция обошлась в 35 рублей, не считая корпуса. Так что — Profit!

ШИМ или в английском 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- канальный транзистор.

Например);

  • резистор номиналом 190…240 Ом (вот отличный набор резисторов самых распространённых номиналов);
  • персональный компьютер со средой разработки Arduino IDE.
  • Инструкция по использованию ШИМ в Arduino

    1 Общие сведения о широтно-импульсной модуляции

    Цифровые выводы Arduino могут выдавать только два значения: логический 0 (LOW, низкий уровень) и логическую 1 (HIGH, высокий). На то они и цифровые. Но есть у Ардуино «особые» выводы, которые обозначаются PWM . Их иногда обозначают волнистой чертой "~" или обводят кружочками или ещё как-то выделяют среди прочих. PWM расшифровывается как Pulse-width modulation или широтно-импульсная модуляция , ШИМ .

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

    Если скважность равняется 100%, то всё время на цифровом выходе Arduino будет напряжение логическая "1" или 5 вольт. Если задать скважность 50%, то половину времени на выходе будет логическая "1", а половину - логический "0", и среднее напряжение будет равняться 2,5 вольтам. Ну и так далее.


    В программе скважность задаётся не в процентах, а числом от 0 до 255. Например, команда analogWrite(10, 64) скажет микроконтроллеру подать на цифровой PWM выход №10 сигнал со скважностью 25%.

    Выводы Arduino с функцией широтно-импульсной модуляции работают на частоте около 500 Гц. Значит, период следования импульсов - около 2 миллисекунд, что и отмеряют зелёные вертикальные штрихи на рисунке.

    Получается, что мы можем сымитировать аналоговый сигнал на цифровом выходе! Интересно, правда?!

    Как же мы можем использовать ШИМ? Применений масса! Например, управлять яркостью светодиода, скоростью вращения двигателя, током транзистора, звуком из пьезоизлучателя и т.д.…

    2 Схема для демонстрации широтно-импульсной модуляции в Arduino

    Давайте рассмотрим самый базовый пример - управление яркостью светодиода с помощью ШИМ. Соберём классическую схему.


    3 Пример скетча с ШИМ

    Откроем из примеров скетч "Fade": Файл Образцы 01.Basics Fade .


    Немного изменим его и загрузим в память Arduino.

    Int ledPin = 3; // объявляем пин, управляющий светодиодом int brightness = 0; // переменная для задания яркости int fadeAmount = 5; // шаг изменения яркости void setup() { pinMode(ledPin, OUTPUT); } void loop() { analogWrite(ledPin, brightness); // устанавливаем яркость brightness на выводе ledPin brightness += fadeAmount; // изменяем значение яркости /* при достижении границ 0 или 255 меняем направление изменения яркости */ if (brightness == 0 || brightness == 255) { fadeAmount = -fadeAmount; // изменяем знак шага } delay(30); // задержка для большей видимости эффекта }

    4 Управление яркостью светодиода с помощью PWM и Arduino

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


    Посмотрите приложенные видео, где наглядно показано изменение яркости светодиода, на подключённом осциллографе видно, как при этом меняется сигнал с Arduino.

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

    ШИМ сигнал характеризуется таким параметром как коэффициент заполнения или Duty cycle. Это величина обратная скважности и равна отношению длительности импульса к его периоду.

    D = (t/T) * 100%

    На рисунках ниже изображены ШИМ сигналы с различными коэффициентами заполнения.


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

    Простая схема управления двигателем постоянного тока

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

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

    Схема для генерации ШИМ сигнала

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


    Напряжение питания схемы VCC может быть в диапазоне 5 - 16 Вольт. В качестве диодов VD1 - VD3 можно взять практически любые диоды.

    Если интересно разобраться, как работает эта схема, нужно обратиться к блок схеме 555-го таймера. Таймер состоит из делителя напряжения, двух компараторов, триггера, ключа с открытым коллектором и выходного буфера.



    Вывод питания (VCC) и сброса (Reset) у нас заведены на плюс питания, допустим, +5 В, а земляной (GND) на минус. Открытый коллектор транзистора (вывод DISCH) подтянут к плюсу питания через резистор и с него снимается ШИМ сигнал. Вывод CONT не используется, к нему подключен конденсатор. Выводы компараторов THRES и TRIG объединены и подключены к RC цепочке, состоящей из переменного резистора, двух диодов и конденсатора. Средний вывод переменного резистора подключен к выводу OUT. Крайние выводы резистора подключены через диоды к конденсатору, который вторым выводом подключен к земле. Благодаря такому включению диодов, конденсатор заряжается через одну часть переменного резистора, а разряжается через другую.

    В момент включения питания на выводе OUT низкий логический уровень, тогда на выводах THRES и TRIG, благодаря диоду VD2, тоже будет низкий уровень. Верхний компаратор переключит выход в ноль, а нижний в единицу. На выходе триггера установится нулевой уровень (потому что у него инвертор на выходе), транзисторный ключ закроется, а на выводе OUT установиться высокий уровень (потому что у него на инвертор на входе). Далее конденсатор С3 начнет заряжаться через диод VD1. Когда она зарядится до определенного уровня, нижний компаратор переключится в ноль, а затем верхний компаратор переключит выход в единицу. На выходе триггера установится единичный уровень, транзисторный ключ откроется, а на выводе OUT установится низкий уровень. Конденсатор C3 начнет разряжаться через диод VD2, до тех пор, пока полностью не разрядится и компараторы не переключат триггер в другое состояние. Далее цикл будет повторяться.

    Приблизительную частоту ШИМ сигнала, формируемого этой схемой, можно рассчитать по следующей формуле:


    F = 1.44/(R1*C1), [Гц]

    где R1 в омах, C1 в фарадах.

    При номиналах указанных на схеме выше, частота ШИМ сигнала будет равна:


    F = 1.44/(50000*0.0000001) = 288 Гц.

    ШИМ регулятор оборотов двигателя постоянного тока

    Объединим две представленные выше схемы, и мы получим простую схему регулятора оборотов двигателя постоянного тока, которую можно применить для управления оборотами двигателя игрушки, робота, микродрели и т.д.



    VT1 - полевой транзистор n-типа, способный выдерживать максимальный ток двигателя при заданном напряжении и нагрузке на валу. VCC1 от 5 до 16 В, VCC2 больше или равно VCC1.

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

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

    Микроконтроллеры представляют собой интеллектуальные цифровые компоненты которые работают на основе бинарных сигналов. Лучшее представление бинарного сигнала – меандр (сигнал имеющий прямоугольную форму). Следующая схема объясняет основные термины, связанные с прямоугольным сигналом.

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

    Единственное различие между меандром и ШИМ-сигналом заключается в том, что у меандра время включения и отключения равны и постоянны (50% скважность), в то время как ШИМ-сигнал имеет переменную скважность.

    Меандр может рассматриваться как частный случай ШИМ сигнала, который имеет 50% рабочий цикл (период включения = период отключения).

    Рассмотрим на примере использование ШИМ

    Допустим, мы имеим напряжение питания 50 вольт и нам необходимо запитать какую-либо нагрузку, работающую от 40 вольт. В этом случае хороший способ получения 40В из 50В — это использовать так называемый понижающий чоппер (прерыватель).

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

    Требования к ШИМ-сигналу для получения с помощью тиристора 40В из 50В: подача питания, на время = 400мс и выключение на время = 100мс (с учетом периода ШИМ сигнала равного 500 мс).

    В общих словах это можно легко объяснить следующим образом: в основном, тиристор работает как переключатель. Нагрузка получает напряжение питания от источника через тиристор. Когда тиристор находится в выключенном состоянии, нагрузка не подключена к источнику, а когда тиристор находится в открытом состоянии, нагрузка подключается к источнику.

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

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

    Если коэффициент заполнения равен 100, то в этом случае у нас сигнал постоянный.

    Таким образом, скважность импульсов (рабочий цикл) может быть вычислен с использованием следующей формулы:

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

    Умножая скважность импульсов на 100, мы можем представить это в процентном соотношении. Таким образом, процент скважность импульсов прямо пропорционален величине напряжения от исходного. В приведенном выше примере, если мы хотим получить 40 вольт от 50 вольт источника питания, то это может быть достигнуто путем генерации сигнала со скважность 80%. Поскольку 80% из 50 вместо 40.

    Для закрепления материала, решим следующую задачу:

    • рассчитаем длительность включения и выключения сигнала, имеющего частоту 50 Гц и скважность 60%.

    Полученный ШИМ волны будет иметь следующий вид:

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

    Этот прием изменения ширины импульса, чтобы получить необходимый рабочий цикл называется “широтно-импульсная модуляция”.

    Просмотров