Page 1 of 2
Muscles contraction without their activation
Posted: Fri Feb 22, 2019 8:57 am
by gscaccuto
Dear all,
I'm using an upper limb .osim model with 6 millard muscles and 2 DoF.
I'm using a modified version of the MoBL upper limb model with only the following muscles: DELT3, PECM1, TRIlong, TRIlat, BICshort, BRA.
Muscle parameters are taken from the original paper of the model:
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4282829/
The unique parameter I changed is the contraction velocity that I set equal to 10.
I'm using the OpenSim-MATLAB interface to create a forward simulation in Simulink for setting muscle excitations and retrieving some output information:
https://simtk.org/projects/opensimmatlab
I have run a simulation during which the activation send to the six muscles were equal to 0, i.e. the minimum allowable value. I would expect that model didn't perform any movements holding his initial position, instead it shows a drift in one direction. Here attached a video that shows this effect and the .osim file.
Can you explain me what is the problem and how to solve it.
Re: Muscles contraction without their activation
Posted: Fri Feb 22, 2019 11:27 am
by tkuchida
Gravity and/or passive muscle forces?
Re: Muscles contraction without their activation
Posted: Sat Feb 23, 2019 7:55 am
by gscaccuto
tkuchida wrote: ↑Fri Feb 22, 2019 11:27 am
Gravity and/or passive muscle forces?
Gravity was setted to 0.
Here's passive forces.
- passive forces.png (16.83 KiB) Viewed 979 times
Re: Muscles contraction without their activation
Posted: Sat Feb 23, 2019 9:19 pm
by tkuchida
I loaded the model you provided in your first post but received "Object type Millard12EqMuscleWithAfferents not recognized" errors so I was unable to reproduce the issue to investigate. However, I loaded the arm26 model that accompanies the 4.0 installation and confirmed that no active muscle forces are produced when activations are zero. You could try verifying that your MATLAB code is, indeed, setting activations to zero, and perhaps try using a MuscleAnalysis to investigate which forces are being generated.
Re: Muscles contraction without their activation
Posted: Sun Feb 24, 2019 9:27 am
by gscaccuto
tkuchida wrote: ↑Sat Feb 23, 2019 9:19 pm
I loaded the model you provided in your first post but received "Object type Millard12EqMuscleWithAfferents not recognized" errors so I was unable to reproduce the issue to investigate. However, I loaded the arm26 model that accompanies the 4.0 installation and confirmed that no active muscle forces are produced when activations are zero. You could try verifying that your MATLAB code is, indeed, setting activations to zero, and perhaps try using a MuscleAnalysis to investigate which forces are being generated.
I'm sorry. I forgot to send the plugin I compiled. Here it to test my model.
Re: Muscles contraction without their activation
Posted: Sun Feb 24, 2019 9:48 am
by aparziale
tkuchida wrote: ↑Sat Feb 23, 2019 9:19 pm
I loaded the model you provided in your first post but received "Object type Millard12EqMuscleWithAfferents not recognized" errors so I was unable to reproduce the issue to investigate. However, I loaded the arm26 model that accompanies the 4.0 installation and confirmed that no active muscle forces are produced when activations are zero. You could try verifying that your MATLAB code is, indeed, setting activations to zero, and perhaps try using a MuscleAnalysis to investigate which forces are being generated.
Dear Dr. Uchida,
It would be great if you can check the model with the plugin attached by Giuseppe. We would be more comfortable with a your comment. Millard12EqMuscleWithAfferents is the standard Millard muscle that includes the spindles and golgi models. The muscle's equations are not changed.
We are really thankful to you.
Re: Muscles contraction without their activation
Posted: Mon Feb 25, 2019 2:55 pm
by tkuchida
I loaded the plugin, opened the model, and attempted to run a 0.1-second simulation, but the integrator did not seem to be progressing. Please provide instructions for how to reproduce the issue. I suspect there may be an issue in the plugin, which cannot be diagnosed without looking at the code.
Re: Muscles contraction without their activation
Posted: Tue Feb 26, 2019 4:33 am
by gscaccuto
tkuchida wrote: ↑Mon Feb 25, 2019 2:55 pm
I loaded the plugin, opened the model, and attempted to run a 0.1-second simulation, but the integrator did not seem to be progressing. Please provide instructions for how to reproduce the issue. I suspect there may be an issue in the plugin, which cannot be diagnosed without looking at the code.
Thanks for your support.
Integration with that plugin is very slow but it progresses after few mins (I think because It has many state variables to compute). If you reduce "integrator error tolerance" to 0.01 the simulation is faster.
However, I also tried a simulation with default integrator error tolerance and without activation on the same model and using the classic millard's muscle and I have the same issue on it.
Here there is the model with classic millard's muscle. Can you please evaluate this one? Thank you a lot for all.
Re: Muscles contraction without their activation
Posted: Tue Feb 26, 2019 12:35 pm
by tkuchida
I ran a 0.5-second simulation and then used the Analyze Tool to run a MuscleAnalysis. The passive forces are large.
Re: Muscles contraction without their activation
Posted: Tue Feb 26, 2019 3:45 pm
by aparziale
tkuchida wrote: ↑Tue Feb 26, 2019 12:35 pm
I ran a 0.5-second simulation and then used the Analyze Tool to run a MuscleAnalysis. The passive forces are large.
Dear Dr. Uchida,
We apologise for the inconvenient. We were using in the wrong way the Plot tool offered by OpenSim. So, it seems the passive forces shown by Giuseppe in his first thread are not the right ones.
Following your suggestions:
1) we chose "Tools> Forward Dynamics"
2) Time from 0 to 0.5 and we clicked on RUN. "Results" appears in Motion
3) Tools> Muscle Analysis. Loaded Motion is set to Results. "States" appears in Motion
4) Tools > Plot is used for plotting the passive fiber-force as function of Results of States.
We notice a difference between the two plots. The fiber-force vs Results shows a spike while the fiber-force vs States shows a big value along all the simulation. Why are they different? I have attached them here.
Furthermore, how can we solve this problem? I read many posts about muscle parameters but I'm not so confident with it.
By Reading the file "TipForDubbuingMuscleActuateSImulations" I understood that i have to modify tendon slack length in order to move "normalized fiber length" towards the optimal fiber length. Is it right?
Or can you suggest me another strategy?
Thank you again for all