# Betrag eines Wertes errechnen



## Flo (16 September 2006)

Hallo,

Ich möchte gerne von einer Variablen (REAL) den Betrag ermittlen. Gibts dafür einen IEC Baustein oder kann man so was selber machen (arbeite für dieses Programm mit 3S)? 

Irgendwas in der Richtung:

Var
FB_Betrag : "Function???"
End_Var


FB_Betrag(IN: Aktueller_Wert , OUT: Betrag_Aktueller_Wert)


----------



## Rainer Hönle (16 September 2006)

Existiert dort die Funktion ABS()?


----------



## zotos (16 September 2006)

Ich habe die Aufgabe auch nicht verstanden...
ich dachte es wäre die Funktion TRUNC (schneidet einfach die Kommastellen ab).
Im CoDeSys Forum habe ich eine Möglichkeit zum Runden.


----------



## Rainer Hönle (16 September 2006)

TRUNC wandelt eine Gleitpunktzahl in eine Ganzzahl und rundet dabei gemäß IEEE-Rundungsmodus 'Round to Zero'. Der Betrag ist grob gesagt der positive Anteil einer Zahl.


----------



## lefrog (16 September 2006)

Hallo!

Der Betrag einer Zahl ist doch, wenn ich nicht irre, der Wert ohne berücksichtigung des Vorzeichens. Kannst Du dass denn nicht selber so aufbauen, dass wenn die Zahl größer Null ist, dann bleibt sie wie sie ist, und wenn sie kleiner Null ist, dann einfach mit -1 multiplizieren? Oder mache ich einen Denkfehler und sehe das als zu trivial an?

Viele Grüße, Tobias


----------



## zotos (16 September 2006)

Dann wäre ja das von "Rainer Hönle" erwähnte ABS() genau das richtige.


----------



## Flo (17 September 2006)

Ja, der "ABS" - Baustein erfüllt genau was ich suche. Danke für den Rat.

Flo


----------

