Πώς να φτιάξετε ένα αντίγραφο του κλειδιού ενδοεπικοινωνίας στο σπίτι

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

Πώς να φτιάξετε ένα αντίγραφο του κλειδιού ενδοεπικοινωνίας στο σπίτι
Πώς να φτιάξετε ένα αντίγραφο του κλειδιού ενδοεπικοινωνίας στο σπίτι

Βίντεο: Πώς να φτιάξετε ένα αντίγραφο του κλειδιού ενδοεπικοινωνίας στο σπίτι

Βίντεο: Πώς να φτιάξετε ένα αντίγραφο του κλειδιού ενδοεπικοινωνίας στο σπίτι
Βίντεο: Πως να Φτιάξετε Χιονάνθρωπο Από Κάλτσα - Πολύ Εύκολα 2024, Απρίλιος
Anonim

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

Δημιουργία αντιγράφου του κλειδιού ενδοεπικοινωνίας χρησιμοποιώντας το Arduino
Δημιουργία αντιγράφου του κλειδιού ενδοεπικοινωνίας χρησιμοποιώντας το Arduino

Είναι απαραίτητο

  • - Arduino;
  • - ένας υπολογιστής;
  • - κλειδί για ενδοεπικοινωνία τύπου iButton ή 1-wire.
  • - εικονικό κλειδί για να δημιουργήσετε έναν "κλώνο" του αρχικού κλειδιού.
  • - 1 αντίσταση με αντίσταση 2, 2 kOhm.
  • - καλώδια σύνδεσης.

Οδηγίες

Βήμα 1

Κάθε κλειδί για την ενδοεπικοινωνία έχει τον δικό του αριθμό - αυτός ο αριθμός χρησιμεύει ως αναγνωριστικό κλειδιού. Από τον αριθμό κλειδιού αποφασίζει η ενδοσυνεννόηση - τη δική σας ή κάποιου άλλου. Επομένως, ο αλγόριθμος αντιγραφής έχει ως εξής: πρώτα πρέπει να μάθετε τον αριθμό του κλειδιού "επιτρέπεται" και, στη συνέχεια, να αντιστοιχίσετε αυτόν τον αριθμό σε άλλο κλειδί - έναν κλώνο. Δεν έχει σημασία για την ενδοσυνεννόηση εάν το πρωτότυπο κλειδί ή το αντίγραφό του ήταν συνημμένο. Αφού ελέγξει τον αριθμό με την εξουσιοδοτημένη βάση δεδομένων αριθμών, θα ανοίξει την πόρτα.

Τα κλειδιά για την ενδοεπικοινωνία, τα οποία θα συνδέσουμε με το Arduino (μερικές φορές ονομάζεται iButton ή Touch Memory), διαβάζονται και γράφονται μέσω της διεπαφής 1-καλωδίου Επομένως, το διάγραμμα καλωδίωσης είναι πολύ απλό. Χρειαζόμαστε μόνο ένα ζεύγος καλωδίων και μια αντίσταση έλξης 2,2K. Το διάγραμμα φαίνεται στο σχήμα.

Συνδέουμε το κλειδί για την ενδοεπικοινωνία στο Arduino
Συνδέουμε το κλειδί για την ενδοεπικοινωνία στο Arduino

Βήμα 2

Για να εργαστείτε με τη διεπαφή 1 καλωδίου, υπάρχουν έτοιμες βιβλιοθήκες για το Arduino. Μπορείτε να χρησιμοποιήσετε, για παράδειγμα, αυτό: https://www.pjrc.com/teensy/arduino_libraries/OneWire.zip. Πραγματοποιήστε λήψη του αρχείου και αποσυσκευάστε το στο φάκελο "βιβλιοθήκες" που βρίσκεται στον κατάλογο Arduino IDE. Τώρα μπορούμε πολύ εύκολα να εργαστούμε με αυτό το πρωτόκολλο.

Φορτώστε το σκίτσο που φαίνεται στην εικόνα στο Arduino με τον τυπικό τρόπο.

Σκίτσο ανάγνωσης του αριθμού κλειδιού της πόρτας
Σκίτσο ανάγνωσης του αριθμού κλειδιού της πόρτας

Βήμα 3

Αυτό το σχέδιο δείχνει τον αριθμό κλειδιού για την ενδοσυνεννόηση, η οποία είναι συνδεδεμένη στο κύκλωμα. Αυτό είναι αυτό που χρειαζόμαστε τώρα - πρέπει να μάθουμε τον αριθμό του κλειδιού που θέλουμε να δημιουργήσουμε ένα αντίγραφο. Συνδέστε το Arduino στον υπολογιστή σας. Ας ξεκινήσουμε την παρακολούθηση σειριακής θύρας: Εργαλεία -> Οθόνη σειριακής θύρας (ή τη συντόμευση πληκτρολογίου Ctrl + Shift + M).

Τώρα ας συνδέσουμε το κλειδί στο κύκλωμα. Η οθόνη θύρας θα εμφανίσει τον αριθμό κλειδιού. Ας θυμηθούμε αυτόν τον αριθμό.

Μάθετε τον αριθμό του κλειδιού, τον κλώνο του οποίου θα φτιάξουμε
Μάθετε τον αριθμό του κλειδιού, τον κλώνο του οποίου θα φτιάξουμε

Βήμα 4

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

Σκίτσο για τον προγραμματισμό του κλειδιού iButton
Σκίτσο για τον προγραμματισμό του κλειδιού iButton

Βήμα 5

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

Βήμα 6

1) Εάν, κατά τη σύνταξη του σκίτσου, παρουσιάζεται σφάλμα [WConstants.h: Χωρίς τέτοιο αρχείο ή κατάλογο #include "WConstants.h"], τότε στο αρχείο "OneWire.cpp" αντικαταστήστε το πρώτο μπλοκ μετά τα σχόλια με τα ακόλουθα:

# συμπερίληψη "OneWire.h"

# συμπερίληψη "Arduino.h"

εξωτερικό "C" {

# συμπερίληψη "avr / io.h"

# συμπερίληψη "pins_arduino.h"

}

2) Εάν κατά τη διάρκεια της σύνταξης εμφανίζεται το σφάλμα "κλάση OneWire δεν έχει μέλος με όνομα read_bytes" ή παρόμοιο, τότε βρείτε άλλη βιβλιοθήκη OneWire, υπάρχουν πολλές από αυτές στο Διαδίκτυο.

Συνιστάται: