ZigBee 學習筆記(JN5139)

來源:互聯網
上載者:User

幾個重要概念:

node(節點):

在zigbee堆棧中最多有三種節點:Coordinator(協調器)、Router(路由器)、End Device(終端)。

其中Coordinator負責選擇工作頻段,建立網路,允許子裝置加入網路;Router負責傳遞訊息,允許子裝置加入網路;End Device只負責收發訊息。

一個網路中可以有若干Router和End Device,但只能有一個Coordinator。

下面幾個圖說得更清楚點


profile:

有人將profile翻譯為“規約”,它規定了裝置的具體應用環境(這是由zigbee使用聯盟制定的,我們只能選擇其一)。


其中stack profile定義了網路類型、深度等;application profile針對給定的stack profile定義了不同功能的標準函數,說明了裝置類型、介面、如何傳輸資料等等。

總之,profile就是對裝置的描述。目的是形成標準,便於不同製造商間產品的相容。

descriptor:

cluster:

attribute:

endpoint:

endpoint的作用舉例說明下:

假如我們想讓node1的開關1控制node2的燈1、2、3,開關2隻控制燈4。但是由於節點間資訊只依靠網路地址定位,所以node2接收到node1的控制資訊後,無法判斷究竟是哪個開關的控制資訊。所以引入了endpoint概念(這和TCP/IP協議裡的“端點”概念很像),給node2兩個endpoint(連接埠),一個對應開關1,一個對應開關2。這樣node2的應用程式就能通過接收到的endpoint來區別究竟是接收到哪個開關的資訊了。

雜記:

ZigBee網路層的主要功能是路由,路由演算法是它的核心。目前ZigBee網路層主要支援兩種路由演算法——樹狀路由和網狀路由。樹狀路由(具體可以參考ZigBee的協議棧規範)把整個網路看作是以協調器為根的一棵樹,因為整個網路是由協調器所建立的。協調器的子節點可以是路由器或者是末端節點,路由器的子節點也可以是路由器或者末端節點,而末端節點沒有子節點,相當於樹的葉子。樹狀路由利用了一種特殊的地址分配演算法,使用四個參數—深度、最大深度、最大子節點數和最大子路由器數來計算新節點的地址,於是定址的時候根據地址就能計算出路徑,而路由只有兩個方向——向子節點發送或者向父節點發送。樹狀路由不需要路由表,節省儲存資源,但缺點是很不靈活,浪費了大量的地址空間,並且路由效率低。ZigBee當中還有一種路由方法是網狀路由,這種方法實際上是AODV路由演算法的一個簡化版本,非常適合於低成本的無線自組織網路的路由。它可以用於較大規模的網路,需要節點維護一個路由表,耗費一定的儲存資源,但往往能達到最優的路由效率,而且使用靈活。除了這兩種路由方法,ZigBee當中還可以進行鄰居表路由,其實鄰居表可以看作是特殊的路由表,只不過只需要一跳就可以發送到目的節點。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.