Hand Trajectory

Hi all,

I know It is possible to change the values in “PostureVel” of “Mannequin.any” file to make a motion. Actually, we can change the values of joint in shoulder and elbow to make the end of the hand (end-effector) have a motion (track a path). -like forward problem-

But my question is about Inverse Problem :
Is it possible to give a trajectory to the hand (end-effector) and see what the joints velocities will be?

In fact, the problem is to fix the feet then the right hand follows a path carrying an object. Then see what the joint velocities are, which muscles and segment are involved and how much energy needed to do that.

any help please.
Thanks in advance

Hi,

You can make a trajectory of the hand.

First you should define a kinematic measure of the hand with respect to the global coordinate system. I recommend you to use the ‘AnyKinLinear’ class.
And you can use that kinematic measure for your driver.

Best regards,
Moonki

Thanks for your guidance.

I used “AnyKinLinear” to create the marker.
Now, how can I use the driver to make the marker move on the desired path in 3 dimensional space?
I mean how can I give the formula of a path in 3 dimensional space to a driver in anybody?

In “AnyKin…” drivers, “DriverPos” and “DriverVel” get just constant value (no equation)?

Sorry if the questions does not seem very good. I am a beginner.
Thanks.

Hi,

There are several driver classes which you can use in AnyBody:
AnyKinEqSimpleDriver
AnyKinEqFourierDriver
AnyKinEqInterPolDriver
AnyKinEqPolynomialDriver
AnyKinDriverMarker

If you want to driver a target using some measured data,
then I would recommend you to use AnyKinEqPolynomialDriver.

If you want to define a mathematical formula of the trajectory,
then AnyKinEqPolynomialDriver or AnyKinEqFourierDriver can be used.

Also there are many class examples of AnyBody in the following folder of your computer:
C:\Program Files\AnyBody Technology\AnyBody.6.0\Documentation\AnyScriptReference\demo\ClassExamples

Best regards,
Moonki

Thanks
But I could not find any example to drive the marker by mathematical equation.

Actually, I use the following code to drive the marker

        AnyKinEqPolynomialDriver PalmMotion = {
          AnyKinLinear PalmMarker = {
            AnyFixedRefFrame &Ground =Main.Model.Environment.GlobalRef;
            AnyRefNode &Palm = Main.HumanModel.BodyModel.Right.ShoulderArm.Seg.Hand.PalmJoint;
            Ref = 0; 
            AnyDrawKinMeasure Drw = { };
          };
          
          PolyCoef = {{0.2,0,0},
                             {0,1.2,0},
                             {0,0,0.2}};

// The above Poly equation is for Position, Velocity or Acceleration???
Reaction.Type = {Off,Off,Off};
};

And the following code to fix the Pelvis

AnyStdJoint FixedPelvis = {
AnyRefFrame& Seat =Main.Model.Environment.GlobalRef.Hpoint ;
AnyRefFrame& Pelvis = Main.HumanModel.BodyModel.Trunk.SegmentsLumbar.PelvisSeg;
};

But this adds 9 more constraints (3 from marker drivers and 6 from Pelvis fixation) than the DOF.
Moreover, 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

May anybody hep

Hi,

Please upload a zip file of your model on the debug section:
http://forum.anyscript.org/forumdisplay.php?f=21

Best regards,
Moonki

Thanks
I uploaded the zip file of my model.
I use “AMMR.v1.6.0-MyDemo” for the model.

Regards