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

6.9 KiB

ನಿಮ್ಮ ನೈಟ್‌ಲೈಟ್ ಅನ್ನು ಇಂಟರ್ನೆಟ್‌ ಮೂಲಕ ನಿಯಂತ್ರಿಸಿ - ವಿಯೋ ಟರ್ಮಿನಲ್

ಈ ಪಾಠದ ಭಾಗದಲ್ಲಿ, ನೀವು MQTT ಬ್ರೋಕರ್‌ನಿಂದ ನಿಮ್ಮ ವಿಯೋ ಟರ್ಮಿನಲ್‌ಗೆ ಕಳುಹಿಸಿರುವ ಆದೇಶಗಳಿಗೆ ಚಂದಾ ಹೊಂದಿಸುತ್ತೀರಿ.

ಆದೇಶಗಳಿಗೆ ಚಂದಾ ಹೊಂದಿಸಿ

ಮುಂದಿನ ಹಂತವೆಂದರೆ MQTT ಬ್ರೋಕರ್‌ನಿಂದ ಕಳುಹಿಸಿರುವ ಆದೇಶಗಳಿಗೆ ಚಂದಾ ಹೊಂದಿಸಿ, ಅವುಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸು.

ಕಾರ್ಯ

ಆದೇಶಗಳಿಗೆ ಚಂದಾ ಹೊಂದಿಸಿ.

  1. ನಿಮ್ಮ ನೈಟ್‌ಲೈಟ್ ಪ್ರಾಜೆಕ್ಟ್ ಅನ್ನು VS ಕೋಡ್‌ನಲ್ಲಿ ತೆರೆಯಿರಿ.

  2. config.h ಫೈಲ್‌ನ ಕೆಳಭಾಗಕ್ಕೆ ಕೆಳಗಿನ ಕೋಡ್ ಅನ್ನು ಸೇರಿಸಿ, ಆದೇಶಗಳಿಗೆ ವಿಷಯದ ಹೆಸರನ್ನು ನಿರ್ದಿಷ್ಟಗೊಳಿಸಲು:

    const string SERVER_COMMAND_TOPIC = ID + "/commands";
    

    SERVER_COMMAND_TOPIC ಎನ್ನುವುದು ಉಪಕರಣವು ಆರೈಕೆ ಮಾಡಲು ಚಂದಾ ಹೊಂದಿಸುವ ವಿಷಯ.

  3. MQTT ಕ್ಲೈಂಟ್ ಮರು ಸಂಪರ್ಕಗೊಂಡಾಗ ಆದೇಶ ವಿಷಯಕ್ಕೆ ಚಂದಾ ಹೊಂದಿಸುವಂತೆ reconnectMQTTClient ಕಾರ್ಯದ ಅಂತ್ಯದಲ್ಲಿ ಕೆಳಗಿನ ಸಾಲು ಸೇರಿಸಿ:

    client.subscribe(SERVER_COMMAND_TOPIC.c_str());
    
  4. reconnectMQTTClient ಕಾರ್ಯದ ಕೆಳಗೆ ಕೆಳಗಿನ ಕೋಡ್ ಸೇರಿಸಿ.

    void clientCallback(char *topic, uint8_t *payload, unsigned int length)
    {
        char buff[length + 1];
        for (int i = 0; i < length; i++)
        {
            buff[i] = (char)payload[i];
        }
        buff[length] = '\0';
    
        Serial.print("Message received:");
        Serial.println(buff);
    
        DynamicJsonDocument doc(1024);
        deserializeJson(doc, buff);
        JsonObject obj = doc.as<JsonObject>();
    
        bool led_on = obj["led_on"];
    
        if (led_on)
            digitalWrite(D0, HIGH);
        else
            digitalWrite(D0, LOW);
    }
    

    ಈ ಕಾರ್ಯವು MQTT ಕ್ಲೈಂಟ್ ಸರ್ವರ್‌ನಿಂದ ಸಂದೇಶವನ್ನು ಸ್ವೀಕರಿಸಿದಾಗ ಕರೆಮಾಡುವ ಕಾಲ್ಬ್ಯಾಕ್ ಆಗಿದ್ದು.

    ಸಂದೇಶವು ಅಸಹಾಯಕ 8-ಬಿಟ್ ಪೂರ್ಣಾಂಕಗಳ ಆರೆ ಆಗಿ ಬರುತ್ತದೆ, ಅದನ್ನು ಪಾಠವಾಗಿ ಪರಿಗಣಿಸಲು ಅಕ್ಷರ ಆರೆಗೆ ಪರಿವರ್ತನೆ ಮಾಡಬೇಕಾಗುತ್ತದೆ.

    ಸಂದೇಶದಲ್ಲಿ JSON ದಾಖಲೆ ಹೊಂದಿದ್ದು, ArduinoJson ಗ್ರಂಥಾಲಯ ಬಳಸಿ ಡೀಕೋಡ್ ಮಾಡಲ್ಪಡುತ್ತದೆ. JSON ದಾಖಲೆ中的 led_on ಗುಣಲಕ್ಷಣವನ್ನು ಓದಿ, ಅದರಿಂದ LED ಆನ್ ಅಥವಾ ಆಫ್ ಆಗುತ್ತದೆ.

  5. createMQTTClient ಕಾರ್ಯಕ್ಕೆ ಕೆಳಗಿನ ಕೋಡ್ ಸೇರಿಸಿ:

    client.setCallback(clientCallback);
    

    ಈ ಕೋಡ್‌ನ clientCallback ಅನ್ನು MQTT ಬ್ರೋಕರ್‌ನಿಂದ ಸಂದೇಶ ಬಂದಾಗ ಕರೆಮಾಡುವ ಕಾಲ್ಬ್ಯಾಕ್ ಆಗಿ ಹೊಂದಿಸುತ್ತದೆ.

    💁 clientCallback ಹ್ಯಾಂಡ್ಲರ್ ಎಲ್ಲಾ ಚಂದಾ ಹೊಂದಿಸಿದ ವಿಷಯಗಳಿಗೆ ಕರೆಮಾಡಲಾಗುತ್ತದೆ. ನಂತರ ನೀವು ಅನೇಕ ವಿಷಯಗಳನ್ನು ಕೇಳುವ ಕೋಡ್ ಬರೆಯುವಾಗ, ಸಂದೇಶ ಕಳುಹಿಸಿದ ವಿಷಯವನ್ನು topic ಪ್ಯಾರಾಮೀಟರ್‌ನಿಂದ ಪಡೆಯಬಹುದು.

  6. ನಿಮ್ಮ ವಿಯೋ ಟರ್ಮಿನಲ್‌ಗೆ ಕೋಡ್ ಅಪ್‌ಲೋಡ್ ಮಾಡಿ, ಮತ್ತು ಸೀರಿಯಲ್ ಮಾನಿಟರ್ ಬಳಸಿ MQTT ಬ್ರೋಕರ್‌ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತಿರುವ ಬೆಳಕು ಮಟ್ಟಗಳನ್ನು ನೋಡಿ.

  7. ನಿಮ್ಮ ಭೌತಿಕ ಅಥವಾ ಕಾಂಪ್ಯೂಟರ್ ಉಪಕರಣದ ಬೆಳಕು ಮಟ್ಟಗಳನ್ನು ಸರಿಹೊಂದಿಸಿ. ಸಂದೇಶಗಳು ಸ್ವೀಕರಿಸಲಾಗುತ್ತಿರುವುದು ಮತ್ತು ಆದೇಶಗಳು ಟರ್ಮಿನಲ್‌ನಲ್ಲಿ ಕಳುಹಿಸಲಾಗುತ್ತಿರುವುದು ಮತ್ತು ಬೆಳಕು ಮಟ್ಟದ ಆಧಾರದಲ್ಲಿ LED ಆನ್/ಆಫ್ ಆಗುತ್ತಿರುವುದನ್ನು ಕಾಣಬಹುದು.

💁 ಈ ಕೋಡ್ ಅನ್ನು ನೀವು code-commands/wio-terminal ಫೋಲ್ಡರ್‌ನಲ್ಲಿ ಕಂಡುಹಿಡಿಯಬಹುದು.

😀 ನೀವು ಯಶಸ್ವಿಯಾಗಿ ನಿಮ್ಮ ಉಪಕರಣವನ್ನು MQTT ಬ್ರೋಕರ್‌ನಿಂದ ಆದೇಶಗಳಿಗೆ ಪ್ರತಿಕ್ರಿಯಿಸಲು ಕೋಡ್ ಮಾಡಿದ್ದೀರಿ.


ಅಸ್ವೀಕಾರಿಕೆ:
ಈದಾಖಲೆಯನ್ನು AI ಅನುವಾದ ಸೇವೆ Co-op Translator ಬಳಸಿ ಅನುವದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ದತೆಗೆ ಪ್ರಯತ್ನಿಸುವುದಾಗಿದ್ದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳಿರಬಹದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಮೂಲ ದಾಖಲೆ ಅತ್ಯಂತ đáng ವೀಕ್ಷಣೀಯ ಮೂಲವಾಗಿದೆ. ಪ್ರಮುಖ ಮಾಹಿತಿ ಗಳಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಸಲಹೆ ನೀಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದವನ್ನು ಬಳಸುವುದರಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪುಸಮಜಿಕೆಗಳು ಅಥವಾ ತಪ್ಪುಮಾನಗಳಿಂದ ನಾವು ಹೊಣೆಗಾರರಾಗುವುದಿಲ್ಲ.