线程评级:
  • 0票(s) - 0平均
  • 1
  • 2
  • 3.
  • 4
  • 5
RoboDK-Matlab机器人配置
# 1
有时当机器人在特定的路径上移动时我们会突然改变构型因为它会经过奇点。我想尝试在RoboDK API for Matlab的帮助下修复一些任务所需的机器人配置。

当我在Matlab中计算逆运动学时,我得到了8个唯一的解,但是当我使用RoboDK IK求解器时,我得到了21个解。所以我的第一个问题是,我如何才能返回只有8个唯一的解决方案与robodk求解器到Matlab?然后我去检查robodk如何显示不同的配置。请查看附件文件,并确认我的翻译是否正确(那些绿灯)。

最后一个问题。似乎已经有一个Python的解决方案可以识别不同的配置(附件中的最后一页)。有可能在Matlab中实现这一点吗?如果没有,我在哪里可以找到使用函数JointsConfig的程序?

总结。当我得到8个唯一的IK解时,我想知道每个解的构型(f,r,u,d,f,nf)是什么(在Matlab中)我已经尝试手动限制每个配置的关节,但我认为RoboDK可以更好地处理这个问题。


提前谢谢你。致以最亲切的问候。

我解决了第一个问题。我在Robodk中设置了从-180到+180的关节限制,现在它只返回8个唯一的解决方案。现在我只需要对解进行分类,提取构型。


附加文件
. pdf Robodk ik(大小:301.17 KB /下载:22022世界杯国家队名单66)
# 2
也解决了其他问题。抱歉不必要的张贴。最后,它是一个相当简单的程序。如果有人遇到同样的问题,我就把解决方法写下来。
因为我使用的是UR5,所以我检查了它的奇异值。我们有手腕奇点,肘部奇点和肩膀奇点。最不舒服的是肩部奇点,我就不详细写了,因为在这个链接中更好地解释:https://www.mecademic.com/en/what-are-si...-robot-arm

从编程的角度来看,对于肩部奇点,必须检查变换矩阵T5_1= inv(T1_0)*T5_0中的x值是正的还是负的
T5_1-从Joint5到Joint1的转换
T1_0-从Joint1到基底的逆变换(我写了T,但它实际上是矩阵A我们从DH参数中得到每个后续矩阵都基于前一个,但这里它和T是一样的,因为我们看的是基底)
T5_0-从Joint5到base的变换(你从FK求解器中得到这个值- T1 T2 T3 T4 T5 T6,它们都是相对于base的)

对于肘关节奇点,我们只检查Joint3是否为正/负,对于手腕奇点,我们检查Joint5。计算正在工作,我得到与RoboDK相同的配置。测试这个Python版本还是不错的。




浏览此主题的用户:
1客人(年代)