Safe Execution of Bipedal Walking Tasks from Biomechanical Principles Andreas Hofmann Cognitive Robotics – 04/27/2005.

Slides:



Advertisements
Similar presentations
Vectors and Two-Dimensional Motion
Advertisements

Capture Point: A Step toward Humanoid Push Recovery
Analysis of a Deorbiting Maneuver of a large Target Satellite using a Chaser Satellite with a Robot Arm Philipp Gahbler 1, R. Lampariello 1 and J. Sommer.
Torque, Equilibrium, and Stability
Benjamin Stephens Carnegie Mellon University 9 th IEEE-RAS International Conference on Humanoid Robots December 8, 2009 Modeling and Control of Periodic.
Rotational Equilibrium and Rotational Dynamics
Chapter 8 Rotational Equilibrium and Rotational Dynamics.
Control Design to Achieve Dynamic Walking on a Bipedal Robot with Compliance Young-Pil Jeon.
Model Predictive Control for Humanoid Balance and Locomotion Benjamin Stephens Robotics Institute.
Control of Full Body Humanoid Push Recovery Using Simple Models Benjamin Stephens Thesis Proposal Carnegie Mellon, Robotics Institute November 23, 2009.
Multiple Marine Vehile Deconflicted Path Planning with Currents and Communication Constraints A. Häusler 1, R. Ghabcheloo 2, A. Pascoal 1, A. Aguiar 1.
Course Outline 1.MATLAB tutorial 2.Motion of systems that can be idealized as particles Description of motion; Newton’s laws; Calculating forces required.
Ch. 7: Dynamics.
UNC Chapel Hill S. Redon - M. C. Lin Rigid body dynamics II Solving the dynamics problems.
Motion Planning for Legged Robots on Varied Terrain Kris Hauser, Timothy Bretl, Jean-Claude Latombe Kensuke Harada, Brian Wilcox Presented By Derek Chan.
Mobile Robotics: 10. Kinematics 1
CS274 Spring 01 Lecture 5 Copyright © Mark Meyer Lecture V Higher Level Motion Control CS274: Computer Animation and Simulation.
Exercise Science Section 15: Biomechanical Principal and Applications An Introduction to Health and Physical Education Ted Temertzoglou Paul Challen ISBN.
Chapter 7 Energy of a System.
Definition of an Industrial Robot
1 Research on Animals and Vehicles Chapter 8 of Raibert By Rick Cory.
Optimization-Based Full Body Control for the DARPA Robotics Challenge Siyuan Feng Mar
Game Physics – Part I Dan Fleck Coming up: Rigid Body Dynamics.
Ch. 6 Single Variable Control
Advanced Programming for 3D Applications CE Bob Hobbs Staffordshire university Human Motion Lecture 3.
20/10/2009 IVR Herrmann IVR: Introduction to Control OVERVIEW Control systems Transformations Simple control algorithms.
Robot Dynamics – Slide Set 10 ME 4135 R. R. Lindeke, Ph. D.
BIPEDAL LOCOMOTION Prima Parte Antonio D'Angelo.
Kinetics of Hula Hooping: An Exploratory Analysis Tyler Cluff D. Gordon E. Robertson Ramesh Balasubramaniam School of Human Kinetics Faculty of Health.
Beyond Human, or Just Really Amazing?. Biomechanics “the application of the principles of physics to the analysis of movement” Exercise Science, Ted Temertzoglou.
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010 ROBOT CONTROL T. Bajd and M. Mihelj.
12 November 2009, UT Austin, CS Department Control of Humanoid Robots Luis Sentis, Ph.D. Personal robotics Guidance of gait.
Whitman and Atkeson.  Present a decoupled controller for a simulated three-dimensional biped.  Dynamics broke down into multiple subsystems that are.
Quadruped Robot Modeling and Numerical Generation of the Open-Loop Trajectory Introduction We model a symmetric quadruped gait for a planar robot with.
When the axis of rotation is fixed, all particles move in a circle. Because the object is rigid, they move through the same angular displacement in the.
Biomechanics Examines the internal and external forces acting on the human body and the effects produced by these forces Aids in technique analysis and.
Muhammad Al-Nasser Mohammad Shahab Stochastic Optimization of Bipedal Walking using Gyro Feedback and Phase Resetting King Fahd University of Petroleum.
Newton’s Laws of Motion Applicable to Angular Motion Dr. Ajay Kumar Professor School of Physical Education DAVV Indore.
Rotational Motion Chapter 6, 8 and 9. Acceleration in a Circle  Acceleration occurs when velocity changes  This means either speed OR direction changes.
Chapter 8 Potential Energy. Potential energy is the energy associated with the configuration of a system of objects that exert forces on each other This.
Potential Energy ~March 1, 2006.
Review: Differential Kinematics
ZMP-BASED LOCOMOTION Robotics Course Lesson 22.
Benjamin Stephens Carnegie Mellon University Monday June 29, 2009 The Linear Biped Model and Application to Humanoid Estimation and Control.
Lecture 3 Intro to Posture Control Working with Dynamic Models.
Chapter 7 Energy of a System.
1 Iterative Integer Programming Formulation for Robust Resource Allocation in Dynamic Real-Time Systems Sethavidh Gertphol and Viktor K. Prasanna University.
Chapter 11 Angular Momentum. Angular momentum plays a key role in rotational dynamics. There is a principle of conservation of angular momentum.  In.
Introduction to Biped Walking
1 Dynamics Differential equation relating input torques and forces to the positions (angles) and their derivatives. Like force = mass times acceleration.
Body Balance and Stability Control Balance is a very important factor in athletic performance Generally depends upon the location of the centre of mass.
Physics - Harmonic Motion We have been dealing with straight line motion or motion that is circular. There are other types of motion that must be dealt.
1 Lecture 15: Stability and Control III — Control Philosophy of control: closed loop with feedback Ad hoc control thoughts Controllability Three link robot.
Planning Tracking Motions for an Intelligent Virtual Camera Tsai-Yen Li & Tzong-Hann Yu Presented by Chris Varma May 22, 2002.
BIOMECHANICS PSE4U. B IOMECHANICS Biomechanics: how physical forces affects human performance.
Department of Computer Science Columbia University rax Dynamically-Stable Motion Planning for Humanoid Robots Paper Presentation James J. Kuffner,
Robot Intelligence Technology Lab. 10. Complex Hardware Morphologies: Walking Machines Presented by In-Won Park
Safe Execution of Bipedal Walking Tasks from Biomechanical Principles Andreas Hofmann and Brian Williams.
Date of download: 7/8/2016 Copyright © ASME. All rights reserved. From: Stabilization of a Dynamic Walking Gait Simulation J. Comput. Nonlinear Dynam.
University of Pisa Project work for Robotics Prof. Antonio Bicchi Students: Sergio Manca Paolo Viccione WALKING ROBOT.
Physically-Based Motion Synthesis in Computer Graphics
Character Animation Forward and Inverse Kinematics
Realization of Dynamic Walking of Biped Humanoid Robot
Multi-Policy Control of Biped Walking
The Science of Biomechanics
RABBIT: A Testbed for Advanced Control Theory Chevallereau, et. al.
Alternatives for Locomotion Control
Synthesis of Motion from Simple Animations
Chapter 4 . Trajectory planning and Inverse kinematics
Chapter 7 Inverse Dynamics Control
Presentation transcript:

Safe Execution of Bipedal Walking Tasks from Biomechanical Principles Andreas Hofmann Cognitive Robotics – 04/27/2005

Introduction

Problem: For agile, underactuated systems, can’t ignore dynamics

Introduction Problem: For agile, underactuated systems, can’t ignore dynamics

Introduction Problem: For agile, underactuated systems, can’t ignore dynamics Problem: No notion of task plan, little flexibility to disturbances

Introduction Gap: Large class of problems that require -ability to execute task-level plans -flexibility to disturbances during this execution -taking into account dynamic limitations; understanding relationship between acceleration limits, and time needed to achieve state-space goals

Challenging case – Bipedal Machines Walk from location A to B in 30 seconds Must be strong, fast enough

Challenging case – Bipedal Machines Walk from location A to B in 30 seconds Must be strong, fast enough Should not fall, even if disturbed

Challenging case – Bipedal Machines Should not fall, even if disturbed

Challenging case – Bipedal Machines Should not fall, even on shaky ground

Challenging case – Bipedal Machines Should not fall, even on shaky ground

Challenging case – Bipedal Machines Should not fall, even on shaky ground But there are limits!

Problem Statement What balance strategies do humans use? How can we build an autonomous system that –Understands qualitative walking task specifications –Translates such specifications into control actions –Rejects significant disturbances?

Humans use Three Balance Strategies Stance ankle torque

Humans use Three Balance Strategies Stance ankle torque Stepping

Humans use Three Balance Strategies Stance ankle torque Stepping

Humans use Three Balance Strategies Stance ankle torque Stepping Movement of non-contact segments

Humans use Three Balance Strategies Stance ankle torque Stepping Movement of non-contact segments

Humans use Three Balance Strategies Stance ankle torque Stepping Movement of non-contact limbs

Approach – walking task spec Qualitative State Plan

Computing torques to achieve a particular state goal is challenging

Hybrid executive and multivariable controller

Hybrid executive coordinates controllers to sequence plant through poses in qualitative state plan

Multivariable controller makes state plan quantities, like CM, directly controllable allows hybrid executive to control CM by adjusting linear gain parameters

Maximizing tubes maximizes robustness to disturbances Hybrid executive Synthesizes dedicated controller for each qualitative pose Rather than generating specific reference trajectories, generates “tubes” of valid operating regions

Approach Summary To enhance balancing ability, use all 3 strategies To simplify task specification, use qualitative state plan To translate specification into actions, use model-based executive –Hybrid executive to sequence –Multivariable controller to decouple, linearize To provide robustness, compute regions of operation, not just nominal trajectories

Innovations of Approach Previous Approach Uses primarily first strategy [Hirai, 1997]

Innovations of Approach Previous ApproachInnovation Uses primarily first strategy Use all three strategies

Innovations of Approach Previous ApproachesInnovation Use primarily first strategy Use all three strategies Detailed actuated trajectory spec.

Innovations of Approach Previous ApproachesInnovation Use primarily first strategy Use all three strategies Detailed trajectory spec. Higher-level spec – Get to goal by specific time Qualitative specification - Dividing range of values of state variables into regions of interest [Williams, 1986]

Innovations of Approach Previous ApproachesInnovation Use primarily first strategy Use all three strategies Detailed trajectory spec. Higher-level spec – Get to goal by specific time, using common gait

Innovations of Approach Previous ApproachesInnovation Use primarily first strategy Use all three strategies Detailed actuated trajectory spec. Qualitative state trajectory spec.

Innovations of Approach Previous ApproachInnovation Uses primarily first strategy Use all three strategies Use detailed trajectory spec.Use flexible trajectory spec. - Compute tubes [Sacks, 1987], [Bradley and Zhao, 1993]

Innovations of Approach Previous Approach – exploits waits [Morris, 2001]

Innovations of Approach Previous ApproachInnovation Underactuated system - Control epochs have no equilibrium point (no ability to wait)

Innovations of Approach Previous ApproachInnovation Define continuous goal region in position/velocity state space Find feasible range of times for presence in goal region

Innovations of Approach Previous ApproachInnovation Offline planning to generate detailed trajectories Compilation of state-space and temporal requirements into control bounds Executive adjusts control parameters within bounds Compilation efficiency through use of a novel metric

Innovations of Approach Previous ApproachInnovation Offline planning to generate detailed trajectories

Roadmap Analysis of three balance strategies Model-based executive Discussion

Analysis of three balance strategies Study of human trial data Which balance strategies are used during normal walking? Are there simplifying relations that are useful for control?

Angular momentum tightly conserved During normal walking [Popovic, Hofmann, and Herr, 2004] Using strategies 1 and 2, not 3 Ground reaction force vector points from ZMP through CM

Angular momentum tightly conserved During normal walking [Popovic, Hofmann, and Herr, 2004] Using strategies 1 and 2, not 3 Horizontal ZMP can be used to accelerate horizontal CM ZMP can be thought of as control input

Angular momentum tightly conserved During normal walking [Popovic, Hofmann, and Herr, 2004] Using strategies 1 and 2, not 3 Approximate using spring constant

Validation of approximation Lateral ZMP: prediction in red, average over 7 trials in green, standard deviation bounds in black and blue

Horizontal CM accelerated by horizontal ZMP ZMP bounded by support polgon –Imposes controllability limit

Horizontal CM accelerated by horizontal ZMP ZMP bounded by support polgon –Imposes controllability limit What if this isn’t enough? –What if more horizontal force is needed, but foot placement can’t be changed?

Non-conservation of Angular Momentum (Strategy 3) How is lateral restoring force achieved?

Non-conservation of Angular Momentum (Strategy 3) Orbital torque can be used to move COM –Use spin torque to get extra orbital torque (beyond max provided by ankle torque) –But, there are limits to how long and how hard

Centroidal Moment Point (CMP)

How large is stability reservoir? Analyze using simplified model [Popovic, Hofmann, and Herr, 2004] (Humanoids) Limited by maximum effective angle –Effective angle is integral of angular momentum –Summarizes rotational state about CM From rest, maximum excursion is 0.2m Base of support limited to 0.05m

Stepping to absorb lateral disturbance Simplified model, similar to [Goswami, 1996], but emphasis on reduction of lateral movement Determine ideal foot placement to absorb disturbance (strategy 2) –e.g. what foot placement will bring lateral CM movement to stop? (Vertical momentum dissipated)

Simplified Stepping Model How to absorb remaining lateral kinetic energy? –Lateral force (forward leg acts as damper), or –Continue to pose C

Roadmap Analysis of three balance strategies Model-based executive –Detailed problem formulation –SISO abstraction –Hybrid executive Discussion

Detailed Problem Formulation Take state plan and plant state as input Generate plant control input that causes plant state to evolve in accordance with the state plan specification. Define problem more formally in terms of state plan input, and plant being controlled

Plant Definition 18 D.O.F. (6 for body, 12 for joints) Hip - ball and socket, knee - pin, ankle – saddle Ground model contact points on foot bottom corners - continuous part, 37 variables (body position, orientation, joint angles, velocities) - discrete part, 8 ground contact binary vars -12 joint torque external inputs, 8 ground forces (func(x)) -12 outputs (CM, body orientation, swf pos, orientation, knees) -forward kinematics

State Plan - Example CMX_1 CMY_1 SWX_2 SWX_3 State-space constraints SWX_4 SWX_5

State Plan - Definition executes successfully

State Plan - Definition executes successfully Within required duration Starts in init, ends in goal Stays in tube

Roadmap Analysis of three balance strategies Model-based executive –Detailed problem formulation –SISO abstraction, multivariable controller –Hybrid executive Discussion

Hybrid executive moves CM by adjusting kp, kd gains of SISO abstraction

Multivariable Controller Requirements Typical controller tracks detailed trajectories

Multivariable Controller Requirements

Want to specify coarse setpoint –Forward CM setpoint = 0 –Lateral CM setpoint = 0

Multivariable Controller Requirements Want to specify coarse setpoint –Forward CM setpoint = 0 –Lateral CM setpoint = 0 Controller should figure out detailed joint trajectories

Virtual Model Control [Pratt, 1997] No detailed specification of joint trajectories Allows for low-gain, compliant control Virtual elements specify desired force on body Jacobian used to compute joint torques that achieve this

Virtual Model Control [Pratt, 1997] Problem – dynamics not taken into account System may not move in direction of static force

Whole body control [Khatib, 2004], [Hofmann, 2004] Dynamics taken into account through feedback linearization Static balancing Can exert manipulation force No control epoch sequencing Requires accurate model Dynamic balancing Supports control epoch sequencing Deals with model error (sliding control)

SISO Abstraction -Computing control inputs for successful state plan execution is challenging -Use feedback linearization [Slotine and Li, 1991] - MIMO plant appears to be a set of decoupled SISO linear 2 nd -order systems

Multivariable Controller

Controller Design Two-stage feedback linearization –Relation between workspace and joint accelerations –Inverse dynamics Craig, etc. Y includes: -COM position -Swing foot position -Body orientation

QP Optimizer Constraints –FRI –Joint limit Constraints may cause infeasibilities

Dealing with Infeasibility Introduce slack variables Cost function penalizes slacks Weighting of slack costs prioritizes importance of controlled variable Slacks for important variables 0 Non-zero slacks for less important –Treat as disturbance –Guarantee bounds on disturbance

Controller Design Multi-variable control achieved by QP formulation –Asserts FRI constraint, joint limits –Cost on torques –Use of slack variables Sliding control to compensate for model error Slotine

Balancing on Ground COM starts outside support polygon FRI stays in

Balancing on Ground COM starts outside support polygon FRI stays in

Balancing on Podium COM starts outside support polygon FRI stays in

Analysis of reaction Rotation about CM Allows extra rotation of CM about foot support CP –(Conservation of angular momentum) –Corresponds to lateral movement of CM to setpoint Interesting to note that –Initial movement of swing leg to right is beneficial in moving COM in desired direction –Movement of body to left is not!

Details of reaction behavior Can depend on preferences and capabilities of individual

Joint limit constraints are important! Determines reservoir of stability due to spin

Key Insights for Multivariable Controller Balance requirements can be expressed concisely as biomechanical constraints. Balance greatly improved by integrated action of contact, non-contact segments Seemingly complex behavior emerges –Single setpoint –No stored trajectories, dynamic optimization

Roadmap Analysis of three balance strategies Model-based executive –Detailed problem formulation –SISO abstraction –Hybrid executive Discussion

Hybrid Executive Requirements Multivariable controller accepts single setpoint

Hybrid Executive Requirements Multivariable controller accepts single setpoint Can’t, by itself, sequence through multiple setpoints (sequence of control epochs)

Hybrid Executive Requirements Multivariable controller accepts single setpoint Can’t, by itself, sequence through multiple setpoints (sequence of control epochs) Need hybrid executive for that

At start of control epoch, hybrid exec. sets controller gains

Hybrid Executive Monitors Progress of each variable to its goal

Hybrid Executive Transitions to Next Epoch when goal for each variable is achieved

What if there’s a disturbance?

Acceleration pulse at start Trajectory gets to goal pos. at wrong time

What if there’s a disturbance? Acceleration pulse at start Trajectory gets to goal pos. at wrong time With wrong velocity

Dealing with disturbance Expand goal region Goal setpoint

Dealing with disturbance Expand goal region Goal region

Dealing with disturbance Expand goal region Adjust gains

Dealing with disturbance Expand goal region Adjust gains –Allows for increasing controllable duration in goal region

Dealing with disturbance Expand goal region Adjust gains –Allows for increasing controllable duration in goal region –Trajectory can be guaranteed to be in goal pos./vel. region over this entire range.

Dealing with disturbance Expand goal region Adjust gains –Allows for increasing controllable duration in goal region –Trajectory can be guaranteed to be in goal pos./vel. region over this entire range. –Allows initial region to be larger.

What are the limits? How much can gains be adjusted? How large can regions, controllable temporal range be? What is the relation between regions, time, and controllability limits? What is the largest disturbance that can be handled? –What guarantees can be made for successful execution?

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

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

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

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]

Strong and Dynamic Controllability Strong controllability for discrete systems

Strong and Dynamic Controllability Strong controllability for discrete systems t = 0t = 5 Not feasible t = 0

Strong and Dynamic Controllability Strong controllability for discrete systems Dynamic controllability

Strong and Dynamic Controllability Strong controllability for discrete systems Dynamic controllability t = 0 If t(B) = 1, t(C ) = 2 If t(B) = 8, t(C ) = ? (not safe)

What are the limits? How much can gains be adjusted? How large can regions, controllable temporal range be? What is the relation between regions, time, and controllability limits? Is there a notion of strong and dynamic controllability for hybrid systems?

Plan compiler computes limits Computes spatial and temporal regions for all activities

Plan compiler synthesizes controllers Control info expressed as ranges on SISO parameters

How does the plan compiler compute region limits, synthesize controllers? Initial and goal regions

How does the plan compiler compute region limits, synthesize controllers? Initial and goal regions 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

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

How does the plan compiler compute region limits, synthesize controllers? Consider single acceleration spike as control input Spike occurs at beginning

How does the plan compiler compute region limits, synthesize controllers? Consider single acceleration spike as control input Spike occurs at beginning If spike has the right size, results in GFT (Guaranteed Fastest Trajectory)

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

How does the plan compiler compute region limits, synthesize controllers? Spike of right size at end results in GST (Guaranteed Slowest Trajectory)

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

Two spikes provide more controllability Single spike – monotonic Two spikes, opposite directions – monophasic –Velocity does not change sign, but acceleration does GFT GST

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 Maximize controllable temporal range, initial region size Subject to limits on control inputs

Plan Compiler Generate dispatchable state 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

Plan Compiler SQP Formulation For each activityrefers to variable (row in plan) refers to control epoch (column) Parameters being optimized:Initial and goal regions InitialGoal DurationControl parameter ranges

SQP Formulation: Constraints Existence of initial and goal regions Initial Goal Goal region fits inside successor initial region

SQP Formulation: Constraints GFT Trajectories computed analytically (due to SISO abstraction) GFT GST Goal Init GST Temporal controllability

SQP Formulation Synchronization constraints Cost function –Maximize initial region –Minimize goal region –Maximize

Controllable Regions for Lateral CM

Consistent with trial data

Controllable Regions for Forward CM

Nominal not completely consistent with trial data

Controllable Regions for Lateral CM

Strong and Dynamic Hybrid Controllability Lateral Forward

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

Hybrid Dispatcher

Synchronization is important!

Hybrid Dispatcher Executes dispatchable activities Guides each controlled variable to its goal region –May adjust controller parameters, within bounds Timing of goal region arrival can be adjusted by adjusting control parameters Transitions to next control epoch when goal conditions are met

Hybrid Dispatcher Algorithm At start of control epoch, compute goal transition time, –Choose nominal time in range Monitor progress to goal regions –Predict/adjust Attempt transition to next control epoch –If each variable in respective goal region at transition to next control epoch

Monitor Progress Predict If in goal at, do nothing Otherwise, adjust Adjust within compiler-specified bounds Try to get into goal region at

Attempt Transition If each variable in respective goal region at Transition to next control epoch

Roadmap Analysis of three balance strategies Model-based executive Discussion

Analysis of three strategies –when each strategy should be used –what are capabilities (limits) of each strategy

Discussion Ankle torque (strategy 1) limited by support base –when this is insufficient, use strategy 2 to change support base Step adjustment (strategy 2) limited by foot placement constraints –when too constrained, use strategy 3 Angular acceleration about CM (strategy 3) limited by limits on range and speed of motion torso, non-contact limbs –when insufficient - fall

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

Discussion Hybrid executive –Decoupling abstraction provided by multivariable controller very useful –But, can’t just assume all variables are completely decoupled (still part of same body) –Still need to be synchronized at key points (loosely coupled) –Decides interesting trade-off between state- space and temporal controllability

Discussion Multivariable controller –Provides SISO abstraction (linearization, decoupling) used by hybrid executive –Interesting and complex behavior emerges automatically from very simple specification (single setpoint) –Can’t sequence through different qualitative regions; hybrid executive needed for that

Discussion Balance enhancement through use of non- contact segments (3 rd strategy) Balance enhancement through step adjustment (2 nd strategy) Walking on firm and soft ground –Nonlinear spring constants vary from 2,000,000 (less than 1 cm deflection) to 10,000 (up to 10 cm deflection) –Still would like to increase walking speed Walking with push disturbance –More testing in progress

Conclusion Unprecedented level of 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

Plan compiler addendum More on plan compiler

Executable State Plan -State plan cannot be executed directly -Specifies state requirements, but no control info -Executable activity -Adds control info -All region and temporal constraints specified -Successful execution

Hybrid dispatcher controls plant through SISO abstraction - synchronizes SISO systems

Plan Compiler Generates (for each controlled variable) –mode sequence, control parameters Control parameters chosen so that state plan constraints do not become active –Well-known example – preventing saturation

Computing gains that keep constraints inactive Problem solved recently for linear systems with linear constraints –Using LP approach For this problem, system is linear (due to linearization) –Unfortunately, FRI constraint is very non-linear Linearize constraints? Derive simplified, conservative approximations of actual constraints

Focus on Important Variables Planner ensures feasibility for important variables –Constraint approximations satisfied Relies on lower-level control (multivariable controller) to decide which of the less important variables to sacrifice Amount of sacrifice possible represents “reservoir of stability” Scalar quantity, basis for constraint approximations

Control of COM is most important COM accelerated through ground contact COP represents ground contact point Normal walking –force vector goes through COM (Popovic, 2004)

Disturbance conditions Ground force vector not through COM If ZTCOP outside support polygon, then get spin torque about COM

Spin Disturbance Level Spin angular momentum Spin disturbance level Form second-order linear system, control output is Bounds on

Plan Generation by SQP Variables being optimized –Control parameters, mode transition times Equality constraints –Trajectory end positions must match across mode transitions Inequality constraints –Temporal constraints –Limits on Cost function – penalty on

Old Slides Old slides after this

Introduction Robots in structured environments –Limited autonomy –Bolted to ground –Safety guaranteed

Introduction Robots in structured environments –Limited autonomy –Bolted to ground –Safety guaranteed Robots in unstructured environments –Commanded at Task-level –Mobile –Safety not guaranteed

Approach – translating specification into control actions

Multivariable controller decouples plant providing SISO abstraction Elements of y include CM position, body orientation, etc.

Hybrid executive coordinates controllers to move Center of Mass (CM)

Hybrid Dispatcher Algorithm Dispatch() Initialize 2. while (not finished) { MonitorProgress tg = ComputeDesiredArrivalTime feasible? = AdjustProgress(tg) if (not feasible?) abort if (t_current = tg) AttemptTransition} } Initialize() 1. For each controlled variable, var1 2 var1.activity = initial_activity // from plan output nominal parameters to controller } MonitorProgress() 1. For each controlled variable, var1 2var1.t_exp = 3 ComputeTransitionTime(var1) } ComputeDesiredArrivalTime() if no uncertain variable return nominal goal time from plan else { var1 = uncertain variable tg = ComputeBestTransitionTime(var1) return tg} } AttemptTransition() if (all variables in their goal regions and t_current satisfies external temporal constraints) { For each controlled variable, var1 var1.activity = var1.activity.next output nominal parameters for new activity}}

Example Adjustment Guide all variables into their respective goal regions at the same time

Problem Statement Execute state plan Recover from disturbance By utilizing temporal and spatial flexibility in plan

FRI Constraint Goswami, 1999

FRI Constraint Can be expressed, in 2D, as Can be expressed in terms of COM

Torque Balance Re-arranging terms yields This is of the form Orbital torque can be used to move COM –Use spin torque to get extra orbital torque (beyond max provided by ankle torque) –But, there are limits to how long and how hard

State Plan Controllability Transition condition Controllability with respect to particular mode –There exists mode sequence

Hybrid Dispatcher Guides each controlled variable to its goal –By adjusting controller gains Performs mode transitions Treats each controlled variable independently –Possible due to action of plan formulator, decoupling

Dispatcher-Key Assumptions Each controlled variable is output of a linear SISO system Monotonic progress to goal region –Gains are overdamped, no oscillation Gains may be adjusted –Within bounds of dispatchable state plan –To increase/decrease speed to goal

Hybrid Dispatcher Algorithm Monitor progress From current state, compute val_t_min, max –Can be done analytically Feasible (goal region overlaps range of val_t_min, max

Infeasible, increase speed val_t_max < goal_min

Infeasible, decrease speed goal_max < val_t_min

Results Nominal plan

Results Nominal plan execution

Small disturbance Handled by multivariable controller Gain adjustment by dispatcher not necessary

Larger disturbance Requires action by dispatcher Dispatcher adjusts gains

Larger disturbance still Requires re-planning [In progress]

Discussion Compliance at 3 levels –Low-gain controller –Temporal flexibility –Fast replanning Achieved by careful coordination of Plan Formulator, Dispatcher, and Multivariable Controller

Low-gain Control Two approaches High gain Low gain Suppose Vs. Kp1 10 times greater than Kp2

Discussion [Add points on temporal flexibility, fast replanning]

State plan specifies desired plant state evolution

Task executive and Multivariable Controller

Background Humanoids that track detailed reference trajectories –(Hirai, 1997), (Hodgins, 1996) Requires high-gain control

Two-stage Approach Plant output as function of state Taking partial derivatives yields Differentiating again Ex. COM as function of joint positions

Two-stage Approach First stage converts from workspace accelerations to joint space accelerations Second stage converts from joint space accelerations to joint torques Elements of y vector: –COM, body orientation, swing foot position, swing foot orientation

Analysis of reaction Non-contact limbs used in two ways –To shift FRI, and to shift COM Initially, body leaning too far to left –Stance ankle action alone would not prevent tipping further Body leans further to left, swing leg swings to right –Negative angular acceleration about forward (x) axis

Analysis of reaction Negative angular acceleration about forward (x) axis –Allows negative lateral (y) linear acceleration of COM –Without requiring change in FRI As COM moves to desired position –FRI moves away from edge of support polygon –Body, swing leg can return to desired position Interesting to note that –Initial movement of swing leg to right is beneficial in moving COM in desired direction –Movement of body to left is not!

Robustness to Varying Ground Conditions Soft, springy groundFirmer ground

Need for Dispatchable State Plan SISO abstraction requires control parameters State plan doesn’t have this Need to generate dispatchable state plan

Example: Computing Goal Region Suppose Temporal range: [1, 2] Compute goal region, GFT, GST (initial region) Controllable iff:

Computing Goal Region-More Examples

Background Model-based planning and execution systems –Titan, Kirk (Williams, 2001) –Combined TPN, path planning (Walcott, 2004) Temporal plan executives –Dynamic controllability (Morris, 2001), (Stedl, 2004)