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

Abellcadabra (Σύστημα κλειδώματος πόρτας αναγνώρισης προσώπου): 9 βήματα
Abellcadabra (Σύστημα κλειδώματος πόρτας αναγνώρισης προσώπου): 9 βήματα

Βίντεο: Abellcadabra (Σύστημα κλειδώματος πόρτας αναγνώρισης προσώπου): 9 βήματα

Βίντεο: Abellcadabra (Σύστημα κλειδώματος πόρτας αναγνώρισης προσώπου): 9 βήματα
Βίντεο: Голубая стрела (1958) фильм 2024, Νοέμβριος
Anonim
Abellcadabra (Σύστημα κλειδώματος πόρτας αναγνώρισης προσώπου)
Abellcadabra (Σύστημα κλειδώματος πόρτας αναγνώρισης προσώπου)

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

Ούτως ή άλλως, αυτό το σύστημα θα εκτελέσει αναγνώριση προσώπου χρησιμοποιώντας το Amazon Rekognition όταν ο χρήστης χτυπήσει το κουδούνι. Η αναγνώριση πρόκειται να συγκρίνει την εικόνα που τραβήχτηκε με μια συλλογή εικόνων στο Amazon S3. Εάν η αναγνώριση είναι επιτυχής, η πόρτα θα ανοίξει. Εάν δεν είναι επιτυχής, θα ακουστεί ο βομβητής και ο χρήστης μπορεί να έχει την επιλογή να ξεκλειδώσει χρησιμοποιώντας το διακριτικό RFID. Υπάρχει επίσης ένα κουμπί στο εσωτερικό του σπιτιού όπου ο ιδιοκτήτης του σπιτιού μπορεί να ξεκλειδώσει την πόρτα πιέζοντάς την.

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

Βήμα 1: Υλικά & Εργαλεία

Υλικό:

  • Raspberry Pi
  • Κάμερα Pi
  • RC σερβο (θα λειτουργήσει ως κλειδαριά πόρτας)
  • Κουμπί εναλλαγής 2x
  • Βομβητής
  • Μαγνητικός διακόπτης
  • RC-522 RFID Αναγνώστης και ετικέτα
  • MF, MM, FF breadboard καλώδια
  • Polystrene Ice Box - οποιοδήποτε μέγεθος θα ήταν εντάξει γιατί αυτή θα είναι η πόρτα μας.
  • Μεντεσέ 1,5 ιντσών 2x
  • Βίδα 2,5 mm 4x

Εργαλεία

  • Κατσαβίδι
  • Ταινία διπλής όψης

Βήμα 2: Ρύθμιση των υπηρεσιών Web Amazon

Ρύθμιση Υπηρεσιών Ιστού Amazon
Ρύθμιση Υπηρεσιών Ιστού Amazon

Οι υπηρεσίες Web Amazon είναι εύχρηστες και είναι δωρεάν μέχρι να φτάσετε σε 5000 κλήσεις API ανά μήνα. Μπορείτε να εγγραφείτε για λογαριασμό AWS εδώ. Θα χρειαστεί να εγγραφείτε για έναν δωρεάν λογαριασμό αναγνώρισης amazon Rier. Η δωρεάν βαθμίδα πρέπει να είναι περισσότερο από επαρκής για αυτό το έργο.

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

  1. Κάντε κλικ στην επιλογή Χρήστες> Προσθήκη νέου χρήστη
  2. Δώστε όνομα στο χρήστη που δημιουργήθηκε. Για τύπο πρόσβασης, επιλέξτε το πλαίσιο πρόσβασης μέσω προγραμματισμού.
  3. Κάντε κλικ στο Επόμενο.
  4. Κάντε κλικ στην επιλογή Επισύναψη υφιστάμενων πολιτικών απευθείας. Ελέγξτε τις ακόλουθες πολιτικές:
  • AWSLambdaFullAccess
  • AmazonS3FullAccess
  • AmazonDynamoDBFullAccess
  • AmazonRekognitionFullAccess
  • Πρόσβαση διαχειριστή
  1. Κάντε κλικ στο Επόμενο και Επόμενο ξανά επειδή δεν χρειάζεται να προσθέσουμε ετικέτα.
  2. Ελέγξτε αν οι πολιτικές που έχουν επιλεγεί είναι οι ίδιες με αυτές που αναφέρονται και, στη συνέχεια, κάντε κλικ στην επιλογή Δημιουργία χρήστη.

Κατεβάστε το αρχείο CSV που περιέχει αναγνωριστικό κλειδιού πρόσβασης και μυστικό κλειδί πρόσβασης που θα χρησιμοποιηθούν στο επόμενο βήμα. Κάντε κλικ στο Κλείσιμο.

Βήμα 3: Διαμορφώστε το Amazon S3 και το Amazon DynamoDB

Στην Κονσόλα AWS, κάντε κλικ στην επιλογή Υπηρεσίες> S3

Το S3 λειτουργεί ακριβώς όπως το Google Drive όπου μπορείτε να αποθηκεύσετε έγγραφα και εικόνες. Για αυτό το έργο, θα χρειαστούμε δύο κάδους, ο ένας για να αποθηκεύσει μια συλλογή εικόνων που θα χρησιμοποιηθούν από το Amazon Rekognition (και ο δεύτερος είναι να αποθηκεύσει τη λήψη της εικόνας.

  1. Κάντε κλικ στην επιλογή Δημιουργία κάδου.
  2. Εισαγάγετε το όνομα κάδου και κάντε κλικ στο Επόμενο και Επόμενο ξανά.
  3. Αποεπιλέξτε το πλαίσιο "Αποκλεισμός όλων των δημόσιων προσβάσεων".
  4. Και σημειώστε το πλαίσιο "Αναγνωρίζω ότι οι τρέχουσες ρυθμίσεις ενδέχεται να οδηγήσουν σε αυτόν τον κάδο και τα αντικείμενα να γίνουν δημόσια".
  5. Κάντε κλικ στο Επόμενο και δημιουργήστε κάδο.
  6. Επαναλάβετε το βήμα για τον δεύτερο κάδο.
  7. κάντε κλικ στην επιλογή Υπηρεσίες> DynamoDB

Το Amazon DynamoDB θα χρησιμοποιηθεί σε αυτό το έργο για την αποθήκευση των στοιχείων αναγνώρισης και ξεκλειδώματος. οι λεπτομέρειες που θα αποθηκευτούν είναι σύνδεσμος προς την εικόνα που έχει ληφθεί, το όνομα της εικόνας που αναγνωρίζεται ή εάν δεν αναγνωριστεί το όνομα θα αποθηκευτεί ως «άγνωστο», η ημερομηνία και η ώρα της αναγνώρισης και η κατάσταση εάν είναι επιτυχής, δεν αντιστοιχίζονται πρόσωπα, δεν υπάρχουν πρόσωπα ανιχνεύεται, ξεκλειδώνει RFID ή ξεκλειδώνει από μέσα.

  1. Κάντε κλικ στην επιλογή Προσθήκη νέου πίνακα.
  2. Εισαγάγετε οποιοδήποτε όνομα για τον πίνακα.
  3. Για το κύριο κλειδί, εισαγάγετε το "rid" ως κύριο κλειδί.
  4. Κάντε κλικ στην επιλογή Δημιουργία.

Βήμα 4: Διαμορφώστε το AWS στο Raspberry Pi

Το πρώτο βήμα είναι να εισαγάγετε τα διαπιστευτήριά σας AWS. Για να κάνετε αυτόν τον τύπο στην κονσόλα του Raspberry Pi:

διαμόρφωση aws

Στη συνέχεια, καταχωρίστε τα διαπιστευτήριά σας AWS IAM που έχετε δημιουργήσει, βεβαιωθείτε ότι έχετε εισαγάγει το "us-west-2" ως περιοχή σας (ή τη σχετική περιοχή που έχετε ρυθμίσει για την Αναγνώριση AWS). Αφήστε κενή την προεπιλεγμένη μορφή εξόδου.

Βήμα 5: Συνδέστε τα στοιχεία στο Raspberry Pi

Έτσι, οι συνδέσεις των στοιχείων είναι όπως παρακάτω.

  • RC Servo - 1, 11, Ground
  • Μαγνητικός διακόπτης - 8, Ground
  • Buzzer - 32, Ground
  • Εξωτερικό κουμπί - 16, Ground
  • Inside Button - 18, Ground
  • Καρφίτσα SDA στον αναγνώστη RFID - 24
  • Καρφίτσα SCK στον αναγνώστη RFID - 23
  • Καρφίτσα MOSI στον αναγνώστη RFID - 19
  • Καρφίτσα MISO στον αναγνώστη RFID - 21
  • Καρφίτσα GND στον αναγνώστη RFID - Γείωση
  • RST καρφίτσα στον αναγνώστη RFID - 22
  • Καρφίτσα 3,3 V στον αναγνώστη RFID - 17

Συνδεθείτε στο πλησιέστερο έδαφος.

Βήμα 6: Κωδικοί

Μπορείτε να βρείτε όλο τον απαραίτητο κώδικα στο αποθετήριο Git μου.

Για τα βήματα σχετικά με τον τρόπο προσθήκης προσώπων και χρήσης Index Faces.py, ελέγξτε αυτό το βίντεο.

Βήμα 7: Χτίζοντας το πρωτότυπο

Χτίζοντας το Πρωτότυπο
Χτίζοντας το Πρωτότυπο
Χτίζοντας το Πρωτότυπο
Χτίζοντας το Πρωτότυπο

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

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

Το κόκκινο κουμπί είναι το κουμπί Inside που θα χρησιμοποιηθεί για να ξεκλειδώσει την πόρτα από το εσωτερικό του σπιτιού. Το Raspberry Pi τοποθετείται στο εσωτερικό του σπιτιού, έτσι ώστε οι άνθρωποι από έξω να μην μπορούν να το παρεμβαίνουν. Το RC Servo τοποθετείται στη δεξιά πλευρά της πόρτας ως κλειδαριά της πόρτας. Ο βομβητής τοποθετείται στο εσωτερικό του σπιτιού για να διασφαλιστεί ότι ο ήχος του βομβητή μπορεί να ακουστεί από τους ανθρώπους μέσα στο σπίτι όταν χτύπησε. Ο μαγνητικός διακόπτης τοποθετείται ανάμεσα στην πόρτα και το πλαίσιο.

Βήμα 8: Δοκιμή του Πρωτότυπου

Δοκιμή του Πρωτότυπου
Δοκιμή του Πρωτότυπου

Εκτελέστε τον κωδικό στο τερματικό

sudo python3 filename.py

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

Ελέγξτε το Amazon DynamoDB για να ελέγξετε ότι ο πίνακας είναι ενημερωμένος και οι κάδοι S3 για να δείτε την αποθηκευμένη εικόνα.

Βήμα 9: Κλείσιμο

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

Ευχαριστώ για την ανάγνωση.

Συνιστάται: