สารบัญ:

ระบบรักษาความปลอดภัย RFID พร้อม LCD 1602: 4 ขั้นตอน
ระบบรักษาความปลอดภัย RFID พร้อม LCD 1602: 4 ขั้นตอน

วีดีโอ: ระบบรักษาความปลอดภัย RFID พร้อม LCD 1602: 4 ขั้นตอน

วีดีโอ: ระบบรักษาความปลอดภัย RFID พร้อม LCD 1602: 4 ขั้นตอน
วีดีโอ: ทดลอง RFID 2024, กรกฎาคม
Anonim
ระบบรักษาความปลอดภัย RFID พร้อม LCD 1602
ระบบรักษาความปลอดภัย RFID พร้อม LCD 1602

บทนำ

วันนี้เราจะทำระบบรักษาความปลอดภัย RFID สิ่งนี้จะทำงานเหมือนระบบรักษาความปลอดภัย ดังนั้นเมื่อแท็กหรือการ์ด RFID อยู่ใกล้ๆ มันจะแสดงข้อความบน LCD 1602 จุดประสงค์ของโครงการนี้คือเพื่อจำลองวิธีการทำงานของล็อคประตู RFID ดังนั้น มันจะทำงานเมื่อแท็กหรือการ์ด RFID อยู่ใกล้กับเครื่องอ่าน RFID โดยจะตรวจจับการ์ดหรือแท็กและแสดงข้อความบนจอ LCD

อุปกรณ์

  • เครื่องอ่าน RFID RC522
  • Raspberry Pi 3
  • เขียงหั่นขนม
  • สายจัมเปอร์
  • จอแอลซีดี1602
  • ที-คอบเบลอร์

เอาล่ะ มาเริ่มกันเลย!

ขั้นตอนที่ 1: การประกอบ RFID RC522 และ LCD 1602

การประกอบ RFID RC522 และ LCD 1602
การประกอบ RFID RC522 และ LCD 1602

ตอนนี้เรากำลังจะต่อ LCD และ RFID เข้ากับเขียงหั่นขนม ด้านล่างเป็นรูปภาพพร้อมไดอะแกรมของหมายเลขพิน นอกจากนี้ยังอยู่ในรูปแบบการเขียนสำหรับผู้ที่ไม่ต้องการรูปภาพ บน RFID RC522 ของคุณ คุณจะสังเกตเห็นว่ามีการเชื่อมต่อที่เป็นไปได้ 8 รายการ ได้แก่ SDA (สัญญาณข้อมูลอนุกรม), SCK (นาฬิกาอนุกรม), MOSI (Master Out Slave In), MISO (Master In Slave Out), IRQ (ขัดจังหวะ) คำขอ), GND (กราวด์กำลัง), RST (รีเซ็ต-วงจร) และ 3.3v (3.3v กำลังไฟฟ้าเข้า) เราจะต้องเชื่อมต่อสิ่งเหล่านี้ทั้งหมด แต่ IRQ กับพิน GPIO ของ Raspberry Pi

คุณสามารถต่อสายเหล่านี้โดยตรงกับ GPIO Pins หรือเหมือนที่เราทำในบทช่วยสอนนี้ เสียบ RFID RC522 เข้ากับ Breadboard ของเรา จากนั้นจึงต่อสายจากที่นั่นไปยัง GPIO Pins ของ Raspberry Pi

การเดินสาย RFID RC522 กับ Raspberry Pi นั้นค่อนข้างง่าย โดยคุณจะต้องเชื่อมต่อพิน GPIO เพียง 7 พินกับเครื่องอ่าน RFID โดยตรง ทำตามตารางด้านล่าง และดูคำแนะนำ GPIO ของเราเพื่อดูตำแหน่งของพิน GPIO ที่คุณต้องการเชื่อมต่อ RC522 ของคุณ

SDA เชื่อมต่อกับ Pin 24

SCK เชื่อมต่อกับ Pin 23

MOSI เชื่อมต่อกับ Pin 19

MISO เชื่อมต่อกับ Pin 21

GND เชื่อมต่อกับพิน 6

RST เชื่อมต่อกับ Pin 22

3.3v เชื่อมต่อกับพิน 1

เมื่อคุณเดินสายไฟเสร็จแล้ว เราก็ไปต่อที่ส่วนสนุกได้เลย การเขียนโค้ด! ไปกันเถอะ

ขั้นตอนที่ 2: การตั้งค่า RFID

เพื่อให้ RFID ทำงานได้ เราต้องดาวน์โหลดที่เก็บบางส่วนจาก GitHub โดยใช้เทอร์มินัลบน Raspberry Pi ก่อนอื่นเลย ให้น้ำผลไม้ราสเบอร์รี่ของคุณเพื่อให้สามารถเปิดได้

เปิด Terminal และพิมพ์สิ่งนี้:

sudo raspi-config

2. คำสั่งนี้จะแสดงหน้าจออื่น จากนั้นไปที่ตัวเลือกการเชื่อมต่อ จากนั้นไปที่ P4 SPI เพื่อเปิดใช้งานตัวเลือกนั้น

3. กลับไปที่เทอร์มินัลแล้วพิมพ์สิ่งนี้:

sudo รีบูต

เรากำลังดำเนินการเพื่อให้สามารถเปิดใช้งาน SPI ได้อย่างถูกต้อง

4. เมื่อ Raspberry Pi รีบู๊ต Terminal แล้วให้พิมพ์:

lsmod | grep spi

เราต้องทำสิ่งนี้เพื่อตรวจสอบว่า SPI เปิดใช้งานอย่างถูกต้องหรือไม่ ดังนั้น หากคุณเห็น spi_bcm2835 แสดงว่า Raspberry Pi ลงทะเบียน RFID ของคุณแล้ว และตอนนี้คุณสามารถตั้งค่า LCD 1602 ได้

การแก้ไขปัญหา

หากไม่ได้เปิดใช้งาน SPI ด้วยเหตุผลบางประการ ให้ทำตามขั้นตอนเหล่านี้เพื่อให้ SPI ของคุณทำงาน

7. หากไม่ได้เปิดใช้งานโมดูล SPI ด้วยเหตุผลบางประการ เราสามารถแก้ไขไฟล์การกำหนดค่าการบูตได้ด้วยตนเองโดยเรียกใช้คำสั่งต่อไปนี้บน Raspberry Pi ของเรา

sudo nano /boot/config.txt

8. ภายในไฟล์กำหนดค่า ใช้ Ctrl + W เพื่อค้นหา “dtparam=spi=on“หากพบแล้ว ให้ตรวจดูว่ามี # อยู่ข้างหน้าหรือไม่ หากมีให้ลบออกเนื่องจากเป็นการแสดงความคิดเห็นในบรรทัดการเปิดใช้งาน หากคุณหาบรรทัดนี้ไม่เจอ ให้เพิ่ม “dtparam=spi=on” ที่ด้านล่างของไฟล์

เมื่อคุณทำการเปลี่ยนแปลงแล้ว คุณสามารถกด Ctrl + X จากนั้นกด Y จากนั้นกด Enter เพื่อบันทึกการเปลี่ยนแปลง ตอนนี้คุณสามารถดำเนินการต่อจากขั้นตอนที่ 5 ได้อีกครั้ง รีบูต Raspberry Pi จากนั้นตรวจสอบเพื่อดูว่าโมดูลถูกเปิดใช้งานหรือไม่

ตอนนี้เราจบด้วย RFID แล้ว ไปที่ LCD 1602 กัน!

ขั้นตอนที่ 3: การตั้งค่า LCD 1602

ดังนั้นในการทำให้ LCD แสดงตัวอักษร เราจำเป็นต้องดาวน์โหลดที่เก็บ และเราต้องดาวน์โหลดสิ่งอื่นด้วย

1. เปิดเทอร์มินัลแล้วพิมพ์สิ่งนี้เพื่อติดตั้งที่เก็บ LCD:

โคลน git

2. ในการตรวจสอบว่าพื้นที่เก็บข้อมูลได้รับการติดตั้งอย่างถูกต้องหรือไม่ เราต้องพิมพ์ฟังก์ชันนี้ในเทอร์มินัล:

ลส

หากคุณเห็นโฟลเดอร์ชื่อ lcd แสดงว่าคุณติดตั้งที่เก็บสำเร็จแล้ว

3. ตอนนี้ เราต้องเปลี่ยนไดเร็กทอรี เราสามารถทำได้โดยพิมพ์ในฟังก์ชันนี้:

cd lcd

4. สุดท้าย เราต้องสร้างไฟล์ python ใหม่ เพื่อสร้างไฟล์ python 3 ใหม่และบันทึกลงในโฟลเดอร์ใหม่และตั้งชื่อเป็น Security.py

5. หลังจากนั้น พิมพ์รหัสนี้ในไฟล์และบันทึก

#!/usr/bin/env python

นำเข้า RPi. GPIO เป็น GPIO

นำเข้า MFRC522 สัญญาณนำเข้า เวลานำเข้า นำเข้า lcddriver

Continue_reading = จริง

จอแสดงผล = lcddriver.lcd()

# จับภาพ SIGINT เพื่อล้างเมื่อสคริปต์ถูกยกเลิก

def end_read(สัญญาณ, เฟรม): global continue_reading print ("Ctrl+C ถูกบันทึก สิ้นสุดการอ่าน") continue_reading = False GPIO.cleanup()

# ขอ SIGINT

สัญญาณ.สัญญาณ(สัญญาณ. SIGINT, end_read)

# สร้างวัตถุของคลาส MFRC522

MIFAREReader = MFRC522. MFRC522()

#ข้อความต้อนรับ

พิมพ์ ("ยินดีต้อนรับสู่ตัวอย่างการอ่านข้อมูล MFRC522") พิมพ์ ("กด Ctrl-C เพื่อหยุด")

# วนนี้คอยตรวจสอบชิป หากอยู่ใกล้จะได้รับ UID และรับรองความถูกต้อง

ขณะอ่านต่อไป: # สแกนหาการ์ด (สถานะ, ประเภทแท็ก) = MIFAREReader. MFRC522_Request(MIFAREReader. PICC_REQIDL)

#หากพบบัตร

ถ้าสถานะ == MIFAREReader. MI_OK: พิมพ์ ("ตรวจพบการ์ด") display.lcd_display_string ("สวัสดีมนุษย์", 1) display.lcd_display_string ("เข้าถึงได้", 2) time.sleep (1.5) display.lcd_clear () # รับ UID ของการ์ด (สถานะ uid) = MIFAREReader. MFRC522_Anticoll()

# หากเรามี UID ให้ดำเนินการต่อ

ถ้าสถานะ == MIFAREReader. MI_OK:

# พิมพ์ UID

print ("Card read UID: %s, %s, %s, %s") % (uid[0], uid[1], uid[2], uid[3]) # นี่คือคีย์เริ่มต้นสำหรับการตรวจสอบสิทธิ์ คีย์ = [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF] # เลือกแท็กที่สแกน MIFAREReader. MFRC522_SelectTag(uid)

# รับรองความถูกต้อง

สถานะ = MIFAREReader. MFRC522_Auth(MIFAREReader. PICC_AUTHENT1A, 8, คีย์, uid)

# ตรวจสอบว่ามีการรับรองความถูกต้อง

ถ้าสถานะ == MIFAREReader. MI_OK: MIFAREReader. MFRC522_Read(8) MIFAREReader. MFRC522_StopCrypto1() อื่น: พิมพ์ ("ข้อผิดพลาดในการตรวจสอบสิทธิ์")

ขั้นตอนที่ 4: ทำให้ระบบความปลอดภัยใช้งานได้

เราพร้อมแล้ว และในที่สุด เราก็สามารถทำให้ระบบรักษาความปลอดภัยทำงานได้! เพื่อให้มันใช้งานได้ เราต้องเปิดเทอร์มินัล

1. เปิดเทอร์มินัล

2. เราจำเป็นต้องเปลี่ยนไดเร็กทอรีเป็นโฟลเดอร์ lcd ดังนั้นให้พิมพ์สิ่งนี้บนเทอร์มินัล:

cd lcd

3. พิมพ์สิ่งนี้:

python Security.py

ดี! เครื่องอ่านบัตรควรพูดว่า "ยินดีต้อนรับสู่ระบบความปลอดภัย"

วางแท็ก ID ของคุณบนเครื่องอ่าน RFID และดูว่าเกิดอะไรขึ้น

หาก RFID อ่านแล้วจะระบุว่าตรวจพบการ์ดบนเทอร์มินัลและบน LCD จะแสดง "Hello Human" และด้านล่าง "Access Granted"

หากสิ่งนี้ไม่เกิดขึ้นกับคุณ โปรดตรวจสอบวงจรของคุณและขอความช่วยเหลือ

แนะนำ: