Taula de continguts:

IOT amb bateria: 7 passos
IOT amb bateria: 7 passos

Vídeo: IOT amb bateria: 7 passos

Vídeo: IOT amb bateria: 7 passos
Vídeo: Цепь индикатора низкого и полного заряда литиевой батареи 3,7 В 2024, De novembre
Anonim
IOT amb bateria
IOT amb bateria

Si el vostre projecte IOT amb bateria funciona de manera intermitent, aquest circuit només fa servir 250 nA (és a dir, 0,00000025 amperes) quan està inactiu. Normalment, la major part de la bateria es malgasta entre l’activitat. Per exemple, un projecte que funciona 30 segons cada 10 minuts malgasta el 95% de la capacitat de la bateria.

La majoria dels microcontroladors tenen un mode d’espera de baixa potència, però encara necessiten energia per mantenir el processador viu, també els perifèrics consumiran energia. Es necessita molt d’esforç per aconseguir una intensitat d’espera inferior a 20-30mA. Aquest projecte es va desenvolupar per informar de la temperatura i la humitat dels ruscs d'abelles. Gràcies a la ubicació remota de la bateria i al blindatge de les cel·les per informar de dades on només es pot triar.

Aquest circuit funcionarà amb qualsevol controlador i potència de 12, 5 o 3V. La majoria de les botigues d’electrònica tindran els components que només costen uns quants dòlars.

Subministraments

Resistències: 2x1K, 3x10K, 1x470K, 2x1M, 5x10M

Diodes: 2x1N4148, 1xLED

MOSFET: 3x2N7000

Rellotge: PCF8563 o equivqlent per a microcontrolador

Relleu: EC2-12TNU per a subministrament de 12V

EC2-5TNU per a 5V

EC2-3TNU per a 3V

Alimentació: convertidor OKI-78SR-5 / 1.5-W36-C de 12V a 5V o segons el microcontrolador ho requereixi

Commutador: premeu momentàniament per restablir, SPDT per provar

Pas 1: Com funciona el circuit

Com funciona el circuit
Com funciona el circuit

El circuit és força senzill:

- Una alarma de bateria s’activa i llença un interruptor

- L’energia flueix des de la bateria fins al controlador que s’inicia i fa tot el possible

-El controlador restableix l'alarma

- A continuació, desactiva l'interruptor.

Pas 2: el rellotge

El rellotge
El rellotge

La majoria dels rellotges en temps real haurien de funcionar sempre que siguin compatibles amb el controlador i tinguin una línia d’interrupció (Int) que indiqui quan sona l’alarma.

Segons el controlador i el rellotge en particular, haureu d’instal·lar una biblioteca de programari.

SI US PLAU, configureu el controlador i el rellotge en un tauler prototip i assegureu-vos que podeu programar-lo per configurar l’hora, quan s’ha de produir la següent interrupció i com esborrar una interrupció després que l’alarma hagi saltat. És molt més fàcil aconseguir que això funcioni ara abans de construir el tauler final. Consulteu l'últim pas per obtenir notes sobre la programació.

Pas 3: el commutador

El canvi
El canvi

Per al commutador fem servir un relé de bloqueig amb 2 bobines.

En posar un corrent a través de la bobina configurada, s’activa el relé. El corrent només ha de fluir durant uns 12 ms i després es pot apagar deixant el relé activat.

Feu un pols similar a través de la bobina de reinici per apagar el relé.

Volem un relé de bloqueig per no utilitzar la bateria per mantenir el relé tancat. A més, encenem el relé d’aquest circuit i l’apagem del controlador quan hagi acabat.

El projecte es va construir per a una bateria SLA de 12V. Aquests són econòmics (zero, ja que ja en tenia un) i funcionaran bé a l’hivern canadenc amb un petit carregador solar.

El circuit es podria construir amb un relé de 3V mitjançant un parell de bateries AA. Com que el relé manejarà 2A a la tensió de la xarxa, podria canviar una petita unitat de potència de paret (o un segon relé de capacitat més gran) per a equips alimentats per la xarxa. Assegureu-vos que tot el que sigui superior a 12V estigui en una caixa ben connectada a terra i ben aïllada.

Pas 4: MOSFET 2N7000

MOSFET 2N7000
MOSFET 2N7000

Aquest circuit utilitza 3 MOSFET de canal N de mode millorat 2N7000 (transistor d'efecte de camp de semiconductor d'òxid de metall) que s'utilitzen com a commutadors.

Amb només un parell de dòlars, es tracta d’aparells força remarcables. Els fluxos de corrent entre Drain (+) i font (-) quan els voltatges de la porta superen els 2V. Quan està "activat", la resistència Source-Drain és aproximadament un ohm. Quan surt molts megohmes. Es tracta de dispositius capacitius, de manera que el corrent de la porta és suficient per "carregar" el dispositiu.

Es necessita una resistència entre la porta i la font per permetre que la porta es descarregui quan la tensió de la porta és baixa, en cas contrari el dispositiu no s'apagarà.

Pas 5: el circuit

El Circuit
El Circuit

La línia d’interrupció del rellotge (INT) normalment flota i es connecta (dins del rellotge) a terra quan sona l’alarma. La resistència de 1 M fa que aquesta línia s’elevi en esperar l’alarma.

U1 actua com un inversor, ja que necessitem un màxim actiu per activar el relé quan s’activa l’alarma. El contrari de la sortida del rellotge. Això vol dir que U1 sempre funciona en espera i fa un consum constant de la bateria. Afortunadament, podem utilitzar una resistència R1 molt gran per limitar aquest corrent. Les simulacions van demostrar que podrien arribar a ser diversos Gohms. La meva botiga local només tenia resistències de 10 milions, de manera que en vaig fer servir 5 de sèrie. 250na és prou baix al meu llibre.

U2 és un senzill interruptor per alimentar la bobina configurada del relé.

Els 2 díodes són necessaris per protegir el circuit quan s’apaga l’alimentació de les bobines del relé. El camp magnètic col·lapsarà i induirà un pic actual que podria danyar alguna cosa.

El 12V brut de la bateria es porta a un divisor de tensió R6 i R7. El punt central va a un dels pins analògics del controlador de manera que es pot controlar i informar de la tensió de la bateria.

U4 és un convertidor de CC a CC altament eficient per produir 5V per al controlador.

Quan el controlador ha acabat, augmenta la línia Poff que activa l'U3 que apaga el relé. La resistència R4 proporciona un camí de terra per a la porta d'U3. El MOSFET és un dispositiu capacitiu i R4 permet que la càrrega flueixi a terra perquè l’interruptor es pugui apagar.

L’interruptor de prova dirigeix l’alimentació cap al microcontrolador i cap a un LED. Això és útil per provar aquest circuit, però és crucial quan el controlador està connectat a un ordinador per programar i provar el codi. Ho sento, però no he provat amb energia de 2 fonts.

El botó de reinicialització va ser una necessitat posterior. Sense ella no hi ha manera de configurar l'alarma la primera vegada que s'encén el sistema !!!

Pas 6: simulació de circuits

Simulació de circuits
Simulació de circuits
Simulació de circuits
Simulació de circuits

La simulació de l'esquerra mostra valors mentre el sistema està inactiu. A la dreta hi ha una simulació quan l'alarma està activa i la línia d'interrupció es baixa.

Les tensions reals van coincidir raonablement bé amb la simulació, però no tinc manera de confirmar el consum real actual.

Pas 7: construcció i programació

Construcció i programació
Construcció i programació

El circuit es va construir en una tira estreta per seguir aproximadament el diagrama del circuit. Res complicat.

Tan bon punt s'iniciï el programa, s'hauria de reiniciar l'alarma. Això aturarà el flux de corrent a través de la bobina configurada del relé. El programa pot fer tot el possible i, al finalitzar-lo, configureu l'alarma i desactiveu-lo tot posant Poff a l'alça.

Segons el controlador i el rellotge en particular, haureu d’instal·lar una biblioteca de programari. Aquesta biblioteca inclourà codi de mostra.

Cal provar la interfície i la programació del rellotge en una placa prototip abans de connectar el circuit. Per al rellotge Arduino i H2-8563, SCL passa a A5 i SDA a A4. La interrupció passa a la INT que es mostra al circuit.

Per a l'Arduino, el codi de prova inclourà alguna cosa així:

#incloure

#include Rtc_Pcf8563 rtc;

rtc.initClock ();

// defineix la data i l’hora per començar. No cal si només voleu alarmes a l’hora o al minut. rtc.setDate (dia, dia de la setmana, mes, segle, any); rtc.setTime (hr, min, seg);

// Establir alarma

rtc.setAlarm (mm, hh, 99, 99); // Min, hora, dia, dia de la setmana, 99 = ignora

// Esborra l'alarma rtc.clearAlarm (); }

Recomanat: