Biped Locomotion on the HOAP-2 robot

29
Biped Locomotion C. Lathion Introduction Biped Walking HOAP-2 The controller Coupling Trajectories Implementation Pressure Sensors Parameters Extensions Speed Stabilization Results Performance Robustness Conclusion Biped Locomotion on the HOAP-2 robot Computer Science Master Project Christian Lathion 10 January 2007

Transcript of Biped Locomotion on the HOAP-2 robot

Page 1: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Biped Locomotion on the HOAP-2 robotComputer Science Master Project

Christian Lathion

10 January 2007

Page 2: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Outline

1 IntroductionBiped WalkingThe HOAP-2 Robot

2 The controllerCouplingJoint Trajectories Generation

3 ImplementationFeet Pressure SensorsFinding Optimal Parameters

4 Extensions to the controllerSpeed ControlStabilization Techniques

5 Obtained resultsPerformanceRobustness of the Gait

6 Conclusion

Page 3: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Biped Walking

• The goal of this project is to implement biped locomotion on ahumanoid robot, based on an existing controller.

• Not an easy task, even if we are used to do it naturally:

• Nonlinear dynamics of the body (inverted pendulum).• Many degrees of freedom.• Interactions with the environment.• . . .

• Main difficulty: achieve stability.

Page 4: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Biped Walking

• Several different methods have been proposed for artificial bipedlocomotion:

• Trajectory-based: Use offline optimization and constraintsatisfaction algorithms.

• Heuristics: Similar technique, but uses heuristic or evolutionaryalgorithms.

• Central Pattern Generators: Bio-inspired approach, model thenodes – located in the spinal cord – that control vertebrateslocomotion.

• . . .

• But still no perfect solution.

Page 5: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

The HOAP-2 Robot

• The controller is applied to the HOAP-2 robot:

• Humanoid for Open Architecture Platform

• Developed by Fujitsu Automation Ltd.• 7kg, 50cm• 25 degrees of freedom• Modelized under Webots

Page 6: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Frequency and phase coupling

• The controller (φc ) and robot (φr ) phases follow a differentialequations system:

φc = ωc + Kc sin (φr − φc)

φr = ωr + Kr sin (φc − φr )

• This synchronizes the controller dynamics with the robot.

• In practice, φr is obtained through the feet pressure sensors, asthe robot natural frequency ωr and coupling constant Kr areusually unknown.

• Controller phase equation is solved by numerical integration.

Page 7: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Frequency and phase coupling

• A strong coupling value is necessary to obtain the desiredlocking effect:

• Kc = 2.0

-1

-0.5

0

0.5

1

0 1000 2000 3000 4000 5000 6000

time [ms]

ωrωc (Kc = 2)

Page 8: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Frequency and phase coupling

• A strong coupling value is necessary to obtain the desiredlocking effect:

• Kc = 4.0

-1

-0.5

0

0.5

1

0 1000 2000 3000 4000 5000 6000

time [ms]

ωrωc (Kc = 4)

Page 9: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Frequency and phase coupling

• A strong coupling value is necessary to obtain the desiredlocking effect:

• Kc = 5.0

-1

-0.5

0

0.5

1

0 1000 2000 3000 4000 5000 6000

time [ms]

ωrωc (Kc = 5)

Page 10: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Frequency and phase coupling

• A strong coupling value is necessary to obtain the desiredlocking effect:

• Kc = 9.0

-1

-0.5

0

0.5

1

0 1000 2000 3000 4000 5000 6000

time [ms]

ωrωc (Kc = 9)

Page 11: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Joint Trajectories

• Trajectories are generated from the controller phase by usingsimple sinusoidal patterns.

• Divided in stepping and biped walking sub-movements.

θdhipr

(φc) = Ahiprsin

(

φ1c

)

θdankler

(φc) = Aanklersin

(

φ1c −

π

4

)

θdhipp

(φc) = Ap sin(

φ1c

)

+ Ahipssin

(

φ2c

)

+ θreshipp

θdkneep

(φc) = − 2Ap sin(

φ1c

)

+ θreskneep

θdanklep

(φc) = Ap sin(

φ1c

)

− Aanklessin

(

φ2c

)

+ θresanklep

Page 12: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Joint Trajectories

• Trajectories are generated from the controller phase by usingsimple sinusoidal patterns.

• Divided in stepping and biped walking sub-movements.

θdhipr

(φc) = Ahiprsin

(

φ1c

)

θdankler

(φc) = Aanklersin

(

φ1c −

π

4

)

θdhipp

(φc) = Ap sin(

φ1c

)

+ Ahipssin

(

φ2c

)

+ θreshipp

θdkneep

(φc) = − 2Ap sin(

φ1c

)

+ θreskneep

θdanklep

(φc) = Ap sin(

φ1c

)

− Aanklessin

(

φ2c

)

+ θresanklep

Page 13: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Joint Trajectories

• Trajectories are generated from the controller phase by usingsimple sinusoidal patterns.

• Divided in stepping and biped walking sub-movements.

θdhipr

(φc) = Ahiprsin

(

φ1c

)

θdankler

(φc) = Aanklersin

(

φ1c −

π

4

)

θdhipp

(φc) = Ap sin(

φ1c

)

+ Ahipssin

(

φ2c

)

+ θreshipp

θdkneep

(φc) = − 2Ap sin(

φ1c

)

+ θreskneep

θdanklep

(φc) = Ap sin(

φ1c

)

− Aanklessin

(

φ2c

)

+ θresanklep

Page 14: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Joint Trajectories

• Limb movements are synchronized by using four differentphases:

• π phase difference for right/left limb movement.•

π

2difference between stepping and walking.

• αi =ˆ

0,π

2, π,

2

˜

φic = ωc + Kc sin

(

φr (χ) − φic + αi

)

• θresi angles define the rest posture of the robot joints.

• An additional phase difference of −π

4was introduced in the

ankle joint equation.

• Without it, over-oscillations occured, leading to the robot fall.• As a side-effect, oscillations of the foot are present during the

stance phase.

Page 15: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Joint Trajectories

• Coupling changes the shape of the joint trajectories.

• Simple sinusoidal trajectories are not sufficient to generate thewalking pattern.

• The resulting frequency also rises from π

2to ≃ 3π

2.

-30

-20

-10

0

10

20

30

40

50

0 2000 4000 6000 8000 10000 12000 14000 16000

angl

e [d

eg]

time [ms]

hip rollankle roll

hip pitknee pitankle pit

(Uncoupled)

Page 16: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Joint Trajectories

• Coupling changes the shape of the joint trajectories.

• Simple sinusoidal trajectories are not sufficient to generate thewalking pattern.

• The resulting frequency also rises from π

2to ≃ 3π

2.

-30

-20

-10

0

10

20

30

40

50

0 1000 2000 3000 4000 5000

angl

e [d

eg]

time [ms]

hip rollankle roll

hip pitknee pitankle pit

(Coupled)

Page 17: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Feet Pressure Sensors

• Unique sensory input of thecontroller.

• Four sensors located under eachfoot.

• Robot phase φr is detected fromthe position and velocity of thecenter of pressure x:

φr (χ) = − arctan

(

x

x

)

• Sensors can also approximate thecontact angle with the ground.

Page 18: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Parameters Evaluation

• Small parameter set → an exhaustive search is possible.

0

5

10

15

20

0 2 4 6 8 10 12 14 2

4

6

8

10

12

steps

hip ampl [deg]

(Stepping)

• Gives a precise view of the working parameters combinations andthe resulting performance.

• Ahiprand Aankler

are linked by a ≃ linear relationship.

• → The number of parameters can be reduced.

Page 19: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Parameters Evaluation

• Small parameter set → an exhaustive search is possible.

0

0.5

1

1.5

2

2.5

3

0 2 4 6 8 10 12 14 0

2

4

6

8

10

12

14

distance

hip ampl [deg]

(Walking)

• Gives a precise view of the working parameters combinations andthe resulting performance.

• Ahipsand Aankles

are linked by a linear relationship.

• → The number of parameters can be reduced.

Page 20: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Speed Control

• One of the main limitations of the proposed coupling scheme.

• The gait frequency cannot be controlled, but depends on therobot dynamics and coupling constant Kc :

ω∗ =

Kr ωc + Kcωr

Kc + Kr

• Target frequency ωc has almost no influence.

• On HOAP-2, the resulting frequency is ω∗ ≃ 3π

2, which is a bit

too fast to be realistic.

• Unfortunately, Kc cannot be decreased without breaking thewalking movement.

Page 21: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Speed Control

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0 2 4 6 8 10 12 14

spee

d [m

/s]

hip ampl [deg]

speed

• Consequently, we can only control the step length.

• Sufficient to control the locomotion speed (linearly).• But cannot produce a truly realistic gait.

Page 22: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Stabilization

• The proposed controller doesn’t provide a real stabilizationmechanism.

• This can be an issue in case of perturbances.

• A first and simple way of minimizing the robot oscillations is toadd arm balancing.

• Opposed to the leg displacement.• Also helps to keep a straight displacement direction.

Page 23: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Stabilization

• Foot placement is crucial to obtain a stable gait.

• Adding supplementary control on the ankle joints can give abetter contact with the ground.

-30

-25

-20

-15

-10

-5

0

0 500 1000 1500 2000

angl

e [d

egre

es]

time [ms]

originalcorrected

• We used a PID controller, but results were not as good asexpected.

• Tendency to “break” the joints coordination.• The whole controller should be adapted.

Page 24: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Performance

• Top achieved speed: ∼ 0.15m/s (0.54 km/h).

• Perfect stability when unperturbed (> 5 min continuous walk).

• Quite realistic gait (straight posture) even if accelerated.

• But sagittal plane oscillations and undesired direction changesappear as speed increases.

Page 25: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Resistance to perturbations

• Many perturbations can arise out of the perfect simulated world:

• External forces, continuous (e.g. wind) or discrete (e.g. ashock).

• Ground irregularities (e.g. bumps, slippy floor).• Slope, obstacles.• . . .

• Adapting to a perturbation can require a complex set of actions(reflexes, posture change etc.).

• The controller should return smoothly into a stable walk cycle.

• While this is natural for a human, robots usually don’t performvery well against perturbations.

Page 26: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Resistance to perturbations

• Robustness can only be roughly approximated.

• Impossible to model all possible perturbations under Webots.• The moment when the perturbation occurs is also very

important.

• Able to climb small slopes with minor modifications:

• Shorter step length.• More leg lifting.

• Able to walk on different surfaces.

• External forces are more problematic.

Page 27: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Pros and Cons of the proposed Controller

√Simple and intuitive.

√Easy to add new features and capabilities.

√Adaptive to its environment.

√Generic controller (successful on Sony Qrio, HOAP-2 andcustom human-sized robot).

X Not as flexible as other methods (e.g. CPGs).

• Only sinusoidal trajectories can be modeled.• Global joints synchronization.

X Doesn’t provide a formal design methodology.

• No automated optimisation tools.

X Hand tuning is mandatory.

Page 28: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Possible improvements

• Stabilize the gait (should allow a higher displacement speed).

• Direction control (partially implemented).

• Clean start and stop.

• Climbing stairs.

• . . .

Page 29: Biped Locomotion on the HOAP-2 robot

Biped

Locomotion

C. Lathion

Introduction

Biped Walking

HOAP-2

The controller

Coupling

Trajectories

Implementation

Pressure Sensors

Parameters

Extensions

Speed

Stabilization

Results

Performance

Robustness

Conclusion

Questions?