ADAMS Summary User Guide (1)

advertisement
A Quick Reference Guide for the use of Solver Data
Sets with the ADAMS Program
M BLUNDELL
School of Engineering, Coventry University
September 2002
PREFACE
These notes are intended as reference material for students making use of the ADAMS (
Automatic Dynamic Analysis of Mechanical Systems ) program. ADAMS is an industry standard
program and the most well known amongst a class of programs used in the computer aided
engineering discipline known as multibody systems analysis. Using this technology engineers can
analyse and simulate the performance of mechanical systems that undergo large displacement
dynamic motion.
More detailed explanations are available in the ADAMS User Manuals now to be found on
line where the software is installed. Users are also referred to the web site www.adams.com where
the technical knowledge base is a rich source of information. Some of the diagrams and figures in
these notes have been copied from the ADAMS User manuals with the kind permission of
Mechanical Dynamics International Limited.
The material contained here is based on a method of creating ADAMS models using data
sets or SOLVER files are they are now known. Note that this guide is not an extensive list of all
the statements and functions available. Rather it is intended as a useful quick reference for
newcomers to the program. There are many ways of generating models most notably now using
the interactive Graphical User Interface (GUI) incorporated in ADAMS/View. Users may move
on to that using the get started guides built into the ADAMS/Help facility once they understand
the basics involved through building models using the methods described here.
C
Mike Blundell
School of Engineering
Coventry University
2002
CONTENTS
1.0 INTRODUCTION TO MULTIBODY SYSTEMS ANALYSIS
1.1 Multibody Systems Overview
1.2 The Analysis Process
1.3 Application in Industry
2.0 ADAMS OVERVIEW
2.1 Main Elements of an ADAMS Model
2.2 ADAMS Data Base and File Structure
2.3 Types of Analysis
2.4 Joint Library
2.5 Results from an Analysis
2.6 Presentation of Results
3.0 PARTS, MARKERS AND JOINTS
3.1 Co-ordinate Systems
3.2 Positioning of the LPRF
3.3 Positioning of a Marker
3.4 Defining a Part
3.5 Defining Markers
3.6 Example Part and Marker Statements
3.7 Constraining Motion of Parts
3.8 The Joint Statement
3.9 Motion Inputs at Joints
3.10 Degrees of Freedom
3.11 Gravitational Fields
3.12 System of Units
3.13 The Request Statement
3.14 The Output Statement
CONTENTS (Continued)
4.0 SCHEMATICS, SYNTAX AND GRAPHICS
4.1 Drawing s System Schematic
4.2 Numbering Convention
4.3 Example Input Deck
4.4 Syntax Rules
4.5 Graphics
4.6 The Graphics statement
5.0 FORCE ELEMENTS
5.1 Line-of-Sight Forces
5.2 Component Method
5.2 Spring Forces
5.4 Damper Forces
5.5 The Springdamper Statement
5.6 The Sforce Statement
5.7 Modelling Bushes
5.8 The Bushing Statement
6.0 ADVANCED CONSTRAINTS AND FUNCTION EXPRESSIONS
6.1 Joint Primitives
6.2 Function Expressions
6.3 Using Function Expressions
6.4 Step Functions
6.5 Arithmetic If Functions
6.6 Using Nonlinear Splines
1.0 INTRODUCTION TO MULTIBODY SYSTEMS ANALYSIS
1.1 Multibody Systems Overview
Multibody Systems Analysis may be summarised as:
The Analysis and Simulation of Mechanical Systems.
Systems can consist of rigid or flexible bodies.
Bodies are assembled using rigid joints or flexible connections.
System Elements such as springs and dampers can be nonlinear.
The mechanism can move through large displacement motion.
Automatic formation and solution of equations of motion.
Animated and plotted presentation of results.
1.2 The Analysis Process
IDEALISATION
- Describe the real system by a 'model' containing rigid or flexible parts,
joint, springs, dampers, forces and applied motions.
MODEL GENERATION - A preprocessor is used to generate a computer input file containing all
the data to describe the model, such as masses, mass centres, joint locations, spring rates ....
GENERATE EQUATIONS - The equations of motion for the system are automatically
formulated based on the principles of Lagrangian dynamics.
EQUATION SOLUTION - The equations of motion are assembled in matrix form and solved to
provide analysis outputs at different points in time.
PRESENTATION OF RESULTS - On completion of the analysis a postprocessor is used to
present results in tables, XY plots or as animated graphics.
1.3 Applications in Industry
VEHICLE TRANSPORTATION
Vehicle Dynamics - handling, ride and durability studies
Suspension Systems, steering and transmission
Door hinges, tailgates, wiper mechanisms
Coach and truck dynamics
AEROSPACE
Flight dynamics and control systems
Landing Gear studies
Satellite solar panel deployment
Pilot ejection
MANUFACTURING
Material Handling Machinery
Robot Dynamics and Control
ELECTROMECHANICAL DEVICES
Tape drives, CD players, VCRs
Circuit breakers
Timing Mechanisms
AGRICULTURE AND CONSTRUCTION
Off-road tracked or wheeled vehicle dynamics
Towed implement behaviour
Durability Analysis
2.0 ADAMS OVERVIEW
2.1 Main Elements of an ADAMS Model
PARTS
Rigid Bodies
Definition by mass, mass centre, and mass moments of inertia
Every model must include a fixed GROUND part
POINTS
Geometric entities used to plan the model
Not part of the final data set
Used with PARTS to define Ids for MARKERS
MARKERS
Defined as a point fixed on a part
Belongs to and moves with the part during the simulation
Used to define the location and orientation of mass centres, joints, springs, graphics, .....
JOINTS
A library of standard joints
A joint connects two parts
The relative motion is constrained by joint type
MOTIONS
Used to input translational or rotational displacements
Can only be input at certain joints and are defined as a function of time
FORCES
Can be linear or nonlinear and translational or rotational
Defined as Action/Reaction (ie. springs) or Action Only
Body forces and joint reactions are calculated automatically
2.2 ADAMS Data Base and File Structure
Text Editor
ADAMS/View
CAD Systems
ADAMS Input File
User
Written
ADAMS
Subroutines
ADAMS/Tire
ADAMS/Car
ADAMS/Vehicle
ADAMS/Rail
ADAMS/Android
etc
Output
Message
Graphics
Request
Results
File
File
File
File
File
ADAMS/View
2.3 Types of Analysis
KINEMATIC
Movement controlled by joint selection and motion inputs.
Movements not effected by external forces or mass properties.
Systems have zero rigid body Degrees of Freedom (DOF).
STATIC
Determine static equilibrium position and reaction forces.
Velocities and accelerations are set to zero.
Often needed before dynamic analysis (ie. full vehicle models).
Can be run QUASI-STATIC in time domain.
DYNAMIC
Complete nonlinear transient multi-degree of freedom systems using numerical integration to
solve the equations of motion. Users can select the integrator for solution and control the accuracy
of the solution process.
2.4 Joint Library
Revolute
Planar
Spherical
Fixed
Cylindrical
Universal
Translational
Rack & Pinion
2.5 Results from an Analysis
On completion of an analysis the following types of results can be generated:
DISPLACEMENTS
VELOCITIES
ACCELERATIONS
FORCES
USER DEFINED OUTPUTS (ie Roll Centre Height)
For each result the magnitude and components will be available. For example the velocities on a
part could be requested to give:
Vmag - Mag. of velocity
Amag Mag. of angular velocity
Vx - Velocity in X direction Wx Angular velocity about X axis
Vy - Velocity in Z direction
Wy Angular velocity about Y axis
Vz - Velocity in Z direction
Wz Angular velocity about Z axis
Vy
The components may be resolved parallel to
the Ground Reference Frame or using a Mark
Wy
Y
Z
MARKER
Wz
GROUND
REFERENCE
FRAME
Z
X
X
Vz
Wx
Vx
Y
2.6 Presentation of Results
TABULAR OUTPUT
Time
Mag
X
Y
Z
0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
1.25000E-02 8.65328E+00 -1.64802E-01 6.05460E-01 8.63050E+00
2.50000E-02 1.72386E+01 -2.93963E-01 9.87716E-01 1.72078E+01
3.75000E-02 2.57077E+01 -3.89073E-01 1.15126E+00 2.56790E+01
5.00000E-02 3.40128E+01 -4.52273E-01 1.10528E+00 3.39919E+01
6.25000E-02 4.21068E+01 -4.86185E-01 8.63417E-01 4.20952E+01
XY PLOTS
GRAPHICAL ANIMATION
3.0 PARTS, MARKERS AND JOINTS
3.1 Co-ordinate Systems
There are three types of right-handed Cartesian co-ordinate systems used:
GROUND REFERENCE FRAME (GRF)
Fixed on the ground and does not move
LOCAL PART REFERENCE FRAME (LPRF)
Each Part has a single LPRF
The LPRF moves and rotates with the Part
The LPRF is defined relative to the GRF
MARKERS
A Marker can belong to the Ground or to a Part
The Marker moves and rotates with the Part
Markers are used to define mass centres, joint locations ...
Markers are defined relative to the LPRF
Markers can be defined relative to the GRF if no LPRF is defined for that part
Ym
Marker m
Xm
01
MRF
Zn
LPRF
ZG
On
{QG}1
Xn
GRF
XG
O1
Om
{QP}n
GROUND
YG
Yn
Part n
Zm
3.2 Positioning of the LPRF
The following two methods may be used to locate and orientate the LPRF with respect to the
GRF:
Euler Angle Approach
Yn
LPRF
Xn
01
On
GROUND
ZG
QG
Zn
GRF
Part n
O1
XG
YG
Z
Z1
Z
Z1


Y3
Y2
Y2
Y1
Y1
Y

X
X1
X1
Location by:
QG = x, y, z
REU =
X1
X2
XG-ZG method

Z
Body n
{ZG}1
ZG
{XG}1

X
Zn
LPRF
Yn
GRF
{QG}1
O1
XG
Q On
YG
01
Xn
GROUND
Location by:
QG = x, y, z
XG = x, y, z
ZG = x, y, z
3.3 Positioning of a Marker
The following two methods may be used to locate and orientate a Marker with respect to the
LPRF:
Euler Angle Approach
Ym
Marker
Xm
Om
Zn
QP
LPRF
Xn
Location by:
On
Yn
QP = x, y, z
REU = ( Same as for LPRF)
Zm
XP-ZP method

ZP

Zz
XP
Zm
MRF
Ym
LPRF
Xn
On
QP
Om
Yn
Marker m
Xm
Body n
Location by:
QP = x, y, z
XP = x, y, z
ZP = x, y, z
3.4 Defining a Part
Definition
The PART statement defines the inertial properties of a rigid body, its initial position, orientation
and velocity.
Format
PART/id, GROUND
or
PART/ id [,MASS = r] [,CM = id] [,IM = id]
[,IP = xx, yy, zz [, xy, xz, yz]]
[[QG=x, y, z, REULER = a, b, c]]
,
[[QG = x, y, z, ZG = x, y, z, XG = x, y, z]]
[[,VX = x, Vy = y, VZ = z, WX = a, WY= b, WZ = c]]
Select one item
Optionally select the item
Optionally select an item combination
Example
PART/02, MASS=10.5, CM=0200, IP=3.8E3,0.02E3,3.8E3
,VX=25000, WZ=90.2
Arguments
CM
The id-number of the marker that defines the centre of mass position and
orientation.
IM
The id-number of the marker about which the moments of inertia are given,
defaults to CM.
MASS
Specifies the part mass.
IP
Mass moments of inertia. Normally only the principal moments of inertia Ixx,
Iyy, Izz are specified.
QG
The origin of the LPRF relative to the GRF.
REULER
Euler angle rotations of the LPRF relative to GRF.
XG
The co-ordinates of a point in the xz-plane of the LPRF measured relative to
the GRF.
ZG
The co-ordinates of a point on the z-axis of the LPRF measured relative to the
GRF.
VX,VY,VZ
The initial translational velocities of the CM
marker measured parallel to the GRF.
WX,WY,WZ
The initial angular velocities of the CM marker measured about its own axes.
3.5 Defining a Marker
Definition
The MARKER statement defines the position and orientation of a geometric point on a part.
Format
MARKER/ id [,PART = id]
[[QP=x, y, z, REULER = a, b, c]]
,
[[QP = x, y, z, ZP = x, y, z, XP = x, y, z]]
Select one item
Optionally select the item
Optionally select an item combination
Arguments
PART
Id-number of the part to which the marker belongs. The default is the last part
defined in the data set.
QP, REU
The origin and euler angles relative to the LPRF.
QP,XP,ZP
The origin, any point on the xz-plane, any point on the z-axis all relative to
the LPRF.
Example
MARKER/0200, PART = 02
,QP = 103.0, 57.5, 247.2, REU= 90D, 90D, 0D
3.6 Example Part and Marker Statements
1
Z
1
0202
0200
0201
z
30
0
x
y
4
Y
GRF
3
4
X
Formulate part and marker statements using:
Euler angle approach to define the LPRF.
PART/02, MASS = 10, CM = 0200, IP = 0.02, 0.02, 0.001
, QG = 3.0, 4.87, 4.5, REU = 0D, -60D, 0D
MARKER/0200, QP = 0, 0, 0
MARKER/0201, QP = 0, 0, -1
MARKER/0202, QP = 0, 0, 1
XP-ZP-Method to define the Markers , LPRF undefined.
PART/02, MASS = 10, CM = 0200, IP = 0.02, 0.02, 0.001
MARKER/0200, QP = 3.0, 4.87, 4.5
, ZP = 3.0, 5.74, 5.0
,XP = 10.0, 4.87, 4.5
MARKER/0201, QP = 3.0, 3.0, 4.0
MARKER/0202, QP = 3.0, 5.74, 5.0
mass=10
Ixx = 0.02
Iyy = 0.02
Izz = 0.001
3.7 Constraining Motion of Parts
The standard joint library provides the following sets of constraints.
Joints
Translational
Constraints
Rotational
Total
Constraints
Constraints
Constant Velocity
3
1
4
Cylindrical
2
2
4
Fixed
3
3
6
Planar
1
2
3
Rack-and-pinion
0.5*
0.5*
1
Revolute
3
2
5
Screw
0.5*
0.5*
1
Spherical
3
0
3
Translational
2
3
5
Universal
3
1
4
* The rack-and-pinion and screw joints are shown as half translational and half rotational because
they relate a translational motion to a rotational motion. They each create one constraint, but the
constraint is neither purely translational nor purely rotational.
3.8 The Joint Statement
Definition
The JOINT statement describes a physically recognisable combination of constraints.
Format
JOINT/id, I = id, J = id ,
CONVEL
, ICTRAN = r1, r2
CYLINDRICAL
, ICROT = r1, r2
FIXED
PLANAR
RACKPIN, PD = r
REVOLUTE [, IC = r1,r2 ]
SCREW, PITCH = r
SPHERICAL
TRANSLATIONAL [, IC = r1, r2 ]
UNIVERSAL
Select one item
Optionally select the item
Optionally select an item combination
Example
JOINT/02, I = 0602, J = 0902, REV
3.9 Motion Inputs at Joints
Definition
A MOTION statement specifies a time dependent translational or rotational motion at a
TRANSLATIONAL, REVOLUTE or CYLINDRICAL joint.
Format
MOTION/id, JOINT = id
,
TRANSLATION
ROTATION
, FUNCTION = expression
Select one item
Optionally select the item
Arguments
JOINT = id
The id number of the joint at which the motion is to be applied.
TRANSLATIONAL
Specifies that the motion is translational
ROTATION
Specifies that the motion is rotational
FUNCTION =
Defines the expression used to define the motion
Example
MOTION/02, JOINT = 02, ROT, FUNCTION = 360D * TIME
3.10 Degrees of Freedom
Definition
For any model the number of degrees of freedom (DOF) in the system can be calculated using the
following equation:
DOF=6 x (No. of Parts) - (Constraints from Joints and Motions)
Each Part has 6 rigid body degrees of freedom. The Ground Part is not included as it does not
move.
Example
For the linkage shown the use of revolute joints seems the obvious solution. This scheme will
however produce a model which is overconstrained.
REV
REV
M
REV
REV
Parts
6x3
Revs -5 x 4
Motion -1 x 1
=
=
=
18
-20
-1
Total DOF
=
-3
The following system although not obvious produces the correct zero degree of freedom
(kinematic) model.
CYL
SPH
Parts
M
REV
REV
6x3
=
18
Revs -5 x 2
Cyls
-4 x 1
Sphs -3 x 1
Motion -1 x 1
=
=
=
=
-10
-4
-3
-1
=
0
Total DOF
3.11 Gravitational Fields
Definition
The ACCGRAV statement specifies the magnitude and direction of the acceleration due to
gravity:
Format
,IGRAV=r
ACCGRAV/
,JGRAV=r
,KGRAV=r
Optionally select an item combination
Arguments
IGRAV=r
Defines the x component of gravitational
acceleration with respect to the GRF.
JGRAV=r
Defines the y component of gravitational
acceleration with respect to the GRF.
KGRAV=r
Defines the z component of gravitational
acceleration with respect to the GRF.
Example
ACCGRAV/ KGRAV = -9810.0
3.12 System of Units
Definition
A UNITS statement sets the appropriate units for an ADAMS analysis.
Format
UNITS/ FORCE=
, LENGTH=
DYNE
KILOGRAM_FORCE
KNEWTON
KPOUND_FORCE
, MASS=
NEWTON
OUNCE_FORCE
POUND_FORCE
CENTIMETER
FOOT
KILOMETER
INCH
METER
MILLIMETER
MILE
GRAM
KILOGRAM
KPOUND_MASS
OUNCE_MASS
POUND_MASS
SLUG
HOUR
MILLISECOND
, TIME=
MINUTE
SECOND
Select one item
Example
UNITS/FORCE=NEWT,MASS=KILO,LEN=MILL,TIME=SEC
3.13 The Request Statement
Definition
A REQUEST statement indicates a set of data the user wants ADAMS to write to the Tabular
Output File And the Request File.
REQUEST/id,
Format
DISPLACEMENT
VELOCITY
ACCELERATION
FORCE
, I=id ,J=id
,RM=id
, COMMENTS=c
Select one item
Optionally select the item
Notes
For each request the results calculated are for the I marker relative to the J Marker.
The J Marker is not required for an Action-only Force.
The components of each request are resolved using the reference marker RM. If this is ommitted
the results are resolved using the GRF. The RM has no effect on angular displacement output.
Angular displacements are output as Euler Angles and are written to the Tabular Output
File in degrees. All other angular output is calculated in radians. Angular displacements may be
output as Yaw, Pitch and Roll using the OUTPUT statement.
Example
REQUEST/1, VEL, I= 0200, J=0100, RM=0200
, COMMENT = Velocity of Part 2 Centre of Mass
In this case the velocity of marker 0200 is requested relative to marker 0100 which belongs to the
ground part and does not move. For this request eight results including the magnitude and
components of velocity will be available.
Vmag - Mag. of velocity
Amag Mag. of angular velocity
Vx - Velocity in X direction Wx Angular velocity about X axis
Vy - Velocity in Z direction
Wy Angular velocity about Y axis
Vz - Velocity in Z direction
Wz Angular velocity about Z axis
The velocity components are resolved using the reference marker 0200 as shown. In this case the
RM is the same as the I marker but need not always be so.
Vy
Wy
Y
02
Z
0200
Wz
GROUND
REFERENCE
FRAME
Z
X
X
Vz
0100
Wx
Vx
Y
3.14 The Output Statement
Definition
An OUTPUT statement controls the generation of Request and Graphics Files and the format of
the Tabular Output File.
Format
REQSAVE
GRSAVE
NOPRINT
TELETYPE
YPR
OUTPUT/
Optionally select an item combination
Arguments
REQSAVE
Save a Request File.
GRSAVE
Save a Graphics File.
NOPRINT
Suppress printout to the Tabular Output File.
TELETYPE
Restrict Tabular Output File to 80 columns.
YPR
Output angular displacements as Yaw, Pitch, Roll.
Z''
Z Z'
Z
Z'
Y''
Y'
Y
X
X'
YAW (+VE Z)
Y'
X''
Y'
X''
X'
PITCH (-VE Y)
Example
OUTPUT/REQSAVE,GRSAVE,TELETYPE,YPR
ROLL (+VE X)
4.0 SCHEMATICS, SYNTAX AND GRAPHICS
4.1 Drawing a System Schematic
Real System
System Schematic
01
01
M
GROUND
YG
ZG
02
REV
XG
03
02
SPH
CRANKSHAFT
CONROD
03
04
04
TRA
UNI
PISTON
The following suggested symbols may be used:
01
GROUND
The Ground Part
YG
XG
ZG
The Ground Reference Frame
02
Part Identification Number
02
Point Identification Number
SPH
Spherical Joint
REV
Revolute Joint
CYL
Cylindrical Joint
TRA
Translational Joint
UNI
Universal Joint
PLA
Planar Joint
M
Motion Input
F
Applied Force
Spring
Damper
4.2 Numbering Convention
The following convention is proposed in order to offer a structured system for the numbering of
various system elements. The purpose of this is to provide a more readable input deck which can
greatly assist with de-bugging.
Before writing the data set, the model should be divided into parts and points.
ADAMS ID structure:
PART/pp
pp=01, ...., 99
01 reserved for ground
MARKER/mmmm
mmmm=ppqq
where pp is the part to which
the marker belongs and qq is
the point number
JOINT/jj
jj=qq
where qq is the point number
MOTION/mm
mm=jj
where jj is the joint number
FORCE/ff
ff=qq
for 'one point forces' (bushes,
action-only forces)
SPRING/ssss
ssss=qqqq
where qqqq are the two points
at each end of the spring
Example
01
01
GROUND
M
0201
YG
REV
XG
ZG
02
02
0101
0202
0302
SPH
03
03
0303
CONROD
Parts
Ground
02
Crankshaft
03
Connecting Rod
04
Piston
0403
Points
01
Crankshaft to Ground Revolute Joint
02
Crankshaft to Connecting Rod Spherical Joint
03
Connecting Rod to Piston Universal Joint
04
Piston to Ground Translational Joint
0404
04
TRA
UNI
CRANKSHAFT
01
04
PISTON
0104
4.3 Example Input Deck
TILTED PISTON CRANK SHAFT MECHANISM
GROUND PART
PART/01, GROUND
MARKER/0100, QP= 0,0,0
MARKER/0101, QP= 0,0,-100
MARKER/0104, QP= 230,0,0, ZP= 250,0,0
CRANKSHAFT
PART/02, MASS= 2, IP= 0,8,0, CM= 0200
MARKER/0200, QP= 20,-40,0
MARKER/0201, QP= 0,0,-100
MARKER/0202, QP= 30,-60,0
CONNECTING ROD
PART/03, MASS= 0.7, IP= 24,24,0 CM= 0300
MARKER/0300, QP= 90,-32.3,0, ZP= 200,0,0
MARKER/0302, QP= 30,-60,0
MARKER/0303, QP= 200,0,0, REU= 0D,-90D,0D
PISTON
PART/04, MASS= 0.4, CM= 0400
MARKER/0400, QP= 210,0,0
MARKER/0403, QP= 200,0,0
MARKER/0404, QP= 230,0,0, ZP= 250,0,0
CONSTRAINTS
JOINT/01, REV, I=0201, J=0101
JOINT/02, SPH, I=0302, J=0202
JOINT/03, UNI, I=0403, J=0303
JOINT/04, TRA, I=0404, J=0104
MOTION/01, JOINT=01, ROT, FUNCTION = 2000*TIME/60
SYSTEM PARAMETERS
OUTPUT/REQSAVE, GRSAVE, TELETYPE
UNITS/LENGTH= MILLI, MASS= KILO, FORCE= NEWTON, TIME= SECS
ACCGRAV/JGRAV= -9810
REQUESTS
REQUEST/1, DIS, I=0400, J=0100, C= Displacement of piston from mass origin
REQUEST/2, VEL, I=0400, J=0100, C= Velocity of piston
REQUEST/3 ACC, I=0400, J=0100, C= Acceleration of piston
END
4.4 Syntax Rules
In order to prepare the ADAMS input deck the main syntax rules which must be followed are:
FIRST LINE -
The first line is the TITLE statement (required)
LAST LINE -
The last line is an END statement (not required)
COMMENTS -
Comments are indicated by more than five consecutive blanks or an
exclamation mark (Not in function expressions)
GENERAL STATEMENT SYNTAX -
Note:
TYPE/id, KEYWORD= value
All data entries in a statement must be separated by commas
NUMERICAL VALUES - Free format; fixed point and exponential notation allowed
ANGULAR DATA - Default: radians. Degrees must be designated by a postfix D
CONTINUATION LINES - A continuation line is indicated by a comma in column 1
But:
A statement can only be interrupted where a comma would appear
A comment line must not precede a continuation line
The continuation comma within a function expression is not part of the
expression
ABBREVIATIONS - Almost all keywords can be abbreviated to the first two letters
DEFAULT VALUES - The default for numerical values is 0 unless specified otherwise
MULTIPLE DEFINITIONS - If any statement or any entry within a statement is defined more
than once, the last one is used. A warning is issued
4.5 Graphics
The GRAPHICS statement must be included in the ADAMS input deck in order to create three
dimensional graphics for later postprocessing. The following graphics elements are a summary of
some of those available.
0202
OUTLINE
0204
0201
CIRCLE
CYLINDER
ARC
FRUSTUM
0203
0205
4.6 The Graphics Statement
Definition
The GRAPHICS statement creates a three dimensional graphic display for use in post-processing.
Format
OUTLINE=id1 id2, ....
CIRCLE,CM=id{,RADIUS=r,RM=id}[,SEG=i]
ARC,CM=id,RANGLE=r{,RADIUS=r,RM=id}
GRAPHICS/ id,
[,SEG=i]
CYLINDER,CM=id,[RANGLE=r],LENGTH=r
[,SIDES=i]{,RADIUS=r,RM=id}[,SEG=i]
FRUSTUM,CM=id,[RANGLE=r],LENGTH=r
[,SIDES=i],TOP=r,BOTTOM=r[,SEG=i]
Select one item
Optionally select the item
Optionally select an item combination
Example
GRA/02, OUT=0201,0201,0203,0204,-0205,0201
GRA/03, CYL, CM=0305, RAD=20, LEN=100
Arguments
OUTLINE=id, .... A sequence of marker id's on one part which are connected by straight lines. A
negative marker specifies an invisible line.
CM
The marker id for the centre of CIRCLE, CYLINDER or FRUSTUM. The z-axis of
this marker is the central axis of the circle, cylinder or frustum.
RADIUS
RANGLE
The radius of a circle, cylinder or arc.
Defines the subtended angle of an arc, cylinder or frustum. Measured positive about
CM z-axis starting at the x-axis.
RM
SEG
LENGTH
SIDES
The reference marker to locate the edge of a circle, cylinder or arc.
The number of straight lines to draw the circle.
The length of the cylinder or frustum.
The number of straight lines between the two parallel circles to draw the cylinder
or frustum.
TOP
BOTTOM
The top radius of a frustum.
The bottom radius of a frustum.
5.0 FORCE ELEMENTS
5.1 Line-of-Sight Forces
Force elements of this nature act along the line of sight between two points on two separate parts.
Examples are the SPRINGDAMPER element and translational action-reaction forces defined
through the SFORCE statement.
z

x
02
y
I
Line-of-Sight
Force Element
x
J
y
z
03
The force acts along the line-of sight between an I marker on one part and a J marker on another
part.
The forces acting on the I and J marker are equal and opposite.
The orientation of the I and J marker have no effect.
5.2 Component Method
The component method applies to translational Action-Only forces where the direction and sense
of the force must be defined and to rotational forces where the axis about which the torque acts is
required.
Translational Action-Only Forces
Action-only
Force
z

x
02
I
y
x
J
z
03
y
Force acts on the I marker
Sense and direction defined by z-axis of the J marker
Rotational Forces
x

z
02
I
Torque acting
on the I marker
y
x
J
z
Reaction torque acting
on the J marker
Torque acts on the I marker and reacts on the J marker
Torque acts about z-axis
I and J marker must be parallel and point in the same direction
y
03
5.3 Spring Forces
Springs connect two parts (I marker on one part J marker on the other)
For Linear springs use the SPRINGDAMPER statement
For Non-Linear springs use the SFORCE statement
Consider the Linear Case
I
I
I
DM(I,J)
DM(I,J)
L
J
J
J
COMPRESSION
AT FREE LENGTH
POSITIVE FORCE
ZERO FORCE
TENSION
NEGATIVE FORCE
L = Free Length of Spring ( at zero force )
DM(I,J) = Magnitude of Displacement between I and J Marker
K = Spring Stiffness
FORCE = K*(L-DM(I,J))
FORCE
L
Compression
Tension
DM(I,J)
5.4 Damper Forces
Dampers connect two parts (I marker on one part J marker on the other)
For Linear dampers use the SPRINGDAMPER statement
For Non-Linear dampers use the SFORCE statement
Consider the Linear Case
I
I
MARKERS
MARKERS
APPROACH
SEPARATE
VR(I,J) IS -VE
VR(I,J) IS +VE
J
J
DAMPER FORCE IS POSITIVE
DAMPER FORCE IS NEGATIVE
VR(I,J) = Radial line of sight velocity between I and J marker
C = Damping Coefficient
FORCE = -C * VR(I,J)
FORCE
Approaching
Separating
VR(I,J)
5.5 The Springdamper Statement
Definition
A SPRINGDAMPER statement applies a rotational or a translational spring damper between two
parts.
Format
SPRINGDAMPER/ id, I=id, J=id
,TRANSLATION
,C = r
,K = r
,FORCE = r
,LENGTH = r
,ROTATION
,KT = r
,CT = r
,TORQUE = r
,ANGLE = r
Select one item
Optionally select an item combination
Arguments
ANGLE = r
Defines the reference angle for the torsional spring. If the reference torque is zero,
ANGLE equals the free angle.
C=r
The viscous damping coefficient for the force.
CT = r
The viscous damping coefficient for the torque.
FORCE = r
The initial force in the spring at the given reference length.
K=r
The spring stiffness for the force.
KT = r
The rotational stiffness for the torque.
LENGTH = r
Defines the reference length for the spring. If the reference force for the spring
is zero, LENGTH equals the free length.
TORQUE = r
The initial torque at the given reference angle.
Example
SPR/0509,I=0205,J=0409,TRANS,K=40,L=150,C=5
This defines a translational spring damper. The data must be consistent for the system of units
being used ie. N/mm, mm, Ns/mm.
5.6 The Sforce Statement
Definition
A SFORCE statement applies a single component force or torque to one or both of the parts it
connects.
Format
SFORCE/ id, I=id, J=id,
TRANSLATION
ROTATION
,ACTIONONLY
,FUNCTION = expression
Select one item
Optionally select the item
Arguments
ACTIONONLY
The force will act on the I marker only.
FUNCTION =
Specifies the expression which will define the force or torque.
Example
SFO/0509, I=0205, J=0409, TRANS
,FUNCTION= 40*(150 - DM(0205,0409)) - 5*VR(0205,0409)
This is equivalent to the springdamper given in the previous example.
5.7 Modelling Bushes
A Bush connects two parts (I marker on one part J marker on the other).
Generates six linear equations based on stiffness and damping.
I
y
I and J Markers Coincident
z
J
x
General Form of the Equation
{Fij} = -[k] {dij} - [c] {vij} + {fij}
Which expands to become
Fx
kx 0 0 0 0 0
dx
cx 0 0 0 0 0
vx
fx
Fy
0 ky 0 0 0 0
dy
0 cy 0 0 0 0
vy
fy
Fz
0 0 kz 0 0 0
dz
0 0 cz 0 0 0
vz
Tx
0 0 0 ktx 0 0
rx
0 0 0 ctx 0 0
wx
tx
Ty
0 0 0 0 kty 0
ry
0 0 0 0 cty 0
wy
ty
Tz
0 0 0 0 0 ktz
rz
0 0 0 0 0 ctz
wz
tz
+
fz
5.8 The Bushing Statement
Definition
A BUSHING statement defines a massless bushing with linear stiffness and damping properties
Format
BUSHING/id, I=id, J=id
,C = cx, cy, cz
,K = kx, ky, kz
,FORCE = fx, fy, fz
,CT = ctx, cty, ctz
,KT = ktx, kty, ktz
,TORQUE = tx, ty, tz
Optionally select an item combination
Arguments
C=cx,cy,cz
Damping coefficients
K=kx,ky,kz
Stiffness coefficients
FORCE=fx,fy,fz
Force preloads
CT=ctx,cty,ctz
Torsional damping coefficients
KT=ktx,kty,ktz
Torsional stiffness coefficients
TORQUE=tx,ty,tz
Torsional preloads
Example
BUSH/03, I=0203, J=0503,
,K=7825,7825,944, KT=2.5E6,2.5E6,944
,C=35,35,480, CT=61E3,61E3,40
6.0 ADVANCED CONSTRAINTS AND FUNCTION EXPRESSIONS
6.1 Joint Primitives
Definition
A JPRIM statement describes a joint primitive, which constrains one two or three degrees of either
translational or rotational freedom.
Format
ATPOINT
INLINE
JPRIM/ id,I=id,J=id,
INPLANE
ORIENTATION
PARALELL_AXES
PERPENDICULAR
Select one item
Example
JPRIM/04, I=0304, J=0604, INPLANE
ATPOINT
ORIENTATION
J
I,J
I
PARALLEL_AXES
INLINE
Z
I
Z
J
Z
I
J
INPLANE
PERPENDICULAR_AXES
Z
Z
J
I
Z
I
J
CONSTRAINED
FREE
6.2 Function Expressions
Function Expressions are used to define force and motion inputs to a system model.
Components
Examples
Numbers
FUNCTION = 1E2 +3.4+6
Operators
FUNCTION = 3*6/2+3-2**2
System constants
FUNCTION = PI+20
System variables
FUNCTION = DX(1040,2010)
Arithmetic IFs
FUNCTION = IF(TIME-5:-1,0,1)
FORTRAN functions
FUNCTION = SIN(TIME*360D)
Continuation commas
FUNCTION = 1+1+1+1+1+1+1+1
,+1+1+1+1+1+1
ADAMS functions
FUNCTION = POLY(0,0,6.28)
Note that a function expression must be terminated by a backslash if it is not the last part of the
statement, e.g.:
SFORCE/01, I=1, J=2, FUNCTION = 60*DM(1,2)\ ,TRANS
or
SFORCE/01, I=1, J=2, TRANS, FUNCTION = 60*DM(1,2)
NUMBERS
integers, real numbers, exponents
OPERATORS
**, *, /, +, -
SYSTEM
PI = 3.1415, DTOR = PI/180,
CONSTANTS
RTOD = 180/PI
SYSTEM VARIABLES
time
TIME
analysis mode
MODE
linear displacement
DM(I,J), DX(I,J,R), DY(I,J,R), DZ(I,J,R)
angular displacement
AX(I,J), AY(I,J), AZ(I,J)
orientation
PSI(I,J), THETA(I,J), PHI(I,J)
YAW(I,J),PITCH(I,J),ROLL(I,J)
translational velocities
VM(I,J), VR(I,J)
VX(I,J,R), VY(I,J,R), VZ(I,J,R)
angular velocities
WM(I,J,)
WX(I,J,R), WY(I,J,R), WZ(I,J,R)
translational
ACCM(I,J)
accelerations
ACCX(I,J,R), ACCY(I,J,R), ACCZ(I,J,R)
angular accelerations
WDTM(I,J,)
WDTX(I,J,R), WDTY(I,J,R)
WDTZ(I,J,R)
translational forces
FM(I,J,)
FX(I,J,R), FY(I,J,R), FZ(I,J,R)
torques
TM(I,J,)
TX(I,J,R), TY(I,J,R), TZ(I,J,R)
ARITHMETIC IF
IF(exp1:exp2,exp3,exp4)
FORTRAN FUNCTIONS
ABS, ATAN, ATAN2, COS,
EXP, LOG, LOG10, MIN, MAX,
SIN, SQRT, TAN
ADAMS FUNCTIONS
BISTOP,CHEBY,SHF,
FORCOS, FORSIN, HAVSIN,
IMPACT, POLY,SPLINE, STEP
6.3 Using Function Expressions
The following illustrate the use of system variables.
DM(I,J)
Magnitude of displacement between two markers
DM (I,J)
y
z
J
z
x
x
I
y
DX(I,J,R)
Returns the x component of the displacement vector of J to I resolved in the
axis system of R.
DX ( I,J,R)
y
z
z
J
y
x
I
y
R
x
DX is negative in this example
x
Consider modelling a linear spring without using the SPRINGDAMPER statement
01
0103
SPRING RATE = 400 N/mm
FREE LENGTH = 260 mm
0206
02
SFORCE/0603, I=0206, J=0103, TRANS
,FUNCTION= 400*(260 - DM(0206,0103))
Note that for this formulation a positive function produces a repelling force (compression) and a
negative function produces an attracting force (tension)
6.4 Step Functions
The purpose of the STEP FUNCTION is to define a change of state in the expression which is
continuous.
FUNCTION = STEP ( x, x1,y1,x2,y2)
y
(x2,y2)
(x1,y1)
x
Example:
Switch a cylinder length from 100 to 120 at a simulation time of 1.2
seconds.
100 mm
20 mm
0210
0310
z
z
02
03
JOINT/10, I=0310, J=0210, TRANS
MOTION/10, JOINT=10,
,FUNCTION = STEP(TIME,1.19,100,1.21,120)
6.5 Arithmetic IF Functions
The ARITHMETIC IF FUNCTION is used to branch to different states depending on the value of
a user defined expression within the function.
FUNCTION = IF(exp1:exp2,exp3,exp4)
The FUNCTION is evaluated depending on the value of exp1:
IF exp1 < 0 the FUNCTION is calculated using exp2
IF exp1 = 0 the FUNCTION is calculated using exp3
IF exp1 > 0 the FUNCTION is calculated using exp4
Example:
Using the Arithmetic If, define the following motion.
DISTANCE ( mm )
200
EXP3
EXP2
EXP4
100
1.0
MOTION/10, JOINT=10
,FUNCTION=IF(TIME-1.5:
,STEP(TIME,1.0,100,1.2,120),
,120,
,STEP(TIME,2.0,120,2.5,50))
2.0
3.0
TIME ( SECS )
6.6 Using Nonlinear Splines
The most direct method to represent a nonlinearity in a system is to use the SPLINE statement and
the SPLINE FUNCTION.
The SPLINE Statement
Y
yn
y3
y2
y1
x1
x2
x3
xn
SPLINE/id
,X = x1, x2, x3, . . . . . . . . . ., xn
,Y= y1, y2, y3, . . . . . . . . . ., yn
Note that the x values must be entered in ascending order.
For a MOTION the x values must be time.
For a FORCE the x values may be time or a system variable.
X
In order to access the data entered using a SPLINE statement a MOTION or FORCE makes use of
the CUBSPLINE FUNCTION.
FUNCTION = CUBSPLINE (x,0,id)
where x is the variable associated with the x values on the spline and id is the id number of the
SPLINE statement.
Example:
Nonlinear spring
01
FORCE - DEFORMATION CURVE
FORCE
(N)
0103
Free
Length
Compression
0206
DM (0206,0103)
(mm)
02
Extension
SPLINE/1
,X = 220,
230, 240, 250, 260, 270, 280, 285, 290
,Y = 20E3,15E3,7E3, 3E3, 0, -4E3,-8E3,-11E3,-15E3
SFORCE/0603, I=0206, J=0103, TRANS
,FUNCTION=CUBSPLINE(DM(0206,0103),0,1)
Download