Taula de continguts:
Vídeo: Petit monitor 12V: 4 passos
2025 Autora: John Day | [email protected]. Última modificació: 2025-01-12 07:25
Aquest instructiu és per a un petit monitor de bateria de cotxe que només dóna un indicador de llum de trànsit de la salut de la bateria mitjançant 3 LED.
En volia un que pogués deixar permanentment connectat i que tingués un corrent molt baix. La raó era que el meu cotxe havia estat inutilitzat durant un temps (11 setmanes - autoaïllament) i la bateria s’havia descarregat completament. Això és problemàtic al meu cotxe, ja que l’obertura normal de la porta depèn de la bateria. Vaig poder entrar a la porta del conductor mitjançant una tecla manual de còpia de seguretat, però després vaig haver d’arrossegar-me fins a la part posterior del cotxe, connectar una bateria de seguretat a la bateria de 12V per poder obrir la resta del cotxe i treure la bateria a tornar a carregar. Tot va anar bé, però no volia repetir l'exercici.
Així que vaig fer aquest petit monitor per avisar-me abans que tot s’acabés. També vaig establir que la bateria era d’uns 30 mA normalment amb tots els sistemes apagats. Crec que es tracta d’un sistema de vigilància i alarma de portes. No sona molt, però amb un llarg període d’inactivitat esgotarà la bateria. Així que tenia moltes ganes de no afegir massa a aquesta càrrega. Va acabar dibuixant uns 4mA de mitjana. Una gran part de l’estalvi d’energia es fa mitjançant el parpelleig del LED adequat durant un curt període de temps cada 5 segons
El monitor es basa en un mòdul Digispark ATTiny85, que és petit, econòmic i té una entrada ADC decent per controlar el voltatge i GPIO suficient per alimentar 3 LED.
Vaig fer servir la meva versió modificada per reduir encara més el digispark de corrent baix, però es podria utilitzar sense això si un està satisfet amb un corrent de 7 mA addicional. Això es descriu més a la descripció esquemàtica.
Pas 1: Eines i components
Eines
Soldador Fine Point
Components
- Digispark ATTiny85 (USB normal o micro USB
- tauler de prototipat de 6 x 7 forats
- Regulador de 3,3V xc6203E332
- 3 LEDs vermells, grocs, verds
- Resistències 3 x 47R, 1 x 10K, 1 x 33K
- Condensador 10uF
- Diodo Schottky
- Diodo Zener 7v5
- Connector de 3 pins
- Tancament: caixa impresa en 3D
www.thingiverse.com/thing:4458026
Pas 2: esquema
El circuit és molt senzill. El díode schottky (protecció contra la polaritat) i un zener alimenten el regulador de 3,3V de baix corrent per obtenir una potència estable de 3,3V a l’ATTiny.
Un divisor de potencial fa caure la bateria de 12V en 4.3: 1 per alimentar l’entrada ADC de l’ATTiny. El PB3 / ADC1 s’utilitza per evitar interferències dels components USB de la placa. Hi ha 3 LED connectats a PB0, PB1 i PB5 i utilitzen resistències 47R per limitar el corrent. El PB5 es torna a utilitzar per evitar qualsevol interacció en el funcionament USB. Això requereix que el PB5 no es fusioni programat per a l'operació de reinici. Això és normal per als digisparks reals, però no necessàriament per als clons, i per a aquests cal editar els fusibles (vegeu l'editor de fusibles)
Si voleu evitar la modificació del digispark per reduir-ne l’actual, només podeu utilitzar el regulador de 5V subministrat a bord. Això requereix algunes modificacions.
- Traieu el regulador xc6203 i el zener de 7v5 i introduïu el 12V directament a Vin al Digispark.
- Canvieu el divisor potencial per dir 18K: 10K
- Els nivells de llindar de tensió del programari s’hauran d’ajustar una mica. Consulteu la secció de programari.
Pas 3: construcció
Vaig compondre el circuit addicional en una placa de prototip de 6 x 7 que es pot asseure a la part superior del digispark amb els forats directament alineats amb el GPIO i els pins de tensió.
Això fa que sigui un mòdul molt compacte que pugui cabre en una caixa molt petita. Vaig utilitzar un connector de 3 pins a la caixa amb els 2 pins externs connectats a 0V i el centre a 12V. Això significa que la polaritat d’inserció del connector no té importància.
Pas 4: programari
El programari té la forma d’un esbós d’Arduino.
La font està disponible a
És molt senzill i té un bucle senzill que cada 5 segons mesura el voltatge mitjançant ADC1 i que parpelleja el LED adequat.
Els nivells que determinen els llindars estan establerts per la línia
int ledLevels [LED_COUNT] = {907, 888, -1};
Una lectura ADC superior al primer número parpelleja en verd. Una lectura ADC inferior a aquesta, però superior al segon parpelleja ambre. Qualsevol altra cosa parpelleja en vermell.
Per a mi, això donava verd> 12,4V, ambre> 12,1V, vermell <12,1V.
Podeu calibrar utilitzant una font de tensió variable i comprovant on es produeixen els canvis de LED. Aquests haurien de canviar si s’utilitza el regulador de 5V per defecte al Digispark.