使用Omnimo nRF52840構建無線溫濕度傳感器
將您的Omnimo nRF52840轉換為zigbee供電的環(huán)境傳感器,并將其與家庭助理無縫集成。
如果您希望涉足Zigbee開發(fā)領域,那么這個項目非常適合您。在本教程中,我們將指導您使用Omnimo nRF52840開發(fā)板與Temp&Hum 24 Click (HDC3021傳感器)配對構建無線溫濕度傳感器。傳感器數(shù)據(jù)將通過Zigbee廣播,并使用ZHA (Zigbee家庭自動化)集成集成到家庭助理中。
你需要什么
硬件
Omnimo nRF52840開發(fā)板一款緊湊、功能強大的開發(fā)板,基于北歐半導體nRF52840 SoC,具有低功耗藍牙(BLE)和Zigbee功能。
TEMP&HUM 24 CLICKA microkroelektronika點擊板配備HDC3021傳感器,能夠高精度測量溫度和濕度。
Segger J-Link編程器或nRF52840芯片的另一種編程方式
軟件工具
nRF5 SDK for Thread and Zigbee v4.2.0官方北歐SDK,提供開發(fā)Zigbee應用所需的工具和庫。
Segger Embedded Studio for ARM (V7.32a)用于編譯和刷新固件的IDE。
啟用了ZHA集成的家庭助理
步驟1:設置開發(fā)環(huán)境
下載SDK
前往Nordic的網(wǎng)站下載線程和Zigbee v4.2.0的nRF5 SDK。將其解壓縮到您選擇的目錄中。
安裝Segger Embedded Studio
從官方網(wǎng)站下載并安裝Segger Embedded Studio for ARM (V7.32a)。
克隆項目存儲庫
導航到解壓的SDK目錄中的examples/zigbee/experimental文件夾,并將此項目存儲庫A克隆到其中。
步驟2:理解代碼
讀取傳感器數(shù)據(jù)
Temp&Hum 24 Click上的HDC3021傳感器測量溫度和濕度。代碼通過TWI與傳感器接口來檢索這些讀數(shù)。
通過Zigbee廣播數(shù)據(jù)
使用nRF52840的Zigbee堆棧,傳感器數(shù)據(jù)被打包并無線傳輸?shù)絑igbee協(xié)調器(例如,帶有ZHA的家庭助理設置)。
步驟3:編譯和Flash固件
打開項目
啟動Segger Embedded Studio并打開。emProject文件位于從A克隆的項目目錄中
構建項目
單擊Build按鈕編譯代碼。確保在編譯過程中沒有錯誤。
刷新固件
使用Segger J-Link編程器將Omnimo nRF52840板連接到計算機。
第四步:與家庭助理集成
啟用ZHA集成
如果還沒有,請在家庭助理中啟用Zigbee家庭自動化(ZHA)集成。如果需要,請遵循官方的ZHA安裝指南。
配對傳感器
?Omnimo nRF52840單板使用USB Type-C或電池供電
?將Zigbee協(xié)調器設置為配對模式。
?復位Omnimo nRF52840板啟動配對。
?配對后,傳感器應該出現(xiàn)在“設備”部分的“家庭助手”中。
驗證數(shù)據(jù)
查看傳感器創(chuàng)建的溫濕度實體。您應該看到TEMP&HUM 24 CLICK傳感器的實時讀數(shù)。
本文編譯自hackster.io