## 1. Introduction

Throughout the ages, human beings have evolved in various aspects of society including politics, technology, etc. This is true of the age of mechanization in which rudimentary machines were developed and controlled by operators. The age of mechanization then gave dawn to the age of automation, where the operators were replaced by controllable machines. Humans have since taken on a passive supervisory role and less of an active control of these machines and the mechanized world is dawning on the age of autonomization. In this age, humans will regress further from their involvement with the daily activities of machines as the advancement of embedded computers, smart sensors and intelligent controllers will enable machines to operate autonomously. These include systems embedded with artificial intelligence and those that are able to change their structural configurations. Under different circumstances, such systems would adapt to changes in their surrounding environment by autonomously altering their configuration and function. The advantages of developing these intelligent reconfigurable systems include adaptability, reusability, convertibility, compactness, fault-tolerance and emergency behaviour (Koren et al., 1999).

Research into reconfigurable systems is primarily active in robotics. The main idea of developing reconfigurable systems is based on the use of modular components as building blocks (Yim et al., 2002). Several interesting modular reconfigurable robots have been proposed, and they may be classified into three categories: *manual-configuring, self-configuring, and self-assembly*.

Manual-configuring robots are often referred to as modular robots. They can only be reconfigured with some form of manual assistance and represented the first steps leading into the age of autonomization. The modular units are usually built with the embedded controllers connected to a host computer. The host computer has the ability to quickly recognize new configurations and automatically generate the kinematic and dynamic equations for control. Examples include the work at Stanford (Yim, 1994), and Carnegie Mellon University (CMU) (Unsal et al., 2000). More recently, a reconfigurable manufacturing cell was developed based on modular robotic components (Chen, 2001). His research team demonstrated that by using modular components they were able to quickly construct a parallel kinematic machine for machining and several serial robots for material handling.

Self-configuring robots cannot perform self-assembly. However, they can perform reconfiguration after a robotic system is assembled with some form of manual assistance, making further progress into the age of autonomization. Michael (Michael, 1995) developed what he called the fractal shape changing robot based on robotic cubes. These cubes are built with embedded active driving mechanisms. Once attached manually, these cubes can slide on each other's faces for reconfiguration. Since the cubes are made in different sizes and can be combined together, the robot is called the fractal shape changing robot.

Self-assembly robots are the robots with the highest level of reconfigurability because they can detach from and attach into a robotic system automatically. For example, a self-assembly robotic system was developed that uses electro-magnetic disks as the basic units that can attract and repel each other through computer control for automatic reconfiguration (Tomita et al., 1996). Reconfigurable systems like these and those with artificial intelligence represent what will define the age of autonomization.

As space flight and exploration is costly, reconfigurable systems for space applications have also been explored to provide more cost effective solutions to an array of problems. A two-dimensional foldable hexapod truss for space deployment was proposed (Onoda et al., 1996). A modular parallel robot, called TETROBOT, was designed based on tetrahedron modules that can be reconfigured for different applications (Hamlin and Sanderson, 1997). Variable geometry truss manipulators (VGTM) have been studied as reconfigurable support structures for space application (Horner, 1990). Reconfigurable mobile robots have been researched by a research team from MIT, JPL and CMU (Schenker et al., 2000). A light weight modular robot was recently proposed from MIT (Hafez et al., 2003). Space flight and exploration is definitely an area that will prosper greatly from the emergence of autonomization.

This chapter focuses on the development of a reconfigurable parallel robot capable of *on-the-fly* self-reconfiguration. The main idea is to utilize the modularity inherent in the parallel robots, which has previously been overlooked. Since most parallel robots are made of identical kinematic chains arranged in parallel fashion, all the components (mechanical and electrical) used in each individual kinematic chain, hereafter called branch, are the same. This provides a natural base for the development of reconfigurable systems. Also, the capability of on-the-fly self-reconfiguration represents inroads to autonomous parallel robotic systems.

The rest of the chapter is organized as follows. First, the design methodology is presented. A top-down system decomposition method is used to identify the modules required to build the reconfigurable system from the bottom-up. By using this top-down subsystem decomposition approach, the robotic system is decomposed from the system level to separate individual robots, then to subsystems and finally to the component level. To facilitate the design methodology, potential branch configurations are identified using the modular components and a mobility analysis is performed to identify the system constraints. Enumeration rules are established to eliminate the unacceptable branches for each base tripod based on the kinematic constraints required for reconfiguration. A parametric model is established to solve the constraint equations. Individual branch kinematics are established and the loop equations are solved. A workspace analysis is performed and a discrete system optimization yields the optimal parallel robot configuration.

## 2. Design methodology

The proposed reconfigurable parallel robot is constructed by two base tripods, each being a three degrees-of-freedom (DOF) parallel robot. The first tripod remains fixed to the moving platform, and the links of the second tripod are designed to be detachable from the moving platform. The detachable branches are then reconfigured into 2-DOF serial robotic arms. Fig. 1. shows a 6-DOF parallel robot that has been decomposed into two tripods; one with a typical moving platform, and one which has branches detached from the moving platform. By detaching one, two or all three branches of the second tripod, separately, the parallel robot can be reconfigured on-the-fly from 6-DOF to, 5, 4 or 3-DOF, respectively. Additionally, the detached links can then be used to perform collaborative work with the remaining parallel robot.

The proposed reconfigurable parallel not only provides innovation in autonomous reconfigurable system design but also stimulates new research of parallel robot kinematics. Since traditional parallel robots are not reconfigurable, the kinematics have been studied on a case-by-case basis for the particular parallel robot type, and have generally been restricted to 3-DOF and 6-DOF parallel robots. Also, reconfigurable robotic systems tend to require a halt in operations to allow for the robot to reconfigure itself either by itself or by some type of manual assistance. Here, there is no down-time for reconfiguration as the parallel robot is capable of on-the-fly self-reconfiguration. This enables the robot to quickly adapt to changes in its environmental surroundings as well as changes to task requirements. This single feature is extremely important in distinguishing the final design with other reconfigurable robots in service, where in-task adaptability and reconfiguration are not commonly found.

### 2.1. Design for reconfiguration

As mentioned in Section 1, the basic idea of designing any reconfigurable system is based on the use of modular components as building blocks. The design methodology used is based on the methodology called *Design for Reconfigurability* (DfR). Based on DfR, the design of a reconfigurable system can be described by the Axiomatic Design Theory (Suh, 1990) such that designing a reconfigurable system is defined as the minimization of the number of modules {Design Parameters} while maximizing its functionality {Function Modes}. Further discussion of this system design methodology can be found in (Chen et al., 2005).

A summary of function modes is summarized in Table 1. These function modes are in fact the design objectives, i.e. the reconfigurable parallel robot must be capable of performing the prescribed functions.

### 2.2. System decomposition

As a series of modules are required as building blocks for a reconfigurable system, the first step is to decompose the parallel robot into a series of common modules. For serial robots, the decomposition into common modules is generally straightforward as serial robots are a collection of links and joint actuators. These modules are then connected sequentially to build the final robot architecture. For parallel mechanisms, the decomposition of the robot system is not as straightforward due to the physical and mathematical constraints of the system. There does exist though a natural modularity that has generally been overlooked when dealing with parallel robots as will be shown.

From Fig. 1., a 6-DOF parallel manipulator system is separated into two individual 3-DOF tripods subsystems. Each tripod subsystem can further be decomposed into a series of branch subsystems with a common structural subsystem. The 6-DOF robot has only one base and one moving platform, thus the decomposition of the two tripods results in these also having a common base and moving platform. Without losing any generality, the branch subsystems for the two tripods are composed of a collection of link modules, passive joint modules and active joint modules (i.e. actuators). These modules represent the final level decomposition required to describe a generic parallel robotic system. Further decomposition is also possible and this is where the detailed design and part selection occur and is beyond the scope of this chapter.

This decomposition is further explained in Fig. 2. It is plain to see that the arrow on the left side of the figure indicates the direction taken for the system decomposition. The arrow on the right side of the figure is where the majority of the architecture design occurs. Once the building blocks (modules) of the reconfigurable system have been identified, then we can work our way from the bottom-up to establish the optimal system architecture. This is accomplished by first using the modules to form branch module candidates. A mobility analysis is performed and enumeration rules are used to eliminate those branch candidates that cannot fulfill the design requirements. A kinematic and workspace analysis is performed and then is used to arrive at the final optimal architecture design of the parallel robot. All of this is performed such that the final design can perform all of the function modes identified in Table 1.

We note that each level of decomposition brings an additional level of modularity. The physical modularity was described above. During the architecture design, the modularity inherent in the assembly of reconfigurable robots will be address. We also note that there is modularity in the mathematical computations and control for each system level. The kinematic computations for 6-DOF parallel manipulators, 3-DOF tripod manipulators, open-chain branches (including simple chains consisting of one joint) are well established. This is also true of their subsequent control laws and algorithms. Although this is beyond the scope of this chapter, it is a very important aspect of the advancement of reconfigurable systems.

## 3. Module identification

The module identification stage is the first and second part of the bottom-up architecture design as seen in Figure 2. The identification of the components is the first and the identification of the branch configurations is the second. For reconfigurable systems, the larger the cache of building block modules, the larger the solution space with a greater diversity of possible solutions.

### 3.1. Components

#### 3.1.1. Active joint modules

Active joint modules are the modules that are controllable. Currently, there are numerous commercially available simple actuation devices (having 1-DOF). They are categorized as rotational (revolute), or linear (prismatic). The topographical analysis (Tsai et al., 1998) uses these two categories of actuation devices to enumerate the configurations of some planar and spatial parallel manipulators. The revolute joint was decomposed into the standard rotational joint and a twist joint (Dash et al., 2005). Hereafter we will refer to these joints as transverse revolute joints (R_{T}), and axial revolute joints (R_{A}), respectively. We similarly decompose the prismatic joint into a fixed-length actuator (P_{F}) where a platform slides along a fixed guide track, and a variable length actuator (P_{V}) as most commonly seen in Gough-Stewart platforms. All four of these actuation devices are commercially available and are included in the identification of feasible branch modules. We also introduce a universal joint (U^{*}) that has one controllable DOF and one passive DOF as a possible active joint module. Kinematically, it is represented by the presence of two revolute joints whose axes intersect at a point and are orthogonal to each other. Physically one axis is attached to an actuation device.

#### 3.1.2. Passive joint modules

The active revolute joint modules and prismatic joint modules are also identified as passive modules by removing their ability to be controlled. The other common passive joint modules are identified as universal (U), spherical (S), and cylindrical (C).

#### 3.1.3. Link modules

The link modules are simply a means of connecting the active and passive joint modules to each other in series. These can vary in appearance and length depending on the task requirements, but those parameters are left for the detailed design phase, which is beyond the scope of this chapter.

#### 3.1.4. Structural components

The structural components of a parallel manipulator consist of the base and moving platform. The size and shape of these components vary depending on the task requirements but must be designed so that the based supports the various branches and the platform supports the end effector. Again, the specifics are left for the detailed design phase and are beyond the scope of this chapter.

### 3.2. Branch identification

Using a combinatorial analysis, the branch configurations can be enumerated for their potential feasibility as either a fixed branch or a detachable branch or both. In general each branch in a spatial parallel manipulator must consists of at least two links and three joints. Branches can consist of any number of joints and links such that the total branch DOF meets the mobility requirements. For a 6-DOF parallel manipulator with six branches, the branch DOF must be equal to six (more information on this is covered in the mobility analysis). The combinatorial analysis is limited to those branches that have two links and three joints for the following reasons:

Smaller branches (those with fewer joints and links) are easier to evaluate mathematically. With additional joints, there exists the possibility of multiple solutions for the forward and inverse kinematics of the active and passive joint variables. This situation is less likely, and sometimes impossible, for two-link, three-joint branches.

In both attached and detached configurations, they provide the minimal amount of joint-link combinations to maintain functionality. This will become more apparent during the architecture design phase.

Branches with a large numbers of links and joints require more physical constraints when converting from attached to detached configurations, thus making the structure itself more physically complicated. This is especially true in the case of individual detached arms. This is a direct result of the configurations presented in Table 1 and will also become apparent during the architecture design phase.

The fewer number of joints within the individual branches leads to a lesser chance of collision between the branches.

Using the five active joint modules and the seven passive joint modules a total of 78 branch configurations are identified as being theoretically possible. The only restriction placed on joint sequence is for the fixed-length prismatic joint in that it must either be placed at the base or platform position due to the structural advantages of having a rigid connection of the track. If it were to be place as the middle joint, then it would act as a variable length prismatic joint and lose all of its structural advantages. Using the notation stated above, Table 2. summarizes the various configurations.

## 4. Architecture design

The enumeration part of the design serves the purpose of defining what is deemed acceptable candidates for the fixed and detachable tripods. A mobility analysis is done to provide a link between the identified branches and the mobility requirements of both tripods and is important for the formation of many of the enumeration criteria.

### 4.1. Mobility analysis

From Fig. 1. and Table 1., it can be seen that the reconfiguration of the robot will change the robot constraints. For example, going from an attached to detached configuration, the robot must change its constraints in order to constrain the freedom released by the detached branch(es). Otherwise, the robot would be loose and uncontrollable. Hence, in order to understand how the robot constraints change during reconfiguration, a mobility analysis is required. As will be explained later on, solving the constraint equations is a priori to solving the inverse kinematics.

In general, the reconfigurable parallel robot under study can be categorized to have attached and detached configurations. The mobility requirements are thus different for different configurations. In the attached configuration, the parallel robot is a 6-DOF parallel robot. The mobility of a system is given by the following equation

where *F* denotes the mobility or the effective DOF of a parallel mechanism, λ is the order of the system (λ = 3 for planar motion, and λ = 6 for spatial motion), *n*
_{
l
} is the total number of the links, *n*
_{
j
} is the total number of the joints, and *f*
_{
i
} is the number of DOF for the *i*
^{
th
} joint.

For a parallel manipulator, the branch connectivity can be calculated using Euler's equation. Through some mathematical manipulation it can be shown that the sum of the connectivity, *C*
_{
k
}, of the *k*
^{
th
} branch is equal to the total DOF of the system

where *n*
_{
b
} is the number of attached branches. Further manipulation shows that the connectivity of each branch must be less than or equal to the order of the system, and it must be greater than or equal to the mobility of the moving platform

The full derivation has previously been derived and can be found in (Tsai, 1998). Table 3. shows a summary the mobility analysis for the various robot configurations, including the connectivity of the *k*
^{
th
} branch.

### 4.2. Enumeration criteria

With the branch configurations identified and connectivity constraints established, the enumeration process can now be performed to eliminate some of the branch configurations. Since there are two tripods which are functionally different, there are two sets of enumeration criterion for the elimination of branch configuration. There is some overlap in branch elimination criteria between the two tripods and these are addressed first followed by the tripod-specific enumeration rules.

#### 4.2.1. Fixed and detachable tripod enumeration criteria

*The active joint must be placed on, or near the base.* This requirement is what generally gives parallel robots their payload-to-weight advantages. If the active joints (i.e. motors) are placed at or near the base, then the majority of mass/inertia to be driven is in the platform and end effector. All configurations with the active joint at the platform are eliminated.

*A spherical joint must be located at the moving platform.* As will be shown later, the presence of a spherical joint in the branch is most advantageous if it is located at the moving platform. It provides a natural pivot point for the moving platform. Thus the elimination of all branches without a spherical joint, and those with spherical joint modules at the base or middle position is necessary.

*In the fully connected configuration, the motion profile for all branches must be spatial. In the fully detached configuration, the motion profile for both the individual fixed and detached tripod branches must be planar.* Although these may seem obvious, it helps in the elimination of some of the branch configurations that are not capable of these mobility requirements. For the fully detached configuration and those branches with kinematic constraints in the partially detached configurations, the plane of motion of the branch must orthogonal to the base and parallel to a plane passing through the joint at the base, and the base joint directly opposite to it. This eliminates all branch configurations with an active or passive axial revolute joint module.

After these enumeration criteria are applied, a total of 17 configurations remain as possibilities for the fixed and detachable tripod branches which are summarized in Table 4.

#### 4.2.2. Fixed branch enumeration criteria

*Fixed branches must have one lockable DOF.* As seen in Table 3., the connectivity requirements for the fixed branches change according to the number of the branches that are either attached or detached from the moving platform. A fully attached parallel robot configuration requires each branch to have a connectivity of 6-DOF and a fully detached parallel robot configuration requires each branch to have a connectivity of 5. Thus it is required that there exists a joint that have a lockable DOF. The lockable DOF must exist on a joint with 2-DOF for the following reasons:

If a single DOF joint is locked, it then forms a rigid bond between the two link modules that it is attached to, thus reducing the number of links in the branch from two to one. One link does not allow for proper articulation of the moving platform and therefore single DOF joints cannot be locked.

For the 3-DOF spherical joint, it is possible to lock out one of the DOF, but is not necessarily easy. Since, the spherical joint is positioned at the moving platform, locking one of these DOFs will cause the branch to have spatial motion, which as previously mentioned as unacceptable.

From this, there are three possible joint modules that are candidates for a lockable DOF; one axis of the passive universal joint module; the revolute axis of the passive cylindrical joint module, or; the passive axis of the 1 DOF controllable universal joint module. Although this rule does nothing to eliminate branch configurations, it is important to establish this criterion when it comes to the physical design of the robot itself.

*Fixed-length vs. variable length prismatic joints.* For structural considerations, having a fixed-length prismatic joint at the base is more advantageous than having a variable length prismatic joint. We thus eliminate the P_{V}US, P_{V}CS, and P_{V}U^{*}S branches.

*Branches with identical modules, but different sequences.* One of the previous enumeration criteria was that the active joint module and thus motor should be placed at the base or close to it (i.e. the second joint position). There are several remaining branch configurations that have the same joint modules, but vary in sequence. Again, the advantages of keeping the motor on the base itself as opposed to at the second joint enables the elimination of those branch configurations that have identical modules and the active joint module in the middle. Thus the UR_{T}S, CR_{T}S, and the R_{T}U^{*}S configurations.

As seen in Table 5., this does not eliminate all of the configurations with an active module in the middle joint position, rather just the ones that are less advantageous. A total of nine branch modules remain as candidates for the fixed branch tripod. Also shown is the configuration required for the branch(es) after reconfiguration into the 3, 4 or 5-DOF configurations. It is seen that there are six unique configurations after reconfiguration.

#### 4.2.3. Detachable branch enumeration criteria

*Detachable branches must transform from a closed loop 6-DOF connected arm, to a 2-DOF, serial arm.* To maintain usability of the detached arms, and maintain the requirement of planar motion in the fully detached or partially detached configurations, there must be two controllable axes. Since the arm will detach from the spherical joint module connection, there is still a total of 3-DOF and two links. One of these DOF is already controllable, so to satisfy the requirements, one of the other axes must be controllable, and the other lockable. For proper articulation, the control must be present at each joint location. This is summarized in Table 6. where the reconfiguration of the detachable arms are shown. It is seen that after reconfiguration, several of the branches are kinematically identical, but are not physically identical. The reconfiguration requires that passive universal joints become active transverse revolute joints, passive revolute joints become active while the passive axis on the 1-DOF controllable universal joint locks, and the passive cylindrical joint becomes an active variable length prismatic joint. Although, this enumeration criterion does not eliminate any branch modules, it is important as it establishes the kinematic and physical requirements that each branch must adhere to after reconfiguration.

Initial Active Joint | Configurations |

RT | RTUS → RTRT, URTS → RTRT, RTCS → RTPV, CRTS → PVRT |

PF | PFUS → PFRT |

PV | UPVS → RTPV |

U* | U*RTS → RTRT, RTU*S → RTRT, PFU*S → PFRT, U*PVS → RTPV |

Detachable branches must have acceptable reach beyond the height of the moving platform. It is obvious that the detachable branch must be able to reach the moving platform, but here we require that they extend beyond the position of the platform for greater usability. Although this requirement is ambiguous and there is no clear definition of what is acceptable, we eliminate those branches that have prismatic actuation after disconnection. It is clear to see that a 2-DOF robotic arm with two revolute joints has a larger potential reach than those with prismatic joints. The notion of potential reach is based on the length of the links and those links connected to revolute joints are traditionally longer in parallel manipulators than their prismatic counterparts.

*Branches with identical modules, but different sequences.* The four branches that reconfigure into the R_{T}R_{T} configuration are acceptable as candidates for the detachable branches, and all four cases require the second joint to be independently actuated. In the attached configuration however, only one joint is driven and therefore in this configuration it is beneficial to drive the joint at the base. After elimination, the only branch configurations that are candidates for the detachable tripod are the R_{T}US and the U^{*}R_{T}S.

*Motor placement.* With only two branch configurations remaining, the placement of the joint motors is the final enumeration criteria. Previously, we required that the motor be place at or near the base for the primary driven motor. In this case, there is a requirement that the first and second joint be driven when detached from the platform. In the case of the R_{T}US branch, the motion profile of the middle universal joint is always planar. This allows for the second joint to be driven remotely, i.e. belt driven with the motor place on the base as well. Having both motors placed on the base requires that the first motor drive only the mass/inertia of the links and not the second motor. Since the motion profile of the second joint of the U^{*}R_{T}S branch is not planar, it becomes much more difficult to drive the second joint motor remotely. It is for this reason that then we select the R_{T}US branch configuration with a remotely driven second joint as the branch configuration for the detachable branches, and no further enumeration and elimination is required.

### 4.3. Tripod configurations

Since we can pair each of the fixed-tripod branches with the detachable R_{T}US branches, there are a total of nine possible parallel robotic systems after enumeration. To further evaluate the possible configurations, a workspace analysis and comparison is used. To calculate the workspace of a parallel robot, the inverse kinematics model is used to search for reachable points. The next section deals with the development of the kinematics of each branch configuration as well as dealing with the constraint equations for the 3, 4 and 5-DOF configurations.

## 5. Robot kinematics

### 5.1. Parametric kinematic model

Parallel robots have inverse kinematics that can generally be solved geometrically. That is for a given end effector position and orientation, the joint variables can be solved directly without numerical methods. A hypothetical parallel robot is presented in Fig. 3. that shows the extensible branch model. From this model, solutions to all other branch configurations can be derived.

According to the coordinate systems defined in Figure 3, the position of the *i*
^{
th
} spherical joint attached to the moving platform can be given as

where p_{i} = [p_{ix} p_{iy} p_{iz}]^{T} is the position of the *i*
^{
th
} joint expressed in the global joint expressed in the global coordinate frame *O-xyz*, p_{
i
}’ presents the same point in the local coordinates *O'-x'y'z'* attached to the moving platform, h = [x_{c} y_{c} z_{c}]^{T} is the vector representing the position of the moving platform, and R is the rotation matrix of the moving platform.

Now let *m* be the number of the constrained branches, a complete set of the branch constraint equations may be presented as

where p_{
x
} is the vector containing *p*
_{
ix
} components of *m* constrained branches, p_{
y
} is the vector containing *p*
_{
iy
} components, and T = diag(tan α_{i})

Equation (5) represents a parametric model in terms of α_{i}, *p*
_{
ix
} and *p*
_{
iy
} that can be used to describe the branch constraint equations for all configurations of the reconfigurable robot. Depending on the robot configuration, constraint equations must be solved in order to define the motion of the moving platform. Table 7. describes which moving platform motions are constrained for each configuration. Note that the number of constraint equations required is identical to those listed in Table 3. A complete derivation of the constraint equations can be found in (Xi et al., 2006).

### 5.2. Branch module inverse kinematics

With the position of the *i*
^{
th
} spherical joint known as defined by the constraint equations (if any), then the inverse kinematics for the *i*
^{
th
} branch can be solved. As listed in the enumeration criteria, the motion of the *i*
^{
th
} spherical joint must be planar for the constrained branch configuration and spatial for the unconstrained branch configuration. This gives rise to a planar and spatial solution to the branch kinematics.

The solution to the *i*
^{
th
} branch kinematics is generally solved by the use of loop equations. That is, a loop of vectors that describes the links, base and platform is established in an effort to eliminate specific unknown information and create an algebraic solution to the joint variable. These solutions are derived such that it allows for the joint variable solution regardless of the configuration of the parallel robot. Thus there is no need to reform the kinematic equations when the robot is reconfigured from one configuration to another.

The following is a description of the loop equations for fixed-tripod branch configurations described in Table 5. As seen in Table 5., after reconfiguration there are six different reduced DOF branch configurations. Since the kinematics are applicable to the branch regardless of the robot configuration, the solutions presented cover all nine potential fixed-tripod branch configurations. Also, the detachable branch configuration is also a potential fixed branch configuration, thus the kinematics are automatically covered.

#### 5.2.1. R_{T}US and U^{*}R_{T}S branch kinematics

The first branch configuration is that which takes the form of the R_{T}R_{T}S when it is in a reduced DOF form. This includes the R_{T}US and U^{*}R_{T}S branch configurations. As shown in Fig. 4., the R_{T}R_{T}S branch module can be related to the extensible model using the following relation

If the first joint is a revolute joint, then the direction vector of the upper arm, denoted by

where *θ*
_{
i
} is the driving angle of the l_{2i
} arm, and αi is the same as defined in Fig. 3. By applying the constraint that the length of the l_{1i
} arm is constant, the following equation is obtained

Using Equation (8a) or (8b), the solution to the inverse kinematics can be solved for the planar cases (R_{T}R_{T}S). It can also be used for the R_{T}US configuration. For the U^{*}R_{T}S configuration, the solution to Equations (8a) and (8b) can only be solved if the passive rotation axis of the U^{*} joint is axial in nature. In other words, so long as the motion profile of the middle R_{T} joint is planar, then the direction vector
^{*} joint is not axial can be viewed in (Sabater et al., 2005).

#### 5.2.2. P_{F}US and P_{F}U^{*}S branch kinematics

The second branch configuration is that which takes the form of the P_{F}R_{T}S when it is in a reduced DOF form. This includes the P_{F}US and P_{F}U^{*}S branch configurations. As shown in Fig. 5., the extensible leg can be related to the P_{F}R_{T}S branch module by following loop equation

Here s_{
i
} is the vector representing the track platform traveling displacement parallel to the guide way, noting that b_{
i
} does not necessarily point to a physical point on the robot. If b_{
i
} were to end at the connection of the base and track, then the vector s_{
i
} does not only change in length, but also direction, which is not desirable. Furthermore, l_{
i
} is the vector representing the slide in space. Since the track is fixed and s_{
i
} acts parallel to the track, its direction vector, denoted
*s*
_{
i
} can be solved from the following equation

With the length of the guide way solved, if the branch is of the P_{F}U^{*}S configuration, then the joint variable *θ*
_{
i
} can be solved by solving Equation (10a) or (10b) for l_{
i
} and then using a four-quadrant arctangent

The loops Equations (10a) and (10b) can be solved for both the planar and spatial case since the direction the sliding arm is eliminated from the equations.

#### 5.2.2. UP_{V}S and U^{*}P_{V}S branch kinematics

The third branch configuration is that which takes the form of the R_{T}P_{V}S when it is in a reduced DOF form. This includes the UP_{V}S and U^{*}P_{V}S branch configurations. As shown in Fig. 6., the extensible leg model is the exact solution of the kinematics, thus

Thus the solution to the extensible leg is simply

If, the active joint variable is rotational instead of linear, then, a four-quadrant arctangent can be used to solve for *θ*
_{
i
}. We note that *s*
_{
i
} = [*s*
_{
ix
}
*s*
_{
iy
}
*s*
_{
iz
}]^{T}, then

Again, we note that the solution to the loop Equations (12a) and (12b) will hold for both the planar and spatial cases.

#### 5.2.4. P_{F}CS branch kinematics

The fourth branch configuration is that which takes the form of the P_{F}P_{V}S when it is in a reduced DOF form. This includes the P_{F}CS branch configuration. As shown in Fig. 7., the P_{F}P_{V}S branch module can be related to the extensible model using the following relation

The in plane the angle *φ*
_{
i
} is always known since the angles *η*
_{
i
}, *ξ*
_{
i
}, and *γ*
_{
i
} are physical parameters that are known constants. The direction vector of the upper arm, denoted by

yielding
_{
i
} can be found from the modified loop equation e_{
i
} = d_{
i
} – l_{2i}. The angle ν_{
i
} between the vector e_{
i
} and the guide way can be found using a four-quadrant arctangent

The Sine Law can then be used to find the distance of the track along the guide way and the length of the cylindrical joint along it's guide way if necessary.

Equation (16) only holds for the planar case. The solution to the kinematics for the spatial case must be solved numerically. In Equations (15a) and (15b), there are three unknowns, the lengths of *s*
_{
i
} and *l*
_{
1i
}, and the direction of l_{
2i
}, and there is no way to eliminate two of these unknowns to provide the means to solve the loop equation. It is thus not optimal to use the P_{
F
}CS branch configuration over those with analytical solutions for all kinematic cases and we therefore eliminate the P_{
F
}CS branch as a potential fixed tripod branch configuration.

#### 5.2.5. CP_{V}S branch kinematics

The fifth branch configuration is that which takes the form of the P_{V}P_{V}S when it is in a reduced DOF form. This includes the CP_{V}S branch configuration. As shown in Fig. 8., the P_{V}P_{V}S branch module can be related to the extensible model using the following relation

The angles *θ*
_{
i
} and *γ*
_{
i
} are known constants. Since the first joint is a cylindrical joint, the direction vector of the upper arm, denoted by
*ζ*
_{
i
} between the cylindrical joint guide way and the vector d_{
i
} can be calculated

The loop equation formed by d_{
i
} = l_{
i
} + s_{
i
} forms a triangle in space. Since the length of d_{
i
} is known, and the two interior angles γ_{
i
} and ζ_{
i
} are also known, then the joint variable *s*
_{
i
} can be solved for all planar and spatial cases by using the Sine Law.

#### 5.2.6. R_{T}CS branch kinematics

The sixth branch configuration is that which takes the form of the R_{T}P_{V}S when it is in a reduced DOF form. This includes the R_{T}CS branch configuration. As shown in Fig. 9., the second R_{T}P_{V}S branch module can be related to the extensible model using the following relation

The angle γ_{
i
}, is a known constant, thus the Sine Law can then be used to find the angle between guide way and the vector d_{
i
}, as well as the length of the cylindrical joint along it's guide way.

With the length of both legs known, the loop Equations (20a) and (20b) take on a form similar to the loop Equations (6a) and (6b). Equation (7) is then used to define

### 5.3. Detached branch kinematics

For the detached branches that become 2-DOF arms, the inverse kinematics is straightforward. When the three detachable branches form a three-fingered gripper, the problem falls into that of grasping kinematics (Montana, 1998). Furthermore, the proposed system provides an addition advantage in that the fixed tripod can be coordinated with the detachable tripod to perform tool and work change on the moving platform. Again, this adds another level of flexibility into the system.

## 6. Workspace analysis

With the kinematics established, the position workspace volume and boundary of the robot can be calculated. In each case, a grid of the independent variables as defined in Table 7. is searched. The finer the independent variable grid spacing, the closer the estimated workspace volume and boundary is to the true workspace volume and boundary. However this comes at a computational cost especially with the 5 and 6-DOF cases. At a preliminary architecture design phase, accuracy can be traded for low computational cost and faster computational time of the robot workspace. As the design evolves to the detailed design phase, accuracy is much more important and longer computations are required to achieve an accurate workspace volume and boundary.

### 6.1. Physical parameters

The shape and size of a robot's workspace is dependent on its physical parameters such as link lengths, joint limits, etc. These parameters may or may not be known at the architecture design phase depending on the requirements of the system. In order to evaluate the various configurations, the physical parameters for the base and moving platform are uniform throughout. The radius of the base, *b*
_{
i
}, is 100 mm and the radius of the moving platform, r, is 50 mm. In the 6-DOF case, the branches are spaced at 60 intervals. The spacing increases as necessary when the detachable branches are disconnected from the moving platform. The physical constraints for each branch configuration are described in Table 8.

Finally, we ignore the physical constraint that would be imposed due to the presence of the spherical joints. In reality, contact between the edge of the socket and the extension of the ball would impede further motion and thus affect the shape of the workspace. The alignment of the spherical joints is left to the detailed design phase, as careful design and alignment can alleviate this impedance.

### 6.2. Workspace

With the kinematic equations established and the physical parameters defined, the position workspace can finally be calculated. Table 9. shows the summary of workspace.

Note than the increase in DOF does not necessarily result in an increase in workspace volume. This is due to the constraints of the branches and not the kinematic constraints of the position and orientation of the moving platform. Also, in the 4 and 5 DOF cases, the spacing of the branches is not uniform and results in very odd shaped workspace boundaries. An example of the P_{F}US and P_{F}U^{*}S workspace is shown in Fig. 10.

## 7. Optimal configuration

The optimal configuration depends heavily on the type of task the robot is required to perform. Some examples for parallel robotics include:

Flight simulation test beds use 6-DOF hydraulically actuated UP_{V}S branches.

Machining tool applications use the P_{F}US branch configuration due to their structural stiffness.

Pick and place automation use planar Delta robots (specialized R_{T}US branches).

We further note that the optimization here is not the optimization of a continuous system. Here, there are five discrete systems that require some form of comparison to evaluate their strengths and weaknesses. There are many methods of evaluating the merits of discrete systems. These usually include some for of design decision matrix and there are many works available that covers this topic. All of these methods require a certain degree of designer input and different designers will form their decision matrices different. Once an architecture is chosen, then continuous optimization algorithms can be used.

A very simple a pair-wise comparison of the discrete systems against each of for the specified functional requirements is used to arrive at the optimal configuration (Salustri, 2008). Using this design decision method, the optimal architecture of the parallel robot is the P_{F}US configuration. This robot configuration is currently being developed at Ryerson University and is shown in Figure 11 and the actual prototype is shown in Fig. 12. Also in development, is a universal joint capable of locking one DOF in order to satisfy the branch constraint requirements previously described.

## 8. Conclusion

A novel method for the architecture design of a reconfigurable parallel robot is presented based on common actuation devices. System design techniques are used to classify parallel robot modules and enumeration rules are established to determine the feasible robot architectures. Branch kinematics are developed and a workspace analysis is performed. An optimal design is selected from the remaining discrete robot configurations. The final design is a self-reconfigurable parallel robot that has been ability to perform on-the-fly reconfiguration. The proposed reconfigurable parallel robot not only provides innovation in reconfigurable system design but also stimulates new research into parallel robot kinematics.