search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

【論文精選】基於Android的智能藍牙溫度計的研究與設計

方天恩1,漆 晶1,馬金輝2,劉德慶1,張朝陽1

(1.重慶郵電大學 移動通信技術重慶市重點實驗室,重慶400065;2.重慶郵電大學 無線傳輸技術研究所,重慶400065)

摘 要: 針對人們對智能溫度計需求的不斷提升,結合目前最流行的Android智能終端和藍牙低功耗通信技術,設計了利用智能移動平台和藍牙通信實現溫度數據實時傳輸顯示的系統。該系統採用基於BLE技術的CC2541晶元,MF52A2熱敏電阻經CC2541節點設備內部A/D轉換器進行溫度數據採集,通過CC2541晶元自帶的藍牙模塊以無線的方式將採集到的數據發送到Android App端。該系統經過測試表明,運行穩定、實時性好、性價比高,滿足了人們對設備溫度的實時監控。

關鍵詞: CC2541;藍牙;Android;溫度檢測

中圖分類號: TN949.6

文獻標識碼: A

DOI:10.16157/j.issn.0258-7998.2017.03.018

中文引用格式: 方天恩,漆晶,馬金輝,等. 基於Android的智能藍牙溫度計的研究與設計[J].電子技術應用,2017,43(3):73-76.

英文引用格式: Fang Tianen,Qi Jing,Ma Jinhui,et al. The research and implementation of smart Bluetooth thermometer based on Android[J].Application of Electronic Technique,2017,43(3):73-76.

0 引言

隨著無線感測網路技術的飛速發展及智能家居概念的不斷普及,人們對生活品質的追求也在不斷提高,各種各樣的無線智能設備開始融入大家的生活,引領人們進入了智能時代。傳統的PC監測設備溫度已經滿足不了現代生活的需求,為此,本文根據需求設計了一套利用智能移動平台和藍牙通信實現溫度數據的實時傳輸顯示系統,同時在進行一對多通信時,在Android App端採用了一種基於能量優先順序的通信調度演算法。本設計主要用於測量葡萄酒的儲藏溫度,但同樣適用於測量工程設備以及各種生產現場。

1 總體架構

本文設計的無線溫度採集系統結構如圖1所示。熱敏電阻與CC2541節點設備連接,由CC2541節點設備內部A/D轉換器進行溫度數據採集,然後通過藍牙BLE協議將數據傳輸至Android設備,進行圖形化溫度顯示,並通過Android設備的3G/4G網路將溫度數據傳輸至伺服器進行存儲,同時也可以通過3G/4G網路下載查看歷史數據。

2 系統設計

2.1 硬體系統設計

本系統硬體主要有以下模塊:電源模塊、MCU控制模塊、藍牙數據傳輸模塊、LED驅動模塊。硬體系統框圖如圖2所示。

2.1.1 處理器單元

CC2541是由TI公司設計並生產的基於2.4 G藍牙無線低功耗單片SOC,該晶元支持藍牙4.0BLE(藍牙低功耗)[1]協議,並通過配置可實現最高2 Mb/s的數據傳輸速率。由於該晶元具有低功耗,外圍原件較少,電路設計簡單,且內部集成最多8通道的12 bit ADC,以及採用QFN封裝的特點,非常適合攜帶型無線移動節點應用,因此,本設計採用CC2541晶元作為無線節點的設備主控。

由於該無線節點設備應用於攜帶型場景,採用電池供電,需要保證功耗儘可能低,因此在設計中,需要採用休眠喚醒功能,必須應用RTC(實時時鐘控制器)時鐘喚醒模塊,故設計中加入32.768 kHz實時時鐘震蕩電路作為RTC時鐘的振蕩源。

2.1.2 天線與巴倫濾波電路

考慮到儘可能降低設計成本,並保證系統工作的穩定性,尤其是在無線傳輸部分數據傳輸可靠性,本設計採用了分立器件設計的巴倫濾波器代替成本較高的單片式集成巴倫濾波器,同時為在器件不一致性較大情況下可對濾波器進行微小調節,在電路設計中預留器件介面,具體射頻電路如圖3所示。圖3中C15為調節元件,在節點設計生產中,可在調試不理想情況下焊接電容元件進行微調。同樣,為保證系統設計成本盡量低,本設計採用板載倒F蜿蜒天線作為射頻發射介面,保證了數據傳輸的穩定性和可靠性,並保證了在應用中的傳輸距離。天線尺寸參數如表1所示。

2.2 軟體系統設計

利用Android移動終端對數據進行讀取並顯示,相比於傳統的PC監測,Android移動終端更加方便、快捷。軟體設計部分的主要內容是:在Android移動設備與BLE設備之間通過藍牙建立穩定可靠的通信,同時提供一個可視化良好的人機交互界面。

(1)為了讓應用運行在支持BLE的Android設備上,需要添加以下藍牙的響應許可權[2]

(2)集中器和BLE設備建立通信流程如圖4所示。具體細節如下:

集中器開啟藍牙,開始對外圍正在廣播的設備進行掃描,掃描到廣播設備后,集中器發送掃描請求,外圍設備響應請求[3]。在集中器與外圍設備通信過程中需要使用唯一識別碼UUID(Universally Unique Identifier)。在數據傳輸過程中,若移動終端定義的UUID與BLE廣播中GAP(Generic Access Profile)定義的UUID相同,一旦移動終端的連接請求通過,集中器與BLE設備即可進入連接狀態[4]。發現服務后,集中器通過指定的UUID向BLE設備發送設置指令,隨後BLE設備將UUID相對應的地址返回給集中器,返回地址中包含集中器需要的最終數據。

(3)App軟體具體工作流程如圖5所示,藍牙4.0之前都是通過Socket套接字來進行連接通信的,同時在實現一點對多點時,大多採用輪循的機制。假如6個外圍設備,則設12 s一個周期,每個設備通信時長2 s,這樣大大增加了通信設備雙方的功耗,而且很容易受到外界諸多因素的干擾,導致通信不可靠。而本文採用廣播包的形式來通知主機,將溫度、電量等信息寫入廣播包位元組中,以獲取廣播包的方式來獲取溫度、電量、設備名字等信息,很容易實現一對多的通信。而且在不進行數據通信時,會進入休眠狀態,只有當需要對設備發送設置指令時,才進行連接,大大降低了功耗,提升了設備的工作時長,這也是低功耗藍牙最大的特點。

(4)考慮到一點對多點的通信情況,即一個移動設備同時與多個BLE設備通信,本文在軟體端提出了一種基於能量(電量)優先順序的通信調度演算法,可以在一定程度上降低功耗。電壓與電量百分比轉換的基本原理是通過ADC(模數轉換器)計算電池電壓。以CC2540晶元用一鈕扣電池為例,電池電壓從2.0 V~3.0 V,即電量的0%~100%。電量轉換關係圖如圖6所示。

具體演算法如下:

(1)初始狀態時,每個BLE設備都處於待機狀態,具有相同的優先順序,人們的手機自然而然作為主設備,主動發起掃描周圍存在的設備,並將掃描到的設備添加到掃描列表中[5]

(2)獲取每個從設備的當前電量百分比,按照電量高低分為M個等級;

(3)根據步驟(2)優先順序從高到低的順序將設備ID添加到一個優先順序隊列中;

(4)主設備按優先順序順序依次向列表中的設備發起連接並傳送數據;

(5)當隊列中的設備為空時,由主設備進行下一輪的掃描,並將掃描到的新設備添加到設備列表中,然後跳轉到步驟(2)繼續執行。

3 系統測試

3.1 通信距離測試

測試要求:在空曠的環境下,有效通信距離為20 m以上;當溫度計放置於冰箱裡面,有效通信距離為4 m。

測試結果:經過測試,空曠地通信距離可達40 m;放置於家庭冰箱內通信距離可達6 m,完全滿足了工業上的設計要求。

3.2 溫度計量測試

測試內容:常溫到冰箱的溫度隨時間的變化和冰箱到常溫的溫度隨時間的變化。本次測試對比採用市面上比較成熟的Digitron 溫度計,測試結果如圖7、圖8所示。

4 結束語

針對當前對溫度監測精度較高的設備(主要以PC為主),研究了基於Android系統的藍牙溫度計,精確有效方便地分析判斷當前設備的溫度,解決了傳統PC監測移動性不高的缺點,同時也解決了傳統設備測溫的局限性,方便了人們的生活。該系統設計所需硬體簡單易用、穩定可靠、成本低廉,具有較好的擴展性;軟體依附於的Android平台軟體具有通用性,易於移植。產品目前已經批量生產,有廣闊的市場應用價值。

參考文獻

[1] 藍牙技術聯盟.Core_V4.0[EB/OL].[2012-10].http://www.bluetootn.org/Technical/Specifications/adopted/htm.

[2] 李剛.瘋狂Android講義[M].北京:電子工業出版社,2015.

[3] 王宏志,曲超,呂洪武.基於藍牙4.0溫濕度的監測[J].吉林大學學報(信息科學版),2016,34(2):296-302.

[4] 陳子龍,張紅雨,李俊斌.CC2540和SHT11的無線溫濕度採集系統設計[J].單片機與嵌入式系統應用,2013,13 (4):41-44.

[5] 廖輝,陳慶奎,高麗萍,等.基於博弈論的藍牙4.0協同通信策略[J].廣西大學學報(自然科學版),2014,39(5):1090-1095.



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦