愛伊米

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

下面介紹兩種基於Adafruit FPM10A指紋感測器的門鎖系統,一種易於測試,另一種易於使用嵌入式。

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

所需元器件

硬體部分

Adafruit Standard LCD - 16x2 White on Blue *1

Arduino UNO & Genuino UNO *1

基於Arduino UNO板的門鎖系統這個專案做了兩個版本,第一個版本是包含FPM10A光學指紋感測器和i2c通訊的LCD屏,而另一個版本則需要加一個鍵盤。

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

確保不要忘記你要控制的門鎖系統 ,接下來你的接線和程式碼可能會要修改,但這個實現起來不會太難。

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

我使用的這個系統,大概花70元就可以買到,但在這個專案中我只使用它的鎖定單元,不需要用到鍵盤單元。

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

由於系統裡有一個直流電機,為了控制電機正反轉,新增L298 H橋模組,當然你也可以使用一個ic H橋來實現,此時我只能使用我手上這些工具來實現。

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

您可以使用電磁鎖,並透過Arduino控制電晶體實現它,您僅需一個引腳接線即可控制電晶體,而所需的線路也更少。

事不宜遲……瞭解您的系統如何工作並進行調整。

在繼續操作之前,確保知道如何使用上述所有元器件,因為這將使你的專案易於發現任何問題並做好除錯:

Arduino uno + 4×4 鍵盤矩陣 + LCD i2c 螢幕

將 FPM10A ( 50DY )指紋感測器與 Arduino 介面

Arduino LCD I2C 簡單易用,可從序列監視器直接寫入

逐步介紹如何在 Arduino 上使用 L298n 雙 H 橋驅動程式

版本1:

此版本所需器件:LCD、指紋感測器、L298n(用來控制系統)、帶1k歐電阻的按鈕。

對於第一個版本,你需要首先從指紋庫(下圖)上傳“註冊”程式碼,然後使用它來新增指紋,上傳並開啟序列監視器,然後輸入ID,再按“ Enter”,然後按照指紋教程中的步驟繼續上傳第二個指紋程式碼,併為每個使用者新增建立標籤,然後我們將指紋資訊儲存在模組內部快閃記憶體驅動器中。

一旦程式碼開始工作,Arduino將不斷等待從指紋感測器上獲取的資訊,如果你在裡面只需按下按鈕就能開門,在外面透過指紋識別開鎖,如果指紋匹配正確(與指紋資料庫),門將會開啟並在顯示器上顯示一段與你身份ID相關資訊,當然,如果指紋資訊不匹配,它將顯示一串亂碼:D…

接線圖

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

基本按上圖接線即可,按鈕位置一眼就能找到,實際上不是從Arduino 5V pin獲得高電平,這個需要新增其它接線(或許這樣會讓電路接線變得很亂),把8 pin設定成高電平,同時從9pin讀取按鈕的狀態,電阻具有下拉作用。

版本2:

正如你在第一個版本中看到的那樣,你需要使用電腦(或者其它能給Arduino寫入程式的裝置)將新的指紋錄入到快閃記憶體驅動器中,這就是為什麼我製作了這個嵌入式版本的原因,該版本僅需要電源即可工作,而新的指紋資訊現在透過一個鍵盤來新增(這個專案是完全基於資料庫內部指紋匹配來實現的,你可以與我之前做的一個純鍵盤專案結合,只需要小地方改動,這個還是非常容易的)。

這個鍵盤安裝在門的裡側,這意味著你可以透過按鈕來開鎖,我在這裡選擇將B鍵,A鍵用來新增新的使用者資訊。

要新增新的指紋資訊,請按“ A”,它將要求你輸入相應程式碼“ 1”,“ 2”,“ 3”,“ 4”中已經儲存的密碼,你可以在此處進行修改,輸入程式碼,然後輸入3位數字格式ID號,例如“ 001”,“ 021”或“ 115”,你可以輸入1到127之間的ID,點選ID後,它會要求您放開手指,將其移開然後再次放置……完成指紋錄入。

在第一個版本中,它將一直等待有效的指紋來開啟鎖。

接線圖

買的門鎖安全嗎?DIY達人自制兩套指紋門鎖,這下放心了!

這是第二個版本的接線,由於裡面開門透過“ B”按鈕完成的,因此我取消下了之前按鈕。

資料庫:

下載 LCD i2c NewLiquidCrystal 庫

下載鍵盤庫

下載 FPM10A 光學指紋感測器程式

程式碼:

如果LCD的地址不同,請下載 i2c 掃描器

版本1中的第一個程式碼是指紋庫中的“註冊”程式碼

版本1的第二個程式碼

版本2的程式碼