周 超, 陶 沙
(銅陵學(xué)院電氣工程學(xué)院,安徽 銅陵 244000)
工業(yè)生產(chǎn)過程涉及各類有害氣體,長時間接觸限制(TLV-TWA)和短時間接觸限制(TLV-TWA)給出了不同時間長度的安全濃度數(shù)據(jù)。因此,隨時了解氣體濃度對安全生產(chǎn)十分重要,低功耗通用型的有毒氣體檢測器具有廣泛的應(yīng)用價值。電化學(xué)傳感器的功耗電流極低,可分辨小于氣體濃度的百萬分之一的有毒氣體[1-5],非常適合低功耗的應(yīng)用場合。本文基于電化學(xué)傳感器設(shè)計了一種低功耗、通用型的氣體檢測器,采用Alphasense公司的COH-A2傳感器進(jìn)行了測試,可應(yīng)用到多通道、便攜式的氣體檢測中去,進(jìn)一步完善了氣體檢測器的設(shè)計方法。
電化學(xué)傳感器包括工作電極(WE)、參考電極(RE)和反電極(CE)三種電極,WE通過薄膜與檢測氣體作用,CE連接恒電位電路,該電路向CE提供電流并檢測RE電壓,使得WE與RE端的電壓保持恒定,這樣RE就沒有電流流入或流出,流出CE的電流流入WE,數(shù)值與氣體濃度成正比。再通過IV電路轉(zhuǎn)換成電壓采樣就可以計算出檢測氣體的濃度。設(shè)計的關(guān)鍵包括以下幾點(diǎn):(1)傳感器電流數(shù)值極低,低于100nA/ppm,所以電路運(yùn)算放大器要選用極低輸入偏置電流的器件,配合高值電阻和低頻濾波器,將1/f噪聲和約翰遜噪聲降至最低。(2)運(yùn)算放大器采用單電源供電適應(yīng)低功耗設(shè)計,避免功率浪費(fèi)。(3)流入WE的電流會導(dǎo)致恒電位電路輸出端產(chǎn)生相對WE的負(fù)電壓,不同類型氣體傳感器產(chǎn)生的負(fù)電壓值不同,最大約1V。為了使氣體檢測器的設(shè)計具備普適應(yīng),適應(yīng)不同的氣體傳感器,采用2.5V電壓為恒電位電路輸入,IV轉(zhuǎn)換電路的反饋電阻采用可調(diào)電阻器而不是固定電阻器。(4)氣體檢測對溫度較敏感,所以要包含溫度采樣電路考慮溫度補(bǔ)償作用。(5)考慮到設(shè)備測試等與上位機(jī)的通信需求,提供帶隔離的串口、USB并預(yù)留無線網(wǎng)絡(luò)接口。(6)所有器件均要選用低功耗型。
設(shè)計結(jié)構(gòu)如圖1所示,包括供電模塊、信號處理模塊、數(shù)據(jù)處理模塊和通信模塊的硬件部分和上下位機(jī)軟件部分:供電模塊采用電池/USB供電,當(dāng)接入USB供電時應(yīng)自動斷開電池,所以使用了具有機(jī)械斷開特性的內(nèi)置開關(guān)。信號處理模塊[6-8]包括氣體傳感器電路、IV轉(zhuǎn)換電路和低通濾波電路,把與氣體濃度成正比的電流轉(zhuǎn)換成電壓。數(shù)據(jù)處理模塊包括AD、MCU和溫度傳感器和聲光、LED指示電路,AD和溫度傳感器把采樣電壓和溫度數(shù)值發(fā)送給MCU處理,實現(xiàn)溫度補(bǔ)償[9]和LED顯示并進(jìn)行數(shù)值判斷,如果超出閾值則進(jìn)行聲光指示。MCU采用基于Cortex-M3的ADuCM3027,提供了多個SPI接口可與多種傳感器方便連接,具備超低功耗活動和休眠模式,全開活動時功耗小于30uA/MHz。通信模塊提供了串口和USB,用戶可根據(jù)測試需求選擇不同的方式與檢測器通信。MCU執(zhí)行下位機(jī)程序,用于帶溫度補(bǔ)償?shù)臍怏w濃度計算、顯示、傳輸和指令執(zhí)行,上位機(jī)用于顯示氣體濃度和發(fā)送指令。
圖1 檢測器結(jié)構(gòu)
圖2 供電模塊結(jié)構(gòu)
供電模塊結(jié)構(gòu)如圖2所示,提供了四路供電:(1)運(yùn)算放大器,串口和USB的5V供電;(2)ADC,MCU、溫度傳感器和可編程電阻器的3.3V供電;(3)氣體傳感器、AD的2.5V基準(zhǔn)電壓;(4)隔離側(cè)供電。如圖3所示,ADP2503輸出5V供給運(yùn)放,串口和USB工作,Q1提供反向電壓保護(hù)。輸入范圍2.3~5.5V,可使用電池、USB等其他標(biāo)準(zhǔn)電源,很適合低功耗便攜式氣體檢測器設(shè)計。輸出電壓與外接電阻相關(guān),輸出5V,R1+R2的阻值要接近400kΩ,R1取值330 kΩ,R2取值36.5 kΩ??紤]到低功耗應(yīng)用,SYNC引腳置低設(shè)置為正常模式,此時會根據(jù)負(fù)載情況調(diào)整功耗,輕負(fù)載時功耗僅38μA。EN是使能引腳,置高電平。為保證電路可靠工作,要確定電感和電容參數(shù)的數(shù)值:(1)電感,ADP2503開關(guān)頻率達(dá)到2.5MHz,合適的電感取值可以提高效率并減小EMI,采用1.5μH電感減小電流紋波和電感峰值電流。(2)電容,輸入電容采用6.3V,10μF的陶瓷電容濾除噪聲保持電壓穩(wěn)定,輸出電容采用6.3V,22μF的陶瓷電容保證電路穩(wěn)定和較好的瞬態(tài)響應(yīng)。
圖3 ADP2503電路圖
圖4 LT1763電路圖
2.5V基準(zhǔn)電壓采用低功耗、低噪聲的ADR291提供,最大功耗僅15μA??紤]到驅(qū)動源的負(fù)載電流可能會在線路上產(chǎn)生壓降,為了進(jìn)一步提高基準(zhǔn)電路的輸出精度,在基準(zhǔn)電源輸出端進(jìn)行開爾文連接,如圖5所示,運(yùn)算放大器的輸出是VOUT_2.5+電流* RLOAD1,電流流過RLOAD2又產(chǎn)生了電流*RLOAD2的壓降,RLOAD1= RLOAD2,這樣就消除了在導(dǎo)線上產(chǎn)生的誤差壓降,獲得2.5V基準(zhǔn)電壓VREF。
圖5 ADR291參考電壓電路
圖6 信號處理模塊電路
圖7 下位機(jī)流程圖
2.3.1 溫度傳感器電路
采用不需線性和溫度校準(zhǔn)的ADT7310數(shù)字傳感器采樣環(huán)境溫度進(jìn)行溫度補(bǔ)償,校正溫度變化對氣體傳感器性能的影響。正常工作時功耗約200μA,節(jié)能情況下功耗僅2μA。ADT7310與MCU之間通過SPI通信,DIN用于向傳感器輸入數(shù)據(jù)、DOUT讀取數(shù)據(jù)、SCLK用于輸入數(shù)據(jù)時鐘、CS片選用于通信使能。數(shù)據(jù)通信從CS片選引腳拉低并發(fā)送命令開始,到CS引腳被拉高結(jié)束。ADT7310的SPI命令字節(jié)由0+讀/寫+寄存器+連續(xù)讀取+0+0組成:第8位必須為0,否則不能正常工作;第7位是讀寫位;第6到第4位是寄存器地址位,ADT7310共有8個寄存器,其中關(guān)鍵的有配置寄存器(0x01)用于器件配置(如選擇采樣模式等)、溫度值寄存器(0x02)存儲溫度數(shù)值。第3位用于設(shè)置連續(xù)讀取功能,該功能下只需發(fā)送16個SCLK時鐘就可以通過DOUT引腳讀取溫度數(shù)值。第2位和第1位都是0。以讀取溫度為例,采用默認(rèn)連續(xù)轉(zhuǎn)換和連續(xù)讀取模式,16位數(shù)據(jù)輸出。CS片選信號拉低,DIN引腳寫入0x0c,后面跟0x80,設(shè)置配置寄存器。之后寫入0x54,激活從溫度值寄存器連續(xù)讀取數(shù)據(jù)模式,再向SCLK引腳寫入16個時鐘就可以從DOUT引腳讀取數(shù)據(jù),完成后拉高CS信號,操作結(jié)束,兩次數(shù)據(jù)傳輸之間最好將SCLK引腳置高電平,之后通過查找表或公式執(zhí)行氣體傳感器的溫度補(bǔ)償操作。
圖8 上位機(jī)顯示圖
2.3.2 ADC
根據(jù)信號處理模塊的分析采用16/24位、低功耗、帶可調(diào)增益的AD7798,節(jié)能模式下功耗僅1μA。DIN向寄存器寫入數(shù)據(jù),DOUT/RDY從寄存器讀取數(shù)據(jù),當(dāng)輸出寄存器有新的數(shù)據(jù)時DOUT/RDY被拉低,數(shù)據(jù)讀取完畢DOUT/RDY重新被拉高。SCLK是串行時鐘引腳,所有的數(shù)據(jù)操作都是基于時鐘進(jìn)行的,CS用于器件選擇。AD7798包含多個寄存器,它的操作必須以寫入通信寄存器開始,決定下一步是讀還是寫操作和要操作的寄存器對象。AD7798提供了連續(xù)轉(zhuǎn)換和單次轉(zhuǎn)換模式,連續(xù)轉(zhuǎn)換是默認(rèn)模式,每次轉(zhuǎn)換結(jié)束狀態(tài)寄存器的RDY位被拉低。流程如下:轉(zhuǎn)換完成DOUT/RDY引腳拉低,向DIN寫入0x58,表明下一步操作是從數(shù)據(jù)寄存器讀取數(shù)據(jù),之后從DOUT/RDY引腳讀取數(shù)據(jù),完成操作。單次轉(zhuǎn)換模式通過設(shè)置模式寄存器的MD2-MD0位為001啟用,AD7798上電啟動一次轉(zhuǎn)換,之后進(jìn)入掉電模式。每次轉(zhuǎn)換周期在2×tADC,轉(zhuǎn)換完成DOUT/RDY引腳拉低,讀取結(jié)束再置高電平。單次轉(zhuǎn)換讀取流程如下:先向DIN寫入0x08,表明下一步寫入模式寄存器,接著寫入0X200A配置單次轉(zhuǎn)換模式。單次轉(zhuǎn)換完成后DOUT/RDY引腳拉低,向DIN寫入0x58,從DOUT/RDY引腳讀取數(shù)據(jù),完成操作。AD7798還提供了連續(xù)讀取功能,不需要每次讀取數(shù)據(jù)前都要寫入通信寄存器,流程如下:向DIN引腳寫入0x5c配置為連續(xù)讀取,當(dāng)DOUT/RDY引腳拉低,就可以從DOUT/RDY引腳讀取數(shù)據(jù)。本文使能緩沖器,增益設(shè)為1,采用連續(xù)轉(zhuǎn)換模式,向DIN寫入0x08,之后寫入0x1010,采樣AIN1通道(如果采樣AIN2通道,寫入0x1011),待DOUT/RDY引腳拉低轉(zhuǎn)換完成,向DIN寫入0x58,從DOUT/RDY讀取通道1的采樣數(shù)據(jù),完成操作,器件功耗約180μA。
設(shè)計了帶隔離的串口和USB通信,串口通信采用單電源供電的ADM3251E,其內(nèi)部集成了DC/DC轉(zhuǎn)換電路,DC/DC的振蕩電路把開關(guān)電流通過芯片級的變壓器傳輸?shù)礁边叢⑦M(jìn)行整流操作,線性調(diào)整為5V供給VISO和副邊模塊,實現(xiàn)單電源的隔離通信。DC/DC由VCC引腳輸入電壓控制:當(dāng)輸入電壓在4.5~5.5V時使能DC/DC,如果在3.0~3.7V時DC/DC將被禁止,此時需要通過VISO引腳為隔離的另一端供電。C1+與C1-間的電容用于存儲電荷,把5V的輸入電壓增大到10V。C2+與C2-間的電容也是存儲電荷,把10V電壓反轉(zhuǎn)成-10V。帶隔離的USB通信采用ADuM121N+MCP2200搭建,ADuM121N是雙通道數(shù)字隔離器,具有低動態(tài)功耗。高達(dá)100kV/μs的共模瞬變抗擾度,數(shù)據(jù)速率最小值150Mbps,電路連接簡單。
下位機(jī)程序?qū)崿F(xiàn)電壓和溫度采樣、氣體濃度計算、LED聲光指示、數(shù)據(jù)接收和數(shù)據(jù)傳輸?shù)裙δ?,流程如圖7所示。上電下位機(jī)運(yùn)行,首先進(jìn)行初始化,包括晶振、IO口、定時器、AD、串口、可調(diào)電阻器等。之后進(jìn)入循環(huán),定時器定時啟動采樣,采用多次采樣求平均的方式提高計算精度,求出溫度補(bǔ)償后的氣體濃度通過LED顯示并借助通信接口傳輸給上位機(jī),如果濃度超出閾值則進(jìn)行聲光指示。同時接收來自上位機(jī)的指令并執(zhí)行相關(guān)操作,自定義指令形式為:A B C D E,A表示要做的操作(01表示開始采樣,02表示停止采樣),B C D表示操作的數(shù)值,E表示指令結(jié)尾(0D)。以停止采樣為例,上位機(jī)指令通過通信接口傳輸?shù)较挛粰C(jī),當(dāng)下位機(jī)接收到0D表示指令結(jié)束,再分析A的數(shù)值,等于02表示停止采樣,通過置標(biāo)志位或停止定時器的方式實現(xiàn)。LabVIEW NXG是下一代的LabVIEW版本,在延續(xù)LabVIEW可視化開發(fā)的基礎(chǔ)上進(jìn)行了優(yōu)化,尤其在網(wǎng)絡(luò)化應(yīng)用方面,提供了基于web的界面,無需插件或應(yīng)用程序就可以把這些界面部署到web瀏覽器上,較LabVIEW使用更為便利??紤]到未來可能接入無線網(wǎng)絡(luò)通信需求,采用LabVIEW NXG設(shè)計上位機(jī)。
采用COH-A2氣體傳感器+經(jīng)校準(zhǔn)的CO氣體腔+串口通信進(jìn)行設(shè)備測試,COH-A2傳感器因固有誤差和氣體腔校準(zhǔn)精度的影響,滿量程增益誤差約80ppm,出現(xiàn)在濃度超過400ppm后,且CO濃度高于250ppm會有危險,測試最大濃度取值50ppm。上位機(jī)采用NI-VISA實現(xiàn)串口通信,LabVIEW NXG下的VISA開發(fā)與LabVIEW基本相同:打開session,選中VISA資源,配置VISA,從串口讀取數(shù)據(jù),關(guān)閉session,采樣測試效果如圖8所示。正常條件下,未檢測到CO氣體時功耗約443μA,極限情況下約1.17mA,功耗較低。
設(shè)計了帶溫度補(bǔ)償?shù)牡凸耐ㄓ眯蜌怏w檢測器,電池+USB的多供電方式帶來了使用的靈活性,溫度補(bǔ)償提高了采樣精度,低功耗通用型設(shè)計降低了應(yīng)用成本,帶隔離的通信方式提升了可靠性。測試表明設(shè)備具有良好的穩(wěn)定性,滿足應(yīng)用需求。