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

4.6 KiB

Контролишите своје ноћно светло преко интернета - Wio Terminal

У овом делу лекције, слаћете телеметрију са нивоима светлости са вашег Wio Terminal-а на MQTT брокер.

Инсталирајте JSON Arduino библиотеке

Популаран начин за слање порука преко MQTT-а је коришћење JSON-а. Постоји Arduino библиотека за JSON која олакшава читање и писање JSON докумената.

Задатак

Инсталирајте Arduino JSON библиотеку.

  1. Отворите пројекат ноћног светла у VS Code-у.

  2. Додајте следећу линију у lib_deps листу у platformio.ini фајлу:

    bblanchon/ArduinoJson @ 6.17.3
    

    Ово увози ArduinoJson, Arduino JSON библиотеку.

Објавите телеметрију

Следећи корак је креирање JSON документа са телеметријом и његово слање на MQTT брокер.

Задатак - објавите телеметрију

Објавите телеметрију на MQTT брокер.

  1. Додајте следећи код на крај config.h фајла да дефинишете назив теме за телеметрију на MQTT брокеру:

    const string CLIENT_TELEMETRY_TOPIC = ID + "/telemetry";
    

    CLIENT_TELEMETRY_TOPIC је тема на коју ће уређај објављивати нивое светлости.

  2. Отворите main.cpp фајл.

  3. Додајте следећу #include директиву на врх фајла:

    #include <ArduinoJSON.h>
    
  4. Додајте следећи код унутар loop функције, непосредно пре 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());
    

    Овај код чита ниво светлости и креира JSON документ користећи ArduinoJson који садржи овај ниво. Затим се овај документ серијализује у стринг и објављује на телеметријској MQTT теми преко MQTT клијента.

  5. Отпремите код на ваш Wio Terminal и користите Serial Monitor да видите нивое светлости који се шаљу на MQTT брокер.

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

💁 Овај код можете пронаћи у code-telemetry/wio-terminal фасцикли.

😀 Успешно сте послали телеметрију са вашег уређаја.


Одрицање од одговорности:
Овај документ је преведен коришћењем услуге за превођење помоћу вештачке интелигенције Co-op Translator. Иако се трудимо да обезбедимо тачност, молимо вас да имате у виду да аутоматски преводи могу садржати грешке или нетачности. Оригинални документ на његовом изворном језику треба сматрати меродавним извором. За критичне информације препоручује се професионални превод од стране људи. Не преузимамо одговорност за било каква погрешна тумачења или неспоразуме који могу настати услед коришћења овог превода.