Gunakan program contoh data_model_basic_demo untuk mensimulasikan perangkat lampu jalan dan menghubungkannya ke IoT Platform melalui C SDK.
Catatan penting
Langkah-langkah dalam topik ini dilakukan sebagai pengguna biasa. Jika suatu operasi memerlukan izin administratif, tambahkan awalan perintah dengan sudo.
Siapkan lingkungan pengembangan
-
C SDK sisi perangkat berjalan di Linux. Kompilasikan dalam lingkungan Ubuntu 16.04 64-bit.
-
Perangkat lunak yang diperlukan:
make 4.1 atau versi lebih baru, gcc 5.4.0 atau versi lebih baru.
Perintah instalasi:
sudo apt-get install -y build-essential make gcc
Prosedur
-
Unduh C SDK untuk perangkat: C SDK 4.x.
-
Ekstrak file C SDK dan ubah informasi sertifikat perangkat.
Unduh data_model_basic_demo.c dan gunakan untuk menggantikan file di
\LinkSDK\demos. Perbarui parameter berikut:char *product_key = "a2***"; char *device_name = "device1"; char *device_secret = "8c684ef***"; ... ... char *mqtt_host = "a2***.iot-as-mqtt.cn-shanghai.aliyuncs.com";Parameter
Contoh
Deskripsi
mqtt_host
-
Instans publik baru:
iot-cn-***.mqtt.iothub.aliyuncs.com -
Instans publik lama:
a2***.iot-as-mqtt.cn-shanghai.aliyuncs.com
Titik akhir ingest MQTT untuk perangkat.
-
Instans publik baru: Pada halaman Instance Details, klik View Development Configurations. Titik akhir muncul pada panel Development Configurations.
-
Instans publik lama: Format titik akhir adalah
${YourProductKey}.iot-as-mqtt.${YourRegionId}.aliyuncs.com.
product_key
a2***Sertifikat perangkat yang disimpan saat Anda menambahkan perangkat.
Anda juga dapat melihat sertifikat tersebut pada halaman Device Details di IoT Platform console. Dapatkan sertifikat perangkat.
device_name
device1device_secret
8c684ef*** -
-
Pada mesin virtual Linux, instal perangkat lunak yang diperlukan.
sudo apt-get install -y build-essential make gcc -
Unggah direktori
LinkSDKyang telah dimodifikasi ke mesin virtual Linux Anda. -
Di direktori root SDK
/LinkSDK, jalankan perintahmakeuntuk mengompilasi program contoh.make clean makeFile biner hasil kompilasi
data-model-basic-demoberada di./output. -
Jalankan program contoh.
./output/data-model-basic-demoOutput yang diharapkan:
root@xxx:~/linkSDK# ./output/data-model-basic-demo [1637041632.700][LK-0313] MQTT user calls aiot_mqtt_connect api, connect [1637041632.700][LK-032A] mqtt host: axxx.iot-as-mqtt.cn-shanghai.aliyuncs.com [1637041632.700][LK-0317] user name: device1&axxx,0 [1637041632.700][LK-0318] password: 86761xxx¥21D establish tcp connection with server(host='axxx.iot-as-mqtt.cn-shanghai.aliyuncs.com', port=[443]) success to establish tcp, fd=3 local port: 35604 [1637041632.711][LK-1000] establish mbedtls connection with server(host='axxx.iot-as-mqtt.cn-shanghai.aliyuncs.com', port=[443]) [1637041632.766][LK-1000] success to establish mbedtls connection, (cost 45252 bytes in total, max used 47988 bytes) [1637041632.811][LK-0313] MQTT connect success in 108 ms AIOT_MQTTEVT_CONNECT [1637041632.811][LK-0309] pub: /sys/axxx/device1/thing/event/property/post [LK-030A] > 7B 22 69 64 22 3A 22 31 22 2C 22 76 65 72 73 69 | {"id":"1","versi [LK-030A] > 6F 6E 22 3A 22 31 2E 30 22 2C 22 70 61 72 61 6D | on":"1.0","param [LK-030A] > 73 22 3A 7B 22 4C 69 67 68 74 43 75 72 72 65 6E | s":{"LightCurren [LK-030A] > 74 22 3A 20 31 2E 35 7D 2C 22 73 79 73 22 3A 7B | t": 1.5},"sys":{ [LK-030A] > 22 61 63 6B 22 3A 31 7D 7D | "ack":1}} [1637041632.833][LK-0309] pub: /sys/axxx/device1/thing/event/property/post_reply [LK-030A] < 7B 22 63 6F 64 65 22 3A 32 30 30 2C 22 64 61 74 | {"code":200,"dat [LK-030A] < 61 22 3A 7B 7D 2C 22 69 64 22 3A 22 31 22 2C 22 | a":{},"id":"1"," [LK-030A] < 6D 65 73 73 61 67 65 22 3A 22 73 75 63 63 65 73 | message":"succes [LK-030A] < 73 22 2C 22 6D 65 74 68 6F 64 22 3A 22 74 68 69 | s","method":"thi [LK-030A] < 6E 67 2E 65 76 65 6E 74 2E 70 72 6F 70 65 72 74 | ng.event.propert [LK-030A] < 79 2E 70 6F 73 74 22 2C 22 76 65 72 73 69 6F 6E | y.post","version [LK-030A] < 22 3A 22 31 2E 30 22 7D | ":"1.0"} [1637041632.833][LK-0A08] DM recv generic reply demo_dm_recv_handler, type = 0 msg_id = 1, code = 200, data = {}, message = success -
Di IoT Platform console, buka halaman Public Instance. Verifikasi status perangkat.
-
Pilih . Pada halaman Devices, masukkan
device1ke dalam kotak pencarian DeviceName untuk menemukan perangkat target. Verifikasi bahwa status perangkat adalah Online. -
Klik View di kolom Actions. Pada halaman Device Details, klik tab TSL Data lalu Running Status.
Program contoh data_model_basic_demo.c melaporkan nilai arus operasi.
Pada tab Running Status, properti Operating Current menampilkan nilai 1.5 A, yang menunjukkan bahwa perangkat telah berhasil melaporkan nilai properti ini.
-
Langkah selanjutnya
Anda sekarang dapat berlangganan pesan perangkat dari server.