




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)報(bào)告 課 程 無(wú)線傳感網(wǎng)絡(luò)各類路由協(xié)議仿真 1. 實(shí)驗(yàn)?zāi)康木W(wǎng)絡(luò)數(shù)據(jù)傳輸離不開路由協(xié)議,路由協(xié)議是其組網(wǎng)的基礎(chǔ),路由協(xié)議是無(wú)線傳感器網(wǎng)絡(luò)研究的重點(diǎn)之一,其主要的設(shè)計(jì)目標(biāo)是降低節(jié)點(diǎn)能量消耗,延長(zhǎng)網(wǎng)絡(luò)的生命周期。本次實(shí)驗(yàn)將仿真各類無(wú)線傳感器網(wǎng)絡(luò)路由協(xié)議。2.實(shí)驗(yàn)要求爭(zhēng)取考慮全面,考慮到各因素對(duì)各類協(xié)議的影響,以提高無(wú)線傳感網(wǎng)絡(luò)的性能。3. 設(shè)計(jì)思想(1) Flooding 泛洪是一種傳統(tǒng)的路由技術(shù),不要求維護(hù)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),并進(jìn)行路由計(jì)算,接收到消息的節(jié)點(diǎn)以廣播形式轉(zhuǎn)發(fā)分組。對(duì)于自組織的傳感器網(wǎng)絡(luò),泛洪路由是一種較直接的實(shí)現(xiàn)方法,但消息的“內(nèi)爆”(implosion)和“重疊”(overlap)
2、是其固有的缺陷。為了克服這些缺陷,S.hedetniemi等人提出了Gossiping策略,節(jié)點(diǎn)隨機(jī)選取一個(gè)相鄰節(jié)點(diǎn)轉(zhuǎn)發(fā)它接收到的分組,而不是采用廣播形式。這種方法避免了消息的“內(nèi)爆”現(xiàn)象,但有可能增加端到端的傳輸延時(shí)。 Flooding路由協(xié)議中的內(nèi)爆和重疊問(wèn)題(2) SPIN (sensor protocol for information via negotiation) SPIN是以數(shù)據(jù)為中心的自適應(yīng)路由協(xié)議,通過(guò)協(xié)商機(jī)制來(lái)解決泛洪算法中的“內(nèi)爆”和“重疊”問(wèn)題。傳感器節(jié)點(diǎn)僅廣播采集數(shù)據(jù)的描述信息,當(dāng)有相應(yīng)的請(qǐng)求時(shí),才有目的地發(fā)送數(shù)據(jù)信息。SPIN協(xié)議中有3種類型的消息,即ADV,RE
3、Q和DATA。ADV用于新數(shù)據(jù)廣播。當(dāng)一個(gè)節(jié)點(diǎn)有數(shù)據(jù)可共享時(shí),它以廣播方式向外發(fā)送DATA數(shù)據(jù)包中的元數(shù)據(jù)。REQ用于請(qǐng)求發(fā)送數(shù)據(jù)。當(dāng)一個(gè)節(jié)點(diǎn)希望接收DATA數(shù)據(jù)包時(shí),發(fā)送REQ數(shù)據(jù)包。DATA包含附上元數(shù)據(jù)頭(meta一header)的實(shí)際數(shù)據(jù)包。SPIN協(xié)議有4種不同的形式: SPIN-PP:采用點(diǎn)到點(diǎn)的通信模式,并假定兩節(jié)點(diǎn)間的通信不受其他節(jié)點(diǎn)的干擾,分組不會(huì)丟失,功率沒(méi)有任何限制。要發(fā)送數(shù)據(jù)的節(jié)點(diǎn)通過(guò)ADV向它的相鄰節(jié)點(diǎn)廣播消息,感興趣的節(jié)點(diǎn)通過(guò)REQ發(fā)送請(qǐng)求,數(shù)據(jù)源向請(qǐng)求者發(fā)送數(shù)據(jù)。接收到數(shù)據(jù)的節(jié)點(diǎn)再向它的相鄰節(jié)點(diǎn)廣播ADV消息,如此重復(fù),使所有節(jié)點(diǎn)都有機(jī)會(huì)接收到任何數(shù)據(jù)。 SPIN
4、-EC:在SPIN-PP的基礎(chǔ)上考慮了節(jié)點(diǎn)的功耗,只有能夠順利完成所有任務(wù)且能量不低于設(shè)定閾值的節(jié)點(diǎn)才可參與數(shù)據(jù)交換。 SPIN-BC:設(shè)計(jì)了廣播信道,使所有在有效半徑內(nèi)的節(jié)點(diǎn)可以同時(shí)完成數(shù)據(jù)交換。為了防止產(chǎn)生重復(fù)的REQ請(qǐng)求,節(jié)點(diǎn)在聽到ADV消息以后,設(shè)定一個(gè)隨機(jī)定時(shí)器來(lái)控制REQ請(qǐng)求的發(fā)送,其他節(jié)點(diǎn)聽到該請(qǐng)求,主動(dòng)放棄請(qǐng)求權(quán)利。 SPIN-RL:它是對(duì)SPIN-BC的完善,主要考慮如何恢復(fù)無(wú)線鏈路引入的分組差錯(cuò)與丟失。記錄ADV消息的相關(guān)狀態(tài),如果在確定時(shí)間間隔內(nèi)接收不到請(qǐng)求數(shù)據(jù),則發(fā)送重傳請(qǐng)求,重傳請(qǐng)求的次數(shù)有一定的限制。圖3.2表明了SPIN協(xié)議的路由建立與數(shù)據(jù)傳送。 SPIN協(xié)議的路
5、由建立與數(shù)據(jù)傳送基于數(shù)據(jù)描述的協(xié)商機(jī)制和能量自適應(yīng)機(jī)制的SP創(chuàng)協(xié)議能夠很好地解決傳統(tǒng)的Flooding協(xié)議所帶來(lái)的信息爆炸、信息重復(fù)和資源浪費(fèi)等問(wèn)題。此外,由于協(xié)議中每個(gè)節(jié)點(diǎn)只需知道其單跳鄰居節(jié)點(diǎn)的信息,拓?fù)涓淖兂尸F(xiàn)本地化特征。SP州協(xié)議的缺點(diǎn)是數(shù)據(jù)廣告機(jī)制不能保證數(shù)據(jù)的可靠傳遞,如果對(duì)數(shù)據(jù)感興趣的節(jié)點(diǎn)遠(yuǎn)離源節(jié)點(diǎn)或者在源節(jié)點(diǎn)和目的節(jié)點(diǎn)中間的節(jié)點(diǎn)對(duì)數(shù)據(jù)不感興趣,那么數(shù)據(jù)就不可能被傳遞到目的地。因此,對(duì)于入侵發(fā)現(xiàn)等需要在定期間隔內(nèi)可靠傳遞數(shù)據(jù)的應(yīng)用系統(tǒng)來(lái)說(shuō),SP州并不是一個(gè)很好的選擇。(3) SAR (sequential assignment routing) 在選擇路徑時(shí),有序分配路由(SAR
6、)策略充分考慮了功耗、QoS和分組優(yōu)先權(quán)等特殊要求,采用局部路徑恢復(fù)和多路經(jīng)備份策略,避免節(jié)點(diǎn)或鏈路失敗時(shí)進(jìn)行路由重計(jì)算需要的過(guò)量計(jì)算開銷。為了在每個(gè)節(jié)點(diǎn)與sink節(jié)點(diǎn)間生成多條路經(jīng),需要維護(hù)多個(gè)樹結(jié)構(gòu),每個(gè)樹以落在sink節(jié)點(diǎn)有效傳輸半徑內(nèi)的節(jié)點(diǎn)為根向外生長(zhǎng),枝干的選擇需滿足一定QOS要求并要有一定的能量?jī)?chǔ)備。這一處理使大多數(shù)傳感器節(jié)點(diǎn)可能同時(shí)屬于多個(gè)樹,可任選其一將采集數(shù)據(jù)回傳到sink節(jié)點(diǎn)。(4) LEACH (low energy adaptive clustering hierarchy) LEACH是MIT的Chandrakasan等人為無(wú)線傳感器網(wǎng)絡(luò)設(shè)計(jì)的低功耗自適應(yīng)聚類路由算法
7、。與一般的平面多跳路由協(xié)議和靜態(tài)聚類算法相比,LEACH可以將網(wǎng)絡(luò)生命周期延長(zhǎng)15%,主要通過(guò)隨機(jī)選擇聚類首領(lǐng),平均分擔(dān)中繼通信業(yè)務(wù)來(lái)實(shí)現(xiàn)。LEACH定義了“輪”(round)的概念,一輪由初始化和穩(wěn)定工作兩個(gè)階段組成。為了避免額外的處理開銷,穩(wěn)定態(tài)一般持續(xù)相對(duì)較長(zhǎng)的時(shí)間。 如圖3.4所示: LEACH協(xié)議的時(shí)序圖在初始化階段,聚類首領(lǐng)是通過(guò)下面的機(jī)制產(chǎn)生的。傳感器節(jié)點(diǎn)生成0,1之間的隨機(jī)數(shù),如果大于閾值T,則選該節(jié)點(diǎn)為聚類首領(lǐng).T的計(jì)算方法如下: (3.1)其中p為節(jié)點(diǎn)中成為聚類首領(lǐng)的百分?jǐn)?shù),r是當(dāng)前的輪數(shù)。 當(dāng)簇頭選定之后,簇頭節(jié)點(diǎn)主動(dòng)向網(wǎng)絡(luò)中節(jié)點(diǎn)廣播自己成為簇頭的消息(ADV_CH)。接
8、收到此消息的節(jié)點(diǎn),依據(jù)接收信號(hào)的強(qiáng)度,選擇它所要加入的簇,并發(fā)消息通知相應(yīng)的簇頭(JOIN_REQ)。基于時(shí)分多址(Time Division Multiple Address,簡(jiǎn)稱TDMA)的方式,簇頭節(jié)點(diǎn)為其中的每個(gè)成員分配通信時(shí)隙,并以廣播的形式通知所有的簇內(nèi)節(jié)點(diǎn)(ADVSCH)。這樣保證了簇內(nèi)每個(gè)節(jié)點(diǎn)在指定的傳輸時(shí)隙進(jìn)行數(shù)據(jù)傳輸,而在其他時(shí)間進(jìn)入休眠狀態(tài),減少了能量消耗。在穩(wěn)定工作階段,節(jié)點(diǎn)持續(xù)采集監(jiān)測(cè)數(shù)據(jù),在自身傳輸時(shí)隙到來(lái)時(shí)把監(jiān)測(cè)數(shù)據(jù)傳給簇頭節(jié)點(diǎn)(DATA),如圖3.5所示。簇頭節(jié)點(diǎn)對(duì)接收到數(shù)據(jù)進(jìn)行融合處理之后,發(fā)送到Sink節(jié)點(diǎn),這是一種減小通信業(yè)務(wù)量的合理工作模式。持續(xù)一段時(shí)間
9、以后,整個(gè)網(wǎng)絡(luò)進(jìn)入下一輪工作周期,重新選擇簇頭節(jié)點(diǎn)。 LEACH協(xié)議采用動(dòng)態(tài)轉(zhuǎn)換簇頭的方法來(lái)平均網(wǎng)絡(luò)節(jié)點(diǎn)的能量消耗,使因能量耗盡而失效的節(jié)點(diǎn)呈隨機(jī)分布狀態(tài),因而與一般的多跳路由協(xié)議和靜態(tài)簇算法相比,LEACH可以將網(wǎng)絡(luò)生命周期延長(zhǎng)15%。但是LEACH協(xié)議在每輪固定簇頭節(jié)點(diǎn)后在劃分簇的過(guò)程中,簇頭節(jié)點(diǎn)開銷較大。并且簇頭節(jié)點(diǎn)的選擇無(wú)法達(dá)到最優(yōu),有可能簇頭節(jié)點(diǎn)位于網(wǎng)絡(luò)的邊緣或者幾個(gè)簇頭節(jié)點(diǎn)相鄰,某些節(jié)點(diǎn)不得不傳輸較遠(yuǎn)的距離來(lái)與簇頭通信,這就導(dǎo)致了大量能量消耗。而且LEACH協(xié)議所有簇頭節(jié)點(diǎn)直接與Sink節(jié)點(diǎn)通信,采用連續(xù)數(shù)據(jù)發(fā)送模式和單跳路徑選擇模式,使得每輪中簇頭節(jié)點(diǎn)能耗巨大,因此不適合在大規(guī)模
10、的傳感器網(wǎng)絡(luò)中應(yīng)用。(5) TEEN (threshold sensitive energy efficient sensor network protocol) 依照應(yīng)用模式的不同,通??梢院?jiǎn)單地將無(wú)線自組織網(wǎng)絡(luò)(包括傳感器網(wǎng)絡(luò)和Ad-hoc網(wǎng)絡(luò))分為主動(dòng)(proactive)和響應(yīng)(reactive)兩種類型。主動(dòng)型傳感器網(wǎng)絡(luò)持續(xù)監(jiān)測(cè)周圍的物質(zhì)現(xiàn)象,并以恒定速率發(fā)送監(jiān)測(cè)數(shù)據(jù);而響應(yīng)型傳感器網(wǎng)絡(luò)只是在被觀測(cè)變量發(fā)生突變時(shí)才傳送數(shù)據(jù)。相比之下,響應(yīng)型傳感器網(wǎng)絡(luò)更適合應(yīng)用在敏感時(shí)間的應(yīng)用中。TEEN和LEACH的實(shí)現(xiàn)機(jī)制非常相似,只是前者是響應(yīng)型的,而后者屬于主動(dòng)型傳感器網(wǎng)絡(luò)。在TEEN中定義了
11、硬、軟兩個(gè)門限值,以確定是否需要發(fā)送監(jiān)測(cè)數(shù)據(jù)。當(dāng)監(jiān)測(cè)數(shù)據(jù)第一次超過(guò)設(shè)定的硬門限時(shí),節(jié)點(diǎn)用它作為新的硬門限,并在接著到來(lái)的時(shí)隙內(nèi)發(fā)送它。在接下來(lái)的過(guò)程中,如果監(jiān)測(cè)數(shù)據(jù)的變化幅度大于軟門限界定的范圍,則節(jié)點(diǎn)傳送最新采集的數(shù)據(jù),并將它設(shè)定為新的硬門限。通過(guò)調(diào)節(jié)軟門限值的大小,可以在監(jiān)測(cè)精度和系統(tǒng)能耗之間取得合理的平衡。圖3.6表示的是TEEN協(xié)議中由聚簇構(gòu)成的層次結(jié)構(gòu)。TEEN協(xié)議中由聚簇構(gòu)成的層次結(jié)構(gòu)TENE適用于實(shí)時(shí)性要求較高的應(yīng)用場(chǎng)合,比如入侵警報(bào),爆炸預(yù)警等,用戶可以及時(shí)獲取感興趣的信息。而且用戶可以通過(guò)設(shè)置不同的軟門限方便地平衡監(jiān)測(cè)的準(zhǔn)確性與系統(tǒng)節(jié)能性兩項(xiàng)指標(biāo)。但是這個(gè)方案也有一些不足之處
12、,例如門限值達(dá)不到,節(jié)點(diǎn)就永遠(yuǎn)不會(huì)和簇頭節(jié)點(diǎn)通信,用戶就無(wú)法從網(wǎng)絡(luò)得到任何數(shù)據(jù);沒(méi)有相應(yīng)的機(jī)制去區(qū)分那些沒(méi)有感應(yīng)到足夠大變化的節(jié)點(diǎn)和處于關(guān)閉狀態(tài)的節(jié)點(diǎn),所以TEEN協(xié)議不適合應(yīng)用在。(6) PEGAGIS (power-efficient gathering in sensor information system)PEGASIS由LEACH發(fā)展而來(lái)。它假定組成網(wǎng)絡(luò)的傳感器節(jié)點(diǎn)是同構(gòu)且靜止的。節(jié)點(diǎn)發(fā)送能量遞減的測(cè)試信號(hào),通過(guò)檢測(cè)應(yīng)答來(lái)確定離自己最近的相鄰節(jié)點(diǎn)。在收集數(shù)據(jù)前,首先利用貪心算法將網(wǎng)絡(luò)中的所有節(jié)點(diǎn)連接成一條單鏈。通過(guò)這種方式,網(wǎng)絡(luò)中的所有節(jié)點(diǎn)能夠了解彼此的位置關(guān)系,進(jìn)而每個(gè)節(jié)點(diǎn)依據(jù)自
13、己的位置選擇所屬的聚類,聚類的首領(lǐng)向鏈的兩端發(fā)出收集數(shù)據(jù)的請(qǐng)求,數(shù)據(jù)從單鏈的兩個(gè)端點(diǎn)向首領(lǐng)流動(dòng)。中間節(jié)點(diǎn)在傳遞數(shù)據(jù)前要執(zhí)行融合操作,最終由首領(lǐng)節(jié)點(diǎn)將結(jié)果數(shù)據(jù)傳送給Sink節(jié)點(diǎn)。因?yàn)镻EGASIS中每個(gè)節(jié)點(diǎn)都以最小功率發(fā)送數(shù)據(jù)分組,并有條件完成必要的數(shù)據(jù)融合,減小業(yè)務(wù)流量。因此,整個(gè)網(wǎng)絡(luò)的功耗較小。研究結(jié)果表明,PEGASIS支持的傳感器網(wǎng)絡(luò)的生命周期是LEACH的近兩倍。 4.實(shí)驗(yàn)器材與工具M(jìn)ATLAB5.程序源代碼function x=animation_datasmall=5; medium=20; large=50;% Event_name Animated Color/on/off/t
14、oggle Size anim_def=. Init_Application, 0, 0 0 0 , small, . Packet_Sent, 1, 0 1 0 , small, . Packet_Received, 1, 0 1 0 , small, . Collided_Packet_Received, 0, 1 0 0 , small, . Clock_Tick, 0, 0 0 0 , small, . Channel_Request, 0, 0 0 0 , small, . Channel_Idle_Check, 1, 1 0 0 , small, . Packet_Receive_
15、Start, 0, 0 1 0 , small, . Packet_Receive_End, 0, 0 0 0 , small, . Packet_Transmit_Start, 1, 1 0 0 , medium, . Packet_Transmit_End, 0, 0 1 0 , small;for i=1:length(anim_def) a=anim_defi; x(i)=struct(event, a1, animated, a2, color, a3, size, a4);endfunction application(S)% DO NOT edit simulator code
16、(lines that begin with S;)S; persistent app_data S; global ID tS; t, event, ID, data=get_event(S);S; topology, mote_IDs=prowler(GetTopologyInfo);S; ix=find(mote_IDs=ID);S; if strcmp(event, Init_Application) S; try memory=app_dataix; catch memory=; end, S; endS; switch eventcase Init_Application sign
17、al_strength=1; if ID=1 % first node starts flood Set_Clock(1000) end PrintMessage(i) case Packet_Sent PrintMessage(s) case Packet_Received % data.data % message % data.signal_strength % received signal strength if memory.send p=sim_params(get_app, P); if isempty(p); p=.5; end if randp Send_Packet(ra
18、diostream(data.data, memory.signal_strength); end memory.send=0; PrintMessage(r) endcase Collided_Packet_Received % this is for debug purposes only case Clock_Tick Send_Packet(radiostream(Message for 00111 from Golomb, memory.signal_strength);case GuiInfoRequest disp(sprintf(Memory Dump of mote ID#
19、%d:n,ID); disp(memory) case Application_Stopped % this event is called when simulation is stopped/suspended case Application_Finished % this event is called when simulation is finished otherwise error(Bad event name for application: event)endS; app_dataix=memory;function b=Send_Packet(data);global I
20、D tradio=prowler(GetRadioName);b=feval(radio, Send_Packet, ID, data, t);function b=Set_Clock(alarm_time);global IDprowler(InsertEvents2Q, make_event(alarm_time, Clock_Tick, ID);function PrintMessage(msg)global IDprowler(TextMessage, ID, msg)function LED(msg)global IDprowler(LED, ID, msg)function var
21、argout=infotitle1=Application FLOOD1D;str1= This application illustrates the simple flooding algorithm.; . ;. The sender mote transmits a message. Each mote receiving the;. message retransmits it with probability p. ;. The value of p can be set in the Application Parameters;. window. The default val
22、ue is p=0.5;. ;. If p is too low, the flood dies out before every mote could;. receive the message. If p it too high, the message is;. retransmitted several times after every mote have received it, ;. thus causing an unnecessarily high settling time.;. ;. The optimal value of p highly depends on top
23、ology.;. ;. You can change the topology by editing the file FLOOD1D_TOPOLOGY.;. ;. See also FLOOD2D.;. ;if nargout=0 helpwin( title1, str1, Application Info)else varargout= title1, str1;endfunction param=params;param(1).name=P; param(1).default=0.5;function topology,mote_IDs=topology(varargin);Nx=10
24、; Ny=1; % number of points on the gridix=1;t=;distx=1;disty=5;X=1:distx:(Nx-1)*distx+1;Y=1:disty:(Ny-1)*disty+1;for i=X for j=Y t=t; i,j; endendtopology=t;mote_IDs=1:Nx*Ny; function x=animationpersistent anim_dataif isempty(anim_data) small=5; medium=20; large=50; % Event_name Animated Color/on/off/
25、toggle Size anim_def=. Init_Application, 1, 0 0 0 , small, . Packet_Sent, 2, 1 0 0 , small, . Packet_Received, 3, 1 0 0 , small, . Collided_Packet_Received, 4, 1 0 0 , small, . Clock_Tick, 0, 0 0 0 , small, . Channel_Request, 0, 0 0 0 , small, . Channel_Idle_Check, 1, 1 0 0 , small, . Packet_Receive
26、_Start, 0, 0 1 0 , small, . Packet_Receive_End, 0, 0 0 0 , small, . Packet_Transmit_Start, 1, 1 0 0 , medium, . Packet_Transmit_End, 1, 0 1 0 , small; for i=1:length(anim_def) a=anim_defi; if i=1 anim_data=struct(event, a1, animated, a2, color, a3, size, a4); else anim_data(i)=struct(event, a1, anim
27、ated, a2, color, a3, size, a4); end endendx=anim_data;function application(S)S; persistent app_data S; global ID tS; t, event, ID, data=get_event(S);S; topology, mote_IDs=prowler(GetTopologyInfo);S; ix=find(mote_IDs=ID);S; if strcmp(event, Init_Application) S; try memory=app_dataix; catch memory=; e
28、nd, S; endS; SENDER_ID=sim_params(get_app, Start_Mote); if isempty(SENDER_ID), SENDER_ID=1; endswitch eventcase Init_Application signal_strength=1; memory=struct(send,1, signal_strength, signal_strength); if ID=SENDER_ID % this node starts flood Set_Clock(1000) end PrintMessage(i) case Packet_Sent m
29、emory.send=0; PrintMessage(s) case Packet_Received % data.data % message % data.signal_strength % received signal strength if memory.send p=sim_params(get_app, P); if isempty(p); p=.3; end % p=0.3; % p is forced to 0.3 / Comment this line if you want to use it for optimization if randp Send_Packet(r
30、adiostream(data.data, memory.signal_strength); end memory.send=0; PrintMessage(r) endcase Collided_Packet_Received % this is for debug purposes only case Clock_Tick Send_Packet(radiostream(this is the message, memory.signal_strength); case GuiInfoRequest if isempty(memory) disp(sprintf(Memory Dump o
31、f mote ID# %d:n,ID); disp(memory) else disp(sprintf(No memory dump available for node %d.n,ID); end case Application_Stopped % this event is called when simulation is stopped/suspended case Application_Finished % this event is called when simulation is finished otherwise error(Bad event name for app
32、lication: event)endS; app_dataix=memory;S;function b=Send_Packet(data);global ID tradio=prowler(GetRadioName);b=feval(radio, Send_Packet, ID, data, t);function b=Set_Clock(alarm_time);global IDprowler(InsertEvents2Q, make_event(alarm_time, Clock_Tick, ID);function PrintMessage(msg)global IDprowler(T
33、extMessage, ID, msg)function varargout=infotitle1=Application FLOOD2D;str1= This application illustrates the flooding algorithm in 2D.; . ;. The sender mote transmits a message. Each mote receiving the;. message retransmits it with probability p. ;. The value of p can be set in the Application Param
34、eters;. window. The default value is p=0.5.;. ;. The starting node can also be selected (parameter Start_Mote).;. Try 1 to start from the lower left corner, and 55 to start from;. the center of the (10x10) grid.;. ;. If p is too low, the flood dies out before every mote could;. receive the message. If p it too high, the message is;. retransmitted several times after every mote have received it, ;. thus causing an unnecessarily high set
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國(guó)純水生產(chǎn)線市場(chǎng)調(diào)查研究報(bào)告
- 2025年中國(guó)硬質(zhì)合金路面銑刨刀市場(chǎng)調(diào)查研究報(bào)告
- 2025年中國(guó)直流低壓恒溫烙鐵市場(chǎng)調(diào)查研究報(bào)告
- 財(cái)務(wù)人員保管保密協(xié)議書范本
- 農(nóng)村住宅(宅基地)轉(zhuǎn)讓協(xié)議書范本
- 樣板間租賃合同范本
- 公司班車租賃合同范本
- 二手設(shè)備購(gòu)買合同范本
- 贊助商合作協(xié)議書范本
- 車輛委托寄賣合同范本
- 精雕JDPaint快捷鍵大全
- 燈泡貫流式機(jī)組基本知識(shí)培訓(xùn)ppt課件
- 小學(xué)數(shù)學(xué)四年級(jí)下冊(cè)培優(yōu)補(bǔ)差記錄
- 人教版三年級(jí)下冊(cè)體育與健康教案(全冊(cè)教學(xué)設(shè)計(jì))
- DB61∕T 5006-2021 人民防空工程標(biāo)識(shí)標(biāo)準(zhǔn)
- 土壤學(xué)習(xí)題與答案
- 產(chǎn)品結(jié)構(gòu)設(shè)計(jì)(課堂PPT)
- 第九課_靜止的生命
- 尖尖的東西我不碰(課堂PPT)
- 工程勘察和設(shè)計(jì)承攬業(yè)務(wù)的范圍
- 數(shù)字化影像與PACS教學(xué)大綱
評(píng)論
0/150
提交評(píng)論