Condividi tramite


SDK per dispositivi e servizi Azure IoT

Questi riferimenti elencano i Azure SDKs che è possibile usare per creare soluzioni IoT, tra cui SDK per dispositivi, servizi e gestione per IoT Hub e Device Provisioning Service (DPS), SDK di anteprima per la gestione dei certificati e collegamenti alle API del piano di controllo Azure Digital Twins e del piano dati.

SDK del dispositivo

Gli SDK per dispositivi Microsoft Azure IoT contengono codice che facilita la creazione di applicazioni che si connettono a e vengono gestite dai servizi di Azure IoT Hub. Questi SDK possono essere eseguiti in un dispositivo di elaborazione generico basato su MPU, ad esempio un PC, un tablet, uno smartphone o Raspberry Pi. Gli SDK supportano lo sviluppo in C e nei linguaggi gestiti moderni, inclusi in C#, Node.js, Python e Java.

Gli SDK sono disponibili in più lingue che offrono la flessibilità necessaria per scegliere il team e lo scenario più adatti.

Lingua Package origine Quickstarts Esempi Riferimento
.NET NuGet GitHub Connetti a IoT Hub Samples Riferimento
Python pip GitHub Connetti a IoT Hub Samples Riferimento
Node.js npm  GitHub Connetti a IoT Hub Samples Riferimento
Java Maven GitHub Connetti a IoT Hub Samples Riferimento
C packages GitHub Connetti a IoT Hub Samples Riferimento

L'SDK per dispositivi Java include samples per Android.

L'SDK per dispositivi C include amples per iOS che usano CocoaPods.

Avviso

Il Azure IoT C SDK non è adatto per le applicazioni incorporate a causa della gestione della memoria e del modello di threading. Per le opzioni sdk per dispositivi incorporati, vedere sdk per dispositivi incorporati.

Usare gli SDK per dispositivi per sviluppare codice da eseguire nei dispositivi IoT che si connettono a IoT Hub o IoT Central.

SDK per dispositivi incorporati

Questi SDK sono stati progettati e creati per l'esecuzione su dispositivi con risorse di calcolo e memoria limitate e vengono implementati usando il linguaggio C.

Gli SDK per dispositivi incorporati sono disponibili per più sistemi operativi che offrono la flessibilità necessaria per scegliere il più adatto allo scenario.

RTOS SDK origine Esempi Riferimento
Eclipse ThreadX middleware Azure RTOS GitHub Guide introduttive Riferimento
FreeRTOS FreeRTOS Middleware GitHub Samples Riferimento
Bare Metal Azure SDK per Embedded C GitHub Samples Riferimento

Usare gli SDK dei dispositivi incorporati per sviluppare codice da eseguire nei dispositivi IoT che si connettono a IoT Hub o IoT Central.

Per altre informazioni su quando usare gli SDK per dispositivi incorporati, vedere gli scenari di utilizzo di SDK C e SDK C incorporati.

Ciclo di vita e supporto di SDK per dispositivi

Questa sezione riepiloga i criteri relativi al ciclo di vita e al supporto di Device SDK Azure IoT. Per altre informazioni, vedere Azure SDK Ciclo di vita e criteri di supporto.

Ciclo di vita del pacchetto

I pacchetti vengono rilasciati nelle categorie seguenti. Ogni categoria ha una struttura di supporto definita.

  1. Beta: nota anche come Anteprima o Versione finale candidata. Disponibile per fini di accesso anticipato e feedback e sconsigliata per l'uso nell'ambiente di produzione. Il supporto della versione di anteprima è limitato ai problemi di GitHub. Le versioni di anteprima sono in genere attive per meno di sei mesi, dopo le quali sono deprecate o rilasciate come attive.

  2. Attiva: disponibile a livello generale e completamente supportata, riceve nuovi aggiornamenti di funzionalità, nonché correzioni di bug e sicurezza. Usare la versione più recente perché tale versione riceve correzioni e aggiornamenti.

  3. Deprecata: sostituita da una versione più recente. La deprecazione viene effettuata al momento in cui la nuova versione diventa attiva. Le versioni deprecate forniscono le correzioni di bug e di sicurezza più critiche per altri 12 mesi.

Ottenere supporto

Se si verificano problemi durante l'uso degli SDK Azure IoT, cercare supporto tramite le opzioni seguenti:

  • Reporting bugs : tutti i clienti possono segnalare bug nella pagina dei problemi per il repository GitHub associato all'SDK pertinente.

  • Microsoft team di supporto clienti - Gli utenti che dispongono di un piano support possono coinvolgere il team del supporto clienti Microsoft creando un ticket di supporto direttamente dal portale Azure.

SDK del servizio IoT Hub

Gli SDK del servizio Azure IoT contengono codice per facilitare la compilazione di applicazioni che interagiscono direttamente con IoT Hub per gestire i dispositivi e la sicurezza.

Piattaforma Package Repository di Codice Esempi Riferimento
.NET NuGet GitHub Samples Riferimento
Java Maven GitHub Samples Riferimento
nodo npm GitHub Samples Riferimento
Python pip GitHub Samples Riferimento

Per altre informazioni sull'uso degli SDK del servizio per interagire con i dispositivi tramite un hub IoT, vedere IoT Plug and Play guida per sviluppatori di servizi.

SDK di gestione IoT Hub

Gli SDK di gestione IoT Hub consentono di creare applicazioni back-end che gestiscono gli hub IoT nella sottoscrizione Azure.

Piattaforma Package Archivio di codice Riferimento
.NET NuGet GitHub Riferimento
Java Maven GitHub Riferimento
Node.js npm GitHub Riferimento
Python pip GitHub Riferimento

Le alternative agli SDK di gestione includono Azure CLI, PowerShell e APIREST.

SDK per dispositivi DPS

Gli SDK per dispositivi DPS forniscono implementazioni dell'API Register e altre che i dispositivi chiamano per effettuare il provisioning tramite DPS. Gli SDK del dispositivo possono essere eseguiti su dispositivi di elaborazione basati su MPU generali, ad esempio un PC, un tablet, uno smartphone o Raspberry Pi. Gli SDK supportano lo sviluppo in C e nei linguaggi gestiti moderni, inclusi in C#, Node.js, Python e Java.

La tabella seguente elenca gli SDK per dispositivi disponibili per ogni lingua supportata.

Piattaforma Package Archivio di codice Esempi Avvio rapido Riferimento
.NET NuGet GitHub Samples Avvio rapido Riferimento
C apt-get, MBED, IDE Arduino o iOS GitHub Samples Avvio rapido Riferimento
Java Maven GitHub Samples Avvio rapido Riferimento
Node.js npm GitHub Samples Avvio rapido Riferimento
Python pip GitHub Samples Avvio rapido Riferimento

Avviso

L'SDK C elencato in precedenza non è adatto per le applicazioni incorporate a causa della sua gestione della memoria e del modello di threading. Per i dispositivi incorporati, fare riferimento a SDK per dispositivi incorporati.

SDK per dispositivi incorporati DPS

Questi SDK sono stati progettati e creati per l'esecuzione su dispositivi con risorse di calcolo e memoria limitate e vengono implementati usando il linguaggio C.

RTOS SDK origine Esempi Riferimento
Eclipse ThreadX middleware Azure RTOS GitHub Guide introduttive Riferimento
FreeRTOS FreeRTOS Middleware GitHub Samples Riferimento
Bare Metal Azure SDK per Embedded C GitHub Samples Riferimento

Altre informazioni sugli SDK per dispositivi e dispositivi incorporati negli SDK IoT.

SDK del servizio DPS

Gli SDK del servizio DPS consentono di creare applicazioni back-end per gestire le registrazioni e i record di registrazione nelle istanze del servizio Device Provisioning.

Piattaforma Package Archivio di codice Esempi Avvio rapido Riferimento
.NET NuGet GitHub Samples Avvio rapido Riferimento
Java Maven GitHub Samples Avvio rapido Riferimento
Node.js npm GitHub Samples Avvio rapido Riferimento

SDK di gestione DPS

Gli SDK di gestione dps consentono di creare applicazioni back-end che gestiscono le istanze del servizio Device Provisioning e i relativi metadati nella sottoscrizione Azure.

Piattaforma Package Archivio di codice Riferimento
.NET NuGet GitHub Riferimento
Java Maven GitHub Riferimento
Node.js npm GitHub Riferimento
Python pip GitHub Riferimento

SDK di gestione dei certificati (anteprima)

Per gli SDK che supportano la gestione dei certificati X.509 Microsoft supportata in anteprima, usare le istruzioni e gli esempi seguenti. Per usare gli SDK di gestione dei certificati in anteprima, è necessario usare Azure IoT Hub con un'istanza del servizio Device Provisioning collegata e i dispositivi devono eseguire il provisioning tramite DPS.

SDK per dispositivi di gestione certificati (anteprima)

La tabella seguente elenca gli SDK della piattaforma che supportano attualmente la gestione dei certificati X.509 supportata Microsoft in anteprima.

Lingua Package Origine/Ramo Esempi
.NET NuGet Azure/azure-iot-sdk-csharp in feature/iot-csr-preview CertificateSigningRequestSample
Python pip Azure/azure-iot-sdk-python in feature/iot-csr-preview esempi di cert-mgmt
Node.js npm Non disponibile Non disponibile
Java Maven Azure/azure-iot-sdk-java in feature/csr certificate-signing-sample
C packages Azure/azure-iot-sdk-c in feature/dps-csr-preview iothub_ll_client_sample_certificate_signing_request

SDK per dispositivi incorporati per la gestione dei certificati (anteprima)

Nella tabella seguente sono elencati gli SDK incorporati che supportano attualmente la gestione dei certificati X.509 Microsoft supportata in anteprima.

RTOS SDK origine Esempi
FreeRTOS FreeRTOS Middleware Azure/azure-iot-middleware-freertos in feature/dps-csr-preview Non disponibile
Bare Metal Azure SDK per Embedded C Azure/azure-sdk-for-c in feature/dps-csr-preview paho_iot_hub_csr_sample.c

API del piano di controllo Azure Digital Twins

Le API del piano di controllo sono ARM API usate per gestire l'istanza di Azure Digital Twins nel suo complesso, in modo da coprire operazioni come la creazione o l'eliminazione dell'intera istanza. Queste API verranno usate anche per creare ed eliminare endpoint.

Per chiamare direttamente le API, fare riferimento alla cartella Swagger più recente nel repository Swagger control plane Swagger. Questa cartella include anche una cartella di esempi che ne illustrano l'utilizzo.

Ecco gli SDK attualmente disponibili per le API del piano di controllo Azure Digital Twins.

Linguaggio SDK Collegamento al pacchetto Documentazione di riferimento Codice sorgente
.NET (C#) Azure. ResourceManager.DigitalTwins in NuGet Reference per Azure DigitalTwins SDK per .NET Microsoft Azure Digital Twins management client library for .NET on GitHub
Java azure-resourcemanager-digitaltwins in Maven Informazioni di riferimento su Gestione risorse - Gemelli digitali Azure Resource Manager libreria client AzureDigitalTwins per Java in GitHub
JavaScript Libreria client AzureDigitalTwinsManagement per JavaScript in npm libreria client AzureDigitalTwinsManagement per JavaScript in GitHub
Python azure-mgmt-digitaltwins in PyPI Microsoft Azure SDK per Python in GitHub
Go azure-sdk-for-go/services/digitaltwins/mgmt Azure SDK per Go on GitHub

API del piano dati Azure Digital Twins

Le API del piano dati sono le API Azure Digital Twins usate per gestire gli elementi all'interno dell'istanza di Azure Digital Twins. Includono operazioni come la creazione di route, il caricamento di modelli, la creazione di relazioni e la gestione dei gemelli e possono essere suddivise sommariamente nelle categorie seguenti:

  • DigitalTwinModels : la categoria DigitalTwinModels contiene API per gestire l'models in un'istanza di Azure Digital Twins. Le attività di gestione includono caricamento, convalida, recupero ed eliminazione di modelli creati in DTDL.
  • DigitalTwins: la categoria DigitalTwins contiene le API che consentono agli sviluppatori di creare, modificare ed eliminare digital twins e le relative relazioni in un'istanza di Azure Digital Twins.
  • Query - La categoria Query consente agli sviluppatori di trovare set di gemelli digitali nel grafico gemelli tra relazioni.
  • Event Routes - La categoria Route di eventi contiene API per instradare dati, attraverso il sistema e verso i servizi downstream.
  • Import Jobs - L'API Importa processi consente di gestire un'azione asincrona a esecuzione prolungata per importare modelli, gemelli e relazioni in blocco.
  • Delete Jobs - L'API Elimina processi consente di gestire un'azione asincrona a esecuzione prolungata per eliminare tutti i modelli, i gemelli e le relazioni in un'istanza.

Per chiamare direttamente le API, fare riferimento alla cartella Swagger più recente nel repository Swagger data plane Swagger. Questa cartella include anche una cartella di esempi che ne illustrano l'utilizzo. È anche possibile vedere la documentazione di riferimento dell'API del piano dati.

Ecco gli SDK attualmente disponibili per le API del piano dati Azure Digital Twins.

Linguaggio SDK Collegamento al pacchetto Documentazione di riferimento Codice sorgente
.NET (C#) Azure. DigitalTwins.Core in NuGet Reference per Azure IoT libreria client di Gemelli digitali per .NET Azure IoT libreria client di Gemelli digitali per .NET in GitHub
Java com.azure:azure-digitaltwins-core in Maven Reference per Azure Digital Twins SDK per Java Azure IoT libreria client di Gemelli digitali per Java in GitHub
JavaScript Azure Azure Digital Twins libreria client Core per JavaScript in npm Reference for @azure/digital-twins-core Azure Azure Digital Twins Libreria client Core per JavaScript in GitHub
Python libreria client Azure Azure Digital Twins Core per Python in PyPI Informazioni di riferimento su azure-digitaltwins-core libreria client Azure Azure Digital Twins Core per Python in GitHub

Passaggi successivi

I passaggi successivi suggeriti includono: