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

Ελέγξτε την αυτόματη συρόμενη πύλη με το Home Assistant και το ESP Αρχική σελίδα: 5 βήματα (με εικόνες)
Ελέγξτε την αυτόματη συρόμενη πύλη με το Home Assistant και το ESP Αρχική σελίδα: 5 βήματα (με εικόνες)

Βίντεο: Ελέγξτε την αυτόματη συρόμενη πύλη με το Home Assistant και το ESP Αρχική σελίδα: 5 βήματα (με εικόνες)

Βίντεο: Ελέγξτε την αυτόματη συρόμενη πύλη με το Home Assistant και το ESP Αρχική σελίδα: 5 βήματα (με εικόνες)
Βίντεο: Home Assistant. Μάθημα 9.4 ADD-ON - Xiaomi Gateway 3, ενσωμάτωση zigbee2mqtt 2024, Ιούνιος
Anonim
Ελέγξτε την αυτόματη συρόμενη πύλη με το Home Assistant και το ESPHome
Ελέγξτε την αυτόματη συρόμενη πύλη με το Home Assistant και το ESPHome

Το παρακάτω άρθρο είναι κάποια σχόλια σχετικά με την προσωπική μου εμπειρία στον έλεγχο της αυτόματης συρόμενης πύλης που είχα εγκαταστήσει στο σπίτι μου. Αυτή η πύλη, με το σήμα "V2 Alfariss", εφοδιάστηκε με μερικά τηλεχειριστήρια Phox V2 για τον έλεγχο της. Έχω επίσης ένα κουδούνι πόρτας Google Nest Hello, το οποίο δυστυχώς δεν μπορεί να συνδεθεί στο χειριστήριο συρόμενης πύλης για να ανοίξει απομακρυσμένα την πύλη από την εφαρμογή για κινητά. Για μένα, ένας τρόπος επίλυσης αυτού του περιορισμού ήταν να βρω έναν τρόπο σύνδεσης του αυτόματου ρυθμιστή συρόμενης πύλης στο Διαδίκτυο. Με αυτήν τη νέα, συνδεδεμένη πύλη, μπορώ να απαντήσω σε περιπτώσεις χρήσης, όπως τον έλεγχο της συρόμενης πύλης με το κινητό μου τηλέφωνο. Το πέτυχα χρησιμοποιώντας το Home Assistant, το ESPhome και μερικά ηλεκτρονικά μέρη.

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

Προμήθειες

  • Εργαλεία:

    • Κατσαβίδι
    • Συγκολλητικό σίδερο
    • Πολύμετρο
  • Μέρη:

    • Raspberry PI 3 (πλήρες σετ: 2A alim + 32gb sd card)
    • ESP8266 Wemos D1 mini
    • 2 μονάδες ρελέ
    • 2 αντιστάσεις 10k
    • PCB για πρωτότυπο
    • Καλώδια

Βήμα 1: Πώς λειτουργεί;

Πώς λειτουργεί?
Πώς λειτουργεί?

Η κύρια πρόκληση εδώ είναι να συνδέσετε την αυτόματη συρόμενη πύλη σε ένα έξυπνο τηλέφωνο. Για να γίνει αυτό, ας μετατρέψουμε την αυτόματη συρόμενη πύλη σε συσκευή IOT. Φυσικά, υπάρχουν πολλοί τρόποι για να επιτευχθεί αυτό. Στην περίπτωσή μου, μετά από κάποια πειράματα, αποφάσισα να πάω με:

  • Χρήση του Home Assistant ως κόμβου για τον έλεγχο της πύλης και τη λήψη αιτημάτων από έναν χρήστη.
  • Εγκατάσταση του ESPHome ως υλικολογισμικού στο εσωτερικό του ESP8266.
  • Ηλεκτρονικά μέρη:

    • Ένα πρωτότυπο PCB για συγκόλληση εξαρτημάτων και σύνδεση τους
    • Δύο ρελέ για προσομοίωση του κουμπιού για το άνοιγμα ή το κλείσιμο της πύλης
    • Ένα παλιό τροφοδοτικό 5V για την τροφοδοσία του ESP8266
    • Δύο αντιστάσεις για τη διαίρεση της τάσης από τον αισθητήρα ανοίγματος/κλεισίματος
  • Σύνδεση Διαδικτύου με δρομολογητή (χρειάζεται δυνατότητα διαμόρφωσης κανόνα NAT)
  • Ένας λογαριασμός DuckDNS για να επιτρέψετε την ανάλυση ονόματος στον Βοηθό οικίας σας
  • Ένα κινητό τηλέφωνο για την εγκατάσταση της εφαρμογής Home Assistant και ένα widget στην οθόνη

Η ροή

Κοιτάξτε το σχήμα για να το καταλάβετε καλύτερα.

  1. Από το κινητό σας τηλέφωνο, πιέζετε το γραφικό στοιχείο της εφαρμογής Home Assistant για κινητά
  2. Ένα αίτημα αποστέλλεται στη διεύθυνση Web του Home Assistant (επιλύεται από το DuckDNS και το TLS με κρυπτογράφηση ας).
  3. Ο δρομολογητής Διαδικτύου σας δρομολογεί το αίτημα στην εφαρμογή Βοηθός οικίας
  4. Το Home Assistant αποστέλλει την ενέργεια αιτήματος στο ESPHome
  5. ESPHome ενεργοποιήστε τον κινητήρα αυτόματης συρόμενης πύλης
  6. Σαμπάνια!

Βήμα 2: Εγκατάσταση και ρύθμιση του Home Assistant στο Raspberry PI

Το Home Assistant μπορεί να θεωρηθεί ως ένας κόμβος για όλα τα είδη IOT του σπιτιού σας. Θα είναι ένα καλό μέρος για να ελέγξετε όλες τις συνδεδεμένες συσκευές και να προσθέσετε πολλές δυνατότητες. Τα κύρια χαρακτηριστικά που μου αρέσουν περισσότερο είναι ο πίνακας ελέγχου, το API και η ποικιλία των πρόσθετων.

Εγκατάσταση

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

  • Εγκαταστήστε το Home Assistant με αυτό το άρθρο
  • Μπορείτε να βρείτε τη διαμόρφωση δικτύου για το Home Assistant εδώ:

    github.com/home-assistant/operating-system…

  • Εγκαταστήστε το ESPHome με αυτό:
  • Εγκαταστήστε το πρόσθετο DuckDNS για οικιακό βοηθό:
  • Εγκατάσταση πρόσθετου προγράμματος επεξεργασίας αρχείων (χρήσιμο):

Μετά από όλα αυτά τα σημεία, έχετε έναν ωραίο Home Assistant που λειτουργεί στο Raspberry PI σας. Πρέπει να μπορείτε να το προσεγγίσετε μέσω HTTP και τοπικής IP ή να δοκιμάσετε το https://homeassistant.local: 8123.

Διαμόρφωση

Διαμορφώστε το DuckDNS με τον τομέα σας και με το διακριτικό. Για παράδειγμα, μπορείτε να δείτε στις εικόνες, ένα κομμάτι της διαμόρφωσής μου. Μην ξεχάσετε να αποδεχτείτε τους όρους με "true".

lets_encrypt:

accept_terms: true certfile: fullchain.pem keyfile: privkey.pem token: 92f56bb2-2c26-4802-8d4d-xxxxxxxxxxx domains:-nameofyourchoice.duckdns.org δευτερόλεπτα: 300

Αποφασίζω να διαμορφώσω το HA με μια στατική IP επειδή είναι απλούστερη και είστε βέβαιοι ότι η IP θα είναι η ίδια μετά την επανεκκίνηση και στη συνέχεια οι κανόνες προώθησης της θύρας σας θα συνεχίσουν να λειτουργούν: https://github.com/home-assistant/ λειτουργικό σύστημα…

Στην περίπτωσή μου, προσθέτω ένα κομμάτι διαμόρφωσης μέσα στο αρχείο configuration.yaml επειδή το DuckDNS δεν διαχειρίζεται το https, μόνο το πιστοποιητικό κρυπτογράφησης ας και η ενημέρωση DuckDns:

http:

ssl_certificate: /ssl/fullchain.pem ssl_key: /ssl/privkey.pem base_url:

Βήμα 3: Η προσαρμοσμένη ηλεκτρονική πλακέτα για τη βελτίωση της αυτόματης συρόμενης πύλης

Η προσαρμοσμένη ηλεκτρονική πλακέτα για τη βελτίωση της αυτόματης συρόμενης πύλης
Η προσαρμοσμένη ηλεκτρονική πλακέτα για τη βελτίωση της αυτόματης συρόμενης πύλης
Η προσαρμοσμένη ηλεκτρονική πλακέτα για τη βελτίωση της αυτόματης συρόμενης πύλης
Η προσαρμοσμένη ηλεκτρονική πλακέτα για τη βελτίωση της αυτόματης συρόμενης πύλης
Η προσαρμοσμένη ηλεκτρονική πλακέτα για τη βελτίωση της αυτόματης συρόμενης πύλης
Η προσαρμοσμένη ηλεκτρονική πλακέτα για τη βελτίωση της αυτόματης συρόμενης πύλης

Maybeσως, ήταν το πιο ασυνήθιστο κομμάτι για μένα, επειδή συνήθως τροποποιώ περισσότερο τα λογισμικά παρά τα σκληρά. Ξεκίνησα με ένα breadboard και ένα πολύ βασικό κύκλωμα, μόνο για να ελέγξω ότι είμαι σε θέση να ανεβάσω ένα πρόγραμμα μέσα στο Wemos D1 mini και να αναβοσβήνω ένα LED. Στη συνέχεια, άλλαξα το υλικολογισμικό για το ESPhome και ακολουθώ αυτό το τέλειο άρθρο έναρξης:

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

Σημείωση: Θα βρείτε ένα καλό σημείο εκκίνησης εδώ στο ESPhome FAQ, εάν δεν μπορείτε να συνδέσετε το ESPHome στο Home Assistant για την πρώτη προετοιμασία. Μετά τη μεταφόρτωση του υλικολογισμικού, θα μπορείτε να ανεβάζετε "over the air" (OTA).

Ρελέ για ενεργοποίηση ανοίγματος/κλεισίματος σκανδάλης

Στην τεχνική προδιαγραφή αυτόματης συρόμενης πύλης, καθορίζεται ότι πρέπει να κλείσετε ένα κύκλωμα μεταξύ "START" και "COM" για να ενεργοποιήσετε μια ενέργεια ανοίγματος/κλεισίματος της πύλης (το πλήρες άνοιγμα). Ένα στενό κύκλωμα μεταξύ "START. P" και "COM" ενεργοποιεί μια ενέργεια που ανοίγει/κλείνει την πύλη για τους πεζούς. Δεν χρησιμοποίησα το "STOP" αλλά αυτή είναι η ίδια ιδέα αλλά για να σταματήσω την πύλη κατά το άνοιγμα ή το κλείσιμο.

Όσον αφορά την επιλογή του ηλεκτρονικού εξαρτήματος, αποφάσισα να πάω για ρελέ αντί για τρανζίστορ. Τα τρανζίστορ είναι ωραία αλλά δεν παρέχουν εγγύηση ότι το κύκλωμα είναι απόλυτα κοντά. Νομίζω ότι μπορούν να αφήσουν πολύ χαμηλό ρεύμα να περάσει στο κύκλωμα. Ένα άλλο πλεονέκτημα του ρελέ είναι ότι όταν δοκιμάζετε το κύκλωμά σας, ακούτε βασικά όταν η επαφή είναι κοντά με τον ήχο "κλικ".

Αποκτήστε την κατάσταση ανοικτού αισθητήρα

Στην αρχή, σκεφτόμουν να χρησιμοποιήσω μερικούς μαγνητικούς αισθητήρες για να ανιχνεύσω την κατάσταση ανοίγματος ή κλεισίματος της πύλης. Αλλά έχω συνειδητοποιήσει ότι υπάρχει ένα βύσμα που αναφέρει "αισθητήρα ορίου" στο χειριστήριο. Προφανώς δεν έχει χρησιμοποιηθεί (από geek όπως εγώ), βρήκα με έναν ελεγκτή επαφής ότι μπορώ να διαβάσω την κατάσταση ανοίγματος ή κλεισίματος όταν ανοίγω την πύλη. Έκανα ένα μεγάλο λάθος νομίζοντας ότι η κατάσταση ήταν ένα είδος λογικής τάσης TTL (3,3v). Σε αυτήν την περίπτωση, μπορείτε να τα συνδέσετε απευθείας στο Wemos Input. Στην πραγματικότητα, όταν ανοίγει η πύλη, υπάρχει τάση εξόδου 6,3v. Για να χρησιμοποιήσετε αυτό το σήμα, πρέπει να διαιρέσετε την τάση με αυτό το είδος κυκλώματος https://www.learningaboutelectronics.com/Articles/H… Η λύση είναι αρκετά απλή, διότι η τάση πρέπει να διαιρεθεί με δύο. Έτσι, χρησιμοποίησα δύο αντιστάσεις 10 Kohms μεταξύ της εξόδου αισθητήρα ορίου και της εισόδου Wemos (και πάλι, ανατρέξτε στις συνημμένες εικόνες για ένα σχήμα).

Φθηνό τροφοδοτικό 5v

Για να τροφοδοτήσω όλα αυτά τα εξαρτήματα, χρησιμοποιώ ένα παλιό τροφοδοτικό κινητού τηλεφώνου. Το άνοιξα και άλλαξα βύσμα σε μικρό καλώδιο με βίδα. Αποφάσισα επίσης να συγχωνεύσω τα δύο pcb (esp και τροφοδοτικό) με ζεστή κόλλα (ναι ξέρω, αυτό είναι λίγο βρώμικο αλλά λειτουργεί:-). Δεν είναι το πιο καθαρό πράγμα ποτέ, αλλά είναι πιο εύκολο να χειριστείτε και να αποφύγετε να αγγίξετε τα 220v.

Αυτά για το κομμάτι του υλικού.

Βήμα 4: Firmware ESPHome για εκτέλεση στο πρωτότυπο PCB

Η λογική στο εσωτερικό του ESP8266 εισάγεται μέσω της πύλης Home Assistant ESPHome Add-on. Κωδικοποιείτε τη λογική που εκτελεί το ESPHome. Το πολύ μικρό είδος εφαρμογής πρέπει να είναι κώδικα με σύνταξη ESPHome. Είναι πραγματικά εύκολο και είναι διασκεδαστικό γιατί, με λίγες γραμμές YAML, το ESP8266 σας γίνεται γρήγορα έξυπνο πράγμα. Ο πλήρης πηγαίος κώδικας είναι διαθέσιμος εδώ: https://gist.github.com/toomone/819112ea1b04937912… Ας εστιάσουμε στο σημαντικό μέρος του κώδικα.

Έλεγχος των ρελέ

Όπως είπα προηγουμένως, ο αυτόματος συρόμενος ελεγκτής πύλης μπορεί να ενεργοποιήσει μια ανοικτή ή κλειστή ενέργεια με μόνο μια μικρή ώθηση (κλείσιμο κυκλώματος) μεταξύ δύο εισόδων. Για να το κάνετε αυτό, πρέπει να διαμορφώσετε ένα τμήμα διακοπτών με μικρή διαμόρφωση. Για παράδειγμα, ας εστιάσουμε στο μέρος που ενεργοποιεί (ανοίγει ή κλείνει) το μερικό άνοιγμα της πύλης (που απαιτείται για έναν πεζό για παράδειγμα).

διακόπτης:

- πλατφόρμα: gpio pin: D3 // ο αριθμός PIN όπου θα εκπέμπεται το σήμα στο αναγνωριστικό Wemos: relay restore_mode: ALWAYS_OFF - platform: name template: "Gate Pedestrian Remote" icon: "mdi: walk" turn_on_action: // the λογική που πρέπει να εκτελεστεί από το ESPHome για προσομοίωση παλμού - switch.turn_on: ρελέ - καθυστέρηση: 500ms - switch.turn_off: ρελέ

Ο προηγούμενος κώδικας θα δημιουργήσει έναν διακόπτη και ένα πρότυπο. Αυτές οι δύο έννοιες επιτρέπουν στο ESPHome να προσφέρει κάποιον βελτιωμένο μηχανισμό χωρίς πραγματική κωδικοποίηση. Σας προσκαλώ να διαβάσετε την τεκμηρίωση ESPHome για να εμβαθύνετε στις προσφερόμενες δυνατότητες. https://esphome.io/cookbook/relay.html και

Ανάγνωση κατάστασης ανοίγματος κλεισίματος αισθητήρα

binary_sensor:

- πλατφόρμα: gpio pin: number: D1 inverted: true name: "Open sensor" id: open_sensor device_class: garage_door

Αυτό το μέρος του σεναρίου λέει στον πίνακα wemos να διαβάσει την κατάσταση στον ανοιχτό αισθητήρα στο D1. Για να βρείτε το D1, απλώς διαβάστε στο PC του Wemos. Έχω χρησιμοποιήσει την "ανεστραμμένη" παράμετρο σε true για να αντιστρέψω την τιμή του σήματος. Δεν θυμάμαι τον σαφή λόγο, αλλά νομίζω ότι ήταν απλό να εμφανιστεί κοντά ή να ανοίξει ανάλογα με την κατάσταση της πύλης στον πίνακα ελέγχου HA.

Επιτρέπεται η κλήση API στο ESPHome

Εάν θέλετε να μπορείτε να χρησιμοποιείτε το γραφικό στοιχείο Βοηθός οικίας στο τηλέφωνό σας, πρέπει να προσθέσετε αυτό το μικρό κομμάτι κώδικα:

# Ενεργοποίηση API Βοηθού Σπιτιού

api: υπηρεσίες: - υπηρεσία: open_portal_pedestrian τότε: - switch.turn_on: ρελέ - καθυστέρηση: 500ms - switch.turn_off: ρελέ

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

Βήμα 5: Εκθέστε τον βοηθό του σπιτιού σας στον κόσμο

Εκθέστε τον βοηθό του σπιτιού σας στον κόσμο
Εκθέστε τον βοηθό του σπιτιού σας στον κόσμο
Εκθέστε τον βοηθό του σπιτιού σας στον κόσμο
Εκθέστε τον βοηθό του σπιτιού σας στον κόσμο

Επειδή, θέλετε να μπορείτε να ανοίξετε την Αυτόματη Συρόμενη Πύλη σας από όπου κι αν βρίσκεστε στον πλανήτη και όχι μόνο από το σπίτι σας, πρέπει να εκθέσετε το HA σας στον κόσμο. Παρεμπιπτόντως, βεβαιωθείτε ότι χρησιμοποιείτε ισχυρό έλεγχο ταυτότητας κωδικού πρόσβασης. Στο δρομολογητή Διαδικτύου πρέπει να διαμορφώσετε έναν κανόνα για να δρομολογεί όλη την κίνηση που προέρχεται από μια συγκεκριμένη θύρα σε μια συγκεκριμένη IP και επίσης μια θύρα. Για παράδειγμα, θα βρείτε τη διαμόρφωση που έχω κάνει στο δρομολογητή του παρόχου μου (συγγνώμη, είναι στα γαλλικά) αλλά θα παρατηρήσετε ότι είναι πραγματικά απλή διαμόρφωση. Ο κανόνας πρέπει να λέει στο δρομολογητή σας να αποδεχτεί όλα τα πρωτόκολλα στη θύρα xxxx για να μεταβείτε στο IP του Home Assistant με τη θύρα 8123 (αν δεν το αλλάξατε).

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

Συνιστάται: