Как подключить к ардуино 12в
Форум arduino.ua
#1 2018-02-06 16:26:55
Подключение питания 12 В 1 А к Arduino Uno
Добрый день, господа участники)
прошу помощи так как мал и глуп и уже имею одну жертву в виде китайского клона уно на своем счету (
прошу не сильно пинать- поискал и не нашел интересующюю тему на этом и многих других ресурсах.
имею Arduino UNo и блок питания на 12В 1А. нужен он для питания мембранного насоса на 12В. хочется от него же и запитать Arduino. для этих целей был куплен Dc-Dc конвертер, продавец в магазине набросал схему где выходу конвертера подключаются к Vin и 5 В и Gnd Arduino. схему могу приатачить. после подключения всего как было указано и подачи 12В через DC вход- микроконтроллер (похоже стабилихатор питания) сильно нагрелся и плата перестала определяться в диспетчере устройств. подскажите как можно от одного блока питать Arduino и девайс требующий напряжение выше чем допустимо для Arduino (12 V)
заранее спасибо,да прибудет с вами сила тока и оптимальное напряжение)
#2 2018-02-06 16:48:17
Re: Подключение питания 12 В 1 А к Arduino Uno
Помойму Vin тут лишний. Лучше схему.
А для насоса хотя бы реле.
Остання редакція Green (2018-02-06 16:49:23)
#3 2018-02-06 17:34:04
Re: Подключение питания 12 В 1 А к Arduino Uno
#4 2018-02-06 19:00:02
Re: Подключение питания 12 В 1 А к Arduino Uno
Спасибо! принято к рассмотрению. по поводу учебника по электротехники, как раз подобные книги своим замысловатым изложением отбили охоту разбираться в этих вопросах, оставив в памяти только набор слов «преобразование звезды в треугольник»))
конечно я говорю о советских трудах, возможно сейчас учебники более человечные)
Остання редакція Arduino Junior (2018-02-06 19:26:35)
#5 2018-02-06 20:59:53
Re: Подключение питания 12 В 1 А к Arduino Uno
итак дополняя первоначальный вопрос:
понижающий конвертер dc-dc lm2596 который был куплен.
вот схема которую нарисовал продавец:
вот таким образом я ее для себя интерпретировал:
Естественно блок питания 12В 1А торчит в DC входе Arduino.
на lm2596 похоже есть регулятор выходного напряжения, может оно (напряжение) не отрегулировано. не имею мультиметра чтобы определить (завтра закажу)
Как я могу использовать вход 12 В на цифровом выводе Arduino?
Я создаю контроллер для системы 12 В, используя микрокронтроллер Arduino Uno. Для выходов я использую релейный экран для переключения компонентов 12 В. У меня есть тумблер 12 В, который включает некоторые компоненты 12 В в системе, и я хочу использовать триггерный сигнал от того же самого переключателя для отправки на цифровой вход Arduino. Я знаю, что Arduino может работать только с 5 В макс. Что было бы лучшим способом понизить напряжение 12 В на выключателе до 5 В для входа?
Хорошие новости! Это будет дешево! 🙂
Простой резисторный делитель снизит напряжение 12 В до 5 В, которые может переварить Arduino. Выходное напряжение можно рассчитать как
V O U T = R 2 R 1 + R 2 V I N ‘ role=»presentation» style=»position: relative;»> V O U T = R 2 R 1 + R 2 V I N
Значения резисторов в диапазоне 10 кОм являются хорошим выбором. Если ваш R2 равен 10 кОм, тогда R1 должен быть 14 кОм. Теперь 14 кОм не является стандартным значением, а 15 кОм. Ваше входное напряжение будет 4,8 В вместо 5 В, но Arduino увидит это все еще на высоком уровне. У вас также есть немного запаса на случай, если 12 В должно быть слишком высоким. Даже 18 кОм все равно дадут вам достаточно высокое 4,3 В, но тогда вы должны начать думать о 12 В слишком низко. Будет ли напряжение по-прежнему считаться высоким? Я бы придерживался 15 кОм.
редактировать
Вы упоминаете автомобильную среду, а затем вам нужна дополнительная защита. Напряжение 12 В в автомобиле никогда не бывает достаточно 12 В, но в большинстве случаев оно выше, с пиковыми значениями в несколько вольт выше номинальных 12 В. (На самом деле номинальное значение больше похоже на 12,9 В при 2,15 В на элемент.) Вы можете поместить стабилитрон на 5 В диод параллельно с R2, и это должно обрезать любое напряжение выше, чем напряжение 5 В. Стабилизатора. Но напряжение Стабилизатора меняется в зависимости от тока, и при низком входном токе резисторы дают вам отключение при более низких напряжениях. Лучшим решением было бы иметь диод Шоттки между входом Arduino и источником питания 5 В. Тогда любое входное напряжение выше, чем примерно 5,2 В, приведет к тому, что диод Шоттки будет работать, а входное напряжение будет ограничено 5,2 В. Для этого вам действительно нужен диод Шоттки, обычный PN-диод имеет 0.
Vcc является источником питания 5 В Arduino, Vout поступает на вход Arduino. Обратите внимание, что входной сигнал будет инвертированным: он будет низким, если присутствует 12 В, и высоким, если его нет. Если вы этого не хотите, вы можете поменять положение выхода оптопары и подтягивающего резистора.
edit 2
Как решение оптопары не решает проблему перенапряжения? Резисторный делитель является пропорциональным: выходное напряжение является фиксированной величиной входного напряжения. Если вы рассчитали на 5 В на 12 В, то на 24 В будет 10 В. Не в порядке, отсюда и защита диода.
Если вы ожидаете перенапряжения, вам придется проверить, справится ли светодиод оптопары с повышенным током, но 20 мА не будет проблемой для большинства оптопар (они часто рассчитаны на максимум 50 мА), и, кроме того, это для двойной входное напряжение, которое, вероятно, не произойдет IRL.
Управление мощной нагрузкой
“Универсальное” электромагнитное реле
Электромагнитное реле является по сути управляемым механическим выключателем: подали на него ток – оно замкнуло контакты, сняли ток – разомкнуло. Контакты являются именно контактами: металлическими “пятаками”, которые прижимаются друг к другу. Именно поэтому такое реле может управлять как нагрузкой постоянного, так и переменного тока.
Сама катушка реле является неслабой индуктивной нагрузкой, что приводит к дополнительным проблемам (читай ниже), поэтому для управления “голым” реле нам понадобится дополнительная силовая и защитная цепь.
После изучения данного урока вы сами сможете её составить (транзистор и диод), а сейчас мы поговорим о модулях реле: готовая плата, на которой стоит само реле, а также цепи коммутации, защиты и даже оптическая развязка. Такие модули бывают “семейными” – с несколькими реле на борту. Спасибо китайцам за это! Смотрите варианты у меня в каталоге ссылок на Али.
Такое реле сделано специально для удобного управления с микроконтроллера: пины питания VCC (Vin, 5V) и GND подключаются к питанию, а далее реле управляется логическим сигналом, поданным на пин IN. С другой стороны стоит клеммник для подключения проводов, обычно контакты подписаны как NO, NC и COM. Это общепринятые названия пинов кнопок, переключателей и реле:
Подключение нагрузки через реле думаю для всех является очевидным:
Важный момент: катушка реле в активном режиме потребляет около 60 мА, то есть подключать больше одного модуля реле при питании платы от USB не рекомендуется – уже появятся просадки по напряжению и помехи:
На плате, справа от надписи High/Low trigger есть перемычка, при помощи которой происходит переключение уровня. Электромагнитное реле имеет ряд недостатков перед остальными рассмотренными ниже способами, вы должны их знать и учитывать:
Важный момент связан с коммутацией светодиодных светильников и ламп, особенно дешёвых: у них прямо на входе стоит конденсатор, который при резком подключении в цепь становится очень мощным потребителем и приводит к скачку тока. Скачок может быть настолько большим, что 15-20 Ваттная светодиодная лампа буквально сваривает контакты реле и оно “залипает”! Данный эффект сильнее выражен на дешёвых лампах, будьте с ними аккуратнее (за инфу спасибо DAK). При помощи реле можно плавно управлять сильно инерционной нагрузкой, такой как большой обогреватель. Для этого нужно использовать сверхнизкочастотный ШИМ сигнал, у меня есть готовая библиотека. Не забываем, что реле противно щёлкает и изнашивается, поэтому для таких целей лучше подходит твердотельное реле, о котором мы поговорим ниже.
Постоянный ток
Оптопара
Оптопара – отличный элемент, позволяет выполнять две функции: коммутировать нагрузку (пусть и небольшую) и полностью физически развязывает микроконтроллер с ней. Оптопары можно использовать для имитации нажатия кнопок у других внешних устройств, то есть замыкать чисто логический сигнал. Также можно использовать для разрывания питания различных датчиков и модулей в устройстве вместо транзистора. Оптопара состоит из двух частей: светодиод, который мы включаем при помощи микроконтроллера, и выходная часть, которая может быть разной (транзистор, симистор и проч.), таким образом сигнал с микроконтроллера отделяется от нагрузки через луч света, что очень важно при коммутации высоковольтных или каких-то чувствительных цепей. Для управления внешними устройствами надо брать оптопары с транзисторным выходом, например очень распространённую PC814 и её аналоги (FOD814, LTV814 и прочие), при желании можно выковырять почти из любого блока питания. Данная оптопара позволяет коммутировать нагрузку с напряжением до 60 Вольт и током до 50 мА. Покажу вырезку из даташита с этими параметрами, у остальных оптопар параметры будут называться точно так же:
Подключается оптопара следующим способом: светодиодом мы управляем с МК через резистор, а выход подключаем в разрыв нагрузки, соблюдая полярность. Что касается светодиода на управляющем входе оптопары – для него нужен резистор, как считать резистор для светодиода было рассказано в уроке про светодиоды. В большинстве случаев достаточно поставить резистор на 220 Ом, как и для любых светодиодов. Если ток светодиода будет меньше указанного, соответственно уменьшится максимальный ток выхода, что для этой оптопары уже критично (светодиод хочет аж 50 мА). Оптопара не предусмотрена для управления большой нагрузкой, обычно это коммутация других логических цепей, поэтому о токе можно не думать. Подключение нагрузки (условный нагрузочный резистор):
Для управления “кнопкой” другого устройства (фотоаппарат, кофемашина) достаточно подключить оптопару параллельно кнопке. Во избежание замыкания оптопары на кнопку (что сожгёт оптопару) желательно поставить защитный резистор с номиналом 200-1000 Ом. Тут будет две схемы, по сути одинаковые. Перед подключением нужно проверить мультиметром, где у кнопки “плюс”, а где “минус”, так как выход с оптопары у нас полярный.
Существует также интересная оптопара TLP172 с мосфетным выходом, причём неполярным (может коммутировать нагрузку в любую сторону)! Управляет напряжением до 60 Вольт при токе до 400 мА – уже вполне серьёзная игрушка.
Транзистор
Самый компактный способ управлять нагрузкой постоянного тока – транзистор. Транзисторы бывают биполярные и полевые (MOSFET, полевик, ключ). Биполярные уже морально и физически устарели, имеют много характеристик и требуют дополнительного изучения темы, поэтому мы рассмотрим только полевые транзисторы. Схема типовая и выглядит вот так:
Или вот так, конкретно для корпуса to220. Также на этой схеме плата Ардуино питается от внешнего источника в пин Vin:
Полевики бывают и в других корпусах, для подключения по первой принципиальной схеме нужно загуглить распиновку (pinout) на свой конкретный транзистор. Но в основном там всё обстоит вот так:
Что за резисторы?
Я привёл схему, в которой используется N-канальный полевой транзистор, который управляет линией GND. Существуют также P-канальные мосфеты, они управляют линией питания. Такие транзисторы в целом дороже, реже встречаются и имеют высокий порог напряжения открытия, т.е. для их работы придётся ставить ещё один транзистор (биполярный) и с его помощью подавать более высокий сигнал от внешнего источника на затвор P-канального полевика. Поэтому в 99% случаев просто используют более удобные N-канальные ключи. Как выбрать транзистор для своей задачи? Первым делом смотрим на напряжение открытия транзистора (как читать график в даташите – см. видео урок ниже), 100% подойдёт транзистор с пометкой Logic Level в описании или даташите: такие мосфеты точно будут работать на полную катушку от пина МК. Само собой ток и напряжение должны соответствовать (взяты с запасом) для нагрузки, которую будет коммутировать мосфет. Есть ещё параметр сопротивление открытого канала, на этом сопротивлении будет падать напряжение и превращаться в тепло. Для мощных нагрузок нужно рассматривать полевики с низким сопротивлением канала, чтобы сильно не грелись. Приведу свой список мосфетов в двух основных корпусах: выводной to220 и dpack для поверхностного монтажа, в нём “Ток при 3V” и “Ток при 5V” означает максимальный ток через транзистор (на нагрузку) в Амперах при управлении логическим сигналом 3 и 5 Вольт. Максимальное напряжение для нагрузки смотрите у конкретного транзистора, но у всех оно выше 24V. “R” – сопротивление открытого канала в миллиомах (10^-3 Ом). Также полевики отсортированы по увеличению цены в российских магазинах =)
Маркировка | R, мОм | Ток при 3V | Ток при 5V |
IRLZ24NPBF | 60 | 4 | 20 |
IRF3704ZPBF | 7.9 | 10 | >100 |
IRLB8743PBF | 3.2 | 20 | >100 |
IRL2203NPBF | 7 | 30 | >100 |
IRLB8748PBF | 4.8 | 10 | >100 |
IRL8113PBF | 6 | 40 | >100 |
IRL3803PBF | 6 | 20 | >100 |
IRLB3813PBF | 1.95 | 20 | >100 |
IRL3502PBF | 7 | >100 | >100 |
IRL2505PBF | 8 | 20 | >100 |
IRF3711PBF | 6 | 80 | >100 |
IRL3713PBF | 3 | 20 | >100 |
IRF3709ZPBF | 6.3 | 40 | >100 |
AUIRL3705N | 6.5 | 20 | >100 |
IRLB3034PBF | 1.7 | >100 | >100 |
IRF3711ZPBF | 6 | 20 | >100 |
Маркировка | R, мОм | Ток при 3V | Ток при 5V |
STD17NF03LT4 | 50 | 5 | 40 |
IRLR024NPBF | 65 | 4 | 20 |
IRLR024NPBF | 40 | 5 | 40 |
IRLR8726PBF | 6 | 10 | 110 |
IRFR1205PBF | 27 | – | 10 |
IRFR4105PBF | 45 | – | 10 |
IRLR7807ZPBF | 12 | 10 | 100 |
IRFR024NPBF | 75 | – | 8 |
IRLR7821TRPBF | 10 | 11 | 100 |
STD60N3LH5 | 8 | 30 | 160 |
IRLR3103TRPBF | 19 | 11 | 100 |
IRLR8113TRPBF | 6 | 40 | 110 |
IRLR8256PBF | 6 | 10 | 110 |
IRLR2905ZPBF | 13 | – | 100 |
IRLR2905PBF | 27 | 20 | 90 |
Для слаботочных цепей мне нравится использовать полевик 2n7000 (купить мешок) – тянет до 400 мА. Корпус – компактный выводной to-92. Также у друзей-китайцев есть удобные готовые модули с мосфетами и всей необходимой обвязкой:
Ну и самый важный момент: на полевой транзистор можно подавать ШИМ сигнал для “плавного” управления нагрузкой: плавно менять скорость вращения мотора, яркость светодиодной ленты, мощность обогревателя и прочее прочее!
Твердотельное реле (SSR DC)
Более простой вариант – твердотельное реле (Solid State Relay, SSR) для постоянного тока (DC), найти можно на том же Aliexpress по запросу SSR DC. Внимательно смотрим на маркировку: под выходными клеммами должно быть написано VDC, т.е. постоянное напряжение. Твердотельное реле имеет стандартный корпус для моделей постоянного и переменного тока, поэтому нужно читать что написано и не перепутать. Также в маркировке после слова SSR обычно указан ток в Амперах, т.е. SSR-25 это реле на 25 Ампер. Максимальное напряжение указано под выходными клеммами.
Твердотельное реле подключается напрямую к Arduino, пин “-” к GND, “+” к любому цифровому пину. Выход реле ставится в разрыв цепи питания нагрузки, как выключатель. Важно не перепутать плюс и минус, потому что внутри реле представляет собой полевой транзистор на радиаторе =)
Переменный ток
Симистор как вкл/выкл
Симистор – радиоэлемент, похожий на транзистор, но может работать на переменном токе. Высокое напряжение – штука опасная, поэтому для управления симистором используется оптопара с симисторным выходом. Простейшая схема подключения выглядит вот так:
Для управления нагрузкой только в режиме вкл/выкл желательно ставить оптопару с детектором нуля (например MOC306x), она будет сама отключать и включать нагрузку только в моменты перехода напряжения в сети через 0, что сильно уменьшает помехи в сети. Также здесь стоят резисторы: 220 Ом – для ограничения тока на светодиод оптопары (смотри характеристики оптопары, как подбирать резистор я писал выше). И резистор между оптопарой и симистором: 220-470 Ом с мощностью 1-2 Вт (будет греться). Симистор нужно брать с хорошим запасом по току, чтобы меньше грелся. Также симисторы бывают серии BTA и BTB, у BTA корпус (металлическая часть) изолирован и рекомендуется брать именно их, чтобы не шарахало током от радиатора. Распиновка компонентов:
У китайцев есть готовые модули с симистором и всей обвязкой. Кстати да, симистор греется под нагрузкой! Наличие радиатора обязательно, начиная с 200 Ватт.
Симистор как диммер
Для плавного управления нагрузкой переменного тока задача сильно усложняется: нужно ловить момент переключения напряжения, засекать время и выключать симистор, отсекая часть синусоиды, это называется фазовым управлением.
Для этой схемы нужна оптопара без детектора нуля, например серии MOC302x. Схема такой поделки может выглядеть вот так:
Резисторы 51к обязательно мощные, так как на них будет выделяться 1 Ватт: гасим лишнее напряжение, чтобы не сжечь светодиод оптопары детектора нуля. Также готовый модуль можно купить на Али. Выглядит он вот так и имеет пины питания, пин контроля симистора и вывод детектора нуля. Как со всем этим работать – смотрите видос ниже:
Где-то существует китайская библиотека для управления таким модулем, но она мне не очень понравилась. Привожу два примера для ручного управления таким диммером на базе библиотеки GyverTimers: одноканальный и многоканальный. В многоканальном режиме достаточно подключить к Ардуино выход детектора нуля только с одного модуля, а вот управляющие пины уже указать в скетче. Рассмотренные ниже примеры можно чуть оптимизировать, заменив digitalWrite() на быстрый аналог.