Mathematische Funktionen für Gleitpunktzahlen in FUP

Mathematische Gleitpunktzahl-Funktionen

In Steuerungsprogrammen können mathematische Berechnungen mit Berechnungen mit Ganzzahlen und Berechnungen mit Gleitpunktzahlen durchgeführt werden. In Step7 befinden sich unterhalb des Knotens Gleitpunkt-Funktionen alle Bausteine, mit denen Gleitpunktzahlfunktionen durchgeführt werden kann. Gleitpunktzahlen haben eine Länge von 32 Bits und sind vom Typ REAL. Folgende Berechnungen kann man damit durchführen:

  • ADD_R Addition von Gleitpunktzahlen
  • SUB_R Subtraktion von Gleitpunktzahlen
  • MUL_R Multiplikation von Gleitpunktzahlen
  • DIV_R Division von Gleitpunktzahlen

Folgende Zusatzfunktionen sind für Gleitpunktzahlen vorhanden:

  • ABS Bilden des Absolutwertes einer Gleitpunktzahl
  • SQR Bilden des Quadrates einer Gleitpunktzahl
  • SQRT Bilden der Quadratwurzel einer Gleitpunktzahl
  • EXP Bilden des Exponentialwertes einer Gleitpunktzahl auf der Basis e
  • LN Bilden des natürlichen Logarithmus einer Gleitpunktzahl
  • SIN Bilden des Sinus eines Winkels der als Gleitpunktzahl dargestellt ist
  • ASIN Bilden des Arcussinus eines Winkels der als Gleitpunktzahl dargestellt ist
  • COS Bilden des Cosinus eines Winkels der als Gleitpunktzahl dargestellt ist
  • ACOS Bilden des Arcuscosinus eines Winkels der als Gleitpunktzahl dargestellt ist
  • TAN Bilden des Tangens eines Winkels der als Gleitpunktzahl dargestellt ist
  • ATAN Bilden des Arcustangens eines Winkels der als Gleitpunktzahl dargestellt ist

Ausführliche Erläuterung unter Gleitpunktzahlen in KOP.

Durch die maximale Bitlänge von 32 Bits beim Typen REAL ergeben sich zwangsläufig Beschränkungen hinsichtlich des Zahlenraums. Solche Bereichsüberschreitungen kann man mit den Statusbits OV, OS, A0 und A1 im Statuswort auswerten. Dabei haben die Bits folgende Signalzustände:

Ungültiger Bereich A1 A0 OV OS
Unterschreitung
-1.175494E-38 < Ergebnis < - 1.401298E-45 (negative Zahl)
0 0 1 1
Unterschreitung
+1.401298E-45 < Ergebnis < +1.175494E-38 (positive Zahl)
0 0 1 1
Überlauf
Ergebnis < -3.402823E+38 (negative Zahl)
0 1 1 1
Überlauf
Ergebnis > 3.402823E+38 (positive Zahl)
1 0 1 1
keine gültige Gleitpunktzahl oder unzulässige Operation
(Eingangswert außerhalb des gültigen Wertebereichs)
1 1 1 1
Gültiger Bereich A1 A0 OV OS
+0, -0 (Null) 0 0 0 *
-3.402823E+38 < Ergebnis < -1.175494E-38 (negative Zahl) 0 1 0 *
+1.175494E-38 < Ergebnis < 3.402824E+38 (positive Zahl) 1 0 0 *

* Ohne Einfluss auf das OS-Bit.

Übersicht über mathematische Grundberechnungen mit Gleitpunktzahlen

Übersicht mathematische Funktionen mit Gleitpunktzahlen