六足机器人设计参考.docx
《六足机器人设计参考.docx》由会员分享,可在线阅读,更多相关《六足机器人设计参考.docx(12页珍藏版)》请在冰豆网上搜索。
![六足机器人设计参考.docx](https://file1.bdocx.com/fileroot1/2022-10/12/fe2c9dc9-21e0-4d4f-8c56-2b20c00536f6/fe2c9dc9-21e0-4d4f-8c56-2b20c00536f61.gif)
六足机器人设计参考
摘要
六足机器人有强大的运动能力,采用类似生物的爬行机构进行运动,自动化程度高,可以提供给运动学、仿生学原理研究提供有力的工具。
本设计中六足机器人系统基于仿生学原理,采用六足昆虫的机械结构,通过控制18个舵机,采用三角步态和定点转弯等步态,实现六足机器人的姿态控制。
系统使用RF24L01射频模块进行遥控。
为提高响应速度和动作连贯性,六足机器人的驱动芯片采用ARMCortexM4芯片,基于卩C/OS-II操作系统,遥控器部分采用ARM9处理器S3C2440,基于Linux系统。
通过建立六足机器人的运动模型,运用正运动学和逆运动学对机器人进行分析,验证机器人步态的可靠性。
关键字:
六足机器人,Linux,ARM,NRF24L01,运动学
Abstract
Bionichexapodwalkingrobothasastrongabilityofmovement,theuseofsimilarcreaturescrawlingmechanismmovement,highdegreeofautomation,canbeprovidedtothekinematics,theprincipleofbionicsresearchprovidespowerfultool.Sixfeetinthedesignofthisrobotsystembasedonbionicsprinciple,themechanicalstructureofthesix-leggedinsect,through18steeringgearcontrol,usethegait,suchastrianglegaitandturningpointtocontrolthepositionofsix-leggedrobot.RemotecontrolsystemuseRF24L01rfmodules.Inordertoimprovetheresponsespeedandmotionconsistency,six-leggedrobotdriverchipUSEStheARMarchitecture(M4chip,basedonmuC/OS-IIoperationsystem,remotecontrolpartadoptsARM9processorS3C2440,basedonLinuxsystem.Byestablishingasix-leggedrobotmotionmodel,usingforwardkinematicsandinversekinematicsanalysisofrobot,verifythereliabilityoftherobotgait.
KEYWORD:
Bionichexapodwalkingrobot;Linux,ARM,NRF24L01;Kinematics
1.绪论
2.六足机器人的硬件搭建
3.操作系统的搭建
4.六足机器人的步态分析与实现
5•总结与展望
1.绪论
1.1多足机器人的发展状况
目前,用于在人类不宜、不便或不能进入的地域进行独立探测的机器人主要分两种,一种是由轮子驱动的轮行机器人,另一种是基于仿生学的步行机器人。
轮行机器人的不足之处在于对于未知的复杂自然地形,其适应能力很差,而步行机器人可以在复杂的自然地形中较为容易的完成探测任务。
因此多足步行机器人有广阔的应用前景,如军事侦察、矿山开采、核能工业、星球探测、消防及营救、建筑业等领域。
在步行机器人中,多足机器人是最容易实现稳定行走的。
在众多步行机器人中,模仿昆虫以及其他节肢动物们的肢体结构和运动控制策略而创造出的六足机器人是极具代表性的一种。
六足机器人与两足和四足步行机器人相比,具有控制结构相对简单、行走平稳、肢体冗余等特点,这些特点使六足机器人更能胜任野外侦查、水下搜寻以及太空探测等对独立性、可靠性要求比较高的工作。
国内外对六足机器人进行了广泛的研究,现在已有70多种六足机器人问世,由于六足仿生机器人多工作在非结构化、不确定的环境内,人们希望其控制系统更加灵活,并且具有更大的自主性。
同时六足仿生机器人肢体较多,运动过程中需要实现各肢体之间的协调工作,如何方便可靠的实现这种协调,也是六足仿生机器人结构设计研究的一个热点。
1.2多足机器人的机构类型
一般来说,腿的构造形式可分为昆虫类和哺乳动物类两种不同形式。
昆虫类生物其腿的数目较多,一般在四足以上;其腿分布于身体的两侧,身体重心低,稳定性好,且运动灵活,但过低的重心不利于昆虫的越障能力;喃乳动物的行走腿则通常为两足或四足,且腿多分布于身体下方,重心高,便于快速奔跑和越
障,但在转向等需要灵活性的场合不如昆虫类有优势。
无论是昆虫类亦或哺乳动物类的腿的构造方式,在机器人机构中的具体实现形式上,一般有以下几种方式:
1.2.1单连杆式
出于简易灵活、价格低廉的角度考虑,一些功能单一、以娱乐性为主机器
人的六条腿采用单连杆机构设计,并以较少的自由度实现了基本的步行功能,
减少了执行电机,简化了设计。
目前市面上有很多诸如此类的爬虫玩具,如图所示为常见的单杆式腿结构的机器人。
但是,过于简单的腿部结构以及较少的自由度导致此类机器人难以完成复杂的动作,实用性较差。
不过这类机器人也可以通过简单的控制完成倒退、转弯等功能,只是无法实现精确定位。
122关节式
出于简易灵活、价格低廉的角度考虑,一些功能单一、以娱乐性为主机器
人的六条腿采用单连杆机构设计,并以较少的自由度实现了基本的步行功能,减少了执行电机,简化了设计。
目前市面上有很多诸如此类的爬虫玩具,如图2
一1所示为常见的单杆式腿结构的机器人。
但是,过于简单的腿部结构以及较少的自由度导致此类机器人难以完成复杂的动作,实用性较差。
不过这类机器人也可以通过简单的控制完成倒退、转弯等功能,只是无法实现精确定位。
1.3多足机器人的控制策略
通俗地说,步态是行走系统抬腿和放腿的顺序。
从1899年Muybridge用连续摄影法研究动物的行走开始,人们对步行行走机构的步态进行了大量的研究工作,尤其是近二三十年来,关于步态研究的重要成果不断涌现。
下面介绍的是目前应用较广的几种多足机构行走方式。
1.3.1三角步态
二角步态也称交替二角步态,是“六足纲”昆虫最常使用的一种步态,也被誉为最快速有效的静态稳定步态。
大部分六足机器人都是从仿生学的角度出发使用这一步态。
昆虫三角步态的移动模式较简单,非常适合步行架构的机器人的直线行走,行进速度也比较快。
本论文也采用这种步态实现机器人的直线行走,该步态的具体方式将会在后文中具体给出。
132跟导步态
通常,三角步态的研究通常都局限在平坦地面,并且假设对于不平地面也是合理的。
然而随着1974年Sun首先提出了跟导步态的概念,并于1983年由Tsai成功地把这种步态应用于俄亥俄州立大学的电动六足机器人中,这些为跟导步态的研究和发展,为提高机器人在不平地面上的行走速度奠定了基础。
对于六足机器人来说,跟导步态的重点是选择前两足下一步的落点,而一对中足和一对后足的下一步落点由当前前足和中足的立足点决定。
跟导步态每次只需要选择前两足的立足点,因而具有控制简单,稳定性较好,越沟能力强等特点,所以特别适合多足步行机在不平地面行走时采用。
1.3.3交替步态
与跟导步态类似,为了充分发挥六足机器人相对于轮式机器人在复杂地形的行走优势,交替步态成为新兴的六足机器人研究的重点。
这种单腿交替行走步态,也被称为五角步态。
在交替步态中,各腿的运动可分为抬升和前进两个部分。
当某腿的相邻各腿均已触地时,该腿开始运动,并给其相邻各腿发出信号。
同样,在该腿触地时,也会给相邻各腿发出触地信号。
这样,一旦整个六足系统进入行走状态,
这种顺次的步态运行状态就可以一直维持下去。
由于各腿等待其相邻腿触地的时间取决于其相邻腿的动作及其触地位置,因而,对于崎岖不平的地面而言,这种步态本身是不可预测的。
然而,对于理想的平整地面而言,各腿的运动周期应该是一致的,故而此时的交替步态实质上等同于三角步态。
2六足机器人的硬件搭建
2.1机器人部分
2.1.1主控芯片
机器人主控芯片采用先进的ARMCortexM4架构的STM32F407芯片。
具有浮点型运算能力,增强型的DSP处理指令,主频高达168MHz,拥有高达1M字节的片上内存。
本设计所选用封装为LQFP100封装,有多达80个10口,9个通用定时器,20路以上的PWM输出通道,因此有足够的硬件资源满足本系统的设计需要。
2.1.2结构设计
六足机器人每条腿有三个自由度,前两个自由度的转动轴线相互垂直,后两个自由度的转动轴线相互平行,分别由三个独立的舵机驱动。
根据所需扭力和成本,选择辉盛MG995舵机。
2.2遥控器部分
遥控器部分使用基于ARM920T核心的S3C2440A微处理器,主频可达
400MHz,并且包含MMU内存管理单元提供了对Linux,WindowsCE等操作系统的支持。
2.3RF射频通信部分
nRF24L01是一款工作在2.4~2.5GHz世界通用ISM频段的单片无线收发器芯
片。
无线收发器包括:
频率发生器、增强型SchockBurstTM模式控制器、功率放大器、晶体振荡器、调制器、解调器。
输出功率、频道选择和协议的设置可以
通过SPI接口进行设置。
3操作系统的搭建
3.1卩c/OSII系统的移植与搭建
卩C/OS-II,作为一个优秀的实时系统,不仅代码短小精悍,在实时性方面也非常优秀。
卩C/OS-II的各种服务都以任务的形式来出现的。
在卩
C/OS-II中,每个任务都有一个唯一的优先级。
它是基于优先级可剥夺型内核,适合应用在对实时性要求较高的地方。
uCOS-II与处理器无关的代码
OS.
_CORE・C
OS_Q.C
OS.
_FLAG*C
OS—SEM*C
OS,
_MBOX#C
OS_TASK.C
OS.
_MEN.C
OS_TIMEeC
OS.
_MUTEXuC0S_IC
用户应用程序
uCOS-II与应用程序
相关的代码
OS_CFG.H
INCLUDES,H
uCOSILH
ucos-n与处理器相关的代码,移植时需要修改
OS_CPU.H
OS_CPU.A.ASM
OSCPUc.c
现在介绍各个方框内的部分。
从上往下看,可以看到应用程序在整个卩
C/OS-II的构架的最上方。
这点也很容易理解,因为aC/OS-II作为一个很优秀的嵌入式操作系统,它最基础的功能就在底层驱动支持下屏蔽硬件的差异性,来为用户提供一个不需要考虑硬件的多任务平台。
因此和其他的操作系统一样用户程序都是建立在aC/OS-II内核基础之上的。
这样非常方便应用程序的编写。
中间层左边方框内的这些代码是与处理器及其他硬件都无关的代码。
可以看到,这些代码占了整个aC/OS-II的绝大部分。
作为嵌入式操作系统,易于移植是一个优秀操作系统必不可少的特性之一。
为了使aC/OS-II易于移植,它的创始人花费了大量的心血,力求与硬件相关的代码部分占整个系统内核的比例降到最小。
其中OS_CORE.C是内核文件,OS_FLAG.C是与事件标志管理相关的内容,OS_MBOX.C是负责消息邮箱管理的内容,