(華北科技學(xué)院電信學(xué)院1,北京 101601;華北科技學(xué)院資產(chǎn)處2,北京 101601;華北科技學(xué)院機(jī)電學(xué)院3,北京 101601)
單總線(1-wire)通信與目前多數(shù)標(biāo)準(zhǔn)串行數(shù)據(jù)通信方式(如SPI/I2C/MicroWire)不同,它采用單根信號(hào)線,既傳輸時(shí)鐘又傳輸數(shù)據(jù),且數(shù)據(jù)是雙向傳輸,因此節(jié)省了I/O口資源,系統(tǒng)結(jié)構(gòu)簡單、便于總線擴(kuò)展和維護(hù)。單總線的測溫技術(shù)在國內(nèi)已經(jīng)得到了廣泛的應(yīng)用。文獻(xiàn)[1]對單總線協(xié)議作了詳細(xì)的介紹;文獻(xiàn)[2]對單總線的應(yīng)用技巧進(jìn)行了詳細(xì)的描述;文獻(xiàn)[3]利用寄生電源的方式,只采用兩芯線纜,即可實(shí)現(xiàn)超長距離多點(diǎn)測溫;文獻(xiàn)[4]利用DS2438單總線智能電池監(jiān)視芯片和壓力傳感器構(gòu)成單總線傳感器,并應(yīng)用于實(shí)際工程中;文獻(xiàn)[5]~[7]將單總線器件成功應(yīng)用于室內(nèi)溫度監(jiān)測和采暖系統(tǒng)。
通過以上單總線技術(shù)的探索,借鑒前人的研究經(jīng)驗(yàn),本文設(shè)計(jì)了基于DS2438[8]的單總線溫濕度傳感器和單總線空氣污染物濃度傳感器;并采用當(dāng)前主流32位單片機(jī)STM32系列控制器,設(shè)計(jì)基于單總線的建筑物內(nèi)空氣質(zhì)量數(shù)據(jù)采集控制器;最后采用工業(yè)組態(tài)軟件設(shè)計(jì)上位機(jī)監(jiān)控軟件,實(shí)現(xiàn)建筑物內(nèi)環(huán)境參數(shù)的監(jiān)控。
系統(tǒng)控制器采用意法半導(dǎo)體STM32系列的微控制器——STM32F103VBT6。這款控制器屬于增強(qiáng)型系列,使用了高性能的ARM?CortexTM-M3 32位的RISC內(nèi)核[9],工作頻率為72 MHz,內(nèi)置128 kB的Flash和20 kB的SRAM。其不僅包含2個(gè)12位的ADC、3個(gè)通用16位定時(shí)器和1個(gè)PWM定時(shí)器,還包含標(biāo)準(zhǔn)和先進(jìn)的通信接口: 2個(gè)I2C接口和SPI接口、3個(gè)USART接口、1個(gè)USB接口和1個(gè)CAN接口,完全滿足系統(tǒng)中采集單元控制和通信的需求?;赟TM32F103VBT6微控制器的室內(nèi)環(huán)境參數(shù)采集控制器的硬件設(shè)計(jì)框圖如圖1所示。
圖1中,通過單總線溫度傳感器DS18B20和單總線芯片DS2438采集多點(diǎn)溫度、濕度和二氧化碳濃度的模擬信號(hào),并將信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)后,由單總線網(wǎng)絡(luò)輸入到STM32控制器。
DS2438芯片內(nèi)部集成一個(gè)13位的溫度傳感器,具有全球唯一的ID。單總線進(jìn)行數(shù)據(jù)傳輸時(shí),控制器不僅可以收到傳感器的數(shù)據(jù),還可以辨識(shí)出是由哪個(gè)芯片傳出的信息。信號(hào)傳輸率可達(dá)到110 kbit/s,在通信鏈路較好的情況下,最遠(yuǎn)傳輸距離可達(dá)到600 m以上。STM32控制系統(tǒng)可通過RS-232接口、CAN或者USB接口與監(jiān)測計(jì)算機(jī)相連。上位機(jī)不僅能夠獲得現(xiàn)場環(huán)境的參數(shù)數(shù)據(jù),還能夠得到其相應(yīng)位置。控制器將采集的數(shù)據(jù)進(jìn)行處理,同時(shí)讀取實(shí)時(shí)時(shí)鐘,將數(shù)據(jù)和時(shí)間顯示在LCD上,并按照設(shè)定的時(shí)間間隔存儲(chǔ)在SD卡中。通過屏幕數(shù)據(jù)查詢按鈕,實(shí)現(xiàn)歷史數(shù)據(jù)查詢功能。
圖1 采集控制器硬件框圖
濕度傳感器選用美國Honeywell公司生產(chǎn)的HIH-3610相對濕度傳感器。該傳感器采用熱固聚酯電容式傳感頭,內(nèi)部集成了信號(hào)處理功能電路,能夠?qū)⑾鄬穸戎底儞Q成電容值,再將電容值轉(zhuǎn)換成線性電壓并輸出。該傳感器具有精度高、響應(yīng)快速、穩(wěn)定性高、溫漂低、抗化學(xué)腐蝕性能強(qiáng)及互換性好等優(yōu)點(diǎn)。利用DS2438內(nèi)部的溫度傳感器實(shí)現(xiàn)環(huán)境溫度的測量,一方面用于溫度值輸出,另一方面用于濕度測量時(shí)溫度補(bǔ)償。利用DS2438內(nèi)部的電壓ADC,通過多路開關(guān)切換分別得到濕度測量值和濕度測量時(shí)單總線的電壓值。利用DS2438內(nèi)部的EEPROM,可存儲(chǔ)濕度傳感器HIH-3610的標(biāo)定技術(shù)參數(shù)(如型號(hào)、精度、5 V電壓下的標(biāo)定值等)。文獻(xiàn)[10]對該濕度傳感器溫度補(bǔ)償進(jìn)行了詳細(xì)的闡述,本文不再詳述,直接引用溫度補(bǔ)償公式:
RH=(sensor%RH)/(1.054 6-0.002 16T)
(1)
式中:T為環(huán)境的實(shí)際濕度值;RH為濕度的修正值。
HIH-3610與DS2438構(gòu)成的單總線濕度傳感器如圖2所示。
圖2中, HIH-3610濕度傳感元件的2引腳為電壓模擬信號(hào)輸出,DS2438通過輸入主ADC采樣引腳4采集濕度傳感器輸出的電壓值,然后通過信號(hào)輸出引腳8(DO)傳送給監(jiān)測裝置。采集控制器通過電壓輸出轉(zhuǎn)換函數(shù)將電壓值轉(zhuǎn)換成相對濕度值。DS2438自身具有溫度采集功能,采集到的溫度值也是通過信號(hào)輸出引腳傳送給控制器。
圖2 單總線濕度傳感器電路圖
QS-1型二氧化錫(SnO2)半導(dǎo)體氣體傳感器,對各種空氣污染源(甲醛、甲苯、煙霧、二氧化碳等有害氣體)都有很高的靈敏度,并且響應(yīng)時(shí)間很快,可在極低的功耗情況下獲得極好的感應(yīng)特性。這款產(chǎn)品非常適合應(yīng)用于空氣品質(zhì)控制系統(tǒng)。當(dāng)傳感器所處環(huán)境中存在污染氣體時(shí)(CO2等),傳感器的電導(dǎo)率隨空氣中污染氣體濃度的增加而增大。單總線空氣質(zhì)量傳感器電路如圖3所示。
圖3 單總線空氣質(zhì)量傳感器電路圖
當(dāng)測量環(huán)境中的二氧化碳濃度超過設(shè)定值、溫濕度超過上下限時(shí),單片機(jī)輸出控制信號(hào)通過光電耦合器隔離后,由繼電器打開新風(fēng)、空調(diào)和加濕器對空氣參數(shù)進(jìn)行調(diào)節(jié)。當(dāng)空氣中的空氣污染物濃度、溫濕度值滿足軟件設(shè)定值時(shí),繼電器斷開,單片機(jī)停止動(dòng)作。
在IAR軟件開發(fā)環(huán)境中,利用STM32固件庫[11],開發(fā)基于STM32F103VBT6的應(yīng)用程序。系統(tǒng)控制程序流程如圖4 所示。
圖4 主程序流程圖
數(shù)據(jù)采集程序流程圖如圖5所示。
圖5 數(shù)據(jù)采集程序流程圖
單總線器件對操作時(shí)序的要求非常嚴(yán)格,在編程時(shí),對DS2438和DS18B20操作程序采取C語言嵌入?yún)R編語言方式編寫。數(shù)據(jù)存儲(chǔ)程序、LCD顯示程序、串口通信程序和鍵盤驅(qū)動(dòng)程序則采用C語言方式編寫。采集子程序返回的電壓值是相應(yīng)傳感器輸出的電壓值,通過轉(zhuǎn)換程序,就可以得到相應(yīng)的濕度或者空氣污染物濃度值。所測溫度值既可作為當(dāng)前環(huán)境的溫度值,又可作為溫度補(bǔ)償程序的溫度參考值。
現(xiàn)場數(shù)據(jù)顯示采用北京迪文3.5英寸(1英寸=25.4 mm)真彩液晶屏,通過串口通信將數(shù)據(jù)顯示在液晶屏幕上。采用串口通信屏,加快了系統(tǒng)軟件的開發(fā)速度。
上位機(jī)監(jiān)控軟件采用 FameView監(jiān)控組態(tài)軟件平臺(tái)開發(fā),實(shí)現(xiàn)上位計(jì)算機(jī)監(jiān)測界面。通過Max232接口芯片,實(shí)現(xiàn)數(shù)據(jù)串行通信、上位機(jī)顯示和數(shù)據(jù)庫存儲(chǔ)。
本文重點(diǎn)介紹了基于STM32單片機(jī)的單總線建筑室內(nèi)環(huán)境監(jiān)測系統(tǒng)設(shè)計(jì)、環(huán)境參數(shù)傳感器硬件電路和軟件設(shè)計(jì)流程。經(jīng)過實(shí)驗(yàn)室測試,驗(yàn)證了該系統(tǒng)工作穩(wěn)定可靠,可有效實(shí)現(xiàn)建筑物內(nèi)溫濕度和空氣污染物濃度的監(jiān)測。測量精度能滿足現(xiàn)代智能建筑空氣質(zhì)量監(jiān)測的需要。該系統(tǒng)非常適用于低速測控場合,且測點(diǎn)對象越多,越能夠顯示其優(yōu)越性。硬件施工簡單,維修方便,性價(jià)比高。通過網(wǎng)絡(luò)擴(kuò)展,系統(tǒng)還可以實(shí)現(xiàn)遠(yuǎn)程監(jiān)控,適合推廣應(yīng)用于辦公樓宇、住宅以及實(shí)驗(yàn)室等場合。
[1] 李曉陽,姜培剛,鄔法磊.基于單總線協(xié)議的溫度監(jiān)測系統(tǒng)[J].工業(yè)控制計(jì)算機(jī),2012,25(3):97-98.
[2] 劉建華.二叉樹算法在單總線技術(shù)中的應(yīng)用[J].自動(dòng)化儀表,2006,27(3):63-64.
[3] 翟延忠,趙玉明.深井地層凍結(jié)一線總線監(jiān)測系統(tǒng)的研發(fā)[J].煤炭科學(xué)技術(shù),2011,39(11):20-22.
[4] 姚敏,劉淮霞.礦井井壁壓力溫度監(jiān)測系統(tǒng)的設(shè)計(jì)[J].煤礦機(jī)械,2012,33(12):242-244.
[5] 劉士興,鄧立瓊,何方,等.智能樓宇監(jiān)測系統(tǒng)研究[J].合肥工業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2010,33(2):215-218.
[6] 韶華,陳書旺.室內(nèi)溫濕度多點(diǎn)測控系統(tǒng)的設(shè)計(jì)[J].儀器儀表學(xué)報(bào),2007,28(8):92-95.
[7] 王喆,張炳坤,華維崗.公共建筑采暖節(jié)能溫度智能控制系統(tǒng)的設(shè)計(jì)[J].自動(dòng)化儀表,2012,33(6):59-62.
[8] 張治國,孔慶,崔納新.電動(dòng)汽車電池組監(jiān)測系統(tǒng)的設(shè)計(jì)[J].電源技術(shù),2011,35(10):43-45.
[9] 洪群歡,呂昂.一種基于STM32的溫室SCADA系統(tǒng)[J].農(nóng)機(jī)化研究,2010(5):128-131.
[10]韓成浩,李柏峰,高曉紅,等.智能小區(qū)溫濕度檢測系統(tǒng)設(shè)計(jì)[J].長春理工大學(xué)學(xué)報(bào):自然科學(xué)版,2009,32(3):496-497.
[11]喻金錢,喻斌. STM32F系列ARMCortex-M3核微控制器開發(fā)與應(yīng)用[M].北京:清華大學(xué)出版社,2011.