simxpert r3.2 motion workspace guide

262
1 Introduction Motion Workspace Guide Introduction

Upload: paulkastle

Post on 16-Nov-2014

892 views

Category:

Documents


10 download

DESCRIPTION

This is the Workspace User's Guide for the SimXpert Motion Workspace.

TRANSCRIPT

Page 1: SimXpert R3.2 Motion Workspace Guide

1Introduction

Motion Workspace GuideIntroduction

Page 2: SimXpert R3.2 Motion Workspace Guide

Overview and Definition2

Overview and DefinitionAn overview of motion simulation is given here.

IntroductionSimXpert is based on the world's most widely used mechanical system simulation software. It enables users to produce virtual prototypes, realistically simulating the full-motion behavior of complex mechanical systems on their computers and quickly analyzing multiple design variations until an optimal design is achieved. This reduces the number of costly physical prototypes, improves design quality, and dramatically reduces product development time.

In a motion simulation, the system has specific degrees of freedom and is driven by external forces and excitations. SimXpert solves the nonlinear differential and algebraic equations of the system in order to simulate the motion of the model subject to the specified conditions.

Components involved in the simulation are known as parts, and may have unique geometry and mass properties. Parts are connected to one another by various types of connections, which connect specific degrees of freedom. Motion may be specified for connections to control how parts move with respect to each other. Forces may be applied to parts, including forces of constant magnitude and spring dampers, which produce variable force based on relative position and velocity. Once you compute a simulation, you may display the motion of each part, and chart data from the simulation.

Page 3: SimXpert R3.2 Motion Workspace Guide

3IntroductionDegrees of Freedom

Degrees of FreedomDegrees of freedom dictate how a mechanical system is allowed to move. The following sections provide information on understanding and calculating degrees of freedom in your model.

Removing Degrees of Freedom

In mechanical systems, a degree of freedom (DOF) is a measure of how bodies can move relative to other bodies. Therefore, the total number of degrees of freedom of a mechanical system is the number of independent motions that characterize the model.

A freely floating rigid body in three-dimensional space is said to have six DOF. This implies that the body can exhibit motion in six independent ways: three translations and three rotations. The DOF of a mechanical system represent the minimum number of displacement coordinates needed to completely specify the system configuration. Once you know these, you can calculate any other information pertinent to the configuration as a function of these independent variables.

You can, of course, represent a mechanical system with more coordinates than there are degrees of freedom. In such an instance, the coordinates are not all independent. There must be algebraic constraint equations relating some of the coordinates. This is precisely how SimXpert works.

For most mechanical systems, the number of degrees of freedom is constant throughout time. In some mechanical systems, the number of degrees of freedom can change as their configurations change over time.

SimXpert allows you to specify the position of each body in the model, regardless of the degrees of freedom in the mechanical system. Different types of constraints constrain different combinations of motion, thereby removing various DOF from the model. Revolute joints, for example, constrain two degrees of rotational freedom and three degrees of translational freedom therefore allowing one degree of rotational freedom. Cylindrical joints constrain two degrees of rotational and two degrees of translational freedom, therefore allowing one rotational and one translation freedom. Rotational or translation motions, defined at joints, constrain either one rotational or translational DOF, respectively. Tables 1, 2, and 3 list the number of DOF removed by SimXpert constraints.

Calculating Degrees of Freedom Using the Gruebler Equation

To determine the total number of degrees of freedom (DOF) for a mechanical system, you can use the Gruebler equation which is:

Degrees of freedom = [ 6 * (Number of movable bodies) ] - (Number of constraints)

To evaluate this equation, you would count the number of movable bodies in your model and subtract the DOF removed by the constraints and prescribed motions. Note that the body count does not include the ground body since it does not contribute any DOF. For example, the Gruebler equation for a model that contains three movable bodies, one rotational motion, three revolute joints, and one translational joint would be:

DOF = ( 6 * 3 ) - ( 1 + 5 + 5 + 5 + 5 ) = 18 - 21 = -3

Page 4: SimXpert R3.2 Motion Workspace Guide

Degrees of Freedom4

From this calculation, you see that the model has -3 DOF. When the Gruebler equation yields a DOF count less than zero, it indicates that the model definitely has one or more constraints that are redundant.

If you use the same model and replace one of the revolute joints with a spherical joint and another revolute joint with a cylindrical joint, the Gruebler equation would then be:

DOF = ( 6 * 3 ) - ( 1 + 5 + 3 + 4 + 5 ) = 18 - 18 = 0

This equation now indicates that there are zero DOF in the model. When the Gruebler equation is greater than or equal to zero, you cannot be positive that the mechanical system does not contain constraints that are redundant.

The Gruebler equation offers a good way to understand how the model is built, but to see if there are redundant constraints or not, it is best to let SimXpert perform an analysis. You will receive a message from SimXpert if the model contains redundant constraints. However, you do not know how many or which ones SimXpert sees as the redundant constraints. For information on how SimXpert handles models with redundant constraints, see Checking for Redundant Constraints below.

Checking for Redundant Constraints

You can construct a legal and well-defined model where one set of joints constrain the model in exactly the same way as another set of joints. In mathematical terms, you can state that the equations of constraint of both sets of joints are redundant with each other.

A SimXpert model is a mathematical idealization of a physical mechanical system. For this reason, your model can contain redundant constraints even if you define your model with the same number and types of joints as the physical mechanical system.

An example of a mechanical system with redundant constraints is a door supported by two hinges. In a real door, minor violations of the hinge collinearity do not prevent the door from operating because of body deformity and joint-play in the hinges. In the mathematical model, where the bodies are rigid and joints do not permit any play, the two hinges are redundant but consistent when the axes of the two hinges are aligned. If, however, the axes are not aligned, the door cannot move without breaking one of the hinges. In this case, the two hinges are inconsistent and half of their constraints are redundant.

SimXpert does not tolerate redundant constraints whether they are consistent or inconsistent. When encountered, SimXpert subjectively determines which constraints are redundant, deletes them from the set of equations, and provides a set of results that characterize the motion and forces in the model. Note that other solutions can also be physically realistic. Systems with redundant constraints do not have a unique solution.

According to the Gruebler equation, a SimXpert model with fewer than zero DOF is overconstrained. SimXpert can solve an overconstrained model only if the redundant constraints are consistent. Redundant constraints are consistent if a solution satisfying the set of independent constraint equations also satisfies the set of dependent or redundant constraint equations.

In the case of the door with two hinges, SimXpert ignores five of the constraint equations. You, unfortunately, do not know which equations are removed. If you assume that SimXpert ignores all of the equations corresponding to one of the hinges, that means that all the reaction forces are concentrated at the other hinge in the SimXpert solution. SimXpert subjectively sets the reaction forces to zero at the

Page 5: SimXpert R3.2 Motion Workspace Guide

5IntroductionDegrees of Freedom

redundant hinge. However, as long as distribution of reaction forces maintains a constancy of the net reaction force and torque, it also provides a correct solution.

SimXpert does not always check joint initial conditions when it does overconstraint checking. If you apply a motion on one joint and initial conditions on another joint, check to make sure that they are not redundant because SimXpert does not check them. As a general rule, you should not specify more initial conditions than the model has degrees of freedom.

For a model with redundant constraints, constraints that are initially consistent can become inconsistent as the model articulates over time. SimXpert stops execution as soon as the redundant constraints become inconsistent. Therefore, you should not intentionally input redundant constraints in your model. For example, consider a planetary gear system with redundant constraints. Slight misalignment errors can accumulate over time, eventually resulting in a failure of the consistency check. If this occurs, manually remove the redundant constraints or replace them with flexible connections.

If you have redundant constraints in your model, try replacing joints with joint primitives or with approximately equivalent flexible connections. By reviewing the messages saved in the message file after SimXpert tries to solves your model, you can find out how many and which redundant constraints are being removed.

Page 6: SimXpert R3.2 Motion Workspace Guide

Modeling and Simulating Process6

Modeling and Simulating ProcessThis explains the general mechanical system modeling and simulating process you should follow when using SimXpert.

Process Overview

The figure below shows the steps in the modeling and simulating process. Although the steps that you perform to model and simulate a mechanical system are listed as though you build the entire model at once and then test, review, and improve it, you should build and test small elements of your model before building the entire model. For example, create a few parts, connect them together, and then run a simulation. This way you can ensure that each element works before moving on to the next step. This is referred to as the crawl-walk-run approach.

Page 7: SimXpert R3.2 Motion Workspace Guide

7IntroductionModeling and Simulating Process

Build

The build step in the process includes:

1. Idealizing the mechanical system so it can be represented mathematically. This involves deciding how many parts really need to be modeled, how to connect the parts to represent the movement of the physical system. Also, you must specify which compliant connections need to be modeled and which environment forces need to be modeled.

2. Selecting the units. You must work within a consistent set of units that is appropriate for your model.

3. Creating the basic elements. This involves creating the parts of your model, adding constraints to define movement, and defining forces that act on your model.

Test

After you define the model, you can run a simulation using SimXpert to verify its performance characteristics and response to a set of operating conditions.

We recommend that you simulate your model at various times during the building step. This allows you to more readily find and correct any mistakes in the model. You can also set up simulations so that they are interactive, allowing you to control and refine the simulation. During the simulation, SimXpert solves a set of equations of motion for your model.

Review

As you create your model, it’s important to consider the results you want. In general, it is best to output any information you think is useful for model verification or system analysis. When you run a dynamic, kinematic, or quasi-static simulation, SimXpert outputs data at the fixed intervals you specify. These fixed intervals are known as output time steps. When you run a static simulation, SimXpert outputs data only once.

You can request that SimXpert output data for displacements, velocities, accelerations, reaction forces, applied forces, user-defined variables, generic system elements, as well as system modeling element inputs and outputs. SimXpert writes all the data you request to a request file at each output time step. SimXpert can read this file for plotting purposes. Plots are often useful for studying the specific behavior of a model. For example, if you needed to know the maximum translational loading at a joint, you could plot the translational reaction forces at the joint over the course of the entire simulation and quickly

Page 8: SimXpert R3.2 Motion Workspace Guide

Modeling and Simulating Process8

determine the maximum load. The figure below shows a plot of the translational reaction forces in the translational joint between the base and the upper link of a robot arm.

Figure 1-1 Plot of Translational Joint Reaction Force

SimXpert also outputs graphical data at each output step to the graphics file. Graphical output is often useful for animating the overall behavior of the model and identifying specific problems, such as improper connectivity, misapplied motions or forces, unwanted oscillatory behavior, or clearance problems. The figure below shows an animation with superimposed frames.

Figure 1-2 Superimposed Frames from the Animation of a Robot Arm

Improve

After you have run initial simulations to determine the basic motion of your model, you can improve and refine your model by adding more complexity to it. You can edit the model using more advanced functions. For example, you can establish parametric relationships among modeling elements that allow you to perform design sensitivity studies to compare alternative designs. After you modify the model, run more simulations to verify the model.

Page 9: SimXpert R3.2 Motion Workspace Guide

9Components

Components

Page 10: SimXpert R3.2 Motion Workspace Guide

Overview10

OverviewThe components of your model include the separate parts of your mechanism, and may each be based on imported CAD geometry. You may import a variety of geometry in SimXpert, including CATIA and Parasolid formats. Once imported, these pieces of geometry may be applied to one or more parts in the complete assembly in order to compose the complete simulation model.

You may also create geometry within the SimXpert Motion Workspace, which is covered in the Geometry tab. Before creating geometry however, you muct define motion parts with user defined mass properties under the components tab.

Page 11: SimXpert R3.2 Motion Workspace Guide

11ComponentsImport Geometry

Import GeometryUsing the File menu, you may import Geometry from a variety of formats.

1. Select Import from the File Menu.

2. Select the format of the file you wish to import.

3. Navigate to the directory containing your geometry file.

4. Select the file and click Open.

5. The geometry will be imported and will appear in the treeview and canvas.

Page 12: SimXpert R3.2 Motion Workspace Guide

Coordinate Systems12

Coordinate SystemsWithin SimXpert, you may create local coordinate systems that can be used to help construct connections, forces, and requests. These coordinate systems include origin and orientation information and may be referenced by other operations which require location or orientation data. By default coordinate systems are children of the model, but may be created as children of whichever object is set to current during creation of the coordinate system. Floating coordinate systems may be defined which are associated with a particular part but don’t have a defined location.

Description of Fields:

Field Description

Name Allows specification of a unique name for each coordinate system.

Define as a Floating Coordinate System

Checkbox that when enabled allows definition of a floating coordinate system, which only has a name and a part to which it is associated. This option is used by General Force, Vector Force, and Vector Torque. Cleared by default.

Reference System

Allows selection of a reference coordinate system to be used in positioning the new coordinate system in a “nested” manner relative to an existing coordinate system. Icon next to field is the "Origin Icon". Selecting this will set the Reference System to the Origin and the text "Origin" will display in the field.

LocationAllows specification of location of the coordinate system origin using common location selection tools.

OrientationAllows specification of the orientation of the coordinate system using common orientation options.

Page 13: SimXpert R3.2 Motion Workspace Guide

13ComponentsCoordinate Systems

Sample Form:

To create a coordinate system:1. Make sure that the desired parent of the coordinate system is set as the current object. The model

is the current object by default, but another object may be selected by right clicking and selecting “Set Current” from the contextual menu.

2. From the Components toolbox select Coordinate System.

3. Choose a reference coordinate system if desired. The default is the global reference frame, but you may select other existing coordinate systems in order to create nested coordinate systems provided that you are using non-geometric ways of defining location and orientation.

4. Choose a location method for the coordinate system and provide necessary data.

5. Define the orientation of the coordinate system using the available methods.

6. Click OK. The coordinate system will appear in the canvas and in the tree.

Page 14: SimXpert R3.2 Motion Workspace Guide

Hardpoints14

HardpointsHardpoints are parametric locations within a model that contain no orientation information. You may create hardpoints using the Hardpoint tool in the Components Toolbox. Hardpoints define locations in the model and are the basic building blocks for most other components. When you create hardpoints, you can define them symmetrically or as single points in space. When defining hardpoints symmetrically, you could, for example, define a left hardpoint and the right hardpoint is automatically generated as a parametric point.

Description of Fields

Sample Form

To create a hardpoint:1. From the Components toolbox select Hardpoint.

2. In the Properties form, select single or pair. You may also enter a unique name for the hardpoint.

Field Description

Name Allows specification of a unique name for each hardpoint. Automatically populated with Hardpoint_###.

Single or Pair Selects whether a single hardpoint or a pair of points will be created.

Symmetry or No Symmetry

Appears when Pair is selected. Selects whether second hardpoint will be symmetrical with the first about the model’s XZ plane.

Location Allows the direct entry of X, Y, and Z coordinates of hardpoint positions.

Page 15: SimXpert R3.2 Motion Workspace Guide

15ComponentsHardpoints

3. If pair is selected, then additional options will be available such as symmetry and second point location. Select symmetry if you want the points to be symmetric about the model’s X axis.

4. Enter the X, Y, and Z coordinates of the location to create the hardpoint. If symmetry is selected, the second point location will be completed automatically.

5. Click OK. The hardpoint (or pair) will appear in the canvas and in the tree.

Page 16: SimXpert R3.2 Motion Workspace Guide

Parts16

PartsParts are the main components of a model. There may be multiple parts in each model and the geometry, inertial properties, and initial conditions for each may be specified independently. You may designate parts as moving parts or ground parts from the properties form.

Ground Part

The ground part is the only part in your model that must remain stationary at all times. You can define a new or existing part as the ground part. The ground part does not have mass properties or initial velocities and does not add degrees of freedom into your model.

Moving Parts

Moving components of your model. They can have a mass, inertia, initial position, and initial velocity. They are made up of geometric elements of any size or shape.

Description of Fields

Definition Tab::

Field Description

Name Allows specification of a unique name for each part. Automatically populated with Part_###.

Active Selects whether part will be included in a simulation.

Ground Specifies that part will be a ground part if selected, or a moving part if cleared. Check box is cleared by default.

Source of Inertia Properties

Select User Specified or Geometry. Geometry specifies that automatically calculated values based on part Geometry will be used for mass and inertia properties. User Specified specifies that manually entered values will be used for mass and inertia properties, and is required for geometry that is to be created within the SimXpert Motion Workspace. Geometry is selected by default.

DensitySpecifies the density value used if mass and inertia properties are automatically calculated based on part Geometry.

Reference System Specifies the Coordinate System defining the local part reference frame.

Mass Specifies the part mass.

Ixx/Iyy/IzzSpecifies diagonal inertia values as calculated about the Inertia Properties Location, expressed in the coordinate system of the Inertia Orientation.

Ixy/Ixz/IyzSpecifies off-diagonal inertia values as calculated about the Inertia Properties Location, expressed in the coordinate system of the Inertia Orientation.

Page 17: SimXpert R3.2 Motion Workspace Guide

17ComponentsParts

Initial Conditions Tab:

Initial Position

Center of Mass Location Allows manual specification of coordinates of center of mass location if Source Of Inertia Properties is selected. Specified relative Reference System.

Inertia values defined at Center of Mass

Specifies that inertia values are calculated about center of mass location if selected, or about the manually entered Inertia Properties Location if cleared. Check box is selected by default.

Inertia Properties Location

Allows manual specification of coordinates of location about which inertia properties are calculated if Source Of Inertia Properties is selected and Inertia Values Defined at Center of Mass is cleared. Specified relative Reference System.

Inertia OrientationAllows manual specification of orientation about which inertia properties are calculated if Source Of Inertia Properties is selected. Specified relative Reference System.

Geometry Allows selection of one or more geometry to be associated with a part. Previously imported geometry may be selected from the treeview or canvas. Geometry can be selected by setting Pick Parts or Pick SubAssy in the pick panel. Selecting Clear Selection List in the pick panel will clear the Geometry field. Once selected, this geometry will be used to automatically calculate mass and inertia properties.

Field Description

Positions held fixed during assembly:

Global X Holds the part fixed in the global X direction during assembly.

Global Y Holds the part fixed in the global Y direction during assembly.

Global Z Holds the part fixed in the global Z direction during assembly.

Orientations held fixed during assembly:

Psi Holds the part fixed in the Psi rotation direction during assembly.

Theta Holds the part fixed in the Theta rotation direction during assembly.

Phi Holds the part fixed in the Phi rotation direction during assembly.

Field Description

Page 18: SimXpert R3.2 Motion Workspace Guide

Parts18

Initial Velocity

Loads Tab::

Field Description

Translational:

Along X Specifies part initial velocity along the X axis of the global reference frame.

Along Y Specifies part initial velocity along the Y axis of the global reference frame.

Along Z Specifies part initial velocity along the Z axis of the global reference frame.

Reference SystemSpecifies coordinate system for initial translational velocity values. Origin is selected by default.

Rotational:

About X Specifies part initial velocity about the X axis of the global reference frame.

About Y Specifies part initial velocity about the Y axis of the global reference frame.

About Z Specifies part initial velocity about the Z axis of the global reference frame.

Reference System

Drop-down that specifies location and orientation for initial rotational velocity values. CM location and IM location is selected by default. Global orientation and user specified (where any coordinate system may be selected) options are available as well.

Field Description

Connections and Forces List of connections and loads that affect the part.

Load Bearing GeometrySelections of geometry within the part to carry the load from connections or forces. This geometry may be modified to apply loads as the user desires.

Replace GeometryButton that allows selection of alternate geometry as the load bearing region of a selected connection or force.

Append GeometryButton that allows selection of additional geometry as the load bearing region of a selected connection or force.

Page 19: SimXpert R3.2 Motion Workspace Guide

19ComponentsParts

Structures Tab:

Flexible Body Tab:

Damping

Field Description

Properties:

SourceSpecifies whether properties will be defined by entries on this form or by existing material properties in the Structures workspace.

Density Specifies density for the part.

Young’s ModulusSpecifies Young’s (Elastic) modulus for use in the structural analysis of the part.

Poisson’s Ratio Specifies Poisson’s ratio for use in the structural analysis of the part.

Mesh:

SourceSpecifies whether the finite element mesh will be defined by entries on this form or by an existing mesh in the Structures workspace.

Element SizeSelects whether the global edge length for the elements will be determined automatically or set to a user input value.

TypeSpecifies the dimensionality of the mesh to be created. Options are available for surface and solid meshing.

Element TypeSpecifies whether linear elements (without midside nodes) or quadratic elements (with midside nodes) will be created for the part.

Output:

Number of ModesSpecifies the number of modes to be requested from the modal structures analysis of the part.

ResultsSelects which result quantities will be requested from the modal analysis. Element Stress, Grid Point Stress, Element Strain, and Grid Point Strain may each be activated or deactivated individually.

Field Description

MethodDrop-down that selects between default damping and custom damping, which is defined by a user entered expression or subroutine.

Custom

MethodOption button that selects between runtime expression and user subroutine to define the damping.

EspressionField that defines the expression for the damping. To define the expression using the Expression Builder, click the icon to the right of the text.

Page 20: SimXpert R3.2 Motion Workspace Guide

Parts20

Animation Visualization

Modal Information Tab::

Parameters Field that lists parameters to be passed to user subroutine to define damping.

RoutineField that selects user subroutine to define damping. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Generalized Damping

Drop-down that defnes optin for generalized damping. Set to off by default.

Off No generalized damping is used. This is the default setting.

Full Generalized damping applied to both rigid and modal coordinates.

Internal Only

Generalized damping only applied to modal coordinates.

Field Description

Animation Visualization

Option button that determines how the part will be displayed during animation.

Rigid Disables flexible body results visualization in animations.

Linear Stress / Deformation

Provides option to display part stress and/or deformation during animation. Actual result data to be displayed will be specified on the Animation form.

Field Description

SpecifyOption button that determines whether modal information is defined by a range or table.

Range

ModesOption button that specifies whether the modes in the specified range will be enabled or disabled.

Method Frequency (Hz) is currently the only available option.

RangeDrop-down that selects whether the values specified will be above, between, or below user specific values.

Values Frequency (Hz) values to be used in filtering the range of modes.

Table

Icon Matrix editor icon opens panel to directly enter table of modes to enable.

Field Description

Page 21: SimXpert R3.2 Motion Workspace Guide

21ComponentsParts

Transfer Loads Tab:

Visualization Tab:

Outputs Tab::

Field Description

Results Set Specifies results set to be used for quasi-static load transfer.

Start TimeSpecifies start time for loads to be transferred. Time must be within the range of the selected results set.

End TimeSpecifies end time for loads to be transferred. Time must be within the range of the selected results set.

IntervalOutput interval for load transfer. Within the selected range, transfer loads will be calculated at this interval.

Transfer Button that begins the load transfer process with the specified parameters.

Field Description

Visual Checkbox that enables visibility of the motion part.

Color Defines the color of the motion part icon.

Size Specifies the size of the motion part icon.

Field Description

Translational Displacement

Checkbox that enables translational displacement output for the part. This must be selected in order to generate an animation.

Center of Mass Translational Displacement

Checkbox that enables translational displacement output for the part’s center of mass. This is cleared by default.

Euler Angles Checkbox that enables output of Euler angles for the part.

Yaw/Pitch/Roll Angles

Checkbox that enables output of Yaw, Pitch, and Roll angles for the part. Cleared by default.

Modal Scaling Factor

Checkbox that enables output of a modal scaling factor for each mode in a flexible body simulation.

Euler ParametersCheckbox that enables output of Euler parameters for the part. This must be selected in order to generate an animation.

Translational Velocity

Checkbox that enables output of translational velocity for the part.

Page 22: SimXpert R3.2 Motion Workspace Guide

Parts22

Center of Mass Translational Velocity

Checkbox that enables output of translational velocity for the center of mass of the part. Cleared by default.

Angular Velocity Checkbox that enables output of angular velocity for the part.

Modal Velocity Checkbox that enables output of modal velocity for the part.

Translational Acceleration

Checkbox that enables output of translational acceleration for the part.

Center of Mass Translational Acceleration

Checkbox that enables output of translational acceleration for the center of mass of the part.

Angular Acceleration

Checkbox that enables output of angular accelerations for the part.

Modal Acceleration

Checkbox that enables output of modal acceleration for the part.

Kinetic Energy Checkbox that enables output of kinetic energy for the part.

Field Description

Page 23: SimXpert R3.2 Motion Workspace Guide

23ComponentsParts

Sample Form:

To create a part associated with multiple geometries, use the Properties form. To create a part associated with a subassembly, use the Properties form or RMB from the Model Browser.

To create parts using 'From Geometry' tool:1. From the Components toolbox select From Geometry.

Page 24: SimXpert R3.2 Motion Workspace Guide

Parts24

Create Parts From Geometry form is populated with all available geometry. A geometry is only available if no other part is associated with it or with any subassembly that it is part of.

2. In the Create Parts From Geometry form, enter a name for each part or use the defaults.

3. Select Ok to finish creating parts.

To create parts using RMB in the Model Browser:1. In the Model Browser, select one or more geometries (Part and/or SubAssy).

2. Right-click the selected geometries and select Create Part.

Parts are created using the names of the geometries as names of the parts.

To create a part using the Properties Form:1. From the Components toolbox select Part.

2. In the Properties form, enter a name for the new part.

3. Using the pick toolbar, select geometry to be associated with the part from the model browser or the canvas. The selected geometry will appear in the Geometry list box.

4. Select Initial Conditions from the menu on the left of the form to specify the initial conditions that will be applied to the part.

5. If desired, you may define structural properties for the part in the Structures section of the part property editor. Values may be input for Young’s Modulus, Poisson ratio, meshing parameters, and analysis output requests to be used in a flexible body analysis. For more information, see Flexible Bodies.

6. If the part is to be a flexible body, you must select the Model Part as Flexible checkbox on the Flexible Body form. Once selected, additional options will be available to select the model, the .mnf file, and how the part will be displayed.

7. Click OK to finish creating the part.

Page 25: SimXpert R3.2 Motion Workspace Guide

25ComponentsFlexible Bodies

Flexible BodiesParts in SimXpert may be modeled as flexible bodies. This is accomplished through interaction between the Structures and Motion workspaces. From the Motion workspace, you may define structural analysis parameters using the Structures section of the Part property editor. You may then create a flexible body for each part that you wish to model as flexible. This automatically launches the Structures workspace. From there, you perform a Modal Analysis (SOL 103) which generates a Nastran results file and a Modal Neutral File (MNF). Attaching these results in the Structures workspace allows you to switch back to the Motion workspace and select the Model Part as Flexible checkbox. Upon performing the simulation, displacement and stress data will be available for the body, and may be displayed in fringe plot form during animations.

Page 26: SimXpert R3.2 Motion Workspace Guide

Flexible Bodies26

Sample Forms:

Page 27: SimXpert R3.2 Motion Workspace Guide

27ComponentsFlexible Bodies

Page 28: SimXpert R3.2 Motion Workspace Guide

Flexible Bodies28

To create a flexible body:1. Enter the part property editor for the motion part that you wish to make flexible. Select the

Structures section to define material properties, mesh size and type, and analysis output requests.

Page 29: SimXpert R3.2 Motion Workspace Guide

29ComponentsFlexible Bodies

2. Select the Loads section of the part property editor to define load bearing geometry for each of the forces and connections that act on the motion part.

3. Select Create Flexible Body from the Structures section of the part property editor, or right click on a motion part and select Create Flexible Body. This automatically creates the mesh, connections, and properties defined earlier and opens the Structures workspace.

4. Perform modal analysis (SOL 103).

5. Attach the Nastran results file using Attach Results from the File menu.

6. Return to the Motion workspace.

7. Open the part property editor for the part.

8. Select the Model Part as Flexible checkbox under the Flexible Body option.

9. Select the desired Result Set.

10. Choose the animation visualization method. The default is Linear Stress/Deformation, which displays flexible body results on a fringe plot in the animation.

11. Perform a motion simulation.

12. Select Animation from the Results toolbox.

13. Select the desired Result Type and Derivation under the Plot Data option. This selects which results will be displayed on the animation fringe plot. The Deform and Fringe options provide additional control for displaying results entities.

Page 30: SimXpert R3.2 Motion Workspace Guide

ADM Container30

ADM ContainerThis feature provides a means to enter MSC.Adams solver level syntax in to the motion workspace so that it can be included in the motion workspace model. The main purpose of this feature is to allow users to include solver level syntax for objects that currently do not have higher level abstracted motion workspace objects developed at this time. A secondary purpose is to allow experienced users who have traditionally entered Adams syntax to create their models in the motion workspace.

Sample Form:

To enter Adams syntax:1. Select Adm Container from the Part menu.

2. Enter the Adams Solver syntax in the form window or click to import text from an .adm or .txt file.

3. Click to verify the syntax of the commands.

4. Click OK to include the syntax in the model.

Page 31: SimXpert R3.2 Motion Workspace Guide

31ComponentsExport of Models From Adams View To SimXpert

Export of Models From Adams View To SimXpertAn Adams View command file and macro are included with SimXpert that allow the export of models from Adams View and their re-creation in SimXpert through the use of SimXpert RADE Macros. These files are contained in the following directory:

C:\MSC.Software\SimXpert_<platform>\R2\<platform>\plugins\MSC\Motion\examples\macros

• read_export_simx_macro.cmd - A View cmd file which will read in a macro file called export_to_simx_mac.cmd.

• export_to_simx_mac.cmd - A View macro which will export an adm file, parasolid files, along with a rade script for a specified model.

The generated rade script along with the adm and parasolids files can be used within SimXpert Motion to recreate the model.

All output files will be placed in a directory which has a name in the form of 'exported_to_simx_MODELNAME`

Procedure:1. Start Adams View and read in your model.

2. Import the command file “read_export_simx_macro.cmd”

3. Open Adams View's Command Window (F3) and type:

mdi export_to_simxpert model = model_name

(where model_name is the Adams View model name)

Invoking that macro will cause an adm file to be exported along with parasolids files for each part that has geometry to a directory inside your current working directory called “exported_to_simx_model_name”.

Additionally, a rade script will be created which may be used within SimXpert to import the adm & parasolids files.

After invoking the macro, you should see these files in the “exported_to_simx_model_name”directory:

model_name_simx.adm

PART_*_geom.x_t

model_name_exported.rdl

4. Start SimXpert, go to the Motion Workspace

5. Import a rade file via Tools->Macro->Macros... (Ctrl+F8)

Select the model_name_exported.rdl that Adams View created.

6. You should now see the model with all of the geometry.

Page 32: SimXpert R3.2 Motion Workspace Guide

Export of Models From Adams View To SimXpert32

Notes:• The generated rade script will contain full path info for the generated adm and parasolids files.

At the very top of the rade file, you will see a variable named cwdPath.

Example:

global cwdPath = "/storage/views/fred/work/exported_to_simx_testSimX1/";

• If you transfer all of the exported files to a different directory or different machine, you may need to modify that file path in order for the script to execute correctly.

• If you are running SimXpert from within the directory that contains all of the exported files, you can modify the cwdPath variable in the rade file so that it is set to the empty string.

Example:

global cwdPath = "";

• If you have flexible bodies in your Adams View model, you need to add an extra option to the export command. This command is “do_flexbodies = yes”

Example:

mdi export_to_simxpert model = model_1 do_flexbodies=yes

• Unsupported Adams statements that reside in the Adm Container will be ignored. You may need to recreate objects like contacts once your model has been imported.

Page 33: SimXpert R3.2 Motion Workspace Guide

33ComponentsUpdate Model

Update ModelThe Update Model tool automatically updates the model to incorporate any changes in the CAD geometry (whether added or deleted), part locations, orientations, masses and inertias. This tool reports all broken references to missing geometry, parts, joints, and hardpoints.

The tool is automatically launched when you select the simulation panel and submit the model to solver. You may also access the Update Model tool from the Edit menu.

Page 34: SimXpert R3.2 Motion Workspace Guide

Visualization Page for Property Editors34

Visualization Page for Property EditorsThe purpose of the visualization page for all of the model building property editors is to allow the user to individually control the visualization attributes for a screen symbol. The visualization attributes include whether to display the symbol and the color and size of the symbol.

Visual Checkbox: Checkbox that allows the user to either turn on or turn off the visibility of this object.

Note: For motion parts this means the Center of Mass screen symbol not the geometry associated for that part.

Color: This allows the user to change the color of the screen symbol. There are two means for choosing the color:

1. Enter the Red, Green, and Blue values (0 to 255, space separated) in the input field

2. Use the drop down color chooser. A standard set of colors is available along with a custom color option. The customer color option is noted by the "..." button in the lower left corner of the drop down list. Selecting that button will generate a window that allows the user to pick any color. The user can even maintain a small list of custom colors in this window.

Symbol Size: This allow the user to change the size of the screen symbol. The field contains a numeric value along with the model units and the user can change the numeric value.

Page 35: SimXpert R3.2 Motion Workspace Guide

147Geometry

Geometry

Page 36: SimXpert R3.2 Motion Workspace Guide

Motion Geometry148

Motion GeometryThe Geometry tab in the SimXpert Motion Workspace allows you to create simple parametric geometry that is defined relative to motion coordinate systems. Common geometric shapes and links of arbitrary length, width, and depth mya be created based on existing coordinate systems and user defined lengths. This geometry must be created in an existing motion part, which must have its mass and inertia properties defined manually.

Application

Motion geometry may be used to quickly create visual representatios of geometry without importing CAD data. The geometry is defined relative to existing motion coordinate systems, and must be part of an existing parent motion part. The motion mare contains user defined mass properties that apply to the geometry. Any of the parameters used to define the geometry may be edited to modify the geometry later in the simulation process. The orientation, loaction, and in csome cases size depends on the coordinate systems chosen.

Description of Fields

Field Description

Parent Part

Field that specifies an existing part for the geometry object. Selection of an existing part is required for geometry creation. To create a part without any reference geometry, select User Specified as the source of inertia properties in the Part property editor.

Name Allows specification of a unique name for the box geometry object.

Center Coordinate System

Field that specifies an existing coordinate system to form the center of certain geometry, such as sphere, torus, prism, and ellipsoid. This coordinate system defines the center of the first face of a cyliner or frustum.

Corner Coordinate System

Field that specifies an existing coordinate system to form a corner of box geometry.

From Coordinate System

Field that specifies an existing coordinate system from which a link will extend and the orientation of the link. The link’s depth will extend along this coordinate system’s Z axis, and the curved ends will be in its XY plane.

To Coordinate System

Field that specifies an existing coordinate system to which a link will extend.

Page 37: SimXpert R3.2 Motion Workspace Guide

149GeometryMotion Geometry

LengthLength of the geometry extending in a particular direction. The number of available length fields depend on the type of geometry.

DepthDepth of link geometry, which is along the Z axis of the From Coordinate System. The depth is constant throughout the link and in a direction normal to the plane containing the curved ends.

Width

Width of link geometry, which is also the diameter of the link’s rounded ends. The width lies in the XY plane of the from coordinate system and is perpendicular to both the depth direction and the line connecting the coordinate systems. For more information, see figure below.

Field Description

Page 38: SimXpert R3.2 Motion Workspace Guide

Motion Geometry150

Sample Forms

To create motion geometry:1. First ensure that there are sufficient existing coordinate systems and an existing motion part for

the new geometry.

2. From the Geometry tab, select the type of geometry that you wish to create.

3. Select the necessary coordinate system(s) to define the location and orientation of the geometry.

4. Enter any additional values necessary to define the shape of the geometry. These values depend on the type of geometry to be created, and may be edited after the geometry has been created.

5. Optionally define visualization options for the geometry.

Page 39: SimXpert R3.2 Motion Workspace Guide

151GeometryMotion Geometry

6. Click OK to create the geometry.

See Also:• For more information on the specific tools for creating motion geometry see Geometry in the

Motion Workspace Quick Reference Help.

Page 40: SimXpert R3.2 Motion Workspace Guide

Motion Geometry152

Page 41: SimXpert R3.2 Motion Workspace Guide

33Connections

Connections

Page 42: SimXpert R3.2 Motion Workspace Guide

Overview34

OverviewA connection is a mechanical element that connects two parts and allows relative motion of one object with respect to another. SimXpert supports many idealized connection types, as well as joint primitives which limit motion of two parts to certain directions.

You may select from available connection types as you select from the Connections toolbox, or you may change connection types using the Type list box once the Connection Properties form is open.

Page 43: SimXpert R3.2 Motion Workspace Guide

35ConnectionsConnection Specification Tools

Connection Specification ToolsIn order to create connections, you must specify a location and orientation for each connection. SimXpert includes common tools to specify the required information in a format that is consistent across all of the connection types.

Location

The location field is a standard tool used for the definition of parts, joints, and forces. The purpose is to provide a consistent method by which you define locations within SimXpert but relevant to the current workbench. There are two key entities that can be used for defining locations; geometry and hardpoints.

When you choose geometry, the location is tied parametrically to that geometry. If during an update or modification operation that geometric feature moves, the location will move with it. If the geometric feature no longer exists, the location will be considered to have a broken reference.

When you choose hardpoints, the location is tied parametrically to the hardpoint position. If the hardpoint position changes, the location value also will update.

Choosing Coordinate System allows selection of a coordinate system origin (and associated part) to be used as the location. Upon choosing the coordinate system the part field is populated with the part name

Page 44: SimXpert R3.2 Motion Workspace Guide

Connection Specification Tools36

corresponding to the coordinate system. Therefore, in order to use the coordinate system location method you should ensure that the selected coordinate system is on the desired part.

Field Description

Geometry Allows selection of particular geometry, such as a vertex, center point of a circular edge, or center of a sphere. If geometry filters are active, they will affect the default types of picks that can be made. If multiple locations are selected, this option will average the locations to determine a single location.

Hardpoint Allows selection of an individual hardpoint to be used as the location.

Custom Allows the direct entry of X, Y, and Z coordinates of a position.

Coordinate System Allows selection of a coordinate system origin to be used as the location. The corresponding part field will be populated with the part to which the selected coordinate system belongs.

Center of Mass Location Allows selection of a part’s center of mass as the location.

Page 45: SimXpert R3.2 Motion Workspace Guide

37ConnectionsConnection Specification Tools

s

Figure 1 Location Specification Methods

Orientation

The orientation field is a standard tool used for the definition of parts, joints, and forces. The purpose is to provide a consistent method by which you define a direction vector within SimXpert but relevant to the current workbench.

Page 46: SimXpert R3.2 Motion Workspace Guide

Connection Specification Tools38

Depending on the entity, you may not need to define orientation (as in the case of the fixed joint), define only one axis (the z-axis), define 2 axes, or have a user specified input.

Field Description

Global Oriented with global coordinates. (Default for optional orientation.)

Z-axis Only Oriented with a single axis, which will be specified below.

2 axes Oriented with two axes, which will be specified below.

Euler Angles Euler angles may be input for Body 313 rotation.

Coordinate System Select existing coordinate system to define orientation.

Page 47: SimXpert R3.2 Motion Workspace Guide

39ConnectionsConnection Specification Tools

The following options are used to specify an axis:

s

Figure 2 Orientation Specification Methods

Coordinate Triad Visualization:

While editing an object, a coordinate triad will be displayed to show the location and orientation information pertinent to that entity. The triad will only be displayed while the property editor is active.

The following image displays a sample coordinate triad:

Field Description

Geometry Allows selection of geometric features to orient axis. Available selections include face normal, cylinder axis, coordinate frame axis, and linear edge.

Orient normal to plane Allows selection of three hardpoints to define a plane normal to the desired vector.

Orient axis along line Allows selection of two hardpoints to define a direction along which the vector will be oriented.

Page 48: SimXpert R3.2 Motion Workspace Guide

Connection Specification Tools40

Page 49: SimXpert R3.2 Motion Workspace Guide

41ConnectionsBushings

BushingsA bushing is a connection that represents the forces acting between two parts over a distance. The bushing applies a force and a torque to the components it connects. You may specify the stiffness and damping values in each direction for the bushing in the connector properties form.

Figure 3 Bushing Schematic Representation

Description of Fields

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of connector, in this case Bushing

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint

Stiffness Stiffness values in each direction, both in translation and rotation

Damping Damping values in each direction, both in translation and rotation

Page 50: SimXpert R3.2 Motion Workspace Guide

Bushings42

Sample Forms:

Page 51: SimXpert R3.2 Motion Workspace Guide

43ConnectionsBushings

To create a bushing connector:1. From the Connections toolbox, select Bushing.

2. Under the Definition selection, enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected by the bushing. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the bushing using the location options. See also Location under Connection Specification Tools.

6. Specify the orientation of the bushing. See also Orientation under Connection Specification Tools.

7. Select the Bushing Properties tab and enter the desired stiffness and damping values in each direction. Alternatively, you may select an existing bushing properties object for the bushing to refer to for its stiffness and damping values.

8. Click OK. The joint will appear in the tree and in the canvas.

Page 52: SimXpert R3.2 Motion Workspace Guide

Constant Velocity Joints44

Constant Velocity Joints A constant-velocity joint allows two rotations on one part with respect to another part, while remaining coincident and maintaining a constant velocity through the spin axis.

Figure 4 Example of Constant-Velocity Joint

You must specify an axis of rotation for each part connected by the joint.

Description of Fields

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of connector, in this case Constant Velocity.

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint.

Page 53: SimXpert R3.2 Motion Workspace Guide

45ConnectionsConstant Velocity Joints

Sample Form

To create a constant velocity joint:1. From the Connections toolbox, select Constant Velocity.

2. Enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected by the joint. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint using the location options. See also Location under Connection Specification Tools.

Page 54: SimXpert R3.2 Motion Workspace Guide

Constant Velocity Joints46

6. Specify the orientation of the axis about which each part may rotate. See also Orientation under Connection Specification Tools.

7. Click OK. The joint will appear in the tree and in the canvas.

Page 55: SimXpert R3.2 Motion Workspace Guide

47ConnectionsCylindrical Joints

Cylindrical JointsA cylindrical joint allows both relative rotation as well as relative translation of one part with respect to another part. A cylindrical joint can be located anywhere along the axis about which the parts can rotate or slide with respect to each other.

Figure 5 Example of Cylindrical Joint

The orientation of the cylindrical joint defines the direction of the axis about which the parts can rotate or slide along with respect to each other. The rotational axis of the cylindrical joint is parallel to the orientation vector and passes through the location.

Description of Fields

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of connector, in this case Cylindrical.

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint.

Page 56: SimXpert R3.2 Motion Workspace Guide

Cylindrical Joints48

Sample Form

To create a cylindrical joint:1. From the Connections toolbox, select Cylindrical.

2. Enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected by the joint. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint using the location options. See also Location under Connection Specification Tools.

6. Specify the orientation of the axis about which the parts may rotate and translate. See also Orientation under Connection Specification Tools.

7. Click OK. The joint will appear in the tree and in the canvas.

Page 57: SimXpert R3.2 Motion Workspace Guide

49ConnectionsFixed Joints

Fixed JointsA fixed joint locks two parts together so they cannot move with respect to each other. The effect is similar to defining two parts as a single part. If you want to have the two parts move relative to each other in a future simulation, simply delete the fixed joint and use another type of joint.

Figure 6 Fixed Joint

For a fixed joint, the location and orientation of the joint often do not affect the outcome of the simulation. In these cases, you can place the joint at a location where the graphic icon is easily visible. However, occasionally the placement of the fixed joint can allow force moments to become quite large depending on where you place the joint, as shown in this example. In this case, be sure to place it where you get the results you want.

Figure 7 Location of Fixed Joint on Beam

Page 58: SimXpert R3.2 Motion Workspace Guide

Fixed Joints50

Description of Fields

Sample Form

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of connector, in this case Fixed.

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint.

Page 59: SimXpert R3.2 Motion Workspace Guide

51ConnectionsFixed Joints

To create a fixed joint:1. From the Connections toolbox, select Fixed.

2. Enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected by the joint. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint using the location options. Be aware that the forces in the joint will depend on where it is located. See also Location under Connection Specification Tools. No orientation is necessary.

6. Click OK. The joint will appear in the tree and in the canvas.

Page 60: SimXpert R3.2 Motion Workspace Guide

Hooke Joints52

Hooke JointsA hooke joint is a two-degree-of-freedom joint that allows rotation about two axes: xi, the x-axis of the I marker and yj, the y-axis of the J marker (see the figure below).

Figure 8 Hooke Joint

For the HOOKE joint, ADAMS/Solver (C++) superimposes the origins of the I and J markers and constraint markers. It also keeps the x-axis of the I marker perpendicular to the y-axis of the J marker so they outline the crosspiece of the joint. The origins of the I and J markers are at the center of the cross. The HOOKE joint functions the same as the universal joint, but uses different marker orientations.

Description of Fields

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of connector, in this case Hooke.

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint.

Page 61: SimXpert R3.2 Motion Workspace Guide

53ConnectionsHooke Joints

Sample Form

To create a hooke joint:1. From the Connections toolbox, select Hooke.

2. Enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected by the joint. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint using the location options. Be aware that the forces in the joint will depend on where it is located. See also Location under Connection Specification Tools.

6. Define the joint orientation.

Page 62: SimXpert R3.2 Motion Workspace Guide

Hooke Joints54

7. Click OK. The joint will appear in the tree and in the canvas.

Page 63: SimXpert R3.2 Motion Workspace Guide

55ConnectionsRevolute Joints

Revolute JointsA revolute joint allows the rotation of one part with respect to another part about a common axis. The revolute joint can be located anywhere along the axis about which the joint’s parts can rotate with respect to each other.

The orientation of the revolute joint defines the direction of the axis about which the joint’s parts can rotate with respect to each other. The rotational axis of the revolute joint is parallel to the orientation vector and passes through the location.

Figure 9 Example of Revolute Joint

Description of Fields

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of connector, in this case Revolute.

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint.

Page 64: SimXpert R3.2 Motion Workspace Guide

Revolute Joints56

Sample Form

To create a revolute joint:1. From the Connections toolbox, select Revolute.

2. Enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected by the joint. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint using the location options. See also Location under Connection Specification Tools.

6. Specify the orientation of the axis of revolution using the orientation options. See also Orientation under Connection Specification Tools.

7. Click OK. The joint will appear in the tree and in the canvas.

Page 65: SimXpert R3.2 Motion Workspace Guide

57ConnectionsSpherical Joints

Spherical JointsA spherical joint allows the free rotation about a common point of one part with respect to another part. The location of the spherical joint determines the point about which the joint’s parts can pivot freely with respect to each other.

Figure 10 Spherical Joint

Description of Fields

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of connector, in this case Spherical.

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint.

Page 66: SimXpert R3.2 Motion Workspace Guide

Spherical Joints58

Sample Form

To create a spherical joint:1. From the Connections toolbox, select Spherical.

2. Enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected by the joint. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint using the location options. See also Location under Connection Specification Tools. No orientation is necessary.

6. Click OK. The joint will appear in the tree and in the canvas.

Page 67: SimXpert R3.2 Motion Workspace Guide

59ConnectionsTranslational Joints

Translational JointsA translational joint allows one part to translate along a vector with respect to another part. The parts can only translate, not rotate, with respect to each other.

Figure 11 Example of Translational Joint

When you create a translational joint, you specify its location and orientation. The location of a translational joint does not affect the motion of the joint. It simply determines where the joint will be placed. The orientation of the translational joint, however, determines the direction of the axis along which the parts can slide with respect to each other. The direction of the motion of the translational joint is parallel to the orientation vector and passes through the location.

Description of Fields

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of connector, in this case Translational.

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint.

Page 68: SimXpert R3.2 Motion Workspace Guide

Translational Joints60

Sample Form

To create a translational joint:1. From the Connections toolbox, select Translational.

2. Enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected by the joint. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint using the location options. See also Location under Connection Specification Tools.

6. Specify the orientation of the axis about which the two parts may translate. See also Orientation under Connection Specification Tools.

7. Click OK. The joint will appear in the tree and in the canvas.

Page 69: SimXpert R3.2 Motion Workspace Guide

61ConnectionsUniversal Joints

Universal Joints A universal joint allows the rotation of one rigid body to be transferred to the rotation of another rigid body. This joint is particularly useful when transferring rotational motion around corners, when you need to simulate the non-constant velocity of a physical universal joint, or when transferring rotational motion between two connected shafts that are permitted to bend at the connection point (such as the drive shaft on an automobile).

Figure 12 Example of a Universal Joint

The location point of the universal joint represents the connection point of the two parts. The cross bars identify the axes about which the two parts are permitted to rotate with respect to each other.

Description of Fields

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of connector, in this case Universal.

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint.

Page 70: SimXpert R3.2 Motion Workspace Guide

Universal Joints62

Sample Form

To create a universal joint:1. From the Connections toolbox, select Universal.

2. Enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected by the joint. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint using the location options. See also Location under Connection Specification Tools.

Page 71: SimXpert R3.2 Motion Workspace Guide

63ConnectionsUniversal Joints

6. Specify the orientation of both axes of revolution using the orientation options. See also Orientation under Connection Specification Tools.

7. Click OK. The joint will appear in the tree and in the canvas.

Page 72: SimXpert R3.2 Motion Workspace Guide

Screw Joints64

Screw JointsA screw joint is a five-degree-of-freedom joint that constrains the translation of the I marker to its rotation (see the figure below).W

Figure 13 Example of Screw Joint

When you create a screw joint, you specify its location, orientation, and pitch. For the SCREW joint, the z-axis of the I marker and the z-axis of the J marker must always be parallel and co-directed. Although the SCREW joint does not enforce this parallelism, the chain of parts and joints that connects the two markers should. During simulation, the I marker displacement along the J marker z-axis is a function of the relative angle of the x-axis of the I marker with respect to the x-axis of the J marker. ADAMS/Solver (C++) measures a positive rotation according to the right-hand rule. For every full rotation, the displacement of the I marker along the z-axis of the J marker is equal to the value of PITCH. If the angle of rotation is zero, the translational displacement may be zero or any multiple of PITCH.

Description of Fields

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Page 73: SimXpert R3.2 Motion Workspace Guide

65ConnectionsScrew Joints

Sample Form

To create a screw joint:1. From the Connections toolbox, select Screw.

2. Enter a name for the new connector.

Type Type of connector, in this case Screw.

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint.

Pitch Pitch of the screw joint. Entered value is the amount of translation for every full rotation of the J marker.

Field Description

Page 74: SimXpert R3.2 Motion Workspace Guide

Screw Joints66

3. Click in the Part1 list box and select the first part to be connected by the joint. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint using the location options. See also Location under Connection Specification Tools.

6. Specify the orientation of the axis about which the two parts may translate. See also Orientation under Connection Specification Tools.

7. Define the pitch of the screw joint. This is the translation that occurs for every full rotation of the joint. Positive direction is determined by the right hand rule.

8. Click OK. The joint will appear in the tree and in the canvas.

Page 75: SimXpert R3.2 Motion Workspace Guide

67ConnectionsRack and Pinion Joints

Rack and Pinion JointsA 5 degree-of-freedom joint that constrains the rotational displacement of the I marker (center of pinion) to the translational displacement of the J marker (rack) and measures both displacements with respect to the J marker. The z-axis of the pinion must be parallel to and co-directed with the x-axis of the rack. The separation between the two axes should be 1/2 the pitch diameter of the pinion.

Description of Fields

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of connector, in this case Rackpin.

Part 1 First part to be connected by joint.

Part 2 Second part to be connected by joint.

Pitch Diameter Diameter of the pinion gear, such that the translation of the rack is the circumference of this diameter for each full turn of the pinion. Also note that the seperation between the I and J markers should be 1/2 this pitch diameter.

Page 76: SimXpert R3.2 Motion Workspace Guide

Rack and Pinion Joints68

Sample Form

To create a rack and pinion joint:1. From the Connections toolbox, select Rackpin.

2. Enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected by the joint. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint using the location options. See also Location under Connection Specification Tools.

Page 77: SimXpert R3.2 Motion Workspace Guide

69ConnectionsRack and Pinion Joints

6. Specify the orientation of the axis about which the two parts may translate. See also Orientation under Connection Specification Tools.

7. Define the pitch diameter of the rack and pinion joint. This diameter times Pi is is the translation that occurs for every full rotation of the joint.

8. Click OK. The joint will appear in the tree and in the canvas.

Page 78: SimXpert R3.2 Motion Workspace Guide

Joint Primitives70

Joint Primitives A joint primitive places a restriction on relative motion, such as restricting one part to move parallel to another part. The joint primitives do not have physical counterparts as the idealized joints do. You can, however, combine joint primitives to define a complex constraint that cannot be modeled using the idealized joints. In fact, you can use the joint primitives to create any idealized joint.

The different types of joint primitives that are available are inline, inplane, orientation, parallel axes, and perpendicular axes.

Inline

Constrains one part so that it can only move along a straight line defined on a second part as shown below. In the figure, the solid circle indicates the first part that the joint connects and the hollow circle indicates the second part that the joint connects. The first part is constrained relative to the second part.

Inplane

Constrains one part so that it can only move in a plane of a second part as shown below. In the figure, the solid circle indicates the first part that the joint connects and the hollow circle indicates the second part that the joint connects. The first part is constrained relative to the second part.

Orientation

Constrains one part so that it cannot rotate with respect to a second part as shown below. In the figure, the solid circle indicates the first part that the joint connects and the hollow circle indicates the second

The location of the inline joint on the first part must remain on the z-axis of the second part.

The origin of the inplane joint on the first part must remain in the xy plane of the second part.

Page 79: SimXpert R3.2 Motion Workspace Guide

71ConnectionsJoint Primitives

part that the joint connects. The first part is constrained relative to the second part. The axes of the coordinate systems must maintain the same orientation.

Parallel Axes

Constrains the z-axis of one part so that it remains parallel to the z-axis of a second part, as shown below. In the figure, the solid circle indicates the first part that the joint connects and the hollow circle indicates the second part that the joint connects. The first part is constrained relative to the second part.

Perpendicular Axes

Constrains one part so that it remains perpendicular to the z-axis of a second part as shown below. In the figure, the solid circle indicates the first part that the joint connects and the hollow circle indicates the second part that the joint connects. The first part is constrained relative to the second part.

The location of the origins of the coordinate systems does not matter.

The first part can only rotate about one axis with respect to the coordinate system of the second part.

The first part can rotate about two axes with respect to the second part.

Page 80: SimXpert R3.2 Motion Workspace Guide

Joint Primitives72

Description of Fields

Sample Form

Field Description

Name Name of connector to be created

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Type Type of joint primitive connector

Part 1 First part to be connected

Part 2 Second part to be connected

Page 81: SimXpert R3.2 Motion Workspace Guide

73ConnectionsJoint Primitives

To create a primitive connection:1. From the Connections toolbox, select Primitives and select the type of joint primitive you wish to

create.

2. Under the Definition selection, enter a name for the new connector.

3. Click in the Part1 list box and select the first part to be connected. Select the part from either the tree or the canvas. If desired, you may select the ground part by clicking the ground icon.

4. Repeat the selection process for the second part.

5. Choose the location for the joint primitive using the location options. See also Location under Connection Specification Tools.

6. Specify the orientation of the joint primitive. See also Orientation under Connection Specification Tools.

7. Click OK. The joint primitive connector will appear in the tree and in the canvas.

Page 82: SimXpert R3.2 Motion Workspace Guide

Beam74

BeamBeams represent the force applied by a massless beam placed between specific locations in the model. The beam force transmits forces and torques between the two parts in accordance with Timoshenko beam theory. You define values of the beam's physical properties, and Adams/Solver calculates the matrix entries defining the forces that the beam produces.

Application:

Beams allow you to introduce loading into the model based on the section and material properties of a beam.

For every beam force that you create you specify the following information:

1. Between which parts the force is applied.

2. At what points the force is applied.

3. The orientation of the beam at each part.

4. The material properties of the beam, including Young’s modulus and Poisson Ratio.

5. The cross-section properties of the beam section, including shape and dimensions.

Description of Fields:

Definition:

Field Description

Name Name of beam force

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Part 1 Part which the force will be applied to

Part 2 Second part which the force will be applied to.

Free Length Option button for defining the free length of the beam automatically based on the selected locations or manually by entering a length value.

Location 1 Defines the root location of the beam.

Orientation 1 Defines the root orientation of the beam.

Location 2 Defines the end location of the beam.

Orientation 2 Defines the end orientation of the beam.

Function Allows definition of magnitude of applied force. Available options are constant, expression, harmonic, spline, and step functions. See also Function Specification tools.

Page 83: SimXpert R3.2 Motion Workspace Guide

75ConnectionsBeam

Section Properties:

Sample forms:

Definition:

Field Description

Section TypeIcons are available to select from a variety of cross section shapes or a custom option, where you enter numerical section properties.

Current Cross Section Type

Displays the type of cross section selected from the icons above.

Dim i

Dimensions for the selected cross section, as illustrated in the figure on the right side of the form. The number of required dimensions depends on the section type selected. For the Custom section type, fields are available for moments of inertia, shear area ratio, and cross sectional area.

Young’s Modulus Field that defines the Young’s Modulus of the beam material.

Poisson Ratio Field that defines the poisson ratio of the beam material.

Damping RatioEnter a damping value to establish a ratio for calculating the structural damping matrix for the beam. To obtain the damping matrix, Adams/Solver multiplies the stiffness matrix by the value you enter for the damping ratio.

Page 84: SimXpert R3.2 Motion Workspace Guide

Beam76

Section Properties:

Page 85: SimXpert R3.2 Motion Workspace Guide

77ConnectionsBeam

To create a beam force:1. From the Connections toolbox, select Beam.

2. Enter a name for the beam force.

3. Select the first part that the force will be applied to.

Page 86: SimXpert R3.2 Motion Workspace Guide

Beam78

4. Select the second part that the force will be applied to.

5. Select an option for defining the free length of the beam. Enter a value for the length if Custom is selected.

6. Select the location for the root of the beam under Location 1.

7. Select the orientation of the root of the beam with Orientation 1.

8. Select the location for the end of the beam under Location 2.

9. Select the orientation of the end of the beam with Orientation 2.

10. Select the Section Properties option on the left of the form.

11. Choose from the available section types or select Custom to enter inertia and area values directly.

12. Enter the DIM values corresponding to the section image shown on the right of the form.

13. Enter Material properties (Young’s Modulus, Poisson Ratio, and Damping Ratio).

14. Click OK to create the force. The force will appear in the tree and in the canvas.

Page 87: SimXpert R3.2 Motion Workspace Guide

79ConnectionsField

FieldThe field applies translational and rotational action-reaction forces between two locations which are defined by stiffness and damping matrices.

Application:

To specify a linear field, use the arguments in the FIELD statement to specify constants for the six-by-six stiffness matrix, a preload force, a six reference lengths, and a six-by-six damping matrix. The stiffness and damping matrices must be positive semidefinite, but need not be symmetric. To specify a nonlinear field, use the user-written subroutine FIESUB to define the three force components and three torque components and use the argument FUNCTION=USER(r1[,...,r30]) to pass constants to FIESUB.

Description of Fields:

Definition:

Field Description

Name Name of field. Set to Field_# by default.

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems to be connected by the connection. Cleared by default.

Part 1 First part connected by the field.

Part 2 Second part connected by the field.

Attachments Option button that allows one or two attachment location to be specified.

Location 1 Selected location for attachment to Part 1.

Location 2 Selected location for attachment to Part 2.

Verify Icon that verifies that the expression entered is in correct Motion Solver syntax.

Coordinate System

Field that selects the coordinate system to be the location of the general constraint.

Location(s) Fields that selects the location(s) where the field is applied.

Orientation Fields that define the orientation of the field.

Page 88: SimXpert R3.2 Motion Workspace Guide

Field80

Field Properties:

Field Description

Method

Drop-down that selects method to define stiffness and damping. Available options are User Entered Values (where the matrix coefficients are entered manually) and User Subroutine (where the user selects a subroutine to define the matrices). User Entered Values is the default.

User Entered Values

k MatrixField table that defines the values in the stiffness matrix. Additional rows may be added or removed by using the “+” or “-” icons to the right of the fields. Available if the method is set to user entered values.

damping Method

Drop-down that selects method to define damping. Available options are Damping Ratio (where the damping matrix is defined by multiplying the stiffness matrix by a user specified damping ratio) and Damping Matrix (where the user manually defines the damping matrix). User Entered Values is the default.

c RatioField that defines the ratio of the damping matrix to the stiffness matrix. Available only if the damping method is set to damping ratio.

c MatrixField table that defines the values in the damping matrix. Additional rows may be added or removed by using the “+” or “-” icons to the right of the fields. Available only if the damping method is set to damping matrix.

t Preload (X, Y, and Z)

Fields that define three preload force components transferred by the field element when the I and J markers are separated/misaligned by the values specified in the t Offset text boxes. The terms are the force components along the x-, y-, and z-axis of the J marker. Entering values for force preload is optional.

r Preload (X, Y, and Z)

Fields that define three preload torque components transferred by the field element when the I and J markers are separated/misaligned by the values specified in the r Offset text boxes. The terms are the torque components about the x, y-, and z-axis of the J marker.

t Offset (X, Y, and Z)

Field that defines the translation at preload to define three reference lengths. This is the nominal (x0, y0, z0) position of the I marker with respect to the J marker, resolved in the J marker coordinate system.

r Offset (X, Y, and Z)

Field that defines the rotation at preload to define the reference rotational displacement of the axes of the I marker with respect to the J marker, resolved in the J marker axes (a0, b0, and c0) (specified in radians).

User Subroutine

ParametersField table that specifies parameters to be passed to a user subroutine if the method is set to user subroutine.

RoutineField table that specifies a user subroutine to define the stiffness matrix if the method is set to user subroutine.

Page 89: SimXpert R3.2 Motion Workspace Guide

81ConnectionsField

Sample form:

Definition Tab:

Page 90: SimXpert R3.2 Motion Workspace Guide

Field82

Field Properties Tab:

To create a field:1. From the Connections tab, select Field.

2. Enter a name for the Field.

3. Select parts and locations upon which the field will act.

4. Define the orientation for the field.

5. On the Field Properties tab, enter the stiffness, damping, and offset values to define the field.

6. Click OK to create the field. The field will appear in the tree and in the canvas.

Page 91: SimXpert R3.2 Motion Workspace Guide

83ConnectionsGeneral Constraint

General ConstraintThe General Constraint (GCON) statement introduces a constraint equation that must be satisfied by the Motion solver during the simulation. This allows you to specify both holonomic and non-holonomic constraints.

Application:

While the JOINT statement describes a physically recognizable combination of constraints that are used to connect bodies together, the GCON statement enables you to define an arbitrary constraint specific to a particular model. The GCON statement is more general and can be used to equivalently define the existent JOINT elements.

Description of Fields:

Sample form:

Field Description

Name Name of general constraint. Set to General_Constraint_# by default.

ExpressionField that defines the expression for the general constraint. To define the expression using the Expression Builder, click the icon to the right of the text.

Launch Function Expression Builder

Icon that opens the Expression Builder to assist in defining solver functions.

Verify Motion Solver Syntax

Icon that verifies that the expression entered is in correct Motion Solver syntax.

Coordinate System

Field that selects the coordinate system to be the location of the general constraint.

Page 92: SimXpert R3.2 Motion Workspace Guide

General Constraint84

To create a general constraint:1. From the Connections tab, select General Constraint.

2. Enter a name for the general constraint.

3. Enter an expression to define the constraint. Icons are available to launch the function expression builder and to verify the function.

4. Select a coordinate system that the constraint will be applied to.

5. Click OK to create the constraint. The constraint will appear in the tree and in the canvas.

Page 93: SimXpert R3.2 Motion Workspace Guide

85ConnectionsCouplers

CouplersCouplers relate the translational and/or rotational motion of two joints. You may enter values for motion of each joint which the coupler will make equivalent.

Figure 14 Coupler Joint

Although you can couple at most three joints with a single coupler, more than one coupler can come from the same joint, as shown in the figure above. You select the driver joint, the joint to which the second joint is coupled, and the coupled joint, the joint that follows the driver joint.

Description of Fields:

Field Description

NameAllows specification of a unique name for each coupler. Automatically populated with CouplerJoint_###.

Active Selects whether coupler will be included in the simulation.

Type Select whether the coupler joins two or three joints.

MethodBy Displacements allows specification of displacement values for each joint, while By Scales allows specification of scale factors relative to the first joint.

First Joint First joint to be connected by coupler, the driver joint.

Motion Type Select translational or rotational motion.

ValueEnter equivalent motion for By Displacements method, or scale factor for By Scales method.

Second Joint Second joint to be connected by the coupler, the coupled joint.

Motion Type Select translational or rotational motion.

ValueEnter equivalent motion for By Displacements method, or scale factor for By Scales method.

Third Joint Third joint to be connected by the coupler, enabled if Type is set to 3 Joints.

Motion Type Select translational or rotational motion.

ValueEnter equivalent motion for By Displacements method, or scale factor for By Scales method.

Page 94: SimXpert R3.2 Motion Workspace Guide

Couplers86

Sample Form

To create a coupler:1. From the Connections toolbox, select Coupler and then select Joint Coupler.

2. Enter a name for the new connector.

3. Select from 2 Joint or 3 Joint for the type.

4. Select a coupling method. To enter equivalent joint motions, select By Displacements. To enter scale factors for the joint motions, select By Scales.

5. Click in the Joint1 list box and select the first joint to be connected. Select the joint from either the tree or the canvas.

6. Repeat the selection process for the second joint and third joint if necessary.

7. Select Freedom types for each joint (translational or rotational) and enter a displacement value (for By Displacements) or a Scale Factor (for By Scales).

8. Click OK. The coupler will appear in the tree and in the canvas.

Page 95: SimXpert R3.2 Motion Workspace Guide

87ConnectionsGear

GearGears are a special form of coupler that relate the translational and/or rotational motion of two joints. The relationship between the motion of the two joints is defined either by a specified reduction ratio or by selecting a contact point shared by the two joints.

Description of Fields:

Field Description

NameAllows specification of a unique name for each coupler. Automatically populated with Gear_###.

Active Selects whether gear will be included in the simulation.

Type Select whether the gear is defined by a reduction ratio or by a contact point location.

Input Joint First joint to be connected by gear coupler, the driver joint.

Input Freedom Select translational or rotational motion.

ValueEnter equivalent motion for By Displacements method, or scale factor for By Scales method.

Output Joint Second joint to be connected by the gear coupler.

Output Freedom

Select translational or rotational motion.

Reduction Ratio

Specify the reduction ratio between the two joints. The reduction ratio is based on the following equation:

input motion = reduction_ratio * output motion

Available only if the Type is set to Reduction.

LocationLocation form available to define contact point location if the Type is set to Contact Point. With this method no ratio is entered, the ratio is calculated by the solver based on the contact point.

Page 96: SimXpert R3.2 Motion Workspace Guide

Gear88

Sample Form:

To create a gear:1. From the Connections toolbox, select Coupler and then select Gear.

2. Enter a name for the new gear connector.

3. Select from Reduction or Contact Point for the type.

4. Click in the Input Joint list box and select the first joint to be connected. Select the joint from either the tree or the canvas.

5. Repeat the selection process for the Output Joint.

6. Select Freedom types for each joint (translational or rotational) and enter a Reduction Ratio (for Reduction type) or select a location (for Contact Point method).

7. Click OK. The gear will appear in the tree and in the canvas.

Page 97: SimXpert R3.2 Motion Workspace Guide

77Contacts

Contacts

Page 98: SimXpert R3.2 Motion Workspace Guide

Overview78

OverviewYou may specify contact between a point and curve, two curves, and two bodies. The contact tab is consistent across all of the contact types.

Creating Contacts

Description of Fields

Field Description

Method Impact or Restitution method may be selected for contact calculation.

Stiffness

Specifies a material stiffness that you can use to calculate the normal force for the impact model.

In general, the higher the STIFFNESS, the more rigid or hard the bodies in contact are. Also note that the higher the STIFFNESS is, the harder it is for an integrator to solve through the contact event.

Exponent

Stiffness exponent for contact. The motion solver models normal force as a nonlinear spring-damper. If PEN is the instantaneous penetration between the contacting geometry, the solver calculates the contribution of the material stiffness to the instantaneous normal forces as STIFFNESS * (PENALTY)**EXPONENT. For more information, see the IMPACT function.

Exponent should normally be set to 1.5 or higher. For more information, refer to the IMPACT function.

DampingDamping value that defines the damping properties of the contacting material. You should set the damping coefficient is about one percent of the stiffness coefficient.

Penetration

Penetration is the depth at which maximum damping occurs. The motion solver uses a cubic STEP function to increase the damping coefficient from zero, at zero penetration, to full damping when the penetration is this value. A reasonable value for this parameter is 0.01 mm. For more information, refer to the IMPACT function.

FrictionContact friction may be enabled for both static and dynamic, dynamic only, or disabled completely.

VelocitySpecifies the maximum velocity for static friction or the minimum for dynamic friction.

Coefficient Specifies a unique friction coefficient for static and dynamic friction.

Page 99: SimXpert R3.2 Motion Workspace Guide

79ContactsOverview

Sample Form

Extended DefinitionDuring a simulation, the first step is to find out if the contact is occurring between the geometry pairs identified in the CONTACT statements. If there is no contact, there is no force. If contact exists, the geometry modeling system calculates the location of the individual contact points and the outward normals to the two geometries at the contact point. The motion solver calculates the normal and slip velocities of the contact point from this information. The solver then uses the velocities to calculate the contact force at each individual contact.

Contact Detection Algorithm

To greatly simplify the contact detection algorithm, the motion solver assumes that the volume of intersection between two solids will be much, much less than the volume of either solid. This means that, for example for a sphere in a V-groove, the solver algorithm breaks down when the two contact volumes merge into one. This assumption is not as drastic as it may first appear. The reason is that most users are interested in contact between rigid bodies (that is, bodies that do not undergo a large deformation). Also, rigid bodies generally do not penetrate very far into one another. Note that we do not recommend that you use the contact detection algorithm in the modeling of very soft bodies.

After contact occurs between two solids, the motion solver computes the volumes of intersection. There may be only one volume of intersection, or there may be multiple volumes of intersection (this would correspond to multiple locations of contact). In this discussion, we assume that there is only a single volume of intersection. The algorithm is the same for every intersection volume.

Page 100: SimXpert R3.2 Motion Workspace Guide

Overview80

Once there is contact, the motion solver finds the centroid of the intersection volume. This is the same as the center of mass of the intersection volume (assuming the intersection volume has uniform density).

Next, the motion solver finds the closest point on each solid to the centroid. The distance between these two points is the penetration depth.

The motion solver then puts this distance into the formula:

F = K*(distance)n

where:

• K - material stiffness

• n - exponent

• F - force

to determine the contact force due to the material stiffness (there can also be damping and friction forces in the contact).

For example, if you apply this algorithm to a sphere on a plate, the intersection volume is some type of spherical shape with a flat side. The centroid of this volume can be computed (this is where most of the time is spent in the algorithm). It will be below the plate and inside the sphere. The nearest point on the plate (to the centroid) and the nearest point on the sphere (to the centroid) can also be computed. In this case, the line between them will pass through the center of the sphere (this will also be the direction in which the contact force acts).

Again, the algorithm can handle the case of a sphere in a V-groove. There will be two volumes of intersection and two separate forces will be applied to sphere and to the V-groove (equal and opposite forces).

Contact Calculation Methods

Two available methods for contact force calculation are:

• Restitution Method - Is characterized by contact for short periods of time. It is also known as impulsive contact. Two geometries approach each other, undergo a collision, and separate as a result of the contact. The collision results in the generation of an impulse, that affects the momentum of the colliding bodies. The solver develops an estimate of the contact force by modeling the local deformation behavior of the contacting geometries.

Energy loss occurs according to the specified restitution coefficient, which is the ratio of the compression/decompression impulses.

Intermittent contact is characterized by two distinct phases. The first is compression, where the bodies continue to approach each other even after contact occurs. The kinetic energy of the bodies is converted to potential and dissipation energy of the compressing contact material. When the entire kinetic energy is transformed, the potential energy stored in the material reverses the motion of the contacting bodies. Potential energy is transformed again to dissipation energy and kinetic energy. This is known as the decompression phase. It is important to note that energy losses due to dissipation occur in both phases.

Page 101: SimXpert R3.2 Motion Workspace Guide

81ContactsOverview

The restitution method is based on impulse momentum theory where the velocity field is discontinuous over the contact event. Discontinuous velocity means undefined acceleration and hence undefined contact forces. You should not use restitution if you're interested in contact force magnitudes or when you're in a situation where velocity doesn't dominate the event (such as persistent contact). Do use restitution when you're interested in having a well-defined impulse.

In summary, the restitution method will give the proper energy conservation characteristics, but the contact force is not well defined.

• IMPACT method - Is characterized by contact for relatively long periods of time. External forces acting between the two bodies serve to maintain continuous contact. Persistent impact contact is modeled as a nonlinear spring damper, the stiffness modeling the elasticity of the surfaces of contact, and the damping modeling the dissipation of energy. Two bodies are said to be in persistent contact when the separation velocity, after a collision event, is close to zero. The bodies, therefore, cannot separate after the contact.

Contact forces are calculated at each individual contact point. Individual contributions are summed up to compute the net response of the system to the contact event.

The IMPACT method uses displacement and velocity states to determine the contact force. Unlike restitution, the contact "event" can be active through several integration steps. For example we might solve for a few configurations during a typical impact:

• When the contact first becomes active, the ball has a velocity downwards and there is minimal penetration, hence a small restoring force

• When the ball is fully penetrated and its velocity is zero there is maximum contact force (the component from the spring term of the IMPACT).

• Situation similar to (1) where ball is just about to leave contact event and has mimimum penetration, some upward velocity and restoring force is dropping off.

In this situation, if ERROR and HMAX were used to finely discretize the event, the contact forces might be useful as the 'event' is described. It is realistic to consider the contact forces developed in this scenario.

Contact Normal Force Calculation

Two models for normal force calculations are available in the motion solver:

• IMPACT function model

• Coefficient of restitution or the POISSON model

Both force models result from a penalty regularization of the normal contact constraints. Penalty regularization is a modeling technique in mechanics, in which a constraint is enforced mathematically by applying forces along the gradient of the constraint. The force magnitude is a function of the constraint violation.

Contact between rigid bodies theoretically requires that the two bodies not penetrate each other. This can be expressed as a unilateral (inequality) constraint. The contact force is the force associated with

Page 102: SimXpert R3.2 Motion Workspace Guide

Overview82

enforcing this constraint. Handling these auxiliary constraint conditions is usually accomplished in one of two ways, either through introduction of Lagrange multipliers or by penalty regularization.

For contact problems, the latter technique has the advantage of simplicity; no additional equations or variables are introduced. This is particularly useful when treating intermittent contact and algorithmically managing active and inactive conditions associated with unilateral constraints. Additionally, a penalty formulation is easily interpreted from a physical standpoint. For example, the magnitude of the contact reaction force is equal to the product of material stiffness and penetration between contacting bodies, similar to a spring force. For these reasons, the motion solver uses a penalty regularization to enforce all contact constraints. The disadvantage of the penalty regularization, however, is that you are responsible for setting an appropriate penalty parameter, that is, the material stiffness. Furthermore, a large value for the material stiffness or penalty parameter can cause integration difficulties.

Contact Prediction

Contact is fundamentally a discontinuous event. When two geometries come into contact:

• A large normal force or an impulse is generated.

• The velocities of the bodies change sign.

• The accelerations are almost discontinuous, and have a large spike. This spike represents the impulse that was generated due to the contact.

The bodies usually separate because of the contact forces or impulses. Numerical integrators assume that the equations of motion are continuous. A contact event is, therefore, quite hard for an integrator to solve through. The motion solver contains a contact predictor that predicts the onset of contact and controls the integrator step size accordingly. The following paragraphs briefly summarize the contact prediction algorithm.

When the motion solver detects a new contact, it calculates the penetration and penetration velocity between the two geometries. From these two values the solver estimates a more refined contact time. The solver rejects the current time step and uses the refined step size to accurately sense the onset of contact.

Furthermore, the integrator order is set to one, so that the motion solver does not use the time history of the system to predict the future behavior of the system.

This algorithm essentially ensures that:

• The penetration for a new contact is small.

• The integrator is at first order when the contact event occurs.

• The integrator is taking small time steps.

Impact Function in Contact

Below is the syntax for IMPACT function:

IMPACT(q, q, q0, k, e, cmax, d)

where:

Page 103: SimXpert R3.2 Motion Workspace Guide

83ContactsOverview

• q - Actual distance between the two objects (defined with a displacement function)

• q - Time rate of change of the variable q

• q0 - Trigger distance used to determine when the contact force turns on and off; it should be specified as a real, constant value

• k - Stiffness coefficient

• e - Stiffness force exponent

• c - Damping coefficient

• d - Damping ramp-up distance

Page 104: SimXpert R3.2 Motion Workspace Guide

Overview84

The spring and damping forces from the impact vary with penetration depth as follows:

Page 105: SimXpert R3.2 Motion Workspace Guide

85ContactsPoint-Curve Contact

Point-Curve ContactThe point-curve contact represents the contact force between a curve and a point. It can be used to create a force based contact (which allows lift off and may use the restitution or impact contact methods)or a constraint based contact which forces the two entities to remain in contact. You can use it to model the contact between a cam and a knife-edge follower.

Application

The point-curve contact models the contact between a single point defined on one part and a curve defined on a second part. This contact may either be constraint based or force based depending upon the situation to be modeled.

Constraint Based

The motion solver models the contact as a constraint which constrains the two entities to be in contact with eachother. Initial conditions may be defined for the constraint. Penetration or lift off are not allowed between the entites and friction forces are not calculated.

Force Based

A force based contact allows lift-off and takes into account dynamic and static friction. Either the impact or restitution contact methods may be used, depending on the duration of the contact and desired output. Contact forces may be obtained from the impact method, but depend highly on step size. For more information on contact force methods, see Contact Calculation Methods.

Description of Fields

Field Description

Name Field that specifies user defined name for the contact

Type

Option button that defines whether the contact will be constraint based or force based. The options under the contact tab (including contact friction) are only available for force based contact. Initial conditions may only be specified for constraint based contact.

Page 106: SimXpert R3.2 Motion Workspace Guide

Point-Curve Contact86

Point:

Location:

Curve:

Field Description

Part Part that contains the point to participate in the contact

Field Description

Method Allows selection of the method to define location of the point in contact.

GeometryAllows selection of geometric point locations, such as a vertex, center point of a circular edge, or center of a sphere. If geometry filters are active, they will affect the default types of picks that can be made.

Hardpoint Allows selection of an individual hardpoint to be used as the location.

Custom Allows the direct entry of X, Y, and Z coordinates of a position.

Coordinate System

Allows selection of a coordinate system origin to be used as the location.

Center of Mass Location

Allows selection of a part’s center of mass as the location.

Field Description

MethodDrop-down that allows selection of curves defined by Geometry or curves defined mathematically via the System Elements toolbox.

Geometry

PartPart that contains the curve to participate in the contact. Available if Method is set to Geometry

Features Curve on selected part which point will contact in Geometry contact method.

FlipReverses curve normal direction. The curve normal points away from the solid side of the curve (it points away from the side of the curve that other curves cannot penetrate).

Points Per Curve or Curvature Tolerance

Drop-down and field that determine the number of points evaluated along a geometric curve. Setting to Points Per Curve specifies the number of points directly, while Curvature tolerance defines a maximum deviation for the point to point path versus the original curve location.

Curve

CurveField for selection of a predefined non-geometric curve. Available if Method is set to Curve.

Page 107: SimXpert R3.2 Motion Workspace Guide

87ContactsPoint-Curve Contact

Sample Form

To create a point-curve contact:1. From the Contact toolbox, select Point-Curve.

2. Click in the Point Part list box and select the part with the point to make contact. Select the part from either the tree or the canvas.

3. For the location, select the point that will make contact.

4. Select a Method for the curve selection between Geometry and Curve, which uses predefined non-geometric curves.

5. For the Geometry method, click in the Curve Part list box and select the part with the curve to make contact.

Page 108: SimXpert R3.2 Motion Workspace Guide

Point-Curve Contact88

6. Select the curve to be used for either method. For a geometric curve, select Points per curve or curvature tolerance and enter a value to define how points will be distributed along the curve.

7. Select the Contact tab on the Properties form to define the contact properties.

8. Click OK to create the contact. The contact will appear in the tree and in the canvas.

Page 109: SimXpert R3.2 Motion Workspace Guide

89ContactsCurve-Curve Contact

Curve-Curve ContactThe curve-curve contact represents the contact force between two curves. You can use it to model the contact between two cams in a variable valvetrain. The resulting hertzian pressure is calculated based on curvatures in two dimensions, when both curve crowning radii are specified.

Application

The curve-curve contact models the contact between a curve defined on one part and a curve defined on a second part. This contact may either be constraint based or force based depending upon the situation to be modeled.

Constraint Based

The motion solver models the contact as a constraint which constrains the two entities to be in contact with eachother. Initial conditions may be defined for the constraint. Penetration or lift off are not allowed between the entites and friction forces are not calculated.

Force Based

A force based contact allows lift-off and takes into account dynamic and static friction. The force based curve-curve contact has a significant performance advantage to using 3-D contact. Either the impact or restitution contact methods may be used, depending on the duration of the contact and desired output. Contact forces may be obtained from the impact method, but depend highly on step size. For more information on contact force methods, see Contact Calculation Methods. The curve-curve contact can also be defined as an intermittent contact entity between 2 parallel curves. The curves do not have to be in the same plane as out of plane moments are not accounted for (since the curves are projected onto the same plane when defined in the solver).

Description of Fields

Field Description

Name Field that specifies user defined name for the contact

Type

Option button that defines whether the contact will be constraint based or force based. The options under the contact tab (including contact friction) are only available for force based contact. Initial conditions may only be specified for constraint based contact.

Page 110: SimXpert R3.2 Motion Workspace Guide

Curve-Curve Contact90

Curve 1:

Curve 2:

Field Description

MethodDrop-down that allows selection of curves defined by Geometry or curves defined mathematically via the System Elements toolbox.

Geometry

PartPart that contains the first curve to participate in the contact. Available if Method is set to Geometry

Features Curve on selected part which point will contact in Geometry contact method.

FlipReverses curve normal direction. The curve normal points away from the solid side of the curve (it points away from the side of the curve that other curves cannot penetrate).

Points Per Curve or Curvature Tolerance

Drop-down and field that determine the number of points evaluated along a geometric curve. Setting to Points Per Curve specifies the number of points directly, while Curvature tolerance defines a maximum deviation for the point to point path versus the original curve location.

Curve

CurveField for selection of a predefined non-geometric curve. Available if Method is set to Curve.

Field Description

MethodDrop-down that allows selection of curves defined by Geometry or curves defined mathematically via the System Elements toolbox.

Geometry

PartPart that contains the second curve to participate in the contact. Available if Method is set to Geometry

Features Curve on selected part which point will contact in Geometry contact method.

FlipReverses curve normal direction. The curve normal points away from the solid side of the curve (it points away from the side of the curve that other curves cannot penetrate).

Points Per Curve or Curvature Tolerance

Drop-down and field that determine the number of points evaluated along a geometric curve. Setting to Points Per Curve specifies the number of points directly, while Curvature tolerance defines a maximum deviation for the point to point path versus the original curve location.

Curve

CurveField for selection of a predefined non-geometric curve. Available if Method is set to Curve.

Page 111: SimXpert R3.2 Motion Workspace Guide

91ContactsCurve-Curve Contact

Sample Form

To create a curve-curve contact:1. From the Contact toolbox, select curve-curve.

2. Select a method for the first curve between geometry and predefined non-geometric curve.

3. For the Geometry method, click in the Curve 1 Part list box and select the first part to make contact. Select the part from either the tree or the canvas.

4. Select the first curve. If necessary toggle the direction so that the arrow points into the solid. For a geometric curve specify the number of points desired along the first curve.

5. Select a method for the second curve.

6. For the Geometry method click in the Curve 2 Part list box and select the second part to make contact.

Page 112: SimXpert R3.2 Motion Workspace Guide

Curve-Curve Contact92

7. Select the second curve. If necessary toggle the direction so that the arrow points into the solid. For a geometric curve specify the number of points along the second curve.

8. Select the intermittent check box if desired.

9. Select the Contact tab on the Properties form to define the contact properties.

10. Click OK to create the contact. The contact will appear in the tree and in the canvas.

Page 113: SimXpert R3.2 Motion Workspace Guide

93ContactsBody-Body Contact

Body-Body ContactDefines a contact force between two bodies without specifying a point or curve for contact. Requires more solver time than lower order contacts.

Application

Defines a two- or three-dimensional contact between a pair of geometric objects. SimXpert supports multiple contacts, dynamic friction, contact between three-dimensional solid geometries, and contact between two-dimensional geometries. It does not support non-solid three-dimensional geometries, such as shells that do not encompass a volume and sheets. It also does not support contact between a two-dimensional and a three-dimensional geometry.

Description of Fields

Sample Form

To create a body-body contact:1. From the Contact toolbox, select body-body.

2. Click in the First Solid list box and select the first part to make contact. Select the part from either the tree or the canvas.

3. Click in the Second Solid list box and select the second part to make contact.

4. Click on the Contact tab to define contact parameters.

Field Description

First Solid First part to participate in contact

Second Solid Second part to participate in contact.

Page 114: SimXpert R3.2 Motion Workspace Guide

Body-Body Contact94

5. Click OK to create the contact. The contact will appear in the tree and in the canvas.

Page 115: SimXpert R3.2 Motion Workspace Guide

95Forces and Motions

Forces and Motions

Page 116: SimXpert R3.2 Motion Workspace Guide

Function Specification Tools96

Function Specification ToolsGeneral tools are available in SimXpert to define functions and variation to be used in the application of forces and motion. Functional expressions are defined using a common section on the property editor forms, and additional function tools are available through the Function Expression Builder. Spline curves are accessible from the Spline Data button on property editor forms. SimXpert will display a coordinate triad during object creation to assist you in visualizing location and orientation.

Function Expression BuilderThe Function Expression Builder is a common tool accessible from many SimXpert property editor forms that aides in the definition of functional expressions for the motion solver. The available functions are categorized by type, and drop-down menus allow the user to select a category and individual function to be entered into the expression window. Individual help content is available for the selected function to assist the user in defining the proper syntax.

Expressions are passed directly to the motion solver and do not take any units settings into account. Therefore, expressions assume that all angle values are expressed in radians regardless of the units selected. To write an expression that uses degrees, a d must be added to the end of the number in the expression.

Description of Fields

Field Description

ExpressionField that allows direct text entry of expressions and shows expressions inserted from drop down options below.

Verify Icon that verifies that the expression entered is in correct Motion Solver syntax.

Category Drop-down

Drop-down that selects the category of motion function to be inserted. May be set to All Functions to allow selection of any available solver function.

Function Drop-down

Drop-down that selects a particular solver function.The available functions depend on the option selected in the category drop-down on the left. Once a function is selected in the drop-down, the Insert, Append, and Help buttons apply to that function.

InsertButton that inserts the selected function into the expression at the current cursor location.

AppendButton that inserts the selected function into the expression on a new line at the end of the expression.

HelpButton that opens help specific to the selected function in order to assist with the syntax of the required inputs.

Page 117: SimXpert R3.2 Motion Workspace Guide

97Forces and MotionsFunction Specification Tools

Sample Form

Function Verification (Verify Function)This feature is part of the Function creation/modification tool that is available in the joint motion and applied forces/torques property editors. If you select "Expression" as the Function type, you may enter any ADAMS valid function expression. Once you enter the function expression, you can press the "Verify Function" button to have the motion solver determine whether the syntax is indeed valid for motion simulation.

If the text comes back in with a green font, the expression is valid for motion simulation.

If the expression is invalid, there will be a red text message above the Verify Function button that states "Expression is INVALID". Additional information about the invalid expression is displayed in red text in the Message Window.

Curve (Spline) EditorThis feature is accessible from the function creation/modification tool when the Spline option is selected. Clicking on the Spline Data button opens the Curve Editor. You may enter tabular data to define a spline curve that will be applied to the function selected, and may add or delete points as desired to define the curve. You also have options to control the display of data points in the curve editor window, as well as the color of the line.

The Curve Editor provides the ability to save the current curve or open an existing curve to view, edit, and apply to a particular function. Select Save or Open from the File menu in the Curve Editor interface.

Additional visualization options are available from the menu bar in the Curve Editor. The View menu allows you to specify which portion of a curve is displayed through using tools including fit data, specify range, pan, and zoom. You may edit the labels from the Labels menu. You may make other general adjustments to the window using the Options menu, which allows you to perform functions like turning

Page 118: SimXpert R3.2 Motion Workspace Guide

Function Specification Tools98

the grid on and off and allows you to specify whether to show the line connecting data points. Finally, additional options may be specified by selecting Other from the Options menu. This opens the Grapher options form, which allows you to set the margins, number of tick marks, and whether tick marks are displayed.

Curve Editor Interface

Coordinate Triad Visualization:While editing an object, a coordinate triad will be displayed to show the location and orientation information pertinent to that entity. The triad will only be displayed while the property editor is active.

The following image displays a sample coordinate triad:

Page 119: SimXpert R3.2 Motion Workspace Guide

99Forces and MotionsFunction Specification Tools

Page 120: SimXpert R3.2 Motion Workspace Guide

Joint Motions100

Joint MotionsWhen you create a joint motion, SimXpert defines the motion as a velocity over time based on a values that you can enter. The speed value can be a constant numerical value or a function expression and can be determined from input values for displacement, velocity or acceleration.

Application

Prescribes translational or rotational motion on a translational, revolute, or cylindrical joint. Each joint motion removes one degree of freedom (DOF) from your model. Joint motions are very easy to create, but they limit you to motions that are applied to the above listed joints and movements in only one direction or rotation.

Description of Fields

Field Description

Joint Name Joint to which motion will be applied

Freedom Degree of freedom for motion

Motion Type Select from Free, Displacement, Velocity, or Acceleration to control the motion

Initial Displacement Initial displacement of the joint before motion is applied

Initial Velocity Initial velocity of the joint before motion is applied

Function Define function to specify motion. See also Function Specification Tools.

Page 121: SimXpert R3.2 Motion Workspace Guide

101Forces and MotionsJoint Motions

Sample Form

To create a joint motion:1. From the Motion toolbox, select add motion.

2. Click in the Joint Name list box and select the joint to which motion will be applied. Select the joint from either the tree or the canvas.

3. Select the degree of freedom for the motion to apply to. The available degrees of freedom are limited by the type of the joint selected.

4. Select the method to control the motion. Available options are free, displacement, velocity, and acceleration.

5. Enter the initial displacement position of the joint.

6. Enter the initial velocity of the joint.

7. Select a definition method for the motion between Expression and User Subroutine.

8. Input the necessary data to define the motion.

9. Click OK to create the motion. The motion will appear in the tree and in the canvas.

Page 122: SimXpert R3.2 Motion Workspace Guide

Single Point Motion102

Single Point MotionSingle point motion prescribes the motion of two parts along or around one axis. SimXpert Motion defines the motion as an expression defining displacement, velocity, or acceleration as a function of time.

Application

When you create a point motion, you specify the two coordinate systems. The first coordinate system you select is called the moving point. It moves or rotates relative to the coordinate system on the second part, called the reference point. You can change the axis around or along which the motion is applied.

Description of Fields

Field Description

NameUser specified name of the single point motion. Populated with Single_Point_# by default,

Moving Point Field that selects a coordinate system as the moving point.

Reference PointField that selects a coordinate system as the reference point. This coordinate system defines the orientation of the motion of the parts.

Freedom Field that selects the degree of freedom in which to apply the motion.

Motion Type Select from Free, Displacement, Velocity, or Acceleration to control the motion

Initial Displacement

Initial displacement before motion is applied. Active only for Velocity and Acceleration motion types.

Initial VelocityInitial velocity before motion is applied. Active only for Acceleration motion type.

MethodOption button that selects between defining the motion with a run time expression or a user subroutine. Expression is the default method.

Expression

Field in which the user may enter a run time expression to define the motion. Available only if the method is set to expression. The Function Expression Builder may be launched to edit the expression by clicking the icon to the right of the expression field.

ParametersField that defines user subroutine input parameters. Available only if the definition method is set to User Subroutine.

RoutineField that selects an existing User Subroutine in the model if the method is set to User Subroutine. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Page 123: SimXpert R3.2 Motion Workspace Guide

103Forces and MotionsSingle Point Motion

Sample Form

To create a single point motion:1. From the Motion toolbox, select Single Point.

2. Click in the Moving Point list box and select a coordinate system to be the moving point for the motion.

3. Click in the Reference Point list box and select a reference coordinate system for the motion.

4. Select the degree of freedom for the motion to apply to.

5. Select the method to control the motion. Available options are free, displacement, velocity, and acceleration.

6. Enter the initial displacement and velocity of the motion as applicable.

7. Select either Expression or User Subroutine to define the desired motion.

8. Input the necessary data to define the motion.

9. Click OK to create the motion. The motion will appear in the tree and in the canvas.

Page 124: SimXpert R3.2 Motion Workspace Guide

General Point Motion104

General Point MotionGeneral point motion prescribes the motion of two parts along or around the three axes (six degrees of freedom (DOF)). SimXpert Motion defines the motion as an expression defining multiple components of displacement, velocity, and/or acceleration as a function of time.

Application

When you create a point motion, you specify the two coordinate systems. The first coordinate system you select is called the moving point. It moves or rotates relative to the coordinate system on the second part, called the reference point. You specify the motion independently for each degree of freedom.

Description of Fields

Field Description

NameUser specified name of the single point motion. Populated with General_Point_# by default,

Moving Point Field that selects a coordinate system as the moving point.

Reference PointField that selects a coordinate system as the reference point. This coordinate system defines the orientation of the motion of the parts.

TypeSelect from Free, Displacement, Velocity, or Acceleration to control the motion in each of the 6 degrees of freedom. Free is the default.

Function

Field in which the user may enter a run time expression to define the motion. The Function Expression Builder may be launched to edit the expression by clicking the icon to the right of the function field. Each field may be verified individually by clicking the verify icons.

Initial Displacement

Initial displacement in the specified direction before motion is applied. Active only for Velocity and Acceleration motion types.

Initial VelocityInitial velocity in the specified direction before motion is applied. Active only for Acceleration motion type.

Page 125: SimXpert R3.2 Motion Workspace Guide

105Forces and MotionsGeneral Point Motion

Sample Form

To create a general point motion:1. From the Motion toolbox, select General Point.

2. Click in the Moving Point list box and select a coordinate system to be the moving point for the motion.

3. Click in the Reference Point list box and select a reference coordinate system for the motion.

4. Select the type of motion to be specified in each of the six degrees of freedom.

5. Select the method to control the motion. Available options are free, displacement, velocity, and acceleration.

6. Input the function data to define each component of the motion.

7. Enter the initial displacement and velocity in each direction as applicable.

Page 126: SimXpert R3.2 Motion Workspace Guide

General Point Motion106

8. Click OK to create the motion. The motion will appear in the tree and in the canvas.

Page 127: SimXpert R3.2 Motion Workspace Guide

107Forces and MotionsApplied Force

Applied ForceApplied forces are forces that define loads and compliances on parts so that they move in certain ways. Applied forces are very general, but you must supply your own description of the force behavior by specifying a constant force value or expression function.

An action-only, single-component force is an external force or torque applied to a single body in a model that acts along a specified fixed axis. As you know from Newton’s third law, however, in nature there is no such thing as an action-only force (that is, one with no reaction). Therefore, the body reacting to the action-only force in SimXpert is automatically defined as ground and shows no visible effect in your model.

An action-reaction force is a force applied to one body producing a reaction force on a second body that is equal and opposite to the action force on the first body. If the force applied to the action body is positive, the action body is pushed away from the reaction body. If the force applied to the action body is negative, the action body is pulled towards the reaction body.

Application

Applied forces allow you to introduce loading into the model that may cause or oppose motion. You may choose from action only and action-reaction forces based on whether the reaction force is applied to another component in the model

For every force that you create you specify the following information:

1. To which part or parts the force is applied (unless it is applied to a coordinate system directly, in which case it will be applied to the coordinate system’s parent part).

2. At what point or points the force is applied.

3. Magnitude and direction of the force.

Note: You may find the action-reaction, multi-component forces more intuitive to use than the action-only, single-component force. If you want to apply force to only one body, you can use the action-reaction, multi-component forces and specify the reaction marker on ground.

Page 128: SimXpert R3.2 Motion Workspace Guide

Applied Force108

Description of Fields

Field Description

Name Name of applied force

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems between which the force acts. Cleared by default.

Part 1 Part which the force will be applied to

Part 2 Second part for an action-reaction force, or component that will serve as a reference frame for an action only force. To define ground as the reference frame, select the ground part button.

Location Allows definition of one application location of an action only force, or two locations for an action-reaction force.

Direction Defines the force direction for an action only force.

Function Allows definition of magnitude of applied force. Available options are constant, expression, harmonic, spline, and step functions. See also Function Specification tools.

Page 129: SimXpert R3.2 Motion Workspace Guide

109Forces and MotionsApplied Force

Sample form

To create an applied force:1. From the Forces toolbox, select applied force.

2. Enter a name for the applied force.

3. Select the Action Type. You may choose action only to apply a force to a single part, or action-reaction to apply a force between two parts in the model.

4. Select the first part that the force will be applied to. Alternatively, select the Define by Coordinate Systems checkbox to directly select coordinate systems and avoid part and location selection.

5. For an action only force, select a reference part to define the part orientation. For an action-reaction force, select the second part that the force will be applied to.

6. Select the location on the first part.

7. For an action-reaction force select the location on the second part.

Page 130: SimXpert R3.2 Motion Workspace Guide

Applied Force110

8. For an action only force define the orientation of the force.

9. Select the Function type necessary to define the desired force. The options available in the Function section of the form will vary based on your selection.

10. Input the necessary data to define the force.

11. Click OK to create the force. The force will appear in the tree and in the canvas.

Page 131: SimXpert R3.2 Motion Workspace Guide

111Forces and MotionsApplied Torque

Applied TorqueApplied torques allow you to introduce torque loading into the model that may cause or oppose motion. You may choose from action only and action-reaction torques based on whether the reaction is applied to another component in the model.

Application

For every torque that you create you specify the following information:

1. To which part or parts the torque is applied, or to which coordinate systems.

2. At what point or points the torque is applied.

3. Magnitude and direction of the torque.

Description of Fields

Field Description

Name Name of applied torque

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems between which the torque acts. Cleared by default.

Part 1 Part which the torque will be applied to.

Part 2 Second part for an action-reaction torque, or component that will serve as a reference frame for an action only torque. To define ground as the reference frame, select the ground part button.

Location Allows definition of one application location of an action only torque, or two locations for an action-reaction torque.

Direction Defines the force direction for an action only torque.

Function Allows definition of magnitude of applied torque. Available options are constant, expression, harmonic, spline, and step functions. See also Function Specification tools.

Page 132: SimXpert R3.2 Motion Workspace Guide

Applied Torque112

Sample Form

To create an applied torque:1. From the Forces toolbox, select applied torque.

2. Enter a name for the applied torque.

3. Select the Action Type. You may choose action only to apply a torque to a single part, or action-reaction to apply a torque between two parts in the model.

4. Select the first part that the torque will be applied to or select the Define Using Coordinate Systems checkbox and select the coordinate systems between which the torque will be applied.

5. For an action only torque, select a reference part to define the part orientation. For an action-reaction torque, select the second part that the torque will be applied to.

6. Select the location on the first part.

7. For an action-reaction torque select the location on the second part.

8. For an action only torque define the orientation.

Page 133: SimXpert R3.2 Motion Workspace Guide

113Forces and MotionsApplied Torque

9. Select the Function type necessary to define the desired torque. The options available in the Function section of the form will vary based on your selection.

10. Input the necessary data to define the torque.

11. Click OK to create the torque. The torque will appear in the tree and in the canvas.

Page 134: SimXpert R3.2 Motion Workspace Guide

Vector Force114

Vector ForceThe vector force creates a translational force element that is specified using three orthogonal components.

Application

You may define the VFORCE statement through user-specified function expressions in the ADAMS/Solver (C++) dataset or through user-written subroutines (see VFOSUB).

The VFORCE statement creates an ADAMS/Solver (C++) translational vector force element that applies a three-component force between two parts of the system. The element applies an action force to the part to which the I marker belongs and a corresponding reaction force to the part to which the JFLOAT marker belongs. The VFORCE statement establishes the position of the JFLOAT marker. As the system moves, ADAMS/Solver (C++) moves the JFLOAT marker on its part to keep the JFLOAT and I markers superimposed. Therefore, ADAMS/Solver (C++) applies the reaction force to the JFLOAT marker's part at the instantaneous position of the I marker.

The total vector force depends on the vector sum of the individual force components that you specify. The magnitude of the force is the square root of the sum of the squares of the magnitude of the three mutually-orthogonal force components. You can specify the functions with function expressions (see Function Expressions in this guide) or user-written FORTRAN subroutines (see User-Written Subroutines).

Description of Fields

Field Description

Name User specified name of vector force. Populated with Vector_Force_# by default.

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems between which the force acts. Cleared by default.

Part 1 First part which the force will be applied between.

Part 2 Second part which the vector force will be applied between.

Reference PartComponent that will serve as a reference frame for an action only force. To define ground as the reference frame, select the ground part button.

Location Fields that use common tools to specify location of the vector force.

Orientation Orientation tools to define the orientation of the components of the vector force.

Page 135: SimXpert R3.2 Motion Workspace Guide

115Forces and MotionsVector Force

Component Specification

Field Description

MethodOption button that selects between Expression and User Subroutine as the method to define the Vector Force.

Expression

X Force Expression

Field that allows input of an expression to define the force in the X direction. The Function Expression Builder is available to assist in creating runtime functions, and each expression may be verified individually using the Verify icon.

Y Force Expression

Field that allows input of an expression to define the force in the Y direction. The Function Expression Builder is available to assist in creating runtime functions, and each expression may be verified individually using the Verify icon.

Z Force Expression

Field that allows input of an expression to define the force in the Z direction. The Function Expression Builder is available to assist in creating runtime functions, and each expression may be verified individually using the Verify icon.

User Subroutine

Parameters Field that specifies parameters to be passed to the selected user subroutine.

RoutineField that specifies an existing user subroutine to define force component values. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Page 136: SimXpert R3.2 Motion Workspace Guide

Vector Force116

Sample form

To create a vector force:1. From the Forces toolbox, select Vector Force.

2. Enter a name for the vector force.

3. Select the first part that the force will be applied to or select the Define Using Coordinate Systems checkbox and select coordinate systems between which the force will act.

4. Select the second part that the force will be applied to.

5. Select a reference part for the force.

6. Select the location of the point of application of the force.

7. Define orientation of the force components.

8. Select either Expression or User Subroutine as the method to define the vector force components.

Page 137: SimXpert R3.2 Motion Workspace Guide

117Forces and MotionsVector Force

9. Enter expression or subroutine data for each force component.

10. Click OK to create the force. The force will appear in the tree and in the canvas.

Page 138: SimXpert R3.2 Motion Workspace Guide

Vector Torque118

Vector TorqueThe vector torque creates a rotational torque that is specified using three orthogonal components.

Application

You can define the VTORQUE statement through user-specified function expressions in the ADAMS/Solver (C++) dataset or through user-written subroutines.

The VTORQUE statement creates an ADAMS/Solver (C++) rotational force element, that applies a vector torque between two parts of the system. The element applies an action to the part to which the I marker belongs and a corresponding reaction to the part to which the JFLOAT marker belongs. The VTORQUE statement establishes the position of the JFLOAT marker. As the system moves, ADAMS/Solver (C++) moves the JFLOAT marker on its part to keep the JFLOAT and I markers superimposed. Thus, ADAMS/Solver (C++) applies the reaction torque to the JFLOAT marker's part.

The components of the torque depend on expressions or subroutines that you supply. The magnitude of the torque is the square root of the sum of the squares of the magnitudes of the three mutually orthogonal torque components. You can specify these functions using function expressions (see Function Expressions) or user-written FORTRAN subroutines (see User-Written Subroutines).

The direction of the torque action is determined by the resultant vector formed by the three component torque you defined along the RM marker axes. The reaction is equal and opposite to the action.

Description of Fields

Field Description

Name User specified name of vector torque. Populated with Vector_Torque_# by default.

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems between which the torque acts. Cleared by default.

Part 1 First part which the torque will be applied between.

Part 2 Second part which the vector force will be applied between.

Reference PartComponent that will serve as a reference frame for an action only torque. To define ground as the reference frame, select the ground part button.

Location Fields that use common tools to specify location of the vector torque.

Orientation Orientation tools to define the orientation of the components of the vector torque.

Page 139: SimXpert R3.2 Motion Workspace Guide

119Forces and MotionsVector Torque

Component Specification

Sample form

Field Description

MethodOption button that selects between Expression and User Subroutine as the method to define the Vector Force.

Expression

X Torque Expression

Field that allows input of an expression to define the torque in the X direction. The Function Expression Builder is available to assist in creating runtime functions, and each expression may be verified individually using the Verify icon.

Y Torque Expression

Field that allows input of an expression to define the torque in the Y direction. The Function Expression Builder is available to assist in creating runtime functions, and each expression may be verified individually using the Verify icon.

Z Torque Expression

Field that allows input of an expression to define the torque in the Z direction. The Function Expression Builder is available to assist in creating runtime functions, and each expression may be verified individually using the Verify icon.

User Subroutine

Parameters Field that specifies parameters to be passed to the selected user subroutine.

RoutineField that specifies an existing user subroutine to define torque component values. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Page 140: SimXpert R3.2 Motion Workspace Guide

Vector Torque120

To create a vector torque:1. From the Forces toolbox, select Vector Torque.

2. Enter a name for the vector torque.

3. Select the first part that the torque will be applied to or select the Define Using Coordinate Systems checkbox and select coordinate systems between which the torque will act.

4. Select the second part that the torque will be applied to.

5. Select a reference part for the torque.

6. Select the location of the point of application of the torque.

7. Define orientation of the torque components.

Page 141: SimXpert R3.2 Motion Workspace Guide

121Forces and MotionsVector Torque

8. Select either Expression or User Subroutine as the method to define the vector torque components.

9. Enter expression or subroutine data for each torque component.

10. Click OK to create the torque. The torque will appear in the tree and in the canvas.

Page 142: SimXpert R3.2 Motion Workspace Guide

General Force122

General ForceA general force is a force with potentially different values in each direction. You may specify a constant or function expression for each X,Y,Z Force and each XYZ Torque independently.

Application:

General forces allow you to introduce loading into the model that varies in different directions.

For every general force that you create you specify the following information:

1. Between which parts or coordinate systems the force is applied.

2. A reference part to define the force direction.

3. At what point or points the force is applied.

4. Magnitude of the force and/or torque in each coordinate direction.

Page 143: SimXpert R3.2 Motion Workspace Guide

123Forces and MotionsGeneral Force

Description of Fields:

Sample form:

Field Description

Name Name of general force

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems between which the force acts. Cleared by default.

Part 1 The action body (part) to which the force is applied.

Part 2 The reaction body (part) that receives the reaction forces.

Reference Part The reference part that indicates the direction of the force.

Location Allows definition of one application location of the force.

Orientation Defines the orientation of the coordinate system for the force.

Force and Torque Function Expressions

Tabs select the force or torque in each coordinate direction. Options are available to define each function as a Constant, Expression, Harmonic, Spline, or Step Function.

Page 144: SimXpert R3.2 Motion Workspace Guide

General Force124

To create a general force:1. From the Forces toolbox, select general force.

2. Enter a name for the general force.

3. Select the first part that the force will be applied to or select the Define Using Coordinate Systems checkbox and select coordinate systems between which the force will act.

Page 145: SimXpert R3.2 Motion Workspace Guide

125Forces and MotionsGeneral Force

4. Select the second part that the force will be applied to. This is the reaction body (part) that receives the reaction forces.

5. Select a reference part to define the part orientation.

6. Select the location of the force.

7. Define the orientation of the force.

8. Define the force and torque functions in each direction. Select the Function type necessary to define the desired force. Input the necessary data to define the force or torque.

9. Click OK to create the force. The force will appear in the tree and in the canvas.

Page 146: SimXpert R3.2 Motion Workspace Guide

Modal Force126

Modal ForceThe modal force statement applies a force directly to the modal coordinates and rigid body degrees of freedom of a flexible body.

Application:

The MFORCE statement allows you to apply any distributed load vector F to a FLEX_BODY. Such a load vector is typically generated with a finite element program. Examples of distributed load cases include thermal expansion or pressure loads.

Page 147: SimXpert R3.2 Motion Workspace Guide

127Forces and MotionsModal Force

Description of Fields:

Sample form:

Field Description

Name User specified name of modal force. Populated with Modal_Force_# by default.

Flexible Body Field that specifies the flexible part to which the modal force is applied.

Reaction Part Field that specifies rigid motion part for reaction part.

Reference PartComponent that will serve as a reference frame for an action only force. To define ground as the reference frame, select the ground part button.

MethodDropdown that selects between Single Loadcase, Subroutine (Function) and Subroutiine (Force) as the method to define the modal force.

Single Loadcase

Load CaseField that specifies an existing modal loadcase to be applied to the flexible part scaled by a function expression.

Scale Function Expression

Field that defines an expression for scaling the load case selected above. The Function Expression Builder is available to assist in defining expressions. A verify icon is available to verify expression syntax.

Subroutine (Function)

Parameters

Field that specifies up to thirty user-defined constants to be passed to the user-defined subroutine, MFOSUB to directly compute the modal load case and scale function whose product is the modal force applied to the flexible body. The scale function can depend on time or the state of the system. The load case can only be a function of time.

RoutineField that selects a user subroutine to which the above parameters will be passed. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Subroutine (Force)

Parameters

Field that specifies up to thirty user-defined constants to be passed to the user-defined subroutine, MFOSUB to directly compute the modal force on the flexible body. Each component of the modal force can depend on time or the state of the system.

RoutineField that selects a user subroutine to which the above parameters will be passed. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Page 148: SimXpert R3.2 Motion Workspace Guide

Modal Force128

To create a modal force:1. From the Forces toolbox, select Modal Force.

2. Enter a name for the modal force.

3. Select a flexible body that the force will be applied to.

4. Select a reaction part for the force to react against.

5. Select Single Loadcase or Subroutine as the method to define the values of the modal force.

6. Select a loadcase and enter the expression (for Single Loadcase) or enter parameters and select subroutine (for Subroutine methods).

7. Click OK to create the force. The force will appear in the tree and in the canvas.

Page 149: SimXpert R3.2 Motion Workspace Guide

129Forces and MotionsMulti Point Force

Multi Point ForceThe multi point force (NFORCE) statement creates a multi-point force element which establishes linear force-displacement (stiffness) and/or force-velocity (damping) relationships between many coordinate systems (up to 351) in the model.

Application:

The NFORCE creates a set of forces and torques which act between the I and J coordinate systems which appear in the NFORCE statement. These forces and torques are linear functions of the relative displacements and velocities of the coordinate systems, in a manner equivalent to the finite element method. For each NFORCE, one coordinate system(J) is used as the reference marker. The velocities are resolved into the J marker's reference frame and expressed in the J marker's coordinate system. The force and torque components computed by the NFORCE are also given in the J marker's coordinate system.

The force-displacement and force-velocity relationships are specified using stiffness and damping matrices, or by using a stiffness matrix and a proportional damping ratio. These matrices are defined using MATRIX statements in the dataset. The stiffness and damping matrices that ADAMS/Solver (FORTRAN) requires are defined for the I markers only; that is, they should be derived normally using the 6(n+1) J marker and I marker degrees-of-freedom, but are input using only the rows and columns corresponding to the I marker degrees-of-freedom. This is equivalent, in finite element terminology, to applying fixed boundary conditions at the J marker by simply removing the corresponding rows and columns from the matrices. ADAMS/Solver (FORTRAN) automatically computes and applies the correct reaction forces at the J marker.

Page 150: SimXpert R3.2 Motion Workspace Guide

Multi Point Force130

Description of Fields:

Stiffness Matrix

Field Description

NameUser specified name of multi point force. Populated with Multi_Point_Force_# by default.

PointsTable for referencing one or more coordinate systems. "+" and "-" buttons are used to append and delete rows. Each cell allows the user to pick a coordinate system from the model browser, graphics window, or drop down list.

Reference Point

Field that specifies the identifier of the coordinate system that determines the reference frame in which the relative velocities and all of the forces associated with the NFORCE are calculated and the coordinate system in which all the components and LENGTHs are evaluated. The NFORCE automatically applies the proper reaction forces at this location.

Field Description

Stiffness Matrix

Option button selects between Entered data and data from an existing file. The KMATRIX is a 6n · 6n matrix (n is the number of coordinate systems) that defines the linear relationships between the I marker displacements relative to the J marker and elastic forces generated by the NFORCE. The KMATRIX is specified in the J marker's coordinate system. Marker translational and rotational displacements appear sequentially in Dx, Dy, Dz, Ax, Ay, Az, order, while the markers appear in the same sequence as the coordinate systems are selected.

Entered Data

Edit Matrix Data

Icon that opens matrix editor to define stiffness values.

File

Matrix File Field that specifies location of an existing Adams matrix (.mtx) file.

Matrix Name

Drop-down that selects from available matrices in the selected matrix file.

Page 151: SimXpert R3.2 Motion Workspace Guide

131Forces and MotionsMulti Point Force

Damping

Force Matrix

Field Description

Active Checkbox that activates damping and enables remaining fields.

Damping MethodOption button selects between specification of a damping matrix or a damping ratio. If damping ration is selected, all matrix fields will be disabled.

Damping Ratio

Field that specifies the proportional damping ratio for the NFORCE. The elements of the damping matrix are determined by multiplying the corresponding stiffness element value by this number.

Damping Matrix

Option button selects between entered data and data from an existing file. The damping matrix is a 6n · 6n matrix (n is the number of I markers) that defines the linear relationships between the coordinate systems velocities relative to the reference system and the viscous forces generated by the NFORCE. The damping matrix is derived in the reference coordinate system.

Entered Data

Edit Matrix Data

Icon that opens matrix editor to define damping values.

File

Matrix File Field that specifies location of an existing Adams matrix (.mtx) file.

Matrix Name

Drop-down that selects from available matrices in the selected matrix file.

Field Description

Active Checkbox that activates force matrix and enables remaining fields.

Force Matrix

Option button selects between Entered data and data from an existing file. FORCE is a 6n · 1 matrix (n is the number of I markers) of forces and torques, appearing sequentially for each marker in Fx, Fy, Fz, Tx, Ty, Tz order, while the markers appear in the same sequence as the coordinate systems are selected. The force and torque components are expressed in the reference coordinate system.

Entered Data

Edit Matrix Data

Icon that opens matrix editor to define force values.

File

Matrix File Field that specifies location of an existing Adams matrix (.mtx) file.

Matrix Name

Drop-down that selects from available matrices in the selected matrix file.

Page 152: SimXpert R3.2 Motion Workspace Guide

Multi Point Force132

Length Matrix

Field Description

Active Checkbox that activates length matrix and enables remaining fields.

Length Matrix

Option button selects between Entered data and data from an existing file. Specifies the identifier of the MATRIX that defines a reference location for each of the coordinate systems with respect to the reference point, measured in the reference coordinate system. LENGTH is a 3n · 1 column matrix (n is the number of I markers) of translational displacements only, in Dx, Dy, Dz order. Usually, LENGTH is used to specify the system's free (no internal force) lengths when they differ from the input positions. If LENGTH is not given, the NFORCE assumes that the input positions of the coordinate systems are at the reference locations.

Entered Data

Edit Matrix Data

Icon that opens matrix editor to define length values.

File

Matrix File Field that specifies location of an existing Adams matrix (.mtx) file.

Matrix Name

Drop-down that selects from available matrices in the selected matrix file.

Page 153: SimXpert R3.2 Motion Workspace Guide

133Forces and MotionsMulti Point Force

Sample form:

Page 154: SimXpert R3.2 Motion Workspace Guide

Multi Point Force134

To create a multi point force:1. From the Forces toolbox, select Multi Point Force.

2. Enter a name for the force.

3. Select existing coordinate systems for the force to act upon. Click on the “+” icon to add more coordinate systems to the table.

4. Select a reference coordinate system for the force.

5. Select entered data of file as the stiffness method and enter the stiffness matrix data or select a stiffness matrix file.

6. Optionally activate and define data for damping, force, and length matrices.

7. Click OK to create the force. The force will appear in the tree and in the canvas.

Page 155: SimXpert R3.2 Motion Workspace Guide

135Forces and MotionsTranslational Spring Damper

Translational Spring DamperA translational spring damper represents forces acting between two parts over a distance and along a particular direction. You specify the locations of the spring damper and points on two parts. SimXpert calculates the spring and damping forces based on the distance between the locations on the two parts and their rate of change, respectively.

You can specify the damping and stiffness values as coefficients or use splines to define the relationships of damping to velocity or stiffness to displacement. You can also de-activate stiffness to create a pure damper or de-activate the damping to create a pure spring.

Application:

You add a translational spring damper to your model by defining the locations on two parts between which the spring damper acts. You define the action force that is applied to the first location, and SimXpert automatically applies the equal and opposite reaction force to the second location.

Page 156: SimXpert R3.2 Motion Workspace Guide

Translational Spring Damper136

Description of Fields:

Sample form:

Field Description

Name Name of translational spring damper

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems between which the spring-damper acts. Cleared by default.

First Part First part connected to spring damper. This is the action body.

Second Part Second part connected to spring damper. This is the reaction body.

Location 1 Location on first part

Location 2 Location on second part

Stiffness Allows specification of linear stiffness at a constant rate or nonlinear stiffness to be defined by spline data

Preload and Free Length Optionally allows you to define spring preload by entering a force value or free length

Damping Allows specification of linear damping with a constant coefficient or nonlinear damping defined by spline data

Page 157: SimXpert R3.2 Motion Workspace Guide

137Forces and MotionsTranslational Spring Damper

To create a translational spring damper:1. From the Forces toolbox, select translational spring damper.

2. Enter a name for the spring damper.

Page 158: SimXpert R3.2 Motion Workspace Guide

Translational Spring Damper138

3. Select the first part (action body) that the spring damper will connect to or select the Define Using Coordinate Systems checkbox and select coordinate systems between which the spring damper acts.

4. Select the location on the first part.

5. Select the second part (reaction body) that the spring damper will connect to.

6. Select the location on the second part.

7. Select the Stiffness check box if desired and select linear or nonlinear stiffness.

8. Enter values to define the stiffness as necessary.

9. Select preload if desired and enter value.

10. Select the Damping check box if desired and select linear or nonlinear damping.

11. Enter values to define the damping as necessary.

12. Click OK to create the spring damper.

Page 159: SimXpert R3.2 Motion Workspace Guide

139Forces and MotionsRotational Spring Damper

Rotational Spring DamperA rotational spring-damper is applied between two parts. It applies the action torque to the first part you select, called the action body, and applies an equal and opposite reaction torque to the second part you select, called the reaction body.

Application:

You can specify the damping and stiffness values as coefficients or use splines to define the relationships of damping to velocity or stiffness to displacement. You can also de-activate stiffness to create a pure damper or de-activate the damping to create a pure spring.

You can also set the rotation angle of the torsion spring when it is in its preload state and any preload forces on the spring. By default, the solver uses the rotation angle of the torsion spring when you create it as its preload angle.

The following linear constitutive equation describes the torque applied at the first body:

torque = -CT*da/dt - KT*(a-ANGLE) + TORQUE

SimXpert automatically computes the terms da/dt and a. The term a is the angle between the component parts. SimXpert takes into account the total number of complete turns.

Page 160: SimXpert R3.2 Motion Workspace Guide

Rotational Spring Damper140

Description of Fields:

Sample form:

Field Description

Name Name of rotational spring damper

Define Using Coordinate Systems

Checkbox that when enabled replaces the part and location definition options with directly specified coordinate systems between which the spring-damper acts. Cleared by default.

First Part First part connected to spring damper. This is the action body.

Second Part Second part connected to spring damper. This is the reaction body.

Location 1 Location of spring damper

Direction Direction of rotation axis. Check box may be selected to flip the direction of the selected axis.

Stiffness Allows specification of linear stiffness at a constant rate or nonlinear stiffness to be defined by spline data

Preload and Free Angle Optionally allows you to define spring preload by entering a force value or free angle

Damping Allows specification of linear damping with a constant coefficient or nonlinear damping defined by spline data

Page 161: SimXpert R3.2 Motion Workspace Guide

141Forces and MotionsRotational Spring Damper

To create a rotational spring damper:1. From the Forces toolbox, select rotational spring damper.

2. Enter a name for the spring damper.

Page 162: SimXpert R3.2 Motion Workspace Guide

Rotational Spring Damper142

3. Select the first part (action body) that the spring damper will connect to or select the Define Using Coordinate Systems checkbox and select coordinate systems between which the spring damper will act.

4. Select the second part (reaction body) that the spring damper will connect to.

5. Select the location of the spring damper.

6. Specify the direction about which the spring damper may rotate.

7. Select the Stiffness check box if desired and select linear or nonlinear stiffness.

8. Enter values to define the stiffness as necessary.

9. Select preload if desired and enter value.

10. Select the Damping check box if desired and select linear or nonlinear damping.

11. Enter values to define the damping as necessary.

12. Click OK to create the spring damper.

Page 163: SimXpert R3.2 Motion Workspace Guide

143Forces and MotionsBump Stops and Rebound Stops

Bump Stops and Rebound StopsBump stops and rebound stops define a force-displacement relationship between two parts. The stop acts between user-specified locations on each part. The force is activated when the displacement between the two locations exceeds the clearance defined for the bumpstop.

The force-displacement formula is based on:

• Instantaneous distance between the user-specified locations defined on each part

• Impact length or clearance

• Bumpstop properties (polynomial or nonlinear stiffness with or without linear or nonlinear damping).

The following figure shows the clearance and impact length.

Bump Stop Force Calculation:

The bump stop property editor supports various methods and options for defining and calculating force characteristics. It supports the following methods to determine the elastic-force component:

Page 164: SimXpert R3.2 Motion Workspace Guide

Bump Stops and Rebound Stops144

• Polynomial - The formulation of the force is based on a third-order polynomial whose equation can be expressed as follows:

F elastic = POLY(MAX(0, impact_length - DM ( lower_location, upper_location )), 0, 0, LinearRate, QuadraticRate, CubicRate)

• Nonlinear (spline based) - The formulation of the force is based on the Akima spline interpolation of a nonlinear characteristic:

F elastic = akispl(MAX(0, impact_length - DM( lower_location, upper_location )), 0, Spline)

The elastic force becomes active only when the instantaneous distance between the locations on the two parts is less than the impact length. The impact length term depends on the distance type. If you select Clearance, the impact length becomes:

dmCalc - Clearance

Where:

• Clearance - Value you specify

• dmCalc - Initial displacement computed between the upper and lower locations

You may also enable a damping characteristic. If you enable the damping characteristic, the force is dependent on the deflection and velocity of the upper_location and lower_location.

Damping (viscous) forces can be:

• Linear - If you include in the property file a linear damping value other than zero, then the total force exerted between the upper and lower parts is equal to the sum of the elastic force specified above and the following damping force:

F damping = STEP MAX(0, impact_length - DM(lower_location, upper_location )), 0, 0, 0.1, -dampingRate * VR ( lower_location, upper_location ))

• Nonlinear (spline based) - If the user selects nonlinear damping, then the total force exerted between the upper and lower parts is equal to the sum of the elastic force specified above and the following damping force:

F damping = STEP MAX(0, impact_length - DM(lower_location, upper_location )), 0, 0, 0.1, -AKISPL ( VR ( lower_location, upper_location ), 0, dampingSpline ))

SimXpert Motion also allows you to have a metal to metal bumper stop located at a separate location than the jounce bumper. By default, the jounce bumper metal to metal stop is at the same position as the jounce bumper, and when the deflection of the bumper goes beyond the bumper height (as defined in the bumper properties section), the metal to metal force engages. To define a metal to metal stop that is at a position not on the jounce bumper, the user must select locations on the upper and lower parts.

Rebound Stop Force Calculation:

The force in a rebound stop always acts to keep two parts from moving farther apart. The force is active only when the distance between the parts as computed by dm(upper_location, lower_location) exceeds the impact length. You specify the impact length directly or indirectly as the initial clearance in the

Page 165: SimXpert R3.2 Motion Workspace Guide

145Forces and MotionsBump Stops and Rebound Stops

rebound stop. When you specify a clearance, the impact length is calculated from the clearance as follows:

dmCalc + Clearance

where:

• Clearance is the value you specify

• dmCalc is the initial displacement computed between the upper and lower locations.

Further, the force in a rebound stop is the sum of an elastic force and a damping force. The XML property file supports various options for calculating either force. The options available for calculating elastic force (F elastic) are:

• Polynomial - The for calculated using a third-order polynomial. The ADAMS/Solver function expression is:

F elastic = POLY(MAX(0,DM(lower_location, upper_location ) - impact_length),0,0,- linearRate,-quadraticRate,-cubicRate)

• Nonlinear (spline based) - The force is interpolated using Akima's method based on force vs. deflection data.

F elastic = -1.0*(AKISPL(MAX(0,DM(lower_location, upper_location ) - impact_length),0,Spline))

The damping force always acts in opposition to the velocity. The options for calculating damping force are:

• Linear - You specify the dampingRate, and the damping force is the product of dampingRate, velocity, and a STEP function. The STEP function depends on the displacement in the rebound stop and ensures the damping force is continuos with displacement.

Fdamping = STEP (MAX(0, DM(lower_location, upper_location ) - impact_length), 0, 0, 0.1, -dampingRate * VR ( upper_location, lower_location))

• Nonlinear (spline based) - The damping force is interpolated using Akima's method from a table of force vs. velocity. A STEP function dependent on the displacement in the rebound stop ensures that the damping force is continuous with displacement.

F damping = STEP (MAX(0, DM(lower_location, upper_location ) - impact_length), 0, 0, 0.1, -AKISPL ( VR ( lower_location, upper_location ), 0, dampingSpline ))

Application:

These bump stops and rebound stops will mostly be used engineers who are creating suspension mechanisms.

Page 166: SimXpert R3.2 Motion Workspace Guide

Bump Stops and Rebound Stops146

Description of Fields:

Definition Form Entries

Upper Location

Lower Location

Field Description

Name Name of bump stop

Active

Checkbox that determines whether bump stop is active.

Field Description

Part The part to which the upper location of the bumper is attached.

Location

Define Location Using

Allows selection of the method to define a location.

GeometryDefault option. Allows selection of geometric point locations, such as a vertex, center point of a circular edge, or center of a sphere.

Hardpoint Allows selection of an individual hardpoint to be used as the location.

Custom Allows the direct entry of X, Y, and Z coordinates of a position.

Coordinate System

Existing coordinate system origin may be selected in the field below.

Orientation

Define Orientation Using

Allows selection of the method to define orientation.

Global Oriented with global coordinates. (Default for optional orientation)

Z-axis Oriented with a single axis, which will be specified below.

2 axis Oriented with two axes, which will be specified below.

Euler Angles

Euler angles may be input for Body 313 rotation.

Coordinate System

Existing coordinate system may be selected in the field below.

Page 167: SimXpert R3.2 Motion Workspace Guide

147Forces and MotionsBump Stops and Rebound Stops

Installation Method

Field Description

Part The part to which the lower location of the bumper is attached.

Location 2

Define Location Using

Allows selection of the method to define a location.

GeometryDefault option. Allows selection of geometric point locations, such as a vertex, center point of a circular edge, or center of a sphere.

Hardpoint Allows selection of an individual hardpoint to be used as the location.

Custom Allows the direct entry of X, Y, and Z coordinates of a position.

Coordinate System

Existing coordinate system origin may be selected in the field below.

Field Description

Installation Method

ClearanceDefault option. Specifies the distance the bumper travels after the upper and lower locations come together. Default value is 25mm.

Impact Length

Specifies the maximum distance from the initial location of the upper part to the fully compressed location. This is the sum of the initial distance between the upper and lower locations and the distance traveled after impact (Clearance).

Value Allows entry of a numerical value for the selected installation method.

Nonlinear Allows specification of nonlinear stiffness data using the curve editor.

Independent Axis

LengthThe x-axis data is the distance between the spring seats. With this technique the spline has a negative slope.

DeflectionThe x-axis data is deflection from some trim condition. The spline has a positive slope.

Page 168: SimXpert R3.2 Motion Workspace Guide

Bump Stops and Rebound Stops148

Properties Form Entries

Field Description

Height Height of the bumper. Default value is 25mm.

Diameter Diameter of the bumper. Default value is 40 mm.

Stiffness Method

Polynomial

The force is calculated using the following third order polynomial:

F elastic = POLY(MAX(0,DM(lower_location, upper_location ) - impact_length),0,0,- linearRate,-quadraticRate,-cubicRate)

Linear RateSpecifies the linear term in the third order polynomial used to calculate the bump stop force.

Quadratic Rate

Specifies the quadratic term in the third order polynomial used to calculate the bump stop force.

Cubic RateSpecifies the cubic term in the third order polynomial used to calculate the bump stop force.

Spline

The force is interpolated using Akima's method based on user input force vs. deflection data.

F elastic = -1.0*(AKISPL(MAX(0,DM(lower_location, upper_location ) - impact_length),0,Spline))

Spline Data Opens the curve editor to allow definition of Spline data.

Damping Method

Linear

The damping force is the product of the dampingRate, velocity, and a STEP function. The STEP function depends on the displacement in the rebound stop and ensures the damping force is continuous with displacement.

Fdamping = STEP (MAX(0, DM(lower_location, upper_location ) - impact_length), 0, 0, 0.1, -dampingRate * VR ( upper_location, lower_location))

Damping Rate

Specifies the dampingRate term in the calculation of the linear damping force.

Spline

The damping force is interpolated using Akima's method from a table of force vs. velocity. A STEP function dependent on the displacement in the rebound stop ensures that the damping force is continuous with displacement.

F damping = STEP (MAX(0, DM(lower_location, upper_location ) - impact_length), 0, 0, 0.1, -AKISPL ( VR ( lower_location, upper_location ), 0, dampingSpline ))

Spline Data Opens the curve editor to allow definition of force vs. velocity Spline data.

Page 169: SimXpert R3.2 Motion Workspace Guide

149Forces and MotionsBump Stops and Rebound Stops

Metal to Metal Form Entries

Field Description

Metal to MetalCheckbox that determines whether the metal to metal rate is active or not in the model.

Part The part that specifies the upper location for the metal to metal rate. The same part that was specified in the Definition page is pre-populated in this field by default.

Location

Define Location Using

Allows selection of the method to define a location. The same location that was specified in the Definition page is pre-populated in this field by default.

GeometryDefault option. Allows selection of geometric point locations, such as a vertex, center point of a circular edge, or center of a sphere.

Hardpoint Allows selection of an individual hardpoint to be used as the location.

Custom Allows the direct entry of X, Y, and Z coordinates of a position.

Coordinate System

Existing coordinate system origin may be selected in the field below.

Orientation

Define Orientation Using

Allows selection of the method to define orientation. The same orientation that was specified in the Definition page is pre-populated in this field by default.

Global Oriented with global coordinates. (Default for optional orientation)

Z-axis Oriented with a single axis, which will be specified below.

2 axis Oriented with two axes, which will be specified below.

Euler Angles

Euler angles may be input for Body 313 rotation.

Coordinate System

Existing coordinate systems may be selected in the field below.

Metal to Metal Rate

Specify the linear rate for the metal to metal contact.

Default: 1E+06 (N/mm)

Page 170: SimXpert R3.2 Motion Workspace Guide

Bump Stops and Rebound Stops150

Sample form:

To create a bump stop or rebound stop:1. From the Forces toolbox, select either Bump Stop or Rebound Stop.

2. Enter a name for the stop.

3. Select the part for the upper location that the stop will connect to.

4. Select the location on the part.

5. Define the orientation of the Bump Stop or Rebound Stop.

6. Select the part for the lower location of the stop.

7. Select the location on the lower part.

Page 171: SimXpert R3.2 Motion Workspace Guide

151Forces and MotionsBump Stops and Rebound Stops

8. Select the desired installation method and enter the appropriate value. See the figure above for a description of Clearance vs. Impact length.

9. Select the Properties tab.

10. Enter values for the height and diameter of the stop.

11. Select either polynomial or nonlinear Stiffness Method and define as necessary.

12. Select either Linear or Spline damping and enter the damping rate information.

13. If you wish to model a Metal to Metal stop in addition, select the Metal to Metal tab and activate this option. You may select different locations for the metal to metal stop, but the original stop locations are selected by default. Enter the desired metal to metal rate.

14. Click OK to create the bump stop or rebound stop.

Page 172: SimXpert R3.2 Motion Workspace Guide

Bump Stops and Rebound Stops152

Page 173: SimXpert R3.2 Motion Workspace Guide

147System Elements and Data Elements

System Elements and Data Elements

Page 174: SimXpert R3.2 Motion Workspace Guide

Overview148

OverviewThe contents of the System Elements and Data Elements toolbars allow users of the SimXpert Motion Workspace to define mathematical entities for use with the motion solver. These allow users to efficiently store data and create elements of motion models that are mathematically more complex than the basic tools allow.

Page 175: SimXpert R3.2 Motion Workspace Guide

149System Elements and Data ElementsSubroutines and User Libraries

Subroutines and User LibrariesUser subroutines may be referenced in creating system elements or data elements within SimXpert. These subroutines are defined using user libraries. These libraries let you add run-time functions for motion or force magnitudes to directly define the behavior of your model and change the way the simulation is performed. They let you take advantage of existing software to define complex modeling relationships, such as hydraulic actuators or tire forces. Once you create a library, you need to set up your modeling entities, such as motions or forces, to reference these subroutines and use the library whenever you perform a simulation on models referencing these subroutines.

System RequirementsTo use subroutines, you need the system requirements outlined in the following sections.

Compilers and Linkers

To work with user-written subroutines you must have the appropriate compilers and linkers. You need to use the a command prompt that has the proper Intel Fortran environment. In most cases the Intel Compiler command prompt is the one to use. For more information, refer to the hardware and software specifications included with your installation instructions.

Languages

You can write user-written subroutines in any language, provided there is a way to call FORTRAN subroutines in that language. FORTRAN is the preferred language for writing user-written subroutines, although C and C++ are acceptable.

Debuggers

To facilitate the debugging of user-written subroutines, you should have a source-level debugger. Debuggers are not required when using your own subroutines with Adams/Solver, but are useful for finding mistakes, such as improper syntax or logic, in your subroutines.

About User-Written SubroutinesUser-written subroutines are used primarily for modeling specialized phenomena or calculating nonstandard results. Many simulations require the modeling of special phenomena that are not a part of the standard SimXpert software. These phenomena may be expressed mathematically as differential equations, algebraic equations, applied forces, constraints, motion inputs to system, or a combination of these general modeling entities.

The SimXpert motion solver can accept user-specified descriptions of phenomena. You define the governing relationships for the phenomena in the user-written subroutines. SimXpert then evaluates these relationships as part of the solution process.

Page 176: SimXpert R3.2 Motion Workspace Guide

Subroutines and User Libraries150

Building User LibrariesIn order to build a user library from source code, invoke the following command line:

$INSTALL_DIR \WINNT\bin\simxpert32.bat cr-u -i source.f -o name.dll

where:

$INSTALL_DIR is the name of the directory in which SimXpert is installed.

source.f is name of the user source file(s) to be compiled and linked into the user library

name.dll is the name of the user library to be created

In the above command the source file may be c code, in this case the input file name should be changed to source.c.

Command line on Linux is similar

$INSTALL_DIR/LX86/bin/simxpert32.csh cr-u -i source.f -o name.so

Page 177: SimXpert R3.2 Motion Workspace Guide

151System Elements and Data ElementsDifferential Equation

Differential EquationIn SimXpert, you may define differential equations. This works by creating DIFF statements in the motion solver format based upon your input in the differential property editor form.

Application

This feature is used when the user wishes to add a new differential equation to the motion model. The DIFF statement creates a user-defined state variable and defines a first-order differential equation that describes it. The equation may be dependent on any ADAMS/Solver (C++) state variable available in a function expression. You can create systems of differential equations by using more than one DIFF statement or LSE and GSE statements.

Description of Fields

Field Description

NameSpecifies user entered name for differential equation. Populated with Differential_# by default.

IDRead-only text that tells the user the numerical ID (the ID motion solver will eventually see) of the DIFF. This is useful because the DIFF expression may reference itself.

TypeOption button that specifies Explicit or Implicit type. When set to Explicit the Derivative field is disabled. Set to Explicit by default.

MethodOption button that selects between defining the equation with a run time expression or a user subroutine. Expression is the default.

Expression

Field in which the user may enter a run time expression to define the differential equation. Available only if the definition method is set to expression. The Function Expression Builder may be launched to edit the expression by clicking the icon to the right of the expression field.

ParametersField that defines user subroutine input parameters. Available only if the definition method is set to User Subroutine.

RoutineField that selects an existing User Subroutine in the model if the method is set to User Subroutine. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Initial Condition Value

Field that specifies real value initial condition for the differential equation.

Initial Condition Derivative

Field that specifies real value initial derivative for the differential equation. Enabled only if the type is set to Implicit.

Keep Constant During Static Analysis

Checkbox that defines whether value of differential equation will be held constant during static analyses. Checked by default.

Page 178: SimXpert R3.2 Motion Workspace Guide

Differential Equation152

Sample Form

To create a differential equation:1. From the System Elements toolbox, select Differential.

2. Enter a name for the differential equation. The solver ID of the equation is displayed to the right of the name field and is read only.

3. Select the type of equation from Explicit or Implicit.

4. Select the method to define the equation. Runtime expression and user subroutine are the available options. Enter the expression or select a subroutine and enter parameters to be passed to it.

5. Enter the initial condition of the equation. An initial Derivative is required for implicit equation type.

6. Optionally specify to keep the equation’s value constant during static analysis.

7. Click OK to create the equation.

Page 179: SimXpert R3.2 Motion Workspace Guide

153System Elements and Data ElementsState Variable

State VariableThe State Variable property editor assists in the creation of a solver VARIABLE statement. The VARIABLE statement defines a variable in terms of a scalar algebraic equation for independent use, or as part of the PINPUT, POUTPUT, or ARRAY statement.

Application

The VARIABLE statement creates a user-defined algebraic equation. The value of the VARIABLE statement may depend on almost any ADAMS/Solver (C++) system variable.

You can define the value of the VARIABLE statement by either writing a function expression in the dataset or by calling a VARSUB user-written subroutine.

Function expressions and user-written subroutines can access the value of the VARIABLE statement with the ADAMS/Solver (C++) function VARVAL(id) (see VARVAL) to represent the value, where id specifies the user-selected identifier of the VARIABLE statement. User-written subroutines access single VARIABLE statement values by calling the subroutine SYSFNC.

Description of Fields

Field Description

NameSpecifies user entered name for the state variable. Populated with State_Variable_# by default.

IDRead-only text that tells the user the numerical ID (the ID motion solver will eventually see) of the state variable.

MethodOption button that selects between defining the variable with a run time expression or a user subroutine. Expression is the default method.

Expression

Field in which the user may enter a run time expression to define the state variable. Available only if the definition method is set to expression. The Function Expression Builder may be launched to edit the expression by clicking the icon to the right of the expression field.

ParametersField that defines user subroutine input parameters. Available only if the definition method is set to User Subroutine.

RoutineField that selects an existing User Subroutine in the model if the method is set to User Subroutine. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Guess Checkbox that activates field for estimated initial condition entry.

Initial Condition Value

Field that specifies real value initial condition for the state variable.

Page 180: SimXpert R3.2 Motion Workspace Guide

State Variable154

Sample form

To create a state variable:1. From the System Elements toolbox, select State Variable.

2. Enter a name for the State Variable. The solver ID is displayed as a read only field to the right of the name.

3. Select a method to define the variable. Expression and User Subroutine are the available options.

4. Enter a runtime expression for the expression method or select a user subroutine and enter parameters to be passed to it for User Subroutine method.

5. Optionally, check the checkbox for Guess and enter a value for the trial initial condition of the state variable.

6. Click OK to create the state variable.

Page 181: SimXpert R3.2 Motion Workspace Guide

155System Elements and Data ElementsLinear State Equation

Linear State EquationThe Linear State Equation (LSE) statement defines the following linear system:

of first-order, explicit differential equations and algebraic equations in classical state-space form.

Application

The state variables, x, the inputs, u, and the outputs, y, are specified by ARRAY statements. Use MATRIX statements to define the coefficient matrices A, B, C, and D. A single LSE can have a maximum of 1200 inputs, 1200 states, and 1200 outputs.

The LSE statement provides a very general capability for defining a linear element. The ADAMS solvers, however, have been developed and refined for sparse systems of equations that arise from the modeling of mechanical systems. With the LSE statement, you can create very dense sets of equations. If these equations form a large portion of your completed model, ADAMS/Solver (C++) may perform more slowly than expected.

Note that, if the algebraic equations defined by the LSE statement have no solution or multiple solutions (this is possible because of the general nature of the input ARRAY), ADAMS/Solver (C++) most likely fails to converge or possibly converge to an unexpected answer. To avoid this possibility, you should not reference the X (state) or Y (output) ARRAY statements in the VARIABLE statements listed in the U (input) array.

Description of Fields

Field Description

NameSpecifies user entered name for the linear state equation. Populated with Linear_State_# by default.

Outputs Field that sets the value for number of outputs from the equation.

Inputs Field that sets the value for number of inputs from the equation.

States Field that sets the value for number of states for the equation.

A Matrix MethodOption button that selects between defining the A matrix values with entered data or data from an existing matrix file. Entered data is the default method.

B Matrix MethodOption button that selects between defining the values with entered data or data from an existing matrix file. Only enabled if N_INPUTS > 0. Entered data is the default method.

x· Ax Buy

+Cx Du+

==

Page 182: SimXpert R3.2 Motion Workspace Guide

Linear State Equation156

C Matrix MethodCheckbox that activates the C matrix and option button that selects between defining the values with entered data or data from an existing matrix file. Only enabled if N_OUTPUTS > 0. Entered data is the default method.

D Matrix Method

Checkbox that activates the D matrix and option button that selects between defining the linear state equation with entered data or data from an existing matrix file. Only enabled if N_INPUTS > 0 and N_OUTPUTS > 0. Entered data is the default method.

Specify Initial Conditions

Checkbox that enables initial condition specification for the linear state equation. Clicking on the Edit Values icon allows values to be entered.

Keep initial values constant during static analysis

Checkbox that selects whether or not the motion solver should hold constant the value of the transfer equation during static and quasi-static simulations.

Field Description

Page 183: SimXpert R3.2 Motion Workspace Guide

157System Elements and Data ElementsLinear State Equation

Sample Form

To create a Linear State Equation:1. From the System Elements toolbox, select Linear State Equation.

2. Enter a name for the linear state equation.

3. Use the drop-downs to specify the configuration of the equation by defining the number of outputs, inputs, and states.

4. Input data or select an existing matrix file for the A Matrix.

Page 184: SimXpert R3.2 Motion Workspace Guide

Linear State Equation158

5. If necessary, input data or select an existing matrix file for the B, C, and D matrices. The availability of these matrices depend on the number of outputs and inputs specified in the configuration.

6. Optionally check the checkbox to define initial conditions..

7. Select whether to keep the equation values constant during a static analysis.

8. Click OK to create the linear state equation.

Page 185: SimXpert R3.2 Motion Workspace Guide

159System Elements and Data ElementsGeneral State Equation

General State EquationThe GSE (General State Equation) statement lets you represent a subsystem that has well defined inputs (u), internal states (x), and a set of well-defined outputs (y).

Application:

The GSE (General State Equation) statement defines the equations for modeling a nonlinear, time varying, dynamic system. The statement is especially useful for importing nonlinear control laws developed manually or with an independent software package. It can also be used to define an arbitrary system of coupled differential and algebraic equations. The GSE allows you to implement continuous and feed forward systems.

The GSE statement provides a very general capability for modeling nonlinear systems. However, the routines for solving the linear equations in ADAMS/Solver (C++) have been developed and refined to work particularly well with the sparse systems of equations that come from the assembly of mechanical models. With the GSE statement, you can create very dense sets of equations. If these equations form a large portion of the completed model, ADAMS/Solver (C++) may perform more slowly than expected.

To improve the performance of ADAMS/Solver (C++), any arrays of partial derivatives which are not full can be represented in sparse form. This sparse form can substantially reduce the effort required by the integrator. To represent the partials in sparse form, use the GSEMAP_* (provide link) utility subroutines, when calling GSE_DERIV (provide link) with IFLAG=1, to define the sparsity. Then, use the GSEPAR_* utility subroutines to pass the sparse partial arrays to the integrator.

Page 186: SimXpert R3.2 Motion Workspace Guide

General State Equation160

Description of Fields:

Sample form:

Field Description

NameSpecifies user entered name for the general state equation. Populated with General_State_# by default.

Outputs Field that sets the value for number of outputs from the equation.

Inputs Field that sets the value for number of inputs from the equation.

Continuous StatesField that sets the value for number of continuous states (N_STATES) for the equation.

Discrete StatesField that sets the value for number of discrete states (N_DSTATES) for the equation.

FormulationOption button that selects between Interface style and routine style. Interface style allows the use of implicit formulation, and is the default.

Parameters Subroutine parameters (comma separated numerical entries).

RoutineField that specifies a user subroutine. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Initial ConditionsCheckbox that enables initial condition specification for continuous and/or discrete states. Fields are enabled if the number of corresponding states = 0. Clicking on the Edit Values icons allows values to be entered.

Keep state values constant during static analysis

Checkbox that selects whether or not the motion solver should hold constant the state values during static and quasi-static simulations.

Page 187: SimXpert R3.2 Motion Workspace Guide

161System Elements and Data ElementsGeneral State Equation

To create a general state equation:1. From the System Elements toolbox, select General State Equation.

2. Enter a name for the equation.

3. Using the drop-down, define the configuration (number of outputs, inputs, continuous, and discrete states) of the state equation.

4. Select the formulation style between Interface Style or Routine Style. Enter parameters and select a subroutine to which they will be passed.

5. Optionally specify initial conditions for continuous and discrete states.

6. Select whether to keep the equation values constant during a static analysis.

Page 188: SimXpert R3.2 Motion Workspace Guide

General State Equation162

7. Click OK to create the general state equation.

Page 189: SimXpert R3.2 Motion Workspace Guide

163System Elements and Data ElementsTransfer Function

Transfer FunctionThe TFSISO (Transfer Function, Single-Input, Single-Output) statement defines a single-input, single-output transfer function as a ratio of two polynomials in the Laplace domain when used with the associated ARRAY statements.

Application:

The TFSISO (Transfer Function, Single-Input, Single-Output) statement is designed to model a linear, time-invariant dynamic system defined in the Laplace domain, especially to facilitate the import of elements from control-system block diagrams. It can also be used, however, to define an arbitrary set of constant-coefficient, differential and algebraic equations which can be expressed in the Laplace domain as:

The TFSISO follows standard control systems terminology, where x is the state variable array, y is the output variable, and u is the input variable. Initial conditions are assumed to be identically zero. In the ADAMS/Solver (C++) dataset, each of these arrays is defined using an ARRAY statement. The characteristic equation for a single TFSISO statement, defined by the DENOMINATOR argument, can be a polynomial of degree less than 30.

G S( ) y S( )u S( )-----------

b0 b1s1

bmsm

+ +

a0 a1s1

aksk

+ +-----------------------------------------= =

Page 190: SimXpert R3.2 Motion Workspace Guide

Transfer Function164

Description of Fields:

Sample form:

Field Description

NameSpecifies user entered name for the linear state equation. Populated with Transfer_Function_# by default.

Input Variable Field that selects a motion state variable as the input for the transfer function.

Numerator Size

Field that sets the number of coefficients for the numerator of the transfer function. These coefficients are specified using the Edit Values icon to the right of the field. The number of coefficients for the denominator must be greater than or equal to the number of coefficients for the numerator, so if users enter a number here greater than the current denominator size the denominator size will increase.

Edit ValuesIcon that opens a matrix editor form to enter the selected number of numerator coefficients.

Denominator Size

Field that sets the number of coefficients for the denominator of the transfer function. These coefficients are specified using the Edit Values icon to the right of the field. The number of coefficients for the denominator may not be set lower than the number in the numerator.

Edit ValuesIcon that opens a matrix editor form to enter the selected number of denominator coefficients.

Keep value constant during static analysis

Checkbox that selects whether or not the motion solver should hold constant the value of the transfer equation during static and quasi-static simulations. Checked by default.

Page 191: SimXpert R3.2 Motion Workspace Guide

165System Elements and Data ElementsTransfer Function

To create a transfer function:1. From the System Elements toolbox, select Transfer Function.

2. Enter a name for the transfer function.

3. Select the input variable for the transfer function.

4. Select the numerator size and denominator size, keeping in mind that the denominator must be equal to or greater than the numerator in size.

5. Click on the edit values icons to enter the coefficients for the numerator and denominator.

6. Select whether to keep the function values constant during a static analysis.

7. Click OK to create the transfer function.

Page 192: SimXpert R3.2 Motion Workspace Guide

String166

StringThe STRING statement defines a character string that may be referred to later in the execution of the motion solver. An interactive STRING command can be used to alter or review this character string. A GTSTRG subroutine can be used to retrieve this character string in a user-written subroutine.

Application:

The STRING statement enters a character string for later reference. The GTSTRG subroutine can retrieve this string.

The following characters are not permitted in a STRING argument because they are delimiters in the ADAMS/Solver command language: comma (,), semicolon (;), ampersand (&), and exclamation point (!). This is because the comma indicates that additional ADAMS/Solver arguments follow; the semicolon indicates that additional ADAMS/Solver statements follow on the same line; the ampersand indicates that the next line is a continuation of the statement on this line; and the exclamation point indicates that ADAMS/Solver is to stop reading the line.

Description of Fields:

Sample form:

To create a string:1. From the Data Elements toolbox, select String.

2. Enter a name for the string.

Field Description

Name Field that specifies the ASCII text name of the string. This name is used with the GTSTRG subroutine to retrieve the string.

String Field that specifies the string values.

Page 193: SimXpert R3.2 Motion Workspace Guide

167System Elements and Data ElementsString

3. Enter the value of the string. Be aware to avoid using the comma (,), semicolon (;), ampersand (&), and exclamation point (!) as they have other solver functions.

4. Click OK to create the string.

Page 194: SimXpert R3.2 Motion Workspace Guide

Array168

ArrayAn Array is a list of input variables, state variables, output variables, and initial conditions associated with system elements, such as general state equations, linear state equations, and transfer functions. You can also use general arrays to define lists of constants. You can access the values in function expressions or user-written subroutines.

Application:

There are five types of arrays:

1. (1) General/ (2) Initial Conditions - Define an array of constants used as initial conditions for a system element or user-written subroutine.

2. (3) States (X) and (4) Outputs (Y) - Designate the state or output variable arrays for a system element, such as a linear state equation, general state equation, or transfer function. Adams/Solver computes these values during a simulation.

To use the arrays, you reference them in function expressions. You can reference the array as the state or output variable array of only one system element in a model (for example, only one linear state equation or one general state equation).

3. (5) Inputs (U) - An array that groups together a set of variables used to define the inputs for a system element. Motion should compute variable values from the specified variable data elements.

The inputs (U) and the initial conditions arrays can exist independently, and do not need to be referenced by another system element.

Page 195: SimXpert R3.2 Motion Workspace Guide

169System Elements and Data ElementsArray

Array Sizing

Description of Fields:

For arrays used in: The array size is:

Linear state equation (LSE)

States (X) array size must be the same size as the row dimension of the matrix used to define the state transition matrix for the linear system.

Outputs (Y) size must be the same size as the row dimension of the matrix used to define the output matrix for the linear system or the matrix used to define the feed forward matrix for the linear system.

Transfer functions (TFSISO)

States (X) size is determined by the transformation from polynomial ratio type to canonical state-space form, which is a set of coupled, linear, constant-coefficient differential equations and a single algebraic equation.

Outputs (Y) size is always 1.

General state equations (GSE)

States (X) size is the same as the number defined in the matching general state equation definition.

Outputs (Y) size is the same as the number of output equations, as defined in the same general state equation definition.

Field Description

Name Name of the array.

ValuesTable of array values. Rows may be added using the “+” icon to the right of the table to make the array any size.

Page 196: SimXpert R3.2 Motion Workspace Guide

Array170

Sample form:

To create an array:1. From the Data Elements toolbox, select Array.

2. Enter a name for the array.

3. Adjust the size of the array table using the “+” and “-” icons.

4. Enter values for the array.

5. Click OK to create the array.

Page 197: SimXpert R3.2 Motion Workspace Guide

171System Elements and Data ElementsCurve

CurveThe Motion Curve object allows users to manually define a curve without any geometric reference. This allows creation of point-curve and curve-curve constraints without imported geometry.

Application:

The Motion Curve object allows users to create point-curve and curve-curve constraints without imported geometry. Motion Curves can be referenced by the Point-Curve and Curve-Curve objects.

Description of Fields:

Field Description

Name Specifies user entered name for curve. Populated with Curve_# by default.

Coordinate System

Field which specifies the coordinate system that defines the location and reference part for the curve to be created. An icon is available to select the model origin, which is the default.

Closed

Checkbox that specifies that the curve meets at the ends. If you specify CURVE_POINTS, the motion solver attempts to compute a curve that meets at the ends and has continuous first and second derivatives across the closure. If you specify FUNCTION, you must ensure that the defined curve meets at the ends and has continuous first and second derivatives across the closure. If the curve is closed, the first and last control or curve points must be the same. During a simulation, the motion solver moves a PTCV or CVCV contact point across the closure, if necessary.

MethodDrop-down that allows selection between user entered values, user subroutine, and matrix files as a method to define the curve. The default method is user entered values.

Page 198: SimXpert R3.2 Motion Workspace Guide

Curve172

Curve: User Entered Values

Curve: User Subroutine

Field Description

Curve PointsCheckbox that indicates the matrix below contains data points that lie on the curve. Cleared by default.

Order

Field which specifies the order of the b-spline interpolating the curve. The order is 1 plus the degree of the functions used to define the spline. The order also affects the number of points used to determine each spline segment. For example, splines of order 2 are basically polylines, while the segments used to create an spline of order 4 are of the 3rd order. 4 is the default order of splines, which is a cubic b-spline. The order must be greater than or equal to 2, and the default value is 4.

Curve MatrixTable of data that defines the curve in all three dimensions. Rows may be added to or removed from the matrix using the + and - icons. Four rows are present by default.

Field Description

ParametersField that specifies parameters for the user-written subroutine CURSUB. Enter the user function using the following format where r1 through r30 are constants passed to the subroutine: r1, ..., r30

RoutineField that specifies an existing user subroutine. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Maximum Enter the maximum value of the curve parameter for a user-written curve.

Minimum Enter the minimum value of the curve parameter for a user-written curve.

Page 199: SimXpert R3.2 Motion Workspace Guide

173System Elements and Data ElementsCurve

Curve: Matrix File

Sample form:

Field Description

Curve PointsCheckbox that indicates the matrix file contains data points that lie on the curve. Cleared by default.

Order

Field which specifies the order of the b-spline interpolating the curve. The order is 1 plus the degree of the functions used to define the spline. The order also affects the number of points used to determine each spline segment. For example, splines of order 2 are basically polylines, while the segments used to create an spline of order 4 are of the 3rd order. 4 is the default order of splines, which is a cubic b-spline. The order must be greater than or equal to 2, and the default value is 4.

Matrix FileField that selects the name of the file containing the matrix values. Icons are available to browse to a different directory, and to edit an existing file.

Matrix NameEnter the name of the matrix in the file. The name of the matrix is necessary even if the file contains only one matrix. You will need to create additional matrices to read other matrices from the same file.

Page 200: SimXpert R3.2 Motion Workspace Guide

Curve174

To create a curve:1. From the Data Elements toolbox, select Curve.

2. Enter a name for the curve.

3. Select a coordinate system in which the curve will be defined.

4. Select a method to define the curve from User Entered Values, User Subroutine, or Matrix File.

5. Enter points or select a matrix or subroutine and enter parameters to be passed to it.

6. Click OK to create the curve.

Page 201: SimXpert R3.2 Motion Workspace Guide

175System Elements and Data ElementsSpline

SplineThe SPLINE statement defines discrete data that ADAMS/Solver (C++) interpolates using the AKISPL and CUBSPL function expressions and the AKISPL and CUBSPL data-access subroutines. A SPLINE statement provides one or two independent variables and one dependent variable for each data point you supply.

Application:

ADAMS/Solver (C++) applies curve-fitting techniques that interpolate between data points to create a continuous function. If the SPLINE data has one independent variable, ADAMS/Solver (C++) uses a cubic polynomial to interpolate between points. If the SPLINE data has two independent variables, ADAMS/Solver (C++) uses a cubic method to interpolate between points of the first independent variable, and then uses a linear method to interpolate between curves of the second independent variable.

Page 202: SimXpert R3.2 Motion Workspace Guide

Spline176

Description of Fields:

Sample form:

To create a string:1. From the Data Elements toolbox, select Spline.

2. Enter a name for the spline.

Field Description

Name Field that specifies an ASCII text name for the spline.

Method

Option button to specify the method for entering/editing spline data.

Entered Data:

Displays a properties button that launches the curve editor tool to enter and display spline data.

File:

Select an ASCII [.txt, .dat] file that contains the desired spline data. Icons are available to browse to another directory or edit the text file.

Linear Extrapolation

Checkbox that enables linear extrapolation for the spline data. Cleared by default.

Page 203: SimXpert R3.2 Motion Workspace Guide

177System Elements and Data ElementsSpline

3. Select a method to define the spline data. Available options are Entered Data (via the Spline Editor) or File (via accessing an external file).

4. Enter the data or select the file and file type to define the spline.

5. Click the checkbox to enable extrapolation if desired.

6. Click OK to create the spline.

Page 204: SimXpert R3.2 Motion Workspace Guide

Spline178

Page 205: SimXpert R3.2 Motion Workspace Guide

177Instrumentation

Instrumentation

Page 206: SimXpert R3.2 Motion Workspace Guide

Overview178

OverviewThe contents of the Instrumentation toolbar allow users of the SimXpert Motion Workspace to request specific output from a simulation and to trigger events based on the current status of a simulation or the configuration of its parts. These allow users to interact with the simulation based upon its results.

Page 207: SimXpert R3.2 Motion Workspace Guide

179InstrumentationRequest

RequestRequests allow users to create their own measurements. Quantities may be measured between two coordinate systems and reported in a reference coordinate system.

Application

Various types of request are available, including displacement, velocity, acceleration, force, user defined, and user subroutine. Examples are measuring locations and orientations of one part with respect to another, measuring relative velocity between 2 coordinate systems, and measuring forces between coordinates systems.

Description of Fields

Field Description

Name Specifies name of the request object. Populated with Request_# by default.

Type Specifies type of request object. Displacement is the default.

DisplacementMeasures displacement between two user selected coordinate systems in a reference coordinate system.

VelocityMeasures velocity of one user selected coordinate system relative to another in a reference coordinate system.

AccelerationMeasures acceleration of one user selected coordinate system relative to another in a reference coordinate system.

ForceMeasures force between two user selected coordinate systems in a reference coordinate system.

User DefinedAllows the user to specify multiple components of the request using expressions. See User Defined Form Entries below.

Runtime Subroutine

Allows the user to select an existing subroutine and specify parameters to be passed to it. Units may be selected or defined for each output component from the subroutine. See Runtime Subroutine Form Entries below.

Coordinate System 1The first coordinate system that defines the request measurement reference location. Enabled for all types except User Defined.

Coordinate System 2The second coordinate system that defines the request measurement reference location. Enabled for all types except User Defined.

Reference Coordinate System

The reference coordinate system for the request measurement. Enabled for all types except User Defined.

Page 208: SimXpert R3.2 Motion Workspace Guide

Request180

User Defined Form Entries

Field Description

Component Table that allows the user to specify an arbitrary number of components for a request. This table is visible only for User Defined Request types.

NameSpecifies the name for the request component. Must be solver compliant, standard ASCII text, no spaces or special characters.

Unit TypeOffers the option of selecting a type of unit from a drop down list. User defined is an available option as well, which makes the Units field editable.

Units

Displays the unit of the selected unit type in the current set of units. The list updates based on session units. So if the session units are MMKS, only MMKS units appear in the list. If the user switches to English units (in, lbs, etc.), the unit field updates to that set of units.

ExpressionDisplays the expression for the request component. You may either type the request expression or use the Function Expression Builder to assist you in its creation. You may verify each component expression individually.

+Icon to the right of the table that adds another row to the table to add another component to the request.

-Icon to the right of the table that removes a selected row from the table, removing that component from the request.

Page 209: SimXpert R3.2 Motion Workspace Guide

181InstrumentationRequest

Runtime Subroutine Form Entries

Sample Form

To create a request:1. From the Instrumentation toolbox, select Request.

Field Description

Parameters Field that specifies a list of parameters to be passed to the selected subroutine to define the request.

Routine Field that specifies an existing subroutine. Users enter library name and routine name, with specific syntax: library_name::routine_name. Example abgFDM::fie910

Component Table that allows the user to select units for the number of components defined by a subroutine. This table visible only for Runtime Subroutine Request types.

NameSpecifies the name for the request component. Must be solver compliant, standard ASCII text, no spaces or special characters.

Unit TypeOffers the option of selecting a type of unit from a drop down list. User defined is an available option as well, which makes the Units field editable.

Units

Displays the unit of the selected unit type in the current set of units. The list updates based on session units. So if the session units are MMKS, only MMKS units appear in the list. If the user switches to English units (in, lbs, etc.), the unit field updates to that set of units. Field is read only unless the Unit Type is set to User Defined.

Page 210: SimXpert R3.2 Motion Workspace Guide

Request182

2. Enter a name for the request.

3. Select the type of request, which specifies the quantity to be measured. User defined and subroutine options are available for more advanced measures.

4. Select the two coordinate systems between which the selected quantity will be measured.

5. Select a reference coordinate system in which the results will be measured.

6. Click OK to create the request.

Page 211: SimXpert R3.2 Motion Workspace Guide

183InstrumentationSensor

SensorThe SENSOR statement is used to modify the simulation when a user-defined event occurs during run-time. The event is defined by a logical expression which compares an expression to a target value. If the logical expression becomes true during the simulation, the sensor modifies the simulation by various means which are selected by the user under the Actions tab of the property editor form.

Application

The SENSOR statement defines a user-defined event that affects a set of simulation controls when the event occurs. The event is defined by a logical expression that compares a function expression (or evaluation of a user-written subroutine) to a target value using a relational operator. If the logical expression becomes true during the simulation, the sensor modifies a set of simulation controls, which include output and integration step sizes, simulation end time, and the Jacobian pivot sequence. A sensor can also output diagnostic information and store the value of a function expression for later recall.

ADAMS/Solver (C++) evaluates the logical expression after every successful integration step when doing dynamic analysis and after every successful output step when doing other types of analyses. To define the function, use a function expression or a user-written subroutine. User-written subroutines and utility subroutines discuss the subroutines they can access.

When using the default search algorithm in ADAMS/Solver (C++), the SENSOR function must be continuous. The secant-type search algorithm is inaccurate and time consuming when the function is discontinuous. For that reason, functions of time or displacements work best for sensors; functions of velocities, accelerations, and forces are less desirable.

Description of Fields

Page 212: SimXpert R3.2 Motion Workspace Guide

Sensor184

Definition Tab:

Actions Tab

Field Description

Set EvaluationCheckbox that enables evaluation of an expression or subroutine when the event that the sensor is monitoring becomes true.

Method Specifies method for evaluation between run time expression and user subroutine.

ExpressionSpecifies run time expression to be evaluated when sensor is triggered. The launch function expression builder icon is available to assist in defining the expression.

ParametersSpecifies parameters to be passed to selected user subroutine when the sensor is triggered. Enabled only if the method is set to User Subroutine.

RoutineField that selects a user subroutine to be evaluated when the event the sensor is monitoring becomes true. Enabled only if the method is set to User Subroutine.

ValuesOption button that selects between angular and non-angular values for defining the sensor.

Type

Drop-down that selects the range when the sensor will be triggered. The options are:

Equal to Value: From (Target - Error) to (Target + Error). This is the default.

Greater than or Equal to Value: Greater than or equal to (Target - Error).

Less than or Equal to Value: Less than or equal to (Target + Error).

Value Field that specifies user entered value for the target value that triggers an action

Error ToleranceField that specifies the absolute value of allowable error between the targeted value and the actual sensed value. Default =0.001

Page 213: SimXpert R3.2 Motion Workspace Guide

185InstrumentationSensor

Standard::

Field Description

Generate Additional Output Step

Checkbox that creates an extra output step when the motion solver triggers the sensor so the simulation captures the action. Cleared by default.

Set Output Step Size

Checkbox and field that redefine the time between consecutive output steps. The motion solver uses this value until it is changed. The default step size is the current time between output steps for the simulation. If checked, a numeric field becomes active to specify the output step size. Cleared by default.

Terminate current simulation step

Checkbox and option button that terminates current simulation step and does one of the following:

Stop simulation script - Stop the simulation

Continue simulation script - Stop the current command in the simulation script and continue with the next command.

Cleared by default.

Page 214: SimXpert R3.2 Motion Workspace Guide

Sensor186

Special:

Field Description

Set integration Step Size

Checkbox that redefines the next integration step size. This change is temporary and lasts only for the next solution step. The default is an integrator-determined value except when you've included restarting the integrator as part of the sensor action as explained next. In this case, the step size defaults to the integrator step size.

If checked, a numeric field becomes active to specify the integration step size. Cleared by default.

Restart Integrator

Checkbox that restarts integration and reduces the integration order to one. If you also set integration step size as explained above, the motion solver reinitializes the integration step size to the specified value. If you do not specify the step size, the solver reinitializes the integration step size to the integrator's default step size. Cleared by default.

Refactorize Jacobian

Checkbox that causes the motion solver to generate a new pivot sequence for matrix factorization. This can help the integrator produce more accurate data or proceed more robustly through the simulation. The motion solver generates a pivot sequence for matrix factorization before starting the simulation. It does not generate a new pivot sequence unless you specify to refactorize the Jacobian or it is necessary to refactorize to reach convergence. Cleared by default.

Dump State Variable Vector

Checkbox that when checked writes the entire array of state variable values to a text file in your current working directory. Cleared by default.

Bisection Search Algorithm

Checkbox that specifies that a bisection search algorithm will be used to isolate the activation time of the sensor. When not present the default, secant-type root-finding algorithm is used. Cleared by default.

Set temporal errorCheckbox and field that specify the temporal error with which the activation time of the sensor is isolated. By default the TERROR condition is not enforced.

Page 215: SimXpert R3.2 Motion Workspace Guide

187InstrumentationSensor

Sample forms

Definition Tab:

Page 216: SimXpert R3.2 Motion Workspace Guide

Sensor188

Actions Tab:

To create a sensor:1. From the Instrumentation toolbox, select Sensor.

2. Enter a name for the sensor.

3. Select a method to define the sensor. Expression and User Subroutine are the available options.

4. Optionally check the Set Evaluation checkbox and define an evaluation method.

5. Enter an equality type, value, and error tolerance for the target of the sensor.

6. Click on the actions tab and select actions to take place when the definition value is reached.

7. Click OK to create the sensor.

Page 217: SimXpert R3.2 Motion Workspace Guide

189InstrumentationHeight Sensor

Height SensorThe height sensor object reports the minimum distance of a point on a geometric body above a roadway. The sensor also reports the components of distance in a user specified coordinate system, as well as the relative velocity of the geometric point relative to the 3D road.

Application

The height sensor is applicable as part of the transportation functionality of the motion workspace and works closely with the Tire and Road functionality. Using the position of the geometric point on a body, the height sensor request subroutine calls the 3D road routines and iterates towards the road point with the minimum distance to the body point. The user subroutine returns the minimum distance as well as components of the distance vector in a specified coordinate frame. The relative velocity is calculated in a similar manner and also reported in the specified coordinate frame.

Description of Fields

Page 218: SimXpert R3.2 Motion Workspace Guide

Height Sensor190

Definition Tab:

Field Description

NameSpecifies name of the height sensor. Automatically populated with HeightSensor_#.

Part

Specifies motion part on which a point’s position will be measured relative to a 3D road. This field is read-only if Coordinate System option has been selected for location, and the selected Coordinate System does not belong to ground.

Define Location Using

Allows selection of the method to define location of the point to be measured.

Geometry

Allows selection of geometric point locations, such as a vertex, center point of a circular edge, or center of a sphere. If geometry filters are active, they will affect the default types of picks that can be made. If multiple locations are selected, this option will average the locations to determine a single location.

Hardpoint Allows selection of an individual hardpoint to be used as the location.

Custom Allows the direct entry of X, Y, and Z coordinates of a position.

Coordinate System

Allows selection of a coordinate system origin to be used as the location.

Center of Mass Location

Allows selection of a part’s center of mass as the location.

Reference CSReference coordinate system for the sensor in which distance and relative velocity values will be output.

Road Specifies an existing 3D road model to which the height will be measured.

Page 219: SimXpert R3.2 Motion Workspace Guide

191InstrumentationHeight Sensor

Sample form

Definition Tab:

To create a height sensor:1. From the Instrumentation tab, select Height Sensor.

2. Enter a name for the sensor.

3. Select a Part for which the sensor will measure the height above the roadway.

4. Select a method to define the location. This defines the exact location on the selected part that will be measured to.

5. Select a reference coordinate system for the measurement to be reported in.

6. Select an existing road model to measure the height of the part above.

7. Click OK to create the height sensor.

Page 220: SimXpert R3.2 Motion Workspace Guide

Select Results192

Select ResultsThe Select Results form allows users to select a subset of calculated results quantities and export them to a .csv file during the simulation. The .csv file will have a header line with all the entity names, and then subsequent lines for data at each timestep. Time will always be included as an initial column.

Application

This feature is applicable when the user wishes to export CSV file during simulation for selected results of interest. Once generated, this file may be useful for 3rd party post-processing on generic formats and for archival purposes.

Description of Fields

Field Description

Name Specifies name of the table. Automatically populated with Output_Table_#.

Time IntervalSpecifies interval between output. Available options are at each output step, each integration step, or at custom defined points in the simulation.

Decimal PlacesSpecifies Number of decimal places to right of decimal point. Must be greater than or equal to 2, and the default value is 4.

Format

Specifies the numerical format of output data. The options are:

Scientific Ex: 1.543E+01 and

General Ex: 15.43

The default is Scientific.

IdentifierThe ASCII text for identifier used to construct file name. Is same as object name by default. Duplicate identifier strings (if model as more than one Output Report) are not accepted. Non- ASCII text is not accepted.

ObjectTable of objects and their respective result data to be included in the output file. For each output quantity user selects a motion object which has output, and a result quantity.

Result Quantity Result quantity to be reported for the corresponding object.

Page 221: SimXpert R3.2 Motion Workspace Guide

193InstrumentationSelect Results

Sample form

To create an output table:1. From the Instrumentation toolbox, select Output Table.

2. Enter a name for the table.

3. Select a time interval for the output. Output Step, Integration Step, and Custom are the available options.

4. Select the number of decimal places to be included for the output data.

5. Select a format for the output data between scientific and general.

6. Select motion object(s) for which to report output.

7. Select available result quantities to be reported for each object.

8. Click OK to create the table. The output will be generated when the simulation is ran.

Page 222: SimXpert R3.2 Motion Workspace Guide

Max Min194

Max MinThe Max Min form allows users to generate an ASCII report file containing a table of maximums and minimums and associated time points for a selected list of parameters ('Set A'). For an additional set of selected parameters ('Set B') that are a subset of 'Set A', it reports out in the same file, the associated values at the time of the maximum/minimum ('Set C'). These parameters, 'Set C' are specific to the 'Set B' parameter.

Application

This feature is applicable when the user wishes to export an ASCII text file during simulation for selected maximum and minimum results of interest.

Description of Fields

Field Description

NameSpecifies name of the text output table. Automatically populated with Select_Results_#.

Time IntervalSpecifies interval between output. Available options are at each output step, each integration step, or at custom defined points in the simulation.

IdentifierUnique identifier for the max min report. Populated with the report name by default. Duplicate identifier strings (if model as more than one Output Report) are not accepted. Non- ASCII text is not accepted.

Format

Specifies the numerical format of output data. The options are:

Scientific Ex: 1.543E+01 and

General Ex: 15.43

The default is Scientific.

Decimal PlacesSpecifies Number of decimal places to right of decimal point. Must be greater than or equal to 2, and the default value is 4.

Max/Min QuantitiesTable of objects and their respective result data to be included in the output file. For each output quantity user selects a motion object which has output, and a result quantity.

Associated QuantityAdditional result quantity to be reported for the corresponding maximum or minimum.

Page 223: SimXpert R3.2 Motion Workspace Guide

195InstrumentationMax Min

Sample form

To create max min output:1. From the Instrumentation tab, select Max Min.

2. Enter a name for the report.

3. Select a time interval for the output. Output Step, Integration Step, and Custom are the available options.

4. Select the number of decimal places to be included for the output data.

5. Select a format for the output data between scientific and general.

6. Select motion object(s) for which to report output.

7. Select available result quantities to be reported for each object.

8. Click OK to create the report. The output will be generated when the simulation is ran.

Page 224: SimXpert R3.2 Motion Workspace Guide

2D Envelope196

2D EnvelopeThe 2D Envelope form allows users to generate a .csv file containing a summary of data that provides a 2-dimension envelope, or convex hull, of the selected pairs('Set A') when the pairs are plotted against one another for each simulation. For an additional set of selected parameters (Set B), it reports out in the same file, their associated values at the time the 2D Envelope points occur.

Application

This feature is applicable to find out the convex hull (or the envelope) inside which all the points would lie when the XAxis and YAxis data are plotted on a graph.

For example, suppose you have chosen Fz for a Gear in XAxis and Fx for YAxis. That would mean that the envelope object would plot a graph by plotting Fz along XAxis and Fx along YAxis and then find out the convex hull (the dotted curve pointed to by the red arrow below) of the resulting curve (the darker curve below).

Note that the darker curve is completely inside the dotted curve (they have some overlapping boundary points). And that's why the dotted curve is the hull or envelope of the darker curve. Our envelope object is intended to find out the points on the hull or the dotted curve only. These points would be a subset of the points on the darker curve and in certain cases may be the same as the darker curve (for example if the darker curve is a straight line or circle or a polygon then its hull will be identical to itself).

Since we are interested in the points on the hull only, the resulting points may not be in a increasing order with respect to time.

Also note that since the hull is an curve which encloses the darker curve completely, it ends on the same point where it started.

Page 225: SimXpert R3.2 Motion Workspace Guide

197Instrumentation2D Envelope

Multiple

The input for multiple determines which time step output will be used for the envelope plot. For example, if you have chosen a multiple of 2 and chosen 20 time steps for your simulation, the TwoDEnvelope would take the data for 0th, 2nd, 4th, 6th, 8th, 10th, 12th, 14th, 16th, 18th output steps and calculate the hull for those data. The output hull would be a subset of these output steps' data.

Had you chosen a multiple of 3 and 20 time steps the input for the TwoDEnvelope would be 0th, 3rd, 6th, 9th, 12th, 15th, 18th output steps' data.

Had you chosen a multiple of 4 and 20 time steps the input for the TwoDEnvelope would be 0th, 4th, 8th, 12th, 16th output steps' data.

When you increase the multiple the number of input points for the TwoDEnvelope decreases, but that does not mean that the number of output hull points would decrease proportionately.

Description of Fields

Field Description

NameSpecifies name of the text output table. Automatically populated with TwoDEnvelope_#.

Time IntervalSpecifies interval between output. Available options are at each output step, each integration step, or at custom defined points in the simulation.

IdentifierUnique identifier for the max min report. Populated with the report name by default. Duplicate identifier strings (if model as more than one Output Report) are not accepted. Non- ASCII text is not accepted.

Format

Specifies the numerical format of output data. The options are:

Scientific Ex: 1.543E+01 and

General Ex: 15.43

The default is Scientific.

Decimal PlacesSpecifies Number of decimal places to right of decimal point. Must be greater than or equal to 2, and the default value is 4.

ObjectTable of objects and their respective result data to be included in the output file. For each output quantity user selects a motion object which has output, and a result quantity.

Associated QuantitiesAdditional result quantity to be reported for the corresponding maximum or minimum.

Page 226: SimXpert R3.2 Motion Workspace Guide

2D Envelope198

Sample form

To create a 2D envelope report:1. From the Instrumentation toolbox, select 2D Envelope.

2. Enter a name for the report.

3. Select a time interval for the output. Output Step, Integration Step, and Custom are the available options.

4. Select the number of decimal places to be included for the output data.

5. Select a format for the output data between scientific and general.

6. Select motion objects for the X and Y axis for which to report output.

7. Select available result quantities to be reported for each object.

8. Optionally select associated quantities to be reported for each object.

9. Click OK to create the report. The output will be generated when the simulation is ran. The envelope can be plotted by reading in the CSV file generated for the TwoDEnvelope object.

Page 227: SimXpert R3.2 Motion Workspace Guide

191Simulation

Simulation

Page 228: SimXpert R3.2 Motion Workspace Guide

Simulation Types192

Simulation TypesYou may choose from three solution types as you submit a simulation. The four available types are static, quasi-static, transient, and dynamic. A transient simulation instructs the solver to run a kinematic analysis if the system has zero degrees of freedom or a dynamic analysis if the system has one or more degrees of freedom, and is the default in SImXpert motion.

Static

In a static simulation, the system has more than 0 degrees of freedom and is solved to find a static equilibrium point. All system velocities and accelerations are set to zero.

Quasi-Static

In a quasi-static simulation, a sequence of static simulations are performed for different configurations of the model. Typically, static equilibrium is computed at fixed time intervals throughout a prescribed motion for a model.

Kinematic

A kinematic analysis solves for the displacements, velocities, accelerations, and forces (if any) at a series of points in time. A kinematic analysis is only appropriate when a system has zero degrees of freedom.

Dynamic

In a dynamic simulation, the system has more than 0 degrees of freedom and is driven by external forces and excitations. Nonlinear differential and algebraic equations are solved.

Page 229: SimXpert R3.2 Motion Workspace Guide

193SimulationSimulation Properties

Simulation Properties The simulation properties form is accessible from the simulation toolbox in SimXpert. It may also be accessed from the tree for an existing simulation.

Before submitting a simulation, this form allows you to specify the end time of a simulation, the number of steps, and the simulation type. The simulation controls section contains tools for verifying the model prior to simulation and submitting the simulation.

During a simulation, the form displays the current time and current step, as well as the estimated time remaining.

Description of Fields

Field Description

Name Allows you to specify a unique name for each simulation.

Simulation Type Includes options for running a dynamic, quasi-static, or static simulation.

Start at Static Equilibrium

Check box that if selected has a quasi-static or dynamic solution begin from the static equilibrium solution.

End Time Sets the end time and therefore the length of a simulation

Steps Sets the number of steps for a simulation. Used with the end time to determine the time interval of each step.

Auto Verify Checkbox that toggles the automatic verification of the model before running a simulation.

Debug Eprint Prints a block of information for each kinematic, static, or dynamic step. This information helps you monitor the simulation process and locate the source of the error if there is a problem.

Animate While Simulating

Checkbox that toggles display of anumation during a simulation. Options for the animation are controlled under the Animation Tab.

Hide When Finished Check box that if selected will close the simulation form once the simulation has been completed.

Verify Model Checks for error conditions in the model

Simulation Preferences Opens the Simulation Preferences Dialog box to define Dynamics, Equilibrium, and Initial Conditions Simulation Parameters for the simulation.

Begin Model Simulation Starts the computation of a simulation

Stop Simulation Stops the in progress simulation

Page 230: SimXpert R3.2 Motion Workspace Guide

Simulation Properties194

Sample Form

To set up a simulation:1. Select Simulation from the Simulation toolbox or right click on an existing simulation and select

properties.

2. If desired, you may enter a unique simulation name.

3. Select the desired simulation type.

4. If you want the simulation to begin from a static equilibrium, select the Start at Static Equilibrium check box.

5. Enter the desired end time and number of steps.

6. Click on the verify model button to check for error conditions in the model.

7. Click the begin model simulation button to submit the simulation.

8. Monitor the status of the simulation as it progresses. If the Animate While Simulating checkbox is checked the model will animate while the simulation progresses.

Page 231: SimXpert R3.2 Motion Workspace Guide

195Gravity

Gravity

Page 232: SimXpert R3.2 Motion Workspace Guide

Gravity196

GravityThe properties form for the gravity item in the tree allows you to define gravity for the model. You can specify the magnitude and direction of the acceleration of gravity.

Application

You may specify a positive or negative direction along any of the global axes, or you may specify a unique direction. Unique directions may be necessary if the model is oriented such that gravity acts in a direction other than one of the global axes, as in the case of a car on a banked track.

The magnitude may be modified to any desired value to accommodate situations with non-standard gravitational acceleration. This could be useful in accounting for variations in gravitational acceleration with altitude or modeling situations where the model is subject to some other constant acceleration.

For each part with mass, the gravitational force produces a point force at its center of mass.

Description of Fields

Field Description

Active Check box that elects whether gravity is enabled for the model. Selected by default.

Direction Direction in which gravitational acceleration will act. Available options include the positive and negative directions along each axis, as well as a custom option which allows you to enter components of gravity along each axis.

Magnitude Allows you to specify the magnitude of the gravitational acceleration. If the custom direction option is chosen, the magnitude will be calculated as the resultant of the acceleration in each axis direction.

Defaults Resets all gravity fields to their default values.

Page 233: SimXpert R3.2 Motion Workspace Guide

197GravityGravity

Sample Form

To modify gravity properties:1. Right click on the Gravity object in the tree and select Properties.

2. If you want to disable gravity, you may clear the Active check box.

3. Choose a direction in which gravity will act. You may choose from the positive or negative direction along any axis, or select Custom to define another direction.

4. If you chose to select a custom direction, enter the components of gravity in each axis direction. The resultant magnitude will be calculated for you.

5. If you selected an axis direction, you may modify the magnitude of the acceleration using the magnitude field.

6. Click OK to modify the gravity properties.

Page 234: SimXpert R3.2 Motion Workspace Guide

Gravity198

Page 235: SimXpert R3.2 Motion Workspace Guide

199Simulation Preferences

Simulation Preferences

Page 236: SimXpert R3.2 Motion Workspace Guide

Overview200

OverviewThe simulation preferences form allows you to control how the solver operates. This form is divided into four sections: Dynamics, Equilibrium, Initial Conditions, and Contact.

Page 237: SimXpert R3.2 Motion Workspace Guide

201Simulation PreferencesDynamics

DynamicsThe dynamics tab located under simulation preferences allows you to specify parameters that affect the integrator and dynamic solution of the model. The form is separated into two groups: Integrator and Integration Parameters.

Integrator Group

The integrator is an algorithm that solves the differential equations of motion over an interval of time during a dynamic simulation. SimXpert lets you select from the GSTIFF (Gear Stiff) and WSTIFF (Modified Gear) integrators when you customize how the solver solves equations of motion. The default is the GSTIFF integrator.

• GSTIFF is based on the DIFSUB integrator. GSTIFF is the most widely-used and tested integrator in SimXpert. It is a variable-order, variable-step and multi-step integrator with a maximum integration order of six. The BDF coefficients it uses are calculated by assuming that the step size of the model is mostly constant. Thus, when the step size changes in this integrator, a small error is introduced in the solution.

• WSTIFF is a stiffly stable, BDF-based, variable-order, variable-step, multi-step integrator. It has a maximum order of six. The BDF coefficients it uses are a function of the integrator step size. Thus, when the step size changes in this integrator, the BDF coefficients change. WSTIFF can change step size without any loss of accuracy, which helps problems run more smoothly.

Next, you may select the type of formulation used by the solver. The available options are I3, SI2, and SI1. The default formulation is I3.

The corrector entry specifies the corrector algorithm that is to be used with the stiff integrators. Original and Modified correctors are available, as described below:

• Original - Specifies that the corrector available in the previous releases of the solver be used. This is the default. This implementation of the corrector requires that at convergence, the error in all solution variables be less than the corrector error tolerance.

• Modified - Specifies that a modified corrector is to be used. This implementation of the corrector requires that at convergence, the error in only those variables for which integration error is being monitored, be less than the corrector error tolerance. This is a slightly looser definition of convergence, and you should use proper care when using this. The modified corrector is helpful for models containing discontinuities in the forcing functions. Problems with contacts belong in this category.

Finally, you may set Interpolate to Yes when you don't want the integrator to control the integration step-size to precisely hit an output step. The integrator might then overshoot an output point and in this case an interpolation algorithm will provide an approximation of the solution at the output point. This approximation is then refined to provide for the consistent solution at the output point. The default for Interpolate is No.

Page 238: SimXpert R3.2 Motion Workspace Guide

Dynamics202

Integration Parameters Group

The error field allows you to specify the relative and absolute local integration error tolerances that the integrator must satisfy at each step.

The initial step size allows you to enter the initial time step that the integrator attempts. The default is 1/20 of the output step.

For the maximum step size, enter the maximum time step that the integrator is allowed to take. When setting the Interpolate option, the integration step size is limited to the value that is specified for HMAX. If HMAX is not defined, no limit is placed on the integration step size. If you do not set the Interpolate option, the maximum step size is limited to the output step.

The minimum step size specifies the minimum time step that the integrator is allowed to take.

Under maximum iterations, enter the maximum number of iterations allowed for the Newton-Raphson iterations to converge to the solution of the nonlinear equations.

For the integration order, specify the maximum order that the integrator can use. The order of integration refers to the order of the polynomials used in the solution. The integrator controls the order of the integration and the step size, and, therefore, controls the local integration error at each step so that it is less than the error tolerance specified.

The pattern field indicates the pattern of trues and falses for reevaluating the Jacobian matrix for Newton-Raphson.

• A value of true (T) indicates that the solver is evaluating a new Jacobian matrix for that iteration. A value of false (such as PATTERN=F) turns on the adaptive Jacobian evaluation algorithm. The evaluation of the integration Jacobian is then only done when needed. The algorithm determines a corrector convergence speed and based on this value, it extrapolates the configuration of the system after MAXIT iterations. The Jacobian is updated if the algorithm indicates that the convergence rate is too slow for the corrector to meet the convergence criteria. Overall, this approach is expected to result in fewer Jacobian evaluations, which in turn can lead to shorter simulation times.

Page 239: SimXpert R3.2 Motion Workspace Guide

203Simulation PreferencesDynamics

PATTERN accepts a sequence of at least one character string and not more than 10 character strings. Each string must be either TRUE or FALSE, which you can abbreviate with T or F. You must separate the strings with colons.

Field Description

Error The relative and absolute local integration error tolerances that the integrator must satisfy at each step.

Initial Step Size HINITRange: 0 < HMIN <= HINIT <= HMAX

Maximum Step Size HMAXRange: 0 < HMIN <= HINIT <= HMAX

Minimum Step Size Default:1.0E-6*HMAX Range: 0 < HMIN <= HINIT <= HMAX

Maximum Iterations MAXITDefault: 10 Range: MAXIT > 0

Integration Order KMAXDefault: 6 Range: 1 <= KMAX <= 6

Pattern Default: T:F:F:F:T:F:F:F:T:F

Page 240: SimXpert R3.2 Motion Workspace Guide

Equilibrium204

EquilibriumThe equilibrium tab located under simulation preferences allows you to specify parameters that affect the equilibrium solution of the model.

The error field specifies the relative correction convergence threshold. The iterative process carried out during the equilibrium analysis can not converge prior to all relevant relative corrections being smaller than this value.

The translational limit specifies the maximum translational increment allowed per iteration during static simulations.

The angular limit specifies the maximum angular increment allowed per iteration.

The maximum iterations field specifies the maximum number of iterations allowed for finding static equilibriums.

The stability field specifies the fraction of the mass and damping matrices the solver adds to the stiffness matrix. Adding a fraction of the mass and damping matrices to the stiffness matrix can stabilize the iteration process and prevent the iteration from diverging.

The imbalance field specifies the equation imbalance convergence threshold. The iterative process carried out during the equilibrium analysis can not converge prior to each equation imbalance being smaller than this value.

The pattern field allows you to specify as many as ten character strings that together establish the pattern for evaluating the Jacobian matrix during the modified Newton-Raphson iteration. For each iteration, T or TRUE indicates that the solver evaluates the Jacobian and F or FALSE indicates that the solver does not evaluate the Jacobian. Thus, cj determines whether or not the solver evaluates the Jacobian at the jth iteration. If necessary, the solver repeats the pattern of evaluations until it reaches the maximum number of iterations (MAXIT). The number of Ts or TRUEs and Fs or FALSEs together must be at least one and no more than ten.

Field Description

Error ERRORDefault: 1.0E-04 Range: ERROR > 0

Translational Limit TLIMITDefault: 20 Range: TLIMIT > 0

Angular Limit ALIMITDefault: 10D Range: ALIMIT > 0

Page 241: SimXpert R3.2 Motion Workspace Guide

205Simulation PreferencesEquilibrium

Maximum Iterations MAXITDefault: 25 Range: MAXIT > 0

Stability Default: 1.0E-05Range: Stability >= 0

Imbalance Default: 0Range: Imbalance > 0

Pattern Default: T:T:T:T:T:T:T:T:T:TWhich evaluates the Jacobian at every iteration (for example, the unmodified Newton-Raphson algorithm).

Field Description

Page 242: SimXpert R3.2 Motion Workspace Guide

Initial Conditions206

Initial ConditionsThe initial conditions tab located under simulation preferences allows you to specify parameters that affect the initial condition solution of the model.

The Error field allows you to specify the maximum displacement error the solver is to allow for the assembly process.

The translational limit field allows you to specify the maximum translational increment the solver is to allow while testing trial solutions during a solution step.

The angular limit field allows you to specify the maximum angular increment the solver is to allow while testing trial solutions for a set of consistent initial conditions that satisfy all system constraints. The default units for ALIMIT are radians. To specify ALIMIT in degrees, add a D after the value.

Under maximum iterations, you may specify the maximum number of iterations the solver is to allow for finding displacements during initial conditions, or when reconciling displacement output.

The max acceleration error field allows you to specify the maximum acceleration error the solver is to allow during an initial conditions solution or for reconciling acceleration output.

The max acceleration iterations field allows you to specify the maximum number of iterations the solver is to allow for finding accelerations during an initial conditions solution or for reconciling acceleration output.

The pattern fields specify as many as ten character strings that together establish the pattern for evaluating the Jacobian matrix during the modified Newton-Raphson solution for the displacements and accelerations. For each iteration, T or TRUE indicates that the solver is to evaluate the Jacobian, and F or FALSE indicates that the solver is not to evaluate the Jacobian. Thus, cj determines whether or not the solver is to evaluate the Jacobian at the jth iteration. If necessary, the solver repeats the pattern of evaluation until it reaches the maximum number of iterations (MAXIT for displacements or AMAXIT for accelerations). The number of T's or TRUE's and F's or FALSE's together must be at least one and no more than 10.

Field Description

Error ERRORDefault: 1.0E-10 Range: ERROR > 0

Translational Limit TLIMITDefault: 1.0E10 (no limit) Range: TLIMIT > 0

Angular Limit ALIMITDefault: 30D Range: ALIMIT > 0

Maximum Iterations MAXITDefault: 25 Range: MAXIT > 0

Page 243: SimXpert R3.2 Motion Workspace Guide

207Simulation PreferencesInitial Conditions

Max Acceleration Error AERRORDefault: 1.0E-4 Range: AERROR > 0

Max Acceleration Iterations

AMAXITDefault: 25 Range: AMAXIT > 0

Acceleration Pattern Default: T:T:T:T:T:T:T:T:T:TWhich means the solver is evaluating the Jacobian at every iteration.

Pattern Default: T:T:T:T:T:T:T:T:T:TWhich means the solver is evaluating the Jacobian at every iteration.

Field Description

Page 244: SimXpert R3.2 Motion Workspace Guide

Contacts208

ContactsThe contacts tab located under simulation preferences allows you specify how surfaces of solid parts will be represented in order to model contact.

Faceting is the process of approximating the surface of an object by a mesh of triangles. All polygon-based geometry engines used faceted representations of surfaces. The default value Faceting Tolerances is 300. Increasing this value will result in a finer mesh of triangles, which gives a more accurate representation of surfaces, which are curved. Increasing the tolerance, however, also increases the memory requirements of the geometry engine and adds to the computational overhead, which makes it run slower. Setting the faceting tolerance to values greater than 1000 is not recommended. Values smaller than 300 will give negligible performance improvements. The faceting tolerance has no effect on inherently polygonal surfaces such as boxes. You have a slider bar to adjust the current value between the lower and upper limits.

Field Description

Current Value Current value for faceting tolerance.Default: 300

Lower Limit The lower limit for the faceting tolerance in the slider bar.Default: 300

Upper Limit The upper limit for the faceting tolerance in the slider bar.Default:1000

Page 245: SimXpert R3.2 Motion Workspace Guide

209Results

Results

Page 246: SimXpert R3.2 Motion Workspace Guide

Overview210

OverviewSimXpert has the capability to display results quantities in animations and charts. You may specify quantities to be displayed and modify the appearance of the results output as shown below. You may also transfer loading results to the structures workspace to perform additional analysis.

Page 247: SimXpert R3.2 Motion Workspace Guide

211ResultsAnimation

AnimationYou may animate the results of a simulation using the Animation property editor, which is accessible from the Results toolbox. You may specify key parameters for the animation, including which simulation is to be animated, the start and end times, as well as looping options. You may record the animation to generate an MPEG movie file that may be replayed outside of SimXpert. Additional options are available to control tracking of objects in the animation. If you are animating a model with flexible bodies, the Plot Data, Deform, and Fringe sections of the Animation form allow you to plot additional result data.

Description of Fields:

Field Description

Reset Button that rewinds the animation to the first frame.

Pause Button that pauses the animation at the current frame.

Play Button that plays animation forward at one frame/time step at a time

Record Button that will cause the animation to be recorded when played.

Results Set Drop down menu shows a list of result sets that have been created from motion simulations and allows you to choose one for the current animation.

Current Slider bar that shows progress of the animation. You may slide the bar to any position in the frame set. The arrows at each end advance or rewind the animation in single frame increments.

Time Displays the time of the current frame in the animation. May also be used to enter a specific time for which to display the animation.

Frame Displays the frame number of the animation at the current time.

Start Time Field that specifies the start time for the animation. Value entered must be within the time range of the chosen simulation.

Set to Current Button that sets the start time to the currently displayed time of the animation.

End Time Field that specifies the end time for the animation. Value entered must be within the time range of the chosen simulation.

Set to Current Button that sets the end time to the currently displayed time of the animation.

Loop Drop down that selects the loop function to repeat the animation replay. Default setting is Forever.

Forever Animation will continue to run start to finish and then repeat until stopped.

Once Animation will run through one complete cycle and stop.

Oscillate Once

Animation will run from start to end, then run in reverse back to the start point and stop.

Oscillate Forever

Animation will run from start to end, then run in reverse back to the start point and repeat until stopped.

Speed Slider bar that adjusts the speed at which the animation is played.

Page 248: SimXpert R3.2 Motion Workspace Guide

Animation212

Sample Form

To create an animation:1. Make sure that you have successfully completed a Simulation.

2. Select Animation from the Results toolbox.

3. Under Results Set, select the simulation that you wish to animate.

4. Enter your desired start and end time.

5. Select the loop option. This defines what will happen once the animation has finished the selected time range of the simulation.

6. If you wish to save an MPEG file of the animation, click the record button. Additional recording options may be set under the Record tab.

7. Click the Play Animation button to start the animation (and recording if selected).

8. While the Animation is playing, you may pause it using the Pause Animation button.

9. Click the Reset Animation button to reset the animation back to the first frame.

10. Optionally select the Camera tab to define the object tracking. Select the Follow Object option and click in the Follow Object field and select a part for the animation to follow. Select the Animation tab and click the Play Animation button to play the animation following the part.

11. For a flexible body simulation, use the Plot Data tab to detemine which results quantities will be displayed in a fringe plot during the animation. The Deform and Frimnge tabs provide additional flexible results visualization options.

Page 249: SimXpert R3.2 Motion Workspace Guide

213ResultsCharting

ChartingYou may plot result quantities as graphs using the Chart editor, which is accessible from the Results toolbox. You may select time or a result quantity for the independent axis and result quantities for the dependent axis. You may plot any available result quantities for any entity in the model. You are limited to one independent axis but you may have up to two different dependent axes, each with units that automatically correspond to the units for the curves being plotted.

Description of Fields

Field Description

Dependent Data Form Entries

Chart Name Specifies a name for the chart.

Simulations Selects the simulation to chart from the simulations available in the model.

Entity Selects the part within the model for which to chart data.

Quantity Selects the result quantity of the particular part to be charted.

Auto Update Check box that allows curves to be added to the chart and the prior data cleared automatically as soon as new data is selected. Cleared by default.

Page 250: SimXpert R3.2 Motion Workspace Guide

Charting214

Add Curves Adds the curve for the selected data to the current chart. Multiple curves may be added to the same chart by selecting the desired data for each and then clicking Add Curves.

Clear Chart Clears all curves from the current chart.

Update Curves Updates the curves on the current chart using data from a later run of the same simulation but the same entity and quantity.

Independent Data Form Entries

Time Checkbox that selects time as the independent axis. Checked by default.

Simulations Selects the simulation to chart from the simulations available in the model.

Entity Selects the part within the model for which to chart data.

Quantity Selects the result quantity of the particular part to be used as the independent axis.

Field Description

Page 251: SimXpert R3.2 Motion Workspace Guide

215ResultsCharting

Sample Forms

To create a chart:1. Make sure that you have successfully completed a Simulation.

2. Select Chart from the Results toolbox.

3. In the Dependent Data Browser, select the simulation from which to chart data.

4. Select the Entity for which to chart data.

5. Select the Quantity to plot for the selected entity.

6. Click Add Curves to plot the selected result quantity versus time.

7. Select any additional entities and quantities to plot and click Add Curves again.

Page 252: SimXpert R3.2 Motion Workspace Guide

Charting216

8. To clear the charting window, click Clear Chart.

9. Click on the Independent Data Browser and deactivate the Time checkbox.

10. Select the Simulation, Entity, and Quantity to be the independent variable.

11. Return to the Dependent Data Browser and select the dependent variable as before.

12. Click Add Curves.

13. To automatically clear the chart and add selected curves, check the Auto update checkbox.

14. You may further edit the chart by using the XY Chart Properties, Chart Legend, Chart Grids, and Chart Titles properties tabs on the Chart Properties form.

Page 253: SimXpert R3.2 Motion Workspace Guide

217ResultsLoad Transfer

Load TransferYou may export the loading results from a particular simulation to the structures workspace. This is accomplished by using the Load Transfer section of the part property editor after a simulation has been completed. You may select a time frame and interval over which to export the loading.

Description of Fields:

Sample Form:

To transfer loads:1. Complete a simulation.

2. Open the part property editor for the part on which you want to transfer loads.

3. Select the Transfer Loads section of the property editor. Specify the desired results set, start time, end time, and interval for load transfer.

4. Select the Loads section of the property editor. Specify load bearing geometry for each connection on the part.

Field Description

Results Set Specifies results set to be used for quasi-static load transfer.

Start TimeSpecifies start time for loads to be transferred. Time must be within the range of the selected results set.

End TimeSpecifies end time for loads to be transferred. Time must be within the range of the selected results set.

IntervalOutput interval for load transfer. Within the selected range, transfer loads will be calculated at this interval.

Transfer Button that begins the load transfer process with the specified parameters.

Page 254: SimXpert R3.2 Motion Workspace Guide

Load Transfer218

5. Click the Transfer button to export the loads to the Structures workspace.

Page 255: SimXpert R3.2 Motion Workspace Guide

219Example Simulation

Example Simulation

Page 256: SimXpert R3.2 Motion Workspace Guide

Overview220

OverviewThis example shows the simulation of a piston and cylinder assembly subject to specific motion. The example covers many simulation topics, including importing geometry, creating hardpoints, creating various types of joints, and imposing motion. By following the steps below, you may complete a sample simulation and learn the key aspects of motion simulation.

Page 257: SimXpert R3.2 Motion Workspace Guide

221Example SimulationPiston and Cylinder Assembly

Piston and Cylinder Assembly1. Enter the Motion Workspace.

2. Import the connecting rod geometry.

File / Import / Parasolid.

Select the file from the SimXpert installation directory: \WINNT\plugins\MSC\Motion\examples\geometry\motion_tutorial_102\conrod.x_t

Click Open.

3. Create the connecting rod part.

Components / Part.

Enter “conrod” as the part Name.

Click in the Geometry field and select the imported connecting rod geometry from the canvas.

Click OK.

4. Import the crankshaft geometry.

File / Import / Parasolid.

Select the file from the SimXpert installation directory: \WINNT\plugins\MSC\Motion\examples\geometry\motion_tutorial_102\crankshaft.x_t

Click Open.

5. Create the crankshaft part.

Components / Part.

Enter “crankshaft” as the part Name.

Click in the Geometry field and select the imported crankshaft geometry from the canvas.

Click OK.

6. Import the piston geometry.

File / Import / Parasolid.

Select the file from the SimXpert installation directory: \WINNT\plugins\MSC\Motion\examples\geometry\motion_tutorial_102\piston.x_t

Click Open.

7. Create the piston part.

Components / Part.

Enter “piston” as the part Name.

Click in the Geometry field and select the imported piston geometry from the canvas.

Click OK.

8. Import the engine block geometry.

File / Import / Parasolid.

Page 258: SimXpert R3.2 Motion Workspace Guide

Piston and Cylinder Assembly222

Select the file from the SimXpert installation directory: \WINNT\plugins\MSC\Motion\examples\geometry\motion_tutorial_102\engineblock.x_t

Click Open.

9. Create the engine block part.

Components / Part.

Enter “engineblock” as the part Name.

Select the Ground checkbox.

Click in the Geometry field and select the imported engine block geometry from the canvas.

Click OK.

10. Create a hard point.

Components / Hardpoint.

Enter “CrankPivotHP” as the hardpoint Name.

Select Single.

Enter value for X location: -0.3965

Enter value for Y location: -0.30225

Enter value for Z location: 0.314

Click OK.

11. Create another hard point.

Components / Hardpoint.

Enter “CrankToRodHP” as the hardpoint Name.

Select Single.

Enter value for X location: -0.4765

Enter value for Y location: -0.30225

Enter value for Z location: 0.314

Click OK.

12. Create another hard point.

Components / Hardpoint.

Enter “RodToPistonHP” as the hardpoint Name.

Select Single.

Enter value for X location: -0.3965

Enter value for Y location: -0.108

Enter value for Z location: 0.314

Click OK.

13. Create another hard point.

Page 259: SimXpert R3.2 Motion Workspace Guide

223Example SimulationPiston and Cylinder Assembly

Components / Hardpoint.

Enter “PistonSlideHP” as the hardpoint Name.

Select Single.

Enter value for X location: -0.3965

Enter value for Y location: 0

Enter value for Z location: 0.314

Click OK.

14. Create a cylindrical joint.

Connections / Cylindrical.

Enter “CrankPivot” as the Connector name.

Click in the Part1 field and select crankshaft from the tree.

Click in the Part2 field and select engineblock from the tree.

Select Define Location Using Hardpoint.

Click in the Hardpoint field and select CrankPivotHP from the tree.

Select Global under Define Orientation Using.

Click OK.

15. Create a spherical joint.

Connections / Spherical.

Enter “CrankToRod” as the Connector name.

Click in the Part1 field and select crankshaft from the tree.

Click in the Part2 field and select conrod from the tree.

Select Define Location Using Hardpoint.

Click in the Hardpoint field and select CrankToRodHP from the tree.

Click OK.

16. Create a revolute joint.

Connections / Revolute.

Enter “RodToPiston” as the Connector name.

Click in the Part1 field and select conrod from the tree.

Click in the Part2 field and select piston from the tree.

Select Define Location Using Hardpoint.

Click in the Hardpoint field and select RodToPistonHP from the tree.

Select Global under Define Orientation Using.

Click OK.

17. Create a translational joint.

Page 260: SimXpert R3.2 Motion Workspace Guide

Piston and Cylinder Assembly224

Connections / Translational.

Enter “PistonSlide” as the Connector name.

Click in the Part1 field and select piston from the tree.

Click in the Part2 field and select engineblock from the tree.

Select Define Location Using Hardpoint.

Click in the Hardpoint field and select PistonSlideHP from the tree.

Select User Specified under Define Orientation Using.

Enter value for the Rotation 1 Euler angle: 0

Enter value for the Rotation 2 Euler angle: 90

Enter value for the Rotation 3 Euler angle: 0

Click OK.

18. Create a motion.

Motions / Add Motion.

Enter Motion_1 for the name.

Click in the Joint Name field and select CrankPivot from the tree.

Select Rotate Z as the Freedom.

Select Displacement as the Motion Type.

Select Step as the Function Type.

Enter 0 as the Initial Value.

Enter 14400 as the Final Value.

Enter 0 as the Start Step Time.

Enter 8 as the End Step Time.

19. Perform the Simulation.

Simulation / Simulation.

Enter 4 as the End Time.

Enter 400 as the Number of Steps.

Click the Begin Model Simulation icon.

20. Once the simulation has completed, view an animation of the results.

Results / Animation.

Click the Play Animation button.

21. Chart the position of the piston versus time.

Results / Chart.

Select the simulation that you completed earlier.

Select piston as the Entity.

Page 261: SimXpert R3.2 Motion Workspace Guide

225Example SimulationPiston and Cylinder Assembly

Select Y as the Quantity.

Click Add Curves. This plots the Y position of the piston versus time.

22. Chart the Y position of the conrod versus its X position.

Results / Chart

Click Clear Chart.

Select the Independent Data Browser.

Clear the checkbox for Time.

Select the simulation.

Select conrod as the Entity.

Select X as the Quantity.

Select the Dependent Data Browser.

Select conrod as the Entity.

Select Y as the Quantity.

Click Add Curves. This plots the path of the center of mass of the conrod during the simulation.

Page 262: SimXpert R3.2 Motion Workspace Guide

Piston and Cylinder Assembly226