CMC troubles

Provide easy-to-use, extensible software for modeling, simulating, controlling, and analyzing the neuromusculoskeletal system.
POST REPLY
User avatar
Joseph Alston
Posts: 26
Joined: Tue May 13, 2008 9:51 am

CMC troubles

Post by Joseph Alston » Thu Jul 16, 2009 7:25 pm

I'm having problems with the CMC tool. I've got the RRA working fine. However, when I try to get the CMC tool to work I keep getting warnings saying that I've got small force ranges for all of my muscles. I have two versions of the model I'm trying to run, one that is as simplified as I can make it, and the other has a few more DOF. With the simple version I get the following error:

SimTK Exception thrown at InteriorPointOptimizer.cpp:249:
Optimizer failed: Ipopt: Not enough degrees of freedom (status -10)
OPTIMIZATION FAILED...

With the more complicated version I get the following error:

Storage.integrate: ERROR- aI1 >= aI2.

Can anyone help me out?

Thank you,

Joseph Alston

User avatar
James Chalfant
Posts: 2
Joined: Tue Jun 02, 2009 11:18 am

RE: CMC troubles

Post by James Chalfant » Tue Jul 28, 2009 1:46 pm

Im having similar problems with CMC. The RRA works fine and then the CMC refuses to run. Is there a tutorial for using the CMC somewhere? I don't think it will help but Im willing to try anything.

User avatar
Anders Sandholm
Posts: 30
Joined: Thu Feb 22, 2007 1:53 pm

RE: CMC troubles

Post by Anders Sandholm » Wed Jul 29, 2009 2:14 am

Hi

I had to work a bit with this to get it working but some things that helped me ( most of these suggestions I got from Ayman Habib, so all credit to him)

1: Read the homepage, http://wiki.simtk.org/opensim/rraCmcPage

2: Check your ground reaction force, does it align up with the correct time frame
(you can read the mot file into matlab)

3: check your model and setup files, like Actuators and Task. Have you looked or unlocked any joints in the model file? If so, you have to change these file so everything match. Like the subtalar or mtp joint.

4: kp and kv parameters, if the motion is fast you might have to increase these, see the manual and homepage for equation.

5: Weights, there are plenty of them, use higher values of joints/markers you are confident in. Check your IK solution, is this what you want. Does you motion need the mtp or subtalar joint?

6: (And that help me most) in the Actuators file, you have reserve actuators (read OpenSim users guide for more info about these) enable them, except for the joints you have looked.
The idea is that you should not need these, but sometime the model is not strong enough, and this give it some extra force, but read the manual for more info.

Hope this helped a bit.

cheers

User avatar
Anders Sandholm
Posts: 30
Joined: Thu Feb 22, 2007 1:53 pm

RE: CMC troubles

Post by Anders Sandholm » Wed Jul 29, 2009 2:20 am


some more things, in the Setup file,

read and take a look of the following paramters

maximum_number_of_integrator_steps
maximum_integrator_step_size
integrator_error_tolerance
integrator_fine_tolerance
optimizer_max_iterations

for CMC also make sure that
adjust_com_to_reduce_residuals is set to false

cheers

User avatar
Anders Sandholm
Posts: 30
Joined: Thu Feb 22, 2007 1:53 pm

RE: CMC troubles

Post by Anders Sandholm » Wed Jul 29, 2009 2:27 am


I am so sorry about the spamming, but i just remembered another thing that might also help.

When you have done the scaling, the pelvis COM location has changed, and you have to MANUAL change this in the Actuator files for the RRA. The RRA gives you a new model file, with a new COM for the pelvis and this has to be changed in the CMC actuator files.
(So you have to do this twice)

In the osim file you have something like

<mass_center> -0.07357895 0.00000000 0.00000000 </mass_center>

copy these values and past them into the actuator file under FX, FY and FZ under point_B

<Force name="FX">
<optimal_force> 100.00000000 </optimal_force>
<body_A> ground </body_A>
<point_A> 0.000 0.000 0.000 </point_A>
<direction_A> -1.000 0.000 0.000 </direction_A>
<body_B> pelvis </body_B>
<point_B> -0.0724376 0.00000000 0.00000000 </point_B>
</Force>

cheers

POST REPLY