APP下载

基于ZigBee的智能灯光控制系统

2016-05-30许建国黄落兵胡凤情夏友兵

科技风 2016年10期

许建国 黄落兵 胡凤情 夏友兵

摘 要:本文主要论述了基于A10平台构建的智能灯光控制系统,系统硬件由ZigBee模块、A10平台、服务器等部分构成,其中ZigBee传感器负责对家庭内部多个房间的环境及安全监测,ZigBee协调器模块将采集到的数据通过USB方式传送给A10平台实时处理,并将数据通过互联网上传到网络服务器,用户可以通过多种方式对多个房间的灯光进行控制,并且可以在Web浏览器上查询房间内的相关状态信息。

关键词:智能灯光控制;ZigBee;Web

上世纪70年代,智能家居系统这一概念最早出现在美国,随后,在各发达国家中广泛传播并得到了较好的发展,而这一概念在我国推广相对较晚,但近些年的发展速度较快,已经出现了很多智能化的小区或住宅。所谓智能家居系统是结合现代电子技术、通信技术、互联网等技术发展而成的产物,其核心思路是将家中各种通信设备、各种“智能”家电、各种安防设备通过有线或者无线的方式连接起来,实现对这些设备的自动控制和管理,以及对家庭的环境安全起到监控和报警的作用,保持家庭住宅环境的舒适、协调,进一步优化人们的生活质量。

在此基础上,本文设计了一套基于ZigBee的智能灯光控制系统,该系统充分利用了物联网、互联网等技术,可以对多个房间的灯光进行自动或者手动控制,同时可以对房间的环境状态进行监测。

1 灯光控制系统的硬件设计

该智能灯光控制系统由基A10平台、ZigBee模块、RFID读写器、服务器等部分构成,其中ZigBee传感器负责对家庭内部多个房间的灯光控制、环境信息及安全监测,ZigBee协调器模块将采集到的数据通过USB方式传送给A10平台实时处理,并将数据上传到网络服务器,用户通过Web就可以获取相关信息。

1.1 ZigBee模块

本系统中的ZigBee模块可以分为协调器、传感器两部分,传感器将放置在家庭内的不同房间,用于实现多个房间的灯光控制和环境监测;协调器作为中枢可放置在客厅等位置,在组网成功后,协调器将采用轮询的方式分别接收各个传感器传回的数据,并将数据传送到A10硬件平台。

1.2 A10硬件平台

系统硬件平台以全志的A10处理器为核心,软件采用Andriod系统,该平台作为数据流通的中转枢纽,是各个数据的汇集点,主要负责数据采集和上传,通过USB的方式获取各个房间的环境信息、设备安全状况,对数据进行解析之后,把数据上传到服务器端。

1.3 服务器

服务器作为数据的存储核心主要完成以下两个方面的工作:1)接收A10硬件系统平台发送回来的数据,其中包括各个房间内灯光的状态信息、温湿度等环境监测信息等。2)将各个房间环境监测数据通过Internet发送到Web端。

1.4 Web浏览器

进入系统进行相关操作后,后台会连续向服务器发送数据请求,Web服务器则会根据情况返回相应的数据,接收到的数据会显示在Web网面上,供用户浏览、查询,并根据需求进行相关的控制,进而可以实现家庭内部多个房间的灯光控制以及环境的实时监测等操作。

2 灯光控制系统的软件设计

2.1 服务器的配置与实现

HTTP协议利用JSP技术定义了一种可扩展的消息处理框架,它提供了一种可通过多种底层协议进行交换的消息结构。系统管理员经过登录成功后可看到自己所管理的家庭内部的相关信息,包括温度、湿度、烟雾浓度、家庭成员的出入信息等,其中温度和湿度使用折线图形式进行显示。服务器和WEB端之间用JSON的形式传送数据,WEB向服务器发送请求,服务端接受了这一请求后,会把多个房间内传感器采集到的温度和湿度由A10通过Web service存储到数据库当中。

2.2 A10硬件平台设计

A10 硬件平台是连接底层和服务器的核心。它通过USB口读取ZigBee协调器采集过来的数据,然后对接收到的数据进行解码处理,处理之后,请求服务器,将数据存储到网络数据库中。

2.3 WEB浏览器端设计

该界面是运行在Web端apache-tomcat-7.0.59服务器上的JSP页面,主要负责灯光控制、环境监测两大功能模块。采用JavaEE经典的MVC架构,利用Http协议、JSON对象、Java隧道通讯等,与网络数据库进行交互,异步请求,将数据展示给用户。

3 系统测试

3.1 外部请求数据测试

Web服务器收到页面发送过来的数据请求后,会将符合的数据回发并在Web端向用户展示,以供用户进行查询或者相关控制。

3.2 数据接收测试

经过一段时间的运行可以看到从A10硬件平台发送过来的数据,这些数据存放在HashMap中,以节点为key,此key下包含所有传感器发回来的数据、以及时间。可以看到,服务器上的数据库中已经有了多条温温度、湿度、烟雾信息等记录,表明当前的记录情况良好。

3.3 Web端测试

打开系统Web页面,输入账号、密码登录成功后可以看到各个房间的温湿度、烟雾浓度等信息的实时状态,以及灯光控制、温度状态、警报区域、设置等其他操作入口。进入灯光控制页面,可以通过开关手动控制房间的灯光;或者在设置端设置为自动模式后,此时会根据室内光线强度自动控制灯光。

4 结论

本系统在研究ZigBee技术、物联网技术的基础上,设计了一套智能灯光控制系统,主要实现了以下功能:1)实现了通过多种方式远程对家庭内部多个房间的灯光进行控制。2)驱动了ZigBee模块工作,实现了Android系统调用底层硬件的工作。从Android调用Java,从Java调用C驱动硬件,解决了跨语言直接数据传递类型不一致的问题。3)web浏览器向服务器定时发送请求,服务器返回数据给终端,并且最终将返回的数据渲染在浏览器上,使得用户对家庭内部的情况一目了然。

参考文献:

[1] 泽卡斯(Zakas.Nicholas C.),李松峰.JavaScript高级程序设计[M].第三版.人民邮电出版社,2012,03.

[2] 王小强等编著.ZigBee无线传感器网络设计与实现[M].化学工业出版社,2012,06.