Inverse Kinematics

I am currently dedicated to my Final Year Project, which is related to Robotics and developing a Human-Robot interaction and collaboration project. Expect many articles for the next 3-4 months on this topic. (if I have the time of course)

There are some new concepts that I haven’t heard again in the past. I am currently working on a piece of algorithm that will plan and configure the joints of the robot so that it can reach a specific location in space.

Figure 1: Illustration showing a robotic arm and a possible configuration [1]

Given an arbitrary position in 3D space (in my case is 3D space) we wish to determine how to configure the Robot’s joints to reach that arbitrary position.

This is done using what is called “Inverse Kinematics” which is the use of a kinematics equations to determine the configuration of the Robot’s joints so that it can reach the specific position. There is a possibility however that the given position may not be reachable by the Robot’s current position and hence the response will not be positive.

Each Robot of course have different such algorithms, since there are robots with different number of joints (the one I am currently working with for example has 7 joints on each hand).

Figure 2: Baxter Robot’s arm and its joints [2]

The above picture shows the seven joints of the Baxter Robot. For each joint of a given hand, we need to determine its configuration.

The reverse operations is called Forward Kinematics where given the joint configurations we wish to compute the position of the end-effector.


[1] MathWorks. 2016. Modeling Inverse Kinematics in a Robotic Arm. [Online]. [Accessed 25 January 2017]. Available from:

[2] Rethink Robotics. 2017. Hardware Specifications. [Online]. [Accessed 25 January 2017]. Available from:

© 2019 Rafael Papallas
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.