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

Smart Lockbox: 7 βήματα
Smart Lockbox: 7 βήματα

Βίντεο: Smart Lockbox: 7 βήματα

Βίντεο: Smart Lockbox: 7 βήματα
Βίντεο: igloohome Smart Keybox || World's First Smart Lockbox That Works Offline 2024, Ιούλιος
Anonim
Smart Lockbox
Smart Lockbox

Σε αυτό το διδακτικό θα σας δείξω πώς να φτιάξετε ένα έξυπνο κλείδωμα.

Το lockbox τροφοδοτείται από ένα Arduino (UNO) και χρησιμοποιεί RFID και έναν σερβοκινητήρα για τον έλεγχο της πρόσβασης ενώ παρακολουθεί τα εισερχόμενα δεδομένα από διαφορετικούς αισθητήρες. Το ιστορικό δεδομένων θα διατηρείται σε μια βάση δεδομένων MYSQL. Τα δεδομένα θα εμφανίζονται σε έναν ιστότοπο που φιλοξενείται από το βατόμουρο Πι.

Βήμα 1: Λίστα μερών και υλικών για το έργο

Υπολογιστής/μικροελεγκτής:

  • Arduino UNO
  • RaspBerry Pi 4 Μοντέλο Β

Ανταλλακτικά

  • Αισθητήρας θερμοκρασίας LM35
  • Αισθητήρας GL5537 LDR
  • Αναγνώστης αισθητήρων VMA405 ή RC522 RFID με ετικέτα
  • Σερβοκινητήρας MG 996R
  • Καλώδια άλτης αρσενικού-θηλυκού DuPont
  • Σύρματα Breadboard
  • Κόκκινο LED
  • Πράσινο LED
  • Ενεργός βομβητής 5V
  • 1k Ω (ohm) αντίσταση
  • 2 αντιστάσεις 330 Ω (ohm)

Στέγαση

Το κουτί μπορεί να κατασκευαστεί από οποιοδήποτε υλικό. Το δικό μου είναι από χαρτόνι

Επιπλέον

Έφτιαξα ένα ξύλινο εξάρτημα για το σερβοκινητήρα (προαιρετικό)

Λογισμικό

Arduino IDE, Visual studio code - Raspberry Pi with SSH, MYSQL workbench

Για εκτίμηση της τιμής, μπορείτε να δείτε το αρχείο BOM.

Βήμα 2: Κύκλωμα Breadboard

Κύκλωμα Breadboard
Κύκλωμα Breadboard
Κύκλωμα Breadboard
Κύκλωμα Breadboard
Κύκλωμα Breadboard
Κύκλωμα Breadboard

RFID

  • Vcc 3.3. V του Arduino
  • RST Digital 9 ακίδων
  • Gnd Gnd του Arduino
  • MISO Digital 12 ακίδων
  • MOSI Digital 11 ακίδων
  • SCK Digital 13 ακίδων
  • NSS/SDA Digital 10 pin

Βοηθητικό μοτέρ

  • 5V (Κόκκινο) (+) στο breadboard
  • Gnd (Καφέ) Gnd στο breadboard
  • PWM (Πορτοκαλί) Digitalηφιακό 3 ακίδων

LM35

  • Vin (+) (+) στο breadboard
  • Gnd Gnd στο breadboard
  • Vout Analog 1 ακίδα

LDR

  • Vin (+) (+) στο breadboard
  • Gnd Gnd σε breadboard με αντίσταση 1K ohm
  • Vout Analog 0 pin

Led (πράσινο)

  • Vin (+) Digitalηφιακή 4 ακίδα με αντίσταση 330 ohm
  • Gnd Gnd στο breadboard

Led (κόκκινο)

  • Vin (+) Digitalηφιακή 5 ακίδα με αντίσταση 330 ohm
  • Gnd Gnd στο breadboard

Ενεργός βομβητής

  • Vin (+) (+) στο breadboard
  • Gnd Gnd στο breadboard

Arduino στο breadboard

  • Arduino 5V (+) (+) στο breadboard
  • Arduino Gnd Gnd στο breadboard

Raspberry Pi στο Arduino

Θα συνδεθεί με USB

Βήμα 3: Arduino

Arduino
Arduino

Η καλωδίωση των ηλεκτρονικών θα πρέπει να μοιάζει με την παραπάνω εικόνα.

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

Βιβλιοθήκες

Θα χρησιμοποιήσουμε τη βιβλιοθήκη SPI και MFRC 522 για να συνεργαστούμε με τον αισθητήρα RFID. Εργασία με το RFID

Κατεβάστε τη βιβλιοθήκη RFID εδώ από το Github του miguelbalboa

Αποσυσκευάστε το αρχείο zip.

Στο Arduino IDE μεταβείτε στο σκίτσο> συμπεριλάβετε τη βιβλιοθήκη και επιλέξτε το αρχείο zip που μόλις κατεβάσατε

Αφού ανεβάσετε το αρχείο zip, μεταβείτε στο σκίτσο> συμπεριλάβετε τη βιβλιοθήκη> διαχειριστείτε βιβλιοθήκες. Στη διαχείριση βιβλιοθηκών, αναζητήστε "MFRC522". Θα πρέπει να πει ότι η βιβλιοθήκη είναι εγκατεστημένη.

Σάρωση δεδομένων RFID

Μεταβείτε στο αρχείο> παραδείγματα> MFR522> dumpinfo και ανεβάστε/ξεκινήστε τον κωδικό στο IDE σας. Θα δείτε ότι ο κώδικας περιλαμβάνει μια βιβλιοθήκη MFR522.h και SPI.h. Και τα δύο χρειάζονται για το RFID.

Τώρα ανοίξτε τη σειριακή οθόνη (εργαλεία> σειριακό μόνιτορ) και σαρώστε το σήμα και την κάρτα σας μέχρι να εμφανιστούν όλα τα δεδομένα.

Φροντίστε να γράψετε το UID γιατί θα το χρειαστείτε.

Τώρα μπορείτε να κατεβάσετε τον κύριο κωδικό (Arduino_code_lockbox) Στον κύριο κωδικό, αντικαταστήστε τον δικό σας κωδικό ετικέτας UID με αυτόν από τον κώδικα.

Αφού εκτελέσετε/ανεβάσετε τον κώδικα στο Arduino IDE, δοκιμάστε τη σάρωση rfid. Εάν λειτουργεί, μπορείτε να αποσυνδέσετε το Arduino USB από τον υπολογιστή και να το συνδέσετε με το Raspberry Pi.

Βήμα 4: Raspberry Pi

Raspberry Pi
Raspberry Pi

Διαβάστε δεδομένα από το Arduino στην Python

Βεβαιωθείτε ότι το Arduino είναι συνδεδεμένο στο Raspberry Pi. Open app.py και εκτελέστε το αρχείο. Θα δείτε τα δεδομένα που έλαβαν οι αισθητήρες σας από το Arduino.

Για να διαβάσετε τα δεδομένα θα χρειαστείτε το σειριακό μέρος του κώδικα (δείτε την εικόνα).

Βάση δεδομένων MYSQL

Backend Python

Προσθέστε διαδρομές python και προσαρμόστε ανάλογα στη βάση δεδομένων MYSQL. Στείλτε τις τιμές των δεδομένων των αισθητήρων σας στη δική σας βάση δεδομένων.

Βήμα 5: Ιστότοπος

Σχέδιο

Μπορείτε να χρησιμοποιήσετε τα αρχεία από το webrar.rar r μπορείτε να δημιουργήσετε τον δικό σας ιστότοπο με html, css.

Εμφάνιση δεδομένων από τη βάση δεδομένων

Χρησιμοποιήστε το javascript για να λάβετε και να εμφανίσετε τα δεδομένα από τη βάση δεδομένων στον ιστότοπό σας

Η βιβλιοθήκη Chart.js θα χρησιμοποιηθεί για τη γραφική παράσταση των δεδομένων.

Βήμα 6: Στέγαση

Στέγαση
Στέγαση

Εξωτερικός

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

Για τον αισθητήρα RFID, το κόψιμο μιας τρύπας στο κουτί είναι προαιρετικό. Θα πρέπει να είναι δυνατή η σάρωση μέσω του χαρτονιού εάν δεν είναι πολύ παχύ.

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

Εσωτερικό

Για το εσωτερικό έφτιαξα ένα στρώμα για να χωρίσω και τις δύο συσκευές και είναι πιο οργανωμένο. Το Raspberry Pi θα βρίσκεται στο κάτω μέρος του κουτιού και το Arduino με το breadboard θα βρίσκεται στο επάνω στρώμα.

Συνιστάται: