資料介紹
描述
概述
在這個(gè)項(xiàng)目中,我使用 Quickfeather 開(kāi)發(fā)板和 SensiML Toolkit 構(gòu)建了一個(gè)機(jī)器學(xué)習(xí)應(yīng)用程序的概念驗(yàn)證。目前正在進(jìn)行許多關(guān)于智能電網(wǎng)技術(shù)的研究和分析,這些技術(shù)有望有效緩解氣候變化。非侵入式負(fù)載監(jiān)控 (NILM) 被視為實(shí)現(xiàn)創(chuàng)新智能電網(wǎng)服務(wù)的關(guān)鍵技術(shù)。在這個(gè)項(xiàng)目中,我的目標(biāo)是家庭能源消耗分析,但它同樣適用于工業(yè)能源消耗。NILM 技術(shù)將能源消耗分解為其組件,并提供有關(guān)當(dāng)前設(shè)備的信息,并可用于執(zhí)行診斷。為什么我們需要 NILM?因?yàn)槲覀儾幌虢o每個(gè)家用電器都加一個(gè)傳感器來(lái)監(jiān)控。NILM 技術(shù)具有良好的可擴(kuò)展性并提供積極的解決方案,沒(méi)有任何電力危害,并且作為單點(diǎn)控制,可以方便地升級(jí)應(yīng)用程序并與其他在線服務(wù)連接以提供有用和及時(shí)的信息。它還提高了對(duì)用戶能源使用模式的認(rèn)識(shí),以便我們可以節(jié)省能源來(lái)拯救地球。
硬件和軟件設(shè)置
我們將使用 QuickFeather 開(kāi)發(fā)板。
QuickFeather 開(kāi)發(fā)板有許多板載傳感器,如上圖所示,但對(duì)于當(dāng)前項(xiàng)目,我們需要一個(gè)可以為我們提供有關(guān)電力特性信息的傳感器。為此,我們使用了 M5Stack Atom Socket Kit,它具有 HL8032 電能表集成電路,可通過(guò) UART 連接以 4800 bps 的速度提供數(shù)據(jù)。
M5Stack Atom 插座套件可安全使用高達(dá) 10A 的電流。它有一個(gè)連接到主電源的 3 針輸入電源插座,它具有可用于從 HLW8032 IC 獲取數(shù)據(jù)的針連接器。它還有一個(gè)內(nèi)置繼電器,可以使用 Grove 連接器來(lái)控制打開(kāi)/關(guān)閉主電源。有兩個(gè)輸出插座。(2 針/3 針)連接到電源板,最多可為 4 臺(tái)設(shè)備供電。對(duì)于這個(gè)項(xiàng)目,我只使用了兩個(gè)電器;風(fēng)扇(30W)和燈(90W)。對(duì)于數(shù)據(jù)收集,我們使用了 SensiML Data Capture Lab這是一個(gè) Windows 應(yīng)用程序,我們需要一臺(tái) Windows PC 來(lái)安裝它。因?yàn)槲矣幸慌_(tái) Macbook,所以我使用 VirtualBox 來(lái)安裝 Windows VM 和另一個(gè)用于 Linux 的 VM 來(lái)使用 QORK-SDK 構(gòu)建固件。請(qǐng)按照此處的說(shuō)明https://github.com/QuickLogic-Corp/qorc-sdk安裝 QORK-SDK。此外,如果我們想使用 Wi-Fi 連接在 Data Capture Lab 中捕獲數(shù)據(jù),我們需要安裝 SensiML Open Gateway應(yīng)用程序。假設(shè)樹(shù)莓派 4 安裝了最新的樹(shù)莓派操作系統(tǒng)。
我們需要許多 UART 連接才能使用。我們需要一個(gè) UART 連接來(lái)將 QuickFeather 連接到 M5Stack Atom Socket Kit。我們需要另一個(gè) UART 來(lái)向 Raspberry Pi 4 發(fā)送數(shù)據(jù)。我們還需要一個(gè) UART 來(lái)查看也連接到 Raspberry Pi 4 的調(diào)試消息。由于 QuickFeather 只有一個(gè)硬件 UART,我們需要使用 eFPGA 來(lái)啟用另外兩個(gè)硬件UART。對(duì)于這個(gè)項(xiàng)目,我們使用來(lái)自 QORK-SDK 存儲(chǔ)庫(kù)的兩個(gè)示例應(yīng)用程序的混合:
1. qf_apps/qf_fpgauart_app (加載FPGA UART網(wǎng)關(guān),啟動(dòng)FPGA時(shí)鐘)
2. qf_apps/qf_ssi_ai_app (使用Simple Streaming Interface或識(shí)別的數(shù)據(jù)收集)
至少對(duì)我來(lái)說(shuō),將兩個(gè)應(yīng)用程序合并在一起是一項(xiàng)相當(dāng)大的工作。最終應(yīng)用程序可以在這里找到:https ://github.com/metanav/Challenge_Climate_Change
Atom Socket Kit 中有一個(gè)繼電器和開(kāi)關(guān)引腳連接,連接到 QuickFeather 以控制繼電器。我們需要在 src/pincfg_table.c 中添加以下配置來(lái)初始化引腳。
{ // setup GPIO for External Button
.ucPin = PAD_24,
.ucFunc = PAD24_FUNC_SEL_GPIO_0,
.ucMode = PAD_MODE_INPUT_EN,
.ucPull = PAD_PULLUP,
.ucDrv = PAD_DRV_STRENGTH_4MA,
.ucSpeed = PAD_SLEW_RATE_SLOW,
.ucSmtTrg = PAD_SMT_TRIG_DIS
},
{ // setup GPIO for Relay Switch
.ucPin = PAD_23,
.ucFunc = PAD23_FUNC_SEL_GPIO_7,
.ucMode = PAD_MODE_OUTPUT_EN,
.ucPull = PAD_NOPULL,
.ucDrv = PAD_DRV_STRENGTH_4MA,
.ucSpeed = PAD_SLEW_RATE_SLOW,
.ucSmtTrg = PAD_SMT_TRIG_DIS
},
連接所有設(shè)備的原理圖可以在原理圖部分找到。我們可以在下面看到物理連接。
Atom Socket Kit (HLW8032) 使用低波特率 (4800) 甚至奇偶校驗(yàn),因此我們需要相應(yīng)地配置 FPGA UART。此外,另一個(gè) FPGA UART 配置為 115200 波特率,無(wú)奇偶校驗(yàn)。main.c 中有一個(gè)“init_fpga_uart”函數(shù)調(diào)用來(lái)處理它。
void init_fpga_uart()
{
UartBaudRateType brate;
UartHandler uartObj;
memset( (void *)&(uartObj), 0, sizeof(uartObj) );
uartObj.baud = BAUD_4800;
uartObj.wl = WORDLEN_8B;
uartObj.parity = PARITY_EVEN;
uartObj.stop = STOPBITS_1;
uartObj.mode = TX_RX_MODE;
uartObj.hwCtrl = HW_FLOW_CTRL_DISABLE;
uartObj.intrMode = UART_INTR_ENABLE;
uartHandlerUpdate(UART_ID_FPGA, &uartObj);
// wait
for (volatile int i = 0; i != 4000000; i++) ;
uart_init(UART_ID_FPGA, NULL, NULL, &uartObj);
uint32_t device_id = *(uint32_t *)FPGA_PERIPH_BASE ;
if (device_id == 0xABCD0002)
{
uartObj.baud = BAUD_115200;
uartObj.wl = WORDLEN_8B;
uartObj.parity = PARITY_NONE;
uartObj.stop = STOPBITS_1;
uartObj.mode = TX_RX_MODE;
uartObj.hwCtrl = HW_FLOW_CTRL_DISABLE;
uartObj.intrMode = UART_INTR_ENABLE;
uartHandlerUpdate(UART_ID_FPGA_UART1,&uartObj);
uart_init(UART_ID_FPGA_UART1, NULL, NULL, &uartObj);
}
}
我們將嘗試對(duì)以下 4 個(gè)類別進(jìn)行分類。
1. 風(fēng)扇
2. 燈
3. 燈和風(fēng)扇
4. 無(wú)負(fù)載
我們使用 4 個(gè)電氣特性:
1.電壓(伏)
2.電流(安培)
3. 真實(shí)功率(瓦特)
4. 視在功率(伏安)
在交流電路中,有功功率(也稱為有功功率或有功功率)是設(shè)備做有用功所消耗的實(shí)際功率。無(wú)功功率(僅在負(fù)載中吸收和返回的功率)與真實(shí)功率的組合稱為視在功率,它是電路電壓和電流的乘積,與相角無(wú)關(guān)。對(duì)于給定的地理區(qū)域,電壓幾乎是恒定的,但傳感器值有一些變化,我們稍后會(huì)看到 SensiML Toolkit 的 AutoML 是否會(huì)使用此功能。電氣特性對(duì)于單個(gè)電器或電器組合具有非常具體的特征。正如我們?cè)谙聢D中所看到的,它描述了當(dāng)燈關(guān)閉和風(fēng)扇連續(xù)打開(kāi)時(shí)的兩個(gè)事件,延遲幾秒鐘。
閃存數(shù)據(jù)采集固件
假設(shè) QORK-SDK 存儲(chǔ)庫(kù)已克隆到主目錄中,并且所有構(gòu)建工具鏈都已設(shè)置。
克隆存儲(chǔ)庫(kù):
$ cd ~/qork-sdk
$ source envsetup.sh
$ cd qf_apps
$ git clone https://github.com/metanav/Challenge_Climate_Change.git
$ cd challenge_climate_change
確保在 inc/app_config.h 中將固件模式更改為數(shù)據(jù)收集。
#define S3AI_FIRMWARE_IS_COLLECTION 1
#define S3AI_FIRMWARE_IS_RECOGNITION 0
我們需要 TinyFPGA-Programmer-Application 來(lái)刷新固件。請(qǐng)按照此處的說(shuō)明進(jìn)行安裝:https ://github.com/QuickLogic-Corp/TinyFPGA-Programmer-Application
$ cd GCC_Project
$ make
$ qfprog --port /dev/ttyACM0 --m4app output/bin/Challenge_Climate_Change.bin --mode m4
設(shè)備插件
設(shè)備插件是描述數(shù)據(jù)捕獲實(shí)驗(yàn)室 (DCL) 如何從設(shè)備收集數(shù)據(jù)的屬性列表。Data Capture Lab 允許我們通過(guò) SSF 文件導(dǎo)入設(shè)備插件。以下是用于導(dǎo)入 DCL 的 SSF 文件內(nèi)容。
{
"name": "QuickFeather Simple Stream [Custom]",
"uuid": "a612edcc-58fe-a534-15d7-1255447308ee",
"collection_methods": [
{
"name": "live",
"display_name": "Live Stream Capture",
"storage_path": null,
"is_default": true
}],
"device_connections": [
{
"display_name": "Serial Port",
"value": 1,
"is_default": true,
"serial_port_configuration": {
"com_port": null,
"baud": 115200,
"stop_bits": 1,
"parity": 0,
"handshake": 0,
"max_live_sample_rate": 3301
}
},
{
"display_name": "Wi-Fi",
"value": 2,
"is_default": true,
"wifi_configuration": {
"use_external_broker": false,
"external_broker_address": "",
"broker_port": 1885,
"device_ip_address": "192.168.3.6",
"device_port": 5555,
"max_live_sample_rate": 1000000
}
}],
"capture_sources": [
{
"max_throughput": 0,
"name": "Energy_Meter",
"part": "HWL8032",
"sample_rates": [
6,
7,
8
],
"is_default": true,
"sensors": [
{
"column_count": 4,
"is_default": true,
"column_suffixes": [
"VA",
"mA",
"W",
"V"
],
"type": "Energy_Meter_IC",
"parameters": [],
"sensor_id": 1529804975,
"can_live_stream": true
}]
}],
"is_little_endian": true
}
建筑知識(shí)包
為設(shè)備生成的模型稱為知識(shí)包。知識(shí)包包含用于推理的設(shè)備固件代碼。
有標(biāo)準(zhǔn)步驟可以為邊緣設(shè)備的每個(gè)機(jī)器學(xué)習(xí)項(xiàng)目構(gòu)建模型。
1. 原始數(shù)據(jù)采集
2. 數(shù)據(jù)標(biāo)注
3. 模型準(zhǔn)備
4.模型訓(xùn)練
5. 設(shè)備上的推理
SensiML Toolkit 有助于自動(dòng)化上述大部分步驟。
對(duì)于每個(gè)類,傳感器數(shù)據(jù)被捕獲 4 分鐘。由于電力負(fù)荷是給定持續(xù)時(shí)間的連續(xù)事件,因此捕獲的數(shù)據(jù)用單段注釋。
數(shù)據(jù)收集演示
使用 SensiML Analytics Studio Demo 創(chuàng)建知識(shí)包
閃光識(shí)別固件
假設(shè)應(yīng)用程序存儲(chǔ)庫(kù)已按照前面的步驟中所述進(jìn)行了克隆。
$ cd qork-sdk/qf_apps/challenge_climate_change
確保在 inc/app_config.h 中將固件模式更改為識(shí)別。
#define S3AI_FIRMWARE_IS_COLLECTION 0
#define S3AI_FIRMWARE_IS_RECOGNITION 1
構(gòu)建并刷寫(xiě)固件:
$ cd GCC_Project
$ make
$ qfprog --port /dev/ttyACM0 --m4app output/bin/Challenge_Climate_Change.bin --mode m4
推理演示
演示中顯示的推理速率似乎很慢,因?yàn)椴蓸勇蕿?6,我們使用 4 秒的樣本(總共 24 個(gè)樣本)進(jìn)行推理。此外,應(yīng)用程序中有一個(gè)消息隊(duì)列緩沖來(lái)自 HLW8032 傳感器的數(shù)據(jù),因此知識(shí)包需要一些時(shí)間才能在當(dāng)前事件更改時(shí)到達(dá)。
使用 SensiML Open Gateway 進(jìn)行推理演示
結(jié)論
我們已經(jīng)通過(guò)線路供電的 QuickFeather 演示了該應(yīng)用程序。由于 QuickFeather 僅通過(guò) UART 從傳感器獲取數(shù)據(jù),因此可以使用電池供電。雖然我們只使用了 2 個(gè)電器使用了 4 個(gè)類別,但該應(yīng)用程序是可擴(kuò)展的,并且通過(guò)捕獲更多數(shù)據(jù)并為許多其他電器訓(xùn)練模型,它可以輕松地對(duì)整個(gè)家用電器負(fù)載進(jìn)行分類。另外,將來(lái)我想嘗試分層模型來(lái)提高縮放版本的模型魯棒性。QuickFeather 開(kāi)發(fā)板和 SensiML Toolkit 具有為邊緣設(shè)備構(gòu)建和部署機(jī)器學(xué)習(xí)管道的巨大潛力。我希望在不久的將來(lái)看到適用于 MacOS 和 Linux 的數(shù)據(jù)采集實(shí)驗(yàn)室。
- 在SensiML的幫助下為人類和地球保護(hù)泥炭地
- 使用SensiML AI框架學(xué)習(xí)水培農(nóng)業(yè)
- 使用QuickFeather開(kāi)發(fā)工具包和SensiML
- 碩士學(xué)位論文《家庭智能網(wǎng)關(guān)的研究與實(shí)現(xiàn)》 24次下載
- 民航駕駛艙人機(jī)交互腦力負(fù)荷預(yù)測(cè)模型設(shè)計(jì) 6次下載
- 基于稀疏表示的電力負(fù)荷缺失數(shù)據(jù)補(bǔ)全方法 15次下載
- 可動(dòng)態(tài)判別電網(wǎng)異常負(fù)荷的CNN閥值模型 12次下載
- WiFi連接智能家庭信息圖免費(fèi)下載
- 一種居民配電網(wǎng)負(fù)荷諧波電流發(fā)射特性評(píng)估 17次下載
- 互聯(lián)電網(wǎng)負(fù)荷頻率控制器設(shè)計(jì) 2次下載
- 基于PR控制器的孤島微網(wǎng)不平衡負(fù)荷下控制策略 2次下載
- 電力負(fù)荷預(yù)測(cè)研究 0次下載
- 基于模板濾波的非侵入負(fù)荷辨識(shí)系統(tǒng) 0次下載
- 非侵入式家居負(fù)荷分解方法 19次下載
- 家庭用電負(fù)荷計(jì)算方式 194次下載
- 用電設(shè)備組的計(jì)算負(fù)荷 1369次閱讀
- 汽車電子基本電氣負(fù)荷講解 571次閱讀
- 基于CNN-LSTM網(wǎng)絡(luò)的電力負(fù)荷預(yù)測(cè) 3252次閱讀
- 電力負(fù)荷的關(guān)系分類 2096次閱讀
- 高壓負(fù)荷開(kāi)關(guān)的要求_高壓負(fù)荷開(kāi)關(guān)的用途 1383次閱讀
- 過(guò)負(fù)荷的火災(zāi)原因_過(guò)負(fù)荷的防火措施 4097次閱讀
- 高壓負(fù)荷開(kāi)關(guān)與斷路器的區(qū)別 1.5w次閱讀
- 高壓負(fù)荷開(kāi)關(guān)工作原理_高壓負(fù)荷開(kāi)關(guān)安裝 9426次閱讀
- 高壓負(fù)荷開(kāi)關(guān)選型_高壓負(fù)荷開(kāi)關(guān)的主要作用是什么 6917次閱讀
- 戶內(nèi)高壓負(fù)荷開(kāi)關(guān)_戶內(nèi)高壓負(fù)荷開(kāi)關(guān)型號(hào)含義 9810次閱讀
- 高壓真空負(fù)荷開(kāi)關(guān)安裝_真空高壓負(fù)荷開(kāi)關(guān)型號(hào)及含義_高壓真空負(fù)荷開(kāi)關(guān)選型 1w次閱讀
- 施耐德負(fù)荷開(kāi)關(guān)_施耐德負(fù)荷開(kāi)關(guān)型號(hào)_施耐德開(kāi)啟式負(fù)荷開(kāi)關(guān)使用和維護(hù) 1.1w次閱讀
- 什么是高壓負(fù)荷開(kāi)關(guān)_高壓負(fù)荷開(kāi)關(guān)作用_高壓斷路器與負(fù)荷開(kāi)關(guān)的區(qū)別 4347次閱讀
- 油浸式高壓負(fù)荷開(kāi)關(guān)_二工位油浸式負(fù)荷開(kāi)關(guān)_四工位油浸式負(fù)荷開(kāi)關(guān) 1.3w次閱讀
- 智能家庭應(yīng)用之語(yǔ)音識(shí)別系統(tǒng) 4156次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開(kāi)發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多