摘 要:本文基于LD3320語音識別模塊[1]和STM32ZET6單片機,設計制作了一個語音控制的電子閱讀移動器。通過語音識別技術,對電子移動閱讀器的機械臂進行控制。試驗表明,該語音控制機械臂運作良好,能實現(xiàn)基于坐標的定點移動等基本性能,識別率高,具備一定的實用價值。[2-7]
關鍵詞:機械臂控制;語音控制LD3320;定點移動函數(shù)
0引言
隨著機器化和信息化的水平逐漸提高,為了更好地利用語音控制相比其他的人機交互的方式更加方便、實用的特點,也為了減少長時間閱讀電子設備對眼睛的傷害,從而將機械臂的語音控制應用更加深入我們的生活,通過對人們的生活習慣語句進行分析和編程,采用LD3320語音識別、單片機控制,設計出一款語音控制的用來解放雙手,保護眼睛的電子移動閱讀器。
1系統(tǒng)總體設計
設計的電子閱讀器由語音識別電路和五自由度機械臂組成,控制電路由兩大部分組成,分別為:機械臂控制電路和語音識別電路。機械臂控制電路由單片機、機械臂、步進電機組成,可以實現(xiàn)對機械臂動作命令的執(zhí)行進行控制;語音識別電路包括語音識別模塊和單片機子電路模塊,可以實現(xiàn)對語音命令識別、控制信號判別輸出、和機械臂控制命令發(fā)送等操作;
系統(tǒng)框架總體設計如圖1所示
2 硬件電路設計
2.1 語音識別電路
語音識別電路實現(xiàn)的主要目標, 是用來判斷語音的輸入情況。和與輸出相對應的控制命令字符串到單片機中。為了使硬件設計的過程更加簡化,設計語音識別部分所選用的是LD3320集成模塊,該芯片集成了語音識別處理器、高精度的A/D、D/A轉(zhuǎn)換器,麥克風的借接口、語音輸出接口等。而且并不需要任何外接輔助芯片如FLASH、RAM等,并且可以自定義開始的狀態(tài)、關鍵詞列表及其對應的輸出狀況。
語音識別電路的電路圖如圖2所示。
2.2 機械臂執(zhí)行控制電路
機械臂執(zhí)行控制電路采用的五自由度機械臂的元件都是目前市場上所常見的,五自由度機械臂能實現(xiàn)的功能是對五路的步進電機進行控制,機械手臂的彎曲角度與輸入脈寬信號有關,如要控制機械手臂的角度只需要改變它輸入的脈寬信號即可。單片機收到語音識別電路輸出的信號后可以對脈寬信號進行控制,從而實現(xiàn)機械手臂的定角度彎曲。
3 系統(tǒng)軟件設計
3.1 系統(tǒng)軟件設計的總要求
人們?nèi)粘I铌P于習慣性的語言命令大致可以分為實時性和計劃性。所以對于系統(tǒng)軟件的設計方法也要包含人們關于這兩個方面的要求。才有多模式按鍵切換的方法可以滿足人們對語音控制機械臂種種要求
3.2 實時性及計劃性的實現(xiàn)分析
實時性,從一個方面分析,就是對人們發(fā)出的語音信號立即做出反應,注重的是短時間內(nèi)的高互動性能。解決實時性需要機械臂對人們發(fā)出的語音命令立刻執(zhí)行,采用直接控制模式可以使機械臂及時響應人們的命令控制,可以實現(xiàn)“一詞一動”。計劃性,更注重于未來的計劃,和計劃各部分因素的全面性。對于機械臂的動作而言,可以總結(jié)成:機械臂動作,距離,終端的停止坐標等多個方面的內(nèi)容,需要具體情況具體分析各個部分協(xié)同解決。由于上述特征,所以直接控制并不符合計劃性的的性質(zhì),因而需要進行相應的發(fā)送條件設置,對于人們在日常生活中的習慣性語言設計了兩種發(fā)送條件設置。按鍵發(fā)送和口令發(fā)送模式,可以實現(xiàn)“一句多動,條件行動”
3.3 機械臂控制的軟件設計
機械臂控制的部分一共由五個步進電機組成,有兩類。第一類為旋轉(zhuǎn)底座控制電機,由一號步進電機電機組成,械臂的動作方位是它來控制的,可旋轉(zhuǎn)角度為270°,以機械臂運動方位作為參考,可以實現(xiàn)上下兩個方向各自旋轉(zhuǎn)135°;第二類為機械臂關節(jié)電機,由二號步進電機組成,用來實現(xiàn)機械臂擬人化動作,使機械臂可以像人類手臂一樣左右向前向后彎曲擺動。根據(jù)上述情況,可以使用其余步進電機的組合動作改變方位,遠近,高低來確定機械臂終端位置,坐標的設置對于機械臂終端的定位和擺放方式具有重要的意義。有兩種方法實現(xiàn)坐標的設定。第一種是讓控制機械臂的單片機把機械臂各個部分的步進電機協(xié)同工作,使終端到達坐標點。當收到指令的字符串時,則由控制芯片對坐標計算得到相應的值,然后匹配相應的步進電機信號組合實現(xiàn)坐標的設定;第二種方法是收到在機械臂控制單片機收到字符串指令后僅對一個步進電機進行脈寬輸出,由語音識別部分進行坐標的計算和指令的選擇。第一種方法會使程序段過長、響應延遲長等的問題,所以采用后者的坐標設置,由語音識別部分的控制芯片進行計算輸出更加便捷。
3.4 語音識別部分軟件設計
語音識別部分主控程序主要實現(xiàn)的功能有五種:分別為信號采集功能、坐標設定功能、命令選擇功能等3個模塊。程序執(zhí)行過程首先要進行初始化的設定,在單片機接通電源之后設置串口,設置標志位的模式MODE=1(只有模式標志位改變時才可以實現(xiàn)模式的切換,用中斷功能來實現(xiàn)),機械臂控制命令數(shù)組等關鍵的變量。初始化成功之后進入各控制模式的程序段后,對于模式一(直接發(fā)送模式)的程序執(zhí)行過程為:等待信號激活標志位的高電平信號,一旦標志位置高,則進行對P1口的電平信號進行掃描,把得到的數(shù)據(jù)當作識別碼對控制命令進行選擇。若在此過程中收到了坐標相關的語音指令,則立刻執(zhí)行坐標設定函數(shù)COORDINATE SETTING(),并與其匹配的步進電機信號進行組合,保存到步進電機控制數(shù)組中,便于實現(xiàn)對機械臂的“一詞一動”。模式二(口令發(fā)送模式)與模式三(按鍵發(fā)送模式)成功初始化之后的流程與模式一基本一致,只是執(zhí)行數(shù)據(jù)發(fā)送的條件判斷不同,模式二為語音命令的“發(fā)送”而模式三為按鍵發(fā)送,發(fā)送判斷為NO時需返回等待信號激活標志位的步驟,若發(fā)送條件為YES則執(zhí)行發(fā)送指令。此時,坐標計算函數(shù)的計算過程須和數(shù)組的坐標位協(xié)同進行,原理和模式一大致相同。
語音識別部分程序流程圖如圖3所示。
4結(jié)束語
實驗結(jié)果表明,設計的語音控制機械臂可以成功識別語音信號,并實現(xiàn)機械臂的定點移動等基本功能,語音識別命令的平均成功率達到90%以上。模式一可以在固定時間內(nèi)對語音命令進行響應,與機械臂的互動性較強;模式二、三種,輸入預定好的語音命令之后,做到了只有發(fā)送條件成立后,再把相對應的控制指令相繼的發(fā)送給機械臂,從而執(zhí)行相對應的操作。綜上所述,設計的語音控制機械臂符合預期對語音命令的實時性以及計劃性的要求,工作穩(wěn)定,性能良好。就結(jié)果而言,設計依舊存在兩個方面的問題:一方面是語音識別效率不高,導致人機交流不夠充分流暢,還并不能實現(xiàn)真正意義上的人機交互的最終目標;在另一方面,機械臂的操作流暢感稍嫌不足,語音識別效率和定點移動準確度仍有很大的改進空間,這些不足之處將在往后的工作中加以改進和實現(xiàn)。
感謝國家對大學生創(chuàng)新訓練項目的支持。
參考文獻:
[1] 車劉鑫,李崇斌,鐘卓霖,黃明惠,劉勇,姚嘉金,陳逸彬.語音控制機器人的設計[J].電子制作,2018(23):3-5+100.
[2] 李曉朋.語言識別技術的應用[J].電子技術與軟件工程 .2016(23):156
[3] 祁艷飛,王茂森,戴勁松.語音控制在智能機器人中的應用 [J]. 儀表技術 .2015(7):45-49.
[4] 宋柏佑.機械臂語音控制系統(tǒng)研究 [D]. 西安科技大學 .2017.
[5] 唐米杰,李新國.基于語音識別與單片機控制的智能玩具設 計與實現(xiàn) [J]. 計算技術與自動化 .2013,32(4):37-40.
[6] 陳松,王萍,李輝.基于單片機的語音識別機器人的設計 [J]. 才智 .2010(20):306-307.
[7] 鐘晨帆.基于 LD3320 芯片的語音識別系統(tǒng)設計與開發(fā) [D]. 南京大學 .2015.
作者簡介:
楊帆,男(1999,10)遼寧撫順人,本科,上海工程技術大學,電子電氣工程學院,自動化,大三,研究方向:自動化.
基金項目:市級大學生創(chuàng)新訓練項目編號cs1902007.