- 相關推薦
基于WSN 智能家庭溫濕度監測系統設計論文
隨著物聯網技術的發展,比爾蓋茨的智能家庭開始有機會走進尋常百姓家。該文主要介紹一種基于WSN技術實現家庭溫濕度環境監控的方案,本系統易于擴展,可以作為智能科技家庭的框架,通過擴展模塊,可以作為一個完整的智能家庭解決方案。筆者對軟硬件方面進行了研究分析,著重分析系統架構模型,并對子模塊的功能和工作原理做了簡單描述。該系統云平臺采用最新的Node.js技術做支撐,系統基于RESTful風格構建。
1 引言
隨著社會的發展,人們對于生活居住條件的要求越來越高,人們希望可以像比爾蓋茨一樣隨時隨地掌控居住環境。近些年,由于信息技術和傳感器技術等的不斷發展,智能家庭正在悄悄走進千家萬戶。智能家庭是在聯網設備的基礎上,通過傳感器采集數據,網絡后臺獲取并存儲數據,通過特定的算法對數據進行分析,將得到的結果返回給執行機構或通知用戶,從而為用戶提供一個智能的居家生活環境。目前智能家庭系統方案眾多,各有優缺點。
筆者在智能家庭方面進行了研究,提出了一套易于擴展、高性能的智能家庭系統。本系統是一個輕量級的但功能完整的智能家庭系統。傳統的智能家庭對設備的控制大多基于局域網絡,只適應于家庭內部進行監測控制,本系統以家庭為單位,將所有家庭的數據采集到云端存儲,便于以后的分析挖掘,使本系統可以更加智能,同時系統采用分層的模塊化架構,便于維護和擴展。本系統在設計的時候充分考慮安全和成本,力求在安全的前提下降低系統成本。
2 系統架構
2.1 整體架構設計
如圖1所示,每個家庭都通過 TCP/IP 協議接入智能家庭云平臺,在家庭和Internet 之間通過網關管理控制,家庭內部則采用 Zigbee 構建的局域網進行通信,達到監測和控制的目的。用戶可以通過客戶端連接到云平臺查看家庭環境數據和控制家庭中的聯網設備。云平臺可以通過特殊的算法對采集到的數據進行分析處理,層而達到越用越聰明的目的。
Zigbee 是一種低功耗、短距離、低速短延時、簡單大容量、安全可靠的無線網絡傳輸技術[1]。zigbee 具有強大的自組織網絡性能,主要工作在ISM 頻段。其中,2.4GHz 頻段較為常見,并且免費使用。在每一個家庭中通過 Zigbee 構建局域網絡,達到安全可靠、成本低、低功耗的家庭網絡的需求。
家庭網關采用Arduino 模塊。Arduino 是一塊基于開放原始代碼的 Simple I/O 平臺[2],因為 Arduino 是為業余電子愛好者開發的,所以開發語言和開發環境具有簡單易懂的特點,同時Arduino 開發語言是建立在 C語言的基礎上,功能強大,可以盡情發揮想象[3]。Arduino 以其簡單、便宜、功能強大贏得了成千上萬電子工程師的喜愛。
客戶端采用 WEB 形式,降低開發成本并且具有很高的兼容性。當模塊增多,功能復雜的時候可以考慮開發APP,本身 APP 也可以通過 webview 等組建直接嵌入 WEB頁面,同時 WEB 也可以直接和微信打通,方便用戶使用。
2.2 云平臺架構設計
本系統采用 REST 架構。REST(Representational State Transfer)表征狀態轉移是從資源的角度看待整個網絡[4],分布在網絡中的各種資源都是通過 URL(統一資源定位器)來唯一確定,應用程序可以通過 URL 來取得網絡資源的表征,從而改變其狀態。REST 架構希望通過統一的 Hypermedia Controls,實現標準的可擴展性高的標準語義及表現形式,從而達到無需人工干預、機器之間通用的交互協議邊的目的[5]。
物聯網(Internet of things)能夠讓被獨立尋址的物體互相連通,其中涉及的聯網設備非常龐大,物聯網包含的物體個數保守估計在千萬億級別,面對如此強大的資源世界,采用 REST 架構構建物聯網系統,在目前來看是最好的解決方案。
3 硬件實現
3.1 主控制器設計
主控制器采用Arduino+Zigbee模塊,如圖,Arduino 擁有14個數字IO 接口和6個模擬 IO 接口,外部供電5V~9V 直流電源,輸出5V 和3.3V 直流電壓,采用 Atmega328微處理器控制器芯片。 Zigbee 模塊使用 TI 公司的 CC2530芯片,此芯片具有增強型 8051CPU,系統內部可以編程閃存,且其具有4種不同的閃存運行模式模式,可直接在片上系統進行編程且代碼移植性好,技術成熟,成本低等優勢讓其成為目前 ZIGBEE 開發的主流芯片。
3.2 溫濕度監測模塊
通過DHT11溫濕度傳感器實時采集數據并通過 Zigbee 網絡傳輸給網關。DHT11具有快速響應、全程測量、數字輸出等優點。
3.3 繼電器控制模塊
主要由繼電器和簡單的電路構成,用于接收動作命令控制大功率家電設備。
3.4 電路檢錯模塊
電路檢錯模塊獨立封裝,用于檢測設備是否正常,檢錯電路工作原理:協調器獲得開燈指令后,如果電路輸出為高電壓狀態,即設備損壞或電路接觸不良等,則客戶端和主控制器檢錯指示燈亮,提醒用戶檢查電路情況。
4 軟件實現
4.1 硬件系統工作流程
設備開始運行先進行初始化,然后嘗試連接到云平臺,如果沒有連接成功則寫入日志并再次嘗試,三次之后若還沒有成功則對用戶做出反饋。硬件設備成功連接到網絡之后開始等待指令,得到指令之后立即執行指令,成功則繼續等待執行下一條指令,如果執行不成功則記錄到日志并對用戶做出反饋。用戶可以隨時查看設備日志,方便發現問題并解決問題。
4.2 云平臺設計實現用
服務器采用 Node.js 技術實現。Node.js 是一個可以讓服務器運行 javascript 腳本的平臺,使 javascript 可以像 PHP、Perl、Ruby、Python 等語言一樣不需要依賴于瀏覽器運行。 Node.js 是為實時 WEB 而生,在構建之初就考慮在實時響應、超大規模數據要求下架構的可擴展性。
Node.js的特點是單線程、異步 IO、事件驅動,這種程序設計模型的優點是性能優異、開發效率高[10]。目前 Node.js 憑借其優秀的特性吸引了一大批開發者和公司,形成了一個龐大的生態系統。成千上萬的第三方模塊讓 Node.js 開發更加高效,因此我們選擇采用 Node.js 技術構建智能家庭系統的服務器平臺。
4.3 客戶端設計實現
通過服務器提供的 API,可以很方便實現各個平臺的客戶端。為了減少開發周期和盡可能多的適配客戶端,我們選擇先實現自適應的 WEB 客戶端。采用WEB 技術實現客戶端,可以一次開發多種
客戶端適配,不同尺寸、不同平臺的設備都可以得到一個完美的呈現。
5結束語
本文是在參考了其他智能家庭實現方案的基礎上,進一步簡化流程和優化操作之后設計的一種智能家庭解決方案。相比以往Zigbee網絡的智能家庭系統,主要增加了HTTP協議支持,讓用戶隨時隨地掌控家庭;采用RESTful風格設計,方便設備連接和二次開發,加入云平臺的概念,給智能家庭帶來無限可能。目前系統存在的不足是服務器端無法直接發起會話,后期會通過mqtt協議解決這個問題。
【基于WSN 智能家庭溫濕度監測系統設計論文】相關文章:
基于系統設計的科研管理論文09-22
智能樓宇監控系統論文01-02
基于DSP整流器設計論文04-18
智能停車場系統設計方案12-22
在線監測系統方案03-31
基于SCOSM自適應教學模型設計論文07-12
智能停車場管理系統設計方案12-23
智能停車場管理系統設計方案12-23
FPGA數據采集與回放系統設計論文04-24