SimMechanics - Spherical Joint "kinematic constraint cannot be maintained"

89 visualizaciones (últimos 30 días)
Hi,
I developed a more or less complex SimMechanics model with different types of joints. The model diagram can be updatet as well as the visualization in the mechanics explorer without any problems. But when I want to simulate the model, there is always a failure with the spherical joints. The following message comes up:
"kinematic constraints cannot be maintained. Check solver type and consistency tolerance in the Simscape Solver Configuration block. Check Simulink solver type and tolerances in Model Configuration Parameters. A kinematic singularity might be the source of this problem."
Do you have any clue how to solve this problem or how to analyze it?
Thank you very much in advance!
Kind regards, Chris

Respuestas (3)

Guy Rouleau
Guy Rouleau el 25 de Jul. de 2013
Open the loop by removing one of the joints. Then connect one sensor on each CS that was connected to the loop. Simulate for 0 seconds. You should see that their position does not match. Then go up on the branch that is not where you think it should be and you should be able to figure out why the loop cannot be closed.
  1 comentario
Mohammed
Mohammed el 19 de En. de 2016
This is in First generation. How can I connect sensor on each CS in Second generation to know their positions don't match

Iniciar sesión para comentar.


Christopher
Christopher el 26 de Jul. de 2013
Thanks to you both for your answers!! @ Tony: There are several spherical joints and revolute joints. What more information do you need?
@ Guy: I did this. The position deviation is less than 1e-11 [m]. That should be ok, is it?
If I increase the consistency tolerance in the solver configuration to about 1e-1 the model runs for a few seconds. But the position of the joints is moving and it looks like the joints are not assembled.
  1 comentario
Muhammad Suleman Shafqat
Muhammad Suleman Shafqat el 31 de Oct. de 2023
I was facing similar issue, increasing relative tolerance from 1e-3 to 1e-1 worked for me. Thanks

Iniciar sesión para comentar.


Christopher
Christopher el 26 de Jul. de 2013
Maybe this helps: In the model report the actual position of the critical joint is:
[-0.000106783 -0.00283271 -0.999996], +6.5531e-10

Categorías

Más información sobre Assembly en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by