ABSTRACT VIEW
A SOFTWARE PACKAGE TO LEARN GLOBAL REDUNDANCY RESOLUTION OF REDUNDANT ROBOTS
M. Fabregat-Jaén, P. Mollá-Santamaría, E. González-Amorós, A. Peidró, O. Reinoso
Miguel Hernández University (SPAIN)
Kinematically redundant robot manipulators have more degrees of freedom than the dimension of the task they must perform. Having more degrees of freedom than those strictly required to complete the desired task gives redundant manipulators some versatility to leverage the excess of degrees of freedom to achieve other constraints in addition to their main task, such as avoidance of obstacles or singularities, or optimization of dynamic performance.

The first consequence of having more degrees of freedom than those required to achieve the desired task is that the inverse kinematic problem, which consists in computing the joint displacements for a given task, admits infinitely many different solutions. However, when the robot operates, it can adopt only a single solution, so the problem of picking this single solution from the infinitude of solutions is called redundancy resolution. Traditionally, redundancy resolution has been solved at velocity level, where the joint rates that yield a desired task velocity are solved from the velocity equation, which is a linear underdetermined system of equations that is solved by means of generalized inverses. Numerical integration of the solved joint rates gives a time history of the joint displacements that fulfills the desired task. Due to its simplicity and effectiveness, this method has been widely used during the last decades, and it is indeed the most widely taught one in robotics courses. However, it suffers from limitations such as local optimality or singularities.

As an alternative to local velocity-based methods, there exist some position-based methods (i.e., methods that directly operate with position coordinates rather than their velocities) that allow for redundancy resolution from a global perspective, alleviating some limitations of velocity-based methods. Position-based methods rely on the notion of self-motion manifolds, which are the manifolds that contain the infinitude of solutions for the joint displacements that satisfy a given task. When the desired task evolves over time, self-motion manifolds transform over time and span what are known as self-motion domains, which are higher-dimensional manifolds that contain all possible trajectories that satisfy the desired task. These domains, however, are difficult to obtain and visualize, which limits the application of these global position-based methods, making it also difficult to teach these methods in robotics courses.

To ease the dissemination and teaching of global position-based methods in robotics courses, this paper presents a software package for Python that obtains and represents graphically self-motion domains for kinematically redundant robot manipulators. The proposed package is aimed at educational and research purposes and allows students to specify a desired task over time and observe the corresponding self-motion domains of the robot. Also, the package segments the self-motion domains into c-bundles, which are parts of these domains where self-motion manifolds have the same topology. A connectivity graph of c-bundles is also represented, which shows all possible different branched paths to fulfill the task. The developed package makes it easier to teach and learn concepts related to global redundancy resolution and motion planning of kinematically redundant manipulators, as well as understand their links to other methods such as feasibility maps.

Keywords: Software, package, educational, teach, robot, redundant.