【Roban教程】机器人上楼梯实践

本帖最后由 零落 于 2021-2-5 10:45 编辑

在介绍实例之前,先简单介绍一下贝塞尔曲线,贝塞尔曲线的应用得益于法国工程师贝塞尔,该曲线并不是他提出,但他在车体工业上的大力推广并应用这种曲线,因此以他的名字命名。利用这种方法可以通过很少的控制点,去生成复杂的平滑曲线,因此在生成曲线之前,首先需要选取好控制点。腿足式机器人相比于轮式机器人最大的优势就是能适应复杂的地形。本小节主要介绍一个机器人上楼梯的实例,其中轨迹规划部分利用到了贝塞尔曲线 ,主要分为四个阶段的运动。


一、第一阶段

这里我们选取右脚先迈上台阶,在第一阶段,重心需要向左侧移动,待重心投影移至左脚支撑区,右脚迈上台阶。在此期间,重心仅仅只在 X-Y 平面移动,见重心轨迹图中的 A-B-C, 右脚在 X-Z 平面移动。

W_HF)N9{9G`WS%P7C2E%MD3.png

_U_)~[)[R`%(QN()RSGYPM0.png


[VBK~M{$UUV[Z$QAJZ3T856.png

图1  上楼梯第一阶段示意图


二、第二阶段

在第二阶段,需要将重心转移至右脚上方,因此重心在 X-Y-Z 三个平面都有运动,见重心轨迹图中的 C-D-E,待重心转移至右脚上方后,左脚开始运动,此时左脚并没有规划相应的轨迹,而是绕着脚尖旋转 30 度,这样是为了避免后续左脚在运动时与台阶触碰。

KW(PFSYD)RVQ($DAADWL(37.png

GG05U5~7F_K85U]MD@]~3}0.png


G$_E3E``L($M[GZDRR3T5.png

图2  上楼梯第二阶段示意图


三、第三阶段

在第三阶段,重心继续在 Y-Z 平面移动,见重心轨迹图中的 E-F-G, 左脚沿着规划好的贝塞尔曲线运动,并站上台阶,左脚的运动分为两部分,一个是沿着贝塞尔曲线运动,另一个是将上一个阶段旋转的30度恢复至脚平行于地面,最终左脚站上台阶。

W(5T%V(WE0H$((Q[8NTDH9N.png

}1EK4{]FZAFKWB}E@$JZ(EF.png

J~C%~TZB8VUPZT0{3LDAO]5.png


I(3RAYBKQS391`)%2LYO)9Q.png

图3  上楼梯第三阶段示意图


四、第四阶段

此阶段重心恢复至两脚之间,见重心轨迹图中的 G-H,至此上完一步台阶。

NM~I3[CZ[D2EXL]Y]9RJ)P8.png


(%FHC%{N[9$OR%7_UL2X1.png

图4  上楼梯第四阶段示意图


整个过程重心的控制点曲线如下:

S8X0$N]JHMNBKIF@I@`{ZYM.png

图5  重心轨迹图


实际仿真过程中运行三步的重心轨迹:

X6T7N{LZ3$HFP)DFFIX8N%C.png

图6  仿真重心轨迹图



回复

使用道具 评分 举报

大神点评4

王麒麟 2021-2-7 10:16:59 显示全部楼层
跟不上这个节奏哟
回复

使用道具 评分 举报

 楼主| 零落 2021-2-7 16:24:20 显示全部楼层
王麒麟 发表于 2021-2-7 10:16
跟不上这个节奏哟

跟得上哦~可以关注官方微信公众号《乐聚机器人》,了解产品展示。
回复

使用道具 评分 举报

王麒麟 2021-2-24 14:42:16 显示全部楼层
零落 发表于 2021-2-7 16:24
跟得上哦~可以关注官方微信公众号《乐聚机器人》,了解产品展示。

有点难得嘛
回复

使用道具 评分 举报

Tsca 2021-11-17 22:38:13 显示全部楼层
请问这些c++代码怎么运行呢?比赛和开源代码提供的都是python的运行过程和代码,c++代码怎么应用呢?
回复

使用道具 评分 举报

您需要登录后才可以回帖 登录 | 立即注册

  • 1 关注
  • 1 粉丝
  • 48 帖子