35

I want to know how to calculate rotation angles using inverse kinematics. I am planning on using this for real time 3d animation. Anyone know of some good literature that details a specific solution?

antonakos
  • 8,261
  • 2
  • 31
  • 34
Mr Bell
  • 9,228
  • 18
  • 84
  • 134
  • 16
    Who cares that this is off topic. Some people just use their privileges to impose strict laws on things that can be beneficial. Behaving like some cartoon policeman with no common sense. Well done, here's your new badge from Stack Overflow. – Pawel Jun 30 '15 at 17:07
  • 1
    How is that even possible, that a "bad" question has 4 good answers, which helped at least 34 people? Maybe it's time to reconsider something... – kolenda Nov 03 '16 at 11:20

4 Answers4

30

The following resources survey some popular numerical methods for inverse kinematics problems:

Buss's survey may be particularly interesting, because it explicitly discusses multiple limbs.

IK systems for animation must generally support multiple, possibly conflicting, constraints. For example, one arm can hold on to a rail while the other arm reaches for a target.

6 dof industrial robots generally have closed form IK solutions, as mentioned by Andrew and explained in e.g. Craig: Introduction to Robotics. More useful for figure animation are methods for 7 dof human-like arms and legs:

antonakos
  • 8,261
  • 2
  • 31
  • 34
7

From wikipedia:

The ikfast program can solve for the complete analytical solutions of most common robot manipulators and generate C++ code for them. The generated solvers cover most degenerate cases and can finish in microseconds on recent computers.

Yeo
  • 11,416
  • 6
  • 63
  • 90
Andrew Walker
  • 40,984
  • 8
  • 62
  • 84
4

You can look at:

  • Theory of Applied Robotics: Kinematics, Dynamics, and Control (2nd Edition) by Reza N. Jazar. Not bad, but in my opinion calculation of Jacobian is covered badly.
  • Robotics: Modelling, Planning and Control Bruno Siciliano. This book also great and covers Jacobian calculation well to implement.
  • Trajectory Planning for Automatic Machines and Robots by Luigi Biagiot. Also very helpfull and well written book.

Also look at https://github.com/kirillv/cpp-inverse-kinematics-library It shows some algorithms (Jacobian Transpose , Jacobian Pseudoinverse , DLS) in C++, and solves IK for robots described in DH.

kirillv
  • 41
  • 1
1

Thomas Kane is one of the world's authorities on dynamics. I'd recommend his "Dynamics" text highly, but it's not for the faint of heart or weak at mathematics.

duffymo
  • 305,152
  • 44
  • 369
  • 561
  • 1
    Does this book detail a specific mathematical solution for solving 3 dimensional inverse kinematics? – Mr Bell Aug 19 '10 at 02:24
  • See page 4 of this article: http://bledsoebrace.com/studies/Ankle1_RMML.pdf. It shows Kane's differential equations for the problem. Don't know if that's what you have in mind. – duffymo Aug 19 '10 at 02:34
  • For real-time 3d animation kinematics is often enough, there's often no need to use dynamics. – Christian Rau Jun 23 '11 at 23:08