Set Joint angle relative to Object in IK Chain

Typically: "How do I... ", "How can I... " questions
Post Reply
Mobaron
Posts: 4
Joined: 02 Sep 2019, 08:43

Set Joint angle relative to Object in IK Chain

Post by Mobaron »

Hello everyone,

last week I started building a new Robotic Arm model. I've followed multiple tutorials on how to do so and got it working pretty good.
Yesterday i added Inverse Kinematics and got that working reliably aswell.
However my vaccum gripper IRL is not very Strong. It basically needs to hit the object I want to grab in the middle and on a 90° angle relative to the floor everytime.
Is there a way to implement a feature that one Joint, in an Inverse Kinematic chain, always needs to have a set angle relative to another object in the scene? I've tried playing around with the calculation weights without any luck, and even if it would have worked, it wouldn't be an ideal solution.

Cheers

coppelia
Site Admin
Posts: 10364
Joined: 14 Dec 2012, 00:25

Re: Set Joint angle relative to Object in IK Chain

Post by coppelia »

Hello,

you have several possibilities. The probably simplest would be to exclude that joint from IK calculation, and set its angle programmatically, after having executed the IK.
Another possibility would be to have an additional revolute joint mounted on top of that incriminated joint, just before the tip dummy. Then instead of doing an IK in position, do an IK in position and orientation --> the tip dummy will try to take the exact same position and orientation as your target dummy. The auxiliary revolute joint would be to allow for a rotation around the vertical axis.

Cheers

Mobaron
Posts: 4
Joined: 02 Sep 2019, 08:43

Re: Set Joint angle relative to Object in IK Chain

Post by Mobaron »

I've already had an IK in position and orientation. Also I think I don't really need an auxiliary joint since i only really care about the Z axis.
However now I've set the max. iterations to 32 which helped a lot.
I think the problem before was that the last joint reached the target too fast and cloudnt adjust itself fast enough. Then it would hit the object and everything got completly messed up.
But now its working pretty good.

Thanks a lot!

Cheers

Post Reply