Kazalo:
Video: TinyLiDAR za IoT: 3 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:07
Če pogledate naokoli, boste opazili, da se v vsakdanjem življenju uporablja veliko pametnih malih naprav. Običajno delujejo na baterije in so običajno nekako povezani z internetom (znan tudi kot "oblak"). To so vse naprave, ki jim pravimo "IoT" in danes hitro postajajo običajno mesto v svetu.
Za sistemske inženirje IoT je veliko oblikovalskega napora porabljenega za optimizacijo porabe energije. Razlog za to je seveda omejena zmogljivost baterij. Menjava velikih količin baterij na oddaljenih območjih je lahko zelo draga ponudba.
Tako ta navodila vsebujejo optimizacijo moči v tinyLiDAR -u.
TL; povzetek DR
Imamo nov način merjenja »Real Time« (od vdelane programske opreme 1.4.0), ki pomaga povečati čas delovanja baterije v napravah IoT.
Iz baterij iztisnite več soka
Intuitivno lahko podaljšamo čas delovanja tako, da preprosto zmanjšamo porabo energije naprav IoT. V redu, to je očitno! Kako pa lahko to storite učinkovito in pravilno izračunate pričakovani čas delovanja? Pa ugotovimo…
1. korak: Čista energija
Obstaja veliko načinov za to, vendar raje razčlenimo na osnove in vse pretvorimo v energijo. Električna energija se meri v džulih (simbol J) in po definiciji:
Joule je energija, ki se razprši kot toplota, ko električni tok enega amp prehaja skozi upor enega ohma za obdobje ene sekunde.
Ker je energija (E) tudi napetost (V) x naboj (Q), imamo:
E = V x Q
Q je tok (I) x čas (T):
Q = I x T
Tako lahko energijo v džulih izrazimo kot:
E = V x I x T
kjer je V napetost, I je tok v amperih in T čas v sekundah.
Predpostavimo, da imamo baterijo, sestavljeno iz štirih alkalnih baterij AA (LR6), povezanih zaporedno. To nam bo dalo skupno začetno napetost 4*1,5v = 6v. Življenjska doba alkalne baterije AA je približno 1,0 V, zato bi bila povprečna napetost približno 1,25 V. Po podatkovnem listu mfr "Dostavljena zmogljivost je odvisna od uporabljene obremenitve, delovne temperature in prekinitvene napetosti." Tako lahko za aplikacijo z nizko porabo, na primer napravo IoT, predpostavimo približno 2000 mAhr ali bolje.
Zato lahko izračunamo, da imamo 4 baterije x 1,25 V na celico x 2000 mAhr * 3600 sek = 36000 J energije, ki je na voljo iz te baterije, preden jo je treba zamenjati.
Zaradi poenostavljenih izračunov lahko tudi predpostavimo, da je učinkovitost pretvorbe 100% za naš sistemski regulator in ne upoštevamo porabe energije gostiteljskega krmilnika.
Beseda o kolesarjenju
Ne, ne tip, na katerem jahaš! Obstaja nekaj tehničnih konceptov, znanih kot "Power Cycling" in "Sleep Cycling". Oboje je mogoče uporabiti za zmanjšanje porabe energije, vendar je razlika med njima. Prva vključuje izklop naprave, dokler ni potrebna, nato pa jo za kratek čas vklopite za izvedbo meritve itd. Čeprav je ta metoda zaradi svojega ničelnega toka mikavna za uporabo, obstaja pomanjkljivost, pri kateri bo trajalo nekaj nespremenljiv čas, da se pri tem znova zažene in porabi energija.
Drugi koncept vključuje le ohranjanje naprave v načinu mirovanja z upanjem, da se bo hitreje prebudila, vendar boste med spanjem porabili določeno količino toka. Kaj je torej najbolje uporabiti?
Odvisno od tega, kako pogosto se morate zbuditi.
Korak: Zaženite številke
Želimo najti skupno energijo (E), normalizirano na 1 sekundo za vsak spodaj naveden scener.
Primer A: Tc = 1 sekunda; merite razdaljo vsako sekundo Primer B: Tc = 60sec; merite razdaljo vsako minuto. Primer C: Tc = 3600sek; merite razdaljo vsako uro.
Če želite to narediti, lahko rečemo, da je Tc čas cikla za naše meritve, ton aktivnega časa in izklop časa neaktivnosti ter preuredimo naše formule energije, kot je prikazano tukaj:
Za tinyLiDAR je čas zagona približno 300 ms ali manj, v tem času pa bo v povprečju porabil 12,25 mA, medtem ko bo deloval iz reguliranega napajanja 2,8 V. Zato bo za vsak zagon porabil približno 10,3 mJ energije.
Tok spanja/mirovanja za tinyLiDAR je izredno nizek 3uA. To je veliko nižje od 0,3-odstotne mesečne stopnje samopraznjenja alkalne baterije, zato bomo tukaj raziskali samo z metodo "cikličnega spanja".
Zakaj ne bi opustili mikro in šli neposredno do senzorja VL53?
Odgovor na to ni tako očiten. V prvih dneh razvoja pametnih telefonov smo izvedeli, da je ohranjanje energijsko lačnega hitrega procesorja pri življenju za predvajanje mp3 -jev zanesljiva metoda za skrajšanje življenjske dobe baterije. Že takrat smo si po najboljših močeh prizadevali uporabiti "procesorje aplikacij" z manjšo močjo za periferne naloge, kot je predvajanje glasbe. Danes ni veliko drugače in pravzaprav bi lahko rekli, da je še pomembnejši, saj vse te IoT naprave miniaturiziramo z vsakim zmanjšanjem zmogljivosti baterije. Zato je uporaba aplikacijskega procesorja z zelo nizko porabo energije za edino nalogo nadzora senzorja VL53 in zagotavljanja podatkov, pripravljenih za nadaljnjo obdelavo, nedvomno prednost za vsako aplikacijo, ki se napaja z baterijo.
Načini merjenja tinyLiDAR
V uporabniškem priročniku trenutno morda ni jasno [vendar bo nekoč, saj vedno posodabljamo naš uporabniški priročnik:)] - v smallLiDAR -u dejansko obstajajo 3 različni načini merjenja.
MC način
Od začetka tinyLiDAR -a smo bili obsedeni, da bi poskušali hitrejše meritve iz senzorja VL53 ToF. Zato smo optimizirali svojo vdelano programsko opremo, da iz nje dobimo najhitrejše in najbolj dosledne pretočne podatke. To je vključevalo uvedbo medpomnjenja. Majhen vmesni pomnilnik je dobra stvar, saj gostiteljskemu krmilniku (tj. Arduinu) bliskovito pridobi podatke o meritvah in preide na pomembnejše stvari. Zato je medpomnjenje nujno potrebno in zaradi tega lahko dosežemo hitrosti pretakanja več kot 900Hz tudi na relativno počasnem Arduino UNO. Zato bo najhitrejši odzivni čas pri uporabi tinyLiDAR -jevega MC ali "neprekinjenega" načina.
BTW, če boste kdaj imeli priložnost, priključite serijski kabel na izhodni pin TTY na tinyLiDAR in videli boste, kaj počne ta način MC. Meritev dobesedno poteka čim hitreje in pri tem zapolni svoj medpomnilnik I2C z absolutno najnovejšimi podatki. Na žalost, ker deluje s polno hitrostjo, porabi tudi največjo moč. Spodaj si oglejte trenutni in časovni graf tega načina MC.
Način SS
Naslednji način je tisto, kar imenujemo "SS" za način "v enem koraku". To je v bistvu enak visokozmogljiv način zgoraj, vendar namesto tega v eni sami koračni zanki. Tako lahko dobite hitre odzive iz tinyLiDAR -a, vendar bodo podatki iz prejšnjega vzorca, zato boste morali za najnovejše podatke opraviti dve meritvi. Spodaj si oglejte trenutni in časovni graf tega načina SS.
Oba zgornja načina sta se za večino uporabnikov lepo prilagodila, saj sta bila hitra in enostavna za uporabo - samo izdajte ukaz "D" in preberite rezultate. Vendar…
Če se premaknemo naprej v svet IoT, kjer šteje vsak mili-Joule, imamo novo paradigmo.
In je ravno nasprotno od tega, kar smo kodirali v tinyLiDAR! Za svet interneta stvari potrebujemo enkratne meritve v redkih časovnih presledkih, da ohranimo moč in podaljšamo čas delovanja.
Način RT
Na srečo lahko zdaj rečemo, da imamo rešitev za ta scenarij od vdelane programske opreme 1.4.0. Imenuje se način "RT" za meritve "v realnem času". In v bistvu izvaja metodo sprožilca, čakanja in branja. Če ga želite uporabiti, lahko še vedno preprosto izdate ukaz "D", da začnete merjenje, vendar morate za ta način RT počakati ustrezno količino časa, da se meritev konča, in nato prebrati rezultate. tinyLiDAR samodejno preide v najnižje stanje mirovanja sub 3uA med vzorci. Pravzaprav je še vedno enostaven za uporabo in še bolj energetsko učinkovit, saj morate za najnovejše podatke opraviti le eno meritev namesto dveh, to je ničelno medpomnjenje.
Spodaj si oglejte grafikon trenutnega v primerjavi s tem novim načinom RT.
3. korak: Dejanske meritve
Uporaba neprekinjenega načina MC za redke meritve IoT nima smisla, saj potrebujemo le posamezne meritve. Namesto tega se lahko osredotočimo na načine SS in RT. Delovanje tinyLiDAR iz reguliranega napajanja +2,8 V nam zagotavlja najnižjo porabo energije. Tako smo z uporabo prednastavitev visoke natančnosti (200 ms) izmerili naslednjo porabo energije na tinyLiDAR:
SS/enostopenjski način: povprečno 31,2 mJ pri 2 meritvah
RT/način v realnem času: 15,5 mJ povprečno za 1 meritev
Če te zgornje vrednosti vstavimo v našo energetsko formulo in normaliziramo na eno sekundo, lahko pričakujemo pričakovana obdobja delovanja ob predpostavki, da je energija iz naše baterije 36000 J.
Primer A: branje vsako sekundo (2 odčitka za najnovejše podatke) Tc = 1secTon = 210ms na branje x 2 odčitka Toff = Tc - Ton = 580msIon (avg) = 26,5mA na branje Ioff (avg) = 3uA tok mirovanja Vcc = 2.8V napajalna napetost Aktivna energija, ki jo porabi obremenitev v džulih, je Eon = Vcc x Ion x Ton = 2.8V x 26.5mA * 420ms = 31.164mJ Neaktivna energija, ki jo porabi obremenitev v Joulih, je Eoff = Vcc x Ioff x Toff = 2.8V x 3uA x 580ms = 4,872uJ Normalizacija na TcE = (Eon + Eoff)/Tc = (31,164mJ + 4,872uJ)/1 = 31,169mJ ali 31,2mJ na sekundo. / 31,2 mJ = 1155000 sekund = 320 ur = 13,3 dni
Če ponovimo te izračune, lahko najdemo čas delovanja za druge scenarije:
Način SS
Primer A: 2 odčitka na sekundo. Normalizirana energija je 31,2 mJ. Zato je čas delovanja 13,3 dni.
Primer B: 2 odčitka na minuto. Normalizirana energija je 528uJ. Zato je čas delovanja 2,1 leta.
Primer C: 2 odčitka na uro. Normalizirana energija je 17uJ. Čas delovanja je izračunan na >> 10 let, zato je obremenitev zaradi tinyLiDAR zanemarljiva. Baterija bo zato omejena le z rokom uporabnosti (tj. Približno 5 let)
Način RT
Primer A: 1 branje na sekundo. Normalizirana energija je 15,5 mJ. Zato je čas delovanja 26,8 dni.
Primer B: 1 branje na minuto. Normalizirana energija je 267uJ. Zato je čas delovanja 4,3 leta.
Primer C: 1 branje na uro. Normalizirana energija je 12,7uJ. Čas delovanja je izračunan na >> 10 let, zato je obremenitev zaradi tinyLiDAR zanemarljiva. Baterija bo zato omejena le z rokom uporabnosti (tj. Približno 5 let)
Zato je nov način v realnem času s kolesarjenjem v spanju v prid podaljšanja časa delovanja v zadnjih 4 letih, če se vsako minuto izvede ena meritev, kot je prikazano v primeru B.
Upoštevajte, da poraba energije gostiteljskega krmilnika pri tej analizi ni bila upoštevana, specifikacije baterij pa so bile konzervativne. Po želji lahko najdete veliko zmogljivejše baterije, ki ustrezajo vašim potrebam.
Hvala za branje in spremljajte nas, saj bomo za naš naslednji pouk podali delujoč primer IoT z uporabo tinyLiDAR. Na zdravje!
Priporočena:
Easy IOT - pesto RF senzorja, ki ga nadzoruje aplikacija, za naprave IOT srednjega dosega: 4 koraki
Easy IOT - zvezdišče RF -senzorja, ki ga nadzoruje aplikacija, za naprave IOT srednjega dosega: V tej seriji vadnic bomo zgradili mrežo naprav, ki jih je mogoče upravljati prek radijske povezave iz centralnega vozlišča. Prednost uporabe serijske radijske povezave 433MHz namesto WIFI ali Bluetooth je veliko večji doseg (z dobrim
CircuitPython in TinyLiDAR: Preprost primer: 3 koraki
CircuitPython in TinyLiDAR: Preprost primer: MicroElectronicDesign tinyLiDAR je modul za merjenje časa letenja (ToF), ki temelji na ST VL53L0X, s povezavo z vodilom i2c. Plošče mikrokrmilnika Adafruit so enostavno povezane s tem senzorjem, saj lahko govorijo protokol i2c prek svojega podatkovnega zatiča
TinyLiDAR v vaši garaži!: 10 korakov
TinyLiDAR v vaši garaži!: Projekt odpiranja garažnih vrat za WiFi DIY Svet IoT šele začenja eksplodirati - vsako tehnološko podjetje po vsem svetu poskuša ugotoviti, kako se bodo prilegali temu novemu svetu. To je tako velika priložnost! Zato sem za to navodilo
Ali lahko uporabljam TinyLiDAR v Scratch?: 3 koraki
Ali lahko uporabljam TinyLiDAR v … Scratch?: Vsake toliko časa dobimo zahteve za vprašanje, ali bo tinyLiDAR deloval na njihovi računalniški platformi. Čeprav je bil tinyLiDAR zasnovan kot enostaven za uporabo senzor LiDAR za Arduino UNO, ga nič ne ovira pri uporabi na drugih platformah
TinyLiDAR na Pi?: 9 korakov (s slikami)
TinyLiDAR na Pi?: Pozdravljeni! No, zdaj, ko ste preživeli nekaj kakovostnega časa z tinyLiDAR -om in vašim Arduinom - vaš Raspberry Pi se morda počuti nekoliko osamljeno;) Pi ima vrata I2C, kajne? Zakaj ga torej ne bi priklopili in preizkusili tam ?! Dober načrt, če pa ste že