Foot Ground Penetration

OpenSim Moco is a software toolkit to solve optimal control problems with musculoskeletal models defined in OpenSim using the direct collocation method.
POST REPLY
User avatar
Grace M
Posts: 27
Joined: Thu Jul 28, 2016 11:11 am

Foot Ground Penetration

Post by Grace M » Sun Jun 18, 2023 11:15 pm

I am having problems getting my model to start above the ground. I have generated a suitable guess/starting position with the scaled model. A rolling surface constraint, as well as a distance constraint between the toes and calcaneus and the ground (minimum value of 1e-10 in the vertical direction) have been applied both separately and together.

In many cases, the model's foot appears to rise from beneath the ground, despite having no actuators on the pelvis translations. In the most severe case, there are no GRF on the starting leg when extracted from the contact spheres.
If the image doesn't show the link is: https://drive.google.com/file/d/1wPz4BI ... sp=sharing
Image

Any insights/ideas on how this might be occurring would be appreciated.

User avatar
Nicholas Bianco
Posts: 980
Joined: Thu Oct 04, 2012 8:09 pm

Re: Foot Ground Penetration

Post by Nicholas Bianco » Mon Jun 19, 2023 11:51 am

Hi Grace,

If you're using foot-ground contact spheres, I wouldn't recommend also using a rolling-on-surface constraint. The rolling constraint is a kinematic constraint that is usually used when applying ground reaction forces in a forward simulation. This kinematic constraint could be preventing the model from starting above the ground, since Moco will be trying to enforce the constraint at all times.

What are you trying to achieve with this simulation?

Best,
Nick

User avatar
Grace M
Posts: 27
Joined: Thu Jul 28, 2016 11:11 am

Re: Foot Ground Penetration

Post by Grace M » Mon Jun 19, 2023 6:37 pm

Hi Nick,

Thanks for your input, I will try again without the rolling-on-surface constraint.
I am trying to track IMU signals for 6 subjects running at 3 different speeds, aiming to use the same parameters for each and achieve kinematics consistent with Mocap. At the moment I am finding my approach still requires some tweaking for each subject, and is particularly sensitive to the initial position/contact modelling.

Kind regards,
Grace

User avatar
Aaron Fox
Posts: 275
Joined: Sun Aug 06, 2017 10:54 pm

Re: Foot Ground Penetration

Post by Aaron Fox » Thu Jun 22, 2023 6:00 pm

Hi Nick,

I'm working with Grace on this project and am interested in your perspective on running Moco simulations with rolling on surface constraints vs. using contact spheres. Can you provide any reasons for using one over the other as a means to prevent surface penetration/predict GRFs? I believe that the the rolling surface constraints couldn't be used in a contact tracking goal, but if there was no desire to track predicted GRFs against experimental data - is there some logic then to use the constraints approach?

Aaron

User avatar
Nicholas Bianco
Posts: 980
Joined: Thu Oct 04, 2012 8:09 pm

Re: Foot Ground Penetration

Post by Nicholas Bianco » Fri Jun 23, 2023 11:25 am

Hi Grace and Aaron,

I don't think it makes sense to use the RollingOnSurfaceConstraint for your application. This constraint can only be applied when the foot is in contact with the ground. It allow rotation in two degrees of freedom, but the foot is still effectively welded in the translational degrees of freedom, which you need "event" conditions to handle when the foot is in and out of contact, which Moco currently doesn't support.

If you only wanted to simulate the stance phase, then this could probably work. It's possible to make this constraint work with a contact tracking goal, but there would need some development on my end to work.

-Nick

User avatar
Aaron Fox
Posts: 275
Joined: Sun Aug 06, 2017 10:54 pm

Re: Foot Ground Penetration

Post by Aaron Fox » Sun Jun 25, 2023 4:31 pm

Thanks Nick.

I had a feeling this constraint could work in a situation with stance and flight phase during gait, but your explanation of events being necessary makes sense why it hasn't been working as expected during the tests I've run.

It would be really neat to eventually have these constraint type foot-ground interactions (e.g. weld, point, rolling) working with contact tracking goals as I feel they offer a simpler option than contact spheres (and all their associated parameters) when simulating movements where ground contact is continuous.

Aaron

User avatar
Grace M
Posts: 27
Joined: Thu Jul 28, 2016 11:11 am

Re: Foot Ground Penetration

Post by Grace M » Sun Jun 25, 2023 5:49 pm

Hi Nick/Aaron,

I have removed the rolling surface constraint but am still finding the frame constraints between the toes and ground and calcaneus and ground appear to still not be adhered to in some simulations as shown.
Screenshot 2023-06-26 100657.png
Screenshot 2023-06-26 100657.png (39.03 KiB) Viewed 532 times
Alternatively, I was wondering if the floor in the visualizer was deceiving - on the subsequent stride which contacts the ground well, the foot also appears partially below the ground.
Screenshot 2023-06-26 101204.png
Screenshot 2023-06-26 101204.png (77.97 KiB) Viewed 532 times
Could this be the case? If not, any ideas why the constraint is violated yet the simulation still solves?

User avatar
Nicholas Bianco
Posts: 980
Joined: Thu Oct 04, 2012 8:09 pm

Re: Foot Ground Penetration

Post by Nicholas Bianco » Mon Jun 26, 2023 11:00 am

Hi Grace,

I would probably remove the distance constraint as well. The optimizer could be struggling with enforcing that constraint while trying to track the contact force data. If you remove all the constraints you should be able to start the model above the ground with fewer problems. I would also recommend adding CoordinateActuators to the pelvis until you get a good contact tracking solution. After that, you can remove the pelvis actuators and solve your original problem.
It would be really neat to eventually have these constraint type foot-ground interactions (e.g. weld, point, rolling) working with contact tracking goals as I feel they offer a simpler option than contact spheres (and all their associated parameters) when simulating movements where ground contact is continuous.
Aaron, good to know, I'll keep this in mind. In the meantime, you might be able to approximate a goal like this using the new MocoOutputTrackingGoal.

Best,
Nick

POST REPLY