dynamic controllers simulation
play

Dynamic Controllers Simulation x i Newtonian laws gravity ground - PowerPoint PPT Presentation

Dynamic Controllers Simulation x i Newtonian laws gravity ground contact forces x i +1 . . . x degrees of freedom equations of motion Simulation + Control x i Newtonian laws gravity ground contact forces x i +1 internal forces .


  1. Dynamic Controllers

  2. Simulation x i Newtonian laws gravity ground contact forces x i +1 . . . ∆ x degrees of freedom equations of motion

  3. Simulation + Control x i Newtonian laws gravity ground contact forces x i +1 internal forces . . . ∆ x actuators

  4. An Uncontrolled System current state collision handling contact force dynamic simulator next state

  5. A Controlled System current state Control Forward Simulation collision handling contact force dynamic controller dynamic joint torque simulator next state

  6. Feedback vs Feedforward • Feedback control takes account of the current state to adjust the output. � • Feedforward control applies a pre-defined signal without responding to the current state of the system.

  7. General Controllers

  8. PD Servo • Use proportional-derivative (PD) controllers to compute joint torques. � • Each joint is actuated by a PD servo to track a desired pose or trajectory τ = − k p ( x − ¯ x ) − k d ˙ x

  9. Gain and Damping high gain high damping τ = − k p ( x − ¯ x ) − k d ˙ τ = − k p ( x − ¯ x ) − k d ˙ x x

  10. Problems with PD Servos • Gain and damping coefficients are difficult to determine for complex articulated systems. � • High-gain feedback controllers are less stable. � • Precision and stability are often in conflict.

  11. Track a Trajectory • Can track a sequence of poses by varying the target pose over time. � • Tuning coefficients is even harder when tracking a time sequence. τ n = − k p ( x n − ¯ x n ) − k d ˙ x n x n ¯ t

  12. Tracking Mocap Motion Capture-Driven Simulations That Hit and React by Zordan and Hodgins

  13. Gravity Compensation • PD control never achieves the desired joint value under gravity. � τ = − k p ( x − ¯ x ) − k d ˙ x • Adjust the target position to compensate the effect of gravity. target = desired pose gravity compensated target

  14. Stable PD τ n = − k p ( x n − ¯ x n ) − k d ˙ x n Instead of tracking current pose τ n = − k p ( x n +1 − ¯ x n +1 ) − k d ˙ x n +1 track next pose x n +1 = x n + ∆ t ˙ x n x n +1 = ˙ x n + ∆ t ¨ x n ˙ τ n = − k p ( x n + ∆ t ˙ x n + ∆ t ¨ x n − ¯ x n +1 ) − k d ( ˙ x n )

  15. Stable PD

  16. Stable PD

  17. Feedforward Control • Feedforward controller executes motor control in an open-loop manner. � • Inverse dynamics on the input trajectory is computed during motor learning. � • Explains stereotyped and stylized patterns in movements; consistent with internal model theory.

  18. Internal Model Feedforward control, based on an internal model of the motor system and memory of object properties, is used to specify motor commands in advance of the movement.

  19. Low-Impedance Control • Combine feedforward torques and low-gain feedback controllers. � • Feedback control is still necessary to deal with small deviations from desired trajectory. � • Feedforward torques deal with the latency in the dynamic system. � • Explains well-trained motion exhibits low joint stiffness.

  20. Jacobian Transpose Control • How much torque does each joint need to exert in order to result in force f at point p ? � • Use Jacobian matrix to map the force in the Cartesian space to joint torques. τ = J ( q , p ) T f point of application: p desired force: f

  21. Generalized Force • The virtual displacement of r i can be written in terms of generalized coordinates � � δ r i = ∂ r i δ q 1 + ∂ r i δ q 2 + . . . + ∂ r i δ q n ∂ q 1 ∂ q 2 ∂ q n � • The virtual work of force F i acting on r i is ∂ r i � F i δ r i = F i δ q j ∂ q j j

  22. Functional Controllers

  23. Construct a Complex Controller • Build on top of basic control mechanisms to control more complex behaviors. � • Organize basic controllers in a hierarchical structure. � • Use a finite state machine to switch between different controllers.

  24. State Machine Controller • State machine � • Control action � • PD servos

  25. State Machine Controller • State machine � • Control action � • PD servos

  26. State Machine Controller • State machine � • Control action � • PD servos

  27. State Machine Controller

  28. Standing Balance • For static balance, projection of the mass point must be within the support polygon. � • Use hip strategy or ankle strategy to maintain balance. τ = − k p ( c − ¯ c ) − k d ˙ c applied at ankle or hip

  29. DEMO • Balance App in DART

  30. Optimal Torques • Formulate an optimization to solve for motion and torque (sometimes contact force as well). � • Use equations of motion as constraints to ensure physical realism. � • Objective function could be defined by task goals, energy expenditure, or aesthetics preferences.

  31. Challenges in Optimization min q , τ E ( q , τ ) subject to M ( q )¨ q + C ( q , ˙ q ) + G ( q ) = τ • Can’t handle contacts. � • Constraint is highly nonlinear in q. � • Domain is high dimensional.

  32. Contact Constraints • Maintain balance using sustained frictional contacts with the environment. � • The character pushes against the environment and uses the resulting force to control its motion. q , τ , f E (¨ min q , τ , f ) ¨ q ) + G ( q ) = τ + J T f subject to M ( q )¨ q + C ( q , ˙ f i ∈ K i

  33. Contact Constraints

  34. Momentum Constraints • Control changes in linear and angular momenta to regulate the center of mass and center of pressure simultaneously.

  35. Momentum Constraints

  36. Balanced Locomotion • Use a simplified model to explain complex dynamic balance. � • An inverted pendulum is a mass point attached to a massless rod. � • Dynamic equation of the simple model: � τ θ = g ¨ l sin θ + � ml 2 • Compute the torque required at the pivot point to maintain a balanced position.

  37. SIMBICON • Simple finite state machine � • Torso and swing hip control � • Balance feedback

  38. Simple State Machine • Each state consists of a pose representing target angles. � • All independent joints are controlled by PD servos. � • Transitions between states occur after fixed duration of time or foot contact events.

  39. Torso and Swing-hip Control • Both torso and swing-hip have target angles expressed in world coordinates. � • The stance-hip torque is left as a free variable: τ A = − τ torso − τ B

  40. Balance Feedback • Swing-hip target angle is continuously modified based on the center of mass � � � • This allows the character to change the future point of support

  41. DEMO • SIMBICON demos

  42. Low-dimensional Control • Plan joint torques by optimizing a low-dimensional physical model � • To generate the plan, full-body dynamics are approximated by a set of closed-form equations-of-motion

Recommend


More recommend