You are on page 1of 8

Adaptive Force-based Control for Legged Robots

Mohsen Sombolestan, Yiyu Chen and Quan Nguyen

Abstract— In this paper, we present a novel methodology to


introduce adaptive control for force-based control systems, with
application to legged robots. In our approach, the reference
model is based on the quadratic program force control.
We evaluate our proposed control design on a high-fidelity
physical simulation of LASER, a dynamic quadruped robot.
arXiv:2011.06236v1 [cs.RO] 12 Nov 2020

Our proposed method guarantees input-to-state stability and


is successfully validated for the problem of quadruped robots
walking on rough terrain while carrying unknown and time-
varying loads.

I. I NTRODUCTION
Legged robots have great potential for application in
disaster and rescue missions. In contrast to wheeled robots,
Fig. 1: The LASER Robot. The robot walking on high-
legged robots represent remarkable performance for navigat-
sloped terrain with obstacles while carrying a 6kg load (50%
ing uneven terrains. Designing and controlling machines to
of body weight) with adaptive control.
realize these potentials has long motivated work across the
legged robotics community and highly-capable quadrupeds
(e.g., [10], [15]) begun to assist humans in demanding
situations. adaptive control techniques. In particular, by applying a low-
Currently, the common control approach for highly dy- pass filter as part of the adaptation laws help the L1 adaptive
namic locomotion includes two-dimensional planar simpli- controller to guarantee not only stability [4] but also transient
fication [16], which only can be employed for gaits with- performance [5]. Our prior work on L1 adaptive control
out lateral or roll dynamics; evolutionary optimization for for bipedal robots [14] uses a control Lyapunov function
galloping [11], which cannot be solved online with desired (CLF) based controller to create a closed-loop nonlinear
frequency; and model predictive control (MPC) approach to reference model for the L1 adaptive controller. The CLF-
determine ground reaction forces and formulate the problem base controller can be used for underactuated systems while
as convex optimization which can be solved under 1 ms [7]. the quadruped robots are overactuated.
However, all common controllers assume perfect knowl- In this paper, we present an adaptive control for nonlinear
edge of the dynamic model. May time and safety-critical uncertainty with a reference model that arises from a force-
missions such as firefighting, disaster response, exploration, based quadratic program method [8]. The main contribution
etc. require the robot to operate swiftly and stably while of the paper is a control system that guarantees input-to-sate
dealing with high levels of uncertainty and large external stability for quadruped robots in presence of uncertainties.
disturbances. The demand for practical requirement moti- Our approach is successfully validated in a high-fidelity
vates our research on adaptive control for quadruped robots. simulation for the problem of load-carrying with different
A load-carrying scenario is one of the main assistive scenarios. Although the nominal controller fails to remain
operations that a legged robot can perform. Recently, some the robot in the desired position and orientation, our pro-
research aimed to achieve this functionality for quadruped posed adaptive controller can satisfy the expectation while
by dividing the control system into torso motion control and carrying an unknown load up to 50% of the robot weight.
swing legs control [19], [18]. Then, an adaptive sliding mode Thanks to the combination with the forced-base controller,
control will be added to realize the weight change comes our approach can also allow the robot to navigate rough
from the external load. terrains while carrying an unknown and time-varying load
as it is shown in Fig. 1 1 .
The introduction of the L1 adaptive control technique
has enabled the decoupling of adaptation and robustness in The remainder of the paper is organized as follows.
Sec. II presents an overview of the LASER robot and its
This work is supported by USC Viterbi School of Engineering startup hardware information. The force-based control architecture
funds. for quadruped robots describes in Sec. III and adaptive con-
M. Sombolestan, Y. Chen, and Q. Nguyen are with the Depart- troller to compensate uncertainties is elaborated in Sec. IV.
ment of Aerospace and Mechanical Engineering, University of South-
ern California, Los Angeles, CA 90089, email: somboles@usc.edu,
yiyuc@usc.edu, quann@usc.edu. 1 Complete video: https://youtu.be/X_jounyuO-M
TABLE II: Actuator Parameters
Parameter Value Units
Gear Ratio 9
Max Torque 33.5 Nm
Max Joint Speed 21 Rad/s

High-level Control
User {𝒑ሶ 𝒅 , 𝝋ሶ 𝒅 }
Desired 𝒙𝒅 𝒔𝝓 = 𝟏
Input 𝑭
State QP Force Control
𝒔𝝓 Low-level
𝒑𝒇 Leg Control
Gait Swing Control
Scheduler 𝒔𝝓 = 𝟎

𝝉𝒅
Fig. 2: Robot Configuration. Overview of LASER robot
and leg configuration
State
𝒙, 𝒔ො }
{ෝ Estimation {𝝎, 𝒑,ሷ 𝒒}
TABLE I: Physical Robot Parameters
Parameter Symbol Value Units
Robot/Simulation
Mass m 12 kg
Body Inertia Ixx 0.0168 kg · m2 Fig. 3: Control Architecture Overview. Block diagram of
Iyy 0.0565 kg · m2 control architecture for LASER robot.
Izz 0.0647 kg · m2
Body Length lbody 0.361 m
Body Width wbody 0.194 m
Body Height hbody 0.114 m actuation capabilities of the LASER robot are summarized
Leg Link Lengths l1 , l2 0.2 m in Table II.
Having presented the robot hardware, in the next section,
we present the background on control of quadruped robots.

Then, the stability proof of the whole system is described in III. CONTROL ARCHITECTURE
Sec. V. Furthermore, the simulations and results are shown The control architecture of the robot consists of several
in Sec. VI. Finally, Sec. VII provides concluding remarks. modules [2] including high-level controller, low-level con-
troller, state estimation, and gait scheduler as presented in
II. ROBOT M ODEL Fig. 3. From user input and state estimation, a reference
In this paper, we will validate our controller in the trajectory can be generated for high-level control. Along
model of LASER (Legged-Agile-Smart-Efficient-Robot). with the reference trajectory, the gait scheduler sets up
The LASER robot is a highly dynamic quadruped platform gait timing to switch each leg between swing and stance.
built from Unitree A1 robot (see Fig. 2). The LASER robot Based on the reference trajectory and gait timing, the high-
has low-inertial legs and high torque density electric motors level controller calculates position control for swing legs
with planetary gear reduction, and it is capable of ground and force control for stance leg. The low-level leg control
force control without using any force or torque sensors. The converts command generated by high-level control into joint
LASER robot uses these high-performance actuators for all torques and sends it to the robot. Each module of the control
the hip, thigh, and knee joints to enable full 3D control architecture will be elaborated in the following sections. The
of ground reaction forces. It is also equipped with contact L1 adaptive controller is built on this general architecture
sensors on each foot. and will be elaborated in Sec. IV.
The LASER legs feature a large range of motion as
presented in Figure 2. The hip joints have a range of motion A. Gait Scheduler
of ±46◦ , the thigh joints have a range of motion from −60◦ The LASER’s gait is defined by a finite state machine
to 240◦ and the knee joints have a range from −154.5◦ to using a leg-independent phase variable to schedule contact
−52.5◦ . The hip and knee designs allow the robot to operate and swing phases for each leg [2]. In this paper, a static
identically forward, backward and flipped upside-down. The walking gait is used for a simple QP walking controller
robot parameters are summarized in Table I. and the adaptive walking controller. Independent boolean
Each of LASER’s actuators consists of a custom high variables are used to define contact states scheduled sφ ∈
torque density electric motor coupled to a single-stage 9:1 {1 = contact, 0 = swing}, while estimated contacts are
planetary gear reduction. The lower link is driven by a bar defined by ŝφ ∈ {1 = contact, 0 = swing}. With this
linkage which passes through the upper link. The legs are framework, the robot can switch each leg between swing
serially actuated, but to keep leg inertia low, the hip and knee and stance phases for the controller to execute swing control
actuators are co-axially located at the hip of each leg. The and force control for each leg.
B. Controller Model The goal of the whole controller is to resolve an optimal
Due to the irregularities of the hybrid nature arising from distribution of leg forces F that drive the approximate COM
the repeated contact mode switches as legs enter or leave dynamics to the corresponding desired dynamics given by
stance or swing, it is often difficult to use traditional control bd = M µ + G. (8)
methods for balancing the robots. Therefore, a simplified
control model is used to optimize the ground reaction forces Since the model (1) is linear, the controller can naturally
for balancing the whole body motion after impact, enabling be expressed as a quadratic program (QP) [9], that can be
a form of real-time optimal controller. solved in real-time of 1 kHz:
By design, the robot has light limbs with low inertia as
compared to the overall body. Therefore, it is reasonable to F ∗ = min12 (AF − bd )T S(AF − bd )
F ∈R
ignore the effects of the legs into the whole body motion ∗
+ γ1 kF k2 + γ2 kF − Fprev k2 (9)
for planning ground reaction forces. In particular, the A1
robot controller model employs a commonly used linear s.t. CF ≤ d
z
relationship [8], [17] between the body’s linear acceler- Fswing =0
ation p̈c , angular acceleration ω̇ b , and the forces F =
The cost function in (9) represents three goals: driving
(F1T , F2T , F3T , F4T )T acting on each of the robot’s four feet.
the COM to the desired dynamics, minimizing the force
The following linear model is then derived:
    commands, and filtering the change of the solution F ∗
I3 ... I3 m(p̈c + g) ∗
F = , with respect to the previous time-step, Fprev . The weight
[p1 − pc ]× . . . [p4 − pc ]× IG ω̇ b parameters S, γ1 , γ2 reflect the relative priority in different
elements. Constraints CF ≤ d ensure that the optimized
| {z } | {z }
A b
(1) forces stay inside the friction pyramid and that the normal
forces lie within feasible bounds.
where m and IG are the robot’s total mass and centroidal ro-
Based on the contact model coming out from the contact
tational inertia, g is the gravity vector and pi , i ∈ {1, 2, 3, 4}
detection, the normal forces of swing legs are constrained to
are the positions of the feet. The term [pi − pc ]× is z
be zeros, Fswing = 0. Having this constraint in addition to
the skew-symmetric matrix representing the cross product
the friction cone constraints in the QP controller, we will
(pi − pc ) × Fi . The IG ω̇ b is actually an approximation of
enforce the force vectors of the swing legs to be zeros,
following equation:
Fswing = 0. The swing legs are then kept at the posing
d position using PD control described in Sec. III-D until the
(IG ω b ) = IG ω̇ b + ω b × (IG ω b ) ≈ IG ω̇ b (2)
dt contact detection in those legs is triggered. Based on this
The ω b × (IG ω b ) term is small for bodies with small control model, a walking controller with static walking gait
angular velocities and does not contribute significantly to is implemented on the robot.
the dynamics of the robot [8]. The b can be rewritten as
     D. Low-level Leg Control
mI3 0 p̈c mg
b= + . (3) The low-level leg control can generate joint torque com-
0 IG ω̇ b 0
| {z } | {z } mand from the ground force and foot position command.
M G
For low-level force control, the ground force command is
C. Balance Controller calculated by the controller and transformed to the hip frame
Let the state variable define as η = [e, ė]T which by rotation matrix R. Then, joint torques are calculated
  from,
pc,d − pc
e= (4)
log(Rd RT ) T
τi = J (q) Fi (10)
and
  where Fi is the foot force vector in the hip frame for
ṗc,d − ṗc leg i and J (q) is the leg Jacobian matrix. For the swing
ė = (5)
ω b,d − ω legs, the footstep location for each leg is calculated from
The desired and actual body orientations are described using corresponding hip location using a linear combination of
rotation matrices Rd and R, respectively, and the orientation Raibert heuristic and a feedback term based on velocity [2].
error is obtained using the exponential map representation The footstep locations are projected on an assumed ground
of rotations [3], [13]. We obtain the closed-loop dynamics plane and is calculated by
in term of η, as Tc
r
z0

0 I
 
0
 pstep,i = ph,i + φ ṗc,d + (ṗc − ṗc,d ) (11)
η̇ = Dη + Hµ, D = , H= (6) 2 kgk
0 0 I
where Tcφ is the stance time scheduled, z0 is the height of
then we can apply the PD control locomotion and ph,i is the position of the corresponding
 
  p̈c,d hip i. A Beizer curve is used to compute the desired
µ = −KP −KD η = . (7)
ω̇ b,d swing trajectory for swing legs. To track the desired swing
𝝁𝟏
trajectory for each foot, a PD controller with feedforward 𝐂𝐥𝐨𝐬𝐞𝐝 𝐥𝐨𝐨𝐩: PD Controller
𝜼ሶ = 𝑫𝜼 + 𝑯(𝝁𝟏 + 𝝁𝟐 + 𝜽)
term is used to compute joint torques [2]
𝒃𝒅 QP Force 𝑭∗
τ = J T [Kp,p (pd − p) + Kd,p (vd − v)] + τf f (12) 𝒃𝒅 = 𝑴 𝝁𝟏 + 𝝁𝟐 + 𝑮
Control
𝐑𝐨𝐛𝐨𝐭 𝜼

where J is the leg Jacobian, pd and vd are desired foot ෡


𝜽
𝝁𝟐 ෡
𝝁𝟐 = −𝑪 𝒔 𝜽 ෡ሶ = 𝐀𝐝𝐚𝐩𝐭𝐢𝐚𝐭𝐢𝐨𝐧 𝐋𝐚𝐰(𝜽,
𝜽 ෡ 𝜼෥, 𝜼) -
position and velocity in hip frame, p and v are actual foot ෥
𝜼 +
position and velocity in hip frame, Kp,p and Kd,p are the
෡𝒅
𝒃 ෡∗
𝑭
diagonal matrices of the proportional and derivative gains ෡𝒅 = 𝑴 𝝁
𝒃 ෡ +𝑮
ෝ 𝟏 + 𝝁𝟐 + 𝜽
QP Force Reference

𝜼
Control Model
for foot position in Cartesian coordinate, and τf f is the
feedforward torque from joint controller. 𝐂𝐥𝐨𝐬𝐞𝐝 𝐥𝐨𝐨𝐩: ෝ𝟏
𝝁
ෝሶ = 𝑫ෝ
𝜼 𝜼 + 𝑯ෝ ෡
𝝁𝟏 + 𝑯(𝝁𝟐 + 𝜽) PD Controller
IV. ADAPTIVE FORCE-BASED CONTROL
Having presented the background in the control architec- Fig. 4: Overview of Adaptive Controller. Block diagram
ture of quadruped robots in Sec. III, in this Section, first we of L1 adaptive controller.
will present the adverse effects of uncertainty in the dynamic
model of robot, then our proposed approach based on L1
adaptive controller for compensating uncertainties will be model updates in real-time using ODE solvers. The overview
elaborated. of adaptive control model is presented in Fig. 4.
We present a method to consider a reference model for L1
A. Effects of uncertainty in dynamic adaptive control that arises from a QP controller with input-
The QP formulation described in (9) provides input-to- to-state stability describe in (9). The state predictor can then
state stability for quadruped during walking and standing be expressed as follows,
that requires the accurate dynamical model of the system.
η̂˙ = D η̂ + H µ̂1 + H(µ2 + θ̂), (17)
The uncertainty comes from the mass, inertia, or the rough
terrain has adverse effects on the dynamic of the system where,
and sometimes it may cause instability in the control of the
robot. θ̂ = α̂||η|| + β̂ (18)
If we consider uncertainty in the dynamics and assume and µ̂1 is defined as:
that the matrices M and G of the real dynamics are  
unknown, we then have to design our controller based on µ̂1 = −KP −KD η̂ (19)
nominal matrices M̄ , Ḡ. Therefore, the desired dynamic
can be represented as According to (15), the b̂d get the form

b = M̄ (µ + θ) + Ḡ (13) b̂d = M̄ (µ̂1 + µ2 + θ̂) + Ḡ (20)

where, and the optimal distribution of leg forces F̂ for the reference
model can be achieved by
θ = M̄ −1 (M − M̄ )µ + (G − Ḡ)
 
(14)
F̂ ∗ = min (ÂF̂ − b̂d )T S(ÂF̂ − b̂d )
and the closed-loop system now takes the form F̂ ∈R12

η̇ = Dη + H(µ + θ). (15) + γ1 kF̂ k2 + γ2 kF̂ − F̂prev k2 (21)
s.t. C F̂ ≤ d
where D and H are defined in (6). Note that the uncertainty
z
θ is a linear function of µ, and therefore a function of η F̂swing =0
and time (since µ = µ(η, t)).
In order to compensate the estimated uncertainty θ̂, we
B. L1 adaptive controller for compensating the uncertain- can just simply choose µ2 = −θ̂ to obtain
ties
η̂˙ = D η̂ + H µ̂1 (22)
From the previous subsection, we have the system with
uncertainty described by (15). As a result, for every time t, which satisfies the property (30) and (31) and provides
we can always find out α(t) and β(t) such that [6]: a input-to-state stability. However, θ̂ typically has high-
frequency content due to fast estimation. For the reliability
θ(η, t) = α(t)||η|| + β(t) (16) of the control scheme and in particular, it is very important
The principle of our method is to design a combined to not have high-frequency content in the control signals.
controller µ = µ1 + µ2 , where µ1 is to control the model to Thus, we apply the L1 adaptive control scheme to decouple
follow the desired reference model and µ2 is to compensate estimation and adaptation [5]. Therefore, we will have
the nonlinear uncertainty θ. The reference model is similar µ2 = −C(s)θ̂ (23)
to linear model described in (1) which instead of M and G,
the nominal matrices (M̄ , Ḡ) are being used. Moreover, the where C(s) is a low-pass filter with magnitude being 1.
Define the difference between the real model and the where,
reference model η̃ = η̂ − η, we then have,
λmin (Q)
λ= > 0. (35)
η̃˙ = D η̃ + H µ̃1 + H(α̃||η|| + β̃), (24) λmax (P )
where The control signal µ∗ we construct by solving QP problem
µ̃1 = µ̂1 − µ1 , α̃ = α̂ − α, β̃ = β̂ − β. (25) (9), is not always the same as µ according to (31). Therefore,
it can be rewritten as
As a result, we will estimate θ indirectly through α and
β, or the values of α̂ and β̂ computed by the following µ∗ = µ + ∆ (36)
adaptation laws based on the projection operators [12],
where ∆ is the difference causing by QP optimization
˙ = ΓProj(α̂, yα ),
α̂ between the desired PD control signal µ and the real signal
˙
β̂ = ΓProj(β̂, yβ ). (26) µ∗ . By substituting (36) in (34), we have,

where Γ is a symmetric positive define matrix and the V̇ (η, µ∗ ) + λV (η) ≤ 2η T P H∆ ≤ εV (37)
projection functions yα and yβ are
B. Stability Proof
yα = −H T P η̃||η||
We consider the following control Lyapunov candidate
yβ = −H T P η̃. (27)
function
and P will be defined in Sec. V.
Ṽ = η̃ T P η̃ + α̃T Γ−1 α̃ + β̃ T Γ−1 β̃ (38)
V. STABILITY OF PROPOSED SYSTEM
The QP formulation described in (9) always has a solution. therefore, its time derivative will be
Nevertheless, if the desired dynamic vector bd violates
the inequality constraints (such as force limits and friction Ṽ˙ = η̃˙ T P η̃ + η̃ T P η̃˙ + α̃
˙ T Γ−1 α̃ + α̃T Γ−1 α̃˙
˙ ˙
constraints), the controller provides the optimum value of +β̃ T Γ−1 β̃ + β̃ T Γ−1 β̃ (39)
F ∗ . Therefore, the corresponding value for bd and µ can be
represented as follows: in which, we have
b∗ = AF ∗ (28) η̃˙ T P η̃ + η̃ T P η̃˙
= (D η̃ + H µ̃1 + H α̃||η|| + H β̃)T P η̃
µ∗ = M −1 (b∗ − G). (29)
+ η̃ T P (D η̃ + H µ̃1 + H α̃||η|| + H β̃)
However, we can assume a bounded error for computed = (D η̃ + H µ̃1 )T P η̃ + η̃ T P (D η̃ + H µ̃1 )
dynamic vector
+ α̃T H T ||η||P η̃ + η̃ T P H α̃||η||

kb − bd k ≤ δb (30)
+ β̃ T H T P η̃ + η̃ T P H β̃ (40)
and as a result of (30), we have
Because η̃ = η̂ − η satisfies the condition imposed by
kµ∗ − µk ≤ δµ . (31) (37), it implies that
A. Linear quadratic Lyapunov theory
(H η̃ + D µ̃1 )T P η̃ + η̃ T P (H η̃ + D µ̃1 ) ≤ −λη̃ T P η̃ + εṼ
According to Lyapunov theory [1], the PD control de- (41)
scribed in (7) will asymptotically stabilize the the system
if   Furthermore, with the property of projection operator [12],
0 I we have:
Am = (32)
−KP −KD
is Hurwitz. This means that by choosing a control Lyapunov (α̂ − α)T (Proj(α̂, yα ) − yα ) ≤ 0,
function candidate as follows (β̂ − β)T (Proj(β̂, yβ ) − yβ ) ≤ 0. (42)
V (η) = η T P η, (33) From (26) and (42), we can imply that
T
where P is the solution of the Lyapunov equation Am P + ˙ ≤ α̃T yα − α̃T Γ−1 α̇
α̃T Γ−1 α̃ (43)
P Am = −Q (where Am is defined in (32) and Q is any
symmetric positive-definite matrix), we then have ˙ T Γ−1 α̃ ≤ yαT α̃ − α̇T Γ−1 α̃
α̃
˙
V̇ (η, µ) + λV (η) =η T (D T P + P D)η β̃ T Γ−1 β̃ ≤ β̃ T yβ − β̃ T Γ−1 β̇
˙
+ λV (η) + 2η T P Hµ ≤ 0 (34) β̃ T Γ−1 β̃ ≤ yβT β̃ − β̇ T Γ−1 β̃
We now replace (40), (41) and (43) to (39), which results
in

Ṽ˙ ≤ −λη̃ T P η̃ + εṼ


+ α̃T (yα + H T P η̃||η||) − α̃T Γ−1 α̇
+ (yαT + η̃ T P H||η||)α̃ − α̇T Γ−1 α
+ β̃ T (yβ + H T P η̃) − β̃ T Γ−1 β̇
(a) (b)
+ (yβT + η̃ T P H)β̃ − β̇ T Γ−1 β̃ (44)

So, by using the chosen projection functions (27), then


we conclude that

Ṽ˙ + λṼ ≤ εṼ + λα̃T Γ−1 α̃ + λβ̃ T Γ−1 β̃


−α̃T Γ−1 α̇ − α̇T Γ−1 α̃
−β̃ T Γ−1 β̇ − β̇ T Γ−1 β̃. (45) (c)

We assume that the uncertainties α, β and their time Fig. 5: Motion Snapshot During Walking a) Nominal case
derivatives are bounded. Furthermore, the projection oper- without uncertainties b) Non-adaptive controller with a load
ators (26) will also keep α̃ and β̃ bounded (see [6] for in back c) Adaptive controller with a load in back
a detailed proof about these properties.) We define these
bounds as follows:
A. Nominal Case
||α̃|| ≤α̃b , ||β̃|| ≤ β̃b ,
First, we simulate the robot without any external load
||α̇|| ≤α̇b , ||β̇|| ≤ β̇b . (46) and uncertainties to qualify the performance of the baseline
controller. The robot stands up with the QP controller to
Combining this with (45), we have,
the height of 0.3m and then switch to the non-adaptive
Ṽ˙ + λṼ ≤ λδṼ , (47) locomotion controller to walk forward with the speed of
0.2 m/s using the static walking gait. This case is used as
where a reference to compare with the cases with uncertainty in
1 1 1 mass and inertia.
δṼ = 2||Γ||−1 (α̃2b + β̃b2 + α̃b α̇b + β̃b β̇b ) + εṼ .
λ λ λ
(48) B. Uncertainty in Mass and Inertia
Next, the 6kg load is applied to the back of the robot
Thus, if Ṽ ≥ δṼ then Ṽ˙ ≤ 0. As a result, we always have
to create uncertainty in mass and inertia, simultaneously.
Ṽ ≤ δṼ . In other words, by choosing the adaptation gain
The results of the non-adaptive controller and the adaptive
Γ and also λ sufficiently large, we can limit the Control
controller for this case are shown in Fig. 6. Since our
Lyapunov Function (38) in an arbitrarily small neighborhood
simulation does not emphasize the significant difference in
δṼ of the origin. Therefore the tracking errors between the
tracking errors of position along the x-axis, y-axis, roll and
dynamics model (15) and the reference model (17), η̃, and
yaw angles, we select to show plots of tracking errors in
the error between the real and estimated uncertainty, α̃, β̃
z-axis and pitch angle.
are bounded as follows:
s By comparing plots in Fig. 6, it can be obtained that the
δṼ q q baseline controller cannot compensate for the uncertainties
||η̃|| ≤ , ||α̃|| ≤ ||Γ||δṼ , ||β̃|| ≤ ||Γ||δṼ . (49) and the results are improved by using adaptive controller.
||P ||
Although we have a constant error for the adaptive controller,
VI. S IMULATION it does not contradict with the algorithm we have developed,
because the controller system we have designed guarantees
This section presents the results from high-fidelity simu-
the input-to-state stability.
lations to test the adaptive controller on the LASER robot.
The control system presented in this paper is implemented
C. Varying Load
in ROS and simulations are performed using Gazebo 9. The
robot is simulated to carry a load up to 50% of the robot Finally, a 2kg load is applied to the back of the robot and
weight during walking base on the approach we have devel- a time-varying force is applied to the robot body during the
oped in previous sections. Some snapshots of the simulations motion (after 2 seconds from starting point). The value of
are presented in Fig. 5. To demonstrate the effectiveness and external force with the tracking error along the z-axis and
performance of the adaptive controller, results are compared pitch angle are presented in Fig. 7. These plots are results
for the non-adaptive and adaptive controller. of using the adaptive controller to demonstrate its stability.
0.10
COM Position Error along Z-axis Time Varying load along negative Z-axis
70

0.08
60
Error (m)

Load (N)
0.06 50
Case I
Case II
Case III
0.04 40

30
0.02

20
0.00
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 0 2 4 6 8 10 12 14

Time (s) Time (s)

0
Pitch Error 0.10
COM Position Error along Z-axis

−5
0.08

−10
Error (deg)

Error (m)
0.06
Case I
−15 Case II
Case III
0.04
−20

0.02
−25

−30 0.00
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 0 2 4 6 8 10 12 14

Time (s) Time (s)


Fig. 6: Plots of nominal case and load-carrying results.
Case I: Nominal case without uncertainties; Case II: Non- 15
Pitch Error
adaptive controller with a load in back; Case III: Adaptive
controller with a load in back 10

5
Error (deg)

VII. C ONCLUSION 0

In summary, we have presented a control method to apply


−5
L1 adaptive control for dynamic legged robot walking under
uncertainties. The controller explicitly considers the nonlin- −10

ear, overactuated, and hybrid dynamics that are characteristic


of quadruped robots. The proposed control system uses a −15
0 2 4 6 8 10 12 14

quadratic program optimization-based controller to create a Time (s)


closed-loop nonlinear reference model for the L1 adaptive Fig. 7: Plots of carrying a time-varying load using
controller for working in the presence of uncertainty. Nu- adaptive controller
merical simulations on LASER demonstrate the validity of
the proposed controller in order to track nonlinear reference
dynamics under the presence of a high level of uncertainty.
R EFERENCES [10] M. Hutter, C. Gehring, D. Jud, A. Lauber, C. D. Bellicoso, V. Tsounis,
J. Hwangbo, K. Bodie, P. Fankhauser, M. Bloesch, R. Diethelm,
[1] A. D. Ames, K. Galloway, J. W. Grizzle, and K. Sreenath, “Rapidly
S. Bachmann, A. Melzer, and M. Hoepflinger, “ANYmal - a highly
Exponentially Stabilizing Control Lyapunov Functions and Hybrid
mobile and dynamic quadrupedal robot,” in IEEE/RSJ International
Zero Dynamics,” IEEE Trans. Automatic Control, 2014.
Conference on Intelligent Robots and Systems, Oct 2016, pp. 38–44.
[2] G. Bledt, M. J. Powell, B. Katz, J. Di Carlo, P. M. Wensing, and
[11] D. P. Krasny and D. E. Orin, “Evolution of a 3d gallop in a
S. Kim, “Mit cheetah 3: Design and control of a robust, dynamic
quadrupedal model with biological characteristics,” Journal of Intel-
quadruped robot,” in 2018 IEEE/RSJ International Conference on
ligent & Robotic Systems, vol. 60, no. 1, pp. 59–82, 2010.
Intelligent Robots and Systems (IROS). IEEE, 2018, pp. 2245–2252.
[12] E. Lavretsky, T. E. Gibson, and A. M. Annaswamy, “Projection
[3] F. Bullo and R. M. Murray, “Proportional derivative (PD) control on
operator in adaptive systems,” arXiv:1112.4232v6, 2012.
the Euclidean group,” in Proc. of the European Control Conference,
[13] R. M. Murray, Z. Li, and S. S. Sastry, A Mathematical Introduction
Rome, Italy, Jun. 1995, pp. 1091–1097.
to Robotic Manipulation. CRC Press, 1994.
[4] C. Cao and N. Hovakimyan, “Stability margins of l1 adaptive con-
[14] Q. Nguyen and K. Sreenath, “L 1 adaptive control for bipedal robots
troller: Part ii,” Proceedings of American Control Conference, pp.
with control lyapunov function based quadratic programs,” in 2015
3931–3936, 2007.
American Control Conference (ACC). IEEE, 2015, pp. 862–867.
[5] ——, “Design and analysis of a novel l1 adaptive controller with
[15] H.-W. Park, P. Wensing, and S. Kim, “Online planning for autonomous
guaranteed transient performance,” IEEE Transactions on Automatic
running jumps over obstacles in high-speed quadrupeds,” in Proceed-
Control, vol. 53, no.2, pp. 586–591, March, 2008.
ings of Robotics: Science and Systems, Rome, Italy, July 2015.
[6] C.Cao and N.Hovakimyan, “L1 adaptive controller for a class of
[16] H.-W. Park, P. M. Wensing, and S. Kim, “High-speed bounding with
systems with unknown nonlinearities: Part i,” American Control
the mit cheetah 2: Control design and experiments,” The International
Conference, Seattle, WA, pp. 4093–4098, 2008.
Journal of Robotics Research, vol. 36, no. 2, pp. 167–192, 2017.
[7] J. Di Carlo, P. M. Wensing, B. Katz, G. Bledt, and S. Kim, “Dynamic
[17] B. Stephens and C. Atkeson, “Push recovery by stepping for humanoid
locomotion in the mit cheetah 3 through convex model-predictive
robots with force controlled joints,” in IEEE-RAS International Con-
control,” in 2018 IEEE/RSJ International Conference on Intelligent
ference on Humanoid Robots, Dec. 2010, pp. 52–59.
Robots and Systems (IROS). IEEE, 2018, pp. 1–9.
[18] Y. Tan, Z. Chao, S. Han, H. Li, and X. Liu, “Trotting control of load-
[8] M. Focchi, A. del Prete, I. Havoutis, R. Featherstone, D. G.
carrying quadruped walking vehicle with load variations based on the
Caldwell, and C. Semini, “High-slope terrain locomotion for torque-
centroidal dynamics and adaptive sliding mode control,” Mathematical
controlled quadruped robots,” Autonomous Robots, vol. 41, no. 1,
Problems in Engineering, vol. 2020, 2020.
pp. 259–272, Jan 2017. [Online]. Available: https://doi.org/10.1007/
[19] Y. Tan, Z. Chao, H. Li, S. Han, and Y. Jin, “Control of trotting gait
s10514-016-9573-1
for load-carrying quadruped walking vehicle with eccentric torso,”
[9] C. Gehring, S. Coros, M. Hutter, M. Bloesch, M. Hoepflinger, and
International Journal of Advanced Robotic Systems, vol. 17, no. 4, p.
R. Siegwart, “Control of dynamic gaits for a quadrupedal robot,” in
1729881420931676, 2020.
IEEE International Conference on Robotics and Automation (ICRA),
May 2013, pp. 3287–3292.

You might also like