If a 6 DOF robotic manipulator does not have a spherical wrist (the axis of rotation of joints 4, 5, and 6 coincide at the same point), the inverse kinematics are incredibly difficult.

Is ROS (Robot Operating System) capable of creating a closed loop control system for that arm? I know that it can do inverse kinematics, but I don't think it can do general geometry.

Thanks so much for your help!


1 Answer 1


Yes, ROS (or really, MoveIt) has general purpose IK plugins that can solve inverse kinematics for arbitrary geometry (both joint configuration and degrees of freedom). There are a number of plugin options for IK solvers, but I'll mention that the general purpose solvers are not analytic, closed form solutions - they are numerical approaches (e.g. the default is KDL).

There are other plugin options as well (just google "ROS Inverse Kinematics" and you should find a nice list), including some solvers that can provide analytical solutions for some geometries (but perhaps more than you might think). IKFast isn't terribly user friendly and is a bit out of date, but if you can get it working, it is undeniably fast.

Outside of the ROS realm, I also stumbled across and had some success with the IKBT project which can provide more human-friendly analytic IK solutions for surprising number of geometries when provided with DH Parameters.

Again, there are some robot geometries that are as of yet, "unsolved" in terms of a closed form IK solution. That's why general purpose numerical solvers are so prevalent and useful. So it really depends on your use case and your needs


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.