Modular Robotics Systems



The kinematic performance of a conventional robotic mechanism is determined by its kinematics parameters and its structural topology. For a given set of tasks, the robot designer chooses these factors during the initial design phase so as to satisfy the given task requirements. However, it is difficult or impossible to design a single robot which can meet all task requirements in some applications. For example, consider the robotic construction of a radio antenna on the moon's surface. The robotic system must be able to excavate soil, transport material, assemble parts, inspect constructed assemblies, etc. It is difficult to design a single robot which is simultaneously strong enough, nimble enough, and accurate enough for all of these tasks. In this kind of situation it might be advantageous to deploy a modular robotic system which can be reassembled into different configurations which are individually well suited to the diverse task requirements. By a modular robotic system we mean one in which various subassemblies, at the level of links and joints, can be easily separated and reassembled into different configurations.

In the deployment of a modular system, one can imagine the module rearrangement and reassembly process to occur in two ways. First, a human operator can physically rearrange the modules, and human intuition can be used to determine the best system configuration for a given task. However, for physically remote applications, such as robotic lunar construction, the modular system must be physically able to reconfigure itself. More importantly, there must be a correspondingly automated way in which to determine a sufficient or optimal arrangement of the modules to satisfy task criteria. Our work has been devoted to this latter subject, which has not yet been well addressed in the literature.

To automatically determine a sufficient or optimal arrangement of the system modules for a given task, one might try a ``generate-and-test'' procedure in which all possible assembly configurations of the modular set are generated, and then each assembly configuration is tested against the task requirements to determine its sufficiency or optimality. However, due to symmetries in module geometry and robot structural topology, many different assembly configurations will have the same kinematic properties. Thus, a brute force enumeration of all module assemblies will result in the generation of many functionally identical candidate structures. This is undesirable from a computational complexity point of view, as it leads to many unnecessary test procedures.

We have developed a systematic methodology to enumerate the unique, or non-isomorphic, assembly configurations of a set of modules. This method is based on the symmetry properties of the modules and a graph representation of the robot's structural topology. We introduce an Assembly Incidence Matrix (AIM) to represent a robot assembly configuration and its associated kinematic graph. Equivalence relationships are defined on the AIMs using graph isomorphisms and the symmetric rotation group of individual link modules. AIMs in the same equivalence class represent isomorphic robots. This method is also useful when designing a modular robotic system, as it can answer the important question: ``what is the set of uniquely different robots that I can construct from a given set of modules?''

Students that work in this area:

Pictures of Robots Built in a Modular Style

Selected Papers