как определить что нет питания от usb
- Войдите на сайт для отправки комментариев
Пнд, 27/01/2014 - 23:57
Доброе время суток!
питание к arduino uno подходит через usb, при отсутствии питания от usb питается от подключённо к vin батарее 9v, как определить что пропало питание от usb?
при отсутствии питания от usb питается от подключённо к vin батарее 9v
Это вы так думаете. На самом деле как только вы подключаете батарейку дуина питается от батарейки, а не от USB. Как только напряжение на VIN падает ниже 6.6 вольта дуина переключается на USB.
при отсутствии питания от usb питается от подключённо к vin батарее 9v
Это вы так думаете. На самом деле как только вы подключаете батарейку дуина питается от батарейки, а не от USB. Как только напряжение на VIN падает ниже 6.6 вольта дуина переключается на USB.
А приоритет питания можно поменять?
И остаётся актуальным вопрос про то как узнать что нет питания от usb.
Плюсовой провод от USB завести на цифровой вход, не?
dieego, а что нужно получить в итоге, автоматическое переключение на батарейное питание?
dieego, а что нужно получить в итоге, автоматическое переключение на батарейное питание?
1.Да, автоматическое переключение на батарейное питание.
2. определить что питание от сети отсутствует и сообщить об этом пользователю.
Какой вообще приоритет питания:vin,usb, dc джек?
какой мне подключать как питание от сети, а где использовать батарею?
Ну и соответственно примерная реализация
X
Через токоограничительный резистор подать уровень лог 1 на любую ногу и написав обработку вибирать источник.
X
нормальный вариант только для 5-ти вольтовых ардуин (UNO как раз такая) стабилитрон надо ставить 5.1в - это надежней с точки зрения определения логической 1. Это если вход цифровой. Для аналогового не имеет значения.
вариант со стабилитроном лучше чем вариант с резистивным делителем потому как мы гарантируем себе, что напряжение на входе ардуино не превысит допустимое. Однако если вероятность выхода питающего напряжения низкая, то нормально использовать и резистивный делитель, только тут уже лучше использовать аналоговый вход, не цифровой
А приоритет питания можно поменять?
И остаётся актуальным вопрос про то как узнать что нет питания от usb.
если посмотрите на схему UNO http://arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf
то увидите, что U5A и T1 обеспечивают отключение питания USB при наличии напряжения на VIN. Эта логика обратная тому, что вам нужно. Чтобы не курочить схему на UNO нужно ее воспроизвести снаружи, т.е. поставить переключающий транзистор и стабилизатор снаружи и с него подать готовые 5В уже на пин +5В
когда приоритетное питание имеет более высокое напряжение, схему переключения можно сделать намного проще - из двух диодов шотки. В вашем случае это можно получить, если заменить батарею на 9В тремя батарейками на 1.5В, тогда можно использовать два диода
dieego, лёгкого пути решения вашей задачи думаю нет. Как уже вам сказал Максим приоритет у входа PWR in, а значит нужно питание перехватить ещё до того как оно попадёт на плату ардуино, иначе она будет питаться от батареи, пока та не сядет. Я тут было написал про компаратор, как вариант решения, но потом вспомнил, что и его на время коммутации нужно чем-то питать. Вобщем нужно отказаться от идеи основного питания от USB, тогда будет легко организовать схему резервирования питания от батареи.