Tutorial: Menghubungkan beberapa aplikasi perangkat komponen IoT Plug and Play yang berjalan di Linux atau Windows ke IoT Hub
Tutorial ini menunjukkan cara membuat sampel aplikasi perangkat Plug and Play IoT dengan komponen, menghubungkannya ke hub IoT Anda, dan menggunakan alat penjelajah Azure IoT untuk melihat informasi yang dikirim ke hub. Aplikasi sampel ditulis dalam C dan disertakan dalam SDK perangkat Azure IoT untuk C. Penyusun solusi dapat menggunakan alat penjelajah Azure IoT untuk memahami kemampuan perangkat IoT Plug and Play tanpa perlu melihat kode perangkat apa pun.
Di tutorial ini, Anda akan:
- Unduh kode sampel.
- Bangun kode sampel.
- Jalankan aplikasi perangkat sampel dan validasi bahwa itu terhubung ke hub IoT Anda.
- Tinjau kode sumber.
Prasyarat
Sebelum melanjutkan, pastikan Anda telah menyiapkan lingkungan Anda, termasuk hub IoT Anda.
Anda dapat menyelesaikan tutorial ini di Linux atau Windows. Perintah shell dalam tutorial ini mengikuti konvensi Linux untuk pemisah jalur '/
', jika Anda mengikuti di Windows pastikan untuk menukar pemisah ini dengan '\
'.
Prasyarat berbeda menurut sistem operasi:
Linux
Tutorial ini mengasumsikan Anda menggunakan Ubuntu Linux. Langkah-langkah dalam tutorial ini diuji menggunakan Ubuntu 18.04.
Untuk menyelesaikan tutorial ini di Linux, instal perangkat lunak berikut di lingkungan Linux lokal Anda:
PasangGCC, Git, cmake, dan semua dependensi yang diperlukan menggunakan perintah apt-get
:
sudo apt-get update
sudo apt-get install -y git cmake build-essential curl libcurl4-openssl-dev libssl-dev uuid-dev
Pastikan versi cmake
di atas versi 2.8.12 dan versi GCC di atas versi 4.4.7.
cmake --version
gcc --version
Windows
Untuk menyelesaikan tutorial ini di Windows, instal perangkat lunak berikut di lingkungan Windows lokal Anda:
- Visual Studio (Komunitas, Profesional, atau Perusahaan) - pastikan Anda menyertakan beban kerja Pengembangan Desktop dengan C++ saat Anda memasang Visual Studio.
- Git.
- CMake.
Unduh kode
Jika Anda menyelesaikan Tutorial: Menyambungkan sampel aplikasi perangkat IoT Plug and Play yang berjalan di Linux atau Windows ke IoT Hub (C), Anda telah mengunduh kode.
Dalam tutorial ini, Anda menyiapkan lingkungan pengembangan yang dapat Anda gunakan untuk mengkloning dan membangun Azure IoT Hub Device C SDK.
Buka perintah di folder pilihan Anda. Jalankan perintah berikut untuk mengkloning repositori GitHub Azure IoT C SDKs dan Libraries ke lokasi ini:
git clone https://github.com/Azure/azure-iot-sdk-c.git
cd azure-iot-sdk-c
git submodule update --init
Diperlukan waktu beberapa menit untuk menyelesaikan operasi ini.
Membangun dan menjalankan kode
Anda dapat membuat dan menjalankan kode menggunakan Visual Studio atau cmake
di baris perintah.
Gunakan Visual Studio
Masuk ke folder akar repositori kloning Anda. Setelah beberapa detik, dukungan CMake di Visual Studio menciptakan semua yang Anda butuhkan untuk menjalankan dan mendebug proyek.
Saat Visual Studio siap, di Penjelajah Solusi, navigasikan ke sampel iothub_client/samples/pnp/pnp_temperature_controller/.
Klik kanan pada file pnp_temperature_controller.c dan pilih Tambahkan Konfigurasi Debug. Pilih Default.
Visual Studio membuka file launch.vs.json. Edit file ini seperti ditunjukkan dalam cuplikan berikut untuk mengatur variabel lingkungan yang diperlukan. Anda membuat catatan ID lingkup dan pendaftaran kunci primer ketika Anda menyelesaikan Pengaturan lingkungan Anda untuk IoT Plug and Play quickstarts dan tutorial:
{ "version": "0.2.1", "defaults": {}, "configurations": [ { "type": "default", "project": "iothub_client\\samples\\pnp\\pnp_temperature_controller\\pnp_temperature_controller.c", "projectTarget": "", "name": "pnp_temperature_controller.c", "env": { "IOTHUB_DEVICE_SECURITY_TYPE": "DPS", "IOTHUB_DEVICE_DPS_ID_SCOPE": "<Your ID scope>", "IOTHUB_DEVICE_DPS_DEVICE_ID": "my-pnp-device", "IOTHUB_DEVICE_DPS_DEVICE_KEY": "<Your enrollment primary key>" } } ] }
Klik kanan pada file pnp_temperature_controller.c dan pilih Atur sebagai Item Startup.
Untuk melacak eksekusi kode di Visual Studio, tambahkan titik henti ke fungsi
main
di file pnp_temperature_controller.c.Anda sekarang dapat menjalankan dan mendebug sampel dari menu Debug.
Sekarang perangkat siap untuk menerima perintah dan pembaruan properti, dan telah mulai mengirim data telemetri ke hub. Tetap jalankan sampel saat Anda menyelesaikan langkah-langkah berikutnya.
Gunakan cmake
di baris perintah
Untuk menyusun sampel:
Buat subfolder cmake di folder akar SDK perangkat kloning, dan navigasi ke folder tersebut:
cd azure-iot-sdk-c mkdir cmake cd cmake
Jalankan perintah berikut untuk membuat dan menyusun file proyek untuk SDK dan sampel:
cmake .. cmake --build .
Di Menyiapkan lingkungan Anda, Anda membuat empat variabel lingkungan guna mengonfigurasi sampel untuk menggunakan Device Provisioning Service (DPS) agar menyambungkan ke IoT Hub:
-
IOTHUB_DEVICE_SECURITY_TYPE dengan nilai
DPS
- IOTHUB_DEVICE_DPS_ID_SCOPE dengan cakupan ID DPS.
-
IOTHUB_DEVICE_DPS_DEVICE_ID dengan nilai
my-pnp-device
. - IOTHUB_DEVICE_DPS_DEVICE_KEY dengan kunci utama pendaftaran.
-
IOTHUB_DEVICE_DPS_ENDPOINT dengan nilai
global.azure-devices-provisioning.net
.
Untuk mempelajari selengkapnya tentang konfigurasi sampel, lihat sampel readme.
Untuk menjalankan sampel:
Dari folder cmake, navigasikan ke folder yang berisi file yang dapat dieksekusi dan jalankan:
# Bash cd iothub_client/samples/pnp/pnp_temperature_controller ./pnp_temperature_controller
REM Windows cd iothub_client\samples\pnp\pnp_temperature_controller\Debug pnp_temperature_controller.exe
Sekarang perangkat siap untuk menerima perintah dan pembaruan properti, dan telah mulai mengirim data telemetri ke hub. Tetap jalankan sampel saat Anda menyelesaikan langkah-langkah berikutnya.
Menggunakan penjelajah Azure IoT untuk memvalidasi kode
Setelah sampel perangkat klien dimulai, gunakan alat penjelajah Azure IoT untuk memverifikasi bahwa itu berfungsi.
Buka explorer IoT Azure.
Pada halaman hub IoT, jika Anda belum menambahkan koneksi ke hub IoT, pilih +Tambahkan koneksi. Masukkan string koneksi untuk hub IoT yang Anda buat sebelumnya dan pilih Simpan.
Pada halaman Pengaturan IoT Plug and Play, pilih + Tambahkan > folder Lokal dan pilih folder model lokal tempat Anda menyimpan file model Anda.
Pada halaman hub IoT, klik nama hub yang ingin Anda gunakan. Anda melihat daftar perangkat yang didaftarkan di hub IoT.
Klik ID Perangkat dari perangkat yang Anda buat sebelumnya.
Menu di sebelah kiri menunjukkan berbagai jenis informasi yang tersedia untuk perangkat.
Pilih Komponen IoT Plug and Play untuk melihat informasi model perangkat Anda.
Anda dapat melihat berbagai komponen perangkat. Komponen default dan komponen tambahan apa pun. Pilih komponen untuk digunakan.
Pilih halaman Telemetri lalu pilih Mulai untuk melihat data telemetri yang dikirim perangkat untuk komponen ini.
Pilih halaman Properti (baca-saja) guna melihat properti baca-saja yang dilaporkan untuk komponen ini.
Pilih halaman Properti (bisa-tulis) guna melihat properti bisa-tulis yang dapat Anda perbarui untuk komponen ini.
Pilih properti dengan nama, masukkan nilai baru untuk properti, dan pilih Perbarui nilai yang diinginkan.
Untuk melihat nilai baru muncul pilih tombol Refresh.
Pilih halaman Perintah guna melihat semua perintah untuk komponen ini.
Pilih perintah yang ingin Anda uji, atur parameternya jika ada. Pilih Kirim perintah untuk memanggil perintah di perangkat. Anda dapat melihat perangkat merespons perintah di jendela wantian perintah tempat kode sampel berjalan.
Mengulas kode
Sampel ini menerapkan perangkat pengontrol suhu Plug and Play IoT. Sampel ini mengimplementasikan model dengan beberapa komponen. File model Digital Twins Definition Language (DTDL) untuk perangkat suhu menentukan telemetri, properti, dan perintah yang diterapkan perangkat.
Fungsi pembantu IoT Plug and Play
Untuk sampel ini, kode menggunakan beberapa fungsi pembantu dari folder /common:
pnp_device_client_ll berisi metode sambungkan untuk IoT Plug and Play dengan model-id
disertakan sebagai parameter: PnP_CreateDeviceClientLLHandle
.
pnp_protocol: berisi fungsi pembantu IoT Plug and Play:
PnP_CreateReportedProperty
PnP_CreateReportedPropertyWithStatus
PnP_ParseCommandName
PnP_CreateTelemetryMessageHandle
PnP_ProcessTwinData
PnP_CopyPayloadToString
PnP_CreateDeviceClientLLHandle_ViaDps
Fungsi pembantu ini cukup umum untuk digunakan dalam proyek Anda sendiri. Sampel ini menggunakannya dalam tiga file yang sesuai dengan setiap komponen dalam model:
- pnp_deviceinfo_component
- pnp_temperature_controller
- pnp_thermostat_component
Misalnya, dalam file pnp_deviceinfo_component, fungsi SendReportedPropertyForDeviceInformation
menggunakan dua fungsi pembantu:
if ((jsonToSend = PnP_CreateReportedProperty(componentName, propertyName, propertyValue)) == NULL)
{
LogError("Unable to build reported property response for propertyName=%s, propertyValue=%s", propertyName, propertyValue);
}
else
{
const char* jsonToSendStr = STRING_c_str(jsonToSend);
size_t jsonToSendStrLen = strlen(jsonToSendStr);
if ((iothubClientResult = IoTHubDeviceClient_LL_SendReportedState(deviceClientLL, (const unsigned char*)jsonToSendStr, jsonToSendStrLen, NULL, NULL)) != IOTHUB_CLIENT_OK)
{
LogError("Unable to send reported state for property=%s, error=%d", propertyName, iothubClientResult);
}
else
{
LogInfo("Sending device information property to IoTHub. propertyName=%s, propertyValue=%s", propertyName, propertyValue);
}
}
Setiap komponen dalam sampel mengikuti pola ini.
Alur kode
Fungsi main
menginisialisasi koneksi dan mengirim ID model:
deviceClient = CreateDeviceClientAndAllocateComponents();
Kode ini digunakan PnP_CreateDeviceClientLLHandle
untuk menyambungkan ke hub IoT, mengatur modelId
sebagai opsi, dan mengatur metode perangkat dan penangan panggilan balik kembar perangkat untuk metode langsung dan pembaruan kembar perangkat:
g_pnpDeviceConfiguration.deviceMethodCallback = PnP_TempControlComponent_DeviceMethodCallback;
g_pnpDeviceConfiguration.deviceTwinCallback = PnP_TempControlComponent_DeviceTwinCallback;
g_pnpDeviceConfiguration.modelId = g_temperatureControllerModelId;
...
deviceClient = PnP_CreateDeviceClientLLHandle(&g_pnpDeviceConfiguration);
&g_pnpDeviceConfiguration
juga berisi informasi koneksi. Variabel lingkungan IOTHUB_DEVICE_SECURITY_TYPE menentukan apakah sampel menggunakan string koneksi atau layanan provisi perangkat untuk tersambung ke hub IoT.
Ketika perangkat mengirim ID model, perangkat tersebut menjadi perangkat IoT Plug and Play.
Dengan penangan panggilan balik di tempat, perangkat bereaksi terhadap pembaruan kembar dan panggilan metode langsung:
Untuk panggilan balik kembar perangkat,
PnP_TempControlComponent_DeviceTwinCallback
memanggil fungsiPnP_ProcessTwinData
untuk memproses data.PnP_ProcessTwinData
menggunakan pola pengunjung untuk menguraikan JSON dan kemudian mengunjungi setiap properti, memanggil setiap elemenPnP_TempControlComponent_ApplicationPropertyCallback
.Untuk perintah panggilan balik, fungsi
PnP_TempControlComponent_DeviceMethodCallback
menggunakan fungsi pembantu untuk menguraikan nama perintah dan komponen:PnP_ParseCommandName(methodName, &componentName, &componentNameSize, &pnpCommandName);
Fungsi
PnP_TempControlComponent_DeviceMethodCallback
kemudian memanggil perintah pada komponen:LogInfo("Received PnP command for component=%.*s, command=%s", (int)componentNameSize, componentName, pnpCommandName); if (strncmp((const char*)componentName, g_thermostatComponent1Name, g_thermostatComponent1Size) == 0) { result = PnP_ThermostatComponent_ProcessCommand(g_thermostatHandle1, pnpCommandName, rootValue, response, responseSize); } else if (strncmp((const char*)componentName, g_thermostatComponent2Name, g_thermostatComponent2Size) == 0) { result = PnP_ThermostatComponent_ProcessCommand(g_thermostatHandle2, pnpCommandName, rootValue, response, responseSize); } else { LogError("PnP component=%.*s is not supported by TemperatureController", (int)componentNameSize, componentName); result = PNP_STATUS_NOT_FOUND; }
Fungsi main
ini menginisialisasi properti baca-saja yang dikirim ke hub IoT:
PnP_TempControlComponent_ReportSerialNumber_Property(deviceClient);
PnP_DeviceInfoComponent_Report_All_Properties(g_deviceInfoComponentName, deviceClient);
PnP_TempControlComponent_Report_MaxTempSinceLastReboot_Property(g_thermostatHandle1, deviceClient);
PnP_TempControlComponent_Report_MaxTempSinceLastReboot_Property(g_thermostatHandle2, deviceClient);
Fungsi main
ini memasukkan perulangan untuk memperbarui data peristiwa dan telemetri untuk setiap komponen:
while (true)
{
PnP_TempControlComponent_SendWorkingSet(deviceClient);
PnP_ThermostatComponent_SendTelemetry(g_thermostatHandle1, deviceClient);
PnP_ThermostatComponent_SendTelemetry(g_thermostatHandle2, deviceClient);
}
Fungsi PnP_ThermostatComponent_SendTelemetry
ini menunjukkan kepada Anda cara menggunakan struct PNP_THERMOSTAT_COMPONENT
. Sampel menggunakan struct ini untuk menyimpan informasi tentang dua termostat dalam pengontrol suhu. Kode menggunakan fungsi PnP_CreateTelemetryMessageHandle
untuk menyiapkan pesan dan mengirimkannya:
messageHandle = PnP_CreateTelemetryMessageHandle(pnpThermostatComponent->componentName, temperatureStringBuffer);
...
iothubResult = IoTHubDeviceClient_LL_SendEventAsync(deviceClientLL, messageHandle, NULL, NULL);
Fungsi main
ini akhirnya menghancurkan komponen yang berbeda dan menutup koneksi ke hub.
Tutorial ini menunjukkan cara membuat sampel aplikasi perangkat Plug and Play IoT dengan komponen, menghubungkannya ke hub IoT Anda, dan menggunakan alat penjelajah Azure IoT untuk melihat informasi yang dikirim ke hub. Aplikasi sampel ditulis dalam C# dan disertakan dalam SDK perangkat Azure IoT untuk C#. Penyusun solusi dapat menggunakan alat penjelajah Azure IoT untuk memahami kemampuan perangkat IoT Plug and Play tanpa perlu melihat kode perangkat apa pun.
Di tutorial ini, Anda akan:
- Unduh kode sampel.
- Bangun kode sampel.
- Jalankan aplikasi perangkat sampel dan validasi bahwa itu terhubung ke hub IoT Anda.
- Tinjau kode sumber.
Prasyarat
Sebelum melanjutkan, pastikan Anda telah menyiapkan lingkungan Anda, termasuk hub IoT Anda.
Anda dapat menjalankan tutorial ini di Linux atau Windows. Perintah shell dalam tutorial ini mengikuti konvensi Linux untuk pemisah jalur '/
', jika Anda mengikuti di Windows pastikan untuk menukar pemisah ini dengan '\
'.
Mengkloning repositori SDK dengan kode sampel
Jika Anda menyelesaikan Tutorial: Menyambungkan sampel aplikasi perangkat IoT Plug and Play yang berjalan di Windows ke Azure IoT Hub (C#), Anda telah mengkloning repositori.
Kloning sampel dari Sampel Azure IoT untuk repositori C# GitHub. Buka perintah di folder pilihan Anda. Jalankan perintah berikut untuk mengkloning repositori GitHub Microsoft Azure IoT SDK for .NET :
git clone https://github.com/Azure/azure-iot-sdk-csharp.git
Bangun kode
Anda sekarang dapat membangun sampel dan menjalankannya. Jalankan perintah berikut untuk membuat sampel:
cd azure-iot-sdk-csharp/iothub/device/samples/solutions/PnpDeviceSamples/TemperatureController
dotnet build
Menjalankan sampel perangkat
Untuk menjalankan sampel, jalankan perintah berikut:
dotnet run
Sekarang perangkat siap untuk menerima perintah dan pembaruan properti, dan telah mulai mengirim data telemetri ke hub. Tetap jalankan sampel saat Anda menyelesaikan langkah-langkah berikutnya.
Menggunakan penjelajah Azure IoT untuk memvalidasi kode
Setelah sampel perangkat klien dimulai, gunakan alat penjelajah Azure IoT untuk memverifikasi bahwa itu berfungsi.
Buka explorer IoT Azure.
Pada halaman hub IoT, jika Anda belum menambahkan koneksi ke hub IoT, pilih +Tambahkan koneksi. Masukkan string koneksi untuk hub IoT yang Anda buat sebelumnya dan pilih Simpan.
Pada halaman Pengaturan IoT Plug and Play, pilih + Tambahkan > folder Lokal dan pilih folder model lokal tempat Anda menyimpan file model Anda.
Pada halaman hub IoT, klik nama hub yang ingin Anda gunakan. Anda melihat daftar perangkat yang didaftarkan di hub IoT.
Klik ID Perangkat dari perangkat yang Anda buat sebelumnya.
Menu di sebelah kiri menunjukkan berbagai jenis informasi yang tersedia untuk perangkat.
Pilih Komponen IoT Plug and Play untuk melihat informasi model perangkat Anda.
Anda dapat melihat berbagai komponen perangkat. Komponen default dan komponen tambahan apa pun. Pilih komponen untuk digunakan.
Pilih halaman Telemetri lalu pilih Mulai untuk melihat data telemetri yang dikirim perangkat untuk komponen ini.
Pilih halaman Properti (baca-saja) guna melihat properti baca-saja yang dilaporkan untuk komponen ini.
Pilih halaman Properti (bisa-tulis) guna melihat properti bisa-tulis yang dapat Anda perbarui untuk komponen ini.
Pilih properti dengan nama, masukkan nilai baru untuk properti, dan pilih Perbarui nilai yang diinginkan.
Untuk melihat nilai baru muncul pilih tombol Refresh.
Pilih halaman Perintah guna melihat semua perintah untuk komponen ini.
Pilih perintah yang ingin Anda uji, atur parameternya jika ada. Pilih Kirim perintah untuk memanggil perintah di perangkat. Anda dapat melihat perangkat merespons perintah di jendela wantian perintah tempat kode sampel berjalan.
Mengulas kode
Sampel ini menerapkan perangkat pengontrol suhu Plug and Play IoT. Model yang diterapkan sampel ini menggunakan beberapa komponen. File model Digital Twins Definition Language (DTDL) untuk perangkat suhu menentukan telemetri, properti, dan perintah yang diterapkan perangkat.
Kode perangkat terhubung ke hub IoT Anda menggunakan metode CreateFromConnectionString
standar. Perangkat mengirimkan ID model dari model DTDL yang diterapkannya dalam permintaan koneksi. Perangkat yang mengirim ID model adalah perangkat IoT Plug and Play:
private static DeviceClient InitializeDeviceClient(string hostname, IAuthenticationMethod authenticationMethod)
{
var options = new ClientOptions
{
ModelId = ModelId,
};
var deviceClient = DeviceClient.Create(hostname, authenticationMethod, TransportType.Mqtt, options);
deviceClient.SetConnectionStatusChangesHandler((status, reason) =>
{
s_logger.LogDebug($"Connection status change registered - status={status}, reason={reason}.");
});
return deviceClient;
}
ID model disimpan dalam kode seperti yang ditunjukkan dalam cuplikan berikut:
private const string ModelId = "dtmi:com:example:TemperatureController;1";
Setelah perangkat tersambung ke hub IoT Anda, kode mendaftarkan penangan perintah. Perintah reboot
didefinisikan dalam komponen default. Perintah getMaxMinReport
didefinisikan dalam masing-masing dari dua komponen termostat:
await _deviceClient.SetMethodHandlerAsync("reboot", HandleRebootCommandAsync, _deviceClient, cancellationToken);
await _deviceClient.SetMethodHandlerAsync("thermostat1*getMaxMinReport", HandleMaxMinReportCommandAsync, Thermostat1, cancellationToken);
await _deviceClient.SetMethodHandlerAsync("thermostat2*getMaxMinReport", HandleMaxMinReportCommandAsync, Thermostat2, cancellationToken);
Ada penangan terpisah untuk pembaruan properti yang diinginkan pada dua komponen termostat:
_desiredPropertyUpdateCallbacks.Add(Thermostat1, TargetTemperatureUpdateCallbackAsync);
_desiredPropertyUpdateCallbacks.Add(Thermostat2, TargetTemperatureUpdateCallbackAsync);
Kode sampel mengirimkan telemetri dari setiap komponen termostat:
await SendTemperatureAsync(Thermostat1, cancellationToken);
await SendTemperatureAsync(Thermostat2, cancellationToken);
Metode SendTemperatureTelemetryAsync
ini menggunakan kelas PnpHelper
untuk membuat pesan untuk setiap komponen:
using Message msg = PnpHelper.CreateIothubMessageUtf8(telemetryName, JsonConvert.SerializeObject(currentTemperature), componentName);
Kelas PnpHelper
berisi metode sampel lain yang dapat Anda gunakan dengan model beberapa komponen.
Gunakan alat penjelajah Azure IoT untuk melihat telemetri dan properti dari dua komponen termostat:
Anda juga dapat menggunakan alat penjelajah Azure IoT untuk memanggil perintah di salah satu dari dua komponen termostat, atau di komponen default.
Tutorial ini menunjukkan cara membuat sampel aplikasi perangkat Plug and Play IoT dengan komponen, menghubungkannya ke hub IoT Anda, dan menggunakan alat penjelajah Azure IoT untuk melihat informasi yang dikirim ke hub. Aplikasi sampel ditulis dalam Java dan disertakan dalam SDK perangkat Azure IoT untuk Java. Penyusun solusi dapat menggunakan alat penjelajah Azure IoT untuk memahami kemampuan perangkat IoT Plug and Play tanpa perlu melihat kode perangkat apa pun.
Di tutorial ini, Anda akan:
- Unduh kode sampel.
- Bangun kode sampel.
- Jalankan aplikasi perangkat sampel dan validasi bahwa itu terhubung ke hub IoT Anda.
- Tinjau kode sumber.
Prasyarat
Sebelum melanjutkan, pastikan Anda telah menyiapkan lingkungan Anda, termasuk hub IoT Anda.
Anda dapat menjalankan tutorial ini di Linux atau Windows. Perintah shell dalam tutorial ini mengikuti konvensi Linux untuk pemisah jalur '/
', jika Anda mengikuti di Windows pastikan untuk menukar pemisah ini dengan '\
'.
Untuk menyelesaikan tutorial ini, instal perangkat lunak berikut di lingkungan pengembangan lokal Anda:
Unduh kode
Jika Anda menyelesaikan Tutorial: Menyambungkan sampel aplikasi perangkat IoT Plug and Play ke IoT Hub (Java), Anda telah mengkloning repositori.
Buka perintah di direktori pilihan Anda. Jalankan perintah berikut untuk mengklon repositori GitHub Azure IoT Java SDK and Library ke lokasi ini:
git clone https://github.com/Azure/azure-iot-sdk-java.git
Diperlukan waktu beberapa menit untuk menyelesaikan operasi ini.
Bangun kode
Navigasi ke folder akar sampel pengontrol suhu di repositori Java SDK kloning dan buat:
cd azure-iot-sdk-java/device/iot-device-samples/pnp-device-sample/temperature-controller-device-sample
mvn clean package
Menjalankan sampel perangkat
Di Menyiapkan lingkungan Anda, Anda membuat empat variabel lingkungan guna mengonfigurasi sampel untuk menggunakan Device Provisioning Service (DPS) agar menyambungkan ke IoT Hub:
-
IOTHUB_DEVICE_SECURITY_TYPE dengan nilai
DPS
- IOTHUB_DEVICE_DPS_ID_SCOPE dengan cakupan ID DPS.
-
IOTHUB_DEVICE_DPS_DEVICE_ID dengan nilai
my-pnp-device
. - IOTHUB_DEVICE_DPS_DEVICE_KEY dengan kunci utama pendaftaran.
-
IOTHUB_DEVICE_DPS_ENDPOINT dengan nilai
global.azure-devices-provisioning.net
.
Untuk menjalankan aplikasi sampel, navigasikan ke folder /device/iot-device-samples/pnp-device-sample/temperature-controller-device-sample dan jalankan perintah berikut:
mvn exec:java -Dexec.mainClass="samples.com.microsoft.azure.sdk.iot.device.TemperatureController"
Sekarang perangkat siap untuk menerima perintah dan pembaruan properti, dan telah mulai mengirim data telemetri ke hub. Tetap jalankan sampel saat Anda menyelesaikan langkah-langkah berikutnya.
Menggunakan penjelajah Azure IoT untuk memvalidasi kode
Setelah sampel perangkat klien dimulai, gunakan alat penjelajah Azure IoT untuk memverifikasi bahwa itu berfungsi.
Buka explorer IoT Azure.
Pada halaman hub IoT, jika Anda belum menambahkan koneksi ke hub IoT, pilih +Tambahkan koneksi. Masukkan string koneksi untuk hub IoT yang Anda buat sebelumnya dan pilih Simpan.
Pada halaman Pengaturan IoT Plug and Play, pilih + Tambahkan > folder Lokal dan pilih folder model lokal tempat Anda menyimpan file model Anda.
Pada halaman hub IoT, klik nama hub yang ingin Anda gunakan. Anda melihat daftar perangkat yang didaftarkan di hub IoT.
Klik ID Perangkat dari perangkat yang Anda buat sebelumnya.
Menu di sebelah kiri menunjukkan berbagai jenis informasi yang tersedia untuk perangkat.
Pilih Komponen IoT Plug and Play untuk melihat informasi model perangkat Anda.
Anda dapat melihat berbagai komponen perangkat. Komponen default dan komponen tambahan apa pun. Pilih komponen untuk digunakan.
Pilih halaman Telemetri lalu pilih Mulai untuk melihat data telemetri yang dikirim perangkat untuk komponen ini.
Pilih halaman Properti (baca-saja) guna melihat properti baca-saja yang dilaporkan untuk komponen ini.
Pilih halaman Properti (bisa-tulis) guna melihat properti bisa-tulis yang dapat Anda perbarui untuk komponen ini.
Pilih properti dengan nama, masukkan nilai baru untuk properti, dan pilih Perbarui nilai yang diinginkan.
Untuk melihat nilai baru muncul pilih tombol Refresh.
Pilih halaman Perintah guna melihat semua perintah untuk komponen ini.
Pilih perintah yang ingin Anda uji, atur parameternya jika ada. Pilih Kirim perintah untuk memanggil perintah di perangkat. Anda dapat melihat perangkat merespons perintah di jendela wantian perintah tempat kode sampel berjalan.
Mengulas kode
Sampel ini menerapkan perangkat pengontrol suhu Plug and Play IoT. Model yang diterapkan sampel ini menggunakan beberapa komponen. File model Digital Twins Definition Language (DTDL) untuk perangkat suhu menentukan telemetri, properti, dan perintah yang diterapkan perangkat.
Kode perangkat menggunakan kelas DeviceClient
standar untuk tersambung ke IoT hub Anda. Perangkat mengirimkan ID model dari model DTDL yang diterapkannya dalam permintaan koneksi. Perangkat yang mengirim ID model adalah perangkat IoT Plug and Play:
private static void initializeDeviceClient() throws URISyntaxException, IOException {
ClientOptions options = new ClientOptions();
options.setModelId(MODEL_ID);
deviceClient = new DeviceClient(deviceConnectionString, protocol, options);
deviceClient.registerConnectionStatusChangeCallback((status, statusChangeReason, throwable, callbackContext) -> {
log.debug("Connection status change registered: status={}, reason={}", status, statusChangeReason);
if (throwable != null) {
log.debug("The connection status change was caused by the following Throwable: {}", throwable.getMessage());
throwable.printStackTrace();
}
}, deviceClient);
deviceClient.open();
}
ID model disimpan dalam kode seperti yang ditunjukkan dalam cuplikan berikut:
private static final String MODEL_ID = "dtmi:com:example:Thermostat;1";
Setelah perangkat tersambung ke hub IoT Anda, kode mendaftarkan penangan perintah.
deviceClient.subscribeToDeviceMethod(new MethodCallback(), null, new MethodIotHubEventCallback(), null);
Ada penangan terpisah untuk pembaruan properti yang diinginkan pada dua komponen termostat:
deviceClient.startDeviceTwin(new TwinIotHubEventCallback(), null, new GenericPropertyUpdateCallback(), null);
Map<Property, Pair<TwinPropertyCallBack, Object>> desiredPropertyUpdateCallback = Stream.of(
new AbstractMap.SimpleEntry<Property, Pair<TwinPropertyCallBack, Object>>(
new Property(THERMOSTAT_1, null),
new Pair<>(new TargetTemperatureUpdateCallback(), THERMOSTAT_1)),
new AbstractMap.SimpleEntry<Property, Pair<TwinPropertyCallBack, Object>>(
new Property(THERMOSTAT_2, null),
new Pair<>(new TargetTemperatureUpdateCallback(), THERMOSTAT_2))
).collect(Collectors.toMap(AbstractMap.SimpleEntry::getKey, AbstractMap.SimpleEntry::getValue));
deviceClient.subscribeToTwinDesiredProperties(desiredPropertyUpdateCallback);
Kode sampel mengirimkan telemetri dari setiap komponen termostat:
sendTemperatureReading(THERMOSTAT_1);
sendTemperatureReading(THERMOSTAT_2);
Metode sendTemperatureReading
ini menggunakan kelas PnpHelper
untuk membuat pesan untuk setiap komponen:
Message message = PnpHelper.createIotHubMessageUtf8(telemetryName, currentTemperature, componentName);
Kelas PnpHelper
berisi metode sampel lain yang dapat Anda gunakan dengan model beberapa komponen.
Gunakan alat penjelajah Azure IoT untuk melihat telemetri dan properti dari dua komponen termostat:
Anda juga dapat menggunakan alat penjelajah Azure IoT untuk memanggil perintah di salah satu dari dua komponen termostat, atau di komponen default.
Tutorial ini menunjukkan cara membuat sampel aplikasi perangkat Plug and Play IoT dengan komponen, menghubungkannya ke hub IoT Anda, dan menggunakan alat penjelajah Azure IoT untuk melihat informasi yang dikirim ke hub. Aplikasi sampel ditulis untuk Node.js dan disertakan dalam SDK Perangkat Azure IoT Hub untuk Node.js. Penyusun solusi dapat menggunakan alat penjelajah Azure IoT untuk memahami kemampuan perangkat IoT Plug and Play tanpa perlu melihat kode perangkat apa pun.
Di tutorial ini, Anda akan:
- Unduh kode sampel.
- Jalankan aplikasi perangkat sampel dan validasi bahwa itu terhubung ke hub IoT Anda.
- Tinjau kode sumber.
Prasyarat
Sebelum melanjutkan, pastikan Anda telah menyiapkan lingkungan Anda, termasuk hub IoT Anda.
Untuk menyelesaikan tutorial ini, Anda memerlukan Node.js di komputer pengembangan Anda. Anda dapat mengunduh versi terbaru yang direkomendasikan untuk beberapa platform dari nodejs.org.
Anda dapat memverifikasi versi Node.js saat ini di komputer pengembangan Anda menggunakan perintah berikut:
node --version
Unduh kode
Jika Anda menyelesaikan Tutorial: Menyambungkan sampel aplikasi perangkat IoT Plug and Play yang berjalan di Windows ke IoT Hub (Node), Anda telah mengkloning repositori.
Buka perintah di direktori pilihan Anda. Jalankan perintah berikut untuk mengkloning repositori GitHub Microsoft Azure IoT SDK untuk Node.js ke lokasi ini:
git clone https://github.com/Azure/azure-iot-sdk-node
Instal pustaka yang diperlukan
Anda menggunakan SDK perangkat untuk membuat kode sampel yang disertakan. Aplikasi yang Anda buat mensimulasikan perangkat Plug and Play dengan beberapa komponen yang terhubung ke hub IoT. Aplikasi mengirim telemetri dan properti dan menerima perintah.
- Di jendela terminal lokal, buka folder repositori dikloning dan navigasikan ke folder /azure-iot-sdk-node/device/samples/javascript. Kemudian jalankan perintah berikut untuk menginstal pustaka yang diperlukan:
npm install
Perintah ini menginstal file npm yang relevan yang diperlukan untuk menjalankan sampel di folder.
Mengulas kode
Navigasi ke folder azure-iot-sdk-node/device/samples/javascript .
Folder azure-iot-sdk-node/device/samples/javascript berisi kode sampel untuk perangkat pengontrol suhu IoT Plug and Play.
Kode dalam file pnp_temperature_controller.js mengimplementasikan perangkat pengontrol suhu IoT Plug and Play. Model yang diterapkan sampel ini menggunakan beberapa komponen. File model Digital Twins Definition Language (DTDL) untuk perangkat suhu menentukan telemetri, properti, dan perintah yang diterapkan perangkat.
Buka file pnp_temperature_controller.js di editor kode pilihan Anda. Kode sampel menunjukkan cara:
modelId
Tentukan DTMI untuk perangkat yang Anda terapkan. DTMI ini ditentukan pengguna dan harus cocok dengan DTMI dari model DTDL pengontrol suhu.Menerapkan komponen yang ditentukan dalam model DTDL pengontrol suhu. Komponen dalam pengontrol suhu nyata harus menerapkan dua antarmuka ini. Kedua antarmuka ini sudah diterbitkan di repositori pusat. Dalam sampel ini, dua antarmuka adalah:
- Termostat
- Informasi perangkat yang dikembangkan oleh Azure
Tentukan nama komponen. Sampel ini memiliki dua termostat dan satu komponen informasi perangkat.
Tentukan nama perintah untuk perintah yang ditanggapi perangkat.
Tentukan konstanta
serialNumber
.serialNumber
telah diperbaiki pada perangkat apa pun.Tentukan penangan perintah.
Tentukan fungsi untuk mengirim respons perintah.
Tentukan fungsi bantuan untuk mencatat permintaan perintah.
Tentukan fungsi bantuan untuk membuat properti.
Tentukan pendengar untuk pembaruan properti.
Tentukan fungsi untuk mengirim telemetri dari perangkat ini. Termostat dan komponen default, keduanya mengirimkan telemetri. Fungsi ini menerima nama komponen sebagai parameter.
Tentukan fungsi
main
yang:Menggunakan SDK perangkat untuk membuat perangkat klien dan terhubung ke hub IoT Anda. Perangkat memasok
modelId
sehingga IoT Hub dapat mengidentifikasi perangkat sebagai perangkat IoT Plug and Play.Mulai mendengarkan permintaan perintah menggunakan fungsi
onDeviceMethod
. Fungsi menyiapkan pendengar untuk permintaan perintah dari layanan:- DTDL perangkat menentukan perintah
reboot
dangetMaxMinReport
. - Fungsi
commandHandler
menentukan bagaimana perangkat merespons sebuah perintah.
- DTDL perangkat menentukan perintah
Mulai mengirim telemetri dengan menggunakan
setInterval
dansendTelemetry
.Menggunakan fungsi
helperCreateReportedPropertiesPatch
untuk membuat properti danupdateComponentReportedProperties
untuk memperbarui properti.Menggunakan
desiredPropertyPatchListener
untuk mendengarkan pembaruan properti.Menonaktifkan semua pendengar dan tugas, dan keluar dari perulangan saat Anda menekan Q atau q.
Di Menyiapkan lingkungan Anda, Anda membuat empat variabel lingkungan guna mengonfigurasi sampel untuk menggunakan Device Provisioning Service (DPS) agar menyambungkan ke IoT Hub:
-
IOTHUB_DEVICE_SECURITY_TYPE dengan nilai
DPS
- IOTHUB_DEVICE_DPS_ID_SCOPE dengan cakupan ID DPS.
-
IOTHUB_DEVICE_DPS_DEVICE_ID dengan nilai
my-pnp-device
. - IOTHUB_DEVICE_DPS_DEVICE_KEY dengan kunci utama pendaftaran.
-
IOTHUB_DEVICE_DPS_ENDPOINT dengan nilai
global.azure-devices-provisioning.net
.
Untuk mempelajari selengkapnya tentang konfigurasi sampel, lihat sampel readme.
Sekarang setelah Anda melihat kode, gunakan perintah berikut untuk menjalankan sampel:
node pnp_temperature_controller.js
Anda melihat output berikut, yang menunjukkan perangkat mengirim data telemetri ke hub, dan sekarang siap untuk menerima perintah dan pembaruan properti.
Tetap jalankan sampel saat Anda menyelesaikan langkah-langkah berikutnya.
Menggunakan penjelajah Azure IoT untuk memvalidasi kode
Setelah sampel perangkat klien dimulai, gunakan alat penjelajah Azure IoT untuk memverifikasi bahwa itu berfungsi.
Buka explorer IoT Azure.
Pada halaman hub IoT, jika Anda belum menambahkan koneksi ke hub IoT, pilih +Tambahkan koneksi. Masukkan string koneksi untuk hub IoT yang Anda buat sebelumnya dan pilih Simpan.
Pada halaman Pengaturan IoT Plug and Play, pilih + Tambahkan > folder Lokal dan pilih folder model lokal tempat Anda menyimpan file model Anda.
Pada halaman hub IoT, klik nama hub yang ingin Anda gunakan. Anda melihat daftar perangkat yang didaftarkan di hub IoT.
Klik ID Perangkat dari perangkat yang Anda buat sebelumnya.
Menu di sebelah kiri menunjukkan berbagai jenis informasi yang tersedia untuk perangkat.
Pilih Komponen IoT Plug and Play untuk melihat informasi model perangkat Anda.
Anda dapat melihat berbagai komponen perangkat. Komponen default dan komponen tambahan apa pun. Pilih komponen untuk digunakan.
Pilih halaman Telemetri lalu pilih Mulai untuk melihat data telemetri yang dikirim perangkat untuk komponen ini.
Pilih halaman Properti (baca-saja) guna melihat properti baca-saja yang dilaporkan untuk komponen ini.
Pilih halaman Properti (bisa-tulis) guna melihat properti bisa-tulis yang dapat Anda perbarui untuk komponen ini.
Pilih properti dengan nama, masukkan nilai baru untuk properti, dan pilih Perbarui nilai yang diinginkan.
Untuk melihat nilai baru muncul pilih tombol Refresh.
Pilih halaman Perintah guna melihat semua perintah untuk komponen ini.
Pilih perintah yang ingin Anda uji, atur parameternya jika ada. Pilih Kirim perintah untuk memanggil perintah di perangkat. Anda dapat melihat perangkat merespons perintah di jendela wantian perintah tempat kode sampel berjalan.
Tutorial ini menunjukkan cara membuat sampel aplikasi perangkat Plug and Play IoT dengan komponen, menghubungkannya ke hub IoT Anda, dan menggunakan alat penjelajah Azure IoT untuk melihat informasi yang dikirim ke hub. Aplikasi sampel ditulis dengan Python dan disertakan dalam SDK perangkat Azure IoT untuk Python. Penyusun solusi dapat menggunakan alat penjelajah Azure IoT untuk memahami kemampuan perangkat IoT Plug and Play tanpa perlu melihat kode perangkat apa pun.
Di tutorial ini, Anda akan:
- Unduh kode sampel.
- Jalankan aplikasi perangkat sampel dan validasi bahwa itu terhubung ke hub IoT Anda.
- Tinjau kode sumber.
Prasyarat
Sebelum melanjutkan, pastikan Anda telah menyiapkan lingkungan Anda, termasuk hub IoT Anda.
Anda dapat menjalankan tutorial ini di Linux atau Windows. Perintah shell dalam tutorial ini mengikuti konvensi Linux untuk pemisah jalur '/
', jika Anda mengikuti di Windows pastikan untuk menukar pemisah ini dengan '\
'.
Untuk menyelesaikan tutorial ini, Anda memerlukan Python yang diinstal pada komputer pengembangan Anda. Periksa Azure IoT Python SDK untuk persyaratan versi Python saat ini. Anda dapat memeriksa versi Python Anda dengan perintah berikut:
python --version
Anda dapat mengunduh versi terbaru yang disarankan untuk berbagai platform dari python.org.
Unduh kode
Paket perangkat azure-iot diterbitkan sebagai PIP.
Di lingkungan Python lokal Anda, instal paket sebagai berikut:
pip install azure-iot-device
Jika Anda menyelesaikan Tutorial: Menyambungkan contoh aplikasi perangkat IoT Plug and Play yang berjalan di Windows ke IoT Hub (Python), Anda telah mengkloning repositori.
Kloning repositori Python SDK IoT:
git clone --branch v2 https://github.com/Azure/azure-iot-sdk-python
Mengulas kode
Sampel ini menerapkan perangkat pengontrol suhu Plug and Play IoT. Model yang diterapkan sampel ini menggunakan beberapa komponen. File model Digital Twins Definition Language (DTDL) untuk perangkat suhu menentukan telemetri, properti, dan perintah yang diterapkan perangkat.
Folder azure-iot-sdk-python/samples/pnp berisi kode sampel untuk perangkat IoT Plug and Play. File untuk sampel pengontrol suhu adalah:
- temp_controller_with_thermostats.py
- pnp_helper.py
Pengontrol suhu memiliki beberapa komponen dan komponen default, berdasarkan model DTDL pengontrol suhu.
Buka file temp_controller_with_thermostats.py pada editor yang Anda pilih. Kode dalam file ini:
Impor
pnp_helper.py
untuk mendapatkan akses ke metode bantuan.Menentukan dua pengidentifikasi model kembar digital (DTMIs) yang secara unik mewakili dua antarmuka yang berbeda, yang ditentukan dalam model DTDL. Komponen dalam pengontrol suhu nyata harus menerapkan dua antarmuka ini. Kedua antarmuka ini sudah diterbitkan di repositori pusat. DTMI ini harus diketahui pengguna dan bervariasi tergantung pada skenario implementasi perangkat. Untuk sampel saat ini, dua antarmuka ini mewakili:
- Termostat
- Informasi perangkat yang dikembangkan oleh Azure.
Menentukan DTMI
model_id
untuk perangkat yang sedang diterapkan. DTMI ditentukan oleh pengguna dan harus cocok dengan DTMI dalam file model DTDL.Menentukan nama yang diberikan untuk komponen dalam file DTDL. Terdapat dua termostat di DTDL dan satu komponen informasi perangkat. Konstanta yang disebut
serial_number
juga ditentukan dalam komponen default.serial_number
tidak dapat diubah untuk perangkat.Menentukan implementasi pengendali perintah. Handler ini menentukan apa yang dilakukan perangkat saat menerima permintaan perintah.
Menentukan fungsi untuk membuat respons perintah. Fungsi-fungsi ini menentukan bagaimana perangkat merespons permintaan perintah. Anda membuat fungsi respons perintah jika perintah perlu mengirim respons kustom kembali ke hub IoT. Jika fungsi respons untuk suatu perintah tidak disediakan, respons umum akan dikirim. Dalam sampel ini, hanya perintah getMaxMinReport yang memiliki respons kustom.
Menentukan fungsi untuk mengirim telemetri dari perangkat ini. Termostat dan komponen default, keduanya mengirimkan telemetri. Fungsi ini memiliki parameter nama komponen opsional untuk memungkinkannya mengidentifikasi komponen mana yang mengirim telemetri.
Menentukan pendengar untuk permintaan perintah.
Menentukan pendengar untuk pembaruan properti yang diinginkan.
Memiliki fungsi
main
yang:Menggunakan SDK perangkat untuk membuat perangkat klien dan terhubung ke hub IoT Anda. Perangkat mengirimkan
model_id
sehingga hub IoT dapat mengidentifikasi perangkat sebagai perangkat IoT Plug and Play.Menggunakan fungsi
create_reported_properties
dalam file bantuan untuk membuat properti. Berikan nama komponen, dan properti sebagai pasangan nilai kunci ke fungsi ini.Perbarui properti yang dapat dibaca untuk komponennya dengan memanggil
patch_twin_reported_properties
.Mulai mendengarkan permintaan perintah menggunakan fungsi
execute_command_listener
. Fungsi mengatur pendengar untuk permintaan perintah dari layanan. Saat menyiapkan pendengar, Anda menyediakanmethod_name
,user_command_handler
, dan opsionalcreate_user_response_handler
sebagai parameter.-
method_name
menentukan permintaan perintah. Dalam sampel ini, model menentukan perintah reboot, dan getMaxMinReport. - Fungsi
user_command_handler
menentukan apa yang harus dilakukan perangkat saat menerima perintah. - Fungsi
create_user_response_handler
membuat respons untuk dikirim ke hub IoT Anda saat perintah berhasil dijalankan. Anda dapat melihat respons ini di portal. Jika fungsi ini tidak tersedia, respons umum akan dikirim ke layanan.
-
Menggunakan
execute_property_listener
untuk mendengarkan pembaruan properti.Mulai mengirim telemetri menggunakan
send_telemetry
. Kode sampel menggunakan perulangan untuk memanggil tiga fungsi pengiriman telemetri. Masing-masing dipanggil setiap delapan detikMenonaktifkan semua pendengar dan tugas, dan keluar dari perulangan saat Anda menekan Q atau q.
Di Menyiapkan lingkungan Anda, Anda membuat empat variabel lingkungan guna mengonfigurasi sampel untuk menggunakan Device Provisioning Service (DPS) agar menyambungkan ke IoT Hub:
-
IOTHUB_DEVICE_SECURITY_TYPE dengan nilai
DPS
- IOTHUB_DEVICE_DPS_ID_SCOPE dengan cakupan ID DPS.
-
IOTHUB_DEVICE_DPS_DEVICE_ID dengan nilai
my-pnp-device
. - IOTHUB_DEVICE_DPS_DEVICE_KEY dengan kunci utama pendaftaran.
-
IOTHUB_DEVICE_DPS_ENDPOINT dengan nilai
global.azure-devices-provisioning.net
.
Untuk mempelajari selengkapnya tentang konfigurasi sampel, lihat sampel readme.
Gunakan perintah berikut untuk menjalankan sampel:
python temp_controller_with_thermostats.py
Perangkat sampel mengirimkan pesan telemetri setiap beberapa detik ke hub IoT Anda.
Anda melihat output berikut, yang menunjukkan perangkat mengirim data telemetri ke hub, dan sekarang siap menerima perintah dan pembaruan properti.
Tetap jalankan sampel saat Anda menyelesaikan langkah-langkah berikutnya.
Menggunakan penjelajah Azure IoT untuk memvalidasi kode
Setelah sampel perangkat klien dimulai, gunakan alat penjelajah Azure IoT untuk memverifikasi bahwa itu berfungsi.
Buka explorer IoT Azure.
Pada halaman hub IoT, jika Anda belum menambahkan koneksi ke hub IoT, pilih +Tambahkan koneksi. Masukkan string koneksi untuk hub IoT yang Anda buat sebelumnya dan pilih Simpan.
Pada halaman Pengaturan IoT Plug and Play, pilih + Tambahkan > folder Lokal dan pilih folder model lokal tempat Anda menyimpan file model Anda.
Pada halaman hub IoT, klik nama hub yang ingin Anda gunakan. Anda melihat daftar perangkat yang didaftarkan di hub IoT.
Klik ID Perangkat dari perangkat yang Anda buat sebelumnya.
Menu di sebelah kiri menunjukkan berbagai jenis informasi yang tersedia untuk perangkat.
Pilih Komponen IoT Plug and Play untuk melihat informasi model perangkat Anda.
Anda dapat melihat berbagai komponen perangkat. Komponen default dan komponen tambahan apa pun. Pilih komponen untuk digunakan.
Pilih halaman Telemetri lalu pilih Mulai untuk melihat data telemetri yang dikirim perangkat untuk komponen ini.
Pilih halaman Properti (baca-saja) guna melihat properti baca-saja yang dilaporkan untuk komponen ini.
Pilih halaman Properti (bisa-tulis) guna melihat properti bisa-tulis yang dapat Anda perbarui untuk komponen ini.
Pilih properti dengan nama, masukkan nilai baru untuk properti, dan pilih Perbarui nilai yang diinginkan.
Untuk melihat nilai baru muncul pilih tombol Refresh.
Pilih halaman Perintah guna melihat semua perintah untuk komponen ini.
Pilih perintah yang ingin Anda uji, atur parameternya jika ada. Pilih Kirim perintah untuk memanggil perintah di perangkat. Anda dapat melihat perangkat merespons perintah di jendela wantian perintah tempat kode sampel berjalan.
Membersihkan sumber daya
Jika Anda berencana untuk melanjutkan dengan lebih banyak artikel pengembang perangkat, Anda dapat menyimpan dan menggunakan kembali sumber daya yang Anda gunakan dalam artikel ini. Jika tidak, Anda dapat menghapus sumber daya yang Anda buat di artikel ini untuk menghindari lebih banyak biaya.
Anda dapat menghapus hub dan perangkat terdaftar sekaligus dengan menghapus seluruh grup sumber daya dengan perintah Azure CLI berikut. Jangan gunakan perintah ini jika sumber daya ini berbagi grup sumber daya dengan sumber daya lain yang ingin Anda pertahankan.
az group delete --name <YourResourceGroupName>
Untuk menghapus hanya hub IoT, jalankan perintah berikut menggunakan Azure CLI:
az iot hub delete --name <YourIoTHubName>
Untuk menghapus hanya identitas perangkat yang Anda daftarkan dengan hub IoT Anda, jalankan perintah berikut menggunakan Azure CLI:
az iot hub device-identity delete --hub-name <YourIoTHubName> --device-id <YourDeviceID>
Anda mungkin juga ingin menghapus file sampel kloning dari mesin pengembangan Anda.
Langkah berikutnya
Dalam tutorial ini, Anda telah belajar cara menghubungkan perangkat IoT Plug and Play dengan komponen ke hub IoT. Untuk mempelajari selengkapnya model perangkat IoT Plug and Play, lihat: