Skip to main content
Log in

Balancing of humanoid robot using contact force/moment control by task-oriented whole body control framework

  • Published:
Autonomous Robots Aims and scope Submit manuscript

Abstract

Balancing control of humanoid robots is of great importance since it is a necessary functionality not only for maintaining a certain position without falling, but also for walking and running. For position controlled robots, the for-ce/torque sensors at each foot are utilized to measure the contact forces and moments, and these values are used to compute the joint angles to be commanded for balancing. The proposed approach in this paper is to maintain balance of torque-controlled robots by controlling contact force and moment using whole-body control framework with hierarchical structure. The control of contact force and moment is achieved by exploiting the full dynamics of the robot and the null-space motion in this control framework. This control approach enables compliant balancing behavior. In addition, in the case of double support phase, required contact force and moment are controlled using the redundancy in the contact force and moment space. These algorithms are implemented on a humanoid legged robot and the experimental results demonstrate the effectiveness of them.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24

Similar content being viewed by others

References

  • Bruyninckx, H., & Khatib, O. (2000). Gauss’ principle and the dynamics of redundant and constrained manipulators. In IEEE international conference on robotics and automation (ICRA) (pp. 2563–2568).

  • Del Prete, A. (2013). Control of contact forces using whole-body force and tactile sensors: Theory and implementation on the iCub humanoid robot. Ph.D. thesis, Istituto Italiano di Tecnologia, Italia.

  • Herzog, A., Righetti, L., Grimminger, F., Pastor, P., & Schaal, S. (2014). Balancing experiments on a torque-controlled humanoid with hierarchical inverse dynamics. In IEEE/RSJ international conference on intelligent robots and systems (IROS) (pp. 981–988).

  • Huang, Q., Kaneko, K., Yokoi, K., Kajita, S., Kotoku, T., Koyachi, N., Arai, H., Imamura, N., Komoriya, K., & Tanie , K. (2000). Balance control of a biped robot combining off-line pattern with real-time modification. In IEEE international conference on robotics and automation (ICRA) (pp. 3346–3352).

  • Hyon, S. H. (2009). Compliant terrain adaptation for biped humanoids without measuring ground surface and contact forces. IEEE Transactions on Robotics, 25(1), 171–178.

    Article  Google Scholar 

  • Kajita, S., Morisawa, M., Miura, K., Nakaoka., S., Harada, K., Kaneko, K., Kanehiro, F., & Yokoi, K. (2010). Biped walking stabilization based on linear inverted pendulum tracking. In IEEE/RSJ international conference on intelligent robots and systems (IROS) (pp. 4489–4496).

  • Kajita, S., Yokoi, K., Saigo, M., & Tanie, K. (2001). Balancing a humanoid robot using backdrive concerned torque control and direct angular momentum feedback. In IEEE international conference on robotics and automation (ICRA) (pp. 3376–3382).

  • Khatib, O., Sentis, L., Park, J., & Warren, J. (2004). Whole-body dynamic behavior and control of human-like robots. International Journal of Humanoid Robotics, 1(1), 29–43.

    Article  Google Scholar 

  • Lee, S.-H., & Goswami, A. (2012). A momentum-based balance controller for humanoid robots on non-level and non-stationary ground. Autonomous Robots, 33(4), 399–414.

    Article  Google Scholar 

  • Ott, C., Roa, M. A., & Hirzinger, G. (2011). Posture and balance control for biped robots based on contact force optimization. In IEEE-RAS international conference on humanoid robots (humanoids) (pp. 26–33).

  • Park, J., & Khatib, O. (2006). Contact consistent control framework for humanoid robots. In IEEE international conference on robotics and automation (ICRA) (pp. 1963–1969).

  • Park, J. (2006). Control Strategies for Robots in Contact. Ph.D. thesis, Stanford University, Stanford.

  • Park, J. (2008). Synthesis of natural arm swing motion in human bipedal walking. Journal of Biomechanics, 41, 1417–1426.

    Article  Google Scholar 

  • Park, J., Haan, J., & Park, F. C. (2007). Convex optimization algorithms for active balancing of humanoid robots. IEEE Transactions on Robotics, 23(4), 817–822.

    Article  Google Scholar 

  • Righetti, L., Buchili, J., Mistry, M., Kalakrishnan, M., & Schaal, S. (2013). Optimal distribution of contact forces with inverse-dynamics control. The International Journal of Robotics Research, 32(3), 280–298.

    Article  Google Scholar 

  • Righetti, L., Buchili, J., Mistry, M., & Schaal, S. (2011). Inverse dynamics control of floating-base robots with external constraints: A unified view. In IEEE international conference on robotics and automation (ICRA) (pp. 1085–1090).

  • Saab, L., Ramos, O. E., Keith, F., Mansard, N., Soueres, P., & Fourquet, J.-Y. (2013). Dynamic whole-body motion generation under rigid contacts and other unilateral constraints. IEEE Transactions on Robotics, 29(2), 346–362.

    Article  Google Scholar 

  • Schwartz, M., Hwang, S., Lee, Y., Won, J., Kim, S., & Park, J. (2014). Aesthetic design and development of humanoid legged robot. In IEEE-RAS international conference on humanoid robots (humanoids).

  • Sentis, L., Park, J., & Khatib, O. (2010). Compliant control of multicontact and center-of-mass behaviors in humanoid robots. IEEE Transaction on Robotics, 26(3), 483–501.

    Article  Google Scholar 

  • Stephens, B. J., & Atkeson, C. G. (2010). Dynamic balance force control for compliant humanoid robots. In IEEE/RSJ international conference on intelligent robots and systems (IROS) (pp. 1248–1255).

  • Sugihara, T., & Nakamura, Y. (2002). Whole-body cooperative balancing of humanoid robot using COG Jacobian. In IEEE/RSJ international conference on intelligent robots and systems (IROS) (pp. 2575–2580).

  • Vukobratovic, M., & Borovac, B. (2004). Zero-moment point: Thirty five years of its life. International Journal of Humanoid Robotics, 1(1), 157–173.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jaeheung Park.

Electronic supplementary material

Below is the link to the electronic supplementary material.

Supplementary material 1 (avi 22468 KB)

Appendix: Proportional distribution of contact force/moment

Appendix: Proportional distribution of contact force/moment

The resultant contact force/moment \(^{O}F_{c}\) in frame O can be recalculated with Eq. (34) using commanding torque. The vector \(^{O}F_{c}\) is known value and the contact force/moment of each foot can be calculated by the Eq. (35). This equation can be described as

$$\begin{aligned} ^{O}F_{x}= & {} ^{O}F_{x,r} + ^{O}F_{x,l}, \end{aligned}$$
(55)
$$\begin{aligned} ^{O}F_{y}= & {} ^{O}F_{y,r} + ^{O}F_{y,l}, \end{aligned}$$
(56)
$$\begin{aligned} ^{O}F_{z}= & {} ^{O}F_{z,r} + ^{O}F_{z,l}, \end{aligned}$$
(57)
$$\begin{aligned} ^{O}M_{x}= & {} ^{O}M_{x,r} + ^{O}M_{x,l} - \left( z_{r} \, ^{O}F_{y,r}+z_{l} \, ^{O}F_{y,l}\right) \nonumber \\&+ \left( y_{r} \, ^{O}F_{z,r}+y_{l} \, ^{O}F_{z,l}\right) , \end{aligned}$$
(58)
$$\begin{aligned} ^{O}M_{y}= & {} ^{O}M_{y,r} + ^{O}M_{y,l} + \left( z_{r} \, ^{O}F_{x,r}+z_{l} \, ^{O}F_{x,l}\right) \nonumber \\&\, -\left( x_{r} \, ^{O}F_{z,r}+x_{l} \, ^{O}F_{z,l}\right) , \end{aligned}$$
(59)
$$\begin{aligned} ^{O}M_{z}= & {} ^{O}M_{z,r} + ^{O}M_{z,l} + \left( x_{r} \, ^{O}F_{y,r}+x_{l} \, ^{O}F_{y,l}\right) \nonumber \\&\, -\left( y_{r} \, ^{O}F_{x,r}+y_{l} \, ^{O}F_{x,l}\right) , \end{aligned}$$
(60)

where \(^{O}F_{x,r}\), \(^{O}F_{y,r}\), \(^{O}F_{z,r}\), \(^{O}M_{x,r}\), \(^{O}M_{y,r}\), \(^{O}M_{z,r}\) are contact force/moment of the right foot at frame O and \(^{O}F_{x,l}\), \(^{O}F_{y,l}\), \(^{O}F_{z,l}\), \(^{O}M_{x,l}\), \(M_{y,l}^{O}\), \(^{O}M_{z,l}\) are contact force/moment of the left foot at frame O. To re-distribute these contact force/moment to each foot, assume every force/moment terms are divided in same ratio \(\eta \) as

$$\begin{aligned} \eta =\frac{^{O}F_{z,r}}{^{O}F_{z}}. \end{aligned}$$
(61)

The coefficient \(\eta \) has the value between zero and one, since \(^{O}F_{z} < ^{O}F_{z,r} < 0\). Now we can rewrite the Eqs. (5560) as,

$$\begin{aligned}&{}^{O}F_{x,r}= \eta ^{O}F_{x},\quad ^{O}F_{x,l}=(1-\eta ) ^{O}F_{x}, \end{aligned}$$
(62)
$$\begin{aligned}&{}^{O}F_{y,r}= \eta ^{O}F_{y},\quad ^{O}F_{y,l}=(1-\eta ) ^{O}F_{y}, \end{aligned}$$
(63)
$$\begin{aligned}&{}^{O}F_{z,r}= \eta ^{O}F_{z}, \quad ^{O}F_{z,l}=(1-\eta ) ^{O}F_{z}, \end{aligned}$$
(64)
$$\begin{aligned}&{}^{O}M_{x,r} = \eta \left( ^{O}M_{x,r} + ^{O}M_{x,l}\right) , \nonumber \\&{}^{O}M_{x,l} = (1-\eta ) \left( ^{O}M_{x,r} + ^{O}M_{x,l}\right) , \end{aligned}$$
(65)
$$\begin{aligned}&{}^{O}M_{y,r} = \eta \left( ^{O}M_{y,r} + ^{O}M_{y,l}\right) , \nonumber \\&{}^{O}M_{y,l}= (1-\eta ) \left( ^{O}M_{y,r} + ^{O}M_{y,l}\right) , \end{aligned}$$
(66)
$$\begin{aligned}&{}^{O}M_{z,r} = \eta \left( ^{O}M_{z,r} + ^{O}M_{z,l}\right) , \nonumber \\&{}^{O}M_{z,l}=(1-\eta ) \left( ^{O}M_{z,r} + ^{O}M_{z,l}\right) . \end{aligned}$$
(67)

This assumption can be applied since every contact condition in Eqs. (3033) are proportional to the normal force \(F_{z}\). So when the resultant contact force/moment \(^{O}F_{c}\) satisfies the contact conditions, distributed contact forc-e/moment can also satisfy the conditions for each.

The contact force can always maintain contact satisfying the conditions (29), (30), when \(\eta \) has the value between 0 and 1 because forces are independent with moments. On the other hand, contact moments are related with forces at each foot. So the contact condition for moments (3133) can be violated depending on \(\eta \). The Eq. (58) can be described as the relation between \(^{O}M_{x,r}\) and \(\eta \) by substituting Eqs. (5664).

$$\begin{aligned} ^{O}M_{x,r}= & {} \left\{ (z_{r}- z_{l}) \, ^{O}F_{y} - (y_{r} - y_{l}) \, ^{O}F_{z} \right\} \eta ^{2} \nonumber \\&+ \left( ^{O}M_{x} + z_{l} \, ^{O}F_{y} - y_{l} \, ^{O}F_{z}\right) \eta , \end{aligned}$$
(68)

and contact condition (58) can be expressed as

$$\begin{aligned} |^{O}M_{x,r}| < |^{O}F_{z}\eta | \frac{l_{y}}{2}, \end{aligned}$$
(69)

Substitute Eq. (68) to the condition (69) to find the boundary of the \(\eta \).

$$\begin{aligned} a^{2}\eta ^{2} + 2ab\eta + \left( b^{2}-c^{2}\right) < 0, \end{aligned}$$
(70)

where

$$\begin{aligned}&a = (z_{r}- z_{l}) \, ^{O}F_{y} - (y_{r} - y_{l}) \, ^{O}F_{z}, \end{aligned}$$
(71)
$$\begin{aligned}&b = ^{O}M_{x} + z_{l} \, ^{O}F_{y} - y_{l} \, ^{O}F_{z}, \end{aligned}$$
(72)
$$\begin{aligned}&c = \frac{l_{y}}{2} \, ^{O}F_{z}. \end{aligned}$$
(73)

Boundary of \(\eta \) about condition for \(M_{y}^{O}\) Eq. (33) can be achieved by the same process using Eqs. (55), (57), (58), (62) and (64). The structure of the equation is the same as that of Eq. (70) and the following terms are different as

$$\begin{aligned}&a = -(z_{r}- z_{l}) \, ^{O}F_{x} + (x_{r} - x_{l}) \, ^{O}F_{z}, \end{aligned}$$
(74)
$$\begin{aligned}&b = ^{O}M_{y} - z_{l} \, ^{O}F_{x} + x_{l} \, ^{O}F_{z}, \end{aligned}$$
(75)
$$\begin{aligned}&c = \frac{l_{x}}{2} \, ^{O}F_{z}. \end{aligned}$$
(76)

Boundary of \(\eta \) about condition for \(M_{z}^{O}\) (31) also can be calculated by the same process by Eqs. (55), (56), (60), (62) and (63). The structure of the equation is the same as Eq. (70) and the following terms are different as

$$\begin{aligned}&a = - (x_{r}- x_{l}) \, ^{O}F_{y} + (y_{r} - y_{l}) \, ^{O}F_{x}, \end{aligned}$$
(77)
$$\begin{aligned}&b = ^{O}M_{z} - x_{l} \, ^{O}F_{y} + y_{l} \, ^{O}F_{x}, \end{aligned}$$
(78)
$$\begin{aligned}&c = \mu _{s} \, ^{O}F_{z}. \end{aligned}$$
(79)

Boundary of feasible \(\eta \) can be determined by Eq. (70) about conditions for \(^{O}M_{x,r}\), \(^{O}M_{y,r}\) and \(^{O}M_{z,r}\). In this research we minimize the magnitude of \(M_{x,r}\) and \(M_{x,l}\) because the foot width \(l_{y}\) is relatively small than the length of the foot \(l_{x}\) and static friction coefficient \(\mu _s\). Coefficient \(\eta \) to make \(M_{x,r}= 0\) can be determined in Eq. (68). If the calculated \(\eta \) is out of boundary, then nearest value of the boundary can be selected as \(\eta \). Finally, distribution of the contact force/moment can be determined by \(\eta \) in Eqs. (6267).

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Lee, Y., Hwang, S. & Park, J. Balancing of humanoid robot using contact force/moment control by task-oriented whole body control framework. Auton Robot 40, 457–472 (2016). https://doi.org/10.1007/s10514-015-9509-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10514-015-9509-1

Keywords

Navigation