王龍興,張宇波,邢立釗(鄭州大學電氣工程學院,鄭州450001)
基于物聯網的智能家居監控系統設計
王龍興,張宇波,邢立釗
(鄭州大學電氣工程學院,鄭州450001)
系統以ARM9芯片S3C2440為CPU,嵌入Linux操作系統,引入了3G網絡模塊、WiFi網絡模塊、以及多種傳感器模塊;客戶端軟件運行于Android操作系統的智能手機平臺。本系統在物聯網的基礎上,構建通信信息、家庭娛樂、安全監控、生活服務等方面的應用,全方位滿足人們信息化、智能化的家居生活需求。
物聯網;智能家居;Linux系統;3G網絡;WiFi;Android
近年來,家庭安防報警、家居控制及無線視頻監控服務的市場需求逐步增加,智能手機的普及、嵌入式技術的發展和3G網絡的覆蓋為隨時隨地遠程監控家中的一切提供了可能[1-5]。
物聯網可以將物與物連接起來并且進行更好的控制管理。本文結合最先進的物聯網技術、嵌入式技術等構建了價格低廉、功能齊全的數字化智能家居系統,并成功搭建了系統平臺,測試效果良好。
系統包括監控終端和客戶端軟件。監控終端主要利用物聯網技術實現家庭中分布的各個節點的信息采集和來自主機的控制信號的接收,由嵌入Linux操作系統的ARM處理器對各個節點的數據信息進行處理,包括圖像數據的壓縮、控制命令的發送等,再通過3G網絡或者WiFi網絡實現數據的無線遠程傳輸;客戶端軟件則是基于Andriod操作系統的具有發送家居控制、家居環境查看命令和播放視頻等功能,界面友好,操作簡單,模塊可擴展。系統總體架構如圖1所示。
嵌入式智能家居硬件組成主要包含以TQ2440核心板、百兆網卡(DM9000)模塊、SD卡、串口、USB接口等組成的主板以及各種傳感器模塊、無線網絡模塊。終端硬件實物如圖2所示。
主板CPU為S3C2440處理器芯片,它是三星公司開發的一款基于ARM920T內核的32位嵌入式處理器,主頻400MHZ,適合用于對功率和成本敏感的嵌入式系統場合。
S3C2440可以引出兩個USB接口,本系統要用到更多USB主口,故把主板USB接口設計為一個主口,另一個可以通過按鍵來進行主從口的切換。并引出多個CPU資源接口,以連接系統的其他傳感器模塊和用于之后對功能的擴展。
采用最常見的USB攝像頭來進行視頻采集,在嵌入的Linux系統中包含了這種USB攝像頭的驅動,可以通過V4L2框架提供的API函數接口來對其進行操作。在基于V4L2編程中,主要是通過系統調用ioctl()函數來實現與設備交互,工作流程如圖3所示。
目前,最高效的視頻編碼方式為H.264,H.264又有三種開源的編碼器,分別為官方H.264編碼器JM、X264和T264。在ARM9平臺的嵌入式系統中,T264的編碼效率是最高的,故系統移植T264來進行視頻數據的編碼。大多USB攝像頭輸出數據格式為YUV422,所以要求CPU先把采集到的視頻數據格式轉化為T264要求的YUV420P之后才能利用T264進行編碼。
系統可以進行3G網絡和WiFi網絡的選擇。3G網絡模塊采用華為的EM770W網絡模塊,將3G模塊插入USB HOST口并加載驅動,系統多了三個設備節點,分別是/dev/ttyUSB0、/dev/ttyUSB1、/dev/ ttyUSB2,此時驅動僅實現了USB轉串口,并不能作為網絡設備直接使用,還需要PPP網絡協議的支持,它將ttyUSB*等設備模擬成網絡設備,也即/dev/ ttyUSB0àPPP0。本系統移植PPP-2.4.4版本,將PPP-2.4.4/pppd/pppd和PPP-2.4.4/Chat/chat這兩個可執行程序拷至主板/usr/sbin/目錄下,并配置wcd?ma、wcdma-chat-connect、wcdma-chat-disconnect三個腳本文件,就可以聯上互聯網了。
WiFi網絡采用的是RT3070芯片為核心的網絡模塊,同樣需要移植相應的驅動。
主板引出了很多的傳感器模塊接口,可以根據需求增加很多的傳感器,比如,溫濕度傳感器、煙霧報警傳感器、粉塵濃度傳感器等等。這些傳感器在以往的智能家居控制系統中也多有出現,這里不作重點介紹。
由于移動互聯網和智能手機的快速發展,相對于PC客戶端,手機客戶端顯現出了更大的便捷性。故設計了基于Android2.3及其以上版本的客戶端軟件,軟件包括室內環境查看模塊、各電器控制模塊以及視頻監控模塊。主界面與登錄界面如圖4和圖5所示。
手機連上網絡,點擊查看室內環境菜單,就可向放在家中的主機發送查看命令,主機收到命令后,查詢各傳感器數據并把處理后的數據發往手機客戶端。
手機端接收到終端主機發送過來的視頻數據后,首先要進行解碼,然后再顯示出來。T264源碼自帶有解碼程序,所以需要把T264源碼移植到An?droid平臺。T264和Android操作系統源碼的一些數據結構定義不同,需先統一數據結構,才能成功移植。在Android系統源碼文件sty/_types.h中定義如下:typedef unsigned short__uint16_t;typedef un?signed int__uint32_t;而T264源碼文件inttypes.h中定義如下:typedef unsigned int__uint16_t;typedef unsigned long__uint32_t;更改T264文件inttypes.h中int→short,long→int即可移植成功。
手機視頻的播放則是利用SDL框架來實現,解碼后的數據格式為YUV420P,SDL框架中的YVOverlay函數可以高效的顯示視頻,SDL1.3以后版本已經支持Android平臺的移植。整個視頻播放的應用采用的是JNI工程結構,程序的主體由JAVA代碼構成,視頻數據的解碼則由本地層利用C代碼實現,畢竟C代碼解碼效率相比JAVA要高得多。JAVA層利用System.loadLibrary("SDL"); System.loadLibrary("main");這兩條代碼來加載兩個動態鏈接庫,并執行本地C代碼中的main函數來最終實現視頻數據的解碼播放。
在WiFi網絡條件下,測試手機客戶端發送的控制電器命令和查看環境狀態命令能夠實時準確地發送到監控終端主機,監控終端也能夠將傳感器的數據處理之后實時地傳往手機端,遠程監控也能實現320*240分辨率的視頻實時播放,播放速率可達到15幀/s左右,在測試中,設定當主機接收到控制電器的命令時,主機通過串口在PC上顯示LAMPCONTROL ONE等語句,接收到查詢環境狀態的命令時,先在PC上顯示出采集到的傳感器數據,然后再發送至手機,示意圖如圖6所示。手機端也可對監控房間進行視頻播放。
本文設計了基于物聯網的嵌入式智能家居系統,主要內容包含硬件平臺設計、客戶端軟件、視頻數據的編解碼方法以及個別驅動、算法的移植等。嵌入式智能家居系統具有設備簡單、成本低、布線集中、功能可擴展性強等優點,客戶端界面友好、便于操作,具有很強的實用價值和市場前景。
[1]侯立功.基于物聯網技術的智能家居系統構想[J].數字通信,2011,38(6):33-35,38.
[2]陳立偉,楊建華,曹曉歡,等.物聯網架構下的室內環境監控系統[J].電子科技大學學報,2012,41(2):265-268.
[3]郭穩濤,何怡剛.智能家居遠程監控系統的研究與設計[J].計算機測量與控制,2011,19(9):2109-2112.
[4]GILL K,YANG Shuang-hua,YAO Fang,et al.A ZigBee-Based home automation system[J].IEEE Transactions on Con?sumer Electronics,2009,55(2):422-430.
[5]HAN M,MIAO C-y.The design of intelligent household sys?tem based on wireless communications[C]//2011 International Symposium on Computer Science and Society:Proceedings: 16-17 July 2011,Kota Kinabalu,Malaysia,2011:206-209.
(責任編輯:趙建周)
The Design of Smart Home Monitoring System Based on Internet of Things
WANG Long-xing,ZHANG Yu-bo,XING Li-zhao
(School of Electrical Engineering,Zhengzhou University,Zhengzhou 450001,China)
System based on ARM9 S3C2440 chip CPU and embedded linux operating system,the 3G network module and WiFi network module,as well as a variety of sensor module are introducted.Client software is run on android smartphone platform.Based on the internet of things,it can provide communication information,home en?tertainment,security monitoring,application of living services,etc.The home demand for informatization and in?telligent is met in this system.
the internet of things;smart home;linux system;3G network;WiFi;android
TP273.5
A
1673-2928(2015)02-0005-03
2014-09-25
鄭州大學研究生教育科研專項支持基金重點項目。
王龍興(1988-),男,鄭州大學電氣工程學院在讀研究生,研究方向:自動化。張宇波(1965-),女,鄭州大學電氣工程學院副教授,研究方向:自動化、控制工程與控制理論等。