易詩,林凡強(qiáng),周姝穎
(成都理工大學(xué)信息科學(xué)與技術(shù)學(xué)院,成都610059)
基于STM 32的語音控制機(jī)械手*
易詩,林凡強(qiáng),周姝穎
(成都理工大學(xué)信息科學(xué)與技術(shù)學(xué)院,成都610059)
智能機(jī)器人技術(shù)為近年來研究熱點(diǎn),機(jī)械手在智能機(jī)器人教學(xué)研究與工業(yè)機(jī)器人領(lǐng)域占據(jù)很大比例,本文設(shè)計(jì)實(shí)現(xiàn)了基于STM32為控制平臺(tái)的四自由度機(jī)械手控制系統(tǒng),系統(tǒng)可以調(diào)試,存儲(chǔ)機(jī)械手動(dòng)作,并且使用語音控制模塊,使機(jī)械手具備人機(jī)對(duì)話,語音控制功能。系統(tǒng)高效,靈活,使用方便,對(duì)于智能機(jī)器人研究教學(xué),工業(yè)機(jī)械人控制系統(tǒng)研發(fā)具有重大意義。
智能機(jī)器人;STM32;四自由度機(jī)械手;語音控制
近年來,智能機(jī)器人技術(shù)發(fā)展十分迅猛,在人工智能,工業(yè)生產(chǎn),消費(fèi)電子,軍事,環(huán)境監(jiān)測(cè)等領(lǐng)域,智能機(jī)器人的使用越來越廣泛,功能越加強(qiáng)大。隨著電子信息技術(shù),計(jì)算機(jī)科學(xué)技術(shù)的發(fā)展,智能機(jī)器人可以幫助人類完成越來越多的工作,各大高校,科研機(jī)構(gòu),科技企業(yè),投入越來越多的資金和人力研究各類智能機(jī)器人。
在各類智能機(jī)器人中,工業(yè)機(jī)械手使用和開發(fā)相當(dāng)廣泛與重要,本文設(shè)計(jì)實(shí)現(xiàn)了一種以STM32為控制平臺(tái)的語音識(shí)別控制機(jī)械手,結(jié)合了嵌入式系統(tǒng)靈活,高效的特點(diǎn),使機(jī)械手的動(dòng)作調(diào)試,存儲(chǔ)更加簡便,采用語音識(shí)別控制模塊使機(jī)械手具有人機(jī)對(duì)話和識(shí)別語音控制信號(hào)的功能,該系統(tǒng)可以作為工業(yè)機(jī)器人開發(fā)模型與智能機(jī)器人教學(xué)實(shí)驗(yàn)系統(tǒng)。
1.1 硬件總體設(shè)計(jì)
系統(tǒng)核心控制處理器采用STM32F407ZGT6處理器,該處理器配置強(qiáng)大,集成FPU,DSP指令,192KB SRAM,1024KB FLASH,12個(gè)16 bit定時(shí)器,6個(gè)UART接口,2個(gè)USB控制器,2個(gè)CAN接口,3個(gè)12 bit ADC、2個(gè)12 bit DAC,1個(gè)RTC(帶日歷功能),1個(gè)SDIO接口,1個(gè)FSMC接口,1個(gè)10/100M以太網(wǎng)MAC控制器,1個(gè)攝像頭接口,1個(gè)攝像頭接口,1個(gè)硬件隨機(jī)數(shù)生成器,硬件隨機(jī)數(shù)生成器,以及112個(gè)通用IO口等。
系統(tǒng)四自由度機(jī)械手控制模塊采用32路舵機(jī)控制模塊,32路伺服舵機(jī)控制器是高效的微伺服電機(jī)控制器??梢钥刂贫噙_(dá)32個(gè)伺服舵機(jī)協(xié)調(diào)動(dòng)作的模塊,它不但能實(shí)現(xiàn)位置控制和速度控制,還具有時(shí)間延時(shí)斷點(diǎn)發(fā)送指令功能。
系統(tǒng)語音識(shí)別模塊采用ASR非自然語音識(shí)別模塊,ASR Board是一款基于Arduino的開源語音識(shí)別控制板,該模塊只需要通過上位機(jī)軟件發(fā)送指令即可設(shè)定要識(shí)別的關(guān)鍵詞,不需要用戶事先訓(xùn)練和錄音,是一款高效的非特定人語音識(shí)別控制模塊。系統(tǒng)硬件總體設(shè)計(jì)框圖如圖1所示。
圖1 系統(tǒng)硬件總體設(shè)計(jì)框圖
系統(tǒng)核心處理器STM32F407執(zhí)行機(jī)械手動(dòng)作的調(diào)試與存儲(chǔ),ASR語音識(shí)別模塊識(shí)別語音命令,通過UART1接口發(fā)送命令標(biāo)識(shí)至MCU,MCU中預(yù)先將該命令對(duì)應(yīng)動(dòng)作調(diào)試好通過SDIO接口存儲(chǔ)在SD卡文件系統(tǒng)內(nèi)部,接受到語音命令后讀出該命令對(duì)應(yīng)的指令集,通過UART2接口發(fā)送至32路舵機(jī)控制板,舵機(jī)控制板產(chǎn)生4路PMW波形控制四自由度機(jī)械手完成該語音命令對(duì)應(yīng)動(dòng)作,以達(dá)到語音識(shí)別控制的目的,系統(tǒng)人機(jī)交互界面以及動(dòng)作調(diào)試,存儲(chǔ)操作界面由STM32通過FSMC接口在TFT觸摸屏上實(shí)現(xiàn)。
1.2 系統(tǒng)硬件接口設(shè)計(jì)
系統(tǒng)硬件設(shè)計(jì)主要工作在于STM32控制平臺(tái)與其外圍電路的接口設(shè)計(jì),接口電路主要分為MCU與語音識(shí)別模塊,32路舵機(jī)控制板的UART接口電路,MCU與SD卡的接口電路,MCU與TFT觸摸屏的接口電路設(shè)計(jì)。
STM32 MCU與語音識(shí)別模塊,32路舵機(jī)控制板的通信接口使用UART1與UART2。其接口電路設(shè)計(jì)如圖2所示。
圖2 UART接口電路圖
MCU需要存儲(chǔ)與讀取機(jī)械手動(dòng)作指令,采用SD卡進(jìn)行指令存儲(chǔ)與讀取,MCU與SD卡通信采用SDIO接口,電路接口設(shè)計(jì)如圖3所示。
在系統(tǒng)的顯示界面,動(dòng)作調(diào)試,存儲(chǔ)操作界面,人機(jī)交互,均由MCU連接TFT觸摸屏完成,STM32采用FSMC接口與觸摸屏進(jìn)行通信,高效高速,使用方便,MCU與觸摸屏接口電路如圖4所示。
STM32機(jī)械手控制硬件平臺(tái)通過UART接口接收語音控制命令,發(fā)送舵機(jī)控制命令,通過TFT觸摸屏實(shí)現(xiàn)人機(jī)交互平臺(tái)顯示及調(diào)試機(jī)械手動(dòng)作,SD卡存儲(chǔ)加載動(dòng)作,完成整個(gè)系統(tǒng)功能。
圖3 MCU與SD卡接口電路圖
圖4 MCU與觸摸屏接口電路圖
2.1 系統(tǒng)整體軟件設(shè)計(jì)
系統(tǒng)軟件設(shè)計(jì)步驟主要分為以下幾個(gè)部分:
(1)啟動(dòng)系統(tǒng)后進(jìn)行機(jī)械手動(dòng)作調(diào)試。
(2)調(diào)試動(dòng)作完成后,存儲(chǔ)調(diào)試動(dòng)作。
(3)識(shí)別接收語音控制命令。
(4)加載命令對(duì)應(yīng)的動(dòng)作指令序列。
(5)發(fā)送指令序列至舵機(jī)控制板。
(6)完成指令序列對(duì)應(yīng)動(dòng)作。
以上6個(gè)步驟為機(jī)械手由調(diào)試到最終執(zhí)行控制命令的全部流程,系統(tǒng)啟動(dòng)后如果直接接受語音命令,完成指定動(dòng)作,即不需進(jìn)行調(diào)試存儲(chǔ)動(dòng)作步驟,直接加載對(duì)應(yīng)指令序列執(zhí)行動(dòng)作,軟件整體設(shè)計(jì)流程圖如圖5所示。
圖5 軟件整體設(shè)計(jì)流程圖
2.2 系統(tǒng)操作界面設(shè)計(jì)
系統(tǒng)控制平臺(tái)在STM32F407上嵌入U(xiǎn)COS3操作系統(tǒng),實(shí)時(shí)多任務(wù)。操作界面使用GUIBuilder設(shè)計(jì)實(shí)現(xiàn),觸摸屏人機(jī)交互界面設(shè)計(jì)美觀,操作便捷,界面設(shè)計(jì)如圖6所示。
圖6 人機(jī)交互界面
交互界面主要實(shí)現(xiàn)通過觸摸屏控制,調(diào)試,存儲(chǔ)機(jī)械手動(dòng)作?;瑒?dòng)控件P0~P3實(shí)現(xiàn)對(duì)機(jī)械手4個(gè)舵機(jī)的轉(zhuǎn)動(dòng)角度控制,列表控件實(shí)現(xiàn)對(duì)存儲(chǔ)動(dòng)作,加載動(dòng)作的選擇,一共可以存儲(chǔ)和加載6個(gè)動(dòng)作,按鍵控件RUN實(shí)現(xiàn)對(duì)調(diào)試好的動(dòng)作執(zhí)行查看調(diào)試效果,按鍵控件SAVE實(shí)現(xiàn)對(duì)當(dāng)前舵機(jī)轉(zhuǎn)角的存儲(chǔ),按鍵控件DELETE實(shí)現(xiàn)對(duì)存儲(chǔ)動(dòng)作的刪除。
通過該人機(jī)交互界面,可以高效快捷地控制機(jī)械手動(dòng)作,對(duì)動(dòng)作進(jìn)行設(shè)計(jì),調(diào)試,存儲(chǔ),與加載執(zhí)行。
系統(tǒng)實(shí)現(xiàn)后,對(duì)語音識(shí)別,控制,機(jī)械手動(dòng)作調(diào)試,存儲(chǔ),加載,執(zhí)行等功能做出了完整的測(cè)試。測(cè)試方案為,設(shè)置語音命令,并識(shí)別發(fā)送控制標(biāo)識(shí),機(jī)械手控制端預(yù)先調(diào)試,存儲(chǔ)好命令對(duì)應(yīng)動(dòng)作,接收命令后加載指令序列,執(zhí)行相應(yīng)動(dòng)作。
(1)語音控制機(jī)械手抓取物品測(cè)試,將語音識(shí)別模塊設(shè)置命令“拿東西”識(shí)別到該命令后,模塊應(yīng)答“好的”,發(fā)送命令標(biāo)識(shí)0x01,控制平臺(tái)預(yù)先調(diào)試,存儲(chǔ)好抓取物品的動(dòng)作,接收到該命令標(biāo)識(shí)后,加載取物品動(dòng)作指令序列,發(fā)送至舵機(jī)控制板,機(jī)械手完成物品的抓取,測(cè)試效果如圖7所示。
圖7 語音控制機(jī)械手抓取物品測(cè)試
(2)語音控制機(jī)械手?jǐn)[放物品測(cè)試,將語音識(shí)別模塊設(shè)置命令“放東西”識(shí)別到該命令后,模塊應(yīng)答“好的”,發(fā)送命令標(biāo)識(shí)0x02,控制平臺(tái)預(yù)先調(diào)試,存儲(chǔ)好取物品的動(dòng)作,接收到該命令標(biāo)識(shí)后,加載擺放物品動(dòng)作指令序列,發(fā)送至舵機(jī)控制板,機(jī)械手完成物品的擺放,測(cè)試效果如圖8所示。
圖8 語音控制機(jī)械手?jǐn)[放物品測(cè)試
系統(tǒng)通過測(cè)試,語音識(shí)別,控制,機(jī)械手動(dòng)作調(diào)試,存儲(chǔ),加載,執(zhí)行等功能完善,實(shí)時(shí)高效,操作平臺(tái)使用方便快捷。
系統(tǒng)使用STM32 MCU為主控芯片,結(jié)合32路舵機(jī)控制板,語音識(shí)別模塊,完成了語音控制機(jī)械手。系統(tǒng)可以設(shè)置,識(shí)別,發(fā)送語音控制命令,進(jìn)行人機(jī)對(duì)話,控制機(jī)械手動(dòng)作,機(jī)械手控制平臺(tái)可以調(diào)試完成各種機(jī)械手動(dòng)作,并對(duì)動(dòng)作進(jìn)行存儲(chǔ),加載。該系統(tǒng)具有操作簡便,實(shí)時(shí)高效,系統(tǒng)件集成化高,功能多樣等特點(diǎn)。對(duì)于工業(yè)機(jī)器人技術(shù),智能機(jī)器人教學(xué)實(shí)驗(yàn)研究等領(lǐng)域具有重大意義和研究潛力。
[1]張洪潤,傅瑾新,呂泉,等.傳感器應(yīng)用設(shè)計(jì)300例[M].北京:北京航空航天大學(xué)出版社,2008:10-150.
[2]王燕,戴劍峰,王祥華.STM32的條狀指紋采集與拼接系統(tǒng)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2012,12(11):53-56.
[3]李世奇,董浩斌,李榮生.基于FatFs文件系統(tǒng)的SD卡存儲(chǔ)器設(shè)計(jì)[J].測(cè)控技術(shù),2011,30(12):79-81.
[4]張濤,左謹(jǐn)平,馬華玲.FatFs在32位微控制器STM32上的移植[J].電子技術(shù),2010,47(3):25-27.
[5]彭剛,秦志強(qiáng).基于ARM Cortex-M3的STM32系列嵌入式微控制器應(yīng)用實(shí)踐[M].北京:電子工業(yè)出版社,2011:23-26.
[6]劉軍.例說STM32[M].北京:北京航空航天大學(xué)出版社,2011:150.
[7]Smith K R,Samet JM,Romieu I,etal.Indoor Air Pollution in Developing Countries and Acute Lower Respiratory Infection in Children[J].Thorax,2000,55:518-532.
[8]Fingerprints.FPC1011F Area Sensor Package Product Specification[EB/OL].http://www.fingerprints.com/wp-content/uploads/ 2013/08/720-FPC1011F3 Product-sheet.pdf,2009-2.
[9]STMicroelectronics.RM0008 STM32F101xx,STM32F102xx,STM32-F103xx,STM32F105xx and STM32F107xx Advanced ARM Based 32 bit MCUs[EB/OL].http://www.st.com/st-web-ui/static/active/ en/resource/technical/document/reference_manual/CD00171190.pdf,2011-10.
[10]SD Card Association.SD Specifications Part 1 Physical Layer Simplified Specification Version 4.10[EB/OL].http://www.Sdcard.org/downloads/pls/simplified_specs/part1_410.pdf,2013-1.
[11]華成英,童詩白.模擬電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2006:324-385.
[12]蔡自興,徐光祐.人工智能及其應(yīng)用[M].北京:清華大學(xué)出版社,2004:94-186.
易詩(1983-),男,四川成都人,碩士,主要從事機(jī)器視覺研究,信號(hào)與信息處理,嵌入式技術(shù)的研究,549745481 @qq.com。
Voice Control M anipulator Based on STM 32*
YIShi,LIN Fanqiang,ZHOU Shuying
(College of Information Science and Technology,Chengdu University of Technology,Chengdu 610059,China)
Intelligent robot technology is a hot research field in recent years,manipulator occupies a large proportion of the robot teaching and research field and industrial robots,This paper designs and implements a four degree of freedom manipulator control system based on STM32.The system can debug,store themanipulatormotion,and use the voice controlmodule,which makes the robot haveman-machine dialogue,voice control function.The system is efficient,flexible,easy to use.This system is great significance to the teaching of intelligent robot research,industrial robot control system research and development.
intelligent robot;STM32;Four degree of freedom manipulator;voice control
C:7230;7820
10.3969/j.issn.1005-9490.2017.01.031
TN919.5
:A
:1005-9490(2017)01-0162-04
項(xiàng)目來源:成都理工大學(xué)RFID簽到系統(tǒng)項(xiàng)目(13JGY78)
2016-01-04修改日期:2016-02-24