APP下载

智能小区家庭网关系统设计与实现

2019-10-09陶加祥豆春该张博康

自动化仪表 2019年9期
关键词:网关终端节点

陶加祥,豆春该,万 建,张博康

(1.中国地质大学(武汉)机械与电子信息学院,湖北 武汉 430742;2.武汉广播电视台,湖北 武汉 430742)

0 引言

随着科技的进步,人们对生活居住环境的要求也在逐渐提高。在“互联网+”思维引导以及智慧平台的推广下,人们对于生活居住环境的要求不再仅仅是室内装修雅观,而对智能化的生活环境也有要求。众所周知,随着智慧平台建设以及国家对物联网的大力支持,人们的生活居住环境逐渐迈向智能化,已成为这个时代发展的必然趋势。智能小区的家庭网关是家庭智能化的核心,它的主要任务是完成家庭内部网络的自组建,以及同外部网络间的信息交流[1],以实现对家庭终端设备的智能化控制管理。本文针对以往智能家庭网关在组网复杂、网关功能和界面单一、价格昂贵等方面存在的缺点,结合ZigBee、Qt、互联网,嵌入式等信息传感技术,设计了一种智能小区家庭网关系统,以满足智能家庭网关系统在家居生活中的实际需求。

1 系统总体设计方案

本文设计了一种较为智能、实用的小区家庭网关系统。该系统的自组网方式采用ZigBee网络拓扑中的星型网络。当ZigBee协调器建立好新网络后,ZigBee家庭终端节点携带设备媒体访问控制地址(media access control address,MAC)信息自动加入网络[2],同时将设备信息发送给协调器;协调器再将设备信息通过串口发送给家庭网关主控核心Raspberry Pi。根据Qt事件监听机制和ZigBee入网协议,当网关平台监测到有设备信息就会弹出设备添加窗口。用户自定义编写设备名称等信息后点击确定按钮,ZigBee家庭终端节点添加成功。系统总体结构如图1所示。

图1 系统总体结构图

当终端节点添加成功后,用户就可以通过可视化图形界面查看家庭环境参数和控制家庭终端设备。当家庭中出现紧急危险情况,可以通过TCP/IP传输协议发送至小区物业管理系统,并通知物业人员来处理。该网关集成了WiFi模块[3],实现了与智能手机的数据交互,以达到用户远程控制的效果。

2 系统硬件设计

该系统的硬件设计包含两部分:网关模块设计和ZigBee通信模块设计。网关模块是该系统的总控制器;ZigBee通信模块负责组建家庭内部网络,并且通过该模块把家庭内部网络与互联网连接,以达到实现数据交互的目的。

2.1 网关硬件模块

该系统的网关硬件模块选用的是基于1.2 GHz 四核Broadcom BCM2837 64位ARMv8的处理器为中心的Raspberry Pi开发板。整个硬件平台以Raspberry Pi开发板为基础。该开发板具备所有计算机的基本功能,并且只有一张信用卡的大小。它丰富的外设功能也增加了网关的便捷性和实用性。该网关连接Internet通过板载WiFi模块和以太网模块,方便用户远程控制家电和查询家居环境信息。ZigBee 协调器通过串口通信实现家庭网关和ZigBee家居终端节点间的通信,能够实时监测和控制终端节点。采用高清多媒体界面(high defintion multimedia interface,HDMI)模块连接显示屏显示网关的用户图形界面,采用CAMERA模块连接摄像头监控家居环境周围影像。网关硬件结构如图2所示。

图2 网关硬件结构图

2.2 ZigBee通信硬件模块

ZigBee是一种遵从IEEE 802.15.4的国际化标准的远程监控控制和传感器网络应用技术。它的低数据速率、低功耗、安全性以及可靠性等优点能够满足家庭自动化、医疗保健、电信服务和工业自动化领域的应用需求。

ZigBee通信模块主要负责家庭内部ZigBee协调器和终端节点无线网络的组网和网络管理。网络拓扑结构采用星型结构。该结构简单,适用于小范围的家居室内环境。其中,微控制器是硬件设计的核心部分。

作为ZigBee新一代的系统芯片(system on a chip,SoC),CC20530结合了领先的射频(radio frequency,RF)收发器的优良性能,业界标准的增强型8051中央处理器(central processing unit,CPU),系统内可编程闪存且具有8 kB的随机存取存储器(random access memory,RAM)。其硬件模块大致可以分为三类:CPU和内存相关的模块;外设、时钟和电源管理相关的模块,以及无线电相关的模块。它的运行环境温度为-40~+125 ℃,运行供电电压2~3.6 V,且具有不同的运行模式,使得它尤其适用于低功耗要求的系统。因此,本系统选择CC2530作为主控制器。

3 系统软件设计与实现

系统的整体软件设计主要分四部分:网关智能增删设备,ZigBee家居终端节点自动入网,用户图形界面以及网关数据库管理的设计。

3.1 网关智能增删设备

网关添加设备示意图如图3所示。

图3 网关添加设备示意图

智能家庭网关若要实现能够智能的增删终端设备,需要结合Qt图形界面的监听和ZigBee自动入网协议[4]。 当ZigBee家庭终端节点和ZigBee协调器上电,首先ZigBee协调器建立一个新网络,并开始接受新的节点加入该网络;ZigBee终端通过信道扫描找到该网络并进行关联过程自动入网。入网成功后,ZigBee家庭终端节点就会不停地向协调器发送自己的设备MAC地址。当协调器接收到终端的MAC地址再通过串口发给ARM平台的Qt图形界面[5],当其监听到有设备MAC地址,就会弹出添加设备的窗口。此时,用户就可以自定义编写设备信息和选择是否添加该设备。

3.2 ZigBee家居终端节点自动入网流程

当协调器建立一个新网络后,如果终端节点想要加入该网络,就要先和协调器建立连接。建立连接的过程是节点首先向协调器提出连接请求。当协调器收到连接请求后决定是否允许该节点连接,然后对其请求作出响应。

终端节点自动入网分为五个步骤,如下所示。

①主动查找网络协调器。终端节点上电后会扫描查找周围网络的协调器。如果扫描期限内检测到信标,那么就会获得协调器的有关信息,同时向其发出连接请求。

②发送关联请求命令。节点将关联请求命令发送给协调器,协调器收到后立即回复一个确认帧。同时,根据上层的资源情况决定是否同意此节点的加入请求,然后给节点的MAC层发送响应。

③等待协调器处理。当节点接收到协调器发送的确认字符(acknowledgement,ACK)后,节点MAC将等待一段时间,接受协调器的连接响应。此时的协调器会给该节点分配一个16 bit的短地址,完成与该节点的连接建立;如果资源不够,该节点会重新发送请求信息。

④发送数据请求命令。在上一步中协调器会产生关联响应命令。当响应时间过后,节点会发送数据请求命令给协调器;协调器会立刻回复ACK并将关联响应命令发给节点[6]。

⑤回复。节点收到关联响应命令后,立即向协调器回复一个确认帧,保存以确认接收到连接响应命令。此时,节点已经获得协调器分配的短地址和扩展地址,至此关联加入网络。

终端节点自动入网流程如图4所示。

图4 终端节点自动入网流程图

3.3 用户图形界面

该系统的用户图形界面[7]采用由Qt Company开发的跨平台C++图形用户界面应用程序开发框架——Qt。Qt具有优良的跨平台特性,它支持Windows、Linux、OS390等多种操作系统,并且具有丰富的应用程序编程接口(application programming interface,API)和大量的开发文档,支持2D/3D图形渲染。

该系统的操作界面[8]主要由首页、设置、门禁、安防、家居、物业、功能七部分组成。设置主要包含串口的打开和关闭,Qt实现串口通信一般采用第三方库qextserialport,并且可以自动识别串口设备号。门禁包括开门功能和监控房屋外周围环境以确保是否存在安全隐患。安防[9]包括烟雾类和入侵类:烟雾类主要包括用户自定义添加的气体监测传感器,入侵类主要包括入侵监测传感器;家居包含空调类,灯光类和窗帘类;物业包含连接物业和断开连接,小区物业管理系统是一个服务器,家庭网关属于一个客户端,连接物业部分就是向物业系统端服务器发送连接请求。连接成功后,一旦家庭内出现危急情况就可以启动一键报警模式通知小区物业;功能包含声音大小和屏幕亮度大小的调节以及娱乐模式。Raspberry Pi开发板具备所有计算机端的功能,除了应用家庭网关用户界面以外,还可以实现其他的娱乐项目。用户界面功能如图5所示。

图5 用户界面功能图

3.4 智能小区家庭网关数据库管理设计与实现

对家庭网关来说,数据库的应用是必不可少的。用数据库来储存和管理家庭终端节点的设备信息是一种非常灵活和便捷的选择。Qt中的QtSql模块提供了对数据库的支持。该模块的众多类基本可以分为三层:用户接口层、Sql接口层、驱动层。该系统使用的数据库是一个轻量级、独立、可嵌入的数据库SQLite。

网关数据库设计图如图6所示。

图6 网关数据库设计图

该系统设计了四个表,分别为设备信息表、灯光类控制表、窗帘类控制表、空调类控制表。设备信息表储存了设备地址、设备位置等家庭终端节点信息。灯光类控制表、窗帘类控制表、空调类控制表分别对应不同类别的家庭终端节点的控制命令信息。

4 结束语

该文设计了一种智能小区家庭网关系统。系统从智能家居结构出发,对家庭网关系统的硬件、软件进行了分析和设计。硬件设计主要是网关核心板和ZigBee[10]通信芯片的选择,软件设计主要包括功能和图形界面的设计。该系统实现了网关的智能增删终端节点、紧急情况下向小区物业报警、家电自动控制等功能。与传统的智能家庭网关[11]相比,本系统价格低廉,易于实现和维护,使用方便,具有良好的应用前景。

猜你喜欢

网关终端节点
CM节点控制在船舶上的应用
基于FPGA的工业TSN融合网关设计
复杂线束在双BCI耦合下的终端响应机理
一种主从冗余网关的故障模式分析与处理
基于AutoCAD的门窗节点图快速构建
X美术馆首届三年展:“终端〉_How Do We Begin?”
概念格的一种并行构造算法
结合概率路由的机会网络自私节点检测算法
通信控制服务器(CCS)维护终端的设计与实现
天地一体化网络地面软网关技术及其应用