基于CC2420的ZigBee无线网络节点设计
扫描二维码
随时随地手机看文章
射频收发器CC2420应用Chipcon公司的Sman RF 03技术,采用0.18μm CMOS工艺,只需极少的外部元件,性能稳定且功耗极低,同时集成所有ZigBee技术优点,可快速应用到建筑自动化网络、住宅安防系统、工业控制网络、远程抄表以及PC外设等ZigBee产品中,也可以替代现有的控制网络技术(例如RS一422、RS一485)和有线监视方案。
由于无线传感器网络在通信上消耗较大能量,选用功耗较小的PICl8F4620单片机为处理器,以及选用CC2420为通信器件,设计无线网络节点,因此,这里提出一种基于CC2420的ZigBee无线网络节点的设计方案。
2 CC2420简介
CC2420有33个16位配置寄存器、15个命令选通寄存器、1个128字节的RX RAM、1个128字节的TX RAM、1个112字节的安全信息存储器。TX和RX RAM的存取可通过地址或者用2个8位的寄存器实现,而采用后者访问内存与访问FIFO缓冲区一样,不能读取/写入任何数据到安全信息RAM,也不能把TX RAM和RX RAM作为内存访问,只能以FIFOS的方式访问,而对寄存器的操作则可通过SPI接口以从属方式使用。
CC2420内置一个低中频接收器,负责处理天线接收到的RF信号,经低噪声放大器(LNA)放大,并通过I/Q正交平衡电路降频转换为2 MHz的中频信号。该信号再经滤波、放大、A/D转换、自动增益控制、信道过滤、解扩频、符号相关和字节同步等恢复出正确的数据。当发送数据时,应先把要发送的数据放入容量为128字节的发送缓冲区。报头和起始帧由硬件自动生成。CC2420的内部结构参见参考文献。其性能特点如下:免执照频段:工作频带范围为2.400~2.483 5GHz;数据传输速率低:2M/s直接扩频序列基带调制解调和250 Kbits的有效数据速率;低电流消耗和高接收灵敏度:接收19.7 mA,发射17.4 mA,接收灵敏度为一94 dBm;高可靠性:采用了CSMA/CA技术避免发送数据的竞争和冲突,MAC层采用完全确认的数据传输模式,每个发送的数据包都必须等待接收方的确认信息;安全性高:基于CRC(循环冗余校验)的数据包完整性检查功能,支持鉴权和认证,采用高级加密标准(AES2128)的对称密码,保证数据安全传输;小尺寸封装:OLP一48封装,7 mm×7 mm;接口配置简单:与微处理器的接口配置简易(4总线SPI接口)。
3 ZigBee无线网络节点硬件设计
根据ZigBee传感器网络节点管理机制,把节点分成传感器节点、簇头节点和汇聚节点3种类型。当节点作为传感器节点时,主要是通过传感器采集周围环境的数据(温度、位移、光感度和湿度等),然后进行A/D转换,由处理器处理,最后由射频模块发送到相邻节点,同时该节点也要执行数据转发功能,即把相邻节点发送的数据发送到汇聚节点或离汇聚节点更近的节点;当节点作为簇头节点时,主要是收集该簇内所有节点所采集到的信息,经数据融合后,发往汇聚节点;当节点作为汇聚节点时,其主要功能就是连接传感器网络与外部网络(如Intelllet),将传感器节点采集到的数据通过互联网或卫星发送给用户。虽然节点的功能有所不同,但硬件电路基本一致。
设计选用PIC18系列的单片机+CC2420解决方案,因此要创建ZigBee传感器节点必须具备以下组件:传感器设备,带SPI接口的PICl8F4620单片机,带有所需外部元件的CC2420 RF收发器,天线(PCB引线天线或单极天线),3.3 V稳压电源。整个硬件系统划分为数据采集、数据处理、射频和供电4个模块.如图1所示。
3.1 数据采集模块
数据采集模块是应用传感器件监测外部环境,比如温度、湿度、液位、位移、转速等模拟参数,然后通过A/D转换送给单片机进行处理。
3.2 数据处理模块
处理器是整个节点的中心,其他模块都要通过处理器控制,因此处理器性能的好坏决定整个节点的性能。处理器采用PICl8F4620型单片机,它具有13路通道的10位模数转换模块,2.0~5.5 V宽工作电压,内嵌用于存储数据的3 986字节SRAM和用于存储程序代码的64 K字节Flash,JTAG程序下载和在线调试接口,支持4线SPI和I2C主从模式等特点。
3.3 射频模块
在无线传感器网络中,最关键的技术是实现节点间的通信。随着集成电路的发展,芯片的集成度越来越高,能耗越来越少,因此,传感器节点的能量主要是消耗在通信上。所以,选择一款低能耗的通信器件将节省节点能量,延长寿命。
在ZigBee无线传感器网络应用中,射频收发器CC2420工作在从机模式,PICl8F4620工作在主机模式,通过SPI接口配置CC2420寄存器参数和读写缓冲器内的数据,详细的引脚连接如表1所示。
CC2420具有完全集成的压控振荡器,只需要天线、16MHz晶体振荡器等非常少的外围电路就能在2.4 GHz频段工作。同时,CC2420提供一个4线SPI接口(SI、SO、SCLK、CSn)与微处理器连接,通过这个接口完成设置和收发数据工作,并实现读,写缓存数据、读/写状态寄存器等。片选信号CSn低电平有效。该接口使用步骤为:①驱动CSn为低电平,告知CC2420开始新的SPI通信周期。②CC2420选中后,开始驱动SCLK时钟信号。SCLK无需用固定频率驱动并有一个可变的服务周期。在SCLK信号上升沿,CC2420采样SI、SO上的数据;在SCLK信号下降沿,如果SO为输出模式。CC2420将改变SO上的数据。③当这一周期完成时,停止SCLK的驱动并将CS_信号变为高电平。
3.4 供电模块
偏远地区的工业设施、军事装备的监控系统具有无人值守、低数据量和点多面广等特点,该监控系统应用ZigBee无线传感器网络传输数据,采用电池供电,因此,网络节点的功耗为系统设计的关键。CC2420采用低电压供电(2.1~3.6V),并具有休眠模式,且从休眠模式激活的时延短,因此,功耗大大减小。CC2420各状态下的电流消耗典型值为:稳压器关闭为0.02μA,低电位模式为20μA,空闲模式为426μA,接收模式为18.8 mA,发送模式(POUT=0 dBm)为17.4 mA。另外,PIC18F4620也是一款低电压供电的器件(2.0~5.5V),并具有运行、空闲、休眠3种功耗管理模式,合理利用这些功耗管理模式可获得理想的节能效果。该系统设计的3.3 V稳压电源是由两节五号电池或9 V方型镍氢电池稳压至3.3 V的电源来提供。图2为CC2420射频收发器的应用电路。
其外围电路包括晶振时钟电路、射频输入/输出匹配电路和微控制器接口电路3部分。CC2420的本振信号既可由外部有源晶体提供,也可由内部电路提供。由内部电路提供时需外接晶体振荡器和2只负载电容,其电容容量取决于晶体频率及输入容抗等参数。例如采用16 MHz晶体振荡器时,其电容值约为22 pF。射频输入/输出匹配电路主要用于匹配器件的输入输出阻抗,使其输入输出阻抗为50 Ω,同时为CC2420器件内部的PA及LNA提供直流偏置。如果两节点相距较远,而且不易安装中间节点中继,可采用增加功放电路提高输出功率的方法实现较远距离的传输。图3为功放电路图。74LVC2G04是双非门缓存器用于控制UPG2214TK单刀双掷开关,选通发送或接收电路,而UP2202是一款高增益2.4Hz功放器件,用于提高射频电路的输出功率。这种带功放的节点一般应用于簇头节点或汇聚节点,以及沟壑地带等不易连接且相距较远的节点间数据传输。当然,这种节点消耗较大,大大降低电池寿命,因此在人烟稀少或不易到达的地点,需采用可充电的电池供电(输出电流达到120 mA),同时采用太阳能板为电池充电。
4 结语
CC2420RF收发器适用于大量分布节点的传感器网络。电路设计中重点考虑的是线路抗干扰问题,电路板设计成4层板,未布线的区域用敷铜并接地,CC2420底部通过多个过孔与地层连接,滤波电容尽量靠近器件放置,数字地和模拟地采用0 Ω电阻或磁珠隔离。另外,节点安装位应尽量避开树木,以减少对该电磁波的吸收,影响传输稳定性。
经过测试,增加功放电路后射频输出功率可达18 dBm:在空旷地域,两相邻网络节点可以在500 m范围内可靠传输数据。需要注意的是,普通节点一般不要外加功放,采用休眠机制,以延长电池使用寿命。