Silicon Labs(芯科科技)在線技術社區提供這款簡單的藍牙傳感器項目示例,其基于最新的MG22E EK8200A能量采集(Energy Harvesting)開發套件來構建,可利用室內光能進行能量采集而無需電池運行,它能夠根據自身的能量感知動態調整行為,僅需一個非常小的太陽能電池板和鋰電容器(套件中已包含)供電即可運行。
軟件的部分則是在GitHub上默認示例應用的基礎上進行了修改。在本項目中,我們新增了通過I2C Qwiic接口使用SparkFun BME280溫度傳感器的功能。

在本次社區項目中,我們將帶你一步步完成這個項目的簡單復現,包括
設置MG22E開發套件擴展板和示例應用
接入Sparkfun QWIIC BME280 傳感器
設置能量閾值
配置藍牙RAIL負載數據
實現能量感知算法
在開始搭建項目之前,我們先來了解一下設備應用代碼的工作原理。
MG22E使用了e-peas AEM13920電源管理集成電路(PMIC),從一個5V光伏電池和一個10F電容器中管理能量。
設備首先進行冷啟動(cold-start boot up)。
在進行任何測量或發送任何信標之前,它會測量自身的源電壓(來自光伏電池)和存儲電壓(電容器),并將這些值存儲為參數,以便用于數據傳輸,更重要的是用于基于能量的決策。
如果MG22E檢測到有足夠的能量,它將喚醒I2C接口的BME280溫度傳感器,記錄并發送一個溫度值(以原始十六進制格式)。
MG22E使用芯科科技的RAIL庫構建包含溫度值和電壓值的BLE數據包,這些數據包可以通過SiConnect移動應用接收并解析。
設備會基于能量充電和放電情況(光伏和電容器電平的比值)計算一個能量健康得分(Energy Health Score)。
根據能量得分(或電容器中可用的能量),MG22E將進入最深層的EM4休眠模式,并根據能量情況決定休眠時間長度。

請按照GitHub鏈接中說明,安裝芯科科技的MG22E Energy Harvesting SDK擴展:https://github.com/SiliconLabs/energy_harvesting_applications/blob/main/example/bt_rail_soc_energy_harvesting_sensor/README.md
如果安裝正確,您應該能夠看到這些示例程序。

將Sparkfun QWIIC連接器連接到MG22E的?QWIIC?接口。請務必焊接BME280傳感器背面的焊盤,以關閉紅色LED燈,從而節省能量?!!!

請按照這些說明以及GitHub指南,在Simplicity Studio中啟用第三方驅動擴展(Third Party Driver Extensions),以支持BME280傳感器。

在Simplicity Studio中,可以很方便地配置傳感器的?I2C?接口,并將其添加到默認示例的app.c文件中。

當所有硬件連接完成后,我們可以按照相應步驟運行基礎示例,并使用臺式?Joulescope?或能量分析儀(Energy Profiler)測量每個關鍵操作的能量消耗。這一步驟應根據你修改過的硬件或具體環境進行相應調整。

我們會將這些閾值(電容器電壓水平、光伏電池電壓水平)存儲下來,以便在后續應用代碼中使用。
在這里,我們還設置了默認的休眠時間和低能耗休眠時間,以及一個簡單的能量健康得分計算公式(存儲電壓/?源電壓)。

這個公式僅作為一個初步示例,在原型調試階段需要進一步優化調整。
接下來,我們創建并存儲一些變量,用于配置低功耗藍牙(Bluetooth LE)RAIL?數據包以進行傳輸。為了節省能量,我們不會初始化完整的藍牙協議棧,而是利用MG22E的RAIL功能模擬一個低功耗藍牙數據包。

注意?—?設備名稱需要改為'E' 'H' 'S',而不是'E' 'H' 'Sensor'。
我們使用AEM13920的API獲取存儲電壓和源電壓,并將這些值保存到變量中用于后續計算。然后,我們應用能量感知算法,以判斷設備是否可以且應該進行溫度測量,或是需要延長深度休眠時間。

應用程序的其余部分按正常流程運行,并會發送?3?次重復信標。我們可以使用SiConnect Mobile應用,搜索'EHS'?來查看發送的原始數據。

例如:
0x0E5B = 3.675V
0x085D = 21.4° C
希望這個簡單的項目能成為您擴展自己的硬件、傳感器和能量算法的良好起點和靈感來源!閱讀更詳細內容請點擊文末的閱讀原文按鈕或訪問芯科科技在線技術社區:https://community.silabs.com/s/share/a5UVm000000ozEnMAI/batteryless-sensor-mg22e-energy-harvesting-explorer-kit-shields?language=en_US
掃描以下二維碼,關注芯科科技的社交媒體平臺?


