信息鈕扣iButton的電子鎖設(shè)計(jì)原理
這種電子鎖可用于任何類型的iButton您可能已經(jīng)因?yàn)槲ㄒ恍枰氖莾?nèi)部的序列號,它的每iButton的不同。用來讀取序列號的命令是為所有的iButton的相同。iButton的家庭與每個(gè)iButton的代碼,可以是任何東西,是作為整個(gè)序列號的一部分計(jì)算。我們也必須注意到,DS1990A系列iButton的是最便宜的的。
這種電子鎖設(shè)計(jì),獨(dú)立工作,可以很容易地構(gòu)造。用戶看到的(門例如外)是一個(gè)iButton的插座和LED。從門里面,我們可以使用一個(gè)簡單的按鈕打開它。對于門的實(shí)際鎖定一個(gè)電磁閥和一個(gè)大膽的使用 。電磁閥必須額定電壓為12VDC 。iButton的序列號存儲在內(nèi)存中,可以刪除和更新,在需要的時(shí)候 。一個(gè)主鍵是用來管理他們的休息 。共9種不同的鍵可以存儲在內(nèi)存中。
示意圖如圖1所示。該電路是圍繞一個(gè)愛特梅爾89 彗星2051(U1)的微控制器 。端口1(P1)MCU是用來連接一個(gè)7段共陽極LED顯示屏。此LED顯示屏將用于編程的附加 ??鍵。出于同樣的原因,一個(gè)按鈕SB1的標(biāo)記是連接P.3.7 。iButton的序列號存儲在24C02的EEPROM(U3)。它是連接到P3.4(SDA)和P3.5 U1(沙中線)。iButton的嵌外部連接端口P3.3通過XP2的針腳陣列。其余元件VD4,R3,VD5 和 VD6 用于保護(hù)MCU端口。一個(gè)上拉電阻R4用作從1 - Wire協(xié)議。另外一個(gè)iButton的套接字連接預(yù)定義平行引腳的XS1。這一個(gè)是用于編程的鑰匙。開門按鈕連接P3.2通過XP1專用連接器,用上述同樣的保護(hù)元件。XT1連接器,電磁鎖,是連接 。電磁閥控制,從功率MOSFET 的540 (VT 3 )。,二極管VD7添加到保護(hù)MOSFET由于電磁電感電壓罷工。三極管VT3,VT2的控制,這顛倒的邏輯狀態(tài),P3.0出現(xiàn),所以我們在VT3的輸出0V和12V。這種額外的晶體管是有用的,因?yàn)樗軌蚪忉尩腗CU的邏輯電平為0V和12V,能夠驅(qū)動(dòng)電磁 。
圖0.1 示意圖iButton的電子鎖
一個(gè)LED用于指示的電子鎖,這是從電磁針控制的狀態(tài),使用晶體管TV1。這導(dǎo)致連接使用相同的針腳陣列XP2的董事會。但是,我們必須確保沒有監(jiān)督的情況下,該電路將始終工作。出于這個(gè)原因,我們ADM1232(U2),MCU復(fù)位引腳控制。該芯片內(nèi)部計(jì)數(shù)器和電壓的測試電路。單片機(jī)在引腳P3.1產(chǎn)生脈沖時(shí),作品的權(quán)利。如果是有原因的MCU凍結(jié),那么U2樂隊(duì)發(fā)送一個(gè)復(fù)位脈沖和恢復(fù)工作。
這種電子鎖有它自己的電源板,變壓器T1,整流橋VD9,VD12和穩(wěn)壓器U4的等組成 。作為備用電源使用10節(jié)AA電池陣列(BT1 - BT10)。總?cè)萘繛?00MAH。當(dāng)電路連接主電壓電池組充電通過R10的電流為20mA。此電流等于為0.025C(其中C是電池的容量),這是一個(gè)非常小的電流,根據(jù)總?cè)萘康?。這是把一個(gè)穩(wěn)定的充電電池之間的時(shí)間,以彌補(bǔ)損失,并沒有充電完成檢測需要 。可以做的,多余的能量消耗的熱量,即不能損害其低電池 。
整體電路板尺寸為 150 х 100 х 60 毫米。大部分組件都放在董事會,包括變壓器。電池放在電池盒。在AA電池的地方,我們可以使用一個(gè)12V密封鉛酸電池-鉛酸電池。船上有2或3針連接器連接外部元件。使用部分號碼HG 1 , SB 1和XS 1 。LED VD3可以放在面對的外殼,指示正確的電路板電源。一個(gè)連接圖圖2顯示。
圖0.2 連接圖
當(dāng)門去打開,一個(gè)3秒的脈沖觸發(fā)電磁閥。當(dāng)我們按??下開門按鈕的大門仍然開放,只要我們推。
電子鎖可以注冊9個(gè)按鍵,外加一個(gè)主鍵。師父的序列號存儲在MCU。其余的按鍵都存儲在外部存儲器根據(jù)插槽1至9。要添加或刪除一個(gè)新的密鑰,你應(yīng)該有主鍵。另外,主密鑰可用于開門。
圖 3編程步驟添加一個(gè)新的關(guān)鍵
要添加一個(gè)新的的關(guān)鍵,應(yīng)遵循以下步驟:
按編程按鈕。
LED顯示字母 “ P » 表明您進(jìn)入編程模式。
觸摸插座的主按鈕。
LED顯示屏 « 1 »。“ S的內(nèi)存中的當(dāng)前選定的插槽。
按下編程按鈕來選擇不同的編程插槽為您的新的關(guān)鍵。
觸摸新的插座鍵。
LED顯示屏閃爍,說明準(zhǔn)備程序。
觸摸新的密鑰再次確認(rèn)報(bào)名到內(nèi)存。
如果注冊成功,顯示停止閃爍。
5秒鐘后,從編程模式,程序退出。
圖3顯示注冊一個(gè)新的關(guān)鍵是編程過程示意圖。
,如果你想注冊更多的鍵,然后從第9步,您可以直接進(jìn)入第5步。這些步驟可以修改為你喜歡的很多倍。
如果第7步后,你發(fā)現(xiàn),你選擇了錯(cuò)誤的插槽數(shù),你不想松動(dòng)鍵,按下編程按鈕,或只是等待5秒鐘。當(dāng)你按下按鈕的插槽數(shù)量增加一個(gè)內(nèi)存還沒有改變。如果等待5秒,將退出編程模式并沒有什么要登記在內(nèi)存中。一般來說,在任何編程步驟,您可以等待5秒退出編程模式。
要?jiǎng)h除一個(gè)已經(jīng)注冊的關(guān)鍵,你跟著一個(gè)幾乎相同的程序,只使用主密鑰?;旧?,它就像您想刪除的內(nèi)存插槽上注冊主鍵。此過程如圖4所示。
圖0.4 刪除一個(gè)關(guān)鍵的編程步驟 。
在編程模式時(shí),門才會開啟按OPEN按鈕。此外,由于兩個(gè)iButton的插座并聯(lián)連接,你應(yīng)該避免同時(shí)在兩個(gè)插座觸摸鍵。
大師的關(guān)鍵序列號存儲在單片機(jī)的程序存儲器,地址2FDH開始。序列號的長度是8個(gè)字節(jié) 。iButton的從左至右閱讀的情況下,打印序列必須是平等的 。在內(nèi)存地址 2FDH 的注冊,然后在 地址2FEH - 303H未來6個(gè)字節(jié)的注冊,最重要的字節(jié)開始。最后,家庭代碼字節(jié)存儲在地址304H 。例如,一個(gè)完整的串行代碼應(yīng)該像這樣:67 00 00 02 D 6 85 26 01
軟件框圖顯示在圖5。程序啟動(dòng)后,詢問是否已進(jìn)入一個(gè)關(guān)鍵。如果輸入的關(guān)鍵是,那么它讀取內(nèi)部的序列號。下一步是檢查,如果這是主鍵或在內(nèi)存中已經(jīng)注冊的另一個(gè)關(guān)鍵。如果關(guān)鍵是驗(yàn)證,然后門被打開。也是開放的按鈕被選中,如果是按門打開了。
圖0.5 軟件 的 框圖
對于編程模式存在兩個(gè)子程序:PROGT和progs的,其框圖如圖6所示。首先是所謂的時(shí)讀取序列號,在編程階段和第二的編程按鈕被按下時(shí)調(diào)用。編程的一個(gè)新的關(guān)鍵是在三個(gè)階段完成。當(dāng)我們按下編程按鈕,我們進(jìn)入編程模式。在這種狀態(tài)下,LED顯示 “ P» 的關(guān)鍵序列號檢查,看看這是主鍵,因?yàn)檫@關(guān)鍵是需要進(jìn)行編程步驟。
如果這是主鍵,我們進(jìn)行第2階段?,F(xiàn)在,LED顯示當(dāng)前選定的內(nèi)存插槽的數(shù)量,改變按編程按鈕。如果我們再次觸摸鍵,然后它是注冊的內(nèi)存,我們通過第3期。如果我們接觸的另一個(gè)關(guān)鍵,這也是注冊和我們通過第2階段。按下按鈕,我們通過第2階段,沒有注冊任何鍵。
如果我們不碰任何東西在5秒內(nèi) ,從編程模式,程序退出 。圖5和6的框圖簡化,但這些程序的功能作為一個(gè)整體感給 。
根據(jù)您的愿望,這是延長這個(gè)方案的能力,因?yàn)樗情_源的,以滿足您的特殊需要。
圖0.6 編程模式子程序框圖