Mi az az Azure IoT-eszközfejlesztés?

Az Azure IoT olyan felügyelt és platformszolgáltatások gyűjteménye, amelyek csatlakoztatják, monitorozzák és szabályozzák az IoT-eszközöket. Az Azure IoT átfogó lehetőségeket kínál a fejlesztőknek. A lehetőségek közé tartoznak az eszközplatformok, a felhőszolgáltatások támogatása, az SDK-k, az MQTT-támogatás és az eszközalapú felhőalkalmazások készítéséhez szükséges eszközök.

Ez a cikk több fontos szempontot is áttekint az Azure IoT használatbavételét végző fejlesztők számára.

Eszközfejlesztési útvonalak

Ez a cikk két gyakori eszközfejlesztési útvonalat ismertet. Minden elérési út a kapcsolódó fejlesztési lehetőségeket és feladatokat tartalmazza.

  • Általános eszközfejlesztés: Igazodik a modern fejlesztési eljárásokhoz, magasabb szintű nyelveket céloz meg, és általános célú operációs rendszeren, például Windowson vagy Linuxon hajtja végre.

    Megjegyzés

    Ha az eszköz képes általános célú operációs rendszert futtatni, javasoljuk, hogy kövesse az Általános eszközfejlesztési útvonalat. A fejlesztési lehetőségek gazdagabb halmazát biztosítja.

  • Beágyazott eszközfejlesztés: Ez a cikk az erőforrás-korlátozott eszközökre vonatkozó fejlesztési célokat ismerteti. Gyakran erőforrás-korlátozott eszközt használ az egységenkénti költségek, az energiafogyasztás vagy az eszközméret csökkentésére. Ezek az eszközök közvetlenül irányítják az általuk futtatott hardverplatformot.

Általános eszközfejlesztés

Egyes fejlesztők a meglévő, általános célú eszközöket a felhőhöz való csatlakozáshoz és az IoT-megoldásokba való integráláshoz igazítják. Ezek az eszközök támogatják a magasabb rendű nyelveket, például a C#-t vagy a Pythont, és gyakran támogatják a robusztus általános célú operációs rendszert, például a Windowst vagy a Linuxot. A gyakori céleszközök közé tartoznak a számítógépek, a tárolók, a Raspberry Pis és a mobileszközök.

A korlátozott eszközök nagy léptékű fejlesztése helyett az általános eszközfejlesztők a felhőmegoldásuk által megkövetelt IoT-forgatókönyvek engedélyezésére összpontosítanak. Egyes fejlesztők korlátozott eszközökön is dolgoznak a felhőalapú megoldásukhoz. Az erőforrás-korlátozással rendelkező eszközökkel dolgozó fejlesztőknek tekintse meg a beágyazott eszközfejlesztési útvonalat.

Fontos

Az általános eszközfejlesztéshez használandó SDK-kkal kapcsolatos információkért lásd: Eszközoldali SDK-k.

Beágyazott eszközfejlesztés

A beágyazott fejlesztés korlátozott memóriával és feldolgozásval rendelkező korlátozott eszközöket céloz meg. A korlátozott eszközök korlátozzák, hogy mit lehet elérni a hagyományos fejlesztési platformhoz képest.

A beágyazott eszközök általában valós idejű operációs rendszert (RTOS) használnak, vagy egyáltalán nem használnak operációs rendszert. A beágyazott eszközök az általános célú operációs rendszer hiánya miatt teljes hozzáféréssel rendelkeznek a hardverük felett. Ez a tény jó választás a beágyazott eszközök számára a valós idejű rendszerekhez.

Az aktuális beágyazott SDK-k a C nyelvet célják. A beágyazott SDK-k nem biztosítanak operációs rendszert vagy Azure RTOS-támogatást. Beágyazott célokat szem előtt tartva vannak kialakítva. A tervezési szempontok közé tartozik a minimális lábnyom szükségessége és a nem aemory allokálási terv.

Fontos

A beágyazott eszközfejlesztéshez használandó SDK-kkal kapcsolatos információkért lásd a Beágyazott eszköz SDK-jait.

A hardver kiválasztása

Az Azure IoT-eszközök az IoT-megoldások alapvető építőelemei, és felelősek a környezetük megfigyeléséért és interakcióiért. Az IoT-eszközöknek számos különböző típusa van, és hasznos megérteni, hogy milyen típusú eszközök léteznek, és hogyan befolyásolhatják a fejlesztési folyamatot.

Az ebben a cikkben tárgyalt eszköztípusok közötti különbségről az IoT-eszköztípusok ismertetése című témakörben olvashat bővebben.

SDK kiválasztása

Azure IoT-eszközfejlesztőként számos különböző SDK-val, protokollokkal és eszközökkel rendelkezik az eszközalapú felhőalkalmazások létrehozásához.

Az eszközök csatlakoztatásának és a IoT Hub való kommunikációnak két fő lehetősége van:

  • Használja az Azure IoT SDK-k használatát. A legtöbb esetben azt javasoljuk, hogy használja az Azure IoT SDK-t, és ne közvetlenül az MQTT-t. Az SDK-k leegyszerűsítik a fejlesztési munkát, és leegyszerűsítik az eszközök csatlakoztatásának és kezelésének összetettségét. IoT Hub támogatja az MQTT v3.1.1 protokollt, és az IoT SDK-k leegyszerűsítik az MQTT és a IoT Hub közötti kommunikáció folyamatát.
  • Használja közvetlenül az MQTT protokollt. Az MQTT közvetlen használatához számos előnye van annak, ha IoT Hub megoldást hoz létre. Például egy olyan megoldás, amely közvetlenül az SDK-k nélkül használja az MQTT-t, a nyílt MQTT szabványra építhet. A szabványokon alapuló megközelítés hordozhatóbbá teszi a megoldást, és nagyobb vezérlést biztosít az eszközök csatlakoztatása és kommunikációja felett. A IoT Hub azonban nem teljes körű MQTT-közvetítő, és nem támogatja az MQTT 3.1.1-es szabványban megadott összes viselkedést. Az MQTT 3.1.1-es verzió részleges támogatása növeli a fejlesztési költségeket és az összetettségeket. Az eszközfejlesztőknek mérlegelnie kell az IoT-eszközoldali SDK-k és az MQTT közvetlen használatával kapcsolatos kompromisszumokat. További információ: Kommunikáció IoT Hubbal az MQTT protokoll használatával.

Az eszközfejlesztéshez három IoT SDK-készlet áll rendelkezésre:

  • Eszközoldali SDK-k (magasabb rendű nyelvek használatával meglévő általános célú eszközök IoT-alkalmazásokhoz való csatlakoztatásához)
  • Beágyazott eszközoldali SDK-k (erőforrás-korlátozott eszközök IoT-alkalmazásokhoz való csatlakoztatásához)
  • Szolgáltatási SDK-k (olyan Azure IoT-megoldások létrehozásához, amelyek eszközöket csatlakoztatnak a szolgáltatásokhoz)

Ha többet szeretne megtudni az Azure IoT-eszköz vagy szolgáltatás SDK kiválasztásáról, tekintse meg az Azure IoT Device SDK-k áttekintését.

Szolgáltatás kiválasztása

A fejlesztési folyamat egyik fő lépése, hogy kiválaszt egy szolgáltatást, amelyhez csatlakoztatni szeretné az eszközöket. Az eszközök csatlakoztatásához és kezeléséhez két elsődleges Azure IoT-szolgáltatás érhető el: IoT Hub és IoT Central.

  • Azure IoT Hub. IoT-alkalmazások üzemeltetéséhez és eszközök csatlakoztatásához használja az Iot Hubot. IoT Hub egy szolgáltatásként nyújtott platform (PaaS) alkalmazás, amely központi üzenetközpontként szolgál az IoT-alkalmazások és a csatlakoztatott eszközök közötti kétirányú kommunikációhoz. IoT Hub több millió eszköz támogatására skálázhatók. A többi Azure IoT-szolgáltatáshoz képest a IoT Hub az alkalmazásterv legnagyobb vezérlését és testreszabását biztosítja. Emellett a legtöbb fejlesztőeszközt kínálja a szolgáltatással való munkához, a fejlesztés és a felügyelet összetettségének némi növekedése árán.
  • Azure IoT Central. Az IoT Central célja az IoT-megoldások használatának egyszerűsítése. Az IoT-megoldások kiértékeléséhez használhatja a koncepció bizonyítékaként. Az IoT Central egy szolgáltatott szoftveres (SaaS) alkalmazás, amely webes felhasználói felületet biztosít az alkalmazások létrehozásának, valamint az eszközök csatlakoztatásának és kezelésének leegyszerűsítéséhez. Az IoT Central IoT Hub használ az alkalmazások létrehozásához és kezeléséhez, de a legtöbb részletet átláthatóbbá teszi a felhasználó számára.

Eszközök csatlakoztatásához és kezeléséhez szükséges eszközök

Miután kiválasztotta a használni kívánt hardvert és eszköz SDK-t, számos fejlesztői eszköz áll rendelkezésére. Ezekkel az eszközökkel csatlakoztathatja az eszközt IoT Hub, és kezelheti őket. Az alábbi táblázat a gyakori eszközbeállításokat foglalja össze.

Eszköz Dokumentáció Description
Azure Portal IoT Hub létrehozása Azure Portal Böngészőalapú portál IoT Hub és eszközökhöz. Más Azure-erőforrásokkal is működik, beleértve az IoT Centralt is.
Azure IoT Explorer Azure IoT Explorer Nem hozhatók létre IoT Hubok. Egy meglévő IoT Hubhoz csatlakozik az eszközök kezeléséhez. Gyakran használják parancssori felülettel vagy portállal.
Azure CLI IoT Hub létrehozása parancssori felülettel Parancssori felület IoT-alkalmazások létrehozásához és kezeléséhez.
Azure PowerShell IoT Hub létrehozása a PowerShell-lel PowerShell-felület IoT-alkalmazások létrehozásához és kezeléséhez
VS Code-hoz készült Azure IoT-eszközök IoT Hub létrehozása a VS Code-hoz készült eszközökkel VS Code-bővítmény IoT Hub alkalmazásokhoz.

Megjegyzés

A korábban felsorolt eszközök mellett programozott módon is létrehozhat és kezelhet IoT-alkalmazásokat REST API-k, Azure SDK-k vagy Azure Resource Manager-sablonok használatával. További információt a IoT Hub szolgáltatás dokumentációjában talál.

Következő lépések

Az eszközök Azure IoT-hez való csatlakoztatásához használható eszközoldali SDK-kkal kapcsolatos további információkért tekintse meg a következő cikket.

A gyakorlati eszközfejlesztés megkezdéséhez válasszon ki egy, a használt eszközökhöz kapcsolódó eszközfejlesztési rövid útmutatót. Az alábbi cikk áttekintést nyújt az elérhető rövid útmutatókról. Minden rövid útmutató bemutatja, hogyan hozhat létre Azure IoT-alkalmazást az eszközök üzemeltetéséhez, SDK-k használatához, eszközök csatlakoztatásához és telemetriai adatok küldéséhez.