來源:DigiKey 智能揚聲器和其他聯(lián)網(wǎng)集線器構(gòu)成了智能家居的核心,方便了用戶控制設(shè)備和訪問互聯(lián)網(wǎng)。隨著這些設(shè)備的普及,有兩個趨勢顯而易見:用戶更喜歡語音控制,而不是按鍵或復(fù)雜的菜單系統(tǒng);由于擔(dān)心隱私問題,用戶對持續(xù)的云連接越來越不適應(yīng)。 然而,一個強大而安全的語音用戶界面 (VUI) 通常需要強大的硬件和復(fù)雜的軟件來進行語音識別。否則很可能導(dǎo)致性能低下和用戶體驗不佳。此外,許多智能揚聲器和集線器都是由電池供電的,因此必須在嚴格的電力預(yù)算范圍內(nèi)實現(xiàn) VUI。對于缺乏語音界面經(jīng)驗的開發(fā)人員來說,這樣一個雄心勃勃的項目可能會令人望而生畏。 為此,芯片制造商推出了一種基于音素的技術(shù),大大降低了處理要求。這是一款高精度、高效率的 VUI 軟件,可在熟悉的 32 位微控制器 (MCU) 上運行,并受到易于使用的設(shè)計工具支持。 本文首先介紹了 VUI 面臨的挑戰(zhàn)和使用案例。然后介紹了易于使用的商業(yè) MCU 應(yīng)用軟件和適合互聯(lián)家居應(yīng)用的基于本地音素的 VUI 軟件。文章最后向開發(fā)人員展示如何使用 Renesas MCU、VUI 軟件和評估套件啟動 VUI 項目。 構(gòu)建 VUI 面臨的挑戰(zhàn) VUI 是一種語音識別技術(shù),可通過語音指令與電腦、智能手機、家庭自動化系統(tǒng)或其他設(shè)備進行交互。在經(jīng)歷了早期的工程挑戰(zhàn)后,該技術(shù)已經(jīng)成熟,成為一種可靠的控制界面,目前廣泛應(yīng)用于智能揚聲器和其他智能家居設(shè)備。VUI 的主要優(yōu)勢在于其便利性:在語音范圍內(nèi)的任何地方都能進行即時控制,無需使用鍵盤、鼠標(biāo)、按鈕、菜單或其他界面來輸入指令(圖 1)。 ![]() 圖 1:VUI 技術(shù)因其方便、靈活,已在家庭和智能樓宇中廣泛采用。(圖片來源:Renesas) VUI 的缺點就是其復(fù)雜性。傳統(tǒng)技術(shù)依靠用特定字詞對模型進行長時間的訓(xùn)練。但自然語言處理與詞序無關(guān),需要大量的開發(fā)工作和強大的計算能力才能實時運行。這拖慢了 VUI 的廣泛運用。 現(xiàn)在,一種新技術(shù)簡化了 VUI 軟件,可以讓其在小型、高效的微控制器 (MCU) 上運行,如 Arm® Cortex®-M 器件。這種技術(shù)所依賴的事實依據(jù)是,每句話中的所有單詞都是由稱為音素的語言聲音組成的。音素數(shù)量遠遠少于單詞數(shù)量;英語有 44 個,意大利語有 32 個,而傳統(tǒng)的夏威夷語只有 14 個。如果 VUI 使用由 200 個單詞組成的英語指令集,那么每個單詞都可以從 44 個單詞中分解出與之相關(guān)的音素。 在 VUI 軟件中,每個音素都可以用數(shù)字代碼(或“標(biāo)記”)來識別,用各種標(biāo)記組成語言。將單詞存儲為聲音需要大量的計算資源,占用的存儲空間遠大于存儲為標(biāo)記的音素。按照預(yù)期的順序處理音素標(biāo)記(以及指令詞)進一步簡化了計算,并使 VUI 軟件能夠在本地適中的 MCU 上運行(圖 2)。 ![]() 圖 2:用音素表示單詞需要很少的微控制器資源。(圖片來源:Renesas) 這意味著,通過使用音素實現(xiàn)的軟件效率可以使處理過程在本地運行。不需要云處理,就意味著不需要持續(xù)的互聯(lián)網(wǎng)連接,而互聯(lián)網(wǎng)連接也會帶來用戶隱私和數(shù)據(jù)安全問題。 Renesas 作為其生態(tài)系統(tǒng)的一部分展示了一個基于音素原理的商用 VUI 軟件包。這款名為 Cyberon DSpotter 的軟件創(chuàng)建了一種 VUI 算法,其精簡程度足以在配備 Arm Cortex-M4 和 M33 內(nèi)核的 Renesas RA 系列 MCU 上運行。 使用 Cyberon DSpotter 進行開發(fā) Cyberon DSpotter 建立在音素和音素組合庫的基礎(chǔ)之上。這是一種替代方法,傳統(tǒng)方法為了識別特定單詞需要進行計算量巨大的訓(xùn)練。開發(fā)人員可以使用 DSpotter 建模工具將單詞分解為音素,然后將其表示為標(biāo)記。 DSpotter 是一款嵌入式(非云)軟件,可用作本地語音觸發(fā)器和指令識別解決方案,具有強大的降噪功能。它消耗的資源極少,準(zhǔn)確性極高。根據(jù)所選 MCU 的不同,還可實現(xiàn)安全數(shù)據(jù)傳輸。 DSpotter 會查詢每個指令單詞或短語,并將其分解為音素。然后,VUI 的指令集和支持數(shù)據(jù)會被內(nèi)置到一個二進制文件中,開發(fā)人員會將該文件與 Cyberon 庫一起放入項目中。該庫和二進制文件一起用于 MCU,以支持對所需語音指令的識別。 DSpotter 工具可創(chuàng)建“指令集”,開發(fā)人員的程序可將這些指令集邏輯連接起來,以創(chuàng)建不同級別的 VUI。這樣就可以發(fā)出多級指令,例如“請把燈泡調(diào)到高亮”:指令詞語是“燈泡”,后跟“調(diào)到”和“高亮”。一個組中的每個指令都有自己的索引,一個級別中的每個指令也有自己的索引(圖 3)。 ![]() 圖 3:DSpotter 工具允許創(chuàng)建“指令集”,開發(fā)人員的程序可將這些指令集邏輯連接起來,以創(chuàng)建不同級別的 VUI。(圖片來源:Renesas) DSpotter 庫處理傳入的聲音,并搜索與數(shù)據(jù)庫中指令相匹配的音素。當(dāng)找到匹配時,它會返回索引和組號。這種安排可以讓主應(yīng)用代碼創(chuàng)建一個分層的開關(guān)語句,以處理收到的指令字/詞。由此產(chǎn)生的程序庫非常小,可以安裝在只有 256KB 閃存和 32KB SRAM 的 MCU 上。如果有更多存儲空間,指令集還可以增長。 開發(fā)人員必須認識到,在 VUI 中使用音素法是有局限性的。由于 MCU 的資源相對有限,Cyberon DSpotter 只能進行語言識別,而非語音識別。這意味著軟件無法進行自然語言處理。因此,如果指令字不按邏輯順序排列(例如,用“高亮”、“燈泡”、“調(diào)為”代替“燈泡”、“調(diào)為”、“高亮”),系統(tǒng)將無法識別該指令,并將重置回頂層。 一個設(shè)計建議是在 VUI 中添加一個視覺指示器(如 LED 燈),當(dāng)處理器認為自己處于指令集頂層時,指示器會提示用戶按邏輯順序重新下達指令(圖 4)。 ![]() 圖 4:Cyberon DSpotter 的簡約性要求指令必須遵循邏輯順序,否則將無法識別。(圖片來源:Renesas) 使用受限資源運行非云 VUI Cyberon DSpotter 的高效率使之能夠在 Renesas 的 RA2、RA4 和 RA6 系列 Arm Cortex-M MCU 上運行。這些產(chǎn)品在消費、工業(yè)和物聯(lián)網(wǎng)應(yīng)用領(lǐng)域廣受歡迎。它們受到易于使用的設(shè)計工具支持,因此無需豐富的編碼經(jīng)驗或內(nèi)部專業(yè)知識,就能相對直接地構(gòu)建一個簡單的 VUI。 具體 RA 系列 MCU 選擇主要取決于指令的復(fù)雜性和 Cyberon 庫的大小。所以智能電燈開關(guān)只需要適度的指令集和有限的計算能力就能有效工作,可以采用 RA4 系列中的 R7FA4W1AD2CNG。該 MCU 配備了一個電池友好的 48 MHz Arm Cortex-M4 內(nèi)核,提供 512 Kb 閃存和 96 Kb SRAM 支持。它采用段碼式 LCD 控制器、電容式觸摸感應(yīng)單元、低功耗藍牙無線連接、USB 2.0 全速、14 位模數(shù)轉(zhuǎn)換器 (ADC)、12 位數(shù)模轉(zhuǎn)換器 (DAC),并且具有安全保障功能(圖 5)。 ![]() 圖 5:R7FA4W1AD2CNG MCU 為智能電燈開關(guān)等應(yīng)用構(gòu)建非云 VUI 提供了充足的資源。(圖片來源:Renesas) 諸如智能揚聲器之類應(yīng)用需要更廣泛的 Cyberon DSpotter 庫和更強大的內(nèi)核。R7FA6M4AF3CFM 就是一個合適的選擇。這款 MCU 屬 RA6 系列,采用功能更強大的 200 MHz Arm Cortex-M33 內(nèi)核,提供了 1 Mb 閃存和 256 Kb SRAM。它具有 CAN 總線、以太網(wǎng)、I²C、LIN 總線、電容式觸摸感應(yīng)裝置以及許多其他接口和外設(shè)。 RA4 和 RA6 系列分別受到 RTK7EKA4W1S00000BJ 和 RTK7EKA6M4S00001BE 評估板支持,開發(fā)人員可以利用這兩款評估板訓(xùn)練 MCU 的能力。每個評估板都有目標(biāo) MCU 和板載調(diào)試器。 Renesas 還提供 VUI 解決方案套件,以加快開發(fā)速度。該套件與評估板類似,都包含目標(biāo)器件和調(diào)試器。電路板還配有多個輸入/輸出接口和四個麥克風(fēng):兩個模擬麥克風(fēng)和兩個數(shù)字麥克風(fēng)。 使用 VUI 解決方案套件進行開發(fā)所需的軟件均可在 Cyberon 網(wǎng)站上獲取。其中包括免費的 Cyberon DSpotter 建模工具訪問權(quán)限,以及帶有可運行語音指令集的 e2 studio 項目(e2 studio 是基于 Eclipse 的集成開發(fā)環(huán)境 (IDE),適用于 Renesas MCU)。示例指令集可用作開發(fā)自定義語音指令序列的模板。然后就可以使用終端窗口監(jiān)控系統(tǒng)的反應(yīng)。創(chuàng)建圖 4 所示的 VUI 結(jié)構(gòu)一般需要 15 分鐘左右。 針對 Cyberon 軟件包的較復(fù)雜應(yīng)用軟件設(shè)計受到該公司的 Renesas 靈活軟件包 (FSP) 支持,該軟件包針對的就是使用 RA 系列的嵌入式系統(tǒng)設(shè)計。FSP 基于開放的軟件生態(tài)系統(tǒng),包括 Azure RTOS 或 FreeRTOS、傳統(tǒng)代碼和第三方生態(tài)系統(tǒng)。它可以在多個集成開發(fā)環(huán)境(包括e2 studio)中運行。 VUI 的性能如何? VUI 在安靜的實驗室中運行良好是一回事,但在背景噪音較大的情況下準(zhǔn)確運行又是另一回事。智能揚聲器的典型工作環(huán)境包括電視或收音機、談話、其他音樂源以及家庭或社交聚會的一般喧鬧聲。此外, VUI 還必須應(yīng)對方言和發(fā)音不準(zhǔn)。盡管存在這些挑戰(zhàn),但用戶期望的性能幾乎完美無瑕。 為了提高在困難的監(jiān)聽環(huán)境中的性能,在 Renesas RA 系列 MCU 上運行的 Cyberon DSpotter 軟件具有抗噪功能,只需占用極少的處理器資源。為了展示其效率,我們使用 Cyberon DSpotter VUI 進行了測試,在 1.5 米和 3 米的距離內(nèi),在信噪比為 0、5 和 10 分貝 (dB) 的情況下,測試了各種背景噪音源對監(jiān)聽指令的影響。在所有情況下,VUI 的表現(xiàn)都優(yōu)于亞馬遜 Alexa 基準(zhǔn)(表 1)。 ![]() 表 1:Cyberon 支持的 VUI 在各種背景噪聲下的指令成功率測試結(jié)果。在所有情況下,該 VUI 的表現(xiàn)都優(yōu)于亞馬遜 Alexa 基準(zhǔn)。(圖片來源:Renesas) 結(jié)語 VUI 正迅速成為消費者首選的智能產(chǎn)品控制界面。語音控制方法使用音素作為指令的基礎(chǔ),并采用嚴格的指令結(jié)構(gòu),可大幅降低存儲和計算要求,使得該技術(shù)能夠在資源有限的小型 MCU 上本地運行。 |