MATLAB中Robotics Toolbox 机器人工具箱的缺陷!!!(做机器人逆解的小伙伴必看)

首先,申明下:1.这是原创,请不要转载;2.本人从事机器人技术的研究已有7年,基本上的大风大浪都见过;3.本文内容不一定面面俱到,不喜勿喷。

MATLAB中的Robotics Toolbox,也就是我们常见的机器人工具箱是学者Peter Corke(很幽默的一老头)为了方便他的教学而开发的一款自定义的机器人工具箱,里面的调用函数都是他及他的团队编写。

参考书:《Robotics, Vision and Control: Fundamental Algorithms In MATLAB》第二版

现在抛出问题:用过该工具箱的小伙伴按照参考书上的例子求解PUMA 560(6-DOF机器人)的正逆解,觉得没有任何问题。用fkine()正向运动学函数求解自定义的机械臂也没有问题。但是,用ikine()求逆解时,却有问题了,要么无法求解,要么求解出来的关节角不对,这是为什么呢?人当时用到这个工具箱时,也遇到过这个问题,请教了不少大牛。大牛的回答总结如下:1.该工具箱只能解决一类机器人(关节角、串联、构型等);2.可以根据matlab函数,深入研究ikine()逆解函数;3.如果该工具箱能解决任意自由度的串联型机器人的运动学求解问题,那么学习机器人技术就很简单。实际上,这是不可能的。

机器人逆解到底应该怎么解?

不同构型的机械臂解法不同。本人举个例子,一个6-DOF转动型串联机械臂,它的构型满足:1.三个连续的转动关节的轴相交于同一点;2.三个连续的转动关节的轴平行。满足上述条件的机器人,前3个关节与后3三个关节可以看作是解耦的,即前3个关节控制机器人的位置,后3个关节控制机器人的姿态。一旦末端执行器的位置和姿态由PeRe=[ne se ae]制定,就可以找到腕关节的位置:

1)Pw=Pe-d6*ae

2)求解逆运动学得到(q1,q2,q3)

3)计算R03(q1,q2,q3)

4)计算R36(q4,q5,q6)=R03'R

5)求解逆运动学得到方向(q4,q5,q6)

这样,便完成了机器人逆解。

我现在用的方法是迭代计算,即以能量法、关节变化最小为目标函数,通过优化算法来找出最合适的关节角组。目前,这种方法已经解决过很多类型的串联机器人,没有出现过什么问题。有兴趣的小伙伴,自己去找文献看看,千万不要留言问我(由于特殊原因),请见谅。

 

  • 7
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值