论文部分内容阅读
WSCN节点是无线传感器控制网络中用于实现终端数据采集、通信以及控制目标对象的关键性嵌入式部件。随着物联网的快速发展,WSCN节点程序的在线维护与功能升级已经成为无线传感器网络应用研究的热点之一。传统的人工现场更新方案已无法满足节点数量众多、分布广、环境条件复杂情况的需求,因此研究设计远程无线代码更新具有极高的应用价值和现实意义。本文选取恩智浦半导体公司KW01无线射频芯片和K64芯片作为硬件对象,采用MQX_Lite RTOS将复杂程序功能进行多任务划分,设计了一套基于物联网三层体系结构的远程代码更新系统,针对远程代码更新中数据传输粒度划分、丢帧重传、断点续传和多点分发等关键问题进行了重点研究,主要工作内容如下:(1)科学分析了数据传输粒度对传输速率、单帧数据载荷、误码率以及数据完整性的影响,提出了一种数据传输粒度划分的选择方法。(2)通过对传输过程中数据帧丢失场景的研究,设计了基于数据帧状态的数据帧位表,提出了一种基于多次握手丢帧重传的可靠传输代码更新机制,确保了代码更新的完成性;针对代码更新过程中的由于断网、断电等传输中断引起的数据丢失问题,设计了一种基于文件版本号和传输状态判别的断点续传机制,提升了代码更新速度。(3)针对多节点代码批量更新的应用场景,设计了记录多节点数据帧更新状态的节点更新状态帧位表,提出了广播-P2P和多轮循环广播两种应用于不同场景的多点代码批量分发机制。(4)基于以上研究,本文设计了WSCN节点远程代码更新系统。完成了芯片存储映像解析、FLASH区划分、链接文件设计、中断向量表重定位以及更新引导程序等设计;为网关与节点间通信设计了WCUCP通信协议;为服务器与网关间通信设计了RCUCP通信协议。(5)对该系统进行了评估和测试,验证了系统可行性和可靠性,并将其应用于LED显示屏控制系统中,实现LED显示屏控制板程序代码的远程更新,与人工现场更新相比,显著地提高了更新的效率,简化了更新的工作量。本文的主要贡献在于对远程更新中的关键问题进行了深入研究,并给出了解决办法,同时详细设计了一套通用、可靠的基于WSCN节点的远程更新原型系统,为以后同类型系统的开发提供了参考。