Kinematic directional index for the performance of redundant manipulators

Abstract Performance indexes are a powerful tool to evaluate the behavior of industrial manipulators throughout their workspace and improve their performance. When dealing with intrinsically redundant manipulators, the additional joint influences their performance; hence, it is fundamental to consider the influence of the redundant joint when evaluating the performance index. This work improves the formulation of the kinematic directional index (KDI) by considering redundant manipulators. The KDI represents an improvement over traditional indexes, as it takes into account the direction of motion when evaluating the performance of a manipulator. However, in its current formulation, it is not suitable for redundant manipulators. Therefore, we extend the index to redundant manipulators. This is achieved by adopting a geometric approach that allows identifying the appropriate redundancy to maximize the velocity of a serial manipulator along the direction of motion. This approach is applied to a 4-degree-of-freedom (DOF) planar redundant manipulator and a 7-DOF spatial articulated one. Experimental validation for the articulated robot is presented, demonstrating the effectiveness of the proposed method and its advantages.


Introduction
Industrial serial manipulators are often adopted with a minimum number of degrees of freedom (DOFs) sufficient to execute the task. Recently, intrinsically redundant manipulators, that is, with a number of DOFs greater than the one that describes the operational space, have been increasingly adopted in robotics. The additional joint allows for avoiding singular configurations, increasing the reachable workspace of the manipulator [1], and moving fluently in all directions, increasing its flexibility [2]. More recently, 7-DOF articulated manipulators have been proposed in the context of human-robot collaboration, where the redundant joint has been applied to change the robot configuration and avoid collision with the operator [3]. Furthermore, if the redundant joint is correctly controlled, it is possible to improve the performance of the robot manipulator, which can be evaluated with a performance index [4].
A first performance index is given by the manipulability index [5]. In its most basic form, the manipulability index allows measuring kinematic dexterity, that is, the ability to change the end-effector position. However, the initial formulation of manipulability w = √ det(JJ T ), where J is the Jacobian matrix, is affected by several problems, for example, the scaling factor between rotational and translation velocities [6]. Therefore, a definition based on the condition number of the Jacobian matrix was adopted [6]. The condition number can be used as a measure of workspace quality in terms of kinematic isotropy [7], that is, the condition for the properties of the manipulators (e.g., velocity and/or force in the end-effector) to be independent of the direction. An extension of the condition number is presented in ref. [8], where the global conditioning index describes the distribution of the condition number in the manipulator workspace; hence, the index is independent of the reference system, a benchmark presented by several modern indexes. Similarly, many indexes developed over the years are based on the Jacobian matrix [9], such as the velocity-transmission ratio and the force-transmission ratio.
When a performance index is properly defined, it can be adopted for a variety of tasks, for example, improving robot design [10,11] or optimizing robot trajectory planning [12], which can be even more effective in conjunction with properly designed controllers [13].
Although the maximum performance of manipulators can be evaluated using optimization algorithms [14,15], a geometric representation of the Jacobian matrix can be adopted to represent and evaluate the maximum force and velocity achievable for the limits given in the joint space [16]. Yoshikawa [5] defined the manipulability ellipsoid as the representation of the subset of all realizable velocities. Flores-Díaz et al. [17] presented three methods to identify the principal directions of a manipulator, that is, the axis of the manipulability ellipsoid, and the authors introduced a new method based on the definition of a sphere of linear displacements. Using the inverse kinematics, the authors evaluated the joint angles for each point of the sphere; the minimum and maximum differences of the joint angles between the points of the sphere and the end-effector were used to identify the axis of the ellipsoid. The advantages of geometric representation are presented in ref. [18], where a new index is introduced to evaluate the ability of a manipulator to avoid collisions. The index is evaluated both as the total sum of the singular value of the avoidance matrix, that is, the orthogonal projection of the Jacobian matrix onto its null space, of all the manipulator links and as the total sum of the volume of the avoidance manipulability ellipsoids. This second evaluation proved to be more suitable for evaluating the avoidance ability of the whole manipulator since it generates more dexterous configurations.
Despite their advantages, ellipsoids are being replaced by polytopes [19] to represent the velocity limits, as they give an exact representation of the velocity boundaries compared to the approximation of the ellipsoid [20] and are less susceptible to errors when dealing with redundant manipulators [21]. Moreover, recent algorithms for finding vertexes allow for fast calculations of polytope vertices [22], reducing the computational advantage of ellipsoids over polytopes. Lee [23] provides a comparison between polytopes and ellipsoids, showing that the ellipsoid may identify an incorrect maximum speed direction. Lastly, Long and Padir [24] have added task constraints to the manipulability polytope, limiting joint velocities to avoid obstacles, by reducing the achievable Cartesian velocity in the obstacle direction. In this way, it is possible to correctly identify the performance of the manipulator in a cluttered environment.
One of the issues of performance indexes is usually that they do not provide an evaluation of performance along the determined directions, especially along an arbitrary direction, which could be the direction of motion. For this reason, Boschetti et al. [25] presented the direction-selective index (DSI), which evaluates the translational capabilities of a planar manipulator along the axes of the world reference frame and, by extension, along a generic direction in the form of task-dependent performance index (TPI). Similarly, previous works have considered the performance of manipulators along a predefined direction. Scalera et al. [26] analyzed the energy consumption of a 4-DOF parallel manipulator during the translation along a generic linear path, defined by a fixed length and distance from the robot base, and which represented a pick-and-place task. Similarly, Vidussi et al. [27] analyzed the trajectory energy index for a SCARA robot on a linear path similar as the one performed in a pick-and-place operation. Chiu [28] exploited the redundancy to align the optimal directions of the manipulator, that is, the one with higher transmission ratio, with the task main direction. He identified the optimal redundancy to maximize the transmission ratio in the task direction, thus to maximize the horizontal velocity. Lastly, the DSI was extended to serial manipulators in the form of the kinematic directional index (KDI) [29]. As a directional index [30,31], it takes into account the direction of motion, providing information on the ability of the manipulator to perform a specific task or maximize performance in a given application. Indeed, as expressed by the TPI, it is possible to consider a generic robot path from a starting point to an end point as a sequence of straight-line segments. Hence, by evaluating the KDI for all segments, it is possible to adopt the index for a generic task.
However, in its current formulation, the KDI neither is suitable for redundant manipulators nor considers the effects of an additional joint. Therefore, the novelty of this work is to extend the KDI formulation to redundant manipulators, presenting an evaluation of the performance index for a planar redundant manipulator and a spatial one. The evaluation has been carried out using the geometric representation of the KDI index using the velocity polytope and its definition is presented in this work. This new formulation allows us to analyze the effect of the redundant joint on the performance of the manipulator as a deformation in the velocity polytope. Moreover, evaluating the optimal value of the redundant angle allows for improving the velocity of the end-effector, thus evaluating the performance index.
The paper is organized as follows: Section 2 presents the KDI and its extension to intrinsically redundant manipulators; Section 3 presents two redundant manipulators for the evaluation of the KDI. In Section 4, the evaluation of the KDI index in a horizontal plane along a direction of interest is presented along with the evaluation of the appropriate redundancy that improves performance. The experimental validation of the proposed method is presented in Section 5. Lastly, Section 6 concludes the work.

The KDI performance index for redundant manipulators
Let us consider a robot manipulator with m DOF, with its joint velocities represented by vectorq = (q 1 ,q 2 , . . . ,q m ). Givenq, it is possible to evaluate the end-effector linear and angular velocities by means of the differential kinematic equation:ẋ = J(q)q (1) whereẋ is the velocity vector in Cartesian space and J(q) is the Jacobian matrix for robot configuration q. Since the KDI index focuses on the translational velocity of the manipulator, only the translational part of J(q) will be considered. Granted that J(q) is always dependent on the robot configuration q, we will hereafter indicate the Jacobian matrix as J for simplicity. When moving along one of the principal directions of the reference system, for example, the x-axis, the speeds along the other two axes are set as null values: where J t is the n − by − m submatrix of J considering only the n translational DOFs and m is the number of actuators that define the joint space. Again, we omit the dependence of J t on q for simplicity. It is possible to generalize the approach and obtain a similar result to evaluate the translational capabilities along a generic direction of interest dir. Let us introduce a reference frame (X R , Y R , Z R ) with the x-axis X R parallel to the direction of interest dir and the other axis arbitrarily oriented. It is possible to introduce a rotation matrix R which describes the orientation of the rotated reference frame (X R , Y R , Z R ) with respect to the world reference frame. Hence, knowing that the velocity v along X R is equal to v = Rẋ, it is possible to generalize Eq. (2) as: The objective of the KDI is to evaluate the maximum translational speed v along the direction of interest (dir). Hence, its value K is defined as ref. [29]: The maximum value of v is reached when some joint motors are moving at their maximum speeds, and due to the linearity of Eq. (3) it is possible to state that the minimum number of actuators at maximum speed is m − n + 1. Since robotic manipulators usually have different actuator speeds, it is fundamental to identify which actuators are in this condition. For non-redundant manipulators (m = n), the maximum Cartesian velocity is reached when at least one actuator is at its maximum speed. Therefore, it is possible to identify the actuator p at its limit, that is, closest to its maximum velocity, considering its ratio with respect to its maximum velocity [29]: where 1 K is the maximum ratio between joint p speed and its maximum and K identifies the maximum velocity that the robot can reach in the direction of interest.
However, this approach is not suitable for redundant manipulators. Indeed, it is not possible to state that the condition of maximum speed for one of the actuators corresponds to the maximum Cartesian velocity of the robot end-effector, as proved by the Cartesian velocity polytope for a 3-DOF planar manipulator (m = 3, n = 2) in Fig. 1.
As previously described, the velocity polytope V is the projection in the Cartesian m−dimensional space of the n-dimensional hypercube Q defined in the joint space (ν-representation) as follows: where j t i is the ith column of J t corresponding to the velocity components given by the ith actuator moving at speedq i bounded between a minimum valueq i and a maximum valueq i . In the considered example, V is the 2D projection of a 3D hypercube Q. Due to projection to an inferior number of dimensions, some edges of the hypercube are projected inside the polytope, represented in Fig. 1 as dashed lines. Each edge represents the condition in which the m − 1 actuators are at their limits. However, since only the external boundaries of the polytope represent the maximum Cartesian velocity [32], these edges do not satisfy the maximum Cartesian velocity condition. Therefore, only 6 of the 8 (2 3 ) possible vertices identify the external boundaries of the polytopes, whereas 2 vertices, indicated by red circles, are "fake" vertices; therefore, it is necessary to identify these characteristic points of the polytope hull.
Starting from Eq. (7), with the two changes in variables β i =q i −q i : and It is possible to identify the polytope V in Eq. (9) as a zonotope [33], that is, the vector sum of a finite number of closed line segments in the n-dimensional space. More importantly, a zonotope is a centrally symmetric convex polytope; thus, it is easier to identify all the characteristic points that define the convex hull surrounding all the feasible Cartesian velocities. Several approaches are available to identify the characteristic points, that is, the external vertices of the polytope, such as the quick-hull [34] or hyperplane-shifting [33] methods. However, these approaches do not consider the physical constraints between the points; therefore, a different method is required from the one in ref. [35].
In fact, the proposed method starts by considering that for the ith vertex q i of Q, all actuators are moving at maximum speed, whereas along each edge connecting two vertices q i and q j , only one actuator changes its speed between the maximum and the minimum value, that is., only one component ofq i ,q j differs according to the condition:q Due to the linear transformation in Eq. (1), this condition is also applied to the corresponding vertices of the polytope. Hence, for each vertex v i of the polytope, the algorithm identifies the m − 1 points connected to it. However, for v i to be a point of the convex hull, it must be unenclosed by its m directly connected points due to the convexity of the polytope, that is, at least one plane passes through v i and divides the n-dimensional Cartesian space into two subspaces, with one of them containing all the mdirectly connected points: Unlike [35], the third constraint is strictly positive, since a "fake" vertex may lie on the same plane as others, that is, it is projected on the surface of the polytope without being a true vertex.
To explain this last point, it is necessary to study the nature of the faces of the Cartesian velocity polytope, with a particular focus on the non-square faces, for example, the hexagonal face highlighted in red in Fig. 2.
Similarly to Fig. 1, this face can be considered as the 2D projection of a 3D object, that is, a parallelepiped, where again some of the edges are projected inside the face due to the projection to an inferior number of dimensions. The projected parallelepiped is highlighted in Fig. 3, where its edges are highlighted in red, and two of the faces that make up it are colored cyan and yellow. On each face, m − 2 actuators are at their limits, in this case, 2. One of the two limiting actuators is the same for all the faces of the projected parallelepiped. Indeed, the three directions of the parallelepiped are along the directions of the components given by the other three actuators, which means that one of the actuators is at a constant speed in the entire parallelepiped, that is, at its maximum or minimum speed. This is especially important if we consider a different configuration. When the redundancy changes, the direction of the three actuator directions changes due to the different configuration. Therefore, the  projection of the parallelepiped warps, changing the shape of the resulting face, and so of the polytope. This leads to the Cartesian velocity polytope in Fig. 4, where the eight vertices of the parallelepiped are aligned along two lines. If the third constraint considered the null value, all vertices would be considered separate vertices. This configuration will be called hereafter aligned configuration. In the aligned configuration, the velocity components of the end-effector given by at least two different joints are aligned, leading to a behavior similar to a non-redundant manipulator, that is, with only n nonlinearly dependent columns of J, and therefore the polytope becomes a parallelepiped if n = 3.
Due to the selected redundancy, the two highlighted faces are now aligned: the yellow face, hereafter called Face 1, represents the condition of maximum speed for joint 1 and joint 2, while the cyan one, Face 2, represents the condition for joint 1 at its maximum speed and joint 2 at its minimum. The red area represents the intersection area between the two faces. In the intersection area, joint 1 is always at maximum speed as previously stated, whereas joint 2 should move at the minimum and maximum speed at the same time, which is not possible. Therefore, in this area, joint 2 cannot be a limiting joint. However, since this area is the intersection of Face 1 and Face 2, joint 2 could not be a limiting joint in Face 1 and Face 2. Clearly, this reasoning can be applied to all the faces composing the parallelepiped. Therefore, when two or more faces of the polytope intersect, only the actuators at the maximum speed in all the intersecting faces are actually at their maximum, leading to the definition of a macro-face uniting all the intersecting faces.
To correctly identify the faces and edges of the polytope obtained from the union of overlapped faces, an ad hoc approach has been developed. Although previous studies have observed this phenomenon for cable-driven parallel robots (CDPRs), it was not fully investigated because it corresponds to singular configurations. In fact, it is possible to observe overlapped faces in cable robots when two or more cables are collinear [35], that is, a singular configuration. In contrast, the warping of faces to lines observed before may easily happen when working with serial redundant manipulators. As an example, Fig. 4 represents the manipulator with the redundant joint set at 0. Since this configuration is more common than in CDPR, it is necessary to further investigate this phenomenon and correctly identify the limiting actuator.
After identifying the real vertices v i , the proposed approach starts by identifying all possible connections (edges) of each v i with the other real vertices v k of V using Eq. (10). This means that each edge e i,k from v i to v k is obtained by searching the real vertices considering a different actuator limit each time. Given the set of edges e i,k that connects v i to the different vertices v k , the algorithm picks the different combinations of two edges e i,j and e i,w and searches if there are m − 2 actuator limits in common, identifying the actuator limits for the z faces f r,i,z containing the vertex i. Then, to identify the vertices that make up each face, the algorithm searches for all vertices v k with the same m − 2 actuators at their limits. Then, this process is repeated until all z f r,i,z faces of the set F r,i for vertex v i are evaluated.
However, not all faces containing v i can be evaluated in this way, because the exclusion of the "fake" vertices removed some edges. Hence, after the set of real faces F r,i has been obtained, the algorithm needs to identify the set of "merged" faces F f ,i , that is, those faces composed of overlapped faces containing vertex v i . The algorithm first identifies for each vertex v i the actuator limits m u,i that are not already considered by the different faces F r,i . Given the different m u,i , the vertices of each face f f ,i,j are obtained by identifying all vertices v k with the same unconsidered actuators m u,i at their maximum (or minimum) limit, grouping them to generate the face f f ,i,j . In this way, it is possible to identify all the faces of the polytope (both "real" and "merged") and, as a consequence, all the edges of the polytope.
Lastly, the value of the KDI index K is evaluated as the intersection between the polytope and the direction vector s of dir in the Cartesian space. If J t has been rotated by a rotation matrix R as in Eq. (3), the value K is equal to the intersection between the rotated polytope V R and the x-axis. To identify the intersection, a ray-triangle intersection approach has been adopted [36]. It should be noted that the proposed graphical method can also be adopted to evaluate the intersection between the non-rotated polytope and a generic direction dir; in this case, the value K is equal to the norm of the intersection.

Kinematic parameters for the investigated manipulators
To test the proposed approach for the KDI index, two intrinsically redundant kinematic structures were considered, that is, a 4-DOF planar manipulator and a 7-DOF articulated one with a spherical shoulder and wrist. Since the index is used for the translation velocity, the orientation of the end-effector was not considered. Therefore, we considered the velocities for both structures at the wrist center point, that is, the origin O 4 of the fourth actuator of the planar manipulator and the origin of the spherical wrist for the articulated one. Lastly, for the sake of comparison, the performance of the articulated robot will be investigated in a horizontal plane; however, considering different planes does not affect the validity of the proposed method.

Planar manipulator
As described above, the velocities were considered at the origin O 4 , thus, depending only on the first three joints. For this reason, Fig. 5 represents the first three links depicted in black and their respective frames placed at the points O 1 , O 2 , and O 3 represented in blue; the absolute frame is represented in red.
To obtain the positions of the link frames with respect to the origin frame, a direct kinematic approach could be adopted given the simplicity of the kinematic structure. However, for generality, the complete Denavit-Hartenberg table is presented in Table I to highlight the parameters used to evaluate the Jacobian matrix of the manipulator.
The lengths of the links L 1 , L 2 , and L 3 are 350, 250, and 200 mm, respectively, and the maximum angular speed of each joint was set at 100 degrees/s. The Jacobian matrix for the planar manipulator can be geometrically calculated as follows:  where z i is the z-axis of the ith link frame. Given the rank of the matrix, the polytope obtained from Eq. (3) will be a polygon, as seen in Fig. 6. Figure 6(a) presents the general scenario, where two vertices of the hypercube Q are internal fake vertices, giving a hexagonal polygon V, while Fig. 6(b) presents a particular case where the effects of actuator 1 (red circle) and of actuator 3 (black circle) overlap, that is, vectors z 1 × (O 4 − O 1 ) and z 3 × (O 4 − O 3 ) are aligned, as represented by the red and black arrows, respectively. In this scenario, four of the vertices of Q are projected onto the edges of the polygon, leading to a rectangular shape given by the remaining four vertices. We call this particular configuration aligned configuration, as seen in Section 2. Similar to a singular configuration, two columns of the Jacobian matrix are linearly dependent. However, differently from singular configurations, the Jacobian matrix is not rank-deficient, nor is the mobility of the end-effector reduced [37][38][39].
The shape of the polytope depends on the redundancy parameter ψ, which is defined as the angle between link 3 and the x-axis. This definition allows us to easily calculate ψ as: The nomenclature ψ has been chosen to ensure consistency between manipulators.

Articulated manipulator
Similarly to the planar manipulator, only the horizontal velocity of the wrist center point O F has been taken into account, which depends only on the first four joints due to the nature of the spherical wrist.  Therefore, Fig. 7 shows only the first four links in black with their respective reference frame in blue (indicating the z axis for each) and in red the absolute reference frame centered in O 0 . The complete Denavit-Hartenberg table is presented in Table II, where the kinematic parameters of the articulated manipulator are defined. The lengths of the links L 1 , L 3 , L 5 , and L 7 are chosen with respect to the KUKA LBR iiwa 14R820 robot [40], which is equal to 360, 420, 400, and 126 mm, respectively.
From these parameters, it is possible to calculate the geometric Jacobian matrix J A for each position of O F in the Cartesian workspace as follows: Since the Jacobian matrix has rank 3, the polytope obtained from Eq. (3) will be a polyhedron, as seen in Fig. 8, where again the general polytope and a particular one (aligned configuration, leading to a parallelepiped) are presented.
The different shapes of the polyhedron are given by the redundancy parameter, which is defined as the swivel angle ψ [41] of the elbow around the shoulder-wrist axis and characterizes the direction of the third column J A3 of J A , represented by the black arrow in Fig. 8. It is possible to evaluate ψ given the Jacobian matrix considering the geometry of the polyhedron. In fact, for different values of ψ, J A3 rotates around O F in a plane defined by the first two columns J A1 and J A2 of J A . This is proved by the mixed product between the three vectors: which is null due to the definition of J A1 , which means that they are coplanar for every value of ψ. The rotation angle between J A1 and J A3 is equal to ψ: J A1 can be seen as the normal vector of the plane defined between the shoulder-wrist axis (O F -O 1 ) and the vertical axis z 1 ; similarly, J A3 can be seen as the normal vector of the plane defined between the shoulder-wrist axis (O F -O 1 ) and the shoulder-elbow axis (O 3 -O 1 ), whose direction is given by the unit vector z 3 . This is verified as the normal n 3 of the latter plane which is defined as follows: Considering only the product between where k is the magnitude of the vector according to the definition of the unit vector z 3 . Hence, (17) according to the definition of J A3 . Therefore, J A3 is directed as the normal vector of the plane containing the points of the shoulder, wrist, and elbow. According to the definition of the swivel, ψ is the dihedral angle between these two planes, which can be evaluated as the angle between their normal vectors [42], proving our statement. Hence, ψ is evaluated as follows:

Performance investigation in the workspace
Given the polytope of the manipulator, it is possible to evaluate its performance throughout its workspace for any direction of motion dir by evaluating the intersection between the polytope and s. Hence, in this work we will focus on: • presenting the effect of the redundant joint on the performance of the manipulator; • evaluating the optimal value of the redundancy parameter to maximize the end-effector velocity along dir. Lastly, we will compare the KDI with a traditional performance index (manipulability) to show the ability of the KDI index to investigate performance both at a point and throughout the workspace and to confirm the need to consider the direction of interest when evaluating the performance of a manipulator.

Investigation points
We considered for both manipulators a subset of the reachable workspace constituted by all the positions reachable by any value of ψ. The investigation points of the planar manipulator are a grid of points 50 mm distant from each other, obtaining the workspace in Fig. 9(a). Thicker grids of points were studied, showing that the density of points does not affect the overall trend.
As stated previously, the articulated manipulator was tested in a horizontal plane. To increase the number of investigation points, the horizontal plane that passes through the shoulder was considered, as it is the one with the maximum reach. The set of points was defined by seven points along any radial direction with an angular step of 10 degrees, as seen in Fig. 9(b).

Performance investigation
To highlight the need to consider the effect of the redundant joint in the KDI formulation, a comparison with the KDI for the manipulator with the redundant joint fixed is presented. For the planar manipulator, we considered the redundant joint as the additional joint with respect to the non-redundant planar architecture. As two possible joints can be considered, that is, joint 2 and joint 3 (joint 1 is omitted as it only reduces the workspace), the two solutions are presented. The redundant joint of the spatial manipulator is defined as the third joint since it is the additional joint with respect to the non-redundant anthropomorphic architecture.
For the planar manipulator, the KDI index was calculated along the direction of the x-axis and for the spatial manipulator a rotation of 45 • around the z-axis was considered, that is, we considered a rotation matrix R = R z (45 • ).
To highlight the effects of the redundant joint on the performance without focusing on the performance of the specific robot, the KDI was normalized with respect to the maximum value obtained considering the additional joint. Figure 10 compares the KDI index for the planar manipulator with a fixed redundant joint (θ r = 0)) and with active redundancy (Fig. 10(c)). Figure 10(a) considers θ r = θ 3 and Fig. 10(b) considers θ r = θ 2 . The yellow areas indicate the regions where the robots achieved the maximum value of the KDI, while the blue areas indicate the minimum performance. By adopting an optimal value ψ opt of the redundancy for the robot configuration, it is possible to improve the performance of the planar manipulator and observe an increase in the performance of the robots. This increase is at least about 30%, which is also due to the speed ratio between the redundant joint and the others. Moreover, considering a different redundant joint for the planar manipulator does not change the overall results, showing a similar increase for both Fig. 10(a) and 10(b). Figure 11 compares the KDI of the spatial manipulator with fixed redundancy, that is, θ r = 0, and with active redundancy. Comparing Fig. 11(a) and 11(b), it is possible to observe again an increase in the performance of the manipulator up to 36%.
However, the increase is also significant for other joint velocities, highlighting the importance of considering redundancy when investigating robot performance. This increase is obtained by reducing the motion of the limiting joint for the same path, thus reducing the motion time and increasing the maximum Cartesian speed, as seen in Fig. 12, where an example is presented for the spatial manipulator. Indeed, the change in configuration due to the different redundant angles leads to different joint positions, and therefore to a different motion for the joints. However, ψ should be properly evaluated; otherwise, not only is the beneficial effect of the redundant joint on the performance index decreased, but it may also decrease performance compared to non-redundant solutions. Therefore, it is necessary to evaluate the proper value of ψ.
To show the need to take into account the direction of interest when evaluating the performance of a manipulator, we compared the KDI index with a traditional performance index. We considered the manipulability index since it is well-known and common.
The manipulability index μ in its generic form is defined as follows: and which is suitable for redundant manipulators. To avoid the scale problem mentioned in the introduction and to properly compare with the KDI index, we considered only the translational part of the Jacobian matrix J; therefore, the adopted definition of μ is as follows:

Figure 13. Manipulability index for the planar and articulated manipulators.
Given that the indices measure the ability to move along a certain direction in two different ways, we normalized their values in the workspace with respect to the maximum value reached. Figure 13 presents the manipulability index for the considered manipulators. The yellow areas indicate the regions where the robots achieved the best performance, while the blue areas indicate the minimum performance. As can be seen, the maximum value of the KDI in Figs. 11(b) and 10(c) does not correspond to the maximum value of μ. This difference is due to the ability of the KDI to consider the direction of motion, showing that the real performance of the manipulators moving along the desired direction is much lower than the one estimated by the manipulability index.

Optimal redundancy
When moving a robot along a direction dir, it is desirable that the component J i of each joint i to the Cartesian velocity is aligned to the direction vector s, which is usually not possible. However, for a redundant manipulator, it is possible to change the configuration of the manipulator to align its component J r with s, effectively improving the speed of the manipulator. An example is shown in Fig. 14, where the polytope for the spatial manipulator is presented. As indicated previously for the spatial manipulator, we will refer to the third joint as the redundant joint, as indicated by the manufacturer and with respect to the traditional articulated architecture. As seen in Fig. 14(b), by aligning the velocity component of the redundant joint, that is, J 3 in black, with s (identified by the blue dashed line), it is possible to improve the performance of the manipulator. This is obtained by rotating J 3 around O F in a plane defined by J 1 and J 2 , as previously described, of an angle ψ which is evaluated by substituting s into J A3 in Eq. (18). A similar approach can be applied to the planar manipulator, where ψ should be such that the third link is orthogonal to dir, that is, ψ = acos(s, x) + 90 • , where x is the x-axis.
Therefore, for the considered dir, the redundancy for the planar manipulator is set to ψ = ±90 • depending on the robot configuration, whereas, for the spatial manipulator, it is set to ψ = 45 • considering an upper elbow configuration.

Experimental results
To verify the proposed approach, an experimental investigation has been carried out with a KUKA LBR iiwa 14R820 robot, presented in Fig. 15, in the Robotics and Automation Laboratory at the Department of Management and Engineering of the University of Padova. The experimental investigation requires  measuring a physical quantity related to speed. For simplicity, we focused on the motion time for each movement, which was measured by the robot controller. In fact, an internal timer was implemented in the robot controller to measure the duration of each movement. The measured time, along with other variables, such as the robot joint position, is sent to a computer by means of a TCP/IP socket. Therefore, no other devices are required for the experiment, except for the robot. The same set of points defined in the previous section and presented in Fig. 9(b) was adopted to compare the simulation with the experimental results.
To properly evaluate the maximum speed reached at each point, it is necessary to consider a certain time for the robot to accelerate. Therefore, a back-and-forth movement with a length of 80 mm in the direction of interest was repeated six times and was defined so that the investigated point coincided with the center of the movement, that is, where the maximum speed of the robot is reached. To ensure that the redundant joint reached the maximum speed around the optimal joint angle evaluated for that point, a suitable motion θ r of the redundant joint had to be defined. In fact, if the motion of the redundant  joint is too short, the redundant joint may not reach its maximum speed, thus limiting its advantageous effect. On the other hand, if θ r is too long, the redundant joint limits the velocity of the end-effector, reducing the speed of the other joints and increasing the motion time. This is shown in Fig. 16, where the measured duration of a generic robot motion is compared for different θ r , clearly identifying the presence of an optimum.
To identify the optimal value of θ r , an approximate approach was adopted. Taking into account the point-to-point motion of the robot in the joint space, the path of the end-effector can be seen as the sum of the contributions of the m − 1 joints and of the redundant joint for the principle of superposition of effects. Fig. 17 shows an example of a spatial manipulator with a motion along the x-axis, which features joint 1 as the only moving joint (without active redundancy), and which is therefore represented as the limiting joint. The green dotted line is the motion of the limiting joint and the blue dotted line is the motion of the redundant joint. It is possible to approximate the distance D between the two end points of the robot path, represented by the blue line, as the sum of the chords defined by the arches (red in Fig. 17). Therefore, it is possible to formulate the following: where θ i is the angular motion of the ith joint, R i is the distance between the end-effector and the ith joint, and R r is the distance between the end-effector and the redundant joint. Given the data of the KUKA LBR iiwa 14R820, the approximation presented leads to an error between the sum of the chords and D of 0.1 mm for a value of θ r between 1 • and 33 • , which is deemed acceptable in the proposed work. For both the limiting joint and the redundant one to be at their maximum speed, it is necessary that both their motions are related by their speed ratio τ : Lastly, by substituting Eq. (22) into Eq. (21), the following is obtained: By numerically solving (23), it is possible to assess the value of θ r that constrains both the limiting joint and the redundant one to be at their maximum speed, improving the performance of the system. The Newton-Raphson approach was adopted, which converges before five iterations with a tolerance of 10 −5 . Lastly, it should be noted that the results obtained from the approximated approach are compatible with those obtained by solving an optimization problem that searches the optimal θ r .
The robot motion time was acquired for each motion using the internal timer of the robot, and the reciprocal value was considered to obtain a value comparable to the KDI. The results have been normalized with respect to the maximum value reached with active redundancy, in order to highlight the regions of minimum time without focusing on the performance of this specific robot. The comparison has been carried out for both the tests taken without using the redundant joint, that is, with a fixed redundancy angle set to 0, and with active redundancy, that is, moving the redundant joint around the optimal joint angle. The results are presented in Fig. 18, where again the yellow areas indicate the regions where the robot achieves its maximum performance and the blue areas are the regions of minimum performance. Compared to Fig. 11(a) and 11(b), it is observable that the KDI values match the robot's behavior, correctly identifying the region of the best performance and the trend of the performance. Therefore, the KDI can be adopted to predict both the regions in which the robot can achieve its maximum speed and with which redundant angle ψ and motion θ r .

Conclusions
In this work, a kinematic index, that is, the KDI, is extended to redundant manipulators. Indeed, the previous formulation of the index could not be easily applied to redundant manipulators, and a new approach is proposed. In this work, the importance of considering the redundancy is identified when studying the performance of manipulators, showing that the increase in performance is significant. A method is proposed to evaluate the redundancy value ψ that achieves maximum performance. The proposed methodology is then applied to a 4-DOF planar manipulator and a 7-DOF spatial one.
Lastly, an experimental test was carried out with a redundant spatial manipulator, demonstrating the effectiveness of the proposed methodology.
The proposed formulation could allow one to correctly plan the installation of redundant manipulators, especially collaborative robots, defining areas of lower and higher performance, and distinguishing between collaborative and non-collaborative zones.
Future works will focus on the development of a dynamic index based on a similar methodology, in order to obtain a complete description of the manipulator. Moreover, the KDI index will be extended to analyze the performance of serial manipulators along a generic path which could represent any generic industrial application.