APP下载

基于ZigBee 协议的短距离无线通信节点设计

2012-07-02彤,李闯,常

兵器装备工程学报 2012年7期
关键词:收发器短距离低功耗

李 彤,李 闯,常 成

(装甲兵工程学院,北京 100072)

随着各种便携式通信设备与家用电器设备的增加,人们对短距离的无线通信提出了新的要求。一般来讲,短距离无线通信技术从数据速率上可分为高速短距离无线通信和低速短距离无线通信2 类。高速短距离无线通信的最高数据速率高于100 Mbps/s,通信距离小于10 m,典型技术有UWB;低速短距离无线通信的最低数据速率低于1 Mbps/s,通信距离小于100 m,典型技术有ZigBee、IrDA、蓝牙技术。高速短距离无线通信技术目前主要应用于连接下一代便携式消费电器和通信设备,低速短距离无线通信技术主要用于家庭、工厂与仓库的自动化控制、安全监视、环境监视、军事行动、库存实时跟踪以及游戏和互动式玩具等方面的低速应用。本文主要对低速短距离无线通信节点的设计进行研究。

1 ZigBee 协议

ZigBee 是近几年兴起的一种短距离、低复杂度、低功耗、低数据速率、低成本的双向无线通信技术[1-6]。ZigBee 一词源自蜜蜂群在发现花粉位置时,通过跳Zigzag 形舞蹈来告知同伴,达到交换信息的目的。ZigBee 工作于2.4 GHz(全球流行)、915 MHz(美国)和868 MHz(欧洲)3 个频段上,并分别具有250 kbps/s、40 kbps/s、20 kbps/s 的数据传输速率。它的传输距离在十几米到一两百米的范围内,但还可以继续增加。实际的传输距离必须根据发射功率的大小、应用模式以及中继节点的使用情况而定。一个ZigBee 网络最多可以容纳65 535 个从设备和1 个主设备,一个区域内可以同时存在最多100 个ZigBee 网络。在标准制定方面,完整的IEEE 802.15.4/ZigBee 协议由应用层、网络层、数据链路层(包括MAC 和LLC)和物理层组成。IEEE 802.15.4 负责物理层和链路层标准的制定工作,而网络层、应用层和高层应用规范则由ZigBee 联盟制定。

ZigBee 协议的蓬勃发展源于其显著的特点:

1)低速率。最大只有250 kbps/s,专注于低速率传输应用。

2)功耗低。一般来说,ZigBee 节点的供电电压为2 ~4 V,工作模式下,电流为十几至几十毫安,休眠模式下电流可低至几微安。

3)通信可靠性高,数据安全。ZigBee 采用了避免冲突的载波侦听/冲突检测(CSMA-CA),同时为需要固定带宽的通信业务预留了专用时隙,避免了发送数据时的竞争和冲突。媒体接入层采用了完全确认的数据传输机制,每个发送的数据包都必须等待接收方的确认信息,因此通信可靠性高。

4)时延短。设备接入网络快,通常时延都在15 ~30 ms。

5)网络容量大。

6)成本低廉,工作频段灵活。设备的复杂程度低,且ZigBee 协议免专利费,可以有效地降低设备成本。

根据ZigBee 技术的特点,ZigBee 技术可以应用于符合如下条件的情况:

1)传输数据量不大,要求设备成本低。

2)要求数据传输可靠性高,安全性高。

3)设备体积很小,不便放置较大的充电电池或者电源模块。

4)地形复杂,监测点多,需要较大的网络覆盖。

5)现有移动网络的覆盖盲区。

2 通信节点设计

2.1 节点的硬件实现

本研究使用的是北欧集成电路公司(NORDIC)2008年10月份推出的一款带2.4 GHz 无线收发器nRF24L01 +和增强型8051 内核的无线收发芯片nRF24LE1。nRF24LE1 是为超低功耗无线应用设计的单片无线收发系统,芯片内部集成了高性能微处理器(与8051 指令兼容)、16kBFlash 存储器、1 Kbps 数据空间(片内RAM)、1 Kbps NV 非易失存储器空间、512 字节NV 非易失数据存储(扩展寿命)、低功耗振荡器、实时计数器、AES 硬件加密器、16 ~32 位乘法/除法协处理器(MDU)、随机数发生器等功能模块以及为低功耗设计的多种电源模式,支撑硬件调试和硬件支撑固件更新[7]。nRF24LE1 提供了一个理想的无线协议平台,具有协议无缝连接、高安全性、低功耗以及高抗干扰的优良性能。nRF24LE1 提供了SPI、2 线接口、UART、6 ~12 位ADC、PWM和一个低功耗的可作为系统电平唤醒的模拟比较器等外设接口,提供了3 种不同封装形式:①具有7 个通用I/O 的超小型4 mm×4 mm 24 引脚QFN 封装(图1);②具有15 个通用I/O 的紧凑型5 mm×5 mm 32 引脚QFN 封装;③具有31个通用I/O 的7 mm×7 mm 48 引脚QFN 封装。

图1 4 mm×4 mm 24 引脚QFN 封装的nRF24LE1 引脚封装形式

本文采用2 个nRF24LE1 模块实现无线数据传输和数据接收,其中一个作为数据接收端RX,另一个作为数据发送端TX,结构示意图如图2 虚线内所示。为了便于观察发送端发送的数据和接收端接收的数据,通过串口将PC 机与nRF24LE1 模块相连(如图2 所示)。PC 机作为上位机,通过串口将需要发送的数据发给nRF24LE1 发送端,nRF24LE1发送端通过无线发射传输到nRF24LE1 接收端,接收端将接收到的数据通过串口传送到与之连接的计算机上。

nRF24LE1 有1 个串行接口(TXD 和RXD)。nRF24LE1的串口与计算机串口的电路如图3 所示。nRF24LE1 采用3.3 V 的直流电压供电,串行接口电平转换芯片采用MAX3232。图3 中CTS 和RTS 连接到nRF24LE1 的TXD和RXD。

图2 无线通信结构示意图

图3 nRF24LE1 和计算机串口的连接电路

2.2 软件的实现

2.2.1 数据包格式

nRF24LE1 射频收发器内核具有嵌入式协议引擎(增强型ShockBurst)。增强型ShockBurst 是一个以包为基础的数据链路层,其功能包括包的自动装配和设定装配时间、自动应答和自动重发。增强型ShockBurst 的数据包包括一个前置域、地址域、包控制域、数据载荷域和CRC 校验域。增强型ShockBurst 数据包格式如图4 所示,最高位在左边。

图4 增强型ShockBurst 数据包格式

图4中:前置域是一个用于同步接收解调器的位序列;地址域指的是接收机地址;包控制域包括6 位数据载荷长度、2 位PID(包标识符)和1 位NO_ACK 标志(无应答标志);数据载荷是用户所定义的包的内容;CRC(循环冗余校验)是数据包中使用的错误检测机制。9 位包控制域的格式如图5 所示,最低位在左边。

图5 9位包控制域的格式

图5中:6 位的数据载荷长度用来确定数据载荷的字节长度;2位PID 域用来确定接收到的数据包是新的还是重发的;NO_ACK位用来选择自动应答功能。

2.2.2 射频收发器的工作模式

射频收发器可以配置为掉电模式(power down)、待机模式(standby)、接收模式和发射模式(RX 和TX)。射频收发器的工作模式配置如表1 所列。

1)接收模式。接收模式是射频收发器作为接收机时的工作模式。在接收模式,接收机将解调无线信道所接收到的信号,而且将收到并解调的数据不断送到基带协议处理引擎,基带协议处理引擎将持续搜索有效的数据包。一旦发现有效的数据包(检测相匹配的地址和正确的CRC 校验),有效的数据载荷将出现在RX FIFO 相应的存储单元中,如果RX FIFO 已满,则所接收的数据将被丢弃。部分相关程序代码如下:

表1 射频收发器的工作模式配置

2)发射模式。发射模式用于发射数据包,射频收发器将保持在发射模式,直到完成一个数据包的发送。部分相关程序代码如下:

2.2.3 通过串口与计算机的交互

本文通过串口调试助手将待发数据传给发送端,接收端将接受到的数据通过串口调试助手显示到计算机显示器上,如图6 所示。

部分相关程序代码如下:

图6 接收端计算机显示器截图

3 结束语

本文介绍了基于ZigBee 协议的短距离无线通信节点的设计,通过硬件和软件方面的设计实现了两节点间的无线通信。本设计可以用于无线遥控、无线监测等领域,为以后通信节点的组网设计打下基础。

[1]黄智伟,杨案江.超低功耗单片无线系统应用入门[M].北京:北京航空航天大学出版社,2011.

[2]王钦. 基于ZigBee 技术的无线传感网络研究与实现[J].重庆理工大学学报:自然科学版,2011,25(8):46-51.

[3]李文仲,段朝玉.短距离无线数据通信入门与实践[M].北京:北京航空航天大学出版社,2006.

[4]余成波,张一萌,张进,等.基于ZigBee 的粮库环境监测系统[J]. 重庆理工大学学报:自然科学版,2010,24(10):51-55.

[5]孙彩云,李世中,李海军.ZigBee 协议的研究及应用[J].四川兵工学报,2010(1):124-126.

[6]孙弋,韩晓冰,张衡伟,等.短距离无线通信及组网技术[M].西安:西安电子科技大学出版社,2008.

[7]肖林荣,应时彦.2.4GHz 射频收发芯片nRF24LE1 及其应用[J].信息技术,2009(12):13-16,20.

猜你喜欢

收发器短距离低功耗
高水头短距离泵站水锤计算分析
一种高速低功耗比较器设计
光纤收发器故障排除经验谈
一种宽带低功耗四合一接收机设计
低功耗便携智能翻译手套系统
低功耗技术在驾驶行为管理模块中的应用
Virtex5 FPGA GTP_DUAL硬核两个收发器独立使用的实现
短距离加速跑
训练课RPE在短距离自行车训练负荷监控中的应用
光纤收发器常见故障原因