A Momentum-based Bipedal Balance Controller
description
Transcript of A Momentum-based Bipedal Balance Controller
![Page 1: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/1.jpg)
A Momentum-based Bipedal Balance ControllerYuting Ye May 10, 2006
![Page 2: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/2.jpg)
Outline• Motivation• Resolved momentum control• Implementation and discussion• Result and conclusion• Future work
![Page 3: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/3.jpg)
Motivation• Motion Capture
– Ground truth kinematics– Apply to different skeleton
• Motion retargeting [M. Gleicher 1998]– Interpolation for motion synthesis
• Motion graphs [L. Kovar et al. 2002]– NO kinetics
• Violate physical rules– Cannot record everything
• Falling, martial art combat• Re-capturing is expensive
![Page 4: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/4.jpg)
Motivation• Physical simulation
– Physically correct (somewhat)– Hard to develop, parameters tuning
• Composable [P. Faloutsos et al. 2001]– What to simulate?
• Reactive [V. Zordan et al. 2002]– Balance is a big problem!
• Constraints– Data driven and physically correct– Objectives and constraints? (momenta)– Expensive
![Page 5: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/5.jpg)
Motivation• The robotics community
– S. Kajita et al. 2003, Resolved momentum control: humanoid motion planning based on the linear and angular momentum
– Simple control schema for whole body motion– Works on humanoid robots -- balanced– Is it general enough?Don’t be scared by the equations, just high school level physics
![Page 6: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/6.jpg)
Resolved momentum control• Skeleton
head
Hip
WaistLeft
femur
Left tibia Right
humerus
Right femur
Left radius
Right radius
Torso
Left humerus
Right tibia
Right foot
Left foot
Left hand
Right hand
Data from D. A. Winter, 2005, “Biomechanics and Motor Control of Human Movement, 3rd Edition”
![Page 7: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/7.jpg)
Resolved momentum control• Basic idea
–To control the linear and angular momenta with the motion of joints
B
BcB
B
BcBB
H
M
IrmEm
LP
HIL
MrmEmP
~ˆ~
0
~
~ˆ~~
~
~
00
0ˆ
01
02
12
rrrrrr
r
![Page 8: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/8.jpg)
Resolved momentum control• Calculate the inertia matrices
jjjj
jjjjj
jjj
jjjjjj
jjjjjjj
Imc
mrc
IPcL
mrcP
hm
hm
~~
~)~(
~~
~)~(
jr
jm~
jc~
![Page 9: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/9.jpg)
Resolved momentum control• Calculate the inertia matrices
1111
11
~~1111
~~~~1
1111
11
ˆˆ
ˆˆ~~~)~()~~(~
~~
jjjj
jjjj
ccT
ccjjT
jj
ccT
ccjjj
jjjjjjj
jjj
rrmRIR
rrmII
mmcmcmc
mmm
jjjj
jjjjj
Imc
mrc
hm
~~
~)~(
jm
~
1jm
1jcjc~
j-1
j
![Page 10: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/10.jpg)
Resolved momentum control• Calculate the inertia matrices
McHH
H
M
n
n
hhhmmm
~̂...
...
0
210
21
HIL
MrmEmP
B
BcbB
~ˆ~~
~
![Page 11: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/11.jpg)
Resolved momentum control• Modeling ground contact
–Specify motions of the feet
ii leglegB
BifB
if
if JErE
0ˆ
B
BifB
if
iflegleg E
rEJ
ii
0ˆ1
![Page 12: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/12.jpg)
Resolved momentum control•Calculate the Jacobian matrix
–Same as in inverse kinematics
jj
f
jjj
f r
j
13
2
End Effector
??
? eJ )(1
)( jjj
rSS
S
e
![Page 13: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/13.jpg)
Resolved momentum control• Putting things together
freefree
freeleg
rli leg
leg
B
BcB
HM
HM
IrmEm
LP
i
i
i
,
~~
ˆ~
0
~
if
ifleg
rli leg
leg
free
B
B
free
free
rli
ifBleg
leg
legcB
i
i
i
i
i
i
JHM
HM
ErE
JHM
IrmEm
LP
1
,
,
1~
0ˆ
~ˆ~
0
~
B
BifB
if
iflegleg E
rEJ
ii
0ˆ1
![Page 14: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/14.jpg)
Resolved momentum control• Putting things together
if
ifleg
rli leg
leg
ref
ref
i
i
i JHM
L
Py
1
,
free
free
rli
ifBleg
leg
legcB
HM
ErE
JHM
IrmEm
Ai
i
i
,
1~
0ˆ
~ˆ~
0
~
free
B
B
Ay
![Page 15: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/15.jpg)
Resolved momentum control• Putting things together
ref
ref
ref
free
B
B
free
B
B
AAEyA
)(
B
BifB
if
iflegleg E
rEJ
ii
0ˆ1
![Page 16: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/16.jpg)
Implementation and Discussion• ODE – Physical simulation
–Compensation for resolving collision: small timestep–30 frames/sec, 30/10 iterations per frame
• Select what to control
Ts
Ts
le
eS ...
1ise -- a 6x1 column vector that has
1 at sith row and 0 for the rest
free
B
B
ASyS
TeeeeS ][ 5210e.g.
![Page 17: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/17.jpg)
Implementation and Discussion•Analogy to inverse kinematics
–Replace the end effector with momenta and velocities
•Partial derivative, SINGULARITY
–Matrix inversion•Pseudo Inverse
• SVD•Damped Least Squares
11 )()( TTT JJJJJJ
0)( JJEJ
121 )( EJJJJ TT
![Page 18: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/18.jpg)
Implementation and Discussion•Example
![Page 19: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/19.jpg)
Implementation and Discussion• PD servo for reference values
–Proportional Plus Derivative (PD) Feedback System
Kp is the spring factor and Kd is the damping factor
• Get the reference values
0
~)~~(~
ref
dpref
L
cKccKmP ref
dp KKref
)()()( xxKxxmKxf refdp
ref
![Page 20: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/20.jpg)
Implementation and Discussion• PD Controller
–For one leg–Tune the gains for each joint – scale by inertia
jjj
refd
refpjj KKI
11~
)()(
![Page 21: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/21.jpg)
Results•Simplest case
Max Force: 100, 250
Push: [-600 600]
![Page 22: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/22.jpg)
Results•Single leg, multiple 1D joints
Max Force: 200
Push: -350, 350
![Page 23: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/23.jpg)
Results•Unstable
![Page 24: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/24.jpg)
Results•Humanoid - stand
![Page 25: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/25.jpg)
Results•Humanoid – slightly pushed
Max Force: 1500
Push: 900
![Page 26: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/26.jpg)
Conclusion• A simple control schema
– Few parameters to tune• Stable • Fits well in data-driven simulation• Matrix singularity
– Highly sensitive to any error• Good understanding of physics
required
![Page 27: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/27.jpg)
Future work• Ground contact• Integrated with motion capture data
– Obtain the reference values• Walking, protective steps
– Replicate the motion with reaction• Interpolation
– Finding transition points; as constraints• Motion composition
– Momenta of kicking + jumping = jumping kick?
![Page 28: A Momentum-based Bipedal Balance Controller](https://reader034.fdocuments.us/reader034/viewer/2022051020/56815e0d550346895dcc69f9/html5/thumbnails/28.jpg)
Thank YOU!!!• Questions and comments?