導航:首頁 > 源碼編譯 > zigbee演算法

zigbee演算法

發布時間:2025-08-03 10:15:43

Ⅰ 51GIS學院分享室內導航定位技術研究進展與展望

室內導航定位技術研究進展與展望的答案為

一、室內導航定位技術的主要進展

  1. 多種定位方法的發展:室內定位系統大都基於臨近探測、三角定位、多邊定位、指紋定位法等方法實現,為了提高精度,常採用組合定位的方法。近年來,針對行人航位推演算法和指紋法的改進演算法研究頗多,旨在減少漂移誤差和提高定位精度。
  2. 基於感測器的定位技術:包括紅外線定位、超聲波定位、慣性導航定位和視覺定位等。這些技術通過不同的原理採集位置信息,如紅外線採用多邊定位,超聲波通過計算時間差測距,慣性導航利用感測器採集參數信息,視覺定位則採用圖像匹配等方法。
  3. 基於射頻信號的定位技術:如WiFi定位、藍牙定位、紫蜂定位、蜂窩網路定位和射頻識別定位等。其中,WiFi定位因其低成本和廣泛適用性而備受關注。藍牙定位和ZigBee定位具有功耗低、近距離等優點,但穩定性差、受環境干擾大。射頻識別定位則具有輻射距離遠、定位精度高等特點。

二、室內導航定位技術的未來展望

  1. 多技術融合與演算法優化:融合多種定位技術進行室內定位是目前研究的熱點。未來將繼續探索新的多技術融合方案,以及信息融合演算法的優化,以提高定位的准確性和穩定性。
  2. 低功耗優化:隨著物聯網設備的普及,低功耗成為室內導航定位技術的重要發展方向。未來將致力於優化設備功耗,延長設備使用壽命。
  3. 尋找新的定位源和方法:為了突破現有技術的局限,未來將積極尋找新的定位源和定位方法,如利用5G網路等新技術進行室內定位。
  4. 注重數據安全與隱私保護:隨著室內導航定位技術的廣泛應用,數據安全與隱私問題日益凸顯。未來將加強數據安全技術研究,確保用戶位置信息的隱私和安全。

Ⅱ zigbee路由協議具有怎樣的特點

一、ZigBee網路層次結構與地址分配機制

ZigBee網路中的所有節點都有兩個地址:一個16位網路短地址和一個64位IEEE擴展地址。其中16位網路地址僅僅在網路內部使用,用於路由機制和數據傳輸。這個地址是在節點加入網路時由

其父節點動態分配的。當網路中的節點允許一個新節點通過它加入網路時,它們之間就形成了父子關系。所有加入ZigBee網路的節點一同組成一棵邏輯樹,邏輯樹中的每一個節點都擁有以下兩個參量:

1)16-bit的網路地址。只負責節點之間數據傳輸

2)網路深度。即從該節點到根節點協調器的最短跳數,標識了該節點在網

絡拓撲圖中的層次位置。

當協調器(coordinator)建立了一個新的網路後,它首先將自己的16位網路地址初始化為O,同時初始化自己的網路深度Deptg,=0。


下通過一個具體的實例來說明ZigBee網路父節點為子節點分配16位地址的規范。假設一個節點Node(n)想要加入網路。Node(n)首先發起網路
發現過程,獲取信道上的信標並進行信道選擇後,決定連接到已經在網路中的節點Node(k)。隨後Node(n)向Node(k)發起入網的關聯請求。關
聯請求獲得批准後,Node(n)式加入網路。Node(k)稱為Node(n)的父節點。可以假設已經存在在網路中的父節點Node(k)的地址為
Depthk=Depthk+1。


圖是ZigBee樹狀結構視圖。這里引入三個輔助參數: 參數表示每個深度可以容納的最大子節點個數(Max Children),
表示每個深度可以容納的最大路由器個數(Max Router),。
表示整個網路的最大深度。根據以上說明,ZigBee網路父節點為網路深度d,子節點進行地址分配的規則如下:

(1)假設節點Node(n)是接入其父節點的第n個簡化功能設備節點(RED),即沒有路由能力的節點,則它的父節點Node(n)將會為它分配如F的地址:

(2)設節點Node(n)是接入其父節點的第n個全功能設備節點(FFD),即具各路由能力的節點,則它的父節點Node(n)將會為它分配如下的地址:

其中

當一個路由節點的 為0時,它就不再具備為子節點分配地址的能力,即該路由節點不能在接收新的節點加入網路。

二、ZigBee路由協議分析


由技術主要作用是為數據以最佳路徑通過通信子網到達目的節點提供服務。在傳統的OSI參考模型中,網路層實現路由功能。路由協議是自組網體系結構中不可或
缺的重要組成部分,其主要作用是發現和維護路由.具體的說主要有以下幾個方面:監控網路拓撲結構的變化,交換路由信息,確定目的節點的位置,產生、維護以
及取消路由,選擇路由並轉發數據。。為了達到低成本,低功耗,可靠性高的設計目標,ZigBee協議採用以下兩種演算法的結合體作為自身的路由演算法[1]
[2]。

(1) AODV:Ad-Hoc On-Demand Distance Vector(按需距離矢量路由)

(2) Cluster-Tree algorithm(樹型網路結構路由)


中AODV路由協議是一種按需路由協議,利用擴展環搜索的辦法來限制搜索發現過的目的節點的范圍,支持組播,可以實現在ZigBee節點間動態的,自發的
路由,使節點很快的獲得通向所需目的的的路由。這也是ZigBee路由協議的核心。針對自身的特點,ZigBee網路中使用一種簡化版本的AODV協議
(AODV Junior,AODVjr[3])。

Cluster-Tree演算法包括地址的分配(configuration of addresses)與定址路由兩部分(addresses routing)。包括子節點的16位網路短地址的分配,以及根據目的節點的網路地址來計算下一跳的演算法。


為兩種演算法的結合體,ZigBee網路中,節點可以按照網路樹狀結構的父子關系使用Cluster-Tree演算法選擇路徑。即每一個節點都會試圖將收到的
信息包轉發給自己的後代節點,如果通過計算發現目的地址不是自己的一個後代節點,則將這個數據包轉發給自身上一級的父節點,由父節點進行類似的判斷處理,
直到找到目的節點。Cluster-Tree演算法的特點在於使不具有路由功能的節點間通過與各自的父節點間的通信仍然可以發送數據分組和控制分組,但它的
缺點是效率不高。為了提高效率,ZigBee中允許具有路由功能的節點使用AODVjr演算法去發現路由,讓具有路由功能的節點可以不按照父子關系而直接發
送信息到其通信范圍內的其他節點。

三、Cluster-Tree路由演算法

Cluster-
Tree路由演算法的描述如下:當一個網路地址為A,網路深度為d的路由節點(FFD)收到目的地址為D的轉發數據包時,路由節點首先要判斷目的地址D是否
為自身的一個子節點,然後根據判斷的結果採取不同的方式來處理這個數據。若地址D滿足一下判別式,則可以判斷D地址節點是A地址節點的一個後代節點:

如果D不在這個范圍之內則D地址節點是A地址節點的父節點。

判斷後採取的數據包轉發措施如下:

1) 目的節點是自身的一個後代節點,則下一跳(next hop)的節點地址為

2) 目的節點不是自身的一個後代節點,路由節點將把該包送交自己的父節點處理。這一點與TCP/IP協議中路由器將路由表項中不存在的數據包自己的網關處理類似。

四、AODVjr路由演算法

AODVjr路由時一種按需分配的路由協議,只有在路由節點接收到網路數據包,並且網路數據包的目的地址不在節點的路由表中時才會進行路由發現過程。也就是說,路由表的內容是按照需要建立的,而且她可能僅僅是整個網路拓撲結構的一部分。

AODVjr
的優點是,相對於有線網路的路由協議而言,它不需要周期性的路由信息廣播,節省了一定的網路資源,並降低了網路功耗。缺點是在需要時才發起路由尋找過程,
會增加數據到達目的地址的時間。由於ZigBee網路中對數據的實時性要求不大,而更重視對網路能量的節省,因此AODVjr非常適合應用在ZigBee
網路中。

一次路由建立由以下三個步驟組成:

1) 路由發現

2) 反向路由建立

3) 正向路由的建立

經過這三個步驟,即可建立起一條路由節點到目的節點的有效傳輸路徑。在這個路由建立過程中,AODVjr使用3種消息作為控制信息:

1)Route Request(RREQ),路由請求

2)Route Replies(RREP),路由回復

3)Route Error(RERR),路由錯誤

以下將對路由建立的三個過程進行詳細描述。

(1)路由發現過程

對於一個具有路由能力的節點,當接收到一個從網路層的更高層發出的發送數據幀的請求,且路由表中沒有和目的節點對應的條目時,它就會發起路由發現過程。源節點首先創建一個路由請求分組(RREQ),並使用多播(Multi.Broadcast)的方式向周圍節點進行廣播。

如果一個節點發起了路由發現過程,它就應該建立相應的路由表條目和路由發現表條目,狀態設置為路由發現中。任何一個節點都可能從不同的鄰居節點處接收到廣播的RREQ。接收到後節點將進行如下分析:

1)如果是第一次接收到這個RREQ消息,且消息的目的地址不是自己,則節點會保留這個RREQ分組的信息用於建立反向路徑,然後將這個RREQ消息廣播出去。

2)如果之前已經接受過這個RREQ消息,表明這是由於網路內多個節點頻繁廣播產生的多餘消息,對路由建立過程沒有任何作用,則節點將丟棄這個消息。

(2)反向路由建立過程


RREQ消息從一個源節點轉發到不同的目的地時,沿途所經過的節點都要自動建立到源節點的反向路由。也就是記錄當前接收到的RREQ消息是由哪一個節點轉
發而來的的。通過記錄收到的第一個RREQ消息的鄰居地址來建立反向路由,這些反向路由將會維持一定時間,該段時間足夠RREQ消息在網內轉發以及產生的
RREP消息返回源節點。

當RREQ消息最終到達了目的節點,節點驗證RREQ
中的目的地址為自己的地址之後,目的節點就會產生RREP消息,作為一個對RREQ消息的應答。由於之前已經建立了明確的反向路由,因此RREP無需進行
廣播,只需按照反向路由的指導,採取單播的方式即可把RREP消息傳送給源節點。

(3)正向路由建立過程


RREP以單播方式轉發回源節點的過程中,沿著這條路徑上的每一個節點都會根據PREP的指導建立到目的節點的路由,也就是說確定到目的地址節點的下一跳
(next-hop)。方法就是記錄RREP是從哪一個節點傳播而來.然後將該鄰居節點寫入路由表中的路由表項。一直到RREP傳送到源節點。至此.一次
路由建立過程完畢。源節點與目標節點之間可以開始數據傳輸。可以看出,AODV是按照需求驅動的、使用RREQ.RREP控制實現的、先廣播,後單播的路
由的路由建立過程。

具體請看:http://hanbo31.blog.163.com/blog/static/12282196820114319221316/

Ⅲ 如何避免2.4GHz ISM頻段下各種無線設備的干擾

避免沖突的技術 除了解每項技術的工作原理外,了解上述技術在同構及異構環境下的相互作用也很重要。 Wi-Fi的免沖突演算法在發射前會偵聽「安靜」的通道,這樣多個 Wi-Fi 客戶端能有效地與單一 Wi-Fi 接入點通信。如果 Wi-Fi 通道雜訊很大,則Wi-Fi 設備在再次聆聽該通道前進行隨機退避。如果通道雜訊仍然較大,那麼會重復此過程直至通道安靜為止。一旦通道安靜下來,Wi-Fi設備將開始發射。如果通道一直嘈雜,那麼 Wi-Fi 設備就會尋找另條通道上的其他可用接入點。 使用相同或重疊通道的 Wi-Fi 網路通過免沖突演算法可以實現共存,但每個網路的吞吐量會有所下降。如果同一區域使用多個網路,那麼我們最好使用非重疊的通道,比如通道1、6 和 11,這能提高每個網路的吞吐量,因為無需與其他網路共用帶寬。 由於藍牙發射的跳頻特性,故來自藍牙的干擾最小。如果藍牙設備在一個與 Wi-Fi 通道重疊的頻率上發射,而Wi-Fi設備此時正在進行「發射前偵聽」,則 Wi-Fi 設備會執行隨機退避,在這期間,藍牙設備會跳轉到一個非重疊的通道,以允許 Wi-Fi 設備可開始發射。 即便無繩電話使用的是 FHSS 而不是 DSSS,來自 2.4 GHz 無繩電話的干擾也可完全中斷 Wi-Fi 網路完全的工作,部分原因是因為與藍牙(1MHz)相比其佔用更寬的通道(5-10MHz),以及無繩電話信號具有更高的功率。跳轉到 Wi-Fi 通道中間的 FHSS 無繩電話信號能夠破壞 Wi-Fi 發射,這就導致 Wi-Fi 設備要重復發射。2.4 GHz FHSS 無繩電話很可能會干擾鄰近所有 Wi-Fi 設備,因此我們不建議在 Wi-Fi 網路附近使用這種電話。如果無繩電話使用 DSSS,那麼無繩電話和 Wi-Fi接入點使用的通道可配置成互不重疊,以消除干擾。 解決藍牙的干擾 在藍牙中,來自其他藍牙微網的干擾最小,因為每個微網都使用它自己的偽隨機跳頻模式。如果兩個共處的微網被激活,則發生沖突的概率為 1/79。沖突的概率隨共處的有效微網的數量呈線性增加。 藍牙最初採用跳頻演算法來處理干擾,不過人們意識到,單個活動的 Wi-Fi 網路會對四分之一的藍牙通道造成嚴重干擾。由於通道重疊導致的數據包丟失必須在空閑的通道上重新發射,這就大幅降低了藍牙設備的吞吐量。 藍牙規范 1.2 版通過定義自適應跳頻(AFH)演算法來解決上述問題,這種演算法使藍牙設備能將通道標為好、壞或未知三種狀態。跳頻模式中的壞通道可通過查詢表由好通道來取代。藍牙主設備會定期聆聽壞通道,以確定干擾是否消失;如果幹擾消失,那麼就將通道標記為好通道並將其從查詢表中刪除。藍牙從設備應主設備請求也能向主設備發送報告,告知其對通道質量的評估。舉例來說,從設備可能偵聽到主設備未聆聽到的 Wi-Fi 網路。聯邦通訊委員會(FCC)要求至少使用 15 個不同的通道。 AFH 演算法使藍牙能避免使用 Wi-Fi 和 WirelessUSB 等 DSSS 系統佔用的通道。2.4 GHz FHSS 無繩電話仍可能會對藍牙設備造成干擾,因為這兩種系統都是在整個 2.4 GHz ISM 頻段上以跳頻方式工作,不過,由於藍牙信號的帶僅為1 MHz,因此 FHSS 無繩電話與藍牙之間的沖突頻率要遠小於 Wi-Fi 和 FHSS 無繩電話之間的沖突頻率。 藍牙還支持三種不同的數據包長度,在給定信道上表現為具有不同的駐留時間。藍牙還可通過縮短數據包長度,以提高數據吞吐量可靠性。在此情況下,最好是使較小數據包以較低的速率通過,這比以正常速率會丟失較大的數據包更為可取。 解決WirelessUSB和ZigBee的干擾問題 在WirelessUSB中,每個網路在選擇通道前都會檢查其他WirelessUSB網路。因此,其他WirelessUSB網路造成的干擾極小。WirelessUSB至少每50 ms都會檢查一下通道的雜訊大小。Wi-Fi設備造成的干擾會導致持續的高雜訊,這就會使WirelessUSB主設備選擇新的通道。WirelessUSB能與多個Wi-Fi網路和平共處,因為WirelessUSB能發現Wi-Fi網路之間的安靜通道(圖2)。 圖2:WirelessUSB 設計方案的頻率捷變性方框圖。藍牙的干擾可能會引起 WirelessUSB 數據包的重發射。由於藍牙的跳頻特性,WirelessUSB 數據包的重發射不會與下一次藍牙傳輸發生沖突,因為藍牙設備會跳到另一個通道。藍牙網路不會造成足夠連續高的雜訊電平來迫使無線USB主設備改變信道。 ZigBee 規定了一種類似於 802.11b 的免沖突演算法;每個設備在發射數據之前都會偵聽通道,從而使ZigBee 設備之間的沖突頻率達到最小。ZigBee 在干擾嚴重的情況下不會改變通道,而是通過低占空比以及免沖突演算法來盡可能減少沖突造成的數據丟損失。如果 ZigBee 使用的通道與一個頻繁使用的 Wi-Fi 通道相重疊,則現場實驗結果顯示,由於數據包沖突的緣故,有五分之一的 ZigBee 數據包都需要重發射。 我們能採取什麼措施? 在開發藍牙、Wi-Fi 或 ZigBee 解決方案時,設計人員必須使用規范中所提供的方法。在開發一種基於802.15.4、WirelessUSB 或其他 2.4 GHz 無線電的專用系統時,設計人員可使用較低級的工具即可獲得頻率捷變性。 由於存在與其他 DSSS 系統相重疊的風險,DSSS 系統最可能發生工作失敗的情況。不過 DSSS 系統也能通過一定方式實現與 FHSS 系統類似的頻率捷變性,方法之一就是通過網路監視。如果 DSSS 系統使用輪詢協議(所期望數據包以規定間隔出現),那麼主設備可在多次傳輸嘗試失敗或連續接收到損壞數據包情況下改變通道。 還有一種辦法就是在無線電設備支持的情況下讀取空中傳輸信號的功率等級。我們可用接收信號強度指示器 (RSSI)來預先測量空中傳輸通道的功率,如果功率等級在一定時期內過高,則會切換到另一個無干擾的通道。之所以考慮這一段時間是為了在 FHSS 系統通過的情況下不改變信道。 網路監視和 RSSI 讀取都假設無線電均為可發射也可接收數據包的收發器。在一個一端為發射器而另一端為接收器 DSSS 系統中,我們可通過多重發射技術來實現頻率捷變性。發射器使用多種頻率發送同一個數據包,而接收器則以較低速度在接收通道中循環接收。當接收器連接到電源上並且電池供電發射器使用不頻繁時,這種系統是可行的。無線遙控器就可以使用這種方法。

閱讀全文

與zigbee演算法相關的資料

熱點內容
app夜色live是什麼 瀏覽:198
微信視頻加密如何恢復 瀏覽:653
如何將電腦變成區域網伺服器 瀏覽:148
中國股市操盤源碼 瀏覽:452
孔網源碼 瀏覽:288
安卓什麼桌面可以滑動 瀏覽:602
拓撲圖中的伺服器怎麼畫 瀏覽:652
怎麼查到ppt里圖片的文件夾 瀏覽:365
手機怎樣刪除壓縮包 瀏覽:295
CAD中有哪些命令 瀏覽:134
zigbee演算法 瀏覽:715
maven命令行下載 瀏覽:650
共同編譯幾何原理 瀏覽:658
中行代發工資加密解密 瀏覽:817
怎麼把微信的某個聯系人加密 瀏覽:831
創建二維數組java 瀏覽:358
成都小學生編程培訓學校哪家好 瀏覽:881
合肥前端程序員私活違法嗎 瀏覽:116
androidtextview發光 瀏覽:429
android開發工具書 瀏覽:436