nRF2401三点通信设计(7)

2020-02-21 13:37

沈阳航空航天大学电子信息工程学院毕业设计(论文)

口变成低电平,这样发光二极管就会变亮,这样就可以显示发送端发送数据成功,这时如果还没与接收到数据,则表明接收模块的配置出了问题。

当nRF2401发送端没有问题了以后,可以肯定无法传输数据出现的问题是接收端了,同时也可以确定是在接收端的软件编程上出现了问题。这时我们就要考虑在编写代码的时候,接收端定义的静态发送地址与发送端的是否相同,接收通道是否相同,发送端和接收端的使能通道是否相同,对于0通道射频通道是否配置为40,当这些配置都正确了以后,重新烧写代码,这时就可以发现两个nRF2401模块可以实现单向通信了。

这时,我发现了一个在无线传输中的漏洞,那就是发送端发送的数据,接收端只能接收一次数据,有时候不能接收数据。换句话来说,那就是发送端连续发送数据的时候,接收端只能接收一次,接收端就不会继续工作了。

这样的问题出现也是代码的问题,出现这个问题的主要原因是因为在接收端接收完数据的时候,没能及时的清除寄存器里边的数据,寄存器的空间一直被占用,就不会接收到新的数据。解决这个问题也很简单,那就是在接收端接收完数据的时候,及时清除掉接收端nRF2401芯片中寄存器的数据,释放寄存器空间,同时在发送端也要进行这样的处理,因为发送端的寄存器数据如果没有清除的话,也就不会有新的数据写到寄存器中,这样在发送端也是不好用的。

当整个毕业设计的单向发送数据完成以后,可以说我已经对nRF2401已经有了一定的认识,这时候在双向传输数据的调试中,也就有了一定的信心。所以在双向调试的时候,也就没有那么多的困难了。

在双向通信中,我将单向通信中所用到的东西全部结合到了一起,通过外部按键进行双向通信。但这个时候,出现了一个新的问题。在发送0x01这一个个数据的时候,在接收端接收到了0x01到0xff之间的所有数据,这时我尝试用P1.0一个管脚接收数据,但是没有定义的其他管脚也会接收到数据。这个问题困扰了我很长时间,我不明白的是为什么我只定义了一个I/O口,为什么其他的I/O口也会工作,理论上当I/O口为低电平的时候,法官二极管才会点亮,但这时候的I/O口电压不是0v,而是1v左右的电压,这说明我在软件编程的结构上出现了问题。

- 31 -

沈阳航空航天大学电子信息工程学院毕业设计(论文)

因为nRF2401在配置为接收模式的时候,无论什么通道发送过来的数据,都回接收到,我在写代码的时候,在发送数据的时候,直接检测是否有数据发送过来,而且也没有对数据进行加标号,这样在发送数据的时候,再配置为接收模式,就会不停的检测每个数据通道发送过来的数据。因此在工作时,就会有电平上的变化,这些数据不是发送端发送过来的数据,而是在检测是否有数据传输过来的时候,发生的信号干扰。

当两个nRF2401可以实现双向通信的时候,我们就要完成在整个毕业设计中最重要的部分,那就是路由转发功能了。

在整个代码中,使用的是泛洪的方法进行路由转发,这样在毕业设计的难度上就有了很大程度上的下降。因为在无线局域网传输数据的时候只有三个节点,路由节点完成接收数据并发送数据,这样就和双向通信差不多了,只要能接收到数据,并判断是否为这个节点应该接收的数据,如果是,那么接收,如果不是,那就将数据发送出去,不用考虑传输路径的问题。

在路由节点,在刚开始的时候,发现接收完数据以后可以将数据发送出去,但是这个节点同时可以接收到自己发送出去的信号,这样,这个节点就不停的接收自己发过来的信号,同时因为自己接收到了信号,也就不停的去发送信号。这是在以前没有发现的问题,因为以前都是通过开关控制发送数据,而不是自己去发送数据。所以在毕业设计的最后阶段,也就是要去解决这个问题。

解决这个问题,其实只要在发送的数据上加一个标号就行了,这样在路由节点只去处理带有发送端标号的数据,而不去处理这个带有路由节点标号的数据,这样,在接收到数据的时候,就不会出现不停接收同一个数据,进而不停工作的情况了。

- 32 -

沈阳航空航天大学电子信息工程学院毕业设计(论文)

第6章 结论

本论文是在指导教师武卫东教授的悉心指导下完成的,经过一个学期的不懈努力,我基本完成了毕业设计的任务要求。在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。

在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。但由于水平和条件的不足,该系统还存在需要改进和提高的地方。其中,路由转发功能应该使用更为准确的建立路径表的方法,这样可以减少功率,数据传输更为准确。本设计效果良好,简单的通信基本完成,可以实现发送、接收和路由转发功能。

通过毕业设计,使我加深了对无线局域网节点机的认识,也带动我复习了专业知识和英语水平。实际工作经验的不足让我客观的正视了自己的能力,发现自己的薄弱环节,及时补充不足之处,构成了完整的知识体系。

本次毕业设计,给了我一个很好的锻炼机会,使我能够将大学四年的理论知识与实际有机的结合起来,不但对知识有了更深了理解,并且对他们的运用能力有了更大的提高。在完成毕业设计期间养成了良好的学习态度,培养了自己敢于面对困难,解决问题的能力,这不仅仅为我积累了宝贵财富,还激励我在今后的学习生活中更加努力。

- 33 -

沈阳航空航天大学电子信息工程学院毕业设计(论文)

第7章 经济与设计效益

本设计完成以后,笔者曾利用多种渠道考证其学术意义、经济价值和社会效益。 由于WSN资源有限且与应用高度相关,研究人员采用多种策略来设计路由协议,其中好的协议具有以下特点:针对能量高度受限的特点,高效利用能量几乎是设计的第一策略;针对开销大、通信耗能、节点之间合作关系、数据有相关性、节点能量有限等特点,采用数据聚合、过滤等技术;针对流量特征、通信耗能等特点,采用通信量负载平衡技术;针对节点少移动的特点,不维护其移动性;针对网络相对封闭、不提供计算等特点,只在sink点考虑与其他网络互联;针对网络节点不常编址的特点,采用基于数据或基于位置的通信机制;针对节点易失效的特点,采用多路径机制。通过对当前的各种路由协议进行分析与总结,可以看出将来WSN路由协议采用的某些研究策略与发展趋势:

(1) 减少通信量以节约能量。由于WSN中数据通信最为耗能,因此应在协议中尽量减少数据通信量。例如,可在数据查询或者数据上报中采用某种过滤机制,抑制节点上传不必要的数据;采用数据聚合机制,在数据传输到sink点前就完成可能的数据计算。

(2) 保持通信量负载平衡。通过更加灵活地使用路由策略让各个节点分担数据传输,平衡节点前剩余能量,提高整个网络的生存时间。例如,可在层次路由中采用动态簇头;在路由选择中采用随机路由而非稳定路由,在路径选择中考虑节点的剩余能量。

(3) 路由协议应具有容错性。由于WSN节点容易发生故障,因此应尽量利用节点易获得的网络信息计算路由,以确保在路由出现故障时能够尽快得到恢复,并可采用多路径传输来提高数据传输的可靠性。

(4) 路由协议应具有安全机制。由于WSN的固有特性,其路由协议极易受到安全威胁,尤其是在军事应用中,目前的路由协议很少考虑安全问题,因此在一些应用中必须考虑设计具有安全机制的路由协议。

(5) WSN路由协议将继续向基于数据、基于位置的方向发展。这是由WSN一般不

- 34 -

沈阳航空航天大学电子信息工程学院毕业设计(论文)

统一编址和以数据、位置为中心的特点决定的。

研究发现,被调查的家企业中有95%已经部署了无线网络。回应者集中在三个组中:行动迟缓的企业,行业平均水平的企业,以及最佳级别的企业。最佳级别的企业从无线局域网部署中收获了最大的商业利益。根据无线局域网性能评分,行动迟缓的企业占最后的30%。处于行业平均水平的企业则占中间的50%,最佳级别的企业占据前20%。

该研究表明,最佳级别的企业同那些行业平均水平的企业相比,从无线局域网中获利更多。最佳级别企业对无线网络进行协调来改善用户的使用效率并与此同时简化实施和降低管理开销。

根据调查,最佳级别企业在劳动力灵活性方面实现了27%的增长幅度,而这种灵活性来源于无线局域网的部署,同时还有劳动力协同工作方面的26%的增长,这也来源于无线局域网的部署,以及在会议质量方面的29%的增长,这归功于使用无线局域网的小组成员。这些优点要比那些无线局域网使用情况一般的公司获得的优点高出三倍。

调查结果还发现,最佳级别企业比所有其它企业在为集中的无线局域网管理制定策略方面多出67%,在拥有无线网络管理专业职员方面多出一倍,比行业平均水平企业在拥有用户访问策略方面高出25%。

- 35 -


nRF2401三点通信设计(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:小学数学二年级下册练习题暑假日日练(每日20道口算、5道笔算、

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: