基于 Omnimo nRF52840 設(shè)計溫濕度監(jiān)測系統(tǒng)
通過啟用BLE的溫度和濕度監(jiān)測,探索Omnimo nRF52840開發(fā)板的能力
Omnimo nRF52840開發(fā)板:啟用ble的溫度和濕度監(jiān)測
概述
本項目演示了如何將Omnimo nRF52840開發(fā)板與TempHum 23點(diǎn)擊傳感器(SHT4x)和Android應(yīng)用程序藍(lán)水果LE Connect結(jié)合使用,以監(jiān)測溫度和濕度水平。通過兩個可訪問的用戶按鈕,用戶可以在不同的測量模式之間切換,并通過藍(lán)牙低功耗(BLE)顯示當(dāng)前模式和環(huán)境數(shù)據(jù)。
TempHum 23 Click是一種基于microbus的Click板,具有SHT4x傳感器,以其在廣泛測量范圍內(nèi)的高精度而聞名。通過將該傳感器與Omnimo nRF52840集成,并通過藍(lán)果LE Connect應(yīng)用程序利用BLE,我們?yōu)榄h(huán)境監(jiān)測創(chuàng)建了強(qiáng)大的物聯(lián)網(wǎng)解決方案。
需求
硬件
?Omnimo nRF52840:具有BLE功能的開發(fā)板。
?TempHum 23 Click:一款兼容microbus的Click板,帶有SHT45傳感器。
?安裝藍(lán)果LE Connect應(yīng)用程序的安卓設(shè)備。
軟件
?Python庫:
?adafruit_sht4x:用于連接SHT4x傳感器。
?adafruit_ble:用于處理BLE通信。
?adafruit_sht4x:用于與SHT4x傳感器接口。adafruit_ble:用于處理BLE通信。
?藍(lán)果LE Connect app: Android和iOS設(shè)備均可使用,實現(xiàn)與ble項目的無線通信。
指令
步驟1:設(shè)置硬件
?通過microbus連接器將TempHum 23點(diǎn)擊連接到Omnimo nRF52840。
步驟2:準(zhǔn)備開發(fā)環(huán)境
?如果還沒有完成,請在Omnimo nRF52840上安裝CircuitPython或MicroPython。
?在主板上安裝必要的Python庫(adafruit_sht4x, adafruit_ble)。您可以在它們各自的存儲庫中找到安裝說明。
步驟3:上傳代碼
?將提供的Python代碼片段復(fù)制到一個名為code.py的文件中。
?將此文件傳輸?shù)絆mnimo nRF52840的根目錄。
步驟4:配置BLE連接
?從谷歌Play Store或其他可信來源下載并安裝藍(lán)果LE Connect應(yīng)用程序。
?打開應(yīng)用程序,掃描附近的BLE設(shè)備。
?一旦您的Omnimo nRF52840出現(xiàn)在可用設(shè)備列表中,就連接到它。
?使用繪圖監(jiān)控溫度和濕度值
步驟5:測試系統(tǒng)
?按下按鈕BTN1,循環(huán)通過SHT4x傳感器支持的各種測量模式。
?按下BTN2按鈕,通過BLE將當(dāng)前模式的名稱發(fā)送到連接的Android設(shè)備。
?通過藍(lán)果LE Connect應(yīng)用程序中的UART控制臺功能監(jiān)控當(dāng)前模式(除了溫度和濕度值外)。
代碼的解釋
以下是所提供代碼中的關(guān)鍵部分:
?定義了SHT4x傳感器的所有可能的工作模式,允許在功耗與精度權(quán)衡方面的靈活性。
?檢測何時按下模式切換按鈕,增加當(dāng)前模式索引,相應(yīng)地更新傳感器的模式,并應(yīng)用短的脫波延遲。
?當(dāng)顯示模式按鈕被按下時,通過BLE將當(dāng)前模式的字符串表示發(fā)送到連接的設(shè)備,然后是一個脫扣延遲。
?測量當(dāng)前的溫度和濕度值,然后將其以逗號分隔的值通過BLE傳輸?shù)竭B接的設(shè)備。
結(jié)論
該項目突出了Omnimo nRF52840與TempHum 23 Click傳感器和Bluefruit LE Connect應(yīng)用程序相結(jié)合的功能,以創(chuàng)建強(qiáng)大的物聯(lián)網(wǎng)環(huán)境監(jiān)測解決方案。它展示了將先進(jìn)傳感器與BLE技術(shù)集成在一起以遠(yuǎn)程提供實時數(shù)據(jù)訪問是多么容易。
本文編譯自hackster.io