




已阅读5页,还剩62页未读, 继续免费阅读
(计算机软件与理论专业论文)基于物理结点的无线传感器网络功耗模拟.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基丁物理结点的无线传感器网络功耗模拟摘要 基于物理结点的无线传感器网络功耗模拟 专业:计算机软件与理论 姓名:郑尧展 指导老师:李文军教授 摘要 随着微机电系统、无线通信和低功耗嵌入式技术的飞速发展,无线传感器网 络在近几年得到了较快的发展。测试是无线传感器网络中一个重要的研究课题, 其中对能量消耗的测试在无线传感器网络设计中尤为重要。现场测试可以得到较 为准确的功耗测试结果,但其成本较高,且不容易控制测试的过程。为此,近几 年提出了通过无线传感器网络模拟器估算结点功耗的研究。然而,这些研究一般 采取纯软件模拟的方式记录硬件的各种行为结合实际测量各种行为的功耗参数 来估算网络中每个节点的功耗,这种方法得不到准确的功耗参数而且不能实现不 同平台无线传感器网络平台中的功耗测试。 本文针对上述现有无线传感器网络两种功耗测试方法的不足,提出了混合模 拟的功耗估算方法,这种方法在模拟环境中加入个真实的无线传感器节点,根 据测量真实结点的测量功耗和模拟环境获取的信息推导出模拟环境功耗模型的 参数,从而可以对虚拟结点进行功耗模拟。这种方法适用于多种模拟平台,而且 可根据需要使用不同的功耗模型或推导算法。 基于混合模拟的估算方法,本文扩展t o s s i m 实现了一个功耗模拟环境 h p 1 o s s i m ( h y b r i dp o w e rt o s s i m ) 。h p t o s s i m 在t o s s i m 中加入功耗模型 用来计算虚拟结点运行的能量消耗。同时h p t o s s i m 在原有t o s s i m 之外加入 外设连接服务从而可以实现其与真实结点的交互,由此h p t o s s i m 可以在运行 过程中同时记录虚拟结点和真实结点的功耗信息。另外,在h p t o s s i m 中设计 了基于多元线性回归的推导算法,用来根据真实结点实际测量的功耗值和模拟环 境的记录信息推导出功耗模型的参数从而可以对其他结点进行功耗模拟。本文最 后对h p t o s s i m 的功耗模拟结果进行了实验与评估,来说明这种混合模拟估算 基于物理结点的无线传感器网络功耗模拟 摘要 方法的可行性和精确度。 关键词:无线传感器网络,模拟测试,t o s s i m ,物理节点 基于物理结点的无线传感器网络功耗模拟a b s t r a ( 了r w i r e l e s ss e n s o rn e t w o r kp o w e r c o n s u m p t i o ns i m u l a t i o n ba s e do np h y s i c a ln o d e m a j o r :c o n l p u t e rs o f t w a r ea n dt h e o 巧 n a m e :z h e n g y r a o z h a n s u p e r v i s o r :p r o f e s s o rl iw r e n j u n a bs t r a c t w i t ht h er a p i dd e v e l o p m e mo fm i c r o - e 1 e c t r o m e c h a n i s ms y s t e m ( m e m s ) , w i l e l e s sc o m m u n i c a t i o na 1 1 dl o wp o 、v e re m b e d d e dt e c h l l o l o g y ,t h ed e v e l o p m e n to f w h l e s ss e n s o rn e t w o r k( w s n )i sv e r ) rf a s ti i lr e c e n ty e a r s t e s t i n gi sa i l i m p o n 觚tr e s e a r c hs u b j e c tmw s n ,o fw m c hp o w e rc o i l s u m p t i o nt e s t 啦i sv i t a l w m l ed e s 逸n i i l gw s n 印p l i c a t i o n f i e l dt e s t i i 培c a na c h i e v ea c c u r a t ec o i l s u m p t b n r e s u l t ,b u tt h ec o s ti s1 1 i g ha n di sn o te a s yt oc o n t r o l tt h e r e 向r ei i lr e c e my e a r s r e s e a r c h e so np o 、v e rc o n s u m p t i o ne s t i i n a t i o nt h r o u g hw s ns i m u l a t o r s 、 ,e r e p r o p o s e d 。h o w e v e r ,t h ea p p r o a c hs i i l l u l a t e se v e 巧n o d e sp o w e rc o n s u m p t i o nb y o n l yu s m gp u r es i m u l a t i r 培e n v i r o n m e n t t 0r e c o r dh a r d w a r e sb e h a v i o r s t h e a p p r o a c h 主sd i 舔c u l tt 0g e ta c c u r a t ep o w e rp a r a n l e t e r sa n dc a i m o tb eu s e di i l d i f r e r e n tw s n p l a t 南r i n s i nt h ep a p e r ah y b r i dp o w e rc o n s u n 巾t i o ns i m u l a t i o na p p r o a c hi sp r o p o s e d , c o m p 捌n gt ot h es h o r t a g e 访t h et w oa p p r o a c h e sm e m i o n e da b o v e t h e 印p r o a c h i 1 1 t r o d u c e sar e a ls e n s o rn o d et 0t h es i m u l a t i i 玛n e t w o r l ( t h e nb u i l dap o w e rm o d e l , t h ep a r a m e t e r so fw h i c hc a nb ed e d u c e da c c o r d i i 培t 0t h er e a ln o d e sm e a s u r e d p o w e rc o l l s u m p t i o na n dt h ei i l 硒r r n a t i o nr e c o r d e di nt h es i m u l a t i n ge n v 衲n m e n t t h ea p p r o a c hc a i lb ee a s i l ya d 印t e dt ov a r i o u ss i i i l u l a t i n ge n v i r o n r n e n t s a n d d i 位r e n t p o w e rm o d e l s a n d a l g o r i t h i l l s c a nb ep o r t e dt 0 s a t i s 矽d i 航r e n t r e q u n m e n t s 觚da c c u r a c i e s b a s e do nt h eh y b r i ds i i i l u l a t i n ga p p r o a c 也、ep r e s e mh p 一1 s s i m ,a i le ) ( t e n s i o n t ot o s s i m 船一t o s s i mb r 啦smap o w e rm o d e lt ot o s s i mt oc a l c u l a t et h e m 基于物理结点的无线传感器网络功耗模拟 a b s t r a c t v i n u a ln o d e s p o 、e rc o n s u m p t i o n a n dad e v i c e c o 衄e c t 访g s e r v i c ei sa l s ob r o u g h t t oh p - t o s s i mt om a l ( es u r et o s s i mc a nb em t e r a c t 砸gw i t ht h ep h y s i c a ln o d e t h u sh p t o s s i mc a i lr e c o r db o t hv i n u a ln o d e sa n dt h ep h y s i c a ln o d e sp o w e r c o 璐u m p t i o n 洫南r m a t i o n b e s i d e s ,a na l g o r i t h mb a s e dm u l t i p l el i i l e a rr e g r e s s i o n i sd e s i g n e dt od e d u c et h ep a r a m e t e r so ft h ep o w e rm o d e ls o 嬲t os i i l l u l a t ev i n u a l n o d e s p o 、e rc o i l s u m p t i o n a tt h ee n do f t h ep a p e r ,w ep r o p o s e dt h ee v a l u a t i o no f h p t o s s i mt op r o v et h ea p p r o a c h t sf e a s i b i l i t ya n da c c u r a c y k e y w o r d s :w i r e l e s ss e n s o rn e t w o r ks i i n u l a t o r ,s i i n u l a t i i l gt e s t i l l g ,t o s s i m , p h y s i c a ln o d e 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究 工作所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人 或集体已经发表或撰写过的作品成果。对本文的研究作出重要贡献的个人和集 体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 学位论文作者签 醐:砷叩 学位论文使用授权声明 本人完全了解中山大学有关保留、使用学位论文的规定,即:学校有权保留 学位论文并向国家主管部门或其指定机构送交论文的电子版和纸质版,有权将学 位论文用于非赢利目的的少量复制并允许论文进入学校图书馆、院系资料室被查 阅,有权将学位论文的内容编入有关数据库进行检索,可以采用复印、缩印或其 他方法保存学位论文。 醐并警菩铲 醐。叩了月叫 翩虢鳓 日期:。c 1 年厂月w 日 基于物理结点的无线传感器网络功耗模拟第l 章绪论 1 1 引言 第1 章绪论 随着微机电系统、无线通信和低功耗嵌入式技术的飞速发展,无线传感器 网络( 啪e l e s ss e n s o rn e t w o r k ,w s n ) 【1 ,2 ,3 ,4 ,5 1 的应用越来越广泛。无线传感 器网络就是由大量独立的传感器结点组成,这些结点对周围的环境进行传感, 处理传感数据,并且相互之间进行通信,传输信息,共同协作构成的一个网络。 这些传感器结点体积小,成本低,能量有限,并且能通过无线通信形成自组织 网络,进行数据传感与信息处理等,这些特点使w s n 具有广泛的应用。w s n 在一定程度上改变了人与自然界交互的方式,其将信息世界与物理世界融合在 一起,使人们可以通过w s n 感知物理世界,从而增强了人类认识世界的能力。 无线传感器网络是一种全新的信息获取平台,能够实时监测和采集网络分 布区域内的各种检测对象的信息,并将这些信息发送到网关节点,以实现复杂 的指定范围内目标检测与跟踪,具有快速展开、抗毁性强等特点,有着广阔的 应用前景。 无线传感器网络所具有的众多类型的传感器,可探测包括地震、电磁、温 度、湿度、噪声、光强度、压力、土壤成分、移动物体的大小、速度和方向等 周边环境中多种多样的现象。基于m e m s ( m i c r o e 1 e c t r o m e c l l a m s ms y s t e m ) 的微传感技术和无线联网技术为无线传感器网络赋予了广阔的应用前景。这些 潜在的应用领域可以归纳为:军事、航空、反恐、防爆、救灾、环境、医疗、保 健、家居、工业、商业等领域。 由于无线传感器网络自身的特点,比如:能源有限,处理能力低,存储容 量小,通信速率低的特点,传感器网络规模巨大,结点密度高,网络拓扑不稳 定,部署环境恶劣等,在这样的网络要完成一个任务,涉及到软件、硬件,通 信技术等多方面问题,这和传统的网络有很大不同,因此也使得w s n 上的应 用开发与测试也与传统的软件开发与测试不同。 在近几年,关于无线传感器网络的研究成为通信电子与计算机领域中的热 点。这些研究主要集中于硬件设计,m a c 与路由协议,软件应用以及测试等 基于物理结点的无线传感器网络功耗模拟 第l 章绪论 领域。而测试是其中比较重要的一个研究方向,在现有的研究中,提出了许多 种w s n 的测试方法、工具和平台。在这些测试工具中,使用模拟器进行测试 具有成本低、模拟环境容易控制、效率高以及重编程与重部署方便等特点,在 开发w s n 应用中使用较多。 1 2 无线传感器网络模拟 相对于传统网络,无线传感器网络面临很多新的问题。例如能量有限、处 理能力低、存储容量小、网络节点多、密度大等都是在无线传感器网络上开发 应用和设计协议必须考虑的问题。同时,也是由于这些特点,在无线传感器网 络上测试相对于传统网络的测试会面临很大困难。因此,当今无线传感器网络 上较为流行的测试方法是使用模拟器在软件环境里对网络进行测试。 模拟器的目的是精确的模拟和预测一个整个环境的行为。通过模拟,开发 者可以在花费较少的时间和成本的情况下获得系统实现的各种重要信息。这点 无线传感器网络中特别重要,因为购买大量的结点需要非常高的成本。而即使 是在已有硬件的情况下,在真实环境中测试无线传感器网络也是一个非常耗时 和难以控制的任务。相对于现场测试( f i e l dt e s t i i l g ) 【6 j ,基于模拟器的测试具 有成本低、模拟环境容易控制、效率高以及重编程与重部署方便等特点,因此 w s n 应用测试中使用较多。下面对部分模拟器做简单介绍,这些模拟器的选择 是基于其流行度、评估结果等特点。 n s 2 【7 】是无线传感器网络非常流行的模拟工具,它是从原来的n s ( n e t w o r ks i m u l a t o r ) 改进而来,主要侧重在网络模拟上。它是一个面向对象 的离散事件模拟器。它的模块化设计使得其扩展性非常好。另外,面向对象的 设计使得n s 2 非常容易创建或者使用新的协议。所以目前在其上面设计的协 议相对其他模拟器要多很多,因此可以用来测试各种网络协议。但是,n s 一2 的 可伸缩性较差,也因为它本身面向对象的设计。它只能模拟较少数量结点的网 络。n s 2 的另外一个缺点是可定制性也很差。 g l o m o s i i i l 【8 】是为移动无线网络而设计的。g l o m o s i m 可以运行在并行的 环境上,这点使得它和其他的无线传感器网络模拟器有很大不同。但是因为通 信一般要在不同的机器之间,这也使得整个网络的模拟变得复杂,同时也增加 2 基于物理结点的无线传感器网络功耗模拟第1 章绪论 了交互的计算量。另外,无线移动网络应用经常要广播通信,这会导致主机之 间的流量变得很大。和n s 一2 一样,g l o m o s i m 也有良好的可扩展性,在 g l o m o s i m 的库里面,不同的协议可以设计成不同的模块。另外,g l o m o s i m 也 是面向对象设计的,所以伸缩性也较差。 s e n s o r s i m 【9 l 从三个方面扩展了n s 2 。首先,它增加了一个能源模型,在 s e l l s o r s i l l l 中每一个组件都需要电源提供能量才能运作。开发者可以研究这些 不同组件的能耗从而得到它们的功耗模型。另外,s e n s o r s i m 包括一个传感信 道。用以提供仿真的传感数据。最后,s e i l s o r s i i l l 还扩展n s 2 加入与外设交互 的机制,主要目的是和外部的真实传感网络交互,这可以让真实的传感事件触 发模拟环境的行为,为模拟模型提供传感数据而已。虽然相对n s 一2 有所改进, 但是s e n s o r s i m 的伸缩性还是较差。 j - s i n l 【l o 】是一个n s 2 后另外一个通用的模拟器,是基于j a v a 平台的。和 n s 2 不同的,j s i m 使用了组件的概念,这样就不用把一个结点表示成一个对 象。j s i i i l 使用三种组件:目标结点、传感结点和基站结点。每一种组件可以 分解成多个部分分别模拟,这样的分解使得使用不同的协议变得容易。j s i m 相对于n s 2 有几点改进,最重要的一点是组件化设计使其比n s 2 和其他的伸 缩性更好。另外,j s i i i l 和s e l l s o r s i m 一样,也可以和外界真实网络交互。 s e n s e 【1 1 l 模拟器是从上面的三种模型变化而来,是一个通用目的的基于 离散事件模型的模拟器。它实现了类似n s 2 的功能,但是却使用了j s i m 的组 件化架构。跟g l o m o s i m 一样,s e n s e 也支持并行化处理。另外,s e n s e 的 数据包共享模型是n s 2 上的一个改进,这个模型因为减少了内存的使用而改 进了可伸缩性。总的来说,这几点设计使得s e n s e 相对前几种模拟器的可扩 展性、可重用性和可伸缩性都所改进。 e m s i l n ,e m c e e 【1 2 】是e m s t a r 【1 2 】的模拟仿真工具。e m s t a r 是基于l i r m x 架 构,其提供m i c a 2 和m i c r o s e r v e r 两种结点的模拟。e m s i m 为e m s t a r 纯软件模 拟提供无线电信道和传感信道;e m c e e 则为每个虚拟结点提供一个物理结点并 利用其的无线信道来代替模拟无线信道。e n l s i i i 征m c e e 直接支持e n 塔t a r 真实 代码的模拟,并为每个模拟的网络结点建立一个线程,从而其可伸缩性比较差。 e 瑚【t o s 【1 3 1 是e m s t a r 的一个扩展,它作为t i l l y o s 和e m s t a r 的一个桥接, 基于物理结点的无线传感器网络功耗模拟第l 章绪论 可以让整个t i n y o s 程序作为一个单独的e m s t a r 模块运行。e m t o s 所做的主 要是在e l s 硫e m c e e 中为t m y o s 程序提供基于e n l s t a r 的封装类库。e m t o s 支持m o t e 和m i c r o s e n ,e r 两种异构网络的模拟,同时,e m - t o s 在m i c r o s e r v e r 平台上的应用可以和其他e 1 1 1 s t a r 设备和程序共享信道。但是,e m t o s 也有可 伸缩性差的特点。 t o s s i m 【1 4 ,1 5 】是设计来模拟t i n y o s 在m i c a 平台上运行的模拟器。相对 于其他的模拟器,t o s s i m 的可伸缩性比较好,它可以模拟几千个结点的网络, 这比较符合正常的w s n 应用场景。t o s s i m 的构架包含几个不同的组件:对 编译一个网络拓扑结构的支持,一个离散事件模型,模拟的硬件以及一个通信 模型可以让模拟器和外部程序交互。在t o s s i m 的模拟运行的应用程序是不需 要改变的,因为t o s s i m 只是把真实的硬件驱动替代成模拟的版本。但是, t o s s i m 的概率化比特错误模型导致了其模拟的不精确性而且降低了分析低层 协议的有效性。另外,虽然t o s s i m 模拟了传感器的传感硬件行为,但是传感 器的触发机制却没有模拟,这在以传感数据为中心的无线传感器网络应用模拟 中是一个缺陷。 a t e m u 【1 6 】改进了t o s s i m 不精确的缺点,其也是对m i c a 平台的模拟。 a t e m u 使用x m l 配置文件来配置整个网络,同时a t e m u 还提供一个叫 x a t d b 的可视化工具来调试和观察代码的执行。a r e m u 是指令级别的模拟, 对a v rc p u 的每一个指令周期进行了模拟,不过这也牺牲了性能和可伸缩性。 相对于t o s s i m ,a r e m u 只能模拟最多1 2 0 个结点的网络,另外,它的面向 对象设计也一定程度上影响了其性能。 m t 0 r a 【1 7 】试图在1 o s s i m 和a t e m u 之间找一个折中。a 、哟r a 用j a v a 实 现,像很多其他模拟器一样,a 、哟r a 对每个结点建立一个线程。跟a r e m u 一 样,a w o r a 也是指令级的模拟器,但是,它在每条执行指令后,不同步所有的 结点,通过这样提高了性能和可伸缩性。a w o m 的同步策略有两种,第一是定 义一个同步间隔,每隔一段时间才同步一次;第二是a - o r a 等到邻居结点达到 某一个模拟时间才同步,这种策略允许每一个结点提前运行,一直到需要的时 候才同步。这两种同步策略使得它可以达到接近t o s s i m 的性能。 4 基于物理结点的无线传感器网络功耗模拟 第1 章绪论 1 3 当前存在问题 测试是无线传感器网络中一个重要的研究课题。在目前的研究中,使用模 拟器进行w s n 测试是目前较为普遍的方法,由于w s n 从开发到发布需要多次 的测试与修改,部署到真实环境是一项成本高、耗时长的工作,因此使用模拟 器进行测试可以加快开发进度并减少成本。近几年来,人们提出了较多无线传 感器网络模拟器的研究。这些模拟器可以在软件环境下部署和测试整个网络。 例如n s 2 ,1 o s s i m ,a t e m u ,p i 的w l e r 【1 引。t o s s f 【1 9 】( 基于s w a n 【2 0 1 ) ,s e n s 等模拟环境,根据模拟的目标给开发这提供了不同程度的可伸缩性,真实性和 模拟粒度。某些情况下需要模拟器工作在一个抽象的层次,而另外一些情况下 则需要模拟器精确的模拟硬件的低层行为。 在无线传感器网络测试中,能量消耗是一个非常重要的问题。由于无线传 感器网络一般是部署在能量有限的结点当中,这些结点通常由电池驱动,而且 不能更换电池,因此无论对硬件或者软件开发者来说了解无线传感器网络各个 结点的功耗是非常重要的。传感器网络的设计这需要知道准确的功耗消息才可 以调整其设计以达到更好的结果,这是因为不同算法或者路由的选择会很大程 度上影响到结点的能量消耗。 另外,除了网络结点的功耗,了解电源供应的模式对无线传感器网络设计 者来说也是和重要的,因为电源供应的模式反映了随着时间的流逝电源供应电 量的能力。这些挑战在“g r e a td u c ki s l a n d 【2 1 】”这个应用中有很明显的体现,该 应用是部署在岛上的监控自然环境的无线传感器网络研究项目,然后通过收集 到的环境信息和结点的诊断信息从而可以观察研究网络的数据通信、感应器、 能量消耗等行为。但在这个项目中,对结点的功耗研究明显与到很大的困难, 作者只能通过研究结点的电池电压变化来得到结点的能量消耗,这样的结果明 显比较粗糙。所以,在无线传感器网络应用经常需要几千甚至几万个结点的情 况下,通过实际部署网络来研究网络的功耗需要很大的成本和时间,而且可控 性较差,测量难度较高。 现场测试可以在较小规模的网络中测试各结点的功耗,例如,通过将一些 传感器结点部署成实验网络。但是由于成本问题,这种方法不能用来测量由大 量结点组成的网络,另外,这种方法很难做到同时观察整个网络结点的能耗状 5 基于物理结点的无线传感器网络功耗模拟第l 章绪论 况,而在研究热点问题,结点在网络拓扑结构或环境变化情况下功耗变化问题 这类需求下这是必须的。如果能在模拟环境中实现无线传感器网络功耗的模拟, 则可以大大的克服这些缺点。 当今出现的无线传感器网络模拟环境允许研究者研究网络的动态行为,比 如通信的过载、丢包、冲突、路由转发等情况,但很少模拟工具可以有效的模 拟网络结点的功耗情况。s e l l s o r s 妇和s e n s 引入了简单的能量消耗和电源模 型,但是没有在实际硬件环境和真实应用中验证过【2 2 1 。而其他研究中使用模 拟器模拟无线传感器网络功耗的方法比如p o 、e r t o s s i m 【2 3 1 、a e o n 【2 4 】等,其主 要思想是,采取纯软件模拟的方式记录硬件的各种消耗能量的行为,而至于功 耗计算的参数比如电流电压则通过设定某些基准来间接测量或者通过查找产品 的参数表获取,这种方法功耗参数的获取不够准确,另外,这种方法不适用于 不同的硬件平台。 1 4 论文的解决思路 本文针对上述现有无线传感器网络纯模拟和现场测试中对功耗分析的不 足,提出了混合模拟的功耗估算方法。混合功耗模拟方法是一种结合现场测试 和纯软件测试的功耗模拟方法。其主要思想是:在模拟环境中加入一个真实的 无线传感器节点,此结点跟其他虚拟网络中的结点构成混合网络。接着在模拟 环境中建立功耗模型,功耗模型可以有不同的实现方式,比如基于状态的或者 基于指令级别的。跟纯模拟环境的功耗模拟不同,混合功耗模拟方法不需要通 过设计很多不同的基准大量测量实际传感器结点的电流再得到结点每一种硬件 行为( 比如,发送数据包、接受数据包、监听信道、感应数据等) 的功耗参数 ( 比如电流值、电压值等) ,而是根据测量加入的真实结点的总功耗来推导模拟 结点各种行为的电流值,主要方法是通过结合真实结点的测量功耗和模拟环境 获取的硬件运行状态信息并且利用算法推导出模拟环境功耗模型的参数,从而 可以得到完整的功耗模型来对其他模拟结点进行功耗分析。这种方法的实现显 然要比纯模拟环境的测量方法简单而且准确。另外,这种方法适用与多种模拟 平台,而且可以根据需要使用不同的功耗模型或调整算法。既具有通用性又保 持了纯模拟环境测试的低成本、易控制的优势。 6 基于物理结点的无线传感器网络功耗模拟 第1 章绪论 论文解决思路中的混合模拟半实物测试的思想来自h t o s s i m 【3 6 i 。如图 1 1 ,h t o s s i m 的思想是把的少量物理节点与t o s s i m 结合起来作为一个测试 平台。具体来说,就是让运行被测程序的物理节点与t o s s i m 中运行被测程序 的虚拟节点构成一个混合的网络拓扑来进行程序测试。这样一个测试平台结合 了半实物测试的充分性与纯软件模拟测试的可控性的优点,因此更加有利于无 线传感器网络的软件测试。然后h t o s s i m 仅仅是解决了物理节点和t o s s i m 虚拟网络的结合问题,而并没有考虑功耗模拟的问题。 图1 l 一个h - 1 d s s i m 网络拓扑不恿图 混合功耗模拟的思想扩展了h t o s s i m ,使得其可以模拟整个网络结点的 功耗。在实现过程中,这种方法需要解决几个问题:( 1 ) 设计物理结点的虚拟 拷贝,用于模拟物理结点的行为。( 2 ) 同步物理结点和虚拟环境的时间。( 3 ) 设计一个功耗模型来计算虚拟结点的功耗。( 4 ) 设计一个推导算法来调整功耗 模型的参数。 本文基于混合模拟的估算方法,扩展t o s s i m 实现了一个功耗模拟环境 h p t o s s i m ( h y b r i dp o 、e rt o s s i m ) 。h p t o s s i m 利用t o s s i m 在模拟上具 有的可伸缩性,增加了功耗模型记录模拟的各种行为。另外,在h p t o s s i m 中设计了基于多元线性回归的推导算法,用来根据真实结点实际测量的功耗值 和模拟环境记录的硬件运行状态推导出功耗模型的参数,从而可以利用其来分 7 基于物理结点的无线传感器网络功耗模拟 第l 章绪论 析模拟网络各个结点的功耗状况。 1 5 相关工作 在之前的研究中,研究者对无线传感器网络中路由协议或者其他应用的功 耗分析一般通过计算传送的数据包数目或者m c u 执行的指令周期数来粗略估 算。然而,这些估算不能反映低层的细节和设备的状态等信息。量化的评估必 须要有一个精确而且详细的反映低层行为的模型。虽然目前有很多研究提出了 各种各样的节能或者动态调整的应用,但很少有研究可以很深入的研究各结点 运行的功耗变化情况,大多数的研究仅仅是通过计算数据包发送数目来作为估 算结点功耗的唯一信息。 在模拟环境中模拟网络结点功耗的出发点是获取结点运行中各种行为所需 的时间,结合跟各行为对应的电流和电压信息可以算得。在现有的功耗模拟研 究中,常用的模拟方法是首先创建功耗模型,用以记录模拟环境中结点的运行 信息,不同的模拟器可以创建不同的功耗模型,主要有两类的功耗模型:基于 指令级别的和基于硬件状态的功耗模型。而电流信息的获取是通过查参数表或 者通过设计不同的基准来间接测量真实传感器结点的总电流从而推导得各种硬 件行为在模拟运行过程中的电流信息。 p o 、e r t o s s i m 【2 3 】是基于t o s s i m 的一个扩展,可以模拟虚拟网络每一个结 点的功耗状况。t o s s i m 直接把t i r l y o s 程序编译成二进制代码在模拟器中运 行,不需要改变应用程序,只是在编译的时候将t i n y o s 中对硬件操作的驱动 替代为模拟版本。这种设计利用了t i r l y o s 基于组件的本质。而p o w e r t o s s i m 则进一步利用t i l l y o s 和t o s s i m 的组件模型来记录硬件的状态转移信息。在 p o w e r t d s s i m 中,y o s 与硬件相关的组件( 比如无线电、闪存、指示灯、 c p u 等) 都被注入代码以获取这些设备运行过程中的行为轨迹。p o w e r t o s s i m 通过运行过程中产生的功耗状态转移日志跟踪每个硬件组件的功耗状态,主要 做法是在t o s s i m 中心增加一个新的组件p o w e r s t a t e ,这个组件跟踪各个组件 的状态转移信息同时记录在一个文件里面。为了不影响原来t o s s i m 的可伸缩 性,p o w e r t o s s i m 也是直接运行应用程序的可执行代码而不直接在指令级别模 拟。但为了获取t o s s i m 中每条指令的执行时间,p o 、e r t o s s i m 通过代码转 8 基于物理结点的无线传感器网络功耗模拟 第l 章绪论 化的技术来估算每个结点的c p u 指令周期,首先是将程序代码编译成汇编代码 获取每个基本块的指令周期,然后在运行过程中记录每个基本块的运行次数从 而得到所有整个程序的指令周期。而模拟功耗信息必须还要得到每种硬件行为 的电流状况,p o w e r t o s s i m 的做法是设计一些基准来隔离其他的硬件,然后测 量真实结点的电流从而推导某种硬件行为的电流值。比如测量发送数据包的电 流值可以通过写一段循环发送数据的代码,此时测量出来的平均电流大概相当 于发送数据包的电流值。 p o 、e r t o s s i m 只能运行t 埘o s1 x 的代码,另外两篇论文【2 5 ,2 6 1 将其移植 到了t i i l y o s2 x ,不过p o 、v e r t o s s i m 的基本框架没变,只是将程序运行时间 的计算改为记录硬件状态的改变从而得到不同状态的运行时间。本论文的功耗 模型这部分使用了和两者类似的设计。不过模拟结点的功耗公式中各个参数值 的获取跟几篇论文不同,不是通过查参数表或者设计测量基准来获取,而是通 过推导算法来推导。 a e o n 【2 4 】使用和p o w e r t o s s i m 类似的方法,不过a e o n 是扩展了 a v i 的r a ,a v r o r a 是一个指令级别的模拟器,因此a e o n 可以直接得到模 拟结点运行的指令周期,但是基于指令级别的模拟也使得其可伸缩性比 t o s s i m 差。 1 6 论文的结构安排 本文后面的章节安排如下:第2 章为设计和实现的基础,主要介绍无线传 感器网络的相关技术,包括t i l l y o s 操作系统、n e s c 编程语言和t o s s i m 相关 技术;第3 章介绍基于物理结点的混合功耗模拟方法及其需要解决的问题;第 4 章介绍h p t o s s i m 的体系结构和详细的设计与实现;第5 章对h p t o s s i m 的演示及对其功耗模拟效果进行评估,并用此来估算其他模拟结点的功耗并进 行分析。第6 章对本文的工作进行了总结与展望。 9 基于物理结点的无线传感器网络功耗模拟第2 章无线传感器网络相关技术 第2 章无线传感器网络相关技术 本章对无线传感器网络相关技术进行介绍。主要包括无线传感器网络应用 开发的操作系统t i n y o s ,t i n y o s 的开发语言n e s c 以及无线传感器网络的流行 模拟器t o s s i m 。这些相关技术为本文实现h p t o s s i m 的基础。 2 1 t i n y o s t 时o s 【2 7 。2 1 是伯克利大学分校的研究人员针对无线传感器网络设计出的 一款操作系统。y o s 采用了组件的实现框架,并且是一个基于事件的操作 系统。其设计的主要目标是代码量小、耗能少、并发性高、鲁棒性好,可以适 应不同的应用。t i n y o s 并不是传统意义上的操作系统,它实际上是为嵌入式系 统提供的一套编程框架,可以将应用特定的组件模块编译进指定的应用程序。 t i n y o s 也是一个轻量级的操作系统,其核心部分仅仅需要4 0 0 字节用以存放代 码与数据【3 3 】。t i n y o s 完整的系统由一个调度器和一些组件组成,应用程序与 组件一起编译成系统。组件由下到上可分为硬件抽象组件、综合硬件组件和高 层软件组件,高层组件向底层组件发出调用c o m m a n d ,底层组件向高层组件报 告e v e n t 。调度器具有两层结构,第一层维护着c o m m a n d 和e v e n t ,它主要是在 硬件中断发生时对组件的状态进行处理;第二层维护着t a s k ( 负责各种计算) , 只有当组件状态维护工作完成后,t a s k 才能被调度。t 埘o s 的组件层次结构 就如同一个网络协议栈,底层的组件负责接收和发送最原始的数据位,而高层 的组件对这些位数据进行编码、解码,更高层的组件则负责数据打包、路由和 传输数据。所以,一个耽l y o s 的程序就是有一组不同的组件组成,每个组件 向外提供一个或多个接口。骶n y o s 中有三个基本的模型,分别是组件模型、执 行模型以及消息模型。 2 1 1 组件模型 t i n y o s 的一个主要模型是组件模型,组件模型是一个极为有效的模块化模 型。t i n y o s 本身是由一系列可重用的系统组件和一个任务调度器构成。一个应 l o 基于物理结点的无线传感器网络功耗模拟 第2 章无线传感器网络相关技术 用程序通过一个w i r 访gs p e c i 6 c a t i o n 把不同的组件连接在一起。这个w i r i i l g s p e c i f i c a t i o n 定义了程序所需要的组件的集合。 图2 - 1n n y o s 组件接口 一个组件包含两类接口,提供的和使用的,图2 1 就是t 埘o s 的部分系统 接口。这些接口定义这个组件如何与其他组件交互。一个接口通常描述某种操 作( 比如发送一个数据包) 而且定义为一个接口类型。如图2 2 是t 如憾r m 组 件的一个简化形式,图的上面表示t i m e r m 提供了s t d c o n t r 0 1 和t i m e r 接 口,图的下面表示t 纽e r m 同时使用了c l o c k 接口。 s t d c o n t l lt i m e r t l m e r m w c l o c k m o d u l et i m e r 辩 p r o v i d e $ i n c e r f a c es 乞d c o n t r o l ; l n c e r f a c et i m e r 【u i n 乞8tl d 】; u 8 e si n c e r f a c ec l o c k 7 ) i m p l e m e n c a 七i o n ad i a l e c 乞o fc 图2 2t i 皿e r m 组件的s p e c i f i c a t i o n 和图形描述【2 7 1 接口可以包含c o m m a n d 和e v e m ,c o m m a n d 和e v e m 实现了组件间的通信。 c o m m a n d 是接口的提供者实现的一个函数,而e v e m 是接口的使用实现的函数。 例如,t 砥r 接口( 图2 3 ) 定义了s t 甜和s t o p 两个c o m m a n d 和一个f i r e de v e m 。 l l 基于物理结点的无线传感器网络功耗模拟 第2 章无线传感器网络相关技术 一个c o m m a n d 是对让一个组件进行某些操作的请求,比如启动一个传感器的数 据读取,而当操作结束时会有一个e v e n t 给请求者发信号。在t i l l y o s 中,e v e n t 和c o i 砌a n d 是s p l i tp h a s e 的,也就是事件可以是异步的触发,命令必须马上返 回而e v e n t 可以在一段时间操作结束后再发信号。 l n 乞e r f a c es t d c o n 乞r o l c o 拍n a n dr e g ul 七一i n i c ) ; c o m m a n d r e s u l 一s c a r c t c o m 隔a n d r e $ u l 乞t 弗耘o p i ; i n t e r a c et l 伯稳rt c o 释口n a n d r e s u l c 一s 乞a r c ( c h a rt y p e 。u l n c 3 2 一乞薹n c e r v a l 7 c o m m a n dr e 8 u l t 一乞鸯o p ) ; e v e n tr e 霉u l 乞c 乏l r e d i ; l n c e r f a o ec l o c k c o 玎孵豫n dr e s u l c 乞s e c r a c el c h a r 主n t e r v a l ,c h a r8 c a l e i ; e v e n cr e s u l 七_ i c i r e ; i n t e r a c es e n d m s gl c o m m a n dr e 8 u l 乞乞8 e n d u i n t l 蓐ta d d r e 8 8 。 u l n 七8 乞l e n g t h t o s m s g p c rm s g ) ; e v e n t 始8 u l 乞- 乞誊e 稿d d 锄e t o s _ m 3 9 p c rm 8 9 r e s u l 七cs u c c e s s ; 一 2 1 2 执行模型 图2 3 币n y o s 接口类型的样本代码f 2 7 j t 埘o s 的执行模型的主要思想是使用t a s k 。t a s k 可以用来实现组件外的并 行处理。如果不需要马上执行一个操作,c o i i l i n a n d 或者e v e m 句柄可以提交一 个t a s k 。协k 是一个可以让t 埘o s 调度器过一段时间再执行的函数。这样可 以让c o m m a n d 和e v e n t 提交一个繁琐的计算t a s k 后立即返回。调度器对t a s k 的 执行是遵循f i f o 测量,而且任务的执行是非抢占式的,而不是不确定的执行。 这让t a s k 比线程更加轻量级。 因为不可以被抢占,t a s k 之间的关系是原子的。但是,任务对硬件中断或 者触发事件来说不是原子的。为减轻对竞争条件的检测负担,t i i l y o s 将代码分 为同步和一部代码: 1 2 基于物理结点的无线传感器网络功耗模拟第2 章无线传感器网络相关技术 1 、 同步代码( s c ) :只可以从t a s k 到达的代码。 2 、 异步代码( a c ) :可以从至少一个中断句柄到达的代码。 虽然t a s k 的非抢占性减少了竞争,但是s c 和a c 之间或者a c 和a c 之间 还有可能可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国广电鹤壁市2025秋招笔试行测题库及答案供应链采购类
- 中国广电黄冈市2025秋招财务审计类专业追问清单及参考回答
- 国家能源宜昌市2025秋招面试专业追问及参考化学工程岗位
- 国家能源拉萨市2025秋招笔试资料分析题专练及答案
- 大唐电力亳州市2025秋招面试专业追问及参考机械工程岗位
- 珠海市中石化2025秋招笔试模拟题含答案油气储运与管道岗
- 2025年甲亢用药考试题及答案
- 德宏自治州中储粮2025秋招质检化验岗高频笔试题库含答案
- 中国广电珠海市2025秋招笔试行测题库及答案网络优化与维护类
- 亳州市中储粮2025秋招面试典型题目及答案
- 2025-2030儿童心理健康服务市场需求分析与行业趋势及发展策略报告
- 人工智能+新能源设备研发应用分析报告
- 公路施工汇报材料
- 对银行消防培训课件
- 有害物质管理培训课件
- GB/T 33363-2016预应力热镀锌钢绞线
- GB/T 23510-2009车用燃料甲醇
- 实用英语口语900句
- 食品安全事故流行病学个案调查表
- 风机运行记录表
- 2021新高考语文Ⅰ卷现代文阅读Ⅱ小说《石门阵》赏析及试题详细解析
评论
0/150
提交评论