开放式的无线传感器网络节点平台设计
2013-09-19王泰然徐建城刘慧卓
王泰然,徐建城,刘慧卓
(西北工业大学 陕西 西安 710000)
无线传感器网络(Wireless sensor network,WSN)是一种全新的信息获取平台,由大量廉价的静止的或移动的传感器模块以自组网络和多跳的方式构成无线网络,其目的是协作地感知、采集、处理和传输网络覆盖区域内监测对象的信息,并报告给用户[1]。WSN在军事、农业、环境监测、医疗卫生、工业、智能交通、建筑物监测、空间探索等领域有着广阔的应用前景和巨大的应用价值,被认为是未来改变世界的十大技术之一、全球未来4大高技术产业之一。
传感器技术、嵌入式技术、微机电技术以及无线通信技术的不断进步推动了低功耗、多功能WSN的飞速发展。WSN的研究人员设计了很多无线传感器网络硬件平台,其大致分为两类:专用平台和通用平台。孙鹏[2]等设计了一款基于Si1000的无线传感器网络节点用于监测粮食的储备环境;韦然[3]设计了一款基于MSP430F1611的无线传感器网络节点用于温湿度检测;郭燕红[4]设计了一款基于MSP430F149的无线传感器网络节点用于对楼宇空调的智能监控;王新忠[5]等设计了一款基于Atmega128L的无线传感器网络节点用于丘陵葡萄园环境信息和土壤墒情的无线监测。上述节点数据采集模块固定只能针对具体的工作要求完成具体的任务,属于专用节点。张伟[6]等设计了一款基于ARM7的开放式的无线传感器网络平台;周应宾[7]设计了一款基于ARM处理器S3C2410的无线传感器网络平台。上述节点具有可扩展性而且具有较强的数据处理功能,属于通用节点。上述节点平台可以应用于不同的任务背景,但是ARM处理器相对于普通低速的单片机如,MSP430往往需要更多的能耗,这将大大缩减此类平台的生命周期。能耗问题是无线传感器网络的一个重要的限制因素,如何高效使用能量来最大化延长网络生命周期是传感器网络所面临的重要挑战[8]。这里我们设计了一款基于MSP4305438微处理器的开放式的无线传感器网络节点。相对于一般的专用无线传感器网络节点我们的节点具有很好的开放性和可扩展性,可以根据实际应用背景实现不同的功能。此外,相对于ARM处理器为主控芯片的节点我们的节点具有更低的能耗。
1 系统总体设计
我们的系统在低功耗的基础上要求其具备开放性和可扩展性。为了实现这一目的我们在该系统的硬件设计时采用模块化设计思想。一般的无线传感器网络节点包括以下四个模块:电源模块、数据采集模块、处理器以及存储模块和无线通信模块。当一个无线传感器网络节点的主控芯片给定后,根据不同的应用背景无线传感器网络节点的差异性主要体现在数据采集模块和无线通信模块。数据采集模块决定了其完成什么功能、无线通信模块决定其使用哪种通信协议。MSP430F5438微处理器具有丰富的外设,它具有多达10个8位IO口。我们可以预留多个IO口作为传感器模块接口、无线通信模块接口以及通用接口。最后我们将数据采集模块和无线通信模块单独设计最后通过接插件(插针和穿焊空)和处理器模块预留的接口连接。这样我们在针对不同的应用背景就可以方便地使用不同的传感器模块和无线通信模块而不用再去设计处理器模块甚至电源模块。系统框图如图1所示。
图1 系统框图Fig.1 Block diagram of system
2 硬件设计
节点主要包括6个模块:电源模块、JTAG模块、传感器模块、处理器模块、无线通信模块以及串口通信模块。
2.1 电源及JTAG模块
无线传感器网络节点体积微小,通常以能量十分有限的电池供电。无线传感器网络节点通常分布在环境复杂甚至人不能到达的地方,而且分布范围广数量多,所以通过更换电池或充电的方式来补充能源是不可能的。由于成本和技术的限制,利用太阳能和风能发电来补充能量的方法目前也很难得到应用。如何高效的使用能量来最大化延长无线传感器网络的生命周期是无线传感器网络所面临的首要挑战,这也是我们在无线传感器网络节点的软硬件设计过程中应该重点考虑的问题。
选用TI公司的MSP430F5438作为主控芯片,并利用JTAG仿真器通过JTAG接口将程序写入flash。JTAG接口是一个双向串行端口,可以控制MSP430的运行、刷新Flash以及读写寄存器等等。MSP430单片机内部集成了遵循边界扫描故障诊断的电路。这样仅需要一个接口,就可以连接电脑进行程序下载和调试了。这样的好处是:传统的仿真器是特殊设计的CPU,价格较贵,增加了开发学习的成本。而TI公司给出了JTAG仿真器的电路设计,使用者可以自己制作,单片机自带仿真接口,所以能够降低用户的开发成本。由于可以通过JTAG口访问MCU内部程序存储器,在发布产品时要将JTAG口切断,否则产品可能会被别人仿制,从而造成损失。MSP430单片机的JTAG端口设计有一个熔丝。熔断熔丝后就无法再通过仿真器进行调试,而这种熔断是不可逆转的物理毁坏,所以能够有效地保护用户的程序不被盗用。
MSP430F5438单片机工作电压为1.8~3.6 V;TI公司的无线通信芯片也多以2.1~3.6电压供电;JTAG模块和串口模块采用USB供电;传感器模块根据实际情况采用外部供电或母板供电。因此,我们选用3 V的纽扣电池进行供电,同时利用JTAG仿真器进行辅助供电。电源模块以及JTAG模块如图2所示。当使用JTAG仿真器进行供电时将S1闭合至JTAG接口的拐脚2,同时S2断开。当使用电池供电时,将S1闭合至JTAG接口的拐脚4,同时闭合S2。ADP3339保证了电源较好的稳压性。
图2 电源和JTAG模块Fig.2 Power and JTAG module
2.2 传感器模块
由于我们的平台是一种开放的可扩展的无线传感器网络节点平台,所以我们的传感器模块要根据实际应用背景进行设计。所以,所有的传感器模块都单独进行设计,并通过接插件(过孔和插座)与母板进行连接。传感器应尽量选择数字传感器并尽量选择低功耗、小体积的传感器。下面以温度采集为应用背景为例进行传感器模块的设计,如图3所示。温度传感器我们选择数字温度传感器DS18B20。
图3 温度传感器模块及其接口Fig.3 Temperature sensor module and its interface
2.3 微处理器模块
无线传感器网络节点是一种微型嵌入式设备,要求其价格低、功耗小。这些限制导致其所携带的微处理器能力相对较弱,存储器容量相对较小。然而,无线传感器网络节点需要完成监测对象的数据采集和转换、数据的管理和处理、应答其他节点的请求和节点控制等多种复杂工作。这就需要我们在选择主控芯片时既要保证其能满足低功耗的要求又能完成多种复杂任务。这里我们选择了TI公司的MSP430F5438单片机,相对于51或52系列单片机它可以完成更复杂的任务,相对于ARM系列处理器它的能耗更低。
TI公司的MSP430F5438单片机是基于RISC架构的16位超低功耗单片机,内部集成256KB闪存和16KB RAM,在1.8~3.6 V的工作电压范围内性能高达25MIPS。强大的数据处理能力和足够容量的存储器满足了我们的平台完成各种数据处理和存储的要求。该处理器包含一个用于优化功耗的创新电源管理模块,具有6种低功耗模式。其功耗已经达到了微安级,超低功耗使我们可以更大的延长我们的无线传感器网络节点平台的生命周期。从低功耗模式唤醒到激活模式只需要不到5 μs的时间。MSP430F5438内部集成有多通道、高速A/D转换模块ADC12,能提供多通道12位精度的A/D转换,其最大采样速率可以达到200ksps。ADC12模块内包括采样/保持功能的ADC内核、转换存储逻辑、内部参考电平发生器、多种时钟源、采样及转换时序电路。对于大多数现场数据采集的应用环境而言,MSP430F5438内部集成的ADC12模块都能很好地满足数据采集的要求。此外MSP430F5438具有丰富的外设。它具有多达10个8位IO口,P1口到P10口是完整的,P11口包含3个单独的IO口。所有单独的IO位可独立编程,输入、输出以及中断条件的任意组合是可以的,所有的端口可编程上拉或下拉,所有端口上的驱动强度可编程控制,对于P1口和P2口的所有的8比特端口具有边缘可选的终端输入能力,支持端口控制寄存器读写访问的所有指令,所有单位可以以字节为单位进行访问也可以以字为单位进行访问[9]。丰富的外设满足了我们的无线传感器网络节点平台开放式和可扩展的要求。这里我们将预留多个IO口用于接入传感器模块、无线通信模块以及其他通用模块。处理器模块如图4所示。
2.4 无线通信模块
在我们的无线传感器网络节点平台的设计过程中我们将无线通信模块单独设计并通过插针和插座和母板进行连接。这样我们可以根据不同的通信协议设计不同的无心通信模块而无需改变其他模块。无线传感器网络中最常用的无线通信协议就是IEEE802.15.4标准。该标准具有低功耗、低成本等有点,很符合无线传感器网络节点的要求。下面我们就以2.4 GHz的IEEE802.15.4无线通信规范设计我们的无线通信模块。
这里我们选择TI的CC2420作为我们的无线控制芯片。CC2420是首款符合IEEE 802.15.4标准的射频收发器,它基于SmartRF03技术,以0.18 mm CMOS工艺制成只需要极少的外部元器件,性能稳定且功耗极低其MAC层和PHY层协议符合IEEE 802.15.4规范,工作于无执照的2.4 GHz频段[10]。利用CC2420和MSP430共同开发的无线通信设备支持数据传输率可高达250 kbps,可实现多点间的快速组网。
本设计中微处理器MSP430F5438与CC2420通过SPI高速通信串行口进行控制和通信。MSP430F5438为主设备,CC2420 为从设备。 CSn、SO、SI、SCLK 是 CC2420 的 SPI接口线,通过它们,Msp430F5438单片机可以设置CC2420的寄存器以及数据传输等。当进行SPI通信时Msp430F5438单片机作为主机,通过SCLK来控制时序,通过SI、SO进行数据的输入和读取。CSn是片选信号线,用于保证数据收发的同步性。无线通信模块如图5所示。
图4 处理器模块Fig.4 Main microcontroller module
2.5 与计算机通信模块
我们平台需要将采集到的数据送给计算机进行处理以供用户进一步使用和研究,同时当用户有主动需求时,我们要向像无线传感器网络节点发送查询命令。MSP430F5438有多达4个通用串行接口,这里我们利用串口实现无线传感器网络节点和计算机之间的通信。MSP430F5438要实现和计算机串口相连接必须要进行EIA-RS-232-C与MSP430F5438电平和逻辑关系的转换,本设计采用MAX3232芯片,完成3~5 V电平与串口电平的双向转换。串口模块如图6所示。
3 设计验证
我们通过采集环境温度并将其发送给计算机来验证我们的传感器模块以及串口通信模块。我们利用JTAG仿真器将DS18B20数字温度传感器和串口通信的测试程序写入flash.DS18B20数字温度传感器将采集到的环境温度送给MSP430F5438微处理器进行处理。微处理器将处理完的数据通过串口送给计算机。最后我们通过C++编写串口通信界面,对传感器所采集到的数据进行观测和分析。测试证明我们的系统能够很好的完成数据采集和串口通信的功能。
图5 无线通信模块及其接口Fig.5 Wireless communication module and its interface
图6 串口通信模块Fig.6 Serial communication module
在无线通信模块的验证过程中,我们以CC2420为无线控制芯片,编写了CC2420的测试程序进行验证。该模块能够较好的满足预期目标,其通信频段在2.4~2.48 GHz之间,具有较高的接收灵敏度,可以做到全向通信,数据速率达250 kbps,码片速率达2 Mchips/s,输出功率可编码控制大约在-24~0 dBm,其通信距离在室外超过150米。
4 结束语
以TI公司的MSP430F5438为主控芯片,设计了一款开放式可扩展的无线传感器网络节点平台,并通过DS18B20数字温度传感器和CC2420模块验证其可行性。我们的平台可以在不同的背景利用不同的传感器模块和无线通信模块完成不同的任务,同时满足低功耗的要求。
前面我们说过能耗问题一直是无线传感器网络的一个限制因素。我们所面临的难题就是利用有限的能源最大化延长无线传感器网络节点的生命周期。太阳能发电和风能发电技术的飞速发展,其价格问题和技术问题对无线传感器网络节点的制约将越来越小,这将为我们延长无线传感器网络节点生命周期提供了一条很有价值的途径。
[1]孙利民,李建中,陈渝,等.无线传感器网络[M].北京:北京大学出版社,2005.
[2]孙鹏,梁宝生.基于无线传感器网络的粮情监测系统的设计与实现[J].电子设计工程,2012,20(15):135-239.
SUN Peng,LIANG Bao-sheng.Design and implication of granary monitoring system based on wireless sensor network[J].Electronic Design Engineering,2012,20(15):135-239.
[3]韦然.无线传感器网络节点的设计与实现 [J].电子科技,2012,25(1):31-35.
WEI-Ran.Design and implementation of the wireless sensor network node[J].Electronic Science And Technology,2012,25(1):31-35.
[4]郭燕红.无线传感器网络在楼宇温度监控系统中的应用研究[D].太原:太原理工大学,2010.
[5]王新忠,顾开新,陆海燕.基于无线传感的丘陵葡萄园环境监测系统研究[J].农机化研究,2011,33(11):191-194.
WANG Xin-zhong,GU Kai-xin,LU Hai-yan.Hilly vineyard environmental monitoring system based on wireless sensor network[J].Journal of Agricultural Mechanization Research,2011,33(11):191-194.
[6]张伟,何斌,赵霞,等.开放的无线传感器网络平台OpenWSN[J].计算机研究与发展,2008,45(1):97-103.
ZHANG Wei,HE Bin,ZHAO Xia,et al.An open wireless sensor network platform—OpenWSN[J].Journal of Computer Research and Development,2008,45(1):97-103.
[7]周应宾.基于ARM与Linux的无线传感器网络节点设计与实现[D].西安:西安交通大学,2009.
[8]余成波,李洪兵,陶红艳.无线传感器网络实用教程[M].北京:清华大学出版社,2012.
[9]MSP430F543XA.MSPF541XA Mixed Signal Microcontroller[EB/OL].http://www.ti.com.
[10]CC2420 2.4 GHz IEEE 802.15.4/ZigBee-ready RF Transceiver[EB/OL].http://www.ti.com.