DIY Smart Lock με Arduino και RFID

Εδώ είναι πώς να οικοδομήσουμε μια απλή έξυπνη κλειδαριά βασισμένη σε RFID χρησιμοποιώντας ένα Arduino ως σπονδυλική στήλη και μερικά φθηνά εξαρτήματα.

Εδώ είναι πώς να οικοδομήσουμε μια απλή έξυπνη κλειδαριά βασισμένη σε RFID χρησιμοποιώντας ένα Arduino ως σπονδυλική στήλη και μερικά φθηνά εξαρτήματα.
Διαφήμιση

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

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

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

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

Ο αναγνώστης MFRC522 μπορεί να διαβάζει και να γράφει δεδομένα στα τσιπ RC522 και να αποθηκεύει αυτά τα δεδομένα στην EEPROM του Arduino Πώς να χρησιμοποιήσετε το Arduino EEPROM για να αποθηκεύσετε δεδομένα μεταξύ των κύκλων ισχύος Πώς να χρησιμοποιήσετε το Arduino EEPROM για να αποθηκεύσετε δεδομένα μεταξύ των κύκλων ισχύος Γνωρίζατε ότι το Arduino μπορεί να αποθηκεύσει δεδομένα όταν είναι απενεργοποιημένο; Μιλώ για το EEPROM, γι 'αυτό έρχεστε μαζί μου καθώς σας δείχνω πώς να το διαβάσετε και να το γράψετε. Διαβάστε περισσότερα . Αυτό θα ήταν μια μεγάλη προσθήκη σε οποιαδήποτε εγκατάσταση DIY, και είναι ιδιαίτερα σχετική με οποιοδήποτε βασικό σύστημα οικιακής ασφάλειας. Θα μπορούσε να χρησιμοποιηθεί παράλληλα με τα συστήματα συναγερμού DIY Πώς να κάνετε ένα απλό σύστημα συναγερμού Arduino Πώς να κάνετε ένα απλό σύστημα συναγερμού Arduino Ανιχνεύστε κίνηση, στη συνέχεια, τρομάξτε τον εαυτό σας από έναν εισβολέα με έναν ψηλό ήχο συναγερμού και φώτα που αναβοσβήνουν. Μήπως διασκέδαζε αυτό; Φυσικά το κάνει. Αυτός είναι ο στόχος του έργου Arduino σήμερα, κατάλληλο ... Διαβάστε περισσότερα ή DIY κάμερα ασφαλείας DIY Pan και Tilt Network Cam Ασφαλείας με Raspberry Pi DIY Pan και Tilt Δίκτυο Ασφαλείας Cam με Raspberry Pi Μάθετε πώς να κάνετε απομακρυσμένη προβολή pan και κλίσης κάμερα ασφαλείας με ένα σμέουρο Pi. Αυτό το έργο μπορεί να ολοκληρωθεί το πρωί με τα πιο απλά κομμάτια. Διαβάστε περισσότερα συστήματα.

Θα χρειαστείτε

  • Arduino. Χρησιμοποιήσαμε ένα Uno, αν και οποιοδήποτε Arduino συμβούλιο Arduino Οδηγός Αγοράς: Ποιο Συμβούλιο θα έπρεπε να πάρετε; Arduino Οδηγός αγοράς: Ποιο συμβούλιο πρέπει να πάρετε; Υπάρχουν τόσα πολλά διαφορετικά είδη σανίδων Arduino εκεί έξω, θα συγχωρεθήκατε για σύγχυση. Ποια θα πρέπει να αγοράσετε για το έργο σας; Ας βοηθήσουμε, με αυτόν τον οδηγό αγοράς Arduino! Διαβάστε περισσότερα ή κλωνοποίηση αρκεί.
  • 3 x 220 ohm αντιστάσεις
  • Αντίσταση 1 x 10k ohm
  • Λογικό επίπεδο καναλιού N MOSFET
  • Μονάδα MFRC522 με τουλάχιστον δύο κάρτες / fobs για ανάγνωση. Οι περισσότεροι έρχονται με έναν εκάστου και μπορούν να αγοραστούν για λιγότερο από $ 2, αλλά μάλλον έχετε ήδη ένα στο πορτοφόλι σας με τη μορφή δημόσιας κάρτας ταξιδιού.
  • Κόκκινο, μπλε και πράσινο LED
  • Ηλεκτρομαγνητική βαλβίδα 12v ($ 2)
  • 12V τροφοδοτικό
  • Breadboard και συνδέστε καλώδια

Η μονάδα MFRC522

Το αστέρι αυτής της ρύθμισης είναι μια φτηνή μονάδα MFRC522, η οποία συνοδεύτηκε από κάρτα και fob που περιέχει ένα τσιπ s50, το καθένα αποθηκεύοντας το δικό του μοναδικό μόνιμο αναγνωριστικό αριθμό (UID). Αυτά είναι και τα δύο λειτουργικά πανομοιότυπα, ακριβώς σε διαφορετικό σχήμα.

μονάδα και κάρτα

Ξεκινήστε αναζητώντας τη βιβλιοθήκη MFRC522 στη διαχείριση βιβλιοθήκης του IDE του Arduino και την εγκαταστήσετε. Εναλλακτικά, μπορείτε να κάνετε λήψη της βιβλιοθήκης και να την εγκαταστήσετε με μη αυτόματο τρόπο στο φάκελο βιβλιοθηκών. Αν είστε εντελώς νέοι στο Arduino, μπορείτε να βρείτε αυτό το αστάρι για να ξεκινήσετε Ξεκινώντας με το Arduino: Οδηγός για αρχάριους Ξεκινώντας με το Arduino: Οδηγός για αρχάριους Το Arduino είναι μια πλατφόρμα πρωτοτύπου ηλεκτρονικών ανοικτών πηγών που βασίζεται σε ευέλικτο και εύκολο στη χρήση υλικό και λογισμικό. Πρόκειται για καλλιτέχνες, σχεδιαστές, χομπίστες και όσους ενδιαφέρονται να δημιουργήσουν διαδραστικά αντικείμενα ή περιβάλλοντα. Διαβάστε περισσότερα χρήσιμο!

Η βιβλιοθήκη περιέχει επίσης ένα διάγραμμα Fritzing, το οποίο έχω σχολιάσει υποδεικνύοντας πώς να συνδέσετε το module στο Arduino σας.

arduino rfid καλωδίωση
Image Credit: Miguel Balboa μέσω του Github

Να είστε προσεκτικοί: αυτός ο πίνακας λειτουργεί σε 3.3V, όχι 5V, οπότε φροντίστε να τον συνδέσετε με τον σωστό ακροδέκτη.

Για να ελέγξετε τη ρύθμιση, ανοίξτε το σκίτσο DumpInfo από το Αρχείο> Παραδείγματα> MFRC522> DumpInfo και μεταφορτώστε το στο board Arduino. Ανοίξτε τη σειριακή οθόνη και κρατήστε ένα από τα αντικείμενα RFID στον αναγνώστη. Θα πρέπει να δείτε κάτι τέτοιο:

απογραφή πληροφοριών σειριακής ανάγνωσης

Εάν λάβετε σφάλματα στην ανάγνωση λέγοντας MIFARE_Read() failed: Timeout in communication, ή PCD_Authenticate() failed: Timeout in communication, μην ανησυχείτε. Ενδεχομένως σημαίνει ότι δεν έχετε κρατήσει την ετικέτα στον αναγνώστη για αρκετό καιρό για να διαβάσετε όλα τα δεδομένα. Όσο λαμβάνετε το UID της κάρτας (το οποίο διαβάζεται μόλις η ετικέτα ευρίσκεται εντός της εμβέλειας του αναγνώστη), θα λειτουργήσει με αυτό το έργο. Αν δεν έχετε καθόλου ανάγνωση, ελέγξτε την καλωδίωση και δοκιμάστε ξανά.

Το υπόλοιπο του κυκλώματος

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

πλήρες ψήσιμο κυκλώματος ρύθμισης

  • Η τροφοδοσία 12V (αποσυνδεδεμένη για τώρα) συνδέεται με τις ράγες του breadboard μας. Συνδέστε τον πείρο Arduino GND και τον ακροδέκτη MFRC522 GND στη γείωση.
  • Οι λυχνίες LED συνδέονται με τους ακροδέκτες 2, 3 και 4 και με τη γείωση μέσω αντιστάσεων 220 ohm.
  • Το πόδι της πύλης MOSFET (αριστερά στην εικόνα) συνδέεται στον ακροδέκτη 5 και στη γείωση μέσω μιας αντίστασης 10k ohm. Το πόδι αποστράγγισης (μεσαίο) συνδέεται με τον αρνητικό ακροδέκτη της ηλεκτρομαγνητικής βαλβίδας 12v και το πόδι πηγής (δεξιά) συνδέεται με τη γείωση.
  • Συνδέστε τον θετικό ακροδέκτη της ηλεκτρομαγνητικής βαλβίδας 12v και το VIN του Arduino στη ράγα 12v του breadboard.

Με αυτή τη ρύθμιση, κάθε φορά που στέλνουμε ένα σήμα HIGH από το Arduino στο MOSFET, θα επιτρέψει στο ρεύμα να περάσει στο ηλεκτρομαγνητικό σύστημα. Δεν υπάρχει τίποτα που να σας εμποδίζει να χρησιμοποιήσετε ηλεκτρομαγνητική βαλβίδα υψηλότερης ισχύος ή μεγαλύτερης βαρύτητας, αν και θα χρειαστείτε έναν μετασχηματιστή stepdown για να τροφοδοτήσετε το Arduino από υψηλότερη από 12V. Επίσης, δίνετε ιδιαίτερη προσοχή στο δελτίο δεδομένων για το MOSFET σας για να βεβαιωθείτε ότι δεν θα το υπερφορτώσετε.

Από τη στιγμή που όλα αυτά είναι μαζί θα πρέπει να μοιάζουν με αυτό:

διάταξη κυκλώματος

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

Τροποποίηση του σκίτσου

Με την κατασκευή του κυκλώματος, ήρθε η ώρα να δημιουργήσουμε το σκίτσο Arduino. Βολικά, η βιβλιοθήκη MFRC522 έρχεται με ένα παράδειγμα σχεδίου που ονομάζεται Access Control που κάνει σχεδόν ακριβώς αυτό που θέλουμε να κάνουμε. Συνδέστε το Arduino στον υπολογιστή σας και ανοίξτε το Αρχείο> Παραδείγματα> MFRC522> AccessControl στο IDE του Arduino.

Υπάρχει πληθώρα πληροφοριών που παρέχονται τόσο στο παραδειγματικό σκίτσο όσο και στη σελίδα GitHub για τη βιβλιοθήκη. Χρειάζεται μόνο να τροποποιήσουμε μερικές γραμμές. Εναλλακτικά, μπορείτε να κατεβάσετε τον τροποποιημένο κωδικό μας από αυτό το GitHub Gist.

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

 //#define COMMON_ANODE 

Τώρα, ταιριάξτε τις ράβδους LED μας με αυτές που ορίζονται στο σκίτσο.

 #define redLed 3 // Set Led Pins #define greenLed 4 #define blueLed 2 

Πρέπει να αλλάξουμε τον πείρο αναμετάδοσης (αν και χρησιμοποιούμε ένα MOSFET σε αυτή την περίπτωση) για να ταιριάξουμε με τη ρύθμισή μας.

 #define relay 5 // Set MOSFET Pin 

Για να διευκολυνθεί η αλλαγή της χρονικής διάρκειας της κλειδαριάς που θα παραμείνει ανοικτή αργότερα, θα δημιουργήσουμε μια μεταβλητή για αυτήν.

 int lockDelay=10000; // lock stays open for 10 seconds. 

Πρέπει μόνο να κάνουμε μια ακόμα αλλαγή. Ακριβώς στο κατώτατο σημείο της μεθόδου βρόχου, θαμμένος σε μια εντολή if είναι η κλήση μεθόδου που έχει δοθεί (300) . Πρέπει να το αλλάξουμε έτσι ώστε να χρησιμοποιεί τη μεταβλητή lockDelay .

 granted(lockDelay); // Open the door lock for lockDelay duration 

Αποθηκεύστε το σκίτσο με ένα νέο όνομα και μεταφορτώστε το στο Arduino. Όταν τελειώσει, ανοίξτε τη σειριακή οθόνη. Την πρώτη φορά που το κάνετε αυτό, θα σας ζητήσει να σαρώσετε κάτι που θα χρησιμοποιηθεί ως κύρια κάρτα σας. Κρατήστε την κάρτα σας μέχρι τον αναγνώστη και το UID της κάρτας θα πρέπει να εμφανίζεται στη σειριακή οθόνη μαζί με το μήνυμα Everything Ready

Αυτό είναι! Το κύριο κλειδί σας έχει ρυθμιστεί. Αποσυνδέστε τον πίνακα Arduino από τον υπολογιστή. Τα κύρια στοιχεία του κλειδιού θα αποθηκευτούν στην EEPROM του Arduino, ακόμα και μετά την απενεργοποίηση της τροφοδοσίας.

Δοκιμή της πλήρους ρύθμισης

Ρίξτε μια τελευταία γρήγορη ματιά στην καλωδίωση σας για να ελέγξετε ότι όλα βρίσκονται στη θέση της και συνδέστε την παροχή ρεύματος 12v. Σε αυτό το σημείο, αξίζει να αναφέρετε ότι θα πρέπει να είστε δύσπιστοι για τον κύκλο λειτουργίας του ηλεκτρομαγνητικού σας μοχλού. Η φτηνή ηλεκτρομαγνητική βαλβίδα που χρησιμοποιώ για αυτή τη δοκιμή δεν έχει 100% κύκλο λειτουργίας, συνεπώς δεν πρέπει να παραμείνει σε κλειδωμένη θέση για μεγάλες χρονικές περιόδους. Για να γίνει αυτό σε μια μόνιμη εγκατάσταση, χρησιμοποιήστε 100% ηλεκτρομαγνητική βαλβίδα κύκλου λειτουργίας. Ακόμα καλύτερα θα ήταν μια κανονικά κλειστή ηλεκτρομαγνητική βαλβίδα (NC), η οποία παραμένει κλειδωμένη όταν δεν τροφοδοτείται. Αυτό σημαίνει επίσης ότι όποιος θέλει να παρακάμψει το σύστημα δεν μπορεί απλά να τον αποσυνδέσει!

Όταν το κύκλωμα είναι ενεργοποιημένο, η μπλε λυχνία LED πρέπει να ανάψει για να δείξει ότι η συσκευή είναι σε λειτουργία. Κρατώντας την κύρια κάρτα πάνω από τον αναγνώστη το βάζει σε λειτουργία admin θα πρέπει να προκαλέσει την ανάφλεξη και των τριών LED. Ενώ αναβοσβήνουν μπορείτε να κρατήσετε άλλες κάρτες ή fobs πάνω στον αναγνώστη για να προσθέσετε ή να αφαιρέσετε δικαιώματα πρόσβασης. Θα αναβοσβήνει πράσινο για πρόσβαση, και μπλε για να πάρει μακριά. Χρησιμοποιήστε ξανά την κύρια κάρτα για να κλείσετε τη λειτουργία διαχειριστή.

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

Ολα τελείωσαν!

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

Θα μπορούσατε να δημιουργήσετε ολόκληρο τον μηχανισμό σε ένα κιβώτιο και να χρησιμοποιήσετε την ηλεκτρομαγνητική βαλβίδα για να την κλειδώσετε. Συμπληρώστε το πλαίσιο με τα cookies και χρησιμοποιήστε το κύριο κλειδί για να αποφασίσετε ποιος έχει πρόσβαση και ποιος δεν το έχει. Γίνετε ο πλοίαρχος μπισκότων!

Θα μπορούσατε να απομακρύνετε την ηλεκτρομαγνητική βαλβίδα εντελώς και να συνδέσετε μια λωρίδα LED στη θέση της και να έχετε ένα RFID ενεργοποιημένο φως. Μπορείτε να χρησιμοποιήσετε τις ίδιες ιδέες για να εμφανίσετε δεδομένα όπως έναν κωδικό πρόσβασης Wi-Fi σε μια μικρή οθόνη, όταν μια κάρτα ή ένα fob με πρόσβαση συγκρατείται στον αναγνώστη.

Έχετε χρησιμοποιήσει την RFID στις ρυθμίσεις σας στο σπίτι; Ενημερώστε μας για τα έργα σας στα παρακάτω σχόλια!

Image Credit: Annmarie Young μέσω του Shutterstock.com

In this article