5-DOF Manipulator Simulation Based on MATLAB Simulink Methodology

6
Abstract Abstract— This work presents a novel simulation methodology applied to a 5-DOF manipulator. The work includes mathematical modeling of the direct, inverse and differential kinematics as well as the dynamics of the manipulator. The method implements the path following in the 3D space and uses the Matlab-Simulink approach. Several paths were tested to verify the method. This methodology can be used with different robots to test the behavior and control laws. Keywords— Simulation methodology, Simulink, Manipulator 1. INTRODUCTION Robotics is one of the main disciplines in the industry which can be used in the development of new technologies. The synergy of robotics with the different applications like submarine task, car assembly operation, vision systems and artificial intelligence allows the innovation and reduces the manufacture costs. For this purpose, it is important that the robot programmers are able to visualize and test the behavior of the robots in different circumstances and with different parameters. There are several programming algorithms to simulate robotic systems [1]; some of them use the link and joint positions, however, mainly the path following in the Cartesian work space are visually showed by lineal plots [2]. Some other works only make a 3D virtual animation [3]. Other works only show the kinematic modeling in a mixed programming environment like C++ and OpenGL [4], also, some multiple interface programming technique has been developed using Matlab, C++ and OpenGL [5][6]; in both cases, the computational time increases, and is quite complicated to manage the different programming tools. Finally, some research that presents an interface between Matlab and Simulink is used to simulate a mechatronic system [7], however, it doesn’t have a visual representation like the one proposed in this article. The main objective of the present work is to show a complete simulation methodology using the same programming platform, where, the combination of Matlab and Simulink is proposed. Here, the mathematical calculations are performed at the same time than its virtual representation. The method allows to manipulate the robotic system and to visualize the robot’s behavior from different perspectives. To test the methodology, a manipulator robot with 5-DOF as shown on figure 1 (Thermo Scientific CATALYST-5) is used, this robot has the capability to load a maximum of 1.5 kg. A PD+G (Proportional Derivative with Gravity Compensation) control is implemented based on a dynamic modeling. Figure 1. Catalyst-5 Robot The robot specifications are presented on table 1: Link 1 length Link 1 mass l1 m1 0.2504 9.0 m kg Link 2 length Link 2 mass l2 m2 0.2504 2.0 m kg Link 3 length Link 3 mass l3 m3 0.2504 1.0 m kg Link 4 length Link 4 mass l4 m4 0.0 0.4 m kg Link 5 length Link 5 mass l5 m5 0.51 0.3 m kg Gravity acceleration G 9.81 m/s 2 Table 1. Robot specifications 2. KINEMATIC MODELING The dynamic modeling of a manipulator robot with n- degree of freedom (DOF.) can be divided in four steps: Direct Kinematics, Inverse Kinematics, Differential Kinematics and Dynamics. 5-DOF Manipulator Simulation based on MATLAB- Simulink methodology Velarde-Sanchez J.A., Rodriguez-Gutierrez S.A., Garcia-Valdovinos L.G., Pedraza-Ortega J.C., PICYT-CIDESI, CIDIT-Facultad de Informatica, Universidad Autonoma de Queretaro, Queretaro, Mexico. [email protected], [email protected], [email protected], [email protected] 978-1-4244-5353-5/10/$26.00 ©2010 IEEE 295

description

5-DOF Manipulator Simulation Based on

Transcript of 5-DOF Manipulator Simulation Based on MATLAB Simulink Methodology

  • Abstract Abstract This work presents a novel simulation methodology applied to a 5-DOF manipulator. The work includes mathematical modeling of the direct, inverse and differential kinematics as well as the dynamics of the manipulator. The method implements the path following in the 3D space and uses the Matlab-Simulink approach. Several paths were tested to verify the method. This methodology can be used with different robots to test the behavior and control laws.

    Keywords Simulation methodology, Simulink, Manipulator

    1. INTRODUCTION Robotics is one of the main disciplines in the industry

    which can be used in the development of new technologies. The synergy of robotics with the different applications like submarine task, car assembly operation, vision systems and artificial intelligence allows the innovation and reduces the manufacture costs.

    For this purpose, it is important that the robot programmers are able to visualize and test the behavior of the robots in different circumstances and with different parameters. There are several programming algorithms to simulate robotic systems [1]; some of them use the link and joint positions, however, mainly the path following in the Cartesian work space are visually showed by lineal plots [2].

    Some other works only make a 3D virtual animation [3]. Other works only show the kinematic modeling in a mixed programming environment like C++ and OpenGL [4], also, some multiple interface programming technique has been developed using Matlab, C++ and OpenGL [5][6]; in both cases, the computational time increases, and is quite complicated to manage the different programming tools.

    Finally, some research that presents an interface between Matlab and Simulink is used to simulate a mechatronic system [7], however, it doesnt have a visual representation like the one proposed in this article.

    The main objective of the present work is to show a complete simulation methodology using the same programming platform, where, the combination of Matlab and Simulink is proposed. Here, the mathematical calculations are performed at the same time than its virtual representation. The method allows to manipulate the robotic system and to visualize the robots behavior from different perspectives.

    To test the methodology, a manipulator robot with 5-DOF as shown on figure 1 (Thermo Scientific CATALYST-5) is used, this robot has the capability to load a maximum of 1.5 kg. A PD+G (Proportional Derivative with Gravity Compensation) control is implemented based on a dynamic modeling.

    Figure 1. Catalyst-5 Robot

    The robot specifications are presented on table 1:

    Link 1 length Link 1 mass

    l1 m1

    0.2504 9.0

    m kg

    Link 2 length Link 2 mass

    l2 m2

    0.2504 2.0

    m kg

    Link 3 length Link 3 mass

    l3 m3

    0.2504 1.0

    m kg

    Link 4 length Link 4 mass

    l4 m4

    0.0 0.4

    m kg

    Link 5 length Link 5 mass

    l5 m5

    0.51 0.3

    m kg

    Gravity acceleration G 9.81 m/s2

    Table 1. Robot specifications

    2. KINEMATIC MODELING The dynamic modeling of a manipulator robot with n-

    degree of freedom (DOF.) can be divided in four steps: Direct Kinematics, Inverse Kinematics, Differential Kinematics and Dynamics.

    5-DOF Manipulator Simulation based on MATLAB-Simulink methodology

    Velarde-Sanchez J.A., Rodriguez-Gutierrez S.A., Garcia-Valdovinos L.G., Pedraza-Ortega J.C.,PICYT-CIDESI, CIDIT-Facultad de Informatica, Universidad Autonoma de Queretaro,

    Queretaro, Mexico. [email protected], [email protected], [email protected], [email protected]

    978-1-4244-5353-5/10/$26.00 2010 IEEE 295

  • Direct Kinematics:

    The objective of the direct kinematics is to determine the accumulative effect that comes from the set of variables of each link, that is, to determine the position and orientation of the end-effector.

    The analysis of the Direct Kinematics was made using the Denavit Hartembrerg convention as follows:

    Ai= (1)

    Then, the table 2 was obtained with the results:

    Table 2. Denavit Hartenberg parameters After some calculations, the end-effector position vector is defined by: X=

    Y=

    Z= Inverse Kinematics:

    The inverse kinematics main problem can be reduced to both the calculus of the position and orientation inverse kinematics, where a geometrical approach to the problem solution is based in the Method proposed by Spong [8].

    Differential Kinematics: In the previous steps, the dynamics related with the position of the end-effector as well as the location of the joints and its position with respect to the reference frame, therefore, the position problem will be changed to a speed analysis problem of a serial manipulator.

    The differential kinematics is defined by the next equation:

    (2) where J is the Jacobian matrix. This matrix depends on the robot configuration and robot degrees of freedom (DOF). Dynamics: The dynamic equation of an n-DOF in the manipulator can be defined as:

    (3)

    To carry out the manipulator analysis in this research, we consider the Lagrangian analysis [9], this method consist in the generalized coordinate analysis and it is based on the Lagrangian function, which is defined by the difference between the kinetic and the potential energies on a mechatronic system and is defined as:

    (4)

    In the case of the serial manipulators, the Lagrangian

    is used in a matrix form and is represented by the next equation:

    (5) where , , . V is known as the Coriolis vector, G is the gravitational force vector, and M is the inertia matrix where the analysis of the manipulator is mostly performed.

    3. PROPOSED METHODOLOGY The development of the mathematical algorithms is carried out in Matlab and the implementation of the virtual simulation was made in Simulink as shown on figures 2 (a), (b), (c) and (d):

    (a)

    Joint i

    1 0 +

    2 0 0

    3 0 0

    4 0 0 +

    5 0 0

    978-1-4244-5353-5/10/$26.00 2010 IEEE 296

  • (b)

    (c)

    (d)

    Figure 2. Robot Simulation project in

    The block diagram that expresses the whnecessary to carry out a simulation of a rpresented as a block diagram presented on tprocess starts from the mechanical analysis, cdynamics until the virtual representation of plots.

    Figure 3. Proposed Methodolog

    Simulink

    hole methodology robotic system is the figure 3. The

    continues with the the robot and its

    gy.

    Mathematical modeling: This step depends on the

    analyzed. For demonstration pcalculations can be taken as a refephysical and mechanical properties centers, therefore, we can use a equation (3). Control Design:

    The position control problemanipulator can be solved according

    Considering the dynamicsequation (5).

    Having a constant path desi Find a function in which t

    qd (desired link direction)Adaptable Control. To solve this particular

    (Proportional Derivative withcontrol is used as shown on figu

    Figure 4. PD + G Con

    Path programming: The manipulator work space a

    known. Then, the path should be prin the control system. CAD Manipulator:

    The virtual representation mechanical visual representation, SolidWorks program is used as necessary to use geometric objapproximation to each one of the figure 5. If the complete assemblysimulation process will be more dithe fact that the model will be mSimulink and also because the massharder to get.

    Figure 5. SolidWork

    e type of the robot to be purposes, the dynamical ference by considering the

    of the links and the mass model based control as

    em of a manipulator robot g to the following terms: s of an n-DOF robot as

    ired (Reference Point). the q (robot links) tends to ) by using a PD, PID and

    r problem, a PD + G h Gravity Compensation) ure 4.

    ntrol System

    and the path to follow are rogrammed to be included

    is close related with the and due to this fact, the a design tool, but it is

    jects that are a closer robot links as shown on

    y of the robot is used, the ifficult to carry out due to more difficult to load in center of each link will be

    ks assembly.

    978-1-4244-5353-5/10/$26.00 2010 IEEE 297

  • VRML2: To visualize the prototype in 3D using Simulink, it is

    necessary to convert the file into VRML 2.0. To solve this matter, the 2009 SolidWorks version can be used and it is necessary to export the design into VRML 2.0. If the file is saved in VRML 1.0, by using the CrossRoads program the version can be changed to the proper one. Virtual Environment: Once the previous steps have been completed and the kinematics is programmed, the next step is to implement it in the virtual environment that includes; manipulator design, data showing and path following visualization. In order to successfully carry out the simulation, it is necessary to have a Matlab 2009 version that includes the full 3D animation library. Manipulator design:

    Here, the prototype is loaded by using the VR Sink block, where the model can be edited using the VRML editor.

    Due to the fact that the robot coming from the mechanical system is different to the assembly, the operations on the transformation from one link to other is different in this editor, therefore it is necessary to perform the next tasks:

    Identify each links of the manipulator. Leave only 2 main transformations: o The transformation on the base which wont be

    moved; o The link transformation where the movement chain is

    performed to get the mathematical parameters (this is variable depending on the robot to be used).

    Text Visualization: To obtain the real-time data from the manipulator, we can use the VR Text Output. It is necessary to reference the virtual environment, also to introduce the variable names to be shown together with the variable format. Path Following Visualization: To show the path that the robot follows in the simulation process, it is necessary that the desired target as well as the real target to be connected to the block named V Tracer. We need to connect x, y and z for the data acquisition. The type of path to be followed is selected and projected on the virtual environment; also, it is necessary to reference the name of the transformations in the manipulators design block to be represented in the workspace. Simulation: Once the virtual environment is created, and having the calculations already solved, the interface is carried out by executing the program in Simulink.

    In this way, it can be observed the linear plots in the virtual environment at the same time that the dynamical behavior of the manipulator is observed. Moreover, we can use the visualization tools of the virtual interface in Simulink to modify the physical aspects of the simulation in order to get some pictures or videos.

    TEST AND RESULTS In order to test the proposed methodology, the clover shape path was selected. This trajectory is represented as:

    Considering the next parameters, we perform the simulation:

    Center of the figure in X-axis: 0 .3m Center of the figure in Y-axis: 0 .2m Petal Clover Radius: 0 .07 m Angular Speed: 0.2094 rad/s

    Control gains:

    As can be seen in figure 6, the plots show the behavior of the desired link paths and the real link paths. It is clear that the proposed methodology can follow the desired path in a closer way.

    Figure 5 Inverse Kinematics

    Also, the path follow is shown after the control implementation in the Method. Here, it can be observed that the performance is satisfactory and the plots of the real and the desired path are shown in blue and red respectively.

    298

  • Figure 7 End Effector position

    The 3D space path (real and desired) were plotted as well as different views of the simulator on Figures 8 to 11.

    Figure 8 Path in 3D space

    Figure 9 Simulation of the 3D path follow with control

    Figure 10. Simulation of the 3D path (Front view)

    Figure 11 Virtual Reality Simulation in Simulink

    CONCLUSIONS AND FUTURE WORK A simulation methodology of the 5-DOF was proposed.

    The modeling of the robot includes direct, inverse, and differential kinematics as well as dynamics. This method was applied to test the robot CATALYST 5 by using a project in Simulink and Matlab. A proposed path was plotted in the 3D space and the method was applied. All the plots from the links and the end-effector positions were obtained and clearly show the good performance of the proposed methodology.

    As the future work, this methodology will be applied to several robotic systems in order to test its behavior. Also, more paths in 3D space will be tested in order to get the information about the speed, acceleration and force of each link in the manipulator. Some other options include the testing of more control algorithms like optimal control.

    978-1-4244-5353-5/10/$26.00 2010 IEEE 299

  • REFERENCES [1] Felix Etienne Trepanier and Bruce A. MacDonald,

    Graphical Simulation and Visualization Tool for a Distributed Robot Programming Environment, Technical Report of the Department of Electrical and Electronic Engineering, University of Auckland, New Zealand, 2003.

    [2] Stephen H. Murphy, John Ting-Yung Wen and George N Saridis, Simulation of cooperating Robot Manipulators on a mobile Platform, IEEE Transactions on Robotics and Automation, Volume 7, Issue 4, pp. 468 478, Aug 1991.

    [3] Martin Rohrmeier Web Based Robot Simulation using VRML, Winter Simulation Conference Proceedings, Volume 2, pp. 1525-1528, 2000.

    [4] Moreno Trejo Roberto, Cabrera Ros Juan Salvador, Hernndez Ramirez Fernando, Jose Emilio Vargas Soto, Jesus Carlos Pedraza Ortega, Simulation Software of the Mitsubishi RV-2AJ Manipulator Robot, Proceedings of the 4th Mexican Conference on Mechatronics, pp. 129-132, 2005 (In Spanish Language).

    [5] J.A. Soto, J. E. Vargas and J.C. Pedraza A New Trajectory Generation Method Using Vision for a Robot Manipulator, International Conference on Dynamics, Instrumentation and Control (CDIC), 2006.

    [6] Maricela Gamio, J. Carlos Pedraza Juan M. Ramos, Efrn Gorrostieta. Matlab-C++ Interface for a Flexible Arm Manipulator Simulation using Multi-Language Techniques, Proceedings of the Fifth Mexican International Conference on Artificial Intelligence (MICAI), pp. 369-378, 2006.

    [7] Nourdine Aliane A Matlab/Simulink-Based Interactive module for Servo Systems Learning, IEEE Transactions on Education, Volume 7, Issue 4, pp. 1 7, 2009.

    [8] Mark W. Spong. Robot Modelling and Control, John Wiley and Sons, 2005.

    [9] Lung Went Tsai Robot Analysis: The Mechanics of Serial and Parallel Manipulators, Wiley, 1999.

    978-1-4244-5353-5/10/$26.00 2010 IEEE 300

    /ColorImageDict > /JPEG2000ColorACSImageDict > /JPEG2000ColorImageDict > /AntiAliasGrayImages false /CropGrayImages true /GrayImageMinResolution 200 /GrayImageMinResolutionPolicy /OK /DownsampleGrayImages true /GrayImageDownsampleType /Bicubic /GrayImageResolution 300 /GrayImageDepth -1 /GrayImageMinDownsampleDepth 2 /GrayImageDownsampleThreshold 2.00333 /EncodeGrayImages true /GrayImageFilter /DCTEncode /AutoFilterGrayImages true /GrayImageAutoFilterStrategy /JPEG /GrayACSImageDict > /GrayImageDict > /JPEG2000GrayACSImageDict > /JPEG2000GrayImageDict > /AntiAliasMonoImages false /CropMonoImages true /MonoImageMinResolution 400 /MonoImageMinResolutionPolicy /OK /DownsampleMonoImages true /MonoImageDownsampleType /Bicubic /MonoImageResolution 600 /MonoImageDepth -1 /MonoImageDownsampleThreshold 1.00167 /EncodeMonoImages true /MonoImageFilter /CCITTFaxEncode /MonoImageDict > /AllowPSXObjects false /CheckCompliance [ /None ] /PDFX1aCheck false /PDFX3Check false /PDFXCompliantPDFOnly false /PDFXNoTrimBoxError true /PDFXTrimBoxToMediaBoxOffset [ 0.00000 0.00000 0.00000 0.00000 ] /PDFXSetBleedBoxToMediaBox true /PDFXBleedBoxToTrimBoxOffset [ 0.00000 0.00000 0.00000 0.00000 ] /PDFXOutputIntentProfile (None) /PDFXOutputConditionIdentifier () /PDFXOutputCondition () /PDFXRegistryName () /PDFXTrapped /False

    /CreateJDFFile false /Description > /Namespace [ (Adobe) (Common) (1.0) ] /OtherNamespaces [ > /FormElements false /GenerateStructure false /IncludeBookmarks false /IncludeHyperlinks false /IncludeInteractive false /IncludeLayers false /IncludeProfiles true /MultimediaHandling /UseObjectSettings /Namespace [ (Adobe) (CreativeSuite) (2.0) ] /PDFXOutputIntentProfileSelector /NA /PreserveEditing false /UntaggedCMYKHandling /UseDocumentProfile /UntaggedRGBHandling /UseDocumentProfile /UseDocumentBleed false >> ]>> setdistillerparams> setpagedevice