International Journal of Enhanced Research Publications, ISSN: 2319-7463 Vol. 3 Issue 4, April-2014, pp: (1-9), Available online at: www.erpublications.com Reaching Movements Control of A Two Link Arm By Cerebellar Model Articulation Controller Saeed Solouki1, Mohammad Pooyan1 1 Department of biomedical engineering, Shahed University Tehran, Iran Abstract: The task of the robotic control is divided into two groups as motion control and force control. The reaching motions control is a point to point control or continuous trajectory control. This paper presents a robotic arm controller for reaching movements that uses the inverse kinematics control of a two degrees of freedom serial manipulator. The artificial neural networks theory made it possible to develop adaptive solutions to complex control problems. A neural network structure that has been particularly successful in robotic control is the cerebellar model articulation controller (CMAC). It is the one that reflects most closely the behavior of the cerebellum. We show here how the cerebellum may increase the accuracy of reaching movements by compensating for the interaction torques by learning a portion of an inverse dynamics model that refines a basic inverse model in the motor cortex and spinal cord. Keywords: robotic control, inverse kinematics, cerebellar model articulation controller, dynamic model. Introduction Biological control systems have long been studied as possible inspiration for the construction of robotic controllers. Modern robotics research is concerned with the control of complex plants. Such plants exhibit non-trivial dynamics and potentially long feedback delays [1]. The motion control scheme can be open loop or closed loop but very few of them actuated with an open fashion [2]. Figure 1 shows the basic idea of robotic control. Motion planning includes two main phases: trajectory generation and forward/inverse kinematics computation. A robot is composed of joint motors, breaks, and feedback sensors like position or velocity sensors or other special sensors such as force or torque sensors. Actually, the control problem of robotic manipulators is non-linear but the nonlinearities of the system can be cancelled with methods like computed torque [3]. Motion Planning Motion Planning Robot Environment Sensors Figure 1. Basic blocks of robotic system. Each joint is considered independent, and the inertia reaction of each actuator is constant. The dynamics of an n-DOF robot is described as : π·(π)πΜ + πΆ(π, πΜ )πΜ + πΉ(π, πΜ ) + πΊ(π) = πο ο¨ο±ο©ο where the equation elements stand for: π (joint variable vector), π (control torque vector), π·(π) (inertia matrix), πΆ(π, πΜ ) (coriolis and centrifugal force vector) and πΊ(π) (gravitational force vector). Hence the dynamic model is not known exactly, there are unmodeled dynamics such as friction, flexibility in the drive chain, noise and etc. Real physical plants like robots often contain these non-linearity and variations due to the plant nature, noise or other factors. Usually, nonlinearities may have undesirable effects. Thus, control design may need to properly Page | 1 International Journal of Enhanced Research Publications, ISSN: 2319-7463 Vol. 3 Issue 4, April-2014, pp: (1-9), Available online at: www.erpublications.com compensate those effects, or to linearize nonlinear terms. Nonlinearities can be classified in terms of their mathematical properties, as continuous and discontinuous [4]. In substance, continuous nonlinearities can be linearized, but discontinuous nonlinearities canβt be locally approximated by linear functions. They are also called βhardβ nonlinearities [4]. Unfortunately, in practice, most of systems have hard nonlinearities, such as backlash, hysteresis and stiction. Thus, nonlinear control design is an issue for common systems. In this paper, an inverse kinematic control strategy based on CMAC is purposed to make an accurate, fast and stable reaching movement. At first, the forward kinematics formulae for the two-joint robotic arm provide CMAC the training patterns. During training the CMAC network learns to map the coordinates (π₯, π¦) to the angles (π1 , π2 ). The trained CMAC network is then used as a part of a larger control system to control the robotic arm. Neuro Controllers Structure Neuro controllers have a good adaptation capability and also they can learn the real dynamics of the robot system [5]. So, they can be good alternatives to conventional controllers. There are three basic tasks that the neuro controller can perform [5 and 6]: ο· The neuro controller learns from a complex automatic controller. ο· Making a system or plant follow a desired set point or follow a reference model. ο· Optimization. In supervised learning, a training set database of inputs π(π‘) and targets π β (π‘), is given to the network. The learning task is how to generate π β (π‘) for any given value of π(π‘). In neurocontrol, π(π‘) may be a set of sensor readings while the targets are a vector of desired control actions, π’β (π‘) shown in Fig. 2. Training input π’β (π‘) π(π‘) Target (desired position) F π’(π‘) = πΉ(π(π‘)) Figure 2. Neuro control in block. The Neural networks based control systems may be open loop or closed loop. A closed loop training method can be used with a controller, as shown in figure 3. π’π is the desired input, and π’ refers to the output of the neural network approximation. The aim is to train the neural network so that π’ approximates π’π , the desired signal, as closely as possible. Here π’π is the persistent excitation that is added to the control input from the probing signal π’π (t) to the system. The persistent excitation input, ensure the collection of sufficiently rich training data and help a better plant identification. To consider the adaptive plant control scheme the neuro controller can be structured as in figure 4. ππ ππππ Controller ππ Figure 3. ππππ Neural Network Controller Dynamically Non-linear System Neural Network π’ Closed loop training methodology. Plant 1. Neural Networks 2. Figure 4. The structure of the adaptive plant control system based on neural networks. Page | 2 International Journal of Enhanced Research Publications, ISSN: 2319-7463 Vol. 3 Issue 4, April-2014, pp: (1-9), Available online at: www.erpublications.com The desired position of the robot end point is specified in Cartesian Coordinates while the motions are actually obtained from the multiple actuators connected at the joints which decide the required joint angles. The transformation from Cartesian Coordinates to joint angles is a sophisticated problem especially in the case of many degrees of freedom. With respect to the neuro controller structures, the inverse kinematics control problem of the robotic systems finds proper solutions. Inverse Kinematics Model A. Inverse Kinematics for Position In a two-joint robotic arm, given the joints angles, the kinematics equations give the location of the arm end effector. In general, inverse kinematics is much harder than forward kinematics [7]. Sometimes there is no possible analytical solution, and an iterative search is required. In the case of redundant manipulators, there may be many solutions. One of the solutions for the inverse kinematics problem is geometric solution. In this approach the arm geometry is reconstructed into several plane geometry problems. Joint angles can be obtained by using the geometric formulas. Another complication that must be considered is the workspace limitations (The point may be outside the reach of the manipulator, or joint limits are exceeded). The plane geometry is applied to find a solution to the manipulator can be seen in Figure 5. Figure 5. Plane geometry associated with a 2-link planar manipulator. To solve ΞΈ_2 law of cosines is applied: ο π₯ 2 + π¦ 2 = πΏ21 + πΏ22 β 2πΏ1 πΏ2 cos(180 + π2 ) ο ο¨ο²ο©ο Since cos(180 + π2 ) = β cos(π2 ), then ο cos(π2 ) = π₯ 2 +π¦ 2 βπΏ21 βπΏ22 2πΏ1 πΏ2 ο ο¨ο³ο©ο This equation (3) is solved for π2 between 0 and β180 degrees. For the symmetric position π2β² = βπ2 . The value of angle π½ depends on the sign of π₯ and π¦. so two argument arctangent is used: ο ο¨ο΄ο©ο π½ = π΄π‘ππ2(π¦, π₯)ο The law of cosines is again applied to find π. ο cos(π) = π₯ 2 +π¦ 2 +πΏ21 βπΏ22 2πΏ1 βπ₯ 2 +π¦ 2 ο ο¨ο΅ο©ο where 0 β€ π β€ 180. Then: ο π1 = π½ ± πο ο¨οΆο©ο where the plus sign is used if π2 < 0 and minus sign is used if π2 > 0. Page | 3 International Journal of Enhanced Research Publications, ISSN: 2319-7463 Vol. 3 Issue 4, April-2014, pp: (1-9), Available online at: www.erpublications.com B. Inverse Kinematics Control with CMAC 1) CMAC design CMAC performs like an on-line tuning look-up table. This method imitates the model of the human memory, and has a fast learning capability. The main property of CMAC is that inputs which are close in the discretized state space will activate overlapping sets of association cells. The response is directly proportional to the sum of the contents of all the cells that have been activated [2, 8]. Therefore, similar inputs will cause to similar outputs, and CMAC will respond adequately to a previously unseen input signal, provided that it has been trained on a βsimilarβ input. The number of cells that active for each input is fixed. Hence, the validity of the solution depends on the number of receptive fields that are used in discretization process to cover the entire input space. Practically, each association cell indicates a computerβs memory location in which the network weight is stored. For most problems, since the input space is very large, the CMAC memory requirements are too high. Albus proposed a hash coding method for the application of CMAC to these problems [2, 8]. Figure 6. A schematic representation of CMAC. Figure 6 shows a CMAC structure. The input space contains all possible n-dimensional input vectors. When an input vector is presented to the CMAC network it activates a set of association cells in a large virtual memory. The output of the CMAC is defined the sum of activated cells weight as shown in figure 7. + + Figure 7. + CMAC output calculation. Page | 4 International Journal of Enhanced Research Publications, ISSN: 2319-7463 Vol. 3 Issue 4, April-2014, pp: (1-9), Available online at: www.erpublications.com π ο π¦(π) = βπ=1 π€π (π),ο ο¨ο·ο©ο where π€ is a memory location content. π is the learning iteration number, and π = 1, β¦ , π is the index of the activated memory locations. Given the desired output, π¦π (π), the contents of the activated cells are modified with an updating rule as follows: ο π€(π + 1) = π€(π) + βπ€(π) = π€(π) +ο ο¨οΈο©ο 1 β (π¦π (π) β π¦(π)ππππ_π‘πππππππ ) π where β is the learning rate, and satisfies 0 < β < 1 . Generally, learning accuracy will be enhanced with a large number of training patterns. 2) CMAC training The task is motion control (point to point in the defined workspace). For the desired end-effector positions in the workspace (π₯, π¦ coordinates of the end effector), the angles π1 and π2 must be calculated regarding some assumptions. Data generation assumptions: π1 is the angle between the first arm and the ground and π2 is the angle between the second arm and the first arm (Fig.8). Let the length of the first arm be π1 and that of the second arm be π2 . Assume that the first joint has limited freedom to rotate and it can rotate between 0 and 90 degrees. Similarly, the second joint has limited freedom to rotate and can rotate between 0 and 180 degrees. (This assumption cancels the need to handle some special cases which will confuse the discourse). Hence, 0 β€ π1 β€ πβ2 and 0 β€ π2 β€ π. Figure 8. Illustration showing all possible π1and π2 values. CMAC is trained in a supervised manner. So, for every combination of π1 and π2 values the x and y coordinates are deduced using forward kinematics geometric equations. CMAC network architecture of the two-linked manipulator consisted of two CMACs. The coordinates of the desired end effector positions (π₯, π¦) are the inputs to both CMACs and each CMAC outputs the individual joint angles (π1 and π2 ) (Fig.9). π₯ π¦ Figure 9. CMAC 1 π1 π2 CMAC network for inverse kinematics of two-link manipulator. Page | 5 International Journal of Enhanced Research Publications, ISSN: 2319-7463 Vol. 3 Issue 4, April-2014, pp: (1-9), Available online at: www.erpublications.com Each output is related with both inputs. For estimating the π1 , both x and y must be taken into account (Fig. 9). π1 and π2 are nonlinear because they are calculated from geometric equations with trigonometric functions and the squared terms. The problem becomes much more complex as the number of links increases [9-13]. The standard methodology for training CMAC networks is off-line training. Because of the generalization property, neural networks can learn the associated patterns and recall the learned patterns. The trained network is then used to achieve the desired movements. Using neural network for control problems has the ability of online learning and adaptive capabilities. The proposed scheme for the 2 DOF manipulator control with CMAC is seen in Fig. 10. User End effector position coordinates & specified targets π₯π π1 CMAC (inverse) π¦π Forward kinematics π₯ π¦ π2 CMAC learning algorithm 3. ππ₯ ππ¦ β + Figure 10. β Block diagram for online learning of inverse kinematics of two-DOF manipulator. Table 1: Predefined Network Parameters CMAC network parameters Lengths of arms (π1 , π2 ) = 220 cm Total number of layers (π) = 67 Learning rate (β ) = 0.5 The desired π₯, π¦ positions of the end effector are applied to the CMAC network. Initially, all the weights are equal to zero. The output of the CMAC is the joint angles π1 and π2 which are inputs to the robot's forward kinematics. The error signals are taken into account in an adaptive learning process. It is shown that the two-linked robotic system with CMAC can reach any desired end-effector positions in the robot workspace. The desired π₯π , π¦π coordinates of the end effector applied to CMAC network are selected as: ο π₯π = [300, 100, 400], π¦π = [50 250 100]. ο ο¨οΉο©ο ο The reached π₯ and π¦ positions of the end effector are shown in Figure 11 and the corresponding joint angle trajectories are shown in Figure 12. It is seen that 39 iterations are needed to reach the desired end-effector positions. Usually while it takes too much time for other network topologies, CMAC is trained quickly. Therefore, CMAC can be a fast solution for the inverse kinematics problem in robotics. Page | 6 International Journal of Enhanced Research Publications, ISSN: 2319-7463 Vol. 3 Issue 4, April-2014, pp: (1-9), Available online at: www.erpublications.com Figure 11. Figure 12. Actual positions of the end effector reached after 39 iterations. Corresponding joint angle trajectories for desired positions. Since the best performance of CMAC controllers is obtained with neighborhood sequential training technique, It is preferred to train the CMACs with neighborhood sequential data rather than random training data base [10]. The training workspace according to its limitations is plotted in figure 13. An example π₯ and π¦ values and its activated CMAC weight cells is also shown. sequential training method for 900 points 10 8 6 4 y 2 0 y -2 -4 -6 -8 -10 -10 Figure 13. -5 0 xx 5 10 Sequential training method work space and a two link arm position that activated some CMAC weights cells. (Insufficient data) Page | 7 International Journal of Enhanced Research Publications, ISSN: 2319-7463 Vol. 3 Issue 4, April-2014, pp: (1-9), Available online at: www.erpublications.com with increasing the number of training data, more accurate end effector position estimation is obtained (Fig.14). sequential training method for 5000 points 10 8 6 4 y 2 y 0 -2 -4 -6 -8 -10 -10 Figure 14. -5 0 x x 5 10 More number of training data increases the estimation resolution. 3) Controller performance After training the networks, an important follow up step is to validate them to determine how well they would perform inside the larger control system. Since this problem deals with a two-joint robotic arm whose inverse kinematics formulae can be derived, it is possible to test the answers that the CMAC networks produce with the answers from the derived formulae. Figure 15. Output error of trained networks with sequential training method. 25 samples are used for validation. The errors are in a fairy good range for the application it is being used (Fig.15). However this may not be acceptable for another application, in which case the parameters must be changed until an acceptable solution is arrived at. Conclusion Reaching is a fast movement towards a given target. So, it needs a fast and precise control strategy. It is shown that CMAC is a fast and efficient controller for the problem of inverse kinematics. It learns the system dynamics with supervised training techniques and generates an input to output mapping by using simple summation operation and memory mapping algorithms. The main reason of using neural network approach is to generate the inverse kinematics for desired end-effector coordinates. In this study only a two degrees of freedom manipulator is discussed but in the case of many degrees of freedom, the analytic solutions are more complicated and sometimes there are no formulations for the inverse kinematics. In such situations some iteration methods take place. Page | 8 International Journal of Enhanced Research Publications, ISSN: 2319-7463 Vol. 3 Issue 4, April-2014, pp: (1-9), Available online at: www.erpublications.com References [1]. Fagg, Sitkoff, Barto and Houk, βCerebellar Learning for Control of a Two-Link Arm in Muscle Space,β in ICRA, 1997. [2]. Albus James S., βA New Approachto Manipulator Control: The Cerebellar Model Articulation Controller,β Journal of Dynamic Systems, Measurement and Control, 1975, 220-227. [3]. Hsu Yuan P., Hwang Kao. S. Wang jinn S., βAn Associative Architecture of CMAC for Mobile Robot Motion Control,β Information Science and Engineering18, 2002, pp.145-161. [4]. Jang J. O., βImplementation Of Indirect Neuro-Control For A Nonlinear Two-Robot MIMO System,β Control Engineering Practice9, (2001), 89-95. [5]. D. Richert, A. Beirami and C. Macnab M. Young, βNeural-Adaptive Control of Robotic Manipulators Using a Supervisory Inertia Matrix,β Conf. on Autonomous Robots and Agents, Feb 2009, New Zealand. [6]. El-Hawwary, M. I.; Elshafei, A. L, βRobust adaptive fuzzy control of a two-link robot arm,β Journal of Robotics & Automation;2006, Vol. 21 Issue 4, p266. [7]. Deshpande N. A., Gupta M.M., βInverse Kinematic Neuro-Control Of Robotic Systems,β Engineering Applications Of Artificial Intelligence11, 1998, 55-66. [8]. Smith R.L., βIntelligent Motion Control With An Artificial Cerebellum,β Phd Thesis, The Department of Electrical andElectronic Engineering, University of Auckland, New Zealand, 1998. [9]. A. Magdy M., Pinspon U., Çetinkunt S., βAdaptive Learning AlgorithmFor Cerebellar Model ArticulationController, Mechatronics12, 2002, 859-873. [10]. Thompson David E., Kwon S., βNeighboorhood Sequential and Random Training Techniques for CMAC,β IEEE Transactions On Neural Networks, VOL. 6, NO. 1, 1995, pp.196-202. [11]. J. A. Saunders, D. C. Knill, βHumans use continuous visual feedback from the hand to control fast reaching movements,βsprringer, Aug 2003. [12]. D. Nowak, H. Topka, D. Timmann, H. Boecker and J.Hermsdorfer, βThe role of the cerebellum for predictive control of graspingβ The Cerebellum. 2007; 6: 7β17. [13]. KimDong-H., Oh Ju-W., Lee In-W., Cerebellar Model Articulation Controller for Suppression of Structural Vibration, Journal of Computing in Civil Engineering, October 2002, 291-297. Page | 9
© Copyright 2026 Paperzz