How to get a threshold in Simulink that works in both directions and that make an action once per passing

3 vues (au cours des 30 derniers jours)
Hi,
I have a simulink model where I have a signal that varies with a repeating sequence stair input. If this value passes a threshold value of 0.1 (both positive and negative direction) I want another number (let say 1000) to be withdrawn by 2 every time a passing takes place. So if there have been 5 passes (both up and down) in total, the number should end up being 990.
I thought this was going to be easy, but have still not been able to solve this.
Regards,
Jørgen

Réponse acceptée

Shubhankar Poundrik
Shubhankar Poundrik le 2 Juil 2020
Modifié(e) : Shubhankar Poundrik le 2 Juil 2020
Hi Jorgen,
I understand that you want to decrement (or increment) a variable whenever a signal goes past a certain value.
A model similar to the one below may be helpful.
The value from which the output should start (1000 in given case) should be put as the initial value in the output delay block.
Regards,
Shubhankar.

Plus de réponses (1)

Jonas
Jonas le 6 Juil 2020
Modifié(e) : Jonas le 6 Juil 2020
There are multiple ways to do it. I would do it like this. It might inspire you. The variable State should be initialised to 1000.

Catégories

En savoir plus sur General Applications dans Help Center et File Exchange

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by