Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Uvod
Danas ćemo izraditi RFID sigurnosni sustav. Ovo će funkcionirati poput sigurnosnog sustava pa će, kada je RFID oznaka ili kartica u blizini, prikazati poruku na LCD -u 1602. Svrha ovog projekta je simulirati način rada RFID brava na vratima. Dakle, radit će kada je RFID oznaka ili kartica u blizini RFID čitača, otkrit će karticu ili oznaku i prikazati poruku na LCD -u.
Oprema
- RFID čitač RC522
- Malina Pi 3
- Oglasna ploča
- Žice za kratkospojnike
- LCD 1602
- T-postolar
Sada, počnimo!
Korak 1: Sklapanje RFID RC522 i LCD 1602
Dakle, sada ćemo spojiti LCD i RFID na matičnu ploču. Ispod je slika sa dijagramom broja pina. Također je u pisanom obliku za ljude kojima nisu potrebne slike. Na RFID -u RC522 primijetit ćete da na njemu postoji 8 mogućih veza, a to su SDA (Serijski podatkovni signal), SCK (Serijski sat), MOSI (Master Out Slave In), MISO (Master In Slave Out), IRQ (Prekid Zahtjev), GND (Ground Power), RST (Reset-Circuit) i 3.3v (3.3v Power In). Morat ćemo sve ovo osim IRQ -a spojiti na GPIO pinove naše Raspberry Pi.
Možete ih spojiti izravno na GPIO pinove ili kao što smo to učinili u ovom vodiču, priključite RFID RC522 u naš Breadboard, a zatim ožičite od tamo do GPIO pinova naše Raspberry Pi.
Ožičenje vašeg RFID RC522 na vaš Raspberry Pi prilično je jednostavno, jer zahtijeva da samo 7 GPIO pinova spojite izravno na RFID čitač. Slijedite donju tablicu i pogledajte naš GPIO vodič kako biste vidjeli položaje GPIO pinova na koje trebate spojiti svoj RC522.
SDA se spaja na pin 24.
SCK se spaja na pin 23.
MOSI se spaja na Pin 19.
MISO se spaja na Pin 21.
GND se spaja na pin 6.
RST se spaja na pin 22.
3.3v se spaja na Pin 1.
Kad završite s ožičenjem, možemo prijeći na zabavni dio, kodiranje! Idemo
Korak 2: Postavljanje RFID -a
Kako bi RFID funkcionirao, moramo preuzeti neko spremište s GitHub -a pomoću terminala na Raspberry Pi. Dakle, prije svega dajte malo soka malini da se uključi.
Otvorite Terminal i upišite ovo:
sudo raspi-config
2. Ova naredba će otvoriti drugi zaslon, a zatim se spustite na Interfacing Options (Opcije sučelja), a zatim idite na P4 SPI da biste omogućili tu opciju.
3. Vratite se na terminal i upišite ovo:
sudo ponovno podizanje sustava
To radimo kako bi se SPI mogao ispravno omogućiti.
4. Nakon što se Raspberry Pi ponovno pokrene, otvorite Terminal i upišite:
lsmod | grep spi
Moramo to učiniti kako bismo provjerili je li SPI ispravno omogućen. Dakle, ako vidite spi_bcm2835, vaš RFID registrira Raspberry Pi i sada se možete pomaknuti za postavljanje LCD 1602
Rješavanje problema
Ako iz nekih razloga SPI nije aktiviran, slijedite ove korake kako bi vaš SPI funkcionirao.
7. Ako se iz nekog razloga SPI modul nije aktivirao, možemo ručno urediti konfiguracijsku datoteku za pokretanje pokretanjem sljedeće naredbe na našem Raspberry Pi.
sudo nano /boot/config.txt
8. U konfiguracijskoj datoteci upotrijebite Ctrl + W da biste pronašli „dtparam = spi = on“. Ako ste ga pronašli, provjerite ima li ispred njega #. Ako postoji, uklonite je jer ovo komentira aktivacijsku liniju. Ako uopće ne možete pronaći redak, samo dodajte "dtparam = spi = on" na dno datoteke.
Nakon što unesete promjene, možete pritisnuti Ctrl + X, zatim pritisnuti Y, a zatim Enter da biste spremili promjene. Sada možete ponovno nastaviti s 5. korakom, ponovno pokrenuti Raspberry Pi, a zatim provjeriti je li modul omogućen.
Sada smo završili s RFID -om i idemo na LCD 1602!
Korak 3: Postavljanje LCD 1602
Dakle, da bi LCD prikazivao slova, moramo preuzeti preuzimanje spremišta, a također moramo preuzeti i neke druge stvari.
1. Otvorite terminal i upišite ovo za instaliranje LCD spremišta:
git klon
2. Da bismo provjerili je li spremište ispravno instalirano, moramo upisati ovu funkciju u terminal:
ls
Ako vidite mapu s imenom lcd, onda ste uspješno instalirali spremište.
3. Sada, moramo promijeniti imenik, to možemo učiniti upisivanjem ove funkcije:
cd lcd
4. Konačno, moramo napraviti novu python datoteku pa napraviti novu python 3 datoteku i spremiti je u novu mapu i dati joj ime Security.py.
5. Nakon toga upišite ovaj kod u datoteku i spremite ga.
#!/usr/bin/env python
uvezite RPi. GPIO kao GPIO
import MFRC522 signal uvoza vrijeme uvoza import lcddriver
continue_reading = Istina
display = lcddriver.lcd ()
# Snimite SIGINT za čišćenje kada je skripta prekinuta
def end_read (signal, okvir): globalni continue_reading ispis ("Ctrl+C snimljen, završeno čitanje.") continue_reading = Netačno GPIO.cleanup ()
# Zakačite ZNAK
signal.signal (signal. SIGINT, kraj_čitaj)
# Izradite objekt klase MFRC522
MIFARERčitač = MFRC522. MFRC522 ()
# Poruka dobrodošlice
print ("Dobro došli u primjer čitanja podataka MFRC522") print ("Pritisnite Ctrl-C za zaustavljanje.")
# Ova petlja stalno provjerava ima li čipova. Ako je netko u blizini, dobit će UID i potvrditi autentičnost
tijekom nastavka_čitavanja: # Skeniraj kartice (status, TagType) = MIFAREReader. MFRC522_Request (MIFAREReader. PICC_REQIDL)
# Ako je kartica pronađena
if status == MIFAREReader. MI_OK: print ("Kartica je otkrivena") display.lcd_display_string ("Pozdrav čovječe", 1) display.lcd_display_string ("Pristup odobren", 2) time.sleep (1.5) display.lcd_clear () # Get UID kartice (status, uid) = MIFAREReader. MFRC522_Anticoll ()
# Ako imamo UID, nastavite
ako je status == MIFARERčitač. MI_OK:
# Ispis UID -a
print ("UID za čitanje kartice: %s, %s, %s, %s") %(uid [0], uid [1], uid [2], uid [3]) # Ovo je zadani ključ za provjeru autentičnosti key = [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF] # Odaberite skeniranu oznaku MIFAREReader. MFRC522_SelectTag (uid)
# Potvrdite autentičnost
status = MIFAREReader. MFRC522_Auth (MIFAREReader. PICC_AUTHENT1A, 8, ključ, uid)
# Provjerite je li potvrđena autentičnost
if status == MIFAREReader. MI_OK: MIFAREReader. MFRC522_Read (8) MIFAREReader. MFRC522_StopCrypto1 () else: print ("Pogreška autentifikacije")
Korak 4: Uključite sigurnosni sustav
Sve smo spremni i sada konačno možemo pokrenuti sigurnosni sustav! Da bismo uspjeli, moramo otvoriti terminal.
1. Otvorite terminal
2. Moramo promijeniti imenik u lcd mapu pa upišite ovo na terminalu:
cd lcd
3. Upišite ovo:
python Security.py
Lijepo! Terminal bi trebao reći ovo "Dobrodošli u sigurnosni sustav".
Postavite svoju identifikacijsku oznaku na RFID čitač i pogledajte što se događa.
Ako ga RFID pročita tada će reći kartica otkrivena na terminalu, a na LCD -u će se prikazati "Hello Human", a ispod njega "Access Granted"
Ako se to s vama ne dogodi, provjerite svoj krug i zatražite pomoć