biped locomotion on the hoap-2 robot
TRANSCRIPT
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
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
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.
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.
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
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.
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)
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)
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)
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)
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
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
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
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, π,
3π
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.
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)
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)
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.
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.
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.
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.
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.
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.
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.
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.
•
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.
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.
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.
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.
• . . .
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?