基于單片機防酒后駕駛_第1頁
基于單片機防酒后駕駛_第2頁
基于單片機防酒后駕駛_第3頁
基于單片機防酒后駕駛_第4頁
基于單片機防酒后駕駛_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、重慶科技學院高等教育自學考試本科畢業(yè)論文 中文摘要高等教育自學考試本科畢業(yè)論文 基于單片機的防酒后駕駛控制系統(tǒng)設計考生姓名: 準考證號: 專業(yè)層次: 本 科 院 (系):機械與電子工程學院指導教師: 職 稱: 講 師 重慶科技學院二O一二年二月十八日II 高等教育自學考試本科畢業(yè)論文基于單片機的防酒后駕駛控制系統(tǒng)設計考生姓名: 準考證號: 專業(yè)層次: 本 科 指導教師: 焦 健 院 (系): 機械與電子工程學院 重慶科技學院二O一二年二月十八日重慶科技學院高等教育自學考試本科畢業(yè)論文 中文摘要摘 要改革開放以來,隨著社會的快速發(fā)展,經濟和科技也取得了巨大的進步,人們的生活水平也有了提高。汽車逐

2、步進入家庭,它代替了低速的自行車、電動車,讓人們出行變得更快捷、舒適、方便,但是隨之而來的問題也變得越來越多。在中國酒文化歷史悠久,人與人之間的應酬也越來越多。然而喝酒和開車是一對矛盾體,經調查全世界每年約有 120 萬人死于道路交通事故,受傷者多達 5000萬人,同時全球道路交通事故每年造成的直接經濟損失為 5180 億美元,大部分都是酒后駕駛造成的,為了減少交通事故的發(fā)生,新交通法規(guī)定嚴厲懲罰酒駕,但人們酒駕的事情還是時有發(fā)生,針對這種現(xiàn)象,很有必要設計出一種專門協(xié)助司機安全駕駛的輔助工具,即防酒后駕駛系統(tǒng)的裝置,避免司機出于不重視或自信而

3、酒后駕車引起的交通事故,該系統(tǒng)能通過高靈敏度的呼氣式酒精傳感器檢測司機的酒精攝入量,當司機體內酒精濃度超標時,控制系統(tǒng)會自動切斷汽車啟動系統(tǒng),使汽車無法正常啟動。可以在一定程度上有效預防發(fā)生酒后駕車的行為,減少交通事故的發(fā)生率。關鍵詞:汽車,酒后駕駛,單片機重慶科技學院高等教育自學考試本科畢業(yè)論文 英文摘要Anti drunk driving control system design based on MCUABSTRACTSince the reform and opening up, with the rapid development of society, economy and s

4、cience and technology have made great progress, people's living standard has been improved. The car entered the family, which replaces the speed of the bicycle, electric bicycle, people travel more convenient, comfortable, convenient, but the problem becomes more and more. In China wine culture

5、has a long history, between people more and more entertainment. However, drinking and driving is a pair of contradictions, after investigation around the world each year about 120 million people died of traffic accident, the injured as many as 50000000 people, the direct economic losses at the same

6、time, the global road traffic accidents caused by every year for 5180 billion dollars, most are drunken driving, in order to reduce traffic accidents the occurrence, the new traffic law severely punished for drunk driving drunk driving, but people do still occur, according to this phenomenon, it is

7、necessary to design a kind of auxiliary tool designed to assist the driver safe driving device, namely anti drunk driving system, avoid the driver for not emphasis or confidence and caused by drunk driving traffic accident, the system through the breath alcohol sensor with high sensitivity in the de

8、tection of driver alcohol intake, when alcohol concentration in vivo drivers exceed the standard, the control system will automatically cut off the car to start the system, so that the car will not start. Can effectively prevent the occurrence of drunk driving behavior to a certain extent, reduce th

9、e incidence of traffic accidents.Key words: The car, drink driving, single chip microcomputer重慶科技學院高等教育自學考試本科畢業(yè)論文 目 錄目 錄摘 要IABSTRACTII1 緒 論11.1 本課題研究內容11.2 本課題的目的和意義11.3國內外研究現(xiàn)狀分析22 總體設計方案42.1 系統(tǒng)總體功能概述42.2 系統(tǒng)硬件總體構架42.2 系統(tǒng)軟件總體構架53 系統(tǒng)的硬件設計63.1 單片機的選型63.2 酒精傳感器的選型83.3模數(shù)轉換芯片的選型93.4 信號放大電路113.5 時鐘電路123.6

10、復位電路133.7 數(shù)碼管顯示電路143.8 報警電路 163.9繼電器驅動電路設計174 系統(tǒng)的軟件設計184.1主程序模塊的設計184.2 控制子程序194.3數(shù)據(jù)采集及處理模塊204.4繼電器驅動子程序設計及流程圖214.5 原程序設計215系統(tǒng)軟硬件調試245.1仿真與編程軟件245.2 仿真電路圖及仿真結果256結論28致謝29參考文獻30論文原創(chuàng)性聲明311 緒 論1.1 本課題研究內容本研究設計的酒后駕駛智能閉鎖系統(tǒng),采用燃料電池型酒精傳感器,通過該酒精傳感器檢測駕駛員呼出氣體的酒精含量,判斷是否超過安全駕駛標準,而且要求通過硬件系統(tǒng)處理,能夠顯示該酒精濃度,使駕駛員能夠清楚的看

11、到已經飲酒過度,所以需要選擇一種顯示儀器來顯示駕駛員呼出氣體酒精濃度值,基于這種要求,本次設計選用LED顯示模塊。為了能夠警示駕駛員不要酒后駕駛,本系統(tǒng)中需要設計一種報警系統(tǒng),能夠在駕駛員欲酒后駕駛時,發(fā)出警告提示。該智能閉鎖系統(tǒng)的最主要功能是為了當檢測到司機呼出氣體內酒精濃度超標時,能夠自動切斷汽車引擎電源,所以需要一種執(zhí)行機構能夠自動的切斷汽車引擎電源,本次設計選用繼電器來達到這個目的,通過繼電器的動作來控制汽車引擎電源是否開啟。通過選用本方案中的元件,該智能閉鎖系統(tǒng)能夠通過快速檢測駕駛員呼出氣體的酒精濃度是否超標,通過單片機的放大、采集處理檢測駕駛員呼出氣體酒精含量是否超標,當檢測到駕駛

12、員飲酒過度時,能夠顯示酒精濃度值和報警提示不要酒后駕車,并快速切斷汽車引擎電源,停止啟動發(fā)動機。1.2 本課題的目的和意義近年來隨著經濟迅速發(fā)展,人們的生活水平日益提高,私家車也越來越多,各種應酬隨之而來,“酒”這東西貼近了我們的生活。而酒后駕車也頻頻發(fā)生,給人們的生活和生命安全帶來了巨大的傷害。自2003年以來,交通事故和死亡人數(shù)雖呈下降趨勢,但事故數(shù)和 死亡人數(shù)仍然很大,其中,2008年發(fā)生交通事故265204起,死亡73484人,與1978年相比,交通事故增長147.27%,死亡人數(shù)增長 284.81%。酒后和醉酒駕車肇事的情況,1998年,全國共發(fā)生5075起,造成2363人死亡。20

13、09年1至8月,共發(fā)生3206起,造成 1302人死亡,其中,酒后駕車肇事2162起,造成893人死亡;醉酒駕車肇事1044起,造成409人死亡。醉酒駕車犯罪呈多發(fā)、高發(fā)態(tài)勢,嚴重危害了廣大人民群眾的生命安全,已經成為引發(fā)交通事故的罪魁禍首。為了能夠有效的防止酒后駕駛造成的此類危害,研究一種酒后駕駛智能閉鎖系統(tǒng)是非常必要的,從而能夠強制性防止酒后駕車,降低交通事故的發(fā)生率。對于酒后駕車這種現(xiàn)象,各個國家都對酒后駕車執(zhí)行了嚴格的規(guī)定,但是還有很多人不能嚴格遵守這個規(guī)定,酒后駕車事件還是很頻繁,因此研究這種能夠自動防止酒后駕車的裝置更為必要。本研究設計的智能閉鎖系統(tǒng),能夠通過高敏度的呼氣式酒精傳感

14、器,通過檢測司機呼出氣體的酒精含量當檢測到司機呼出氣體內酒精含量超標時,能夠阻止駕駛員開啟汽車引擎,使汽車無法啟動,同時語音報警,提醒駕駛員“注意安全,不要酒后駕車”,從而有效減少交通事故的發(fā)生,提高我國道理安全水平,更好地保障我們的交通秩序,保護人們的出行安全,構建和諧的交通環(huán)境。創(chuàng)造人類的美好生活和社會的和諧1.3國內外研究現(xiàn)狀分析隨著自動化技術及檢測技術的日益成熟,人們開始研究將自動控制系統(tǒng)應用于汽車上。在我國也開始逐步采用科技手段防止酒后駕駛。青島盛源達電子科技有限公司最新研究開發(fā)、投入生產的“汽車酒后控駕防盜器”是國內新型高新技術。具有酒后報警控制駕駛和高級防盜雙重功能。香港一家公司

15、發(fā)明了一種名為 iKEY 的車鑰匙,能夠有效而方便地。這種鑰匙將感應器、遠程信息處理等技術整合在車鑰匙上,來防止醉酒駕駛。在國外最早開始研發(fā)針對酒后駕駛的酒精測試儀。1957年1月23日,世界上第一臺醉酒呼吸分析儀在瑞典首次投入使用,它可以當場直接測試。它能檢測出司機呼出氣體中的酒精含量,并將這一結果顯示于儀器的顯示屏上。交警據(jù)此判斷該司機是否酒后駕駛。英國布里斯托爾大學生理學家霍爾瓦特設計了一種高智能座駕,其上裝有一套名為“個人警察”的監(jiān)察系統(tǒng),由紅外線攝像機、感應器和帶有電腦分析功能的“小黑箱”組成。通過“小黑箱”攝像機錄制的司機眼球活動情況以及感應器偵察到的方向盤扭轉

16、動作集中起來進行分析,從分析方向盤轉動情況儀器中獲得的信息與從掃描司機瞳孔移動裝置獲得的信息發(fā)生聯(lián)系并進行比較,以此來判斷司機是否酒后駕駛。市場需求是決定汽車發(fā)展的主要動力,根據(jù)目前的市場需求來看,在防酒后駕駛控制技術方面還比較少,主要以指紋式酒后禁駕系統(tǒng)為主,指紋式酒后禁駕系統(tǒng)利用了人類指紋的唯一性,從源頭上徹底制止酒后駕駛的行為,并且運用全球領先的手指汗液酒精檢測手段,防止呼氣檢測時的相互污染,設計更加人性化,同時不受車內環(huán)境、他人因素的干擾,檢測結果更加準確。該系統(tǒng)同時具有指紋啟動、指紋防盜等功能,系統(tǒng)可同時授權司機親友代駕指紋,但只要被授權者飲酒就同樣會被禁駕。處于國際日本三大汽車制造

17、商豐田、本田、日產,日產汽車公司在防止酒后駕駛的技術上做出了一系列努力,近日又推出一款新的車,應用了可以預防酒后駕駛的技術,防酒后駕駛控制技術可以有效測試司機的酒精濃度,采用多種預防措施防止酒后駕駛,并在危險時刻對汽車采取緊急制動,從而大幅度減少酒后駕駛引發(fā)的交通事故。有以下幾個趨勢:趨勢一:使用酒精氣味傳感器檢測車內空氣。日產概念車的變速器擋把處設置了一個高靈敏度的酒精氣味傳感器,它可以在駕駛員啟動汽車時,測試駕駛員手掌分泌的汗液。當汗液酒精濃度指標超過預先設定的峰值時,系統(tǒng)會自動停止工作,使汽車無法啟動,同時汽車導航系統(tǒng)會發(fā)出“酒后駕駛”的警報音。趨勢二:監(jiān)控駕駛員面部表情。日產概念車在儀

18、表盤下方安裝了一部微型攝像機,用來監(jiān)測司機的面部表情。一旦系統(tǒng)通過攝像機發(fā)現(xiàn)司機非常困倦、有持續(xù)合眼現(xiàn)象,汽車導航系統(tǒng)就會發(fā)出警報音和提示語。同時,座椅安全帶預收緊裝置會啟動,縮緊司機的安全帶來提醒困倦的駕駛員。趨勢三:監(jiān)測駕駛員駕駛行為。通過持續(xù)監(jiān)測司機的駕駛行為,系統(tǒng)可以識別司機分心走神的種種跡象。當系統(tǒng)監(jiān)測到類似的行為時,汽車的自動導航系統(tǒng)會發(fā)出警報音和提示語,座椅安全帶預收緊裝置也會立刻收緊安全帶提醒司機注意安全。重慶科技學院高等教育自學考試本科畢業(yè)論文 2 總體設計方案2 總體設計方案根據(jù)任務書的要求,利用單片機設計一個防酒后駕駛控制系統(tǒng)主要分為兩部分組成:硬件設計和軟件設計。2.1

19、 系統(tǒng)總體功能概述為了滿足汽車市場的需要和給客戶提供一個安全保險的防酒后駕駛控制系統(tǒng),本設計綜合運用了單片機技術、傳感器采集技術、控制技術等來實現(xiàn)對司機的酒精濃度進行測量和控制汽車啟動功能。本系統(tǒng)要實現(xiàn)的具體功能為: 能通過高靈敏度的呼氣式酒精傳感器檢測司機的酒精攝入量,當司機體內酒精濃度超標時,控制系統(tǒng)會自動切斷汽車啟動系統(tǒng),使汽車無法正常啟動。系統(tǒng)可顯示司機攝入的酒精濃度,并具有實時監(jiān)測和光電、語音報警功能??傊?,本設計應該具有防酒后駕駛控制系統(tǒng)的基本功能,對防酒后駕駛控制系統(tǒng)的相關技術進行很好的研究和應用,符合防酒后駕駛控制系統(tǒng)的技術發(fā)展趨勢。2.2 系統(tǒng)硬件總體構架本系統(tǒng)主要由電源模塊

20、、酒精傳感器、AT89系列單片機、模數(shù)轉換模塊、LED顯示模塊、報警模塊、繼電器驅動模塊等組成,其功能模塊如圖2-1所示:顯示電路語音報警電路單片機系統(tǒng)A/D轉換信號放大控制電路酒精傳感器電源供電引擎電源圖2.1 系統(tǒng)硬件總體構架其主要任務是采集酒精傳感器的輸出電壓信號,放大后經過ADC0809模數(shù)轉換和AT89C52單片機處理,當檢測到酒精濃度超過標定值時,能夠通過LED顯示傳感器的輸出電壓值,并通過報警模塊和驅動繼電器動作,切斷汽車引擎電源。2.2 系統(tǒng)軟件總體構架本次設計采用模塊式的程序編寫思路,這樣會使整個程序脈絡清晰,易于理解分析。軟件總體設計思路:主程序主要包括傳感器輸入、數(shù)據(jù)采集

21、、數(shù)據(jù)處理、報警、驅動等子程序總體構架如圖2.2所示:主模塊數(shù)據(jù)采集模塊子程序模塊報警模塊顯示模塊圖2.2 系統(tǒng)軟件總體構架單片機控制器主要功能是驅動繼電器動作從而控制電機的啟動;數(shù)據(jù)采集程序主要將接受到的數(shù)據(jù)送到A/D轉換器中處理,進而將數(shù)字信號輸入到單片機中;然后,一部分送去LED顯示,另外一部分與設定值進行比較,當其超過標定值時,語音報警器提示駕駛員開車危險,使其提高警惕,同時控制繼電器的動作,使汽車引擎不能啟動。該系統(tǒng)設計采用C語言編程。 3 系統(tǒng)的硬件設計3.1 單片機的選型AT89C52是一個低電壓,高性能CMOS8位單片機,片內含8k bytes的可反復擦寫的Flash只讀程序存

22、儲器和256 bytes的隨機存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統(tǒng),片內置通用8位中央處理器和Flash存儲單元,AT89C52單片機在電子行業(yè)中有著廣泛的應用。AT89C52的主要功能特性有:兼容MCS51指令系統(tǒng),8k可反復擦寫(>1000次)Flash ROM ,32個雙向I/O口,256x8bit內部RAM,3個16位可編程定時/計數(shù)器中斷,時鐘頻率0-24MHz,2個串行中斷,可編程UART串行通道, 2個外部中斷源,共8個中斷源,2個讀寫中斷口線,3級加密位,低功耗空閑和掉電模式 ,軟件設置睡眠和喚醒功能

23、。而在本次設計中只需要用到最基本的4個輸入輸出I/O口功能。通過匯編或是C語言編程,可以用指令對單片機的各輸入輸出進行控制,還可以進行各種基本運算。AT89C52單片機引腳圖如圖3.1所示:圖3.1 系統(tǒng)硬件總體構架P0 口:P0 口是一組8 位漏極開路型雙向I/O 口, 也即地址/數(shù)據(jù)總線復用口。作為輸出口用時,每位能吸收電流的方式驅動8 個TTL邏輯門電路,對端口P0 寫“1”時,可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉換地址(低8 位)和數(shù)據(jù)總線復用,在訪問期間激活內部上拉電阻。在Flash 編程時,P0 口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗

24、時,要求外接上拉電阻。 P1 口:P1 是一個帶內部上拉電阻的8 位雙向I/O 口,P1的輸出緩沖級可驅動(吸收或輸出電流)4 個TTL 邏輯門電路。對端口寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。P2 口:P2 是一個帶有內部上拉電阻的8 位雙向I/O 口,P2 的輸出緩沖級可驅動(吸收或輸出電流)4 個TTL 邏輯門電路。對端口P2 寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。在

25、訪問外部程序存儲器或16 位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX DPTR 指令)時,P2 口送出高8 位地址數(shù)據(jù)。在訪問8 位地址的外部數(shù)據(jù)存儲器(如執(zhí)行MOVX RI 指令)時,P2 口輸出P2 鎖存器的內容。Flash 編程或校驗時,P2亦接收高位地址和一些控制信號。 P3 口:P3 口是一組帶有內部上拉電阻的8 位雙向I/O 口。P3 口輸出緩沖級可驅動(吸收或輸出電流)4 個TTL 邏輯門電路。對P3 口寫入“1”時,它們被內部上拉電阻拉高并可作為輸入端口。此時,被外部拉低的P3 口將用上拉電阻輸出電流(IIL)。P3 口除了作為一般的I/O 口線外,更重要的用途是它的第二功能 。

26、P3 口還接收一些用于Flash 閃速存儲器編程和程序校驗的控制信號。 RST:復位輸入。當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上高電平將使單片機復位。 ALE/PROG:當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8 位字節(jié)。一般情況下,ALE 仍以時鐘振蕩頻率的1/6 輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE 脈沖。對Flash 存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH 單元的D0 位置位,可禁止ALE 操作。該

27、位置位后,只有一條 MOVX 和MOVC指令才能將ALE 激活。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應設置ALE 禁止位無效。 PSEN:程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當AT89C52 由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN 有效,即輸出兩個脈沖。在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。 EA/VPP:外部訪問允許。欲使CPU 僅訪問外部程序存儲器(地址為0000HFFFFH),EA 端必須保持低電平(接地)。需注意的是:如果加密位LB1 被編程,復位時內部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU 則

28、執(zhí)行內部程序存儲器中的指令。 Flash 存儲器編程時,該引腳加上+12V 的編程允許電源Vpp,當然這必須是該器件是使用12V 編程電壓Vpp。 XTAL1:振蕩器反相放大器的及內部時鐘發(fā)生器的輸入端。 XTAL2:振蕩器反相放大器的輸出端。特殊功能寄存器:在AT89C52 片內存儲器中,80H-FFH 共128 個單元為特殊功能寄存器(SFE),并非所有的地址都被定義,從80HFFH 共128 個字節(jié)只有一部分被定義,還有相當一部分沒有定義。對沒有定義的單元讀寫將是無效的,讀出的數(shù)值將不確定,而寫入的數(shù)據(jù)也將丟失。不應將數(shù)據(jù)“1”寫入未定義的單元,由于這些單元在將來的產品中可能賦予新的功能

29、,在這種情況下,復位后這些單元數(shù)值總是“0”。 AT89C52除了與AT89C51所有的定時/計數(shù)器0 和定時/計數(shù)器1 外,還增加了一個定時/計數(shù)器2。定時/計數(shù)器2 的控制和狀態(tài)位位于T2CON,T2MOD,寄存器對(RCAO2H、RCAP2L)是定時器2 在16 位捕獲方式或16 位自動重裝載方式下的捕獲/自動重裝載寄存器。數(shù)據(jù)存儲器:AT89C52 有256 個字節(jié)的內部RAM,80H-FFH 高128 個字節(jié)與特殊功能寄存器(SFR)地址是重疊的,也就是高128字節(jié)的RAM 和特殊功能寄存器的地址是相同的,但物理上它們是分開的。當一條指令訪問7FH 以上的內部地址單元時,指令中使用的

30、尋址方式是不同的,也即尋址方式決定是訪問高128 字節(jié)RAM 還是訪問特殊功能寄存器。如果指令是直接尋址方式則為訪問特殊功能寄存器。 3.2 酒精傳感器的選型MQ-3氣體傳感器所使用的氣敏材料是在清潔空氣中電導率較低的二氧化錫(SnO2)。當傳感器所處環(huán)境中存在酒精蒸汽時,傳感器的電導率隨空氣中酒精氣體濃度的增加而增大。使用簡單的電路即可將電導率的變化轉換為與該氣體濃度相對應的輸出信號有著快速的響應恢復特性。MQ-3氣體傳感器對酒精的靈敏度高,可以抵抗汽油、煙霧、水蒸氣的干擾。對乙醇蒸汽有很高的靈敏度和良好的選擇性長期的壽命和可靠的穩(wěn)定性。這種傳感器可檢測多種濃度酒精氣氛,是一款適合多種應用的

31、低成本傳感器。常常用于機動車駕駛人員及其他嚴禁酒后作業(yè)人員的現(xiàn)場檢測;也用于其他場所乙醇蒸汽的檢測。MQ-3氣敏元件有6只針狀管腳,其中(兩個A兩個B)個用于信號取出,2個H腳用于提供加熱電流。其中最主要的是R2的選擇,當R2的阻值為200k的時候可能輸出的電壓值已經達到了最大,于是不能正確顯示我們所要的結果,所以在調試的時候,將R2用滑動變阻器代替,一般將輸出電壓調在VDD/2周圍即可。MQ-3酒精檢測電路如3-2所示:圖3.2 MQ-3酒精檢測電路3.3模數(shù)轉換芯片的選型ADC0809是帶有8位A/D轉換器、8路多路開關以及微處理機兼容的控制邏輯的CMOS組件。它是逐次逼近式A/D轉換器,

32、可以和單片機直接接口。 (1)ADC0809的內部邏輯結構ADC0809由一個8路模擬開關、一個地址鎖存與譯碼器、一個A/D轉換器和一個三態(tài)輸出鎖存器組成。多路開關可選通8個模擬通道,允許8路模擬量分時輸入,共用A/D轉換器進行轉換。三態(tài)輸出鎖器用于鎖存A/D轉換完的數(shù)字量,當OE端為高電平時,才可以從三態(tài)輸出鎖存器取走轉換完的數(shù)據(jù)。該八位轉換芯片,是把基準電壓量化成256等份,然后通過逐次逼近法,對外部的模擬信號進行取樣比較,確定其所在的等級,即所對應的8位二進制數(shù)的大小。由此可知,8位轉換芯片的精確度為基準電壓除以256的值,如接5V基準電壓時,精確度約為0.020V。 ADC0809的內

33、部邏輯結構如圖3-3所示:圖3.3 ADC0809的內部邏輯結構(2) ADC0809引腳結構圖3.4 ADC0809的引腳圖ADC0809應用說明:(1) ADC0809內部帶有輸出鎖存器,可以與AT89S51單片機直接相連。(2) 初始化時,使ST和OE信號全為低電平。(3) 送要轉換的哪一通道的地址到A,B,C端口上。(4) 在ST端給出一個至少有100ns寬的正脈沖信號。(5) 是否轉換完畢,我們根據(jù)EOC信號來判斷。(6) 當EOC變?yōu)楦唠娖綍r,這時給OE為高電平,轉換的數(shù)據(jù)就輸出給單片機了。ADC0809 是一個典型的8 位8 通道逐次逼近式數(shù)模轉換芯片,可實現(xiàn)8 路模擬信號的分時

34、采集,外接時鐘頻率一般不高于640 KHz,一次數(shù)據(jù)轉換時間大約為100 s。ADC0809數(shù)據(jù)采集方式有3 種:延時,查詢,中斷。它們在電路連接和程序編寫中都有所不同。A/D轉換電路設計如下圖:圖3.5 A/D轉換電路圖3.4 信號放大電路本次選用的酒精傳感器為燃料電池型酒精傳感器,該燃料電池型酒精傳感器基于電化學原理制備而成,電路僅需要電池就可以滿足其工作。傳感器輸出為模擬電壓信號,首先通過儀表放大器LM339放大,最后把已放大的模擬電壓信號傳輸至ADC0809的輸入端進行模數(shù)轉換(A/D)。儀表放大器選用的是LM339,LM339集成塊內部裝有四個獨立的電壓比較器,該電壓比較器的特點是:

35、(1) 失調電壓小,典型值為2mV;(2)電源電壓范圍寬,單電源為2-36V,雙電源電壓為±1V-±18V;(3) 對比較信號源的內阻限制較寬;(4)共模范圍很大,為0(Ucc-1.5V)Vo;(5)差動輸入電壓范圍較大,大到可以等于電源電壓;(6)輸出端電位可靈活方便地選用。 LM339集成塊采用C-14型封裝,圖3.3為外型及管腳排列圖。由于LM339使用靈活,應用廣泛,所以世界上各大IC生產廠、公司竟相推出自己的四比較器,如IR2339、ANI339、SF339等,它們的參數(shù)基本一致,可互換使用。圖3.6 LM339外型及管腳排列圖LM339類似于增益不可調的運算放大

36、器。每個比較器有兩個輸入端和一個輸出端。兩個輸入端一個稱為同相輸入端,用“+”表示,另一個稱為反相輸入端,用“-”表示。用作比較兩個電壓時,任意一個輸入端加一個固定電壓做參考電壓(也稱為門限電平,它可選擇LM339輸入共模范圍的任何一點),另一端加一個待比較的信號電壓。當“+”端電壓高于“-”端時,輸出管截止,相當于輸出端開路。當“-”端電壓高于“+”端時,輸出管飽和,相當于輸出端接低電位。兩個輸入端電壓差別大于10mV就能確保輸出能從一種狀態(tài)可靠地轉換到另一種狀態(tài),因此,把LM339用在弱信號檢測等場合是比較理想的。LM339的輸出端相當于一只不接集電極電阻的晶體三極管,在使用時輸出端到正電

37、源一般須接一只電阻(稱為上拉電阻,選3-15K)。選不同阻值的上拉電阻會影響輸出端高電位的值。因為當輸出晶體三極管截止時,它的集電極電壓基本上取決于上拉電阻與負載的值。另外,各比較器的輸出端允許連接在一起使用。本設計中采用電位器模擬經酒精傳感器轉換的電壓信號再經過放大器的輸入信號。3.5 時鐘電路對于時鐘電路:AT89C52單片機中有一個用于構成內部振蕩器的高增益反相放大器,引腳19對應的XTAL1和18對應的XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構成自己振蕩器。如下圖3-3所示,石英晶體及電容C2和C3接在放大器的反饋回路中構成并聯(lián)諧

38、振電路。石英晶體的兩端分別接到引腳XTAL1和引腳XTAL2,同時石英晶體的兩端分別接一個電容C2和C3,電容的另一端接地。對于外接電容C2和C3的大小雖然沒有十分嚴格的要求,但電容容量的大小還是會對振動頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程度和溫度穩(wěn)定性帶來一定的影響。根據(jù)技術資料的推薦,使用石英晶體推薦電容容量為30pF±10pF,使用陶瓷諧振器推薦電容容量為40pF±10pF。因為電路中接的是石英晶體,所以設計中接的兩個電容C2和C3的容量都為33pF。圖3.7時鐘電路3.6 復位電路單片機在啟動運行時都要復位,使中央處理器和系統(tǒng)中的其他部件都處于一個確定的初始

39、狀態(tài),并從這狀態(tài)開始工作。AT89C52技術資料給出,當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上的高電平將使單片機復位。復位是單片機的初始化操作,當由于程序運行出錯或是操作錯誤使系統(tǒng)處于死鎖狀態(tài)時,為了擺脫困境,可以按復位鍵以重新啟動,所以復位電路的設計很有必要,復位操作有上電自動復位、按鍵電平復位和外部脈沖復位三種方式,本設計選用按鍵電平復位方式。如下圖所示,10uF的電容C4與270歐姆的電阻并聯(lián)后再與一個1千歐姆的電阻串聯(lián),電容的正極端接到電源的正極,電容的另一端接到引腳RST。設計中選用的石英晶體大小為11.0952MHz,但復位鍵按下后,電容和電阻選用的參數(shù)值能夠保證給復位端RS

40、T提供大于2個機器周期的高電平復位信號。圖3.8 復位電路圖3.7 數(shù)碼管顯示電路(1)八段數(shù)碼管八段數(shù)碼管比七段數(shù)碼管多路一位小數(shù)點,實際是8個LED擺放排列而成。當特定的某幾個數(shù)碼管點亮時,就顯示了特定的數(shù)字形狀。有共陽極和共陰極之分,共陽極是指8個輸入端a、b、c、d、e、f、g、dp要輸入低電平才會是相應LED點亮,共陰極則須輸入高電平。本次設計用的是共陽極的數(shù)碼管。下圖是其結構原理圖。圖3.9 8段共陰數(shù)碼管結構圖(2)74LS47譯碼芯片74LS47是常用的BCD對七段顯示器譯碼器/驅動器,可對共陽極七段數(shù)碼管進行譯碼功能。如當輸入DCBA=0010 則輸出abcdefg=0010

41、010。故使顯示器顯示"2"。其四位BCD碼與對應的譯碼及數(shù)碼管顯示關系為:DCBA=0000,abcdefg=1000000,數(shù)碼管顯示0;DCBA=0001,abcdefg=1111001,數(shù)碼管顯示1;DCBA=0010,abcdefg=0100100,數(shù)碼管顯示2;DCBA=0011,abcdefg=0110000,數(shù)碼管顯示3;DCBA=0100,abcdefg=0011001,數(shù)碼管顯示4;DCBA=0101,abcdefg=0010010,數(shù)碼管顯示5;DCBA=0110,abcdefg=0000011,數(shù)碼管顯示6;DCBA=0111,abcdefg=111

42、1000,數(shù)碼管顯示7;DCBA=1000,abcdefg=0000000,數(shù)碼管顯示8;DCBA=1001,abcdefg=0011000,數(shù)碼管顯示9;3.10數(shù)碼管顯示電路3.8 報警電路 在微機控制系統(tǒng)中,為了生產的安全,對于一些重要的參數(shù)或系統(tǒng)的部件,都設有緊急狀態(tài)報警系統(tǒng),以便提醒司機注意,或采取緊急措施。其方法就是把傳感器采集的數(shù)據(jù)并進行數(shù)據(jù)處理、數(shù)字濾波,A/D轉換之后,與該參數(shù)上限定的數(shù)值進行比較,如果高于上限值,則進行報警。 本課題中由AT89C52單片機的P2.1口檢測到人體內血液酒精濃度超過0.2g/L,即呼出氣體中酒精含量為47.43ppm時,將控制報警器發(fā)出提醒安全

43、指示,如圖3-11所示:圖3.11報警電路圖3.9繼電器驅動電路設計當檢測到人體內血液濃度超過標定值時,如果駕駛員有意向開啟汽車鑰匙(電路里面用按鈕表示),那么酒后駕駛智能閉鎖系統(tǒng)將驅動繼電器動作(電路設計中由單片機的P2.5口控制繼電器),切斷汽車引擎電源,從而使汽車無法啟動,從而有效的防止駕駛員酒后駕車。本課題使用HRS2H-S-DC5V小功率電磁繼電器,額定電壓3V24V,額定電力消耗200mW360mW。繼電器驅動電路如圖3-12所示 3.12 繼電器控制電路 4 系統(tǒng)的軟件設計4.1主程序模塊的設計系統(tǒng)電源線接通或是系統(tǒng)復位后,程序從主程序入口進入運行。然后初始化,初始化程序從數(shù)據(jù)存

44、儲器地址20H單元開始,到80H單元全部清零,即每次的初始化將上次存儲的數(shù)據(jù)全部清除,用于存放當前要存儲的數(shù)據(jù)。見圖4.1所示:開始程序初始化調節(jié)電位器A/D轉換線性化處理放大器放大處理是否超過報警限度電壓值顯示報警處理驅動繼電器斷開啟動機電源圖4.1 主程序模塊圖當檢測到酒精氣味時,氣體傳感器MQ_3兩個電極段A-B間的電阻將變小,對應于氣體傳感器負載電阻的分壓將變大。因為ADC0809的模擬輸入端INO與負載電阻的一端用導線連在了一起。所以單片機再啟動測試模數(shù)轉換芯片之前要選擇通道0,寫入模數(shù)轉換芯片,并將用作查詢的單片機引腳P1.5置位,然后啟動對通道INO端輸入的采集電壓信號作模數(shù)轉換

45、,等待轉換結束。利用查詢方式來檢測模數(shù)轉換是否結束,當單片機引腳P1.5為0時轉換為結束等待,當查詢到P1.5為1時表示轉換結束,可以開始讀取數(shù)據(jù)了。單片機通過I/O口與模數(shù)轉換芯片的數(shù)據(jù)輸出口相連讀取轉換后的數(shù)據(jù)。經過轉換后的數(shù)字信號和標定值進行比較,若小于標定值,執(zhí)行繼電器的動作,即驅動繼電器、啟動電機,然后繼續(xù)對酒精傳感器進行數(shù)據(jù)采集;若大于標定值,不執(zhí)行繼電器動作,繼續(xù)對傳感器信號進行采集,同時,語音、光電報警器提示駕駛員。讀取后的數(shù)據(jù)送到數(shù)據(jù)存儲器單元中,經過單片機動作相應的處理,即要將該電壓值轉換成酒精濃度值,然后處理后的數(shù)據(jù)轉換成三位十進制BCD碼用數(shù)碼管顯示。4.2 控制子程序

46、本系統(tǒng)采用的是繼電器直接與單片機的P2.5相接,正常情況下只要置位P2.5繼電器就會正常工作。因為機械開關時有抖動,所以需要在程序中加一個軟件去抖動,當單片機檢測到酒精濃度值不大于標定值時繼電器閉合汽車可以正常啟動然后立即執(zhí)行一個10毫秒的延時程序。當單片機檢測到的酒精濃度值大于標定值時不能正常點火延時10秒程序返回??刂瞥绦蛄鞒倘鐖D4.2所示:圖4.2 控制子程序流程圖4.3數(shù)據(jù)采集及處理模塊對模擬電壓信號的數(shù)字轉換由模數(shù)轉換芯片ADC0809加單片機AT89C52控制來完成。模擬電壓的輸入端接在模數(shù)轉換芯片的IN0通道,再根據(jù)單片機與模數(shù)轉換芯片的連接,然后進行數(shù)據(jù)采樣,將10次采樣的數(shù)據(jù)

47、存放在50H到5AH單元中,采樣子程序結束后對所采樣的10個數(shù)據(jù)進行了中值平均濾波的方法,中值平均濾波的方法是把一組數(shù)據(jù)從大到小排列,然后把最小值和最大值去掉,其它的數(shù)值取算術平均值即為濾波后的結果。這種方法即能濾除脈沖干擾,又能平滑濾波,對快、慢干擾均有效果,而且還可以提高系統(tǒng)的穩(wěn)定性和抗干擾性能力。如圖4.3所示: 圖4.3 數(shù)據(jù)采集及處理子程序4.4繼電器驅動子程序設計及流程圖當人體呼出氣體中酒精濃度超標時,如果駕駛員用鑰匙開啟汽車,與汽車引擎相連的繼電器將斷開汽車引擎電源,使汽車無法啟動;如果人體呼出的酒精氣體濃度不超標,汽車引擎正常啟動,不影響駕駛員駕駛汽車。首先單片機檢測處理酒精傳

48、感器輸出電壓,然后處理判斷是否超標,當超標時,如果駕駛員手動開啟汽車鑰匙,繼電器將切斷汽車引擎電源。其繼電器驅動子程序如圖4.4所示: 圖4.4 繼電器驅動子程序4.5 原程序設計#include<reg52.h>#define ui unsigned intsbit U4_OE=P34;/對各控制引腳進行定義;sbit U4_EOC=P35;sbit U4_ALE=P36;sbit U4_START=P37;sbit U3=P20;sbit R5=P21;void delay(ui x) /延時子程序,延時時間由實參傳值確定;ui i;while(x-)for(i=0;i<

49、10;i+) ;/主程序;void main()void display5in0(ui zhi);/各個子程序的聲明,延時程序在前則不必;void warning();void AD_IN0();ui aa;U3=1;R5=1;while(1) /設置大循環(huán),模數(shù)轉換不停進行; AD_IN0(); /調用通道0轉換子程序; aa=P0; /將轉換后的數(shù)字量給變量aa; if(aa=0xff) /判斷是否超出量程; warning();/超出則調用警告子程序; else display5in0(aa); /*調用通道0的5V顯示子程序;*/ /5V量程通道0顯示程序;void display5i

50、n0(ui zhi)ui shu1,shu2;shu2=zhi/51; /對數(shù)字量除以256,再乘以量程5,則為顯示值的個位; shu1=zhi%51;/求上次運算的余數(shù);shu1=shu1/5;/余數(shù)乘以10,乘以5,再除以256,表示小數(shù)點位;if(shu2>2|(shu2=2&&shu1>=4) U3=0; R5=0; else U3=1;R5=1;shu2=shu2+0x20;/個位和片選信號相加,0x20是二進制0010 0000,對低四位BCD數(shù)據(jù)值不影響,即P1.5選中一片數(shù)碼管點亮,方便的shu1=shu1+0x10; /四位BCD值加上片選信號,0

51、x10選擇P1.4對應數(shù)碼管;P1=shu2; /點亮一片數(shù)碼管,顯示個位數(shù)值,其它均關閉; delay(1);/稍加延時,1毫秒以內; P1=shu1;/點亮另一片數(shù)碼管,顯示小數(shù)位數(shù)值,其它的關閉; delay(1);/稍加延時;/超出量程警告程序,若判斷超出量程,數(shù)碼管顯示零并閃爍;void warning() P1=0xf0;delay(3000); P1=0xff; delay(3000);/通道0轉換程序void AD_IN0() P3=0;/通道0地址 U4_ALE=1; U4_ALE=0;/地址所存;U4_START=1;/啟動轉換;U4_START=0; while(U4_EOC!=1) /判斷轉換是否完成; ;/未完成則等待;U4_OE=1;/完成則輸出數(shù)字量;5系統(tǒng)軟硬件調試5.1仿真與編程軟件本次設計首先用KeilC51進行編程開發(fā),然后通過Protues軟件進行仿真調試,最后根據(jù)調試得出應有的結果。(1) Keil C51開發(fā)系統(tǒng)是美國Keil Software公司出品的Keil C51,是51系列兼容單片機C語言軟件開發(fā)系統(tǒng)。 Keil C51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調試工具,全Windows界面。另外重要的一點,Keil C51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能 體現(xiàn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論