国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于語音識別的機(jī)器人動作控制系統(tǒng)設(shè)計

2020-09-29 07:51:13錢平馬建圓李子龍劉鋒
電腦知識與技術(shù) 2020年17期
關(guān)鍵詞:語音識別機(jī)器人

錢平 馬建圓 李子龍 劉鋒

摘要:本文設(shè)計了基于語音識別的機(jī)器人動作控制系統(tǒng)。該系統(tǒng)機(jī)器人動作執(zhí)行部分以STC15W4K16S4單片機(jī)作為核心微控制單元,可實現(xiàn)上位機(jī)軟件進(jìn)行動作的設(shè)定,以YS-LDV7為語音識別模塊,實現(xiàn)語音信號控制機(jī)器人的指定動作,達(dá)到聲控的目的,以SYN6288語音合成模塊對接收到的語音指令進(jìn)行播報。該設(shè)計可通過預(yù)錄的語音指令對機(jī)器人進(jìn)行前進(jìn)、后退、轉(zhuǎn)彎、舞蹈等動作的聲控操作,可為在危險環(huán)境的短距離搜救、探測任務(wù)或者智能玩具領(lǐng)域內(nèi)提供相應(yīng)的參考。

關(guān)鍵詞: 語音識別;機(jī)器人;動作控制

中圖分類號:TP242 ? ? ? ?文獻(xiàn)標(biāo)識碼:A

文章編號:1009-3044(2020)17-0170-03

Abstract: This paper designs a robot motion control system based on speech recognition. The robot part of the system takes STC15W4K16S4 single-chip microcomputer as the core micro-control unit, which can set the actions of the upper computer software, and ys-ldv7 as the speech recognition module to control the designated actions of the robot to achieve the purpose of voice control. The design can perform the forward, backward, turn, dance and other movements of the robot by voice command pre-recorded, which can provide the corresponding reference in the field of short-range search and rescue in dangerous environments, detection missions or intelligent toys.

Key words:speech recognition; Robot; motor control

1 ?引言

隨著電子技術(shù)和移動互聯(lián)網(wǎng)的不斷發(fā)展,人工智能語音識別技術(shù)得到很大的發(fā)展,利用語音識別技術(shù)讓機(jī)器人能夠按照人類的語言做出相應(yīng)指令,語音作為一種人機(jī)交互手段應(yīng)用于產(chǎn)品上,使得產(chǎn)品更加智能化和信息化。而語音控制的小型雙足機(jī)器人更具有成本低、體積小、機(jī)動性能強(qiáng)等優(yōu)點(diǎn)而被廣泛應(yīng)用,無論是在軍事還是電子消費(fèi)品等民用領(lǐng)域都有廣泛的需求。本文研究設(shè)計的基于語音識別的機(jī)器人動作控制系統(tǒng)對于智能玩具服務(wù)機(jī)器人[1]等領(lǐng)域提供相應(yīng)的思路參考。

2 ?系統(tǒng)整體設(shè)計

整個控制系統(tǒng)如圖1所示,主控芯片采用STC15W4K16S4,該款芯片具有大容量RAM數(shù)據(jù)存儲器,運(yùn)行速度比傳統(tǒng)8051快7-12倍,寬工作電壓,低功耗,具有6通道15位專門高精度PWM,4個超高速串口等豐富的外設(shè)滿足設(shè)計的要求[2]。通過PWM信號控制6個數(shù)字舵機(jī),即形成了雙足機(jī)器人的六個自由度,可以通過軟件實現(xiàn)前進(jìn)、后退、轉(zhuǎn)彎等基本動作,并且可以通過動作的組成形成舞蹈等套系動作。利用YS-LDV7語音識別模塊通過串口連接主控芯片,實現(xiàn)語音的輸入和識別。利用SYN6288語音合成模塊通過主控芯片的串口輸出語音信號并有擴(kuò)音器進(jìn)行語音的播報。最終達(dá)到語音控制雙足機(jī)器人的動作完成以及所執(zhí)行動作語音的播報。

2.1系統(tǒng)動作執(zhí)行單元設(shè)計與實現(xiàn)

該系統(tǒng)主要動作載體為6自由度雙足機(jī)器人,通過上位機(jī)軟件可以隨意調(diào)整機(jī)器人動作狀態(tài),上位機(jī)界面如圖2所示,其中ID1-ID6為6個電機(jī)的編號,可以調(diào)整電機(jī)的轉(zhuǎn)動幅度,通過改變動作的保持時間可以編排出相關(guān)動作,本設(shè)計編排出“立正,前進(jìn),后退,左轉(zhuǎn),右轉(zhuǎn),舞蹈”六個動作系列。通過上位機(jī)軟件編輯的工作組可生成相應(yīng)文件并下載到MCU的flash中,保存相應(yīng)的動作組編號用于動作執(zhí)行時函數(shù)的調(diào)用。本設(shè)計中對應(yīng)的六個動作編號分別為0-5,通過void Full Act Run(uint8 actFullnum,uint32 times)函數(shù)調(diào)用存儲在flash中動作組程序,針對不同參數(shù)可執(zhí)行相應(yīng)的動作。

2.2語音識別模塊

該系統(tǒng)采用YS-LDV7語音識別模塊主要基于LD3320芯片[3],該模塊上采用STC11L08XE芯的單片機(jī)并且預(yù)留3.3V電源引腳以及串口連接引腳,模塊內(nèi)置咪頭。語音識別模塊工作原理框圖如圖3所示,語音模擬信號通過咪頭傳給LD3320芯片內(nèi)部,進(jìn)行頻譜分析、特征提取的數(shù)字信號傳送給語音識別器,然后將識別結(jié)果傳給STC11L08XE與動態(tài)編輯識別列表中的關(guān)鍵詞進(jìn)行匹配,匹配成功即識別完成。該模塊采用了ASR非特定人識別技術(shù),在對語音信號特征信息提取后與外部存儲器中尋找最佳匹配的關(guān)鍵詞[4]。

本系統(tǒng)采用語音識別模塊的口令識別模式,即給語音識別模塊預(yù)設(shè)觸發(fā)指令“xiaoduo(小多)”,也就是說讓機(jī)器人做出動作之前必須先收到觸發(fā)指令,Go_falg標(biāo)志位置1語音模塊才會啟動下一個識別過程。在關(guān)鍵詞語列表中通過函數(shù)添加“l(fā)i zheng(立正)”,“qin jin(前進(jìn))”,“hou tui(后退)”,“zuo zhuan (左轉(zhuǎn))”,“you zhuan(右轉(zhuǎn))”,“wu dao(舞蹈)”。當(dāng)識別到合法的語音指令,模塊通過串口將語音數(shù)據(jù)包發(fā)送給雙足機(jī)器人MCU,MCU對接收到的語音包進(jìn)行解析,提取語音包的信息作為參數(shù)給動作執(zhí)行函數(shù),達(dá)到語音控制的目的。語音包的數(shù)據(jù)包含數(shù)據(jù)頭(0-1位),有效數(shù)據(jù)(2-5位)和結(jié)束標(biāo)志(6-7位),將根據(jù)不同的語音信號發(fā)送相應(yīng)的數(shù)據(jù)存儲到Y(jié)uYin_data[8]數(shù)組中,對應(yīng)數(shù)據(jù)如表1所示。

2.3語音合成模塊

本系統(tǒng)采用的是SYN6288語音合成模塊[5],該模塊采用STC89LE52(STC51內(nèi)核)進(jìn)行編程實現(xiàn),用戶只需要配置好單片機(jī)的串口函數(shù),進(jìn)行修改移植。高模塊板載電源接口和串口收發(fā)接口,內(nèi)置推挽式DAC,可直接驅(qū)動揚(yáng)聲器,進(jìn)行聲音播報,達(dá)到與人交互的目的。圖4為語音合成模塊的連接框圖,機(jī)器人主控芯片通過串口與SYN6288語音合成模塊進(jìn)行數(shù)據(jù)收發(fā),語音合成模塊將收到數(shù)字信號通過功率放大接到揚(yáng)聲器進(jìn)行語音播報,能實現(xiàn)中文的合成播報。該模塊部分可實現(xiàn)機(jī)器人接收到的動作指令的語音播報以及錯誤信息的播報,給操作者提供給友好的交互平臺。

若語音識別模塊接收到并能正確解析處語音包時,將對應(yīng)的語音包播報出來,如當(dāng)解析到“l(fā)i zheng(立正)”指令時,利用void SYN_FrameInfo(uint8_t Music,uint8_t *HZdata)文本合成函數(shù)播報“準(zhǔn)備立正”。

3 ?系統(tǒng)軟件設(shè)計

本系統(tǒng)軟件設(shè)計的編程環(huán)境是KEIL μVision5.14,建立51單片機(jī)的工程項目。流程圖如圖5所示,開始是系統(tǒng)初始化,單片機(jī)的包括串口,PWM,flash,中斷,定時等外設(shè)的初始化以及語音識別模塊和語音合成模塊的初始化。然后檢查整個系統(tǒng)電量是否過低起到一個低壓保護(hù)的作用,電壓過低蜂鳴器就會鳴叫,整個工作處于一個while循環(huán)中,檢測是否有語音信號的輸入,如果沒有語音信號的接收,整個系統(tǒng)處理低功耗狀態(tài),當(dāng)有收到“xiaoduo(小多)”的觸發(fā)語音信號后開始識別相應(yīng)的語音解析語音包,如果未能解析出相應(yīng)的正確語音,系統(tǒng)會播報“語音錯誤”,當(dāng)解析出正確的語音信號,信號會傳給語音合成模塊進(jìn)行相應(yīng)的語音播報,窄足機(jī)器人就會執(zhí)行相應(yīng)的動作程序,達(dá)到語音控制的功能和目的。

關(guān)鍵的任務(wù)代碼如下所示:

void TaskRun (void)

{

TaskTimeHandle ();

CheckBatteryVoltage ();

TaskPCMsgHandle ();

TaskBLEMsgHandle ();

TaskRobotRun ();

if( IsYuYin )

{

if(YuYinData[0] == 0x00) {

switch(YuYinData[1]) {

case 0x00: ? ? ? ? ? ?// 立正動作

SYN_FrameInfo(0,"開始立正");

FullActRun(0,1);

case 0x01: ? ? ? ? ? ?// 前進(jìn)動作

SYN_FrameInfo(0,"開始前進(jìn)");

FullActRun(1,1);

case 0x02: ? ? ? ? ? ?// 后退動作

SYN_FrameInfo(0,"開始后退");

FullActRun(2,1);

case 0x03: ? ? ? ? ? ?// 左轉(zhuǎn)動作

SYN_FrameInfo(0,"開始左轉(zhuǎn)");

FullActRun(3,1);

case 0x04: ? ? ? ? ? ?// 右轉(zhuǎn)動作

SYN_FrameInfo(0,"開始右轉(zhuǎn)");

FullActRun(4,1);

case 0x05: ? ? ? ? ? ?// 舞蹈動作

SYN_FrameInfo(0,"開始舞蹈");

FullActRun(5,1);

break;

default:

break;

}

}

其中,void SYN_FrameInfo(uint8_t Music,uint8_t *HZdata)為中文語音文本合成函數(shù),uint8_t Music參數(shù)為背景音樂,0表示沒有背景音樂,uint8_t *HZdata參數(shù)為合成文本的內(nèi)容;void FullActRun(uint8 actFullnum,uint32 times)為機(jī)器人執(zhí)行動作函數(shù),uint8 actFullnum參數(shù)為執(zhí)行動作編號,uint32 times參數(shù)為執(zhí)行動作的次數(shù)。

4 結(jié)束語

本文設(shè)計的是基于語音是被的機(jī)器人動作控制系統(tǒng),以STC15W4K16S4單片機(jī)作為機(jī)器人運(yùn)動和動作主控芯片,通過語音識別模塊YS-LDV7識別語音信號中的特征參數(shù),并根據(jù)識別出的語音信號使機(jī)器人做出相應(yīng)動作以及通過語音合成模塊SYN6288對相應(yīng)動作進(jìn)行實時播報。該系統(tǒng)通過硬件和軟件的設(shè)計和配合,在測試中達(dá)到了語音控制機(jī)器人動作的良好效果,為語音識別技術(shù)的應(yīng)用進(jìn)行了實踐,也為危險環(huán)境探測和智能玩具領(lǐng)域產(chǎn)品提供了思路和參考。

參考文獻(xiàn):

[1] 管紅,張帥,類紅樂.智能語音機(jī)器人的設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2011,7(30):7498-7500.

[2] 劉立軍.基于STC15W4K60S4單片機(jī)LED開關(guān)電源控制器的設(shè)計[J].工業(yè)控制計算機(jī),2017,30(1):130-131.

[3] 車劉鑫,李崇斌,鐘卓霖,等.語音控制機(jī)器人的設(shè)計[J].電子制作,2018(23):3-5,100.

[4] 潘鋒.智能語音控制系統(tǒng)設(shè)計與研究[J].電子設(shè)計工程,2019,27(22):6-9,14.

[5] 常國權(quán),彭云峰.基于STC15單片機(jī)和SYN6288的機(jī)床語音報警系統(tǒng)設(shè)計[J].電子器件,2015,38(3):616-620.

【通聯(lián)編輯:唐一東】

猜你喜歡
語音識別機(jī)器人
機(jī)器人,讓未來走近你
金橋(2019年10期)2019-08-13 07:15:16
通話中的語音識別技術(shù)
面向移動終端的語音簽到系統(tǒng)
農(nóng)業(yè)物聯(lián)網(wǎng)平臺手機(jī)秘書功能分析與實現(xiàn)
基于LD3320的非特定人識別聲控?zé)粝到y(tǒng)設(shè)計
機(jī)器人來幫你
認(rèn)識機(jī)器人
機(jī)器人來啦
為什么造機(jī)器人?
認(rèn)識機(jī)器人
运城市| 彩票| 柘荣县| 平南县| 婺源县| 广灵县| 马山县| 库车县| 田阳县| 墨脱县| 外汇| 宁晋县| 德兴市| 攀枝花市| 莎车县| 兰坪| 新建县| 岳阳市| 九台市| 天长市| 高淳县| 南京市| 包头市| 墨江| 道孚县| 孝感市| 苏尼特左旗| 汾西县| 黔江区| 佳木斯市| 肃南| 古田县| 勐海县| 兴安盟| 禹城市| 汉阴县| 图们市| 金乡县| 萝北县| 兴安盟| 昭通市|