- 1Department of Mechanical Engineering, University of Texas at Austin, Austin, TX, United States
- 2College of Information and Computer Sciences, The University of Massachusetts Amherst, Amherst, MA, United States
- 3Department of Aerospace Engineering and Engineering Mechanics, University of Texas at Austin, Austin, TX, United States
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.
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.
FIGURE 1. Block diagram of the proposed approach: The proposed approach includes various feedback loops, inside and outside the whole-body locomotion controller (WBLC) Kim et al. (2020). Our adaptive approach is tasked with modifying feedback gains inside WBLC.
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
Where
Where eq = qd − q, and
Where Jk|k−1(q) = Jk(q)Nk−1(q),
Where
Where
2.2 Closed-Loop Analysis Without External Perturbations
We analyze the closed-loop behavior of the robotic system. Substituting (6) into (2) we get:
Where
With
Where subscriptions
Where
Where
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.
FIGURE 2. Our approach consists of: (A) obtaining contact forces via WBLC. (B) Computing Centroidal dynamics using the current joint configuration and velocity. (C) Estimating unknown external forces with respect to the robot’s body frame. (D) Online gain adaptation with stability analysis.
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:
Where
Where
Proposition 1. Given a matrix
The detailed proof of Proposition 1 is provided in Appendix. We introduce an estimated external force
Where
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:
Where p,
Where
Where
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.
Where
In turn the estimated external force
Where both matrices,
Where
Where
Secondly, we estimate (15) using the first order approximation:
Where
Where both matrices,
Where
We can construct
Where
Where
Where
We define the state
Properly choosing
Which means that det(V − λI2) = det(λ−1X + In). 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).
Where
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
This condition will allow us to make the closed-loop system stable.
Condition 1. The following condition makes the matrix V Hurwitz:
We can approximately decouple the dynamics of (29) in the joint space as follows:
Where
Condition 2. Since Wn is a positive real number, it is always true that
Based on the previous adaptation scheme, we replace the WBLC
Condition 3. We set the ranges of
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
Data: q,
Result: Γcmd
JCoM ← with qp
h, HG, AG ← with qp and
if Condition 1, 2, and 3 are satisfied then
end
Γcmd ← with the updated
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 PnC1 (Planning and Control).
FIGURE 3. (A) Snapshots of control simulations: the upper and lower figures show balancing behaviors with and without gain adaptation, respectively. A black star marks the edge point on the hip shell as a measurement reference. (B) Comparison between the positions of the robot’s CoM using standard WBLC versus adaptive WBLC, where the desired x and y positions of the CoM is the center position between two feet [3.80, ×, 10–5, −0.167] m, and the desired height of the CoM is 0.7 m.
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: xCoM, xbase, o, xfeet, and xjoint, 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
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(xCoM) − min(xCoM). 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
FIGURE 4. Simulation results of pushing the pelvis: (A) The adapted gains of the WBLC in the joint level. (B) The configuration of the robot controlled by WBLC.
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.
FIGURE 5. Simulation results of CoM swing with unknown external force: (A) Snapshots of the simulation swinging CoM without the proposed gain adaption. (B) Snapshots of the simulation with the proposed gain adaptation. (C) The Positions of the robot’s CoM while performing a swinging motion: x, y, and z position of the CoM, (D) The right foot position without the adaptive gains.
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.
FIGURE 6. Simulation results of impact test: (A) the desired position of the CoM is the same as that for the pushing scenario. An impact force is applied to the robot with an amplitude of 700 N and duration 0.01 at 10 s. (B) The position of the robot’s CoM.
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:
Where [ti, tf] 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.
FIGURE 7. IAE values corresponding to simulation results with different levels of external disturbances: The simulation scenarios are those described in Sections 4.1.1 (A), 4.1.2 (B), and 4.1.3 (C). To calculate the IAE values of the impact simulation (C), we use the same time interval [10, 15] to cases (A,B).
Figures 8A,B represent the estimated disturbances
FIGURE 8. Estimation of unknown external forces using the contact force formula provided by WBLC: (A) Pushing force disturbance (− 12 N in the y direction), (B) Impact force disturbance (− 700 N in the y direction).
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.
FIGURE 9. Experiment results with the same scenarios with the simulations in 4.1.1 and 4.1.3: pushing (A,B) and impacting (C,D) the pelvis of Draco2 in double support phase. The estimated external disturbance
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
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: xCoM, xAM, xpelvis, o, xrf, and xlf 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:
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
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:
Where
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.
FIGURE 10. Snapshots of simulations for walking while an external force exists: (A) walking without the proposed gain adaptation, (B) walking with the online gain adaptation.
FIGURE 11. Simulation results of walking with an external force: (A) positions of CoM and feet in Cartesian coordinate, (B) the robot’s CoM position, (C) the robot’s feet positions.
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.
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
Footnotes
1 PnC package: https://github.com/junhyeokahn/PnC
References
Ahn, J., Jorgensen, S. J., Bang, S. H., and Sentis, L. (2021). Versatile Locomotion Planning and Control for Humanoid Robots. Front. Robotics AI, 257. doi:10.3389/frobt.2021.712239
Albu-Schäffer, A., Ott, C., and 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. doi:10.1177/0278364907073776
Antonelli, G. (2009). Stability Analysis for Prioritized Closed-Loop Inverse Kinematic Algorithms for Redundant Robotic Systems. IEEE Trans. Robot. 25, 985–994. doi:10.1109/tro.2009.2017135
Åström, K. J., and Wittenmark, B. (2013). Adaptive Control. Chelmsford, MA, USA: Courier Corporation.
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. doi:10.1109/icra.2018.8460809
Caron, S., Pham, Q.-C., and 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. doi:10.1109/icra.2015.7139910
Dai, H., Valenzuela, A., and 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. doi:10.1109/humanoids.2014.7041375
Dietrich, A., Ott, C., and Park, J. (2018). The Hierarchical Operational Space Formulation: Stability Analysis for the Regulation Case. IEEE Robot. Autom. Lett. 3, 1120–1127. doi:10.1109/lra.2018.2792154
Englsberger, J., Ott, C., and 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. doi:10.1109/iros.2013.6696723
Escande, A., Mansard, N., and Wieber, P.-B. (2014). Hierarchical Quadratic Programming: Fast Online Humanoid-Robot Motion Generation. Int. J. Robotics Res. 33, 1006–1028. doi:10.1177/0278364914521306
Feng, S., Whitman, E., Xinjilefu, X., and 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. doi:10.1109/humanoids.2014.7041347
Feng, S., Whitman, E., Xinjilefu, X., and Atkeson, C. G. (2015). Optimization-based Full Body Control for the Darpa Robotics challenge. J. Field Robotics 32, 293–312. doi:10.1002/rob.21559
Hawley, L., Rahem, R., and Suleiman, W. (2019). External Force Observer for Small- and Medium-Sized Humanoid Robots. Int. J. Hum. Robot. 16, 1950030. doi:10.1142/s0219843619500300
Herzog, A., Rotella, N., Mason, S., Grimminger, F., Schaal, S., and Righetti, L. (2016). Momentum Control with Hierarchical Inverse Dynamics on a Torque-Controlled Humanoid. Auton. Robot 40, 473–491. doi:10.1007/s10514-015-9476-6
Hong, S., Jang, K., Kim, S., and Park, J. (2020). Regularized Hierarchical Quadratic Program for Real-Time Whole-Body Motion Generation. IEEE Trans. Mechatronics 26, 2115–2126. doi:10.1109/TMECH.2020.3032522
Ivaldi, S., Fumagalli, M., Randazzo, M., Nori, F., Metta, G., and 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. doi:10.1109/humanoids.2011.6100813
Käslin, R., Kolvenbach, H., Paez, L., Lika, K., and 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. doi:10.1109/iros.2018.8593875
Khatib, O., Sentis, L., Park, J., and Warren, J. (2004). Whole-body Dynamic Behavior and Control of Human-like Robots. Int. J. Hum. Robot. 01, 29–43. doi:10.1142/s0219843604000058
Kim, D., Jorgensen, S. J., Lee, J., Ahn, J., Luo, J., and Sentis, L. (2020). Dynamic Locomotion for Passive-Ankle Biped Robots and Humanoids Using Whole-Body Locomotion Control. Int. J. Robotics Res. 39, 936–956. doi:10.1177/0278364920918014
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. doi:10.1142/s0219843616500079
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. doi:10.1007/s10514-015-9479-3
Lee, J., Ahn, J., Bakolas, E., and Sentis, L. (2020).Reachability-based Trajectory Optimization for Robotic Systems Given Sequences of Rigid Contacts. In 2020 American Control Conference (ACC). IEEE, 2158–2165. doi:10.23919/acc45564.2020.9147926
Lee, J., Dallali, H., Jin, M., Caldwell, D., and 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. doi:10.1109/icra.2016.7487790
Lee, J., Mansard, N., and Park, J. (2012). Intermediate Desired Value Approach for Task Transition of Robots in Kinematic Control. IEEE Trans. Robot. 28, 1260–1277. doi:10.1109/tro.2012.2210293
Mason, S., Rotella, N., Schaal, S., and Righetti, L. (2018). An Mpc Walking Framework with External Contact Forces. In Proceedings of the IEEE International Conference on Robotics and Automation. 1785–1790. doi:10.1109/icra.2018.8461236
Nakanishi, J., Cory, R., Mistry, M., Peters, J., and Schaal, S. (2008). Operational Space Control: A Theoretical and Empirical Comparison. Int. J. Robotics Res. 27, 737–757. doi:10.1177/0278364908091463
Nori, F., Traversaro, S., Eljaik, J., Romano, F., Del Prete, A., and Pucci, D. (2015). Icub Whole-Body Control Through Force Regulation on Rigid Non-coplanar Contacts. Front. Robot. AI 2, 6. doi:10.3389/frobt.2015.00006
Ott, C., Roa, M. A., and 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. doi:10.1109/humanoids.2011.6100882
Pratt, J., Carff, J., Drakunov, S., and Goswami, A. (2006). Capture Point: A Step Toward Humanoid Push Recovery. In Proceeding of the IEEE/RSJ International Conference on Humanoid Robots. 200–207. doi:10.1109/ichr.2006.321385
Sang-Ho Hyon, S.-H., Hale, J. G., and Cheng, G. (2007). Full-Body Compliant Human-Humanoid Interaction: Balancing in the Presence of Unknown External Forces. IEEE Trans. Robot. 23, 884–898. doi:10.1109/tro.2007.904896
Stephens, B. J., and 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. doi:10.1109/iros.2010.5648837
Stephens, B. J., and 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. doi:10.1109/ichr.2010.5686288
Stewart, D. E. (2000). Rigid-body Dynamics with Friction and Impact. SIAM Rev. 42, 3–39. doi:10.1137/s0036144599360110
Wang, Y., Xiong, R., Zhu, Q., and 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. doi:10.1109/icra.2014.6907177
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. doi:10.1109/humanoids.2016.7803439
Xin, G., Lin, H.-C., Smith, J., Cebe, O., and 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. doi:10.1109/icra.2018.8461172
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:
Then, we get the following formula by comparing the expressions of E with each Schur Complements:
Where
Keywords: whole-body control, gain adaptation, external disturbances, legged robot control, stability analaysis
Citation: Lee J, Ahn J, Kim D, Bang SH and Sentis L (2022) Online Gain Adaptation of Whole-Body Control for Legged Robots with Unknown Disturbances. Front. Robot. AI 8:788902. doi: 10.3389/frobt.2021.788902
Received: 03 October 2021; Accepted: 25 November 2021;
Published: 07 January 2022.
Edited by:
Yongping Pan, National University of Singapore, SingaporeReviewed by:
Martin J.-D. Otis, Université du Québec à Chicoutimi, CanadaAlessio Rocchi, Independent researcher, United States
Copyright © 2022 Lee, Ahn, Kim, Bang and Sentis. This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.
*Correspondence: Jaemin Lee, jmlee87@utexas.edu