Next Article in Journal
Magnetically Tunable Adhesion of Magnetoactive Elastomers’ Surface Covered with Two-Level Newt-Inspired Microstructures
Next Article in Special Issue
A Day/Night Leader-Following Method Based on Adaptive Federated Filter for Quadruped Robots
Previous Article in Journal
Cell Type-Specific Effects of Implant Provisional Restoration Materials on the Growth and Function of Human Fibroblasts and Osteoblasts
Previous Article in Special Issue
Design of a Felid-like Humanoid Foot for Stability Enhancement
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Balanced Standing on One Foot of Biped Robot Based on Three-Particle Model Predictive Control

1
Shenzhen International Graduate School, Tsinghua University, Shenzhen 518055, China
2
Department of Automation, Tsinghua University, Beijing 100084, China
*
Author to whom correspondence should be addressed.
Biomimetics 2022, 7(4), 244; https://doi.org/10.3390/biomimetics7040244
Submission received: 29 November 2022 / Revised: 12 December 2022 / Accepted: 13 December 2022 / Published: 16 December 2022
(This article belongs to the Special Issue Bio-Inspired Design and Control of Legged Robot)

Abstract

:
Balancing is a fundamental task in the motion control of bipedal robots. Compared to two-foot balancing, one-foot balancing introduces new challenges, such as a smaller supporting polygon and control difficulty coming from the kinematic coupling between the center of mass (CoM) and the swinging leg. Although nonlinear model predictive control (NMPC) may solve this problem, it is not feasible to implement it on the actual robot because of its large amount of calculation. This paper proposes the three-particle model predictive control (TP-MPC) approach. It combines with the hierarchical whole-body control (WBC) to solve the one-leg balancing problem in real time. The bipedal robot’s torso and two legs are modeled as three separate particles without inertia. The TP-MPC generates feasible swing leg trajectories, followed by the WBC to adjust the robot’s center of mass. Since the three-particle model is linear, the TP-MPC requires less computational cost, which implies real-time execution on an actual robot. The proposed method is verified in simulation. Simulation results show that our method can resist much larger external disturbance than the WBC-only control scheme.

1. Introduction

1.1. Background

Motion control of a bipedal robot is a typical multi-task control problem. The robot has to keep its balance while moving or standing, interact with the environment, and complete tasks assigned by the user. Among the various tasks, balancing under external disturbance is a fundamental one for the robot to complete other tasks. Therefore, the balance control of a bipedal robot while walking or standing on both feet has been widely studied in recent years. However, the situation where robots stand on one leg and keep their balance has received little attention. Examples of such a situation include a humanoid trying to reach a distant object with its arms or a bipedal robot kicking a football. Compared with balancing on both feet, one-foot balancing presents new challenges, such as significantly reduced support polygons and reduced overall system stability. Furthermore, if the swing leg is heavy enough, its motion may significantly affect the motion of the entire robot [1]. In this sense, the problem of robot balance control with one foot is similar to that of robot balance control with two arms [2]. From a physical point of view, maintaining the balance of a biped robot with its arms reduces the difficulty of the control problem because the robot’s supporting polygon remains unchanged, while extra degrees of freedom can be used to accomplish the balance task [3]. Therefore, the single-leg balancing stance method can be applied to dual-arm robots and vice versa.

1.2. Motivation

A bipedal robot’s balancing on one foot is a typical multi-task control problem. The robot must keep the torso and the stance foot stable, move the swing foot properly, and conform to external and internal constraints. The whole-body control (WBC) method has been widely adopted in the balancing control of bipedal robots due to its capabilities to generate dynamically feasible control outputs and to handle various tasks and constraints [4]. However, the WBC only considers the current states of the robot and cannot handle strongly infeasible reference trajectories [5]. The model predictive control (MPC) is commonly used in conjunction with WBC to complement these insufficiencies [6]. In case of large external disturbance, the MPC foresees the robot’s future states according to a specific dynamical model and acts as an online re-planner for the WBC. However, the full dynamics of a one-foot standing robot are high degrees of freedom and strongly nonlinear. Therefore, an MPC employing full dynamics has to solve a complicated nonlinear optimization problem. Thus, the full-dynamics MPC is computationally expensive and cannot be executed in real time on an actual robot [7,8,9,10,11].
Current MPC algorithms for legged robots usually adopt simplified models [12], for example, the linear inverted pendulum (LIP) model [2,13,14], the single particle model [15] or the single rigid body (SRB) model [6], to balance between model precision and computation time. In the case of balancing on one foot, these models are unsuitable because they adopt the dynamics model of a particle or a rigid body. Thus, the motion of the swinging leg cannot be predicted in MPC. In this research, we propose to adopt a three-particle model in the model predictive control, which is called the three-particle model predictive control (TP-MPC) approach. It considers the motion of the swing leg and requires far less computation time than a full-dynamics MPC. As a result, the TP-MPC combined with the WBC will solve the problem of one-foot balance control for practical biped robots with real-time computing requirements.

1.3. Related Work

Simplified models have been widely used in the balance control of bipedal robots. For example, Vukobratovic et al. first proposed the zero moment point (ZMP) concept and applied it to balance a bipedal robot [16]. Next, Kajita et al. proposed the LIP model, which simplifies the biped robot into a single mass point moving horizontally and connected to the ground by a massless retractable stick [17]. Finally, Pratt et al. extended the LIP model to a Linear Flywheel Inverted Pendulum Model, which takes the robot’s angular momentum into account [18]. Their method can resist a large external disturbance by computing the robot’s Capture Point and Capture Region. Li et al. used the momentum to control the balance of a biped robot, and they found that linear momentum was more critical than angular momentum in the balance control task. When the two momentum tasks cannot be satisfied simultaneously due to a significant disturbance, the linear momentum will be given priority [19].
WBC has also been applied to the bipedal robot’s balancing. Xie et al. used the hierarchical WBC to maintain a balance of a standing biped robot [20]. Their algorithm can execute on an onboard computer in real time by optimizing the computing process. However, their control scheme needs a planner to generate feasible trajectories followed by the WBC to resist large external disturbances. Kim et al. proposed a new whole-body control approach called whole-body motion control [21]. It can realize dynamic walking on a bipedal robot with a passive ankle and maintain balance under external disturbance.
Model predictive control repeatedly solves a finite-horizon optimal control problem starting from the system’s current states [22]. Moreover, the MPC can prepare for future motions in advance. Therefore, it is very suitable for highly dynamic motion control of legged robots. Li et al. applied a single rigid body model predictive control to a biped robot with light legs [23]. The MPC generates optimal contact forces and torques at each foot, which are converted to joint torque commands through contact Jacobians. Their method enables the robot to walk at a speed of 1.6 m/s on complex terrains and achieve a wide range of dynamic motions. Luo et al. proposed a three-mass model predictive control method for gait control of biped robots [24]. Their planar three-mass model considers the robot’s ZMP and angular momentum. The swing leg trajectories are generated by heuristics rather than the MPC. Therefore, their method did not utilize the swing leg to balance the robot.
From a biomimicry point of view, swinging the legs is crucial for the balanced control of the torso [1]. Boston Dynamics released a video in 2013 of using swinging legs and arms to adjust posture but did not release relevant technical details [25]. To the best of our knowledge, other than the two works mentioned above, no literature has been published on the use of swinging legs to control the balance of biped robots.To the best of our knowledge, literature has yet to be published on the balance control of biped robots using the swinging leg.

1.4. Contribution

The main contributions of this paper are as follows:
(1)
The proposed TP-MPC method can generate feasible swing leg trajectories that balance the robot while standing on one foot. The WBC tracks the generated swing leg trajectories. As a result, the overall control scheme can resist large external disturbances.
(2)
The TP-MPC catches the main effects of the swing leg motion while being simple enough to operate at the same frequency as the WBC.
The overall structure of this paper is as follows: In Section 2, the three-particle model and the TP-MPC are derived. Section 3 introduces the hierarchical whole-body control approach and the overall control scheme. Section 4 discusses the simulation setups and results. Finally, Section 5 is for the conclusions and future work.

2. Three-Particle Model Predictive Control

In this section, we derive the three-particle model predictive control method. First, we introduce the simplified three-particle model for a bipedal robot standing on a single foot. Our MPC method requires to solve repeatedly a discrete, finite-horizon optimal control problem as follows:
min X , U = k = 0 n 1 x k + 1 x k + 1 , r e f Q k + u k R k
s . t . x k + 1 = A k x k + B k u k , k = 0 , 1 , , n 1
lb k C k u k ub k , k = 0 , 1 , , n 1
where n is the MPC’s prediction length; x k and x k , r e f are the actual state and reference state at step k, u k is the input of step k, and Q k and R k are the weight matrices, λ Γ = λ Γ λ means the weighted value of λ of weight Γ . Equations (2) and (3) are equality and inequality constraints, respectively.

2.1. Three-Particle Simplified Model

Figure 1 shows the three-particle simplified model. The stance leg of the biped robot is fixed, and the position of the robot’s center of mass can be adjusted by moving the torso and the swing leg to fall near the desired position. Here, we simplified the legs and the torso into three mass points without rotational inertia. In most cases, the torso’s center of mass is located directly above the midpoint of the two hip joints but has an offset in the sagittal direction.
As shown in Figure 1, p s t = p s t , x p s t , y p s t , z , p s w = p s w , x p s w , y p s w , z are the positions of the end of the stance leg and the swing leg in the world coordinate system, p b = p b , x p b , y p b , z is the position of the torso in the world coordinate system, p ˙ s t = p ˙ s t , x p ˙ s t , y p ˙ s t , z , p ˙ s w = p ˙ s w , x p ˙ s w , y p ˙ s w , z are the velocities of the end of the stance leg and the swing leg in the world coordinate system, p ˙ b = p ˙ b , x p ˙ b , y p ˙ b , z is the velocity of the torso in the world coordinate system. m s t , m s w , and m b denote the mass of the stance leg, swing leg, and torso, respectively. In general, bipedal robots are symmetrical in the y direction, so the hip joint’s distance from the hip’s center in the y direction is l y . Let the distance between the torso center of mass and the hip plane be l z , and l x is the distance between the torso center of mass in the x direction and the hip motor of both legs.
Let p m , s t , p m , s w be the center of mass position of the stance leg and the swing leg, respectively. To simplify the model, we assume that each leg’s center of mass lies on the midpoint of the hip and foot, which means
p m , s t = 1 2 p b , x + l x + p s t , x p b , y + l y + p s t , y p b , z l z + p s t , z
p m , s w = 1 2 p b , x + l x + p s w , x p b , y l y + p s w , y p b , z l z + p s w , z
The robot system’s center of mass can be derived as follows:
m p C o M = m b p b + m s t p m , s t + m s w p m , s w
where m = m b + m s t + m s w represents the robot’s total mass. Therefore, the robot’s center of mass at time k is:
p C o M , k = m b p b , k + m s t p m , s t , k + m s w p m , s w , k m
Let x = p b p s w p ˙ b p ˙ s w be the state variables of the system, u = p ¨ b p ¨ s w be the control input. For the model predictive control design, using Taylor expansion, we obtain the state equation of the discrete-time linear system as:
x k + 1 = I 3 × 3 0 3 × 3 Δ t I 3 × 3 0 3 × 3 0 3 × 3 I 3 × 3 0 3 × 3 Δ t I 3 × 3 0 3 × 3 0 3 × 3 I 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 I 3 × 3 A x k + 1 2 Δ t 2 I 6 × 6 Δ t I 6 × 6 I 3 × 3 0 3 × 3 Δ t I 3 × 3 0 3 × 3 0 3 × 3 I 3 × 3 0 3 × 3 Δ t I 3 × 3 0 3 × 3 0 3 × 3 I 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 I 3 × 3 B u k
Substituting Equations (4) and (5) into Equation (7) yields the location of the biped robot’s center of mass:
p C o M , k = 1 m m 1 I 3 × 3 m 2 I 3 × 3 0 3 × 6 m s t x s t + ( m s w + m s t ) l x m s t y s t + ( m s w m s t ) l y m s t z s t ( m s w + m s t ) l z C x k + 1 2 m m s t x s t + ( m s w + m s t ) l x m s t y s t + ( m s w m s t ) l y m s t z s t ( m s w + m s t ) l z D
where m 1 = 1 2 ( m s w + m s t ) + m b and m 2 = 1 2 m s w .

2.2. Tasks

For the one-foot balance control of a biped robot, the primary task is to minimize the position and velocity tracking errors of the robot’s center of mass. The position tracking error of the swing leg should also be minimized. Moreover, the system input should be regularized to avoid excessive joint torques. Therefore, we formulate the cost function of the MPC as follows:
J = min U k = 1 n p C o M , k p C o M , r e f , k Q + p ˙ C o M , k T + p ¯ s w , k p ¯ s w , r e f , k S + p ¯ b , k p ¯ b , r e f , k W + u k 1 R
where p C o M , k p C o M , r e f , k Q is the CoM position tracking task where p r e f , k is the reference trajectory of the CoM; p ˙ C o M , k T is the CoM velocity tracking task, where the desired velocity is set to 0; p ¯ s w , k p ¯ s w , r e f , k S is the position and velocity tracking task of the swing leg, where p ¯ s w , k and p ¯ s w , r e f , k are the actual and desired trajectory of the swing leg, respectively; p ¯ b , k p ¯ b , r e f , k W is the position and velocity tracking task of the torso; p ¯ b , k and p ¯ b , r e f , k are the actual trajectory and the desired trajectory of the torso; u k R is the input penalty term; Q R 3 × 3 , T R 3 × 3 , S R 6 × 6 , W R 6 × 6 , R R 6 × 6 are the correspondent weight matrices.
Substituting Equation (8) into Equation (9), the position of the robot’s center of mass can be expressed as:
p C o M , k = C x k + D = C A x k 1 + C B u k 1 + D
The velocity of the center of mass can be obtained by taking the derivative of Equation (6). Then, its discrete form can be obtained:
p ˙ C o M , k = F x k = F A x k 1 + F B u k 1
where
F = 0 3 × 3 0 3 × 3 m 1 m I 3 × 3 m 2 m I 3 × 3
The position and velocity of the swing leg can be derived by p ¯ s w , k = E x k , where
E = 0 3 × 3 I 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 I 3 × 3
is the selection matrix. Similarly, for the torso position and velocity, p ¯ b , k = G x k , where
G = I 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 I 3 × 3 0 3 × 3

2.3. Constraints

In order to ensure the real-time performance of the model predictive control algorithm, there should not be too many constraints in the MPC. Here, we only constrain the length of the swing leg to avoid the kinematic singularity. Since the Cartesian distance L = ( x x 1 ) 2 + ( y y 1 ) 2 + ( z z 1 ) 2 is a nonlinear function of coordinates x , y , z , we use the Manhattan distance instead. The swing leg’s length constraint is written as
x b x s w + y b y s w + z b z s w L l e g
Take the intermediate variable s l e g = s x s y s z , which satisfies
s l e g p b p s w s l e g p s w p b
Then, s l e g L l e g is equivalent to the constraints of Equation (16). The matrix form of the constraints can be derived as:
s l e g C 1 x k s l e g C 2 x k 1 s l e g L l e g
where
C 1 = I 3 × 3 I 3 × 3 0 3 × 3 0 3 × 3
C 2 = I 3 × 3 I 3 × 3 0 3 × 3 0 3 × 3
1 = 1 1 1

2.4. MPC Optimization Problem

2.4.1. Tasks

In order to improve the calculation efficiency, we eliminate the intermediate variables by substituting system dynamics into the cost function. Equation (8) can be expanded to
x 1 = A x 0 + B u 0 x 2 = A x 1 + B u 1 = A 2 x 0 + A B u 0 + B u 1 x n = A x n 1 + B u n 1 = A n x 0 + A n 1 B u 0 + + A B u n 2 + B u n 1
Rewrite Equation (22) into matrix form as
x 1 x 2 x n X = A A 2 A n A ˜ x 0 + B 0 0 A B B 0 A n 1 B A n 2 B B B ˜ u 0 u 1 u n 1 U
Then, by replacing the matrices with X , A ˜ , B ˜ and U , Equation (23) can be rewritten as:
X = A ˜ x 0 + B ˜ U
Similarly, for the robot’s center of mass position,
P C o M = C ˜ X + D ˜
where C ˜ = diag ( C , C , , C ) R 3 n × 12 n , D ˜ = D , D , , D R 3 n × 1 . The CoM velocity can be written as:
P ˙ C o M = F ˜ X
where
F ˜ = diag ( F , F , , F ) R 3 n × 12 n
The position and velocity equations of the swing leg can be written as:
P ¯ s w = E ˜ X
where
E ˜ = diag ( E , E , , E ) R 6 n × 12 n
Similarly, the position and velocity equations of the torso can be written as:
P ¯ b = G ˜ X
where
G ˜ = diag ( G , G , , G ) R 6 n × 12 n
The stacked acceleration vector is as follows:
U = u 0 , u 1 , , u n 1 R 6 n × 1
Therefore, the cost function of Equation (10) can be rewritten as
J ˜ = min U P C o M P C o M , r e f Q ˜ + P ˙ C o M T ˜ + P ¯ s w P ¯ s w , r e f S ˜ + P ¯ b P ¯ b , r e f W ˜ + U R ˜
where
Q ˜ = diag ( Q , Q Q ) R 3 n × 3 n
T ˜ = diag ( T , T T ) R 3 n × 3 n
S ˜ = diag ( S , S S ) R 6 n × 6 n
W ˜ = diag ( W , W W ) R 6 n × 6 n
R ˜ = diag ( R , R R ) R 6 n × 6 n
By eliminating the intermediate variables, Equation (33) can be rewritten as
J ˜ = min U C ˜ A ˜ x 0 + C ˜ B ˜ U + D ˜ P C o M , r e f Q ˜ + F ˜ A ˜ x 0 + F ˜ B ˜ U T ˜ + E ˜ A ˜ x 0 + E ˜ B ˜ U P ¯ s w , r e f S ˜ + G ˜ A ˜ x 0 + G ˜ B ˜ U P ¯ b , r e f W ˜ + U R ˜

2.4.2. Constraints

According to Equation (3), the stacked form of the swing leg length constraint can be derived as
1 ˜ C ˜ 1 B ˜ U L ˜ l e g 1 ˜ C ˜ 1 A ˜ x 0 1 ˜ C ˜ 2 B ˜ U L ˜ l e g 1 ˜ C ˜ 2 A ˜ x 0
where
C ˜ 1 = diag ( C 1 , C 1 , , C 1 ) R 3 n × 12 n
C ˜ 2 = diag ( C 2 , C 2 , , C 2 ) R 3 n × 12 n
L ˜ l e g = L l e g , L l e g , , L l e g R n × 1
1 ˜ = diag ( 1 , 1 , , 1 ) R 3 n × n

2.4.3. The Quadratic Programming Problem

The MPC problem can finally be transformed into the following quadratic optimization problem, which can be solved by off-the-shell QP solvers:
min U 1 2 U H q p U + g q p U s . t . lb q p A q p U ub q p
where
H q p = H 1 + H 2 + H 3 + H 4 + H 5
g q p = g 1 + g 2 + g 3 + g 4 + g 5
A q p = 1 ˜ C ˜ 1 B ˜ U 1 ˜ C ˜ 2 B ˜ U
ub q p = L ˜ l e g 1 ˜ C ˜ 1 A ˜ x 0 L ˜ l e g 1 ˜ C ˜ 2 A ˜ x 0
H 1 = 2 B ˜ C ˜ Q ˜ C ˜ B ˜
H 2 = 2 B ˜ F ˜ T ˜ F ˜ B ˜
H 3 = 2 B ˜ E ˜ S ˜ E ˜ B ˜
H 4 = 2 B ˜ G ˜ W ˜ G ˜ B ˜
H 5 = 2 R ˜
g 1 = 2 B ˜ C ˜ Q ˜ P C o M , r e f + C ˜ A ˜ x 0 + D ˜
g 2 = 2 B ˜ F ˜ T ˜ F ˜ A ˜ x 0
g 3 = 2 B ˜ E ˜ S ˜ E ˜ A ˜ x 0 P ¯ s w , r e f
g 4 = 2 B ˜ G ˜ W ˜ G ˜ A ˜ x 0 P ¯ b , r e f
g 5 = 0

3. Hierarchical Whole-Body Control

3.1. Problem Formulation

The generalized coordinates of the floating base bipedal robot are defined as:
q = q f q j R n q
where q f R n f represents the position and orientation of the robot’s floating base relative to the inertial coordinate system, and q j R n j represents the angle of the actuated joints of the robot and n q = n f + n j . The dynamic equation of the system is formulated as
M ( q ) q ¨ + h ( q , q ˙ ) = 0 n f × 1 τ j + J c ( q ) ω c
where q ˙ and q ¨ are the first and second-order derivative of q , respectively, M ( q ) R n q × n q is the mass matrix of the robot, h ( q , q ˙ ) R n q collects the Coriolis force, centrifugal force and gravity, and τ j R n j is the joint torque: ω c , h = f c , h τ c , h R 6 × 1 is the external wrench applied to one leg, including three-dimensional external contact force and three-dimensional contact torque. For the biped robot, ω c = ω c , 0 ω c , 1 R 12 × 1 . J c ( q ) R 12 × n q is the contact Jacobian matrix.
In order to enable the robot to complete tasks with different priorities, a quadratic programming method with priority hierarchy was proposed [26]. The idea is to put the solution space of the upper priority level as a constraint of the lower level in the optimization problem. The optimization problem of the ith level task is defined as:
min χ i A ¯ i χ i b ¯ i Q i s . t . ld ¯ i C ¯ i χ i ud ¯ i A ¯ i 1 a u g χ i = A ¯ i 1 a u g χ i 1 * ld ¯ i 1 a u g C ¯ i 1 a u g χ i ud ¯ i 1 a u g
where A ¯ i and b ¯ i represent the task matrix and target vector corresponding to the current priority. If multiple tasks have the same priority, they could be weighted and combined by a diagonal matrix Q i . C ¯ i , ld ¯ i and ud ¯ i represent the constraint matrix, lower bound, and upper bound of all constraints of the current priority. A ¯ i 1 a u g = A ¯ 1 A ¯ i 1 is the augmented task matrix corresponding to all tasks in the previous priority, and χ i 1 * is the optimal solution of the previous priority. C ¯ i 1 a u g , ld ¯ i 1 a u g , ud ¯ i 1 a u g , with a similar form of A ¯ i 1 a u g , represent the augmented constraint matrix and bounds corresponding to all constraints in the previous priority. Here, the tasks in level i have higher priorities than tasks in level j when i < j . χ i in level i represents the optimization variables to complete the tasks with priorities higher than i + 1 , which means that the final optimal solution of multi-tasks with priority level n l is χ n l * .
Here, we select the generalized joint acceleration and the contact wrench as the optimization variables in each level:
Υ = q ¨ ω c

3.2. Tasks

The definition of each level’s tasks and constraints is given in Table 1. The floating base dynamics task is the basis of all motions of the mobile robot, and all the active forces come from joint motors, so the floating base dynamics task and joint moment constraints are set as the first priority. The linear momentum and trunk posture are critical factors for robot stability, while the ZMP constraint and the plantar friction cone constraint can ensure that the foot of the biped robot will not flip and slip, so these tasks and constraints are set as the second priority. The position of the robot’s feet, posture task, and plantar force screw task are set as the third priority. The detailed definition of each task and constraint is as follows.

3.2.1. Floating Base Dynamics Task

The first six rows of Equation (61) are part of the floating base dynamics, and it can be extracted by a selection matrix S f :
S f M ( q ) q ¨ + S f h ( q , q ˙ ) = S f 0 6 × 1 τ j + S f J c ( q ) ω c
where S f = I n f × n f 0 n f × n j . Rearrange Equation (64) into the form of A ¯ i χ i = b ¯ i :
S f M S f J c q ¨ ω c = S f h
Therefore, A ¯ 0 = S f M S f J R n f × ( n q + 12 ) , b ¯ 0 = S f h R n f .

3.2.2. Centroidal Dynamics Task

Set the desired external force of the centroid task as f G , d e s R 3 , and design the following PD controller to track the centroid task:
f G , d e s = m [ K p , 0 ( p G , t a r p G ) + K d , 0 ( p ˙ G , t a r p ˙ G ) + p ¨ G , t a r ]
A ¯ 1 , C o M = S G A G 0 3 × 12 R 3 × ( n q + 12 )
b ¯ 1 , C o M = f G , d e s S G A ˙ G q ˙ R 3
where p G , t a r R 3 , p ˙ G , t a r R 3 and p ¨ G , t a r R 3 represent the desired position, velocity, and acceleration, respectively; p G R 3 , p ˙ G R 3 and p ¨ G R 3 represent the actual position, velocity, and acceleration, respectively; S G = I 3 × 3 0 3 × 3 represents the selected matrix, A G R 6 × n q represents the centroidal momentum matrix [27]; K p , 0 R 3 × 3 and K d , 0 R 3 × 3 represent PD gain matrices.

3.2.3. Torso Orientation Task

Set the desired acceleration of the torso orientation task as θ ¨ t , d e s R 3 , and design the following PD controller to track the torso orientation:
θ ¨ t , d e s = K p 1 ( θ t , t a r θ t ) + K d 1 ( θ ˙ t , t a r θ ˙ t ) + θ ¨ t , t a r
where θ t , t a r R 3 , θ ˙ t , t a r R 3 , and θ ¨ t , t a r R 3 represent the desired torso orientation angle, angular velocity, and angular acceleration, respectively; θ t R 3 , θ ˙ t R 3 and θ ¨ t R 3 represent the actual torso orientation angle, angular velocity, and angular acceleration, respectively; K p , 1 R 3 × 3 and K d , 1 R 3 × 3 represent PD parameter matrices.
The first six rows in the optimization variable Υ represent the position and orientation of the torso, and the fourth to sixth rows are the torso orientation, so, for the torso orientation task:
A ¯ 1 , t o r s o = 0 3 × 3 I 3 × 3 0 3 × ( n j + 12 )
b ¯ 1 , t o r s o = θ ¨ t , d e s

3.2.4. Feet Position and Orientation Task

As above, let r ¨ f , d e s R 12 be the desired acceleration of the foot posture, and the PD controller is designed as follows:
r ¨ f , d e s = K p 2 ( r f , t a r r f ) + K d 2 ( r ˙ f , t a r r ˙ f ) + r ¨ f , t a r
where r f , t a r R 12 , r ˙ f , t a r R 12 and r ¨ f , t a r R 12 represent the desired foot posture, velocity, and acceleration, respectively; r f R 12 , r ˙ f R 12 and r ¨ f R 12 represent the actual foot posture, velocity and acceleration, respectively; K p , 2 R 12 × 12 and K d , 2 R 12 × 12 represent PD parameter matrices.
The acceleration of the foot of the end can be obtained according to the following equation:
J c q ¨ + J ˙ c q ˙ = r ¨ f , d e s
Then,
A ¯ 2 , f e e t = J c 0 12 × 12 R 12 × ( n q + 12 )
b ¯ 2 , f e e t = r ¨ f , d e s J ˙ c q ˙ R 12

3.2.5. Contact Wrench Task

The contact wrench task tracks the desired contact wrench. Let ω c , d e s be the desired contact wrench. The last 12 dimensions of the optimization variable Υ are the contact wrench, so for the contact wrench task,
A ¯ 2 , w r e n c h = 0 12 × n q I 12 × 12
b ¯ 2 , w r e n c h = ω c , d e s R 12

3.3. Constraints

3.3.1. Joint Torque Constraint

The last ten rows of Equation (61) represent the actuated joints, which should be limited by torque:
S j M ( q ) q ¨ + S j h ( q , q ˙ ) = S j 0 6 × 1 τ j + S j J c ( q ) ω c
where S j = 0 n j × n f I n j × n j represents the selection matrix. The joint torque can be derived as:
τ j = S j M q ¨ + S j h S j J c ω c
Therefore, the joint torque constraint is:
τ l i m i t τ j τ l i m i t
where τ l i m i t R n j is the torque limit of each actuated joint. Then, it can be obtained that:
C ¯ 0 = S j M S j J c R n j × ( n q + 12 )
ld ¯ 0 = τ l i m i t S j h R n j
ud ¯ 0 = τ l i m i t S j h R n j

3.3.2. ZMP Constraint

According to [28,29], the ZMP constraint on x direction can be written as
l x τ c , y f c , x d f c , z l x +
where l x and l x + are the minimum and maximum values of ZMP, d is the vertical distance between the foot joint and the ground. τ c , y is the moment applied to the foot in the direction of y, f c , x , and f c , z represent the force applied to the foot in the direction of x and z. For the y direction, the ZMP constraint can be derived similarly. Rewrite the ZMP constraints in matrix form, where
C z m p = d 0 l x 0 1 0 d 0 l x + 0 1 0 0 d l y 1 0 0 0 d l y + 1 0 0
C ¯ 1 , z m p = 0 4 × 16 C z m p 0 4 × 6 0 4 × 16 0 4 × 6 C z m p
ld ¯ 1 , z m p = 0 8 × 1
ud ¯ 1 , z m p = 8 × 1

3.3.3. Foot Friction Cone Constraint

The stance leg’s ground reaction force should stay in the friction cone to avoid slipping. Here, we employ a pyramid approximation of the friction cone and formulate the foot friction cone constraint as
f x , y μ f z
where μ is the coefficient of friction; f x , y is the resultant force in the direction of x and y, and f z is the force in the direction of z. Expand and arrange the aforementioned equation into the matrix form:
C f = 1 0 μ 1 0 μ 0 1 μ 0 1 μ 0 0 1
C ¯ 1 , f r i c t i o n = 0 5 × 16 C f 0 5 × 3 0 5 × 3 0 5 × 3 0 5 × 16 0 5 × 3 0 5 × 3 C f 0 5 × 3
lb ¯ 1 , f r i c t i o n = 0 10 × 1
ub ¯ 1 , f r i c t i o n = 10 × 1

3.4. Control Framework

Figure 2 shows the overall control framework. Both TP-MPC and WBC run at 1 kHz. The input of TP-MPC is the desired position of CoM, swing leg, and torso in the future n steps. WBC then takes the target trajectory of the swing leg calculated by TP-MPC and the target trajectory of CoM and torso orientation given by the stand planner as input. Although TP-MPC can also obtain the trajectories of the torso and CoM, we do not use them in our controller.

4. Simulation Results and Discussion

4.1. Simulation Setup

The simulation platform is the open-source robot simulator Webots [30]. The control algorithms are implemented with C++. We adopt the rigid body dynamics library (RBDL) [31] to calculate robot kinematics and dynamics and the qpOASES [32] toolkit to solve quadratic programming problems. The simulation environment and the controller run on a computer with an i7-11800H 2.30 GHz processor, 32 GB memory, and RTX3070 8 GB RAM GPU.
The bipedal robot in simulation has ten actuated joints and a total weight of 45 kg. The weights of the torso and a single leg are 22 kg and 11.5 kg, respectively. A single leg accounts for around one-fourth of the robot’s total weight, which implies a significant effect of the swing leg’s motion on the entire robot states. The robot’s soles are 0.22 m-by-0.1 m rectangles.
As shown in Figure 3, the biped robot stands on a single leg, and a rigid hanging ball swings down to hit the robot. The suspension point of the ball is vertically above the robot. The ball is released from the same height and angle with zero initial speed. The robot’s torso is hit 0.8 m above the ground in the frontal or the side direction. The initial height of the robot’s CoM is 0.604 m. Therefore, the hit will exert a net torque concerning the robot’s CoM. By increasing the rigid ball’s mass, the impulse received by the robot at the instance of impact increases, meaning larger external disturbance. We compare our control scheme with the WBC-only control scheme in each experiment. For both control schemes, the WBC part is the same. For the WBC-only scheme, the desired torso and leg trajectories remain equal to their initial values.

4.2. Results

4.2.1. Frontal Impact

In the frontal impact experiment, the rigid ball swings along the x-axis and hits the center of the torso’s front surface. When the mass of the rigid ball is 9 kg or 11 kg, the robot’s CoM trajectories during the impact and recovery stages are shown in Figure 4 and Figure 5, respectively. In the 9 kg case, both control schemes can resist the external disturbance and bring the robot’s CoM back to its initial position, but our MPC-WBC scheme achieves smaller CoM motions and faster recovery than the WBC-only scheme. For both control schemes, Figure 6 and Figure 7 show the actual trajectories of the swing leg’s foot end and the correspondent reference trajectories given to WBC. For the WBC-only scheme, the WBC’s reference trajectories are constant, while the actual trajectories deviate significantly from the reference. This deviation results from the WBC sacrificing the foot-end tracking task for the high-priority CoM tracking task. For our MPC-WBC scheme, the reference foot end trajectories provided by the MPC and the actual trajectories almost coincide with each other. This suggests that the MPC generates swing foot trajectories that are coherent with the CoM tracking targets. It is also observed that the MPC-WBC scheme generates larger swing foot motions than the WBC-only scheme, which confirms the swing leg’s vital role in balancing the robot.
When the ball’s mass increases to 11 kg, the WBC-only scheme causes the divergence of the robot’s CoM trajectories and thus the failure of the entire robot. However, our MPC-WBC scheme can still withstand the impact. Screenshots in Figure 8 depict the robot’s motions during the impact and recovery process under our MPC-WBC scheme. Significant forward and upward motions of the swing leg can be observed after the impact, implying that our method successfully utilizes the swing leg motions to balance the robot.
Figure 9 and Figure 10 show the robot’s centroidal pitch angular momentum. Although the rotational dynamics are not included in our TP-MPC, the simulation results show that our method is sufficient to deal with a certain degree of torque perturbation relative to the CoM.
Figure 11 shows the computation time cost of the TP-MPC algorithm. It can be seen that most of the computations are within 500 μ s.

4.2.2. Side Impact

Compared with frontal impact, the robot is more vulnerable to side impact since the supporting polygon is narrower in the side direction. For side impact, when the ball’s mass is 2.7 kg or 3.2 kg, the robot’s CoM trajectories during the impact and recovery stages are shown in Figure 12 and Figure 13, respectively. Figure 14 and Figure 15 show the actual trajectories of the swing leg’s foot end and the correspondent reference trajectories given to WBC. Figure 16 and Figure 17 show the robot’s centroidal roll angular momentum. Similar to the situation of frontal impact in Section 4.2.1, both control schemes can balance the robot under the 2.7 kg ball’s impact, with our MPC-WBC scheme achieving better performance. Under the 3.2 kg ball’s impact, the WBC-only scheme fails, while our scheme still balances the robot. Screenshots in Figure 18 show that the robot can also side-swing its leg under a side impact. Figure 19 shows the computation time cost of the TP-MPC algorithm when the robot is subjected to a side impact.

4.3. Discussion

In the WBC, the centroidal dynamics task is considered the second-priority task. Due to its existence, the biped robot can mobilize all joints to maintain the position and velocity of the CoM. Therefore, the WBC-only controller has a certain degree of anti-interference ability. However, it may fail to deal with a considerable impact. The centroidal dynamics task is expressed on the acceleration level. When the acceleration required to achieve the second-priority tasks has been satisfied, the third-priority tasks will be executed as much as possible. That is to say, the WBC will execute the task of swing foot to some extent, even if the robot’s CoM has not returned to its initial state. In the WBC-only control scheme, the desired trajectory of the swing foot only keeps the initial state unchanged, which is almost unhelpful for maintaining the stability of the CoM. On the contrary, in our control scheme, the TP-MPC provides the swing foot with the desired motion trajectory that can balance the position of the CoM. The task of swing foot is almost consistent with the centroidal dynamics task in WBC. Therefore, the control scheme with TP-MPC shows a better ability to maintain the stability of the center of mass.
In the above experiments, the maximum computation time of our TP-MPC is 961 μ s, and the average value is about 200 μ s. Through proper optimization in coding, our algorithm can run at the frequency of 1 kHz on the real robot.

5. Conclusions

This paper proposes the three-particle model predictive control scheme to solve the balance control problem of a bipedal robot standing on one foot. We verified our control scheme in simulation. Compared with the WBC-only control scheme, our scheme can resist much larger disturbances and bring the robot back to its initial state much faster. Although the TP-MPC discards the complicated full dynamics of the robot, it can still catch the main effects of the swing leg motions on the robot’s CoM. Furthermore, since our MPC employs only linear dynamics and constraints, it requires little computational cost, implying real-time execution at the same frequencies as the WBC on a real robot.
Our controller also has some deficiencies. The three-particle model may be over-simplified in some cases, for example, where the robot’s legs or torso have large angular velocities. In the future, we plan to improve our simplified model, for example, including the rigid body’s rotational inertia or adding more particles to the model. We also plan to verify our method on an actual bipedal robot.

Author Contributions

Conceptualization, Y.Y. and J.S.; methodology, Y.Y., W.C., S.H. and Q.L.; software, Y.Y., J.S., W.C. and Q.L.; validation, Y.Y.; formal analysis, Y.Y. and J.S.; investigation, Y.Y. and J.S.; resources, M.Z.; data curation, Y.Y., J.S. and Y.G.; writing—original draft preparation, Y.Y., J.S., S.H. and Y.G.; writing—review and editing, M.Z., Y.Y., J.S., S.H., Y.G., W.C., X.C. and X.L.; visualization, Y.Y. and Y.G.; supervision, M.Z. and X.L.; project administration, M.Z.; funding acquisition, M.Z. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Science and Technology Innovation 2030-Key Project under grant 2021ZD0201402.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript; or in the decision to publish the results.

References

  1. Luo, R.C.; Huang, C.W.; Hung, W.C. Bipedal robot push recovery control mimicking human reaction. In Proceedings of the 2016 IEEE 14th International Workshop on Advanced Motion Control (AMC), Auckland, New Zealand, 22–24 April 2016; pp. 334–339. [Google Scholar] [CrossRef]
  2. Ficht, G.; Behnke, S. Direct Centroidal Control for Balanced Humanoid Locomotion. In Proceedings of the 25th Climbing and Walking Robots Conference, Ponta Delgada, Portugal, 12–14 September 2022; Springer: Cham, Switzerland, 2022; pp. 242–255. [Google Scholar]
  3. Raza, F.; Zhu, W.; Hayashibe, M. Balance stability augmentation for wheel-legged biped robot through arm acceleration control. IEEE Access 2021, 9, 54022–54031. [Google Scholar] [CrossRef]
  4. Sentis, L.; Khatib, O. A whole-body control framework for humanoids operating in human environments. In Proceedings of the Proceedings 2006 IEEE International Conference on Robotics and Automation, 2006. ICRA 2006, Orlando, FL, USA, 15–19 May 2006; pp. 2641–2648. [Google Scholar]
  5. Ju, X.; Wang, J.; Han, G.; Zhao, M. Mixed Control for Whole-Body Compliance of a Humanoid Robot. In Proceedings of the 2022 International Conference on Robotics and Automation (ICRA), Philadelphia, PA, USA, 23–27 May 2022; pp. 8331–8337. [Google Scholar] [CrossRef]
  6. Kim, D.; Di Carlo, J.; Katz, B.; Bledt, G.; Kim, S. Highly dynamic quadruped locomotion via whole-body impulse control and model predictive control. arXiv 2019, arXiv:1909.06586. [Google Scholar]
  7. Koenemann, J.; Del Prete, A.; Tassa, Y.; Todorov, E.; Stasse, O.; Bennewitz, M.; Mansard, N. Whole-body model-predictive control applied to the HRP-2 humanoid. In Proceedings of the 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Hamburg, Germany, 28 September–2 October 2015; pp. 3346–3351. [Google Scholar]
  8. Erez, T.; Lowrey, K.; Tassa, Y.; Kumar, V.; Kolev, S.; Todorov, E. An integrated system for real-time model predictive control of humanoid robots. In Proceedings of the 2013 IEEE 13th IEEE-RAS International conference on humanoid robots (Humanoids), Atlanta, GA, USA, 15–17 October 2013; pp. 292–299. [Google Scholar]
  9. Farshidian, F.; Jelavic, E.; Satapathy, A.; Giftthaler, M.; Buchli, J. Real-time motion planning of legged robots: A model predictive control approach. In Proceedings of the 2017 IEEE-RAS 17th International Conference on Humanoid Robotics (Humanoids), Birmingham, UK, 15–17 November 2017; pp. 577–584. [Google Scholar]
  10. Neunert, M.; Stäuble, M.; Giftthaler, M.; Bellicoso, C.D.; Carius, J.; Gehring, C.; Hutter, M.; Buchli, J. Whole-body nonlinear model predictive control through contacts for quadrupeds. IEEE Robot. Autom. Lett. 2018, 3, 1458–1465. [Google Scholar] [CrossRef] [Green Version]
  11. Ding, Y.; Pandala, A.; Park, H.W. Real-time model predictive control for versatile dynamic motions in quadrupedal robots. In Proceedings of the IEEE 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 8484–8490. [Google Scholar]
  12. Nguyen, Q.; Powell, M.J.; Katz, B.; Carlo, J.D.; Kim, S. Optimized Jumping on the MIT Cheetah 3 Robot. In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 7448–7454. [Google Scholar] [CrossRef]
  13. Kajita, S.; Hirukawa, H.; Harada, K.; Yokoi, K. Introduction to Humanoid Robotics; Springer: Berlin/Heidelberg, Germany, 2014; Volume 101. [Google Scholar]
  14. Gibson, G.; Dosunmu-Ogunbi, O.; Gong, Y.; Grizzle, J. Terrain-Aware Foot Placement for Bipedal Locomotion Combining Model Predictive Control, Virtual Constraints, and the ALIP. arXiv 2021, arXiv:2109.14862. [Google Scholar]
  15. Bledt, G.; Kim, S. Implementing regularized predictive control for simultaneous real-time footstep and ground reaction force optimization. In Proceedings of the 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Macau, China, 3–8 November 2019; pp. 6316–6323. [Google Scholar]
  16. Vukobratovic, M.; Frank, A.A.; Juricic, D. On the stability of biped locomotion. IEEE Trans. Biomed. Eng. 1970, BME-17, 25–36. [Google Scholar] [CrossRef] [PubMed]
  17. Kajita, S.; Tani, K. Study of dynamic biped locomotion on rugged terrain-derivation and application of the linear inverted pendulum mode. In Proceedings of the 1991 IEEE International Conference on Robotics and Automation, IEEE Computer Society, Sacramento, CA, USA, 9–11 April 1991; pp. 1405–1406. [Google Scholar]
  18. Pratt, J.; Carff, J.; Drakunov, S.; Goswami, A. Capture point: A step toward humanoid push recovery. In Proceedings of the IEEE 2006 6th IEEE-RAS International Conference on Humanoid Robots, Genova, Italy, 4–6 December 2006; pp. 200–207. [Google Scholar]
  19. Lee, S.H.; Goswami, A. A momentum-based balance controller for humanoid robots on non-level and non-stationary ground. Auton. Robot. 2012, 33, 399–414. [Google Scholar] [CrossRef]
  20. Xie, Y.; Wang, J.; Dong, H.; Ren, X.; Huang, L.; Zhao, M. Dynamic Balancing of Humanoid Robot with Proprioceptive Actuation: Systematic Design of Algorithm, Software, and Hardware. Micromachines 2022, 13, 1458. [Google Scholar] [CrossRef] [PubMed]
  21. Kim, D.; Jorgensen, S.J.; Lee, J.; Ahn, J.; Luo, J.; Sentis, L. Dynamic locomotion for passive-ankle biped robots and humanoids using whole-body locomotion control. Int. J. Robot. Res. 2020, 39, 936–956. [Google Scholar] [CrossRef]
  22. Wieber, P.B. Trajectory free linear model predictive control for stable walking in the presence of strong perturbations. In Proceedings of the 2006 IEEE 6th IEEE-RAS International Conference on Humanoid Robots, Genova, Italy, 4–6 December 2006; pp. 137–142. [Google Scholar]
  23. Li, J.; Nguyen, Q. Force-and-moment-based model predictive control for achieving highly dynamic locomotion on bipedal robots. In Proceedings of the 2021 60th IEEE Conference on Decision and Control (CDC), Austin, TX, USA, 14–17 December 2021; pp. 1024–1030. [Google Scholar]
  24. Luo, R.C.; Chen, C.C. Biped Walking Trajectory Generator Based on Three-Mass With Angular Momentum Model Using Model Predictive Control. IEEE Trans. Ind. Electron. 2016, 63, 268–276. [Google Scholar] [CrossRef]
  25. Boston Dynamics’ Humanoid Robot Atlas Shows Off Its Balancing Skills. Available online: https://laughingsquid.com/boston-dynamics-humanoid-robot-atlas-shows-off-its-balancing-skills/ (accessed on 9 December 2022).
  26. Kanoun, O.; Lamiraux, F.; Wieber, P.B.; Kanehiro, F.; Yoshida, E.; Laumond, J.P. Prioritizing linear equality and inequality systems: Application to local motion planning for redundant robots. In Proceedings of the 2009 IEEE International Conference on Robotics and Automation, Kobe, Japan, 12–17 May 2009; pp. 2939–2944. [Google Scholar] [CrossRef] [Green Version]
  27. Wensing, P.M.; Orin, D.E. Improved Computation of the Humanoid Centroidal Dynamics and Application for Whole-Body Control. Int. J. Humanoid Robot. 2016, 13, 1550039:1–1550039:23. [Google Scholar] [CrossRef] [Green Version]
  28. Bi, Y.; Gao, J.; Lu, Y.; Cao, J.; Zuo, W.; Mu, T. Simulation of Improved Bipedal Running Based on Swing Leg Control and Whole-body Dynamics. In Proceedings of the 2021 6th International Conference on Robotics and Automation Engineering (ICRAE), Guangzhou, China, 19–22 November 2021; pp. 134–140. [Google Scholar] [CrossRef]
  29. Lu, Y.; Gao, J.; Shi, X.; Tian, D.; Jia, Z. Whole-Body Control Based on Landing Estimation for Fixed-Period Bipedal Walking on Stepping Stones. In Proceedings of the 2020 3rd International Conference on Control and Robots (ICCR), Tokyo, Japan, 26–29 December 2020; pp. 140–149. [Google Scholar] [CrossRef]
  30. Michel, O. Webots: Professional Mobile Robot Simulation. J. Adv. Robot. Syst. 2004, 1, 39–42. [Google Scholar]
  31. Felis, M.L. RBDL: An efficient rigid-body dynamics library using recursive algorithms. Auton. Robot. 2017, 41, 495–511. [Google Scholar] [CrossRef]
  32. Ferreau, H.; Kirches, C.; Potschka, A.; Bock, H.; Diehl, M. qpOASES: A parametric active-set algorithm for quadratic programming. Math. Program. Comput. 2014, 6, 327–363. [Google Scholar] [CrossRef]
Figure 1. Three-Particle Model.
Figure 1. Three-Particle Model.
Biomimetics 07 00244 g001
Figure 2. Overall control framework.
Figure 2. Overall control framework.
Biomimetics 07 00244 g002
Figure 3. Schematic diagram of collision experiment.
Figure 3. Schematic diagram of collision experiment.
Biomimetics 07 00244 g003
Figure 4. CoM position of the robot under the frontal impact of a 9 kg rigid ball.
Figure 4. CoM position of the robot under the frontal impact of a 9 kg rigid ball.
Biomimetics 07 00244 g004
Figure 5. CoM position of the robot under the frontal impact of an 11 kg rigid ball.
Figure 5. CoM position of the robot under the frontal impact of an 11 kg rigid ball.
Biomimetics 07 00244 g005
Figure 6. Swing foot position of the robot under the frontal impact of a 9 kg rigid ball.
Figure 6. Swing foot position of the robot under the frontal impact of a 9 kg rigid ball.
Biomimetics 07 00244 g006
Figure 7. Swing foot position of the robot under the frontal impact of an 11 kg rigid ball.
Figure 7. Swing foot position of the robot under the frontal impact of an 11 kg rigid ball.
Biomimetics 07 00244 g007
Figure 8. Screenshots of the motions generated by our method in the frontal impact test.
Figure 8. Screenshots of the motions generated by our method in the frontal impact test.
Biomimetics 07 00244 g008
Figure 9. Centroidal pitch angular momentum of the robot under the frontal impact of a 9 kg rigid ball.
Figure 9. Centroidal pitch angular momentum of the robot under the frontal impact of a 9 kg rigid ball.
Biomimetics 07 00244 g009
Figure 10. Centroidal pitch angular momentum of the robot under the frontal impact of an 11 kg rigid ball.
Figure 10. Centroidal pitch angular momentum of the robot under the frontal impact of an 11 kg rigid ball.
Biomimetics 07 00244 g010
Figure 11. Computation time cost of TP-MPC in the frontal impact test. (a) 9 kg ball; (b) 11 kg ball.
Figure 11. Computation time cost of TP-MPC in the frontal impact test. (a) 9 kg ball; (b) 11 kg ball.
Biomimetics 07 00244 g011
Figure 12. CoM position of the robot under the side impact of a 2.7 kg rigid ball.
Figure 12. CoM position of the robot under the side impact of a 2.7 kg rigid ball.
Biomimetics 07 00244 g012
Figure 13. CoM position of the robot under the side impact of a 3.2 kg rigid ball.
Figure 13. CoM position of the robot under the side impact of a 3.2 kg rigid ball.
Biomimetics 07 00244 g013
Figure 14. Swing foot position of the robot under the side impact of a 2.7 kg rigid ball.
Figure 14. Swing foot position of the robot under the side impact of a 2.7 kg rigid ball.
Biomimetics 07 00244 g014
Figure 15. Swing foot position of the robot under the side impact of a 3.2 kg rigid ball.
Figure 15. Swing foot position of the robot under the side impact of a 3.2 kg rigid ball.
Biomimetics 07 00244 g015
Figure 16. Centroidal roll angular momentum of the robot under the side impact of a 2.7 kg rigid ball.
Figure 16. Centroidal roll angular momentum of the robot under the side impact of a 2.7 kg rigid ball.
Biomimetics 07 00244 g016
Figure 17. Centroidal roll angular momentum of the robot under the side impact of a 3.2 kg rigid ball.
Figure 17. Centroidal roll angular momentum of the robot under the side impact of a 3.2 kg rigid ball.
Biomimetics 07 00244 g017
Figure 18. Screenshots of the motions generated by our method in the side impact test.
Figure 18. Screenshots of the motions generated by our method in the side impact test.
Biomimetics 07 00244 g018
Figure 19. Computation time cost of TP-MPC in the side impact test. (a) 2.7 kg ball; (b) 3.2 kg ball.
Figure 19. Computation time cost of TP-MPC in the side impact test. (a) 2.7 kg ball; (b) 3.2 kg ball.
Biomimetics 07 00244 g019
Table 1. Tasks, Constraints, and Priority Setting of Whole-Body Control for Single Leg Balance Standing.
Table 1. Tasks, Constraints, and Priority Setting of Whole-Body Control for Single Leg Balance Standing.
PriorityTasksTasks DimensionConstraintsConstraints Dimension
1Floating Base Dynamics6Joint Torque10
2Linear Momentum6ZMP9
Torso PostureFriction Cone
3Foot Position & Posture16
Contact Wrench
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Yang, Y.; Shi, J.; Huang, S.; Ge, Y.; Cai, W.; Li, Q.; Chen, X.; Li, X.; Zhao, M. Balanced Standing on One Foot of Biped Robot Based on Three-Particle Model Predictive Control. Biomimetics 2022, 7, 244. https://doi.org/10.3390/biomimetics7040244

AMA Style

Yang Y, Shi J, Huang S, Ge Y, Cai W, Li Q, Chen X, Li X, Zhao M. Balanced Standing on One Foot of Biped Robot Based on Three-Particle Model Predictive Control. Biomimetics. 2022; 7(4):244. https://doi.org/10.3390/biomimetics7040244

Chicago/Turabian Style

Yang, Yong, Jiyuan Shi, Songrui Huang, Yuhong Ge, Wenhan Cai, Qingkai Li, Xueying Chen, Xiu Li, and Mingguo Zhao. 2022. "Balanced Standing on One Foot of Biped Robot Based on Three-Particle Model Predictive Control" Biomimetics 7, no. 4: 244. https://doi.org/10.3390/biomimetics7040244

Article Metrics

Back to TopTop