Execute subsystem in Simulink if condition is met for 5 seconds?

2 vues (au cours des 30 derniers jours)
Andrew Poissant
Andrew Poissant le 26 Nov 2019
Commenté : Fangjun Jiang le 29 Jan 2024
I have a subsystem that I want executed in Simulink when a variable, RC_flag, is equal to 0 for 5 seconds. I have RC_flag updating at each Simulink time step, and I have Elapsed Real Time block to output the elapsed real time since the start of the simulation (different than the Simulink time step). How do I combine these two variables to execute my subsystem when RC_flag = 0 for 5 seconds?

Réponse acceptée

Fangjun Jiang
Fangjun Jiang le 26 Nov 2019
Do an equal comparison (==) between RC_flag and zero, generate this int_flag. Feed int_flag to an Integrator. If the output of the Integrator is greater than 5, then execute the subsystem.
Enable the external reset of the Integrator block. Use the int_flag and specify "falling" edge to reset the Integrator. Any change of the int_flag during the 5 seconds will reset the Integrator block.
  6 commentaires
Sharanya
Sharanya le 28 Jan 2024
Hello
Could you please explain what you mean by generating int_flag?
Fangjun Jiang
Fangjun Jiang le 29 Jan 2024
int_flag=(RC_flag ==0)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Schedule Model Components dans Help Center et File Exchange

Tags

Produits


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by