SF_TestableSafetySensor-Baustein

Funktionsbaustein

Dieser Funktionsbaustein wird genutzt, um in einer Applikation eine optische/elektronische Schutzeinrichtung - im Folgenden Sicherheitssensor genannt - mit einer Testfunktion zu unterstützen (z.B. Lichtvorhang, BWS Typ 2).

images/download/attachments/521704577/_sf_testablesafetysensor1-version-1-modificationdate-1686303668981-api-v2.png

Schnittstelle

I/O

Bezeichnung

Datentyp

Startwert

Beschreibung

IN

Activate

BOOL

FALSE

siehe Allgemeine Parameter

IN

S_OSSD_In

SAFEBOOL

SAFEFALSE

Variable. Status des Sensorausgangs, z. B. Lichtgitter.

SAFEFALSE: Sicherheitssensor im Testzustand oder Aufforderung zur sicherheitsgerichteten Reaktion.

SAFETRUE:Sensor im Zustand für normale Betriebsbedingungen.

IN

StartTest

BOOL

FALSE

Variable. Eingang zum Starten des Sensortests. Setzt S_TestOut und startet die interne Zeitüberwachungsfunktion im Funktionsbaustein.

FALSE: Kein Test angefordert.

TRUE:Test angefordert.

IN

TestTime

TIME

T#10ms

Konstante. Bereich: 0 bis 150 ms. Testzeit des Sicherheitssensors.

IN

NoExternalTest

BOOL

FALSE

Konstante. Zeigt an, ob ein externer manueller Sensortest unterstützt wird.

FALSE: Der externe manuelle Sensortest wird unterstützt. Erst nach einer kompletten manuellen Sensorschaltfolge ist nach einem fehlerhaften automatischen Sensortest wieder ein automatischer Test möglich.

TRUE: Der externe manuelle Sensortest wird nicht unterstützt.

Nach einem fehlerhaften automatischen Sensortest ist ein automatischer Test ohne manuelle Sensorschaltfolge wieder möglich.

IN

S_StartReset

SAFEBOOL

SAFEFALSE

siehe Allgemeine Parameter

IN

S_AutoReset

SAFEBOOL

SAFEFALSE

siehe Allgemeine Parameter

IN

Reset

BOOL

FALSE

siehe Allgemeine Parameter

OUT

Ready

BOOL

FALSE

siehe Allgemeine Parameter

OUT

S_OSSD_Out

SAFEBOOL

SAFEFALSE

Sicherheitsbezogener Ausgang, der den ESPE-Status anzeigt.

SAFEFALSE: Der Sensor hat eine sicherheitsrelevante Aktionsanforderung oder einen Testfehler.

SAFETRUE: Der Sensor hat keine sicherheitsrelevante Aktionsanforderung UND keinen Testfehler.

OUT

S_TestOut

SAFEBOOL

SAFETRUE

Gekoppelt mit dem Testeingang des Sensors. Obwohl als SAFEBOOL angegeben, wird dieses Signal in der Praxis oft mit einem BOOL-Ausgang verbunden.

SAFEFALSE: Testanfrage gestellt.

SAFETRUE: Keine Testanfrage.

OUT

TestPossible

BOOL

FALSE

Rückmeldesignal an den Prozess.

FALSE: Ein automatischer Sensortest ist nicht möglich.

TRUE: Ein automatischer Sensortest ist möglich.

OUT

TestExecuted

BOOL

FALSE

Eine positive Signalflanke zeigt die erfolgreiche Durchführung des automatischen Sensortests an.

FALSE:

  • Ein automatischer Sensortest wurde noch nicht durchgeführt.

  • Ein automatischer Sensortest ist aktiv.

  • Ein automatischer Sensortest war fehlerhaft.

TRUE: Ein Sensortest wurde erfolgreich durchgeführt.

OUT

SafetyDemand

BOOL

FALSE

Optional. siehe Allgemeine Parameter

OUT

ResetRequest

BOOL

FALSE

Optional. siehe Allgemeine Parameter

OUT

Error

BOOL

FALSE

siehe Allgemeine Parameter

OUT

DiagCode

WORD

16#0000

siehe Allgemeine Parameter

Funktionsbeschreibung

Der Funktionsbaustein überwacht den Status des Sicherheitssensors und stellt diesen an seinem Freigabeausgang S_OSSD_Out dar. Wenn das SAFETRUE-Signal des Sicherheitssensors nach Auslösen der Sicherheitsfunktion zurückkehrt, unterstützt der Funktionsbaustein optional eine Anlaufsperre am Freigabeausgang. Eine weitere optionale Anlaufsperre wird bei einer Aktivierung des Funktionsbausteins und bei einem Kaltstart der Sicherheitssteuerung ausgeführt.

Wenn sich in der Applikation eine mit dem Funktionsbaustein verschaltete optische/elektronische Schutzeinrichtung während des Testvorgangs nicht gemäß des definierten Testalgorithmus verhält, steuert der Funktionsbaustein seinen Freigabeausgang S_OSSD_Out in den sicheren Zustand (SAFEFALSE). Verhält sich die verschaltete optische/elektronische Schutzeinrichtung während des Testvorgangs gemäß des definierten Testalgorithmus, bleibt das Signal am Freigabeausgang S_OSSD_Out auf SAFETRUE.

Dieser Funktionsbaustein detektiert während der Testfunktion beispielsweise:

  • den Verlust der sensitiven Eigenschaften der optischen/elektronischen Schutzeinrichtung

  • die Überschreitung der voreingestellten Reaktionszeit der Schutzeinrichtung

  • ein irreguläres statisches SAFETRUE-Signal der Schutzeinrichtung an S_OSSD_In

Berührungslos wirkende Schutzeinrichtungen (BWS) Typ 2 verfügen über die Möglichkeit einer periodischen Testung auf gefährliche Fehler (z. B. Verlust der sensorischen Fähigkeiten, Überschreitung der spezifizierten Reaktionszeit). Das Testsignal simuliert die Aktivierung des Sicherheitssensors. Bei der Ausführung des Testalgorithmus ist der Sensor maximal 150 ms abgeschaltet. Der Test soll nachweisen, dass jeder Lichtstrahl des Sensors entsprechend der Spezifikation arbeitet. Es muss durch separate/externe Funktionen sichergestellt werden, dass der Test in angemessenen Intervallen durchgeführt wird. Die Eingänge S_StartReset und S_AutoReset dürfen nur dann aktiviert werden, wenn sichergestellt ist, dass beim Anlauf der Sicherheitssteuerung keine gefährlichen Situationen auftreten können.

Hinweis

Es ist zu beachten, dass die am Sensor wirksame Testzeit, die zu einer Deaktivierung der Sensorfunktion führt, sich aus der Summe der Worst Case Responsezeiten am Bus und der parametrierten Testtime ergeben.

Hinweis

Die Steuerung von StartTest und somit die periodische Testdurchführung liegt in Ihrer Verantwortung.

Vor dem Start der Testdurchführung sollte der Ausgangsparameter TestPossible ausgewertet werden. Der periodische Test sollte eigenverantwortlich nach dem Ergebnis der durchgeführten Risikoanalyse ausgeführt werden, indem StartTest von FALSE auf TRUE gesteuert und das Ergebnis am Funktionsbaustein ausgewertet wird.

SAFETRUE-Signal nach Auslösen der Sicherheitsfunktion

Wenn in der Applikation die ausgelöste Sicherheitsfunktion wieder auf SAFETRUE steuert, sorgt der Funktionsbaustein optional (siehe Anlaufsperre) innerhalb des sicheren Steuerungssystems dafür, dass das Freigabesignal nicht allein durch dieses Entriegeln auf SAFETRUE gesteuert wird. Hierzu ist eine weitere manuelle Handlung am Eingangsparameter Reset erforderlich (siehe Anlaufsperre).

Ablauf des Testbetriebs

Es muss beachtet werden, dass während des Testbetriebs 2 Timer zeitversetzt die durch TestTime vorgegebene Zeit durchlaufen.

Der Testbetrieb umfasst die folgenden Sequenzen:

  1. Teststart

    • StartTest wechselt von FALSE auf TRUE.

    • Überwachungszeit 1 wird gestartet.

    • S_TestOut wechselt von SAFETRUE auf SAFEFALSE.

  2. Testdurchführung

    • S_OSSD_In wechselt von SAFETRUE auf SAFEFALSE.

    • S_TestOut wechselt von SAFEFALSE auf SAFETRUE.

    • Überwachungszeit 1 wird gestoppt.

    • Überwachungszeit 2 wird gestartet.

  3. Testende

    • S_OSSD_In wechselt von SAFEFALSE auf SAFETRUE.

    • Überwachungszeit 2 wird gestoppt.

Zusätzliche Information

images/download/attachments/521704601/sf_testablesafetyzeitdiagramm1-version-1-modificationdate-1686303705526-api-v2.png

1) Start

2) Normalbetrieb

3) Unterbrechung

4) Warten

Fehlererkennung

Die folgenden Bedingungen erzwingen einen Übergang in den Fehlerzustand:

  1. Testzeitüberschreitung ohne verzögerte Sensorrückmeldung.

  2. Test ohne Rückmeldung des Sensorsignals.

  3. Ungültiges statisches Reset-Signal im Prozess.

  4. Plausibilitätsprüfung der eingestellten Überwachungszeit.

Fehlerverhalten

Im Fehlerfall wird der Ausgang S_OSSD_Out auf SAFEFALSE gesetzt und verbleibt in diesem sicheren Zustand.

Sobald der Fehler behoben ist und der Sensor eingeschaltet ist (S_OSSD_In = SAFETRUE) – beseitigt ein Reset den Fehlerzustand und setzt den Ausgang S_OSSD_Out auf SAFETRUE.

Wenn S_AutoReset = SAFEFALSE ist, ist beim Reset ein steigender Trigger erforderlich.

Nach Übergang von S_OSSD_In auf SAFETRUE kann die optionale Anlaufsperre durch eine steigende Flanke am Eingang Reset zurückgesetzt werden.

Nach Bausteinaktivierung kann die optionale Anlaufsperre durch eine steigende Flanke am Eingang Reset zurückgesetzt werden.

Fehler- und Statusmeldungen

Funktionsbaustein-spezifische Fehlercodes

DiagCode

Name

Beschreibung und Ausgangseinstellungen

C000

Parameter Error

Ungültiger Wert beim TestTime Parameter. Es sind Werte zwischen 0 und 150 ms möglich.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = TRUE

C001

Reset Error 1

Statischer Reset-Zustand nach Funktionsbaustein-Aktivierung erkannt.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = TRUE

C011

Reset Error 2

Statischer Reset-Zustand im Zustand 8403 erkannt.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = TRUE

C021

Reset Error 3

Statischer Reset-Zustand im Zustand Cx10 erkannt.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = TRUE

C031

Reset Error 4

Statischer Reset-Zustand im Zustand 8406 erkannt.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = TRUE

C041

Reset Error 5

Statischer Reset-Zustand im Zustand C000 erkannt.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = TRUE

C051

Reset Error 6

Statischer Reset-Zustand im Zustand 8413 erkannt.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = TRUE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = TRUE

Cx10

Test Error 1

Testzeit im Zustand 8020 oder 8030 abgelaufen. Wenn S_OSSD_IN = SAFETRUE und NoExternalTest = TRUE, dann x=4 sonst x=0.

Status C410:

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = TRUE

Error = TRUE


Status C010:

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = TRUE

Funktionsbaustein-spezifische Statuscodes (kein Fehler)

DiagCode

Name

Beschreibung und Ausgangseinstellungen

0000

Idle

Funktionsbaustein ist nicht aktiv (Ausgangszustand).

Ready = FALSE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = FALSE

8401

Init

Aktivierung wurde vom Funktionsbaustein erkannt.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = TRUE

Error = FALSE

8802

ESPE Interrupted 1

Der Funktionsbaustein hat eine Sicherheitsanforderung erkannt. Der Schalter wurde noch nicht automatisch getestet.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = TRUE

ResetRequest = FALSE

Error = FALSE

8402

Wait for Reset 1

Nach dem Status 8802 auf steigenden Trigger von Reset warten.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = TRUE

Error = FALSE

8002

External Function Test

Der automatische Sensortest war fehlerhaft. Ein externer manueller Sensortest ist erforderlich. Am Funktionsbaustein wurde die Unterstützung für den notwendigen externen manuellen Sensortest aktiviert (NoExternalTest = FALSE). Eine negative Signalflanke am Sensor ist erforderlich.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = FALSE

8804

ESPE Interrupted External Test

Der automatische Sensortest war fehlerhaft. Ein externer manueller Sensortest ist erforderlich. Am Funktionsbaustein wurde die Unterstützung für den notwendigen externen manuellen Sensortest aktiviert (NoExternalTest = FALSE). Ein TRUE Signal am Sensor ist erforderlich.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = TRUE

ResetRequest = FALSE

Error = FALSE

8404

End External Test

Der automatische Sensortest war fehlerhaft. Ein externer manueller Sensortest ist erforderlich. Am Funktionsbaustein wurde die Unterstützung für den notwendigen externen manuellen Sensortest aktiviert (NoExternalTest = FALSE). Der externe manuelle Test ist abgeschlossen. Der Funktionsbaustein hat einen kompletten Sensorschaltzyklus (extern gesteuert) erkannt.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = TRUE

Error = FALSE

8010

ESPE Free No Test

Der Funktionsbaustein hat keine Sicherheitsanforderung erkannt. Der Sensor wurde nicht automatisch getestet.

Ready = TRUE

S_OSSD_Out = SAFETRUE

S_TestOut = SAFETRUE

TestPossible = TRUE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = FALSE

8806

ESPE Interrupted 2

Der Funktionsbaustein hat eine Sicherheitsanforderung erkannt. Der Schalter wurde automatisch getestet.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = TRUE

SafetyDemand = TRUE

ResetRequest = FALSE

Error = FALSE

8406

Wait for Reset 2

Nach dem Status 8812 auf steigenden Trigger von Reset warten.

Ready = TRUE

S_OSSD_Out = SAFEFALSE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = TRUE

SafetyDemand = FALSE

ResetRequest = TRUE

Error = FALSE

8020

Test Request

Der automatische Sensortest ist aktiv. Der Test-Timer wird zum ersten Mal gestartet. Das Sendesignal des Sensors wird vom Funktionsbaustein abgeschaltet. Das Signal des Empfängers muss dem Signal des Senders folgen.

Ready = TRUE

S_OSSD_Out = SAFETRUE

S_TestOut = SAFEFALSE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = FALSE

8030

Test Active

Der automatische Sensortest ist aktiv. Der Test-Timer wird zum zweiten Mal gestartet. Das Sendesignal des Sensors wird vom Funktionsbaustein eingeschaltet. Das Signal des Empfängers muss dem Signal des Senders folgen.

Ready = TRUE

S_OSSD_Out = SAFETRUE

S_TestOut = SAFETRUE

TestPossible = FALSE

TestExecuted = FALSE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = FALSE

8000

ESPE Free Test ok

Der Funktionsbaustein hat keine Sicherheitsanforderung erkannt. Der Sensor wurde automatisch getestet.

Ready = TRUE

S_OSSD_Out = SAFETRUE

S_TestOut = SAFETRUE

TestPossible = TRUE

TestExecuted = TRUE

SafetyDemand = FALSE

ResetRequest = FALSE

Error = FALSE