0 引 言
隨著科學(xué)技術(shù)的發(fā)展,大氣壓力和溫度測量在天氣預(yù)報(bào)、農(nóng)業(yè)生產(chǎn)、工業(yè)現(xiàn)場及日常生活等領(lǐng)域的應(yīng)用越來越廣泛,人們對(duì)大氣壓力和溫度的測量要求也隨之越來越高。針對(duì)現(xiàn)在大氣壓力和溫度監(jiān)測系統(tǒng)測量精度不高、生產(chǎn)環(huán)境惡劣、不能長時(shí)間停留在現(xiàn)場等情況[1⁃4],本文提出了一種高精度的無線大氣壓力和溫度監(jiān)測系統(tǒng)。本系統(tǒng)以 STC89C52 單片機(jī)作為核心控制元件,BMP180 傳感器采集大氣壓力和溫度數(shù)據(jù),通過射頻模塊傳輸信息到顯示器上,并在特殊情況下進(jìn)行報(bào)警。
1 系統(tǒng)的硬件設(shè)計(jì)
1.1 系統(tǒng)的整體設(shè)計(jì)
監(jiān)測系統(tǒng)的整體硬件組成為數(shù)據(jù)采集模塊、按鍵控制模塊、監(jiān)控顯示模塊、射頻傳輸模塊和報(bào)警模塊。
1)數(shù)據(jù)采集模塊:采集溫度傳感器、壓力傳感器中的數(shù)據(jù)。數(shù)據(jù)采集模塊 BMP180 負(fù)責(zé)環(huán)境因子進(jìn)行監(jiān)控,當(dāng)檢測到該環(huán)境因子的狀態(tài)時(shí),通過射頻通信發(fā)到監(jiān)控顯示模塊。
2)按鍵控制模塊:是一個(gè)普通按鍵開關(guān)器件,由于與地相連,當(dāng)按鍵被按下時(shí),通過軟件消抖程序,它能正確地進(jìn)行接地操作,實(shí)時(shí)把低電平信號(hào)傳輸?shù)絾纹瑱C(jī),從而實(shí)現(xiàn)對(duì)壓力和溫度閾值的設(shè)置操作。
3)監(jiān)控顯示模塊:專門顯示傳感器采集的數(shù)據(jù)。
4)射頻傳輸模塊:通過無線傳輸,把發(fā)射端發(fā)射的數(shù)據(jù)傳遞到接收端。
5)報(bào)警模塊:采用兩種顏色不同的 LED 燈泡作為報(bào)警設(shè)備,BMP180 傳感器采集的壓力或者溫度數(shù)據(jù)通過處理后經(jīng)過射頻模塊發(fā)射,接收端成功接收后單片機(jī)對(duì)數(shù)據(jù)進(jìn)行處理,當(dāng)壓力和溫度數(shù)據(jù)不滿足閾值的要求時(shí),LED 燈就會(huì)進(jìn)行相應(yīng)的閃爍。
1.2 主要硬件選型
1.2.1 核心處理芯片的選擇
目前具備低成本并且編程簡單的單片機(jī)有兩種,分別是 ATC51 系列和 STC52 系列。由于 ST89C52 單片機(jī)在性能方面優(yōu)于 AT89C51 單片機(jī),并且成本更低,所以本設(shè)計(jì)采用 STC89C52單片機(jī)。
1.2.2 數(shù)據(jù)采集傳感器和通信模塊芯片的選擇
由于 BMP180傳感器使用方便,在 3.3 V 和 5 V 電壓下都可以工作,并且比 MPX 壓力傳感器性價(jià)比高,所以本設(shè)計(jì)采用 BMP180傳感器[5⁃6]。
目前市面上通信芯片有許多,其中在過去比較流行的有紅外通信,以及現(xiàn)在通用的無線射頻通信,由于nRF2401 射頻模塊相比于紅外通信模塊傳輸距離更遠(yuǎn),并且穩(wěn)定性比紅外通信模塊更好,所以本設(shè)計(jì)采用nRF2401射頻模塊。
1.3 硬件設(shè)計(jì)模塊
1.3.1 數(shù)據(jù)采集模塊
數(shù)據(jù)采集模塊核心是 BMP180 壓力傳感器模塊,模塊采集到數(shù)據(jù)之后通過 STC89C52 單片機(jī)進(jìn)行處理,然后交給射頻模塊去發(fā)射。BMP 傳感器與 MCU 連接圖如圖 2所示[7⁃10]。
圖 2 BMP 傳感器與 MCU 連接圖
1.3.2 射頻通信模塊
模塊通過 SPI 端口總線可以輕松調(diào)整發(fā)射功率和工作頻率,由于工作電流低,所以能耗小。在-5 dBm 的工作功率時(shí)僅為 10.5 mA,處在接收模式時(shí)僅為 18 mA。這樣讓節(jié)能設(shè)計(jì)更便利,能夠使得 nRF2401在同一根天線下同時(shí)獲得兩個(gè)差異頻道的數(shù)據(jù)。射頻模塊與 MCU連接圖如圖 3所示。
圖 3 射頻模塊與 MCU 連接圖
1.33按鍵控制模塊
按鍵開關(guān),在軟件程序消抖之下,單片機(jī)能準(zhǔn)確地判斷按鍵是否被按下,從而實(shí)現(xiàn)修改壓力閾值和溫度閾值的功能。按鍵控制電路如圖 4所示。
圖 4 按鍵控制電路圖
2 系統(tǒng)的軟件設(shè)計(jì)
2.1 發(fā)送模塊程序
發(fā)送模塊的程序相對(duì)簡單,發(fā)送端只需通過 I2C 總線讀取 BMP180 傳感器的數(shù)據(jù),然后再通過射頻模塊發(fā)送出去。發(fā)射端程序流程圖如圖 5所示。
圖 5 發(fā)射端程序流程圖
2.2 接收模塊程序
接收端射頻模塊接收到數(shù)據(jù)之后,在射頻模塊緩沖區(qū)內(nèi)對(duì)數(shù)據(jù)進(jìn)行了兩次操作,因?yàn)閴毫?shù)據(jù) pressure 是long 類型的,所以對(duì)其一拆為二,一個(gè)取整一個(gè)取余,分兩次發(fā)送,附加上溫度的數(shù)據(jù),總共數(shù)據(jù)發(fā)送端有三組數(shù)據(jù)。接收端程序流程圖如圖 6所示。
圖 6 接收端程序流程圖
3 結(jié)果分析
3.1 實(shí)物測試數(shù)據(jù)分析
1)nRF2401傳輸距離測試
發(fā)射端發(fā)射不同的數(shù)據(jù),每一組發(fā)射數(shù)據(jù)對(duì)應(yīng)一組不同的傳輸距離,看接收端是否接收成功,距離測試結(jié)果如表 1所示。結(jié)果表明有效傳輸距離為 10 m,分析之后發(fā)現(xiàn)與供電電源有一定關(guān)系,另外墻體阻擋,也會(huì)導(dǎo)致相對(duì)傳輸距離不太遠(yuǎn)。
表 1 nRF2401傳輸距離測試
2)BMP180氣壓數(shù)據(jù)測試
湖北荊州標(biāo)準(zhǔn)海拔高度是 32.6 m,也就是在計(jì)算過程中使用此高度作為測試的最低高度,海拔高度隨測試地點(diǎn)的變化進(jìn)行變換。通過 5 組數(shù)據(jù),海拔高度變化32.6 m,36.6 m,40.6 m,44.6 m,48.6 m 來計(jì)算,經(jīng)測試,海拔高度越高,氣壓會(huì)隨之下降,具體測量數(shù)據(jù)及誤差、海拔高度因素對(duì)壓力的影響函數(shù)圖分別如表 2 和圖 7所示。
表 2 BMP180大氣壓力數(shù)據(jù)對(duì)比
圖 7 海拔高度與壓力函數(shù)關(guān)系圖
3)壓力與溫度對(duì)比測試
由于在實(shí)際過程中高度變化不會(huì)太大,因此溫度改變并不多,可以在海拔高度一定的情況下,測試不同地點(diǎn)的大氣壓數(shù)據(jù)。在測試過程中氣壓并不完全隨溫度增加而增加,但通過函數(shù)圖像分析,大致可以表明溫度會(huì)對(duì)氣壓造成影響。壓力與溫度數(shù)據(jù)對(duì)應(yīng)關(guān)系表如表 3所示,對(duì)應(yīng)的函數(shù)關(guān)系圖如圖 8所示。
表 3 海拔高度 40.6 m 下壓力與溫度對(duì)比測試表
圖 8 海拔高度 40.6 m 下壓力與溫度函數(shù)關(guān)系圖
LCD1602顯示PH大氣壓力最大報(bào)警閾值是98 kPa,但是實(shí)測氣壓值是 102.17 kPa,明顯超過了最大閾值,所以此時(shí)藍(lán)色 LED 燈泡閃爍。
圖 9 異常壓力報(bào)警情況
4 結(jié) 論
本系統(tǒng)能對(duì)大氣壓力和溫度進(jìn)行實(shí)時(shí)無線監(jiān)測和報(bào)警,最大無線傳輸距離達(dá)到 10 m,大氣壓力測試相對(duì)精度為±0.01 kPa,平均相對(duì)誤差在 0.008% 左右。在實(shí)際大氣壓力、溫度超過設(shè)置的最大閾值或者低于設(shè)置的最小閾值時(shí)能進(jìn)行實(shí)時(shí)報(bào)警,經(jīng)數(shù)據(jù)測試結(jié)果發(fā)現(xiàn),除了海拔高度因素可以影響大氣壓力之外,溫度因素也會(huì)影響大氣壓力。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)具有測量精度高、使用方便等優(yōu)點(diǎn)。
參考文獻(xiàn)
[1] 李會(huì)坤 .基于 S3C2440與 GPRS的嵌入式環(huán)境數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[D].長春:吉林大學(xué),2016.LI Huikun. Design of embedded environment data acquisition system based on S3C2440 and GPRS [D]. Changchun:Jilin University,2016.
[2] 侯小華,胡文東,張利利 . 一種大氣壓力傳感器數(shù)據(jù)采集系統(tǒng)的研究[J].計(jì)算機(jī)測量與控制,2011,19(9):2300⁃2301.HOU Xiaohua,HU Wendong,ZHANG Lili. Design of altimeter and barometer module monitor system based on CC2430 [J]. Computer measurement & control,2011,19(9):2300⁃2301.
[3] 陳永祿,張莉 . 基于單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J]. 現(xiàn)代電子技術(shù),2015,38(2):73⁃76.CHEN Yonglu,ZHANG Li. Design and implementation of temperature control system based on MCU [J]. Modern electronics technique,2015,38(2):73⁃76.
[4] 郭洪祥,雷文龍 . 基于 MS5540C 的大氣壓力測量系統(tǒng)設(shè)計(jì)[J].自動(dòng)化技術(shù)與應(yīng)用,2012,31(7):50⁃53.GUO Hongxiang, LEI Wenlong. The design of atmospheric pressure measurement system based on MS5540C [J]. Techniques of automation and applications,2012,31(7):50⁃53.
[5] 云中華,蘭萍,李勇峰,等 .一種新型氣壓海拔測量系統(tǒng)的設(shè)計(jì)與研究[J].自動(dòng)化與儀表,2016(7):62⁃65.YUN Zhonghua,LAN Ping,LI Yongfeng,et al. Design and research of a new type of atmospheric pressure and altitude measurement system [J]. Automation & instrumentation,2016(7):62⁃65.
[6] Anon. BMP180 digital pressure sensor data sheet [EB / OL].[2017⁃06⁃24]. http://www.boschsensortec.com.
[7] 杜圣波,毛萬華,楊雁南 .高精度大氣壓力指示儀[J].儀表技術(shù)與傳感器,2011(7):39⁃40.DU Shengbo,MAO Wanhua,YANG Yannan. High precision atmospheric pressure indicator [J]. Instrument technique and sensor,2011(7):39⁃40.
[8] 康華光 . 電子技術(shù)基礎(chǔ)模擬部分[M]. 北京:高等教育出版社,2017.
班寧產(chǎn)品匯總