Översikt över AZURE IoT-enhets-SDK:er
Azure IoT-enhets-SDK:er innehåller en uppsättning klientbibliotek, exempel och dokumentation för enheter. Enhets-SDK:erna förenklar processen för att ansluta enheter programmatiskt till Azure IoT. SDK:erna är tillgängliga i olika programmeringsspråk för och med stöd för flera RTOS för inbäddade enheter.
Varför ska jag använda sdk för Azure IoT-enheter?
Fördelarna med att använda en Azure IoT-enhets-SDK jämfört med att skapa ett anpassat anslutningslager beskrivs nedan:
| Anpassat anslutningslager | AZURE IoT-enhets-SDK:er | |
|---|---|---|
| Support | Behöver stödja och dokumentera din lösning | Åtkomst till Microsoft-support (GitHub, Microsoft Q&A, Microsoft Docs, kundsupport) |
| Nya funktioner | Du måste lägga till nya Azure-funktioner manuellt | Kan omedelbart dra nytta av nya funktioner som lagts till |
| Investering | Investera hundratals timmars inbäddad utveckling för att utforma, skapa, testa och underhålla en anpassad version | Kan dra nytta av kostnadsfria verktyg med öppen källkod. Den enda kostnaden som är kopplad till DEDK:erna är inlärningskurvan. |
Vilken SDK ska jag använda?
Det viktigaste att överväga när du väljer SDK är enhetens egen maskinvara. Allmänna beräkningsenheter som datorer och mobiltelefoner innehåller mikroprocessorenheter (MPPu:er) och har relativt större beräknings- och minnesresurser. En specialiserad klass av enheter, som används som sensorer eller andra specialroller, innehåller mikrostyrenheter (MCUs) och har relativt begränsade beräknings- och minnesresurser. Dessa resursbegränsade enheter kräver särskilda utvecklingsverktyg och SDK:er. I följande tabell sammanfattas de olika klasserna av enheter och vilka SDK:er som ska användas för enhetsutveckling.
| Enhetsklass | Description | Exempel | SDK:er |
|---|---|---|---|
| Inbäddade enheter | MCU-baserade enheter för särskilda ändamål med begränsningar för beräkning och minne | Sensorer | SDK:er för inbäddade enheter |
| Övrigt | Innehåller MPU-baserade enheter för generell användning med större beräknings- och minnesresurser | PC, smartphone, Raspberry Pi | Enhets-SDK:er |
Anteckning
Mer information om olika enhetskategorier så att du kan välja den bästa SDK:n för din enhet finns i Enhetstyper i Azure IoT.
Enhets-SDK:er
Dessa SDK:er kan köras på en allmän MPU-baserad databehandlingsenhet, till exempel en dator, surfplatta, smartphone eller Raspberry Pi. SDK:erna stöder utveckling i C och på moderna hanterade språk, inklusive i C#, Node.JS, Python och Java.
DU kan använda DEDK:erna på flera språk så att du kan välja det som passar bäst för ditt team och ditt scenario.
| Språk | Paket | Källa | Snabbstarter | Exempel | Referens |
|---|---|---|---|---|---|
| .NET | NuGet | GitHub | IoT Hub / IoT Central | Exempel | Referens |
| Python | Pip | GitHub | IoT Hub / IoT Central | Exempel | Referens |
| Node.js | npm | GitHub | IoT Hub / IoT Central | Exempel | Referens |
| Java | Maven | GitHub | IoT Hub / IoT Central | Exempel | Referens |
| C | Paket | GitHub | IoT Hub / IoT Central | Exempel | Referens |
Varning
C SDK som anges ovan lämpar sig inte för inbäddade program på grund av dess minneshantering och trådmodell. För inbäddade enheter refererar du till DEDK:er förinbäddade enheter.
SDK:er för inbäddade enheter
Dessa SDK:er har utformats och skapats för att köras på enheter med begränsade beräknings- och minnesresurser och implementeras med språket C.
De inbäddade enhets-SDK:erna är tillgängliga för flera operativsystem, vilket ger flexibiliteten att välja det som passar ditt team och ditt scenario bäst.
| RTOS | SDK | Källa | Exempel | Referens |
|---|---|---|---|---|
| Azure-återställningstider | Azure RTOS mellanprogram | GitHub | Snabbstarter | Referens |
| FreeRTOS | FreeRTOS-mellanprogram | GitHub | Exempel | Referens |
| Bare Metal | Azure SDK för Embedded C | GitHub | Exempel | Referens |
Nästa steg
Mer information om hur du använder Azure IoT-enhets-SDK:er för att ansluta allmänna MPU-baserade enheter finns i följande artiklar:
Mer information om hur du använder AZURE IoT-inbäddade enhets-SDK:er för att ansluta resursbegränsade MCU-baserade enheter finns i följande artikel: