ST-Positionierung

c.wehn

Level-2
Beiträge
609
Reaktionspunkte
47
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich habe ein Problem und zwar habe ich ja einen Position Sollwert und einen Istwert....

Der ist mir ja in der Anlage nicht um 100% identisch sondern weicht prozentual ab.

Meine Frage...

wie kann ich in ST dazu eine abfrage programmieren?

Quasi:

if wert_ist(+-10) = wert_soll
then;
.....



liebe grüße
 
Hallo,

ich mache es immer so:

IF (Sollwert + 10) > Istwert OR (Sollwert - 10) < Istwert THEN
Sollwert_Erreicht:=TRUE;
ELSE
Sollwert_Erreicht:=FALSE;
END_IF

MfG

Marcel
 
was ist denn ABS?


Ich hab es so gelößt....

if ein then
stg := sw - sh > iw or iw < sw + sh;
if iw < sw -sh then
stg := false;
end_if;
else stg := false;
end_if;


lg
 
Hallo,
ABS bildet den (vorzeichenlosen bipolaren) Absolutwert einer Realzahl - also : ABS(-12.5) = 12.5 genauso wie ABS(12.5) = 12.5.
Der Vorschlag von Markus würde dann also etwas Code einsparen ...

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Allerdings kennt mein Programm diesen befehl leider nicht, also muss ich wohl bei meiner lösung bleiben!
Bei der ersten lösung ist der schmitt-trigger in einer richtung offen :(
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ibaLogic 3.90g,

also im ST fehlen mir viele funktionen wie while, continue etc...

Hallo,

um die ABS-Funktion in ibaLogic V3 auch im Structured Text zu nutzen muss der Funktionsname angegben werden wie er auch im Treeview unter Basic Functions -> Arithmetic gelistet ist.

Für einen REAL- bzw. LREAL-Wert sieht der ST-Code folgendermaßen aus

out0 := fabs(-12.5); (* Ergebnis = 12.5 *)

für einen Integer-Wert muss folgende ST-Codezeile verwendet werden

out0 := iabs(-12); (* Ergebnis = 12 *)
 
Zuletzt bearbeitet:
Zurück
Oben