Rate transition inside function call subsystem

8 views (last 30 days)
Niels Divens
Niels Divens on 18 Jan 2023
Edited: Spruha on 24 Apr 2025
Dear,
I try to run a multi rate model using function call subsystems.
However, I get following error:
'MasterModel/FastTask/Ctl/M1/Speed/AT_FirstOrderFilter_Reset/AT_DiscreteTimeIntegrator_Backward_Reset/AT_ResetMethod/AT_Ground/Rate Transition' is a rate transition block. A rate transition block is not allowed inside the function call subsystem 'MasterModel/FastTask' unless its input or output port sample time is asynchronous sample time. Consider placing the rate transition block outside the function call subsystem.
Since the rate transition block in the function call subsystem is part of a large custom simulink library, I cannot just remove it or put elsewhere.
How could I resolve this issue?
Kind regards,
Niels

Answers (1)

Spruha
Spruha on 24 Apr 2025
Edited: Spruha on 24 Apr 2025
Hi Niels,
I see you are trying run a multi-rate Simulink model using function-call subsystems. However, you are encountering an error for rate transition block that it is not allowed in function call subsystem unless its input/output sample time is asynchronous.
This can be resolved using Asynchronous sample time for input/ output ports.
Another approach is to linearize your multi-rate model.
Refer this documentation about Linearizing Multirate Models: https://www.mathworks.com/help/slcontrol/ug/linearize-multirate-models.html
Refer this to documentation for Function-Call Subsystems and rete transition block:
Hope this helps!

Categories

Find more on Modeling in Help Center and File Exchange

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!