專利名稱:基于移動代理的無線傳感器網(wǎng)絡節(jié)點自身位置確定方法
技術領域:
本發(fā)明涉及一種在大規(guī)模無線傳感器網(wǎng)絡中節(jié)點的自身位置確定方法,主要利用分布式計算技術來解決無線傳感器網(wǎng)絡的節(jié)點自身定位問題,屬于分布式計算技術和無線傳感器網(wǎng)絡技術的交叉領域。
背景技術:
無線傳感器網(wǎng)絡是由具有感知、處理和無線通信能力的傳感器節(jié)點通過自組織方式形成的網(wǎng)絡,它能夠使我們延伸至更廣闊的交互空間,獲得圍繞我們周圍動態(tài)的狀態(tài)信息,實現(xiàn)對于外圍世界更加精確而深邃的認識和控制,因而在軍事、環(huán)境、健康、家庭、交通、制造業(yè)、商業(yè)、設施管理、運輸、安全、空間探索和災難拯救等領域有著廣闊的應用前景,對人們的生活和工作方式、產(chǎn)業(yè)發(fā)展和變革產(chǎn)生革命性的影響。
無線傳感器網(wǎng)絡是一種無線的、可自組織的、容錯性高的、動態(tài)的、應用相關的、以數(shù)據(jù)為中心的新型信息網(wǎng)絡,目的在于協(xié)作的感知、采集和處理網(wǎng)絡覆蓋區(qū)域中被監(jiān)測對象的信息。傳感器節(jié)點通常是隨機部署在一定區(qū)域中,執(zhí)行監(jiān)測任務或者對外部目標進行定位和追蹤。為了提供有效的信息,節(jié)點必須首先確定自身的位置。并且,節(jié)點的位置信息還可以用于提高路由效率,為網(wǎng)絡提供命名空間,向部署者報告網(wǎng)絡的覆蓋質(zhì)量,實現(xiàn)網(wǎng)絡的負載均衡和網(wǎng)絡拓撲的自配置等。因此,對無線傳感器網(wǎng)絡中傳感器節(jié)點進行自身的精確定位對各種實際應用有著非常重要的作用。但在大規(guī)模無線傳感器網(wǎng)絡中對傳感器節(jié)點的自身定位不同于傳統(tǒng)的移動Ad-hoc網(wǎng)絡(自組織分組無線網(wǎng)絡),需要適合大規(guī)模無線傳感器網(wǎng)絡的特殊的技術方法。
移動代理技術是一種基于網(wǎng)絡的分布式計算技術,本質(zhì)上是以一組分散的、松散耦合的、可移動的智能結構在分布式網(wǎng)絡環(huán)境中實現(xiàn)群體間高效率相互協(xié)作聯(lián)合求解,解決多種協(xié)作策略和方案下的沖突和矛盾。移動代理具有自主性、主動性、反應性、移動性、社會性和智能性等特性,具有硬件或軟件的形式,能夠?qū)崿F(xiàn)系統(tǒng)的協(xié)同和自治,可以很好應用于傳感器節(jié)點的自身定位技術中,并解決目前這一領域中難以解決的一些關鍵問題。尤其在無線傳感器網(wǎng)絡帶寬有限、能量受限、不穩(wěn)定的動態(tài)無線環(huán)境中,移動代理有助于降低數(shù)據(jù)流量和通信開銷;減少感知數(shù)據(jù)冗余;節(jié)約能量,有效延長網(wǎng)絡系統(tǒng)生存期。
發(fā)明內(nèi)容
技術問題本發(fā)明的目的是提供一種大規(guī)模無線傳感器網(wǎng)絡中基于移動代理的無線傳感器網(wǎng)絡節(jié)點自身位置確定方法,解決大規(guī)模無線傳感器網(wǎng)絡中節(jié)點的自身定位問題,從而為無線傳感器網(wǎng)絡的各種應用提供有效和可靠的保證。
技術方案本發(fā)明是一種策略性方法,基于移動代理群組協(xié)作性的完成大規(guī)模無線傳感器網(wǎng)絡節(jié)點的自身定位。我們首先給出幾種特殊移動代理的定義派發(fā)代理在無線傳感器網(wǎng)絡中,節(jié)點利用移動代理的移動性將自己的位置等相關信息通過洪泛策略發(fā)送給附近的傳感器節(jié)點,為網(wǎng)絡中各個節(jié)點進行自身定位計算提供前提。
智能組網(wǎng)代理對派發(fā)代理發(fā)送過來的信息進行綜合分析、整理,從而將整個無線傳感器網(wǎng)絡劃分成若干個子網(wǎng)絡,再對各個子網(wǎng)絡中的節(jié)點分別通過各類移動代理計算出各自的精確位置,以節(jié)省節(jié)點的能耗。
測距代理利用移動代理的移動性,測量和計算出無線傳感器網(wǎng)絡節(jié)點之間的距離。
定位代理根據(jù)上述各種移動代理測量出的相關數(shù)據(jù),利用移動代理攜帶數(shù)據(jù)的特性,計算出節(jié)點自身的精確位置。
一、體系結構圖1給出了一個運用這種方法的無線傳感器網(wǎng)絡結構圖,網(wǎng)絡中的傳感器節(jié)點主要分為如下三類標準位置節(jié)點這類節(jié)點通過GPS(全球定位系統(tǒng))定位等手段已經(jīng)預先知道自己的精確位置,為無線傳感器網(wǎng)絡中其他需要定位的節(jié)點提供位置計算參考。這類節(jié)點必須事先散布在無線傳感器網(wǎng)絡中。
已知位置節(jié)點通過多種移動代理與標準位置節(jié)點進行通訊,并參考標準位置節(jié)點的位置信息,已經(jīng)計算出了自己的精確位置。并將自己的位置信息提供給未知位置節(jié)點作為參考,方便未知位置節(jié)點計算出他們的精確位置。
未知位置節(jié)點不知道自己的位置,需要參考標準位置節(jié)點或者已知位置節(jié)點的位置信息,通過各種移動代理計算出自己的精確位置。
二、方法流程針對大規(guī)模無線傳感器網(wǎng)絡的特殊性并致力于保證節(jié)點位置信息的精確性,兼顧了減少節(jié)點位置計算過程中產(chǎn)生的網(wǎng)絡數(shù)據(jù)流量和數(shù)據(jù)計算量,本發(fā)明提出了一種大規(guī)模無線傳感器網(wǎng)絡中基于移動代理的節(jié)點自身定位方案在大規(guī)模無線傳感器網(wǎng)絡中預先散布一些標準位置節(jié)點,利用智能組網(wǎng)代理的移動性和洪泛策略將一個大規(guī)模無線傳感器網(wǎng)絡劃分為若干個子網(wǎng)絡;再在子網(wǎng)絡中利用測距代理按照分治策略獲得未知位置節(jié)點與標準位置節(jié)點或已知位置節(jié)點之間距離,進而利用定位代理攜帶數(shù)據(jù)的特性計算出每個未知位置節(jié)點的自身位置。
本發(fā)明的基于移動代理的無線傳感器網(wǎng)絡節(jié)點自身位置確定方法通過派發(fā)代理、智能組網(wǎng)代理、測距代理、定位代理這些移動代理的相互協(xié)作,完成無線傳感器網(wǎng)絡節(jié)點的自身定位,所述方法包含的步驟為步驟1.)初始狀態(tài)時,網(wǎng)絡中只存在標準位置節(jié)點和未知位置節(jié)點兩類節(jié)點,標準位置節(jié)點利用派發(fā)代理將自己的節(jié)點編號、位置、時間戳等信息發(fā)送給周圍一定范圍內(nèi)的節(jié)點,步驟2.)每個節(jié)點都維護一張本地表,當未知位置節(jié)點接收到派發(fā)代理發(fā)送的來自標準位置節(jié)點或者已知位置節(jié)點的信息后,將上述信息存儲到本地表格中,表中字段有節(jié)點ID、位置、距離、狀態(tài)、時間戳,其中狀態(tài)字段分為標準位置、未知位置、已知位置三種,步驟3.)未知位置節(jié)點通過智能組網(wǎng)代理對本地表中的數(shù)據(jù)進行綜合分析,篩選出對自己定位有用的標準位置節(jié)點或已知位置節(jié)點,組成一個子網(wǎng),標準位置節(jié)點a、b、c的位置信息對未知位置節(jié)點1和2的定位都是有用的,因此劃分出一個子網(wǎng),步驟4.)在各個子網(wǎng)內(nèi),未知位置節(jié)點通過測距代理分別測量其到標準位置節(jié)點或已知位置節(jié)點之間的距離,子網(wǎng)中節(jié)點1通過測距代理分別測量自己到標準位置節(jié)點a、b、c的距離,步驟5.)各個子網(wǎng)內(nèi)的每個未知位置節(jié)點使用測距代理測必須至少測量其到三個標準位置節(jié)點或已知位置節(jié)點的距離,然后使用定位代理通過數(shù)學方法可以計算出自身的精確位置;具體方法如下步驟6.)子網(wǎng)內(nèi)其他未知位置節(jié)點通過上述步驟2.)~步驟5.)計算出自己的精確位置;步驟7.)子網(wǎng)內(nèi)有些節(jié)點不能利用自己本地表中標準位置節(jié)點或已知位置節(jié)點信息計算出自己精確位置,可以通過步驟1.)重新劃分子網(wǎng),然后重復步驟2.)~步驟5.)計算出自己的精確位置。
2.根據(jù)權利要求1所述的基于移動代理的無線傳感器網(wǎng)絡節(jié)點自身位置確定方法,其特征在于在步驟4.)中,在子網(wǎng)中節(jié)點1通過測距代理分別測量自己到標準位置節(jié)點a、b、c的距離,具體方法如下41).未知位置節(jié)點1向標準位置節(jié)點a發(fā)送一個測距代理,包括節(jié)點編號ID、發(fā)送時間ts;42).標準位置節(jié)點a接收到未知位置節(jié)點1發(fā)送來的測距代理后,立即將該代理發(fā)回給未知位置節(jié)點1,未知位置節(jié)點1接收到從標準位置節(jié)點a發(fā)來的測距代理后,立即記錄下接收時間te;43).測距代理通過計算 ,ts為發(fā)送代理時間,v為無線信號的傳播速度,是已知量,從而得到未知位置節(jié)點1到標準位置節(jié)點a的距離;44).測距代理對未知位置節(jié)點1的本地表中節(jié)點ID號為標準位置節(jié)點a的那條記錄進行修改,將計算出的未知位置節(jié)點1與標準位置節(jié)點a的距離填入該記錄的距離字段內(nèi);45).未知位置節(jié)點1重復步驟41)~44)的方法,分別測出其到標準位置節(jié)點b和c的距離。
3.根據(jù)權利要求1所述的基于移動代理的無線傳感器網(wǎng)絡節(jié)點自身位置確定方法,其特征在于步驟5.)中,使用定位代理通過數(shù)學方法計算出自身的精確位置的具體方法如下51).定位代理首先收集未知位置節(jié)點1的本地表中節(jié)點ID為標準位置節(jié)點a、b、c的記錄,取出其位置和距離字段的內(nèi)容,這里將距離記為變量d1、d2、d3,將位置記為(x1,y1)、(x2,y2)、(x3,y3),通過步驟52)中的公式①計算出未知位置節(jié)點的具體位置;如果未知位置節(jié)點通過測距代理已經(jīng)測到其到超過三個標準位置節(jié)點或已知位置節(jié)點的距離分別為d1、…、dn,則通過步驟52)中的公式②計算出未知位置節(jié)點的具體位置;52).通過如下公式,計算出未知位置節(jié)點1的精確位置xy=2(x1-x3)2(y1-y3)2(x2-x3)2(y2-y3)-1x12-x32+y12-y32+d32-d12x22-x32+y22-y32+d32-d22]]>①其中(x,y)為未知位置節(jié)點1的坐標;當未知位置節(jié)點測到的距離值超過三個時,其自身位置的計算公式為xy=2(x1-xn)2(y1-yn)......2(xn-1-xn)2(yn-1-yn)-1x12-xn2+y12-yn2+dn2-d12...xn-12-xn2+yn-12-yn2+dn2-dn-12]]>②其中(x,y)為未知位置節(jié)點1的坐標,(x1,y1)、…、(xn,yn)分別為各個標準位置節(jié)點或已知位置節(jié)點的坐標;53).定位代理計算出未知位置節(jié)點1的精確位置后,自動轉(zhuǎn)換為已知位置節(jié)點,其狀態(tài)變?yōu)橐阎恢茫⑵湮恢眯畔⑼ㄟ^洪泛策略通知網(wǎng)絡中其他未知位置節(jié)點,對節(jié)點ID為未知位置節(jié)點1的記錄進行修改。
有益效果本發(fā)明方法基于移動代理的特性,在大規(guī)模無線傳感器網(wǎng)絡中,提出了一種節(jié)點自身位置確定的新方法,主要用于解決大規(guī)模無線傳感器網(wǎng)絡中節(jié)點自身定位的問題,通過這種方法,不需要給傳感器節(jié)點添加額外的硬件,并且可以減少傳感器節(jié)點之間的通信消耗、降低計算量、提高傳感器節(jié)點的定位精度。下面我們給出具體的說明1.移動代理是將計算移往數(shù)據(jù)而并非將數(shù)據(jù)移往計算,這樣減少了網(wǎng)上原始數(shù)據(jù)的流量,降低了網(wǎng)絡負載,并可以消除網(wǎng)絡延遲帶來的隱患。
2.通過智能組網(wǎng)代理將一個大規(guī)模的無線傳感器網(wǎng)絡劃分為多個子網(wǎng),并逐一進行信息的獲取和匯總,提高了運行效率,并減少了無線傳感器網(wǎng)絡節(jié)點之間的通訊量,節(jié)省了節(jié)點的能耗。
3.本方法將任務嵌入到各個移動代理中,派遣到網(wǎng)絡上,之后,移動代理獨立創(chuàng)建它的進程,異步、自主的完成所肩負的任務;無線傳感器接點則可以在這之后再連接上網(wǎng)絡,收回移動代理,取回服務結果。這樣不要求節(jié)點間保持持續(xù)的連接,減少了節(jié)點的能量消耗。
4.無線傳感器節(jié)點在各自的子網(wǎng)內(nèi)與與其有關的節(jié)點進行通信,維護自己的本地表,在分析綜合的基礎上進行精確的數(shù)學計算,減少了計算量,提高了傳感器節(jié)點的定位精度。
圖1是某大規(guī)模無線傳感器網(wǎng)絡的結構圖。說明傳感器節(jié)點如何通過移動代理進行自身定位。
圖2是標準位置節(jié)點節(jié)點通過派發(fā)代理發(fā)送信息的示意圖。
圖3是智能組網(wǎng)代理將無線傳感器網(wǎng)絡分為若干個子網(wǎng)。圖為其中一個子網(wǎng)示意圖。
圖4是無線傳感器網(wǎng)絡中某一個子網(wǎng)內(nèi)節(jié)點測距的示意圖。
具體實施例方式
本發(fā)明的具體步驟如下步驟1.)初始狀態(tài)時,網(wǎng)絡中只存在標準位置節(jié)點和未知位置節(jié)點兩類節(jié)點。標準位置節(jié)點利用派發(fā)代理將自己的節(jié)點編號、位置、時間戳等信息發(fā)送給周圍一定范圍內(nèi)的節(jié)點,如圖2所示;步驟2.)每個節(jié)點都維護一張本地表,當未知位置節(jié)點接收到派發(fā)代理發(fā)送的來自標準位置節(jié)點或者已知位置節(jié)點的信息后,將上述信息存儲到本地表格中。表中字段有節(jié)點ID、位置、距離、狀態(tài)、時間戳等,其中狀態(tài)字段分為標準位置、未知位置、已知位置三種;步驟3.)未知位置節(jié)點通過智能組網(wǎng)代理對本地表中的數(shù)據(jù)進行綜合分析,篩選出對自己定位有用的標準位置節(jié)點或已知位置節(jié)點,組成一個子網(wǎng)。如圖3所示,標準位置節(jié)點a、b、c的位置信息對未知位置節(jié)點1和2的定位都是有用的,因此劃分出一個子網(wǎng);步驟4.)在各個子網(wǎng)內(nèi),未知位置節(jié)點通過測距代理分別測量其到標準位置節(jié)點或已知位置節(jié)點之間的距離。如圖3所示,子網(wǎng)中節(jié)點1通過測距代理分別測量自己到標準位置節(jié)點a、b、c的距離,如圖4所示。具體方法如下(1)未知位置節(jié)點1向標準位置節(jié)點a發(fā)送一個測距代理,包括節(jié)點編號ID、發(fā)送時間ts;(2)標準位置節(jié)點a接收到未知位置節(jié)點1發(fā)送來的測距代理后,立即將該代理發(fā)回給未知位置節(jié)點1,未知位置節(jié)點1接收到從標準位置節(jié)點a發(fā)來的測距代理后,立即記錄下接收時間te;(3)測距代理通過計算 (v為無線信號的傳播速度,是已知量),從而得到未知位置節(jié)點1到標準位置節(jié)點a的距離;(4)測距代理對未知位置節(jié)點1的本地表中節(jié)點ID號為標準位置節(jié)點a的那條記錄進行修改,將計算出的未知位置節(jié)點1與標準位置節(jié)點a的距離填入該記錄的距離字段內(nèi);(5)未知位置節(jié)點1重復步驟(1)~(4)的方法,分別測出其到標準位置節(jié)點b和c的距離;步驟5.)各個子網(wǎng)內(nèi)的每個未知位置節(jié)點必須至少測量其到三個標準位置節(jié)點或已知位置節(jié)點的距離,然后通過數(shù)學方法可以計算出自身的精確位置。例如在圖4所示子網(wǎng)內(nèi),當未知位置節(jié)點通過測距代理測出所有子網(wǎng)內(nèi)標準位置節(jié)點與之的距離后,通過定位代理進行節(jié)點的自身定位計算,具體方法如下(1)定位代理首先收集未知位置節(jié)點1的本地表中節(jié)點ID為標準位置節(jié)點a、b、c的記錄,取出其位置和距離字段的內(nèi)容,這里將距離記為變量d1、d2、d3,將位置記為(x1,y1)、(x2,y2)、(x3,y3),通過步驟(2)中的公式①計算出未知位置節(jié)點的具體位置;如果未知位置節(jié)點通過測距代理已經(jīng)測到其到超過三個標準位置節(jié)點或已知位置節(jié)點的距離分別為d1、…、dn,則通過步驟(2)中的公式②計算出未知位置節(jié)點的具體位置;(2)通過如下公式,計算出未知位置節(jié)點1的精確位置xy=2(x1-x3)2(y1-y3)2(x2-x3)2(y2-y3)-1x12-x32+y12-y32+d32-d12x22-x32+y22-y32+d32-d22]]>①其中(x,y)為未知位置節(jié)點1的坐標;當未知位置節(jié)點測到的距離值超過三個時,其自身位置的計算公式為
xy=2(x1-xn)2(y1-yn)......2(xn-1-xn)2(yn-1-yn)-1x12-xn2+y12-yn2+dn2-d12...xn-12-xn2+yn-12-yn2+dn2-dn-12]]>②其中(x,y)為未知位置節(jié)點1的坐標,(x1,y1)、…、(xn,yn)分別為各個標準位置節(jié)點或已知位置節(jié)點的坐標;(3)定位代理計算出未知位置節(jié)點1的精確位置后,自動轉(zhuǎn)換為已知位置節(jié)點,其狀態(tài)變?yōu)橐阎恢?,并將其位置信息通過洪泛策略通知網(wǎng)絡中其他未知位置節(jié)點,對節(jié)點ID為未知位置節(jié)點1的記錄進行修改;步驟6.)子網(wǎng)內(nèi)其他未知位置節(jié)點通過上述步驟2.)~步驟5.)計算出自己的精確位置;步驟7.)子網(wǎng)內(nèi)有些節(jié)點不能利用自己本地表中標準位置節(jié)點或已知位置節(jié)點信息計算出自己精確位置,可以通過步驟1.)重新劃分子網(wǎng),然后重復步驟2.)~步驟5.)計算出自己的精確位置。
下面對附圖本發(fā)明的某些實例作更詳細的描述。
根據(jù)圖1,本發(fā)明所述大規(guī)模無線傳感器網(wǎng)絡中首先部署一定數(shù)量的標準位置節(jié)點,未知位置節(jié)點根據(jù)標準位置節(jié)點的相關信息計算出自身的精確位置。每個未知位置節(jié)點維護一個本地表,存放網(wǎng)內(nèi)其他節(jié)點的相關信息。首先,通過智能組網(wǎng)代理將整個網(wǎng)絡劃分為若干個子網(wǎng)。每個未知位置節(jié)點的本地表中存放子網(wǎng)內(nèi)其他節(jié)點的信息,包含節(jié)點ID、位置、距離、狀態(tài)、時間戳,其中狀態(tài)字段有標準位置、未知位置、已知位置三種值。節(jié)點根據(jù)這些信息通過移動代理計算出自己的精確位置。
具體實施方式
為(1)標準位置節(jié)點或已知位置節(jié)點利用派發(fā)代理將自己的節(jié)點編號、位置、時間戳等信息發(fā)送給周圍一定范圍內(nèi)的節(jié)點,如圖2所示;(2)未知位置節(jié)點接收到派發(fā)代理發(fā)送的來自標準位置節(jié)點的信息后,將上述信息存儲到本地表中,并將表中狀態(tài)字段置為“標準位置”或“已知位置”;(3)未知位置節(jié)點通過智能組網(wǎng)代理對本地表中的數(shù)據(jù)進行綜合分析,將對自己定位有用的標準位置節(jié)點或已知位置節(jié)點篩選出來,組成一個子網(wǎng)。例如在圖3中,標準位置節(jié)點a、b、c的位置信息對未知位置節(jié)點1和2的定位都是有用的,因此劃分出一個圖示子網(wǎng);(4)在圖3所示子網(wǎng)中,節(jié)點1通過測距代理分別測量自己到標準位置節(jié)點a、b、c的距離,如圖4所示。具體測距方法為①未知位置節(jié)點1向標準位置節(jié)點a發(fā)送一個測距代理,包括節(jié)點編號ID、發(fā)送時間ts;②標準位置節(jié)點a接收到未知位置節(jié)點1發(fā)送來的測距代理后,立即將該代理發(fā)回給未知位置節(jié)點1,未知位置節(jié)點1接收到從標準位置節(jié)點a發(fā)來的測距代理后,立即記錄下接收時間te;③測距代理通過計算 (ts為發(fā)送代理時間,v為無線信號的傳播速度,是已知量),從而得到未知位置節(jié)點1到標準位置節(jié)點a的距離;④測距代理對未知位置節(jié)點1的本地表中節(jié)點ID號為標準位置節(jié)點a的那條記錄進行修改,將計算出的未知位置節(jié)點1與標準位置節(jié)點a的距離填入該記錄的距離字段內(nèi);⑤未知位置節(jié)點1重復步驟①~④的測距方法,分別測出其到標準位置節(jié)點b和c的距離;(5)未知位置節(jié)點1根據(jù)前面測出的到標準位置節(jié)點a、b、c的距離,通過定位代理進行節(jié)點的自身定位計算,具體方法如下①定位代理首先將未知位置節(jié)點1的本地表中節(jié)點ID為標準位置節(jié)點a、b、c的記錄中位置和距離字段的內(nèi)容取出,將距離分別記為變量d1、d2、d3,將位置分別記為(x1,y1)、(x2,y2)、(x3,y3);②通過如下公式,計算出未知位置節(jié)點1的精確位置xy=2(x1-x3)2(y1-y3)2(x2-x3)2(y2-y3)-1x12-x32+y12-y32+d32-d12x22-x32+y22-y32+d32-d22]]>其中(x,y)為未知位置節(jié)點1的坐標;③定位代理計算出未知位置節(jié)點1的精確位置后,該節(jié)點隨即自動轉(zhuǎn)變?yōu)橐阎恢霉?jié)點,同時將其狀態(tài)改變?yōu)椤耙阎恢谩?,并將其位置信息通過洪泛策略通知網(wǎng)絡中其他未知位置節(jié)點,對節(jié)點ID為未知位置節(jié)點1的記錄作相應的修改;(6)子網(wǎng)內(nèi)其他未知位置節(jié)點重復上述步驟(2)~(5),從而計算出自己的精確位置;
(7)子網(wǎng)內(nèi)那些不能利用自己本地表中標準位置節(jié)點或已知位置節(jié)點信息計算出自己精確位置的節(jié)點,則重復步驟(1),重新劃分子網(wǎng),然后再重復步驟(2)~(5),計算出自己的精確位置。
權利要求
1.一種基于移動代理的無線傳感器網(wǎng)絡節(jié)點自身位置確定方法,其特征在于通過派發(fā)代理、智能組網(wǎng)代理、測距代理、定位代理這些移動代理的相互協(xié)作,完成無線傳感器網(wǎng)絡節(jié)點的自身定位,所述方法包含的步驟為步驟1.)初始狀態(tài)時,網(wǎng)絡中只存在標準位置節(jié)點和未知位置節(jié)點兩類節(jié)點,標準位置節(jié)點利用派發(fā)代理將自己的節(jié)點編號、位置、時間戳等信息發(fā)送給周圍一定范圍內(nèi)的節(jié)點,步驟2.)每個節(jié)點都維護一張本地表,當未知位置節(jié)點接收到派發(fā)代理發(fā)送的來自標準位置節(jié)點或者已知位置節(jié)點的信息后,將上述信息存儲到本地表格中,表中字段有節(jié)點ID、位置、距離、狀態(tài)、時間戳,其中狀態(tài)字段分為標準位置、未知位置、已知位置三種,步驟3.)未知位置節(jié)點通過智能組網(wǎng)代理對本地表中的數(shù)據(jù)進行綜合分析,篩選出對自己定位有用的標準位置節(jié)點或已知位置節(jié)點,組成一個子網(wǎng),標準位置節(jié)點a、b、c的位置信息對未知位置節(jié)點1和2的定位都是有用的,因此劃分出一個子網(wǎng),步驟4.)在各個子網(wǎng)內(nèi),未知位置節(jié)點通過測距代理分別測量其到標準位置節(jié)點或已知位置節(jié)點之間的距離,子網(wǎng)中節(jié)點1通過測距代理分別測量自己到標準位置節(jié)點a、b、c的距離,步驟5.)各個子網(wǎng)內(nèi)的每個未知位置節(jié)點使用測距代理測必須至少測量其到三個標準位置節(jié)點或已知位置節(jié)點的距離,然后使用定位代理通過數(shù)學方法可以計算出自身的精確位置;具體方法如下步驟6.)子網(wǎng)內(nèi)其他未知位置節(jié)點通過上述步驟2.)~步驟5.)計算出自己的精確位置;步驟7.)子網(wǎng)內(nèi)有些節(jié)點不能利用自己本地表中標準位置節(jié)點或已知位置節(jié)點信息計算出自己精確位置,可以通過步驟1.)重新劃分子網(wǎng),然后重復步驟2.)~步驟5.)計算出自己的精確位置。
2.根據(jù)權利要求1所述的基于移動代理的無線傳感器網(wǎng)絡節(jié)點自身位置確定方法,其特征在于在步驟4.)中,在子網(wǎng)中節(jié)點1通過測距代理分別測量自己到標準位置節(jié)點a、b、c的距離,具體方法如下41).未知位置節(jié)點1向標準位置節(jié)點a發(fā)送一個測距代理,包括節(jié)點編號ID、發(fā)送時間ts;42).標準位置節(jié)點a接收到未知位置節(jié)點1發(fā)送來的測距代理后,立即將該代理發(fā)回給未知位置節(jié)點1,未知位置節(jié)點1接收到從標準位置節(jié)點a發(fā)來的測距代理后,立即記錄下接收時間te;43).測距代理通過計算 ,ts為發(fā)送代理時間,v為無線信號的傳播速度,是已知量,從而得到未知位置節(jié)點1到標準位置節(jié)點a的距離;44).測距代理對未知位置節(jié)點1的本地表中節(jié)點ID號為標準位置節(jié)點a的那條記錄進行修改,將計算出的未知位置節(jié)點1與標準位置節(jié)點a的距離填入該記錄的距離字段內(nèi);45).未知位置節(jié)點1重復步驟41)~44)的方法,分別測出其到標準位置節(jié)點b和c的距離。
3.根據(jù)權利要求1所述的基于移動代理的無線傳感器網(wǎng)絡節(jié)點自身位置確定方法,其特征在于步驟5.)中,使用定位代理通過數(shù)學方法計算出自身的精確位置的具體方法如下51).定位代理首先收集未知位置節(jié)點1的本地表中節(jié)點ID為標準位置節(jié)點a、b、c的記錄,取出其位置和距離字段的內(nèi)容,這里將距離記為變量d1、d2、d3,將位置記為(x1,y1)、(x2,y2)、(x3,y3),通過步驟52)中的公式①計算出未知位置節(jié)點的具體位置;如果未知位置節(jié)點通過測距代理已經(jīng)測到其到超過三個標準位置節(jié)點或已知位置節(jié)點的距離分別為d1、…、dn,則通過步驟52)中的公式②計算出未知位置節(jié)點的具體位置;52).通過如下公式,計算出未知位置節(jié)點1的精確位置xy=2(x1-x3)2(y1-y3)2(x2-x3)2(y2-y3)-1x12-x32+y12-y32+d32-d12x22-x32+y22-y32+d32-d22]]>①其中(x,y)為未知位置節(jié)點1的坐標;當未知位置節(jié)點測到的距離值超過三個時,其自身位置的計算公式為xy=2(x1-xn)2(y1-yn)······2(xn-1-xn)2(yn-1-yn)-1x12-xn2+y12-yn2+dn2-d12···xn-12-xn2+yn-12-yn2+dn2-dn-12]]>②其中(x,y)為未知位置節(jié)點1的坐標,(x1,y1)、…、(xn,yn)分別為各個標準位置節(jié)點或已知位置節(jié)點的坐標;53).定位代理計算出未知位置節(jié)點1的精確位置后,自動轉(zhuǎn)換為已知位置節(jié)點,其狀態(tài)變?yōu)橐阎恢?,并將其位置信息通過洪泛策略通知網(wǎng)絡中其他未知位置節(jié)點,對節(jié)點ID為未知位置節(jié)點1的記錄進行修改。
全文摘要
基于移動代理的無線傳感器網(wǎng)絡節(jié)點自身位置確定方法涉及一種在大規(guī)模無線傳感器網(wǎng)絡中節(jié)點的自身位置確定方法,利用分布式計算技術來解決無線傳感器網(wǎng)絡的節(jié)點自身定位問題,利用智能組網(wǎng)代理的移動性和洪泛策略將一個大規(guī)模無線傳感器網(wǎng)絡劃分為若干個子網(wǎng)絡,在各個子網(wǎng)中按照分治策略,利用移動代理攜帶數(shù)據(jù)的特性,根據(jù)標準位置節(jié)點的位置信息,通過測距代理和定位代理計算出每個未知位置節(jié)點的自身位置。解決了大規(guī)模無線傳感器網(wǎng)絡中節(jié)點的自身定位問題,不需給無線傳感器網(wǎng)絡節(jié)點添加額外的硬件,減少了傳感器節(jié)點之間的通信消耗,降低了節(jié)點的計算量,保證了傳感器節(jié)點的定位精度,從而為無線傳感器網(wǎng)絡的各種應用提供了有效和可靠的保證。
文檔編號G01S5/00GK101014010SQ20071001997
公開日2007年8月8日 申請日期2007年2月5日 優(yōu)先權日2007年2月5日
發(fā)明者王汝傳, 蔣崢崢, 陳志 , 葉寧, 孫力娟, 黃海平 申請人:南京郵電大學