Question about frictional contact elements


I want to add frictional contact elements between the exoskeleton thigh and the human thigh. I used the code in SeatedHuman-Support.any, but I encountered some problems. How many contact elements should I add and how to set UserDefinedLimitLow/High. Because the exoskeleton and the human thigh are in constant contact. I read the tutorial on the Wiki, but I still don’t understand it. Any help would be greatly appreciate. Thank you in advance.

Best regards

Hi Zhou,

You should decide yourself how many contact elements to use. Contact elements should adequately describe contact area. For example, if you have a ring tightly wrapping the thigh - you may want to use 4 to many points on the inner circumference to describe the contact, or if you have a 1 sided localized contact - then a single point will be sufficient.

If you want the exo and thight to be in contact always, set the low limit to 0 and high to high value. Limits are effectively distance thresholds when contact elements will be activated.


Hi Pavel,

Thank you very much for your suggestion, it helped me a lot. I created 8 contact elements on both human thighs and shanks, and connected them to the THIGH_PART and Shank_PART of the exoskeleton. But this error occurred when I ran the inverse dynamic analysis: Muscle recruitment solver: solver aborted due to singular KKT matrix. Could you tell me how to solve this problem?Thanks a lot.

Best regards

Hi Zhou,

The KKT matrix problems are quite often discussed in detail on the forum. Please try searching for the error message next time - you may find the answer right away.

But it typically indicates that you have a problem with balance in the system. For example, one of the degrees of freedom is not supported by muscles or reaction forces or environment, or supporting muscles are too weak, or accelerations of the relevant segments are too high for the muscles to generate such motion. I don't know your exact problem - so cannot help here. Try to think about your motion and what should govern this motion.

An example could be that if you try to model a seated human without having the chair under the human - muscles would not support this posture and you would get a KKT error. Adding a large extension joint torque at the knee could help resolving this. Something similar might help in your case - maybe your exoskeleton creates an instability. Can human do this motion without exoskeleton? It is up to you to analyze your particular problem.

Kind regards,

This topic was automatically closed 125 days after the last reply. New replies are no longer allowed.