Why is my Simscape Multibody model using the Reduced Order Flexible Solid block hangs or errors out?
13 views (last 30 days)
I am simulating a Simscape Multibody model where the Reduced Order Flexible Solid block is used in a closed kinematic loop along with the Spatial Contact force block.
When simulating the model using a variable-step solver, the simulation has a tendency to hang (take very small steps) when oscillations are damping out toward zero.
When simulating the model using a fixed-step solver like ode14x or ode1be, the simulation results are showing unexpected "jumps" or disturbances when the system should be close to a steady state. In some cases, the simulation can also error out with:
An error occurred while running the simulation and the simulation was terminated
Caused by: ['blockpath']: 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.
This issue might be due to the perturbation level used by Simulink stiff solvers. When the states of the Reduced Order Flexible Solid block have a small amplitude, numerical noise can be introduced in the Jacobian computation, leading to such issues.
As a workaround, try executing attached file plimitDerivativePerturbations.p to limit the perturbation level used by stiff solvers. This file needs to be executed once per MATLAB session