梅峻華 沈暉 胡強(qiáng) 吳文明
摘要:隨著現(xiàn)在高科技的進(jìn)步,對(duì)環(huán)境的要求也越來(lái)越高,環(huán)境問(wèn)題開(kāi)始得到了社會(huì)的重視。項(xiàng)目設(shè)計(jì)一套基于集成傳感器的環(huán)境量檢測(cè)的系統(tǒng),通過(guò)集成傳感器檢測(cè)環(huán)境量并將其發(fā)送到主控單元,由主控單元做出處理。集成傳感器模塊可以由用戶自行添加或減少,即插即用。此外還可以通過(guò)智能手機(jī)實(shí)現(xiàn)檢查結(jié)果的查詢。
關(guān)鍵詞:集成傳感器藍(lán)牙環(huán)境量檢測(cè)
中圖分類號(hào):TP212.9 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2016)05-0000-00
隨著信息化時(shí)代的到來(lái),人們已經(jīng)享受到了智能化帶來(lái)的無(wú)窮便利?;诩蓚鞲衅鞯沫h(huán)境量檢測(cè)系統(tǒng)應(yīng)運(yùn)而生。環(huán)境量檢測(cè)影響著人們的生產(chǎn)生活,但是傳統(tǒng)的環(huán)境量檢測(cè)費(fèi)時(shí)費(fèi)力,人們不便于及時(shí)的掌握準(zhǔn)確的環(huán)境信息。本系統(tǒng)通過(guò)與智能手機(jī)的通信使得環(huán)境信息獲取與控制變得便利。
1 方案設(shè)計(jì)
1.1主控單元
采用STC89C52RC單片機(jī)作為中央處理器,其處理速度完全能適應(yīng)多個(gè)傳感器采集以及傳輸環(huán)境信息的速度。同時(shí)其具有設(shè)計(jì)簡(jiǎn)單方便,功耗低等特點(diǎn)。
1.2智能傳感器的類型
傳感器均使用模塊化集成傳感器,使用起來(lái)十分方便,且工作穩(wěn)定,有利于整個(gè)系統(tǒng)的整合及運(yùn)行。測(cè)量精度較高,適用于民用領(lǐng)域。實(shí)驗(yàn)測(cè)試結(jié)果顯示測(cè)量曲線和實(shí)際曲線十分吻合,具有較高的實(shí)用價(jià)值。
1.3智能手機(jī)與主控單元的通信
采用最新的藍(lán)牙4.2技術(shù),該技術(shù)包括低功耗數(shù)據(jù)包長(zhǎng)度延展,使得功耗更低,連接更加安全。另外業(yè)界領(lǐng)先的隱私設(shè)置讓Bluetooth Smart更智能,具體表現(xiàn)為竊聽(tīng)者將難以通過(guò)藍(lán)牙聯(lián)機(jī)追蹤設(shè)備。
2 電路設(shè)計(jì)
2.1電路實(shí)現(xiàn)
電路設(shè)計(jì)如圖1-圖3所示。
2.2 AD模塊
AD模塊圖4所示,PCF8591是一個(gè)單片集成、低功耗、轉(zhuǎn)換速率高的CMOS器件。其使用I?C與單片機(jī)進(jìn)行通信,并且允許在同一個(gè)I?C上接入8個(gè)PCF8591器件。這樣既可實(shí)現(xiàn)多個(gè)集成傳感器的模數(shù)轉(zhuǎn)換。
2.3 LCD顯示模塊
LCD1602是常用的液晶屏,具有省電,設(shè)計(jì)簡(jiǎn)單穩(wěn)定等特性。由于1602液晶顯示屏的字符發(fā)生存儲(chǔ)器(CGROM)內(nèi)部已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形所以使用起來(lái)非常方便。
3 軟件設(shè)計(jì)
3.1系統(tǒng)部分流程
系統(tǒng)部分流程圖5-6所示。
3.2溫度測(cè)量
采用DSB18B20溫度傳感器進(jìn)行測(cè)量,它是采用單總線的方式進(jìn)行數(shù)據(jù)的收發(fā)的。因此,除了電源和接地以外,只需要將其一個(gè)引腳連接單片機(jī)的一個(gè)I/O口引腳即可。
主程序中的主要功能:bit GetDS18B20ACK(void)//從總線上獲取ACK信號(hào);void WriteByte2DS18B20(unsigned char Dat)//向總線上寫(xiě)入1個(gè)字節(jié)的數(shù)據(jù);unsigned char ReadByteFromDS18B20(void)//從總線上讀取1個(gè)字節(jié)的數(shù)據(jù);unsigned char ReadByteFromDS18B20(void)//啟動(dòng)一次溫度轉(zhuǎn)換,返回值為0表示成功;bit GetDS18B20Temp(int *Temp)//獲取18B20轉(zhuǎn)換后的溫度,返回值為0表示成功。
3.3氣壓測(cè)量
采用了BMP085氣壓傳感器模塊。通過(guò)總線與MCU直接連接。壓力和溫度需要由085內(nèi)部的EEPROM中的校正數(shù)據(jù)進(jìn)行補(bǔ)償。其工作過(guò)程主要包括:氣壓傳感器集成芯片將外部氣壓測(cè)量值數(shù)字化后通過(guò)串行總線傳輸給單片機(jī),而后單片機(jī)將處理后的信號(hào)傳送給LCD顯示。
主程序中主要功能:Init_BMP085(); //初始化氣壓計(jì),bmp085Convert();//氣壓計(jì)進(jìn)行數(shù)據(jù)轉(zhuǎn)換。
3.4光照度
采用光照度傳感器BH1750FVI ,它是一種用于兩線式串行總線接口的數(shù)字型光強(qiáng)度傳感器。
主程序中主要功能:Single_Write_BH1750(0x01);// 通電;Single_Write_BH1750(0x10);// 選擇高(H)分辨率模式;Multiple_Read_BH1750();//連續(xù)讀出數(shù)據(jù),存儲(chǔ)在BUF中,最后將BUF中的數(shù)據(jù)取出,送給LCD顯示。
3.5藍(lán)牙
采用最新的藍(lán)牙4.2技術(shù),實(shí)現(xiàn)了短距離無(wú)線通信,并且安全可靠。
藍(lán)牙數(shù)據(jù)接收程序中主要功能:tmp[ReceiveDataPoint] = a;//將SUBF寄存器中的數(shù)據(jù)傳到tem數(shù)組中;ReceiveDataPoint ++; //開(kāi)始接收,指針地址加1;ReceiveByte = 0;//接收字節(jié)數(shù),只接收一個(gè)字節(jié);if(ReceiveDataPoint >= ReceiveByte){ ReceiveFlag = 1; }//若數(shù)據(jù)接收完畢,則回值為1。
4 性能測(cè)試
4.1 數(shù)據(jù)測(cè)試
測(cè)試方法:以數(shù)據(jù)接收模塊為起點(diǎn),通過(guò)移動(dòng)數(shù)據(jù)測(cè)試裝置,觀察其通訊效果并記錄此時(shí)測(cè)得的各個(gè)環(huán)境參量的實(shí)時(shí)數(shù)據(jù),測(cè)試距離如表1所示。
4.2 數(shù)據(jù)分析
從數(shù)據(jù)顯示中,可以看出通訊信號(hào)在5米~100米為正常接收,120米后通訊內(nèi)容不正常。根據(jù)測(cè)試距離,通信距離符合設(shè)計(jì)要求。同時(shí),各個(gè)傳感器在室外同一外部環(huán)境下測(cè)得的數(shù)據(jù)基本一致,只有很少偏差屬于正?,F(xiàn)象,說(shuō)明各個(gè)傳感器的工作正常。
5 結(jié)語(yǔ)
項(xiàng)目使用了溫濕度、光照度、氣壓和藍(lán)牙等集成傳感器。能夠測(cè)量溫度、光照、氣壓等數(shù)據(jù)。實(shí)際運(yùn)用中效果很好。
參考文獻(xiàn)
[1]郭天祥,51單片機(jī)C語(yǔ)言教程—入門、提高、開(kāi)發(fā)、拓展全攻略[M].電子工業(yè)出版社,2012.
[2]鄭鵬峰,馮勇建,張春紅.溫度傳感器I2C接口設(shè)計(jì)[J].電子測(cè)試,2009(6).
[3]陳蕾,鄧晶等.單片機(jī)原理與接口技術(shù)[M].北京:機(jī)械工業(yè)出版社,2011.
[4]康華光.電子技術(shù)基礎(chǔ)模擬部分(第五版)[M].北京:高等教育出版社,2006
[5]韓悅文.幾種典型濕度傳感器的原理和概要分析[J].江漢大學(xué)學(xué)報(bào)(自然科學(xué)版),2009(1).
數(shù)字技術(shù)與應(yīng)用2016年5期