a b/Docs/Applications/Daily-activities-and-ergonomics/PosturePredictionModel.md
1
---
2
gallery_title: "Posture Prediction Model"
3
gallery_image: "/Applications/images/StandingPosturePredictionModel.webp"
4
---
5
6
7
(sphx_glr_auto_examples_adls_and_ergonomics_plot_PosturePredictionModel.py)=
8
(example_posture_prediction)=
9
# Posture Prediction Model
10
11
12
````{sidebar} **Example**
13
<img src="/Applications/images/StandingPosturePredictionModel.webp" width="70%" align="center">
14
15
````
16
17
This is a model which can predict the posture as a consequence of applied loads in hands.
18
It does this by minimizing joint torques and applying balance drivers which account for external
19
applied loads.
20
21
22
:::{seealso}
23
**Main file location in AMMR:**
24
25
{menuselection}`Application --> Examples --> StandingPosturePredictionWithLoad -->
26
StandingPosturePrediction.main.any`
27
:::
28
29
30
The model is driven by a combination of the following drivers:
31
: - Drivers which minimize the joint moments (arising from gravity and applied loads in hands) in elbow, shoulder, L4L5 and knee
32
  - Driver which tries to keep the CoP inside the foot stance area.
33
  - Feet maintain contact with the ground, but the position can be controlled by widgets
34
  - Hands are linked to an object, of which positioning can be altered using widgets
35
36
37
:::{figure} /Applications/images/StandingPosturePredictionModel_UpwardsForce.jpg
38
:align: center
39
:::
40
41
42
Two type of loads can be applied, either a fixed weight of the object and/or a force vector.
43
44
## Usage
45
46
To run the model
47
: - Load the model
48
49
:::{figure} /Applications/images/StandingPosturePredictionModel_UponLoading.jpg
50
:align: center
51
:::
52
53
The example model has a force vector applied on the object, currently the object has no weight (this is editable)
54
55
```AnyScriptDoc
56
AnyVar ObjectWeight = 0;   //weight of mass applied
57
```
58
59
- Try to drag (click and drag) one of the widgets in the ModelView (seen as small coordinate systems). For example the force vector widget:
60
61
:::{figure} /Applications/images/StandingPosturePredictionModel_WidgetMovement.jpg
62
:align: center
63
:::
64
65
- When the widget is release the model will run the analysis. The Force vector is shown by the blue arrow, the weight of the object is represented by a red line, and the resulting reaction force is depicted by the green arrow.
66
67
:::{figure} /Applications/images/StandingPosturePredictionModel_PickupBox.jpg
68
:align: center
69
:::
70
71
There are three remaining widgets, 2 controlling the starting position of the feet, and 1 controlling object's location.
72
73
:::{figure} /Applications/images/StandingPosturePredictionModel_FootWidgets.jpg
74
:align: center
75
:::
76
77
The model can also be adjusted to apply the load to both hands or a single hand.
78
Three combinations can be made using the define statements
79
80
```AnyScriptDoc
81
#define LoadInRightHand 1
82
#define LoadInLeftHand  1
83
```
84
85
In the following example a force vector is applied to only the right hand.
86
87
:::{figure} /Applications/images/StandingPosturePredictionModel_Onearm.jpg
88
:align: center
89
:::
90
91
The following video shows an example of how you can manipulate the multiple widgets to achieve different predictive postures:
92
93
```{raw} html
94
<video width="100%" style="display:block; margin: 0 auto;" controls autoplay loop>
95
    <source src="../../_static/StandingPosturePrediction.mp4" type="video/mp4">
96
Your browser does not support the video tag.
97
</video>
98
```
99
100
**Please note the speed of the video was increased for viewing purposes.**
101