Strange results for the knee reaction force

Hi,

I build my own human model with custom scaling of femur and shank as well as realigning the knee joint with my own knee joint axis data with only one DOF. I got an overall satisfactory result but it is a bit strange in the middle of the curve. May I ask about the potential problem with this? From the model view, I couldn't see any abnormality during ID analysis (anything such as strange foot angle or large muscle forces).

There is a bit problem when i upload the image so i put it in a url.

Regards,
Thomas

Hello,
I am a student from Tianjin University in China. Because I have recently used Anybody for research, I don't know if I can add contact information to communicate together, thank you.
Regards,
Xu

Hi Thomas,

Normally, you should be able to upload images on the forum directly. There is a button to upload attachments (it is the one with the arrow pointing up). Meanwhile, I also don't see the url. Could you please try again?

Best regards
Dave

Hi Dave,

Since i cannot upload the image last time, sorry for the inconvenience. I think this time the image can be attached properly.

Regards,
Thomas

Hi Thomas,

I can see the image. Can you please provide some more context around the problem? What activity are you simulating? And at what point do you see the problem? Can you possibly attach an image from the model view as well?

Best regards
Dave

Hi Dave,

Currently, I am simulating a normal gait with my model. I can't see any specific problem in the model view during the gait. So when I look at the result I am also surprised. I can attach a recording to give you a look. Thank you.

Regards,
Thomas

Hi Thomas,

It looks like the problem happens in the toe-off phase. In this position, the knee is almost fully extended. It could be that the way your joint is defined, maybe the knee is getting hyper-extended. This may cause a sudden switch in the muscles being used. Have you looked at the knee flexion extension angles? Maybe this explains why you see this behaviour in the knee reaction force.

Best regards
Dave

Hi Dave,

I know what you mean now but I have checked the flexion extension angle of the knee which should be the Pos of the joint I defined. I cant see any problem with it. Here is the curve of the angle.

Regards,
Thomas

Hi Thomas,

I had a look at the data you shared with me. In the simulation, you have contact of the force plate with both feet at the point you see the strange result. Some of the force, consequently, is applied to the other leg and the left leg is unloaded at that point.

In AnyBody, you can avoid contact of multiple limbs by setting ALLOW_MULTI_LIMB_CONTACT = OFF in the file "Setup\ForcePlates.any". However, please be aware of the implications in case there was actual contact with both feet during the trial. That would mean that the recorded force would have been affected by multiple contact and it is not ideal to apply that recorded force to a single limb.

Best regards,
Dave

Hi Dave,

Would you able to show where should I put the code in? I am currently using AnyBody6.0 version. Thank you for your help.

Regards,
Thomas

Currently the force plate file is under Environment Model folder and include "ForcePlates.any"

Hi Thomas,

yes, that should be the right place: "ForcePlates.any". I think I was talking about the folder in the file explorer and you are talking about the folder in AnyBody model tree. But it's the same place.
In ForcePlates.any, you should see the code for ForcePlateAutoDetection:

  ForcePlateAutoDetection Plate2(
    PLATE_NO=2,
    LIMB1 = Main.HumanModel.BodyModel.Right.Leg.Seg.Foot,
    LIMB2 = Main.HumanModel.BodyModel.Left.Leg.Seg.Foot,
    HeightTolerance = 0.07,
    VelThreshold = 2.2,
    FORCEPLATE_TYPE = 4,
    ALLOW_MULTI_LIMB_CONTACT = OFF
  ) = { };

Here you can add the option for multi limb contact.

Best regards
Dave

Hi Dave,

I totally understand the position of the codes. However, when I type in the codes and run the model, it either appears "'ALLOW_MULTI_LIMB_CONTACT' : Unexpected character." or "'ALLOW_MULTI_LIMB_CONTACT' : Unknown Class Template argument.".
The code of my force plate is like this:

ForcePlateType2AutoDetection Plate1 (
PlateName = Plate1,
Folder =Main.ModelSetup.C3DFileData,
Limb1= .BodyModelRef.Right.Leg.Seg.Foot,
Limb2= .BodyModelRef.Left.Leg.Seg.Foot,
No=0,
VerticalDirection ="Z",
HeightTolerance=0.07,
VelThreshold=2.2,
Fx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fx1,
Fy=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fy1,
Fz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Fz1,
Mx=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mx1,
My=Main.ModelSetup.C3DFileData.Analog.DataFiltered.My1,
Mz=Main.ModelSetup.C3DFileData.Analog.DataFiltered.Mz1,

ALLOW_MULTI_LIMB_CONTACT = OFF

FootPresent=HumanModelPresent)
={

// Cal=Main.ModelSetup.C3DFileData.Groups.FORCE_PLATFORM.CAL_MATRIX.Data[0];
Switch_DrawForceVectorFromCOP = On;
};

Regards,
Thomas

I am not quite sure whether is my version of AnyBody does not support this function or not.

Hi Thomas,

Indeed, your code looks a little bit different. Which AMMR version are you using? If you look at the current mocap examples, force plates are added into the model using the ForcePlateAutoDetection class template. This has the option for multi-limb contact. Maybe your version of AMMR already has that class template and you could switch over? Please have a look at the mocap examples in your AMMR.

Please also note that you would need to add a comma after the line ALLOW_MULTI_LIMB_CONTACT = OFF if it is not the last argument for the class template (like you see in all the previous lines). But I guess you have tried that already when you saw the Unknown Class Template argument error.

Best regards,
Dave

Hi Dave,

The version of AMMR is 1.6. What class should I search in the reference manual? I couldnt find the class related to the force plate. Thank you.

Regards,
Thomas

Hi Thomas,

This is not a class from the reference manual. This is a custom class template that is created in AnyScript to be used in the mocap models. You could look for this file called ForcePlateAutoDetection.any in the following folder: AMMR/Tools/AnyMocap/ForcePlates. This class template is then used in the mocap examples and you can see that in any of the mocap examples using force plate data. You can see an example if you explore to your AMMR folder\Application\MocapExamples\Plug-in-gait_Simple\Setup\ForcePlates.any.

I am not sure if you would find this in AMMR 1.6. But I hope you do.

Best regards,
Dave

Hi Dave,

Thanks for helping! I found the custom class template and I will try to figure out what is inside.

Regards,
Thomas

Hi Thomas,

That's great. Then, maybe you can simply replace the code for Force plates to use this class template.

Best regards,
Dave

This topic was automatically closed 125 days after the last reply. New replies are no longer allowed.