He visto que Arduino le da prioridad a la alimentación a través del conector de alimentación externo antes que la alimentación que le llega por el puerto USB.
Para el proyecto que tengo en marcha, en funcionamiento normal el arduino va a estar siempre conectado al PC por el puerto USB y en el conector de alimentación tendré una batería de 9V que quiero que sólo se use en el caso de desconectar el arduino del PC.
Para ello tengo que cambiar la prioridad de la alimentación de arduino y me gustaría hacerlo preferiblemente sin modificar arduino o lo mínimo posible.
Se me había ocurrido coger los 5 voltios del conector usb y comandar con ellos un relé o un transistor que me interrumpa el cable que llevo desde la batería al arduino.
El problema es que hoy he estado haciendo unas comprobaciones rápidas y aunque desconecte el usb del PC sigo teniendo los 5 voltios en todo el arduino, incluido en el conector usb.
Gracias GO_zalo, eso tenía pensado hacer pero el problema es que me interesa utilizar el propio conector de la placa arduino.
Sabéis en que parte de la placa del arduino puedo tener 5V unicamente si estoy conectado con el usb al PC y 0V cuando lo alimento a través del conector Vin ??
Siempre la misma pregunta debo hacer.
Que arduino usas? porque no lo has dicho?
Suponiendo un UNO.
En este esquema se ve mejor
Puedes ver que el comparador (arriba) tiene un divisor resistivo a la mitad de la tensión de PWRIN que sabemos es como mínimo 7V y mira porque.
La mitad de 7V es 3.5 y entonces 3.5V es mayor a 3.3V y el comparador se va a 5V en su salida entonces el MOSFET canal P no conduce y el circuito queda alimentado con 5V y 3.3V alimentado de esos 5V externos.
Pero cuando se corta la alimentación externa el comparador va a 0, Vgs hace conducir el MOSFET y entonces se alimenta del USBVCC.
Bien para invertir esto no solo hay que hacer cortes en la entrada al divisor resistivo, la entrada y salida del mosfet, sino que el valor de comparación de 3.3V no sirve y habría que cambiar el divisor resistivo.
Yo haría lo que dice Go_zalo o armo una placa nueva con el diseño que tu pretendes porque de tus palabras deduzco que esto es un proyecto comercial (que no me interesa) pero ahi se justifica que armes algo en un PCB de acuerdo a tu necesidad y no modifiques lo que te va a quedar realmente muy mal estéticamente.
Perdón por no explicarlo todo. Se trata de un arduino uno y no es un proyecto comercial pero ya tengo la caja donde lo voy a meter y no tengo excesivo espacio para meter una placa adicional además no se si quedará muy frágil un conector usb soldado en una pequeña placa.
Muchas gracias surbyte por ese esquema así se ve mucho mejor.
¿Cuando alimentas arduino desde el PWRIN también salen los 5V por el conector USB hacía el PC? Me parece un poco raro esto.
Ya os enseñaré el resultado cuando esté todo acabado. Saludos.
galera:
¿Cuando alimentas arduino desde el PWRIN también salen los 5V por el conector USB hacía el PC? Me parece un poco raro esto.
No entendiste la explicación.
Cuando alimentas el arduino desde PWRIN, el comparador esta en HIGH o sea 5V y como es un MOSFET canal P este con conduce. Si no conduce no esta USBVCC alimentando nada.
He alimentado un Arduino UNO con una pila de 9V y en el conector USB he colocado un cable conectado a un polímetro. Como puedes ver en la siguiente foto, la tensión en conector USB es 5V.
La prioridad esta dada perfectamente en el diseño tal como lo explico Surbyte.
Si conectas el usb se alimenta de el. Si pones bateria y la tension es superior a la del usb entonces toma la tension de la bateria.
Simple y funciona a la perfeccion.
Si no quieres alimentarlo del usb arma un cable usb solo con d+ y d- sin alimentacion.
Quiere alimentar desde el USB siempre que este disponible, y sino desde la pila, a modo de seguridad supongo, la solucion es la que te he dicho, por que adems el consumo de la pila, estando en USB es 0, con otras soluciones la pila esta conectada al regulador, y este al divisor o al comparador o donde sea, gastando la pila poco a poco
No malinterpretes mi respuesta.
La solución esta planteada desde el post de Go_zalo, todo lo demás es darle vueltas a lo mismo.
Si armas una placa PCB nueva entonces puedes cambiar la prioridad de lo contrario usa la idea de GO_zalo y asunto terminado.
No es posible otra cosa.