Utilizați acest ghid hardware pentru a determina ce hardware să utilizați atunci când faceți prototipuri și dezvoltați proiecte IoT


Dispozitivele colectează date și monitorizează parametrii. Se găsesc pe orice, de la echipamente industriale, clădiri și mașini, la animale, transporturi de marfă, conducte și oameni.

Componentele hardware și software sunt proiectate pentru aplicații IoT printr-un protocol de proiectare standard: dezvoltare de specificații, proiectare conceptuală, prototip, testare și, în cele din urmă, lansare de hardware și software integrate într-o rețea. Unele platforme, cum ar fi Arduino și Raspberry Pi, pot accelera proiectarea și permit prototiparea rapidă fără personalizarea implicată, accelerând astfel timpul necesar implementării unei configurații IoT.

Proiectarea va necesita identificarea cerințelor de performanță, a hardware-ului și software-ului necesar pentru realizarea unor astfel de cerințe, urmate de specificații pentru componente – fie comercializate la raft (COTS), fie proiecte personalizate – cu atenția cuvenită pentru mediul de operare și aplicația care urmează să fie folosit în cadrul acestuia.

În contextul IoT, un dispozitiv se referă la orice obține informații și le transmite. De exemplu, un senzor de presiune într-o conductă, un senzor de temperatură într-un vagon frigorific – sunt toate dispozitive. Dispozitivele pot sta singure sau funcționează sincronizate cu alte dispozitive.

În acest articol, voi trece în revistă câteva opțiuni hardware disponibile și câțiva factori de luat în considerare la selectarea acestora pentru a vă dezvolta următorul proiect IoT.

Caracteristicile dispozitivului IoT

Pe măsură ce se dezvoltă un peisaj IoT, vor fi introduse noi dispozitive și platforme. Există caracteristici cheie care sunt comune dispozitivelor IoT care oferă o bază de comparație atunci când selectați hardware și software pentru a configura o rețea IoT nouă sau pentru a dezvolta și extinde una existentă.

Dispozitivele IoT pot fi caracterizate prin capacități:

  • Achiziția și controlul datelor
  • Prelucrarea și stocarea datelor
  • Conectivitate
  • Gestionare a energiei

Achiziția și controlul datelor

Achiziția de date colectează informații analogice la un interval de timp fix (rata de eșantionare a datelor) și le transmite ca semnal digital către un dispozitiv de ieșire la distanță pentru o citire digitală. DAQ poate include condiționarea semnalului (pentru manipularea și scalarea citirilor senzorului brut) și convertoare analog-digitale pentru a converti citirile senzorului analogic în valori digitale, astfel încât să poată fi procesate și analizate.

Senzorii sunt componente care măsoară variabilele fizice și le convertesc în semnale electrice (tensiuni). Senzorii sunt disponibili, comercial, de pe raft și specificați pentru a măsura o serie de variabile care includ: temperatură, umiditate, presiune, fum, gaz, lumină, sunet, vibrații, flux de aer, flux de apă, viteză, accelerație , proximitatea, poziția GPS, altitudinea și o multitudine de alte variabile.

Senzorii variază în funcționalitate și pot fi utilizați pentru a măsura o gamă largă de condiții. De exemplu, senzorii proprioceptivi monitorizează starea internă a dispozitivului. Senzori precum butoane, comenzi glisante sau ecrane tactile pot fi folosiți pentru a interacționa direct cu un dispozitiv (interfață om-mașină).

Fiecare tip de senzor are multe opțiuni. Producătorii și specificațiile produselor senzorilor acestora variază. Precizia senzorului, precizia și starea de funcționare necesară pot varia de la catalog la catalog și de la producător la producător. Senzorii pot fi utilizați într-un motor, sub apă, încorporat în oameni sau animale și chiar în spațiu. Mediile necesită diferite caracteristici ale senzorilor și sunt proiectate pentru utilizări diferite în consecință.

O caracteristică importantă a componentelor senzorilor este rezoluția. Rezoluția unui senzor reprezintă cea mai mică cantitate de schimbare pe care senzorul o poate citi în mod fiabil și este legată de dimensiunea valorii numerice care este utilizată pentru a reprezenta citirile brute ale senzorului. De exemplu, un senzor analogic de temperatură cu 10 biți de rezoluție reprezintă o citire a temperaturii folosind o valoare numerică cuprinsă între 0 și 1023. Biții sunt binari, deci 10 biți oferă doi la puterea de 10 sau 1024 de valori posibile în total. Cu toate acestea, în practică, senzorii sunt afectați de zgomotul electric, ceea ce reduce rezoluția reală.

În timp ce senzorii convertesc o variabilă fizică cum ar fi temperatura într-un semnal electric, dispozitivele de ieșire sunt inverse: convertesc un semnal electric într-un rezultat fizic. Dispozitivele de ieșire includ LED-uri, difuzoare și ecrane. Acest lucru poate necesita actuatoare cum ar fi motoare, relee și solenoizi care acționează fizic ceva. Actuatoarele sunt comune în aplicațiile IoT industriale. De exemplu, actuatoarele pneumatice liniare sunt adoptate pe scară largă în fabricare pentru a muta și prinde produse în timpul procesului de asamblare. Un servomotor de pe axa unui autobuz școlar poate acționa frânarea atunci când este detectată mișcare adversă. O temperatură ridicată într-un recipient frigorific cu produse în interior poate acționa o alarmă atunci când o temperatură crește la un anumit nivel inacceptabil.

Prelucrarea și stocarea datelor

Dispozitivele IoT necesită o capacitate specifică de procesare și stocare a datelor. Acest lucru ajută la realizarea agregării, transmiterii și analizei datelor. Unele dispozitive IoT pot procesa date direct, în timp ce altele transmit aceste date către alte dispozitive, dispozitive gateway sau aplicații cloud pentru agregare și analiză ulterioară.

Analiza Edge efectuează analiza datelor la marginile unei rețele, mai degrabă decât într-o locație centralizată. Datele pot fi analizate în timp real pe dispozitivele în sine sau pot fi analizate pe un dispozitiv gateway din apropiere (cum ar fi un router) conectat la dispozitivele IoT, în loc să transmită volume mari de date în amonte către un server cloud sau un centru de date pentru mai multe detalii analiză. Prelucrarea datelor la marginile agregate și filtrează datele pe măsură ce sunt colectate, cu doar cele mai importante date trimise în amonte. Analiza Edge reduce cerințele de procesare și stocare în amonte, ameliorează încărcarea rețelei.

Puterea de procesare și stocarea utilizate de o aplicație IoT depind de procesarea cerută de serviciile sau aplicațiile care consumă datele. Specificațiile disponibile de memorie și procesor, viteza de ceas și numărul de nuclee, toate acestea determinând ulterior rata dispozitivelor de procesare a datelor. Capacitatea blițului non-volatil, care este utilizat pentru a persista date până la transmiterea în amonte, determină cât de multe date pot fi stocate pe dispozitiv. Dispozitivele care efectuează analize marginale necesită mult mai multe capacități de procesare decât dispozitivele care efectuează numai prelucrarea de bază a datelor, cum ar fi validarea, normalizarea, scalarea sau conversia citirilor.

Conectivitate

Conectivitatea la rețea este o caracteristică definitorie a oricărui dispozitiv IoT. Dispozitivele comunică local cu alte dispozitive. Apoi publică date prin servicii bazate pe cloud. Unele dispozitive comunică fără fir, utilizând 802.11 (Wi-Fi), Bluetooth, RFID, rețele celulare sau tehnologii de rețea cu suprafață redusă (LPWAN), precum LoRa, SigFox sau NB-IoT. Comunicarea prin cablu este potrivită pentru dispozitivele staționare. Astfel de dispozitive pot fi instalate în clădiri inteligente, automatizări casnice și aplicații de control industrial, de exemplu, și conectate cu Ethernet sau modernizate cu Ethernet over power. Comunicarea în serie este o formă de conectivitate prin cablu între dispozitive, utilizând protocoale standard precum Transmițătorul Receptorului Asincron Universal (UART) sau Rețeaua de Control (CAN) protocol, care își are originile în industria auto.

Gestionare a energiei

Gestionarea energiei este un factor critic pentru dispozitivele IoT portabile și purtabile care se bazează pe o sursă de alimentare fără fir, cum ar fi bateriile sau celulele fotovoltaice (solare). În funcție de tiparele de utilizare și de cerințele de energie ale senzorilor, actuatorilor sau circuitelor integrate (IC-uri) atașate, un dispozitiv poate fi pus în mod repaus sau în modul de consum redus periodic pentru a economisi energie.

De exemplu, un computer cu o singură placă, cum ar fi Raspberry Pi 4, necesită în jur de 700 – 1000mA de curent pentru a funcționa în condiții normale de utilizare. Dacă transmiteți date în mod constant printr-o rețea wifi sau dacă dispozitivul sub sarcină intensă efectua o mulțime de prelucrare a datelor, consumul de energie ar fi ridicat, dar atunci ar scădea atunci când dispozitivul va rămâne inactiv. Dacă conectați un modul de cameră, intensitatea necesară crește cu aproximativ 250mA când camera este utilizată. De asemenea, senzorii necesită în mod normal putere pentru a funcționa; pinii GPIO de pe Raspberry Pi furnizează 3,3V sau 5V, până la un total de 50mA curent pe toți pinii. Consumul de energie al dispozitivului crește pe măsură ce creșteți numărul de componente atașate pinilor.

Tipuri de hardware disponibile pentru protejarea proiectului dvs. IoT

Dezvoltarea aplicațiilor IoT este mai accesibilă cu disponibilitatea tot mai mare de plăci de dezvoltare hardware, platforme și seturi de prototipuri disponibile în comerț la prețuri reduse. Proiectările hardware modulare oferă o flexibilitate mare. Cu o selecție mai mare de componente, proiectanții pot înlocui senzori noi cu specificații diferite. Alternativ, puteți actualiza în mod independent modulele de rețea, procesare a datelor sau stocare ale unui dispozitiv pentru cerințe în evoluție.

Multe dispozitive hardware comerciale, inclusiv microcontrolere și computere cu o singură placă, sunt proiectate în jurul circuitelor integrate System-on-a-Chip (SoC). SoC-urile oferă capabilități cum ar fi procesarea datelor, stocarea și rețeaua pe un singur cip. Această configurație înseamnă că sacrificați o oarecare flexibilitate din motive de comoditate, dar, din fericire, există un număr mare de dispozitive de marfă disponibile, cu o gamă de configurații din care să alegeți. De exemplu, Tabelul 1 enumeră specificațiile tehnice pentru o selecție de microcontrolere care pot fi utilizate pentru prototiparea proiectelor IoT și oferă o comparație a trei computere populare cu o singură placă (SBC).

Plăci de dezvoltare a microcontrolerelor

Un microcontroler este un SoC care oferă capacități de procesare și stocare a datelor. Microcontrolerele conțin un nucleu (sau nuclee) de procesor, memorie (RAM) și memorie de citire numai programabilă ștergătoare (EPROM) pentru stocarea programelor personalizate care rulează pe microcontroler. Plăcile de dezvoltare a microcontrolerelor sunt PCB-uri cu circuite suplimentare pentru a sprijini microcontrolerul pentru a face mai convenabil prototipul și programarea cipului.

Senzorii și dispozitivele de acționare se conectează la microcontroler prin intermediul pinilor de intrare / ieșire de uz general (GPIO) sau digital printr-o magistrală hardware. Protocoalele de comunicații standard precum I2C și SPI sunt utilizate pentru comunicarea intra-dispozitiv cu componentele care sunt conectate cu magistrala. Adoptarea standardelor facilitează adăugarea sau schimbarea componentelor conectate la magistrală.

Arduino ( http://arduino.cc/en/Main/ ) este o platformă de dispozitiv open source, cu o comunitate activă care creează plăci și instrumente de dezvoltare compatibile. Capacitățile dispozitivului variază în funcție de modelele oficiale Arduino ( https://www.arduino.cc/en/Products/Compare) ), precum și între zecile de plăci compatibile cu terțe părți. Toate dispozitivele sunt microcontrolere compatibile Arduino, inclusiv omniprezentul Arduino Uno, Particle’s Electron, care include un modem celular integrat și sistemele Espressif ( https://espressif.com/en/products/hardware/esp8266ex/overview ) ESP8266-01, un microcontroler cu cost redus, cu putere redusă, cu WiFi integrat.

Figura 1. Placă de dezvoltare a microcontrolerului Arduino

La fel ca Arduino, ESP8266, are o comunitate activă de adoptatori. Plăcile de dezvoltare notabile, bazate pe ESP8266, includ NodeMCU , WeMos D1 și AdaFruit’s Feather Huzzah ( https://learn.adafruit.com/adafruit-feather-huzzah-esp8266/overview ). O serie de opțiuni alternative de firmware pentru plăcile bazate pe ESP8266 au fost dezvoltate de comunitatea open source și maker, permițând dezvoltatorilor IoT să programeze pentru aceste plăci folosind Lua, Python și JavaScript și să accepte actualizări over-the-air (OTA) .

Tabelul 1. Specificații tehnice pentru microcontrolerele Arduino Uno, Particle Electron și Espressif Systems ESP8266-01
CaracteristicăCaracteristicăArduino UnoElectronul cu particuleEspressif Systems ESP8266-01
Achiziția și controlul datelor
Pinii GPIO6 Analog in
14 Digital – 6 PWM
12 intrări analogice
2 ieșiri analogice
30 digitale – 13 PWM
2 Digital
1 Analog
Tensiunea nivelului logic5V3,3V3,3V
Prelucrarea și stocarea datelor
ProcesorATMega328P32-bit STM32F205
ARM Cortex M3
Tensilica L106 pe 32 de biți
Viteza procesorului16 KHz120 MHz80 MHz
Memorie32 kB bliț,
1 kB EEPROM
Bliț de 1 Mb,
128 kB RAM
1 Mb
Conectivitate
Interfețe de rețeaNimic în mod implicit. Poate fi adăugat cu scuturi.Modem celular integrat (2G / 3G)Wifi integrat
Putere
Alimentare recomandată9-12V DC 0,5 – 2A butoi, sau 5V 500mA USB, sau 9 – 12V pe pinul VIN5V micro USB sau 3.9V-12VDC pe pinul VINAlimentare reglementată de 3,3V 300mA pe pinul VCC
Alte
Dimensiuni2,7 in X 2,1 in2,05 in x 0,8 in1,4 in x 1 in
Cost tipic20 USD39 $ – 59 $10 USD

Abordarea standard pentru dezvoltarea software-ului pentru a rula pe microcontrolere compatibile Arduino este de a utiliza C sau C ++ și Arduino IDE, totuși există și legături de limbaj dezvoltate de comunitate și instrumente de programare vizuală. Plăcile compatibile Arduino care partajează aspecte comune ale pinilor pot fi extinse utilizând scuturi opționale de la terți, de exemplu, pentru a adăuga un port Ethernet sau Bluetooth la un Arduino Uno. Arduino este cel mai larg adoptat mediu de dezvoltare a microcontrolerelor, dar alții precum Tessel ( https://tessel.io/ ) și Particle.io ( http://particle.io ) acceptă în mod nativ JavaScript, în timp ce Python este suportat pentru plăci precum MicroPython PyBoard ( http://micropython.org ) și de WeIO ( http://we-io.net/hardware/ ).

Selectarea unui microcontroler compatibil Arduino facilitează portarea programelor dezvoltate folosind bibliotecile Arduino multiplataforma și Arduino IDE pentru a rula pe alte dispozitive compatibile Arduino. Lucrarea prin și în jurul diferenței subtile este încă necesară.

De exemplu, Arduino Uno utilizează logica de 5V pe pinii I / O digitali (unde 0 volți este egal cu LOW sau OFF și 5 volți este egal cu HIGH sau ON), dar plăcile ESP8266 și particule folosesc logica de 3,3V (HIGH este 3,3V). Acest lucru vă poate afecta alegerea componentelor senzorului sau actuatorului, deoarece unele componente funcționează numai cu una sau alta. Schimbarea senzorilor proiectați pentru logica de 5V la 3,3V poate duce la rezultate imprevizibile și poate deteriora pinii care sunt intoleranți la tensiuni mai mari, așa că ar trebui să adăugați un convertor de nivel logic pentru a face acest lucru. Când veți trece la implementarea caracteristicilor hardware de nivel scăzut, cum ar fi activarea modului de repaus profund sau citirea de la senzorii conectați utilizând protocoale specifice, probabil că va trebui să vă bazați pe bibliotecile specifice dispozitivelor sau componentelor care vă vor face codul mai puțin portabil.

Calculatoare cu o singură placă

Computerele cu o singură placă (SBC) sunt un pas înaintea microcontrolerelor. Acestea vă permit să atașați dispozitive periferice precum tastaturi, șoareci și ecrane, precum și oferind mai multă memorie și putere de procesare (de exemplu, un microprocesor ARM de 1,2 GHz pe 32 de biți comparativ cu un microcontroler de 8 biți de 16 KHz de la).

Tabelul 2 prezintă specificațiile tehnice pentru trei SBC-uri, Raspberry Pi 4 ( https://www.raspberrypi.org/ ), BeagleBone Black ( http://beagleboard.org/black ) și DragonBoard 410c ( https: //developer.qualcomm .com / hardware / dragonboard-410c ).

Figura 2. Calculator unic Raspberry Pi

Distincția dintre microcontrolere și computere cu o singură placă este oarecum arbitrară. Unele dispozitive, cum ar fi Onion Omega 2 ( https://docs.onion.io/omega2-docs/omega2.html#omega2 ), se încadrează undeva între ele, cu aproape la fel de multă memorie la bord și capacitate de procesare ca o sfârșitul SBC. Există, de asemenea, o serie de dispozitive hibride, cum ar fi UDOO Quad ( http://www.udoo.org/docs/Introduction/Introduction.html ) care integrează un sistem Linux bazat pe ARM cu un microcontroler compatibil Arduino.

Tabelul 2. Specificații tehnice pentru Raspberry Pi 4, BeagleBone Black și DragonBoard SBC
CaracteristicăCaracteristicăRaspberry Pi 4BeagleBone BlackQualcomm DragonBoard 410c
Achiziția și controlul datelor
Pinii GPIO40 pini I / O, inclusiv 29 digitale65 Digital – 8 PWM
7 Intrare analogică
12 Digital
Tensiunea nivelului logic3,3V5V1,8V
Prelucrarea și stocarea datelor
ProcesorARM Cortex A72AM335X ARM Cortex A8ARM Cortex A53
Viteza procesorului1,5 GHz1 GHz1,2 GHz
Memorie1-4 GB512 Mb RAM, 4 Gb Flash1 GB, 8 GB Flash
Conectivitate
Interfețe de rețeaWifi, Ethernet, Bluetooth
Porturile Ethernet, USB permit adaptoare externe wifi / Bluetooth
Wifi, Bluetooth, GPS
Putere
Alimentare recomandată5V 3A USB tip C5V 1.2A – 2A butoi6.5 – butoi 18V 2A
Alte
Dimensiuni3,5 x 2,3 in3,4 x 2,1 in3,3 in x 2,1 in
Cost tipic35 USD55 USD75 USD

Ca și în cazul microcontrolerelor, capacitățile dispozitivelor SBC pot fi extinse prin adăugarea de plăci de expansiune stivuibile cunoscute sub numele de pălării pe Raspberry Pi și pelerine pe BeagleBone Black și prin adăugarea de module externe, cum ar fi controlere de motor sau convertoare analog-digitale atenuați limitările cu capacitățile dispozitivului încorporat.

Multe dispozitive SBC seamănă mai mult cu un mini-PC și rulează un sistem de operare încorporat, de obicei o distribuție Linux simplificată. Ca rezultat, există mult mai multe instrumente de dezvoltare și opțiuni lingvistice care sunt disponibile pentru dezvoltarea aplicațiilor încorporate care funcționează cu senzorii și actuatorii atașați pe aceste dispozitive decât pe plăcile de microcontroler. Cu toate acestea, SBC-urile sunt mai complexe de configurat, mai mari, mai înfometate și mai predispuse la probleme cum ar fi deteriorarea cardului SD sau a memoriei flash unde sunt stocate aplicațiile.

Alegerea între plăcile de dezvoltare a microcontrolerelor și computerele cu o singură placă

Deși plăcile de dezvoltare pentru microcontroler și computerele cu o singură placă ar putea face parte doar dintr-o soluție IoT, acestea sunt ideale pentru bootstrapping dezvoltarea uneia.

O modalitate de a începe este să luați în considerare caracteristicile cheie ale dispozitivului IoT în lumina cerințelor aplicației dvs. și apoi să lucrați prin următoarele decizii de proiectare:

  • Determinați tipul și numărul de senzori periferici și componente de ieșire de care aveți nevoie și, dacă este necesar, orice circuite de proiectare pentru aceste componente
  • Selectați un microcontroler sau un dispozitiv cu o singură placă pentru a coordona citirea și controlul componentelor periferice
  • Decideți protocoalele de comunicare a datelor pe care trebuie să le utilizați pentru comunicația intra-dispozitiv (de exemplu, folosind I2C pentru comunicarea între microcontroler și orice senzori atașați)
  • Selectați hardware-ul de rețea și protocoalele pe care trebuie să le utilizați pentru a comunica cu serviciile și aplicațiile cloud

De exemplu, pentru a configura un sistem de automatizare a locuinței la un buget, puteți alege Raspberry Pi Zero W. Este un dispozitiv SBC mic și foarte ieftin, cu o putere și memorie de procesare ample (procesor ARM6 de 1 GHz și 512 MB RAM) pentru efectuați prelucrarea datelor și analize pe dispozitiv. Suportă extinderea memoriei flash a cardului microSD de până la 64 GB pentru stocarea programelor și datelor. Și, este echipat cu un antet GPIO complet cu 40 de pini, la fel ca Raspberry Pi 4, care permite conectarea mai multor senzori și acceptă atât protocoalele SPI, cât și I2C. Are WiFi la bord pentru conectarea la o rețea de acasă și poate fi alimentat cu micro-USB de pe un pachet de alimentare portabil sau de alimentare de perete.

Pe măsură ce progresați mai mult cu proiectarea peisajului IoT, puteți opri și compara performanța anticipată cu intenția de proiectare. Efectuați proiectarea și prototipul dispozitivelor, selectarea software-ului încorporat și selectarea serviciilor și aplicațiilor din amonte, dar opriți-vă pentru a le evalua. Puteți să vă evaluați periodic prototipurile în funcție de cerințele dvs. funcționale și nefuncționale, inclusiv performanța, fiabilitatea și securitatea, și să revizuiți aceste opțiuni după cum este necesar.

Cerințe hardware IoT pentru implementarea proiectului dvs. IoT

Dispozitivele IoT sunt extrem de specializate. Sunt concepute pentru a funcționa în medii foarte specifice. Hardware-ul pentru proiectele IoT variază foarte mult. Deși este posibil să faceți prototip cu hardware generic generic, în cele din urmă vă puteți orienta către proiectarea și dezvoltarea de PCB-uri și componente personalizate, adaptate cerințelor soluțiilor dvs. IoT. Ca parte a acestui proces, va trebui să luați în considerare aceste tipuri de cerințe hardware:

  • Cerințe de securitate
  • Ușurința de dezvoltare
  • Cerințe de achiziție, procesare și stocare a datelor
  • Cerințe de conectivitate
  • Cerinte de putere
  • Proiectarea dispozitivelor fizice
  • Cerințe de cost

Cerințe de securitate

Securitatea este un element critic în cadrul IoT. Este imperativ ca acesta să fie luat în considerare în toate etapele de proiectare și dezvoltare. Integritatea și securitatea datelor captate de orice dispozitiv trebuie să rămână intacte – chiar și în timpul prototipurilor. Cerințele de securitate se aplică dispozitivelor IoT în sine, rețelei dvs. și aplicațiilor cloud, mobile și de servicii web.

Cerințele de securitate aferente includ:

  • Asigurarea faptului că fiecare dispozitiv are suficientă putere de procesare și memorie pentru a putea cripta și decripta datele și mesajele la ritmul în care sunt trimise și primite
  • Asigurarea faptului că bibliotecile de dezvoltare software încorporate acceptă orice mecanisme de autorizare și control al accesului utilizate pentru autentificarea cu serviciile și aplicațiile din amonte
  • Alegerea de a adopta dispozitive disponibile pe piață care implementează protocoale de gestionare a dispozitivelor pentru înregistrarea în siguranță a dispozitivelor noi pe măsură ce sunt adăugate la o rețea pentru a evita falsificarea, și a celor care includ capabilități de firmware pentru a sprijini actualizări sigure prin aer pentru patch-uri de securitate

Ușurința de dezvoltare

În timp ce faceți prototipuri, ușurința dezvoltării este o altă cerință de înaltă prioritate, astfel încât să puteți pune rapid și ușor în funcțiune dispozitivul IoT, capturând date și comunicând cu alte dispozitive și cloud.

Luați în considerare accesibilitatea, disponibilitatea și calitatea documentației API, a instrumentelor de dezvoltare și a asistenței oferite de producătorul hardware sau de comunitatea de dezvoltare. Selectați dispozitive care sunt rapide și ușor de programat și re-flash, precum și de atingere redusă, cu o configurație zero sau minimă pe dispozitiv necesară, pentru a reduce frustrarea și a economisi timp în timp ce vă dezvoltați soluția IoT.

Cerințe de achiziție, prelucrare și stocare a datelor

Numărul de senzori conectați, rezoluția datelor capturate și viteza la care sunt prelevate datele determină volumul de date care urmează să fie procesate, ceea ce afectează cerințele de procesare și stocare a datelor.

Cantitatea de date care trebuie păstrate pe un dispozitiv depinde de frecvența în care dispozitivul se conectează pentru a transmite date în amonte. Un dispozitiv cu fir, conectat mereu, care este instalat într-o clădire inteligentă, unul care transmite volume reduse de date brute direct către un server extrem de disponibil, va necesita mai puțină putere de procesare a datelor și stocare în comparație cu un dispozitiv care trebuie să proceseze volume mari de date în rafale. Un dispozitiv care se conectează doar la fiecare câteva ore pentru a economisi energie va necesita mai mult spațiu de stocare pentru a înregistra datele local între timp.

Cerințe de conectivitate

Cerințele de conectivitate pentru rețeaua fără fir includ intervalul de operare, cât de mult va trebui transmis semnalul și volumul și rata anticipată de date care trebuie transmise. Luați în considerare toleranța la erori și capacitatea unui dispozitiv de a se reconecta și a încerca din nou trimiterea datelor, după ce a fost deconectat.

Este posibil ca hardware-ul dvs. să aibă conectivitate de rețea integrată, cum ar fi Bluetooth sau wifi, sau este posibil ca această capacitate să fie adăugată cu o placă de extensie sau un modul. Un modul extern care poate fi actualizat poate oferi mai multă flexibilitate, deoarece aveți opțiunea de a încerca diferite module pentru a evalua gama și consumul de energie.

Cerinte de putere

Multe dintre celelalte cerințe, inclusiv numărul de senzori necesari și rata de transmisie a rețelei, vor avea impact asupra cerințelor de alimentare ale dispozitivului. Luați în considerare dacă dispozitivul dvs. va fi conectat la rețea sau va necesita o sursă de alimentare portabilă, cum ar fi o baterie sau un supercondensator. Dacă necesită o sursă de alimentare portabilă, cum ar fi o baterie, trebuie să cunoașteți dimensiunea, greutatea și cerințele de capacitate ale bateriei, precum și dacă trebuie să fie reîncărcabilă, înlocuibilă sau aruncată după ce bateria moare. Dacă dispozitivul este reîncărcabil, cât de des trebuie încărcat și prin ce mijloace?

Cerințe de proiectare a dispozitivelor fizice

Cerințele de proiectare a dispozitivului fizic includ aspectul și dimensiunea dispozitivului.

Condițiile de mediu în care va fi instalat dispozitivul trebuie, de asemenea, luate în considerare, de exemplu, va avea nevoie de o carcasă impermeabilă sau robustă? De exemplu, un dispozitiv care este instalat pe partea inferioară a unui camion ca parte a unei aplicații de monitorizare a flotei ar trebui protejat pentru a se asigura că acesta funcționează în continuare în condiții dure; ar trebui să fie impermeabil și rezistent la murdărie, șocuri și vibrații.

Cerințe de cost

Costul hardware-ului include cheltuielile inițiale pentru hardware și componentele asociate (cum ar fi orice senzori), precum și costurile lor de funcționare continue, cum ar fi costurile de energie și întreținere sub forma înlocuirii pieselor uzate sau a componentelor defecte. De asemenea, luați în considerare posibilele taxe de licențiere pentru unele componente sau drivere de dispozitiv. Achiziționarea de plăci de dezvoltare disponibile în comerț sau SBC poate fi mai economică decât fabricarea plăcilor personalizate. Pe măsură ce vă extindeți rețeaua IoT cu multe dispozitive, dispozitivele hardware dedicate pot deveni o alternativă mai înțeleaptă.

Concluzie

Fiecare aplicație și situație este diferită. Nu există o abordare „unică pentru toți” pentru selectarea hardware-ului pentru proiectele IoT. Adoptarea hardware-ului bazat pe standarde, precum microcontrolerele sau computerele cu o singură placă, poate economisi timp și cheltuieli în primele etape de dezvoltare, fără a sacrifica flexibilitatea. Ceea ce învățați în faza de prototipare vă poate ajuta să luați decizii critice de proiectare hardware ulterior în implementarea soluției dvs. IoT.