面向手机控制的智能家居系统设计分析
2015-07-07王庆江
王庆江
摘 要:智能家居系统的控制器采用的是ARM11技术,前台的客户端程序采用的是手机蓝牙技术,通过对后台服务以及控制器之间的搭建,集合智能家居体系和蓝牙手机等,以达到手机蓝牙远程通讯的目的。通过对该项系统的试验分析,我们可以发现,该系统能够达到设计的初衷,使智能家电能够通过手机进行控制。
关键词:手机控制;蓝牙;智能家居系统;服务器
中图分类号:TP273+.5 文献标识码:A DOI:10.15913/j.cnki.kjycx.2015.10.031
手机蓝牙可以支持10 m内的短距离无线通信,这种技术主要是采用分散式的网络结构、快跳频以及短包技术来实现的,它能够进行点对点以及点对多点的无线通信。本次对手机控制智能家居系统的设计研究就是利用手机的蓝牙技术来设计一个嵌入式的家电控制系统,成本较低、操作简单且有很强的实用性,能够面向社会进行推广。目前,手机基本上都带有蓝牙功能,能够结合带蓝牙模块的系统,使手机具有无线控制的功能,与智能家电的遥控器整合在一起。
1 智能操作系统的关键技术分析
1.1 蓝牙通讯协议
蓝牙通讯协议由两部分组成,即蓝牙主机和蓝牙模块。蓝牙主机主要包括HCI层和HCI层以上的协议,其实现的形式是软件,能够运行各种应用程序,包括服务程序,且它们都是以蓝牙耳机的协议层来实现的;蓝牙模块主要是HCI层以下的协议,主要是对主机的信息进行传递,靠硬件中的固件来实现。
蓝牙技术的系统由三部分组成,即底层的硬件模块、中间的协议层和高层应用。蓝牙技术系统最关键的结构是中间协议层。本次研究的控制系统应用的原理就是蓝牙技术的中间协议层的无线API。
蓝牙的中间协议层由硬件和软件两部分组成,分别由不同的设备和软件来为它们功能的实现提供支持。
1.2 CGI技术的使用
CGI技术的应用能够将Web环境下的客户端信息传递给Web服务器,然后 Web服务器将相关信息存入到环境变量,接着启动指定CGI脚本来完成那些指定工作。CGI脚本的运行需要从环境中获得相关的信息才能启动,其执行的结果需要通过HTML的格式输出,传输到浏览器端。CGI技术能够增强浏览器与服务器的交互性,主要是由于用户传递给CGI脚本的参数都是不同的。CGI技术应用到智能家电的控制系统中能够通过客户端的网页来控制摄像头转动的角度。
1.3 Web技术的使用
Web技术能够完成以下三种功能的指令:①发布动态与静态的网页信息;②能够为其他设备提供接口来检测现场的设备;③通过接口的连接实现对现场设备的控制。BOA服务器属于
Web服务器的一种,它非常小巧但高效,能够支持CGI技术的运行,可以应用到嵌入式的系统当中,是一个单任务http服务器;能够接受、分析、响应客户端请求,并将请求的结果返回到客户端。BOA服务器在智能家电控制系统中属于底层服务器,其主要目的是将摄像头拍摄的图片信息传递到PC端。其传递的过程为:①完成初始化工作,比如建立环境的变量、绑定端口、侦听并进入到循环结构等,还包括等待接受客户端的连接请求;②客户端发出连接请求时,Web服务器就要接受客户端的请求,然后将这些请求信息保存起来;③在接收到连接请求后,接下来就是分析这些请求信息,同时解析请求的URL目标、方法以及表单信息等一系列内容,同时还要根据这些信息迅速做出处理反应;④在Web服务器将连接请求做出处理后,要将相关的信息发送到客户端浏览器上,同时关闭TCP的连接。
2 智能家电控制系统的设计
2.1 系统的设计说明
应用嵌入式的智能家电控制系统的意义主要有:①将智能手机客户端作为智能家电的遥控器,整合了智能家电与手机。现在的智能手机程序移植非常方便,手机基本上都可以运行该程序,且目前的手机技术传输数据速度非常快。②蓝牙技术的通信采用的是蓝牙地址,而不是IP网络地址,这也就大大节约了即时通讯产生的费用,并且通信效率也要高出即时通讯很多。③蓝牙技术数据传输效率高、能耗低,并且体积小、成本低,芯片的使用寿命较长,因此采用蓝牙技术有很强的实用性。
手机控制的智能家居系统主要是由上位机和下位机两部分组成,上位机建立在手机蓝牙平台控制之上,下位机则是ARM11的后台服务器。手机蓝牙能够与ARM11服务器进行连接,并且将控制命令发送到服务器,然后控制客户端。试验的系统平台是J2ME技术,利用蓝牙L2CAP协议与无线通信API来实现。下位机采用的是手机蓝牙地址连接的技术,只需要搜索蓝牙地址就能进行匹配连接。下位机能够有效将蓝牙的无线通信技术与后台控制连接在一起,实现了同客户端的互传数据及通讯,并能够检测系统中不同的传感器,使家电家居进入智能化时代。 2.2 智能家居控制系统功能介绍
智能家居控制系统主要有以下几个功能:①J2ME控制功能。首先能够与服务器进行初始化连接,进入到控制程序中,然后通过蓝牙通信控制家电;其次,它能够接收到家电传递的信息,了解房屋的湿度和温度等信息。②室内智能监控。视频监控的智能控制主要是利用CGI技术为支持,通过ARM11来建立Web服务器,采用蓝牙和HTML来对监控系统进行智能控制。我们需要在监控摄像头下方安装步进电机,然后采用蓝牙和网线分布发送指令来控制摄像头的转动,最后采用HTML来设计网页,并在这个网页上添加不同的控制按钮来调节摄像头的角度。③门禁视频监控。门禁智能监控是建立在ARM1的基础上,用来运行摄像头,然后利用手机蓝牙发送远程命令来对其进行控制。④传感器的应用。智能家居的系统中,传感器占有很大的比例,它能够对房间内的信息进行全方位的监控,也需要我们布置大量不同的传感器,比如红外传感器、温度湿度传感器、防盗传感器和声控传感器等。各种传感器的功能如表1所示。
3 智能家居控制系统的实现
3.1 实现上位机的功能控制
上位机功能的实现主要是利用J2ME进行的,基本行为包括初始化功能、寻找蓝牙设备、蓝牙服务、连接蓝牙设备、控制命令的发送以及传输服务器的数据。上位机功能与服务器之间的无线通信实现了其功能,包括发送、接受控制的命令。主要工作流程是:启动上位机的程序,然后通过密码来识别身份,输入正确的密码才能与蓝牙服务器进行连接,连接成功后,才能将命令发送到蓝牙服务器上,实现系统的控制。
3.2 实现下位机的功能控制
下位机通过在ARM11上建立蓝牙服务器,通过无线通信与客户端进行连接,然后控制家电家居。下位机的实现表现在以下几个方面:①ARM11的开发环境。该系统是在蓝牙技术的基础上建立的,必须要在UP-CUP6410上搭建蓝牙服务器,先编写ARM11的内核,然后配置根文件系统中添加一个蓝牙驱动,这主要是为搭建一个蓝牙服务的后台运行环境。②Web服务器和视频服务器的运行配置。本次试验采用的是BOA服务器,它能够为蓝牙的视频发生和CGI控制提供必要的帮助。视频服务器则采用的是spcaview模块,能够为摄像头的视频采集提供一个稳定的后台运行环境。③步进电机的采用实现了控制摄像头的转动。我们在计算机上建立一个CGI客户端,在ARM11上建立Web服务器,然后利用HTML来驱动CGI脚本,实现对步进电机的控制。
在系统应用中,我们也发现,在多种蓝牙服务的干扰下,客户端在蓝牙搜索时会出现一定的演示,并且每次进行蓝牙连接时,仅仅只有一个客户端能够成功连接服务器,保证了系统通信的安全与可靠。
4 结束语
手机控制智能家居的系统操作简单、安全可靠,且成本较低,在科技技术快速发展的今天,已经不存在技术上的问题。在以后的应用中,我们也可以不断对其进行改进,进而改善我们的生活。
参考文献
[1]陈凯,秦实宏,王敏,等.基于GSM模块TC35I的收发控制系统设计[J].武汉工程大学学报,2011,33(1):91-95.
[2]陈良银.C语言程序设计[M].北京:清华大学出版社,2006.
[3]俞国红.BlueIM:基于蓝牙的手机即时通信软件[J].计算机工程,2009,35(17):258-261.
〔编辑:王霞〕