论文部分内容阅读
无线体域网的传感节点通常由锂电池供电,受限于有限的电池电量以及不易置换和充电的特点,如何延长节点电池工作时间成为核心问题之一。目前的研究多把锂电池当做理想电源,认为最低的能量消耗等价于最长的电池工作时间,而事实上,由于锂电池本身复杂的电化学反应,锂电池并不是理想的线性电源,最低的能量消耗并不能等价于最低的电量消耗,也不等于最长的电池工作时间。本文结合锂电池的电化学放电特性,首先分析了锂电池的电化学模型,得出了锂电池的几个放电原则和恢复上界。在此基础上进一步分析无线体域网传感节点的业务特点,将传感节点业务根据对时间要求的紧迫程度分成三类业务,然后针对每一类业务,结合电池特性设计了电池友好的传输算法。目前许多传感节点已经配备了图像传感器,这也带来了在有限的内存、带宽的情况下如何高效传输图像、视频等多媒体大文件问题,本文结合此类多媒体大文件的业务特点,设计了电池友好的支持断点续传的传输协议与策略。在针对传感节点的传输部分设计了电池友好的传输策略之后,对于传感节点的处理器功耗,本文进一步设计了实用的电源管理方案SPM(Simplified Power Management),SPM对传感节点的外设管理和处理器的工作模式都设计了精简的接口和灵活的调度方式,基于SPM方案,传感节点能有效的降低处理器和外设的能量消耗。此外,为了方便上述的传输算法和电源管理策略在传感节点中实现,本文针对传感节点资源受限的特点,设计了信号槽机制,信号槽机制能将业务的触发和处理有效的分离,这对算法实现的健壮性和灵活性有重要意义。最后,本文设计了传感节点操作系统Stinger OS,Stinger OS在操作系统层支持内存池和信号槽机制,这样能对电池友好的传输算法和电源管理策略提供更好的支持。本文所做的主要工作概述如下: 首先,介绍了锂电池的非线性和恢复效应两大电化学效应,然后对常见的电池模型进行了对比,重点讨论了本文采用的Rakhmatov模型,并以Rakhmatov模型为基础,对锂电池的放电和恢复过程进行了详细的分析,并且推导出其恢复上界。 其次,为了使传感节点传输算法更具针对性,将传感节点的业务分为硬实时、软实时和周期性三种业务类型。针对硬实时类应用,根据电池的非线性和恢复效应,本文提出了电池友好的Lazy Packet算法来降低包的发送电流和平滑包之间的电流差;针对软实时类应用,为了充分挖掘包之间的空闲时间,本文提出了电池友好的局部优化算法,此算法通过从后向前优化分配包之间的空闲时间,达到一个全局相对较优的数据包发送序列;针对更为典型的任务之间独立的周期性应用,本文提出了一个电池电量感知的任务调度算法,此算法通过任务的最大公约数得到调度时间窗口,对时间窗口内的任务,通过任务执行时间和负载电流计算各自的权重,以任务权重对任务之间的空闲时间进行分配。 第三,随着无线体域网的发展,无线体域网传感节点通常配备有图片传感器,传感节点在使用过程中会产生图片、视频等多媒体大文件,需要将这些多媒体大文件发送给汇聚节点,由汇聚节点通过移动网络发送到远端的服务中心。由此本文根据电池恢复效应设计了电池友好的支持断点续传的大文件传输协议和策略BDRDTPP(Battery-DrivenResumable Data Transmission Police and Protocol)。BDRDTPP的核心思想是将大的文件分成小的数据块,然后以电流递减的序列上传每一个分块,当上传失败时,先让电池空闲恢复一定时间,然后从失败处重新上传。 第四,上述的电池友好的传输算法和策略,需要动态改变电池的工作电流,为了灵活改变电池的工作电流,本文针对传感节点资源受限的特点,设计了精简信号槽机制。信号槽机制不仅可以用于灵活的改变电池的工作电流,在本文的电源管理和节点操作系统中都有应用。 第五,传统的电源管理规范如APM(Advanced Power Management)、DPM(DynamicPower Management)主要针对PC和高端智能设备设计,因其复杂性和对BIOS层要求等因素,在传感节点中并不适用。为了解决此问题,针对传感节点计算、存储能力有限的特点,基于信号槽机制,本文设计了实用有效的电源管理方案SPM(Simplified PowerManagement)。 第六,如何在传感节点有限的内存、计算能力、通讯能力等条件约束下,设计一种高效的操作系统来处理传感节点日益复杂多样的业务需求成为研究的热点。本文提出了一种基于内存池、信号槽机制的新型节点操作系统Stinger OS。Stinger OS的内存池采用内存分片、重复利用等技术有效的解决了节点长期运行造成的内存碎片问题;另一方面Stinger OS通过信号槽机制灵活的解决了传感节点业务多样性问题;此外,Stinger OS将中断处理技术和任务的优先级调度技术相结合,有效的提高了节点的响应速度。StingerOS作为一个新兴的节点操作系统,已经在一些传感节点得到应用,并已经开放源码。 最后,对本文工作进行了总结,并指出了需要进一步开展的研究工作。