如何计算逆运动学

36

我想知道如何使用逆向运动学计算旋转角度,我打算用它来进行实时3D动画。有没有人知道一些详细解释特定解决方案的好文献?


16
谁在乎这个话题是否离题。某些人仅仅利用他们的特权来对可能有益的事情实施严格的规定。他们表现得像没有常识的卡通警察一样。做得好,这是你从 Stack Overflow 得到的新徽章。 - Pawel
2
这怎么可能呢?一个“糟糕”的问题竟然有4个好答案,至少帮助了34个人?也许是时候重新考虑一些事情了... - kolenda
4个回答

31
以下资源概述了一些流行的逆运动学问题的数值方法:

Buss的调查可能特别有趣,因为它明确讨论了多个肢体。

动画IK系统通常必须支持多个可能冲突的约束。例如,一个手臂可以握住栏杆,而另一个手臂可以伸出目标。

通常,6个自由度的工业机器人具有封闭形式的逆运动学解,正如Andrew所提到并在Craig:《机器人学导论》中解释的那样。对于人体肢体的动画,更有用的是7个自由度的类人臂和腿的方法:


7

来自维基百科:

Ikfast程序可以解决大多数常见机器人操作器的完整解析解,并为它们生成C++代码。生成的求解器覆盖大多数退化情况,并且可以在最近的计算机上在微秒内完成。


5

您可以查看以下内容:

  • 《应用机器人学理论:运动学、动力学和控制(第2版)》作者Reza N. Jazar。不错,但我认为雅可比矩阵的计算讲解得不够好。
  • 《机器人学:建模、规划和控制》作者Bruno Siciliano。这本书也很好,对雅可比矩阵的计算有很好的介绍,可以实现。
  • 《自动化机器和机器人的轨迹规划》作者Luigi Biagiot。这本书也非常有帮助,写得很好。

同时还可以参考https://github.com/kirillv/cpp-inverse-kinematics-library,它展示了一些C++算法(雅可比转置、雅可比伪逆、DLS),并且可以解决DH描述的机器人的IK问题。


嘿,Kirill,你的库有进展了吗? - xchg.ca

2

Thomas Kane是动力学领域的权威之一。我强烈推荐他的"Dynamics"文本,但这并不适合数学基础薄弱的人。


1
这本书详细介绍了解决三维反向运动学的特定数学解决方案吗? - Mr Bell
请参阅此文章的第4页:http://bledsoebrace.com/studies/Ankle1_RMML.pdf。它展示了Kane用于解决该问题的微分方程。不确定这是否符合您的意图。 - duffymo
对于实时3D动画,运动学通常已经足够了,通常不需要使用动力学。 - Christian Rau

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接