基于ZigBee的无线智能家庭网关控制技术研究
扫描二维码
随时随地手机看文章
摘要:设计一种新型的基于ZigBee技术的智能无线网关控制系统,以S3C2410为平台,采用Linux操作系统,实现智能家庭网关与终端设备的无线连接;重点研究了该系统的组成、系统的软硬件设计,以及利用ZigBee技术实现对终端设备的控制。
关键词:家庭网关;无线;ZigBee;Linux操作系统
引言
随着网络技术和现代通信技术的发展,家庭网络化已经成为家庭现代化的趋势。家庭网络可视为一种分布式网络,通过无线家庭网关实现对普通家电终端的远程控制是未来的发展趋势,冈此无线家庭网关是整个家庭网络的核心,它主要实现网络接入、远程控制以及无线连接家庭内部异构子网等功能。其中无线网关控制技术是一个需要解决的关键问题。
目前无线控制技术主要有IrDA、ZigBee、无线USB、蓝牙、Z-Wave。在以上技术中,IrDA技术最具有成本优势且协议简单,但传输方向单一,不能组网。WirelessUSB的成本较高,主要用于传输高速多媒体数据,不适合智能家庭的控制应用。蓝牙技术主要用于传输语音,如果将其应用在智能家庭网关控制,将带来传输距离受限和控制协议复杂等问题。Z-Wave是从ZigBee标准中精简而来,但该技术目前尚不支持全球通用的2.4 GHz频段。ZigBee技术在传输距离、可靠性以及组网能力方面都极具优势,本文利用ZigBee技术对智能无线家庭网关控制技术进行研究。
1 无线智能家庭网关控制技术的结构设计
1.1 家庭网关组网技术的选择
ZigBee技术是一种新兴的远距离、低复杂度、低功耗、低数据速率、低成本的双向无线通信技术。ZigBee技术的低数据速率特点,适合于承载数据流量较小和QoS的要求不高的业务,因此,ZigBee技术是最适合智能家居系统的组网技术。对于智能家居系统来说,该网络自身是一个动态系统,不断与外界环境相互影响,网络中传输的数据量不大,网络节点多,要求低功耗,因此家庭无线网关利用ZigBee技术,其拓扑结构采用星型结构组网。
1.2 家庭网关的无线组网设计
基于ZigBee技术的家庭网关系统结构框图如图1所示,家庭网关和若干个无线通信ZigBee节点模块组成星形结构的家庭传输网络。家庭网关是网络协调器,它主导网络的建立,监督网络的正常运行,配置存储空间,实现网络初始化、数据采集、设备控制等功能。另外,它配置16位本地地址给设备以节省带宽。其他的无线通信ZigBee模块只能与家庭网关之间进行通信,实现状态采集、查询响应、设备控制等。智能家庭网关是一个智能的嵌入式网络系统,包括硬件和软件两部分。
1.3 智能家庭网关硬件结构设计方案
硬件部分需要提供多种多样的网络接口类型与控制接口,主要由主控制器、GPRS模块和ZigBee射频通信模块3部分组成,其结构框图如图2所示。
主控制器CPU控制各种各样的接口,包括以太网接口、USB接口、ADSL接口、WLAN接口等。主控制器采用三星公司的ARM9微处理器S3C24-10X,它具有外围扩展功能模块,能够实现高速处理。GPRS模块采用Siemens公司的TC35终端,通过串口与CPU相连,实现与Internet。的连接。ZigBee射频收发模块采用Chipcon AS公司的CC2420芯片.控制家庭网内具备ZigBee标准接口的家用电器。在家电控制器上加载ZigBee无线通信模块成为家庭分布式网络的终端设备。
2 无线智能家庭网关控制技术的实现
在选定了家庭网关的硬件平台后,家庭网关便有了自己的物理载体,但仅仅是硬件部分,并不能实现家庭网关所应具有的功能,还需要有建立在硬件平台之上的软件控制系统。
2.1 智能家庭网关系统的选用
家庭网关采用嵌入式Linux操作系统进行开发,包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面等。操作系统主要实现以下功能:
①建立交叉编译环境。
②引导装载程序(Bootloader),能实现系统的快速引导,提供瞬间开机功能;负责将Linux内核加载到内存,并将控制权交给内核初始化程序。
③Linux内核(kernel)的移植与裁减。Linux内核采用模块化的组织结构,通过增减内核模块的方式来增减系统的功能,正确合理地设置内核的功能模块,只编译系统所需功能的代码,以获得更高的运行速度。
④装载文件系统(file system)。嵌入式系统一般不具备硬盘等大容量存储体,而用Flash为主存储器,其文件系统也具有特殊性。
⑤开发图形用户界面(GUI)。
⑥选择上层应用程序(applieation)。
2.2 智能家庭网关软件结构的设计
智能家庭网关采用分层软件设计结构,如图3所示。在整个软件框架中,位于底层的是各类硬件驱动程序,通过嵌人式Linux操作系统实现底层硬件设备的驱动与管理。嵌入式Linux操作系统之上是针对设计需要而移植的TCP/IP协议与ZigBee通信协议。协议层之上为应用程序层,其中包括Web、CGI程序与嵌入式用户图形系统QT和一些其他的嵌入式应用程序。其中嵌入式web服务器,提供了全中文的Web管理界面,用于家庭网关的远程访问和管理,QT是基于本地LCD的一个强大的图形界面系统,实现在家庭内部通过ZigBee对家电终端的访问和控制。
2.3 ZigBee通信控制的实现
(1)智能家庭网关与终端设备通信连接的建立
在家庭网关硬件平台的ZigBee适配器与终端设备之间建立的无线通信连接,是基于无线替代有线而建立的无线信道连接,它与实际的串行连接并没有太大的差别。这样,在Linux下利用先前移植的ZigBee工具包,完成家庭网关硬件平台上无线适配器与终端设备之间的配对与连接后,就可以以操作设备文件的方式对这条无线信道的串行连接进行操作,在本地实现对终端设备的通信和控制。主要包括两个方面的内容:一个是网关发送的控制指令要通过ZigBee发送到终端设备,另一个是终端设备反馈给家庭网关的状态数据也要通过ZigBee的方式发送给家庭网关。通信过程的结构框图如图4所示。
按照需求编写相应通信控制程序、编译并下载到目标系统。这些程序要遵循通信协议。
(2)通信连接过程的部分实现代码
3 总结
本文利用ZigBee技术,以S3C2410为平台,采用Linux操作系统,对无线智能家庭网关与设备终端之间控制技术进行分析,并对硬件结构和软件实现进行了设计。该智能家庭无线网络控制系统具有稳定性好,实时性强,控制距离远,协议简单等特点,克服了目前家庭网关的一些缺点。