汽車駕駛員酒精濃度監控系統設計說明_第1頁
汽車駕駛員酒精濃度監控系統設計說明_第2頁
汽車駕駛員酒精濃度監控系統設計說明_第3頁
汽車駕駛員酒精濃度監控系統設計說明_第4頁
汽車駕駛員酒精濃度監控系統設計說明_第5頁
已閱讀5頁,還剩42頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、 . .PAGE47 / NUMPAGES47前 言隨著電子技術的迅速發展,特別是隨大規模集成電路產生而出現的微型計算機,給人類生活帶來了根本性的改變。如果說微型計算機的出現使現代科學研究得到了質的飛躍,那么可以毫不夸他說,單片機技術的出現則是給現代工業測控領域帶來了一次新的技術革命。目前,單片機以其高可靠性、高性能價格比,在工業控制系統、數據采集系統、智能化儀器儀表、辦公自動化等諸多領域得到極為廣泛的應用,并已走人家庭,從洗衣機、微波爐到音響、汽車,到處都可見到單片機的蹤影。因此,單片機技術開發和應用水平已逐步成為一個國家工業發展水平的標志之一。我國傳感器市場的增長率超過15%,2003年銷

2、售額為186億元人民幣,2006年銷售額為283億元人民幣,預計2007年為325億元人民幣,2008年為374億元人民幣。我國傳感器4大類中,工業和汽車電子產品占市場份額的33.5%。近年來,傳感器正處于傳統型向新型傳感器轉型的發展階段,新型傳感器的特點是微型化、數字化、智能化、多功能化、系統化、網絡化,它將不僅促進系統產業的改造,而且可導致建立新型工業和軍事變革,是21世紀新的經濟增長點。隨著汽車工業的發展,汽車肇事越來越受到各國的重視,在世界各國交通事故的法醫調查研究中,酒后駕駛是導致交通事故的重要原因。雖然各國對酒后駕車執行了嚴格的規定,但酒后駕車仍然具有一定的普遍性。針對這種現象,本

3、文設計一種基于MCS51單片機的控制系統,通過高靈敏度的呼氣式酒精傳感器檢測司機的酒精攝入量。當司機體酒精含量超標時,控制系統會自動切斷汽車啟動系統,使汽車無常啟動。從而更好的保障交通秩序和人們的出行安全。構建和諧的交通環境。1 緒論1.1 課題來源來源于生產/社會實際1.2 研究的目的、意義、應解決的主要問題大學四年學了許多關于硬件的課程,像電路學、電子技術,但是多半是理論性的居多,實際上做電路的只有電工電子實驗課上才有,而且幾乎都涉與不到日程生活中的應用。本次畢業論文課題恰好提供了一次機會可以讓我學以致用,加上我們學習了8051單片機的基礎知識,因此我便朝著這個方向前進。但由于我們是主攻硬

4、件方面的知識,在計算機軟件方面還得學習很多跟課題相關的知識。隨著汽車工業的發展,汽車肇事越來越受到各國的重視,在世界各國交通事故的法醫調查研究中,酒后駕駛是導致交通事故的重要原因。雖然各國對酒后駕車執行了嚴格的規定,但酒后駕車仍然具有一定的普遍性。針對這種現象,本設計基于80C51單片機設計的酒精氣體濃度探測儀,可用來檢測酒精氣體濃度,最主要的用途是檢測司機的酒精含量。酒后駕車發生事故的機率高達27%。隨著攝入酒精量的增加,選擇反應錯誤率顯著增加,當血液中酒精含量由0.5增至1,發生車禍的可能性便增加5倍,如果增至1.5,可能性再增加6倍。機動車駕駛人員“酒后駕車” 與“醉酒駕車”極易發生道路

5、交通事故, 嚴重危害了道路交通安全和人民生命財產安全。人飲酒后, 酒精通過消化系統被人體吸收, 經過血液循環, 約有90%的酒精通過肺部呼氣排出, 因此測量呼氣中的酒精含量, 就可判斷其醉酒程度。開車司機只要將嘴對著傳感頭使勁吹氣,儀器就能發上顯示出酒精濃度的高低,從而判斷該司機是否酒后駕車,避免事故的發生。當然,最好的辦法是在車安裝這種測試儀,司機一進入車檢測儀就檢測司機的酒精含量,如果超出允許值,系統控制引擎無法啟動,這樣就可從根本上解決酒后駕車問題。 酒精氣體濃度探測儀在生產生活中也有重要的應用,比如,在一些環境要求嚴格的生產車間,用這種酒精濃度探測儀,可隨時檢測車間的酒精氣體濃度,當酒

6、精氣體濃度高于允許限定值時,發出警報,提醒人們與時通風換氣,做到安全生產。1.3 國外發展現狀、發展趨勢與面臨挑戰日產汽車公司日前對外宣布,一款新的概念車應用了可以預防酒后駕駛的技術,這項技術可以數倍減少酒后駕駛引發的交通事故。該技術可以有效測試司機的清醒程度,采用多種預防措施防止酒后駕駛,并在危險時刻對汽車采取緊急制動。概念車在司機和乘客的座位上也安裝了酒精氣味傳感器,用來監測汽車座艙空氣中的酒精含量。當酒精氣味被傳感器探測到時,導航系統也會發出“酒后駕駛”的警報音,導航系統顯示屏同時自動顯示“不要酒后駕駛!”的文字提示。為了取得“安全駕駛環境”,日產汽車對大量交通事故信息進行了采集分析。日

7、產汽車公司在防止酒后駕駛的技術上做出了一系列努力。今年6月,日產提出自動導航系統開啟提醒司機“不要酒后駕駛”的信息警報。7月,日產汽車公司再次與地方政府合作測試一種新型呼氣測醉器,該裝置用檢查呼吸的手段發現駕駛員血液酒精含量是否超標,并通過緊急制動裝置阻止酒后駕車人啟動汽車。目前日產汽車已經開始著手啟動智能傳輸系統項目,目的是為了更有效地減少交通事故。日產汽車計劃到2015年在日本用于車輛交通事故的保險賠付比1995年減少一半。國目前也有很多汽車廠商著手研究該產品,使用該產品的機動車,一旦駕駛員酒后操作,系統將自動發出警示,首先是報警鈴響提示,然后在液晶顯示屏上自動顯示“嚴禁駕駛”字樣,并有“

8、為了你和他人的幸福,請不要開車”等語音提示;如駕駛員一意孤行仍要開車,該產品的終端控制系統將發揮作用,使機動車斷電,無法啟動;直到酒精含量減少到測試標準之下,該系統則解除強制監控,自動恢復機動車行駛功能。前景:像安全帶一樣普與。1.4 設計方案本文以80C51單片機為核心,設計了用于測量酒精濃度的探測儀,主要研究工作包括以下3個方面。(1)硬件電路方面,對氣體傳感器MQ-3按檢測電路,接上一定阻值的負載電阻,檢測它的技術參數,確定MQ-3所接負載電阻的大小,完成信號采樣電路的設計;采樣到的模擬電壓電信號通過A/D轉換,得到可供單片機處理的數字信號,再由單片機作相應的數據處理, 控制汽車點火器打

9、開或者關閉;發光二極管報警顯示和3個單位8段共陰數碼管濃度值顯示。(2)軟件方面,標準的確定是該部分要做的主要工作。因為原始的采樣值是一個間接的負載分壓值,需要將它轉化為被測酒精濃度值。通過多個樣品的測量確定多個濃度區間的轉換標準,并將每個區間的轉換關系近似線性化處理,然后通過軟件編程的方法來實現。(3)為了盡量減少設計的氣體傳感器的測量誤差,在測量酒精溶液樣品時要考慮并解決3個主要問題。一是外界環境流動空氣對傳感器的影響和對氣體樣品的稀釋,二是樣品的穩定性對測量帶來的誤差,三是水蒸氣對測量的影響。針對這3個主要問題提出以下解決方案和驗證方法。測量樣品時,將探頭盡量放入塑料瓶,可以在一定程度上

10、消除流動空氣的影響,同時應選擇空氣流動較小的室環境來測量。水蒸氣對MQ-3的影響很小,這一點可以通過對只裝有純凈水的塑料瓶的多次測量來驗證。用一樣容量的塑料瓶配制好不同濃度的酒精溶液后,將它密封并放置一段時間,待其穩定后再測量。再通過反復多次測量多組數據,求其平均值的方法來縮小測量誤差。2 系統硬件設計2.1 單片機開發流程(1)可行性調研。可行性調研的目的,是分析完成這個項目的可能性。進行這方面的工作,可參考國外有關資料,看是否有人進行過類似的工作。如果有,則可分析他人是如何進行這方面工作的,有什么優點和缺點,有什么值得借鑒的;如果沒有,則需要作進一步的調研,此時的重點應放在能否實現這個環節

11、,首先從理論上進行分析,探討實現的可能性,所需求的客觀條件是否具備,然后結合實際情況,再決定能否立項的問題。(2)系統總體方案的設計。在進行可行性調研后,如果可以立項,下一步工作就是系統總體方案的設計。工作的重點應放在該項目的技術難度上,此時可參考這一方面更詳細、更具體的資料,根據系統的不同部分和要實現的功能,參考國外同類產品的性能,提出合理而可行的技術指標,編寫出設計任務書,從而完成系統總體方案設計。(3)設計方案細化,確定軟硬件功能。一旦總體方案確定下來,下一步的工作就是將該項目細化,即需明確哪些部分用硬件來完成,哪些部分用軟件來完成。由于硬件結構與軟件方案會相互影響,因此,從簡化電路結構

12、、降低成本、減少故障率、提高系統的靈活性與通用性方面考慮,提倡軟件能實現的功能盡可能由軟件來完成;但也應考慮軟件代硬件的實質是以降低系統的實時性、增加處理進行為代價的,而且軟件設計費用、研制周期也將增加,因此系統的軟硬件功能分配應根據系統的要求與實際情況而合理安排,統一考慮。在確定軟硬件功能的基礎上,設計者的工作就開始涉與到具體的問題,如儀器的體積與與具體技術指標相對應的硬件實現方案,軟件的總體規劃等。在確定人員分工、安排工作進度、規定接口參數后,就比須考慮硬件軟件的具體問題了。(4)一個單片機應用系統經過調研、總體設計、硬件軟件設計、制版、元件安裝后,在系統的程序存儲器中放入編制好的應用程序

13、,系統即可運行。但一次性成功的幾乎是不可能的。由于單片機在執行程序時人工是無法控制的,為了能夠調試程序,檢查硬件、軟件運行情況,這就需要借助某種開發工具模擬用戶實際的單片機,并且能隨時觀察運行的中間過程而不改變運行中有的數據性能和結果,從而進行模擬現場的真實調試。2.2 硬件系統框圖基于80C51單片機用MQ-3型氣體傳感器實現酒精氣體濃度的檢測,需要信號采集模塊用于對酒精濃度信號的采集,該信號是通過MQ-3氣體傳感器和負載電壓得到分壓電信號。信號轉換模塊用來把采集到得模擬電壓信號轉換位可以用單片機處理的數字信號。數碼管顯示模塊是對單片機處理后的數字信號的顯示,用來顯示酒精的濃度。報警模塊是對

14、設定值提供報警功能,該功能用發光二極管顯示。根據各功能模塊的設計,可得到它的系統總框圖,如圖1所示。酒精氣敏傳感器LM3914發光二極管ADC0809單片機數碼管 繼電器圖1 系統總框圖2.3 信號采集電路2.3.1 氣體傳感器的選擇根據被檢測氣體的不同,氣敏傳感器可分為以下三類:(1)可燃性氣體氣敏傳感器。目前該類氣敏傳感器需求量最大,包含各種無機和有機類氣體檢測,主要用于抽油煙機、泄露報警器和空氣清新劑等方面,并已經形成生產規模,在油田、礦區、化工、企業與家庭等生產和生活領域廣泛用作氣體泄露報普,特別是用于家庭氣體泄露報警,需求量不斷增加,使該類傳感器有著廣泛的發展空間。(2)CO和H2氣

15、敏傳感器。CO氣敏元件可用于工業生產、環保、汽車、家庭等CO泄露和不完全燃燒檢測報警;H2氣敏元件除應用于工業等領域外,主要用于家庭管道煤氣泄露報警。由于我國管道煤氣中H2含量很高,而氫敏元件較氧化碳元件價格低,靈敏度高,因此,用氫敏元件做城市管道煤氣泄露報警更為適宜。(3)毒性氣體傳感器。毒性氣體傳感器又稱為環境有毒有害氣體傳感器,主要用于檢測煙氣、尾氣、廢氣等環境污染氣體,雖然SnO2氣敏傳感器對CO,H2S等有毒有害氣體敏感,但應用最多的仍是電解式化學傳感器。 傳感器的分類方式有很多種,以上是根據被檢測氣體的性質進行的分類,也有根據元件的物理特性進行分類的。一個新型的氣體檢測系統應該包括

16、:(1)基于一種或幾種傳感技術的氣體傳感器。(2)組合了氣體傳感器和采樣調理電路的探頭。(3)配有人機接口軟件的中心監測和控制系統。(4)在一些應用中,與其它安全系統和儀器的接口。本設計中的酒精氣體傳感器采用漢威電子的MQ-3型,它屬于MQ系列氣敏元件的一種。如圖2所示:圖2 MQ-3特點:檢測圍為10ppm2000ppm ;靈敏度高,輸出信號為伏特級;響應速度快,小于10秒;功耗小于0.75W,尺寸:D17*H10。 MQ-3型氣敏傳感器的敏感部分是由金屬氧化物(二氧化錫)的N型半導體微晶燒結層構成。當其表面吸附有被測氣體酒精分子時,表面導電電子比例就會發生變化,從而其表面電阻會隨著被測氣體

17、濃度的變化而變化。由于這種變化是可逆的,所以能重復使用。MQ-3的靈敏度特性曲線如 圖3所示。圖3 MQ-3靈敏度特性曲線檢測電路如圖4所示,當電源開關S斷開時,傳感器加熱電流為零,實測A,B之間電阻大于20M。S接通,則f,f之間電流由開始時155mA降至153mA而穩定。加熱開始幾秒鐘后A,B之間電阻迅速下降至10K以下,然后又逐漸上升至120K以上后并保持著。此時如果將酒精溶液樣品靠近MQ-3傳感器,我們立即可以看到數字萬用表顯示值馬上由原來大于120K降至10K以下。移開小瓶過1分鐘左右后,A,B之間電阻恢復至大于120K。這種反應可以重復試驗,但要注意使空氣恢復到潔凈狀態。經實驗的反

18、復檢測,MQ-3傳感器可以正常工作使用,對不同濃度的酒精溶液有不同的變化,響應時間和恢復時間都正常,可以開始作信號采樣模塊電路的設計。圖4 MQ-3檢測電路2.3.2 信號采樣電路信號的采樣模塊電路如圖5所示。MQ-3的加熱電阻兩端即H引腳接至+5V直流穩壓電源,用于電阻絲對敏感體電阻的加熱。MQ-3的兩個A引腳相連,作為敏感體電阻的一個電極。MQ-3的兩個B引腳也連接在一起,作為敏感體電阻的另一個電極。將電極端A接到電源正極,電極端B接兩個270并聯的電阻。MQ-3型氣敏傳感器與電位器串聯構成分壓電路,采樣點為電位器的分壓。MQ-3型氣敏傳感器的敏感部分是由金屬氧化物SnO2的N型半導體微晶

19、燒結層構成。當其表面吸附有被測氣體酒精分子時,表面導電電子比例就會發生變化,從而其表面電阻會隨著被測氣體濃度的變化而變化。由于這種變化是可逆的,所以能重復使用。當氣敏傳感器的敏感體電阻阻值發生改變時,對應的電位器的分壓值也會發生相應的變化,即一個電壓值對應著一個被測酒精氣體濃度。對酒精氣體濃度的采樣就可以轉化為對電位器分壓的采樣。 在采樣硬件電路中實際要考慮到MQ-3的實際技術參數,即加熱電阻和敏感體電阻的大小,該部分應與電源正極相連。負載電阻要根據MQ-3實際的技術參數而選擇阻值合適的電阻。應為實驗所用的MQ-3在預熱5到10分鐘后,它的敏感體電阻只有120K,所以負載電阻選用兩個270并聯

20、,構成采樣部分的分壓電阻。圖5 采樣模塊2.4 信號轉換電路單片微機是單片微型計算機的譯名簡稱,在國也常稱為“單片微機”或“單片機”。它包括中央處理器CPU,隨機存儲器RAM,只讀存儲器ROM,中斷系統,定時器/計數器,串行口和I/O口等等。現在,單片微機已不僅指單片計算機,還包括微計算機,微處理器,微控制器和嵌入式控制器,單片微機已是它們的俗稱8。80C51是美國ATMEL公司生產的低功耗,高性能CMOS8位單片機,片含4K的可系統編程的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術生產,兼容標準8051指令系統與引腳。它集Flash程序存儲器,既可在線編程也可以

21、用傳統方法進行編程與通用8位微處理器于單片芯片中,可靈活應用于各種控制領域。80C51提供以下標準功能:4KBFlash閃存存儲器,128B部RAM,32個I/O口線,看門狗,兩個數據指針,兩個16位定時/計數器,一個5向量兩級中斷結構,一個全雙工串行通信口,片振蕩器與時鐘電路。根據實際需要,本次設計選用的是以8051為核心單元Atmel公司的低耗80C51單片機。80C51芯片有40條引腳,采用雙列直插式封裝,如圖6所示。下面說明各引腳功能。 圖6 80C51芯片管腳VCC:運行和程序校驗時接電源正端。GND:接地。XTAL1:輸入到單片機部振蕩器的反相放大器。XTAL2:反相放大器的輸出,

22、輸入到部時鐘發生器。P0口:8位漏極開路的。使用片外存儲器時,作低八位地址和數據分時復用,能驅動8個LSTTL上拉電阻。P1口:8位、準雙向I/O口。P2口:8位、準雙向I/O口。當使用片外存儲器(ROM與RAM)時,輸出高8位地址。可以驅動4個LSTTL負載。P3口:8位、準雙向I/O口,具有部上拉電路,提供各種替代功能。P3.0RXD串行口輸入口,P3.1TXD串行口輸出口,P3.2EQ x to (INT0)外部中斷0輸入,P3.3 EQ x to (INT1) 外部中斷1輸入,P3.4T0定時器/計數器0的外部輸入,P3.5T1定時器/計數器1的外部輸入,P3.6 EQ x to (W

23、R) 低電平有效,輸出,片外存儲器寫選通,P3.7EQ x to (RD)低電平有效,輸出,片外存儲器讀選通。RST:復位輸入信號,高電平有效。在振蕩器工作時,在RST上作用兩個機器周期以上的高電平,將器件復位。EQ x to (EA)/VCC:片外程序存儲器訪問允許信號,低電平有效。高電平時選擇片程序存儲器,低電平時程序存儲器全部在片外而不管片是否有程序存儲器。ALE/PROG:地址鎖存允許信號,輸出。ALE以1/6的振蕩頻率固定速率輸出,可作為對外輸出的時鐘或用作外部定時脈沖。單片機最小系統的設計包括電源,晶振和復位電路三個部分。這是使單片機正常工作的必要外圍電路部分。針對不同型號的單片機

24、在最小系統設計上會有一些差別。對于選用的80C51單片機,根據美國ATMEL公司提供的技術資料,可以對它的最小系統作恰當的設計,如圖8所示。對于電源部分,技術資料中性能參數里給出的標準工作電壓是4.05.5V。因此,單片機的引腳40對應的VCC接到+5V電源的正極,引腳10對應的GND接到+5V電源的接地端,為80C51單片機提供正常的工作電壓。對于晶振部分,80C51單片機中有一個用于構成部振蕩器的高增益反相放大器,引腳19對應的XTAL1和18對應的XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或瓷諧振器一起構成自激振蕩器。如圖8所示,石英晶體與電容C1和

25、C2接在放大器的反饋回路中構成并聯諧振電路。石英晶體的兩端分別接到引腳XTAL1 和引腳XTAL2,同時石英晶體的兩端分別接一個電容C1和C2,電容的另一端接地。對于外接電容C1和C2的大小雖然沒有十分嚴格的要求,但電容容量的大小還是會對振蕩頻率的高低、振蕩器工作的穩定性、起振的難易程度和溫度穩定性帶來一定的影響。根據技術資料的推薦,使用石英晶體推薦電容容量為30pF10pF,使用瓷諧振器推薦電容容量為40pF10pF。因為電路中接的是石英晶體,所以設計中接的兩個電容C1和C2的容量都為33pF。對于復位電路部分,80C51技術資料給出,當振蕩器工作時,RST引腳出現兩個機器周期以上的高電平將

26、使單片機復位。復位是單片機的初始化操作,當由于程序運行出錯或操作錯誤使系統處于死鎖狀態時,為了擺脫困境,可以按復位鍵以重新啟動,所以復位電路的設計很有必要。復位操作有上電自動復位、按鍵電平復位和外部脈沖復位三種方式,本設計選用按鍵電平復位方式。如圖7所示,10F的電容C3與270的電阻并聯后再與一個10K的電阻串聯,電容的正極端接到電源的正極,電容的另一端接至引腳RST。設計中選用的石英晶體大小為11.0952MHz,但復位鍵按下后,電容和電阻選用的參數值能夠保證給復位端RST提供大于2個機器周期的高電平復位信號。圖7 80C51單片機最小系統設計電路ADC0809是CMOS單片型逐次逼近式A

27、/D轉換器,部結構如圖8所示,它由8路模擬開關、地址鎖存與譯碼器、比較器、8位開關樹型A/D轉換器、逐次逼近寄存器、三態輸出鎖存器等其它一些電路組成。因此,ADC0809可處理8路模擬量輸入,且有三態輸出能力,既可與各種微處理器相連,也可單獨工作。輸入輸出與TTL兼容。 圖8 ADC0809部結構ADC0809芯片有28條引腳,采用雙列直插式封裝,如圖9所示。下面說明各引腳功能。 圖9 ADC0809芯片IN0IN7:8路模擬量輸入端。 2-12-8:8位數字量輸出端。ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路。如表1所示。ALE:地址鎖存允許信號,輸入,高電平

28、有效。 START:A/D轉換啟動信號,輸入,高電平有效。 EOC:A/D轉換結束信號,輸出,當A/D轉換結束時,此端輸出一個高電平(轉換期間一直為低電平)。 OE:數據輸出允許信號,輸入,高電平有效。當A/D轉換結束時,此端輸入一個高電平,才能打開輸出三態門,輸出數字量。CLK:時鐘脈沖輸入端。要求時鐘頻率不高于640KHZ。 REF(+)、REF(-):基準電壓。 Vcc:電源,單一+5V。 GND:地。 ADC0809的工作過程是:首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經譯碼選通8路模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復位。下降沿啟動 A/D轉

29、換,之后EOC輸出信號變低,指示轉換正在進行。直到A/D轉換完成,EOC變為高電平,指示A/D轉換結束,結果數據已存入鎖存器,這個信號可用作中斷申請。當OE輸入高電平 時,輸出三態門打開,轉換結果的數字量輸出到數據總線上。當檢測到酒精氣味時,氣體傳感器的A-B間電阻變小,則ADC0809的模擬輸入端IN0的電壓變大。采用查詢方式對輸入模擬信號進行A/D轉換,然后將數據通過三位八段數碼管顯示。表1 ADC0809通道地址ADDC ADDB ADDA 選通通道0 0 0IN00 0 1IN10 1 0IN20 1 1IN31 0 0IN41 0 1IN51 1 0IN61 1 1IN7ADC080

30、9芯片部沒有時鐘脈沖源,可以用單片機提供的地址鎖存控制輸入信號ALE經D觸發器二分頻后,作為 ADC0809的時鐘輸入。ALE端信號的頻率是單片機時鐘頻率的1/6。單片機的時鐘頻率是11.0952MHz,則ALE端輸出信號的頻率為1.8492MHz,再二分頻后為0.9246MHz,符合ADC0809對時鐘頻率的要求。由于ADC0809具有三態輸出數據鎖存器,其8位數據輸出端可以直接與數據總線相連。地址選通端ADDA,ADDB,ADDC分別與單片機地址總線的低三位A0,A1,A2相連,用于選通IN0-IN7中的某一通道。由于ALE和START連在一起,ADC0809在鎖存通道地址的同時啟動A/D

31、轉換。在讀取A/D轉換結束時,OE產生的正脈沖信號用于打開三態輸出鎖存器。ADC0809的EOC信號與單片機的P3.3相連,作為A/D轉換是否結束的狀態信號供單片機查詢。ADC0809與80C51單片機的接口電路如圖10所示。單片機引腳P3.6與P2.7進入或非門后與模數轉換芯片的ALE端和START端子用導線相連接,用于對模數轉換芯片寫入數據的寫信號。單片機的RD端P3.7與P2.7進入或非門后與模數轉換芯片的OE端子用導線相連接,作為單片機讀取模數轉換數據的讀信號。單片機引腳P3.3與模數轉換芯片的EOC端經過或非門后的輸出端用導線相連接,用于單片機對模數轉換是否結束的查詢,模數轉換結束后

32、可以查詢到P3.3為高電平,為單片機讀取數據作準備。單片機的ALE端口接到D觸發器的時鐘信號輸入端CK,D觸發器的反相輸出端與觸發信號輸入端用導線相連,D觸發器的清零和復位端為低電平有效,分別接高電平,D觸發器的正向輸出端與模數轉換芯片的CLK端子用導線相連接,為模數轉換芯片提供正常的時鐘信號。把模數轉換芯片的A2A1A0端分別用導線連接到地址鎖存器的低三位,用于選擇模數轉換的通道。模數轉換芯片的IN0端子用導線與信號采樣部分的負載電阻端相連,作為要模數轉換的輸入端。單片機引腳P0.0P0.7連接到模數轉換芯片的數據輸出端D0D1D2D3D4D5D6D7端,用于讀取模數轉換后的數據。地址地址鎖

33、存芯片74LS373的輸入端低三位分別與單片機引腳P0.0P0.2連接,用于鎖存選擇模數轉換通道的地址。圖10 ADC0809與單片機80C51接口電路2.5 發光二極管顯示報警電路發光二極管集成驅動芯片LM3914的管腳圖如圖11所示。其部的緩沖放大器最大限度的提高了該集成電路的輸入電阻(5腳),電壓輸入信號經過緩沖器(增益為零)同時送到10個電壓比較器的異相(-)輸入端。10個電壓比較器的同相輸入(+)端分別接到10個等值電阻(1K)串聯回路的10個分壓端。因為與串聯回路相接的部參考電壓為1.2V,所以相鄰分壓端之間的電壓差為1.2V/10=0.12V。為了驅動LED1發光,集成電路LM3

34、914的1腳輸出應該為低電平,因此要求電壓比較器異相(-)端的輸入電壓應大于0.12V。同理,要使LED2發光,異相端輸入電壓應大于0.12*2=0.24V;要使LED10發光,異相端輸入電壓應大于0.12*10=1.2V。LM3914的9腳為點,條方式選擇端,當9腳與11腳相接為點狀顯示;當9腳與3腳相接,則為條狀顯示。本系統采用條狀顯示方式,即將引腳9和引腳3都接到電源的正極。圖11 LM3914管腳圖如圖12所示,LM3914的3和9引腳接電源正極,使發光二極管成柱狀顯示,7和8引腳接一個2K的電阻,控制發光二極管的亮度,5引腳為采樣信號的輸入端,10到18引腳和1引腳分別接發光二極管的

35、負極端,4和2引腳與發光二極管的正極間接一個10F的電容,作為發光二極管的虛電源,驅動要反光的二極管點亮。當檢測到酒精氣味時,氣敏傳感器的A-B間電阻變小,LM3914的5端電位升高,通過比較放大,驅動發光二極管依次發光,從而區分出酒精含量的高低,直觀的看出所測的酒精濃度達到了哪個水平值,起到報警的作用。輸入靈敏度可以通過負載電阻的調節來實現,即對地電阻調小時靈敏度下降;反之,靈敏度增加。改變7腳與8腳之間電阻的阻值可以調節發光二極管的顯示亮度,當阻值增加亮度減弱,反之加強。圖12 發光二極管顯示2.6 數碼管顯示電路發光二極管一般是砷化鎵半導體二極管,在發放光二極管兩端加上正向電壓,則發光二

36、極管發光。數碼管是由若干發光二極管組合而成的,有共陰極和共陽極兩種結構形。8段共陰數碼管由abcdefg、dg這8個發光二極管組成。把8個發光二極管的陰極連接在一起構成共陰極端,接進電路時,共陰極端接地,給要發光顯示的二極管的陽極端接高電平可使該發光二極管導通點亮。如圖13所示。圖13 8段共陰數碼管結構圖用單片機驅動數碼管有靜態顯示和動態顯示,靜態顯示就是顯示驅動電路具有輸出鎖存功能,單片機將所要顯示的數據送出后就可以驅動數碼管顯示數據,直到下一次顯示數據需要更新時再傳送一次新的數據就可以了。靜態顯示數據穩定,占用CPU時間少。動態顯示需要時刻對顯示器件進行數據刷新,顯示數據有閃爍感,占用的

37、CPU時間多。這兩種顯示方式各有利弊;靜態顯示雖然數據穩定,占用很少的CPU 時間,但每個顯示單元都需要單獨的顯示驅動電路,使用的硬件較多;動態顯示雖然有閃爍感,占用的CPU時間多,但使用的硬件少,能節省線路板空間。設計選用3個單位8段共陰數碼管來顯示輸出的數據,因為電路硬件相對較簡單,所以選擇靜態顯示方法。選用3個移位寄存器74LS164驅動數碼管發光點亮。電路連接如圖14所示。移位寄存器在電路中一是驅動數碼管點亮,二是對輸入的串行數據并行輸出,起到串并轉換的作用。移位寄存器74LS164串行數據輸入端與前一位的并行輸出最高位相連,第一位移位寄存器的數據輸入端與單片機的數據輸出端P1.7連接

38、。單片機引腳P1.6用于給移位寄存器提供移位的時鐘脈沖,該引腳與三個移位寄存器的時鐘輸入端CLK相連。因為每位數據串行輸出先輸出的是低位,所以數碼管引腳a、b、c、d、e、f、g、dg應順序與對應位的移位寄存器并行輸出端的Q7、Q6、Q5、Q4、Q3、Q2、Q1、Q0連接。圖14 數碼管顯示電路2.7 系統整體電路圖信號采樣模塊電路的輸出接到發光二極管顯示LM3914的輸入端,同時也將采樣信號輸出端接至A/D轉換芯片的輸入端,再加上單片機最小系統電路、單片機與模數轉換芯片的連接和單片機與數碼管顯示的連接,即可作出它的整體電路圖,如圖15所示。圖15 整體電路圖3 系統軟件設計3.1 開發環境選

39、用的開發平臺為WAVE6000單片機集成開發環境,只需在PC機上安裝WAVE6000軟件,然后在WAVE6000軟件代碼編輯器編輯程序代碼,經匯編,修改,產生代碼,形成輸入輸出口實驗十六進制.HEX文件, 初始化器件后,將經過編譯生成的.HEX十六進制文件下載到單片機。對于8051系列單片機,現有四種語言支持,即匯編、PL/M、C和BASIC。本設計軟件編程部分選用匯編語言來寫程序代碼。3. 2 程序流程當檢測到酒精氣味時,氣體傳感器MQ-3兩個電極端A-B間電阻將變小,對應與氣體傳感器負載電阻的分壓將變大。因為ADC0809的模擬輸入端IN0與負載電阻的一端用導線連在了一起。所以單片機在啟動

40、測試模數轉換芯片之前要選擇通道0,寫入模數轉換芯片,并將用作查詢的單片機引腳P3.3置位,然后啟動對通道IN0端輸入的采集電壓信號作模數轉換,等待轉換的結束。利用單片機豐富的I/O口可以采用查詢方式來檢測模數轉換是否結束,當單片機引腳P3.3為1時轉換未結束等待,當查詢到P3.3為0時表示模數轉換已經結束,可以開始讀取數據了。單片機通過I/O口與模數轉換芯片的數據輸出口相連讀取轉換后的數據。讀取后的數據送到數據存儲器單元中,經過單片機作相應的處理,即要將該電壓值轉換為酒精濃度值,然后處理后的數據轉換成三位十進制BCD碼用數碼管顯示。程序流程圖如圖16所示。單片機選擇A/D通道地址單片機P3.3

41、置位并啟動A/D測試A/D轉換結束?P3.3=1?數碼管顯示NY單片機初始化開始單片機讀取數據并作處理圖16 程序流程圖3.3 程序代碼編寫系統電源線接通或者系統復位后,程序從主程序入口進入運行。因為在程序中每次對模數轉換后讀取的數據,需要相應的存儲空間,同時對讀取的數據作適當處理后也要送到特定的存儲空間存儲起來,以供后面的數碼管顯示用。當然,在程序運行的過程當中,還要用到工作寄存器,因為工作寄存器都是臨時存儲數據,不需要保存作為以后處理要用到的數據,所以工作寄存器的初始化這部分可以省去。于是,對于程序的初始化程序代碼可以相應寫出13。START:MOV R7,#60HMOV R0,#20HC

42、LR ALOOP:MOV R0,AINC R0DJNZ R7,LOOP初始化程序從數據存儲器地址為20H單元開始,到80H單元全部清零。即每次的初始化將上次存儲的數據全部清除,用于存放當前要存儲的數據。對模擬電壓信號的數字轉換由模數轉換芯片ADC0809加單片機80C51控制來完成。模擬電壓的輸入端接在模數轉換芯片的IN0通道,再根據單片機與模數轉換芯片的連接,單片機在選擇讀寫地址時應該為#7FF8H。因為單片機高8位地址位的P2.7位與單片機的 EQ x to (WR) 位經或非后與模數轉換芯片的START和ALE用導線連接。所以單片機在將地址#7FF8H寫入模數轉換芯片后,一方面模數轉換芯

43、片鎖存地址選擇線的狀態,從而選通相應的模擬通道,同時啟動模數轉換。模數轉換需要一定的時間,這時可以開始對轉換是否結束進行不斷的查詢。ADC0809中模數轉換結束輸出標志位是EOC,轉換結束時為高電平有效。該位通過一個反相器與單片機引腳P3.3相連,因為啟動模數轉換之前P3.3位被置位,所以當查詢到P3.3位為0時即表示模數轉換結束。最后將轉換后的數據讀取到單片機累加器A中。根據這思路可以寫出模數轉換的子程序代碼。TEST:MOV DPTR,#7FF8H SETB P3.3MOVX DPTR,A P3.3,$MOVX A,DPTR RET把轉換后得到的數字電壓值讀取到單片機后,因為,實際的電壓值

44、圍在0+5V之間,而ADC0809模數轉換芯片對應的是8位精度的處理,即從00000000B到11111111B,所以單片機還要對它作個除#51的處理工作。而在處理過程中對于有些數據的處理,可能要碰到雙字節相除的情況。為此,在第一位單字節除#51后,接下來的小數部分位的除#51則要作雙字節的除法,這樣才能保證使所有位能顯示出來。如果所有位都當單字節除法來運算的話,對于有些要作雙字節除法的位上的數字則無法顯示,而能是顯示0。相除后對應的每一位分別送到地址為#7DH,#7EH,#7FH的存儲單元保存,以供顯示或后續處理用。思路明確后,實際電壓值轉換部分程序可以寫出來。MOV B,#51DIV AB

45、MOV 7DH,AMOV A,BMOV B,#10MUL ABMOV R6,AMOV R7,BACALL DIV16MOV 7EH,R6MOV A,R2MOV B,#10MUL ABMOV R6,AMOV R7,BACALL DIV16MOV 7FH,R6經過處理后實際采樣到的電壓值對應的各個位就分別存儲在#7DH,#7EH,#7FH三個存儲單元里面了。模數轉換后得到的數字電壓量被單片機讀取后還要作一定的數據處理,其中包括把電壓值轉換為與之相對應的酒精濃度值,根據總體設計思路,對電壓值都近似作對應區間的線性轉換。即首先,單片機要對采集到的數據在哪個區間作個判斷跳轉,然后再根據該區間的線性關系作

46、轉換,得到對應的酒精濃度值。根據酒精濃度與電壓的線性映射關系,如表3所示,可以寫出該部分的程序代碼MOV B,#100MUL ABMOV R6,AMOV R7,BMOV R5,#0MOV R4,#51ACALL DIV16MOV 70H,R6MOV 71H,R7MOV A,71HJNZ L5L1:MOV 72H,#75CLR CMOV A,70HSUBB A,72HJNC L2ACALL PP0AJMP PPL2:MOV 72H,#145CLR CMOV A,70HSUBB A,72HJNC L3ACALL PP1AJMP PPL3:MOV 72H,#173CLR CMOV A,70HSUBB

47、 A,72HJNC L4ACALL PP2AJMP PPL4:MOV 72H,#233CLR CMOV A,70HSUBB A,72HJNC L5ACALL PP3AJMP PPL5:MOV 72H,#18CLR CMOV A,70HSUBB A,72HJNC L6ACALL PP4AJMP PPL6:MOV 72H,#64CLR CMOV A,70HSUBB A,72HJNC L7ACALL PP5AJMP PPL7:MOV 72H,#105CLR CMOV A,70HSUBB A,72HJNC L8ACALL PP6AJMP PPL8:ACALL PP7AJMP PP從讀取到的電壓值得到酒

48、精濃度值后,還要把該值轉換為3位10進制BCD碼,存儲到特定的存儲單元以供數碼管顯示數值。數碼管顯示選用的是靜態顯示的方法,要在每次顯示數據時把要顯示的3個位按順序串行送到數碼管集成驅動電路74LS164并行輸出,以同時驅動3個數碼管同時點亮。根據7段數碼管的字型碼如表2所示和移位寄存器74LS164的邏輯功能,將對應的共陰極字型碼放在一個表格中,然后通過查表的方式找到要顯示的數字送移位寄存器驅動數碼管顯示。單片機對每次移出的位通過P1.7輸入到移位寄存器的數據輸入端,移位寄存器的時鐘脈沖通過單片機P1.6模擬的時鐘信號提供。于是可以寫出顯示部分的程序代碼。DISP:MOV DPTR,#TAB

49、MOV A,7FHMOVC A,A+DPTRACALL SOMOV A,7EHMOVC A,A+DPTRACALL SOMOV A,7DHMOVC A,A+DPTRACALL SORETSO:MOV R7,#8SO1:CLR P1.6 RRC A MOV P1.7,CSETB P1.6DJNZ R7,SO1RET表2 七段LED字型碼顯示字符共陰極字型碼共陽極字型碼03FHC0H106HF9H25BHA4H34FHB0H466H99H56DH92H67DH82H707HF8H87FH80H96FH90H 程序當中為了顯示的精確,在有些位相除時用到了雙字節相除的算法。對于多字節無符號數的除法,可

50、以依照移位相減的基本方法來進行。除法運算是按位進行的,每一位是一個循環,每個循環中要作三件事,一是被除數左移一位,二是余數減除數,最后根據是否減來置商位為1或0。對于被除數的移動,最簡單的辦法是把被除數向余數單元左移,把被除數左移后空出的低位存放商數,當除法完成后,被除數已全部移動到余數單元并逐次被減而得到余數,而被除數單元中容已成為商數。據此,可以寫出雙字節除法的程序代碼。DIV16:MOV R5,#0MOV R4,#51 MOV R3,#0MOV R2,#0MOV R1,#16LP1:CLR CMOV A,R6RLC AMOV R6,AMOV A,R7RLC A MOV R7,A MOV

51、A,R2 RLC AMOV R2,AMOV A,R3RLC AMOV R3,AMOV A,R2CLR CSUBB A,R4JC NEXTMOV R0,AMOV A,R3SUBB A,R5JC NEXTINC R6 MOV R3,A MOV A,R0MOV R2,ANEXT:DJNZ R1,LP1RET根據程序流程圖和各個子程序的編寫可以得到整個設計的總程序代碼,見附錄。打開實驗開發平臺WAVE6000單片機集成開發環境,在WAVE6000軟件代碼編輯器編輯程序代碼,經匯編,修改,產生代碼4 電路調試與測試結果4.1 電路調試根據各個模塊功能的設計和繪制的整體電路圖,找到各功能模塊的連接點。按照

52、設計的步驟,并對照總電路圖,在面包板上連接電路。電路的連接順序是,先連接好各個模塊,在調試檢查正確的前提下再把各個模塊連接起來。打開80C51軟件,將寫好的調試程序代碼在計算機上輸入、匯編、修改、產生代碼,形成輸入輸出口實驗.HEX文件。打開WAVE6000軟件,在菜單options選項中選擇select device,在彈出的窗口中選擇器件80C51,并選Byte Mode點擊OK。初始化器件后,將經過編譯生成的,HEX十六進制文件下載到單片機。電路連接好,并將調試程序代碼(注釋電壓到酒精濃度轉換關系代碼)燒寫到80C51單片機上后,接上+5V電源開始調試。先把氣體傳感器探頭用一個阻值為20

53、k的電阻替代,復位單片機,觀察數碼管上的顯示數據和發光二極管的點亮情況。用萬用表測量采樣點的電壓值,看用萬用表測得的電壓值與數碼管上顯示數據是否一致。因為各導線和元器件對電壓電流的影響,數碼管顯示的數據與萬用表測得的數據存在一定的偏差,但在可接受的圍。調節電位器,觀察數碼管數據顯示的變化,同樣用萬用表測量電壓值作比較。測量數據與數碼管顯示數據基本一致,說明電路數碼管顯示部分連接正確。然后,再把電位器阻值從0開始逐漸調大,在每過一個0.12V電壓后觀察相應發光二極管點亮,說明發光二極管顯示部分電路連接正確。調試電路其他功能模塊正確后,將預熱足夠長時間能正常工作的氣體傳感器MQ-3換上原來20k的

54、電阻。準備好若干個不同濃度的酒精氣體樣品,檢測氣體傳感器是否能正常工作。當把不同濃度的酒精溶液樣品靠接氣敏傳感器時,各自對應一個不同的數據顯示,說明整體電路已經完全正確。4.2 濃度與顯示之間的關系4.2.1 傳感器的定標在系統電路調試正確以后,要作改進工作,使數碼管上正確顯示所測的酒精氣體濃度值。之前顯示的是酒精濃度值與電壓的對應關系,所以要顯示酒精濃度值,需要找到電壓與濃度之間的關系,然后才能建立酒精濃度值與顯示的映射關系。測量用的酒精溶液是用無水乙醇和純凈水按體積比來配制的,單位mL/mL表示的是1mL酒精溶液中含酒精的體積。準備多個不同濃度的酒精氣體樣品,從小到大,依次用氣敏傳感器檢測

55、,記錄對應的電壓值,記錄樣品的濃度和電壓值之間的關系,如圖17所示。根據曲線圖的走向可以看出傳感器的酒精濃度檢測大致圍,然后根據這個圍選擇7個合適的濃度值,多次測量電壓值,再取平均值作為最后電壓值,把6個標準區間圍定下來,如表3所示。圖17 濃度與電壓關系曲線圖表3 樣品對應電壓值樣品濃度C(mL/mL)C1C2C3C4EQ x to (C)0.3753.683.543.603.613.610.3333.193.203.173.223.200.1672.762.742.732.742.740.1002.332.352.342.302.330.0331.741.701.751.731.730.0

56、201.471.421.431.461.450.0100.760.740.760.730.75在酒精氣體濃度的每個小區間,將電壓值與數碼管顯示值之間的關系當作線性處理,即每段小區間對應著一個線性映射關系,如表4所示。在要作不同線性轉換電壓區間圍和對應的線性轉換關系確定好了以后,根據表4所對應的關系,修改數據處理程序部分,建立酒精濃度和電壓之間的關系。使最終顯示的數據為酒精濃度值。根據編寫的數據處理程序,數碼管最終顯示的是酒精濃度值小數部分的前3位數字。這樣,一個完整的基于80C51單片機酒精濃度探測儀就設計出來了。表4 濃度與電壓線性映射關系電壓值區間(V)濃度轉換關系3.613.20C=0.

57、11*V-0.0223.202.74C=0.35*V-0.7892.742.33C=0.17*V-0.2962.331.73C=0.11*V-0.1561.731.45C=0.046*V-0.0471.450.75C=0.014*V4.2.2酒精濃度測試結果將配制好的濃度為0.011mL/mL、0.014mL/mL、0.025mL/mL、0.170mL/mL用做成的探測儀檢測,其結果分別顯示為:011、015、023、156。測量的最大誤差為8.2%對于檢測濃度低的酒精誤差比檢測濃度高的酒精誤差小,這也是設計的該酒精濃度探測儀適合與檢測酒后駕車的原因,因為人在飲酒后,從呼吸道呼出的酒精氣體濃度

58、一般都不是很高。因此,對設計的傳感器可以在定標上作適當的改進,就可以用于檢測酒后駕車。5 結束語MQ-3傳感器屬于金屬半導體電阻式傳感器,靈敏度高,響應速度快,可重復性使用。當傳感器的敏感部分吸附有酒精分子時,表面的導電電子比例就會發生變化,從而其表面電阻會隨著被測酒精氣體濃度的不同而發生相應的變化,且這種變化是可逆的,可重復使用。MQ-3接上一定阻值的負載電阻,即可構成對酒精氣體濃度的檢測部分。負載電阻的分壓值即對應著一個酒精氣體的濃度值,只需對該分壓值采樣,就可得到要測酒精氣體濃度值的信號。將該信號通過A/D轉換,將模擬信號轉化為數字信號。轉換后的數字信號由單片機作相應的數據處理,得到3位

59、BCD碼并將3位送送數碼管顯示。在發光二極管顯示報警模塊中,將采集信號輸入二極管集成功率放大器,對該采集信號放大后驅動相應的發光二極管點亮,起到報警的作用。半導體氣敏傳感器和電化學固體電解質氣敏傳感器具有測量精度高、所需試樣少、響應快等特點,廣泛應用于化工、建筑、環保、醫療、家電、安全保衛等領域。隨著納米技術、薄膜技術等新材料研制成功,微機械與微電子技術、計算機技術等的綜合應用,高性能的氣敏傳感器將會不斷出現。參 考 文 獻1司士輝生物傳感器M化學工業,20032譚浩強著C程序設計M. 清華大學 20053傳友、曉斌著感測技術基礎M. 電子工業 20064徐愛鈞著單片機原理實用教程M. 電子工

60、業 20095辜承林等著電機學M. 華中科技大學 20056康華光著電子技術基礎M. 華中科技大學20057王軼、凡著CAN總線技術在智能汽車中的應用J微計算機信息 20058新龍著酒后駕車與交通事故的法醫學探討J道路交通管理 20079 吳桂秀傳感器應用制作入門M科學技術,200410 軍傳感器與檢測技術M電子科技大學,200311 杰,黃鴻傳感器與檢測技術M:高等教育,200312 吳桂秀傳感器應用制作入門M科學技術,200413 錫富傳感器M:機械工業,200214 郁有文傳感器原理與工程應用M:電子科技大學,200315 樓然苗,光飛51系列單片機設計實例M航空航天大學,200316

溫馨提示

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

評論

0/150

提交評論