Skip to main content

SF_Antivalent

適用される安全基準

SF_Antivalent 認定されたPLCopen機能ブロックです。適用される規格の詳細については、「PLCopen –技術委員会5 –安全ソフトウェア」を参照してください。

重要

規格に記載されている要件は、ユーザーが満たす必要があります。

インターフェイスの説明

この機能ブロックは、2つのアンチバレントを変換します SAFEBOOL 入力(NO/NC ペア)1つに SAFEBOOL 不一致時間監視付きの出力。このFBには再起動インターロックがないため、スタンドアロンで使用しないでください。出力を他の安全関連機能に接続する必要があります。

13. VAR_INPUT

名前

データ・タイプ

初期値

説明、パラメータ値

Activate

BOOL

FALSE

見る 一般的な入力パラメータ

S_ChannelNC

SAFEBOOL

FALSE

変数

NC を意味する Normally Closed

NC接続用入力

FALSE:NCコンタクトオープン

TRUE:NC接点が閉じています

S_ChannelNO

SAFEBOOL

TRUE

変数

NO ノーマルオープンの略です

の入力 NO 繋がり

FALSE: NO 接点オープン

TRUE: NO 接点が閉じられています

DiscrepancyTime

TIME

T#0ms

絶え間ない

両方の入力の不一致ステータスの最大監視時間

注意事項「DiscrepancyTime」を遵守する必要があります。



DiscrepancyTime

拡張レベルの開発者に適用: DiscrepancyTime 入力は一定の値でアクティブにする必要があります。したがって、呼び出しの値を変更してはなりません。

14. VAR_OUTPUT

名前

データ・タイプ

初期値

説明、パラメータ値

Ready

BOOL

FALSE

見る 一般的な出力パラメータ

S_AntivalentOut

SAFEBOOL

FALSE

安全関連の出力

FALSE:最低1つの入力信号「非アクティブ」または監視時間外のステータス変化

TRUE:両方の入力信号が「アクティブ」であり、監視時間内にステータスが変化します。

SafetyDemand

BOOL

FALSE

見る 一般的な出力パラメータ

Error

BOOL

FALSE

見る 一般的な出力パラメータ

DiagCode

WORD

16#0000

見る 診断コード



ヒント

「アンチバレント」とは、通常の動作中、2つの入力が同時に反対の状態にあることを意味します。これは、「補完的」または「非同等」と呼ばれることもあります。

特定の(より低い)レベルの安全要件については、使用を許可することができます BOOL 入力としておよび SAFEBOOL 出力として。ただし、これはアプリケーションのFMEAを介して評価する必要があります。ライブラリでは、を区別する必要があります SAFEBOOLBOOL バージョン。

14. 機能ブロック: SF_Antivalent
機能ブロック: SF_Antivalent


機能説明

この機能ブロックは、2つのアンチバレントを変換します SAFEBOOL 1つへの入力 SAFEBOOL 不一致時間監視付きの出力。両方の入力は相互に依存しています。機能ブロック出力には、両方のチャネルの評価結果が表示されます。

もしも S_AntivalentOut = TRUE 安全関連の入力の1つが変更されると、出力はすぐに次のように切り替わります。 FALSE

不一致時間の監視:不一致時間は、機能ブロックがエラーを検出せずに、両方の入力が同じ状態になる可能性がある最大期間です。不一致時間の監視は、入力のステータスが変化したときに開始されます。不一致時間が経過すると、両方の入力の値が同じになると、機能ブロックがエラーを検出します。

両方の入力を対称的に切り替える必要があります。これは、から切り替えるために両方の入力に対して監視が実行されることを意味します TRUEFALSE からの切り替えだけでなく FALSETRUE

15. 入力と出力の論理表

入力

出力

Activate

S_ChannelNC

S_ChannelNO

DiscrepancyTime

Ready

S_AntivalentOut

SafetyDemand

Error

DiagCode

FALSE

FALSE

TRUE

始まっていない

FALSE

FALSE

FALSE

FALSE

16#0000

TRUE

FALSE

TRUE

始まっていない

TRUE

FALSE

TRUE

FALSE

16#8801

TRUE

FALSE -> TRUE

TRUE

開始

TRUE

FALSE

TRUE

FALSE

16#8802

TRUE

TRUE

TRUE -> FALSE

開始

TRUE

TRUE

FALSE

FALSE

16#8000

TRUE

TRUE

FALSE

始まっていない

TRUE

TRUE

FALSE

FALSE

16#8000

TRUE

TRUE

FALSE -> TRUE

開始

TRUE

FALSE

TRUE

FALSE

16#8806

TRUE

TRUE -> FALSE

TRUE

開始

TRUE

FALSE

TRUE

FALSE

16#8801

TRUE

FALSE

TRUE

始まっていない

TRUE

FALSE

TRUE

FALSE

16#8801

TRUE

FALSE

TRUE -> FALSE

開始

TRUE

FALSE

TRUE

FALSE

16#8804

TRUE

FALSE -> TRUE

FALSE

開始

TRUE

TRUE

FALSE

FALSE

16#8000

TRUE

TRUE -> FALSE

FALSE

開始

TRUE

FALSE

TRUE

FALSE

16#8806

TRUE

FALSE

FALSE -> TRUE

開始

TRUE

FALSE

TRUE

FALSE

16#8801



ヒント

真理値表では、矢印->は遷移を表します。 TRUE -> FALSE 変数jasの値がから変更されたことを意味します TRUEFALSE

状態図

15. 状態図: SF_Antivalent
状態図: SF_Antivalent


ヒント

任意の状態から Idle による状態 Activate = FALSE は表示されていません。ただし、これらの遷移が最も優先されます。

典型的なタイミング図

16. タイミング図 1: SF_Antivalent
タイミング図 1: SF_Antivalent


17. タイミング図 2: SF_Antivalent
タイミング図 2: SF_Antivalent


エラー検出

機能ブロックは、チャネル間の不一致時間を監視します NO とチャンネル NC

エラー動作

出力 S_AntivalentOut に設定されています FALSEError に設定されています TRUEDiagCode エラー状態を示します。エラーのリセットと組み合わせた入力として定義されたリセットはありません。正しい入力値のセットがすぐに S_AntivalentOut 存在します、 ErrorFALSE また。

機能ブロック固有のエラーおよびステータスコード

16. FB固有のエラーコード

DiagCode

州名

状態の説明と出力設定

16#C010

Error 1

状態で経過した不一致時間 16#8802

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = FALSE

Error = TRUE

16#C020

Error 2

状態で経過した不一致時間 16#8804

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = FALSE

Error = TRUE

16#C030

Error 3

状態で経過した不一致時間 16#8806

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = FALSE

Error = TRUE



17. FB固有のステータスコード

DiagCode

州名

状態の説明と出力設定

16#0000

Idle

機能ブロックがアクティブではありません(初期状態)。

Ready = FALSE

S_AntivalentOut = FALSE

SafetyDemand = FALSE

Error = FALSE

16#8801

Init

FBによってアクティブ化が検出され、FBがアクティブ化されました。

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE

16#8000

Safety Output Enabled

入力はに切り替えられます TRUE 逆価モードで。

Ready = TRUE

S_AntivalentOut = TRUE

SafetyDemand = FALSE

Error = FALSE

16#8802

Wait for NO

ChannelNC に切り替えられました TRUE –待っています ChannelNO に切り替えます FALSE;不一致タイマーが開始しました。

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE

16#8804

Wait for NC

ChannelNO に切り替えられました FALSE –待っています ChannelNC に切り替えます TRUE;不一致タイマーが開始しました。

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE

16#8006

From Active Wait

1つのチャネルが非アクティブに切り替えられました。 2番目のチャネルも非アクティブに切り替わるのを待っています。

Ready = TRUE

S_AntivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE