李薇,楊慶華,何先波,李寶林
(1.西華師范大學計算機學院,南充637000;2.川北醫學院影像學院,南充637000)
隨著技術的發展,智能家居和語音識別技術在生活中開始應用和普及。因現代家居控制系統有方便性、智能性和實用性的應用需求和發展趨勢,語音控制家居系統成為目前研究和技術應用熱點。眾多研究者和開發者提出了新設計和新方法[1-9],如文獻[1-3]設計以STM32 等單片機為核心的家居控制系統[1-3],文獻4 提出基于LD3320 和Mesh 網的智能家居控制系統設計[4],文獻[5]提出基于AIUI 模塊和ZigBee 網絡的智能家居主控設計[5],文獻[6]設計智能家居網關[6],文獻[7-9]分別將語音識別技術應用于洗碗機、人體運動仿真和智能小車[7-9]。本文提出基于ZigBee 無線傳感網的非特定說話人語音指令識別的家居控制系統方案,含結構設計和網絡節點功能的實現,并通過實驗測試證明其有效性。
系統邏輯結構設計如圖1 所示。由圖1 知,系統結構以協調器節點為核心,主要基于星型拓撲的Zig-Bee 無線傳感網進行構建設計。系統功能層次分為:采集識別、分發、控制、終端四層。其中,輸入識別層含一個語音識別節點,負責非特定說話人語音指令采集輸入,并轉換成指令編碼發送給協調器,同時發送加入網絡申請,及接收協調器的管理。分發層含一個協調器節點,負責分發設備控制指令,同時接受網絡節點加入申請。控制層含三種對應控制節點,負責發送加入網絡申請給協調器,并接受從協調器發送的設備操控指令,并控制掛接的設備終端。終端層含風扇、窗簾、燈管三種家居設備終端,掛接在控制層對應節點上,接受對應控制節點的操控命令,進行工作。系統總體硬件結構如圖2 所示。系統節點子系統以CC2530 為核心,RF 模塊作為節點間通信單元,串口負責跟上位機通信以便監測。工作時語音信號通過語音識別電路LD3320 的語音傳感器采集,送識別電路進行識別轉換,再通過協調器節點分轉發控制指令給掛接了終端設備的控制節點。終端設備掛接在控制節點的控制電路(繼電器控制燈管和風扇,步進電機控制窗簾)。

圖1 系統總體邏輯結構及功能層次

圖2 系統總體硬件結構
系統總體工作流程主要涉及通過建立的無線傳感網的語音識別、協調器、及控制三類節點對風扇、窗簾、燈管三種家居設備終端的操控流程。流程中主要包含無線傳感網絡的構建和配置、網絡節點的加入、語音指令的識別轉換、控制指令發送和終端的響應。系統的總體工作流程如圖2 所示。

圖3 系統工作流程
由圖3 知,系統啟動時,首先,上電協調器節點以便啟動初始化協調器節點資源,并由協調器構建和配置一個具有PANID 和信道的無線傳感網;接著,上電控制節點和語音識別節點以便啟動初始化節點資源,并經協調器允許加入WSN 星型網絡;然后,非特定說話人面對語音節點發出家居操控語音指令,由語音傳感器采集送至語音節點以進行識別轉換,并由語音節點發送識別轉換結果信息至協調器節點;最后,由協調器節點分析并分轉發終端控制命令以操控對應類型的家居終端設備。
由1 節所述知,為基于星型無線傳感網實現語音識別控制家居設備終端的功能,系統中包含語音識別、協調器、控制三種功能節點,分別負責語音采集識別、分發指令、控制設備三種功能。
協調器節點的主要功能為:構建和配置基于CC2530+ZigBee 的星型異構無線傳感網、添加語音識別節點和控制節點、接收語音識別節點的語音識別轉換結果信息、分析結果信息和轉分發控制命令給控制節點。
(1)協調器節點硬件組成
協調器節點硬件結構以CC2530 為核心,主要以CC2530+接口資源(調試接口、傳感器接口、其他接口)+I/O 資源(LED 燈、按鍵、蜂鳴器等)+電源模塊(電源/接口/指示燈/開關)為主體組合構建。協調器節點硬件組成如圖4(a)所示。

圖4 節點硬件組成框圖
(2)協調器節點程序流程
協調器節點程序流程為:初始化協調器節點系統的軟硬件資源后,通過設置PANID 和信道等創建無線傳感網絡。一方面,接收節點的網絡加入申請,將語音識別節點和控制節點先后加入網絡,接收和分析語音節點的識別轉換信息,并轉分發控制命令給控制節點(風扇/窗簾/燈光)。另一方面,經串口對上位機Ping命令應答和通信,以便可通過上位機觀察協調器節點接收信息。協調器節點程序流程如圖5(a)所示。
控制節點主要功能為:加入星型無線傳感網、接收協調器節點控制命令、控制家居終端工作。
(1)控制節點硬件組成
控制節點硬件結構以CC2530 為核心,主要以CC2530+接口資源(調試接口、傳感器接口、其他接口)+I/O 資源(LED 燈、按鍵、蜂鳴器等)+電源模塊(電源/接口/指示燈/開關)+控制模塊(繼電器/步進電機控制模塊)為主體組合構建。控制節點硬件組成如圖4(b)所示,其中繼電器可掛接風扇和燈管,步進電機控制模塊掛接窗簾。
(2)控制節點程序流程
控制節點程序流程為:在初始化控制節點系統軟硬件資源后,控制節點發送WSN 網絡加入申請給協調器,協調器響應請求添加控制節點入網絡。然后,控制節點等待和接收協調器節點發送的無線控制命令,根據命令類型,通過繼電器模塊或步進電機控制模塊,控制掛接的家居設備終端(風扇、窗簾、燈管)工作。控制節點程序流程如圖5(b)所示。
(1)語音識別節點硬件組成
語音識別節點硬件結構以CC2530 為核心,主要以CC2530+接口資源(調試接口、傳感器接口、其他接口)+I/O 資源(LED 燈、按鍵、蜂鳴器等)+電源模塊(電源/接口/指示燈/開關)+語音識別傳感器為主體組合構建。語音識別節點硬件組成如圖4(c)所示。
(2)語音識別節點程序流程
語音識別節點程序流程為:在初始化語音識別節點系統軟硬件資源后,語音識別節點發送WSN 網絡加入申請給協調器,協調器響應請求添加語音識別節點入網絡。然后,語音識別節點等待和采集非特定說話人語音指令,根據離線自定義指令詞庫識別語音指令并轉換為指令編碼。最后,語音節點發送轉換的指令編碼信息給協調器節點。語音識別節點程序流程如圖5(c)所示。
(3)語音識別傳感器
在語音識別節點硬件部分采用了ICRoute 公司設計生產的語音識別傳感器專用芯片LD3320 進行語音識別。節點可通過ICRoute 公司特有的快速穩定的優化算法,完成非特定人語音識別,且無需用戶事先訓練和錄音,識別準確率達95%。語音識別傳感器與CC2530 接口電路如圖6 所示。由圖6 知,通過MK2將采集到的語音傳給芯片,芯片做識別處理后,通過SPI 總線,將數據返回。對識別時需要的預定義指令關鍵詞,遵循長度規則(不超過10 個漢字或者79 個字節拼音串),根據應用需求(風扇、窗簾、燈管三種家居終端的控制)進行離線動態編輯設置。指令庫中預定關鍵詞如表1 所示。

圖5 節點程序流程圖

表1 預定語音指令關鍵詞

圖6 語音識別傳感器和CC2530的接口電路
在給定的測試條件下,該文對系統從功能和性能上分別進行了測試。測試條件為:上位機:Intel i5-7200U CPU@2.50Hz,雙 內 核。Win10 OS。PANID:0x1444,信道:22。內存16G。測試人數:20 人。發聲距離:20-50cm。
系統功能測試包括利用上位機和串口對三種家居終端(燈、風扇、窗簾)對應的三個節點(語音、協調器和控制)進行功能測試(指令識別、指令傳輸、指令控制),以及對家居終端實物控制測試(開關燈、打開關閉風扇、打開關閉窗簾)。開關燈指令功能測試包含開燈、關燈指令的語音指令識別、指令編碼傳輸、指令控制功能測試。測試結果如圖7 所示。打開關閉風扇指令功能測試包含打開風扇、關閉風扇指令的語音指令識別、指令編碼傳輸、指令控制功能測試。測試結果如圖8所示。打開關閉窗簾指令功能測試包含打開窗簾、關閉窗簾指令的語音指令識別、指令編碼傳輸、指令控制功能測試。測試結果如圖9 所示。家居終端實物控制測試主要包括開關燈、打開關閉風扇、打開關閉窗簾控制測試,如圖10 所示。
系統性能測試主要利用上位機和串口對三種家居終端(燈管、風扇、窗簾)對應三個節點(語音、協調器和控制節點)進行平均耗時測試,含:指令識別、指令傳輸、指令控制、總耗時測試,如表2 所示。由表2 知系統對于開關燈、開關風扇、開關窗簾指令總耗時約13s,其中ZigBee 通信指令傳輸耗時約12s。

圖8 開關風扇指令識別、傳輸、控制功能測試(語音節點、協調器節點、風扇控制節點串口打印)

圖9 開關窗簾指令識別、傳輸、控制功能測試(語音節點、協調器節點、窗簾控制節點串口打印)
現代家居控制系統有方便性、智能性和實用性的應用需求和發展趨勢,該文針對需求和趨勢,提出了一種非特定說話人語音指令識別的家居控制系統方案,設計了系統的結構和工作流程,實現了語音識別、協調器、控制三種功能節點,經過系統功能測試和性能測試,證明該系統能實時有效地進行燈管、風扇、窗簾終端的語音識別控制,具有良好的方便性、智能性和實用性。
感謝深圳訊方技術股份有限公司技術支持。

圖10 家居控制功能測試實物效果