网络体系结构《无线传感器网络技术》课件

上传人:痛*** 文档编号:241740888 上传时间:2024-07-20 格式:PPTX 页数:121 大小:17.89MB
返回 下载 相关 举报
网络体系结构《无线传感器网络技术》课件_第1页
第1页 / 共121页
网络体系结构《无线传感器网络技术》课件_第2页
第2页 / 共121页
网络体系结构《无线传感器网络技术》课件_第3页
第3页 / 共121页
点击查看更多>>
资源描述
第二章网络体系架构WSN节点概述和分类WSN节点结构WSN节点体系结构WSN网络结构无线传感器网络分类和特点WSN操作系统传传感器概述:感器概述:功用:功用:一感二一感二传,即感受被即感受被测信息信息,并并传送出去。送出去。传感器定感器定义我国国我国国标(GB7665-2005)对传感器的感器的定定义是:是:“能能感受感受被被测量并按照一定的量并按照一定的规律律转换成成可用可用输出信号出信号的的器件或装置器件或装置”。传感器的作用感器的作用主要是感受和响主要是感受和响应规定的被定的被测量,并按一定量,并按一定规律将其律将其转换成有用成有用输出,出,特特别是是完成完成非非电量到量到电量的量的转换。2/28 传感器的组成传传感感感感器的器的器的器的组组成,并无成,并无成,并无成,并无严严格的格的格的格的规规定。一般定。一般定。一般定。一般说说来,可以把来,可以把来,可以把来,可以把传传感器看作由敏感元件(有感器看作由敏感元件(有感器看作由敏感元件(有感器看作由敏感元件(有时时又称又称又称又称为预变换为预变换器)和器)和器)和器)和变换变换元件(有元件(有元件(有元件(有时时又称又称又称又称为变换为变换器)两部分器)两部分器)两部分器)两部分组组成。成。成。成。3/28传感器的分类根据被测量与输出电量的转换原理分类能量转换型、能量控制型根据传感器感知的对象分类温度传感器、力传感器、等根据输出信号的性质不同分类二值型、数字型、模拟型根据传感器测量原理分类物理和化学.4常用物理传感器与化学传感器5分类-物理传感器1.物理传感器物理传感器的原理是利用力、热、声、光、电、磁、射线等物理效应,将被测信号量的微小变化转换成电信号物理传感器可以进一步分为:力传感器、热传感器、声传感器、光传感器、电传感器、磁传感器与射线传感器等7类6(1)力传感器力传感器是能感受外力并将其转换成可用输出信号的传感器。力传感器的种类繁多,常用的力与压力传感器有电阻应变式、半导体应变式、压阻式、电感式、电容式、谐振式压力传感器,以及光纤压力传感器等用金属应变丝作为敏感元件的压力传感器原理示意图7不同用途的力传感器8(2)温度传感器(3)声传感器9(4)光传感器图像传感器光纤传感器10分布式光纤传感系统分布式光纤传感系统利用光纤作为传感敏感元件和传输信号介质,探测出沿着光纤不同位置的温度和应变的变化,实现分布、自动、实时、连续、精确的测量。分布式光纤传感系统应用领域包括:智能电网的电力电缆表面温度检测、事故点定位 发电厂和变电站的温度监测、故障点检测和报警 水库大坝、河堤安全与渗漏监测 桥梁与高层建筑结构安全性监测 公路、地铁、隧道地质状况的监测分布光纤温度传感系统可以在易燃、易爆的环境下同时测量上万个点,可以对每个温度测量点进行实时测量与定位11(5)电传感器电传感器可以分为:电阻式、电容式、电感式传感器电阻式传感器利用变阻器将非电量转换成电阻信号的原理制成的。电阻式传感器主要用于位移、压力、应变、力矩、气流流速、液面与液体流量等参数的测量电容式是利用改变电容器的几何尺寸或介质参数,来使电容量变化的原理制成的。电容式传感器主要用于压力、位移、液面、厚度、水分含量等参数的测量电感式是利用改变电感磁路的几何尺寸或磁体位置,来使电感或互感量变化的原理制成的,主要用于压力、位移、力、振动、加速度等参数的测量。12(6)磁传感器磁传感器是最古老的传感器,指南针是磁传感器的最早的一种应用磁传感器将磁信号转化成为电信号输出磁电式传感器目前已经被高性能磁敏感材料的新型磁传感器所替代13(7)射线传感器射线传感器是将射线强度转换出可输出的电信号的传感器射线传感器可以分为:X射线传感器、射线传感器、射线传感器、辐射剂量传感器射线传感器已经在环境保护、医疗卫生、科学研究与安全保护领域广泛使用14分类-化学传感器化学传感器可以将化学吸附、电化学反应过程中被测信号的微小变化转换成电信号的一类传感器按传感方式的不同,可分为:接触式化学传感器非接触式化学传感器按结构形式的不同,可以分为:分离型化学传感器组装一体化化学传感器按检测对象的不同,可以分为:气体传感器离子传感器湿度传感器15分类-生物传感器生物传感器是由生物敏感元件和信号传导器组成生物敏感元件可以是生物体、组织、细胞、酶、核酸或有机物分子不同的生物元件对于光强度、热量、声强度、压力有不同的感应特性16生物传感器的分类常用常用传传感器感器17/28 智能传感器18/28 定定义:传统传感器加上感器加上处理器具有智能功能的理器具有智能功能的传感器。所感器。所谓智能式智能式传感器,就是感器,就是一种一种带有有微微处理机理机的,的,兼有信息兼有信息检测、信号、信号处理、信息理、信息记忆、逻辑分析与分析与判判断功能断功能的的传感器。感器。组成:成:传感器感器+微微处理器理器+信号信号处理理电路。微路。微处理器理器为核心。核心。智能传感器的特点具有自动调零和自动校准功能具有判断和信息处理功能、对测量值进行修正和误差补偿实现多惨了综合测量(复合感知能力)自动诊断故障灵活的通信能力智能传感器的发展为传感器技术的研究提出了很多富有挑战性的课题19/28微机电系统对智能传感器发展的影响微机电系统(MEMS)是指集微型机构、微型传感器、微型执行器以及信号处理和控制电路,直至接口、通信和电源等于一体的微型器件或系统20/28性能指标静态指标线性范围:输出量与输入量呈线性关系的测量范围线性度:传感器实际输入输出量曲线与拟合曲线的重叠程度灵敏度:输出变化量与输入变化量的比值稳定性:表示传感器经过长期使用后,输出特性不发生变化的性能分辨率:能检测到的被测量的最小变化量21/28(具体定义公式见教材)性能指标 迟滞:传感器在输入量从小到大正向变化与反向变化,其输入输出特性曲线不重合的程度重复性:传感器在输入量按同一方向做全量程连续多次变化时所得特性曲线一致的程度漂移:输入量不变的情况下,输出量随时间变化的现象测量范围:最小/最大输入量的范围精度:测量结果的可靠程度,以给定的准确度来表示重复某个读数的能力动态指标输出信号对应随时间变化的输入量的响应特性,反映测量精度、重复性和可靠性第二章网络体系架构WSN节点概述和分类WSN节点结构WSN节点体系结构WSN网络结构无线传感器网络分类和特点WSN操作系统24无线传感器节点结构(1)无线传感器节点通常由4个功能模块组成:感知模块、处理模块、通信模块和电源模块25无线传感器节点结构(2)感知模块:由一个或多个传感器以及模数转换器组成。传感器负责感知监测目标的物理特征和现象,并产生相应的模拟信号。感知声、光、电、震动、磁、气体等信号模数转换器负责将模拟信号转换为数字信号,并将数字信号送往处理模块进行处理。处理模块:由一个微处理器及相应的内存组成,负责对数据进行处理、滤波、决策、执行、资源分配等判断,并对传感器节点进行控制通信模块:由数模转换器和无线收发送器(Zigbee,WiFi,GPRS,短波等)组成,负责发送和接收数据和控制信息26无线传感器节点结构(3)电源模块:负责节点的供电(电池供电或从自然界采集能量)其他模块位置模块:节点可以配置全球定位系统(GlobalPositioningSystem,GPS)或北斗定位系统接收器移动模块:在某些需要移动传感器节点的应用中,可以配置马达来驱动传感器节点一个简单的应用开发需要:一个简单的应用开发需要:Serial gateway(MIB510)MICA2(MPR400)(处理模块和通信模块)MTS310(感知模块)QTY:1COST:$95.00Serialgatewayusedtoprogramandcommunicatewiththemotes.NOTE:Ifyourcomputerdoesnothaveaserialport,youwillalsoneedtobuyaserialtoUSBadapter.QTY:2COST:$150.00eachThe900MHzmotesoffergreaterbandwidth,whichmeansmoreavailablechannels.Ifyouwanttohaveseveralmotenetworksoperatingatonce,thisisthewaytogo.The433MHzmotesgetbetterrange.Bestforoutdoorapplications.QTY:1COST:$120.00Basicsensorboardthatplugsintothemote.Containslightsensor,temperaturesensor,microphoneandsounder.Moreadvancedsensorboardshaveaccelerometers,magnetometersandGPS.Programming Board(MIB510)29Mica 2 MotesMICA 2 MOTE30 SensorBoard-MTS31032第二章网络体系架构WSN节点概述和分类WSN节点结构WSN节点体系结构WSN网络结构无线传感器网络分类和特点WSN操作系统跨层设计联合优化无线传感器网络协议栈WSNWSN的体系架构35WSNWSN的通信协议物理层(主要是电磁波)负责频率选择、频率产生、信号检测、调制解调和数据加密36WSNWSN的通信协议(续)(续)链路层负责介质访问和差错控制确保通信中点-点/点-多点的连接介质访问控制:创建网络架构在节点间公平有效的共享通信资源差错控制前向纠错FEC自动重发检错ARQ37WSNWSN的通信协议(续(续网络层(路由层)节能总是最重要的考虑传感网络多以数据为中心数据聚合不能影响传感节点的协同理想的传感器网络基于属性寻址并能感知位置38WSNWSN的通信协议(续(续传输层负责数据流的传输控制可靠性和拥塞控制当传感系统需要被Internet或者其它外部网络访问时传输层设计与实现至关重要研究不成熟39WSNWSN的通信协议(续)续)跨层设计联合优化应用层负责任务调度和数据分发等具体业务,使得底层硬件和软件对传感应用是透明的Sensormanagementprotocol(SMP)Taskassignmentanddataadvertisementprotocol(TADAP)Sensorqueryanddatadisseminationprotocol(SQDDP)网络管理平台主要是对传感器节点自身的管理和用户对wsn的管理,包括:拓扑控制服务质量管理能力管理安全管理移动管理网络管理应用支撑平台包括一系列基于监测任务的应用层软件,通过应用服务借口和网络管理接口为用户提供各种应用的支持。时间同步定位应用服务接口网络管理接口第二章网络体系架构WSN节点概述和分类WSN节点结构WSN节点体系结构WSN网络结构无线传感器网络分类和特点WSN操作系统43无线传感网的布设形式随机布设网战场:炮射、空投应急:火灾、毒气固定布设网工控:自动控制监测:远程监测44无线传感器网络的网络结构(1)传感器网络基本组成:传感器节点(sensornode)汇聚节点(sink)管理节点(Managementnode)汇聚节点传感器节点:查询消息或指令汇聚节点还作为连接外部传输网络(如互联网、卫星网等)的网关,对收集到的数据进行简单的处理,然后将数据通过互联网或其它传输网络,传送给监控中心和需要使用这些数据的终端用户传感器节点汇聚节点:监测数据sinkInternet/SatelliteSensornode45无线传感器网络的网络结构(2)单跳结构各传感器节点可以采用单跳的方式将各自的数据直接发送给汇聚节点基于蜂窝的窄带物联网(NarrowBandInternetofThings,NB-IoT)SensornodeRef:NB-IoT:AsustainabletechnologyforconnectingbillonsofdevicesEricssionTechnologyReviewApril22,2016NB-IoT的应用无线传感器网络的网络结构(3)多跳结构传感器节点通过一个或多个网络中间节点将所采集到的数据传送给汇聚节点,从而有效地降低通信所需的能耗平面结构多跳分簇结构多层分簇结构第二章网络体系架构WSN节点概述和分类WSN节点结构WSN节点体系结构WSN网络结构无线传感器网络分类和特点WSN操作系统50无线传感器网络的分类(1)单跳网络与多跳网络single-hop/multi-hop静止网络与移动网络static/mobile静止传感网中,所有传感器节点都是静止不动的。静止传感网实现简单,但静止WSN存在瓶颈;移动传感网中,某些节点可以移动。移动可以平衡网络流量和能耗分布,但动态性使得协议实现复杂。静止汇聚节点网络与移动汇聚节点网络静止汇聚节点网络中,汇聚节点的位置静止固定在监测区域附近或内部;移动汇聚节点网络中,汇聚节点在监测区域移动,收集传感器节点的监测数据,可以平衡各网络负载,减小热点效应。51无线传感器网络的分类(2)确定性网络与非确定性网络根据传感器节点部署的情况不同确定性传感器网络中,传感器节点的位置是预先规划的,且一旦部署不再变化;非确定性传感器网络中,节点随机布设,甚至可以移动,适合自然条件恶劣或敌对的应用场合,难以预先规划。单汇聚节点网络与多汇聚节点网络根据汇聚节点的数量单汇聚节点网络中,只有一个汇聚节点位于监测区域的附近或内部;多汇聚节点网络中,多个汇聚节点布设于不同位置,各传感器节点可以将其监测数据发送给离自己最近的汇聚节点。52无线传感器网络的分类(无线传感器网络的分类(3 3)同构网络与异构网络根据传感器节点是否具有相同的能力(通信能力、感知能力、计算能力等的不同)同构传感器网络中,所有传感器节点能力完全相同;异构传感器网络中,传感器节点(或部分)能力不同,可以配备较强的通信、处理模块或传感器。先应式网络和反应式网络先应式网络采用连续操作模式,节点定期打开传感器和发送器、感知环境并进行数据汇包适用于定期监控的应用反应式网络采用查询-响应的操作模式,节点按需的进行感知和数据汇报WSN的特征四大受限:能量受限通信能力受限计算能力受限存储能力受限组网特征:自组织性以数据为中心应用相关性事件驱动拓扑动态性大规模需要考虑可靠性和鲁棒性54无线传感器网络的设计目标节点体积小型化节点成本低廉节点功耗超低节点可自组成网可扩展性强自适应性强可靠性高满足一定的安全性和服务质量要求55传感网络面临的问题和挑战第二章网络体系架构WSN节点概述和分类WSN节点结构WSN节点体系结构WSN网络结构WSN分类WSN操作系统Major Concerns in WSN OS Design能在有限的资源上运行:WSN节点资源非常有限(通信带宽资源/能量资源/计算资源),操作系统必须能够高效地使用各种资源;允许高度的并发性:要求执行模式能对事件作出快速的直接响应;适应硬件升级支持一系列平台:要求组件和执行模式能够应对硬件/软件的替换,具有可移植性;支持多样化的应用程序:良好的模块化设计,使应用/协议/服务与硬件资源之间可以随意搭配,要求能够根据实际需要,裁减操作系统的服务;鲁棒性强:要求通过组件间有限的交互渠道,就能应对各种复杂情况;提供高效的组网机制:WSN是一个网络系统,其操作系统也必然是面向网络化开发的。网络化系统要求操作系统必须为应用提供高效的组网和通信机制WSNOSOutlineFunctionalAspectsDataTypesSchedulingStacksSystemCallsHandlingInterruptsMultithreadingThread-basedvs.Event-basedProgrammingMemoryAllocationNon-FunctionalAspectsSeparationofConcernSystemOverheadPortabilityDynamicReprogrammingPrototypesTinyOSContikiEvaluationOperatingSystemsAnoperatingSystemisathinsoftwarelayerresidesbetweenthehardwareandtheapplicationlayerprovidesbasicprogrammingabstractionstoapplicationdevelopersItsmain taskistoenableapplicationstointeractwithhardwareresourcesOperatingSystemsOperatingsystemsareclassifiedas:single-task/multitaskingandsingle-user/multiuseroperatingsystemsmulti-taskingOS-theoverheadofconcurrentprocessingbecauseofthelimitedresourcessingletaskOS-tasksshouldhaveashortdurationThechoiceofaparticularOSdependsonseveralfactors;typicallyfunctionalandnon-functionalaspectsOutlineFunctional AspectsData TypesSchedulingStacksSystem CallsHandling InterruptsMultithreadingThread-based vs.Event-based ProgrammingMemory AllocationNon-FunctionalAspectsSeparationofConcernSystemOverheadPortabilityDynamicReprogrammingPrototypesTinyOSContikiEvaluationDataTypesInteractionsbetweenthedifferentsubsystemstakeplacethrough:well-formulatedprotocolsdatatypesComplexdatatypeshavestrongexpressionpowerbutconsumeresources-structandenumSimpledatatypesareresourceefficientbuthavelimitedexpressioncapability-CprogramminglanguageSchedulingTwoschedulingmechanisms:queuing-basedschedulingFIFO-thesimplestandhasminimumsystemoverhead,buttreatstasksunfairlysortedqueue-e.g.,shortestjobfirst(SJF)-incurssystemoverhead(toestimateexecutionduration)round-robinschedulingatimesharingschedulingtechniqueseveraltaskscanbeprocessedconcurrentlySchedulingRegardlessofhowtasksareexecuted,aschedulercanbeeitheranon-preemptivescheduler-ataskisexecutedtotheend,maynotbeinterruptedbyanothertaskorpreemptivescheduler-ataskofhigherprioritymayinterruptataskoflowpriorityStacks&SystemCallsStacksadatastructurethattemporarilystoresdataobjectsinmemorybypilingoneuponanotherobjectsareaccessedusinglast-in-first-out(LIFO)System Calls:istheprogrammaticwayinwhichacomputer program requests a service from the kernel of the operating system it is executed ondecoupletheconcernofaccessinghardwareresourcesfromimplementationdetailswheneveruserswishtoaccessahardwareresource,theyinvoketheseoperationswithouttheneedtoconcernthemselveshowthehardwareisaccessedHandlingInterruptsAninterruptisanasynchronoussignalgeneratedbyahardwaredeviceseveralsystemeventsOSitselfAninterruptcauses:theprocessortointerruptexecutingthepresentinstructiontocallforanappropriateinterrupthandlerInterruptsignalscanhavedifferentprioritylevels,ahighpriorityinterruptcaninterruptalowlevelinterruptInterruptmask:letprogramschoosewhetherornottheywishtobeinterruptedMulti-threadingA threadisthepathtakenbyaprocessororaprogramduringitsexecutionMulti-threading-ataskisdividedintoseverallogicalpiecesscheduledindependentfromeachotherexecutedconcurrentlyTwoadvantagesofamulti-threadedOS:1.tasksdonotblockothertasks2.short-durationtaskscanbeexecutedalongwithlong-durationtasksMulti-threadingThreadscannotbecreatedendlesslythecreationofthreadsslows downtheprocessornosufficientresourcestodivideTheOScankeepthenumberofthreadstoamanageable sizeusingathreadpoolThread-basedvs.Event-basedProgrammingDecisionwhethertousethreadsoreventsprogramming:needforseparatestacksneedtoestimatemaximumsizeforsavingcontextinformationThread-based programsusemultiplethreadsofcontrolwithin:asingleprogramasingleaddressspaceThread-basedvs.Event-basedProgrammingAdvantage:athreadblockedcanbesuspendedwhileothertasksareexecutedindifferentthreadsDisadvantages:mustcarefullyprotectshareddatastructureswithlocksuseconditionvariablestocoordinatetheexecutionofthreadsThread-basedvs.Event-basedProgrammingInevent-based programming:useeventsandeventhandlersevent-handlersregisterwiththeOSschedulertobenotifiedwhenanamedeventoccursaloopfunction:pollsforeventscallstheappropriateevent-handlerswheneventsoccurAneventisprocessedtocompletionunlessitshandlerreachesatablockingoperation(callbackandreturnscontroltothescheduler)MemoryAllocationThememoryunitisapreciousresourceReadingandwritingtomemoryiscostlyHowandforhowlongamemoryisallocatedforapieceofprogramdeterminesthespeedoftaskexecutionMemoryAllocationMemorycanbeallocatedtoaprogram:statically-afrugalapproach,buttherequirementofmemorymust be knowninadvancememoryisusedefficientlyruntimeadaptationisnotalloweddynamically-therequirementofmemoryisnot knowninadvance(onatransientbasis)enablesflexibilityinprogrammingbutproducesaconsiderablemanagementoverheadOutlineFunctionalAspectsDataTypesSchedulingStacksSystemCallsHandlingInterruptsMultithreadingThread-basedvs.Event-basedProgrammingMemoryAllocationNon-Functional AspectsSeparation of ConcernSystem OverheadPortabilityDynamic ReprogrammingPrototypesTinyOSContikiEvaluationSeparationofConcernSoC isadesignprincipleforseparatinga computer program into distinct sections,such that each section addresses a separate concernIngeneral,separationbetweentheoperatingsystemandtheapplicationslayerTheoperationsystemscanprovide:anumberoflightweightmodules-“wired”together,oranindivisiblesystemkernel+asetoflibrarycomponentsforbuildinganapplication,orakernel+asetofreconfigurablelow-levelservicesSeparationofconcernenables:flexibleandefficientreprogrammingandreconfigurationPortabilityIdeally,operatingsystemsshouldbeabletoco-existandcollaboratewitheachotherHowever,existingoperatingsystemsdonotprovidethistypeofsupportInordertoaccommodateunforeseenrequirements,operatingsystemsshouldbeportableandextensibleSystemOverheadAnoperatingsystemexecutesprogramcode-requiresitsownshareofresourcesTheresourcesconsumedbytheOSarethesystemsoverhead,itdependsonthesizeoftheoperatingsystemthetypeofservicesthattheOSprovidestothehigher-levelservicesandapplicationsSystemOverheadTheresourcesofwirelesssensornodeshavetobesharedbyprogramsthatcarryout:sensingdataaggregationself-organizationnetworkmanagementnetworkcommunicationDynamicReprogrammingOnceawirelesssensornetworkisdeployed,itmaybenecessarytoreprogramsomepartoftheapplicationortheoperatingsystemforthefollowingreasons:1.thenetworkmaynotperformoptimally2.boththeapplicationrequirementsandthenetworksoperatingenvironmentcanchangeovertime3.maybenecessarytodetectandfixbugsDynamicReprogrammingManualreplacementmaynotbefeasible-developanoperatingsystemtoprovidedynamicreprogrammingsupport,whichdependsonclearseparationbetweentheapplicationandtheOStheOScanreceivesoftwareupdatesandassembleandstoreitinmemoryOSshouldmakesurethatthisisindeedanupdatedversionOScanremovethepieceofsoftwarethatshouldbeupdatedandinstallandconfigurethenewversionalltheseconsumeresourcesandmaycausetheirownbugsDynamicReprogrammingSoftwarereprogramming(update)requiresrobustcode dissemination protocols:splittingandcompressingthecodeensuringcodeconsistencyandversioncontrollingprovidingarobustdisseminationstrategytodeliverthecodeoverawirelesslinkOutlineFunctionalAspectsDataTypesSchedulingStacksSystemCallsHandlingInterruptsMultithreadingThread-basedvs.Event-basedProgrammingMemoryAllocationNon-FunctionalAspectsSeparationofConcernSystemOverheadPortabilityDynamicReprogrammingPrototypesTinyOSContikiEvaluationTinyOS简介TinyOS是一个开源的嵌入式操作系统,它是由加州大学的伯利克分校开发出来的,主要应用于无线传感器网络方面。它是基于一种组件(Component-Based)的架构方式,使得能够快速实现各种应用。支持的平台:eyesIFXv2、intelmote2、mica2、mica2dot、micaZ、telosb、tinynode。TinyOS的编程语言 TinyOS最初是用汇编和C语言编写的,后来改用 支持组件化编程的nesC语言。该语言把组件化模 块化思想和基于事件驱动的执行模型结合起来。nesC:使用C作为其基础语言,支持所有的C语言 词法和语法,其独有的特色如下:增加了组件(component)和接口(interface)的关键字定义;定义了接口及如何使用接口表达组件之间关系 的方法;目前只支持组件的静态连接,不能实现动态连接和配置。TinyOS提供一系列可重用的组件component,包括networkprotocols,distributedservices,sensordrivers,anddataacquisitiontools一个组件由两部分组成Specification规范说明,包含要用接口的名字implementation接口的具体实现。组件分两种:Module组件(模块):实现某种逻辑功能;Configuration组件(配件):将各个组件连接起来成为一个整体。一个应用程序可以通过连接配置文件(AWiringSpecification)将各种组件连接(wire)起来,以完成它所需要的功能组件特征:组件内变量、函数可以自由访问,但组件之间不能访问和调用。Component basedOS组件component一个应用程序都由一个或多个组件链接起来一个组件由接口(interface)组成,它是双向的并且是组件间的唯一访问点可以提供(provides)接口,描述了该组件提供给调用者的功能可以使用(uses)接口,则表示该组件本身工作时需要用到的功能一个接口由命令(command)和事件(event)组成A command is a request to perform some service,接口的提供者必须实现它们An event signals the completion of the service,接口的使用者必须实现它们The interfaces user makes requests(calls commands)on the interfaces provider,the provider makes callbacks(signals events)to the interfaces user.组件模型Wiring componentsAconfigurationcanbindaninterfaceusertoaproviderusing-or Provider.interfaceProvider.interfaceProviderUser.interface-Provider.interfaceTinyOS(Gayetal.2007)ThelogicalstructureofcomponentsandcomponentconfigurationsFigure4.2ATinyOScomponentprovidinganinterfaceInFigure4.2,Component A declaresitsservicebyprovidinginterface C,whichinturnprovidescommand D1 andsignalsevent D2.Figure4.3ATinyOScomponentsthatusesaninterfaceFigure4.4ATinyOSconfigurationthatwiresaninterfaceproviderandaninterfaceuserInFigure4.3,Component B expressesinterestininterface C bydeclaringacalltocommand D1 andbyprovidinganeventhandlertoprocessevent D2.InFigure4.4,abindingbetweenComponent A andComponent B isestablishedthroughtheConfiguration E.BlinkM.nc /*ImplementationforBlinkapplication.ToggletheredLEDwhenaTimerfires.*/moduleBlinkMprovides/必须实现这个接口interfaceStdControl;uses/它可能调用这些接口中声明的任何命令以及必须实现这些接口中声明的任何事件。interfaceTimer;interfaceLeds;implementation/Imandresult_tStdControl.init()callLeds.init();returnSUCCESS;/*Startthingsup.Thisjustsetstheratefortheclockcomponent.*/commandresult_tStdControl.start()returncallTimer.start(TIMER_REPEAT,1000);/Startarepeatingtimerthatfiresevery1000ms/*Haltexecutionoftheapplication.Thisjustdisablestheclockcomponent.*/commandresult_tStdControl.stop()returncallTimer.stop();/*ToggletheredLEDinresponsetotheTimer.firedevent.*/eventresult_tTimer.fired()callLeds.redToggle();returnSUCCESS;Example-module fileExample-configurationfileBlink.ncconfiguration Blink implementation components Main,BlinkM,SingleTimer,LedsC;/指定了该配置要引用的组件集合Main.StdControl-SingleTimer.StdControlMain.StdControl-BlinkM.StdControl;BlinkM.Timer-SingleTimer.Timer;BlinkM.Leds-LedsC;BlinkMStdControlprovidesusesTimerLedsMainStdControlLedsCLedsSingleTimertimerStdControlBlinkExecution Model任务加事件的两级调度Tasks:TimeflexibleLongerbackgroundprocessingjobsAtomicwithrespecttoothertasks(singlethreaded)PreemptedbyeventHardwareeventhandlersTimecriticalShorterduration(handofftotaskifneedbe)Interruptstaskandotherhardwarehandler.Last-infirst-outsemantics(nopriorityamongevents)executedinresponsetoahardwareinterruptExecution ModelnEventsgeneratedbyinterruptspreempttasksnTasksdonotpreempttasksHardwareInterruptseventscommandsTasksExecution Model任务声明taskvoidtaskname().分派任务的(推后)执行:posttaskname()操作将任务放入一个以先进先出(FIFO)方式处理的内部任务队列基本的任务单线程运行到结束,只分配单个任务栈事件发生后抢占任务为避免冲突可以使用“原子语句”(atomicstatement)禁止抢占两级的调度结构可以实现优先执行少量同事件相关的处理,同时打断长时间运行的任务Execution Model分阶段作业(Split-PhaseOperations)TinyOS没有提供任何阻塞操作,为了让一个耗时较长的操作尽快完成,一般来说都是将对这个操作的请求和这个操作的完成分开来实现,以便获得较高的执行效率BlockingSplit-Phaseif(send()=SUCCESS)sendCount+;/startphasesend();/completionphasevoidsendDone(error_terr)if(err=SUCCESS)sendCount+;Small sizeOShasafootprintthatfitsin400bytes.Component basedOSEventdrivenprogrammingmodelFIFOscheduling non real-time OSCommunicationProtocolSupportTinyOS小结OutlineFunctionalAspectsDataTypesSchedulingStacksSystemCallsHandlingInterruptsMultithreadingThread-basedvs.Event-basedProgrammingMemoryAllocationNon-FunctionalAspectsSeparationofConcernSystemOverheadPortabilityDynamicReprogrammingPrototypesTinyOSContiki/(omitted)EvaluationOutlineFunctionalAspectsDataTypesSchedulingStacksSystemCallsHandlingInterruptsMultithreadingThread-basedvs.Event-basedProgrammingMemoryAllocationNon-FunctionalAspectsSeparationofConcernSystemOverheadPortabilityDynamicReprogrammingPrototypesTinyOSContikiEvaluation121小结小结网络体系结构设计对于无线传感器网络的能耗、网络的生命期QoS等性能具有很大的影响。不存在一种普遍适用的无线传感网体系结构无线传感器网络需要设计一组新的网络协议来完成各种网络控制与管理功能,这些网络协议不仅需要考虑传感器网络的各种资源限制,而且需要考虑传感器网络应用相关的特征。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!