基于CC2420的无线传感器网络节点的设计
扫描二维码
随时随地手机看文章
无线传感器网络是当今国内外通信领域的一大研究热点,它在军事、民用及工商业领域都具有广阔的应用前景。在军事领域,通过无线传感器网络,隐蔽地分布在战场上的传感器可将获取的信息回给指挥部;在民用领域,无线传感器网络可在家居智能化、环境监测、医疗保健、灾害预测等方面得到广泛应用;在工商业领域,无线传感器网络在工业自动化、空间探索和其他商业用途卜得到广泛应用。
考虑到无线传感器网络在通信上消耗能量较大,故选用功耗较小的CC2420芯片作为通信芯片来设计节点。
1 无线传感器网络节点的特征
无线传感器网络由大量体积小、能耗低、具有无线通信、传感和数据处理功能的传感器节点组成。因此,传感器节点是尤线传感器网络的基本单元,节点设计的好坏直接影响到整个网络的质量。无线传感器网络节点主要负责对周围信息的采集和处理,并发送自己采集的数据给相邻节点或将相邻节点发过来的数据转发给基站或更靠近基站的节点。它一般由传感器模块(传感器、A/D转换器)、处理器模块(微处理器、存储器)、无线通信模块(无线收发器)和能量供应模块(电池)组成,如图1所示。
所有无线传感器网络节点都具有相同的功能,但在某一时刻,各个节点可能正在执行不同的功能。根据功能,可以把节点分成传感器节点、簇头节点和汇聚节点3种类型。当节点作为传感器节点时,主要是采集周围环境的数据(温度、光度和湿度等),然后进行A/D转换,交由处理器处理,最后由通信模块发送到相邻节点,同时该节点也要执行数据转发的功能,即把相邻节点发送过来的数据发送到汇聚节点或离汇聚节点更近的节点;当节点作为簇头节点时,主要是收集该簇内所有节点所采集到的信息,经数据融合后,发往汇聚节点;当节点作为汇聚节点时,其主要功能就足连接传感器网络与外部网络(如Internet),将传感器节点采集到的数据通过互联网或卫星发送给用户。
2 CC2420芯片的性能和结构特点
CC2420是Chipcon公司开发的首款符合Zigbee标准的2.4 GHz射频芯片,集成了所有Zigbee技术的优点,可快速应用到Zigbee产品中。Zigbee是建立在IEEE 802.15.4定义的可靠的PHY(物理层)和MAC(媒体访问控制层)之上的标准,它定义了网络层、安全层和应用层。Zigbee的协议架构如图2所示。
Zigbee技术的特点如下:
a) 数据传输速率低:只有20~250 kbit/s,专注于低传输速率的应用。
b) 时延短:休眠激活时延和活动设备接入信道时延均为15 ms,典型的搜索设备时延为30 ms,这便可以使系统有更多的睡眠时问,从而大大降低能量消耗。
c) 功耗低:由于Zigbee的传输速率低,且采用了休眠模式,因此大大降低了功耗。单靠两节5号电池便可维持6到24个月,这是其他无线通信技术望尘莫及的。
d) 安全性高:Zigbee提供了基于CRC(循环冗余校验)的数据包完整性检查功能,支持鉴权和认证,采用高级加密标准(AES-128)的对称密码,以灵活确定其安全属性。
e) 免执照频段:采用直接序列扩频在ISM(工业、科学、医疗)频段,2.4 GHz(全球)、915 MHz(美国)和868 MHz(欧洲),均为免执照频段。
f) 网络容量大:Zigbee可采用星状、树状和网状网络结构,并采用IEEE标准的64-bit编址和16 bit短编址。由一个主节点管理若干子节点,最多一个主节点可管理254个子节点;同时,主节点还可由上一层网络节点管理,最多可组成65 000个节点的大网。
g) 可靠性高:采用了CSMA-CA技术来避免发送数据的竞争和冲突。MAC层采用了完全确认的数据传输模式,每个发送的数据包都必须等待接收方的确认信息。
h) 低成本:由于Zigbee数据传输速率低,协议简单,因此大大降低了成本。
CC2420芯片除了拥有以上Zigbee的所有优点外,还具有与微控制器的接口配置容易(四线SPI串行口)、接收与发送采用不同存储空间、所需外部元件较少以及采用QLP-48封装,外形尺寸只有7 mm×7 mm等性能特征。
CC2420芯片的内部结构如图3所示。天线接收的信号经低噪声放大器放大,并通过I/Q降频转换为2 MHz的中频信号。该信号再经滤波、放大、A/D转换、自动增益控制、终端信道过滤以及信号修正等,最终得到正确数据。当要发送数据时,先把要发送的数据放入容量为128字节的发送缓冲区。报头和起始帧由硬件自动生成。根据IEEE 802.15.4标准,将数据流的每4个比特扩展为32码片,然后送到D/A转换器。最后,经过低通滤波和上变频混频,并在能量放大器中进行放大后,交由天线发送。
3 节点设计
由于在设计中用到的传感器较少(主要是温度传感器和光传感器),因此将传感器模块集成到处理器模块中。所以对节点设计的描述将分为处理器模块、通信模块和供电模块3部分。其中处理器模块选用ATmega128L作为处理器芯片,通信模块选用CC2420作为通信芯片,在电源方面,采用2节5号电池提供3V供电。
3.1 处理器模块
处理器是整个节点的中心,其他模块都要通过处理器来联系,因此处理器性能的好坏决定了整个节点的性能。ATmega128L芯片是ATMEL公司开发的一款高性能、低功耗的8位AVR微处理器。它有128 kB的系统可编程Flash存储器,4 kB EEPROM,以及4 kB的片内SRAM,同时还可以扩展外部存储器;采用先进的RISC结构,大部分指令在一个时钟周期内完成;有64个10引脚,都与通用单片机兼容;片内提供1个串行外围接口SPI、1个两线串行接口TWI和2个通用同异步串行接口,用于与外部元件的通信;并提供8通道10位采样精度的A/D转换器,该器件同时支持16路差分电压输入组合。
处理器与传感器的连接如图4所示。因为光传感器与温度传感器的工作原理相似,因此它们可采用同样的电路图。图中的R1为光敏电阻或热敏电阻,R2为10kΩ电阻,用于保护电路,加入电容C1是为使A/D转换器采样所得到的数据更精确。
电路的工作原理是:用ATmega128L的一个引脚给电路提供电源,从图中的电源端输入电路。R1的阻值根据光(R1为光敏电阻)或温度(R1为热敏电阻)的变化而发生变化,从而引起其压降的变化。将R1的负端与处理器的一个A/D转换器端口连接,处理器即可收到一个电信号,然后处理器启动A/D转换功能,将电信号转换为数字存入寄存器,当MCU需要处理或发送该数据时便可来取。利用下式可计算出十位二进制A/D转换器读数DADC。
式中:Vin为A/D转换器引脚的输入电压;Vref为参考电压。
3.2 通信模块
在无线传感器网络中,最关键的技术是实现节点间的通信。随着集成电路的发展,芯片的集成度越来越高,能耗越来越少,因此,传感器节点的能量主要是耗费在通信上。所以,选择一块低能耗的通信芯片将为节点节省能量,延长寿命。
CC2420是Chipeon公司开发的一款低功耗通信芯片。由于其唤醒时延短,使得它能有更多的时间处于睡眠状态,从而大大降低了节点的能耗,延长节点的寿命。CC2420与ATmega128L的连接如图5所示。
CC2420有4个SPI通信接口:CSn、SI、SO、SCLK,刚好对应ATmega128L的4个SPI通信接口:SS、MO-SI、MISO、SCLK。通过这4条线,处理器可以对CC2420进行写入或读取配置信息,也可以收发数据。由于CC2420只有从机模式,因此处理器只能采用主机模式。如图5所示,由处理器的SCLK引脚提供时钟频率;SS引脚控制数据收发的同步性,在接收和发送时,都要保证CSn为低电平;MOSI与MISO分别是数据输出和输入的引脚。SFD引脚在发送或接收完开始帧后置为高电平,然后继续发送和接收后面的数据。在接收模式下,若地址识别功能使能且识别成功或地址识别功能不使能,则SFD引脚直到所有数据发送完成才降为低电平。若地址识别功能使能但识别失败,SFD引脚将马上降为低电平。处理器的ICP引脚可以通过与SFD引脚的连接获取数据发送和接收的时间信息。与CCA引脚的连接可使处理器获取清除通道评估信号。FIFO和FIFOP是与CC2420的RXFIFO(接收数据存储区)相关的两个信号。当RXFIFO中有数据时,FIFO就变为高电平,直到RXFIFO为空为止。这样,处理器便可通过读取FIFO引脚的电平来判断CC2420中是否有接收到的数据。当RXFIFO中未被读取的数据超过某个门限值(可编程没定)或整个数据包接收完成后还未被读取时,FIFOP引脚就变成高电平。但是,当CC2420的地址识别功能使能时,只有到地址识别成功后FIFOP引脚才会发挥作用,这是为了防止处理器在CC2420的地址识别完成前读取那些可能无效的数据。当RXFIFO发生溢出时,FIFO将变为低电平,同时,FIFOP变为高电平。所以与FIFO引脚和FIFOP引脚的连接可以让处理器知道何时该读取数据。将FIFOP引脚与处理器的一个外部中断引脚连接,是为了让处理器能及时读取CC2420的RXFIFO中的数据,从而尽量避免RXFIFO的溢出。
3.3 供电模块
由于无线传感器网络可能工作在人烟稀少或人类无法到达的地区,所以大多只能采用电池供电,且一般不可能更换电池。因此,如何降低节点能耗是无线传感器网络研究中最关心的问题之一。CC2420芯片采用低电压供电(2.1 V~3.6 V),同时,采用休眠模式,且从休眠模式被激活的时延短,因此有更多的时间处于休眠状态,而处于休眠状态时芯片的能耗极低,从而大大减少了能耗。CC2420各状态下的电流消耗典型值如下:稳压器关闭为0.02μA,低电位模式为20μA,空闲模式为426μA,接收模式为18.8 mA,发送模式(输出功率P=0 dBm)为17.4 mA。
同时,ATmega128L也是一款采用低电压供电的芯片(2.7 V~5.5 V)。而且ATmega128L有6种睡眠模式:空闲模式、ADC噪声抑制模式、省电模式、掉电模式、Standby模式以及扩展的Standby模式。可根据需要,通过软件编程或硬件复位等方式来控制处理器进入睡眠模式,节省能耗。同时,各种睡眠模式都有各自的唤醒源,当有数据需要处理器处理时,便可由唤醒源将其唤醒,进入工作状态,一旦处理完成,再次进入睡眠状态。采用这种工作方式,处理器能够最大限度地节约能耗。
3.4 设计要点
无线传感器网络应用的特殊性要求其节点体积越小越好,因此在元器件的选择上当然是选择同类型中体积最小的。但是节点体积越小,在设计电路板布线时可能会因为线路间距离太小而产生十扰,因此抗干扰设计是节点设计时的重点问题。可以把电路板设计成4层板。顶层布信号线,主要是传输通过天线接收和发送的信号。该层空白区域用金属层覆盖,并通过几个孔接地;第2层可以布数据线,将用于节点内部数据传输的线路都布置在这一层;第3层布供电线路;第4层作为接地层。各元件的接地引脚应使用单独过孔,尽量靠近封装引脚接地,去耦电容也应尽量靠近电源脚放置,并通过单独过孔接地。同时,为了抗电磁干扰,最好把数字电源和模拟电源、数字地和模拟地隔离开来,一般可采用0 Ω电阻或磁珠来进行隔离。
4 节点的优势
选择CC2420作为无线收发芯片的一个显然的优势就是它工作于ISM免执照频段。此外,由于芯片采用了休眠模式,使其具有超低能耗和以年计算的寿命。由于芯片的成本低,因此也就更符合传感器网络需要大量分布节点的特点。再者,芯片已经集成了CRC和数据完整性检查等功能,这就相对减少了程序员编程的工作量,而且硬件处理速度一般都快于软件处理速度,因此加快了通信的速度,减少了能量消耗。同时,芯片还采用了CSMA-CA技术来避免数据发送时的竞争和冲突,减少了一部分不必耍的能量消耗。
5 结束语
近几年,无线传感器网络越来越受到人们的重视,尤其随着集成电路和无线通信技术的飞速发展,无线传感器网络节点越来越少,能耗越来越少,适用范围越来越广。Zigbee协议是由Zigbee联盟开发的一种针对短距离、低速率、低功耗应用的无线通信协议,于2004年12月正式获得批准。CC2420是Chipcon公司开发的全球首块符合Zigbee标准的无线收发芯片。基于CC2420的无线传感器网络节点具有成本低、能耗小等特点,而这些特点正是传感器网络研究中最为重视的热点,因此,该设计方案有广阔的应用前景。