一种无线自组网多跳数据收发系统技术方案

技术编号:7997853 阅读:339 留言:0更新日期:2012-11-22 06:21
本发明专利技术涉及一种无线数据收发系统,属于无线通讯领域。特别涉及到一种无线自组网多跳数据收发系统。该系统包括无线网络节点以及运行在节点上的路由协议。无线网络节点通过合理的体系结构设计具有使用简单、携带方便的优点;路由协议与传统的按需路由不同,该路由协议中每个节点都具有路由功能,是一种先验式路由,并且动态地维护所有信息,传输距离远,通过增加中继节点可实现通讯距离的无限延伸,在办公、医疗以及智能家居方面具有较强的实用价值。

【技术实现步骤摘要】

【技术保护点】
一种无线自组网多跳数据收发系统,其特征在于,该系统包括无线网络节点和运行在节点上的多跳路由协议两大部分:网络节点包括通讯接口、处理器和射频模块;所述的通讯接口是与PC间采用USB?HID方式进行通讯的接口,通过USB接口获取电源,为节点供电;处理器运行多跳路由协议,控制射频模块,同时通过通讯接口,接收PC机上的数据或向PC发送数据;射频模块负责接收或者发送数据;所述的多跳路由协议的核心内容如下:DATALENGTHMAX?表示数据包中数据的最大长度byte;ORIGINATOR_INTERVAL表示广播报文间隔ms;PURGE_TIMEOUT_BATNRF表示清除无效路由间隔ms;RECV_INTERVAL表示接收包间隔ms;BROADCAST?表示标识报文类型为广播报文;DATA表示标识报文类型为数据报文;WINDOWSIZE表示滑动窗口大小;源节点表示针对当前节点收到的广播报文的起始节点;目的节点表示报文发送的目标节点;节点上电后首先进行系统初始化,系统通过STM32F103C8T6的SysTick时钟计时,来为整个系统提供统一的时间,系统不断查询当前的统一时间,与最近一次工作状态的时间对比,求出当前的时间间隔,若此间隔大于或等于设定时间间隔,则系统触发进入该工作状态;(1)每次间隔ORIGINATOR_INTERVAL大小的时间,定时器触发系统进入“广播”状态,将广播报文广播出去;下表1是协议报文的格式:名字大小(byte)功能描述msgVerType1指示出该报文的类型TTL2Time?to?liveseqNbr1报文的序列号addrOrg1报文的源地址addrTrans1发送该报文的上一跳地址Dest1报文的目的地址deteLen1发送数据的长度DeteDATALENGTHMAX报文中包含的数据表1(2)每隔间隔RECV_INTERVAL,节点检查空气中是否存在报文,当节点接收到报文时,节点触发进入“处理包”状态;首先根据报文格式中的msgVerType项确定报文的类型,然后根据类型的不同分别进行广播报文的处理或者数据报文的处理;当报文为广播报文时,节点进入“广播包”状态;此时主要有两个功能函数:updateRouteInfo();用以更新路由信息;rebroadBatnRFPacket();用以将接收到的广播包广播出去;当报文为数据报文时,节点进入“数据包”状态;此时节点首先根据报文格式中的Dest字段,判断该包是否是发给本节点的:若是,则进行必要的格式转换,并将数据发送给PC机;若不是,则更改报文中的TTL以及addrTrans字段,将报文转发给目的节点;在这个过程中主要包含以下的功能函数:getUserData();将报文中的数据发送给PC机;changeAddrTransAndBroad();更改相应字段将报文广播出去;本协议中路由信息是由一个二维链表维护的:首先对于当前节点的每个邻居节点维护一个链表,每个链表节点的定义如下:第二维链表的节点定义如下:序列号机制:本协议是面向序列号的,源节点产生的每个广播报文都有一个序列号(curSeqNbr),这些序列号是连续的并且增量为1。序列号的变动幅度并不是无限的,它被限制在0…2^16?1的范围内。当序列号到达最大值,这么该序列号会再次从0开始。时间戳机制:对于每个源节点,每当收到一个新的广播报文,相应的 timeStamp必须被更新;清除无效路由时,查看链表中已有的条目,若当前最新的timeStamp减去该条目的timeStamp所得值大于阈值,则清除当前路由;滑动窗口机制:对于每个源节点,本协议利用滑动窗口来保存最近收到的广播包的序列号,该滑动窗口机制将收到广播包的序列号分为窗内序列号和窗外序列号;协议将保存收到的具有窗内序列号的报文的计数信息,利用该信息进行路由表的更新;若收到的广播报文序列号为窗外序列号,则该报文将被认为是过时的信息,而不被存储;若收到的广播报文序列号大于当前最新的序列号,则将最新序列号赋值为收到的序列号,滑动窗口将向前移动;如上所述,每次在选择目的节点的最优下一跳时,对邻居节点链表中保存的与该目的节点相应的窗内序列号的计数进行降序排序,排序结果第一的邻居节点被认为通过该邻居节点最有希望到达目的节点而被选为最优下一跳;(3)每次间隔PURGE_TIMEOUT_BATNRF大小的时间,节点进入“清除无效路由”状态,此时节点会查看当前维护的路由表中每个路由表项的时间戳,若当前时间与时间戳之间的时间间隔大于PURGE_TIMEOUT_BATNRF...

【技术特征摘要】

【专利技术属性】
技术研发人员:朱明李凤岐马艳华何孝松郑学书邱登峰
申请(专利权)人:大连理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1