I have a 7 DOF robotic Arm. All the 7 Joints are rotational and have upper and lower joint angle limits. Now assume my end effector has a certain Pose $x = [X, Y, Z, a, b, c]$.

My Question now is how to calculate the maximal reachable $X$ Position if all other Parameters $(Y, Z, a, b)$ remain the same assuming certain $q_{lower}$ and $q_{upper}$ joint limits.

I know how to do that for differential kinematics: $dx_{max} = J * dq_{max}$ ($J$ is Jacobian Matrix and $dq_{max}$ is the max. angle velocity of the joints).


One possible way to use the inverse kinematics equations. For obtaining the inverse kinematics equations you can either use the Jacobian matrix or the geometric approach.

For a robotic arm that has 3 DOF using the geometric approach is easier. But since your robot has 7 DOF, you should use the Jacobian Matrix. Please refer to the link below.

Computing the Jacobian matrix for Inverse Kinematics

Once you have the inverse kinematics equations, keep the $(Y,Z,a,b)$ parameters constant and vary the $X$. When you exceed the maximum reachable $X$, the result of the inverse kinematics equation will become a complex number in the form of $a\pm jb$.

Another way would be a more visual method. You can simulate the robot arm and mark the end effector positions as you vary the joint angles. The unreachable points will not appear in the generated plot. For example see the following 2 DOF (R-R) robot arm:

enter image description here

Obviously the smaller step size will give you higher accuracy. See the following 3 DOF (R-R-P) robot arm.

enter image description here

| improve this answer | |
  • $\begingroup$ By ""When you exceed the maximum reachable X, the result of the inverse kinematics equation will become a complex number in the form of a±jb"" Do you mean I should just do: X=X_current + 0.01 [Y,Z,a,b,c=0] remain the same and then I get q1,....q7. Now you say I just should keep doing that until I get a imaginary part in one of my q1,...q7 solutions? $\endgroup$ – sqp_125 Oct 29 '18 at 7:18
  • $\begingroup$ @sqp_125 I mentioned two different methods. Yes, that's one of the ways to do it. Keep incrementing $X$ while keeping other parameters constant and you will find the maximum reachable $X$ when $q1,...,q7$ becomes a complex number. $\endgroup$ – csg Oct 29 '18 at 15:59
  • $\begingroup$ Great! Thank you so much :) I will give it a try :) $\endgroup$ – sqp_125 Oct 30 '18 at 11:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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