Abstract
This paper proposes an online gain adaptation approach to enhance the robustness of whole-body control (WBC) framework for legged robots under unknown external force disturbances. Without properly accounting for external forces, the closed-loop control system incorporating WBC may become unstable, and therefore the desired task goals may not be achievable. To study the effects of external disturbances, we analyze the behavior of our current WBC framework via the use of both full-body and centroidal dynamics. In turn, we propose a way to adapt feedback gains for stabilizing the controlled system automatically. Based on model approximations and stability theory, we propose three conditions to ensure that the adjusted gains are suitable for stabilizing a robot under WBC. The proposed approach has four contributions. We make it possible to estimate the unknown disturbances without force/torque sensors. We then compute adaptive gains based on theoretic stability analysis incorporating the unknown forces at the joint actuation level. We demonstrate that the proposed method reduces task tracking errors under the effect of external forces on the robot. In addition, the proposed method is easy-to-use without further modifications of the controllers and task specifications. The resulting gain adaptation process is able to run in real-time. Finally, we verify the effectiveness of our method both in simulations and experiments using the bipedal robot Draco2 and the humanoid robot Valkyrie.
Keywords: whole-body control, gain adaptation, external disturbances, legged robot control, stability analaysis
1 Introduction
Stability analysis for efficient whole-body control (WBC) of humanoid robots is important to execute robustly multiple tasks in bipedal and humanoid robots. Most WBC approaches face difficulty ensuring the stability at the closed loop systems due to intricate control structures. For this reason, bipedal and humanoid robot stability is frequently studies in task-space, based on constant feedback gains. However, these feedback gains defined a priori might be inappropriate to track the planned motions robustly and stabilize the robot’s behaviors under unknown external disturbances. This paper proposes an online gain adaptation method based on stability analysis of the closed-loop robotic system via WBC. A basic assumption of our problem is that there are no force/torque sensors to measure both contact forces and external force disturbances. Our online gain adaptation approach utilizes three methods: 1) a WBC controller, dubbed Whole-Body Locomotion Controller (WBLC), 2) a Centroidal dynamic model, and 3) various approximation techniques.
1.1 Whole-Body Control
Legged humanoid robots need to deliver stable and robust legged manipulation (also referred to as loco-manipulation) behaviors while operating in unstructured environments. For this purpose, Whole-Body Control (WBC) enables the generation of control commands for tracking multiple task trajectories effectively Khatib et al. (2004). Most WBC frameworks rely on dynamic models of the robot and classical control laws such as proportional-derivative (PD) control Feng et al. (2015) or impedance control Albu-Schäffer et al. (2007). Based on these requirements, projection-based WBC approaches have been widely used due to their intuitive, concise, and computationally efficient form. However, more versatile algorithms are frequently needed to consider inequality and unilateral constraints Lee et al. (2012) such as Contact Wrench Cone (CWC) constraints Caron et al. (2015). Optimization-based approaches have been widely used to incorporate inequality constraints explicitly Escande et al. (2014); Hong et al. (2020); Feng et al. (2014); Wiedebach et al. (2016); Kim et al. (2020). However, there is a major challenge for these optimization-based WBC approaches: how can we ensure the desired task hierarchy and how can we guarantee system stability when there exist uncertain external forces?
A well-known method to enforce task priorities employs hierarchical quadratic programming (HQP) Escande et al. (2014); Hong et al. (2020). In Feng et al. (2014); Wiedebach et al. (2016), the authors employ a single quadratic program (QP) with different weighted cost terms to impose a task hierarchy. These types of controllers that employ a single QP process reduce the number of optimizations compared with HQP and enforce the task hierarchy in an implicit manner; however, the weights are heuristic, resulting in occasional violations of the priorities. Often, there is a discrepancy between the desired configuration and the result from the WBC optimization. The joint acceleration, which is one of the results from the WBC optimization process, can be numerically integrated to resolve this problem Kuindersma et al. (2016); Koolen et al. (2016); Ahn et al. (2021). Alternatively, this problem can be solved by directly re-optimizing the trajectories considering dynamic reachability Lee et al. (2020). Another approach is to have WBC incorporate both internal and external force/torque measurements via embedded sensors within the mechanical actuation/transmission system Nori et al. (2015). These sensors can be used to improve the stability of the robots via their WBC controllers.
In general, it is complex to analyze the stability of robots controlled by the WBC approaches. For instance, stability of a priority-based kinematic control approach is verified based on Lyapunov stability in Antonelli (2009). Also, it is shown that the robot controlled by the operational space control framework is asymptotically stable Dietrich et al. (2018). However, the above stability analysis studies do not consider floating-base dynamics of the legged robot and the presence of unknown external disturbances. Compared with the above stability analysis which are applied to projection-based approaches, the stability analysis of optimization-based WBC approaches is more complicated to perform when considering external perturbations. We previously proposed an optimization-based WBC method dubbed WBLC, that combines both a projection-based controller and an optimization technique to enforce task priorities while satisfying inequality constraints Kim et al. (2020). The WBLC framework combines a whole-body kinematic controller and a whole-body dynamic controller to compute joint position, velocity, acceleration, and torque references in real-time as shown in Figure 1. WBLC has successfully demonstrated dynamic locomotion of passive ankled robots. However, the robustness of WBLC regarding the external disturbances mostly relies on the experts’ parameter tuning in experiments. Also, we did not address the theoretic stability analysis in our previous work Kim et al. (2020). In this paper, we will analyze here our WBLC framework for ensuring stability and tracking performance under external forces. This is key since if WBLC is affected by unknown external forces, the robot could easily lose balance.
1.2 Robots With External Disturbances
Compared to other methods which focus on push recovery, here we focus on adaptive control as a means to deal with external forces. Some push recovery methods employ linear MPC to obtain CoM and foot trajectories based on the Zero Moment Point (ZMP) dynamics to re-plan walking behaviors for disturbance recovery Mason et al. (2018). The desired recovery force associated with the ZMP condition is converted to CoM positions Wang et al. (2014). It has been widely investigated how to determine stepping motions for balance recovery such as Push Recovery Model Predictive Control (PR-MPC) Stephens and Atkeson (2010b) and Capture Point control Pratt et al. (2006). Although these strategies have accomplished successful results, they are based on motion generation instead of modifying feedback gains or impedances. However, the latter strategy considered in this paper can provide a layer of additional robustness. Indeed, it is not always needed to perform an additional stepping motion to recover from external forces. If the external or contact forces are not adequately compensated for or there exist unknown external forces, the controllers may be unstable regardless of the recovery strategy Nakanishi et al. (2008).
One solution to this problem is to compensate for external forces. This has been often studied as a compliant control problem for balancing despite the external forces Hyon et al. (2007); Stephens and Atkeson (2010a); Ott et al. (2011); Herzog et al. (2016). A key idea of the above researches is to obtain proper ground reaction forces keeping the balance against the external force then the forces are utilized to compute the control command torque Hyon et al. (2007); Ott et al. (2011). LQR is employed for better momentum control of a torque-controlled humanoid and they show robust performance on balancing in the face of unknown disturbances Herzog et al. (2016). A common point of the above researches is that they rely on constant gains or impedances. Although the above researches have accomplished practical balancing ability, the stability of the controlled robots are not proven at the actuation level yet when the external forces are applied to the robots. Furthermore, they also need to modify or replan the task specifications such CoM and angular momentum for keeping the robot’s balance. By contrast, our work does not require this replanning step.
Another solution to the above problem is to directly measure external forces/moments using an F/T sensor Käslin et al. (2018) or internal, tactile, and F/T sensors, simultaneously Ivaldi et al. (2011). However, it is normally challenging to attach F/T sensors everywhere in the robot’s body. An alternative method is to accurately estimate external forces and the corresponding ground reaction forces relying on the dynamic model of the robot Xin et al. (2018). For humanoid robotic applications, an external force/moment can be estimated based on an extended Kalman filter using whole-body dynamics, force sensor on the feet, and an IMU Benallegue et al. (2018). In some cases, external forces can be measured using force-sensing resistors Hawley et al. (2019) on the feet. We can also deploy adaptive control approaches for stabilizing the robots without direct estimation of the external forces. A robust and adaptive control approach was proposed without using the robot’s dynamic model to guarantee stable control performance under uncertain disturbances Lee et al. (2016). This approach shows the robustness of WBC with respect to impact disturbance at the task level.
1.3 Contributions
Overall, this paper proposes a unique gain adaptation approach for WBLC applied to legged robots under both contact and external forces. More specifically, we aim to enhance the robot’s balance and robust performance by guaranteeing feedback system stability under unknown external forces. To do that, we leverage the WBLC as proposed in Kim et al. (2020). Then, we approximately decouple the joint-space dynamics and analyze their closed-loop stability. Compared to other approaches such as Lee et al. (2016), we adapt the feedback gains to make the closed-loop system critically damped at the joint level. This results in four contributions.
• Firstly, the proposed adaptation approach is very intuitive and straightforward to be implemented. Our method does not require any modification of the task specifications defined a priori. Without any significant modifications to the controller and planners, it is also possible to employ classical WBC methods Kim et al. (2020) for controlling the robot in the presence of unknown external forces.
• Second, the proposed WBLC approach also improves task tracking performance with respect to external disturbances. This improvement results in the robot’s ability to improve its balance and provide more robust bipedal walking.
• Third, we provide a joint-level control stability study of robots perturbed by external forces. There exist a number of studies considering the stability of legged robots performed at the force or task/operational space level. These types of stability analysis cannot ensure whole-body stability involving actuation effects since those take place at the joint level.
• Lastly, the proposed online gain adaptation method is designed to be easy-to-use. We do not need to rely on F/T sensors and a complicated estimation process to stabilize the robot system due to our use of centroidal robot dynamics.
In this paper, our primary task is to control the position of the CoM, keeping balance in the double support phase and to stably walk against the external disturbances. Many studies on legged robots such as push recovery and reactive planning have addressed keeping balance while standing and walking. Regarding reactive planning processes, they do not change low-level controller feedback gains as we do and instead modify the desired task specifications or trajectories in the presence of the perturbations. Therefore, in such methods, it is hard to guarantee the closed-loop stability of the robot while tracking the desired task trajectories. By contrast, our method stabilizes the robot against the external disturbance by adapting the feedback gains without further modification of task trajectories. For this reason, we can ensure the closed-loop stability of the robot while the external disturbance is applied to the robot. Our proposed approach is therefore simpler and more intuitive than reactive planning approaches and it can also be used in combination with them to enhance their performance.
The remainder of this paper is organized as follows. Section 2 explains the preliminaries related to a QP-based WBC approach, e.g., WBLC and the Centroidal Dynamic model. The proposed approach is explained in Section 3. In Section 4, we apply the proposed adaptive approach to a legged robot Draco2 to show the effectiveness of the proposed method in numerical simulations and hardware experiments.
2 Preliminaries
In section 2.1, we first review our previous WBLC. Then, in section 2.2, we thoroughly analyze the closed-loop behavior of robots with no external perturbations aside from the ground forces needed to balance.
2.1 QP-Based Whole-Body Locomotion Control
We review here the structure of our previous WBC controller. Given a configuration space and an input space , the rigid-body dynamics of a robot is described as follows:
(1) |
Where , , , and denote the joint position vector, mass/inertia matrix, sum of Coriolis/Centrifugal and gravity forces, and torque command, respectively. Considering six DOFs virtual joints for the floating base, n u = n − 6, we can define the selection matrix . is a vertically concatenated contact force vector and the corresponding contact Jacobian is represented as where m is the number of contacts. A standard feedback control scheme can be designed in the joint space using a PD control law:
(2) |
Where e q = q d − q, and . Also, , , and denote desired joint position, desired joint velocity, proportional gain matrix and derivative gain matrix, respectively. represents a feedforward torque command generated by the Dynamic-level WBC control block shown in Figure 1. Using a hierarchical inverse kinematic control scheme, we can compute q d and given task specifications, x d , , and . Let us consider N hierarchical tasks in a lexicographic order. The desired joint position is obtained by q d = q + Δq where and
(3) |
Where J k|k−1(q) = J k (q)N k−1(q), and N 0(q) = I. In addition, and can be simply computed as and where
(4) |
, and . Based on derivations of q d , , and , an additional optimization problem is formulated to handle full-body dynamics of the robot, contact wrench cone constraints, and torque limits as described in Kim et al. (2020), i.e.:
(5) |
Where , , and are weighting matrices for the objective function. and are feedback gains in the optimization problem. is a matrix for expressing the contact wrench cone constraints and upper bounds of the reaction forces for smooth contact changes. Γ min and Γ max are the minimum and maximum torques of the actuators. Based on the optimal decision variables and , we can provide the feedforward torque command as follows:
(6) |
Where . Using the above desired torque command , we can compute the low-level joint torque command in (2).
2.2 Closed-Loop Analysis Without External Perturbations
We analyze the closed-loop behavior of the robotic system. Substituting (6) into (2) we get:
(7) |
Where , , and . By substituting the command in (7) into the full-body dynamics in (1), the closed-loop dynamics become:
(8) |
With
(9) |
Where subscriptions and denote the properties for virtual and actuated joints, respectively. Virtual joints are those corresponding to degrees of freedom for the floating base whereas actuated joints correspond to motorized robot articulations. As such, we define a selection matrix for the virtual joints, . We also introduce a matrix called the Schur Complement of M aa in M(q) as . Since M(q) is positive definite and M aa is invertible, the matrix M aa,s is also invertible. The actuated joint acceleration can be expressed as follows:
(10) |
Where . Assuming that the optimal decision variable satisfies and with perfect compensation for the Coriolis/centrifugal and gravitational forces, we can decouple the joint space dynamics: Δc = 0. However, the optimal decision variable relies on the robot model and there is no direct feedback control-loop for regulating the contact force error . Also, Δc becomes significant when Centroidal dynamics are not precisely controlled due to external disturbances, since both and F c significantly affect the Centroidal dynamics of the robot. So the above assumptions are frequently invalid in the real world. This is the reason to introduce the error Δc in (10). Then, we can approximately decompose the closed-loop dynamics in the joint space as follows:
(11) |
Where , , and for all i ∈ {7, …, n}. q i , , and represent the joint position, velocity, and acceleration values for the ith joint, respectively. Also, Δc i is the ith component of Δc. The relationships between the natural frequency, W n , and the PD gains are defined as and , respectively, where ζ denotes the damping ratio. To achieve critical damping, the derivative gain must be, . Based on this analysis, it is possible to obtain the gain matrices of the whole-body control to achieve stable closed-loop behavior.
3 Proposed Gain Adaptation Method
Our online gain adaption approach considers robots with unknown ground reaction forces on their feet as well as unknown external forces applied to their bodies. We use four steps to tune the feedback gains in WBC as shown in Figure 2. First, we obtain a solution for the ground reaction forces using the optimization problem (5) as shown in Figure 2A. Second, given current joint position and velocities, the centroidal dynamics are computed, discretized and approximated as shown in Figure 2B. In Figure 2C, we show the estimation of unknown external forces applied to the robot’s body using the previously computed ground contact forces and centroidal robot dynamics. Lastly, we test the stability of the robot considering the estimated forces and contacts. In turn the feedback gains are adapted to stabilize the robot under the external disturbance, as shown in Figure 2D. This section describes the detailed process of our approach.
3.1 Closed-Loop Behavior With External Forces
Next, we consider an additional unknown external force applied to the robot’s body, such as a force acting on the torso or pelvis. The optimization problem (5) cannot directly incorporate the unknown perturbation. Given such perturbations, the rigid-body dynamics of the robot changes as follows:
(12) |
Where denotes the unknown external force acting on the robot’s body and is the corresponding Jacobian. Based on Proposition 1, the closed-loop behavior of the system with the control torque input becomes:
(13) |
Where . When the external disturbance is unknown, it is impossible to compute Δc and F t , separately. Therefore, we consider the effect of the external disturbance using Sψ t .
Proposition 1. Given a matrix where , , and n = n 1 + n 2 , can be expressed as where G = E −1 and .
The detailed proof of Proposition 1 is provided in Appendix. We introduce an estimated external force satisfying the following equality: flushleft
(14) |
Where and denote the estimated force and torque of the unknown disturbance, respectively. Also, . Unfortunately, we cannot simply express Sψ t in terms of q and since we need an additional explicit mapping between and these joint state variables.
Our approach is to employ robot centroidal dynamics to convert the external forces into corresponding stiffness and damping forces in the joint space. We can approximate the CoM velocity, acceleration, and the time derivative of its angular momentum with a discrete time interval Δt Dai et al. (2014) as follows:
(15) |
Where p, , J CoM(q) denote the position of CoM, its angular momentum, and its Jacobian, respectively. q p , , p p , and are the joint position, the joint velocity, the CoM position, and the CoM velocity in the previous time step, respectively. First, we estimate the linear force corresponding to the external disturbance, f t , using the centroidal dynamics and CoM acceleration:
(16) |
Where represents the linear force part for the ℓ-th contact among from WBC. Also, M r and g denote the total mass of the robot and the gravity vector, respectively. In addition, can be estimated by using the centroidal momentum equation and .
(17) |
Where denotes the torque part for the ℓ-th contact among . In turn, we can re-express the closed-loop dynamics (13) using the estimated external force . We cannot decouple the closed-loop dynamics due to the term ψ t .
3.2 The Proposed Gain Adaptation Approach
Our proposed method consists of decoupling the closed-loop dynamics by approximating ψ t . Our goal is to obtain a pair of PD gains to ensure that the approximated closed-loop dynamics are critically damped, i.e.
(18) |
Where , , and Ω t are approximated PD gain matrices and a constant bias term, respectively. To obtain this approximation we have used the centroidal dynamics and the external force approximations specified further above. First, p is calculated using a first order approximation:
(19) |
In turn the estimated external force can be expressed in joint space as follows using (15) and (16):
(20) |
Where both matrices, and , represent gain matrices. Using established adaptive techniques we chose the proportional gain as and plugging it in the second equation shown in (20), we get where and represent positive coefficients. We also get ϵ f as:
(21) |
Where . In turn Eq. 20 becomes:
(22) |
Where , , and .
Secondly, we estimate (15) using the first order approximation:
(23) |
Where is the kth column vector of A G (q). Based on the above approximations, the estimated external torque can be expressed as follows:
(24) |
Where both matrices, and , are gain matrices for estimating the external torque. More specifically, each component can be computed using adaptive control techniques in Åström and Wittenmark (2013) as: and , where and represent positive coefficients. The term ϵ τ is described as where . Suppose r ℓ and r t are constant then we can re-write the estimated as:
(25) |
Where and . The detailed γ τ is
(26) |
We can construct using selection matrices and as follows:
(27) |
Where , , and γ s = S f γ f + S τ γ τ . Using the above estimated external force , we approximate ψ t as follows:
(28) |
Where and are diagonal matrices. We define and where and are the ith diagonal components of and , respectively. The last term takes the form . Since , , , and are diagonal matrices, the closed-loop dynamics in actuated joint level space becomes:
(29) |
Where , , and . Also, we define , , , and , and .
We define the state and express the state-space model of the above dynamics equation as follows:
(30) |
Properly choosing , , , and , we can make negligible. Then, the matrix V should be Hurwitz to guarantee that the closed-loop state model is exponentially stable. To compute the characteristic equation of the matrix V, we express the determinant of the matrix V − λ I 2n as follows:
Which means that det(V − λ I 2) = det(λ −1 X + I n ). It is complicated to obtain analytic forms of the eigenvalues of V. For this reason, we can compute the determinant above using the Leibniz formula described in Bhatia (2013).
(31) |
Where represents the big-O notation. Using the above formulation, the characteristic equation can be re-written as:
(32) |
All solutions of the above characteristic equation λ should be negative to guarantee that the matrix V is Hurwitz. Such analysis could be conducted via numerical computation given the gain matrices. However, in this paper, we aim at adaptive feedback gains of the controller so that we obtain and . In turn the term vanishes. We can obtain the analytical expression of the approximated characteristic equation as follows:
(33) |
This condition will allow us to make the closed-loop system stable.
Condition 1. The following condition makes the matrix V Hurwitz: and . Without any adaptation, these condition should be fulfilled to make the closed-loop system asymptotically stable given desired feedback gains.
We can approximately decouple the dynamics of (29) in the joint space as follows:
(34) |
Where . We enforce that the joint space dynamics are critically damped given and for all i ∈ {7, …, n}. For the above system, the following relationships are obtained in terms of the natural frequency and the damping ratio: and . Since we already know all gains and coefficients, , , , and , ζ can be determined a priori. We can compute adaptive variables and to make and ζ = ζ d .
(35) |
Condition 2. Since W n is a positive real number, it is always true that and in the adaptive system. In such case: and . However, if there are no and satisfying the equation above, the motion bandwidth cannot be stably achievable under the external force.
Based on the previous adaptation scheme, we replace the WBLC , by , in the optimization problem where and . These feedback gains are limited in practice. Since relying on the contact forces, the adaptive gains might abruptly increase during contact transition or applying an impact force. For such reason, we consider the following additional condition:
Condition 3. We set the ranges of and for real implementation in robotic systems.
After testing all conditions, we update the gains in WBLC. Then, the control command torque is obtained without further modifications given the task specifications. Algorithm 1 summarizes the entire process of how to update the feedback gains in WBLC.
Algorithm 1
Proposed Gain Adaptation Algorithm
4 Simulations and Experiments
In this section, our proposed adaptive approach is validated by demonstrating both simulations and experiments using a 10 DOF liquid-cooled bipedal robot called Draco2 and a full-body humanoid robot called Valkyrie. Since Draco2 is a line-feet biped robot, it is hard for it to maintain its balance during the double support phase robustly. So, in section 4.1, we focus on showing how to stabilize the robot’s body during the double support phase while an external force is applied to its pelvis, as shown in Figure 3. In turn we demonstrate experimentally that our online gain adaptation method can be applied in real-time to a physical platform as discussed in section 4.2. Using Valkyrie which uses flat feet for balancing, we implement walking simulations to verify the effectiveness of the proposed online gain adaptation approach when there exists long-term perturbations instead of fast impacts. This study is described in section 4.3. We employ our open-source software architecture called PnC 1 (Planning and Control).
4.1 Draco2 Simulations
Using Draco2, we implement three simulations to show that the proposed approach makes the robot more stable: 1) pushing the pelvis in the double support phase, 2) pushing the pelvis while swinging CoM position, 3) applying an impact force to the pelvis in the double support. For whole-body control, we define these tasks: x CoM, x base, o, x feet, and x joint, which represent tasks for controlling the position of the robot’s CoM, the orientation of its floating base, the position and orientation of its feet, and the joint configuration, respectively.
4.1.1 Pushing Force Applied to the Pelvis
The first simulation aims to control the position of the robot’s CoM while applying a pushing force at the pelvis. We define the desired location of the CoM as [3.80, ×, 10–5, −0.167, 0.7] m in the double support phase. The external force is applied to the y-direction of the pelvis with an amplitude of 12 N during the interval [10, 15] s. We design the appropriate bounds for the gain margins as , , , and .
As the snapshots show in Figure 3A, gain adaptation reduces the adverse effects of external forces on the robot’s behavior. Figure 3B shows the CoM positions when the robot is controlled with and without the proposed gain adaptation scheme. For a more precise analysis, we compare the maximum variations of the robot’s CoM position: max(x CoM) − min(x CoM). Without the proposed approach, [0.013 9, 0.081 0, 0.012 4] m is the maximum amplitude of the variation. When using our proposed adaptation approach the amplitude reduces to [0.029, 0.069 5, 0.009 8] m. In addition, we compare the maximum distances of the position of the CoM where denotes the farthest position from the desired position while the external force is acting on the robot. The values of with and without the proposed adaptive approach are 0.070 9 m and 0.083 5 m, respectively. Therefore with the proposed approach is 84.91% of that without our method. Although the difference is small, it is significant for legged robots having a small support polygon such as Draco2. The proposed approach results in the adaptation of the feedback gains in WBLC as shown in Figure 4A. Also, the configuration of the robot for each case is represented in Figure 4B. As shown in the results, the adapted gains contribute to stabilize the robot so that the configuration becomes less oscillatory. More specifically, the settling times of the simulations with and without the proposed approach are 18.16 and 10.2 s, respectively.
4.1.2 Pushing Force While Swinging
In this second simulation, we implement a behavior consisting of swinging the position of the robot’s CoM in double support phase while an external force is acting on the pelvis. We generate a sinusoidal reference for the CoM with 0.03 m amplitude and 0.5 Hz frequency. Figures 5A,B show snapshots of the simulations. As shown in Figure 5A, the controller with fixed gains falls due to the effect of the external force. On the other hand, the adaptive gains prevent the robot from losing balance, as shown in Figure 5B. The positions of the CoM controlled by WBLC with and without adaptive gains are compared in Figure 5C. The robot with the adaptive gains can track the trajectory of the CoM while maintaining solid contacts with the ground. However, employing WBLC without adaptation fails to control the position of the CoM as shown in Figure 5C, and as a result the right foot starts moving away from contact around 14 s as shown in Figure 5D.
4.1.3 Impact Force
The last simulation compares the response of the robot due to an impact force with and without the proposed adaptive control approach. An impact force with an amplitude 700 N over 0.01 s from 10 s is applied. Figure 6 shows the position of the CoM in response to the impact force, and the impact timing is showing as marked lines. We compare the settling times of the y position of the CoM, which are 11.194 and 4.903 s without and with the proposed approach, respectively. Also, the peak of the y position of the CoM with adaptive gains, − 0.207 6 m, is smaller than that without the proposed approach, − 0.219 0 m. Based on these results, it is verified that the proposed approach makes the robot more robust to impact forces.
4.1.4 Addition Simulations
Here, we increase the amplitude of the external disturbances with respect to the previous simulations to analyze the effectiveness of our method. Firstly, we increase the external pushing force from −12 N to −18 N with respect to the forces used in Section 4.1.1. Without the proposed adaptation, the robot falls when applying −14 N due to the effect of the pushing force. However, the robot with the adapted gain scheme keeps its balance while tolerating external forces up to −17 N. The robot falls when applying −18 N. Secondly, we increase the pushing force from −10 N to −17 N while swinging the CoM position as shown in the simulation in Section 4.1.2. The robot with fixed gains loses its balance when the pushing force is −12 N. By contrast, our method enables the robot to swing the CoM position robustly while increasing the external force up to −16 N. These results indicate that the robot’s balance is more fragile when applying the external force during dynamic motions rather than static ones. Lastly, we repeat the impact test of Section 4.1.3 with different amplitudes of the impact forces. The robot without our method slips and falls when the amplitude of the impact is −1500 N. In contrast, our gain adaptation scheme keeps the robot standing up to −1900 N of impact force. Overall, these results confirm that our proposed gain adaptation method yields more robust balancing capabilities against external disturbances than using fixed gains.
For more detailed analysis of the results, we calculate the Integral Absolute Error (IAE) of the CoM task with respect to the external forces during the perturbation period:
(36) |
Where [t i , t f ] denotes the time interval for the perturbation. Figure 7 shows the IAE values for all simulation results concerning the various amplitudes of the external disturbances. We repeat the same simulation scenarios shown in Sections 4.1.1 (push while standing: Figure 7A), 4.1.2 (push while swinging the CoM position: Figure 7B), and 4.1.3 (impact while standing: Figure 7C). As shown in Figure 7, our proposed method results in smaller IAE values compared to fixed-gain WBLC. The comparison of the IAE values shows that our proposed approach reduces the task tracking error and makes the robot more robust regarding disturbance rejection.
Figures 8A,B represent the estimated disturbances when applying the pushing force (Section 4.1.1) and the impact disturbance (Section 4.1.3), respectively. The mean of the estimated force in Figure 8A is N. The estimated amplitude is approximately 72% of the real external force. Therefore our estimate of the pushing force disturbance is a rough approximate, but it has the advantage that it does not require external F/T sensors to measure the contact forces. By contrast, a limitation of this estimation is that the impact disturbance cannot be precisely estimated as shown in Figure 8B, since we employ the centroidal dynamics and the WBLC formulas to estimate . The peak value of the estimated impact in the lateral direction is only −5.2 N. Additional impact models and information such as impact time are required to compute the accurate impact between rigid-bodies Stewart (2000), however, this is out of the scope in this paper.
4.2 Draco2 Experiments
In this section, we verify the proposed approach using the real Draco2 robot. The main goal of these experimental evaluations is to show that the simulation results can be reproducible in real hardware. We select two experimental scenarios, which are to keep the balance under pushing and impact forces and evaluate them in the real hardware as shown in Figure 9. The robot is standing upright in the double support phase, and we push and hit the handle at the pelvis of the robot.
The positions of the CoM are shown in Figure 9 for both experimental scenarios. As shown in Figure 9, the robot is standing up while tracking the predefined desired CoM position, which is identical to the desired CoM position described in Sections 4.1.1, 4.1.3. For the first scenario, we push the robot at 10.6 and 25.8 s twice, which is shown as marked zones in Figure 9B. Although the robot’s CoM position has fluctuated in the y-direction, the robot does not fall and keeps its balance. Figure 9D shows the position of the CoM for the second scenario. We hit the robot’s pelvis with the rubber hammer at 8.5 s, which is shown as marked lines in Figure 9D. Note that the proposed approach makes the robot stable and keeps its balance in double support against the external perturbations as anticipated. Without our adaptation approach, it is not possible to keep the robot balanced when disturbed as shown in our Supplementary Video. Since we could not directly measure the pushing and impact disturbances, we estimate as shown in Figures 9E,F. More specifically, the peak and mean values of the estimated pushing external disturbances in two pushing time intervals shown in Figure 9E are N and N, respectively. Figure 9F shows the estimation of the external disturbance with a peak in the y direction of 6.8 N. The experimental results show that our approach is effective in the real hardware under similar conditions to the simulations.
4.3 Valkyrie Simulations
For simulated walking behaviors, we generate a reference trajectory for the robot’s CoM using the three-dimensional Divergent Component of Motion (DCM) Englsberger et al. (2013). In addition, we define multiple tasks to control the robot Valkyrie using WBLC: x CoM, x AM, x pelvis, o, x rf, and x lf which represent the tasks for controlling the position of the CoM, the body’s angular momentum, the orientation of the pelvis, and the position and orientation of the right and left feet, respectively. Additionally, we assume that the desired angular momentum change is zero during the planning and control calculations.
4.3.1 DCM Planner and Contact Transition
This section briefly introduces a locomotion planner based on DCM and the parameters that we use. DCM is defined as a point that lies ahead of the position of the CoM:
(37) |
Where b > 0 denotes the time constant of the DCM dynamics. We generate a desired DCM trajectory as discussed in Englsberger et al. (2013) and convert it to a CoM trajectory. Given walking parameters, the reference DCM can be computed at a time step t, ξ ref(t), in turn we can obtain and using Euler integration:
(38) |
Where Δt is the time increment. The reference DCM and feet trajectories are interpolated using a polynomial function and B-spline.
One of the advantages of WBLC is that we do not need to change the optimization problem to achieve smooth contact transitions. Using WBLC, it is possible to ensure smooth transitions between the support phases by changing the weighting matrices in the objective function in the optimization problem. The weighting matrix for the contacts W c are interpolated as follows:
(39) |
Where and denote the weighting matrices before and after contact transition. can be a monotonously increasing function of time from 0 to 1.
4.3.2 Pushing Force While Walking
We implement simulations of our method when walking with external pushing forces. Here Valkyrie walks five steps forward. An unknown lateral force is applied to the pelvis of the robot with an amplitude of 100 N during the interval [6.5, 8.5] s. For DCM planning, the nominal height of the CoM is 1.015 m. The single support swing time and the transition time are set to 0.75 and 0.45 s, respectively. The length of the subsequent steps is set to 0.2 m.
Figure 10 shows snapshots of walking simulations. Without our gain adaptation approach, the robot tilts and falls due to the disturbances, as shown in Figure 10A. In contrast, the robot is able to walk forward against the external forces when using our proposed method (see Figure 10B). The detailed simulation results are shown in Figure 11. In Figure 11A, we depict the positions of the CoM and both feet in Cartesian space. Figure 11A shows that the robot with gain adaptation can track the preplanned trajectories before and after the perturbation. The exact CoM position and foot locations are shown in Figures 11B,C. After standing upright, the initial CoM position of the robot is [0.521 2, 0.512 2, 1.020 7] m. With the adapted gains, the robot’s CoM reaches the goal destination [0.950 7, 0.763 2, 1.017 8] m. The center position of the feet also changes from [0.520 7, 0.512 1, 0] m to [0.954 2, 0.763 3, 0] m. However, without the proposed approach, the robot’s feet start to move slightly in the second swing phase of the right foot, as shown in Figure 11C. Also, the CoM position cannot be controlled from that moment. Then the right foot detaches from the ground at 8.2 s although it should remain on the floor. Note that these simulations show robust performance of the proposed underlying approach against unknown external force disturbances.
5 Conclusion
This paper presents extensive analysis, algorithms, and experimentation for the robust and adaptive employment of whole-body controllers in legged robots. The proposed approach devises a strategy to adapt feedback control gains of WBLC in response to disturbances. When a pushing force or impact occurs, the desired feedback gains are computed given nominal natural frequency and damping ratio. Subsequently, we test the theory to achieve stability both in simulation and experimental evaluations. Thus, our proposed approach is validated in both simulation and experimentation during double support balancing under pushing and impacting forces. Also, we implement walking simulations using a DCM planner to validate our method. The simulation and experimental results show that the adaptive WBLC enables legged robots to keep their balance against unknown external disturbances. We summarize the results of Draco simulations to show the improved performance in Table 1. Although we previously addressed dynamic walking under pushing forces using WBLC, that work was not adaptive and in turn relied solely on replanning. In contrast, in this new work we have developed a framework for adaptive WBLC that may require less reliance on replanning and provide better stability and robustness. In the future, we will extend this work to loco-manipulation behaviors and under multiple external force disturbances.
TABLE 1.
Max. disturbance | Integral Absolute Error (IAE) | Settling time | |||||
---|---|---|---|---|---|---|---|
Push (stand) | Push (swing) | Impact (stand) | Push: −13 N (stand) | Push: −11 N (swing) | Impact: −1300 N (stand) | Impact: −1300 N (stand) | |
wo/ | −13 N | −11 N | −1300 N | 1.389 | 1.479 | 0.954 | 9.61 s |
w/ | −17 N | −16 N | −1900 N | 1.208 | 1.153 | 0.712 | 5.90 s |
ratio | 130.7% | 145.5% | 146.2% | 86.9% | 77.9% | 74.6% | 61.3% |
Footnotes
PnC package: https://github.com/junhyeokahn/PnC
Data Availability Statement
The original contributions presented in the study are included in the article/Supplementary Material, further inquiries can be directed to the corresponding authors.
Author Contributions
All authors contributed to the theory, implementation, and numerical/experimental validations of this study. More specifically, JL developed the theory, designed the algorithm, and conducted the simulations and real hardware experiments in this paper. JA and SB contributed to the experimental validations in this paper. DK formulated WBLC and partially contributed to the stability analysis. LS supervised this research and revised the submitted manuscript.
Funding
This work was supported by an NSF Grant No. 1724360 and partially supported by an ONR Grant No. N000141512507.
Conflict of Interest
The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.
Publisher’s Note
All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.
Supplementary Material
The Supplementary Material for this article can be found online at: https://www.frontiersin.org/articles/10.3389/frobt.2021.788902/full#supplementary-material
Appendix
Proof of Proposition 1
Since E is positive definite, E 1, E 2, E 1,s , and E 2,s are invertible where E 1,s and E 2,s are Schur Complements of E 1 and E 2, respectively. It is possible to express the partitioned matrices of G as follows:
(40) |
Then, we get the following formula by comparing the expressions of E with each Schur Complements:
(41) |
Where .
References
- Ahn J., Jorgensen S. J., Bang S. H., Sentis L. (2021). Versatile Locomotion Planning and Control for Humanoid Robots. Front. Robotics AI, 257. 10.3389/frobt.2021.712239 [DOI] [PMC free article] [PubMed] [Google Scholar]
- Albu-Schäffer A., Ott C., Hirzinger G. (2007). A Unified Passivity-Based Control Framework for Position, Torque and Impedance Control of Flexible Joint Robots. Int. J. Robotics Res. 26, 23–39. 10.1177/0278364907073776 [DOI] [Google Scholar]
- Antonelli G. (2009). Stability Analysis for Prioritized Closed-Loop Inverse Kinematic Algorithms for Redundant Robotic Systems. IEEE Trans. Robot. 25, 985–994. 10.1109/tro.2009.2017135 [DOI] [Google Scholar]
- Åström K. J., Wittenmark B. (2013). Adaptive Control. Chelmsford, MA, USA: Courier Corporation. [Google Scholar]
- Benallegue M., Gergondet P., Audrerr H., Mifsud A., Morisawa M., Lamiraux F., et al. (2018). Model-based External Force/moment Estimation for Humanoid Robots with No Torque Measurement. Proc. IEEE Int. Conf. Robotics Automation, 3122–3129. 10.1109/icra.2018.8460809 [DOI] [Google Scholar]
- Bhatia R. (2013). Matrix Analysis, 169. Springer Science & Business Media. [Google Scholar]
- Caron S., Pham Q.-C., Nakamura Y. (2015). Stability of Surface Contacts for Humanoid Robots: Closed-form Formulae of the Contact Wrench Cone for Rectangular Support Areas. Proc. IEEE Int. Conf. Robotics Automation, 5107–5112. 10.1109/icra.2015.7139910 [DOI] [Google Scholar]
- Dai H., Valenzuela A., Tedrake R. (2014). Whole-body Motion Planning with Centroidal Dynamics and Full Kinematics. In Proceeding of the IEEE/RSJ International Conference on Humanoid Robots. 295–302. 10.1109/humanoids.2014.7041375 [DOI] [Google Scholar]
- Dietrich A., Ott C., Park J. (2018). The Hierarchical Operational Space Formulation: Stability Analysis for the Regulation Case. IEEE Robot. Autom. Lett. 3, 1120–1127. 10.1109/lra.2018.2792154 [DOI] [Google Scholar]
- Englsberger J., Ott C., Albu-Schäffer A. (2013).Three-dimensional Bipedal Walking Control Using Divergent Component of Motion. In 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2600–2607. 10.1109/iros.2013.6696723 [DOI] [Google Scholar]
- Escande A., Mansard N., Wieber P.-B. (2014). Hierarchical Quadratic Programming: Fast Online Humanoid-Robot Motion Generation. Int. J. Robotics Res. 33, 1006–1028. 10.1177/0278364914521306 [DOI] [Google Scholar]
- Feng S., Whitman E., Xinjilefu X., Atkeson C. G. (2014). Optimization Based Full Body Control for the Atlas Robot. In Proceeding of the IEEE/RSJ International Conference on Humanoid Robots. 120–127. 10.1109/humanoids.2014.7041347 [DOI] [Google Scholar]
- Feng S., Whitman E., Xinjilefu X., Atkeson C. G. (2015). Optimization-based Full Body Control for the Darpa Robotics challenge. J. Field Robotics 32, 293–312. 10.1002/rob.21559 [DOI] [Google Scholar]
- Hawley L., Rahem R., Suleiman W. (2019). External Force Observer for Small- and Medium-Sized Humanoid Robots. Int. J. Hum. Robot. 16, 1950030. 10.1142/s0219843619500300 [DOI] [Google Scholar]
- Herzog A., Rotella N., Mason S., Grimminger F., Schaal S., Righetti L. (2016). Momentum Control with Hierarchical Inverse Dynamics on a Torque-Controlled Humanoid. Auton. Robot 40, 473–491. 10.1007/s10514-015-9476-6 [DOI] [Google Scholar]
- Hong S., Jang K., Kim S., Park J. (2020). Regularized Hierarchical Quadratic Program for Real-Time Whole-Body Motion Generation. IEEE Trans. Mechatronics 26, 2115–2126. 10.1109/TMECH.2020.3032522 [DOI] [Google Scholar]
- Ivaldi S., Fumagalli M., Randazzo M., Nori F., Metta G., Sandini G. (2011).Computing Robot Internal/external Wrenches by Means of Inertial, Tactile and F/t Sensors: Theory and Implementation on the Icub. In 11th IEEE-RAS International Conference on Humanoid Robots. IEEE, 521–528. 10.1109/humanoids.2011.6100813 [DOI] [Google Scholar]
- Käslin R., Kolvenbach H., Paez L., Lika K., Hutter M. (2018). Towards a Passive Adaptive Planar Foot with Ground Orientation and Contact Force Sensing for Legged Robots. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems. 2707–2714. 10.1109/iros.2018.8593875 [DOI] [Google Scholar]
- Khatib O., Sentis L., Park J., Warren J. (2004). Whole-body Dynamic Behavior and Control of Human-like Robots. Int. J. Hum. Robot. 01, 29–43. 10.1142/s0219843604000058 [DOI] [Google Scholar]
- Kim D., Jorgensen S. J., Lee J., Ahn J., Luo J., Sentis L. (2020). Dynamic Locomotion for Passive-Ankle Biped Robots and Humanoids Using Whole-Body Locomotion Control. Int. J. Robotics Res. 39, 936–956. 10.1177/0278364920918014 [DOI] [Google Scholar]
- Koolen T., Bertrand S., Thomas G., De Boer T., Wu T., Smith J., et al. (2016). Design of a Momentum-Based Control Framework and Application to the Humanoid Robot Atlas. Int. J. Hum. Robot. 13, 1650007. 10.1142/s0219843616500079 [DOI] [Google Scholar]
- Kuindersma S., Deits R., Fallon M., Valenzuela A., Dai H., Permenter F., et al. (2016). Optimization-based Locomotion Planning, Estimation, and Control Design for the Atlas Humanoid Robot. Auton. Robot 40, 429–455. 10.1007/s10514-015-9479-3 [DOI] [Google Scholar]
- Lee J., Ahn J., Bakolas E., Sentis L. (2020).Reachability-based Trajectory Optimization for Robotic Systems Given Sequences of Rigid Contacts. In 2020 American Control Conference (ACC). IEEE, 2158–2165. 10.23919/acc45564.2020.9147926 [DOI] [Google Scholar]
- Lee J., Dallali H., Jin M., Caldwell D., Tsagarakis N. (2016). Robust and Adaptive Whole-Body Control for Humanoids with Multiple Tasks Under Uncertain Disturbances. Proc. IEEE Int. Conf. Robotics Automation, 5683–5689. 10.1109/icra.2016.7487790 [DOI] [Google Scholar]
- Lee J., Mansard N., Park J. (2012). Intermediate Desired Value Approach for Task Transition of Robots in Kinematic Control. IEEE Trans. Robot. 28, 1260–1277. 10.1109/tro.2012.2210293 [DOI] [Google Scholar]
- Mason S., Rotella N., Schaal S., Righetti L. (2018). An Mpc Walking Framework with External Contact Forces. In Proceedings of the IEEE International Conference on Robotics and Automation. 1785–1790. 10.1109/icra.2018.8461236 [DOI] [Google Scholar]
- Nakanishi J., Cory R., Mistry M., Peters J., Schaal S. (2008). Operational Space Control: A Theoretical and Empirical Comparison. Int. J. Robotics Res. 27, 737–757. 10.1177/0278364908091463 [DOI] [Google Scholar]
- Nori F., Traversaro S., Eljaik J., Romano F., Del Prete A., Pucci D. (2015). Icub Whole-Body Control Through Force Regulation on Rigid Non-coplanar Contacts. Front. Robot. AI 2, 6. 10.3389/frobt.2015.00006 [DOI] [Google Scholar]
- Ott C., Roa M. A., Hirzinger G. (2011). Posture and Balance Control for Biped Robots Based on Contact Force Optimization. In 2011 11th IEEE-RAS International Conference on Humanoid Robots. IEEE, 26–33. 10.1109/humanoids.2011.6100882 [DOI] [Google Scholar]
- Pratt J., Carff J., Drakunov S., Goswami A. (2006). Capture Point: A Step Toward Humanoid Push Recovery. In Proceeding of the IEEE/RSJ International Conference on Humanoid Robots. 200–207. 10.1109/ichr.2006.321385 [DOI] [Google Scholar]
- Sang-Ho Hyon S.-H., Hale J. G., Cheng G. (2007). Full-Body Compliant Human-Humanoid Interaction: Balancing in the Presence of Unknown External Forces. IEEE Trans. Robot. 23, 884–898. 10.1109/tro.2007.904896 [DOI] [Google Scholar]
- Stephens B. J., Atkeson C. G. (2010a). Dynamic Balance Force Control for Compliant Humanoid Robots. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems. 1248–1255. 10.1109/iros.2010.5648837 [DOI] [Google Scholar]
- Stephens B. J., Atkeson C. G. (2010b). Push Recovery by Stepping for Humanoid Robots with Force Controlled Joints. In Proceeding of the IEEE/RSJ International Conference on Humanoid Robots. 52–59. 10.1109/ichr.2010.5686288 [DOI] [Google Scholar]
- Stewart D. E. (2000). Rigid-body Dynamics with Friction and Impact. SIAM Rev. 42, 3–39. 10.1137/s0036144599360110 [DOI] [Google Scholar]
- Wang Y., Xiong R., Zhu Q., Chu J. (2014). Compliance Control for Standing Maintenance of Humanoid Robots under Unknown External Disturbances. In Proceedings of the IEEE International Conference on Robotics and Automation. 2297–2304. 10.1109/icra.2014.6907177 [DOI] [Google Scholar]
- Wiedebach G., Bertrand S., Wu T., Fiorio L., McCrory S., Griffin R., et al. (2016). Walking on Partial Footholds Including Line Contacts with the Humanoid Robot Atlas. In Proceeding of the IEEE/RSJ International Conference on Humanoid Robots. 1312–1319. 10.1109/humanoids.2016.7803439 [DOI] [Google Scholar]
- Xin G., Lin H.-C., Smith J., Cebe O., Mistry M. (2018). A Model-Based Hierarchical Controller for Legged Systems Subject to External Disturbances. In Proceedings of the IEEE International Conference on Robotics and Automation. 4375–4382. 10.1109/icra.2018.8461172 [DOI] [Google Scholar]
Associated Data
This section collects any data citations, data availability statements, or supplementary materials included in this article.
Supplementary Materials
Data Availability Statement
The original contributions presented in the study are included in the article/Supplementary Material, further inquiries can be directed to the corresponding authors.