Se pune din ce în ce mai mult accent pe înțelegerea profilului de consum de putere al unui proiect embedded. De exemplu, este posibil ca senzorii IoT/IIoT să trebuiască să opereze fiind alimentați de la baterii timp de ani de zile, astfel încât este esențial să se știe cât timp un dispozitiv poate sta în repaus, dar să poată răspunde rapid la o întrerupere.
Acest articol investighează cererile de energie ale unui dispozitiv wireless tipic și provocările cu care se confruntă inginerii atunci când măsoară consumul și prevăd cu exactitate durata de viață a bateriei.
Câtă putere utilizează sistemul meu embedded?
Pe măsură ce IoT/IIoT își extind raza de acțiune, atât în ceea ce privește diversitatea aplicațiilor, cât și implementarea în locații îndepărtate, utilizarea bateriilor pentru alimentarea dispozitivelor periferice a devenit o regulă. Din punct de vedere ingineresc, utilizarea unei baterii este o metodă comodă pentru alimentarea unui sistem. Cu toate acestea, provocarea constă în a determina cât din capacitatea bateriei este necesară pentru a alimenta dispozitivul pentru o anumită durată. Bateriile tip monedă oferă suficientă energie pentru a alimenta un senzor cu consum foarte redus de putere timp de mai mulți ani; însă, în cele din urmă, acestea vor trebui înlocuite. Costurile cu forța de muncă și de deplasare sunt disproporționate față de costul bateriei, iar gestionarea a sute de dispozitive devine nesustenabilă. Utilizarea unei baterii reîncărcabile și a tehnicilor de recoltare a energiei, cum ar fi un panou fotovoltaic solar, ajută considerabil, dar afectează dimensiunea fizică a dispozitivului.
Înțelegerea profilului de consum de putere al dispozitivului devine un parametru critic pentru a prezice durata de viață a bateriei și cerințele de capacitate. Profilul este o măsură dinamică, cu vârfuri și minime de putere, mai degrabă decât o simplă citire a unui parametru. Chimia anumitor baterii le face mai puțin capabile decât altele să se redreseze rapid în cazul unor solicitări de vârfuri de putere, astfel încât este esențial să aflăm ce cauzează aceste vârfuri.
Odată ce se identifică cauza vârfurilor de putere și a curentului de repaus, măsurile de reducere a acestora includ tehnici software, cum ar fi trecerea microcontrolerului în modul de repaus și modificarea planificării sarcinilor.
Măsurarea consumului de energie al unui proiect embedded
Dacă încercați să măsurați un senzor wireless IIoT în timpul operării cu un multimetru digital, veți obține un consum mediu de curent, dar nu veți obține o imagine exactă. Consultați fișa tehnică a unui microcontroler wireless obișnuit cu consum redus de putere pe care l-ați putea găsi într-un dispozitiv IoT pentru a avea o idee despre intervalele de curent implicate. Având în componență două blocuri funcționale majore, microcontrolerul în sine și transceiverul wireless, majoritatea furnizorilor oferă posibilitatea de a dezactiva funcțiile radio separat de microcontroler. Să luăm ca exemplu SoC-ul wireless Bluetooth EFR32BG22 Series 2 de la Silicon Labs. Cel mai mare consum de curent este de 8,2 mA și are loc atunci când emițătorul furnizează un semnal de ieșire de 6dBm. Atunci când SoC-ul se află în modul de veghe profundă EM4, consumul scade la doar 0,17 µA. O astfel de gamă dinamică atât de largă a consumului de curent, aproximativ 50:1, care poate apărea în câteva microsecunde, indică amploarea provocării. Interfețele periferice și GPIO vor consuma, de asemenea, putere în timpul utilizării, împreună cu funcțiile asociate ale dispozitivului IoT, astfel încât este necesar un punct de vedere holistic.
Măsurarea curentului consumat de orice dispozitiv implică, de obicei, plasarea unui rezistor de șunt cu o valoare ohmică scăzută și o toleranță ridicată, de obicei 1%, în linia de alimentare a sistemului embedded. Măsurarea tensiunii la bornele rezistorului de șunt permite calcularea curentului care circulă prin acesta. Există o valoare optimă pentru ca rezistorul să fie eficient. Aceasta va impune o tensiune de sarcină ridicată și va scădea tensiunea de alimentare a microcontrolerului dacă este prea mare. O valoare prea mică va face dificilă măsurarea curenților foarte mici.
Conceptul de testare a consumului de putere a apărut pentru prima dată în industria proiectării de dispozitive embedded în urmă cu peste zece ani. Sondele J-TAG standard sunt acum disponibile cu o funcție de măsurare a curentului. Există multe seturi populare de instrumente embedded și IDE-uri care le acceptă, dar, de obicei, acestea nu oferă gama dinamică sau granularitatea de măsurare necesară pentru sistemele embedded de astăzi.
Pentru a răspunde cererii de măsurare precisă în timp real a consumului de energie al unui dispozitiv este necesară utilizarea unui instrument precum Otii Arc de la Qoitech.
Măsurarea curentului în timp real și cu gamă dinamică ridicată în aplicații embedded
Qoitech Otii Arc (vedeți figura 1) dispune de o sursă de alimentare programabilă și de un analizor într-o unitate compactă și portabilă. O aplicație software cuprinzătoare oferă interfața de utilizator pentru Otii Arc și este disponibilă pentru toate sistemele de operare cunoscute. Otii Arc poate afișa și înregistra curentul în timp real cu o precizie de nanoamperi și are o rată maximă de eșantionare de 4 ks/sec. Domeniul său dinamic ridicat de măsurare a curentului, de la zeci de nanoamperi la 5 amperi, este cel mai bun din industrie și îl face ideal pentru a fi utilizat în orice proiect de sistem embedded.
Alimentarea cu energie pentru Otii Arc poate proveni fie de la o sursă USB, fie de la un adaptor extern de curent continuu. Tensiunea de ieșire aplicată dispozitivului testat (DUT) este programabilă între 0,5 și 5VDC în pași de 1 mV. Otii oferă un curent de ieșire continuu de 2,5A și un curent de vârf de până la 5A. Pentru a furniza curenți mai mari decât cei disponibili de la un port USB, este necesară o sursă de alimentare externă.
Otii Arc dispune de o interfață UART, două intrări GPIO, două ieșiri GPIO și doi pini de detecție a tensiunii. Cu ajutorul interfeței UART, mesajele de depanare de la DUT sunt afișate împreună cu măsurătorile de curent în timp real. Caracteristica UART permite dezvoltatorului de aplicații embedded să evidențieze sarcini sau puncte de supraveghere în codul său pentru a indica funcții specifice aplicației. Mesajele UART permit sincronizarea codului aplicației cu măsurarea curentului în timp real. Vedeți un exemplu în figura 2.
Software-ul Otii Arc permite înregistrarea și stocarea sesiunilor în timp real. Această caracteristică este deosebit de utilă pentru a compara impactul îmbunătățirilor aduse codului sau hardware-ului în timpul etapelor de prototipare ale dezvoltării embedded. Pinii GPIO permit ca pinii de stare de la DUT să apară în timp real pe display-ul Otii Arc, ajutând și mai mult procesul de depanare.
Pinii de detecție permit măsurarea altor linii de alimentare ale DUT sau facilitează monitorizarea cu patru fire a tensiunii de alimentare primare a DUT. Otii Arc dispune, de asemenea, de un absorbant de curent (current sink) programabil pentru a facilita descărcarea unei baterii și înregistrarea profilului acesteia. Otii poate apoi să emuleze profilul memorat al bateriei cu tensiunea sa de ieșire primară. Pentru a utiliza aceste funcții este necesară o licență opțională a software-ului Otii battery toolbox.
Figura 3 ilustrează o baterie tip monedă CR2032 conectată la Otii Arc pentru a realiza profilul de descărcare al acesteia. Setările profilului pentru testarea bateriei apar în figura 4. Rețineți că puteți seta sarcina de curent și durata printr-o setare de valoare ridicată și una scăzută. De asemenea, puteți seta iterațiile de repetare a unui ciclu.
Setarea de curent ridicat, ilustrată în figura 4, este de 40 mA, iar valoarea scăzută este de 100 µA. Timpul pentru fiecare zonă de curent și durata ciclului reprezintă o perioadă de descărcare de 30 de zile.
Dotat cu un dispozitiv Otii Arc, un dezvoltator de sisteme embedded poate descoperi rapid cum și când prototipul său consumă putere. Acest lucru nu numai că oferă informații pentru a manipula modurile de veghe ale unui microcontroler și pentru a dezactiva funcțiile periferice, dar permite și investigarea altor idei de reducere a consumului de putere. Un exemplu este acela de a se decide asupra protocolului wireless pe care să-l utilizeze. Cei mai mulți senzori wireless IoT situați la periferie trebuie să transmită doar date esențiale, cum ar fi citirile de temperatură și umiditate, la fiecare 15 minute. Din cauza naturii unor protocoale wireless, a rețelei și a metodelor de securitate a datelor, un mesaj de 40 octeți se poate transforma rapid într-unul de câțiva Kocteți.
Un document tehnic recent de la Qoitech subliniază cum influențează alegerea protocolului wireless consumul de energie. Figura 5 ilustrează rezultatele sumare ale unei serii de teste efectuate cu ajutorul unui modul wireless NB-IoT cu diferite protocoale și setări de securitate.
Analiza consumului de putere al unui dispozitiv IoT în câteva minute
Determinarea duratei de viață a bateriei unui sistem IoT embedded este plină de dificultăți. Fără măsurarea precisă a energiei consumate, durata de viață preconizată a bateriei este, în cel mai bun caz, o estimare. Foile de date ale SoC-urilor wireless oferă o bună indicație, dar nu iau în considerare natura dinamică, de exemplu, a stabilirii unei legături wireless și a trimiterii de date. De asemenea, vârfurile de consum de putere au un impact asupra performanței bateriei pe termen lung, astfel încât abilitatea de a modela comportamentul probabil devine esențială.
Grație capabilității de a controla furnizarea de energie, de a analiza consumul în timp real și de a sincroniza codul de depanare într-o singură unitate compactă, Otii Arc de la Qoitech, disponibil acum la Mouser, devine rapid un produs indispensabil pe bancul de lucru al oricărui dezvoltator.
Mouser Electronics
Authorised Distributor
www.mouser.com
Urmărește-ne pe Twitter