【正文】
單片機(jī)門禁系統(tǒng)設(shè)計(jì)畢業(yè)論文 I 基于單片機(jī)的門控系統(tǒng) 設(shè)計(jì) 摘要 : 在現(xiàn)代樓宇自動(dòng)化的應(yīng)用中,門 控 系統(tǒng)應(yīng)用得十分廣泛,它提高了住宅質(zhì)量和人們的生活的安全性,本課題主要是設(shè)計(jì)出一種小型的門 控 系統(tǒng),基于 51 單片機(jī),以 鍵盤 密碼的輸入方式實(shí)現(xiàn)對(duì)門的出入控制, 或者通過(guò)鍵盤輸入門號(hào)的方式,進(jìn)行對(duì)講方式住戶實(shí)現(xiàn)開(kāi)門??蓪?shí)現(xiàn)普通機(jī)械門鎖所不能實(shí)現(xiàn)的自動(dòng)門 控 系統(tǒng)。 在與微機(jī)的通信方面, 從 較早的門 控 系統(tǒng)多為單機(jī)控制型 到 采用 RS485 通信方式的網(wǎng)絡(luò)系統(tǒng) ,網(wǎng)絡(luò)型門禁系統(tǒng) 開(kāi)始快速發(fā)展 。感應(yīng)式門 控 系統(tǒng)和生物辨識(shí)門 控 系統(tǒng)成為門 控系統(tǒng) 發(fā)展的兩大熱點(diǎn)。 2) 門 控 系統(tǒng)的集成應(yīng)用趨勢(shì) 門 控 系統(tǒng)可兼容多種讀卡技術(shù),同時(shí)具備先進(jìn)的聯(lián)網(wǎng)功能,通過(guò)聯(lián)網(wǎng)組成智能大基于單片機(jī)的門控系統(tǒng)設(shè)計(jì) 2 廈,智能小區(qū)等大型系統(tǒng)進(jìn)行統(tǒng)一管理和監(jiān)控。 本課題的研究意義 門控( 門禁 ) 系統(tǒng)是在傳統(tǒng)的門鎖基礎(chǔ)上發(fā)展而來(lái)的 , 傳統(tǒng)的門鎖是一種單純的機(jī)械裝置,雖然經(jīng)過(guò)不斷地改進(jìn),安全性有所提高,但是 無(wú)論如何 總能通過(guò)某種非正常的 手段把它打開(kāi),其安全性較差。 綜合市場(chǎng)上的樓宇對(duì)講系統(tǒng)和電子密碼鎖,我設(shè)計(jì)出了集合兩種功能并且自帶防盜報(bào)警的多功能門控系統(tǒng)。 基于單片機(jī)門控系統(tǒng)電路主框圖和工作基本原理 智能控制器由主要供電電源電路、備用電源充電電路、門磁、蜂鳴報(bào)警電路、電控鎖及其驅(qū)動(dòng)電路、門號(hào)選擇電路、單片機(jī)及其外圍電路、(鍵盤電路、 1608液晶顯示電路、報(bào)警電路)對(duì)講門鈴電路的等電路模塊組成。備用和主要供電是通過(guò)一繼電器切換的 。 各分電路設(shè)計(jì) 供電電源變壓穩(wěn)壓電路及備用電源充電電路 供電電源變壓穩(wěn)壓電路主要是為單片機(jī)及其周圍電路和電 磁鎖的線圈和對(duì)講電路提供兩路穩(wěn)定的 +12V 和 +5V 電源,為了防止斷電出現(xiàn)門不能開(kāi)啟的情況,電路還設(shè)計(jì)蓄電池?cái)嚯娮詣?dòng)投入裝置。當(dāng)開(kāi)關(guān) s合上時(shí),充電器的輸出電壓為 此時(shí)充電電流限制 在 2A,隨著電池電壓的升高,充電電流逐漸減小,在充電電流減小到 15mA 時(shí),充電器轉(zhuǎn)換到一個(gè)較低的浮動(dòng)充電電壓,以防止過(guò)充電。不帶電線 的一端裝在門的頂部,帶電線的一端裝在門框上。 同時(shí) 可以 軟件編程實(shí)1 2 3 4 5 6ABCD654321DCBAT i t l eN u m b e r R e v i s i o nS i z eBD a t e : 1 8 M a y 2 0 1 0 S h e e t o f F i l e : H : \ di pl om a p r o j e c t 設(shè)計(jì) \ 畢業(yè)設(shè)計(jì) . d db D r a w n B y :3O U T2IN1L M 3 0 5R 1 15 0 0R 1 71KR 1 32 3 0R 1 215R 1 43KR 1 50 . 2D 1 0L E DV 1 12 N 2 9 0 5C 1 11uC 1 20 . 1R 1 61 5 KD 1 11 N 4 5 7C 1 3C A PS W S P S T7814+326AL M 3 0 1 AD C 2 4 V到 1 2 V 電池1 2 V 電池充電電路C 1 41 0 4C 1 52 2 0 0 u F基于單片機(jī)的門控系統(tǒng)設(shè)計(jì) 6 DO O RQ1Z T X 7 0 4D8L E D G RE E NR L 1G 4 W 1 1 1 4 P 1 2 V接電鎖 12 V 電源 接電鎖現(xiàn) 長(zhǎng)時(shí)間未關(guān)閉報(bào)警 功能。主要有以下 兩種 種類型: 陽(yáng)極鎖:陽(yáng)極鎖是斷電開(kāi)門型,符合消防要求。適用單向木門。切斷電源,電鎖 會(huì)自動(dòng) 打開(kāi) 。在正常閉門情況下,控制電路是不對(duì)電控鎖供電 的,單片機(jī) 口發(fā)出開(kāi)門信號(hào)時(shí)候即當(dāng) DOOR 置低電平時(shí),經(jīng)單片機(jī)控制三極管來(lái)驅(qū)動(dòng)電源繼電器接通而使得電控鎖的電源接通,電磁鎖接通指示燈 D8亮,實(shí)現(xiàn)開(kāi)門功能。 圖 報(bào)警提示電路 對(duì)講系統(tǒng)是此設(shè)計(jì)中的一個(gè)重要的模塊,對(duì) 講系統(tǒng)中包含有對(duì)應(yīng)門號(hào)選擇呼叫的功能,設(shè)計(jì)方案是利用單片機(jī)的高低點(diǎn)位對(duì)四位輸出信號(hào)進(jìn)行編碼,后經(jīng)過(guò)譯碼可以各個(gè)用戶進(jìn)行門號(hào)選擇,為了實(shí)現(xiàn)這一功能,采用了多路選擇模擬開(kāi)關(guān)芯片 CD4067,如圖 為 CD4067 的引腳圖。 4位二進(jìn)制碼 A、B、 C、 D 共有 16 種狀態(tài),所以可以控制 16個(gè)開(kāi)關(guān)的通斷。各開(kāi)關(guān)都可雙向傳輸信 號(hào),即各開(kāi)關(guān)允許從 n線到 1 線的信號(hào)傳送(輸入 /輸出)或 1線到 n線的分離(輸出 /輸入),以及允許信號(hào)的并 /串轉(zhuǎn)換。它有 32個(gè) I/O口線, 3個(gè) 16位定時(shí) /計(jì)數(shù)器,基本上都能夠滿足本設(shè)計(jì)的要求。矩陣的行線和列線分別通過(guò)兩并行接口和 CPU 通信。 基于單片機(jī)的門控系統(tǒng)設(shè)計(jì) 10 D0D7D1D2D3D4D5D6RSRWED714D613D512D411D310D29D18D07E6RW5RS4VSS1VDD2VEE3L C D 1L M 0 1 6 L 1602 液晶及其電路 本設(shè)計(jì)中使用的 1602 液晶模塊,如圖 所示,它是一種字符型型液晶是一種用 5 7點(diǎn)陣圖形來(lái)顯示字符的液晶顯示器,根據(jù)顯示的容量可以分為 1 行 16 個(gè)字、2行 16 個(gè)字、 2行 20 個(gè)字等,最常用的為 2 行 16 個(gè)字,液晶模塊內(nèi)帶標(biāo)準(zhǔn)字庫(kù),內(nèi)部的字符發(fā)生存儲(chǔ)器( CGROM)已經(jīng)存儲(chǔ)了 192 個(gè) 5 7 點(diǎn)陣字符, 32 個(gè) 5 10 點(diǎn)陣字符。 1602液晶模塊 1腳 : VSS 為電源地,接 GND。 5腳 : RW 為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。 15 腳: BLA背光電源正極 (+5V)輸入引腳。 DS1302 的引腳圖及外圍的電路如上圖 所示, X1 X2 接 晶振管腳,復(fù)位腳 RST,數(shù)據(jù)輸入 /輸出引腳 I/O ,串行時(shí)鐘引腳 SCLK, VCC1,VCC2 為電源供電管腳。因此設(shè)計(jì)中 DS1302 是最好選擇。 由圖可知標(biāo)號(hào)DOORNUM 的是接的是模擬開(kāi)關(guān) CD4067 的 0~15 號(hào)中相應(yīng)的一引腳,每個(gè)引腳接一個(gè)用戶分機(jī),此設(shè)計(jì)方案只設(shè)計(jì)了 16 戶,利用 CD4067 的片選端,單片機(jī)只需多用一支引腳可以實(shí)現(xiàn)多 16 戶的用戶。 1 2 3 4 5 6ABCD654321DCBAT i t l eN u m b e r R e v i s i o nS i z eBD a t e : 1 8 M a y 2 0 1 0 S h e e t o f F i l e : H : \ di pl om a p r o j e c t 設(shè)計(jì) \ 畢業(yè)設(shè)計(jì) . d db D r a w n B y :R31kR44 . 7 kR522D6L E DC11 0 0 uI C 2O P A M PL S 1S P E A K E RL S 2S P E A K E R 門處L S 3S P E A K E R 室內(nèi)SC E S H IS 5 5S W S P D TM K 1室內(nèi)M K 2門處C41 0 0 u1234I C 1響鈴集成塊Q 1 5C 1 7 4 0C22 2 2 pV c cD O O R N U MC O M M O N213C51 0 0 uC D 4 0 6 7C D 4 0 6 7 基于單片機(jī)的門控系統(tǒng)設(shè)計(jì) 13 本章小結(jié) 本章節(jié)對(duì) 門控系統(tǒng) 的硬件設(shè)計(jì)進(jìn)行了闡述,并對(duì)各個(gè)分電路進(jìn)行了詳細(xì)的設(shè)計(jì), 設(shè)計(jì)中采用了 51 系列單片機(jī)中的 AT89C52 單片機(jī),它功能完善,價(jià)格低廉,可靠性高、有良好的通用性。設(shè)計(jì)中采用了 16 路模擬開(kāi)關(guān) CD4067 用于對(duì) 16 個(gè)門號(hào)進(jìn)行通斷 ,CD4067 自帶片選端,只要在單片機(jī)多加一個(gè) IO 口就可以多實(shí)現(xiàn) 16 路門號(hào)的住戶,可滿足住戶數(shù)量的拓展。根據(jù)門控系統(tǒng)要實(shí)現(xiàn)的功能,所設(shè)計(jì)的系統(tǒng)軟件由 1602液晶顯示器初始化子程序、各個(gè)輸出提示及狀態(tài) 1602液晶顯示子程序、正否 密碼對(duì)比 子程序、門號(hào)比較子程序、三次密碼錯(cuò)誤報(bào)警及其顯示子程序、鍵盤掃描子程序、鍵序判斷子程序、 CD4067編碼子程序、查表子程序、時(shí)間判斷子程序、主程序組成。 圖 程圖 開(kāi)始 DS1302時(shí)鐘芯片 報(bào)警 鍵盤掃描 門磁狀態(tài) K=13 且時(shí)刻 K=14 且時(shí)刻 k=15 且時(shí)刻 實(shí)時(shí)時(shí)間記錄 K=12 且時(shí)刻 延時(shí) 門號(hào)編碼 子程序 歡迎界面顯示 子程序 門號(hào)輸入及其判斷 子程序 密碼輸入及其判斷 子程序 Y Y Y Y Y N N N N N 基于單片機(jī)的門控系統(tǒng)設(shè)計(jì) 16 DS1302 子程序 單片機(jī)與 DS1302是以串行通信方式進(jìn)行數(shù)據(jù)傳輸?shù)模看蝹魉蜁r(shí)由 AT89C52向DS1302寫入一個(gè)命令字節(jié)開(kāi)始。位 6 表示要讀寫的數(shù)據(jù)類型 ,為 0 表示存取日歷時(shí)鐘數(shù)據(jù) ,為 1 表示存取 RAM 數(shù)據(jù) 。 DS1302 的復(fù)位特征和時(shí)鐘控制要求復(fù)位 (RST) 輸入有兩種功能 :首先 ,用于接通控制邏輯 ,允許地址 /命令序列送入移位寄存器 。上電運(yùn)行時(shí) ,在 Vcc ≥ 2. 0 之前 , RST必須保持低電平。同樣 ,從DS1302 讀取數(shù)據(jù)時(shí) ,數(shù)據(jù)在緊跟控制字節(jié)后的下一個(gè) SCLK的下降沿讀出 ,讀出數(shù)據(jù)時(shí)也是從低位 (0 位 ) 到高位 (7 位 ) ,只要 RST 保持高電平 ,額外的 SCLK將導(dǎo)致數(shù)據(jù)字節(jié)的持續(xù)讀出 ,這個(gè)特性用于實(shí)現(xiàn)該芯片的突發(fā)讀模式。(注:在歡迎界面開(kāi)始)兩程序?qū)崿F(xiàn)了該系統(tǒng)最重要的兩個(gè)功能,在密碼子程序中,以數(shù)組查表的方式將輸入的密碼和初始的密碼進(jìn)行比較,判斷對(duì)誤,并顯示。 圖 密碼輸入及其判斷子程序流程圖 顯示 PLEASE INPUT THE CODE:_ 顯示 PLEASE WAIT... WAIT PLEASE! 顯示 WELCOME! CALL OR INPUT CODE? 密碼輸入按鈕 密碼( 6 位): (從鍵盤輸入 ) 初始密碼為:888888 從鍵盤輸入 6位密碼 N 顯示 CODE IS RIGHT,WAIT... 顯示 SOORY YOU CODE ERROR. 持續(xù) 2 秒 電鎖通電 開(kāi)門 (延時(shí) 4 秒 ) 顯示 CODE ERROR THREE TIMES!!... 3次錯(cuò)誤 Y 基于單片機(jī)的門控系統(tǒng)設(shè)計(jì) 18 門號(hào)輸入及其判斷子程序 此子程序大致與上子程序相同,只是在算法上,上個(gè)程序是將三次輸入的數(shù)字存儲(chǔ)直接存儲(chǔ)。同時(shí),蜂鳴器輸出四聲提示聲。如下表 。 C:控制光標(biāo)的開(kāi)與關(guān),高電平表示有光標(biāo),低電平表示無(wú)光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。 指令 9:讀忙信號(hào)和光標(biāo)地址 BF:忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或數(shù)據(jù),如果為低電平表示不忙。每次輸 入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。利用程序流程圖 每個(gè)功能基本流程 并結(jié)合元件內(nèi)部 特殊 的指令進(jìn)行了講述。 歡迎界面 歡迎界面為系統(tǒng)開(kāi)始界面,在密碼輸入完畢,或者門號(hào)輸入程序完成后將顯示此界面,按鍵“歡迎界面”亦可以出現(xiàn)此界面: 密碼輸入開(kāi) 門功能的仿真 本程序設(shè)置的初始六位密碼是 888888(可以在程序中改變),經(jīng)鍵盤輸入,在輸入正確或錯(cuò)誤時(shí),均有相應(yīng)聲音提示和 led 指示。在 仿真時(shí),有正確門號(hào)輸入后,單片機(jī)可以自動(dòng)儲(chǔ)存上次的呼叫門號(hào)。報(bào)警聲持續(xù) 10 秒。 系統(tǒng)采用了 LCD 液晶顯示模塊,建立了良好的人機(jī)交互界面 ,使的操作起來(lái)更加方便。系統(tǒng)設(shè)計(jì)了實(shí)時(shí)時(shí)鐘芯