基于單片機的自動存包系統(tǒng)設計
近年來,隨著生活水平的提高,人們對于社會消費品的質量和數(shù)量的要求也在逐漸增加。為了更好的為廣大顧客服務,在一些商場、影院、超市等公共場合通常設置有自動存包柜,本次便是針對這一現(xiàn)象進行設計 。
本文詳細介紹了國內(nèi)自動存包控制系統(tǒng)的發(fā)展現(xiàn)狀,發(fā)展中所面臨的問題。并詳細介紹了本系統(tǒng)采用的AT89S52單片機做控制器,可以同時管理四個存包柜。柜門鎖是由繼電器控制,當顧客需要存包的時候,可以自行到存包柜前按“開門”鍵,需要顧客向光學指紋識別系統(tǒng)輸入個指紋,然后通過繼電器進行開門(用亮燈表示),顧客即可存包,并需將柜門關上。當顧客需要取包時,要將只要將之前輸入的指紋放置于指紋識別器前方,指紋識別器采集到指紋信息輸出相應的高低電平信號傳給單片機,系統(tǒng)比較密碼一致后,發(fā)出開箱信號至繼電器將柜門打開,顧客即可將包取出。 它具有功能實用、操作簡便、安全可靠、抗干擾性強等特點。
目 錄
摘 要
Abstract
第1章 緒 論
1.1 題目來源及意義
1.2 自動存包柜課題的發(fā)展與現(xiàn)狀
1.3 本課題的目標與任務
第2章 系統(tǒng)方案論證與器件的選擇
2.1 主控模塊方案選擇
2.1.1 采用DSP+FPGA方案
2.1.2 采用51單片機方案
2.1.3 采用61單片機方案
2.2 輸入端方案的選擇
2.2.1 機設條碼式電子存包柜方案
2.2.2 非接觸IC卡電子存包柜方案
2.2.3 指紋識別電子存包柜方案
2.3 輸出端方案的選擇
2.3.1 光電開關與電磁閥方案
2.3.2 繼電器控制方案
2.4 方案總結
第3章 系統(tǒng)硬件設計
3.1 系統(tǒng)硬件總體設計
3. 2 系統(tǒng)硬件各單元設計
3.2.1 控制單元設計
3.2.2 指紋識別設計
3.2.3 輸出電路設計
3. 3 整體電路圖
第4章 系統(tǒng)軟件設計
4.1 系統(tǒng)軟件整體設計
4.2 系統(tǒng)軟件各部分設計
4.2.1 鍵輸入程序設計
4.2.2 驅動電路程序設計
第5章 系統(tǒng)調試
5.1 系統(tǒng)硬件調試
5.2 系統(tǒng)軟件調試
5.3 系統(tǒng)聯(lián)合調試
總 結
參考文獻
致 謝
附 錄
華科學院本科畢業(yè)設計(論文)
近年來,隨著生活水平的提高,人們對于社會消費品的質量和數(shù)量的要求也在逐漸增加。為了更好的為廣大顧客服務,在一些商場、影院、超市等公共場合通常設置有自動存包柜,它具有功能實用、操作簡便、安全可靠、抗干擾性強等特點。顧客可以根據(jù)簡明清晰的操作說明自行的完成取物品的工作,自助式存取可以避免開放式存包帶來的不必要的糾紛,又可以節(jié)約人員開支,達到減員增效的目的。同時,存包可以解放顧客的雙手,使顧客放開雙手,更方便的進行購物。
單片機一詞最初是源于"SingleChipMicrocomputer”,簡稱SCM。在單片機誕生時,SCM是一個準確、流行的稱謂,“單片機”一詞準確地表達了這—概念。隨著SCM在技術上、體系結構上不斷擴展其控制功能,單片機已不能用“單片微型計算機”來準確表達其內(nèi)涵。國際上逐漸采用"MCU"(MicroControllerUnit”)來代替,形成了單片機界公認的、最終統(tǒng)一的名詞。在國內(nèi)因為“單片機”一詞已約定俗成,故而繼續(xù)沿用。
單片機按其內(nèi)部中央處理器CPU(CentralProcessingUnit)的字長分為1位機、4位機、8位機、16位機等。從1976年8位單片機誕生以來,單片機領域中一直是以8位機為主流機型,預計這種情況還將繼續(xù)下去。因此我們以Intel公司的8位機為例來談談單片機的發(fā)展歷史。
1.第一階段——單片機階段(1976午~1978年)。這階段的任務是探索計算機的單芯片集成。以Intel公司的MCS—48為代表,其CPU、存儲器、定時器/計數(shù)器、中斷系統(tǒng)、I/O端口、時鐘以及指令系統(tǒng)都是按嵌入式系統(tǒng)要求專門設計的。
2.第二階段——單片機的完善階段(1978年一1982年)。計算機的單芯片集成探索取得成功后,隨后的任務就是要完善單片機的體系結構。作為這一階段的典型代表是Inlel公司將MCS—48向MCS—5l系列的過渡。它在以下幾個重要方面奠定了單片機的體系結構。
(1)完善的外部總線。有8位數(shù)據(jù)總線、16位地址總線、控制總線及具有多機通信功能的串行通信接口。
(2)CPU外圍功能單元的集中管理模式。
(3)設置面向工控的位地址空間及位操作方式。
(4)指令系統(tǒng)突出控制功能。
3.第三階段——微控制器形成階段(1983年一1990年)。這一階段單片機的主要技術發(fā)展方向是滿足測控對象要求的外圍電路的增強,如A/D轉換、D/A轉換、高速I/O口、WDT(程序監(jiān)視定時器)、DMA(高速數(shù)據(jù)傳輸)等,強化了智能控制的特征。
4.第四階段--微控制器全面發(fā)展階段(1990年以后)。即當前的單片機時代,其顯著特點是百花齊放、技術創(chuàng)新。單片機正在滿足各個方面的需求.從玩具、小家電、工程控制單元到機器人、智能儀表,過程控制,個人信息終端等無所不能。
電子存包柜又名自動存包柜、電子寄存柜,是20世紀嵌入式計算機快速發(fā)展后在傳統(tǒng)寄存行業(yè)的一大應用。從外觀和用途來看,電子存包柜屬于家具類別中的鋼制家具。從實現(xiàn)方式和功能上來看,電子存包柜屬于電子專用設備。電子存包柜主要由以下幾種類型:
(1)機設條碼式電子存包柜
存物時:按“存”鍵,寄存柜自動打印一張密碼條,機器語音提示:“請取密碼條”。使用者抽出密碼紙,對應的箱門自動打開,存好后關上箱門。取物時:直接將條碼紙在掃描口掃描,對應的箱門會自動打開。語音提示:“請取完物品后關好箱門!
(2)指紋式電子存包柜
以使用者指紋作為寄存的憑證;當使用者進行存物操作時,須先按一下操作鍵盤中的“存”鍵,然后在指紋采集窗里采集指紋,機器會把該指紋與分配給使用者使用的寄存箱的箱號結合起來,并將信息自動記錄下,同時自動打開該箱,供使用者存物,存完后使用者自己關好箱門;取物時,只需須先按一下操作鍵盤中的“取”鍵,然后在指紋采集窗里采集指紋,寄存柜將指紋數(shù)據(jù)與先前記錄下的進行比對,正確后才會打開該箱供使用者取物(同時機器會自動記錄當時的時間、指紋以備查詢)。
(3)非接觸IC卡電子存包柜
以使用者所持IC卡(即射頻卡)作為寄存的憑證;當使用者進行存物操作時,須先按一下操作鍵盤中的“存”鍵再刷卡(即讓寄存柜讀取卡號),寄存柜先識別是否為該場所的IC卡,若不是則拒絕存物;若是,機器會把該卡號與分配給使用者使用的寄存箱的箱號結合起來,并將信息自動記錄下,同時自動打開該箱,供使用者存物,存完后自己關好箱門;取物時,只需須先按一下操作鍵盤中的“取”鍵再刷卡,寄存柜將讀取的卡號與先前記錄下的進行比對,正確后才會打開該箱供使用者取物(同時機器會自動記錄當時的時間、卡號以備查詢)
4)聯(lián)網(wǎng)型非接觸IC卡電子存包柜
聯(lián)網(wǎng)型非接觸IC卡電子存包柜基本功能與非接觸IC卡電子存包柜一致,另外增加了網(wǎng)絡通訊模塊,上位機管理軟件等,以實現(xiàn)寄存狀態(tài)聯(lián)網(wǎng)監(jiān)控,分段收費,報表打印等功能。
現(xiàn)在公共場所應用比較廣泛。因此,研制出一種能自動存包的裝置有很重大的意義,我所研究的就是這方面的課題。
1.3 本課題的目標與任務本系統(tǒng)采用的單片機做控制器,可以同時管理多個存包柜。柜門鎖由繼電器控制,當顧客需要存包的時候,可以自行到存包柜前按“開門”鍵,需要顧客向系統(tǒng)輸入個指紋,然后通過繼電器進行開門(用亮燈表示),顧客即可存包,并需將柜門關上。當顧客需要取包時,要將只要將之前輸入的指紋放置于指紋識別器前方,指紋識別器采集到指紋信息輸出相應的高低電平信號傳給單片機,系統(tǒng)比較密碼一致后,發(fā)出開箱信號至繼電器將柜門打開,顧客即可將包取出。
相比較條形碼掃描和IC卡的自動存包柜相比,指紋識別的優(yōu)勢在于在整個存包過程中無附帶的物品,不怕因為丟失而導致無法取包,所以我覺得指紋識別在現(xiàn)今的各類存包柜中有很明顯的發(fā)展前景。
指紋識別追求的主要指標為高識別率、實時性和大詞匯量;而對于一個指紋識別系統(tǒng),還應考慮軟硬件設計簡單、價格低廉、外圍控制靈活、人機交互便捷等特點,F(xiàn)在應用于語音識別的芯片主要為DSP(數(shù)字信號處理器)芯片:如TI公司的TMS320系列。然而, 將DSP 芯片用于小型語音指紋系統(tǒng)中, 其不足之處是很明顯的:引腳多、價格貴、使用繁瑣;控制功能弱,常需要與單片機或FPGA (現(xiàn)場可編程門陣列)結合, 來實現(xiàn)人機交互;常需要外接A/D 轉換芯片;引腳為3.3 V,與單片機、FPGA、Flash存儲器等連接時,要考慮電平匹配。這些將使整個系統(tǒng)結構龐大,設計繁瑣。
2.1.2 采用51單片機方案采用 MCS-51 系列單片機實現(xiàn),選用AT89S52芯片作為主要的控制模塊。該芯片中共有四塊用來跟外接電路連接。滿足了我本次設計的基本要求,所我選擇51單片機作為本次設計的方案
2.1.3 采用61單片機方案1. 電源區(qū):61板采用3節(jié)五號電池進行供電,由J10接入,在61板上,前后兩組電容用來耦合濾波,使其供給芯片的電電源接反源更加的干凈平滑。為了獲得標準的3.3v電壓,在板子上加入SPY0029A三端穩(wěn)壓管。
兩個CE基二極管,是為了防止誤將電源接反造成不必要的損失而設置的,在操作中千萬不要將電源接反,因為反向電壓超過一定的值,二極管將會被損壞,達不到保護的目的。后面的零電阻及其電源、地分成不同的幾路是為減少電磁干擾設置的。
2. 程序下載區(qū):I本運作方式是通過控制clock及通過ICE喂食指令方式,老來控制cpu的運行及緩存器資料和內(nèi)存資料的存取,因此必須透過控制緩存器值得設定來控制目前cpu的動作。
3. 音頻輸入部分:在61板上,MICP和MICN將隨著MIC產(chǎn)生的波形變化,并在兩個端口處形成兩路反想的波形,再經(jīng)過兩級運放放大,把放大的語音信號交給ADC轉換為數(shù)字量,這個時候我們就可以通過單片機編程對這些數(shù)據(jù)進行處理,比如說語音數(shù)據(jù)壓縮、語音識別樣本處理。
4.J3是語音輸出接口,一個放大,然后輸出,SPY0030A放大,然后輸出。
5.SPCE061A與周邊:這就是整塊板子的大腦,所有控制信息都是從這里發(fā)出的,那些周邊器件用來協(xié)助SPCE061A單片機正常工作。
6.鍵控區(qū):采用這幾個按鍵我們可以做一些簡單的試驗,比如說當板子里下載了復讀機的程序,按這幾個按鍵就可以分別用來進行錄音、暫停和播放。
7.復位區(qū):這里是由幾個簡單的電子元器件組成,當按下這里面的按鍵后,單片機就重新開始工作,也可以說成是單片機里的程序從第一條開始重新運行。
8.端口區(qū):用于對外掛硬件的控制,或者獲取外部硬件的一些狀態(tài)以便SPCE061A來進行處理。
存物時:按“存”鍵,寄存柜自動打印一張密碼條,機器語音提示:“請取密碼條”。使用者抽出密碼紙,對應的箱門自動打開,存好后關上箱門。取物時:直接將條碼紙在掃描口掃描,對應的箱門會自動打開。語音提示:“請取完 物品后關好箱門!
設計如下
根據(jù)“自動存包”這一目的要求,做如下設計安排:
第一部分:CPU核心控制部分,由單片機8031、復位電路、時鐘電路等構成,是整個系統(tǒng)的核心。
第二部分:鍵盤顯示控制部分。對3個數(shù)碼管和2個按鍵進行管理,3個數(shù)碼管用于顯示兩位柜號和3位密碼,12個按鍵分別為10個數(shù)字鍵和2個功能鍵。通過這些鍵盤,用戶就可以完成所有的操作。
第三部分:執(zhí)行機構部分。它是通過8051的并行口擴展一片8255A芯片,并通過8255A控制20個燈的狀態(tài)(亮滅)來模擬柜子的存包取包的過程。
軟件部分主要采用我們自己設定的一種與柜號相關聯(lián)的算法來產(chǎn)生一組3位的隨機密碼,而密碼的產(chǎn)生、核對過程就對應存包、取包的過程。
系統(tǒng)框圖如圖2.1所示
圖2.1 系統(tǒng)框圖
主要核心器件有:AT89C51,打印機,條形碼掃描系統(tǒng),光電開關,電磁閥等。
主程序模塊
該模塊的功能包括顯示的初始化,判斷是否有空箱,鍵盤掃描,密碼掃描等功能。
本次設計的流程圖如圖2.2.軟件模擬程序為,首先先檢測所有的空箱數(shù)目,然后根據(jù)按鍵判斷狀態(tài)是要存包還是取包,如果是存包的話,就輸入密碼,然后將包存入箱柜內(nèi),然后關門,系統(tǒng)檢測是否關門,如果是的話則進行下一步,否則提示未關門。如果是取包的時候,輸入密碼后,驗證密碼的正確與否,正確的話就看箱柜是否關門,否則提示箱柜未關門。
圖2.2 主程序流程圖
優(yōu)點:方便,識別度高,
缺點:容易丟失打印條,因為有條形碼掃描和條形碼打印這塊,所以造價成本比較高,所以不適于本次設計的使用。
2.2.2 非接觸IC卡電子存包柜方案以使用者所持IC卡(即射頻卡)作為寄存的憑證;當使用者進行存物操作時,須先按一下操作鍵盤中的“存”鍵再刷卡(即讓寄存柜讀取卡號),寄存柜先識別是否為該場所的IC卡,若不是則拒絕存物;若是,機器會把該卡號與分配給使用者使用的寄存箱的箱號結合起來,并將信息自動記錄下,同時自動打開該箱,供使用者存物,存完后自己關好箱門;取物時,只需須先按一下操作鍵盤中的“取”鍵再刷卡,寄存柜將讀取的卡號與先前記錄下的進行比對,正確后才會打開該箱供使用者取物(同時機器會自動記錄當時的時間、卡號以備查詢)
優(yōu)點:識別度高,系統(tǒng)穩(wěn)定,
缺點:IC卡不易攜帶,而且會出現(xiàn)消磁等問題,所以不適于本次設計。
2.2.3 指紋識別電子存包柜方案以使用者指紋作為寄存的憑證;當使用者進行存物操作時,須先按一下操作鍵盤中的“存”鍵,然后在指紋采集窗里采集指紋,機器會把該指紋與分配給使用者使用的寄存箱的箱號結合起來,并將信息自動記錄下,同時自動打開該箱,供使用者存物,存完后使用者自己關好箱門;取物時,只需須先按一下操作鍵盤中的“取”鍵,然后在指紋采集窗里采集指紋,寄存柜將指紋數(shù)據(jù)與先前記錄下的進行比對,正確后才會打開該箱供使用者取物(同時機器會自動記錄當時的時間、指紋以備查詢)
圖4.3 設計框圖
優(yōu)點:識別度高,沒有多余的東西,方便,容易使用,成本相比較而言較低,所以本次設計運用該方案。
紅外線光電開關(光電傳感器)是利用被檢測物體對紅外光束的遮光或反射,由同步回路選通而檢測物體的有無,其物體不限于金屬,對所有能反射光線的物體均可檢測。
開箱控制電路功能用來打開箱鎖。該系統(tǒng)共控制24個存包柜,其中使用了8255A的PA、PB、PC三口的24跟口線作為輸出,輸出信號經(jīng)三極管放大后驅動電磁鎖動作,從而將箱鎖打開。同時在箱的門沿上還裝有限位開關,來檢測門的閉合與否。并在適當?shù)臅r候來進行報警,提醒顧客關好柜門。為了保證安全,鎖簧需要有較強的彈力。電磁鎖的驅動功率需要20W以上,可以采用20V直流電源,產(chǎn)生1A的驅動電流,為加強驅動功率,采用二級直流放大。在這里我們使用DSN-Y電磁鎖,他的技術指標即參數(shù)都能夠滿足我們的需要。
電磁繼電器一般由鐵芯、線圈、銜鐵、觸點簧片等組成的。只要在線圈兩端加上一定的電壓,線圈中就會流過一定的電流,從而產(chǎn)生電磁效應,銜鐵就會在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點與靜觸點(常開觸點)吸合。當線圈斷電后,電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點與原來的靜觸點(常閉觸點)釋放。這樣吸合、釋放,從而達到了在電路中的導通、切斷的目的。對于繼電器的“常開、常閉”觸點,可以這樣來區(qū)分:繼電器線圈未通電時處于斷開狀態(tài)的靜觸點,稱為“常開觸點”;處于接通狀態(tài)的靜觸點稱為“常閉觸點”。繼電器一般有兩股電路,為低壓控制電路和高壓工作電路
通過單片機的指令,控制繼電器的導通或者切斷,用燈來模擬箱柜的開關。
通過比較可知,在主控方案選擇中,用單片機方案更加容易的實現(xiàn)我的設計;而在輸入設備中,相比較IC卡和條形碼掃描,我個人認為指紋識別更加方便實用,而且所用資源比較少,性價比更高,所以選擇指紋識別作為本次實驗的方案;而在輸出設備中,我認為繼電器方案能夠更加明顯的顯示我的設計,更加容易的實現(xiàn),綜上所述,我的方案定為這樣的。
自動存包柜的系統(tǒng)框圖如圖3.1。該系統(tǒng)AT89S52單片機為核心,還有顯示屏及按鍵,指紋識別器,繼電器檢測,斷電保護等部分。
以使用者指紋作為寄存的憑證;當使用者進行存物操作時,須先按一下操作鍵盤中的“存”鍵,然后在指紋采集窗里采集指紋,機器會把該指紋與分配給使用者使用的寄存箱的箱號結合起來,并將信息自動記錄下,同時自動打開該箱,供使用者存物,存完后使用者自己關好箱門;取物時,只需須先按一下操作鍵盤中的“取”鍵,然后在指紋采集窗里采集指紋,寄存柜將指紋數(shù)據(jù)與先前記錄下的進行比對,正確后才會打開該箱供使用者取物(同時機器會自動記錄當時的時間、指紋以備查詢)。
圖 3.1 自動存包柜系統(tǒng)框圖
根據(jù)系統(tǒng)框圖,本設計的面板設計圖如圖3.2所示
圖3.2 面板設計圖
AT89S52 是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲器。使用Atmel公司高密度非易失性存儲器技術制造,與工業(yè)80C51產(chǎn)品指令和引腳完 全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM, 32 位I/O 口線,看門狗定時器,2個數(shù)據(jù)指針,三16位定時器/計數(shù)器,一個6向量2級中斷結構,全雙工串行口,片內(nèi)晶振及時鐘電路。另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式?臻e模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內(nèi)容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。
P0口:P0口是一個8位漏極開路的雙向I/O口。作為輸出口,每位能驅動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。當訪問外部程序和數(shù)據(jù)存儲器時,P0口也被作為低8位地址/數(shù)據(jù)復用。在這種模式下,P0不具有內(nèi)部上拉電阻。在flash編程時,P0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程校驗時,需要外部上拉電阻。
P1口:P1口是一個具有內(nèi)部上拉電阻的8位雙向I/O 口,p1 輸出緩沖器能驅動4個 TTL邏輯電平。
此外,P1.0和P1.1分別作定時器/計數(shù)器2的外部計數(shù)輸入(P1.0/T2)和定時器/計數(shù)器2的觸發(fā)輸入(P1.1/T2EX)。在flash編程和校驗時,P1口接收低8位地址字節(jié)。
引腳號第二功能:
P1.0 T2(定時器/計數(shù)器T2的外部計數(shù)輸入),時鐘輸出
P1.1 T2EX(定時器/計數(shù)器T2的捕捉/重載觸發(fā)信號和方向控制)
P1.5 MOSI(在系統(tǒng)編程用)
P1.6 MISO(在系統(tǒng)編程用)
P1.7 SCK(在系統(tǒng)編程用)
在該設計中,P1口與顯示屏相連,顯示出單片機做出的運轉。
P2 口:P2口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅動4個TTL邏輯電平。對P2端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲器或用16位地址讀取外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX @DPTR)時,P2口送出高八位地址。在這種應用中,P2口使用很強的內(nèi)部上拉發(fā)送1。在使用 8位地址(如MOVX @RI)訪問外部數(shù)據(jù)存儲器時,P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗時,P2口也接收高8位地址字節(jié)和一些控制信號。
在該設計中,P2口與輸出的繼電器相連,在整個系統(tǒng)中的作用就是作為輸出設備的存在。
P3口:P3口是一個具有內(nèi)部上拉電阻的8位雙向I/O 口,p3輸出緩沖器能驅動4個TTL邏輯電平。 P3口亦作為AT89S52特殊功能(第二功能)使用,如下表所示。在flash編程和校驗時,P3口也接收一些控制信號。
端口引腳第二功能:
P3.0 RXD(串行輸入口)
P3.1 TXD(串行輸出口)
P3.2 INTO(外中斷0)
P3.3 INT1(外中斷1)
P3.4 TO(定時/計數(shù)器0)
P3.5 T1(定時/計數(shù)器1)
P3.6 WR(外部數(shù)據(jù)存儲器寫選通)
P3.7 RD(外部數(shù)據(jù)存儲器讀選通)
此外,P3口還接收一些用于FLASH閃存編程和程序校驗的控制信號。
在該設計中,P3口作為輸入端存在,接受系統(tǒng)輸入的信號。
RST:復位輸入。當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上高電平將是單片機復位。
ALE/PROG:當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。對FLASH存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應設置ALE禁止位無效。
PSEN:程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當AT89S52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖,在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。
EA/VPP:外部訪問允許,欲使CPU僅訪問外部程序存儲器(地址為0000H-FFFFH),EA端必須保持低電平
(接地)。需注意的是:如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器的指令。FLASH存儲器編程時,該引腳加上+12V的編程允許電源Vpp,當然這必須是該器件是使用12V編程電壓Vpp。
XTAL1:振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。
XTAL2:振蕩器反相放大器的輸出端。
AT89S52的管腳圖見圖3.3
AT89S52的工作方式
AT89S52的工作方式可以分做復位,掉電和低功耗方式等。
(一)、復位方式
單片機復位后,程序計數(shù)器PC和SFR的狀態(tài)。復位后,PC初始話為0000H,使單片機能從0000H開始執(zhí)行程序,故單片機除正常工作的程序運行出錯或操作出錯而導致死機時,需要復位鍵進行重新啟動,復位不影響RAM存放的內(nèi)容,因為復位操作是在帶電的狀態(tài)下將程序存儲器的地址改變,而ALE和PSEN非在復位期間將輸出高電平。
RST是復位信號的輸入端,RST輸入一個有效的高電平舊能使系統(tǒng)復位,當高電平持續(xù)24個振蕩脈沖周期的時候,單片機完成了復位的操作,假如晶振的頻率為6MHZ,則復位信號的持續(xù)時間不應小于4us。
復位可以是上電復位,按鍵手動復位,和二者混合式。復位信號中的電阻和電容是為了保證RST斷能保證兩個機器周期以上的高電平來完成復位操作而特意設定的。
(二)、掉電和低功耗方式
人們往往在程序運行中發(fā)生系統(tǒng)掉電的故障,使RAM和寄存器中的數(shù)據(jù)內(nèi)容丟失,使人們丟失珍貴的數(shù)據(jù)而束手無策,AT89S52有掉電保護功能,是先把有用的數(shù)據(jù)保存,再用備用電源進行供電。
3.2.2 指紋識別設計在自動存包柜的設計中輸入部分是十分重要的一個環(huán)節(jié),在這里我們需要檢測門的限位,檢測箱內(nèi)是否有物體,還有相應的錄入密碼,并在顧客需要的時候檢測密碼,并自動打開柜門。還需要顯示是否有空箱以及空箱的位置,來為顧客提供選擇。
指紋識別技術把一個人同他的指紋對應起來,通過比較他的指紋和預先保存的指紋進行比較,就可以驗證他的真實身份。每個人(包括指紋在內(nèi))皮膚紋路在圖案、斷點和交叉點上各不相同,也就是說,是唯一的,并且終生不變。依靠這種唯一性和穩(wěn)定性,我們才能創(chuàng)造指紋識別技術
指紋識別特征
總體特征是指那些用人眼直接就可以觀察到的特征。包括紋形、模式區(qū)、核心點、三角點和紋數(shù)等。
紋形
指紋專家在長期實踐的基礎上,根據(jù)脊線的走向與分布情況一般將指紋分為三大類——環(huán)型(loop,又稱斗形)、弓形(arch)、螺旋形(whorl)。
模式區(qū)
即指紋上包括了總體特征的區(qū)域,從此區(qū)域就能夠分辨出指紋是屬于哪一種類型的。有的指紋識別算法只使用模式區(qū)的數(shù)據(jù),有的則使用所取得的完整指紋。
核心點
位于指紋紋路的漸進中心,它在讀取指紋和比對指紋時作為參考點。許多算法是基于核心點的,即只能處理和識別具有核心點的指紋。
三角點
位于從核心點開始的第一個分叉點或者斷點,或者兩條紋路會聚處、孤立點、折轉處,或者指向這些奇異點。三角點提供了指紋紋路的計數(shù)跟蹤的開始之處。
紋數(shù)
即模式區(qū)內(nèi)指紋紋路的數(shù)量。在計算指紋的紋路時,一般先連接核心點和三角點,這條連線與指紋紋路相交的數(shù)量即可認為是指紋的紋數(shù)。
局部特征是指指紋上節(jié)點的特征,這些具有某種特征的節(jié)點稱為細節(jié)特征或特征點。
兩枚指紋經(jīng)常會具有相同的總體特征,但它們的細節(jié)特征,卻不可能完全相同。指紋紋路并不是連續(xù)的、平滑筆直的,而是經(jīng)常出現(xiàn)中斷、分叉或轉折。這些斷點、分叉點和轉折點就稱為"特征點",就是這些特征點提供了指紋唯一性的確認信息,其中最典型的是終結點和分叉點,其他還包括分歧點、孤立點、環(huán)點、短紋等。特征點的參數(shù)包括:方向(節(jié)點可以朝著一定的方向)、曲率(描述紋路方向改變的速度)、位置(節(jié)點的位置通過x/y坐標來描述,可以是絕對的,也可以是相對于三角點或特征點的)。
指紋識別器的種類
感應或讀取指紋有多種不同方式,其中電容式傳感技術的基本原理是,它根據(jù)活體手指——請注意“活體”一詞——表層上的電阻變化傳導指紋圖像。皮膚的表皮層,包括手指的表皮層的細胞是非活體的。剝掉非活體細胞的表皮層可以看到第一層活體皮膚細胞,這些皮膚細胞具有一定量電阻。它們還在皮膚表層上組成特定形狀——常見的指紋嵴線和溝。細胞中的特定電學品質與細胞的排列方式這二者的結合使得皮膚表面的電阻能夠被測量到且其變化唯一。這就是電容式讀取器的工作方式——它首先讀取手指活體表皮的電阻變化,然后傳導顯示這些變化的手指圖。該圖看起來就像警察展示的標準指紋圖像。電阻變化圖稱作指紋圖像。產(chǎn)生指紋圖像后會對其進行保存,或將其與另一個指紋圖像進行比較,以確定它們是否相同。
指紋識別器的種類:
光學。該技術實質上是對手指表層進行拍照。警察使用印臺獲取指紋,這是光纖圖像的一個示例。它是一種較早的數(shù)字技術。
紅外線。其測量手指的溫度。這一因素的使用之一是驗證是否存在活體手指(死的或非常冷的手指不會通過驗證)。
雷達。它是一種光學變異,可發(fā)射雷達能量并讀取從呈現(xiàn)的手指上反射的信號。通過雷達可構建圖像并進行比較。
激光。激光的種類有多種。一種是使用激光燈來讀取皮膚表層下的毛細血管。激光有多種優(yōu)勢。一種是您無法利用從玻璃等物體上盜取的指紋來以假亂真。它不會在意皮膚的外觀,只關注皮膚下毛細血管的排列。另一種是如果手指是死的(切斷的或仍在尸體上),毛細血管便會干癟(無心搏),傳感器根本不會傳導圖像。該技術非常昂貴。
綜上可以看出,光學類的指紋識別器(ZAZ-010-B)性價比最高,所以本次的設計采用光學指紋識別器。
指紋識別系統(tǒng)主要包括:單片機最小系統(tǒng)、指紋采集部分、串口通信電路、外部存儲部分、開關按鈕,供電系統(tǒng)組成。其結構框圖如圖所示。
指紋識別系統(tǒng)單片機采用8051單片機,它是整個控制器的核心部件。MAX232作為接口芯片用于實現(xiàn)指紋傳感器串口的RS-232信號與8051串行口的TTL信號的相互轉換。電源部分包括DC+5V及保護電路。
基于單片機MCS-51的指紋識別系統(tǒng)是由8051處理器、68128RAM和EEPROM芯片等構成,具有指紋錄入、圖像處理、指紋對比、搜索和模版儲存等功能的智能型模塊。它通過與之相配套的指紋傳感器,可構成一個獨立的指紋識別系統(tǒng),或作為一個完整的外部設備。
該系統(tǒng)控制的核心是單片機8051,因為通過比較DSP芯片,處理速度較快和存儲量較大,但性價比較低。而選取單片機MCS-51主要原因是功耗低、可通過軟件設置省電模式?臻e模式下,CPU暫停工作,而RAM定時計數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,128x8bit內(nèi)部RAM,能滿足設計要求。
指紋識別系統(tǒng)是一個典型的模式識別系統(tǒng),包括指紋圖像獲取、處理、特征提取和比對等模塊。
通過指紋讀取設備讀取到人體指紋的圖像,然后要對原始圖像進行初步的處理,使之更清晰,再通過指紋辨識軟件建立指紋的特征數(shù)據(jù)。軟件從指紋上找到被稱為“節(jié)點”(minutiae)的數(shù)據(jù)點,即指紋紋路的分叉、終止或打圈處的坐標位置,這些點同時具有七種以上的唯一性特征。通過計算機模糊比較的方法,把兩個指紋的模板進行比較,計算出它們0配結果。
指紋圖像獲取:通過專門的指紋采集儀可以采集活體指紋圖像。目前,指紋采集儀主要有活體光學式、電容式和壓感式。對于分辨率和采集面積等技術指標,公安行業(yè)已經(jīng)形成了國際和國內(nèi)標準,但其他還缺少統(tǒng)一標準。根據(jù)采集指紋面積大體可以分為滾動捺印指紋和平面捺印指紋,公安行業(yè)普遍采用滾動捺印指紋。另外,也可以通過掃描儀、數(shù)字相機等獲取指紋圖像。
指紋圖像壓縮:大容量的指紋數(shù)據(jù)庫必須經(jīng)過壓縮后存儲,以減少存儲空間。主要方法包括JPEG、WSQ、EZW等。
指紋圖像處理:包括指紋區(qū)域檢測、圖像質量判斷、方向圖和頻率估計、圖像增強、指紋圖像二值化和細化等。
紋型是指紋的基本分類,是按中心花紋和三角的基本形態(tài)劃分的。紋形從屬于型,以中心線的形狀定名。我國十指紋分析法將指紋分為三大類型,九種形態(tài)。一般,指紋自動識別系統(tǒng)將指紋分為弓形紋(弧形紋、帳形紋)、箕形紋(左箕、右箕)
斗形紋和雜形紋等。
圖3.5 指紋形態(tài)
指紋形態(tài)和細節(jié)特征提。褐讣y形態(tài)特征包括中心(上、下)和三角點(左、右)等,指紋的細節(jié)特征點主要包括紋線的起點、終點、結合點和分叉點。
指紋比對:可以根據(jù)指紋的紋形進行粗匹配,進而利用指紋形態(tài)和細節(jié)特征進行精確匹配,給出兩枚指紋的相似性得分。根據(jù)應用的不同,對指紋的相似性得分進行排序或給出是否為同一指紋的判決結果。
當指紋傳感器收到指紋信息,將通過串口給單片機發(fā)送命令,單片機同意并接收相應的信息,指紋傳感器采集的指紋轉換成RGB格式,并且數(shù)據(jù)傳輸?shù)絾纹瑱C,單片機通過存儲在EEPROM中的固化程序執(zhí)行大量的模式識別和圖像處理相關計算,當用戶的指紋被確認,單片機將命令執(zhí)行機構動作,開關開。
AT89S52系列單片機采用的是HMOS工藝:高速度、高密度;
AT89S52系列單片機采用的是CHMOS工藝:高速度、高密度、低功耗;
也就是說AT89S52單片機是一種低功耗單片機。
本系統(tǒng)采用AT89S52作為指紋識別系統(tǒng)的核心處理器,使用單片機內(nèi)部的4K程序存儲器,接+5V電源。
復位電路則采用簡單RC復位電路,同時又可與一些需要復位的外圍電路相連,達到復位與單片機同步。
/EA/Vpp為訪問內(nèi)部或外部程序存儲器的選擇信號.由于AT89S52單片機有4K的內(nèi)部程序存儲器,又外接了128Kx8的EEPROM存儲器,故該引腳必須接+5V高電平./PSEN為外部程序存儲器讀選通控制信號.此電路中無擴展程序存儲器.故該腳懸空.
串口通信接口設計采用MAX232實現(xiàn)TTL與RS-232的轉換,實現(xiàn)與計算機通信。
光電開關是傳感器大家族中的成員,它把發(fā)射端和接收端之間光的強弱變化轉化為電流的變化以達到探測的目的。由于光電開關輸出回路和輸入回路是電隔離的(即電緣絕),所以它可以在許多場合得到應用。
光電開關的工作原理
光電開關(光電傳感器)是光電接近開關的簡稱,它是利用被檢測物對光束的遮擋或反射,由同步回路選通電路,從而檢測物體有無的。物體不限于金屬,所有能反射光線的物體均可被檢測。光電開關將輸入電流在發(fā)射器上轉換為光信號射出,接收器再根據(jù)接收到的光線的強弱或有無對目標物體進行探測。多數(shù)光電開關選用的是波長接近可見光的紅外線光波型。德國SICK公司的部分光電開關的外型如圖3.5。
圖3.6 部分光電開關外形
光電開關的分類
①漫反射式光電開關:它是一種集發(fā)射器和接收器于一體的傳感器,當有被檢測物體經(jīng)過時,物體將光電開關發(fā)射器發(fā)射的足夠量的光線反射到接收器,于是光電開關就產(chǎn)生了開關信號。當被檢測物體的表面光亮或其反光率極高時,漫反射式的光電開關是首選的檢測模式。
②鏡反射式光電開關:它亦集發(fā)射器與接收器于一體,光電開關發(fā)射器發(fā)出的光線經(jīng)過反射鏡反射回接收器,當被檢測物體經(jīng)過且完全阻斷光線時,光電開關就產(chǎn)生了檢測開關信號。
③對射式光電開關:它包含了在結構上相互分離且光軸相對放置的發(fā)射器和接收器,發(fā)射器發(fā)出的光線直接進入接收器,當被檢測物體經(jīng)過發(fā)射器和接收器之間且阻斷光線時,光電開關就產(chǎn)生了開關信號。當檢測物體為不透明時,對射式光電開關是最可靠的檢測裝置。
④槽式光電開關:它通常采用標準的U字型結構,其發(fā)射器和接收器分別位于U型槽的兩邊,并形成一光軸,當被檢測物體經(jīng)過U型槽且阻斷光軸時,光電開關就產(chǎn)生了開關量信號。槽式光電開關比較適合檢測高速運動的物體,并且它能分辨透明與半透明物體,使用安全可靠。
⑤光纖式光電開關:它采用塑料或玻璃光纖傳感器來引導光線,可以對距離遠的被檢測物體進行檢測。通常光纖傳感器分為對射式和漫反射式。
它們的工作光線示意圖如圖3.7所示。
圖 3.7 各種光電開關的示意圖
光電開關的使用注意事項
①紅外線傳感器屬漫反射型的產(chǎn)品,所采用的標準檢測體為平面的白色畫紙。
②紅外線光電開關在環(huán)境照度高的情況下都能穩(wěn)定工作,但原則上應回避將傳感器光軸正對太陽光等強光源。
③對射式光電開關最小可檢測寬度為該種光電開關透鏡寬度的80%。
④當使用感性負載(如燈、電動機等)時,其瞬態(tài)沖擊電流較大,可能劣化或損壞交流二線的光電開關,在這種情況下,請將負載經(jīng)過交流繼電器來轉換使用。
⑤紅外線光電開關的透鏡可用擦鏡紙擦拭,禁用稀釋溶劑等化學品,以免永久損壞塑料鏡。
⑥針對用戶的現(xiàn)場實際要求,在一些較為惡劣的條件下,如灰塵較多的場合,所生產(chǎn)的光電開關在靈敏度的選擇上增加了50%,以適應在長期使用中延長光電開關維護周期的要求。
⑦產(chǎn)品均為SMD工藝生產(chǎn)制造,并經(jīng)嚴格的測試合格后才出廠,在一般情況下使用均不會出現(xiàn)損壞。為了避免意外性發(fā)生,請用戶在接通電源前檢查接線是否正確,核定電壓是否為額定值。
這本設計中我們需要對存包柜中進行檢測,并且實時顯示無物的箱號,顧客門沒有關靠的時候發(fā)出報警,所以我們選用漫反射式光電開關。
我們選取FR12-40型,它的工作參數(shù)如下:
1.工作電壓: 5 - 12V.
2.動態(tài)工作電流:5-20mA.
3.最大輸出電流10mA.
4.12V供電時有效控制距離最大為3.5米.
5.外型尺寸:21x68x37mm
限位開關可以根據(jù)運動部件的位置來切換電路。工作時由擋塊和限位開關的輪子或觸桿相撞使限位開關的觸點接通或斷開,常用于控制運動部件的方向、行程長短、位置。還可以用來檢測開關物體是否閉合。我們使用LJ-DFJ型限位開關,它的特點是:
1、單棒式探頭,工作穩(wěn)定,感度好。
2、不受測定物性質的影響,安裝后無須調整,即可穩(wěn)定投入使用
3、采用壓電元件內(nèi)置于棒體和厚管壁的不銹鋼管的探頭,消振管僅9mm長(同類比為最短),抗重荷、安全可靠、壽命長。
4、依據(jù)所測定對象不同,可調整測定感度(高、中、低)
5、使用15A大容量接點繼電器開關,可直接實行對電機控制。
(4) 鍵盤、顯示器接口電路
該系統(tǒng)中鍵盤的主要功能是用于顧客選擇適當?shù)墓駚泶姘@里我們用普通的按鍵開關,用4個按鍵來控制4個柜門的關閉,然后一個按鍵為存包鍵,一個為取包鍵,最后一個為復位鍵。剩下的一個為整個系統(tǒng)的開關。如圖3.8
圖3.8 鍵盤設計
3.2.3 輸出電路設計在輸出電路中包含了顯示部分,驅動部分,報警部分,下面詳細介紹各部分的功能及工作過程。
隨著儀器、儀表智能化、多功能化的要求,液晶顯示器以其體積小、功耗低、接口方便等優(yōu)點在顯示器市場中脫穎而出,取代了傳統(tǒng)的LED、CRT等顯示方式而成為現(xiàn)代顯示技術發(fā)展的主流。
系統(tǒng)采用液晶顯示器(LCD),液晶顯示器是一種被動式的顯示器,即液晶本身并不發(fā)光,而是利用液晶經(jīng)過處理后能改變光線通過方向的特性,而達到白底黑字或者黑底白字顯示的目的。液晶顯示器在單片機系統(tǒng)中作為輸出器被廣泛使用有以下原因:
LCD的顯示原理:
在LCD顯示器的上下兩電極間加有液晶材料,液晶分子呈平行排列,具有旋光性,平時呈透明態(tài),當上下電極間加上一定電壓時,液晶分子轉成垂直排列,失去旋光性而呈黑色。
LCD顯示分為筆段型、點陣字符型、點陣圖形型。本設計采用點陣字式LCD顯示器。要使用本顯示器,必須有相應的LCD控制器,驅動器來對LCD顯示器進行掃描、驅動,以及一定空間的ROM和RAM來存儲寫入的命令和顯示字符的點陣。現(xiàn)在人們已經(jīng)將LCD控制器、驅動器、RAM、ROM和LCD顯示器用PCB連接到一起,稱為液晶顯示模塊LCM(LCD Module)。使用者只要想LCM送入相應的命令和數(shù)據(jù)就可以實現(xiàn)所需要的顯示,這種模塊與單片機接口簡單,使用靈活方便。
在這里我們選用LCM045型號顯示器,它的基本結構如下:
(1)液晶板
在液晶板上排列著若干5×10點陣的字符顯示位,沒個顯示位可以顯示1個字符。
(2)模塊電路
模塊電路是由控制器HD44780、驅動器HD44100及幾個電阻電容組成的。HD44100是擴展顯示字符位用的。PCB上有14個引腳,其中有8條數(shù)據(jù)線,3條控制線,其功能見下表可以很容易的很8031相接(如圖3.1)通過送入數(shù)據(jù)和指令可以對顯示方式和顯示內(nèi)容做出選擇。
(3)驅動器和控制器
驅動器HD44100是用低功耗CMOS技術制造的大規(guī)模LCD驅動IC。它即可以當行驅動,也可以當列驅動,由20×2bit二進制移位寄存器、20×2bit數(shù)據(jù)寄存器和20×2bit驅動器組成。
表3.1 引線功能
引 角 號 | 符 號 | 名 稱 | 功 能 |
1 | VSS | 地 | 0V |
2 | VDD | 電路電源 | 5V±5% |
3 | VLCD | 液晶驅動電壓 | 見圖3.2.2 |
4 | RS | 寄存器選擇 | H 數(shù)據(jù)寄存器 L 指令寄存器 |
5 | R/W | 讀/寫 | H 讀 L寫 |
6 | E | 使能 | 下降沿觸發(fā) |
7 · · 14 | DB0 · · DB7 | 8位數(shù)據(jù)線 | 數(shù)據(jù)傳輸 |
LCD控制器HD44780是用低功耗CMOS技術制造的大規(guī)模模點陣LCD控制器(兼帶驅動器)和4位/8位微處理器相連,它能使點陣LCD顯示大小寫英文字母,數(shù)字和符號。應用HD44780,用戶能用少量元件就可以組成一個完整點陣LCD系統(tǒng)。
圖3.9 LCD與單片機連接圖
存包柜由若干個獨立分隔的鐵殼箱體組成。每個箱體的門都是由一個電磁線圈控制的,當單片機接受到密碼檢測信號,并且密碼正確,就會給電磁線圈一個信號使電磁線圈的電,吸動鎖扣,箱門就自動打開。當箱門關閉的時候,鎖扣被推上,箱門就可靠的鎖住。在這里我們使用DSN-Y電磁鎖。
DSN型電磁鎖的結構原理:
DSN電磁縮是由電氣和機械兩部組成。電氣部分:開鎖指示燈、電源按鈕、電磁鐵線圈。機械部分:外殼、鎖栓、復位彈簧、開鎖鈕、解鎖機構、電磁鐵機構。它的接線原理圖如圖3.10
圖 3.10電磁鎖接線原理圖
工作原理:
H(開鎖指示燈) R(限流電阻) S(電源按鈕)L(電磁鐵線圈) KA(閉鎖接點)
當閉鎖接點接通后,按下電源按鈕,指示燈亮,電磁鐵的線圈通電,鐵芯往下吸解除鎖栓受控,用手撥動開鎖鈕帶動鎖栓即可開鎖。完成上述開鎖合,鎖栓自動復位并保持鎖定位置。當閉鎖接點不接通,則不能開鎖。在特殊情況下,如電磁鐵失壓(無電源)或應急解鎖可用專用鎖匙實現(xiàn)開鎖。驅動電路連接圖如圖3.19
圖3.11 電磁鎖驅動電路
顧客在存包的時候很容易出現(xiàn)存完包或則是取完包忘記關門的現(xiàn)象,我們在這里設計一個自動報警裝置,可以在適當?shù)臅r候提醒顧客關好柜門。LM555是美國國家半導體公司的時基電路。我國和世界各大集成電路生產(chǎn)商均有同類產(chǎn)品可供選用,是使用極為廣泛的一種通用集成電路。LM555功能強大、使用靈活、適用范圍寬,可用來產(chǎn)生時間延遲和多種脈沖信號,被廣泛用于各種電子產(chǎn)品中。
LM555 時基電路有雙極型和 CMOS 型兩種。LM555屬于雙極型。優(yōu)點是輸出功率大,驅動電流達 200mA。而另一種 CMOS 型的優(yōu)點是功耗低、電源電壓低、輸入阻抗高,但輸出功率要小得多,輸出驅動電流只有幾毫安。
LM555的引腳圖如圖3.12
圖3.12 LM555引腳圖
電路特點
LM555 時基電路內(nèi)部由分壓器、比較器、觸發(fā)器、輸出管和放電管等組成,是模擬電路和數(shù)字電路的混合體。其中
6 腳為閥值端(TH),是上比較器的輸入。
2 腳為觸發(fā)端(TR),是下比較器的輸入。
3 腳為輸出端(OUT),有 0 和 1 兩種狀態(tài),它的狀態(tài)由輸入端所加的電平?jīng)Q定。
7 腳為放電端(DIS),是內(nèi)部放電管的輸出,它有懸空和接地兩種狀態(tài),也是由輸入端的狀態(tài)決定。
4 腳為復位端(R),叫上低電平(< 0.3V)時可使輸出端為低電平。
5 腳為控制電壓端(CV ),可以用它來改變上下觸發(fā)電平值。
8 腳為電源(VCC),1 腳為地(GND)。
這個特殊的 R-S 觸發(fā)器有兩個特點:(1)兩個輸入端的觸發(fā)電平要求一高一低:置零端 R 即閥值端 TH 要求高電平,而置位端 S 即觸發(fā)端 TR 則要求低電平。(2)兩個輸入端的觸發(fā)電平,也就是使它們翻轉的閥值電壓值也不同,當CV 端不接控制電壓是,對 TH(R) 端來講,> 2/3VCC 是高電平 1,< 2/3VCC 是低電平 0;而對 TR(S)端來講,> 1/3VCC 是高電平 1,< 1/3VCC 是低電平 0。如果在控制端 CV 加上控制電壓 VC,這時上觸發(fā)電平就變成 VC 值,而下觸發(fā)電平則變成 1/2VC?梢姼淖兛刂贫说目刂齐妷褐悼梢愿淖兩舷掠|發(fā)電平值。
(4) 開箱電路設計
開箱控制電路功能用來打開箱鎖。該系統(tǒng)共控制4個存包柜,其中使用了AT89S52的P2.0-P2.3接線口作為輸出,輸出信號經(jīng)三極管放大后驅動電磁鎖動作,從而將箱鎖打開。同時在箱的門沿上還裝有限位開關,并用燈來顯示門的閉合與否。并在適當?shù)臅r候來進行報警,并用燈來顯示提醒顧客關好柜門。如圖3.14
圖3.14 箱柜設計圖
電磁繼電器一般由鐵芯、線圈、銜鐵、觸點簧片等組成的。
只要在線圈兩端加上一定的電壓,線圈中就會流過一定的電流,從而產(chǎn)生電磁效應,銜鐵就會在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點與靜觸點(常開觸點)吸合。當線圈斷電后,電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點與原來的靜觸點(常閉觸點)釋放。這樣吸合、釋放,從而達到了在電路中的導通、切斷的目的。對于繼電器的“常開、常閉”觸點,可以這樣來區(qū)分:繼電器線圈未通電時處于斷開狀態(tài)的靜觸點,稱為“常開觸點”;處于接通狀態(tài)的靜觸點稱為“常閉觸點”。繼電器一般有兩股電路,為低壓控制電路和高壓工作電路。
磁簧繼電器是以線圈產(chǎn)生磁場將磁簧管作動之繼電器,
為一種線圈傳感裝置。因此磁簧繼電器之特征、小型尺寸、輕量、反應速度快、短跳動時間等特性。
當整塊鐵磁金屬或者其它導磁物質與之靠近的時候,發(fā)生動作,開通或者閉合電路。由永久磁鐵和干簧管組成。永久磁鐵、干簧管固定在一個不導磁也不帶有磁性的支架上。以永久磁鐵的南北極的連線為軸線,這個軸線應該與干簧管的軸線重合或者基本重合。由遠及近的調整永久磁鐵與干簧管之間的距離,當干簧管剛好發(fā)生動作(對于常開的干簧管,變?yōu)殚]合;對于常閉的干簧管,變?yōu)閿嚅_)時,將磁鐵的位置固定下來。這時,當有整塊導磁材料,例如鐵板同時靠近磁鐵和干簧管時,干簧管會再次發(fā)生動作,恢復到?jīng)]有磁場作用時的狀態(tài);當該鐵板離開時,干簧管即發(fā)生相反方向的動作。磁簧繼電器結構堅固,觸點為密封狀態(tài),耐用性高,可以作為機械設備的位置限制開關,也可以用以探測鐵制門、窗等是否在指定位置。
3. 3 整體電路圖
圖3.15 整體電路圖
第4章 系統(tǒng)軟件設計
為了使本系統(tǒng)的整個程序清晰明白,便于調試和修改,程序設計時把系統(tǒng)的各種功能分為若干部分,對于每一部分功能編制相對獨立的程序塊,各程序在運行的時候各負其責。
4.1 系統(tǒng)軟件整體設計該模塊的功能包括顯示的初始化,判斷是否有空箱,鍵盤掃描,密碼掃描等功能。
主要核心器件有:AT89C51,打印機,條形碼掃描系統(tǒng),光電開關,電磁閥等。
主程序模塊
該模塊的功能包括顯示的初始化,判斷是否有空箱,鍵盤掃描,密碼掃描等功能。
以使用者指紋作為寄存的憑證;當使用者進行存物操作時,須先按一下操作鍵盤中的“存”鍵,然后在指紋采集窗里采集指紋,機器會把該指紋與分配給使用者使用的寄存箱的箱號結合起來,并將信息自動記錄下,同時自動打開該箱,供使用者存物,存完后使用者自己關好箱門;取物時,只需須先按一下操作鍵盤中的“取”鍵,然后在指紋采集窗里采集指紋,寄存柜將指紋數(shù)據(jù)與先前記錄下的進行比對,正確后才會打開該箱供使用者取物(同時機器會自動記錄當時的時間、指紋以備查詢)
本次設計的流程圖如圖4.1.軟件模擬程序為,首先先檢測所有的空箱數(shù)目,然后根據(jù)按鍵判斷狀態(tài)是要存包還是取包,如果是取包的話,就輸入密碼,然后將包存入箱柜內(nèi),然后關門,系統(tǒng)檢測是否關門,如果是的話則進行下一步,否則提示未關門。如果是取包的時候,輸入密碼后,驗證密碼的正確與否,正確的話就看箱柜是否關門,否則提示箱柜未關門。
圖4.1 主程序流程圖
4.2 系統(tǒng)軟件各部分設計4.2.1鍵輸入程序設計鍵盤采用掃描工作方式,輸入程序功能有以下4個方面:
(1)判斷鍵盤上有無鍵閉合,其方法為掃描口PA0~7輸出全“0”,讀PC口的狀態(tài),若PC0~3為全“1”(鍵盤上行線全為高電平)則鍵盤上沒有閉合鍵若PC0~3不全為“1”,則有鍵處于閉合狀態(tài)。
(2)去除鍵的機械抖動,其方法為判斷出鍵盤上有鍵閉合后,延遲一段時間再判別鍵盤的狀態(tài),若仍有鍵閉合,則認為鍵上有一個鍵處于穩(wěn)定的閉合期,否則認為是鍵的抖動。
PA7 | PA6 | PA5 | PA4 | PA3 | PA2 | PA1 | PA0 |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 |
…… | …… | …… | …… | …… | …… | …… | …… |
0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
(3)判別鍵閉合的鍵號,方法對鍵盤的列線進行掃描,掃描口PA0~7依次
表4.1 按鍵圖
輸出:
相應的依次讀PC口的狀態(tài),若PC0~3為全“1”則列線為“0”的這一列上沒有鍵閉合。閉合鍵的鍵號等于為低電平的列號加上為低電平的行的首鍵號。
(4)使CPU對鍵的一次閉合僅做一次處理,采用的方法為等待閉合鍵釋放后在作處理。流程圖見4.2
4.2.2 驅動電路程序設計繼電器板負責自動存包柜的開箱控制,利用紅外線檢測箱內(nèi)是否有物體,并將狀態(tài)信息上傳到主機板,做為下一次分配箱時的依據(jù)。繼電器接受主機板下達的命令,根據(jù)主機指令的箱號,驅動相應的繼電器開門,同時檢測門限位開關的信號,確定門是否開啟。流程圖見圖4.3
圖4.2 鍵盤輸入子程序流程圖
第5章 系統(tǒng)調試5.1 系統(tǒng)硬件調試
自動存包柜電路包括四大部分:指紋輸入部分,箱柜部分,顯示部分已經(jīng)單片機部分,將他們在一張板上放好,然后通過設計出來的原理圖對這四個部分依次的焊接,使其成功的出現(xiàn)在同一張板上。如圖5.1
圖5.2 連線圖
1、首先是焊接的順序問題。當初板子做好以后,我一口氣就把所有的元件焊上去了,這樣對于沒有調試過的板子,就很難找到原因。所以焊接的順序很重要,應該是應該按功能劃分的器件進行焊接,順序是功能部件的焊接--調試(OK)--另一功能部件的焊接,這樣容易找到問題的所在。
2、如果在調試按功能劃分的器件上出現(xiàn)問題,可以按以下步驟進行:
1)檢查原理圖連接是否正確
2)檢查原理圖與PCB圖是否一致
3)檢查原理圖與器件的DATASHEET上引腳是否一致
4)用萬用表檢查是否有虛焊,引腳短路現(xiàn)象
5)查詢器件的DATASHEET,分析一下時序是否一致,同時分析一下命令字是否正確(注意,命令字的順序很重要,前些日子調試INTEL e28F640這款flash是的時候,在對其擦除和寫操作的時候,就碰到了這樣的問題)
6)有條件的可以用示波器。如我就是通過示波器對SRAM各個引腳進行檢查,發(fā)現(xiàn)地址線都是有信號的,而數(shù)據(jù)線無信號出現(xiàn),才找到問題所在。
7)飛線。用別的的口線進行控制,看看能不能對其進行正常操作,多試驗,才能找到問題出現(xiàn)在什么地方。
5.2 系統(tǒng)軟件調試
第一步:建立工程項目文件
雙擊桌面軟件快捷圖標
第二步:建立源文件
在界面中打開文件下拉菜單,在打開的選項中點“新建”,產(chǎn)生一個新建空白文件。在新建空白文件中輸入源程序文件
圖5.3 程序軟件圖
在確認源程序無錯時點保存,這時界面上彈出提示“另存為”菜單,選擇好保存路徑,也就是剛才保存建立工程項目文件的目錄路徑,輸入文件名,如y2.asm(要有后綴,匯編程序是*.asm),然后點擊保存。
這時僅僅是完成了匯編程序的建立而已,但y2.asm匯編程序與y2.Uv2工程項目文件現(xiàn)在還沒建立任何關系,此時應把y2.asm源程序文件添加到y(tǒng)2.Uv2工程中,構成一個完整的工程項目。
第三步:將源程序文件添加到工程項目中
在左側Project Windows窗口內(nèi)右擊 Source Group1,在彈出下拉菜單中選種 Add Files to Group‘Source Group1’(向工程中添加源文件)命令,
在彈出的菜單欄中點文件類型一欄下拉菜單,選Asm Source Files(*.a*:*.src:*.a*)即(匯編程序),文件框中選擇將剛才創(chuàng)建的源程序文件y2.asm然后點Add,這時在文件名框后出現(xiàn)剛才選中y2.asm文件,在點擊CLOSE完成源程序文件向工程項目的添加。
第四步:為添加到工程項目的程序文件進行編譯和鏈接
在界面上點工程(Project)選項,在下拉菜單中選擇(Options For Target ‘Target ‘),命令為目標設置工具選項。
在“目標”(Target)選項卡片外代碼內(nèi)存,片外Xdata內(nèi)存都為空白。 在“輸出”選項卡中選擇創(chuàng)建HEX文件。在“C51”選項卡上勾選中斷向量在0X0000。
在“調試”(Debug)選項卡選擇使用模擬仿真,對于匯編程序不需要勾選運行到,然后點確定其余選項卡內(nèi)容則不需要改變設置。在打開工程(Project)下拉菜單,選擇創(chuàng)建目標(Build target)點擊左鍵。此時會出現(xiàn)“編譯正確”,無錯誤,無警告提示。
(如果在建立工程項目在提示’Y’或’N’時,選中了‘Y’,在創(chuàng)建目標時時就會出現(xiàn)如下3個警告提示,但不影響影響程序運行)。
圖5.4 系統(tǒng)面板
接下來選擇重建全部目標文件(Rebuild all target files)命令,對項目工程文件進行重新編譯,鏈接,此后會出現(xiàn)提示,“編譯正確,鏈接成功”,提示。(如果在前邊建立工程項目在提示’Y’或’N’時,選中了‘Y’,在創(chuàng)建目標時時就會出現(xiàn)如下3個警告提示,但不影響程序運行。也可以省去上一步“創(chuàng)建目標”,直接運行這一步即可)。
接下來打開調試下拉菜單,選擇Start/Step Debug Session Crtl+F5,進行調試,也就是將程序下載到仿真器里,然后可以進行運行程序。
運行程序有全速運行,單步跟蹤運行,單步運行,執(zhí)行返回。在這里選用單步運行命令運行程序,每執(zhí)行一次此命令,是以語句為基本執(zhí)行單元,但指令用黃色箭頭標出,每執(zhí)行一步箭頭都會移動,執(zhí)行過的指令呈現(xiàn)綠色。
在右下角內(nèi)存視窗輸入的D:0X0050可以看到50H~59H單元被寫入的數(shù)據(jù),同時左側。
Project Windows窗口內(nèi)可以看到相關寄存器的變化。
選擇調試下拉菜單可以點Start/Step Debug Session Crtl+F5則停止調試。
1. 開啟箱柜,插上電源,提示空余的箱柜為4個
圖5.5 開啟系統(tǒng)
2. 按下存包鍵,提示要求輸入指紋
圖5.6 請輸入指紋
3. 輸入一次指紋后提醒再次輸入,確認指紋信號
圖5.7 再次輸入
4.兩次輸入正確后會打開一個箱柜,并提示隨手關門
圖5.8 箱柜開啟
5.關門后顯示剩余箱柜
圖5.9 剩余箱柜數(shù)
6.取包時按下取包鍵提示輸入指紋
7.指紋輸入正確后打開箱柜,并提示隨手關門
圖5.10 請隨手關門
8.關門后顯示剩余的空箱數(shù),然后重復上述的步驟。
總 結
在大學的學習過程中,畢業(yè)設計是一個重要的環(huán)節(jié),是我們步入社會參與實際項目的規(guī)劃建設的一次極好的演示.畢業(yè)設計是四年學習的總結和提高,和做科研開發(fā)工作一樣,要有嚴謹求實的科學態(tài)度。畢業(yè)設計有一定的學術價值和實用價值,能反映出作者所具有的專業(yè)基礎知識和分析解決問題的能力。此次畢業(yè)設計是我們從大學畢業(yè)生走向未來工作重要的一步。從最初的選題,開題到分析制作直到完成設計。其間,查找資料,老師指導,與同學交流,反復修改方案,每一個過程都是對自己能力的一次檢驗和充實。在畢業(yè)設計期間,盡可能多的閱讀文獻資料是很重要的,一方面是為畢業(yè)設計做技術準備,另一方面是學習做畢業(yè)設計的方法。一次優(yōu)秀的設計對啟發(fā)我們的思維,掌握設計的規(guī)范、流程、具體操作都很有幫助。
我設計的是自動存包系統(tǒng),我的設計方案是采用AT89S52單片機做控制器,可以同時管理四個存包柜。柜門鎖是由繼電器控制,當顧客需要存包的時候,可以自行到存包柜前按“開門”鍵,需要顧客向光學指紋識別系統(tǒng)輸入個指紋,然后通過繼電器進行開門(用亮燈表示),顧客即可存包,并需將柜門關上。當顧客需要取包時,要將只要將之前輸入的指紋放置于指紋識別器前方,指紋識別器采集到指紋信息輸出相應的高低電平信號傳給單片機,系統(tǒng)比較密碼一致后,發(fā)出開箱信號至繼電器將柜門打開,顧客即可將包取出。
我覺得我設計的這個課題,優(yōu)點在于比現(xiàn)在市面上的存包系統(tǒng)更加的實用,更加的方便,而我覺得能夠改進的地方是指紋識別系統(tǒng)的辨識度,精確度。
在本次畢業(yè)設計也暴露出自己專業(yè)基礎的很多不足之處。比如缺乏綜合應用專業(yè)知識的能力,對材料的不了解,對具體設計涉及到的規(guī)范要求的不熟悉等等,需要在做的過程中需要去不斷的翻閱相關的資料和書籍,這降低了自己的速度和設計的進程,但這個過程對我來說是對自己知識的不足處的一個很好的補充和對已學過知識的一個鞏固。這個過程雖然是有一定的難度但還是通過自己的慢慢的摸索和老師的指導下從熟悉到上手,經(jīng)過這次努力對自己的信心很好的提高。通過這樣的一個自己從開始到結束全程自己參與的設計來說對知識的了解和掌握是純理論的學習遠遠達不到的效果。這次實踐是對自己大學四年所學的一次大檢閱,使我明白自己知識還很淺薄,雖然馬上要畢業(yè)了,但是自己的求學之路還很長,以后更應該在工作中學習,努力使自己 成為一個可以參與工作能獨立完成設計的人。
這次畢業(yè)設計我做的基于單片機的自動存包系統(tǒng)。首先查找了很多的資料,對于各類的文獻進行收集,然后用了一個星期對總的資料進行整理和刪選,選擇對自己設計有用的資料匯編成冊作為后期設計的輔助資料參考和借鑒。接下來的幾個星期指導老師給了我們具體的要求與任務,并指導我們具體的設計工作流程。通過對前期詳細的分析使自己蠻快的有了自己設計的思路,規(guī)劃設計出了自己的方案,然后和老師的交流進行改進自己的設計方案和設計的不足。通過幾輪的修改以及老師的交流使自己慢慢的完善自己的設計方案。接下去的幾周是對原理圖的設計,設計上還是比較輕松,掌握起來比較自如。然后就是購買所需的零件,對照總圖進行焊接,應進行調試。最后一周是對整個設計的總結。通過這規(guī)劃也讓自己明白了以前做的設計過于理想化,在設計過程中對現(xiàn)狀和現(xiàn)實的根據(jù)太少,很多都是按照自己的理想去做,而實際的設計更多的是從現(xiàn)狀和現(xiàn)實出發(fā) 使規(guī)劃更合理、更實用、更有發(fā)展。
整個畢業(yè)設計期間,指導教師認真嚴格的要求我們,我們因為是獨立的完成一個設計,需要老師的指導,我們認真的聽取老師的意見,同時也發(fā)表自己對方案的見解,每一個星期我與指導老師都會見一次面,這樣我們可以很好的交換意見,更好的完善方案。我們嚴格按照學校的有關規(guī)定執(zhí)行,對畢業(yè)設計內(nèi)容及工作量進行討論并確定,指導來時非常并注重對我解決實際工作問題的能力、獨立查閱文獻能力、計算機及軟件應用能力等的培養(yǎng)。指導王老師平時加強畢業(yè)設計的輔導,我們還可隨時找老師進行答疑,老師為方便我們聯(lián)系,把電話號碼和Email地址留給了我們,如果有什么事就可以及時得到解決,這樣問題不致堆積、也不會因此拖了進度。在畢業(yè)設計期間,如果沒有老師的細心指導,而是自己一個人獨自做設計,也不與任何人交流,這是完全不行的,設計其實也是一個團隊的工作,如果不能與他人進行良好的溝通與交流,做出的設計也只是只有自己一個人會欣賞,而別人卻不一定會認可你的設計,所以在這次畢業(yè)設計過程中,我懂得了一個道理,團結得力量,只有更好得與他人,進行溝通與交流,吸取別人的建議,工作才會更加的順利。
我們?nèi)繉W生對畢業(yè)設計都是十分重視的,也不會因為有要找工作而拖延進度的,老師對我能認真對待畢業(yè)設計的態(tài)度也較滿意。設計期間,我們自覺獨立進行設計,有問題時學生之間會進行討論、爭論,師生之間也常進行研討,通過這種方式,我們覺得收獲很大。我們經(jīng)常能夠主動走進圖書館查閱有關資料,與其他同學進行資料的討論。我通過畢業(yè)設計,普遍感到自己應用基礎知識及專業(yè)知識解決問題的能力有了很大的提高,以前所學的許多課程覺得很零散,也不知道有什么用及怎么用,現(xiàn)在也都找到了用武之地。今后走上社會,我主要還是靠在學校學到的只是技能來養(yǎng)活自己,并回報社會,回報父母,所以通過這次的畢業(yè)設計,我也了解到了自己的很多不足,在今后的工作與學習中,我會不斷的提高與改進。
通過這次畢業(yè)設計我收獲良多,獲得了許多珍貴的知識,學到了在許多書本上不可能收錄的東西。
參考文獻
值此論文完成之際,首先感謝我的指導老師王玉杰老師在論文完成過程中給予我的幫助和鼓勵。
在畢業(yè)設計過程中我學到了許多知識,其中認真嚴謹,實事求是,堅持不懈是我在這次設計中最大的收益。我想這是一次意志的磨練,是對我實際能力的一次提升,會對我未來的學習和工作有很大的幫助。也為將來的人生之路做好了一個很好的鋪墊。
當我初涉設計時,各種問題層出不窮,后來就慢慢的進入了狀態(tài),思路也逐漸的清晰了,歷經(jīng)了幾個月的奮戰(zhàn),緊張而又充實的畢業(yè)設計終于落下了帷幕;叵脒@段日子的經(jīng)歷和感受,我感慨萬千,在這次畢業(yè)設計的過程中,我擁有了無數(shù)難忘的回憶和收獲。
最后再次對所有幫助過我的老師和同學表示感謝。
附 錄
附錄1
馮少 發(fā)表于 2018-11-7 12:06
您好!請問有PCB圖 和電路圖
szz000 發(fā)表于 2019-4-16 12:29
樓主還在嗎?請問您的源程序里面用到的finger.h和oled.h的頭文件有嗎?可以發(fā)下嗎?
歡迎光臨 (http://www.raoushi.com/bbs/) | Powered by Discuz! X3.1 |