曾當(dāng)兵
(中山市技師學(xué)院,廣州中山,528400)
目前市面上出現(xiàn)的酒駕測(cè)試儀價(jià)格昂貴,測(cè)試標(biāo)準(zhǔn)單一,不能修改閾值數(shù)據(jù),使用場(chǎng)合單一,耗電量大,經(jīng)常更換干電池,使用成本高等不足,針對(duì)以上不足,結(jié)合高性能單片機(jī)STC12C5A16AD的特點(diǎn),設(shè)計(jì)該測(cè)試儀,以滿足不同應(yīng)用場(chǎng)合,對(duì)酒駕行為進(jìn)行提前預(yù)防,保障人民群眾的生命安全。
本設(shè)計(jì)基于STC12C5A60S2微處理器,用于檢測(cè)氣體中的酒精濃度,可使用在一些對(duì)環(huán)境酒精氣體濃度要求嚴(yán)格的生產(chǎn)車間,本設(shè)計(jì)可以及時(shí)檢測(cè)車間內(nèi)的氣體酒精濃度。當(dāng)氣體酒精濃度高于設(shè)定閾值時(shí),發(fā)出告警提示,提醒車間管理者及時(shí)通風(fēng)換氣,以便于安全生產(chǎn)。除此之外,還可用于酒駕測(cè)試,用來(lái)測(cè)試當(dāng)前呼氣酒精濃度,是否高于酒駕濃度閾值,以此來(lái)時(shí)刻提醒駕駛員請(qǐng)勿酒后駕駛。
為了提高測(cè)量數(shù)據(jù)精度,需要高精度的酒精傳感器,本設(shè)計(jì)中采用了MQ—3型酒精傳感器,將酒精氣體濃度值轉(zhuǎn)換成0~5V的模擬電壓輸出,再將模擬電壓值傳送到微處理內(nèi)部自帶的高精度10位A/D轉(zhuǎn)換模塊中去,得到一組10位二進(jìn)制數(shù)據(jù)存放在單片機(jī)內(nèi)部寄存器中,再通過(guò)單片機(jī)數(shù)據(jù)處理和控制部件,將相應(yīng)結(jié)果顯示在液晶顯示屏中。為了便于使用,采用通用USB接口充電器,大容量鋰電池,提供穩(wěn)定可靠的電源支持。
系統(tǒng)結(jié)構(gòu)框圖如圖1所示,包含MQ—3乙醇?xì)怏w檢測(cè)模塊、液晶顯示模塊、鍵盤模塊、 鋰電池充放電模塊、報(bào)警模塊、單片機(jī)模塊等。
測(cè)試儀的定位是日常使用便攜式測(cè)試器,主要特點(diǎn)是使用方便,容易攜帶,安全衛(wèi)生,重復(fù)使用操作簡(jiǎn)便等特點(diǎn)。根據(jù)以上特點(diǎn)對(duì)測(cè)試儀外觀工藝做要求:重量要輕;三維尺寸要小,適合手持要求;氣嘴由于經(jīng)常使用,可以采用價(jià)格適中的一次性氣嘴設(shè)計(jì),符合市面上通用氣嘴標(biāo)準(zhǔn);充電設(shè)備兼容手機(jī)等電子產(chǎn)品充電設(shè)備規(guī)范,采用迷你USB接口;顯示屏幕不能太大,為了縮小整體尺寸,顯示測(cè)試數(shù)據(jù)和相關(guān)報(bào)警信息等。測(cè)試儀外觀滿足人體工程學(xué)相關(guān)要求,外觀采用流線型設(shè)計(jì)。
圖1 系統(tǒng)結(jié)構(gòu)框圖
在這次設(shè)計(jì)中采用了STC12C5A60S2微處理器,該處理器屬于增強(qiáng)型51單片機(jī),是單時(shí)鐘/機(jī)器周期(1T)單片機(jī)。普通51單片機(jī)的機(jī)器周期是振蕩頻率進(jìn)行12分頻后得到的,而該單片機(jī)機(jī)器周期相等于振蕩周期,這樣在相同振蕩頻率下,該單片機(jī)指令執(zhí)行速度至少比普通單片機(jī)快12倍,適合用于響應(yīng)及時(shí)的場(chǎng)合,隨著單片機(jī)技術(shù)的發(fā)展,該單片機(jī)價(jià)格已經(jīng)接近普通51單片機(jī)價(jià)格。它內(nèi)部集成1280 字節(jié) RAM和64KROM空間,適合運(yùn)行大型單片機(jī)程序,給程序員提供方便。內(nèi)部還集成了8路10位高精度高速A/D轉(zhuǎn)換器,指令代碼完全兼容傳統(tǒng)51單片機(jī),本設(shè)計(jì)正是利用單片機(jī)內(nèi)部高精度A/D轉(zhuǎn)換器,在不影響測(cè)試精度的條件下,方便控制測(cè)試儀的整體尺寸,節(jié)約成本。
圖2 MQ—3外部結(jié)構(gòu)圖
傳感器電壓輸出信號(hào)Vout和氣體酒精濃度,以及環(huán)境溫度密切相關(guān),為了減小氣體酒精濃度測(cè)量誤差,需要在傳感器測(cè)量前進(jìn)行預(yù)熱,一般預(yù)熱時(shí)間為 20秒左右。Vout電壓每升高0.1V,實(shí)際被測(cè)氣體的濃度增加20ppm,這里的1ppm=1mg/kg=1mg/L , 常用來(lái)表示氣體濃度,或者溶液濃度。
MQ—3模塊信號(hào)有數(shù)字電平輸出和模擬信號(hào)電壓輸出兩種模式,由于本設(shè)計(jì)需要適時(shí)顯示被測(cè)量的酒精濃度,所以采用模擬電壓輸出模式。模擬電壓輸出范圍0~5V,濃度越高輸出電壓值越高。
為了讓產(chǎn)品便于攜帶,考慮到待機(jī)時(shí)長(zhǎng)問題,本設(shè)計(jì)采用成熟的1602液晶作為顯示單元。1602液晶體積小,能固定顯示兩行各16個(gè)字符,采用移位顯示模式還可以顯示兩行各32個(gè)字符,本項(xiàng)目第一行顯示“Alcohol CON:”,第二行顯示“xxx mg/100ml”。如果將第一閾值閾值設(shè)置為20mg/100ml,第二閾值設(shè)置為80mg/100ml,那么測(cè)試值大于等于20mg/100ml,小于80mg/100ml,第二行顯示數(shù)值會(huì)以1Hz頻率閃爍,并開啟蜂鳴器和報(bào)警燈以相同頻率報(bào)警;如果數(shù)值大于等于80mg/100ml,則數(shù)值以10Hz的頻率快速閃爍,并開啟蜂鳴器和報(bào)警燈以相同頻率報(bào)警。以上警告提示是以國(guó)家質(zhì)量監(jiān)督檢驗(yàn)檢疫局早前發(fā)布的《車輛駕駛?cè)藛T血液、呼氣酒精含量閾值與檢驗(yàn)》(GB19522-2004)為依據(jù)。
鍵盤模塊主要作用是可以設(shè)置閥門值,根據(jù)不同場(chǎng)合對(duì)酒精濃度的要求進(jìn)行修改,擴(kuò)大了本設(shè)計(jì)的應(yīng)用范圍。一個(gè)按鍵定義為數(shù)值加,每按一次數(shù)值增加1mg/100ml;另一個(gè)為數(shù)值減,每按一次數(shù)值減少1mg/100ml;第三個(gè)按鍵為數(shù)值清零,講預(yù)設(shè)的閥門值清零;第四個(gè)按鍵為設(shè)置鍵,用于設(shè)置數(shù)據(jù)確認(rèn)鍵。本系統(tǒng)所需按鍵較少,采用獨(dú)立式按鍵電路連接方式。
鋰電池充電、放電模塊采用TP5410來(lái)解決,TP5410是一款專為移動(dòng)電源鋰電池充電和升壓至恒定5V的電源管理芯片,它可以進(jìn)行高精度的電壓充電和精確調(diào)節(jié)充電電流,還具有預(yù)充、充電狀態(tài)指示和充電截止等功能。R6是充電電流調(diào)節(jié)電阻,將它設(shè)為680Ω,最大充電電流可以到1A,充、放電電路如圖3所示。
圖3 鋰電池充、放電電路圖
本系統(tǒng)耗電部分主要集中在MQ—3傳感器檢測(cè)和蜂鳴器報(bào)警期間,最大供電電流不大,實(shí)際最大工作電流不足300mA,輸出電壓在+5V±0.1V。
總體程序流程圖如圖4所示。系統(tǒng)初始化包括液晶屏初始化、A/D初始化、數(shù)據(jù)初始化。設(shè)定判斷閾值主要是根據(jù)環(huán)境需要設(shè)定極限值,系統(tǒng)允許設(shè)定三個(gè)不同閾值,如果是測(cè)試酒駕、醉駕,則設(shè)定第一個(gè)閾值為20mg/100ml,第二個(gè)閾值為80mg/100ml,第三個(gè)閾值可以不用設(shè)置,系統(tǒng)默認(rèn)不啟用。系統(tǒng)也可以用在其他需要測(cè)試酒精濃度的場(chǎng)合,比如食品加工車間、釀酒車間等。聲光報(bào)警是由一只紅色LED和蜂鳴器組成,通過(guò)報(bào)警聲音頻率和LED閃爍頻率來(lái)確定超出規(guī)定閾值酒精濃度的高低,綠色LED表示濃度值正常。
在酒精濃度測(cè)量過(guò)程中,連續(xù)多次測(cè)量值都會(huì)有不同,為了讓測(cè)量值更加穩(wěn)定和精確,這里采用多次測(cè)量取平均值的辦法,系統(tǒng)每隔10ms測(cè)量一次數(shù)據(jù),將測(cè)量到的五次數(shù)據(jù)做平均處理。
傳感器在測(cè)量不同濃度酒精溶液時(shí),測(cè)試濃度值與電壓值之間是非線性關(guān)系,為了使處理數(shù)據(jù)方便,系統(tǒng)將電壓值區(qū)間分為六段,分別做線性處理,具體映射方式如表5所示。
圖4 程序流程圖
由于考慮到便攜性特點(diǎn),電路板盡量設(shè)計(jì)為長(zhǎng)方形,液晶屏罩在單片機(jī)上,吹嘴通過(guò)軟管接到傳感器上,
讓氣體都能噴到傳感器感應(yīng)頭上。配置四種濃度:10mg/100ml、22mg/100ml、48mg/100ml、112mg/100ml,用該系統(tǒng)測(cè)試四種容易的濃度值為:9.8、22.1、47.1、106.2,測(cè)量最大誤差為5.2%。實(shí)驗(yàn)表明測(cè)量低濃度數(shù)值誤差較小,高濃度測(cè)試數(shù)值誤差稍大,由于測(cè)試環(huán)境酒精濃度普遍不高,在低濃度環(huán)境測(cè)量中精度更高,整體符合系統(tǒng)的應(yīng)用要求。 由于溶液中酒精易揮發(fā),酒精濃度會(huì)比配置值稍低,也會(huì)影響測(cè)量誤差。
表5 電壓值-濃度映射關(guān)系
本系統(tǒng)體積小巧,便于攜帶,采用鋰電池供電,使用成本降低了。充分利用STC增強(qiáng)型51單片機(jī)的高性能,讓微處理器外圍元件減少,增強(qiáng)了系統(tǒng)穩(wěn)定性。閾值設(shè)置靈活,擴(kuò)大了該系統(tǒng)的使用范圍,通用性更強(qiáng)。采用一定的軟件優(yōu)化技術(shù),測(cè)量數(shù)據(jù)更加準(zhǔn)確,達(dá)到了設(shè)計(jì)預(yù)期。