port-based modeling and control for efficient bipedal
Post on 26-Nov-2021
2 Views
Preview:
TRANSCRIPT
Outline Introduction Modeling Control Conclusions
Port-based Modeling and Control forEfficient Bipedal Walking Machines
Vincent Duindamvincentd@eecs.berkeley.edu
Control Laboratory, EE-Math-CSUniversity of Twente, Netherlands
Joint work with Stefano Stramigioli, Arjan van der SchaftGijs van Oort, Edwin Dertien, Martijn Visser, Frank Groen
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 1
Outline Introduction Modeling Control Conclusions
IntroductionTwente University and GeoplexEfficient walking robots
Models of Mechanisms in ContactMechanism dynamicsCompliant and rigid contact
Efficient Model-Based Control of Walking RobotsControl by mechanical optimizationZero-Energy Control of Walking RobotsDribbel – Experimental walking robot
Conclusions
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 2
Outline Introduction Modeling Control Conclusions
Introduction
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 3
Outline Introduction Modeling Control Conclusions
University of Twente (UT)
Founded in 1961Only Dutch university with a real campusTypical engineering depts, but also biomedical technology,environmental sciences, educational policy
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 4
Outline Introduction Modeling Control Conclusions
Control Engineering @ UT
UT → Dept. EE-Math-CS → Control Engineering
6 scientific staff, 10 PhD students
Focus on mechatronics, robotics, and embedded systems
Favorite sport: ‘klootschieten’
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 5
Outline Introduction Modeling Control Conclusions
Geoplex
Geometric Network Modeling and Control of Complex PhysicalSystems (www.geoplex.cc)
European FP5 project, 2002 – 2006
Consortium: 9 universities + 1 company
Goal: use port-Hamiltonian systems theory to solvemodeling and control problems across different domains
My research: apply Geoplex philosophy to walking robots
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 6
Outline Introduction Modeling Control Conclusions
Port-Hamiltonian Systems
Developed by A.J. van der Schaft and B.M. Maschke (1992)Idea: study energy flow instead of information (signal) flow
b
k
m b
k
1m
∫∫
--
Collocated power variables effort (force) and flow (velocity)
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 7
Outline Introduction Modeling Control Conclusions
Port-Hamiltonian Systems
Developed by A.J. van der Schaft and B.M. Maschke (1992)Idea: study energy flow instead of information (signal) flow
b
k
1m
∫
∫ --
Collocated power variables effort (force) and flow (velocity)
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 7
Outline Introduction Modeling Control Conclusions
Port-Hamiltonian Systems
Developed by A.J. van der Schaft and B.M. Maschke (1992)Idea: study energy flow instead of information (signal) flow
b
k
1m
∫
∫
power
power
power
--
Collocated power variables effort (force) and flow (velocity)
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 7
Outline Introduction Modeling Control Conclusions
Port-Hamiltonian Systems
Graphical language: bond graphs
Mathematical language: structured differential equations
ddt
x = (J(x) − R(x))∂H∂x
+ G(x)u
y = GT (x)∂H∂x
with J(x) skew-symm, R(x) pos-def, H(x) energy function
ddt
H = yT u −∂T H∂x
R∂H∂x
≤ yT u
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 8
Outline Introduction Modeling Control Conclusions
Walking Robots
Active static walking: versatile,robust, use traditional controlmethods, but not very efficient
Passive dynamic walking:efficient, natural, but gener-ally not robust or versatile
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 9
Outline Introduction Modeling Control Conclusions
Passive Dynamic Walking
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 10
Outline Introduction Modeling Control Conclusions
Goal: explain and extend passive walkers
Modeling goals:
Build physical models of walking robots usingport-Hamiltonian techniques
Analyze models and explain walking behavior
Control goals:
Use natural passive motions as much as possible
Use adaptive passive elements to change natural motions
Augment passive walking with active control if needed
In this way, combine efficiency, versatility, and robustness.
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 11
Outline Introduction Modeling Control Conclusions
Models of Mechanisms in Contact
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 12
Outline Introduction Modeling Control Conclusions
Model setup
Build up models as power-port interconnection of subsystemsMechanism + ground contact + actuation + other partsContinuous-time model with switching and state jumpsImplemented in project software 20sim (www.20sim.com)
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 13
Outline Introduction Modeling Control Conclusions
Dynamics of general rigid mechanisms
Standard result for dynamics of rigid mechanisms
M(q)q + C(q, q)q + G(q) = τ
with coordinates q(t) and velocities q(t) as dynamic states.
Allows only joint spaces isomorphic to Rn → singularities
Not suitable for more general joints, e.g. ball joints withconfiguration R(t) ∈ SO(3) and velocity ω(t) ∈ R3
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 14
Outline Introduction Modeling Control Conclusions
Dynamics of general rigid mechanisms
Proposed solution:1 Parameterize joints with local and global coordinates2 Write down Boltzmann-Hamel equations in local
coordinates, parameterized by global coordinates3 Evaluate results at origin of local coordinates4 Result: similar equations with extra coupling on joint-level
p1
p2
u1
v1
u2
v2
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 15
Outline Introduction Modeling Control Conclusions
Dynamics of general rigid mechanisms
Generalized dynamics equations
Works for all Lie groups (take exponential coordinates aslocal coordinates)
Can be directly extended to nonholonomic constraints(e.g. rolling-but-no-slipping)
Has been implemented into 20sim 3d mechanics toolbox
Paper still to be written, so comments are very welcome!
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 16
Outline Introduction Modeling Control Conclusions
Contact modeling
Contact models consist of two parts
Kinematics: what are the closest points between bodies?Dynamics: what forces are involved, how do bodies react?
Compliant: finite compression and contact forcesRigid: limit-case compression and contact forces
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 17
Outline Introduction Modeling Control Conclusions
Contact kinematics
Extension and ‘geometrification’ of David Montana’s equations
αf = M−1f
(
Kf + Ko)−1
([
−ωy
ωx
]
− Ko
[
vx
vy
])
αo = M−1o Rψ
(
Kf + Ko)−1
([
−ωy
ωx
]
+ Kf
[
vx
vy
])
ψ = ωz + Tf Mf αf + ToMoαo
0 = vz
Limitations with this formulationOnly suitable when bodies are in contactNot symmetric in two bodiesDepends heavily on surface parameterization
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 18
Outline Introduction Modeling Control Conclusions
Contact kinematics
f
f−1 g
D ⊂ R2
S ⊂ E3 S2 ⊂ E3
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 19
Outline Introduction Modeling Control Conclusions
Contact kinematics
p1p2
Ψ1Ψ2 ∆
Basic observationsContact points are separated by line along normal vectors
p1 + ∆g1 = H12 p2
Normal vectors are equal in direction but opposite
g1 = −H12 g2
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 20
Outline Introduction Modeling Control Conclusions
Contact kinematics
p1 + ∆g1 = H12 p2
g1 = −H12 g2
Time-differentiation and merging gives contact kinematics(
g1∗ + H12 g2∗H
21 (I + ∆g1∗)
)
p1 = T 1,12 g1 + H1
2 g2∗
(
∆g2 − T 2,21 p2
)
(
g2∗ + H21 g1∗H
12 (I + ∆g2∗)
)
p2 = T 2,21 g2 + H2
1 g1∗
(
∆g1 − T 1,12 p1
)
Geometric equations, add surface coordinates separately
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 21
Outline Introduction Modeling Control Conclusions
Compliant contact dynamics
First model of contact dynamics:
Assumption: forces generated by spring and damperImplementation:
Upon impact, connect spring/damper at contact pointsDuring contact, keep connected between these fixed pointsRelease contact when distance ∆ > 0
Model only realistic for small deformations (reasonable formost walking robots)
Simple submodel, can be used at different locations
Stiff, fast contact → Stiff differential equations
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 22
Outline Introduction Modeling Control Conclusions
Compliant contact dynamics
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 23
Outline Introduction Modeling Control Conclusions
Rigid contact dynamics
Simpler rigid dynamics through limiting operationAssumptions: impact and deformation phaseinstantaneous, no slipping, impulsive contact forcesImpact = discontinuity in velocity/momentum on impactFor walking robots, results mostly in instantaneous releaseof rear leg on impact of front legInteresting detail: release of contact not determined byforce direction but by acceleration direction
f1
f2 u
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 24
Outline Introduction Modeling Control Conclusions
Efficient Model-Based Control ofWalking Robots
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 25
Outline Introduction Modeling Control Conclusions
Finding natural walking gaits
How to find the most efficient walking gait?
Purely passive: Search space of initial conditions that givestable cycle (Poincare mappings)
Efficient (almost-passive): Search space of all trajectories?
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 26
Outline Introduction Modeling Control Conclusions
Finding natural walking gaits
Make problem solvable by polynomial approximation
Parameterize joint trajectories over one step as
q(t) = α0 + α1t + α2t2 + . . . + αntn
Force cyclic behavior by matching initial to final conditions.
Minimize torque requirements
minα,T
∫ T
0‖τ(t)‖2 dt
with τ expressed in terms of α using model equations.
Does not say anything about gait stability.
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 27
Outline Introduction Modeling Control Conclusions
Finding natural walking gaits
Gait search as minimization problemRecovers passive gait if availableOtherwise, gives ‘most efficient’ gaitCan be extended with other parameters, e.g. formechanical structure.
xs
xs
xm
xm
k0
m0
m0
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 28
Outline Introduction Modeling Control Conclusions
Constructing natural walking gaits
Optimization of mechanical structure for variable speed walkingExample: compass-gait walker with inter-leg spring andvariable mass distribution
0.6 0.8 1.0 1.2
10
1
0.1
0.01
0.001
v (m/s)
J
0.6 0.8 1.0 1.2
3.0
2.0
1.0
0.0
4
0
8
12
16
v (m/s)
m
k
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 29
Outline Introduction Modeling Control Conclusions
Constructing natural walking gaits
Optimization of mechanical structure for variable speed walkingExample: compass-gait walker with inter-leg spring andvariable mass distribution
0.6 0.8 1.0 1.2
10
1
0.1
0.01
0.001
v (m/s)
J
0.6 0.8 1.0 1.2
3.0
2.0
1.0
0.0
4
0
8
12
16
v (m/s)
m
k
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 29
Outline Introduction Modeling Control Conclusions
Power-continuous tracking
Given efficient trajectory, how to follow it?Time-synchronization not important, onlyjoint-synchronizationAssume full actuation → n degrees of freedom1 degree of freedom for energy/speed control(e.g. potential-energy shaping)n − 1 degrees of freedom for curve-tracking(zero-energy, or, power-continuous control)
Related workP.Y. Li and R. Horowitz (1995–2001)PVFC: Passive Velocity-Field Control
q1(t)
q2(t)
q3(t)
t
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 30
Outline Introduction Modeling Control Conclusions
Power-continuous tracking
Given efficient trajectory, how to follow it?Time-synchronization not important, onlyjoint-synchronizationAssume full actuation → n degrees of freedom1 degree of freedom for energy/speed control(e.g. potential-energy shaping)n − 1 degrees of freedom for curve-tracking(zero-energy, or, power-continuous control)
Related workP.Y. Li and R. Horowitz (1995–2001)PVFC: Passive Velocity-Field Control
q1(t)
q2(t)
q3(t) q1
q2
q3
t
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 30
Outline Introduction Modeling Control Conclusions
Power-continuous tracking
Given efficient trajectory, how to follow it?
Time-synchronization not important, onlyjoint-synchronization
Assume full actuation → n degrees of freedom
1 degree of freedom for energy/speed control(e.g. potential-energy shaping)
n − 1 degrees of freedom for curve-tracking(zero-energy, or, power-continuous control)
Related work
P.Y. Li and R. Horowitz (1995–2001)PVFC: Passive Velocity-Field Control
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 30
Outline Introduction Modeling Control Conclusions
Step 1: encode desired behavior
q(t)
qd (t)
q(t)
curve
Encode the desired behavior1 Extend desired curve to vector field2 Split kinetic energy in M(q)-orthogonal
good and bad directions3 Transform into good/bad coordinates
Result: kinetic energy is sum of two parts, onedescribing desired behavior, the other describingundesired behavior.
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 31
Outline Introduction Modeling Control Conclusions
Step 1: encode desired behavior
q(t)
q(t)
curve
Encode the desired behavior1 Extend desired curve to vector field2 Split kinetic energy in M(q)-orthogonal
good and bad directions3 Transform into good/bad coordinates
Result: kinetic energy is sum of two parts, onedescribing desired behavior, the other describingundesired behavior.
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 31
Outline Introduction Modeling Control Conclusions
Step 1: encode desired behavior
q(t)
q(t)
wcurve
Encode the desired behavior1 Extend desired curve to vector field2 Split kinetic energy in M(q)-orthogonal
good and bad directions3 Transform into good/bad coordinates
Result: kinetic energy is sum of two parts, onedescribing desired behavior, the other describingundesired behavior.
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 31
Outline Introduction Modeling Control Conclusions
Step 1: encode desired behavior
q(t)
q(t)
wcurve
Encode the desired behavior1 Extend desired curve to vector field2 Split kinetic energy in M(q)-orthogonal
good and bad directions3 Transform into good/bad coordinates
Result: kinetic energy is sum of two parts, onedescribing desired behavior, the other describingundesired behavior.
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 31
Outline Introduction Modeling Control Conclusions
Step 1: encode desired behavior
Example (2d point mass in a circular field)
Point mass dynamics
ddt
q1
q2
p1
p2
=
0 0 1 00 0 0 1−1 0 0 00 −1 0 0
00p1mp2m
+
0 00 01 00 1
[
u1
u2
]
Representation of desired vector field
w(q) =
[
−q2
q1
]
−2 -1.5 -1 -0.5 0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
q1
q2p/m
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 32
Outline Introduction Modeling Control Conclusions
Step 1: encode desired behavior
Example (2d point mass in a circular field)
Coordinate transformation (only for momentum)[
p1
p2
]
=1|q|
[
−q2 q1
q1 q2
] [
α1
α2
]
Dynamics equations in transformed coordinates
ddt
q1
q2
α1
α2
=
0 0 − q2|q|
q1|q|
0 0 q1|q|
q2|q|
q2|q| − q1
|q| 0 − α1|q|
− q1|q| − q2
|q|α1|q| 0
00α1mα2m
+
0 00 0
− q2|q|
q1|q|
q1|q|
q2|q|
[
u1
u2
]
and the energy equals H(q, α) = H(α) = 12m α2
1 + 12m α2
2.
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 33
Outline Introduction Modeling Control Conclusions
Step 1: encode desired behavior
Example (2d point mass in a circular field)
input G J
desired energy
undesired energy
12m α2
2
12m α2
1
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 34
Outline Introduction Modeling Control Conclusions
Step 2: design controller
Step 2: derive the controller almost trivially1 Keep energy in separate bins2 Create uni-directional flow from bad to good3 Take care of the potential energy4 Design 1D speed/energy controller
power- continuousinterconnection
desired(good)energy
undesired(bad)
energy
u
y
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 35
Outline Introduction Modeling Control Conclusions
Step 2: design controller
Step 2: derive the controller almost trivially1 Keep energy in separate bins2 Create uni-directional flow from bad to good3 Take care of the potential energy4 Design 1D speed/energy controller
power- continuousinterconnection
desired(good)energy
undesired(bad)
energy
decouplingcontroller
u
y
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 35
Outline Introduction Modeling Control Conclusions
Step 2: design controller
Step 2: derive the controller almost trivially1 Keep energy in separate bins2 Create uni-directional flow from bad to good3 Take care of the potential energy4 Design 1D speed/energy controller
desired(good)energy
undesired(bad)
energy
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 35
Outline Introduction Modeling Control Conclusions
Step 2: design controller
Step 2: derive the controller almost trivially1 Keep energy in separate bins2 Create uni-directional flow from bad to good3 Take care of the potential energy4 Design 1D speed/energy controller
desired(good)energy
undesired(bad)
energy
asympt.controller
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 35
Outline Introduction Modeling Control Conclusions
Step 2: design controller
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 36
Outline Introduction Modeling Control Conclusions
Dribbel – experimental walking robotFeatures
First walking robot at the University of Twente
Planar six link mechanism
One actuator in hip joint
Electro-magnetic knee lock
Design and controller fully tested insimulation, setup worked on first try
Very simple control algorithm
Low energy consumption (6 W)
Starting point and testbed for newresearch projects
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 37
Outline Introduction Modeling Control Conclusions
Dribbel – experimental walking robot
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 38
Outline Introduction Modeling Control Conclusions
Dribbel – experimental walking robot
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 39
Outline Introduction Modeling Control Conclusions
Conclusions
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 40
Outline Introduction Modeling Control Conclusions
Conclusions
Physical models can help in rigorous design and analysis ofwalking robots, to go beyond physical intuition
Benefit of port-based approach in mechanics usually a matterof taste, but sometimes gives just right level of abstraction
Theoretical results still need to be tested in experiments!
CHESS Seminar @ UC Berkeley — Oct 31 / Nov 7, 2006 41
top related