Bausteine für sichere Logik

Bausteine für sichere Logik werden für das Entwickeln von sicherheitsrelevanten Anwendungen verwendet.

Für das Entwickeln von sicherheitsrelevanten Anwendungen müssen Sie eine Neuron Power Engineer-Version verwenden, die für diesen Zweck qualifiziert ist. Siehe die englische Dokumentation "Sicherheitshinweise zum Arbeiten mit der IDE" für die entsprechenden Informationen und gültigen Sicherheitshinweise. Wenden Sie sich an Ihren Systemintegrator, um diese Dokumentation zu erhalten.

Basis-Variante

Die Bausteine für sichere Logik sind bestimmte Systembausteine, die als sichere Logik gekennzeichnet werden, wenn diese wie folgt mit einem sicheren Wert versorgt werden:

  • Mindestens ein Baustein-Eingang (inkl. dem Eingang EN) erhält einen sicheren Wert.
    Ein sicherer Wert ist der Wert einer →Variable, die auf Basis eines Safe-Datentyps deklariert ist. Ausdrucke laut ST (inkl. Operanden in ST und Operatoren in ST) können zur Auswertung von sicheren Werten verwendet werden – solange keine Variable verwendet wird, die einen nicht-sicheren Wert liefert.
    Vergleiche: Ein nicht-sicherer Wert ist der Wert einer Variable, die auf Basis eines anderen →Datentyps deklariert ist, bzw. ein Ausdruck mit so einer Variable.

  • Für alle anderen Baustein-Eingänge gilt einer der folgenden Punkte:

    • Der Eingang ist unbeschaltet, d.h. mit keinem anderen FBS-Element verbunden.

    • Der Eingang erhält einen sicheren Wert (siehe oben).

    • Der Eingang erhält einen konstanten Wert von einem Wertfeld, das ein Literal enthält. Ausdrucke laut ST (inkl. Operanden in ST und Operatoren in ST) können zur Auswertung des konstanten Werts verwendet werden – solange keine Variable verwendet wird, die einen nicht-sicheren Wert liefert.

Beispiel: Der Systembaustein OR ist so ein Baustein für sichere Logik:


Erläuterung:

  • Der linke Aufruf ist als sichere Logik gekennzeichnet, da der 2. Baustein-Eingang mit einem sicheren Wert versorgt wird und alle anderen Eingänge unbeschaltet sind.

  • Der rechte Aufruf ist nicht als sichere Logik gekennzeichnet, da der 1. Baustein-Eingang mit einem nicht-sicheren Wert versorgt wird.

Spezial-Variante

Der Systembaustein AND ist ein Baustein für sichere Logik, der als sichere Logik gekennzeichnet wird, wenn dieser wie folgt mit einem sicheren Wert versorgt wird:

  • Mindestens ein Baustein-Eingang (aber ohne dem Eingang EN) erhält einen sicheren Wert (siehe oben).

  • Für den Eingang EN gilt einer der folgenden Punkte:

    • Der Eingang EN ist unbeschaltet, d.h. mit keinem anderen FBS-Element verbunden.

    • Der Eingang EN erhält einen sicheren Wert (siehe oben).

    • Der Eingang EN erhält einen konstanten Wert von einem Wertfeld, das ein Literal enthält. Ausdrucke laut ST (inkl. Operanden in ST und Operatoren in ST) können zur Auswertung des konstanten Werts verwendet werden – solange keine Variable verwendet wird, die einen nicht-sicheren Wert liefert.

  • Die weiteren Baustein-Eingänge sind für die Kennzeichnung der sicheren Logik nicht relevant. Das bedeutet, diese Eingänge können auch einen nicht-sicheren Wert erhalten.

Hier das Verhalten des Systembaustein AND (mit dem obigen Beispiel):


Erläuterung:

  • Der linke Aufruf ist als sichere Logik gekennzeichnet, da der 2. Baustein-Eingang mit einem sicheren Wert versorgt wird und der Eingang EN unbeschaltet ist.

  • Der rechte Aufruf ist ebenfalls als sichere Logik gekennzeichnet. Die gleichen Bedingungen wie beim linken Aufruf treffen zu. Der 1. Baustein-Eingang wird zwar mit einem nicht-sicheren Wert versorgt, aber dies ist beim AND-Baustein für die Kennzeichnung der sicheren Logik nicht relevant.

Liste der Bausteine (Basis-Variante)

Stellen Sie unbedingt mit Hilfe der Dokumentation "Sicherheitshinweise zum Arbeiten mit der IDE" sicher, ob es Bedingungen für die Verwendung der folgenden Bausteine beim Entwickeln von sicherheitsrelevanten Anwendungen gibt, z.B. ob Aktionen vom Systemintegrator dafür erforderlich sind, damit der Baustein tatsächlich unterstützt wird. Wenden Sie sich an Ihren Systemintegrator, um diese Dokumentation zu erhalten.

Die folgenden Bausteine sind ab Neuron Power Engineer-Version 3.20.0 als Bausteine für sichere Logik verfügbar:

ABS-Baustein

ACOS-Baustein

ADD-Baustein

ADD_TIME-Baustein

ASIN-Baustein

ATAN-Baustein

ATAN2-Baustein

BCD_TO_DINT-Baustein

BCD_TO_INT-Baustein

BCD_TO_LINT-Baustein

BCD_TO_SINT-Baustein

BCD_TO_UDINT-Baustein

BCD_TO_UINT-Baustein

BCD_TO_ULINT-Baustein

BCD_TO_USINT-Baustein

CEIL-Baustein

CONCAT_DATE_TOD-Baustein

CONCAT_DT-Baustein

COS-Baustein

CTD-Baustein

CTD_DINT-Baustein

CTD_INT-Baustein

CTD_LINT-Baustein

CTD_UDINT-Baustein

CTD_UINT-Baustein

CTD_ULINT-Baustein

CTU-Baustein

CTU_DINT-Baustein

CTU_INT-Baustein

CTU_LINT-Baustein

CTU_UDINT-Baustein

CTU_UINT-Baustein

CTU_ULINT-Baustein

CTUD-Baustein

CTUD_DINT-Baustein

CTUD_INT-Baustein

CTUD_LINT-Baustein

CTUD_UDINT-Baustein

CTUD_UINT-Baustein

CTUD_ULINT-Baustein

DIV-Baustein

DIV_TIME-Baustein

DT_TO_DATE-Baustein

EQ-Baustein

EXP-Baustein

EXPT-Baustein

F_TRIG-Baustein

FLOOR-Baustein

FROM_BIG_ENDIAN-Baustein

FROM_LITTLE_ENDIAN-Baustein

GE-Baustein

GT-Baustein

IS_VALID-Baustein

LE-Baustein

LIMIT-Baustein

LN-Baustein

LOG-Baustein

LT-Baustein

MAX-Baustein

MIN-Baustein

MOD-Baustein

MOVE-Baustein

MUL-Baustein

MUL_TIME-Baustein

MUX_BYTE-Baustein

MUX_DINT-Baustein

MUX_DWORD-Baustein

MUX_INT-Baustein

MUX_SINT-Baustein

MUX_UDINT-Baustein

MUX_UINT-Baustein

MUX_USINT-Baustein

MUX_WORD-Baustein

NE-Baustein

NOT-Baustein

OR-Baustein

R_TRIG-Baustein

ROL-Baustein

ROR-Baustein

ROUND-Baustein

RS-Baustein

SEL-Baustein

SEL_BOOL-Baustein

SEL_BYTE-Baustein

SEL_DATE-Baustein

SEL_DINT-Baustein

SEL_DT-Baustein

SEL_DWORD-Baustein

SEL_INT-Baustein

SEL_LINT-Baustein

SEL_LREAL-Baustein

SEL_LWORD-Baustein

SEL_REAL-Baustein

SEL_SINT-Baustein

SEL_TIME-Baustein

SEL_TOD-Baustein

SEL_UDINT-Baustein

SEL_UINT-Baustein

SEL_ULINT-Baustein

SEL_USINT-Baustein

SEL_WORD-Baustein

SHL-Baustein

SHR-Baustein

SIN-Baustein

SPLIT_DT-Baustein

SQRT-Baustein

SR-Baustein

SUB-Baustein

SUB_DT_DT-Baustein

SUB_TIME-Baustein

TAN-Baustein

TO_BCD_BYTE-Baustein

TO_BCD_DWORD-Baustein

TO_BCD_LWORD-Baustein

TO_BCD_WORD-Baustein

TO_BIG_ENDIAN-Baustein

TO_BOOL-Baustein

TO_BYTE-Baustein

TO_DINT-Baustein

TO_DWORD-Baustein

TO_INT-Baustein

TO_LINT-Baustein

TO_LITTLE_ENDIAN-Baustein

TO_LREAL-Baustein

TO_LWORD-Baustein

TO_REAL-Baustein

TO_SINT-Baustein

TO_TIME-Baustein

TO_UDINT-Baustein

TO_UINT-Baustein

TO_ULINT-Baustein

TO_USINT-Baustein

TO_WORD-Baustein

TOF-Baustein

TON-Baustein

TP-Baustein

TRUNC-Baustein

TRUNC_DINT-Baustein

TRUNC_INT-Baustein

TRUNC_LINT-Baustein

TRUNC_SINT-Baustein

TRUNC_UDINT-Baustein

TRUNC_UINT-Baustein

TRUNC_ULINT-Baustein

TRUNC_USINT-Baustein

XOR-Baustein

Liste der Bausteine (Spezial-Variante)

Die folgenden Bausteine sind ab Neuron Power Engineer-Version 3.20.0 als Bausteine für sichere Logik verfügbar (als Spezial-Variante):