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.
86 lines
5.9 KiB
86 lines
5.9 KiB
# ಇಂಟರ್ನೆಟ್ மூலம் ನಿಮ್ಮ ನೈಟ್ ಲೈಟ್ ನಿಯಂತ್ರಿಸಿ - Wio ಟರ್ಮಿನಲ್
|
|
|
|
ಪಾಠದ ಈ ಭಾಗದಲ್ಲಿ, ನೀವು ನಿಮ್ಮ Wio ಟರ್ಮಿನಲ್ನಿಂದ ಬೆಳಕು ಮಟ್ಟಗಳೊಂದಿಗೆ ಟೆಲಿಮೆಟ್ರಿಯನ್ನು MQTT ಬ್ರೊಕರ್ ಗೆ ಕಳುಹಿಸಲಿದ್ದೀರಿ.
|
|
|
|
## JSON ಆರ್ಡುವಿನೊ ಲೈಬ್ರರಿಗಳನ್ನು ಸ್ಥಾಪಿಸಿ
|
|
|
|
MQTT ಮೂಲಕ ಸಂದೇಶಗಳನ್ನು ಕಳುಹಿಸುವ ಜನಪ್ರಿಯ ವಿಧಾನ JSON ಅನ್ನು ಬಳಸುವುದು. JSON ಓದು ಮತ್ತು ಬರೆಯುವಿಕೆಯನ್ನು ಸುಲಭಗೊಳಿಸುವ ಆರ್ಡುವಿನೊ JSON ಲೈಬ್ರರಿ ಇದೆ.
|
|
|
|
### ಕಾರ್ಯ
|
|
|
|
ಆರ್ಡುವಿನೊ JSON ಲೈಬ್ರರಿಯನ್ನು ಸ್ಥಾಪಿಸಿ.
|
|
|
|
1. VS ಕೋಡ್ನಲ್ಲಿ ನೈಟ್ ಲೈಟ್ ಪ್ರಾಜೆಕ್ಟ್ ಅನ್ನು ತೆರೆಯಿರಿ.
|
|
|
|
1. `platformio.ini` ಫೈಲಿನ `lib_deps` ಪಟ್ಟಿಗೆ ಕೆಳಗಿನನ್ನು ಹೆಚ್ಚುವರಿ ಸಾಲಾಗಿ ಸೇರಿಸಿ:
|
|
|
|
```ini
|
|
bblanchon/ArduinoJson @ 6.17.3
|
|
```
|
|
|
|
ಇದು [ArduinoJson](https://arduinojson.org), ಆರ್ಡುಯಿನೊ JSON ಲೈಬ್ರರಿಯನ್ನು ಆಮದುಮಾಡುತ್ತದೆ.
|
|
|
|
## ಟೆಲಿಮೆಟ್ರಿ ಪ್ರಕಟಿಸಲು
|
|
|
|
ಮುಂದಿನ ಹಂತವೆಂದರೆ ಟೆಲಿಮೆಟ್ರಿ ಹೊಂದಿರುವ JSON ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು ರಚಿಸಿ MQTT ಬ್ರೊಕರ್ ಗೆ ಕಳುಹಿಸುವುದು.
|
|
|
|
### ಕಾರ್ಯ - ಟೆಲಿಮೆಟ್ರಿ ಪ್ರಕಟಿಸಿ
|
|
|
|
MQTT ಬ್ರೊಕರ್ ಗೆ ಟೆಲಿಮೆಟ್ರಿ ಪ್ರಕಟಿಸಿ.
|
|
|
|
1. MQTT ಬ್ರೊಕರ್ ಗಾಗಿ ಟೆಲಿಮೆಟ್ರಿ ವಿಷಯದ ಹೆಸರನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಲು `config.h` ಫೈಲಿನ ಕೆಳಭಾಗಕ್ಕೆ ಕೆಳಗಿನ ಕೋಡ್ ಅನ್ನು ಸೇರಿಸಿ:
|
|
|
|
```cpp
|
|
const string CLIENT_TELEMETRY_TOPIC = ID + "/telemetry";
|
|
```
|
|
|
|
`CLIENT_TELEMETRY_TOPIC` ಎಂಬುದು ಸಾಧನವು ಬೆಳಕು ಮಟ್ಟಗಳನ್ನು ಪ್ರಕಟಿಸುವ ವಿಷಯವಾಗಿದೆ.
|
|
|
|
1. `main.cpp` ಫೈಲನ್ನು ತೆರೆಯಿರಿ
|
|
|
|
1. ಫೈಲಿನ ತಲೆಯನ್ನು `#include` ನಿರ್ದೇಶನದ ಕೆಳಗಿನಂತೆ ಸೇರಿಸಿ:
|
|
|
|
```cpp
|
|
#include <ArduinoJSON.h>
|
|
```
|
|
|
|
1. `loop` ಫಂಕ್ಷನ್ ಒಳಗೆ, `delay` ಮೊದಲು ಕೆಳಗಿನ ಕೋಡ್ ಅನ್ನು ಸೇರಿಸಿ:
|
|
|
|
```cpp
|
|
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());
|
|
```
|
|
|
|
ಈ ಕೋಡ್ ಬೆಳಕು ಮಟ್ಟವನ್ನು ಓದುತ್ತದೆ ಮತ್ತು ಆ ಮಟ್ಟದೊಂದಿಗೆ ArduinoJson ಉಪಯೋಗಿಸಿ JSON ಡಾಕ್ಯುಮೆಂಟ್ ರಚಿಸುತ್ತದೆ. ನಂತರ ಅದನ್ನು ಸ್ಟ್ರಿಂಗ್ ಆಗಿ ಸರಣಿಸಿದ (serialize) ಮಾಡಿ MQTT ಕ್ಲೈಂಟ್ ಮೂಲಕ ಟೆಲಿಮೆಟ್ರಿ MQTT ವಿಷಯದಲ್ಲಿ ಪ್ರಕಟಿಸಲಾಗುತ್ತದೆ.
|
|
|
|
1. ನಿಮ್ಮ Wio ಟರ್ಮಿನಲ್ ಗೆ ಕೋಡ್ ಅಪ್ಲೋಡ್ ಮಾಡಿ ಮತ್ತು ಸೇರಿಯಲ್ ಮಾನಿಟರ್ ಬಳಸಿ MQTT ಬ್ರೊಕರ್ ಗೆ ಕಳುಹಿಸಲಾಗುತ್ತಿರುವ ಬೆಳಕು ಮಟ್ಟಗಳನ್ನು ನೋಡಿ.
|
|
|
|
```output
|
|
Connecting to WiFi..
|
|
Connected!
|
|
Attempting MQTT connection...connected
|
|
Sending telemetry {"light":652}
|
|
Sending telemetry {"light":612}
|
|
Sending telemetry {"light":583}
|
|
```
|
|
|
|
> 💁 ನೀವು ಈ ಕೋಡ್ ಅನ್ನು [code-telemetry/wio-terminal](../../../../../1-getting-started/lessons/4-connect-internet/code-telemetry/wio-terminal) ಫೋಲ್ಡರಿನಲ್ಲಿ ಕಂಡುಹಿಡಿಯಬಹುದು.
|
|
|
|
😀 ನೀವು ಯಶಸ್ವಿಯಾಗಿ ನಿಮ್ಮ ಸಾಧನದಿಂದ ಟೆಲಿಮೆಟ್ರಿಯನ್ನು ಕಳುಹಿಸಿದ್ದಾರೆ.
|
|
|
|
---
|
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
|
**ಬಾಧ್ಯತೆ ರಹಿತ ಸೂಚನೆ**:
|
|
ಈ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಯಿಗಾಗಿ ಪ್ರಯತ್ನಿಸಿದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ತಪ್ಪುಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳಾಗಿರಬಹುದು ಎಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿರುವ ಮೂಲ ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು ಅಧಿಕೃತ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಮಹತ್ವದ ಮಾಹಿತಿಗಾಗಿ ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವಿಕೆ ಅಥವಾ ಸಂಶಯಗಳಿಗೆ ನಾವು ಜವಾಬ್ದಾರರಾಗಿಲ್ಲ.
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER END --> |