文獻標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.190752
中文引用格式: 胡仕兵,,陳子為. 一種無線酒精濃度探測儀的研制[J].電子技術(shù)應(yīng)用,,2020,46(3):66-70,,75.
英文引用格式: Hu Shibing,,Chen Ziwei. Development of a type of wireless alcohol concentration detector[J]. Application of Electronic Technique,2020,,46(3):66-70,,75.
0 引言
在食品工業(yè),、釀酒行業(yè),、石化和工礦企業(yè)、環(huán)境檢測,、公安交通管理,、社會公用事業(yè)等一些國民經(jīng)濟生產(chǎn)和人們工作生活的領(lǐng)域和場合中,常常需要檢測特定環(huán)境中酒精氣體的濃度,,以確保工廠企業(yè)環(huán)境安全和人民生命財產(chǎn)安全[1-4],。如監(jiān)控酒精生產(chǎn)車間和石化廠的酒精濃度,可以避免工廠起火和爆炸事故的發(fā)生,;監(jiān)測工礦企業(yè)場地的酒精濃度,能避免工作人員出現(xiàn)酒精中毒等惡性事故,;檢測司機體內(nèi)酒精含量,,可以防止駕駛?cè)藛T酒后駕車,減少惡性交通事故的發(fā)生,。因此,研制酒精氣體濃度檢測儀具有十分廣闊的現(xiàn)實和潛在的市場需求,,并具有十分重要的意義。傳統(tǒng)的酒精氣體檢測儀因傳感器性能,、電路設(shè)計、數(shù)據(jù)處理算法等原因,,存在著氣體選擇性不高,、抗干擾性能差,、智能化程度低、儀器操作復(fù)雜,、無法實時保存和調(diào)看數(shù)據(jù)等突出問題[3-4]。鑒于此,,筆者設(shè)計和研制了一種無線智能酒精濃度探測儀,,彌補了傳統(tǒng)酒精檢測儀器的缺點和不足。
1 系統(tǒng)總體方案
該酒精濃度探測儀由發(fā)送端和接收端兩部分組成,,其原理框圖分別如圖1和圖2所示。發(fā)送端主要包括酒精濃度傳感器與A/D轉(zhuǎn)換電路,、STC90C52RC單片機,、濃度閾值設(shè)置與聲音報警電路,、語音播報電路、LCD顯示電路和無線收發(fā)電路六部分,;接收端由無線收發(fā)電路、STC90C52RC單片機,、數(shù)據(jù)接口通信電路和上位計算機組成,。
2 系統(tǒng)硬件電路設(shè)計
2.1 傳感器電路與A/D轉(zhuǎn)換電路
TGS2620為日本費加羅(FIGARO)公司生產(chǎn)的一款可以探測氣體中酒精濃度的半導(dǎo)體氣體傳感器,,具有靈敏度高,、功耗低,、壽命長、成本低等特點[5-6],。其電路連接如圖3所示,其中,,RH為加熱器電阻,室溫下時為83±8 Ω,;RS為傳感器電阻,,其阻值和還原性氣體濃度之間的數(shù)學(xué)關(guān)系為:
通過檢測VRL就可以確定出待測氣體濃度C,。
電路中運放OP07接成電壓跟隨器形式,,對傳感器和后級電路進行隔離,減小電源波動和外界因素對采樣數(shù)據(jù)的影響。ICL7660是MAXIM公司生產(chǎn)的小功率極性反轉(zhuǎn)電源轉(zhuǎn)換器,,作用是將+5 V電源變換成-5 V電源為OP07供電,。其中,C1,、C2采用漏電小,、介質(zhì)損耗低的10 μF鉭電容,,以提高電源轉(zhuǎn)換效率,。TLC1549是TI公司生產(chǎn)的10位分辨率逐次逼近型ADC芯片,,具有自動采樣和保持,、可按比例量程校準(zhǔn)轉(zhuǎn)換范圍,、抗噪聲干擾功能,,在滿刻度時總誤差最大僅為±1 LSB,。
2.2 LCD顯示,、閾值設(shè)置與聲音報警電路
16×2個字符液晶顯示模塊DM-162顯示報警閾值和酒精濃度值,。為了減少單片機I/O口的使用數(shù)量和簡化電路結(jié)構(gòu),,采用間接控制(4位數(shù)據(jù)總線)方式,接口電路如圖4上部分所示,。初始化時,需寫入28H指令碼將8位總線轉(zhuǎn)為4位數(shù)據(jù)接口方式,。管腳BLA,、BLK和VL分別是液晶背光源正極,、負極和顯示對比度調(diào)整端,,RS,、E分別是寄存器選擇端,、讀/寫信號線和使能端,。
酒精濃度閾值設(shè)置和聲音報警電路如圖4下部分所示,。當(dāng)設(shè)置鍵S1按下時,進入閾值設(shè)置(初始閾值為500 ppm)界面,,再按下鍵S2或S3,,對閾值作增加或減小操作,,步長為20 ppm。閾值設(shè)置好后寫入STC90C52RC單片機片內(nèi)5 KB EEPROM的第一扇區(qū)2000H和2001H地址中,,使系統(tǒng)重啟不必重新設(shè)置,。若酒精濃度值大于閾值,將P0.7口線置為低電平,,三極管8550驅(qū)動蜂鳴器發(fā)聲音報警。
2.3 語音播報電路
采用華邦(Winbond)公司的ISD2560語音錄放集成芯片作酒精濃度值播放,,電路如圖5所示,。話筒采用差分形式接入到片內(nèi)前置放大器的MIC端和MIC REF端,,以抵消噪聲和提高輸入共模抑制比,。揚聲器接成雙端輸出形式,輸出功率為單端用法時功率的4倍,。單片機的P2口,、P3.0和P3.1口線分別與地址線A0~A9相連,用來設(shè)定ISD2560片內(nèi)480 KB EEPROM(地址為0H~257H)中存儲語音段的起始地址,,錄音和放音功能均從該起始地址開始,錄音過程中信息段地址自動增加,。本系統(tǒng)在ISD2560中需錄入語音信息有:“當(dāng)前酒精濃度值為”、“零”,、“一”,、“二”,、“三”,、“四”,、“五”、“六”,、“七”,、“八”,、“九”、“十”,、“百”、“千”,、“點”、“ppm(濃度單位)”,。由于ISD2560的語音錄放時間為60 s,,按每秒3個漢字計算,則可錄放180個漢字,,因此滿足播報要求。此外,,通過P3.0,、P3.1和P2.0~P2.6口線可以配置ISD2560的操作模式[7-8](地址為300H~3FFH),。P3.4~P3.6口線分別用來控制語音芯片的片選、芯片的開關(guān),、錄音/放音模式選擇,。P3.2口用來判斷芯片的存儲空間是否已經(jīng)填滿或者信息存儲是否溢出,。由于錄音時在每個信息段結(jié)尾處自動插入標(biāo)志,,當(dāng)放音遇到該標(biāo)志時產(chǎn)生寬約為12.5 ms的負脈沖,。用P3.3口檢測到此脈沖的上升沿后才播放另一段錄音,,避免語音播放不連續(xù)。
2.4 無線收發(fā)電路
系統(tǒng)采用NORDIC公司生產(chǎn)的工作于2.4~2.483 5 GHz的ISM頻段的單片無線收發(fā)器芯片nRF24L01完成無線數(shù)據(jù)的收發(fā)工作,,nRF24L01的最高傳輸速率為2 Mb/s,,電路如圖6所示。穩(wěn)壓芯片LM1117-3.3 V將5 V輸入電壓轉(zhuǎn)換成3.3 V給nRF24L01供電,。nRF24L01與單片機接口為四線SPI方式,CSN,、SCK,、MOSI、MISO管腳分別是SPI的片選使能線,、時鐘線,、數(shù)據(jù)輸入線、數(shù)據(jù)輸出線,。IRQ為中斷信號線(低電平有效),,接至單片機的外部中斷管腳,單片機主要是通過該接口線與nRF24L01進行通信并判斷數(shù)據(jù)接收和數(shù)據(jù)發(fā)送是否完成,。CE為芯片的RX/TX模式選擇線,。IREF為參考電流輸入端,通過22 kΩ電阻接地,。管腳ANT1和ANT2給天線提供平衡的RF輸出,,通過后接的簡單射頻網(wǎng)絡(luò)匹配電路獲得單端50 Ω的阻抗輸出。網(wǎng)絡(luò)匹配電路在發(fā)送模式時阻止諧波,,在接收模式時克制本地振蕩漏出,。VDD_PA管腳輸出1.8 V電壓,給片內(nèi)功率放大器提供電源,。
2.5 數(shù)據(jù)接口通信電路
接收端的計算機與單片機間的通信由串行USB接口集成電路CH340T完成,,如圖7所示。CH340T支持USB1.1或者USB2.0/USB3.0通信,,具有仿真接口,,并且可以升級外圍串口設(shè)備,支持常用的MODEM聯(lián)絡(luò)信號,,支持IRDA規(guī)范的SIR紅外通信,,提供RS232、RS485,、RS422接口等功能。CH340T內(nèi)置有獨立的收發(fā)緩沖區(qū),,支持通信波特率50 b/s~2 Mb/s的單工,、半雙工、全雙工等異步串行通信,。圖7中,在CH340T芯片的發(fā)送腳TXD上反接一個二極管1N4001,,防止該引腳將電流倒灌到單片機,;在接收引腳RXD上加一個300 Ω的限流電阻來防止單片機對CH340T倒灌電流,;從而避免電流倒灌導(dǎo)致不需要供電工作的另一方芯片繼續(xù)工作,。
3 系統(tǒng)軟件設(shè)計
3.1 下位機軟件設(shè)計
下位機的程序開發(fā)和調(diào)試是在Keil μVision4集成開發(fā)環(huán)境下進行的,,包括發(fā)送端和接收端的軟件設(shè)計,。
3.1.1 發(fā)送端軟件設(shè)計
發(fā)送端軟件流程如圖8所示。單片機上電后進行系統(tǒng)初始化,,完成單片機內(nèi)部系統(tǒng)變量的初始化以及TLC1549,、DM-162、ISD2560和nRF24L01等外部設(shè)備的初始設(shè)置,;然后延時大約5 min,,預(yù)熱傳感器TGS2620,,保證傳感器工作正常,;程序初始化結(jié)束后,,系統(tǒng)進入監(jiān)控狀態(tài),。若報警閾值設(shè)置鍵按下,,進入報警限設(shè)置模式;若錄音鍵按下,,進入錄音模式,;然后啟動A/D轉(zhuǎn)換獲取采樣數(shù)據(jù),,作濾波處理,、標(biāo)度變換和系統(tǒng)誤差校正后得到被測酒精濃度值,。該值與報警閾值比較,若結(jié)果是“大于”或“等于”,,啟動蜂鳴器發(fā)聲程序,作聲音報警,,提示酒精濃度超標(biāo);接著該值在DM-162液晶模塊上實時顯示,;最后判斷放音鍵是否按下。若按下則根據(jù)酒精濃度值查找ISD2560中對應(yīng)語音信息的存儲地址開始放音,;放音結(jié)束后,,該值由nRF24L01發(fā)送程序發(fā)送到接收端;待發(fā)送完成后,,采集,、顯示和發(fā)送新一輪的酒精濃度數(shù)據(jù)。
發(fā)送端軟件應(yīng)用了防脈沖干擾平均濾波法[9]對A/D采樣數(shù)據(jù)作預(yù)處理,。其原理是:連續(xù)采樣K次,,然后對這K個采樣數(shù)據(jù)進行比較,,去除其中的最大值和最小值,,計算剩下的K-2個數(shù)據(jù)的算術(shù)平均值作為采樣有效值,。該方法融合了中位值濾波法和算術(shù)平均濾波法的優(yōu)點,,既可去掉脈動性質(zhì)的干擾,,又可消除偶然出現(xiàn)的脈沖性干擾引起的采樣值偏差,。為加快計算速度,設(shè)計數(shù)字濾波器時K=10,。
為了提高系統(tǒng)的實時性,軟件中采用分段線性插值法[10-11]作標(biāo)度變換,。過程如下:(1)按傳感器TGS2620的標(biāo)定曲線,,將該曲線進行非等距分段(曲率變化大(小)時,,樣點距離取小(大)),,選取各分段點坐標(biāo)(VRLi,,Ci)(i=0,1,,…,,M),其中:VRLi和Ci分別為不同樣點時傳感器輸出電壓值和對應(yīng)濃度值,;(2)計算相鄰樣點間的擬合直線斜率ki=(Ci+1-Ci)/(VRLi+1-VRLi)(i=0,,1,…,M-1),;(3)將M組坐標(biāo)數(shù)據(jù)(VRLi,,Ci)和對應(yīng)斜率ki存儲于單片機片內(nèi)EEPROM的第二扇區(qū)(地址為2200H~23FFH)中;(4)每采集到一個電壓值VRL即查詢EEPROM表,,找出VRL所在區(qū)間(VRLi,,Ci)~(VRLi+1,Ci+1),,取出該區(qū)間(VRLi,,Ci)和ki數(shù)據(jù),用線性插值公式C=Ci+ki(VRL-VRLi)計算出當(dāng)前酒精濃度值C,。
將采集到的N個樣本數(shù)據(jù)(xi,,yi)代入式(5)中即得到系數(shù)a、b的值,,并存入單片機的內(nèi)存單元中,。系統(tǒng)測量時,將標(biāo)度變換后的酒精濃度測量值x代入誤差校正方程y=ax+b中,,即可得到校正后的酒精濃度值y,,從而達到消除系統(tǒng)誤差的目的。
3.1.2 接收端軟件設(shè)計
接收端單片機的軟件流程如圖9所示,。接收端開機上電后,,程序初始化設(shè)置nRF24L01和串口,然后進入監(jiān)控場景,。當(dāng)nRF24L01接收到一幀完整的酒精濃度數(shù)據(jù)后,,立即通過串口發(fā)送到上位機。接收端單片機與PC之間數(shù)據(jù)交互采用異步通信模式,。獨立波特率,,串口協(xié)議設(shè)置為:波特率9 600 b/s,8 bit數(shù)據(jù)位,,1 bit停止位,,無校驗位,。
3.2 上位機軟件設(shè)計
上位機用戶界面采用通用的基于對象的程序設(shè)計語言Microsoft Visual Basic 6.0開發(fā),,實現(xiàn)酒精濃度數(shù)據(jù)的接收、顯示和保存,。軟件用到了串行通信控件MSComm,。MSComm控件是Microsoft公司提供的Windows下串行通信編程的ActiveX控件,通過對此控件的屬性和事件進行相應(yīng)的編程操作,,即可輕松地實現(xiàn)串行通信,。串口通信協(xié)議與接收端完全相同。上位機軟件的程序流程如圖10所示。
4 系統(tǒng)測試
為了檢驗本系統(tǒng)的測量性能,,采用無水乙醇和純凈水按照一定體積比配制標(biāo)準(zhǔn)的酒精溶液作為被測量對象,,測試結(jié)果如表1所示。其中:單位ppm=μg/mL表示1 mL酒精溶液中含酒精的質(zhì)量,。由測量結(jié)果可以看出,,測試數(shù)據(jù)覆蓋傳感器的量程,測試最大相對誤差小于±2%,,優(yōu)于同類設(shè)計產(chǎn)品[3-5],。
為了獲得本儀器發(fā)送端與接收端的最大無錯誤率的通信距離,在室外進行了nRF24L01隨距離的錯誤率(臨界區(qū)間)測試實驗,,結(jié)果如表2所示,。其中,每米的錯誤率是10次試驗后計算得到的平均值,??梢姡琻RF24L01的傳輸距離可達到100 m,,略高于RFID,、ZIGBEE和藍牙等無線通信技術(shù)[12]。
5 主要技術(shù)指標(biāo)
本儀器主要技術(shù)指標(biāo)如下:(1)測量范圍:50~5 000 ppm,;(2)靈敏度(傳感器電阻變化率):0.3~0.5,;(3)測量精度:≤±2%;(4)傳輸距離:≤100 m,;(5)工作電源:DC+5 V,;(6)工作環(huán)境溫度:-40 ℃~+70 ℃;(7)工作環(huán)境相對濕度:0~85%RH,。
6 結(jié)束語
本文設(shè)計研制了一種基于STC90C52RC單片機,、TGS2620酒精傳感器和nRF24L01無線通信芯片的酒精濃度探測儀。該儀器現(xiàn)已投入到成都市某小型釀酒廠酒池的實際生產(chǎn)中?,F(xiàn)場工作情況表明:系統(tǒng)運行正常,,工作可靠;系統(tǒng)具有氣體選擇性和靈敏度高,、穩(wěn)定性好,、智能化程度高、通信距離遠,、功耗低,、抗工業(yè)干擾能力強、性價比優(yōu)異等優(yōu)點,。該儀器可以應(yīng)用于食品加工行業(yè),、工礦企業(yè),、石油和化學(xué)工業(yè)、環(huán)境檢測與保護,、社會公用事業(yè),、高空作業(yè)人員、公安交通管理(如酒后駕車,、交通警察執(zhí)法)等需要現(xiàn)場檢測或無線遙測酒精氣體濃度的場合中,,市場應(yīng)用前景廣闊、推廣價值較高,。
參考文獻
[1] 李海濤.基于QNX的遠程車載酒駕智能監(jiān)控系統(tǒng)[J].電子技術(shù)應(yīng)用,,2014,40(8):136-139.
[2] 宋曉宇,,高國偉,,李世川,等.基于單片機控制的酒精濃度檢測系統(tǒng)的設(shè)計[J].傳感器世界,,2017,,23(8):18-23.
[3] 俞露蘆,陶大錦.基于單片機的酒精濃度檢測儀的設(shè)計[J].微型機與應(yīng)用,,2014,,33(22):34-36.
[4] 葛毓.基于GPRS/GPS的車載酒精檢測和控制電路的設(shè)計[D].南昌:南昌大學(xué),2010.
[5] Zhang Zhe,,Tong Jin,,Chen Donghui,et al. Electronic nose with an air sensor matrix for detecting beef freshness[J].Journal of Bionic Engineering,,2008,,5(1):67-73.
[6] FIGARO Group.General Information for TGS sensors[EB/OL].(2008-04-23)[2019-07-03].http://www.figarosensor.com/products/common(1104).pdf.
[7] 程可嘉,王振松,,劉曉云.ISD2560在門禁系統(tǒng)語音播報中的應(yīng)用[J].自動化技術(shù)與應(yīng)用,,2009,28(5):75-77.
[8] 胡珍玉.智能語音提示器系統(tǒng)設(shè)計[J].應(yīng)用能源技術(shù),,2012,,15(12):34-38.
[9] 張秀再,陳彭鑫,,張光宇,,等.河流水質(zhì)實時監(jiān)測系統(tǒng)[J].電子技術(shù)應(yīng)用,2015,,41(2):82-85.
[10] 梁曉雷.基于單片機的分段線性插值算法實現(xiàn)[J].電腦知識與技術(shù),,2012,8(21):5236-5243.
[11] 韓瀟,,曾立,占豐,等.基于分段多項式近似的DDFS研究及FPGA實現(xiàn)[J].電子技術(shù)應(yīng)用,,2018,,44(3):22-30.
[12] 佚名.各種主流無線通信技術(shù)[EB/OL].(2018-05-11)[2019-07-03].http://tech.rfidworld.com.cn/2018_05/d78-ffddd177e3bca.html.
作者信息:
胡仕兵,陳子為
(成都信息工程大學(xué) 電子工程學(xué)院,,四川 成都610225)