MotionView User's Guide

Atpoint Joint

Atpoint Joint

Previous topic Next topic Expand/collapse all hidden text  

Atpoint Joint

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

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

Theory/Background

An Atpoint joint is a three degree-of-freedom kinematic pair used in mechanisms.  This joint is identical to the Ball joint.  Atpoint joints provide three-axis rotation function.

atpoint_joint_diagram_mv

Atpoint joint construction

Joint Definition

The Atpoint joint is represented using co-incident markers when exported to MBD Solver.  The representation can be visualized as shown in the figure below:

atpoint_joint_marker_representation_mv_ug

Atpoint joint marker representation

The bodies that are constrained by the Atpoint 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 the Marker I with respect to the Marker J.  Both of the markers will have a common point of origin, the same as the Joint’s Origin point.  The I Marker is free to rotate about the X, Y and Z axis of the J Marker.

Entity Data Members

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

at_point_joint_diagram2

The data members of the Atpoint joint can be classified into the following members:

Connectivity

An Atpoint joint needs the following:

Body 1 and Body 2 - Specify two Bodies between which the joint is to be created.
Origin - Specify a Point, which defines the location of the joint.
Compliant Mode (Optional) - If the Allow Compliance option is selected while adding the joint to the model, the joint’s compliance state can be toggled between Compliant and Non-Compliant.

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

Properties

There are no editable properties for an Atpoint joint.

Creating and Editing Joints

To learn how to add an Atpoint joint to a model, please see the Joints topic.

hmtoggle_plus1To create/add an Atpoint joint to a model:
1.Once an Atpoint 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 and available for editing.  See the panel examples below:

at_point_joint_conn_tab_single_entity_mv

Joints Panel (Atpoint Joint) – Connectivity Tab – Single Entity

at_point_joint_conn_tab_pair_entity_mv

Joints Panel (AtPoint Joint) – Connectivity Tab – Pair Entity

2.The joint definition needs two bodies which are connected by the joint.  From the Connectivity tab, 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 point of Origin from the Project Browser, or the graphics area, to specify a location for the joint.
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 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.

atpoint_joint_type_drop_down_menu_mv_ug

Atpoint Joint in MDL and XML Formats

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

hmtoggle_plus1Atpoint Joint in MDL (Model Definition Language)

The Atpoint 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:

*AtPointJoint(joint_name, "joint_label", body_1,

                                        body_2,

                                        origin,

                            [ALLOW_COMPLIANCE])

Example:

*AtPointJoint( j_single, "At Point JPRIM", b_sinb, B_Ground, p_sincg )

To understand the complete syntax of the MDL statement please refer to the *AtPointJoint() topic.

Syntax:

*AtPointJointPair(joint_name, "joint_label", body_1,

                                            body_2,

                                            origin,

                                [ALLOW_COMPLIANCE])

Example:

*AtPointJointPair( j_pair, "Pair At Point", b_pab, B_Ground, p_pacg )

To understand the complete syntax of this MDL statement please refer to the *AtPointJointPair() topic.

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

hmtoggle_plus1Atpoint Joint in XML Format

The Atpoint joint when exported to the MotionSolve XML format is defined as a Constraint_Joint or Constraint_Jprim statement.

Syntax:

<Constraint_Joint [Constraint_Jprim]

id  = "integer"

label = "Name of Joint"

type  =  "JOINT TYPE"

i_marker_id =  "integer"

j_marker_id = "integer"

/>

Example:

<Constraint_Joint [Constraint_Jprim]

id= "301001"

label = "AtPoint Joint"

type = "ATPOINT"

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 or Constraint_Jprim.

Creating an Atpoint Joint using the Tcl Command Layer

The MotionView Tcl command layer 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 joint_AtPoint_handle AtPointJoint j_AtPoint "\"AtPoint Joint\"" b_1 B_Ground p_0 "ALLOW_COMPLIANCE";

hmtoggle_arrow1InterpretSet

*This command is not applicable for Atpoint joint entities.

The InterpretEntity command is used to add entities to the model and the InterpretSet command is used to set the entity properties.  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 an Atpoint joint connecting two bodies:

hmtoggle_plus1AtPoint.mdl

*BeginMDL( the_model, "Model" )

 *StandardInclude(FILE)

 *Point( p_0, "Point 0" )

 *PointPair( p_1, "Point 1" )

 *SetPoint( p_1, LEFT, , -100 )

 *Body( b_0, "Body 0", p_0, , , ,  )

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

 *Set( b_0.usecm, true )

 *Set( b_1.usecm, true )

//Example - Single AtPoint Joint

 *AtPointJoint( j_apjsingle, "AtPoint Joint Single", b_0, B_Ground, p_0 )

//Example - AtPoint Joint Pair

 *AtPointJointPair( j_apjpair, "AtPoint Joint pair", b_1, B_Ground, p_1 )

*EndMDL()

See Also:

Joints Panel

Adding and Removing Entities

*AtPointJoint() (MDL Model Statement)

*AtPointJointPair() (MDL Model Statement)

Constraint_Joint (XML Command)

Constraint_Jprim (XML Command)

InterpretEntity (Tcl Command)

InterpretSet (Tcl Command)