Skip to main content

コントローラーの冗長性

システムの可用性を高めるために、冗長構成の 2 番目のコントローラーを使用できます。 PROFINET 組み合わせたコントローラー CODESYS Redundancy. CODESYS Redundancy 2 つのコントローラーでアプリケーションを同期する「バックエンド」として機能します。ネイティブ PROFINET システム冗長性 (SR) により、フィールド デバイスとのスムーズなデータ交換が保証されます。

とともに PROFINET システムの冗長性、両方のコントローラーがそれぞれへの接続 (AR = アプリケーション関係) を維持します。 PROFINET S2システムの冗長化をサポートするフィールドデバイス。接続の 1 つには、 PRIMARY 役割、および他の接続には BACKUP 役割。ここでは、 PRIMARY ロールは有効なデータを送信します。との接続の場合、 PRIMARY 役割が失敗した場合、スムーズに接続に切り替えることができます。 BACKUP 役割が新しくなりました PRIMARY 最短時間で接続できます。との混在運転 PROFINET S2 システムの冗長化をサポートしていないフィールド デバイスが可能です。ただし、この場合、完全な新しい接続が確立されるため、接続が失敗するとデータ転送が一時的に中断されます。 PROFINET システムの冗長性は、MRP (「回線冗長性」) などの他の冗長性メカニズムで拡張できます。

CODESYS ランタイムの構成

[CmpRedundancyConnectionIP]
Link1.IpAddressLocal=192.168.56.1 ; IP address of redundancy link of local PLC
Link1.IpAddressPeer=192.168.56.101 ; IP address of redundancy link of peer PLC
Link1.Port=1205
[CmpRedundancy]
BootupWaitTime=5000
TcpWaitTime=2000
StandbyWaitTime=50 ; This timeout depends on the quality of real time task and communication system
LockTimeout=20 ; Maximum time of timer lock
Bootproject=Application ; Name of your CODESYS application
RedundancyTaskName=MainTask ; Task name in your CODESYS application
DataSyncAlways=1
PlcIdent=1 ;// Redundant Controller = 2 !!!
SyncWaitTime=100;

プロジェクト内の構成

プロジェクトでは、 PROFINET コントローラーは、2 番目のコントローラー (PLC 2) でも構成する必要があります。

とき 冗長構成 オブジェクトがプロジェクトに挿入されると、追加の設定があります。 EtherNet Adapter の PLC 2 で EtherNet Adapter デバイス。

コントローラーの構成では、追加の システムの冗長性 PLC2 で使用する設定のタブが表示されます。S2 システムの冗長化をサポートするフィールド機器は、このモードに自動的に設定されます。

重要

CODESYS Redundancy 単一のタスクの同期のみを許可します。このタスクでは、すべて PROFINET I/O データを使用する必要があります。これにより、I/O マッピングは既存の変数に対してのみ行う必要があります。なぜなら、 PROFINET コントローラー PRIMARY 接続は有効な I/O データを受信しますが、いいえ PROFINET I/O データは、BACKUP コントローラで処理する必要があります。 PROFINET 非周期サービスの機能ブロック (たとえば、 RDRECWRREC) またはアラーム処理 (例: RALARM) は、同期タスクまたは同期データ領域内で使用してはなりません。

冗長タスクの優先度は、 PROFINET I/O タスク。

の標準的な動作 PROFINET 操作中のコントローラー:

  • コントローラーの役割が「アクティブ」の場合、 PROFINET コントローラー (およびすべての接続) は PRIMARY.

  • コントローラーの役割が「スタンバイ」の場合、 PROFINET コントローラー (およびすべての接続) は BACKUP.

  • 起動時のコントローラーの役割が「スタンドアロン」の場合、 PROFINET PLC 1 のコントローラは PRIMARY コントローラ。

  • コントローラの役割が「スタンドアロン」に変わると(冗長接続の中断または他の PLC の障害)、 PROFINET コントローラーは現在の役割を保持します。

RedundancyManager 関数ブロックは、便利なエラー処理で標準の動作を拡張します。

  • の接続が PRIMARY コントローラーが終了すると (すべての接続の完全なシャットダウンまたは単一接続の終了)、スタンバイ コントローラーは「アクティブ」に切り替わり、その PROFINET コントローラーが新しくなる PRIMARY コントローラ。

  • とき PROFINET 2 つのコントローラのうちの 1 つのコントローラに障害が発生した場合 (ネットワークがないなど)、このコントローラは「シミュレーション」に切り替えられます。

    注意: RedundancyManager は、同期領域ではなく、たとえばグローバル変数リストで定義する必要があります。