王龙兴,张宇波,邢立钊(郑州大学电气工程学院,郑州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-),女,郑州大学电气工程学院副教授,研究方向:自动化、控制工程与控制理论等。