You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/ms/1-getting-started/lessons/4-connect-internet/wio-terminal-telemetry.md

3.3 KiB

Kawal lampu malam anda melalui Internet - Wio Terminal

Dalam bahagian pelajaran ini, anda akan menghantar telemetri dengan tahap cahaya dari Wio Terminal anda ke broker MQTT.

Pasang perpustakaan JSON Arduino

Satu cara popular untuk menghantar mesej melalui MQTT adalah dengan menggunakan JSON. Terdapat perpustakaan Arduino untuk JSON yang memudahkan pembacaan dan penulisan dokumen JSON.

Tugas

Pasang perpustakaan Arduino JSON.

  1. Buka projek lampu malam dalam VS Code.

  2. Tambahkan baris berikut sebagai baris tambahan ke senarai lib_deps dalam fail platformio.ini:

    bblanchon/ArduinoJson @ 6.17.3
    

    Ini mengimport ArduinoJson, sebuah perpustakaan JSON untuk Arduino.

Terbitkan telemetri

Langkah seterusnya adalah untuk mencipta dokumen JSON dengan telemetri dan menghantarnya ke broker MQTT.

Tugas - terbitkan telemetri

Terbitkan telemetri ke broker MQTT.

  1. Tambahkan kod berikut ke bahagian bawah fail config.h untuk menentukan nama topik telemetri untuk broker MQTT:

    const string CLIENT_TELEMETRY_TOPIC = ID + "/telemetry";
    

    CLIENT_TELEMETRY_TOPIC adalah topik di mana peranti akan menerbitkan tahap cahaya.

  2. Buka fail main.cpp

  3. Tambahkan arahan #include berikut ke bahagian atas fail:

    #include <ArduinoJSON.h>
    
  4. Tambahkan kod berikut di dalam fungsi loop, tepat sebelum delay:

    int light = analogRead(WIO_LIGHT);
    
    DynamicJsonDocument doc(1024);
    doc["light"] = light;
    
    string telemetry;
    serializeJson(doc, telemetry);
    
    Serial.print("Sending telemetry ");
    Serial.println(telemetry.c_str());
    
    client.publish(CLIENT_TELEMETRY_TOPIC.c_str(), telemetry.c_str());
    

    Kod ini membaca tahap cahaya, dan mencipta dokumen JSON menggunakan ArduinoJson yang mengandungi tahap ini. Dokumen ini kemudian diserialkan ke dalam bentuk string dan diterbitkan pada topik telemetri MQTT oleh klien MQTT.

  5. Muat naik kod ke Wio Terminal anda, dan gunakan Serial Monitor untuk melihat tahap cahaya yang dihantar ke broker MQTT.

    Connecting to WiFi..
    Connected!
    Attempting MQTT connection...connected
    Sending telemetry {"light":652}
    Sending telemetry {"light":612}
    Sending telemetry {"light":583}
    

💁 Anda boleh menemui kod ini dalam folder code-telemetry/wio-terminal.

😀 Anda telah berjaya menghantar telemetri dari peranti anda.


Penafian:
Dokumen ini telah diterjemahkan menggunakan perkhidmatan terjemahan AI Co-op Translator. Walaupun kami berusaha untuk memastikan ketepatan, sila ambil maklum bahawa terjemahan automatik mungkin mengandungi kesilapan atau ketidaktepatan. Dokumen asal dalam bahasa asalnya harus dianggap sebagai sumber yang berwibawa. Untuk maklumat penting, terjemahan manusia profesional adalah disyorkan. Kami tidak bertanggungjawab atas sebarang salah faham atau salah tafsir yang timbul daripada penggunaan terjemahan ini.