Next Article in Journal / Special Issue
Motion Planning of Differentially Flat Planar Underactuated Robots
Previous Article in Journal
Practical Design Guidelines for Topology Optimization of Flexible Mechanisms: A Comparison between Weakly Coupled Methods
Previous Article in Special Issue
An Experimental Investigation of the Dynamic Performances of a High Speed 4-DOF 5R Parallel Robot Using Inverse Dynamics Control
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:

Posture Optimization of the TIAGo Highly-Redundant Robot for Grasping Operation

Albin Bajrami
Matteo-Claudio Palpacelli
Luca Carbonari
Daniele Costa
Department of Industrial Engineering and Mathematical Sciences, Polytechnic University of Marche, 60131 Ancona, Italy
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
The Italian Doctorate in Robotics and Intelligent Machines.
Robotics 2024, 13(4), 56;
Submission received: 24 February 2024 / Revised: 15 March 2024 / Accepted: 17 March 2024 / Published: 23 March 2024
(This article belongs to the Special Issue Kinematics and Robot Design VI, KaRD2023)


This study explores the optimization of the TIAGo robot’s configuration for grasping operation, with a focus on the context of aging. In fact, featuring a mobile base and a robotic arm, the TIAGo robot can conveniently aid individuals with disabilities, including those with motor and cognitive impairments in both domestic and clinical settings. Its capabilities include recognizing visual targets such as faces or gestures using stereo cameras, as well as interpreting vocal commands through acoustic sensors to execute tasks. For example, the robot can grasp and lift objects such as a glass of water and navigate autonomously in order to fulfill a request. The paper presents the position and differential kinematics that form the basis for using the robot in numerous application contexts. In the present case, they are used to evaluate the kinematic performance of the robot relative to an assigned pose in the search for the optimal configuration with respect to the higher-order infinite possible configurations. Ultimately, the article provides insight into how to effectively use the robot in gripping operations, as well as presenting kinematic models of the TIAGo robot.

1. Introduction

The aging population presents significant challenges in eldercare. As the world ages, there is a growing need for technology to support healthy aging, as Tian and Li [1] point out. Technologies like personal mobility aids, vehicle modifications, healthcare access technologies, electronic assistive devices, and smart home solutions are becoming vital for helping the elderly maintain their independence and quality of life [2]. Peek et al. [3] highlight that technology can help older adults stay independent and active, stressing the importance of considering psychological and environmental factors. In the field of robotics for eldercare, several studies have been performed. Krishnan and Pugazhenthi [4] reviewed various mobility and self-transfer systems as assistive devices for the elderly, focusing on improving their quality of life and independence through intelligent robotic systems. Broekens et al. [5] provided a comprehensive review of assistive social robots, which are designed for social interaction and can play a significant role in eldercare, especially in providing companionship and functioning as an interface with digital technology. Ienca et al. [6] discussed the integration of robotics in formal and informal dementia care, outlining the ethical, legal, and social implications that should be considered early in the development of assistive and social robots for dementia care. Coşar et al. [7] introduced the ENRICHME (Enabling Robot and assisted living environment for Independent Care and Health Monitoring of the Elderly) project’s robotic platform, which aims to enrich the day-to-day experience of elderly people with mild cognitive impairments by offering health monitoring, complementary care, and social support. Similar objectives are sought in the FOCAAL project, an acronym for FOg Computing in Ambient Assisted Living, funded by the Italian MIMIT, Ministry of Business and Made in Italy. The project is aimed at integrating artificial intelligence, assistive robotics, home automation, and sensors through the fog computing network architecture, which allows data to be processed locally, in the context of the patient’s life, and to implement personalized actions for different contexts and assistance scenarios, such as home care, rehabilitation clinics, and geriatric medical clinics. Although robots have the potential to assist in eldercare, their integration into this field is not without challenges. According to Remmers and Fischer’s research [8], care workers often perceive robots as mere tools, which can impede their widespread use in caregiving. Therefore, there is a challenge in convincing people to accept and appreciate the benefits of robots in this field. In order for robots to function effectively in eldercare, they must be designed to move and interact safely and efficiently in these settings. This requires a thorough examination of robotic movement, or kinematics, to ensure that robots can meet the diverse needs of elderly individuals without causing disruptions. Overcoming these challenges necessitates a collaborative effort from the fields of robotics, healthcare, and social science to ensure that robots can provide effective support for the elderly.

1.1. The Problem of an Aging Population in Europe

The aging of the population is due to two factors: increasing life expectancy and falling birth rates. On the one hand, life expectancy in the EU (European Union) fell slightly in 2021 due to the pandemic, but has generally increased, leading to an aging population. Huang et al. [9] analyzed the impact of COVID-19 on life expectancy and found a temporary decline in 2020 with a partial recovery in some countries by 2021. This aging trend is clear when comparing the population structure of Europe in 2007 and 2022, which shows a shift towards an older population [10]. On the other hand, the decline in birth rates lead to demographic aging. Figure 1b elucidates this trend by contrasting the population composition of Europe in 2007 with that of 2022, illustrating a demographic shift towards an older population. The hollow rectangles refer to data from 2007 and the filled rectangles to 2022.

1.2. TIAGo in the Literature

TIAGo, a versatile assistive robot by PAL Robotics, comes in various versions (see Figure 2) and is ideal for research and applications in healthcare, assistance, and light industry. It features advanced perception, autonomous navigation, object manipulation, and human–robot interaction (HRI), with a modular design for customization. Telembici et al. in [11] demonstrate how TIAGo can be integrated into everyday life based on its audio capabilities, achieving a high classification rate of audio events. Grama and Rusu enhanced TIAGo’s audio signal task handling and interaction, introducing three modules for better home environment interaction [12,13]. Lach et al. [14] present tactile-equipped end-effectors for TIAGo aimed at improving the reliability and success of mobile manipulation, contributing to its physical interaction capabilities. Muscar et al. [15] show how TIAGo can issue real-time warnings using its audio skills, identifying dangerous and helpful sounds and issuing alerts via email or SMS depending on the sound category identified. Miguel et al. [16] propose a fault-tolerant approach for service robots that uses a Robust Unknown-Input Observer (RUIO) and state feedback control strategy to compensate for fault effects and handle non-linearities.
Using VOSviewer 1.6.19 [17], a bibliometric tool, we analyzed TIAGo robot research through a keyword search of tiago and robot*, identifying 71 articles. These were visualized in three main clusters in VOSviewer, indicating research themes (see Figure 3):
  • Red: Social Robotics and Human Interaction
  • Blue: Mobile Robotics and Programming
  • Green: Machine Learning and Robotic Services
The links between the various words demonstrate the co-occurrence between the keywords. The most-used words are robotics, robot programming, mobile robots, and services robot. There is no reference about kinematics. This visualization not only outlines the research landscape of TIAGo but also emphasizes the importance of each theme, with the size of the item representing its prominence in the field. Continuing, when the term kinema* was added to refine the search, we obtained only seven results on Scopus. Among these results, we found an absence of articles that explore the kinematics of TIAGo. Some works, such as that of Sulaiman et al. [18], where they integrate different robotic arms like the UR3 into the mobile platform, or the Emiko Franka Panda robotic manipulator by Baumgartner et al. [19], show a trend to study applications through performance analysis.

1.3. Summary

In the course of this literature review and subsequent analysis, the authors of this paper have found a scarcity of articles in the literature on the kinematics of the TIAGo robotic arm. The formal definition of its kinematics is considered useful to make the most of the features offered by such a robot, providing developers working on the ROS (robot operating system) platform and TIAGo robot drivers with detailed equations to improve its motion planning logic, for example in the case of obstacle avoidance problems [20], while also providing useful information for determining optimal postures.
The concept of pose optimization is extensively discussed in scientific circles. For instance, Cheah and Caverly’s research [21] focuses on the pose regulation of a six-degree-of-freedom cable-driven parallel robot (CDPR), analyzing it from a passivity perspective. Similarly, Gao et al.’s work [22] delves into dynamic Jacobian identification for robots operating in unstructured environments. Their studies illustrate how solving Jacobian identification as state estimation problems allows for the optimal estimation of the desired Jacobian, ensuring precise robotic alignment with the intended pose. Jens et al. [23] propose a kinematic redundancy in order to improve the achievable pose accuracy of a parallel robot’s traveling platform. Guojian et al. [24] propose a tightly coupled laser-inertial pose estimation and map building method that uses B-spline curves to represent a continuous-time trajectory and achieve high robustness of the registration steps. These are only some scientific papers that address this topic in different ways.
In this paper, the pose optimization is more related to investigating the manipulability ellipsoids in understanding a robot’s performance capabilities. This is pivotal not only for the TIAGo arm’s efficiency but also for enhancing its functionality across various tasks requiring precision and finesse. The examination of how the Jacobian matrix responds during grasping tasks is essential for determining the most effective methods for robots to interact with objects. This is particularly helpful in healthcare and assistance settings, where high dexterity and agility are demanded.
This article is structured as follows: Section 2 sets the context for this work, outlining the robot’s deployment in complex tasks, such as navigating through environments with obstacles and retrieving objects for assistance purposes. It illustrates the robot’s capability to interpret commands and plan its motion, highlighting the practical applications of autonomous robots in supporting daily activities. Section 3 focuses on the position kinematics of the TIAGo robot, exploring its optimal configurations for interacting with objects. Section 4 investigates the differential kinematics, detailing the relationship between the robot’s joint velocities and its end-effectors’ velocities. In Section 5, the routines used to optimize the robot posture are presented. Some results of their application are gathered in Section 6, where the optimal configuration that maximizes a kinematic index is discussed. This paper aims to contribute to the robotics field by providing the kinematics of a highly redundant mobile robot that shows a great potential in enhancing the quality of life for people with mobility challenges.

2. Advanced Tasks in an Unstructured Environment

Featuring a mobile base, namely, an Autonomous Mobile Robot (AMR), and a 7 dof robotic arm, the TIAGo robot has a redundant number of degrees of freedom that can be exploited in complex applications. Advanced tasks in supporting elderly people or people with motor impairments require movement of objects and/or equipment within a large environment, typically characterized by fixed but also mobile obstacles, namely, those whose position is not necessarily known a priori. A complex task taken as reference in this study can be outlined as follows:
  • The person in need of support asks the robot, either vocally or with a hand gesture, to go and retrieve an object, suppose a glass of water, located on a support surface that cannot be reached by the person;
  • The robot either directly interprets the voice command or points its stereoscopic camera system towards the visual target, triggered by the voice command, interpreting its relative meaning;
  • The robot scans the surrounding environment through its sensors, namely, sonars and laser range-finders, to map the space in which it operates, necessary for planning the motion of the mobile base. Furthermore, through the vision system positioned on its head, it searches for the visual target to reach and take. The target search itself is a complex task that may require moving the robot randomly if there is visual coverage of the target to be reached;
  • A trajectory is automatically planned for the robot to follow to avoid colliding with fixed obstacles; along the path, the robot continues to acquire information from its surroundings through its sensors by stopping or changing its trajectory based on obstacle avoidance algorithms [20];
  • Once the proximity of the target object is reached, the optimal configuration of the robot with which to grasp the target is evaluated, taking into account all the available degrees of freedom as a whole;
  • Finally, the robot’s motion is planned to bring the object to and interact with the person who requested it.
The present work aims to answer step 5 of the above outline, focusing on the practical task of grasping a glass from a table while enhancing the TIAGo robot dexterity and precision. In order to identify the optimal configuration of the robot on the basis of an appropriate performance index, it is necessary to investigate its position kinematics in both the direct and inverse problems, as well as determine and analyze its Jacobian matrix.

3. Position Kinematics of the TIAGo Robot

The TIAGo robot is available in different versions, as already mentioned in the introductory section. The setup taken as reference in this work is the one shown in the middle of Figure 2, where a mobile base at the bottom is driven by two differential wheels, with four caster wheels used to ensure stable support on the ground. The robot trunk can be moved vertically through the presence of an actuated prismatic pair, which allows the robot to operate at different heights. The head is connected to the upper part of the robot, where a stereoscopic vision system resides, which is equipped with two revolute joints that allow the vision system to be pointed towards the visual target. Under the head, the stereo microphone system is rigidly mounted to the top part of the trunk. The robotic arm equipped with seven revolute joints is connected to the front part of the robot trunk, under the microphones. The redundancy of the arm compared to a 6 dof Cartesian task makes it suitable for highly dexterous operations, being able to have an additional degree of freedom, without taking into account the other degrees of freedom made available by the mobile base and the trunk itself. A grasping tool is then installed at the end of the arm. In the present study, a collaborative two-finger electric gripper is considered.
In order to study the TIAGo position kinematics, the positioning of several reference frames is required, attached rigidly to the movable rigid bodies of the robot. The main reference systems are shown in Figure 4, whereas the others related to the robotic arm and the TIAGo head are shown in Figure 5 and Figure 6, respectively.
In more detail, O b x b y b z b is the reference system placed at the center of the mobile platform, between the centers of the two actuated wheels, O t x t y t z t refers to the trunk and is placed on its top surface, O h x h y h z h is the frame at the root of the head, where the latter is physically connected, and finally, O f x f y f z f is located at the end of the robotic arm, on the flange where several tools can be assembled according to the user’s needs. In Figure 4, on the bottom right, a simple electric gripper is considered, with a further reference frame O g x g y g z g in the middle of the two actuated fingers.
The mentioned frames are placed in appropriate positions along the mechanical structure of the robot, respecting the conventions adopted in the Robotics Systems Toolbox 4.0 made available by Mathworks Matlab. Referring to the robotic arm, the frames are placed so that the joint rotations occur around the local unit vector z. The Denavit–Hartenberg (DH) convention is not convenient for studying the kinematics of this robot because of the numerous offsets between the robotic arm joints, resulting in an unintelligible home configuration when the arm joint axes have zero rotation. It is clear from Figure 5 on the right that with the chosen convention all the frames assume a simple relative orientation in the home configuration. The simulation environment offered by Matlab is used, on the one hand, as a verification tool and, on the other hand, so that the kinematic equations provided in this study are compatible with the toolbox in view of further developments on the robot.
Focusing on the head of the robot, two further reference systems allow movement from the base of the head toward the stereo vision system: O p x p y p z p is the intermediate system responsible of the head pointing direction, whereas O e x e y e z e is placed conveniently between the sensors of the two RGB-D cameras. Each camera has a wide field of view, 58 horizontally, 45 vertically, and 70 diagonally, with a depth range from 0.4 m to 8 m. Actually, the vision system can be handled by means of the Python scripts and drivers that Pal Robotics makes available in the programming environment, allowing for the evaluation of distance f and other physical distances required to place O e x e y e z e accurately.

3.1. Direct Position Kinematics

The direct position kinematics of the TIAGo robot is handled with conventional homogeneous transformations, according to the following modular operation:
T B A = R B A R z ϑ p B A 0 1 × 3 1 ,
where p B A = x B A , A y B , A z B T represents the position vector between the two origins A and B of two generic reference systems and R B A is the rotation matrix between the two frames, always given by the same sequence of elementary rotations around local x, y, and z axes, namely,
R B A = R x α R y β R z γ .
In (2) the conventional elementary rotations have the form given by
R x = 1 0 0 0 cos α sin α 0 sin α cos α R y = cos β 0 sin β 0 1 0 sin β 0 cos β R z = cos γ sin γ 0 sin γ cos γ 0 0 0 1 .
The last row in (1) consists of three zeros and one one, according to the convention for homogeneous transformations. Moreover, it can be observed that the rotation ϑ associated with the degree of freedom provided locally by a revolute joint, when focusing on the robotic arm, is explicitly involved in a rotation matrix around a z-axis. In fact, matrix R B A is used first to orient the local z-axis along the revolute joint, then an elementary R z ϑ rotation can be driven by the actuated joint. This choice has allowed for a more compact notation.
All the geometric data of the TIAGo robot required in the computation of the Homogeneous transformations in (1) can be retrieved from Table 1 by selecting the required reference frames. Each line in the table is related to a specific couple of frames, with origins labeled A and B. In Table 1, the distances   A x B and   A y B in the last row are hypothesized by comparison with other known dimensions.
The joints of the robot, representing its degrees of freedom, can change in the ranges collected in Table 2 due to mechanical limitations. Given the configuration vector of the robot in terms of the coordinates q = q b T , d , q r T T with q b = x O b , y O b , ϑ b T related to the AMR and q r = ϑ 1 , ϑ 2 , ϑ 3 , ϑ 4 , ϑ 5 , ϑ 6 , ϑ 7 T to the robotic arm, in order to obtain the pose   O g O T of the end-effector of the robotic arm with respect to the absolute reference frame O x y z on the left upper corner of Figure 4, a matrix post-multiplication can be carried out:
  O g O T =   O g O R   O p g 0 1 × 3 1 =   O b O T   O t O b T   O 7 O t T   O g O f T ,
where   O p g and   O g O R represent, respectively, the absolute position of point O g at the end-effector and the rotation matrix that provides its orientation with respect to the absolute reference system in O. The last row in (4) consists of three zeros and one one, as usual. Moreover, looking at the member on the right of (4), the two reference frames in O 7 and O f coincide and matrix T O b O refers to the planar motion of the TIAGo mobile base, whose degrees of freedom can be assumed to vary in the ranges x O b , , y O b , and ϑ b 180 , 180 . Obviously, the extremes with infinite value mean that the translation of the base is free within the available space, namely, the limits of the room in which the robot moves for indoor applications. If an orientation in terms of a minimum set of angles was required instead of via the rotation matrix   O g O R in (4), one of the most common choices in robotics applications would be the ZYZ convention of Euler angles. In this case, three angles ϕ , θ , ψ , conveniently gathered in a vector called e , can be used to underscore the three degrees of freedom related to the spatial rotation of the robot end-effector following the sequence ZYZ, namely,   O g O R = R z ϕ R y θ R z ψ , by using the elementary rotations in (3). The conventional inverse solution to make them explicit can be used:
e = ϕ θ ψ = arctan 2 R 2 , 3 , R 1 , 3 arctan 2 R 3 , 1 2 + R 3 , 2 2 , R 3 , 3 arctan 2 R 3 , 2 , R 3 , 1 ,
where the subscripts i , j in R i , j point at the i t h row and j t h column, respectively, of matrix   O g O R . Particular attention must be paid to θ = ± π / 2 , namely, when singularities of representation occur.
The planar motion of the TIAGo base, namely, a two-wheeled nonholonomic AMR, is regulated by the following well-known differential problem:
q ˙ b = x ˙ O b y ˙ O b θ ˙ b = r 2 cos θ b r 2 cos θ b r 2 sin θ b r 2 sin θ b r 2 t r 2 t ω L ω R ,
where r = 98.5 mm, which is also the coordinate z of the local frame in O b with respect to the absolute fixed frame O x y z , t = 202.2 mm is the distance of the wheel center from the origin O b shown in Figure 4, and ω L and ω R are, respectively, the left and right angular velocities of the AMR actuated wheels. Therefore, the absolute position coordinates of the TIAGo base result from a time integration of (6).

3.2. Differential Kinematics

The relationship between the velocity vector q ˙ = q ˙ b T , d ˙ , q ˙ r T T related to the actuated joints of the robot, involving directly the planar velocities of the moving base q ˙ b T in place of the wheel angular velocities, and the velocity vector of the robot end-effector p ˙ =   O p ˙ g T , O ω g T T =   O x ˙ g , O y ˙ g , O z ˙ g , O ω g , x , O ω g , y , O ω g , z T can be obtained by parting the linear and angular velocities according to the following procedure:
  • A time derivative of vector   O p g gives directly the expression of the first three rows of the Jacobian matrix. Isolating the coordinates gathered in vector q ˙ , a 3 × 11 Jacobian matrix related to the linear velocities is obtained:
      O p ˙ g = J l q ˙
  • The angular velocity   O ω g results from the vector sum of all the angular velocities gained along the kinematic structure of the robot, by driving the planar rotation of the mobile base and actuating the robot joints. z ^ i is the unit vector along the local i t h  z-axis around which rotations occur; thus, it follows that
      O ω g = ϑ ˙ b O z ^ O + ϑ 1 ˙ O z ^ 1 + ϑ ˙ 2 O z ^ 2 + ϑ ˙ 3 O z ^ 3 + ϑ 4 ˙ O z ^ 4 + ϑ ˙ 5 O z ^ 5 + ϑ ˙ 6 O z ^ 6 + ϑ ˙ 7 O z ^ 7
    which, in compact form, provides the expression of a 3 × 11 Jacobian matrix, this time related to rotations:
      O ω g = 0 3 × 1 , 0 3 × 1 , z ^ O , 0 3 × 1 , z ^ 1 , z ^ 2 , z ^ 3 , z ^ 4 , z ^ 5 , z ^ 6 , z ^ 7 q ˙ = J a q ˙
From Equations (7) and (9), the complete 6 × 11 Jacobian J G  that allows one to solve the direct velocity kinematics of the TIAGo robot can be found:
p ˙ =   O p ˙ g   O ω g = J G q ˙ = J l J a q ˙
Matrix J G is the geometric Jacobian, but sometimes the analytical version is required. J A is the analytical Jacobian, which can be derived by knowing the relationship between the angular velocity vector   O ω g and the time derivative of the Euler angles in (5):
  O ω g = Θ e ˙ = 0 sin ϕ cos ϕ sin θ 0 cos ϕ sin ϕ sin θ 1 0 cos θ ϕ ˙ θ ˙ ψ ˙
Since p e =   O p g T , e T T and p ˙ e are, respectively, the pose and the velocity vector of the robot’s end-effector as a function of Euler angles, it follows that
p ˙ e =   O p ˙ g e ˙ = J A q ˙ = J l Θ 1 J a q ˙
Both J G and J A are rectangular matrices and share the same size; therefore, the inverse velocity kinematics presents the complexity of matrix inversion, typical of redundant manipulators. A well-known solution is to solve a constrained optimal problem by using the pseudoinverse J of the Jacobian matrix, also called the Moore–Penrose inverse of the Jacobian matrix, which gives the best possible solution in terms of least squares [25]. Matrix J is defined as J T J J T 1 = V Σ U T , also taking advantage of singular value decomposition, namely, J = U Σ V T . It is recalled from linear algebra that both U and V are orthogonal matrixes, that Σ gathers diagonally the singular values of matrix J , and, finally, that the pseudoinverse Σ of Σ requires the substitution of the non-zero diagonal terms with their reciprocal, as well as a transposition of the matrix obtained. A damped version of the pseudoinverse J can be formulated in order to avoid singular configurations, namely, J = J T J J T + k 2 I 6 1 with I 6 , the 6 × 6 identity matrix, and k a damping coefficient, whose value can be chosen according to optimization techniques [26]. This choice is important in the context of motion planning, proposing a control-managed variable damping coefficient that operates in the proximity of singular configurations and reverts to zero outside these conditions, avoiding a loss of accuracy in trajectory tracking [27]. Furthermore, a weighting matrix W can also be used in order to favor some motors with respect to others [28], for instance, the motion of the moving base with respect to the motion of the robotic arm, according to the expression J = W 1 J T J W 1 J T + k 2 I 6 1 .

3.3. Inverse Position Kinematics

The inverse position kinematics of the TIAGo robot, meaning the search for a configuration q corresponding to an assigned Cartesian pose of the robot end-effector, can be solved only numerically by choosing an optimization strategy, as already pointed out in the previous section for velocities, since TIAGo is a highly redundant robot. Therefore, with reference to the expressions of J presented above, the iterative Gauss–Newton algorithm is proposed to solve the inverse kinematics problem:
q k + 1 = q k + J p e , f p k
where p e , f =   O x g , O y g , O z g , ϕ , θ , ψ T is the assigned pose of the TIAGo end-effector, q k and p k are, respectively, the robot configuration vector with all eleven variables and the corresponding end-effector pose vector related to the k t h iteration, and J is the pseudoinverse already mentioned. It is shown in the following section that the algorithm in (13) is employed with some modifications to find the optimal posture of the robot for a given Cartesian pose, making use of the analytical Jacobian matrix J A presented in (12) obtained through the use of Euler angles. In order to solve Equation (13), a first known configuration of the robot joint variables and their corresponding Cartesian pose must be determined, possibly not too far from the configuration searched by means of the inverse kinematics algorithm. Some attempts are sometimes required to find a good starting configuration to allow the algorithm to converge quickly to a solution, which must also meet the allowable ranges shown in Table 2. The singular configurations possibly encountered by the iterative algorithm in (13) is easily overcome by verifying the rank of J A for each step, updating the pseudoinverse J with its damped version to avoid numerical indeterminacy.

4. Posture Optimization of the Grasping Task

In this section, a study is proposed to identify the optimal robot configuration for the grasping task from the infinite possibilities theoretically available (actually 5 , due to the excess of degrees of freedom). As already mentioned, the grasping operation can be carried out by adjusting all the independent variables for both the mobile base and the robotic arm to enhance the robot’s performance in accomplishing the task. Since the robot configuration is managed with eleven variables and the task is defined by assigning a Cartesian pose to the end-effector corresponding to six degrees of freedom, there is a surplus of five degrees of freedom that can be freely selected.
In the field of robotics, an index commonly used in the search for optimal kinematic configurations of a robot is the condition number κ of its Jacobian matrix [29,30]. The condition number offers insights into the sensitivity of the robot’s motion to variations in control inputs, with lower values indicating more uniform control sensitivity across different directions. The 2-norm condition number for inversion has been chosen as the reference for the kinematic optimization proposed in this work, using the singular value decomposition already mentioned to find the ratio of the largest to smallest singular values. This method highlights configurations where the robot demonstrates similar performance in every direction, either in terms of generalized velocity or force, depending on the specific task requirements. Actually, an inversion is conveniently applied to the condition number to obtain a finite index. In this way, the highest possible theoretical value is one, corresponding to the isotropic configuration, where the robot gains analogous performance in every direction. Ultimately, in the most comprehensive case, the index expression is
I = 1 κ J J T = λ min J J T λ max J J T
where J represents the geometric Jacobian J G in (10), λ min and λ max are the minimum and maximum eigenvalues, respectively, of matrix J J T , and κ is the condition number of J J T . To specifically focus on the linear velocities of the TIAGo end-effector, expression (14) can be updated by replacing J with J l , which is a 3 × 11 Jacobian matrix. Similarly, for angular velocities, the 3 × 11 Jacobian matrix J a should be considered. If required, more complex indexes that allow us to overcome the non-homogeneous feature of the full Jacobian matrix can be taken into account [31].
The degrees of freedom that have been spanned in their possible range of motion are the three planar ones of the mobile base, gathered in vector q b , the vertical displacement d of the robot trunk, and finally, the spin ϑ 7 around the last revolute joint of the robotic arm, related to the axial rotation of the gripper. The choice of considering these five variables as redundant is justified by the fact that the moving base and the vertical prismatic axis are the most influential in achieving a generic Cartesian configuration for the robot end-effector, the former being able to move freely in the horizontal plane unless encountering obstacles, and the latter being able to adjust the robot’s height relative to the gripping target. The rotation around the robot’s last joint was chosen with a pitching rotation of the grasped object in mind, allowing for a rotation of an object, such as a glass or bottle, under the assumption of spilling its contents. Other choices can be made, for instance, the rotation around the third axis of the robotic arm, considered typically the redundant axis of a 7 dof robot. These five specific degrees of freedom were selected for exploration to systematically evaluate how variations in each could impact the robot’s performance in the grasping task. In particular, their ranges vary as shown below:
200 mm x b 200 mm 200 mm y b 200 mm π 4 ϑ b π 4 0 mm d 350 mm 2 π 3 ϑ 7 2 π 3 .
By assigning values to each of the variables listed above, a finite number of solutions for the inverse kinematics problem of the remaining 6 dof robotic arm can be determined, excluding singular configurations. Therefore, given a reference initial posture q r 6 , 0 = ϑ 1 , ϑ 2 , ϑ 3 , ϑ 4 , ϑ 5 , ϑ 6 T related to a pose p e not too far from the required pose p e , f for grasping the target object, the numerical algorithm presented in (13) efficiently identifies the robot configuration that matches the assigned final pose p e , f . The algorithm consists of two routines: the first one revolves the inverse kinematics for an assigned value of the five variables in x b , y b , ϑ b , d , ϑ 7 ; the second one ranges all possible values for the variables in x b , y b , ϑ b , d , ϑ 7 , providing information about the index I in (14).

4.1. Routine 1—Inverse Kinematics Routine

  • A Cartesian pose p e , f is assigned, namely, the gripper is located on the target in the gripping configuration. In this case, as shown in Figure 7, the pose is
    p e , f = 0 0 1 0.9 m 0 1 0 0 m 1 0 0 0.7 m 0 0 0 1 ;
  • A vector q i n d = x b , y b , ϑ b , d , ϑ 7 T is chosen so that its elements fall into the intervals mentioned above. For instance, q i n d = 0 , 0 , 0 , 0 , π / 2 T ;
  • A reference initial posture q r 6 , 0 is defined. Without loss of generality, the following non-singular configuration has been chosen for the robotic arm joints, also verified visually through the Matlab Robotics Systems Toolbox, as shown in Figure 8:
    q r 6 , 0 = 20 , 10 , 70 , 70 , 70 , 30 T ;
  • Equation (4), together with the relations in (5), is used to find the initial pose p e , 0 associated with the overall vector q that gathers q i n d and q r 6 , 0 ;
  • The 6 × 6 portion J A , r of the analytical Jacobian matrix in (12) related only to the rotations in q r 6 , 0 , more specifically, taking from J A the third column and the columns from the fifth to the tenth, is evaluated for the q of step 4;
  • The algorithm in (13) is updated with the 6 × 6 Jacobian of the previous step to solve the inverse kinematics problem:
    q r 6 , k + 1 = q r 6 , k + J A , r p e , f p e , k ,
    where the integer k starts from 0 and gradually increases in the iterative process toward convergence, achieved only when a tolerance for both position and orientation is observed: p g , f p g , k ϵ l and e f e k ϵ a , with sufficiently small values for the tolerances ϵ l and ϵ a ;
  • The new position p e , k + 1 is computed by means of the direct kinematics in (4) applied to q k + 1 , namely, the vector that gathers q r 6 , k + 1 and q i n d ;
  • The procedure continues iteratively until convergence, when reached. An example is presented in Figure 7, where the shown q r 6 results from a given q i n d . On the contrary, the choice for q i n d is discarded from the routine and another vector is evaluated, starting again from step 2. The routine outputs the value of q r 6 , k that verifies the tolerances of step 6.

4.2. Routine 2—Posture Optimization

  • Five nested loops sweep the values of the variables in q i n d ;
  • For each q i n d determined in the previous step, Routine 1 is executed in order to find the final q r 6 , k associated with q i n d ;
  • The eigenvalues and eigenvectors of J l J l   T are determined, recording this information so as to know the associated manipulability ellipsoid. It is known that the eigenvectors represent the principal axes of the ellipsoid and the eigenvalues the respective dimensions;
  • The index I in (14) is evaluated and recorded for that particular posture of the robot;
  • The highest value obtained for I allows us to intercept the best posture in terms of velocity manipulability, to which the optimal ellipsoid corresponds;
  • Similarly, for rotations, steps 3 to 5 can be repeated using matrix J a instead of matrix J l .

5. Results

The routines proposed in the previous section have been conveniently implemented in Matlab to find the best posture of the TIAGo robot, according to index I values, when the Cartesian pose in (16) is assigned. On the left of Figure 9, the entire set of ellipsoids is shown, numbering 961 from the scanning of vector q i n d . It can be noted that most of the ellipsoids must have a low index I because of their flattened shape, with semi-axes in the y z -plane much larger than that along the x-axis. On the right of Figure 9, the best ellipsoid in terms of linear velocities of the robot end-effector corresponding to the highest value of I = 0.41 is shown, meaning that all the Cartesian directions have a similar linear velocity performance. The volume of such an ellipsoid is clearly smaller than many others that are visible in the left image, but there was a desire to favor a closer proximity to the isotropic condition over having a strongly anisotropic behavior. When an anisotropic behavior is accepted, a different posture of the robot can be chosen in order to have higher velocities in some directions.
Figure 10 shows the optimized posture that maximized index I. In this configuration, the mobile base of the robot is closer to the table and the arm is less extended, as well as positioned to lie on a horizontal plane x y . Such a condition is allowed by an extension of the vertical prismatic joint of the trunk. A comparison with the generic configuration already presented in Figure 7 points out these differences in posture, as Figure 11 clearly demonstrates.
This study has been also extended to angular velocities by using matrix J a instead of J l . It results in a set of angular velocity ellipsoids similar to the one presented in Figure 9, but more extended along the x-axis, almost representing a sphere. In this case, the best ellipsoid is related to a higher value of the index I defined in (14), namely, I = 0.58 . It means that the robot end-effector can rotate with a similar angular velocity in every direction. Even in this case, the best ellipsoid has a shape similar to the one shown in Figure 9 on the right, but with a higher volume.
As is well known, ellipsoids in force have orthogonal behavior compared to those in velocity presented in this paper. These become useful for evaluating the robot’s performance in terms of static lifting capacity or thrust/resistance.

6. Conclusions

This study has systematically explored the impact of varying degrees of freedom on the performance of the TIAGo robot’s end-effector for grasping tasks, with a particular focus on the manipulability of linear and angular velocities. By employing a comprehensive methodology that includes the calculation of condition numbers through the geometric Jacobian and the execution of two distinct routines (inverse kinematics routine and posture optimization), optimal postures that maximize the robot’s efficiency in simulated grasping tasks have been identified.
Optimal Postures Enhance Performance: Adjusting specific degrees of freedom can significantly improve the robot’s efficiency in grasping tasks, underscoring the importance of precise control in robotic design.
Implications and Future Directions: The presented methodology provides a foundation for improving motion planning and control of the TIAGo robot, with potential applications across various platforms and tasks characterized by redundant degrees of freedom. Future research should explore these techniques in different contexts and integrate advanced predictive algorithms to further optimize performance.
Limitations: While insightful, the findings proposed in this paper are based on simulations with the TIAGo robot and may require validation in real-world scenarios.
In summary, this research highlights the critical role of posture optimization in robotic grasping tasks, offering a pathway toward more responsive and capable robotic systems.

Author Contributions

Conceptualization, M.-C.P. and A.B.; methodology, M.-C.P.; software, A.B.; validation, A.B. and D.C.; formal analysis, M.-C.P.; investigation, A.B.; resources, L.C.; data curation, D.C.; writing—original draft preparation, M.-C.P. and A.B.; writing—review and editing, M.-C.P. and A.B.; visualization, L.C. and A.B.; supervision, L.C.; project administration, M.-C.P. All authors have read and agreed to the published version of the manuscript.


This research received external funding from the project FOCAAL, FOg Computing in Ambient Assisted Living, funded by MIMIT, the Ministry of Enterprise and Made in Italy, under the Life Sciences Innovation Agreement DM 05/03/2018.

Data Availability Statement

All data are contained within this article.

Conflicts of Interest

The authors declare no conflicts of interest.


The following abbreviations are used in this manuscript:
FOCAALFOg Computing in Ambient Assisted Living
MIMITMinistry of Enterprises and Made in Italy
EUEuropean Union
COVIDCOronaVIrus Disease
HRIHuman–Robot Interaction
SMSShort Message Service
RUIORobust Unknown-Input Observer
ROSRobot Operating System
CDPRCable-Driven Parallel Robot
AMRAutonomous Mobile Robot
dofDegrees of Freedom
RGB-DRed–Green–Blue and Depth


  1. Tian, Y.; Li, D. The Impact of Aging on Economic Growth Based on Health Investment and Technological Innovation: An Empirical Study from China. In Proceedings of the 2020 Management Science Informatization and Economic Innovation Development Conference (MSIEID), Guangzhou, China, 18–20 December 2020. [Google Scholar] [CrossRef]
  2. Science, N.; Council, T. Emerging Technologies to Support an Aging Population; Technical Report NSTC-2019-1; Executive Office of the President of the United States: Washington, DC, USA, 2019.
  3. Peek, S.T.; Luijkx, K.G.; Rijnaard, M.D.; Nieboer, M.E.; van der Voort, C.S.; Aarts, S.; van Hoof, J.; Vrijhoef, H.J.; Wouters, E.J. Older Adults’ Reasons for Using Technology while Aging in Place. Gerontology 2015, 62, 226–237. [Google Scholar] [CrossRef] [PubMed]
  4. Krishnan, R.H.; Pugazhenthi, S. Mobility assistive devices and self-transfer robotic systems for elderly, a review. Intell. Serv. Robot. 2013, 7, 37–49. [Google Scholar] [CrossRef]
  5. Bemelmans, R.; Gelderblom, G.J.; Jonker, P.; de Witte, L. Socially Assistive Robots in Elderly Care: A Systematic Review into Effects and Effectiveness. J. Am. Med. Dir. Assoc. 2012, 13, 114–120.e1. [Google Scholar] [CrossRef]
  6. Ienca, M.; Jotterand, F.; Vică, C.; Elger, B. Social and Assistive Robotics in Dementia Care: Ethical Recommendations for Research and Practice. Int. J. Soc. Robot. 2016, 8, 565–573. [Google Scholar] [CrossRef]
  7. Coşar, S.; Fernandez-Carmona, M.; Agrigoroaie, R.; Pages, J.; Ferland, F.; Zhao, F.; Yue, S.; Bellotto, N.; Tapus, A. ENRICHME: Perception and Interaction of an Assistive Robot for the Elderly at Home. Int. J. Soc. Robot. 2020, 12, 779–805. [Google Scholar] [CrossRef]
  8. Remmers, P.; Fischer, N. Social Robots in Care Facilities: Reflections on Current Research and the Potential of Ethical Visions. In Frontiers in Artificial Intelligence and Applications; IOS Press: Amsterdam, The Netherlands, 2023; ISBN 9781643683751. ISSN 1879-8314. [Google Scholar] [CrossRef]
  9. Huang, G.; Guo, F.; Liu, L.; Taksa, L.; Cheng, Z.; Tani, M.; Zimmermann, K.F.; Franklin, M.; Silva, S.S.M. Changing impact of COVID-19 on life expectancy 2019–2023 and its decomposition: Findings from 27 countries. SSM Popul. Health 2024, 25, 101568. [Google Scholar] [CrossRef] [PubMed]
  10. Eurostat. Life Expectancy at Birth Down to 80.1 Years in 2021. 2023. Available online:,of%20the%20COVID%2D19%20pandemic (accessed on 22 February 2024).
  11. Telembici, T.; Grama, L.; Rusu, C. Integrating Service Robots into Everyday Life Based on Audio Capabilities. In Proceedings of the 2020 International Symposium on Electronics and Telecommunications (ISETC), Timisoara, Romania, 5–6 November 2020. [Google Scholar] [CrossRef]
  12. Grama, L.; Rusu, C. Adding audio capabilities to TIAGo service robot. In Proceedings of the 2018 International Symposium on Electronics and Telecommunications (ISETC), Timisoara, Romania, 8–9 November 2018. [Google Scholar] [CrossRef]
  13. Grama, L.; Rusu, C. Extending Assisted Audio Capabilities of TIAGo Service Robot. In Proceedings of the 2019 International Conference on Speech Technology and Human-Computer Dialogue (SpeD), Timisoara, Romania, 10–12 October 2019; pp. 1–8. [Google Scholar] [CrossRef]
  14. Lach, L.; Haschke, R.; Ferro, F.; Pagès, J. Leveraging Touch Sensors to Improve Mobile Manipulation. arXiv 2020, arXiv:2010.10810. [Google Scholar]
  15. Muscar, L.; Grama, L.; Rusu, C. A Real-Time Warning Based on TIAGo’s Audio Capabilities. In Proceedings of the 2022 International Symposium on Electronics and Telecommunications (ISETC), Timisoara, Romania, 10–11 November 2022; pp. 1–4. [Google Scholar] [CrossRef]
  16. Miguel, A.; Puig, V.; Alenyà, G. Fault-tolerant Control of a Service Robot using a LPV Robust Unknown Input Observer. In Proceedings of the 2019 4th Conference on Control and Fault Tolerant Systems (SysTol), Casablanca, Morocco, 18–20 September 2019; pp. 207–212. [Google Scholar] [CrossRef]
  17. van Eck, N.J.; Waltman, L. Software survey: VOSviewer, a computer program for bibliometric mapping. Scientometrics 2009, 84, 523–538. [Google Scholar] [CrossRef] [PubMed]
  18. Sulaiman, S.; H, A.; Apurin, A.; Martinez-Garcia, E.; Magid, E. Trajectory planning and simulation of a custom mobile manipulator for door opening tasks using ROS. In Proceedings of the Advances in Robotics—6th International Conference of The Robotics Society, Ropar, India, 5–8 July 2023. [Google Scholar] [CrossRef]
  19. Baumgartner, J.; Petrič, T.; Klančar, G. Potential Field Control of a Redundant Nonholonomic Mobile Manipulator with Corridor-Constrained Base Motion. Machines 2023, 11, 293. [Google Scholar] [CrossRef]
  20. Neri, F.; Forlini, M.; Scoccia, C.; Palmieri, G.; Callegari, M. Experimental Evaluation of Collision Avoidance Techniques for Collaborative Robots. Appl. Sci. 2023, 13, 2944. [Google Scholar] [CrossRef]
  21. Cheah, S.K.; Caverly, R.J. Passivity-Based Pose Regulation and Jacobian-Based Force Distribution of a Cable-Driven Parallel Robot. In Proceedings of the 2021 American Control Conference (ACC), New Orleans, LA, USA, 25–28 May 2021. [Google Scholar] [CrossRef]
  22. Zhong, X.G.; Peng, X.F.; Zhong, X.Y.; Lin, L.X. Dynamic Jacobian Identification Based on State-Space for Robot Manipulation. Appl. Mech. Mater. 2013, 475–476, 675–679. [Google Scholar] [CrossRef]
  23. Kotlarski, J.; Abdellatif, H.; Heimann, B. Improving the pose accuracy of a planar 3RRR parallel manipulator using kinematic redundancy and optimized switching patterns. In Proceedings of the 2008 IEEE International Conference on Robotics and Automation, Pasadena, CA, USA, 19–23 May 2008. [Google Scholar] [CrossRef]
  24. He, G.; Liu, Y.; Li, C. Tightly coupled laser-inertial pose estimation and map building based on B-spline curves. Meas. Sci. Technol. 2023, 34, 125130. [Google Scholar] [CrossRef]
  25. Campbell, S.L.; Meyer, C.D. Generalized Inverses of Linear Transformations; Dover Publications: New York, NY, USA, 1991. [Google Scholar]
  26. Deo, A.S.; Walker, I.D. Overview of damped least-squares methods for inverse kinematics of robot manipulators. J. Intell. Robot. Syst. 1995, 14, 43–68. [Google Scholar] [CrossRef]
  27. Buss, S.R.; Kim, J.S. Selectively Damped Least Squares for Inverse Kinematics. J. Graph. Tools 2005, 10, 37–49. [Google Scholar] [CrossRef]
  28. Tringali, A.; Cocuzza, S. Globally Optimal Inverse Kinematics Method for a Redundant Robot Manipulator with Linear and Nonlinear Constraints. Robotics 2020, 9, 61. [Google Scholar] [CrossRef]
  29. Angeles, J.; López-Cajún, C.S. Kinematic Isotropy and the Conditioning Index of Serial Robotic Manipulators. Int. J. Robot. Res. 1992, 11, 560–571. [Google Scholar] [CrossRef]
  30. Merlet, J.P. Jacobian, Manipulability, Condition Number, and Accuracy of Parallel Robots. J. Mech. Des. 2005, 128, 199–206. [Google Scholar] [CrossRef]
  31. Mansouri, I.; Ouali, M. The power manipulability—A new homogeneous performance index of robot manipulators. Robot. Comput.-Integr. Manuf. 2011, 27, 434–449. [Google Scholar] [CrossRef]
Figure 1. (a) Depicts a graphical representation of average life expectancy across Europe. (b) Provides a comparative view of Europe’s population structure in 2007 and 2022. It shows the shifting age pyramid, with a bulge in the older age brackets, signifying the demographic aging process.
Figure 1. (a) Depicts a graphical representation of average life expectancy across Europe. (b) Provides a comparative view of Europe’s population structure in 2007 and 2022. It shows the shifting age pyramid, with a bulge in the older age brackets, signifying the demographic aging process.
Robotics 13 00056 g001
Figure 2. Different versions of the TIAGo robot marketed by Pal Robotics.
Figure 2. Different versions of the TIAGo robot marketed by Pal Robotics.
Robotics 13 00056 g002
Figure 3. This figure, created with VOSviewer, depicts the bibliometric relationships in robotics research, particularly around the TIAGo robot. The terms, color-coded into three clusters (Red: Social Robotics and Human Interaction, Blue: Mobile Robotics and Programming, Green: Machine Learning and Robotic Services), represent different research themes. The size of each term indicates its prominence in the field. The visualization highlights the current research landscape and potential areas for future exploration.
Figure 3. This figure, created with VOSviewer, depicts the bibliometric relationships in robotics research, particularly around the TIAGo robot. The terms, color-coded into three clusters (Red: Social Robotics and Human Interaction, Blue: Mobile Robotics and Programming, Green: Machine Learning and Robotic Services), represent different research themes. The size of each term indicates its prominence in the field. The visualization highlights the current research landscape and potential areas for future exploration.
Robotics 13 00056 g003
Figure 4. Main reference systems for the TIAGo robot.
Figure 4. Main reference systems for the TIAGo robot.
Robotics 13 00056 g004
Figure 5. Reference frames of the TIAGo robotic arm.
Figure 5. Reference frames of the TIAGo robotic arm.
Robotics 13 00056 g005
Figure 6. Reference frames of the TIAGo head.
Figure 6. Reference frames of the TIAGo head.
Robotics 13 00056 g006
Figure 7. TIAGo robot while grasping a glass of water from a table.
Figure 7. TIAGo robot while grasping a glass of water from a table.
Robotics 13 00056 g007
Figure 8. Simulation environment in Matlab where a reference initial posture is defined for the robotic arm.
Figure 8. Simulation environment in Matlab where a reference initial posture is defined for the robotic arm.
Robotics 13 00056 g008
Figure 9. Entire set of linear velocity ellipsoids on the left and optimum velocity ellipsoid with maximum index I on the right.
Figure 9. Entire set of linear velocity ellipsoids on the left and optimum velocity ellipsoid with maximum index I on the right.
Robotics 13 00056 g009
Figure 10. Optimized posture that maximizes index I.
Figure 10. Optimized posture that maximizes index I.
Robotics 13 00056 g010
Figure 11. Generic posture on the left and optimized posture on the right for a given Cartesian pose where the TIAGo robot performs a grasping operation.
Figure 11. Generic posture on the left and optimized posture on the right for a given Cartesian pose where the TIAGo robot performs a grasping operation.
Robotics 13 00056 g011
Table 1. Kinematic and geometric parameters of the TIAGo robot.
Table 1. Kinematic and geometric parameters of the TIAGo robot.
AB   A x B mm   A y B mm   A z B mm α rad β rad γ rad ϑ rad
O O b x O b y O b 98.5000 ϑ b
O b O t 0−62.0d0000
O t O 1 155.114.0−151.000 π / 2 ϑ 1
O 1 O 2 125.016.5−31.0 π / 2 00 ϑ 2
O 2 O 3 89.501.5 π / 2 π / 2 0 ϑ 3
O 3 O 4 −20.0−27.0−222.0 π / 2 0 π / 2 ϑ 4
O 4 O 5 − π / 2 0 ϑ 5
O 5 O 6 00150.0 π / 2 0 π / 2 ϑ 6
O 6 O 7 = O f 66.000 π / 2 π / 2 0 ϑ 7
O f O g 000.20000
O t O h 182.000000 ϑ h 1
O h O p 5.0098.0 π / 2 00 ϑ h 2
O p O e 12010600000
Table 2. Motion range of the actuated kinematic joints.
Table 2. Motion range of the actuated kinematic joints.
JointTypeLower LimitUpper Limit
dP0 mm350 mm
θ 1 R 0 157.5
θ 2 R 90 62.5
θ 3 R 202.5 90
θ 4 R 22.5 135
θ 5 R 120 120
θ 6 R 90 90
θ 7 R 120 120
θ h 1 R 75 75
θ h 2 R 60 45
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Bajrami, A.; Palpacelli, M.-C.; Carbonari, L.; Costa, D. Posture Optimization of the TIAGo Highly-Redundant Robot for Grasping Operation. Robotics 2024, 13, 56.

AMA Style

Bajrami A, Palpacelli M-C, Carbonari L, Costa D. Posture Optimization of the TIAGo Highly-Redundant Robot for Grasping Operation. Robotics. 2024; 13(4):56.

Chicago/Turabian Style

Bajrami, Albin, Matteo-Claudio Palpacelli, Luca Carbonari, and Daniele Costa. 2024. "Posture Optimization of the TIAGo Highly-Redundant Robot for Grasping Operation" Robotics 13, no. 4: 56.

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop