Page 1 of 1

In IK mode, tip follows position well, but not orientation

Posted: 11 Jan 2018, 23:22
by johnrowlay
I want my robot gripper to follow a manually-defined path, both in terms of position and orientation. So, I created a path, and assigned a few waypoints, each with my desired position and orientation. Then, I created a target dummy, assigned it as the child of the path object, and chose "Follow parent path (only direct parent)" in the dummy dialog. Then, I created a tip target, assigned it as the child of the robot gripper, and set up an IK group calculation module. I then created a child script for the robot, and made the path position move according to this code: viewtopic.php?f=9&t=4247.

When I play the simulation, the target dummy follows the path, as expected. The gripper then follows the target's position, also as expected. However, what I am finding is that, although the gripper does follow the position of the target, it does not track its orientation very well. In fact, the gripper tends to follow the path with a large error in orientation, and only at the end of the path, once the gripper stops translating, does it orientate itself to the orientation of the target.

So, I am wondering how I can make the gripper track the target's orientation better. Perhaps there is a way to weight the position and orientation components in the IK calculation? I have played around with various properties in the IK dialog, including "Joint limit thresholds", "Calculation weights", "Desired precisions", and "Resolution weights", but none of these seem to fix the problem. For example, even when I assign 1.0 to "Angular resolution weight" and 0.01 to "Linear resolution weight", it still follows the path's position well, but not the orientation.

For the set up of the robot arm, all joints are in inverse kinematics mode, using PID with a P parameter of 0.1, and 0 for the I and D parameters.

Re: In IK mode, tip follows position well, but not orientation

Posted: 15 Jan 2018, 18:19
by coppelia
Hello,

it seems that your IK group is using a damped resolution method (e.g. DLS). Have you tried using the Jacobian pseudo inverse as the resolution method of your IK group? If you do so and the IK appears to be broken, then that very probably means that your mechanism is not able to achieve the desired motions (e.g. because, for instance, it doesn't have enough DoFs).

Cheers