Ардуино регулятор оборотов коллекторного двигателя
Регулятор оборотов
Понадобился регулятор оборотов коллекторного двигателя. Регулятор оборотов на Ардуино с поддержанием оборотов. Двигатель от стиральной машинки-автомата.
В схеме были сделаны небольшие изменения. Кое что выкинул. Некоторые компоненты заменены другими. Были добавлены 2 аналоговых входа, на них можно повесить датчик температуры и следить за температурой двигателя, и радиатора на котором сидит симистор управляющий двигателем.
Если вы выполняете кратковременные работы, то датчик температуры и не нужен. Ну а если двигатель будет много работать, то неплохо с помощью датчика, Ардуино следило за температурой, и при перегреве отключало двигатель пока тот не остынет.
На этом двигателе уже присутствует тахогенератор, но в моем случае он не работает — вышел из строя. Вместо тахогенератора буду устанавливать датчик холла. Выкидываем катушку нерабочего тахогенератора, оставляем только магнит на валу. Устанавливаю датчик холла на электродвигатель.
Схема регулятора оборотов будет содержать в себе:
- Ардуино Нано
- Блок настроек, и управления оборотами
- Силовая часть
- Датчика скорости
- Защита (реле)
- Дополнительные входы и выходы
Ардуино Нано будет контролировать и управлять силовой частью
- А0 — регулировка оборотов двигателя
- А1 — настройка минимальных оборотов двигателя
- А2 — настройка максимальных оборотов двигателя
- А3 — выход управления симистором
- А4 — дополнительный аналоговый вход (не задействован)
- А5 — выход управления реле
- А6 — дополнительный аналоговый вход (не задействован)
- А7 — разгон или плавный старт
- D2 — сигнал перехода через ноль
- D4 — дополнительный выход
- D6, D7 — тахогенератор
- D8 — датчик холла
Блок настроек, и управления оборотами
Силовая часть будет управлять двигателем. Разъем Р1 — для подключении к сети 220В. Р3 — для установки перемычки в зависимости от блока питания.
При установке блока питания с выходным напряжением 5 вольт, на разъеме Р3 нужно установить перемычку на контакты 2 и 3. При выходном напряжении блока питания 7-12 вольт перемычку устанавливаем на контакты 1 и 2.
Не забывайте, при выборе блока питания нужно учитывать, что реле питается выходным напряжением с блока питания. Поэтому выбирайте блок питания и реле на одно напряжение.
На выводы 220V0 И 220V1, подается сетевое напряжение 220 Вольт.
Схема будет питаться импульсным блоком питания с выходным напряжением 5 вольт. Импульсный блок питания, возьмём уже готовый. Так же схему можно питать от 7 до 12 вольт. На плате есть перемычка переключения напряжения 5/12v. Так же можно питать схему и зарядным от телефона, только проверьте выходное напряжение, там не должно быть выше 5 вольт.
При установки перемычки на 5 вольт напряжение поступает напрямую на шину +5 вольт. Реле надо будет установить на 5 вольт.
При установки перемычки на 12 вольт напряжение поступает на вход Ардуино Vin. В этом случае можно питать схему напряжением 7-12 вольт. но и реле должно быть на такое напряжение, какое выходит с блока питания.
Датчик скорости в двух исполнения. На тахогенераторе или на датчике холла.
Схема разрабатывалась так, что бы обороты можно было считывать с тахогенератора, уже установленные на двигателях машинок-автоматов. Разъем Р4 служит для подключения тахогенератора.
А так же при отсутствии или неисправности тахогенератора можно заменить на датчик холла.
Реле служит защитой от пробоя симистора. Когда симистор пробивает, двигатель будет выходить на максимальные обороты, и это очень опасно . А что бы этого не случилось, контроллер отслеживает частоту вращения двигателя, и при превышении установленных оборотов реле отключает двигатель. Как обороты упадут ниже нормы, реле включится. Разъем Р7 — для подключения коллекторного электродвигателя.
Дополнительные входы и выходы
Иногда к устройству охота еще что нибудь прикрутить для удобства. Здесь добавлен дополнительный выход, он сейчас на плате указан как светодиод LED1. этот выход можно использовать под свои нужды. Можно пустить этот выход для управления вентилятором охлаждения двигателя и тд.
Еще есть два дополнительных аналоговых входа, которые тоже можно задействовать как писал выше, например контролировать температуру двигателя и симистора.
Верхний слой печатной платы
В конце статьи находится архив со всеми файлами для повторения данного проекта
Настройка регулятора
Настройка не сложная, поэтапная, так же можно протестировать все узлы регулятора на правильную работу.
PWM регулятор оборотов коллекторного мотора на Arduino
Дубликаты не найдены
Arduino & Pi
1K постов 17.9K подписчиков
Правила сообщества
В нашем сообществе запрещается:
• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)
• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском
• Выкладывать код прямо в посте — используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)
• Рассуждать на темы политики
А зачем ардуино если просто ШИМ стоит раз эдак в 10 дешевле и проще собирается.
Нынешнее пихание микроконтроллеров напоминает анекдоты советской науки и оборонки. Шашлык в термокамере для сверхчистых сплавов. Разогрев борща лабораторным магнетроном. Нарезка салата лазером на ЧПУ для раскроя бронестали. И тд.
Вот вот. А дистилятор вообще любимый аппарат.
За колбы я знаю что помимо продукта получаем арт обьект. Холодильник стеклянный процесс наглядный. И дефлегматор еще ставили.
Ну в данном случае это не готовое устройство, а один из режимов работы таймера. Так что это просто эксперименты с периферией микроконтроллера, для того чтобы в дальнейшем использовать эти знания в своих разработках. Обычно такая цель преследуется. Хотя, «написание» программы «кирпичиками» это такое себе, да.
Молодец. А теперь, чтобы это устройство было не на столько бесполезным, поставь датчик тока на шунте и сделай автокадибрубщийся ПИ-регулятор с поддержкой постоянных оборотов не зависимо от нагрузки на валу.
зачем ардуино если и без него можно сделать
Те, кто говорит про то зачем тут Ардуино: это часть проекта, небольшой кусок. Цель не просто пвм сделать, а изучить, чтобы встраивать в другие проекты.
И товарищи, уберите снобизм, он вам не к лицу.
Критикну. А стабилизация оборотов где? Надо брать обратку с коллектора, импульсы усиливать и делать обратную связь.
экран бы туда еще с показателями.
ШИМ на трёх пятёрках?
Неее, мы лучше потратим кучу денег на контроллер и кучу времени на его программирование.
Наверняка можно, но надо понимать что за интерфейс и какой протокол по нему идёт. Питание скорее всего надо будет отдельное
RAW данные касаются протокола, а интерфейс? Надо понимать уровни которые нужно выдерживать
Интерфейс — это сигнальный уровень, как речевой аппарат человека, или умение читать и писать.
Протокол — логический уровень. Это владение языком — русский, английский и т.п.
Можно начать с того, что разобрать пульт и найти микросхему отвечающую за интерфейс, как правило она недалеко от точек подключения, да и вообще их сейчас там не много. Всё легко гуглится. Владея интерфейсом уже можно перехватывать RAW и пользовать либо так, либо распарсивать
К примеру встречал Mitsumi MM1192
Так ардуина и есть программирование ведь. Или они там в кружке подписку давали, к ней не прикасаться?
Просто даже если программирование в другой области, то микроконтроллеры только помогут, ибо парадигма-то одна (ООП, алгоритмы и т.д.). Так что лишь во благо. Правда другое дело, что если изучать самостоятельно, то можно запросто наступить в говно, от которого потом будет очень тяжело отмыться. Сама ардуина к этому очень располагает.
Ну вообще обычно на МК не особенно используется ООП. Не развернуться на 768Б оперативки)
Ну вообще язык ардуино и является объектно-ориентированным, со всеми этими классами, методами, и прочими объектами. А у той же Atmega328 RAM памяти 2048 Байт (вроде на ней собрана сия плата).
Я не говорил, что Wiring не является объектно-ориентированным. Я говорил, что обычно на МК (восьмибитных так точно) не используются такие языки.
Преимущество ардуинки с точки зрения программирования в чрезвычайной лёгкости вхождения, поскольку от вас полностью скрыта внутренняя кухня. Цена — огромный по размеру код, который работает сильно медленнее, чем мог бы. Справедливости ради, абсолютная часть пользователей этого не заметит никогда.
Вам не нужно разбираться в периферийных шинах, таймерах, прерываниях, сотнях регистров (тут не уверен, ибо не помню архитектуру). Вы просто написали что-то типа uart.printf() и видите в консоли на ПК результат.
768 было в меге8, на которой были первые ардуинки.
Обычно не используется, да. Сам я на чистом Си пишу. Полностью согласен, у ардуино очень низкий порог вхождения. Я бы даже сказал, слишком низкий. Почему и говорю, что изучая самостоятельно можно знатно себе попортить жизнь, так как сейчас наплодилось просто огромное количество бездарных уроков, где «программированию» учат люди, совершенно не разбирающиеся в архитектуре МК. Основная часть пользователей не заметит, да, в крайнем случае возьмет ардуинку побольше, для своей новогодней мигалки. Все куда страшнее, когда с этими же знаниями и с этой же ардуинкой, с фразой «ваше время прошло, дайте дорогу молодым» лезут автоматизировать гильотинные ножницы на заводе, например (вполне реальный случай). Так что ардуино — это радость и боль на самом деле. А когда видишь, что теперь на ней даже код не пишут, а составляют все из кубиков, то становится еще больнее. Ну да это я из другой эпохи, видимо. 🙂 P.S. У ATmega8 SRAM 1K, кстати. Конечно это мало, но на самом деле если все писать самому, то нет никакой проблемы затолкать все ненужное во FLASH.
Посыпаю голову пеплом. Последний разу щупал старые AVR лет десять назад, но почему-то был уверен, что восьмой меге не доложили как раз 256 ОЗУ =) Их точно микрочип не менял с тех пор?
Лично у меня отношение двойственное к ардуинке. Сам я заимел ардуинку уже имея за плечами курс проектирования микропроцессорной техники с примерами на Motorola HC11 с аккумуляторной архитектурой, так что испортиться не получилось )
Но вообще если этим занимается какой-нибудь условный веб-девелопер тридцати годиков, то пусть и занимается, хобби это круто. А вот когда студент кроме как ардуины ничего не знает, то это уже печально.
Scratch, кстати, прекрасная вещь, созданная ровно с теми же целями, что в свое время Кумир и ИнтАл. Детвора прекрасно впитывает азы.
Не, я ковыряю их более десяти лет, и микрочип их точно не трогал (и вообще это тема больная :)))). У нас ситуация похожая, меня тоже минула чаша сия, к огромной радости. Правда зацепило бейсикоподобной волной, которая по сути мало чем отличалась от этой истории, там точно так же под капотом прятались все шестеренки, а наружу были доступны конструкции типа «Config PORTB = Output». Это конечно все весело и удобно, но первая же задача, выходящая за пределы шаблонных мигом выкинула в дебри ассемблера. И это хорошо. Единственно чего там не было, это железа. Хоть что-то приходилось ваять самому, сжигая LPT порты легендарными «пятью проводками». А сейчас же все просто, благодаря нашим маленьким китайческим друзьям. Я в общем-то совсем не старый, но мне все равно хочется гундеть про то, как сложно и интересно было раньше, как приходилось лазить по помойкам в поисках разбитых телевизоров, и как эти телевизоры тащились на горбу несколько километров, как друг у друга перерисовывались интересные схемки и менялись детальки и тому подобные увлекательные вещи. А сейчас заказал на али ардуинку, залил скетч через загрузчик, и готов «погромист». Скучно все это.
Регулятор оборотов коллекторного двигателя от стиральной машины
Прекрасный для самоделок мотор от стиральной машины имеет слишком высокие обороты, и малый ресурс на максимальных оборотах. Потому я применяю простой самодельный регулятор оборотов (без потери мощности). Схема опробована и показала прекрасный результат. Обороты регулируются примерно от 600 до max.
Потенциометр электрически изолирован от сети, что повышает безопасность пользования регулятором.
Симистор необходимо поставить на радиатор.
Оптопара (2 шт) практически любая, но EL814 имеет внутри 2 встречных светодиода, и просится в эту схему.
Высоковольтный транзистор можно поставить, например, IRF740 (от БП компьютера), но жалко такой мощный транзистор ставить в слаботочную цепь. Хорошо работают транзисторы 1N60, 13003, КТ940.
Вместо моста КЦ407 вполне подойдет мост из 1N4007, или любой на >300V, и ток >100mA.
Печатка в формате .lay5. Печатка нарисована «Вид со стороны М2 (пайка)», так что при выводе на принтер ее надо зеркалить. Цвет М2 = черный, фон = белый, остальные цвета не печатать. Контур платы (для обрезки) выполнен на стороне М2, и будет указателем границ платы после травления. Перед запайкой деталей его следует удалить. В печатку добавлен рисунок деталей со стороны монтажа для переноса на печатку. Она тогда приобретает красивый и законченный вид.
Регулировка от 600 оборотов подходит для большинства самоделок, но для особых случаев предлагается схема с германиевым транзистором. Минимальные обороты удалось снизить до 200.
Минимальные обороты получил 200 об/мин (170-210, электронный тахометр на низких оборотах плохо меряет), транзистор Т3 поставил ГТ309, он прямой проводимости,и их много. Если поставить МП39, 40, 41, П13, 14, 15, то обороты должны ещё снизиться, но уже не вижу надобности. Главное, что таких транзисторов как грязи, в отличие от МП37 (смотри форум).
Плавный пуск прекрасно работает, Правда на валу мотора пусто, но от нагрузки на валу при пуске, подберу R5 при необходимости.
R5 = 0-3к3 в зависимости от нагрузки;; R6 = 18 Ом — 51 Ом — в зависимости от симистора, у меня сейчас этого резистора нет;; R4 = 3к — 10к — защита Т3;; RР1 = 2к-10к — регулятор скорости, связан с сетью, защита от сетевого напряжения оператора обязательна. Есть потенциометры с пластмассовой осью, желательно использовать. Это большой недостаток данной схемы, и если нет большой необходимости в малых оборотах, советую использовать V17 (от 600 об/мин).
С2 = плавный пуск, = время задержки включения мотора;; R5 = заряд С2, = наклон кривой заряда, = время разгона мотора;; R7 — время разряда С2 для следующего цикла плавного пуска (при 51к это примерно 2-3 сек)
Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот
T1
СимисторBT139-6001
T2
ДинисторDB31
VD
Диодный мостКЦ407А1
VD4
Выпрямительный диод1N41481
С2
Конденсатор220 мкФ х 4 В1
С1
Конденсатор100 нФ х 160 В1
R1
Резистор3.3 кОм 0,5W1
R2
Резистор330 Ом 0,5W1
R3
Резистор470 кОм 0,125W1
R4
Резистор200 Ом 0,125W1
R5
Резистор200 Ом 0,125W1
V1
ОптопараPC8172
T3
Биполярный транзисторГТ309Г1
C2a
Конденсатор47 мкФ х 4 В1
C3
Конденсатор10 нФ х 400 В1
RP1
Переменный резистор10 К1
R6
Резистор51 Ом 0.5W1
R7
Резистор51 К 0.125W1
R8
Резистор39 Ом 1W1
Добавить все
Подборка схем регулятора оборотов двигателя постоянного тока
Производить регулировку скорости вращения вала коллекторного электродвигателя, имеющего малую мощность, можно подсоединяя последовательно в электроцепь его питания резистор. Но данный вариант создает очень низкий КПД, и к тому же отсутствует возможность осуществлять плавное изменение скорости вращения.
Основное, что этот способ временами приводит к полной остановке электродвигателя при низком напряжении питания. Регулятор оборотов электродвигателя постоянного тока, описанные в данной статье, не имеют эти недостатки. Данные схемы можно с успехом применять и для изменения яркости свечения ламп накаливания на 12 вольт.
Описание 4 схем регуляторов оборотов электродвигателя
Первая схема
На транзисторе VT1 (однопереходном) реализован генератор пилообразного напряжения (частота 150 Гц). Операционный усилитель DA1 играет роль компаратора, создающего ШИМ на базе транзистора VT2. В результате получается ШИМ регулятор оборотов двигателя.
Изменяют скорость вращения переменным резистором R5, который меняет длительность импульсов. Так как, амплитуда ШИМ импульсов постоянна и равна напряжению питания электродвигателя, то он никогда не останавливается даже при очень малой скорости вращения.
Вторая схема
Она схожа с предыдущей, но в роли задающего генератора применен операционный усилитель DA1 (К140УД7).
Этот ОУ функционирует как генератор напряжения вырабатывающий импульсы треугольной формы и имеющий частоту 500 Гц. Переменным резистором R7 выставляют частоту вращения электродвигателя.
Третья схема
Она своеобразная, построена на она на популярном таймере NE555. Задающий генератор действует с частотой 500 Гц. Ширина импульсов, а следовательно, и частоту вращения двигателя возможно изменять от 2 % до 98 %.
Слабым местом во всех вышеприведенных схемах является, то что в них нет элемента стабилизации частоты вращения при увеличении или уменьшении нагрузки на валу двигателя постоянного тока. Разрешить эту проблему можно с помощью следующей схемы:
Как и большинство похожих регуляторов, схема этого регулятора имеет задающий генератор напряжения, вырабатывающий импульсы треугольной формы, частота которых 2 кГц. Вся специфика схемы — присутствие положительной обратной связи (ПОС) сквозь элементы R12,R11,VD1,C2, DA1.4, стабилизирующей частоту вращения вала электродвигателя при увеличении или уменьшении нагрузки.
При налаживании схемы с определенным двигателем, сопротивлением R12 выбирают такую глубину ПОС, при которой еще не случаются автоколебания частоты вращения при изменении нагрузки.
Детали регуляторов вращения электродвигателей
В данных схемах возможно применить следующие замены радиодеталей: транзистор КТ817Б — КТ815, КТ805; КТ117А возможно поменять КТ117Б-Г или 2N2646; Операционный усилитель К140УД7 на К140УД6, КР544УД1, ТL071, TL081; таймер NE555 — С555, КР1006ВИ1; микросхему TL074 — TL064, TL084, LM324.
При использовании более мощной нагрузки, ключевой транзистор КТ817 возможно поменять мощным полевым транзистором, например, IRF3905 или ему подобный.