Skip to main content

冗長制御システムの使用

詳細については、以下を参照してください。 コマンドを呼び出すときの冗長システムの動作

オンライン変更によるアプリケーションのロードと開始

要件:次のように構成されている PLC PLC (1)PLC 2 が実行中で、更新されたアプリケーションをダウンロードできる状態になっています。

  1. デバイスツリーでアプリケーションを選択します。

  2. クリック オンライン→ログイン

    ログイン方法を尋ねるダイアログが開きます。

  3. 選択する オンライン変更でログイン

    アプリケーションはに更新されます PLC 1

    PLC 2 シミュレーションモードに切り替わり、約 10 秒後に同期します。その後、両方の PLC は再びアクティブ/スタンバイモードになります

ヒント

The 活性化切り替える同期する、 と シミュレーション コマンドはで有効になっています 冗長状態 タブ。

PLC1が実行されているときにのみ開始

要件: PLC 1 が走っています。標準プロジェクトはで開かれています CODESYS Development System。通信パラメータは PLC 1

  1. デバイスエディタで、 通信設定 タブをクリックしてネットワークを検索します。

    準備ができているデバイスは、 デバイスを選択 ダイアログ。

  2. のデバイスを選択します PLC 1 をクリックします わかった 選択を確認します。

    デバイス接続設定が構成されます。

  3. クリック オンライン→ログイン

    アプリケーションはにダウンロードされます PLC 1

  4. デバッグ→開始

    PLC 1 スタンドアロンモードで実行されています。

  5. ランタイムシステムを起動する PLC 2

    同期フェーズが開始され、アプリケーションと冗長データが適用されます。その後、 PLC 1 アクティブに切り替え、 PLC 2 スタンバイに切り替えます。

アクティブ/スタンバイモードの実行中にアプリケーションをロードする

手順. アクティブなPLCにダウンロード

要件:両方のPLCが実行されています。冗長プロジェクトはで開かれています CODESYS

  1. デバイスエディタで、 通信設定 タブをクリックしてネットワークを検索します。

    準備ができているデバイスは、 デバイスを選択 ダイアログ。

  2. のデバイスを選択します PLC 1 をクリックします わかった 選択を確認します。

    デバイス接続設定が構成されます。

  3. クリック オンラインログイン.

  4. 開いたダイアログプロンプトで、 ダウンロードしてログイン オプション。

    アプリケーションが停止します PLC 1 単一システムにロードする場合も同様です。アプリケーションが削除され、新しいアプリケーションをロードする操作が開始されます。この間、 PLC 2 冗長シミュレーションモードに切り替えます。しばらくすると、 PLC 2 同期を再試行します。10 秒ごとに試行が繰り返されます。その時間までに 10 秒以上経過した場合 PLC 1 を起動し、 PLC 2 エラーモードに切り替わりますが、引き続き同期を試みます。

  5. 始める PLC 1

    同期が開始され、アプリケーションと冗長データがに送信されます PLC 2

ヒント

スタンバイモードで動作している PLC へのダウンロードはサポートされていません。アクティブな PLC にログインする必要があることを示すエラーメッセージが表示されます。

冗長状態のプログラムクエリの実装

  1. POUで PLC_PRG、冗長状態のクエリを実装します。

    PROGRAM PRG_PLC
    VAR
     sReduState: RedundancyState;
     bResult: BOOL;
    END_VAR
    
    bResult := RDCY.GetRedundancyState(ADR(sReduState));
  2. ログインする PLC 1 オンラインでの変更を確認します。

    PLC 1PLC 2 連続して起動し、アクティブ/スタンバイモードに切り替えます。今度は state.eRedundancyState 変数は現在の状態を取得して監視できるようにします。

    注記

    ヒント:現在の状態は、 冗長状態 タブ。

アプリケーションの同等性のテスト

両方のPLCで同じアプリケーションが実行されているか確認してください。

要件:冗長システムがアクティブ/スタンバイモードで、アプリケーションが実行されています。

  1. に接続します PLC 2

    このためには、デバイスのゲートウェイとの接続を設定します。または、より便利な方法として、 PLC パスをスワップ の「ボタン」 冗長構成

  2. オンライン→ログイン

    ダウンロード メッセージが表示されない場合、両方のアプリケーションは同じです。

コントローラ障害のシミュレーション

  1. やめる PLC 1 実行時。

    システムグラフィックは、 未知の 州 (rdncy_icon_state_unknown.png) ために PLC 1PLC 2 すぐにに切り替わります スタンドアロン 州 (rdncy_icon_state_standalone.png)。

  2. 再起動します PLC 1 デバイス。

    PLC 1 に切り替えます スタンバイ (rdncy_icon_state_passive.png)。 PLC 2 に切り替えます。 アクティブ (rdncy_icon_state_active.png)。

コントローラを再接続する

自動なし 再接続 (リンクの切断と再接続)は冗長コンポーネントの機能範囲に含まれます。これは、アプリケーションやデバイスによって特定の条件が関係するためです。ただし、次の実装で再接続のトリガーをプログラムできます。

2.
PROGRAM PLC_PRG
VAR
        sReduState: RedundancyState;
        sSyncInfo: SYNC_INFO;
        sPlcIdent: PLC_IDENT;
        xConnectionState: BOOL;
        xResult: BOOL;
END_VAR

(* Collect information *)
GetRedundancyState(ADR(sReduState));
xConnectionState := GetConnectionState();
sPlcIdent := GetPlcIdent();

(* If in standalone mode, and connection is possible, re-synchronize from PLC2 *)
IF sReduState.eRedundancyState = RDCY.STATE.RS_CYCLE_STANDALONE AND xConnectionState AND xResult = FALSE AND sPlcIdent = RDCY.PLC_IDENT.PLC_ID_2 THEN
        xResult := RDCY.Synchronize();
END_IF


ファイアウォール設定の構成

TCPとUDPの両方が冗長同期に使用されます。冗長リンク用にIPポートが設定されています。これはUDPに使用されます。ポート+1はTCPに使用されます。

3.

デフォルトとしてポート1205が設定されています。

ロックを解除するポート

UDP: Port 1205
TCP: Port 1206