陶加貴, 陳清淼, 宋思齊, 陳昱彤
(1.國網江蘇省電力有限公司電力科學研究院,江蘇,南京 211103;2.國網電力科學研究院武漢南瑞有限責任公司,湖北,武漢 430074)
人工智能語音識別技術在當今互聯網及電子科技蓬勃發展的時代有著很大的上升空間與利用價值。語音識別作為人機之間最便捷且高效的交換信息的途徑,能夠對機器人發出指示命令,使其能依照人類的意愿做出行動。語音識別技術的發展使產品兼具信息化與智能化[1],而在軍事領域及民用領域中常見小型雙足機器人,它更具備小體積、低成本、強機動性等產品優勢而被廣泛推廣并使用。文獻[2]介紹了一種針對特定對象的小詞匯量語音識別系統,用了嵌入式語音識別系統中的DTW在線并行算法。文獻[3]提出了一種漢語語音識別系統,這種系統是在隱馬爾科夫模型框架下建立的,通過HMM進行了理論分析,獲得了較準確的識別率,但實驗數據較少。
本文提出基于SDK的ABB機器人語音控制方法,以ABB工業機器人作為研究對象,采用PC SDK通信二次開發接口構建語音識別平臺,利用語音識別技術提取語音命令用于機器人控制,并結合機器人運動控制模型來設計整個語音控制系統[4]。
開發人員可借助IRC5控制器中的RobotWare系統預留的開發接口PC SDK所提供的通信功能,完成PC端與IRC5控制器間的通信過程[5-6]。此外,獲取并讀寫日志信息及I/O信號、在機器人運行中對其過程運行狀態數據的獲取行為、在操作及控制程序或文件等過程中,也都依賴于PC SDK所提供的通信功能[7-9]。
PC SDK通信類庫包含很多類和域,其中:控制類是不同類訪問控制類的端口;配置域主要用于開發人員在配置文件中設定控制類中的材料數據;日志域主要進行機器人狀態以及控制運行狀態的查詢;發現域主要進行網絡監控,實現PC端和IRC5之間的通信;文件域主要進行文件的操作;消息域是指傳遞消息;信號域是指在讀寫過程中發出輸入輸出的信號。

圖1 機器人底盤

圖2 運動模型
機器人的運動狀態表示形式為q=(v,ω)T。運動學模型為
(1)


機器人的移動方位與最終到達地點都需要遵循用戶所發出的指令完成。在這個運動過程中,控制中心通過操作驅動電機與驅動器,并將移動路徑的變化過程轉化為對2個獨立工作的驅動輪的角速度隨時間發生變化的控制,從而實現對2個驅動輪的驅動。
機械臂共有6個自由度,可以進行移動、旋轉、抓取等操作。根據機械臂的結構,進行正向運動學建模。六自由度機器人D-H坐標系如圖3所示。
六自由度機器人位置變換矩陣可以表示為
(2)
式中,TA、TB、TC、TD表示為
(3)
(4)
(5)
(6)
式(2)~式(6)中,θi為連桿轉角,αi-1為連桿扭角,di為連桿偏距。根據式(2),將每一個關節變換矩陣相乘,得到的最后結果如下:
T0-6=T0-1T1-2T2-3T3-4T4-5T5-6=
(7)
式(7)中,矩陣元素都是關于θi、αi-1和di的函數。通過進行上述計算分析,可以實現六自由度機器人的精準定位。
本文提出一種基于SDK的語音識別模塊來實現機器人運動的語音控制,系統流程如圖4所示。

圖4 基于語音識別的機器人控制系統框架
研究對象為ABB機器人,系統結構如圖5所示。

圖5 機器人控制結構
機器人控制系統由上位機、區域控制器和中央控制中心等3部分組成。
語音識別經過訓練和識別2個過程。在訓練的時候,首先對語音信號進行預處理和特征提取,得到語音的特征參數,并創建聲學模型來識別基本單元。在識別過程中,根據一定的標準和措施進行對比輸入語音信號,然后得到最終的識別結果。語音識別過程如圖6所示。

圖6 語音識別過程
HMM是一種概率模型,它使用馬爾科夫鏈來模擬雙重隨機過程,其中信號的統計特性會發生變化。語音識別過程中,首先根據需要識別的單詞組建語音庫,再對庫中的所有單詞分別建立HMM模型,通過不斷訓練來調整模型中的參數,進而得到最佳的模型。
基于SDK的ABB機器人語音控制方法,采用PC SDK通信二次開發接口搭建語音識別平臺,然后使用語音識別技術提取語音指令,根據機器人運動控制模型進而設計語音控制系統,實現語音控制機器人的一系列動作。
在相對安靜的實驗室中測試語音識別的效果。隨機抽取8個人進行10次語音的識別,第一組為4個男生,第二組為4個女生,規定每個人隨機測試40次,測試結果如表1所示。從表1可知,在40次測試中,準確率達到94%以上,共測試500次,準確率達93.2%,可見重復性較高。

表1 語音訓練的識別結果
圖7展示了機器人在不同時刻下的左轉狀態,(a)為初始狀態的位置,在給出左轉命令后,(b)和(c)則顯示出機器人在不同時刻下的左轉狀態。

(a) 初始狀態
圖8展示了機器人在不同時刻下的機械臂旋轉狀態,(a)為初始狀態的位置,(b)和(c)分別為大關節和小關節模塊旋轉狀態下的位置。
由圖7、圖8可知,在用戶對機器人發出語音指令后,機器人根據接收到的指令內容能正確地完成工作。
人工智能語音識別技術在當今互聯網及電子科技蓬勃發展的時代有著很大的上升空間與利用價值。語音識別作為人機之間最便捷且高效的交換信息的途徑,能夠對機器人發出指示命令,使其能依照人類的意愿做出行動。基于SDK的ABB機器人語音控制方法,采用PC SDK通信二次開發接口搭建語音識別平臺,然后使用語音識別技術提取語音指令。實驗表明,相對安靜的實驗室中測試語音識別的效果較好,采用SDK構建的語音識別系統的語音識別率可以達到94%,該系統具有較強的語音指令接收和識別能力,同時對實時語音控制具有準確可靠的成效。