Snel AWS Cloud-gecontroleerde IoT-eindpunten maken
Bijgedragen door De Noord-Amerikaanse redacteurs van DigiKey
2021-06-22
Internet of Things (IoT)-sensoreindpunten worden in hoog tempo ingezet om commerciële en industriële processen en systemen te bewaken, en waar nodig kunstmatige intelligentie (AI) en machinaal leren (ML)-technieken toe te voegen. Met name in Industrial IoT (IIoT) worden de sensorgegevens geanalyseerd om de efficiëntie te verhogen, het stroomverbruik te verminderen, de algehele systeemprestaties te volgen, de veiligheid van werknemers te waarborgen, beveiligingsfuncties te handhaven en de uitvaltijd te verminderen door voorspellend onderhoud.
Hoewel de technologie steeds meer wordt gebruikt, kan het voor ontwerpers die nieuw zijn op het gebied van IoT en cloudbesturing een steile leercurve zijn om de kernconcepten van sensorimplementatie, inbedrijfstelling en clouddiensten en -connectiviteit te leren, waardoor ze onzeker zijn over waar ze moeten beginnen. Dit kan de ontwikkelingstijd beïnvloeden en de totale implementatiekosten verhogen.
Om de leercurve te verminderen, komen er steeds meer kant-en-klare oplossingen beschikbaar om de IoT-connectiviteit en cloudgebaseerde analyse en dashboardpresentatie te vereenvoudigen.
In dit artikel zal kort worden ingegaan op de verschuiving naar IoT-connectiviteit en clouddiensten zoals Amazon Web Services (AWS). Vervolgens wordt een AWS IoT sensor-ontwikkelbord van Microchip Technology geïntroduceerd en wordt uitgelegd hoe ontwikkelaars dit kunnen gebruiken om eenvoudig een Wi-Fi-enabled, AWS-verbonden sensorknooppunt op te zetten en aan de slag te laten gaan terwijl ze basisconcepten van IoT en cloudcontrole leren. Vervolgens wordt besproken hoe een dochterbord van MikroElektronika een snelle interface kan vormen met het Microchip bord om een 3D bewegingssensorbord te vormen dat wordt bestuurd en bewaakt via AWS.
De groeiende rol van IoT-systemen
IoT- en IIoT-netwerken breiden zich uit naar nieuwe gebieden. De meest voorkomende toepassing voor nieuwe IIoT-netwerken is het verbeteren van de productiviteit door de efficiëntie te verhogen, terwijl tegelijkertijd de veiligheid en beveiliging worden gehandhaafd en verbeterd. Procesbewaking gebeurt hoofdzakelijk door het installeren van sensoren die industriële processen en de omgeving, met inbegrip van temperatuur, vochtigheid en druk, bewaken. Bewegingsgegevens zoals versnelling, stabiliteit en schokken kunnen ook worden bewaakt, samen met eenvoudige analoge gegevens en schakelaarposities. De positie van robots, werknemers of goederen kan worden bepaald met behulp van GPS, RFID-tags of diverse draadloze driehoeksberekeningsalgoritmen.
De verzamelde sensorgegevens moeten worden geanalyseerd om niet alleen de efficiëntie te verbeteren, maar ook te zorgen voor optimale systeemprestaties. Een eenvoudige manier om deze verschillende sensors te monitoren en te controleren is ze aan te sluiten op een bestaande cloud-server. Dit bespaart tijd en moeite bij het bouwen van een aangepaste webapplicatie met de juiste beveiliging.
Voor sommige organisaties die nieuw zijn op het gebied van IoT en cloudbesturing, kan het leren van deze concepten echter een steile leercurve betekenen, waardoor facilitair managers en hun technici onzeker kunnen zijn over waar te beginnen. Dit kan leiden tot kostbare vertragingen bij de implementatie van deze IIoT-eindpunten.
Kit helpt ontwerpers snel aan de slag met IoT en IIoT
Om aan de slag te gaan met IoT-netwerken en cloud computing, heeft Microchip Technology het EV15R70A IoT Wi-Fi-ontwikkelbord met ondersteuning voor AWS geïntroduceerd (Afbeelding 1). Het bord is een complete kant-en-klare oplossing voor IoT- en AWS-connectiviteit en kan worden gebruikt als hub om sensorgegevens in het veld te verzamelen en die gegevens naar AWS te sturen om ze te analyseren en te presenteren op een eenvoudige browsergebaseerde interface. Hoewel het bord klein is, is het krachtig en biedt het veel opties voor veilige IoT-eindpunten.
Afbeelding 1: Het Microchip EV15R70A IoT Wi-Fi-ontwikkelbord is een kant-en-klare oplossing voor het aansluiten van Wi-Fi-compatibele sensors op AWS voor analyse, presentatie, monitoring en controle. (Bron afbeelding: Microchip Technology)
De EV15R70A wordt bestuurd door een Microchip Technology ATMEGA4808-MFR 20 megahertz (MHz) microcontroller met 48 kilobytes (Kbytes) flash en 6 Kbytes SRAM. Dit is voldoende geheugen om een eenvoudige IoT-sensorknooppunt te draaien, met geheugen over voor extra applicatiecode om externe apparaten te besturen, met behulp van een van de 18 getoonde poortpinnen (Pxx, bruine labels). Er zijn 256 bytes EEPROM op de chip beschikbaar voor het opslaan van kalibratieconstanten, beveiligingsinformatie, Wi-Fi-verbindingsgegevens en sensorgegevens. De ATMEGA4808-MFR heeft een krachtige 8-bit megaAVR-kern die gemakkelijk de IIoT-datatransfers kan beheren terwijl hij zeer weinig stroom verbruikt. Het stroomverbruik wordt verder verlaagd door het gebruik van een hardware-vermenigvuldiger met twee cycli die de CPU-cycli vermindert.
Voor Wi-Fi-connectiviteit heeft de ATMEGA4808 een SPI-interface met een Microchip Technology ATWINC1510-MR210PB1952 802.11b/g/n Wi-Fi-module (Afbeelding 2). Hij omvat WEP-, WPA- en WPA2-beveiliging en ondersteunt gecodeerde TLS-verbindingen (Transport Layer Security). In het onderdeelnummer van de module staat "1952" voor de firmwareversie op de ATWINC1510, dus latere borden kunnen modules met latere firmwareversies hebben.
Afbeelding 2: De Microchip Technology ATWINC1510-MR210PB 802.11b/g/n Wi-Fi module ondersteunt WEP, WPA, en WPA2 beveiliging over TLS. De interface met een host-microcontroller verloopt via een seriële SPI-poort. (Bron afbeelding: Microchip Technology)
De ATWINC1510-MR210PB heeft een geïntegreerde antenne op de printplaat, A1 in Afbeelding 2. Hierdoor is het EV15R70A ontwikkelbord direct klaar voor gebruik, wat ontwikkelaars die niet vertrouwd zijn met RF en antenne layout helpt om sneller aan de slag te gaan. Als extra Wi-Fi-bereik nodig is, kan een externe antenne worden aangesloten.
De ATWINC1510-MR210PB vereist een voeding van 2,7 tot 3,6 volt en verbruikt slechts 0,380 milliampère (mA) in de sluimerstand wanneer hij niet zendt of ontvangt. Wanneer de radio in werking is, trekt de module 269 mA (maximum) bij zenden en 61 mA bij ontvangen. Voor een IoT-eindpunt is dit laag genoeg om de batterij langer te laten werken. De module heeft de juiste certificeringen voor gebruik in Noord- en Zuid-Amerika, Europa en Azië, wat het proces vereenvoudigt van het verkrijgen van wettelijke goedkeuring voor eindontwerpen waarin de EV15R70A is verwerkt.
Gegevens versleutelen op IIoT-netwerken
Veilig internetverkeer wordt tegenwoordig doorgaans versleuteld met TLS om te voorkomen dat vijandige operatoren het onderschepte dataverkeer kunnen onderscheppen. Een "man in the middle"-aanval kan echter nog steeds gesofisticeerde methoden gebruiken om gegevens te onderscheppen en te onderscheppen door te zoeken naar zwakke plekken in de verbinding. Om de ivd-communicatie verder te beveiligen, moeten de netwerkgegevens worden versleuteld.
Om de gegevens die tussen het ontwikkelbord en AWS worden verzonden te versleutelen, bevat de EV15R70A een Microchip Technology ATECC608A-MAHCZ-T Security CryptoAuthentication-chip. De ATECC608A heeft een interface met de ATMEGA4808 via een I²C-interface en codeert en decodeert Wi-Fi-sensorgegevens. De ATECC608A ondersteunt vele encryptiestandaarden, waaronder AES-128 en SHA-256. Het wordt ook gebruikt om de publieke en private encryptie sleutels op te slaan die worden gebruikt om te communiceren met AWS.
Elke ATECC608A in elke EV15R70A ontwikkelingskaart is voorgeprogrammeerd met een set unieke publieke en private sleutels om gegevens te versleutelen en te ontsleutelen. Gedetailleerde informatie over het encryptie- en decryptiegedrag van de ATECC608A is alleen beschikbaar bij Microchip Technology onder een geheimhoudingsovereenkomst. De ATMEGA4808 flash firmware die bij de kit wordt geleverd stelt ontwikkelaars echter in staat om eenvoudig gegevens te versleutelen en te ontsleutelen tussen het ontwikkelbord en AWS, met een beetje voorkennis van versleutelingsprotocollen. Dit vereenvoudigt de werking van het IoT-eindpunt aanzienlijk voor ontwikkelaars die nieuw zijn op het gebied van encryptie.
Voor IoT-eindpunten die niet alleen tegen netwerk- maar ook tegen intensieve fysieke aanvallen moeten worden beschermd, heeft het ATECC608A-apparaat ingebouwde beveiligingsfuncties die bescherming bieden tegen fysieke inbraak. Bijvoorbeeld:
- Het kan fysieke aanvallen detecteren, zoals het ontmantelen van het apparaat in een poging de interne toestand ervan elektronisch te peilen.
- Het kan aanvallen via zijkanalen detecteren, zoals het onderdompelen van het apparaat in extreme kou in een poging om de geheugeninhoud te behouden.
- Het kan ongebruikelijke I²C activiteit detecteren, zoals zeer snelle of zeer langzame kloksnelheden, en ook niet-standaard klokgolfvormen.
- De inhoud van het interne geheugen is gecodeerd.
- Het interne circuit kan valse circuits bevatten om reverse-engineering te omzeilen.
Aansluiten van de EV15R70A op AWS
De firmware van de EV15R70A laat het ontwikkelbord toe om verbinding te maken met AWS via een beveiligde Wi-Fi verbinding. Zodra een verbinding met AWS tot stand is gebracht, kan het bord snel worden gemonitord, geconfigureerd en gecontroleerd met behulp van elke webbrowser die is verbonden met de juiste AWS-account.
Om het ontwikkelingsbord met AWS te kunnen gebruiken, moet de ontwikkelaar het bord eerst op een computer aansluiten met een USB-kabel. De computer zal het bord zien als een USB-stick met de naam CURIOSITY. De ontwikkelaar kan dan door het bord bladeren zoals hij dat zou doen met een typisch flash-geheugenapparaat. In de root staat een bestand met de toepasselijke naam CLICK-ME.HTM. Door op dit bestand te klikken wordt de startpagina van het apparaat geopend in de standaard webbrowser van de computer (Figuur 3).
Afbeelding 3: De EV15R70A wordt via een USB-kabel op een computer aangesloten en ziet eruit als een USB-flashgeheugenapparaat. Door te klikken op het bestand CLICK-ME.HTM verschijnt een webpagina in de standaard webbrowser die de gebruiker kennis laat maken met de printplaat en vraagt om de firmware van de printplaat te updaten. (Bron afbeelding: Microchip Technology)
In het beginscherm wordt de ontwikkelaar voorgesteld aan het bord en moet hij controleren of de laatste firmware is geïnstalleerd. Door te klikken op "Get the Latest Firmware" kunt u dit oplossen. Vervolgens moet de ontwikkelaar naar beneden scrollen op de webpagina naar een procedure die de ontwikkelaar instrueert hoe het bord geconfigureerd kan worden om automatisch verbinding te maken met een lokaal Wi-Fi netwerk. Als de configuratie en verbinding tot stand zijn gebracht, gaat de blauwe Wi-Fi-status-LED branden. Wanneer er verbinding is met een AWS account, zal de groene Verbindingsstatus LED oplichten. Dit geeft een visuele indicatie van de status van het bord en helpt bij het opsporen van verbindingsproblemen.
Zodra een beveiligde verbinding met AWS tot stand is gebracht en een cloud applicatie in werking is, zal de gele Data Transfer LED knipperen telkens wanneer gegevens tussen het bord en AWS worden verzonden. Het bord bevat licht- en temperatuursensoren die periodiek worden bemonsterd door de ATMEGA4808. De verkregen gegevens worden naar AWS gestuurd om online te worden bekeken.
Voor een meer geavanceerde toepassing kan de ontwikkelaar firmware schrijven voor interactie met elk van de GPIO-pennen en randapparaten. De poort voor pulsbreedtemodulatie (PWM) kan worden ingesteld om een golfvorm te genereren voor de aansturing van een motor of actuator, en de SPI en UART kunnen worden geprogrammeerd voor interactie met externe apparaten. Elk van deze interacties kan worden bewaakt en gecontroleerd vanuit een webbrowser die is verbonden met de overeenkomstige AWS-account.
De EV15R70A heeft header connectoren die compatibel zijn met mikroBUS Click-dochterborden die ook door AWS bestuurd en bewaakt kunnen worden. De MikroElektronika MIKROE-1877 bijvoorbeeld is een 3D-fusiekaart voor bewegingsensors met een drieassige versnellingsmeter, een gyroscoop en een magnetometer (Afbeelding 4). Een ingebouwde motion coprocessor bewaakt de drie sensors en stuurt data terug naar de EV45R70A via de mikroBUS Click I²C-interface.
Afbeelding 4: De MikroElektronika MIKROE-1877 is een 3D-bewegingssensorbord. Het heeft een drie-assige versnellingsmeter, een gyroscoop, een magnetometer en een sensor-fusion coprocessor die op het EV45R70A-bord wordt aangesloten via een standaard mikroBUS Click-interface. (Bron afbeelding: MikroElektronika)
Als het MIKROE-1877 3D-bewegingssensorbord in de EV45R70A wordt gestoken, kan een ontwikkelaar firmware schrijven om de gegevens te controleren en op te slaan. Een AWS-toepassing kan worden geconfigureerd om het bord te bewaken en gegevens te loggen. Wanneer de EV45R70A met de MIKROE-1877 op batterijen werkt, kan hij worden gebruikt om het gedrag van een robot, garagedeur of voertuig te volgen, en de gegevens te bekijken via een compatibele webbrowser.
Conclusie
Aan de slag gaan met IoT- of IIoT-eindpunten met cloudbesturing kan een steile leercurve hebben voor ontwikkelaars die niet bekend zijn met de concepten en de nuances van kritieke gebieden zoals beveiliging. Vaak is de beste manier om deze technologieën te begrijpen dat men al doende leert met behulp van hardware die precies daarvoor is ontworpen. Met het Microchip Technology EV45R709A AWS-ontwikkelbord kunnen ontwikkelaars snel de basisconcepten van IoT, cloudopslag en cloudbesturing leren, en tegelijkertijd een nuttig, veilig apparaat bouwen voor bewaking op afstand.
Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.




