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/el/2-farm/lessons/1-predict-plant-growth/single-board-computer-temp-...

71 lines
6.0 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!--
CO_OP_TRANSLATOR_METADATA:
{
"original_hash": "4efc74299e19f5d08f2f3f34451a11ba",
"translation_date": "2025-08-27T22:07:21+00:00",
"source_file": "2-farm/lessons/1-predict-plant-growth/single-board-computer-temp-publish.md",
"language_code": "el"
}
-->
# Δημοσίευση θερμοκρασίας - Εικονικό IoT Υλικό και Raspberry Pi
Σε αυτό το μέρος του μαθήματος, θα δημοσιεύσετε τις τιμές θερμοκρασίας που ανιχνεύονται από το Raspberry Pi ή την Εικονική IoT Συσκευή μέσω MQTT, ώστε να μπορούν να χρησιμοποιηθούν αργότερα για τον υπολογισμό του GDD.
## Δημοσίευση της θερμοκρασίας
Αφού διαβαστεί η θερμοκρασία, μπορεί να δημοσιευθεί μέσω MQTT σε κάποιον κώδικα "server" που θα διαβάσει τις τιμές και θα τις αποθηκεύσει, έτοιμες για χρήση στον υπολογισμό του GDD.
### Εργασία - δημοσίευση της θερμοκρασίας
Προγραμματίστε τη συσκευή ώστε να δημοσιεύει τα δεδομένα θερμοκρασίας.
1. Ανοίξτε το έργο της εφαρμογής `temperature-sensor` αν δεν είναι ήδη ανοιχτό.
1. Επαναλάβετε τα βήματα που κάνατε στο μάθημα 4 για να συνδεθείτε στο MQTT και να στείλετε τηλεμετρία. Θα χρησιμοποιήσετε τον ίδιο δημόσιο broker Mosquitto.
Τα βήματα για αυτό είναι:
- Προσθέστε το πακέτο pip για MQTT
- Προσθέστε τον κώδικα για σύνδεση στον broker 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](https://github.com/Azure/co-op-translator). Παρόλο που καταβάλλουμε προσπάθειες για ακρίβεια, παρακαλούμε να έχετε υπόψη ότι οι αυτοματοποιημένες μεταφράσεις ενδέχεται να περιέχουν λάθη ή ανακρίβειες. Το πρωτότυπο έγγραφο στη μητρική του γλώσσα θα πρέπει να θεωρείται η αυθεντική πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη για τυχόν παρεξηγήσεις ή εσφαλμένες ερμηνείες που προκύπτουν από τη χρήση αυτής της μετάφρασης.