Taula de continguts:
Vídeo: TinyLiDAR per a IoT: 3 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:15
Si mireu al vostre voltant, notareu que s’utilitzen molts petits dispositius intel·ligents a la vida quotidiana. Normalment funcionen amb bateria i normalment es connecten a Internet (també conegut com el "núvol") d'alguna manera. Aquests són tots els que anomenem dispositius "IoT" i s'estan convertint ràpidament en un lloc comú al món actual.
Per als enginyers de sistemes de IoT, es dedica molt a dissenyar l’optimització del consum d’energia. El motiu d’això es deu, per descomptat, a la capacitat limitada disponible a les bateries. Canviar les bateries en grans quantitats en zones remotes pot ser una proposta molt cara.
Per tant, aquest instructiu es tracta d’optimitzar la potència a tinyLiDAR.
TL; resum de DR
Disposem d’un nou mode de mesura “en temps real” (a partir del firmware 1.4.0) per ajudar a maximitzar el temps d’execució de la bateria als dispositius IoT.
Extreure més suc de les bateries
Intuïtivament, podem augmentar el temps d’execució simplement reduint el consum d’energia dels dispositius IoT. D'acord, així que és obvi. Però, com podeu fer-ho de manera eficaç i calcular adequadament el temps d’execució esperat? Anem a esbrinar…
Pas 1: energia pura
Hi ha moltes maneres de fer-ho, però preferim desglossar-lo en els conceptes bàsics i convertir-ho tot en energia. L’energia elèctrica es mesura en Joules (símbol J) i per definició:
Un Joule és l’energia dissipada com a calor quan un corrent elèctric d’un ampli passa per una resistència d’un ohm durant un període d’un segon.
Com que l’energia (E) també és tensió (V) x càrrega (Q), tenim:
E = V x Q
Q és actual (I) x temps (T):
Q = I x T
Per tant, l’energia en Joules es pot expressar com:
E = V x I x T
on V és el voltatge, I és el corrent en amplificadors i T és el temps en segons.
Suposem que tenim una bateria formada per quatre piles alcalines AA (LR6) connectades en sèrie. Això ens donarà un voltatge d’arrencada total de 4 * 1,5v = 6v. El final de vida útil d'una bateria alcalina AA és d'aproximadament 1,0 v, de manera que la tensió mitjana seria d'aproximadament 1,25 v. Segons el full de dades del fabricant, "la capacitat lliurada depèn de la càrrega aplicada, la temperatura de funcionament i la tensió de tall". Per tant, podem suposar aproximadament 2000 mAhr o millor per a una aplicació de baix consum, com ara un dispositiu IoT.
Per tant, podem calcular que tenim 4 cel·les x 1,25V per cel·la x 2000mAhr * 3600sec = 36000 J d’energia disponible d’aquest paquet de bateries abans de substituir-la.
Per tal de fer càlculs més senzills, també podem suposar que l’eficiència de conversió és del 100% per al nostre regulador del sistema i ignorar el consum d’energia del controlador amfitrió.
Una paraula sobre el ciclisme
No, no és el tipus en què condueixis! Hi ha un parell de conceptes tècnics coneguts com a "Power Cycling" i "Sleep Cycling". Tots dos es poden utilitzar per reduir el consum d'energia, però hi ha una diferència entre tots dos. El primer consisteix a apagar el dispositiu fins que sigui necessari i, després, a engegar-lo només durant un breu període de temps per realitzar una mesura, etc. quantitat de temps no trivial per arrencar una còpia de seguretat i cremar energia mentre ho feu.
El segon concepte consisteix a mantenir el dispositiu en mode de repòs amb l'esperança que es despertarà més ràpidament, però cremaràs una quantitat finita de corrent mentre dorm. Quin és el millor ús?
Depèn de la freqüència amb què us cal despertar.
Pas 2: executeu els números
Volem trobar l'energia total (E) normalitzada a 1 segon per a cada escenari que s'enumera a continuació.
Cas A: Tc = 1seg; fer una mesura de distància cada segon Cas B: Tc = 60sec; feu una mesura de distància cada minut. Cas C: Tc = 3600 seg; feu una mesura de distància cada hora.
Per fer-ho, podem dir que Tc és el temps de cicle per a les nostres mesures, tonificar el temps actiu i eliminar el temps inactiu i reordenar les nostres fórmules energètiques com es mostra aquí:
Per a tinyLiDAR, el temps d’inici és d’uns 300 ms o menys i durant aquest temps trigarà una mitjana de 12,25 mA mentre funciona amb un subministrament regulat de 2,8 v. Per tant, consumirà aproximadament 10,3 mJ d’energia per cada arrencada.
El corrent de repòs / repòs de tinyLiDAR és de 3uA ultra baix. Això és molt inferior a la taxa d’autodescàrrega mensual del 0,3% d’un paquet de bateries alcalines, de manera que aquí només investigarem l’ús del mètode “sleep cycling”.
Per què no prescindir del micro i anar directament al sensor VL53?
La resposta a això no és tan òbvia. Als primers dies del desenvolupament de telèfons intel·ligents, vam aprendre que mantenir viu el processador d’alta velocitat amb fam per poder reproduir mp3 era un mètode infal·lible per reduir la durada de la bateria. Fins aleshores vam fer tots els esforços possibles per utilitzar "processadors d'aplicacions" de menys potència per a tasques de perifèria com reproduir música. Avui no és molt diferent i, de fet, es podria dir que és encara més important ja que miniaturitzem tots aquests dispositius IoT amb cada vegada que disminueixen les capacitats de la bateria. Per tant, l’ús d’un processador d’aplicacions d’energia ultra baixa per a l’única tasca de controlar el sensor VL53 i proporcionar dades preparades per a un posterior processament és un bé definitiu per a qualsevol aplicació amb bateria.
Modes de mesura tinyLiDAR
Pot ser que no estigui clar al manual de l'usuari en aquest moment [però ho serà en algun moment, ja que sempre actualitzem el nostre manual d'usuari:)]: en realitat, hi ha 3 modes de mesura diferents a tinyLiDAR.
Mode MC
Des dels inicis de tinyLiDAR, estàvem obsessionats a intentar obtenir mesures més ràpides amb el sensor ToF VL53. Per tant, hem optimitzat el nostre microprogramari per obtenir-ne les dades de transmissió més ràpides i consistents. Això implicava introduir memòria intermèdia. Una mica de memòria intermèdia és bo, ja que permet al controlador d’amfitrió (és a dir, Arduino) obtenir les seves dades de mesura en un instant i passar a coses més importants. Per tant, la memòria intermèdia és absolutament necessària i, per això, aconseguim velocitats de transmissió superiors a 900Hz, fins i tot amb el relativament lent Arduino UNO. Per tant, el temps de resposta més ràpid serà en utilitzar el mode MC o el mode "continu" de tinyLiDAR.
BTW, si mai teniu oportunitat, hauríeu de connectar un cable sèrie al pin de sortida TTY de tinyLiDAR i veureu què fa aquest mode MC. Literalment pren una mesura el més ràpid possible i, en fer-ho, omple el seu buffer I2C amb les dades més recents absolutes. Malauradament, com que funciona a tota velocitat, també està cremant la quantitat màxima d'energia. Vegeu a continuació el gràfic actual vs temps d’aquest mode MC.
Mode SS
El següent mode és el que anomenem "SS" per al mode "pas únic". Aquest és bàsicament el mateix mode d'alt rendiment anterior, però en un sol bucle de pas. Per tant, podeu obtenir respostes ràpides de tinyLiDAR, però les dades seran de la mostra anterior, de manera que haureu de prendre dues mesures per obtenir les dades més recents. Vegeu a continuació el gràfic actual vs temps d’aquest mode SS.
Els dos modes anteriors s’adapten molt bé a la factura per a la majoria d’usuaris, ja que eren ràpids i fàcils d’utilitzar; només heu d’emetre una ordre "D" i llegir els resultats. Malgrat això …
Avançant cap al món de l’IoT, on cada mili-Joule compta, tenim un nou paradigma.
I és exactament el contrari del que hem codificat a tinyLiDAR. Per al món de l’IoT necessitem mesures individuals a intervals poc freqüents per tal de conservar l’energia i ampliar el temps d’execució.
Mode RT
Afortunadament, ara podem dir que tenim una solució per a aquest escenari a partir del firmware 1.4.0. S'anomena mode "RT" per a mesures "en temps real". I bàsicament implementa un mètode d'activació, espera i lectura. Per utilitzar-lo, només podeu emetre l'ordre "D" per iniciar la mesura, però per a aquest mode RT heu d'esperar un temps adequat perquè acabi la mesura i després llegir els resultats. tinyLiDAR passa automàticament al seu estat de repòs més baix de sub 3uA entre mostres. En realitat, encara és senzill d’utilitzar i encara és més eficient energèticament, ja que només cal fer una mesura en lloc de dues per obtenir les dades més recents, és a dir, un buffer zero.
Vegeu a continuació el gràfic actual vs temps d’aquest nou mode RT.
Pas 3: Mesures reals
L’ús del mode continu MC per a mesures poc freqüents de l’IoT té poc sentit, ja que només necessitem mesures individuals. Per tant, podem centrar la nostra atenció en els modes SS i RT. El funcionament de tinyLiDAR a partir d’un subministrament regulat de + 2,8v ens proporciona la menor dissipació d’energia. Per tant, en utilitzar els preajustats d’alta precisió (200 ms), vam mesurar el següent consum d’energia a tinyLiDAR:
Mode SS / pas únic: 31,2 mJ de mitjana en 2 mesures
RT / mode en temps real: 15,5 mJ de mitjana en una mesura
Connectant aquests valors anteriors a la nostra fórmula energètica i normalitzant-nos a un segon, podem trobar les expectatives d’execució assumint que l’energia de la nostra bateria és de 36000 J.
Cas A: lectura cada segon (feu 2 lectures per obtenir les darreres dades) Tc = 1secTon = 210ms per lectura x 2 lectures Toff = Tc - Ton = 580msIon (mitjana) = 26,5mA per lectura Ioff (mitjana) = 3uA corrent en repòs Vcc = Tensió d’alimentació de 2,8 V L’energia activa consumida per la càrrega en Joules és Eon = Vcc x Ió x Ton = 2,8 V x 26,5mA * 420ms = 31,164 mJ L’energia inactiva consumida per la càrrega en Joules és Eoff = Vcc x Ioff x Toff = 2,8V x 3uA x 580ms = 4.872uJ Normalització a TcE = (Eon + Eoff) / Tc = (31.164mJ + 4.872uJ) / 1 = 31.169mJ o 31.2mJ per segon El temps d'execució en segons és, per tant, l'energia total de la font / energia consumida que és 36000J / 31,2 mJ = 1155000 segons = 320 hores = 13,3 dies
Repetint aquests càlculs, podem trobar els temps d’execució dels altres escenaris:
Mode SS
Cas A: 2 lectures per segon. L’energia normalitzada és de 31,2 mJ. Per tant, el temps d'execució és de 13,3 dies.
Cas B: 2 lectures per minut. L’energia normalitzada és de 528uJ. Per tant, el temps d'execució és de 2,1 anys.
Cas C: 2 lectures per hora. L’energia normalitzada és de 17uJ. El temps d'execució es calcula en >> 10 anys, de manera que la càrrega a causa de tinyLiDAR és insignificant. Per tant, la bateria només estarà limitada per la seva vida útil (és a dir, aproximadament 5 anys)
Mode RT
Cas A: 1 lectura per segon. L’energia normalitzada és de 15,5 mJ. Per tant, el temps d'execució és de 26,8 dies.
Cas B: 1 lectura per minut. L’energia normalitzada és 267uJ. Per tant, el temps d'execució és de 4,3 anys.
Cas C: 1 lectura per hora. L’energia normalitzada és de 12,7 uJ. El temps d'execució es calcula en >> 10 anys, de manera que la càrrega a causa de tinyLiDAR és insignificant. Per tant, la bateria només estarà limitada per la seva vida útil (és a dir, aproximadament 5 anys)
Per tant, el nou mode en temps real que utilitza el ciclisme de son és un avantatge aquí per ampliar el temps d’execució dels darrers 4 anys si es pren una mesura cada minut, tal com es mostra al cas B.
Tingueu en compte que el consum d'energia del controlador amfitrió no es va tenir en compte per a aquesta anàlisi i que les especificacions de la bateria eren del costat conservador. Podeu trobar bateries molt més potents segons desitgeu, segons les vostres necessitats.
Gràcies per llegir i estigueu atents, ja que proporcionarem un exemple d’IoT que funciona amb tinyLiDAR per a la nostra propera instrucció. Ànims!
Recomanat:
Flipperkonsole per a consola Flipper / Pinball per a PC Pinballs per a PC: 9 passos
Flipperkonsole for PC Flipper / Pinball Console for PC Pinballs: Das istine your USB basi Spielkonsole for PC-Flipperkästen. Die Spannungsversorgung erfolgt über das USB Kabel. S'implementen els botons Flipper i el botó d'inici. Zusätzlich ist ein stossen von unten, von links und von rechts implem
Easy IOT - Hub de sensor de RF controlat per aplicació per a dispositius IOT de rang mitjà: 4 passos
Easy IOT - Hub de sensor de RF controlat per aplicació per a dispositius IOT de rang mitjà: en aquesta sèrie de tutorials, crearem una xarxa de dispositius que es poden controlar a través d’un enllaç de ràdio des d’un dispositiu de concentrador central. L’avantatge d’utilitzar una connexió de ràdio en sèrie de 433 MHz en lloc de WIFI o Bluetooth és l’abast molt més gran (amb un bon
CircuitPython i TinyLiDAR: exemple senzill: 3 passos
CircuitPython i TinyLiDAR: exemple senzill: MicroElectronicDesign tinyLiDAR és un mòdul d’interval de temps de vol (ToF) basat en ST VL53L0X amb una connexió de bus i2c. Les plaques de microcontroladors Adafruit es connecten fàcilment a aquest sensor, ja que poden parlar el protocol i2c a través del seu pin de dades
Suport per a corretges per a portàtils: per a sofà o llit: 5 passos
Suport per a corretges per a portàtils: per a sofà o llit: això és el que he fet després de mesos esforçant-me el coll mentre mirava el portàtil quan estava assegut al sofà. Realment només funciona si t’asseus com jo quan estic al sofà, caigut enrere amb els peus recolzats a la taula de cafè .. Però, també és h
Comandament de vídeo per a nens petits per a reproductor de vídeo per a PC: 6 passos
Comandament de vídeo per a nens petits per a reproductor de vídeo per a PC: construeixo un comandament a distància que es connecta a un PC amb USB. El gran comandament a distància permet al meu nen petit seleccionar i reproduir vídeos en un equip antic. Aquest és un projecte relativament senzill. El component principal és un teclat USB o un teclat USB sense fils. Llavors