TUTORIAL – MODEL EDITING
En este tutorial se añadirán un cuerpo y un actuador a un modelo existente de OpenSim
editando el archivo .xml Se necesita un editor de .xml como Notepad++
Se utilizará para el ejemplo el modelo arm26.osim
Conectar un segmento adicional al modelo
Abrir el archivo XML del modelo en Notepad++ expandir con Alt+3
En caso de no poder expandir, hay que establecer el lenguaje de XML en Menu bar >
Language > XML
Explorar el modelo. Tiene 8 conjuntos principales BodySet, ConstraintSet, ForceSet,
MarkerSet, ContactGeometrySet, ControllerSet, ProbeSet, y ComponentSet
Explorar BodySet. Tiene 3 Body objects ground, r_humerus y r_ulna_radius_hand
Guardar una copia antes de modificar con nombre distinto
Añadir un nuevo Body llamado bucket, justo debajo de r_ulna_radius_hand
*Copia y pega de comandos*
Se especifican las propiedades de masa (Mass properties), añadiendo nombres y
valores
*copiar y pegar en el caso del exo, todo es 0
<mass>1.0</mass>
<mass_center> 0.0 -0.1 0.0</mass_center>
<inertia_xx>0.0024</inertia_xx>
<inertia_yy>0.0028</inertia_yy>
<inertia_zz>0.0224</inertia_zz>
<inertia_xy>0.0</inertia_xy>
<inertia_xz>0.0</inertia_xz>
<inertia_yz>0.0</inertia_yz>
Especificar articulaciones/uniones (Joints). Añadir nombres para los PinJoints y
parent_body y valores
*copiar y pegar
<Joint>
<PinJoint name="r_handle">
<parent_body> r_ulna_radius_hand </parent_body>
<location_in_parent> 0.031 0.31 0.07 </location_in_parent>
<orientation_in_parent> 0.0 0.0 0.0 </orientation_in_parent>
<location> 0.0 0.0 0.0 </location>
<orientation> 0.0 0.0 0.0 </orientation>
</PinJoint>
</Joint>
Location_in_parent y orientation_in_parent definen la posición y la orientación de una unión
con respecto al su origen en el parent body. *ver ejemplo*
Estos dos vectores deben darse en el marco de coordenadas del parent body que les
corresponda. En la mayoría de los casos, la location_in_parent y orientation_in_parent son
todo lo que se necesita para específicar una nueva articulación/unión.
Además, la localización local y el desplazamiento del centro de unión con respecto del child
body puede especificarse con location y orientation.
Especificar coordenadas generalizadas.