Date post: | 02-Jan-2016 |
Category: |
Documents |
Upload: | tamara-robles |
View: | 29 times |
Download: | 0 times |
Safe Execution of Bipedal Walking Tasks from
Biomechanical Principles
Andreas Hofmann and Brian Williams
Introduction
Planner
Dispatcher
SkillsLibrary
A B
CD
[20, 30]
Turn right,go forward
Discrete task executives- Planner generates plan- Dispatcher monitors execution,invokes primitives from skills library
- Velocity limits (timing limits)
- Acceleration limits ignored (detaileddynamics are abstracted away byassuming they can be ignored)
Introduction
Problem: For agile, underactuated systems, can’t ignore dynamics
Planner
Dispatcher
SkillsLibrary
A B
CD
[20, 30]
Turn right,go forward
Discrete task executives- Planner generates plan- Dispatcher monitors execution,invokes primitives from skills library
- Velocity limits (timing limits)
- Acceleration limits ignored (detaileddynamics are abstracted away byassuming they can be ignored)
Introduction
Problem: For agile, underactuated systems, can’t ignore dynamics
Planner
Dispatcher
SkillsLibrary
A B
CD
[20, 30]
Turn right,go forward
Discrete task executives- Planner generates plan- Dispatcher monitors execution,invokes primitives from skills library
- Velocity limits (timing limits)
- Acceleration limits ignored (detaileddynamics are abstracted away byassuming they can be ignored)
t
Left knee
t
Left hip pitch
- Detailed joint trajectories generatedoffline, taking into account dynamics- Trajectories tracked using simplehigh-impedance PD control laws
Introduction
Problem: For agile, underactuated systems, can’t ignore dynamics
Planner
Dispatcher
SkillsLibrary
A B
CD
[20, 30]
Turn right,go forward
Discrete task executives- Planner generates plan- Dispatcher monitors execution,invokes primitives from skills library
- Velocity limits (timing limits)
- Acceleration limits ignored (detaileddynamics are abstracted away byassuming they can be ignored)
t
Left knee
t
Left hip pitch
- Detailed joint trajectories generatedoffline, taking into account dynamics- Trajectories tracked using simplehigh-impedance PD control laws
Problem: No notion of task plan, little flexibility to disturbances
Introduction – Problem AddressedPlanner
Dispatcher
SkillsLibrary
A B
CD
[20, 30]
Turn right,go forward
Discrete task executives- Planner generates plan- Dispatcher monitors execution,invokes primitives from skills library
- Velocity limits (timing limits)
- Acceleration limits ignored (detaileddynamics are abstracted away byassuming they can be ignored)
t
Left knee
t
Left hip pitch
- Detailed joint trajectories generatedoffline, taking into account dynamics- Trajectories tracked using simplehigh-impedance PD control laws
Gap: Large class of problems that require- ability to execute task-level plans- ability to deal with disturbances- taking into account dynamic limitations;
understanding relationship between acceleration limits, and time needed to achieve state-space goals
Challenging case – bipedal walking
• Walk from location A to B in specified time• Observe foot placement restrictions imposed by
terrain
Challenging case – bipedal walking• Walk from location A to B in specified time• Observe foot placement restrictions imposed by terrain
Challenging case – Bipedal Machines
• Walk from location A to B in specified time
• Should not fall, even if disturbed
Approach – walking task spec
Rf_1
x
y Lf_1
Rf_2
Lf_2X_lb X_ub
Y_lb
Y_ub
Foot placement
QualitativeGait Poses
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
Lf_2
Rf_2
Double supportleft foot in front
Left singlesupport
Double supportright foot in front
Right singlesupport
Double supportleft foot in front
x - forwardy - lateral
[20, 30] tSpatial goal region
specificationTemporal rangespecification
Qualitative State Plan
Computing torques to achieve a particular state goal is challenging
?desCM
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
Lf_2
Rf_2
Hybrid executive and multivariable controller
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
Lf_2
Rf_2
desCM
Model-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Task-levelExecutive
SISOLinearSystems
Controlparameters
Plantstate
Hybrid executive coordinates controllers to sequence plant through poses in
qualitative state planModel-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Task-levelExecutive
SISOLinearSystems
Controlparameters
Plantstate
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
Lf_2
Rf_2
Hybrid executive coordinates controllers to sequence plant through poses in
qualitative state planModel-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Task-levelExecutive
SISOLinearSystems
Controlparameters
Plantstate
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
Lf_2
Rf_2
Hybrid executive coordinates controllers to sequence plant through poses in
qualitative state planModel-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Task-levelExecutive
SISOLinearSystems
Controlparameters
Plantstate
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
Lf_2
Rf_2
Hybrid executive coordinates controllers to sequence plant through poses in
qualitative state planModel-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Task-levelExecutive
SISOLinearSystems
Controlparameters
Plantstate
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
Lf_2
Rf_2
Hybrid executive coordinates controllers to sequence plant through poses in
qualitative state planModel-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Task-levelExecutive
SISOLinearSystems
Controlparameters
Plantstate
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
Lf_2
Rf_2
Model-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Task-levelExecutive
SISOLinearSystems
Controlparameters
Plantstate
1y
1y 1y+
dk
sety _1
+ pk-
+-
sety _1
• Multivariable controller • makes state plan quantities, like CM, directly
controllable
• allows hybrid executive to control CM by adjusting linear gain parameters
CM
Kp Kd
Innovations• Requirement: Stable walking
• How to get to the right place at the right time?
• What if terrain requires irregular foot placement?
Previous Approaches
Innovations• Requirement: Stable walking
• How to get to the right place at the right time?
• What if terrain requires irregular foot placement?
Previous Approaches Innovation
Execute a plan
Innovations
Previous Approaches
t
Left knee
t
Left hip pitch
Detailed actuated trajectory spec.
• Requirement: ability to execute task-level plans• How should walking plans be expressed?
• What are the requirements for successful plan execution?
Innovations
Previous Approaches Innovation
t
Left knee
t
Left hip pitch
Detailed actuated trajectory spec.
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
Lf_2
Rf_2
[20, 30] tSpatial goal region
specificationTemporal rangespecification
Qualitative state trajectory spec.
• Requirement: ability to execute task-level plans• How should walking plans be expressed?
• What are the requirements for successful plan execution?
Innovations
Previous Approaches Innovation
t
Left knee
t
Left hip pitch
Detailed actuated trajectory spec.
Qualitative control plan
• Requirement: ability to execute task-level plans• How should walking plans be expressed?
• What are the requirements for successful plan execution?
Lateral CM
Forward CM
Innovations
• Requirement: ability to deal with disturbances• What balance strategies can bipeds (like humans) use?
Innovations
• Requirement: ability to deal with disturbances• What balance strategies can bipeds (like humans) use?
Previous Approaches
Uses primarily ankle torque
strategy
Innovations
• Requirement: ability to deal with disturbances• What balance strategies can bipeds (like humans) use?
Previous Approaches
Uses primarily ankle torque
strategy
CM
CP ZTCP
F
F
xF
CMτUse threebalance
strategies
Innovation
Humans use Three Balance Strategies
• Stance ankle torque
• Stepping
Movement of non-contact segments
CM
CP ZTCP
F
F
xF
CMτ
Innovations
• Requirement: account for dynamic limitations• What is the relationship between acceleration limits,
and timing needed to achieve state-space goals?
Innovations
• Requirement: account for dynamic limitations• What is the relationship between acceleration limits,
and timing needed to achieve state-space goals?
Previous Approach – exploits waits
[Morris, 2001]
Sail boat [6, 12]Boston Provincetown
Car in Provincetown[3, 4]
Drive car to Provincetown
[0, inf]Wait in Provincetown
Innovations
• Requirement: account for dynamic limitations• What is the relationship between acceleration limits,
and timing needed to achieve state-space goals?
Previous Approach – exploits waits
[Morris, 2001]
Innovation
Underactuated system -no equilibrium point(no ability to wait)
Sail boat [6, 12]Boston Provincetown
Car in Provincetown[3, 4]
Drive car to Provincetown
[0, inf]Wait in Provincetown
Problem Solution
Take state plan and plant state as input
Model-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Dispatcher
SISOLinearSystems
Controlparameters
Plantstate
Generate plant control input that causesplant state to evolve in accordance with the state plan specification.
Model-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Task-levelExecutive
SISOLinearSystems
Controlparameters
Plantstate
1y
1y 1y+
dk
sety _1
+ pk-
+-
sety _1
• Multivariable controller makes CM directly controllable
CM
Kp Kd
Multivariable Controller Requirements
t
Left knee
t
Left hip pitch
• Want to specify coarse setpoint – Forward CM setpoint = 0
– Lateral CM setpoint = 0
• Controller should figure out detailed joint trajectories
Model-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Task-levelExecutive
SISOLinearSystems
Controlparameters
Plantstate
1y
1y 1y+
dk
sety _1
+ pk-
+-
sety _1
• Hybrid executive decides CM setpoints, control gains• adjusts kp, kd gains of SISO abstraction
CM
Kp Kd
Hybrid Executive Requirements• Multivariable controller accepts single
setpoint
• Can’t, by itself, sequence through multiple setpoints
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
Lf_2
Rf_2
• Need hybrid executive for that
Model-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Task-levelExecutive
SISOLinearSystems
Controlparameters
Plantstate
1y
1y 1y+
dk
sety _1
+ pk-
+-
sety _1
Kp Kd
1
LateralCM
2 3 4
Gait Poses
Lf_1
Rf_1Lf_1 Rf_2 Rf_2
Lf_1
5
Lf_2
Rf_2
1 2 3 4 5
1 2 3 4 5
ForwardCM
CMY_1
Forwardswing foot
At start of control epoch, hybrid exec. sets controller gains
Hybrid Executive guides each variable to its goal
1
LateralCM
2
Gait Poses
Lf_1
Rf_1Lf_1
1 2
1 2
ForwardCM
CMY_1
Forwardswing foot
Hybrid Executive transitions to next epoch• when goal for each variable is achieved
1
LateralCM
2
Gait Poses
Lf_1
Rf_1Lf_1
1 2
1 2
ForwardCM
CMY_1
Forwardswing foot
What if there is a disturbance?
ForwardCM
t
goal region
nominal actual
t1
t
nominal
t1
goal region
adjusted
pos.
Forwardstepping foot
• trip recovery
Disturbances and Controllability
• How can disturbances be handled?
• Given some bound on disturbances, is it possible to guarantee successful execution of a plan?
• Dispatchers for discrete systems
Sail boat [6, 12]Boston Provincetown
Car in Provincetown[3, 4]
Drive car to Provincetown
[0, inf]Wait in Provincetown
Disturbances and Controllability
• How can disturbances be handled?
• Given some bound on disturbances, is it possible to guarantee successful execution of a plan?
• Dispatchers for discrete systems
• Guarantee successful execution
• Even with temporal uncertainty
• If uncertainty is bounded, [Morris, 2001]
Sail boat [6, 12]Boston Provincetown
Car in Provincetown[3, 4]
Drive car to Provincetown
[0, inf]Wait in Provincetown
Controllability for Hybrid Systems
• Executive guides variables to goal regions, but what should these regions be?
• Previous approaches [Pratt, et. al 1996] determine regions manually
• Can regions be computed automatically?
– based on relation between regions, time, and controllability limits?
Plan compiler computes limits
Model-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Dispatcher
QualitativeControl Plan
Plan Compiler
SISOLinearSystems
Controlparameters
Plantstate
t
Y'
Y
Initialregion
Nominaltrajectory
Targetregion
Computes spatial and temporal regions for all activities
Plan compiler synthesizes controllers
Model-basedExecutive
State Plan
MIMO NonlinearPlant
Feedback-LinearizingMultivariable Controller
Plant controlinputs
Plantstate
Hybrid Dispatcher
QualitativeControl Plan
Plan Compiler
SISOLinearSystems
Controlparameters
Plantstate
1y
1y 1y+
dk
sety _1
+ pk-
+-
sety _1
Control info expressed as ranges on SISO parameters
2max2min
1max1min
d
p
k
k
Plan Compiler• Generate qualitative control plan from state plan:
• Compute initial and goal regions for each activity
• Compute duration range for each activity
• Compute control parameter ranges
• Formulate as Nonlinear Program, and solve by SQP
How does the plan compiler compute region limits, synthesize controllers?
• Initial and goal regions
y
y
Initial
Goal
How does the plan compiler compute region limits, synthesize controllers?
• Initial and goal regions
y
y
Initial
Goal
• Want to maximize controllable time range in goal
• Given start anywhere in init region, what are lb, ub on this time?
How does the plan compiler compute region limits, synthesize controllers?
• Lb – fastest trajectory from slowest start
• Worst-case (slowest) start is point B
y
y
Initial
Goal
B
How does the plan compiler compute region limits, synthesize controllers?
• Lb – fastest trajectory from slowest start
• Worst-case (slowest) start is point B
• Best-case (fastest) finish is point D
y
y
Initial
Goal
B
D
How does the plan compiler compute region limits, synthesize controllers?
• Consider single acceleration spike as control input
• Spike occurs at beginning
y
y
Initial
Goal
B
D
y
t
How does the plan compiler compute region limits, synthesize controllers?
• Consider single acceleration spike as control input
• Spike occurs at beginning
y
t
• If spike has the right size, results in GFT (Guaranteed Fastest Trajectory)
y
y
Initial
Goal
B
D
How does the plan compiler compute region limits, synthesize controllers?
• Ub – slowest trajectory from fastest start
• Worst-case (fastest) start is point A
• Best-case (slowest) finish is point C
y
y
Initial
Goal
B
D
A
C
How does the plan compiler compute region limits, synthesize controllers?
y
y
Initial
Goal
B
D
A
C
• Spike of right size at end results in GST (Guaranteed Slowest Trajectory)
y
t
Existence of controllable temporal range in goal
• If t(GFT)<t(GST) then presence of trajectory in goal pos./vel. region can be guaranteed for any time [t(GFT), t(GST)]– By adjusting spike
GFT, GST with linear control law• Adjust control law parameters to get GFT, GST
A – max pos., vel. (fastest start)
B – min pos., vel. (slowest start)
C – max pos., min vel. (slowest finish)
D – min pos., max vel. (fastest finish)
Assume monotonic velocity
A
B
y
y
C
D
Initial
Goal
GFT
GST
• Maximize controllable temporal range, initial region size
• Subject to limits on control inputs
Discussion• Hybrid executive
– From qualitative state plan, automatically synthesizes controllers
• Computes dispatcher regions and gain ranges
– Successful, stable execution achieved by getting key variables into right region at right time
• Provides significant flexibility in how they actually get there
– Relies on SISO decoupling, linearization provided by multivariable controller
Conclusion• Robustness achieved through integration of
three balance control strategies
• Robust plan execution achieved for hybrid system by extending techniques used for discrete systems
• Efficiency of execution achieved through compilation of plan into dispatchable form
Trade-off Between Region Size and Temporal Range
t(GFT) = t(GST)
GFT in red, GST in blue, Nom in green
Trade-off Between Region Size and Temporal Range
t(GFT) = t(GST)
GFT in red, GST in blue, Nom in green
t(GFT) > t(GST)
Some uncertainty in duration
Strong and Dynamic Hybrid Controllability
1LateralCM
2 3 4
[0.5, 1.0]
1 2 3 4ForwardCM
[0.39, 0.39] [0.16, 0.16] [0.25, 0.25]
[0.3, 0.45] [0.1, 0.2] [0.2, 0.3]
StrongControllability
Strong and Dynamic Hybrid Controllability
1LateralCM
2 3 4
[0.5, 1.0]
1 2 3 4ForwardCM
[0.39, 0.39] [0.16, 0.16] [0.25, 0.25]
[0.3, 0.45] [0.1, 0.2] [0.2, 0.3]
StrongControllability
1LateralCM
2 3 4
[0.5, 1.0]
1 2 3 4ForwardCM
[0.32, 0.4] [0.12, 0.18] [0.22, 0.26]
[0.3, 0.45] [0.1, 0.2] [0.2, 0.3]
DynamicControllability