TShopping

 找回密碼
 註冊
搜索
查看: 7953|回復: 0
打印 上一主題 下一主題

[教學] 入門教學: 建構nrf52840 Bluetooth Mesh網路 (2)

[複製鏈接]
跳轉到指定樓層
1#
發表於 2020-9-17 23:14:28 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
 
Push to Facebook

當說起未來的家居時,毫無疑問會聯想到智能家居。想像一下如果家中所有東西,都能夠經智能手機,簡單如開燈關燈,或甚是空調的,都能於指尖上操控,不是很好嗎?






在這個教學中,我們會建構一個如上圖般的Bluetooth Mesh 網路。

如果你想了解多一點關於BLE Mesh網路,或者你還沒有設定好開發用的環境,你可以參考上一篇

步驟:
1. 硬體(nRF5 機器)的準備
2. 在機器上實際安裝(本文)




這次我們所使用的硬件如下:
1. 智能手機 (服務供應/管理者)
2. nRF5 機器 (Server 1 — LED燈)
3. (非必須) 如果你有多一台nRF5 機器,可以設立 Server 2 — LED




程序
1. 將範例下載到機器
2. 在智能手機上,建設BLE Mesh 網路

1. 將範例下載到機器

在已安裝的SDK裡面,有很多不同的範例包含在其中。它們都在nrf5_SDK_forMesh_v4.1.0_src > examples 裡面






我們首先讓範例程式正常運作吧。在 example 資料夾裡面,找出並打開以下project:
examples > light_switch > server > light_switch_server_nrf52840_xxAA_s140_7_0_1.emProject






我們不需要修改任何東西,直接在選單中選 Build > Build light_switch_server_nrf52840_xxAA_s140_7.0.1






下一步,就是下載到機器裡面。

* 如果這是你第一次使用你的機器,你可能需要執行一次「全削除」才能正常使用你的機器。有需要的話,可以執行以下步驟:
1. Target > Connect J-Link
2. Target > Erase All






接下來要正式下載到機器裡了。
在選單中選擇 Target > Download light_switch_server_nrf52840_xxAA_s140_7.0.1 就可以下載到機器了。

如果一切正常的話,你可以在Output裡看到 “Download successful” 這個log。






然後,這部份是非必要的,我們可以利用一個名為 JLinkRTTView 的工具程式,經由J-Link 直接看看機器上的程式執行時的Log。

* RTT = Real-Time Transfer

打開JLinkRTTViewer,因為機器已經接上了,我們在需要選擇Existing Session 便可。






範例的初始Log 是以下的樣子。






我們現在已經設定好了一個機器,如果你還有其它機器可以使用,你可以重覆以上步驟,設立第二台,甚至更多的機器。

(補充一下,範例的LED預設在PIN 17 上)




2. 在智能手機上,建設BLE Mesh 網路

為了建立一個Mesh網絡,先到App Store 或是 Google Play 下載nRF Mesh。下半部的教學將會有很多步驟,而且畫面看起來有點相似,所以要小心喔。





  • 打開nRF Mesh 並建立一個 Group

切換到"Groups"並按下右上角的"+"號。


將它命名為 “Light”然後按 “Done”。








一個名為Light的 Group就這樣建立了。

2. 接下來讓我們將機器 (Server 1 — LED)加到這個 Mesh 網絡中。

切換到"Network"的Tab中,同樣地點一下右上角的"+"號。






可以使用(加到網絡)的機器會在列表中展示出來。






點選 "nRF5x Mesh Light"後,會跳到設定畫面。
在這畫我們把機器名稱改名為 "LED1"。






然後按一下右邊IDENTIFY

在按右邊的 "Provision",

再在跳出來的選單中選擇 "No OOB",

機器就會被加入面網絡之中了。






3. 雖然機器已經被加到網絡中,但是我們還未能控制它喔。

切換到 "Setting"的Tab,點選 "Application Keys",就會跳到設定畫面。






在設定畫面中,同樣地按下右下角的"+"號,然後甚麼都不用改,直接按下"ADD"。






這樣我們就建立了一個名為 "App Key 1" 的Key。

4. 下一步,我們會設定 LED 1 的 Action,先返回到 "Network"的Tab,然後選 LED 1。






LED 1的設定畫面會顯示在畫面上,點選 "Application Keys",在下一個畫面中,點右上角的"+"號然後選 “App Key 1",再按下"Done"。











畫面會回到 LED 1 設定中。
我們接下來選 "Element 1" ,再選 "Generic On Off Server"。







在 "Generic On Off Server"的設定畫面中,選擇 "Bind Application Key",再在列表中選"App Key 1"再選"Done"。






下一步,點按"Subscribe",選擇 "Lights" group 再按 "Done"。

如果所有設定都沒問題,設定後的畫面就像以下畫面,可作參考。






5. 最後,我們控制nrf52840上的LED亮滅

再次切換到 "GROUP" 的Tab,選擇"Lights"。




點選 ON OFF,就可看到nrf52840上的LED 亮滅 了



參考文章

文章出處:網頁設計,網站架設 ,網路行銷,網頁優化,SEO - NetYea 網頁設計





 

臉書網友討論
*滑块验证:
您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



Archiver|手機版|小黑屋|免責聲明|TShopping

GMT+8, 2024-4-26 07:40 , Processed in 0.067640 second(s), 25 queries .

本論壇言論純屬發表者個人意見,與 TShopping綜合論壇 立場無關 如有意見侵犯了您的權益 請寫信聯絡我們。

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表