Témakör:
Problémamentes IoT-kapcsolat a végkészülékektől a felhőelemzésig
Megjelent: 2015. december 03.
A dolgok internetje, a sokat emlegetett Internet of Things kezd érdekes műszaki lehetőségből iparszerűen tervezhető, professzionális platformmá átalakulni. Ennek feltétele, hogy ne kelljen mindig mindent előlről kezdeni, hanem „építőkocka-elven”, kész elemekből, igény szerint állíthassuk össze rendszerünket.
Sosem volt még ilyen egyszerű beágyazott kialakítású megoldásokat építeni a mostanában sokszor emlegetett dolgok internetéhez (IoT). Ma már egykártyás számítógépek kiterjedt tárháza áll rendelkezésre (egyesek vezeték nélküli kapcsolódási lehetőséggel), amelyek segítségével jelentős mértékben felgyorsítható az IoT-alapú tervek kidolgozása. Akár környezetérzékelő eszközöket épít a felhasználó egy ipari automatizálási folyamathoz, akár otthoni átjárót készít az energiafogyasztás ellenőrzésére és a fűtés szabályozására, biztos lehet benne, hogy talál olyan költséghatékony platformot, amely ideális megoldást jelent terveihez.
Számos, beágyazott megoldásokon dolgozó fejlesztő érzi úgy, hogy tisztában van a rendszer általános hardverkialakításával, ugyanakkor már nem olyan biztos abban, hová jutnak el és hogyan kerülnek feldolgozásra az eszközeik által generált adatok. Az IoT többek között azért olyan népszerű a vállalati szféra számára, mivel segítségével új és innovatív, szolgáltatásalapú üzleti modelleket kínálhatnak vásárlóiknak. Ahhoz azonban, hogy ezek az új tervek nyereségesen és megbízhatóan eljussanak az ügyfelekhez, új mérnöki megoldásokra van szükség. Egy olyan vállalat számára, amely márkakoncepcióját a megbízható termékek előállítására építi, rendkívüli kihívást jelenthet, hogy most ugyanilyen megbízható, ráadásul méretezhető felhőtárhelyet és elemzési platformot hozzon létre, amely képes életre kelteni az új üzleti modelleket.
Természetesnek tűnhet, hogy a potenciális szolgáltatói partnereket a vállalati IT-üzletágban keressük, akik szállítani tudják az IoT ígéretét ténylegesen beváltani képes, felhőalapú infrastruktúrát. Azonban még a legnagyobb banki vagy kereskedelmi rendszer felhasználóinak száma is nevetségesen kevésnek tűnik, ha figyelembe vesszük, hogy egy IoT-felhőrendszerhez akár több milliónyi érzékelő és más végkészülék is kapcsolódhat. Szerencsére létezik néhány olyan vállalati szintű felhőhoszt-szolgáltató, amelynek kínálatában a legkisebb végkészülékek és a méretezhető, magas szintű elérhetőséget biztosító elemzési alkalmazások számára egyaránt problémamentes kapcsolatot kínáló megoldások is szerepelnek. Az IBM a közelmúltban mutatta be „IBM Internet of Things Foundation” nevű menedzselt felhőhoszt-szolgáltatását (1. ábra), amelynek célja, hogy a vállalatok üzleti hasznot termelhessenek IoT-eszközeikkel. Ez azt mutatja, hogy az IBM megértette, hogy – miközben fontos, hogy a vállalatok gyorsan képesek legyenek elemezni, majd vizualizálni az adatokat, és betáplálni az IoT-adatokat a vállalati kezelőrendszerekbe –, ezen adatok túlnyomórészt rendkívül kis energiafogyasztású, beágyazott eszközökből származnak, amelyek integrációja komoly kihívást jelenthet.
1. ábra Az IBM Internet of Things Foundation szolgáltatás vázlata
Az IBM Internet of Things Foundation alapszintű építőkockákat kínál, amelyek segítségével megvalósítható egy teljes IoT-infrastruktúra összekapcsolása, az adatok összegyűjtése, rendezése és kezelése. Az iparágban szabványosnak számító protokollok (pl. MQTT[1] és REST[2]) segítségével számos különböző végkészülék (pl. érzékelő) köthető össze biztonságosan és kezelhető távolról. Az IBM megközelítésének egyik sarokpontja, hogy lehetővé tegye a kapcsolódást a népszerű, nyílt forráskódú fejlesztőkártyákkal (pl. Raspberry Pi) is. A rendszerben az alkalmazásnak megfelelően állítható be az adatok összegyűjtésének időintervalluma, illetve magában a felhőelemzési platformban hozható létre az elemzési és rendszervezérlési vezérlőpult is. Az IBM szolgáltatásának igazán ötletes része azonban az, hogy rendkívüli módon egyszerűsíti az adatbegyűjtési, információtovábbítási és -szabályozási folyamatok létrehozását. Az IBM Bluemix (nyílt szabványú felhőplatform) és a Node-RED (vizuális programozási környezet) segítségével gyorsan, vizuális segédletek révén állíthatja össze az adatforrásokból és érzékelőkből származó adatokat, és átadhatja azokat a felhőtárhelynek és a felhőben működő elemzőplatformnak. Az IoT-eszközökből származó adatok összekapcsolásához, tárolásához és elemzéséhez szükséges felhőszolgáltatásokat az IBM Bluemix biztosítja. A Node-RED egy vizuális programozási környezet, amely – az érzékelőktől a felhőbe irányuló „adatfolyamokat” hoz létre a hardverek és a szoftverek összekapcsolása révén.
A koncepció demonstrálása érdekében az IBM rendelkezésre bocsátott egy gyorsindítási oldalt (lásd a 2. ábrát), amelyen különböző, előre elkészített „receptek” érhetők el a fent említett beágyazott fejlesztési platformokhoz. Ezek a receptek leírják, milyen lépések szükségesek a hardver és az IBM felhőszolgáltatásai közötti kapcsolat kialakításához. Ehhez általában le kell tölteni egy programot a beágyazott célhelyen. A legtöbb ilyen program egy olyan alkalmazást is tartalmaz, amely amellett, hogy kialakítja a felhővel való kapcsolatot, mintaadatokat hoz létre és továbbít, amelyek segítségével a felhasználó valós időben is megtekintheti a vizualizációt. Számítógépe böngészőjéből ráadásul a mintavizualizációkat is áttekintheti, ehhez mindössze a szimulációs képernyőre mutató hivatkozást kell követnie. A 3. ábrán egy hőmérséklet-érzékelő szimulációja (a hőmérséklet manuálisan szabályozható), a 4. ábrán pedig az ennek megfelelő valós idejű adatkijelzés tekinthető meg. A Node-RED „folyamatokból” (flow) és „csomópontokból” (node) áll.
2. ábra IBM Bluemix gyorsindítási szimuláció
3. ábra Hőmérséklet-érzékelő szimulációja
4. ábra Szimulált érzékelőadatok valós idejű elemzése
A csomópontok olyan folyamatok, amelyeket korábban már kialakítottak a Node-RED valamelyik előre definiált funkciójával.
A Node-RED weboldal számos alapvető és külső fejlesztők által kidolgozott csomópontot tartalmaz, amelyeket a felhasználó is hozzáadhat a saját Node-RED környezetéhez. Létezik például egy külső fejlesztésű csomópont, amely „touch” (érintés) beviteli funkciót biztosít a Raspberry Pi egy adott érintőképernyő-moduljának használata esetén. A „touch” csomópont a megfelelő képernyő-pozíció továbbításáért felelős. Ezt aztán be lehet húzni egy új folyamatba, amelyet a felhasználónak kell „bekötnie”. A csomópontfunkciók nagyjából az alábbi kategóriákba tartoznak: bemenet, kimenet, funkció, közösség, tárolás és elemzés. Külső fejlesztők által létrehozott más csomópontok teszik például lehetővé – Google-diagramon – a GPIO-bemenetet/kimenetet, az NTF[3]-időbeolvasást vagy az adatok bemutatását.
Az 5. ábrán a Node-RED szerkesztőképernyője látható. Ezen ellenőrizhető, hogy a „gpio” és a „touch” csomópontok bekerültek a bal oldali alapértelmezett listába.
5. ábra Node-RED-szerkesztőképernyő
A Node-RED segítségével a felhasználó gyorsan kidolgozhatja első folyamatát. A Node-RED oldalon tekintélyes mennyiségű dokumentáció található, amelyek között példákat tartalmazó oktatóanyagok is elérhetők (lásd a 6. ábrát). Ez egy egyszerű folyamatot demonstrál, amely egy időbélyegzővel ellátott „payload” (hasznos adat) üzenetet hoz létre, majd elküldi azt a „format timestamp” (időbélyegző formázása) funkció számára. A képernyőn ez a funkció van kiemelve, a felhasználó pedig megtekintheti, milyen módon konvertálja a rendszer karaktersorrá az adatokat, majd hogyan adja át ezeket a jobb oldalon található hibakeresési panelnek.
6. ábra A dátumot karaktersorrá alakító, egyszerű Node-RED-folyamat
A Raspberry Pi 2 remek platform az IBM Internet of Things Foundation, IBM Bluemix és Node-RED segítségével történő IoT-alkalmazásfejlesztéshez. Széles körű IO-funkcióinak, valamint a hozzá elérhető számos külső gyártású LCD-kijelzőnek, a GPIO-kiterjesztésnek és a különböző vezetékmentes moduloknak köszönhetően a Raspberry Pi ideális platformot nyújt az IoT-végkészülékek realizálásához. Az IBM Bluemix és a Node-RED egyaránt részletes megvalósítási és konfigurációs utasításokat tartalmaz a Raspberry Pi-ra vonatkozóan, hogy a felhasználó magabiztosan fejleszthesse ki és alkalmazhassa IoT-megoldásait. Ez az IoT-fejlesztési módszer tehát az IBM méretezhető, hatékony és biztonságos felhőszolgáltatásait kombinálja a megbízható, bizonyított és kiterjedt dokumentációval rendelkező Raspberry Pi 2 platformmal. Nem túlzás állítani: nyerő kombináció.
Szerző: Simon Duggleby – marketingigazgató – RS Components, félvezető divízió
[1]MQTT: A TCP/IP-protokollra épülő, „pehelykönnyű” gép–gép kapcsolati (M2M) protokoll nyilvános, illetve előfizetői hálózaton.
[2]REST: (Representational State Transfer), html-alapú, egyszerű hálózatszervező protokoll
[3]Network Time Foundation: hálózati időszolgáltatás
RS Components Magyarország
Tel.: +36 1 580 2262
Fax: +36 1 580 2264
E-mail: Ez az e-mail-cím a szpemrobotok elleni védelem alatt áll. Megtekintéséhez engedélyeznie kell a JavaScript használatát.
hu.rs-online.com
Még több RS Components
Címkék: IBM | IoT | BlueMix | Node-RED