CRASH-2300: Create a Seat Mechanism Using the Mechanism Browser

The goal of this tutorial is to create a seat mechanism.

The Mechanism Browser provides all functionalities to model a kinematic mechanism, for example a vehicle driver or passenger seat. All aspects needed to define a mechanism, articulate it into a desired position and export the final data are covered, such as:
  • Definition of the bodies: Identified by parts and/or part sets and/or node sets. During mechanism motion, each body behaves as a rigid body.
  • Definition of kinematic joints: A joint defines the relative kinematic behavior between two or three bodies. A joint defined inside the mechanism tool is independent from a joint available in the solver.
  • Mechanism check: A check is available in order to verify the validity of the defined mechanism (bodies/joints).
  • Move mechanism to target position: The mechanism can be automatically moved to a desired position by selecting a target node or by specifying the coordinates of the target node, for example, H-Point of a driver seat.
  • Save positions: Several defined positions of a mechanism can be saved and retrieved quickly.
  • Export “solver” positions: Each of the saved positions can be exported as a solver include file in which the positions of the bodies are defined via solver transformation cards.
  • Export mechanism: During solver input deck export the complete mechanism, as well as the defined positions, are embedded inside the solver deck and described after the end (*END for LS-DYNA; /END for Radioss).
Figure 1.


Model Description

The driver seat model used in this tutorial is based on the free Toyota Yaris model, provided by the National Crash Analysis Center (NCAC).

The LS-DYNA seat model as well as the Radioss model are available. This tutorial uses the Radioss version of the seat, but each step can be reproduced using the LS-DYNA model.

Before you begin, copy the file(s) used in this tutorial to your working directory.

Load the Radioss Profile

  1. From the Start menu, select Altair (version) > HyperMesh (version).
  2. Select HyperMesh under New Session and then select Radioss for the Profile.

Load the Model File

  1. From the menu bar, click File > Import > Solver Deck.
  2. Browse and select the example_seat_mechanism_0000.rad file.
  3. Click Open.
  4. In the Solver Import Options dialog, click Import.
    The model opens in the modeling window.

Open the Mechanism Browser

  1. From the Safety ribbon, click the Mechanism tool.
    Figure 2.


    The Mechanism Browser opens.
  2. Right-click and select Create > Mechanism > Manual.
    A mechanism named mechanism1 is created containing two empty bodies named body1 and body2.
    Figure 3.


  3. Rename mechanism1 to Driver_Seat.
    • Click mechanism1 to open the Entity Editor at the bottom of the browser and type in the Name.
    • Right-click mechanism1 > Rename in the browser.
    Figure 4.


    Figure 5.


Define the Bodies

For the definition of the bodies, it is necessary to know which parts or nodes belong to which kinematic assemblies. The definition of part or node sets can be done in the solver deck before starting to define the mechanism, or directly in the body Entity Editor below the Mechanism Browser. Below are the different ways you can define the content of a body inside the body Entity Editor.

  1. Select a list of components.
  2. Create a set of components- Card Image GRPART (for Radioss) in set Entity Editor.
  3. Create a set of nodes- Card Image GRNOD (for Radioss) in set Entity Editor.
    Note: It is recommended to use sets of parts or nodes, as these entities are directly defined and exported in the solver deck. A body can be defined by a combination of these three contents.

Create the Fix_Rail Body

  1. Inside the Mechanism Browser, select body1 to activate the Entity Editor.
    Figure 6.


  2. Change the name of body1 to Fix_Rail.
    This body is Fixed to ground which means that all degrees of freedom of this body are locked. The icon attached to this body inside the Mechanism Browser refers to this behavior.
  3. Inside the Entity Editor, right-click Sets > Create.
    A dialog opens.
  4. In the dialog, change the Name of the set to Fix_Rail_Parts and change the Card Image to GRPART.
    Figure 7.


  5. Click Entity IDs and then click the Components field.
  6. Select the components defining the Fix_Rail body by selecting them on the display or in the dialog.
    Figure 8.


  7. Click OK when you are done selecting the components and close the dialog.
  8. To review the body you created, right-click Fix_Rail > Review inside the Mechanism Browser.
    Figure 9.


  9. Deselect the Review option in the context menu to deactivate the review mode.

Create the Move_Rail Body

  1. Inside the Mechanism Browser, click body2 to activate the Entity Editor.
  2. Change the name of body2 to Move_Rail.
    This body is Fixed to ground which means that all degrees of freedom of this body are locked. The icon attached to this body inside the Mechanism Browser refers to this behavior.
  3. Inside the Entity Editor, right-click Sets > Create.
    A dialog opens.
  4. In the dialog, change the name of the set to Move_Rail_Parts and change the Card Image to GRPART.
  5. Click Entity IDs and then click the Components field.
  6. Select the components defining the Move_Rail body by selecting them on the display or in the dialog.
  7. Click OK when you are done selecting the components and close the dialog.
  8. To review the body you created right-click Move_Rail > Review inside the Mechanism Browser.
  9. Deselect the Review option in the context menu to deactivate the review mode.
    Figure 10. Move_Rail Body


    Note: The 1D parts modeling the spot-weld connections between the shell meshed parts and also the set of nodes containing the main nodes of the rigid bodies have to be taken into account in this body.

Create the Other Bodies

There are five more bodies to define: Roller, Front_Lever, Rear_Lever, Seat_Cushion and Back_Seat.

  1. To create a new body, right-click the mechanism and select Create > Body.
    For each of these bodies, the parts and nodes sets are already defined in the model.
  2. To define the content of each body, click Sets inside the body Entity Editor and retrieve the corresponding sets in the model set-list, for example Front_Lever_Parts and Front_Lever_Nodes sets for the Front_Lever body.
    Figure 11.


Create the Joints

Inside a mechanism bodies are connected together via kinematic joints. The different joints available are:
  • Ball: Joint having the three translational degrees of freedom (DOF) blocked. This joint is defined by the center coordinates or by a node.
  • Cylinder: Joint allowing a translation and a rotation around the same axis. This joint is defined by the axis (Origin+direction given by coordinates or node selection).
  • Revolute: Same as Cylinder joint, without translation.
  • Slider: Same as Cylinder, without rotation.
  • Double Slider: A slider with a third body for which the motion is linked to the two main bodies via scale factors:
    • Motion_body3 = Factor1*Motion_body1 + Factor2*Motion_body2
    • Where: 0<Factor1<1 and 0<Factor1<1 and Factor2=1-Factor1

Create the Double Slider joint


    • In the Mechanism Browser, select Fix_Rail and Move_Rail, and then right-click and select Connect.
    • Select Fix_Rail and then right-click and select Connect To. A dialog opens listing the available bodies. Select Move_Rail and close the dialog.
      Figure 12.


  1. Select the Joint type DoubleSlider.
    Figure 13.


  2. Specify Body3 by selecting Roller inside the body list.
  3. Verify that Input Option is set to By Positions.
  4. Under Location, activate the two checkboxes labeled Define by Node.
  5. Click Origin, select a node on the rail part and click proceed.
    Figure 14.


  6. Click Origin, select a node on the rail part and click proceed.
    Figure 15.


  7. Click Create to confirm the joint.
    The Double Slider joint is created in the Mechanism Browser with the three bodies defined inside, as well as on the display.
    Figure 16.


    Note: The scale factors (Factor 1 and Factor 2) defining the relative motion between Roller and Fix_Rail and Roller and Move_Rail are set up per default to 0.5.
  8. In order to change these values, select the DoubleSlider joint in the Mechanism Browser and update the value of Factor 1 in the Entity Editor (Factor 2 is directly computed as 1-Factor 1).
    Figure 17.


    Define the joint limits

  9. It is possible to define limits for each type of joint. For example, in the previous DoubleSlider Entity Editor, activate the checkbox Define limits, and provide the following limit values: Min distance: -100.0 and Max distance: 50.0.

    Create the Revolute joints

    All of the other joints are revolute joints and are defined in the same way – Origin + direction in Y-Axis. To create the revolute joint between Move_Rail and Front_Lever bodies perform the following steps.

  10. Select Move_Rail and Front_Lever, right-click and select Connect.
  11. Set Joint type to Revolute and Input Option to By Directions.
  12. Click Origin and provide the coordinates of the axis-origin or define them by selecting a node. To do that, click the blue arrow, pick a node and click proceed. The following Origin coordinates should be used: -1661, 104 and 418.5. The Local Z-axis of the joint is oriented in the global y-axis: 0, 1, 0.
  13. Click Create to confirm the creation of the revolute joint.
    Figure 18.


  14. Repeat these steps to create the other revolute joints, defined as follows:
    1. Body 1: Move_Rail, Rear_Lever, Front_Lever, Seat_Cushion
    2. Body 2: Rear_Lever, Seat_Cushion, Seat_Cushion, Back_Seat
    3. Origin Coordinates: -1961; 117; 408.5: -2040.6; 104; 420.7: -1722.5; 121; 475: -2067; 103.6; 506
    4. Local Z-axis: 0; 1; 0: 0; 1; 0: 0; 1; 0: 0; 1; 0
      The complete seat mechanism should look like the image below.
      Figure 19.


Check a Mechanism

In order to work correctly, there are basic checks on the mechanism that need to be performed to ensure the validity of the mechanism.

Right-click the mechanism Driver_Seat > Check Mechanism.
Checks will be automatically performed to detect common nodes (checks if nodes are shared in several bodies), empty bodies and redundant joints.
Note: If the bodies and joints are correctly defined, all checks should be green in color . If a check fails, a red appears and an automatic fix will be available. For example, in a case of common nodes, a dialog opens where you can select which body the common nodes have to be retained.

Move a Mechanism

Before moving a mechanism, it is possible to specify what the joints are that are able to move and those that are locked.

Define joint lock level

  1. Click the lock icon of a joint.
    The green icon means that the joint is locked and can move. The yellow icon means that the joint is locked and cannot move.

    Move a single joint

  2. Select the joint in the Mechanism Browser, for example DoubleSlider on the actual Driver_Seat, right-click and select Move.
    You are now able to move interactively the DoubleSlider joint by activating the arrow on the display.
    Figure 20.


  3. To move a joint, it is possible to use the entries in the Entity Editor. Select the DoubleSlider, right-click and select Move. Current distance of the joint can be modified by giving a desired value or using the up and down arrow buttons. Moreover, you have control on the increments of the operations by changing the Increment value.

    Move mechanism to target

    Instead of moving the joints, there is the option to move the mechanism automatically by selecting a node of a body and the target position. Typically, you can select the seat H-Point. In this example, the following node represents the H-Point and belongs to the Seat_Cushion body.

    Figure 21.


  4. To move the H-Point to a target location, select Driver_Seat in the Mechanism Browser, right-click and select Actuate Mechansim > Target Point.
    • New position name: Define the name of the final position of the seat, for example Target_1.
    • Multiple pairs: Yes or No – Defines if the final position is based on one node and one target (Multiple pairs = No) or based on multiple nodes and corresponding targets (Multiple pairs = Yes). For this example, select No.
    • Node / Mechanism Constraint: Select the seat node, which needs to be moved to the target. Select H-Point Node.
      Figure 22.


    • Target X,Y,Z/Node: Provide the target coordinates or pick a node (blue arrow) as the target. In this example, give the following coordinates: -1800; 330; 625.
  5. Click Move, and observe that the seat is automatically positioned matching the new H-Point target.
    Figure 23.


  6. Click Save to save the new position of the seat.

Save and Retrieve Positions

A mechanism position can be saved directly in the Move to Target Entity Editor after mechanism positioning. Otherwise, after modifying manually the joint positions the final position can be saved.

  1. Right-click Driver_Seat > Save Position as.
    You can create a new position or overwrite an existing position.
  2. After creating several positions you can quickly retrieve them by clicking Move Mechanism To > Other Position.
  3. Select the desired position in the list.
    Note: The Initial position of the mechanism is automatically created when the mechanism has been defined for the first time, and thus, it is always possible to bring it to this initial position at any time.

Export a Position as a Solver Include File

The Mechanism Browser allows you to export any saved mechanism position to a solver file containing transformation cards and related sets of parts or sets of nodes. This allows you to position, for example a seat, using solver entities.

  1. Right-click Driver_Seat > Export Position.
  2. Set the Reference position as Initial[Driver_Seat].
  3. Select the Position to export, for example Target_1.
  4. Define a file to export the results and click Export.
    The exported file can be used directly as an include file into the initial seat model.

Export a Mechanism Using the Solver Deck

  1. Click File > Export > Solver Deck.
  2. Browse and select the seat_positioned_0000.rad file.
  3. Click Save.
  4. Open the exported deck in a text editor and pay attention to the /END. The created mechanism is stored between the keywords /MECHANISM_START and /MECHANISM_END.
    • /ASSEMBLY: Defines a body with the different set IDs or PART IDs, for example part set number and related set ID, number of parts and related part IDs, number of nodes set and related set ID).

    /ASSEMBLY/1

    Example_of_body

    Figure 24.


    • /CONNECTION_***: Defines the type of joint between ASSEMBLY (/CONNECTION_HINGE; /CONNECTION_LINE…)
    • /POSITION: Defines a position of the mechanism
    Note: Reference and Initial positions should never be deleted.
    If you were using the LS-DYNA solver you would see *ASSEMBLY, *CONNECTION, *POSITION

    *ASSEMBLY

    1Example_of_body

    Figure 25.