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/et/1-getting-started/lessons/4-connect-internet/wio-terminal-telemetry.md

3.0 KiB

Juhi oma öölampi Interneti kaudu - Wio Terminal

Selles õppetunni osas saadad telemeetriat Wio Terminali valguse tasemetega MQTT brokerile.

Paigalda JSON Arduino teegid

Populaarne viis sõnumite saatmiseks MQTT kaudu on kasutada JSON-i. Arduino jaoks on olemas JSON-teek, mis muudab JSON-dokumentide lugemise ja kirjutamise lihtsamaks.

Ülesanne

Paigalda Arduino JSON teek.

  1. Ava öölambi projekt VS Code'is.

  2. Lisa järgmine rida lib_deps loendisse platformio.ini failis:

    bblanchon/ArduinoJson @ 6.17.3
    

    See impordib ArduinoJson, Arduino JSON teegi.

Telemeetria avaldamine

Järgmine samm on luua telemeetria jaoks JSON-dokument ja saata see MQTT brokerile.

Ülesanne - telemeetria avaldamine

Avalda telemeetria MQTT brokerile.

  1. Lisa järgmine kood config.h faili lõppu, et määratleda telemeetria teema nimi MQTT brokeri jaoks:

    const string CLIENT_TELEMETRY_TOPIC = ID + "/telemetry";
    

    CLIENT_TELEMETRY_TOPIC on teema, kuhu seade avaldab valguse tasemed.

  2. Ava main.cpp fail.

  3. Lisa järgmine #include direktiiv faili algusesse:

    #include <ArduinoJSON.h>
    
  4. Lisa järgmine kood loop funktsiooni sisse, vahetult enne 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());
    

    See kood loeb valguse taseme, loob ArduinoJson-i abil JSON-dokumendi, mis sisaldab seda taset. Seejärel serialiseeritakse see stringiks ja avaldatakse telemeetria MQTT teemas MQTT kliendi poolt.

  5. Laadi kood oma Wio Terminali ja kasuta Serial Monitori, et näha, kuidas valguse tasemed saadetakse MQTT brokerile.

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

💁 Selle koodi leiad code-telemetry/wio-terminal kaustast.

😀 Sa oled edukalt saatnud telemeetria oma seadmest.


Lahtiütlus:
See dokument on tõlgitud AI tõlketeenuse Co-op Translator abil. Kuigi püüame tagada täpsust, palume arvestada, et automaatsed tõlked võivad sisaldada vigu või ebatäpsusi. Algne dokument selle algses keeles tuleks pidada autoriteetseks allikaks. Olulise teabe puhul soovitame kasutada professionaalset inimtõlget. Me ei vastuta selle tõlke kasutamisest tulenevate arusaamatuste või valesti tõlgenduste eest.