Rynek urządzeń IoT - rozwój i ograniczenia

| Technika

Świat współczesny dąży do tego, aby wykorzystywać technologie "inteligentne", aby każde urządzenie techniczne, sprzęt domowy, samochody czy nawet budynki mogły w czasie rzeczywistym gromadzić i wymieniać dane przez Internet. Koncepcja ta wpisuje się w trendy określane terminami Internetu Rzeczy (IoT) i czwartej rewolucji przemysłowej (Industry 4.0). Szacuje się, że do 2020 roku do globalnej sieci ma zostać podłączonych od 25 do 50 mld urządzeń. Firma Evatronix zajmuje się budowaniem gotowych rozwiązań IoT, zaczynając od projektowania sprzętu pomiarowego, integrując go z aplikacją mobilną, a kończąc na akwizycji, przetwarzaniu i wyświetlaniu danych w Internecie.

Rynek urządzeń IoT - rozwój i ograniczenia

Od urządzeń podłączonych do Internetu wymaga się coraz większej funkcjonalności. Oprócz prostego wysyłania danych przez sieć, mogą mieć możliwości konfiguracji, kalibracji czy wysyłania różnego rodzaju powiadomień.

Evatronix w urządzeniach tego typu wykorzystuje złożone systemy SoM z procesorami firmy NXP. Są to małe konfigurowalne systemy, które cechują się względnie małym poborem energii, szerokim zakresem temperaturowym i - w porównaniu do swojej wielkości - cechują się sporą mocą obliczeniową.

System operacyjny

Na takich urządzeniach zazwyczaj znajduje się system operacyjny oparty na Linuksie. Zastosowanie systemu operacyjnego pozwala w łatwy sposób zarządzać wątkami i jednocześnie obsługiwać różne moduły zewnętrzne, takie jak GPS, GSM, Wi-Fi czy Bluetooth, co w przypadku prostszych mikrokontrolerów byłoby skomplikowane.

Linux w takich układach jest budowany przez różnego rodzaju narzędzia, między innymi Yocto, Buildroot czy OpenWRT. Pozwala to na pracę systemu niezależnie od posiadanej architektury sprzętowej. W narzędziach do budowania, można w łatwy sposób skonfigurować Kernel, dodać różnego rodzaju sterowniki do obsługi modułów oraz skonfigurować pracę układów peryferyjnych takich jak np. ADC, I²C, I²S, UART czy SPI.

Urządzenia gromadzą dane pośrednio przez różnego rodzaju czujniki m.in. temperatury, wilgotności, natężenia dźwięku, wibracji, gazów itp. Czujniki te wysyłają dane do urządzenia, wykorzystując różne interfejsy komunikacyjne, dlatego dobierając urządzenie wbudowane, trzeba przewidzieć, czy obsługuje ono te interfejsy. Aby urządzenia mogły komunikować się z Internetem, muszą mieć moduł komunikacyjny - często jest to Wi-Fi lub GSM. Zazwyczaj mają oba te moduły jednocześnie, a system operacyjny zawiera wiele narzędzi do zarządzania i konfiguracji połączenia.

Komunikacja

Jednym z wyzwań przy komunikacji z siecią jest wymóg ciągłego połączenia z Internetem. Urządzenie musi sprawdzać, czy nie wystąpiło przerwanie połączenia lub połączenie jest, ale bez możliwości pobrania i wysłania danych spowodowane np. wykorzystaniem środków na karcie SIM. W takich przypadkach system musi odpowiednio co jakiś czas sprawdzać połączenie i przełączać się między modułami.

Dodatkową zaletą komunikacji z siecią jest możliwość zlokalizowania urządzenia, co w połączeniu z modułem GPS pozwala na dokładne określenie położenia. Obecnie takie rozwiązanie stosuje się w telefonach, tabletach i innym sprzęcie wymagających dokładnej lokalizacji. Często urządzenia wyposażone są także w moduł Bluetooth, który można wykorzystać do kontroli konfiguracji i ewentualnego debugowania urządzenia.

Urządzenia IoT do komunikacji z Internetem wymagają prostych protokołów transmisji danych. Często wykorzystywany jest protokół MQTT, który jest przeznaczony do komunikacji niewymagającej dużych prędkości i przepustowości. Protokół wykorzystywany jest również w połączeniach typu maszyna-maszyna.

Po podłączeniu do Internetu urządzenie łączy się z brokerem, który jest pośrednikiem pozwalającym na wymianę danych z wieloma urządzeniami. Broker umożliwia publikację wiadomości i subskrypcję o określonym temacie. Gdy urządzenie opublikuje wiadomość, wszystkie urządzenia subskrybujące ten temat otrzymają daną wiadomość. Dane następnie gromadzone są w bazie danych, skąd mogą być pobierane do dalszego przetworzenia i przedstawione na witrynie internetowej.

Zakres temperatur pracy

Na rynku istnieje bardzo wiele gotowych modułów do szybkiego budowania prototypów urządzeń IoT. Najczęściej spotykane moduły to Raspberry Pi, Banana PI, platformy Intela czy Beagle-Bone. Są to urządzenia bardzo ułatwiające rozpoczęcie projektu, lecz często nie nadają się do zastosowań przemysłowych z uwagi na brak możliwości pracy w szerokim zakresie temperatur.

Dodatkowo, jeżeli mają być zasilane z baterii, muszą pozwalać na ograniczanie zużycia energii, na przykład poprzez ograniczenie częstotliwości wysyłania danych do sieci. Akumulatory litowo-jonowe i polimerowe mogą maksymalnie pracować w temperaturze około 60ºC. Zależne jest to także od tego, czy są w fazie ładowania czy rozładowywania, dlatego konieczne jest zapewnienie odpowiedniego chłodzenia.

Wybór platformy

Firma Evatronix oferuje także różne rozwiązania dla urządzeń, które potrzebują dużych mocy obliczeniowych oraz dla urządzeń, w których rezygnuje się z mocy na rzecz długiej pracy na baterii. W tym celu wykorzystywane są moduły SoM różnych producentów zależnie od zastosowania. W zależności od potrzeb są do wyboru jednostki o mniejszym poborze energii do zastosowań akumulatorowych, o jednym rdzeniu i niewielkiej ilości pamięci lub jednostki 2-, 4-rdzeniowe z dużą ilością pamięci.

Oczywiście, przy zastosowaniu tych drugich należy liczyć się ze zwiększonym poborem mocy oraz wzrostem temperatury urządzenia, co może wykluczyć pracę akumulatorową. Wybór właściwej platformy przy okresowej pracy na akumulatorach jest trudny, ponieważ z jednej strony oczekujemy wydajności, ale wraz z wydajnością pojawiają się problemy z zasilaniem oraz wydzielaniem się coraz większych ilości ciepła.

Przy wyborze platformy SoM należy zwracać także uwagę na dostępność modułów oraz planowany czas dostaw w przyszłości (longevity). Wielu konstruktorów mogło doświadczyć nieprzyjemnej sytuacji, gdy producent zaniechał produkcji dotychczasowych modułów na rzecz nowej linii, pozostawiając producentów elektroniki w trudnej sytuacji, w której albo uda się w miarę szybko dokonać zmian konstrukcyjnych lub programowych, albo trzeba całkowicie przeprojektować urządzenie.

Wybierając platformę SoM, warto też zastanowić się, czy potrzebny jest procesor GPU. Często GPU nie będzie wykorzystywane wcale, a może mieć znaczny wpływ na zużycie energii, przyczyniając się do opisanych już problemów. Istotne też jest, czy moduł SoM ma wbudowane interfejsy, jak np. Wi-Fi, czy Bluetooth oraz w jakiej są wersji.

Szczególnie jest to ważne przy doborze Bluetootha gdzie kolejne jego wersje wiele zmieniały, a w szczególności wielkość bloku danych w przesyłanej ramce, co może istotnie wpływać na trudności w oprogramowaniu. Na pewno ważna jest też liczba dostępnych interfejsów, by wszystkie podłączone urządzenia systemu IoT miały swój indywidualny kanał danych o odpowiedniej przepustowości.

Wybierając platformę SoM, trzeba przyjąć wiele kompromisów, uwzględniając czasem sprzeczne ze sobą wymagania. Z pewnością dobrą praktyką jest udokumentowanie wszystkich wymagań i oczekiwań oraz dopasowanie do nich komputera, tak by uniknąć trudnych do rozwiązania problemów z wydajnością lub poborem mocy. Dzięki długiemu doświadczeniu kadra firmy Evatronix z chęcią doradzi odpowiednie rozwiązanie dostosowane do potrzeb klienta.

Podsumowanie

Systemy IoT pojawiają się w wielu miejscach, ułatwiając monitoring i zarządzanie urządzeniami. Dane gromadzone w bazach danych mogą posłużyć do prawidłowego zarządzania systemem, uniknięcia awarii lub zmniejszenia nakładu pracy na utrzymanie systemu. Mogą też służyć bezpieczeństwu np. w komunikacji.

Drogowy system IoT umożliwi wymianę informacji pomiędzy autami, ostrzegając kierowcę lub nawet decydując za niego o nagłym hamowaniu. Jest wiele obszarów, w których IoT już się dobrze sprawdziło i tych, w których się wkrótce pojawi. Z pewnością jest to stale rozwijający się rynek.

Adrian Dusiński
Marek Krzyżowski
Evatronix SA