Specifications

194
is set up to impose the same angles on the right and left hand sides. You can now run the KinematicAnalysis
operation and see the model turning the wheel 180 degrees and the right arm following along. With that
working, we can proceed to do exactly the same for the left arm. The first step is to add a joint, which we
can copy from the one we just did for the right hand:
AnyFolder Joints = {
AnySphericalJoint rhHandle = {
AnyRefFrame &Glove = Main.Model.HumanModel.Right.ShoulderArm.Seg.Glove;
AnyRefFrame &Handle = Main.Model.EnvironmentModel.Wheel.rHandle;
};
AnySphericalJoint lhHandle = {
AnyRefFrame &Glove = Main.Model.HumanModel.Left.ShoulderArm.Seg.Glove;
AnyRefFrame &Handle = Main.Model.EnvironmentModel.Wheel.lHandle;
};
};
Notice the changes of 'Right' to 'Left' in the copy. The second step is to remove the redundant drivers on the
left arm exactly as we did for the right arm:
//Glenohumeral joint driver
AnyKinEqSimpleDriver GHDriverLeft={
AnyKinMeasureOrg &ref1 =...HumanModel.Interface.Left.GlenohumeralAbduction;
// AnyKinMeasureOrg &ref2 =...HumanModel.Interface.Left.GlenohumeralFlexion;
// AnyKinMeasureOrg &ref3
=...HumanModel.Interface.Left.GlenohumeralExternalRotation;
// DriverPos=pi/180*{
// .JntPos.Left.GlenohumeralAbduction, //GH joint
// .JntPos.Left.GlenohumeralFlexion, //GH joint
// .JntPos.Left.GlenohumeralExternalRotation //GH joint
// };
// DriverVel = pi/180*{
// .JntVel.Left.GlenohumeralAbduction, //GH joint
// .JntVel.Left.GlenohumeralFlexion, //GH joint
// .JntVel.Left.GlenohumeralExternalRotation //GH joint
// };
// Reaction.Type={Off,Off,Off};
DriverVel={0};
Reaction.Type={Off};
};
//Elbow flexion driver
// AnyKinEqSimpleDriver ElbowFEDriverLeft={
// AnyKinMeasureOrg &Elbow =...HumanModel.Interface.Left.ElbowFlexion;
// DriverPos=pi/180*{.JntPos.Left.ElbowFlexion};
// DriverVel = pi/180*{.JntVel.Left.ElbowFlexion};
// Reaction.Type={Off};
// };
The left arm must also be positioned close to the posture is it going to take. Please make the following
changes in the mannequin.any file:
AnyFolder Left = {
//all values are set to be equal to the right side values
//feel free to change this!
//Arm
AnyVar SternoClavicularProtraction=.Right.SternoClavicularProtraction;
AnyVar SternoClavicularElevation=.Right.SternoClavicularElevation;
AnyVar SternoClavicularAxialRotation=.Right.SternoClavicularAxialRotation;