论文部分内容阅读
随着无线通信技术的迅猛发展,多种多样的无线网络已经走进了人们日常生活的方方面面,扮演着信息社会不可获取的角色。无线通信技术的不断创新使得的网络通信速率越来越高,传输距离越来越远。然而无线通信的应用领域不仅仅限于高速率、远距离的数据传输,在无线监测、无线控制、无线传感器网络、智能家居等应用场合下,并不需要太高的通信速率和太远的通信距离。本文正是为了满足低成本的短距离组网通信需求,设计并实现了基于nRF24L01芯片的无线网络,包括针对nRF24L01芯片的组网协议和相关的单播、多播路由算法。本文的研究对于无线监测、无线控制、无线传感器网络、智能家居等应用场合等多种应用场景下的低成本无线网络具有重要意义。本文深入研究了nRF24L01的各种特性,包括发送模式,接收模式,数据包格式,自动应答和自动重发等,在此基础上设计并实现了一种频道的选择方法,让网络尽可能地避免受到干扰,同时设计了自定义的应答方式,在转发节点较多时与芯片自带的应答重发方式相比更有优势。与网络相关的设计还有网络中节点地址的设置方式,数据帧格式以及长数据传输时的应答、重传与退避机制。根据应用场景的特点,本文适合选用集中式路由算法,路由表(包括单播和多播)由协调节点计算出来并发送到各个普通节点。在计算路由之前,协调节点要获取整个网络的拓扑结构。本文设计并实现了一种网络拓扑的获取过程,整个过程由协调节点主动发起,由非协调节点配合完成。获取完成时协调节点会得到网络的邻接矩阵。单播路由表由建立的过程如下。在获得网络拓扑的基础上,协调节点使用了经典的Ford-Warshall算法得到前驱矩阵,把前驱表发送到各个普通节点,然后节点使用前驱表计算出路由表。在某些节点发生故障或者受到阻挡时,本文设计了对应处理的方法,使网络能自动更新路由。多播路由算法建立在单播路由结果的基础上,借鉴了多种多播路由算法的思想,实现了一种代价较低的路由。该算法充分利用了无线发送一次发送多点接收的特点,并解决了一次多播中多个节点发送产生的碰撞问题。文章的最后设计了一些实验功能验证网络的实现,实验表明网络达到了设计需求。