预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于nRF905的无线传感器网络节点的设计与实现 以STC12系列单片机和nRF905射频收发器为核心,设计了一种无线传感器网络节点和基于这种节点的自组织通信协议。给出了节点的整体结构,详细阐述了软件设计流程。试验表明该节点实现了自组织和多跳数传,通信稳定可靠,网络吞吐率达到无线传感器网络的要求。 无线传感器网络是计算机技术、传感器技术和网络通信技术相结合的产物。它由大量随机分布的、具有实时感知、无线通信和自组织能力的传感器节点组成。随着无线技术的高速发展,无线传感器网络越来越多地走进人们的视野中。与有线技术相比,无线技术具有成本低、体积小、省去复杂的布线等优点。但是由于现有的无线传感器节点大都采用电池供电,放置地点随机变动,随时可能出现节点中断的情况,通信能力十分有限,需要经常性的人工维护。因此,无线传感器网络节点要具有自组织、中断自我修复的功能,需要设计合适的通信协议和路由算法,以提高系统通信的可靠性。为此,本文采用无线射频芯片nRF905和STC12系列单片机设计了一种无线传感器节点,并且在典型自组织网络的通信协议-动态源路由协议DSR(DynamicSourceRouting)的基础上,针对路由维护算法做出改进,设计出一种易于实现且实用性高的通信协议,实现了自组织和多跳传输数据的无线通信系统。 1节点硬件设计 节点分为协调器节点和普通节点,普通节点带有传感器,负责采集需要的数据并组成网络,协调器节点负责整个网络的控制和数据的汇总、分析、处理等。图1为协调器和普通节点的结构图。 1.1MCU STC12LE5410AD单片机是单时钟/机器周期(1T)的兼容8051内核单片机,是高速、低功耗的新一代8051单片机,指令代码完全兼容传统8051,而速度快8~12倍,内部集成硬件高速SPI(SerialPeripheralInterface)接口、2KBEEPROM、A/D转换模块和MAX810专用复位电路。工作电压2.4~3.8V,因此可用电池工作,并可长时间工作。器件在少于6μs的时间内可以从低功耗模式迅速唤醒。STC12LE5410AD的超小封装、高度集成、精简外部电路可设计出更小的节点,超低的价格可以大规模铺设传感器节点。STC12LE5410AD单片机的这些特征,非常适合应用在无线传感器网络中。 1.2射频收发器件nRF905 nRF905由挪威Nordic公司生产,是一个为433/868/915MHz-ISM(工业、科学、医疗)频段设计的单片无线收发芯片,32脚QFN封装,工作电压为1.9~3.6V,最大发射功率为10dBm。该收发芯片由频率合成器、接收解调器、功率放大器、晶体振荡器和调制器组成,片内自动完成曼彻斯特编码/解码。nRF905有两种活动(TX/RX)模式和两种节电模式。活动模式之间转换时间小于550μs,活动模式与节电模式之间的转换时间小于650μs。 nRF905通过SPI与微控制器通信,自动处理字头和循环冗余码校验(CRC)。当进行数据发送时,只需将配置寄存器信息、所要发送的数据和接收地址送给nRF905,它就会自动完成数据打包(加字头和CRC校验码)和发送。接收数据时,nRF905自动检测载波并进行地址匹配,接收到正确数据后自动移去字头、地址和CRC校验码,再通过SPI将数据传送到微控制器。 1.3硬件连接设置 STC单片机通过内部集成的硬件高速串行外设接口SPI与nRF905连接,最快可达3Mb/s,比软件模拟SPI方式快30倍左右,大大减少了程序执行时间,提高了网络的吞吐率。同时在设计协调器节点与PC上位机软件通信程序时,利用STC单片机1T时钟的优势,设置串口波特率使用的定时器12倍速方式,使串口波特率提高至115200b/s,提高了协调器节点的反应速度,减少了等待时间,提高了系统的吞吐率。 2节点软件设计 本系统的软件设计分为协调器节点Connector软件和普通节点Node软件的设计,其中协调器节点作为整个网络系统的主节点,起着控制全网络的作用,通过PC机的上位机软件,可以对协调器进行接收和发送命令及数据,从而实现对整个系统网络的控制。而每个普通节点也预留通信接口,可以在需要的时候与其他设备相连接。 由于本系统实现自组织网络的需要,在物理层中为每个节点(包括协调器和普通节点)定义了相同的物理地址,实现全网的广播功能。在网络层为每个节点分配唯一的网络地址,通过软件判断接收数据的目的节点是否是本机。 图2为节点自组织流程图。当网络中增加一个新节点,新节点上电初始化后,首先会向协调器发送路由请求RREQ请求加入网络,并打开定时器;协调器收到RREQ后,记录新节点信息,并通过反路由发送应答信号ACK至源节点;如果新节点在设定的时间内收到ACK信号,表示加入网络成功,并且记录本节点至协调器