This section describes the Beam entity of MotionView and shows the various usage, creation, and editing methods.
Beam entity defines a straight, massless beam of uniform cross section acting between two points (Point 1 and Point 2) that belong to two different bodies (Body 1 and Body 2). The mass of the bean is lumped at Point 1 and Point 2. The stiffness properties for the beam are derived using Timoshenko beam theory.
The beam axis is assumed to be along the x-axis of the Body 2 Reference Marker. The x-axis of the Body 2 Reference Marker is also defined to be the neutral axis of the un-deformed beam. The beam is assumed to undergo small rotational deflections; large rotations are not supported.
The topological information required to define an Beam is shown in the figure below:
The data members of a Beam can be classified into the following members:
A Beam needs the following:
The Beam can be modeled as a Single entity or as a Pair entity. |
The editable properties of a Beam are:
When specifying the properties for Pair beam entities the properties can be made symmetric or can be asymmetric. |
To learn how to add a Beam entity to a model, please see the Constraints topic.
To define a beam the Connectivity and Property data have to be defined and specified. Connectivity
Beam Panel – Connectivity Tab – Single Entity Beam Panel – Connectivity Tab – Pair Entities
Properties
The Properties of a Beam entity are:
Define Properties
Circular Cross Section
Figure 5: Properties Tab – Circular Beams
Rectangular Cross Section
Figure 6: Properties Tab – Rectangular Beam
Arbitrary Cross Section
Figure 7: Properties Tab – Arbitrary Cross Section Beam
Note - The same steps as shown above can also be used to define Pair Coupler entities. |
The Project Browser will filter the entities and display only the Couplers in the model.
The corresponding panel is automatically displayed.
|
The model containing the Beam can be saved in MDL format from MotionView and exported in the MotionSolve XML format.
A Beam entity can be completely defined in MDL format using the following statements:
These Beams can further be Single or Pair. Let us look at some examples below.
The Beam entity is defined using a *Beam statement and the properties of the beam are defined using *SetBeam statement. All of the types of entities mentioned above can be added to the model using the MDL Statements shown below:
Please refer to the *Coupler, *CouplerPair, *SetCoupler, and *SetCouplerPair topics for a detailed description of each MDL statement. Note: To learn how to create a complete model using MDL statements, please refer to tutorial MV-1060: Introduction to MDL. |
The Coupler when exported to the MotionSolve XML format is defined as a Constraint_Coupler statement. Syntax: <Constraint_Coupler id = "integer" label = "Coupler Entity Label" joint1_id = "integer" freedom_1 = { "T" | "R" } joint2_id = "integer" freedom_2 = { "T" | "R" } [ joint3_id = "integer" freedom_3 = { "T" | "R" } ] { coefficients = "double, double [, double]" | usrsub_dll_name = "valid_path_name" usrsub_param_string = "USER( [[par_1][, ...][, par_n]] )" usrsub_fnc_name = "custom_fnc_name" > | script_name = valid_path_name interpreter = "PYTHON" | "MATLAB" usrsub_param_string = "USER( [[par_1 [, ...][,par_n]] )" usrsub_fnc_name = "custom_fnc_name" > } </Constraint_Coupler> In case of a three joint Coupler with linear properties the model statement will be as shown below: <Constraint_Coupler id = "301002" label = "Three Joint Coupler" joint1_id = "301003" freedom_1 = "R" joint2_id = "301004" freedom_2 = "R" joint3_id = "301005" freedom_3 = "R" coefficients = "1. 1. 1.5" /> In case of a three joint Coupler with User-defined properties, the model statement will be as shown below: <Constraint_Coupler id = "101004" label = "Coupler Pair User-left" joint1_id = "101006" freedom_1 = "R" joint2_id = "101007" freedom_2 = "R" joint3_id = "101008" freedom_3 = "R" usrsub_param_string = "USER(301001,301003,25)" usrsub_dll_name = "C:/Models/COUSUB.dll" usrsub_der1_name = "COUXX" usrsub_der2_name = "COUXX2" /> To understand the complete syntax of the Constraint_JPRIM XML model statement, please refer to the MotionSolve Reference Guide Page for Constraint_Coupler. |
In MotionView, Tcl can be used to add any MDL entities to the model. There are two TCL commands that can be used to add an entity:
Syntax: mdlmodel_handle InterpretEntity new_handle keyword varname label In case of the Coupler the statement will look as shown below: mdlmodel_handle InterpretEntity joint Coupler c_jcoup "\"Two Joint Coupler\"" 2JOINT j_transjt j_RevJt "TRANS" "ROT" ; |
Syntax: mdlmodel_handle InterpretSet keyword tokens; In case of the Coupler the statement will look as shown below: mdlmodel_handle InterpretSet SetCoupler c_jcoup -0.9; |
The command InterpretEntity is used to add entities to the model and the command InterpretSet is used to set the entity properties. So in the case of the Coupler, the properties that can be set are the Joint Initial Conditions. Extended definitions for InterpretEntity and InterpretSet can be found in the HyperWorks Desktop Reference Guide.
Note - When using the InterpretEntity and InterpretSet commands, it is important to also use the Evaluate command in order for the changes to take effect immediately.
To learn how to create a complete model using Tcl commands, please refer to tutorial MV-1040: Model Building Using Tcl.
The following example files are available:
The example below shows a Coupler connecting two bodies:
|
See Also:
Coupler Panel
Adding Removing Entities
*Coupler (MDL Model Statement)
*CouplerPair (MDL Model Statement)
*SetCoupler (MDL Model Statement)
Constraint_Coupler (XML Command)
mdlIObject InterpretEntity (Tcl Command)
mdlIObject InterpretSet (Tcl Command)