摘 要:設(shè)計(jì)了一款基于Arduino的便攜式無(wú)線傳輸通信系統(tǒng)。本系統(tǒng)采用Arduino嵌入式單片機(jī)、HLK-RM04無(wú)線通信模塊、傳感器和數(shù)據(jù)接收終端等設(shè)備集數(shù)據(jù)采集、處理、傳輸于一體,文中介紹了系統(tǒng)的硬件選型和設(shè)計(jì)思路[1]。通過(guò)實(shí)驗(yàn)測(cè)試表明基于Arduino的無(wú)線通信系統(tǒng)實(shí)時(shí)性強(qiáng)、準(zhǔn)確率高、且容易操控??蓮V泛應(yīng)用于高程測(cè)量、航空氣象、環(huán)境檢測(cè)等諸多領(lǐng)域。
關(guān)鍵詞:無(wú)線傳輸;Arduino;傳感器;通信系統(tǒng)
DOI:10.16640/j.cnki.37-1222/t.2018.20.132
1 引言
隨著無(wú)線網(wǎng)絡(luò)通信技術(shù)的快速發(fā)展,采用標(biāo)準(zhǔn)的TCP/IP協(xié)議對(duì)傳感器數(shù)據(jù)通過(guò)無(wú)線方式傳輸逐漸增多,無(wú)線傳輸?shù)脑O(shè)計(jì)方法具有較強(qiáng)的通用性、兼容性和移動(dòng)性,可以獲取各類傳感器數(shù)據(jù),將數(shù)據(jù)采用無(wú)線傳輸供IOS系統(tǒng)、 Andriod系統(tǒng)和windows系統(tǒng)等終端接收并存儲(chǔ)使用,系統(tǒng)數(shù)據(jù)的傳輸具有實(shí)時(shí)性、實(shí)用性和穩(wěn)定性,數(shù)據(jù)的獲取效率較高。在高程測(cè)量、航空氣象、飛行航跡應(yīng)用等領(lǐng)域有較好的應(yīng)用[2]。
2 系統(tǒng)總體設(shè)計(jì)
無(wú)線傳輸通信系統(tǒng)由:傳感器模塊、無(wú)線通信模塊、Arduino主控模塊、數(shù)據(jù)系統(tǒng)接收終端等四部分組成。系統(tǒng)的工作原理是將傳感器采集獲取的數(shù)據(jù)發(fā)送到Arduino主控系統(tǒng)上,主控系統(tǒng)對(duì)獲取的數(shù)據(jù)處理并打包發(fā)送到無(wú)線通信模塊,同時(shí)主控系統(tǒng)對(duì)無(wú)線通信模塊控制設(shè)置熱點(diǎn),將打包的數(shù)據(jù)發(fā)送出去,外部終端設(shè)備掃描連接熱點(diǎn)接收并解析出獲取的傳感器數(shù)據(jù)信息,并將數(shù)據(jù)下載保存到終端系統(tǒng)存儲(chǔ)[4]。
3 系統(tǒng)硬件設(shè)計(jì)
無(wú)線通信系統(tǒng)硬件電路由Arduino 控制模塊、無(wú)線通信模塊和氣壓溫度傳感器等部分組成。
3.1 主控系統(tǒng)模塊
本系統(tǒng)采用的主控模塊是Arduino Mega2560嵌入式單片機(jī)。Arduino有類似于C語(yǔ)言IDE集成開(kāi)發(fā)環(huán)境,用戶可以通過(guò)USB接口直接進(jìn)行硬件設(shè)備連接和通信。
3.2 傳輸模塊
無(wú)線通信模塊采用的是HLK-RM04模塊,該模塊兼容串口、以太網(wǎng)和無(wú)線網(wǎng)三個(gè)接口之間的轉(zhuǎn)換,內(nèi)部嵌入了標(biāo)準(zhǔn)TCP/IP協(xié)議棧,為數(shù)據(jù)網(wǎng)絡(luò)傳輸提供了完整快速的解決方案,模塊的工作模式如圖1所示。
傳感器模塊采用溫度、氣壓傳感器等分別對(duì)數(shù)據(jù)檢測(cè)。系統(tǒng)對(duì)數(shù)據(jù)獲取測(cè)試的傳感器采用氣壓溫度傳感器BMP085,該傳感器精度高,對(duì)環(huán)境溫度敏感、采集環(huán)境溫度氣壓數(shù)據(jù)誤差較小,數(shù)據(jù)的處理采用插值、采樣算法,算法復(fù)雜度較低,容易實(shí)現(xiàn)[1,4]。
主系統(tǒng)由Arduino控制協(xié)調(diào)各部件工作,整個(gè)系統(tǒng)模塊的硬件布線圖如圖2所示[1]。
4 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)擬采用蘋果手機(jī)、Arduino手機(jī)和筆記本電腦等終端系統(tǒng)作為接收客戶端。無(wú)線通信HLK-RM04模塊能支持的熱點(diǎn)發(fā)送有效范圍有限制,實(shí)驗(yàn)采用無(wú)線信號(hào)覆蓋范圍20米區(qū)域進(jìn)行測(cè)試接收數(shù)據(jù),此范圍基本滿足了本系統(tǒng)的測(cè)試要求。
通信系統(tǒng)要達(dá)到兼容性,系統(tǒng)需采用標(biāo)準(zhǔn)的TCP/IP無(wú)線通信方式才能滿足各種終端系統(tǒng)對(duì)數(shù)據(jù)的接收和解析。系統(tǒng)對(duì)傳感器數(shù)據(jù)的采集、處理、打包、建立無(wú)線熱點(diǎn),客戶端采用IP輸入、密碼驗(yàn)證登錄連接無(wú)線熱點(diǎn),接收并解析獲取數(shù)據(jù)。系統(tǒng)的軟件流程圖如3所示[1-2]。
從上面主要算法流程程序看出,數(shù)據(jù)采集終端的軟件編程語(yǔ)言結(jié)構(gòu)清晰,語(yǔ)言復(fù)雜度不高,較好的滿足了系統(tǒng)設(shè)計(jì)需求。
5 系統(tǒng)測(cè)試
5.1 WLAN安全配置
系統(tǒng)的無(wú)線通信模塊采用的是嵌入式編程應(yīng)屆模塊HKL-RM04 WiFi。模塊工作的模式采用WiFi/串口轉(zhuǎn)無(wú)線AP。該模式下,WiFi模式工作,其他模式關(guān)閉。WiFi模式下安全方面支持目前所有的加密方式。通過(guò)程序控制,使得整個(gè)系統(tǒng)數(shù)據(jù)采集終端成為WiFi局域網(wǎng)下的設(shè)備[3]。無(wú)線模塊安裝完成后,系統(tǒng)開(kāi)啟串口轉(zhuǎn)無(wú)線AP模式,系統(tǒng)可以通過(guò)瀏覽器登錄設(shè)置界面,設(shè)置網(wǎng)絡(luò)熱點(diǎn)連接。
無(wú)線模塊的內(nèi)置TCP/IP標(biāo)準(zhǔn)設(shè)置IP地址,鏈接密碼,網(wǎng)絡(luò)端口號(hào),網(wǎng)絡(luò)設(shè)置完成以后終端系統(tǒng)數(shù)據(jù)采集傳輸模型的建立就布置完成。當(dāng)系統(tǒng)開(kāi)啟了熱點(diǎn)后掃描連接熱點(diǎn)。
5.2 系統(tǒng)數(shù)據(jù)處理
數(shù)據(jù)接收工具系統(tǒng)需要有解析出標(biāo)準(zhǔn)TCP/IP數(shù)據(jù)包的功能,能打開(kāi)當(dāng)前的網(wǎng)絡(luò)熱點(diǎn)連接,并開(kāi)啟連接以及打開(kāi)網(wǎng)絡(luò)端口,將接收數(shù)據(jù)保存等功能。為了有效獲取終端系統(tǒng)發(fā)送的數(shù)據(jù)信息,須將接收終端系統(tǒng)放置在數(shù)據(jù)采集終端系統(tǒng)設(shè)置的熱點(diǎn)覆蓋范圍內(nèi),掃描終端系統(tǒng)的WiFi熱點(diǎn)并連接熱點(diǎn),待連接穩(wěn)定以后開(kāi)啟TCP/IP接收工具系統(tǒng)設(shè)置連接網(wǎng)絡(luò)IP,端口號(hào),測(cè)試工具開(kāi)啟接收數(shù)據(jù)功能,將接收的數(shù)據(jù)解析出來(lái)顯示并保存到數(shù)據(jù)庫(kù)[4]。
6 結(jié)語(yǔ)
本文設(shè)計(jì)并實(shí)現(xiàn)了一種基于Arduino的傳感器數(shù)據(jù)采集傳輸通信系統(tǒng),并利用該系統(tǒng)采集了氣壓傳感器檢測(cè)的環(huán)境氣壓和溫度數(shù)據(jù)實(shí)現(xiàn)WiFi通信。整個(gè)系統(tǒng)采用嵌入式的終端設(shè)備、系統(tǒng)結(jié)構(gòu)完整、具有便攜性、可靠性、滿足了日常應(yīng)用無(wú)線通信的需求。在日常生活中有一定的社會(huì)應(yīng)用價(jià)值。
參考文獻(xiàn):
[1]朱紅軍.基于氣壓傳感器的海拔高度測(cè)量系統(tǒng)設(shè)計(jì)[J].中國(guó)民用航空飛行學(xué)院學(xué)報(bào),2015:67-70.
[2]陳呂洲.Arduino程序設(shè)計(jì)基礎(chǔ)[M].北京航天航空出版社,2014.
[3]周緒貴.TCP/IP通信測(cè)試工具的開(kāi)發(fā)與應(yīng)用[J].工業(yè)控制計(jì)算機(jī),2014.
[4]王登宏.基于Arduino的手機(jī)同步顯示溫濕度檢查系統(tǒng)的設(shè)計(jì)[J].工業(yè)控制計(jì)算機(jī),2016(07).
課題:本文由中國(guó)民用航空飛行學(xué)院青年基金項(xiàng)目基于Arduino的無(wú)線傳輸通信系統(tǒng)研究(編號(hào):Q2018-167)、基于GPS組合導(dǎo)航的地圖匹配定位技術(shù)研究項(xiàng)目(編號(hào):J2018-17)支持
作者簡(jiǎn)介:朱紅軍(1990-),男,安徽宿松人,碩士研究生,研究實(shí)習(xí)員,研究方向:電子科學(xué)技術(shù)及應(yīng)用、計(jì)算機(jī)信息和通信系統(tǒng)。