语音控制机械手臂的设计与实现
2019-11-15徐松海周梦婷何英昊辜铮单世民
文/徐松海 周梦婷 何英昊 辜铮 单世民
1 引言
社会的进步离不开科技的发展,而近年来智能机器方面因为其可用范围宽广,可操控性强,经济实惠效益大而备受关注,也使各大高校组织,科研机构或企业主动投入大量的人才与资金进行大力研发。而在各类智能机器人的研发中,智能机械手臂的开发使用独树一帜,机械手臂能够不考虑疲倦与危险,直接提高工作效率,减少工伤事故,同时具有维修方便,可控性强等特点。
本设计采用STC15单片机作为控制平台,拥有七自由度机械手控制系统,可以进行调试与储存的功能,同时添加的语音控制模块也使该设计具有人机对话功能和语音控制信号的功能。整个系统设计灵活智能,可控性强,对于机器人的研究教学或者工业开发模型方面提供一个实验系统,具有很强的研发意义。
2 系统硬设计
2.1 器件选择
2.1.1 系统核心处理器
目前在应用机械臂的微控制器有很多种,而在其中使用较为广泛的是STM32单片机和STC15单片机,但由于STM32单片机的结构更为复杂,编程麻烦,很多的模块并不能被运用上,同时价格也比较贵一些,所以该系统核心控制处理器采用STC15W4K32S4系列单片机作为处理器。该处理器的配置强大属于增强型 8051 CPU,除去兼容传统的8051指令代码,也具有基础的1T、机器周期,可擦写次数10万次以上的Flash程序存储器等等,四组完全独立的高速异步串行通信端口:串口1、2、3、4;一组SPI低功耗设计为:低速模式,空闲模式,掉电模式;通用I/O口设置成:准双向口/弱上拉模式,强推挽/强上拉模式,仅为输入/高阻模式,开漏模式。
图1:WEGASUN-M6语音识别模块原理图
图2:系统硬件总体设计框图
2.1.2 舵机控制电路
系统七自由度机械手臂控制电路采用6通道15位专门的高精度PWM+2通道CCP来控制;8路PWM可以控制8个伺服舵机进行协调动作,通过合适的动作行为能同时实现控制位置和速度,除此外还能进行时间延时断点以便发送指令功能。
2.1.3 语音控制电路
该系统语音识别模块选择采用市面上WEGASUN-M6语音识别模块,该模块具有经济实惠使用相对简单等特点。使用时只需要通过使用上位机软件即可发送特定的指令,从而能够直接去设定用户需要识别的关键词,避免了需要事先对用户的训练或者录音的麻烦,从总体看该语音识别控制模块,是非常高效经济的。其原理图如图1所示。
2.2 总体设计框图
系统硬件总体设计框图如图 2所示。
系统可通过WEGASUN-M6语音识别指定的语音指令,通过语音控制电路中的UART1接口将命令标识发送给MCU,系统核心处理器STC15单片机能通过Keil C开发环境去执行机械手臂动作的调试与储存,MCU可预先将命令与对应的动作一一调试出来并储存,等接受到语音命令后读出相应的语音指令集,从而使舵机控制电路产生PWM波形进而控制七自由度机械手臂,使其能够完成对应的语音指令动作,实现语音识别控制机械手的实验目的。
2.3 系统硬件设计与原理图
该系统以STC15W4K32S4作为控制平台,主要分两方面来实现语音控制机械手臂的系统功能。
(1)其控制平台可与其外围电路的接口设计电路,这部分由三部分构成,分别是:MCU与语音识别模块的UART接口电路和MCU与舵机控制电路的接口及舵机控制电路与舵机的连接电路。
图3:系统硬件原理设计图
图4:系统软件整体设计流程图
(2)控制平台接收语音控制指令后,采用并行口对舵机电路发送控制指令,语音实现人机交互,MCU存储加载动作,最终完成整个系统功能。系统原理图如图3所示。
3 系统软件设计
系统软件设计步骤主要分为以下几个部分:
(1)启动系统后进行机械手动作初始化;
(2)动作初始化完成后,存储初始化动作;
(3)识别接收语音控制命令;
(4)加载命令对应的动作指令序列;
(5)发送其指令序列到舵机控制电路;
(6)完成指令序列对应动作。
系统软件整体设计流程如图4所示。
4 系统测试及其误差率
语音识别模块测试时先设置词条和反馈语文本,词条:@WriteKeywords#开灯001|关灯 002|$;反馈语文本:@WriteFlashText#|001马上开灯|002 马上关灯$,然后将模块识别模式设置为“对话模式”,发送指令@AsrMode#1$ ,设置模块“返回值输出格式”为“单字节输出”模式。当用户喊“开灯”时,回答“马上开灯”,LED亮起;当用户喊“关灯”,回答“马上关灯”,LED熄灭。
当语音模块成功测试连接后开始测试实验,设置“拿起”“放下”为语音指令,在进行二十五次检测中失误两次,成功二十三次。成功率达到百分之九十二。
5 结论
本设计主控芯片选取STC15MCU为主控芯片,由其控制七自由度手臂完成简单的动作和抓取任务,再结合舵机控制电路和语音识别模块,机械手臂可以向上,向下,左转,右转,伸手,合手等动作;能准确的接收到使用者的指令,将一个物体抓取起来,并递给使用者。关于机械手臂在智能机器人与工业型机器人的教学研究和应用领域方面发展越来越广泛,必将在不久的将来拥有一席之地,而该系统可以对现在的教学研究和工业生产方向当做教学模型,拥有非常好的实际作用。