Modelling and simulation of robot system using Matlab and Simulink.
Damic, Vjekoslav ; Cohodar, Maida ; Kulenovic, Malik 等
1. INTRODUCTION
Robotic systems has already become standard and very useful devices
in modern industrial manufacturing, which characterized processes as
metal cutting, welding, part handling, etc. Robots are often integral
parts of flexible manufacturing cells and thus, integral parts of the
complete production processes. To improve dynamic performances of robots
and industrial manufacturing processes, increasing attention has been
paid to modelling and simulation of such systems (Siciliano et al.,
2009; Damic & Cohodar, 2006; Wehage et al., 1992).
This paper presents model-based simulation of a robot system using
Matlab and Simulink. Model of the anthropomorphic arm was developed and
the simulation results are presented. This example was chosen because
one of the most commonly used robot's configuration is
anthropomorphic arm (e.g. PUMA, RV-M1, etc.). In (Damic & Cohodar,
2006) model of an anthropomorphic arm was developed by Bond Graphs using
program BonSim(R), (Damic & Mongtomery, 2003). The cases in which
all three links are rigid, and the last two links taken as flexible, are
analysed.
2. MODELLING APPROACH
For the industrial purposes, the end-effector trajectory is usually
defined in the operational space as a time-depended trajectory:
r = [[X Y Z].sup.T] = r(t). (1)
It is necessary to map this trajectory to the joint space by
inverse kinematics:
[theta] = [F.sup.-1] (r), (2)
where [theta] is vector of the joint angles.
The joint velocities are calculated via Jacobian matrix as follows:
[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. (3)
The Simulink supports the model-based simulation, which enables
development of a complex system model as an aggregation of already
defined elementary components stored in the library. To develop model of
a robot system, the components from SimMechanics library, as well as the
other common models, are used as basic building blocks. For example,
Body model can be used to model rigid links; different kind of the
joints (revolute, prismatic, spherical, universal), taken from the
library Joints, provide models of the joint, etc.
3. NUMERICAL EXAMPLE
An anthropomorphic arm, shown in Fig. 1, is analysed in this paper.
[FIGURE 1 OMITTED]
The manipulator is composed of three links with revolute joints and
is controlled by a controller that implements PD joint space control law
(Damic & Cohodar, 2006; Siciliano et al., 2009):
[tau] = [K.sub.P] ([theta].sub.r]--[theta]) + [K.sub.D]
([??].sub.r] - [??]), (4)
where index r denotes the reference values of the joint variables
defined by Eqs. (2) and (3), [tau] is vector of generalized forces and
[K.sub.P] and [K.sub.D] are matrices of the proportional and derivative
gains.
The Simulink model of the anthropomorphic arm is depicted in Fig.2.
Rigid links are represented by Body models, denoted as Link1, Link2 and
Link3. The inertia frame (coordinate frame [X.sub.0][Y.sub.0][Z.sub.0]
in Fig.1) is presented using Absolute frame model. Three revolute
joints, modelled by components Joint1, Joint2 and Joint3, are driven by
the joint actuators.
[FIGURE 2 OMITTED]
The generalized forces are generated in the framework of Subsystem2
according to the control law in Eq.(4). The joint sensors collect the
necessary information; e.g. the actual joint angles and velocities, but
could be other values as well, e.g. the reaction forces, accelerations,
etc. The initial values of the joint angles and velocities are defined
in components IC.
The simulation results could be represented in different ways--e.g.
using Scope, XY graph, Display, Floating Scope. In addition, they could
be exported as arrays to Matlab workspace. Thus, after performing new
simulation under different conditions, it is possible to export results
into the same workspace to make comparison and further analyses of the
system dynamics.
4. SIMULATION RESULTS
The geometric and material properties of the robot are taken from
(Wehage,1982). First two links are made of aluminium with
[[rho].subA1]=2750 kg/[m.sup.3] (mass density) and [E.sup.A1]=0,699e11
Pa (modulus elasticity), while the third one is of graphite/epoxy with
[[rho].sub.gr]=1300 kg/[m.sup.3] and [E.sub.gr]=1,727e11 Pa. The lengths
of the links are [L.sub.1]=0,3 m, [L.sub.2]=[L.sub.3]=0,5 m. Moment
(product) of inertia and dimensions of cross-section area of the links
are given in Table 1.
The end-effector follows the trajectory (from point A to point B in
Fig.3) defined in the operational space (in the coordinate frame
[X.sub.0][Y.sub.0][Z.sub.0], Fig. 1) by:
[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (5)
The values of proportional and derivative gains of Eq.(4) are taken
as [K.sub.P] = 1,5e5, [K.sub.D] = 1,5e5 for the all axes. The
simulations were undertaken for 1 s, with minimum time step of 0,001 s.
The standard absolute and relative error tolerances of 1e-6 were used.
The results are shown in Fig. 4a-f.
The accuracy of joint angles is order of 1e-4 rad, Fig.4c. The time
histories of achieved end-effector trajectory's coordinates are
shown in Fig. 4e. Their deviations with respect to the exact values are
given in Fig.4f.
PD control provides a good of accuracy end-effector trajectory and
is of order of 1e-4 m.
[FIGURE 3 OMITTED]
[FIGURE 4 OMITTED]
5. CONCLUSION
This paper presents general and effective algorithm for modelling
and simulation of an anthropomorphic arm using Simulink. Using the
component model approach makes these processes relatively comfortable.
It is easy to change the model in order to analyze dynamic system
behaviour under different conditions. The simulation results achieved
show a good accuracy and confirm that proposed approach could be used
for solving such class of problems. In the future research work, authors
plan to compare different approaches to the modelling and simulation of
mechatronics systems, e.g. the approach presented in this paper and
modelling and simulation using bond graphs.
6. REFERENCES
Cohodar, M. (2005). Modelling and Simulation of Robot with Flexible
Links using Bond Graphs, PhD thesis, Faculty of Mechanical Engineering,
University of Sarajevo
Damic, V. & Cohodar, M. (2006). Bond Graph Based Modelling and
Simulation of Flexible Robotic Manipulators, 20th European Conference on
Modelling and Simulation ECMS, Bonn
Damic, V. & Montgomery, V. (2003). Mechatronic by Bond Graphs,
Springer--Verlag, ISBN 3-540-42375-3, Berlin Heidelberg
Siciliano, B.; Sciavicco, L.; Villani, L. & Oriolo, G. (2009).
Robotics, Modelling, Planning and Control, Springer-Verlag, ISBN
978-1-84628-641-4, London
Wehage, R. A.; Shabana, A. A. & Hwang, Y.L. (1992). Projection
methods in Flexible Multibody Dynamics. Part II: Dynamics and Recursive Projection Methods. Int. Journal for Numerical methods in Engineering,
Vol.35, No.35, (1941-1966)
*** (2009) http://www.mathworks.com--Mathworks products:
Matlab--The language for technical computing and Simulink--Simulation
and model based design, Accesed on: July, 2009
Tab. 1. Inertia properties and dimensions of the links
Moment (product) inertia
Link (kg[m.sup.2])
[I.sub.xx] [I.sub.xx] [I.sub.xx]
1 2.488e-1 1.244e-1 2.488e-1
2 6.875e-3 1.389e-1 1.430e-1
3 3.385e-3 6.839e-2 7.042e-2
Moment (product) inertia
Link (kg[m.sup.2]) Cross-
section
[I.sub.xy]=[I.sub.yz]=[I.sub.xz] (m)
1 0 r=0,15
(circular)
2 0 0.1x0,05
(rectangular)
3 0 0.1x0,05
(rectangular)