「セーフハウス」シナリオ:vPLC + vSafe + ProfiSafe + タイムプロバイダー + ライセンスサーバー

注記
以下のセクションのドキュメントは、情報提供のみを目的としています。制限事項および安全性または認証に関する情報については、プログラミング対象のデバイスの製造元が提供する安全ドキュメントを参照してください。
必要条件
シナリオ:
このシナリオの前提条件は、「フィールドバスによる仮想」シナリオ:vPLC + ライセンスサーバ + エッジゲートウェイ + フィールドバス のセットアップが正常に完了していることです。
ハードウェア
次のデバイスも必要です。
デスクトップ PC と CODESYS Development System インストール済み
仮想エッジゲートウェイ、仮想 PLC 1、ライセンスサーバーがインストールされている Linux ホスト PC
次の追加デバイスも必要です。
時刻情報プロバイダー用のホスト(図では「Linux Host PC 2」と表記)。このホストの要件:LinuxオペレーティングシステムとDockerがインストールされ、SSHが設定されている必要があります。
LinuxホストPCへのリアルタイム対応ネットワークにより、データパッケージを確定的に送信できます。
リアルタイム対応のLinuxシステム、特に「Linux Host PC」と「Linux Host PC 2」の場合:リアルタイムでは、セーフコントローラ上でアプリケーションを処理することと同様に、タイムプロバイダのタイムスタンプを送信することが非常に重要です。
注記
リアルタイム性能が満たされない場合、安全アプリケーションの可用性に問題が生じます (「Safety Exceptions」)。関係する Linux システムをセットアップするには、パフォーマンス最適化 の手順に従ってください。
アドオン製品
CODESYS Virtual Safe Control SLはデスクトップPCにインストールする必要があります。
リナックスホスト PC 2
Linux ホスト PC 2 で、タイムプロバイダーを設定します。
タイムプロバイダーは、設定された宛先に現在の時刻を送信し、バーチャルセーフコントロールSLが必要とする2回目の時刻を提供するために使用できます。
コマンドを実行する [ツール] → コントロール SL をデプロイ そして、Linux ホスト PC 2 への接続を確立します (コミュニケーション タブ)。
詳細については、以下を参照してください。 接続を確立する
次のイメージの最新バージョンをインストールします (デプロイ タブ):
CODESYS バーチャルセーフタイムプロバイダー
詳細については、以下を参照してください。 Installing an image
をクリックします デプロイ タブ。
で 製品 リストボックス、選択 CODESYS バーチャルセーフタイムプロバイダー SL。
で バージョン リストボックスで、最新バージョンを選択します。
をクリックします インストール ボタン。
CODESYS バーチャルセーフタイムプロバイダー SL イメージがに表示されます インストール済みイメージ セクション。
必要なインスタンスを作成します。
Linux Host PC 2 では
timeproviderインスタンスが必要です。このインスタンスは、操作 タブで次のように作成します。で VPLC セクションで、をクリックします。
ボタン。ザ・ 新しいインスタンスを追加 ダイアログが開きます。
指定
timeprovider名前として。リストボックスで
Safety Timeproviderフィルターを選択します。の最新バージョンを選択してください
CODESYS Virtual Safe Timeprovider SLイメージを作成してクリック OK。新しいインスタンスは、に一覧表示されます。 VPLC セクション。
インスタンスを設定します。
timeproviderインスタンスには、ターゲット IP アドレスとターゲットポートを設定する必要があります。デフォルトでは、ターゲットはvHost、ポートは60000です。汎用コマンド
-e TARGET_IP=[IP oder Hostname des Linux Host PC]-e TARGET_PORT=6000060000は、バーチャルセーフコントロールSLがタイマーから外部タイムソースを受信するためのデフォルトポートです。
自動起動
はい
いつ はい が選択されると、システムが起動するたびにインスタンスが自動的に起動します。
汎用コマンドを使用すると、ロギングや最適化に関する設定など、Time Provider インスタンスのその他の側面を設定できます。
汎用コマンド
[既定値]
説明
-e STAT_PRINT_TIME60
タイムプロバイダーの統計の出力間隔 (秒単位)
-e PIN_CPU0
Time Provider を実行するコア
-e DEBUGFALSEデバッグ出力を有効または無効にする
-e SYSLOGFALSESyslog へのログ出力の書き込みを有効または無効にする
-e PRIORITY55
SCHED_FIFOスケジューリングの優先順位-e REDUNDANCYFALSE/TRUEタイムプロバイダーの冗長機能を有効または無効にします。(追加機能が必要です) CODESYS Safe Time Provider)
-e CYCLETIME3
タイムプロバイダーがタイムスタンプパッケージを送信する間隔
で VPLC セクションで、をクリックします。
timeproviderインスタンス。timeproviderインスタンスの設定が右側に表示されます。GenericcommandsのTARGET_IPフィールドとTARGET_PORTフィールドには、すでに値vSafePLC1と60000が設定されています。を変更
TARGET_IPLinux ホスト PC 1 のホスト名または IP アドレスに送信します。詳細については、次を参照してください: ネットワークアドレスの検出
自動起動 リストボックスで、値 はい を選択します。
保存 ボタンをクリックして変更を保存します。
詳細については、以下を参照してください。 新しいインスタンスの作成と設定
VPLC セクションで
timeproviderインスタンスを選択し、
選択したものを開始 ボタンをクリックしてインスタンスを起動します。で 状態 列では、すべてのインスタンスのステータスがに変わります 実行中。
リナックスホスト PC
Linux ホスト PC で、をセットアップします。 CODESYS Virtual Safe Control for Linux SL.
コマンドを実行する [ツール] → コントロール SL をデプロイ そして、Linux ホスト PC 2 への接続を確立します (コミュニケーション タブ)。
に切り替え オペレーション タブ。
次のイメージの最新バージョンをインストールします (デプロイ タブ):
CODESYS バーチャルセーフコントロール SL
必要なインスタンスを作成します。
Linux Host PC 1 では
vSafePLCインスタンスが必要です。このインスタンスは、操作 タブで次のように作成します。で VPLC セクションで、をクリックします。
ボタン。ザ・ 新しいインスタンスを追加 ダイアログが開きます。
指定
vSafePLC名前と同じように。で [フィルタ] リストボックス、選択 セーフティ・ランタイム・システム。
次に、の最新バージョンを選択します CODESYS Virtual Safe Control for Linux SL 画像。
最後に OK をクリックします。
新しいインスタンスは、に一覧表示されます。 VPLC セクション。
前のシナリオでこのデバイスで作成したインスタンスと合わせて、次のインスタンスが利用可能になるはずです
VPLCsセクション:インスタンス
状態
[製品]
Vゲートウェイ
停止しました
ゲートウェイ
vPLC
停止しました
ランタイムシステム
vSafe PLC
停止しました
セーフティ・ランタイム・システム
に次のエントリがあるかどうかを確認してください
Servicesセクション:[製品]
状態
Linux SL 用コーデシスライセンスサーバー
実行中
再設定を行う前に、すべて停止 ボタンをクリックしてインスタンスを停止します。
すべてのインスタンスの状態が 停止しました と表示されます。
で VPLC セクションで、をクリックします。
vSafePLCインスタンス。の設定は
vSafePLCインスタンスは右側に表示されます。を設定します
vSafePLC次のようなインスタンス:ポート:
60000:60000/udpVirtual Safe Control SL が Time Provider から外部時刻ソースを受信するためのデフォルトポートです
写真:
shareableこのコンテナー用に、他のコンテナーからもアクセス可能な IPC 名前空間を作成します。この場合、両者が Linux IPC (共有メモリなど) を介して通信できるように、vPLC インスタンスがこの名前空間に参加する必要があります。
インスタンス自体を設定できるインスタンスパラメータに加えて、インスタンスのランタイムシステムの設定オプションもあります。 CODESYS Virtual Safe Control。の標準構成 CODESYS Safe Control SL は、最初はほとんどのアプリケーションで使用できるはずです。
次のパラメータは必要に応じて調整できます。
パラメーター
[既定値]
説明
アプリケーション優先度
35
アプリケーションタスクの実行時システム優先度 (Linux や IEC 優先度ではない)
CPU
0
CMPSil3 タスクを指定されたコアにピン留めします
外部タイムタスク優先度
9
外部タイムタスクの実行時システム優先度 (Linux や IEC 優先度ではない)
ポート
60000
外部タイムプロバイダーに使用される UDP ポート
で VPLC セクションで、をクリックします。
vPLCインスタンス。vPLCインスタンスの設定が右側に表示されます。を設定します
vPLC次のインスタンス:IPC
container:vSafePLCvSafePLC インスタンスの IPC 名前空間にアクセスして、これら 2 つのインスタンス間の通信を行います。
依存関係
vSafePLCvSafePLC を最初に起動する必要があります。これにより、このインスタンスが参加したい IPC 名前空間が作成されるためです。依存関係があると、正しい起動順序が保証されます
VPLC セクションで
すべて開始 ボタンをクリックして、すべてのインスタンスを起動します。で 状態 列では、すべてのインスタンスのステータスがに変わります 実行中。
構成を確認してください。
Time Provider の時刻が意図および設定どおりに vSafePLC に届いているかどうかは、インスタンスのログで確認できます。
これを行うには、
vSafePLCsのインスタンス VPLC セクション。で アクション 右上のセクションをクリックして [ログを表示] ボタン。
ザ・ ランタイムシステムログ ウィンドウが開きます。
メッセージ
External Time Provider foundログに存在する。
これで、必要なすべてのデバイスの準備が整いました。プロジェクトを作成し、ProfiSafe を統合するための次のステップについては、以下で説明しています CODESYS セーフティエクステンション ドキュメンテーション。