陳陽
摘要:室內微環境由室內空氣、溫濕度等多種環境因素構成,微環境的變化對于人們的身體健康和生活舒適度產生非常強烈的影響。本設計將傳統的環境監測技術和物聯網技術相結合,側重于系統的設計和具體實現,從硬件配置到軟件開發過程均給出了詳細實現描述。最終實現了傳感器數據采集,無線數據傳輸和應用層實時顯示功能,以及實時的室內微環境數據監測功能,并通過網絡等方武將室內微環境的數據呈現給用戶。
關鍵詞:監測傳感器物聯網
0 引言
隨著人們收入水平的提高,人們對自身的居住環境也提出了更高的要求,室內環境污染問題受到人們越來越多的關注。室內微環境監測系統通過對室內空氣質量的實時監控,找出室內空氣環境污染的關鍵因素,再通過實時調控,保持室內空氣質量,讓人們走出因室內空氣污染而導致的亞健康狀態。相比傳統測量方式,室內微環境智能監測系統具有實時性,便捷性等特點,可以實現實時監控測量和及時報告反饋。系統以空氣的主要污染源為監測和管控對象,充分考慮溫濕度、光線等因素對室內微環境舒適度的整體影響,將數據上傳到數據庫中,對室內微環境質量監測數據進行統計和分析,為大數據分析建立數據基礎,為后續智能化反向控制提供數據和理論支持。通過系統的應用,強化人們對空氣污染的認識,增強環境保護意識,通過有效的室內空氣質量改善措施,提升室內空氣質量,改善人們的身體健康狀況。
1 系統總體設計
系統主要由數據采集終端、網絡傳輸模塊、數據顯示模塊等三部分構成,如圖1所示。
數據采集部分由單片機外接傳感器組成,傳感器采集所需數據,傳人單片機后進行預處理,然后由WIFI模塊兒傳輸到總控中心ARM開發板進行數據再處理、存儲和顯示。其中單片機采用意大利的開源硬件arduino開發板,網絡傳輸模塊兒采用WIFI方式實現,可以在室內環境下通過無線終端快速訪問系統、快速發送指令,具體采用濟南有人物聯網技術有限公司研發的USER232-A和USER232-T系列開發模塊。顯示模塊功能由ARM11的WEB服務器實現。相較于其他方案,ARM處理器具有更好的處理性能,能更好的支持后續的功能擴展、WIFI可以支持多終端、穩定且安全性高。具體實現數據流程如下:
1.1 實現兩個傳感器數據的實時采集和傳輸。通過單片機采集到傳感器數據后,通過一個WIFI節點,將數據傳輸到WIFI數據匯集節點,實現無線數據傳輸的點對點傳輸。
1.2 網頁訪問ARM板Boa服務器可以讀出傳感器數據。通過移植和配置Boa服務器,搭建好ARM板的開發環境以后,可以實現固定IP訪問開發板內部網頁。
1.3 上傳數據到指定服務器。通過WIFI模塊的SOCKET B接口將數據上傳到網絡服務器備份,保證數據安全的同時方便后期進行數據分析。
1.4 數據超過閥值后蜂鳴器報警。接收到的數據超閾值后,可以通過開發板上的蜂鳴器報警。
2 系統實現
2.1 數據采集層實現
數據采集層要求在特定時間內,采集單片機特定端口傳感器數據,初步判斷數據是否符合要求,并排除誤差較大的數據,然后將數據寫入到WIFI發送端口完成數據發送。
關鍵代碼分析:
int Digital_Value1=0:
int Digital_Value2=0;
int tem=0;
void setup0
{serial.begin(57600);///波特率設置為57600}
void loop()
{//測溫范圍0~100℃,濕度范圍為0~1023
Serial.println(“A”);//flags
Digital_Value1=analogRead(A0);//讀取溫度(數字量)
Digital_Value2=analogRead(A4);//讀取濕度(數字量)
If(0 {serial.prinfln(Digital_Valuel);//發送數據 Serial.println(Digital_Value2);} delay(1800);//刷新} 代碼分析:arduino中的函數提前經過封裝,標準格式包括兩個函數setup和loop函數,一般在setup函數中實現波特率等基本參數的設置,loop函數一直循環執行,需要將數據采集等操作放入loop函數中,在上述代碼中,首先在setup函數中設置數據傳輸波特率為57600,然后在loop函數中定義變量Digital_Value1和Digital_Value2,分別用來存儲從A0和A4口讀到的傳感器數據,然后對數據進行范圍判定,最后通過輸出,將符合要求的數據傳輸到數據發送端口,最后為了保證數據傳輸和接收同步,需要對數據采集過程進行延時。 2.2 數據傳輸層實現 使用USER WiFi模塊支持多種模式和方式傳輸數據??梢圆捎脭祿競髂J?,也可以采用SOCKET數據傳輸模式,同時支持點對點數據傳輸和組網數據傳輸,數據接收中心采用AP模式,數據采集端采用AP+STA模式,不同的模式需要對模塊進行不同的配置,本文采用數據透傳,組網傳輸數據。 (一)對AP的配置參數:設置網絡名稱,MAC地址,數據加密模式,IP地址和DHCP模式等配置。將AP的“模塊將要加入的網絡”設置為自身網絡,設置加密類型。配置串口數據屬性:波特率,數據校驗位,網絡模式和協議,端口號,TCP鏈接數量等屬性。 (二)對STA模塊的配置參數:配置以后產生TP地址和MAC地址的網絡信息。設置無線接入點的基本信息,包括網絡模式、無線接入點的安全設置(加密模式)、局域網參數設置。設置STA的波特率等基本參數,包括校驗位、協議、端口號等。 2.3 數據處理層實現 數據處理層要按時從串口讀取數據,并將讀取到的數據首先進行長度判斷處理,最后重新組合為新字符串寫入數據庫中,最后需要在開發板界面顯示接收到的數據。 主要實現串口初始化功能,將串口配置按模塊封裝為函數,包括波特率設置、校驗位設置、數據位和停止位的配置,同時給出了串口基本操作的代碼基本架構,為后續調用做準備。主函數中首先定義變量,初始化串口,然后從串口中讀取接收到的數據,然后調用字符串組合函數,將接受到的數據組合為可以直接寫入到數據庫的SQL字符串,最后調用數據庫處理函數,存儲數據,然后關閉串口。設計前臺界面顯示傳感器數據,故內容較簡潔,頂部使用一個marquee實現系統標題循環滾動效果,下面使用iframe標簽將從數據庫中讀取到的數據顯示到界面。 3 總結 室內微環境智能監測系統針對室內環境污染進行需求分析,設計了數據采集終端、網絡傳輸模塊、數據顯示模塊,最終成功實現傳感器數據采集,網絡層數據傳輸和數據處理顯示實現了對室內微環境智能監測。系統能夠對環境進行實時監測和分析,并通過網絡等方式將室內微環境的數據呈現給用戶。室內微環境智能監測系統具有實時性,便捷性等特點,實現了實時監控測量和及時報告反饋。