You are on page 1of 6

2022 Latin American Robotics Symposium (LARS), 2022 Brazilian Symposium on Robotics (SBR), and 2022 Workshop on Robotics

in Education (WRE) | 978-1-6654-6280-8/22/$31.00 ©2022 IEEE | DOI: 10.1109/LARS/SBR/WRE

MPC-Based Reference Governor Control for Self-Righting of


Quadruped Robots: Preliminary Results
1st Aureo Guilherme Dobrikopf 2nd Lucas Schulze 3rd Douglas Widlgrube Bertol 4th Victor Barasuol
Electrical Engineering Department Electrical Engineering Department Electrical Engineering Department Dynamic Legged Systems
Santa Catarina State University Santa Catarina State University Santa Catarina State University Istituto Italiano di Tecnologia
Joinville, Brazil Joinville, Brazil Joinville, Brazil Genova, Italy
0000-0003-1667-8003 0000-0003-0662-3279 0000-0002-6980-7422 0000-0003-4966-5743

Abstract—Even with the current efficient legged robots’ control reaction forces). The proposed RGC contains a Model-based Predic-
techniques, unexpected situations may occur, leading the system to a fall. tive Controller (MPC) that modulates high-level joint references qhl ,
For the robot to recover mobility, it must be capable of autonomously
outputting final joint references qr that are sent to a low-level control
repositioning itself. The named Self-Righting task aims to solve the
problem of robot mobility recovery with a set of reference poses. loop. The low-level control loop executes a proportional-derivative
This work proposes using a Reference Governor Control (RGC) for a (PD) action that generates torque references τ for the robot internal
quadrupedal robot’s stand-up sub-task in a closed-loop scheme. The RGC torque controllers (not detailed in the paper). Figure 1 shows a block
is composed of a predictive controller based on the robot’s states and the diagram of the proposed control scheme.
constraints’ forces obtained from its interaction with the environment.
From the results, it is possible to observe that the proposed solution can The proposed control scheme takes into account the robot torso
reposition the robot to a fully recovered mobility state. states and the Ground Reaction Force (GRF) constraints of each
Index Terms—Reference Governor Control, Model Predictive Control, contact point (to avoid the loss of contact of each foot with the
Self-Righting, Quadrupedal robots environment), and considers a constraint on the robot center of mass
(CoM) to enforce the static stability of the system along the task
I. I NTRODUCTION execution. As initial results, this paper presents a comparison between
The legged robot locomotion is an attractive research topic mainly the standard HyQ2Max reference commands and the proposed RGC
due to the advantage of this kind of robot in locomotion over for the execution of the self-righting stand-up phase.
unstructured places. Therefore, all the solutions in this area are
becoming more and more robust.
Nonetheless, in a real-world application, unexpected situations may
still lead robots to fall. To recover after such failure, they need a RGC +
-
PD
specific task to autonomously put them back on their feet. This task
is known as self-righting.
There are some works in the literature addressing the self-righting Fig. 1. Control block diagram of the proposed solution.
problem for legged robots, such as [1], [2], [3], [4], [5] and [6], The paper is organized as follows: the state-of-the-art and the
in special for quadrupedal ones [7], [8], [9] and [10]. Almost all literature revision are presented in Section II; in Section III the
approaches exectute self-righting through a sequence of specific pos- proposed control scheme architecture is detailed and explained;
tures defined through techniques that range from heuristic kinematics simulation results are presented in Section IV; conclusions and future
analysis to machine learning. works close the manuscript in Section V.
The main drawback of these techniques is that they output ref-
erences at robot joint level and lack a closed-loop control on the II. S TATE OF THE ART
desired intermediate and final postures. Moreover, there is also an The first part of this section contains the definition of self-righting
absence of direct controlling the interaction forces between the robot and the solutions used nowadays, while the second part describes on
limbs and the environment. For example, if during self-righting the the Reference Governor Control scheme and related works.
robot experiences a posture configuration, ground properties (friction
coefficient) or surface inclination different from the ones considered A. Self-righting task
during the task planning, the interaction forces generated by the joint Self-righting is a set of actions performed autonomously by a robot
position tracking effort may destabilize the self-righting motion. to stand up and be able to walk after a fall or an initial laying posture.
With the goal of adding robustness to the self-righting task, and This task can be performed passively or actively [2].
at the same time carrying the idea of modularity and reusability Passive self-righting exploits only the robot’s structure without
of existing approaches, this work proposes a Reference Governor using any actuation. As in [1], due to an egg-shaped frame and the
Control (RGC) scheme that takes into consideration trunk states center of mass position, when the robot falls, the entire structure
and the expected constraints of the interaction forces (i.e, ground rotates until its orientation becomes suitable for the locomotion again.
Another example is the structure observed on the quadrupedal robot
This work received financial support from Fundação de Amparo à Pesquisa LS3 [7]. If the robot suffers a lateral fall, all the robot structure rotates
e Inovação do Estado de Santas Catarina – FAPESC and Coordenação along its longitudinal direction, allowing the robot to orientate itself
de Aperfeiçoamento de Pessoal de Nı́vel Superior - CAPES - Brazil
(PROAP/AUXPE, Auxı́lio 1484/2020, Processo 88881594818/2020-01). properly to stand up.
As mentioned in [2], passive self-righting is mainly suitable for
978-1-6654-6280-8/22/$31.00 ©2022 IEEE planar ground situations despite its simplicity. A more robust way to

85
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:35:54 UTC from IEEE Xplore. Restrictions apply.
perform a fall recovery can be achieved by using an active self- For nonlinear systems, [17] proposes a similar approach. For a
righting technique. In this context, the authors propose an extra Single Input-Single Output system, the controller obtains a slightly
actuator: a pole leg responsible for flipping and standing up a jumping smaller set of control actions O online or offline. That way, an
robot. optimization problem is used to obtain a β value that modifies the
The use of an extra number of actuators was proposed in [3], where high-level reference, ensuring that the new system states and control
the authors employ a rigid tail to flip an insect-style robot. In [4], output stay at O in the next instant. In [14], the previous approach is
[5] and [6], where the robot is like an insect, actuators analogous to modified to verify if the system stays in the O for finite steps ahead.
cockroaches shells are used to perform the self-righting. This kind of implementation can be used in different systems, such
For symmetric robots, e.g. the one described in [8], the self-righting as: inverted pendulum control [18], spacecraft attitude control [13],
task can be solved by treating the control signals based on the robot airplane attitude control [19], automobiles’ electro-mechanical device
orientation. control [20] and rollover vehicle avoidance [21].
In [11], the NOROS hexapod, the reference poses used in the To prevent the internal control action saturation, the work of [15]
self-righting task are obtained based on how an insect behaves also proposes an algorithm to modify the high-level reference through
during this motion. The authors split all the tasks into sub-tasks, and a minimization problem based on the closed-loop dynamic system.
then, using a kinematic analysis of the robot, they obtain the joint In [22] it is shown an RGC solution based on a state-space
references according to the robot state. In [12] it is also presented predictive control scheme. The authors propose a state-space model
posture sequences. However, they do not provide the methodology that includes the lower-level controller and the dynamic system.
for obtaining those postures and practical results. They propose, from this closed-loop model, an optimization problem
In [9] it is presented a strategy used to execute the self-righting considering the value of internal control states and the system.
motion of the quadruped robot HyQ2Max. The authors divide the However, this implementation has a drawback: depending on the
task into a sequence of postures, each one associated with a final joint internal control scheme, the number of states increases significantly.
position reference q hl . The joint references and the transition tunning The work of [23] uses the same modeling method, but they implement
were obtained in a heuristic manner using a simulation environment. the predictive control in the explicit form.
Learning techniques are used in [10], in which obtaining the III. P ROPOSED S OLUTION
sequence of the self-righting poses is done through model-free Deep
This section is divided in the phenomenological modeling of
Reinforcement Learning in a simulation environment. Based on these
the system, Section III-A; definition of the predictive model, Sec-
poses, the joint references are extracted and used in a PD controller
tion III-B; GRF and CoM constraints, Section III-C; and, the cost
at joint level.
function used, Section III-D.
All solutions presented for quadruped self-righting have a signifi-
cant drawback. They generate poses for a static scenario, assuming A. Kinodynamic model
certain terrain shape and properties. Therefore, there is low guarantee In this work the dynamics of the CoM is described using the
that the self-righting can be executed in a different environment centroidal model, where the rate of change of the linear and angular
or condition. In this contest, this work proposes to adapt the joint momentum are related to the sum of all forces and torques applied to
references q hl taking into account the contact points between the foot the CoM [24]. As in the description presented in [25], the dynamic
and the ground, in order to constrain their motion and to prevent equation is leaner than using the canonical equation and defined as:
slippage that can lead the robot to a fall. To obtain the adapted       
Hu Hua ẍ hu Jc,u T
joint references q r an optimization problem is solved considering + = f, (1)
Hua Ha q̈ ha Jc,a T
the system behavior in finite steps ahead, always observing if the
contact constraint is satisfied and the CoM projection in xy plane is where the subscripts u and a refer to the unactuated and actuated parts
inside the convex hull formed by the contact points. of the dynamic matrices, respectively. The state x refers to the CoM
linear and angular velocity, and the matrix h gathers the nonlinear
B. Reference Governor Control terms of the canonical floating-base model. The centroidal dynamics
is obtained from the first row of (1) as Hu ẍ +Hua q̈ +hu = Jc,u T f ,
The Reference Governor Control (RGC) is a closed-loop algorithm which can be rewritten as:
that modifies a high-level reference, obtaining a modulated reference nc
that ensures some system performance or/and constraints satisfaction
X
mr r̈ + mr g = f i, (2a)
[13]. An RGC can bring some benefits to two main control problems: i=1
in nonlinear or unstable systems, as an optimization problem, or nc
X
in closed-loop systems aiming to respect some constraints. In the I ω̇ + ω × Iω + Hua q̈ = (r − pc,i ) × f i . (2b)
first case, the solution of the optimization problem may not output a i=1

solution in the required time, so a controller, like a PID controller, Equation (2a) represents the CoM linear dynamics. The term mr
can be used to stabilize the system at a higher frequency, while the refers to the total mass of the robot, and r̈ is the CoM linear
RGC generates its references [14]. In the second problem, although acceleration. The vector g is the gravitational term. nc is the number
the system is in closed loop, the controller cannot stabilize the system of robot feet in contact with the environment, and f i is the force
in some situations. Thus, to avoid this situation, a RGC algorithm can vector of each contact. All the quantities are expressed in with respect
provide an adapted reference to keep the stability of the system [15]. to the inertial frame.
In [16], a recursive algorithm searches for a λ value that modifies a Equation (2b) represents the angular dynamics, and I is the inertia
high-level reference generating new references that are applied to the tensor. ω̇ and ω are the angular CoM acceleration and velocity,
system model to verify if the settling time is minimal. If the algorithm respectively. r and pc,i are the CoM position and the contact point
achieves this condition, the controller applies the new control action of the robot with the environment in the world frame. As mentioned
to the system. in [25], because the leg weight is considerably small, considering the

86
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:35:54 UTC from IEEE Xplore. Restrictions apply.
total weight of the robot, the product between the joint’s acceleration Using (12), the joint velocities are defined as:
and the term Hua can be negligible. The cross product on the left-
hand side is also negligible since the robot does not perform fast q̇ = Γ−1 (ṙ − S a ω). (13)
angular motions. The right side cross-product of (2b) can be rewritten Equation (13) cannot be used directly, as the state ṙ is repeated at
using the skew-symmetric matrix. Thus, Equation (2) can be written each line. Rewriting (13), the joint velocities can be computed as:
as:
nc nc q̇ = Γ∗l ṙ − Γ∗a ω, (14)
1 X −1
X ×
r̈ = −g + f , ω̇ = I (r − pc,i ) f i (3)
mr i=1 i
P4 P4
i=1
where Γ∗l = i Γ−1 (:, 3i − 2 : 3i), while Γ∗a = i Γ−1 (:, 3i − 2 :
3i)S a (:, 3i − 2 : 3i). The operation A(:, 3i − 2 : 3i) means the
From the canonical dynamic equation, for quasi-static motions, the selection of all the rows from the 3i − 2 to 3i columns of the matrix
contact forces are: A.
f = J −T
c (τ g − τ ), (4) To obtain the state-space model, (14) is used into (6). Considering
being J c the contact Jacobian of the robot legs with the environment ṙ, ω, q as states, and q r as input. The terms g and f g are considered
expressed in w.r.t., τ g is the torque term due to the gravity, while τ as a disturbance in the model.
is the vector of the joint torques. Including the CoM position and the robot orientation as a model
The torque commands from the joint PD controller are computed state is necessary. The CoM position is obtained by integrating the
as: CoM velocity. For the robot orientation, it is necessary to use a
mathematical relation that depends on the representation used to
τ = Kp (qr − q) − Kd q̇. (5)
describe it (e.g., Euler angles, unit quaternion, or others). This work
Substituting (5) into (4), considering that the force applied by the uses unit quaternion since this representation avoids the gimbal lock
ground at the foot of the robot has the opposite direction from the problem. The unit quaternions elements, ϵ ∈ R4 , are modified by
force produced by the legs, and applying the result into (3): the multiplication of the matrix T ϵ (ϵ) by the angular velocity ω.
T ϵ ∈ R4×3 and have a standard representation as shown in [26].
r̈ = K 1 q r − K 1 q − K 2 q̇ − g − I l f g , (6a) Therefore, the state-space model is:
−1
ω̇ = K 3 q r − K 3 q − K 4 q̇ − I I af g. (6b)
−K 2 Γ∗l K 2 Γ∗a −K 1 0 0
    
r̈ ṙ
being K 1 = I l J −T −T
c Kp /mr , K 2 = I l J c Kd /mr , K 3 =
ω̇  −K 4 Γ∗l K 4 Γ∗a −K 3 0 0 ω 
I −1 I a J −T −1 −T −T  q̇  =  Γ∗l −Γ∗a
    
c K p , K 4 = I I J
a c K d , f g = J c τ g, Il = 0 0 0  q  +
 
[RΘ RΘ RΘ RΘ ], I a = RΘ [(r − plf ) (r − prf )× (r −
×
T
  
 ṙ   I 0 0 0 0  r 
plh )× (r − prh )× ], where RΘ is the rotation matrix. ϵ̇ 0 Tϵ 0 0 0 ϵ
The goal of such manipulation is to define a state-space model for | {z } | {z } | {z }
x
ẋ A
the MPC. If (6) is considered as the model, the states are ṙ, q r , q    
K1 −I −I l  
and q̇. Some kinematic relations are necessary to use q̇ as a state. K 3  q r +  0 −I −1 I a  g , (15)
Firstly, considering the contact point pc,i in world frame as: fg
0 0 0 | {z }
pc,i = b + RΘ b pi ,
| {z } | {z } G
(7) Bu Bg

where b is the robot base position. Taking the first derivative of (7), B. Prediction model
the contact point velocity ṗc,i becomes: To obtain the prediction model, first, the dynamic model (15) is
×
ṗc,i = ḃ − (pc − b) ω + RΘ J c,i q̇. (8) discretized with a sample time ts :

From the assumption that the foot remains in contact with the ground, x[k + 1] = Ad x[k] + B d, u q r [k] + B d, g G[k]. (16)
i.e. ṗc,i = 0, it is established the following relationship: Rewriting the control input in an incremental form, q r [k] = q r [k−
×
ḃ = (pc − b) ω − RΘ J c,i q̇. (9) 1] + ∆q r [k], an augmented state-space model is obtained as:

Using the same idea to define the CoM velocity, a similar kinematic xa [k + 1] = Aa xa [k] + B a,u ∆q r [k] + B a,g G[k], (17)
relationship is obtained for ṙ: where:
×
ṙ = ḃ + (b − r) ω + J CoM q̇, (10) 
Ad B d,u
 
B d,u
 
B d,g

Aa = , B a,u = , B a,g = ,
where J CoM is CoM Jacobian, defined as: 0 Iqr Iqr 0
 T
  xa = ṙ[k] ω[k] q[k] r[k] ϵ[k] q r [k − 1] , (18)
J CoM = RΘ J CoM,lh J CoM,rf J CoM,lh J CoM,rh (11)
and Iqr is the identity matrix with dimension R12×12 .
Using (9) into (10), and considering that all feet are in contact with The prediction model, in state-space form, is obtained as:
the ground, yields:
xa = Gx ∆q r + Φx xa [k|k] + Φg G[k|k] (19)
(plf − r)×
      
ṙ J CoM
ṙ   (prf − r)  × J CoM   being xa the predicted states, Gx the prediction system matrix, Φx
ṙ   (plh − r)×  ω + J CoM  − J c  q̇,
 =     (12)
the free-response matrix of the states and Φg the free-response matrix
×
ṙ (prh − r) J CoM due to the gravity terms. Those matrices are obtained using the
procedure described in [27].
|{z} | {z } | {z }
ṙ Sa Γ

87
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:35:54 UTC from IEEE Xplore. Restrictions apply.
C. Constraints robot joint positions and base orientation, where those prediction
The limitation of CoM positions is the first constraint taken into models can be found by multiplying each matrix block of (19) by
account in the proposed solution. In the steady-state it is desired Cq = [0 0 Iq 0 0 0], Cϵ = [0 0 0 0 Iϵ 0], with Iq and Iϵ
that the robot remains in place, thus it is included a static stability identity matrices, with dimensions R12×12 and R4×4 , respectively.
condition, where the CoM horizontal projection (onto the world xy In the first term of (25), the error between the robot joint positions
plane) must always be within the convex hull defined by the feet in q and the high-level references q hl are minimized. The former is
contact with the environment [28]. responsible for minimizing the orientation error and the latter weighs
The CoM prediction model is directly obtained from (19), as rx the control action.
and ry are already system states. Considering y r the output for those The prediction models are inserted into (25), and then applied to
variables, the prediction model is: a solver. In this work it is used the OSQP solver [31].
y r = Gr ∆q r + Φx,r xa [k|k] + Φg,r G[k|k], (20)
where Gr , Φx,r and Φg,r are obtained multiplying each matrix block
 IV. S IMULATION RESULTS
of (19) by C r = 0 0 0 Ir 0 0 , being Ir the identity
matrix with dimension R2×2 .
Therefore, the CoM constraint becomes: The proposal evaluation considers the robot placed on a surface
with a slope. The robot initial posture has the belly touching the
r xy − Φx,r xa [k|k] − Φg,r G[k|k] ≤ Gr ∆q r ≤ ground. During execution, the task controller becomes active after one
r xy − Φx,r xa [k|k] − Φg,r G[k|k]. (21) second in this posture. Before the stand-up starts, the belly supports
almost all robot mass since the feet are only touching the ground
The second constraint is on ground reaction forces. All the feet without applying force. If both the smooth filter and the RGC were
must keep contact with the ground during the stand-up motion. To succeeded, the slope angle was increased by 2º and a new trial was
ensure this condition, the forces at the contact point must respect the performed. Whith a slope of 12º, the smooth filter does not perform
friction cone [29], which is: the task, while the RGC takes the robot to a safe position. For the
q
2
fx,i 2
+ fy,i = µfz,i , (22) RGC solution, without any further modification, it is possible to
stand-up the robot until an angle of 20º.
where fx,i , fy,i and fz,i are the forces components of i-th contact Figure 2 shows the simulation results as snapshots of the robot
point, decomposed in the world frame, and µ is the static friction posture during the execution of the stand-up using the smooth filter
coefficient. (SM) and the RGC considering the slope of 12º .
Notice that (22) is nonlinear. Therefore, the friction cones are
approximated with square pyramids [30], and the constraint becomes:
(−µni + t1,i )T
     
−∞ 0
 −∞  (−µni + t2,i )T   0 
     
 0  ≤  (µni + t2,i )T  f ≤  ∞  (23)
     
 0   (µni + t1,i )T   ∞ 
fmin,i nTi fmax,i
| {z } | {z } | {z }
f min,i C f,i f max,i

where ni is the normal direction to the surface, while t1,i and t2,i Fig. 2. Robot postures over the stand-up phase: a - smooth filter; b - RGC.
are the tangential ones. All these vectors have dimension R3 . fmin,i
and fmax,i are the minimal and maximal forces at the contact point. The posture sequence in Fig. 2a shows that the smooth filter
Considering C f the matrix which the main diagonal is the matrix solution cannot handle a small slope during the stand-up task. Around
C f,i of each contact, and f min , f max are the stacked vectors f min,i 5.5s of stand-up motion, the left legs lose contact with the ground
and f max,i . Using (5) into (4), and considering the augmented state leading the robot to a fall. This kind of failure is likely to happen for
vector and the incremental control term, the GRF constraint becomes: solutions that only close control loops on predefined joint references
that where designed for a specific scenario (in this case, references
f min − C f J −T
c (τ g + Φx,τ xa [k|k] + Φg,τ G[k|k])
designed for a non-sloped ground). Conversely, the posture sequence
≤ −C f J −T
c Gτ ∆q r ≤ in Fig. 2b shows that the robot is able to perform the stand-up
f max − C f J −T
c (τ g + Φx,τ xa [k|k] + Φg,τ G[k|k]) (24) using the RGC, with the joint high-level references being the same.
The reason is that the proposed solution modifies q r by taking into
D. Cost Function account robot states that are relevant for the stand-up stability (i.e.
The cost functional for the model predictive controller is defined base orientation, CoM position, and the friction cone as interaction
as: property between robot and environment). This modulation process
is more evident when observing Fig. 3 for the joint trajectories of
f (xa , ∆q r ) = (q hl − y q )T Qq (q hl − y q )+ left-front and right-hind legs (right-front and left-hind legs have have
T
(ϵr − y ϵ )T Qϵ (ϵr − y ϵ ) + ∆q r Qu ∆q r , (25) similar behavior and are not shown).

where Qq , Qϵ and Qu are weighting matrices. q hl and ϵr are


the stacked references for the robot joint positions and base ori- The video of the simulated stand-up motion is available at
entation, respectively. y q and y ϵ are the prediction model for the https://youtu.be/0dL5IG5pSqA

88
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:35:54 UTC from IEEE Xplore. Restrictions apply.
Fig. 4. CoM trajectories: (a) xz; (b) yz; (c) rz ; and (d) roll angle.
Fig. 3. Joint trajectories for the left-front and right-hind legs.
Lastly, in Fig. 5 the ground reaction force constraints are illustrated
for the left-front and right-hind legs. As mentioned before, at the
beginning of the stand-up, the feet are not applying forces on the
ground. For this reason, there is an apparent and false constraint
The mean absolute error violation when looking at the tangential forces in the lower bound.
P of the joint positions are P presented in At this moment, the robot makes contact with the ground, and the
e1 = 1/k ki=1 |q lh −q r |i , e2 = 1/k ki=1 |q lh −q|i
Table I, where P
and e3 = 1/k ki=1 |q r − q|i . GRF is not violated throughout the task, respecting all the constraints.

TABLE I
M EAN ABSOLUTE ERROR OF THE JOINT POSITIONS (×10−2 rad).

Joint e1 e2 e3 Joint e1 e2 e3
q1 9.90 3.47 6.51 q7 9.97 3.87 6.45
q2 22.9 15.4 7.52 q8 22.9 15.4 74.7
q3 30.2 51.0 20.8 q9 30.2 51.0 20.8
q4 10.5 4.82 5.75 q10 10.4 4.67 5.80
q5 12.8 18.7 8.05 q11 12.8 18.7 8.05
q6 32.8 29.1 20.8 q12 3.29 2.92 20.8

In Fig. 4 the CoM trajectory is decomposed in side view (Fig.


4a) and front view (Fig. 4b). The green area represents the ground
and the purple dots represents the position of the contact feet. In
the RGC it is used a CoM constraint on the x and y components Fig. 5. Ground reaction forces values and constraints according to (23) along
to guarantee the static stability, where the maximum and minimum the stand-up motion for the RGC solution.
value of rx and ry are set to ±0.03m around the initial CoM position.
The choice of those values ensures that the CoM position is always V. C ONCLUSION
in the convex hull formed by the positions of the contact feet and This work presented the preliminary results of a proposed MPC-
restricts displacements along x and y directions. based RGC scheme designed to add robustness to the execution of
self-righting tasks in quadruped robots. Simulation results considering
Figure 4c shows the z component of the CoM trajectory during the self-righting stand-up phase verify the benefits of the approach
the stand-up. It is possible to observe, from about 5.5 s, that the when compared to a self-righting executed using pre-defined joint
robot loses its stability and falls when using the predefined solution references. The proposed control structure can be seen as a module
without RGC . When the RGC solution is applied, the robot is able to that seeks for interfacing with pre-existing techniques, that generate
maintain static stability. Fig. 4d shows the roll angle in both solutions, joint position references in an open-loop fashion, making the self-
where it is possible to observe the convergence of the roll angle to righting task less sensitive to the variations of the ground surface
the desired value when the RGC solution is used. and properties.

89
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:35:54 UTC from IEEE Xplore. Restrictions apply.
To the author’s knowledge, this is the first time that a dynamic [18] A. Casavola, E. Mosca, and M. Papini, “Control under constraints:
model (CoM dynamics) incorporates the system constraints (feet an application of the command governor approach to an inverted
pendulum,” IEEE Transactions on control systems technology, vol. 12,
contacts) for the prediction model used in MPC. Usually, using the
no. 1, pp. 193–204, 2004.
joint’s canonical form, the system dynamics and the contacts are [19] D. Simon, O. Härkegård, and J. Löfberg, “Angle of attack and load
addressed apart in two equations. Moreover, to use the canonical factor limiting in fighter aircraft using command governors,” in AIAA
form it would be necessary to include more states for the joints’ Guidance, Navigation, and Control Conference, 2017, p. 1257.
positions. Finally, other models (simplers) first solve the problem for [20] E. Garone, S. Di Cairano, and I. Kolmanovsky, “Reference and com-
mand governors for systems with constraints: A survey on theory and
the CoM dynamics and then solve the problem for the joints, using the applications,” Automatica, vol. 75, pp. 306–328, 2017.
kinodynamic relations. However, the proposed solution solves these [21] R. Bencatel, R. Tian, A. R. Girard, and I. Kolmanovsky, “Reference
problems together in only one step. governor strategies for vehicle rollover avoidance,” IEEE Transactions
Future research considers the implementation of the RGC scheme on Control Systems Technology, vol. 26, no. 6, pp. 1954–1969, 2017.
[22] M. Klaučo and M. Kvasnica, “Control of a boiler-turbine unit using mpc-
for the entire self-righting (all phases) and, to do so, also the estima- based reference governors,” Applied Thermal Engineering, vol. 110, pp.
tion of the contact locations between the robot and the environment. 1437–1447, 2017.
[23] M. Klaučo, M. Kalúz, and M. Kvasnica, “Real-time implementation
R EFERENCES of an explicit mpc-based reference governor for control of a magnetic
levitation system,” Control Engineering Practice, vol. 60, pp. 99–105,
[1] M. Kovač, M. Schlegel, J.-C. Zufferey, and D. Floreano, “Steerable
2017.
miniature jumping robot,” Autonomous Robots, vol. 28, no. 3, pp. 295–
[24] R. Featherstone and D. E. Orin, “Dynamics,” in Springer Handbook of
306, 2010.
Robotics. Springer, 2016, pp. 37–66.
[2] J. Zhang, G. Song, Z. Li, G. Qiao, H. Sun, and A. Song, “Self-righting,
[25] O. Villarreal, “Bridging vision and dynamic legged locomotion,” Ph.D.
steering and takeoff angle adjusting for a jumping robot,” in 2012
dissertation, Istituto Italiano di Tecnologia (IIT) and University of
IEEE/RSJ International Conference on Intelligent Robots and Systems.
Genova, 2020.
IEEE, 2012, pp. 2089–2094.
[26] K. J. Waldron and J. Schmiedeler, “Kinematics,” in Springer Handbook
[3] C. S. Casarez and R. S. Fearing, “Dynamic terrestrial self-righting with a
of Robotics. Springer, 2016.
minimal tail,” in 2017 IEEE/RSJ International Conference on Intelligent
[27] E. F. Camacho and C. Bordons, Model predictive control. Springer,
Robots and Systems (IROS). IEEE, 2017, pp. 314–321.
London, 2007.
[4] C. Li, C. C. Kessens, A. Young, R. S. Fearing, and R. J. Full,
[28] E. C. Orozco-Magdaleno, D. Cafolla, E. Castillo-Castaneda, and G. Car-
“Cockroach-inspired winged robot reveals principles of ground-based
bone, “Static balancing of wheeled-legged hexapod robots,” Robotics,
dynamic self-righting,” in 2016 IEEE/RSJ International Conference on
vol. 9, no. 2, p. 23, 2020.
Intelligent Robots and Systems (IROS). IEEE, 2016, pp. 2128–2134.
[29] Z. Li, S. Yu, and S. Liu, “Dynamical balance optimization and control
[5] C. Li, C. C. Kessens, R. S. Fearing, and R. J. Full, “Mechanical
of quadruped robots under perturbing external force,” IFAC Proceedings
principles of dynamic terrestrial self-righting using wings,” Advanced
Volumes, vol. 46, no. 20, pp. 199–205, 2013.
Robotics, vol. 31, no. 17, pp. 881–900, 2017.
[30] M. Focchi, A. Del Prete, I. Havoutis, R. Featherstone, D. G. Caldwell,
[6] J. Mi, Y. Wang, and C. Li, “Omni-roach: A legged robot capable of
and C. Semini, “High-slope terrain locomotion for torque-controlled
traversing multiple types of large obstacles and self-righting,” arXiv
quadruped robots,” Autonomous Robots, vol. 41, no. 1, pp. 259–272,
preprint arXiv:2112.10614, 2021.
2017.
[7] B. Dynamics, “Ls3-legged squad support system,” 2012, acesso em:
[31] B. Stellato, G. Banjac, P. Goulart, A. Bemporad, and S. Boyd, “OSQP:
Jan, 21 2021. [Online]. Available: https://youtu.be/R7ezXBEBE6U
an operator splitting solver for quadratic programs,” Mathematical
[8] F. Grimminger, A. Meduri, M. Khadiv, J. Viereck, M. Wüthrich, Programming Computation, vol. 12, no. 4, pp. 637–672, 2020. [Online].
M. Naveau, V. Berenz, S. Heim, F. Widmaier, T. Flayols, et al., “An Available: https://doi.org/10.1007/s12532-020-00179-2
open torque-controlled modular robot architecture for legged locomotion
research,” IEEE Robotics and Automation Letters, vol. 5, no. 2, pp.
3650–3657, 2020.
[9] C. Semini, J. Goldsmith, B. U. Rehman, M. Frigerio, V. Barasuol,
M. Focchi, and D. G. Caldwell, “Design overview of the hydraulic
quadruped robots hyq2max and hyq2centaur,” in The Fourteenth Scan-
dinavian International Conference on Fluid Power, 2015, pp. 20–22.
[10] J. Lee, J. Hwangbo, and M. Hutter, “Robust recovery controller for a
quadrupedal robot using deep reinforcement learning,” arXiv preprint
arXiv:1901.07517, 2019.
[11] S. Peng, X. Ding, F. Yang, and K. Xu, “Motion planning and imple-
mentation for the self-recovery of an overturned multi-legged robot,”
Robotica, vol. 35, no. 5, pp. 1107–1120, 2017.
[12] A. D. Perkins, M. Malchano, and S. Talebinejad, “Systems and methods
for robotic self-right,” Apr. 12 2016, uS Patent 9,308,648.
[13] U. Kalabić, R. Gupta, S. Di Cairano, A. Bloch, and I. Kolmanovsky,
“Constrained spacecraft attitude control on so (3) using reference gover-
nors and nonlinear model predictive control,” in 2014 American Control
Conference. IEEE, 2014, pp. 5586–5593.
[14] A. Bemporad, “Reference governor for constrained nonlinear systems,”
IEEE Transactions on Automatic Control, vol. 43, no. 3, pp. 415–419,
1998.
[15] H. M. Do and J. Y. Choi, “Design of reference governor for linear
systems with input constraints,” IFAC Proceedings Volumes, vol. 38,
no. 1, pp. 928–933, 2005.
[16] A. Bemporad and E. Mosca, “Constraint fulfilment in feedback control
via predictive reference management,” in Proc. 3rd IEEE Conf. on
Control Applications, vol. 3. IEEE, 1994, pp. 1909–1914.
[17] E. G. Gilbert, I. Kolmanovsky, and K. T. Tan, “Discrete-time reference
governors and the nonlinear control of systems with state and control
constraints,” International Journal of robust and nonlinear control,
vol. 5, no. 5, pp. 487–504, 1995.

90
Authorized licensed use limited to: BEIHANG UNIVERSITY. Downloaded on April 15,2023 at 01:35:54 UTC from IEEE Xplore. Restrictions apply.

You might also like