Adams Basic Package > Adams View > View Command Language > constraint > constraint create motion_generator

constraint create motion_generator

Allows the creation of a motion generator in a model.

Format:

 
constraint create motion_generator
motion_name =
a new motion
adams_id =
geom._id
comments =
string
joint_name =
existing joint
type_of_freedom =
freedom type
i_marker_name =
existing marker
j_marker_name =
existing marker
axis =
motion_axes
function =
function
user_function =
real
time_derivative =
displacement/ velocity/ acceleration
displacement_ic =
length
velocity_ic =
velocity
rotational_displacement_ic =
angle
rotational_velocity_ic =
angular_velocity
Routine =
string

Example:

 
constraint create motion_generator &
motion_name =
ROT_MOTION &
joint_name =
JOINT_1 &
type_of_freedom =
rotational &
function =
time &
rotational_velocity_ic =
25.9 &
rotational_displacement_ic =
25.4
The above command will apply a rotational motion to the specified joint which is a function of time. Its rotational velocity would be 25.9 and its rotational displacement would be 25.4.

Description:

 
Parameter
Value Type
Description
motion_name
New Motion Name
Specifies the name of the new motion generator. You may use this name later to refer to this motion generator.
adams_id
Integer
Specifies an integer used to identify this element in the Adams data file.
Comments
String
Specifies comments for the object being created or modified.
joint_name
Existing Joint
Specifies the translational, revolute, or cylindrical joint associated with this entity. Some entities constrain motion at, or are otherwise associated with, specific joints. You use this parameter to identify that joint.
type_of_freedom
Translational/rotational
Specifies translational or a rotational motion if you attach this motion generator to a cylindrical joint.
i_marker_name
Existing Marker
Specify an existing I marker
j_marker_name
Existing Marker
Specify an existing J marker
axis
X/y/ Z/ B1/ B2/ B3
Allows you to create and modify additional axes on a plot to effect multiple axis plotting.
function
Function
Specifies an expression or defines and passes constants to a user-written subroutine to define the motion.
user_function
Real
Specifies up to 30 values for Adams to pass to a user-written subroutine.
Routine
String
 
time_derivative
Velocity/displacement/acceleration
Specifies that the FUNCTION argument defines the motion displacement, velocity, or acceleration.
displacement_ic
Length
Specifies the initial displacement of the motion, when the motion is defined in terms of velocity or acceleration.
velocity_ic
Velocity
Specifies the initial velocity of the motion, when the motion is defined in terms of acceleration.
rotational_displacement_ic
Angle
Specifies the rotational displacement.
rotational_velocity_ic
Real
Specifies the rotational velocity.

Extended Definition:

1. Adams View will not allow you to have two motion generators with the same full name, so you must provide a unique name.
Normally, entity names are composed of alphabetic, numeric, or '_' (underscore) characters, and start with an alphabetic or '_' character. They may be any length. For more information, see Using Extended Names.
By enclosing the name in double quotes, you may use other printable characters, or start the name with a numeral. If a name contains characters, or starts with a numeral, you must always quote the name when entering it.
Note that you can specify the parentage of an entity (for example, what part "owns" a marker or a geometry element) when you CREATE it by changing the name. If you enter just the entity name, then the default parent will be assigned by Adams View. If you type in the full name, then you may over ride the default parent. In most cases, when creating an entity, Adams View will provide a default name. The default name that Adams View provides will specify the parentage that it has assumed. You may, or course, delete this name and use your own. The form of a full name is:
"...._NAME.GRAND_PARENT_NAME.PARENT_NAME.ENTITY_NAME"
The number of levels used varies from case to case and the parentage must exist before an entity can be assigned to it.
2. When you use the FILE ADAMS_DATA_SET WRITE command, Adams View writes an Adams data file for your model. Adams requires that each modeling element be identified by a unique integer identifier. If you use this parameter to specify a non-zero identifier, Adams View will use it in the corresponding statement in the Adams data file.
You may also enter zero as an identifier, either explicitly or by default. The next time you write an Adams file, Adams View will replace the zero with a unique, internally-generated identifier. Adams View will permanently store this identifier with the element just as if you had entered it yourself.
Normally, you would let all identifiers default to zero, and Adams View would generate the identifiers for you. You are never required to enter a non-zero identifier. You only need to specify it if, for some reason, you wish to control the Adams file output.
3. You may identify a joint by typing its name or by picking it from the screen.
If the joint is not visible on the screen, you must type the name. You may also find it convenient to type the name even if the joint is displayed.
If you created the joint by reading an Adams data set or graphics file, the joint name is the letters JOI followed by the Adams data set joint ID number. The name of Adams JOINT/101 is JOI101, for example. If you created the joint during preprocessing, you gave it a name at that time.
If a joint is available by default, you may identify it by entering its name only. If it is not, you must enter its full name. To identify a joint under a model, for instance, you may need to enter the model name as well. For example, you may specify joint 'lower_pivot' in model 'links' by entering ".links.lower_pivot". If you type a "?", Adams View will list the joints available by default.
You must separate multiple joint names by commas.
If the joint is visible in one of your views, you may identify it by picking on any of the graphics associated with it.
You need not separate multiple joint picks by commas.
4. The “type_of_freedom” parameter is necessary only when you apply motion to a cylindrical joint. For a translational joint or a revolute joint, Adams assumes you want translational motion or rotational motion, respectively.
5. When you create a plot template, Adams View creates two axes by default, one horizontal and one vertical. These are the plot's primary axes which Adams View uses to perform cursor tracking and to draw the grid. The plot TEMPLATE commands also operate on the plot's primary axes.
Each axis consists of an axis line, tic marks, numbers and a label. Use the axis ATTRIBUTES to change visibility and color attributes for the axis entities.
To plot a curve against the new axes, specify the axis names when you create the curve.
You can make the new axes the plot's primary axes by modifying the plot's template and specifying the desired axes as the PRIMARY_HAXIS and PRIMARY_VAXIS. The grid will then reflect the divisions of the new axes and cursor tracking will reflect the new axes' coordinate system.
6. The motion must be a function of time only and not a function of the state variables.
Adams View treats this parameter as a series of literal strings. When you write an Adams data set, Adams View writes these strings, just as you enter them here, after the 'FUNCTION=' argument.
If you want to define the motion with an expression, enclose the expression in quotes and enter it just as you would in the data set. See the Adams User's Manual for information on writing function expressions. If your expression is longer than 65 characters, you should break it up into separate strings so it does not extend past the Adams 80-character line-length limit. Adams View will write each string on a separate line in the data set.
If you want to define the motion with a user-written subroutine, enter the character string "USER(r1[,...,r30])", where r1[,...,r30] are the values you want Adams to pass to your user-written subroutine MOTSUB. If you enter "USER(1.,2.,3.)", for instance, Adams will call your MOTSUB with values 1, 2, and 3. See the Adams User's Manual for more information on using MOTSUBs.
7. A MOTION_GENERATOR determines a translational or a rotational motion as a function of time. In Adams you can apply a motion to a translational, to a revolute, or to a cylindrical joint. You can define the motion with a FUNCTION expression or with a user-written subroutine.
You can assign a translational motion at either a translational or a cylindrical joint, and you can assign a rotational motion at either a revolute or a cylindrical joint. Adams uses the two markers that specify the joint to define the motion. In other words, Adams controls the rotational or the translational displacement of the I marker in the joint with respect to the J marker in the joint.
For a translational motion, Adams moves the I marker along the z-axis of the J marker. The J marker origin represents zero displacement, while the z-axis of the J marker defines the positive direction. For a rotational motion, Adams rotates the I marker about the z-axis of the J marker. Positive rotations are positive according to the right-hand rule. The z-axis of the I marker must be collinear with the z-axis of the J marker at all times. The angle is zero when the x-axis of the I marker is also collinear with the x-axis of the J marker.