用藍牙網絡設計藍牙低能耗智能應用程序.第1部分

  這兩個系列的第1部分詳細介紹了藍牙網狀1協議的體系結構和功能。該協議作爲藍牙低能耗固件的補充堆棧,首次爲藍牙低功耗開放了標準的網狀網絡。此外,本文還詳細介紹了藍牙網格的優點和缺點,允許設計者將其與其他低功耗無線技術替代品進行比較,以確定它是否適合無線應用。2部分將描述如何將藍牙網爲藍牙低功耗設計使用ICS和發展可從凱利訊半導體供應商包。

  網狀網絡是針對智能家居和智能工業應用的低功耗無線技術的關鍵要求,因爲它克服了範圍限制,簡化了可擴展性,增強了健壯性。然而,試圖使用藍牙低能耗的設計者直到最近由於缺乏網狀網絡支持而感到沮喪。

  這種缺乏支持,使他們不得不選擇其他技術,如ZigBee和線程的智能家居應用程序,即使藍牙低能量,否則可能是完全適合和廣泛支持。(見凱利訊半導體的文章“比較低功率無線技術”。)

  藍牙SIG現在已經解決了這個缺點,引入了一個補充規範藍牙網1。規範不需要額外的硬件,可以運行在所有的低功耗藍牙芯片(V4.0,4.1,4.2,5)。有些廠商已經在支持藍牙網格1,他們自己的固件實現了規範和相關的開發工具。

  然而,在開始採用新規範的網狀網絡設計之前,設計者應該熟悉藍牙SIG的實現與其他技術的不同之處。例如,權衡簡單性、功耗和靈活性,因爲差異影響設計選擇和過程。

  本文以規範爲例,闡述了藍牙藍牙網絡體系結構。它描述了它的操作特性,並描述了它如何支持智能家居和應用,如智能照明。本文通過介紹一些合適的藍牙網絡設計工具和支持的硬件和軟件解決方案。


  網狀網絡的優點

  藍牙低能量最初是爲了補充“經典”藍牙,通過將無線技術擴展到電池容量適中的外圍設備。外圍設備的例子是運動傳感器,如心率帶或無線控制的玩具。每個外設通過獨立的通道與中央監控設備(如智能手機)進行通信,形成星形網絡拓撲。

  部分原因是它與智能手機的互操作性,藍牙低能耗迅速擴展到其他領域,包括智能家居應用,如照明控制。在這些類型的應用中,星形網絡的缺點很快就變得明顯了。

  例如,藍牙低能量解決方案只能處理有限數量的同時連接(通常爲八)。大於燈泡數量的照明設備不能用一個命令控制,引入延遲。第二,在大房子裏,遠處的燈泡可能超出了中央控制器的範圍。

  在網狀網絡中,不是與單個外圍設備通信的中央設備,而是通過連接多個節點的雙向信道,從網絡中的一個點向另一個點傳輸消息。通過這種方式,網狀網絡帶來了顯著的優勢,因爲它可以同時控制幾十個連接的設備,克服了範圍限制,並建立了冗餘。(圖1)

  網狀網絡拓撲圖

  

  圖1:網狀網絡拓撲。通過連接多個節點的雙向信道,可以將消息從網絡中的一個點傳輸到任何其他點。(圖片來源:硅實驗室)


  藍牙網格堆棧

  自藍牙核心規範4版引入以來,藍牙低能量已通過版本4.1、4.2和5進行了修訂。藍牙5引入了範圍、吞吐量、廣播和共存改進。(見凱利訊半導體的文章“藍牙4.1,4.2和5兼容的藍牙低功耗SoC和工具滿足物聯網的挑戰”。)

  作爲最新的產品介紹,可以假設藍牙網絡1只對藍牙5進行升級,但事實並非如此。任何遺留下來的(4,4.1,4.2,5)藍牙低能量芯片都可以被修改爲運行藍牙網絡,只需固件升級,允許現場安裝利用新技術。

  這種向後兼容性的關鍵來自藍牙網格不是藍牙低能量堆棧的一個組成部分,而是一個由七層組成的獨立的新實體(圖2)。

  藍牙網絡的圖像包括七層堆棧

  

  圖2:藍牙網絡包括七層堆棧,補充藍牙低能耗協議。(圖像來源:藍牙SIG)

  當藍牙網格節點接收到消息時,它將消息從底層藍牙低能量堆棧通過承載層傳遞到網絡層。網絡層應用各種檢查來決定是否將消息傳遞到傳輸層或丟棄它。

  請注意,藍牙網格規範定義了一個全新的主機層,它與藍牙低能耗主機層共享一些概念,但與它不兼容。這與競爭技術(如ZigBee和線程)從一開始就包括網狀網絡(圖3)有所不同。藍牙低能量協議(深藍)中的藍牙網格堆棧(淡藍色)的安排

  

  圖3:藍牙低能量協議(深藍)下的藍牙網格堆棧(淺藍色)的排列。藍牙網絡規範定義了一個全新的主機層,它與藍牙低能耗主機層共享一些概念,但與它不兼容。(圖片來源:凱利訊半導體)


  藍牙網節點

  藍牙網格使用四種類型的網絡節點:

  中繼節點通過網絡接收和轉發數據包。中繼節點的缺點是它們必須保持持續的警報,這大大增加了電力消耗。這對於電源供電的應用程序,如智能照明來說,並不是一個缺點,但是對於非電源供電的節點,例如交換機,這是一個問題。

  Low Power Nodes(1)採用低功耗藍牙標準的節電特性(即:保持睡眠狀態的時間),可以長時間從電池或能量收集。每一個連接到一個電源供電的朋友節點,這是清醒和緩存任何消息定向到LPN。當LPN進入接收模式(按照預定的時間表)接受緩存郵件,工作的指示,並返回到省電睡眠模式。

  代理節點允許不包含藍牙網格堆棧的設備連接到藍牙網狀網絡。例如,當消費者希望使用舊的智能手機來控制智能照明網絡時,這是很有用的。交互是通過節點和設備的通用屬性配置文件(GATT)接口實現的(圖4)。

  藍牙網格圖使用四種節點類型

  

  圖4:藍牙網格使用四個節點類型。在這個圖像中,所有燈泡和開關,除了燈泡到最左邊,都是電源驅動的中繼節點。(圖片來源:凱利訊半導體)

  溫度傳感器是一個電池供電的LPN和定期接收來自電源供電的友誼結鱗莖形成遠離開的消息。智能手機通過使用藍牙低能量堆棧的關貿總協定接口而不是藍牙網格堆棧形成代理節點。

  在一個新的節點可以參加常規的網格操作,它必須由供應者提供。這是一個可信任的設備,可以訪問網絡中的所有節點。新節點被分配一個地址,以及網絡和設備密鑰。在配置完之後,設備密鑰用於建立一個安全通道來配置新節點。藍牙網絡最多支持32000個節點。


  藍牙網架構

  藍牙網格使用“泛洪”技術在網絡上發送消息。每個包被廣播到網絡中的每一個節點,直到它到達目標爲止。消息可以針對單個節點、一組節點或所有節點。

  節點組是使用一個定義網絡元素的組地址來實現的,例如,一個房間的燈。此外,該規範定義了四個固定的組地址:所有代理、所有朋友、所有中繼和所有節點,特別針對節點類型。(注:1不能具體處理,因爲他們對朋友的依賴節點。)

  洪泛網格結構和組尋址的選擇支持藍牙網格適合智能家居應用。例如,洪泛網格允許來自交換機的“上”命令快速地通過智能光網絡傳播,每個節點接收該命令並相應地動作。目標羣中的燈光幾乎瞬間照亮。網絡中的最小延遲要比例如星形網絡低得多,其中中央設備需要向每個連接的光發送單個命令。

  在典型的操作中,藍牙低能量的廣告渠道用於廣告藍牙設備的存在,並掃描希望通信的其他設備。一旦設備配對,通信移動到37個全帶寬信道之一,加速吞吐量。

  與此相反,藍牙網狀網在節點連接後不移動到全帶寬信道,保持簡單,降低延遲,相反,它繼續利用廣告信道傳輸信息。

  這種安排的缺點是減少了網絡帶寬和擁塞的風險,因爲只有三個吞吐量受限的頻率處理所有的流量。處理擁塞的兩種機制開始發揮作用。第一個是“生存時間”(TTL)計數器,它定義一個特定的數據包可以中繼多少次(典型值是三步)。第二種是包緩存,它捕獲在網格周圍完全循環的數據包,在這一點上,假設不需要進一步傳輸。

  開發人員還可以使用可選的帶寬保護中繼特性,以便節點可以接收數據包,但不能傳遞數據包。權衡就是失去靈活性。


  藍牙網絡:模型代替配置文件

  藍牙網格遵循了藍牙技術的體系結構,使用關貿總協定配置文件,允許許多用例共享一個公共信息結構。但在藍牙網格堆棧中,這些配置文件稱爲模型。

  模型表示特定的行爲或服務,並定義一組狀態和消息,這些狀態和消息對這些狀態起作用。標準模型包括典型的使用場景,如設備配置、傳感器讀數和光控制。供應商還可以創建自定義模型。

  節點中的模型以元素的形式排列;每個元素在具有唯一地址的網格中充當虛擬實體。每個傳入消息由一個元素中的模型處理(圖5)。

  網絡節點(網狀設備)的圖像合併成單元的模型。

  

  圖5:每一個網絡節點(網格設備)都集成了模型。每個元素都有唯一的地址,元素中的模型處理傳入的消息。(圖片來源:凱利訊半導體)

  模型通過“發佈和訂閱”系統相互交談。發佈發送消息並配置節點以訂閱發送到特定地址進行處理的消息。

  在圖6中,燈開關到最左邊(開關1)發佈到廚房組地址。節點輕1,輕2,輕3訂閱廚房地址,因此,接收,處理,並採取行動的消息 (如“開”和“關”命令)發佈到這個地址。注意,光3還訂閱了餐廳的地址,因此可以從開關2和開關1操作。

  模型圖通過發佈和訂閱系統相互交談。

  

  圖6:模型通過發佈和訂閱系統相互交談。模型可以訂閱多個發佈者。(圖像來源:藍牙SIG)

  (注意模型是一個涉及的主題)。建議讀者參考參考資料1,瞭解本文後面概述的細節。)


  藍牙網絡設計

  一些藍牙低能耗廠商推出了符合標準的藍牙網格堆棧。因爲藍牙網絡是對已建立的藍牙低能耗協議的補充,所以開發者不需要用藍牙網絡取代成熟的、經過驗證的藍牙低能耗堆棧。藍牙網絡固件將技術的所有特性引入到新的或現有的設計中,而無需編寫大量新代碼。

  北歐半導體,例如,最近增加的nrf5 SDK開發包線網。軟件開發工具包括選擇驅動程序、庫和實例,並被設計爲運行在幾個集成開發環境(IDE)和編譯器包括cmake和Segger嵌入式工作室。

  編譯後的代碼運行在公司的nrf52 DK開發套件是基於公司的nrf52832硅。

  北歐的文檔詳細介紹瞭如何開發一個清晰的網絡說明如何編譯藍牙網格堆棧,如何提供網格,如何建立一個網絡,以及如何創建新的模型。

  在下面的圖7,一個新的設備(燈泡)是提供和配置使用nrf5 SDK的網格。在這個例子中,燈泡信號給供應者,它是尋找一個網絡連接。糧食供應者了燈泡的燈塔,並邀請其加入網絡。如果認證成功,設備將被提供必要的密鑰和地址加入網絡並準備進行配置。下一步,燈泡被賦予“家庭自動化”應用程序的關鍵。的“開關服務器發佈狀態”(控制燈泡)設置,並訂閱“燈組”添加。

  網格提供和配置一個燈泡北歐半導體的nrf5 SDK圖

  

  圖7:配置和使用網格北歐半導體的nrf5 SDK在網狀網絡中配置一個燈泡。(圖片來源:凱利訊半導體)

  Silicon Labs還提供了其efr32藍壁虎藍牙入門套件藍牙網。該公司建議購買三或四個工具包,以建立一個原型網狀網絡。該試劑盒是基於公司的efr32mg1藍牙低功耗SoC。除了硬件之外,開發者還需要一個藍牙SDK和一個藍牙網絡SDK,它們都可以從公司的網站上下載。

  簡單的IDE需要用硅實驗室的藍牙網狀技術來啓動和運行。開發工具包括編譯演示,應用筆記,和例子。Android應用程序可以提供、配置和控制智能手機應用程序中的藍牙網格節點。

  意法半導體採用北歐半導體和Silicon Labs的SDK,使網絡設備基於公司bluenrg-2藍牙低功耗SoC開發類似的方法。


  結論

  藍牙網絡爲藍牙低能耗提供網狀網絡,省去了爲智能家居應用專有網格固件的需要。

  該技術將簡單性與略微增加的功耗和一些靈活性折衷起來。一個關鍵的優點是,該技術兼容所有藍牙低能量芯片,而不僅僅是最新的藍牙5產品。

  藍牙低能量芯片供應商已經開始引入藍牙網狀軟件開發工具包來補充他們成熟的硬件和協議固件產品。

  本文的第2部分將詳細介紹如何使用現成的硬件、固件和開發包將藍牙網絡集成到藍牙低能耗中。

發佈了76 篇原創文章 · 獲贊 39 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章