Lets say the robot has 4Dof and the operator gives (x,y,z,roll,pitch,yaw ) as control input( rank(J) < dim(task) ).

Now the robot is overwhelmed and will probably show some jerky movement. But can someone please explain in a mathematical way why a robot with 4 Dof cannot perform a task of 6 dim. ?


It is hard to tell your mathematical background from the question, so maybe an explanation for a more simple, but similar, problem will help.

Let’s say you have a 1 DOF robot, and command it with 2 DOF tasks. It has a link length of 1, so it can move along a unit circle about the origin of a coordinate system. If you command it to go to position (1, 0), it will do so. Same thing if you command (0, 1), or (0.707, 0.707). But if you tell the robot to go to (1, 1), or (0.2, 0.5), or any of a double infinity of other points, it cannot achieve that pose. It will not perform “jerky motion”; instead, the math will not be solvable.

Mathematically, the inverse kinematics are unsolvable. For the situation you describe, you are trying to solve six independent equations using only four variables.

  • $\begingroup$ Comments are not for extended discussion; this conversation has been moved to chat. $\endgroup$ – Mark Booth Feb 20 '19 at 10:07

The question has mixed up two different problems: model predictive control (MPC) and underactuated robot. MPC is about the question which control signals the operator has to send to the robot to reach a certain situation, while underactuation means to use a kinematic chain which has at one point not a motor but a freely movable connection, similar to a rope which hangs from the ceiling.

What kinds of motion a robot can do who is underactuated depends on the so called system identification process. This is about describing the future states a system can reach. System identificiation for underactuation is not more complicated but easier than for a normal system. This sounds paradox. But can be explained with the reason, why underactuation was introduced in robotics.

  • $\begingroup$ Comments are not for extended discussion; this conversation has been moved to chat. $\endgroup$ – Mark Booth Feb 20 '19 at 10:04
  • $\begingroup$ Remember, on stack exchange comments are not intended for extended discussions, they are for helping to improve questions and answers. Comments are distracting, so we try to keep them to a minimum. They should be considered ephemeral, and any comment which no longer actively helps to improve a question or answer may be deleted at any time to tidy up a post. For extended discussion on a question or answer, please use Robotics Chat. $\endgroup$ – Mark Booth Feb 20 '19 at 10:05

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.