Scripting assistive device

Provide easy-to-use, extensible software for modeling, simulating, controlling, and analyzing the neuromusculoskeletal system.
POST REPLY
User avatar
Sebastian Neuberg
Posts: 15
Joined: Mon Mar 08, 2021 3:21 pm

Scripting assistive device

Post by Sebastian Neuberg » Mon Nov 28, 2022 8:41 am

Hi there,

I would like to research the impact of different kinematic chains of assistiv devices with respect to their reduction of metabolic cost.
Basically I will follow the method of the example "Simulation-Based Design to Reduce Metabolic Cost", but with the difference that I would like to model more complex assistive devices as described in the example.
In the attached figure you'll see to different kinematic chains I would like to research. I want to repeat the research for unsupported gait, gait with kinematic chain a) and gait with kinematic chain b).
2022_11_25_kinematic_chains_small.png
2022_11_25_kinematic_chains_small.png (106.07 KiB) Viewed 375 times
Therefor I wrote a MATLAB script to build up a simple device which consist of a joint attached to the pelvis, a thigh support and shank support connected with a joint, which I've added to the gait10dof18musc.osim.
Building the MATLAB script for the assistive structure I've used the tutorial of "Dynamic Walking Challenge: Go the Distance!" and adapted it for my application.

I have two question which I can not answer.
1. How can I determine the exact length between two joints (e.g. hip_l and knee_l) auf my scaled model? I would like to appie this length to my support structures (e.g. thighSupportLeft).
2. How can I attache my kinematic chain to the pelvis and the talus, to transfer forces through the assistive structure? When I attach the upper part of my structure to the pelvis and the lower part to the talus I ran into issues. The tree view looks a bit odd (two talus_l appear which are not connected), and when I ran CMC I got error message that CMC execution failed.
Attachments
2022-11-25_Tree_View_with_second_joint_to_talus.png
2022-11-25_Tree_View_with_second_joint_to_talus.png (22.69 KiB) Viewed 375 times

Tags:

User avatar
Thomas Uchida
Posts: 1777
Joined: Wed May 16, 2012 11:40 am

Re: Scripting assistive device

Post by Thomas Uchida » Mon Dec 05, 2022 11:07 pm

1. How can I determine the exact length between two joints (e.g. hip_l and knee_l) auf my scaled model? I would like to appie this length to my support structures (e.g. thighSupportLeft).
One option is to use the Matlab API (which you are already using) to get the locations of the origins of the reference frames at the two joints and compute the distance between these points.
2. How can I attache my kinematic chain to the pelvis and the talus, to transfer forces through the assistive structure? When I attach the upper part of my structure to the pelvis and the lower part to the talus I ran into issues. The tree view looks a bit odd (two talus_l appear which are not connected), and when I ran CMC I got error message that CMC execution failed.
I'm not sure that what you are trying to do will produce a useful result. CMC solves for the muscle forces that must be present in order to produce the kinematics you provide; adding rigid bodies to the model may not change the solution. Regardless, please refer to Sherm's answer to a recent question about kinematic loops (Topic 15244): viewtopicPhpbb.php?f=91&t=15244.

User avatar
Sebastian Neuberg
Posts: 15
Joined: Mon Mar 08, 2021 3:21 pm

Re: Scripting assistive device

Post by Sebastian Neuberg » Tue Feb 28, 2023 10:44 am

Dear Thomas,

Thanks for your answer.
My intention was to model a structure in OpenSim that represents an ideal exoskeleton (as shown in the attached picture). Next, I wanted to attach torque actuators to points A, B, and C. My assumption was that the actuators should reduce the load on the muscles in the CMC, allowing me to draw conclusions about the effectiveness of the actuators chosen.

I tried some more but couldn't get it to work. As you have already written, it may be that my assumption was wrong and that the simulation cannot be implemented in this way.

I now try to connect the actuators directly to the bones and leave out the exoskeleton structure. This is similar to what is described in "Simulation-Based Design to Reduce Metabolic Cost".
Opensim_structure.png
Opensim_structure.png (274.67 KiB) Viewed 212 times

POST REPLY