本文介紹如何使用NanoEdge AI Studio快速部署AI應(yīng)用。
本應(yīng)用的目的是透過馬達(dá)控制板的電流訊號(hào),偵測風(fēng)扇濾網(wǎng)的堵塞百分比。當(dāng)風(fēng)扇堵塞時(shí),馬達(dá)電流訊號(hào)波型將有所不同,但利用傳統(tǒng)演算法偵測差異並不容易。因此,機(jī)器學(xué)習(xí)演算法便成為解決這個(gè)問題的絕佳選擇。
此範(fàn)例可應(yīng)用於空調(diào)濾網(wǎng)和吸塵器濾網(wǎng)堵塞偵測等類似情況,也可延伸應(yīng)用於電動(dòng)馬達(dá)的其他異常偵測。
硬體與軟體前置準(zhǔn)備
P-NUCLEO-IHM03馬達(dá)控制套件用於驅(qū)動(dòng)風(fēng)扇,由NUCLEO-G431RB主板、馬達(dá)控制擴(kuò)充板與無刷馬達(dá)所組成。
NanoEdge AI Studio則用於自動(dòng)產(chǎn)生機(jī)器學(xué)習(xí)函式庫,並且整合至由STM32 Motor Control Workbench所產(chǎn)生的馬達(dá)控制軟體中。
利用NanoEdge AI Studio 尋找最佳AI函式庫
建立新專案
在主視窗中選擇「Anomaly Detection」,並建立新專案。
在「Project Settings」步驟中,需進(jìn)行以下設(shè)定:
- Name:專案名稱
- Max RAM:使用者希望為AI函式庫配置之最大的RAM空間。Studio僅會(huì)在「Benchmark」步驟當(dāng)中,利用這項(xiàng)硬體資源限制來搜尋AI函式庫。
- Max Flash:使用者希望為AI函式庫配置之最大 Flash 空間,與最大RAM相似。此選項(xiàng)僅會(huì)在選擇「Limit Flash」時(shí)啟用。
- Target:此專案的目標(biāo)MCU或開發(fā)板。使用者可選擇STM32 MCU 、ISPU或STM32 MCU任一所對(duì)應(yīng)的開發(fā)板。
- Sensor type:用於資料收集的感測器類型。此處採用的是內(nèi)建於馬達(dá)控制板的電流感測器。
匯入訊號(hào)檔案
在接下來的兩個(gè)步驟(步驟 2 與步驟 3),需要匯入兩個(gè)訊號(hào)檔案,Studio將會(huì)提供格式說明,如圖五所示:
- 「Regular signals」 檔案對(duì)應(yīng)的是風(fēng)扇在正常運(yùn)作下的行為,這些資料是在風(fēng)扇濾網(wǎng)未堵塞時(shí)(如圖六所示)收集而得。
- 「Abnormal signals」檔案對(duì)應(yīng)的是風(fēng)扇異常的行為,這些資料是在風(fēng)扇濾網(wǎng)完全堵塞時(shí)(如圖七所示)收集而得。
函式庫基準(zhǔn)測試
在步驟 4 中,我們將啟動(dòng)函式庫的「Benchmark」並進(jìn)行監(jiān)測。NanoEdge AI Studio會(huì)依據(jù)步驟 2 和步驟 3 所得之訊號(hào),搜尋最佳且可用的AI函式庫。
首先,執(zhí)行新的「Benchmark」基準(zhǔn)測試,如圖八所示:
然後,選擇正常訊號(hào)和異常訊號(hào),以及電腦在進(jìn)行基準(zhǔn)驗(yàn)證時(shí)所使用的微處理器核心數(shù)量。
啟動(dòng)「Benchmark」後便能即時(shí)監(jiān)測候選AI函式庫的效能和以下效能指標(biāo)的變化:
- 「Balanced accuracy」表示正確分類的數(shù)量與輸入樣本總數(shù)的比例。這是機(jī)器學(xué)習(xí)中最常用的評(píng)估指標(biāo)之一。
- 「Confidence」 表示對(duì)結(jié)果的信心程度。正確分類的正樣本和負(fù)樣本之間的差距越大,信賴度就越高。
- 「RAM 」表示候選AI函式庫所需之RAM的大小。
- 「Flash」表示候選AI函式庫所需的 Flash 大小。
基準(zhǔn)驗(yàn)證完成後,會(huì)出現(xiàn)摘要畫面。這表示當(dāng)AI函式庫內(nèi)嵌至最終的硬體應(yīng)用時(shí),為取得最佳效能所需的最低學(xué)習(xí)次數(shù)。在此特定範(fàn)例中,NanoEdge AI Studio建議應(yīng)在偵測階段前,至少呼叫 learn() 函數(shù) 30 次來學(xué)習(xí) 30 個(gè)正常運(yùn)作的訊號(hào)。
透過模擬驗(yàn)證函式庫
NanoEdge AI Studio也提供模擬器,無需撰寫任何嵌入式軟體便可協(xié)助使用者測試和驗(yàn)證在「Benchmark」過程中所選取的AI函式庫,。
依照上一步驟建議,讓AI函式庫學(xué)習(xí)最低次數(shù)的正常訊號(hào)後,再執(zhí)行偵測,藉以測試AI函式庫的行為是否符合預(yù)期。
如圖十二範(fàn)例所示,100個(gè)訊號(hào)已學(xué)習(xí)完成,而即時(shí)訊號(hào)和先前學(xué)習(xí)之正常訊號(hào)相似度為 35%,這代表風(fēng)扇有部分堵塞。
函式庫部署與整合
當(dāng)選取的AI函式庫經(jīng)過驗(yàn)證後,就可以進(jìn)入最後一個(gè)步驟:「Deployment」,其中可針對(duì)AI函式庫進(jìn)行編譯、下載及為用於嵌入式軟體做準(zhǔn)備。
在編譯函式庫前,有數(shù)個(gè)編譯選擇可供使用。在此範(fàn)例中需勾選「Float-abi」選項(xiàng),才能支援浮點(diǎn)數(shù)資料作業(yè)。然後,按一下「COMPILE LIBRARY」即可下載NanoEdge AI函式庫。
一個(gè).zip壓縮檔案將會(huì)下載至電腦,其中包含了所有的相關(guān)文件、NanoEdge AI模擬器、靜態(tài) AI函式庫和函式庫的標(biāo)頭檔。此靜態(tài)函式庫可輕鬆整合至嵌入式軟體。
最後,在NanoEdge AI Studio的協(xié)助下,無需具備任何 AI 專業(yè)知識(shí),只需幾個(gè)簡單步驟,就能快速部署 AI 應(yīng)用。