基于ZigBee的智能照明控制系统设计
2018-12-25侯严严
张 斌,侯严严,赵 涛
(商丘工学院 信息与电子工程学院,河南 商丘 476000)
0 引言
随着传感器技术、网络技术、综合布线技术、自动控制技术和大数据技术的发展,物联网在人们生活中的作用越来越重要,智能家居是物联网的应用领域之一。智能家居是一个较为庞大的系统,它由智能家电、智能照明和家庭安防三个部分组成[1]。
智能照明控制系统是智能家居系统的重要组成部分。传统的家用照明系统一般都是手动控制,因人为疏忽,很可能会引起忘记关灯的情况,极易造成电量的浪费,而且会缩减灯具的使用寿命。另外,在夜晚不容易找到电灯的开关,会有一些不必要的麻烦。而智能家用照明系统则能解决这种问题。通过用传感器感受光强,来判断是黑夜还是白天;通过是否有人通过,来判断是否需要自动地将电灯点亮;还可以通过手机APP对灯具的工作状况进行检查,从而可以一目了然地知道哪些灯具正在工作,从而避免不必要的电量浪费。通过智能照明系统对家用灯具进行监控和管理,可以极大地提高用户的生活体验,能够让人们切身体会到现代科技给人们带来的便利。
1 相关技术介绍
1.1 传感器技术
传感器是自动化和智能化控制系统的主要部件,被广泛应用于收集环境数据,如温度、湿度、气压、光照等[2]。传感器感知外界信息,并将获得的信息通过网络传送给计算机进行处理,进而使获得的信息成为有效的数据。
1.2 ZigBee技术
ZigBee是基于IEEE802.15.4标准的低功耗和低成本的无线网络协议,适合于远程控制和自动控制等领域,主要应用于嵌入式设备中[3]。与其他频段的无线技术相比,ZigBee技术具有功耗低、距离长、成本低、容量高和易组网的特点[4]。ZigBee提供的低安装和运行成本有助于解决现有家庭自动化系统的昂贵和复杂的体系结构问题[5]。在ZigBee网络中的设备类型一般有三个,分别是网络协调器、中继器和终端设备[6]。其中协调器负责将网络启动,中继器可以允许其他终端设备加入ZigBee网络。
2 智能照明系统硬件设计
2.1 智能照明系统总体设计框图
智能照明控制系统主要是对家用电灯进行控制,系统主要由基础设施层、感知层、网络层和应用层组成,系统总体设计框图如图1所示。
图1 智能照明系统总体框图
基础设施层:主要是家用电灯,电灯种类和型号没有限制,节能灯、彩灯等都可以。
感知层:主要是一些传感器,用来感知家用电灯的状态和周围环境,通过将周围信息进行采集,传输给数据处理中心,数据处理中心将数据进行分析,然后发送相应的指令,从而实现灯具的智能控制。用户也可以根据采集的信息了解电灯的开关情况,实现电灯的远程开闭控制。
网络层:主要是将感知层的设备连接在一起,然后将感知层的数据通过ZigBee网络传递给应用层。该层可以作为照明系统的中枢,实现数据的可靠传输。
应用层:该层的主要作用是根据用户的指令,进行数据的查询和设备的控制。具体的操控将由手机APP来完成。
2.2 手机与硬件设备的通信过程
在智能照明控制系统中,手机作为客户端,硬件设备的中央控制器作为服务端。客户端和服务端通过网络进行连接。在进行通信的时候,手机APP通过HTTPClient向服务端发送一个用JSON组织内容的HTTP请求,服务端接收到该请求之后,在中央控制器进行信息的整合汇总,然后进行相应指令的控制。手机与硬件设备的通信如图2所示。
图2 手机与硬件设备通信过程
2.3 网络层的设计
网络层在整个智能照明系统中处于中间位置,所以智能照明系统的核心是网络层设计。
网关设计:网关是网络层的一个核心部件,各种类型的传感器可以通过网关接入网络。网关不仅可以对接入的设备进行管理,还可以识别、控制和维护所接入的外设。另外,它还有协议转换的能力,可以将感知层获得的信息进行统一封装,形成格式统一的数据。网关硬件结构如图3所示。
图3 网关结构图
网关的主要模块有:主控制器模块、电源模块、I/O模块、ZigBee协调器、USB接口、时钟电路、串口调试模块、JTAG模块、以太网接口模块等。
主处理器模块:采用频率较高的S3C2440芯片,可以保证系统有较高的处理效率。
JTAG模块:主要用来进行程序的下载、调试和运行,以便系统达到较好的状态。
串口调试模块:可以对系统进行辅助调试。
电源模块:提供系统运行所需要的动力,还可以进行系统复位操作。
I/O模块:负责信号的输入和输出。
串口扩展模块:可以进行接口的扩展,以接入其他硬件设备。
ZigBee协调器:可以对网络节点进行管理,还可以存储网络节点信息。在智能照明系统中采用无线收发芯片CC2530[7]。它可以接收到中低频信号,接收到的信号经过放大、滤波和A/D转换变成数字信号。
以太网接口模块:负责将系统与网络进行连接,实现数据的传输和用户对网络的控制。
2.4 感知层设计
2.4.1感知层结构
感知层主要是由传感器组进行环境信息的采集,然后通过ZigBee节点与协调器将ZigBee节点的信息进行汇总,再通过网关进行信息的网络传输。感知层结构如图4所示。
图4 感知层结构图
2.4.2协调器设计
CC2530可以广泛应用在2.4 GHz IEEE802.15.4系统,它整合了8051兼容微控制器、ZigBee射频前端(RF)、A/D转换器、多个定时器、看门狗定时器等部件,可以提供强大和完整的ZigBee解决方案[8]。
CC2530引脚可以分为三类,分别是:I/O端口引脚、电源线引脚和控制线引脚。通过软件设置特殊功能寄存器的位,可以使这些引脚作为I/O或者连接定时器等其他外围接口[9]。CC2530功能丰富,因此使用该芯片设计ZigBee协调器。协调器设计如图5所示。
图5 协调器电路图
其中C2、C3、C9和C10是负载电容,L1、L2、C4、C5、C6、C7、C8为匹配网络的部分。
2.5 应用层设计
2.5.1应用层主要功能
应用层用智能手机来实现,系统除了保留传统的手动控制照明设备的功能外,还实现了对照明系统的智能化控制。具体的实现方法是把手机用无线网络接入智能照明控制系统,用智能控制系统APP进行电灯的控制。
智能控制系统APP主要有设备管理、信息推送、软件管理、数据查询等功能。
设备管理:(1)当电灯被设置为在线状态时,可以利用传感器感受光照强度,判断是白天还是黑夜,黑夜情况下可以根据红外传感器判断是否有人活动,从而自动点亮活动区域的电灯。(2)调节灯光,根据不同的组合模式将电灯进行编排组合,根据自己的需要进行组合电灯的打开或关闭。(3)时间控制,可以设置电灯的自动关闭时间,可以实现电灯定时开关的目的。(4)灯具的选择,可以根据具体的需要选择要控制的电灯。
信息推送:在白天推送未关电灯的信息,从而可以让用户及时发现问题,解决问题,防止电量过度浪费。
软件设置:软件管理主要进行软件的升级设置、主题信息设置和个人信息设置等功能,如改变主体风格、个人信息修改等。
数据查询:数据信息存储在MySQL数据库中,通过该数据查询功能,不仅可以对设备状态(开/关)进行查询,还可以对一段时间内用户的操作记录(如新添加的灯具信息、新删除的灯具信息、灯具设备的总数等信息)进行查询。
2.5.2软件工作流程
家庭照明设备的控制有两种方式,一种是手动控制;另一种是智能控制。在具体使用过程中,用户可以根据实际需要进行选择。当用户不启用智能控制而使用手动控制时,在照明设备的状态发生改变时,系统向后台发出一个请求,将电灯状态和操作记录进行存储。当用户启用智能控制时,系统会自动读取当前灯具的信息,然后进入相应的功能选择界面。在该界面用户可以对照明设备进行控制,调节灯光或者是打开某一组合的设备等。当设备状态发生改变后同样会向后台发送存储状态和操作记录的请求。软件工作流程如图6所示。
图6 智能照明系统APP工作流程
3 系统测试
智能照明控制系统对照明设备的控制方式主要两种:手动控制和智能控制。其中,手动控制不限制控制条件。智能控制要测试灯具的编排组合以及自动感应等功能。
具体要求有:在代码中根据灯的编号进行组合,实现组合内灯具点亮或关闭的功能;自动感应,要实现白天有人经过感应区时感应区内灯不亮,而夜晚有人经过感应区时感应区内灯被点亮。
在无光(弱光)情况下(可遮挡光照传感器),人体感应传感器感受到人的存在时,测试结果为相应地区的灯亮。智能照明控制系统APP主界面和无光有人情况下的测试结果如图7所示。
图7 APP界面及无光有人测试结果
其他情况下的测试步骤和无光有人时相似,不再进行赘述,具体测试结果如表1所示。
表1 测试结果
4 结论
智能照明控制系统作为传统照明系统的改进,最突出的功能是智能控制。该系统不仅可以实现灯具的一键全开和全关功能,还能够根据灯具的编排组合对部分灯具进行控制,从而实现对室内灯光亮度的调节;另外,根据光照传感器和人体感应传感器的组合,实现了黑暗环境下感应区照明设备的自动开启功能。智能照明控制系统是智能家居的组成部分,通过对智能照明系统的设计与应用,不仅可以极大地提高用户体验,还可以为智能家居在今后的普及起一定的推广作用。