基于ARM与Android的智能家居移动终端
2014-06-11朱岚
朱岚
摘 要 本文设计了一款基于ARM和Android的智能家居移动终端来作为智能家居控制器。在ARM平台上,结合安卓系统,基于WiFi技术构建了以智能家居控制器为中心的家庭内部网络。具体工作包括:对比了当前较为流行的几种可用于构建智能家居内部网络的相关技术,确定以WiFi技术作为家庭网络通信工具。以ARM核心开发板搭建了智能家居控制器的硬件实验平台,实现智能家居的无线控制功能。
关键词 ARM 智能家居 Android WiFi
中图分類号:TP18 文献标识码:A
0引言
本文通过对各种智能家居系统进行分析,针对目前智能家居的背景情况,依托ARM平台和WIFI通信技术,设计了一种可行的基于网络的智能家居控制系统,实现信息家电的管理。首先设计了智能家居系统的整体架构,以S3C6410作为智能家居系统的主控制器,家庭内网Zigbee将家中环境和家用电器有机组合在一起,并与Internet和GPRS网络共同组成了一个安全、方便、舒适的家居环境。
1 Android 系统
本文所设计的智能家居移动终端是基于Android平台开发的,如智能手机、PPC、PDA等,服务器为基于ARM11架构的Tiny6410嵌入式系统。
1.1 Android的开放性
本系统是基于Android平台开发的。Android是由开放手机联盟发布的基于Linux的开源手机平台。它由操作系统、中间件、用户界面和应用软件组成,是第一个为移动终端专用的真正开放的移动软件开发平台。Android移动终端平台将凭借其出色的优越性超越其他终端平台。
1.2 Android的系统结构
从软件分层的角度来看,Android开放平台由应用程序、应用程序框架、Android Runtime、库以及Linux内核组成,如图1所示 。
图1 Android 系统架构
2智能家居移动终端
2.1智能家居移动终端主要功能
智能家居移动终端的主要功能有家电控制功能、家居安全防控功能、信息采集功能、信息共享和服务功能、家庭娱乐和办公功能、智能化控制功能
2.2 智能家居移动终端基本构架设计
智能家居系统对于提高现代人类的生活质量,创造便利、安全、舒适的生活空间有着非常重要的意义。智能家居的基本构架如图2所示。
2.3 智能家居移动终端组成模块
智能家居移动终端组成模块如图3所示。
(1)信息处理模块:为了使相互独立的信息家电可以实现信息共享与协同工作,智能家居系统中必须具有专门的信息处理模块。
(2)通信模块:如果说信息处理模块是智能家居系统的大脑,那么通信模块就是实现信息传导的神经。
(3)功能驱动模块:功能驱动模块是信息流入、流出各个信息电器的接口。
(4)外界信息接口模块:该模块可以看成是一个家庭通向外界(如internet)的网关。
3移动视频监控系统方案设计
3.1移动视频监控服务器端设计
移动视频监控服务器是一个嵌入式Android系统,是集高速视频采集、视频传输、识别与跟踪目标于一体的智能化嵌入式装置。它可以通过串口控制摄像机的行为,也可以通过S3C6410的摄像头接口(Camera)接收CCD摄像机采集的视频数据,并传送给硬件编解码(MFC)模块进行视频压缩,并把得到的经过H.264压缩的数据通过无线网卡打包发送到无线路由器,服务器端总体框图如图4所示。
图4 移动视频监控系统服务器端总体框图
3.2移动视频监控客户端设计
(1)Android移动终端应用通过输入用户名和密码(用户已向服务器注册用户名和密码)登录终端,并仅以用户名向服务器发送请求,使用TCP协议。
(2)嵌入式监控服务器接收到请求,通过用户名查询对应服务器IP地址及分配端口号,通过TCP协议发送同应,回应中应包含需要监控的端口号。
(3)Android移动终端接收到请求回应,解析出端口号,以此地址、端口及用户登录的密码向服务器发起数据请求,使用UDP协议。此请求采用命令字(包括了对密码的MD5加密后的数据)。
(4)服务器接收到数据请求,向Android移动终端发送视频监控数据。
(5)Android移动终端接收到数据后,从缓冲区中读取数据,调用V4L2接口进行解码、转换及显示播放。
(6)在监控过程中,Android移动终端可以切换通道,即可以切换到不同监视器,包括模拟监视器和数字监视器。Android移动终端发送相应命令到服务器,并接收对应监视器的数据。
(7)在监视过程中,Android移动终端可以设置视频质量,发送视频质量等级命令请求到服务器,服务器发送调整帧率后的数据。
3.3图形界面单元的实现
本设计的界面是基于Android的GUI系统实现的。它由C语言框架和Java语言框架组成。对下层,Android的GUI系统通过调用显示输出设备和输入设备的驱动,从而将Android的软件系统和底层的硬件联系起来。对上层,Android的GUI系统提供了Java层次的绘图结构,Android的Java框架层调用这些绘图接口来构建各种UI元素,这些绘图接口也可供Java应用程序层来调用。用户在Android移动终端启动软件进入远程控制登陆界面,如图5所示。
图5 登陆界面
4结束语
本文基于ARM和Android的智能家居移动终端的设计,以Android系统作为智能家居终端设备的操作系统,并在Android系统上使用了MVC模式设计了智能家居主程序,极大地降低了系统各层的依赖,有利于组件的重用。整个系统充分利用了Android 内部资源,极大地提高了开发效率。实验结果表明,系统的稳定性极高,具有较强的实用性。
参考文献
[1] 高小平.中国智能家居的现状及发展趋势[J].低压电器,2005(4):18-21.
[2] 韩超.Android系统原理及开发要点详解.北京:电子工业出版社,2010:96.
[3] 广州友善之臂计算机科技有限公司.Tiny6410硬件手册,2011:5.
[4] 叶青.一种智能家居系统解决方案及部分模拟实现[硕士学位论文].昆明:昆明理工大学,2008.
[5] 黄布毅等.家庭网络中央控制器体系结构的研究[J].微计算机信息,2005:114-116.