Injury Evaluation Application - Bungee Jump
This demonstration problem will illustrate the use of a human model to evaluate the loading conditions on the body for a recreational bungee cord jump.
A passive human model, with the joint strength of a scaled Hybrid III crash dummy will be dropped from a height with elastic forces attached at the ankles.
Two simulations with varying cord properties will be analyzed to determine the relationship between the cord stiffness and the loads on the human.
The acceleration loads at the head and neck forces will be evaluated.
Key skills exercised in this tutorial include:
- Using the anthropometric database to scale a model
- Hybrid III crash dummy joint strength characteristics
- Applying initial conditions to the model
- Importing an external mechanical system from the model library
- Creating body/environment interface forces
- Running a passive simulation
- Performing parameter variation study
- Results processing with joint muscle graphics scaling with magnitudes
- Examine joint reactions, muscle forces, interface force, etc
Sections
Generating the Body Segments
In this phase the human body models are generated. The body consists of 19 segments and 18 joints with the mass properties of a 95% Chinese male and the joint characteristics of the Hybrid III crash dummy.
Step 1: Bring up segments panel and set fields for body
Begin the ADAMS/View modeling session and select the LifeMOD™ button at the bottom left portion of the screen. Select SEGMENTS from the main-menu and CREATE BASE SET from the sub-menu.
Step 2: Create the body
Enter "World" for the world model name and "Cartman" for the human body name. Units are Inch-Lbm-Llbf and the color is set to cyan. Hands are set to closed and the full body model is specified. The model is created from an anthropometric database named GeBOD. Select "MEDIAN" to set the properties for a median male human model. Select Create Body Parameter Table to establish the model parameters and select Create Human Model from Parameter Table to create the Cartman model.
Generating the Joints
In this phase, the human segments created in the first phase are connected together with kinematic joints. At the same time torque functions are created at each joint degree of freedom. The torque function is created from the Hybrid III database of torque functions. The torque is based on a nonlinear joint stiffness, damping, friction and hysteresis (losses), specific to each DOF for each joint as derived from the physical Hybrid III crash dummy.
Step 3: Bring up joint create panel
Select JOINTS in the main-menu and CREATE BASE SET in the sub-menu.
Step 4: Create Hybrid III strength joints on the model
Select HYBRID III CRASH DUMMY STRENGTH CHARACTERISTICS. Enter a scale factor of .14, to scale the strength profile to be more suited for a bungee jump. Setting this scale function can be a matter of trial and error until the proper model response is achieved. SELECT ALL body regions and select MODIFY. From this six panels will appear to create the joint/torque sets for each region of the body (spinal, left arm, left leg, right arm, right leg).
Step 5: Adjust Hybrid III strength joints on the right leg
Set the sagittal and frontal joint dof's of the hip to Hybrid III, the sagittal of the knee and the sagittal of the ankle. Set the rest of the dof's to "Fixed". Enter the scale functions as in figure 2 and select APPLY to create the joint set.
Step 6: Adjust Hybrid III strength joints on the left leg
Set the sagittal and frontal joint dof's of the hip to Hybrid III, the sagittal of the knee and the sagittal of the ankle. Set the rest of the dof's to "Fixed". Enter the scale functions as in figure 2 and select APPLY to create the joint set.
Step 7: Adjust Hybrid III strength joints on the right arm
Set the sagittal and frontal joint dof's of the shoulder to Hybrid III and the sagittal of the elbow. Set the rest of the dof's to "Fixed". Enter the scale functions as in figure 3 and select APPLY to create the joint set.
Step 8: Adjust Hybrid III strength joints on the left arm
Set the sagittal and frontal joint dof's of the shoulder to Hybrid III and the sagittal of the elbow. Set the rest of the dof's to "Fixed". Enter the scale functions as in figure 3 and select APPLY to create the joint set.
Step 9: Adjust Hybrid III strength joints on the spine
Set all dof's to Hybrid III. Enter the scale functions as in figure 4 and select APPLY to create the joint set.
Posing the Human Model
After the joints are created on the model the posture of the model may be adjusted, and the model moved into place. The posture may be adjusted by modifying the joint angles. The body is moved into place by selecting the Lower_Torso segment and changing the location.
Step 10: Bring up posture panel
Select POSTURE on the main-menu and CONFIGURE BASE MODEL on the sub-menu.
Step 11: Update the left/right shoulder joints
Enter -80 for the right and left shoulder, sagittal joint angle. Enter 60 for the right shoulder transverse angle and -60 for the left shoulder transverse angle. Enter -50 for the right shoulder frontal joint angle and 50 for the left shoulder frontal joint angle. Then select the SHOULDER button for both arms.
Step 12: Update the left/right elbow joints
Enter -70 for the right and left elbow, sagittal joint angle. Then select the ELBOW button for both arms.
Step 13: Update the left/right hip joints
Enter -20 for the right and left hip, sagittal joint angle. Enter -7 for the right hip frontal joint angle and 7 for the left hip frontal joint angle. Then select the HIP button for both legs.
Step 14: Update the left/right knee joints
Enter 40 for the right and left knee, sagittal joint angle. Then select the KNEE button for both legs.
Step 15: Update the upper neck joint
Enter 10 for the upper neck sagittal joint angle. Then select the UPPERNECK button for both legs.
Step 16: Update the lower neck joint
Enter 10 for the lower neck sagittal joint angle. Then select the LOWERNECK button for both legs.
Step 17: Update the thoracic joint
Enter 20 for the thoracic sagittal joint angle. Then select the THORACIC button to update the joint angle.
Step 18: Update the lumbar joint
Enter 20 for the lumbar sagittal joint angle. Then select the LUMBAR button to update the joint angle.
Step 19: Rotate and reposition model
Reposition the model by modifying the location of the Lower_Torso segment. Right-click on the Lower_Torso segment and select Modify. Enter orientation as 180, 60, 90. OR enter the following ADAMS/View command:
part mod rigid name part=.World.Cartman_Lower_Torso orientation=180, 60, 90 rel=.World
Importing the Environment Model
A model of a stone arch is read in from the model library. The arch is secured to ground with a fixed joint.
Step 20: Read in the arch from the library
Select XCHANGE from the main-menu and IMPORT MECHANICAL ENVIRONMENT from the sub-menu. Select Mechanical Environment Library and select CLIFF. Select Apply to import the arch.
Step 21: Create a fixed joint between the arch and ground
Select Create Fixed Joint from Main Toolbox and select Arch and Ground as the two bodies and selecta location on the Arch. Rename .World.FIX. OR use the following ADAMS/View commands to create a fixed joint between the cliff and ground.
marker create marker=.World.Arch.ground location=312, -479, -178 rel=.World
marker create marker=.World.ground.Arch location=312, -479, -178 rel=.World
constraint create joint Fixed joint_name=.World.FIX i_marker_name=.World.Arch.ground j_marker_name=.World.ground.arch
Attach Human Model to the Environment
The human model is now attached to the stone arch via contact forces between the feet and the top of the arch. Contact forces are created on the model to provide an interaction between the human model and the environment. LifeMOD™ contact forces utilize an ellipsoid-plate contact algorithm for efficient calculation of the reaction of the body segments to impact with the environment. The general form of the contact force function is:
F n =k *(g**e)+Step (g,0,0,d max ,c max )*dg/dt
where:
g represents the penetration the ellipsoid into the plate
dg/dt is the penetration velocity at the contact point.
e is a positive real value denoting the force exponent.
dmax is a positive real value specifying the boundary penetration to apply the maximum damping coefficient cmax
Step 22: Create a contact marker on the arch for the feet
Create a marker on the arch with the z-axis pointing in the normal direction by selecting creating a marker from Main Toolbox named .World.Arch.con at 0.2102175202, -33.9943704309, -12.0834111607 with an orientation of 0, -90, 0. Or create using following ADAMS/View command:
marker create marker=.World.Arch.con location=0.2102175202, -33.9943704309, -12.0834111607 ori=180,90,180 rel=.World
Step 23: Bring up contact panel
Select CONTACTS on the main-menu and CREATE BASE SET on the sub-menu. Enter .World.arch.con in the contact surface marker field and set the parameters as in Figure 11.
Step 24: Create contact between feet and the arch
Select Right_Foot_Single, Left_Foot_Single as the contact segments. Then select APPLY.
Creating the Bungee Cord
With the models generated, joints created, contact forces applied, and set in the right posture, the bungee cord spring forces will be applied to the model. The forces used to represent the bungee cord are simple springs with a long freelength. The stiffness value is parameterized to be easily changed for a parametric evaluation study.
Step 25: Create markers for anchors on the arch
Create markers by using the Main Toolbox. Create four markers:
.World.Arch.anchor1 at 56, -104, 60 with default orientation
.World.Arch.anchor1a at 56, -104, 30 with an orientation of 180, 50, 180
.World.Arch.anchor2 at -49, -104, 60 with an default orientation
.World.Arch.anchor2a -49, -104, 30 with an orientation of 180, 50, 180
OR create using the following ADAMS/View commands:
marker create marker=.World.Arch.anchor1 location=56, -104, 60 rel=.World
marker create marker=.World.Arch.anchor2 location=-49, -104, 60 rel=.World
marker create marker=.World.Arch.anchor1a location=56, -104, 30 ori=180,50,180 rel=.World
marker create marker=.World.Arch.anchor2a location=-49, -104, 30 ori=180,50,180 rel=.World
Step 26: Create the bungee anchors on the arch
Create the geometry for the anchors by creating four cylinders:
Frame 1: Go to Command Navigator under Tools at the top of the screen. Go to geometry, create, shape, cylinder. Set name to .World.Arch.Frame_1, center marker .World.Arch.anchor1, angle extent of 360, length -100, radius 2, and 20 for both Side Count for Body and Segment Count for Ends. Select OK. Right-click and set color to red under Appearence.
Frame 1a: Create adjoining support by selecting Create Cylinder from Command Navigator.Set name to .World.Arch.Frame_2 with a center marker of .World.Arch.anchor1a. The remaining parameters are the same as Frame 1. Select OK. Right-click and set color to red under Appearence.
Frame 2: Create supplementary support by selecting by selecing Create Cylinder from Command Navigator. Set name to .World.Arch.Frame_2 with a center marker of .World.Arch.anchor2. Use previous parameters. Select OK. Right-click and set color to red under Appearence.
Frame 2a: Create adjoining support by selecting Create Cylinder from Command Navigator. Set name to .World.Arch.Frame_2a with a center marker of .World.Arch.anchor2a. Use previous parameters. Select OK. Right-click and set color to red under Appearence.
OR create using the following ADAMS/View commands:
geometry create shape cylinder cylinder_name = .World.Arch.Frame_1 &
center_marker = .World.Arch.anchor1 &
angle_extent = 360.0 &
length = -100 &
radius = 2 &
side_count_for_body = 20 &
segment_count_for_ends = 20
geometry create shape cylinder cylinder_name = .World.Arch.Frame_1a &
center_marker = .World.Arch.anchor1a &
angle_extent = 360.0 &
length = -100 &
radius = 2 &
side_count_for_body = 20 &
segment_count_for_ends = 20
geometry create shape cylinder cylinder_name = .World.Arch.Frame_2 &
center_marker = .World.Arch.anchor2 &
angle_extent = 360.0 &
length = -100 &
radius = 2 &
side_count_for_body = 20 &
segment_count_for_ends = 20
geometry create shape cylinder cylinder_name = .World.Arch.Frame_2a &
center_marker = .World.Arch.anchor2a &
angle_extent = 360.0 &
length = -100 &
radius = 2 &
side_count_for_body = 20 &
segment_count_for_ends = 20
Step 27: Create the variable for bungee stiffness
Create bungee spring force using the Command Navigator. Go to Variable, Create. Set name to DV_Stiffness, Set name to DV_Stiffness and Real Value to 0.4. Select OK.
OR use
the following ADAMS/View commands:
var create var=DV_Stiffness real=.4
Step 28: Create the bungee force between the left leg and the anchor
Use Command Navigator to create the bungee force. Go to Force, Create, Direct, Single_Component_Force. Set parameters to those in figure 12 using the following function.
step(dm(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1), 120,0,125,1)*
(-.World.DV_Stiffness*dm(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1)-
(step(vr(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1),0,0,1,1)*
.4*.World.DV_Stiffness*vr(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1)))
OR create using the following ADAMS/View commands:
force create direct single_component_force &
single_component_force_name = .World.Bungee_1 &
type_of_freedom = translational &
action_only = off &
function = "step(dm(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1), 120,0,125,1)*",
"(.World.DV_Stiffness*dm(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1)-",
"(step(vr(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1),0,0,1,1)*",
".4*.World.DV_Stiffness*vr(.World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1)))" &
i_marker_name = .World.Cartman_Left_Lower_Leg.Left_Foot j_marker_name = .World.Arch.anchor1
To create the geometrical outline of force use the Command Navigator. Go Geometry, Create, Curve, Outline. Set name to .World.O_Bungee_1 and Marker Name to .World.Cartman_Left_Lower_Leg.Left_Foot, .World.Arch.anchor1. Select OK. Right-click on the outline and select Appearence. Change color to black.
OR use the following ADAMS/View command:
geometry create curve outline &
outline_name = .World.O_Bungee_1 &
marker_name = .World.Cartman_Left_Lower_Leg.Left_Foot,.World.Arch.anchor1
The first command above generates the force. The force is an ADAMS/View single component force with a function which provides a free length transition (ramping the force on from a length of 120 to a length of 125). The stiffness design variable (DV_Stiffness) is applied against the magnitude of the displacement between a marker in the ankle and a the anchor marker. Damping is applied using a step function to make sure the force is only applied in tension with a coefficient of .4 times the stiffness design variable.
Step 28: Create the bungee force between the right leg and the anchor
Create bungee spring force using the Command Navigator to create a Single_Component_Force. Set the name to .World.Bungee_2 and use the rest of the parameters from figure 12 using the following function:
step(dm(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2),126,0,131,1)*
(-.World.DV_Stiffness*dm(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2)-
(step(vr(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2),0,0,1,1)*
.4*.World.DV_Stiffness*vr(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2)))
OR create using thefollowing ADAMS/View commands:
force create direct single_component_force &
single_component_force_name = .World.Bungee_2 &
type_of_freedom = translational &
action_only = off &
function = "step(dm(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2),126,0,131,1)*",
"(.World.DV_Stiffness*dm(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2)-",
"(step(vr(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2),0,0,1,1)*",
".4*.World.DV_Stiffness*vr(.World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2)))" &
i_marker_name = .World.Cartman_Right_Lower_Leg.Right_Foot j_marker_name = .World.Arch.anchor2
Create the geometrical outline for the force using the Command Navigator. Name the outline .World.O_Bungee_2 Marker Name to .World.Cartman_Right_Lower_Leg.Right_Foot, .World.Arch.anchor2. Select OK. Right-click on outline and select Appearence. Change color to black.
OR Create using the following ADAMS/View commands:
geometry create curve outline &
outline_name = .World.O_Bungee_2 &
marker_name = .World.Cartman_Right_Lower_Leg.Right_Foot,.World.Arch.anchor2
entity attributes entity_name = .World.O_Bungee_2 color = .colors.BLACK
Running the Passive Simulation
With the models generated, joints created, contact forces applied, and set in the right posture, the bungee cords created, the dynamic analysis will be performed. This simulation is termed "passive", since the human models are responding to forces from the environment.
Step 29: Bring up the analyze, Body Velocity Initial Conditions panel
Select ANALYZE from the main-menu and BODY VELOCITY INITIAL CONDITIONS from the sub-menu.
Step 30: Update the torso segments with an initial velocity
In the panel check Ground as the reference frame and provide a z-axis velocity of 100 inches/s.
Step 31: Bring up the analyze panel and run the dynamics simulation
Select DYNAMICS in the sub-menu. Set the gravity vector at -386 in the negative Y direction. Run the simulation for 10 seconds and 500 time steps using the default integrator settings.
Step 32: Display simulation
When the simulation is complete, animate the model by using the animation tool in Main Tools panel.
Step 33: Display simulation with skin model
Change the display to the skin model and animate using a variety of views.
Running the Parameter Variation Study
To evaluate the effects of the stiffness of the bungee cord the stiffness is reduced and the results are compared between successive runs.
Step 34: Save the first analysis.
Select SAVE ANALYSIS and enter the name Case_1. Select OK.
Step 35: Increase the bungee stiffness
Set the DV_stiffness variable from .4 to .5 by using the Command Navigator. Go to Variable, Modify and enter DV_Stiffness and enter 0.5 as theReal Number.
OR modify using the following ADAMS/View command:
var mod var=DV_stiffness real=.5
Step 36: Run the dynamics simulation
Set the gravity vector at -386 in the negative Y direction. Run the simulation for 10 seconds and 500 time steps using the default integrator settings.
Step 37: Display simulation
When the simulation is complete, animate the model by using the animation tool in Main Tools panel.
Step 38: Display simulation with skin model
Change the display to the skin model and animate using a variety of views.
Step 39: Save the first analysis.
Select SAVE ANALYSIS and enter the name Case_2. Select GO.
Interrogating the Results
With the simulations complete, the results may be reviewed in many ways. One of the best ways to understand model performance is to plot the data and view the animation simultaneously. In this final section, results for head impact forces and decelerations are compared for both models and both strength parameters settings.
Step 40: Bring up results panel
Select RESULTS in the main-menu and DATA DISPLAY in the sub-menu. Select Body Motion as the data type and select the post-processor button.
Step 41: Plot the head acceleration for case-1
Select the y-component of the acceleration on the head, Cartman_Head, characteristic cm_acceleration. Specify the analysis as .World.Case_1. Select a low pass butterworth data filter with a cutoff frequency of 1.0 and an order of 1. Select Create Full Plot.
Step 42: Plot the head acceleration for case-2
Select the y-component of the acceleration on the head, Cartman_Head, characteristic cm_acceleration. Specify the analysis .World.Case_2. Select a low pass butterworth data filter with a cutoff frequency of 1.0 and an order of 1. Select Create Full Plot.
Step 43: Animate case_1
Select ANIMATION in the sub-menu. Set the analysis to .World.Case_1 and select PLAY.
Step 44: Animate case_2
Set the analysis to .World.Case_2 and select PLAY.
Step 45: Bring up Joint results panel
Select DATA DISPLAY in the sub-menu. Select JOINTS as the data type.
Step 46: Plot the lumbar joint force for case_1
Delete Previous graph by selcting Clear Plot. Select Cartman_Lumbar as the entity, and torque as the characteristic and select the sagittal component. Specify the analysis .World.Case_1. Select a low pass butterworth data filter with a cutoff frequency of 1.0 and an order of 1. Check New Plot and select Create Full Plot.
Step 47: Plot the lumbar joint force for case_2
Select Cartman_Lumbar as the entity, and torque as the characteristic and select the sagittal component. Specify the analysis .World.Case_2. Select a low pass butterworth data filter with a cutoff frequency of 1.0 and an order of 1. Select Create Full Plot.
Step 48: Animate the right view for case_1
Select ANIMATION in the sub-menu. Set the analysis to .World.Case_1, check zoom with center coordinates of 36,-13,4 and a scale of 7, check divide window and select PLAY.
Step 49: Animate the right view for case_2
Set the analysis to .World.Case_2, check divide window, select right view and select PLAY.
Step 50: Animate both cases simultaneously - front view
Check Compare Cases. Select .World.Case_1 as Case 1 and .World.Case_2 as Case 2. Run the animation for the front view to examine the global effects of the cable with varying stiffness.
Step 51: Animate both cases simultaneously - right view
Use the ADAMS/View tools to divide the window and load the animation for each case in a separate window. Run the animation for the front view to examine the global effects of the cable with varying stiffness.
Step 52: Animate both cases simultaneously - close up view
Use the ADAMS/View tools to zoom in to the human model. Set the camera to follow the lower_torso segment.
Step 53: Animate skeleton model
Use the LifeMOD™ panel to set the model to skeleton display. Run the animations using the methods above to gain greater insights to the behavior of the model.
Step 54: Animate skeleton skin model
Use the LifeMOD™ panel to set the model to skeleton-skin display. Run the animations using the methods above to gain greater insights to the behavior of the model.
Step 55: Animate dummy model
Use the LifeMOD™ panel to set the model to dummy display. Run the animations using the methods above to gain greater insights to the behavior of the model.
Step 56: DEMO COMPLETE
Further
This model was put forth to demonstrate the creation of a passive human model to determine the physical reactions to a human during a recreational bungee cord jump. Obviously the model can be further refined and improved, from the point developed in this example. The intention with this example was to touch of the various modeling functions of both LifeMOD™ and ADAMS/View necessary to create a human model of this nature for this application.
This model may be refined in many areas including:
- Creating a more biofidelic spine model to examine local loadings on the vertebrae and soft tissues(see Detailed Cervical Spine).
- Creating simulations with varying boundary conditions such as fall height, initial velocity, jump angle, cable stiffness, joint stiffness, posture, etc.
- Adding "human reaction" by adding PD controllers to several joints.
|