Proper if/else statement in appdesigner

3 vues (au cours des 30 derniers jours)
Tudor Miron
Tudor Miron le 14 Oct 2022
Déplacé(e) : Voss le 14 Oct 2022
In app designer I would like to setup an if/else function that will control the lamp color. I want a value to be within 5% of control value to activate a lamp. I’m trying the below statement but it doesn’t seem to work even when values are exactly the same.
if app.rr_camber_ref.Value >= app.rr_camber.Value*0.95 && app.rr_camber_ref.Value <=app.rr_camber.Value*1.05
app.Lamp_rr_camber.Color='g';
else...
Can someone suggest what would be proper condition statement in this case?
Thank you,
Ted
  3 commentaires
Cris LaPierre
Cris LaPierre le 14 Oct 2022
What components are you using for app.rr_camber_ref and app.rr_camber? What are typical values for each?
Tudor Miron
Tudor Miron le 14 Oct 2022
Modifié(e) : Tudor Miron le 14 Oct 2022
I'm in a process of creating a simple app to aid in static setup of race vehicle (multibody model). Setup parameters of interest are dispayed in gui and I created additional displays for this setup parameters where I can save current values as reference of baseline setup. If I change some setting (front camber for example) I wanted to see which of the rest of setup parameters changed simultaneously (and lots of them do) and require resetting to baseline values so that I test that camber change only rather than multitude of other unintended setup changes. Green lamp will indicate if value of setup parameter is within prescribed tolerance of baseline setup parameter.
5% was just an arbitrary number that I used for my question.
Jan’s suggestion to assign values to variables and use those variables in IF/ELSE statement worked perfectly.

Connectez-vous pour commenter.

Réponse acceptée

Jan
Jan le 14 Oct 2022
Ref = app.rr_camber_ref.Value;
Value = app.rr_camber.Value;
if abs(Value - Ref) / abs(Ref) < 0.05
app.Lamp_rr_camber.Color='g';
  2 commentaires
Tudor Miron
Tudor Miron le 14 Oct 2022
Déplacé(e) : Voss le 14 Oct 2022
Thanks Jan,
Assigning relevant values to a variable and than using this variables in IF/ELSE statement worked just fine.
Thank you!
Ted
Walter Roberson
Walter Roberson le 14 Oct 2022
Déplacé(e) : Voss le 14 Oct 2022
I suspect it was more the difference in how the test was calculated, not so much the fact that variables were assigned to.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur App Building 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!

Translated by