modular robots - link.springer.com · modular robots i-ming chen* school of mechanical and...

35
Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularity is an important design concept in engineering to cope with complex systems. For robots used in the industrial environment, the complexity resides in the robot system as well as the tasks given to the robot. This chapter presents an up-to-date development in modular recongurable robots for the industry based on modular design principles. The scopes of the chapter cover the denition and classications of modular robots; past and present research efforts in modular recongurable robots for the industry; basic modular design method including mechanical and interface issues; modular robot representation schemes for classications and modeling; automatic model-generation techniques, kinematics, dynamics, and calibration; task-based conguration opti- mization; modular robot software; and a demonstration workcell based on recongurable modular robot for adaptability. In the concluding section, future perspective of modular robots for industrial applications is discussed. Introduction Modularity in engineering design refers to a compartmentalization of functional elements. In a complex system, modularity helps reducing the complexity by dividing the system into pieces of specic functions in order to understand the relationships and to facilitate interaction among the basic elements. Modularity also allows the replacing of elements either for repair or upgrading new functionality. The alternative to a modular approach is an integrated approach where systems are designed as whole. While integrated approaches tend not to be as easy to repair, upgrade, or recongure, they have fewer constraints on element design and, therefore, can be made optimal, for example, low cost and high performance, etc. A modular robot refers to a robotic system equipped with elements and modules that possess the necessary basic functions of robots that can be put together and recongured as an integrated system to carry out robotic tasks. The rationale for pursuing modularity in robot design is to contain the complexity of designing a robot for tasks with high sophistication and variety by offering recom- bination and reorganization of standardized robotic modules while keeping the maintenance of the robotic system simple and easy. As robotic modules possess more and more electronic and computational elements with very short life cycle, upgradability of the functional robot units also becomes a critical issue to be addressed in modern robot designs. There are two schools of thought on the modularity of a robot system: one is recongurable modular manipulators with a nite set of modules of different functions and the other is self- recongurable modular robots with uniform type of modules. A recongurable modular manipulator *Email: [email protected] Handbook of Manufacturing Engineering and Technology DOI 10.1007/978-1-4471-4976-7_100-1 # Springer-Verlag London 2014 Page 1 of 35

Upload: others

Post on 10-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Modular Robots

I-Ming Chen*School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore

Abstract

Modularity is an important design concept in engineering to cope with complex systems. For robotsused in the industrial environment, the complexity resides in the robot system as well as the tasksgiven to the robot. This chapter presents an up-to-date development in modular reconfigurablerobots for the industry based on modular design principles. The scopes of the chapter cover thedefinition and classifications of modular robots; past and present research efforts in modularreconfigurable robots for the industry; basic modular design method including mechanical andinterface issues; modular robot representation schemes for classifications and modeling; automaticmodel-generation techniques, kinematics, dynamics, and calibration; task-based configuration opti-mization; modular robot software; and a demonstration workcell based on reconfigurable modularrobot for adaptability. In the concluding section, future perspective of modular robots for industrialapplications is discussed.

Introduction

Modularity in engineering design refers to a compartmentalization of functional elements. Ina complex system, modularity helps reducing the complexity by dividing the system into piecesof specific functions in order to understand the relationships and to facilitate interaction among thebasic elements. Modularity also allows the replacing of elements either for repair or upgrading newfunctionality. The alternative to a modular approach is an integrated approach where systems aredesigned as whole. While integrated approaches tend not to be as easy to repair, upgrade, orreconfigure, they have fewer constraints on element design and, therefore, can be made optimal,for example, low cost and high performance, etc.

A modular robot refers to a robotic system equipped with elements and modules that possess thenecessary basic functions of robots that can be put together and reconfigured as an integrated systemto carry out robotic tasks. The rationale for pursuing modularity in robot design is to contain thecomplexity of designing a robot for tasks with high sophistication and variety by offering recom-bination and reorganization of standardized robotic modules while keeping the maintenance of therobotic system simple and easy. As robotic modules possess more and more electronic andcomputational elements with very short life cycle, upgradability of the functional robot units alsobecomes a critical issue to be addressed in modern robot designs.

There are two schools of thought on the modularity of a robot system: one is reconfigurablemodular manipulators with a finite set of modules of different functions and the other is self-reconfigurable modular robots with uniform type of modules.A reconfigurable modular manipulator

*Email: [email protected]

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 1 of 35

Page 2: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

is a modularly designed robotic system, which adopts a common slot- and bus-modularity designapproach (Ulrich 1995) for its internal structure and architecture, not the external configuration.Such a robot may have a unified and integrated configuration that cannot be changed from theoutside. A self-reconfigurable modular robot is a system that adopts a bus- and sectional-modularitydesign approach (Ulrich 1995) for both internal structure and external configurations. The users canreconfigure the compartmentalization and interchange functional modules like toy building blocks.

The reconfigurable modular manipulator type of robotic systems were natural evolution ofindustrial robot manipulators that consist of a number of specific functional modules, such asactuator modules, link modules, end-effector modules. Subsequently, robots with the serial andbranching topology, such as humanoid robots, legged robots, and mobile manipulators, adoptsimilar approach for modularity, as these functional modules indeed form the basis of a roboticsystem. The self-reconfigurable modular robots grew out of the concept of self-evolution and self-configuration of biological cells with identical units. Such a robot normally consists of a largenumber of identical mechatronic units that possess actuation, connection, communication, andcomputing capability that can be assembled together in any arbitrary form and configuration byitself. Although the two types of modular robots are originated from different fundamental thoughts,the goals to provide a large number of possible robot configurations for different tasks with the sameset of basic robot modules are the same.

In this chapter, the focus is on the design, modeling, and implementation of reconfigurablemodular manipulators as the concept of such modular robot systems has been accepted by theindustry in creating intelligent and adaptive manufacturing systems for the fluidic and fast-changingbusiness and manufacturing environments.

Past Efforts in Reconfigurable Modular Manipulators

In the modularization of industrial robots, the granularity of the components is usually based on theirbasic functions, i.e., motion actuation and tooling. Thus, the design of modules is highly differen-tiated into actuator modules, passive joint modules, and tooling modules, etc. Several prototypemodular robotic systems have been built and demonstrated, including the Reconfigurable ModularManipulator System (RMMS) (Paredis et al. 1996), several generations of the cellular roboticsystem (CEBOT) (Fukuda and Nakagawa 1988), and modular manipulator systems developed bythe University of Toronto (Cohen et al. 1992), the University of Stuttgart (Wurst 1986), theUniversity of Texas at Austin (Tesar and Butler 1989), Toshiba Corp. (Matsumaru 1995), morerecent iMobot (Barobo 2013), and Johns Hopkins University (Kutzer et al. 2010). Basically, thesesystems have serial-typed (or open-chain) geometry with large working envelopes. These serial-typed modular robots are suitable for assembly, trajectory tracking, welding, and hazardous materialhandling. Parallel modular robots are also developed for light-machining tasks (Yang et al. 2001). Asindicated in (Yang et al. 2001), modular design can reduce the development cycle of the parallelrobot significantly. Furthermore, it allows a trial-and-error approach to construct a parallel robot thatis impossible with the integrated design approach.

Applications of modular systems have been proposed in rapid deployable robot systems forhazardous material handling (Paredis and Khosla 1995), in space-stationed autonomous systems(Ambrose 1995), and in manufacturing systems (Chen 2000, 2001). There are a few modularindustrial robot arms commercially available such as the Universal Robots (Universal 2013), theSchunk Powerball Robot (Schunk Modular 2013), the highly dexterous WAM Arm from BarrettTechnology (Barrett 2013), the JACO robot arm developed by Kinova (Kinova Robotics-The JACO

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 2 of 35

Page 3: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

robot arm 2013), and the Robotnik Modular Robot Arm (Robotnik 2013). The modular robotconcept also proliferated in the hobby and educational robot sectors around 2000 by introducingwell-packaged self-contained servo motor modules into inexpensive robotic devices, such asRobotis (Korea) and Kondo (Japan), as well as Lego (Denmark) and other toy companies makingeducational robots.

Mobile robots with legs, wheels, and tracks also move into modularity to configure for differenttask requirements as used in disaster relief, rescue, and surveillance purposes. Two tracked modularmobile robots designed with multiple track segments (Wang et al. 2010) and reconfigurable tracksallowing serial and parallel connections (Li et al. 2009) are demonstrated. The work in (Moubarakand Ben-Tzvi 2012) contains an in-depth review of the development in modular mobile robots.

Modular Robot Design

Module Design IssuesAmodular robot would consist of the two main features founded in a modular product: (1) a one-to-one mapping from functional elements to the physical components of the product and (2) decoupledinterfaces between the components of different modules (Ulrich 1995). For modular manipulators,the essential components are the base, regional, and orienting mechanisms composed by actuatormodules and link modules of different dimensions and geometry and the end-effector module. Forlegged and wheeled mobile robotic systems, the motion generation mechanism modules areessential.

The actuator modules normally adopts DC or AC motors as 1-DOF “rotate” or “pivot” jointmodule with compact high reduction ratio transmission mechanisms (Paredis et al. 1996; Cohenet al. 1992; Tesar and Butler 1989; Matsumaru 1995; Chen 2001). Some modular systems also adopt1-DOF linear modules for large motion envelope (Cohen et al. 1992; Chen 2001) and 2-DOF jointmodules for compact dexterous motion generation (Schunk Modular 2013). The actuator modulesare designed with similar geometry but of different dimensions and power ratings for differentapplication requirements.

The link modules connecting units in between the actuators function as reachable workspaceextenders. Some systems adopt a standard fixed-dimension connection module (Fukuda andNakagawa 1988; Cohen et al. 1992; Tesar and Butler 1989), and some are variable dimensionmodules that can be customarily fabricated due to additional design constraints and requirements(Chen 2001). In some system (Paredis et al. 1996), the link module becomes part of the actuatormodules so that the module acts as an actuator as well as the connecting structure.

Interface Design IssuesThe mechanical connecting interface in between the modules in a modular manipulator needs tomeet the basic requirements of (1) stiffness, (2) fast reconfiguration, and (3) interchangeability.Thus, the design of the mechanical connection or docking mechanism for the robot modulesbecomes a critical issue. In a fully or semi-supervised robotic system, like all the modular manip-ulator systems (Paredis et al. 1996; Fukuda and Nakagawa 1988; Cohen et al. 1992; Wurst 1986;Tesar and Butler 1989; Matsumaru 1995; Yang et al. 2001; Chen 2001), the connecting mechanismis designed to be manually operated for reliability and safety reasons. In a fully autonomous system,the connecting mechanism needs to be designed with an extra actuator and the locking mechanismfor carrying out the connection automatically. This is the case for most of the self-reconfigurablemodular robots.

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 3 of 35

Page 4: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

In order to meet the requirement of commonality on control and power with changing robotconfigurations, the electronic and communication interface for the modular system normally adoptscommunication network architecture with plug-and-play capability similar to Local Area Network(LAN). There are a number of existing industrial standard network protocols for real-time robotcontrol suitable for such applications, like CAN-bus and IEEE 1394. The progressive developmentof industrial automation protocols will facilitate the implementation of modular robotcommunications.

Modular Robot Representation

A graph-based technique, termed the kinematic graph, is introduced to represent the module-assembly sequence and robot geometry. In this graph, a node represents a connected joint moduleand an edge represents a connected link module. Modules attached to or detached from the robot canbe indicated by adding or removing nodes or edges from the graph. The realization of this graph isthrough an Assembly Incidence Matrix (AIM) (Chen 1994; Chen and Burdick 1998). A modularrobot can be conceived according to the given AIM without knowing the other parameters, such asjoint angles and initial positions. Here, we assume the generic structure of a modular robot is branchtype. The serial-type modular robot is a special case of the branch-type structure.

Module RepresentationTo make the automatic model-generation algorithms work on a variety of module components, weintroduce a conceptual set of modules whose features are extracted from those of realimplementations. The modular systems developed to date have several common mechanical andstructural features: (1) only 1-DOF revolute and 1-DOF prismatic joints, (2) symmetric linkgeometries for interchangeability, and (3) multiple connection ports on a link.

Joint ModulesA modular robot joint module is an “active” joint, which allows the generation of a prescribedmotion between connected links. Two types of joint modules, the revolute joints (rotary motion) andthe prismatic joints (linear or translational motion), are considered. Rotary and linear actuators mustreside in the modules to produce the required motions and maintain the modularity of the system.Multi-DOFmotions can be synthesized with several 1-DOF joints. Joint modules are attached to linkmodules through standardized connecting interfaces for mechanical, power, and controlconnections.

Link ModulesThe place on a link module where the joint is connected is called a connecting port. Without loss ofgenerality, we assume that a link module is capable of multiple joint connections, and the linkmodule has symmetrical geometry. Such a design allows modules to be attached in variousorientations and the robot geometry to be altered by simple reassembling. The modular robotcomponents developed in our university are shown in Fig. 1. This design follows the building-block principle whereby modules can be stacked together in various orientations through connectingpoints on all six faces of the cubes.

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 4 of 35

Page 5: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Assembly Incidence Matrix

Definition 1 (Graph). A graph G ¼ V; Eð Þ consists of a vertex set, V ¼ v0; � � �; vnf g , and anedge set, E ¼ {e0, . . ., em}, such that every edge in E is associated with a pair of vertices, i.e.,ej ¼ {vj, . . ., vk}.In mechanism design theory, a kinematic chain of links and joints is often represented by a graph,termed a kinematic graph (Dobrjanskyj and Freudenstein 1967), in which vertices represent thelinks and edges represent the joints. Using this graph representation, we are able to categorize theunderlying structure (or geometry) of a linkage mechanism and apply the result from the graphtheory to enumerate and classify linkage mechanisms. A robot manipulator is also a kinematic chain,thus, admitting a kinematic graph representation. For example, an 8-module 7-DOF branch-typemodular robot and its kinematic graphs are shown in Fig. 2a, b (in the digraph, the arrow on eachedges point from the parent vertex to the children vertex). It is also known that a graph can berepresented numerically as a vertex-edge incidence matrix in which the entries contain only 0s and1s (Deo 1974). Entry (i, j) is equal to 1 if edge ej is incident on vertex vi; otherwise, it is equal to zero.This incidence relationship defines the connectivity of the link and joint modules. Because linkmodules may have multiple connecting points, we can assign labels to the connecting points toidentify the module connection. To further identify those connections in the incidence matrix, wecan replace those entries of 1 by the labels of the connected ports being identified on the linkmodules and keep those entries of 0 unchanged. This modified matrix, termed an assembly incidencematrix, provides us the necessary connection information of the modules and also the basicgeometry of the modular robot.

275a

cd

b

275

275

275

275550

75

275

Fig. 1 Modular robot components

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 5 of 35

Page 6: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Definition 2 (Assembly Incidence Matrix). Let G be a kinematic graph of a modular robot andM Gð Þ be its incidence matrix. Let port be the set of labels assigned to the connecting ports on thelink modules. The assembly incidence matrix of the robot A Gð Þ is formed by substituting the 1s inM Gð Þ with labels in port on respective modules. One extra column and row are augmented toA Gð Þ to show the types of link and joint modules.

Note that the representation and assignment of the labels are nonunique. The labels of theconnecting ports may be numerical values (Chen 1994) or may be derived from the modulecoordinates (Chen and Yang 1996). In this case, the module-component database should useconsistent bookkeeping for this information. The AIM of the modular robot (8 link modules and7 joint modules) shown in Fig. 4 is a 9 � 8 matrix:

A Gð Þ ¼

1 3 5 0 0 0 0 B6 0 0 0 0 0 0 C10 1 0 6 0 0 0 C10 0 2 0 6 0 0 C10 0 0 5 0 2 0 C20 0 0 0 5 0 3 C20 0 0 0 0 1 0 C20 0 0 0 0 0 2 C2P R R R R P P 0

26666666666664

37777777777775

(1)

Note that there are three types of link modules in the robot: the base (B), the large cubic module(C1), and the small cubic module (C2). Cubic modules have six connecting interfaces labeled 1–6,i.e., port ¼ {1,. . .,6}, which follows the labeling scheme on dice. The revolute joints and prismaticjoints are denoted by R and P, respectively.

Accessibility Matrix and Path MatrixTwo matrices, namely, the accessibility matrix and the path matrix, derived from a given AIM aredefined in this section to provide the accessibility information from the base module to everypendant module in a branch-type modular robot. The accessibility information enables us toformulate the kinematics and dynamics of a general branch-type robot in a uniform way.

v7

v5

v1

v2

v3

v4

v6

v0e7

e6

(Base)

e5e4

e1

e3

e2

v4

v0

v5

v6

v7

v1

v2

v3

e4

e1

e6

e7

e2

e3

e5

v4

v0

v5

v6

v7

v1

v2

v3

DIGRAPHUNDIGRAPH

e4

e1

e6

e7

e2

e3

e5

a b

Fig. 2 (a) A branching modular robot, (b) kinematic graphs of the robot

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 6 of 35

Page 7: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Module Traversing OrderThe links and joints of a serial-type robot can follow a natural order from the base to the tip.A branch-type robot has more than one tip and no loops. Therefore, the order of the links of a branch-type robot depends on the graph-traversing algorithms (Cormen et al. 1990). Let G ¼ V; Eð Þrepresent the kinematic graph of a branch-type modular robot with n + 1 link modules, whereV ¼ v0; v1; � � �; vnf g represents the set of modules. The fixed-base module is denoted by v0 and isalways the starting point for the traversing algorithm. The rest of the modules are labeled by theirtraversing orders i. The traversing orders of the links in the robot of Fig. 2a are indicated by thenumbers on the vertices of the graph of Fig. 2b. This order is obtained by the depth-first-searchalgorithm. Note that the farther the module is away from the base, the larger its traversing order.

Directed GraphsA branch-type robot with n + 1 modules has n joints. Let E ¼ {e1, � � �, en} represent the set of joints,where joint ei is designated as the connector preceding link module vi. With a given traversing order,

the robot graph G can be converted to a directed graph (or digraph) G!, which is an outward tree for

a branch-type manipulator in the following manner. Let ej¼ (vi, vj) be an edge of the graph G!and i<

j. An arrow is drawn from vi to vj as edge ej leaves vertex vi and enters vertex vj. Suffice to say, link viprecedes link vj. An example of the directed graph is shown in Fig. 2b. From an outward tree withn vertices, an n� n accessibility matrix can be defined to show the accessibility among the vertices.

Definition 3 (Accessibility Matrix). The accessibility matrix of a directed kinematic graph G!

ofa modular robot with n + 1 modules (vertices) is an (n + 1) � (n + 1) matrix,

R G!� �

¼ rij� �

i, j ¼ 0, � � �, nð Þ, such that rij ¼ 1, if there is a directed path of length one or more

from vi to vj; rij ¼ 0, otherwise.The accessibility matrix can be derived from the AIM once the traversing order on the link

modules is determined. For example, the accessibility matrix of G!in Fig. 2b is

v0 v1 v2 v3 v4 v5 v6 v7

R G!� �

¼

v0v1v2v3v4v5v6v7

0 1 1 1 1 1 1 10 0 1 1 0 0 0 00 0 0 1 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 1 10 0 0 0 0 0 0 10 0 0 0 0 0 0 0

266666666664

377777777775

(2)

From R G!� �

, we can obtain the shortest route from the base to the pendant link. This route is

called a path. The pendant links are the rows of R G!� �

with all 0s. The number of paths in a

branching robot is equal to the number of pendant links. Let link vi be a pendant link. All linkmodules on the path from the base to vi are shown in the nonzero entries of column i of

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 7 of 35

Page 8: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

R G!� �

þ I nþ1ð Þ� nþ1ð Þ

� �T

. Collecting all the paths, we obtain the path matrix.

Definition 4 (Path Matrix). The path matrix P G!� �

of a directed kinematic graph G!of a branch-

type robot with n + 1 link modules (vertices) and m paths is an m � (n + 1) matrix,

R G!� �

¼ pij

h i, i¼1, 2, . . . ,m; j¼0, 1, . . . , nð Þ, such that pij ¼ 1, if path i contains vertex j, and

pij ¼ 0 otherwise.For instance, the robot of Fig. 2a contains three branches (paths). The three paths can be

represented as a 3 � 8 path matrix:

v0 v1 v2 v3 v4 v5 v6 v7

R G!� �

¼1 1 1 1 0 0 0 01 0 0 0 1 0 0 01 0 0 0 0 1 1 1

24

35 (3)

Row 1 represents the branch of the robot containing link modules v0, v1, v2, and v3; Row2 represents the branch of v0 and v4; Row 3 represents the branch of v0, v5, v6, and v7. It can be

seen that the rows of P G!� �

are identical to Columns 3, 4, and 7 of R G!� �

þ I nþ1ð Þ� nþ1ð Þ

� �,

respectively.

Geometry-Independent Models

In the control and simulation of a modular reconfigurable robot system, precise kinematic anddynamic models of the robot are necessary. However, classical kinematic and dynamic modelingtechniques for robot manipulators are meant for robot with fixed geometry. These models have to bederived manually and individually stored in the robot controller prior to simulating and controllingthe robot. Commercial robot simulation software usually provides end users with a library ofpredefined models of existing robots. The models of any new robot not in the library have to bederived exclusively from the given parameters and commands in the package. For a modular robotsystem built upon standard modular components, the possible robot geometries and degrees offreedom become huge. As shown by Chen (Chen 1994), the number of robot-assembly configura-tions grows exponentially when the module set becomes large and the module design becomescomplicated. To derive all of these models and store them as library functions require not onlytremendous effort but also very large amount of disk storage space. In such cases, it is impracticaland almost impossible to obtain the kinematic and dynamic models of a robot based on the fixed-geometry approach. Hence, there is a need to develop an automatic model-generation technique formodular robot applications.

Previous attempt to deal with automatic model generation for modular robots employed Denavit-Hartenburg (D-H) parameterization of the robot (Kelmar and Khosla 1988; Benhabib et al. 1989).However, the D-H method does not provide a clear distinction between the arranging sequence ofthe modules in the robot chain and their spatial relationship. Also, it depends on the initial position ofthe robot: the same robot may have different sets of D-H parameters just because of the different

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 8 of 35

Page 9: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

initial or zero positions. When evaluating the task performance of a modular robot with respect to itscorresponding geometry, complicated equivalence relationships must be defined on the sets ofparameters to identify the uniqueness of the robot geometry (Chen and Burdick 1998).

The formulation of the kinematics and dynamics is based on the theory of Lie groups and Liealgebras. The robot kinematics follows a local representation of the product-of-exponential (POE)formula, in which the joints, regardless of the types, are defined as members of se(3), the Lie algebraof the Euclidean group SE(3). The associated Lie algebraic structure can simplify the construction ofthe differentials of the forward-kinematics function required for numerical inverse solutions. ThePOE representation can also avoid the singularity conditions that frequently occur in the kinematiccalibration formulated by the D-H method (Chen and Yang 1997; Chen et al. 2001). Thus, itprovides us with a uniform and well-behaved method for handling the inverse kinematics of bothcalibrated and uncalibrated robot systems. Since the joint axes are described in the local module(body) coordinate systems, it is convenient for progressive construction of the kinematic models ofa modular robot, as it resembles the assembling action of the physical modular robot components.The formulation of the dynamic model is started with a recursive Newton-Euler algorithm(Hollerbach 1980; Rodriguze et al. 1991). The generalized velocity, acceleration, and forces areexpressed in terms of linear operations on se(3) (Murray et al. 1994). Based on the relationshipbetween the recursive formulation and the closed-form Lagrangian formulation for serial-robotdynamics discussed in (Featherstone 1987; Park et al. 1995), we use an accessibility matrix (Deo1974) to assist in the construction of the closed-form equation of motion of a branch-type modularrobot, which we assume is the generic topology of a modular robot. Note that all the proposedmodeling techniques can contend with redundant and non-redundant modular robot configurations.

Forward KinematicsThe forward kinematics of a general branch-type modular robot starts with a given AIM and a dyadkinematic model that relates the motion of two connected modules under a joint displacement.A dyad is a pair of connected links in a kinematic chain. Using dyad kinematics recursively witha prescribed graph-traversing order assigned to the robot modules, we may obtain the forwardtransformation of every branch with respect to the base frame, having a prescribed set of jointdisplacements. Note that a branch-type robot is one without any closed-loop geometry. Thekinematics of a closed-loop-type robot mechanism requires additional constraints and is notconsidered here.

Dyad KinematicsLet vi and vj be two adjacent links connected by a joint ej, as shown in Fig. 3. Denote joint ej and linkvj as link assembly j and the module-coordinate frame on link vi as frame i. The relative position(including the orientation) of the dyad, vi and vj, with respect to frame i with a joint angle qj, can bedescribed by a 4 � 4 homogeneous matrix:

Tij qj� �

¼ Tij 0ð Þesjqj , (4)

where sj 2 se 3ð Þ is the twist of joint ej expressed in frame j, Tij(qij) and Tij(0) 2 SE(3). Tij(0) is theinitial pose of frame j relative to frame i. Note that in the following context, the pose of a coordinateframe is referred to the 4 � 4 homogeneous matrix of the orientation and position of a coordinateframe:

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 9 of 35

Page 10: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Tij 0ð Þ ¼ Rij 0ð Þ dij 0ð Þ0 1

� , (5)

whereRij(0) 2 SO(3) and dij(0) 2 R3 are the initial orientation and position of link frame j relative toframe i, respectively. The twist sj of link assembly j is the skew-symmetric matrix representation ofthe 6-vector line coordinate of the joint axis, sj ¼ (qj, pj); pj, qj 2 R3. pj ¼ (pjx, pjy, pjz) is the unit-directional vector of the joint axis relative to frame j, and qj ¼ (qjx, qjy, qjz)¼ pj � rj, where rj is theposition vector of a point along the joint axis relative to frame j. For revolute joints, sj ¼ (0, pj), andfor prismatic joints, sj ¼ (qj, 0).

Recursive Forward KinematicsBased on Eq. 4, we propose a recursive algorithm for a general branch-type modular robot, termedTreeRobotKinematics. This algorithm can derive the forward transformations of the base link to allpendant links based on graph-traversing algorithms. The procedure is illustrated in Fig. 4. Imple-mentation details can be found in an earlier work (Chen and Yang 1996). The algorithm takes threeinputs: the AIM of the robot A Gð Þ, the base link location T0, and a set of joint angles {q}. Theforward-kinematics calculation follows the breath-first-search (BFS) traversing algorithm to travelon the connected robot modules.

VJ

XJ

ZJYJ

XI

ZI

YI

VI

eJ

Fig. 3 Link assembly j connected to link i

AIMBase

CurrentModule

DYADKINEMATICS

RECURSIVEBreath-First-Search

NextModule

ForwardTransforms

Terminate?

YES

NO

AT0

Joint q

Fig. 4 The TreeRobotKinematics algorithm

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 10 of 35

Page 11: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Path-by-Path Forward KinematicsA tree-type robot consists of several paths that give the shortest routes from the base to the respectivependant links. Each path can be considered as a serially connected submanipulator so that theforward transformation can be derived as conventional industrial manipulator. The sequence of the

connected modules in a path is indicated in a row of the path matrixP G!� �

. Let a¼ {a0, a1, a2, � � �,an} represent the links of path k. The base is a0� 0 and the number of links in the path k is defined tobe |a|¼ n + 1. For instance, path 1 of the robot in Fig. 2a is a¼ {0, 1, 2, 3}. The forward kinematicsfrom the base to the pendant link an of path k is given by

Ta0an ¼ Ta0a1 qa1 �

Ta1a2 qa2 �

. . . Tan�1an qan �

¼ ∏n

i¼1Tai�1ai 0ð Þesai qai � : (6)

For a branch-type modular robot with several paths, the forward kinematics is

T q1; q2; . . . ; qnð Þ ¼Ta0anTb0bm

24

35 ¼

Pni¼1 Tai�1ai 0ð Þesai qai �

Pmi¼1 Tbi�1bi 0ð Þesbi qbi �

264

375, (7)

where T(q1, q2, . . ., qn) represents the vector of 4 � 4 homogeneous matrices of the poses of all thependant end-effectors. Since many paths in the branch-type robot share many common modules,there will be repetitive calculations using the model of Eq. 7. In actual implementation, we prefer therecursive approach, which introduces no repetitive calculations.

Inverse KinematicsThe purpose of an inverse kinematics algorithm is to determine the joint angles that cause theend-effector of a manipulator to reach a desired pose. Current robot inverse kinematics algorithmscan be categorized into two types: closed form and numerical. Closed-form-type inverse kinematicsrequires a complete parameterization of the solution space, usually in terms of simultaneouspolynomial equations. Solutions to such a set of simultaneous polynomial solutions exist fora few types of robots with revolute joints or simple geometry. It is very difficult to obtain the inversekinematics for an arbitrary modular reconfigurable robot in this manner. Here we adopt thenumerical approach to solve the inverse kinematics of modular robots. The inverse kinematicsalgorithm will construct the differential kinematic model using the local POE formula. The differ-ential kinematic equation of a single branch of a branch-type robot is considered first. Based on theAIM of the robot, one can extend this differential kinematics model to include multiple branchstructures. Then the Newton–Raphson iteration method is used to obtain the numerical inversekinematics solutions. The differential kinematic model can be easily modified to solve the pureposition, pure orientation, and hybrid inverse kinematics problems (Chen et al. 1999a).

A Single BranchLet Ta0an be the forward transformation of path k as indicated in Eq. 6. The differential change in theposition of the end-link an can be given by

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 11 of 35

Page 12: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

dTa0an ¼Xaj j�1

i¼1

@Ta0an

@qaidqai

¼Xaj j�1

i¼1

Ta0ai�1

@ Tai�1ai 0ð Þesai qai �@qai

Taian

" #dqai

¼Xaj j�1

i¼1

Ta0ai saiTaian½ �dqai

(8)

Left multiplying T�1a0an

, Eq. 8 becomes

T�1a0an

dTa0an ¼Xaj j�1

i¼1

T�1aian

saiTaiandqai : (9)

Equation 9 is the differential kinematic equation of a path. LetTda0an

denote the desired position ofthe end-effector. When it is in the neighborhood of a nominal position of the end-effector Ta0an, wehave

dTa0an ¼ Tda0an

� Ta0an : (10)

Left multiplying T�1a0an

to Eq. 9, and using the matrix logarithm,

log T�1a0an

Tda0an

� �¼ T�1

a0anTda0an

� I� �

�T�1a0an

Tda0an

� I� �2

T�1a0an

Tda0an

� I� �3

3� � � � (11)

We can obtain the following equation by first-order approximation:

T�1a0an

dTa0an ¼ log T�1a0an

Tda0an

� �: (12)

Substituting Eq. 12 into Eq. 9, we obtain

log T�1a0an

Tda0an

� �¼

Xaj j�1

i¼1

T�1a0an

saiTa0andqai : (13)

Explicit formulae for calculating the logarithm of elements of SO(3) and SE(3) were derived by

Park and Bobrow (Park and Bobrow 1994). Definitely, log T�1a0an

Tda0an

� �is an element of se(3) so that

it can be identified by a 6 � 1 vector denoted by log T�1a0an

Tda0an

� �∨in which the first and later three

elements represent the positional and orientational differences between Ta0an and Tda0an

. ConvertingEq. 13 into the adjoint representation, we get

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 12 of 35

Page 13: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

log T�1a0an

Tda0an

� �∨¼ AdT�1

a0an

Xaj j�1

i¼1

AdTa0aisaidqai : (14)

Conveniently, Eq. 14 can also be expressed as the following form:

DTk ¼ J kdqk , (15)

where

DTk ¼ log T�1a0an

Tda0an

� �∨2 R6�1 is referred to as the pose difference vector for path k

Jk ¼ AkBkSk 2 R6 � (|a| � 1) is termed as body manipulator Jacobian matrix (Murray et al. 1994)

Ak ¼ AdT�1a0an

2 R6�6

Bk ¼ row AdTa0a1,AdTa0a2

, . . . ,AdTa0an

h i2 R6�6 aj j�1ð Þ

Sk ¼ diag sa1 ; sa2 ; . . . ; san½ � 2 R6 aj j�1ð Þ� aj j�1ð Þi

dqk ¼ column dqa1 , dqa2 , . . . , dqan� � 2 R aj j�1ð Þ�1:

Equation 15 defines the differential kinematics for path k. It can be utilized in theNewton–Raphson iteration to obtain an inverse kinematics solution for a given pose.

Entire ManipulatorThe paths of a branch-type manipulator may not be independently driven, because of the commonsharing modules. This forbids us to treat each path as independent serial-type manipulators. Hence,with a given set of the pendant end-effectors’ poses for all branches, the inverse kinematics must besolved simultaneously. With the assistance of the path matrix, we are able to identify the connectedand related modules in a path. Then, we can orderly combine the differential kinematic equations(Eq. 15) of all constituting paths into a single matrix equation of the following form:

DT ¼ Jdq, (16)

whereDT ¼ column DT1 ;DT2 ; . . . ;DTm½ � 2 R6m�1 is termed the generalized pose difference vectorJ ¼ ABS 2 R6m � n is termed the generalized body manipulator Jacobian matrix; and

A ¼ diag A1;A2; . . . ;Am½ � 2 R6m�6n

B ¼p11AdT01 p12AdT02 . . . p1nAdT0n

p21AdT01 p22AdT02 . . . p2nAdT0n

⋮ ⋮ ⋱ ⋮pm1AdT01 pm2AdT02 . . . pmnAdT0n

2664

3775 2 R6m�6n

The coefficient pij(i¼ 1, 2, . . .,m; j¼ 0, 1, 2, . . ., n) is entry (i, j) of the pathmatrix p, andm is thetotal number of paths; S ¼ diag[s1, s2, . . ., sn] 2 R6n � n; dq ¼ column[dq1, dq2, . . ., dqn] 2 Rn � 1.

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 13 of 35

Page 14: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Rewriting this equation in an iterative form, we get

dqiþ1 ¼ J �DT , (17)

qiþ1 ¼ qi þ dqiþ1, (18)

where i represents the number of iterations and J* is the Moore-Penrose pseudoinverse of J. Usingthe Newton-Raphson method, a closed-loop iterative algorithm similar to that of Khosla, Newman,and Prinz (Khosla et al. 1985) is employed (Fig. 7). The iterative algorithm determines the necessarychanges in the joint angles to achieve a differential change in the position and orientation of theend-effector. Given a complete robot assembly (or the AIM) and a set of desired poses Td, thisalgorithm starts from an initial guess, q0, somewhere in the neighborhood of the desired solution. Itis terminated when a prescribed termination criteria is reached. As one can see, the structure ofJ depends on the path matrix, which is implied in the kinematic graph of the robot. Therefore, oncethe assembly configuration of a modular robot is determined and all module parameters are obtained,the differential kinematic model (Eq. 16) can be generated automatically.

Computational examples of the inverse kinematics algorithms for branch-type and serial modularrobots are given by Chen and Yang (Chen et al. 1999a) to illustrate the algorithm’s applicability andeffectiveness. When compared to the other numerical inverse kinematics algorithm using D-Hparameters, our method always use less number of iterations and computing time for the samegiven pose. This is due to the use of the pose difference vector computed from the matrix logarithmin Eq. 16, and not the difference of homogeneous transformation matrices. Actual implementation ofthe algorithm using C++ codes shows that the computation time for each solution can take less than20 ms on a Pentium II 300 MHz PC, which satisfies the basic requirement for real-time control andsimulation (Fig. 5).

Kinematic CalibrationThe machining tolerance, compliance, and wear of the connected mechanism and misalignment ofthe connected module components may introduce errors in positioning the end-effector of a modularrobot. Hence, calibrating the kinematic parameters of a modular robot to enhance its positioningaccuracy is important, especially in high-precision application such as hard-disk assembly.

Current kinematic calibration algorithms for industrial robots that are designed for certain types ofserial manipulators are not suitable for modular robots with arbitrary geometry. Here we proposea general singularity-free calibration-modeling method for modular reconfigurable robots, based onthe forward kinematics discussed in the previous section. This method follows local POE formulae.

AIM INITIALIZATIONPath matrix P(G)

DELAYForward Kinematics

TreeRobotKinematics ()

qk+1 qk T (qk)dqk+1

Inverse JacoblanJ* [J=A B S]

DT

-

T d

T d

A(G)

Desired

+

Fig. 5 Inverse kinematics algorithm

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 14 of 35

Page 15: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

The robot errors are assumed to be in the initial positions of the consecutive modules. Based onlinear superposition and differential transformation, a six-parameter model is derived. This modelcan be generated automatically once the AIM of the robot is given. An iterative least-squarealgorithm is then employed to find the error parameters to be corrected.

The calibration starts with a serial-type manipulator kinematics model:

T0n qð Þ ¼ T 01 q1ð ÞT12 q2ð Þ� � �Tn�1, n qnð Þ (19)

Thus,

T 0n qð Þ ¼ T01 0ð Þes1q1T12 0ð Þes2q2 � � �Tn�1, n 0ð Þesnqn (20)

Extension to a general branch-type modular robot is similar to the treatment of the inversekinematics model in previous section. Basically, Eq. 20 can be treated as a function of the jointangles, q¼ (q1, � � �, qn), locations of the joint axes, s ¼ s1; � � �; snð Þ, and the relative initial positionsof the dyads, T0 ¼ (T01(0), � � �, Tn � 1, n(0)):

T0n ¼ f T0s; qð Þ: (21)

Written in differential form, we have

dT 0n ¼ @f

@T0dT0 þ @f

@sdsþ @f

@qdq: (22)

The differential dT0n can be interpreted as the difference between the nominal position and themeasured position.

Error Model of a DyadOur kinematic calibration is based on the local frame representation of a dyad described in Eq. 4.Two assumptions are made in the dyad of link vj�1 and vi of a modular robot chain: first, smallgeometric errors only exist in the initial position Ti � 1,i(0) and, second, the twist and joint angle qiassumes the nominal values throughout the calibration analysis. Hence, instead of identifying themodule’s actual initial positions, joint twists, and angle offsets, we look for a new set of local initialpositions (local frames, called calibrated initial positions), in the calibration model, so that the twistof the joint remains the nominal value. In other words, the errors in a dyad are lumped with the initialposition. Therefore, ds and dq can be set to 0. Because SE(3) has the dimension of six – three forpositions and three for orientations – there can be only six independent quantities in Ti � 1,i(0), andthere will be six independent error parameters in a dyad. Denote the small error in the initial positionof dyad (vi � 1, vi) as dTi � 1,i(0), then

dTi�1, i 0ð Þ ¼ Ti�1, ið0�Di

Di ¼0 �dzi dyi dxidzi 0 �dxi dyi�dyi dxi 0 dzi0 0 0 0

2664

3775, (23)

where dxi, dyi, and dzi are infinitesimal displacements along x- , y- , and z-axes of link frame i,respectively, and dxi, dyi, and dzi are infinitesimal rotations about x-, y-, and z-axes of link frame i ,respectively.

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 15 of 35

Page 16: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Gross Error Model of a RobotSimilar to the error model of a dyad, the gross-geometric error dT0n between the actual end-effectorposition and the nominal position can be described as

dT0n ¼ D0nT0n (24)

and

D0n ¼ dT0nT�10n (25)

¼0 �dz0n dy0n dx0n

dz0n 0 �dx0n dy0n�dy0n dx0n 0 dz0n0 0 0 0

2664

3775, (26)

where dx0n, dy0n, and dz0n are the rotations about the axes of the base frame and dx0n, dy0n, and dz0nare the displacements along the axes of the base frame, respectively. Note that the gross error, dT0n, isexpressed in the base frame. Equation 25 follows the left multiplicative differential transformation ofT0n. The calibrated position of the end-effector becomes

T0n0 qð Þ ¼ T0n þ dT 0n: (27)

Linear SuperpositionBased on the assumptions, the errors in the dyads will contribute to the gross error in theend-effector’s position dT0n. Since the geometric errors are all very small, the principle of linearsuperposition can be applied. We assume that the gross errors dT0n are the linear combination of theerrors in the dyads dTi � 1,i(0), (i ¼ 1, 2, . . ., n); then

dT0n ¼Xni¼1

T0, i�1dTi�1, i 0ð ÞesiqiT i, n: (28)

Equation 28 converts and sums the initial position errors of the dyads in the base-framecoordinates. The forward kinematics of link frame j relative to link frame i (i � j) is representedby Tij. Especially, Tij¼ I4 � 4 when i¼ j. Substituting Eq. 23 into Eq. 28, and right multiplying T0n

� 1,

dT0nT�10n ¼ D0n (29)

¼Xni�1

T0, i�1Ti�1, i 0ð ÞDiT�1i�1, iT

�10, i�1 (30)

From the first-order approximation, we have

D0n ¼ dT0nT�10n log T0n

0T�10n

�: (31)

Converting Eq. 31 into the adjoint representation, we have

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 16 of 35

Page 17: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

log∨ T 0n0T�1

0n

� ¼ Xni�1

AdT0, i�1 AdTi�1, i 0ð Þ Dið Þ� �

: (32)

Equation 32 can also be expressed in the following matrix form:

y ¼ Ax, (33)

where

y ¼ log∨ T0n0T�1

0n

� 2 R6�1;

x ¼ column[D1, D2, � � �, Dn] 2 R6n � 1; and

A ¼ row AdT0, 1 0ð Þ,AdT0, 1 AdT1, 2 0ð Þ� �

, � � �,AdT0, n�1 AdTn�1, n 0ð Þ� �h i

2 R6�6n:

In Equation 33, x represents the error parameters to be identified in a modular robot assembly. Thequantities in matrix A and T0n

� 1 are determined from the nominal model. T0n ' comes from the actualmeasured data. To improve the accuracy of the calibration model, the kinematic calibrationprocedure usually requires the position of the end-effector to be measured in several differentrobot postures. For the ith measurement, we obtain yi and Ai After taking m measurements,

~Y ¼ ~Ax, (34)

where

~Y ¼ column y1; y2; � � �; ym½ � 2 R6m�1

~A ¼ column A1;A2; � � �;Am½ � 2 R6m�6n:

The least-squares solution for x can be obtained by

x ¼ ~A†~Y, (35)

where ~A†is the pseudoinverse of ~A and ~A

† ¼ ~AT ~A

� ��1~ATfor m> n; ~A

† ¼ ~AT ~A ~A

T� ��1

for m<

n; and ~A† ¼ ~A

�1for m ¼ n. The calibration procedure is illustrated in the diagram of Fig. 6a.

Computer simulation and actual experiment on the modular robot systems described by Chen andYang (Chen and Yang 1997) and Chen et al. (Chen et al. 2001) have shown that this calibrationmethod can improve the accuracy in end-effector positioning by up to two orders of magnitudes.

DynamicsThe dynamic model of a robot can be formulated with an iterative method through a recursiveNewton-Euler equation. This method can be generally applied to branch-type robots withoutmodification. Here we present a method to generate the closed-form dynamic models of modularrobots using the AIM and the recursive algorithm.

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 17 of 35

Page 18: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Newton-Euler Equation for Link AssemblyAssume that the mass center of link assembly j is coincident with the origin of the link module framej. The Newton-Euler equation of this rigid link assembly with respect to frame j is

Fj ¼ f jtj

� ¼ mjI 0

0 J j

� _vj_wj

� þ wj � mjvj

wj � J jwj

� , (36)

where Fj 2 R6�1 is the resultant wrench applied to the center of mass relative to frame j. The totalmass of link assembly j is mj (which is equal to the sum of link vj and joint ej). The inertia tensor ofthe link assembly about frame j is Jj. Transforming Eq. 36 into the adjoint representation, we have

Fj ¼ Mj _V j � adTV jMjV j

�: (37)

The following notations are adopted:

Mj ¼ mj 00 J j

� 2 R6�6 is the generalized mass matrix;

V j ¼ vjwj

� 2 R6�1 is the generalized body velocity, where vj and wj are 3 � 1 vectors defining

body translational velocity, vj¼ (vx, vy, vz)T, and the angular velocity,wj¼ (wx,wy,wz)

T, respectively;

AIM

AIM

Joint qF E

AForce

Nominal

MEASUREActual Ton

a

b

UPDATETon

Y=log(...)

iterativeLoop

Meet iterativecriteria?

YES

CompleteCalibration

DynamicsModel

NO

-

INITIALIZATIONPath matrix P(G)

INITIALIZATIONAccess matrixTwists SMass matrix

COMPUTEGT, G, A1, A2

TreeRobotKinematics ()

COMPUTEM(q), C(q',q''), N(q)

M

COMPUTEx=A+ Y

UPDATE DYADT '(0) = T(0) + dT(0)

COMPUTEAdjoint A=[Ad, ...]

A(G)Ton

R(g)

Fig. 6 (a) Calibration algorithm for modular robots; (b) Dynamic model generation

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 18 of 35

Page 19: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

adTVj2 R6�6 is the transpose of adjoint matrix adVj related to Vj

adTV j¼ adVj

�T ¼ wj vj0 wj

� T¼ �wj 0

�vj �wj

� ; (38)

vj and wj 2 R3�3 are skew-symmetric matrices related to vj and wj, respectively; and

_V j ¼ _vj_wj

� 2 R6�1 is the generalized body acceleration.

Recursive Newton-Euler AlgorithmThe recursive algorithm is a two-step iteration process. For a branch-type robot, the generalizedvelocity and acceleration of each link are propagated from the base to the tips of all branches. Thegeneralized force of each link is propagated backward from the tips of the branches to the base. Atthe branching module, generalized forces transmitted back from all branches are summed.

Forward Iteration The generalized velocity and acceleration of the base link are given initially:

Vb ¼ V 0 ¼ 0; 0; 0; 0; 0; 0ð ÞT (39)

_Vb ¼ _V 0 ¼ 0; 0; g; 0; 0; 0ð ÞT (40)

where Vb and _Vb are expressed in the base frame 0. We assume that the base frame coincides with thespatial reference frame. The generalized acceleration (Eq. 40) is initialized with the gravitationacceleration g to compensate for the effect of gravity. Referring to Fig. 4, the recursive body velocityand acceleration equations can be written as

V j ¼ AdT�1ij

V ið Þ þ sj _qj (41)

_V j ¼ AdT�1ij

_V i

�þ adAdT�1ij

V ið Þ sj _qj �þ sj€qj (42)

where all the quantities, if not specified, are expressed in link frame j.Vj and _V j are the generalized velocity and acceleration of link assembly j;_qj and €qj are the velocity and acceleration of joint ej, respectively;AdT�1

ijis the adjoint representation of Tij

� 1(qj), where Tij(qj) 2 SE(3) is the position of frame

j relative to frame i with joint angle qj and AdT�1ij

¼ AdTij

��1; and

sj 2 R6�1 is the twist coordinates of joint ej.

Backward Iteration The backward iteration of the branch-type robot starts simultaneously from allthe pendant link assembly. Let VPD V be set of the pendant links of the branch-type robot. Forevery pendant link assembly di vdi

2 VPD

�, the Newton-Euler equation (Eq. 37) can be written as

Fdi ¼ �FediþMdi

_Vdi � adTVdiMdiV dið Þ, (43)

whereFdi is the wrench exerted on link assemblyvdi by its parent (preceding) link relative to frame di

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 19 of 35

Page 20: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

and Fediis the external wrench exerted on vdi : Note that the total wrench is Fdi ¼ Fdi þ Fe

di: Now

traverse the links in the robot backward from the pendant links. Let VHi be the set of successors oflink vi. For every link assembly i, the Newton-Euler equation (Eq. 37) can be written in the followingform:

Fi ¼Xj2VHi

AdTT�1ij

Fj

�� Fei þMi _V i � adTVi

MiV ið Þ, (44)

where all quantities, if not specified, are expressed in link frame i; Fi 2 R6�1 is the wrench exerted tolink assembly i by its predecessor;Fj2 R6�1 is the wrench exerted by link assembly i to the successorvj 2 VHi expressed in link frame j; and Fi

e is the external wrench applied to link assembly i. The totalwrench is Fi ¼ Fi �

Xj2VHi

AdTT�1ij

Fj

�þ Fei :

The applied torque/force to link assembly i by the actuator at its input joint ei can be calculated by

ti ¼ sTi Fi: (45)

Closed-Form Equations of MotionBy iteratively expanding the recursive Newton-Euler equations (Eqs. 39–44) in the body coordi-nates, we obtain the generalized velocity, generalized acceleration, and generalized force equationsin matrix form:

V ¼ GS _q (46)

_V ¼ GT0_V0 þGS€qþGA1V (47)

F ¼ GTFE þGTM _VþGTA2MV (48)

t ¼ STF (49)

whereV ¼ column[V1, V2, � � �, Vn] 2 R6n�1 is the generalized body velocity vector_V ¼ column _V 1; _V 2; � � �; _Vn

� � 2 R6n�1 is the generalized body acceleration vectorF ¼ column[F1, F2, � � �, Fn] 2 R6n�1 is the body wrench vectort ¼ column[t1, t2, � � �, tn] 2 Rn�1 is the applied joint torque/force vector_q ¼ column _q1; _q2; � � �; _qn½ � 2 Rn�1 is the joint velocity vector€q ¼ column €q1; €q2; � � �; €qn½ � 2 Rn�1 is the joint acceleration vector_V0 ¼ 0; 0; g; 0; 0; 0ð ÞT 2 R6�1 is the generalized acceleration of the base linkS ¼ diag[s1, s2, � � �, sn] 2 R6n�n is the joint twist matrix in the respective body coordinatesM ¼ diag[M1, M2, � � �, Mn] 2 R6n�6n is the total generalized mass matrixA1 ¼ diag �adS1 _q1 , � adS2 _q2 , � � �, � adSn _qn

� � 2 R6n�6n

A2 ¼ diag �adTV 1, � adTV 2

, � � �, � adTVn

h i2 R6n�6n

FE ¼ column[F1e, F2

e, � � �, Fne] 2 R6n�1 is the external wrench vector

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 20 of 35

Page 21: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

GT0 ¼AdT�1

01

AdT�102

⋮AdT�1

0n

2664

3775 2 R6n�6; and G ¼

I6�6 0 0 � � � 0r12AdT�1

12I6�6 0 � � � 0

r13AdT�113

r23AdT�123

I6�6 � � � 0⋮ ⋮ ⋮ ⋱ ⋮

r1nAdT�11n

r2nAdT�12n

r3nAdT�13n

� � � I6�6

266664

377775 2 R6n�6n:

Note that R G!� �

¼ rij� � 2 R nþ1ð Þ� nþ1ð Þ is the accessibility matrix. The matrix G is called

a transmission matrix. Substituting Eqs. 46–48 into Eq. 49, we obtain the closed-form equation ofmotion for a branch-type modular robot with n + 1 modules (including the base module):

M qð Þ€qþ C q; _qð Þ _qþ N qð Þ ¼ t (50)

where

M qð Þ ¼ STGTMGS (51)

C q; _qð Þ ¼ STGT MGA1 þ A2Mð ÞGS (52)

N qð Þ ¼ STGTMGT0_V0 þ STGTFE (53)

The mass matrix is M qð Þ;C q; _qð Þ represents the centrifugal and Coriolis accelerations; N(q)represents the gravitational force and external forces. The procedure for obtaining the closed-formequation (Eq. 50) is summarized in Fig. 6b. It has been successfully implemented inMathematica code.

Configuration Optimization

Introducing modularity in a robotic system implies that the system performance can be optimizedthrough proper selection and reconfiguration of module components. The task planner for themodular robotic workcell will be able to determine the optimal robot configuration and geometryfor a given task from an inventory of robot modules. Figure 7 depicts the general approach fordetermining the optimal assembly configuration. Shaded blocks represent the basic formulation ofthe optimization problem. With a given set of modules selected from the component database, allpossible and unique assembly configurations can be generated and identified through an enumera-tion algorithm (Chen and Burdick 1998). In the second step, an objective function is formulated toevaluate the performance of every assembly configuration, based on the task specifications. A basicrobot task contains task specifications that are provided by the task planner (the goal positions/orientations, force application, accuracy, and dexterity of the end-effectors) and constraints to beovercome (obstacle avoidance, workspace limit, singularity, and kinematic redundancy) (Chen andBurdick 1995; Yang and Chen 2000). A search/optimization procedure is employed in the last step tofind the optimal assembly configuration.

Note that all the dimensions of the modules have been previously designed and fixed at theselection stage. With a given set of modules, the possible combination of robot-assembly configu-rations is always a finite number. Therefore, the parameter space for the optimization is discrete, and

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 21 of 35

Page 22: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

combinatorial optimization methods can be applied. Exhaustive search algorithms can be used tofind the exact optimal solution, but the exponential growth of the data set impedes the efficientimplementation of such an algorithm. Random-search techniques such as genetic algorithms(GA) (Chen 1994) and simulated annealing (SA) (Paredis et al. 1997) are more suitable for suchproblems. Transition rules for data points required in GA and SA can be easily implemented basedon a data-representation scheme such as AIM.

Task-Oriented Objective FunctionThe crucial point in determining the optimal robot configuration is formulating an objective functionthat will assign a “goodness” value to every assembly configuration accomplishing a specified task.The form of the objective function should be general enough so that it is applicable to a wide varietyof task requirements. Two components of a robot task – task specifications and constraints –must beconsidered in formulating the objective function. We call this function an assembly configurationevaluation function (ACEF). The assembly configuration with the greatest ACEF value is deemedoptimal. It is also important to note that from a given set of modules, it is possible to construct robotswith various topologies, such as serial or parallel kinematic structures. Even with a fixed robot-topology class, the number of degrees of freedom (DOF) can alter the kinematic functionality of thesystem. Here we propose a solution strategy for modular robot with a fixed topology and a fixednumber of DOF.

The structure of the ACEF for a serial modular robot is shown in Fig. 8. The input is an AIM witha predefined number of DOFs and predefined topology. The output is the “goodness” of the AIM interms of a nonnegative real number. An AIM with a large ACEF value represents a good assemblyconfiguration. The ACEF consists of two parts: task and structure evaluations. Task evaluation isperformed according to the given task specifications: the task points (or the positions of theend-effector) and a designated criteria measure, such as the dexterity or the manipulability.A workspace check on the task points is executed before computing the measures for filtering outinaccessible points. Structure evaluation assesses the kinematic constraints (joint singularity andredundancy, link interference) and environmental constraints (workspace obstacles) imposed on therobot in accomplishing the assigned task. The proposed ACEF assumes the modular robot isoperated in a structured environment and that there are no obstacles in the workspace. An auxiliaryfunction, termed the module-assembly preference (MAP) is defined on the AIM to exclude

COMPONENTDATABASE

Module SetASSEMBLY

CONFIGURATIONSET

OPTIMIZATIONALGORITHMS

Solution

Evolutionary Algorithm

TASK-DEPT.OBJECTIVEFUNCTION

TASKPLANNER

(user environ.)

Fig. 7 Determination of a task-optimal configuration

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 22 of 35

Page 23: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

undesirable kinematic features. Detailed implementation of the task and structure evaluation can beobtained from Chen (Chen 1996).

Evolutionary AlgorithmsAn evolutionary algorithm is a probabilistic search/optimization method based on the principle ofevolution and hereditary of nature systems (Michalewicz 1994). In this algorithm, a population ofindividuals for each generation is maintained. The individual is implemented with some datastructure and is evaluated by a “fitness function” to give a measure of its “fitness.”A new populationis formed by selecting the more suitable individuals. Members in the new population undergotransformations by the “genetic operators” to form new solutions. Through structured randominformation changes, the new generation is more “fit” than the previous generation. Aftera number of iterations, the individuals will converge to an optimal or near-optimal solution. Herewe attempt to use the AIMs as the data structure of the solution and define AIM-related geneticoperators (Chen 1996) as solving the task-optimal problem in an evolutionary approach, becauseAIM is a natural representation of the modular robot and is topologically independent.

Figure 9 depicts the application of the evolutionary algorithm in solving the task-optimalconfiguration problem. An example of optimizing the configuration of a 4-DOF modular robot isprovided in the following example. Suppose we wish to find a 4-DOF fixed-base serial robot withrevolute joints that passes through two task points p1 and p2. Also suppose that we require there beno redundant joints and minimum link interference. Let the performance measure of the robot be themanipulability. The initial set of AIMs randomly generated is shown in Fig. 10. The population sizeis 8, and the evolution stopped after 30 generations. The assembly configuration in the targetgeneration that has the highest fitness value is chosen as the optimal one (Fig. 11a). The averageand maximum fitness values in every generation are shown in Fig. 11b. As can be seen, theevolutionary algorithm does increase the fitness values generation by generation. Although the

AIM

STRUCTUREEVALUATION

TASKEVALUATION

TaskPoints

WorkspaceCheck

Task PointMeasures

DexterityManipulability, ...

YES

In ?NO

μ = 0

φ = Π ωι

Ψ = Φ ∗ μ

μ > 0

Fixed DOF, Topology

MAPφ

Fig. 8 The ACEF for serial modular robots

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 23 of 35

Page 24: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

best solution may not be guaranteed, a suboptimal solution can always be found, and in return, theefficiency of finding the solution is increased.

Simulation Software for Modular Robots

To visualize and simulate the performance of an assembled robot, such as reachability andworkspace, a robot simulation software application is necessary. The Simulation Environment forMOdular Robot System (a.k.a. SEMORS) is a Windows-based object-oriented software applicationdeveloped for this purpose. Based on the proposed local POE models and AIM data structures,SEMORS offers uniform and automatic model construction effort (kinematics, dynamics, andcalibration) across computer simulation and real-time control of arbitrary robot configurations(Chen et al. 1999b). The basic graphical user interface of SEMORS is illustrated in Fig. 12. SEMORSis intended to be a uniform interface for all modular robots and is portable to modular robot systemsfrom different vendors. It will be used both for simulation and for online execution of a task,regardless of whether the robot is executing (or is simulated to be executing) the task as a stand-aloneapplication or as part of a workcell process. Thus, it allows the user to quickly integrate the hardwarecomponents into modular robots and to manage their operations in the reconfigurable workcell. Keyfeatures of SEMORS include:

REPRODUCTION

PopInitial

i = 1

NO

YES

i = 1+1

i = n ?

CROSSOVER

MUTATION

ACEF

PopFinal

NewGeneration

Fig. 9 The evolution algorithm

Fig. 10 The initial generation

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 24 of 35

Page 25: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

• Module and robot builder

140Fitness

a

b

120

100

80

60

40

20

10 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31Gen.

Fig. 11 (a) Optimal assembly configuration, (b) average and maximum fitness in each generation

Fig. 12 User interface of SEMORS

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 25 of 35

Page 26: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

• 3D graphical task simulation• “Universal” inverse kinematics• Full dynamics models• Trajectory and task planning• Transparent workcell network connectivity

In addition to the simulation of modular robots, extended features like robot configurationplanning/optimization and module database management are implemented as separate applicationpackages to be used along with SEMORS. The task-based robot configuration optimization men-tioned in section “Geometry-Independent Models” is a generic and platform-independent method-ology. With the capability of task-based robot configuration optimization, designing the modularrobot configuration using SEMORS becomes no longer an ad hoc approach. The software systemwill provide the end user an optimized robot configuration according to the input task requirements.The user does not need to start the design work from scratch. Rather, based on the result ofoptimization, he can fine-tune the suggested robot design or layout. The development effort andtime for the workcell can be greatly reduced.

Realization of a Reconfigurable Robotic Workcell

System ArchitectureFigure 13 illustrates the system layout of a reconfigurable robotic workcell jointly developed byNanyang Technological University and Singapore Institute of Manufacturing Technology (Chen2001). The purpose is to demonstrate the adaptability of such a system to perform a variety of tasks,such as part assembly, material transfer, and light machining (grinding, polishing, and deburring),through rapid change of reusable workcell components. In this system, workcells are made of

Fig. 13 Deployment of a reconfigurable robotic workcell

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 26 of 35

Page 27: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

standard interchangeable modular components, such as actuators, rigid links, end-of-arm tooling,fixtures, and sensors. These components can be rapidly assembled and configured to form robotswith various structures and degrees of freedom. The robots, together with other peripheral devices,will form a complete robotic workcell to execute a specific manufacturing task or process. Thecorresponding intelligent control and simulation software components are then reconfiguredaccording to the change of the workcell configuration. The maintenance and upgrade of the systemare simplified by replacing the malfunctioned or outdated components. Converting a manufacturingline from one product to another can be very fast in order to keep up with the rapidly changingmarketplace.

In this system, the workcell software is designed in reusable- and reconfigurable-object fashionfor ease of maintenance and development. Figure 14 illustrates the overall software architecture ofthe modular workcell. The user environment will provide all the necessary functions to facilitate theend user in controlling, monitoring, and simulating the workcell. It consists of the following parts:

Component browser – for viewing and editing the components available in the component database.Simulator – for generating a computer simulation model of a modular robot and the entire workcell;

additionally, the simulator may be employed as the core function for future virtual manufacturingcapabilities.

Task level planner – for determining the optimal geometry of a modular robot for a given task and theoverall layout of the workcell for a particular manufacturing process.

Programming interface – for providing command and control of the system.Controller – for commanding the low-level individual controllers located in the components and

identifying the robot’s geometry from the local component controllers.

The system kernel, which is hidden from the user, provides automated model-generation func-tions and the configuration-optimization function (a component database is also associated with it):

USERENVIRONMENT

USER ENVIRONMENT

KERNEL

COMPONENT BROWSER

MODELGENERATION

MODELGENERATION

CAD MODEL

CALIBRATION

DYNAMICS

KINEMATICS

CALIBRATION

CONFIGURATIONOPTIMIZATION

WORKCELL

RENDERINGSIMULATOR

TASK LEVEL PLANNER

CONTROLLER

AIM

OBJECT-ORIENTEDCOMPONENT

DATABASE

GEOMETRYINDEPENDENT

KERNEL FUNCTION

PROGRAMMING

Fig. 14 Software architecture for reconfigurable workcell

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 27 of 35

Page 28: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Object-oriented component database –manages the specification of all the components, such as thedimensions and weights of the links, maximum kinematic and dynamic performance of theactuators, etc. It can be accessed by the user for browsing and editing purposes.

Geometry-independent kernal functions – generates kinematic and dynamic models of the robotsshared by the simulators and the controller. Using identical models in the simulation and controlof the workcell insures the reliability and integration of the system and enables physically basedsimulations through the workcell controller. The configuration-optimization function can enu-merate all possible robot geometry from an inventory of module components in the database andselect the most suitable one for a prescribed task. This information will pass back to the task levelplanner to determine the optimal layout and locations of the robots in the workcell.

The information passing from the component database to the modeling functions is through theassembly incidence matrix. Robot geometries (serial, branch, or hybrid) and detailed connectioninformation, such as the connecting orientation and the types of adjacent modules, are all indicatedin the matrix. This matrix is then passed to the geometry-independent functions for modelgeneration.

In such a system, the need to maintain a huge library of robot models is eliminated; instead, wemaintain a small selection of the component database and kernel functions for automated modelgeneration, reducing the overall footprint of the system software.

Workcell PrototypeWe have constructed a prototype workcell for light-machining tasks in an industrial exhibition in1999 (Fig. 15). This workcell was built with multiple reconfigurable robots along with othersupporting devices under a unified modular approach.

• Preliminary Design Stage

To make use of the advantages of both parallel-typed and serial-typed robots, we intend to makethe workcell to perform a complete milling operation of a workpiece, starting from picking up theobject, transferring the object to a milling robot, starting the milling process, and returning theworkpiece back to a storage rack. Based on this preliminary concept, we decide to use tworeconfigurable robots in this workcell: one is a serial-typed robot for the pick-and-place operationand the other is a parallel-typed robot for the milling operation because of its structural rigidity. The

Fig. 15 A light-machining workcell with modular robot components

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 28 of 35

Page 29: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

task is to perform milling operation on a dome-shaped top of a cylindrical workpiece with 15 cm indiameter. Aworkpiece transfer system should be used in between the two robots.

• Robot Configuration Selection and Construction

Based on the preliminary task description, the workcell is configured with a 7-DOF redundantserial-type robot, a 6-DOF articulate RRRS parallel robot, and a 1-DOF linear motion stage. Fromthe robot configuration optimization, a 4-DOF SCARA-type robot is sufficient to perform the task.Deploying a redundant robot here is to demonstrate that the proposed model-generation algorithmsused in SEMORS and in robot control are universally applicable for any configuration.

The configuration design of the parallel robot follows a systematic approach (Yang et al. 1999). Inprinciple, a 3-branch parallel structure is used because of the structure stiffness and dexterity. Eachbranch consists of three rotary joints (two are active and one is passive) and a passive spherical joint.Once the geometry is determined, the workspace analysis is performed. From the result of thisanalysis, the lengths of the rigid links and connectors are determined. Because of the modulardesign, the actuator modules can be freely located at the nine revolute joints. The workspace of therobot changes according to the locations of the actuator modules. A disk-shaped moving platform isattached to the three branches. An end-mill tool actuated by an intelligent motor is mounted at thecenter of the platform. This motor uses the same control interface as the standard actuator modules.Because of the lack of the force sensor, the task is only carried out in simulated manner, i.e., theend-mill tool only goes through the milling path without touching the surface of the workpiece.

The 1-DOF linear motion stage uses two standard modules: one rotary module to drive the linearslide and one gripper module to hold the workpiece, to ensure uniformity in the workcell control.The specifications of the robots and the motion stage are listed in Table 1.

Table 1 Specifications of the light-machining workcell

Light-machining workcell

7-DOF redundant serial robot

Work envelope Approx. sphere, SR ¼ 1,200 mm

Max speed 750 mm/s

Repeatability +/�0.10 mm

Max payload 5 kg (excluding end-effector)

Weight 16 kg (excluding base)

6-DOF RRRS articulate parallel robot

Work envelope Approx. hemisphere, SR ¼ 500 mm

Max speed 500 mm/s

Repeatability +/�0.05 mm

Max payload 25 kg (excluding end-effector)

Weight 30 kg (excluding base)

1-DOF linear motion stage

Effective stroke L ¼ 1,500 mm

Max speed 500 mm/s

Repeatability +/� 0.025 mm

Max payload 45 kg (excluding fixture)

Weight 35 kg

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 29 of 35

Page 30: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

• Workcell Construction and Fine-Tuning

After the robots and motion stage are constructed, the robot controllers are connected to therobots. Two Pentium II-based industrial PC robot controllers are used to perform high-leveltrajectory control of the serial robot and the parallel robot, respectively. The kinematic models ofboth serial and parallel robots are generated automatically in SEMORS and stored in the robotcontrollers. Kinematic calibration of both robots is performed before the operation. The kinematiccalibration is conducted by using articulate-typed coordinate measuring equipment, called “SpinArm.” The obtained calibration data is transferred to the robot controller and then SEMORScomputes and updates the corrected kinematic models of the robots automatically. Because of itssimplicity, the control of the motion stage is done by one of the robot controllers for thisimplementation.

• Finalize Task Sequence and Control of the Workcell Actions

With updated kinematic models, the detailed task sequence of all robots (Table 2) is laid out. Thetasks are then programmed into the respective robot controllers. The two robot controllers areconnected to a closed-loop workcell LAN running at 10MB/s. A separate notebook computer is alsoconnected to the workcell network performing supervisory control of the workcell through SEMORSrunning on the individual robot controllers. The task sequence of the workcell is monitored andsupervised by the notebook supervisor.

Based on the actual construction, to assemble the described 7-DOF serial-typed robot takes twousers about 30min. The time to construct the parallel robot requires two persons about 2 h because ofthe complexity of the structure. Adding the time to install the motion stage, calibrate the robots, andfine-tune the workcell hardware, it will take about 4 h in total to complete the entire workcell setupexcluding the time spent on the preliminary design stage.

Conclusion and Future Aspects of Modular Robots

In this chapter, we have presented the design principle, theoretical foundations, and also theimplementation of modular reconfigurable robots for industrial applications. On the module design,we pointed out that the robot design would follow the classification principle of modular productarchitecture that is commonly seen in engineering product design. On the modular robot theory, we

Table 2 Task sequence

Task sequence

1 Robot Aa picks up workpiece from fixture

2 Robot A places workpiece on the motion stage

3 Motion stage moves workpiece under Robot Ba

4 Robot B performs milling task

5 Robot A shifts locations of unprocessed workpieces

6 Robot B finishes milling task

7 Motion stage moves processed workpiece back

8 Robot A picks up processed workpiece from motion stage

9 Robot A places processed workpiece to the fixtureaRobot A: 7-DOF serial robot, Robot B: 6-DOF parallel robot

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 30 of 35

Page 31: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

have presented a generic method to automate the model generation for modular reconfigurablerobots based on a graph representation of robot geometry, called an assembly incidence matrix, andgeometry-independent model building algorithms for the kinematics, dynamics, and error models ofa robot. The AIMs of the assembly configuration of modular robots facilitate the determination ofoptimal robot configuration for a specific task using combinatorial optimization techniques. We alsopresented here an approach to solve the task-optimal problem using evolutionary algorithms withcustomized genetic operators based on the AIM of the robot. On the practice and implementation ofmodular robots for industrial applications, we have developed a modular robot control and simula-tion software application, SEMORS (Simulation Environment for MOdular Robot Systems). In thissoftware, only a small set of component database and kernel functions are kept in the robotcontroller, and the required robot models can be generated automatically. From the demonstrationmodular robot prototype, we confirm the advantage of using modular components in constructingthe complex robotic workcell with different configurations. The plug-and-play kinematics, dynam-ics, and calibration robot models are also verified through the actual implementation in the robotcontroller and the simulation software.

Future PerspectiveDue to the improvement of living standard in developing countries and ageing population in well-developed countries, manpower shortage in every aspect of the industry (manufacturing andnon-manufacturing) is pervasive. Deploying adaptable robotic technology for productivity improve-ment and automation is imperative. For more than 20 years of R&D inmodular robotics, a number ofmodular robotic systems have successfully entered the industry automation, education and enter-tainment markets. Schunk robotics represents a very good example of a highly integrated modularrobot system. Dynamixel and DARwIn-Op Humanoid Robot from Robotis (Korea) represent novelrobot actuator module design for highly integrated humanoid robot as well as a key roboticcomponent for diverse robotic application development. Lego Mindstorms Robot DevelopmentKit represents the integration of modular robots and modular product design for creative educationapplications. SmartMotor is a successful example of making robot actuator module as a stand-aloneintelligent motor module for wide industrial applications without integrated mechanical structures.These successful modular robotic systems indicate that modular design offers clear advantage in theareas of product variety, application variety, and creativity.

However, the cost of developing and manufacturing such systems, no matter at the module levelor at the system level, can still be a main concern from the system providers to the end users. The coststructure of a modular robot is highly associated with the design of the individual modules and thepossible types of modular robot systems to be conceived. From the development history of LEGObricks and Schunk PowerCube modules, it is clearly shown that the module design evolves frompossessing complex to simple functions (cost down) and increasing module varieties (enlarging userbase). The module design evolution results in market expansion and wide adoption. Hence, forreconfigurable modular manipulator and mobile systems, how to make the module and systemdesign meet the expectation of the end users is the most challenging R&D topic in the near future.

Acknowledgment

The author would like to acknowledge works contributed by team members of the project: Prof.Song Huat Yeo, Prof. Guang Chen, Dr. Guilin Yang, Prof. Peter Chen, Prof. Weihai Chen, Dr. Wei

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 31 of 35

Page 32: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Lin, Mr. In-Gyu Kang, Mr. Wee Kiat Lim, Mr. Edwin Ho, Mr. S. Ramachandran, Ms. Yan Gao, andMr. Chee Tat Tan. The editorial assistance and update of the manuscript fromDr. Qilong Yuan is alsoappreciated. This project was financially supported by the Singapore Institute of ManufacturingTechnology, Ministry of Education, Singapore, and Agency for Science, Technology and Research(ASTAR) SERC Grant 1225100005 under the Industrial Robotics Program.

References

Ambrose RO (1995) Interactive robot joint design, analysis and prototyping. In: Proceedings of theIEEE international conference on robotics and automation, Washington, DC, pp 2119–2124

Barrett Technology (2013) http://www.barrett.com/robot/index.htmBenhabib B, Zak G, Lipton MG (1989) A generalized kinematic modeling method for modular

robots. J Robot Syst 60(5):545–571Chen I-M (1994) Theory and applications of modular reconfigurable robotic systems. PhD thesis,

California Institute of Technology, Division of Engineering and Applied ScienceChen I-M (1996) On optimal configuration of modular reconfigurable robots. In: Proceedings of the

international conference on control, automation, robotics, and vision, Singapore, pp 1855–1859Chen I-M (2000) Realization of a rapidly reconfigurable robotic workcell. J Jpn Soc Precis Eng

66(7):1024–1030Chen I-M (2001) Rapid response manufacturing through reconfigurable robotic workcells. J Robot

Comput Integr Manuf 17(3):199–213Chen I-M, Burdick JW (1995) Determining task optimal modular robot assembly configurations. In:

Proceedings of the IEEE international conferene on robotics and automation, Nagoya,pp 132–137

Chen I-M, Burdick JW (1998) Enumerating non-isomorphic assembly configurations of a modularrobotic system. Int J Robot Res 17(7):702–719

Chen I-M, Yang G (1996) Configuration independent kinematics for modular robots. In: Proceed-ings of the IEEE international conference on robotics and automation, Minneapolis,pp 1845–1849

Chen I-M, Yang G (1997) Kinematic calibration of modular reconfigurable robots using product-of-exponentials formula. J Robot Syst 14(11):807–821

Chen I-M, Yang G, Kang IG (1999a) Numerical inverse kinematics for modular reconfigurablerobots. J Robot Syst 16(4):213–225

Chen I-M, Yeo SH, Chen G, Yang G (1999b) Kernel for modular robot applications – automaticmodeling techniques. Int J Robot Res 18(2):225–242

Chen I-M, Yang G, Tan CT, Yeo SH (2001) A local POE model for robot kinematic calibration.Mech Mach Theory 36(11):1215–1239

Cohen R, Lipton M, Dai M, Benhabib B (1992) Conceptual design of a modular robot. ASMEJ Mech Des 25:114–117

Cormen T, Leiserson C, Rivest R (1990) Introduction to algorithms. MIT Press, Cambridge,MA. ISBN 0262032937

Deo N (1974) Graph theory with applications to engineering and computer science. Prentice-Hall,New York. ISBN 0133634736

Dobrjanskyj L, Freudenstein F (1967) Some applications of graph theory to the structural analysis ofmechanisms. ASME J Eng Ind 89:153–158

Featherstone R (1987) Robot dynamics algorithms. Kluwer, Holland. ISBN 0898382300

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 32 of 35

Page 33: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Fukuda T, Nakagawa S (1988) Dynamically reconfigurable robot system. In: Proceedings of theIEEE international conferene on robotics automation, Philadelphia, pp 1581–1586

Hollerbach JM (1980) A recursive lagrangian formulation of manipulator dynamics anda comparative study of dynamics formulation complexity. IEEE Trans Syst Man Cybern10:730–736

Kelmar L, Khosla P (1988) Automatic generation of kinematics for a reconfigurable modularmanipulator system. In: Proceedings of the IEEE international conference on robotics andautomation, Philadelphia, pp 663–668

Khosla PK, Neuman C, Prinz F (1985) An algorithm for seam tracking applications. Int J Robot Res40(1):27–41

Kinova Robotics-The JACO robot arm (2013) http://kinovarobotics.com/products/jaco-research-edition/

Kutzer MDM, Moses MS, Brown CY, Scheidt DH, Chirikjian GS, Armand M (2010) Design ofa new independently-mobile reconfigurable modular robot. In: IEEE international conference onrobotics and automation, pp 2758–2764

Li B, Ma S, Liu J, Wang M, Liu T, Wang Y (2009) AMOEBA-I: a shape-shifting modular robot forurban search and rescue. J Adv Robot 23(9):1057–1083

Matsumaru T (1995) Design and control of the modular robot system: TOMMS. In: Proceedings ofthe IEEE international conference on robotics automation. Nagoya, pp 2125–2131

Michalewicz Z (1994) Genetic algorithms + data structures ¼ evolution programs, 2nd edn.Springer, Berlin. ISBN 540580905

Modular Robot – iMobot – Barobo (2013) http://www.barobo.com/Moubarak P, Ben-Tzvi P (2012) Modular and reconfigurable mobile robotics. Robot Auton Syst

60:1648–1663Murray R, Li Z, Sastry S (1994) A mathematical introduction to robotic manipulation. CRC Press,

Boca Raton. ISBN 0849379814Paredis CJJ, Khosla PK (1995) Design of modular fault tolerant manipulators. In: Goldberg K

(ed) Algorithmic foundations of robotics. A. K. Peters, Wellesley, pp 371–383. ISBN1568810458

Paredis C, Brown HB, Khosla P (1996) A rapidly deployable manipulator system. In: Proceedingsof the IEEE international conference on robotics automation, pp 1434–1439

Paredis CJJ, Brown HB, Khosla P (1997) A rapidly deployable manipulator system. Robot AutonSyst 21(3):289–304

Park FC, Bobrow JE (1994) A recursive algorithm for robot dynamics using lie groups. In:Proceedings of the IEEE international conference on robotics and automation, San Diego,pp 1535–1540

Park FC, Bobrow JE, Ploen SR (1995) A lie group formulation of robot dynamics. Int J Robot Res14(6):609–618

Robotnik (2013) http://robotnik.es/es/Rodriguze G, Jain A, Kreutz-Delgado K (1991) A spatial operator algebra for manipulator modeling

and control. Int J Robot Res 10(4):371–381Schunk Modular Robotics (2013) www.schunk-modular-robotics.comTesar D, Butler MS (1989) A generalized modular architecture for robot structures. ASME J Manuf

Rev 2(2):91–117Ulrich K (1995) The role of product architecture on the manufacturing firm. Res Policy 24:419–440Universal Robots (2013) http://www.universal-robots.com/

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 33 of 35

Page 34: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Wang W, Yu W, Zhang H (2010) JL-2: a mobile multi-robot system with docking and manipulatingcapabilities. Int J Adv Robot Syst 7(1):9–18

Wurst KH (1986) The conception and construction of a modular robot system. In: Proceedings of the16th International Symposium on Industrial Robotics (ISIR), pp 37–44

Yang G, Chen I-M (2000) Task-based optimization of modular robot configurations – MDOFapproach. Mech Mach Theory 35(4):517–540

Yang G, Chen I.-M, Lim WK, Yeo SH (1999) Design and kinematic analysis of modularreconfigurable parallel robots. In: Proceedings of the IEEE international conference on roboticsand automation, Detroit, pp 2501–2506

Yang G, Chen I-M, LimWK, Yeo SH (2001) Kinematic design of modular reconfigurable in-parallelrobots. Auton Robot 10(1):83–89

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 34 of 35

Page 35: Modular Robots - link.springer.com · Modular Robots I-Ming Chen* School of Mechanical and Aerospace Engineering, Nanyang Technological University, Singapore, Singapore Abstract Modularityisanimportant

Index Terms:

Accessibility matrix 7Assembly configuration evaluation function (ACEF) 22Assembly incidence matrix (AIM) 4Configuration optimization 21Connecting port 4Denavit-Hartenburg (D-H) method 8Dynamic model 17Forward kinematics 9Geometry-independent models 8Inverse kinematics 11Iteration 19

backward 19forward 19

Modular robot 3–5, 24components 5design 3representation 4simulation software 24

Newton-Euler equation 18Path matrix 8Reconfigurable modular manipulator 1–2Reconfigurable robotic workcell 26Recursive Newton-Euler algorithm 19SEMORS 24

Handbook of Manufacturing Engineering and TechnologyDOI 10.1007/978-1-4471-4976-7_100-1# Springer-Verlag London 2014

Page 35 of 35