两足行走机器人行走控制部分设计说明书文档格式.docx
- 文档编号:21009078
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:26
- 大小:4.33MB
两足行走机器人行走控制部分设计说明书文档格式.docx
《两足行走机器人行走控制部分设计说明书文档格式.docx》由会员分享,可在线阅读,更多相关《两足行走机器人行走控制部分设计说明书文档格式.docx(26页珍藏版)》请在冰豆网上搜索。
这两个机器人代表了当前世界上两足步行机器人研制的最高水平。
Asimo和Qrio都是拟人机器人,它们除了具有两足步行功能之外,还具有非常强大的视觉功能和语音功能,能辨认很多目标,并能和人进行很好的语言及肢体交流。
而桌面型的两足机器人也一直受到研究者的重视,研究的重点是两足步行功能。
如图1.2所示。
图1.2Asimo(左)和Sony的Qrio(右)
2006年,日本神奈川大学设计的WABIAN-2LL机器人,身高120cm,重40Kg,在步行中通过膝关节改变腿长,通过腰关节的运动来减少腿部运动对身体重心的影响。
2007年,大阪大学的KohHosoda等人研究了人类行走过程中的腿、腰、头、手臂等各部分的协同作用,在两足机器人中引入了三维极限环协同理论,设计的机器人Pneumat-BT[6],[7]。
随着集成电路的发展,小型机器人可以具有功能越来越强大的嵌入式计算系统,甚至可以使用运算能力很强的图像处理和模式识别系统。
这使得桌面型两足步行机器人和拟人机器人之间并没有严格的区分标准。
2007年,东京Denki大南京师范大学硕士学位论文学的HidetoSHIMIZU等人设计了小型两足步行机器人HOAP-3,身高60cm,重8.8Kg,共有28个自由度,有一个强大的视觉处理系统。
如图1.3所示。
图1.3WABIAN-2LL(左)、Pneumat-BT(中)和HOAP-3(右)
2006年,西班牙PolitecnicadeValencia大学的Albero和Blanes等人设计了具有高性能分布式控制系统的桌面型两足机器人YABIRO,高55cm,重4Kg,共27个自由度,具有独特的腰部三自由度结构,如图所示。
该机器人使用了多个嵌入式系统,主控制系统使用了嵌入式个人计算机和实时Linux操作系统,具有非常强大的数据处理能力;
主、从控制系统以及传感器之间使用dual-CAN总线通信。
2006年,韩国国立釜山大学开发了脚底安装有力传感器的桌面型两足机器人,该机器人身高28cm,重3.2Kg,如图所示。
同年,韩国SungKyunKwan大学也开发了一个桌面型两足步行机器人,身高45cm,重4.3Kg,共24个自由度,如图所示。
该机器人使用了TI公司的DSPTMS320F2407作为控制器,使用直流无刷电机作为驱动器,在两足步态设计中引入了遗传算法。
如图1.4所示。
图1.4YABIRO-2(左)、釜山大学机器人和SungKuhnKwan大学机器人(右)
我国从80年代中期才开始研究两足步行机器人[20,21],国防科技大学1988年研制成功我国第一台平面型六自由度的两足机器人,能实现前进、后退和上下楼梯;
之后又现了实验室环境中的全方位行走,1995年,实现了动态步行。
2000年11月,国防科技大学又研制出了我国第一台具有人类外观特征、可以模拟人类行走与基本操作功能的拟人两足步行机器人Pioneero。
2002年,清华大学精密仪器系、机械工程系和自动化系组成的研究小组开始研究开发拟人机器人THBIP,共32个自由度,可以步行、上下楼梯、打太极拳等,并具有视觉及语音识别功能[3]。
两足机器人的研制发展过程,是由少自由度到多自由度、由实现简单动作到复杂动作、由静态步行到动态步行、由仅从简单功能到仿生功能的研制过程。
1.3本文的主要工作
本文设计的主要内容是两足行走机器人的行走控制系统部分,我选用8位AVR微处理器内核处理器ATMega8P,设计了两足行走机器人的控制系统。
主要工作包括:
(1)设计了两足步行机器人的硬件电路。
选用高性能、低功耗的8位AVR微处理器,指令执行时间为单个时钟周期,速度快,控制精度高、I/O口驱动能力更强,优于AT51、STC51系列单片机。
(2)选择设计了两足步行机器人的控制软件系统。
在AVR微处理器中移植了uC/OS-II操作系统;
在操作系统下设计了应用程序,实现了两足机器人控制系统的各项功能,搭建了完整的两足机器人控制系统软件框架[12],[13]。
(3)搭建了17自由度机器人双腿的运动模式,通过17个舵机同时协调运作,以实现机器人完成相应的动作。
(4)完成毕业设计的同时,提出本设计的不足,指出需要改进的地方。
1.4本文组织结构
第一章介绍了两足步行机器人的国内外研究现状[26],由别人设计的机器人总结对自己的启发提出本设计的主要任务点。
第二章介绍了控制系统中常用的处理器和操作系统、以及两足步行机器人的机械结构,并说明了本文设计两足步行机器人控制系统的目的。
使用Prote199设计了两足步行机器人控制系统的硬件,包括核心电路图和PWM脉冲信号控制原理图。
第三章介绍了使用实现机器人控制系统的具体软件,这里我们使用了ServoControlSoftware,是实现伺服电机控制器通讯协议PC机上专用WINDOWS控制软件,可以简便的实现复杂动作的操控。
第四章建立两足步行机器人步行模式建立,对机器人的双腿运动进行了分析,对10个微型伺服直流电机的转角角度进行了逐个分析。
第五章对本文的工作进行了总结,并对今后的深入研究提出了建议。
2两足步行机器人控制系统硬件设计与实现
在以比赛、娱乐、教学和研究为目的的两足步行机器人控制系统中,单板计算机作为控制系统虽然运算速度快,但体积大、成本高,而且功耗大;
有此而选用高性能、低功耗的8位AVR®
微处理器,指令执行时间为单个时钟周期,速度快,控制精度高、I/O口驱动能力更强,优于AT51、STC51系列单片机,所以能够解决一些较为复杂的控制指令。
2.1硬件系统的基本要求
两足步行机器人是对人类的模仿[15]。
但人类的结构极其复杂,对人类步行原理的研究至今仍有许多未解决的问题。
所以在设计两足步行机器人机械结构时,会对人类步行的结构进行减化,只会考虑基本的步行功能。
人类的仅下肢就具有62对肌肉,腰部8对肌肉,在设计两足步行机器人时,要控制具有这么多自由度的多变量系统几乎是不可能的事情,所以两足步行机器人通常腿部只具有8至12个自由度,腰部具有0至3个自由度。
本课题设计的机器人共有17个自由度,驱动器为微型直流伺服电机,简称舵机。
其机械结构如图2.1所示。
图2.1机器人机械实物
该机器人的机械结构具有如下特点:
(1)该机器人的机械设计具有很高的稳定性,国外的一些类似机器人曾获得机器人比赛冠军;
(2)该机器人踝关节和髋关节各具有两个自由度,这种机械结构设计可以使机器人在不平地面站立;
(3)该机器人膝关节具有一个自由度;
(4)该机器人肩关节具有两个自由度,肘关节具有一个自由度,可以实现简单的摆臂功能,用以配合腿部的运动,抑制摆腿时产生的左右扭转趋势。
(5)该机器人的机械结构也具有一个缺点:
没有腰部扭转自由度,使两足步行机器人在行走中不能使用腰部关节进行姿态平衡,但这并不阻碍机器人在平地上的行走。
本文在“KONDO”机器人[9]机械结构的基础上,设计控制系统,用来替换其自带的控制系统。
本文设计的控制系统在硬件上至少满足如下5个基本要求:
(1)产生不少于17路独立的高精度单边沿PWM信号,用来控制作为机器人关节驱动器的17个直流伺服电机;
(2)具有调试接口;
(3)具有一个与PC机通信的接口;
(4)具有多路A/D转换电路,用来扩展传感器;
(5)具有独立而稳定的电源。
我们设计的机器人所用的高精度直流伺服电机,控制信号为0.5ms~2.5ms高电平的PWM信号,对应转角为0度到180度,电机精度为0.1度,则控制信号的精度应该高于(2.5ms~0.5ms)/1800=1.11μs。
2.2硬件系统设计的技术路线和总体方案
2.2.1处理器选型
二十年前,只有少数的几个科研机构在研究两足步行机器人,现在却不胜枚举,这其中很重要的一个原因就是嵌入式计算机的高速发展[24],[25]。
嵌入式计算机由于其体积小、功耗低、硬件资源丰富,非常适合应用在对体积和功耗都有较高要求的小型机器人系统中。
在机器人控制系统中常用的处理器有:
TIC2000和C6000系列DSP、8051和AVR单片机、ARM7和ARM9系列、PC104和PowerPC单板计算机等。
它们各自具有鲜明的特点,通常都是为了特殊的应用而设计,如表2.1所示。
表2.1机器人控制系统中常用处理器
机器人控制系统中常用的处理器
处理器的特点
在机器人控制系统中的应用
C2000系列DSP
具有很强的数字信号处理能力,适合运动控制,硬件设计方便。
运动控制、语音处理。
尤其适合执行针对单个或一对直流(无刷)电机的复杂算法。
C6000系列DSP
具有极强的数字信号处理能力,具有专门的操作系统,硬件设计非常复杂。
高级的视觉处理和模式识别
8051和AVR系列单片机
结构和指令简单;
运算能力较低,通常不支持操作系统:
几乎全部芯片都己经单片化,硬件设计非常方便。
简单的运动控制和信号处理,在复杂的控制系统中作为局部控制器。
ARM7系列
典型的RISC处理器,运算能力较强,支持多种操作系统:
部分型号芯片己经单片化,硬件设计较方便。
小型机器人主控制器,常用于运动控制和传感器信号处理。
ARM9系列
典型的RISC处理器,运算能力很强,支持多种操作系统;
几乎没有单片化,硬件设计较复杂。
机器人主控制器,同以进行视觉处理、语音处理和模式识别。
PC104,PowerPC等单板计算机
由PC演化而来,通用性很强,功耗大,硬件设计非常复杂。
复杂的拟人机器人的主控制器。
DSP处理器在谱分析、FFT变换、数字滤波等方面得到非常广泛地应用。
TI公司的02000系列DSP主要用来进行运动控制,适合用于执行针对单个或少量电机的高级控制算法。
虽然C2000在桌面型两足机器人中也有应用,但C2000对操作系统的支持能力有限,一般不使用操作系统,所以如果作为主控制器会带来软件设计上的局限性。
C6000系列具有很高的主频、丰富的硬件资源、特殊的系统结构,数字信号处理能力非常强大,并且TI公司特地为C6000(和C5000)系列开发了专用DSP/BIOS操作系统。
DSP/BIOS操作系统使C6000如虎添翼,成为了高级视觉处理应用的主流处理器。
但使用C6000作为处理器时电路复杂,通常只在大型拟人机器人中作为高级的视觉处理器,小型的机器人中应用很少。
8051和AVR系列单片机通常在其内部集成了CPU、存储器、总线逻辑、看门狗、I/0、以及其他接口,单片化的特性使其体积和功耗都大大减小,在两足步行机器人中得到了广泛使用。
ARM7系列处理器是ARM处理器中使用很多的一款。
ARM7处理器是典型的RISC处理器,对操作系统的支持能力很强,适合运行多种操作系统。
ARM9系列处理器在ARM7的基础上进一步地提高了运算能力,增加了更多的硬件资源。
ARM9对操作系统的支持能力同样地强大。
ARM9适合作为两足机器人控制系统的主控制器,同时还可以作视觉处理、语音处理和模式识别。
但ARM9系列处理器几乎没有能实现单片化的,硬件设计较为复杂。
单板计算机由通用计算机演化而来,常见的有PC104、PowerPC、MIPS、68000等。
单板计算机具有良好的通用性,对操作系统具有极强的支持能力。
但其设计和开发比较复杂,功耗较大,在拟人机器人等大型机器人中经常被用作主控制器。
本文结合控制系统设计的基本要求和常用处理器[19],高性能、低功耗的8位AVR微处理器,指令执行时间为单个时钟周期,速度快,控制精度高、I/O口驱动能力更强,优于AT51、STC51系列单片机。
2.2.2直流伺服电机的控制特性
直流伺服电机又称为舵机,是一种位置伺服驱动器,适用于角度不断变化并可以保持的控制系统[22]。
我们设计的两足行走机器人的直流伺服电机使用+7V至+12V电源,内部基准信号为周期为20ms的PWM周期信号,输入的控制信号也必须是周期为20ms的PWM周期信号,电压为+4V至+6V。
电机输出转角与输入的控制信号的脉冲宽度有如图2.2所示的线性关系。
图2.2直流伺服电机输出转角与输入PWM信号宽度的关系
本文中的两足步行机器人机械结构共有17个直流伺服电机,所以在设计控制系统硬件电路时,除了需要提供9V至12V的电源外,还必须提供至少17路4V至6V的PWM信号。
2.2.3硬件设计总体方案
对应于控制系统硬件设计的基本要求,作了如下的设计方案:
(1)核心电路包括AVR[11]核心处理器、JTAG调试接口、串口驱动电路和A/D转换基准电压电路[19],原理如图2.3所示。
图2.3核心电路原理图
(2)控制系统需要控制17个直流伺服电机,使两足步行机器人完成相应的动作。
控制直流伺服电机的PWM信号的周期为20ms,高电平持续时间为0.5ms至2.5ms,占空比较小,最大仅为1/8,所以可以进行多路分时复用。
本文使用了4个三态锁存器74HC595DPWM信号进行4路分时复用,一共可以得到32路独立的单边沿PWM信号,这样可以满足控制系统的要求。
使用高性能电池供电,增加了机器人的灵活性.其舵机PWM信号控制电路原理如图2.4所示。
图2.4PWM信号控制原理图
2.2.4电源设计
为了增加机器人的灵活性,两足步行机器人使用高性能电池供电。
直流伺服电机的电源要求为9V至12V,本文选用了电压为9V的高性能电池,直接作为直流伺服电机的电源。
由于基于AVR的处理器和外设均使用3.3V电源电压,所以需要选用电源电压转换器进行电压转换。
我们使用了一个直流电压转换芯片L78M05将电池的直流电源转换为相应的电流。
2.2.5舵机控制器PCB电路板的设计
32路伺服电机控制器是一套最具性价比的伺服电机控制器。
可以控制多达32个伺服电机协调动作的软硬件结合系统,它不但能实现位置控制和速度控制,还具有时间延时断点发送指令功能。
其主要由上位机软件和伺服电机驱动控制器组成。
通过PC机操作上位机软件给控制器传递控制指令信号,即可实现多路伺服电机单独控制或同时控制,控制指令精简,控制转角精度高,波特率可以实时更改,体积小,重量轻,其可作为类人型机器人、仿生机器人、多自由度机械手的主控制器。
此外还可以配合其他功能模块实现无线控制、传感器反馈,构建闭环控制系统。
随着国内外机械产业的不断进步,各大高校相继开设机械类创新课程和比赛[11],学生可将其应用在各类机械创新作品中,起到优化控制系统作用,其电路板界面如图2.5所示。
图2.5两足行走机器人控制系统电路板
2.3舵机控制器的使用方法
2.3.1伺服电机控制板接口功能
图2.6控制电路板各部分标识
舵机器控制器面板主要有电源接口、串口通讯接口、伺服电机借口、TIL通讯借口以及上位机扩展口、电源开关等部分组成,各部分详细的位置分布如图2.6所示,其中每个部分的详细说明如下:
①DC5V直流电源接口
此接口用于接插控制器控制部分供电电源,为了方便长时间调试,可以用套装中为用户提供的USB取电线,直接插笔记本电脑或台式电脑USB接口。
也可接插符合下面要求的外置电源适配器(注意电源极性!
)。
②控制部分电源端子接口
此接口用于接插控制器控制部分供电电源,为增大用户选择电源电压范围,特设此接口。
工作电压范围:
+7V~+12V。
注意端子接口正负标识符!
正确接线,避免损坏控制器。
为用户调试方便提供9V电池扣接线一条,可接9V电池使用。
③伺服电机供电电源端子接口
此接口用于接插伺服电机供电电源(由于伺服电机在重负载的情况下,会将放大器电压拉低,为防止影响控制器部分电压突变,应该将两部分分别供电),工作电压:
+4V~+6V(普通伺服电机)。
一般上,伺服电机启动和满负载的时候耗电达1A~1.5A,而没有负载时候只有约150mA耗电,所以请均衡考虑,根据同时运动的伺服电机数量,来考虑电源的功率选择。
为防止意外,请确保不要使用功率小于设计里面。
一半数目的电机满功率运行时功耗的电源。
为用户调试方便提供的5号四节/4位电池盒一个,装上电池可作为伺服电机调试电源使用。
④外扩上位机系统供电接口
此接口供电来源控制部分端子接口电源,可为自主开发的上位机(51系列、AVR系列、DSP、ARM等)板供电。
⑤串口通讯接头
此端口使用标准RS232串口电平进行通讯,可以接插为用户提供的串口通讯线和计算机进行通讯,接收实时控制指令。
⑥TTL通讯接口
若使用此功能请将跳线帽取下,此接口可用于伺服电机控制器与其他单片机开发的上位机BS2(BasicStamp2)通讯。
注意接口标识符,TX、RX左侧排针分别联接伺服电机控制板微控器TXD、RXD引脚。
⑦波特率设置拨码开关
通过设置拨码开关,波特率可以在2400960038.4k115.2k四种数值中转换。
注意:
1代表ON,0代表OFF。
控制器波特率默认设置为115200。
每次更改波特率数值后,都要给控制器重新上电启动,才会生效。
⑧伺服电机通道接口和⑨标识符
此接口可接插国际标准接口的伺服电机,包括模拟式和数字式两种。
接口侧方有1~32通道的标注符,表示伺服电机受哪一通道信号控制。
每一行可以接插一个伺服电机。
整行接口上面有S/+/-的标注,其中“-”表示接插伺服电机的地线(一般为黑色);
“+”表示接插伺服电机的电源线(一般为红色);
“S”表示signal(信号)接插伺服电机的控制信号线(一般为黄色或白色)。
支持的伺服电机:
FutabaorHitec以及国产品牌(如辉盛)等。
⑩电源开关
此开关控制伺服电机和控制电路两部分电源通断。
开关拨向标有ON一端为接通电源;
开关拨向OFF一端为切断整个系统供电。
3两足步行机器人控制系统软件设计
AVR系列单片机通常在其内部集成了CPU、存储器、总线逻辑、看门狗、I/0、以及其他接口,单片化的特性使其体积和功耗都大大减小,在两足步行机器人中得到了广泛使用,现在在操作系统下设计并实现了两足步行机器人控制系统的多个应用软件,构成了一个完整的控制系统软件框架;
最后改进了常见的多路PWM产生方法,具有很高的PWM信号的精度和系统的实时性,并对两足步行机器人进行了关节调试。
3.1软件系统的基本要求
根据机器人控制系统的功能需求和硬件电路的特点,软件系统至少需要满足以下5个要求:
(1)软件模块化,具有很好的可维护和可扩展性。
(2)实现PWM信号的分时复用,并要保证PWM信号的高精度。
并且通过软件,能够及时地改变PWM的输出。
(3)通过RS232接口能和PC机通信。
(4)通过I℃接口记录关键的信息到E2PROM存储器。
(5)通过3路10位A/D转换器读取传感器的值并预处理。
3.2软件设计的技术路线与总体方案
在机器人控制系统中常见的操作系统有:
TI的DSP/BIOS,Microsoft的WinCE,uC/OS-II,WindRiver的VxWorks,uC-Linux和RT-Linux等,它们各自的特点和应用如下所述:
(1)DSP/BIOS操作系统不但具有很好的实时性[23],而且与DSP外围的数据库兼容并且内建于DSP专用的交互式集成开发环境CCS。
但DSP/BIOS操作系统只适合在TI的C6000和C5000DSP处理器上使用。
(2)WinCE操作系统由Windows95精简而成,不开放源码,实时性不好。
但从内核到GUI的整个体系比较完善,并且Microsoft公司具有强大的软件研发和技术支持能力。
WinCE适合在功能复杂但对内核体积的实时性都没有太高要求的大型机器人主控制系统中使用,或者在图像监控系统中使用。
(3)uC/OS-II由世界著名的嵌入式专家JeanJ.Lacrosse编写,它具有源码开放、体积小、可移植性强、可剪裁、可靠性高等特点,但GUI部分不完善。
它非常适合在高实时性小型嵌入式系统中使用,经常应用在小型机器人控制系统中。
(4)VxWorks由美国WindRiver公司开发,具有极高的可靠性和实时性,但是它不开放源码,而且价格非常昂贵,通常应用在军用机器人和航天机器人中。
(5)uC-Linux和RT-Linux都是由Linux演化而来,继承了Linux的一系列优点,比如高可靠性和具有完善的网络功能。
它们结构复杂,对开发人员的技术要求较高,通常应用在比较复杂的机器人控制系统中。
本文根据控制系统硬件的特点和机器人的功能需要,选用了以C语言为基础编写而成的操作系统“ServoControlSoftware”。
其软件的操作界面如图3.1所示。
图3.1ServoControlSoftware操作界面
ServoControlSoftware
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 行走 机器人 控制 部分 设计 说明书
![提示](https://static.bdocx.com/images/bang_tan.gif)