Jak szybko tworzyć sterowane przez chmurę punkty końcowe IoT AWS

Przez: Bill Giovino

Przekazane przez: Północnoamerykańscy redaktorzy DigiKey

Monitorowanie komercyjnych i przemysłowych procesów oraz systemów, a także wdrażanie stosownych technologii uczenia maszynowego (ML) i sztucznej inteligencji (AI) wymaga szybkiego wdrażania czujnikowych punktów końcowych Internetu rzeczy (IoT). Dane z czujników, zwłaszcza w przypadku przemysłowego Internetu rzeczy (IIoT), są analizowane w celu zwiększenia wydajności, zmniejszenia zużycia energii, monitorowania ogólnej wydajności systemu, zapewnienia bezpieczeństwa pracowników, utrzymania funkcji bezpieczeństwa i skrócenia przestojów dzięki konserwacji predykcyjnej.

Wykorzystanie tej technologii rośnie, jednak dla projektantów, którzy nie znają się na Internecie rzeczy i sterowaniu w chmurze, poznanie podstawowych pojęć związanych z wdrażaniem czujników, uruchamianiem urządzeń oraz usługami w chmurze i łącznością może wymagać intensywnego uczenia się, na skutek czego nie będą do końca pewni, od czego zacząć. Taka sytuacja może wpłynąć na wydłużenie czasu wdrażania i zwiększenie jego ogólnego kosztu.

Aby skrócić krzywą uczenia się i uprościć łączność IoT oraz analizę w chmurze i wygląd pulpitu nawigacyjnego, coraz szerzej udostępnia się rozwiązania „pod klucz”.

W niniejszym artykule pokrótce omówimy przejście na łączność IoT i usługi w chmurze, takie jak platforma Amazon Web Services (AWS). Następnie przedstawimy płytkę rozwojową do czujników AWS IoT firmy Microchip Technology oraz wyjaśnimy, w jaki sposób deweloperzy mogą jej używać do łatwego przygotowywania do pracy węzła czujnikowego z obsługą Wi-Fi i łącznością z platformą AWS, jednocześnie ucząc się podstawowych koncepcji Internetu rzeczy i sterowania w chmurze. Następnie omówimy sposób, w jaki płytka podrzędna firmy Microchip Technology może łatwo współpracować z płytką Microchip, tworząc płytkę do czujników ruchu 3D, która jest sterowana i monitorowana przez platformę AWS.

Rosnąca rola systemów Internetu rzeczy (IoT)

Internet rzeczy (IoT) i przemysłowy Internet rzeczy (IIoT) zdobywają nowe obszary. Najczęstszym zastosowaniem nowych sieci IIoT jest poprawa produktywności poprzez zwiększenie wydajności przy jednoczesnym utrzymaniu i poprawie bezpieczeństwa i ochrony. Monitorowanie procesów odbywa się głównie poprzez instalację czujników monitorujących procesy przemysłowe i środowisko, w tym temperaturę, wilgotność i ciśnienie. Można również monitorować dane dotyczące ruchu, takie jak przyspieszenie, stabilność i wstrząsy, a także proste dane analogowe i pozycje przełączników. Pozycję robotów, pracowników lub zasobów można ustalić za pomocą systemu GPS, tagów identyfikacji radiowej (RFID) lub różnych bezprzewodowych algorytmów triangulacji.

Zebrane dane z czujników muszą być poddawane analizie, nie tylko aby poprawić wydajność, ale także aby zapewnić optymalne działanie systemu. Prostym sposobem monitorowania tych różnych czujników i sterowania nimi jest podłączenie ich do istniejącego serwera w chmurze. Oszczędza to czas i wysiłek w porównaniu do opracowywania spersonalizowanej aplikacji internetowej z odpowiednimi zabezpieczeniami.

Jednak w przypadku niektórych organizacji, które dopiero zaczynają korzystać z Internetu rzeczy (IoT) i sterowania w chmurze, zrozumienie tych pojęć może oznaczać konieczność intensywnego uczenia się, a zatem zarządcy obiektów i ich inżynierowie mogą nie być pewni, od czego zacząć. Może to skutkować kosztownymi opóźnieniami we wdrażaniu punktów końcowych IIoT.

Zestaw umożliwia projektantom szybkie rozpoczęcie pracy z Internetem rzeczy (IoT) i przemysłowym Internetem rzeczy (IIoT)

Aby ułatwić rozpoczęcie pracy z Internetem rzeczy (IoT) i procesami obliczeniowymi w chmurze, firma Microchip Technology wprowadziła płytkę rozwojową IoT Wi-Fi EV15R70A z obsługą platformy Amazon Web Services (AWS) (ilustracja 1). Będąca kompletnym rozwiązaniem „pod klucz” do łączności IoT i AWS płytka może być używana jako centrum do zbierania danych z czujników w terenie i wysyłania ich do platformy AWS w celu przeanalizowania i zaprezentowania w prostym interfejsie opartym na przeglądarce. Pomimo niewielkich rozmiarów, omawiana płytka ma ogromne możliwości i pozwala na tworzenie bezpiecznych punktów końcowych IoT.

Wygląd płytki rozwojowej IoT Wi-Fi EV15R70A firmy Microchip (kliknij, aby powiększyć)Ilustracja 1: płytka rozwojowa Microchip IoT Wi-Fi EV15R70A to gotowe rozwiązanie do podłączania czujników obsługujących Wi-Fi do AWS do analizy, prezentacji, monitorowania i sterowania. (Źródło ilustracji: Microchip Technology)

Za sterowanie płytką EV15R70A odpowiada mikrokontroler ATMEGA4808-MFR firmy Microchip Technology o częstotliwości 20MHz z 48kB pamięci flash i 6kB pamięci SRAM. Jest to wystarczająca ilość pamięci, aby uruchomić prosty węzeł czujnika IoT z zapasem pamięci na dodatkowy kod aplikacji do sterowania urządzeniami zewnętrznymi, przy użyciu dowolnego z pokazanych 18 wtyków portu (Pxx, brązowe oznaczenia). Do przechowywania stałych kalibracji, informacji o zabezpieczeniach, danych łączności Wi-Fi i danych z czujników płytka ma do dyspozycji 256B wbudowanej pamięci EEPROM. Mikrokontroler ATMEGA4808-MFR posiada potężny 8-bitowy rdzeń megaAVR, który może z łatwością zarządzać transferami danych IIoT, zużywając bardzo mało energii. Zużycie energii jest dodatkowo zmniejszone dzięki zastosowaniu dwucyklowego mnożnika sprzętowego, który zmniejsza cykle pracy procesora.

W przypadku łączności Wi-Fi mikrokontroler ATMEGA4808 łączy się przez interfejs SPI z modułem Wi-Fi 802.11b/g/n ATWINC1510-MR210PB1952 firmy Microchip Technology (ilustracja 2). Zawiera zabezpieczenia WEP, WPA i WPA2 oraz obsługuje szyfrowane połączenia TLS (Transport Layer Security). Cyfry „1952” w numerze katalogowym modułu oznaczają wersję oprogramowania układowego ATWINC1510, więc nowsze płytki mogą mieć moduły z nowszymi wersjami oprogramowania układowego.

Wygląd modułu 802.11b/g/n Wi-Fi ATWINC1510-MR210PB firmy Microchip TechnologyIlustracja 2: moduł 802.11b/g/n Wi-Fi ATWINC1510-MR210PB firmy Microchip Technology obsługuje zabezpieczenia WEP, WPA, i WPA2 przez protokół TLS. Łączy się z mikrokontrolerem hosta za pomocą portu szeregowego SPI. (Źródło ilustracji: Microchip Technology)

Moduł ATWINC1510-MR210PB posiada zintegrowaną antenę na płytce drukowanej, A1 na ilustracji 2. Dzięki temu płytka rozwojowa EV15R70A jest gotowa do użycia po wyjęciu z pudełka, ułatwiając deweloperom niezaznajomionym z układem RF i anteny szybsze rozpoczęcie pracy. W razie potrzeby, aby zwiększyć zasięg Wi-Fi, wystarczy podłączyć antenę zewnętrzną.

Moduł ATWINC1510-MR210PB wymaga zasilania o napięciu od 2,7 do 3,6V i zużywa tylko 0,380mA prądu w trybie drzemki, gdy nie nadaje ani nie odbiera sygnałów. Gdy radio działa, moduł pobiera 269mA (maksymalnie) podczas nadawania i 61mA podczas odbioru. W przypadku punktu końcowego IoT jest to wystarczająco mało, aby wydłużyć czas działania baterii. Moduł EV15R70A posiada odpowiednie certyfikaty do użytku w obu Amerykach, Europie i Azji, co upraszcza proces uzyskiwania aprobaty regulacyjnej dla projektów końcowych z tym modułem.

Szyfrowanie danych w sieciach IIoT

Bezpieczny ruch internetowy jest dziś zazwyczaj szyfrowany przy użyciu protokołu TLS, aby uniemożliwić wrogim operatorom zrozumienie przechwyconego ruchu danych. Jednak w czasie ataku typu MITM („człowiek po środku”) nadal mogą być wykorzystywane wyrafinowane metody przechwytywania danych poprzez wyszukiwanie luk w połączeniu. Aby dodatkowo zabezpieczyć komunikację IoT, dane sieciowe powinny być szyfrowane.

Do szyfrowania danych przesyłanych między płytką rozwojową i platformą Amazon Web Services (AWS) moduł EV15R70A zawiera układ zabezpieczający CryptoAuthentication ATECC608A-MAHCZ-T firmy Microchip Technology. Układ ATECC608A łączy się z mikrokontrolerem ATMEGA4808 przez interfejs I²C oraz szyfruje i deszyfruje dane z czujników Wi-Fi. Układ ATECC608A obsługuje wiele standardów szyfrowania, w tym AES-128 i SHA-256. Służy również do przechowywania publicznych i prywatnych kluczy szyfrowania używanych do komunikacji z AWS.

Każdy układ ATECC608A w każdej płytce rozwojowej EV15R70A jest wstępnie zaprogramowany z użyciem zestawu unikalnych kluczy publicznych i prywatnych do szyfrowania i deszyfrowania danych. Szczegółowy opis działania funkcji szyfrowania i deszyfrowania układu ATECC608A można otrzymać od firmy Microchip Technology tylko w ramach umowy o zachowaniu poufności. Jednak oprogramowanie układowe flash mikrokontrolera ATMEGA4808 dołączone do zestawu umożliwia deweloperem łatwe szyfrowanie i deszyfrowanie danych między płytką rozwojową i platformą AWS, przy niewielkiej wcześniejszej znajomości protokołów szyfrowania. To znacznie upraszcza obsługę punktu końcowego IoT dla deweloperów, którzy dopiero zaczynają korzystać z szyfrowania.

W przypadku punktów końcowych IoT, które muszą być odporne nie tylko na ataki sieciowe, ale także na intensywne ataki fizyczne, urządzenie ATECC608A ma wbudowane funkcje bezpieczeństwa, które chronią przed ingerencją fizyczną. Na przykład:

  • Potrafi wykryć fizyczne ataki, takie jak otwarcie urządzenia w celu elektronicznego sondowania jego stanu wewnętrznego.
  • Może wykrywać ataki bocznokanałowe, takie jak wystawianie urządzenia na działanie ekstremalnie niskich temperatur w celu zachowania zawartości pamięci.
  • Potrafi wykryć nietypową aktywność interfejsu I²C, taką jak bardzo wysokie lub bardzo niskie częstotliwości zegara, a także niestandardowe przebiegi zegara.
  • Zawartość pamięci wewnętrznej jest zaszyfrowana.
  • Obwody wewnętrzne mogą zawierać fałszywe obwody w celu udaremnienia prób inżynierii wstecznej.

Łączenie płytki rozwojowej EV15R70A z platformą Amazon Web Services (AWS)

Oprogramowanie układowe płytki rozwojowej EV15R70A umożliwia jej łączenie z platformą AWS przez bezpieczne połączenie Wi-Fi. Po nawiązaniu połączenia z platformą AWS, płytkę można w krótkim czasie zacząć monitorować, konfigurować i sterować nią za pomocą dowolnej przeglądarki internetowej podłączonej do odpowiedniego konta AWS.

Aby rozpocząć korzystanie z płytki rozwojowej z platformą AWS, deweloper musi najpierw podłączyć ją do komputera za pomocą kabla USB. Komputer będzie widział płytkę jako pamięć flash USB o nazwie CURIOSITY. Deweloper może wtedy przeglądać zawartość płytki podobnie jak typowe urządzenia pamięci flash. W katalogu głównym znajduje się plik o nazwie CLICK-ME.HTM. Kliknięcie tego pliku spowoduje otwarcie strony startowej urządzenia w domyślnej przeglądarce internetowej komputera (ilustracja 3).

Ilustracja przedstawiająca płytkę EV15R70A firmy Microchip podłączoną do komputera przez kabel USB (kliknij, aby powiększyć)Ilustracja 3: płytka EV15R70A podłączana do komputera za pomocą kabla USB, obsługiwana podobnie do urządzenia pamięci flash USB. Kliknięcie pliku CLICK-ME.HTM spowoduje otwarcie strony internetowej w domyślnej przeglądarce internetowej, zawierającej informacje wprowadzające dla użytkownika płytki, na której wyświetla monit o aktualizację oprogramowania układowego płytki. (Źródło ilustracji: Microchip Technology)

Na ekranie początkowym deweloper zapoznaje się z podstawowymi informacjami o płytce i powinien upewnić się, że działa na niej najnowsze oprogramowanie układowe. Służy do tego przycisk „Get the Latest Firmware” (Pobierz najnowsze oprogramowanie układowe). Następnie deweloper musi przewinąć stronę internetową do procedury z instrukcjami, jak skonfigurować płytkę, aby automatycznie łączyć się z lokalną siecią Wi-Fi. Po pomyślnym skonfigurowaniu i podłączeniu płytki zacznie świecić niebieska dioda LED Wi-Fi Status (Status Wi-Fi). Po połączeniu z kontem AWS zacznie świecić zielona dioda LED Connection Status (Status połączenia). Zapewnia to wizualne wskazanie statusu płytki i pomaga w debugowaniu połączenia.

Po nawiązaniu bezpiecznego połączenia z AWS i uruchomieniu aplikacji w chmurze żółta dioda LED Data Transfer (Transfer danych) będzie migać za każdym razem, gdy między płytką a platformą AWS będą przesyłane dane. Płytka zawiera czujniki światła i temperatury, które są okresowo próbkowane przez mikrokontroler ATMEGA4808. Pozyskane dane są przesyłane do platformy AWS w celu przeglądania online.

W przypadku bardziej zaawansowanych zastosowań deweloper może napisać oprogramowanie układowe do interakcji z dowolnymi wtykami wejścia-wyjścia ogólnego przeznaczenia (GPIO) i urządzeniami peryferyjnymi. Port modulacji szerokości impulsu (PWM) można ustawić tak, aby generował przebieg do obsługi silnika lub siłownika, a interfejsy SPI i UART można zaprogramować pod kątem interakcji z urządzeniami zewnętrznymi. Każda z tych interakcji może być monitorowana i sterowana z poziomu przeglądarki internetowej połączonej z odpowiednim kontem AWS.

Płytka rozwojowa EV15R70A posiada złącza listwowe kompatybilne z płytkami podrzędnymi mikroBUS Click, które również mogą być sterowane i monitorowane przez platformę AWS. Na przykład płytka fuzyjna MIKROE-1877 firmy MikroElektronika do obsługi czujnika ruchu 3D oraz akcelerometru trójosiowego, żyroskopu i magnetometru (ilustracja 4). Wbudowany koprocesor ruchu monitoruje trzy czujniki i przesyła dane z powrotem do płytki EV45R70A przez interfejs I²C mikroBUS Click.

Wygląd płytki czujnika ruchu 3D MIKROE-1877 firmy MikroElektronikaIlustracja 4: płytka czujnika ruchu 3D MIKROE-1877 firmy MikroElektronika. Posiada przyspieszeniomierz trójosiowy, żyroskop, magnetometr i koprocesor fuzyjny czujników, który łączy się z płytką EV45R70A przez standardowy interfejs mikroBUS Click. (Źródło ilustracji: MikroElektronika)

Po podłączeniu płytki czujnika ruchu MIKROE-1877 3D do płytki EV45R70A deweloper może napisać oprogramowanie sprzętowe służące do monitorowania i zapisywania z niego danych. Aplikację AWS można skonfigurować do monitorowania płytki i rejestrowania danych. W przypadku zasilania bateryjnego płytkę EV45R70A wraz z płytką MIKROE-1877 można używać do monitorowania zachowania robota, bramy garażowej lub pojazdu oraz do przeglądania danych z poziomu dowolnej kompatybilnej przeglądarki internetowej.

Podsumowanie

Rozpoczęcie pracy z punktami końcowymi IoT lub IIoT ze sterowaniem w chmurze może być trudne dla deweloperów, którzy nie znają pojęć i niuansów dotyczących krytycznych obszarów, takich jak bezpieczeństwo. Często najlepszym sposobem zrozumienia tych technologii jest uczenie się na bieżąco przy użyciu sprzętu zaprojektowanego właśnie do tego celu. Dzięki płytce rozwojowej EV45R709A AWS firmy Microchip Technology deweloperzy mogą szybko nauczyć się podstawowych pojęć IoT, przechowywania w chmurze i sterowania w chmurze, jednocześnie budując przydatne, bezpieczne urządzenia do zdalnego monitorowania.

DigiKey logo

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.

Informacje o autorze

Image of Bill Giovino

Bill Giovino

Bill Giovino is an Electronics Engineer with a BSEE from Syracuse University, and is one of the few people to successfully jump from design engineer, to field applications engineer, to technology marketing.

For over 25 years Bill has enjoyed promoting new technologies in front of technical and non-technical audiences alike for many companies including STMicroelectronics, Intel, and Maxim Integrated. While at STMicroelectronics, Bill helped spearhead the company’s early successes in the microcontroller industry. At Infineon Bill orchestrated the company’s first microcontroller design wins in U.S. automotive. As a marketing consultant for his company CPU Technologies, Bill has helped many companies turn underperforming products into success stories.

Bill was an early adopter of the Internet of Things, including putting the first full TCP/IP stack on a microcontroller. Bill is devoted to the message of “Sales Through Education” and the increasing importance of clear, well written communications in promoting products online. He is moderator of the popular LinkedIn Semiconductor Sales & Marketing Group and speaks B2E fluently.

Informacje o wydawcy

Północnoamerykańscy redaktorzy DigiKey