| 科技日新月異,而IoT與智能家居漸漸融入我們的生活中。今次要介紹及建構的是Bluetooth Mesh網絡,這技術可會是智能家居不可或缺的一部份。 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 在這個教學中,我們會建構一個如上圖般的Bluetooth Mesh 網路。 首先,您可能會問,甚麼是Bluetooth Mesh 網路呢? 相信您已經知道甚麼是Bluetooth(藍牙),因為我們每天都接觸不少,比如說耳機,無線鍵盤等等。它們都是1對1無線連接,而有效距離大約在10至20米左右。 Mesh,顧名思義,是「網」(其實英文也可譯作別的意思啦)。所以Bluetooth Mesh 網絡就是一個網狀網絡。網絡中的每個點都是多對多的,而非傳統藍牙的1對1,或BLE的1對多。 
 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 Mesh利用一個名為管理型氾洪的技術,達至可靠又有效率的傳輸。在網狀網絡中,節點(Node)同時作為轉送點,將收到的訊息轉發到其他節點,從而將網絡延伸至更遠的地方。氾洪式的缺點是會浪費網路去傳送「沒有用」的訊息,不過由於是Mesh 使用的是管理型氾洪,訊息的轉發次數會受到限制,從而平衡網絡的效率。 
 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 原理可以想像成骨牌,一個傳至多個點,並且會不斷蔓延開去。 開始建構Mesh網絡吧 簡單說完一點技術知識後,開始動手吧。在這個教學中,我們會儘量以簡單的方式說明。
 步驟:1. 硬體(nRF5 機器)的準備(本文)
 2. 在機器上實際安裝
 
 
 
 這次的教學我們會將在nRF5的機器上安裝,在此之前,我們得先準備好開發環境。 所需硬件1. J-Link
 2. 256KB 容量,支援藍芽4.2 或以上的 nRF52 機器,最少一台。(一台已經足夠建構最簡單的Mesh網,如有兩台的話,可以實現轉送延長距離的效果。)
 (我們在這教學用的是 WIN10,SES 5.1,nRF5 SDK 16.0.0,nRF5 SDK for Mesh 4.1.0) 筆者安裝了nRF5 SDK 17.0.0,nRF5 SDK for Mesh 4.2.0,不能BUILD,會出現 複製代碼boards.h: No such file or directory
因SDK預設路徑是SDK 16.0.0,問了官方才知道只能用nRF5 SDK 16.0.0,nRF5 SDK for Mesh 4.1.0 1. 安裝SEGGER Embedded Studio (SES)
 *SEGGER Embedded Studio (SES) 是 ARM 微型控制器開發用SDK 首先,從官行網站下載SES。注意: 請選擇與OS合適的相應版本
 
 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 
 安裝完成後,打開SES會看到畫面如下。 
 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 2. 下載nRF5 SDK 及 BLE Mesh SDK
 我們會分別下載nRF SDK 及BLE Mesh SDK。 先從官方網站下載 nRF SDK 16.0.0。(下載按鈕在網頁最下方。)
 
 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 
 將剛下載的檔案(名為 “DeviceDownload.zip”)解壓縮。裡面有數個壓縮檔,其中一個名為nRF5SDK160098a08e2.zip,也將它解壓縮,之後會用到。 
 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 
 然後,從官方網站下載 nRF Mesh 4.1.0。 
 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 
 也將這個檔案解壓縮。 
 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 
 下一步我們將要把之前解壓縮的兩個檔案,放到同一個資料夾內。這裡我們創建一個名為nrf-mesh的資料夾,再把以上兩個解壓縮的資料夾放進去。 
 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 
 然後,下一個步驟很重要。將nRF5SDK160098a08e2改名為nRF5_SDK_16.0.0_98a08e2。(名稱錯誤的話可能會導致錯誤) 
 入門 nrf52840 Bluetooth Mesh 網路    
 
 
 
 
 
 
 到這裡開發環境就準備好了。 注意事項:1. 解壓縮的兩個資料夾要放在一起
 2. 需要變更 nRF5 SDK 的資料夾名稱
 參考文章
 
 文章出處:網頁設計,網站架設 ,網路行銷,網頁優化,SEO - NetYea 網頁設計
 
 |