- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
旋转足式机器人步态控制器的设计
旋转足式机器人步态控制器的设计
摘 要 为实现旋转足式机器人的步态控制,本文提供了基于Freescale K60的一种相对易行的控制器设计方案。介绍了控制器任务调度方案、基本模块设计、步态算法设计,以及通讯方案。
【关键词】旋转足式机器人 步态 六足机器人
足式机器人能够通过移动足灵活地调整行走姿态,具有较强的地形适应能力,但往往速度慢,负载少;轮式机器人解决了以上问题,但往往只能应用于平地运输。UlucSaranli提出了一种旋转足式的机器人[1],使得其能够兼得两者的优点,不仅可以全地形奔跑,还可以越障、爬梯、跳跃、甚至用两腿直立行走。但与此同时,灵活性也带来了控制的复杂性,为了使机器人完成复杂多样的任务,需要编写方便扩展的软件。本文旨在提供旋转足式机器人步态控制器设计的一种可行方案。
1 系统结构
要完成爬梯,越障,运动物体跟随、地形探测等任务,系统需要配备摄像头,如果要完成更丰富的任务,就需要安装更多的传感器。应付诸多的数据需要强劲的处理器,应采用嵌入式技术来解决,而对于完成步态控制则完全可以通过一款性能较低的处理器,无需嵌入操作系统,直接通过裸机实现。
本系统采用S3C6410处理视觉和行动策略选择,采用FreescaleK60作为步态控制器,通过串口获取上层命令,执行相应行动策略。位置测量方案采用霍尔传感器AS5040,电机驱动芯片采用BTS7971。Freescale公司Kinetis K60系列单片机,工作电压1.71-3.6V,采用ARM Cortex-M4内核,其性能可达到1.25 Dhrystone MIPS /MHz,完全可以胜任步态控制的工作。另一方面,通过将步态执行机构分离出来,使得步态控制不会受其他无关任务干扰,也提供了统一的接口,可以与各种上层嵌入式系统连接,两层之间相互独立,更加灵活。
本系统的结构框图如图1。
2 模块管理者
本系统采用RHexLib的模块管理者机制作为任务调度的软件实现方案。在RHexLib中,模块定义为需要周期性调度的任务单元,通过模块管理者管理各个模块的活动,实现任务调度。模块通过模块名和模块号标识,具有两个属性和三个状态。如果模块是可以被多个其他模块使用的,则为多用户性的,否则默认为单用户性的。另一个属性轮询性表明模块是否需要频繁被调用。
一个创建的模块可能处于未初始化、未激活和活动状态。它们之间的转换通过模块管理者的添加模块、激活模块,挂起模块和释放模块四种操作实现。
下图为一个模块的生命周期示意图2。
RHexLib对模块的管理类似操作系统的进程管理,模块的三个状态可以对应地看做进程的阻塞、就绪、执行状态。同时也存在着以下区别:
(1)模块创建后进入未初始化状态,而进程创建后进入就绪状态。
(2)一个时刻只有一个进程处于执行状态,而可以有多个模块处于活动状态,由模块管理者决定唯一的模块占用CPU。
在系统主循环里,模块管理者不断地顺序执行活动的轮询性任务,同时周期性地执行非轮询性任务。模块管理者的机制,一方面便于充分利用CPU,通过减少CPU空闲等待时间提高CPU的利用率;另一方面也使得工程代码也具有了模块性,具有便于管理的优点。
3 基本模块
为了完成步态,需要一系列模块之间相互协作,下面介绍完成步态所需的基本模块。
位置读取模块:本系统采用霍尔传感器AS5040测量位置,由于电机携带减速箱,而霍尔传感器安装在电机内侧,所以无法直接测量外侧足的位置。需要确定足的初始位置,通过传感器数据计算相对偏移位置,得到足当前的绝对位置。足初始位置的校准通过堵转检测模块实现。
速度滤波模块:对测得的速度值采用加权递推平均滤波算法,以获得可靠的速度值,防止异常值影响控制的稳定性。
堵转检测模块:如果速度的绝对值在小范围内持续的时间达到了一定时间值的话,则可判定为堵转。通过堵转检测可以进行碰撞检测,从而感知地形。
电机控制模块:本系统采用BTN7971B制作电机驱动,在软件上,通过调整驱动电机的PWM输出占空比大小和设置方向IO输出电平的高低来实现对电机的控制。
位置控制模块:电机控制模块结合位置读取模块得到的位置信息,采用PID控制算法对电机进行控制,使得电机可以到达指定的位置。
4 步态分析
在RHex - A Simple and Highly Mobile Hexapod Robot一论文中,UlucSaranli对RHex进行了建模和运动分析,RHex的行走步态是一种交替三脚架控制:一侧中间足和另一侧的前后两足构成一个三脚架,六足机器人具有左右两个三角架,任意时刻只需有一个三脚架即可支撑机器人。在一个三脚架支撑地面时,另一个三
原创力文档


文档评论(0)