Skip to main content

SF_Equivalent

適用される安全基準

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

重要

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

インターフェイスの説明

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

8. VAR_INPUT

名前

データ・タイプ

初期値

説明、パラメータ値

Activate

BOOL

FALSE

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

S_ChannelA

SAFEBOOL

FALSE

変数

入力 A 論理接続用

FALSE: コンタクト A 開いた

TRUE: コンタクト A 閉まっている

S_ChannelB

SAFEBOOL

FALSE

変数

入力 B 論理接続用

FALSE: コンタクト B 開いた

TRUE: コンタクト B 閉まっている

DiscrepancyTime

TIME

T#0ms

絶え間ない

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

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



DiscrepancyTime

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

9. VAR_OUTPUT

名前

データ・タイプ

初期値

説明、パラメータ値

Ready

BOOL

FALSE

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

S_EquivalentOut

SAFEBOOL

FALSE

安全関連の出力

FALSE: 少なくとも 1 つの入力信号が FALSE または監視時間外の状態変化

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

SafetyDemand

BOOL

FALSE

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

Error

BOOL

FALSE

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

DiagCode

WORD

16#0000

見る 診断コード



ヒント

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

10. 機能ブロック: SF_Equivalent
機能ブロック: SF_Equivalent


機能説明

この機能ブロックは、2つの同等のものを変換します SAFEBOOL 入力(両方 NO また NC)1つに SAFEBOOL 不一致時間監視付きの出力。両方のチャネルは相互に依存しています。機能ブロック出力には、両方のチャネルの評価結果が表示されます。

Wenn sich das SignaleinesKanalsは TRUEFALSE、出力はすぐにに切り替わります FALSE 安全上の理由から。

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

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

10. 入力と出力の論理表

入力

出力

Activate

S_ChannelA

S_ChannelB

DiscrepancyTime

Ready

S_EquivalentOut

SafetyDemand

Error

DiagCode

FALSE

FALSE

TRUE

始まっていない

FALSE

FALSE

FALSE

FALSE

0000

TRUE

FALSE

FALSE

始まっていない

TRUE

FALSE

TRUE

FALSE

8801

TRUE

TRUE

FALSE

開始

TRUE

FALSE

TRUE

FALSE

8802

TRUE

TRUE

FALSE -> TRUE

開始

TRUE

TRUE

FALSE

FALSE

8000

TRUE

TRUE

TRUE

始まっていない

TRUE

TRUE

FALSE

FALSE

8000

TRUE

TRUE

TRUE -> FALSE

開始

TRUE

FALSE

TRUE

FALSE

8806

TRUE

TRUE -> FALSE

FALSE

開始

TRUE

FALSE

TRUE

FALSE

8801

TRUE

FALSE

FALSE

始まっていない

TRUE

FALSE

TRUE

FALSE

8801

TRUE

FALSE

FALSE -> TRUE

開始

TRUE

FALSE

TRUE

FALSE

8804

TRUE

FALSE -> TRUE

TRUE

開始

TRUE

TRUE

FALSE

FALSE

8000



ヒント

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

状態図

11. 状態図: SF_Equivalent
状態図: SF_Equivalent


ヒント

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

典型的なタイミング図

12. タイミング図 1: SF_Equivalent
タイミング図 1: SF_Equivalent


13. タイミング図 2: SF_Equivalent
タイミング図 2: SF_Equivalent


エラー検出

機能ブロックは、チャネル間の不一致時間を監視します S_ChannelA とチャンネル S_ChannelB、に切り替えるとき TRUE に切り替えるだけでなく FALSE

エラー動作

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

FB 固有のエラーおよび状態コード

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

DiagCode

州名

状態の説明と出力設定

16#C010

Error 1

状態の不一致経過時間 16#8802

Ready = TRUE

S_EquivalentOut = FALSE

SafetyDemand = FALSE

Error = TRUE

16#C020

Error 2

状態の不一致経過時間 16#8804

Ready = TRUE

S_EquivalentOut = FALSE

SafetyDemand = FALSE

Error = TRUE

16#C030

Error 3

状態の不一致経過時間 16#8806

Ready = TRUE

S_EquivalentOut = FALSE

SafetyDemand = FALSE

Error = TRUE



12. FB 固有の状態コード

DiagCode

州名

状態の説明と出力設定

16#0000

Idle

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

Ready = FALSE

S_EquivalentOut =FALSE

SafetyDemand = FALSE

Error = FALSE

16#8801

Init

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

Ready = TRUE

S_EquivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE

16#8000

Safety Output Enabled

入力はに切り替えられます TRUE 同等のモードで。

Ready = TRUE

S_EquivalentOut = TRUE

SafetyDemand = FALSE

Error = FALSE

16#8802

Wait for Channel B

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

Ready = TRUE

S_EquivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE

16#8804

Wait for Channel A

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

Ready = TRUE

S_EquivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE

16#8806

From Active Wait

1つのチャネルがに切り替えられました FALSE;他のチャネルがに切り替えられるのを待っています FALSE、不一致タイマーが開始しました。

Ready = TRUE

S_EquivalentOut = FALSE

SafetyDemand = TRUE

Error = FALSE