Skip to main content

SF_Antivalent

ヒント

ここで説明する機能ブロックのバージョンは、 機能ブロックのバージョンリスト

適用される安全基準

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

重要

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

インターフェースの説明

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

19. 変数入力

名前

データタイプ

初期値

説明、パラメータ値

Activate

BOOL

FALSE

見る 安全関連機能ブロックの一般規則

S_ChannelNC

SAFEBOOL

FALSE

変数

NC 手段 Normally Closed

入力 NC 繋がり

FALSE: 接触 NC 開ける

TRUE: 接触 NC 閉鎖

S_ChannelNO

SAFEBOOL

TRUE

変数

NO 手段 Normally Open

入力 NO 繋がり

FALSE: 接触 NO 開ける

TRUE: 接触 NO 閉鎖

DiscrepancyTime

TIME

T#0ms

絶え間ない

両入力の不一致状態の最大監視時間

DiscrepancyTime 注意事項を必ず守ってください。



不一致時間

拡張レベルの開発者向け: DiscrepancyTime 入力は定数値に設定する必要があります。つまり、呼び出し時に値を変更してはいけません。

20. 変数出力

名前

データタイプ

初期値

説明、パラメータ値

Ready

BOOL

FALSE

一般的な出力パラメータ

S_AntivalentOut

SAFEBOOL

FALSE

安全関連の出力

FALSE: 少なくとも1つの入力信号が「非アクティブ」であるか、ウォッチドッグ時間外でステータスが変更されています

TRUE: 両方の入力信号が「アクティブ」であり、ウォッチドッグ時間内にステータスが変化する

Error

BOOL

FALSE

一般的な出力パラメータ

DiagCode

WORD

16#0000

診断コード



ヒント

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

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


機能説明

このファンクションブロックは2つの反価 SAFEBOOL 入力 SAFEBOOL 不一致時間監視中の出力。両方の入力は相互に依存しています。機能ブロックの出力には、両方のチャネルの評価結果が表示されます。

もし S_AntivalentOut = TRUE 安全志向の入力の1つが変化すると、出力はすぐに FALSE

不一致時間監視: 不一致時間とは、両方の入力が同じ状態になる可能性がある最大時間間隔です(つまり、両方の入力が TRUE あるいは両方 FALSE) は、FB がエラーを検出せずに発生します。不一致時間の監視は、入力の状態が変化すると開始されます。不一致時間が経過すると、両方の入力が同じ値になると、ファンクション ブロックはエラーを検出します。

入力は対称的に切り替えられる必要があります。つまり、入力を切り替える際に監視が行われます。 TRUE そして FALSE

21. 入力/出力のロジックテーブル

入力

出力

Activate

S_ChannelNC

S_ChannelNO

DiscrepancyTime

Ready

S_AntivalentOut

Error

DiagCode

FALSE

FALSE

TRUE

開始されていません

FALSE

FALSE

FALSE

16#0000

TRUE

FALSE

TRUE

開始されていません

TRUE

FALSE

FALSE

16#8001

TRUE

FALSE -> TRUE

TRUE

開始

TRUE

FALSE

FALSE

16#8004

TRUE

TRUE

TRUE -> FALSE

開始

TRUE

TRUE

FALSE

16#8000

TRUE

TRUE

FALSE

開始されていません

TRUE

TRUE

FALSE

16#8000

TRUE

TRUE

FALSE -> TRUE

開始

TRUE

FALSE

FALSE

16#800165

TRUE

TRUE -> FALSE

TRUE

開始

TRUE

FALSE

FALSE

16#8001

TRUE

FALSE

TRUE

開始されていません

TRUE

FALSE

FALSE

16#8001

TRUE

FALSE

TRUE -> FALSE

開始

TRUE

FALSE

FALSE

16#8014

TRUE

FALSE -> TRUE

FALSE

開始

TRUE

TRUE

FALSE

16#8000

TRUE

TRUE -> FALSE

FALSE

開始

TRUE

FALSE

FALSE

16#8005

TRUE

FALSE

FALSE -> TRUE

開始

TRUE

FALSE

FALSE

16#8001



ヒント

ロジックテーブルでは、矢印(->) は遷移を表します。 TRUE -> FALSE 変数の値が TRUEFALSE

ステータス図

55. ステータス図: SF_Antivalent
ステータス図: SF_Antivalent


ヒント

注: 任意の状態から Idle 州、によって開始された Activate = FALSEは表示されません。いずれの場合も、これらの遷移が最も優先されます。

典型的なタイミング図

56. タイムチャート1: SF_Antivalent.png
タイムチャート1: SF_Antivalent.png


57. タイムチャート2: SF_Antivalent.png
タイムチャート2: SF_Antivalent.png


エラー検出

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

エラー動作

S_AntivalentOut 出力は FALSEError に設定されています TRUEDiagCode エラー状態を表示します。エラーのリセットと連動した入力としてリセットは定義されていません。正しい入力値のセットが S_AntivalentOut 存在する、 ErrorFALSE また。

FB固有のエラーおよびステータスコード

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

診断コード

像名

ステータスの説明と出力設定

16#C001

Error 1

ステータスの不一致時間が経過しました 16#8004

Ready = TRUE

S_AntivalentOut = FALSE

Error = TRUE

16#C002

Error 2

ステータスの不一致時間が経過しました 16#8014

Ready = TRUE

S_AntivalentOut = FALSE

Error = TRUE

16#C003

Error 3

ステータスの不一致時間が経過しました 16#8005

Ready = TRUE

S_AntivalentOut = FALSE

Error = TRUE



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

診断コード

像名

ステータスの説明と出力設定

16#0000

Idle

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

Ready = FALSE

S_AntivalentOut =FALSE

Error = FALSE

16#8001

Init

ブロックによってアクティベーションが検出され、ブロックがアクティブになりました。

Ready = TRUE

S_AntivalentOut = FALSE

Error = FALSE

16#8000

Safety Output Enabled

反価モードでは入力がアクティブに切り替わります。

Ready = TRUE

S_AntivalentOut = TRUE

Error = FALSE

16#8004

Wait for NO

ChannelNC に切り替えられました TRUE; まで待つ ChannelNO に切り替わります FALSE; 不一致タイマーが開始されました。

Ready = TRUE

S_AntivalentOut = FALSE

Error = FALSE

16#8014

Wait for NC

ChannelNO に切り替えられました FALSE; まで待つ ChannelNC に切り替わります TRUE; 不一致タイマーが開始されました。

Ready = TRUE

S_AntivalentOut = FALSE

Error = FALSE

16#8005

From Active Wait

1 つのチャネルが非アクティブに切り替わりました。2 番目のチャネルも非アクティブに切り替わるまで待ちます。

Ready = TRUE

S_AntivalentOut = FALSE

Error = FALSE