Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
I denne instruksen vil jeg vise deg hvordan du lager en smart låsekasse.
Låsekassen drives av en Arduino (UNO) og bruker RFID og en servomotor for å kontrollere tilgang mens du holder styr på innkommende data fra forskjellige sensorer. Datahistorikk vil bli lagret i en MYSQL -database. Dataene vil bli vist på et nettsted som bringebær Pi.
Trinn 1: Deler og materialeliste for prosjektet
Datamaskin/mikrokontroller:
- Arduino UNO
- RaspBerry Pi 4 modell B
Deler
- LM35 temperatursensor
- GL5537 LDR -sensor
- VMA405 eller RC522 RFID sensorleser med tag
- MG 996R Servomotor
- DuPont genser for menn og kvinner
- Brødbrett ledninger
- Rød LED
- Grønn LED
- Aktiv summer 5V
- 1k Ω (ohm) motstand
- 2 x 330 Ω (ohm) motstander
Boliger
Boksen kan lages av alt materiale. Min er laget av papp
Ekstra
Jeg lagde et trefeste for servomotoren (valgfritt)
Programvare
Arduino IDE, Visual studio code - Raspberry Pi med SSH, MYSQL arbeidsbenk
For et estimat av prisen, kan du sjekke ut BOM -filen.
Trinn 2: Breadboard Circuit
RFID
- Vcc 3.3. V av Arduino
- RST Digital 9 -pinners
- Gnd Gnd fra Arduino
- MISO Digital 12 -pinners
- MOSI Digital 11 -pinners
- SCK Digital 13 -pinners
- NSS/SDA Digital 10 -pinners
Servo motor
- 5V (rød) (+) på brødbrettet
- Gnd (brun) Gnd på brødbrett
- PWM (oransje) Digital 3 -pinners
LM35
- Vin (+) (+) på brødbrett
- Gnd Gnd på brødbrett
- Vout Analog 1 pin
LDR
- Vin (+) (+) på brødbrett
- Gnd Gnd på brødbrett med 1K ohm motstand
- Vout Analog 0 pin
LED (grønn)
- Vin (+) Digital 4 -pinners med 330 ohm motstand
- Gnd Gnd på brødbrett
LED (rød)
- Vin (+) Digital 5 -pinners med 330 ohm motstand
- Gnd Gnd på brødbrett
Aktiv summer
- Vin (+) (+) på brødbrett
- Gnd Gnd på brødbrett
Arduino til brødbrett
- Arduino 5V (+) (+) på brødbrett
- Arduino Gnd Gnd på brødbrett
Bringebær Pi til Arduino
Blir koblet til med USB
Trinn 3: Arduino
Kablingene til elektronikken skal ligne på bildet ovenfor.
Koble først Arduino til datamaskinen for å programmere maskinvaren. Hovedkoden kan lastes ned nedenfor, men ikke bruk den ennå, følg først trinnene nedenfor.
Biblioteker
Vi vil bruke biblioteket SPI og MFRC 522 for å jobbe med RFID -sensoren.
Last ned RFID -biblioteket her fra Github of miguelbalboa
Pakk ut zip -filen.
I Arduino IDE gå til skisse> inkluder bibliotek og velg zip -filen du nettopp lastet ned
Etter at du har lastet opp zip -filen, går du til skisse> inkluderer bibliotek> administrerer biblioteker. Søk i "bibliotekets leder" for "MFRC522". Det skal stå at biblioteket er installert.
Skanner RFID -data
Gå til fil> eksempler> MFR522> dumpinfo og last opp/start koden i IDE. Du vil se at koden inneholder et MFR522.h og SPI.h bibliotek. Begge er nødvendige for RFID.
Åpne nå den serielle skjermen (verktøy> seriell skjerm) og skann merket og kortet til alle dataene vises.
Sørg for å skrive UID fordi du trenger det.
Nå kan du laste ned hovedkoden (Arduino_code_lockbox) I hovedkoden erstatter du din egen UID -tag -kode med den fra koden.
Etter å ha kjørt/lastet opp koden i Arduino IDE, test rfid -skanningen. Hvis det fungerer, kan du koble Arduino USB fra datamaskinen og koble den til Raspberry Pi.
Trinn 4: Bringebær Pi
Les data fra Arduino i Python
Kontroller at Arduino er koblet til Raspberry Pi. Åpne app.py og kjør filen. Du vil se dataene mottatt av sensorene dine fra Arduino.
For å lese dataene trenger du den serielle delen av koden (se bildet).
MYSQL Database Lag en database for å holde måleverdiene til sensorene dine. For dette prosjektet vil jeg lage tabeller for temperatur, LDR og RFID.
Backend Python
Legg til python -ruter og juster til MYSQL -databasen din. Send verdiene til sensordataene dine til din egen database.
Trinn 5: Nettsted
Oppsett
Du kan bruke filene fra webrar.rar Eller du kan lage ditt eget nettsted med html, css.
Vis data fra databasen
Bruk javascript for å få og vise dataene fra databasen til nettstedet ditt
Chart.js -biblioteket brukes til å tegne dataene.
Trinn 6: Boliger
Ytre
For husets ytre teipet jeg forskjellige deler sammen. Den øvre delen er kuttet i en L-form, slik at bunnen av L (høyre side på bildet) blir mer fast.
For RFID -sensoren er det valgfritt å kutte et hull i esken. Det bør være mulig å skanne gjennom papp hvis den ikke er for tykk.
Servomotoren vil bli tapet på utsiden. Avhengig av hvordan du plasserer bringebæret inne i esken, må du lage små hull for kabeltilkoblinger som USB- eller ethernet -kabelen.
Interiør
For interiøret laget jeg et lag slik at jeg kan skille begge enhetene, og det er mer organisert. Raspberry Pi vil være på bunnen av esken og Arduino med brødbrettet vil være på det øvre laget.