毕业设计(论文)-基于模式识别的人形机器人控制系统设计.docx_第1页
毕业设计(论文)-基于模式识别的人形机器人控制系统设计.docx_第2页
毕业设计(论文)-基于模式识别的人形机器人控制系统设计.docx_第3页
毕业设计(论文)-基于模式识别的人形机器人控制系统设计.docx_第4页
毕业设计(论文)-基于模式识别的人形机器人控制系统设计.docx_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于模式识别的机器人控制系统设计中文摘要当前机器人的模式多种多样,所研发的机器人替代人类、服务于人类,为此本文开发了一款人形机器人,它是由类似于人类骨骼结构的众多关节组成,在每一个关节上装配有一个伺服舵机,用来模拟人体的骨骼肌肉,以实现关节的运动,从而实现人形机器人的行走,挥手等动作。加上听觉和视觉两种模式识别机制,使得机器人更加符合人类需求。本课题所研究的人形机器人,具有17个自由度,加上语音识别,语音合成,摄像头,无线模块等多种传感器,来实现:人与机器人的语音对话;可实现用语音控制机器人的直立行走,转向,停止,挥手等动作。此可实现机器人的独立自主行走;机器人视觉,通过摄像头的采集,可将视频信息传入后方服务器,进行实时的视频监测。对开发者,应熟悉单片机、数字电子技术和C语言编程;查阅大量的参考文献,为完成论文打下基础。关键字 人形机器人; 单片机; 语音识别; 摄像头; 机器人行走AbstractThe current robot mode varied, the research and development of robots replace humans, the service of humanity, for this paper developed a humanoid robot, which is composed of many joint composition similar to human bone structure, equipped with a joint in every servo, used to simulate the bodys skeletal muscles to achieve the joint motion, in order to achieve walking humanoid robot, waving and other activities. Plus both auditory and visual pattern recognition mechanism, making the robot more in line with human needs.This paper studied humanoid robot, has 17 degrees of freedom, plus a variety of sensors speech recognition, speech synthesis, camera, wireless modules, to achieve: human and robot voice conversation; can be implemented using voice control robot walk upright , turn, stop, waving and other activities. This can be achieved independent of the walking robot; robot vision, through the acquisition of the camera, the video information can be passed behind the server, real-time video monitoring.For developers, should be familiar with the microcontroller, digital electronics and C language programming; consulting a large number of references, to lay the foundation for the completion of the paper.Key words Humanoid Robot; MCU; Speech Recognition; USB Camera; Walking Robot目录一论文(设计)正文1基本结构和工作原理概述11.1 设计目标11.2 人形机器人的基本组成11.2 人形机器人工作原理12基本设计方案22.1 机器人躯干22.2 舵机22.3 电源22.4 语音部分22.4 主控制器22.5 视频传输23硬件设计33.1 PWM简介33.2舵机的工作原理33.3 机器人躯干设计43.4 舵机控制器选用53.5 主控制器的设计53.6 语音模块设计63.7 无线视频传输模块设计63.8 系统原理框图74软件设计84.1软件框图84.2流程介绍85 功能测试126 结束语13参考文献14谢辞15二附录161机器人照片162部分程序代码181 基本结构和工作原理概述1.1 设计目标本设计是要设计一个17自由度人形机器人的控制系统,欲设计出的控制系统能够控制机器人实现简单的语音控制行走、人语音命令检测和识别、语音合成发声和wifi局域网视频等功能。并使用QT IDE在windows环境中设计出一款显示程序,用来实现机器人摄像头画面的接收与显示。1.2人形机器人的基本组成图1 机器人外形该人形机器人由躯干结构件(材料:合金)、数字伺服舵机(15Kg)、舵机控制器(32路PWM,带过流保护)、电池(7.2V,20C锂电池)、开关电源(6-9V电压可调DC电源)、单片机(STC12系列)、Mini2440(FriendlyARM9)、100M无线网卡(TP821N)、USB摄像头、语音识别电路(LD3320)和语音合成电路(XFS5152)等模块组成,外形如图1所示。结构件构成机器人的躯干,起到支撑作用;数字伺服舵机相当于机器人的关节和肌肉,使机器人有力量摆动各节点,实现挥手、行走和鞠躬等动作。1.2 人形机器人工作原理机器人在由各零部件构成的身体框架的支撑下。使用SR-3505数字舵机构成的机器人17个关节,使机器人身体有力量能够活动。使用者说出控制命令,语音识别电路识别到正确指令后,向主控制器发送命令识别代码,主控制器根据命令代码判断指令内容,从而向舵机控制器发送动作命令,并且向语音合成电路发送合成指令和语音内容,机器人发出声音。主控制器通过串口通信向舵机控制板发送相应控制指令,控制板根据命令向17路舵机发送不同占空比的PWM信号,控制舵机转动角度和方向。使机器人做出相应的动作。整个作品上电开机并初始化完成后,主控单片机向舵机PWM控制板发送“站立”命令代码。随后等待使用者的命令。视频传输部分使用mini2440嵌入式开发板通过WIFI接入局域网,上位机通过相应软件连接到开发板相应视频服务,最终在电脑端的显示程序上显示摄像头的实时视频画面。2 基本设计方案本章将机器人的躯干、舵机、电源、语音识别电路、语音合成电路、主控制器和视频传输等部分的设计方法做以介绍。2.1 机器人躯干由短U型支架、长U型支架、斜U型支架、L型支架、U型梁支架、一字型支架和平面板组成机器人的躯干部分。由17个数字型舵机和金属舵盘及法兰轴承构成机器人的各关节,法兰轴承的作用是使机器人的关节运动更加顺畅。2.2 舵机机器人的舵机采用数字型舵机,数字型舵机有转动角准确,功耗低等优点。2.3 电源机器人的供电采用两个部分,一部分为使用外置直流电源为机器人的舵机和控制板等模块供电;剩余部分使用锂离子电池为mini2440开发板、摄像头和wifi网卡供电,保证摄像头和wifi能正常工作,摄像头画面的传递不受其他诸如舵机开关电流的影响。2.4 语音部分机器人的语音识别电路使用LD3320语音识别芯片,配合单片机对其编程,实现语音识别功能1;语音合成电路使用XFS5152CE语音合成芯片配合外界扬声器实现语音合成功能2。2.4 主控制器机器人主控模块使用STC12系列单片机,这个12系列单片机有串口0和串口1 ,一个可以和舵机板连接,一个可以和语音电路连接,能满足本设计的功能结构要求。2.5 视频传输核心采用mini2440嵌入式开发板,使用无线局域网将视频传输到上位机。3 硬件设计本章将分8个模块对硬件设计部分,做以详细的介绍和说明。3.1 PWM简介PWM即:Pulse Width Modulation,是一个很好用而且操作方便的,用离散的数字量来控制连续的模拟器件的方法,现在广泛的应用在数字仪器仪表、数字通讯、自动化等众多方面中。图2 PWM波形示意图TT1T2它实际上是一个高电平与低电平时间比可调的高、低电平组成的方波,如图2所示。例如用到直流电机调速中,电机的负极接电源的负,正极接PWM,当波形的高电平(图2中的T1时间段)到来时电机回路导通,开始转动,当低电平(图2中的T2时间段)到来时电机回路不导通,停止转动,直到下一个高电平到来时又恢复转动,因此,电机就会根据PWM间歇性导通,当改变PWM的高低电平所占时间时(即改变T1和T2的时间比),电机导通和停止所占的时间就会发生变化,表现出来的则是电机的速度随之发生变化。例如:当T不变,T1增加,T2随之减小,电机导通的时间增加,则速度加快;当T不表,T1减小,T2随之增大,电机导通的时间减小,则速度减慢。3.2舵机的工作原理在舵机中有一个控制电路板,从它引出3根线分别是:VCC、GND和SNG,SNG接收单片机发送来的PWM波,根据PWM的高电平占空比来控制电机的转动方向和转动角度大小,电机再使齿轮旋转,降低电机速度后使连接的轴转动。当舵机开始转动后,里边有一个可以检测转动位置的传感器装置,再判断现在的位置和预计的位置,做以比较就可以知道是不是转到了想要的位置,如果没有则继续转动,再判断,一直转到检测到到达想要到达的位置。在使用过程中要给舵机的SNG线输入周期PWM波,这个PWM高电平和低电平时间加起来在10-25ms之间3。而其中低电平时间应在5ms - 20ms之间。如图3所示,是舵机SNG端输入的波形和舵机转动角度之间的对比关系图。舵机输出轴转角-90-4504590输入信号脉冲宽度(周期为20ms)0.5ms1.0ms1.5ms2.0ms2.5ms图3 电机转角与输入脉宽关系当PWM波的高电平持续输出0.5毫秒时,舵机会转在-90位置4;当高电平持续输出时间在1.0毫秒时,舵机会在-45处;当持续1.5毫秒时,舵机转到0位置;当持续2.0毫秒时,舵机转到+45位置;最后,当高电平持续2.5毫秒时,舵机转动到+90。将各个模块连接完成后,打开机器人的电源总开关,各个部分加电运行并初始化,初始化完成后,机器人主控控制语音模块发出欢迎语音:“开机完成,你好,我叫小明,很高兴见到你。”3.3 机器人躯干设计机器人支撑部分由U型、L型和一字型支架组成,各个零件由螺丝进行连接,以起到牢固的固定作用。机器人的每个关节处都安装有一个996数字伺服舵机,伺服舵机与结构件通过螺丝和法兰轴承连接和固定。法兰轴承可减少部件之间的摩擦,减少损耗。为机器人的关节提供力量支持,使机器人的各关节能够灵活运动,如图4所示。图4 机器人躯干示意图采用这种设计方法有利于机器人后期的改装和功能的添加,如要添加模块只需要将对应部件拆下更换为其他部件,或将新的模块直接与现有结构件使用螺丝钉进行连接即可。例如,如果要给机器人添加手掌来实现抓取动作,则只需要将现有的长方形手掌拆下,换上手掌模块,添加一路伺服舵机,修改控制代码即可。3.4 舵机控制器选用舵机控制器选择的是32路舵机控制器。这款舵机控制器带有两路个8A的过流保险,并另有4路各2A的过载保护,保证控制器和舵机的正常使用。而且支持串行口通信,可以使用单片机直接进行控制。板载USB接口,可连接电脑进行调试。还可以外接PS2手柄进行控制,但是串口和PS2只能选择其中一种,因此本设计中我们采用单片机通过串口控制。另外,设有电池电压检测电路,当电池电压过低时,会发出提示音,防止电池因为过放而损坏,保证电池的使用寿命。基于以上优点的考虑,我选择了这款控制器。3.5 主控制器的设计机器人中采用的主控制器型号为STC12C5A60S2,是一款由STC公司生产的增强型高速、抗干扰能力强、功耗低的1T单片机5,编程方法与8051单片机类似。使用Keil作为开发环境,利用C语言开发,开发过程比较简单6。之所以选择这款单片机作为控制器,是因为它可以设置为1T模式,运行速度是普通12T单片机的7-8倍,并且它具有双串口功能,P1口的P12和P13可设置为第二串口,可以满足机器人控制系统的器件连接要求。图5 主控制器基本电路原理图主控制器最小系统原理图如图5所示,图中介绍了单片机的复位电路和时钟产生电路7。本设计中两个电容器C1、C2采用30 pF瓷片电容。晶振 X1一般为1.2 MHz-35 MHz,常用的晶振频率为11.0592 MHz和12 MHz,一般情况下使用11.0592 MHz,若系统需要产生精确地时间,则需采用12 MHz晶振。本设计中因涉及到串行通信,为使得产生较为准确的波特率,故采用11.0592MHz晶振。3.6 语音模块设计语音部分需要的功能是:能够准确识别到使用者的正确命令,并将识别码发送到主控,在主控的控制下,语音芯片发出正确的提示语音。机器人的语音识别电路使用LD3320语音识别芯片,配合单片机对其编程,实现语音识别功能;语音合成电路使用XFS5152CE语音合成芯片配合外界扬声器实现语音合成功能。语音合成模块结构如图X所示。图6 语音识别内部原理3.7 无线视频传输模块设计无线视频获取和传输部分,核心采用mini2440嵌入式开发板,通过USBHub外接USB摄像头8,配合驱动编程和应用编程,将摄像头驱动起来能够正常使用。外接USB无线网卡,搭建机器人的无线通讯部分,将视频通过无线局域网传输至上位机,上位机中使用上位机显示软件填写相应的机器人IP地址,连接至机器人的视频传输协议,并在软件中显示机器人传输过来的视频。3.8 系统原理框图摄像头Mini2440无线网卡上位机视频显示无线网卡局域网图8 机器人视频传输部分原理框图舵机控制器主控语音识别语音合成舵机2舵机1舵机17舵机3.图7 机器人控制部分原理框图机器人控制部分原理框图,如图7所示,机器人视频传输部分原理框图如图8所示9。4 软件设计4.1软件框图开始系统上电,初始化各模块;开机提示主控发送站立命令是否有语音控制命令发出发送语音合成命令向控制板发出相应动作命令NY图9 软件流程图4.2流程介绍系统上电后,主控制器初始化语音识别、语音合成和舵机控制板等模块,摄像头控制板开机启动。待初始化完成后,主控制器向语音合成模块发送指令,发出开机提示音。之后向舵机控制板发送直立命令,使机器人处于站立状态10。Uart1_Send_String(PL0rn);Uart1_Send_String(PL0SQ0rn);此时,系统进入命令等待状态,等待用户输入语音命令11。系统上电后,语音模块将预先设置的语音命令存入识别器,当用户说出机器人的语音命令后,语音识别模块接收到语音,并进行处理、分析,与识别器中的命令进行对比,根据结果得到语音命令码12,将语音命令码发送到主控制器,主控制器根据识别码,向语音合成模块发送合成命令,语音合成模块根据命令中的语音设置信息和语音内容进行语音合成13,通过扬声器将声音发出送出。语音识别模块的ASR初始化函数:void LcD_Init_ASR()LcD_Init_Common();LcD_WriteReg(0xBD, 0x00);LcD_WriteReg(0x17, 0x48);delay( 10 );LcD_WriteReg(0x3C, 0x80); LcD_WriteReg(0x3E, 0x07);LcD_WriteReg(0x38, 0xff); LcD_WriteReg(0x3A, 0x07); LcD_WriteReg(0x40, 0); LcD_WriteReg(0x42, 8);LcD_WriteReg(0x44, 0); LcD_WriteReg(0x46, 8); delay( 1 );语音识别函数实现过程:22void ProcessInt0(void)uint8 nAsrResCount=0;EX0=0;ucRegVal = LD_ReadReg(0x2B);LD_WriteReg(0x29,0) ;LD_WriteReg(0x02,0) ;if(ucRegVal & 0x10) &LD_ReadReg(0xb2)=0x21 &LD_ReadReg(0xbf)=0x35)/*识别成功*/nAsrResCount = LD_ReadReg(0xba);if(nAsrResCount0 & nAsrResCount0;c-) for(b=168;b0;b-) for(a=22;a0;a-);/延时1毫秒void delay1ms(void) /误差 -0.018084490741us unsigned char a,b; for(b=18;b0;b-) for(a=152;a0;a-); _nop_(); /if Keil,require use intrins.h/避障函数void bizhang()unsigned int value_lift,value_right;Uart1_Send_String(PL0rn); /停止当前动作delay10ms(); /些许延时Uart1_Send_String(PL0SQ0rn); / 直立Uart1_Send_String(#10 P800rn); /头部(红外)左转 至 800 用时500msdelay10ms(); /延时 等待舵机响应if(hongwai = 0)value_lift = 1; /elsevalue_lift = 0;Uart1_Send_String(#10 P2000rn); /头部(红外)左转 至 1600 用时500msdelay10ms(); /延时 等待舵机响应if(hongwai = 0)value_right = 1; /elsevalue_right = 0;/主函数void main()AUXR = AUXR|0x40; / T1, 1T ModeUart1_Init(); /串口1 初始化Uart2_Init(); /串口2 初始化HC_Info(v1x1h0m51z1); / 设置合成语音 3级音量 男声 自动读单词*#韵律delay1ms();delay1ms();delay1ms();/Uart1_Send_String(PL0rn);/Uart1_Send_String(PL0SQ0rn);led = 1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论