Modeling
Segments
Joints
Soft Tissues
Posture
Contacts
Motion
_Analysis
_Results
__Plugins
__Parameters
__Xchange

Joints

Once the segments of the model are established, joints are created between the segments. Joints are kinematic constraints which are used to connect two adjoining body segments. The joints can be either passive, using properties from the HYBRID III crash dummy, or the two-part training/trained elements used in inverse-and-forward-dynamics simulations.

Joints learn angulation patterns while the model is being driven by the motion capture data in an inverse-dynamics simulation. They then repeat those patterns and serve as actuators for the forward-dynamis simulations.

If the model requires more complex joints, a combination of contact forces and stabilizing ligament and muscular force may be used (see Total Knee Replacement Tutorial)

Various joint parameters may be adjusted. See Parameters to tune the model for simulation. Choosing Model Parameters offers more information on data sources and on how to select the parameters mentioned in this section.

Sections:


Joint Kinematic Construction

The joint consists of a tri-axis hinge and passive or active forces acting on each of the three degrees of freedom for the particular joints. Figure 1 illustrates the various methods to display the joint. The image on the right displays the joint graphics. These joint spheres scale based on the torque through the joint during the animations (see Results). The center image displays the kinematic composition of the joints. and the image on the right displays the axes' nomenclature.

 


Figure 1: Joint Composition, Joint graphics (left), joint icons (center) and axes nomenclature (right).

The kinematic topology of the right elbow joint is displayed in Figure 2. For the right elbow joint, the right_upper_arm is connected to the right_elbow_D1 via a revolute joint (right_elbow_JX) acting in the frontal plane. The right_elbow_D1 part is connected to the right_elbow_D2 part via a revolute joint (right_elbow_JY) acting in the transverse plane. The right_elbow_D2 part is connected to the right_lower_arm via a revolute joint (right_elbow_JZ) acting in the sagittal plane.


Figure 2: Joint topology for the right elbow joint.


Types of Joints

Joints may be created in sets or individually. When created in sets the user may specify a separate function for each degree-of-freedom or joint axis. Figure 4 displays the names of each joint axis. These can be turned on/off by using the Toggle Icons button and option menu at the bottom of the LifeMOD panel.

Figure 3 displays all the possible settings for the axes. These include:

  • Fixed - Kinematically fixed
  • Free - Kinematically free (no restrictions or angular limits)
  • Driven - Kinematically driven using data from a driving spline
  • Trainable Passive - A torsional spring force with user-specified stiffness, damping, angular limits and limit stiffness values. These joints are used in a inverse dynamics analysis to record the joint angulations while the model is being manipulated with motion agents.
  • Hybrid III - The Hybrid III strength model is created for the individual joint axis with a user-specified scale value. The Hybrid III strength model is based on physical measurements of the actual crash dummy. The strength model consists of nonlinear stiffness, damping and frictional values and also include joint limit stop stiffnesses with hysteresis.
  • Trained Driver - This selection creates a trained PD-servo type controller on the joint axis. The joint is commanded to track a angular history spline with a user-specified gain on the error between the actual angle and the commanded error. A user-specified derivative gain is specified to control the derivative of the error.


Figure 3: Joint matrix panel for the left leg. Every possible entry is displayed for passive, fixed, free, Hybrid III and driven options.


Figure 4: Joint axes

The joint torques generated using the Hybrid III crash dummy model are based on stiffness, damping, and friction data measured at the Armstrong Aerospace Medical Research Laboratory and Wright Patterson Air Force Base [Kelps] from the mechanical Hybrid III [Foster, 77] crash dummy. The non-linear stiffnesses are included in look-up table form for each of the three rotational degrees-of-freedom for the 18 joints in the human model.


Figure 5: Hybrid III joint torque curve form.

Data can be typically represented by the curve form shown in Figure 5. This curve describes a small (or non-existent) stiffness throughout the normal operating range for a particular joint at a particular degree of freedom. The sharp inclines and declines of the curve are a result of the joint encountering hard-tissue (or soft tissue limitations) resistance resulting in the exceeding of the biological limit of the joint. It is within this range that injury can occur to the joint.

This joint torque data, derived from the Hybrid III crash dummy is generally considered a passive response model for a kinematic rebound simulation, representing a human being unaware of the impending crash. The slope of the curve form in figure 5 may be altered to stiffen the joints.


Moving the Model

Once the Base set of joints are established, the model may be positioned and posed for analysis. The model is moved by selecting the Lower_Torso and changing the part location using the "Part" command or by selecting the Lower_Torso and using the ADAMS/view Move panel. Figure 6 displays the model with the joint graphics.


Figure 6: Once the joints are established on the model, the entire model may be moved by selecting the lower_torso segment and using the A/View move tools. Also, this figure displays the joint graphics for the active elements.


Creating the Base Joint Set for the Body

Joints -> Create BASE Set ->
The panel in Figure 7 is used to create the Base set of joints for each body region. The body regions include:

  • Spine - Upper_Neck, Lower_Neck, Thoracic, Lumbar
  • Arms - Scapular, Elbow, Wrist
  • Legs - Hip, Knee, Ankle

By selecting HYBRID III CRASH DUMMY STRENGTH MODEL or TRAINABLE PASSIVE ELEMENTS the complete Base set will be created. By selecting EXECUTE the joints are created without editing the individual properties. By selecting MODIFY, each joint panel (Figure 7) is displayed allowing for the user to change the individual parameters for each joint. The Hybrid III scale factor is used to scale the stiffness/damping/friction joint curves. A value of 1.0 is generally used for a 50%-ile human (mean). The value may be increased for stiffer joints or decreased for less joint resistance. A variable (Hill scale) is then created for this parameter. This allows the user to change the Hill scale factor across all joints by changing the single parameter.

The "Build Joints using SLF File" button is used to import an SLF file with a stored joint configuration. The SLF file may be created from a previous model by using the Export feature on the Main Menu. For more information about the SLF file see appendix.


Figure 7: The BASE Set joint creation panel.


Figure 8: Base joint groupings


Creating Individual Joints

Joints -> Create Individual Joints->
The panel in Figure 9 is used to create a single joint. This capability is used to create individual joints or joints outside those covered in the Base set. (For an example, see the cervical spine tutorial).

Figure 10 displays the notion of the inboard/outboard relationship when creating segments. A marker must be created on the inboard segment (see Figure 10) to specify the joint axes. The most inboard segment is the lower_torso. This relationship is common when specifying kinematic chains and used primarily when adjusting the posture (angle) of the joint. When adjusting the angle of a joint to change the posture of the human model, the inboard segment of the joint will not rotate, only the outboard segment will rotate.

The single joint may be specified with the kinematic and/or torque selections as documented above.


Figure 9: Create single joint panel


Figure 10: Inboard/outboard segments relationships


Changing the Function (Training/Trainable) of the Joints

Joints -> Training
This function changes the joint sets from trainable to trained after the creation and inverse-dynamics simulation of the passive joints.To change the joints from trainable to trained, select the light bulb icon as shown in the figure below. This brings up the sub-panel in which the proportional gain and the derivative gain of the controller is entered. Select "Apply" to update the joints from passive mode to the PD controller mode.

If necessary, trainable (passive) joints may be re-installed. This option the user to run the inverse-dynamics simulation for another set of data, boundary conditions, etc. There is no limit to how many times the joints may be converted from trained to trainable and back again (see Lifting Tutorial).


Figure 11: Editing the base joint set. In this case the trained elements are being substituted for the untrained passive elements. The PD-Servo driver elements will have a proportional gain of 2.54e6 and a derivative gain of 2.54e4


Editing the Properties of the Joints.

Joints -> Edit Properties

The parameters of the joints may be edited at any time. The panel in the figure below brings up the individual joint tables from Figure 3. New parameters for the joints may be entered through these panels.


Figure 12: Editing joints

 


Deleting the Joints

Joints -> Delete
The panel in Figure 13 is used to delete joints. All Base Joints, single Base joint sets (i.e., right arm, left arm, right leg, left leg, spine) or single joints may be deleted using this panel.


Figure 13: Deleting joints