🏠 Πώς να Φτιάξεις το Δικό σου Mini Smart Σπίτι με Arduino, ESP32 και Python – Ο Πλήρης Οδηγός
Το απόλυτο πρακτικό project για να μετατρέψεις το δωμάτιό σου σε ένα έξυπνο, διασυνδεδεμένο και αυτοματοποιημένο σύστημα με απλά υλικά και λίγες γραμμές κώδικα.
🔧 Τι θα Φτιάξεις:
Έξυπνο φως που ανάβει με αισθητήρα κίνησης
Σύστημα μέτρησης θερμοκρασίας & υγρασίας
Έξυπνη κλειδαριά με NFC ή Bluetooth
Έλεγχος από κινητό μέσω Python Flask εφαρμογής
Φωνητικές εντολές με Google Assistant ή Raspberry Pi
Web dashboard και παρακολούθηση δεδομένων
📦 Υλικά που θα χρειαστείς:
| Εξάρτημα | Ρόλος |
|---|---|
| Arduino Uno ή Mega | Εγκέφαλος για αισθητήρες & ρελέ |
| ESP32 | Wi-Fi, Bluetooth, επικοινωνία με app |
| Raspberry Pi Zero W | Dashboard ή offline voice |
| PIR Sensor | Ανίχνευση κίνησης |
| Ρελέ 1 ή 2 καναλιών | Έλεγχος φώτων ή κλειδαριάς |
| LED ή λάμπες | Για φωτισμό |
| BME280 | Αισθητήρας Θερμοκρασίας/Υγρασίας |
| Solenoid Lock | Ηλεκτρική Κλειδαριά |
| NFC Module | Πρόσβαση μέσω κάρτας |
| Καλώδια, breadboard, 5V τροφοδοσία | Σύνδεση |
1️⃣ Έξυπνος Φωτισμός με PIR και Ρελέ
🔌 Βήμα 1: Συνδέσεις
PIR Sensor:
VCC → 5V Arduino
GND → GND Arduino
OUT → pin 7 Arduino
Ρελέ:
IN → pin 8 Arduino
VCC/GND ανάλογα με το ρελέ
NO/COM για το φως (LED ή λάμπα με 230V προσοχή)
⚙️ Τι κάνει:
Όταν εντοπιστεί κίνηση από το PIR, το Arduino ανάβει το ρελέ, το οποίο ενεργοποιεί το φως για συγκεκριμένη διάρκεια (π.χ. 10 δευτερόλεπτα).
2️⃣ Μέτρηση Θερμοκρασίας και Υγρασίας με BME280
🔌 Βήμα 2: Συνδέσεις
BME280:
VCC → 3.3V ή 5V (ανάλογα τον τύπο)
GND → GND Arduino
SDA → A4 (Uno) ή 20 (Mega)
SCL → A5 (Uno) ή 21 (Mega)
📋 Τι κάνει:
Διαβάζει τη θερμοκρασία και την υγρασία του χώρου και τα στέλνει στη σειριακή οθόνη ή στο ESP32 για μεταφορά σε εφαρμογή/web.
3️⃣ Φωνητικός Έλεγχος
🗣️ Επιλογή A: Google Assistant + IFTTT
Φτιάξε έναν λογαριασμό στο IFTTT.
Δημιούργησε ένα applet:
Trigger: "Say a phrase with Google Assistant" (π.χ. "Turn on light")
Action: "Webhook Request" προς το ESP32 IP (π.χ.
http://192.168.1.10/light/on)
Το ESP32 λαμβάνει την εντολή και ενεργοποιεί το ρελέ
🗣️ Επιλογή B: Offline Φωνή με Raspberry Pi
Εγκατέστησε τις βιβλιοθήκες
vosk,speechrecognition,pyaudioΜικρό script αναγνωρίζει φράσεις π.χ. "άναψε φως" και στέλνει σήμα μέσω serial στο Arduino
4️⃣ Έξυπνη Κλειδαριά με Solenoid και NFC
🔌 Βήμα 4: Συνδέσεις
NFC Module:
SDA → 21 (ESP32)
SCL → 22 (ESP32)
VCC/GND κανονικά
Solenoid Lock:
Μέσω ρελέ για 5V τροφοδοσία
🔐 Λογική:
Όταν η κάρτα NFC είναι αποδεκτή, το ESP32 ενεργοποιεί για 3 δευτερόλεπτα το ρελέ που ανοίγει την κλειδαριά.
5️⃣ Έλεγχος από Κινητό με Flask App (Python)
📱 Βήμα 5: Flask Server
Σύνδεσε τον υπολογιστή/το Pi με το ESP32 μέσω serial ή HTTP
Τρέξε ένα Flask app με κουμπιά για "Φως ON/OFF", "Κλείδωμα/Ξεκλείδωμα"
Χρησιμοποίησε
requests.post()ήserial.write()για αποστολή εντολών
🧠 Παράδειγμα:
/light_on→ στέλνει στο ESP32/Arduino σήμα για άναμμα φώτων/unlock_door→ ξεκλειδώνει το solenoid
6️⃣ Dashboard στο Raspberry Pi
🖥️ Βήμα 6: Προβολή Δεδομένων
Φτιάξε σε Flask ή Node-RED dashboard:
Πραγματικό χρόνο θερμοκρασία/υγρασία
Κατάσταση φώτων και πόρτας
Προαιρετικά βάλε και ιστορικό με Grafana + InfluxDB
Μη διστάσεις να αφήσεις το σχόλιό σου εδώ κάτω!
Θέλω να μάθω τις εμπειρίες σου, τις ιδέες σου και να σε βοηθήσω να κάνεις το smart room σου ακόμα πιο τέλειο! 🚀
Σχόλια
Δημοσίευση σχολίου