Πίνακας περιεχομένων:

Ασύρματος αισθητήρας θερμοκρασίας και κίνησης IoT: 11 βήματα (με εικόνες)
Ασύρματος αισθητήρας θερμοκρασίας και κίνησης IoT: 11 βήματα (με εικόνες)

Βίντεο: Ασύρματος αισθητήρας θερμοκρασίας και κίνησης IoT: 11 βήματα (με εικόνες)

Βίντεο: Ασύρματος αισθητήρας θερμοκρασίας και κίνησης IoT: 11 βήματα (με εικόνες)
Βίντεο: Έξυπνες Μεταφορές και Εφοδιαστική Αλυσίδα 2024, Ιούλιος
Anonim
Ασύρματος αισθητήρας θερμοκρασίας και κίνησης IoT
Ασύρματος αισθητήρας θερμοκρασίας και κίνησης IoT

Εμπνεύστηκα από τα πολλά έργα IoT που βρίσκονται στο Instructables, οπότε στη διαδικασία εκμάθησης προσπαθώ να συνδυάσω κάποια χρήσιμη εφαρμογή που είναι σχετική. Ως επέκταση στα προηγούμενα Instructables που σχετίζονται με τον αισθητήρα θερμοκρασίας IoT, τώρα πρόσθεσα περισσότερες δυνατότητες στο υποσύστημα. Οι πρόσθετες λειτουργίες είναι:

- Σύνδεση NTP για να έχετε χρόνο

- LED που μπορεί να ελεγχθεί από απόσταση

- Αισθητήρας PIR για ανίχνευση κίνησης

- Συνδεδεμένο Raspberry PI που εκτελεί homekit για να επιτρέπεται η σύνδεση στο iPhone "Home"

Βήμα 1: Η έννοια, η συνδεσιμότητα και τα στοιχεία

Η έννοια, η συνδεσιμότητα και τα στοιχεία
Η έννοια, η συνδεσιμότητα και τα στοιχεία

Η ιδέα όπως φαίνεται παραπάνω είναι να επιτρέπεται η παρακολούθηση της θερμοκρασίας από απόσταση με την πρόσθετη δυνατότητα ανίχνευσης κίνησης εάν κάποιος βρίσκεται στο σπίτι και να επιτρέπεται η ειδοποίηση μέσω LED. Η πρόσβαση στη μονάδα μπορεί να γίνει τοπικά στο LAN ή απομακρυσμένα μέσω διακομιστή ιστού. Μπορείτε επίσης να συνδέσετε πίτα βατόμουρου (προαιρετικά) με εγκατεστημένο αξεσουάρ Homekit για να επιτρέψετε τη σύνδεση με την εφαρμογή iPhone "Home".

Όπως και στην προηγούμενη έκδοση, τα ακόλουθα στοιχεία απαιτούνται σε αυτό το έργο, σημειώστε ότι ο παρακάτω σύνδεσμος είναι σύνδεσμος συνεργατών, οπότε αν δεν θέλετε να συνεισφέρετε, απλώς μεταβείτε απευθείας.

- Πίνακας NodeMcu Lua ESP8266 dev. Παίρνω το δικό μου από το banggood.

- Αισθητήρας θερμοκρασίας LM35

- Αισθητήρας PIR

- LED

- Πίνακας πρωτότυπου

- Arduino IDE

- Εργασία διακομιστή ιστού με ενεργοποιημένη τη δέσμη ενεργειών διακομιστή php

- Raspberry pi (προαιρετικό)

Βήμα 2: Βάλτε το Arduino IDE να λειτουργήσει

Πάρτε το Arduino IDE στη δουλειά
Πάρτε το Arduino IDE στη δουλειά

Για λεπτομέρειες σχετικά με αυτό το βήμα, ανατρέξτε στις προηγούμενες οδηγίες μου Βήμα 2. στον αισθητήρα θερμοκρασίας IoT με ESP8266.

Βήμα 3: Σύνδεση αισθητήρα θερμοκρασίας, LED και PIR

Σύνδεση αισθητήρα θερμοκρασίας, LED και PIR
Σύνδεση αισθητήρα θερμοκρασίας, LED και PIR
Σύνδεση αισθητήρα θερμοκρασίας, LED και PIR
Σύνδεση αισθητήρα θερμοκρασίας, LED και PIR
Σύνδεση αισθητήρα θερμοκρασίας, LED και PIR
Σύνδεση αισθητήρα θερμοκρασίας, LED και PIR

Ο αισθητήρας θερμοκρασίας LM35 έχει 3 πόδια, το πρώτο σκέλος είναι VCC, μπορείτε να το συνδέσετε στο 3.3V (η έξοδος της πλακέτας ESP8266 είναι 3.3V). Το μεσαίο πόδι είναι Vout (από όπου διαβάζεται η θερμοκρασία, μπορείτε να το συνδέσετε στην αναλογική είσοδο του πείρου ESP8266 AD0, αυτό βρίσκεται στην επάνω δεξιά πλευρά του πίνακα όπως φαίνεται στην εικόνα. Και το δεξί πόδι πρέπει να είναι συνδεδεμένο με το έδαφος.

Ο αισθητήρας PIR αποτελείται επίσης από 3 πόδια, μπορείτε να δείτε ένα μικρό σημάδι +, 0, - στο PCB δίπλα στο πόδι. Συνδέστε λοιπόν το "+" σε 3,3V, "-" στη γείωση και το μεσαίο πείρο "0" στο pin D6 του ESP8266.

Το LED είχε μόνο 2 πόδια, "+" (Anode), το μεγαλύτερο πόδι συνδέστε το με τον πείρο D5 του ESP8266 και "-" (Cathode) τα μικρότερα πόδια πρέπει να συνδεθούν με τη γείωση (GND).

Βήμα 4: Ρύθμιση του διακομιστή ιστοσελίδων Cloud

Υπάρχει μια συγκεκριμένη υπόθεση για αυτό το βήμα:

Έχετε ήδη έναν διακομιστή ιστού που λειτουργεί, φιλοξενείται σε έναν κατάλληλο τομέα. Και είστε εξοικειωμένοι με τη μεταφορά αρχείων στον διακομιστή ιστού σας μέσω FTP χρησιμοποιώντας το Filezilla ή κάποιο άλλο πρόγραμμα FTP.

Ανεβάστε το συνημμένο αρχείο zip στη ρίζα του ιστότοπού σας. Ας υποθέσουμε ότι για αυτήν την άσκηση ο ιστότοπός σας είναι "https://arduinotestbed.com"

Ας υποθέσουμε ότι όλο το αρχείο βρίσκεται στη ρίζα του διακομιστή ιστού, εάν το έχετε αποθηκεύσει σε άλλο φάκελο, προσαρμόστε ανάλογα τη θέση του αρχείου τόσο στο αρχείο ArduinoData3.php όσο και στο σκίτσο του Arduino. Εάν δεν είστε σίγουροι, ενημερώστε με και θα προσπαθήσω με τον καλύτερο δυνατό τρόπο να βοηθήσω.

Βήμα 5: Ρύθμιση της βάσης δεδομένων για τη διατήρηση των δεδομένων θερμοκρασίας

Ρύθμιση της βάσης δεδομένων για τη διατήρηση των δεδομένων θερμοκρασίας
Ρύθμιση της βάσης δεδομένων για τη διατήρηση των δεδομένων θερμοκρασίας
Ρύθμιση της βάσης δεδομένων για τη διατήρηση των δεδομένων θερμοκρασίας
Ρύθμιση της βάσης δεδομένων για τη διατήρηση των δεδομένων θερμοκρασίας
Ρύθμιση της βάσης δεδομένων για τη διατήρηση των δεδομένων θερμοκρασίας
Ρύθμιση της βάσης δεδομένων για τη διατήρηση των δεδομένων θερμοκρασίας

χρησιμοποιούμε βάση δεδομένων sqllite για αυτήν την άσκηση. Το Sqllite είναι η βάση δεδομένων με βάση το αρχείο που δεν απαιτεί διακομιστή. Η βάση δεδομένων βρίσκεται τοπικά στον διακομιστή ιστού σας. Εάν ανησυχείτε για την ασφάλεια, θα πρέπει να τροποποιήσετε τον κώδικα για να χρησιμοποιήσετε έναν κατάλληλο διακομιστή βάσης δεδομένων όπως το mysql ή το MSSQL.

Πριν ξεκινήσετε, πρέπει να αλλάξετε τον κωδικό πρόσβασης της βάσης δεδομένων που βρίσκεται στο αρχείο phpliteadmin.php. Ανοίξτε λοιπόν αυτό το αρχείο στον διακομιστή ιστού σας και επεξεργαστείτε τις πληροφορίες κωδικού πρόσβασης στη γραμμή 91 στον κωδικό πρόσβασης που θέλετε.

Στη συνέχεια, δείξτε στο phpliteadmin.php στον διακομιστή ιστού σας. Χρησιμοποιώντας το παράδειγμά μας, προηγουμένως πρέπει να υποδείξετε τη διεύθυνση

Επειδή δεν υπάρχει βάση δεδομένων στο διακομιστή, θα εμφανιστεί η οθόνη για τη δημιουργία της βάσης δεδομένων. Εισαγάγετε "temperature.db" στο νέο πλαίσιο εισαγωγής βάσης δεδομένων και κάντε κλικ στο κουμπί "Δημιουργία". Στη συνέχεια, η βάση δεδομένων θα δημιουργηθεί με επιτυχία. Σε αυτό το σημείο η βάση δεδομένων είναι ακόμα κενή, οπότε θα χρειαστείτε το script sql για να δημιουργήσετε τη δομή του πίνακα βάσης δεδομένων για να φιλοξενήσετε τα δεδομένα.

Βήμα 6: Δημιουργήστε τον Πίνακα "θερμοκρασία"

Δημιουργήστε το
Δημιουργήστε το
Δημιουργήστε το
Δημιουργήστε το

Για να δημιουργήσετε τον πίνακα, κάντε κλικ στην καρτέλα "SQL" και επικολλήστε στο ακόλουθο ερώτημα sql.

ΑΡΧΗ ΣΥΝΑΛΛΑΓΗΣ?

-----Δομή πίνακα για τη θερμοκρασία ---- ΔΗΜΙΟΥΡΓΙΑ ΠΙΝΑΚΑ «θερμοκρασία» («ID» INTEGER PRIMARY KEY NOT NULL, υγρασία INT NOT NULL, θερμοκρασία REAL, timestamp DATETIME DEFAULT CURRENT_TIMESTAMP, «θερμάστρα» BOOLEAN, «goaltemp» ΠΡΑΓΜΑΤΙΚΟΣ); ΔΙΑΠΡΑΤΤΩ;

Στη συνέχεια, κάντε κλικ στο κουμπί "Μετάβαση" στο κάτω μέρος. Ο πίνακας πρέπει να δημιουργηθεί με επιτυχία.

Εάν ανανεώσετε τη σελίδα, θα πρέπει τώρα να δείτε τον πίνακα "θερμοκρασία" κάτω από τη βάση δεδομένων temperature.db στην αριστερή πλευρά. Αν κάνετε κλικ στον πίνακα θερμοκρασίας, εάν εξακολουθείτε να μην έχετε δεδομένα.

Τώρα που έχουμε δημιουργήσει τη βάση δεδομένων, μπορείτε να δείξετε το ακόλουθο url

arduinotestbed.com/ArduinoData3.php

Θα βλέπατε τον επιλογέα θερμοκρασίας να δείχνει εικονικά δεδομένα, τον αισθητήρα κίνησης και τον πίνακα ελέγχου για να γυρίσετε το LED. Το κάτω μέρος του γραφήματος θα εξακολουθεί να είναι κενό επειδή δεν υπάρχουν ακόμη δεδομένα.

Βήμα 7: Ανεβάστε το Σκίτσο αισθητήρα θερμοκρασίας στο ESP8266 σας

Ανεβάστε το Σκίτσο αισθητήρα θερμοκρασίας στο ESP8266 σας
Ανεβάστε το Σκίτσο αισθητήρα θερμοκρασίας στο ESP8266 σας
Ανεβάστε το Σκίτσο αισθητήρα θερμοκρασίας στο ESP8266 σας
Ανεβάστε το Σκίτσο αισθητήρα θερμοκρασίας στο ESP8266 σας
Ανεβάστε το Σκίτσο αισθητήρα θερμοκρασίας στο ESP8266 σας
Ανεβάστε το Σκίτσο αισθητήρα θερμοκρασίας στο ESP8266 σας

Τώρα αντιγράψτε όλο το συνημμένο αρχείο και ανοίξτε το "ESP8266TempPIRSensor.ino" η διεπαφή Arduino θα δημιουργήσει το φάκελο για εσάς. Μετακινήστε τα υπόλοιπα αρχεία στο νέο φάκελο που δημιουργήθηκε από τη διεπαφή Arduino.

Τροποποιήστε τον καθορισμένο διακομιστή ιστού και τη θέση του αρχείου data_store3.php, εάν είναι απαραίτητο. Στη συνέχεια, ανεβάστε το σκίτσο στο ESP8266.

Εάν όλα πάνε καλά, θα πρέπει να μεταφορτωθεί με επιτυχία και την πρώτη φορά που το ESP θα μεταβεί σε λειτουργία AP. Μπορείτε να χρησιμοποιήσετε το φορητό υπολογιστή ή το κινητό σας τηλέφωνο για να συνδεθείτε σε αυτό. Θα πρέπει να μπορείτε να βρείτε το AP με το όνομα "ESP-TEMP".- Προσπαθήστε να συνδεθείτε στο ESP-TEMP χρησιμοποιώντας το φορητό υπολογιστή του κινητού σας τηλεφώνου- Μάθετε ποια είναι η διεύθυνση IP στην οποία έχετε εκχωρήσει, κάνοντας το Εντολή "ipconfig" στα παράθυρα ή εντολή "ifconfig" σε linux ή mac. -Εάν χρησιμοποιείτε iphone, κάντε κλικ στο κουμπί i δίπλα στο ESP-TEMP στο οποίο είστε συνδεδεμένοι έχει το ip 192.168.4.1, οπότε μπορείτε απλώς να μεταβείτε στη διεύθυνση https://192.168.4.1 και θα πρέπει να εμφανιστεί η σελίδα ρυθμίσεων όπου μπορείτε να εισαγάγετε το ssid του δρομολογητή wifi και το κλειδί psk. μόλις τα πληκτρολογήσετε και τα δύο και σημειώσετε το πλαίσιο ελέγχου "Update Wifi Config", κάντε κλικ στο "update" για να ενημερώσετε τη ρύθμιση στο ESP8266.

Εάν θέλετε να ενεργοποιήσετε τον εντοπισμό σφαλμάτων στη Σειριακή οθόνη, θα πρέπει να μην σχολιάσετε το

#define DEBUG

γραμμή στο ρολόι.h και σχολίασε το

//#undef DEBUG

γραμμή. στη συνέχεια κάντε κλικ στο Εργαλεία-> Σειριακή οθόνη. Το παράθυρο σειριακής οθόνης θα σας δείξει την πρόοδο της σύνδεσης wifi και θα εμφανίσει την τοπική διεύθυνση IP του ESP8266. Η εσωτερική μπλε λυχνία LED θα αναβοσβήνει μία φορά όταν πραγματοποιηθεί η ένδειξη θερμοκρασίας. Θα ενεργοποιηθεί επίσης όταν εντοπιστεί κίνηση.

Βήμα 8: Πρόσβαση στον αισθητήρα θερμοκρασίας και κίνησης

Πρόσβαση στον αισθητήρα θερμοκρασίας και κίνησης
Πρόσβαση στον αισθητήρα θερμοκρασίας και κίνησης
Πρόσβαση στον αισθητήρα θερμοκρασίας και κίνησης
Πρόσβαση στον αισθητήρα θερμοκρασίας και κίνησης

Θα πρέπει τώρα να μπορείτε να δείξετε για άλλη μια φορά τον τοπικό διακομιστή ιστού του ESP8266. Και αυτό θα δείξει τον χρόνο, τη θερμοκρασία και τον αισθητήρα κίνησης.

Τώρα μπορείτε επίσης να δείξετε τον εξωτερικό διακομιστή ιστού σας, σε αυτό το παράδειγμα είναι

Μπορείτε να σύρετε το κουμπί κάτω από τον πίνακα ελέγχου για να αλλάξετε τη λυχνία LED. Το χρησιμοποιώ για να ειδοποιήσω τα παιδιά μου όταν επιστρέφω σπίτι από τη δουλειά.

Ο αισθητήρας κίνησης ενημερώνεται κάθε δευτερόλεπτο περίπου, οπότε θα πρέπει να ανανεώνετε τη σελίδα πιο συχνά για να δείτε αν ανιχνεύεται κίνηση. Προς το παρόν, η αυτόματη ανανέωση έχει οριστεί στα 60 δευτερόλεπτα. Η θερμοκρασία διαρκεί ανάγνωση κάθε δύο λεπτά, αλλά μπορείτε επίσης να το προσαρμόσετε στην ώρα που σας ταιριάζει.

Συγχαρητήρια αν τα καταφέρατε μέχρι εδώ !!, δώστε ένα χτύπημα στο πίσω μέρος και απολαύστε τη δημιουργία σας. Το επόμενο βήμα είναι προαιρετικό, μόνο αν θέλετε να μπορείτε να ελέγχετε το LED και να παρακολουθείτε τη θερμοκρασία καθώς και τον αισθητήρα κίνησης από συσκευές Apple.

Βήμα 9: Εγκαταστήστε το HomeBridge for HomeKit στο Raspberry Pi (προαιρετικό)

Εγκατάσταση HomeBridge για HomeKit στο Raspberry Pi (προαιρετικό)
Εγκατάσταση HomeBridge για HomeKit στο Raspberry Pi (προαιρετικό)

Εμπνεύστηκα από τις οδηγίες του GalenW1 που μου επιτρέπουν να μάθω τόσα πολλά για το HomeBridge.

Για να εγκαταστήσετε το HomeBridge for HomeKit σε ένα Raspberry Pi, μπορείτε να χρησιμοποιήσετε τις οδηγίες που ακολουθούν

github.com/nfarina/homebridge

Το HomeBridge σάς επιτρέπει να συνδέσετε την εφαρμογή Home στο Iphone με τους αισθητήρες που μόλις δημιουργήσατε στα προηγούμενα βήματα.

Ένα από τα οποία έχετε εγκαταστήσει το HomeBridge, πρέπει να εγκαταστήσετε μερικές προσθήκες:

- Αισθητήρας θερμοκρασίας

- Αισθητήρας κίνησης

- Διακόπτης

sudo npm install -g homebridge-http-temperature

sudo npm install -g homebridge -MotionSensor

sudo npm install -g homebridge-http-simple-switch

Μόλις εγκατασταθεί η προσθήκη, θα χρειαστεί να διαμορφώσετε το αρχείο config.json που βρίσκεται παρακάτω

sudo vi /home/pi/.homebridge/config.json

μπορείτε να προσαρμόσετε το περιεχόμενο του αρχείου config.json σύμφωνα με το παρακάτω, βεβαιωθείτε ότι το url δείχνει τη σωστή τοποθεσία.

Βήμα 10: Σύνδεση Homebridge με το iPhone σας

Σύνδεση Homebridge με το iPhone σας
Σύνδεση Homebridge με το iPhone σας
Σύνδεση Homebridge με το iPhone σας
Σύνδεση Homebridge με το iPhone σας
Σύνδεση Homebridge με το iPhone σας
Σύνδεση Homebridge με το iPhone σας

Τώρα που έχουν διαμορφωθεί όλα τα αξεσουάρ, μπορείτε να εκτελέσετε το homebridge χρησιμοποιώντας την ακόλουθη εντολή

homebridge

Θα πρέπει να δείτε την οθόνη όπως παραπάνω. Μπορείτε να ακολουθήσετε το ακόλουθο βήμα για να προσθέσετε το Homebridge στο homekit σας.

- Τώρα ξεκινήστε την εφαρμογή "Home" στο iPhone σας

- Κάντε κλικ στο κουμπί "Προσθήκη αξεσουάρ"

- θα εμφανιστεί η οθόνη για τη σάρωση του κώδικα, μπορείτε να χρησιμοποιήσετε την κάμερα του τηλεφώνου σας για να σαρώσετε τον κώδικα από την οθόνη Raspberry Pi ή να προσθέσετε τον κώδικα χειροκίνητα.

Λάβετε υπόψη ότι τόσο το Iphone όσο και το Raspberry Pi πρέπει να βρίσκονται στον ίδιο ασύρματο δρομολογητή για να λειτουργούν.

- Μόλις συνδεθείτε, θα σας ζητηθεί η οθόνη που λέει ότι τα αξεσουάρ σας δεν είναι πιστοποιημένα, κάντε κλικ στο κουμπί "Προσθήκη ούτως ή άλλως" για να συνεχίσετε

- Στη συνέχεια θα έχετε την επιλογή να διαμορφώσετε καθένα από τα αξεσουάρ, σε αυτήν την περίπτωση έχουμε τον διακόπτη φωτός, τον αισθητήρα κίνησης και τον αισθητήρα θερμοκρασίας.

- Στην τελική οθόνη θα εμφανίζονται όλα τα εξαρτήματα που είναι συνδεδεμένα.

Μόλις συνδεθεί, μπορείτε να χρησιμοποιήσετε το Siri για να ελέγξετε τον αισθητήρα κίνησης, τη θερμοκρασία και να ανάψετε και να σβήσετε το φως.

Βήμα 11: Βάλτε το Homebridge να λειτουργεί στο παρασκήνιο

Βάλτε το Homebridge να λειτουργεί στο παρασκήνιο
Βάλτε το Homebridge να λειτουργεί στο παρασκήνιο
Βάλτε το Homebridge να λειτουργεί στο παρασκήνιο
Βάλτε το Homebridge να λειτουργεί στο παρασκήνιο
Βάλτε το Homebridge να λειτουργεί στο παρασκήνιο
Βάλτε το Homebridge να λειτουργεί στο παρασκήνιο

Συγχαρητήρια!! το έχεις κάνει Ως μπόνους, μπορείτε να εκτελέσετε homebridge στο παρασκήνιο χρησιμοποιώντας την ακόλουθη εντολή:

homebridge &

Τώρα μπορείτε να διασκεδάσετε με το Siri και να απολαύσετε τον κόπο σας.

Σας ευχαριστούμε που το ακολουθήσατε μέχρι το τέλος. Αν σας αρέσει αυτό, παρακαλώ αφήστε μερικά σχόλια ή ψηφίστε με.

Συνιστάται: