To see the code in action, check out this repo [TODO]
To generate the candidate footstep poses, we use a reference trajectory obtained
by integrating a template model under the action of the high-level reference
velocities. After that, we solve two QP problems to find the poses. The template
model is an omnidirectional motion model which allows the template robot to move
along any Cartesian path with any orientation, so as to perform, e.g., lateral
walks, diagonal walks, and so on. A single step has duration
-
Single Support Phase:
-
Duration: The single support phase occupies the initial 70% of the duration
$T$ . -
Timing:
- It begins right after the first double support phase ends, so it starts at
$t = jT$ and ends at$t = jT + 0.7T$ where$j$ is the footstep index. - During this time, only one foot is in contact with the ground.
- It begins right after the first double support phase ends, so it starts at
-
Duration: The single support phase occupies the initial 70% of the duration
-
Double Support Phase:
-
Duration: The duration of the double support phase is
$0.30T$ . -
Timing:
- The jth double support phase starts at
$t = jT + 0.7T$ and ends at$t = jT + T$ .
- The jth double support phase starts at
-
Duration: The duration of the double support phase is
-
Input
- Current time
$t_k$ - State, containing information on support foot, walk phase and timestamp about the last footstep
- Current time
-
Output
- F planned footsteps over the planning horizon P with associated timestamps and proposed poses
- Moving Constraints (dim C) for every timestep inside control horizon with linear interpolation in single support phase
[1] N. Scianca, D. De Simone, L. Lanari and G. Oriolo, "MPC for Humanoid Gait Generation: Stability and Feasibility," in IEEE Transactions on Robotics, vol. 36, no. 4, pp. 1171-1188, Aug. 2020