金啟芃
(北京工業大學 軟件學院, 北京 100024)
摘要:在智能家居中,環境監測與數據采集是使家居實現“智能”的關鍵步驟。本文設計的監測系統使用近年來新出現的Microduino系列套件制作,具有體積小、操作方便、功耗低、可隨意移動的特點。利用價格便宜、市面上常見的溫濕度傳感器,結合Microduino套件中的模塊,組合成采集節點與匯聚節點,并充分發揮Microduino的優勢,使其不同于其他芯片所搭建的數據傳輸系統。
關鍵詞:物聯網;智能家居;Microduino;數據匯聚
0引言
隨著智能家居行業的發展,智能化的家居產品越來越多,但是最基礎的數據采集技術尚沒有根本改變。無論如何智能系統都離不開環境數據的采集[13]。物聯網數據采集網絡的核心要求是成本低、功耗低、體積小。所以芯片開發板和傳感器的選型是決定其性能優劣的關鍵。每個數據匯聚節點和采集節點都要求功耗低、成本低、體積小,這樣才能更方便地鋪設,運行時間更長,同時成本更低。
Microduino自面世以來,以其Arduino的兼容性、開源、體積小及模塊化的特點等特點,受到了極大的關注。Arduino兼容性和開源的特點使得Microduino系列套件可以方便地使用Arduino既存的庫文件進行開發[4],并且創客之間可以方便地進行技術交流。體積小、模塊化使得Microduino在應用開發上更加方便,便攜性更好,且性能不輸于同核心的Arduino開發板,同樣它也繼承了Arduino的低功耗優勢[5]。
本文設計了一種基于Microduino的環境數據監測系統,可通過數據采集節點進行數據收集并通過ZigBee模塊傳輸到數據匯聚節點,用戶可隨時使用藍牙連接模塊查看環境數據[6]。本文旨在使用Microduino開發板搭建并測試一個包括數據采集節點和數據匯聚節點的數據采集系統。
1系統總體設計
系統分為采集節點和數據匯聚節點兩個部分,采集節點通過溫濕度傳感器采集環境數據并經由MCU處理,通過ZigBee模塊將數據傳輸到數據匯聚節點。數據匯聚節點經過簡單處理后將數據通過藍牙傳輸到手機端藍牙串口App,用戶即可以隨時獲取各個節點的環境數據信息。系統總體結構如圖1所示。
2硬件設計
2.1數據采集節點
數據采集節點的控制部分由MicroduinoCore、MicroduinoZigBee、MicroduinoBM、MicroduinoSensorhub模塊組成。其中Core模塊作為MCU主控,ZigBee模塊用作數據傳輸,BM為電源管理模塊,連接鋰電池供電,Sensorhub用于連接各種傳感器。另外,USBTTL可使用USB線連接電腦隨時調試修改程序。其結構如圖2所示。
MicroduinoCore的PCB如圖3所示,模塊間通過周圍的U27PIN接口相互插接在一起,拼裝完成后整個節點很小,可以隨身攜帶并方便移動。
圖2數據采集節點組成圖3MicroduinoCore開發板PCB圖數據采集節點的數據采集部分采用DHT11實現。通過自制連線與MicroduinoSensorhub擴展板連接。DHT11是一款較為常見的溫濕度傳感器,接口簡單,可長期穩定運行,并且功耗低。硬件部分使用自制的連接線與Sensorhub擴展板連接,其連接圖如圖4所示,提供VCC、GND并留出一個數字口用于接收數據。Microduino可以完全兼容Arduino代碼,故可以使用Arduino中的DHT11庫,調用庫函數并獲得溫濕度數據。
2.2數據匯聚節點
數據匯聚節點由MicroduinoCore、MicroduinoUSBTTL、MicroduinoBM、MicroduinoZigBee、MicroduinoBT組成。其中Core是MCU模塊,對數據進行處理;USBTTL用于下載程序和調試;BM作為電源管理;ZigBee模塊用于接收和發送數據;BT為藍牙模塊,通過手機連接,以查看采集到的數據。總體結構如圖5所示。
圖5數據匯聚節點結構圖數據采集節點和數據匯聚節點間的傳輸使用ZigBee模塊。Microduino系列中有U27PIN接口的ZigBee模塊,使用CC2530芯片。該模塊需要先使用AT命令進行配置才可以使用。本文中將兩個節點上的ZigBee模塊分別配置為路由器和協調器兩種。該模塊的數據發送格式為+ZBD=XXXX,所以在接收時需要做好相應的分割才可讀取數據。該模塊管腳圖如圖6所示,符合U27PIN標準,可以與各種Microduino模塊拼接。
3軟件設計
3.1路由節點
路由節點主要功能是負責采集數據并按照設定好的協議格式打包好,使用ZigBee模塊傳輸給協調器節點。路由節點的程序流程如圖7所示。路由節點的功能比較簡單,進一步的處理交給協調器節點來完成。
3.2協調器節點
協調器節點接收各個路由節點和終端節點的數據并進行整理,同時當用戶通過手機的藍牙串口APP訪問時,可即時地將數據傳輸到手機上。程序流程圖如圖8所示。
4實驗結果
設計完成后將模塊插接好,將采集節點布置在距離匯聚節點7~10 m的位置并連接鋰電池。數據匯聚節點接收到的數據可以通過藍牙串口或電腦串口隨時監測。串口實時接收到的數據如圖9所示。
5結束語
本文使用Microduino系列的開發板進行了數據匯聚節點和數據采集節點的搭建和測試,完成了數據匯聚的功圖9通過電腦串口接收到的數據
能。其中數據采集節點和數據匯聚節點的4個模塊疊加后,其尺寸為長25.4 mm、寬27.94 mm、高25 mm,鋰電池厚度約為4 mm。體積極小,可以將節點放置在家中任意位置進行數據采集和匯聚。電源使用3.7 V-600 mAh的鋰電池進行供電,可持續工作7~8個小時。其單個芯片價格略低于Arduino,遠低于FPGA開發板。所以使用Microduino搭建智能家居中的環境監測系統具有體積小、方便布置、價格便宜、功耗較低等優勢。
參考文獻
[1] 劉熙昌 孔祥營,孫景明,等. 基于Arduino的智能照明設計[J].科教導刊,2015(4):132,152.
[2]何中勝,趙紅玉,莊燕濱,等.基于單片機的通信機房環境監控系統的開發研究[J].微型機與應用,2013,32(17):6062,68.
[3] 渠淼,牛國鋒,冒張霄,等.基于Arduino的智能環境監控系統設計[J].微型機與應用,2014,33(20):8385.
[4] 張強武,唐露新,陳超鋒,等.基于Arduino和Machtalk的溫棚環境監測系統設[J].單片機與嵌入式系統應用,2014,11(11):7174.
[5] 姚琪,楊立斌.Microduino實戰[M].北京:機械工業出版社,2015.
[6] 王勝,基于Android平臺家庭智能系統的研究與實現[J].南京:南京郵電大學,2013.