Using results on the topology of moduli space of polygons [Jaggi, 92; Kapovich and Millson, 94], it can be shown that for a planar robot arm with @math segments there are some values of the base-length, @math , at which the configuration space of the constrained arm (arm with its end effector fixed) has two disconnected components, while at other values the constrained configuration space has one connected component. We first review some of these known results. Then the main design problem addressed in this paper is the construction of pairs of continuous inverse kinematics for arbitrary robot arms, with the property that the two inverse kinematics agree when the constrained configuration space has a single connected component, but they give distinct configurations (one in each connected component) when the configuration space of the constrained arm has two components. This design is made possible by a fundamental theoretical contribution in this paper -- a classification of configuration spaces of robot arms such that the type of path that the system (robot arm) takes through certain critical values of the forward kinematics function is completely determined by the class to which the configuration space of the arm belongs. This classification result makes the aforesaid design problem tractable, making it sufficient to design a pair of inverse kinematics for each class of configuration spaces (three of them in total). We discuss the motivation for this work, which comes from a more extensive problem of motion planning for the end effector of a robot arm requiring us to continuously sample one configuration from each connected component of the constrained configuration spaces. We demonstrate the low complexity of the presented algorithm through a Javascript + HTML5 based implementation available at this http URL
The IK algorithm that we propose and use in this paper is an analytically computable one of @math complexity ( @math being the number of segments of the arm), akin to the triangulation approach of @cite_11 . However our additional requirement of identifying and passing through certain critical points in the configuration space, as will be described in the next point, has necessitated a more careful and formal construction of the IK algorithm. In particular, our algorithm has a recursive or incremental flavor to it, wherein we construct the inverse kinematics by breaking up the arm into smaller components.
@cite_11
2159911618
Inverse Kinematics is used in computer graphics and robotics to control the posture of an articulated body. We introduce a new method utilising the law of cosines, which quickly determines the joint angles of a kinematic chain when given a target. Our method incurs a lower computational and rotational cost than Cyclic-Coordinate Descent (CCD), yet is also guaranteed to find a solution if one is available. Additionally it moves the upper joints of any kinematic chain first, thus ensuring a closer simulation of natural movement than CCD, which tends to overemphasise the movement of joints closer to the end-eector of the kinematic chain.