Contiki系统下无线传感器网络节点远程动态更新
发布时间:2024-10-04 19:48
随着对无线传感器网络(WSN)应用规模的扩大,随着对网络功能要求的不断提高、以及网络系统的升级换代,通过无线方式对WSN节点软件的更新,将成为今后WSN发展中的重要环节。论文根据物联网的发展趋势,选择内置IP协议的Contiki系统作为更新节点的操作系统。论文通过对Contiki操作系统原理和网络协议栈的分析,设计一种结合系统镜像替换和动态模块加载更新方法:编写BOOT固化程序,收到更新指令后,使用新系统镜像替换原有系统并跳转执行,实现系统更新;分析Contiki的动态加载原理,完成模块加载过程中与STM32相关的部分,包括确定重定位类型和对应机器指令以及进程加载,实现模块动态加载更新。设计了6lowpan网络下传输层文件传输协议,引入否定应答机制(NACK)提高更新数据传输的可靠性;采用组播技术实现节点分组传输;通过丢包率决定重传时机,减少因频繁丢包增加的重传次数。此外,为了缩小更新模块体积,针对Contiki动态加载器和STM32,设计一种压缩模块的属性字段的方法,重新组织模块结构,给出节点端压缩模块的重构方法。最后,将系统内核和时钟、文件系统、串口Shell等模块移植到STM32f...
【文章页数】:68 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
第一章 绪论
1.1 选题背景及意义
1.2 国内外研究现状
1.3 主要研究工作
第二章 Contiki操作系统
2.1 Contiki内核剖析
2.1.1 进程
2.1.2 进程控制块
2.1.3 进程调度
2.1.4 事件驱动机制
2.1.5 时钟
2.2 6lowpan网络协议栈
2.2.1 IPv6协议
2.2.2 邻居发现协议
2.2.3 RPL路由
2.2.4 6lowpan适配层
2.2.5 6lowpan的分组与重组
2.2.6 6lowpan的包头压缩
2.3 本章小结
第三章 节点远程动态更新与文件传输
3.1 系统更新方法
3.1.1 系统镜像格式
3.1.2 系统更新实现
3.2 模块动态加载更新方法
3.2.1 动态加载中重定位功能的实现
3.2.2 系统符号的生成
3.2.3 进程加载的实现
3.3 6lowpan网络下文件传输协议的设计
3.3.1 节点分组
3.3.2 数据包格式
3.3.3 文件传输过程
3.4 本章小结
第四章 更新模块的压缩与重构
4.1 Contiki功能模块格式的研究
4.2 模块的压缩方法
4.2.1 模块压缩原理
4.2.2 ELF文件头压缩
4.2.3 节区头压缩
4.2.4 符号表压缩
4.2.5 重定位表压缩
4.3 压缩模块的重构
4.4 本章小结
第五章 系统移植与测试
5.1 开发平台
5.1.1 硬件平台
5.1.2 软件开发平台
5.2 Contiki系统的移植
5.2.1 IAR环境设置
5.2.2 系统时钟的移植
5.2.3 rtimer时钟的移植
5.2.4 Coffee文件系统的移植
5.2.5 cc2520无线收发模块的移植
5.2.6 串口模块与Shell命令的移植
5.2.7 网络协议栈移植
5.3 更新系统测试
5.3.1 更新测试
5.3.2 模块压缩测试
5.3.3 文件传输协议测试
5.4 本章小结
第六章 总结与展望
6.1 总结
6.2 展望
参考文献
致谢
攻读硕士期间发表的学术论文和科研情况
本文编号:4007074
【文章页数】:68 页
【学位级别】:硕士
【文章目录】:
摘要
Abstract
第一章 绪论
1.1 选题背景及意义
1.2 国内外研究现状
1.3 主要研究工作
第二章 Contiki操作系统
2.1 Contiki内核剖析
2.1.1 进程
2.1.2 进程控制块
2.1.3 进程调度
2.1.4 事件驱动机制
2.1.5 时钟
2.2 6lowpan网络协议栈
2.2.1 IPv6协议
2.2.2 邻居发现协议
2.2.3 RPL路由
2.2.4 6lowpan适配层
2.2.5 6lowpan的分组与重组
2.2.6 6lowpan的包头压缩
2.3 本章小结
第三章 节点远程动态更新与文件传输
3.1 系统更新方法
3.1.1 系统镜像格式
3.1.2 系统更新实现
3.2 模块动态加载更新方法
3.2.1 动态加载中重定位功能的实现
3.2.2 系统符号的生成
3.2.3 进程加载的实现
3.3 6lowpan网络下文件传输协议的设计
3.3.1 节点分组
3.3.2 数据包格式
3.3.3 文件传输过程
3.4 本章小结
第四章 更新模块的压缩与重构
4.1 Contiki功能模块格式的研究
4.2 模块的压缩方法
4.2.1 模块压缩原理
4.2.2 ELF文件头压缩
4.2.3 节区头压缩
4.2.4 符号表压缩
4.2.5 重定位表压缩
4.3 压缩模块的重构
4.4 本章小结
第五章 系统移植与测试
5.1 开发平台
5.1.1 硬件平台
5.1.2 软件开发平台
5.2 Contiki系统的移植
5.2.1 IAR环境设置
5.2.2 系统时钟的移植
5.2.3 rtimer时钟的移植
5.2.4 Coffee文件系统的移植
5.2.5 cc2520无线收发模块的移植
5.2.6 串口模块与Shell命令的移植
5.2.7 网络协议栈移植
5.3 更新系统测试
5.3.1 更新测试
5.3.2 模块压缩测试
5.3.3 文件传输协议测试
5.4 本章小结
第六章 总结与展望
6.1 总结
6.2 展望
参考文献
致谢
攻读硕士期间发表的学术论文和科研情况
本文编号:4007074
本文链接:https://www.wllwen.com/kejilunwen/zidonghuakongzhilunwen/4007074.html