## 1. Introduction

Parallel manipulators are robotic devices that differ from the more traditional serial robotic manipulators by their kinematic structure. Parallel manipulators are composed of multiple closed kinematic loops. Typically, these kinematic loops are formed by two or more kinematic chains that connect a moving platform to a base, where one joint in the chain is actuated and the other joints are passive. This kinematic structure allows parallel manipulators to be driven by actuators positioned on or near the base of the manipulator. In contrast, serial manipulators do not have closed kinematic loops and are usually actuated at each joint along the serial linkage. Accordingly, the actuators that are located at each joint along the serial linkage can account for a significant portion of the loading experienced by the manipulator, whereas the links of a parallel manipulator generally need not carry the load of the actuators. This allows the parallel manipulator links to be made lighter than the links of an analogous serial manipulator. The most noticeable interesting features of parallel mechanisms being:

High payload capacity.

High throughput movements (high accelerations).

High mechanical rigidity.

Low moving mass.

Simple mechanical construction.

Actuators can be located on the base.

However, the most noticeable disadvantages being:

They have smaller workspaces than serial manipulators of similar size.

Singularities within working volume.

High coupling between the moving kinematic chains.

### 1.1. Prior work

Among different types of parallel manipulators, the Gough-Stewart platform has attracted most attention because it has six degrees of freedom (DOF). It was originally designed by Stewart, 1965 [17]. Generally, this manipulator has six limbs. Each one is connected to both the base and the moving platform by spherical joints located at each end of the limb.

Actuation of the platform is typically accomplished by changing the lengths of the limbs. Although these six-limbed manipulators offer good rigidity, simple inverse kinematics, and high payload capacity, their forward kinematics are difficult to solve, position and orientation of the moving platform are coupled and precise spherical joints are difficult to manufacture at low cost.

To overcome the above shortcomings, parallel manipulators with fewer than six degrees of freedom have been investigated. For examples, Ceccarelli, 1997 [2] proposed a 3-DOF parallel manipulator (called CaPaMan) in which each limb is made up of a planar parallelogram, a prismatic joint, and a ball joint. But these manipulators have coupled motion between the position and orientation of the end-effector. The 3-*RRR* (Revolute Revolute Revolute) spherical manipulator was studied in detail by Gosselin and Angeles, 1989 [7].

Several spatial parallel manipulators with a rotational moving platform, called rotational parallel manipulators (RPMs), were proposed [4, 10, and 44]. Clavel, 1988 [3] at the Swiss Federal Institute of Technology designed a 3-DOF parallel manipulator that does not suffer from the first two of the listed disadvantages of the Stewart manipulator. Closed-form solutions for both the inverse and forward kinematics were developed for the DELTA robot [13]. The DELTA robot has only translational degrees of freedom. Additionally, the position and orientation of the moving platform are uncoupled in the DELTA design. However, the DELTA robot construction does employ spherical joints. Tsai, 1996 [20] presented the design of a spatial 3-*UPU* (Universal Prismatic Universal) manipulator and pointed out the conditions that lead to pure translational motion and its kinematics was studied further by Di-Gregorio and Parenti-Castelli, 1998 [5]. Tsai et al. [20, and 21] designed a 3-DOF TPM (Translational Parallel Manipulator) that employs only revolute joints and planar parallelograms. Tsai and Joshi, 2002 [18] analyzed the kinematics of four TPMs for use in hybrid kinematic machines. Carricato and Parenti-Castelli, 2001 [1] developed a family of 3-DOF TPMs. Fang and Tsai, 2002 [6] presented a systematic methodology for structure synthesis 3-DOF TPMs using the theory of reciprocal screws. [11]

Han Sung Kim and Lung-Wen Tsai [11] presented a parallel manipulator called CPM (figure 1) that employs only revolute and prismatic joints to achieve translational motion of the moving platform. They described its kinematic architecture and discussed two actuation methods. For the rotary actuation method, the inverse kinematics provides two solutions per limb, and the forward kinematics leads to an eighth-degree polynomial. Also, the rotary actuation method results in many singular points within the workspace. On the other hand, for the linear actuation method, there exists a one-to-one correspondence between the input and output displacements of the manipulator. Also, they discussed the effect of misalignment of the linear actuators on the motion of the moving platform. They suggested a method to maximize the stiffness to minimize the deflection at the joints caused by the bending moment because each limb structure is exposed to a bending moment induced by the external force exerted on the end-effector.

## 2. Manipulator description and kinematics

### 2.1. Manipulator structure

The Cartesian Parallel Manipulator, shown in figure 1, consists of a moving platform that is connected to a fixed base by three limbs. Each limb is made up of one prismatic and three revolute joints and all joint axes are parallel to one another.

### 2.2. Kinematic structure

The kinematic structure of the CPM is shown in figure 2 where a moving platform is connected to a fixed base by three PRRR (Prismatic Revolute Revolute Revolute) limbs. The origin of the fixed coordinate frame is located at point O and a reference frame XYZ is attached to the fixed base at this point. The moving platform is symbolically represented by a square whose length side is 2L defined by B_{1}, B_{2}, and B_{3} and the fixed base is defined by three guide rods passing through A_{1}, A_{2}, and A_{3}, respectively. The three revolute joint axes in each limb are located at points A_{i}, M_{i}, and B_{i}, respectively, and are parallel to the ground-connected prismatic joint axis. Furthermore, the three prismatic joint axes, passing through point A_{i}, for i = 1, 2, and 3, are parallel to the X, Y, and Z axes, respectively. Specifically, the first prismatic joint axis lies on the X-axis; the second prismatic joint axis lies on the Y axis; and the third prismatic joint axis is parallel to the Z axis. Point P represents the center of the moving platform. The link lengths are L_{1}, and L_{2}. The starting point of a prismatic joint is defined by d_{0i} and the sliding distance is defined by d_{i} - d_{0i} for i = 1, 2, and 3.

### 2.3. Kinematics constraints

For this analysis, the position of the end-effector is considered known, and is given by the position vector P= [x, y, z] which defines the location of P at the center of the moving platform in the XYZ coordinate frame. The inverse kinematics analysis produces a set of two joint angles for each limb (*θ*
_{
i1
} and *θ*
_{
i2
} for the i^{th} limb) that define the possible postures for each limb for the given position of the moving platform.

#### 2.3.1. The first limb

A schematic diagram of the first limb of the CPM is sketched in figure 3, and then the relationships for the first limb are written for the position P[x, y, z] in the coordinate frame XYZ.

y= L_{1} cos θ_{11}+L_{2} cos θ_{12}+L

z= L_{1} sin θ_{11}+L_{2} sin θ_{12}

#### 2.3.2. The second limb

A schematic diagram of the second limb of the CPM is sketched in figure 4, and then the relationships for the second limb are written for the position P[x, y, z] in the coordinate frame XYZ.

#### 2.3.3. The third limb

A schematic diagram of the third limb of the CPM is sketched in figure 5, and then the relationships for the third limb are written for the position P[x, y, z] in the coordinate frame XYZ.

### 2.4. Linear actuation method

As described by Han Sung Kim and Lung-Wen Tsai [11], for the linear actuation method, a linear actuator drives the prismatic joint in each limb whereas all the other joints are passive. This method has the advantage of having all actuators installed on the fixed base. The forward and inverse kinematic analyses are trivial since there exists a one-to-one correspondence between the end-effector position and the input joint displacements. Referring to figure 2, each limb constrains point *P* to lie on a plane which passes through point *A*
_{
i
} and is perpendicular to the axis of the linear actuator. Consequently, the location of *P* is determined by the intersection of three planes. A simple kinematic relation can be written as

## 3. Analysis of manipulator dynamics

An understanding of the manipulator dynamics is important from several different perspectives. First, it is necessary to properly size the actuators and other manipulator components. Without a model of the manipulator dynamics, it becomes difficult to predict the actuator force requirements and in turn equally difficult to properly select the actuators. Second, a dynamics model is useful for developing a control scheme. With an understanding of the manipulator dynamics, it is possible to design a controller with better performance characteristics than would typically be found using heuristic methods after the manipulator has been constructed. Moreover, some control schemes such as the computed torque controller rely directly on the dynamics model to predict the desired actuator force to be used in a feedforward manner. Third, a dynamical model can be used for computer simulation of a robotic system. By examining the behavior of the model under various operating conditions, it is possible to predict how a robotic system will behave when it is built. Various manufacturing automation tasks can be examined without the need of a real system. Several approaches have been used to characterize the dynamics of parallel manipulators. The most common approaches are based upon application of the Newton-Euler formulations, and Lagrange’s equations of motion[19]. The traditional Newton-Euler formulation requires the equations of motion to be written once for each body of a manipulator, which inevitably leads to a large number of equations and results in poor computational efficiency. The Lagrangian formulation eliminates all of the unwanted reaction forces and moments at the outset. It is more efficient than the Newton-Euler formulation. However, because of the numerous constraints imposed by the closed loops of a manipulator, deriving explicit equations of motion in terms of a set of independent generalized coordinates becomes a prohibitive task. To simplify the problem, additional coordinates along with a set of Lagrangian multipliers are often introduced. [19]

### 3.1. Lagrange based dynamic analysis

It can be assumed that the first rod of each limb is a uniform and its mass is m_{1}. The mass of second rod of each limb is evenly divided between and concentrated at joints M_{i} and B_{i}. This assumption can be made without significantly compromising the accuracy of the model since the concentrated mass model of the connecting rods does capture some of the dynamics of the rods. Also, the damping at the actuator is disregarded since the Lagrangian model does not readily accommodate viscous damping as is assumed for the actuators.

The Lagrangian equations are written in terms of a set of redundant coordinates. Therefore, the formulation requires a set of constraint equations derived from the kinematics of a mechanism. These constraint equations and their derivatives must be adjoined to the equations of motion to produce a number of equations that is equal to the number of unknowns. In general, the Lagrange multiplier approach involves solving the following system of equations:[19]

For j =1 to n, where

*j* : is the generalized coordinate index,

*n*: is the number of generalized coordinates,

*i* : is the constraint index,

*q*
_{
j
}: is the j^{th} generalized coordinate,

*k* : is the number of constraint functions,

*L* : is the Lagrange function, where L= T− V,

*T* : is the total kinetic energy of the manipulator,

*V* : is the total potential energy of the manipulator,

*f*
_{
i
} : is a constraint equation,

*Q*
_{
j
} : is a generalized external force, and

Theoretically, the dynamic analysis can be accomplished by using just three generalized coordinates since this is a 3 DOF manipulator. However, this would lead to a cumbersome expression for the Lagrange function, due to the complex kinematics of the manipulator. So we choose three redundant coordinates which are *θ*
_{
11,
}
*θ*
_{
21
} and *θ*
_{
31
} beside the generalized coordinates x, y, and z. Thus we have *θ*
_{
11,
}
*θ*
_{
21
}, *θ*
_{
31
},, x, y, and z as the generalized coordinates. Equation 11 represents a system of six equations in six variables, where the six variables are
*Q*
_{
j
} for j = 4, 5, and 6. The external generalized forces, *Q*
_{
j
} for j=1, 2, and 3, are zero since the revolute joints are passive. This formulation requires three constraint equations, *f*
_{
i
} for i = 1, 2, and 3, that are written in terms of the generalized coordinates.

### 3.2. Derivation of the manipulator‘s dynamics

#### 3.2.1. The kinetic and potential energy of the first limb

Referring to figure 6, the velocities of A_{1} (the prismatic joint of the first limb), A_{2} and A_{3} are
_{1} M_{1} is
_{1} M_{1}, A_{2} M_{2}, and A_{3} M_{3} is
_{3} is the mass of each prismatic joint (A_{1}, A_{2}, and A_{3}). So, the total kinetic energy of the first limb, *T*
_{
1
}, is

The total potential energy of the first limb, *V*
_{
1
},is

#### 3.2.2. The kinetic and potential energy of the second limb

Referring to figure 7, if the angular velocity of the rod A_{2} M_{2} is
*T*
_{
2
} is

The total potential energy of the second limb, V_{
2
}, is given by

#### 3.2.3. The kinetic and potential energy of the third limb

Referring to figure 8, the total kinetic energy of the second limb, *T*
_{
3
} is

The total potential energy of the third limb, *V*
_{
3
}, is

#### 3.2.4. Derivation of the Lagrange equation

From equations 12, 14, and 16, the total kinetic energy of the manipulator *T* is given by:

where m_{4} is the mass of the tool. From equations 13, 15, and 17, the total potential energy *V* of the manipulator is calculated relative to the plane of the stationary platform of the manipulator, and is found to be:

The Lagrange function is defined as the difference between the total kinetic energy, *T*, and the total potential energy *V*: *L= T− V*

Where:

#### 3.2.5. The constraint equations

Differentiation of equation 3 with respect to time yields

Differentiation of equation 6 with respect to time yields

Differentiation of equation 9 with respect to time yields

The equations 27, 28, and 29 are rearranged so as to produce:

Where

#### 3.2.6. Taking the derivatives of the Lagrange function with respect to *θ*
_{
11
}

(Q_{1}, Q_{2} and Q_{3} =0 since the revolute joints are passive)

#### 3.2.7. Taking the derivatives of the Lagrange function with respect to *θ*
_{
21
}

#### 3.2.8. Taking the derivatives of the Lagrange function with respect to *θ*
_{
31
}

Rearrangement of equations 31, 32, and 33 produces:

Differentiation equation 30 with respect to time yields

Substituting into equation 34 yields

#### 3.2.9. Taking the derivatives of the Lagrange function with respect to X

where *F*
_{
x
}, *F*
_{
x
} and *F*
_{
x
} are the forces applied by the actuator for the first, second and third limbs.

#### 3.2.10. Taking the derivatives of the Lagrange function with respect to Y

#### 3.2.11. Taking the derivatives of the Lagrange function with respect to Z

Rearrangement of equations 36, 37, and 38 produces:

Substituting into equation 35 yields

The dynamic equation of the whole system can be written as

Where

where *q* is the 3×1 vector of joint displacements,
*F* is the 3×1 vector of applied force inputs, *M(q)* is the manipulator inertia matrix,
*K(q)* is the vector of gravitational forces which is the 3×1 vector of gravitational forces due to gravity. The Lagrangian dynamics equation, equation 39, possess important properties that facilities analysis and control system design. Among theses are [12]: the *M(q)* is a 3×3 symmetric and positive definite matrix and the matrix

## 4. Controller design

### 4.1. Introduction

The control problem for robot manipulators is the problem of determining the time history of joint inputs required to cause the end-effector to execute a commanded motion. The joint inputs may be joint forces or torques depending on the model used for controller design.

Position control and trajectory tracking are the most common tasks for robot manipulators; given a desired trajectory, the joint force is chosen so that the manipulator follows that trajectory. The control strategy should be robust with respect to initial condition errors, sensor noise, and modeling errors. The primary goal of motion control in joint space is to make the robot joints *q* track a given time varying desired joint position *q*
_{
d
}. Rigorously, we say that the motion control objective in joint space is achieved provided that
*e(t)=q*
_{
d
}
*(t) - q(t)* denotes the joint position error. Although the dynamics of the manipulator‘s equation is complicated, it nevertheless is an idealization, and there are a number of dynamic effects that are not included in this equation. For example, friction at the joints is not accounted for in this equation and may be significant for some manipulators. Also, no physical body is completely rigid. A more detailed analysis of robot dynamics would include various sources of flexibility, such as elastic deformation of bearings and gears, deflection of the links under load, and vibrations.

### 4.2. PID control versus model based control

The PID controller is a single-input/single-output (SISO) controller that produces a control signal that is a sum of three terms. The first term is proportional (P) to the positioning error, the second term is proportional to the integral (I) of the error, and the third is proportional to the derivative (D) of the error. The PID (or PD) type is usually employed in industrial robot manipulators because it is easy to implement and requires little computation time during real time operation. This approach views each actuator of the manipulator independently, and essentially ignores the highly coupled and nonlinear nature of the manipulator. The error between the actual and desired joint position is used as feedback to control the actuator associated with each joint. However, independent joint controllers can not achieve a satisfactory performance due to their inherent low rejection of disturbances and parameter variations. Because of such limitation, model based control algorithms were proposed [14] that have the potential to perform better than independent joint controllers that do not account for manipulator dynamics. However, the difficulty with the model based controller is that it requires a good model of the manipulator inverse dynamics and good estimates of the model parameters, making this controller more complex and difficult to implement than the non-model based controller. The model based control scheme was intensively experimentally tested for example the experimental evaluation of computed torque control was presented in [8].

### 4.3. PD control with position and velocity reference

The first PD control law is based on the position and velocity error of each actuator in the joint space. To implement the joint control architecture, the values for the joint position error and the joint rate error of the closed chain system are used to compute the joint control force *F*. [36]

Where
*K*
_{
D
} and *K*
_{
P
} are 3 ×3 diagonal matrices of velocity and position gains. Although this type of controller is suitable for real time control since it has very few computations compared to the complicated nonlinear dynamic equations, there are a few downsides to this controller. It needs high update rate to achieve reasonable accuracy. Using local PD feedback law at each joint independently does not consider the couplings of dynamics between robot links. As a result, this controller can cause the motor to overwork compared to other controllers presented next.

### 4.4. PD Control with gravity compensation

This is a slightly more sophisticated version of PD control with a gravitational feedforward term. Consider the case when a constant equilibrium posture is assigned for the system as the reference input vector *q*
_{
d
}
*.* It is desired to find the structure of the controller which ensures global asymptotic stability of the above posture. The control law *F* is given by: [36]

It has been shown [15] that the system is asymptotically stable but it is only proven with constant reference trajectories. Although with varying desired trajectories, this type of controller cannot guarantee perfect tracking performance. Hence, more dynamic modeling information is needed to incorporate into the controller.

### 4.5. PD control with full dynamics feedforward terms

This type of controller augments the basic PD controller by compensating for the manipulator dynamics in the feedforward way. It assumes the full knowledge of the robot parameters. The key idea for this type of controller is that if the full dynamics is correct, the resulting force generated by the controller will also be perfect. The controller is given by [16]

If the dynamic knowledge of the manipulator is accurate, and the position and velocity error terms are initially zero, the applied force

is sufficient to maintain zero tracking error during motion. This controller is very similar to the computed torque controller, which is presented next. The difference between these two controllers is the location of the position and velocity correction terms. This controller is less sensitive to any mass changes in the system. For example, if the robot picks up a heavy load in the middle of its operation, this controller is likely to respond to this change slower compared to computed torque controller [9]. The advantage of this controller is that once the desired trajectory for a given task has been specified, then the feedforward terms relying on the robot dynamics

### 4.6. Computed torque control

This controller is developed for the manipulator to examine if it is possible to improve the performance of the trajectory tracking of the manipulator by utilizing a more complete understanding of the manipulator dynamics in the controller design. This controller employs a computed torque control approach, and it uses a model of the manipulator dynamics to estimate the actuator forces that will result in the desired trajectory. Since this type of controller takes into account the nonlinear and coupled nature of the manipulator, the potential performance of this type of controller should be quite good. The disadvantage of this approach is that it requires a reasonably accurate and computationally efficient model of the inverse dynamics of the manipulator to function as a real time controller. The controller computes the dynamics online, using the sampled joint position and velocity data. The key idea is to find an input vector, *F*, as a function of the system states, which is capable to realize an input/output relationship of linear type. It is desired to perform not a local linearization but a global linearization of system dynamics obtained by means of a nonlinear state feedback. Using the computed torque approach with a proportional-derivative (PD) outer control loop, the applied actuator forces are calculated at each time step using the following force law as described by Lewis, 1993 [25]:

where *F* is the force applied to input links, *K*
_{
D
} is the diagonal matrix of the derivative gains, *K*
_{
P
} is the diagonal matrix of the proportional gains, and *e* is the vector of the position errors of the input links,
*M*
^{
-1
}
*(q)*, and substituting the relationship,

This relationship can be used to select the gains to give the desired nature of the closed loop error response since the solution of equation 44 provides a second order damped system with a natural frequency of

Since the equation 44 is linear, it is easy to choose *K*
_{
D
} and *K*
_{
P
} so that the overall system is stable and *e →* 0 exponentially as *t→∞*. Usually, if *K*
_{
D
} and *K*
_{
P
} are positive diagonal matrices, the control law 43 applied to the system 39 results in exponentially trajectory tracking.

It is customary in robot applications to take the damping ration
*K*
_{
D
} and *K*
_{
P
} are determined by setting the gains to maintain the following relationship:

If the error response is critically damped. Hence, the general solution of equation 44 is:

where *C*
_{
1
} and *C*
_{
2
} are constants.

## 5. Trajectory planning and simulation

### 5.1. Introduction

The computer simulation is the first step to verify the performance of the controllers because it is an ideal way of comparing performance of various motion controllers. Although computer simulation has much fewer disturbances compared to real experiments, factors such as the integration estimation and sampling rate can cause the controllers to behave differently than the mathematical prediction.

### 5.2. Tracking accuracy

In this research, the main purpose for developing the motion controllers is to obtain a good trajectory tracking capability. The performance of each control method is evaluated by comparing the tracking accuracy of the end-effector. The tracking accuracy is evaluated by the *Root Square Mean Error* (RSME). The end-effector error is defined as

where e_{x}, e_{y} and e_{z} are the position errors in x-, y-, and z-axis given in manipulator’s workspace coordinates.

Where *n* is the number of the samples.

### 5.3. Trajectory planning

In controlling the manipulator using any types of joint space controllers, any sudden changes in desired joint angle, velocity, or acceleration can result in sudden changes of the commanded force. This can result in damages of the motors and the manipulator. Here, the manipulator is given a task to move along careful preplanned trajectories without any external disturbances or no interaction with environment. The desired trajectory is simulated using all motion controllers presented in the previous chapter and the tracking accuracy *RSME* is obtained to be compared. The simulation is used to find a set of minimum proportional gain *K*
_{
P
} and derivative gain *K*
_{
D
} that minimized *RSME*. It must be considered that the actuators can not generate forces larger than 120 Newtons. The values of the physical kinematic and dynamic parameters of the CPM are given in table 1 and table 2.

The sample trajectory of the end-effector is chosen to be a circular path with the radius of 0.175 meters and its center is O(0.425,0.425,0.3). This path is designed to be completed in 4 seconds when the end-effector reaches the starting point P1 (0.6, 0.425, 0.3) again with constant angular velocity

### 5.4. Simulation results

To investigate each controller’s performance, computer simulation, carried out in Matlab, is used in this thesis. The robot dynamic model, developed earlier, is constructed. The sample trajectory, presented in the previous section, is generated and stored offline. The environmental disturbances are ignored and full knowledge of the manipulator dynamics can be assumed. Hence, the optimal performance of each controller can be obtained and compared. The simulation results are presented in table 3.

#### 5.4.1. PD control with position and velocity reference

It was required that the robot achieved the desired trajectory with a position error less than 3 x 10^{-3} m after 0.3 seconds.

#### 5.4.2. PD control with gravity compensation

It was required that the robot achieved the desired trajectory with a position error less than 3 x 10^{-4} m after 0.3 seconds.

#### 5.4.3. PD control with full dynamicsfFeedforward terms

It was required that the robot achieved the desired trajectory with a position error less than 10^{-5} m after 0.3 seconds.

#### 5.4.4. Computed torque control

The initial conditions of the error and its derivative of our sample trajectory of the End-effector,
_{1} and c_{2} in equation 47. Then, the solution of this equation is

Equation 50 suggests that the derivative gain *K*
_{
D
} should be a maximum value to achieve the desired critical damping but the actuator force cannot exceed more than 120 Newtons. Using this criterion, the simulation results are presented in table 3. The position and velocity errors of the end-effector obtained from the controllers and the actuator forces required by these controllers are shown in figures 11 to 22.

## 6. Conclusions

The research presented in this dissertation establishes the CPM as a viable robotic device for three degrees of freedom manipulation. The manipulator offers the advantages associated with other parallel manipulators, such as light weight construction; while avoiding some of the traditional disadvantages of parallel manipulators such as the extensive use of spherical joints and coupling of the platform orientation and position. The CPM employs only revolute and prismatic joints to achieve translational motion of the moving platform. The main advantages of this parallel manipulator are that all of the actuators can be attached directly to the base, closed-form solutions are available for the forward and inverse kinematics, and the moving platform maintains the same orientation throughout the entire workspace. From simulations done in this research, performance of various motion controllers are studied and compared. Although the simple PD controller with only position and velocity reference is easy to implement and no knowledge of the system is needed to develop this type of controller, the tracking ability is very poor compared to the rest of the controllers used in this thesis. At the next step, when partial dynamic modeling information is incorporated into the controller, the PD controller with gravity compensation is implemented. The simulation results show a significant improvement in tracking ability from a simple PD controller. Next, the verification is needed to determine if complete mathematical modeling knowledge is needed to give the controller complete advantage in motion control. Hence, the PD controller with full dynamic feedforward terms and computed torque controller are implemented and put to the test. The model based controllers such as computed torque and PD control with full dynamic feedforward terms can generate force commands more intelligently and accurately than simple non-model based controllers. Hence, the need for studying dynamics of robot manipulator as well as having a good understanding of various basic motion controller theories are important in designing and controlling motion of the robot to achieve the highest quality and quantity of work. The simulation results show that the computed torque controller gives the best performance. This is a result of the computed torques canceling the nonlinear components of the controlled system. From the observations seen in this work, one can see the motivation for engineers to develop more advanced controllers that not only know the dynamic model of the manipulator, but can also detect if the dynamic is changed and can tune itself accordingly (i.e. adaptive control).

## 7. Future work

The effect of some unknown parameters such as the friction and the nonlinear factors introduced by the motors and the gear boxes which may be obtained by experimental measurements and through the identification methods can be studied.

The performance of model based control relies on an accurate model of a system. However, identifying the accurate dynamic model of a system is very difficult. Therefore, effective controllers for the versatile application of parallel robots should be developed. Adaptive control has the potential to improve the tracking accuracy because it updates the unknown parameters online. Adaptive control algorithm is too complicated to be utilized in high speed applications. In such applications, robust independent joint control is a prospective method to improve the performance of simple PD control.

*Adaptive Neuro Fuzzy Inference System*(*ANFIS*) controller can be used for each active joint to generate the required control system, then its performance is compared with the conventional controllers. Although many of model based methods have been found and they provide satisfactory solutions, these solutions have been subordinated to the development of the mathematical theories that deal with over idealized problems bearing little relation to practice.