Skip to main content
Log in

Implementation and stability analysis of prioritized whole-body compliant controllers on a wheeled humanoid robot in uneven terrains

  • Published:
Autonomous Robots Aims and scope Submit manuscript

Abstract

In this work, we implement the floating base prioritized whole-body compliant control framework described in Sentis et al. (IEEE Transactions on Robotics 26(3):483–501, 2010) on a wheeled humanoid robot maneuvering in sloped terrains. We then test it for a variety of compliant whole-body behaviors including balance and kinesthetic mobility on irregular terrain, and Cartesian hand position tracking using the co-actuated (i.e. two joints are simultaneously actuated with one motor) robot’s upper body. The implementation serves as a hardware proof for a variety of whole-body control concepts that had previously been developed and tested in simulation. First, behaviors of two and three priority tasks are implemented and successfully executed on the humanoid hardware. In particular, first and second priority tasks are linearized in the task space through model feedback and then controlled through task accelerations. Postures, on the other hand, are shown to be asymptotically stable when using prioritized whole-body control structures and then successfully tested in the real hardware. To cope with irregular terrains, the base is modeled as a six degree of freedom floating system and the wheels are characterized through contact and rolling constraints. Finally, center of mass balance capabilities using whole-body compliant control and kinesthetic mobility are implemented and tested in the humanoid hardware to climb terrains with various slopes.

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

Similar content being viewed by others

References

  • Aghili, F. (2005). A unified approach for inverse and direct dynamics of constrained multibody systems based on linear projection operator: applications to control and simulation. IEEE Transactions on Robotics, 21(5), 834–849.

    Article  Google Scholar 

  • Alami, R., Chatila, R., Fleury, S., Ghallab, M., & Ingrand, F. (1998). An architecture for autonomy. The International Journal of Robotics Research, 17(4), 315–337.

    Article  Google Scholar 

  • Arkin, R. C., & Murphy, R. R. (1990). Autonomous navigation in a manufacturing environment. IEEE Transactions on Robotics and Automation, 6(4), 445–454.

    Article  Google Scholar 

  • Asfour, T., Berns, K., & Dillmann, R. (2000). The humanoid robot armar: Design and control. The 1st IEEE-ras international conference on humanoid robots (humanoids 2000) (pp. 7–8).

  • Babic, J. (2009). Biarticular legged robot: Design and experiments. IEEE international conference on robotics and biomimetics. Bankok, Thailand.

  • Baerlocher, P. (2001). Inverse kinematics techniques for the interactive posture control of articulated figures. Ph.D. thesis, Ecole Polytechnique Federale de Lausanne, Lausanne, Switzerland.

  • Beetz, M., Mo, L., Senlechner, & Tenorth, M. (2010). A cognitive robot abstract machine for everyday manipulation in human environments. IEEE/rsj international conference on Intelligent robots and systems (iros) (pp. 1012–1017).

  • Bouyarmane, K., & Kheddar, A. (2011). Multi-contact stances planning for multiple agents. Proceedings of the IEEE international conference on robotics and automation. Shanghai.

  • Breazeal, C., Siegel, M., Berlin, M., Gray, J., Grupen, R., Deegan, P., Weber, J., Narendran, K., & McBean, J. (2008). Mobile, dexterous, social robots for mobile manipulation and human-robot interaction. SIGGRAPH08: ACM SIGGRAPH 2008 new tech demos.

  • Brock, O., Khatib, O., & Viji, S. (2002). Task-consistent obstacle avoidance and motion behavior for mobile manipulation. Proceedings of the ieee international conference on robotics and automation (pp. 388–393). Washingtion, USA.

  • Chang, K. S., Holmberg, R., & Khatib, O. (2000). The augmented object model: Cooperative manipulation and parallel mechanism dynamics. Proceedings of IEEE international conference on robotics and automation, 1, 470–475.

    Google Scholar 

  • Cotton, S., Murray, A. P., & Fraisse, P. (2009). Estimation of the center of mass: From humanoid robots to human beings. IEEE/ASME Transactions on Mechatronics, 14(6), 707–712.

    Article  Google Scholar 

  • DeLuca, A. (1991). Zero dynamics in robotics systems. Proceedings of the IIASA Workshop Progress in Systems and Control Theory, 9, 70–87.

    MathSciNet  Google Scholar 

  • Dietrich, A., Wimbock, T. & Albu-Schaffer, A. (2011). Dynamic whole-body mobile manipulation with a torque controlled humanoid robot via impedance control laws. IEEE/rsj international conference on Intelligent robots and systems (iros) (pp. 3199–3206).

  • Dubowsky, S., & Papadopoulos, E. (1993). he kinematics, dynamics, and control of free-flying and free-floating space robotic systems. IEEE Transactions on Robotics and Automation, 9(5), 531–543.

    Article  Google Scholar 

  • Edsinger, A., & Kemp, C. (2008). Two arms are better than one: A behavior based control system for assistive bimanual manipulation. Recent progress in robotics: Viable robotic service to human.

  • Featherstone, R. (1987). Robot dynamics algorithms. Norwell, USA: Kluwer Academic Publishers.

    Google Scholar 

  • Freitas, G., Lizarralde, F., Hsu, L., & Reis, N., Salvi dos R. (2009). Kinematic reconfigurability of mobile robots on irregular terrains. IEEE international conference on robotics and automation (ICRA) (pp. 1340–1345).

  • Fuchs, M., Borst, C., Giordano, P. R., Baumann, A., Kraemer, E., Langwald, J., Gruber, R., Seitz, N., Plank, G., Kunze, K., Burger, R., Schmidt, F., Wimboeck, T., & Hirzinger, G. (2009). Rollin’ justin: Design considerations and realization of a mobile platform for a humanoid upper body. IEEE international conference on robotics and automation (ICRA), (pp. 4131–4137).

  • Halme, A., Leppänen, I., & Salmi, S. (1999). Development of workpartner-robot-design of actuating and motion control system. 2nd international conference on climbing and walking robots, portsmouth (pp. 657–666).

  • Hanafusa, H., Yoshikawa, T., & Nakamura, Y. (1981). Analysis and control of articulated robot with redundancy. Proceedings of IFAC symposium on robot control. Vol. 4, (pp. 1927–1932).

  • Hart, S., Yamokoski, J. D., & Diftler, M. (2011). Robonaut 2: A new platform for human-centered robot learning. Robotics Science and Systems.

  • Hirose, S., et al. (1991). Design of practical snake vehicle: Articulated body mobile robot kr-2. The 5th international conference on advanced robotics, (pp. 833–838).

  • Holmberg, R., & Khatib, O. (2000). Development and control of a holonomic mobile robot for mobile manipulation tasks. The International Journal of Robotics Research, 19(11), 1066–1074.

    Article  Google Scholar 

  • Hyon, S.-H., Hale, J., & Cheng, G. (2007). Full-body compliant human-humanoid interaction: Balancing in the presence of unknown external forces. IEEE Transactions on Robotics, 23(5), 884–898.

    Article  Google Scholar 

  • Iwata, H., & Sugano, S. (2009). Design of human symbiotic robot twendy-one. IEEE international conference on robotics and automation (ICRA) (pp. 580–586).

  • Jenkins, O. C., & Mataric, M. J. (2004). Performance-derived behavior vocabularies: Data-driven acqusition of skills from motion. International Journal of Humanoid Robotics, 1(2), 237–288.

    Article  Google Scholar 

  • Katz, D., Horrell, E., Yang, Y., Burns, B., Buckley, T., Grishkan, A., Zhylkovskyy, V., Brock, O., & Learned-Miller, E. (2006). The umass mobile manipulator uman: An experimental platform for autonomous mobile manipulation. Workshop on manipulation in human environments at robotics: Science and systems.

  • Khatib, O. (1987). A unified approach for motion and force control of robot manipulators: The operational space formulation. International Journal of Robotics Research, 3(1), 43–53.

    Google Scholar 

  • Khatib, O., Sentis, L., Park, J. H., & 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 

  • Kim, K.-G., Lee, J.-Y., Choi, D., Park, J.-M. & You, B.-J. (2010). Autonomous task execution of a humanoid robot using a cognitive model. IEEE international conference on robotics and biomimetics (ROBIO), (pp. 405–410).

  • Kimura, N., et al. (1991). Locomotion mechanism and its control architecture for disaster preventing robot. Proceedings of international symposium on advanced robot technology, (pp. 375–380).

  • King, C.-H., Chen, T. L., Jain, A., & Kemp, C. C. (2010). Towards an assistive robot that autonomously performs bed baths for patient hygiene. IEEE/rsj international conference on intelligent robots and systems (IROS), (pp. 319–324).

  • Lengagne, S., Vaillant, J., Yoshida, E., & Kheddar, A. (2013). Generation of whole-body optimal dynamic multi-contact motions. The International Journal of Robotics Research.

  • Matsumoto, O., Kajita, S., Tani, K., & Oooto, M. (1995). A four-wheeled robot to pass over steps by changing running control modes. IEEE international conference on robotics and automation. Vol. 2, (pp. 1700–1706).

  • Meeussen, W., Wise, M., Glaser, S., Chitta, S., McGann, C., Mihelich, P., Marder-Eppstein, E., Muja, M., Eruhimov, V., Foote, T., Hsu, J., Rusu, R.B., Marthi, B., Bradski, G., Konolige, K., Gerkey, B., & Berger, E. (2010). Autonomous door opening and plugging in with a personal robot. IEEE international conference on robotics and automation (ICRA), (pp. 729–736).

  • Mistry, M., Buchli, J., & Schaal, S. (2010). Inverse dynamics control of floating base systems using orthogonal decomposition. Proceedings of the IEEE international conference on robotics and automation, (pp. 3406–3412).

  • Mistry, M., and Righetti, L. (2011). Operational space control of constrained and underactuated systems. Robotics: Science and systems VII.

  • Nagasaka, K., Kawanami, Y. Shimizu, S., Kito, T., Tsuboi, T., Miyamoto, A., Fukushima, T., & Shimomura, H. (2010). Whole-body cooperative force control for a two-armed and two-wheeled mobile robot using generalized inverse dynamics and idealized joint units. IEEE international conference on robotics and automation (ICRA), (pp. 3377–3383).

  • Nakamura, Y., Hanafusa, H., & Yoshikawa, T. (1987). Task-priority based control of robot manipulators. International Journal of Robotics Research, 6(2), 3–15.

    Article  Google Scholar 

  • Nakanishi, J., Mistry, M., & Schaal, S., (2007). Inverse dynamics control with floating base and constraints. IEEE international conference on robotics and automation, pp. 1942–1947.

  • Nakano, E., & Nagasaka, S. (1993). Leg-wheel robot: A futuristic mobile platform for forestry industry. Proceedings of IEEE/Tsukuba international workshop on advanced robotics, (pp. 109–112).

  • Oh, S., Kimura, Y., & Hori, Y. (2010). Force control based on biarticular muscle system and its application to novel robot arm driven by planetary gear system. IEEE/rsj international conference on intelligent robots and systems, Taipei.

  • Ohmichi, T., et al. (1985). Development of the multi-function robot for the containment vessel of the nuclear plant. Proceedings of international conference on advanced robotics, (pp. 371–378).

  • Oriolo, G., (1994). Stabilization of self-motions in redundant robots. Proceedings IEEE international conference on robotics and automation, (pp. 704–709).

  • Pastor, P., Hoffmann, H., Asfour, T. & Schaal, S. (2009). Learning and generalization of motor skills by learning from demonstration. IEEE international conference on robotics and automation (ICRA), (pp. 763–768).

  • Philippsen, R., Sentis, L., & Khatib, O. (2011). An open source extensible software package to create whole-body compliant skills in personal mobile manipulators. IEEE/rsj international conference on intelligent robots and systems (IROS), (pp. 1036–1041).

  • Reiser, U., Connette, C., Fischer, J., Kubacki, J., Bubeck, A., Weisshardt, F., Jacobs, T., Parlitz, C., Hagele, M., & Verl, A. (2009). Care-o-bot; 3: Creating a product vision for service robot applications by integrating design and technology. IEEE/rsj international conference on intelligent robots and systems (IROS), (pp.1992–1998).

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

  • Righetti, L., Buchli, 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 

  • 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.

  • Salini, J. (2012). Dynamic control for the task/posture coordination of humanoids: Toward synthesis of complex activities. These de doctorat. Paris, France: Universit Pierre et Marie Curie.

    Google Scholar 

  • Salini, J., Padois, V., Ibanez, A., Bidaud, P., & Buendia, A. (2011). A goal driven perspective to generate humanoid motion synthesis. Field robotics: Proceedings of the 14th international conference on climbing and walking robots and the support technologies for mobile machines, (pp. 889–897). World Scientific.

  • Schaal, S., Auke, I., & Aude, B. (2003). Computational approaches to motor learning by imitation. Philosophical Transactions of the Royal Society of London. Series B: Biological Sciences, 358(1413), 537–547.

    Article  Google Scholar 

  • Sentis, L. (2007). Synthesis and control of whole-body behaviors in humanoid systems. Ph.D. thesis, Stanford University, Stanford, USA.

  • Sentis, L., & Khatib, O. (2005). Synthesis of whole-body behaviors through hierarchical control of behavioral primitives. International Journal of Humanoid Robotics, 2(4), 505–518.

    Article  Google Scholar 

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

    Article  Google Scholar 

  • Sentis, L., Petersen, J., & Philippsen, R. (2012). Experiments with balancing on irregular terrains using the dreamer mobile humanoid robot. Robotics science and systems, Sidney.

  • Siciliano, B., & Slotine, J., (1991). A general framework for managing multiple tasks in highly redundant robotic systems. Proceedings of the IEEE international conference on advanced robotics, (pp. 1211–1216). Pisa, Italy

  • Simmons, R., & Apfelbaum, D. (1998). A task description language for robot control. Proceedings IEEE/rsj international conference on Intelligent robots and systems, Vol. 3, (pp. 1931–19373).

  • Stilman, M., Olson, J., Gloss, W. (2010). Golem krang: Dynamically stable humanoid robot for mobile manipulation. IEEE international conference on robotics and automation (ICRA), (pp. 3304–3309).

  • Theobold, D., Ornstein, J., Nichol, J. G., Kullberg, S. E., et al. (2008). Mobile robot platform Google Patents. US Patent 7,348,747.

  • Umetami, Y., & Yoshida, K. (1989). Resolved motion rate control of space manipulators with generalized Jacobian matrix. IEEE Transactions on Robotics and Automation, 5(3), 303–314.

    Google Scholar 

  • Vallery, H., Ekkelenkamp, R., Van Der Herman, K., & Buss, M. (2007). Passive and accurate torque control of series elastic actuators. IEEE/rsj international conference on intelligent robots and systems (IROS), (pp. 3534–3538).

  • Volpe, R., Nesnas, I., Estlin, T., Mutz, D., Petras, R., & Das, H. (2001). The claraty architecture for robotic autonomy. IEEE proceedings on aerospace conference, Vol. 1, (pp. 1–12111321).

  • Vukobratović, M., & Borovac, B. (2004). Zero-moment point thirty tive years of its life. International Journal of Humanoid Robotics, 1(1), 157–173.

    Article  Google Scholar 

  • Wakita, K., Huang, J., Di, P., Sekiyama, K., & Fukuda, T. (2011). Human-walking-intention-based motion control of an omnidirectional-type cane robot. IEEE/ASME Transactions on Mechatronics, 99, 1–12.

    Google Scholar 

  • Wilcox, B. H., Litwin, T., Biesiadecki, J., Matthews, J., Heverly, M., Morrison, J., et al. (2007). Athlete: A cargo handling and manipulation robot for the moon. Journal of Field Robotics, 24(5), 421–434.

    Article  Google Scholar 

  • Ylonen, S. J., & Halme, A. J. (2002). Workpartner: centaur like service robot. IEEE/rsj international conference on intelligent robots and systems Vol. 1, (pp. 727–732).

Download references

Acknowledgments

All experimental and hardware equipment were funded by the Mechanical Engineering Department at The University of Texas at Austin. The research was partly supported by a donation from Willow Garage to the University of Texas at Austin. The authors would like to thank Alan Kwok, Kwan Suk Kim and Nick Paine for their help during experimentation. The mobile base was built by Frank Lima, Somudro Gupta, and Pius Wong at The University of Texas at Austin. Technical support was provided by Meka Robotics. Figure 1 was provided by Ashish Deshpande.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Luis Sentis.

Electronic supplementary material

Below is the link to the electronic supplementary material.

Supplementary material 1 (wmv 73281 KB)

Appendix

Appendix

1.1 Derivations of prioritized whole-body compliant control based on previous work (Sentis et al. 2010)

Rigid multibody dynamics can be developed using the Lagrangian formalism, which leads to the following equation of motion,

$$\begin{aligned} A(q) \, \ddot{q} + b(q,\dot{q}) + g(q) + J_\mathrm{constr}^{\,T}\, \lambda _\mathrm{constr}= U^{\,T}\tau _\mathrm{control},\nonumber \\ \end{aligned}$$
(62)

where \(\{A, b, g\}\) are the inertial matrix, Coriolis-centrifugal, and gravity terms, \(\tau _\mathrm{control} \in \mathbb{R }^{n_\mathrm{dofs}-(1+6)}\) is the vector of torques generated at the output of the motors (assuming completely rigid actuators), \(\lambda _\mathrm{constr}\) are the Lagrangian multipliers associated with the tension forces on the biarticular transmission wire and the reaction forces on the wheel contacts against the ground. This Jacobian can be viewed as infinitesimal displacements of a coordinate \(\delta _\mathrm{constr}\) defined as

$$\begin{aligned} \dot{\delta }_\mathrm{constr}\triangleq J_\mathrm{constr}\; \dot{q} = 0. \end{aligned}$$
(63)

Considering a rigid transmission in the biarticular joints and rigid contacts on the wheels, it is possible to obtain a model-based solution of the previous Lagrangian multipliers. By left multiplying Eq. (62) by \(J_\mathrm{constr}\, A^{-1}\), applying the time derivatives of Eq. (63), i.e. \({\ddot{\delta }}_\mathrm{constr}= J_\mathrm{constr}{\ddot{q}} + \dot{J}_\mathrm{constr}\dot{q} = 0\), the Lagrangian multipliers can be solved as

$$\begin{aligned} \lambda _\mathrm{constr}= \overline{J}_\mathrm{constr}^{\,T}\left( U^{\,T}\tau _\mathrm{control}- b - g \right) + \varLambda _\mathrm{constr}\dot{J}_\mathrm{constr}\, \dot{q},\nonumber \\ \end{aligned}$$
(64)

where \(\overline{J}_\mathrm{constr}\triangleq A^{-1}\, J_\mathrm{constr}^{\,T}\, \varLambda _\mathrm{constr}\) is the dynamically consistent generalized inverse of (12) and \(\varLambda _\mathrm{constr}\triangleq (J_\mathrm{constr}A^{-1} J_\mathrm{constr}^{\,T})^{-1}\) is the joint inertial matrix projected into the manifold of the constraints.

Plugging the above Equation into (62) we remove the Lagrangian Multipliers term, yielding constrained dynamics

$$\begin{aligned}&A \, {\ddot{q}} + N_\mathrm{constr}^{\,T}\left( b + g \right) +J_\mathrm{constr}^{\,T}\varLambda _\mathrm{constr}\dot{J}_\mathrm{constr}\dot{q} \nonumber \\&\quad = \left( U N_\mathrm{constr}\right) ^{\,T}\tau _\mathrm{control}, \end{aligned}$$
(65)

where

$$\begin{aligned} N_\mathrm{constr}\triangleq I - \overline{J}_\mathrm{constr}J_\mathrm{constr}\end{aligned}$$
(66)

is the dynamically consistent null space of the constraint Jacobian.

It is of interest to formulate kinematic quantities in terms of actuated joints alone. In particular, we consider decomposing the generalized coordinates into actuated and floating / co-actuated portions, i.e.

$$\begin{aligned} q = D_\mathrm{kin} \begin{pmatrix} q_\mathrm{act}\\ q_\mathrm{unact}\end{pmatrix}, \end{aligned}$$
(67)

where \(D_\mathrm{kin}\) is a matrix that distributes the joint coordinates of the actuated and floating / co-actuated joints to their respective positions in the robot’s kinematic chain, \(q_\mathrm{act}\) are the actuated joints (i.e. attached to a motor), and \(q_\mathrm{unact}\) correspond to the floating and co-actuated degrees of freedom.

Because of condition (63), we can state that joint velocities lie in the null space of the constraints, i.e. \(\dot{q}^* \in \mathrm{Null}(J_\mathrm{constr})\), where \(\dot{q}^{*}\) expresses the set of generalized velocities that fulfills all of the constraints (see Sentis (2007) for details). In other words, the constrained velocities can be expressed as the self motion manifold \(\dot{q}^* = ( I - J_\mathrm{constr}^\# \, J_\mathrm{constr})\; \dot{q}\), where \(J_\mathrm{constr}^\#\) is any right inverse of the constraints Jacobian (i.e. \(J_\mathrm{constr}J_\mathrm{constr}^\# = I\)) and \(\dot{q}\) represents unconstrained velocities.

The constrained generalized velocities can be reconstructed from the velocities of the actuated DoFs alone using the following formula

$$\begin{aligned} \dot{q}^* = \overline{U N}_\mathrm{constr}\; \dot{q}_\mathrm{act}, \end{aligned}$$
(68)

where

$$\begin{aligned} \overline{U N}_\mathrm{constr}\triangleq A^{-1}\left( U N_\mathrm{constr}\right) ^{\,T}(\phi ^*)^+, \end{aligned}$$
(69)

is the the dynamically consistent generalized inverse of \(U N_\mathrm{constr}, (.)^+\) is the Moore-Penrose pseudoinverse operator and

$$\begin{aligned} \phi ^* \triangleq UN_\mathrm{constr}A^{-1}(U N_\mathrm{constr})^{\,T}, \end{aligned}$$
(70)

is a projection of the inertia matrix in the reduced constrained manifold. Once more, see Sentis (2007) for a proof of (68).

Task entities to be controlled in the operational space can be expressed with a generic coordinate transformation \(x_\mathrm{task}= T_\mathrm{task}(q) \in \mathbb{R }^{n_\mathrm{task}}\), where \(T_\mathrm{task}\) is a kinematic transformation matrix, e.g. a homogeneous transformation for a Cartesian point, or a rotation and translation in the group \(SE(3)\) for a spatial transformation of a frame, \(n_\mathrm{task}\) is the number of degrees of freedom of the task coordinates, and \(q\) is the generalized coordinates of the system including both the actuated and unactuated / co-actuated joints. It follows that instantaneous task kinematics can be expressed as \(\dot{x}_\mathrm{task}= J_\mathrm{task}\; \dot{q}\), where \(J_\mathrm{task}= \partial x_\mathrm{task}/\partial q \in \mathbb{R }^{n_\mathrm{task}\times n_\mathrm{dofs}}\) is the whole-body Jacobian matrix with respect to the generalized coordinates. The differential kinematics with respect to actuated joints alone can be expressed as

$$\begin{aligned} \dot{x}_\mathrm{task}= J_\mathrm{task}^* \; \dot{q}_\mathrm{act}, \end{aligned}$$
(71)

where \(J_\mathrm{task}^*\) is the reduced constraint consistent Jacobian (a.k.a. Generalized Jacobian)

$$\begin{aligned} J_\mathrm{task}^* \triangleq J_\mathrm{task}\overline{UN}_\mathrm{constr}, \end{aligned}$$
(72)

with \(J_\mathrm{task}^* \in \mathbb{R }^{n_\mathrm{task}\times n_\mathrm{act}}\), being a reduced form of the task Jacobian consistent with the general constraint conditions, and \(n_\mathrm{act}\) being the number of degrees of freedom of the actuated joints. To prove (71), consider the constrained generalized velocities \(\dot{q}^*\), and apply (68) to the instantaneous task kinematics , thus getting \(\dot{x}_\mathrm{task}= J_\mathrm{task}\dot{q}^* = J_\mathrm{task}\overline{UN}_\mathrm{constr}\; \dot{q}_\mathrm{act}\).

Generalized Jacobians describe the relationship between instantaneous motions of the active hinges and the task frames. Additionally, they incorporate dynamic effects on the robot’s motion, such as the conservation of momenta (Umetami and Yoshida 1989; Dubowsky and Papadopoulos 1993) and the contact dynamics (Sentis et al. 2010). In the context of our robot Dreamer, they are effective at deriving controllers for constrained underactuated / co-actuated systems since they define the behavior of robots with respect to the actuated joints alone.

Let us consider the skill of touching objects using Dreamer’s right arm as shown in Fig. 10. We represent the skill using two coordinate systems,

$$\begin{aligned} x_\mathrm{skill}\triangleq \left\{ \begin{array}{l} x_\mathrm{hand}\\ x_\mathrm{posture}\\ \end{array}\right\} , \end{aligned}$$
(73)

where \(x_\mathrm{hand}\in T(3)\) represents a coordinate attached to the hand midpoint, \(T(3)\) is the group of translations and \(x_\mathrm{posture}= q_\mathrm{act}\in \mathbb{R }^{n_\mathrm{act}}\) is the vector of actuated joints. For instance, the posture might consist of minimizing the joint posture with respect to a static pose frame.

In general, a prioritized task coordinate, \(\mathrm{task}(k)\), can be kinematically characterized by its Generalized constrained Jacobian which in a general sense it is constrained both by the robot’s physical constraints and by the higher priority tasks, i.e.

$$\begin{aligned}&x_{\mathrm{task}(k)} = T_{\mathrm{task}(k)}(q),\end{aligned}$$
(74)
$$\begin{aligned}&\dot{x}_{\mathrm{task}(k)} = J_{\mathrm{task}(k)}^* \; \dot{q}_\mathrm{act}, \end{aligned}$$
(75)

where

$$\begin{aligned} J_{\mathrm{task}(k)}^* \triangleq J_{\mathrm{task}(k)} \overline{UN}_\mathrm{constr}N_{\mathrm{prec}(k)}^*, \end{aligned}$$
(76)

and \(N_{\mathrm{prec}(k)}^*\) is the dynamically-consistent null-space of the higher priority tasks (i.e. preceding)

$$\begin{aligned} N_{\mathrm{prec}(k)}^* \triangleq I - \sum _{i=1}^{k-1} \overline{J}_{\mathrm{task}(i)}^{\;*} J_{\mathrm{task}(i)}^*. \end{aligned}$$
(77)

In the above derivations we have assumed that tasks with lower index \(k\) have higher priority. As such, the priorities are established by projecting lower priority tasks on the null space of preceding tasks.

It can be demonstrated Sentis (2007), that the dynamics of the actuated joints can be expressed as

$$\begin{aligned} {\ddot{q}}_\mathrm{act}+ \phi ^* (b^* + g^*)= \phi ^* \tau _\mathrm{control}. \end{aligned}$$
(78)

where

$$\begin{aligned}&\phi ^* (b^*+g^*)\nonumber \\&\quad \triangleq U A^{-1}\left( N_\mathrm{constr}^{\,T}(b+g) + J_\mathrm{constr}^{\,T}\varLambda _\mathrm{constr}\dot{J}_\mathrm{constr}\dot{q}\right) . \end{aligned}$$
(79)

By left multiplying the above Equation by the generalized inverse

$$\begin{aligned} \overline{J}_{\mathrm{task}(k)}^{\;*} \triangleq \phi ^* \; J_{\mathrm{task}(k)}^{\,*T} (J_{\mathrm{task}(k)}^* \, \phi ^* \, J_{\mathrm{task}(k)}^{\,*T})^{-1}, \end{aligned}$$
(80)

and using the equality defined by differentiating (75), i.e. \({\ddot{x}}_{\mathrm{task}(k)} = J_{\mathrm{task}(k)}^* {\ddot{q}}_\mathrm{act}+ \dot{J}_{\mathrm{task}(k)}^* \dot{q}_\mathrm{act}\), the constrained task dynamics can be expressed as

$$\begin{aligned} \varLambda _{\mathrm{task}(k)}^* {\ddot{x}}_{\mathrm{task}(k)} + \mu _{\mathrm{task}(k)}^* + p_{\mathrm{task}(k)}^* = \overline{J}_{\mathrm{task}(k)}^{\,*T} \tau _\mathrm{control}, \end{aligned}$$
(81)

with \(\{\varLambda _{\mathrm{task}(k)}^*, \mu _{\mathrm{task}(k)}^*, p_{\mathrm{task}(k)}^*\}\) being inertial, Coriolis-centrifugal, and gravitational terms respectively and not derived here.

If \(J_{\mathrm{task}(k)}^*\) is full rank, the following control structure yields full control of the task’s closed loop dynamics,

$$\begin{aligned} \tau _\mathrm{control}= J_{\mathrm{task}(k)}^{*\,T} F_{\mathrm{task}(k)}. \end{aligned}$$
(82)

This statement can be proven by plugging the above torques into Eq. (81) and using the property of the generalized inverse \(J_{\mathrm{task}(k)}^* \overline{J}_{\mathrm{task}(k)}^* = I\), thus getting

$$\begin{aligned} \varLambda _{\mathrm{task}(k)}^* {\ddot{x}}_{\mathrm{task}(k)} + \mu _{\mathrm{task}(k)}^* + p_{\mathrm{task}(k)}^* = F_{\mathrm{task}(k)}. \end{aligned}$$
(83)

The above transformation can be used to provide full control of the task accelerations \({\ddot{x}}_{\mathrm{task}(k)}\) whenever \(\varLambda _\mathrm{task}(k)\) is full rank. This is the case when there is no conflict between the \(k\)-th task and higher priority ones. By defining the control input as

$$\begin{aligned} F_{\mathrm{task}(k)} = \varLambda _{\mathrm{task}(k)}^* u_{\mathrm{task}(k)} + \mu _{\mathrm{task}(k)}^* + p_{\mathrm{task}(k)}^*, \end{aligned}$$
(84)

where \(u_{\mathrm{task}(k)}\) is an acceleration feedback control policy, the above controller yields closed loop dynamics

$$\begin{aligned} {\ddot{x}}_{\mathrm{task}(k)} = u_{\mathrm{task}(k)}. \end{aligned}$$
(85)

In our scheme, tasks are coordinates that need to track a position or force trajectory or converge to a goal. In contrast, postures are objectives that need to optimize a performance criterion in the null space of tasks. As shown in Eq. (73), a skill has one or more task coordinates to be controlled and one or more postures to be optimized in the redundant space. For the case of one task and one posture, we define the following prioritized control structure,

$$\begin{aligned} \tau _\mathrm{control}= J_\mathrm{task}^{\,*T} F_\mathrm{task}+ N_\mathrm{task}^{\,*T} \tau _\mathrm{posture}, \end{aligned}$$
(86)

where

$$\begin{aligned} N_\mathrm{task}^* \triangleq I - \overline{J}_\mathrm{task}^* J_\mathrm{task}^*, \end{aligned}$$
(87)

is the dynamically consistent null-space matrix of the reduced task Jacobian. An example of a three-priority controller is shown in Fig. 8.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Sentis, L., Petersen, J. & Philippsen, R. Implementation and stability analysis of prioritized whole-body compliant controllers on a wheeled humanoid robot in uneven terrains. Auton Robot 35, 301–319 (2013). https://doi.org/10.1007/s10514-013-9358-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10514-013-9358-8

Keywords

Navigation