În general, atunci când dezvoltă noduri edge robuste, proiectantul de sisteme embedded ține cont de patru considerente:
- Interfața cu senzorul
- Consum redus de putere
- Dimensiunea fizică
- Securitate
Microchip Technology oferă microcontrolere (MCU) cu o gamă largă de tensiuni de intrare, de la 1,8 la 5,5V, ceea ce le face de neprețuit în mediile zgomotoase, deoarece toate semnalele pot fi scoase din zgomotul de fond, cu posibilitatea de a alimenta sau de a absorbi până la 50mA pe pinii GPIO individuali, împreună cu intervale de temperatură industrială (-40°C până la 85°C) și extinsă (-40°C până la 125°C).
Haideți să analizăm pe rând aceste patru considerente.
Interfața cu senzorul
Interfețele pentru senzori sunt disponibile în diverse variante. De obicei, proiectantul de sisteme embedded utilizează: Senzori analogici cu ieșire de tensiune sau curent care variază continuu, Senzori digitali care pot utiliza niveluri logice sau fluxuri de date, cum ar fi comunicațiile seriale, Modulație PWM (Pulse Width Modulation) variabilă, cum ar fi senzorii de poziție a clapetei de accelerație, sau senzori ToF (Time of Flight) utilizați în detectarea distanței. Să analizăm mai în detaliu câteva dintre acestea.
Interfețe pentru senzori analogici
Având opțiunea de a alege între un dispozitiv analogic discret și un dispozitiv analogic integrat pe cip (on-chip integrated analog), utilizatorul poate selecta instrumentul analogic potrivit pentru sarcina sa. Prin utilizarea unei tehnologii de procesare mai mari pe plachetele noastre de siliciu, acest lucru înseamnă că perifericul analogic pe cip este mult mai puțin susceptibil la diafonie, precum și la zgomotul inductiv sau capacitiv care crește pe măsură ce producătorii trec la tehnologii de procesare mult mai mici. Perifericele analogice integrate pe cip de la Microchip sunt configurabile la fel cum utilizatorul poate configura orice alt periferic. Având perifericele integrate, utilizatorul le poate citi, totodată, ca intrări, de exemplu, utilizatorul ar putea dori să știe care sunt intrările comparatorului în timpul unei anumite etape a programului.
Haideți să analizăm unele dintre aceste periferice analogice, începând cu amplificatoarele operaționale.
- Amplificatoare operaționale integrate
Amplificatoarele operaționale integrate de la Microchip au și circuitele pasive asociate pe cip, cum ar fi rețeaua internă de rezistoare care permite setarea și chiar modificarea câștigului programabil în timpul rulării. În plus, configurația amplificatorului operațional poate fi, de asemenea, modificată în timpul rulării, ceea ce înseamnă că utilizatorul poate comuta între configurațiile de tip inversor, neinversor, cu câștig unitar (urmăritor de tensiune) și configurații discrete personalizate în timpul rulării, oferind o flexibilitate mult mai mare decât în cazul în care se utilizează doar hardware discret, minimizând în același timp costurile asociate cu acesta.
De obicei, atunci când se utilizează hardware discret, inginerul este obligat să-și proiecteze aplicația de semnal mixt pentru a face față celor mai nefavorabile scenarii și, prin urmare, trebuie să facă unele sacrificii de performanță. Cu toate acestea, folosirea perifericelor analogice integrate permite utilizatorului să adauge o anumită inteligență în aplicația sa, sistemul embedded putând modifica, din mers, câștigul amplificatorului operațional, configurația sau chiar punerea în cascadă a acestora. Astfel, utilizatorul își poate proiecta aplicația pentru a gestiona optim fiecare scenariu în parte, profitând în același timp de consumul mai mic de putere al perifericelor în comparație cu soluțiile centrate pe software.
Trebuie spus că amplificatorul operațional integrat nu este un “glonț magic” și, ca atare, nu va fi întotdeauna cel mai potrivit pentru fiecare aplicație posibilă. De exemplu, dacă utilizatorul se află în situația de a dezvolta o aplicație în care are nevoie de performanțe analogice superioare, de o configurație cu dublă alimentare sau de o variantă specială, atunci ar trebui să se uite la gama largă de amplificatoare operaționale discrete de la Microchip.
- Convertor analog-digital (ADC) cu caracteristici îmbunătățite
Caracteristicile îmbunătățite ale perifericelor ADC de la Microchip includ funcții hardware care, prin tradiție, erau disponibile doar cu ajutorul driverelor centrate pe software, cum ar fi acumulare, moduri burst, calculul mediei, comparare ferestre și filtrare. Ca întotdeauna, aceste periferice ADC pot utiliza tensiuni de referință externe, dar pot utiliza și mai multe tensiuni de referință interne diferite, împreună cu activarea (declanșarea) autoconversiei. Rezultă că utilizatorul are acces la funcțiile hardware care pot fi utilizate în timp ce procesorul se află în modurile cu consum redus de putere. De exemplu, utilizatorul poate configura o fereastră de comparare ADC care trezește CPU doar atunci când semnalul de intrare se află în afara ferestrei respective, astfel încât CPU să poată procesa corect acel semnal de intrare. Acest lucru înseamnă că CPU-ul înregistrează mult mai puține treziri și are ca rezultat economii semnificative de putere, vitale în aplicațiile cu consum redus de energie. De asemenea, există și avantajul suplimentar de a reduce zgomotul sistemului și, prin urmare, al senzorilor, deoarece componentele digitale, cum ar fi ceasurile și PWM-ul, pot fi dezactivate atunci când nu sunt utilizate.
Interfețe digitale pentru senzori
De obicei, atunci când un proiectant de sisteme embedded începe să dezvolte o aplicație, acesta va încerca, pe cât posibil, să reunească senzorii și dispozitivele în jurul unui singur domeniu de tensiune. Aceasta pentru a reduce complexitatea suplimentară, întârzierile de propagare crescute, precum și costurile asociate listei de materiale (BOM) și costurile aferente spațiului de pe placa de circuit imprimat legate de utilizarea circuitelor de schimbare a nivelului.
- I/O cu mai multe tensiuni
Multi-Voltage I/O (MVIO) permite utilizatorului să configureze un port I/O complet folosind un al doilea domeniu de tensiune între 1,62V și 5,5V. Perifericul MVIO utilizează doar 500nA atunci când este folosit, ceea ce îl face ideal pentru aplicații cu consum redus de putere. Toate comportamentele digitale din protocoalele seriale (I2C, SPI, USART), PWM și GPIO funcționează pur și simplu pe cel de-al doilea domeniu de tensiune, nivelurile de declanșare Trigger Schmitt de intrare fiind scalate în funcție de cel de-al doilea domeniu de tensiune. În plus, a doua linie de tensiune poate fi divizată pentru a fi disponibilă pentru intrarea în ADC ca referință de tensiune.
- Celule logice configurabile (CLC)
Utilizatorul poate configura acest periferic ca una dintre diferitele configurații logice, care, în funcție de dispozitiv, include următoarele configurații de poartă: AND, NAND, AND-OR, AND-OR-INVERT, OR-XOR, OR-XNOR. De asemenea, utilizatorul poate selecta dintre următoarele latch-uri și circuite basculante bistabile (flip-flops): S-R latch, J-K flip-flop cu Reset, D-latch cu ceas cu Set-Reset, D-latch transparent cu Set-Reset. Utilizatorul poate profita de instrumentele de configurare grafică de la Microchip pentru a crea mai ușor periferice personalizate pentru cerințele aplicațiilor sale.
Acesta poate fi ceva simplu, precum un debouncer (n.red.: un circuit care elimină zgomotul de intrare nedorit de la butoane, comutatoare sau alte intrări ale utilizatorului), sau mai complex, cum ar fi un driver hardware pentru LED-uri RGB adresabile individual WS2812B, care combină SPI, PWM și CLC pentru a crea un periferic driver personalizat. De obicei, driverele pentru aceste LED-uri cu adresare individuală, care utilizează un protocol de comunicație personalizat, sunt comandate prin software, necesitând un ceas de sistem de mare viteză, ceea ce duce la o sarcină mare a procesorului. Cu toate acestea, prin utilizarea perifericelor independente de nucleu (CIP), ceasul de sistem poate fi redus, iar procesorul poate petrece mai mult timp în moduri cu consum redus de putere sau chiar poate fi utilizat pentru a rula simultan alte sarcini.
Folosirea CIP-urilor oferă, de asemenea, utilizatorului o viteză de reacție sporită în comparație cu utilizarea unui CPU. Acest lucru rezultă din faptul că întârzierea propagării semnalelor perifericelor tinde să fie de obicei de ordinul nanosecundelor, în timp ce latența întreruperilor sau a altor latențe datorate procesării centrate pe software tinde să fie cu câteva ordine de mărime mai mare.
Consum redus de putere
Microcontrolerele pe 8-biți de la Microchip oferă trei moduri de consum redus de putere (sleep): Idle, Standby, Power-Down, precum și un mod Standby configurabil în care perifericele pot fi setate ca fiind pornite sau oprite. Cu toate perifericele dezactivate și în modul Power-Down, AVR-DB consumă doar 700nA, ceea ce îl face ideal pentru asigurarea unei durate de viață lungi a bateriei în aplicațiile cu noduri edge de teledetecție de joasă putere.
Utilizatorul poate folosi sistemul de evenimente AVR pentru a transmite semnale între periferice fără a trezi CPU-ul. Acest lucru are ca rezultat timpi de răspuns predictibili între periferice, ceea ce permite controlul și interacțiunea autonomă a perifericelor și sincronizarea acțiunilor perifericelor.
CIP-urile integrate sunt, de asemenea, foarte bine interconectate, astfel încât semnalele pot fi rutate direct între periferice, ceea ce face ca transferul de date între periferice să fie mult mai simplu de realizat, consumând, în același timp, mai puțină putere decât într-o proiectare centrată pe software.
Dimensiunea fizică
Gama de microcontrolere PIC și AVR pe 8-biți de la Microchip este disponibilă într-o varietate de capsule pentru nevoile voastre de proiectare, inclusiv PDIP, SOIC, SSOP, VQFN și TQFP. Acest lucru vă oferă flexibilitate atunci când dezvoltați layout-ul final al PCB-ului vostru. Totuși, rețineți că nivelul maxim al curentului nominal al microcontrolerului poate fi limitat de caracteristicile de disipare a puterii aferente capsulei acestuia.
Securitate
În ultimii ani, s-a înregistrat o trecere de la noduri senzoriale care execută toată procesarea în cloud la noduri edge care efectuează cea mai mare parte sau întreaga procesare la nivel local înainte de a trimite rezultatele în cloud. Acest lucru reduce costurile curente asociate serviciilor cloud prin reducerea transferurilor frecvente de date bidirecționale și a procesării de calcul, precum și a consumului de putere al nodului senzorial datorat transferurilor de date mai mari și mai dese, ca urmare a trimiterii de date brute neprocesate către cloud.
Proiectanții de sisteme embedded pot asocia un microcontroler pe 8-biți cu un consum mai mic de putere, utilizat pentru interfațarea directă cu senzorii, cu un dispozitiv mai puternic pe 16- sau 32-biți, care poate fi utilizat pentru o sarcină de calcul mai mare și pentru cerințele crescute de memorie asociate cu stive de comunicații mai complexe și mai sigure. Prin reducerea numărului total de transferuri de date între nodul edge și serviciul cloud, se pot reduce considerabil atât costurile curente ale cloud-ului, cât și cele legate de utilizarea bateriei. În plus, prin valorificarea unui al doilea microcontroler mai puternic în designul lor, inginerii pot include chiar și Machine Learning (ML) la periferie (edge), ceea ce ar permite ca proiectul sistemului lor să fie mult mai puternic pentru a descoperi tipare în date și pentru a obține informații utile.
Proiectanții pot profita, de asemenea, de elementele de securitate de la Microchip, inclusiv de ATEC608B, care utilizează autentificarea de tip semnătură-verificare ECDSA (Elliptic Curve Digital Signature Algorithm) pentru piața IoT (Internetul lucrurilor), ceea ce îl face ideal pentru nodurile edge de senzori foarte robuste.
Instrumentele software ușor de utilizat ajută la reducerea costurilor de dezvoltare
Prin utilizarea perifericelor integrate pe cip, utilizatorul poate reduce complexitatea proiectului PCB, economisind spațiu valoros pe placă și reducând în același timp numărul total de componente din lista de materiale.
Acest lucru este simplificat și mai mult prin utilizarea instrumentelor software grafice MCC/Melody și Harmony pentru configurarea perifericelor și a sistemului. Ele pot fi folosite pentru a începe imediat activitatea, deoarece oferă o imagine clară a funcțiilor microcontrolerului și perifericelor. Aceasta înseamnă că utilizatorul poate reduce semnificativ timpul pe care îl petrece studiind fișa tehnică a microcontrolerului. Sunt ideale pentru proiectanți atunci când evaluează caracteristici noi sau, poate, necunoscute ale perifericelor și generează cod utilizabil care poate fi folosit în producție sau ca referință practică pentru persoanele care doresc să își dezvolte propriile drivere.
Toate microcontrolerele și microprocesoarele oferite de Microchip pot fi programate prin intermediul MPLABX IDE, care rulează pe Windows, MacOS și Linux, utilizând gama noastră de compilatoare, inclusiv XC8, XC16 și XC32. Proiectantul își poate depana aplicația fără să părăsească mediul IDE și poate utiliza Data Visualizer pentru a se conecta la interfața Data Gateway Interface (DGI), la porturile seriale, precum și pentru a afișa informații pe un terminal sau pentru a reprezenta grafic valorile datelor în timp. Data Visualizer poate fi utilizat, de asemenea, cu Microchip Power Debugger, care are două canale de măsurare independente, poate furniza până la 100mA între 1,6V și 5,5V pentru a alimenta dispozitivul țintă și poate măsura până la 100nA în canalul de înaltă rezoluție. Acest lucru face ca Power Debugger să fie ideal pentru optimizarea aplicațiilor cu consum redus de putere, care trebuie să funcționeze cu o baterie timp de ani de zile.
Fișa tehnică a dispozitivului și alte documentații utile pot fi accesate prin MPLABX în fereastra Kit Window. Fiecare fișă tehnică a dispozitivului acoperă o familie de module, permițând vizualizatorului să compare dispozitivele din cadrul unei familii pentru a le identifica pe cele care îndeplinesc cel mai bine cerințele de proiectare. Astfel de cerințe includ capacitatea de memorie, memoria RAM, tipul și numărul de instanțe ale perifericelor, inclusiv protocoalele seriale suportate și celulele logice configurabile (CLC). Dacă folosește o placă de dezvoltare PIC sau AVR Curiosity Nano, utilizatorul poate accesa, de asemenea, Ghidul utilizatorului de hardware Curiosity Nano, exemplele de cod pe GitHub, schemele și fișierele de proiect Altium din Window Kit.
Instrumente hardware ușor de utilizat pentru programare și depanare
Microchip oferă o varietate de instrumente hardware pentru a evalua un microcontroler, cum ar fi plăcile de dezvoltare Curiosity Nano, care pot fi utilizate împreună cu placa de bază Curiosity Nano pentru a permite utilizarea ușoară a oricăror plăci fiică prin intermediul soclurilor MikroBUS. Acest lucru face ca dezvoltarea unui prototip sau a unei validări de concept să fie mult mai ușoară. Apoi, atunci când proiectantul începe să dezvolte o placă de circuit imprimat personalizată pentru aplicația sa, acesta poate programa și depana aplicația cu ajutorul programului de depanare PICKit.
Concluzie
Prin utilizarea gamei de microcontrolere Microchip PIC și AVR pe 8-biți, inginerii și proiectanții de sisteme embedded pot dezvolta mai ușor și mai rapid decât oricând noduri edge de senzori robuste și cu consum mic de putere, făcând în același timp mai puține compromisuri. Proiectanții pot valorifica o suită puternică de periferice independente de nucleu (CIP), inclusiv crearea de periferice personalizate, utilizând în același timp funcții hardware care, în general, necesitau o intervenție a procesorului (consumator de putere), toate acestea rămânând într-un mod de consum energetic redus (sleep). Cu ajutorul microcontrolerelor PIC și AVR, Microchip face ca dezvoltarea de aplicații de detecție la distanță, de noduri conectate la cloud și ML să fie mai ușoară ca niciodată!
Autor: Ross Satchell
Microchip Technology | https://www.microchip.com