Circuito de desconexión simple de bajo voltaje para Arduino

1

Prefacio:

  • Debajo de la impresión, se necesita un corte de bajo voltaje para evitar que la batería recargable AA NIMH 2x también se agote ahora y dañe. (¿cierto ??)
  • En la implementación, este circuito generalmente estará expuesto a un evento de descarga completa si está permitido.

Concepto:

  1. El interruptor momentáneo S1 se mantiene presionado, activando Q1 para encender 328p
  2. Empieza el boceto y Setup () llama a digitalWrite (A5, LOW)
  3. Ahora se puede liberar S1 ya que Q5 se mantiene BAJO por A5
  4. La batería se agota, lo que desencadena la detección de caída de tensión (BOD), 328p se reinicia y desconecta el Q1

Notas :

  • R1 es una rueda de resistencia y experimenté con diferentes valores para que funcione. (como no he hecho las matematicas)
  • Tengo este ensamblado en el tablero de pruebas, la radio y el módulo lcd no se muestran en la foto
  • Con A5 desconectado, funciona bien (mientras S1 se mantiene presionado), cuando está apagado a 0 ma en el amperímetro.
  • Con A5 conectado, puede funcionar con un valor más alto de R1 (47k) para evitar que se inicie, pero cuando está apagado, el amperímetro lee aproximadamente 2ma.

Este 2ma es todavía suficiente para drenar la batería significativamente si se deja en reposo durante algún tiempo. Supongo que el 2ma y la necesidad de un resistor de 47k están relacionados con lo que aparece como una fuga de A5 mientras el arduino está apagado.

He podido reducir el consumo de corriente de 2ma mientras estaba apagado al colocar una resistencia de extracción entre A5 y + V

Tengo espacio limitado, así que necesito mantener las cosas simples.

Feedback:

  • ¿Alguna mejora / sugerencia para solucionar el problema de A5?
  • ¿O generalmente satisface mis necesidades de diseño?

    
pregunta Hayden Thring

5 respuestas

3

Su diseño requiere que el pin A5 esté al mismo voltaje que la batería para apagar el sistema. El problema es que cuando se quita la energía del Arduino, el pin A5 ya no puede permanecer alto: hay diodos de protección interna que obligan a que su voltaje no sea más alto que V + más la caída del diodo (aproximadamente 0.7V).

La solución más sencilla es agregar un segundo transistor (NPN) que invierta la lógica del pin A5: cuando A5 está alto, el sistema está encendido, y la unidad A5 baja para apagarlo. Esto apaga ambos transistores y la corriente de reposo debe ser cero.

Además, debe considerar el uso de un MOSFET de canal P en lugar de su PNP BJT. Será más eficiente: menos caída de voltaje para el Arduino cuando está encendido, y no se desperdicia corriente a través del terminal de la compuerta.

simular este circuito : esquema creado usando CircuitLab

He usado un FET de canal N en lugar de un transistor NPN. El Arduino puede conducirlo directamente, y la única corriente "desperdiciada" es de 30 µA o por lo que fluye a través de R1 cuando el sistema está encendido.

    
respondido por el Dave Tweed
1

He leído varios foros sobre este tema, pero con mis componentes usé un enfoque diferente y creé un esquema general de Arduino que mide la tensión de la batería y la apago cuando alcanza el límite de baja tensión.

  • A0 mide el voltaje de la batería a través del divisor de voltaje 1: 1
  • D5 es alto y cuando el voltaje de la batería alcanza el límite de amante, el pin de Arduino va a LOW
  • 4N35 OPTOCOUPLER se usa para desacoplar el pin Arduino con la batería en estado apagado
  • El botón pulsador S1 se utiliza para iniciarlo
  • Utilicé el simple MOSFET de canal N 2N7000 ya que tengo menos de 100 mA. Si se requiere más corriente, usaría STP36NF06L o IRL2203.

    
respondido por el mihi
0

Si necesita un corte de bajo voltaje, tal vez un IC de detección de voltaje específico pueda ayudar. He visto el Microchip TC54 utilizado en aplicaciones similares. Es un dispositivo bastante pequeño para que no ocupe mucho espacio.

    
respondido por el BPowers
0

Intente configurar el pin A5 a alto-Z (tri-estado) cuando no lo esté usando.

aquí .

Tendrás que salir de los límites de las bibliotecas de Arduino para hacer eso, pero es muy simple y solo tiene dos líneas de código.

    
respondido por el sherrellbc
0

El problema con el primer circuito en la parte superior de la página es que el AtMega328 se está alimentando a través de su pin de E / S A5. La corriente pasa del positivo de la batería a través de la unión del emisor / base BC557 a través de R1 a A5. Desde A5, pasa internamente a través del ánodo / cátodo superior del diodo interno de protección superior al destino final de VCC. Cambie BC557 a un mosfet de canal P y el problema se solucionará, ya que no se pasa corriente entre la fuente y la puerta como ocurre con la unión de emisor / bajo.

    
respondido por el Jack

Lea otras preguntas en las etiquetas