MV-1000: Interactive Model Building and Simulation
In this tutorial, you will learn how to create a model of a four-bar trunk lid mechanism interactively through the MotionView graphical user interface, perform a kinematic analysis on the model using MotionSolve, and post-process the MotionSolve results in the animation and plot windows.
- Multi Body Dynamics (MBD)
- MBD is defined as the “study of dynamics of a system of interconnected bodies”. A mechanism (MBD system) constitutes a set of links (bodies) connected (constrained) with each other to perform a specified action under application of force or motion. The motion of mechanisms is defined by its kinematic behavior. The dynamic behavior of a mechanism results from the equilibrium of applied forces and the rate of the change of momentum.
- MBD Modeling
- A classical MBD formulation uses a rigid body modeling
approach to model a mechanism. A rigid body is defined as a body in
which deformation is negligible. In general, to solve an MBD problem,
the solver requires following information:
- Rigid body inertia and location.
- Connections – type, bodies involved, location, and orientation.
- Forces and motions – bodies involved, location, orientation, and value.
- Trunk-Lid Model
- The trunk-lid shown in the image below uses a four-bar mechanism for its
opening and closing motions.
Below is a schematic diagram of the mechanism:
The four links (bodies) in a four-bar mechanism are: Ground Body,
Follower, Coupler, and Input Link. In this example, the Ground Body is
the car body and Input Link is the trunk-lid body. The remaining two
bodies (Follower and Coupler) form the part of the mechanism used to aid
the opening and closing of car trunk-lid. The following entities are needed to build this model:
- Points
- Bodies
- Constraints (Joints)
- Graphics
- Input (Motion or Force)
- Output
Create Points
In this step you will learn how to create points for your model.
Create Bodies
In this step, you will create the Input Link, Coupler, and Follower rigid-body links in the mechanism.
Create Revolute Joints
In this task you will learn how to create the joints necessary for this model.
Specify a Motion for the Mechanism
In this step you will learn how to add motion to your mechanism model.
Create Outputs
In this step, you will add a displacement output between two bodies using the default entities. You will also add another output to record the displacement of a particular point G on the input link relative to the global frame based on Expressions.
Add Graphic Primitives
In this step you will add graphics for visualization of the mechanism.
- Implicit Graphics
- The small icons that you see in the MotionView interface when you create entities like points, bodies, joints, and so on are called implicit graphics. These are provided only for guidance during the model building process and are not visible when animating simulations.
- Explicit Graphics
- These graphics are represented in form of a tessellation, are written to the solver deck and subsequently available in the results. Explicit graphics are of two types.
- Primitive Graphics
- These graphics help in better visualization of the model and are also visible in the animation. The various types of Primitive Graphics in MotionView are Cylinder, Box, Sphere, and so on.
- External Graphics
- You can import in various CAD formats or HyperMesh files into MotionView. The ‘Import CAD or FE using HyperMesh..’ utility in MotionView can be used to convert a CAD model or a HyperMesh model to h3d graphic format which can be imported into MotionView. One can also import .g, ADAMS View .shl and wavefront .obj files directly into MotionView.
MotionView allows you to turn on and off implicit graphics for some of the commonly used modeling entities
Add External Graphics and Convert a HyperMesh File to an H3D File.
In this step you will use this conversion utility to convert a HyperMesh file of a car trunk lid into the H3D format.
Attach H3D Object to the Input Link and Ground Bodies
In this step, you will attach the trunk lid H3D object to the input link and the trunk H3D object to Ground.
Solve the Model with MotionSolve
In this step, you will use MotionSolve to perform a kinematic simulation of the mechanism for a simulation time of 5 seconds, with a step size of 0.01 second.
View Animation and Plot Results on One Page
In this step you will learn to view your animation and plot result on the same page.
Save Your Work as a Session File
Here, you will learn to save your model as a session file.
Appendix
Evaluating Expressions in MotionView.
Math Parser | |
---|---|
A MotionView parser that evaluates a MotionView expression as real/integer/string for a field as appropriate | |
Real | This type of field can contain a real number or the parametric expression that
should evaluate to a real number. This type of field is found in Points, Bodies,
Force – Linear. Note that only the value of the expression as evaluated goes into
the solver deck and not the parametric equation. Example: p_a.x, b_0.mass |
String | This type of field can contain a string or a parametric expression that should
evaluate to a string. This type of field is found in entity such as DataSets with
strings as Datamember, SolverString etc. As in case of Linear field, only the value
of the expression as evaluated goes into the solver deck and not the parametric
expression. Example: b_inputlink.label |
Integer | This type of field can contain an integer or a parametric expression that evaluates to an integer. This type of field is found such as DataSets with an integer as Datamember. Even in this case, only the value of the expression as evaluated goes into the solver deck and not the parametric equation. |
Templex Parser | |
---|---|
A math program available in the application that can perform more complex programming than the math parser, other than evaluating a MotionView expression. The following type of fields in MotionView are evaluated by the templex parser that evaluates a parameterized expression: | |
Expressions | This type of field is different than the three listed above because it can
contain a combination of text and parametric expression. It is generally used to
define a solver function (or a function that is recognized by the solver). This type
of expression is embedded within back quotes ( ` ` ) and any
parametric reference is provided within curly braces {}. The presence of back quotes
suggests the math parser to pass the expression through Templex. Templexevaluates any
expression within curly braces while retaining the other text as is. For example in
the expression `
DX({b_inputlink.cm.idstring},{Global_Frame.idstring})` , the templex
evaluates the ID (as a string) of the cm of the Input link body (b_
inputlink) and that of marker Global Frame while retaining “DX” as is.
These fields are available in entity panels such as: Bushings, Motions, Forces with
properties that toggle to Expression, Independent variable for a curve input in
these entities, and Outputs of the type Expression. |