POWERLINK ファクトリインタフェース
POWERLINK ファクトリインタフェース
等時性フェーズでは、POWERLINK マスターノードと In-Sight ビジョンシステムの間をやりとりされるデータは 5 つのデータチャネルに編成されます。次に説明するチャネルは、等時性フェーズで POWERLINK ネットワークを通じた周期転送のために、Process Data オブジェクト (PDO) にマップすることができます。POWERLINK ファクトリインタフェースのチャネルには、特定の In-Sight ビジョンシステムデータバッファへの通信パスが用意されています。これは、データ交換やビジョンシステムジョブの管理、取り込み、検査制御、およびステータスデータに使用されます。
Inspection Control オブジェクト (0x2000)
Inspection Control オブジェクトは事前定義された倍精度整数値で、ビジョンシステムのトリガ、ビジョンシステムのジョブファイルの変更、Soft Events の開始などの一般的な In-Sight ビジョンシステムコマンドを、PLC が発行できるようにいたします。
インデックス | 名前 | 型 | アクセス | 注意 |
---|---|---|---|---|
1 |
Control |
32 ビットの整数 |
RW |
32 ビットの [コントロール] フィールドは、コントロール構造体にマップされます。この構造体については、後述のコントロール構造体の表で説明します。 |
2 |
JobLoadID |
16 ビットの整数 |
RW |
PLC によって Initiate Job Load ビットがセットされたときにロードされるジョブの ID 番号 (1 ~ 999)。 |
コントロール構造体
Inspection Control オブジェクトの [コントロール] フィールドが周期転送用に設定されているとき、コントロール構造体の個々のビットへは PLC からアクセスできます。
ビット | 名前 | 説明 |
---|---|---|
0 |
Trigger Enable |
このフィールドは、Trigger ビット経由でトリガできるようにするために設定されます。このビットをクリアすると、ネットワークトリガメカニズムが無効になります。 |
1 |
Trigger |
このビットをセットすると、次の条件が満たされた場合に取り込みがトリガされます。
|
2 |
Buffer Results Enable |
このビットがセットされると、Inspection Count、Inspection Result Code、および Inspection Results フィールドは、Inspection Results Ack ビットがセットされて確認応答されるまで変化しません。最大 8 つの検査が In-Sight ビジョンシステムのバッファに保持されます。ビジョンシステムは、Results Valid ビットをクリアすることによって、確認応答に応答します。Inspection Results Ack ビットがクリアされて、PLC に送信される新しい結果セットがあるときには、Results Valid ビットはクリアされません。Inspection Results Ack ビットがクリアされて、PLC に送信される結果がビジョンシステムのバッファにそれ以上ない場合には、Results Valid ビットはクリアされたままです。 |
3 |
Inspection Results Ack |
Buffer Results Enable ビットがセットされると、Inspection Results Ack ビットは、PLC が Inspection Count、Inspection Result Code、および Inspection Results データを受信したことを確認応答するように、PLC によってセットされます。その後、次の検査結果のセットが PLC に送信されます。Inspection Results Ack ビットがクリアされると、ビジョンシステムは Results Valid ビットをセットします (バッファが空でなかった場合)。 |
4 |
Initiate Job Load |
セットされると、ビジョンシステムは Job Load ID フィールドで指定したジョブ ID をロードします。 |
5 ~ 6 |
Reserved |
将来の実装に備えて予約済みです。 |
7 |
Set Offline |
このビットがセットされると、このビットが再びクリアされるまで、In-Sight ビジョンシステムはオフラインになります。 |
8 ~ 15 |
Reserved |
将来の実装に備えて予約済みです。 |
16 |
Set User Data |
このコマンドは、ビジョンシステムにて消費される User Data フィールドを保持バッファに転送する必要がある場合に、PLC から In-Sight ビジョンシステムへ通知します。 |
17 ~ 18 |
Reserved |
将来の実装に備えて予約済みです。 |
19 |
Clear Exposure Complete |
この信号が High のときは、Exposure Complete ステータスはリセットのままです。この信号が Low に設定されると、次の露光完了時に Exposure Complete ステータスが High に設定されます。 |
20 ~ 23 |
Reserved |
将来の実装に備えて予約済みです。 |
24 ~ 31 |
Soft Event 0 ~ 7 |
スプレッドシートのソフトイベントのトリガを可能にします。これらのビットをセットすると、スプレッドシート内の関連するソフトイベントがトリガされます。 |
Inspection Status オブジェクト (0x2001)
Inspection Status オブジェクトも事前定義された倍精度整数ブロックで、Trigger Ready、Inspecting、Inspection Complete など In-Sight ビジョンシステムのステータスを PLC に通知し、エラーステータス、オンライン/オフラインステータス、画像取り込みミスなどの詳しい診断情報を提供します。
インデックス | 名前 | 型 | アクセス | 注意 |
---|---|---|---|---|
1 |
Status |
32 ビットの整数 |
R |
32 ビットの [コントロール] フィールドは、ステータス構造体にマップされます。この構造体については、後述のステータス構造体の表で説明します。 |
2 |
CurrentJobID |
16 ビットの整数 |
R |
ビジョンシステムで現在実行中のジョブの ID 番号を示す 16 ビット整数。または、現在のジョブに ID 番号がない場合は 65535。このフィールドは、ジョブ変更の方法に関係なく、ビジョンシステムでジョブが変更されたときに更新されます。 |
3 |
AcquisitionID |
16 ビットの整数 |
R |
この ID は現在の画像取り込みに関連付けられています。Trigger ビットを使用して画像取り込みされ、Trigger Ack 信号がアサートされると、この ID が Acquisition ID に設定されます。 |
ステータス構造体
Inspection Control オブジェクトの [ステータス] フィールドが周期転送用に設定されているとき、ステータス構造体の個々のビットへは PLC からアクセスできます。
ビット | 名前 | 説明 | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 |
Trigger Ready |
In-Sight ビジョンシステムが、Trigger ビットを介して新しいトリガを受け入れられることを示します。このフィールドは、ビジョンシステムがオンラインであり、Network Trigger Enable ビットがセットされ、AcquireImage 関数の [トリガ] パラメータが [産業用イーサネット] に設定されて、ビジョンシステムが現在画像を取り込んでいないときに真になります。 [トリガ] パラメータの [ネットワーク] または [外部] 設定も使用できますが、さらに遅延が長くなります。 |
|||||||||||||||
1 |
Trigger Ack |
In-Sight ビジョンシステムが Trigger ビットのセットによってトリガされたことを示します。このビットは、Trigger ビットがクリアされるまでセットされたままです。 |
|||||||||||||||
2 |
Acquiring |
画像取り込み方法に関係なく、In-Sight ビジョンシステムが現在画像を取り込んでいるときにセットされます。 |
|||||||||||||||
3 |
Missed Acq |
画像取り込み方法に関係なく、In-Sight ビジョンシステムが画像取り込みに失敗したときにセットされます。画像取り込みが正常にトリガされるとクリアされます。 |
|||||||||||||||
4 ~ 6 |
Offline Reason |
このフィールドは、In-Sight ビジョンシステムがオフラインである原因を示すために使用される 3 ビットのフィールドです。
注 : 複数のデバイスから In-Sight ビジョンシステムはオフラインにできます。このフィールドでは最小限のチャネルステータスを返します。
|
|||||||||||||||
7 |
Online |
このビットは、In-Sight ビジョンシステムがオンラインのときにセットされ、ビジョンシステムがオフラインのときにクリアされます。ビジョンシステムがオフラインのときには、Offline Reason フィールドを調べて、原因を判断してください。 |
|||||||||||||||
8 |
Inspecting |
このビットは、In-Sight ビジョンシステムがジョブを実行しているときにセットされます。 |
|||||||||||||||
9 |
Inspection Completed |
このビットは、検査の完了時にトグルされます。Inspection Count、Inspection Result Code、Inspection Results、または Job Pass の各ビットが PLC に送信された後、確実に切り替えられます。 |
|||||||||||||||
10 |
Results Buffer Overrun |
このフィールドは、Buffer Results Enable ビットがセットされていて、Inspection Results Ack ビットをセットすることによって PLC が確認応答しなかったために In-Sight ビジョンシステムが検査結果のセットを破棄したときにセットされます。最大 8 つの検査がビジョンシステムのバッファに保持されるため、このビットは、9 番目の検査がバッファに追加されて、バッファ内の 8 番目の検査に上書きされたときにセットされます。有効な検査が発生して、前の検査が上書きされない限り、このビットはクリアされません。 | |||||||||||||||
11 |
Results Valid |
Inspection Count ビット、Inspection Result Code ビット、Inspection Results ビット、または Job Pass ビットがセットされたときにセットします。Inspection Results Ack ビットがセットされるとクリアされます。 注 : オーバーラップモード時のジョブの処理を有効にした場合は、Buffer Results Enable ビットを有効/セットするか、Inspection Completed ビットを使って検査結果をラッチします。
|
|||||||||||||||
12 |
Job Loading |
このビットは、このプロトコルを通してジョブのロードが開始されたときにセットされます。 |
|||||||||||||||
13 |
Job Load Complete |
このビットは、このプロトコルによって開始されたジョブのロード操作の完了時にトグルされます。 |
|||||||||||||||
14 |
Job Load Failed |
このビットは、ジョブのロードの最後の試みが失敗したときにセットされます。MN がジョブのロードを開始し、ロードに成功するとクリアされます。 | |||||||||||||||
15 |
Reserved |
将来の実装に備えて予約済みです。 | |||||||||||||||
16 |
Set User Data Ack |
このコマンドは、ビジョンシステムにて消費される User Data フィールドを保持バッファに転送する必要がある場合に、PLC から In-Sight ビジョンシステムへ通知します。 | |||||||||||||||
17 ~ 18 |
Reserved |
将来の実装に備えて予約済みです。 | |||||||||||||||
19 |
Exposure Complete |
このビットは、In-Sight ビジョンシステムが露光完了するとセットされ、Clear Exposure Complete ビットでリセットされます。このビットは、Clear Exposure Complete 信号が High に設定されると Low に保持されます。 |
|||||||||||||||
20 | Job Pass |
このビットは、最後のジョブが [ジョブの PASS/FAIL セルの設定] ダイアログの設定に合格するとセットされます。このビットはジョブが合格しないとクリアされます。 |
|||||||||||||||
21 ~ 23 |
Reserved | 将来の実装に備えて予約済みです。 | |||||||||||||||
24 ~ 31 |
Soft Event Ack 0 ~ 7 |
これらのビットは、Soft Event コマンドが受信されたことを示すために使用されます。 |
Inspection Results (0x2010)
Inspection Results は、Acquisition ID および Inspection Results データブロックにあるデータの長さを提供します。
インデックス | 名前 | 型 | アクセス | 注意 |
---|---|---|---|---|
1 |
InspectionID |
32 ビットの整数 |
R |
この結果セットに関連付けられている取り込み ID。 |
2 |
InspectionResultCode |
16 ビットの整数 |
R |
現在は使用されていません。常に 0 です。 |
3 |
InspectionResultLength |
16 ビットの整数 |
R |
検査結果データの長さ。 |
Inspection Results データ (0x2011)
Inspection Results Data チャネルは設定可能な一連のレジスタで、ビジョン検査から PLC へのデータ通信に使用されます。例えば、PLC から、総合的な「Pass/Fail」結果、1 つの測定の結果、部品のX、Y、および角度と位置、またはバーコードの結果を求められることがあります。このデータは、Inspection Results Data チャネル経由で送信されます。
インデックス | 名前 | 型 | アクセス | 注意 |
---|---|---|---|---|
1 ~ 64 |
InspectionResultsNN |
32 ビットの整数 |
R |
WriteResultsBuffer 関数を使用してスプレッドシートから書き出された検査結果データ。 |
User Data (0x2021)
User Data チャネルは設定可能な一連のレジスタで、PLC から In-Sight ビジョンシステムへの値の送信に使用されます。例えば、許容値の設定を PLC からビジョンシステムに送信し、ある部品を検査するときに、適切な許容値が適用されます。
また、User Data チャネルを使用して、32 ビット整数値を User Data Block に書き込んだり、Process Data Object に割り当てて周期転送に使用することもできます。
インデックス | 名前 | 型 | アクセス | 注意 |
---|---|---|---|---|
1 ~ 64 |
UserDataNN |
32 ビットの整数 |
RW |
ReadUserDataBuffer または ReadLatchedUserDataBuffer 関数を使用してスプレッドシートに読み取ることができるデータバッファ。 |
POWERLINK/In-Sight ビジョンシステムのマッピング
ここで説明するモジュールを使用して、In-Sight ビジョンシステムの各種サブシステムへのアクセスが可能になります。
一般的な画像取り込みシーケンス
In-Sight ビジョンシステムのトリガを行うには、Inspection Control オブジェクトの [コントロール] フィールドにある Trigger Enable と Trigger ビットを直接操作するか、Inspection Status オブジェクトの [ステータス] 構造体にある Trigger Ready、Trigger Ack、Acquiring、および Missed Acq ビットをモニタします。
Automation Studio で、Inspection Control チャネルから Trigger Enable ビットを True に設定し、Trigger ビットを False から True に切り替えます。また、Trigger Ready ビットは True に設定します。
In-Sight ビジョンシステム取り込みシーケンスの例
最初の起動時には、Trigger Enable ビットは偽であり、トリガを有効にするには真にセットする必要があります。ビジョンシステムがトリガを受け入れる準備ができると、Inspection Control オブジェクトにある [コントロール] フィールドの Trigger Ready ビットが真に設定されます。
Trigger Enable および Trigger Ready ビットが真である間、Trigger ビットが偽から真に変化するのをビジョンシステムが認識するたびに、画像取り込みが開始されます。Inspection Status オブジェクトのステータス構造体の Trigger Ack ビットが偽に変わるまで、Trigger ビットをそのままの状態で保持する必要があります (これは、ビジョンシステムが変化を確実に確認するために必要なハンドシェークです)。
画像取り込み時には、Inspection Control オブジェクトにある [コントロール] フィールドの Trigger Ready ビットがクリアされて、Acquiring ビットが真に設定されます。画像取り込みが完了すると、Acquiring ビットはクリアされ、Trigger Ready ビットが再度、真に設定されます。これは、ビジョンシステムが新しい画像取り込みを開始する準備ができたことを示しています。
トリガメカニズムを強制的にリセットするには、Acquisition Status レジスタが真になるまで Trigger Enable ビットを偽に設定します。Trigger Enable ビットを真に設定すると、画像取り込みが再度有効になります。
検査/結果シーケンス
In-Sight ビジョンシステムによって取り込まれた画像は、処理のためにキューに入れられます。ビジョンシステムが画像を処理している間、ステータス構造体の Inspecting ビットが設定されます。ビジョンシステムが画像の処理を終了すると、Inspecting ビットがクリアされ、Inspection Completed ビットがトグルされます。
ビジョンシステムでの検査結果の取り扱い方は、コントロール構造体の Buffer Results Enable ビットによって決定されます。Buffer Results Enable ビットが偽に設定された場合、検査結果は直ちにコントロール構造体に入れられ、Results Valid ビットが真に設定されます。Buffer Results Enable ビットが真に設定されると、新しい結果がキューに入れられます。以前の検査結果は、PLC によって Inspection Results Ack ビットが真に設定され、結果の受領が確認されるまで、コントロール構造体に残ります。Results Valid ビットがクリアされると、PLC は Inspection Results Ack ビットを偽に戻す必要があります。これで、キューに入れられた結果をステータス構造体に入れることができます (これは、PLC が結果を確実に受信するために必要なハンドシェークです)。
検査ステータス信号の動作
ビット名 | バッファリングが無効な場合の結果 | バッファリングが有効な場合の結果 |
---|---|---|
Inspecting |
画像を処理しているときにセットされます。 |
画像を処理しているときにセットされます。 |
Inspection Complete |
画像処理の完了時にトグルされます。 |
画像処理の完了時にトグルされます。 |
Results Buffer Overflow |
0 に設定されたままです。 |
PLC が前の結果に確認応答しなかったために、検査結果をキューに入れることができなかったときにセットされます。結果バッファがオーバフローします。検査結果が正常にキューに入れられたときにクリアされます。 |
Results Valid |
新しい結果が Inspection Results および Inspection Results Data チャネルに入れられたときに設定されます。Inspection Results Ack ビットを真に設定することによって結果が確認応答されるまでセットされたままです。 |
新しい結果が Inspection Results および Inspection Results Data チャネルに入れられたときに設定されます。Inspection Results Ack ビットを真に設定することによって結果が確認応答されるまでセットされたままです。 |
Job Pass | 検査が完了したときに [ジョブの PASS/FAIL] のセルが合格を示すとセットされます。そうでない場合は、クリアされたままです。 注 : Inspection Completed ビットが立つ前のジョブ PASS ビットは有効です。 |
新しい結果が InspectionResults 属性に挿入され、[ジョブの PASS/FAIL] のセルがその結果に対して合格を示すとセットされます。そうでない場合は、クリアされたままです。InspectionResultsAck 属性を真に設定することによって結果が確認応答され、ビットがクリアされるまで、状態は変化しません。 注 : Results Valid ビットがセットされる前のジョブ PASS ビットは有効です。
|
結果のバッファリング
検査結果用のキューを有効にする必要があります。有効にした場合、PLC が有限個の検査データ結果を読み取るまでキューに入れておくことができます。これは、システムの複数の部分 (外部 PLC を含む) の速度が短時間に低下した場合に、データの流れを滑らかにするのに有効な機能です。
通常、結果が送信される速度より検査を実行する速度の方が速い場合、バッファリングありとバッファリングなしの間の大きな相違点は、破棄される結果を判別するかどうかということです。バッファリングが有効でない場合は最新の結果が保持され、以前の結果は PLC が読み取ることができず失われます。原則的に、最新の結果によって以前の結果が上書きされるだけです。バッファリングが有効である (さらに、キューがいっぱいである) 場合は、結果キューに空きができるまで最新の結果が破棄されます。
ソフトイベント
PLC から In-Sight ビジョンシステムへのデータ送信に加えて、ジョブ固有の動作を制御するために、ソフトイベントを送信できます。個々のソフトイベントには、トリガ (Inspection Control オブジェクトのビット 24 ~ 31) および確認応答ビット (Inspection Status オブジェクトのビット 24 ~ 31) が関連付けられています。トリガビットの立ち上がりエッジによって、In-Sight ビジョンシステムは、ソフトイベントに関連付けられている動作を処理します。ソフトイベントの開始時に、ビジョンシステムは Soft Event Ack ビットを High に設定します。このビットは、PLC が Trigger ビットをリセットして、ソフトイベントに関連付けられている動作の処理が完了するまで High のまま保持されます。ソフトイベントをトリガできない場合は、General Fault ビットが High に設定されます。このビットは、イベントが正常にトリガされるまで High のまま保持されます。
POWERLINK/In-Sight ビジョンシステムでの LED の動作
POWERLINK 対応 In-Sight ビジョンシステムを使用するときには、ビジョンシステムの LED を使用して、POWERLINK 固有の最新動作ステータスの更新を通知することができます。ユーザ 1 LED (赤) は POWERLINK エラー LED、ユーザ 2 LED (緑) は POWERLINK ステータス LED です。これらの状態は [ディスクリート I/O の設定] ダイアログで変更できません。
ユーザ 2 LED の状態 | LED の動作 | 説明 |
---|---|---|
LED オフ |
常にオフ |
POWERLINK を初期化しています。 |
LED の点滅 |
10Hz で点滅 |
POWERLINK は基本 Ethernet モードです (ネットワークで POWERLINK マスターノードが検出されていません)。 |
LED 1 回ずつ点灯 |
短く 1 回点灯 (200ms) し、長く 1 回消灯 (1000ms) |
ビジョンシステムは POWERLINK ネットワークでマスターノードを検出しましたが、等時性通信は検出されませんでした。 |
LED 2 回ずつ点灯 |
短く 2 回点灯し、長く 1 回消灯 |
POWERLINK ネットワークが等時性通信を開始しましたが、このビジョンシステムは参加するように設定されていません。 |
LED 3 回ずつ点灯 |
短く 3 回点灯し、長く 1 回消灯 |
ノードデバイスの設定が完了し、マスタノードからの等時性通信開始の信号を待っています。 |
LED オン |
常時点灯。 |
ノードデバイスは POWERLINK ネットワーク上で通信しています。 |
LED が点滅 |
2.5Hz で点滅 |
POWERLINK ノードはエラーのため停止しています。 |