% MotionGenesis file: MGHumanOnTurntableWithGyroKaneLagrange.txt %------------------------------------------------------------ NewtonianFrame N RigidBody A % Turntable, human legs, torso, and head. RigidFrame B % Human shoulder, arms, and wheel's axle. RigidBody C % Bicycle wheel (rotor). %------------------------------------------------------------ Variable qA'' % Az> measure of angle from Nx> to Ax> Specified qB'' % Ax> measure of angle from Ay> to By> Variable wC' % By> measure of C's angular velocity in B Constant Lz = 1.2 m % Az> measure of Bo from No Constant Lx = 0.5 m % Ax> measure of Ccm from Bo C.SetMass( mC = 2 kg ) A.SetInertia( Acm, IAxx, IAyy, IAzz = 0.64 kg*m^2 ) C.SetInertia( Ccm, B, IC = 0.12 kg*m^2, JC = 0.24 kg*m^2, IC ) %------------------------------------------------------------ % Rotational kinematics. A.RotateZ( N, qA ) B.RotateX( A, qB ) C.SetAngularVelocityAcceleration( B, wC*By> ) %------------------------------------------------------------ % Translational kinematics. Acm.SetVelocity( N, 0> ) Bo.Translate( No, Lz*Az> ) Ccm.Translate( Bo, Lx*Ax> ) %------------------------------------------------------------ % Form Kane's equation of motion. SetGeneralizedSpeed( qA', wC ) Dynamics = System.GetDynamicsKane() FactorQuadratic( Dynamics, qA', qB', wC ) Solve( Dynamics = 0, qA'', wC' ) %------------------------------------------------------------ Save MGHumanOnTurntableWithGyroKaneLagrange.html Quit