文獻標識碼: A
文章編號: 0258-7998(2014)08-0024-03
居室空氣質量的好壞影響著人體的健康。許多居室環境的監測是采用PC作為控制中心,不便于移動。而且大多采用有線的布線方式[1],因此存在可移動性差、布線繁瑣、功能可擴展性差、維護難的問題[2]。針對以上問題,本文設計了一種易于擴展并且可移動的無線式居室健康環境檢測系統。本系統根據國家室內空氣質量標準,對主要環境參數進行檢測,并通過數據融合以及模糊算法對其進行處理,用戶可在客戶終端上了解到居室環境質量狀況、環境健康預警及采取的措施。
1 系統總體設計
1.1 總體模塊設計
本系統為了能夠實現可移動性,采用模塊化的設計方式,將系統分為終端采集模塊以及控制中心模塊,模塊結構圖如圖1所示。終端采集模塊由傳感器與ZigBee終端組成,主要實現居室環境信息采集以及數據傳送功能;控制中心模塊由控制器樹莓派與ZigBee協調器組成,主要完成對各終端節點傳送數據的接收以及數據處理,顯示居室環境參數狀況以及與Internet網絡進行通信。
1.2 總體工作流程設計
系統內部由ZigBee網絡組成,所采集的數據通過居室內部所建立的網絡傳輸[3]。總體工作流程如圖2所示。
分布在居室內部的各傳感器定時采集居室環境參數,通過ZigBee無線通信,由控制器接收并處理數據,通過對數據進行數據融合和模糊算法的處理,將居室環境信息顯示到由QT所設計的系統界面中。用戶也可通過網絡遠程訪問控制器,了解居室內部環境情況。
2 系統硬件設計
2.1 控制中心硬件設計
本系統中,控制中心的控制器采用樹莓派(Raspberry pi),它是一款基于ARM的微型電腦主板,又稱卡片式電腦,是由英國慈善組織“Raspberry Pi 基金會”開發的。樹莓派是一個開源的硬件,可支持Linux操作系統,其硬件結構示意圖如圖3所示。
它使用SoC(片上系統),是Broadcom公司的BCM2835,其中CPU以ARM11為核心,接口包括2個USB2.0接口并且支持USB Hub擴展,同時擁有視頻模擬信號的電視輸出接口和HDMI高清視頻輸出接口、一個以太網接口、8XGPIO、一組UART、一組I2C以及兩個選擇的SPI總線[4]。
ZigBee協調器負責各ZigBee終端節點的通信管理、數據的傳輸以及動態組網。本系統中ZigBee協調器選用的是德州儀器公司的CC2530芯片,它是基于2.4 GHz IEEE802.15.4、ZigBee和RF4CE的片上系統解決方案,支持低功耗及安全可靠的無線通信。
樹莓派接口中含有一路UART串行接口,其第8引腳是TXD,第10引腳是RXD。利用該接口可以與ZigBee協調器連接和通信。其硬件連接示意圖如圖4所示。
2.2 采集模塊硬件設計
根據國家室內空氣質量標準GB/T18883-2002對可能影響人體健康以及舒適程度的環境參數進行檢測,主要包括溫濕度、二氧化硫、一氧化碳、二氧化碳和甲醛。傳感器與ZigBee終端節點相連,ZigBee終端節點選用CC2530與ZigBee協調器進行通信。
溫濕度傳感器選用SHT71數字式傳感器,其內部集成了溫度傳感器以及濕度傳感器,并且包括14位A/D轉換器和串口電路。其溫度和濕度的測量分別可達到14位和12位的分辨率。由于其相對濕度的輸出存在一定的非線性,因此需要進行修正。可按式(1)修正濕度值:
RHL=-4+0.648×SORH-7.2×10-4×SORH2(1)
式中RHL為相對濕度修正值,SORH為傳感器相對濕度測量值。
當溫度T≠25 ℃時,需對相對溫度進行溫度補償,補償公式如式(2):
RHT=RHL+(T-25)×(0.01+0.001 28×SORH)(2)
式中RHT是溫度為T時的相對濕度值。
當供電電壓為3 V時,將溫度輸出轉換為實際溫度值的公式如式(3):
T=-39.60+0.04×SOT(3)
式中T為實際溫度值,單位為 ℃。
二氧化硫傳感器選用SO2-7SH型三極型電化學傳感器,測量范圍為0~100×10-6。它將空氣中的二氧化硫氣體轉化為電流,并通過運放將電流信號轉化為電壓信號。
一氧化碳傳感器選用MQ-7。它對一氧化碳氣體有良好的靈敏度,可將電導率的變化轉換為與一氧化碳濃度相對應的輸出信號。當一氧化碳濃度增大時,傳感器的電導率也隨之增大。
二氧化碳傳感器選用MG811。其對二氧化碳有良好的靈敏度以及選擇性,具有很好的穩定性。
甲醛傳感器選用Dart Sensor公司的甲醛檢測傳感器,它能在不采用氣泵抽取的前提下連續地檢測空氣中的甲醛氣體。傳感器輸出地電流與空氣中的甲醛濃度呈線性關系,傳感器檢測到的電信號經過數據處理[5]后送至CCS2530。
3 系統軟件設計
3.1 終端模塊主程序設計
終端模塊的主要作用是采集數據,并將數據打包后通過ZigBee無線網絡發送給ZigBee協調器。終端模塊的主程序流程如下:從硬件上電開始先進行初始化,然后尋找網絡并聯入,加入網絡后進入低功耗模式,等待采集時間到后采集數據,隨后將數據進行處理并通過網絡發送給ZigBee協調器,最后進入低功耗模式等待下一次采集時間。
3.2 協調器主程序設計
ZigBee協調器主要起到建立網絡以及管理網絡的作用,從各個節點接收數據并將數據通過UART傳給控制器。協調器主程序流程如下:從硬件上電開始先初始化,然后建立網絡等待新節點加入,當有新節點加入時儲存其網絡地址并等待接收節點數據,最后對數據進行解析并發送給樹莓派控制器。
3.3 控制器軟件設計
3.3.1 控制器主程序設計
樹莓派通過Python來使用GPIO端口上的針腳,因此需要安裝GPIO的Python庫。為了與ZigBee協調器進行通信,需用到樹莓派上的UART,而系統把這個串口默認為調試口,因此需要編輯配置文件cmdline.txt來關閉調試輸出功能,這樣就可以正常使用該串口。
控制器從ZigBee協調器收到數據信息,并對數據進行處理后用文字語言顯示當前居室環境各個參數狀況以及相應的建議或提醒。控制器主程序流程如下:控制器樹莓派監測UART串口數據,當有數據時,首先解析數據,判斷各個傳感器數據信息,之后對數據進行模糊算法處理,得出各個參數的語言變量值;最后將環境健康預警結果及應采取的措施顯示在客戶終端上。
3.3.2 數據處理
居室內某一個參數需要通過分布在居室不同空間位置的多個傳感器進行數據采集。為了達到檢測精度及減少誤差,在數據處理時需要進行多傳感器數據融合。根據各個終端節點具體的分布情況,用求概率權的方法進行數據融合[6],所選權重不會受到主觀因素的影響,可客觀、真實地反映各個傳感器所測量數據。利用概率權重Wi,每個參數按如下式(4)進行數據融合:
以國家室內空氣質量標準GB/T18883-2002作為參考,對數據融合后的數據進行模糊化處理[7]。為每個參數在其取值范圍上定義3個概念,比如一氧化碳濃度(0~30 mg/m3)定義3個概念(未超標、輕微超標、嚴重超標),選用梯形隸屬度函數。一氧化碳與甲醛作為人體健康主要的影響因素,需要將一氧化碳以及甲醛所得的語言值進行綜合處理求出健康危害程度,相應的健康危害程度規則如表1所示。通過以上的數據處理可以為用戶提供更加直觀易懂的語言信息。
根據各個參數的語言值提供建議或提醒,如當空氣中危險氣體濃度將要超過標準數值時,提醒用戶開窗通風,保持空氣流通;當家居環境濕度過低時,提醒用戶注意保持空氣濕潤,并且會提出建議,提供能保持潮濕的有效措施,這樣有助于保持人居健康環境。
3.3.3 程序界面設計
用QT設計程序界面,在Linux系統中操作方便,用戶更加容易了解環境狀況[8]。在樹莓派上安裝QT用apt-get命令,再安裝qtcreator,最后打開qtcreator配置編譯環境。當打開QT程序后環境信息就會顯示到界面上,其中包括各個參數的具體數值以及相對應的語言值、健康的危害程度以及相應的措施。
本文以樹莓派作為核心控制器,在Linux系統下進行軟件設計,運用ZigBee無線技術,研究和實現了一種家居健康環境檢測系統方案。樹莓派作為主要的控制器,使得系統功能的修改以及拓展更為方便;采用模塊化設計,使得各終端節點可根據具體的要求增減與布局。本系統可應用于更加復雜的智能家居系統以及數據采集應用中。
參考文獻
[1] 查瓏瓏.淺析物聯網智能家居發展[J].科技信息,2012(25):42-63.
[2] 楊曉林.現代住宅綜合小區智能化電氣設計[J].建筑管理現代化,2005(4):22-24.
[3] 曹明勤,張濤,王健.基于ZigBee的農業物聯網監測系統的設計與實現[J].電子技術應用,2013,39(12):86-89.
[4] 侯超.(樹莓派)Siri在制藥企業智能監控中的應用[J].微型機與應用,2013,32(12):92-95.
[5] 魏東旭,王平,石巖.基于ZigBee的無線甲醛監測系統設計[J].通訊技術,2012,45(9):76-78.
[6] 方樹平.多傳感器數據融合的概率權方法[J].傳感器與微系統,2009(8):12-17.
[7] 趙昂,王磊,梁正峰.基于多傳感器的電梯群控系統研究[J].測控技術,2006(7):37-39.
[8] 張強,張偉.基于Qt/Embedded的病房管理系統界面的設計[J].微型機與應用,2013,32(3):7-9.
(收稿日期:2014-04-11)
作者簡介:
李楊,男,1990年生,碩士研究生,主要研究方向: 嵌入式系統控制應用。
郭培源,男,1958年生,博士,教授,碩士生導師,主要研究方向:嵌入式技術設計與應用、網絡智能控制理論及應用、新型傳感器及光電圖像處理與檢測技術應用。