Cuprins:

Smart Lockbox: 7 pași
Smart Lockbox: 7 pași

Video: Smart Lockbox: 7 pași

Video: Smart Lockbox: 7 pași
Video: How To Stay Away From Humans 😂| Yeeuu K1 Smart Lockbox Review 2024, Iulie
Anonim
Smart Lockbox
Smart Lockbox

În acest instructable vă voi arăta cum să creați o casetă inteligentă.

Cutia de blocare este alimentată de un Arduino (UNO) și folosește RFID și un servomotor pentru a controla accesul, în timp ce ține evidența datelor primite de la diferiți senzori. Istoricul datelor va fi păstrat într-o bază de date MYSQL. Datele vor fi afișate pe un site web găzduit de zmeura Pi.

Pasul 1: Lista pieselor și a materialelor pentru proiect

Computer / microcontroler:

  • Arduino UNO
  • RaspBerry Pi 4 Model B.

Părți

  • Senzor de temperatură LM35
  • Senzor GL5537 LDR
  • Cititor de senzori RFID VMA405 sau RC522 cu etichetă
  • Servomotor MG 996R
  • Sârme jumper DuPont Bărba-Femeie
  • Sârme de panouri
  • LED roșu
  • LED verde
  • Buzzer activ 5V
  • Rezistor 1k Ω (ohm)
  • 2 rezistențe de 330 Ω (ohm)

Locuințe

Cutia poate fi realizată din orice material. Al meu este din carton

Suplimentar

Am realizat un accesoriu din lemn pentru servomotor (opțional)

Software

Arduino IDE, cod Visual studio - Raspberry Pi cu SSH, banc de lucru MYSQL

Pentru o estimare a prețului, puteți consulta fișierul BOM.

Pasul 2: Circuitul Breadboard

Circuitul Breadboard
Circuitul Breadboard
Circuitul Breadboard
Circuitul Breadboard
Circuitul Breadboard
Circuitul Breadboard

RFID

  • Vcc 3.3. V de Arduino
  • RST Digital cu 9 pini
  • Gnd Gnd din Arduino
  • MISO Digital 12 pini
  • MOSI Digital cu 11 pini
  • SCK Digital 13 pini
  • NSS / SDA Digital 10 pini

Servo motor

  • 5V (roșu) (+) pe panou
  • Gnd (Brown) Gnd pe panou
  • PWM (portocaliu) digital cu 3 pini

LM35

  • Vin (+) (+) pe panou
  • Gnd Gnd pe panou
  • Vout Analog 1 pin

LDR

  • Vin (+) (+) pe panou
  • Gnd Gnd pe panou cu rezistor de 1K ohm
  • Vout Analog 0 pin

Led (verde)

  • Vin (+) digital cu 4 pini cu rezistor de 330 ohm
  • Gnd Gnd pe panou

Led (roșu)

  • Vin (+) Digital cu 5 pini cu rezistor de 330 ohmi
  • Gnd Gnd pe panou

Buzzer activ

  • Vin (+) (+) pe panou
  • Gnd Gnd pe panou

Arduino la breadboard

  • Arduino 5V (+) (+) pe panou
  • Arduino Gnd Gnd pe panou

Raspberry Pi la Arduino

Va fi conectat cu un USB

Pasul 3: Arduino

Arduino
Arduino

Cablajul electronicului ar trebui să arate similar cu imaginea de mai sus.

Mai întâi conectați Arduino la computer pentru a programa hardware-ul. Codul principal va fi descărcat mai jos, dar nu îl utilizați încă, urmați mai întâi pașii de mai jos.

Biblioteci

Vom folosi biblioteca SPI și MFRC 522 pentru a lucra cu senzorul RFID.

Descărcați biblioteca RFID aici de pe Github din miguelbalboa

Despachetați fișierul zip.

În IDE-ul Arduino, accesați schița> includeți biblioteca și alegeți fișierul zip pe care tocmai l-ați descărcat

După ce ați încărcat fișierul zip, accesați schița> includeți biblioteca> gestionați bibliotecile. În managerul de bibliotecă, căutați „MFRC522”. Ar trebui să se spună că biblioteca este instalată.

Scanarea datelor RFID

Mergeți la fișier> exemple> MFR522> dumpinfo și încărcați / porniți codul în IDE-ul dvs. Veți vedea că codul include o bibliotecă MFR522.h și SPI.h. Ambele sunt necesare pentru RFID.

Acum deschideți monitorul serial (instrumente> serialmonitor) și scanați insigna și cardul până când sunt afișate toate datele.

Asigurați-vă că scrieți UID-ul, deoarece veți avea nevoie de el.

Acum puteți descărca codul principal (Arduino_code_lockbox) În codul principal, înlocuiți propriul cod de etichetă UID cu cel din cod.

După rularea / încărcarea codului în IDE-ul Arduino, testați scanarea RFID. Dacă funcționează, puteți deconecta Arduino USB de la computer și conecta-l la Raspberry Pi.

Pasul 4: Raspberry Pi

Raspberry Pi
Raspberry Pi

Citiți date de la Arduino în Python

Asigurați-vă că Arduino este conectat la Raspberry Pi. Deschideți app.py și rulați fișierul. Veți vedea datele primite de senzorii dvs. de la Arduino.

Pentru a citi datele, veți avea nevoie de partea de serie a codului (a se vedea imaginea).

Baza de date MYSQL Creați o bază de date pentru a păstra valorile măsurate ale senzorilor dvs. Pentru acest proiect voi face tabele pentru temperatură, LDR și RFID.

Backend Python

Adăugați rute python și ajustați-le în mod corespunzător la baza de date MYSQL. Trimiteți valorile datelor senzorilor dvs. la propria bază de date.

Pasul 5: site-ul web

Aspect

Puteți utiliza fișierele de pe webrar.rar Sau vă puteți crea propriul site web cu html, css.

Afișați datele din baza de date

Utilizați javascript pentru a obține și afișa datele din baza de date pe site-ul dvs. web

Biblioteca Chart.js va fi utilizată pentru graficarea datelor.

Pasul 6: Locuințe

Locuințe
Locuințe

Exterior

Pentru exteriorul carcasei am lipit diferite părți împreună. Partea superioară este tăiată în formă de L, astfel încât baza L (partea dreaptă a imaginii) va fi mai fermă.

Pentru senzorul RFID, tăierea unei găuri în cutie este opțională. Ar trebui să fie posibil să scanați prin carton dacă nu este prea gros.

Servomotorul va fi lipit pe exterior. În funcție de modul în care poziționați zmeura în interiorul cutiei, va trebui să faceți mici găuri pentru conexiunile prin cablu, cum ar fi cablul USB sau Ethernet.

Interior

Pentru interior am făcut un strat, astfel încât să pot separa ambele dispozitive și să fie mai organizat. Raspberry Pi va fi pe partea de jos a cutiei, iar Arduino cu panoul va fi pe stratul superior.

Recomandat: