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

3.2 KiB

Dhibiti taa yako ya usiku kupitia Mtandao - Wio Terminal

Katika sehemu hii ya somo, utatuma data ya telemetry yenye viwango vya mwanga kutoka kwa Wio Terminal yako kwenda kwa MQTT broker.

Sakinisha maktaba za JSON za Arduino

Njia maarufu ya kutuma ujumbe kupitia MQTT ni kutumia JSON. Kuna maktaba ya Arduino kwa JSON ambayo inarahisisha kusoma na kuandika hati za JSON.

Kazi

Sakinisha maktaba ya Arduino JSON.

  1. Fungua mradi wa nightlight katika VS Code.

  2. Ongeza mstari ufuatao kama mstari wa ziada kwenye orodha ya lib_deps katika faili ya platformio.ini:

    bblanchon/ArduinoJson @ 6.17.3
    

    Hii inaingiza ArduinoJson, maktaba ya JSON ya Arduino.

Tuma telemetry

Hatua inayofuata ni kuunda hati ya JSON yenye telemetry na kuituma kwa MQTT broker.

Kazi - tuma telemetry

Tuma telemetry kwa MQTT broker.

  1. Ongeza msimbo ufuatao chini ya faili ya config.h ili kufafanua jina la mada ya telemetry kwa MQTT broker:

    const string CLIENT_TELEMETRY_TOPIC = ID + "/telemetry";
    

    CLIENT_TELEMETRY_TOPIC ni mada ambayo kifaa kitachapisha viwango vya mwanga.

  2. Fungua faili ya main.cpp

  3. Ongeza agizo la #include lifuatalo juu ya faili:

    #include <ArduinoJSON.h>
    
  4. Ongeza msimbo ufuatao ndani ya kazi ya loop, kabla tu ya 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());
    

    Msimbo huu unasoma kiwango cha mwanga, na kuunda hati ya JSON kwa kutumia ArduinoJson inayojumuisha kiwango hiki. Hati hii kisha inabadilishwa kuwa kamba na kuchapishwa kwenye mada ya telemetry ya MQTT na mteja wa MQTT.

  5. Pakia msimbo kwenye Wio Terminal yako, na tumia Serial Monitor kuona viwango vya mwanga vinavyotumwa kwa MQTT broker.

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

💁 Unaweza kupata msimbo huu katika folda ya code-telemetry/wio-terminal.

😀 Umefanikiwa kutuma telemetry kutoka kwa kifaa chako.


Kanusho:
Hati hii imetafsiriwa kwa kutumia huduma ya kutafsiri ya AI Co-op Translator. Ingawa tunajitahidi kuhakikisha usahihi, tafadhali fahamu kuwa tafsiri za kiotomatiki zinaweza kuwa na makosa au kutokuwa sahihi. Hati ya asili katika lugha yake ya awali inapaswa kuzingatiwa kama chanzo cha mamlaka. Kwa taarifa muhimu, tafsiri ya kitaalamu ya binadamu inapendekezwa. Hatutawajibika kwa kutoelewana au tafsiri zisizo sahihi zinazotokana na matumizi ya tafsiri hii.