Skip to main content

バスサイクルタスク– EtherCAT

開始時の動作

原則として、各 IEC タスクで使用される入力データは、タスクの開始時に読み込まれます (_1_r.png) そして、出力データはタスクの終了時に I/O ドライバに書き込まれます (_3_r.png)。I/O データの追加転送は、I/O ドライバの実装によって決まります。これにより、対応するバスシステムへの実際の転送が行われる時間枠と時間が決まります

PLCのバスサイクルタスクは、PLC設定のすべてのフィールドバスに対してグローバルに定義できます。ただし、一部のフィールドバスでは、グローバル設定とは無関係に変更できます。サイクルタイムが最も短いタスクがバスサイクルタスクとして使用されます 未指定PLC 設定)。このタスクでは、通常、メッセージはバス上で送信されます。

他のタスクは、バスサイクルタスクで物理ハードウェアとのみ交換される内部バッファから I/O データのみをコピーします。

タスク開始時のフレーム

もし FrameAtTaskStart プロパティは以下に設定されています。 FALSEその場合、タイミングは次のようになります。

_ecat_frame_at_task_start_set_false.png

もし FrameAtTaskStart プロパティは以下に設定されています。 TRUEその場合、タイミングは次のようになります。

_ecat_frame_at_task_start_set_true.png
  • _1_r.png 入力バッファから入力を読み込む

  • _2_r.png IEC タスク

  • _3_r.png 出力バッファに出力を書き込む

  • _4_r.png バスサイクル

  • _5_r.png 入力バッファ

  • _6_r.png 出力バッファ

  • _7_r.png バスへのデータのコピー、バスからのデータのコピー

  • _9_r.png バスサイクルタスク、優先度 1、1 ms

  • _10_r.png バスサイクルタスク、優先度 5

  • _11_r.png バスサイクルタスク、優先度 10、タスク 5 によって中断されました

詳細については、以下を参照してください。 プロパティ:「iodrvethercat.FrameAttTaskStart」

タスクの使用状況

ザ・ タスク・デプロイ タブには、使用されている I/O チャネルの概要、バスサイクルの設定タスク、およびチャネルの使用状況が表示されます。

警告

出力がさまざまなタスクで書き込まれる場合、その都度上書きされる可能性があるため、ステータスは未定義です。

さまざまなタスクで同じ入力が使用されている場合、タスクの処理中に入力が変更される可能性があります。これは、優先度の高いタスクによってタスクが中断され、プロセスイメージが再度読み込まれる場合に起こります

対処法:IEC タスクの開始時に、入力変数を変数にコピーし、残りのコードではローカル変数のみを操作してください。

結論:複数のタスクで同じ入力と出力を使用しても意味がなく、場合によっては予期しない反応を引き起こす可能性があります。

詳細については、以下を参照してください。 「タスク構成」

のバスサイクルの動作 EtherCAT

IEC入力がコピーされる前に、最後のサイクルの保留中のネットワークメッセージが読み取られます。

_ecat_task_diagram11.png

いつ タスクごとのメッセージ オプションは、の設定で有効になっています EtherCAT マスター、追加のテレグラムは、タスクごとに使用されるデバイスと、使用される入力または出力に送信されます。遅いタスクで使用されるチャネルも、送信頻度が低くなります。その結果、バスの負荷を減らすことができます。

_ecat_img_task_diagram_ethercat2.png