目前GSM和3G等无线移动通信技术以及蓝牙、WiFi、Ad-hoc等无线局域网技术应用日益广泛,但其设备系统复杂,功耗较大、成本很高,不适合应用在一些低数据速率和通信范围较小的场合,如传感器网络、家庭自动化以及玩具等领域。ZigBee网络在通信过程中只需一个网络协调者,用以建立网络并管理和协调整个网络的数据传输,而无需成本高昂、体积庞大的基站。该网络协调者既是网络中的主节点,又可作为网络与其他有线或无线网络互连的网关节点。ZigBee是一种低复杂度、低功耗和低成本的低速率无线连接技术,基于ZigBee技术的无线系统的开发应用已成为研究热点。
1 ZigBee技术
ZigBee是一种新兴的短距离、低速率无线组网通信技术。它是一种介于无线标记技术与蓝牙之间的技术提案。主要用于近距离无线连接。它有自己的无线标准,通过数千个微小的传感器之间相互协调来实现通信。这些传感器只需很少的能量,以接力的方式通过无线电波将数据从一个传感器传送到另一个传感器,所以通信效率非常高。ZigBee是一个由多达65 000个无线数传模块组成的无线数传网络平台,类似移动通信的CDMA网或GSM网。其中每一个ZigBee网络数传模块类似移动网络的一个基站,在整个网络范围内,它们之间可以进行相互通信;整个ZigBee网络还可以与现有的其他各种网络连接。
2 ZigBee无线网络节点的硬件设计
2.1 硬件系统总体设计
图l为ZigBee无线网络节点的硬件系统总体框图,该系统由CC2430器件模块和无线收发模块组成。CC2430射频器件模块由CC2430器件和相关外围电路构成。虽然CC2430内部集成有无线收发器和805l内核,可以简化电路设计,在单片机和无线收发器之间不加接口电路也能通信,但通信距离有限。经测量发现,两个网络节点在空旷地面的通信距离是lO~100 m,这个距离有时不能满足应用需要。在CC2430器件与天线之间加一级接口电路即无线收发模块,用来放大接收和发送信息的功率,从而加大数据传送距离。
2.2 CC2430器件模块
CC22430器件模块的电路原理如图2所示。该模块主要包括3.3 V和1.8 V电源滤波电路、芯片晶振电路、巴伦电路和复位电路。芯片本振信号既可由外部有源晶体提供,也可由内部电路提供,这里由内部电路提供,需外加晶体振荡器和2个负载电容,电容的大小取决于晶体的频率及输入容抗等参数。R2和R3为偏置电阻,电阻R3主要用来为32 MHz的晶振提供合适的工作电流。用1个32 MHz的石英谐振器(X1)和2只电容(C9和C10)构成1个32 MHz的晶振电路。用1个32.768 kHz的石英谐振器(X2)和2个电容(C7和C8)构成1个32.768 kHz的晶振电路。CC2430射频信号的收发采用差分方式传送,其最佳差分负载是115+j180 Ω,阻抗匹配电路应根据该数值进行调整。设计采用50Ω单极子天线,由于CC2430的差分射频端口具有两个端口,而天线是单端口,因此需采用巴伦电路(平衡/非平衡转换电路)完成双端口到单端口的转换。巴伦电路由电感(L1、L2,L3)和电容(C15、C17、C26)构成。
CC2430内部使用1.8 V工作电压,适合于电池供电的设备,外部数字I/O接口使用3.3 V电压,以保持和3.3 V逻辑器件兼容。CC2430片上集成有自流稳压器,能将3.3 V电压转换为1.8 V电压,这样只有3.3 V电源的设备无需外加电压转换电路就能正常工作。C1、C11、C15等为去耦电容,主要用于电源滤波,以提高器件的工作稳定性。
2.3 无线收发模块
CC2430发送数据时,信号从差分射频端口RF_P、RF_N经巴伦电路变为单端信号,由RXTX_SWITCH信号控制2个逻辑开关,选通功率放大电路(PA),放大后的信号从天线发射出去。接收信号时,在RXTX_SWITCH信号控制下,从天线接收的信号经低噪声放大电路(LNA)放大,巴伦电路转换,由RF_P、RF_N端口接收。图3为无线收发模块与CC2430的连接框图。
无线收发模块的电路原理如图4所示。该电路主要由2个逻辑开关电路、功率放大电路(PA)、低噪声功率放大电路(LNA)、阻抗匹配电路、电源滤波电路及偏置电路组成。功率放大电路采用Bubec公司的功放UP2202V,该器件由3.3 V电源供电,与CC2430供电电源相同,无需另外设计电源电路,l dB压缩点输出功率为23 dBm,线性增益为26 dB,内部输入已匹配到50Ω。
低噪声功率放大电路采用Bubec公司的UA2723,该器件采用3.3 v电源供电,内部输入输出均已匹配到50 Ω,设计时无需阻抗匹配,频率范围是0.05~4 GHz,在2.2 GHz时功率增益是20 dB,在2.5 GHz时1 dB压缩点输出功率大于-1.5 dBm。为了保证低噪声功率放大器的灵敏度,3.3 V电源经Richtek公司的超低噪声,低静态电流电源调整器RT919333PB调整后再送给UA2723,如图5所示。
3 ZigBee无线网络节点的软件设计
3.1 ZigBee协议栈
ZigBee协议由一组子层构成。每层为其上层提供一组特定的服务;数据实体提供数据传输服务;管理实体提供全部其他服务。每个服务实体通过一个服务接入点(SAP)为其上层提供服务接口,并且每个SAP提供一系列基本服务指令来完成相应的功能。
ZigBee协议栈的体系结构包括:ZigBee应用层、ZigBee网络层、IEEE.802.15.4 MAC层和IEEE802.15.4 PHY层。IEEE.802.15.4 2003标准定义最下面的2层:物理层(PHY)和介质接入控制层(MAC)。ZigBee联盟提供了网络层和应用层(APL)框架的设计。其中应用层框架主要包括3部分:应用支持子层(APS)、ZigBee设备对象(ZDO)和由制造商制定的应用对象。
3.2 ZigBee信道分配
ZigBee的通信频率在物理层规范,在不同的国家或区域ZigBee提供了不同的工作频率范围,其所使用的频率范围为2.4 GHz和816/915 MHz。因此,在ZigBee中定义2.4 GHz和816/915 MHz 2个物理层标准,它们都基于直接序列扩频(DSSS)技术。
这里采用全球统一的2.4 GHz波段,无须申请ISM频段,适合ZigBee设备推广及降低生产成本。2.4 GHz物理层采用16相调制技术,能够提供250 kb/s的传输速率,提高数据吞吐量,缩短通信时延和数据收发时间,降低功耗。
3.3 网络的建立与加入
ZigBee设备通过NLME-NETWORK-FORMATION.request原语来启动一个新网络的建立过程。仅当具有ZigBee协调器能力且当前无与网络连接的设备,才可尝试建立一个新网络。如果此过程由其他设备开始,则网络层管理实体将终止该过程,并向其上层发出非法请求报告。
该步骤通过发出状态参数为INVAUD_REQUEST的NLME-NETWORK-FORMATION.confirm原语来完成。只有当设备为ZigBee协调器或路由器时,才能试图允许设备与网络的连接。可通过NLME-PERMIT-JOINING.request原语允许连接。
3.4 数据的发送与接收
发送数据时,首先按照协议中规定的帧形式构建帧数据。帧数据包括帧头和帧内容。其中帧头包括帧类型、源地址、目的地址、PAN、CLUSTERID等信息。帧构建好后调用MAC层的原语MCPS-DATA.request,并将接收到的结果通过MCPS-DATA.confirm返回。在Z-Stack中,数据的发送和接收都必须通过应用层调用。应用层提供的Flash发送函数,其程序如下:
为了接收数据,设备必须打开其接收机。上层使用NLME-SYNC.request原语初始化设备,打开其接收机,该原语将引起网络层使用MLME-POLL.request原语对其父设备进行轮询。ZigBee协调器或路由器的网络层必须在最大程度上保证任何时间接收机总是处于接收状态。
网络层使用NLDE-DATA.indication原语向其高层表明所接收到的数据帧。一旦接收到帧信息,网络层数据实体将会检查帧控制域中安全子域的值。如果该值不为零,则网络层数据实体将把该帧传送到安全服务提供单元,并根据所指定的安全标准对其进行安全处理。
接收到Flash发送方式的数据后,网络层会根据发送的数据计算小灯闪烁的数据间隔,其源函数程序如下:
4 结束语
将本文所设计的ZigBee无线网络节点应用于军用车载记录仪,用来向基站传送车的速度,油量,水温,行驶路程等数据。经测量,在距离基站292 m以内的地方,数据能准确地传送到基站,基本达到了预定设计目标。
ZigBee网络节点设计简单、开销小、应用范围广,适用于家庭自动化、健康医疗服务、无线自动读表系统、智能小区、无线传感器网络、无线工业控制、智慧型标签等领域。例如在精确农业领域,传统农业使用孤立的、无通信能力的机械设备,主要依靠人力检测作物的生长状况,而采用传感器和ZigBee网络后,农业将逐渐转向以信息和软件为中心的生产模式,使用更多的自动化、网络化、智能化和远程控制的设备来耕种。