Visit for more related articles at Advances in Robotics & Automation
It is well known that, the main drawback of parallel manipulators is the existence of singularities within its workspace, an Artificial Neural Network (ANN) based solution is proposed in this paper. The proposed approach can certainly learn the inputoutput data and discover the nonlinear relationships which are inherent in the training data. Additionally, the proposed approach can provide solution of the forward kinematic problem with reasonable errors at and in the vicinity of kinematic singularities. The approach is implemented for the 3RPR, 3PRR, and 3RRR planar parallel manipulators.
Keywords 
Parallel manipulators; Forward kinematics; Singularities; Artificial Neural Network (ANN) 
Introduction 
Parallel manipulators, due to its closedloop structure, posses a number of advantages over traditional serial manipulators such as high rigidity, high loadtoweight ratio, high natural frequencies, high speed and high accuracy [1]. However, they also have a few disadvantages such as a relatively small workspace, relatively complex forward kinematics and the most importantly, existence of singularities inside the workspace [2]. Kinematics analysis of parallel manipulators separate in two types, forward kinematics and inverse kinematics. The inverse kinematics, which maps the task space to joint space, is not difficult to solve. On the other hand, the forward kinematics, which maps the joint space to task space, is so hard to solve. Also, the existence of not only multiple inverse kinematic solutions (or working modes) but also multiple forward kinematic solutions (or assembly modes) is another problem in kinematics analysis [3]. The challenging problem is not to find all possible solutions but to directly determine the unique feasible solutions, the actual physical solution, in among all possible solutions starting from a certain initial configuration [4]. 
Forward kinematics and singularity analysis of planar parallel manipulators have been investigated by many researchers [57]. Efforts to solve the forward kinematics of planar parallel manipulators have concentrated on 3RPR manipulator due to its inherent simplicity. It is established the forward kinematic solution of general 3 DOF planar parallel manipulators can be lead to a polynomial of degree 8 [8]. However, the forward kinematic problem for the manipulator under study leads to a maximum of 6 real solutions. It is worth taking into considerations, the three manipulators under study are kinematically equivalent to each other and, as a result, we derived the forward kinematics equations for 3RRR and modified it to the two other manipulators. Additionally, the existence of singularities and uncertainties inside the workspace where the manipulator gains some degrees of freedom and become uncountable. In such configurations, the actuated joints forces of the manipulator will become unacceptably large that often reach their allowable limits. To overcome the problem of kinematics singularities a neural network –based approach is developed which has the ability of generalization and can successfully learn relationships that are not present in the training set in an efficient manner. 
There have been increasing research interests of Artificial Neural Networks (ANNs) due to their extreme flexibility and the capability of nonlinear function approximation. Many efforts have been made on applications of Neural Networks to various types of parallel manipulators [913]. 
In this paper, a supervised neural network approach is developed to control the motion of the 3RPR, 3PRR and 3RRR planar parallel manipulators. Multiple neural networks are used to overcome the problem of the multiple solution branches of either forward or inverse kinematics. This approach also overcomes the problems of singularities and uncertainties’ arising in trajectory planning as it has, like any ANN algorithms, generalization ability. In this approach a network is trained using training data generated from the inverse kinematics. The training is done offline until reaching acceptable error and a validation test is also done, at each iteration, to avoid model over fitting. It may be noted here that the present work may be considered as an implementation of the artificial neural network approach for serial manipulators passing through singular configuration, as proposed by [14], for planar parallel manipulators. 
Kinematics of Parallel Manipulators 
Kinematic analysis of parallel manipulators includes solution to forward and inverse kinematic problems. The forward kinematics of a manipulator deals with the computation of the position and orientation of the manipulator endeffector in terms of the active joints variables. Forward kinematic analysis is one of essential parts in control and simulation of parallel manipulators. Contrary to the forward kinematics, the inverse kinematics problem deal with the determination of the joint variables corresponding to any specified position and orientation of the endeffector. The inverse kinematics problem is essential to execute manipulation tasks. Most parallel manipulators can admit not only multiple inverse kinematic solutions, but also multiple forward kinematic solutions. This property produces more complicated kinematic models but allows more flexibility in trajectory planning [15]. In other words, a manipulator configuration can be defined either by actuator coordinates q=[q_{1}, .., q_{n}]^{T} or by Cartesian endeffector coordinates x= [x_{1}, .., x_{n}]^{T} with n the DOF of the manipulator under study. The transformation between actuator coordinates and Cartesian coordinates is an important issue from viewpoint of kinematic control. Computation of the endeffector coordinates from given actuator coordinates (forward kinematics) can be written in the general form 
x= ƒ_{FKP}(q) (1) 
The inverse task which is to establish the actuator coordinates corresponding to a given set of end effector coordinates (inverse kinematics) can be also written in the general form 
q= ƒ_{IKP}(x) (2) 
Then the kinematic constraints imposed by the limbs can be written in the general form 
ƒ(x,q)=0 (3) 
Differentiating Eq.(3) with respect to time, we obtain a relationship between the input joint rates and the endeffector output velocity 
(4) 
Where 
Inverse kinematic singularity occurs when different inverse kinematic solutions coincide that happens usually at the workspace boundary. Hence the manipulator loses one or more degrees of freedom. Mathematically they can detected by det (J_{q})=0 
Forward kinematic singularity occurs when different forward kinematic solutions coincide. Hence the manipulator gains one or more degrees of freedom. That happens inside the workspace so it is a great problem. Mathematically they can detected by det (J_{x})=0 
Manipulators Under Study 
The architectures of the planar parallel manipulators under study, 3RPR, 3PRR and 3RRR, are illustrated in Figures 1a1c, Where R, P, R and P denote revolute, prismatic, actuated revolute and actuated prismatic joints, respectively. For manipulators under study the three fixed pivots A_{1}, A_{2} and A_{3} define the geometry of the fixed base, and the three moving pivots C_{1}, C_{2} and C_{3} define the geometry of the moving platform, where point O and H are the centroids of the fixed base and moving platform respectively. Three limbs connect the moving platform to the fixed base. Each limb of the 3RPR is composed of a R, a P, and a R joint in sequence. Each limb of the 3PRR is composed of a P, a R, and a R joint in sequence. Likewise, each limb of the 3RRR is composed of three R joints in sequence. The origin of the fixed coordinate frame is located at point A_{1}.The xaxis points along the direction of A_{1}A_{2} and the yaxis is perpendicular to A_{1}A_{2}. We assume that the manipulators under study are symmetrical, manipulators with equilateral base and moving platform [15]. The moving platform pose, i.e., its position and its orientation, is determined by means of the Cartesian coordinates vector H=[H_{x},H_{y}]^{T} of operation point H and angle φ, namely, the angle between C_{1}C_{2} and the positive direction of xaxis. 
Artificial Neural Networks 
Artificial neural network (ANN) is an algorithm that model brain performs a particular task, and is usually implemented using electronic components or simulated in software on digital computers. It has the ability of imitating of the mechanisms of learning and problem solving functions of the human brain which are flexible, powerful, and robust. In artificial neural networks implementation, knowledge is represented as numeric weights, which are used to gather the relationships between data that are difficult to realize analytically, and this iteratively adjusts the network parameters to minimize the sum of the squared approximation errors using a gradient descent method [14]. One category of the artificial neural networks is the multilayer perceptron (MLP) which be considered a supervised back propagation learning algorithm. It consists of an input layer, some hidden layers and an output layer as shown in Figure 2. MLP is trained by back propagation of errors between desired values and outputs of the network using some effective algorithms such as gradient descent algorithm. The network starts training after the weight factors are initialized randomly. Weight adjusting takes place until, we get reasonable errors or no more weight changes occur. There is no available theoretical procedures to choose the appreciate network architecture, i.e. number of hidden layers and number of neurons of each layer. This depends on the problem under investigation and user’s experience. 
Results of Numerical Simulations 
Simulations have been conducted for the 3RPR, 3PRR, and 3RRR planar parallel manipulators to demonstrate the performance of the developed approach. First point H (the centroid of the endeffector) is moved along a given trajectory which passing through singular locus then the correct active prismatic joint or joint angle variables to track this trajectory are calculated using the inverse kinematic model of the simulated manipulator which give a unique solution for a given working mode. Then, those active prismatic joint or joint angle variables are fed to the MIP to track the trajectory and the tracking errors are calculated. The simulated manipulators are assumed to be ideal mechanisms with no flexibility and no joint clearance that affect the accuracy of the manipulator. Also, the prismatic joints are assumed to have unlimited length. A twohidden layer MLP with back propagation learning is considered here. The input layer has as many nodes as the number of inputs to the map, namely three actuator variables. Similarly the output layer will have three nodes which represent the pose of the endeffector. The number of neurons in the hidden layers and its configuration are used as a design parameter. Sigmoid and linear activation functions are used for all hidden and output layer nodes respectively. Supervised learning scheme is used in which the network is taught to learn the map by observing the inputs and outputs. The network is trained by 10,000 training inputoutput patterns generated, randomly within the workspace of the manipulator, from the inverse kinematic model. Random initialization is used for the weights. For each manipulator, different configurations of the MLP network were tested to get the optimal configuration used for solve the problem. About 36 multilayer feed forward networks with two hidden layers are trained. All these networks were trained over 1,000 training epochs to ensure the success of the training process and to avoid over fitting the model. Simulation results showed that 40×60 multilayer perceptron neural network with two hidden layers had the best performance when the minimum tracking error is used as performance index. All manipulators under study are symmetric with three identical limbs. Each side of the moving endeffector equilateral triangle is 100 mm, while that of the base is 300 mm. The lengths of the proximal links and the distal links are 120 mm and 80 mm, respectively. 
3 RPR planar parallel manipulator 
Three endeffector trajectories are specified as straight lines which cross over singularity loci at H_{1}(265, 58.499) mm and H_{2}(265,114.706) mm as shown in Figure 3. The first trajectory is a vertical straight line starting at H_{i}(265,40) mm with orientation angle φ=15° and ending at point H_{f}(265,140) mm with the same orientation it is obvious the selected trajectory passes through singular points H_{1} and H_{2}. The tracking errors in x and ydirections are depicted in Figure 4. The maximum tracking error along the trajectory points is 0.0027 mm which happens in the vicinity of kinematic singularities. We also note that there is a significant increasing in the tracking error near the singularity points. Anyway, the developed approach can provide solution for the problem with reasonable errors. 
The second trajectory is a horizontal straight lines starting at H_{i}(245,58.499) mm with orientation angle φ=15° and ending at point H_{f}(275,58.499) mm with the same orientation it is obvious the selected trajectory passes through singular point H_{1}. The tracking errors in xand ydirections are depicted in Figure 5. The maximum tracking error along the trajectory points is 0.0023 mm which also happens in the vicinity of kinematic singularities. 
Finally, the third trajectory is a horizontal straight lines starting at H_{i}(245,114.706) mm with orientation angle φ=15° and ending at point H_{f}(275,114.706) mm with the same orientation. The selected trajectory passes through singular point H_{2}. The tracking errors in xand ydirections are depicted in Figure 6. The maximum tracking error along the trajectory points is 0.0027 mm which also happens in the vicinity of kinematic singularities. 
3 PRR planar parallel manipulator 
Two endeffector trajectories are specified as straight lines which cross over singularity loci at H_{1}(200,115.470) mm as shown in Figure 7. The first trajectory is a vertical straight line starting at Hi (200,102) mm with orientation angle φ=0° and ending at point H_{f}(200,122) mm with the same orientation it is obvious the selected trajectory passes through singular point H_{1}. The tracking errors in x and ydirections are depicted in Figure 8. The maximum tracking error along the trajectory points is 0.0015 mm which happens in the vicinity of kinematic singularities. 
The second trajectory is a horizontal straight lines starting at H_{i}(187,115.470) mm with orientation angle φ=0° and ending at point H_{f}(207,115.470) mm with the same orientation it is obvious the selected trajectory passes through singular point H_{1}. The tracking errors in xand ydirections are depicted in Figure 9. The maximum tracking error along the trajectory points is 0.0015 mm which also happens in the vicinity of kinematic singularities. 
3 RRR planar parallel manipulator 
In the same way, two endeffector trajectories are specified as straight lines which cross over singularity loci at H_{1}(155, 4.845) mm as shown in Figure 10. The first trajectory is a vertical straight line starting at H_{i}(155,4) mm with orientation angle φ=0° and ending at point H_{f}(155,24) mm with the same orientation it is obvious the selected trajectory passes through singular point H_{1}. The tracking errors in xand ydirections are depicted in Figure 11. The maximum tracking error along the trajectory points is 0.005 mm which happens in the vicinity of kinematic singularities. 
The second trajectory is a horizontal straight lines starting at H_{i}(142,4.845) mm with orientation angle φ=0° and ending at point H_{f}(162,4.845) mm with the same orientation it is obvious the selected trajectory passes through singular point H_{1}. The tracking errors in xand ydirections are depicted in Figure 12. The maximum tracking error along the trajectory points is 0.0053 mm which also happens in the vicinity of kinematic singularities. 
Conclusion 
In this paper, we proposed to use neural networks for forward kinematic solution of three different architectures of planar parallel manipulators, which can be elaborated to generate the best estimation of forward kinematics of the manipulators under study. Even though the manipulators passing through the kinemaic singularities, the proposed approach can provide solution for the problem with reasonable errors. The results of this paper can be used to find the forward kinematics solutions at critical points (singularity points) which can be then avoided, as long as we specify them, in dynamic control stage. 
References 
