首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >固定端机器人手臂的仿真研究

固定端机器人手臂的仿真研究
EN

Stack Overflow用户
提问于 2015-01-15 09:41:39
回答 1查看 916关注 0票数 2

这是我正在使用的3D模型的草案,我想用python语言来模拟它的行为。我一直在研究这个模拟的最佳实现,但我没有发现任何适合真实运动的东西。我尝试过分析解,但由于某些参数的不确定性(臂长的某些误差)而失败了。

我想模拟旋转关节产生的运动,并将其转换成一个类似于方案中所描述的系统。

在某一时刻,系统可能会使用旋转接头,然后转到以下状态。

下一个方案描述了系统的两种状态。

简化DH参数的一个简单方法是:

重要的是如何计算两个非受控关节的位置和角度,从而计算出感受器关节角(不动点)。

它不仅是一个逆运动学问题。此外,我们亦有需要考虑有关的动议限制。运动必须由旋转关节的角度、连杆的长度、不动点位置和长度来决定。

下一个图像中的红色圆圈描绘了第二个非控制点的可能位置。

你怎么模拟这个动作?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-15 10:55:56

有一个有问题的位置,其中两个圆圈的交点(下面描述)有一个点。在这种情况下(假设是平面状态(重力垂直于所有臂)和静态情况)没有任何力,与第二个非受控关节运动。在动态中,我们为下一步选择另一个解决方案。

当交叉口不存在时,这种情况不存在,旋转关节不能移动到这个位置。

当我们计算所有位置并确定不存在交点的位置时,我们得到(琐碎)运动限制。

你能直接得到非固定点的末端位置吗?

旧下水道:

模拟运动:

  1. 用step delta_t计算非控制点在起始位置和结束位置之间的位置。
  2. 一步一步地绘制每个计算出的位置(例如,通过Pygame)。

计算:

  1. 第一非控制点的第一计算位置(较高) x_2 = x_1 + l_12 cos(Theta_1), y_2 = y_1 + l_12 sin(Theta_2),

其中X_1( X_1,y_1)是旋转点的位置,X_2( X_2,y_2)是第一个非控制点的位置,l_12是X_1和X_2之间的长度。

  1. 计算两个圆k_1和k_2的交点,其中k_1(第一个非控制点,l_23)和k_2(受体关节,l_34),其中k(圆心,圆半径)。

步骤2有两个解决方案。我们选择其中之一。为了模拟运动,我们必须选择“相同的解”。

从两点计算角度:

alpha = math.atan2((y_2-y_1)/(x_2-x_1))

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27960539

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档