DEV: Standardabweichung berechnen (S7-300, S7-400) - STEP 7

Erweiterte Anweisungen (S7-300, S7-400)

ft:publication_title
Erweiterte Anweisungen (S7-300, S7-400)
Product
STEP 7
Version
V20
Publication date
11/2024
Language
de-DE
DEV: Standardabweichung berechnen

Beschreibung

Die Anweisung errechnet die Standardabweichung von einer Gruppe von Werten, die in einer Tabelle (Anweisung "TBL") gespeichert sind. Das Ergebnis wird in OUT abgelegt. Die Standardabweichung wird nach folgender Formel berechnet:

Dabei gilt:

  • Summe = Summe der Werte in der Anweisung "TBL"

  • N = Anzahl der Werte in der Anweisung "TBL"

  • QuSumme = Summe aller Werte in der Anweisung "TBL" zum Quadrat

Alle Berechnungen verwenden IEEE-Gleitpunktwerte, wobei die Datentypen, sofern erforderlich, automatisch von der Anweisung "DEV" umgewandelt werden.

  • Der erste Eintrag in der Tabelle gibt die Anzahl der Einträge in der Tabelle (Tabellenlänge) an.

  • Der zweite Eintrag der Tabelle enthält den ersten Wert in der Tabelle.

  • Die Größe der Tabelleneinträge und der errechnete Wert (Parameter OUT) werden von dem Parameter E_TYPE festgelegt.

Parameter

Die folgende Tabelle zeigt die Parameter der Anweisung "DEV":

Parameter

Deklaration

Datentyp

Speicherbereich

Beschreibung

TBL

Input

*Pointer

E, A, M, D

**Zeigt auf die Anfangsadresse der Tabelle mit den Werten.

OUT

Input

*Pointer

E, A, M, D

**Zeigt auf die Adresse, die den errechneten Wert für die Standardabweichung enthält.

E_TYPE

Input

BYTE

E, A, M, D, L, P

Gibt den Datentyp der Tabelleneinträge an. Die folgenden Datentypen sind gültig:

B#16#05 = INT

B#16#07 = DINT

B#16#08 = REAL

RET_VAL

Return

WORD

E, A, M, D, L, P

Gibt den Wert W#16#0000 aus, wenn die Operation fehlerfrei ausgeführt wird.

* Pointer im Doppelwortformat bei der bereichsübergreifenden, registerindirekten Adressierung
** Quell- und Zieldatenbaustein müssen identisch sein

Weitere Informationen zu den gültigen Datentypen finden Sie unter "Übersicht über die gültigen Datentypen".

Parameter RET_VAL

Wenn eine der folgenden Bedingungen auftritt, wird die Anweisung "DEV" nicht ausgeführt. Der Signalzustand von BIE / ENO wird auf "0" und der Rücksprungwert entsprechend gesetzt:

RET_VAL

Erläuterung

W#16#0001

Für einen Parameter von "DEV" wurde ein ungültiger Speicherbereich angegeben.

W#16#0002

Der Parameter E_TYPE ist ungültig.

W#16#0004

Die Tabellenlänge beträgt Null.

Beispiel (KOP)

Wenn der Signalzustand von Eingang E 0.0 = 1 ist (aktiviert), dann wird die Anweisung "DEV" ausgeführt. In diesem Beispiel gibt es fünf Tabellenwerte. Dies gibt das erste Wort in der Tabelle an. Die Tabellenwerte sind vom Datentyp REAL. Dies gibt der Parameter E_TYPE an.

Wenn "DEV" fehlerfrei ausgeführt wird, dann werden die Signalzustände von ENO und A 0.0 auf "1" und RET_VAL auf "W#16#0000" gesetzt.

Vor der Bearbeitung:

TBL (Tabellenlänge)

DBW100 = W#16#0005

DBD102 = 2.0

DBD106 = 4.0

DBD110 = 8.0

DBD114 = 16.0

DBD118 = 32.0

OUT

DBD130 = 0.0

Nach der Bearbeitung:

OUT

DBD130 = 12.19836055