1 Copyright © 2007 by ASME
Proceedings of the ASME 2007 International Design Engineering Technical Conferences & Computers and
Information in Engineering Conference
IDETC/CIE 2007
September 4-7, 2007, Las Vegas, Nevada, USA
DETC2007-35358
NATURAL COORDINATES FOR TEACHING MULTIBODY SYSTEMS WITH MATLAB
Javier García de Jalón
Universidad Politécnica de Madrid
Dep. de Mat. Aplicada and INSIA
José Gutiérrez Abascal 2
28006 Madrid, Spain
Phone: 34-913363213
E-mail: javier.garciadejalon@upm.es
Noboyuki Shimizu
Dept .of Mechanical Systems and
Design Engineering
Iwaki Meisei University,
Iwaki, 5-5-1 Chuodai-Iino
Fukushima, 970-8551, JAPAN
Phone : (81) 246-29-7183
E-mail : nshim@iwakimu.ac.jp
David Gómez
Universidad Politécnica de Madrid
Final year undergraduate student
José Gutiérrez Abascal 2
28006 Madrid, Spain
Phone: 34-913364261
E-mail: davidgomezjim@hotmail.com
ABSTRACT
This paper deals with teaching kinematic and dynamic
analysis of 3-D multibody systems in a context of courses with
severe time constraints and the objective of attaining practical
abilities. This high course efficiency is intended by the use of a
simple theoretical approach (the natural or fully Cartesian
coordinates) and a high level programming language (the
function rich and easy to learn development tool Matlab
1
). The
theoretical prerequisites for such a course can be kept to a
minimum. This approach would allow the introduction of some
lessons on multibody systems inside more general courses on
machine dynamics. It can also be useful for short courses
addressed to engineers in industry and for numerical analysis
courses addressed to mechanical engineering students that are
interested in practical applications of these numerical methods.
In this paper the achievable theory level will be presented
in detail by means of a practical but non trivial example: a
closed-chain 3-D robot.
Natural coordinates and Matlab are also a good starting
point to present more advanced techniques such as numerical
integration methods for ODEs and DAEs, or the not very well
known automatic differentiation techniques. The latter is
considered as a more advanced example in this paper.
1 INTRODUCTION
The numerical methods for kinematic and dynamic
analysis of 3-D MBS can be classified as "global" or
"topological". The former are simpler to implement because
they treat all systems exactly in the same way, so they are also
1
Matlab
®
is a trademark of The Mathworks Inc. (http://www.mathworks.com).
more appropriate for teaching purposes when there are severe
time limitations. Topological methods take advantage of the
system characteristics and they are far more efficient, although
more complex to describe and to implement. When applied to
closed loop systems, topological methods need to use, at a
lower problem size, the same or similar techniques that global
methods use to deal with constraints. So, global methods are
always a good starting point to learn all MBS techniques.
Global methods are normally based on some kind of
Cartesian coordinates, chosen in such a way that they define
directly the absolute position of each system body. Very often
this is carried out by determining the position and orientation of
a reference frame attached to every moving body. Nearly all
formulations use three coordinates to determine the position of
the frame origin or reference point, but they diverge in the
method used to describe angular orientation.
There are two kinds of reference points that are more
commonly used: the center of gravity and an input point (that
is, a point related with the first joint of the body, when all the
bodies are consecutively visited, starting from the fixed body).
The center of gravity is a privileged point from the dynamic
point of view, but it can have little or null interest from the
geometric and kinematic points of view. It is desirable to let the
user choose the point he or she prefers.
The angular orientation of a rigid body in the 3-D space is
fully defined by the rotation or transformation matrix A. This is
an orthogonal 3×3 matrix whose 9 elements must satisfy the 6
orthonormality conditions. Matrix A is very important because
it transforms the body geometry, which is constant in its
moving frame, to the global reference frame. However six
constraints for each moving body are too many constraints and