IC 卡感應模組 RFID RC522

房門的安全鎖

簡介

IC 卡感應模組 MF RC522 RFID 射頻,是由恩智普 (NXP) 公司,推出的非接觸型 IC 卡。

本專題用此模組, 搭配感應卡、感應鑰匙扣 、伺服馬達、蜂鳴器和 LED,做一個類似賓館房門的安全鎖。

專題靈感來自於 Youtube: How to Make Arduino Security Access Lock | RFID MFRC522

成果影片

程式設計的流程是:

  • 如果感應模組讀到正確的 ID,則綠燈亮,蜂鳴器嗶一聲(高頻),何服馬達轉動,打開房門。
  • 如果感應模組讀到非設定好的ID,則紅燈亮,蜂鳴器嗶一聲(低頻),伺服馬達不轉動,房門依舊鎖著。

材料和接線圖

Arduino UNO x1

IC卡感應模組 MF RC522 RFID 射頻 x1

感應卡, 感應鑰匙扣 各一

伺服馬達 x1

蜂鳴器 x1

LED 紅綠 各一

電阻 (220-330 歐姆 均可) x2

麵包板 x1

電線數條


MFRC522 連接 Arduino

RST (Reset) pin 9

NSS (SDA) pin 10

MOSI pin 11

MISO pin 12

SCK pin 13

IRQ 不接

VCC 3.3 V

GND GND


紅色 LED 長腳連接 Arduino pin 4 。綠色 LED 長腳連接 Arduino pin 5。二個 LED 短腳接電阻,電阻的另外一端連接GND。

伺服器紅線連接 Arduino 5V,棕色線連接 Arduino GND,黃色線連接 Arduino pin 3。

蜂鳴器正極連結 Arduino pin 2,負極連接 GND 。

分享 Arduino GND 到麵包板上。

匯入程式庫

主程式需要程式庫 (Library) “MFRC522.h” 。程式庫內提供很多額外指令,供主程式使用。不僅擴充主程式功能,並能保持主程式的清淅和簡短。

步驟一:

打開 Arduino 》點擊 草稿碼 》匯入程式庫 》管理程式庫 》螢幕上即出現程式管理員視窗。

步驟二:

在搜尋框內鍵入程式庫名稱 MFRC522,視窗內會出現所有含 該名稱的程式庫,選擇 MFRC522 by Github Community 並按安裝。

步驟三:

查看程式庫有沒有安裝成功。點擊 草稿碼 》匯入程式庫 》游標往下搜尋,看有沒有 MFRC522 的程式庫在系統內。

上傳主程式

確認程式庫已安裝後,複製下列程式於 Arduino IDE中,點擊 ”工具”,確認開發板是 Arduino/Genuino Uno, 序列埠 Port COM已接上,再點擊 ”上傳”,大功告成。

程式基本運作說明:

分別用感應卡和感應鑰匙扣接近感應模組,打開 Arduino 序列埠螢幕,讀取 ID 碼。

在程式第54行,輸入要讓房門打開的 ID 碼,再重新上傳程式。

創客點子

本練習所用的IC卡感應模組,可以感應一般的悠遊卡。試著設定你的悠遊卡,來打開房門安全鎖。

(一般銀行的ATM卡或者是信用卡,設有保密安全協定。我們在這裡所用的模組,無法感應。)