Execute subsystem in Simulink if condition is met for 5 seconds?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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?
0 commentaires
Réponse acceptée
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
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Schedule Model Components dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!