modeling control of a longboard riding robot
play

Modeling & Control of a Longboard-Riding Robot Matt Keeter - PowerPoint PPT Presentation

Modeling & Control of a Longboard-Riding Robot Matt Keeter mkeeter@mit.edu 6.832 Final Project Spring 2012 Inspiration System Model Simplified Model State Variables Control Inputs System Parameters System Summary q = [ x , y ,


  1. Modeling & Control of a Longboard-Riding Robot Matt Keeter mkeeter@mit.edu 6.832 Final Project Spring 2012

  2. Inspiration

  3. System Model

  4. Simplified Model

  5. State Variables

  6. Control Inputs

  7. System Parameters

  8. System Summary • q = [ x , y , α ] ′

  9. System Summary • q = [ x , y , α ] ′ • u = [ F , τ ] ′

  10. System Summary • q = [ x , y , α ] ′ • u = [ F , τ ] ′ • Gliding and pushing modes • y toe ≤ 0 → pushing • y toe > 0 → gliding

  11. Dynamics • Wrote tools to automatically solve dynamics

  12. Dynamics • Wrote tools to automatically solve dynamics • Written in Python using Sage

  13. Dynamics • Wrote tools to automatically solve dynamics • Written in Python using Sage • Solves for: • Second derivatives ¨ q • Co-located PFL equations

  14. Dynamics • Wrote tools to automatically solve dynamics • Written in Python using Sage • Solves for: • Second derivatives ¨ q • Co-located PFL equations • Exports as MATLAB scripts

  15. Feedback Linearization • Solve dynamics equations for ¨ x , F , τ

  16. Feedback Linearization • Solve dynamics equations for ¨ x , F , τ • Solutions are in terms of q , ˙ q , ¨ y , ¨ α (as well as constants)

  17. Feedback Linearization • Solve dynamics equations for ¨ x , F , τ • Solutions are in terms of q , ˙ q , ¨ y , ¨ α (as well as constants) • Plug in ¨ y , ¨ α for feedback linearization • ¨ y = ¨ y desired • ¨ α = ¨ α desired

  18. Feedback Linearization • Solve dynamics equations for ¨ x , F , τ • Solutions are in terms of q , ˙ q , ¨ y , ¨ α (as well as constants) • Plug in ¨ y , ¨ α for feedback linearization • ¨ y = ¨ y desired • ¨ α = ¨ α desired • Double integrator control

  19. Controller Strategy High-level strategy breaks motion into stages Swing leg forward Switch to gliding state Stand up Lower self Switch to pushing state Push off

  20. Controller Strategy Swing leg forward Switch to gliding state Stand up Lower self Switch to pushing state Push off

  21. Controller Strategy Swing leg forward Switch to gliding state Stand up Lower self Switch to pushing state Push off

  22. Controller Strategy Swing leg forward Switch to gliding state Stand up Lower self Switch to pushing state Push off

  23. Controller Strategy Swing leg forward Switch to gliding state Stand up Lower self Switch to pushing state Push off

  24. Controller Strategy Swing leg forward Switch to gliding state Stand up Lower self Switch to pushing state Push off

  25. Demo

  26. Controller Parameters Controller is parameterized by three terms: Angle of collision α hit Angle ending push α stand ¨ Swinging acceleration α swing

  27. Controller Parameters Angle of collision α hit Angle ending push α stand ¨ Swinging acceleration α swing

  28. Controller Parameters Angle of collision α hit Angle ending push α stand ¨ Swinging acceleration α swing

  29. Controller Parameters Angle of collision α hit Angle ending push α stand ¨ Swinging acceleration α swing

  30. Stochastic Gradient Descent Optimized for distance travelled in fixed time

  31. Stochastic Gradient Descent Optimized for distance travelled in fixed time 50 48 46 Distance travelled 44 42 40 38 36 0 20 40 60 80 100 Iteration

  32. Optimized Demo

  33. Optimized Demo 20% improvement!

  34. Summary • Developed simplified system model • Wrote dynamics-solving tools • Designed high-level controller behavior • Used gradient descent to optimize parameters

  35. Questions?

Recommend


More recommend