徐昊元,曹誠偉,舒煜喬,周家樂,史志鵬
(東南大學 成賢學院電子信息工程專業,江蘇南京,210000)
由于社會經濟的整體發展,人民的生活水平也不斷提高,家家戶戶幾乎都有能力購買汽車,但同時也出現了許多的酒后駕駛的情況,導致了許多的人生財產損失,雖然國家一直在提倡尋找代駕,但是這也會耗費許多的人力物力資源,并且會對交通產生一定的影響,為了減少社會壓力,我們思考并設計一種自主檢測的酒精檢測系統。本項目能夠在酒精檢測器的基礎上,使用先進的技術手段來讓酒精檢測器的傳輸更加靈敏,能夠直接安裝于汽車上使用,讓駕駛員對自身的檢測更加方便,如果處于酒精濃度超標的酒駕狀態則會進行報警并提醒其家人等,減少事故,安全出行,同時也提高了酒駕檢測的效率。
本系統的主控芯片我們選用了STC89C52單片機,系統擁有以下幾個主要模塊:STC89C52 單片機內部控制模塊、MQ-3酒精濃度傳感器模塊,A/D數模轉換模塊、蜂鳴器模塊。系統能夠將測量出的酒精濃度數據通過A/D轉換后,得到需要的數據,再將其提供給單片機進行下一步的處理,最后,在LCD顯示屏上顯示出此時的酒精濃度。若酒精濃度超過了我們預先設置的閾值,則會觸發警報系統,并且采取一些及時的手段提醒聯系人,及時制止了駕駛員酒駕。圖1為該系統的總體結構框圖。
該系統的原理設計圖如圖2所示。

圖2 原理設計圖
STC89C52單片機是一個高性能的COMOS8微型處理器。該器件采用了高密度、數據不易丟失的存儲器制造,與工業標準的一些指令集也能夠有最基本的兼容。
本系統選用的STC89C52單片機,由于其內部缺少時鐘振蕩器,因此選擇外接11.0592MHz的晶振來提供基本的時鐘信號。復位電路中,R3和C3的作用是上電自復位,目的是讓單片機上電以后從頭開始運行,同時將一個無鎖按鍵開關接到單片機9腳,按下按鍵會給單片機9腳提供一個高電平,達到手動復位的效果。
MQ-3模塊特點:(1)具有信號輸出指示。(2)雙路信號輸出(模擬量輸出及TTL電平輸出)(3)TTL輸出有效信號為低電平。當輸出低電平時信號燈亮,可直接接單片機。(4)模擬電壓輸出0~5V,酒精濃度越高,電壓越高。
圖3 為MQ-3 酒精傳感器實物圖和原理圖。

圖3 MQ-3 酒精傳感器實物圖和原理圖
MQ-3酒精傳感器工作原理:當酒精濃度增大時,傳感器內阻降低。由分壓原理得,Vout增大,即圖4中比較器2腳上的電壓值增大,當引腳2點位高于引腳3點位時(滑動變阻器Rp可調節),引腳1輸出低電平,當沒有信號時,傳感器輸出與電源電壓相等的高電平。

圖4 MQ-3酒精傳感器內部電路圖
本系統主要采用的是一個八位分辨率的ADC0832轉換器,其能夠進行雙通道轉換,并且輸入與輸出電平能夠與TTL相互兼容,該轉換器接入的電源為5V,可以保證輸入電壓小于5V,而且消耗功率低,其工作的頻率才250kHz,非常適合在本設備中進行使用。
當CS輸入端為高電平時,ADC0832不工作,此時芯片被禁用,只有CS使能端置于低電平,并且保持低電平,才能進行A/D轉換。在芯片開始轉換的同時,芯片時鐘輸入端CLK將會收到處理器部分傳來的時鐘脈沖,接著使用DI端輸入通道功能選擇的數據信號。啟動信號的表示方法為:在第1個時鐘脈沖的下沉之前DI端必須是高電平。在第2和第3個脈沖下沉之前,DI端應輸入2位數據用于選擇通道功能,當此2位數據為“1”、“0”時,只對CH0進行單通道轉換。

圖5 ADC0832 轉換器實物圖和原理圖
本系統中主要選用低電平觸發的有源蜂鳴器模塊模擬繼電器,在供電裝置中,能夠控制電源。如果酒精濃度在可接受的范圍內,則蜂鳴器不會報警。在汽車穩定狀態下,假如車內的酒精濃度過高,蜂鳴器會響起,我們可將此信號視作繼電器的閉合,發動機無法進行正常啟動,車輛無法進行正常啟動。蜂鳴器模塊特點如下:S8550三極管驅動模塊;工作電壓為3.3~5V;I/O端口輸入低電平時,蜂鳴器發聲。

圖6 蜂鳴器電路原理圖
該系統采用的液晶顯示屏為LCD1602,實物圖如圖7所示。主要參數:顯示容量:16×2個字符;芯片工作電壓:4.5~5.5V;工作電流:2.0mA(5.0V);模塊最佳工作電壓:5.0V;字符尺寸:2.95mm×4.35mm(W×H)。

圖7 1602字符型液晶顯示器實物圖
LCD1602具體接線如下:引腳1接地,引腳2接5V正電源,引腳3為顯示屏對比度調整端,使用10k的可調電阻來調整對比度,當RS高電平時,引腳4選擇數據寄存器,低電平時選擇指令寄存器,引腳5中R/W為讀寫信號線,高電平讀,低電平寫,引腳6中EN使能端下降沿觸發。7~14腳分別與單片機的P0.0~P0.7相連,引腳15接背光源正極,引腳16接背光源負極。

圖8 液晶顯示屏電路原理圖
液晶顯示屏模塊流程圖如圖9所示。

圖9 液晶顯示屏電路流程圖
該系統中采用的短信通知模塊為SIM900A,是一個基本的GSM與GPRS模塊,能夠進行基本的SMT的封裝。其工作頻率是900/1800MHz,能夠實現基本的輸入輸出與傳輸特性,能夠適用于許多的產品設計和需求。模塊實物圖如圖10所示。

圖10 SIM900A模塊實物圖
SIM900A芯片主要特性:供電電壓:3.4V~4.5V;頻段:EGSM 900和DCS 1800;工作溫度范圍:-30℃~+80℃。

圖11 SIM900A模塊原理圖
SIM900A具體接線如下:單片機的 P3.0 管腳連接SIM900A 5VT,單片機的 P3.1 管腳連接SIM900A 5VR,直流 5V 連接SIM900A的VCC_MCU端口,SIM900A 的 GND 連接到單片機的 GND 上。

圖12 SIM900A模塊接線圖
軟件流程圖如圖13所示。

圖13 軟件設計流程圖


此部分主要運用AT指令來控制模塊。
AT+CSCS="UCS2" 表示設置為16位通用8字節倍數編碼字符集;
AT+CMGF=1 表示設置短信為文本格式;
AT+CSMP=17,167,0,25 表示在提交消息時,短消息服務中心收到消息起的有效時間為24,協議標識為“0”,編碼方式為UNICODE;
AT+CMGS="*************"用來預先設置接收者的手機號碼,*******代表該手機號Unicode碼;
Uart1Sends("91527CBE62A58B66");為中文短信內容的Unicode碼。
圖14程序用來轉換漢字與Unicode碼。

圖14
//按鍵+-
if(anjianjia==0)

判斷若按鍵加或按鍵減被按下,設定值會加一或減一。
顯示設定的報警閾值:

顯示當前所采集的酒精濃度:
//顯示酒精傳感器所采集的濃度數值+顯示設定酒精報警設定值


wordl[4]通過采集來的酒精數據經過數據轉換后得到。
(1)在本系統中,為實現本設計的功能,我們將模擬一個符合酒駕標準的駕駛者進入某個汽車駕駛車廂的情況,即要讓駕駛者的血液中酒精濃度達到或超過20mg/100ml。為方便演示,我們將汽車車廂粗定為長29cm,寬26cm,高14cm的長方體密閉空間,計算體積為10556cm3。酒精模擬方面,選擇使用75%酒精消毒液(乙醇含量75%±5%),將其濕潤在紙巾上,通過擠壓泵頭次數的不同來模擬多種濃度的酒精含量,通過市面上已有的呼氣式酒精檢測儀來判斷此時的酒精含量具體數值,從而決定在編寫代碼時所設定的酒精報警閾值。
實驗數據如表1所示。

表1
實驗現象:報警閾值設定為50%,當系統報警時,血液酒精含量為25mg/100ml。為避免閾值設定過高,導致駕駛員血液酒精濃度已達醉駕標準而系統沒有報警的情況。將閾值逐次降低,為了最接近酒駕標準,并考慮到車廂密閉性等誤差,于是選擇最接近并小于20mg/100ml的數值,這樣做的目的也是為了避免上述的情況,當報警閾值設定在小于40%時,此時血液酒精含量雖小于酒駕標準,但由于設定閾值過低,導致系統誤報警。
得出結論:酒精報警閾值設定為40%。

圖15 基于51單片機的智能防酒駕系統實物圖
(2)為了能夠真正使用于現實情況,我們在與小車連接的電路中,加上了一個變壓器,將電壓從12V變為5V以適應現實汽車中的電路。

圖16 電源模塊實物圖
在該系統測試中,我們得到測量時的酒精濃度,通過將此時酒精濃度與提前設定的閾值進行對比,能夠初步判斷駕駛者的飲酒狀態。我們將該系統放于模擬現實環境下進行測試,已經基本滿足我們所預期的功能,若裝備在真實車輛上,則還需要添加繼電器改變電平。這個系統能夠一定程度上減少酒后駕駛的狀況,并且一定程度上減少交通事故可能發生的概率,減少酒駕可能帶來的危害。如果能將該項項目設計得更為成熟,則能夠為安全出行提供更多的保障,具有更大的社會和實際意義。