MEMS 自動駕駛 感測融合 感測器 情境感知

內嵌機器學習模組大減功耗 慣性感測迎來真「智慧」

2020-03-09
微機電系統(MEMS)感測器正在湧入市場,這些感測器成本效益高,易於整合在情境感知解決方案中,提供有關其所處情境的重要資訊。這種多用途感測技術有許多使用案例:MEMS感測器在穿戴式聯網裝置中用於偵測使用者動作和手勢;工業MEMS感測器在工廠維護和故障預測中發揮重要作用,有助於提升工廠生產效率;MEMS對車輛安全性和自動駕駛發展至關重要。

 

感測器資料應用是許多應用情境的基礎,各種感測器的大規模應用促使感測器成本下降。成本降低可讓同一裝置安裝多個同類型感測器,而隨著同類型感測器的數量增加,不同類型的感測器和感測器總數也在不斷成長。為了獲得更可靠的資訊,並研發更高品質的應用,現在開發出了感測器資料融合技術,同時提升了慣性模組的應用規模,甚至為更多應用打開了大門。

終端裝置的應用若只有感測器還不夠,更需要智慧元件來處理並解讀資訊。應用處理器負責讀取和處理資訊,隨著感測器數量增加,應用處理器的任務變得更加複雜。同樣地,連接感測器和應用處理器的匯流排也變得至關重要,大量交換資料可能造成資料擁堵,使匯流排性能下降。 最初,有人認為更快的匯流排和性能更高的處理器可以解決這些問題。第二階段是「智慧感測器」一詞被濫用,把通用低功耗處理器從板上移到感測器內部,做成一個系統級封裝解決方案,這種透過增加一個微控制器的方式有效增加感測器數量的簡單方法被稱為「智慧」。

本文將以意法半導體(ST)在設計開發LSM6DSOX時的考量與設計作為案例分享,首先是將所有已知應用在概念上分為兩大類別:一種是用歸納演算法以帶來效果更好的應用;另一種則是透過演繹演算法實現效果更符合預期的應用。分析實際資料模式同時保持最高統計性能,作為評估最佳設計方案的方法標準。

最後,為了便於執行演繹演算法,採用在慣性單元內嵌入一個多達16個有限狀態機的數位模組;針對歸納型演算法,該公司研發了一個機器學習模組,該模組能夠與現有人工智慧工具互動,其採用監督式機器學習方法,在感測器內部對複雜運算進行預先處理,分類器能夠分析即時資料,識別活動和情境並進行分類,而參數和功能則具有很高的可配置性。

這種感測器資料分析專用智慧技術可以執行複雜演算法,把很大一部分的運算負荷轉交由感測器處理,使其它裝置保持空閒狀態。透過這種方式,可以最大程度地降低功耗、減輕通訊匯流排負擔,並最大程度地提升系統的整體效能。 感測器僅在必要時才喚醒其它裝置和應用處理器,透過這種方式,可以大幅降低功耗。

續航力/傳輸速率偏重難取捨

在過去十年裡,物聯網應用規模呈指數成長。大多數物聯網應用都涉及在可能沒有電源的位置測量物理數值。增裝電源線通常是行不通的,因此,電池是首選的供電方案,而且無線資料傳輸是必選的。

物聯網相關應用至少需要一個感測器獲取資料和一個傳輸媒介發送資料。電源需要為資料傳輸媒介和感測器供電。在設計這種類應用時,需要在這個方面做出權衡和取捨:是最大限度延長電池續航時間還是提高資料傳輸頻率?

應用設計者可用一個在市面上販售的重要工具來解決這個難題。這個工具是一個精密的運算單元,可以執行參數測量和資料傳輸任務,效果和效能都很好,這樣的運算單元通常是針對低功耗設計的通用微控制器。對於低功耗應用,無線資料傳輸相較其它處理任務更重要,因此,物聯網應用設計策略是,如果其它處理任務允許降低通訊速度,則可以將運算單元轉移到物聯網端。

本文旨在介紹創新感測器在降低產品功耗方面取得的新進展。新型慣性模組LSM6DSOX允許將演算法處理過程全部或部分移轉至感測器的客製化低功耗環境。這種方法具有廣泛的可配置性,以確保廣泛的應用。本文首先介紹一個創新的嵌入式演算法,並結合應用案例說明其優勢。接著專門探討機器學習處理,最後則介紹一個好用的客製化支援軟體,使用者可以根據需求快速配置軟體,以開創新應用。

嵌入式演算法方案

簡單的物聯網應用模型包括發射器/接收器、運算單元、致動器或感測器和電池。以智慧手環為例,智慧手環能夠辨識使用者動作,並輸出相關資訊:使用者步行多遠、乘車多長時間等。當然,智慧手環應具有翻腕顯示日期和時間的功能。藍牙低功耗系統晶片是執行傳輸和控制的關鍵元件。該解決方案嵌入了完整的藍牙網路處理器和執行應用程式的應用處理器。應用處理器包括低功耗微控制器、使用者程式NVM記憶體、資料記憶體、程式設計記憶體(NVM鏡像)以及通訊介面(序列周邊介面(SPI),I2C等)。本文的系統範例可以大致估算出該解決方案的功率。這款內建微控制器的「智慧」藍牙模組通常具有不同的功耗模式,下面列出了最常見的模式:

・睡眠模式:

此模式用於關閉大多數內部模組或使其處於低功耗狀態,以最大程度地降低功耗。從此模式返回到正常工作模式需要一些時間(0.5~2ms)。該模式電流消耗在0.5~2μA之間。

・微控制器工作模式:

射頻發射器/接收器關閉,微控制器正常運作。此模式的電流消耗在1~3mA之間。

・射頻收發模式:

裝置處於通訊連接狀態,功耗為3~20mA。

假設智慧藍牙模組中的微控制器透過I2C/SPI介面連接慣性模組,感測器資料輸出資料速率設定為25Hz。每當嵌入式16MHz時鐘域生成樣本時,微控制器就會退出睡眠模式,以讀取感測器資料並執行活動識別演算法。高品質的活動識別演算法平均需要4ms的處理時間。藍牙傳輸是間歇性的,取決於使用者要求(一天一次)。

圖1顯示了微控制器執行演算法時所占的空比時序。Tstart是微控制器的喚醒時間、Talgo是演算法的執行時間,而Todr則是感測器兩次讀取操作的間隔。

圖1  微控制器從睡眠到喚醒的時序

下方為總平均電流ITOT的基本計算公式,其中包含各種主要電流消耗參數:

IBUS是介面匯流排消耗的電流;SPI匯流排的讀取電流應小於1μA,I2C匯流排約在2~5μA之間。射頻是間歇性傳輸,所以功耗可以忽略不計。考量到每個參數取值取其聲明範圍的中間值,最後得到的ITOT 為230μA。

新型慣性模組嵌入式演算法是經過重新設定之可以達到的「活動識別」,其工作電流小於8μA。這裡所指的嵌入式演算法與在微控制器上執行的演算法在性能和品質上完全相同。嵌入式解決方案的顯著優勢是在感測器內部產生可用資料,因此不存在IBUS功耗。此外,嵌入式解決方案完全沒有微控制器安全退出睡眠狀態所需的Tstart時間,當Tstart和IBUS兩項參數均為零時,ITOT估算值是200μA,這意味著,使用相同公式falgo×IUCORE×Talgo計算,演算法從微控制器遷移到感測器使功耗降至二十五分之一。

本文收集最常見的使用案例,然後將其分為兩類。第一類是由適合使用有限狀態機的演算法所組成,第二類則基於需要統計分析(模式分析)並且可以透過決策網(樹)有效實現的應用。針對這兩大類應用,研發出一個覆蓋現有演算法的「元命令」集,並確保演算法具有廣泛的可重新配置性,以處理新的自訂需求。最後一步是演算法分析,目的是找到最佳的低功耗且有效的演算法定制邏輯。在不影響演算法性能的情況下,按照特定應用需求簡化演算法。

機器學習處理

有限狀態機是利用本身具備的演繹推理特性:從假設開始,檢驗達到特定邏輯狀態的概率。對於動作偵測演算法,演繹推理是確定一系列事件是否滿足「規則」。這種方法適用於大多數手勢偵測演算法,當然,不能全部適用。例如,手機舉起到放下的手勢演算法可以完全基於以下事實:手機加速度計偵測到的重力主要是在同一個軸上,並在一個時間序列後,檢測到的重力方向將會變成相反方向。修改一些參數就可以更改手勢定義,這些參數包括軸定義、臨界值和序列持續時間。步行偵測等動作演算法幾乎不可能透過簡單的狀態機來定義,因為變數數量會急劇增加,感測器定位、頻率、地形和個人行為導致感應訊號變化很大。從上一個案例中,可以得出一個更具一般性的概念:雖然手機舉起到放下的手勢統計方差在一個人群中是較明顯的,但是可以進行演繹推理應用設計;而步行動作會引起廣泛的統計方差,演繹推理方法應該棄用,而採用歸納推理方法。

機器學習處理(Machine Learning Processing, MLP)的基本原理是允許在晶片上執行資料驅動型演算法,研發從輸入模式構建模型的能力。在過去的十年中,互聯網和物聯網爆炸式成長,大量資訊產生。隨著資料量急劇增加,資料管理工具也被開發出來,使資料開始有應用價值。機器學習處理解決方案被認為適合在慣性感測器上執行資料驅動演算法。MLP具有很高的可重新配置性,在慣性感測器領域達到了預期效果,可以在超低功耗環境執行演算法,適用於耗電量大的產品,例如,物聯網演算法。

資料探勘(Data Mining)是機器學習的一個重要分支:它是一個綜合機器學習、模式識別和統計學的跨學科領域,其目的是發現知識。 資料探勘工具最後產生一個決策樹,應用設計是從一個資料模式集合開始,以在MLP內核心上載入決策樹結束。使用者可以透過支援軟體管理整個應用設計過程,在下一章將介紹支援軟體,以及MLP內核心背後的基本模組。

圖2是機器學習處理內核心的整體結構圖,從圖中不難看出軟體層和硬體層之間的邊界。該應用設計從感測器資料模式開始,模式是描述MLP內核心在運作時必須理解的知識。以活動識別演算法為例,MLP從涉及要識別的活動(步行、跑步、運動的車輛,無動作等)的模式開始執行,目的是直接從感測器資料推論出當前活動的結果。最多可以將3個感測器的資料設定為演算法輸入。陀螺儀和加速度計模組位於感測器內部,而外部感測器(例如磁力計)的資料則可以透過嵌入式I2C控制器讀取。輸入感測器資料由物理感測器的軸和數值組成(表1)。

圖2  MLP內核整體結構圖

要想設定輸入資料,還有多個可設定的濾波器可用,如表2所示。

原始資料和過濾資料都可以設為功能模組的輸入,功能模組執行資料的統計計算,輸出可以設定成多達19個不同的統計功能。表3中列出了可用功能。主要功能集分為觸發式和視窗式兩個類別,前者是按照功能運算的結果,後者是按照固定時窗間隔統計的結果。儘管所有功能計算結果可以是視窗式或觸發式功能集,取決於使用者的設定,但只有這些功能的子集才可以生成觸發訊號。

在功能設定結束時,軟體工具輸出一個設定檔和一個ARFF檔。設定檔安裝在慣性單元上用於配置MLP,ARFF檔用於資料採擷工具,是與MLP處理器晶片匹配的。資料探勘工具組建ARFF檔案,針對特定應用案例優化(或「確定」)選擇最佳的功能集,並輸出決策樹及相關統計性能。 在資料探勘工具處理和回饋後,可以重新處理資料並優化功能集。當統計性能符合期望時,可以透過軟體工具產生的設定檔將決策樹載入到MLP內核心上。

支援軟體

意法半導體研發出一個使採用統計學/機器學習方法之適合程式設計的工具,有了這個工具,裝置設定過程變得輕鬆快速。

這個機器學習處理設定工具是一個擴充版的Unico GUI圖形化使用者介面軟體(意法半導體所有MEMS感測器展示板通用)。Unico軟體連接STM32微控制器的主機板,以提供MEMS感測器與PC GUI之間的通訊。該軟體以圖形和數位形式顯示感測器輸出,並允許使用者保存或全面管理裝置的資料。

Unico軟體允許讀取MEMS感測器寄存器,可以快速設定寄存器,並可以直接在裝置上輕鬆測試設定。同時還可以將當前寄存器的配置保存為文字檔,並可以從現有檔中載入設定。這樣,可以在幾秒鐘內重新設定感測器。

採用統計/機器學習的演算法要求收集資料日誌。使用Unico GUI可以做到這一點。每個資料日誌都必須關聯預期結果(例如靜止、步行、跑步等)。該工具收集這些資料模式用於計算某些功能(圖3)。

圖3  資料模式表

該工具可為原始資料選擇濾波器,選擇用過濾資料計算哪些功能,計算結果的功能將是決策樹的屬性。幾個步驟後,該工具將產生一個屬性關係檔(Attribute-Relation File, ARFF)(圖4)。

圖4  配置表

ARFF檔是決策樹產生過程的起始點。決策樹可以由不同的機器學習工具而產生。懷卡托大學開發的軟體Weka能夠從屬性關係檔開始產生決策樹。Weka工具可以評估哪些屬性適合決策樹。透過更改Weka中所有可用參數,可以實現不同的決策樹設定(圖5)。

圖5  Weka的屬性圖

在決策樹產生後,可以將其上傳到意法半導體的軟體工具,完成MEMS感測器的寄存器的配置。

透過讀取感測器寄存器,Unico GUI可以閱覽決策樹輸出狀態(圖6)。

圖6  Weka中決策樹的產生

應用範例

針對前文所介紹的範例,進一步做了一些電流消耗測量,選擇了一個活動識別演算法作為範例。該演算法的性能在模式資料庫中經過明確評估,而且在普通通用微控制器上執行時電流消耗約為數百mA。上述介紹的支援軟體,可以輕鬆地配置MLP內核心,執行該活動識別演算法。 表4總結了在Cortex-M3上執行動作識別演算法的電流要求,以及在LSM6DSOx MLP上執行同一演算法增加的電流需求。

世界網路化程度越來越高:聯網裝置可以交換大量資料。物聯網應用依賴於三個關鍵模組:感知、智慧和通訊。本文介紹了一種高度可設定之嵌入在慣性感測器中的數位模組。數位模組為感測器增加了智慧,可以大幅降低系統級功耗。為了快速開發應用原型,隨硬體一起提供了數位模組設定支援軟體。上述的應用案例清楚地闡述,數位模組可大幅降低電流消耗。智慧感測器是賦能電池續航能力至關重要的新應用的關鍵技術。

(本文作者任職於意法半導體)

 

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!