Πίνακας περιεχομένων:
Βίντεο: Who's at the Door, a Alexa Actuated Camera System: 3 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Μερικές φορές ενώ βλέπετε τηλεόραση δεν θέλετε να απαντήσετε στην πόρτα εκτός αν είναι σημαντικό. Αυτό το έργο σας επιτρέπει να δείτε το άτομο στην πόρτα λέγοντας απλά στη συσκευή Echo της Amazon "Alexa, ενεργοποιήστε την οθόνη πόρτας". Ελέγχετε ποιος εμφανίζεται στην οθόνη της τηλεόρασης και μετά επιστρέφετε στο κανονικό τηλεοπτικό πρόγραμμα "Alexa, άνοιξε την τηλεόραση". Το σύστημα θα μπορούσε επίσης να έχει αξία για μεγαλύτερους ενήλικες ή παιδιά που θα ήταν ευάλωτα στο να αξιοποιηθούν από πωλητές, κλέφτες και παρόμοια. Αυτό επιτρέπει στην τηλεόραση μεγάλης οθόνης του συστήματος ψυχαγωγίας σας να είναι η οθόνη οθόνης της κάμερας όχι μόνο για την κάμερα της μπροστινής πόρτας, αλλά και για τυχόν άλλες κάμερες ασφαλείας που μπορεί να έχετε. Στην πραγματικότητα, θα μπορούσε ακόμη και να επεκταθεί για την προβολή βίντεο από κάμερες διαδικτύου, όπως κάμερες παραλίας κ.λπ.
Μέρη:
Σύστημα ψυχαγωγίας:
Τηλεόραση με πολλές εισόδους HDMI (οι περισσότερες τηλεοράσεις τις διαθέτουν)
Καλώδιο ή κουτί DVR
Δρομολογητής και σύνδεση στο Διαδίκτυο μέσω καλωδιακής θυρίδας (μπορεί να μην χρειάζεστε εάν έχετε WiFi)
Amazon Echo ("Alexa")
Harmony Hub
Κάμερα
Κάμερα IP στην μπροστινή πόρτα (προτιμάται ο τύπος Power Over Ethernet -POE)
Raspberry Pi3 σε ένα πλαίσιο έργου (το αρχικό Pi μπορεί να λειτουργήσει) με καλώδιο HDMI
Arduino Pro Mini 8 Mhz, 3.3v
Ενότητα IR (οι πιο συνηθισμένοι τύποι θα λειτουργήσουν)
Βήμα 1: Ρύθμιση, Προκαταρκτικός προγραμματισμός (δοκιμή)
Αυτό το έργο βασίζεται στο Pi3 omxplayer που αποκωδικοποιεί βίντεο με επιτάχυνση υλικού. Το Omxplayer μπορεί να εκτελεστεί δοκιμαστικά από μια γραμμή εντολών στο τερματικό Pi χρησιμοποιώντας την κατάλληλη μορφή rtsp: // user@password@ipaddress που απαιτεί η κάμερά σας. Το Pi πρέπει να είναι συνδεδεμένο στο Ethernet (αν και το Pi3 θα μπορούσε να συνδεθεί μέσω WiFi επίσης, αλλά δεν έχει δοκιμαστεί) και να βρίσκεται φυσικά στο κέντρο ψυχαγωγίας, ώστε το καλώδιο εξόδου του HDMI του Pi να μπορεί να φτάσει στην υποδοχή εισόδου HDMI της τηλεόρασης. Η μονάδα Arduino και IR θα συνδεθούν με το Pi και θα μεταφέρουν τις πληροφορίες που αποκτήθηκαν από την ανάγνωση των πιέσεων του τηλεχειριστηρίου της τηλεόρασης. Το Pi θα μπορούσε να κάνει αυτήν την αποκωδικοποίηση απευθείας από τη μονάδα IR, αλλά είμαι καλύτερος στον προγραμματισμό Arduino από τον προγραμματισμό Python και επιπλέον εξοικονομεί πόρους επεξεργαστή για το κύριο καθήκον του Pi για αποκωδικοποίηση της ροής βίντεο.
Δεδομένου ότι το σύστημα ασφαλείας μου διαθέτει πολλές κάμερες, χρησιμοποίησα την οθόνη παρακολούθησης που λειτουργεί με Pi ως τρόπο εμφάνισης 4 καμερών ταυτόχρονα, καθώς και μεμονωμένες κάμερες σε πλήρη οθόνη. Ακολουθήστε αυτές τις οδηγίες, ωστόσο πιθανότατα θα έχετε πολλά προβλήματα για να εμφανίζονται οι κάμερες με σταθερό τρόπο.
Ένα από τα προβλήματα είναι ότι τα 4 μεγέθη παραθύρων που αναφέρονται στο πρόγραμμα ενδέχεται να μην ταιριάζουν στη συγκεκριμένη ανάλυση τηλεόρασης. Βρείτε ποιες αναλύσεις υποστηρίζει η οθόνη σας ενώ σημειώνετε την ανάλυση της κάμερας που έχουν οι κάμερές σας. Οι περισσότερες κάμερες IP διαθέτουν ροή υψηλής ανάλυσης (1080p) και χαμηλής ανάλυσης (640x480), οπότε αν θέλετε μόνο ένα βίντεο υψηλής ανάλυσης της μπροστινής πόρτας, πηγαίνετε με τη ροή υψηλής ανάλυσης rtsp: // format. Συνεχίστε με τη ροή χαμηλής ανάλυσης για κάμερες σε 4 τετράγωνα, δεν θα παρατηρήσετε μεγάλη διαφορά με τα μικρότερα μεγέθη εικόνας. Μπορείτε να ακολουθήσετε τα μεγέθη παραθύρων bash script (test.sh) (σε λειτουργία ανάλυσης 1080p, εμφανίζοντας 4 κάμερες ίσου μεγέθους 640x480 κλιμακωμένες ώστε να ταιριάζουν). Διαφορετικά, χρησιμοποιήστε χαρτί γραφικών για να σχεδιάσετε τα pixel της τηλεόρασής σας και, στη συνέχεια, σχεδιάστε πόσα ορθογώνια θέλετε σε αυτήν την περιοχή. Στη συνέχεια, βρείτε πόσα βίντεο 640x480 θα χωρέσουν χωρίς να αλλάξει υπερβολικά η όψη (το τέντωμα οριζόντια φαίνεται καλύτερα από ό, τι κάθετα). Δεν μου αρέσουν τα σύνορα, οπότε δεν τα υπολόγισα. Αριθμήστε τα ορθογώνια από πάνω αριστερά προς τα κάτω δεξιά 1, 2, 3..λπ. Στη συνέχεια, δημιουργήστε μια στήλη από αριθμούς παραθύρων, για κάθε σειρά από αυτούς τους αριθμούς γράψτε πάνω αριστερά x, y pixel και κάτω δεξιά pixel x, y. Στη συνέχεια, αυτοί οι αριθμοί αντικαθίστανται στο σενάριο για να λάβετε μια προσαρμοσμένη οθόνη, αν θέλετε, μπορείτε να έχετε μια οθόνη 3 x 3. Εάν θέλετε μόνο μία οθόνη, απλώς σχολιάστε τις άλλες 3 κάμερες και κάντε το μέγεθος του παραθύρου σε πλήρη ανάλυση οθόνης (και χρησιμοποιήστε τη ροή rtsp υψηλής ανάλυσης) και ονομάστε το σενάριο "test1.sh". Δημιουργήστε όσα σενάρια θέλετε, το πρόγραμμα btn.py Python θα τα καλέσει καθώς οι καρφίτσες GPIO αλλάζουν από το Arduino.
Ένα πρόβλημα για να αποκτήσετε μια σταθερή οθόνη (πάνω από την εικόνα, αλλά χαμηλότερες κάθετες λωρίδες εικόνας) είναι ότι πολλές κάμερες μεταδίδονται πολύ καλύτερα χρησιμοποιώντας rtsp μέσω tcp (χρησιμοποιώ Hikvision κάμερες IP 2 έως 5 Mp). Επομένως, χρησιμοποιήστε το "--avdict rtsp_transport: tcp" στο omxplayer όπως φαίνεται. Άλλες χρήσιμες εντολές omxplayer είναι η ένταση (--vol -6000 για τη σίγαση) και η προσωρινή μνήμη (-ουρά βίντεο x) όπου x = 1 ή περισσότερο.
Οι ρυθμίσεις κάμερας IP μπορούν επίσης να προκαλέσουν προβλήματα με το omxplayer. Όλες οι κάμερες IP πρέπει να ρυθμιστούν στα ίδια καρέ ανά δευτερόλεπτο, διαφορετικά η εικόνα θα σπάσει. Όταν ρυθμίζεται σε ριζικά διαφορετικούς ρυθμούς καρέ, ο χρόνος που εμφανίζεται σε μία χρονική σφραγίδα κάμερας όντως πήγε προς τα πίσω για μερικά δευτερόλεπτα, έπειτα προς τα εμπρός και προς τα πίσω κ.λπ.
Βήμα 2: Το βάζουμε μαζί
Μπορείτε να ελέγξετε χειροκίνητα το καλώδιο και την τηλεόραση για να επιτρέψετε στο Pi να εμφανίζει την κάμερα της μπροστινής πόρτας. Ωστόσο, αυτό απαιτεί αρκετά πατήματα κουμπιών, συμπεριλαμβανομένης της κατάλληλης εναλλαγής του τηλεχειριστηρίου γενικής χρήσης από τη λειτουργία καλωδίου σε λειτουργία τηλεόρασης για να επιτρέπεται η αλλαγή της πηγής εισόδου HDMI στον αποκωδικοποιητή κάμερας Pi (HDMI 2). Εάν θέλετε τη δυνατότητα εμφάνισης πρόσθετων οθονών κάμερας, τότε πρέπει επίσης να αλλάξετε το τηλεχειριστήριο γενικής χρήσης σε AUX για να ελέγξετε το Arduino και συνεπώς την επιλογή της κάμερας Pi. Για να απλοποιήσετε αυτήν τη διαδικασία, χρησιμοποιήστε μια εφαρμογή Harmony Hub και μια σχετική εφαρμογή Harmony smartphone, διδάσκοντάς την να ελέγχει την τηλεόραση και το καλώδιο για κανονική προβολή τηλεόρασης σε μια δραστηριότητα και, στη συνέχεια, να δημιουργεί μια άλλη δραστηριότητα για τον έλεγχο της οθόνης βίντεο Pi. Η Δραστηριότητα περιλαμβάνει την ενεργοποίηση της τηλεόρασης, την είσοδο της τηλεόρασης σε HDMI 2 και τον έλεγχο των εικονικών κουμπιών NECx TV (δηλαδή, των Arduino και Pi) 0 έως 5. Αυτό επιτρέπει τον έλεγχο των πάντων μέσω της εφαρμογής smartphone Harmony. Για να κάνετε τα πράγματα ακόμα πιο εύκολα, συνδέστε την εφαρμογή Amazon Echo Dot (Alexa) με την εφαρμογή Harmony για φωνητικό έλεγχο της τηλεόρασης ή των λειτουργιών παρακολούθησης πόρτας. Ο ιστότοπος Harmony παρέχει λεπτομέρειες σχετικά με τον τρόπο ενεργοποίησης αυτών των νέων δεξιοτήτων Alexa. Νέες δεξιότητες. Μόλις συνδεθούν με νέες δεξιότητες Alexa, οι λέξεις -κλειδιά όπως "Ενεργοποιήστε την τηλεόραση" ή "Ενεργοποιήστε την οθόνη πόρτας" θα επιτρέψουν τις κατάλληλες ενέργειες χωρίς να χρειάζεται IR από το γενικό τηλεχειριστήριο.
Το Pi συνδέεται μέσω Ethernet στο LAN σας και μέσω καλωδίου HDMI στην τηλεόραση. Εγκατέστησα ένα Pro Mini 3,3 volt μέσω καλωδίων στο Pi ως επιλογή για να προσθέσω επιπλέον εναλλαγή κάμερας. Το Pro Mini μπορεί να τροφοδοτηθεί από τον ακροδέκτη 3,3 volt του Pi. Μια μονάδα IR συνδέεται με τον ακροδέκτη 2 του Arduino και το συνημμένο σκίτσο αποκωδικοποιεί το πάτημα του κουμπιού 0 έως 5 (στην πραγματικότητα 0 έως 9, αλλά ορισμένες ακίδες Arduino δεν είναι ακόμη συνδεδεμένες). Οι έξοδοι Arduino συνδέονται με τις ψηφιακές εισόδους GPIO pin του Pi, όπου μια διακοπή δέσμης ενεργειών δέσμης ενεργειών καθορίζει ποιο "κουμπί" πατήθηκε, στη συνέχεια σταματά μια επιλογή προβολής οθόνης και ξεκινά μια άλλη.
Το καλώδιο μου είναι από το Spectrum (πρώην καλώδιο Time Warner), το οποίο είναι ένα μοντέλο DVR της Motorola DCX3510. Χρησιμοποιεί πρωτόκολλο GI Cable για IR. Η Sony TV χρησιμοποιεί το πρωτόκολλο της Sony 2. Πίστευα ότι ο ένας ή ο άλλος από αυτούς τους κωδικούς θα ήταν εντάξει για τον έλεγχο του δέκτη Pi IR και είτε λειτούργησε, αν και αποδείχθηκε ότι δεν ήταν πρακτικός. Το τηλεχειριστήριο θα περίμενε πρόσθετες εντολές ή θα άλλαζε αυτόματα την πηγή εισόδου επίσης όταν πατήθηκε ένα κουμπί 0 έως 9. Επομένως, έπρεπε να χρησιμοποιήσω έναν διαφορετικό κώδικα που δεν θα αλληλεπιδρούσε με το καλωδιακό δέκτη ή την τηλεόραση. Βρήκα το γενικό μου τηλεχειριστήριο είχε έναν προηγουμένως προγραμματισμένο κώδικα για μια συσκευή AUX (δεν ξέρω τι ελέγχει) και αποφάσισα να τον χρησιμοποιήσω. Οι κωδικοί που παρήχθησαν είπαν ότι χρησιμοποιούσε NECx, έναν κώδικα 32 bit, οπότε τους κωδικούς του κουμπιού τους έβαλα στο σκίτσο του Arduino IR_Rev_Codes_Pi_Monitor. Αλλάξτε το πρόγραμμα εάν έχετε διαφορετικό μοντέλο χρησιμοποιώντας το πρόγραμμα λήψης στο IRLib2 και σημειώστε τις τιμές δημιουργού, πρωτοκόλλου και εξάγωνου για τα κουμπιά που έχουν πατηθεί.
Βήμα 3: Συμπέρασμα
Η οθόνη πόρτας είναι ένα πρακτικό έργο αυτοματισμού σπιτιού. Ταν η πρώτη μου εμπειρία στον προγραμματισμό του Pi με Python. Η Python επιτρέπει τον προγραμματισμό μιας διακοπής, μια λειτουργία που πίστευα ότι προοριζόταν για μικροελεγκτές. Η διακοπή επιτρέπει στο πρόγραμμα να λειτουργεί κανονικά, εκτελώντας omxplayer, χωρίς να ελέγχει συνεχώς εάν απαιτείται άλλη ενέργεια όπως η αλλαγή της οθόνης σε νέα ροή κάμερας. Ωστόσο, εάν προκύψει η διακοπή, το πρόγραμμα καθορίζει στη συνέχεια ποια νέα ροή βίντεο πρέπει να εμφανιστεί. Το Arduino έχει ρυθμιστεί για να παρέχει έναν παλμό για να ενεργοποιήσει τη διακοπή της Python. Εάν προκύψει η διακοπή, τότε το πρόγραμμα αναζητά ποια συγκεκριμένη έξοδος Arduino (που αντιστοιχεί στο πατημένο κουμπί IR) είναι ενεργοποιημένη. Τέλος, το πρόγραμμα σκοτώνει οποιαδήποτε τρέχουσα οθόνη omxplayer και ξεκινά τη νέα οθόνη omxplayer.
Έμαθα ότι το Pi δεν ρυθμίζει τις καρφίτσες GPIO για είσοδο όπως το Arduino από προεπιλογή- δεν είναι λάθος του Pi, αλλά είναι ο τρόπος που το Broadcom BCM2837 είναι από το εργοστάσιο. Μου αρέσει ο 4 πυρήνας, ο επεξεργαστής 1,2 Ghz, ένας υπολογιστής χαμηλής ισχύος και χαμηλού κόστους που μπορεί να εμφανίσει υπέροχο βίντεο HD. Το κουμπί IR 1 εμφανίζει την τετραπλή οθόνη και τα κουμπιά 2 έως 5 το καθένα δείχνουν μία μόνο μεγάλη οθόνη μιας κάμερας σε υψηλή ευκρίνεια.
Πατώντας το τηλεχειριστήριο 0, ακυρώνεται η προβολή βίντεο και εμφανίζεται η γραμμή εντολών Pi. Αν θέλετε να παρακολουθήσετε βίντεο στο Youtube ή παρόμοια, χρησιμοποιήστε πληκτρολόγιο Bluetooth, πληκτρολογήστε "startx" και χρησιμοποιήστε το πρόγραμμα περιήγησης Pi για να μεταβείτε στο βίντεο του Youtube και να το παίξετε σε πλήρη οθόνη σε υψηλή ευκρίνεια.
Συνιστάται:
Alexa Smart Home System Using NodeMCU Relay Module: 10 Βήματα
Alexa Smart Home System Using NodeMCU Relay Module: Σε αυτό το έργο IoT, έφτιαξα το σύστημα Alexa Smart Home Automation χρησιμοποιώντας το NodeMCU ESP8266 & Ενότητα ρελέ. Μπορείτε εύκολα να ελέγξετε το φως, τον ανεμιστήρα και άλλες οικιακές συσκευές με τη φωνητική εντολή. Για να συνδέσετε το έξυπνο ηχείο Echo Dot με το
DIY Motion Detection System Alarm System: 5 βήματα (με εικόνες)
DIY Motion Detection SMS Alarm System: Σε αυτό το έργο θα συνδυάσω έναν φθηνό αισθητήρα κίνησης PIR με μια μονάδα TC35 GSM για να δημιουργήσω ένα σύστημα συναγερμού που θα σας στέλνει ένα " ΕΙΣΟΔΟΣ ΕΙΣΠΕΔΟΥ " SMS κάθε φορά που κάποιος προσπαθεί να κλέψει τα πράγματά σας. Ας αρχίσουμε
AI Aids Eyes (A System Vision System για να υπενθυμίσει στους χειριστές να φορούν γυαλιά ασφαλείας): 4 βήματα
AI Aids Eyes (A Computer Vision System για να υπενθυμίσει στους χειριστές να φορούν γυαλιά ασφαλείας): Ακολουθεί μια επίδειξη του συστήματος. Όταν το σύστημα ανιχνεύσει ότι το τρυπάνι έχει σηκωθεί, θα εκδώσει αυτόματα μια προειδοποίηση για γυαλιά ασφαλείας. Για να αντιπροσωπεύσει την παρουσία των προειδοποιήσεων για τα γυαλιά ασφαλείας, το περίγραμμα της εικόνας RGB χρωματίζεται κόκκινο στο demo v
CCTV Camera With NodeMCU + Old Laptop's Camera Module (With and without Using Blynk): 5 βήματα
CCTV Camera With NodeMCU + Old Laptop's Camera Module (With and Without Using Blynk): Γεια σας παιδιά! Σε αυτό το διδακτικό, θα σας δείξω πώς χρησιμοποίησα τη μονάδα κάμερας και το nodeMCU ενός παλιού φορητού υπολογιστή για να φτιάξω κάτι παρόμοιο με το CCTV
DIY Professional Open Camera Night Vision Security Camera: 10 βήματα (με εικόνες)
DIY Professional Open Source Night Vision Camera Security: Σε αυτό το νέο σεμινάριο, θα κάνουμε μαζί την κάμερα επιτήρησης βίντεο ανοιχτού κώδικα Raspberry Pi. Ναι, μιλάμε εδώ για μια πραγματική υπαίθρια κάμερα επιτήρησης ανοιχτού κώδικα, ικανή για νυχτερινή όραση και ανίχνευση κίνησης, όλα συνδεδεμένα με το Jeed μας