Hi,
I am working on seatedhuman model, using it to attach a steeringwheel, pedals and gear stick to simulate driver’s movement.
Now I have attached a steerng wheel which was able to rotate by an inclined axis I set, two nodes on the steering wheel, joints between the the driver and the nodes. Then I tried to modify the drivers to avoid being over-constrained, according to the tutorial.
// Drivers for the right arm
// ************************************
//Sterno clavicular joint driver
AnyKinEqSimpleDriver SCDriverRight ={
AnyKinMeasureOrg &ref1 =…HumanModel.Interface.Right.SternoClavicularPr otraction;
AnyKinMeasureOrg &ref2 =…HumanModel.Interface.Right.SternoClavicularEl evation;
AnyKinMeasureOrg &ref3 =…HumanModel.Interface.Right.SternoClavicularAx ialRotation;
DriverPos = pi/180*{
…JntPos.Right.SternoClavicularProtraction,
…JntPos.Right.SternoClavicularElevation,
…JntPos.Right.SternoClavicularAxialRotation
};
// DriverVel = {
//…JntVel.Right.SternoClavicularProtraction,
// …JntVel.Right.SternoClavicularElevation,
// …JntVel.Right.SternoClavicularAxialRotation
//};
DriverVel={0,0,0};
Reaction.Type={Off,Off,Off};
};
//Glenohumeral joint
AnyKinEqSimpleDriver GHDriverRight={
AnyKinMeasureOrg &ref1 = …HumanModel.Interface.Right.GlenohumeralAbducti on;
// AnyKinMeasureOrg &ref3 = …HumanModel.Interface.Right.GlenohumeralExterna lRotation;
//DriverPos=pi/180*{
//…JntPos.Right.GlenohumeralAbduction //GH joint
// …JntPos.Right.GlenohumeralExternalRotation //GH joint
// };
//DriverVel = pi/180*{
// …JntVel.Right.GlenohumeralAbduction //GH joint
// …JntVel.Right.GlenohumeralExternalRotation //GH joint
//};
//Reaction.Type={Off};
DriverVel={0};
Reaction.Type={Off};
};
//Elbow pronation driver
//AnyKinEqSimpleDriver ElbowPronationDriverRight={
//AnyKinMeasureOrg &Elbow =…HumanModel.Interface.Right.ElbowPronation;
//DriverPos = pi/180*{…JntPos.Right.ElbowPronation };
//DriverVel=pi/180*{…JntVel.Right.ElbowPronation };
//Reaction.Type={Off};
//};
//Wrist driver
AnyKinEqSimpleDriver WristDriverRight ={
AnyKinMeasureOrg &ref1 =…HumanModel.Interface.Right.WristFlexion;
AnyKinMeasureOrg &ref2 =…HumanModel.Interface.Right.WristAbduction;
DriverPos = pi/180*{
…JntPos.Right.WristFlexion,
…JntPos.Right.WristAbduction
};
// DriverVel = pi/180*{
//…JntVel.Right.WristFlexion,
//…JntVel.Right.WristAbduction};
DriverVel={0,0};
Reaction.Type={Off,Off};
};
}; //End Right
This was for the right arm, similar to the left arm.
But when I set the initial condition,error occured.
ERROR(OBJ.MCH.KIN2) : C:/U…s/FSAE/A…a/R…g/A…y/A…x/A…o/A…n/E…s/S…n/SeatedHuman.main.any : Study : Model is kinematically over-constrained : Position analysis failed : 4 unsolvable constraint(s) found
I have seen the previous thread about this problem and I tried but failed to sort it out.
I studied Anybody for about a week. Maybe it’s too easy for experts. Could you help me to solve it and some tips or exprience for modeling the driver’s movement?
Best Regards