Hi Andy
Please try to add the script below in your environment file
I have tested the script on the model running it in InversDynamicAnalysis
it should add three contact forces between the plate and the right foot…
you will need to adjust the limits to get the correct timings on the forces…
Please note that since currently the pelvis is entirely carried these new contacts will only carry the weight of the legs…
Best regards
Søren
AnyFolder ConditionalContact={
AnyVar StaticFrictionCoefficient=0.8;
AnyVar Strength=2000;
AnyFolder ToeLateralContactNodeLeft= {
BaseObject ={AnyDrawRefFrame drw={};};
AnyRefFrame &TargetObject= ....HumanModel.BodyModel.Right.Leg.Seg.Foot.ToeLateralContactNode;//Location where the force is applied
AnyRefFrame &BaseObject=..GlobalRef; //Object which delivers the forces
AnyRefFrame &StrengthObject=TargetObject; //Node used for strength measurement, occasionally this is different from the target object
AnyFolder &DrawRef=Main.DrawSettings; //reference to the folder which contains drawsettings
//low limit for the strength measure function, if the distance measured along Direction[0] is below this val. the strength will be zero (negative)
AnyVar UserDefinedLimitLow=-0.1;
//high limit for the strength measure function, if the distance measured along Direction[0] is above this val. the strength will be zero
AnyVar UserDefinedLimitHigh=0.1;
//high limit for the strength measure function, if the radius measured along the plane with Direction[0] as normal is above this val. the strength will be zero
AnyVar UserDefinedRadiusLimit=1;
AnyVar Strength =.Strength; //strength of muscles
AnyVar StaticFrictionCoefficient=.StaticFrictionCoefficient; //Friction coefficient
AnyVar ScaleFactor =1; //scale factor for draw vectors it can be set differently than by the drawsettings
AnyIntArray Direction={1,0,2}; //first element gives normal direction
#include "..\..\..\Body\AAUHuman\ToolBox\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
AnyFolder ToeMedialContactNodeLeft= {
AnyRefFrame &TargetObject= ....HumanModel.BodyModel.Right.Leg.Seg.Foot.ToeMedialContactNode;//Location where the force is applied
AnyRefFrame &BaseObject=..GlobalRef; //Object which delivers the forces
AnyRefFrame &StrengthObject=TargetObject; //Node used for strength measurement, occasionally this is different from the target object
AnyFolder &DrawRef=Main.DrawSettings; //reference to the folder which contains drawsettings
//low limit for the strength measure function, if the distance measured along Direction[0] is below this val. the strength will be zero (negative)
AnyVar UserDefinedLimitLow=-0.05;
//high limit for the strength measure function, if the distance measured along Direction[0] is above this val. the strength will be zero
AnyVar UserDefinedLimitHigh=0.05;
//high limit for the strength measure function, if the radius measured along the plane with Direction[0] as normal is above this val. the strength will be zero
AnyVar UserDefinedRadiusLimit=0.4;
AnyVar Strength =.Strength; //strength of muscles
AnyVar StaticFrictionCoefficient=.StaticFrictionCoefficient; //Friction coefficient
AnyVar ScaleFactor =1; //scale factor for draw vectors it can be set differently than by the drawsettings
AnyIntArray Direction={1,0,2}; //first element gives normal direction
#include "..\..\..\Body\AAUHuman\ToolBox\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
AnyFolder HeelSupportLeft = {
AnyRefFrame &TargetObject= ....HumanModel.BodyModel.Right.Leg.Seg.Foot.HeelNode;//Location where the force is applied
AnyRefFrame &BaseObject=..GlobalRef; //Object which delivers the forces
AnyRefFrame &StrengthObject=TargetObject; //Node used for strength measurement, occasionally this is different from the target object
AnyFolder &DrawRef=Main.DrawSettings; //reference to the folder which contains drawsettings
//low limit for the strength measure function, if the distance measured along Direction[0] is below this val. the strength will be zero (negative)
AnyVar UserDefinedLimitLow=-0.05;
//high limit for the strength measure function, if the distance measured along Direction[0] is above this val. the strength will be zero
AnyVar UserDefinedLimitHigh=0.05;
//high limit for the strength measure function, if the radius measured along the plane with Direction[0] as normal is above this val. the strength will be zero
AnyVar UserDefinedRadiusLimit=0.4;
AnyVar Strength =.Strength; //strength of muscles
AnyVar StaticFrictionCoefficient=.StaticFrictionCoefficient; //Friction coefficient
AnyVar ScaleFactor =1; //scale factor for draw vectors it can be set differently than by the drawsettings
AnyIntArray Direction={1,0,2}; //first element gives normal direction
#include "..\..\..\Body\AAUHuman\ToolBox\FrictionContactMuscles\ContactSurfaceLinPush.any"
};
};