Меню

Ардуино какое напряжение можно подать

Организация питания для Arduino

Серия статей: Программирование Arduino с нуля #3

Один из пе ворвых вопросов, который возникнет у начинающего программиста контроллеров, будет от чего же будет питаться наш проект. Когда мы подключаем контроллер к компьютеру, все необходимое питание мы получаем по USB (5 В и до 500 мА). Но мы ведь хотим, чтобыконтроллер мог работать независимо, поэтому должны позаботиться о автономности.

Самый простой вариант – подвести питание 5В к контроллеру напрямую (для этого есть соотвтетствующий пины «5.5В»). Но если это напряжение случайно повысится, есть риск спалить контроллер, ведь это питание подведено напрямую.Кроме того на плате есть встроенный стабилизатор напряжения, который защитит контоллер от скачков. Он подключен к пину “VIN” и к отдельному разъему питания на плате. Какое-же напряжение можно на него подать?

Разъем питания типоразмера 5.5/2.1Разъем 5.5/2.1, который используется в Arduino- это штырьковый разъем питания, с диаметром цилиндрической части вилки 5.5 мм и внутренним диаметров отверстия в ней 2,1мм. В продаже можно найти стандартные зарядные устройства как этого типоразмера, тк и близкого к нему 5.5/2.4 – они также нам подходят, поскольку разница в три десятых миллиметра особой роли не сыграет

Смотрим в параметры нашей платы, и видим:

Рабочее напряжение 5В

Напряжение питания (рекомендуемое) 7-12В

Напряжение питания (предельное) 6-20В

Рабочее напряжение – это то, что наш контроллер может подать на выводы или прочитать с входа. То есть, если к какому-то контакту подключено напряжение 5В, контроллер будет чситать, что это логическая 1, или в понятиях программной оболочки Arduino значение HIGH (это для цифрового входа, аналоговый вход будет интерпретировать напряжение как число от 0 до 1023, т.е 5 вольт на аналоговом входе для контроллера соответствуют значанию 1023)

Рекомендуемое и предельное питание – это то, что мы можем подать на плату от блока питания или батареек. На плате имеется преобразователь питания, который понижает подводимое напряжение до нужного контроллеру 5В. Поскольку он тоже имеет не 100% КПД, то чтобы получить нужные нам 5В нужно подвести не меньше 6, а лучше 7 вольт. А вот с предельным напряжением нужно быть осторожным. Теоретически преобразователь потянет и 20В. Но чем больше напряжение, тем больше он будет греться. Фактически эта мощность, которая не расходуется ни на что полезное. И если питание от батареек/аккумуляторов, то мы с их помощью просто будем греть воздух. К тому же чем выше напряжение и, соответственно, температура, тем больше вероятность, что наш контроллер рано или поздно накроется. И если в оригинальной плате используются качественные компоненты, то в китайских репликах уже после 14-15 вольт можно распрощаться с контроллером. Вывод — если не уверен в качестве контроллера, не превышай рекомендуемые 12В. И даже если уверен, без крайней необходимости не превышай этот предел.

Кроме того, нужно следить за тем, какой ток нам нужен для нашей периферии. Если потребление в какой-то момент времени превысит предел контроллера, то он начнет работать неустойчиво или вообще перезагрузится. Контроллер имеет ограничение на максимальный ток с одного выхода (для наиболее распространенной модели Arduino Uno это 50 мА) Чтобы зажечь светодиод или включить реле этого тока достаточно. А вот в случае двигателей и сервоприводов нам понадобится питать их отдельно. Для двигателей постоянного тока и шаговых двигателей используются специальные драйверы моторов, которые имют возможность независимого питания. Небольшие сервоприводы можно запитывать напрямую от контроллера, но если их много или они имею большую мощность, то их линии питания тоже рекомендуется запитывать отдельно.

Если наш проект является стационарным и рядом есть обычная розетка, то можно использовать обычный блок питания на 7 вольт. Они могут быть расчитаны как на ток в 1А, так и на больший – зависит от потребителей. Правило простое – посчитать максимальную потребляемую мощность, прибавить для безопасности 20%. Например, если мы используем двигатели постоянного тока с пусковым током до 500мА, то с учетом потребления самой платы около 40мА нам потребуется (500+500+40)*1,2=1248 мА. Т.е нас устроит блок питания на 1,5А. Если же у нас мобильный робот, то наиболее простой вариант – использовать обычные пальчиковые элементы питания. Если использовать батарейки АА (1,5 В), то нам понадобится их не меньше четырех (6В), а лучше пять-шесть (7,5-9 Вольт). Если использовать аккумуляторы того-же типоразмера, то понадобится для того-же напряжения батарейный отсек на 5 (6В) или на 6-7 аккумуляторов (7,2-8,4 В). Здесь описан наиболее распространенный вариант, когда все наши комплектующие рассчитаны на напряжение около 6 В.

Источник



Питание плат Arduino. Сколько вольт подавать?

Рассмотрим вопрос питания плат Arduino (на примере UNO R3) и ответим на вопрос какие блоки питания можно использовать.

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

Внешний Адаптер

Самый простой вариант — использовать блок питания на 9 Вольт (адаптер 220V/9V) со специальным разъемом, который подходит к плате (см. рисунок).

Вообще говоря, можно использовать любой блок с выходным напряжением в диапазоне от 7 до 12 V, поскольку на входит стоит стабилизатор и на сам микроконтроллер всё равно будет подаваться 5V. Но всё же если использовать блок на 12 V, то на стабилизаторе будет висеть разность в 7 V, так что он может немного нагреваться. Поэтому лучше использовать 7-9 V.

Купить блок питания можно недорого здесь .

Питание от компьютера через USB

Возможно также питание от компьютера (ноутбука) через USB-порт . Это самый простой вариант, если конечно сама плата тоже имеет USB-разъем. Недостаток таково варианта очевидет — плата всегда должна быть подключена к компьютеру, а сам компьютер включен. Поэтому такой вариант чаще используется для прошивки, тестирования и отладки плат.

Читайте также:  Увеличение напряжения автомобильного аккумулятора

Питание от произвольного источника +5V

Вообще говоря, чтобы Ардуина работала, достаточно подать 5 вольт на её вывод 5V, и всё: микроконтроллер и остальная перефирия будут питаться непосредственно от этих 5 вольт. Поэтому здесь надо быть осторожным и использовать только стабильный источник питания, чтобы не спалить микроконтроллер. Я часто использую блок питания десктопного компьютера — «дежурные +5».

Источник

Питание платы Arduino

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

Перейдем к питанию платы: есть три способа питать Ардуино и вообще Ардуино-проект в целом, у каждого есть свои плюсы/минусы и особенности:

  • Бортовой USB порт
  • “Сырой” вход на микроконтроллер 5V
  • Стабилизированный вход Vin

Что касается земли (пины GND) то они все связаны между собой и просто продублированы на плате, это нужно запомнить. Пины 3.3V, 5V и GND являются источником питания для датчиков и модулей, но давайте рассмотрим особенности.

Питание от USB

Питание от USB – самый плохой способ питания ардуино-проекта. Почему? По линии питания +5V от USB стоит диод, выполняющий защитную функцию: он защищает порт USB компьютера от высокого потребления тока компонентами ардуино-проекта или от короткого замыкания (КЗ), которое может произойти по случайности/криворукости любителей ковырять макетные платы. КЗ продолжительностью менее секунды не успеет сильно навредить диоду и всё может обойтись, но продолжительное замыкание превращает диод в плавкий предохранитель, выпускающий облако синего дыма и спасающий порт компьютера от такой же участи.

Слаботочный диод имеет ещё одну неприятную особенность: на нём падает напряжение, причем чем больше ток потребления схемы, тем сильнее падает напряжение питания. Пример: голая ардуина без всего потребляет около 20 мА, и от 5 Вольт на юсб после диода нам остаётся примерно 4.7 Вольт. Чем это плохо: опорное напряжение при использовании АЦП крайне нестабильно, не знаешь, что измеряешь (да, есть способ измерения опорного напряжения, но делать это нужно вручную). Некоторые железки чувствительны к напряжению питания, например LCD дисплеи: при питании от 5V они яркие и чёткие, при 4.7 вольтах (питание от юсб) они уже заметно теряют яркость. Если подвигать сервоприводом или включить реле – на диоде упадет ещё больше и дисплей практически погаснет. При коротких мощных нагрузках (выше 500-600ма) микроконтроллер перезапустится, так как напряжение упадет ниже плинтуса.

Вы наверное предложите заменить диод перемычкой, чтобы питать схему от USB большим током, например от powerbank’а. Так делать тоже нельзя, потому что дорожки на плате не рассчитаны на большие токи (дорожка 5V очень тонкая и идёт через всю плату). Я думаю, что можно будет снять 1-2 Ампера с пина 5V, но, скорее всего, напряжение просядет. Также при КЗ вы скорее всего попрощаетесь с дорожкой вообще. Питайте силовую часть схемы либо отдельно, либо от того же источника питайте Arduino.

Питание в Vin

Питание в пин VinGND) – более универсальный способ питания ардуино-проекта, этот пин заводит питание на бортовой стабилизатор напряжения ардуино, на китайских платах обычно стоит AMS1117-5.0. Это линейный стабилизатор, что имеет свои плюсы и минусы. Он позволяет питать ардуино и ардуино-проект от напряжения 7-12 Вольт (это рекомендуемый диапазон, так то питать можно от 5 до 20 Вольт). Стабилизатор устроен так, что он выдает хорошее ровное напряжение с минимальными пульсациями, но всё лишнее напряжение превращает в тепло. Если питать плату и один миниатюрный сервопривод от 12 Вольт, то при активной работе привода стабилизатор нагреется до 70 градусов, что уже ощутимо горячо. По некоторым расчетам из даташита можем запомнить некоторые цифры:

  • При напряжении 7 Вольт (таких блоков питания я не встречал) в Vin можно снять с пина 5V до 2A, больше – перегрев. Отлично сработают два литиевых аккумулятора
  • При 12 Вольтах на Vin можно снять с пина 5V не более 500мА без риска перегрева стабилизатора.

Питание в пин Vin возможно только в том случае, если в Ардуино проекте (имеется в виду плата Ардуино и железки, подключенные к 5V и GND) не используются мощные потребители тока, такие как сервоприводы, адресные светодиодные ленты, моторчики и прочее. Что можно: датчики, сенсоры, дисплеи, модули реле (не более 3 одновременно в активном состоянии), одиночные светодиоды, органы управления. Для проектов с мощной 5 Вольтовой нагрузкой для нас есть только третий способ.

Питание в 5V

Питание в пин 5VGND) – самый лучший вариант питать плату и ардуино-проект в целом, но нужно быть аккуратным: пин идёт напрямую на микроконтроллер, и на него действуют некоторые ограничения:

  • Максимальное напряжение питания согласно даташиту на микроконтроллер – 5.5V. Всё что выше – с большой вероятностью выведет МК из строя;
  • Минимальное напряжение зависит от частоты, на которой работает МК. Вот строчка из даташита: 0 – 4 MHz @ 1.8 – 5.5V, 0 – 10 MHz @ 2.7 – 5.5V, 0 – 20 MHz @ 4.5 – 5.5V. Что это значит: большинство Arduino-плат имеют источник тактирования на 16 MHz, то есть Arduino будет стабильно работать от напряжения

4 Вольта (20 МГц – 4.5V, 16 МГц – около 4V). Есть версии Arduino на 8 МГц, они будут спокойно работать от напряжения 2.5V.

Самый популярный вариант – USB зардяник от смартфона, их легко достать, диапазон токов от 500ма до 3А – справится практически с любым проектом. Отрезаем штекер и паяем провода на 5V и GND, предварительно определив, где плюс/минус при помощи мультиметра или по цвету: красный всегда плюс, чёрный – земля, при красном плюсе земля может быть белого цвета. При чёрной земле плюс может быть белым, вот так вот. Точно туда же паяем все датчики/модули/потребители 5 Вольт. Да, не очень удобно это паять, но при известной схеме можно аккуратно собрать всё питание в отдельные скрутки и припаять уже их. Пример на фото ниже. Источником питания там является отдельное гнездо micro-usb, зелёная плата сразу над дисплеем.

Автоматический выбор источника

На платах Arduino (на китайских клонах в том числе) реализовано автоматическое переключение активного источника питания: при подключении внешнего питания на пин Vin линия питания USB блокируется. Если кому интересно, на схеме платы Arduino это выглядит вот так:

Питание “мощных” схем

Резюмируя и повторяя всё сказанное выше, рассмотрим варианты питания проектов с большим потреблением тока.

Питать мощный проект (светодиоды, двигатели, нагреватели) от 5V можно так: Arduino и потребитель питаются вместе от 5V источника питания:

Питать мощный потребитель от USB через плату нельзя, там стоит диод, да и дорожки питания тонкие:

Что делать, если всё-таки хочется питать проект от USB, например от powerbank’а? Это ведь удобно! Всё очень просто:

Если есть только блок питания на 12V, то у меня плохие новости: встроенный стабилизатор на плате не вытянет больше 500 мА:

Но если мы хотим питать именно 12V нагрузку, то проблем никаких нет: сама плата Arduino потребляет около 20 мА, и спокойно будет работать от бортового стабилизатора:

Автономное питание

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

    Питание в порт USB

      Самый обыкновенный Powerbank, максимальный ток – 500 мА (помним про защитный диод). Напряжение на пине 5V и высокий уровень GPIO в этом случае будет равен

    4.7V (опять же помним про диод). Внимание! У большинства Powerbank’ов питание отключается при нагрузке меньше 200мА, т.е. об энергосбережении можно забыть;

  • Максимальный выходной ток с пина 5V – 500 мА!
  • Питание в пин Vin (или штекер 5.5×2.1 на плате UNO/MEGA)
    • Любой блок питания/зарядник от ноута с напряжением 7-18 Вольт
    • 9V батарейка “Крона” – плохой, но рабочий вариант. Ёмкость кроны очень небольшая;
    • Сборка из трёх литиевых аккумуляторов: напряжение 12.6-9V в процессе разряда. Хороший вариант, также имеется 12V с хорошим запасом по току (3А для обычных, 20А для высокотоковых аккумуляторов) для двигателей или светодиодных лент;
    • “Модельные” аккумуляторы, в основном Li-Po. В целом то же самое, что предыдущий пункт, но запаса по току в разы больше;
    • Энергосбережение – не очень выгодный вариант, т.к. стабилизатор потребляет небольшой, но всё же ток;
    • Максимальный выходной ток с пина 5V при питании в Vin: 2А при 7V на Vin, 500ma при 12V на Vin
  • Питание в пин 5V
    • Для стабильных 5V на выходе – литиевый аккумулятор и повышающий до 5V модуль. У таких модулей обычно запас по току 2А, также модуль потребляет “в холостом режиме” – плохое энергосбережение;
    • Литиевый аккумулятор – напряжение на пине 5V и GPIO будет 4.2-3.5V, некоторые модули будут работать, некоторые – нет. Работа МК от напряжения ниже 4V не гарантируется, у меня работало в целом стабильно до 3.5V, ниже уже может повиснуть. Энергосбережение – отличное;
    • Пальчиковые батарейки (ААА или АА) – хороший вариант, 3 штуки дадут 4.5-3V, что граничит с риском зависнуть. 4 штуки – очень хорошо. Новые батарейки дадут 6V, что является максимальным напряжением для МК AVR и при желании можно так работать;
    • Пальчиковые Ni-Mh аккумуляторы – отличный вариант, смело можно ставить 4 штуки, они обеспечат нужное напряжение на всём цикле разряда (до 4V). Также имеют хороший запас по току, можно даже адресную ленту питать.
    • Платы с кварцем (тактовым генератором) на 8 МГц позволяют питать схему от низкого напряжения (2.5V, как мы обсуждали выше), отлично подойдут те же батарейки/аккумуляторы, также для маломощные проекты можно питать от литиевой таблетки (3.2-2.5V в процессе разряда).
    • Максимальный выходной ток с пина 5V ограничен током источника питания
  • Arduino как источник питания

    Важный момент, который вытекает из предыдущих: использование платы Arduino как источник питания для модулей/датчиков. Варианта тут два:

    • Питание датчиков и модулей от 5V
      • При питании платы от USB – максимальный ток 500 мА
      • При питании платы в Vin – максимальный ток 2 А при Vin 7V, 500 мА при Vin 12V
      • При питании платы в 5V – максимальный ток зависит от блока питания
    • Питание датчиков от GPIO (пинов D и A) – максимальный ток с одного пина: 40 мА, но рекомендуется снимать не более 20 мА. Максимальный суммарный ток с пинов (макс. ток через МК) не должен превышать 200 мА. Допускается объединение нескольких ног для питания нагрузки, но состояние выходов должно быть изменено одновременно (желательно через PORTn), иначе есть риск спалить ногу при её закорачивании на другую во время переключения. Либо делать ногу входом (INPUT), вместо подачи на неё низкого (LOW) сигнала. В этом случае опасность спалить ноги отсутствует.

    Помехи и защита от них

    Если в одной цепи питания с Ардуино стоят мощные потребители, такие как сервоприводы, адресные светодиодные ленты, модули реле и прочее, на линии питания могут возникать помехи, приводящие к сильным шумам измерений с АЦП, а более мощные помехи могут дергать прерывания и даже менять состояния пинов, нарушая связь по различным интерфейсам связи и внося ошибки в показания датчиков, выводя чушь на дисплеи, а иногда дело может доходить до перезагрузки контроллера или его зависания. Некоторые модули также могут зависать, перезагружаться и сбоить при плохом питании, например bluetooth модуль спокойно может зависнуть и висеть до полной перезагрузки системы, а радиомодули rf24 вообще не будут работать при “шумном” питании.

    Более того, помеха может прийти откуда не ждали – по воздуху, например от электродвигателя, индуктивный выброс ловится проводами и делает с системой всякое. Что же делать? “Большие дяди” в реальных промышленных устройствах делают очень много для защиты от помех, этому посвящены целые книги и диссертации. Мы с вами рассмотрим самое простое, что можно сделать дома на коленке.

    • Питать логическую часть (Ардуино, слаботочные датчики и модули) от отдельного малошумящего блока питания 5V, то есть разделить питание логической и силовой частей, а ещё лучше питаться в пин Vin от блока питания на 7-12V, так как линейный стабилизатор даёт очень хорошее ровное напряжение. Для корректной работы устройств, питающихся отдельно (драйверы моторов, приводы) нужно соединить земли Ардуино и всех внешних устройств;
    • Поставить конденсаторы по питанию платы, максимально близко к пинам 5V и GND: электролит 6.3V 100-470 uF (мкФ, ёмкость зависит от качества питания: при сильных просадках напряжения ставить ёмкость больше, при небольших помехах хватит и 10-47 мкФ) и керамический на 0.1-1 uF. Это сгладит помехи даже от сервоприводов;
    • У “выносных” на проводах элементах системы (кнопки, крутилки, датчики) скручивать провода в косичку, преимущественно с землёй. А ещё лучше использовать экранированные провода, экран естественно будет GND. Таким образом защищаемся от электромагнитных наводок;
    • Соединять все земли одним толстым проводом и по возможности заземлять на центральное заземление;
    • Металлический и заземленный корпус устройства (или просто обернутый фольгой ? ), на который заземлены все компоненты схемы – залог полного отсутствия помех и наводок по воздуху.

    Ещё лучше с фильтрацией помех справится LC фильтр, состоящий из индуктивности и конденсатора. Индуктивность нужно брать с номиналом в районе 100-300 мкГн и с током насыщения больше, чем ток нагрузки после фильтра. Конденсатор – электролит с ёмкостью 100-1000 uF в зависимости опять же от тока потребления нагрузки после фильтра. Подключается вот так, чем ближе к нагрузке – тем лучше:

    Подробнее о расчёте фильтров можно почитать здесь.

    Индуктивные выбросы

    На практике самая подлая помеха обычно приходит при коммутации индуктивной нагрузки при помощи электромагнитного реле: от такой помехи очень сложно защититься, потому что приходит она по земле, то есть вас не спасёт даже раздельное питание проекта. Что делать?

    • Для цепей постоянного тока обязательно ставить мощный диод обратно-параллельно нагрузке, максимально близко к клеммам реле. Диод примет (замкнёт) на себя индуктивный выброс от мотора/катушки;
    • Туда же, на клеммы реле, можно поставить RC цепочку, называемую в этом случае искрогасящей: резистор 39 Ом 0.5 Вт, конденсатор 0.1 мкФ 400V (для цепи 220В);
    • Для сетей переменного тока использовать твердотельное (SSR) реле с детектором нуля (Zero-cross detector), они же называются “бесшумные” реле. Если в цепи переменного тока вместо реле стоит симистор с оптопарой, то оптопару нужно использовать опять же с детектором нуля, такая оптопара, как и SSR zero-cross будут отключать нагрузку в тот момент, когда напряжение в сети переходит через ноль, это максимально уменьшает все выбросы.

    Подробнее об искрогасящих цепях можно почитать вот в этой методичке.

    Главный Глупый Вопрос

    У новичков в электронике, которые не знают закон Ома, очень часто возникают вопросы вида: “а каким током можно питать Ардуино“, “какой ток можно подать на Ардуино“, “не сгорит ли моя Ардуина от от блока питания 12V 10A“, “сколько Ампер можно подавать на Arduino” и прочую чушь. Запомните: вы не можете подать Амперы, вы можете подать только Вольты, а устройство возьмёт столько Ампер, сколько ему нужно. В случае с Arduino – голая плата возьмёт 20-22 мА, хоть от пина 5V, хоть от Vin. Ток, который указан на блоке питания, это максимальный ток, который БП может отдать без повреждения/перегрева/просадки напряжения. Беспокоиться стоит не об Arduino, а об остальном железе, которое стоит в схеме и питается от блока питания, а также о самом блоке питания, который может не вывезти вашу нагрузку (мотор, светодиоды, обогреватель). Общий ток потребления компонентов не должен превышать возможностей источника питания, вот в чём дело. А будь блок питания хоть на 200 Ампер – компоненты возьмут ровно столько, сколько им нужно, и у вас останется “запас по току” для подключения других. Если устройство питается напряжением, то запомните про максимальный ток источника питания очень простую мысль: кашу маслом не испортишь.

    Источник

    Adblock
    detector