Professional Documents
Culture Documents
Hibapapier
Hibapapier
net/publication/258576045
CITATIONS READS
6 3,529
3 authors, including:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Philippe Bidaud on 26 July 2014.
Abstract. This paper proposes a simulation of a Stäubli TX90 robot based on SimMechanics
Toolbox of Matlab. The goal is to predict the position and trajectory of its end-effector, with high
reliability. The simulator takes into consideration loading, deformations, calibrated kinematic
parameters, and all eventual sources of disturbance. An application to milling and a comparison
between real and simulated data reveal the reliability and the accuracy of the simulator.
Introduction
The purpose of this paper is to create a simulation tool that could replace experimental tests and
allows, in time, to validate the feasibility of maintenance operations. The simulation should provide
an accurate position of the robot’s end-effector.
The TX90 robot is a serial manipulator robot with six rotational joints (Figure 1). The link frames
and the kinematic parameters of the TX90 robot, following the notations of the modified Denavit
and Hartenberg method proposed by Khalil and Kleinfinger [1], are shown in Figure 1.
All rights reserved. No part of contents of this paper may be reproduced or transmitted in any form or by any means without the written permission of TTP,
www.ttp.net. (ID: 134.157.253.65-22/06/12,14:17:23)
404 Mechanisms, Mechanical Transmissions and Robotics
The kinematic parameters (αj, dj, θj, rj, βj [5]) were calibrated previously by using an autonomous
calibration method [2, 3, 4] which aims to identify the difference between the nominal and the real
values of the kinematic parameters and then to have a better knowledge of the position of the end-
effector (rate of knowledge improvement is about 94 %). The nominal values of the kinematic
parameters (in bold) added to the errors found during calibration are shown in Table 1.
Previously, identification of the dynamic parameters, and identification of the elastic parameters
and the joint stiffness matrix (Table 2) were carried out on the TX90 robot [4]. These parameters
are taken into consideration in the simulator for the nearest representation of the reality.
The simulation tool will be applied on an example of milling and then a comparison between the
real and the simulated data (i.e. angular torques) will be applied.
To model the dynamics and the control of the robot, the simulation tool must be coupled with
Simulink blocks and use Matlab functions in order to compute for example: the inverse kinematic
model, the trajectory generation and the control blocks.
The chosen tool to simulate the TX90 is SimMechanics [6,7,8] which is a sub-tool of Simulink®.
Consequently, its models can be interfaced with ordinary Simulink block diagrams which speed up
the simulation and integrate everything in the same environment.
Moreover, it is simple to use and its block set consists of seven sub-libraries that represent the
following: bodies, joints, sensors (joint sensors, body sensors), actuators (joint actuators, body
actuators), gearboxes, constraints and drivers, and force elements.
− Model all the elements of a multi-body system (i.e. bodies, joints, connections, forces) in
Simulink;
− Import full models from CAD systems (i.e. Stäubli SolidWorks CAD [9]), with the
properties of inertia, lengths, angles;
− Generate a 3D animation to visualize system dynamics.
Applied Mechanics and Materials Vol. 162 405
The approach used for the generation of trajectories in the case of the TX90 was not provided by the
manufacturer for reasons of confidentiality. The study of the position and the velocity signals (given
by the "Stäubli recorder") and the calculation of the accelerations (derivation of the velocity) show
that the approach is applied in the joint space using the trapezoidal velocity law.
This approach provides during movement: a continuous velocity (ensures a minimum time by
saturating the velocity and acceleration at the same time) and a continuous acceleration (replaces
the acceleration and braking phases by a law of the second degree and therefore the position is a law
of the fourth degree) [10].
On the other hand, only the name of the controller used by Stäubli has been provided by the
manufacturer through a confidential agreement and so it is not possible to present it in this paper.
The controller and the trajectory generations blocks are designed under the environment of
Simulink. Fig. 2 presents an example of the angular positions, velocities and accelerations related to
the six joints of the TX90.
Application to milling
The maintenance operation treated is the milling. It is a process that requires high precision and
where differences between planned and actual trajectories are observed.
Description of a Milling Test. The total mass of the milling tool is 6.76 kg and the Cartesian
velocities are in the range of 2000 mm/min. The contact’s length, during the milling, between the
tool and the block is 70 mm and the depth of penetration into the steel is 1.2 mm.
Test Results. The following figures represent the filtered of the measured angular positions,
velocities and torques and the calculated angular accelerations (derivation of the velocity). The
Butterworth filter whose response is flat in the passband is most suitable, so we used an order 4
Lowpass Butterworth filter with normalized cutoff frequency Wn=0.8/5.
Matlab function "butter" is used to provide the coefficients of the numerator and the denominator of
this filter. The output parameters of this function are used as entries to the "filtfilt" function that
performs the Butterworth filtering on the signal in both the forward and reverse directions, which is
necessary in order to eliminate phase distortion.
The study of the positions, velocities and the accelerations signals prove the choice of the
trapezoidal velocity law while maintaining continuous velocity and acceleration. Deviations in the
velocities, accelerations and torques signals are noticed during the milling time. This is explained
by the fact that forces are created during the steel milling.
Note that the signals corresponding to angles 5 and 6 are noisier than the others. This can be
explained by a control problem due to the fact the integral gain used by the manufacturer is very
low. It can also be due to the fact that gear types of the joint 5 and 6 (endless screw and
Monosatellite) are different from the gear type of the first four joints (joints combined engine).
408 Mechanisms, Mechanical Transmissions and Robotics
Application to the Simulator. The purpose of this paragraph is to apply the same milling test to the
simulator and compare the simulated data to the real data, in order to illustrate the industrial interest
of the simulator.
Milling Cutting Force. This force can be measured through a dynamometer. But, since the
recorder of Stäubli provides the values of joint torques, one can calculate the cutting forces
represented by Fext (the external force to the end-effector) from the following equation (Eq. 1).
With:
-
∆Γ: the torque variation due to the application of the external force;
-
Fext = [Fx, Fy, Fz, Mx, My, Mz] T.
Knowing F, one can find ∆Γ and then calculate: the angle variation due to the external forces:
With:
- ∆θ: the angle variation ;
- Kθ: the joint stiffness (or rigidity) matrix.
i 1 2 3 4 5 6
Kθi 1.7 x 106 5.9 x106 1.8 x 106 2.9 x 105 9.3 x105 4.9 x105
We can also calculate the Cartesian position variation due to the external forces:
With:
- Kx: the Cartesian stiffness matrix.
To represent the position deviations observed on the steel, due to the milling cutting force, ∆θ (or
∆X) should be inserted into the simulator.
Simulator Results. The following figures represent the simulated angular positions, velocities,
accelerations and torques.
The simulated positions, velocities, accelerations and the torques are very close to those from the
recorder respectively (Fig. 5, Fig. 6, Fig. 7 and Fig. 8). This proves that the simulator is accurate
and show reality with a good reliability.
In the following picture (Fig. 13), we show, on the right, the surfaces obtained on the steel including
the marks left by the milling tool. On the left, we show a zoomed area of the steel block where the
deformation of the milling line are the highest during the penetration of the milling tool into the
steel.
Applied Mechanics and Materials Vol. 162 411
The simulated Cartesian position [Px, Py, Pz]T of the robot’s end-effector is shown in Fig. 14. One
can clearly notice Cartesian position deviations, especially in the z direction, during all the milling
duration and especially during the penetration of the milling tool into the steel. This is explained by
the fact that cutting forces acting during the penetration are higher than the ones during the rest of
the milling.
An application of milling was presented and a comparison between data from the Stäubli recorder
and simulated data (positions, velocities, accelerations and torques) has proved the reliability of the
simulator.
The robotic simulation can now be used to optimize the robot trajectories and to improve milling.
Using the simulator, one can analyze the behavior of the robot, qualify its performance and consider
appropriate changes in the system. In order to optimize the whole process of maintenance operation,
in terms of quality and development time, different solutions, based on the results of the simulator,
can be proposed, for example: changes in the configuration of the end-effector and changes in the
milling trajectory. Another possible solution is to consider, with a step ahead, the predicted position
deviation, and integrate it into the control in a way to attenuate the observed end-effector position
deviations especially during the penetration into the steel.
412 Mechanisms, Mechanical Transmissions and Robotics
The simulation results indicate that SimMechanics can be used for modeling other robots with the
same morphology as the TX90, (i.e. anthropomorphic, open, series). Block parameters defining for
example the different bodies, joints, kinematic models (i.e. MGI, MGD) can be easily modified to
be adapted to other robots. Moreover, the simulator can be used to validate the feasibility and to
predict errors of other maintenance operations that need high precision such as welding.
Acknowledgements
This work makes part of a PHD research [4], and the milling tests were carried out in laboratories
and with equipment of EDF R&D.
References
[1] W. Khalil and J.F. Kleinfinger, A new geometric notation for open and closed loop robots, in
International Conference on Robotics and Automation, San Francisco, CA, April, 1986, pp.
1174–1180.
[2] H. Hage, P. Bidaud, N. Jardin, Practical consideration on the identification of the kinematic
parameters of the Stäubli TX90 robot. The 13th World Congress in Mechanism and Machine
Science, Guanajuato, Mexico, 19-25 June, 2011.
[3] S. Besnard, Etalonnage géométrique des robots séries et parallèles, Doctoral dissertation,
Nantes, France, September, 2000.
[4] H. Hage, Identification et simulation physique d’un robot Stäubli TX90 pour le fraisage à
grande vitesse, doctoral dissertation, Paris, France, February, 2012.
[5] S. A. Hayati, Robot arm geometric link calibration, in proceedings IEEE International
Conference on Decision and Control, San Antonio, December, 1988, pp. 1477_1483.
[6] Information on http://www.mathworks.com/products/simmechanics/
[7] Y. Shaoqiang, L. Zhong, L. Xingshan, Modeling and simulation of robot based on
Matlab/SimMechanics, in Proceeding of Control Conference 27th Chinese, 2008.
[8] L. Brezina, O. Andrs, T. Brezina, NI LabView—Matlab SimMechanics Stewart platform
design, Applied and Computational Mechanics 2 (2008) 235–242.
[9] Information on http://www.staubli.com
[10] W. Khalil, E. Dombre, Modélisation, identification et commande des robots, second edition,
Paris, 1999.
Mechanisms, Mechanical Transmissions and Robotics
10.4028/www.scientific.net/AMM.162