Subjects holding dumbbells in their hands

I have some .c3d files for a subject standing while holding dumbbells in his hands, and walking also with dumbbells. The models are running fine, however, I didn't add the weights of the dumbbells. I was wondering if I need to put this weight in each hand to match the kinematic data I'm using or if when I use this input data, AnyBody already include the weight.

Any advice about how to proceed will be appreciated.

Hi @MariadelMarPradoG92

The model does not know about the dumbbells unless you model them.
If your c3d file include kinematic data for the dumbbell you can use that otherwise the easiest thing would be to model a segment with the mass and inertia properties of the dumbbell yourself and connect that to the hands.

It could be something like this:

// Dumbbell segment
AnySeg Dumbbell = {
    Mass = 1;
    Jii = {0.01,0.01,0.01};
    AnyRefNode handConnectionNode= {
      sRel = {0, 0, 0};
    };
  }; 

// joint between dumbbell and hand
AnySphericalJoint HandDumbbellJoint = {
  AnyRefFrame &Weight = .Dumbbell.handConnectionNode;
  AnyRefFrame &Hand = Main.HumanModel.BodyModel.Right.ShoulderArm.Seg.Hand;
};

// fixation of the dumbbell rotation degree of freedom
AnyKinEq DumbbellRotFix = {
  AnyKinRotational rot = {
    AnyRefFrame &Weight = ..Dumbbell;
      Type = RotAxesAngles;
  };
  Reaction.Type = {On,On,On};
};

This will create a dumbbell segment and connect it to the hands by a spherical joint and constrain the rotation degree of freedom for the dumbbell.

Best regards,
Bjørn

2 Likes

Hello Bjørn,

Thank you so much for your help. I implemented the lines you suggested and I did obtain the results I needed. Now my kinematic data is running with the inclusion of the dumbbells.

1 Like