Hey,

Below is my question about the ChainIkSolverPos_NR class. I'm not sure if

it's clear....if not I'll try to explain it again more clearly.

In my chain I have segments A,B,C,D,E. (I'm using CartToJnt (const JntArray

&q_init, const Frame &p_in, JntArray &q_out))

I want to be able to solve for an IK solution for a pose of 'E' in frame 'A'

and allow the solver to search for a solution but without using joint 'A'. I

want it to search for a solution by just changing the joint angles

corresponding to B,C,D,E in q_init. (So, 'A' in q_out will be guaranteed to

be the same as the value for 'A' in q_init.) I know this may result in

situations where it won't be able to find a solution but I that shouldn't be

often for my use case.

Is there a way to do this?

thank you for your time,

-- ben

p.s. I've been using the KDL for over a year now and It made my life a whole

bunch easier. thanks!

## Question about IK Solver

On Tue, Mar 9, 2010 at 4:18 AM, Benjamin Cohen <bencohen2 [..] ...> wrote:

> Hey,

> Below is my question about the ChainIkSolverPos_NR class. I'm not sure if

> it's clear....if not I'll try to explain it again more clearly.

> In my chain I have segments A,B,C,D,E. (I'm using CartToJnt (const JntArray

> &q_init, const Frame &p_in, JntArray &q_out))

> I want to be able to solve for an IK solution for a pose of 'E' in frame 'A'

> and allow the solver to search for a solution but without using joint 'A'. I

> want it to search for a solution by just changing the joint angles

> corresponding to B,C,D,E in q_init. (So, 'A' in q_out will be guaranteed to

> be the same as the value for 'A' in q_init.) I know this may result in

> situations where it won't be able to find a solution but I that shouldn't be

> often for my use case.

> Is there a way to do this?

There is no intelligent way to tackle this without changing the code

of the ChainIkSolverPos_NR and even the ChainIkSolverVel class to take

into account locked joints.

What you can do is create a chain that only contains joints for

segments BCDE and a Joint::None for segment A, but this would probably

only make sense if the value of joint angle A does not change.

Ruben

> thank you for your time,

> -- ben

>

> p.s. I've been using the KDL for over a year now and It made my life a whole

> bunch easier. thanks!