資料介紹
PCB圖如下:
成分
A000066 阿杜諾 |
× 1 |
6-1462034-7 TE Con??nectivity Potter & Brumfield 繼電器 |
× 1 |
40 針跳線母對(duì)母 20 厘米 | × 1 |
LCD-09053 火花樂趣 |
× 1 |
ATMEGA32-16AI 微芯片技術(shù) |
× 1 |
106CKR063M 伊利諾伊電容器 |
× 1 |
741C083510JP CTS電阻器產(chǎn)品 |
× 1 |
16針公頭 | × 1 |
16針母頭 | × 1 |
1624117-3 TE Con??nectivity / Sigma 電感器 |
× 1 |
描述
2 因素身份驗(yàn)證鎖
什么是銀行安全數(shù)字門鎖系統(tǒng)?
簡(jiǎn)單地說,它是一個(gè)數(shù)字門鎖系統(tǒng),它通過使用數(shù)字鍵盤和使用 Arduino Uno 板幫助門鎖的安全性。這個(gè)想法有助于銀行儲(chǔ)物柜的安全
項(xiàng)目所需的組件清單
Arduino UNO
16*2液晶顯示器
Arduino 的 4*3 或 4*4 矩陣鍵盤
3D打印門鎖或定制門鎖系統(tǒng)
4” / 6”塑料盒、跳線、螺母螺栓、塑料外殼等。
用于 1 安培 5 伏移動(dòng)充電器電源的附加組件。
項(xiàng)目描述
首先,該項(xiàng)目的大腦是 Arduino UNO 板。Arduino UNO 板與伺服電機(jī)一起連接到 LCD。?
在這里,伺服電機(jī)用于鎖定或解鎖門上的閂鎖。?
16x2 LCD(16 列和 2 行)用于在 Arduino 的幫助下顯示消息。?
使用的伺服電機(jī)是 5V Towerpro SG90。該伺服電機(jī)是基礎(chǔ)級(jí)伺服電機(jī),無需任何外部模塊即可與 Arduino 配合使用。?
本項(xiàng)目使用了 4*4 矩陣鍵盤(但由于沒有 4*4 鍵盤部分,我在上面的圖形表示中使用了 4*3 鍵盤),但這不是問題,因?yàn)?4*3 矩陣鍵盤可以工作我使用的代碼很好。
我們還需要一個(gè)用于密碼輸入和手動(dòng)鎖定我們定制的門鎖的鍵盤。鍵盤共有 16 個(gè)按鍵。在所有鍵中,行中有 4 個(gè)鍵(R1、R2、R3、R4),列中有 4 個(gè)鍵(C1、C2、C3、C4)。
每當(dāng)按下一個(gè)鍵時(shí),就會(huì)在相應(yīng)的行和列之間建立連接。
代碼
#include <鍵盤.h>
#include
#include <伺服.h>
伺服myservo;
液晶液晶(A0、A1、A2、A3、A4、A5);
#define Password_Lenght 7 // 為六個(gè)字符提供足夠的空間 + NULL 字符
整數(shù)位置 = 0;// 存儲(chǔ)伺服位置的變量
字符數(shù)據(jù)[密碼長度];// 6 是它可以容納的字符數(shù) + 空字符 = 7
char Master[Password_Lenght] = "123456";
字節(jié)data_count = 0,master_count = 0;
布爾 Pass_is_good;
字符自定義鍵;
常量字節(jié) ROWS = 4;
常量字節(jié) COLS = 3;
字符鍵[ROWS][COLS] = {
{'1', '2', '3'},
{'4', '5', '6'},
{'7', '8', '9'},
{'*', '0', '#'}
};
布爾門=真;
字節(jié) rowPins[ROWS] = {1, 2, 3, 4}; //連接到鍵盤的行引腳
字節(jié) colPins[COLS] = {5, 6, 7}; //連接到鍵盤的列引腳
鍵盤 customKeypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS); //初始化類NewKeypad的一個(gè)實(shí)例
無效設(shè)置()
{
myservo.attach(9);
伺服關(guān)閉();
lcd.begin(16, 2);
lcd.print("Arduino 門");
lcd.setCursor(0, 1);
lcd.print("--看項(xiàng)目--");
延遲(3000);
lcd.clear();
}
無效循環(huán)()
{
如果(門 == 0)
{
customKey = customKeypad.getKey();
if (customKey == '#')
{
lcd.clear();
伺服關(guān)閉();
lcd.print("門已關(guān)閉");
延遲(3000);
門 = 1;
}
}
否則打開();
}
無效清除數(shù)據(jù)()
{
而(數(shù)據(jù)計(jì)數(shù)!= 0)
{ // 這可以用于任何數(shù)組大小,
數(shù)據(jù)[data_count--] = 0; //清除新數(shù)據(jù)的數(shù)組
}
返回;
}
無效伺服打開()
{
for (pos = 180; pos >= 0; pos -= 5) { // 從 0 度變?yōu)?180 度
// 以 1 度為單位
myservo.write(pos); // 告訴伺服器轉(zhuǎn)到變量 'pos' 中的位置
延遲(15);// 等待 15ms 讓舵機(jī)到達(dá)位置
}
}
無效伺服關(guān)閉()
{
for (pos = 0; pos <= 180; pos += 5) { // 從 180 度變?yōu)?0 度
myservo.write(pos); // 告訴伺服器轉(zhuǎn)到變量 'pos' 中的位置
延遲(15);// 等待 15ms 讓舵機(jī)到達(dá)位置
}
}
}
無效打開()
{
lcd.setCursor(0, 0);
lcd.print("輸入密碼");
customKey = customKeypad.getKey();
if (customKey) // 確保某個(gè)鍵被實(shí)際按下,等于 (customKey != NO_KEY)
{
數(shù)據(jù)[data_count] = customKey; // 將字符存儲(chǔ)到數(shù)據(jù)數(shù)組中
lcd.setCursor(data_count, 1); // 移動(dòng)光標(biāo)以顯示每個(gè)新字符
lcd.print(數(shù)據(jù)[data_count]); // 在所述光標(biāo)處打印字符
數(shù)據(jù)計(jì)數(shù)++;// 將數(shù)據(jù)數(shù)組加 1 以存儲(chǔ)新字符,同時(shí)跟蹤輸入的字符數(shù)
}
if (data_count == Password_Lenght - 1) // 如果數(shù)組索引等于預(yù)期字符數(shù),則將數(shù)據(jù)與 master 進(jìn)行比較
{
if (!strcmp(Data, Master)) // 等于 (strcmp(Data, Master) == 0)
{
lcd.clear();
伺服打開();
lcd.print("門開著");
門 = 0;
}
lcd.clear();
lcd.print("密碼錯(cuò)誤");
延遲(1000);
門 = 1;
}
清除數(shù)據(jù)();
}
別的
{}
代碼
代碼
Keypad_Lock_System.ino
?
?
- TMP1827 的 密鑰生成和身份驗(yàn)證機(jī)制
- 開源VHDL驗(yàn)證方法 (OSVVM) 0次下載
- 使用加密和身份驗(yàn)證來保護(hù)UltraScale/UltraScale+ FPGA比特流
- 手勢(shì)控制鎖開源分享
- 密碼鎖開源分享
- PCB身份驗(yàn)證器
- 采用ATECC508A執(zhí)行遠(yuǎn)程設(shè)備的對(duì)稱身份驗(yàn)證 12次下載
- 如何使用PCA進(jìn)行人臉識(shí)別系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)資料免費(fèi)下載 16次下載
- ATECC508A加密引擎身份驗(yàn)證器件的詳細(xì)中文數(shù)據(jù)手冊(cè)
- C#教程之身份證驗(yàn)證器 9次下載
- 基于書寫筆勁識(shí)別的身份驗(yàn)證系統(tǒng) 24次下載
- 虛擬儀器實(shí)現(xiàn)身份驗(yàn)證程序的方法 31次下載
- 人臉識(shí)別技術(shù)在遠(yuǎn)程身份驗(yàn)證中的應(yīng)用
- 一種實(shí)用的身份認(rèn)證裝置的開發(fā)
- 人臉識(shí)別技術(shù)在遠(yuǎn)程身份驗(yàn)證中的應(yīng)用
- 深度識(shí)別人臉識(shí)別有什么重要作用嗎 615次閱讀
- 為什么身份驗(yàn)證器應(yīng)該是智能鎖的鑰匙 370次閱讀
- 基于DS28S60的雙向身份驗(yàn)證示例,使用Jupyter筆記本 933次閱讀
- 通過質(zhì)詢和響應(yīng)身份驗(yàn)證實(shí)現(xiàn)安全訪問控制 746次閱讀
- 設(shè)備身份驗(yàn)證阻止假冒 542次閱讀
- 使用DeepCover安全身份驗(yàn)證器保護(hù)您的FPGA系統(tǒng) 1197次閱讀
- 通過SHA-256主/從身份驗(yàn)證系統(tǒng)實(shí)現(xiàn)更高的安全性 1196次閱讀
- 基于DS28S60的雙向身份驗(yàn)證示例 666次閱讀
- 使用關(guān)聯(lián)數(shù)據(jù)探索經(jīng)過身份驗(yàn)證的加密 896次閱讀
- 通過質(zhì)詢和響應(yīng)身份驗(yàn)證實(shí)現(xiàn)安全訪問控制 1268次閱讀
- 無需成為密碼學(xué)專家即可實(shí)施安全身份驗(yàn)證 1094次閱讀
- 安全哈希算法的基礎(chǔ)知識(shí),如何使用算法進(jìn)行身份驗(yàn)證 2570次閱讀
- 利用樹莓派完成雙重身份驗(yàn)證的保險(xiǎn)箱 1563次閱讀
- Synaptics大批量生產(chǎn)小型區(qū)域觸控傳感器,可通過指紋識(shí)別實(shí)現(xiàn)身份驗(yàn)證 1043次閱讀
- 淺談雙因素身份驗(yàn)證的三個(gè)風(fēng)險(xiǎn)和缺點(diǎn) 5129次閱讀
下載排行
本周
- 1DD3118電路圖紙資料
- 0.08 MB | 1次下載 | 免費(fèi)
- 2AD庫封裝庫安裝教程
- 0.49 MB | 1次下載 | 免費(fèi)
- 3PC6206 300mA低功耗低壓差線性穩(wěn)壓器中文資料
- 1.12 MB | 1次下載 | 免費(fèi)
- 4網(wǎng)絡(luò)安全從業(yè)者入門指南
- 2.91 MB | 1次下載 | 免費(fèi)
- 5DS-CS3A P00-CN-V3
- 618.05 KB | 1次下載 | 免費(fèi)
- 6海川SM5701規(guī)格書
- 1.48 MB | 次下載 | 免費(fèi)
- 7H20PR5電磁爐IGBT功率管規(guī)格書
- 1.68 MB | 次下載 | 1 積分
- 8IP防護(hù)等級(jí)說明
- 0.08 MB | 次下載 | 免費(fèi)
本月
- 1貼片三極管上的印字與真實(shí)名稱的對(duì)照表詳細(xì)說明
- 0.50 MB | 103次下載 | 1 積分
- 2涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 89次下載 | 1 積分
- 3錦銳科技CA51F2 SDK開發(fā)包
- 24.06 MB | 43次下載 | 1 積分
- 4錦銳CA51F005 SDK開發(fā)包
- 19.47 MB | 19次下載 | 1 積分
- 5PCB的EMC設(shè)計(jì)指南
- 2.47 MB | 16次下載 | 1 積分
- 6HC05藍(lán)牙原理圖加PCB
- 15.76 MB | 13次下載 | 1 積分
- 7802.11_Wireless_Networks
- 4.17 MB | 12次下載 | 免費(fèi)
- 8蘋果iphone 11電路原理圖
- 4.98 MB | 6次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評(píng)論