For stable locomotion of a biped robot, motion control with constraints for stability, workspace, etc. is needed. MPC is one of the most successful control strategies, which reflects constraints and the actual state of the dynamic system based on the model-based prediction. This paper presents a method to generate stable running motion based on MPC. The proposed method consists of two parts. In the first stage, the trajectory of the COM is generated based on linear MPC with the constraint for stability using a friction cone. In the second stage, a momentum controller based on QP with kinematic constraints on the workspace is applied to make the robot follow the generated COM trajectory.
4.1. COM Trajectory Generation Based on MPC
To generate a COM trajectory, the D-LIPM in
Section 2 is used. The position and velocity of the COM are used as the states, and the acceleration is used as the control input. The vertical and horizontal dynamic models of the COM are expressed based on the relation between position, velocity, and acceleration in discrete time as follows
where
and constant
T denotes the computation step-time interval. Here,
and
are the accelerations in the horizontal and vertical directions. By using the predict models, the states of a biped robot in the prediction horizon of
can be expressed respectively [
37]:
where
The objective function of the vertical motion is defined to follow the reference position and velocity of the COM and keep the
to the calculated reference value based on Equation (
4). The minimized problem for vertical motion can be expressed as
where
,
and
respectively denote the weights of optimization for control input, position, and
.
consists gravitational acceleration,
g.
denotes reference position and speed in the vertical direction at the end of each support phase, i.e.,
, which can be calculated based on Equations (
5) and (
6) with calculated
.
Because the GRF in the vertical direction,
, must be positive value in the support phase [
26], the contact force in the vertical direction is constrained:
where
m denotes the total mass of the biped robot;
denotes maximum acceleration in the vertical direction which is applied to constraint
within the desired range set by the user. This optimization problem can be expressed as a canonical quadratic problem:
subject to
where
is identity matrix.
The objective function of horizontal motion is designed to follow the reference position and velocity of the COM and keep the ZMP close to the center of the supporting foot for stability based on Equation (
8). The minimized problem for horizontal motion can be expressed as
where
,
and
respectively denote the weights of optimization for control input, the position of the COM, and ZMP.
denotes reference position and speed in the horizontal direction at the end of each support phase, i.e.,
, which can be calculated based on Equations (
9) and (
10) with calculated foot placement.
For the stable dynamic motion of the COM, constraints based on the friction cone are applied [
38]. The contact force in the horizontal plane is constrained to lie in the friction cone defined by
where
denotes the friction coefficient between the ground and the foot of the robot. These minimized problems can be also expressed as a canonical quadratic form:
subject to
where
From the object functions, the control inputs in the horizontal and vertical direction, i.e.,
and
, are obtained, which are used to generate the COM trajectory of the biped robot based on Equations (
17) and (
18).
Typically, a biped robot has several joints, and the motion of each joint affects its COM. To follow the generated COM trajectories, for this reason, trajectory generation of the joints which realize the desired COM trajectory is needed [
18,
26,
39]. To generate the trajectory of joints to follow the COM trajectory, in this paper, momentum control is applied, which is presented in
Section 4.2.
4.2. Momentum Control Based on Optimization
In this paper, a QP-based momentum control, taking into account the constraints of the workspace, is proposed to follow the desired COM trajectory. When the floating-base of the biped robot has
n degree-of-freedom (DOF), as shown in
Figure 4, its linear and angular momentum,
and
, are described by
where
is the position and orientation vector of the hip link with respect to the supporting foot;
and
are respectively the position and orientation of the hip link;
denotes the joint angle of the arms and legs;
and
are respectively the linear and angular momentum of the robot; and
and
are the inertia matrices which indicate how the velocity of hip link and all the joints affect the linear and angular momentum respectively. For the momentum control, the dynamics model is defined based on Equation (
27) and the relation between position, velocity, and acceleration in discrete time:
where
and
denote
zero and identity matrix, respectively;
denotes the acceleration of the hip link; and
T denotes the sampling time of the controller. By using the dynamic model, the optimization problem is formulated as
where
,
and
are the weights. Typically, weights in many optimization problems are constant [
23,
26,
31]. However, for
, a variable weight with respect to the velocity of the biped robot is used instead:
where
is its initial weight for momentum;
is the actual horizontal velocity of the biped robot; and
is a constant scale factor for the velocity of the robot. With this, the effect of the actual velocity of the robot is reflected in the momentum control. The optimization problem for momentum control, i.e., Equation (
30), can be expressed as a canonical quadratic problem as
subject to
where
where
denotes reference momentum with
and
respectively denoting the linear and angular reference momentum; and
and
respectively denote upper and lower boundary of workspace.
Here, the reference momentum is generated based on the COM trajectory and reference angular motion of the hip link:
where
m denotes the total mass of the biped robot;
denotes the inertia of the hip link;
is desired velocity of the COM generated in the first stage of the proposed method;
is desired angular trajectory of the hip link. The desired angular motion of the hip link is generated based on the PD scheme:
where
and
are reference orientation and angular velocities of the hip link, respectively;
and
are proportional and derivative gain, respectively. By minimizing the object functions with the reference momentum, the control input of the hip link,
, is obtained, and the desired trajectory of the hip link is computed based on Equation (
28).
Figure 5 describes the block diagram for proposed methods. First,
and foot placement is computed based on the periods,
and
, and desired velocity,
, set by the user. Based on
and the foot placement, the reference position of the COM for each support phase, i.e.,
and
, are computed. Then, a running trajectory is generated based on the proposed MPC, where the trajectory of COM,
, is generated based on linear MPC with its states,
, and stability constraints using a friction cone. Then, the computed COM trajectory is used as the input to QP based momentum controller as a reference momentum, where the trajectory of the hip link,
, is computed based on its state,
. From the generated trajectory of the hip link and foot, the trajectory of each joint,
, is obtained by inverse kinematics, A PD controller generates the input torque for each joint,
.