Проверьте таблицу данных для входного тока на выводе ввода / вывода. Это зависит от точного типа контроллера на Arduino. Он, вероятно, называется входным контактом ввода / вывода тока утечки и будет около 1 мкА .
Вот типичная таблица данных ATmega, используемая в Uno / Duemilanove / … , вы можете найти параметр на стр. 304. Проверьте таблицу данных для вашего конкретного контроллера для точных деталей.
Если вы используете батарею 3,7 В и повышающий преобразователь для подачи напряжения 5 В на контроллер, вы можете подключить батарею непосредственно к аналоговому входу вашего контроллера. Однако, когда выходное напряжение повышающего преобразователя падает ниже напряжения батареи (по любой причине), тогда весь ваш Arduino будет питаться через аналоговый входной вывод, а это то, что вам не нужно. Все входные контакты имеют защиту от перенапряжения, которая обеспечивает такое поведение, но диоды не рассчитаны на постоянные токи. В заключение: лучше всего включить последовательный резистор между батареей и входным контактом.
Но теперь ваши измерения зависят от точности источника питания 5 В. В зависимости от того, какой именно контроллер у вас есть, доступны различные внутренние опорные напряжения, которые намного точнее, чем напряжение источника питания. Если вы добавите дополнительный резистор к заземлению (R2), вы можете использовать такой эталон для точного измерения входного напряжения. Это называется (резистивный) делитель напряжения. При заданном соотношении напряжение на входном выводе будет равно 1 В при напряжении батареи 3,7 В:
В м е р ю м е н т = R 2 × V B A T T R 1 + R 2 В м е s U р е м е N T знак равно р 2 × В В T T р 1 + р 2
смоделировать эту схему — схема, созданная с использованием CircuitLab
Ахмед ФаридТаким образом, по сути, его можно подключить напрямую к аккумулятору, но НЕ рекомендуется, если переменный ток 5 В. Даже если 5v регулируется и постоянно?
Это должно быть безопасно, если 5 В постоянно, но все идет не так, как надо: лучше, чем потом сожалеть. Один или два резистора намного дешевле, чем новый микроконтроллер. Инженерия — это не только создание вещей, но и создание вещей, которые продолжают работать так, как требуется.
Еще один вопрос, если позволите: разве одно сопротивление (1 кОм) параллельно батарее не достаточно хорошо, чтобы предотвратить высокий ток на входе? (См. Мой второй рисунок)
Нет, это не делает ничего, кроме как вытащить аккумулятор.
Хорошо. Большое спасибо за вашу помощь 🙂
askentire.net
Проверьте таблицу на предмет входного тока на выводе ввода / вывода. Это зависит от точного типа контроллера вашего Arduino. Вероятно, он называется входной ток ввода / вывода утечки тока и будет около 1 мкА .
Вот типичная таблица данных ATmega, используемая в Uno / Duemilanove / … , параметр можно найти на странице 304. Проверьте таблица данных для вашего конкретного контроллера для получения точных сведений.
Если вы используете батарею 3,7 В и повышающий преобразователь для подачи напряжения 5 В на контроллер, вы можете подключить батарею непосредственно к аналоговому входу вашего контроллера. Однако, когда выходное напряжение повышающего преобразователя падает ниже напряжения батареи (по любой причине), тогда весь ваш Arduino будет питаться через аналоговый входной вывод, и это то, чего вы не хотите , Все входные контакты имеют защиту от перенапряжения, которая обеспечивает такое поведение, но диоды не рассчитаны на постоянные токи. В заключение: лучше всего включить последовательный резистор между батареей и входным контактом.
Но теперь ваши измерения зависят от точности источника питания 5 В. В зависимости от того, какой именно контроллер у вас есть, доступны различные внутренние опорные напряжения , которые намного более точны, чем напряжение источника питания. Если вы добавите дополнительный резистор к заземлению (R2), вы можете использовать такой эталон для точного измерения входного напряжения. Это называется (резистивный) делитель напряжения. При заданном соотношении напряжение на входном контакте будет равно 1 В, когда напряжение батареи составляет 3,7 В:
\ $ V_ {измерение} = \ dfrac {R2 × V_ {BATT}} {R1 + R2} \ $
имитировать эту схему — схема, созданная с использованием CircuitLab
ubuntugeeks.com
Микроконтроллер | ATmega328 |
Рабочее напряжение | |
Входное напряжение (рекомендуемое) | 7-12 В |
Входное напряжение (предельное) | |
Постоянный ток через вход/выход |
Под рабочим напряжением имеется в виду рабочее напряжение микроконтроллера. Данный микроконтроллер может работать с напряжением от 1,8 до 5 вольт(1.8 — 5.5V for ATmega328P — datasheet). Отсюда уже можно понять что пониженное напряжение для него не страшно, это только может сказаться на работе подключенных датчиков и серийном порте. Но превышение 5.5 вольт является очень критичным, как только напряжение превысит этот показатель то микроконтроллер(далее МК) сгорит. Так же в оригинальных ардуино или копиях оригинала для связи МК с компьютером есть еще одна МК Atmega16u2, данная микросхема отвечает за прошивку основной МК atmega328 и связи ее с компьютером(по сути она преобразует сигнал последовательного порта rs-232 ttl в параллельный usb). Для запуска atmega16u2 необходимо больше напряжение, минимальное напряжение 2.7В (Operating Voltages – 2.7 — 5.5V — datasheet).
В arduino предусмотрено подключение питания 3-мя различными способами:
Поскольку со схемой питания мы разобрались, перейдем к неисправностям.
1. Нет питание от usb, плата не определяется компьютером
Что делать если ваша плата перестала определяться?! Первым делом нужно проверить напряжение на микроконтроллере atmega16u2, именно она отвечает за загрузку скетча, определения платы и обеспечивает работу терминала. Отсутствие напряжение на микроконтроллере означает потерю связи компьютер-плата. Для начала нужно проверить поступает ли напряжение на плату, удобнее это сделать с обратной стороны. Для того что бы проверить входное напряжение на плате нужно подключить кабель к usb и замерить напряжение на выходах отмеченных на рисунке ниже.
Если там напряжение около 5 вольт значит идем дальше, если нет проверяем кабель и устройство к которому подключаем. Для дальнейшей проверки мы будем пользоваться рисунком ниже.
Поскольку напряжение поступает на плату дальше можно проверять все по цепи питания либо замерить напряжение на микроконтроллере atmega16u2 (на рисунке отмечен синим цветом). Мы будем проверять напряжение на микроконтроллере, это может иногда сэкономить время. Поскольку размеры atmega16u2 не большие мы будем замерять напряжение на контакте конденсатора C7 (отмечен красным, связан с плюсом питания микросхемы) и контакте конденсатора С9 (отмечен красным, связан с плюсом питания микросхемы). При отсутствии напряжения около 5 вольт, есть смысл проверить предохранитель F1 (на схеме рисунке отмечен коричневым цветом). При выходе из строя предохранителя нужно заменить на похожий для токов 500мА, либо запаять перемычку(небезопасно). Ну а если дело не в предохранителе берем схему и проверяем все по порядку.
Если же напряжение atmega16u2 нормальное (около пяти вольт) то нужно смотреть в сторону контроллера и интерфейса usb, можно проверить входные сопротивления на рисунке отмечены фиолетовым цветом (должны быть номиналом 20ОМ). Если же сопротивления в порядке, следует проверить сам микроконтроллер для это нужно подключить программатор к разъему программирования isp справа от микроконтроллера и попробовать считать с него данные. В случае успеха не стоит радоваться заранее, у микроконтроллера могут выгореть ножки подключенные к усб, но в целом он будет работать. Признаки не исправного микроконтроллера :
Так же есть небольшая вероятность выхода из строя кварцевого генератора (обведен на рисунке зеленым цветом), можно проверить его осциллографом. В случае неисправности atmega16u2 её необходимо заменить, но её крохотные размеры делают замену очень очень трудной. Можно работать если «жив» основной микроконтроллер atmega328p и без atmega16u2, прошивая атмегу 328-ую программатором через isp разъем, но если atmega16u2 греется то перегревом она может вывести из строя другие элементы.
На фото выпаянный микроконтроллер atmega16u2:
2. Нет питания микроконтроллера (5 Вольт)
У вас подозрение что напряжение а микроконтроллере далеко не 5 вольт или его вовсе нет?! За напряжение 5 вольт от внешнего источника отвечает стабилизатор напряжения NCP1117ST50, при потере питания 5 вольт стоит проверить его. Причинами выхода из строя может быть несколько перегрев, превышение допустимых токов и т.д. Расположение и схема включение показана на рисунке ниже.
Для проверки напряжения на стабилизаторе нужно измерить напряжение между ногами GND(1) и Output(2), оно должно быть 5 вольт. При отсутствии или меньшем напряжении нужно проверить напряжение на входе, для этого нужно замерить напряжение на ногах GND(1) и Input(3) оно должно быть примерно таким как источника питания. При отсутствии напряжения нужно проверить диод D1 (отмечен на рисунке ниже). При низком напряжении на выходе стоит так же проверить конденсаторы С1 и С2 которые расположены под разъемом питания.
Если же конденсаторы в подряде и напряжение на входе нормальное, то следует заменить стабилизатор NCP1117ST50 (при отсутствии такого можно использовать AMS1117 5.0 — применяется в китайских копиях Arduino UNO).
Замена стабилизатора
Для замены стабилизатора без фена (паяльником) я откусываю кусачками три ноги как на рисунке ниже.
Металлическое основание стабилизатора откусывать не надо (оно выполняет функцию теплоотвода), после того как мы ампутировали три ноги его достаточно хорошо прогреть паяльником и снять стабилизатор пинцетом. Я пытался откусить основание и оторвал немного дорожку под ним, это не критично но с точки зрения эстетичности так себе. Осталось выпаять оставшиеся концы ног, после чего Вуаля:
Запаиваем новый стабилизатор и радуемся работоспособности. Таким же методом и меняем стабилизатор (откусыванием ног) 3,3 вольт.
3. Нет напряжения 3,3 вольта
В вашей плате исчезло напряжение 3,3 вольта?! Это пожалуй самый простой сценарий и легко поправимый. За преобразования напряжения в 3,3 вольта отвечает маленькая микросхема LP2985-33DBVR, и с связан ней только один элемент конденсатор С3 1мкф. В случае отсутствия нужного напряжения есть смысл первым делом смотреть в ее сторону. Нам нужно проверить напряжение на её входе и выходе.
Для проверки входного напряжение мы должны проверить напряжение на ноге Vin(1) и GND(2), как на рисунке выше. В случае наличие напряжение там около 5 вольт мы будем проверять выходное напряжение, в противном случае нужно искать по схеме где «обрыв». Для проверки напряжения на выходе стабилизатора необходимо замерить напряжение между контактами Vout(5) и Gnd(2), при нормальной работе там будет 3,3 вольта. Так же особенностью данного стабилизатора является то что у нее есть контакт включения и выключения, те для работы нужно подать на 3-ю ногу высокий уровень сигнала, но в arduino ноги Vin и ON/OFF соединены между собой и на ней будет около 5 вольт при нормальной работе. При желании наличие напряжение на ноге можно замерить между 2 и 3 ногой. Если напряжение на входах присутствует, а на выходе стабилизатора его нет, то данный стабилизатор подлежит замене.
Советы по продлению жизни Arduino.
Для достижение этих показателей можно использовать стабилизатор между Arduino и источником питания, тем самым будет греться стабилизатор находящийся за пределами платы. В качестве токового стабилизатора я выбрал L7808CV, поскольку 6,6-7,6 вольт ничего не было пришлось брать на 8 вольт. Собрать можно хоть на макетке если не заворачиваться, схема следующая:
Всем спасибо за внимание, надеюсь статья оказалась полезной.
radio-blogs.ru