31 lines (27 with data), 886 Bytes
AnyFolder MachineOperation =
{
AnyVar T_period = 1.0;
AnyVar angular_vel = 360.0 / T_period;
AnyVar phase_offset = 0;
AnyKinEqSimpleDriver Rotation_Drv =
{
AnyRevoluteJoint& jnt = Main.Model.FitnessMachine.Mates.Hinge_MainCylinder;
DriverPos = {.phase_offset};
DriverVel = pi/180*{-.angular_vel};
Reaction.Type = {Off};
};
AnyForce ResistanceTorque =
{
AnyVar coeff_term = 85 * 0.5;
AnyVar const_term = coeff_term;
AnyRevoluteJoint& jnt = Main.Model.FitnessMachine.Mates.Hinge_MainCylinder;
F = {coeff_term * sin(jnt.Pos[0]*2+pi/2) + const_term};
};
// AnyForce ResistanceTorque =
// {
// AnyVar coeff_term = 0.5;
// AnyVar const_term = 0;
// AnyRevoluteJoint& jnt = Main.Model.FitnessMachine.Mates.Hinge_MainCylinder;
// F = {-coeff_term * jnt.Vel[0] + const_term};
// };
};