Hand Trajectory

Hi
My goal is to drive a marker attached to hand so that it tracks a path in 3 dimensional space. The path is a mathematical equation.

I use the attached code to drive the marker. But, I receive the following error when running the application

ERROR(OBJ.MCH.KIN3) : D:/A…y/D…y/A…o/A…n/M…s/P…r/Pickup.main.any(57) : Study.InitialConditions : Kinematic analysis failed in time step 0

I use “AMMR.v1.6.0-MyDemo” for the model.
May anybody hep
Thanks

Hi,

Attached please find a modified version of your model.

I hope this model may be helpful for your understanding.

Best regards,
Moonki

Hi
Thank you so much for your help.
However, in your model all parts have no motion except the right hand. while in the reality when one picks up an object by the right hand the trunk and other parts move accordingly.

I think this is because of:
#define BM_MANNEQUIN_DRIVER_GLENOHUMERAL_ABDUCTION_RIGHT OFF
#define BM_MANNEQUIN_DRIVER_GLENOHUMERAL_FLEXION_RIGHT OFF
#define BM_MANNEQUIN_DRIVER_ELBOW_FLEXION_RIGHT OFF

isn’t there any other way ? is it possible to reduce the number of constraints without removing of the movement of the other parts?

Thanks again for your consideration

Hi,

Because you added 3 additional constraints(constraints on hand) to your model,
it would be better if you can remove 3 existing constraints from your model to fit the number constraints as same as that of DOFs.

But I could change the pelvis-thorax relationship by using the center of mass of upper body.

Please have a look on the attached model.

Best regards,
Moonki

Hi

Thank you so much for your help.

However, I think there is a mistake in your code as I run the application, the elbow seems rotates in the wrong way.
You used “Mannequin.Posture” and “Mannequin.PostureVel” for the drivers. and I though the initial posture and velocity may have the wrong values that cause the elbow to rotate in the wrong way but they also seem OK.
Actually, I could not find the reason of this mistake.
I attached it again, That is kind of you to help me find the reason of mistake.

Regards

Hi,

If you want to control some degrees of freedom exactly as you want to do,
then you should define the correct drivers.

There is no perfect solution for this matter because we don’t have any information about what you want to implement.

Best regards,
Moonki