MotionView User's Guide

Constant Velocity Joint

Constant Velocity Joint

Previous topic Next topic Expand/collapse all hidden text  

Constant Velocity Joint

Previous topic Next topic JavaScript is required for expanding text JavaScript is required for the print function  

This section describes the Constant Velocity joint entity of MotionView and shows the various usage, creation, and editing methods.

Theory/Background

A Constant Velocity joint is a two degree-of-freedom constraint.  It constrains the rotation of a body (Body 1) about a specified axis to be equal to the rotation of the other body (Body 2) connected by the joint.  The axis of rotation is the Z axes of the markers defined on the connecting user defined bodies.

constant_velocity_joint_diagram_mv

Constant Velocity joint construction

Constant Velocity joints are widely used in drive shafts of vehicles with independent suspension.

Joint Definition

The Constant Velocity joint is represented using Markers when exported to an MBD Solver.  The representation can be visualized as shown in the figure below:

constant_velocity_joint_diagram_mv_ug

Constant Velocity joint marker representation

The bodies that are constrained by a Constant Velocity joint are represented using two markers: Marker I and Marker J. Marker I belongs to Body 1 and Marker J belongs to Body 2.  The constraints are applied on Marker I with respect to Marker J.  Both of the markers will have a common point of origin, which is the same as the joint’s Origin point.  The Z axis of the markers point in the direction of the shaft axes that they represent.

Entity Data Members

The topological information required to define an Constant Velocity joint is shown in the figure below:

constant_velocity_joint_diagram2_mv

The data members of the Constant Velocity Joint can be classified into the following members:

Connectivity

An Constant Velocity joint needs the following:

Body 1 and Body 2 - Specify two Bodies between which the joint is to be created.
Origin - Specify Point, which defines the location of the joint.
Axis1 and Axis2 - A Constant Velocity joint needs two axes to be specified for the constraint to be imposed.  This can be done by specifying a Point in the direction of the axes or by specifying a Vector.
Compliant Mode (Optional) - If the Allow Compliance option is selected while adding the joint to a model, the joint's compliance state can be toggled between Compliant and Non-Compliant.  If the joint is made Compliant, it no longer remains a rigid connection and the joint will then be treated as a bushing.

 

The joint can be modeled as a Single entity or as a Pair entity.

Properties

There are no editable properties for a Constant Velocity Joint.

Creating and Editing Joints

To learn how to add a Constant Velocity Joint to a model, please see the Joints topic.

hmtoggle_plus1To create/add a Constant Velocity Joint to a model:
1.Once an CV Joint has been added to the model using any of the "entity" creation methods, the panel for the joint will automatically be displayed in the panel area.  See the panel examples below:

constant_velocity_joint_panel_conn_tab_mv

Joints Panel (Constant Velocity Joint) – Connectivity Tab - Single Entity

constant_velocity_joint_panel_conn_tab_pair_mv

Joints Panel (Constant Velocity Joint) – Connectivity Tab - Pair Entity

2.The joint definition needs two bodies which are connected by the joint.  Select Body 1 by picking the body from the graphics area, or double click the Body 1 collector to open to the model tree (from which the desired body can be selected).
3.Similarly, pick Body 2 from the graphics area by clicking on the desired body (or use the collector and model tree).
4.Select the Origin Point from the Project Browser, or the graphics area, to specify a location for the joint.
5.Specify the Axis 1 and Axis 2 for the joint using either of the methods listed below:
-Point – Select a point which lies along the shaft axis.
-Vector – Select a vector which defines the direction of orientation of the shaft axis.  If the Alignment axis for the joint is along any of the Global Axes, then the Global X, Y,or Z axis can be selected by clicking on the desired axis in the graphics area (or by browsing through the model tree).

alignment_axis_vector_example_mv

Note - The same steps as shown above can also be used to define Pair Constant Velocity Joint entities. When defining a Pair Constant Velocity Joint use pair entities for Body 1, Body 2, Origin, etc.

hmtoggle_plus1To edit or change the definition of a Joint entity:
1.Left click the Joints panel icon entityJoints-24 on the Constraint toolbar.

The Project Browser will filter the entities and display only the Joints in the model.

2.Select the desired joint in the Project Browser.

The corresponding panel is automatically displayed.

3.From the Connectivity tab, use the Joint type drop-down menu to change the joint type, or use the collectors to change the bodies and origins/alignment points of the joint.

constant_velocity_joint_drop_down_menu_mv_ug

Joints panel - Connectivity tab - joint type drop-down menu

Constant Velocity Joint in MDL and XML Formats

The model containing the Constant Velocity joint can be saved in MDL format from MotionView and exported in the MotionSolve XML format.

hmtoggle_plus1Constant Velocity Joint in MDL (Model Definition Language)

The Constant Velocity joint can be of the following types:

1.Non-Compliant - Single and Pair
2.Compliant – Single and Pair

These four types of entities can be added to the model using the MDL Statements shown below:

Syntax:

*CVJoint(joint_name, "joint_label",  body_1,

                                    body_2,

                                    origin,

                                    POINT|VECTOR,

                                    point_1|vector_1,

                                    POINT|VECTOR,

                                    point_2|vector_2,

                                    [ALLOW_COMPLIANCE])

To understand the complete syntax of the MDL statement please refer to the *CVJoint topic.

Syntax:

*CVJointPair(joint_name, "joint_label", body_1,

                                       body_2,

                                       origin,

                                       POINT|VECTOR,

                                       point_1|vector_1,

                                       POINT|VECTOR,

                                       point_2|vector_2,

                                       [ALLOW_COMPLIANCE])

To understand the complete syntax of this MDL statement please refer to the *CVJointPair topic.

To learn how to create a complete model using MDL Statements please refer to tutorial MV-1060: Introduction to MDL.

hmtoggle_plus1Constant Velocity Joint in XML Format

The CV Joint when exported to the MotionSolve XML format is defined as a Constraint_Joint statement.

Syntax:

<Constraint_Joint

   id             =     "integer"

   label          =     "Name of Joint"

   type           =     "JOINT TYPE"

   i_marker_id    =     "integer"

   j_marker_id    =     "integer"

/>

Example:

<Constraint_Joint

  id                  = "301001"

  label               = "Cylinder Velocity Joint"

  type                = "CONSTANT_VELOCITY"

  i_marker_id         = "30103050"

  j_marker_id         = "30101050"

/>

In the above XML Model statement the i_marker_id and j_marker_id represent the I and J markers of the Joint which belong to Body 1 and Body 2 respectively.  To understand the complete syntax of the Constraint_Joint XML model statement, please refer to the MotionSolve Reference Guide Page for Constraint_Joint.

Creating and Editing Constant Velocity Joints using Tcl

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:

hmtoggle_arrow1InterpretEntity

Syntax:

mdlmodel_handle InterpretEntity new_handle keyword varname label

Example:

mdlmodel_handle InterpretEntity CVJt_handle CVJoint j_CVjt "\"Constant Velocity Joint\"" b_1 B_Ground p_ori "POINT" p_1 "VECTOR" "V_Global_Z" "ALLOW_COMPLIANCE";

hmtoggle_arrow1InterpretSet

*This command is not applicable for Constant Velocity joint entities.

The InterpretEntity command is used to add entities to the model and the InterpretSet command is used to set the entity properties (which is not applicable for this type of joint).   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.

Example Model

The example file below shows a Constant Velocity joint connecting two bodies:

hmtoggle_plus1Constant VelocityJoint.mdl

*BeginMDL( the_model, "Model", )

 *StandardInclude(FILE)

 *Point( p_0, "Single Joint Origin" )

 *PointPair( p_1, "Pair Joint Origin" )

 *Body( b_0, "Single Body 1", p_0, , , ,  )

 *BodyPair( b_1, "Pair Body 1", p_1, , , ,  )

//Constant Velocity joint definition

 *CVJoint( j_CVjsingle, "CV Joint Single", b_0, B_Ground, p_0, POINT, p_1.l, POINT, p_1.r )

//Constant Velocity joint pair definition

 *CVJointPair( j_CVjpair, "CV Joint pair", b_1, B_Ground, p_1, VECTOR, V_Global_Z, VECTOR, V_Global_X )

 *SetPoint( p_1, LEFT, , -100 )

*EndMDL()

See Also:

Joints Panel

Adding and Removing Entities

*CVJoint (MDL Model Statement)

*CVJointPair (MDL Model Statement)

Constraint_Joint (XML Command)

InterpretEntity (Tcl Command)

InterpretSet (Tcl Command)