基於ZigBee協議的設備的入網方法與流程
2023-04-24 12:41:11 1

本發明涉及物聯網通信技術領域,尤其涉及一種基於ZigBee(基於IEEE802.15.4標準的低功耗區域網協議)協議的設備的入網方法。
背景技術:
在未來物聯網通信中,ZigBee協議由於具備低功耗、自組織能力強、穩定性高、組網靈活等特點,一直備受人們的關注。目前,ZigBee協議已經廣泛地應用於照明系統、智慧家居系統、數據採集系統中。在ZigBee標準協議中,存在三種角色的設備:1、協調器;2、路由器;3、終端設備,其中,協調器負責組建網絡,路由器/終端設備(可統稱為設備)需要加入到協調器組建的網絡中。
目前,設備加入到協調器組建的網絡中的方法一般有如下兩種:一種方法是設備監聽各信道中的網絡,並選擇能量最強的網絡加入;另一種方法是設備監聽各信道中的網絡信標幀,從信標幀中獲取設備深度信息(所謂設備深度,可以理解為路由次數),選擇最小設備深度的網絡進行加入。
雖然上述兩種方法保證了設備加入網絡後的通信質量問題,但是,設備依然不能夠選擇正確的網絡進行加入,這是因為當設備的周圍具有多個協調器時,如果該設備通過使用上述兩種方法入網,有可能加入的網絡不是用戶需要的協調器所建立的網絡,從而導致設備加入到錯誤的網絡中,降低用戶體驗。
技術實現要素:
本發明的目的旨在至少在一定程度上解決上述的技術問題之一。
為此,本發明的一個目的在於提出一種ZigBee協議的設備的入網方法。該方法保證了當網絡存在多個協調器時設備能夠正確地加入到目標協調器中,提高了可靠性,提高了設備入網的效率,提升了用戶體驗。
為了實現上述目的,本發明一方面實施例的ZigBee協議的設備的入網方法,包括:設備獲取所述設備的標識信息;所述設備監聽至少一個協調器發出的至少一個信標幀,並根據所述至少一個信標幀生成所述至少一個協調器的至少一個協調器標識信息;所述設備判斷所述設備的標識信息是否與所述至少一個協調器標識信息中的一個匹配;以及如果所述 設備的標識信息與所述至少一個協調器標識信息中的一個匹配,則所述設備加入至與所述設備的標識信息匹配的協調器標識信息對應的協調器所建立的網絡中。
根據本發明實施例的ZigBee協議的設備的入網方法,設備可先獲取設備的標識信息,之後可監聽至少一個協調器發出的至少一個信標幀,並根據至少一個信標幀生成至少一個協調器的至少一個協調器標識信息,然後,判斷設備的標識信息是否與至少一個協調器標識信息中的一個匹配,如果匹配,則設備加入至與設備的標識信息匹配的協調器標識信息對應的協調器所建立的網絡中,保證了當網絡存在多個協調器時設備能夠正確地加入到目標協調器中,提高了可靠性,提高了設備入網的效率,提升了用戶體驗。
根據本發明的一個實施例,設備獲取所述設備的標識信息,具體包括:所述設備通過外圍設備或者輔助設備生成所述設備的標識信息。
根據本發明的一個實施例,所述設備的標識信息預先存儲在所述設備的固定空間中,所述設備從所述固定空間中獲取所述設備的標識信息。
根據本發明的一個實施例,所述外圍設備或者輔助設備為撥碼開關裝置、近距離無線通訊NFC裝置、紅外設備裝置及二維碼掃描裝置中的任意一種。
根據本發明的一個實施例,根據所述至少一個信標幀生成所述至少一個協調器的至少一個協調器標識信息,具體包括:從所述至少一個信標幀中提取至少一個網絡標識信息,並將所述至少一個網絡標識信息轉換為所述至少一個協調器標識信息。
根據本發明的一個實施例,將所述至少一個網絡標識信息轉換為所述至少一個協調器標識信息,具體包括:在每個網絡標識信息中從預設位置開始截斷預設長度的位數,並將截斷得到的內容作為每個協調器標識信息。
根據本發明的一個實施例,在所述設備判斷所述設備的標識信息是否與所述至少一個協調器標識信息中的一個匹配之前,所述方法還包括:所述設備根據所述至少一個信標幀判斷對應的至少一個協調器是否已打開允許入網功能;如果已打開允許入網功能,則所述設備判斷所述設備的標識信息是否與所述至少一個協調器標識信息中的一個匹配。
根據本發明的一個實施例,所述設備監聽至少一個協調器發出的至少一個信標幀,具體包括:所述設備向所述至少一個協調器發送至少一個信標幀請求信息;所述設備接收所述至少一個協調器根據所述至少一個信標幀請求信息反饋的所述至少一個信標幀。
根據本發明的一個實施例,所述設備監聽至少一個協調器發出的至少一個信標幀,具體包括:所述設備監聽所述至少一個協調器周期廣播的至少一個信標幀。
根據本發明的一個實施例,所述設備為終端或者路由器。
本發明附加的方面和優點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發明的實踐了解到。
附圖說明
本發明上述的和/或附加的方面和優點從下面結合附圖對實施例的描述中將變得明顯和容易理解,其中,
圖1是根據本發明一個實施例的基於ZigBee協議的設備的入網方法的流程圖;
圖2是根據本發明實施例的一個由多個協調器組成的網絡拓撲的結構示例圖;
圖3是根據本發明實施例的信標幀的結構的示例圖;
圖4是根據本發明實施例的網絡標識信息與協調器標識信息之間的關係的示意圖;以及
圖5根據本發明另一個實施例的基於ZigBee協議的設備的入網方法的流程圖。
具體實施方式
下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,旨在用於解釋本發明,而不能理解為對本發明的限制。
下面參考附圖描述本發明實施例的基於ZigBee協議的設備的入網方法。
圖1是根據本發明一個實施例的基於ZigBee協議的設備的入網方法的流程圖。需要說明的是,在本發明的實施例中,設備可為終端或者路由器,終端可包括但不限於PC機、移動終端以及家用電器等。
如圖1所示,該基於ZigBee協議的設備的入網方法可以包括:
S101,設備獲取設備的標識信息。
具體地,在本發明的一個實施例中,設備獲取設備的標識信息的具體實現過程可如下:設備通過外圍設備或者輔助設備生成設備的標識信息。其中,在本發明的實施例中,外圍設備或者輔助設備可為但不限於撥碼開關裝置、近距離無線通訊NFC裝置、紅外設備裝置及二維碼掃描裝置等中的任意一種。由此,可通過外圍設備或者輔助設備生成設備的標識信息,從而使得設備可以獲取到該設備的標識信息。
在本發明的另一個實施例中,設備的標識信息可預先存儲在該設備的固定空間(如設備的存儲器)中,設備獲取設備的標識信息的具體實現過程可如下:設備從上述固定空間中獲取設備的標識信息。更具體地,可在設備出廠前將該設備的標識信息存儲在固定空間中,當設備需要加入協調器所建立的網絡中時,設備可先從固定空間中獲取預先存儲的該設備的標識信息。
S102,設備監聽至少一個協調器發出的至少一個信標幀,並根據至少一個信標幀生成 至少一個協調器的至少一個協調器標識信息。
其中,在本發明的實施例中,「至少一個」可理解為一個或多個,多個可理解為至少兩個,例如兩個、三個等。
需要說明的是,協調器可理解為網絡組織的管理者,協調器可組建一個網絡。如圖2所示,為一個由多個協調器組成的網絡拓撲的結構示例圖,該網絡拓撲中含有協調器1所建立的網絡和協調器2鎖建立的網絡,其中,設備1和設備2加入到了協調器1所建立的網絡,設備3和設備4加入到了協調器2鎖建立的網絡中。
具體地,設備監聽協調器發出的信標幀可包括主動監聽以及被動監聽。具體而言,在本發明的一個實施例中,主動監聽的具體實現方式可包括:設備向至少一個協調器發送至少一個信標幀請求信息;設備接收至少一個協調器根據至少一個信標幀請求信息反饋的至少一個信標幀。也就是說,設備可主動發送信標幀請求信息給協調器,協調器在接收到該信標幀請求信息之後可回復一個信標幀。由此,實現設備的主動獲取信標幀的功能。
在本發明的一個實施例中,被動監聽的具體實現方式可包括:設備監聽至少一個協調器周期廣播的至少一個信標幀。更具體地,協調器可周期廣播信標幀,設備可等待協調器周期廣播的信標幀。由此,設備無需發送請求即可獲得協調器的信標幀。
具體而言,在本發明的一個實施例中,根據至少一個信標幀生成至少一個協調器的至少一個協調器標識信息的具體實現過程可如下:從至少一個信標幀中提取至少一個網絡標識信息,並將至少一個網絡標識信息轉換為至少一個協調器標識信息。其中,在本發明的實施例中,將至少一個網絡標識信息轉換為至少一個協調器標識信息的具體實現方式可為:在每個網絡標識信息中從預設位置開始截斷預設長度的位數,並將截斷得到的內容作為每個協調器標識信息。其中,預設位置以及預設長度可以是協調器與設備相互之間事先約定的。
需要說明的是,在本發明的實施例中,如圖3所示,信標幀中可包括物理層頭、MAC層頭、網絡標識信息和信標幀內容等。如圖4所示,為網絡標識信息與協調器標識信息之間的關係,協調器標識信息可為網絡標識信息中某一部分的內容。
更具體地,可從信標幀中提取出網絡標識信息,之後可在網絡標識信息中從預設位置開始截斷預設長度的位數作為協調器標識信息。其中,在本發明的實施例中,網絡標識信息可由協調器自身生成的,網絡標識信息可通過以下步驟生成:協調器獲取自身的標識信息,並根據自身的標識信息生成網絡標識信息。其中,網絡標識信息可以是個人區域網ID(IDentity,身份標識號碼)或者擴展個人區域網ID。
S103,設備判斷設備的標識信息是否與至少一個協調器標識信息中的一個匹配。
可以理解,在本發明的實施例中,當設備監聽到多個協調器發出的信標幀時,設備可 分別輪詢每個協調器發出的信標幀,從信標幀中提取網絡標識信息,並將網絡標識信息轉換為該協調器的協調器標識信息,之後,設備根據該設備的標識信息與每個協調器的協調器標識信息逐個匹配,如果匹配,則執行步驟S104;如果不匹配,則與下一個協調器標識信息進行匹配,直至找到能匹配該設備的標識信息的協調器所建立的網絡為止。
S104,如果設備的標識信息與至少一個協調器標識信息中的一個匹配,則設備加入至與設備的標識信息匹配的協調器標識信息對應的協調器所建立的網絡中。
進一步的,為了確保設備能夠正常的加入到目標協調器所建立的網絡中,在本發明的一個實施例中,如圖5所示,在設備判斷設備的標識信息是否與至少一個協調器標識信息中的一個匹配(即上述步驟S103)之前,該基於ZigBee協議的設備的入網方法還可包括:設備根據至少一個信標幀判斷對應的至少一個協調器是否已打開允許入網功能(S505)。如果已打開允許入網功能,則執行上述步驟S103,即設備判斷設備的標識信息是否與至少一個協調器標識信息中的一個匹配。
具體地,設備在對該設備的標識信息與協調器標識信息進行匹配比較之前,需要判斷該協調標識信息對應的協調器是否允許加入網絡,其中,協調器是否允許加入網絡的信息可包含在信標幀中,設備可根據信標幀判斷該信標幀所對應的協調器是否允許設備加入網絡,如果是,則執行上述步驟S103;如果否,則設備輪詢查看下一個協調器發出的信標幀,並提取該信標幀中的網絡標識信息以及協調器是否允許加入網絡的信息。
根據本發明實施例的基於ZigBee協議的設備的入網方法,設備可先獲取設備的標識信息,之後可監聽至少一個協調器發出的至少一個信標幀,並根據至少一個信標幀生成至少一個協調器的至少一個協調器標識信息,然後,判斷設備的標識信息是否與至少一個協調器標識信息中的一個匹配,如果匹配,則設備加入至與設備的標識信息匹配的協調器標識信息對應的協調器所建立的網絡中,保證了當網絡存在多個協調器時設備能夠正確地加入到目標協調器中,提高了可靠性,提高了設備入網的效率,提升了用戶體驗。
在本發明的描述中,需要理解的是,在本發明的描述中,「多個」的含義是至少兩個,例如兩個,三個等,除非另有明確具體的限定。
在本說明書的描述中,參考術語「一個實施例」、「一些實施例」、「示例」、「具體示例」、或「一些示例」等的描述意指結合該實施例或示例描述的具體特徵、結構、材料或者特點包含於本發明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不必須針對的是相同的實施例或示例。而且,描述的具體特徵、結構、材料或者特點可以在任一個或多個實施例或示例中以合適的方式結合。此外,在不相互矛盾的情況下,本領域的技術人員可以將本說明書中描述的不同實施例或示例以及不同實施例或示例的特徵進行結合和組合。
流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用於實現特定邏輯功能或過程的步驟的可執行指令的代碼的模塊、片段或部分,並且本發明的優選實施方式的範圍包括另外的實現,其中可以不按所示出或討論的順序,包括根據所涉及的功能按基本同時的方式或按相反的順序,來執行功能,這應被本發明的實施例所屬技術領域的技術人員所理解。
在流程圖中表示或在此以其他方式描述的邏輯和/或步驟,例如,可以被認為是用於實現邏輯功能的可執行指令的定序列表,可以具體實現在任何計算機可讀介質中,以供指令執行系統、裝置或設備(如基於計算機的系統、包括處理器的系統或其他可以從指令執行系統、裝置或設備取指令並執行指令的系統)使用,或結合這些指令執行系統、裝置或設備而使用。就本說明書而言,"計算機可讀介質"可以是任何可以包含、存儲、通信、傳播或傳輸程序以供指令執行系統、裝置或設備或結合這些指令執行系統、裝置或設備而使用的裝置。計算機可讀介質的更具體的示例(非窮盡性列表)包括以下:具有一個或多個布線的電連接部(電子裝置),可攜式計算機盤盒(磁裝置),隨機存取存儲器(RAM),只讀存儲器(ROM),可擦除可編輯只讀存儲器(EPROM或閃速存儲器),光纖裝置,以及可攜式光碟只讀存儲器(CDROM)。另外,計算機可讀介質甚至可以是可在其上列印所述程序的紙或其他合適的介質,因為可以例如通過對紙或其他介質進行光學掃描,接著進行編輯、解譯或必要時以其他合適方式進行處理來以電子方式獲得所述程序,然後將其存儲在計算機存儲器中。
應當理解,本發明的各部分可以用硬體、軟體、固件或它們的組合來實現。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執行系統執行的軟體或固件來實現。例如,如果用硬體來實現,和在另一實施方式中一樣,可用本領域公知的下列技術中的任一項或他們的組合來實現:具有用於對數據信號實現邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現場可編程門陣列(FPGA)等。
本技術領域的普通技術人員可以理解實現上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬體完成,所述的程序可以存儲於一種計算機可讀存儲介質中,該程序在執行時,包括方法實施例的步驟之一或其組合。
此外,在本發明各個實施例中的各功能單元可以集成在一個處理模塊中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個模塊中。上述集成的模塊既可以採用硬體的形式實現,也可以採用軟體功能模塊的形式實現。所述集成的模塊如果以軟體功能模塊的形式實現並作為獨立的產品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。
上述提到的存儲介質可以是只讀存儲器,磁碟或光碟等。儘管上面已經示出和描述了本發明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發明的限制,本領域的普通技術人員在本發明的範圍內可以對上述實施例進行變化、修改、替換和變型。