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.
64 lines
6.7 KiB
64 lines
6.7 KiB
# ఉష్ణోగ్రతను ప్రచురించు - వర్చువల్ IoT హార్డ్వేర్ మరియు రాస్ప్బెర్రీ పై
|
|
|
|
పాఠం యొక్క ఈ భాగంలో, మీరు రాస్ప్బెర్రీ పై లేదా వర్చువల్ IoT డివైస్ గుర్తించిన ఉష్ణోగ్రత విలువలను MQTT ద్వారా ప్రచురించబడతారు, తద్వారా అవి తర్వాత GDD లెక్కింపుకు ఉపయోగించుకోవచ్చు.
|
|
|
|
## ఉష్ణోగ్రతను ప్రచురించండి
|
|
|
|
ఉష్ణోగ్రతను చదివిన తర్వాత, అది MQTT ద్వారా కొన్ని 'సర్వర్' కోడ్కు ప్రచురించబడుతుంది, ఇది విలువలను చదివి, GDD లెక్కింపుకు ఉపయోగించడానికి సిద్ధంగా నిల్వ చేస్తుంది.
|
|
|
|
### టాస్క్ - ఉష్ణోగ్రతను ప్రచురించండి
|
|
|
|
డివైస్ను ఉష్ణోగ్రత డేటాను ప్రచురించడానికి ప్రోగ్రామ్ చేయండి.
|
|
|
|
1. `temperature-sensor` యాప్ ప్రాజెక్ట్ ఇప్పటికే తెరవబడకపోతే తెరవండి
|
|
|
|
1. MQTT కి కనెక్ట్ అయి టెలిమెట్రీ పంపించడానికి మీరు పాఠం 4 లో చేసిన దశలను పునరావృతం చేయండి, మీరు అదే పబ్లిక్ మొస్క్విటో బ్రోకర్ ఉపయోగించబోతున్నారు.
|
|
|
|
దశలు:
|
|
|
|
- MQTT పిప్ ప్యాకేజీని జోడించండి
|
|
- MQTT బ్రోకర్కు కనెక్ట్ కాబడే కోడ్ జోడించండి
|
|
- టెలిమెట్రీ ప్రచురించే కోడ్ జోడించండి
|
|
|
|
> ⚠️ అవసరమనుకున్నట్లయితే, [MQTTకి కనెక్ట్ అవ్వడానికీ](../../../1-getting-started/lessons/4-connect-internet/single-board-computer-mqtt.md) మరియు [టెలిమెట్రీ పంపించడానికి](../../../1-getting-started/lessons/4-connect-internet/single-board-computer-telemetry.md) సంబంధించిన పాఠం 4 సూచనలను సూచించండి.
|
|
|
|
1. `client_name` ఈ ప్రాజెక్ట్ పేరు ప్రతిబింబిస్తుందని నిర్ధారించుకోండి:
|
|
|
|
```python
|
|
client_name = id + 'temperature_sensor_client'
|
|
```
|
|
|
|
1. టెలిమెట్రీ కోసం, లైట్ విలువను పంపించే బదులు, DHT సెన్సార్ నుండి చదివిన ఉష్ణోగ్రత విలువను JSON డాక్యుమెంట్లో `temperature` అనే ప్రాపర్టీగా పంపండి:
|
|
|
|
```python
|
|
_, temp = sensor.read()
|
|
telemetry = json.dumps({'temperature' : temp})
|
|
```
|
|
|
|
1. ఉష్ణోగ్రత విలువ ఎక్కువసేపు తరచుగా చదవాల్సిన అవసరం లేదు - అది చిన్న సమయంలో చాలా మార్చదు, కాబట్టి `time.sleep`ని 10 నిమిషాలు గా సెట్ చేయండి:
|
|
|
|
```cpp
|
|
time.sleep(10 * 60);
|
|
```
|
|
|
|
> 💁 `sleep` ఫంక్షన్ సమయాన్ని సెకన్లలో తీసుకుంటుంది, కాబట్టి విలువ సులభంగా చదవడానికి గణన ఫలితంగా పంపబడుతుంది. ఒక నిమిషంలో 60 సెకన్లు ఉన్నవలా, 10 x (60 సెకన్లు) 10 నిమిషాల డిలే ఇస్తుంది.
|
|
|
|
1. కోడ్ని ముందటి పార్ట్ ఏసైన్మెంట్ నుండి నడిపిన విధంగా నడిపించండి. మీరు వర్చువల్ IoT డివైస్ ఉపయోగిస్తున్నట్లయితే, CounterFit యాప్ నడుస్తుండాలి మరియు హ్యూమిడిటీ మరియు ఉష్ణోగ్రత సెన్సార్లు సరైన పిన్లపై ఉంచబడినాయి.
|
|
|
|
```output
|
|
pi@raspberrypi:~/temperature-sensor $ python3 app.py
|
|
MQTT connected!
|
|
Sending telemetry {"temperature": 25}
|
|
Sending telemetry {"temperature": 25}
|
|
```
|
|
|
|
> 💁 ఈ కోడ్ని [code-publish-temperature/virtual-device](../../../../../2-farm/lessons/1-predict-plant-growth/code-publish-temperature/virtual-device) ఫోల్డర్ లేదా [code-publish-temperature/pi](../../../../../2-farm/lessons/1-predict-plant-growth/code-publish-temperature/pi) ఫోల్డర్లలో కనుగొనవచ్చు.
|
|
|
|
😀 మీరు విజయవంతంగా మీ డివైస్ నుండి ఉష్ణోగ్రతను టెలిమెట్రీగా ప్రచురించారు.
|
|
|
|
---
|
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
|
**అస్పష్టత**:
|
|
ఈ పత్రాన్ని AI అనువాద సేవ [Co-op Translator](https://github.com/Azure/co-op-translator) ఉపయోగించి అనువదించారు. ఖచ్చితత్వానికి努త్వం చేసినప్పటికీ, ఆవామానువాదాలలో తప్పులు లేదా అసత్యతలు ఉండేవి కావచ్చు. స్వదేశీ భాషలో ఉన్న మూల పత్రమే అధికారిక మూలంగా పరిగణించాలి. ముఖ్యమైన సమాచారం కోసం, ప్రొఫెషనల్ మానవ అనువాదం సిఫార్సు చేయబడుతుంది. ఈ అనువాదం వలన కలిగే ఏవైనా తప్పుల గురించి లేదా తప్పుడు అర్థం చేసుకోవడంపై మేము బాధ్యత తీసుకోము.
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER END --> |