Using simscape's unidirectional clutch with multibody

4 vues (au cours des 30 derniers jours)
Florian
Florian le 27 Jan 2025
Commenté : Umar le 28 Jan 2025
Hello,
I am trying to attach a unidirectional clutch to a revolute joint using a multibody rotational interface and a rotational reference however this doesn't seem to work.
What happen is that the "disengaged phase" goes well but at the moment the relative velocity between the hub and the ring changes direction the simulation crashes with the following message :
An error occurred during simulation and the simulation was terminated
Caused by:
['Modele_RZ/Solver Configuration']: Transient initialization at time 1.903, solving for consistent states and modes, failed to converge.
Nonlinear solver: Linear Algebra error. Failed to solve using iteration matrix.
The model may not give enough information to make it possible to solve for values of some of its variables. Specific advice is given below.
all components and nodal across variables involved
Cannot solve for one or more variables:
'Roue_Libre_Haut_Avant.Rotational_Multibody_Interface.t' (t)
'Roue_Libre_Haut_Avant.Rotational_Multibody_Interface.torque' (Torque)
'Roue_Libre_Haut_Avant.Rotational_Multibody_Interface_t0' (Rotational_Multibody_Interface_t0)
'Roue_Libre_Haut_Avant.Unidirectional_Clutch.fundamental_clutch.clutch.t' (Torque)
'Roue_Libre_Haut_Avant.Unidirectional_Clutch.fundamental_clutch.torque' (Torque)
I have tried a bunch of modification but nothing seems to work...
I would appreciate a bit of help.

Réponse acceptée

Umar
Umar le 27 Jan 2025

Hi @Florian ,

After going through your comments, please see my suggestions listed below.

Review Initial Conditions: Ensure that the initial conditions for all components are set correctly. This includes the initial angular positions and velocities of the hub and ring.

% Example of setting initial conditions   set_param('Roue_Libre_Haut_Avant.Rotational_Multibody_Interface',   'InitialCondition', '0');

Adjust Solver Settings: Experiment with different solver    settings. 

For instance, try using a different solver or adjusting the tolerances to see if it improves convergence.

   

% Example of changing solver settings set_param('Roue_Libre_Haut_Avant', 'Solver',       'ode45', 'RelTol', '1e-6', 'AbsTol', '1e-6');


Simplify the Model: If possible, simplify the model to isolate the problem. Remove or deactivate components to identify if a specific part of the model is causing the issue.

Check for Discontinuities: Ensure that there are no abrupt changes in the model that could lead to discontinuities in the equations of motion. This is particularly important for nonlinear components like clutches.

Use Diagnostic Tools: Utilize MATLAB's diagnostic tools to analyze the model for potential issues. The Model Advisor can help identify common problems in the setup.

In addition to these suggestions, please click the link below to help you further.

https://www.mathworks.com/help/simscape/ug/troubleshooting-simulation-errors.html

Hope this helps.

  4 commentaires
Florian
Florian le 27 Jan 2025
Hi again,
I added a rotational damper to smooth out the discontinuity and it works !
Thank you for your help
Umar
Umar le 28 Jan 2025

Hi @Florian,

Thank you for your email and for sharing the positive update regarding the addition of the rotational damper. I am pleased to hear that it has effectively addressed the discontinuity issue.

Your proactive approach in implementing this solution is commendable, and I appreciate your efforts in improving our project’s performance. If you have any further insights or require additional assistance, please do not hesitate to reach out.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Discrete Events and Mode Charts dans Help Center et File Exchange

Produits


Version

R2024b

Community Treasure Hunt

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

Start Hunting!

Translated by