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

Control House Lights With Google Assistant Using Arduino: 7 βήματα
Control House Lights With Google Assistant Using Arduino: 7 βήματα

Βίντεο: Control House Lights With Google Assistant Using Arduino: 7 βήματα

Βίντεο: Control House Lights With Google Assistant Using Arduino: 7 βήματα
Βίντεο: #12 Цифровое чтение/запись VTScada Modbus | ПЛК Outseal Arduino #VTScada #Modbus #ПЛК #ArduinoPLC 2024, Νοέμβριος
Anonim
Control House Lights With Google Assistant Using Arduino
Control House Lights With Google Assistant Using Arduino
Control House Lights With Google Assistant Using Arduino
Control House Lights With Google Assistant Using Arduino
Control House Lights with Google Assistant Using Arduino
Control House Lights with Google Assistant Using Arduino
Control House Lights with Google Assistant Using Arduino
Control House Lights with Google Assistant Using Arduino

(Ενημέρωση στις 22 Αυγούστου 2020: Αυτό το εκπαιδευτικό είναι 2 ετών και βασίζεται σε ορισμένες εφαρμογές τρίτων. Οποιαδήποτε αλλαγή από την πλευρά τους μπορεί να κάνει αυτό το έργο μη λειτουργικό. Μπορεί να λειτουργεί ή να μην λειτουργεί τώρα, αλλά μπορείτε να το ακολουθήσετε ως μια αναφορά και τροποποιήστε ανάλογα.)

Γειά σου! Αυτό είναι το πρώτο μου εγχειρίδιο στο οποίο θα δείξω πώς μπορούμε να ελέγχουμε τα φώτα των σπιτιών μας με τη φωνή μας μέσω του φωνητικού βοηθού Google χρησιμοποιώντας το Arduino. Δεν ακούγεται ωραίο να ενεργοποιείτε και να σβήνετε τα φώτα του σπιτιού απλά δίνοντας εντολή στον φωνητικό βοηθό Google που πιθανώς όλοι έχουμε στα smartphone μας.

Ας ξεκινήσουμε λοιπόν με το Instructable. Αυτό το Instrucable δεν περιορίζεται μόνο στα φώτα αλλά μπορείτε να ελέγξετε οποιαδήποτε συσκευή στο σπίτι σας. Θα χρησιμοποιήσουμε μια "μονάδα ρελέ" σε αυτό το έργο επειδή έχουμε να κάνουμε με ρεύμα εναλλασσόμενου ρεύματος.

Σημείωση: Εξασφαλίστε πρώτα την ασφάλειά σας και προχωρήστε με δική σας ευθύνη καθώς το ρεύμα εναλλασσόμενου ρεύματος στα σπίτια μας λειτουργεί σε υψηλή τάση 100V έως 250V (ποικίλλει για διαφορετικές χώρες).

Βήμα 1: Προαπαιτούμενα

Θα είναι επωφελές εάν πληροίτε τις ακόλουθες απαιτήσεις πριν ξεκινήσετε:

1) Λογαριασμός IFTTT (Μπορείτε να εγγραφείτε για δωρεάν λογαριασμό στον ιστότοπο ή την εφαρμογή τους)

Σημείωση: Εγγραφείτε με το ίδιο αναγνωριστικό ηλεκτρονικού ταχυδρομείου που σχετίζεται με τον Βοηθό Google

2) Λογαριασμός Blynk (Μπορείτε να εγγραφείτε για δωρεάν λογαριασμό κατεβάζοντας την εφαρμογή blynk)

3) Συσκευή Android με Βοηθό Google (Λειτουργεί Marshmallow 6.0 ή παραπάνω, το δικό μου είναι 6.0)

Σημείωση: Η συσκευή IOS μπορεί να χρησιμοποιηθεί με τον Βοηθό Google, αλλά προσωπικά δεν την έχω δοκιμάσει.

4) Υπολογιστής Windows με εγκατεστημένο το 'Arduino IDE'

Παρακαλούμε δείτε τη λίστα των απαιτούμενων στοιχείων στο επόμενο βήμα.

Βήμα 2: Απαιτούνται εξαρτήματα (με γρήγορες προδιαγραφές)

Απαιτούμενα εξαρτήματα (με γρήγορες προδιαγραφές)
Απαιτούμενα εξαρτήματα (με γρήγορες προδιαγραφές)
Απαιτούμενα εξαρτήματα (με γρήγορες προδιαγραφές)
Απαιτούμενα εξαρτήματα (με γρήγορες προδιαγραφές)
Απαιτούμενα εξαρτήματα (με γρήγορες προδιαγραφές)
Απαιτούμενα εξαρτήματα (με γρήγορες προδιαγραφές)

Κατάλογος στοιχείων που απαιτούνται:

1) Πλακέτα μικροελεγκτή Arduino Uno R3 (Ποσότητα: 1)

2) Ενότητα ESP8266 ESP-01 WiFi (Ποσότητα: 1)

3) Ενότητα ρελέ (Μονό κανάλι 5V) (Ποσότητα: 1)

4) Jumper Wires (Ποσότητα: Ανά απαίτηση)

5) Λάμπα AC, πρίζα λαμπτήρα και ηλεκτρικά καλώδια (Ποσότητα: 1 λάμπα, 1 πρίζα λαμπτήρα, Ηλεκτρικό σύρμα μήκους όπως απαιτείται.)

1) Πλακέτα μικροελεγκτή Arduino Uno R3: Το πιο πιθανό είναι ότι γνωρίζετε τους μικροελεγκτές Arduino. Για όσους δεν είναι, μπορείτε να το υποθέσετε ως βασικό συστατικό στα περισσότερα έργα IoT (Internet of Things). Σε αυτό το έργο έχω χρησιμοποιήσει το "Arduino Uno". MCU με βάση ATmega328. Διαθέτει 14 ψηφιακούς ακροδέκτες I/O (εκ των οποίων 6 ακίδες μπορούν να χρησιμοποιηθούν για έξοδο PWM), 6 αναλογικούς ακροδέκτες εισόδου, λειτουργεί στα 5V και η τάση εισόδου κυμαίνεται από 7V-20V, ταχύτητα ρολογιού 20 MHz με μνήμη flash 32 kb.

Μπορούμε να συνδέσουμε διάφορους αισθητήρες σε αυτό και να βάλουμε τη λογική μας σε έναν κώδικα για να λάβουμε την απαιτούμενη λειτουργικότητα από τους αισθητήρες και να ανεβάσουμε το τελικό σκίτσο στο Arduino μέσω του 'Arduino IDE'.

2) Ενότητα ESP8266 ESP-01 WiFi: Το ESP8266 ESP-01 είναι η πιο προσιτή μονάδα WiFi και το χρησιμοποιούμε για να συνδέσουμε τον μικροελεγκτή μας σε δίκτυο WiFi και να κάνουμε μικρές συνδέσεις TCP/IP. Διαθέτει 8 ακίδες στο τσιπ που είναι Ground, TX, GPIO-2 (I/O γενικής χρήσης), CH_EN (Enable Chip), GPIO-0, Reset, RX, Vcc. Λειτουργεί με τροφοδοσία +3.3v.

3) Μονάδα ρελέ: Έχω χρησιμοποιήσει ενότητα ρελέ μονής καναλιού 5V εδώ. Διαθέτει 3 ακίδες για σύνδεση με το Arduino και 3 θύρες για τη σύνδεση συσκευών. Ο πείρος Vcc χρησιμοποιείται για την τροφοδοσία του ρελέ με 5V, έναν πείρο γείωσης, έναν πείρο IN για ψηφιακή είσοδο. 3 θύρες είναι COM (κοινή), NO (κανονικά ανοιχτή), NC (κανονικά κλειστή) για να τροφοδοτούν τις συσκευές (π.χ. λαμπτήρα).

4) Jumper Wires: Για σύνδεση με το Arduino. Μπορείτε να αγοράσετε σετ από αρσενικό σε αρσενικό, θηλυκό σε θηλυκό, αρσενικό σε θηλυκό jumper καλώδια από το amazon ή από οποιαδήποτε άλλη αγορά της chioce σας.

5) Λάμπα AC, Υποδοχή λαμπτήρα και ηλεκτρικά καλώδια: Για σύνδεση πρίζας με μονάδα ρελέ. Μπορείτε εύκολα να βρείτε αυτά τα αντικείμενα στο σπίτι σας ή σε κοντινά καταστήματα.

Βήμα 3: Διαμόρφωση της εφαρμογής Blynk

1) Ανοίξτε και συνδεθείτε στην εφαρμογή Blynk.

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

2) Δημιουργήστε «Νέο έργο» και ονομάστε το όπως θέλετε.

3) Επιλέξτε "Arduino Uno" από τη λίστα συσκευών και τον τύπο σύνδεσης ως "WiFi", επιλέξτε το θέμα σας και κάντε κλικ στο "Δημιουργία".

4) Θα λάβετε ένα E-mail με το εξουσιοδοτημένο διακριτικό σας. Παρακαλώ σημειώστε το.

5) Τώρα κάντε κλικ στο σύμβολο + στο επάνω μέρος και προσθέστε ένα κουμπί.

6) Κάντε κλικ στο κουμπί και ορίστε την ακίδα εξόδου σε "Digitalηφιακό" και "D7". Ορίστε τις τιμές καρφιτσών σε 1 και 0 αντίστοιχα. (Η ερώτηση μπορεί να εγείρεται στο μυαλό σας εδώ γιατί το έχω θέσει σε (1, 0) όχι (0, 1); Λοιπόν, το εξήγησα στο Βήμα 6 αυτού του Οδηγού). Ορίστε τη λειτουργία εναλλαγής σε "Push" και ονομάστε όλες τις ετικέτες όπως σας αρέσει.

7) Κάντε ξανά κλικ στο σύμβολο + και προσθέστε εισαγωγή κειμένου.

8) Κάντε κλικ στην εισαγωγή κειμένου και ορίστε την καρφίτσα "Έξοδος" σε V0, "Όριο χαρακτήρων" σε 5 και μπορείτε να ονομάσετε άλλα πεδία όπως θέλετε.

9) Ανοίξτε τη γραμμή εντολών στον υπολογιστή σας με ενεργή σύνδεση στο Διαδίκτυο και πληκτρολογήστε την ακόλουθη εντολή:

ping blynk-cloud.com

Σημειώστε τη διεύθυνση IP που μοιάζει με αυτό

188.166.206.43

Είναι η διεύθυνση IP του διακομιστή blynk για τη χώρα σας.

Τώρα μεταβείτε στο επόμενο βήμα για τη δημιουργία μικροεφαρμογής IFTTT.

Βήμα 4: Δημιουργία μικροεφαρμογής IFTTT

Mightσως έχετε ήδη δημιουργήσει το λογαριασμό σας στο IFTTT.com ή στην εφαρμογή IFTTT. Εάν όχι, τότε δημιουργήστε το.

Βήματα για τη δημιουργία μικροεφαρμογής IFTTT για τον Βοηθό Google:

1) Ακολουθήστε το σεμινάριο που αναφέρεται στον παρακάτω σύνδεσμο μαζί με τα βήματα που αναφέρω εδώ:

Πώς να δημιουργήσετε μικροεφαρμογή IFTTT;

2) Δημιουργία σκανδάλης:

θ) Αναζητήστε τον Βοηθό Google στη γραμμή αναζήτησης κατά τη δημιουργία σκανδάλης.

ii) Επιλέξτε "Πείτε μια φράση με ένα συστατικό κειμένου"

iii) Μπορείτε να εισαγάγετε τρεις τρόπους για να πείτε τη φράση σας. Εισαγάγετε τις φράσεις σας με συστατικό κειμένου. Για παράδειγμα, έχω εισαγάγει "turn $ lights". Εδώ, ό, τι και να πω στη θέση του $ θα είναι το συστατικό κειμένου. Εισαγάγετε επίσης τη φράση που θέλετε να ακούσετε από τον Βοηθό Google.

iv) Επιλέξτε γλώσσα και κάντε κλικ στο Δημιουργία σκανδάλης.

3) Επιλέξτε δράση:

θ) Αναζητήστε Webhooks στη γραμμή αναζήτησης ενώ επιλέγετε ενέργεια.

ii) Κάντε κλικ στο «Υποβολή αιτήματος ιστού».

iii) Τοποθετήστε το ακόλουθο στο πεδίο URL:

"διεύθυνση ip από το προηγούμενο βήμα"/"Το διακριτικό έγκρισης"/pin/"Αριθμός καρφίτσας εισαγωγής κειμένου blynk"

Εισαγάγετε τη διεύθυνση IP, το διακριτικό έγκρισης και τον αριθμό καρφιτσών (δηλαδή V0 ή όποιο αριθμό pin που ορίσατε για εισαγωγή κειμένου στην εφαρμογή blynk) χωρίς τα διπλά εισαγωγικά.

iv) Ορίστε τη "Μέθοδο" σε PUT, "Τύπος περιεχομένου" στην εφαρμογή/json και αντιγράψτε τη συνέχεια στο "Body"

["{{Πεδίο κειμένου}}"]

4) Κάντε κλικ στο Τέλος και προχωρήστε στο επόμενο βήμα.

Βήμα 5: Εργασία

Εργαζόμενος
Εργαζόμενος

Η εργασία είναι αρκετά εύκολη όπως μπορείτε να δείτε στην εικόνα, όταν λέμε "OK Google" και δίνουμε εντολή στον Βοηθό Google "ενεργοποιήστε τα φώτα", η μικροεφαρμογή IFTTT θα ενεργοποιηθεί και η "ενεργοποίηση" θα περάσει ως συστατικό κειμένου στο blynk εφαρμογή Η εφαρμογή Blynk το λαμβάνει στο πεδίο εισαγωγής κειμένου και το λαμβάνουμε σε κώδικα arduino χρησιμοποιώντας τη μέθοδο βιβλιοθήκης blynk param.asStr (); Όταν ληφθεί το "on" τότε ο ψηφιακός ακροδέκτης D7 της κάρτας arduino θα ρυθμιστεί στο 0 και θα ανάψουν τα φώτα και όταν λάβει το "off" τότε ο ψηφιακός ακροδέκτης D7 της κάρτας arduino θα ρυθμιστεί σε 1 και τα φώτα θα σβήσουν (πάλι η ίδια σύγχυση από το βήμα 3…. σωστά! Μην ανησυχείτε το εξήγησα στο επόμενο βήμα.)

Βήμα 6: Συνδέσεις

Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις

Questionσως να σας έχει γεννηθεί η ερώτηση ότι "γιατί έθεσα τον πείρο 7 του πίνακα Arduino σε 0 για υψηλή είσοδο και 1 για χαμηλή είσοδο μονάδας ρελέ;"

Η απάντηση είναι απλή επειδή η μονάδα ρελέ που χρησιμοποιώ είναι ενεργή χαμηλή, πράγμα που σημαίνει ότι το ρελέ είναι ενεργό όταν η είσοδος είναι 0 και ανενεργό όταν η είσοδος είναι 1. Αλλά γιατί είναι έτσι; Αυτό συμβαίνει γιατί όταν εκκινήσει το Arduino, τότε όλες οι ακίδες εξόδου του Arduino ρυθμίζονται από προεπιλογή σε υψηλές, γεγονός που θα θέσει το ρελέ ενεργό στην αρχή. Έτσι, για να ορίσετε το ρελέ σε ανενεργό στην αρχή, ενεργοποιείται χαμηλά.

Τώρα ας ελέγξουμε τις συνδέσεις.

Έχω κάνει τις συνδέσεις μεταξύ των ακίδων του Arduino, ESP8266 και της μονάδας ρελέ στην παραπάνω εικόνα. Έχω αναφέρει επίσης τις παρακάτω συνδέσεις γιατί ξέρω πόσο υπέροχο είναι το χειρόγραφό μου:(Το διάγραμμα καρφιτσών του ESP8266 ESP-01 εμφανίζεται στο βήμα 2.

Συνδέσεις μεταξύ Arduino, ESP8266 και μονάδας ρελέ:

Arduino ESP/Relay

Καρφίτσα 7 ---------------------------------------------------- ------- IN του ρελέ

Καρφίτσα 2 ---------------------------------------------------- - RX καρφίτσα ESP

Καρφίτσα 3 ---------------------------------------------------- - TX pin του ESP

ΕΠΑΝΑΦΟΡΑ ------------------------------------------------ ΕΠΑΝΑΦΟΡΑ καρφίτσα του ESP

GND 1 ------------------------------------------------ Πείρος γείωσης ESP

GND 2 ------------------------------------------------ Πείρος γείωσης ρελέ

+3.3V --------------------------------------------------- ------- Vcc του ESP

+5V ---------------------------------------------------- ------ Vcc ρελέ

Συνδέσεις μεταξύ του δεύτερου άκρου της μονάδας ρελέ και των φώτων AC:

ΟΧΙ (κανονικά ανοιχτό) του ρελέ -------------------- οποιαδήποτε άκρη της πρίζας του λαμπτήρα

COM (κοινό) ρελέ ------------------------- +ve τέλος τροφοδοσίας AC

εναπομένον άκρο τροφοδοσίας εναλλασσόμενου ρεύματος ---------------------- εναπομένον άκρο πρίζας λαμπτήρα.

NC (κανονικά κλειστό) --------- αφήστε όπως είναι.

(Ανατρέξτε στο παραπάνω διάγραμμα για καλύτερη κατανόηση)

Βήμα 7: Μεταφόρτωση κώδικα και δοκιμή με τον Βοηθό Google

1) Ανοίξτε το 'Arduino IDE' στον υπολογιστή σας

2) Ανοίξτε το παρακάτω σκίτσο στο IDE

3) Αντικαταστήστε το διακριτικό έγκρισης, το WiFi ssid και τον κωδικό πρόσβασής σας με τα διαπιστευτήριά σας.

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

5) Ανοίξτε την εφαρμογή Blynk και ενεργοποιήστε το WiFi hotspot.

6) Κάντε κλικ στο κουμπί αναπαραγωγής επάνω δεξιά στην εφαρμογή Blynk για να εκτελέσετε το έργο.

7) Θα ειδοποιηθείτε μόλις δημιουργηθεί η σύνδεση.

8) Τώρα ήρθε η ώρα για το πραγματικό. Πείτε "OK Google" στο τηλέφωνό σας, περιμένετε να ανοίξει ο Βοηθός Google και τώρα πείτε τη φράση σας όπως "ενεργοποιήστε τα φώτα", σε λίγα δευτερόλεπτα ο Βοηθός Google θα σας απαντήσει με τη φράση που εισαγάγατε για ακρόαση από τον Βοηθό Google στο IFTTT όπως στην περίπτωσή μου είναι "τα φώτα αναμμένα"

9) Πείτε "σβήστε τα φώτα" για να τα σβήσετε. Μπορείτε επίσης να ελέγξετε τα φώτα σας μέσω κουμπιού στην εφαρμογή Blynk.

Συγχαρητήρια! Τα φώτα σας λειτουργούν τώρα με τη φωνή σας.

Συνιστάται: