In-Sight® Explorer にようこそ

はじめに

In-Sight® Explorer は、強力で完全に統合されたビジョンシステム構成、管理、およびオペレータインタフェースすべてを 1 つのソフトウェアパッケージで提供します。さらに、今回のバージョンから、In-Sight ビジョンシステムをプログラムするための 2 つの開発環境、EasyBuilder およびスプレッドシートが使用できるようになりました。

EasyBuilder

EasyBuilder® には、アプリケーションのセットアップを簡略化するためのステップ単位のテンプレートと、画像を中心としたインタフェースが用意されています。このインタフェースでは、検査の設定時に画像内の対象となる特徴をポイント & クリックで選択できます。

スプレッドシート

スプレッドシートは従来の In-Sight Explorer 開発環境で、高度な柔軟性とフルセットの開発ツールを提供します。「In-Sight 関数リファレンス」では、スプレッドシートのセルに挿入できるすべての関数が説明されています。

[センサ/デバイスをネットワークに追加] ダイアログは、ネットワーク上で In-Sight やそのほかのデバイスをすばやく設定できるユーティリティです。

「In-Sight 通信リファレンス」では、In-Sight ビジョンシステムが TCP/IP ネットワークまたはシリアルポート接続経由で外部デバイスと通信する方法が説明されています。

Cognex Connect

Cognex Connect™ を使用すると、In-Sight ビジョンシステムを既存の自動化制御システムに簡単に統合できます。Cognex Connect には、ビジョンシステムで使用可能な非常に広範な通信機能が用意されています。

In-Sight を初めて使用する場合

初めて In-Sight 製品を使用する場合は、「用語集」と「ヘルプの表記規則」トピックから参照されることを推奨します。これらのトピックには、重要な用語の定義や、このヘルプファイルを使用する上でのアドバイスが記載されています。

In-Sight を既に使用している場合

このヘルプファイルは、In-Sight Explorer バージョン 4.x.x での使用を前提にしています。既に In-Sight Explorer や PC Host を熟知している場合は、In-Sight Explorer リリースノートの新機能に関するセクションをお読みください。

In-Sight® Explorer 4.9.0 ヘルプ (Cognex Directory Server 非表示版)

Revision: 5.6.0.17

03/22/2018 16:05:43

Copyright © 1999-2013

Cognex Corporation

All Rights Reserved.


ゲッティングスターテッド

In-Sight Explorer にようこそ

マシンビジョンの概要

In-Sight Explorer開発環境

In-Sight ビジョンシステムへの接続

マシンビジョンの概要

In-Sight ビジョンシステムは、通常、対象物の視覚的検査を実行するようにプログラムされたファクトリオートメーション環境に統合されます。ビジョンシステムのプログラミングには次の内容が含まれます。

  • 画像内で際立っている「対象の特徴」(特徴として知られます) に基づき、何を探すかをビジョンシステムに指示する
  • いつ画像を取り込むか、どのように部品を最適に照らすかを指示する
  • 解析結果の通信方法と、結果に基づく操作方法を指示する

In-Sight ビジョンシステムマシンビジョンソリューション

一般に、マシンビジョン問題に対する In-Sight ソリューションには、次のものがあります。

  • In-Sight ビジョンシステム。画像を取り込むためのデジタルグレースケールまたはカラーカメラとそれらをデジタル化する CCD チップ、プログラムされた画像解析を実行する PC プロセッサ、および結果をレポートしたり、HMI、PLC、ロボットなどの他のデバイスとの間でメッセージを送受信したりする入出力ハードウェアと通信リンクが含まれます。
  • In-Sight Explorer コンピュータソフトウェア。画像解析を実行し他のデバイスと通信するように In-Sight ビジョンシステムをプログラムするために使用されます。
  • レンズ。視野 (FOV) 内の対象の特徴を最適化します。
  • いくつかの形式の照明。画像内の特徴のコントラストを強化します。

オプションのコンポーネントには、次のものがあります。

  • 対象物検出同期センサ (通常は光学式または磁気センサ)。ビジョンシステムの画像の取り込みと処理をトリガします。
  • いくつかの形式のアクチュエータ。画像解析の結果に基づき部品を拒否またはソートします。

このシステムでは、同期センサが、部品または対象物が検査位置に着いたタイミングを示します。同期センサは、部品または対象物がビジョンシステムのそばを通るときに、その画像を取り込むように In-Sight ビジョンシステムをトリガします。この段階では、一般に、パルスが照明メカニズムに送られ照明もトリガされます。部品または対象物を照らすために使用される照明は、対象の特徴を強調し、影や反射などの対象外の特徴は不明瞭で目立たなくするように設計されます。

画像取り込みのプロセスでは、In-Sight ビジョンシステムのレンズが FOV (In-Sight ビジョンシステムが認識する物理領域) から光エネルギーを取り込み、それをデジタル形式に変換します。2D グリッドの値はピクセルと呼ばれ、個々のピクセルが位置 (X、Y 座標) とその位置の照明輝度を表すグレースケール値 (0 ～ 255、0 = 純黒、255 = 純白) に対応します。

Closed 例 - 画像の座標

注意: In-Sight カラービジョンシステムは、ピクセルの色成分をレポートします。

その後、In-Sight ビジョンシステムは画像を処理し、画像解析 (画像内の対象物、寸法、または特徴のカウント、測定、識別など) を実行します。ビジョンシステムは、画像解析の結果に基づいて、部品の合格または不合格を判断し、アクチュエータへ信号を送信したり、ネットワーク接続されたデバイスと画像解析結果を通信したりします。

Closed ファクトリオートメーション環境でネットワーク接続された In-Sight ビジョンシステムの例

マシンビジョンアプリケーションの開発

In-Sight ビジョンシステムを使用したマシンビジョンアプリケーション開発には、次の 3 つの主要なコンポーネントがあります。

  • 問題の解析
  • ジョブの作成
  • テストと導入

問題の解析

マシンビジョンアプリケーションでは、問題の解析は 4 つの段階に分かれます。

  • 画像解析
  • 画像の取り込み
  • 外部との相互通信
  • オペレータの対話型操作

画像解析

画像解析の条件を検討する場合は、最初に検査を定義します。部品の考えられる合格/不合格条件、実行する検査の種類 (良/不良を判断する定性検査、または量や数量などの定量検査) を定義します。例えば、カウント、測定、存在/欠落の検出、識別のすべてまたはそのいずれかの実行や、速度対精度などの必要な妥協レベルを定義します。

注意: 合格/不合格条件は主観的であってはなりません。何が合格で何が不合格かを示す明確な分類が必要です。

また、次の点も考慮します。

  • 部品は固定位置にあるか、移動するか (移動する場合は、どのようなタイプの移動であるか)。
  • ビジョンシステムが部品の画像取り込みに要する時間はどのぐらいか。
  • ビジョンシステムはどの程度迅速に結果を通信する必要があるか。

次に、部品を見て、何が対象の特徴であるかを識別します。一般にマシンビジョンでは、対象の特徴は、パターン、ブロブ、エッジ、コード/シンボル、またはテキストのいずれかです。それらの特徴の「良」または「不良」を判断する条件や、サイズ、形状、または数量を何によって測定するかを検討します。良い部品と不良部品を明確に区別できない場合、適切なビジョン検査を設計することはきわめて困難です。プロセスのこの部分を容易にするために、部品が合格するために満たす必要のある条件をすべて一覧にします。

画像の取り込み

マシンビジョンアプリケーションでは、良質の画像がなければ、アプリケーションがいかに綿密に設計されていても、正常に実行されません。部品の最適な画像を取り込む方法 (部品の対象の特徴を強調する必要がある) を検討する場合は、最初に、必要となる物理的な設定を計算します。In-Sight ビジョンシステムの適切な物理的設定を決定するには、画像内の部品の最適なサイズ、ビジョンシステムと部品との間のワークディスタンス、および最適な視野 (FOV) を計算します。

Closed 例 - 物理的な設定

ヒント: Cognex のレンズアドバイザを使用すると、ご使用のマシンビジョンアプリケーションに適したレンズを確認できます。

次は、問題の最も難しい側面である、対象の特徴を最適化して影を目立たなくする照明および光学的なソリューションを設計します。詳細については、照明と光学系のトピックを参照してください。

外部との相互通信

In-Sight ビジョンシステムは、通常、ファクトリオートメーション環境に統合されるため、ビジョンシステムは、ロボット、プログラマブルロジックコントローラ (PLC) などの他のデバイス、ヒューマンマシンインタフェース (HMI) を介したオペレータ、FTP ファイルサーバのすべてまたはそのいずれかと相互通信する必要があります。

このような環境では、ビジョンシステムが外部デバイスからのデータを受信すると見込まれるか、検査結果を通信すると見込まれるか、およびどの結果を送信するかを決定し、結果に基づいて実行する操作を決定します。

さらに、ビジョンシステムが、シリアル (ロボット)、ディスクリート (PLC)、Ethernet のすべてまたはどの通信プロトコルで通信するかを決定します。また、ディスクリートラインの追加を容易にするために Cognex 入力/出力 (I/O) モジュールが必要かどうか、ビジョンシステムの画像取り込み、部品の検査、および結果の通信をトリガするために使用する信号の種類は何かを考慮します。検査画像を FTP ファイルサーバに格納するかどうかも検討します。

 | ファクトリデバイス | プロトコル | プロトコルの種類
PLC | 三菱電機 | SLMP | 産業用 Ethernet
 |  | CC-Link | フィールドバス
 |  | PLC ファンクションブロック | 設定済みのデバイスのコマンドおよび属性
 | Rockwell | EtherNet/IP | 産業用 Ethernet
 |  | [DeviceNet] | フィールドバス
 |  | AOP | 設定済みのデバイスのコマンドおよび属性
 | Siemens | PROFINET | 産業用 Ethernet
 |  | PROFIBUS | フィールドバス
 | その他のプロトコル | MODBUS TCP | 産業用 Ethernet
 |  | Modbus | シリアル
 |  | ASCII 文字列コマンド | シリアル
 |  | OPC | 産業用 Ethernet
 |  | TCP | 産業用 Ethernet
 |  | UDP | 産業用 Ethernet
FTP サーバ |  | FTP | FTP 画像転送
ロボット | ABB、Denso、FANUC、Kuka、三菱電機、Motoman、および Staubli | 設定済みのドライバおよび ASCII 文字列コマンド | シリアル/Ethernet
 | Adept、Epson、IAI、Kawasaki、Nachi、Yamaha、およびその他のロボット | ASCII 文字列コマンド | シリアル/Ethernet

オペレータの対話型操作

ファクトリオートメーション環境では、オペレータは環境内の機器を管理および保守する責任者です。大半のオペレータは、マシンビジョンアプリケーションの設計とプログラムの責任は担っていないため、ユーザアクセスの容易さを考慮する必要があります。

実装する起動オプションのタイプと、ユーザの管理方法 (ユーザ名とユーザリスト、それぞれのパスワードを作成する必要があります) について綿密に検討します。オペレータには、ビジョンシステムとやり取りするためのインタフェースも必要です。ここでは、ジョブが作成された開発環境に応じて、設定可能にする必要のあるパラメータ、オペレータが責任を担う対話レベル、およびインタフェースのレイアウトとプレゼンテーションについて検討します。

ジョブの作成

In-Sight の用語で「ジョブ」と呼ばれる、マシンビジョンアプリケーションの作成には 4 つのステップがあります。

  1. ビジョンシステムへの接続と画像のロード
  2. 検査ツールの設定
  3. 検査ツールの結果の設定
  4. 最終的な実行時設定の構成

ビジョンシステムへの接続と画像のロード

In-Sight Explorer EasyBuilder またはスプレッドシートのいずれかの開発環境を使用してジョブを作成できます。最初のステップで、In-Sight ビジョンシステムまたはエミュレータのどちらかに接続します。ジョブを実際のビジョンシステムまたはエミュレータ (PC 上のビジョンシステムをシミュレートしたバージョン) のどちらで作成するかを決定します。

注意: ジョブをエミュレータで作成する場合は、入力/出力機能は開発できません。また、事前に取り込んだ画像をロードする必要があります。

ビジョンシステムまたはエミュレータに接続した後、必要なネットワーク設定値を設定し、その後、画像取り込みパラメータを設定します (ビジョンシステムに接続されている場合)。ここで、特徴を最適化するために焦点と照明を調整し、画像取り込みトリガと露光のタイミングを設定し、必要な場合は、画像をピクセルから実世界の単位にキャリブレーションします。

検査ツールの設定

In-Sight ビジョンツールと EasyBuilder の位置決めツールと検査ツールは次の用途に使用されます。

  • 検査: 存在/欠落の検出、欠陥解析、パターンマッチング
  • 識別: 色、データコード、製造ロット番号、シリアル番号、テキスト
  • 測定: 計測、カウント、検出

画像解析に基づいて、検査に適したツールを選択します。

  • ブロブツールは、しみのような特徴を検出する場合に使用されます。特徴のサイズと形状は部品ごとに異なる場合があります。ブロブは、検査と測定の両方のアプリケーションで使用できます。
  • カラーツールは、色データに基づいて対象物を識別し照合するために使用されます。カラーツールには In-Sight カラービジョンシステムが必要であり、検査、識別、および測定の各アプリケーションで使用できます。
  • エッジツールは、ピクセルグレースケール値が明らかに不連続な円エッジ、カーブエッジ、または直線エッジを検出するために使用されます。エッジツールは、一般に検査と測定のアプリケーションで使用されます。
  • 傷検出ツールは、高度なパターンマッチング解析を実行して欠陥の有無を検証するために使用されます。傷検出ツールは一般に検査アプリケーションで使用されますが、一部の測定アプリケーションで使用されることもあります。
  • ヒストグラムツールは、コントラストや平均グレースケール (またはカラー) 値などのピクセル値に関するデータを返します。
  • ID ツールは、識別アプリケーションで 1D コード、2D コード、およびシンボルを識別するために使用されます。検出されたコード/シンボルは、他の種類の検査用の位置データも提供します。
  • 画像ツールは、画像を他の関数でさらに解析または使用する目的で、画像内の特徴を強調したり目立たなくしたりするために使用されます。画像ツールは、検査アプリケーションと測定アプリケーションにそのまま使用することができます。また、他のビジョンツールの入力画像として使用することもできます。
  • エッジ検査ツールは、詳細なエッジ解析 (エッジの位置、エッジペアの位置と間隔、エッジ幅の測定など) を行って、エッジに欠陥またはギャップが存在するかどうかを判定するために使用します。エッジツールは、検査アプリケーションと測定アプリケーションで使用されます。
  • OCR/OCV ツールは、ABC/123 などの英数字の読み取りと照合の両方またはどちらかを実行するために使用されます。一般に OCR/OCV ツールは識別アプリケーションで使用され、ID ツールと同様に、検出されたテキストは他の種類の検査用の位置情報を提供します。
  • パターンマッチングは、領域とその他の幾何学的条件に基づきます。

ヒント: ツールの設定時には、いくつかの部品の画像をロードすることを推奨します。ロードされた画像を再生し、ツールの範囲やしきい値を調整して偏差を補正できます。画像には、部品の許容可能な偏差の所定の範囲と、いくつかの既知の欠陥品質が含まれます。

一般に、カラー、傷検出、エッジ検査、およびパターンの各ツールは最も低速ですが最も正確です。エッジツールが最速で、ブロブ、ヒストグラム、ID、および OCV/OCR の各ツールは中程度です。

注意: EasyBuilder 位置決めツールと検査ツールは、アプリケーションの機能によって分類されます。

フィクスチャ

部品が画像内で移動する場合は、フィクスチャを作成する必要があります。フィクスチャは、部品の特徴を検出し、他のビジョンツールに、それぞれの検査を実行すべき場所を指示します。フィクスチャは、部品が示す移動のタイプに応じて、パターン、ブロブ、またはエッジ特徴に基づきます。部品が水平方向のみ、または垂直方向のみに移動する状況では、エッジを使用して他のツールを固定できます。角度方向が不要で、形状が各画像でほぼ同じ場合は、ブロブを使用できます。正確な座標が必要で、特徴が移動またはスケールやサイズの微小変化を示す場合は、パターンが非常に効果的です。

キャリブレーション

測定アプリケーションでは、特に、In-Sight ビジョンシステムから返されたピクセル座標をワールド座標に変換することが非常に重要です。EasyBuilder 開発環境では、[画像の設定] ステップで、[キャリブレーション (画像座標系をワールド座標系に変換)] グループボックスを使用して、ピクセル結果を実世界の測定単位として設定できます。スプレッドシートでは、キャリブレーションツールを使用します。

論理演算関数

結果、別のツール、またはツールセットのみに基づいて機能するようにツールを設定するなどのジョブのロジックを追加できます。追加には、EasyBuilder 開発環境では [部品の検査] ステップで Math & Logic ツールを使用し、スプレッドシート開発環境では、条件付き参照、セル状態、および数値演算関数を使用します。画像の強調および変更ツールを追加して、検査の前に画像をフィルタしてさらに処理することもできます。

検査ツールの結果の設定

検査ツールが実行され、結果が返されたら、結果をデバイス間で共有し、結果に基づいて操作を開始することで結果を活用する必要があります。ジョブ開発のこの部分では、ビジョンシステムと外部デバイス間の入力と出力を定義します。ディスクリート入力およびディスクリート出力の複雑さは、Cognex I/O モジュールを使用するかしないかに大きく依存します。In-Sight ビジョンシステム単独では、ビジョンシステムのオンボード I/O に制限されることが理由です (モデルによって異なります)。Cognex I/O モジュールは、ビジョンシステムへの電力に加え、追加のディスクリート I/O ラインへのアクセスも提供します。

この機能に関する詳細については、入出力関数および In-Sight 通信のトピックを参照してください。

最終的な実行時設定の構成

検査ツールが実行され、結果の通信が確立されたら、ジョブ開発の最終ステップに注目します。このプロセスでは、VisionView インタフェースパネルまたは別のサポートされている HMI 上で表示できる、カスタムビュー (スプレッドシート) または EasyView (EasyBuilder) を作成することで、オペレータに提示する必要のあるインタフェースの種類とパラメータについて検討します。フィルムストリップを使用して、後から確認するために合格/不合格条件に基づいて画像を記録するようにビジョンシステムを設定します。ジョブファイルをビジョンシステムに保存して、ジョブファイルを PC にバックアップします。最後に、ビジョンシステムをオンラインにして、導入する前にジョブをテストします。

ここで、ジョブの実行時間を決定できます。実行時間 = 遅延 + 画像取り込み時間 + ジョブ実行時間 + 表示時間

  • 遅延: 内部的 (最大 250 マイクロ秒) または外部的 (数ミリ秒) のいずれかで、ビジョンシステムの画像取り込みをトリガするために必要な時間。遅延を減らすには、ビジョンシステムの内部トリガを使用します。
  • 画像取り込み時間: 露光のための時間と、画像を画像処理プロセスに転送するための時間。画像取り込み時間を短縮するには、露光時間を短くして、部分的な画像取り込みを実行します。
  • ジョブ実行時間: ジョブファイル内のすべての実行時間の合計。ジョブ実行時間を短縮するには、小さい対象領域を使用して、偏差を少なくします。
  • 表示時間: 画像やグラフィカルオーバレイを表示するために使用される時間。表示時間を短縮するには、カスタムビューや EasyView などのオペレータインタフェース内の画像、グラフィックス、オーバレイの表示要素を無効にします。

テストと導入

導入前のジョブのテストには 4 つのステップがあります。

  1. オンライン化
  2. ジョブのテスト
  3. 範囲と制限の微調整
  4. 導入

オンライン化

このステップでは、In-Sight ビジョンシステムをオンライン状態にして、ジョブの実行命令や外部相互通信に基づいてジョブを実行できるようにします。

ジョブのテスト

返された結果をモニタし、外部デバイスとの適切な通信を確保します。TestRun は、予測されたパラメータの範囲内でマシンビジョンアプリケーションが動作しているかを確認する組み込みの方法を提供します。TestRun は、In-Sight ビジョンシステムでテストを実行し、その結果を想定される値と比較します。

範囲と制限の微調整

この段階では、ビジョンシステムをオフラインにし、必要に応じて各種ツールのパラメータを調整します。ここでも TestRun は、予測されたパラメータの範囲内でマシンビジョンアプリケーションが動作しているかを確認する組み込みの方法を提供します。

導入

ビジョンシステムをオンラインにし、ファクトリオートメーション環境内で動作させます。

In-Sight Explorer 開発環境

In-Sight Explorer には、In-Sight ビジョンシステムのプログラミングと管理のために EasyBuilder とスプレッドシートの 2 種類の開発環境が用意されています。

EasyBuilder

EasyBuilder には、「ジョブ」と呼ばれる In-Sight ビジョンシステム用マシンビジョンアプリケーションの構築作業をタスクに分解するために、ステップ単位のテンプレート (アプリケーションステップ) が用意されています。EasyBuilder は画像を中心としたインタフェースに基づいて開発されていて、画像上で位置決めツールや検査ツールの対話型グラフィックス (領域) を移動し、結果を即座にフィードバックすることができます。インタフェースの下枠にある設定ペインは選択したステップに基づいて更新されます。また、このペインにはツールの結果をモニタし、アプリケーションをトラブルシューティングするための結果テーブルも表示されます。アプリケーションの開発や設置中には、ヘルプや入出力の統合モニタからガイダンスや有益なフィードバックを得ることができます。

注意: EasyBuilder 開発環境の使用方法の詳細については、[パレット] の [ヘルプ] タブを参照してください。

スプレッドシート

スプレッドシートは従来の In-Sight Explorer プログラミング環境です。この環境では、半透明のスプレッドシートオーバレイを使用して、ビジョンタスク用に In-Sight センサを構成することができます。スプレッドシートのパレットには非常に広範な画像処理関数および通信関数が用意されています。このパレットには、In-Sight の関数およびスニペットの展開可能なメニューがあります。これらはドラッグ & ドロップするだけで、簡単にスプレッドシートに挿入できます。メニューバーとツールバーは、画像取り込み機能や、セルへの関数の挿入機能のほか、ビジョンアプリケーションに関するあらゆる機能へのアクセスを提供します。

注意: 一部の In-Sight センサでは、スプレッドシートは利用できません。

EasyBuilder とスプレッドシート

EasyBuilder では、スプレッドシート環境と直接対話しなくても、容易に In-Sight センサをプログラミングすることができます。EasyBuilder でジョブを作成すると、プログラムされたアプリケーションステップと対応する In-Sight 関数が自動的にスプレッドシートに入力されます。それでも、スプレッドシート環境の柔軟性や包括的なツールセットは利用可能なので、In-Sight Explorer では、EasyBuilder の [表示] メニューで [スプレッドシート]、またはスプレッドシートの [表示] メニューで EasyBuilder を選択することによって、EasyBuilder 環境、スプレッドシート環境のどちらでもジョブの表示やプログラミングができます。

注意: 一部の In-Sight センサでは、スプレッドシートは利用できません。

スプレッドシートに挿入した関数やセルは編集可能なので、EasyBuilder インタフェースで表示するパラメータをカスタマイズできます。位置決めツールや検査ツールのパラメータは、追加、削除、名前変更が可能です。

注意: スプレッドシート環境で EasyBuilder パラメータを編集するには、スプレッドシートプログラミング環境に関する高度な知識が必要です。

EasyBuilder は、次のタイプのマシンビジョンアプリケーションに適しています。

  • 有無判定ツールまたは計数検査ツールを利用したコンポーネントアセンブリの検証。
  • ID コードの読み取り、パターン、またはカラー識別検査ツールを利用した製品の検証。
  • 距離および角度測定検査ツールを利用し、さらに、[画像の設定] ステップでキャリブレーション機能を使用して結果を実世界の測定単位にキャリブレーションする機能を持つ計測アプリケーション。
  • [通信] ステップで、PatMax パターン位置決めツールとベンダ固有の通信プロトコルを使用するビジョンガイド付きロボットアプリケーション。
  • 文字認識検査ツールを利用し、さらに、外部デバイスからテキスト文字列を入力する機能を持つ高コントラスト OCV/OCR アプリケーション。
  • ブロブ、輝度、コントラスト、ピクセル数の有無判定検査ツールを利用する簡単な欠陥検出アプリケーション。

次のタイプのアプリケーションでは、スプレッドシートの機能や関数へのアクセスが必要です。

  • 高度な欠陥検出や難しい ID、OCV/OCR など、画像をフィルタする機能を必要とするアプリケーション。
  • ID 検証アプリケーション。このようなアプリケーションでは、通常、大規模なカスタマイズが必要で、スプレッドシート機能に最適です。
  • 複雑なロジックを使用してツール結果を組み合わせたり、ツール結果を分類したり、ツール結果に基づいて出力をカスタマイズしたりする、ロジックやカスタマイズされた結果が関係するアプリケーション。
  • ランダムな方向を向いた複数の対象物が関係するアプリケーション。位置決めツールは複数の製品を検出できますが、結果をソートする能力は持ちません。
  • 個数のわからない対象物が関連するアプリケーション。このようなアプリケーションでは、スプレッドシートで複雑な編集が必要になります。

In-Sight ビジョンシステムへの接続

In-Sight Explorer は、サブネット上のすべての In-Sight ビジョンシステムを自動的に検出し、表示します。 アイコンとともに表示されるビジョンシステムは、実在する In-Sight ビジョンシステム (In-Sight 5100 など) を表し、 [image] アイコンは、ネットワーク接続された PC 上で動作する In-Sight エミュレータを表します。エミュレータの名前は、Microsoft Windows 環境での PC の名前です。

すべての In-Sight ビジョンシステムは出荷時に DHCP を使用するようにネットワーク設定されています。このため、DHCP サーバが用意されているネットワークでは、新しい In-Sight ビジョンシステムをアクティブなネットワークポートに接続するだけで、すぐ通信することができます。ネットワークで DHCP サーバを使用しない場合、またはビジョンシステムを PC に直接接続する場合は、[センサ/デバイスをネットワークに追加] ダイアログを使用して、ビジョンシステムとの接続を確立します。

実行モード動作時に In-Sight ビジョンシステムでプログラミングや表示を行うには、In-Sight ビジョンシステムに「ログオン」する必要があります。ビジョンシステムにログオンするには、有効なユーザ名とパスワードを使用する必要があります。新しいビジョンシステムは、admin、monitor、および operator という 3 つの標準アカウントを含むユーザリストを備えて出荷されます。これらのアカウントにはパスワードは設定されていません。

In-Sight Explorer を起動すると、デフォルトで admin ユーザとしてログオンされます。このスタートアップユーザ名は、[オプション] ダイアログで変更できます。現在のユーザ名やパスワードを変更するには、[システム] メニューの [ログオン/ログオフ] をクリックします。現在のユーザが変更されるたびに、In-Sight Explorer はユーザに関する情報を保存し、ほかの In-Sight ビジョンシステムへの接続時にこの情報を使用します。

In-Sight ビジョンシステムに接続 (通常、使用可能なビジョンシステムやエミュレータのリストから、目的のビジョンシステムまたはエミュレータをダブルクリック) すると、このセンサまたはエミュレータにユーザ名とパスワードが送信され、バッファされた画像、設定とジョブ、さらに取り込まれた画像から構成されるビュー、およびステータスバーが表示されます。


ヘルプの表記規則

In-Sight Explorer にようこそ

このページでは、このヘルプファイルで使用されているいくつかの書式について説明します。

注意

「注意」は、説明に関する追加情報を提供します。通常は、その「注意」の直前に記載されている説明文に対する補足です。

注意: これは、「注意」の表記例です。

ヒント

「ヒント」には、理解を助ける示唆やショートカットが示されています。

ヒント: これは、「ヒント」の表記例です。

ポップアップウィンドウ

多くのヘルプトピックには、現在のページの上に重ねて表示される「ポップアップ」ウィンドウが含まれています。ポップアップウィンドウを閉じるには、ウィンドウ外の任意の場所をクリックします。また、ポップアップウィンドウ内の図以外の場所をクリックすることによって閉じることもできます。

ポップアップウィンドウの例

ドロップダウンホットスポット

ヘルプ内には先頭に Closed 矢印がついているテキストがあります。このテキストをクリックすると、ページの一部が「ドロップダウン」して、追加のテキストやグラフィックスが表示されます。例えば、前述の「矢印」をクリックしてみてください。

ドロップダウンテキストおよびグラフィックスは、簡潔にするために最初は表示されていない情報 (大規模なグラフィックスや例など) が存在することを示します。追加の内容を確認したら、もう一度「非表示」にすることができます。

注意: リンクをもう一度クリックすると、こうしたテキストを「隠す」ことができます。

注意: ドロップダウンホットスポットを正常に機能させるには、Internet Explorer 4.0 以上を使用する必要があります。


EasyBuilder グラフィカルユーザインタフェース

概要

EasyBuilder GUI リファレンス

EasyBuilder グラフィカルユーザインタフェース (GUI) は画像を中心に構成されています。画像を取り囲むペインやコントロールは、マシンビジョンアプリケーション (「ジョブ」) を構築するプロセスをガイドするように設計されています。

EasyBuilder GUI は、メニューバー、ツールバー (標準、EasyBuilder、Explorer)、アプリケーションステップ、EasyBuilder ビュー、パレット および設定ペインの 6 つの部分で構成されています。

詳細については、赤色の枠で囲まれた各領域をクリックしてください。

ウィンドウペインのカスタマイズ

[アプリケーションステップ] (EasyBuilder ビューのみ)、[In-Sight のネットワーク]、[In-Sight のファイル] および [パレット] ペインはウィンドウペインにドッキングすることができます。また、ペインのタイトルバーをドラッグまたは右クリックすることによってカスタマイズすることができます。

ドラッグによるカスタマイズ

ウィンドウペインのタイトルをクリックして、目的の位置にドラッグします。

ウィンドウペインのドッキング

ウィンドウペインをユーザインタフェースの特定の範囲に固定するには、ドッキング先のウィンドウの端にウィンドウペインをドラッグして、ユーザインタフェースに表示される小さな正方形のいずれか 1 つにドロップします。小さな正方形にウィンドウペインを合わせると、ドッキング先の範囲が青色で表示されます。

ユーザインタフェースの左側にドッキングします。
ユーザインタフェースの右側にドッキングします。
ユーザインタフェースの上側にドッキングします。
ユーザインタフェースの下側にドッキングします。
ウィンドウペインをタブとしてドッキングします。

右クリックによるドッキング

ウィンドウペインのタイトルを右クリックすると、次のメニューが表示されます。

  • [ドッキング] (デフォルト):　ウィンドウペインをユーザインタフェースに固定します。
  • [自動的に隠す]:　ウィンドウペインをユーザインタフェースの横に「ピン留め」します。ウィンドウペインを表示するには、ユーザインタフェースのサイドバーにカーソルを合わせます。このメニューは [Floating] が選択されていると使用できません。
  • [隠す]:　ウィンドウペインを閉じます。再表示するには、[表示] メニューからウィンドウペインを選択します。このメニューは EasyBuilder の [アプリケーションステップ] ウィンドウペインでは使用できません。

注意:　ドッキングしていないウィンドウペインをダブルクリックすると、最後にドッキングした位置に戻ります。ドッキングしているウィンドウペインをダブルクリックすると、ユーザインタフェースから分離します。


メニューバー

グラフィカルユーザインタフェース

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

注意:EasyBuilder ビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

メニューバーは、次のメニューで構成されています。

  • [ファイル] メニュー:新しいジョブを作成したり、ジョブまたは画像を開いたり、保存したりすることができます。印刷前にジョブの結果テーブルをプレビューし、結果テーブルを印刷し、EasyBuilder を終了します。
  • [編集] メニュー:操作の取り消し、やり直し、また選択したツールのグラフィックスに対する編集操作の実行、領域の最大化を行います。
  • [表示] メニュー:次の項目の表示/非表示を切り替えて、EasyBuilder の GUI をカスタマイズします。[In-Sight のネットワーク] ペイン、[In-Sight のファイル] ペイン、パレット、ツールバー、フィルムストリップ。使用可能な EasyBuilder のアプリケーションステップへに移動したり、スプレッドシートビューに切り替えたりすることもできます。
  • [画像] メニュー:新しい画像の取り込み、ライブビデオ画像の表示、画像の記録と再生、画像の表示倍率の調整、画像の回転、および画像の露光過多・過少ピクセルのハイライトのオン/オフを行います。
  • [センサ] メニュー:アクティブな In-Sight ビジョンシステムのオンライン状態を切り替えます。アクティブな In-Sight ビジョンシステムの設定を構成します。これには、ネットワーク設定、日付と時刻の設定、ホストテーブルの設定、FTP 設定、外部照明の設定、表示画像の設定、および画像バッファ設定が含まれます。また、TestRun テストの設定と実行、ビジョンシステムのメモリ割り当ての設定、セル保護ライセンスの管理、ビジョンシステムのリセットを行うこともできます。
  • [システム] メニュー:EasyBuilder にログオンまたはログオフします。レポートの作成、ファイルのバックアップ、ファイルのリストア、クローン、ファームウェアの更新など、1つ以上の In-Sight ビジョンシステムに対してファイル操作を実行します。[センサ/デバイスをネットワークに追加] ダイアログを使用して、TCP/IP ネットワーク上で通信するように、または PC と直接通信するように、新規または既存の In-Sight ビジョンシステムまたはデバイスを設定できます。セキュリティレベルを設定したり、サブネット上のほかのデバイスと通信したり、現在のジョブレイアウトを保存したり、EasyBuilder GUI のオプション設定を行ったりします。
  • [ウィンドウ] メニュー:EasyBuilder ビュー、スプレッドシートビュー、センサのステータスビューを表示します。画面上のビューの表示レイアウトを設定し、複数のビューが同時に表示されるように並べて表示したり、重ねて表示したりします。
  • [ヘルプ] メニュー:EasyBuilder のバージョンやビルド情報の表示、およびオンラインヘルプ、In-Sight のサポートサイト、In-Sight ソフトウェアのリリースノートへのアクセスを提供します。

スプレッドシートビュー

注意:スプレッドシートビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

メニューバーは、次のメニューで構成されています。

  • [ファイル] メニュー:新しいジョブを開始したり、ジョブまたは画像を開いたり、保存したりします。また、セルデータをスプレッドシートにインポートしたり、スプレッドシートからエクスポートしたりすることができます。ジョブの保護、印刷前のジョブのプレビュー、ジョブの印刷、In-Sight Explorer の終了を行います。
  • [編集] メニュー:操作を取り消したり、やり直したりします。スプレッドシートのセルに対してブロック編集操作を実行したり、スプレッドシートの要素を消去します。スプレッドシートの検索、または特定のジョブのセクションへ直接移動します。セルの状態を設定し、対話型グラフィックスを操作したり、領域を最大化します。カスタムビューを設定したり、または既存のカスタムビュー設定を変更したりします。EasyView のカスタマイズ、または既存の EasyView 設定の変更を行います。
  • [表示] メニュー:次の項目の表示/非表示を切り替えて、In-Sight Explorer の GUI をカスタマイズします。[In-Sight のネットワーク] ペイン、[In-Sight のファイル] ペイン、パレット、ツールバー、フィルムストリップ、カスタムビュー、スプレッドシートオーバレイ、スプレッドシートの関数に関連付けられているオーバーレイグラフィックス。また、スプレッドシートの表示倍率を増減したり、ジョブ内のセルの依存関係をトレースすることもできます。
  • [挿入] メニュー:スプレッドシートのセルに、ビジョンツール、数式、数値、絶対または相対参照、コメントなどのオブジェクトを配置します。スプレッドシートに空白のセル、行、列を挿入したり、シンボリックタグを配置したりします。
  • [フォーマット] メニュー:セルのフォーマット、行および列パラメータ (高さ、幅、表示/非表示など) を設定します。
  • [画像] メニュー:新しい画像の取り込み、ライブビデオ画像の表示、画像の記録と再生、画像の表示倍率の調整、画像の回転、および画像の露光過多・過少ピクセルのハイライトのオン/オフ、スプレッドシートオーバレイの透明度の調整を行います。
  • [センサ] メニュー:アクティブな In-Sight ビジョンシステムのオンライン状態を切り替えます。アクティブな In-Sight ビジョンシステムの設定を構成します。これには、ネットワーク設定、日付と時刻の設定、ホストテーブルの設定、FTP 設定、シリアルポート設定、CC-Link の設定、ディスクリート I/O の設定、外部照明の設定、監査メッセージの設定、ラインスキャンの設定、スタートアップ設定、ユーザアクセス設定、 表示画像の設定、画像バッファの設定、センサフィルムストリップの設定、RAM ディスクフォルダの設定、アクティブセル制限の設定、およびジョブの成功/失敗設定が含まれます。また、スプレッドシートのセルの処理時間のプロファイル、TestRun テストの設定および実行、Dialog 関数での [キャンセル] ボタンの設定、セル保護ライセンスの管理、およびビジョンシステムのリセットも行えます。
  • [システム] メニュー:In-Sight Explorer にログオンまたはログオフします。レポートの作成、ファイルのバックアップ、ファイルのリストア、クローン、ファームウェアの更新など、1つ以上の In-Sight ビジョンシステムに対してファイル操作を実行します。[センサ/デバイスをネットワークに追加] ダイアログを使用して、TCP/IP ネットワーク上で通信するように、新規または既存の In-Sight ビジョンシステムを設定できます。セキュリティレベルを設定したり、サブネット上のほかのデバイスと通信したり、現在のスプレッドシートのレイアウトを保存したり、In-Sight Explorer GUI のオプション設定を行ったりします。ジョブの全体的な成功/失敗を決定するセルを選択し、モニタします。これは VisionView などのほかのアプリケーションへの入力として使用できます。
  • [ウィンドウ] メニュー:EasyBuilder ビュー、スプレッドシートビュー、またはセンサのステータスビューを表示します。画面上の In-Sight ビューの表示レイアウトを設定し、複数の In-Sight ビジョンシステムが同時に表示されるように並べて表示したり、重ねて表示したりします。
  • [ヘルプ] メニュー:In-Sight Explorer のバージョンやビルド情報の表示、およびオンラインヘルプ、In-Sight のサポートサイト、In-Sight ソフトウェアのリリースノートへのアクセスを提供します。


ファイルメニュー

メニューバー

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

[ファイル] メニューを使用すると、ジョブファイルや画像ファイルのロードと保存、およびアクティブジョブの結果テーブルの印刷を行うことができます。また、このメニューから、EasyBuilder を終了することもできます。

注意: EasyBuilder ビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[ファイル] メニューの項目

  • [ジョブの新規作成]: 現在のジョブを閉じて、空白のジョブファイルを開きます。新しいジョブを作成する前にアクティブジョブの保存を要求するプロンプトが表示されます。
  • [ジョブを開く]: [開く] ダイアログを使用して、In-Sight センサまたはエミュレータからジョブファイルをロードします。ジョブを開くと、そのジョブがアクティブジョブになります。
  • [ジョブの保存]: [名前を付けて保存] ダイアログを使用して、アクティブなジョブをファイルに保存します。アクティブジョブがすでに保存されていた場合は、その保存後に加えられたすべての変更を既存のファイルに上書きします。 [保存] ダイアログは表示されません。ジョブは、In-Sight センサやエミュレータに保存できます。
  • [ジョブに名前を付けて保存]: アクティブなジョブを新しいファイルに書き込みます。このオプションを選択すると、[名前を付けて保存] ダイアログが表示され、ファイル名の入力が求められます。ジョブは、In-Sight センサやエミュレータに保存できます。
  • [画像を開く]:[開く] ダイアログを使用して、In-Sight センサまたはエミュレータから画像をロードします。画像は一度開かれると、表示領域に表示されます。
  • [画像に名前を付けて保存]: 現在の画像をファイルに書き込みます。このオプションを選択すると、[名前を付けて保存] ダイアログが表示され、ファイル名の入力が求められます。画像は、In-Sight センサやエミュレータに保存できます。

注意: 画像を In-Sight センサに保存すると、そのファイル名の指定にかかわらず常に image.bmp になります。In-Sight センサは、任意の名前をつけた画像ファイルをサポートしていません。

  • [ページ設定]: [ページ設定] ダイアログを表示します。このダイアログでは、用紙のサイズ、向き、および余白を設定することができます。
  • [印刷プレビュー]: [Print preview] ウィンドウを表示します。このウィンドウでは、印刷前にページをプレビューすることができます。
  • [印刷]: アクティブジョブの結果テーブルをローカルプリンタ、またはネットワークプリンタで印刷します。[印刷] オプションを選択すると、[印刷] ダイアログが表示されます。
  • [終了]: EasyBuilder を閉じます。動作しているローカル In-Sight エミュレータがあれば、アプリケーションとともにシャットダウンされます。

スプレッドシートビュー

[ファイル] メニューを使用すると、ジョブファイルや画像ファイルのロードと保存、セルデータ (.CXD) ファイルのインポートとエクスポート、ジョブの保護、およびアクティブなスプレッドシートの印刷を行うことができます。また、このメニューから、In-Sight Explorer を終了することもできます。

注意: スプレッドシートビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[ファイル] メニューの項目

  • [ジョブの新規作成]: 現在のジョブを閉じて、空白のスプレッドシートを開きます。新しいジョブを作成する前にアクティブジョブの保存を要求するプロンプトが表示されます。

注意: In-Sight Explorer.exe と同じディレクトリに New.job というファイル名のジョブを保存しておくと、このジョブファイルが [新規ジョブ] のテンプレートになります。[新規ジョブ] を選択すると、空白のスプレッドシートではなく、New.job がロードされます。New.job が特定のセンサモデルまたはファームウェアリビジョンの機能を使用する場合、互換性のないセンサで新規ジョブを作成すると、ロード時にエラーになることがあります。無効な関数はテキスト文字列に変換されます。

  • [ジョブを開く]: [開く] ダイアログを使用して、In-Sight センサまたはエミュレータからジョブファイルをロードします。ジョブを開くと、そのジョブがアクティブジョブになります。
  • [ジョブの保存]: [名前を付けて保存] ダイアログを使用して、アクティブなジョブをファイルに保存します。アクティブジョブが既に保存されていた場合は、その保存後に加えられたすべての変更を既存のファイルに上書きします。[保存] ダイアログは表示されません。ジョブは、In-Sight センサやエミュレータに保存できます。
  • [ジョブに名前を付けて保存]: アクティブなジョブを新しいファイルに書き込みます。このオプションを選択すると、[名前を付けて保存] ダイアログが表示され、ファイル名の入力が求められます。ジョブは、In-Sight センサやエミュレータに保存できます。
  • [スニペット]: [スニペット] ダイアログを表示します。このダイアログでは、セルデータ (.CXD) ファイルとして保存した事前設定のセルのグループを PC 上の Snippets フォルダにエクスポートすることによって、よく実行するスプレッドシートタスクを自動化することができます。その後、エクスポートしたスニペットをスプレッドシートにインポートします。また、パレットからスプレッドシートに直接スニペットをドラッグアンドドロップすることによって、スニペットをインポートすることもできます。

    • [インポート]: [スニペット] ダイアログを開いて、スニペットをスプレッドシートにインポートします。

    • [エクスポート]: [スニペット] ダイアログを開いて、スニペットを PC 上の Snippets フォルダにエクスポートします。

  • [セルのインポート]: [セルのインポート] ダイアログを使用して、セルのデータまたは関数を .CXD ファイルとしてスプレッドシートにインポートすることができます。このデータファイルは、ローカルまたはリモートセンサのフラッシュメモリや RAM ディスクから、あるいは FTP サーバからロードすることができます。
  • [セルのエクスポート]: [エクスポート] ダイアログを使用して、セルのデータまたは関数を .CXD ファイルとして保存することができます。このデータファイルは、ローカルまたはリモートセンサのフラッシュメモリや RAM ディスク、または、FTP サーバや、ローカル PC 上の Snippets フォルダに保存することができます。
  • [ジョブの保護]: ジョブ内のデータをユーザが変更、移動、または削除できないようにします。このオプションを選択すると、[ジョブの保護] ダイアログが表示され、ジョブを保護するためのパスワードの入力が求められます。
  • [画像を開く]: [開く] ダイアログを使用して、In-Sight センサまたはエミュレータから画像をロードします。画像は一度開かれると、透明なスプレッドシートオーバレイの背後に配置されます。
  • [画像に名前を付けて保存]: 現在の画像をファイルに書き込みます。このオプションを選択すると、[名前を付けて保存] ダイアログが表示され、ファイル名の入力が求められます。画像は、In-Sight センサやエミュレータに保存できます。

注意: 画像を In-Sight センサに保存すると、そのファイル名の指定にかかわらず常に image.bmp になります。In-Sight センサは、任意の名前をつけた画像ファイルをサポートしていません。

  • [ページ設定]: [ページ設定] ダイアログを表示します。このダイアログでは、用紙のサイズ、向き、および余白を設定することができます。
  • [印刷プレビュー]: [Print preview] ウィンドウを表示します。このウィンドウでは、印刷前にページをプレビューすることができます。
  • [印刷]: [印刷] ダイアログを開きます。アクティブジョブのスプレッドシートをローカルプリンタまたはネットワークプリンタで印刷することができます。
  • [終了]: In-Sight Explorer を閉じます。動作しているローカル In-Sight エミュレータがあれば、アプリケーションとともにシャットダウンされます。


[保存] および [開く] ダイアログ

ファイルメニュー

In-Sight Explorer GUI リファレンス

[保存] および [開く] ダイアログは、本質的に FTP クライアントとして、2 つの In-Sight ビジョンシステム間の接続を確立します。ジョブおよび画像ファイルは、リモートビジョンシステムからロードしたり、リモートビジョンシステムに保存したりすることができます。

  • ジョブを開く
  • ジョブを保存する
  • 画像を開く
  • 画像を保存する
注意:
  • In-Sight ビジョンシステムの設定 (ネットワーク設定など) は、[ジョブに名前を付けて保存] ダイアログを使用して保存することはできません。ビジョンシステム設定ファイル (proc.set) は、標準の FTP コマンドを使用することによってのみ、ネットワーク上の In-Sight エミュレータまたは In-Sight 以外の FTP デバイスから転送することができます。
  • 1 つの In-Sight ビジョンシステムには 1024 個以上のファイルを保存できますが、FTP プロンプトまたは Telnet セッションからファイルリストを表示した場合、リストに表示されるファイルは 1024 個のみで、[保存] および [開く] ダイアログには 1024 ファイルしか表示できません。

ジョブを開く

[ジョブを開く] ダイアログを使用すると、ジョブファイルを In-Sight ビジョンシステムのメモリにアクティブなジョブとしてロードすることができます。

In-Sight ビジョンシステムからジョブファイルを開くには、以下の操作を実行します。

  1. [ファイル] メニューで、[ジョブを開く] をクリックします。

  2. 開くジョブファイルが格納されている場所を選択します。[ファイルの場所] ドロップダウンリストには、ローカル PC 上のドライブ、ネットワークドライブ、ローカルサブネット上で検出された In-Sight ビジョンシステムとエミュレータ (有効にされ、設定済みの RAM ディスク フォルダも含みます)、および Explorer のホストテーブルで定義されているすべてのデバイスが含まれています。ビジョンシステムで使用可能なジョブを表示するには、ドロップダウンリストから目的のビジョンシステムを選択します。In-Sight ビジョンシステムまたはエミュレータの RAM ディスクフォルダを選択するには、まず、目的の RAM ディスクフォルダがある In-Sight ビジョンシステムまたはエミュレータをクリックして、表示された RAMDisk フォルダをダブルクリックします。
  3. 必要なジョブをハイライトして、[開く] をクリックします。または、ジョブファイルをダブルクリックするか、[ファイル名] にファイル名を入力して [開く] をクリックします。
注意:
  • Explorer のホストテーブルで定義されていない限り、サブネット上に存在しない In-Sight ビジョンシステムが [ファイルの場所] ドロップダウンリストに自動的に表示されることはありません。
  • 次の場合は、[ジョブを開く] ダイアログを使用できません。
    • アクティブな In-Sight ビジョンシステムがオンラインになっている
    • ユーザのアクセスレベルがロックである
  • プロテクトアクセスレベルのユーザは、ユーザリストでその特定ユーザに FTP 読み出し権限が与えられている場合にのみ、[開く] ダイアログを使用できます。
  • In-Sight ビジョンシステムの設定を [ジョブを開く] ダイアログから開くことはできません。ビジョンシステム設定ファイル (proc.set) は、標準の FTP コマンドを使用することによってのみ、ネットワーク上の In-Sight エミュレータまたは In-Sight 以外の FTP デバイスから転送することができます。

ジョブを保存する

[ジョブに名前を付けて保存] ダイアログを使用すると、ジョブファイルを In-Sight ビジョンシステムのメモリに格納できます。格納先デバイスが In-Sight エミュレータの場合、ジョブは PC のハードディスク上のファイルに保存されます。

In-Sight ビジョンシステムにジョブファイルを保存するには、以下の操作を実行します。

  1. [ファイル] メニューで、[ジョブに名前を付けて保存] をクリックします。

  2. ファイルを保存する場所を選択します。[ファイルの場所] ドロップダウンリストには、すべてのローカルドライブ、ネットワークドライブ、ローカルサブネット上で検出された In-Sight ビジョンシステムとエミュレータ (有効にされ、設定済みの RAM ディスクフォルダを含む)、および Explorer のホストテーブルで定義されているすべてのデバイスが含まれています。In-Sight ビジョンシステムまたはエミュレータの RAM ディスクフォルダを選択するには、まず、目的の RAM ディスクフォルダがある In-Sight ビジョンシステムまたはエミュレータをクリックして、表示された RAMDisk フォルダをダブルクリックします。
  3. アクティブジョブを新規ファイルに保存するには、[ファイル名] テキストボックスに名前を入力して、[保存] をクリックします。既存のファイルに上書き保存するには、そのファイルをリストから選択して、[保存] をクリックします。

注意:
  • ファイルを初めて保存する場合は、ファイル名の指定を求められます。ファイルに名前を付けるときには、円記号 (¥) を使用しないでください。名前に円記号が含まれているファイルは、ファイル名を変更して円記号をなくしてからでなければ、コピーや削除ができません。また、ファイル名に円記号が含まれていると、リストア操作の際にエラーが発生します。
  • ファイル名にはスペースを含めることができます。
  • ファイル名に、/ : , ; * ? " < > | % の各文字を含めることはできません。
  • ジョブの保存中は、ビジョンシステムの電源を入れ直さないでください。ファイルの保存中に電源が遮断された場合は、ファイルをもう一度保存しなおす必要があります。
  • ジョブのサイズやジョブの保存先デバイスの接続速度によっては、ほかのジョブよりも保存に時間がかかるジョブがあります。
  • ファイルのコピーを保存する場合、またはファイルを別の場所に保存する場合は、[ファイル] メニューから [ジョブに名前を付けて保存] を選択します。
  • ジョブファイルのパス名は最大 255 文字です。ジョブファイルのパス名とは、ルートディレクトリからファイル名とファイル拡張子のすべての文字のことです。ネイティブモードコマンドを使用する場合、ファイル名の前のジョブスロットも合計文字数に含める必要があります。
  • Explorer のホストテーブルで定義されていない限り、サブネット上に存在しない In-Sight ビジョンシステムが [ファイルの場所] ドロップダウンリストに自動的に表示されることはありません。
  • 次の場合は、[ジョブに名前を付けて保存] ダイアログを使用できません。

    • アクティブな In-Sight ビジョンシステムがオンラインになっているただし、[ユーザ] ダイアログの [オンラインでもジョブを保存] チェックボックスをオンにすると、[フル] または [プロテクト] アクセス権限を持つユーザは [名前を付けて保存] ダイアログにアクセスできるようになります。

    • ユーザのアクセスレベルがロックである

  • プロテクトアクセスレベルのユーザは、ユーザリストでその特定ユーザに FTP 書き込み権限が与えられている場合にのみ、[名前を付けて保存] ダイアログを使用できます。
  • In-Sight Explorer 4.4.1 以降で、ジョブが保護されている場合は、ドロップダウンメニューのオプション [暗号化] が有効になります。2 つのオプション [高速] (デフォルト) および [レガシー] [高速] オプションでは、特に大規模なジョブファイルのジョブに関連する遅延を低減します。[レガシー] オプションは、In-Sight Explorer 4.4.0 以前を実行中の In-Sight ビジョンシステムと互換性を持たせる必要があるジョブの場合に使用します。[暗号化] ドロップダウンは、ジョブで使用されている現在の暗号化オプションに設定されます。

画像を開く

[画像を開く] ダイアログを使用すると、標準の .BMP または .JPG ファイルを In-Sight ビジョンシステムにロードすることができます。画像はロード先ビジョンシステムでアクティブな画像となり、In-Sight ファイルシステムの image.bmp と置き換えられます。

画像ファイルをアクティブな画像として In-Sight ビジョンシステムにロードするには

  1. [ファイル] メニューで、[画像を開く] をクリックします。

  2. 開く画像ファイルが格納されている場所を選択します。[ファイルの場所] ドロップダウンリストには、ローカル PC 上のドライブ、ネットワークドライブ、ローカルサブネット上で検出された In-Sight ビジョンシステムとエミュレータ、および Explorer のホストテーブルで定義されているすべてのデバイスが含まれています。ビジョンシステムで使用可能な画像を表示するには、ドロップダウンリストから目的のビジョンシステムを選択します。
  3. 必要な画像をハイライトして、[開く] をクリックします。または、画像ファイルをダブルクリックするか、[ファイル名] にファイル名を入力して [開く] をクリックします。

注意:
  • 次の場合は、[開く] ダイアログを使用できません。

    • アクティブな In-Sight ビジョンシステムがオンラインになっている

    • ユーザのアクセスレベルがロックである

  • プロテクトアクセスレベルのユーザは、ユーザリストでその特定ユーザに FTP 読み出し権限が与えられている場合にのみ、[開く] ダイアログを使用できます。
  • In-Sight ビジョンシステム (カラービジョンシステムを除く) は、最後に取り込んだ画像を低解像度画像として出力できます。個別の FTP 接続から FTP コマンドの get [ファイル名] を使用することによって、低解像度画像を image2.bmp (1/2 の高さ × 1/2 の幅) または image4.bmp (1/4 の高さ × 1/4 の幅) として入手できます。例えば、FTP コマンドラインから get image2.bmp と入力します。

画像を保存する

[画像に名前を付けて保存] ダイアログを使用すると、In-Sight ビジョンシステムのアクティブな画像を、後で取得するために保存することができます。画像は、ビットマップ (*.BMP) または JPEG (*.JPG) フォーマットで、任意の In-Sight ビジョンシステムまたはエミュレータに保存できます。

注意: 画像を In-Sight ビジョンシステムに保存すると、その画像が、デバイス上の image.bmp と置き換えられてアクティブな画像になります。画像ファイルの別名は、In-Sight ビジョンシステムではサポートされていません。ただし、In-Sight エミュレータでは、画像ファイルの別名が許されます。この場合、画像を保存できる容量は、PC のハードディスクの容量に基づきます。

画像ファイルを In-Sight ビジョンシステムに保存するには

  1. [ファイル] メニューで、[画像に名前を付けて保存] をクリックします。

  2. 画像の保存先 In-Sight ビジョンシステムを選択します。[ファイルの場所] ドロップダウンリストには、ローカル PC 上のドライブ、ネットワークドライブ、ローカルサブネット上で検出された In-Sight ビジョンシステムとエミュレータ、および Explorer のホストテーブルで定義されているすべてのデバイスが含まれています。
  3. 画像を新規ファイルとして保存するには、[ファイル名] テキストボックスに名前を入力し、[保存] をクリックします。既存のファイルに上書き保存するには、そのファイルをリストから選択して、[保存] をクリックします。
注意:
  • 画像ファイル名の最大長は 251 文字です (.BMP または .JPG 拡張子以外)。
  • ファイル名に、/ : , ; * ? " < > | % の各文字を含めることはできません。
  • オンラインモード時に自動的に画像を保存するには、スプレッドシートに WriteImageFTP 関数を挿入します。
  • 次の場合は、[名前を付けて保存] ダイアログを使用できません。

    • アクティブな In-Sight ビジョンシステムがオンラインになっている

    • ユーザのアクセスレベルがロックである

  • プロテクトアクセスレベルのユーザは、ユーザリストでその特定ユーザに FTP 書き込み権限が与えられている場合にのみ、[名前を付けて保存] ダイアログを使用できます。


[ページ設定] ダイアログ

ファイルメニュー

In-Sight Explorer GUI リファレンス

[ページ設定] ダイアログでは、印刷時に使用するページ設定を指定することができます。

[ページ設定] ダイアログを表示するには

  1. [ファイル] メニューで、[ページ設定] をクリックします。

[ページ設定] ダイアログの設定項目

  • [用紙]: 使用する用紙のサイズと給紙方法を選択します。この 2 つのドロップダウンリストの値は、[印刷] ダイアログで選択されているプリンタに基づいて表示されます。
  • [印刷の向き]: 用紙の向き([縦] または [横])を選択します。
  • [余白(ミリ)]: 余白を入力します。


印刷プレビュー

ファイルメニュー

In-Sight Explorer GUI リファレンス

印刷プレビューウィンドウでは、印刷前にページをプレビューすることができます。

[印刷プレビュー] ウィンドウを表示するには

  1. [ファイル] メニューで、[印刷プレビュー] をクリックします。

印刷プレビューの項目

印刷プレビュー ウィンドウから、すべてのページを印刷したり、プリセットされているパーセンテージで拡大したり、一度に表示するページ数を選択したり、特定のページを選択して表示したりすることができます。スプレッドシートビューでセルを選択した場合は、それらのセルだけが表示され、印刷されます。セルを選択していなかった場合は、データまたは数式を含んでいるすべてのセルが表示され、印刷されます。


[印刷] ダイアログ

ファイルメニュー

In-Sight Explorer GUI リファレンス

[印刷] ダイアログでは、特定のプリンタを選択して、データを印刷することができます。

[印刷] ダイアログを表示するには

  1. [ファイル] メニューの [印刷] をクリックするか、Ctrl+P を押します。

[印刷] ダイアログの設定項目

  • [プリンタ]: プリンタを選択します。選択したプリンタに関する情報も表示されます。印刷するときに [ファイルへ出力] を選択した場合は、印刷内容はプリンタに送られる代わりにファイルに出力されます。
  • [印刷範囲]: 印刷するページを指定します。[ページ指定] をクリックした場合は、印刷するページ番号も入力する必要があります。[選択した部分] が有効な場合は、ハイライトしたセルだけが印刷されます。
  • [印刷部数]: 印刷する部数を指定します。[部単位で印刷] をオンにした場合は、1 部目の最初のページから最後のページまで印刷した後、2 部目の最初のページが印刷されるというように、1 部ずつまとめて印刷されます。
注意:
  • 印刷されるデータのサイズは、[シートズーム] ダイアログで選択したパーセンテージに基づきます。
  • プリンタのリストに新しいプリンタを追加するには、[ページ設定] ダイアログから [プリンタ] を選択します。
  • カスタムビューまたはユーザが作成したダイアログを印刷するときには、1 ページに収まるように自動的にサイズが縮小されます。
  • プリンタドライバが古いと、正しく印刷できないことがあります。このような場合は、プリンタの製造元から新しいプリンタドライバを入手して更新してください。ドライバを更新しても問題が解消されない場合は、In-Sight Explorer が印刷のために必要としている機能のすべてをプリンタがサポートしていない可能性があります。そのような場合には、画面に表示されている部分をクリップボードにコピーして(Ctrl+Shift+C または Alt+PrintScreen キーを押します)、画像を取り扱う別のアプリケーションに貼り付けて、そのアプリケーションから印刷してください。


編集メニュー

メニューバー

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

[編集] メニューを使用すると、ジョブのデータ、ファイル、および画像を操作できます。

注意: アクティブウィンドウが EasyBuilder ビューである場合、[編集] メニューのコマンドは [製品の位置決め] および [製品の検査] ステップでのみ使用可能です。[In-Sight のファイル] ペインがアクティブウィンドウである場合は、編集コマンドの一部をファイル管理 (例: あるセンサから別のセンサにファイルをコピーして貼り付け) に使用できます。

[編集] メニューの項目

  • [取り消し]: EasyBuilder ジョブに対して行った最後の編集操作 (コピー、貼り付け、削除など) を取り消します。
  • [やり直し]: [取り消し] した操作をやり直します。
  • [切り取り]: EasyBuilder ビューでは使用できません。
  • [コピー]: EasyBuilder ジョブの [製品の位置決め] または [製品の検査] ステップに複製するために、選択した位置決めツールまたは製品の検査ツールから得られた内容をメモリに保存します。元の内容は変更されません。[In-Sight のファイル] ペインで [コピー] をクリックすると、ハイライトされているファイルが Windows のクリップボードにコピーされ、コピー先の In-Sight センサに貼り付けることができます。
  • [貼り付け]: コピーしたデータをメモリから EasyBuilder ジョブの [製品の位置決め] または [製品の検査] ステップに書き込みます。貼り付け先の In-Sight センサや Microsoft Windows エクスプローラの任意のフォルダ (デスクトップなど) に、ファイルを書き込みます。

注意: 画像ファイルを In-Sight センサに貼り付けると、その画像ファイルがアクティブ画像 image.bmp になります。In-Sight センサは、アクティブ画像以外を保存することはできませんが、In-Sight エミュレータは、容量の許す限り大量の画像ファイルを保存することができます。

  • [削除]: [削除] を使用すると、アクティブなウィンドウに応じて、EasyBuilder ジョブからツールを削除することができます。[In-Sight のファイル] ペインがアクティブウィンドウである場合は、一部のファイルを除き、[削除] を使用して、選択したファイルを削除できます。
  • [領域の最大化]: 表示領域のサイズに合わせて、選択したツールグラフィックスのサイズを変更します。
  • [VisionView ビューの選択]: [VisionView ビューの選択] ダイアログを開き、VisionView アプリケーションでオペレータが確認可能な Run モードビュー、および VisionView の [Switch View] ボタンが押されたときにビューが表示される順序を指定します。

スプレッドシートビュー

[編集] メニューを使用すると、スプレッドシートのセルのデータ、セル状態、ファイル、および画像を操作できます。また、新しいカスタムビューを作成したり、既存のカスタムビューのパラメータを変更したりすることもできます。

注意: スプレッドシートビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[編集] メニューの項目

  • [取り消し]: 最後に行った次のような操作を取り消します。

    • セルの編集 - 切り取り、コピー、貼り付け、または削除。

    • スプレッドシートの編集 - 行または列の追加、削除、挿入。行の高さや列の幅の調整。行や列の非表示/再表示。

    • 式の変更 - 絶対/相対参照または関数の削除。ダイアログ、プロパティシート、または対話型グラフィックスモードのセッション中に行ったすべての編集。

  • [やり直し]: [取り消し] した操作をやり直します。

注意: [取り消し] および [やり直し] の操作は、ダイアログ、プロパティシート、または対話型グラフィックスモードのセッション中で行われた個々の操作については機能しません。ダイアログ、プロパティシート、または対話型グラフィックスモードで変更を確定して閉じた後に [取り消し] ボタンをクリックすると、そのセッション中に行った編集のすべてが元に戻ります。

  • [切り取り]: 選択されているセルの内容を削除して、削除したデータのコピーをメモリに保存します。[切り取り] は主に、[貼り付け] と組み合わせてセルのデータを移動するために使用されます。

注意: In-Sight センサのスプレッドシートビューからデータを切り取った場合、別のセンサのスプレッドシートビューに貼り付けることはできません。データは、切り取り元と同じスプレッドシートビューに貼り付ける必要があります。アクティブな In-Sight センサに新規ジョブをロードしたり、センサを再起動した場合、クリップボードのデータは失われるのでご注意ください。異なる In-Sight センサ間で操作するときには、[切り取り] と [貼り付け] ではなく、[コピー] と [貼り付け] を使用してください。

  • [コピー]: スプレッドシート内のほかのセルに複製するために、選択されているセルの内容をメモリに保存します。元の内容は変更されません。[In-Sight のファイル] ペインで [コピー] をクリックすると、ハイライトされているファイルが Windows のクリップボードにコピーされ、コピー先の In-Sight センサに貼り付けることができます。
  • [貼り付け]: 切り取られたデータやコピーされたデータを、スプレッドシートのアクティブセルに書き込みます。貼り付け先の In-Sight センサや Microsoft Windows エクスプローラの任意のフォルダ (デスクトップなど) に、ファイルを書き込みます。

注意: 画像ファイルを In-Sight センサに貼り付けると、その画像ファイルがアクティブ画像 image.bmp になります。In-Sight センサは、アクティブ画像以外を保存することはできませんが、In-Sight エミュレータは、容量の許す限り大量の画像ファイルを保存することができます。

  • [クリア]: セルのデータ、フォーマット、内容、コメント、およびシンボリックタグを削除します。
    • [すべて]: 選択されたセルから、コメントとシンボリックタグも含めて、すべての内容とフォーマットを削除します。
    • [フォーマット]: 選択したセルから、フォーマットだけを削除します。内容とコメントは変更されません。
    • [コンテンツ]: 選択されているセルから、コンテンツ (データや数式) を削除します。セルのフォーマットやコメントは変更されません。
    • [コメント]: 選択されているセルに添付されたコメントだけを削除します。セルの内容とフォーマットは変更されません。
    • [シンボリックタグ]: 選択されているセルに添付されたシンボリックタグだけを削除します。セルの内容とフォーマットは変更されません。
  • [削除]: [削除] を使用すると、アクティブなウィンドウに応じて、ファイルを削除したり、スプレッドシートからセルを削除することができます。[In-Sight のファイル] ペインがアクティブウィンドウのときは、選択したファイルが削除されます。スプレッドシートビューがアクティブウィンドウのときは、[セルの削除] ダイアログが開き、スプレッドシートからセルを削除します。このオプションは、少なくとも 1 つのセルがハイライトされていないと使用できません。削除するセルを指定して、残りのセルを右または下へシフトするか、列または行のすべてのセルを削除するかを指定することができます。

注意: 一部のファイルは、In-Sight センサからの切り取りや削除ができません。また、スプレッドシートからセル A0 を削除することはできません。

  • [検索]: [検索] ダイアログを使用して、指定したテキスト文字列または数値をスプレッドシートから検索して、そのテキストまたは数値を含んでいる最初のセルを選択します。テキスト文字列や数値の検索について、検索範囲を特定の行、特定の列、数式、値、またはコメントに限定したり、大文字と小文字の区別の有無を指定したり、内容が完全に一致するセルだけを対象としたりして、検索を最適化することができます。
  • [進む]: [ジャンプ] ダイアログを使用すると、特定のセルに直接ジャンプして、そのセルをアクティブセルにすることができます。
  • [セルのグラフィック]: アクティブセル内の関数に対話型グラフィックスが関連付けられている場合に、対話型グラフィックスモードを起動します。対話型グラフィックスが関連付けられていない場合、このメニューオプションは無効です。
  • [領域の最大化]: 領域グラフィックスのサイズを、参照している [image] データ構造体の画像領域と同じサイズに変更します。セル A0 は、デフォルトの画像ソースです。アクティブセル内の関数に領域セルグラフィックスが関連付けられていない場合、このメニューオプションは無効です。
  • [セル状態]: [セル状態] ダイアログを使用して、選択されているセルを明示的に、または条件付きで有効または無効にすることができます。これによって、取り込みサイクルのたびに、選択されているセルの数式を実行するかどうかが決まります。
  • [カスタムビューの設定]: [カスタムビューの設定] ダイアログを使用して、カスタムビューのプロパティを定義します。複数のセルが選択されている場合、その範囲がカスタムビューの新しいセル範囲として使用されます。
  • [EasyView の設定]: [EasyView の設定] ダイアログを開き、VisionView でのデータの表示方法をカスタマイズします。
  • [VisionView ビューの選択]: [VisionView ビューの選択] ダイアログを開き、VisionView アプリケーションでオペレータが確認可能な Run モードビュー、および VisionView の [Switch View] ボタンが押されたときにビューが表示される順序を指定します。


[VisionView ビューの選択] ダイアログ

編集メニュー

In-Sight Explorer GUI リファレンス

[VisionView ビューの選択] ダイアログでは、VisionView アプリケーションでオペレータが確認可能な Run モードビューを指定することができます。また、VisionView の [Switch View] ボタンが押されたときにビューが表示される順序を指定することもできます。[VisionView ビューの選択] の設定は、ジョブファイルに保存されます。各ジョブは、VisionView アプリケーションとは異なるビューを表示するように設定することができます。

注意:
  • [現在の画像と最後に FAIL した画像 (水平)] および [現在の画像と最後に FAIL した画像 (垂直)] オプションは、In-Sight Explorer 4.5.0 以上を使用して作成されたジョブファイルに自動的に追加されます。以前のバージョンの In-Sight Explorer を使用してジョブファイルが作成されている場合、これらのオプションが追加されるのは、ジョブに カスタムビューまたは EasyView が含まれていない場合のみです。
  • 最初に、[VisionView Operator Controls] 画面で [Switch View] チェックボックスをオンにして、オペレータが VisionView アプリケーションで Run モードビューをトグルできるようにする必要があります。

[VisionView ビューの選択] ダイアログを表示するには

  • [編集] メニューで、[VisionView ビューの選択] をクリックします。

[VisionView ビューの選択] ダイアログの設定項目

  • [ビュー]: アクティブなジョブファイルで使用可能なすべての Run モードビューのリストを表示します。
    • [画像とグラフィックおよび EasyView]: 画像、ツールグラフィックス、および EasyView を表示します。ダイアログに [画像とグラフィックおよび EasyView] を表示するには、最初に In-Sight Explorer 内で EasyView を設定して、センサのジョブファイルに保存する必要があります。
    • [画像のみ]: 画像のみを表示します。
    • [画像とグラフィックス]: 画像とツールグラフィックスを表示します。
    • [画像とグラフィックおよびカスタムビュー]: 画像、ツールグラフィックス、およびカスタムビューを表示します。ダイアログに [画像とグラフィックおよびカスタムビュー] を表示するには、最初に In-Sight Explorer 内でカスタムビューを設定して、センサのジョブファイルに保存する必要があります。
    • [現在の画像と最後に FAIL した画像 (水平)]: 取り込まれた最新の画像および VisionView 表示に送信される最後に取り込みに失敗した検査画像を表示します。画面が半分に分割され、左側に現在の画像、右側に最後に取り込みに失敗した画像が表示されます。
    注意:
    • [VisionView Custom View Position] が [As Specified in Job]、[Upper Left]、[Upper Right]、[Lower Left]、[Lower Right] または [Centered] に設定されている場合は、カスタムビューによって現在の画像が上書きされます。
    • フィルムストリップが停止した場合は、現在の画像の代わりにハイライトされたフィルムストリップ画像が表示され、最後に取り込みに失敗した画像は更新されません。
    • [現在の画像と最後に FAIL した画像 (垂直)]: 取り込まれた最新の画像および VisionView 表示に送信される最後に取り込みに失敗した検査画像を表示します。画面が半分に分割され、上側に現在の画像、下側に最後に取り込みに失敗した画像が表示されます。
    注意:
    • [VisionView Custom View Position] が [As Specified in Job]、[Upper Left]、[Upper Right]、[Lower Left]、[Lower Right] または [Centered] に設定されている場合は、カスタムビューによって現在の画像が上書きされます。
    • フィルムストリップが停止した場合は、現在の画像の代わりにハイライトされたフィルムストリップ画像が表示され、最後に取り込みに失敗した画像は更新されません。
    • [EasyView のみ]: EasyView のみを表示します。ダイアログに [EasyView のみ] を表示するには、最初に In-Sight Explorer 内で EasyView を設定して、センサのジョブファイルに保存する必要があります。
  • [表示]: オンの場合、オペレータは、対応する Run モードビューを VisionView アプリケーションで確認することができます。
  • [上へ] および [下へ]: [上へ] および [下へ] ボタンは、VisionView の [Switch View] ボタンが押されたときにビューが表示される順序を指定するために使用されます。[上へ] ボタンを押すと、ハイライトされたビューがリストの上側に移動し、[下へ] ボタンを押すと、ハイライトされたビューがリストの下側に移動します。

関連項目

EasyView

カスタムビュー


表示メニュー

メニューバー

In-Sight Explorer GUI リファレンス

  • EasyBuilder ビュー
  • スプレッドシートビュー

EasyBuilder ビュー

[表示] メニューを使用すると、EasyBuilder のユーザインタフェースをカスタマイズできます。

注意: EasyBuilder ビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[表示] メニューの項目

  • [In-Sight ネットワーク]: [In-Sight のネットワーク] ペインの表示/非表示を切り替えます。このペインには、[Explorer のホストテーブル] で定義されているビジョンシステムに加えて、ローカルサブネット上で検出されたすべての In-Sight ビジョンシステムが表示されます。
  • [In-Sight のファイル]: [In-Sight のファイル] ペインの表示/非表示を切り替えます。このペインには、In-Sight ビジョンシステムまたはエミュレータに含まれているファイルが表示されます。ドラッグ & ドロップを使用して、FTP を通して、ネットワーク上の In-Sight ビジョンシステム間でジョブファイル、画像、およびビジョンシステム設定をコピーできます。
  • [パレット]: [パレット] の表示/非表示を切り替えます。ここには[ヘルプ]、[結果]、[I/O] タブが表示されます。
  • [ツールバー]: [標準] ツールバー、[ジョブディスプレイ] ツールバー、および [Explorer] ツールバーの表示/非表示を切り替えます (デフォルトでは、ツールバーは非表示になっています) 。
  • [更新]: [In-Sight のファイル] ペインのファイルリスト、および [接続] ペイントと [In-Sight のネットワーク] ペインのビジョンシステム/エミュレータのリストを更新し、次の項目を反映させます。
    • リモートで保存、名前変更、または削除されたファイルやフォルダ
    • ネットワークとの接続が切断されたビジョンシステムまたはエミュレータ
  • [選択したツールのグラフィックスのみ表示]: 選択されたツールに関連付けられているオーバレイグラフィックスの表示/非表示を切り替えます。
  • [フィードバックの即時表示]: 位置決めツールおよび検査ツールの領域が移動またはサイズ変更された場合の、即時フィードバックの表示/非表示を切り替えます。この項目を有効にすると、領域が移動またはサイズ変更された時、グラフィックがすぐに更新されます。無効になっている場合、領域が移動またはサイズ変更されても、グラフィックは更新されません。
  • [テキストサイズ]: グラフィックスオーバレイテキストのスケールを定義します。 この設定はすべてのグラフィックスオーバレイテキストに適用されますが、ジョブファイルには保存されません　(デフォルト = 画像サイズに合わせる)。
    • [画像サイズに合わせる]: 画像を拡大または縮小すると、グラフィックスオーバレイテキストは画像に合わせてスケーリングされます。
    • [縮小のみ]: 画像を縮小すると、グラフィックスオーバレイテキストのスケールは小さくなります。画像を拡大し、グラフィックスオーバレイテキストがデフォルトのフォントサイズ (9 ポイント) より小さくなると、グラフィックスオーバレイテキストのスケールは、デフォルトのフォントサイズになるまで大きくなります。
    • [固定]: グラフィックスオーバレイテキストのサイズは、画像の倍率レベルに関係なく固定されています。
  • [フィルムストリップ]: フィルムストリップの表示/非表示を切り替えます。ここには PC またはビジョンシステムに格納された画像が表示されます。
  • [フォーカスメトリクス]: 画像のフォーカス得点を判定する際に有用なフォーカスメトリクスの表示/非表示を切り替えます。これは、「シーン」 (つまり、その画像でキャプチャされた対象物とその背景) 内で認識可能な最小の特徴が画像または画像の領域に含まれる度合を示します。
  • [アプリケーションステップ]: 使用可能な EasyBuilder のアプリケーションステップに移動することができます。
  • [スプレッドシート]: スプレッドシートビューに現在のジョブを表示します。

スプレッドシートビュー

[表示] メニューを使用すると、In-Sight Explorer のユーザインタフェースをカスタマイズできます。

注意: スプレッドシートビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[表示] メニューの項目

  • [In-Sight ネットワーク]: [In-Sight のネットワーク] ペインの表示/非表示を切り替えます。このペインには、[Explorer のホストテーブル] で定義されているビジョンシステムに加えて、ローカルサブネット上で検出されたすべての In-Sight ビジョンシステムが表示されます。
  • [In-Sight のファイル]: [In-Sight のファイル] ペインの表示/非表示を切り替えます。このペインには、In-Sight ビジョンシステムまたはエミュレータに含まれているファイルが表示されます。ドラッグ & ドロップを使用して、FTP を通して、ネットワーク上の In-Sight ビジョンシステム間でジョブファイル、画像、およびビジョンシステム設定をコピーできます。
  • [パレット]: [パレット] の表示/非表示を切り替えます。ここではビジョンツール、画面表示関数、およびスニペットに、ドラッグ ＆ ドロップでアクセスできます。
  • [ツールバー]: [標準] ツールバー、[フォーマット] ツールバー、[ジョブの表示] ツールバー、[ジョブの編集] ツールバー、[ジョブの監査] ツールバー、[記録/再生] ツールバー、および [Explorer] ツールバーの表示/非表示を切り替えます。
  • [更新]: [In-Sight のネットワーク] および [In-Sight のファイル] ペインを更新し、次の項目を反映させます。
    • リモートで保存、名前変更、または削除されたファイルやフォルダ
    • ネットワークとの接続が切断されたビジョンシステムまたはエミュレータ
  • [カスタムビュー]: スプレッドシートオーバレイの[カスタムビュー] を有効/無効にします。
  • [オーバレイ]: 半透明のスプレッドシートオーバレイの表示/非表示を切り替えます。
  • [グラフィックス]: スプレッドシートの関数に関連付けられているオーバレイグラフィックスの表示/非表示を切り替えます。
  • [テキストサイズ]: グラフィックスオーバレイテキストのスケールを定義します。この設定はスプレッドシート内のすべてのセルに適用されますが、ジョブファイルには保存されません (デフォルト = 画像サイズに合わせる)。

    ヒント: 個々のセルにのみスケール設定を適用し、その設定をジョブファイルに保存するには、[セルのフォーマット] ダイアログを使用します。

    • [画像サイズに合わせる]: 画像を拡大または縮小すると、グラフィックスオーバレイテキストは画像に合わせてスケーリングされます。
    • [縮小のみ]: 画像を縮小すると、グラフィックスオーバレイテキストのスケールは小さくなります。画像を拡大し、グラフィックスオーバレイテキストがデフォルトのフォントサイズ (9 ポイント) より小さくなると、グラフィックスオーバレイテキストのスケールは、デフォルトのフォントサイズになるまで大きくなります。
    • [固定]: グラフィックスオーバレイテキストのサイズは、画像の倍率レベルに関係なく固定されています。
  • [フィルムストリップ]: フィルムストリップの表示/非表示を切り替えます。ここには PC またはビジョンシステムに格納された画像が表示されます。
  • [フォーカスメトリクス]: 画像のフォーカス得点を判定する際に有用なフォーカスメトリクスの表示/非表示を切り替えます。これは、「シーン」 (つまり、その画像でキャプチャされた対象物とその背景) 内で認識可能な最小の特徴が画像または画像の領域に含まれる度合を示します。
  • [シートズーム]: [シートズーム] ダイアログにアクセスし、スプレッドシートの表示倍率を増減することができます。
  • [ジョブの監査]: ジョブ内のセル依存関係 を表示/非表示にして、アクティブセルの最初のエラー参照元にジャンプします。

    • [依存レベルを上げる] このボタンをクリックすると、トレース矢印の表示がオンになり、表示する依存関係のトレースレベルが 1 段階上がります。いずれかのトレース矢印 (参照元、参照先、およびエラー) を表示するには、このボタンをクリックする必要があります。

    • [依存レベルを下げる]: このボタンをクリックすると、表示する依存関係のトレースレベルが 1 段階下がります。

    • [依存レベルをリセットする]: このボタンをクリックすると、表示されているすべての依存関係が削除されます。

    • [エラーのある依存関係のみ表示]: このボタンをクリックすると、参照元セルにエラーがある依存関係のトレース矢印のみが表示されます。

    • [エラー元セルにジャンプ]: エラー (#ERR) のあるセルでこのボタンをクリックすると、スプレッドシート上でエラーが発生している参照元セルにジャンプし、アクティブセルになります。アクティブセルが、エラーが発生している別のセルに依存していない限りは、このボタンを押しても何も起こりません。

  • [EasyBuilder]: EasyBuilder ビューに現在のジョブを表示します。


In-Sight のネットワーク

表示メニュー

In-Sight Explorer GUI リファレンス

[In-Sight のネットワーク] ペインには、すべての In-Sight ビジョンシステム、 エミュレータおよび サブネット上で自動的に検出された(有設定済みで使用可能な RAM ディスクフォルダ)、および Explorer のホストテーブルに手動で入力されたすべてのホストが「ツリー」形式で表示されます。[In-Sight のネットワーク] ペインは、複数の In-Sight デバイスを同時に管理するのにとても便利です。

  • [In-Sight のネットワーク] ペインを表示/非表示するには
  • [In-Sight のネットワーク] ペインのプロパティ
  • ネットワークの操作

ヒント:In-Sight Explorer をカスタマイズすることによって、[In-Sight のネットワーク] ペインをドッキング表示 (ウィンドウの端に固定) またはフロート表示にしたり、移動したり、サイズを変更したりすることができます。

[In-Sight のネットワーク] ペインを表示/非表示にするには

  • [表示] メニューで [In-Sight ネットワーク] をクリックします (または、[Explorer] ツールバーの [In-Sight のネットワーク] [image] ボタンをクリックするか、Ctrl+Shift+1 キーを押します)。

[In-Sight のネットワーク] ペインのプロパティ

  • ホスト名: In-Sight ビジョンシステムのホスト名は、[ネットワークの設定] ダイアログボックスで設定されます。In-Sight エミュレータは、Microsoft Windows のローカルコンピュータ名をホスト名として使用します。
  • アイコン: 各ホストの横にあるアイコンは、デバイスが In-Sight ビジョンシステムなのか、エミュレータなのか、またデバイスにログオンしているかどうかを示します。次の表は、In-Sight ビジョンシステムの [In-Sight のネットワーク] の各種ステータスアイコンの一覧です。
アイコン

デバイスのタイプ

 説明

In-Sight Micro ビジョンシステム

 ログオンしていない In-Sight ビジョンシステム。

In-Sight Micro ビジョンシステム

ログオンしている In-Sight ビジョンシステム。

In-Sight 5000 ビジョンシステム

ログオンしていない In-Sight ビジョンシステム。

In-Sight 5000 ビジョンシステム

ログオンしている In-Sight ビジョンシステム。

In-Sight 5000 シリーズリモートヘッドビジョンシステム

ログオンしていない In-Sight ビジョンシステム。

In-Sight 5000 シリーズリモートヘッドビジョンシステム

ログオンしている In-Sight ビジョンシステム。

In-Sight 7000 ビジョンシステム | ログオンしていない In-Sight ビジョンシステム。
In-Sight 7000 ビジョンシステム | ログオンしている In-Sight ビジョンシステム。

In-Sight エミュレータ

ログオンしていない In-Sight エミュレータ。

In-Sight エミュレータ

ログオンしている In-Sight エミュレータ。
注意:
  • デフォルトでは、[In-Sight のネットワーク] ペインでデバイスをダブルクリックすると、EasyBuilder ビューが開きます。選択したデバイスのスプレッドシートビューやウェーハ ID ビュー (適用可能な場合) も表示可能です。[オプション] ダイアログボックスを使用して、スプレッドシートビューをデフォルトにすることができます。
  • In-Sight にログオンして、アクティブなビューを開いているとき、別のユーザが同じデバイスにログオンしても、デバイスのアイコンは「ログオン」状態のままです。
  • RAM ディスクフォルダ: ビジョンシステムまたはエミュレータに RAM ディスクフォルダが設定済みで使用可能な場合、ビジョンシステムまたはエミュレータのアイコンの左にある展開/折り畳み [image] ボタンをクリックすると、 Closed 　フォルダが表示されます。ビジョンシステムまたはエミュレータに設定済みで使用可能な RAM ディスクが無い場合は、展開/折り畳み [image] ボタンは表示されません。

注意:

ネットワークの操作

[In-Sight のネットワーク] ペインで In-Sight デバイスを右クリックすると、 Closed メニューが表示され、次のファイル操作が実行できます。

ビジョンシステムまたはエミュレータ

  • [表示 EasyBuilder ビュー]: In-Sight ビジョンシステムの現在の画像、および EasyBuilder グラフィカルユーザインタフェースの現在のジョブが表示されます。オンライン/オフラインステータスを示すステータスバーが含まれます。
  • [表示 スプレッドシートビュー]: In-Sight ビジョンシステムの現在の画像と半透明のスプレッドシートオーバレイ、またはカスタムビュー (オプション) が表示されます。オンライン/オフラインステータスを示すステータスバーが含まれます。複数のビジョンシステムのスプレッドシートビューを同時に表示することができます。
  • [表示　センサのステータスビュー]: センサのステータスビューには、マシンステータススタックを構成するメモリバッファに含まれる情報が表示されます。
  • [貼り付け]: クリップボードにコピーしたジョブファイルを貼り付けします。
  • [レポート作成]:1 つまたは複数の In-Sight デバイスのジョブおよびネットワーク設定の詳細を含む HTML または XML レポートを作成します。
  • [バックアップ]:そのデバイスのジョブのアーカイブおよび設定データをバックアップディレクトリに保存します。
  • [リストア]:このデバイスのジョブのアーカイブおよび設定データを取得します。
  • [プロパティ]: ビジョンシステムのハードウェア情報、ネットワーク識別情報、およびビジョンシステムのフラッシュ/RAM メモリ構成の詳細を Closed 表示します。

注意:
  • ファイルは、[In-Sight のファイル] ペインと Windows エクスプローラのフォルダの両方から [In-Sight のネットワーク] ペイン内の任意のデバイスにドラッグでき、この操作でファイルがコピーされます。
  • [In-Sight のファイル] ペインまたは Windows エクスプローラのフォルダで切り取りまたはコピー操作を実行すると、ファイルは Windows のクリップボードに格納されます。これらのファイルは、デバイスを右クリックして [貼り付け] を選択することでデバイスに貼り付けることができます。


In-Sight のファイル

表示メニュー

In-Sight Explorer GUI リファレンス

[In-Sight のファイル] ペインには 2 種類の情報が表示されます。最初は、[In-Sight のファイル] ペインには、ネットワーク上で検出されたすべての In-Sight ビジョンシステムと、Explorer のホストテーブルにある任意のエントリが表示されます。デバイスをダブルクリックすると、そのデバイスに保存されているファイル、および設定済みで使用可能な RAM ディスクが表示されます。

  • [In-Sight のファイル] ペインを表示/非表示するには
  • [In-Sight のファイル] ペインの使用法
  • 削除不可能なファイル

ヒント:In-Sight Explorer をカスタマイズすることによって、[In-Sight のファイル] ペインをドッキング表示 (ウィンドウの端に固定) またはフロート表示にしたり、移動したり、サイズを変更したりすることができます。

[In-Sight のファイル] ペインを表示/非表示するには

  • [表示] メニューで [In-Sight のファイル] をクリックします (または、[Explorer] ツールバーの [In-Sight のファイル] [image] ボタンをクリックするか、Ctrl+Shift+2 キーを押します)。

[In-Sight のファイル] ペインの使用法

ドラッグ ＆ ドロップ

ジョブまたは画像ファイルは、[In-Sight のファイル] ペインからスプレッドシート上にドラッグするだけで、In-Sight ビジョンシステムにロードできます。ファイルは、[In-Sight のファイル] ペインと Windows エクスプローラのフォルダの両方から [In-Sight のネットワーク] ペイン内の任意のデバイスにドラッグでき、この操作でファイルがコピーされます。

注意:
  • ビジョンシステムのタイトルバーには、アクティブなジョブのビジョンシステム名とファイル名が表示されます。PC からジョブファイルをドラッグ ＆ ドロップした場合、ジョブがビジョンシステムに保存されるまでは、タイトルバーにジョブ名は表示されません。
  • PC からジョブファイルをドラッグ ＆ ドロップすると、ジョブがビジョンシステムに保存されるまでは、[センサのステータス] ビューの現在のジョブには「Drag And Drop Job」が表示されます。
  • [In-Sight のファイル] ペインからジョブファイルをドラッグ ＆ ドロップし、スプレッドシートビューのスクロールバーをクリックしてから、マウスのホイールを使用してスクロールをすると、[スプレッドシート] ペインではなく [In-Sight のファイル] ペインがスクロールされます。スプレッドシートビューをスクロールするには、マウスのホイールではなく矢印またはスライダを使用します。

コピー、削除、名前変更

[In-Sight のファイル] ペインでファイルを右クリックすると、ファイルをコピー、削除、または名前変更するための Closed ショートカットメニューが表示されます。コピーしたジョブは、ほかの In-Sight ビジョンシステムやエミュレータに貼り付けることができます。コピーした画像を貼り付けることもできますが、In-Sight ビジョンシステムでは、貼り付けたファイルは貼り付け先のビジョンシステムのアクティブな画像として image.bmp および image.jpg と置き換えられます。元のファイル名は保持されないので注意してください。

注意:
  • image.bmp、image.jpg、image2.bmp、およびimage4.bmp をエミュレータに貼り付けることはできません。

削除不可能なファイル

次の In-Sight システムファイルを削除することはできません。

  • hosts.net: In-Sight のホストテーブルのエントリを含む
  • image.jpg: アクティブな画像
  • image.bmp: アクティブな画像
  • image 2.bmp: アクティブな画像の高さと幅が　1/2 のバージョン (ファームウェアバージョン 2.60 以上)。
  • image 4.bmp: アクティブな画像の高さと幅が 1/4 のバージョン　(ファームウェアバージョン 2.60 以上)。
  • proc.set: ネットワーク構成およびビジョンシステム設定を含む

画像をファイルとして In-Sight ビジョンシステムにとして格納することはできません。画像ファイル をビジョンシステムの [In-Sight のファイル] ペインまたはアクティブビューにドラッグすると、そのビジョンシステムのアクティブな画像になります。ただし、In-Sight の エミュレータでは、任意のファイル名で画像を格納することができます。


パレット

表示メニュー

In-Sight Explorer GUI リファレンス

  • EasyBuilder ビュー
  • スプレッドシートビュー

EasyBuilder ビュー

パレットは、以下のタブを介してユーザガイダンスを提供する参照ペインです。

  • [ヘルプ]
  • [結果]
  • [リンク]
  • [I/O]
  • [TestRun]
  • [アクセス許可]
  • パレットの表示

注意:　EasyBuilder をカスタマイズすることによって、パレットをドッキング表示 (ウィンドウの端に固定) またはフロート表示にしたり、移動したり、サイズを変更したりすることができます。

[ヘルプ] タブ

[ヘルプ] タブは現在の [アプリケーションステップ] を反映して更新され、そのステップを完了する方法に関する詳細な手順を表示します。必要に応じて、コントロールやパラメータに関する説明やガイドラインも表示されます。より詳細な説明が記載されているそのほかのヘルプトピックへのリンクが含まれることもあります。

[結果] タブ

[結果] タブには、ジョブ設定のトラブルシューティングや最適化のために必要な、各ツールのパフォーマンスが表示されます。このタブでは次の操作を行うことができます。

  • 結果をモニタすることによって、どのツールが [image] 成功、または [image] 失敗しているかをひと目で判断することができます。これは [製品の位置決め] または [製品の検査] 設定ペインの [設定] または [制限範囲] タブにも表示されます。
  • ツールをクリックして、このツール (オレンジ色でハイライトされているもの) とそのジョブで使用されているそのほかのツールの依存関係を表示し、ツールの不具合がほかのツールの不具合に関係しているかどうかを判断することができます。ツールが別のツールを参照しているときには依存関係が存在します。1 つの依存関係は、参照元と参照先の 2 つの部分から構成されます。これらは線で結ばれています。参照元とはデータのソース (入力を提供するツール) のことで、円で表されます。参照先とはデータのディスティネーション (出力を受け取るツール) のことで、矢印で表されます。青い依存関係グラフィックスは選択したツールが参照先であることを、緑色のグラフィックスは選択したツールが参照元であることを示します。
  • ツールアイコン (例: Presence/Absence Edge、Identification Read Text、Counting Blobs) によって、ツールのタイプを目で見て確認することができます。
  • ツールを名前で識別できます。
  • 必要に応じて、ツールをダブルクリックして修正できます。[アプリケーションステップ] ペインは [検査] ステップに戻ります。設定ペインには選択したツールのパラメータ、表示領域にはオーバーレイグラフィックスが表示されます。必要に応じて、パラメータまたはグラフィックスを編集します。

また、[結果] タブのツールを右クリックして、編集用ショートメニューを表示することもできます。このメニューの内容は、そのときのアプリケーションステップによって次のように異なります。

  • [位置決め] または [検査] では、右クリックメニューから、選択したツールのコピー、貼り付け、削除 、またはスプレッドシートビューでの編集を行うことができます。
  • そのほかのアプリケーションステップでは、このメニューから、[このツールにジャンプして編集] をクリックして [検査] ステップに戻り、選択したツールを編集したり、スプレッドシートビューで編集したりすることができます。

[リンク] タブ

位置決めツールおよび検査ツールをジョブに追加したら、[リンク] タブでそのプロパティ (入力パラメータと出力結果) を結合することができます。[リンク] タブでは、あるツールの出力結果を、別のツールへの入力パラメータとして使用することができます。また、ジョブに現在ロードされているすべての位置決めツールおよび検査ツールがツリービューで表示されます。

ツールのプロパティ (入力パラメータと出力結果) は、シンボリックタグで参照されます。これは、プロパティに含まれる値へのシンボリック参照です。この値は、関連するデータ型を持っています (Action、Floating Point、Integer、String のいずれか)。ツールプロパティは入力および出力プロパティに分けられ、リンクは、出力プロパティから入力プロパティに対してのみ生成することができます。出力プロパティは複数の別々の入力プロパティにリンクすることができますが、入力プロパティがリンクとして受け入れる出力プロパティは 1 つのみです。

[リンク] タブに表示して設定するツールプロパティを選択するには、ツールプロパティを右クリックして [リンクするプロパティを選択] ダイアログを開きます。[リンクするプロパティを選択] ダイアログには、ジョブ内にあるすべてのツールのツリービューリストと、関連する入力および出力両方のすべてのツールプロパティが表示されます。[リンク] タブに表示するツールプロパティをカスタマイズするには、表示するツールプロパティを選択します ([追加]/[削除] ボタンを使用して、複数の選択肢をハイライトさせてから追加または削除します)。

[I/O] タブ

[I/O] タブには、ジョブの入力/出力ラインそれぞれの [image] アクティブ、または [image] 非アクティブステータスが表示されます。ここから、I/O ラインをモニタすることができます。

[TestRun] タブ

[TestRun] タブでは、マシンビジョンの検証テストを作成します。ビジョンの検証は、マシンビジョンアプリケーションが想定されるパラメータの範囲内で動作していることを確認するプロセスです。検証では、ビジョンシステムでテストを実行し、その結果を想定される値と比較します。

パレットの表示

  • [表示] メニューで [パレット] をクリックします (または、[Explorer] ツールバーの [パレット] [image] ボタンをクリックするか、Ctrl+Shift+3 キーを押します)。

スプレッドシートビュー

パレットは、以下のタブを介してユーザガイダンスを提供する参照およびリソースペインです。

  • [関数] タブ
  • [スニペット] タブ
  • [TestRun] タブ
  • [アクセス許可] タブ
  • パレットの表示
  • パレットの使用

注意:　In-Sight Explorer をカスタマイズすることによって、パレットをドッキング表示 (ウィンドウの端に固定) またはフロート表示にしたり、移動したり、サイズを変更したりすることができます。

[関数] タブ

[関数] タブには、アクティブな In-Sight ビジョンシステムで使用可能なすべての関数がツリー表示されます。In-Sight 関数へのドラッグ ＆ ドロップによるアクセスができるようになります。

[スニペット] タブ

[スニペット] タブには、PC 上のスニペットフォルダにある使用可能なすべてのスニペットがツリー表示されます。[スニペット] ダイアログを使用して、スニペットを PC にエクスポートすると、そのスニペットが [スニペット] タブに自動的に追加されます。

注意:　ExportData 関数を使用して、スニペットを PC にエクスポートすることはできません。

[TestRun] タブ

[TestRun] タブでは、マシンビジョンの検証テストを作成します。ビジョンの検証は、マシンビジョンアプリケーションが想定されるパラメータの範囲内で動作していることを確認するプロセスです。TestRun では、ビジョンシステムでテストを実行し、その結果を想定される値と比較します。

パレットの表示

  • [表示] メニューで [パレット] をクリックします (または、[Explorer] ツールバーの [パレット] [image] ボタンをクリックするか、Ctrl+Shift+3 キーを押します)。

パレットの使用

プラスアイコン [image] をクリックして、カテゴリを展開します。この操作によって、そのカテゴリに含まれるすべての関数またはスニペットが表示されます。展開したカテゴリは、マイナスアイコン [image] をクリックすることによって折り畳むことができます。マウスを使用する場合は、パレットからスプレッドシートのセルに関数またはスニペットを直接ドラッグできます。また、関数名やスニペットをダブルクリックすると、それをアクティブセルに挿入することができます。選択した関数にプロパティシートがある場合、関数をセルに挿入すると、そのシートが自動的に開きます。

注意:
  • 実行中の操作や開いているダイアログによっては、パレットが使用できない場合があります。パレットを使用できない一般的な例は、次のとおりです。
    • アクティブな In-Sight センサがオンラインになっている。
    • ライブビデオ。
    • プロパティシートが開いている。
    • 対話型グラフィックスを編集中である。
    • セル選択モードになっている。
  • 関数やスニペットをセル A0 に挿入することはできません。
  • セル A0 をスニペットとしてエクスポートすることはできません。
  • 既にデータを含んでいるセルに関数をドラッグ＆ドロップすると、セルが上書きされる前に確認メッセージが表示されます。
  • スニペットは、複数のセルをスプレッドシートに挿入します。既にデータが格納されているセルにスニペットをドラッグ＆ドロップすると、セルがハイライトされて、上書きされる前に確認メッセージが表示されます。


ツールバー

表示メニュー

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

EasyBuilder には、メニューバーの下に表示される 3 つのツールバーがあり、クリックするだけで、よく使用するタスクを実行することができます。[標準] および [Explorer] ツールバーは、[表示] メニューを使用して表示したり非表示にしたりすることができます。

  • [標準] ツールバー: 一般的なファイル操作を行います。新規ジョブの作成、ジョブファイルを開く/保存、アクティブジョブの印刷、アクティブジョブの印刷プレビュー、ツールやファイルのコピー/貼り付け/削除、取り消し/やり直しなどを行います。
  • [ジョブの表示] ツールバー: 記録や再生オプションに関連する操作の実行、表示領域内での画像の操作、および画像領域グラフィックスのサイズ変更を行います。画像の記録、再生画像の選択、記録した画像の再生または一時停止、[記録/再生のオプション] ダイアログの表示などが可能です。新しい画像の取り込み、ライブビデオモードへの切り替え、画像の表示倍率の設定、幅に合わせて表示、画像の回転、画像彩度の表示/非表示、グラフィックスオーバレイテキストスケールの指定、フィルムストリップの表示/非表示、アクティブな In-Sight センサのオンラインステータスの切り替えなどが可能です。また、表示領域のサイズに合わせて、画像領域グラフィックスのサイズを変更することもできます。
  • [Explorer] ツールバー: システム全体の操作を行います。[In-Sight ネットワーク] の表示、[In-Sight のファイル] の表示、[パレット] の表示、ログオン/ログオフ、1 つまたは複数の In-Sight センサ/エミュレータについてのレポートの作成、1 つまたは複数の In-Sight センサ/エミュレータ上のファイルのバックアップおよびリストア、[センサ/デバイスをネットワークに追加] ダイアログの表示、In-Sight Explorer のヘルプおよびオンラインサポートへのアクセスなどを行います。
注意:
  • EasyBuilder をカスタマイズすることによって、ツールバーをドッキング表示 (ウィンドウの端に固定) またはフロート表示にしたり、移動したり、サイズを変更したりすることができます。
  • 現在の状況で対応する機能を使用できない場合は、アイコンが灰色に表示されます。
  • 個々のツールバーにアイコンを追加したり、削除したりすることができます。
  • [オプション] ダイアログで、大きなアイコンの表示を選択することができます。

[標準] ツールバー

空白の新規ジョブをアクティブな In-Sight センサにロードします。新規ジョブを作成する前に、変更内容を前のジョブに保存したことを確認してください。

[ジョブを開く] ダイアログを表示します。このダイアログを使用すると、ローカルまたはリモートのジョブファイルをアクティブジョブとして In-Sight センサにロードできます。

アクティブジョブを保存します。ジョブがまだ保存されていない場合、このボタンを押すと、[ジョブに名前を付けて保存] ダイアログが表示されます。ジョブが既に保存されている場合は、ジョブの内容が現在のファイル名に書き込まれます。

[印刷] ダイアログを開きます。現在のジョブの結果テーブルをローカルプリンタまたはネットワーク接続されたプリンタで印刷することができます。

[印刷プレビュー] ウィンドウを開きます。現在のジョブの結果テーブルの印刷プレビューを確認することができます。

EasyBuilder では使用できません。

選択されているツールまたはファイルをクリップボードにコピーします。多くの場合、[貼り付け] と組み合わせて使用されます。

コピーされたツールまたはファイルを貼り付けます。

選択されているツールまたはファイルを削除します。

最後の操作を取り消します。

最後の操作をやり直します。

[ジョブの表示] ツールバー

再生フォルダに保存されている最初の画像に移動します。
再生フォルダに保存されている前の画像に移動します。
再生フォルダに保存されているすべての画像を再生します。
再生フォルダに保存されている画像の再生を一時停止します。
再生フォルダに保存されている次の画像に移動します。
再生フォルダに保存されている最後の画像に移動します。
取り込んだ画像を記録フォルダに記録します。
記録フォルダへの取り込み画像の記録を停止します。
[記録/再生のオプション] ダイアログを開いて、記録/再生の設定を行います。

注意:

  • 再生中に [記録] ボタンをクリックすると、再生中の画像は、[記録/再生のオプション] ダイアログで指定されたソートパラメータに応じて、記録フォルダ、Good フォルダ、または Bad フォルダに記録されます。このとき、再生フォルダ上のファイル名と同じ名前で記録されます。
  • センサがオンラインモードのときに画像の再生ができるようにするには、[画像の設定] ステップの [トリガ] パラメータが [外部]、[手動]、または [ネットワーク] に設定されている必要があります。

In-Sight センサから画像を 1 つ取り込みます (手動トリガ)。

ライブビデオモードに切り替えます。In-Sight センサから連続的に画像を取り込み、表示領域に表示します。この機能は、[画像の設定] アプリケーションステップでのみ使用可能です。

画像の表示倍率を上げます。

画像の表示倍率を下げます。

表示領域にあわせて画像を表示します。画像は、表示領域内で、画像全体が表示される最大限の大きさに自動調整されます。画像のアスペクト比は維持されます。このため、画像の周囲にグレーの余白が表示される場合があります。

画像を右回りに 90 度回転します。

グレーレベルが [露光過少レベル] 以下の画像内のピクセルを青色でハイライトし、[露光過多レベル] 以上のピクセルを赤色でハイライトします。

[VisionView ビューの選択] ダイアログを開き、VisionView アプリケーションでオペレータが確認可能な Run モードビュー、および VisionView の [Switch View] ボタンが押されたときにビューが表示される順序を指定します。

また、表示領域のサイズに合わせて、画像領域グラフィックスのサイズを変更することもできます。 このボタンは、関連する領域グラフィックスを持つツールがジョブに含まれ、[位置決め] または [検査] ステップが選択されている場合のみ、選択可能になります。

選択されたツールグラフィックスのみを表示/非表示にします。

画像を拡大または縮小すると、グラフィックスオーバレイテキストは画像に合わせてスケーリングされます。(デフォルト) この設定はすべてのグラフィックスオーバレイテキストに適用されますが、ジョブファイルには保存されません。

画像を縮小すると、グラフィックスオーバレイテキストのスケールは小さくなります。画像を拡大し、グラフィックスオーバレイテキストがデフォルトのフォントサイズ (9 ポイント) より小さくなると、グラフィックスオーバレイテキストのスケールは、デフォルトのフォントサイズになるまで大きくなります。この設定はすべてのグラフィックスオーバレイテキストに適用されますが、ジョブファイルには保存されません。

グラフィックスオーバレイテキストのサイズは、画像の倍率レベルに関係なく固定されています。この設定はすべてのグラフィックスオーバレイテキストに適用されますが、ジョブファイルには保存されません。

フィルムストリップを表示または非表示にします。
[フォーカスメトリクス] を表示または非表示にします。

アクティブな In-Sight センサのオンライン/オフライン状態を切り替えます。

[Explorer] ツールバー

[In-Sight ネットワーク] ペインを表示します。

[In-Sight のファイル] ペインを表示します。

[パレット] を表示します。

In-Sight センサにログオンする際に使用するユーザ名とパスワードを設定します。

1 つまたは複数の In-Sight センサのジョブおよびネットワーク設定の詳細を含む HTML または XML レポートを作成します。

1 つまたは複数の In-Sight センサのジョブやセンサ設定をバックアップします。

1 つまたは複数の In-Sight センサのジョブやセンサ設定をリストアします。

[センサ/デバイスをネットワークに追加] ダイアログを開きます。

In-Sight Explorer のヘルプにアクセスします。

オンラインサポートにアクセスします。

スプレッドシートビュー

In-Sight Explorer には、メニューバーの下に表示される 7 つのツールバーがあり、クリックするだけで、よく使用するタスクを実行することができます。次のツールバーは、[表示] メニューを使用して表示したり非表示にしたりすることができます。

  • [標準] ツールバー: 一般的なファイル操作を行います。新規ジョブファイルの作成、ジョブファイルを開くまたは保存する、アクティブシートの印刷、アクティブシートの印刷プレビュー、スプレッドシートのデータやファイルの切り取り/コピー/貼り付け、取り消しまたはやり直し、スプレッドシート内のテキストの検索などを行います。
  • [フォーマット] ツールバー: スプレッドシートの外観を設定します。フォントのタイプとサイズの選択、太字の設定、斜体の設定、テキストの左揃え、中央揃え、右揃え、小数点以下の桁数の増減、背景色または前景色の追加、セルのフォーマット、フォントサイズの増減、列の幅の設定、行の高さの設定などが可能です。
  • [ジョブの表示] ツールバー: スプレッドシートオーバレイの奥に表示される画像を操作します。新しい画像の取り込み、ライブ取り込みモードへの切り替え、画像の表示倍率の設定、最大のサイズに拡大、倍率 1:1、全体表示、幅に合わせて表示、画像の回転、画像彩度の表示/非表示、スプレッドシートオーバレイの透明度の調整、[カスタムビューの設定] ダイアログを開く、カスタムビューの表示切り替え、[EasyView の設定] ダイアログを開く、スプレッドシートの表示/非表示、オーバレイグラフィックスの表示/非表示、グラフィックスオーバレイテキストスケールの指定、フィルムストリップの表示/非表示、シートの表示倍率の設定、アクティブな In-Sight センサのオンラインステータスの切り替えなどが可能です。
  • [ジョブの編集] ツールバー: スプレッドシート関数に関する操作を行います。スプレッドシートへのセル参照または関数の挿入、セルグラフィックスの編集、セル状態の編集、コメントの挿入、シンボリックタグの挿入、アクティブセルの数式の表示などを行います。
  • [ジョブの監査] ツールバー: ジョブ内の依存関係をグラフィカルに表示します。ジョブ内のセル間の依存関係の表示、依存関係レベルのゼロへのリセット、エラーのあるセルの表示、アクティブセルの最初のエラー (#ERR) 参照元へのジャンプを行います。
  • [記録/再生] ツールバー: 記録および再生オプションに関する操作を行います。画像の記録、再生画像の選択、記録した画像の再生または一時停止、[記録/再生のオプション] ダイアログの表示などが可能です。
  • [Explorer] ツールバー: システム全体の操作を行います。[In-Sight ネットワーク] の表示、[In-Sight のファイル] の表示、[パレット] の表示、ログオン/ログオフ、In-Sight センサについてのレポートの作成、In-Sight センサ上のファイルのバックアップおよびリストア、[センサ/デバイスをネットワークに追加] ダイアログの表示、In-Sight Explorer のヘルプおよびオンラインサポートへのアクセスなどを実行します。
注意:
  • スプレッドシートビューがアクティブでないとき、ツールバーの一部が利用できない場合があります。
  • In-Sight Explorer をカスタマイズすることによって、ツールバーをドッキング表示 (ウィンドウの端に固定) またはフロート表示にしたり、移動したり、サイズを変更したりすることができます。
  • 現在の状況で対応する機能を使用できない場合は、アイコンが灰色に表示されます。
  • 個々のツールバーにアイコンを追加したり、削除したりすることができます。
  • [オプション] ダイアログで、大きなアイコンの表示を選択することができます。

[標準] ツールバー

空白の新規ジョブをアクティブな In-Sight センサにロードします。新規ジョブを作成する前に、変更内容を前のジョブに保存したことを確認してください。

[ジョブを開く] ダイアログを表示します。このダイアログを使用すると、ローカルまたはリモートのジョブファイルをアクティブジョブとして In-Sight センサにロードできます。

アクティブジョブを保存します。ジョブがまだ保存されていない場合、このボタンを押すと、[ジョブに名前を付けて保存] ダイアログが表示されます。ジョブが既に保存されている場合は、ジョブの内容が現在のファイル名に書き込まれます。

[印刷] ダイアログを開きます。現在のスプレッドシートをローカルプリンタまたはネットワーク接続されたプリンタで印刷することができます。

[印刷プレビュー] ウィンドウを開きます。アクティブなスプレッドシートの印刷プレビューを確認できます。

選択したセルを切り取ります。多くの場合、[貼り付け] と組み合わせて使用されます。

選択されているセルまたはファイルをクリップボードにコピーします。多くの場合、[貼り付け] と組み合わせて使用されます。

切り取りまたはコピーされたセルを貼り付けます。

最後の操作を取り消します。

最後の操作をやり直します。

[検索] ダイアログを開きます。指定したテキスト文字列をスプレッドシートから検索して、そのテキストを含む最初のセルを選択します。

[フォーマット] ツールバー

注意: PlotString 関数を含むセルにフォーマットを指定すると、そのセルだけでなくプロットされるテキスト文字列にもフォント、サイズ、スタイルの設定が適用されます。プロットされたテキスト文字列のフォントサイズは画像のズームレベルとともに変化するため、テキストのサイズは画像の表示サイズと比例します。ご使用のアプリケーションにおいてテキストサイズが大きすぎる、または小さすぎる場合、[フォーマット] ツールバーの [フォントサイズ] ドロップダウンメニューを使用して、フォントサイズを変更してください。

フォントを選択します。

フォントサイズを選択します。

テキストを太字にします。

テキストを斜体にします。

テキストをセルの左端に揃えます。

テキストをセルの中央に揃えます。

テキストをセルの右端に揃えます。

小数点以下の桁数を増やします。

小数点以下の桁数を減らします。

背景色を追加します。

注意: ColorLabel 関数を含むセルについては、背景色の変更は無視されます。

前景色を追加します。

注意: ColorLabel 関数を含むセルについては、前景色の変更は無視されます。

[セルのフォーマット] ダイアログを開いて、選択したセルの数値、配置、フォント、および保護を設定します。

フォントサイズを大きくします。

フォントサイズを小さくします。

[列の幅] ダイアログを開いて、スプレッドシートの 1 列または複数の列の幅を調整します。

[行の高さ] ダイアログを開いて、スプレッドシートの 1 行または複数の行の高さを調整します。

[ジョブの表示] ツールバー

In-Sight センサから画像を 1 つ取り込みます (トリガ)。

ライブビデオモードに切り替えます。In-Sight センサから連続的に画像を取り込み、半透明のスプレッドシートの下に表示します。

背景画像の表示倍率を上げます。

背景画像の表示倍率を下げます。

背景画像の表示倍率を最大まで上げます。

表示倍率を 1:1 に設定します。画像の 1 ピクセルに対して PC ディスプレイの 1 ピクセルで表示します。拡大/縮小の自動調整は実行されません。

ウィンドウ全体に画像が表示されるように自動調整します。画像の周囲に余白は表示されません。このため、ウィンドウの形状によっては画像の一部が表示されない場合があります。

ウィンドウ内に画像全体が表示されるように自動調整します。画像は、スプレッドシートの下で画像全体が表示される最大限の大きさに自動調整されます。画像のアスペクト比は維持されます。このため、画像の周囲にグレーの余白が表示される場合があります。

画像を右回りに 90 度回転します。

グレーレベルが [露光過少レベル] 以下の画像内のピクセルを青色でハイライトし、[露光過多レベル] 以上のピクセルを赤色でハイライトします。

スプレッドシートオーバレイの透明度を上げます。画像はより鮮明になり、スプレッドシートはより透明になります。

スプレッドシートオーバレイの透明度を下げます。画像はより不鮮明になり、スプレッドシートはより不透明になります。

[カスタムビューの設定] ダイアログを開きます。

[カスタムビューの設定] ダイアログでの定義に従って、カスタムビューの表示を切り替えます。

[EasyView の設定] ダイアログを開きます。

[VisionView ビューの選択] ダイアログを開き、VisionView アプリケーションでオペレータが確認可能な Run モードビュー、および VisionView の [Switch View] ボタンが押されたときにビューが表示される順序を指定します。

半透明のスプレッドシートオーバレイの表示/非表示を切り替えます。

スプレッドシートの関数に関連付けられているオーバレイグラフィックスの表示/非表示を切り替えます。

画像を拡大または縮小すると、グラフィックスオーバレイテキストは画像に合わせてスケーリングされます。(デフォルト) この設定はスプレッドシート内のすべてのセルに適用されますが、ジョブファイルには保存されません。

画像を縮小すると、グラフィックスオーバレイテキストのスケールは小さくなります。画像を拡大し、グラフィックスオーバレイテキストがデフォルトのフォントサイズ (9 ポイント) より小さくなると、グラフィックスオーバレイテキストのスケールは、デフォルトのフォントサイズになるまで大きくなります。この設定はスプレッドシート内のすべてのセルに適用されますが、ジョブファイルには保存されません。

グラフィックスオーバレイテキストのサイズは、画像の倍率レベルに関係なく固定されています。この設定はスプレッドシート内のすべてのセルに適用されますが、ジョブファイルには保存されません。

ヒント: 個々のセルにのみスケール設定を適用し、その設定をジョブファイルに保存するには、[セルのフォーマット] ダイアログを使用します。

フィルムストリップを表示/非表示にします。

スプレッドシートの表示倍率を設定します。
[フォーカスメトリクス] を表示または非表示にします。

アクティブな In-Sight センサのオンライン/オフライン状態を切り替えます。

[ジョブの編集] ツールバー

絶対セル参照をアクティブセルに挿入します。

相対セル参照をアクティブセルに挿入します。

[関数の挿入] ダイアログを開いて、関数をアクティブセルに挿入します。プロパティシートを持つ関数がアクティブセルに含まれている場合は、[関数の挿入] ダイアログの代わりにプロパティシートが開きます。

対話型グラフィックスモードに切り替えて、セルグラフィックスを編集します。このボタンは、関連するセルグラフィックスを持つ関数がアクティブセルに含まれている場合にのみ使用できます。

領域グラフィックスのサイズを、参照している [image] データ構造体の画像領域と同じサイズに変更します。セル A0 は、デフォルトの画像ソースです。このボタンは、関連する領域セルグラフィックスを持つ関数がアクティブセルに含まれている場合にのみ使用できます。

[セル状態] ダイアログを開いて、セルの実行を明示的に有効または無効にしたり、参照セルの値に基づいて条件付きで有効または無効にしたりします。

[コメントの編集] ダイアログを開いて、アクティブセルのコメントを追加したり編集したりします。

シンボリックタグエディタを開いて、アクティブセルに新しいシンボリックタグを挿入したり、既存のシンボリックタグを編集したりします。

現在の変更を確定します。

現在の変更をキャンセルして、変更前の値に戻します。

スプレッドシートの数式、値、またはラベルをアクティブセルに入力します。

[ジョブの監査] ツールバー

トレース矢印の表示をオンにして、表示する依存関係のトレースレベルを 1 段階上げます。

表示する依存関係のトレースレベルを 1 段階減らします。

トレース矢印をすべて消去します。

参照元セルがエラー (#ERR) の依存関係のみを表示します。

アクティブセルの最初の #ERR 参照元にジャンプします。

[記録/再生] ツールバー

記録中:

再生中:

再生フォルダに保存されている最初の画像に移動します。

再生フォルダに保存されている前の画像に移動します。

再生フォルダに保存されているすべての画像を再生します。

再生フォルダに保存されている画像の再生を一時停止します。

再生フォルダに保存されている次の画像に移動します。

再生フォルダに保存されている最後の画像に移動します。

取り込んだ画像を記録フォルダに記録します。

記録フォルダへの取り込み画像の記録を停止します。

[記録/再生のオプション] ダイアログを開いて、記録/再生の設定を行います。

注意:
  • 再生中に [記録] ボタンをクリックすると、再生中の画像は、[監視セルによる振り分け] の設定に応じて、記録フォルダ、Good フォルダ、または Bad フォルダに記録されます。このとき、再生フォルダ上のファイル名と同じ名前で記録されます。
  • センサがオンラインモードのときに画像の再生ができるようにするには、AcquireImage 関数の [トリガ] パラメータが [外部]、[手動]、または [ネットワーク] に設定されている必要があります。

[Explorer] ツールバー

[In-Sight ネットワーク] ペインを表示します。

[In-Sight のファイル] ペインを表示します。

[パレット] を表示します。

In-Sight センサにログオンする際に使用するユーザ名とパスワードを設定します。

1 つまたは複数の In-Sight センサのジョブおよびネットワーク設定の詳細を含む HTML または XML レポートを作成します。

1 つまたは複数の In-Sight センサのジョブファイルおよび設定データをバックアップします。

1 つまたは複数の In-Sight センサのジョブファイルおよび設定データをリストアします。

[センサ/デバイスをネットワークに追加] ダイアログを開きます。

In-Sight Explorer のヘルプにアクセスします。

オンラインサポートにアクセスします。


フィルムストリップ

表示メニュー

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

フィルムストリップを使用して、PC に記録された画像の再生や、ビジョンシステムに保存された画像や結果の確認を行うことができます。

PC フィルムストリップ

センサフィルムストリップ

フィルムストリップを表示するには

  • [表示] メニューで [フィルムストリップ] をクリックします (または、EasyBuilder ツールバーの [フィルムストリップ] ボタン [image] をクリックします)。

PC フィルムストリップ

[記録/再生のオプション] ダイアログの設定が終わると、[記録] ボタンが押されて画像が取り込まれたときに、成功画像と失敗画像が記録されて PC に保存されます。オンラインまたはオフラインのビジョンシステムから、PC 上で「書き込み」権限のある任意のフォルダに画像を保存することができます。PC の再生モードを使用して、記録された画像を再生することができます。この場合、画像はビジョンシステムに送信され、再生されている画像に対してジョブが実行されます。PC に保存できる画像の数は最大 10,000 です。

注意:
  • 画像は、ビジョンシステムがオンライン、またはオフラインである場合に記録できます。
  • ビジョンシステムがオンラインモードのときに画像を再生できるようにするには、[画像の設定] アプリケーションステップの [トリガ] パラメータが、[外部]、[手動]、または [ネットワーク] に設定されている必要があります。
  • PC にカラー画像が記録される場合は、24 ビットイメージではなく 16 ビットイメージで保存されます。カラーツールをテストするためにカラー画像を使用する必要がある場合は、画像を FTP 経由 ([通信] アプリケーションステップから FTP デバイスを追加) でエクスポートし、その画像を保存してフルカラー階調で管理することができます。

PC フィルムストリップのコントロール

フィルムストリップのインジケータ
 | 黄色のハイライトは、フィルムストリップで現在選択されている画像を示します。緑色の矩形は、フィルムストリップに現在表示されている結果の部分を示します。
ナビゲーションボタン
 | 再生フォルダに保存されている最初の画像に移動します。
 | 再生フォルダに保存されている前の画像に移動します。
 | 再生フォルダに保存されている次の画像に移動します。
 | 再生フォルダに保存されている最後の画像に移動します。
 | 再生フォルダに保存されているすべての画像を再生します。
 | 再生フォルダに保存されている画像の再生を一時停止します。

PC フィルムストリップの使用

この手順を使用して成功画像と失敗画像を記録し、元になる良好画像と不良画像のセットを作成します。再生フォルダの場所を指定してこれらの画像を PC フィルムストリップで再生し、画像に対してジョブを再度実行することができます。

記録の設定

[記録/再生のオプション] ダイアログでは、個々のビジョンシステムやエミュレータの記録に関する設定を行うことができます。

  1. [画像の設定] アプリケーションステップで、[画像取り込み/ロード] グループボックスの [PC から画像をロード] をクリックします。
  2. 表示される [記録/再生のオプション] ダイアログで [記録] タブをクリックし、記録の設定を行います。
  3. 成功画像と失敗画像を自動的に振り分けるには、[Pass/Fail の振り分け] 条件の [Pass/Fail に応じて画像を Good/Bad フォルダに振り分ける] を選択します。
  4. ほかのすべての記録設定を指定したら、[OK] をクリックして [記録/再生のオプション] ダイアログを閉じます。成功画像と失敗画像が記録されると、指定した記録フォルダの場所に「Good」および「Bad」フォルダが自動的に作成されます。

画像の記録

  1. フィルムストリップの [PC] ボタンをクリックします。

  2. EasyBuilder ツールバーの [記録] ボタンをクリックします。

    注意:画像は、ビジョンシステムがオンライン、またはオフラインである場合に記録できます。

  3. ビジョンシステムで画像取り込みをトリガします。画像が取り込まれると、成功画像を Good フォルダに失敗画像を Bad フォルダに自動的に振り分けて保存します。
  4. 再度 [記録] ボタンをクリックすると記録が停止します。
  5. PC から手動で記録フォルダに移動します。画像が Good と Bad の両方またはどちらかに保存されていることを確認します。

再生の設定

[記録/再生のオプション] ダイアログでは、個々のビジョンシステムやエミュレータの再生に関する設定を行うことができます。

  1. [フィルムストリップ] アプリケーションステップで、[PC の設定] グループボックスの [再生] をクリックします。
  2. [記録/再生のオプション] ダイアログで [再生] タブをクリックし、再生の設定を行います。

  3. 成功画像のみを再生するには、[再生フォルダ] フィールドで自動的に作成された Good フォルダを指定します。失敗画像のみを再生するには、[再生フォルダ] フィールドで自動的に作成された Bad フォルダを指定します。

    ヒント:デフォルトでは、再生フォルダは EasyBuilder Sample Jobs フォルダを参照します。EasyBuilder サンプルジョブには、[記録/再生のオプション] の有用性を示した例も用意されています。[記録/再生のオプション] によって、あらかじめ取り込んでおいた複数の画像を繰り返し使用できるようになり、ツールの結果を即座にフィードバックし、しきい値や制限を簡単に設定できるようになります。

  4. ほかのすべての再生設定を指定したら、[OK] をクリックして [記録/再生のオプション] ダイアログを閉じます。

画像の再生

  1. フィルムストリップの [PC] ボタンをクリックします。
  2. [画像の設定] アプリケーションステップの [トリガ] パラメータが [カメラ] または [連続] に設定されている場合は、ビジョンシステムをオフラインにして画像を再生します。[トリガ] パラメータが [外部]、[手動]、または [ネットワーク] に設定されている場合は、ビジョンシステムをオンラインにしたままで画像を再生することができます。
  3. フィルムストリップの [再生] ボタンをクリックして画像を再生するか、またはナビゲーションボタンをクリックして手動で画像を順に表示します。

  4. [ジョブの実行] アプリケーションステップに移動して、結果テーブルを表示します (または、[パレット] の [結果] タブをクリックします)。

センサフィルムストリップ

ビジョンシステムをオンラインにして画像を取り込んだ場合は、センサフィルムストリップを使用してジョブの実行をモニタすることができます。画像が取り込まれると、ジョブの結果は、取り込まれた画像とそれに付属するジョブデータも含めて、ビジョンシステムの RAM に保存されます。結果をビジョンシステムに保存すると、成功または失敗を示すグラフィックスがフィルムストリップに追加されます。フィルムストリップの結果をハイライトすると、フィルムストリップの表示がグラフィックスからサムネイル画像に変わり、対応する画像が表示領域にロードされます。[フィルムストリップ] アプリケーションステップの [センサの設定] グループボックスにあるコントロールを使用して、ビジョンシステムの動作を設定します。ビジョンシステムの解像度とビジョンシステムで使用できる RAM に応じて、最高 20 個の結果を保存できます。

注意:
  • 結果をフィルムストリップに追加するためには、ビジョンシステムがオンラインである必要があります。
  • センサフィルムストリップを有効にすると、ジョブの実行時間が長くなることがあります。実行時間の許容範囲をご確認ください。
  • ビジョンシステムが、使用可能な最大画像バッファ数を使用し、オンラインのときにセンサフィルムストリップを使用するように設定されている場合は、フィルムストリップ画像をビジョンシステムに保存するために必要なメモリが十分でない可能性があります。この場合、画像バッファの数を最大値より少なくします。
  • [センサの設定] グループボックスの [キュー]、[キューのサイズ]、または [キューのタイプ] 設定を変更したり、新規ジョブをロードしたり、ビジョンシステムの電源を入れ直したりすると、結果はすべてビジョンシステムから削除されます。
  • 使用できるRAMが不足して決められた数の結果を保存できない場合、ビジョンシステムは自動的にキューサイズを調節します。ただし、[センサの設定] グループボックスの [キューのサイズ] 設定は変更されません。

センサフィルムストリップのコントロール

結果インジケータ
 | 結果インジケータは、各結果のステータスを示します。黄色のハイライトは、フィルムストリップで現在選択されている結果を示します。黒色の矩形は、フィルムストリップに現在表示されている結果の部分を示します。
ナビゲーションボタン
 | フィルムストリップの最初の画像に移動して、その画像に付随する結果を結果テーブルと [パレット] の [結果] タブに表示します。
 | フィルムストリップの前の画像に移動して、その画像に付随する結果を結果テーブルと [パレット] の [結果] タブに表示します。
 | フィルムストリップの次の画像に移動して、その画像に付随する結果を結果テーブルと [パレット] の [結果] タブに表示します。
 | フィルムストリップの最後の画像に移動して、その画像に付随する結果を結果テーブルと [パレット] の [結果] タブに表示します。
 | クリックして、結果を確認します。
 | クリックして、更新を再開します。
 | クリックして、フィルムストリップ画像を指定された保存フォルダに保存します。PC 上の「書き込み」権限を持つフォルダならどれにでも画像を保存することができます。また、PC 再生モードを使用して、画像を確認することもできます。
 | キューをクリアします。

センサフィルムストリップの使用

センサの設定

  1. [フィルムストリップ] アプリケーションステップ の [センサの設定] グループボックスで設定を行います。

ビジョンシステムの結果のモニタ

  1. EasyBuilder ツールバーで [オンライン] ボタンをクリックして、ビジョンシステムをオンラインにします。

  2. ビジョンシステムで画像取り込みをトリガします。画像が取り込まれると、画像は、[センサの設定] グループボックスで指定したキューの設定に従ってビジョンシステムに保存され、フィルムストリップに表示されます。

  3. フィルムストリップに、成功/失敗の結果を表す状態グラフィックスが更新されて表示されます。ビジョンシステムはオンラインのままですが、次の場合フィルムストリップは更新を停止して「停止」モードに切り替わります (表示領域の上部に黄色のバーで表示されます)。
    • 結果が失敗ステータスを受信し、[センサの設定] グループボックスで [失敗時に停止] が指定されている場合。
    • 結果が失敗ステータスを受信し、[センサの設定] グループボックスで [失敗時に一時停止] が指定されている場合。

    • 成功/失敗を示すグラフィックスが選択されているか、ナビゲーションボタンがクリックされたか、または [停止] ボタンがクリックされた場合。

      注意:オンライン中にフィルムストリップが更新を中止しても、ジョブは実行を続行しますが、表示領域は更新されません。

      「停止」モードでは、フィルストリップ内の結果間を移動するか、またはビジョンシステムから PC に画像を保存することができます。アプリケーションステップはすべて無効化され、誤ってジョブパラメータを編集することがなくなります。一方、ジョブの実行は継続されますが、キューには何も追加されません。次のいずれかの場合、フィルムストリップは更新を再開し、すべてのアプリケーションステップが有効になります。

      • 指定した [一時停止ディレイ] 時間が経過した場合。
      • [再開] ボタンがクリックされた場合。
      • [キューのクリア] ボタンがクリックされた場合。

  4. 結果のモニタが終了したら、ツールバーの [オンライン] ボタンを再度クリックし、ビジョンシステムをオフラインにします。ビジョンシステムがオフラインのときは、フィルムストリップに新しい結果は追加されません。フィルムストリップで成功または失敗を示す既存のグラフィックスが選択されている場合、保存されている画像は表示領域にロードされ、ステップがすべて無効化されます。[再開] または [キューのクリア] ボタンをクリックすると、標準のオフラインモードに戻ります。

ビジョンシステムから PC への画像の保存

オンラインまたはオフラインのビジョンシステムから、PC 上で「書き込み」権限のある任意のフォルダに画像を保存することができます。

以下の手順に従って、保存フォルダを確認します。

  1. ビジョンシステムがオフラインであることを確認します。
  2. [保存フォルダ] フィールドの横の [参照] ボタンをクリックします。
  3. [フォルダの参照] ダイアログで保存先のフォルダを指定し、[OK] をクリックします。選択したフォルダのパスが、[保存フォルダ] フィールドに表示されます。

以下の手順に従って、オンラインまたはオフラインのビジョンシステムから PC に画像を保存します。

  1. フィルムストリップ内の結果を選択するか、または [停止] ボタンをクリックして「停止」モードに切り替えます。このモードに切り替えると、表示領域の上部に黄色のバーで表示されます。アプリケーションステップはすべて無効化され、誤ってジョブパラメータを編集することがなくなります。一方、ジョブの実行は継続されますが、キューには何も追加されません。
  2. フィルムストリップの [画像の保存] ボタンをクリックします。
  3. 画像を保存先フォルダに追加するには、[再開] ボタンまたは [キューのクリア] ボタンをクリックして「停止」モードを終了し、別の結果をキューに追加することを許可して、手順 1 と 2 を繰り返します。

スプレッドシートビュー

フィルムストリップを使用して、PC に記録された画像の再生や、ビジョンシステムに保存された画像や結果の確認を行うことができます。

PC フィルムストリップ

センサフィルムストリップ

フィルムストリップを表示するには

  • [表示] メニューで [フィルムストリップ] をクリックします (または、[ジョブの表示] ツールバーの [フィルムストリップ] ボタン [image] をクリックします)。

PC フィルムストリップ

[記録/再生のオプション] ダイアログの設定が終わると、[記録] ボタンが押されて画像が取り込まれたときに、成功画像と失敗画像が記録されて PC に保存されます。オンラインまたはオフラインのビジョンシステムから、PC 上で「書き込み」権限のある任意のフォルダに画像を保存することができます。PC の再生モードを使用して、記録された画像を再生することができます。この場合、画像はビジョンシステムに送信され、再生されている画像に対してジョブが実行されます。PC に保存できる画像の数は最大 10,000 です。

注意:
  • 画像は、ビジョンシステムがオンライン、またはオフラインである場合に記録できます。
  • ビジョンシステムが、使用可能な最大画像バッファ数を使用し、オンラインのときにセンサフィルムストリップを使用するように設定されている場合は、フィルムストリップ画像をビジョンシステムに保存するために必要なメモリが十分でない可能性があります。この場合、画像バッファの数を最大値より少なくします。
  • ビジョンシステムがオンラインのときに画像を再生できるようにするには、AcquireImage 関数の [トリガ] パラメータが [外部]、[手動]、または [ネットワーク] に設定されている必要があります。
  • PC にカラー画像が記録される場合は、24 ビットイメージではなく 16 ビットイメージで保存されます。カラーツールをテストするためにカラー画像を使用する必要がある場合は、WriteImageFTP 関数を使用して画像を保存し、フルカラー階調で管理します。

PC フィルムストリップのコントロール

フィルムストリップのインジケータ
 | 黄色のハイライトは、フィルムストリップで現在選択されている画像を示します。緑色の矩形は、フィルムストリップに現在表示されている結果の部分を示します。
ナビゲーションボタン
 | 再生フォルダに保存されている最初の画像に移動します。
 | 再生フォルダに保存されている前の画像に移動します。
 | 再生フォルダに保存されている次の画像に移動します。
 | 再生フォルダに保存されている最後の画像に移動します。
 | 再生フォルダに保存されているすべての画像を再生します。
 | 再生フォルダに保存されている画像の再生を一時停止します。

PC フィルムストリップの使用

この手順を使用して成功画像と失敗画像を記録し、元になる良好画像と不良画像のセットを作成します。再生フォルダの場所を指定してこれらの画像を PC フィルムストリップで再生し、画像に対してジョブを再度実行することができます。

記録/再生の設定

[記録/再生のオプション] ダイアログでは、個々のビジョンシステムやエミュレータの記録/再生の設定を行うことができます。

  1. [記録/再生のオプション] ダイアログを開きます。
  2. [記録] タブをクリックして、記録の設定を行います。
  3. 成功画像と失敗画像を自動的に振り分けるには、[監視セルによる振り分け] のオプションから [監視セルの値に応じて Good/Bad フォルダに振り分ける] を選択します。成功画像と失敗画像が記録されると、指定した記録フォルダ内に自動的に「Good」および「Bad」フォルダが作成されます。
  4. [再生] タブをクリックして、再生の設定を行います。
  5. 成功画像のみを再生するには、[再生フォルダ] フィールドで自動的に作成された Good フォルダを指定します。失敗画像のみを再生するには、[再生フォルダ] フィールドで自動的に作成された Bad フォルダを指定します。
  6. ほかのすべての記録/再生の設定を指定したら、[OK] をクリックして [記録/再生のオプション] ダイアログを閉じます。

画像の記録

  1. フィルムストリップの [PC] ボタンをクリックします。
  2. [記録/再生] ツールバーの [記録] ボタンをクリックします。

注意:画像は、ビジョンシステムがオンライン、またはオフラインである場合に記録できます。

  3. ビジョンシステムで画像取り込みをトリガします。画像が取り込まれると、成功画像を Good フォルダに失敗画像を Bad フォルダに自動的に振り分けて保存します。
  4. 再度 [記録] ボタンをクリックすると記録が停止します。
  5. PC から手動で記録フォルダに移動します。画像が Good と Bad の両方またはどちらかに保存されていることを確認します。

画像の再生

  1. フィルムストリップの [PC] ボタンをクリックします。
  2. AcquireImage 関数の [トリガ] パラメータが [カメラ] または [連続] に設定されている場合は、ビジョンシステムをオフラインにして画像を再生します。[トリガ] パラメータが [外部]、[手動]、または [ネットワーク] に設定されている場合は、ビジョンシステムをオンラインにしたままで画像を再生することができます。
  3. フィルムストリップの [再生] ボタンをクリックして画像を再生するか、またはナビゲーションボタンをクリックして手動で画像を順に表示します。

センサフィルムストリップ

ビジョンシステムをオンラインにして画像を取り込んだ場合は、センサフィルムストリップを使用してジョブの実行をモニタすることができます。画像が取り込まれると、ジョブの結果は、取り込まれた画像とそれに付属するジョブデータも含めて、ビジョンシステムの RAM に保存されます。結果をビジョンシステムに保存すると、成功または失敗を示すグラフィックスがフィルムストリップに追加されます。フィルムストリップの結果をハイライトすると、フィルムストリップの表示がグラフィックスからサムネイル画像に変わり、対応する画像が表示領域にロードされます。[フィルムストリップ] アプリケーションステップの [センサの設定] グループボックスにあるコントロールを使用して、ビジョンシステムの動作を設定します。ビジョンシステムの解像度とビジョンシステムで使用できる RAM に応じて、最高 20 個の結果を保存できます。

注意:
  • 結果をフィルムストリップに追加するためには、ビジョンシステムがオンラインである必要があります。
  • センサフィルムストリップを有効にすると、ジョブの実行時間が長くなることがあります。実行時間の許容範囲をご確認ください。
  • 画像ツール関数を使用して出力された画像は、ビジョンシステムに保存されません。
  • [キュー]、[キューのサイズ]、または [キューのタイプ] 設定を変更したり、新規ジョブをロードしたり、ビジョンシステムの電源を入れ直したりすると、結果はすべてビジョンシステムから削除されます。
  • メモリが不足して決められた数の結果を保存できない場合、ビジョンシステムは自動的に [キューのサイズ] を調整します。フィルムストリップの [センサの設定] ダイアログの [キューのサイズ] 設定は変更されません。

センサフィルムストリップのコントロール

結果インジケータ
 | 結果インジケータは、各結果のステータスを示します。黄色のハイライトは、フィルムストリップで現在選択されている結果を示します。黒色の矩形は、フィルムストリップに現在表示されている結果の部分を示します。
ナビゲーションボタン
 | フィルムストリップの最初の画像に移動して、その画像に付随する結果を表示します。
 | フィルムストリップの前の画像に移動して、その画像に付随する結果を表示します。
 | フィルムストリップの次の画像に移動して、その画像に付随する結果を表示します。
 | フィルムストリップの最後の画像に移動して、その画像に付随する結果を表示します。
 | クリックして、結果を確認します。
 | クリックして、更新を再開します。
 | クリックして、フィルムストリップ画像を指定された保存フォルダに保存します。PC 上の「書き込み」権限を持つフォルダならどれにでも画像を保存することができます。また、PC 再生モードを使用して、画像を確認することもできます。
 | キューをクリアします。

センサフィルムストリップの使用

センサの設定

  1. フィルムストリップの [センサの設定] ダイアログを開きます。
  2. フィルムストリップを設定します。

ビジョンシステムの結果のモニタ

  1. [ジョブの表示] ツールバーの [オンライン] ボタンをクリックして、ビジョンシステムをオンラインにします。
  2. ビジョンシステムで画像取り込みをトリガします。画像が取り込まれると、画像はフィルムストリップの [センサの設定] ダイアログで指定した キューの設定に従ってビジョンシステムに保存され、フィルムストリップに表示されます。

  3. フィルムストリップに、成功/失敗の結果を表す状態グラフィックスが更新されて表示されます。ビジョンシステムはオンラインのままですが、次の場合フィルムストリップは更新を停止して「停止」モードに切り替わります (表示領域の上部に黄色のバーで表示されます)。
  • 結果が失敗ステータスを受信し、 フィルムストリップの [センサの設定] ダイアログで [失敗時に停止] が指定されている場合。
  • 結果が失敗ステータスを受信し、フィルムストリップの [センサの設定] ダイアログで [失敗時に一時停止] が指定されている場合。
  • 成功/失敗を示すグラフィックスが選択されているか、ナビゲーションボタンがクリックされたか、または [停止] ボタンがクリックされた場合。

注意:オンライン中にフィルムストリップが更新を中止しても、ジョブは実行を続行しますが、表示領域は更新されません。

「停止」モードでは、フィルストリップ内の結果間を移動するか、またはビジョンシステムから PC に画像を保存することができます。保存された画像とスプレッドシートの結果が表示にロードされ、スプレッドシートは読み取り専用になります。一方、ジョブの実行は継続されますが、キューには何も追加されません。次のいずれかの場合、フィルムストリップは更新を再開します。

  • 指定した [一時停止ディレイ] 時間が経過した場合。
  • [再開] ボタンがクリックされた場合。
  • [キューのクリア] ボタンがクリックされた場合。
  4. 結果のモニタが終了したら、ツールバーの [オンライン] ボタンを再度クリックし、ビジョンシステムをオフラインにします。ビジョンシステムがオフラインのときは、フィルムストリップに新しい結果は追加されません。成功/失敗を示す既存のグラフィックスを選択すると、キューに保存された画像とスプレッドシートの結果がディスプレイ部分にロードされ、スプレッドシートは読み取り専用になります。[再開] ボタンをクリックすると、標準のオフライン操作モードに戻ります。

ビジョンシステムから PC への画像の保存

オンラインまたはオフラインのビジョンシステムから、PC 上で「書き込み」権限のある任意のフォルダに画像を保存することができます。

以下の手順に従って、保存フォルダを確認します。

  1. ビジョンシステムがオフラインであることを確認します。
  2. フィルムストリップの [センサの設定] ダイアログを開き、[保存フォルダ] フィールドの横の [参照] ボタンをクリックします。
  3. [フォルダの参照] ダイアログで保存先のフォルダを指定し、[OK] をクリックします。選択したフォルダのパスが、[保存フォルダ] フィールドに表示されます。
  4. [OK] をクリックして、フィルムストリップの [センサの設定] ダイアログを閉じます。

以下の手順に従って、オンラインまたはオフラインのセンサから PC に画像を保存します。

  1. フィルムストリップ内の結果を選択するか、または [停止] ボタンをクリックして「停止」モードに切り替えます。このモードに切り替えると、表示領域の上部に黄色のバーで表示されます。保存された画像とスプレッドシートの結果が表示にロードされ、スプレッドシートは読み取り専用になります。一方、ジョブの実行は継続されますが、キューには何も追加されません。
  2. フィルムストリップの [画像の保存] ボタンをクリックします。
  3. 画像を保存先フォルダに追加するには、[再開] ボタンまたは [キューのクリア] ボタンをクリックして「停止」モードを終了し、別の結果をキューに追加することを許可して、手順 1 と 2 を繰り返します。


アプリケーションステップ

EasyBuilder GUI リファレンス

[アプリケーションステップ] ペインからは、EasyBuilder のどのステップにも 1 クリックで簡単にアクセスできます。[アプリケーションステップ] は、ジョブの構築に一般的に使用される順序で表示されます。ジョブの構築後、これらのステップには任意の順序で再アクセスできるので、目的の結果が得られるまで、ジョブパラメータを変更したり、微調整したりすることが可能です。

アクセスレベル、実行中のタスク、接続先がセンサかエミュレータか、In-Sight センサがオンラインかどうかなどによっては、[アプリケーションステップ] がグレーアウトされることがあります。

注意: [アプリケーションステップ] ペインを移動またはサイズ変更して、EasyBuilder をカスタマイズすることができます。

標準の外観 | 狭くしたときの 外観 | 短くしたときの外観。非表示になっているステップにアクセスするには、 オレンジ色のスクロールバーにカーソルを重ねます。

アプリケーションステップの使用

ジョブパラメータを設定するには、目的のステップをクリックして、その設定ペインにアクセスします。ここでは、各ステップについて簡単に説明します。

  • [接続]: In-Sight センサまたはエミュレータに接続し、既存の EasyBuilder ジョブを開くか、新規ジョブを開始します。
  • [画像の設定]: 画像を取り込み、またはロードして、取り込み設定を調整し、実世界の単位に画像をキャリブレーションします。
  • [位置決め]: 位置決めツールをジョブに追加し設定して、フィクスチャを生成します。フィクスチャは、そのほかのビジョン検査ツールの原点となる基準点を定義するビジョン検査ツールです。
  • [検査]: 製品の検査ツールをジョブに追加し設定して、画像解析基準に基づいて製品を検査し、品質や数量を確認します。
  • [入力]: サポートされている Cognex 製 I/O モジュールのディスクリート入力ラインの設定を定義するために、入力ライン名のカスタマイズ、信号タイプの設定、信号のエッジ変化の選択、およびアプリケーションをテストするための強制入力を行います。
  • [出力]: サポートされている Cognex 製 I/O モジュールのディスクリート出力ラインの設定を定義するために、出力ライン名のカスタマイズ、信号タイプの設定、ツールの結果の選択、およびアプリケーションをテストするための強制出力を行います。
  • [通信]: VisionView 用に EasyView を設定したり、In-Sight センサがロボットや PLC などのほかのデバイスとデータをやり取りできるように、ネットワークおよびシリアル通信の設定値を定義したりするには、OPC オープンデータアクセスおよび交換で使用される検査結果を定義します。
  • [フィルムストリップ]: 取得された画像を、センサまたは PC から確認するためのフィルムストリップ設定を行います。
  • [ジョブの保存]: センサがオフラインのときに、さまざまなファイル管理タスクやセンサ保守タスクを行います。
  • [ジョブの実行]: ジョブを実行し、結果を確認して、必要に応じて設定を変更またはトラブルシューティングします。

注意: EasyBuilder には「自動保存」機能はありません。開発中は、定期的に CTRL+S キーを押して、ジョブを保存することを推奨します。


スプレッドシートのグラフィカルユーザインタフェース

概要

In-Sight Explorer GUI リファレンス

スプレッドシートのグラフィカルユーザインタフェース (GUI) は、以下の 6 つの主なコンポーネントで構成されています。メニューバー、 ツールバー (標準、記録/再生、ジョブの表示、Explorer、フォーマット、ジョブの監査、およびジョブの編集)、In-Sight のネットワーク、In-Sight のファイル、スプレッドシートビュー/センサのステータスビュー、およびパレット。

注意:
  • スプレッドシートビューがアクティブでないとき、[挿入]、[フォーマット]、[画像]、[センサ] メニューは使用できません。
  • スプレッドシートビューがアクティブでないとき、[記録/再生]、[ジョブの表示]、[フォーマット]、[ジョブの監査]、[ジョブの編集] ツールバーは使用できません。
  • グラフィカルユーザインタフェース
  • ユーザインターフェースのカスタマイズ

グラフィカルユーザインタフェース

詳細については、赤い枠で囲まれた各領域のいずれかをクリックしてください。

ウィンドウペインのカスタマイズ

[アプリケーションステップ] (EasyBuilder ビューのみ)、[In-Sight のネットワーク]、[In-Sight のファイル] および [パレット] ペインはウィンドウペインにドッキングすることができます。また、ペインのタイトルバーをドラッグまたは右クリックすることによってカスタマイズすることができます。

ドラッグによるカスタマイズ

ウィンドウペインのタイトルをクリックして、目的の位置にドラッグします。

ウィンドウペインのドッキング

ウィンドウペインをユーザインタフェースの特定の範囲に固定するには、ドッキング先のウィンドウの端にウィンドウペインをドラッグして、ユーザインタフェースに表示される小さな正方形のいずれか 1 つにドロップします。小さな正方形にウィンドウペインを合わせると、ドッキング先の範囲が青色で表示されます。

ユーザインタフェースの左側にドッキングします。
ユーザインタフェースの右側にドッキングします。
ユーザインタフェースの上側にドッキングします。
ユーザインタフェースの下側にドッキングします。
ウィンドウペインをタブとしてドッキングします。

右クリックによるドッキング

ウィンドウペインのタイトルを右クリックすると、次のメニューが表示されます。

  • [ドッキング] (デフォルト):　ウィンドウペインをユーザインタフェースに固定します。
  • [自動的に隠す]:　ウィンドウペインをユーザインタフェースの横に「ピン留め」します。ウィンドウペインを表示するには、ユーザインタフェースのサイドバーにカーソルを合わせます。このメニューは [Floating] が選択されていると使用できません。
  • [隠す]:　ウィンドウペインを閉じます。再表示するには、[表示] メニューからウィンドウペインを選択します。このメニューは EasyBuilder の [アプリケーションステップ] ウィンドウペインでは使用できません。

注意:　ドッキングしていないウィンドウペインをダブルクリックすると、最後にドッキングした位置に戻ります。ドッキングしているウィンドウペインをダブルクリックすると、ユーザインタフェースから分離します。


画像メニュー

メニューバー

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

[画像] メニューを使用すると、表示領域に表示される画像に関連した操作を実行できます。

注意: EasyBuilder ビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[画像] メニューの項目

  • [トリガ]: アクティブな In-Sight センサから新しい画像を 1 つ取得します。
  • [ライブビデオ]: センサのレンズと視野の調節を行うときに使用するライブビデオ画像を表示します。また、画像のフォーカス得点を判定する際に有用なフォーカスメトリクス を開始します。これは、「シーン」 (つまり、その画像でキャプチャされた対象物とその背景) 内で認識可能な最小の特徴が画像または画像の領域に含まれる度合を示します。
注意:
  • この機能は、[画像の設定] アプリケーションステップでのみ使用可能です。
  • このモードを終了するには、コンテキストペインまたは [EasyBuilder] ツールバーの [ライブビデオ] ボタンをクリックするか、画像をクリックするか、Enter キーを押すか、または [画像の設定] アプリケーションステップを終了します。
  • 意味のあるデータを得るには、「フォーカスメトリクス」得点をまったく同じシーンの別の「フォーカスメトリクス」得点と比較する必要があります (シーンは同一である必要があります)。
  • [フォーカスメトリクス] をオフにするには、EasyBuilder ツールバーで [フォーカスメトリクス] アイコンをクリックするか (画像がライブビデオの場合)、[ビュー] メニューで [フォーカスメトリクス] オプションを選択します。
  • [記録]: 取り込んだ画像を、ユーザ指定の記録フォルダに記録します。記録はオンラインとオフラインの両方のモードで機能します。
注意:
  • ライブビデオモードでは、画像を記録できません。
  • 再生中に [記録] をクリックすると、再生中の画像は、[記録/再生のオプション] ダイアログで指定されたソートパラメータに応じて、記録フォルダ、Good フォルダ、または Bad フォルダに記録されます。このとき、再生フォルダ上のファイル名と同じ名前で記録されます。
  • [再生]: 再生する画像を選択します。
    • [最初の画像]: 再生フォルダに保存されている最初の画像に移動します。
    • [前の画像]: 再生フォルダに保存されている前の画像に移動します。
    • [再生]: 再生フォルダに保存されているすべての画像を再生します。

注意: センサがオンラインモードのときに画像の再生ができるようにするには、[画像の設定] ステップの [トリガ] パラメータが [外部]、[手動]、または [ネットワーク] に設定されている必要があります。

  • [次の画像]: 再生フォルダに保存されている次の画像に移動します。
  • [最後の画像]: 再生フォルダに保存されている最後の画像に移動します。
  • [記録/再生のオプション]: [記録/再生のオプション] ダイアログを開きます。このダイアログでは、記録画像を保存するフォルダの指定、再生する画像の保存されているフォルダの指定、画像の最大保存数の指定、保存済み画像数の確認、検査結果に基づく複数フォルダへの画像の振り分け、画像解像度の設定、記録画像のファイル名のフォーマットの選択、および記録画像の再生モードと一時停止時間の設定を行うことができます。
  • [ズーム]: 背景画像の表示倍率を変更します。

    • [拡大]: 画像の表示倍率を 1 段階上げます。

    • [縮小]: 画像の表示倍率を 1 段階下げます。

    • [倍率 1:1]: 画像の 1 ピクセルに対して PC ディスプレイの 1 ピクセルで表示するようにします。

    • [最大のサイズに拡大]: 表示倍率を最大限まで高めます。

    • [全体表示]: ウィンドウ内に画像全体が表示されるように自動調整します。境界線は表示されません。

    • [幅に合わせる]: ウィンドウ全体に画像が表示されるように自動調整します。画像の周囲に余白は表示されません。

注意:
  • [倍率 1:1]、[最大のサイズに拡大]、[幅に合わせる]、[全体表示] は、相互に排他的です。一度に 2 つの項目を選択することはできません。 いずれか 1 つのみ選択できます。
  • [全体表示] と [幅に合わせる] の表示倍率は、ウィンドウのサイズが変更されると、自動的に調整されます。
  • [画像方向]:取り込んだ画像を表示する向きを選択します。ハイライトされたアイコンは現在の回転状態を示します。この設定は、表示の変更のみを目的とし、センサからの画像の取り込み方法やビジョンツールによる画像の処理方法、および PC 上のファイルへの画像の保存やファイルからのロードには影響を与えません。したがって、表示の向きはいつでも変更でき、ジョブの処理結果には影響しません。なお、この設定はジョブファイルに保存されるので、ジョブごとに特定の向きで画像を表示するように設定することができます。
    • [標準]
    • [右に 90 度回転]
    • [180 度回転]
    • [270 度回転]

注意: 画像は、取り込み時の向きでファイルに保存されます。

  • [露光過多・過少を表示]: グレーレベルが [露光過少レベル] 以下の画像内のピクセルを青色でハイライトし、[露光過多レベル] 以上のピクセルを赤色でハイライトします。

スプレッドシートビュー

[画像] メニューを使用すると、半透明のスプレッドシートオーバレイの下に表示される画像に関連した操作を実行できます。

注意: スプレッドシートビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[画像] メニューの項目

  • [トリガ]: アクティブな In-Sight センサから新しい画像を 1 つ取得します。
  • [ライブビデオ]: センサのレンズと視野の調節を行うときに使用するライブ画像を表示します。いずれかのボタンを押すと、ライブビデオを終了してスプレッドシートに戻ります。また、画像のフォーカス得点を判定する際に有用なフォーカスメトリクス得点 を開始します。これは、「シーン」 (つまり、その画像でキャプチャされた対象物とその背景) 内で認識可能な最小の特徴が画像または画像の領域に含まれる度合を示します。
注意:
  • 意味のあるデータを得るには、「フォーカスメトリクス」得点をまったく同じシーンの別の「フォーカスメトリクス」得点と比較する必要があります (シーンは同一である必要があります)。
  • [フォーカスメトリクス] をオフにするには、[ジョブの表示] ツールバーで [フォーカスメトリクス] アイコンをクリックするか (画像がライブビデオの場合)、[ビュー] メニューで [フォーカスメトリクス] オプションを選択します。
  • [記録]: 取り込んだ画像を、ユーザ指定の記録フォルダに記録します。記録はオンラインとオフラインの両方のモードで機能します。
注意:
  • ライブビデオモードでは、画像を記録できません。
  • 再生中に [記録] ボタンをクリックすると、再生中の画像は、[監視セルによる振り分け] の設定に応じて、記録フォルダ、Good フォルダ、または Bad フォルダに記録されます。このとき、再生フォルダ上のファイル名と同じ名前で記録されます。
  • [再生]: 再生する画像を選択します。
    • [最初の画像]: 再生フォルダに保存されている最初の画像に移動します。
    • [前の画像]: 再生フォルダに保存されている前の画像に移動します。
    • [再生]: 再生フォルダに保存されているすべての画像を再生します。

注意: センサがオンラインモードのときに画像の再生ができるようにするには、AcquireImage 関数の [トリガ] パラメータが [外部]、[手動]、または [ネットワーク] に設定されている必要があります。

  • [次の画像]: 再生フォルダに保存されている次の画像に移動します。
  • [最後の画像]: 再生フォルダに保存されている最後の画像に移動します。
  • [記録/再生のオプション]: [記録/再生のオプション] ダイアログを開きます。このダイアログでは、記録画像を保存するフォルダの指定、再生する画像の保存されているフォルダの指定、画像の最大保存数の指定、保存済み画像数の確認、検査結果に基づく複数フォルダへの画像の振り分け、画像解像度の設定、記録画像のファイル名のフォーマットの選択、および記録画像の再生モードと一時停止時間の設定を行うことができます。
  • [ズーム]: 背景画像の表示倍率を変更します。
    • [拡大]: 画像の表示倍率を 1 段階上げます。
    • [縮小]: 画像の表示倍率を 1 段階下げます。
    • [倍率 1:1]: 画像の 1 ピクセルに対して PC ディスプレイの 1 ピクセルで表示するようにします。
    • [最大のサイズに拡大]: 表示倍率を最大限まで高めます。
    • [幅に合わせる]: ウィンドウ全体に画像が表示されるように自動調整します。画像の周囲に余白は表示されません。
    • [全体表示]: ウィンドウ内に画像全体が表示されるように自動調整します。境界線は表示されません。
注意:
  • [倍率 1:1]、[最大のサイズに拡大]、[幅に合わせる]、[全体表示] は、相互に排他的です。一度に 2 つの項目を選択することはできません。 いずれか 1 つのみ選択できます。
  • [全体表示] と [幅に合わせる] の表示倍率は、アプリケーションウィンドウのサイズが変更されると、自動的に調整されます。
  • [画像方向]:取り込んだ画像を表示する向きを選択します。ハイライトされたアイコンは現在の回転状態を示します。この設定は、表示の変更のみを目的とし、センサからの画像の取り込み方法やビジョンツールによる画像の処理方法、および PC 上のファイルへの画像の保存やファイルからのロードには影響を与えません。したがって、表示の向きはいつでも変更でき、ジョブの処理結果には影響しません。なお、この設定はジョブファイルに保存されるので、ジョブごとに特定の向きで画像を表示するように設定することができます。
    • [標準]
    • [右に 90 度回転]
    • [180 度回転]
    • [270 度回転]

注意: ファイル保存時の画像の向きは、AcquireImage 関数の [画像方向] パラメータで指定されます。

  • [露光過多・過少を表示]: グレーレベルが [露光過少レベル] 以下の画像内のピクセルを青色でハイライトし、[露光過多レベル] 以上のピクセルを赤色でハイライトします。
  • [オーバレイの透明度]: [オーバレイの透明度] ダイアログでは、画像やグラフィックスに対するスプレッドシートオーバレイの不透明度を調整することができます。


センサメニュー

メニューバー

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

[センサ] メニューを使用すると、アクティブな In-Sight ビジョンシステムに関する設定と操作を実行できます。

注意:　EasyBuilder ビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[センサ] メニューの項目

  • [オンライン]:　アクティブな In-Sight ビジョンシステムのオンライン/オフライン状態を切り替えます。
  • [ネットワークの設定]:　[ネットワークの設定] ダイアログを開きます。このダイアログでは、TCP/IP ネットワークで通信できるようにビジョンシステムを設定することができます。
  • [日付/時刻の設定]:　[日付/時刻の設定] ダイアログを表示します。このダイアログでは、現在の日付または時刻を調整して、タイムゾーンを設定します。また、自動時刻同期に使用する SNTP サーバの設定を行います。
  • [ホストテーブル]:　[ホストテーブル] ダイアログを開いて、ネットワークのホスト名から IP アドレスへのローカルマッピングを指定することができます。これによって、異なるサブネットにある In-Sight ビジョンシステムやサードパーティの FTP サーバにアクセスできるようになります。
  • [FTP の設定]:　[FTP の設定] ダイアログを開きます。ここでは、ほかのデバイスと通信するために FTP (File Transfer Protocol) を設定することができます。
  • [外部照明の設定]:　[外部照明の設定] ダイアログを開き、In-Sight 7000 シリーズビジョンシステムに接続されている外部ストロボデバイスのタイプを指定します。
  • [ユーザアクセス設定]:　ユーザのアクセスレベル権限を表示または変更します。
  • [ビュー接続]:　[マルチビュー接続] ダイアログを開き、In-Sight ビジョンシステムまたはエミュレータに接続可能な VisionView® アプリケーションの数を設定します。
  • [表示画像の設定]:　[表示画像の設定] ダイアログを開きます。ここでは、ライブ画像およびオンライン画像の解像度とフレームレートを設定できます。
  • [画像バッファ]:　 [画像バッファ] ダイアログ を開き、スタートアップ時に In-Sight ビジョンシステムに割り当てる画像バッファの数を設定します。
  • [TestRun]:　[TestRun セットアップ] ダイアログを開き、TestRun テストを設定します。さらに、TestRun テストの開始、壊れた値またはテストの修復、テストのインポートおよびエクスポート、新しいテストの起動を行うこともできます。
    • [新規]:　以前に作成した TestRun テストをクリアします。
    • [設定]:　[TestRun セットアップ] ダイアログを起動して、TestRun テストを設定および編集します。
    • [実行]:　TestRun テストの実行を開始します。
    • [バッチ実行]:　[バッチ実行] ダイアログを開き、.job ファイルのバッチで実行する TestRun を設定します。
    • [修復]:　TestRun の値またはテストの修復を開始します。
    • [インポート]:　[開く] ダイアログを起動して、以前に作成した TestRun テストをインポートします。
    • [エクスポート]:　[名前を付けて保存] ダイアログを起動して、TestRun テストを保存およびエクスポートします。
  • [ジョブサイズ制限]:　[ジョブサイズ制限] ダイアログを開き、選択中の In-Sight ビジョンシステムのメモリ割り当て量を設定します。
  • [ライセンス]:　[ライセンス] ダイアログを開きます。ここで、セル保護ライセンスを管理できます。
  • [再起動]:　[センサの再起動] ダイアログが表示されます。ここで、ビジョンシステムを再起動するかどうかが確認されます。

スプレッドシートビュー

[センサ] メニューを使用すると、アクティブな In-Sight ビジョンシステムに関する設定と操作を実行できます。

注意:　スプレッドシートビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[センサ] メニューの項目

  • [オンライン]:　アクティブな In-Sight ビジョンシステムのオンライン/オフライン状態を切り替えます。
  • [ネットワークの設定]:　[ネットワークの設定] ダイアログを開きます。このダイアログでは、TCP/IP ネットワークで通信できるようにビジョンシステムを設定することができます。
  • [日付/時刻の設定]:　[日付/時刻の設定] ダイアログを表示します。このダイアログでは、現在の日付または時刻を調整して、タイムゾーンを設定します。また、自動時刻同期に使用する SNTP サーバの設定を行います。
  • [ホストテーブル]:　[ホストテーブル] ダイアログを開いて、ネットワークのホスト名から IP アドレスへのローカルマッピングを指定することができます。これによって、異なるサブネットにある In-Sight ビジョンシステムやサードパーティの FTP サーバにアクセスできるようになります。
  • [FTP の設定]:　[FTP の設定] ダイアログを開きます。ここでは、ほかのデバイスと通信するために FTP (File Transfer Protocol) を設定することができます。
  • [シリアルポートの設定]:　シリアルポートの通信パラメータを設定します。
  • [CC-Link の設定]:　[CC-Link の設定] ダイアログを開き、CIO-MICRO-CC I/O モジュール上での CC-Link 通信を設定します。
  • [ディスクリート I/O の設定]:　ディスクリート入力および出力のデータラインを設定します。
  • [外部照明の設定]:　[外部照明の設定] ダイアログを開き、In-Sight 7000 シリーズビジョンシステムに接続されている外部ストロボデバイスのタイプを指定します。
  • [監査メッセージの設定]:　[監査メッセージの設定] ダイアログを開き、アクティブなビジョンシステムの自動監査メッセージの有効化または無効化、監査メッセージサーバの IP アドレスと TCP/IP ポートの指定、および監査メッセージを生成するイベントタイプの指定を行います。
  • [ラインスキャンの設定]:　[ラインスキャンの設定] ダイアログを開き、In-Sight 5604 ラインスキャンビジョンシステムを設定します。
  • [スタートアップ]:　起動時のスタートアップパラメータを設定します。これには、オンライン/オフラインステータスや起動時にロードするジョブなどが含まれます。
  • [ユーザアクセス設定]:　ユーザのアクセスレベル権限を表示または変更します。

  • [ビュー接続]:　[マルチビュー接続] ダイアログを開き、In-Sight ビジョンシステムまたはエミュレータに接続可能な VisionView® アプリケーションの数を設定します。

  • [表示画像の設定]:　[表示画像の設定] ダイアログを開きます。ここでは、ライブ画像およびオンライン画像の解像度とフレームレートを設定できます。
  • [画像バッファ]:　 [画像バッファ] ダイアログ を開き、スタートアップ時に In-Sight ビジョンシステムに割り当てる画像バッファの数を設定します。
  • [センサフィルムストリップの設定]:　[センサフィルムストリップの設定] ダイアログを開き、ビジョンシステムに格納する結果のタイプ、ビジョンシステムに格納する結果の数、結果の成功または失敗ステータスを決定する要素、および失敗ステータス時のフィルムストリップの動作を設定します。
  • [RAM ディスクの設定]:　[RAM ディスクの設定] ダイアログを開いて、ビジョンシステムまたはエミュレータの RAM ディスクフォルダを有効にして設定します。RAM ディスクフォルダは、ジョブ、画像、またはセルデータなどのデータの格納と共有に使用することができます。セルデータは [セルのインポート]、[セルのエクスポート] ダイアログや [スニペット] ダイアログ、および ExportData/ImportData 関数で使用されます。
  • [アクティブセル制限]:　使用可能なスプレッドシートのセル数を設定するための [アクティブセル制限] ダイアログを開きます。
  • [ジョブのプロファイル]:　セルの実行時間のベンチマークテストを実行できるプロファイラを開きます。
  • [ジョブの PASS/FAIL]:　[ジョブの Pass/Fail セルの設定] ダイアログを開きます。ここでは、モニタするセルを選択します。このセルは、ジョブの全体的な成功/失敗ステータスを決定するもので、ビジョンシステムからの出力として Cognex VisionView などそのほかのアプリケーションへ送信することができます。
  • [TestRun]:　[TestRun セットアップ] ダイアログを開き、TestRun テストを設定します。さらに、TestRun テストの開始、壊れた値またはテストの修復、テストのインポートおよびエクスポート、新しいテストの起動を行うこともできます。
    • [新規]:　以前に作成した TestRun テストをクリアします。
    • [設定]:　[TestRun セットアップ] ダイアログを起動して、TestRun テストを設定および編集します。
    • [実行]:　TestRun テストの実行を開始します。
    • [バッチ実行]:　[バッチ実行] ダイアログを開き、.job ファイルのバッチで実行する TestRun を設定します。
    • [修復]:　TestRun の値またはテストの修復を開始します。
    • [インポート]:　[開く] ダイアログを起動して、以前に作成した TestRun テストをインポートします。
    • [エクスポート]:　[名前を付けて保存] ダイアログを起動して、TestRun テストを保存およびエクスポートします。
  • [Dialog 関数キャンセル表示]:　有効にすると、ジョブ内のすべての Dialog 関数で [キャンセル] ボタンが使用できるようになります。無効にすると、ジョブ内のすべての Dialog 関数で [キャンセル] ボタンが使用できなくなります。
  • [ライセンス]:　[ライセンス] ダイアログを開きます。ここで、セル保護ライセンスの管理および保護されたセルへのアクセスを提供するテンポラリパスワードの入力を実行できます。
  • [再起動]:　[センサの再起動] ダイアログが表示されます。ここで、ビジョンシステムを再起動するかどうかが確認されます。


オンライン/オフライン

センサメニュー

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

現在のオンライン/オフラインの状態は、ユーザインタフェースの右下隅のステータスバーに表示されます。ステータスバーに [image] と表示されるようにするには、GUI オンライン、通信オンライン、およびディスクリート I/O オンラインの 3 つがそれぞれオンライン状態である必要があります。次のいずれかの操作によって、アクティブなビジョンシステムの GUI オンライン/オフラインのステータスが切り替わります。

  • [センサ] メニューの、[オンライン] をクリックします。
  • EasyBuilder ツールバーで、[オンライン/オフライン] [image] ボタンをクリックします。
  • [ジョブの実行] 設定ペインで [オンライン] ボタンをクリックします。
  • Ctrl + F8 キーを押します。

次の表は、ビジョンシステムのさまざまなオンライン/オフラインモードをまとめたものです。

オンライン/オフラインステータス | 条件
 | 通信およびディスクリート I/O はオンライン状態ですが、ビジョンシステムは GUI からオフライン状態に設定されています。
 | 3 つのそれぞれがオンライン状態です。ビジョンシステムはオンライン操作モードです。
 | ビジョンシステムは GUI からオンラインモードに設定されましたが、通信プロトコル (ProfiNET、EtherNet/IP、ネイティブモードなど) によって、ビジョンシステムはオフラインのままになっています。例えば、ネイティブモードで、ビジョンシステムをオフラインにする Set Online コマンド SO0 が発行されました。ビジョンシステムをオンラインにするには、Set Online コマンド SO1 をビジョンシステムに送信する必要があります。 注意: アプリケーションは、管理関数 (Backup や Restore など) を実行するために、Set Online コマンドをビジョンシステムに送信します。
 | ビジョンシステムは GUI からオンラインモードに設定されましたが、オンライン/オフラインタイプとして設定されたディスクリート入力ラインが Low (0) に設定されています。ディスクリート入力信号の状態が High (1) になると、ビジョンシステムはオンラインモードになります。

オンラインモードについて

ビジョンシステムがオンラインの場合、次の操作が可能です。

  • ネットワーク入出力関数を使用して、ネットワークを介して EasyBuilder ジョブのデータの送受信を行う。
  • シリアルポートを介して、テキスト、ネイティブ、デバイスネット、および Motoman モードで EasyBuilder ジョブのデータを送受信する。
  • 「カメラ」、「外部」、および「ネットワーク」画像の取り込みトリガに応答する。
  • ディスクリート入出力の読み取りおよび書き込みを行う。
  • EasyBuilder ジョブの結果テーブルを印刷する。
  • [記録/再生] オプションを使用して画像を表示する (画像取り込みトリガを「手動」に設定する必要があります)。

ビジョンシステムがオンラインの場合、次の操作はできません。

  • ジョブや画像を保存および開く (画像取り込みトリガが手動に設定されている場合を除く。この場合は、オンラインの間に画像を開くことができます)。

注意: [ユーザ] ダイアログの [オンライン時にジョブ保存] チェックボックスがオンの場合、フルまたはプロテクトレベルのアクセス権を持つユーザはオンライン状態でジョブを保存することができます。

  • EasyBuilder ジョブでのツールの編集、コピー、または貼り付け。
  • ビジョンシステム固有のメニュー項目の実行。ただし、ビジョンシステムをオフラインにすることはできます。

オフラインモードについて

ビジョンシステムはオフラインの場合、画像取り込みトリガに応答することも、ジョブとの間でデータを送受信することもできません。ただし、このビジョンシステムは、シリアル、ネットワーク、およびディスクリートなどの選択によって、特にオンライン状態を切り替えるような入力コマンドに対して応答することができます。

スプレッドシートビュー

現在のオンライン/オフラインの状態は、スプレッドシートの右下隅のステータスバーに表示されます。ステータスバーに [image] と表示されるようにするには、GUI オンライン、通信オンライン、およびディスクリート I/O オンラインの 3 つがそれぞれオンライン状態である必要があります。次のいずれかの操作によって、アクティブなビジョンシステムの GUI オンライン/オフラインのステータスが切り替わります。

  • [センサ] メニューの、[オンライン] をクリックします。
  • [ジョブの表示] ツールバーで、[オンライン] [image] ボタンをクリックします。
  • Ctrl + F8 キーを押します。

次の表は、ビジョンシステムのさまざまなオンライン/オフラインモードをまとめたものです。

オンライン/オフラインステータス | 条件
 | 通信およびディスクリート I/O はオンライン状態ですが、ビジョンシステムは GUI からオフライン状態に設定されています。
 | 3 つのそれぞれがオンライン状態です。ビジョンシステムはオンライン操作モードです。
 | ビジョンシステムは GUI からオンラインモードに設定されましたが、通信プロトコル (ProfiNET、EtherNet/IP、ネイティブモードなど) によって、ビジョンシステムはオフラインのままになっています。例えば、ネイティブモードで、ビジョンシステムをオフラインにする Set Online コマンド SO0 が発行されました。ビジョンシステムをオンラインにするには、Set Online コマンド SO1 をビジョンシステムに送信する必要があります。 注意: アプリケーションは、管理関数 (バックアップ や リストア など) を実行するために、Set Online コマンドをビジョンシステムに送信します。
 | ビジョンシステムは GUI からオンラインモードに設定されましたが、オンライン/オフラインタイプとして設定されたディスクリート入力ラインが Low (0) に設定されています。ディスクリート入力信号の状態が High (1) になると、ビジョンシステムはオンラインモードになります。

ヒント: [スタートアップ] ダイアログで、アクティブなビジョンシステムをオンラインモードで起動するように設定することができます。

オンラインモードについて

ビジョンシステムがオンラインの場合、次の操作が可能です。

  • ネットワーク入出力関数を使用して、ネットワークを介してスプレッドシートのデータの送受信を行う。
  • テキスト、ネイティブ、DeviceNet、および Motoman モードを使用し、シリアルポートを介してスプレッドシートのデータの送受信を行う。
  • 「カメラ」、「外部」、および「ネットワーク」画像の 画像取り込みトリガに応答する。
  • ディスクリート入出力の読み込みおよび書き込みを行う。
  • スプレッドシートを印刷する。
  • 記録/再生 オプションを使用して画像を表示する (ビジョンシステムの AcquireImage 関数の トリガパラメータは手動に設定しておく必要があります)。

ビジョンシステムがオンラインの場合、次の操作はできません。

  • ジョブや画像を保存および開く (画像取り込みトリガが手動に設定されている場合を除く。この場合は、オンラインの間に画像を開くことができます)。

注意: [ユーザ] ダイアログの [オンライン時にジョブ保存] チェックボックスがオンの場合、フルまたはプロテクトレベルのアクセス権を持つユーザはオンライン状態でジョブを保存することができます。

  • スプレッドシートのセルの編集、移動、コピー、または貼り付け。
  • ビジョンシステム固有のメニュー項目の実行。ただし、ビジョンシステムをオフラインにすることはできます。
  • 対話型グラフィックスモード (ただし、EditRegion 関数は、ビジョンシステムがオンライン時に修正可能であるため例外)。

オフラインモードについて

ビジョンシステムはオフラインの場合、画像取り込みトリガに応答することも、スプレッドシートとの間でデータを送受信することもできません。ただし、このビジョンシステムは、シリアル、ネットワーク、およびディスクリートなどの選択によって、特にオンライン状態を切り替えるような入力コマンドに対して応答することができます。


[ネットワークの設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[ネットワークの設定] ダイアログでは、TCP/IP ネットワークで通信できるようにアクティブな In-Sight ビジョンシステムを設定します。

  • [ネットワークの設定] ダイアログの表示
  • [ネットワークの設定] ダイアログの設定項目
  • DHCP による In-Sight ビジョンシステムの自動的な設定
  • DHCP サーバを使用していないネットワークでの In-Sight ビジョンシステムの手動による設定
  • 関連項目
注意:
  • ネットワーク設定を変更した後は In-Sight ビジョンシステムを再起動してください。In-Sight Explorer の [ネットワークの設定] ダイアログで新しい設定値が表示されていても、再起動するまではビジョンシステムの内部状態は更新されません。
  • In-Sight エミュレータは、Windows のネットワーク設定を使用します。この設定を、In-Sight Explorer で変更することはできません。エミュレータのネットワーク設定を変更するには、Windows のコントロールパネルでネットワーク設定を開き、必要な変更を加えます。
  • In-Sight は、IPv4 Organization Local Scope (239.192.0.0/14) から EtherNet/IP マルチキャストアドレスを自動的に割り当てます。

[ネットワークの設定] ダイアログの表示

  • [センサ] メニューで、[ネットワークの設定] をクリックします。

[ネットワークの設定] ダイアログの設定項目

  • [ホスト名]: [In-Sight ネットワーク] に表示される In-Sight ビジョンシステムの名前を定義します。ローカルシステムがネットワークに接続され、In-Sight エミュレータを動作させている PC の場合、ホスト名には、Windows オペレーティングシステムで定義されている PC 名が自動的に使用されます。

    各 In-Sight ビジョンシステムには、初めて起動したときにホスト名が自動的に設定されます。この名前は、「In-Sight」を表す「is」で始まり、それにモデル番号、アンダースコアが続き、最後はビジョンシステムの一意の MAC アドレスを表す 6 つの文字で終わります。例えば、MAC アドレス 00-d0-24-01-02-03 を持つ In-Sight 5100 ビジョンシステムのホスト名は「is5100_010203」です。また、MAC アドレス 00-d0-24-57-09-31 を持つ In-Sight 5400C ビジョンシステムのホスト名は「is5400C_570931」になります。

    ホスト名を変更するには、このフィールドに変更後の名前を入力します。

    注意:
    • ホスト名に使用できる文字は、A ～ Z (大文字および小文字)、0 ～ 9、ハイフン (-)、コロン (:)、ピリオド (.)、およびアンダースコア (_) です。
    • ホスト名は最大 63 文字です。
  • [DHCP サーバの使用]: アクティブな In-Sight ビジョンシステムの起動時に DHCP サーバによって動的にネットワークの設定が行われるようにします。
    • [IP アドレス]: ローカルネットワークの IP アドレス割り当てルールに従って、ネットワーク上の各 In-Sight ビジョンシステムに一意なアドレスが割り当てられます。
    • [サブネットマスク]: IP アドレスのどの部分がネットワークを示し、どの部分がホストを示すかを定義します。IP アドレスのネットワーク部分が、同一サブネット上のすべてのホストと同じとなり、残り部分は各ホスト固有のものとなるようにします。
    • [デフォルトゲートウェイ]: ネットワーク上に利用できるゲートウェイホストがある場合、その IP アドレスを指定します。ゲートウェイは、異なるネットワークのホスト間でデータを中継します。
    • [DNS サーバ]: ネットワーク上に、DNS 解決を提供するホストがあれば、その IP アドレスを指定します。

    • [ドメイン名]: ホストネットワークのネットワークドメインを指定します。

      注意: ドメイン名は最大 63 文字です。

    • [DHCP タイムアウト]: In-Sight ビジョンシステムが DHCP 用に設定されているときに、DHCP サーバが有効な IP アドレスで応答するのをビジョンシステムが待つ時間 (5 ～ 180 秒、デフォルト = 60) を指定します。DHCP サーバからの応答待ち時間がタイムアウトすると、ネットワーク通信は中断されます。ビジョンシステムは電源を入れ直すまでネットワークへの再接続を試みません。

      ヒント: In-Sight ビジョンシステムをネットワークに接続する予定がない場合は、最小時間の 5 秒を指定すると、ビジョンシステムの起動時間を短縮できます。このとき、ビジョンシステムは DHCP 用に設定する必要があります。

  • [Telnet]: ビジョンシステムの Telnet 設定を指定します。

    • [Telnet ポート番号]: アクティブな In-Sight ビジョンシステム (通信を待っている TCP/IP サーバ) がリモートデバイス (通信を開始する TCP/IP クライアント) からの要求を受け入れる Telnet ポートを割り当てます。有効なポート割り当ては、In-Sight 通信のために予約されているポートを除いて、1 ～ 65535 の未使用の任意の番号です。

  • [IPsec]: IPsec を使用すると、同じネットワーク上にあるビジョンシステムとほかのデバイスまたは PC 間のデータ送信が保護されます。有効にすると、このオプションの右側にある [設定] ボタンが使用できるようになります。このボタンによって [IPsec ルール] ダイアログを起動し、ビジョンシステムの IPsec ルールを設定します。

    注意: PC またはネットワークデバイスが IPsec を使用して In-Sight ビジョンシステムと通信する場合、PC またはネットワークデバイスも IPsec を使用するように設定する必要があります。ビジョンシステムとデバイスは、同じ暗号化モードとアルゴリズム、および共有鍵を共有する必要があります。IPsec を設定するステップはデバイスに応じて異なります。一部の設定は、複雑になる場合があります。IPsec を設定する手順の詳細については、それぞれのデバイスのマニュアルを参照してください。Cognex VisionView オペレータインタフェースパネルでサポートされているのは、ESP モードのみです。Microsoft Windows では、IPsec を完全にサポートしています。このため、IPsec を使用するように設定すると、ビジョンシステムと通信を行う、Windows で実行中のプロセス (In-Sight Explorer、In-Sight SDK など) とビジョンシステムの間の通信が保護されます。

  • [プロトコルサービス]: ビジョンシステムのパフォーマンスを高めるために、特定のサービスを有効または無効にします。

    • [Modbus TCP サーバを有効にする]: In-Sight ビジョンシステムを Modbus/TCP サーバとして動作するように設定するかどうかを、有効または無効にして指定します。複数の接続を同時にサポートし、またセッションのアイドルタイムアウトもサポートします。Modbus/TCP サーバとして設定すると、ビジョンシステムは、接続を許容するクライアントの動作数を維持します。新規接続が確立されると、サーバは最大許可接続数から減算し、その数がゼロになると、その後の接続要求を明示的に拒否します。現在接続中のクライアントが明示的に接続を切断するか、またはアイドルタイムアウトによって黙示的に接続が切断されたときのみ、サーバはその後の接続要求を受け入れます。

      注意:
      • [Modbus TCP サーバを有効にする] チェックボックスは、In-Sight ビジョンシステムが Modbus プロトコルをサポートしない場合、無効となります。
      • チェックボックスを有効にした場合、最大接続数の制限は、アプリケーションが実際に要求する Modbus/TCP 接続数の 2 倍に設定することを推奨します。このように設定すると、電源異常が発生したり、電源を再投入した場合に、以前の接続がタイムアウトするのを待たずに、すべての接続を再確立することが可能です。
      • [最大接続数]: ビジョンシステムがサポートする、最大同時接続可能数を指定します (1 ～ 6、デフォルト = 4)。
      • [アイドルタイムアウト]: クライアントのサーバが、最後に発行された Modbus/TCP 要求を受信してからの時間を指定します (0 ～ 3600 秒、デフォルト = 120 秒)。Modbus/TCP サーバは、500ms おきに接続セッションをすべてチェックして、アイドルタイムに達したセッションがあるかどうかを決定します。アイドル状態のセッションに対し、Modbus/TCP サーバは、ソケットを閉じるコマンドを発行し、アイドル状態のセッションに割り当てられたリソースを再要求します。
  • [iQ Sensor Solution]: In-Sight ビジョンシステムの iQ Sensor Solutionを有効または無効にします。

  • [リアルタイムイーサネットプロトコル]: In-Sight ビジョンシステムの特定の Ethernet プロトコルを有効または無効にします。

    注意: EtherNet/IP、PROFINET、SLMP スキャナ、および POWERLINK プロトコルは相互排他的であるため、これらのプロトコルを同時に有効にすることはできません。

    • [EtherNet/IP]: ビジョンシステムの EtherNet/IP サービスを有効にします。
    • [PROFINET]: ビジョンシステムの PROFINET サービスを有効にします。選択すると、このオプションの右側にある [設定] ボタンが有効になります。このボタンによって [PROFINET の設定] ダイアログを起動し、[ステーション名] を設定します。
    • [SLMP スキャナ]: ビジョンシステムの SLMP スキャナサービスを有効にします。選択すると、このオプションの右側にある [設定] ボタンが有効になります。このボタンによって [SLMP スキャナ設定] ダイアログを起動し、設定を行います。
    • [POWERLINK]: ビジョンシステムの POWERLINK プロトコルを有効にします。選択すると、このオプションの右側にある [設定] ボタンが有効になります。このボタンによって [POWERLINK の設定] ダイアログを起動し、ビジョンシステムの [ノード ID] を設定します。
    • [なし]: ビジョンシステムのリアルタイム Ethernet プロトコルを無効にします。

DHCP による In-Sight ビジョンシステムの自動的な設定

ネットワークで DHCP サーバを使用して IP アドレスを割り当てる場合は、[DHCP サーバの使用] チェックボックスを ON にしてください。アクティブな In-Sight ビジョンシステムは、起動時に DHCP サーバによって動的にネットワークの設定が行われます。必要に応じて、新しいホスト名と DHCP タイムアウトを指定することができますが、[ネットワークの設定] ダイアログのほかのフィールドはすべて無効になります。多数のビジョンシステムを使用するネットワークでは、各ビジョンシステムに手動で構成設定を入力するよりも、DHCP セットアップの方がよく使用されます。しかし、初期設定を完了した後は、ビジョンシステムの DHCP を無効にして、固定 IP アドレスを割り当てることを強く推奨します。

[DHCP サーバの使用] チェックボックスがオフの場合は、アクティブな In-Sight ビジョンシステムのネットワーク設定を手動で行う必要があります。

DHCP サーバを使用していないネットワークでの In-Sight ビジョンシステムの手動による設定

  1. [DHCP サーバの使用] チェックボックスが現在オンになっている場合は、オフにします。

注意: In-Sight ビジョンシステムのネットワーク設定が以前に手動で行われていた場合、[DHCP サーバの使用] チェックボックスをオフにすると、それらの設定内容が自動的にリストアされます。

  2. [IP アドレス] を入力します。
  3. [サブネットマスク] を入力します。
  4. 必要に応じて、[ホスト名]、[デフォルトゲートウェイ]、[DNS サーバ]、および [ドメイン名] を設定します。
  5. [OK] をクリックします。
  6. すべての変更を有効にするために、ビジョンシステムの電源を入れ直すように求められます。

関連項目

  • In-Sight ネットワーク
  • [PROFINET の設定] ダイアログ
  • [SLMP スキャナ設定] ダイアログ
  • ネットワークのトラブルシューティング


[日付/時刻の設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[日付/時刻の設定] ダイアログは、アクティブな In-Sight ビジョンシステムで、日付と時刻を設定するために使用されます。また、IEEE 1588 (バージョン 2) 規格で定義されている CIP-Sync および PTP (Precision Time Protocol) を使用して、非決定性 EtherNet/IP 経由で In-Sight ビジョンシステムと外部デバイス (PLC など) の間のイベントを同期化するようにビジョンシステムを設定するために使用されます。ローカルタイムゾーンを設定したり、サマータイムの調整を自動的に行わせたりすることもできます。さらに、SNTP (Simple Network Time Protocol) サーバに接続して、ビジョンシステムの内部時計を自動的に同期化することができます。

注意:
  • [日付/時刻の設定] ダイアログで設定した後、アクティブな In-Sight ビジョンシステムの電源を入れ直す必要があります。
  • [時刻同期] を選択すると、自動的に [SNTP サービス] が無効にされます。また、[SNTP サービス] を有効にすると、自動的に [時刻同期] が無効にされます。1 つのビジョンシステムでは 1 つのサービスのみを有効にすることができます。
  • [時刻同期] (CIP-Sync) は、128MB の不揮発性フラッシュメモリ付き In-Sight 5000 シリーズビジョンシステムで、バージョン 4.5.0 以降のファームウェアが実行されている場合に使用できます。In-Sight 5605 ビジョンシステム、ハードウェアタイプ 821-0032-1R は例外で、CIP-Sync をサポートしていません。In-Sight 5605 ビジョンシステム、ハードウェアタイプ 821-0032-2R は CIP-Sync をサポートしています。
  • [日付/時刻の設定] ダイアログは、エミュレータでは使用できません。
  • ファームウェアのリビジョンが 2.40 よりも古い場合、[日付/時刻の設定] ダイアログは使用できません。
  • In-Sight ビジョンシステムが SNTP を使用するように設定されており、[ディスクリート出力ライン] が [Job Complete] に設定され、ビジョンシステムがオンラインの場合は、SNTP 同期が発生すると [Job Complete] 信号が送信されます。

[日付/時刻の設定] ダイアログを表示するには

  • [センサ] メニューで、[日付/時刻の設定] をクリックします。

[日付/時刻の設定] ダイアログの設定項目

  • [日付]: アクティブな In-Sight センサの現在の日付を表示します。アクティブな In-Sight センサの日付を手動で調整できます。
  • [時間]:アクティブな In-Sight センサの現在の時刻を表示します。アクティブな In-Sight センサの時刻を手動で調整できます。

注意: SNTP サーバに接続できない状態で In-Sight システムの電源を入れ直すと、1970 年 1 月 1 日 0 時 00 分に初期化されます。

  • [タイムゾーン]:すべてのタイムゾーンのリストです。
  • [自動的に夏時間の調整を行う]:サマータイムに合わせて調整します。
  • [時刻同期を使用する]: IEEE 1588 (バージョン 2) 規格で定義されている CIP-Sync および PTP (Precision Time Protocol) のサポートを有効にして、非決定性 EtherNet 経由で In-Sight ビジョンシステムと外部デバイス (PLC など) の間のイベントを同期化します。PTP の IEEE 1588 仕様に従うことによって、デバイスは、非決定性ネットワーク上でローカルクロックをマスタクロックに同期化することができます。[時刻同期] を有効にした後、ビジョンシステムの電源を入れ直して PTP の使用を開始し、ビジョンシステムの日付と時刻の設定をマスタと同期化する必要があります。さらに、ビジョンシステムを有効にして電源を入れ直した後で、AcquireImage 関数の [トリガ] パラメータを [タイムスタンプ] に設定すると、EtherNet/IP 経由で送信されたタイムスタンプを介してビジョンシステムをトリガすることができます。

注意: [時刻同期] を有効にするには、128MB の不揮発性フラッシュメモリが搭載されており、ファームウェアバージョン 4.5.0 以上を実行している In-Sight 5000 シリーズビジョンシステムに接続する必要があります。

  • [同期の詳細設定]: このボタンをクリックすると [Time Synchronization Details] ダイアログが起動し、PTP スタックに関する読み取り専用の詳細な情報が表示されます。
  • [SNTP サービスを使用する]: このチェックボックスをオンにすると、アクティブな In-Sight センサは自動的に SNTP サーバとの日時の同期化を試みます。このチェックボックスがオフの場合、または SNTP サーバを使用できない場合は、[日付/時刻の設定] ダイアログで手動で日時を設定できます。

注意: In-Sight センサに固定 IP アドレスが割り当てられている場合、デフォルトゲートウェイが適切に設定されていないと、同期化ができないことがあります。

  • [同期させる]: SNTP サーバと日時を同期化させるには、このボタンをクリックします。手動で設定された日時の値は上書きされます。
  • [更新間隔]:SNTP サーバと日時を同期化する間隔を分単位で指定します。デフォルトの更新間隔は 120 分です。値を小さくすると、より頻繁に同期化を実行します。指定可能な最小更新間隔は、15 分に 1 回です。値を大きくすると、同期化の頻度が低下します。指定可能な最大更新間隔は、1,440 分に 1 回、つまり 1 日 1 回です。

注意: In-Sight センサでは、12 時間に約 15 秒の割合で時間が遅れます。

  • [DHCP より SNTP サーバを取得]: このチェックボックスをオンにすると、アクティブな In-Sight センサは、DHCP サーバによって提供される SNTP サーバへの接続を試みます。SNTP サーバが DHCP サーバによって提供されない場合や DHCP サーバに接続できない場合は、自動的に主サーバやセカンダリサーバへの接続を試みます。

SNTP サーバが DHCP サーバによって指定されていない場合に、[主サーバ] や [セカンダリ] のサーバも指定されていないと、In-Sight センサはネットワーク上の任意の SNTP サーバへの接続を試みます。このチェックボックスをオフにすると、主サーバとセカンダリの SNTP サーバだけが使用されます。

  • [主サーバ]: [DHCP より SNTP サーバを取得] チェックボックスがオフの場合や DHCP サーバが SNTP サーバを検出できない場合に使用する、プライマリ SNTP サーバの IP アドレスまたはホスト名を指定します。主サーバの SNTP サーバを使用できない場合は、セカンダリサーバが使用されます。
  • [セカンダリ]:[DHCP より SNTP サーバを取得] チェックボックスがオフで、主サーバの SNTP サーバも使用できない場合に使用する、セカンダリ SNTP サーバの IP アドレスまたはホスト名を指定します。
  • [現在使用中のサーバ]:現在使用中の SNTP サーバがある場合は、その SNTP サーバの IP アドレスを表示します。そうでない場合は、0.0.0.0 と表示します。


[In-Sight のホストテーブル] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

In-Sight のホストテーブルは、異なるネットワーク(サブネット)上の In-Sight センサ間の通信を可能にします。ホストテーブルのエントリは、指定された IP アドレスのホストのネットワーク設定を実際には変更しません。これらのエントリは、アクティブ In-Sight センサに見せかけのセンサを追加するために使用されます。

警告: DHCP を使用して設定されるセンサについては、特定の IP アドレスを持つことが保証されません。ホストテーブルがセンサと通信するためには、固定 IP アドレスが必要なので、異なるサブネット上のすべてのセンサを固定 IP アドレスで設定することを強く推奨します。

注意: ホストテーブルは、In-Sight エミュレータから FTP 経由で hosts.net ファイルを目的のシステムにアップロードすることにより、ほかの In-Sight センサと共有することができます。アップロードするファイルは「xxx.xxx.xxx.xxx ホスト名」という行を含んでいる必要があります。ここで、xxx.xxx.xxx.xxx は、有効な IP アドレスを示します。空白行、不完全な行、# で始まる行は無視されます。また、ホスト名の後に続く文字も無視されます。ファイルは FTP 経由でアップロードおよびダウンロードすることができますが、アップロードされたファイルの内容がそのままダウンロード時に維持されているとは限りません。

[ホストテーブル] ダイアログを表示するには

  • [センサ] メニューから [ホストテーブル] を選択します。

[ホストテーブル] ダイアログの設定項目

  • [追加]: ホストテーブルに新しいエントリを作成します。[追加] をクリックすると、 Closed [ホストの追加] ダイアログが表示され、新しいホストのホスト名と IP アドレスを入力することができます。

注意:

  • ホスト名として有効な文字は、A～Z(大文字および小文字)、0～9、ハイフン(-)、コロン(: )、カンマ(,)、およびアンダースコア(_)です。
  • ホスト名には最大で63文字を使用することができます。
  • [編集]: [ホストの編集] ダイアログが表示され、選択したホストのホスト名と IP アドレスを変更することができます。リストからエントリを選択して、[編集] をクリックします。 Closed [ホストの編集] ダイアログが表示され、選択したホストのホスト名と IP アドレスを変更することができます。

  • [削除]: ホストテーブルからホストを削除します。削除するホストを選択して、[削除] をクリックします。

ヒント: このチェックボックスをオンにすると、(1) ホストテーブル、(2) ネットワークブラウザ、(3) DNS の順に In-Sight ホスト名が検索されます。

  • [ホストテーブルを DNS より優先する]: このチェックボックスをオンにすると、(1) ホストテーブル、(2) ネットワークブラウザ、(3) DNS の順に In-Sight ホスト名が検索されます。オフにすると、ホスト名は、(1) ネットワークブラウザ、(2) ホストテーブル、(3) DNS の順に検索されます。

ホストのパラメータ

  • [ホスト名]: ネットワークに接続された In-Sight センサの名前を、指定した IP アドレスに対応付けます。ホスト名はアクティブなIn-Sightセンサによってのみアクセス可能なホストテーブル内で指定されます。
  • [IP アドレス]: ネットワークに接続された In-Sight センサの IP アドレスを、指定したホスト名に対応付けます。


[FTP の設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[FTP の設定] ダイアログでは、FTP (File Transfer Protocol) を使用するほかのネットワークデバイスとの間で、ジョブ、画像、および設定を共有できるように In-Sight センサを設定します。

In-Sight センサ間ですべての FTP 接続が行われるような In-Sight 専用のローカルネットワークでは、ユーザは通常、デフォルトの設定を変える必要はありません。ただし、In-Sight センサとほかのネットワークデバイスとの間や、別のネットワークの In-Sight センサとの間で FTP 接続が必要になる場合は、デフォルトの FTP 設定を変更しなければならないことがあります。

[FTP の設定] ダイアログを表示するには

  • [センサ] メニューから [FTP の設定] を選択します。

[FTP の設定] ダイアログの設定項目

  • [アイドルタイムアウト]: 別のホストから In-Sight センサに接続したまま送受信のない状態が続いた場合に、接続がタイムアウトになる (切断される) までの時間を秒単位で指定します。(デフォルト 120)
  • [リードタイムアウト]: アクティブな In-Sight センサが、リモート FTP サーバに接続した後にデータを待つ時間を秒単位で指定します。この値の時間が過ぎると、応答のない装置との接続から復旧します (デフォルト 120)。
  • [接続リトライ]: In-Sight センサが (最初の接続の試みに失敗した場合に) リモート FTP サーバへの再接続を試みる回数。(デフォルト 1)
  • [ローカルポート]: アクティブな In-Sight センサが FTP 接続を要求する信号をリスンするポート。(デフォルト 21)

ローカルポートの例: is5100_010203 という名前の In-Sight センサの [ローカルポート] が 442 に設定されているとします。is5100_010203 は FTP サーバとして動作し、442 番ポートでリモートセンサからの接続要求をリスンしています。is5100_010203 に接続する In-Sight センサまたはエミュレータはすべて、[リモートポート] を 442 に設定する必要があります。In-Sight Explorer で is5100_010203 上のファイルを表示するには、Explorer FTP ポートを 442 に設定する必要があります。

警告: [ローカルポート] が Explorer FTP ポートと同じ値に設定されていないと、In-Sight Explorer は、バックアップ、リストア、ファームウェアアップデートなどのファイル操作を In-Sight センサに対して実行したり、[In-Sight のファイル] ペインにファイルを表示したりすることができない場合があります。

  • [リモートポート]: アクティブな In-Sight センサがほかの In-Sight システムや FTP サーバへの接続を試みるポート (デフォルト 21)。

リモートポートの例: FLOOR1 という名前の In-Sight センサが FLOOR2 という名前のリモート In-Sight センサからジョブファイルをロードする必要があるとします。FLOOR2 の [ローカルポート] は 2360 に設定されています。言い換えると、FLOOR2 は 2360 番ポートで FTP サーバを実行しています。この場合、FLOOR1 から FLOOR2 に接続してジョブファイルをロードするには、FLOOR1 の [リモートポート] を 2360 に設定する必要があります。

  • [パッシブモード]: このチェックボックスをオンにすると、パッシブモードで FTP クライアント転送を行います。外部からの接続要求をブロックするファイアウォール経由で In-Sight センサが FTP サーバにアクセスする場合には、この転送方法が必要になります (デフォルトオフ)。


[外部照明の設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[外部照明の設定] ダイアログでは、In-Sight 7000 シリーズビジョンシステムに接続されている外部ストロボデバイスまたは連続照明デバイスのタイプを指定します。

注意:　内部 LED リングライトを使用する In-Sight 7000 シリーズビジョンシステムの場合、内部 LED リングライトの設定には、照明制御設定を使用してください。

[外部照明の設定] ダイアログ ダイアログを表示するには

  • [センサ] メニューで、[外部照明の設定] をクリックします。

[外部照明の設定] ダイアログ ダイアログの設定項目

  • [出力モード]:　ビジョンシステムに接続されているストロボデバイスまたは連続照明デバイスのタイプを指定します。
    • [無効]:　ビジョンシステムが照明デバイスに接続されていません。
    • [PNP (ソース)]:　ビジョンシステムが PNP (現在のソース) 照明デバイスに接続されています。
    • [NPN (シンク)]:　ビジョンシステムが NPN (現在のシンク) 照明デバイスに接続されています。


[ユーザアクセス設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[ユーザアクセス設定] ダイアログでは、In-Sight ビジョンシステムのセキュリティモードを設定します。

  • [ユーザアクセス設定] ダイアログの設定項目と使用方法
  • 関連項目

[ユーザアクセス設定] ダイアログの設定項目と使用方法

[ユーザアクセス設定] ダイアログを使用して、In-Sight ビジョンシステムおよびエミュレータへのアクセスを許可されたユーザのアクセスレベルおよび FTP 読み取り/書き込み権限を管理します。[ユーザアクセス設定] によって、どのユーザが [ログオン/ログオフ] ダイアログから特定の In-Sight ビジョンシステムにログオンできるかや、ユーザがアクティブジョブに加えることができる変更の種類などが決まります。各 In-Sight ビジョンシステムは、ネットワーク上のほかのビジョンシステムから分離された独自のユーザリストを持ちます。したがって、あるビジョンシステムにアクセスする必要があるユーザは、既にそのビジョンシステムのユーザリストに登録されているユーザ名とパスワードを確認する必要があります。

  • [ユーザアクセス設定] ダイアログの表示
  • [ユーザアクセス設定] ダイアログの設定項目
  • ユーザモードユーザの新規作成
  • 既存のユーザモードユーザの設定の変更
  • ユーザモードユーザの削除
注意:
  • すべての In-Sight ビジョンシステムには、あらかじめ admin、operator、monitor の 3 つのユーザ名が設定されています。これらのユーザには、それぞれ、フルアクセス、プロテクト、ロックのアクセスレベルが設定されています。
  • 1 つの In-Sight ビジョンシステムに登録できるユーザの数は最大 32 です。

[ユーザアクセス設定] ダイアログの表示

  • [センサ] メニューで、[ユーザアクセス設定] をクリックします。

[ユーザアクセス設定] ダイアログの設定項目

  • [名前]:　ビジョンシステムへのログオンに使用されるユーザ名を指定します。
  • [アクセス]: ユーザのアクセスレベルを指定します。ユーザのアクセス許可を、フルアクセス、プロテクト、ロックという 3 つのレベルで詳細に設定することができます。
  • [View]: ユーザがログオンに成功した後、スプレッドシートビューにアクセスできるようにするか、カスタムビューのみに制限するかを指定します。
  • [FTP 読]: FTP 読み取り権限を指定します。この権限によって、ユーザがビジョンシステムにジョブをロードできるかどうかを制御します。[はい] の場合、ユーザはジョブをロードできます。[いいえ] の場合、ユーザはジョブをロードできません。
  • [FTP 書]: FTP 書き込み権限を指定します。この権限によって、ユーザがビジョンシステムにジョブを保存できるかどうかを制御します。[はい] の場合、ユーザはジョブを保存できます。[いいえ] の場合、ユーザはジョブを保存できません。
  • [オンライン/オフライン]: ユーザがビジョンシステムのオンライン/オフラインステータスを変更できるかどうかを指定します。[有効] の場合、ユーザはビジョンシステムのオンライン/オフライン状態を切り替えることができます。[無効] の場合、ユーザはビジョンシステムのオンライン/オフライン状態を切り替えることができません。
  • [オンライン時にジョブ保存]: ビジョンシステムがオンラインのときに、ユーザがジョブを保存できるかどうかを指定します。[有効] の場合、ユーザはオンラインのときにジョブを保存できます。[無効] の場合、ユーザはオンラインのときはジョブを保存できません。

ユーザモードユーザの新規作成

  1. [追加] をクリックします。

  2. [ユーザ名] フィールドに英数字文字列を入力します。
  3. 新しいユーザのパスワードを入力します。
  4. [パスワードの確認] フィールドにパスワードを再度入力します。

注意:　ユーザ名とパスワードの文字列は、15 文字を超える長さにすることはできません (ユーザ名は 1 ～ 15 文字、パスワードは 0 ～ 15 文字にする必要があります)。文字、数字、「_」、および「-」を使用できます。

  5. [アクセス] ドロップダウンリストをクリックして、新しいユーザのアクセスレベルを選択します。

アクセスレベルは、設定変更が誤ってまたは無断で行われないように、現在のユーザに許可されるインタフェースの対話レベルを制御します。選択したアクセスレベルは、指定したユーザ名とパスワードで In-Sight Explorer にログオンすると有効になります。

アクセスレベルには次の 3 種類があります。

  • [フルアクセス]:　ユーザは In-Sight センサに完全に制限なくアクセスできます。すべての EasyBuilder ジョブのロード、変更、保存ができ、すべてのメニュー項目を使用できます。デフォルトの admin ユーザアカウントのアクセスレベルは [フルアクセス] です。
  • [プロテクト]:　センサに対するユーザのアクセスは制限されます。プロテクトモードでは、ライブビデオモードへのアクセス、センサのオンライン/オフラインステータスの切り替え (ユーザの オンライン/オフライン切り替え権限によって許される場合)、ジョブを開く、またはジョブの保存 (ユーザの FTP 読み取りおよび FTP 書き込み権限によって許される場合)、[オプション] ダイアログの使用によるインタフェースの外観のカスタマイズが可能です。EasyBuilder ビューのプロテクトモードでは、ツールパラメータの編集はできますが、ツールの追加や削除はできません。スプレッドシートビューのプロテクトモードでは、必ず、スプレッドシートのカスタムビューが表示されます。プロテクトモードのユーザは、カスタムビューに表示されるオペレータ I/F 関数のすべての値を編集できますが、関数そのものに変更を加えることはできません。デフォルトの operator ユーザアカウントのアクセスレベルは [プロテクト] です。
  • [ロック]:　このモードでは、アクセスは最も制限されます。モニタできるのは、現在の In-Sight センサの動作のみです。デフォルトの monitor ユーザアカウントのアクセスレベルは [ロック] です。
  6. 必要に応じて、[オンライン/オフライン切替可] チェックボックスをオフにして、プロテクトレベルのユーザがセンサのオンライン/オフライン状態を切り替えることができないように制限することができます。このチェックボックスは、選択したアクセスレベルがフルアクセスまたはロックのときには、常にグレーアウトされます。

  7. 必要に応じて、[オンラインでもジョブを保存] チェックボックスをオンにし、フルまたはプロテクトアクセス権限が与えられたユーザがオンライン時にジョブを保存できるようにします。このチェックボックスは、選択したアクセスレベルがロックのときにはグレーアウトされます。

    注意:
    • このチェックボックスをオンにすると、プロテクトアクセス権限を持つユーザは、FTP 書き込み権限がない場合でも、ジョブを保存することができます。

    • [オンラインでもジョブを保存] チェックボックスがオンのとき、最大限のトリガレートでジョブが実行された場合、ジョブの保存中にトリガが失敗することがあります。
  8. ユーザの FTP、読み取り、および書き込み権限を指定します。FTP 読み取り権限は In-Sight センサのジョブまたは画像ファイルを開く操作に適用され、FTP 書き込み権限は In-Sight センサにジョブまたは画像を保存する操作に適用されます。さらに、これらの権限は、ユーザがネットワーク上のリモート FTP クライアントから、アクティブな In-Sight システムにログオンを試みる際にも有効です。
  9. [OK] をクリックします。

既存のユーザモードユーザの設定の変更

  1. リストのユーザをハイライトします。
  2. [編集] をクリックします。

  3. 必要に応じて、ユーザの設定を変更します。ユーザオプションの詳細については、新しいユーザの作成について説明している、前の節を参照してください。
注意:
  • admin ユーザのパスワードを変更した場合は、センサからログオフして、新しいパスワードでログオンし直す必要があります。このようにしないと、エラー (エラー 6029 など) が発生することがあります。
  • admin のアクセスレベル、[オンライン/オフライン切替可] 権限、FTP 権限、およびユーザ名は変更できません。
  • [ログオン時にカスタムビューを表示] チェックボックスの影響を受けるのは、スプレッドシートビューのみです。EasyBuilder はカスタムビューをサポートしていません。

ユーザモードユーザの削除

  1. リストのユーザをハイライトします。
  2. [削除] をクリックします。

ヒント:　複数のユーザを削除するには、Ctrl キーを押しながらユーザ名を選択します。

  3. 削除することを確認します。

注意:　admin ユーザは削除できません。

関連項目

  • 起動時にカスタムビューをロードする方法


[表示画像の設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[表示画像の設定] ダイアログでは、ライブおよびオンライン画像の解像度とフレームレートを設定します。表示画像の設定は、ネイティブモードコマンド SetSystemConfig を使用して行うこともできます。

注意: 表示画像の設定は、リモート接続のみに適用されます。

[表示画像の設定] ダイアログを表示するには

  • [センサ] メニューから [表示画像の設定] を選択します。

[表示画像の設定] ダイアログの設定項目

[ライブ画像] (ライブビデオモード):

  • [解像度]: ライブ画像の解像度を、フル (1/1)、ハーフ (1/2)、クォーター (1/4) の中から選択します。
  • [ビット深度]: カラー画像を表示するビット深度を指定します ([16 ビット] または [24 ビット]。デフォルト = [16 ビット])。

注意: このオプションは、カラー In-Sight ビジョンシステムでのみ使用可能になります。

  • [最大レートの制限]: このチェックボックスをオンにすると、[ライブ画像] の [最大レート] テキストボックスが有効になります。
  • [最大レート]: センサが 1 秒間に送信できる最大画像数を指定します (0.016 ～ 100)。この機能を使用すると、画像の送信数を制限することによってネットワークトラフィックを軽減することができます。

[オンライン] (オンラインモード):

  • [解像度]: オンライン画像の解像度を、最適化、フル (1/1)、ハーフ (1/2)、クォーター (1/4) の中から選択します。最適化を選ぶと、[カメラ] または [連続] モードを選択しているときはハーフ解像度となり、[手動] モードを選択しているときはフル解像度となります。
  • [ビット深度]: カラー画像を表示するビット深度を指定します ([16 ビット] または [24 ビット]。デフォルト = [16 ビット])。

注意: このオプションは、カラー In-Sight ビジョンシステムでのみ使用可能になります。

  • [最大レートを制限する]: このチェックボックスをオンにすると、[オンライン] の [最大レート] テキストボックスが有効になります。
  • [最大レート]: センサが 1 秒間に送信できる最大画像数を指定します (0.016 ～ 100)。この機能を使用すると、画像の送信数を制限することによってネットワークトラフィックを軽減することができます。


[画像バッファ] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス
  • [画像バッファ] ダイアログ の概要
  • [画像バッファ] ダイアログ の表示
  • [画像バッファ] ダイアログ の設定項目
  • 関連項目

[画像バッファ] ダイアログ の概要

[画像バッファ] ダイアログでは、起動時に In-Sight ビジョンシステムに割り当てる画像バッファの数を設定します。各ビジョンシステムには、[バッファモード] パラメータで [オーバーラップ] が選択されているとき、画像取り込みおよびスプレッドシートや関数の実行用に利用可能な画像バッファのデフォルト数があります。利用可能な最初のバッファは、画像取り込みに使用されます。取り込みが完了すると、ほかのバッファがロックされ、次の取り込みに使用されます。バッファされた画像はスプレッドシートに送信され、ジョブが実行されます。バッファは、ジョブが実行されるまでロックされたままです。一部の関数 (例: WriteImageFTP、WriteSMTP) では、ジョブが実行された後でもバッファはロックされたままですが、関数のバッファがロックされたままでも、スプレッドシートはほかのバッファされた画像を受信することができます。ジョブが実行中の場合、または (In-Sight Explorer または VisionView アプリケーションから) 表示するためのキューに画像が入っている場合、バッファされた画像はキューに入ります。

注意:
  • [画像バッファ] ダイアログでの画像バッファ数の設定は、ファームウェアバージョン 4.6.0 以降が実行されているビジョンシステムでのみサポートされます。ファームウェアバージョン 4.5.0 以前が実行されているビジョンシステムの場合、ネイティブモードの拡張コマンドの SetSystemConfig() を使用して、画像バッファの数を設定する必要があります。
  • カメラトリガモード中は、トリガを受信しても画像取り込みに使用可能なバッファがない場合、画像取り込みは行われません。また、ディスクリート出力ラインが　[エラー: 画像取り込みミス] を使用するように設定されている場合、バッファが使用可能になるまで、画像取り込みごとにこの信号が出されます。
  • ビジョンシステムが、利用可能な画像バッファの最大数を使用するように設定されていて、ビジョンシステムがオンラインのときにセンサフィルムストリップを使用するようにも設定されている場合、フィルムストリップをビジョンシステムに保存するために利用可能なメモリが十分にないことがあります。この場合は、画像バッファの数を最大値より少なくしてください。

[画像バッファ] ダイアログ の表示

  • [センサ] メニューで、[画像バッファ] をクリックします。

[画像バッファ] ダイアログ の設定項目

スライダコントロールを使用して、起動時にビジョンシステムに割り当てる画像バッファの数を設定することができます。画像バッファのデフォルト数と最大数は、ビジョンシステムの解像度と RAM サイズによって異なります。変更を有効にするには、ビジョンシステムを再起動する必要があります。

注意:
  • ビジョンシステムの RAM サイズを調べるには、[In-Sight のネットワーク] ペイン内でビジョンシステムを右クリックして、[プロパティ] をクリックします。[プロパティ] ダイアログで、[メモリ] タブを選択します。
  • 画像バッファの数を増やすと、ジョブのロードや画像の取り込みなど、そのほかのタスクで使用できる RAM の量が減り、パフォーマンスが低下する場合があります。
  • [マルチビュー接続] ダイアログの [ビュー接続数] が 2 以上に設定されている場合、追加の画像バッファが自動的に In-Sight ビジョンシステムに割り当てられます。例えば、[ビュー接続数] が 2 に設定され、[画像バッファ] が 3 に設定されている場合、5 つの画像バッファがビジョンシステムに割り当てられます。画像バッファの合計数がビジョンシステムで利用可能な画像バッファの最大数を超える場合は、画像バッファの最大数がビジョンシステムに割り当てられます。

In-Sight モデル | 解像度 (ピクセル) | 画像バッファのデフォルト数 | 画像バッファの最大数
5100 5110 5400 5400S 5410 5410S (256MB RAM) | 640 × 480 | 12 | 25
5100C 5400C 5400CS (256MB RAM) | 640 × 480 | 6 | 25
5401 5411 (256MB RAM) | 1024 × 768 | 12 | 25
5403 5403S 5413 (256MB RAM) | 1600 × 1200 | 12 | 25
5600 5610 (128MB RAM) | 640 × 480 | 6 | 25
5600 5610 (256MB RAM) | 640 × 480 | 12 | 25
5603 5613 (128MB RAM) | 1600 × 1200 | 3 | 6
5603 5613 (256MB RAM) | 1600 × 1200 | 12 | 25
ラインスキャン 5604 5614 (128MB RAM) | 1024 × 2048 | 6 | 6
 | 1024 × 8192 | 5 | 6
ラインスキャン 5604 5614 (256MB RAM) | 1024 × 2048 | 6 | 25
 | 1024 × 8192 | 6 | 16
5605 5615 (256MB RAM) | 2448 × 2048 | 6 | 16
In-Sight Micro 1020 1050 1100 1110 1400 1410 (128MB RAM) | 640 × 480 | 6 | 25
In-Sight Micro 1020 1050 1100 1110 1400 1410 (256MB RAM) | 640 × 480 | 12 | 25
In-Sight Micro 1100C 1400C (128MB RAM) | 640 × 480 | 3 | 6
In-Sight Micro 1100C 1400C (256MB RAM) | 640 × 480 | 6 | 25
In-Sight Micro 1402 1412 (256MB RAM) | 1280 × 1024 | 12 | 25
In-Sight Micro 1403 1413 (128MB RAM) | 1600 × 1200 | 3 | 6
In-Sight Micro 1403 1413 (256MB RAM) | 1600 × 1200 | 12 | 25
In-Sight Micro 1403C (128MB RAM) | 1600 × 1200 | 3 | 6
In-Sight Micro 1403C (256MB RAM) | 1600 × 1200 | 6 | 16
In-Sight 7010 7020 7050 7200 7210 7230 7400 7410 7430 (256MB RAM) | 800 × 600 | 12 | 25
7010C 7200C 7400C (256MB RAM) | 800 × 600 | 6 | 25
7402 7412 7432 (256MB RAM) | 1280 × 1024 | 12 | 25
7402C (256MB RAM) | 1280 × 1024 | 6 | 25

関連項目

AcquireImage 関数

[ラインスキャンの設定] ダイアログ

[ディスクリート出力設定] ダイアログ


ジョブサイズ制限

センサメニュー

In-Sight Explorer GUI リファレンス

[ジョブサイズ制限] ダイアログを使用して、EasyBuilder 開発環境で使用する特定の In-Sight ビジョンシステムが利用する、ジョブサイズのメモリ割り当てを設定することができます。

注意:　ジョブサイズは、ジョブが開発された開発環境によって異なります。EasyBuilder 開発環境で開発されたジョブの場合、3 つの列で使用可能で残されている行の数として領域が計算されます。スプレッドシート開発環境で開発されたジョブの場合、割り当てられたジョブ領域内のまだ使用可能な未使用のセルの数に基づいて領域が計算され、[アクティブセル制限] ダイアログを使用してセルの数を設定します。

ジョブサイズ制限 ダイアログを表示するには

[センサ] メニューで [ジョブサイズ制限] を選択します。

注意:

[ジョブサイズ制限] メニューオプションは、以下の場合に無効となります。

  • In-Sight ビジョンシステムがオンラインの場合、または画像を再生している場合。
  • In-Sight ビジョンシステムがライブビデオになっている場合。
  • [位置決め] または [検査] アプリケーションステップを使用中の場合。
  • ユーザに十分な管理権限がない場合。
  • In-Sight ビジョンシステムが、ジョブサイズの調整をサポートしていない場合。

ジョブにツールを追加しているときに、ジョブメモリについてのエラーメッセージ (「ジョブにこのツールを実行するための十分なメモリがありません。」) が表示された場合に、[ジョブサイズの調整] ボタンを押して、このダイアログにアクセスすることも可能です。

ジョブサイズ制限 ダイアログの設定項目

スライダコントロールを使用して、In-Sight ビジョンシステムのメモリ割り当てを設定することができます。スライダを調整して、ジョブのメモリサイズの割り当てを設定します。In-Sight ビジョンシステムのジョブサイズ制限を調整するには、ビジョンシステムを再起動する必要があります。再起動を行うと、すべてのジョブと設定ファイルが不揮発性フラッシュメモリから消去されます。続行する前に、ジョブを保存するかバックアップしてください。

注意:
  • ジョブサイズ制限の更新中は、ビジョンシステムの電源を入れ直さないでください。
  • 最小パーセンテージおよび最大パーセンテージは、In-Sight ビジョンシステムのタイプによって異なります。


ライセンス

In-Sight Explorer GUI リファレンス

パスワード保護は、ジョブファイル内の個々のセル、またはセルの範囲に適用できます。セルがパスワードで保護されている場合、セルの数式は非表示になり、編集できません。数式バーでは、セルの値や関数が *** のように表示されます。In-Sight ライセンスジェネレータは、単一、または複数のビジョンシステムで使用されるライセンスを生成するために使用します。生成されたライセンスは、[ライセンス] ダイアログを使用して、ビジョンシステムに追加できます。ビジョンシステムにライセンスを追加すると、ジョブファイル内にあるパスワードで保護されたセルが実行され、結果が表示されますが、セルの数式は非表示のままで、編集できません。

セルにパスワード保護を追加する

単一のビジョンシステムにライセンスを追加する

複数のビジョンシステムにサイトライセンスを追加する

パスワード保護されたセルに一時的にアクセスする

セルのパスワード保護を解除する

ビジョンシステムからライセンスを削除する

注意:

  • パスワード保護されたセルを含むジョブが、適切なライセンスがないビジョンシステムにロードされると、セルには #ERR と表示されます。#ERR と表示されている Closed セルの上にマウスを重ねるか、GetErrorString 関数を使用すると、#ERR と表示されているセルに関する診断情報が表示されます。対応するライセンスがビジョンシステムに存在しない場合、「このセルを実行するにはライセンスが必要です。」というエラーメッセージが表示されます。
  • [ライセンス] ダイアログに適切なパスワードを入力すると、パスワード保護されたセルを編集するための一時的なアクセス権が得られます。
  • 1 つのジョブファイルで複数のパスワードを使用して、さまざまなセルやセル範囲を保護することができます。ジョブファイルに含まれるパスワードそれぞれについて、対応するライセンスを作成する必要があります。そのライセンスで保護されているセルのみが実行されます。
  • ライセンスの操作を実行するには、ビジョンシステムに対する管理者権限が必要です。
  • 保護されたセルをエミュレータで実行する場合、ライセンスは不要です。

セルにパスワード保護を追加する

  1. EasyBuilder ビュー、またはスプレッドシートビューを使用して、ジョブを作成します。

警告: EasyBuilder 環境でジョブを作成および開発すると、EasyBuilder スニペットを使用して、EasyBuilder 固有のスプレッドシートが自動的に作成およびプログラミングされます。このように自動的に生成された EasyBuilder スニペットを含むセルは保護しないでください。保護すると、EasyBuilder ジョブに干渉することがあります。

  2. スプレッドシートビューで、保護するセルをハイライトします。

注意: 空白のセルは保護されません。保護されたセルを削除すると、空白の未保護セルになります。

  3. [フォーマット] メニューで、[セル] をクリックして [セルのフォーマット] ダイアログを開きます。
  4. [保護] タブをクリックします。

  5. [パスワード] フィールドにパスワードを入力します。
  6. [パスワードの再確認] フィールドにパスワードを再度入力します。
  7. [OK] ボタンをクリックします。この結果、セルの数式が非表示になり、編集できなくなります。数式バーでは、セルの値や関数が *** のように表示されます。ジョブファイルは、ジョブを実行する任意のビジョンシステムに配布できます。その後、次のセクションで説明するようにライセンスを追加し、パスワードで保護されたセルの実行を有効にできます。
  8. ジョブファイルを保存します。

単一のビジョンシステムにライセンスを追加する

  1. Windows の [スタート] メニューを開き、[すべてのプログラム] → [Cognex] → [In-Sight] → [In-Sight x.x.x] → [In-Sight ライセンスジェネレータ] をクリックして、In-Sight ライセンスジェネレータを開きます。
  2. [Password] フィールドに、ジョブに含まれるセルをパスワード保護するために使用したパスワードを入力します。
  3. [MAC ID] フィールドにビジョンシステムの MAC アドレスを入力します。
  4. [Generate] ボタンをクリックします。

  5. [Copy to Clipboard] ボタンをクリックして、ライセンスをコピーします。
  6. In-Sight Explorer からビジョンシステムに接続します。
  7. [センサ] メニューで、[ライセンス] をクリックして [ライセンス] ダイアログを開きます。
  8. [新規ライセンスの入力] フィールドを右クリックし、[貼り付け] を選択して、ライセンスをフィールドに貼り付けます。ライセンスが、接続しているビジョンシステムの MAC アドレスを使用して生成されていない場合は、警告が表示されます。

注意: EasyBuilder の [ライセンス] ダイアログには、[テンポラリパスワードの入力] フィールドはありません。

  9. [追加] ボタンをクリックします。
  10. [閉じる] ボタンをクリックします。これで、セルが実行され、結果が表示されますが、セルの数式は非表示のままで編集できません。

複数のビジョンシステムにサイトライセンスを追加する

  1. Windows の [スタート] メニューを開き、[すべてのプログラム] → [Cognex] → [In-Sight] → [In-Sight x.x.x] → [In-Sight ライセンスジェネレータ] をクリックして、In-Sight ライセンスジェネレータを開きます。
  2. [Password] フィールドに、ジョブに含まれるセルをパスワード保護するために使用したパスワードを入力します。

注意: 複数のビジョンシステムで使用されるライセンスを作成する場合、MAC ID を入力する必要はありません。

  3. [Site License] チェックボックスをオンにします。

  4. [Generate] ボタンをクリックします。

  5. [Copy to Clipboard] ボタンをクリックして、ライセンスをコピーします。
  6. In-Sight Explorer からビジョンシステムに接続します。
  7. [センサ] メニューで、[ライセンス] をクリックして [ライセンス] ダイアログを開きます。
  8. [新規ライセンスの入力] フィールドを右クリックし、[貼り付け] を選択して、ライセンスをフィールドに貼り付けます。

注意: EasyBuilder の [ライセンス] ダイアログには、[テンポラリパスワードの入力] フィールドはありません。

  9. [追加] ボタンをクリックします。
  10. [閉じる] ボタンをクリックします。これで、セルが実行され、結果が表示されますが、セルの数式は非表示のままで編集できません。
  11. ジョブファイルを保存します。これで、ジョブとサイトライセンスをほかのビジョンシステムに配布できるようになります。

パスワード保護されたセルへ一時的にアクセスする

[ライセンス] ダイアログに適切なパスワードを入力すると、パスワード保護されたセルを編集するための一時的なアクセス権が得られます。この一時的なアクセス権は、In-Sight Explorer を使用して、別のジョブファイルをロードするか、ビジョンシステムから切断すると、無効になります。

  1. [センサ] メニューで、[ライセンス] をクリックして [ライセンス] ダイアログを開きます。

  2. [テンポラリパスワードの入力] フィールドに、ジョブにパスワード保護を追加するために使用したパスワードを入力します。

注意: EasyBuilder の [ライセンス] ダイアログには、[テンポラリパスワードの入力] フィールドはありません。

  3. [決定] ボタンをクリックします。パスワードに関連付けられたすべてのセルがアクセス可能になります。
  4. [閉じる] ボタンをクリックします。

セルのパスワード保護を解除する

  1. スプレッドシートビューで、保護されているセルをハイライトします。
  2. キーボードの Delete キーを押して、セルの内容を消去します。セルの値と数式が削除され、セルの保護は解除されます。
  3. ジョブファイルを保存します。

ビジョンシステムからライセンスを削除する

  1. In-Sight Explorer からビジョンシステムに接続します。
  2. [センサ] メニューで、[ライセンス] をクリックして [ライセンス] ダイアログを開きます。
  3. 削除するライセンスをハイライトします。

  4. [削除] ボタンをクリックします。選択したライセンスがリストから削除されます。
  5. [閉じる] ボタンをクリックします。
  6. ジョブファイルを保存します。このライセンスは、ビジョンシステムに保存されなくなります。


システムメニュー

メニューバー

In-Sight Explorer GUI リファレンス

  • EasyBuilder ビュー
  • スプレッドシートビュー

EasyBuilder ビュー

[システム] メニューを使用すると、複数の In-Sight センサに対してファイル操作を実行することができます。また、このメニューには、In-Sight Explorer に関する機能やオプションも含まれています。[センサ/デバイスをネットワークに追加] ダイアログを使用すると、ネットワーク上で動作するように、または PC と直接通信するように、新規または既存のセンサを設定できます。

システムメニュー項目

  • [ログオン/ログオフ]:　[ログオン/ログオフ] ダイアログを表示します。このダイアログによって、ユーザ名とパスワードを In-Sight Explorer に対して入力したり、すべてのセンサからログオフしたりすることができます。
  • [レポート作成]:　1 つまたは複数の In-Sight センサのジョブやセンサ設定を記述した XML ファイルを生成します。
  • [バックアップ]:　[バックアップ] ダイアログを表示します。このダイアログを使用すると、すべてのジョブ、画像、およびセンサ設定のコピーをローカル PC のフォルダに保存することができます。これらの圧縮バックアップを保存するフォルダは、[オプション] ダイアログで定義されています。
  • [リストア]:　[リストア] ダイアログを表示します。このダイアログを使用すると、最後に保存したバックアップから 1 つまたは複数のセンサにジョブ、画像、およびセンサ設定をリストアできます。
  • [選択してリストア]:　[ここからリストア] ダイアログを表示します。このダイアログを使用すると、1 つの In-Sight センサに任意のバックアップ (異なるセンサを含む) をリストアすることができます。
  • [クローン作成]:　複製元 In-Sight センサから、1 つまたは複数の複製先 In-Sight センサに、ジョブ、画像、およびセンサ設定を複製します。
  • [ファームウェアアップデート]:　[ファームウェアアップデート] ダイアログを使用して、1 つまたは複数の In-Sight センサにファームウェアファイルを書き込みます。
  • [センサ/デバイスをネットワークに追加]:　[センサ/デバイスをネットワークに追加] ダイアログを表示します。このダイアログでは、TCP/IP サブネットでの通信、または PC への直接接続について、新規および既存の In-Sight センサを設定することができます。
  • [Explorer のホストテーブル]:　[Explorer のホストテーブルの設定] ダイアログを表示します。このダイアログを使用すると、In-Sight Explorer が、異なるサブネット上の In-Sight センサと通信できるようになります。Explorer のホストテーブルのエントリは、自動的に検出されるセンサと同じように、[In-Sight のネットワーク] ペインに表示されます。
  • [リモートサブネット]:　[エクスプローラリモートサブネットリスト] ダイアログを表示します。ここでは、In-Sight Explorer が、リモートサブネットを追加および管理することができます。
  • [レイアウトを保存する]:　現在開いているすべてのEasyBuilder ビューおよびセンサステータスビューのスナップショットを生成し、この 2 つのビューの画面上での配置を記憶します。次回の EasyBuilder の起動時に、指定されたセンサやエミュレータにログオンし、各ビューをレイアウトの保存時と同じように配置します。

ヒント:　Shift+F7 キーを押すことによって、レイアウトを保存することもできます。

注意:　ツールバーやペインのドッキングが解除されているときにレイアウトを保存すると、これらが正常に表示されないことがあります。レイアウトを保存する前に、ツールバーやペインをすべてドッキングしておくことを推奨します。

  • [オプション]:　[オプション] ダイアログを表示します。このダイアログを使用すると、In-Sight Explorer の起動、GUI、およびエミュレータの環境を設定することができます。

スプレッドシートビュー

[システム] メニューを使用すると、複数の In-Sight センサに対してファイル操作を実行することができます。また、このメニューには、In-Sight Explorer に関する機能やオプションも含まれています。[センサ/デバイスをネットワークに追加] ダイアログを使用すると、ネットワーク上で動作するように、または PC と直接通信するように、新規または既存のセンサを設定できます。

システムメニュー項目

  • [ログオン/ログオフ]:　[ログオン/ログオフ] ダイアログを表示します。このダイアログによって、ユーザ名とパスワードを In-Sight Explorer に対して入力したり、すべてのセンサからログオフしたりすることができます。
  • [レポート作成]:　1 つまたは複数の In-Sight センサのジョブやセンサ設定を記述した XML ファイルを生成します。
  • [バックアップ]:　[バックアップ] ダイアログを表示します。このダイアログを使用すると、すべてのジョブ、画像、およびセンサ設定のコピーをローカル PC のフォルダに保存することができます。これらの圧縮バックアップを保存するフォルダは、[オプション] ダイアログで定義されています。
  • [リストア]:　[リストア] ダイアログを表示します。このダイアログを使用すると、最後に保存したバックアップから 1 つまたは複数のセンサにジョブ、画像、およびセンサ設定をリストアできます。
  • [選択してリストア]:　[ここからリストア] ダイアログを表示します。このダイアログを使用すると、1 つの In-Sight センサに任意のバックアップ (異なるセンサを含む) をリストアすることができます。
  • [クローン作成]:　複製元 In-Sight センサから、1 つまたは複数の複製先 In-Sight センサに、ジョブ、画像、およびセンサ設定を複製します。
  • [ファームウェアアップデート]:　[ファームウェアアップデート] ダイアログを使用して、1 つまたは複数の In-Sight センサにファームウェアファイルを書き込みます。
  • [センサ/デバイスをネットワークに追加]:　[センサ/デバイスをネットワークに追加] ダイアログを表示します。このダイアログでは、TCP/IP サブネットでの通信、または PC への直接接続について、新規および既存の In-Sight センサを設定することができます。
  • [Explorer のホストテーブル]:　[Explorer のホストテーブルの設定] ダイアログを表示します。このダイアログを使用すると、In-Sight Explorer が、異なるサブネット上の In-Sight センサと通信できるようになります。Explorer のホストテーブルのエントリは、自動的に検出されるセンサと同じように、[In-Sight のネットワーク] ペインに表示されます。
  • [リモートサブネット]:　[エクスプローラリモートサブネットリスト] ダイアログを表示します。ここでは、In-Sight Explorer が、リモートサブネットを追加および管理することができます。
  • [レイアウトを保存する]:　現在開いているすべてのスプレッドシートビューおよびセンサステータスビューのスナップショットを生成し、この 2 つのビューの画面上での配置を記憶します。次回の In-Sight Explorer の起動時に、指定されたセンサやエミュレータにログオンし、各ビューをレイアウトの保存時と同じように配置します。

ヒント:　Shift+F7 キーを押すことによって、レイアウトを保存することもできます。

注意:　ツールバーやペインのドッキングが解除されているときにレイアウトを保存すると、これらが正常に表示されないことがあります。レイアウトを保存する前に、ツールバーやペインをすべてドッキングしておくことを推奨します。

  • [オプション]:　[オプション] ダイアログを表示します。このダイアログを使用すると、In-Sight Explorer の起動、GUI、およびエミュレータの環境を設定することができます。


[ログオン/ログオフ] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

[ログオン/ログオフ] ダイアログでは、個々の In-Sight ビジョンシステムにログオンするときに使用するユーザ名とパスワードを設定します。また、In-Sight Explorer のログオン/ログオフに関する権限の認証と承認を行います。

このダイアログを使用して、すべてのビジョンシステムからログオフすることもできます。デフォルトでは、In-Sight Explorer は、admin というユーザ名と空白パスワードを使用してビジョンシステムにログオンします。[オプション] ダイアログで定義されたスタートアップユーザ名およびパスワードが、[ユーザアクセス設定] ダイアログで定義されたユーザ名およびパスワードと一致しない場合に In-Sight Explorer を起動すると、[ログオン/ログオフ] ダイアログが表示されます。

In-Sight Explorer は、ジョブの編集および表示機能に加えて、バックアップ、リストア、レポート作成、ファイル管理などの管理サービスも提供します。これらの管理サービスを使用するには、FTP やネイティブモードプロトコルを使用して In-Sight ビジョンシステムに接続する必要があります。これらの機能は常に利用可能なものとして表示されますが、操作の開始時にビジョンシステムごとにユーザ認証が確認され、現在のユーザ名に基づき、現在のユーザの各ビジョンシステムにおけるアクセスレベルに応じて、これらの機能の実行が許可または拒否されます。

In-Sight ビジョンシステムへのログオン

  1. [システム] メニューで、[ログオン/ログオフ] をクリックします。

  2. ユーザ名とパスワードを入力します。
  3. 入力したユーザ名とパスワードを、次回ログオンするときのために記憶させる場合は、[パスワード保存] チェックボックスをオンにします。デフォルトでは、このオプションはオフになっているため、システムにログオンするたびにパスワードを入力する必要があります。
  4. [ログオン] ボタンをクリックして完了します。前の手順で入力したユーザ名とパスワードを使用して、個々の In-Sight ビジョンシステムにログオンします ([In-Sight ネットワーク] ペインのビジョンシステム名をダブルクリックするとログオンできます)。

注意: ビジョンシステムにログオンしてユーザ名またはパスワードを変更すると、新しいユーザ情報を認証できないビジョンシステムとの接続が切断される場合があります。

ログオンが完了すると、ログオンを開始した In-Sight ビジョンシステムでのユーザのアクセスレベルにかかわらず、アクセス先のシステムのユーザリストでユーザ名に対して指定されたアクセスレベルが有効になります。


[レポート作成] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

[レポート作成] ダイアログを使用すると、ネットワーク上にある 1 つまたは複数の In-Sight センサまたはエミュレータのネットワーク設定とジョブの詳細が記載された HTML または XML ベースの出力ファイルを作成できます。

1 つまたは複数の In-Sight センサのレポートを作成するには

  1. [システム] メニューで、[レポート作成] をクリックします。

  2. レポートに含める In-Sight センサをハイライトします。
  3. [ファイルの種類] ドロップダウンリストで、出力ファイルの種類を選択します(HTML または XML)。
  4. [レポート作成] をクリックします。
  5. レポートのファイル名を入力します。
  6. [保存] をクリックします。


[バックアップ] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

[バックアップ] ダイアログを使用すると、In-Sight センサやエミュレータから PC のハードディスクに、ジョブ、画像、およびセンサ設定のアーカイブコピーを保存することができます。ただし、バックアップ内のネットワーク設定は、バックアップ元のセンサに対してのみリストアされます。

圧縮バックアップを保存するフォルダ(バックアップディレクトリ)は、[オプション] ダイアログで定義されています。In-Sight Explorer が In-Sight センサまたはエミュレータからデータをアーカイブするときには、In-Sight センサのホスト名と同じ名前に .000 から始まる連番の拡張子を付けたフォルダがバックアップディレクトリに作成されます。特定のセンサのバックアップがすでに存在する場合は、is5400_010203.000、is5400_010203.001 のように拡張子の数値が 1 ずつカウントアップします。

注意:
  • 1 つの In-Sight センサにつき最大 1,000 回分のバックアップを保存することができます。
  • ホスト名にコロン (: ) を含むセンサをバックアップした場合、作成されるフォルダ名ではコロンがプラス (+) に置き換えられます。これは、Windows ではフォルダ名にコロンを使用できないためです。
  • オンラインモードの In-Sight センサでファイル操作を行うとジョブの処理時間に影響を与える可能性があるため、バックアップ操作は通常、In-Sight センサをオフラインの状態にして実行します。処理時間への影響が問題にならない場合は、[オプション] ダイアログの [オンラインでもバックアップを行う] チェックボックスをオンにすることによって、オンラインバックアップを有効にすることができます。
  • オンラインセンサのバックアップ中は、そのセンサのステータスが一時的に [image] になります。バックアップが完了すると、ステータスは [image] に戻ります。

  • [バックアップディレクトリ] のデフォルトフォルダロケーションは、標準ユーザアクセスをサポートするため、Program Files フォルダから次のロケーションに変更になりました (In-Sight Explorer 4.5.0 以降)。

    • Windows Vista and later:
      C:\ProgramData\Cognex\In-Sight\In-Sight Explorer x.x.x
    • Windows XP:
      C:\Documents and Settings\All Users\Application Data\Cognex\In-Sight\In-Sight Explorer x.x.x

[バックアップ] ダイアログを表示するには

  • [システム] メニューで、[バックアップ] をクリックします。

[バックアップ] ダイアログの使用法

  1. バックアップする必要のあるセンサをハイライトします。
  2. [バックアップ] をクリックします。


[リストア] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

[リストア] ダイアログを使用すると、In-Sight センサまたはエミュレータのジョブ、画像、センサ設定のアーカイブコピーを In-Sight センサに戻すことができます。リストアを実行する前に、バックアップを実施しておく必要があります。

保存されたバックアップは、[オプション] ダイアログで定義されるバックアップディレクトリからリストアされます。In-Sight Explorer は、[In-Sight ネットワーク] のセンサ名と一致するすべてのサブフォルダを検出して、[リストア] ダイアログに表示します。

注意:
  • 保存されているどのセンサについても、最新のバックアップだけが [リストア] ダイアログに表示されます。古いバックアップをリストアしたり、異なるセンサのバックアップをリストアしたりする必要がある場合は、[選択してリストア] ダイアログを使用してください。リストアを行うセンサはオフラインにしておく必要があります。
  • オンラインのセンサに対してリストアしようとすると、センサをオフラインにする必要があることを示す警告ダイアログが表示されます。
  • ほかの設定とともに、センサのネットワーク設定もリストアされて、バックアップフォルダに含まれている設定によって置き換えられます。
  • センサをリストアしても、ユーザリストはクリアされません。したがって、センサをリストアする前にユーザリストに追加したユーザ名は、リストア後もセンサに残ります。センサをリストアした後で、ユーザリストから、ユーザを手動で追加または削除してください。

  • [バックアップディレクトリ] のデフォルトフォルダロケーションは、標準ユーザアクセスをサポートするため、Program Files フォルダから次のロケーションに変更になりました (In-Sight Explorer 4.5.0 以降)。

    • Windows Vista and later:
      C:\ProgramData\Cognex\In-Sight\In-Sight Explorer x.x.x
    • Windows XP:
      C:\Documents and Settings\All Users\Application Data\Cognex\In-Sight\In-Sight Explorer x.x.x

[リストア] ダイアログを表示するには

  • リストアする必要のあるセンサをハイライトします。

[リストア] ダイアログの使用法

  1. リストアするセンサをハイライトします。
  2. [リストア] をクリックします。


[選択してリストア] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

[選択してリストア] ダイアログを使用すると、次のバックアップデータをセンサに戻すことができます。

  • 最後に保存した In-Sight センサのジョブ、画像、および設定データ
  • 過去に保存した In-Sight センサのジョブ、画像、および設定データ
  • 異なる In-Sight センサから保存したデータ

注意: リストア元のセンサの保存ディレクトリを指定する必要があります。このため、一度に 1 つのセンサだけをリストアできます。

保存されたバックアップは、[オプション] ダイアログで定義されるバックアップディレクトリからリストアされます。In-Sight Explorer は、[In-Sight ネットワーク] のセンサ名と一致するすべてのサブフォルダを検出し、[選択してリストア] ダイアログに表示します。

センサが過去に 1 回しかバックアップされていない場合は、その名前がフォルダアイコン [image] とともに右側のリストに表示されます。センサが複数回バックアップされている場合は、センサ名の後に 3 桁の番号の付いたフォルダ (is5401_010203.000、is5401_010203.001 など) が表示されます。この番号の一番大きなものが、そのセンサの最新のバックアップです。

注意:
  • [選択してリストア] 機能を実行するには、センサをオフラインにする必要があります。オンラインのセンサをリストアしようとすると、センサをオフラインにする必要があることを示す警告ダイアログが表示されます。
  • 異なるセンサから保存されたデータで In-Sight センサをリストアする場合、2 つのセンサのモデルが異なる (例えば、In-Sight 5400C のバックアップデータで In-Sight Micro 1400 ビジョンシステムをリストアする) と、予期しない結果になる場合があります。また、リストア元の In-Sight センサの一部のジョブ機能が、リストア先の In-Sight センサでサポートされない可能性もあります。
  • ほかの設定とともに、センサのネットワーク設定もリストアされて、バックアップフォルダに含まれている設定によって置き換えられます。
  • センサをリストアしても、ユーザリストはクリアされません。したがって、センサをリストアする前にユーザリストに追加したユーザ名は、リストア後もセンサに残ります。センサをリストアした後で、ユーザリストから、ユーザを手動で追加または削除してください。

  • [バックアップディレクトリ] のデフォルトフォルダロケーションは、標準ユーザアクセスをサポートするため、Program Files フォルダから次のロケーションに変更になりました (In-Sight Explorer 4.5.0 以降)。

    • Windows Vista and later:
      C:\ProgramData\Cognex\In-Sight\In-Sight Explorer x.x.x
    • Windows XP:
      C:\Documents and Settings\All Users\Application Data\Cognex\In-Sight\In-Sight Explorer x.x.x

[選択してリストア] ダイアログを表示するには

  • [システム] メニューで、[選択してリストア] をクリックします。

[選択してリストア] ダイアログの使用法

  1. 左側のリストから、バックアップファイルをリストアするセンサを選択します。
  2. 右側のリストから、リストアする保存データを選択します。
  3. [選択してリストア] をクリックします。


[クローン作成] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

[クローン作成] ダイアログを使用すると、ジョブと画像データ (およびほとんどのビジョンシステム設定) を、クローン元の In-Sight ビジョンシステムから、1 台または複数のクローン先 In-Sight ビジョンシステムにコピーできます。

注意:
  • [ホスト名]、[DHCP サーバを使用]、[IP アドレス]、[サブネットマスク]、[デフォルトゲートウェイ]、[DNS サーバ]、および [ドメイン名] 設定は、クローン先ビジョンシステムにコピーされません。
  • ビジョンシステムのクローンを作成しても、ユーザリストはクリアされません。したがって、ビジョンシステムのクローンを作成する前にユーザリストに追加したユーザ名は、リストア後もビジョンシステムに保存されています。ビジョンシステムのクローンを作成した後で、ユーザリストからユーザを手動で追加または削除してください。

[クローン作成] ダイアログを表示するには

  • [システム] メニューで、[クローン作成] をクリックします。

[クローン作成] ダイアログの使用法

  1. クローン元として使用するビジョンシステムを左側のリストから選択します。
  2. クローン元ビジョンシステムからファイルのコピーを受け取る 1 台または複数のビジョンシステムを、右側のペインから選択します。
  3. [クローン作成] をクリックします。

注意:　[IPsec 設定のみクローンを作成] チェックボックスをオンにすると、ある In-Sight ビジョンシステムから別のシステムへの IPsec ルールおよび設定の転送のみを許可します。


[ファームウェアアップデート] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

[ファームウェアアップデート] ダイアログを使用すると、最新バージョンの In-Sight ファームウェアを In-Sight ビジョンシステムおよび CIO-MICRO または CIO-MICRO-CC I/O モジュールにロードできます。サポートされるファームウェアのバージョンについては、ここをクリックしてください。

  • ファームウェアの更新
  • ファームウェアアップグレードキー
  • トラブルシューティング

ファームウェアの更新

注意:
  • Emulator ディレクトリに 250 を超えるファイルが含まれている場合、このダイアログから In-Sight ビジョンシステムを選択し、ファームウェアをアップデートすることが不可能となります。ファームウェアアップグレード機能を再度有効にするには、まず、Emulator ディレクトリからファイルを削除する必要があります。Windows Vista 以降の場合、デフォルトディレクトリの場所は、C:\ProgramData\Cognex\In-Sight\In-Sight Explorer x.x.x\Emulator です。Windows XP の場合、デフォルトのディレクトリは、C:\Documents and Settings\All Users\Application Data\Cognex\In-Sight\In-Sight Explorer x.x.x\Emulator です。
  • In-Sight ビジョンシステムまたは I/O モジュールのファームウェアを更新するには、フルアクセスのアクセス権を持つユーザとしてログオンする必要があります。

  • フルアクセス許可を持つユーザとしてログオンしている場合、[センサ] メニューから In-Sight CIO-MICRO および CIO-MICRO-CC モジュールのファームウェアを更新することはできません。パスワードが空白の Admin ユーザとして In-Sight Explorer にログオンしている場合を除き、In-Sight CIO-MICRO および CIO-MICRO-CC モジュールのファームウェアを更新するには、[I/O モジュールの設定] ダイアログを使用する必要があります。

  • ユーザ名が「monitor」の場合、フルアクセス権限が与えられていても、ファームウェアの更新にはアクセスできません。

警告!: ファームウェアの更新中は、デバイスの電源を入れ直さないでください。

  1. インストールマニュアルの指示に従って、In-Sight ビジョンシステムまたは I/O モジュールをネットワークに接続します。
  2. In-Sight Explorer を起動します。
  3. ファームウェアの更新を実行する前に、各ビジョンシステムをバックアップします。

注意:　ファームウェアの更新プロセスでは、すべてのジョブと設定ファイルが In-Sight の不揮発性メモリから消去されます。In-Sight Explorer は、ファームウェアを更新する前に、すべてのジョブと設定の一時的なコピーを生成しますが、ファームウェアの更新プロセスを開始する前に、これらのファイルを手動でバックアップすることを推奨します。

  4. 次のことを確認します。
  • 更新するすべてのビジョンシステムがオフラインになっている
  • 更新するビジョンシステムにほかのユーザがログオンしていない
  • 各ビジョンシステムに新規ジョブがロードされている
  5. [システム] メニューで、[ファームウェアアップデート] をクリックします。

  6. 更新する In-Sight ビジョンシステムおよび I/O モジュールをハイライトします。
  7. [更新] をクリックします。
  8. 新しいファームウェアに更新するすべてのビジョンシステムおよび I/O モジュールがダイアログに表示されていることを確認します。

  9. [OK] をクリックします。
  10. すべてのビジョンシステムおよび I/O モジュールが更新され、再起動したら、[OK] をクリックして [ファームウェアアップデート] ダイアログを閉じます。

ファームウェアアップグレードキー

工場でデバイスにインストールされたファームウェアのバージョンとアップグレードするバージョンによっては、PC に ファームウェアアップデート (FUP) キーをインストールすることが必要になる場合があります。このキーは、ファームウェアアップデートプロセスを実行するために PC を認証します。

注意:　複数のビジョンシステムにファームウェアアップグレードキーが必要な場合であっても、このプロセスは、選択したファームウェアバージョンについて一度行うだけで十分です。

  1. [OK] をクリックして、[ファームウェアアップグレードキーが必要です] ダイアログを閉じます。

  2. 次の In-Sight サポートページに移動します。

    www.cognex.com/support/InSight

  3. [In-Sight Explorer x.x FUP] というリンクをクリックします。
  4. 製品サポートサービスアカウントを取得済みの場合は、サインインします。アカウントを持っていない場合は、まず登録して、ダウンロードへのアクセス権を取得します。
  5. [ダウンロード] ボタンをクリックして、適切なファイルをご使用の PC に保存します。
  6. ファイルを保存したら、そのファイルを参照してダブルクリックします。ファームウェアアップデートキーインストーラが起動されます。インストールプロセスを完了します。
  7. ファームウェアの更新をもう一度実行します。

トラブルシューティング

センサのファームウェアをアップデートできない

  • ほとんどのファームウェアアップデート問題は、ファイアウォールに原因があります。すべてのファイアウォールが無効になっていることを確認してください。
  • 工場でセンサにインストールされたファームウェアのバージョンとアップグレードするバージョンによっては、ファームウェアアップグレードキーが必要になる場合があります。

エラーメッセージ

ファームウェアの更新プロセスの実行時にエラーが発生する場合は、In-Sight ビジョンシステムまたは I/O モジュールの電源を入れ直して、ファームウェアの更新をやり直してください。

使用可能なフラッシュメモリの不足

ファームウェアの更新を試みているときに多数の関数を含むジョブが In-Sight ビジョンシステムにロードされると、使用可能なフラッシュメモリが不足するために更新が中断されることがあります。このような場合は、以下の操作を実行します。

  1. ビジョンシステムがオフラインであることを確認します。
  2. 新規ジョブをロードします ([ファイル] メニューの [ジョブの新規作成] をクリック)。
  3. ファームウェアの更新をもう一度実行します。

In-Sight ビジョンシステムのジョブがメモリの空き容量を大量に消費すると、使用可能なフラッシュメモリが不足するためにファームウェアの更新が中断されることがあります。このような場合は、以下の操作を実行します。

  1. ビジョンシステムからジョブファイルを削除します。
  2. ファームウェアの更新をもう一度実行します。

注意:　In-Sight 7000 シリーズビジョンシステム上で使用可能なフラッシュメモリ容量は、In-Sight 4.7.0 ファームウェアで 256MB だったのに対し、In-Sight 4.7.1 以降のファームウェアでは 512MB に増加しました。したがって、In-Sight 7000 シリーズビジョンシステムを 4.7.1 以降から 4.7.0 にファームウェアダウングレードする際に、256MB 以上のデータがあった場合、リストア中に 1 つまたは複数のファイルが正しくコピー & ペーストされない可能性があります。proc.set ファイルが正しくリストアされない場合、PC のバックアップディレクトリから proc.set ファイルをコピーし、ビジョンシステム上の不必要なファイルを削除してから、proc.set ファイルをディレクトリにペーストしてください。

関連項目

エラーメッセージ


ファームウェアのバージョン

In-Sight Explorer GUI リファレンス

次の表は、In-Sight モデル番号、不揮発性フラッシュメモリの量 (利用可能な場合)、部品番号/製品タイプ、およびサポートされているファームウェアのバージョンをまとめたものです。

注意:末尾が「R」の部品番号/製品タイプは、RoHS 指令に適合していることを示します。

In-Sight モデル | 部品番号/ 製品タイプ | 最初の対応ファームウェア | 最新の対応ファームウェア
1000 1010 1000C (4MB の不揮発性フラッシュメモリ) | 800-5740-1 800-5749-1 800-5760-1 | 2.00.00 2.00.00 2.20.00 | 2.71.00 PR1
3000 (4MB の不揮発性フラッシュメモリ) | 800-5747-1 | 2.00.00 | 2.52.03
1700 ウェーハリーダ (4MB の不揮発性フラッシュメモリ) | 800-5748-10/20 | ウェーハ ID 2.13.00 | 2.71.00 PR1
4000 4100 4001 (8MB の不揮発性フラッシュメモリ) | 800-5762-1 800-5763-1 800-5770-1 | 2.30.00 | 2.71.00 PR1
1701 ウェーハリーダ (8MB の不揮発性フラッシュメモリ) | 800-5797-1 800-5798-1 | ウェーハ ID 2.40.00 | 2.71.00 PR1
3400 (16MB の不揮発性フラッシュメモリ) | 800-5809-1 | 2.51.00 | 4.2.0
5100 5110 (16MB の不揮発性フラッシュメモリ) | 800-5834-1/2/3 800-5854-1 | 2.53.00 | 4.2.0
5400 5410 (16MB の不揮発性フラッシュメモリ) | 800-5828-1/2/3 | 2.53.00 | 4.2.0
5101 5111 (16MB の不揮発性フラッシュメモリ) | 800-5838-1/2/3 | 2.65.00 | 4.2.0
5100C (16MB の不揮発性フラッシュメモリ) | 800-5837-1/2/3 | 2.65.00 | 4.2.0
5000 (16MB の不揮発性フラッシュメモリ) | 800-5840-1/2/3 | 2.70.00 | 4.2.0
5400C 5400CS (16MB の不揮発性フラッシュメモリ) | 800-5837-1/2/3 | 2.80.00 | 4.2.0
5401 5411 (16MB の不揮発性フラッシュメモリ) | 800-5838-1/2/3 | 2.80.00 | 4.2.0
5403 5403S (16MB の不揮発性フラッシュメモリ) | 800-5830-1/2/3 | 2.80.00 | 4.2.0
5000 (32MB の不揮発性フラッシュメモリ) | 800-5840-4/5/6 | 2.80.01 PR1 | 4.2.0
5400R (32MB の不揮発性フラッシュメモリ) | 800-5829-1/1R | 2.80.01 PR1 | 4.5.0
5100 5110 (32MB の不揮発性フラッシュメモリ) | 800-5870-1/1R/2/2R/3/3R | 2.80.01 PR1 | 4.7.3
5400 5410 5400S 5410S (32MB の不揮発性フラッシュメモリ) | 800-5855-1/1R/2/2R/3/3R | 2.80.01 PR1 | 4.7.3
5400C 5400CS (32MB の不揮発性フラッシュメモリ) | 800-5837-4/4R/5/5R/6/6R | 2.80.01 PR1 | 4.7.3
5401 5411 (32MB の不揮発性フラッシュメモリ) | 800-5838-4/4R/5/5R/6/6R | 2.80.01 PR1 | 4.7.3
5403 5413 5403S (32MB の不揮発性フラッシュメモリ) | 800-5830-4/4R/5/5R/6/6R | 2.80.01 PR1 | 4.7.3
1721 ウェーハリーダ (32MB の不揮発性フラッシュメモリ) | 800-5865-1/1R 821-0063-1R 821-0063-11R 821-0063-2R 821-0063-21R | ウェーハ ID 2.90.00 | 現在のバージョン (ウェーハリーダ)
1722 ウェーハリーダ (32MB の不揮発性フラッシュメモリ) | 800-5865-2/2R 821-0064-1R | ウェーハ ID 3.2.5 | 現在のバージョン (ウェーハリーダ)
5100C (32MB の不揮発性フラッシュメモリ) | 800-5837-4/4R/5/5R/6/6R | 3.4.0 | 4.7.3
5600 5610 (64MB の不揮発性フラッシュメモリ) | 800-5871-1/1R/2/2R/3/3R | 3.4.0 | 現在のバージョン
5603 5613 (64MB の不揮発性フラッシュメモリ) | 800-5873-1/1R | 3.4.0 | 現在のバージョン
1720 ウェーハリーダ (32MB の不揮発性フラッシュメモリ) | 800-5865-3R 821-0062-1R | ウェーハ ID 3.4.1 | 現在のバージョン (ウェーハリーダ)
In-Sight Micro 1020 1050 1100 1110 1400 1410 (64MB の不揮発性フラッシュメモリ) | タイプ 821-0002-1R タイプ 821-0002-5R | 4.1.0 | 現在のバージョン
In-Sight Micro 1403 1413 (64MB の不揮発性フラッシュメモリ) | タイプ 821-0003-1R タイプ 821-0003-5R | 4.1.0 | 現在のバージョン
CIO-MICRO I/O モジュール | タイプ 821-0016-1R タイプ 821-0016-2R | 4.2.0 | 現在のバージョン
CIO-MICRO-CC I/O モジュール | タイプ 821-0017-1R タイプ 821-0017-2R | 4.3.0 | 現在のバージョン
In-Sight Micro 1100C 1400C (64MB の不揮発性フラッシュメモリ) | タイプ 821-0002-2R タイプ 821-0002-6R | 4.3.0 | 現在のバージョン
In-Sight Micro 1403C (64MB の不揮発性フラッシュメモリ) | タイプ 821-0003-2R タイプ 821-0003-6R | 4.3.0 | 現在のバージョン
5604 (64MB の不揮発性フラッシュメモリ) | タイプ 800-5874-1R タイプ 800-5874-2R | 4.3.1 | 現在のバージョン
5605 5615 (128MB の不揮発性フラッシュメモリ) | タイプ 821-0032-1R タイプ 821-0032-2R | 4.4.1 | 現在のバージョン
5100 5110 5400 5410 (128MB の不揮発性フラッシュメモリ) | タイプ 821-0034-1R | 4.4.3 | 現在のバージョン
5100C 5400C (128MB の不揮発性フラッシュメモリ) | タイプ 821-0036-1R | 4.4.3 | 現在のバージョン
5400S 5410S (128MB の不揮発性フラッシュメモリ) | タイプ 821-0038-1R | 4.4.3 | 現在のバージョン
5400CS (128MB の不揮発性フラッシュメモリ) | タイプ 821-0039-1R | 4.4.3 | 現在のバージョン
5401 5411 (128MB の不揮発性フラッシュメモリ) | タイプ 821-0035-1R | 4.4.3 | 現在のバージョン
5403 5413 (128MB の不揮発性フラッシュメモリ) | タイプ 821-0037-1R | 4.4.3 | 現在のバージョン
5403S (128MB の不揮発性フラッシュメモリ) | タイプ 821-0040-1R | 4.4.3 | 現在のバージョン
5600 5610 (128MB の不揮発性フラッシュメモリ) | タイプ 821-0041-1R | 4.4.3 | 現在のバージョン
5603 5613 (128MB の不揮発性フラッシュメモリ) | タイプ 821-0042-1R | 4.4.3 | 現在のバージョン
5604 5614 (128MB の不揮発性フラッシュメモリ) | タイプ 821-0051-1R | 4.4.3 | 現在のバージョン
In-Sight Micro 1020 1050 1100 1110 1400 1410 (128MB の不揮発性フラッシュメモリ) | タイプ 821-0043-1R | 4.4.3 | 現在のバージョン
In-Sight Micro 1100C 1400C (128MB の不揮発性フラッシュメモリ) | タイプ 821-0044-1R | 4.4.3 | 現在のバージョン
In-Sight Micro 1403 1413 (128MB の不揮発性フラッシュメモリ) | タイプ 821-0047-1R | 4.4.3 | 現在のバージョン
In-Sight Micro 1403C (128MB の不揮発性フラッシュメモリ) | タイプ 821-0048-1R | 4.4.3 | 現在のバージョン
1740 ウェーハリーダ (128MB の不揮発性フラッシュメモリ) | タイプ 821-0066-1R | ウェーハ ID 4.5.0 | 現在のバージョン (ウェーハリーダ)
1741 ウェーハリーダ (128MB の不揮発性フラッシュメモリ) | タイプ 821-0067-1R | ウェーハ ID 4.5.0 | 現在のバージョン (ウェーハリーダ)
1742 ウェーハリーダ (128MB の不揮発性フラッシュメモリ) | タイプ 821-0068-1R | ウェーハ ID 4.5.0 | 現在のバージョン (ウェーハリーダ)
In-Sight Micro 1402 1412 (128MB の不揮発性フラッシュメモリ) | タイプ 821-0078-1R | 4.6.0 | 現在のバージョン
C マウントレンズ構成: 7010 7020 7050 7200 7210 7230 7400 7410 7430 7402 7412 7432 (512MB の不揮発性フラッシュメモリ) | タイプ 821-0084-1R タイプ 821-0084-3R タイプ 821-0084-5R | 4.7.1 | 現在のバージョン
M12 レンズ構成: 7010 7020 7050 7200 7210 7230 7400 7410 7430 7402 7412 7432 (512MB の不揮発性フラッシュメモリ) | タイプ 821-0084-2R タイプ 821-0084-4R タイプ 821-0084-6R | 4.7.3 | 現在のバージョン
C マウントレンズ構成: 7010C 7200C 7400C 7402C (512MB の不揮発性フラッシュメモリ) | タイプ 821-0100-1R タイプ 821-0100-3R | 4.8.0 | 現在のバージョン
M12 レンズ構成: 7010C 7200C 7400C 7402C (512MB の不揮発性フラッシュメモリ) | タイプ 821-0100-2R タイプ 821-0100-4R | 4.8.0 | 現在のバージョン


[センサ/デバイスをネットワークに追加] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

[センサ/デバイスをネットワークに追加] ダイアログは、Ethernet 構成をサポートしている In-Sight デバイスのうち、TCP/IP サブネットで不正なネットワーク設定がされているものを自動的に検出し、リストに表示します。このダイアログを開いている間にサブネット上で電源を入れ直した In-Sight Ethernet デバイスも、すべてこのリストに追加されます。

[センサ/デバイスをネットワークに追加] ダイアログは、次の操作を行うように設計されています。

  • 不正なネットワーク設定の再構成
  • In-Sight ビジョンシステム設定の工場出荷時の状態へのリセット
注意:
  • [センサ/デバイスをネットワークに追加] の各操作を実行するには、このデバイスに対する管理権限が必要です。
  • ファームウェア 4.1.0 以降が実行されていないデバイスでは、[センサ/デバイスをネットワークに追加] ダイアログの機能の一部が使用できません。最新バージョンへアップグレードすることを推奨します。
  • PC に搭載されているネットワークアダプタにリンクローカル IP アドレスが割り当てられていない場合、一時的なリンクローカル IP アドレスを持つデバイスは自動的に [センサ/デバイスをネットワークに追加] ダイアログに表示されます。このようなデバイスの IP アドレスは、固定または動的 IP アドレスに置き換えることを強く推奨します。
  • リモートネットワーク上のデバイスはこのダイアログには表示されません。リモートネットワーク上のデバイスに接続するには、[システム] メニューの [Explorer のホストテーブル] ダイアログを使用します。

[センサ/デバイスをネットワークに追加] ダイアログを表示するには

  • [システム] メニューで、[センサ/デバイスをネットワークに追加] をクリックします。または、[In-Sight ネットワーク] ペインで In-Sight センサアイコン [image] を右クリックし、表示されたポップアップメニューから [センサ/デバイスを追加] を選択します。

[センサ/デバイスをネットワークに追加] ダイアログの設定項目

リストでデバイスを選択するまで、このダイアログ内のフィールドは無効のままです。

  • [ホスト名]:　ネットワークに接続された In-Sight デバイスの名前を定義します。各デバイスには、初めて起動したときにホスト名が自動的に設定されます。ホスト名を変更するには、このフィールドに変更後の名前を入力します。
注意:
  • ホスト名に使用できる文字は、A ～ Z (大文字および小文字)、0 ～ 9、ハイフン (-)、コロン (:)、ピリオド (.)、およびアンダースコア (_) です。
  • ホスト名は最大 63 文字です。
  • [DHCP で IP アドレスを自動的に取得する]: このオプションを選択すると、起動時に、In-Sight デバイスのネットワーク設定が DHCP サーバによって動的に行われるようになります。
  • [次のネットワーク設定を使用する]: このオプションを有効にすると、In-Sight デバイスは、このオプションの下のネットワーク設定に従って構成されます。
    • [IP アドレス]:　ローカルネットワークの IP アドレス番号付けルールに従って、ネットワーク上の各 In-Sight デバイスの一意な識別子を指定します。
    • [サブネットマスク]:　IP アドレスのどの部分がネットワークを示し、どの部分がホストを示すかを定義します。IP アドレスのネットワーク部分が、同一サブネット上のすべてのホストと同じとなり、残りの部分は各ホスト固有のものとなるようにします。
    • [デフォルトゲートウェイ]: ネットワーク上に利用できるゲートウェイホストがある場合、その IP アドレスを指定します。ゲートウェイは、異なるネットワークのホスト間でデータを中継します。
    • [DNS サーバ]: ネットワーク上に、DNS 解決を提供するホストがあれば、その IP アドレスを指定します。
    • [ドメイン名]: ホストネットワークのネットワークドメインを指定します。

注意:　ドメイン名は最大 63 文字です。

  • [PC のネットワーク設定をコピーする]: このチェックボックスをオンにすると、In-Sight デバイスのネットワーク設定が、IP アドレスのホスト部分を除き、すべてローカルコンピュータのネットワーク設定に従って構成されます。
  • [管理者パスワードのリセット]: このチェックボックスをオンにすると、In-Sight ビジョンシステムの管理者パスワードが工場出荷時の状態 (空白) にリセットされます。

  • [センサを工場出荷時の状態に初期化する]: このチェックボックスをオンにすると、In-Sight ビジョンシステムの設定がすべて (このダイアログのネットワーク設定を除き) 工場出荷時のデフォルト状態にリセットされます。例えば、ユーザリスト、ディスクリート入出力、日付/時刻、ホストリスト、シリアルおよび FTP 設定はすべてリセットされます。

    注意:
    • このオプションは、CIO-MICRO モジュール、および CIO-MICRO-CC I/O モジュールについては無効になっています。
    • In-Sight エミュレータは、[オプション] ダイアログからアクセスできる [初期値に戻す] ダイアログの [エミュレーション] オプションを使用して、工場出荷時の状態にリセットすることができます。
  • [LED 点滅開始]: このボタンをクリックすると、In-Sight デバイス上の LED が点滅を開始するため、見つけやすくなります。同時にボタンのラベルが [LED 点滅停止] に変わります。LED は [LED 点滅停止] をクリックするか、[センサ/デバイスをネットワークに追加] ダイアログを閉じるか、またはリストから別のデバイスを選択するまで点滅を続けます。
  • [更新]: リストが更新され、使用している TCP/IP サブネットで不正なネットワーク設定がされている In-Sight Ethernet デバイスがすべて表示されます。

不正なネットワーク設定を再構成するには

  1. [センサ/デバイスをネットワークに追加] ダイアログを開きます。
  2. デバイスが物理的にネットワークに接続されていることを確認します。
  3. デバイスがリストに表示されない場合は、デバイスの電源を入れ直してください。

    4. 注意:　In-Sight 7000 ビジョンシステムの電源を入れ直す場合、電源の接続を 5 秒以上切断することを推奨します。

    ヒント:　それでもデバイスが自動的にリストに表示されない場合は、リスト内を右クリックして [すべてのデバイスを表示] を選択すると、Ethernet 構成をサポートしているローカルのエミュレータとすべての In-Sight デバイスが表示されます。

  4. [センサ/デバイスをネットワークに追加] ダイアログで、リストからデバイスを選択します。
  5. ホスト名が正しいことを確認します。
  6. デバイスに動的 IP アドレス、または固定 IP アドレスを使用します。

    動的 IP アドレスを使用する場合:
    1. [DHCP で IP アドレスを自動的に取得する] を選択します。デバイスが DHCP サーバによって起動時に動的に構成されるようになります。

    固定 IP アドレスを使用する場合:
    1. [次のネットワーク設定を使用する] を選択します。
    2. IP アドレスを入力します。
    3. 次のいずれかの操作を行います。
      • [PC のネットワーク設定をコピーする] をクリックします。ローカルコンピュータのサブネットマスク、デフォルトゲートウェイ、DNS サーバ、およびドメイン名が自動的にデバイスに割り当てられます。
      • サブネットマスク、デフォルトゲートウェイ、DNS サーバ、ドメイン名を担当のネットワーク管理者に問い合わせ、手動で入力します。

  7. [適用] をクリックします。
    注意:　選択したビジョンシステムでファームウェア 3.4.x 以降が実行されている場合:
    • ビジョンシステムの設定が自動的に工場出荷時の状態にリセットされることを示すダイアログが表示されます。
    • 進行状況バーが表示され、ビジョンシステムの電源を入れ直すことを促すメッセージが表示されます (電源を入れ直すと、手順 8 と 9 で説明されているダイアログは表示されなくなります)。
  8. 確認ダイアログが表示されたら、[OK] をクリックします。
  9. 検証ダイアログが表示されたら、[OK] をクリックします。

In-Sight ビジョンシステム設定を工場出荷時の状態にリセットするには

このオプションを選択すると、In-Sight ビジョンシステムの設定がすべて (このダイアログでのネットワーク設定を除き) 工場出荷時のデフォルト状態にリセットされます。例えば、ユーザリスト、ディスクリート入出力、日付/時刻、ホストリスト、シリアルおよび FTP 設定はすべてリセットされます。また、ビジョンシステムのパスワードを忘れたためにデフォルト (<blank>) に戻す必要がある場合にも、この機能が使用できます。

注意:
  • このオプションは、CIO-MICRO モジュール、および CIO-MICRO-CC I/O モジュールについては無効になっています。
  • In-Sight エミュレータは、[オプション] ダイアログからアクセスできる [初期値に戻す] ダイアログの [エミュレーション] オプションを使用して、工場出荷時の状態にリセットすることができます。
  1. [センサ/デバイスをネットワークに追加] ダイアログを開きます。
  2. ビジョンシステムの電源を入れ直します。
  3. [センサ/デバイスをネットワークに追加] ダイアログで、リストから目的のビジョンシステムを選択します。
  4. [センサを工場出荷時の状態に初期化する] を選択します。
  5. [適用] をクリックします。
  6. 確認ダイアログが表示されたら、[OK] をクリックします。
  7. 進行状況バーが表示されます。メッセージにあるとおり、ビジョンシステムの電源を入れ直して設定の変更を有効にします。

    8. 注意:　In-Sight 7000 ビジョンシステムの電源を入れ直す場合、電源の接続を 5 秒以上切断することを推奨します。

  8. 検証ダイアログが表示されたら、[OK] をクリックします。

関連項目

ネットワークのトラブルシューティング


[Explorer のホストテーブルの設定] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

[Explorer のホストテーブルの設定] ダイアログを使用すると、In-Sight Explorer から異なるサブネット上のセンサにアクセスできるようになります。また、センサに別名を付けることができます。Explorer のホストテーブルのエントリは、指定された IP アドレスのホストのネットワーク設定を実際には変更しません。これらのエントリは、追加のセンサとして単に In-Sight Explorer に表示されるだけです。

警告: DHCP を使用して設定されるセンサについては、特定の IP アドレスを持つことが保証されません。Explorer のホストテーブルはデバイスと通信するために、固定 IP アドレスを必要とするため、異なるサブネット上のすべてのセンサを固定 IP アドレスでセットアップすることを強く推奨します。

[Explorer のホストテーブルの設定] ダイアログを表示するには

  • [システム] メニューで、[Explorer のホストテーブル] をクリックします。

ホストテーブルに新しいエントリを作成します。

  • [追加]: ホストテーブルに新しいエントリを作成します。 Closed [ホストの追加] ダイアログが表示され、新しいホストのホスト名と IP アドレスを入力することができます。入力が完了したら、[OK] をクリックしてください。

注意:

  • ホスト名として有効な文字は、A～Z(大文字および小文字)、0～9、ハイフン(-)、コロン(: )、カンマ(,)、およびアンダースコア(_)です。
  • ホスト名には最大で63文字を使用できます。
  • [編集]: [ホストの編集] ダイアログリストからエントリを選択して、[編集] をクリックします。 Closed [ホストの編集] ダイアログが表示され、選択したホストのホスト名と IP アドレスを変更することができます。入力が完了したら、[OK] をクリックしてください。

  • [削除]: ホストテーブルからホストを削除します。削除するホストを選択して、[削除] をクリックします。

ヒント: 複数のホストを選択するには、Ctrl キーを押しながらホスト名を選択します。

ホストのパラメータ

  • [ホスト名]: ネットワークに接続された In-Sight センサの名前を、指定した IP アドレスに対応付けます。入力したホスト名は、In-Sight インタフェースで使用されるすべてのホスト名リストに表示されます。
  • [IP アドレス]: ネットワークに接続された In-Sight システムの IP アドレスを、指定したホスト名に対応付けます。


[エクスプローラリモートサブネットリスト] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

リモートサブネットを設定し、[In-Sight ネットワーク] ペインにサブネットを追加して管理します。

  • [エクスプローラリモートサブネットリスト] ダイアログの設定項目
  • [サブネットの追加/編集] ダイアログの設定項目
  • 関連項目

[エクスプローラリモートサブネットリスト] ダイアログの設定項目

  • [名前]:　[In-Sight ネットワーク] ペインに表示されているように、サブネットの名前を表示します。
  • [IP アドレス]:　リモートサブネットのネットワーク IP アドレスを表示します。
  • [マスク]:　リモートサブネットのサブネットマスクを表示します。
  • [カスタムゲートウェイ]:　必要に応じて、ゲートウェイ IP アドレスを表示します。
  • [追加]:　[サブネットの追加] ダイアログを起動します。ここで、サブネット情報を追加します。
  • [編集]:　[サブネットの編集] ダイアログを起動します。ここで、以前に作成したサブネットを変更することができます。
  • [削除]:　選択したサブネットをリストから削除します。

[サブネットの追加/編集] ダイアログの設定項目

[サブネットの追加] ダイアログは、[エクスプローラリモートサブネットリスト] で [追加] ボタンをクリックすると起動します。[サブネットの編集] ダイアログは、[エクスプローラリモートサブネットリスト] で既存のサブネットを選択して [編集] ボタンを押すか、リスト内で選択したサブネットをダブルクリックすると起動します。

  • [名前]:　[In-Sight ネットワーク] ペインに表示されているように、サブネットのわかりやすい名前を指定します。
  • [IP アドレス]:　リモートサブネットのネットワーク IP アドレスを指定します。
  • [マスク]:　リモートサブネットのサブネットマスクを指定します。
  • [カスタムゲートウェイの使用]:　ネットワークインフラストラクチャがネットワークにルーティングできない場合、サブネットにアクセスするためにカスタムゲートウェイが必要かどうかを指定します。
  • [ゲートウェイ]:　リモートサブネットにアクセスするのに使用するゲートウェイ IP アドレスを指定します。

関連項目

  • POWERLINK 通信
  • POWERLINK ファクトリインタフェース


[オプション] ダイアログ

システムメニュー

In-Sight Explorer GUI リファレンス

[オプション] ダイアログを使用すると、In-Sight Explorer のスタートアップおよびデフォルト GUI 環境をカスタマイズしたり、オフライン In-Sight エミュレータを設定したり、ファイルユーティリティ環境を設定したりすることができます。[オプション] ダイアログは、次のオプション設定から構成されます。

  • [アクセス管理]
  • [エミュレーション]
  • [ファイルユーティリティ]
  • [画像ディスプレイ]
  • [IPsec ルール]
  • [ジョブビュー]
  • [記録]
  • ユーザインタフェース

[オプション] ダイアログを表示するには

  • [システム] メニューで、[オプション] をクリックします。

[オプション] ダイアログの設定項目

[初期値に戻す]

[初期値に戻す] ダイアログを使用すると、個別のオプションを In-Sight Explorer の初期値に戻すことができます。例えば、この機能は、表示解像度を変更したために、特定のダイアログがデスクトップの外に出てしまった場合などに有効です。オプションは、選択するチェックボックスによって、カテゴリごとにリストアするか、または一度にすべてをリストアできます。

注意:
  • 下記の各カテゴリの画面は、デフォルトの設定を示しています。

[アクセス管理] パネル

  • [Windows のログオン時に In-Sight Explorer を起動する]:　このチェックボックスをオンにすると、Microsoft Windows を実行している PC にログオンしたときに、自動的に In-Sight Explorer を起動します。

    注意:　Windows Vista 以降で Windows に標準ユーザとしてログインし、ユーザアカウント制御 (UAC) を無効にしている場合に、[Windows のログオン時に In-Sight Explorer を起動する] オプションを変更しようとすると、[Run As] ダイアログが表示されます。管理者認証を指定して、操作を続行します。

  • [プログラムの終了を確認する]:　このチェックボックスをオンにすると、In-Sight Explorer を終了しようとするたびに確認ダイアログが表示されます。これは、In-Sight Explorer の終了時に、ローカルエミュレータ上のアクティブジョブが失われることを防ぐためです。このチェックボックスをオフにすると、アプリケーションの終了時に確認を求められなくなります。

    注意:　In-Sight ビジョンシステム上のジョブは、In-Sight Explorer を終了しても失われません。ただし、ジョブを保存せずにビジョンシステムの電源を入れ直すと、保存していないデータは失われます。

  • [スタートアップユーザ名]: In-Sight Explorer の起動時に自動ログオンするユーザ名を指定します。デフォルトでは、admin が選択されています。

  • [スタートアップパスワード]: スタートアップユーザ名に対応するパスワードを指定します。デフォルトでは、このフィールドは空白です。

  • [終了時にパスワードを要求する]:　このチェックボックスをオンにすると、In-Sight Explorer を終了しようとするたびにパスワードの入力を求められます。

    注意:　このチェックボックスをオフにしようとすると、パスワードの入力を求められます (デフォルトパスワードは空白です)。

  • [パスワードの設定 ]: [パスワードの変更] ダイアログを開き、In-Sight Explorer 終了時のパスワードを設定します。
注意:

[エミュレーション] パネル

  • [エミュレータを使用する]:　このチェックボックスをオンにすると、In-Sight オフラインエミュレータというオフラインプログラミング環境を使用できるようになります。エミュレータは、In-Sight Explorer の起動とともに動作を開始します。エミュレータを無効にするには、このチェックボックスをオフにします。

    警告:　[エミュレータを使用する] チェックボックスをオフにすると、WriteFTP、WriteImageFTP、制御、またはログ処理を含むすべてのローカル FTP サービスがシャットダウンされます。

  • [モデル]: エミュレータの動作を決定します。ドロップダウンリストには、サポートされるすべての In-Sight ビジョンシステムとウェーハリーダ、およびそれらのビジョンシステムまたはウェーハリーダで使用可能なツールと関数が含まれます。

    注意:　画像取り込み関数の一部の機能 (部分取り込み、照明制御など) は、エミュレータではサポートされていません。In-Sight ビジョンシステム上でこれらの機能を使用したジョブを作成し、そのジョブをエミュレータにロードすることは可能ですが、このとき、セル A0 の AcquireImage 関数が #ERR を報告することがあります。

  • [FTP サーバ接続数]:　エミュレータが同時に受け入れることのできる FTP 接続要求の最大数を定義します (0 ～ 32、デフォルト = 20)。
  • [オフラインプログラミングの問い合わせ番号]:　PC の設定に基づいて自動的に生成されるコード番号です。この問い合わせ番号を使用して、エミュレータのロックを解除するためのオフラインプログラミングキーを取得できます。

  • [オフラインプログラミングのキー]:　In-Sight Explorer がネットワーク上の In-Sight ビジョンシステムをまったく検出しない場合、In-Sight オフラインエミュレータ環境でローカルに In-Sight ジョブを設定するため、オフラインプログラミングのキーをここに入力する必要があります。キーを取得するには、Cognex の Web サイトの In-Sight® キージェネレータのページにアクセスし、画面の指示に従います。

    警告:　オフラインプログラミングキーを入力せずに [オプション] ダイアログを閉じると、問い合わせ番号が変更されます。この場合、ダイアログをもう一度開くには、新しいキーを入手する必要があります。

    注意:
    • Windows Vista 以降で Windows に標準ユーザとしてログインし、ユーザアカウント制御 (UAC) を無効にしている場合に、オフラインプログラミングキーを入力しようとすると、[Run As] ダイアログが表示されます。管理者認証を指定して、操作を続行します。
    • いずれかのバージョンの PC Host 用のオフラインプログラミングラインセンスを購入済みの場合は、これらのライセンスを、In-Sight Explorer 用の有効なオフラインプログラミングキーとして使用できます。
  • [ヘルプ]:　ソフトウェアの登録に関するヘルプ項目を表示します。

[ファイルユーティリティ] パネル

  • [Explorer の FTP ポート]: ファイルを保存したり開いたりするために、In-Sight Explorer がリモート In-Sight ビジョンシステムへの接続を試みるネットワークポートを定義します。In-Sight ビジョンシステムの [ローカルポート] が [Explorer の FTP ポート] と同じ値に設定されていないと、In-Sight Explorer は、バックアップ、リストア、ファームウェアアップデートなどのファイル操作を実行したり、[In-Sight のファイル] ペインにファイルを表示したりすることができません (1 ～ 65535、デフォルト = 21)。
  • [バックアップディレクトリ]: In-Sight ビジョンシステムやエミュレータのバックアップを格納するローカル PC 上のフォルダを定義します。
注意:　[バックアップディレクトリ] のデフォルトのフォルダ位置は、Program Files フォルダから次の場所に移動されており、標準ユーザがアクセスすることができます (In-Sight Explorer 4.5.0 以降)。
  • Windows Vista 以降の場合:　C:\ProgramData\Cognex\In-Sight\In-Sight Explorer x.x.x
  • Windows XP の場合:　C:\Documents and Settings\All Users\Application Data\Cognex\In-Sight\In-Sight Explorer x.x.x
  • [オンラインでもバックアップを行う]: このチェックボックスをオンにすると、ビジョンシステムがオンラインモードであってもそのビジョンシステムをバックアップできるようになります。オフのときは、オンラインビジョンシステムをバックアップすることはできません。この場合、バックアップ操作を進める前に、ビジョンシステムをオフラインにすることを求めるダイアログが表示されます。

[画像ディスプレイ] パネル

  • [露光過少レベル]: [露光過多・過少を表示] がオンのとき、指定した 8 ビット値 (モノクロの In-Sight ビジョンシステムではグレースケール値、カラーの In-Sight ビジョンシステムでは RGB 成分の最大値) 以下のピクセルが青色で表示されます (0 ～ 255、デフォルト 5)。
  • [露光過多レベル]: [露光過多・過少を表示] がオンのとき、指定した 8 ビット値 (モノクロの In-Sight ビジョンシステムではグレースケール値、カラーの In-Sight ビジョンシステムでは RGB 成分 の最大値) 以上のピクセルが赤色で表示されます (1 ～ 256、デフォルト 240)。

[IPsec ルール]

In-Sight ビジョンシステムをプログラムしている PC における IPsec ルールを .ipsec ファイルとしてインポートまたはエキスポートし、設定を共有することができます。

  • [IPsec ルールのインポート]:　PC にインポートする .ipsec ファイルを指定します。テキストフィールドの右側にあるボタンをクリックして、.ipsec ファイルを参照します。
  • [IPsec ルールのエクスポート]:　PC からエクスポートする .ipsec ファイルを指定します。

[ジョブビュー] パネル

  • [スプレッドシートビューをデフォルトにする]:　このチェックボックスをオンにすると、In-Sight Explorer を起動したときに、スプレッドシートビューが表示されるようになります。
  • [ロックされた接続]:　このチェックボックスがオンのときには、既に別のユーザがビジョンシステムまたはエミュレータにログオンしている場合、そのビジョンシステムまたはエミュレータにリモートからログオンすることはできません。
  • [オンライン/オフライン切り替えの際に確認をする]:　このチェックボックスをオンにすると、In-Sight ビジョンシステムのオンライン状態を切り替えようとするたびに確認ダイアログが表示されます。オフにすると、オンライン/オフラインの切り替え時に確認を求められなくなります。
  • [デフォルトの透明度]: 画像やグラフィックスに対するスプレッドシートオーバレイのデフォルトの不透明度を指定します。この値を 0 に設定すると、スプレッドシートオーバレイによって画像やグラフィックスが完全に見えなくなります。値を高くすると、画像やグラフィックスがスプレッドシートを通してより鮮明に表示されるようになります。一時的な変更は [画像] メニューの [オーバレイの透明度] で行うことができます。

注意:　カスタムビューを設定することによって、スプレッドシートのグリッド線を隠したり、表示されるスプレッドシートのサイズや位置、そのほかの特性を調整したりすることができます。

[記録] パネル

[記録] パネルのオプションは、[記録] オプションを初めて実行するときに、すべてのビジョンシステムおよびエミュレータで使用されるデフォルト設定です。個々のビジョンシステムの記録設定を調整するには、[記録/再生のオプション] ダイアログを使用してください。

ヒント:　[記録] パネルは、[記録] オプションを初めて実行する前に、複数のビジョンシステムおよびエミュレータの記録設定を設定するために使用します。例えば、まだ [記録] オプションを実行したことがない複数のビジョンシステムについて、デフォルトの [記録フォルダ] のディレクトリパスを変更することができます。

  • [記録フォルダ]: 画像を保存するためのディレクトリを指定します。
注意:　[記録フォルダ] のデフォルトのフォルダ位置は、Program Files フォルダから次の場所に移動されており、標準ユーザがアクセスすることができます (In-Sight Explorer 4.5.0 以降)。
  • Windows Vista 以降の場合:　C:\ProgramData\Cognex\In-Sight\In-Sight Explorer x.x.x
  • Windows XP の場合:　C:\Documents and Settings\All Users\Application Data\Cognex\In-Sight\In-Sight Explorer x.x.x
  • [最大保存数]:　記録フォルダに保存する画像の最大数。(1 ～ 10,000、デフォルト 10,000)
  • [画像の解像度]:　画像を記録するときのセンサの解像度。記録が完了すると、センサの解像度は [表示画像の設定] ダイアログで設定した元の設定に戻ります。保存する画像の解像度として指定できるのは、フルアクセス、ハーフ (1/2)、クォーター (1/4) です。デフォルトの解像度はフルアクセスです。
  • [ビット深度]:　カラー画像を記録するビット深度を指定します ([16 ビット] または [24 ビット]。デフォルト = [16 ビット])。
  • [ファイル名のフォーマット]:　記録画像のファイル名のフォーマットとファイルの種類。
    • [接頭語]:　記録画像のファイル名の接頭辞。
    • [フォーマット]:　記録画像のファイル名のフォーマット。選択できるフォーマットは、[インデックス] と [日付・時刻] です。
    • [ファイル形式]:　記録画像のファイルの種類。選択できるファイルの種類は、[ビットマップファイル (*.bmp)] と [JPEG ファイル (*.jpg)] です。
    • 例:　[フォーマット] および [ファイル形式] ドロップダウンリストで選択した [ファイル名のフォーマット] オプションに基づいて、記録画像ファイルの命名規則の例を表示します。

[ユーザインタフェース] パネル

  • [言語]:　In-Sight Explorer のインタフェース全体で使用する言語を設定します。変更を有効にするには、In-Sight Explorer を再起動する必要があります。In-Sight Explorer は、英語、日本語、フランス語、ドイツ語、スペイン語、中国語 (簡体字)、および韓国語をサポートしています。
  • [英語シンボリックタグを EasyBuilder で使用]: このチェックボックスをオンにすると、EasyBuilder ジョブのすべてのシンボリックタグを作成できる言語が英語のみになります。この場合、ユーザインタフェースは [言語] パラメータで設定した言語で表示されますが、すべてのシンボリックタグ、位置決めツール、および検査ツールは、デフォルトでは、英語で表示されます。例えば、「Blobs Counting Tool」が追加されると、ツールのシンボリックタグは英語になり (Blob_1.Blob_Count)、デフォルトのツール名も英語になります (Blobs_1)。ジョブ内の既存のツールでこの機能を有効にしても、ツール名は英語に変換されません。
  • [大きいツールバーアイコン]:　このチェックボックスをオンにすると、ツールバーアイコンのサイズが大きくなります。
  • [大きいツリーアイコン]:　このチェックボックスをオンにすると、[In-Sight ネットワーク]、[In-Sight のファイル]、および [パレット] のアイコンのサイズが大きくなります。
注意:
  • [英語シンボリックタグを EasyBuilder で使用] 設定を適切に適用するには、EasyBuilder ビューから [オプション] メニューにアクセスする必要があります。スプレッドシートビューでこの設定を適用しても、この機能は正常に動作しません。この場合、テキストは [言語] パラメータで設定した言語のままで表示されます。
  • [英語シンボリックタグを EasyBuilder で使用] 設定を有効にしてから [取り消し] ボタンをクリックしても、この操作を取り消すことはできません。先に最後に実行した操作を取り消してから、この設定を有効にします。この設定を無効にするには、手動で行う必要があります。


ウィンドウメニュー

メニューバー

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

[ウィンドウ] メニューでは、[In-Sight ネットワーク] ペインで選択された In-Sight デバイスの EasyBuilder ビュー 、スプレッドシートビュー、センサステータスビューを表示できます。また、[ウィンドウ] メニューには、EasyBuilder ビュー、スプレッドシートビュー、またはセンサステータスビューを開いたすべての In-Sight センサおよびエミュレータが一覧表示されます。[ウィンドウ] メニューからセンサを選択すると、そのセンサのビューが表示されます。

注意:EasyBuilder ビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[ウィンドウ] メニューの項目

  • [表示 EasyBuilder ビュー]: EasyBuilder GUI から現在の画像と、その現在の設定を表示します。オンライン/オフラインステータスを示すステータスバーが含まれます。
  • [表示 スプレッドシートビュー]: スプレッドシートビューには、ジョブパラメータがスプレッドシートフォーマットで表示されます。オンライン/オフラインステータスを示す ステータスバーが含まれます。
  • [表示 センサのステータスビュー]: センサステータスビュー には、マシンステータススタックに保存されている情報が表示されます。
  • [アイコンの整列]: 多くのウィンドウを最小化した場合に、[アイコンの整列] オプションを選択すると、最小化されたウィンドウのすべてが作業領域の下部にグループ分けして表示されます。
  • [上下に並べて表示]: 最小化されていないすべてのウィンドウを上下に並べて表示します。
  • [左右に並べて表示]: 最小化されていないすべてのウィンドウを左右に並べて表示します。
  • [重ねて表示]: 最小化されていないすべてのウィンドウを重ねて表示します。

スプレッドシートビュー

[ウィンドウ] メニューでは、[In-Sight ネットワーク] ペインで選択された In-Sight デバイスの EasyBuilder ビュー、スプレッドシートビュー、センサステータスビューを表示できます。また、[ウィンドウ] メニューには、EasyBuilder ビュー、スプレッドシートビュー、またはセンサステータスビューを開いたすべての In-Sight センサおよびエミュレータが一覧表示されます。[ウィンドウ] メニューからセンサを選択すると、そのセンサのビューが表示されます。

注意: スプレッドシートビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[ウィンドウ] メニューの項目

  • [表示 EasyBuilder ビュー]: EasyBuilder GUI から現在の画像と、その現在の設定を表示します。オンライン/オフラインステータスを示すステータスバーが含まれます。このコマンドは、[In-Sight ネットワーク] ペインで、このビューをサポートしているエミュレータまたはセンサが選択されている場合に有効になります。
  • [表示 スプレッドシートビュー]: In-Sight センサの現在の画像と半透明のスプレッドシートオーバレイ、またはカスタムビュー (オプション) を表示します。オンライン/オフラインステータスを示すステータスバーが含まれます。複数のセンサのスプレッドシートビューを同時に表示することができます。
  • [表示 センサのステータスビュー]: センサステータスビュー には、マシンステータススタックに保存されている情報が表示されます。
  • [アイコンの整列]: 多くのウィンドウを最小化した場合に、[アイコンの整列] オプションを選択すると、最小化されたウィンドウのすべてが作業領域の下部にグループ分けして表示されます。
  • [上下に並べて表示]: 最小化されていないすべてのウィンドウを上下に並べて表示します。
  • [左右に並べて表示]: 最小化されていないすべてのウィンドウを左右に並べて表示します。
  • [重ねて表示]: 最小化されていないすべてのウィンドウを重ねて表示します。


EasyBuilder ビュー

[ウィンドウ] メニュー → [表示 EasyBuilder ビュー]

EasyBuilder GUI リファレンス

EasyBuilder ビューは EasyBuilder GUI の中心にあります。ジョブパラメータは、このビューの表示内容に基づいて設定および編集されます。

EasyBuilder ビューは、次の 3 つの部分で構成されています。

  • タイトルバー: ここには、アクティブなジョブのセンサ名とファイル名が表示されます。
  • 表示領域: ここは In-Sight センサからのアクティブな画像で構成されます。
  • ステータスバー: 割り当てられたサイズの割合 (%) としての現在使用可能なジョブサイズ (この値を変更するには [ジョブサイズ制限] ダイアログを使用します) と、アクティブな In-Sight センサのオンライン/オフラインステータスを示します。
注意:
  • ジョブを PC からドラッグ＆ドロップすると、ジョブをセンサに保存するまで、タイトルバーには「EasyBuilder ビュー」と表示されます。ジョブを保存すると、ファイル名が表示されます。
  • 画像のショートカットを表示領域または [In-Sight のファイル] ペインにドラッグすることはできません。ショートカットではなく、元のコピー元画像を目的の場所にドラッグしてください。
  • EasyBuilder は GUI 内には、EasyBuilder ビュー、スプレッドシートビューおよびセンサステータスビューなどの複数のビューを表示することができます。ただし、スプレッドシートビュー、またはセンサステータスビューをクリックすると、GUI は EasyBuilder から選択したビューに対応するインタフェースに切り替わります。
  • 同時に表示できるビューの数は、PC のハードウェア (主に CPU の動作速度とメモリ容量) によって異なります。ジョブが特に複雑である場合は、7 個以上のウィンドウを開くと、メモリのリソースを上回り、予期しない動作を引き起こす可能性があります。


スプレッドシートビュー

[ウィンドウ] メニュー → [表示 スプレッドシートビュー]

In-Sight Explorer GUI リファレンス

In-Sight Explorer のグラフィカルユーザインタフェース (GUI) の主要なコンポーネントは、スプレッドシートです。スプレッドシートは、In-Sight センサから取り込まれたビデオ画像に重ねて表示される、調整可能な半透明のオーバレイです。

スプレッドシートは、セルのブロック操作、セルの編集、セルの参照、関数の挿入などの標準の操作と機能はほかのスプレッドシートアプリケーションに似ています。スプレッドシートは、400 行 (0 ～ 399) と 26 列 (A ～ Z) に配列されたセルのテーブルで編成され、個々のセルは、列文字と行番号によって識別されます。例えば、セル A2 は A 列と 2 行が交差する場所です。

スプレッドシートは、一度に 1 つのセルが設定されます。各セルのコンテンツは数式として定義され、セルに挿入された情報は、単一の数値であっても、複雑なビジョン処理関数であっても、数式の一部とみなされます。セルをハイライトすると、セルが黒い枠で囲まれ、セル内の情報が [ジョブの編集] ツールバーの数式バーに表示されます。セルをクリックすると、そのセルが自動的にアクティブセルになります。

注意:スプレッドシートを右クリックすると、ショートカットメニューが表示され、さまざまなスプレッドシート操作を実行することができます。

スプレッドシートビューは、アクティブジョブを含む半透明のスプレッドシートオーバレイに加え、次の項目から構成されています。

  • In-Sight センサから取り込まれるアクティブな画像
  • 使用可能な割り当て済みセルの数 ([ジョブサイズ制限] ダイアログを使用して値を変更) として現在使用可能なジョブサイズ、およびアクティブな In-Sight センサのオンライン/オフラインステータスとジョブ処理時間を示すステータスバー
  • アクティブなジョブのセンサ名とファイル名を示すタイトルバー
注意:
  • ジョブを PC からドラッグ＆ドロップすると、ジョブをセンサに保存するまで、タイトルバーには「スプレッドシートビュー」と表示されます。ジョブを保存すると、ファイル名が表示されます。
  • 画像のショートカットをスプレッドシートビューまたは [In-Sight のファイル] ペインにドラッグすることはできません。ショートカットではなく、元のコピー元画像を目的の場所にドラッグしてください。
  • 同時に表示できるスプレッドシートビューの数は、PC のハードウェア (主に CPU の動作速度とメモリ容量) によって異なります。ジョブが特に複雑である場合は、11 個以上のウィンドウを開くと、メモリのリソースを上回り、予期しない動作を引き起こす可能性があります。
  • すべての In-Sight センサがスプレッドビューにアクセスできるわけではありません。

スプレッドシートビューの表示

In-Sight センサまたはエミュレータのスプレッドシートビューを表示するには、次のいずれかを実行します。

  • [In-Sight のネットワーク] ペインで対象のセンサまたはエミュレータをダブルクリックします。必要に応じて、[ウィンドウ] メニューの [表示 スプレッドシートビュー] をクリックします。
  • [In-Sight のネットワーク] ペインのセンサまたはエミュレータを右クリックし、表示されたドロップダウンメニューから [表示 スプレッドシートビュー] をクリックします。

注意:　使用する In-Sight センサまたはエミュレータに、既に別のユーザがログオンしている場合は、警告メッセージが表示されます。[はい] をクリックすると、アクセス先のシステムから、ほかのユーザの接続を切り、ログオンプロセスを続行します。[いいえ] をクリックすると、ログオンを中止して、In-Sight Explorer に戻ります。

スプレッドシート

  • スプレッドシートへの情報の入力
  • スプレッドシートセルの編集
  • セルの実行順序
  • 関連項目

スプレッドシートへの情報の入力

マシンビジョンアプリケーションは、数式を組み立てて、それをスプレッドシートのセルに挿入することによって設定されます。数式には、次の 4 種類のデータを含めることができます。

  • 数値
  • テキスト
  • 別のセルへの参照 (絶対参照または相対参照)
  • 関数と特定のパラメータ

注意:In-Sight のスプレッドシートは、最大 4,096 のアクティブセルを含むことができます。それ自身が複数のビジョンデータアクセス関数を挿入する関数 (FindBlobs など) をスプレッドシートに挿入すると、スプレッドシートが制限を超えようとすることがあります。この場合、警告ダイアログは表示されませんが、4,096 の制限を超えるセルは挿入されません。

セルに数値を挿入する

空白のセルを選択して、数値 (例えば、26) を入力します。

セルにテキストを挿入する

空白のセルを選択して、アポストロフィ (”) キーを押します。先頭にアポストロフィの付いたテキストは、数式ではなくテキストラベルとしてアクティブセルに挿入されます。

セルにセル参照を挿入する

セルにセル参照を挿入するには、4 つの異なる方法があります。

  • 空白のセルをダブルクリックした後、参照先のセルをクリックします (これは相対参照を生成します。絶対参照を生成するには、Shift キーを押しながらクリックします)。

  • 空白のセルを選択した後、手動で参照先のセル名を入力します (これは相対参照を生成します。絶対参照を生成するには、文字と数字の前に $ 記号を入力します [例: $C$3])。

  • 空白のセルを選択した後、Ctrl+Shift+A または Ctrl+Shift+R キーを押すと、それぞれ絶対または相対セル参照が挿入されて、セル選択モードになります。
  • 空白のセルを選択した後、[ジョブの編集] ツールバーの [絶対参照] [image] または [相対参照] [image] ボタンをクリックして、セル選択モードに切り替えます。

セルに関数を挿入する

セルに関数を挿入するには、6 つの異なる方法があります。

  • パレットから空白のセルに関数をドラッグします。関数にプロパティシートがある場合には、プロパティシートが自動的に開きます。
  • 空白のセルを選択し、[パレット] 内の関数をダブルクリックします。関数にプロパティシートがある場合には、プロパティシートが自動的に開きます。
  • 空白のセルを選択し、[ジョブの編集] ツールバーの [式] [image] ボタンをクリックします。[関数の挿入] ダイアログが開きます。
  • 空白のセルを選択し、Enter キーまたは等号キーを押します。次に、↑または↓キーを押します。関数ボックスが表示され、関数を入力または選択することができます。Tab キーまたは Enter キーを押して、関数ボックスを閉じます。

  • 空白のセルを選択し、手動で関数の名前を入力して、Enter キーを押すか、または手動で左括弧を入力します。関数にプロパティシートがある場合には、プロパティシートが自動的に開きます。

  • 空白のセルを選択し、数式バーに手動で関数の名前を入力して、Enter キーを押すか、または手動で左括弧を入力します。関数にプロパティシートがある場合には、プロパティシートが自動的に開きます。

注意:可変長の引数リストを持つ関数 (Wizard や WriteEIP など) には、プロパティシートがありません。

数式の確定またはキャンセル

新しい数式または値を確定するには、次のいずれかを実行します。

  • Enter キーを押します。
  • [ジョブの編集] ツールバーの [決定] [image] ボタンをクリックします。

新しい数式または値をキャンセルし、前の式に戻すには、次のいずれかを実行します。

  • Esc キーを押します。
  • [ジョブの編集] ツールバーの [キャンセル] [image] ボタンをクリックします。

テキストが赤色でハイライトされている場合は、修正しないと確定できないエラーが数式に含まれています。

ツールチップとヘルプ情報

ツールチップは、スプレッドシートと数式バーの両方で使用できます。シンタックスを参照するには、関数の括弧内をクリックしてください。

ヒント:カーソルが関数の括弧内にあるときに F1 キーを押すと、その関数の外部ヘルプ項目が表示されます。

数式バーの使用

数式バーは、[ジョブの編集] ツールバーに含まれています。数式バーには、次の 3 つの情報が表示されます。

  • アクティブセル (E4)
  • アクティブセルに含まれている数式または値 (442)
  • アクティブセルのセル状態情報 (if $A$4)

数式バー内をクリックして必要な変更を加えるだけで、アクティブセル内の数式、値、またはラベルを直接編集できます。関数の括弧内をクリックすると、ツールチップが表示され、シンタックスを確認できます。

スプレッドシートセルの編集

個々のセルに含まれる数式を編集するだけでなく、セルを切り取り、コピー、貼り付け、または削除したり、セルのフォーマットを調整したりできます。

注意:
  • スプレッドシートを右クリックすると、ショートカットメニューが表示され、さまざまなスプレッドシート操作を実行することができます。
  • カット & ペースト操作時にエラーが発生した場合、また操作を停止するために [キャンセル] ボタンを押した場合も、切り取ったセルの内容が失われることがあります。この場合は、[取り消し] (Ctrl+Z) を使用すると、切り取ったセルの内容が復元されます。

数値およびテキストの編集

Enter キーまたは等号キーを押して、アクティブセルの数値またはテキストを編集します。数値またはテキストに単純に上書きすることもできますが、この方法では、前の数値またはテキストが消去されます。

セル参照の編集

セル参照を変更する場合は、セル参照を挿入する場合と同じ手順で変更してください。

関数の編集

関数はプロパティシート (使用可能な場合) またはスプレッドシートで編集できます。

  • 関数にプロパティシートが関連付けられている場合、アクティブセルで Enter キーまたは等号キーを押すと、自動的に関数のプロパティシートが開きます。
  • F2 キーを押すと、プロパティシートではなく、アクティブセルで関数を編集することができます。

↑または↓キーを押すと、数式の下に関数ボックスが表示されます。数式内のカーソルの位置を移動するには、←または→キーを使用します。

注意:カーソルの位置に基づいて、数式内の特定の式に対して有効な関数だけが関数ボックスに表示されます。

別の関数を選択するには、必要な関数を入力するか、または選択します。Tab キーまたは Enter キーを押して、関数ボックスを閉じます。

セルの実行順序

ほかのほとんどの標準スプレッドシートと同じように、In-Sight スプレッドシートのセルの実行順序はセルの関数間の関連性と依存関係に基づいて動的に決定されます。 セルの依存関係と実行順序の詳細を参照してください。

関連項目

  • キーボードとマウスのショートカット
  • スプレッドシートの右クリックメニュー
  • 関数の挿入:スプレッドシートに挿入する関数を選択するために使用します。
  • プロパティシート:固定数のパラメータを持つビジョンツールを設定します。
  • 対話型グラフィックスモード:画像上の対話型グラフィックス領域を調整してビジョンツールの特定のパラメータを設定します。
  • セル選択モード:セルのアドレスを覚えることなく、セルをグラフィカルに参照できます。
  • [編集] メニュー:スプレッドシートセルのデータを操作するための機能があります。
  • [フォーマット] メニュー:半透明のスプレッドシートオーバレイを定義するセル、行、および列の表示プロパティを変更できます。
  • [挿入] メニュー:スプレッドシートのアクティブセルにオブジェクトを挿入することができます。
  • #ERR:正しくない数式の結果として表示されるさまざまなエラーメッセージを定義します。


センサのステータスビュー

センサのステータスビュー (マシンステータススタック)

[ウィンドウ] メニュー → [表示 センサのステータスビュー]

In-Sight Explorer GUI リファレンス

マシンステータススタックの In-Sight ビジョンシステムのメモリには、8 つのメモリバッファが割り当てられています。In-Sight Explorer のビジョンシステムのステータスビューには、これらのメモリバッファの内容とともに、In-Sight ビジョンシステムのエラーを診断するために使用される診断記録情報が表示されます。

最初のバッファ (バッファ 0) は現在のマシンステータス情報を格納するために使用されます。PushMSStack 関数が実行されると、現在のマシンステータスがバッファ 0 にロードされ、前のマシンステータス情報は次のバッファに移ります。スタックのすべてのバッファに情報が保存されると、バッファ 7 のデータが破棄されます。In-Sight ビジョンシステムの電源を入れ直すと、スタック内の全てデータがクリアされます。

注意:
  • スタックに保存されているマシンステータスデータにアクセスするには、GetMSBuffer 拡張ネイティブモードコマンド 、またはマシンステータスポートを使用します。
  • In-Sight Explorer がマシンステータスポートを使用しているとき、PC 上のほかのアプリケーションからもマシンステータスポートにアクセスすることができます。
  • マシンステータスポートは、約 10 ～ 15 秒でタイムアウトになります。ステータスのポーリングを停止させたままこの時間が経過が経過すると、接続は切断されます。

ビジョンシステムのステータスダイアログボックス

ビジョンシステムのステータスダイアログボックス内の動作ステータス情報は、以下で構成されます。

  • アクティブなビジョンシステム名を表示するタイトルバー
  • バッファインデックス番号 (0 ～ 7)
  • システムの現在の日付および時間
  • オンライン/オフラインステータス
  • アクティブなジョブのファイル名と場所
  • アクティブなジョブがロードされた日付と時刻
  • In-Sight ビジョンシステムにログオンしているユーザ名
  • In-Sight ビジョンシステムまたはエミュレータへのログオンに使用されているアクティブなエミュレータの名前
  • ユーザデータ (WriteMSStack 関数によって決まります)
  • In-Sight ビジョンシステムのエラーを診断するために使用する情報のログ
注意:
  • ビジョンシステムのステータスダイアログボックスには、マシンステータススタックのすべての内容が表示されるわけではありません。In-Sight ビジョンシステムのモデル番号、ファームウェアやビルドのバージョン、前回のシステム再起動日時、および動作ステータス (IDLE:　In-Sight システムはオンラインですが、ジョブ内のセルは 1 つも実行されていません。 アイドル/BUSY:　In-Sight システムはオンラインで、ジョブ内のセルは現在実行されています。 ビジー/MAINTENANCE:　In-Sight システムはオフラインです。 メンテナンス) を含むすべての内容を表示するには、GetMSBuffer 拡張ネイティブモードコマンドを使用するか、またはマシンステータスポートからアクセスします。
  • PC からジョブファイルをドラッグ＆ドロップした場合、ジョブがビジョンシステムに保存されるまでは、現在のジョブのフィールドには「Drag And Drop Job」が表示されます。
  • ローカル PC のパスは、その PC における絶対パスであり、ある PC のディレクトリの階層がほかの PC では存在しない場合があるため、現在のジョブの PC パスは表示されません。
  • In-Sight ビジョンシステムが Modbus/TCP サーバとして設定されている場合、診断ログにはクライアント接続、クライアント切断、クライアントアイドルタイムアウト、およびクライアント接続拒否/最大接続数制限に関する情報が表示されます。各診断メッセージには、クライアントの日付、時刻、セッション ID (同じ Modbus/TCP クライアント間の診断メッセージをリンクするために使用できる、一意のセッション識別子)、および IP アドレスが含まれます。


ヘルプメニュー

メニューバー

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

[ヘルプ] メニューを使用すると、In-Sight Explorer のヘルプおよびサポートサービスと、バージョンビルド情報および In-Sight センサのハードウェアの詳細情報にアクセスすることができます。

[ヘルプ] メニューの項目

  • [In-Sight Explorer のヘルプ]: この HTML ヘルプファイルを開きます。
  • [In-Sight リリースノート]: In-Sight Explorer と In-Sight ファームウェアのリリースノートを表示します。
  • [オンラインサポート]: Web ブラウザで、In-Sight サポートセンターの Web サイトを開きます (インターネットへのアクセスが必要です)。
  • [In-Sight Explorer について]: In-Sight Explorer のバージョンおよびビルド情報と、ネットワークで検出された各 In-Sight センサに関するハードウェアおよびネットワーク詳細情報 (Explorer ホストテーブルのエントリなど) を表示します。

スプレッドシートビュー

[ヘルプ] メニューを使用すると、In-Sight Explorer のヘルプおよびサポートサービスと、バージョンビルド情報および In-Sight センサのハードウェアの詳細情報にアクセスすることができます。

[ヘルプ] メニューの項目

  • [In-Sight Explorer のヘルプ]: この HTML ヘルプファイルを開きます。
  • [In-Sight リリースノート]: In-Sight Explorer と In-Sight ファームウェアのリリースノートを表示します。
  • [オンラインサポート]: Web ブラウザで、In-Sight サポートセンターの Web サイトを開きます (インターネットへのアクセスが必要です)。
  • [In-Sight Explorer について]: In-Sight Explorer のバージョンおよびビルド情報と、ネットワークで検出された各 In-Sight センサに関するハードウェアおよびネットワーク詳細情報 (Explorer ホストテーブルのエントリなど) を表示します。


[In-Sight Explorer について] ダイアログ

ヘルプメニュー

In-Sight Explorer GUI リファレンス

[In-Sight Explorer について] ダイアログには、次の 2 つの主な情報グループが表示されます。

  • In-Sight Explorer アプリケーションのコードコンパイル(ビルド)の詳細
  • サブネットで検出された In-Sight センサおよびエミュレータ、ならびに Explorer のホストテーブルで定義されているセンサのハードウェア、ファームウェア、および設定の詳細

弊社テクニカルサポートに問い合わせる場合に、このダイアログの情報が必要になることがあります。

[In-Sight Explorer について] ダイアログを表示するには

  • [ヘルプ] メニューで、[In-Sight Explorer について] をクリックします。

In-Sight Explorer に固有の情報

  • In-Sight Explorer アプリケーションのバージョン番号(メジャー、マイナー、およびリビジョン)[3.4.2] [4.1.0]
  • In-Sight Explorer アプリケーションの付加的なビルド番号 [2431] [1821]

ネットワーク上の In-Sight センサに固有の情報

以下のセクションでは、上記の表の最初のセンサを例として使用しています。

  • センサのホスト名 [is5100_010203]
  • センサの種類(特定のモデルの In-Sight センサ、エミュレータを実行している PC、または Explorer ホストテーブルエントリであることを示します) [5100] [5100]
  • センサで動作している特定のファームウェアのバージョン番号(メジャー、マイナー、リビジョン、およびビルド番号)[3.40.02(464)] [4.01.00 (344)]
  • センサの MAC アドレス [00-d0-24-00-5c-a6]
  • センサの IP アドレス [192.168.11.2] [192.168.0.1]
  • センサのシリアル番号 [Z44200026]


設定ペイン

EasyBuilder GUI リファレンス

設定ペインは自動的に更新され、選択したアプリケーションステップのパラメータが表示されます。大半のステップでは、パラメータをある特定の順序で設定する必要があります。ジョブ開発中の各ステップに関する手順については、パレットの [ヘルプ] タブを参照してください。

注意: アクセスレベル、実行中のタスク、接続先がセンサかエミュレータか、In-Sight センサがオンラインかどうかなどによっては、設定ペインのコントロールがグレーアウトされることがあります。

設定ペインの使用

設定ペインは、ステップにおけるユーザの操作をガイドするように設計されています。ペインの左側には一般的なパラメータが表示され、右側に進むにつれて、詳細なパラメータを設定できます。

設定ペインには、そのときに使用可能なコントロールのみが表示されます。例えば、[通信] ステップでは、[メーカー] および [プロトコル] ドロップダウンリストは [デバイス] ドロップダウンリストから何か選択されるまで表示されません。同様に、位置決めツールや製品の検査ツールのパラメータは、そのツールがジョブに追加されるまで表示されません。

さらに、追加したツールによっては、フィードバックテーブルやグラフなどの視覚補助 (アプリケーションのパラメータ設定を支援するため) や [制限範囲] タブ (合格/不合格条件の設定のため) が [製品の位置決め] ステップや [製品の検査] ステップのペインに表示されることもあります。

ジョブの構築後、これらのステップには任意の順序で再アクセスできるので、目的の結果が得られるまで、ジョブパラメータを変更したり、微調整したりすることが可能です。


ステータスバー

ユーザインタフェース

In-Sight Explorer GUI リファレンス

  • EasyBuilder ビュー
  • スプレッドシートビュー

EasyBuilder ビュー

ステータスバーは、各 EasyBuilder ビューの表示領域の下に表示されます。そのときに実行されているタスクに応じて、ステータスバーには、そのときの画像についてのピクセル値情報およびセンサの接続ステータス、ジョブサイズ、I/O ステータス、またはオンライン/オフラインステータスに関するメッセージが表示されます。

画像ステータス

ステータスバーには、ピクセル値情報のほか、画像の記録/再生情報が表示されることがあります。

ステータスバーのフィールド | 説明
 | 画像上でマウスをスクロールすると、ステータスバーの左側に、その画像についてのピクセル値情報が表示されます。
 | 画像を記録しているときは、ステータスバーの左側には、記録フォルダ、Good フォルダ、または Bad フォルダのディレクトリパスと、そのとき記録している画像名が表示されます。
 | 記録した画像の再生中は、ステータスバーの左側には、再生中の画像名と再生フォルダのディレクトリパスが表示されます。
 | 現在使用可能なジョブサイズを、割当てられたサイズのパーセンテージで表示します。数値を変更するには、[ジョブサイズ制限] ダイアログを使用します。

接続ステータス

各 In-Sight センサは、1 度に 1 つの接続のみを許可します。PC 上の別のアプリケーションや、センサにログオンしてきた別ユーザによって、接続がが切断されることがあります。このときステータスバーには、「…　からのユーザ admin はすでにログオンしています」というメッセージが表示されます。EasyBuilder は定期的にセンサへの再接続を試み、ステータスバーにはその進行状況が表示されます (例えば「再接続待機中」や「接続中」)。センサがネットワークに接続していない場合、ステータスバーにはネットワークエラーなどのほかのエラーメッセージが表示されることがあります。

I/O ステータス

I/O ステータスバーには、ビジョンシステムと CIO-MICRO、CIO-MICRO-CC、またはCIO-WENET Ethernet I/O モジュール間の EtherNet/IP 接続ステータスが表示されます。

ステータスバーのフィールド | 説明
 | 「I/O OK」が表示されている場合、モジュールへの接続は正常に動作しています。
 | 「I/O Not Responding」が表示されている場合、モジュールへの接続は失われています。診断情報の詳細については、センサスのテータスビューを参照してください。

オンライン/オフラインステータス

ステータスバーの右側には、常に In-Sight センサのオンラインまたはオフラインステータスに関する情報が表示されます。

ステータスバーのフィールド | 説明
 | 「オフライン」が表示される場合、In-Sight センサは現在オフラインです。
 | 「ライブ」が表示される場合、In-Sight センサは EasyBuilder ユーザインタフェース ([画像の設定] 設定ペインの、EasyBuilder ツールバー、または [画像] メニュー) で [ライブビデオ] に設定されています。センサのレンズと視野の調節を行うとき、In-Sight センサは使用するライブ画像を表示します。
 | 「オンライン」が表示される場合、In-Sight センサは現在オンラインモードで作動しています。
 | 「通信オンライン?」が表示される場合、In-Sight センサは EasyBuilder ユーザインタフェースによってオンラインモードに設定されましたが、通信プロトコル (ProfiNET、EtherNet/IP、ネイティブモードなど) によってセンサはオフラインのままになっています。例えば、ネイティブモードで、In-Sight センサをオフラインにする Set Online コマンドの SO0 が発行されました。ビジョンシステムをオンラインにするには、Set Online コマンドの SO1 を In-Sight センサに送信する必要があります。
 | 「ディスクリートオンライン?」が表示される場合、In-Sight センサは EasyBuilder ユーザインタフェースによってオンラインモードに設定されていますが、オンライン/オフラインタイプとして設定されたディスクリート入力ラインが Low (0) に設定されています。ディスクリート入力信号の状態が High (1) になると、In-Sight センサはオンラインモードになります。

ヒント:　 [EasyBuilder] ツールバー、または実行ジョブの設定ペインのいずれかでオンライン/オフラインボタン [image] をクリックすると、オンラインとオフラインのステータスが切り替えられるようになります。

スプレッドシートビュー

ステータスバーは、各スプレッドシートビューの最下部に表示されます。ステータスバーには 3 つの部分があり、表示されているスプレッドシートビューに関する情報を、実行中の操作に応じて表示します。

セルと画像のステータス

スプレッドシートのオーバレイがアクティブかどうか、また 対話型グラフィックスモードになっているかどうかに応じて、ステータスバーには個々のセルに関する情報、ピクセル値情報、または画像に関する参照情報が表示されます。ステータスバーには、画像取り込み時間と画像の記録/再生情報も表示されます。

ステータスバーのフィールド 説明

スプレッドシートオーバレイが表示されている場合、関数またはデータを含んでいるセルの上でマウスをスクロールすると、その関数またはデータが左側に表示されます。

注意:[カスタムビュー]では、情報は表示されません。

スプレッドシートオーバレイが非表示の場合、画像上でマウスをスクロールすると、ステータスバーの左側にその画像についてのピクセル値情報が表示されます。

対話型グラフィックスモードの場合、ステータスバーの左側には、領域の位置、サイズ、回転およびカーブなどの対話型グラフィックス関連の情報が表示されます。

画像の取り込みによってスプレッドシートが更新された場合、ステータスバーにジョブ処理時間 (ミリ秒単位) が表示されます。

注意:
  • センサフィルムストリップの処理時間もジョブの処理時間に含まれています。
  • ステータスバーと GetAllTime 関数は、[ジョブのプロファイル] ダイアログとは別に時間を計算します。また、[ジョブのプロファイル] ダイアログでは結果のグラフィックスの構築についても説明します。ほかの 2 つのはこれを行いません。

画像を記録しているときは、ステータスバーの左側には、記録フォルダ、Good フォルダ、または Bad フォルダのディレクトリパスと、そのとき記録している画像名が表示されます。

記録した画像の再生中は、ステータスバーの左側には、再生中の画像名と再生フォルダのディレクトリパスが表示されます。

現在使用可能なジョブサイズを、使用可能で割当て済みのセルの数で表示します。数値を変更するには、[ジョブサイズ制限] ダイアログを使用します。

接続ステータス

ほかの PC や In-Sight コンソールのユーザが 1 つの In-Sight センサにログオンして、接続が切断された場合、In-Sight Explorer は定期的にセンサへの再接続を試みます。「… からのユーザ admin はすでにログオンしています」というメッセージは、別のユーザまたはアプリケーションがセンサにログオンしていることを示します。各センサには 1 度に 1 つの接続しか許可されていないため、このメッセージが表示されたときには、別の PC、または同じ PC 上で実行している別のアプリケーションがセンサに接続している可能性があります。センサがネットワークに接続していない場合、ステータスバーにはネットワークエラーなどのほかのエラーメッセージが表示されることがあります。

I/O ステータス

I/O ステータスバーには、ビジョンシステムと CIO-MICRO、CIO-MICRO-CC、またはCIO-WENET Ethernet I/O モジュール間の EtherNet/IP 接続ステータスが表示されます。

ステータスバーのフィールド | 説明
 | "I/O OK" が表示されている場合、モジュールへの接続は正常に動作しています。
 | "I/O Not Responding" が表示されている場合、、モジュールへの接続は失われています。診断情報の詳細については、センサスのテータスビューを参照してください。

オンライン/オフラインステータス

ステータスバーの右側には、常に In-Sight センサのオンラインまたはオフラインステータスに関する情報が表示されます。

ステータスバーのフィールド | 説明
 | 「オフライン」が表示される場合、In-Sight センサは現在オフラインです。
 | 「ライブ」が表示される場合、In-Sight センサは In-Sight Explorer ユーザインタフェース ([ジョブの表示] ツールバーまたは [画像] メニュー) で [ライブビデオ] に設定されています。センサのレンズと視野の調節を行うとき、In-Sight センサは使用するライブ画像を表示します。いずれかのボタンを押すと、ライブビデオを終了してスプレッドシートに戻ります。
 | 「オンライン」が表示される場合、In-Sight センサは現在オンラインモードで作動しています。
 | 「通信オンライン?」が表示される場合、In-Sight センサは In-Sight Explorer ユーザインタフェースによってオンラインモードに設定されましたが、通信プロトコル (ProfiNET、EtherNet/IP、ネイティブモードなど) によってセンサはオフラインのままになっています。例えば、ネイティブモードで、In-Sight センサをオフラインにする Set Online コマンドの SO0 が発行されました。ビジョンシステムをオンラインにするには、Set Online コマンドの SO1 を In-Sight センサに送信する必要があります。
 | 「ディスクリートオンライン?」が表示される場合、In-Sight センサは In-Sight Explorer ユーザインタフェースによってオンラインモードに設定されていますが、オンライン/オフラインタイプとして設定されたディスクリート入力ラインが Low (0) に設定されています。ディスクリート入力信号の状態が High (1) になると、In-Sight センサはオンラインモードになります。

ヒント:　[ジョブの表示] ツールバーでオンライン/オフライン [image] ボタンをクリックすると、オンラインとオフラインのステータスが切り替えられるようになります。


TestRun™

In-Sight Explorer GUI リファレンス

TestRun™ は、マシンビジョンアプリケーションが想定されるパラメータの範囲内で動作していることを確認するのに使用します。TestRun は、In-Sight ビジョンシステムでテストを実行し、その結果を想定される値と比較します。

注意:　TestRun を使用できるのは、フルアクセス権限を持つユーザのみです。

TestRun は、In-Sight ビジョンシステムに関する次のテストから構成されます。

  • 限界テスト: パラメータのリストを参照して、現在の値が、該当するパラメータに対して設定されている上限値と下限値の間に収まっているかどうかを判別します。このパラメータ値を設定するには、ジョブ内のオペレータ I/F 関数、ジョブに読み取られたディスクリート入力値、または通信プロトコルを介して外部デバイスから送信された値を使用します。
  • 画像テスト: 該当する品質の画像 (「良好」および「不良」) のセットをビジョンシステムに送信し、各画像の現在のジョブ結果が想定される結果と一致しているかどうかを判別します。
  • ハードウェアテスト: ビジョンシステムが取り込んだ画像の品質を想定される画像品質と比較し、カメラの位置、フォーカス、照明などが変化したかどうかを判別します。

In-Sight ビジョンシステムをテストする理由

マシンビジョンアプリケーションは非常に複雑であり、オペレータが調整可能なパラメータ、相互に関係する検査ツール、および想定される結果に影響を与える環境変数が多数存在します。In-Sight ビジョンシステムをテストすることは、システムの一部分に変更を加えてもほかの部分の動作には影響を与えないことを保証する「ベースライン」を提供することになります。例えば、日中に窓から絶えず差し込む環境光によって露出が過度になり、想定される結果に影響を与える場合があります。

製造現場の工場マネージャは、TestRun を使用することによって、ビジョン検査システムが欠陥を検出し、良好な部品を不合格にしていないことを確認することができます。また、ビジョンシステムのエンジニアは、TestRun を使用することによって、システムに新しいツールを追加したときの性能を即座に確認することができます。さらに、メンテナンス技術者は、TestRun を使用することによって、パラメータの調整具合を即座にチェックすることができます。このため、ある領域で行った調整が、そのほかのツールに問題を引き起こしていないかどうかを確認することができます。

TestRun の設定

TestRun では、次の前提が必要です。

  • マシンビジョンアプリケーションは既に開発済みで、.job ファイルとして In-Sight ビジョンシステムに保存されている。
  • In-Sight Explorer 内で、ビジョンシステムへの接続が確立されており、.job ファイルがロードされている。
  • アプリケーションで使用する画像を含む画像データベースが作成されている。

注意:　画像データベースに、「良好」画像 (合格した画像) および「不良」画像 (不合格の画像) の両方の例が含まれているのが理想的です。TestRun は、さまざまなファイル規格構造を持つ画像データベースで動作可能です。ただし、TestRun を起動する前に、画像を「良好」および「不良」のフォルダにソートしておくと、それ以降のプロセスが単純化されます。

EasyBuilder ビューおよびスプレッドシートビューで開発したジョブ

In-Sight Explorer には、In-Sight マシンビジョンアプリケーション (.job ファイル)　の開発用に、EasyBuilder ビューおよびスプレッドシートビューという 2 つの異なるプログラミング環境が用意されています。TestRun は、いずれの環境で開発された .job ファイルでも動作します。ただし、使用した開発環境に応じて、TestRun の設定には多少の違いがあります。例えば、TestRun は、参照としてシンボリックタグを基にしています。EasyBuilder 開発環境では、シンボリックタグは、ジョブが構築されたときに自動的に作成されます。一方、スプレッドシート環境では、通常セル参照が使用されます (TestRun には、シンボリックタグを自動的に作成する機能があります)。

以下のトピックでは、それぞれの開発環境での TestRun の構成および設定を説明しています。

  • TestRun — EasyBuilder ビュー
  • TestRun — スプレッドシートビュー


TestRun - EasyBuilder ビュー

In-Sight Explorer GUI リファレンス

対象となる In-Sight ビジョンシステムに接続し、該当する .job ファイルをビジョンシステムにロードしたら、TestRun の設定を開始する必要があります。TestRun を設定するには、[TestRun セットアップ] ダイアログを使用します。ここでは、TestRun をプログラムするための一連の画面がステップ単位で表示されます。ダイアログの左側にはナビゲーションペインが表示されており、ここで設定画面のいずれかを選択できます。

注意: TestRun の初期設定が完了した後に、いずれかのステップを再度確認するには、ナビゲーションペインでそのステップを選択します。

  • [画像データベースフォルダ]
  • [バリアントの設定]
  • [ジョブ/バリアント] - [アクションのセットアップ]
  • [ジョブ/バリアント] - [リミットテスト]
  • [ジョブ/バリアント] - [画像の選択]
  • [ジョブ/バリアント] - [欠陥テスト]
  • [ハードウェアテスト] - [アクションのセットアップ]
  • [ハードウェアテスト] - [テスト]
  • [クリーンアップアクション]

[TestRun セットアップ] ダイアログを設定したら、[パレット] に戻り、次のボタンを使用してそれぞれの処理を行います。

  • [新規]: 新しい TestRun テストを作成します。
  • [設定]: [TestRun セットアップ] ダイアログを起動します。
  • [実行]: 既存の TestRun テストを実行します。
  • [修復]: 壊れたテストまたは値を修復します。
  • [インポート]: 以前に作成したテストをインポートします。
  • [エクスポート]: テストをエクスポートします。
  • [バッチ実行]:TestRun を設定して .job ファイルのバッチを実行する際に使用する [TestRun バッチ実行] ダイアログを開きます。

注意:　アプリケーションステップの [位置決め] または [検査] では、TestRun のボタンは無効です。

TestRun を表示するには

  1. [パレット] で、[TestRun™] タブをクリックします。

注意:　 [パレット] が表示されない場合は、[表示] メニューから [パレット] を選択します。

  2. 　[設定] ボタンをクリックして、[TestRun セットアップ] ダイアログを起動します。
  3. すべての [TestRun セットアップ] ダイアログのステップを設定したら、 [image] [パレット] の [TestRun] タブにある [実行] ボタンをクリックして、テストを実行します。

注意:　 [TestRun セットアップ] ダイアログの設定を完了したら、[パレット] で使用できるすべてのボタンが表示された右クリックメニューが選択できるようになります。さらに、テストの特定のセクションからテストを実行する機能も使用できるようになります (例えば、ジョブテストを実行せずにハードウェアテストから開始する、など)。

[画像データベースフォルダ]

TestRun を EasyBuilder ビューで使用している場合、[TestRun セットアップ] ダイアログの最初のステップで表示される画面は、[画像データベースフォルダ] です。[画像データベースフォルダ] ステップでは、テストを作成するのに使用される格納画像へのリンクを生成します。

このステップでは、テスト画像データベースへのパスを生成します。ディレクトリパスでは、次のいずれかのフォーマットを使用する必要があります。

  • C:\TestRun\BracketJob
  • file:///\\TestRun\BracketJob
  • ftp://TestRunServer/BracketJob
  • ftp://10.28.127.73/BracketJob

画像はすべて、1 つの共通のルートフォルダに格納する必要があります。画像が複数のフォルダに格納されている場合は、すべての画像とそのサブフォルダが含まれているフォルダを選択します。TestRun が各種ファイル構造に対応できる場合は、次のタイプの構造を使用することを推奨します。

このタイプの構造を使用すると、「画像データベース」フォルダが選択されます。

最後に、[未知の画像] ドロップダウンメニューを設定します (無視、Pass と仮定、Fail と仮定、デフォルト= 無視)。[未知の画像] ドロップダウンを使用して、[画像の選択] ステップでは明示的に TestRun に追加されなかった画像の、TestRun による処理方法を決定します。ドロップダウンを [無視] に設定すると、設定されていない画像を TestRun で単純に無視することができます。ドロップダウンを [Pass と仮定] に設定すると、画像に対するジョブは TestRun で成功したものとみなされます。ドロップダウンを [Fail と仮定] に設定すると、画像に対するジョブは TestRun で失敗したものとみなされます。

TestRun 画像データベースで使用するフォルダの選択

  1. [参照] ボタンをクリックします。
  2. [フォルダーの参照] ダイアログで、保存先の画像フォルダに移動して選択します。フォルダを選択してから [OK] ボタンをクリックします。

注意:　 既に画像フォルダにアクセスしている場合は、ドロップダウンメニューから選択できます。

  3. 必要に応じて、画像ディレクトリにアクセスするためのユーザ名とパスワードを入力します。

注意:　 TestRun の [画像データベースフォルダ] 設定時に、ジョブの開発者が自分自身の特定のユーザ認証を使用して、TestRun が別のアプリケーションで使用するフォルダにアクセスした場合 (例えば、Windows Explorer を使用して、ネットワークフォルダの画像を表示する場合など) に、別のユーザ認証が指定されている場合 (例えば、ライン上のオペレータが使用する汎用のユーザ名とパスワードなど)、TestRun はそのフォルダにアクセスすることはできません。この状態から復旧するには、フォルダにアクセスしているアプリケーションを閉じてから、[TestRun セットアップ] ダイアログを閉じて再度開きます。

  4. 必要に応じて、ドメインの情報を入力します。
  5. [次へ] ボタンをクリックして、TestRun の設定を続行します。
  6. このステップから抜けると、TestRun は、自動的に .jpg および .bmp 画像ファイル用の画像ディレクトリを検索します。
注意:
  • 以前にこのステップを設定済みの場合、TestRun は、ディレクトリに格納されているファイルに関する情報を保持します。画像の場所が変更されると、画像の場所を基準にしたパスに基づいて画像を照合し、照合した画像ごとにそのプロパティを転送します。
  • フォルダが生成されると、ドロップダウンメニューの下に次の項目が表示されます。フォルダ内の画像の総数、以前に [ジョブ]　→ [画像の選択] 画面で設定した画像の数、以前に設定した際にはフォルダ内に存在していたが、現在は存在していない画像の数、および最後に設定してからフォルダに新しく追加された画像の数。

[バリアントの設定]

通常 1 つのジョブには、1 つ以上の検査が含まれています。ジョブ内のそれぞれの検査は、ジョブバリアントとみなされます。例えば、以降何度もジョブを変更するのを避けるために、複数の製品を処理するようにジョブを作成するとします。この場合、ジョブ内のそれぞれの検査は、ジョブバリアントとみなされます。

通常、外部入力 (例えば、PLC からのコマンド) によって複数のバリアントを選択します。各バリアントには、独自のビジョンツールセット、別のサーチ領域、別の露光設定値などがあります。TestRun では、ジョブ内のすべてのバリアントをテストできます。

注意:　 各ジョブバリアントは、個別に設定します。

ジョブバリアントの追加

  1. デフォルトでは、「ジョブ」という名前のバリアントが自動的に追加されます。

注意:　 名前を変更するには、対象のバリアントを選択し、[名前の変更] ボタンをクリックしてから、新しい名前を入力します。名前を変更したら、設定ステップペインにある名前が自動的に更新されます。

  2. [追加] ボタンをクリックして、新しいバリアントを作成します。
  3. [次へ] ボタンをクリックして、TestRun の設定を続行します。

ジョブバリアントの並べ替え

注意:　 バリアントの順序を変更すると、TestRun テストの実行順序が変更されます。

  1. バリアントを選択します。
  2. 目的の方向に応じて、[上に移動] または [下に移動] のいずれかのボタンをクリックします。
  3. [次へ] ボタンをクリックして、TestRun の設定を続行します。

ジョブ/バリアント - アクションのセットアップ

テストを開始するには、TestRun でジョブの一部のパラメータを設定し、実行する特定のバリアントを設定する際にオペレータが実行する動作をコピーします。通常、ジョブに複数のバリアントがある場合は、設定の一部を、選択したバリアント用のジョブに合わせる必要があります。TestRun で特定のバリアント用の画像を処理するには、最初にそれに応じてジョブの状態を設定する必要があります。[アクションのセットアップ] のステップでは、選択したバリアントの画像に必要なパラメータを設定します。

[アクションのセットアップ] 画面は、2 つの列から構成されます。1 つは [シンボル] 列で、ここにはシンボリックタグ付きジョブの設定値がすべて表示されます。もう 1 つは [アクションのセットアップ] 列で、ここには TestRun で設定するジョブのパラメータ設定値がすべて表示されます。

ジョブを設定して現在のバリアントをテスト

  1. [シンボル] 列のリストからパラメータ設定を選択します。必要に応じて、プラス記号をクリックし、リストを展開します。
  2. 設定を有効にするには、設定の横にあるチェックボックスをオンにします。[アクションのセットアップ] 列に設定が自動的に入力されます。
  3. 設定を有効にして [アクションのセットアップ] 列でその設定を選択すると、2 つの列の下に設定のエディットコントロールが表示されます。
  4. 必要に応じて、設定を調整します。
  5. 設定が複数ある場合は、[上に移動]/[下に移動] ボタンを使用して、設定を実行順に並べます。TestRun では、この画面に表示されている順序に従って、設定操作を実行します。
  6. [次へ] ボタンをクリックして、TestRun の設定を続行します。

ジョブ/バリアント - リミットテスト

マシンビジョンアプリケーションには多数のパラメータが用意されており、これらは必要に応じてマシンオペレータやメンテナンス技術者が調整できます。ビジョンアプリケーションの開発者は、TestRun のリミットテストを使用して、テストする調整可能なパラメータの選択、そのパラメータの上限値および下限値の設定、およびそのパラメータが設定した限界値内に収まっているかどうかの判別を行うことができます。例えば、開発者はシステムを引き続き動作させるために、TestRun のハードコーディングされた限界値をオペレータや技術者が柔軟に調整できるように設定することができます。さらに、パラメータが範囲を外れたことを確認することもできます。

[リミットテスト] 画面では、編集可能なパラメータ限界値に関するテストを設定できます。この画面は、2 つの列から構成されています。1 つは [シンボル] 列で、ここにはシンボリックタグ付きジョブの設定値がすべて表示されます。もう 1 つは [リミットテスト] 列で、ここには TestRun でテストするジョブのパラメータ設定値がすべて表示されます。

限界をテストするための変数の選択と設定

  1. [シンボル] 列のリストからパラメータ設定を選択します。必要に応じて、プラス記号をクリックし、リストを展開します。
  2. 設定を有効にするには、設定の横にあるチェックボックスをオンにします。[リミットテスト] 列に設定が自動的に入力されます。
  3. 設定を有効にして [リミットテスト] 列でその設定を選択すると、2 つの列の下に設定のエディットコントロールが表示されます。
  4. 必要に応じて、設定を調整します。使用可能なテストのタイプは、編集可能なパラメータのタイプに応じて決まります。
  • EditInt 関数:　[Is In Range]
  • EditFloat 関数:　[Is In Range]
  • EditString 関数:　[Is Equal]
  • ListBox 関数:　[Is Equal]
  • CheckBox 関数:　[Is Equal]
  5. [次へ] ボタンをクリックして、TestRun の設定を続行します。

ジョブ/バリアント - 画像の選択

この画面では、特定のバリアントのテスト時に使用される画像を選択し、「良好」または「不良」のいずれかとして定義します。この場合、「良好」画像の状態は合格で、「不良」画像の状態は不合格です。

注意:　 画像はバリアント内で共有できます。

このバリアントの画像を選択し、画像を「良好」または「不良」として定義します。

  1. ツリーコントロールを使用して、画像のディレクトリを展開します。
  2. ディレクトリに「良好」および「不良」画像が混在して含まれている場合に個別の画像を選択するには、その画像をオンにしてから、ディレクトリの下にあるセレクタを使用し、[良好] または [不良] として定義します。必要に応じて、画像に関するコメントを追加します。
  3. ディレクトリが「良好」および「不良」画像を含む別々のディレクトリに分割されている場合は、トップレベルをオンにしてそのグループ内にあるすべての画像をオンにし、トップレベルで同じ分類 ([良好] または [不良]) を共有します。
  4. [次へ] ボタンをクリックして、TestRun の設定を続行します。

ジョブ/バリアント - 欠陥テスト

[欠陥テスト] 画面では、画像とそれに対応して想定される欠陥が互いに関連付けられており、データベース内の各画像に対して、想定される結果を示すデータベースが作成されています。この画面で欠陥テストを設定するには、各画像に存在する欠陥 (ある場合) を選択して、その欠陥をジョブのパラメータの想定される結果に関連付けます。

初期のデフォルト設定では、各画像に対して [ジョブ FAIL] という欠陥が存在しています。これは、「不良」画像として指定されたすべての画像に対して自動的にオンになります。欠陥がチェック (オン) されることは、その画像に欠陥が存在することを示します。欠陥テストは、ビジョンアプリケーションが画像の合格または不合格を誤って判定した理由を特定するのに役立ちます。大部分のビジョンアプリケーションでは、1 つの画像に対して複数の検査が実行され、それを総合して全体の合格/不合格の結果が生成されます。ビジョン設計者は、TestRun を使用すると、個別の画像の合格/不合格を判定できるだけではなく、特定の欠陥を想定して実際に検出することができます。

例えば、穴が欠落しているために部品が「不良」と判定された場合、TestRun では、実際に部品に穴が欠落しているとジョブで判定されたために、その部品が不合格になったことを確認するのに役立ちます。フィクスチャとして使用したツールが、穴が欠落しているために部品を不合格と判定したとします。これは、ツールのサーチ領域が穴が欠落していることを特定して画像を取り込むのに十分な大きさを持っていたからで、元々このツールは穴の欠落を特定するためのツールではなかった場合、ジョブのロジックは正常には実行されておらず、TestRun はその不一致を特定するのに使用できます。

注意:　 [欠陥テスト] 画面に移動すると、現在選択されているバリアントに対して設定操作が実行され、ジョブの状態が適切に設定されているかどうかが確認されます。

テストする欠陥の定義

  1. 画像を選択します。
  2. デフォルトの欠陥 [ジョブ FAIL] を設定します。
  3. 必要に応じて別の欠陥を追加し、それに対して想定される結果を定義します。

画像の選択

  1. 処理を開始するには、最初に [画像] グループボックスにある画像再生ボタンを使用して、画像を選択します。[次の画像] ボタンをクリックして、画像を進めます。

注意:　 TestRun では、[画像の選択] ステップで定義した画像が使用されます。

  2. [画像] グループボックスおよび　EasyBuilder ビューに画像が表示されます。 画像とその名前が含まれるフォルダが、画面上部のドロップダウンに表示されます。
  3. 以前に定義した欠陥に対して想定される結果も更新されます。

欠陥 [ジョブ FAIL] の想定される結果の設定

  1. デフォルトでは、欠陥 [ジョブ FAIL] が自動的に追加されて有効になります (チェックボックスがオンになります)。欠陥 [ジョブ FAIL] では、ジョブ全体がエラーを返すかどうかを決定するための想定される結果が定義されます。
  2. 欠陥 [ジョブ FAIL] を定義するには、[欠陥] グループボックスで、「次の場合、欠陥　"ジョブ FAIL"　が存在します」テキストの下にあるドロップダウンメニューを使用し、該当するシンボリックタグを選択します (デフォルトでは、「<ジョブ PASS/FAIL>」が選択されています)。[ジョブ FAIL] はシンボリックタグではありませんが、[<ジョブ PASS/FAIL>] のセルとして設定されたセルをテストします。
  3. 選択したシンボリックタグの [テストタイプ] ドロップダウンメニューを適切に設定します。

別の欠陥の追加および想定される結果の定義

  1. [追加] ボタンをクリックします。
  2. デフォルトの名前が「欠陥」である欠陥が追加されます。デフォルトでは、新しく追加した欠陥が有効にされます (チェックボックスがオンになります)。

注意: 既に欠陥が追加されており、デフォルトの名前のままである場合、TestRun は名前の数値を 1 つ増加させます (例えば、「Defect01」、「Defect02」など)。[名前の変更] ボタンをクリックして、デフォルトの名前を編集し、欠陥にわかりやすい名前を割り当てます。

  3. [欠陥] グループボックスで、「次の場合欠陥　"欠陥"　が存在します」テキストの下にあるドロップダウンメニューを使用し、該当するシンボリックタグを選択します。
  4. 選択したシンボリックタグの [テストタイプ] ドロップダウンメニューを適切に設定します。
  5. 必要に応じて、オンにしたエディットコントロールを使用し、テストを設定します。
  6. 必要に応じて、手順 1 ～ 4 を繰り返し、欠陥を追加します。

欠陥の編集

  1. リストから欠陥を選択します。
  2. [欠陥] グループボックスで、「次の場合欠陥 "(欠陥名)" が存在します」テキストの下にあるドロップダウンメニューを使用し、該当するシンボリックタグを選択します。
  3. 選択したシンボリックタグの [テストタイプ] ドロップダウンメニューを適切に設定します。

[ハードウェアテスト-アクションのセットアップ]

TestRun でテストを行い、In-Sight ビジョンシステムが正しい画像を取り込んでいるかを確認するには、最初にそれに応じてジョブの状態を設定する必要があります。この画面では、テストを行う前にパラメータ設定を有効にして、ビジョンシステムが正しい画像を取り込んでいるかを確認します。

ジョブを設定して TestRun のハードウェアテストを実行

  1. [シンボル] 列のリストからパラメータ設定を選択します。必要に応じて、プラス記号をクリックし、リストを展開します。
  2. 設定を有効にするには、設定の横にあるチェックボックスをオンにします。[アクションのセットアップ] 列に設定が自動的に入力されます。
  3. 設定を有効にして [アクションのセットアップ] 列でその設定を選択すると、2 つの列の下に設定のエディットコントロールが表示されます。
  4. 必要に応じて、設定を調整します。
  5. 設定が複数個ある場合は、[上に移動]/[下に移動] ボタンを使用して、設定を実行順に並べます。TestRun では、この画面に表示されている順序に従って、設定操作を実行します。
  6. [次へ] ボタンをクリックして、TestRun の設定を続行します。
  7. [アクションのセットアップ] のプログラムを実行したら、TestRun は自動的に In-Sight ビジョンシステムをトリガし、画像を取り込みます。

[ハードウェアテスト - テスト]

このステップでは、テストを設定して、取り込んだ画像が正しいかを確認します。TestRun では、特定のジョブパラメータとその想定される結果を画像と関連付けることによって、画像が正しい結果を生成しているかどうかを判別することができます。例えば、レンズが汚れているために、画像が不鮮明、傷がついている、または暗くなっているとします。この場合、In-Sight ビジョンシステムに不用意に接触すると、その視野 (FOV) が変わることがあります。または、ビジョンシステムに接続されているレンズのフォーカスや絞りが、振動によって時間とともに変化することがあります。このような状態をテストするには、ジョブパラメータを想定される結果に関連付けます。想定される結果が返されない場合は、画像処理に問題が発生しています。

FOV が正しいかどうかを判別するには、部品の特徴 (または、部品がない場合の背景) を使用します。画像に特徴が存在しない場合、FOV が変わっています。部品が検査前にフィクスチャに置かれている場合は、フィクスチャの 4 つの隅の特徴を使用して適切な FOV を設定できます。特徴がない場合、FOV が変わっています。または、特徴が近すぎるか離れすぎている場合は、In-Sight ビジョンシステムと FOV の間の距離が変化している可能性があります。特徴が矩形を形成しているが、四辺形ではない場合、ビジョンシステムに接触して軸がずれ、遠近歪みが生じている可能性があります。

TestRun ビジョンシステムの画像取り込みテストの定義

  1. 画像を取り込みます。
  2. 必要に応じて、テストを追加し、設定します。

画像の取り込み

  1. [画像] グループボックスの下の [手動トリガ] ボタンをクリックし、In-Sight ビジョンシステムから画像を取り込みます。
  2. [画像] グループボックスおよび　EasyBuilder ビューに画像が表示されます。

注意:　 または、[画像のロード] ボタンをクリックして [開く] ダイアログを表示し、画像ファイルに移動します。

テストの追加と設定

  1. [ハードウェアテスト] グループボックスで、[追加] ボタンをクリックします。
  2. デフォルトの名前が「テスト」というテストが追加され、[テスト] グループボックスに置かれます。ここで、設定を行うことができます。

注意:　 既にテストが追加されており、デフォルトの名前のままである場合、TestRun は名前の数値を 1 つ増加させます (例えば、「Test01」、「Test02」など)。[名前変更] ボタンをクリックして、デフォルトの名前を編集し、テストにわかりやすい名前を割り当てます。

  3. [テスト] グループボックスで、「次の場合欠陥 "xxx" が存在します」テキストの下にあるドロップダウンメニューを使用し、該当するシンボリックタグを選択します。
  4. 選択したシンボリックタグの [テストタイプ] ドロップダウンメニューを適切に設定します。
  5. 必要に応じて、手順 1 ～ 4 を繰り返し、テストを追加します。

クリーンアップアクション

テストが完了したら、それに応じてジョブの状態を設定する必要があります。このステップでは、TestRun がテストを完了した後、ジョブを目的の状態に設定するのに必要な設定操作を定義します。

TestRun を設定して、テスト後にジョブパラメータを設定

  1. [シンボル] 列のリストからパラメータ設定を選択します。必要に応じて、プラス記号をクリックし、リストを展開します。
  2. 設定を有効にするには、設定の横にあるチェックボックスをオンにします。[アクションのセットアップ] 列に設定が自動的に入力されます。
  3. 設定を有効にして [アクションのセットアップ] 列でその設定を選択すると、2 つの列の下に設定のエディットコントロールが表示されます。
  4. 必要に応じて、設定を調整します。
  5. 設定が複数個ある場合は、[上に移動]/[下に移動] ボタンを使用して、設定を実行順に並べます。TestRun では、この画面に表示されている順序に従って、設定操作を実行します。
  6. [閉じる] ボタンをクリックして、TestRun の設定を完了します。
  7. [TestRun セットアップ] ダイアログを閉じたら、[パレット] の [TestRun] タブにある　 [image] [実行] アイコンをクリックして、TestRun テストを実行します。

注意:　 [TestRun セットアップ] ダイアログの設定を完了したら、[パレット] で使用できるすべてのボタンが表示された右クリックメニューが選択できるようになります。さらに、テストの特定のセクションからテストを実行する機能も使用できるようになります (例えば、ジョブテストを実行せずにハードウェアテストから開始する、など)。


キーボードのショートカット

操作とショートカット

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

ここでは、EasyBuilder GUI 全体で使用できる、キーボードとマウスのショートカットについて説明します。

EasyBuilder のショートカット: 任意のアクティブな EasyBuilder ビュー内で実行できる操作です。

Explorer のショートカット: 複数の EasyBuilder ビュー、GUI コンポーネント、および EasyBuilder アプリケーション全体に影響する操作です。

OCV/OCR のショートカット: フォント登録プロセスで文字セグメントを変更する際に実行できる操作です。

[EasyBuilder のショートカット]

操作 | キーボード | マウス
ヘルプ | F1 キー | [ヘルプ] メニューで、[In-Sight Explorer のヘルプ] をクリックします。または、[Explorer] ツールバーで、[In-Sight Explorer のヘルプ] [image] ボタンをクリックします。
新しい画像を取り込む | F5 キー | EasyBuilder ツールバーで、[トリガ] [image] ボタンをクリックします。
新規ジョブ | Ctrl+N キー | [標準] ツールバーで、[ジョブの新規作成] [image] ボタンをクリックします。
ジョブを開く | Ctrl+O キー | [標準] ツールバーで、[ジョブを開く] [image] ボタンをクリックします。
ジョブの保存 1 | Ctrl+S キー | [標準] ツールバーで、[ジョブの保存] [image] ボタンをクリックします。
名前を付けてジョブを保存 | F12 キー | [ファイル] メニューで、[ジョブに名前を付けて保存] をクリックします。
[ページ設定] ダイアログを開く | なし | [ファイル] メニューで、[ページ設定] をクリックします。
[印刷プレビュー] ウィンドウを表示する | なし | [標準] ツールバーで、[印刷プレビュー] [image] ボタンをクリックします。
[印刷] ダイアログを開く | Ctrl+P キー | [標準] ツールバーで、[印刷] [image] ボタンをクリックします。
コピー | Ctrl+C キー | [標準] ツールバーで、[コピー] [image] ボタンをクリックします。
貼り付け | Ctrl+V キー | [標準] ツールバーで、[貼り付け] [image] ボタンをクリックします。
操作を取り消す | Ctrl+Z キー | [標準] ツールバーで、[取り消し] [image] ボタンをクリックします。
操作をやり直す | Ctrl+Y キー | [標準] ツールバーで、[やり直し] [image] ボタンをクリックします。
オンライン/オフラインモードを切り替える | Ctrl+F8 キー | [EasyBuilder] ツールバーで、[オンライン] または [オフライン] [image] ボタンをクリックします。
表示領域のサイズに合わせて画像領域グラフィックスのサイズを変更する | Ctrl+Shift+M キー | [EasyBuilder] ツールバーで、[領域の最大化] [image] ボタンをクリックします。
画像の拡大表示 | Shift+ プラス (テンキーの +) キー、または Ctrl+ 左クリック | [EasyBuilder] ツールバーで、[拡大] [image] ボタンをクリックします。
画像の縮小表示 | Shift+マイナス (テンキーの -) キー | [EasyBuilder] ツールバーで、[縮小] [image] ボタンをクリックします。
画像のパン (パンするためには、画像の大きさが表示領域を超えている必要があります) | Shift キーと Ctrl キーを押しながら、マウスの左ボタンを押したまま、 [image] カーソルをドラッグします。 | なし
領域全体に拡大: 画像領域を点線の矩形で囲んで拡大します。ユーザが定義した矩形が、表示領域全体まで拡大されます。矩形を作成するときには、カーソルの初期位置が矩形の中心になります。最大まで拡大すると、[領域全体に拡大] は無効になります。 | Ctrl キーを押しながら、マウスの左ボタンを押したまま、 [image] カーソルをドラッグします。 [領域全体に拡大] モードを終了するには、Ctrl キーを離します。標準のカーソル [image] に戻ります。 | なし
画像の回転 | Shift+スラッシュ (テンキーの /) キー | EasyBuilder ツールバーで、[画像の回転] [image] ボタンをクリックします。
グレーレベルが [露光過少レベル] 以下の画像内のピクセルを青色でハイライトし、[露光過多レベル] 以上のピクセルを赤色でハイライトする | Ctrl+Shift+S キー | [EasyBuilder] ツールバーで、[露光過多・過少を表示] [image] ボタンをクリックします。
画面上の次の EasyBuilder ビューまたはセンサステータスビューに移動 2 | Ctrl+F6 キー | 移動先のビューをクリックします。または、[ウィンドウ] メニューから移動先のビューを選択します。
アクティブな EasyBuilder ビューまたはセンサステータスビューを閉じる | Ctrl+F4 キー | 閉じるビューの [閉じる] [image] ボタンをクリックします。
スタートアップレイアウトを保存する | Shift+F7 キー | [システム] メニューで [レイアウトを保存する] をクリックします。
1 ジョブが一度も保存されていなかった場合は、[ジョブに名前を付けて保存] ダイアログが表示されます。 2 少なくとも 2 つのビュー (EasyBuilder ビューまたはセンサステータスビュー) が表示されていないと、この操作を実行できません。

[Explorer のショートカット]

操作 | キーボード | マウス
ヘルプ | F1 キー | [ヘルプ] メニューで、[In-Sight Explorer のヘルプ] をクリックします。または、[Explorer] ツールバーで、[In-Sight Explorer のヘルプ] [image] ボタンをクリックします。
[In-Sight ネットワーク] および [In-Sight のファイル] ペインの内容を更新 | なし | [接続] 設定ペインで、[更新] をクリックします。または、[表示] メニューで [更新] をクリックします。
コピー1 | Ctrl+C キー | [標準] ツールバーで、[コピー] [image] ボタンをクリックします。
貼り付け1 | Ctrl+V キー | [標準] ツールバーで、[貼り付け] [image] ボタンをクリックします。
Closed プログラムアイコンメニューを表示 プログラムアイコンメニューを使用すると、アプリケーションウィンドウの位置やサイズを矢印キーで制御することができます。また、このメニューから、In-Sight Explorer の画面の大きさを元に戻す、最大化、最小化、および閉じることもできます。 | Alt+ スペースキー | アプリケーションウィンドウの左上隅にあるプログラムアイコン [image] をクリックします。
メニューバーにアクセス | Alt または F10 キー | 任意のメニュー項目をクリックします。
メニューバー内を移動 | 矢印キー | メニューをクリックします。
メニューバーで項目を選択 | Enter キー | 項目をクリックします。
レイアウトを保存する | Shift+F7 キー | [システム] メニューで [レイアウトを保存する] をクリックします。
再生フォルダに保存されている最初の画像に移動 | なし | [EasyBuilder] ツールバーで、[最初の画像] [image] ボタンをクリックします。
再生フォルダに保存されている前の画像に移動 | なし | [EasyBuilder] ツールバーで、[前の画像] [image] ボタンをクリックします。
再生フォルダに保存されている画像の再生と一時停止を切り替える | なし | [EasyBuilder] ツールバーで、[再生] [image] ボタン、または [一時停止] [image] ボタンをクリックします。
再生フォルダに保存されている次の画像に移動 | なし | [EasyBuilder] ツールバーで、[次の画像] [image] ボタンをクリックします。
再生フォルダに保存されている最後の画像に移動 | なし | [EasyBuilder] ツールバーで、[最後の画像] [image] ボタンをクリックします。
記録フォルダへの取り込み画像の記録と停止を切り替える | なし | [EasyBuilder] ツールバーで、[記録] [image] ボタン、または [記録の停止] [image] ボタンをクリックします。
[記録/再生のオプション] ダイアログを開いて、記録/再生設定を行う | なし | [EasyBuilder] ツールバーで、[記録/再生のオプション] [image] ボタンをクリックします。
1 これらの操作は、[位置決め] および [検査] ステップのツール、および [In-Sight のファイル] ペイン内のファイルで実行できます。

[OCV/OCR セグメント編集のショートカット]

操作 | キーボード | マウス
次のセグメントをハイライト (変更) | Ctrl+→ または Ctrl+← キー | 必要なセグメントをクリックします。
次のセグメントをハイライト (ラベル変更、削除) | 矢印キー | 必要なセグメントをクリックします。
セグメントを確定 (変更、ラベル変更、削除) | Enter キー | 必要なセグメントをダブルクリックします。
対話型グラフィックスモードをトグル切り替えする (変更) | F9 キー | なし

スプレッドシートビュー

ここでは、In-Sight Explorer インタフェース全体で使用できる、キーボードとマウスのショートカットについて説明します。

スプレッドシートのショートカット: 任意のアクティブなスプレッドシートまたはスプレッドシートビュー内で実行できる操作です。

Explorer のショートカット: 複数のスプレッドシートビュー、GUI コンポーネント、および In-Sight Explorer アプリケーション全体に影響する操作です。

OCV/OCR のショートカット: フォント登録プロセスで文字セグメントを変更する際に実行できる操作です。

プロパティシートのショートカット: プロパティシートが表示されているときに実行できる操作です。

対話型グラフィックスモードのショートカット: 対話型グラフィックス領域を調整する際に実行できる操作です。

[スプレッドシートのショートカット]

操作 | キーボード | マウス
ヘルプ | F1 キー | [ヘルプ] メニューで、[In-Sight Explorer のヘルプ] をクリックします。または、[Explorer] ツールバーで、[In-Sight Explorer のヘルプ] [image] ボタンをクリックします。
新しい画像を取り込む | F5 キー | [ジョブの表示] ツールバーで、[トリガ] [image] ボタンをクリックします。
新規ジョブ | Ctrl+N キー | [標準] ツールバーで、[ジョブの新規作成] [image] ボタンをクリックします。
アクティブセルで新しい式の入力を開始 1 | 等号 (=) キー | 空白のセルをダブルクリックします。
アクティブセル内の式を編集 | F2 キー | 数式バー内をクリックします。
アクティブセルにテキストラベルを挿入 1 | アポストロフィ (’) キー | なし
新しい式または変更した式を確定 | Enter キー | [ジョブの編集] ツールバーの [OK] [image] ボタンをクリックします。
新しい式または変更した式をキャンセル | Esc キー | [ジョブの編集] ツールバーの [キャンセル] [image] ボタンをクリックします。
ジョブを開く | Ctrl+O または Ctrl+F12 キー | [標準] ツールバーで、[ジョブを開く] [image] ボタンをクリックします。
ジョブの保存 2 | Ctrl+S または Shift+F12 キー | [標準] ツールバーで、[ジョブの保存] [image] ボタンをクリックします。
名前を付けてジョブを保存 | F12 キー | [ファイル] メニューで、[ジョブに名前を付けて保存] をクリックします。
[ページ設定] ダイアログを開く | Ctrl+Alt+P キー | [ファイル] メニューで、[ページ設定] をクリックします。
[印刷プレビュー] ウィンドウを表示する | Ctrl+Shift+P キー | [標準] ツールバーで、[印刷プレビュー] [image] ボタンをクリックします。
[印刷] ダイアログを開く | Ctrl+P キー | [標準] ツールバーで、[印刷] [image] ボタンをクリックします。
[関数の挿入] ダイアログを開く 3 | Ctrl+Shift+F または Shift+F3 キー | [ジョブの編集] ツールバーの [式] [image] ボタンをクリックします。
スプレッドシート内を移動 | 矢印キー | 移動先のセルをクリックします。
相対セル参照を挿入 | Ctrl+Shift+R キー | [ジョブの編集] ツールバーで、[相対参照] [image] ボタンをクリックします。
絶対セル参照を挿入 | Ctrl+Shift+A キー | [ジョブの編集] ツールバーで、[絶対参照] [image] ボタンをクリックします。
セルのテキストボックスにカーソルを置いて、4 つのセル参照タイプを切り替える | F4 キー | なし
セル A0 に移動 | Ctrl+Home キー | なし
セル Z399 に移動 | Ctrl+End キー | なし
現在の行の左端 (列 A) に移動 | Home キー | なし
現在の行の右端 (列 Z) に移動 | End キー | なし
1 画面上へ移動 | Page Up キー | 垂直スクロールバーのスライダと上矢印の間をクリックします。
1 画面下へ移動 | Page Down キー | 垂直スクロールバーのスライダと下矢印の間をクリックします。
行内のセルを範囲指定 | Shift+ →キー Shift+ ←キー | クリックしたままマウスポインタを右または左へドラッグします。
列内のセルを範囲指定 | Shift+ ↑キー Shift+ ↓キー | クリックしたままマウスポインタを上または下へドラッグします。
行全体を選択 | Shift+ スペースキー ヒント: 行をハイライトしたら、Shift+ ↑または Shift+ ↓キーを押すことによって複数の行を選択することができます。 | 行のヘッダをクリックします。ドラッグすると複数の行を選択できます。
列全体を選択 | Ctrl+ スペースキー ヒント: 列をハイライトしたら、Shift+ →または Shift+ ←キーを押すことによって複数の列を選択することができます。 | 列のヘッダをクリックします。ドラッグすると複数の列を選択できます。
コピー | Ctrl+C または Ctrl+Insert キー | [標準] ツールバーで、[コピー] [image] ボタンをクリックします。
スプレッドシートの表示されている部分を画像としてクリップボードにコピー | Ctrl+Shift+C キー | なし
切り取り | Ctrl+X または Shift+Delete キー | [標準] ツールバーで、[切り取り] [image] ボタンをクリックします。
貼り付け | Ctrl+V または Shift+Insert キー | [標準] ツールバーで、[貼り付け] [image] ボタンをクリックします。
コンテンツのクリア | Ctrl+D または Delete キー | [編集] メニューで、[クリア] → [コンテンツ] をクリックします。
すべてクリア | Ctrl+Shift+D キー | [編集] メニューで、[クリア] → [すべて] をクリックします。
テキストの検索 | Ctrl+F キー | [標準] ツールバーで、[検索] [image] ボタンをクリックします。
セルにジャンプ | Ctrl+G キー | [編集] メニューで、[進む] をクリックします。
操作を取り消す | Ctrl+Z キー | [標準] ツールバーで、[取り消し] [image] ボタンをクリックします。
操作をやり直す | Ctrl+Y キー | [標準] ツールバーで、[やり直し] [image] ボタンをクリックします。
セルのフォーマット設定 | Ctrl+1 キー | [フォーマット] ツールバーで、[セルのフォーマット] [image] ボタンをクリックします。
選択したセルを太字にする | Ctrl+B キー | [フォーマット] ツールバーで、[太字] [image] ボタンをクリックします。
選択したセルを斜体にする | Ctrl+I キー | [フォーマット] ツールバーで、[斜体] [image] ボタンをクリックします。
変更を確定する | Enter キー | [OK] をクリックします。
変更をキャンセルする | Esc キー | [キャンセル] をクリックします。
オンライン/オフラインモードを切り替える | Ctrl+F8 キー | [ジョブの表示] ツールバーで、[オンライン] または [オフライン] [image] ボタンをクリックします。
対話型グラフィックス領域を編集 | F9 キー | [ジョブの表示] ツールバーで、[セルのグラフィックの編集] [image] ボタンをクリックします。
スプレッドシート内のすべての対話型グラフィックスの色を変更 | Shift+F9 キー | なし
デフォルトの領域セルグラフィックスのサイズを、参照される [image] データ構造体の画像領域と同じになるように変更する | Ctrl+Shift+M キー | [ジョブの編集] ツールバーで、[領域の最大化] [image] ボタンをクリックします。
画像の拡大表示 | Shift+ プラス (テンキーの +) キー または Ctrl+ 左クリック (このオプションは、スプレッドシートオーバレイが表示されていないときのみ使用できます) | [ジョブの表示] ツールバーで、[拡大] [image] ボタンをクリックします。
画像の縮小表示 | Shift+マイナス (テンキーの -) キー | [ジョブの表示] ツールバーで、[縮小] [image] ボタンをクリックします。
PC のディスプレイの 1 ピクセルごとに画像の 1 ピクセルを割り当てる | Shift+ アスタリスク (テンキーの *) キー | [ジョブの表示] ツールバーで、[倍率 1:1] [image] ボタンをクリックします。
画像のパン (パンするためには、画像の大きさがスプレッドシートビューウィンドウを超えている必要があります) 注意: この機能は、スプレッドシートオーバレイが表示されていないときのみ使用できます。 | Shift キーと Ctrl キーを押しながら、マウスの左ボタンを押したまま、 [image] カーソルをドラッグします。 | なし
領域全体に拡大: 画像領域を点線の矩形で囲んで、拡大します。ユーザが定義した矩形が、スプレッドシートビュー全体まで拡大されます。矩形を作成するときには、カーソルの初期位置が矩形の中心になります。最大まで拡大すると、[領域全体に拡大] は無効になります。 注意: この機能は、スプレッドシートオーバレイが表示されていないときのみ使用できます。 | Ctrl キーを押しながら、マウスの左ボタンを押したまま、 [image] カーソルをドラッグします。 [領域全体に拡大] モードを終了するには、Ctrl キーを離します。標準のカーソル [image] に戻ります。 | なし
シートの拡大表示 | Ctrl+ プラス (テンキーの +) キー | [ジョブの表示] ツールバーで、[シートズーム] のパーセンテージ [image] を上げます。
シートの縮小表示 | Ctrl+ マイナス (テンキーの -) キー | [ジョブの表示] ツールバーで、[シートズーム] のパーセンテージ [image] を下げます。
選択したセル範囲に合わせてシートを拡大 (セルを 1 つのみ選択した場合は 100% 表示に戻す) | Ctrl+ アスタリスク (テンキーの *) キー | [ジョブの表示] ツールバーで、[シートズーム] のパーセンテージ [image] を必要に応じて変更します。
画像の回転 | Shift+スラッシュ (テンキーの /) キー | [ジョブの表示] ツールバーで、[画像の回転] [image] ボタンをクリックします。
スプレッドシートの関数に関連付けられているオーバレイグラフィックスの表示/非表示を切り替える | Ctrl+Shift+G キー | [ジョブの表示] ツールバーの [グラフィックス] [image] ボタンをクリックします。
グレーレベルが [露光過少レベル] 以下の画像内のピクセルを青色でハイライトし、[露光過多レベル] 以上のピクセルを赤色でハイライトする | Ctrl+Shift+S キー | [ジョブの表示] ツールバーで、[露光過多・過少を表示] [image] ボタンをクリックします。
トレース矢印の表示をオンにして、表示する依存関係のトレースレベルを 1 段階上げる | F11 キー | [ジョブの監査] ツールバーで、[依存レベルを上げる] [image] ボタンをクリックします。
表示する依存関係のトレースレベルを 1 段階下げる | Shift+F11 キー | [ジョブの監査] ツールバーで、[依存レベルを下げる] [image] ボタンをクリックします。
トレース矢印をすべて消去する | Ctrl+F11 キー | [ジョブの監査] ツールバーで、[依存レベルをリセットする] [image] ボタンをクリックします。
参照元セルがエラー (#ERR) の依存関係のみを表示する | Alt+F11 キー | [ジョブの監査] ツールバーで、[エラーのある依存関係のみ表示] [image] ボタンをクリックします。
アクティブセルの最初の #ERR 参照元にジャンプする | Ctrl+Shift+F11 キー | [ジョブの監査] ツールバーで、[エラー元セルにジャンプ] [image] ボタンをクリックします。
スプレッドシートオーバレイの表示/非表示 | Shift+F6 キー | [ジョブの表示] ツールバーで、[オーバレイ] [image] ボタンをクリックします。
カスタムビューの切り替え | F6 キー | [ジョブの表示] ツールバーで、[カスタムビュー] [image] ボタンをクリックします。
画面上の次のスプレッドシートビューまたはステータスビューに移動 4 | Ctrl+F6 キー | 移動先のビューをクリックします。または、[ウィンドウ] メニューから移動先のビューを選択します。
アクティブなスプレッドシートビューまたはステータスビューを閉じる | Ctrl+F4 キー | 閉じるビューの [閉じる] [image] ボタンをクリックします。
スタートアップレイアウトを保存する | Shift+F7 キー | [システム] メニューの [レイアウトを保存する] をクリックします。
右クリックメニューを表示 | Shift+F10 キー | 項目を右クリックします。
1 アクティブセルは、空白である必要があります。 2 ジョブが一度も保存されていなかった場合は、[ジョブに名前を付けて保存] ダイアログが表示されます。 3 アクティブセルに含まれている関数にプロパティシートが設定されている場合は、[関数の挿入] ダイアログの代わりにプロパティシートが開きます。 4 少なくとも 2 つのビュー (スプレッドシートまたはステータス) が表示されていないと、この操作を実行できません。

[Explorer のショートカット]

操作 | キーボード | マウス
ヘルプ | F1 キー | [ヘルプ] メニューで、[In-Sight Explorer のヘルプ] をクリックします。
[In-Sight ネットワーク] および [In-Sight のファイル] ペインの内容を更新 | 1. Tab キーを押して、フォーカスをどちらかのペインに移動します。 2. F5 キーを押します。 | [表示] メニューで、[更新] をクリックします。
コピー1 | Ctrl+C または Ctrl+Insert キー | [標準] ツールバーで、[コピー] [image] ボタンをクリックします。
切り取り 1 | Ctrl+X または Shift+Delete キー | [標準] ツールバーで、[切り取り] [image] ボタンをクリックします。
貼り付け1 | Ctrl+V または Shift+Insert キー | [標準] ツールバーで、[貼り付け] [image] ボタンをクリックします。
コンテンツのクリア 1 | Ctrl+D または Delete キー | [編集] メニューで、[クリア] → [コンテンツ] をクリックします。
右クリックメニューを表示 | Shift+F10 キー | 項目を右クリックします。
Closed プログラムアイコンメニューを表示 プログラムアイコンメニューを使用すると、アプリケーションウィンドウの位置やサイズを矢印キーで制御することができます。また、このメニューから、In-Sight Explorer の画面の大きさを元に戻す、最大化、最小化、および閉じることもできます。 | Alt+ スペースキー | アプリケーションウィンドウの左上隅にあるプログラムアイコン [image] をクリックします。
メニューバーにアクセス | Alt または F10 キー | 任意のメニュー項目をクリックします。
メニューバー内を移動 | 矢印キー | メニューをクリックします。
メニューバーで項目を選択 | Enter キー | 項目をクリックします。
レイアウトを保存する | Shift+F7 キー | [システム] メニューで [レイアウトを保存する] をクリックします。
再生フォルダに保存されている最初の画像に移動 | Ctrl+H キー | [記録/再生] ツールバーで、[最初の画像] [image] ボタンをクリックします。
再生フォルダに保存されている前の画像に移動 | Ctrl+J キー | [記録/再生] ツールバーで、[前の画像] [image] ボタンをクリックします。
再生フォルダに保存されている画像の再生と一時停止を切り替える | Ctrl+M キー | [記録/再生] ツールバーで、[再生] [image] ボタン、または [一時停止] [image] ボタンをクリックします。
再生フォルダに保存されている次の画像に移動 | Ctrl+K キー | [記録/再生] ツールバーで、[次の画像] [image] ボタンをクリックします。
再生フォルダに保存されている最後の画像に移動 | Ctrl+L キー | [記録/再生] ツールバーで、[最後の画像] [image] ボタンをクリックします。
記録フォルダへの取り込み画像の記録と停止を切り替える | Ctrl+R キー | [記録/再生] ツールバーで、[記録] [image] ボタン、または [記録の停止] [image] ボタンをクリックします。
[記録/再生のオプション] ダイアログを開いて、記録/再生設定を行う | Ctrl+T キー | [記録/再生] ツールバーで、[記録/再生のオプション] [image] ボタンをクリックします。
1 これらの操作は、スプレッドシートのセルデータと [In-Sight のファイル] ペイン内のファイルの両方に対して実行できます。

[OCV/OCR セグメント編集のショートカット]

操作 | キーボード | マウス
次のセグメントをハイライト (変更) | Ctrl+→ または Ctrl+← キー | 必要なセグメントをクリックします。
次のセグメントをハイライト (ラベル変更、削除) | 矢印キー | 必要なセグメントをクリックします。
セグメントを確定 (変更、ラベル変更、削除) | Enter キー | 必要なセグメントをダブルクリックします。
対話型グラフィックスモードをトグル切り替えする (変更) | F9 キー | なし
ほかの OCV/OCR セグメント編集コマンド (画像のズーム、画像のパンニングなど) については、「対話型グラフィックスモードのショートカット」を参照してください。


EasyBuilder ジョブおよびスプレッドシート

EasyBuilder ジョブおよびスプレッドシート

スプレッドシートでの EasyBuilder ジョブの編集

スプレッドシートでの EasyBuilder ツールパラメータの追加、削除、および名前の変更

スプレッドシートでの EasyBuilder ジョブの編集: ラウンドトリップアプリケーション開発

EasyBuilder ジョブおよびスプレッドシート

EasyBuilder ツールのスニペットの構造

ラウンドトリップアプリケーション開発とは、In-Sight Explorer 内の EasyBuilder とスプレッドシートの両方の開発環境で、マシンビジョンアプリケーションを構築するプロセスを指しています。EasyBuilder 環境で開始されたジョブは、スプレッドシート環境で編集できるため、EasyBuilder インタフェースで公開されたパラメータをカスタマイズできます。例えば、「位置決めツール」および「検査ツール」のパラメータを追加、削除、または名前の変更を実行したり、スプレッドシート環境でのみ使用可能なロジックと機能を追加して EasyBuilder ジョブを拡張したりできます。

注意: すべての In-Sight センサが、スプレッドシートにアクセスしたり、スプレッドシート環境で変更された EasyBuilder ジョブをロードしたりできるわけではありません。EasyBuilder 環境で開発されたジョブをスプレッドシート環境で編集した場合、このジョブを EasyBuilder 専用の In-Sight センサで使用することはできません。

EasyBuilder ジョブおよびスプレッドシート

EasyBuilder 環境でジョブを作成および開発すると、同時に、EasyBuilder 固有のスプレッドシートが作成され、事前に設定された、空間的に定義され論理的に統合された In-Sight 関数および EasyBuilder タグとラベルのグループ。セルデータ (.CXD) ファイルとして保存され、特定のタスクを実行します。 EasyBuilder スニペットがプログラミングされます。EasyBuilder スニペットは、EasyBuilder 環境のアプリケーションステップで追加され設定された機能に対応します。

EasyBuilder との互換性を持つスプレッドシートは、EasyBuilder スニペットの 3 つの垂直セクションから構成される特定のフォーマットに準拠します。

  • セルの列 A ～ H は、1 番目の垂直セクションを形成し、[画像の設定] ステップで画像取り込みを設定するための EasyBuilder スニペットと、EasyBuilder に追加された「位置決めツール」と「検査ツール」用の EasyBuilder スニペットを含んでいます。
  • セルの列 J ～ Q は、2 番目の垂直セクションを形成します。この列は、最初の列が埋まらない限り、通常は空です。最初の列が埋められた時点で、EasyBuilder の「位置決めツール」および「検査ツール」スニペットでこの列が使用されます。
  • セルの列 S ～ Z は、3 番目と最後のセクションを形成し、ジョブ全体の成功/失敗結果、[入力] および [出力] ステップ、[画像の設定] ステップのキャリブレーション、および [通信] ステップのための EasyBuilder スニペットを含みます。

すべての EasyBuilder スニペットは使用される列が 8 列以下になるようにフォーマットされ、3 つの垂直セクションのいずれかに挿入されます。EasyBuilder 環境で「位置決めツール」または「検査ツール」がジョブに追加されると、スプレッドシートの使用可能なスペースに基づいて、対応する EasyBuilder スニペットが EasyBuilder 固有のスプレッドシートに自動的に追加されます。

例えば、EasyBuilder 開発環境で「ブロブ 計数ツール」がジョブに追加されると、EasyBuilder スニペットファイル「BlobCount.cxd」が、スプレッドシートの使用可能なスペースに応じて、スプレッドシート内の 1 番目 (列 A ～ H) または 2 番目 (列 J ～ Q) のセクションに自動的に追加されます。

Closed 例 - EasyBuilder BlobCount スニペット

また、EasyBuilder スニペットは、スニペット内の個々のセルと、ほかの EasyBuilder スニペットのセルとの絶対セル参照も維持します。このセル間の空間的な関係は、セルの実行順序を関連付けるメカニズムとして機能します。また、EasyBuilder 環境でのテキストラベルと公開されたパラメータの表示順序を決定するためのメカニズムとしても機能します。EasyBuilder スニペットは、左から右へ、行ごとにスキャンされ、個々のセルの実行はスニペット内のセルの配置に基づきます。

例えば、EasyBuilder スニペットファイル「BlobCount.cxd」は、上の行にあるテキストラベルと、EasyBuilder 環境で公開されたパラメータの名前とコントロールを作成するための、下の行にあるオペレータ I/F 関数との空間的な関係に依存しています。

Closed 例 - スプレッドシートビューと EasyBuilder ビュー

EasyBuilder ツールのスニペットの構造

EasyBuilder ツールスニペットは、EasyBuilder 環境で「位置決めツール」および「検査ツール」を作成するために使用されます。EasyBuilder ツールスニペットは、スプレッドシート環境から、In-Sight ビジョンツール関数のパラメータを公開するため、それらのパラメータを EasyBuilder 環境で簡単に設定できます。

EasyBuilder ツールスニペットは 8 列に収まるようにフォーマットされ、行の数はツールの複雑さによって異なります。スニペット内の In-Sight 関数と EasyBuilder タグおよびラベルは、条件によって有効となり、スニペット内のセル間の特定の空間的関係に依存しています。

Closed 例 - EasyBuilder Edge Location ツール - EdgeLocation スニペット

Closed 例 - EdgeLocation スニペット EnabledStatus セルの依存関係

EasyBuilder ツールスニペットは、次のコンポーネントから構成されています。

  • EasyBuilder タグおよびタグラベル
  • In-Sight ビジョンツール関数
  • ツールパラメータ
  • 表示されたグラフィックスと対象領域

EasyBuilder タグおよびタグラベル

EasyBuilder タグは、EasyBuilder 環境に GUI フォーマットとセル参照データを提供し、EasyBuilder タグラベルは、EasyBuilder 環境で表示されるテキストを提供するか、またはスプレッドシート内の EasyBuilder タグを示します。EasyBuilder タグは、セルの左下隅にある緑色の矩形のコメントインジケータによって示され、マウスで起動できるツールチップを含んでいます。

Closed 例 - EasyBuilder タグおよびテキストラベルセル

EasyBuilder タグのセルは特定のシンタックスに従い、事前に定義された相互の空間的関係を維持する必要のあるセルまたはセルのグループを示します。例えば、EasyBuilder タグ「Input:Fixture」は、常に、EasyBuilder 環境内での X、Y、および角度を関連付ける 3 つの連続するセル (EasyBuilder タグラベル「Row」、「Column」、および「Theta」の行の下) を含む行で構成されます。セルの空間的関係の変更、または特定のセルの削除は、ジョブの予期せぬ動作を引き起こすことがあります。

「位置決めツール」または「検査ツール」が EasyBuilder ジョブに追加されると、EasyBuilder アプリケーションは EasyBuilder スプレッドシートで EasyBuilder タグおよびテキストラベルセルを解析します。これらのセルは、EasyBuilder 環境でのツールの動作と表示される内容を定義します。EasyBuilder タグセルは、ツールのスニペット内のほかの EasyBuilder タグセルとの間のセル参照、およびジョブ内のほかの EasyBuilder スニペットへのリンクも示します。例えば、EasyBuilder ツールスニペットは、EasyBuilder タグのセルを通じて、フィクスチャ、キャリブレーション、および全体の成功/失敗ステータスデータを管理します。

In-Sight ビジョンツール関数

ビジョン処理アルゴリズムを提供する In-Sight ビジョンツール関数は、EasyBuilder 開発環境において「位置決めツール」と「検査ツール」の核となる機能です。大半の In-Sight ビジョンツール関数は、関数のパラメータ内の複雑で動的な引数に依存しています。これらの数式は編集しないことを推奨します。

Closed 例 - EdgeLocation スニペット FindLine セルの依存関係および FindLine プロパティシート

ツールパラメータ

オペレータ I/F 関数は、In-Sight ビジョンツール関数またはほかの In-Sight 関数のプロパティシートパラメータにリンクされ、EasyBuilder 環境での「位置決めツール」および「検査ツール」の制御パラメータを提供します。EasyBuilder 環境で公開されたパラメータは、次の 6 つのオペレータ I/F 関数のいずれかの真上にあるツールパラメータラベルによって示されます。

  • Button 関数: EasyBuilder 環境でボタンコントロールを公開します。
  • CheckBox 関数: EasyBuilder 環境でチェックボックスコントロールを公開します。
  • EditFloat 関数: EasyBuilder 環境で整数編集コントロールを公開します。
  • EditInt 関数: EasyBuilder 環境で浮動小数点編集コントロールを公開します。
  • EditString 関数: EasyBuilder 環境でテキスト編集コントロールを公開します。
  • ListBox 関数: EasyBuilder 環境でドロップダウンリストボックスコントロールを公開します。

オペレータ I/F 関数は、In-Sight ビジョンツール関数またはほかの In-Sight 関数のプロパティシートパラメータに相互に関連付けられます。それらは、通常、スプレッドシート内の絶対セル参照を介して別の関数の入力パラメータにリンクされます。そのほかの状況では、オペレータ I/F 関数は、複数の関数のパラメータにリンクされることもあります。また、EasyBuilder の「位置決めツール」または「検査ツール」にロジックを追加するためにこれらの関数のパラメータに含まれることもあります。EasyBuilder 開発環境で正しく表示するためには、ツールパラメータラベルをオペレータ I/F 関数の真上にあるセルに入力する必要があります (テキストの前にアポストロフィ (') を入力します)。

例えば、「位置決めエッジツール」の「エッジのコントラスト」コントロールは、EditInt 関数の真上のセルに「エッジのコントラスト」というツールパラメータラベルが含まれます。これは、FindLine 関数の [アクセプトしきい値] パラメータへの絶対セル参照として設定されます。

Closed 例 - オペレータ I/F 関数および EasyBuilder パラメータコントロール

表示されたグラフィックスと対象領域

EasyBuilder 環境における対象領域グラフィックスと検出された機能の表示を定義するオペレータ I/F 関数があります。それぞれの EasyBuilder の「位置決めツール」および「検査ツール」には、「領域」があり (円または矩形のいずれか)、EditAnnulus 関数または EditRegion 関数を使用して「領域」の形状が定義されます。それぞれの円形の「領域」は、EditAnnulus 関数と、それに続く行、列、内側半径、および外側半径を定義するセルから構成されます (正しく機能させるために、これらのセルは常に表示されます)。それぞれの矩形の「領域」は、EditRegion 関数と、それに続く行、列、高さ、幅、角度、およびカーブのデータを定義するセルから構成されます (正しく機能させるために、これらのセルは常に表示されます)。

Closed 例 - オペレータ I/F 関数と表示される EasyBuilder グラフィックス

スプレッドシートでの EasyBuilder ツールパラメータの追加、削除、および名前の変更

EasyBuilder ツールスニペットへのパラメータの追加

EasyBuilder ツールスニペットパラメータの削除

EasyBuilder ツールスニペットパラメータの名前の変更

EasyBuilder ツールスニペットは、さまざまな In-Sight 関数から構成され、これらの関数の一部には、デフォルトで、EasyBuilder 開発環境で公開されない追加機能が含まれます。これらの追加パラメータは、スプレッドシート環境で設定することで、EasyBuilder 環境で有効にして表示することができます。

ヒント: プロパティシートのパラメータは、スプレッドシートへのコントロールのドラッグ & ドロップをサポートします。プロパティシートからパラメータを選択し、そのパラメータをスプレッドシートにドラッグすると、パラメータのラベルおよび編集コントロールがスプレッドシート内に自動的に生成および参照されます。例えば、ExtractBlobs 関数のプロパティシートが開いており、その [しきい値] パラメータをスプレッドシートのセル A2 にドラッグ & ドロップすると、セル A2 に [しきい値] の文字列が表示され、A3 に EditInt 関数が生成されます。ExtractBlobs 関数のプロパティシート内の [しきい値] パラメータは、セル A3 を絶対参照します。

スプレッドシートで EasyBuilder ジョブを編集する際の重要なガイドライン

行を追加または削除するときは、個々のセルをクリックして、[挿入] メニューの [セル] をクリックするか、右クリックメニューを使用して [挿入] または [削除] を選択します。それぞれ、[セルの挿入] ダイアログまたは [セルの削除] ダイアログが起動します。必ず、この 2 つの「セルの移動」方法のいずれかを選択します。

  • 列は、EasyBuilder スニペットに挿入しないでください。
  • スニペットから EasyBuilder タグを削除しないでください。
  • 関数または数式を列 I または R に挿入しないでください。

これらの不適切な操作のいずれかが実行されると、依存関係が破壊され、EasyBuilder ジョブが正しく機能しなくなる場合があります。

注意: スプレッドシート環境でジョブを編集するには、ユーザのアクセスレベルが「フル」に設定されている必要があります。デフォルトでは、スプレッドシート環境で EasyBuilder ジョブが不注意に編集されてしまうのを防ぐために、ジョブがロックされています。作業を開始する前に、[ファイル] メニューの [ジョブの保護を解除] を選択してジョブの保護を解除します。

EasyBuilder ツールスニペットへのパラメータの追加

大半の EasyBuilder の「位置決めツール」および「検査ツール」には、オペレータ I/F 関数を追加し、新たに作成されたコントロールをスプレッドシート内の既存のプロパティシートパラメータまたはロジック、もしくは両方にリンクすることで、追加のパラメータを表示する機能があります。スプレッドシート内のオペレータ I/F 関数の配置によって、EasyBuilder 開発環境で表示される順序が決まります。

注意: デフォルトでは、スプレッドシート環境で EasyBuilder ジョブが不注意に編集されてしまうのを防ぐために、ジョブがロックされています。作業を開始する前に、[ファイル] メニューの [ジョブの保護を解除] を選択してジョブの保護を解除します。

スプレッドシート環境で EasyBuilder の「位置決めツール」または「検査ツール」にパラメータを追加するには

  1. スプレッドシート環境でツールに移動するには、パレットの [結果] タブでツールを右クリックして [スプレッドシートのこのツールへジャンプ] を選択するか、[表示] メニューの [スプレッドシート] を選択します。

注意: EasyBuilder 環境のパレットの [結果] タブでツールがハイライトされている場合は、スプレッドシートでツールのスニペットがハイライトされます。

  2. 公開するスプレッドシートの関数のパラメータを指定し、パラメータの種類に基づいて、テキストラベルとオペレータ I/F 関数を追加します。オペレータ I/F 関数ごとに、その真上のセルにテキストラベルが入力されている必要があります。ラベルは、公開するパラメータの「名前」と、EasyBuilder の設定ペインおよび [結果の設定] アプリケーションステップ ([入力]、[出力]、および[通信]) で何を表示するかを、EasyBuilder に通知します。例えば、「位置決めエッジツール」は、EditInt 関数の上に「エッジ幅」というテキストラベルを追加することで、FindLine 関数の [エッジ幅] パラメータが表示されるように変更できます。

注意: スニペットに、新しいラベルとコントロールを挿入するための十分な空のセルがない場合は、既存のラベルとコントロールを切り取り、追加の行を挿入してから、切り取ったラベルとコントロールを新たに作成された領域に貼り付けます。列は挿入しないでください。ラベルのテキストを入力するときは、先頭にアポストロフィ (') を入力することを忘れないでください。

  3. 対象の関数のパラメータと新たに作成されたオペレータ I/F 関数の間の絶対セル参照を作成します。対象の関数のプロパティシートを開き、使用するパラメータを選択して、プロパティシートのツールバーにある [絶対参照の挿入] ボタンをクリックします。セル選択モードに切り替わります。新たに作成されたオペレータ I/F 関数を選択し、[OK] ボタンをクリックして選択を確定します。
  4. EasyBuilder タグの Enable セルに、オペレータ I/F 関数の [セル状態] を設定して、コントロールを条件付きで有効にします。コントロールは EasyBuilder 環境で正常に機能し、表示されるために、条件付きで有効にし、絶対参照として設定する必要があります。
  5. オペレータ I/F 関数を含むセルをハイライトし、[編集] メニューから [セル状態] を選択して、[セル状態] ダイアログを起動します。
  6. [条件付きで有効] オプションを選択し、[有効条件の参照設定] を [絶対] に設定してから、[セルの選択] ボタンをクリックします。セル選択モードに切り替わります。EasyBuilder タグの Enable セルを選択し、「ツール有効」ラベルの下にあるセルを見つけます。[OK] ボタンをクリックして、選択を確定します。
  7. これで、EasyBuilder 開発環境に戻ったときには、新たに追加されたコントロールが有効で表示されています。
Closed 例 - [エッジ幅] パラメータの 位置決めエッジツール への追加

この例では、「位置決めエッジツール」は、EditInt 関数の上に「エッジ幅」というテキストラベルを追加することで、FindLine 関数の [エッジ幅] パラメータが表示されるように変更されます。

  1. EasyBuilder 開発環境の [位置決め] アプリケーションステップで、「位置決めエッジツール」を追加します。
  2. パレットの [結果] タブで、[位置決めエッジツール] を右クリックし、[スプレッドシートのこのツールへジャンプ] を選択します。

  3. 「位置決めエッジツール」には、オペレータ I/F 関数とツールパラメータラベルの 2 行があり、「ツール有効」ツールパラメータラベルとその下の ListBox 関数で始まります。この例では、EasyBuilder 開発環境で [エッジ幅] パラメータが、[エッジのコントラスト] パラメータと [エッジの遷移] パラメータの間に表示されるようにします。そのため、「エッジのコントラスト」ラベルの右側にあるセルから ListBox 関数を含む 2 行分の計 8 セルをハイライトして切り取り、1 列右側へずらして貼り付けます。ライトし、1 列あたり 8 個のセルを切り取り、右側に貼り付けます。

  4. 「エッジのコントラスト」ツールパラメータラベルのセルの右側にあるセルに、「エッジ幅」というツールパラメータラベルを入力します (先頭にアポストロフィ (') を使用)。

  5. 右クリックメニューを使用して [関数の挿入] を選択するか、または [挿入] メニューで [式] を選択して、[関数の挿入] ダイアログを起動し、ツールパラメータラベルの下のセルに EditInt 関数を挿入します。

  6. EditInt 関数を挿入すると、プロパティシートが自動的に開きます。EditInt 関数の [最小] および [最大] パラメータをそれぞれ 0 と 10 に設定し、[OK] ボタンをクリックして変更を確定します。

  7. スニペット内で FindLine 関数を見つけて ( [image] データ構造で示されている)、そのセルをダブルクリックし、関数のプロパティシートを開きます。

  8. FindLine プロパティシートで、[エッジ幅] パラメータを選択し、プロパティシートのツールバーにある [絶対参照を挿入] ボタンをクリックします。

  9. セル選択モードに切り替わります。EditInt 関数を含むセルを選択します。セルをダブルクリックするか、または [ジョブの編集] ツールバーの [OK] ボタンをクリックして、選択を確定します。

  10. FindLine プロパティシートが再表示されます。今回は、[エッジ幅] パラメータが、EditInt 関数への絶対セル参照を表示しています。[OK] ボタンをクリックして、変更を確定します。

  11. 最後に、FindLine 関数の [エッジ幅] パラメータを制御している EditInt 関数のツールでの実行を条件付きで有効にする必要があります。EditInt 関数を右クリックし、右クリックメニューから [セル状態] を選択して、[セル状態] ダイアログを起動します。
  12. セル状態を [条件付きで有効] に設定してから、[セルの選択] ボタンをクリックし、セル選択モードに切り替えます。

  13. EasyBuilder タグの「Enable」セルを選択します。セルをダブルクリックするか、または [ジョブの編集] ツールバーの [OK] ボタンをクリックして、選択を確定します。

  14. [セル状態] ダイアログが再度表示されます。[OK] ボタンをクリックして、選択を確定します。
  15. EasyBuilder 開発環境に戻ります。[エッジ幅] パラメータが、ツールの [設定] タブに表示されます。

EasyBuilder ツールスニペットからのパラメータの削除

特定のアプリケーションでは、EasyBuilder の「位置決めツール」または「検査ツール」で限定された一部のコントロールだけが有効であれば良い場合があります。このような状況では、特定のコントロールを削除してツールを簡略化できます。

スプレッドシート環境で EasyBuilder の「位置決めツール」または「検査ツール」からパラメータを削除するには

  1. スプレッドシート環境でツールに移動するには、パレットの [結果] タブでツールを右クリックして [スプレッドシートのこのツールへジャンプ] を選択するか、[表示] メニューの [スプレッドシート] を選択します。
  2. 削除するパラメータのラベルとオペレータ I/F 関数を含むセルを選択します。ハイライトされたセルを右クリックし、[コンテンツのクリア] オプションを選択します。

注意: 右クリックの削除によってセルを削除しないでください。その場合、既存のセルが自動的に移動するため、依存関係が破壊され、ジョブが正常に機能しない場合があります。

  3. これで、セルは空になります。EasyBuilder 開発環境に戻ると、コントロールは表示されていません。

EasyBuilder ツールスニペットパラメータの名前の変更

EasyBuilder の「位置決めツール」および「検査ツール」パラメータの名前は、パラメータの名前を変更することで、アプリケーションおよびジョブに応じてカスタマイズできます。

スプレッドシート環境で EasyBuilder の「位置決めツール」または「検査ツール」からパラメータを削除するには

  1. スプレッドシート環境でツールに移動するには、パレットの [結果] タブでツールを右クリックして [スプレッドシートのこのツールへジャンプ] を選択するか、[表示] メニューの [スプレッドシート] を選択します。
  2. 変更するテキストラベルのセルを選択し、[ジョブの編集] ツールバーの数式エディタに新しい名前を入力します。テキストの先頭にあるアポストロフィ (') は削除しないでください。削除すると、テキストラベルは EasyBuilder によって認識されません。
  3. これで、EasyBuilder 開発環境に戻ると、コントロールの新しい名前が表示されています。


EasyBuilder のサンプルジョブとサンプル画像の概要

サンプルジョブとサンプル画像

EasyBuilder のサンプルジョブとサンプル画像の概要

EasyBuilder サンプルジョブのロード

EasyBuilder サンプル画像のロード

EasyBuilder のサンプルジョブとサンプル画像の概要

EasyBuilder には、複数のサンプルジョブと、これに対応するサンプル画像が含まれます。これらのサンプルジョブは、EasyBuilder の検査ツールを使用して実際の応用事例を解決する方法を示します。 想定される応用事例を幅広く網羅した EasyBuilder サンプルジョブは、特定の状況で位置決めツール、および検査ツールを使用する方法の有用な例を提供し、フィクスチャツールの検索や使用方式を最適化するために領域グラフィックスを配置する方法を示します。

EasyBuilder サンプルジョブには、[記録/再生のオプション] の有用性を表した例も用意されています。[記録/再生のオプション] によって、あらかじめ取り込んでおいた複数の画像を繰り返し使用できるようになり、ツールの結果を即座にフィードバックし、しきい値や制限を簡単に設定できるようになります。 マシンビジョンアプリケーションを設計するときは、検査における「良い」画像と「悪い」画像の例となる多数の画像を広い範囲にわたって取り込んでおくことが理想的です。その後で、「良い」画像を中心に応用事例を設計し、そのほかの画像は許容可能な値の範囲を確立する手段として使用します。

EasyBuilder サンプルジョブのロード

EasyBuilder サンプルジョブを使用するには、サンプルジョブと、それに付随する画像をロードする必要があります。

  1. [接続] ステップから、ローカルエミュレータ、または In-Sight センサに接続します。[ジョブのロード] セクションの [ジョブを開く] ボタンをクリックします。
  2. [開く] ダイアログから In-Sight Explorer EasyBuilder の Sample Jobs ディレクトリに移動し、ロードするサンプルジョブを選択します。
注意: 標準ユーザがアクセスできるようにするために、In-Sight Explorer 4.5.0 以降、Sample Job のデフォルトフォルダの場所は Program Files フォルダから次の場所に変更されました。
  • Windows Vista 以降:
    C:\Users\Public\Documents\Cognex\In-Sight\In-Sight Explorer x.x.x
  • Windows XP:
    C:\Documents and Settings\All Users\Documents\Cognex\In-Sight\In-Sight Explorer x.x.x
  3. サンプルジョブをロードしたら、次に対応するサンプル画像をロードする必要があります。

EasyBuilder サンプル画像のロード

サンプルジョブに対応するサンプル画像のロードを開始するには次の 2 つの方法があります。

  • オプション 1: [EasyBuilder] ツールバーの [image] アイコンをクリックします。[記録/再生のオプション] ダイアログが表示されます。
  • オプション 2: [画像の設定] ステップをクリックし、[画像取り込み/ロード] セクションの [PC から画像をロード] ボタンを押します。この方法でも、[記録/再生のオプション] ダイアログが表示されます。
  1. [記録/再生のオプション] ダイアログは、自動的に [再生] タブが表示された状態で開きます。表示されていない場合は、[再生] タブをクリックします。
  2. [再生フォルダ] セクションで 参照 ボタンをクリックし、[フォルダの参照] ダイアログを表示します。[Sample Jobs] → [EasyBuilder] ディレクトリに移動し、サンプルジョブをロードしたときに指定したフォルダを選択します。[OK] ボタンをクリックして、続行します。
  3. [再生フォルダ] には指定したディレクトリが表示されます。[画像カウント] はこのディレクトリに保存されている画像の数を示しています。[記録/再生のオプション] ダイアログの [OK] ボタンをクリックして、続行します。
  4. サンプルジョブとサンプル画像を揃えたら、[ジョブの実行] ステップに移動し、[EasyBuilder] ツールバーの [image] ボタンをクリックして、検査ツールの実行を観察するか、または [位置決め] または [検査] ステップに移動して、その応用事例でツールがどのように変更されているかを確認します。


対話型グラフィックスモード

対話型グラフィックスモード (セルグラフィックス)

編集メニュー

In-Sight Explorer GUI リファレンス

対話型グラフィックスについて

対話型グラフィックスモードの使用法

対話型グラフィックスモードのショートカット

対話型グラフィックスについて

多くの In-Sight 関数のパラメータ、特にビジョンツール関数のパラメータは、画像に重なったグラフィックスを調整して設定することができます。対話型グラフィックスを使用すると、対象領域やモデル登録の領域の大きさ、位置、角度を簡単に設定することができます。対話型グラフィックスは、対応するグラフィックスを持つ関数を含む、どのスプレッドシートのセルからでも調整することができます。また、プロパティシート上の、対応するグラフィックスを持つどのパラメータの値からでも、調整することができます。対話型グラフィックスモードには、スプレッドシートの標準ビューまたはカスタムビューでアクセスできます。ただし、ユーザのアクセスレベルによっては操作が禁止される場合もあります。

対話型グラフィックスモードの使用法

  1. 対話型グラフィックスが関連付けられているスプレッドシートのセルまたはプロパティシートの値を選択します (対応する関数が現在の状況では使用できないときには、[セルグラフィックスの編集] [image] アイコンがグレーアウトされます)。
  2. 対話型グラフィックスモードに切り替えるには、4 つの方法があります。
  • F9 キーを押します。
  • [ジョブの編集] ツールバーの [セルグラフィックスの編集] [image] ボタンをクリックします。
  • プロパティシートから、プロパティシートのツールバーにある [セルグラフィックスの編集] [image] ボタンをクリックします。
  • 右クリックして、ショートカットメニューから [セルグラフィックスの編集] を選択します。
  3. 半透明のスプレッドシートオーバレイやプロパティシートが非表示となり、画像の上に対話型グラフィックスが表示されます。対話型グラフィックスモードには、6 つのタイプがあります。ドーナツ領域、領域、円、十字マーク、点、および線です。対話型グラフィックスに表示される対話型グラフィックスモードアイコンの種類は、セルまたはパラメータ値に必要な入力の種類によって異なります。下記の対話型グラフィックスモード名をクリックすると、それぞれの編集方法が表示されます。
  • Closed ドーナツ領域

    移動

    ドーナツ領域の場所を設定します。ステータスバーに領域の座標値がピクセル単位で表示されます。キーボードで領域を操作するとグラフィックスの中央にも座標値が表示されます。

    操作

    キーボード

    マウス

    左に移動

    ← キー

    ドーナツ領域内をクリックし、左へドラッグします。

    右に移動

    → キー

    ドーナツ領域内をクリックし、右へドラッグします。

    上に移動

    ↑ キー

    ドーナツ領域内をクリックし、上へドラッグします。

    下に移動

    ↓ キー

    ドーナツ領域内をクリックし、下へドラッグします。

    サイズ変更モードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

    サイズ変更

    ドーナツ領域の中心を基準にして、ドーナツ領域の内円や外円のサイズを変更します。内円の半径 (矢印の右) および外円の半径 (矢印の下) は、ピクセル単位で表示されます。マウスを使用する場合、内円の半径および外円の半径の値はステータスバーに表示されます。

    操作

    キーボード

    マウス

    内円の半径の縮小

    ↑ キー

    内円のエッジをクリックし、中心方向へドラッグします。

    内円の半径の伸張

    ↓ キー

    内円のエッジをクリックし、円の外側方向へドラッグします。

    外円の半径の縮小

    ← キー

    外円のエッジをクリックし、中心方向へドラッグします。

    外円の半径の伸張

    → キー

    外円のエッジをクリックし、円の外側方向へドラッグします。

    移動モードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

  • Closed 領域

    領域は、[カーブ] の値によって、次の 3 つの異なる形状になります。

    • カーブ ＝ 0: 領域は矩形になります。
    • 0 < カーブ < 120: 領域は円になります。
    • カーブ >= 120: 領域は円弧になります。

    これらの形状の操作方法が明確に異なるのは、サイズ変更モードの場合のみです。

    移動

    領域の場所を設定します。領域の中心の座標がピクセル単位で表示されます。キーボードで領域を操作するとグラフィックスの中央にも座標値が表示されます。

    操作

    キーボード

    マウス

    左に移動

    ← キー

    領域内をクリックし、左へドラッグします。

    右に移動

    → キー

    領域内をクリックし、右へドラッグします。

    上に移動

    ↑ キー

    領域内をクリックし、上へドラッグします。

    下に移動

    ↓ キー

    領域内をクリックし、下へドラッグします。

    サイズ変更モードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

    サイズ変更

    (矩形)

    領域の [カーブ] が 0 のとき、領域は矩形になります。矩形の高さと幅がピクセル単位で中心付近に表示されます。マウスを使用する場合、矩形の高さと幅はピクセル単位でステータスバーに表示されます。高さと幅は、次の方法で変更できます。

    操作

    キーボード

    マウス

    幅の縮小

    ← キー

    いずれかの端点マーク [image] をクリックし、内側へドラッグします。

    幅の伸張

    → キー

    いずれかの端点マーク [image] をクリックし、外側へドラッグします。

    高さの縮小

    ↑ キー

    いずれかの端点マーク [image] をクリックし、内側へドラッグします。

    高さの伸張

    ↓ キー

    いずれかの端点マーク [image] をクリックし、外側へドラッグします。

    回転モードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

    領域の最大化

    Ctrl+Shift+M キー

    [ジョブの編集] ツールバーの [領域の最大化] [image] ボタンをクリックします。

    サイズ変更

    (円弧)

    領域の [カーブ] が 0 以外かつ ±360 以外のとき、領域は円弧になります。この場合、[幅] は円弧の中央部を通って Y 軸に沿った長さを指し、[高さ] は、X 軸に沿った線分の長さを指します。円弧形領域の高さと幅がピクセル単位で中心付近に表示されます。マウスを使用する場合、円弧形領域の高さと幅はピクセル単位でステータスバーに表示されます。高さと幅は、次の方法で変更できます。

    操作

    キーボード

    マウス

    Y 軸円弧の縮小

    ← キー

    いずれかの端点マーク [image] をクリックし、内側へドラッグします。

    Y 軸円弧の伸張

    → キー

    いずれかの端点マーク [image] をクリックし、外側へドラッグします。

    X 軸線分の縮小

    ↑ キー

    いずれかの端点マーク [image] をクリックし、内側へドラッグします。

    X 軸線分の伸張

    ↓ キー

    いずれかの端点マーク [image] をクリックし、外側へドラッグします。

    回転モードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

    領域の最大化

    Ctrl+Shift+M キー

    [ジョブの編集] ツールバーの [領域の最大化] [image] ボタンをクリックします。

    サイズ変更

    (円)

    領域の [カーブ] が ±360 のとき、領域は円になります。円モードでは、マウスで端点をドラッグして、内側と外側の円弧長を同時に変更することはできません。これにより、円形オブジェクトに合わせて領域を形成するプロセスが容易になります。

    円モードでは、[幅] は円弧の中央部を通って Y 軸に沿った長さを指し、[高さ] は、X 軸に沿った線分の長さを指します。円弧形領域の高さと幅がピクセル単位で中心付近に表示されます。マウスを使用する場合、円弧形領域の高さと幅はピクセル単位でステータスバーに表示されます。高さと幅は、次の方法で変更できます。

    操作

    キーボード

    マウス

    Y 軸円弧の縮小

    ← キー

    いずれかの端点マーク [image] をクリックし、内側へドラッグします。

    Y 軸円弧の伸張

    → キー

    いずれかの端点マーク [image] をクリックし、外側へドラッグします。

    X 軸線分の縮小

    ↑ キー

    いずれかの端点マーク [image] をクリックし、内側へドラッグします。

    X 軸線分の伸張

    ↓ キー

    いずれかの端点マーク [image] をクリックし、外側へドラッグします。

    回転モードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

    領域の最大化

    Ctrl+Shift+M キー

    [ジョブの編集] ツールバーの [領域の最大化] [image] ボタンをクリックします。

    回転モード

    領域の回転角度を調整します。回転角度 (0 ～ 360) が領域の中心に表示されます。マウスでは回転角度の調整はできません。

    操作

    キーボード

    マウス

    右回りに回転

    → キー

    回転 [image] アイコンをクリックし、右回りにドラッグします。

    左回りに回転

    ← キー

    回転 [image] アイコンをクリックし、左回りにドラッグします。

    カーブモードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

    曲げ

    領域を上下に曲げます。これにより、円弧やドーナツ (円形) の領域を作成できます。

    操作

    キーボード

    マウス

    上に曲げる

    ← キー

    カーブ [image] アイコンをクリックし、上へドラッグします。

    下に曲げる

    → キー

    カーブ [image] アイコンをクリックし、下へドラッグします。

    移動モードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

  • Closed 円

    移動

    円を場所を設定します。円の中心のピクセル座標が表示されます。キーボードで領域を操作するとグラフィックスの中央にも座標値が表示されます。

    操作

    キーボード

    マウス

    左に移動

    ← キー

    円内をクリックし、左へドラッグします。

    右に移動

    → キー

    円内をクリックし、右へドラッグします。

    上に移動

    ↑ キー

    円内をクリックし、上へドラッグします。

    下に移動

    ↓ キー

    円内をクリックし、下へドラッグします。

    サイズ変更モードへの切り替え

    F9 キー

    なし

    表示色の変更

    SHIFT+F9 キー

    なし

    サイズ変更

    円の中心を基準にして、円の半径を調整します。円の直径がピクセル単位で表示されます。マウスを使用すると、半径がステータスバーに表示されます。

    操作

    キーボード

    マウス

    半径の伸張

    ↓ キー

    円のエッジをクリックし、中心方向へドラッグします。

    半径の縮小

    ↑ キー

    円のエッジをクリックし、円の外側方向へドラッグします。

    移動モードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

  • Closed 十字マーク

    移動

    十字マークの場所を設定します。十字マークの中心の座標がピクセル単位で表示されます。キーボードで領域を操作するとグラフィックスの中央にも座標値が表示されます。

    操作

    キーボード

    マウス

    左に移動

    ← キー

    十字マークをクリックし、左へドラッグします。

    右に移動

    → キー

    十字マークをクリックし、右へドラッグします。

    上に移動

    ↑ キー

    十字マークをクリックし、上へドラッグします。

    下に移動

    ↓ キー

    十字マークをクリックし、下へドラッグします。

    サイズ変更モードへの切り替え

    F9 キー

    なし

    表示色の変更

    SHIFT+F9 キー

    なし

    サイズ変更

    十字マークの縦軸と横軸の長さを変更します。各軸の長さがピクセル単位で表示されます。マウスを使用すると、長さがステータスバーに表示されます。

    操作

    キーボード

    マウス

    縦軸の縮小

    ↑ キー

    縦軸の矢印の先端をクリックし、十字マークの中心方向へドラッグします。

    縦軸の伸張

    ↓ キー

    縦軸の矢印の先端をクリックし、十字マークの外側方向へドラッグします。

    横軸の縮小

    ← キー

    横軸の矢印の先端をクリックし、十字マークの中心方向へドラッグします。

    横軸の伸張

    → キー

    横軸の矢印の先端をクリックし、十字マークの外側方向へドラッグします。

    回転モードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

    回転モード

    十字マークの回転角度を調整します。グラフィックスの中央とステータスバーに領域の角度の値(0 ～ 360)が表示されます。マウスでは回転角度の調整はできません。

    操作

    キーボード

    マウス

    右回りに回転

    ← キー

    回転 [image] アイコンをクリックし、右回りにドラッグします。

    左回りに回転

    → キー

    回転 [image] アイコンをクリックし、左回りにドラッグします。

    移動モードへの切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

  • Closed 点

    移動

    点の場所を設定します。点の座標がピクセル単位で表示されます。キーボードで領域を操作するとグラフィックスの中央にも座標値が表示されます。

    操作

    キーボード

    マウス

    左に移動

    ← キー

    点をクリックし、左へドラッグします。

    右に移動

    → キー

    点をクリックし、右へドラッグします。

    上に移動

    ↑ キー

    点をクリックし、上へドラッグします。

    下に移動

    ↓ キー

    点をクリックし、下へドラッグします。

    表示色の変更

    Shift+F9 キー

    なし

  • Closed 線

    端点の設定

    線の両端点の位置を設定します。現在の端点の座標がピクセル単位で表示されます。キーボードで領域を操作するとグラフィックスの中央にも座標値が表示されます。

    操作

    キーボード

    マウス

    端点を左に移動

    ← キー

    端点マーク [image] をクリックし、左へドラッグします。

    端点を右に移動

    → キー

    端点マーク [image] をクリックし、右へドラッグします。

    端点を上に移動

    ↑ キー

    端点マーク [image] をクリックし、上へドラッグします。

    端点を下に移動

    ↓ キー

    端点マーク [image] をクリックし、下へドラッグします。

    端点の切り替え

    F9 キー

    なし

    表示色の変更

    Shift+F9 キー

    なし

  4. 変更を適用するには、Enter キーを押します。画像と半透明のスプレッドシートの間に赤色の Closed グラフィックスが表示されます。変更をキャンセルするには、Esc キーを押します。変更を適用すると、対話型グラフィックスモードに切り替える前のセルの数式またはプロパティシートの値に、新しい値が自動的に入力されます。

[対話型グラフィックスモードのショートカット]

操作

キーボード

マウス

対話型グラフィックスモードに切り替える

注意: 対話型グラフィックスモードに切り替えるには、アクティブなセルまたはプロパティシートの値に対話型グラフィックスモードが関連付けられている必要があります。

F9 キー

[ジョブの編集] ツールバーで、[セルグラフィックスの編集] [image] ボタンをクリックします。プロパティシートから、プロパティシートのツールバーにある [グラフィックスの編集] [image] ボタンをクリックします。

セルグラフィックスの領域を最大化する

なし

[ジョブの編集] ツールバーの [領域の最大化] [image] ボタンをクリックします。プロパティシートから、プロパティシートのツールバーにある [領域の最大化] [image] ボタンをクリックします。

以下の操作は、対話型グラフィックスモードでのみ可能です。

対話型グラフィックスモード間の切り替え

注意: F9 キーを押すと、使用している対話型グラフィックスモードに応じて、対話型グラフィックス内のアイコンが変化します。

F9 キー

なし

対話型グラフィックスを軸方向に移動

上に移動: ↑ キー

下に移動: ↓ キー

左に移動: ← キー

右に移動: → キー

対話型グラフィックスをクリックしたまま、移動する位置にドラッグします。

対話型グラフィックスを斜めに移動

左上に移動: Home キー

右上に移動: Page Up キー

左下に移動: End キー

右下に移動: Page Down キー

対話型グラフィックスをクリックしたまま、移動する位置にドラッグします。

画像の移動 (ゆっくり)

上に移動: Shift+↑ キー

下に移動: Shift+↓ キー

右に移動: Shift+→ キー

左に移動: Shift+← キー

画像スクロールバーをクリックしてドラッグします。

画像の移動 (速く)

上に移動: Shift+Page Up キー

下に移動: Shift+Page Down キー

右に移動: Shift+End キー

左に移動: Shift+Home キー

画像スクロールバーをクリックしてドラッグします。

画像の拡大表示

Shift+プラス
(テンキーの +) キー

[ジョブの表示] ツールバーの [拡大] [image] ボタンをクリックします。

画像内の特定の位置を中心に画像を拡大するには、Shift キーを押しながら、中心にする位置を左ボタンでダブルクリックします。

画像の縮小表示

Shift+マイナス
(テンキーの -) キー

[ジョブの表示] ツールバーの [縮小] [image] ボタンをクリックします。

画像内の特定の位置を中心に画像を縮小するには、Shift キーを押しながら、中心にする位置をマウスの右ボタンでダブルクリックします。

グラフィックスの色を切り替える

Shift+F9 キー

なし

対話型グラフィックスに加えた変更の適用

Enter キー

対話型グラフィックスをダブルクリックするか、[ジョブの編集] ツールバーで、[決定] [image] ボタンをクリックします。

対話型グラフィックスに加えた変更のキャンセル

Esc キー

[ジョブの編集] ツールバーで、[キャンセル] [image] ボタンをクリックします。

対話型グラフィックスモードのヘルプの表示

F1 キー

[ヘルプ] メニューで、[In-Sight Explorer のヘルプ] をクリックします。


ピクセル値表示モード

In-Sight Explorer GUI リファレンス

ピクセル値表示モードでは、スプレッドシートオーバレイが表示されていないときに、カーソルを使用して画像上の 1 つのピクセルを参照します。このモードでは、画像上でカーソルを動かすと、その座標位置のピクセルについて、8 ビットのグレースケール値（モノクロ In-Sight センサの場合）または 8 ビットの RGB 値（カラー In-Sight センサの場合）を表示します。値は、アクティブなスプレッドシートビューのステータスバーに表示されます。

ピクセル値表示モードに切り替えるには

[表示] メニューから、[オーバレイ] をクリックして、スプレッドシートオーバレイを非表示にします。または、[ジョブの表示] ツールバーの [オーバレイ] [image] ボタン をクリックします。画像上でカーソルを動かすだけで、ステータスバーにピクセル値が表示されます。

最初の例では、カーソルは（x, y）=（173, 266）の位置にあり、8 ビットのグレースケール値は 159 です。2 つ目は、カラー In-Sight センサの例です。カーソルは（x, y）=（275, 455）の位置にあり、RGB（赤、緑、青）成分は（R, G, B）=（156, 150, 115）です。


セル選択モード

ユーザインタフェース

In-Sight Explorer GUI リファレンス

セル選択モードを使用すると、最も簡単に相対および絶対セル参照を挿入できます。セル選択モードでは、スプレッドシートのセルを直接クリックすることによってセル参照を作成できます。これを利用すると、例えば、ブロブ数がセル D25 と G67 のどちらに記録されているかを覚えておく必要がなく、セルを視覚的に選択することができます。

セル選択モードに切り替えるには

次のいずれかの場面から、 [相対参照の挿入] [image] ボタンまたは [絶対参照の挿入] [image] ボタンをクリックすることによって、セル選択モードに切り替えることができます。

  • プロパティシート
  • [カスタムビューの設定] ダイアログ
  • [セル状態] ダイアログ
  • Dilog 関数で定義されたダイアログ

Closed セル選択モードでは、表示が一時的に In-Sight スプレッドシートの特殊なビューに切り替わります。このビューでは、スプレッドシート背後の画像が見えなくなり、参照されるセルが赤い色の枠で囲まれます。

セル参照を設定するには

  1. 参照するセルを選択します。マウスまたはキーボードを使用して、1 つまたは複数のセルを選択できます。マウスで複数のセルを選択するには、参照するすべてのセルをドラッグします。キーボードの場合は、Shift キーを押したまま矢印キーを押して、セルのグループを選択します。
  2. 参照を確定します。参照は、参照するセルをダブルクリックすることによって（1 つのセルだけを参照する場合）、または Enter キーを押すことによって（1 つまたは複数のセルの場合）、確定することができます。参照を確定すると、表示画面はセル選択モードに切り替える前のプロパティシート、ダイアログ、またはスプレッドシートセルに戻ります。

セル選択モードの例

サンプル画像 Image2B.bmp を使用した、セル選択モードの操作例を 2 つ示します。

1 つのセルを参照する操作手順

複数のセルを参照する操作手順

1 つのセルを参照する操作手順

画像のブロブ分析を実行するものとします。セル A2 の ExtractBlobs 関数で検出されたブロブの数を、セル B2 の GetNFound 関数で表示しています。ここでは、GetNFound 関数の結果をセル A6 に「リンクコピー」し、セル B2 のブロブ数が変わるたびにセル A6 の値も自動的に更新される様子を示します。セル A6 にセル B2 への絶対セル参照を作成して、2 つのセルを同期化します。

次のようなスプレッドシートを使用しているとします。

検出されたブロブの数（4.000）の同期コピーを A6 に作成する手順は次の通りです。

  1. セル A6 をハイライトします。
  2. [ジョブの編集] ツールバーの [絶対参照] [image] ボタンをクリックします。セル選択モードに切り替わります。
  3. セル B2 をダブルクリックします。

注意: この図では、セル A2 の ExtractBlobs 関数の [表示] パラメータが [入力と結果のグラフィックス] に設定されています。

セル A6 に挿入されている数式は、セル A2 への絶対参照（$A$2）です。セル B2 の値が変更されるたびに、A6 も更新されます。

複数のセルを参照する操作手順

複数セル参照は、プロパティシートで複数の値を持つパラメータ（フィクスチャや領域など）を定義する際に役立ちます。次のようなスプレッドシートを使用しているとします。

生産ラインで、対話型グラフィックス（赤色の枠）を調整する仕組みを考えます。領域の各プロパティ（X、Y、高さ、幅、角度、カーブ）の EditFloat コントロールを次のように定義します。

A10 = 'X

B10 = 'Y

C10 = '高さ

D10 = '幅

E10 = '角度

F10 = 'カーブ

A11 = EditFloat(0,480)

B11 = EditFloat(0.640)

C11 = EditFloat($B$7,$B$8)

D11 = EditFloat($B$7,$B$8)

E11 = EditFloat(0,360)

F11 = EditFloat(0,400)

EditFloat 関数の入力制限値（最小値と最大値）は任意ですが、領域の指定範囲外にならないよう適切な値が選択されています。セル B7 には、10.000 が含まれています。これは、EditFloat コントロールの最初の引数に絶対参照 $B$7 を設定することによって高さと幅の下限を定義しています。同様に、セル B8 はこれらのコントロールの上限値を 500.000 に設定しています。

セル A2 をハイライトします。[ジョブの編集] ツールバーの [式] [image] ボタンをクリックして、ExtractBlobs 関数のプロパティシートを開きます。

[領域] パラメータを選択します。次に、[ジョブの変数] ツールバーの [絶対参照] [image] ボタンをクリックして、セル選択モードに切り替えます。マウスまたはキーボード（Shift+矢印キー）を使用して、セル A11～F11 を次のようにハイライトします。

Enter キーを押して範囲を確定します。[OK] をクリックしてプロパティシートを閉じます。以上で、スプレッドシートのエディットコントロールで対話型グラフィックス領域を調整できるようになります。


セル参照

挿入メニュー

In-Sight Explorer GUI リファレンス

セル参照について

セル参照を作成するショートカット

セル参照の例

セル参照について

セル参照は、別のセルへのリンクです。参照されるセルのデータが変更されると、参照するセル（参照を含むセル）の値が自動的に更新されます。ただし、このリンクは一方向です。参照されるセルは、ほかのどのセルから参照されているかを関知しません。

次の 2 種類のセル参照があります。

  • [相対参照]:相対セル参照は、新しい位置にコピーすると、行アドレスや列アドレスが変化する参照です。変化する量は、コピー元セルと貼り付け先セルの間の距離（行方向と列方向の両方）と同じです。

例えば、セル A2 が相対参照 A1 を含むとします。セル A2 をセル S43 にコピーすると、セル S43 は S42 を含みます。この場合、セル参照は本質的に「常に 1 つ上のセルを指す」ことになります。

  • [絶対参照]:絶対セル参照は、新しい位置にコピーしても変化しないセル参照です。数式では、絶対参照をドル記号（$）で示します。この記号を任意の行または列（または両方）と組み合わせて使用することによって、絶対セル参照を作成できます。

相対セル参照と絶対セル参照を組み合わせて使用することによって、混合参照を作成することができます。

次の表に、絶対セル参照と相対セル参照の 4 つの形態と、それらをコピーして別のセルに貼り付けた場合の結果を示します。

説明 | 参照タイプ | 例 | 新しいセルに貼り付け後の結果
相対列と相対行 | 相対 | B4 キー | 行（4）と列（B）の両方が、オリジナルのセルからの距離に応じて変更されます。
固定列と固定行 | 絶対 | $A$1 | 常に、$A$1 です。
固定列と相対行 | 混合 | $D9 | 列は常に D ですが、行（9）はオリジナルのセルからの距離（行数）に応じて変更されます。
相対列と固定行 | 混合 | G$3 | 列（G）はオリジナルのセルからの距離（列数）に応じて変更されますが、行は常に 3 のままです。

セル参照を作成するショートカット

  • [相対参照]:Ctrl+Shift+R キーを押すか、[相対参照] [image] ボタンをクリックします。セル選択モードに切り替わり、参照するセルを選択できます。
  • [絶対参照]:Ctrl+Shift+A キー を押すか、[絶対参照] [image] ボタンをクリックします。セル選択モードに切り替わり、参照するセルをスプレッドシートからグラフィカルに選択できます。

セル参照の例

Closed 相対列/相対行（相対参照）

セル C9 に E14 が含まれているとします。C9 を B1 にコピーすると、B1 に D6 が含まれます。

Closed 固定列/固定行（絶対参照）

セル E2 に $F$7 が含まれているとします。E2 を R7 にコピーすると、R7 に $F$7 が含まれます。

Closed 固定列/相対行（混合参照）

列方向は常に列 A を参照し、行方向はコピー元セルとコピー先セルの距離に応じて変化するセル参照を作成するとします。このとき、次のようにセル A2、A3、A4 に 3 つのデータポイント（5、18、55）が存在するとします。

この場合、$ 記号を列の前に付け（$A、行の前には付けない（2）ようにして、$A2 というセル参照をセル B2 に挿入することができます。このセル B2 をコピーして、セル B3、B4、C2、C3、および C4 に貼り付けます。貼り付けたセルは常に列 A を参照しますが、参照する行は参照を貼り付けたセルと相対関係にあることを確認してください。

Closed 相対列/固定行（混合参照）

列方向はコピー先の列に応じて変化し、行方向は常に行 2 を参照するセル参照を作成するとします。このとき、次のようにセル A2、B2、C2 に 3 つのデータポイント（13、20、26）が存在するとします。

この場合、列を相対的に参照し（A）、行を絶対的に参照して（$2）、A$2 というセル参照をセル A3 に挿入することができます。このセル A3 をコピーして、セル A4、B3、B4、C3、C4 に貼り付けます。貼り付けたセルは常に行 2 を参照しますが、参照する列は参照を貼り付けたセルと相対関係にあることを確認してください。


[セル状態] ダイアログ

編集メニュー

In-Sight Explorer GUI リファレンス

[セル状態] ダイアログを使用すると、セルの実行を明示的に有効または無効にしたり、参照セルの値に基づいて条件付きで有効または無効にしたりすることができます。無効なセルは、スプレッドシートの更新時に実行されません。したがって、これらのセルの値は、セルが有効になるまで更新されません。

1 つまたは複数のセルの状態を設定するには

  1. スプレッドシートのセルまたはセル範囲を選択します。
  2. [編集] メニューで、[セル状態] をクリックします。

  3. 選択したセルについて、次のいずれかの状態を設定します。
  • 選択したセルは、トリガがかけられても実行されません。選択したセルは、トリガがかけられても実行されません。
  • [有効]: 選択したセルは、トリガがかけられると実行されます。
  • [条件付きで有効]: 選択したセルは、参照セルの値がゼロ以外の場合に有効になります。
  4. 前の手順で [条件付きで有効] を選択した場合は、次の手順を実行します。
  1. 参照セルのタイプとして、[相対] または [絶対] を選択します。
  2. [セルの選択] をクリックしてセル選択モードにします。

注意: セルがそのセル自体を参照している場合、その参照は無視されます。

  3. 手順 1 で選択したセルの状態を決定する値を持つセルを選択します。[参照先のセル] の値が 0 の場合は、選択したセルが無効になります。0 以外の場合は、選択したセルが有効になります。
  5. [OK] をクリックします。

セル状態のコピーと貼り付け

セル状態が [条件付きで有効] のセルをコピーして貼り付ける場合、貼り付けたセルの状態は、コピーされたセルの [有効条件の参照設定] で選択されている参照のタイプによって異なります。セルをコピーして新しい位置に貼り付けると、セル参照は相対または絶対セル参照として機能します。しかし、切り取って貼り付けると、セル参照は、切り取られたセルと同じになります。

ここをクリックすると、条件付き絶対/相対セル参照に関する詳細な説明および設定鄭淳がポップアップ表示されます。

関連項目

条件付きで有効のセル状態 - 相対セル参照と絶対セル参照

絶対セル参照

相対セル参照

セルの実行、依存関係、およびセルを更新させるトリガ

セルの実行時間のプロファイル


[スニペット] ダイアログ

[ファイル] メニュー → [スニペット] → [インポート/エクスポート]

In-Sight Explorer GUI リファレンス

[スニペット] ダイアログでは、セルデータ （.CXD） ファイルとして保存した事前設定のセルのグループを PC 上の Snippets フォルダにエクスポートすることによって、よく実行するスプレッドシートタスクを自動化することができます。エクスポートしたスニペットをスプレッドシートにインポートします。または、ツールパレットからスプレッドシートに直接、スニペットをドラッグアンドドロップすることによって、スニペットをインポートすることもできます。

注意:
  • PC 上の Snippets フォルダに保存したスニペットは、自動的にパレットに表示されます。
  • ExportData/ImportData 関数を使用して、スニペットを PC にエクスポート/インポートすることはできません。

スニペットのエクスポート

スニペットのインポート

スニペットのエクスポート

  1. データをエクスポートしたいセルを選択します。
  2. [ファイル] メニューから、[スニペット] → [エクスポート] をクリックします。または、データをエクスポートする必要のあるセルを右クリックして、ショートカットメニューから [スニペット] → [エクスポート] を選択します。

  3. エクスポートしたスニペットを保存する場所を選びます。
  4. アクティブセルを新規ファイルに保存するには、[ファイル名] テキストボックスに名前を入力して、[保存] をクリックします。既存のファイルに上書き保存するには、そのファイルをリストから選択して、[保存] をクリックします。In-Sight Explorer は、エクスポートされるすべてのセルに自動的に .CXD ファイル拡張子を付加します。

注意: In-Sight Explorer 4.4.1 以降、ジョブが保護されている場合、ドロップダウンメニューに [暗号化] が表示されるようになりました。[高速] (デフォルト) と [レガシー] の 2 つのオプションが選択できます。[高速] オプションは、特にジョブファイルが大きい場合に、ジョブに関連する遅延を減少させます。[レガシー] オプションは、In-Sight ビジョンシステム 4.4.0 またはそれ以前のバージョンで動作するジョブに使用します。[暗号化] ドロップダウンは、ジョブに使用されている暗号化オプションにあわせて設定してください。

スニペットのインポート

  1. 空白のセルを選択します。
  2. [ファイル] メニューから [スニペット] → [インポート] をクリックします。または、セルを右クリックして、ショートカットメニューから [スニペット] → [インポート] を選択します。

  3. 開くスニペットが格納されている場所を選択します。
  4. 目的のファイルをハイライトして、[開く] をクリックします。または、スニペットファイルをダブルクリックするか、[ファイル名] にファイル名を入力して [開く] をクリックします。

関連項目

パレット


[セルのインポート/エクスポート] ダイアログ

ファイルメニュー

In-Sight Explorer GUI リファレンス

[セルのエクスポート] ダイアログでは、スプレッドシートのセルのデータをセルデータ （.CXD） ファイルにエクスポートして、次の場所に保存することができます。

  • FTP 経由で中央サーバに。
  • ローカルまたはリモートの In-Sight センサまたはエミュレータに。
  • ローカルまたはリモートの In-Sight センサまたはエミュレータの RAMDisk フォルダに。
  • PC の Snippets フォルダに。

[セルのインポート] ダイアログを使用すると、以下の場所から .CXD ファイル内のデータをスプレッドシートにインポートすることができます。

  • FTP 経由で中央サーバから。
  • ローカルまたはリモートの In-Sight センサまたはエミュレータから。
  • ローカルまたはリモートの In-Sight センサまたはエミュレータの RAMDisk フォルダから。
  • PC の Snippets フォルダから。

[セルのエクスポート/インポート] ダイアログでは、任意のセルデータ型を含む複数セルのエクスポートやインポートを手動で操作することができます。[セルのエクスポート] および [セルのインポート] ダイアログを使用してセルデータをインポートしたとき、インポートしたデータをスプレッドシート内で編集することができます。

セルのエクスポート

セルのインポート

セルのエクスポート

  1. データをエクスポートしたいセルを選択します。
  2. [ファイル] メニューの [セルのエクスポート] をクリックします。または、データをエクスポートする必要のあるセルを右クリックして、ショートカットメニューから [セルのエクスポート] を選択します。

  3. エクスポートしたセルを保存する場所を選びます。[ファイルの場所] ドロップダウンリストには、すべてのローカルドライブ、ネットワークドライブ、検出された In-Sight センサ、エミュレータ、およびローカルサブネット上の RAMDisk フォルダと、Explorer のホストテーブルで定義されているすべてのデバイスが含まれています。

注意: Snippets フォルダにエクスポートされた .CXD ファイルは、自動的にパレットに表示されます。

  4. アクティブセルを新規ファイルに保存するには、[ファイル名] テキストボックスに名前を入力して、[保存] をクリックします。既存のファイルに上書き保存するには、そのファイルをリストから選択して、[保存] をクリックします。In-Sight Explorer は、エクスポートされるすべてのセルに自動的に .CXD ファイル拡張子を付加します。

セルのインポート

  1. 空白のセルを選択します。
  2. [ファイル] メニューの [セルのインポート] をクリックします。または、セルを右クリックして、ショートカットメニューから [セルのインポート] を選択します。

  3. 開く .CXD ファイルが格納されている場所を選択します。[ファイルの場所] ドロップダウンリストには、すべてのローカルドライブ、ネットワークドライブ、検出された In-Sight センサ、エミュレータ、およびローカルサブネット上の RAMDisk フォルダと、Explorer のホストテーブルで定義されているすべてのデバイスが含まれています。[ファイルの場所] ドロップダウンリストには、すべてのローカルドライブ、ネットワークドライブ、検出された In-Sight センサ、エミュレータ、およびローカルサブネット上の RAMDisk フォルダと、Explorer のホストテーブルで定義されているすべてのデバイスが含まれています。
  4. 目的のファイルをハイライトして、[開く] をクリックします。または、.CXD ファイルをダブルクリックするか、ファイル名を入力します。

関連項目

ExportData 関数

ImportData 関数

[RAM ディスクの設定] ダイアログ

パレット


[ジョブの保護] ダイアログ

挿入メニュー

In-Sight Explorer GUI リファレンス

[ジョブの保護] ダイアログでは、ジョブの特定の部分を変更できないようにします。この機能は、例えば、正しく機能するために必要なセルを変更不可として、残りの部分をカスタマイズが可能なセルにしたジョブを作成する場合に有効です。ジョブは、ユーザが指定したパスワードで保護されます (パスワードを空白にしておくこともできます)。

ジョブの保護を解除するには、パスワードが必要です。ジョブが保護されると、ロックされたセルの数式を変更することはできませんが、ロックされたセルのフォーマット (フォント、色など) を変更することはできます。ロックされたセルにマウスポインタを合わせると、ロックされたセルの数式を数式バーとスプレッドシートビューのステータスバーで確認できますが、グレーアウトされます。ロックされたセルを選択したとき、ロック時に無効となるメニュー項目やツールバーのボタンは使用できません。ロックされたセルの数式の値は、Edit 関数を使用して変更することができます。例えば、EditInt 関数を使用して整数値を変更することができます。ジョブが保護されると、シートの左上隅に小さなロックアイコンが表示されます。

ジョブが保護されると、ロックされたセルについては、以下の操作は実行できません。

  • すべてクリア
  • コンテンツのクリア
  • 切り取り
  • セル、行、列の削除
  • セルの式の編集 (数式バーまたはプロパティシートから)
  • セルのグラフィックスの編集
  • セル状態の編集
  • 絶対および相対参照の挿入
  • シンボリックタグの挿入、削除、または変更
  • 関数の挿入
  • 貼り付け

また、ジョブが保護されると、次の操作もできなくなります。

  • セル、行、列の挿入

[ジョブの保護] ダイアログを表示するには

  1. [ファイル] メニューで、[ジョブの保護] をクリックします。

注意: [OK] をクリックすると、パスワードを入力していなくてもジョブは保護されます。

  2. パスワードを入力して、[OK] をクリックします。確認のために、パスワードの再入力を求められます。

確認パスワードが最初に入力したパスワードと違っていた場合、確認は失敗し、次のようなダイアログが表示されます。

確認が失敗した場合は、もう一度パスワードの入力と再入力を行う必要があります。


[セルの削除] ダイアログ

挿入メニュー

In-Sight Explorer GUI リファレンス

[セルの削除] ダイアログは、スプレッドシートのセル、セル範囲、行、または列を削除するために使用します。

[セルの削除] ダイアログを表示するには

  1. 削除したいセル、セル範囲、行、または列をクリックします。
  2. [編集] メニューで、[削除] をクリックします。または、削除する必要のあるセルを右クリックして、ショートカットメニューから [削除] を選択します。

  3. セル、行、列を削除する方法が決まったら、[OK] をクリックして、セル、行、列を削除します。

[セルの削除] ダイアログの設定項目

  • [セルを左方向に移動]: 選択したセルを削除して、残りのセルを左へシフトします。削除するセルと同じ数のセルを選択してください。
  • [セルを上方向に移動]: 選択したセルを削除して、残りのセルを上へシフトします。削除するセルと同じ数のセルを選択してください。
  • [行全体]: セルの行全体を削除します。削除したい行の中のセルをクリックしてください。例えば、行 5 を削除するには、行 5 の中のセルをクリックします。
  • [列全体]: セルの列全体を削除します。削除したい列の中のセルをクリックしてください。例えば、列 B を削除するには、列 B の中のセルをクリックします。


[検索] ダイアログ

編集メニュー

In-Sight Explorer GUI リファレンス

[検索] ダイアログは、スプレッドシートからテキスト文字列または数値を検索するときに使用します。

[検索] ダイアログを表示するには

  1. [編集] メニューで、[検索] をクリックします。または、標準ツールバーの [検索] [image] ボタンをクリックします。
  2. [検索する文字列] フィールドにテキストまたは数値を入力して、[次を検索] ボタンをクリックすると、検索が開始されます。

注意: [検索] ダイアログを使用するには、センサをオフラインモードにし、かつ、ライブビデオを終了している必要があります。また、スプレッドシートオーバレイが表示されている必要があります。

[検索] ダイアログの設定項目

  • [検索する文字列]: このボックスに、検索を定義するテキストまたは数値を入力します。以前の検索で使用した文字列をドロップダウンリストで再入力できます。テキストまたは数値を入力しなかった場合、In-Sight Explorer は、数式、値、またはコメントのない次のセルを検索します。
  • [検索方向]: 行ごとに検索するか、列ごとに検索するかを指定します。
  • [対象]: [数式]、[値]、または [コメント] のどれを検索するかを指定します。
  • [大文字と小文字を区別する]: 大文字と小文字を区別するかどうかを指定します。このチェックボックスをオンにすると、大文字と小文字を区別した検索が実行できます。
  • [完全に同一なセルだけを検索する]: セルのコンテンツが [検索する文字列] とまったく同じセルだけを検索するか、セルの内容の一部に検索パラメータが含まれているセルも検索するかを指定します。このチェックボックスをオンにすると、[検索する文字列] で指定された文字列だけを含むセルを検索します。
  • [次を検索]: このボタンをクリックすると、検索を開始します。もう一度クリックすると、検索条件の次のインスタンスを検索します。検索条件に一致するセルをすべて検索した後で [次を検索] をクリックすると、検索条件の最初のインスタンスに戻ります。
  • [閉じる]: このボタンをクリックすると、[検索] ダイアログを閉じます。


[ジャンプ] ダイアログ

編集メニュー

In-Sight Explorer GUI リファレンス

[ジャンプ] ダイアログは、スプレッドシートの特定のセルに移動して、そのセルをアクティブセルにするために使用します。指定されたセルがスプレッドシートの表示領域外にある場合、スプレッドシートは自動的にスクロールします。

[ジャンプ] ダイアログを表示するには

  • [編集] メニューで、[ジャンプ] をクリックします。

注意: [ジャンプ] ダイアログを使用するには、センサをオフラインモードにし、かつ、ライブビデオを終了している必要があります。また、スプレッドシートオーバレイが表示されている必要があります。

[ジャンプ] ダイアログの設定項目

  • [ジャンプ先]: このテキストボックスに、アクティブにする移動先のセルを入力します。入力できるのは、1 つのセルだけです。
  • [OK]: このボタンをクリックすると、ジャンプが実行されます。
  • [キャンセル]: このボタンをクリックすると、ダイアログが閉じます。


[カスタムビューの設定] ダイアログ

編集メニュー

In-Sight Explorer GUI リファレンス

[カスタムビューの設定] ダイアログではスプレッドシートの [カスタムビュー] プロパティを設定します。カスタムビューを使用すると、アプリケーション開発者は、必要なジョブデータだけを表示して、スプレッドシート内の詳細な数式を隠したランタイムディスプレイを作成することができます。Dialog や Wizard 関数などのグラフィックスコントロールをカスタムビューに組み込むと、生産フロアのオペレータはジョブの設定を簡単に調整することがきます。このとき、スプレッドシートやプロパティシートで直接数式を修正する必要はありません。

Closed カスタムビューの例を参照するにはここをクリックしてください。

注意: アクセスレベルがプロテクトまたはロックのユーザで In-Sight センサにログオンした場合は、カスタムビューしか表示されません。

スプレッドシートのカスタムビューを定義するには

  1. [編集] メニューで、[カスタムビューの設定] をクリックします。

  2. [セルの選択] をクリックします。セル選択モードでは、カスタムビューに表示するセル範囲をハイライトできます。この範囲が広すぎて、[位置とサイズ] （次の手順） で定義した画面に表示しきれない場合は、範囲内のすべてのセルにアクセスできるように、カスタムビューにスクロールバーが表示されます。

注意: スプレッドシート上でセルのグループをハイライトし、そのセル範囲内で右クリックして [カスタムビューの設定] を選択すると、カスタムビューのセル範囲をすばやく定義できます。

  3. 次のボタンを使用して、カスタムビューの位置とサイズを設定します。
  • [移動/サイズ変更]: 対話型グラフィックス領域を調整して、カスタムビューの位置、高さ、および幅を定義することができます。

注意: カスタムビューのサイズは、前の手順で設定した [セルの範囲] のサイズを超えることはできません。

  • [中央揃え]: カスタムビューの位置が画面の中央になります。このボタンを使用すると、[移動/サイズ変更] で設定した位置が上書きされます。
  • [サイズ調整]: カスタムビューのサイズが [セルの選択] で指定した範囲と同じになります。このボタンを使用すると、[移動/サイズ変更] で設定したサイズが上書きされます。
  4. [構成要素の表示] で、カスタムビューに表示する要素を選択します。
  • [画像]: このチェックボックスをオンにすると、カスタムビューのオーバレイの奥に画像が表示されます。オフにすると、画像は表示されません。
  • [オーバレイ]: このチェックボックスをオンにすると、カスタムビューのオーバレイが常に表示されます。オフにすると、カスタムビューのオーバレイは表示されません。
  • [グラフィックス]: このチェックボックスをオンにすると、スプレッドシート内の関数によって生成されるグラフィックスが、常に画像の手前に表示されます。オフにすると、グラフィックスは表示されません。

注意: 画面に表示する要素を制限すると、In-Sight Explorer が画面を更新する時間が短縮され、検査全体の時間を縮めることができます。

  5. [選択した構成要素を更新する条件を指定します （任意）。
  • [条件付きで更新]: 参照セルの値に基づいて、条件付きで構成要素を更新します。

このチェックボックスをオンにすると、[参照] で指定されたセルの値がゼロでないときだけ構成要素の表示が更新されます。ゼロのときは、各チェックボックスの状態に関係なく、画像、グラフィックス、オーバレイのすべてが更新されません。このチェックボックスをオフにすると、画像を取り込むたびに各構成要素が更新されます。

  • [参照]: 構成要素を更新するタイミングを決定するセル参照を設定します。

条件付き更新の例: [条件付きで更新] チェックボックスをオンにして、検査エラー時に 1.000 となるセル A1 を参照しているとします。この場合、画像、グラフィックス、カスタムビューのオーバレイは、検査エラーが発生したときだけ更新されます。エラーが発生していないとき、すなわちセル A1 がゼロの場合は、画像、グラフィックス、カスタムビューのオーバレイは更新されません。

  6. [ジョブの表示] ツールバーにシートの拡大率を入力して、カスタムビューのシートズームレベルを指定します。この操作は、[カスタムビューの設定] ダイアログが開いているとき、またはカスタムビューが表示されているときに実行できます。カスタムビューのシートズーム率を変更すると、[セルの選択] で指定した範囲に収まるように、ビューが自動的にサイズ変更されます（任意）。

注意: シートズームの値は、スプレッドシートビューとカスタムビューについて、それぞれ個別に維持されます。

  7. [OK] を押すと、カスタムビューに加えた変更が適用されます。変更を取り消す場合は、[キャンセル] を押します。

関連項目

起動時にカスタムビューをロードする方法


[EasyView の設定] ダイアログ

編集メニュー

In-Sight Explorer GUI リファレンス

VisionView® アプリケーションを使用する場合、EasyView を作成して、データの表示方法をカスタマイズしたり、オペレータがデータを編集できるかどうかを決定したりすることができます。まず、In-Sight Explorer で EasyView を作成し、センサのジョブとともに保存します。その後、PC 上で VisionView PC Demo アプリケーションを使用して EasyView をプレビューし、正しく設定されていることを確認します。

注意:
  • VisionView PC Demo は、45 分で自動的にタイムアウトします。すべての機能を搭載した、タイムアウトのないライセンス版を購入するには、VisionView PC Software をインストールしてください。VisionView PC Software は、VisionView サポートサイトからダウンロードできます。
  • VisionView PC Demo の使用感は、VisionView オペレータインタフェースパネルまたは VisionView VGA とは異なります。

EasyView の設定

  1. EasyView に含めるデータを持つスプレッドシート内のセルを選択します。
  2. セルのシンボリックタグを作成します。
  3. シンボリックタグエディタで、[EasyView] チェックボックスをオンにします。
  4. [EasyView の設定] ダイアログを開きます。[EasyView の設定] ダイアログに項目が自動的に表示されます。
注意:
  • 以前に定義したシンボリックタグがジョブに含まれる場合は、[追加] ボタンを押して、[Select EasyView Items] ダイアログを起動し、[EasyView の設定] ダイアログに手動で項目を追加します。
  • ジョブが元々 EasyBuilder で作成されている場合、[Select EasyView Items] ダイアログにはジョブに追加された位置決めツールや検査ツールからのデータが自動的に組み込まれます。
  5. 必要な場合には、[編集の可否] チェックボックスをオンにすると、オペレータは VisionView でその項目を変更できます。

注意: VisionView からの編集を可能にするには、その項目に対する読み書き許可が必要です。

  6. 必要な場合には、[ラベルの挿入] ボタンを押してヘッダラベルを作成します。ラベルは、項目の分類に有効です。
  7. [キャプション] は、VisionView アプリケーションで表示される名前です。項目またはラベルの [キャプション] フィールド内をクリックし、記述的な名前を入力するとデフォルトのキャプションを変更できます。変更を確定するには Enter キーを押すか、[キャプション] フィールドの外側をクリックします。変更を取り消すには、Escape キーを押します。
  8. VisionView 上の項目やラベルの表示方法を再調整するには、リストから項目またはラベルを選択し、[上へ] または [下へ] ボタンをクリックして、望ましい順序に設定します。
  9. ジョブファイルを保存します。
  10. EasyView の表示方法をプレビューするには、VisionView PC Demo を起動します。VisionView PC Demo が PC にインストールされている場合、デフォルトのインストールディレクトリは、C:/Program Files/Cognex/VisionView/PC Demo x.x.x です。VisionView PC Demo が PC にインストールされていない場合は、VisionView サポートサイトからアプリケーションをダウンロードできます。
  11. VisionView PC Demo が起動したら、センサからログオフします。
  12. VisionView PC Demo で、[選択中のセンサ] リストにセンサを追加し、Run モードに切り替えて、[表示切り替え] ボタンをクリックして EasyView をプレビューします。

注意: エミュレータにログオンしているときに EasyView をプレビューするには、最初に VisionView アプリケーションの [Selected Sensors] リストにエミュレータを追加する必要があります。

[EasyView の設定] ダイアログを表示するには

  • [EasyView の設定] ダイアログを表示するには、[編集] メニューで [EasyView の設定] をクリックします (または、スプレッドシートを右クリックし、ショートカットメニューから [EasyView の設定] を選択します)。

[EasyView の設定] ダイアログの設定項目

  • [追加]: Closed [Select EasyView Items] ダイアログを起動して、[EasyView の設定] ダイアログに項目を手動で追加します。

  • [削除]: ハイライトした項目を [EasyView の設定] ダイアログから削除します。
  • [クリア]: [EasyView の設定] ダイアログのすべての項目をクリアします。
  • [ラベルの挿入]: 項目を分類するためのヘッダラベルを作成します。
  • [上へ]: ハイライトした項目をリストの上に移動します。
  • [下へ]: ハイライトした項目をリストの下に移動します。

関連項目

シンボリックタグエディタ


[シートズーム] ダイアログ

表示メニュー

In-Sight Explorer GUI リファレンス

[シートズーム] ダイアログでは、スプレッドシートでの表示倍率を増減することができます。

注意: シートズームの値は、スプレッドシートビューとカスタムビューについて、それぞれ個別に維持されます。

[シートズーム] ダイアログを表示するには

  • [表示] メニューで、[シートズーム] を選択します。

注意: または、Explorer ツールバーにある [シートズーム] [image] ドロップダウンにシートズームの値を入力することもできます。

[シートズーム] ダイアログの使用

  1. 拡大率を入力します。
  2. [OK] をクリックします。[シートズーム] は、10 ～ 400 パーセントで指定します。

ヒント: [シートズーム] 後を入力した後、Tab キーを押すと、[シートズーム] 設定をスプレッドシートでプレビューできます。


ジョブの監査

表示メニュー

In-Sight Explorer GUI リファレンス

ジョブの監査について

ジョブの監査の使用

ジョブの監査のショートカット

ジョブの監査について

ジョブの監査により、ジョブ内のセルの依存関係のグラフィックス表示と、ジョブ内のエラーのあるセル (#ERR) の表示が可能です。セルの式が別のセルまたはセル範囲を参照しているとき、依存関係があるといいます。各依存関係には、参照元と参照先の 2 つの部分があります。参照元とは、データのソース、すなわち、セルの式が参照しているセルまたはセル範囲です。参照先とは、データのディスティネーション、すなわち、ほかのセルを参照している式を含むセルです。

式の中のすべてのセル参照が 1 つの依存関係 (1 つの参照元と 1 つの参照先) を形成します。それぞれの依存関係は、参照元から参照先を指す色付き矢印で表示されます。矢印の端の小さい円は、参照元セルを示します。エラーを示す矢印は、エラーのない矢印の上に表示され、参照元の矢印は参照先の矢印の上に表示されます。

依存関係は、次の順序で表示されます。

  1. 正常な参照先 = 緑色の矢印
  2. 正常な参照元 = 青色の矢印
  3. エラーのある参照先 = 黄色の矢印
  4. エラーのある参照元 = 赤色の矢印

以下の場合は、依存関係の表示方法が異なります。

  • 複数セルで構成された参照元: 1 つのセルが複数の参照元を参照しているときには、セル範囲が囲まれ、範囲内の左上のセルの丸印から矢印が引かれます。例については、 Closed ここをクリックしてください。

  • 条件付き参照: セル状態が [条件付きで有効] に設定されている場合、その参照関係が点線で表示されます。例については、 Closed ここをクリックしてください。

  • 非表示の行と列: 非表示の行や列を参照しているときは、表示されている隣接の行や列の区切り線から矢印が引かれます。例については、 Closed ここをクリックしてください。

  • 空白セル: セルの式が空白のセルを参照している場合、この関係は、参照先セルが選択されたときに表示されますが、空白の参照元セルが選択されたときには表示されません。選択されたセルに関係なく、参照先セルに赤い疑問符が表示されます。例については、 Closed ここをクリックしてください。

    参照先のセルが選択されます。

    参照元のセルが選択されます。

  • ダイアログ: メインのスプレッドシートのセルと、ダイアログに属するセルの間の依存関係を表示することができます。依存関係は、ダイアログに含まれる個々のセルではなく、Dialog 関数を含んでいるセルから (またはセルへ) 矢印を引くことによって表示されます。例については、 Closed ここをクリックしてください。

  • デッドエンドセル: セルに参照元の参照がない場合は、セルに点線のマゼンタ色の境界線が表示されます。マゼンタ色の境界線は、選択したセルに関係なく、スプレッドシート内のすべてのデッドエンドセルに表示されます。例については、 Closed ここをクリックしてください。

    セル A0 と C2 には依存参照がないので、
    ハイライトされたセルに関係なく、
    マゼンタ色の境界線が表示されます。

    セル C4 はセル A0 と C2 に依存するので、
    セル A0 と C2 にはマゼンタ色の境界線は
    表示されません。

以下のデッドエンドセルには、マゼンタ色の境界線は表示されません。

  • シンボリックタグが設定されているセル。
  • テキストラベルを含んでいるセル。
  • ColorLabel、Dialog、Link、Wizard、MessageBox、SetEvent、または Timer 関数を含んでいるセル。
  • Plot 関数 (PlotString、PlotRegion など) を含んでいるセル。
  • Write 関数 (WriteDeviceNetBuffer、WriteFTP、WriteSerial など) を含んでいるセル。

ジョブの監査の使用

特定のセルの依存関係を表示するには

  1. 参照先または参照元を調べたいセルを選択します。
  2. [表示] メニューで、[ジョブの監査] をクリックし、[依存レベルを上げる] を選択します。または、[ジョブの監査] ツールバーの [image] [依存レベルを上げる] ボタンをクリックします。
  3. アクティブなセルにデータを提供する次のレベルのセルを調べるには、[依存レベルを上げる] をもう一度選択します。
  4. 依存関係矢印を一度に 1 レベルずつ削除するには、[表示] メニューで、[ジョブの監査] をクリックし、[依存レベルを下げる] を選択します。または、[ジョブの監査] ツールバーの [image] [依存レベルを下げる] ボタンをクリックします。

ジョブ内のすべての依存関係を表示するには

  1. スプレッドシートの左上隅をクリックして、スプレッドシート全体をハイライトします。
  2. [表示] メニューで、[ジョブの監査] をクリックし、[依存レベルを上げる] を選択します。または、[ジョブの監査] ツールバーの [image] [依存レベルを上げる] ボタンをクリックします。ジョブ内に存在するすべての依存関係矢印が表示されます。

特定のセルについて、エラーのある依存関係を表示するには

  1. 参照先と参照元のセルを調べたい、エラーのあるデータを含んでいるセルを選択します。
  2. [表示] メニューで、[ジョブの監査] をクリックし、[依存レベルを上げる] を選択します。または、[ジョブの監査] ツールバーの [image] [依存レベルを上げる] ボタンをクリックします。
  3. [表示] メニューで、[ジョブの監査] をクリックし、[エラーのある依存関係のみ表示] を選択します。または、[ジョブの監査] ツールバーの [image] [エラーのある依存関係のみ表示] ボタンをクリックします。参照先と参照元のセルの正常な関係を示す緑色と青色の矢印が消えて、エラーのある参照先または参照元セルを示す黄色と赤色の矢印だけが残ります。

ジョブ内に存在するセル依存関係のエラーだけを表示するには

  1. スプレッドシートの左上隅をクリックして、スプレッドシート全体をハイライトします。
  2. [表示] メニューで、[ジョブの監査] をクリックし、[依存レベルを上げる] を選択します。または、[ジョブの監査] ツールバーの [image] [依存レベルを上げる] ボタンをクリックします。ジョブ内に存在するすべての依存関係矢印が表示されます。
  3. [表示] メニューで、[ジョブの監査] をクリックし、[エラーのある依存関係のみ表示] を選択します。または、[ジョブの監査] ツールバーの [image] [エラーのある依存関係のみ表示] ボタンをクリックします。参照先と参照元のセルの正常な関係を示す緑色と青色の矢印が消えて、エラーのある参照先または参照元セルを示す黄色と赤色の矢印だけが残ります。

アクティブなセルの最初のエラー (#ERR) 参照元にジャンプするには

  1. エラー条件になっている別のセルに依存するセルを選択します。
  2. [表示] メニューで、[ジョブの監査] をクリックし、[エラー元セルにジャンプ] を選択します。または、[ジョブの監査] ツールバーの [image] [エラー元セルにジャンプ] ボタンをクリックします。
  3. アクティブなセルの参照元セルのうち、エラーのある最初のセルにジャンプして、そのセルがアクティブセルになります。アクティブセルにエラーの参照元セルがない場合、またはアクティブセルがメインのスプレッドシートにあり、最初のエラー参照元がダイアログにある場合や、その逆の場合には、ジャンプしません。

すべての依存関係矢印を消去するには

  1. 依存関係矢印をスプレッドシートから消去するには、[表示] メニューで、[ジョブの監査] をクリックし、[依存レベルをリセットする] を選択します。または、[ジョブの監査] ツールバーの [image] [依存レベルをリセットする] ボタンをクリックします。


挿入メニュー

メニューバー

In-Sight Explorer GUI リファレンス

[挿入] メニューを使用すると、スプレッドシートのアクティブセルにオブジェクトを挿入することができます。

注意: スプレッドシートビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[挿入] メニューの項目

  • [式]: [関数の挿入] ダイアログを開いて、関数をアクティブセルに挿入します。アクティブセルがプロパティシートを使用する関数を含んでいる場合は、代わりにプロパティシートが開きます。
  • [絶対参照]: セル選択モードを使用して、絶対セル参照をアクティブセルに挿入します。
  • [相対参照]: セル選択モードを使用して、相対セル参照をアクティブセルに挿入します。
  • [コメント]: [コメント] ダイアログを使用して、色分けされたコメントをセルに挿入することができます。
  • [シンボリックタグ]: オープンデータアクセスおよびエクスチェンジ (OPC) の検査結果を定義したり、VisionView アプリケーション用に EasyView を設定したりすることが可能なセルに、シンボリックタグを挿入します。詳細については、OPC ヘルプファイルまたは『VisionView® ソフトウェアマニュアル』を参照してください。
  • [セル]: [セルの挿入] ダイアログを使用して、現在選択されているセルを基準として、スプレッドシートにセルを挿入します。少なくとも 1 つのセルが選択されていなければ、このオプションは使用できません。セルの挿入時に、既存のセルを右または下に移動するか、まったく新しいセルの行または列を挿入するかを指定できます。
  • [行]: 現在選択されている行を基準として、スプレッドシートに行を挿入します (少なくとも 1 つのセルが選択されていて、最後の行が空白でなければ、このオプションは使用できません)。挿入される行の数は、選択している行の数と同じです。行が挿入されると、選択している行内のすべてのデータが下の行に移動します。スプレッドシートに行を挿入しても、スプレッドシートの全体的な寸法は変わりません。
  • [列]: 現在選択されている列を基準として、スプレッドシートに列を挿入します (少なくとも 1 つのセルが選択されていて、最後の列が空白でなければ、このオプションは使用できません)。挿入される列の数は、選択している列の数と同じです。列が挿入されると、選択している列内のすべてのデータが右の列に移動します。スプレッドシートに列を挿入しても、スプレッドシートの全体的な寸法は変わりません。


[関数の挿入] ダイアログ

挿入メニュー

In-Sight Explorer GUI リファレンス

In-Sight ジョブに含まれているすべての関数は、[関数の挿入] ダイアログを使用してスプレッドシートに挿入することができます。[関数の挿入] ダイアログの左側には、展開と折り畳みが可能なツールのカテゴリ、サブカテゴリ、および関数のリストがあります。左側のリストでツールカテゴリを選択すると、そのカテゴリの関数のリストが右側に表示されます。In-Sight の関数の詳細については、関数リファレンスを参照してください。

右側の関数を選択するには、関数をハイライトして [OK] ボタンをクリックするか、ハイライトとした関数をダブルクリックします。その関数にプロパティシートがある場合は、プロパティシートが開きます。プロパティシートがない場合は、関数がスプレッドシートの現在の挿入ポイントに挿入されます。

注意: 1 つの式で使用できる関数、引数、および演算子の最大数は、全体で 254 です。関数の引数がセルの範囲にある場合、その範囲内の各セルは 1 つの引数としてカウントされます。例えば、Sum(1,2,A3: A6) という式は、1 つの関数 （Sum） と 6 つの引数 （1、2、A3、A4、A5、A6） によって構成されています。つまり、この関数では、使用可能な 254 の要素のうちの 7 つが使用されています。

[関数の挿入] ダイアログを表示するには

  1. スプレッドシートで、数式を挿入するセルを選択します。
  2. [挿入] メニューで、[式] をクリックします。または、[ジョブの編集] ツールバーの [式] [image] ボタンをクリックします。

[関数の挿入] ダイアログのコンポーネント

  • 状況依存ヘルプ: [関数の挿入] ダイアログの下部に、ハイライトした関数に関する簡単な状況依存ヘルプが表示されます。

注意: 関数の詳細なヘルプを表示するには、関数カテゴリから関数を選択して F1 キーを押します。この操作によって、関数リファレンスの対応する項目が表示されます。

関連項目

プロパティシート


コメントダイアログ

[挿入] メニュー

In-Sight Explorer GUI リファレンス

コメントとは、そのほかのセル内容とは別にセルに付加する注釈のことです。コメント付きのセルは、色分けされた三角形のインジケータが右上隅に表示されます。コメント付きのセル上にマウスを置くと、そのセルのコメントが表示されます。例については、 Closed ここをクリックしてください。

コメントダイアログを表示するには

  1. コメントを挿入するセルをクリックします。
  2. [挿入] メニューで、[コメント] をクリックします。または、コメントを挿入するセルを右クリックして、ショートカットメニューから [コメントの挿入] を選択します。
  3. 表示されるボックスに、コメントのテキストを入力します。

注意: コメントダイアログは、コメントの挿入を選択した場合でも編集を選択した場合でも、常に [コメントの編集] ダイアログとして表示されます。

  4. コメントテキストの入力を完了した後、[フラグの色] ドロップダウンメニューを使用して、三角形のインジケータの色をカスタマイズすることができます。
  5. テキストとインジケータの色が確定したら、[OK] をクリックしてコメントを挿入します。

コメントを編集するには

  1. コメントがあるセルをクリックします。
  2. [挿入] メニューで、[コメント] をクリックします。または、コメント付きのセルを右クリックして、ショートカットメニューから [コメントの編集] を選択します。
  3. 編集が完了したら、[OK] をクリックして [コメントの編集] ダイアログを終了します。

コメントをセルから削除するには

  1. 削除したいコメントが付いているセルをクリックします。
  2. [編集] メニューの [クリア] オプションを展開し、[コメント] を選択します。または、[挿入] メニューの [コメント] をクリックして、ハイライト表示されたテキストを削除し、[OK] をクリックして [コメントの編集] ダイアログを終了します。

コメントダイアログの設定項目

  • コメントボックス: コメントボックスは、コメントのためのテキストを入力する領域です。コメントには最大 256 文字を入力することができます。
  • [フラグの色]: このドロップダウンリストから色を選択して、三角形のインジケータの色をカスタマイズすることができます。


シンボリックタグエディタ

挿入メニュー

In-Sight Explorer GUI リファレンス

シンボリックタグエディタは、監査メッセージサーバへの監査メッセージを生成するために OPC チャネル経由で In-Sight OPC サーバへ送信可能なデータ、または EasyView の作成に使用可能なデータを含むセルのシンボリックタグを追加、選択、削除、または編集するために使用されます。EasyView では、Cognex VisionView デバイスにおけるデータの表示方法をカスタマイズしたり、オペレータがデータを編集できるかどうかを指定したりできます。

シンボリックタグの設定されたセルには、右下隅に色付き三角形のインジケータが表示されます。また、そのセルにマウスカーソルを合わせると、タグの名前がポップアップ表示されます。例については、 Closed ここをクリックしてください。

注意:
  • OPC チャネルに送信可能な値のタイプの詳細および In-Sight OPC サーバの詳細については、In-Sight OPC サーバのヘルプファイルを参照してください。
  • VisionView の詳細については、『VisionView® ソフトウェアマニュアル』を参照してください。
  • 英語以外の言語でジョブを作成しているときに、[オプション] ダイアログの [英語シンボリックタグを EasyBuilder で使用] オプションを有効 (ON) した場合、このオプションを有効にする以前に作成されたシンボリックタグ参照は、英語名に更新する必要があります。

シンボリックタグエディタの表示

[シンボリックタグエディタ] ダイアログの設定項目

シンボリックタグの要件

シンボリックタグエディタの表示

  1. 送信する情報を含むスプレッドシートのセル、または既にシンボリックタグを含むセルを選択します。
  2. [挿入] メニューで、[シンボリックタグ] をクリックします。または、セルを右クリックして、ショートカットメニューから [シンボリックタグの挿入] を選択します。セルに既にシンボリックタグが含まれている場合、ショートカットメニューのオプションは [シンボリックタグの編集] になります。

注意: ジョブが EasyBuilder で作成された場合、EasyBuilder の全体的なジョブ結果を参照するために、EasyBuilder タグが自動的にスプレッドシートに挿入されます。EasyBuilder タグはすべて、OPC チャネルを介して送信する場合に選択できますが、一部のタグは EasyView の作成には使用できません。

[シンボリックタグエディタ] ダイアログの設定項目

  • [追加]: AcquireImage セル (A0) が自動的に挿入されます。その後、[追加] ボタンをクリックするたびに、送信可能なデータを含むスプレッドシート内のセルが自動的に挿入されます。
  • [セルの選択]: セル選択モードに切り替え、シンボリックタグを割り当てるセルを選択します。
  • [削除]: 選択したシンボリックタグを完全に削除します。

警告: EasyBuilder によって作成されたシンボリックセルは削除しないでください。削除すると、依存関係が破壊され、EasyBuilder ジョブが正常に機能しなくなる場合があります。

注意: 別の方法として、[編集] メニューを使用してシンボリックタグを削除することができます。
  1. シンボリックタグを含むセルをクリックします。
  2. [編集] メニューの [クリア] サブメニューから [シンボリックタグ] をクリックします。セルからタグが削除されます。
  • [タグ名]: シンボリックタグの名前を指定します。シンボリックタグの名前を変更する場合は、「シンボリックタグの要件」に記載されている命名規則に従ってください。
  • [OPC を使用する]: これがオンの場合、シンボリックタグは、OPC チャネル経由で送信されます。

注: OPC を使用して書き込みができるのは、EditFloat、EditInt および EditString セルのみです。ターゲットとなるセルにこれらの関数が含まれていない場合、In-Sight OPC サーバおよびサードパーティーの OPC クライアントには読み取りのみとなります。

  • [EasyView]: これがオンの場合、シンボリックタグは EasyView に追加されます。[EasyView] チェックボックスを有効にした後、[EasyView の設定] ダイアログを使用して、VisionView でのデータの表示方法をカスタマイズできます。
  • [監査メッセージ]:オンの場合、セルの内容に対して行われた変更 (例えば、セルの数式や対話型コントロールの値に対して行われた変更) はすべて、自動的に監査メッセージを生成して TCP/IP 経由で送信します。このメッセージは、適合するソフトウェアシステムの監査メッセージサーバにインポートできます。アクティブなビジョンシステムに対する監査メッセージの設定を行い、監査メッセージサーバの IP アドレスおよび TCP/IP ポートを指定するには、[監査メッセージの設定] ダイアログを使用します。

シンボリックタグの要件

  • 1 つのセルに複数のタグを割り当てることはできません。
  • タグ名:
    • 先頭の文字に数字は使用できません。
    • 使用できる文字は、A ～ Z、a ～ z、0 ～ 9、およびアンダースコア (_) のみです。それ以外の文字やスペースは使用できません。
    • 1 ～ 50 文字で指定します。
    • セル名を使用したり、セル名と同じ形式 (B2 や B22222 など) の名前をつけることはできません。
    • ほかのタグと同じ名前はつけられません。大文字と小文字に関係なく、同じジョブ内に重複するタグ名があってはなりません。例えば、あるタグに「test」という名前を付けて、別のタグに「Test」という名前を付けることはできません。

In-Sight OPC サーバにタグを送信する場合は、次の要件も満たす必要があります。

  • OPC タグでは、In-Sight OPC サーバで事前に定義されている以下のタグ名は使用できません。
    • AcquistionCount
    • DiscreteOnline
    • GuiOnline
    • JobName
    • LiveMode
    • NativeOnline
    • Online
    • SaveJobAs
    • TriggerEvent
  • In-Sight Explorer と In-Sight OPC サーバ内の OPC タグは、大文字と小文字が区別されます。In-Sight Explorer で OPC タグを作成した場合、In-Sight OPC サーバ内の対応する OPC タグも同じ大文字と小文字を使用する必要があります。2 つの名前が正確に一致しないと、エラーになります。
  • OPC 文字列 (参照されるデータ値) は任意の 8 ビット文字または 2 バイト文字を含むことができます。

関連項目

[EasyView の設定] ダイアログ

[監査メッセージの設定] ダイアログ


[セルの挿入] ダイアログ

挿入メニュー

In-Sight Explorer GUI リファレンス

[セルの挿入] ダイアログは、スプレッドシートにセル、セル範囲、新しい行、または新しい列を追加するために使用します。

[セルの挿入] ダイアログを表示するには

  1. 新しいセル、セル範囲、新しい行、または新しい列を挿入するセルまたはセル範囲をクリックします。
  2. [挿入] メニューで、[セル] をクリックします。または、セル、行、列を挿入するセルを右クリックして、ショートカットメニューから [挿入] を選択します。

  3. セル、行、列を追加する方法が決まったら、[OK] をクリックして、セル、行、列を挿入します。

[セルの挿入] ダイアログの設定項目

  • [セルを右方向に移動]: 選択したセルの左に新しいセルを挿入します。挿入するセルと同じ数のセルを選択します。
  • [セルを下方向に移動]: 選択したセルの上に新しいセルを挿入します。挿入するセルと同じ数のセルを選択します。
  • [行全体]: 1 行のセルを挿入します。新しい行を挿入するすぐ下の行のセルをクリックします。例えば、行 5 の上に新しい行を挿入するには、行 5 の中のセルをクリックします。
  • [列全体]: 1 列のセルを挿入します。新しい列を挿入するすぐ右の列の中のセルをクリックします。例えば、列 B の左に新しい列を挿入するには、列 B の中のセルをクリックします。


フォーマットメニュー

メニューバー

In-Sight Explorer GUI リファレンス

[フォーマット] メニューを使用すると、半透明のスプレッドシートオーバレイを定義する行と列の表示プロパティを変更できます。

注意: スプレッドシートビューがアクティブでないとき、このメニューの一部またはすべてが利用できない場合があります。

[フォーマット] メニューの項目

  • [セル]: [セルのフォーマット] ダイアログを通じて、1 つのセルまたは複数のセルの小数点以下の桁数、テキストの配置、フォントのタイプ、スタイル、サイズ、色、セルグラフィックスの行の幅、およびセルの色を変更することができます。また、セルのロック設定やセルパスワード保護を有効にすることもできます。
  • [行]: スプレッドシートの行のプロパティを調整します。
    • [行の高さ]: 選択された行の高さを変更します。
    • [自動調整]: 選択されたセルに含まれるコンテンツの高さに合わせて、行の高さを調節します。
    • [行の非表示]: 選択された行を非表示にします。
    • [行の再表示]: 選択された行の間にある非表示行を表示状態に戻します。行を再表示するためには、少なくとも 2 行を選択する必要があります。ただし、スプレッドシートの最初または最後の 1 行または複数の行が非表示になっている場合を除きます。スプレッドシートの最初または最後の行を再表示するには、非表示になっている最初または最後の行を選択します。

注意: 列がハイライトされているときに [行の再表示] を選択すると、スプレッドシートのすべての行が再表示されます。

  • [列]: スプレッドシートの行のプロパティを調整します。
    • [列の幅]: 選択された列の幅を変更します。
    • [自動調整]: 選択されたセルに含まれるコンテンツの幅に合わせて、列の幅を調節します。
    • [列の非表示]: 選択された列を非表示にします。
    • [列の再表示]: 選択された列の間にある非表示列を表示状態に戻します。列を再表示するためには、少なくとも 2 列を選択する必要があります。ただし、スプレッドシートの最初または最後の 1 列または複数の列が非表示になっている場合を除きます。スプレッドシートの最初または最後の列を再表示するには、非表示になっている最初または最後の列を選択します。

注意: 行がハイライトされているときに [列の再表示] を選択すると、スプレッドシートのすべての列が再表示されます。


[セルのフォーマット] ダイアログ

フォーマットメニュー

In-Sight Explorer GUI リファレンス

[セルのフォーマット] ダイアログは、スプレッドシートの 1 つのセルまたはセル範囲のフォーマットを調整するために使用します。[セルのフォーマット] ダイアログには、次の 6 つのタブがあります。

  • [数値] タブ
  • [ピクチャー] タブ
  • [フォント] タブ
  • [配置] タブ
  • [保護] タブ
  • [グラフィックス] タブ

[セルのフォーマット] ダイアログを表示するには

  • セルまたはセル範囲をハイライトします。
  • [フォーマット] メニューで、[セル] をクリックします。別の方法として、[フォーマット] ツールバーの [セル] [image] ボタンをクリックし、右クリックして、ショートカットメニューから [フォーマット] → [セルのフォーマット] を選択するか、または Ctrl+1 キーを押します。

[セルのフォーマット] ダイアログの設定項目

[数値] タブ

[数値] タブをクリックして、セルの数値の小数点以下の桁数を 0 ～ 6 に設定します。デフォルトの設定は 3 です。

ヒント: 小数点以下の桁数は、[フォーマット] ツールバーの [小数点以下の桁数の増加] [image] ボタンおよび [小数点以下の桁数の縮小] [image] ボタンを使用して設定することもできます。

[ピクチャー] タブ

[ピクチャー] タブをクリックして、セルにグラフィックスを挿入し、スプレッドシート内にアイコンまたはそのほかのグラフィックスを表示します。ピクチャーファイルは、[開く] ボタンを使用してジョブとともに保存するか、[リンク] ボタンを使用してジョブにリンクすることができます。以下のファイル拡張子がサポートされています。

  • BMP
  • GIF*
  • ICO*
  • JPG、JPEG
  • WMF*、EMF*
  • TIF*、TIFF*
  • PNG*
  • EXIF

* これらの画像タイプでは透過色をサポートしています。

[開く] ボタンを使用してピクチャーを挿入すると、ピクチャーファイルがジョブにコピーされるため、ジョブファイルのサイズがそのピクチャーの分だけ大きくなります。ダイアログにピクチャーのサイズ (バイト数) とそのオリジナルファイル名が表示されます。このファイル名を編集することはできません。また、ファイルパスは表示されません。

ピクチャーファイルのサイズが 20,000 バイトを超える場合は、次のような警告メッセージが表示されます。

ピクチャーをジョブ内に保存する代わりに、[リンク] ボタンで挿入すると、ローカル PC または共有ネットワークからピクチャーをリンクすることができます。

ピクチャーがリンクされると、ファイルパスがテキストボックスに表示されます。このパスは編集可能です。別のコンピュータで作成されたジョブをロードする場合など、リンク切れを修正することが可能です。

ファイルが見つからない場合は、スプレッドシートとダイアログに赤い×印が表示されます。

パスを編集する場合、有効なピクチャーファイルを示すパスを指定する必要があります。パスが無効な場合はエラーメッセージが表示されます。

[スケール] 数値ボックスには、1 ～ 1,000,000,000 パーセントの範囲で表示倍率を指定することができます。数値ボックスの下には、指定したスケールに基づくピクチャーの実効サイズが表示されます。

セルからピクチャーを削除するには、[クリア] ボタンを使用します。

注意:
  • ピクチャーがセルに入りきらない場合は、切り詰められます。ピクチャー全体を表示するには、[行の高さ] と [列の幅] を調整して、セルを拡大してください。
  • 動的に変更されるピクチャーファイルへのリンクはサポートされていません。In-Sight Explorer の外部でファイルに変更が加えられても、元のピクチャーのままです。
  • ピクチャーを開くと、ピクチャーが現在のセルの高さまたは幅 (いずれか小さい方) の 90 パーセントになるように、[スケール] の値が自動的に設定されます。

[フォント] タブ

[フォント] タブをクリックして、フォント、スタイル (標準、斜体、太字、太字斜体)、サイズ (8 ～ 72 ポイント)、文字の色 (前景色) とセルの色 (背景色) を選択します。

[デフォルトのフォントにする] チェックボックスをオンにすると、変更内容をスプレッドシートのすべてのセルのデフォルト設定として設定することができます。

注意:
  • 使用可能なフォントのリストは、ホスト PC にロードされているフォントによって異なります。そのフォントを持たない PC にジョブがロードされた場合は、その PC の標準フォントが使用されます。
  • ColorLabel 関数を含むセルについては、前景色と背景色の変更は無視されます。
  • 特に、テキストを含む 2 つのセルの間に空白のセルがある場合など、場合によっては、背景色によって罫線が見えなくなることがあります。このような場合は、空白セルにアポストロフィのみを入力して空白文字列を作成し、背景色を指定してください。
  • PlotString 関数を含むセルにフォーマットを指定すると、そのセルだけでなくプロットされるテキスト文字列にもフォント、スタイル、サイズの設定が適用されます。

ヒント: [フォーマット] ツールバーの [フォント] ボックス、[フォントサイズ] ボックス、[太字] ボタン、[斜体] ボタン、[背景色] ボタン、[前景色] ボタン、[フォントサイズの拡大] ボタン、[フォントサイズの縮小] ボタンを使用すると、[セルのフォーマット] ダイアログを開かなくても、テキストのフォーマットを変更することができます。

[配置] タブ

[配置] タブをクリックして、セル内のデータの横位置を、左詰め、中央揃え、右詰めに設定します。また、データの縦位置を、上詰め、中央揃え、下詰めに設定します。デフォルトの配置に戻すには標準を選択します。

ヒント: セルの配置は、[フォーマット] ツールバーの [左揃え] ボタン [image] 、[中央揃え] ボタン [image] 、[右揃え] ボタン [image] で設定することもできます。

[保護] タブ

セルの保護を設定するには、[保護] タブをクリックします。

[ロック] チェックボックスをオンにして、1 つのセルまたはセル範囲をロックします。セルまたはセル範囲を保護すると、セル内の式を変更できなくなります。セルのフォーマットを変更することはできます。ロックを有効にするには、ジョブを保護する必要があります。ジョブを保護するには、[ファイル] メニューの [ジョブの保護] を選択します。

[パスワード] フィールドにパスワードを入力し、[パスワードの再確認] フィールドに再度入力して、セルの数式を非表示にします。

注意:
  • セルがロックされていて、ジョブが保護されていないときには、スプレッドシートの左上隅に黄色のロックアイコン [image] が表示されます。ロック済みのセルを含むジョブが保護されたときには、同じ位置に赤いロックアイコン [image] が表示されます。
  • ライセンスパスワードを入力すると、セルの数式は非表示になり、[ライセンス] ダイアログを使用してビジョンシステムにライセンスが追加されるまで、セルは実行できなくなります。
    • ライセンスが追加されると、セルが実行され、結果が表示されます。セルの編集アクセス権は、[ライセンス] ダイアログでパスワードを入力することで取得できます。
    • [保護] タブでパスワードを再入力するか、ビジョンシステムから切断されると、アクセス権は無効になります。
    • ライセンスは、In-Sight License Generator を使用して生成されます。
    • ライセンス付与の手順は、[ライセンス] ダイアログのトピックで詳しく説明しています。

[グラフィックス] タブ

[グラフィックス] タブをクリックして、セルのグラフィックスの線幅とグラフィックスオーバレイテキストのスケールを設定します。このフォーマットは、対話型グラフィックスまたは結果グラフィックスが関連付けられている関数を含むセルにのみ適用されます。

  • [線の幅]: セルのグラフィックスの線幅をピクセル単位で設定します。フォーマットされたセルに関連付けられたグラフィックスはすべて、同じ線幅になります(1 ～ 5、デフォルト 1)。
  • [テキストサイズ]: グラフィックスオーバレイテキストのスケールを設定します。フォーマットされたセルに関連付けられたテキストはすべて、同じスケールになります (デフォルト = [標準])。
    • [標準]: [ジョブの表示] ツールバーで定義されたスケール設定が、フォーマットされたセルで使用されます。
    • [画像サイズに合わせる]: 画像を拡大または縮小すると、グラフィックスオーバレイテキストは画像に合わせてスケーリングされます。
    • [縮小のみ]: 画像を縮小すると、グラフィックスオーバレイテキストのスケールは小さくなります。画像を拡大し、グラフィックスオーバレイテキストがデフォルトのフォントサイズ (9 ポイント) より小さくなると、グラフィックスオーバレイテキストのスケールは、デフォルトのフォントサイズになるまで大きくなります。
    • [固定]: グラフィックスオーバレイテキストのサイズは、画像の倍率レベルに関係なく固定されています。
注意:
  • [テキストサイズ] で [標準] が選択されている場合、スケールの設定はジョブファイルには保存されません。
  • [テキストサイズ] で [画像サイズに合わせる]、[縮小のみ]、または [固定] が選択されている場合、この設定は [ジョブの表示] ツールバーで定義された設定よりも優先され、ジョブファイルに保存されます。


[行の高さ] ダイアログ

[フォーマット] メニュー → [行]

In-Sight Explorer GUI リファレンス

1 つまたは複数のスプレッドシート行の高さを変更するには

  1. 1 つまたは複数の行をハイライトします。
  2. [フォーマット] メニューで、[行] をクリックします。
  3. [行の高さ] をクリックします。または、[フォーマット] ツールバーの [行の高さの設定] [image] ボタンをクリックします。

  4. 必要な行の高さを入力して、[OK] をクリックします。

注意: 行の高さは、1～2000 の任意の整数値に設定できます。行のデフォルトの高さは 20 です。

ヒント: 1 行の高さだけを調整することもできます。それには、行文字の下の区切り線をクリックして、必要な高さになるまで区切り線をドラッグします。


[列の幅] ダイアログ

[フォーマット] メニュー → [列]

In-Sight Explorer GUI リファレンス

1 つまたは複数のスプレッドシート列の幅を変更するには

  1. 1 つまたは複数の列をハイライトします。
  2. [フォーマット] メニューで、[列] をクリックします。
  3. [列の幅] をクリックします。または、[フォーマット] ツールバーの [列の幅] [image] ボタンをクリックします。

  4. 必要な列の幅を入力して、[OK] をクリックします。

注意: 列の幅は、1～2000 の任意の整数値に設定できます。デフォルトの列の幅は 64 です。

ヒント: 列名の右の区切り線をマウスでドラッグして、その列の幅を調整することもできます。


[記録/再生のオプション] ダイアログ

画像メニュー

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

[記録/再生のオプション] ダイアログでは、個々のビジョンシステムやエミュレータの記録/再生の設定を行うことができます。このダイアログで設定を行った後、取り込んだ画像の記録と再生を行うことができます。画像は、PC 上の指定した記録フォルダに保存されます。

注意:
  • [オプション] ダイアログの [記録] パネルは、[記録] オプションを初めて実行する前に、その初期値を設定するために使用します。
  • [記録] オプションを初めて実行した後、[オプション] ダイアログの [記録] パネルで行った変更は、アクティブなビジョンシステムまたはエミュレータの [記録/再生のオプション] ダイアログから [初期値に戻す] を選択しない限り、[記録/再生のオプション] ダイアログには反映されません。
  • In-Sight カラービジョンシステムでは、1/4 解像度の画像は記録できません。カラービジョンシステムの [記録/再生のオプション] ダイアログで 1/4 解像度の画像を記録するように設定した場合、実際に記録される画像は 1/2 解像度の画像です。

[記録/再生のオプション] ダイアログを表示するには

次のいずれかの操作を行います。

  • [画像] メニューで、[記録/再生のオプション] をクリックします。
  • EasyBuilder ツールバーで、[記録/再生のオプション] ボタン [image] をクリックします。
  • CTRL+T キーを押します。
  • [画像の設定] 設定ペインで [PCから画像をロード] をクリックします。
  • フィルムストリップの設定ペインで [再生] をクリックします。

[記録] タブの設定項目

  • [記録フォルダ]:　画像を保存するためのディレクトリを指定します。

注意:　記録フォルダのサブディレクトリとして、Good および Bad フォルダが作成されます。

  • [画像カウント]:　[記録フォルダにすべての画像を記録する] を選択している場合、[画像カウント] には、記録フォルダに保存されている画像の数が表示されます。[記録フォルダにすべての画像を記録する] が選択されていない場合、[画像カウント] には、Good/Bad フォルダに保存されている画像の数が表示されます。
  • [ファイル名のフォーマット]:　記録画像のファイル名のフォーマットとファイルの種類。
    • [接頭語]:　記録画像のファイル名の接頭辞。
    • [フォーマット]:　記録画像のファイル名のフォーマット。選択できるフォーマットは、[インデックス] と [日付・時刻] です。
    • [ファイル形式]:　記録画像のファイルの種類。選択できるファイルの種類は、[ビットマップファイル (*.bmp)] と [JPEG ファイル (*.jpg)] です。
    • 例:　[フォーマット] および [ファイル形式] ドロップダウンリストで選択した [ファイル名のフォーマット] オプションに基づいて、記録画像ファイルの命名規則の例を表示します。
  • [最大保存数]:　記録フォルダに保存する画像の最大数。(1 ～ 10,000、デフォルト 10,000)
  • [画像の解像度]:　画像の記録時に使用する In-Sight ビジョンシステムの解像度を指定します。記録が完了すると、ビジョンシステムの解像度は [表示画像の設定] ダイアログで設定した元の設定に戻ります。保存する画像の解像度として指定できるのは、フルアクセス、ハーフ (1/2)、クォーター (1/4) です。デフォルトの解像度はフルアクセスです。

注意:
  • ビジョンシステムがフル解像度をサポートしていない場合、このオプションをドロップダウンリストから選択することはできません。
  • この設定は、ビジョンシステムがオンラインのときにのみ使用できます。ビジョンシステムがオフラインのときに記録された画像はすべて、フル解像度で記録されます。
  • [ビット深度]:　カラー画像を記録するビット深度を指定します ([16 ビット] または [24 ビット]。デフォルト = [オプション] ダイアログの [記録] の [ビット深度] パラメータの設定値)。

注意:　このオプションは、カラー In-Sight ビジョンシステムでのみ使用可能になります。

  • [記録フォルダのクリア]:　 Closed 　[記録された画像の削除] ダイアログを表示します。このダイアログでは、記録フォルダ、Good フォルダ、および Bad フォルダから画像を削除することができます。

注意:　記録フォルダと再生フォルダが同じ場合、記録フォルダを選択すると、再生フォルダの画像もすべて削除されます。

  • [Good/Bad フォルダのクリア]:　 Closed 　[記録された画像の削除] ダイアログを表示します。このダイアログでは、記録フォルダ、Good フォルダ、および Bad フォルダから画像を削除することができます。

注意:　記録フォルダと再生フォルダが同じ場合、記録フォルダを選択すると、再生フォルダの画像もすべて削除されます。

  • [PASS/FAIL の振り分け]: ジョブの全体的な成功/失敗ステータスに基づいて、画像を特定のフォルダに振り分けます。
    • [記録フォルダにすべての画像を記録する]:　すべての画像を記録フォルダに記録します。成功/失敗の振り分けは無効になります。
    • [PASS 画像を Good フォルダに記録する]:　成功 (PASS) した画像を Good フォルダに記録します。
    • [FAIL 画像を Bad フォルダに記録する]:　失敗 (FAIL) した画像を Bad フォルダに記録します。
    • [PASS/FAIL に応じて画像を Good/Bad フォルダに振り分ける]:　成功 (PASS) した画像を Good フォルダに、失敗 (FAIL) した画像を Bad フォルダに振り分け、記録します。
  • [記録/再生の前に、常にこのダイアログを表示する]:　このチェックボックスをオンにすると、画像を記録または再生する前に [記録/再生のオプション] ダイアログが開きます。
  • [初期値に戻す]:　[記録フォルダ]、[最大保存数]、[画像の解像度]、および [ファイル名のフォーマット] 設定を、[オプション] ダイアログの [記録] パネルの現在の設定に一致するようにリセットします。[記録] タブと [再生] タブの残りの設定は、デフォルトに戻ります。

[再生] タブの設定項目

  • [再生フォルダ]:　再生する画像の保存されているディレクトリを指定します。
  • [画像カウント]:　再生フォルダに保存されている画像の数を示します。
  • [再生モード]:　[画像] メニューまたは EasyBuilder ツールバーの [再生] を選択したときの画像の表示方法を決めます。画像はアルファベット順に再生され、次に番号順に再生されます。画像の再生を一時停止した後で [再生] を選択した場合は、最後に表示した画像から再生が再開されます。[画像] メニューから [最初の画像] を選択するか、[記録/再生] ツールバーの [最初の画像] を選択すると、始めから再生が開始されます。

注意:　ビジョンシステムがオンラインモードのときに画像の再生ができるようにするには、[画像の設定] ステップの [トリガ] パラメータが [外部]、[手動]、または [ネットワーク] に設定されている必要があります。

  • [連続]:　再生フォルダに保存されている画像を連続再生します。
  • [一巡]: 再生フォルダに保存されている画像を 1 回だけ再生します。
  • [一時停止時間]:　ある画像を再生してから次の画像を再生するまでの時間遅延 (0 ～ 60 秒、デフォルト = 0.5)。
  • [記録/再生の前に、常にこのダイアログを表示する]:　このチェックボックスをオンにすると、画像を記録または再生する前に [記録/再生のオプション] ダイアログが開きます。
  • [初期値に戻す]:　[記録フォルダ]、[最大保存数]、[画像の解像度]、および [ファイル名のフォーマット] 設定を、[オプション] ダイアログの [記録] パネル の現在の設定に一致するようにリセットします。[記録] タブと [再生] タブの残りの設定は、デフォルトに戻ります。

スプレッドシートビュー

[記録/再生のオプション] ダイアログでは、個々のビジョンシステムやエミュレータの記録/再生の設定を行うことができます。このダイアログで設定を行った後、取り込んだ画像の記録と再生を行うことができます。画像は、PC 上の指定した記録フォルダに保存されます。

注意:
  • [オプション] ダイアログの [記録] パネルは、[記録] オプションを初めて実行する前に、その初期値を設定するために使用します。
  • [記録] オプションを初めて実行した後、[オプション] ダイアログの [記録] パネルで行った変更は、アクティブなビジョンシステムまたはエミュレータの [記録/再生のオプション] ダイアログから [初期値に戻す] を選択しない限り、[記録/再生のオプション] ダイアログには反映されません。

[記録/再生のオプション] ダイアログを表示するには

  • [画像] メニューで、[記録/再生のオプション] をクリックします (または、[記録/再生] ツールバーの [記録/再生のオプション] ボタン [image] をクリックするか、Ctrl+T キーを押します)。

[記録] タブの設定項目

  • [記録フォルダ]:　画像を保存するためのディレクトリを指定します。

注意:　記録フォルダのサブディレクトリとして、Good および Bad フォルダが作成されます。

  • [画像カウント]:　[監視セルを使用しない (記録フォルダにすべて記録する)] を選択している場合、[画像カウント] には、記録フォルダに保存されている画像の数が表示されます。それ以外の振り分け方法を選択している場合、[画像カウント] には、Good/Bad フォルダに保存されている画像の数が表示されます。
  • [ファイル名のフォーマット]:　記録画像のファイル名のフォーマットとファイルの種類。
    • [接頭語]:　記録画像のファイル名の接頭辞。
    • [フォーマット]:　記録画像のファイル名のフォーマット。選択できるフォーマットは、[インデックス] と [日付・時刻] です。
    • [ファイル形式]:　記録画像のファイルの種類。選択できるファイルの種類は、[ビットマップファイル (*.bmp)] と [JPEG ファイル (*.jpg)] です。
    • 例:　[フォーマット] および [ファイル形式] ドロップダウンリストで選択した [ファイル名のフォーマット] オプションに基づいて、記録画像ファイルの命名規則の例を表示します。
  • [最大保存数]:　記録フォルダに保存する画像の最大数。(1 ～ 10,000、デフォルト 10,000)
  • [画像の解像度]:　画像の記録時に使用する In-Sight ビジョンシステムの解像度を指定します。記録が完了すると、ビジョンシステムの解像度は [表示画像の設定] ダイアログで設定した元の設定に戻ります。保存する画像の解像度として指定できるのは、フルアクセス、ハーフ (1/2)、クォーター (1/4) です。デフォルトの解像度はフルアクセスです。

注意:　ビジョンシステムがフル解像度をサポートしていない場合、このオプションをドロップダウンリストから選択することはできません。

  • [ビット深度]:　カラー画像を記録するビット深度を指定します ([16 ビット] または [24 ビット]。デフォルト = [オプション] ダイアログの [記録] の [ビット深度] パラメータの設定値)。

注意:　このオプションは、カラー In-Sight ビジョンシステムでのみ使用可能になります。

  • [記録フォルダのクリア]:　 Closed 　[記録された画像の削除] ダイアログを表示します。このダイアログでは、記録フォルダ、Good フォルダ、および Bad フォルダから画像を削除することができます。

注意: 記録フォルダと再生フォルダが同じ場合、記録フォルダを選択すると、再生フォルダの画像もすべて削除されます。

  • [Good/Bad フォルダのクリア]:　 Closed 　[記録された画像の削除] ダイアログを表示します。このダイアログでは、記録フォルダ、Good フォルダ、および Bad フォルダから画像を削除することができます。

注意:　記録フォルダと再生フォルダが同じ場合、記録フォルダを選択すると、再生フォルダの画像もすべて削除されます。

  • [監視セルによる振り分け]: 監視セルの値に基づいて、画像を特定のフォルダに保存します。

    注意:　 In-Sight で類似の効果を持つ監視セルが 3 つあります ([ジョブの PASS/FAIL] セル、[フィルムストリップ] 監視セル および [記録/再生] の監視セル)。これらの 3 つの監視セルを個々に設定し、異なる機能を制御することができます。

  • [監視セルを使用しない (記録フォルダにすべて記録する)]:　すべての画像を記録フォルダに記録します。[監視セル] は無効になります。
  • [監視セルの値が 0 でない場合、Good フォルダに記録する]:　画像取り込みの際に、監視セルがゼロ以外の数値を含んでいた場合、画像は Good フォルダに保存されます。画像取り込みの際に、監視セルがゼロまたは #ERR を含んでいた場合、画像は記録されません。
  • [監視セルの値が 0 または #ERR の場合、Bad フォルダに記録]:　画像取り込みの際に、監視セルがゼロまたは #ERR を含んでいた場合、画像は Bad フォルダに保存されます。画像取り込みの際に、監視セルがゼロまたは #ERR を含んでいなかった場合、画像は記録されません。
  • [監視セルの値に応じて Good/Bad フォルダに振り分ける]:　画像取り込みの際に、監視セルがゼロ以外の数値を含んでいた場合、画像は Good フォルダに保存されます。画像取り込みの際に、監視セルがゼロまたは #ERR を含んでいた場合、画像は Bad フォルダに保存されます。
  • [監視セル]:　監視対象のセルを示します。
  • [セルの選択]:　このボタンをクリックするとセル選択モードに切り替わり、画像を Good または Bad フォルダに保存するかどうかを判断するための監視セルを参照することができます。
  • [記録/再生の前に、常にこのダイアログを表示する]: このチェックボックスをオンにすると、画像を記録または再生する前に [記録/再生のオプション] ダイアログが開きます。
  • [初期値に戻す]: [記録フォルダ]、[最大保存数]、[画像の解像度]、および [ファイル名のフォーマット] 設定を、[オプション] ダイアログの [記録] パネルの現在の設定に一致するようにリセットします。[記録] タブと [再生] タブの残りの設定は、デフォルトに戻ります。

[再生] タブの設定項目

  • [再生フォルダ]:　再生する画像の保存されているディレクトリを指定します。
  • [画像カウント]:　再生フォルダに保存されている画像の数を示します。
  • [再生モード]:　[画像] メニューまたは [記録/再生] ツールバーの [再生] を選択したときの画像の表示方法を決めます。画像はアルファベット順に再生され、次に番号順に再生されます。画像の再生を一時停止した後で [再生] を選択した場合は、最後に表示した画像から再生が再開されます。[画像] メニューから [最初の画像] を選択するか、[記録/再生] ツールバーの [最初の画像] を選択すると、始めから再生が開始されます。

注意:　ビジョンシステムがオンラインモードのときに画像の再生ができるようにするには、AcquireImage 関数の [トリガ] パラメータが [外部]、[手動]、または [ネットワーク] に設定されている必要があります。

  • [連続]:　再生フォルダに保存されている画像を連続再生します。
  • [一巡]:　再生フォルダに保存されている画像を 1 回だけ再生します。
  • [一時停止時間]:　ある画像を再生してから次の画像を再生するまでの時間遅延(0 ～ 60 秒、デフォルト = 0.5)。
  • [記録/再生の前に、常にこのダイアログを表示する]:　このチェックボックスをオンにすると、画像を記録または再生する前に [記録/再生のオプション] ダイアログが開きます。
  • [初期値に戻す]: [記録フォルダ]、[最大保存数]、[画像の解像度]、および [ファイル名のフォーマット] 設定を、[オプション] ダイアログの [記録] パネルの現在の設定に一致するようにリセットします。[記録] タブと [再生] タブの残りの設定は、デフォルトに戻ります。


[オーバレイの透明度] ダイアログ

画像メニュー

In-Sight Explorer GUI リファレンス

[オーバレイの透明度] ダイアログでは、画像やグラフィックスに対するスプレッドシートオーバレイの不透明度を調整することができます。この値を 0 に設定すると、スプレッドシートオーバレイによって画像やグラフィックスが完全に見えなくなります。値を大きくすると、画像やグラフィックスがスプレッドシートを通してより鮮明に表示されるようになります。[オーバレイの透明度] の値は、0～100 パーセントで指定します。

[オーバレイの透明度] ダイアログを表示するには

  • [画像] メニューで、[オーバレイの透明度] をクリックします。

ヒント: 値を入力した後、Tab キーを押すと、[オーバレイの透明度] の設定をスプレッドシートでプレビューできます。


[シリアルポートの設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[シリアルポートの設定] ダイアログでは、アクティブな In-Sight ビジョンシステムのシリアル通信環境を設定します。入力文字列は、ReadSerial 関数を使用してシリアルポート経由でスプレッドシートに読み込まれます。出力文字列は、WriteSerial 関数を使用してシリアルポート経由で、スプレッドシートから送信されます。

注意:
  • シリアルデータを送受信するためには、ビジョンシステムがオンラインである必要があります。
  • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
  • In-Sight Micro ビジョンシステムは、CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続している場合のみ、シリアル通信をサポートします。
  • CIO-WENET イーサネット I/O モジュールはシリアル通信をサポートしていません。
  • In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

シリアルポート設定を行うには

  1. [センサ] メニューで、[シリアルポートの設定] をクリックします。

  2. [I/O モジュール] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、I/O モジュールを設定します。[OK] ボタンをクリックして [I/O モジュールの設定] ダイアログを閉じ、[シリアルポートの設定] ダイアログに戻ります。

    注意:
    • ビジョンシステムと I/O モジュールの間の接続が初めて成功した後、センサに物理的に接続されている I/O モジュール名の右に「接続済み」と表示されます。
    • CIO-MICRO、CIO-MICRO-CC、または CIO-WENET が I/O モジュールとして選択されている場合に、[OK] ボタンをクリックすると、ビジョンシステムは、指定された IP アドレスを使用して、モジュールとの EtherNet/IP 通信を確立しようとします。IP アドレスがネットワーク上に存在しない場合、EtherNet/IP がモジュール上で有効でない場合、または別のデバイスが既にモジュールへの EtherNet/IP 接続を確立している場合は、エラーメッセージが表示されます。

  3. シリアル設定を行います。次の表に、各 I/O モジュールで使用できる設定を示します。

    機能 直接接続 I/O または CIO-1350 CIO-1400 CIO-1450 CIO-1460 CIO-MICRO および CIO-MICRO-CC CIO-WENET

    [ビット / 秒]

    4800

    9600

    19200

    38400

    57600

    115200

    2400

    4800

    9600

    19200

    38400

    57600

    115200

    1200

    2400

    4800

    9600

    19200

    38400

    57600

    115200

    1200

    2400

    4800

    9600

    19200

    38400

    57600

    115200

    4800

    9600

    19200

    38400

    57600

    115200

    無効

    [データビット]

    7、8

    8

    7、8

    7、8

    7、8

    無効

    [ストップビット]

    1、2

    1

    1、2

    1、2

    1、2

    無効

    [パリティ]

    なし

    偶数

    奇数

    なし

    偶数

    奇数

    なし

    偶数

    奇数

    なし

    偶数

    奇数

    なし

    偶数

    奇数

    無効

    [フロー制御]

    なし

    Xon/Xoff

    ハードウェア

    なし

    Xon/Xoff

    ハードウェア

    なし

    Xon/Xoff

    ハードウェア

    なし

    Xon/Xoff

    ハードウェア

    なし

    Xon/Xoff

    ハードウェア

    無効

    [モード]

    Text
    Native

    DeviceNet

    Motoman

    Kuka

    未使用

    Text
    Native

    DeviceNet

    Motoman

    Kuka

    未使用

    Text
    Native

    DeviceNet

    Motoman

    Kuka

    未使用

    Text
    Native

    DeviceNet

    Motoman

    Kuka

    未使用

    Text
    Native

    DeviceNet

    Motoman

    Kuka

    未使用

    無効

    注意:　 DeviceNet は最大 57600 ビット/秒をサポートします。

  4. [OK] ボタンをクリックします。

[シリアルポートの設定] ダイアログの設定項目

  • [ビット　/　秒]: 1200、2400、4800、9600、19200、38400、57600、または 115200。

    注意:　 DeviceNet は最大 57600 ビット/秒をサポートします。

  • [データビット]: 7 または 8。
  • [ストップビット]: 1 または 2。
  • [パリティ]: なし、偶数、または奇数。

  • [フロー制御]: なし、Xon/Xoff、またはハードウェア。

    注意:
    • 構成に関係なく、[フロー制御] ドロップダウンメニューは常に有効です。ほとんどの In-Sight ビジョンシステムでは、ビジョンシステムが I/O モジュールに接続されている場合、ハードウェアフロー制御のみをサポートします。ハードウェアフロー制御を有効にするために必要な物理接続の条件については、ご使用のビジョンシステムのインストールマニュアルを参照してください。
    • 大量のデータを送信する場合は、[フロー制御] パラメータを [Xon/Xoff] に設定し、フロー制御を使用してデータが欠落しないようにすることを推奨します。

  • [モード]: 使用するシリアルプロトコルを設定します。

    モード

    説明

    [Text]

    標準の ASCII プロトコルでテキスト文字列の送受信を行います。

    [Native]

    カスタマイズした ASCII プロトコルで In-Sight をシリアルデバイスからリモート制御します。

    [DeviceNet]

    デバイスネット通信をするためのプロトコル。

    注意:　[DeviceNet] を設定するには、サードパーティの RS-232 デバイスネットゲートウェイアダプタが必要です。この設定は従来のインストール環境で使用できます。ただし、最新のアプリケーションで使用する場合は、RS-232 デバイスネットゲートウェイコンバータを完全にテストして、そのアプリケーションでも使用できることを確認してください。

    [Motoman]

    DCI モードで動作している MRC、MRC-II、および XRC ロボットコントローラなどの Motoman と通信するためのプロトコル。

    [Kuka]

    Kuka KR C2 および KR C2 Edition 2005 ロボットコントローラと通信するためのプロトコル。

    [未使用]

    シリアルポートを閉じるので、コマンドもデータも送受信できません。
  • [詳細設定]:　[モード] が [DeviceNet]、[Native]、または [Text] に設定されている場合、ダイアログの [詳細設定] 部分で、選択したモードに固有の入力/出力終端記号およびパケットデータサイズを設定することができます。

Text モードの詳細設定

Text モードの詳細設定では、テキストモードのシリアル通信に使用する終端記号を定義します。これらの詳細設定は、[モード] が [Text] に設定されているときのみ使用できます。

  • [固定長の入力]:　イベントをトリガする前に固定長の文字列を読み取ります。
  • [入力終端記号]:　In-Sight によって入力文字列の最後の文字として認識される ASCII 値。デフォルトは 13 (キャリッジリターン) です。[固定長の入力] をオンにすると、[入力終端記号] は無効になります。
  • [出力終端記号]:　In-Sight によって各出力文字列に追加され、送信文字列の終わりを示す ASCII 値。デフォルトは -1 です。-1 は「CRLF」 (キャリッジリターン/ラインフィード)、0 は「終端記号なし」を指定します。

Native モードの詳細設定

Native モードの詳細設定では、ネイティブモードシリアル通信の終端記号を設定します。これらの詳細設定は、[モード] が [Native] に設定されているときのみ使用できます。

  • [固定長の入力]:　イベントをトリガする前に固定長の文字列を読み取ります。
  • [入力終端記号]:　In-Sight によって入力文字列の最後の文字として認識される ASCII 値。デフォルトは 13 (キャリッジリターン) です。[固定長の入力] をオンにすると、[入力終端記号] は無効になります。
  • [出力終端記号]:　In-Sight によって各出力文字列に追加され、送信文字列の終わりを示す ASCII 値。デフォルトは -1 です。-1 は「CRLF」 (キャリッジリターン/ラインフィード)、0 は「終端記号なし」を指定します。

DeviceNet モードの詳細設定

DeviceNet モードの詳細設定では、オプションのデバイスネットインタフェースモジュールを使用して、In-Sight ビジョンシステムにデバイスネット接続する場合のパケットサイズを設定します。これらの詳細設定は、[モード] が [DeviceNet] に設定されているときのみ使用できます。

  • [入力パケットサイズ]:　デバイスネットインタフェースモジュールを通じて受信する予想パケットサイズをバイト単位で設定します。この設定は RS-232 デバイスネットゲートウェイ設定の MaxWidth 値を満たす必要があります。
  • [出力パケットサイズ]:　デバイスネットインタフェースモジュールを通じて送信するパケットサイズをバイト単位で設定します。この設定は RS-232 デバイスネットゲートウェイ設定の Transmit Width 値を満たす必要があります。
  • [第一バイトでトリガをかける]:　先頭のバイトを受信したときに画像取り込みのトリガをかけます。AcquireImage 関数のプロパティシートで、トリガパラメータが外部トリガに設定されている必要があります。

注意:　[第一バイトでトリガをかける] が有効な場合、In-Sight ビジョンシステムがトリガされると、前の画像が表示され、以前のスプレッドシートの更新時に取得されたデータがセルデータとして表示されることがあります。

関連項目

  • In-Sight 7000 シリーズビジョンシステムでのシリアル通信の有効化
  • [I/O モジュールの設定] ダイアログ
  • シリアル I/O 関数
  • ネイティブモードでのシリアル通信
  • Motoman との通信
  • Kuka との通信


[CC-Link 設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[CC-Link 設定] ダイアログでは、アクティブな In-Sight ビジョンシステムについて、CIO-MICRO-CC I/O モジュールを使用した CC-Link 通信を設定します。入力データは、ReadCCLinkBitBuffer 関数および ReadCCLinkWordBuffer 関数を使用して、スプレッドシートに読み込まれます。出力データは、WriteCCLinkBitBuffer 関数および WriteCCLinkWordBuffer 関数を使用して、スプレッドシートから CC-Link ネットワークに書き込まれます。

注意: CC-Link の配線方法については、『In-Sight® CIO-MICRO および CIO-MICRO-CC I/O モジュールイントールガイド』をご参照ください。

[CC-Link 設定] ダイアログを表示するには

  1. [センサ] メニューから [CC-Link 設定] を選択します。

  2. [I/O の種類] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、I/O モジュールを設定します。[OK] ボタンをクリックして [I/O モジュールの設定] ダイアログを閉じ、[CC-Link 設定] ダイアログに戻ります。
注意:
  • ビジョンシステムと I/O モジュールの間の接続が初めて成功した後、センサに物理的に接続されている I/O モジュール名の右に「接続済み」と表示されます。
  • CIO-MICRO、CIO-MICRO-CC、または CIO-WENET が I/O モジュールとして選択されている場合に、[OK] ボタンをクリックすると、ビジョンシステムは、指定された IP アドレスを使用して、モジュールとの EtherNet/IP 通信を確立しようとします。IP アドレスがネットワーク上に存在しない場合、EtherNet/IP がモジュール上で有効でない場合、または別のデバイスが既にモジュールへの EtherNet/IP 接続を確立している場合は、エラーメッセージが表示されます。
  3. CC-Link を設定します。

[CC-Link 設定] ダイアログのコントロール

  • [バージョン]: V1、V2
  • [ビット/秒]: 10M、5M、2.5M、625K、156K
  • [ステーション数]: 1 ～ 64.
  • [ステーションの数]: 1 ～ 4。 1 に設定すると、入出力が 16 ビットになります。2 に設定すると、入出力が 48 ビットになります。3 に設定すると、入出力が 80 ビットになります。4 に設定すると、入出力が 112 ビットになります。
  • [拡張サイクル]: 1X (無効)、2X、4X、8X

関連項目

[I/O モジュールの設定] ダイアログ (CIO-MICRO、CIO-MICRO-CC、および CIO-WENET)

ReadCCLinkBitBuffer

WriteCCLinkBitBuffer

ReadCCLinkWordBuffer

WriteCCLinkWordBuffer


[ディスクリート入力設定] ダイアログ

[センサ] メニュー → [ディスクリート I/O の設定] → [入力設定]

In-Sight Explorer GUI リファレンス
  • [ディスクリート入力設定] ダイアログについて
  • ディスクリート入力ラインの設定
  • ディスクリート入力ライン別の有効な入力タイプ
  • 関連項目

[ディスクリート入力設定] ダイアログについて

[ディスクリート入力設定] ダイアログでは、アクティブな In-Sight ビジョンシステムのディスクリート入力ラインを設定します。ディスクリート入力信号は、ReadDiscrete 関数を使用してスプレッドシートに読み込まれます。

直接接続 (組み込み) 入力の数は、次のように、In-Sight ビジョンシステムによって異なります。

In-Sight ビジョンシステム | 直接接続 (組み込み) 入力1
In-Sight 5000 シリーズ | なし
In-Sight 7000 シリーズ | 汎用入力× 3
In-Sight Micro シリーズ | なし
1 In-Sight 5000 シリーズ、7000 シリーズ、および Micro シリーズのビジョンシステムには、専用の取り込みトリガ入力が 1 つあります。詳細については、AcquireImage 関数のトピックのトリガパラメータを参照してください。また、In-Sight Explorer ソフトウェアに収録されているビジョンシステムのインストールガイドも参照してください。

1 つの I/O モジュールを使用して、ディスクリート入力を追加できます。ディスクリート入力の数は、次のように、I/O モジュールの接続状況によって異なります。

I/O モジュール | サポートされている In-Sight ビジョンシステム | ディスクリート入力
CIO-1400 | In-Sight 5000 シリーズ (5604 を除く) | 汎用入力× 7
CIO-1450 | In-Sight 5000 シリーズ (5604 を除く) | 汎用入力× 8
CIO-1460 | In-Sight 5000 シリーズ (5604 および 5605 を除く) | 汎用入力× 8
CIO-MICRO および CIO-MICRO-CC | In-Sight 5100 および 5400 シリーズ1、5600 シリーズ、In-Sight 7000 シリーズ、In-Sight Micro シリーズ | 汎用入力× 8
CIO-WENET | In-Sight Micro シリーズ | 汎用入力× 8
1 CIO-MICRO および CIO-MICRO-CC I/O モジュールがサポートしているのは、128MB 以上の不揮発性フラッシュメモリを持つ In-Sight 5100 シリーズ、および 5400 シリーズのビジョンシステムのみです。 モデルはタイプ番号 (821-xxxx-xx) で特定できます。このタイプ番号は、ビジョンシステムに添付されているラベルに記載されています。モデル、およびタイプ番号と不揮発性フラッシュメモリの一覧については、ここをクリックしてください。

注意:
  • In-Sight 7000 シリーズのビジョンシステムでは、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールの同時接続がサポートされています。
  • In-Sight 7000 シリーズビジョンシステムの直接接続 (組み込み) 入力は、ビジョンシステムが電源および I/O ブレークアウトケーブルに接続されている場合のみサポートされます。
  • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
  • In-Sight ビジョンシステムを Opto 22、Wago、Sixnet など、ほかのベンダー製の標準の Ethernet I/O 製品との通信にも使用すると、I/O チャネルの数を実質的に無限に増やすことができます。ただし、Modbus パケットタイプ通信用に設定された In-Sight TCPDevice 関数を使用して、これらのビジョンシステムのイーサネットベースの入出力を設定する必要があります。
  • In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

警告:
  • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの TRIGGER+、TRIGGER-、HS OUT 0、HS OUT 1、および HS COMMON ターミナルはサポートされません。リモートデバイスからこれらのターミナルにリード線を接続しないでください。

  • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの I/O ポート (DB15) はサポートされていません。このポートには何も接続しないでください。

ディスクリート入力ラインの設定

  1. [センサ] メニューで、[ディスクリート I/O の設定] をクリックします。
  2. [入力設定] をクリックします。

  3. [I/O モジュール] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、I/O モジュールを設定します。設定を完了したら、[OK] ボタンをクリックして [I/O モジュールの設定] ダイアログを閉じ、[ディスクリート入力設定] ダイアログに戻ります。

    注意:
    • ビジョンシステムと I/O モジュールの間の接続が初めて成功した後、センサに物理的に接続されている I/O モジュール名の右に「接続済み」と表示されます。
    • CIO-MICRO、CIO-MICRO-CC、または CIO-WENET が I/O モジュールとして選択されている場合に、[OK] ボタンをクリックすると、ビジョンシステムは、指定された IP アドレスを使用して、モジュールとの EtherNet/IP 通信を確立しようとします。IP アドレスがネットワーク上に存在しない場合、EtherNet/IP がモジュール上で有効でない場合、または別のデバイスが既にモジュールへの EtherNet/IP 接続を確立している場合は、エラーメッセージが表示されます。

  4. 設定する [ライン] を選択します。デフォルト設定は、設定対象の In-Sight ビジョンシステムおよびビジョンシステムに接続されている I/O モジュールのタイプによって異なります。

    Closed In-Sight 5000 シリーズ

    ライン | 直接接続/CIO-1350 | CIO-1400 | CIO-1450 | CIO-1460 | CIO-MICRO および CIO-MICRO-CC
    0 | 無効 | 無効 | Line 0 | Line 0 | Line 0
    1 | 無効 | Line 1 | Line 1 | Line 1 | Line 1
    2 | 無効 | Line 2 | Line 2 | Line 2 | Line 2
    3 | 無効 | Line 3 | Line 3 | Line 3 | Line 3
    4 | 無効 | Line 4 | Line 4 | Line 4 | Line 4
    5 | 無効 | Line 5 | Line 5 | Line 5 | Line 5
    6 | 無効 | Line 6 | Line 6 | Line 6 | Line 6
    7 | 無効 | Line 7 | Line 7 | Line 7 | Line 7
    8 | 無効 | 無効 | 無効 | 無効 | 無効
    9 | 無効 | 無効 | 無効 | 無効 | 無効
    10 | 無効 | 無効 | 無効 | 無効 | 無効
    11 | 無効 | 無効 | 無効 | 無効 | 無効
    Closed In-Sight 7000 シリーズ

    注意:
    • In-Sight 7000 シリーズのビジョンシステムでは、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールの同時接続がサポートされています。
    • In-Sight 7000 シリーズビジョンシステムの直接接続 (組み込み) 入力は、ビジョンシステムが電源および I/O ブレークアウトケーブルに接続されている場合のみサポートされます。
    • In-Sight 7000 シリーズのビジョンシステムが CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用するように構成されている場合、電源および I/O ブレークアウトケーブルの　RS-232 TRANSMIT および RS-232 RECEIVE ピンは無効です。シリアルデバイスへの接続には、I/O モジュールの RS-232 OUT ポート (DB9) を使用してください。

    警告:
    • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの TRIGGER+、TRIGGER-、HS OUT 0、HS OUT 1、および HS COMMON ターミナルはサポートされません。リモートデバイスからこれらのターミナルにリード線を接続しないでください。

    • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの I/O ポート (DB15) はサポートされていません。このポートには何も接続しないでください。

    ライン | 直接接続 I/O | CIO-MICRO または CIO-MICRO-CC
    0 | 無効 | Line 0
    1 | IN 11/シリアル受信 | Line 1
    2 | IN 21 | Line 2
    3 | IN 31 | Line 3
    4 | 無効 | Line 4
    5 | 無効 | Line 5
    6 | 無効 | Line 6
    7 | 無効 | Line 7
    8 | 無効 | 無効
    9 | 無効 | IN 11
    10 | 無効 | IN 21
    11 | 無効 | IN 31
    1組み込み入力、In-Sight ビジョンシステムと直接接続。
    Closed In-Sight Micro シリーズ

    ライン | 直接接続 I/O | CIO-MICRO および CIO-MICRO-CC | CIO-WENET
    0 | 無効 | Line 0 | Line 0
    1 | 無効 | Line 1 | Line 1
    2 | 無効 | Line 2 | Line 2
    3 | 無効 | Line 3 | Line 3
    4 | 無効 | Line 4 | Line 4
    5 | 無効 | Line 5 | Line 5
    6 | 無効 | Line 6 | Line 6
    7 | 無効 | Line 7 | Line 7
    8 | 無効 | 無効 | 無効
    9 | 無効 | 無効 | 無効
    10 | 無効 | 無効 | 無効
    11 | 無効 | 無効 | 無効
  5. 必要に応じて、デフォルト名を含むフィールドを選択して新しい名前を入力し、入力ラインの別の [名前] を入力します。名前に使用できる文字数は最大 15 文字です。この名前は参照目的のみに使用され、入力ラインの機能を変更したり、スプレッドシートで参照したりすることはできません。

  6. 選択した入力ラインの [タイプ] を選択します。次の表の機能を各入力ラインに設定することができます。

    種類 説明

    User Data

    汎用入力ラインです。スプレッドシートにイベントを駆動したり、ReadDiscrete 関数を使用してスプレッドシートに値を設定したりする場合に使用します。

    イベントトリガ

    イベントをトリガします。スプレッドシートを更新するには、スプレッドシートは、トリガパラメータがこのディスクリート入力ライン番号に設定されたイベント構造体を含む必要があります。

    ジョブ ID 番号

    ジョブ ID 番号を構成する 1 ビットです。別のラインに割り当てた [ジョブを開く] の入力ラインが ON になったときにジョブ ID 番号が読み込まれます。

    注意:
    • ジョブ ID 番号の機能を使用する場合は、ジョブファイル名の先頭に 0 ～ 127 (CIO-1400 使用時は 0 ～ 63) の接頭辞を付けておく必要があります。
    • ジョブ ID 番号の最小値は、I/O モジュール上のディスクリート入力ラインの最小値に対応しています。

    オンライン/オフライン*

    In-Sight ビジョンシステムをオフラインまたはオンラインにします (0 = オフライン、1 = オンライン)。

    注意:　[タイプ] が [オンライン] に設定されていても、In-Sight Explorer ユーザインタフェースで手動でオフラインに設定された場合や、ネイティブモードの Set Online コマンド SO0 が発行されて In-Sight ビジョンシステムがオフラインになった場合、ビジョンシステムはオフラインになります。

    画像取り込みトリガ*

    (CIO-1400 ではサポートされていません)

    In-Sight ビジョンシステムをトリガして画像を取り込みます。

    注意:
    • 画像プロパティシートの [トリガ] パラメータを [外部] に設定し、信号ラインを物理的に In-Sight ビジョンシステムの入力に接続して、画像取り込みトリガ入力を使用する必要があります。
    • トリガレートを上げるには、画像取り込みトリガとして構成された汎用入力ラインを使ってビジョンシステムをトリガ (AcquireImage 関数の [トリガ] パラメータを [外部] に設定) するのではなく、ビジョンシステムに組み込まれている取り込みトリガ入力を使用 (AcquireImage 関数の [トリガ] パラメータを [カメラ] に設定) します。
    • AcquireImage 関数の [トリガ] パラメータが [外部] に設定されているときに、取り込みに失敗した場合、[エラー: 画像取り込みミス] 出力はビジョンシステムから送信されません。[エラー: 画像取り込みミス] 信号は、AcquireImage 関数の [トリガ] パラメータが [カメラ] に設定されている場合のみサポートされます。

    ジョブを開く*

    入力ラインの状態が ON になると、すべてのジョブ ID 番号を読み取り、指定されたジョブをロードします。

    注意:　In-Sight ビジョンシステムはオフラインになっている必要があります。

    シリアル受信
    (直接接続 I/O のみ)

    このラインをシリアル受信ラインとして設定します。

    注意:
    • [シリアル受信] は、In-Sight Explorer 4.7.1 以降が搭載されている In-Sight 7000 シリーズビジョンシステムに接続し、In-Sight 4.7.1 以降のファームウェアを使用している場合のみ使用可能です。
    • 直接接続 I/O が選択されている場合、この入力タイプはライン 1 に対してのみ有効です。
    • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
    * この入力タイプを、同時に複数のラインに割り当てることはできません。
  7. 選択した入力ラインの信号タイプを選択します。これによって、エッジ変化に対する入力ラインの状態を制御します。
    • [立ち上がりエッジ]:　パルスの立ち上がりエッジで入力ラインの [状態] が変わります。
    • [立ち下がりエッジ]:　パルスの立ち下がりエッジで入力ラインの [状態] が変わります。
    • [両方のエッジ]:　パルスの立ち上がりエッジと立ち下がりエッジのどちらでも入力ラインの [状態] が変わります。このオプションは [イベントトリガ] タイプでのみ利用できます。
  8. [OK] をクリックすると、変更が適用されます (変更はフラッシュメモリに保存されます)。変更を取り消す場合は、[キャンセル] をクリックします。

ディスクリート入力ライン別の有効な入力タイプ

次の表に、各入力ラインに対して使用可能な入力タイプを示します。

使用する I/O モジュール | 入力ライン | 有効な入力タイプ
直接接続/CIO-1350 (In-Sight 5000 シリーズビジョンシステム) | なし | なし
直接接続 I/O (In-Sight Micro シリーズビジョンシステム) | なし | なし
直接接続 I/O (In-Sight 7000 シリーズビジョンシステム) Lines 1、2、および 3

User Data

イベントトリガ

ジョブ ID 番号

オンライン/オフライン1

画像取り込みトリガ1

ジョブを開く1

シリアル受信2
CIO-1400 Line 1 ～ 7

User Data

イベントトリガ

ジョブ ID 番号

オンライン/オフライン1

ジョブを開く1
CIO-1450 Line 0 ～ 7

User Data

イベントトリガ

ジョブ ID 番号

オンライン/オフライン1

画像取り込みトリガ1

ジョブを開く1
CIO-1460 Line 0 ～ 7

User Data

イベントトリガ

ジョブ ID 番号

オンライン/オフライン1

画像取り込みトリガ1

ジョブを開く1
CIO-MICRO および CIO-MICRO-CC
  • Line 0 ～ 7 (In-Sight 5000 シリーズおよび In-Sight Micro シリーズビジョンシステム)
  • Line 0 ～ 7、Line 10 および 11 (In-Sight 7000 シリーズビジョンシステム)

User Data

イベントトリガ

ジョブ ID 番号

オンライン/オフライン1

画像取り込みトリガ1

ジョブを開く1
CIO-WENET Line 0 ～ 7

User Data

イベントトリガ

ジョブ ID 番号

オンライン/オフライン1

画像取り込みトリガ1

ジョブを開く1

1この入力タイプを、同時に複数の入力ラインに割り当てることはできません。

2この入力タイプは、Line 1 でのみ使用できます。

関連項目

  • [ディスクリート出力設定] ダイアログ
  • ReadDiscrete 関数
  • CIO-WENET の IP アドレスの設定
  • [I/O モジュールの設定] ダイアログ


[ディスクリート出力設定] ダイアログ

[センサ] メニュー → [ディスクリート I/O の設定] → [出力設定]

In-Sight Explorer GUI リファレンス
  • [ディスクリート出力設定] ダイアログについて
  • ディスクリート出力ラインの設定
  • 関連項目

[ディスクリート出力設定] ダイアログについて

[ディスクリート出力設定] ダイアログでは、In-Sight ビジョンシステムのパラレルデジタル出力ラインを設定します。ディスクリート出力信号は、WriteDiscrete または Waveform 関数、WriteWaveformPulseTrain および WriteWaveformClocked を使用して、スプレッドシートから書き出すことができます。

直接接続 (組み込み) 出力の数は、次のように、In-Sight ビジョンシステムによって異なります。

In-Sight ビジョンシステム | 直接接続 (組み込み) 出力
In-Sight 5000 シリーズ | 高速出力 × 2 ユーザ設定可能 LED × 2 (緑・赤)
In-Sight 7000 シリーズ | 高速出力 × 4 ユーザ設定可能 LED × 2 (緑・赤)
In-Sight Micro シリーズ | 高速出力 × 2 ユーザ設定可能 LED × 2 (緑・赤)

1 つの I/O モジュールを使用して、ディスクリート出力を追加できます。ディスクリート出力の数は、次のように、I/O モジュールの接続状況によって異なります。

I/O モジュール | サポートされている In-Sight ビジョンシステム | ディスクリート出力チャネル
CIO-1400 | In-Sight 5000 シリーズ (5604 を除く) | 汎用出力 × 6
CIO-1450 | In-Sight 5000 シリーズ (5604 を除く) | 汎用出力 × 8
CIO-1460 | In-Sight 5000 シリーズ (5604 および 5605 を除く) | 汎用出力 × 8
CIO-MICRO および CIO-MICRO-CC | In-Sight 5100 および 5400 シリーズ1、5600 シリーズ、In-Sight 7000 シリーズ、In-Sight Micro シリーズ | 汎用出力 × 8
CIO-WENET | In-Sight Micro シリーズ | 汎用出力 × 8
1 CIO-MICRO および CIO-MICRO-CC I/O モジュールがサポートしているのは、128MB 以上の不揮発性フラッシュメモリを持つ In-Sight 5100 シリーズ、および 5400 シリーズのビジョンシステムのみです。 モデルはタイプ番号 (821-xxxx-xx) で特定できます。このタイプ番号は、ビジョンシステムに添付されているラベルに記載されています。モデル、およびタイプ番号と不揮発性フラッシュメモリの一覧については、ここをクリックしてください。

注意:
  • In-Sight 7000 シリーズのビジョンシステムでは、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールの同時接続がサポートされています。
  • In-Sight 7000 シリーズビジョンシステムの高速出力は、ビジョンシステムが電源および I/O ブレークアウトケーブルに接続されている場合のみサポートされます。
  • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
  • 外部ストロボデバイスを In-Sight 7000 ビジョンシステムの外部照明ケーブルに接続する場合は、[外部照明の設定] ダイアログを使用して外部照明の設定を行います。
  • In-Sight ビジョンシステムを Opto 22、Wago、Sixnet など、ほかのベンダー製の標準の Ethernet I/O 製品との通信にも使用すると、I/O チャネルの数を実質的に無限に増やすことができます。ただし、Modbus パケットタイプ通信用に設定された In-Sight TCPDevice 関数を使用して、これらのビジョンシステムのイーサネットベースの入出力を設定する必要があります。
  • パルスディスクリート出力が CIO-1450 I/O モジュールから送信されるときには、パルス幅が指定より 10 ミリ秒長くなることがあります。
  • CIO-1460 I/O モジュールの電源を入れ直すと、ディスクリート出力は初期設定時に約 250 ミリ秒間、発光することがあります。
  • In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

警告:
  • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの TRIGGER+、TRIGGER-、HS OUT 0、HS OUT 1、および HS COMMON ターミナルはサポートされません。リモートデバイスからこれらのターミナルにリード線を接続しないでください。

  • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの I/O ポート (DB15) はサポートされていません。このポートには何も接続しないでください。

ディスクリート出力ラインの設定

  1. [センサ] メニューで、[ディスクリート I/O の設定] をクリックします。

  2. [出力設定] をクリックし、[ディスクリート出力設定] ダイアログを開きます。

  3. [I/O モジュール] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、I/O モジュールを設定します。設定を完了したら、[OK] ボタンをクリックして [I/O モジュールの設定] ダイアログを閉じ、[ディスクリート出力設定] ダイアログに戻ります。

    注意:
    • ビジョンシステムと I/O モジュールの間の接続が初めて成功した後、センサに物理的に接続されている I/O モジュール名の右に「接続済み」と表示されます。
    • CIO-MICRO、CIO-MICRO-CC、または CIO-WENET が I/O モジュールとして選択されている場合に、[OK] ボタンをクリックすると、ビジョンシステムは、指定された IP アドレスを使用して、モジュールとの EtherNet/IP 通信を確立しようとします。IP アドレスがネットワーク上に存在しない場合、EtherNet/IP がモジュール上で有効でない場合、または別のデバイスが既にモジュールへの EtherNet/IP 接続を確立している場合は、エラーメッセージが表示されます。

  4. 設定する [ライン] を選択します。[ディスクリート出力設定] ダイアログのデフォルト設定は、設定対象の In-Sight ビジョンシステムおよびビジョンシステムに接続されている I/O モジュールのタイプによって異なります。

    Closed In-Sight 5000 シリーズ

    ライン | 直接接続/CIO-1350 | CIO-1400 | CIO-1450 | CIO-1460 | CIO-MICRO および CIO-MICRO-CC
    0 | HSOUT 01 | HSOUT 01 | Line 0 | Line 0 | Line 0
    1 | HSOUT 11 | HSOUT 11 | Line 1 | Line 1 | Line 1
    2 | 無効 | Line 2 | Line 2 | Line 2 | Line 2
    3 | 無効 | Line 3 | Line 3 | Line 3 | Line 3
    4 | 緑色の LED | Line 4 | Line 4 | Line 4 | Line 4
    5 | 赤色の LED | Line 5 | Line 5 | Line 5 | Line 5
    6 | 無効 | Line 6 | Line 6 | Line 6 | Line 6
    7 | 無効 | Line 7 | Line 7 | Line 7 | Line 7
    8 | 無効 | 緑色の LED | HSOUT 01 | HSOUT 01 | HSOUT 01
    9 | 無効 | 赤色の LED | HSOUT 11 | HSOUT 11 | HSOUT 11
    10 | 無効 | 無効 | 緑色の LED | 緑色の LED | 緑色の LED
    11 | 無効 | 無効 | 赤色の LED | 赤色の LED | 赤色の LED
    12 | 無効 | 無効 | 無効 | 無効 | 無効
    13 | 無効 | 無効 | 無効 | 無効 | 無効
    1高速出力、ビジョンシステムと直接接続。
    Closed In-Sight 7000 シリーズ

    注意:
    • In-Sight 7000 シリーズのビジョンシステムでは、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールの同時接続がサポートされています。
    • In-Sight 7000 シリーズビジョンシステムの高速出力は、ビジョンシステムが電源および I/O ブレークアウトケーブルに接続されている場合のみサポートされます。
    • In-Sight 7000 シリーズのビジョンシステムが CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用するように構成されている場合、電源および I/O ブレークアウトケーブルの　RS-232 TRANSMIT および RS-232 RECEIVE ピンは無効です。シリアルデバイスへの接続には、I/O モジュールの RS-232 OUT ポート (DB9) を使用してください。

    警告:
    • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの TRIGGER+、TRIGGER-、HS OUT 0、HS OUT 1、および HS COMMON ターミナルはサポートされません。リモートデバイスからこれらのターミナルにリード線を接続しないでください。
    • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの I/O ポート (DB15) はサポートされていません。このポートには何も接続しないでください。

    ライン | 直接接続 I/O | CIO-MICRO または CIO-MICRO-CC
    0 | HSOUT 01 | Line 0
    1 | HSOUT 11/シリアル送信 | Line 1
    2 | HSOUT 21 | Line 2
    3 | HSOUT 31 | Line 3
    4 | 緑色の LED | Line 4
    5 | 赤色の LED | Line 5
    6 | 無効 | Line 6
    7 | 無効 | Line 7
    8 | 無効 | HSOUT 01
    9 | 無効 | HSOUT 11
    10 | 無効 | HSOUT 21
    11 | 無効 | HSOUT 31
    12 | 無効 | 緑色の LED
    13 | 無効 | 赤色の LED
    1高速出力、ビジョンシステムと直接接続 (電源および I/O ブレークアウトケーブル接続時)。
    Closed In-Sight Micro シリーズ

    ライン | 直接接続 I/O | CIO-MICRO および CIO-MICRO-CC | CIO-WENET
    0 | HSOUT 01 | Line 0 | Line 0
    1 | HSOUT 11 | Line 1 | Line 1
    2 | 無効 | Line 2 | Line 2
    3 | 無効 | Line 3 | Line 3
    4 | 緑色の LED | Line 4 | Line 4
    5 | 赤色の LED | Line 5 | Line 5
    6 | 無効 | Line 6 | Line 6
    7 | 無効 | Line 7 | Line 7
    8 | 無効 | HSOUT 0 | HSOUT 01
    9 | 無効 | HSOUT 1 | HSOUT 11
    10 | 無効 | 緑色の LED | 緑色の LED
    11 | 無効 | 赤色の LED | 赤色の LED
    12 | 無効 | 無効 | 無効
    13 | 無効 | 無効 | 無効
    1高速出力、ビジョンシステムと直接接続。
  5. 必要に応じて、デフォルト名を含むフィールドを選択して新しい名前を入力し、ラインの新しい [名前] を入力します。名前に使用できる文字数は最大 15 文字です。この名前は参照目的のみに使用され、ラインの機能を変更したり、スプレッドシートで参照したりすることはできません。

  6. 選択したラインの [種類] を選択します。次の表の機能を各ラインに設定することができます。

    種類 説明

    ユーザ用

    (デフォルト)

    スプレッドシートの WriteDiscrete 関数が、この出力ラインの状態を制御できるようにします。パルスまたはレベル信号です。

    ハイ (High)

    出力を High (1) にします。

    ロー (Low)

    出力を Low (0) にします。

    画像取り込み開始

    ビジョンシステムが画像の取り込みを開始したことを示す信号です。常にパルスとなります。

    画像取り込み終了

    ビジョンシステムが画像の取り込みを完了したことを示す信号です。常にパルスとなります。

    ジョブ完了

    スプレッドシートが更新を完了するたびに出す信号です。常にパルスとなります。

    システムビジー

    ビジョンシステムがジョブを実行しているとき、またはユーザ入力に応答しているときは High になります。ビジョンシステムがアイドルの場合は Low です。

    ジョブを開く - 完了

    ジョブのロードが成功したことを示す信号です。常にパルスとなります。

    エラー: ジョブを開く

    ジョブのロードが失敗したことを示す信号です。常にパルスとなります。

    エラー:　画像取り込みミス

    画像取り込み終了信号が送信される前に画像取り込みトリガを受信したか、画像取り込みトリガを受信したときに、画像取り込み用の画像バッファがないことを示す信号です。常にパルスとなります。

    注意:　AcquireImage 関数のプロパティシートの [トリガ] パラメータが [カメラ] に設定されていないと、[エラー: 画像取り込みミス] 出力は使用できません。

    エラー:　トラックオーバラン

    予想時刻よりやや遅れてスプレッドシートが遅延ディスクリート出力信号を出力したことを示す信号です。常にパルスとなります。

    エラー:　トラックキューフル

    同時に別の出力が発生するようにあらかじめ予定されていたラインに、スプレッドシートが遅延ディスクリート出力信号を出力したことを示す信号です。常にパルスとなります。

    オンライン/オフライン

    ビジョンシステムがオンラインのときは High (1) になります。ビジョンシステムがオフラインの場合は Low (0) です。

    ストロボ

    信号の立ち上がりエッジまたは立ち下がりエッジでストロボにトリガをかけることができます。[ストロボ/照明制御のトリガ] を立ち上がりエッジに設定すると、画像センサの露光時に信号が HIGH になり、それ以外は LOW になります。[ストロボ/照明制御のトリガ] を立ち下がりエッジに設定すると、画像センサの露光時に信号が LOW になり、それ以外は HIGH になります。露光時は常にパルスとなります。露光時間は外部ストロボデバイスで設定されているストロボパルス時間よりも 0.50 ミリ秒以上長くする必要があります。

    注意:

    • ストロボが正常に動作するには、ビジョンシステムとストロボデバイスが同じグラウンドに接続されている必要があります。
    • In-Sight 5000 シリーズのビジョンシステムでは、[ストロボ] 出力タイプは、直接接続 I/O または CIO-1350 や CIO-1400 が選択されているときは Line 1 (HSOUT 1)、CIO-1450、CIO-1460、CIO-MICRO、または CIO-MICRO-CC が選択されているときは Line 9 (HSOUT 1) について有効です。
    • In-Sight 7000 シリーズのビジョンシステムでは、[ストロボ] 出力タイプは、直接接続 I/O が選択されているときは Line 0 (HSOUT 0)、CIO-MICRO または CIO-MICRO-CC が選択されているときは Line 8 (HSOUT 0) について有効です。
    • In-Sight Micro シリーズのビジョンシステムでは、[ストロボ] 出力タイプは、直接接続 I/O が選択されているときは Line 1 (HSOUT 1)、CIO-MICRO、CIO-MICRO-CC、または CIO-WENET が選択されているときは Line 9 (HSOUT 1) について有効です。

    照明制御

    (CIO-1460 のみ)

    信号の立ち上がりエッジまたは立ち下がりエッジで照明にトリガをかけることができます。[ストロボ/照明制御のトリガ] を立ち上がりエッジに設定すると、画像センサの露光時に信号が HIGH になり、それ以外は LOW になります。[ストロボ/照明制御のトリガ] を立ち下がりエッジに設定すると、画像センサの露光時に信号が LOW になり、それ以外は HIGH になります。露光時は常にパルスとなります。露光時間は外部照明デバイスで設定されているパルス時間よりも 0.50 ミリ秒以上長くする必要があります。

    注意:

    • 照明デバイスが正常に動作するには、ビジョンシステムと照明デバイスが同じグラウンドに接続されている必要があります。
    • この出力タイプは、In-Sight 5000 シリーズのビジョンシステムで CIO-1460 I/O モジュールが設定されているときには、高速出力ライン 9 (HSOUT 1) にのみ有効です。

    拡張モジュールスタンバイ

    (CIO-1450 および CIO-1460 のみ)

    ON は、I/O モジュールがビジョンシステムとの通信エラーを検出して、接続の再確立を試みていることを意味します。エラー条件が修正されたことを I/O モジュールが検出すると、ラインは OFF になります。

    注意:　このオプションは、CIO-1450 または CIO-1460 I/O モジュールを設定するときに、ライン 0 ～ 7 に対してのみ使用できます。

    ライフライン

    (CIO-MICRO および CIO-MICRO-CC のみ)

    HIGH (In-Sight Micro ビジョンシステムが、アクティブに CIO-MICRO または CIO-MICRO-CC に接続されている場合)。LOW (In-Sight Micro ビジョンシステムとの接続に失敗した場合)。
    波形

    スプレッドシートの Waveform 関数、WriteWaveformPulseTrain または WriteWaveformClocked が、この出力ラインの状態を制御できるようにします。

    シリアル送信

    (直接接続 I/O のみ)

    ラインをシリアル送信ラインとして設定します。

    注意:
    • [シリアル送信] は、In-Sight Explorer 4.7.1 以降が搭載されている In-Sight 7000 シリーズビジョンシステムに接続し、In-Sight 4.7.1 以降のファームウェアを使用している場合のみ使用可能です。
    • 直接接続 I/O が選択されている場合、この出力タイプはライン 1 に対してのみ有効です。
    • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
  7. 指定した出力タイプの詳細設定が使用可能な場合、[詳細] ボタンを押すと、選択したラインの出力詳細ダイアログが開きます。

  8. 必要に応じて、[オフライン時に出力の電源を切る] チェックボックスをオンにすると、ビジョンシステムがオフラインになったときに出力の電源を切ることができます。

    注意:　[オフライン時に出力の電源を切る] チェックボックスがオンになっていて、ビジョンシステムがオンラインである場合は、[ディスクリート出力設定] ダイアログを使用して設定された出力ラインはリストアされます。WriteDiscrete 関数を使用して設定された出力ラインはリストアされません。関数で指定されたイベントが発生するまで、これらの出力ラインはリストアされません。

  9. [OK] をクリックすると、変更が適用されます (変更はフラッシュメモリに保存されます)。変更を取り消す場合は、[キャンセル] をクリックします。

関連項目

  • [ディスクリート入力設定] ダイアログ
  • WriteDiscrete 関数
  • Waveform 関数
  • CIO-WENET の IP アドレスの設定
  • [I/O モジュールの設定] ダイアログ


[出力詳細] ダイアログ

[センサ] メニュー → [ディスクリート I/O の設定] → [出力設定] → [詳細設定]

In-Sight Explorer GUI リファレンス

[出力詳細] ダイアログでは、[ディスクリート出力設定] ダイアログから個々の出力ラインパラメータを設定します。

[ディスクリート出力詳細] ダイアログを表示するには

  1. [センサ] メニューで、[ディスクリート I/O の設定] をクリックします。
  2. [出力設定] をクリックします。
  3. [ディスクリート出力設定] ダイアログで、設定する出力ラインを選択し、[詳細設定] をクリックします。

選択したラインタイプに応じて、次の [出力詳細] ダイアログのいずれかが表示されます。

ラインタイプ | [出力詳細] ダイアログの例
ユーザ用 |
画像取り込み開始 画像取り込み終了 ジョブを開く - 完了 エラー: ジョブを開く エラー: 画像取り込みミス エラー: トラックオーバラン エラー: トラックキューフル |
ジョブ完了 |
ストロボ |

照明制御 ハイ (High)、ロー (Low)、システムビジー、オンライン/オフライン、ライフライン、および拡張モジュールスタンバイの各タイプに対する [出力詳細] ダイアログは用意されていません。

[出力詳細] ダイアログの設定項目

  • [パルス]: このチェックボックスを ON にすると、パルス出力されます。OFF にすると定常状態に設定されます。[取り込み遅延] が 0 以外の場合、パルス出力になります。
  • [パルス幅 (ミリ秒)]: 出力パルスの持続時間。In-Sight 5000 シリーズおよび In-Sight Micro シリーズビジョンシステム (10 ～ 1000 ミリ秒、デフォルト = 10)、In-Sight 7000 シリーズおよび In-Sight Micro 1402/1412 ビジョンシステム (1 ～ 1000 ミリ秒、デフォルト = 10)。
  • [取り込み遅延]: 出力ラインが信号パルスを受信した後に、出力を遅らせる画像取り込みまたはトラックパルスの数 (0 ～ 1000) です。画像取り込み遅延が 0 の場合、In-Sight センサは、WriteDiscrete 関数を評価するとすぐに出力ラインを更新します。[取り込み遅延] が 0 よりも大きい場合、出力ラインは常にパルスとなります。
  • [トリガ後の時間 (ms)]: このチェックボックスを ON にすると、指定された時間 (0 ～ 10000 ミリ秒) の経過後に、出力が行われます。

  • [ストロボ/照明制御のトリガ]:　[立ち上がりエッジ] は信号の立ち上がりエッジでストロボまたは照明制御にトリガをかけ、[立ち下がりエッジ] は信号の立ち下がりエッジでストロボまたは照明制御にトリガをかけます。

    注意: 出力ラインが [ストロボ] として設定されている場合、このラインはアクティブ LOW (1) です。[Strobe/Light Control Trigger] 設定を使用して、出力を反転することができます。

  • [ストロボ開始位置]:　ストロボを開始する時期として、[画像取り込み開始] (デフォルト)、または [カメラトリガ] を指定します。[画像取り込み開始] は、In-Sight ビジョンシステムが画像取り込みを開始するときにストロボを開始するよう指定します。[カメラトリガ] は、カメラトリガイベントを受信したときにストロボを開始するよう指定します。

注意: [取り込み遅延] と [トリガ後の時間] を同時に使用することはできません。これらは個別に使用する必要があります。例えば、[取り込み遅延] が有効になると、[トリガ後の時間] は無効になります。逆に、[トリガ後の時間] が有効になると、[取り込み遅延] は無効になります。


[Audit Message Settings] ダイアログ

[監査メッセージの設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[監査メッセージの設定] ダイアログボックスでは、アクティブなビジョンシステムに対して自動監査メッセージを有効または無効にしたり、監査メッセージサーバの IP アドレスおよび TCP/IP ポートを指定したり、監査メッセージが生成されるイベントタイプの指定を行ったりすることができます。

注意: Cognex が提供する In-Sight 監査メッセージサーバデモは、In-Sight ビジョンシステムからの監査メッセージを「リスン」する方法を明示するユーティリティアプリケーションです。リスンされたメッセージは、ユーザが管理している監査トレールロギングまたはデータベースアプリケーションに保存できます。

[監査メッセージの設定] ダイアログを表示するには

  • [センサ] メニューで、[監査メッセージの設定] をクリックします。

[監査メッセージの設定] ダイアログの設定項目

  • [監査メッセージを有効にする]: アクティブなビジョンシステムに対する自動監査メッセージを有効または無効にします。
  • [サーバアドレス]: 監査メッセージサーバの IP アドレスを指定します。
  • [サーバポート]: 監査メッセージサーバの TCP/IP ポートを指定します (デフォルト = 5753)。

注意: 有効なポート番号は、In-Sight 通信のために予約されているポートを除いて、1 ～ 65535 の未使用の任意の番号です。

  • [メッセージタイプ]: 監査メッセージの生成対象となるイベントのタイプを指定します。
    • [システムイベント]: In-Sight システムイベント (ビジョンシステムのログオンまたはログオフ、ジョブファイルのロードまたは保存、オンラインからオフラインモードへの移行、システムの起動、およびファームウェアのアップデート) が発生した場合に、監査メッセージが生成されます。特定のイベント（システムの起動、ジョブファイルのロードまたは保存、ログオンの失敗、およびファームウェアのアップデート）では、<value> タグ内にデータ情報が追記されます。

    注意: ログオンに失敗した場合、<value> タグ内に次の情報が表示されます。
    • Invalid Password: 入力したパスワードが無効です。
    • Invalid Username: 入力したユーザ名がユーザリストに存在しません。
    • System Locked: ビジョンシステムは、別のユーザによってロックされています。この情報は、通常、ファームウェアアップグレードが進行中の場合に表示されます。
    • Access Not Permitted For User: ユーザは、ビジョンシステムへのアクセス権限がありません。
    • Spreadsheet View Access Not Permitted: ユーザは、ビジョンシステムのスプレッドシートビューへのアクセス権限がありません。この情報は、通常、ユーザが EasyBuilder ビューのみのアクセス権限を持つ場合に表示されます。
    • Unspecified Failure: 不明な理由によって、ログオンの試みに失敗しました。
    • [タグ付きセル変更時]: In-Sight Explorer、カスタムアプリケーション、VisionView または PLC を使用して、シンボリックタグのついたセルが編集 (例えば、セルの式や対話型コントロールの値が変更) された場合に、監査メッセージが生成されます。
    • [システム設定変更時]: システム設定 (proc.set ファイルに保存されている設定) が変更された場合に、監査メッセージが生成されます。

関連項目

In-Sight 監査メッセージサーバデモ

シンボリックタグエディタ


[ラインスキャンの設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[ラインスキャンの設定] ダイアログ の概要

[ラインスキャンの設定] ダイアログ の表示

[ラインスキャンの設定] ダイアログ の設定項目

関連項目

[ラインスキャンの設定] ダイアログ の概要

[ラインスキャンの設定] ダイアログでは、In-Sight 5604 ラインスキャンビジョンシステムのハードウェアエンコーダを設定します。また、このビジョンシステムの特定の診断値を表示します。

注意: In-Sight 5604 ラインスキャンビジョンシステムに接続して、直交ハードウェアエンコーダを利用しているときに、ビジョンシステムが画像の取り込みを開始し、直交ハードウェアエンコーダが、反対方向に移動してフレームトリガの開始点を通過したという信号を出力した場合、取り込まれた画像は正常には生成されておらず、使用することはできません。このような状況が発生した場合は、直交ハードウェアエンコーダが方向を反転したという信号を出力したときに、ビジョンシステムをオフラインにします。次に、直交ハードウェアエンコーダが以前の方向に戻ったという信号を出力したときに、ビジョンシステムをオンラインに戻します。

[ラインスキャンの設定] ダイアログ の表示

  • [センサ] メニューから [ラインスキャンの設定] をクリックします。

[ラインスキャンの設定] ダイアログ の設定項目

  • [画像最大高]:ラインスキャンビジョンシステムにおいて、画像の生成に使用される最大行数 (デフォルト = 2048) を指定します。

    注意:
    • ラインスキャンビジョンシステムの [画像最大高] の設定を変更するには、ビジョンシステムを再起動する必要があります。その結果、ビジョンシステムでそのときに行われているジョブは消去されます。続行する前に、ジョブを保存するかバックアップしてください。
    • 起動時にビジョンシステムに割り当てられる画像バッファのデフォルト数は、ビジョンシステムの解像度と RAM サイズによって異なります。[画像最大高] の設定を調整すると、ビジョンシステムで利用可能な画像バッファの最大数が増加または減少します。必要に応じて、[画像バッファ] ダイアログを使用し、起動時にビジョンシステムに割り当てる画像バッファの数を変更してください。
    • 使用しているラインスキャンビジョンシステムの [画像最大高] が 8192 に設定されているときに、ビジョンツールの対象領域の幅を 3072 よりも大きい値に設定する必要がある場合は、数式バーから手動で領域値を入力するか、あるいはコントロール関数または構造体関数を別途作成して、ツールの内部 [領域] パラメータの代わりに参照する必要があります。

  • [ハードウェアエンコーダ]

    注意:　[エンコーダタイプ]、[方向]、または [画像最大高] を変更するには、次の条件を満たす必要があります。
    • AcquireImage プロパティシートの [ライントリガタイプ] パラメータを、[ハードウェアエンコーダ] に設定しておく必要があります。
    • In-Sight 5604 はオフラインになっている必要があります。
    • ユーザがフルアクセスのアクセス権を持っている必要があります。
    • [エンコーダタイプ]:　ラインをトリガするために使用されるエンコーダのタイプとして、[単位相] (デフォルト) または [直交] を指定します。

    • [方向]:　エンコーダの方向として、[プラス] (デフォルト) または [マイナス] を指定します。このコントロールは、[エンコーダタイプ] に [直交] が設定されている場合に有効になります。

      注意:　このコントロールは、[エンコーダタイプ] に [単位相] が設定されている場合には無効化されます。

  • [診断]

    注意:　[リセット] ボタンをクリックしたとき、またはビジョンシステムをオンラインまたはオフラインに切り替えたときには、すべての診断統計情報がリセットされます。

    • [エンコーダ数]:　エンコーダのステップ数 (ソフトウェアエンコーダの場合はミリ秒) を表示します。
    • [ライン数]:　カウンタが前回リセットされてから現在までに実行された画像取り込みライン数の合計を表示します。
    • [ラインオーバラップ数]:　エンコーダレートが大きすぎたために失われたラインの数を表示します。
    • [バッファオーバラン数]:　ビジョンシステムで画像バッファが不足した回数を表示します。
    • [フレーム/秒]:　1 秒あたりに取り込まれたフレームの数を表示します。
    • [ステップ/秒]:　AcquireImage 関数の [ライントリガタイプ] パラメータを [ハードウェアエンコーダ] に設定した場合は、1 秒間に外部エンコーダから受信するステップの数を表示します。AcquireImage 関数の [ライントリガタイプ] パラメータを [ソフトウェアエンコーダ] に設定した場合は、1 秒間のマイクロ秒数を表示します。

    • [リセット]:　このボタンは、すべての診断統計情報を 0 にリセットします。

      注意:　ビジョンシステムがオンラインまたはオフラインに切り替わったときにも常に、統計情報がリセットされます。

関連項目

ラインスキャンデータアクセス関数

LineScanDistortion 関数

TrainLineScanDistortion 関数


[スタートアップ] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[スタートアップ] ダイアログでは、デフォルトジョブやオンライン/オフライン状態など、ジョブに関連する In-Sight センサの起動方法を設定します。ユーザに関連する起動方法の設定パラメータは [オプション] ダイアログで指定します。

注意: 指定した起動ジョブが存在しなくても （例えば、ジョブが削除されていたりジョブの名前が変更されていたりしても） 警告は表示されません。この場合、起動ジョブは、< 新規 > 空白ジョブに戻されます。

[スタートアップ] ダイアログを表示するには

  • [センサ] メニューで、[スタートアップ] をクリックします。

[スタートアップ] ダイアログの設定項目

  • [オンライン]: このチェックボックスをオンにすると、アクティブな In-Sight センサはオンラインモードで起動します。
  • [ジョブ]: 起動時に自動的にロードするジョブを選択します。< 新規 > を選択すると、空白ジョブで起動します。

注意: 設定の変更を有効にするには、In-Sight センサを手動で再起動する必要があります。同様に、In-Sight エミュレータは、[オプション] ダイアログから一度無効にした後、有効にし直さないと、変更された起動設定が有効になりません。


[センサフィルムストリップの設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[センサフィルムストリップの設定] ダイアログでは、次の内容を含む、個々のセンサのフィルムストリップの動作を指定することができます。

  • センサに保存される結果の種類。
  • センサに保存される結果の数。
  • 結果の成功または失敗ステータスを決める要素。
  • 失敗結果が検出されたときのフィルムストリップの動作。

[センサフィルムストリップの設定] ダイアログ を表示するには

  • [センサ] メニューで、[センサフィルムストリップの設定] をクリックします。

[センサフィルムストリップの設定] ダイアログ の設定項目

注意:センサの電源を入れ直したり、[キュー]、[キューのサイズ]、または [キューの種類] 設定を変更したりすると、すべての結果が削除されます。

  • [キュー]: センサに保存される結果の種類。
    • [無効] (デフォルト): 結果は保存されません。
    • [成功結果]: 成功結果が保存されます。
    • [失敗結果]: 失敗結果が保存されます。
    • [成功/失敗結果]: 成功結果と失敗結果が保存されます。
  • [キューのサイズ]: センサに保存される結果の数。ビジョンシステムの解像度とセンサで使用できる RAM に応じて、最高 20 個の結果を保存できます。指定した [キューのサイズ] がセンサの使用可能 RAM を超えていた場合は、可能な最大数の結果が自動的にビジョンシステムに割り当てられます。
  • [キューのタイプ]: センサへの結果の保存方法を決めます。保存される結果の数は、[キューのサイズ] によって異なります。例えば、[キューのサイズ] が 10 であり、[キューのタイプ] として [最初のみ] を選択した場合は、最初の 10 個の結果だけが保存されます。[キューの種類] として [最後] を選択した場合は、最新の 10 個の結果だけが保存されます。
    • [最初のみ]: 最初の X 個の結果が保存されます。X は [キューのサイズ] です。
    • [最後] (デフォルト): 最新の X 個の結果が保存されます。X は [キューのサイズ] です。
  • [表示モード]: 監視セルの結果が失敗ステータスを受け取ったときのフィルムストリップの動作です。
    • [失敗時に停止]: 監視セルの結果が失敗ステータスを受け取った場合、結果はフィルムストリップに追加され、[再開] ボタンをクリックするまで、フィルムストリップは更新を停止します。
    • [失敗時に一時停止]: 監視セルの結果が失敗ステータスを受け取った場合、結果はフィルムストリップに追加され、指定した [一時停止ディレイ] の時間だけ、フィルムストリップは一時停止します。
    • [ノーマル] (デフォルト): フィルムストリップは、監視セルの結果に関係なく、更新を続行します。
  • [一時停止ディレイ]: [表示モード] として [失敗時に一時停止] を指定した場合、フィルムストリップはこの時間 (秒) だけ一時停止した後、更新を再開します (1 ～ 120、デフォルト 5)。
  • [キューイング条件]: 監視セルの値に基づいて、成功または失敗ステータスを決めます。

注意:　監視セルと成功/失敗条件は、ジョブファイルに保存されます。したがって、これらの設定を変更したときには、ジョブファイルを保存する必要があります。

  • [監視セル]:　監視対象のセルを示します。

    注意:　 In-Sight で類似の効果を持つ監視セルが 3 つあります ([ジョブの PASS/FAIL] セル、[フィルムストリップ] 監視セル および [記録/再生] の監視セル)。これらの 3 つの監視セルを個々に設定し、異なる機能を制御することができます。

  • [セルの選択]:　[セルの選択] をクリックすると、セル選択モードに切り替わり、結果が成功または失敗のいずれのステータスを受け取るかを決める監視セルを参照することができます。
    • [セル <= 0]: 画像取り込みの際、監視セルがゼロ以下の数値を含んでいる。
    • [セル = #ERR]: 画像取り込みの際、監視セルが #ERR を含んでいる。
    • [セル > 0]: 画像取り込みの際、監視セルがゼロより大きい数値を含んでいる。
  • [LED スタイル]: 成功結果および失敗結果をフィルムストリップにステータスアイコンとして表示します。
    • [幾何]: 成功結果は緑色の円　 [image] 　で、失敗結果は赤色の矩形　 [image] 　で表示されます。
    • [OK/NG]: 成功結果は緑色の OK [image] で、失敗結果は赤色の NG [image] で表示されます。
    • [チェック/X]: 成功結果は緑色のチェックマーク　 [image] 　で、失敗結果は赤色の X [image] で表示されます。
  • [オンラインモードへの切り替え時にクリアする]: これをオンにすると (デフォルト)、センサがオンラインになるたびにフィルムストリップがクリアされます。
  • [保存フォルダ]: フィルムストリップ画像の保存場所を指定します。ユーザは、指定した場所への書き込み権限を持っている必要があります。

関連項目

フィルムストリップ


[RAM ディスクの設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[RAM ディスクの設定] では、In-Sight センサまたはエミュレータのシステム RAM を利用して、ファイルシステムをエミュレートすることができます。[セルのエクスポート/インポート] や ExportData および ImportData 関数と RAM ディスクを組み合わせることによって、In-Sight センサと外部デバイス （PLC、ロボットコントローラなど） の間でデータを共有することができます。RAM ディスクを有効にして、そのサイズを設定すると、 Closed [In-Sight のファイル] ペイン と Closed [In-Sight ネットワーク] ペインに、センサまたはエミュレータのサブディレクトリとして RAMDisk フォルダが表示されます。

注意:
  • RAMDisk フォルダに保存できるのは、ジョブ （.JOB） ファイルとセルデータ （.CXD） ファイルだけです。
  • センサの電源を入れ直したり、RAM ディスクの設定を無効にすると、RAMDisk フォルダに保存されたファイルはすべて削除されます。

[RAM ディスクの設定] ダイアログを表示するには

  • [センサ] メニューで、[RAM ディスクの設定] をクリックします。

注意: センサまたはエミュレータが RAM ディスクをサポートしていない場合、[RAM ディスクの設定] メニュー項目はグレーアウトされます。この機能はファームウェアバージョン 3.20.00 以上でサポートされています。

[RAM ディスクの設定] ダイアログの設定項目

  • [有効]: このチェックボックスをオンにすると、RAM ディスクが有効になります。デフォルトでは RAM ディスクは有効になっていません。
  • [RAM ディスクのサイズ]: RAM ディスクに保存するデータの最大量をメガバイト単位で設定します。RAM ディスクは、使用済みメモリの合計を追跡して、その値と [サイズ] 設定の値を比較します。センサの場合、最大サイズは 32MB です。エミュレータの場合、最大設定は 64MB です。

センサまたはエミュレータの RAM ディスクにファイルを保存するには

.JOB ファイルの保存

.JOB ファイルをセンサまたはエミュレータの RAMDisk フォルダに保存するには、[名前を付けて保存] ダイアログを使用し、[保存する場所] ドロップダウンリストを使用して、ファイルの保存場所を目的のセンサまたはエミュレータの RAMDisk フォルダに設定します。または、.JOB ファイルを [In-Sight のファイル] ペインから目的のセンサまたはエミュレータの RAMDisk フォルダにドラッグアンドドロップすることもできます。または、[In-Sight のファイル] ペインで .JOB ファイルを右クリックして、ショートカットメニューを使用してコピーし、RAMDisk フォルダに貼り付けることもできます。

.CXD ファイルの保存

スプレッドシートの複数のセルを .CXD ファイルに保存して、そのファイルをセンサまたはエミュレータの RAMDisk フォルダにエクスポートするには、[セルのエクスポート] ダイアログを使用して、目的のセンサまたはエミュレータの RAMDisk フォルダを指定します。1 つのセルのデータを .CXD ファイルに保存して、そのファイルをセンサまたはエミュレータの RAMDisk フォルダにエクスポートするには、ExportData 関数を使用して、目的のセンサまたはエミュレータの RAMDisk フォルダを指定します。

注意:
  • ファイルに名前を付けるときには、円記号 （¥） を使用しないでください。名前に円記号が含まれているファイルは、ファイル名を変更して円記号をなくしてからでなければ、コピーや削除ができません。また、ファイル名に円記号が含まれていると、リストア操作の際にエラーが発生します。
  • RAMDisk フォルダでは、大文字と小文字が区別されません。ただし、RAMDisk フォルダの名前を変更することはできません。RAMDisk フォルダそのものをコピーすることはできませんが、フォルダ内の内容はコピーできます。

センサまたはエミュレータの RAM ディスク内のファイルにアクセスするには

.JOB ファイルを開く

センサまたはエミュレータの RAMDisk フォルダ内の .JOB ファイルを開くには、[ファイルを開く] ダイアログを使用して、[ファイルの場所] ドロップダウンリストを使用して、ファイルの場所を目的のセンサまたはエミュレータの RAMDisk フォルダに設定します。

.CXD ファイルを開く

センサまたはエミュレータの RAMDisk フォルダから .CXD ファイルを開くには、[セルのインポート] ダイアログ （複数のスプレッドシートセルを含んでいるファイルの場合） または ImportData 関数 （1 つのセルのデータを含んでいるファイルの場合） を使用して、目的のセンサまたはエミュレータの RAMDisk フォルダを指定します。

RAMDisk ファイルへのリモートアクセス

センサまたはエミュレータの RAMDisk フォルダ内のファイルにリモートからアクセスするときには、以下のファイル名プロトコルに従ってください。

  • In-Sight センサ: ramdisk/filename.type
  • Closed FTP コマンドプロンプトを使用して、センサに接続します。

注意:
  • FTP コマンドの CD（change directory）はサポートされません。
  • Web ブラウザから FTP を使用して RAMDisk フォルダにアクセスすることはできません。
  • ネイティブモード: [コマンド名]RAMDisk/filename.job。例えば、ネイティブモードコマンドの Read File を使用して Model.job ファイルを読み取るには、RFRAMDisk/Model.job コマンドを発行します。

注意: Get Filelist ネイティブモードコマンドを使用して RAMDisk フォルダからファイルリストを取得することはできません。RAMDisk フォルダのファイルリストを取得するには、FTP プロトコルを使用してください。


[アクティブセル制限] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[アクティブセル制限] ダイアログは、プログラマブルなスプレッドシートのセル数を設定するために使用します。このダイアログを使用すると、特定の In-Sight センサまたはビジョンシステムが使用できるジョブ内のセル数を増減できます。

[アクティブセル制限] ダイアログを表示するには

[センサ] メニューで [アクティブセル制限] を選択します。

[アクティブセル制限] ダイアログの設定項目

スライダコントロールを使用すると、スプレッドシートのプログラム可能なセルの数を設定できます。スライダを調整して、プログラム可能なセルの数を設定します。

In-Sight ビジョンシステムのアクティブセル制限を調整するには、ビジョンシステムを再起動する必要があります。再起動を行うと、すべてのジョブと設定ファイルが不揮発性フラッシュメモリから消去されます。続行する前にジョブを保存またはバックアップします。

注意: アクティブセル制限の更新中は、ビジョンシステムの電源は落とさないでください。

アクティブセル制限

 | 最小 | デフォルト | 最大
In-Sight ビジョンシステム | 2048 | 6144 | 10400

注意: In-Sight 5000 では [アクティブセル制限] ダイアログは無効になっています。最小および最大のアクティブセル制限は 4,096 で、変更できません。


[プロファイラ] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[プロファイラ] ダイアログには、数式またはデータを含むアクティブなジョブに関する、すべてのセルの依存関係と実行時間が表示されます。テキストまたは定数だけを含むセルは除外されます。

  • 概要
  • [プロファイラ] ダイアログの表示
  • [プロファイラ] ダイアログの列
  • [プロファイラ] ダイアログの設定項目

概要

依存関係と実行時間の情報は、スプレッドシートのパフォーマンスを上げる際に最も有用です。なぜなら、実行に最も時間のかかる関数を簡単に探し出し、最適化することができるからです。[プロファイラ] ダイアログは、In-Sight ジョブでエラー (#ERR) の原因となっている数式や関数を調べる際にも有効です。

注意:
  • 同じジョブを異なる In-Sight ビジョンシステムモデルや In-Sight エミュレータで実行した場合、実行時間は各システムの処理能力と画像解像度によって異なります。
  • [プロファイラ] ダイアログは、オンラインモード時や、現在のユーザがプロテクトまたはロックのアクセスレベルでログオンしている場合にはアクセスできません。
  • [プロファイラ] ダイアログでは、ネットワークまたはシリアル通信、ディスクリート入出力、ビジョンシステムのオンボード画像取り込みトリガなど、イベントで駆動される操作のタイミングデータは表示されません。
  • [プロファイラ] ダイアログで計算される時間は、ステータスバーおよび GetAllTime 関数で計算される時間とは異なります。ステータスバーおよび GetAllTime 関数では結果のグラフィックスの生成が考慮されないのに対し、[プロファイラ] ダイアログではこれも考慮されます。

[プロファイラ] ダイアログの表示

  • ビジョンシステムメニューで、[ジョブのプロファイル] をクリックします。

[プロファイラ] ダイアログの列

ヒント:
  • [プロファイラ] のデータは、列見出しをクリックすることによってソートできます。また、2 つの列の間の区切り線をドラッグすることによって、列のサイズを変更できます。
  • [プロファイラ] ダイアログ内のセルをハイライトすると、スプレッドシート内のセルが検索されます。
  • [順序]: セルはスプレッドシートでの実行順にリストされます。ただし、[依存関係] チェックボックスがオンの場合を除きます。[依存関係] チェックボックスがオンのときには、セルは選択したセルに対して相対的な依存関係の順にリストされます。
  • [セル]: 実行プロファイルに含まれるセルをリストします。この表には、[構造体のみ] チェックボックスがオンの場合を除き、使用されているセルすべてが表示されます。デフォルトで、セルはスプレッドシートでの実行順にリストされます。
  • [結果]: 各セルに含まれている現在の値を示します。構造体を含んでいるセルは、実行が成功の場合は Pass を示し、失敗の場合は #ERR を示します。
  • [時間]:各セルの数式の実行時間 (ミリ秒単位) を示します。
  • [状態]: 各セルのセル状態を示します。[状態] 列に「X」と表示される場合、対応するセル状態は「有効」です。「-」と表示される場合、対応するセル状態は「無効」です。
  • [式]: 各セルに含まれている数式を示します。

ヒント:式が長すぎて、デフォルトのダイアログサイズではすべてを表示できない場合は、数式全体が表示されるように、ダイアログのサイズを変更してください。

[プロファイラ] ダイアログの設定項目

  • [画像取り込み]: 新しい画像を取り込み、ジョブを実行して、[プロファイラ] の表を更新します。このボタンを押すと、時間が画像取り込み時間、ジョブ実行時間、結果のグラフィックスの生成時間に等しくなります。
  • [実行開始位置]: このボタンは、新しい画像を取り込まず (AcquireImage 関数の実行時間も更新せず)、ハイライトされているセルとそれらの依存関係だけを実行します。ほかのどのセルも実行されず、その結果も示されません。

注意:　[実行開始位置] ボタンを押したとき、以前に画像が取り込まれていた場合は、表には以前の画像取り込み時間がそのまま表示されていますが、この時間はジョブ時間の計算には含められません。

  • [構造体のみ]: このチェックボックスをオンにすると、[プロファイラ] ダイアログの表示が、データ構造体を含んでいるセルのみに限定されます。
  • [依存関係]: このチェックボックスをオンにすると、選択したセルに相対的な依存関係の順にセルがリストされ、リスト内の各セルの依存関係インジケータが表示されます。選択したセルは、 [image] 　印の付いたすべてのセルに依存しています。 　印の付いたセルは、選択したセルに直接依存しています。二重矢印は間接依存を示します。
  • [総合時間]: [画像取り込み] ボタンを押して [プロファイラ] ダイアログを更新した場合、[総合時間] には、画像取り込みの時間も含めて、リスト内のすべてのセルの実行時間の合計が表示されます。[実行開始位置] ボタンを押した場合、[総合時間] には、ハイライトしたセルとその依存関係のそれぞれの合計実行時間が表示されます。
  • [利用可能セル数]: スプレッドシートで現在編集できるセルの数を示します。
  • [リストとしてコピー]: [プロファイラ] ダイアログの内容をクリップボードにコピーして、Microsoft Word または Excel に貼り付けることができます。

注意:　メモリを大量に消費する関数がジョブファイルに含まれていた場合、[利用可能セル数] の合計数を使用する前に、ビジョンシステムがメモリ不足になることがあります。


[ジョブの PASS/FAIL セルの設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[ジョブの PASS/FAIL セルの設定] ダイアログでは、数値の結果を含むセルをモニタし、ジョブ全体の成功/失敗ステータスを判定できます。ジョブのステータスは、センサからの出力として、Cognex VisionView などそのほかのアプリケーションへ送信することができます。

注意:
  • [ジョブの PASS/FAIL セルの設定] ダイアログを使用できるのは、admin レベルのユーザだけです。

  • In-Sight で類似の効果を持つ監視セルが 3 つあります ([ジョブの PASS/FAIL] セル、[フィルムストリップ] 監視セル および [記録/再生] の監視セル)。これらの 3 つの監視セルを個々に設定し、異なる機能を制御することができます。

  • デフォルトでは、EasyBuilder ビューに表示されるすべての EasyBuilder ジョブが、同じジョブの PASS/FAIL セルを参照します。このセル参照が [ジョブの PASS/FAIL セルの設定] ダイアログで変更された場合でも、EasyBuilder ビューでジョブが再表示されると、参照先はデフォルトのセルに戻ります。

ジョブの PASS/FAIL セルを設定するには

  1. [ジョブの PASS/FAIL セルの設定] ダイアログを表示するには、[センサ] メニューの [ジョブの PASS/FAIL] をクリックします (または、セルを右クリックし、[ジョブの PASS/FAIL] をクリックします)。
  2. [ジョブの PASS/FAIL セルを使用する] チェックボックスをオンにし、ダイアログ内のほかのコントロールにアクセスできるようにします。

  3. [セルの選択] をクリックし、[ジョブの PASS/FAIL セルの設定] ダイアログをセル選択モードに切り替えます。
  4. スプレッドシート内の対象のセルを選択し、Enter キーを押してセルの選択を確定します。[ジョブの PASS/FAIL セルの設定] ダイアログが再表示され、[ジョブの PASS/FAIL セル] フィールドに選択したセル参照が示されます (セルをダブルクリックするか、または [ジョブの編集] ツールバーの [OK]　 [image] ボタンをクリックすることでもセルの選択を確定できます)。
  5. [ジョブのステータス] ドロップダウンリストで、ジョブの成功/失敗の数値結果をジョブの成功/失敗ステータスにマップする方法を定義します。ステータスのオプションには、[なし]、[PASS]、[FAIL]、または [警告] があります。
    • [セル値 < 0]: 選択したセルに、ゼロより小さい数値が含まれています。(デフォルト = FAIL)
    • [セル値 = 0]: 選択したセルに、数値ゼロが含まれています。(デフォルト = FAIL)
    • [セル値 > 0]: 選択したセルに、ゼロより大きい数値が含まれています。(デフォルト = PASS)

    6. 注意:次の場合は、ジョブステータスが自動的に割り当てられます。
    • セルに、#ERR 以外の数値ではない結果が含まれている (例: 文字列): PASS
    • セルが空である: なし
    • セルに #ERR が含まれている: FAIL
    • セルが選択されていない: なし

  6. [OK] をクリックします。


ビジョンツール

In-Sight 関数リファレンス

In-Sight のビジョンツールでは、データ解析および合否判定を行うために画像の特徴を抽出して処理します。ビジョンツールは、[関数の挿入] ダイアログ、またはパレットの関数を使用して、スプレッドシートに挿入されます。ビジョンツールは次のカテゴリに分かれています。

  • ブロブ関数:画像領域からブロブデータを抽出、選択して、ソートします。このタイプの画像処理は連結性解析とも呼ばれます。
  • カラー関数: 色データを抽出し、検出した色を登録したモデルに対して照合します。
  • エッジ関数:直線エッジおよびカーブエッジを検出します。エッジをソートしてペアにします。エッジ統計情報を計算します。
  • 傷検出: パーツまたは検査対象物の問題となる変差を解析する、高度な検査を実行します。
  • ヒストグラム関数:統計的画像解析、および特徴分類を行うために、画像ピクセルをカウントします。
  • ID 関数:1D バーコード、および 2D マトリックスコードの読み取りや検証を行います。
  • 画像関数:画像の余計な特徴を削除または弱めることで、画像の必要な特徴を強調します。
  • InspectEdge: 欠損を検出するために、高度なエッジ解析を実行します。
  • 文字照合/認識関数:画像の文字列の認識 (OCR含む) および照合 (OCV含む) のために、フォントを分割し、抽出し、登録します。
  • パターンマッチング関数:あらかじめ定義されたパターンに最も類似している画像の特徴を検出します。


プロパティシート

ユーザインタフェース

In-Sight Explorer GUI リファレンス

プロパティシートについて

プロパティシートを表示するには

プロパティシートからセルグラフィックスを編集するには

セルグラフィックスの領域を最大化するには

プロパティシートに関数を挿入するには

プロパティシートからセル参照を挿入するには

プロパティシートのショートカット

プロパティシートについて

プロパティシートは、関数が構造体を返すとき、または関数に多くの入力パラメータがあるときに、In-Sight Explorer の関数を設定するために使用します。

注意:　可変数のパラメータを受け入れる関数 (オペレータ I/F 関数の ListBox、Select、Wizard など) には、プロパティシートはありません。これらの関数は、セルで直接設定するか、[ジョブの編集] ツールバーの数式バーで設定します。プロパティシートがあるのは、固定数のパラメータを持つ関数だけです。

すべてのプロパティシートには、関数のデフォルトのパラメータ、値、および式を示す表が表示されます。プロパティシートの各行は、パラメータの名前と値、または展開/折り畳み可能なパラメータと値のグループで構成され、展開と折り畳みは [image] / [image] 記号で示されます。

ヒント:　プロパティシートのパラメータは、設定項目をドラッグ & ドロップして、スプレッドシートに配置することができます。プロパティシートからパラメータを選択してから、それをスプレッドシートにドラッグすることによって、パラメータのラベルとエディットコントロールが自動的に作成され、スプレッドシートで参照できるようになります。例えば、ExtractBlobs 関数のプロパティシートが開いている場合に、[しきい値] パラメータをスプレッドシートのセル A2 にドラッグ & ドロップすると、セル A2 にテキスト「しきい値」が入力され、セル A3 に EditInt 関数が入力されます。この場合、ExtractBlobs 関数のプロパティシートにある [しきい値] パラメータが、自動的にセル A3 への絶対参照として設定されます。

パラメータの値は、以下の方法で割り当てることができます。

  • セル参照:　値は、スプレッドシート内のセルへの絶対参照または相対参照のいずれかによって決まります。

注意:　Windows Vista で In-Sight Explorer を実行している際に、パラメータ値をダブルクリックして Esc キーを押すと、そのパラメータがテキストとしてオペレーティングシステムのクリップボードにコピーされ、以前にコピーされたテキストを上書きします。Windows Vista でプロパティシートを編集する場合は、パラメータをダブルクリックするのではなく、プロパティシートのメニューまたはツールバーボタンを使用してパラメータを編集することを推奨します。

  • 座標:　値は、対話型グラフィックスモードに切り替えることによって、または座標の数値を手動で入力することによって決まります。
  • 数値:　 　ボタンをクリックすることによって値を増減したり、目的の数値を手動で入力したりすることができます。
  • テキスト:　値は英数字によって表されます。
  • チェックボックス: チェックボックスがオフのときには 0 の値が割り当てられ、チェックボックスがオンのときには 1 の値が割り当てられます。
  • ドロップダウンリスト:　値は、リスト内の選択項目から選択されます。値は、リストから選択された項目のインデックス番号 (ゼロから始まります) に設定されます。

注意:　プロパティシートのパラメータは、操作手順の状況によって異なります。したがって、メニューバーとツールバーは、選択したパラメータが特定の編集または挿入操作をサポートしている場合のみ有効になります。

プロパティシートを表示するには

[関数の挿入] ダイアログを使用して、スプレッドシートのセルに関数を挿入します。関数にプロパティシートがある場合には、プロパティシートが自動的に開きます。

各プロパティシートは、以下のもので構成されています。

  • センサ、ダイアログ、および関数の名前を示すタイトルバー
  • メニューバー
  • ツールバー
  • パラメータ設定領域
  • 状況依存ヘルプ

注意:　テキストが赤色でハイライトされている場合は、値にエラーがあり、エラーを修正しないと確定できません。別のパラメータまたは [OK] ボタンを選択すると、エラー部分はそれ以前に指定されていた有効な値に戻ります。

プロパティシートでセルグラフィックスを編集するには

  1. セルグラフィックスが関連付けられているパラメータをクリックします。
  2. プロパティシートの [編集] メニューの [グラフィックス] をクリックします。または、プロパティシートのツールバーにある [グラフィックスの編集] [image] ボタンをクリックするか、セルグラフィックスが関連付けられているパラメータ名をダブルクリックします。プロパティシートが消えて、画像の上に対話型グラフィックスが表示されます。

注意:　選択したパラメータにセルグラフィックスが関連付けられていない場合、[グラフィックスの編集] メニューおよびツールバーボタンは、グレーアウトされます。

  3. 変更を確定するには、[ジョブの編集] ツールバーの [OK] ボタンをクリックするか、Enter キーを押すか、セルグラフィックス内をダブルクリックします。変更をキャンセルするには、[ジョブの編集] ツールバーの　[キャンセル] ボタンをクリックするか、Esc キーを押します。

セルグラフィックスの領域を最大化するには

  1. セルグラフィックスが関連付けられているパラメータをクリックします。
  2. プロパティシートの [編集] メニューの [領域の最大化] をクリックします。または、プロパティシートのツールバーにある [領域の最大化]　 [image] ボタンをクリックします。領域のセルグラフィックスのサイズが、参照される　 [image] 　データ構造体の画像領域と同じサイズに変更されます。セル A0 は、デフォルトの画像ソースです。

注意:　選択したパラメータにセルグラフィックスが関連付けられていない場合、[領域の最大化] メニューおよびツールバーボタンは、グレーアウトされます。

  3. 変更を確定するには、[OK] ボタンをクリックします。変更をキャンセルするには、[キャンセル] ボタンをクリックします。

Closed 例

  1. スプレッドシートに FindPatterns 関数を挿入します。FindPatterns のプロパティシートが自動的に開きます。[画像] パラメータの値は $A$0 であり、デフォルトの画像ソースであるセル A0 を参照しています。
  2. [サーチ領域] パラメータをハイライトします。

  3. プロパティシートの [編集] メニューの [領域の最大化] をクリックします。領域のセルグラフィックスのサイズが、参照される　 [image] 　データ構造体 (セル A0) の画像領域と同じサイズに変更されます。
  4. [モデル領域] パラメータをハイライトします。
  5. プロパティシートの [編集] メニューの [領域の最大化] をクリックします。領域のセルグラフィックスのサイズが、[サーチ領域] パラメータと同じサイズに変更されます。

プロパティシートに関数を挿入するには

プロパティシートのパラメータに関数を挿入することによって、動的引数を作成することができます。例えば、FindPatterns 関数を使用していて、変動する偏差のセットに基づいて、画像取り込みの際に [アクセプトしきい値] パラメータを動的に変更する必要がある場合には、数値演算関数をパラメータに挿入して、偏差に応じて計算することができます。パラメータに関数を追加することによって (スプレッドシート内で個別の関数を作成し、同じ数式を作成して、それらのセルを参照するのではなく)、時間とスプレッドシートの計算スペースを節約することができます。

注意:　数式の最大長は 248 文字です。248 文字を超える長さの数式を入力すると、プロパティシートを閉じて変更をキャンセルするまで、In-Sight Explorer が応答しなくなる場合があります。変更はすべて失われ、更新した数式は受け付けられません。

  1. 関数を挿入したいパラメータをクリックします。

注意:　折り畳まれているグループに関数を挿入することはできません。プラスボタンを押して、グループを展開しておく必要があります。次に、個々のサブパラメータを選択します。

  2. プロパティシートの [挿入] メニューの [関数] をクリックします。または、プロパティシートのツールバーにある [関数の挿入]　 [image] ボタンをクリックします。

注意:　選択したパラメータが関数をサポートしていない場合、[関数の挿入] メニューおよびツールバーボタンは、グレーアウトされます。

  3. パラメータの値が編集可能な式に変わります。

  4. 手動で関数の名前を入力して、その後ろに左括弧とパラメータデータを入力するか、キーボードの ↑/↓ キーを押して、関数ボックスを開きます。関数ボックスには、適用可能な関数のリストが表示されます。

注意: 関数の名前を手動で入力したとき、テキストが赤色でハイライトされた場合は、修正しないと確定できないエラーが数式に含まれています。

関数を見つけるには、関数の名前を入力するか、関数のリストをスクロールします。挿入したい関数が見つかったら、Tab キーを押すか、関数をダブルクリックします。パラメータに数値または数式がある場合、→ キーを押すと、関数ボックスに関係演算子のリストが表示されます。

注意:　← キーを押すと、関数ボックスは関数選択モードに戻ります。

  5. 関数を作成したら、Tab キーを押して関数を確定し、次のパラメータに移動します。

  6. Enter キーを押すと、自動的に関数が確定されて、プロパティシートは閉じます。Esc キーを押すと、確定せずにプロパティシートを閉じます。

プロパティシートからセル参照を挿入するには

  1. セル参照を挿入したいパラメータをクリックします。
  2. プロパティシートの [挿入] メニューから、[絶対参照] または [相対参照] をクリックします。または、プロパティシートのツールバーにある [絶対参照の挿入] [image] ボタンまたは [相対参照の挿入] [image] ボタンをクリックします。プロパティシートが消えて、セル選択モードになります。

ヒント:　パラメータの種類によっては、パラメータをダブルクリックしてセル選択モードに切り替えることもできます。

  3. プロパティシートのパラメータの値を含むセルを選択します。
ヒント:
  • 複数セル参照は、複数の値を持つパラメータ (フィクスチャや領域など) を定義する際に有効です。
  • パラメータにセル参照が設定されると、スプレッドシートでハイライトされます。このとき、プロパティシートを閉じずにマウスでセル参照先を移動することができます。
  • パラメータに手動で関数を入力する場合 (可能な場合)、相対セル参照カーソル [image] (Shift キーを押すと、絶対セル参照カーソル　 [image] 　に変わります) を使用してスプレッドシートのセルをクリックすると、セル参照を挿入することができます。
  4. セル参照を確定するには、[ジョブの編集] ツールバーの [OK] ボタンをクリックするか、Enter キーを押すか、セルをダブルクリックします。セル参照をキャンセルするには、[ジョブの編集] ツールバーの [キャンセル] ボタンをクリックするか、Esc キーを押します。
  5. プロパティシートの値をすべて変更した後、[OK] をクリックすると変更が適用されます。[キャンセル] を押すと、すべての変更が元に戻されて、スプレッドシートに戻ります。

プロパティシートのショートカット

[プロパティシートのショートカット]

操作 | キーボード | マウス
プロパティシートを開く | 1. 矢印キーで目的のセルに移動します。 2. Enter または Shift+F3 キーを押します。 | スプレッドシート内の関数をダブルクリックします。 または、[ジョブの編集] ツールバーで、[式] [image] ボタンをクリックします。
変更を確定する | 1. Tab キーを押して、フォーカスを [OK] ボタンまで移動させます。 2. Enter キーを押します。 | [OK] をクリックします。
変更をキャンセルする | Esc キー | [キャンセル] をクリックします。
パラメータの間を移動 | ↑/↓ キー Tab/Shift+Tab キー | 移動先のパラメータをクリックします。
パラメータの値を変更 | ↑/↓ キーを使用して、数を増減させることができます。 注意: テキスト文字列パラメータには引用符が自動的に追加されます。 | 必要に応じて、パラメータのエディットコントロール ( [image] など) を使用して値を調整します。
パラメータの最大値を設定する | Ctrl+↑ キー | なし
パラメータの最小値を設定する | Ctrl+↓ キー | なし
関数を挿入する | Ctrl+Shift+F キー | プロパティシートのツールバーにある [関数の挿入] [image] ボタンをクリックします。
絶対セル参照を挿入 | Ctrl+Shift+A キー | プロパティシートのツールバーにある [絶対参照の挿入] [image] ボタンをクリックします。
相対セル参照を挿入 | Ctrl+Shift+R キー | 相対セルを挿入するパラメータの数値または式が入力されているセルをダブルクリックします。 または プロパティシートのツールバーにある [相対参照の挿入] [image] ボタンをクリックします。
プロパティグループを展開 | プラス (テンキーの +) キー | プラス記号 [image] をクリックするか、関数をダブルクリックします。
プロパティグループを折り畳む | マイナス (テンキーの -) キー | マイナス記号 [image] をクリックします。
ドロップダウンリストを展開 | Alt+↓ キー | ドロップダウンリストの [image] コントロールをクリックします。
ドロップダウンリストを折り畳む | Alt+↑ キー | ドロップダウンリストの [image] コントロールをクリックします。
ドロップダウンリストの項目を移動 | ↑ キー ↓ キー | 目的の値を選択します。
対話型グラフィックスを編集 | F9 キー | プロパティシートのツールバーにある [セルグラフィックスの編集] [image] ボタンをクリックします。
セルグラフィックスの領域を最大化する | Ctrl+Shift+M キー | プロパティシートのツールバーにある [領域の最大化] [image] ボタンをクリックします。
1 プロパティシートがない関数の場合は、代わりに [関数の挿入] ダイアログが開きます。 2 特定の関数 (コントロールなど) は、セルで Enter キーを押したときに特別な操作が行われます。これらの関数については、Shift+F3 キーを押してプロパティシートを開いてください。

関連項目

[関数の挿入] ダイアログ

セル参照

対話型グラフィックスモード


AcquireImage 関数

In-Sight 関数リファレンス

デジタル画像を取り込み In-Sight ビジョンシステムのメモリに転送するための、In-Sight ビジョンシステムのパラメータを指定します。

  • 画像取り込みについて
  • AcquireImage 関数 関数の入力パラメータ
  • AcquireImage 関数 関数の結果出力

画像取り込みについて

In-Sight ビジョンシステムは、非同期リセットとプログレッシブスキャンを使用してすべての画像を取り込みます。グレースケールの In-Sight ビジョンシステムは 8 ビットの画像を生成し、カラーの In-Sight ビジョンシステムは 24 ビットの画像を生成します。すべてのセンサで約 250µs 以内に画像取り込みが開始され、次のように進行します。

  • 画像センサ (CCD または CMOS) は、[露光時間] パラメータで設定された時間の間、光を蓄積します。
  • 画像センサに蓄積された画像は行単位でシリアルシフトレジスタに転送されます。

  • すべての行転送に対し、センサはピクセルごとに画像センサ外部でシフトレジスタをクロッキングして、次の経路を通じてピクセル値を転送します。

    ビデオ増幅器 → ゲインおよびオフセット → A/D コンバータ → In-Sight センサのメモリ

  • 転送は取り込み開始行から開始され、指定された行数が処理されます。

取り込まれた画像を含むメモリバッファは、スプレッドシート内で　 [image] データ構造体として表されます。AcquireImage 関数によって返される [image] データ構造体は、画像領域を処理するスプレッドシートのほかの関数によって順番に参照されます。取り込まれた画像データに直接あるいは間接的に依存する関数はすべて、新しい画像が取り込まれるたびに更新されます。入力画像とスプレッドシート内のほかの関数との関係が、In-Sight ビジョンシステムで実行される画像処理タスクを決定します。

依存関係およびセルの実行順序の詳細について

注意:
  • スプレッドシート内のほかの関数と異なり、AcquireImage 関数はセル A0 内に常駐しているため、スプレッドシートから切り取ったり、コピーしたり、クリアしたりすることはできません。この制限によって、画像が必ずあらかじめ定義された位置にあることが保証されます。これを利用して、ほとんどのビジョンツール関数や、ほかの多くの関数では、デフォルトの画像ソースとしてセル A0 を絶対参照するように指定しています。
  • [キャンセル] ボタンを使用して AcquireImage プロパティシートを閉じると、予期しない結果になる場合があります。現在、In-Sight 5000 シリーズビジョンシステムで画像が表示され、AcquireImage プロパティシートが開かれており、[キャンセル] ボタンをクリックしてプロパティシートを閉じると、表示されている画像またはプロパティシートは開かれる前のステータスに復元されません。AcquireImage プロパティシートを開くと、ビジョンシステムは、[キャンセル] ボタンを使用してプロパティシートを閉じたかどうかに関係なく新たに取り込んだ画像を表示します。新しい画像とプロパティシートへの変更は、表示された画像とプロパティシートの両方で保持されます。現在表示されている画像が必要な場合は、画像を保存してから AcquireImage プロパティシートを開き、その後、画像を再ロードします。
  • In-Sight エミュレータに接続しており、部分取り込みパラメータ ([取り込み開始行] および [行数]) が有効な状態で画像を取り込んだ In-Sight ビジョンシステムからの画像を表示する場合は、エミュレータの [取り込み開始行] および [行数] パラメータを、画像を取り込んだ In-Sight ビジョンシステムのパラメータ値と同じ値に設定します。
  • カラーの In-Sight ビジョンシステムを使用している場合、ホワイトバランスが、照明条件の変化に合わせて色を補正するための手段として多く使用されます。AcquireImage 関数のプロパティシートを開く前に白いフィールド画像 (白紙の断片など) を取り込む必要があります。画像が飽和状態 (すべてのピクセル値が 255) に近づかないようにレンズの絞りを調整する必要があります。[ホワイトバランス] ボタンを押すことは、スプレッドシートの WhiteBalance 関数を実行することと同じです。

AcquireImage 関数関数の入力パラメータ

AcquireImage 関数 (

トリガ,

手動,

露光時間,

自動露光.モード,

自動露光.最大露光時間,

自動露光.目標輝度,

自動露光領域.X,

自動露光領域.Y,

自動露光領域.高さ,

自動露光領域.幅,

取り込み開始行,

行数,

ライン数,

照明制御.モード,

照明制御.照明 0,

照明制御.照明 1,

照明制御.未使用,

照明制御.未使用,

ゲイン,

オフセット,

画像の回転,

ネットワークトリガ.マスタ,

ネットワークトリガ.マスタ名,

ネットワークトリガ.マスタデータ,

バッファモード,

遅延,

フォーカスメトリクス領域.X,

フォーカスメトリクス領域.Y,

フォーカスメトリクス領域.高さ,

フォーカスメトリクス領域.角度,

フォーカスメトリクス領域.カーブ,

ホワイトバランス領域.X,

ホワイトバランス領域.Y,

ホワイトバランス領域.高さ,

ホワイトバランス領域.幅,

ラインスキャン.ライントリガタイプ,

ラインスキャン.ライン間隔/ラインごとのステップ数,

ラインスキャン.エンコーダ画像取り込み時のタイムアウト,

ラインスキャン.クリップモード,

トリガデバウンス

)

トリガ

In-Sight ビジョンシステムがオンライン時の画像取り込みトリガのソースを指定します。

注意:　センサがオンラインの間、[トリガ] パラメータの値を変更しないでください。変更すると、センサが予期しない状態になることがあります。

0 = カメラ (デフォルト)

ビジョンシステムの専用取り込みトリガ入力において検出される立ち上がりエッジで画像取り込みを有効にします。

1 = 連続

「フリーランニング」による画像取り込み (可能な限り高速) を有効にします。

2 = 外部トリガ

シリアルコマンド ([DeviceNet モードの詳細設定] ダイアログで [第一バイトでトリガをかける] が ON になっている場合)、または画像取り込みトリガとして設定されているディスクリート入力ラインが立ち上がりエッジになったときの、いずれかでの画像取り込みを有効にします。

注意:
  • トリガレートを上げるには、画像取り込みトリガとして構成された汎用入力ラインを使ってビジョンシステムをトリガ (AcquireImage 関数の [トリガ] パラメータを [外部] に設定) するのではなく、ビジョンシステムに組み込まれている取り込みトリガ入力を使用 (AcquireImage 関数の [トリガ] パラメータを [カメラ] に設定) します。
  • AcquireImage 関数の [トリガ] パラメータが [外部] に設定されているときに、取り込みに失敗した場合、[エラー: 画像取り込みミス] 出力はビジョンシステムから送信されません。[エラー: 画像取り込みミス] 信号は、AcquireImage 関数の [トリガ] パラメータが [カメラ] に設定されている場合のみサポートされます。

5 = タイムスタンプ

タイムスタンプトリガが EtherNet/IP 経由で PLC からビジョンシステムに送信されたときに、画像取り込みを有効にします。

注意:
  • [タイムスタンプ] オプションは、128MB の不揮発性フラッシュメモリ付き In-Sight 5000 シリーズビジョンシステムで、バージョン 4.5.0 以降のファームウェアが実行されている場合のみ使用できます。In-Sight 5605 ビジョンシステム、ハードウェアタイプ 821-0032-1R は例外で、CIP-Sync をサポートしていません。In-Sight 5605 ビジョンシステム、ハードウェアタイプ 821-0032-2R は CIP-Sync をサポートしています。
  • このビジョンシステムでタイムスタンプの画像取り込みトリガを選択するには、[日付/時刻の設定] ダイアログの [時刻同期を使用する] オプションを有効にしておく必要があります。
  • ビジョンシステムが受け取ったタイムスタンプトリガが期限切れの場合、または 1 時間以上先である場合、TimeTriggerFault が設定され、Eip.TimestampTriggerFaults カウントが増分されます。
  • 既にほかの取り込みが進行中のために、計画されていた取り込みが実行できなかった場合、ビジョンシステムから Missed Acquisition 信号が送信されます。
  • SetSystemConfig("Eip.TriggerTimestampInputOffset",0) コマンドを使用して、このオフセットを EtherNet/IP 入力アセンブリに設定することができます。
6 = リアルタイムイーサネット POWERLINK などのリアルタイム Ethernet プロトコルから開始されたトリガによる画像取り込みを有効にします。

32 = 手動

F5 キーが押されたときに、画像取り込みを有効にします。F5 キーを使用して手動で画像を取り込むには、スプレッドシートにフォーカスがある必要があります。

99 = ネットワーク

ネットワーク上の特定の In-Sight "マスタ" システムがトリガされたときに、画像取り込みを有効にします。[マスター] チェックボックスを OFF にし、有効なマスタ名を指定する必要があります。

手動

In-Sight センサがオフラインのときに、手動による画像取り込みトリガを有効にします。

0 = OFF | センサがオフラインのときに、画像取り込みの開始を無効にします。[手動] が OFF に設定され、センサがオフラインの場合は、画像取り込みはいかなる方法でも実行できません。
1 = ON (デフォルト) | アクティブなセンサがオフライン時の画像取り込みの開始を有効にします。[手動] が ON のときに、センサがオフラインの場合は、F5 キーを押すか、([ジョブの表示] ツールバーの) [トリガ] [image] ボタンを押すと、画像取り込みが開始されます。

露光時間

露光時間をミリ秒単位で指定します。センサがトリガ信号を受信すると、指定された露光時間の間、画像センサ (CCD または CMOS) アレイに光が蓄積されます。モーションを停止するには露光時間が短い方が好都合ですが、十分な画像濃度を実現するために、レンズの絞りを開放したり、増幅器のゲインを上げたりする必要があります。

注意:
  • [自動露光] が ON のとき、[露光時間] の設定は無効になります。
  • 露光時間は、指定したセンサ用の適切な値の近似値となる 64µs の倍数で切り捨てられます。
  • In-Sight 5604 ラインスキャンビジョンシステムに接続されている場合、露光時間はマイクロ秒 (µs) 単位で設定されます。
  • このパラメータが技術的に 0 に設定されている場合、露光時間は In-Sight ビジョンシステムに依存します。露光時間の値が 0 の場合は、デフォルトで、選択したビジョンシステムの最小露光時間 (ミリ秒またはマイクロ秒単位) となります。

  • 露光時間を計算するとき、画像取り込みフレームレートおよびジョブ実行変数によっては、照明の予熱時間を考慮するために若干の時間を露光時間に追加する必要があります。内部 LED リング照明を使用する In-Sight 7000 シリーズのビジョンシステムでは、露光時間に 0.4 ～ 0.5 ミリ秒を追加する必要が生じることがあります。外部光源を使用する In-Sight Micro、In-Sight 5000 および In-Sight 7000 シリーズのビジョンシステム用 LED ライトの予熱時間の詳細については、照明の製造元のユーザマニュアルを参照してください。

さまざまな In-Sight ビジョンシステムモデルの露光時間を、次の表に示します。

In-Sight モデル | 露光時間 (ミリ秒)
In-Sight 5100、5110、5100C、5400、5410、5400C、5600、および 5610 (640 × 480 CCD) | 0.016 ～ 1000
In-Sight 5401 および 5411 (1024 × 768 CCD) | 0.032 ～ 1000
In-Sight 5403、5413、5603、および 5613 (1600 × 1200 CCD) | 0.027 ～ 1000
In-Sight 5604 および 5614 ラインスキャン (1024 × 1 CCD) | 1.33 ～ 1000 µs
In-Sight 5605 および 5615 (2448 × 2048 CCD) | 0.0288 ～ 1000
In-Sight 7010、7010C、7020、7050、7200、7210、7230、7200C、7400、7410、7430、7400C (800 × 600 CMOS) | 0.016 ～ 950
In-Sight 7402、7412、7432、7402C (1280 × 1024 CMOS) | 0.016 ～ 950
In-Sight Micro 1020、1050、1100、1110、1100C、1400、1410、1400C (640 × 480 CCD) | 0.016 ～ 1000
In-Sight Micro 1402 および 1412 (1280 × 1024 CMOS) | 0.016 ～ 950
In-Sight Micro 1403、1413、および 1403C (1600 × 1200 CCD) | 0.052 ～ 1000

自動露光

露光時間が自動的に決定されるかどうかを指定します。これをオンにすると、露光時間はさまざまな照明状態を補正するように自動調整されます。

注意:　In-Sight ビジョンシステムがこの機能をサポートしていない場合、[自動露光] パラメータは無効になります。

モード

自動露光をどのように決定するかを指定します。

0 = 無効

[自動露光] オプションは無効になります。

1 = 連続

さまざまな照明状態を補正するために、画像の取り込みごとに露光時間が自動調整されます。

注意:　連続モードでは、取り込みの間隔が長くなります。

2 = シングルショット

最初の取り込み:　センサがオフラインの場合、最初の取り込みは露光時間の決定のために使用されます。この露光時間の値は、シングルショットが無効になるまで格納されます。センサがオフラインの間に取り込みが行われなかった場合、センサをオンラインにしたときの最初の取り込みが露光時間の決定に使用されます。

2 回目以降の取り込み:　センサは、最初の取り込みで計算された露光時間の値を使用して、画像を取り込みます。

注意:　[シングルショット] チェックボックスの ON/OFF を切り替えるか、異なる自動露光モードを選択すると、露光時間の値がリセットされます。露光時間のリセット後に行われた最初の取り込みは、新しい露光時間の値を決定するために使用されます。

最大露光時間

適切な露光時間を決定するときに使用される最大露光時間を指定します。

目標輝度

必要な輝度レベル (0 ～ 100、デフォルト = 10) を指定します。[目標輝度] パラメータが使用可能な飽和ピクセルの割合 (255) を指定します。[自動露光] がオンの場合、[目標輝度] 設定は露光時間の値を調整し、飽和ピクセル「x%」の「目標輝度」を持つ画像を返します。例えば、画像が 10000 ピクセルのときに [目標輝度] パラメータが 20 に設定されると、[自動露光] は露光時間の値を調整し、約 2000 飽和ピクセルを含む画像を返します。

自動露出領域

露光時間の自動計算に使用される領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法

取り込み開始行

画像センサから In-Sight センサのメモリに転送される最初の行を指定します。

解像度 | 有効な取り込み開始行の値
640 × 480 CCD | 0 ～ 479
800 × 600 CMOS | 0 ～ 599
1024 × 768 CCD | 0 ～ 767
1280 × 1024 CMOS | 0 ～ 1023
1600 × 1200 CCD | 0 ～ 1199
2448 × 2048 CCD | 0 ～ 2047

注意:
  • ベイヤーパターンの制約によって、In-Sight カラーセンサに対する [取り込み開始行] パラメータの値には偶数を指定する必要があります。[取り込み開始行] パラメータの値に偶数が設定されていない場合、この値は自動的に偶数に変換されます。AcquireImage 関数のプロパティシートには、元の奇数値がそのまま残りますが、GetRow(A0) 関数は変換後の偶数値を戻します。

  • 多くの In-Sight ビジョンツール関数の対象領域 (ROI) の計算では、一度に 4 ピクセル行に対してアルゴリズムが計算され、ROI のサイズは 4 で割り切れるか、4 ピクセル境界に適合するように自動調整されます (そのように設定されていない場合)。部分取り込みを使用した画像取り込みで、ビジョンツールの ROI が 4 で割り切れないか 4 ピクセル境界に適合しない場合、ROI は自動拡張されます。これによって ROI が画像境界を越え #ERR 状態になることがあります。

行数

In-Sight センサのメモリに転送される画像センサの行の数を指定します。

解像度 | 許容される行数
640 × 480 CCD | 1 ～ 480
800 × 600 CMOS | 1 ～ 600
1024 × 768 CCD | 1 ～ 768
1280 × 1024 CMOS | 1 ～ 1024
1600 × 1200 CCD | 1 ～ 1200
2448 × 2048 CCD | 1 ～ 2048

注意:
  • ベイヤーパターンの制約によって、In-Sight カラーセンサに対する [取り込み開始行] パラメータの値には偶数を指定する必要があります。[取り込み開始行] パラメータの値に偶数が設定されていない場合、この値は自動的に偶数に変換されます。AcquireImage 関数のプロパティシートには、指定した奇数値がそのまま残りますが、GetRow(A0) 関数は変換後の偶数値を戻します。
  • 多くの In-Sight ビジョンツール関数の対象領域 (ROI) の計算では、一度に 4 ピクセル行に対してアルゴリズムが計算され、ROI のサイズは 4 で割り切れるか、4 ピクセル境界に適合するように自動調整されます (そのように設定されていない場合)。部分取り込みを使用した画像取り込みで、ビジョンツールの ROI が 4 で割り切れないか 4 ピクセル境界に適合しない場合、ROI は自動拡張されます。これによって ROI が画像境界を越え #ERR 状態になることがあります。
ライン数

In-Sight 5604 ラインスキャンビジョンシステムで画像を生成するために取り込むラインの数 (1 ～ 8192、デフォルトは 2048) を指定します。In-Sight 5604 は、デフォルトでは、幅 1024 ピクセル×高さ 2048 ピクセルの高解像度標準領域画像を生成します。幅の値 1024 ピクセルは変更できませんが、高さの値 2048 ピクセルは変更することができます。高さの値を変更するには、[エンコーダの設定] ボタンをクリックして [ラインスキャンの設定] ダイアログを開きます。

注意:
  • このコントロールを有効にするには、In-Sight 5604 ラインスキャンビジョンシステムに接続している必要があります。
  • 回転する対象物の画像を取り込む場合は、画像トリガの欠落を避けるため、[ライン数] の値を、任意の 2 つのフレームトリガ間の行数より小さくする必要があります。
  • このパラメータは形式上 1 に設定できますが、8 を下回る値の場合は、画像取り込みに失敗します。

照明制御

LED 照明バンクおよびリングを制御するパラメータは次のとおりです。

注意:　M12 レンズ設定の In-Sight 7000 ビジョンシステムには、[照明制御] パラメータは事前にインストールされた内部 LED リング照明の設定でのみ使用されます。外部ストロボデバイスをビジョンシステムの外部照明ケーブルに接続する場合は、[外部照明の設定] ダイアログ を使用して外部照明の設定値を設定します。

モード

In-Sight 5000 シリーズまたは 7000 シリーズビジョンシステムのリング照明を、指定された露光時間のみ点灯するか、常に点灯しておくかを指定します。

0 = 露光制御 | 露光時間中のみリング照明を点灯します。
1 = 常時点灯 | リング照明を常に点灯します。画像を露光していないときに 50% の輝度で LED を点灯し続けることによって、ストロボの効果が低下します。
2 = なし | リング照明を無効にします (In-Sight 7000 シリーズのみ)。

照明

 最大 4 つの LED 照明チャネルの ON/OFF を指定します。0 以外の値 (1 ～ 255) を指定すると露光時間の間、照明チャネルが ON になります。0 を指定すると、照明チャネルは OFF のままです。In-Sight 5000 シリーズのリング照明 (P/N 200-0187-1) は、水平方向と垂直方向の 2 つの LED バンクに分かれています。照明 0 は水平 LED バンクを制御し、照明 1 は垂直 LED バンクを制御します。

注意:
  • このパラメータは In-Sight 5000 シリーズビジョンシステムでのみサポートされています。
  • 外付けのストロボを使用する場合は、照明 0 および照明 1 をゼロ (0) に設定する必要があります。
  • [光量] パラメータの値を大きくしても、LED の輝度は強くなりません。
照明の輝度 LED の実効輝度 [(0 ～ 100)、デフォルト = 1、OFF = 0] を制御します。

注意:　このパラメータは In-Sight 7000 シリーズビジョンシステムでのみサポートされています。

ゲイン

A/D コンバータの前段の増幅器のゲインを指定します。

In-Sight モデル | ゲインの設定
In-Sight 5000 および In-Sight Micro シリーズビジョンシステム | 0 ～ 255、デフォルト 128
In-Sight 7000 および In-Sight Micro 1402 ビジョンシステム | 0 ～ 7、デフォルト 0

注意:
  • In-Sight 5604 ラインスキャンビジョンシステムに接続している場合、[ゲイン] 設定は 0 ～ 255 の範囲内で 0.25 ずつ増分できるため、きめ細かくゲインを調整できます。
  • In-Sight Micro 1402 または In-Sight 7000 シリーズビジョンシステムに接続されている場合、[ゲイン] 設定は他の In-Sight モデルより感度が高くなります。ジョブが別の In-Sight モデルで開発され (デフォルト [ゲイン] 値は 128)、In-Sight Micro 1402 または In-Sight 7000 シリーズビジョンシステムにロードされると、取り込まれた画像は飽和します。

オフセット

A/D 変換の前に In-Sight ビジョンシステムからのアナログ信号に対して加算または減算する DC レベルを指定します。[オフセット] は、画像内のダイナミックレンジを維持しながら、画像の明暗に影響します。

In-Sight モデル | オフセットの説明
5000 シリーズ、および Micro シリーズビジョンシステム | 0 ～ 255 のオフセットを指定します。デフォルトはタイプによって異なります。
In-Sight 7000 および In-Sight Micro 1402 ビジョンシステム | 0 ～ 255 のオフセットを指定します。デフォルトは 128 です。
画像の回転

画像の向きを指定します。

0 = 標準 (デフォルト)

1 = 左右反転

2 = 上下反転

3 = 180 度回転

注意:
  • In-Sight ビジョンシステムがこの機能をサポートしていない場合、[画像の回転] パラメータは無効になります。現在、この機能は、In-Sight 5100C または 5400C カラービジョンシステムではサポートされていません。
  • In-Sight 5604 ラインスキャンビジョンシステムは、[標準] および [左右反転] の設定のみをサポートしています。
  • センサがオンラインの間、[画像の回転] パラメータの値を変更しないでください。変更すると、センサが予期しない状態になることがあります。

マスタ

このチェックボックスが ON になっている場合、アクティブな In-Sight センサが In-Sight センサのネットワーク上での「マスタ」デバイスとして指定されます。アクティブな In-Sight センサは、マスタシステムとしてネットワーク上のほかのセンサ (「スレーブ」) に対し、ネットワークを介する画像取り込みトリガを生成することができます。

0 = OFF (デフォルト) | アクティブな In-Sight センサからネットワークトリガを生成できません。
1 = ON | アクティブな In-Sight センサからネットワークトリガが生成されます。特定の「マスタ名」で設定され、「ネットワークトリガ」に設定されたネットワーク上の In-Sight スレーブは、In-Sight マスタが画像を取り込むとその画像を常に取り込みます。
注意:
  • In-Sight センサは、マスタおよびスレーブとしてネットワーク上で同時に動作することはできません。つまり、ネットワークでトリガを受けてから、さらにトリガを生成することはできないということです。したがって、トリガが [ネットワーク] に設定されている場合は、[マスター] チェックボックスを OFF にしてください。
  • 1 つのネットワーク上で複数の In-Sight センサをマスタとして動作させることは可能です。マスタ名パラメータにおいて、各マスタとこのマスタを参照するすべてのスレーブは一意の名前を共有する必要があります。
  • In-Sight Micro 1020 ビジョンシステムは、[マスター] パラメータをサポートしていません。

マスタ名

[トリガ] の設定が [(99) ネットワーク] ではなく、[マスター] が選択されている (ON である) 場合、[マスター名] フィールドには、アクティブな In-Sight センサによってそのスレーブをトリガするために送信されるネットワークトリガの名前を指定します。

[トリガ] が [(99) ネットワーク] に設定されていて、[マスター] が選択されていない (OFF である) 場合、[マスター名] フィールドには、アクティブな In-Sight センサで画像取り込みを発生させるネットワークトリガの名前を指定します。

注意:
  • スレーブセンサ上の [マスター名] フィールドは、マスタセンサ上の [マスター名] フィールドと一致している必要があります。一致していない場合、スレーブセンサはトリガされません。
  • [マスター名] フィールドが空白のスレーブセンサは、ネットワーク上のすべてのマスタセンサによってトリガされます。
  • [マスター名] では大文字と小文字が区別されます。

マスタデータ

アクティブな In-Sight センサがネットワーク上のマスタに設定されている場合、トリガの送リ先になる In-Sight スレーブに英数字の文字列データを送ることもできます。ネットワークトリガによって受信したマスタデータを読み取るには、In-Sight スレーブのスプレッドシートにセル A0 の AcquireImage 関数を参照する GetString 関数が含まれている必要があります。
バッファモード

画像の取り込みに使用されるバッファの数を指定します。

0 = オーバラップ (デフォルト) | 画像取り込みに使用されるバッファの最大数を指定します。
1 = シングル | 画像取り込みに単一バッファのみを使用するように指定します。このオプションは、[トリガ] パラメータが [カメラ] に設定されている場合のみサポートされます。

注意:
  • センサがオンラインの間は、バッファモードパラメータを変更することができません。

  • バッファモードパラメータは、In-Sight 1720 シリーズのウェーハリーダではサポートされていません。
遅延

[トリガ] パラメータが [カメラ] または [ネットワーク] に設定されている場合、トリガを受信してから、センサが画像取り込みを開始するまでの遅延をミリ秒単位 (0 ～ 10,000) で指定します。[トリガ] パラメータが [連続] に設定されている場合は、画像取り込みの間隔をミリ秒単位 (0 ～ 10,000、デフォルトは 500) で指定します。In-Sight 5604 ラインスキャンビジョンシステムに接続されており、[トリガ] パラメータが [カメラ] に設定されている場合は、カメラトリガが発生してから、画像取り込みを開始するまでの遅延をラインの数で指定します。

注意:
  • [トリガ] パラメータが [連続] に設定されている場合、この遅延は、ジョブで画像処理を完了するまでに必要な時間によって異なります。例えば、[遅延] パラメータが 5,000 ミリ秒に設定された場合、ジョブで 5,000 ミリ秒以内に画像処理が完了すれば、In-Sight ビジョンシステムは 5,000 ミリ秒ごとに画像を取り込みます。そうでなければ、In-Sight ビジョンシステムは画像処理が完了した時点で画像を取り込みます。
  • 遅延は、要求されたミリ秒数から最大ライン露光時間 (64 マイクロ秒) を引いた値から、要求されたミリ秒数に最大ライン露光時間を足した値までの範囲です。
  • [画像取り込み開始] または [ストロボ] が [ディスクリート出力設定] ダイアログで [タイプ] に指定されている場合、これらの出力も指定された時間だけ遅れます。
  • In-Sight 5604 ラインスキャンビジョンシステムに接続され、[遅延] パラメータが 0 以外の値に設定されている場合、ビジョンシステムが [遅延] 期間内に画像取り込みトリガを受け取ると、[遅延] パラメータに指定された期間が完了するまで、トリガはアクティブ化されず、取り込みミスは報告されません。
  • In-Sight 5604 ラインスキャンビジョンシステムに接続され、[遅延] パラメータが長い期間に設定されている場合、システムがオンライン/オフラインのいずれであるか、またはエンコーダ画像取り込み時のタイムアウトに達しているかどうかに関係なく、遅延期間が完了するまでシステムは別の画像取り込みを開始しません。ビジョンシステムが、In-Sight Explorer [センサ] メニューの [リセット] オプションまたは Reset System ネイティブモードコマンドによってリセットされた場合、ビジョンシステムが無応答となり、電源を入れ直してシステムを復元する必要が生じることがあります。[遅延] 期間が完了するまで待機してから、ソフトリセットを送信してください。

フォーカスメトリクス領域

ライブ画像モードでフォーカスメトリクス得点の自動計算に使用する領域を指定します。

注意:　In-Sight 7000 シリーズビジョンシステムの場合は、ライブビデオモードの間でも、フォーカスメトリクス領域を使用して、レンズのオートフォーカスの計算、またはレンズの焦点位置の設定に使用する領域を定義します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位
ホワイトバランス領域

ホワイトバランスの計算に使用する領域を指定します。

注意:　WhiteBalance 関数は、ホワイトバランス領域を参照し、このパラメータを使用してホワイトバランスを計算します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
ラインスキャン

[ラインスキャン] コントロールでは、In-Sight 5604 ラインスキャンビジョンシステムの設定値を指定します。In-Sight 5604 は、対象物が通過するにつれて行単位で画像を生成するため、円柱状の対象物の完全な「展開図」画像や、面を連続的にスライスした画像を生成できます。In-Sight 5604 をユーザが提供するハードウェアエンコーダに接続すると、対象物の速度が変化しても、非常に正確な画像を生成できます。
注意:
  • これらのコントロールを有効にするには、In-Sight 5604 ラインスキャンビジョンシステムまたはエミュレータに接続している必要があります。
  • In-Sight 5604 はオフラインになっている必要があります。
  • ユーザがフルアクセスのアクセス権を持っている必要があります。
  • In-Sight 5604 に接続されており、AcquireImage プロパティシートにアクセスしている場合に、[OK] または [キャンセル] をクリックしてプロパティシートを閉じると、GUI は画像間の同期を失います。例えば、[キャンセル] ボタンをクリックしてプロパティシートを閉じた場合、GUI は新たに取り込んだ画像を表示しますが、ビジョンツールは以前に取り込んだ画像に対して関数を実行します。[OK] ボタンをクリックした場合は、新しい画像が取り込まれ、ビジョンツールはこの画像に対して動作しますが、別の新しい画像が取り込まれて表示されると、ビジョンツールはこの画像に対して動作しません。AcquireImage プロパティシートにアクセス後に、特定の画像に戻る必要が生じた場合は、必ず手動で画像を取り込み、現在表示されている画像を保存してから、AcquireImage にアクセスしてください。

ライントリガタイプ

エンコーダのタイプとして、[ソフトウェアエンコーダ] または [ハードウェアエンコーダ] を指定します。

0 = ハードウェアエンコーダ | [ハードウェアエンコーダ] を指定すると、ライントリガの駆動に [ラインごとのステップ数] 設定値と外部ハードウェアエンコーダが使用されます。 ハードウェアエンコーダは、対象物が指定した方向または距離を移動するたびに信号を変化させることで対象物の位置をデジタル化する装置です。In-Sight 5604 は、[単位相] または [直交] の 2 種類のハードウェアエンコーダをサポートします。これを指定するには、[エンコーダの設定] ボタンをクリックして [ラインスキャンの設定] ダイアログを開きます。
1 = ソフトウェアエンコーダ (デフォルト) | [ソフトウェアエンコーダ] を指定すると、[ライン間隔] 設定で指定した間隔で周期的にライントリガが駆動されます。 ソフトウェアエンコーダは、ハードウェアエンコーダのソフトウェアエミュレーションで、指定された周期でラインを取り込みます。この方式では、対象物の速度の変化 (低周波の速度変化や高周波の揺れ) によって垂直の不要画像が生じることがあるため、主に設定とトラブルシューティングに使用します。

ライン間隔/ラインごとのステップ数

ライン間の時間を、[ライントリガタイプ] が [ソフトウェアエンコーダ] に設定されている場合はマイクロ秒 (µs) 単位で、ライントリガタイプ] が [ハードウェアエンコーダ] に設定されている場合はエンコーダのステップ数で指定します。

ライン間隔

画像ラインごとの間隔周期をマイクロ秒単位 (0.25 ～ 1000000 µs、デフォルト = 40 µs) で指定します。

注意:
  • このコントロールを有効にするには、[ライントリガタイプ] が [ソフトウェアエンコーダ] に設定されている必要があります。
  • ライントリガの欠落を避けるため、[ライン間隔] の値を、任意の 2 つのライン間の最短時間が [露光時間] 設定値 (最短 1.33 µs) より 21.47 µs 長くなるように設定する必要があります。

ラインごとのステップ数

画像ラインごとの間隔エンコーダのステップ数 (0.25 ～ 256、デフォルト = 40) を指定します。

直交エンコーダを使用する場合、「ステップ」はエンコーダ信号の 1 サイクルです。シングルラインハードウェアエンコーダの場合は、1 ステップは 2 回の信号変化に等しく、直交ハードウェアエンコーダの場合は 4 回の信号変化に等しくなります。

Closed ハードウェアエンコーダのラインごとのステップ数のタイミング図

注意:
  • このコントロールを有効にするには、[ライントリガタイプ] が [ハードウェアエンコーダ] に設定されている必要があります。
  • [ラインごとのステップ数] の値は、シングルラインハードウェアエンコーダの場合は 0.5 ずつ、直交ハードウェアエンコーダの場合は 0.25 ずつの値で設定する必要があります。
  • ライントリガの欠落を避けるため、[ラインごとのステップ数] の値を、任意の 2 つのライン間の最短時間が [露光時間] 設定値 (最短 1.33 µs) より 21.47 µs 長くなるように設定する必要があります。

エンコーダ画像取り込み時のタイムアウト

画像取り込みの最長時間をミリ秒単位 (0 ～ 300,000、デフォルト = 0、タイムアウトの無効化) で指定します。画像取り込みが指定した時間内に完了しなかった場合、画像取り込みは中断され、画像取り込みエラーが発生します。

注意:　タイムアウトを無効にするには、パラメータを 0 に設定します。

クリップモード

画像取り込みトリガを受信したときに指定された数のラインの取り込みが完了していない場合の動作を指定します。

注意:
  • [黒く塗りつぶし] または [ラインスキャンラインの間引き] が有効な場合、トリガタイプを [カメラ] に設定し、画像を適切にクリッピングします。他のトリガタイプでは、画像が取り込まれている間にトリガが到達すると、現在の画像はクリッピングされず、新しく到達したトリガは失敗します。
  • [黒く塗りつぶし] オプションでは、1 行埋めるのに約 2 µs かかります (100 行あたり 0.2 ミリ秒)。時間に厳密なアプリケーションの場合は [ラインスキャンラインの間引き] オプションを選択します。[黒く塗りつぶし] オプションを使用する場合は、埋める行数は数百行程度までに抑えます。
  • In-Sight 5604 ラインスキャンビジョンシステムに接続されており、このパラメータが [黒く塗りつぶし] または [ラインスキャンラインの間引き] に設定されている場合に、Set Event ネイティブモードコマンドを送信して画像取り込みをトリガし、画像が取り込まれている間にトリガが到達すると、現在の画像はクリッピングされず、新しく到達したトリガは失敗します。

0 = クリッピングなし (デフォルト) | 画像トリガを無視し、「画像取り込みエラー」イベントを生成するように指定します。 Closed クリッピングなしの場合の図
1 = 黒く塗りつぶし | 残りのラインを黒いピクセルで埋め、新しい画像を即座に開始するように指定します。「画像取り込みエラー」イベントは生成されません。 Closed 黒く塗りつぶし場合の図
2 = ラインスキャンラインの間引き | 現在の画像を現在取り込んだ行数のサイズに縮小し、即座に新しい画像を開始するように指定します。 Closed ラインスキャンラインの間引き
トリガデバウンス

入力トリガを有効なトリガとして認識するまでアクティブなままにしておく時間をマイクロ秒単位 (0 ～ 65,536、デフォルト = 1) で指定します。この設定で指定した時間だけ、有効なトリガの認識を遅らせます。

注意:
  • このコントロールを有効にするには、[トリガ] パラメータを [カメラ] に設定する必要があります。
  • トリガデバウンスオプションは In-Sight Micro シリーズと In-Sight 7000 シリーズビジョンシステムで利用可能です。このオプションは、In-Sight 5100 シリーズ、5400 シリーズ、5600、5603 および 5605 ビジョンシステムでも利用可能です。 モデルはタイプ番号 (821-xxxx-xx) で特定できます。このタイプ番号は、ビジョンシステムに添付されているラベルに記載されています。モデル、およびタイプ番号と不揮発性フラッシュメモリの一覧については、ここをクリックしてください。

AcquireImage 関数関数の結果出力

AcquireImage 関数は、 [image] データ構造体を返します。センサモデルによって、返される画像のタイプは異なります。

In-Sight モデル | 画像の寸法 (ピクセル単位) | グレースケール / カラー | ビット深度 | グレースケール階調数または色数 | FPS
In-Sight 5100、5110、5400、5410、5600 | 640 × 480 | グレースケール | 8 ビット | 256 | 602
In-Sight 5100C および 5400C | 640 × 480 | カラー | 24 ビット | 16,777,216 | 602
In-Sight 5401 および 5411 | 1024 × 768 | グレースケール | 8 ビット | 256 | 171
In-Sight 5604 および 5614 ラインスキャン | 1024 × 1 | グレースケール | 8 ビット | 256 | 44 KHz3
In-Sight 5403、5413、5603、および 5613 | 1600 × 1200 | グレースケール | 8 ビット | 256 | 142
In-Sight 5605 および 5615 | 2448 × 2048 | グレースケール | 8 ビット | 256 | 162
In-Sight 7010、7020、7050、7200、7210、7230、7400、7410、7430 | 800 × 600 | グレースケール | 8 ビット | 256 | 1022
In-Sight 7010C、7200C、7400C | 800 × 600 | カラー | 24 ビット | 16,777,216 | 502
In-Sight 7402、7412、7432 | 1280 × 1024 | グレースケール | 8 ビット | 256 | 602
In-Sight 7402C | 1280 × 1024 | カラー | 24 ビット | 16,777,216 | 302
In-Sight Micro 1020、1050、1100、1110、1400、1410 | 640 × 480 | グレースケール | 8 ビット | 256 | 602
In-Sight Micro 1100C および 1400C | 640 × 480 | カラー | 24 ビット | 16,777,216 | 582
In-Sight Micro 1402 および 1412 | 1280 × 1024 | グレースケール | 8 ビット | 256 | 602
In-Sight Micro 1403 および 1413 | 1600 × 1200 | グレースケール | 8 ビット | 256 | 142
In-Sight Micro 1403C | 1600 × 1200 | カラー | 24 ビット | 16,777,216 | 72

1.1 秒あたりの最大フレーム数は、ジョブ依存で、専用取り込みトリガを使用した 8ms 露光と画像フレーム全体のキャプチャに基づき、ビジョンシステムへのユーザインタフェース接続がないことを前提にしています。

2.1 秒あたりの最大フレーム数は、ジョブ依存で、専用取り込みトリガを使用した最小露光と画像フレーム全体のキャプチャに基づき、ビジョンシステムへのユーザインタフェース接続がないことを前提にしています。

3.ラインスキャンの画像取り込みレートは周波数 (KHz) 単位で表されます。

注意:　画像パラメータを必要とする関数は、有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。 すべてのプロパティシートにおいて、画像パラメータのデフォルトの参照先はセル A0 です。セル A0 には、AcquireImage 関数によって返される [image] データ構造体が含まれています。しかし、CompareImage 関数、FindCircleDefects 関数、NeighborFilter 関数、および PointFilter 関数によって返される [image] データ構造体もプロパティシートの画像パラメータ値に対して有効な参照です。


TestRun - スプレッドシートビュー

In-Sight Explorer GUI リファレンス

対象となる In-Sight ビジョンシステムに接続し、該当する .job ファイルをビジョンシステムにロードしたら、TestRun の設定を開始する必要があります。TestRun を設定するには、[TestRun セットアップ] ダイアログを使用します。ここでは、TestRun をプログラムするための一連の画面がステップ単位で表示されます。ダイアログの左側にはナビゲーションペインが表示されており、ここで設定画面のいずれかを選択できます。

注意: TestRun の初期設定が完了した後に、いずれかのステップを再度確認するには、ナビゲーションペインでそのステップを選択します。

  • [ジョブの PASS/FAIL]
  • [シンボリックタグ]
  • [画像データベースフォルダ]
  • [バリアントの設定]
  • [ジョブ/バリアント] - [アクションのセットアップ]
  • [ジョブ/バリアント] - [リミットテスト]
  • [ジョブ/バリアント] - [画像の選択]
  • [ジョブ/バリアント] - [欠陥テスト]
  • [ハードウェアテスト] - [アクションのセットアップ]
  • [ハードウェアテスト] - [テスト]
  • [クリーンアップアクション]

[TestRun セットアップ] ダイアログを設定したら、[パレット] に戻り、次のボタンを使用してそれぞれの処理を行います。

  • [新規]: 新しい TestRun テストを作成します。
  • [設定]: [TestRun セットアップ] ダイアログを起動します。
  • [実行]: 既存の TestRun テストを実行します。
  • [修復]: 壊れたテストまたは値を修復します。
  • [インポート]: 以前に作成したテストをインポートします。
  • [エクスポート]: テストをエクスポートします。
  • [バッチ実行]:TestRun を設定して .job ファイルのバッチを実行する際に使用する [TestRun バッチ実行] ダイアログを開きます。

TestRun を表示するには

  1. [パレット] で、[TestRun™] タブをクリックします。

注意:　 [パレット] が表示されない場合は、[表示] メニューから [パレット] を選択します。

  2. 　[設定] ボタンをクリックして、[TestRun セットアップ] ダイアログを起動します。
  3. すべての [TestRun セットアップ] ダイアログのステップを設定したら、 [image] [パレット] の [TestRun] タブにある [実行] ボタンをクリックして、テストを実行します。

注意:　 [TestRun セットアップ] ダイアログの設定を完了したら、[パレット] で使用できるすべてのボタンが表示された右クリックメニューが選択できるようになります。さらに、テストの特定のセクションからテストを実行する機能も使用できるようになります (例えば、ジョブテストを実行せずにハードウェアテストから開始する、など)。

[ジョブの PASS/FAIL]

スプレッドシートビューで TestRun を使用する際は、最初にジョブに対して PASS/FAIL タグを使用してセルを設定する必要があります。このタグは、マシンビジョン検査の成功または失敗を示します。技術面からは、ジョブに対して PASS/FAIL セルを設定する必要はありませんが、ジョブの PASS/FAIL を記録するためにセルにタグを付けることは 2 つの点で有利です。まず、PASS/FAIL セルを使用すると、Cognex VisionView アプリケーションは、合格画像と不合格画像を識別し、それに応じて色分けすることができます。次に、TestRun は、ジョブの PASS/FAIL セルの情報を「不合格」画像の識別情報と組み合わせることによって、ジョブの PASS/FAIL ステータスを判定する欠陥テスト、および各画像で想定される結果を作成して設定することができます。

注意:　[ジョブの PASS/FAIL セルの設定] ダイアログが既に設定されている場合、[TestRun セットアップ] ダイアログのこのステップで、設定が自動的に入力されます。

ジョブの PASS/FAIL セルの設定

  1. [ジョブの PASS/FAIL セルを使用する] チェックボックスがオンになっていることを確認します (デフォルトでは、オン)。
  2. [セルの選択] ボタンをクリックして、セル選択モードに切り替えて、ジョブの PASS/FAIL セルとして使用するセルを選択します。
  3. 3 つの [ジョブのステータス] を設定すると、PASS/FAIL セルの状態に応じて、ジョブの適切なステータスを示すことができます (負、ゼロ、または正)。
  4. [次へ] ボタンをクリックして、TestRun の設定を続行します。

[シンボリックタグ]

TestRun では、セル位置ではなくシンボリックタグに基づいて、ジョブ内の関数およびツールを参照します (シンボリックタグを使用すると、ジョブの開発者は、TestRun に影響を与えずにセルを移動することができます)。このため、TestRun で使用される値はすべて、シンボリックタグを持っている必要があります。ジョブが EasyBuilder ビューで開発されている場合、テスト可能なすべての値に対して、最初からシンボリックタグが存在しています。つまり、EasyBuilder ビューからアクセスする場合、このステップは省略されます。ジョブをスプレッドシートビューで開発した場合は、シンボリックタグを作成する必要があります。

シンボリックタグの作成

スプレッドシートビューでシンボリックタグを作成するには 2 つの方法があります。1 つは、目的のセルを手動で追加してタグを付ける方法です。もう 1 つは、自動タグ機能を使用して、サポートされるセルタイプに自動的にタグを付ける方法です。

注意:　シンボリックタグを追加したら、名前またはセル位置別にソートすることができます ([名前] または [セル位置] 列見出しをクリックします)。

手動によるシンボリックタグの追加

  1. [追加] ボタンをクリックして、セル選択モードに切り替えて、シンボリックタグに関連付けるセルを選択します。
  2. TestRun では、選択したセルに「Cell_<loc>」というフォーマットでシンボリックタグを割り当てます。ここで <loc> はセル位置です (例: B52)。
  3. 新しいシンボリックタグを選択し、タグが編集できるようになります。
  4. 必要に応じて、タグの名前をアプリケーションに適用できる名前に変更します。目的のタグを選択して、[名前の変更] ボタンをクリックします。新しい名前を入力し、Enter キーを押して変更を受け入れます。

注意:　TestRun でシンボリックタグの名前を変更すると、スプレッドシート内のシンボリックタグの名前も変更されます。

  5. 目的のセルがすべて追加されるまで、手順 1 ～ 4 を繰り返します。
  6. [次へ] ボタンをクリックして、TestRun の設定を続行します。

シンボリックタグの自動的な追加

[自動タグ] ボタンをクリックすると、TestRun はジョブを調べ、次のタイプの関数に対して自動的にシンボリックタグを作成します。

  • Button 関数
  • CheckBox 関数
  • ListBox 関数
  • EditInt 関数
  • EditFloat 関数
  • EditString 関数

注意:　Button および CheckBox 関数の場合、関数に割り当てられた名前は、空の文字列でない限り、シンボリックタグの名前として使用されます。

  1. [自動タグ] ボタンをクリックします。
  2. TestRun では、上記の関数を含むセルを検索してタグを付けます。関数が Dialog 関数内にある場合は、Dialog 関数の名前が接頭辞になります (例: 「DialogNam」_EditFloat)。関数がカスタムビュー内にある場合は、「Custom_View」が接頭辞になります。

注意:　目的の関数が自動的に追加されていない場合は、[追加] ボタンを使用して、手動で関数を追加します。

  3. 不必要なタグを削除する場合は、そのタグを選択してから [削除] ボタンをクリックします。
  4. 必要に応じて、タグの名前をアプリケーションに適用できる名前に変更します。目的のタグを選択して、[名前の変更] ボタンをクリックします。新しい名前を入力し、Enter キーを押して変更を受け入れます。

注意:　TestRun でシンボリックタグの名前を変更すると、スプレッドシート内のシンボリックタグの名前も変更されます。

  5. [次へ] ボタンをクリックして、TestRun の設定を続行します。

[画像データベースフォルダ]

ジョブ全体の PASS/FAIL セルを設定してシンボリックタグを作成したら、[TestRun セットアップ] の次のステップは [画像データベースフォルダ] です。

このステップでは、テスト画像データベースへのパスを生成します。ディレクトリパスでは、次のいずれかのフォーマットを使用する必要があります。

  • C:\TestRun\BracketJob
  • file:///\\TestRun\BracketJob
  • ftp://TestRunServer/BracketJob
  • ftp://10.28.127.73/BracketJob

画像はすべて、1 つの共通のルートフォルダに格納する必要があります。画像が複数のフォルダに格納されている場合は、すべての画像とそのサブフォルダが含まれているフォルダを選択します。TestRun が各種ファイル構造に対応できる場合は、次のタイプの構造を使用することを推奨します。

このタイプの構造を使用すると、「画像データベース」フォルダが選択されます。

最後に、[未知の画像] ドロップダウンメニューを設定します (無視、Pass と仮定、Fail と仮定、デフォルト= 無視)。[未知の画像] ドロップダウンを使用して、[画像の選択] ステップでは明示的に TestRun に追加されなかった画像の、TestRun による処理方法を決定します。ドロップダウンを [無視] に設定すると、設定されていない画像を TestRun で単純に無視することができます。ドロップダウンを [Pass と仮定] に設定すると、画像に対するジョブは TestRun で成功したものとみなされます。ドロップダウンを [Fail と仮定] に設定すると、画像に対するジョブは TestRun で失敗したものとみなされます。

TestRun 画像データベースで使用するフォルダの選択

  1. [参照] ボタンをクリックします。
  2. [フォルダーの参照] ダイアログで、保存先の画像フォルダに移動して選択します。フォルダを選択してから [OK] ボタンをクリックします。

注意:　 既に画像フォルダにアクセスしている場合は、ドロップダウンメニューから選択できます。

  3. 必要に応じて、画像ディレクトリにアクセスするためのユーザ名とパスワードを入力します。

注意:　 TestRun の [画像データベースフォルダ] 設定時に、ジョブの開発者が自分自身の特定のユーザ認証を使用して、TestRun が別のアプリケーションで使用するフォルダにアクセスした場合 (例えば、Windows Explorer を使用して、ネットワークフォルダの画像を表示する場合など) に、別のユーザ認証が指定されている場合 (例えば、ライン上のオペレータが使用する汎用のユーザ名とパスワードなど)、TestRun はそのフォルダにアクセスすることはできません。この状態から復旧するには、フォルダにアクセスしているアプリケーションを閉じてから、[TestRun セットアップ] ダイアログを閉じて再度開きます。

  4. 必要に応じて、ドメインの情報を入力します。
  5. [次へ] ボタンをクリックして、TestRun の設定を続行します。
  6. このステップから抜けると、TestRun は、自動的に .jpg および .bmp 画像ファイル用の画像ディレクトリを検索します。
注意:
  • 以前にこのステップを設定済みの場合、TestRun は、ディレクトリに格納されているファイルに関する情報を保持します。画像の場所が変更されると、画像の場所を基準にしたパスに基づいて画像を照合し、照合した画像ごとにそのプロパティを転送します。
  • フォルダが生成されると、ドロップダウンメニューの下に次の項目が表示されます。フォルダ内の画像の総数、以前に [ジョブ]　→ [画像の選択] 画面で設定した画像の数、以前に設定した際にはフォルダ内に存在していたが、現在は存在していない画像の数、および最後に設定してからフォルダに新しく追加された画像の数。

バリアントの設定

通常 1 つのジョブには、1 つ以上の検査が含まれています。ジョブ内のそれぞれの検査は、ジョブバリアントとみなされます。例えば、以降何度もジョブを変更するのを避けるために、複数の製品を処理するようにジョブを作成するとします。この場合、ジョブ内のそれぞれの検査は、ジョブバリアントとみなされます。

通常、外部入力 (例えば、PLC からのコマンド) によって複数のバリアントを選択します。各バリアントには、独自のビジョンツールセット、別のサーチ領域、別の露光設定値などがあります。TestRun では、ジョブ内のすべてのバリアントをテストできます。

注意:　 各ジョブバリアントは、個別に設定します。

ジョブバリアントの追加

  1. デフォルトでは、「ジョブ」という名前のバリアントが自動的に追加されます。

注意:　 名前を変更するには、対象のバリアントを選択し、[名前の変更] ボタンをクリックしてから、新しい名前を入力します。名前を変更したら、設定ステップペインにある名前が自動的に更新されます。

  2. [追加] ボタンをクリックして、新しいバリアントを作成します。
  3. [次へ] ボタンをクリックして、TestRun の設定を続行します。

ジョブバリアントの並べ替え

注意:　 バリアントの順序を変更すると、TestRun テストの実行順序が変更されます。

  1. バリアントを選択します。
  2. 目的の方向に応じて、[上に移動] または [下に移動] のいずれかのボタンをクリックします。
  3. [次へ] ボタンをクリックして、TestRun の設定を続行します。

ジョブ/バリアント - アクションのセットアップ

テストを開始するには、TestRun でジョブの一部のパラメータを設定し、実行する特定のバリアントを設定する際にオペレータが実行する動作をコピーします。通常、ジョブに複数のバリアントがある場合は、設定の一部を、選択したバリアント用のジョブに合わせる必要があります。TestRun で特定のバリアント用の画像を処理するには、最初にそれに応じてジョブの状態を設定する必要があります。[アクションのセットアップ] のステップでは、選択したバリアントの画像に必要なパラメータを設定します。

[アクションのセットアップ] 画面は、2 つの列から構成されます。1 つは [シンボル] 列で、ここにはシンボリックタグ付きジョブの設定値がすべて表示されます。もう 1 つは [アクションのセットアップ] 列で、ここには TestRun で設定するジョブのパラメータ設定値がすべて表示されます。

ジョブを設定して現在のバリアントをテスト

  1. [シンボル] 列のリストからパラメータ設定を選択します。必要に応じて、プラス記号をクリックし、リストを展開します。

注意:　設定を選択すると、スプレッドシートでそのパラメータがハイライトされます。

  2. 設定を有効にするには、設定の横にあるチェックボックスをオンにします。[アクションのセットアップ] 列に設定が自動的に入力されます。
  3. 設定を有効にして [アクションのセットアップ] 列でその設定を選択すると、2 つの列の下に設定のエディットコントロールが表示されます。
  4. 必要に応じて、設定を調整します。
  5. 設定が複数ある場合は、[上に移動]/[下に移動] ボタンを使用して、設定を実行順に並べます。TestRun では、この画面に表示されている順序に従って、設定操作を実行します。
  6. [次へ] ボタンをクリックして、TestRun の設定を続行します。

ジョブ/バリアント - リミットテスト

マシンビジョンアプリケーションには多数のパラメータが用意されており、これらは必要に応じてマシンオペレータやメンテナンス技術者が調整できます。ビジョンアプリケーションの開発者は、TestRun のリミットテストを使用して、テストする調整可能なパラメータの選択、そのパラメータの上限値および下限値の設定、およびそのパラメータが設定した限界値内に収まっているかどうかの判別を行うことができます。例えば、開発者はシステムを引き続き動作させるために、TestRun のハードコーディングされた限界値をオペレータや技術者が柔軟に調整できるように設定することができます。さらに、パラメータが範囲を外れたことを確認することもできます。

[リミットテスト] 画面では、編集可能なパラメータ限界値に関するテストを設定できます。この画面は、2 つの列から構成されています。1 つは [シンボル] 列で、ここにはシンボリックタグ付きジョブの設定値がすべて表示されます。もう 1 つは [リミットテスト] 列で、ここには TestRun でテストするジョブのパラメータ設定値がすべて表示されます。

限界をテストするための変数の選択と設定

  1. [シンボル] 列のリストからパラメータ設定を選択します。必要に応じて、プラス記号をクリックし、リストを展開します。

注意:　設定を選択すると、スプレッドシートでそのパラメータがハイライトされます。

  2. 設定を有効にするには、設定の横にあるチェックボックスをオンにします。[リミットテスト] 列に設定が自動的に入力されます。
  3. 設定を有効にして [リミットテスト] 列でその設定を選択すると、2 つの列の下に設定のエディットコントロールが表示されます。
  4. 必要に応じて、設定を調整します。使用可能なテストのタイプは、編集可能なパラメータのタイプに応じて決まります。
  • EditInt 関数:　[Is In Range]
  • EditFloat 関数:　[Is In Range]
  • EditString 関数:　[Is Equal]
  • ListBox 関数:　[Is Equal]
  • CheckBox 関数:　[Is Equal]
  5. [次へ] ボタンをクリックして、TestRun の設定を続行します。

ジョブ/バリアント - 画像の選択

この画面では、特定のバリアントのテスト時に使用される画像を選択し、「良好」または「不良」のいずれかとして定義します。この場合、「良好」画像の状態は合格で、「不良」画像の状態は不合格です。

注意:　 画像はバリアント内で共有できます。

このバリアントの画像を選択し、画像を「良好」または「不良」として定義します。

  1. ツリーコントロールを使用して、画像のディレクトリを展開します。
  2. ディレクトリに「良好」および「不良」画像が混在して含まれている場合に個別の画像を選択するには、その画像をオンにしてから、ディレクトリの下にあるセレクタを使用し、[良好] または [不良] として定義します。必要に応じて、画像に関するコメントを追加します。
  3. ディレクトリが「良好」および「不良」画像を含む別々のディレクトリに分割されている場合は、トップレベルをオンにしてそのグループ内にあるすべての画像をオンにし、トップレベルで同じ分類 ([良好] または [不良]) を共有します。
  4. [次へ] ボタンをクリックして、TestRun の設定を続行します。

ジョブ/バリアント - 欠陥テスト

[欠陥テスト] 画面では、画像とそれに対応して想定される欠陥が互いに関連付けられており、データベース内の各画像に対して、想定される結果を示すデータベースが作成されています。この画面で欠陥テストを設定するには、各画像に存在する欠陥 (ある場合) を選択して、その欠陥をジョブのパラメータの想定される結果に関連付けます。

初期のデフォルト設定では、各画像に対して [ジョブ FAIL] という欠陥が存在しています。これは、「不良」画像として指定されたすべての画像に対して自動的にオンになります。欠陥がチェック (オン) されることは、その画像に欠陥が存在することを示します。欠陥テストは、ビジョンアプリケーションが画像の合格または不合格を誤って判定した理由を特定するのに役立ちます。大部分のビジョンアプリケーションでは、1 つの画像に対して複数の検査が実行され、それを総合して全体の合格/不合格の結果が生成されます。ビジョン設計者は、TestRun を使用すると、個別の画像の合格/不合格を判定できるだけではなく、特定の欠陥を想定して実際に検出することができます。

例えば、穴が欠落しているために部品が「不良」と判定された場合、TestRun では、実際に部品に穴が欠落しているとジョブで判定されたために、その部品が不合格になったことを確認するのに役立ちます。フィクスチャとして使用したツールが、穴が欠落しているために部品を不合格と判定したとします。これは、ツールのサーチ領域が穴が欠落していることを特定して画像を取り込むのに十分な大きさを持っていたからで、元々このツールは穴の欠落を特定するためのツールではなかった場合、ジョブのロジックは正常には実行されておらず、TestRun はその不一致を特定するのに使用できます。

注意:　 [欠陥テスト] 画面に移動すると、現在選択されているバリアントに対して設定操作が実行され、ジョブの状態が適切に設定されているかどうかが確認されます。

テストする欠陥の定義

  1. 画像を選択します。
  2. デフォルトの欠陥 [ジョブ FAIL] を設定します。
  3. 必要に応じて別の欠陥を追加し、それに対して想定される結果を定義します。

画像の選択

  1. 処理を開始するには、最初に [画像] グループボックスにある画像再生ボタンを使用して、画像を選択します。[次の画像] ボタンをクリックして、画像を進めます。

注意:　 TestRun では、[画像の選択] ステップで定義した画像が使用されます。

  2. [画像] グループボックスおよびスプレッドシートビューに画像が表示されます。 画像とその名前が含まれるフォルダが、画面上部のドロップダウンに表示されます。
  3. 以前に定義した欠陥に対して想定される結果も更新されます。

欠陥 [ジョブ FAIL] の想定される結果の設定

  1. デフォルトでは、欠陥 [ジョブ FAIL] が自動的に追加されて有効になります (チェックボックスがオンになります)。欠陥 [ジョブ FAIL] では、ジョブ全体がエラーを返すかどうかを決定するための想定される結果が定義されます。
  2. 欠陥 [ジョブ FAIL] を定義するには、[欠陥] グループボックスで、「次の場合、欠陥　"ジョブ FAIL"　が存在します」テキストの下にあるドロップダウンメニューを使用し、該当するシンボリックタグを選択します (デフォルトでは、「<ジョブ PASS/FAIL>」が選択されています)。[ジョブ FAIL] はシンボリックタグではありませんが、[<ジョブ PASS/FAIL>] のセルとして設定されたセルをテストします。
  3. 選択したシンボリックタグの [テストタイプ] ドロップダウンメニューを適切に設定します。

別の欠陥の追加および想定される結果の定義

  1. [追加] ボタンをクリックします。
  2. デフォルトの名前が「欠陥」である欠陥が追加されます。デフォルトでは、新しく追加した欠陥が有効にされます (チェックボックスがオンになります)。

注意:　 既に欠陥が追加されており、デフォルトの名前のままである場合、TestRun は名前の数値を 1 つ増加させます (例えば、「Defect01」、「Defect02」など)。[名前の変更] ボタンをクリックして、デフォルトの名前を編集し、欠陥にわかりやすい名前を割り当てます。

  3. [欠陥] グループボックスで、「次の場合欠陥　"欠陥"　が存在します」テキストの下にあるドロップダウンメニューを使用し、該当するシンボリックタグを選択します。
  4. 選択したシンボリックタグの [テストタイプ] ドロップダウンメニューを適切に設定します。
  5. 必要に応じて、オンにしたエディットコントロールを使用し、テストを設定します。
  6. 必要に応じて、手順 1 ～ 4 を繰り返し、欠陥を追加します。

欠陥の編集

  1. リストから欠陥を選択します。
  2. [欠陥] グループボックスで、「次の場合欠陥 "(欠陥名)" が存在します」テキストの下にあるドロップダウンメニューを使用し、該当するシンボリックタグを選択します。
  3. 選択したシンボリックタグの [テストタイプ] ドロップダウンメニューを適切に設定します。

[ハードウェアテスト-アクションのセットアップ]

TestRun でテストを行い、In-Sight ビジョンシステムが正しい画像を取り込んでいるかを確認するには、最初にそれに応じてジョブの状態を設定する必要があります。この画面では、テストを行う前にパラメータ設定を有効にして、ビジョンシステムが正しい画像を取り込んでいるかを確認します。

ジョブを設定して TestRun のハードウェアテストを実行

  1. [シンボル] 列のリストからパラメータ設定を選択します。必要に応じて、プラス記号をクリックし、リストを展開します。

注意:　設定を選択すると、スプレッドシートでそのパラメータがハイライトされます。

  2. 設定を有効にするには、設定の横にあるチェックボックスをオンにします。[アクションのセットアップ] 列に設定が自動的に入力されます。
  3. 設定を有効にして [アクションのセットアップ] 列でその設定を選択すると、2 つの列の下に設定のエディットコントロールが表示されます。
  4. 必要に応じて、設定を調整します。
  5. 設定が複数個ある場合は、[上に移動]/[下に移動] ボタンを使用して、設定を実行順に並べます。TestRun では、この画面に表示されている順序に従って、設定操作を実行します。
  6. [次へ] ボタンをクリックして、TestRun の設定を続行します。
  7. [アクションのセットアップ] のプログラムを実行したら、TestRun は自動的に In-Sight ビジョンシステムをトリガし、画像を取り込みます。

[ハードウェアテスト - テスト]

このステップでは、テストを設定して、取り込んだ画像が正しいかを確認します。TestRun では、特定のジョブパラメータとその想定される結果を画像と関連付けることによって、画像が正しい結果を生成しているかどうかを判別することができます。例えば、レンズが汚れているために、画像が不鮮明、傷がついている、または暗くなっているとします。この場合、In-Sight ビジョンシステムに不用意に接触すると、その視野 (FOV) が変わることがあります。または、ビジョンシステムに接続されているレンズのフォーカスや絞りが、振動によって時間とともに変化することがあります。このような状態をテストするには、ジョブパラメータを想定される結果に関連付けます。想定される結果が返されない場合は、画像処理に問題が発生しています。

FOV が正しいかどうかを判別するには、部品の特徴 (または、部品がない場合の背景) を使用します。画像に特徴が存在しない場合、FOV が変わっています。部品が検査前にフィクスチャに置かれている場合は、フィクスチャの 4 つの隅の特徴を使用して適切な FOV を設定できます。特徴がない場合、FOV が変わっています。または、特徴が近すぎるか離れすぎている場合は、In-Sight ビジョンシステムと FOV の間の距離が変化している可能性があります。特徴が矩形を形成しているが、四辺形ではない場合、ビジョンシステムに接触して軸がずれ、遠近歪みが生じている可能性があります。

TestRun ビジョンシステムの画像取り込みテストの定義

  1. 画像を取り込みます。
  2. 必要に応じて、テストを追加し、設定します。

画像の取り込み

  1. [画像] グループボックスの下の [手動トリガ] ボタンをクリックし、In-Sight ビジョンシステムから画像を取り込みます。
  2. [画像] グループボックスおよびスプレッドシートビューに画像が表示されます。

注意:　 または、[画像のロード] ボタンをクリックして [開く] ダイアログを表示し、画像ファイルに移動します。

テストの追加と設定

  1. [ハードウェアテスト] グループボックスで、[追加] ボタンをクリックします。
  2. デフォルトの名前が「テスト」というテストが追加され、[テスト] グループボックスに置かれます。ここで、設定を行うことができます。

注意:　 既にテストが追加されており、デフォルトの名前のままである場合、TestRun は名前の数値を 1 つ増加させます (例えば、「Test01」、「Test02」など)。[名前変更] ボタンをクリックして、デフォルトの名前を編集し、テストにわかりやすい名前を割り当てます。

  3. [テスト] グループボックスで、「次の場合欠陥 "xxx" が存在します」テキストの下にあるドロップダウンメニューを使用し、該当するシンボリックタグを選択します。
  4. 選択したシンボリックタグの [テストタイプ] ドロップダウンメニューを適切に設定します。
  5. 必要に応じて、手順 1 ～ 4 を繰り返し、テストを追加します。

クリーンアップアクション

テストが完了したら、それに応じてジョブの状態を設定する必要があります。このステップでは、TestRun がテストを完了した後、ジョブを目的の状態に設定するのに必要な設定操作を定義します。

TestRun を設定して、テスト後にジョブパラメータを設定

  1. [シンボル] 列のリストからパラメータ設定を選択します。必要に応じて、プラス記号をクリックし、リストを展開します。

注意:　設定を選択すると、スプレッドシートでそのパラメータがハイライトされます。

  2. 設定を有効にするには、設定の横にあるチェックボックスをオンにします。[アクションのセットアップ] 列に設定が自動的に入力されます。
  3. 設定を有効にして [アクションのセットアップ] 列でその設定を選択すると、2 つの列の下に設定のエディットコントロールが表示されます。
  4. 必要に応じて、設定を調整します。
  5. 設定が複数個ある場合は、[上に移動]/[下に移動] ボタンを使用して、設定を実行順に並べます。TestRun では、この画面に表示されている順序に従って、設定操作を実行します。
  6. [閉じる] ボタンをクリックして、TestRun の設定を完了します。
  7. [TestRun セットアップ] ダイアログを閉じたら、[パレット] の [TestRun] タブにある　 [image] [実行] アイコンをクリックして、TestRun テストを実行します。

注意:　 [TestRun セットアップ] ダイアログの設定を完了したら、[パレット] で使用できるすべてのボタンが表示された右クリックメニューが選択できるようになります。さらに、テストの特定のセクションからテストを実行する機能も使用できるようになります (例えば、ジョブテストを実行せずにハードウェアテストから開始する、など)。


マウスの操作

操作とショートカット

In-Sight Explorer GUI リファレンス

次の表に、In-Sight Explorer インタフェースで使用されるマウスの一般的な操作を示します。

操作

[In-Sight ネットワーク]

[In-Sight のファイル]

スプレッドシート

左クリック

最上位のIn-Sight センサを左クリックした場合、[In-Sight ノファイル] ペインが表示されていればそのペインの最上位レベルに戻ります。このとき、[In-Sight のファイル] ペインには、Explorer ホストテーブルのエントリを含むすべての In-Sight センサがフォルダ [image] アイコン とともにリスト表示されます。

In-Sight センサ [image] やエミュレータ [image] を左クリックした場合、[In-Sight のファイル] ペインには、そのセンサに保存されている全ファイルのリストが表示されます。

リストからファイルまたはセンサを選択します。

スプレッドシートのセルを選択して、アクティブセルにします。

項目を選択したり、開いたりします。

値に加えられた変更を確定します。

対話型グラフィックスを調整します。

右クリック

最上位のIn-Sight センサを右クリックした場合は、 Closed ショートカットメニューを表示します。このメニューを使用すると、[In-Sight ネットワーク] の表示内容を更新したり、Explorer ホストテーブルにアクセスしたりすることができます。

In-Sight センサ [image] またはエミュレータ [image] を選択すると、 Closed センサ用のショートカットメニューが表示され、センサのスプレッドシートビューまたはセンサステータスビューを開いたり、ファイルの貼り付け、レポートの作成、ファイルのバックアップ、ファイルのリストア、センサのプロパティの表示を実行したりできます。

[In-Sight ネットワーク] ペインで、最上位のIn-Sight センサが選択されている場合、[In-Sight のファイル] ペインも最上位レベルに戻ります。このとき、フォルダ [image] アイコンで示される In-Sight センサを右クリックすると、 Closed [開く] メニューが表示されて、選択したセンサ上のすべてのファイルを確認することができます。

フォルダ [image] アイコン以外を右クリックすると、 Closed [表示] メニューが表示され、[縮小版]、[アイコン]、[一覧]、[詳細] 表示を選ぶことができます。

[In-Sight ネットワーク] ペインで In-Sight センサ [image] またはエミュレータ [image] が選択されている場合、[In-Sight のファイル] ペインには、そのセンサに保存されている全ファイルのリストが表示されます。ファイルを選択しない場合は、 Closed センサ用のショートカットメニュー が表示され、[縮小版]、[アイコン]、[一覧]、[詳細] 表示の選択、ファイルの貼り付け、レポートの作成、ファイルのバックアップ、ファイルのリストアをセンサ上で実行できます。

ファイルアイコンを右クリックすると、 Closed ファイル用のショートカットメニューが表示されて、ファイルのコピー、削除、または名前の変更ができます。

ショートカットメニューを表示します。

左ダブルクリック

In-Sight センサ [image] やエミュレータ [image] をダブルクリックすると、そのスプレッドシートビューが開きます。

[In-Sight ネットワーク] ペインで、最上位のIn-Sight センサが選択されている場合、[In-Sight のファイル] ペインも最上位レベルに戻ります。このとき、フォルダ [image] アイコンで示される In-Sight センサを左ダブルクリックすると、そのセンサに保存されている全ファイルのリストが表示されます。

スプレッドシートのセルを選択し、セルにボタンまたはエディットコントロールが含まれていない場合は、そのセル内で、またはプロパティシートを使用して、セルの式を編集します。セルにボタンが含まれている場合は、最初のクリックでボタンがアクティブになります。セルにエディットコントロールが含まれている場合は、最初のクリックでセルの値の編集が開始されます。

行または列の区切り線をダブルクリックした場合は、行または列が内容に合わせて自動的にサイズ変更されます。

左クリックしながらドラッグ

なし

In-Sight センサ間でファイルをコピーします。ファイルは、[ファイル] ペインから、[In-Sight ネットワーク] に一覧されている任意の In-Sight センサにドラッグできます。

ジョブファイルや画像ファイルは、開いているスプレッドシートビューにドラッグできます。この操作により、ジョブや画像がアクティブなジョブや画像として、ドラッグ先のセンサにロードされます。

ブロック編集用に、セル、行、または列の範囲を選択します。行または列の区切り線をドラッグした場合は、行または列がサイズ変更されます。

右クリックしながらドラッグ

なし

In-Sight センサ間でファイルをコピーします。ファイルは、[ファイル] ペインから、[In-Sight ネットワーク] に一覧されている任意の In-Sight センサにドラッグできます。

ジョブファイルや画像ファイルは、開いているスプレッドシートビューにドラッグできます。この操作により、ジョブや画像がアクティブなジョブや画像として、ドラッグ先のセンサにロードされます。

ブロック編集用に、セル、行、または列の範囲を選択します。右クリックショートカットメニューがすぐに表示されます。

関連項目

キーボードのショートカット


関数リファレンス

In-Sight 関数リファレンス

In-Sight 関数リファレンス

アプリケーションは、スプレッドシートのセルに数式を挿入することによって In-Sight Explorer 内で設定されます。これらの数式は [関数の挿入] ダイアログで提供される関数を使用して生成されます。In-Sight 関数は次のカテゴリに分類されます。

  • ビジョンツール: 画像の特徴を抽出し、処理します。
  • 幾何・計測: 円、点、および線分などの標準幾何図形構造体の距離を計算します。
  • [グラフィックス]: 対話型コントロールとチャートやラベルなどでスプレッドシートと画像表示をカスタマイズします。
  • 数値演算: 標準的な数学演算、論理演算、統計、および三角関数を使用して数式を作成します。
  • テキスト: 表示および通信用の英数字データ文字列をフォーマットします。
  • 座標補正: 特徴の位置および距離を画像、フィクスチャ、ワールド座標系の間で変換します。
  • 入出力: In-Sight とリモートデバイスとの間で通信する方法を制御します。
  • クロックドデータ: 指定されたイベントで値の合計を実行し続けます。
  • データアクセス: データ構造体から個々の値を抽出します。
  • 構造体: 別の関数で使用できるグラフィックス、領域、およびフィクスチャを作成します。

上記カテゴリの関数に加えて、AcquireImage 関数はすべてのスプレッドシートジョブに必要なため、スプレッドシートのセル A0 に自動的に挿入されます。

In-Sight® Explorer 4.9.0 ヘルプ (Cognex Directory Server 非表示版)

Revision: 5.6.0.17

03/22/2018 16:05:58

Copyright © 1999-2013

Cognex Corporation

All Rights Reserved.


ブロブ

ブロブ関数

ビジョンツール

In-Sight 関数リファレンス

マシンビジョンの用語では、2 次元の可変的な形状で同じ階調を持つ、結合されたピクセルのグループを「ブロブ」と呼んでいます。画像からこれらのブロブを抽出し、対象領域 (ROI) 内でそれらを検出し、特定の条件に基づいてソートするプロセスを、ブロブ解析と呼びます。

In-Sight センサは、ブロブツールの次の関数を使用してブロブ解析を実行します。

  • ExtractBlobs 関数: 画像内のブロブを検出し、検出したブロブのデータを抽出します。この関数は、ブロブ解析の最初の手順として使用されます。
  • FindBlobs 関数: 特定の条件と、検出したブロブがその条件にどの程度一致するかに基づいて、抽出したブロブのリストをフィルタ処理およびソートします。
  • SortBlobs 関数: フィクスチャに対するブロブの相対位置に基づいて一連のブロブをソートします。

注意: FindBlobs 関数と SortBlobs 関数はどちらも、 [image] データ構造体を参照する必要があります。このデータ構造体は、ExtractBlobs 関数、FindBlobs 関数、または SortBlobs 関数を使用して作成できます。

In-Sight ブロブツールについて

ブロブ解析

In-Sight ブロブツールは、連結性解析とも呼ばれるタイプのブロブ解析を実行します。この解析手順では、ExtractBlobs 関数が使用されます。ExtractBlobs 関数がスプレッドシートに挿入され、そのパラメータが設定されると、関数は最初に ROI を分割して、解析を開始します。

このプロセスで、ROI 内のピクセルは、グレースケールしきい値に基づいて、ブロブと背景の 2 つのカテゴリに分類されます。このしきい値により、しきい値を下回るピクセルは黒として、しきい値を上回るピクセルは白として分類されるように、ピクセルが分割されます。

注意: しきい値は、ExtractBlobs 関数のしきい値パラメータの自動設定や、試行錯誤による手動設定を使用して決定したり、ヒストグラム関数の計算結果を参照して決定したりすることもできます。

このプロセスの実行中に、ピクセルが調べられ、それらが隣接するピクセルと Closed 結合しているかどうかが判定されます。ブロブピクセルは、その左、右、上、下、または斜め方向のいずれかで、近似値を持つ別のピクセルに接触している場合に、隣接ピクセルに結合していると判定されます。背景ピクセルは、その左、右、上、または下方向のいずれかで、近似値を持つ別のピクセルに接触している場合に、隣接ピクセルに結合しているとみなされます。

次の図は、In-Sight ブロブツールが画像を解析する方法を示しています。この例では、画像をブロブピクセルと背景ピクセルに分割するために、グレースケールしきい値として 150 が使用されています。グレースケール値が 150 以上のピクセルはすべて白、つまり背景ピクセルとして分類され、グレースケール値が 150 未満のピクセルはすべて黒、つまりブロブピクセルとして分類されます。

画像からブロブが抽出されると、ExtractBlobs 関数が、 [image] データ構造体と、抽出したブロブに関するデータを含む結果テーブルを自動的に作成します。返された情報は、FindBlobs 関数と SortBlobs 関数が、それぞれの物理特性と位置に基づいて、検出されたそのほかのブロブをフィルタ処理およびソートするために利用できます。

FindBlobs 関数は、ROI 内のブロブを解析し、検出したブロブが指定された条件に一致しているかどうかを判定します。条件を満たしているブロブが返され、条件にどれだけ一致しているかに従って降順で得点が与えられます。

SortBlobs 関数は、ROI 内のブロブを解析し、ブロブのフィクスチャとの相対位置を判定します。これは、あるブロブに関して別のブロブとの相対位置を調べる際に有効です。ExtractBlobs 関数の 1 回の使用で、1 つの ROI 内における多数のブロブを一度に検出できます。

ブロブ解析の用途

次の条件に当てはまる場合に、In-Sight ブロブツールの使用が最適です。

  • 2 次元の対象物の画像であること。
  • 白ピクセルと暗ピクセル間のコントラストが高い画像であること。

注意: In-Sight ブロブツールはグレースケール画像のみを解析します。すべてのカラー画像は、自動的にグレースケール値に変換されます。

ブロブ解析を使用する理由

ブロブ解析は、次の条件を満たすアプリケーションで非常に有効です。

  • 特定方向の部品の幅を調べるために直径や正方形の寸法を測定するなどの、簡易計測アプリケーション。
  • ブロブツールを使用しておおよそのフィクスチャを迅速に検出し別のツールに渡す、初期位置検出アプリケーション。
  • ブロブツールを使用して画像内にブロブが存在するかしないかを判定する、存在の有無を調べるアプリケーション。
  • 面積や周囲長などの特性に基づいてブロブをカウントし、ソートするようにブロブツールを設定できる、計数アプリケーション。

ブロブ解析の実行方法

In-Sight ブロブツールでは、次の 3 つの手順でブロブ解析プロセスを実行できます。

手順 1 - 画像を調べ、画像とその状態がブロブ解析の条件を満たしているかどうかを判定します。

手順 2 - ExtractBlobs 関数をスプレッドシートに挿入し、状況に応じてパラメータを設定して、画像内のブロブを検出および識別します。

手順 3 - FindBlobs 関数または SortBlobs 関数をスプレッドシートに挿入し、それぞれブロブの物理特性または位置に基づいて、検出したブロブのリストをフィルタ処理します。


ExtractBlobs 関数

ExtractBlobs 関数 |
ビジョンツール → ブロブ | In-Sight 関数リファレンス

ExtractBlobs 関数は、対象領域 (ROI) において、「連結性解析」と呼ばれる一種のブロブ解析を実行します。この解析の間、ROI に含まれるピクセルは、ブロブと背景の 2 つのカテゴリに分類されます。分類はグレースケールしきい値に基づいて行われ、このしきい値を下回るピクセルはすべて黒カテゴリに、上回るピクセルは白カテゴリに入ります。

同様に、類似した値を持つピクセルは、その「色」、および周囲のピクセルとの「接触」の有無を基準にグループ化されます。背景ピクセルは、左側または右側にあるピクセルと接触している場合は、周囲のピクセルと接続できます。 一方、ブロブピクセルを周囲のピクセルと Closed 接続 できるのは、左、右、上、下、または斜めにあるピクセルと接触している場合です。

処理の完了した画像は、ブロブまたは背景ピクセル値に分類されます。ROI 内のブロブは、画像内での位置 (列、行の座標)、面積、周囲長、拡散、伸長などの物理的な特性と割り当てられた値によって識別されます。抽出されたブロブのデータは、 [image] データ構造体に格納、報告されます。

この関数は、ブロブ分析の第 1 ステップとなります。FindBlobs と SortBlobs は両方とも最終的に、直接またはセル依存関係の連鎖の中で、ExtractBlobs 関数の [image] データ構造体を参照します。

ExtractBlobs 関数の入力パラメータ

ExtractBlobs 関数の結果出力

ExtractBlobs データアクセス関数

ExtractBlobs 関数の例

ExtractBlobs 関数関数の入力パラメータ

ExtractBlobs 関数(

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

外部領域,

ソートする数,

しきい値,

穴を埋める,

境界ブロブ,

ブロブの色,

背景色,

最小面積,

最大面積,

表示

)

画像

このパラメータは、スプレッドシートで [image] データ構造体を含むセルを参照する必要があります。デフォルトでは、このパラメータは、AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールのグラフィックス関数や、座標補正関数により返された、そのほかの [image] データ構造体も参照できます。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 (デフォルト = 0) | 画像座標での行オフセット
列 (デフォルト = 0) | 画像座標での列オフセット
角度 (デフォルト = 0) | 画像座標系での方位角

領域

これは対象領域 (ROI) とも呼ばれ、ブロブ解析の対象となる画像の領域を表します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意:　フィクスチャおよび 領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

外部領域

このパラメータは、Annulus、Circle、Region、EditAnnulus、EditCircle、EditCompositeRegion、EditPolygon、または EditRegion の各関数を含むスプレッドシートセルを参照できます。このパラメータを使用すると、ExtractBlobs ツールは、[領域] と [フィクスチャ] の設定を無視し、参照先領域に指定された画像領域を検査します。EditCompositeRegion 関数コントロールを参照している場合は、検査領域がさまざまな形状の混合となることがあります。合成領域内の各形状は、検査領域に対して加算または減算 (マスキング) されるように割り当てることができます。

ソートする数

返されるブロブの数を指定します。

0 | ブロブの色/背景色、および 最小面積/最大面積パラメータで指定された色やサイズの設定に合うすべてのブロブを返します。
1 ～ 4096 (デフォルト = 1) | ブロブの色/ 背景色 、および最小面積/ 最大面積パラメータで指定された色やサイズの設定に合うブロブを、指定された数を上限として返します。上限値を上回る数のブロブが検出された場合、面積の大きい順に選択されます。

注意:　 [ソートする数] パラメータの値が 0 より大きい場合、ExtractBlobs 関数は、 [image] データ構造体内の最初の 10 個のブロブに対応する最大 10 のエントリを含んでいる結果テーブルを自動的に挿入します。より多くのエントリを表示する場合は、最後の行をコピーし、追加の行を末尾に貼り付けることによりテーブルを拡張することができます。 新しく貼り付けた行のインデックスの値を必ず繰り上げて、正しいブロブがインデックスされるようにしてください。

しきい値

ブロブを背景と区別するために使用されるグレースケール値を指定します。この値を決定するには、ExtractBlobs 関数の自動設定 (デフォルト設定) を使用するか、試行錯誤しながら手動設定するか、またはヒストグラム関数の計算結果への参照として設定します。

-1 (デフォルト) | この関数は、しきい値を画像のグレースケール統計に基づいて自動的に評価、計算します。
0 ～ 255 | グレースケールのしきい値を 0 から 255 の範囲で指定します。

穴を埋める

穴に累積された統計を処理する 2 つの方法のうちの 1 つを指定します。

Closed 例

次のブロブの形は、ブロブ統計全体で穴の効果を有効または無効にしたときの効果を表しています。

上側が [穴を埋める] チェックボックスを OFF にしたときの結果で、下側が ON のときの結果です。[穴を埋める] チェックボックスを OFF にすると、面積の値が小さくなることがわかります。

0 = OFF (デフォルト) | ブロブ統計全体における穴の効果を有効にします。例えば、ブロブに穴を追加すると、ブロブの面積が減少します。
1 = ON | ブロブ統計全体における穴の効果を無効にします。例えば、ブロブに穴を追加しても、ブロブの面積は影響を受けません。

境界ブロブ

ROI 境界線を横切るブロブを処理する 2 つの方法のうちの 1 つを指定します。

0 = OFF | ROI 境界線と交差するブロブを除外します。ROI 境界線と交差するブロブは一切、最終的な [image] データ構造体には含まれません。
1 = ON (デフォルト) | ROI 境界線と交差するブロブが含まれます。ROI 境界線と交差するすべてのブロブは、最終的な [image] データ構造体に含まれます (ただし、同時に、ブロブの色/ 背景色、および最小面積/最大面積 パラメータの設定も満たしている場合)。

ブロブの色

ブロブの色を指定します。

0 = 黒 | 指定されたグレースケールしきい値を下回るブロブのみ返されます。
1 = 白 | 指定されたグレースケールしきい値を上回るブロブのみ返されます。
2 = 任意 (デフォルト) | ブロブの色に対する条件はありません。

背景色

取り込まれた画像の背景色を指定します。背景色がブロブの色と異なる場合、8 方向の連結性解析が実行されます。 背景色とブロブの色が一致する場合は、4 方向の連結性解析が行われます。

0 = 黒

1 = 白 (デフォルト)

最小面積

返されるブロブすべてに対する最小面積の制限をピクセル数で指定します (0 ～ 900000。デフォルト = 100)。最小面積の値を上回る面積を持つブロブのみ返されます。

最大面積

返されるブロブすべてに対する最大面積の制限をピクセル数で指定します (0 ～ 900000。デフォルト = 100000)。最大面積の値を下回る面積を持つブロブのみ返されます。

表示

画像上の ExtractBlobs グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | ExtractBlobs 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | ブロブの輪郭が常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域と抽出されたブロブのアウトラインの両方が常に表示されます。

ExtractBlobs 関数関数の結果出力

戻り値

画像から抽出されたブロブを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

結果

ExtractBlobs 関数を初めてセルに挿入すると、 Closed 結果テーブルがスプレッドシートに作成されます。ソートする数が 0 の場合、テーブルは GetNFound 関数のみで構成されます。ソートする数が 0 より大きい場合は、複数の関数が挿入され、ソートする数の行が最大になるブロブの結果テーブルが作成されます。

注意:　 [ソートする数] パラメータの値が 0 より大きい場合、ExtractBlobs 関数は、 [image] データ構造体内の最初の 10 個のブロブに対応する最大 10 のエントリを含んでいる結果テーブルを自動的に挿入します。より多くのエントリを表示する場合は、最後の行をコピーし、追加の行を末尾に貼り付けることによりテーブルを拡張することができます。 新しく貼り付けた行のインデックスの値を必ず繰り上げて、正しいブロブがインデックスされるようにしてください。

ExtractBlobs 関数データアクセス関数

ここでは、画像内のブロブに関する重要な統計情報を提供する関数について説明します。

次のデータアクセス関数が、ExtractBlobs [image] データ構造体結果テーブルを作成するためにスプレッドシートに自動挿入されます。

スプレッドシート名 | 関数名 | 説明
行 | GetRow(ブロブ, インデックス) | ブロブの重心の Y 座標 (行) を返します。 Closed 例
列 | GetCol(ブロブ, インデックス) | ブロブの重心の X 座標 (列) を返します。 Closed 例
角度 | GetAngle(ブロブ, インデックス) | ROI の中心に対するブロブの主軸の角度を返します。 Closed 例
カラー | GetColor(ブロブ, インデックス) | ブロブの色の値 (0 = 黒、1 = 白) を返します。
得点 | GetScore(ブロブ, インデックス) | ブロブが、FindBlobs 関数の条件にどの程度一致しているかを表します。
面積 | GetArea(ブロブ, インデックス) | ブロブの面積を返します (ピクセル単位)。 Closed 例 注意: ブロブに穴がある場合、面積の値は、[穴を埋める] チェックボックスが ON か OFF かによって異なります。
伸長 | GetElongation(ブロブ, インデックス) | ブロブのピクセルが、ブロブの重心からどの程度伸びているかを表す値を返します。例えば、円の伸長は 0 ですが、釘の伸長の値は大きくなります。 Closed 例
穴 | GetHoles(ブロブ, インデックス) | ブロブに含まれている穴の数を返します。
周囲長 | GetPerimeter(ブロブ, インデックス) | ブロブを囲む境界線の長さを返します。周囲長は、ブロブの境界線を形成するピクセルの外部エッジをカウントすることにより計算されます。 Closed 例
拡散 | GetSpread(ブロブ, インデックス) | ブロブのピクセルが、ブロブの重心からどの程度拡散しているかを表す値を返します。例えば、円形の対象物の拡散値は楕円形の対象物の場合よりも小さくなります。 Closed 例

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

しきい値 | GetThresh(ブロブ) | 画像のセグメント化に使用されたしきい値を返します。
検出数 | GetNFound(ブロブ) | 検出されたブロブの数を返します。
高さ | GetHigh(ブロブ, ブロブインデックス) | インデックス付きブロブの高さを返します。
幅 | GetWide(ブロブ, ブロブインデックス) | インデックス付きブロブの幅を返します。
最小行 | GetMinRow(ブロブ, インデックス) | 画像座標フレームの方向を向いた、ブロブの周りを囲む正方形の境界ボックスの一番上の行座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。
最小列 | GetMinCol(ブロブ, インデックス) | 画像座標フレームの方向を向いた、ブロブの周りを囲む正方形の境界ボックスの左端の列座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。
最大行 | GetMaxRow(ブロブ, インデックス) | 画像座標フレームの方向を向いた、ブロブの周りを囲む正方形の境界ボックスの一番下の行座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。
最大列 | GetMaxCol(ブロブ, インデックス) | 画像座標フレームの方向を向いた、ブロブの周りを囲む正方形の境界ボックスの左端の列座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。

ExtractBlobs 関数の例

分析される形状すべてが含まれるように、画像領域は最大化されました。この例では、ExtractBlobs データ構造体結果テーブルに返される情報と検出されたブロブとの関連性、また、後にこの情報を使用して、ブロブを特性に基づいてソートし、フィルタする方法を示します。

この例では、次の画像は、ExtractBlobs 関数の結果ページに返された値の意味を表すために使用されています。

ExtractBlobs 関数が、スプレッドシートの空のセルに挿入されました。形状に基づいて、 Closed ExtractBlobs 関数のプロパティシートのパラメータは次のように設定されました。

画像:　この例ではデフォルト設定が使用されていますが、ブロブを検出する前に画像から余分なノイズを除去する処理を行う NeighborFilter 関数により生成された [image] データ構造体など、このパラメータはどの [image] データ構造体でも参照できます。

フィクスチャ:　画像が静止していて、回転や移動をしないので、デフォルト設定を使用しました。ただし、ExtractBlobs 関数を使用して画像の移動処理を行う場合は、画像の範囲をフィクスチャに割り当てることを推奨します。

領域:　分析される形状すべてが含まれるように、画像領域を最大化しました。領域パラメータをクリックし、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

ソートする数:　6 個の形状があるので、ソートする数は 6 に設定しました。このパラメータは 0 に設定することも可能で、その場合、自動的に 6 個の形状が抽出されます。

しきい値:　デフォルト設定を使用して、グレースケールのしきい値を自動的に計算します。この画像では、グレースケール値の差は非常に顕著で、どのピクセルが暗く、どのピクセルが明るいかは明白です。微妙なグラデーションがかかり、しきい値の自動設定ではうまく値を分類できない場合は、HistHead 関数や HistTail 関数などのヒストグラム関数を使用して、画像のさまざまな領域のグレースケール濃度を判定します。

穴を埋める:　デフォルト設定が使用されます。このとき、ブロブにある穴が影響するため、穴の開いたブロブの全体の面積は小さくなります。[穴を埋める] チェックボックスを ON にすると、穴の面積が加算され、穴の開いたブロブの面積が大きくなります。

境界ブロブ:　デフォルト設定を使用しました。このとき、画像領域の境界線に触れているブロブも含まれます。この設定では、カメラ画像を左に移動して、円とダンベル形の図形を領域の左端と交差させたとき、これらの形状のうち、領域の境界線内に入っている部分はブロブとして抽出されます。このチェックボックスが OFF の場合、これらのブロブは処理されません。

最小面積/最大面積: デフォルト設定を使用しました。これらの設定によって、抽出中に領域内のブロブがフィルタされ、ブロブの最大面積と最小面積の設定に基づいて、そのブロブをブロブとして分類できるかどうかが判定されます。

表示:　デフォルト設定を使用しました。このとき、下の例にあるように、 [image] データ構造体を含むセルが選択されている場合だけ、結果のグラフィックスが表示されます。

ExtractBlobs プロパティシートの設定後、 [image] データ構造体と Closed 結果データテーブルが作成されます。

結果を見ると、すべての形状の面積はほとんど同じで、角度、伸長、周囲長などそのほかの値は大きなばらつきを示しています。結果テーブルに返された値は、FindBlobs 関数および SortBlobs 関数を使用したブロブのフィルタとソートに使用できます。例えば、FindBlobs 関数をスプレッドシートに挿入し、ExtractBlobs 関数を参照することができます。その後、FindBlobs 関数を使用し、ブロブの拡散に基づいて、ブロブをフィルタします。さらに、スプレッドシートに SortBlobs 関数を挿入すると、この関数はあらかじめ作成しておいた FindBlobs 関数を参照して、ブロブの X、Y 位置に基づいてブロブのリストをソートすることができるようになります。

関連項目

ブロブツールについて

ブロブデータアクセス関数

FindBlobs 関数

SortBlobs 関数

プロパティシートの使用方法


FindBlobs 関数

FindBlobs 関数 |
ビジョンツール → ブロブ | In-Sight 関数リファレンス

FindBlobs 関数は、 [image] データ構造体に返されるブロブをフィルタし、ソートするために使用されます。FindBlobs パラメータ設定を使用して、 [image] データ構造体で参照されるブロブと「理想的な」ブロブとの照合がどの程度厳密に行われるかを測定するための得点を計算する式が作成されます。このパラメータ設定に基づいて、FindBlobs 関数は指定された条件に一致するブロブのみ返します。

参照される [image] データ構造体内の各ブロブに、2 段階の解析が行われます。まず、個々の FindBlobs パラメータ設定により、特定のパラメータ値を評価する式が作成されます。例えば、角度の得点は、範囲と角度パラメータの角度の値の差を、範囲と参照されるブロブの角度の値の差で割り、重みの値をかけることによって計算されます。各得点を計算した後で、個々のパラメータの得点を合算し、これをそれぞれの重みパラメータの値の合計で割ります。その後、この得点をアクセプトしきい値と比較し、このブロブが指定された条件を満たしているかどうかが判定されます。

抽出されたブロブを FindBlobs 関数によりフィルタし、ソートすると、新しい [image] データ構造体と、これに付随する結果テーブルがスプレッドシートに自動挿入されます。結果テーブルは、検出されたブロブが設定された条件にどの程度一致するかにより、降順でソートされます。

FindBlobs 関数は、欠陥を検出するために特徴を分類するときに非常に有効です。例えば、表面の傷を検出するジョブの場合、より大きい伸長の値を持つブロブのみを返すように FindBlobs 関数を設定できます。また、ぎざぎざのあるエッジの検出を目的とするジョブでは、より大きい周囲長や拡散の値を持つブロブのみを返すように設定できます。

FindBlobs 関数の入力パラメータ

FindBlobs 関数の結果出力

FindBlobs 関数のデータアクセス関数

FinbBlobs 関数の例

FindBlobs 関数の入力パラメータ

FindBlobs (

ブロブ ,

検出する数 ,

アクセプトしきい値,

角度.角度 ,

角度.範囲 ,

角度.重み ,

面積.面積 ,

面積.範囲 ,

面積.重み ,

伸長.伸長 ,

伸長.範囲 ,

伸長.重み ,

穴.数 ,

穴.範囲 ,

穴.重み ,

周囲長.周囲長 ,

周囲長.範囲 ,

周囲長.重み ,

拡散.拡散 ,

拡散.範囲 ,

拡散.重み ,

表示

)

ブロブ

このパラメータは、フィルタおよびソートされる [image] データ構造体を含むスプレッドシートのセルを参照します。

検出する数

このパラメータは、返されるブロブの最大数 (1 ～ 4096、デフォルト = 3) を指定します。画像内に、アクセプトしきい値の設定を超える得点を持つブロブが、指定した検出数よりも多く存在する場合、最も得点の高いブロブが選択されます。

注意: [ソートする数] パラメータの値が 0 より大きい場合、ExtractBlobs 関数は、 [image] データ構造体内の最初の 10 個のブロブに対応する最大 10 のエントリを含んでいる結果テーブルを自動的に挿入します。より多くのエントリを表示する場合は、最後の行をコピーし、追加の行を末尾に貼り付けることによりテーブルを拡張することができます。新しく貼り付けた行のインデックスの値を必ず繰り上げて、正しいブロブがインデックスされるようにしてください。

アクセプトしきい値

許容できる一致最低得点を指定します (0 ～ 100、デフォルト = 10)。FindBlobs 関数はアクセプトしきい値を超える一致得点を持つブロブのみを返します。一致得点は、次の式を使用して計算されます。

(角度の得点＋面積の得点＋伸長の得点＋穴の得点＋周囲長の得点＋拡散の得点) ÷パラメータの重みの値の合計 × 100

角度

このパラメータは、検出されたブロブの理想的な角度の得点を計算するための式の設定に使用されます。

Closed 角度の得点を求める式

FindBlobs 関数の角度の得点は、次の式を使用して計算されます。

角度の得点 ＝ [(範囲＋角度) － BlobAngleVal]÷範囲 × WeightVal

BlobAngleVal = 参照されるブロブの出力された角度の値

WeightVal = 重み ÷ (すべての重み値の合計) ×100

角度 | ブロブの理想角度 (-360 ～ 360、デフォルト = 0)
範囲 | 類似性得点付けにおけるブロブ角度の許容値 (0 ～ 360、デフォルト = 0)
重み | 類似性得点付けにおけるブロブ角度の相対重要度 (0 ～ 100、デフォルト = 0)

面積

このパラメータは、検出されたブロブの理想的な面積の得点を計算するための式の設定に使用されます。

Closed 面積の得点を求める式

FindBlobs 関数の面積の得点は、BlobAreaVal および 面積値により、次の式を使用して計算されます。

BlobAreaVal が面積値より大きい場合は、次の式を使用します。

面積の得点 ＝ [(範囲＋面積) － BlobAreaVal] ÷範囲 × WeightVal

BlobAreaVal が面積値より小さい場合は、次の式を使用します。

面積の得点 = [BlobAreaVal - (面積 - 範囲)] ÷ 範囲 × WeightVal

BlobAreaVal = 参照されるブロブの出力された面積の値

WeightVal = 重み ÷ (すべての重み値の合計) ×100

面積 | ブロブのピクセル単位の理想面積 (0 ～ 1920000、デフォルト = 1000)
範囲 | 類似性得点付けにおけるブロブ面積の許容値 (0 ～ 1920000、デフォルト = 20000)
重み | 類似性得点付けにおけるブロブ面積の相対重要度 (0 ～ 100、デフォルト = 50)

伸長

このパラメータは、検出されたブロブの理想的な伸長の得点を計算するための式の設定に使用されます。

Closed 伸長の得点を求める式

FindBlobs 関数の伸長の得点は、次の式を使用して計算されます。

伸長の得点 ＝ [(範囲 ＋ 伸長) － BlobElongationVal] ÷ 範囲 × WeightVal

BlobElongationVal = 参照されるブロブの出力された伸長の値

WeightVal = 重み ÷ (すべての重み値の合計) ×100

伸長 | ブロブの理想伸長 (0 ～ 1920000、デフォルト = 1)
範囲 | 類似性得点付けにおけるブロブ伸長の許容値 (0 ～ 1920000、デフォルト = 2)
重み | 類似性得点付けにおけるブロブ伸長の相対重要度 (0 ～ 100、デフォルト = 50)

穴

このパラメータは、検出されたブロブの理想的な穴の得点を計算するための式の設定に使用されます。

Closed 穴の得点を求める式

FindBlobs 関数の穴の得点は、次の式を使用して計算されます。

穴の得点 ＝ [(範囲 ＋ 数) － BlobHolesVal] ÷ 範囲 × WeightVal

BlobHolesVal = 参照されるブロブの出力された穴の値

WeightVal = 重み ÷ (すべての重み値の合計) ×100

数 | ブロブの穴の理想数 (0 ～ 10000、デフォルト = 0)
範囲 | 類似性得点付けにおけるブロブの穴の許容数 (0 ～ 10000、デフォルト = 2)
重み | 類似性得点付けにおけるブロブの穴の数の相対重要度 (0 ～ 100、デフォルト = 0)

周囲長

このパラメータは、検出されたブロブの理想的な周囲長の得点を計算するための式の設定に使用されます。

Closed 周囲長の得点を求める式

FindBlobs 関数の周囲長の得点は、次の式を使用して計算されます。

周囲長の得点 ＝ [(範囲 ＋ 周囲長) － BlobPerimeterVal] ÷ 範囲 × WeightVal

BlobPerimeterVal = 参照されるブロブの出力された周囲長の値

WeightVal = 重み ÷ (すべての重み値の合計) ×100

周囲長 | ブロブの理想周囲長 (0 ～ 100000、デフォルト = 1000)
範囲 | 類似性得点付けにおけるブロブ周囲長の許容値 (0 ～ 100000、デフォルト = 10000)
重み | 類似性得点付けにおけるブロブ周囲長の相対重要度 (0 ～ 100、デフォルト = 50)

拡散

このパラメータは、検出されたブロブの理想的な拡散の得点を計算するための式の設定に使用されます。

Closed 拡散の得点を求める式

FindBlobs 関数の拡散の得点は、次の式を使用して計算されます。

拡散の得点 ＝ [(範囲 ＋ 拡散) － BlobSpreadVal] ÷ 範囲 × WeightVal

BlobSpreadVal = 参照されるブロブの出力された拡散の値

WeightVal = 重み ÷ (すべての重み値の合計) ×100

拡散 | ブロブの理想拡散 (0 ～ 1920000、デフォルト = 1)
範囲 | 類似性得点付けにおけるブロブ拡散の許容値 (0 ～ 1920000、デフォルト = 2)
重み | 類似性得点付けにおけるブロブ拡散の相対重要度 (0 ～ 100、デフォルト = 50)

表示

画像上の FindBlobs グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | FindBlobs 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | ブロブの輪郭が常に表示されます。

FindBlobs 関数の結果出力

戻り値 | 得点によってソートされ、一致したブロブを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | FindBlobs 関数を初めてセルに挿入すると、 Closed 結果テーブルがスプレッドシートに作成されます。 注意: [ソートする数] パラメータの値が 0 より大きい場合、ExtractBlobs 関数は、 [image] データ構造体内の最初の 10 個のブロブに対応する最大 10 のエントリを含んでいる結果テーブルを自動的に挿入します。より多くのエントリを表示する場合は、最後の行をコピーし、追加の行を末尾に貼り付けることによりテーブルを拡張することができます。新しく貼り付けた行のインデックスの値を必ず繰り上げて、正しいブロブがインデックスされるようにしてください。

FindBlobs 関数のデータアクセス関数

次のデータアクセス関数は、FindBlobs [image] データ構造体結果テーブルを作成するためにスプレッドシートに自動挿入されます。

スプレッドシート名 | 関数名 | 説明
行 | GetRow(ブロブ, インデックス) | ブロブの重心の Y 座標 (行) を返します。 Closed 例
列 | GetCol(ブロブ, インデックス) | ブロブの重心の X 座標 (列) を返します。 Closed 例
角度 | GetAngle(ブロブ, インデックス) | ROI の中心に対するブロブの重心の角度を返します。 Closed 例
色 | GetColor(ブロブ, インデックス) | ブロブの色の値 (0 = 黒、1 = 白) を返します。
得点 | GetScore(ブロブ, インデックス) | ブロブが、FindBlobs 関数の条件にどの程度一致しているかを表します。
面積 | GetArea(ブロブ, インデックス) | ブロブの面積をピクセル単位で返します。 Closed 例 注意: ブロブに穴がある場合、面積の値は、[穴を埋める] チェックボックスがオンかオフかによって異なります。
伸長 | GetElongation(ブロブ, インデックス) | ブロブのピクセルが、ブロブの重心からどの程度伸びているかを表す値を返します。例えば、円の伸長は 0 ですが、釘の伸長の値は大きくなります。 Closed 例
穴 | GetHoles(ブロブ, インデックス) | ブロブに含まれている穴の数を返します。
周囲長 | GetPerimeter(ブロブ, インデックス) | ブロブを囲む境界線の長さを返します。周囲長は、ブロブの境界線を形成するピクセルの外部エッジをカウントすることにより計算されます。 Closed 例
拡散 | GetSpread(ブロブ, インデックス) | ブロブのピクセルが、ブロブの重心からどの程度拡散しているかを表す値を返します。例えば、円形の対象物の拡散値は楕円形の対象物の場合よりも小さくなります。 Closed 例

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

しきい値 | GetThresh(ブロブ) | 画像のセグメント化に使用されたしきい値
検出数 | GetNFound(ブロブ) | 検出されたブロブの数
最小行 | GetMinRow(ブロブ, インデックス) | 画像座標フレームの方向を向いた、ブロブの周りを囲む正方形の境界ボックスの一番上の行座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。
最小列 | GetMinCol(ブロブ, インデックス) | 画像座標空間の方向を向いた、参照されたブロブの周りを囲む正方形の境界ボックスの左端の列座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。
最大行 | GetMaxRow(ブロブ, インデックス) | 画像座標フレームの方向を向いた、ブロブの周りを囲む正方形の境界ボックスの一番下の行座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。
最大列 | GetMaxCol(ブロブ, インデックス) | 画像座標空間の方向を向いた、参照されたブロブの周りを囲む正方形の境界ボックスの左端の列座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。

FindBlobs 関数の例

FindBlobs 関数は、 [image] データ構造体に返されるブロブをフィルタし、ソートするために使用されます。この例では、ブロブのリストを調べて、指定された理想的なブロブに一致するものだけを返すように FindBlobs パラメータを設定する方法を説明します。

ExtractBlobs 関数の例で作成したものと同じ画像と [image] データ構造体を使用して、FindBlobs 関数がスプレッドシートに挿入されました。この関数は、 Closed FindBlobs のプロパティシートを自動的に起動します。この例では、ブロブを調べて、そのほかの条件には関係なく、穴が 1 つ以下のブロブのみ返されるようにパラメータが設定されています。

これらの条件に基づいて、FindBlobs パラメータを次のように設定します。

ブロブ: このパラメータは、以前作成された ExtractBlobs [image] データ構造体への絶対セル参照として設定されています。

検出する数: 画像はこのようなブロブを 1 つしか含んでいないので、このパラメータは 1 に設定されています。このパラメータより大きな値を設定すると、ブロブを返したセルより下のセルは #ERR になります。

アクセプトしきい値: デフォルト設定が使用されています。ブロブの確実性が低い状況でこの設定を使用すると、しきい値の値が低ければ低いほど、返されるブロブの数は確実に増加しますが、理想のブロブとの類似性は低くなります。

ブログが調べられ、1 つ以下の穴を持つブロブだけが返されるため、設定する必要のある唯一のパラメータは穴パラメータです。そのほかのブロブプロパティパラメータはすべて、デフォルト設定のまま残します。ただし、重みの値は 0 に設定します。

穴: この例では、穴の数は 1 に設定されていますが、範囲の値は 0、重みは 100 に設定されています。これにより、 [image] データ構造体に含まれる 1 つ以下の穴を持つブロブだけが、結果として得られる FindBlobs [image] データ構造体と Closed 結果データテーブルに確実に返されるようになります。

関連項目

ブロブツールについて

ブロブデータアクセス関数

ExtractBlobs 関数

SortBlobs 関数

プロパティシートの使用方法


SortBlobs 関数

SortBlobs 関数 |
ビジョンツール → ブロブ | In-Sight 関数リファレンス

SortBlobs 関数は、フィクスチャに関して [image] データ構造体で参照されているブロブをソートするために使用されます。指定された画像フィクスチャ座標系に対する、参照されているブロブの重心の位置を計算することにより、SortBlobs 関数は、x 軸または y 軸に沿ったブロブの距離、フィクスチャの原点またはグリッドからの距離、ブロブの角度や角度絶対値などの測定特性の 1 つを基準にして、参照されているブロブをソートします。

参照されているブロブのデータ構造体に含まれる個々のブログが調査され、 ソート基準パラメータ設定に基づいてブロブが識別されます。その後、ブロブの距離、またはある決まった位置との角度関係のどちらかを測定することにより、このブロブの位置が計算されます。

SortBlobs 関数により、参照されているブロブのソートが完了すると、新しい [image] データ構造体とこれに伴う結果テーブルが自動的にスプレッドシートに挿入されます。結果テーブルは、選択されたフィクスチャに対するブロブの距離を基準に、降順でソートされます （最も近いブロブがリストの先頭になります。2 番目に近いブロブはリストの 2 番目…のように並べられます）。

SortBlobs 関数は、複数のブロブが存在し、ほかのブロブに対する個々のブロブの位置を判断する必要のあるインスタンスにおいて非常に有効な関数です。

SortBlobs 関数の入力パラメータ

SortBlobs 関数の結果出力

SortBlobs データアクセス関数

SortBlobs 関数の例

SortBlobs 関数 の入力パラメータ

SortBlobs 関数 (

ブロブ,

ソートする数,

ソート基準,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

表示

)

ブロブ

このパラメータは、ソートの対象となる [image] データ構造体を含むスプレッドシートのセルを参照します。

ソートする数

返されるブロブの最大数 (1 ～ 4096、デフォルト = 3) を指定します。

注意: [ソートする数] パラメータの値が 0 より大きい場合、SortBlobs 関数は、 [image] データ構造体内の最初の 10 個のブロブに対応する最大 10 のエントリを含んでいる結果テーブルを自動的に挿入します。より多くのエントリを表示する場合は、最後の行をコピーし、追加の行を末尾に貼り付けることによりテーブルを拡張することができます。 新しく貼り付けた行のインデックスの値を必ず繰り上げて、正しいブロブがインデックスされるようにしてください。

ソート基準

ブロブの測定方法とソート方法を表します。

0 = X (デフォルト)

x 軸に沿った距離を基準に、距離の短いものから長いものの順 (降順) でソートします。

Closed 例

1 = Y

y 軸に沿った距離を基準に、距離の短いものから長いものの順 (降順) でソートします。

Closed 例

2 = 角度

フィクスチャ座標系の X 軸からブロブの重心とフィクスチャの原点により定義される線分までの角度 (0 ～ 360 度) を、小さいものから大きいものの順 (降順) にソートします。

Closed 例

3 = 角度絶対値

フィクスチャ座標系の x 軸からブロブの重心とフィクスチャの原点により定義される線分までの角度 (-180 ～ 180 度) の絶対値を、小さいものから大きいものの順 (降順) にソートします。

Closed 例

4 = 距離

フィクスチャの原点からブロブの重心までの距離を、短いものから長いものの順 (降順) にソートします。

Closed 例

5 = グリッド X

まず、フィクスチャの x 軸に沿った距離を基準に距離の短いものから長いものの順 (降順) でソートし、次に y 軸に沿った距離を基準に距離の短いものから長いものの順 (降順) でソートします。

注意: SortBlobs 関数は、グリッド X が選択され、CalibrateImage 関数や TransBlobsToWorld 関数の出力などのワールド座標にキャリブレーションされた画像を関数が参照している場合には、#ERR を返します。グリッド X のソートは、ピクセル座標にのみ適用できます。ワールド座標を使用してグリッド X のソート方法を使用するには、SortBlobs 関数によって参照されている ExtractBlobs 関数が、SortBlobs 関数によってピクセル座標でソートされた TransformImage 関数の出力を参照する必要があります。出力データは、その後、TransBlobsToWorld 関数を使用してワールド座標に変換できます。

Closed 例

6 = グリッド Y

まず、フィクスチャの y 軸に沿った距離を基準に距離の短いものから長いものの順 (降順) でソートし、次に x 軸に沿った距離を基準に距離の短いものから長いものの順 (降順) でソートします。

注意: SortBlobs 関数は、グリッド Y が選択され、CalibrateImage 関数や TransBlobsToWorld 関数の出力などのワールド座標にキャリブレーションされた画像を関数が参照している場合には、#ERR を返します。グリッド Y のソートは、ピクセル座標にのみ適用できます。ワールド座標を使用してグリッド Y のソート方法を使用するには、SortBlobs 関数によって参照されている ExtractBlobs 関数が、SortBlobs 関数によってピクセル座標でソートされた TransformImage 関数の出力を参照する必要があります。出力データは、その後、TransBlobsToWorld 関数を使用してワールド座標に変換できます。

Closed 例

7 = 幅

幅値によって広いものから狭いものへソートします。

注意:
  • In-Sight 5605 ビジョンシステムは、このパラメータオプションをサポートしていません。
  • In-Sight 5604 ビジョンシステムでは、[幅] オプションと [高さ] オプションは入れ替わります。つまり、幅 = 8 および高さ = 7 となります。

8 = 高さ

高さ値によって高いものから低いものへソートします。

注意:
  • In-Sight 5605 ビジョンシステムは、このパラメータオプションをサポートしていません。
  • In-Sight 5604 ビジョンシステムでは、[幅] オプションと [高さ] オプションは入れ替わります。つまり、幅 = 8 および高さ = 7 となります。

フィクスチャ

フィクスチャ入力に対する、ブロブの重心またはビジョンツール関数の画像座標系の出力を定義します。フィクスチャに対してブロブの重心を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して参照されるブロブを確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 (デフォルト = 0) | 画像座標での行オフセット
列 (デフォルト = 0) | 画像座標での列オフセット
角度 (デフォルト = 0) | 画像座標系での方位角

表示

画像上の SortBlobs グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | SortBlobs 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | ブロブの輪郭が常に表示されます。

SortBlobs 関数 の出力

戻り値 | ソートされたブロブを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | SortBlobs が最初にセルに挿入されたときに、スプレッドシートで Closed 結果テーブルが作成されます。 注意: [ソートする数] パラメータの値が 0 より大きい場合、SortBlobs 関数は、 [image] データ構造体内の最初の 10 個のブロブに対応する最大 10 のエントリを含んでいる結果テーブルを自動的に挿入します。より多くのエントリを表示する場合は、最後の行をコピーし、追加の行を末尾に貼り付けることによりテーブルを拡張することができます。 新しく貼り付けた行のインデックスの値を必ず繰り上げて、正しいブロブがインデックスされるようにしてください。

SortBlobs 関数 データアクセス関数

SortBlobs [image] データ構造体の結果テーブルを作成するために、次のデータアクセス関数がスプレッドシートに自動挿入されます。

スプレッドシート名 | 関数名 | 説明
行 | GetRow(ブロブ, インデックス) | 参照されるブロブの重心の Y 座標 (行) を返します。 Closed 例
列 | GetCol(ブロブ, インデックス) | 参照されるブロブの重心の X 座標 (列) を返します。 Closed 例
角度 | GetAngle(ブロブ, インデックス) | ROI の中心に対するブロブの主軸の角度を返します。 Closed 例
カラー | GetColor(ブロブ, インデックス) | 参照されるブロブのカラーの値 (0 = 黒、1 = 白) を返します。
得点 | GetScore(ブロブ, インデックス) | ブロブが、FindBlobs 関数の条件にどの程度一致しているかを表します。
面積 | GetArea(ブロブ, インデックス) | 参照されるブロブの面積を返します (ピクセル単位)。 Closed 例 注意: ブロブに穴がある場合、面積の値は、[穴を埋める] チェックボックスがオンかオフかによって異なります。
伸長 | GetElongation(ブロブ, インデックス) | 参照されるブロブのピクセルが、ブロブの重心からどの程度伸びているかを表す値を返します。例えば、円の伸長は 0 ですが、釘の伸長の値は大きくなります。 Closed 例
穴 | GetHoles(ブロブ, インデックス) | 参照されるブロブに含まれている穴の数を返します。
周囲長 | GetPerimeter(ブロブ, インデックス) | 参照されるブロブを囲む境界線の長さを返します。周囲長は、ブロブの境界線を形成するピクセルの外部エッジをカウントすることにより計算されます。 Closed 例
拡散 | GetSpread(ブロブ, インデックス) | 参照されるブロブのピクセルが、ブロブの重心からどの程度拡散しているかを表す値を返します。例えば、円形の対象物の拡散値は楕円形の対象物の場合よりも小さくなります。 Closed 例

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

しきい値 | GetThresh(ブロブ) | 画像のセグメント化に使用されたしきい値
検出数 | GetNFound(ブロブ) | 検出されたブロブの数
最小行 | GetMinRow(ブロブ, インデックス) | 画像座標フレームの方向を向いた、参照されるブロブの周りを囲む正方形の境界ボックスの一番上の行座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。
最小列 | GetMinCol(ブロブ, インデックス) | 画像座標フレームの方向を向いた、参照されるブロブの周りを囲む正方形の境界ボックスの左端の列座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。
最大行 | GetMaxRow(ブロブ, インデックス) | 画像座標フレームの方向を向いた、参照されるブロブの周りを囲む正方形の境界ボックスの一番下の行座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。
最大列 | GetMaxCol(ブロブ, インデックス) | 画像座標フレームの方向を向いた、参照されるブロブの周りを囲む正方形の境界ボックスの左端の列座標を返します。 注意: 異なる方向を持つ境界ボックスについては、BoundingRectangle 関数を参照してください。

SortBlobs 関数の例

SortBlobs 関数は、フィクスチャからブロブまでの距離を基準に、 [image] データ構造体で参照されているブロブをソートするために使用されます。この例では、フィクスチャに対するブロブの位置を基準に、一連のブロブをソートするために SortBlobs パラメータ設定を使用する方法を説明します。

ExtractBlobs 関数の例で作成されたものと同じ画像と [image] データ構造体を使用して、SortBlobs 関数がスプレッドシートの空のセルに挿入され、 Closed SortBlobs プロパティシートが自動的に起動されました。

この例では、パラメータは、FindBlobs 関数の例によりフィクスチャとして返されたブロブを使用し、前述の ExtractBlobs 関数の例で明らかにしたブロブをソートできるように設定されています。

これらの条件に基づいて、SortBlobs パラメータは次のように構成されます。

ブロブ: このパラメータは、以前生成された ExtractBlobs [image] データ構造体への絶対セル参照として設定されています。

ソートする数: このパラメータは、ソート対象のブロブが 6 つあるため、6 に設定されます。

ソート基準:このパラメータはフィクスチャ原点からの距離に設定されています。このパラメータの設定値を選択すると、計測の起点を判定するためにフィクスチャパラメータを設定する必要があります。

フィクスチャ: このパラメータは、FindBlobs 関数の例の [image] データ構造体で返された行座標および列座標へのセル参照として設定されています。このパラメータの設定値を選択すると、計測やソートは、常に画像内の指定された特徴を原点として行われるようになります。画像内の別の特徴 (エッジなど、点、ブロブなど) を使用することが可能です。例えば、この例では、FindBlobs 関数の例から返されたブロブは、フィクスチャ座標を設定するために使用されます。

表示: デフォルト設定では、下の例にあるように、 [image] データ構造体を含むセルが選択されている場合だけ、結果のグラフィックスが表示されます。

SortBlobs プロパティシートの設定後、 [image] データ構造体と Closed 結果データテーブルが生成されます。

関連項目

ブロブツールについて

ブロブデータアクセス関数

ExtractBlobs 関数

FindBlobs 関数

プロパティシートの使用方法


カラー関数

ビジョンツール

In-Sight 関数リファレンス

In-Sight のカラー関数ツールは、色データに基づいて対象物を識別し照合するために使用されます。カラー関数ツールには次の関数があります。

  • ExtractColor 関数: 対象領域 (ROI) の中で、TrainExtractColor カラーライブラリから選択した登録済みカラーモデルに一致するピクセル数を判定します。
  • MatchColor 関数: ROI の中で、TrainMatchColor カラーライブラリに登録されたカラーに一致する色を判定します。
  • TrainExtractColor 関数: ExtractColor 関数で使用するカラーライブラリを生成します。
  • TrainMatchColor 関数: MatchColor 関数で使用するカラーライブラリを生成します。

注意:
  • これらのビジョンツールを有効にするには、カラー In-Sight ビジョンシステムまたはエミュレータに接続されている必要があります。
  • ExtractColor 関数は TrainExtractColor [image] データ構造体を参照し、MatchColor 関数は TrainMatchColor [image] データ構造体を参照する必要があります。それ以外の場合、関数は #ERR を返します。

カラー関数ツールについて

カラー関数ツールとは

ExtractColor ツールおよび MatchColor ツールは、同じ形状だが異なる色または色諧調で構成されている対象物の検査など、カラーデータに基づいて対象物を識別し照合します。ツールは内部的にカラーのヒストグラムプロジェクションを生成します。つまり、ピークの色を計算する ExtractColor ツールと、平均のカラーを計算する MatchColor ツールを使用して、カラーデータが計算されます。

ExtractColor および TrainExtractColor

カラーマシンビジョンアプリケーションの開発時には、多くの場合、際立った色に基づいて対象物を特定する必要があります。ただし、現実世界の条件下では、例えば、照明や対象物のトポグラフィなどが原因で、対象物の色が均一にならず、代わりに一定のばらつきを示すことがあります。

ExtractColor ツールは、検査の実行時に、このばらつきを考慮するようにプログラムできます。登録段階では、TrainExtractColor 関数を使用して、RGB 値の 3 次元分散の総計を定義する複雑なカラーモデルのライブラリが作成されます。その後、ランタイム操作時に、ExtractColor 関数によって、TrainExtractColor 関数のライブラリ内に作成および格納された登録済みカラーモデルに一致する ROI 内のピクセル数が判別されます。ピクセル数が最多のカラーモデルが最適一致としてランク付けされます。

MatchColor および TrainMatchColor

速度が重要で、かつ検査する色がほぼ均一であるカラーマシンビジョンアプリケーションに対しては、MatchColor ツールが必要な速度と精度を提供します。MatchColor ツールは、ROI 内の平均のカラーを判定し、この値を以前に登録されたカラーの格納済みリストと比較します。登録段階では、TrainMatchColor 関数を使用して、ROI 内の平均 RGB 値と HSI 値を定義するカラーライブラリが作成されます。その後、ランタイム操作時に、MatchColor 関数によって、TrainMatchColor 関数のライブラリ内に作成および格納された登録済みカラーに一致する ROI 内の平均 RGB 値と HSI 値を判別します。最高得点の色が最適一致としてランク付けされます。

カラー関数ツールを使用する場合

カラー関数ツールは、次のような状況で使用すると有効です。

ExtractColor および TrainExtractColor

  • ExtractColor ツールは、さまざまな諧調とカラーで構成される対象物に対して使用した場合に、最も効果的です。
  • ExtractColor ツールは MatchColor ツールに比べ低速ですが、より精度が高く、より複雑な色や微妙なばらつきを認識できます。
  • ExtractColor 関数は、ほかの In-Sight ビジョンツールから参照できる画像を出力します。

MatchColor および TrainMatchColor

  • MatchColor ツールは、ほぼ均一な色の対象物に対して使用した場合に、最も効果的です。
  • MatchColor ツールは ExtractColor ツールに比べ高速で、24 ビットの解像度を提供します。

カラー関数ツールを使用する理由

次のような用途では、カラーツールの色解析が非常に有効な場合があります。

ExtractColor および TrainExtractColor

部品の有無判定

ExtractColor ツールは、対象物が関連付けられている基準カラーモデルのピクセル数に基づいて、対象物が存在するかしないかを判定するように設定できます。ピクセル数データが十分なデータを提供していない場合は、バイナリ画像を出力するように ExtractColor 関数を設定できます。ExtractBlobs 関数はこのバイナリ画像を参照し、ExtractColor 関数から出力されたバイナリピクセルのブロブが対象物のブロブ許容値内に収まっていることを確認することができます。

部品の識別

ExtractColor ツールは、部品の際立った色を計算することで、存在する対象物を識別するように設定できます。このタイプのアプリケーションでは、ピクセル数が最多のカラーモデルが、画像内に存在する対象物を示すカラーモデルであるとみなされます。

MatchColor および TrainMatchColor

色の検証

MatchColor ツールは、現在の画像内の ROI が登録済みカラーのライブラリにどの程度近似しているかを定量化するように設定できます。目的は、ROI の色と登録済みカラーの差異が少ないことを確認することです。

部品または色の照合

このタイプのアプリケーションでは、画像内の現在の色に最も一致する色を報告するように MatchColor ツールを設定できます。一致得点を使用して各登録済みカラーがランク付けされ、一致得点が最も高い色が最適一致であるとみなされます。

カラー関数ツールの使用方法

カラー関数ツールは通常、以下の手順で使用されます。

手順 1 - 対象物を調べ、対象物のカラーデータが ExtractColor ツールと MatchColor ツールのどちらを使用すればより適切に解析できるか判定します。

手順 2 - TrainExtractColor 関数または TrainMatchColor 関数をスプレッドシートに挿入し、登録済みカラーのライブラリを作成します。

手順 3 - ExtractColor 関数または MatchColor 関数をスプレッドシートに挿入し、ライブ画像を登録済みライブラリと比較します。


ExtractColor 関数

ExtractColor 関数 |
ビジョンツール → カラー | In-Sight 関数リファレンス

ExtractColor 関数は、TrainExtractColor 関数によって返された [image] データ構造体を参照し、対象領域 (ROI) の中で、TrainExtractColor カラーライブラリから選択した登録済みカラーモデルに一致するピクセルの数を判定します。抽出されたカラーモデルは、最高ピクセル数のカラーモデルに対応します。

ExtractColor 関数は、 [image] データ構造体を出力します。この構造体には、抽出されたカラーモデルのピクセル数と出力画像が含まれ、ほかの In-Sight ビジョンツールから参照できます。

ExtractColor 関数 (

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

領域.カーブ ,

外部定義領域 ,

カラーライブラリ ,

ピクセルの計数 ,

出力画像 ,

表示

)

ExtractColor 関数の入力パラメータ

ExtractColor 関数の結果出力

ExtractColor 関数のデータアクセス関数

関連項目

ExtractColor 関数の入力パラメータ

[標準] タブ

画像

カラー画像の参照を指定します。このパラメータは、AcquireImage 関数によって出力された有効なカラー [image] データ構造体、または別の ExtractColor 関数によって出力された [image] データ構造体を参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

注意: このパラメータはカラー画像を参照している必要があります。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

移動および回転可能な矩形の画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意:

  • ピクセルがカウントされるようにするには、ピクセルが画像領域の範囲内に完全に含まれている必要があります。部分的に含まれているピクセルは計算されません。
  • [フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

外部定義領域

Annulus、Circle、Region、EditAnnulus、EditCircle、EditCompositeRegion、EditPolygon、または EditRegion の各関数を含むスプレッドシートセルの参照を指定します。

注: EditCompositeRegion 関数コントロールを参照している場合は、検査領域がさまざまな形状の混合となることがあります。合成領域内の各形状は、検査領域に対して加算または減算 (マスキング) されるように割り当てることができます。

カラーライブラリ

必要なカラーライブラリおよびカラーモデルを含む TrainExtractColor 関数への参照を指定します。

注意: これは、TrainExtractColor [image] データ構造体を参照している必要があります。この関数は、TrainMatchColor 関数によって出力された [image] データ構造体は参照できません。参照すると、ExtractColor 関数は #ERR を返します。

ピクセルの計数

ピクセルの計数をオンにするかオフにするかを指定します。

注: ピクセルの計数が不要な場合は、処理時間を短縮するために、パラメータをオフにしてください。ピクセルの計数のみが必要な場合は、このパラメータをオンにし、[出力画像] パラメータを [なし] に設定すると、処理時間は最短で、メモリの使用量は最小になります。

0 = オフ | ピクセルの計数をオフにします。
1 = オン (デフォルト) | ピクセルの計数をオンにします。

出力画像

出力する画像のタイプを示します。出力画像は、ほかの In-Sight ビジョンツールの [画像] パラメータで参照できます。

ExtractColor 関数を含むセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。

0 = マークした画像 (デフォルト) | マークした画像が出力されるように指定します。この出力画像では、アクティブなカラーモデルに一致するピクセルが、マーキングされた色、つまり、カラーモデル内に存在する最初の色とピークが逆の色に設定されます。 注意: この出力画像は、非常に有効なユーザフィードバック情報を提供しますが、処理に要する時間が最長となります。
1 = バイナリ画像 | 2 値化されたグレースケール画像が出力されるように指定します。この出力画像では、アクティブなカラーモデルに一致するピクセルは白 (255) に設定され、ほかのピクセルはすべて黒 (0) に設定されます。この画像は、ExtractBlobs 関数などほかの In-Sight ビジョンツールで使用できます。 注: この出力画像は、画像の出力が最速であり、メモリの使用量も最小です。
2 = カラー画像 | カラー画像が出力されるように指定します。この出力画像では、アクティブなカラーモデルに一致するピクセルは元の値のままで、ほかのピクセルはすべて 0,0,0 (RGB) に設定されます。この画像は、ほかの In-Sight ビジョンツールで使用できます。 注意: この出力画像は、RGB データと明度データを含むため、サイズはバイナリ画像の 4 倍となります。
3 = なし | 画像が出力されないように指定します。 注意: この設定は、最速の実行時間が必要なジョブに適用できます。ピクセルの計数のみが必要な場合は、[ピクセルの計数] パラメータをオンにし、[出力画像] パラメータを [なし] に設定すると、処理時間は最短で、メモリの使用量は最小になります。

表示

画像上の ExtractColor グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | ExtractColor 関数を含むセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
2 = 結果のグラフィックスのみ | 入力画像領域が常に表示されます。
3 = 入力と結果のグラフィックス | 入力画像領域と抽出された色のアウトラインの両方が常に表示されます。

[カラーモデル] タブ

参照する TrainExtractColor [image] データ構造体から抽出するカラーモデルを指定します。デフォルトでは、参照するライブラリに登録されたすべてのカラーモデルが自動的に有効になります。

注意: SetExtClrColorModelState 関数を使用して、スプレッドシートからカラーモデルを有効にすることができます。

ExtractColor 関数の結果出力

戻り値 | ピクセル数および出力画像 ([出力画像] パラメータに [なし] が指定されていない場合) を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | ExtractColor 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

ExtractColor 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

インデックス | GetExtClrModelByRank(色, ランク) | ランク別のカラーモデルインデックス。
モデルカラーの抽出 | GetActiveExtClrModelName(色, インデックス) | インデックス別のカラーモデルの名前。
ピクセル数 | GetPixelCountByIndex(色, インデックス) | インデックス別のピクセル数。
ピクセル総数 | GetOverallPixelCount(色) | すべてのアクティブなカラーモデルのピクセル数。

関連項目

TrainExtractColor 関数

カラーデータアクセス関数

ExtractColor ツールの使用方法


MatchColor 関数

MatchColor 関数 |
ビジョンツール → カラー | In-Sight 関数リファレンス

MatchColor 関数は、TrainMatchColor 関数によって返された [image] データ構造体を参照し、対象領域 (ROI) の中で、TrainMatchColor カラーライブラリで登録された色に一致する色を判定します。MatchColor 関数は [image] データ構造体を出力します。この構造体には、 [image] データ構造体で参照されるアクティブなカラーごとに、色の距離と一致得点、および全体的な信頼性得点が含まれます。

  • MatchColor 関数の入力パラメータ
  • MatchColor 関数の結果出力
  • MatchColor 関数のデータアクセス関数
  • 関連項目

MatchColor 関数関数の入力パラメータ

[標準] タブ

MatchColor 関数(

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

領域.カーブ ,

外部定義領域 ,

カラーライブラリ,

カラー空間,

表示

)

画像

カラー画像の参照を指定します。この引数は、AcquireImage 関数によって出力された有効なカラー [image] データ構造体、または ExtractColor 関数によって出力された [image] データ構造体を参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

注意: このパラメータはカラー画像を参照している必要があります。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

これは対象領域 (ROI) とも呼ばれ、画像解析の対象となる画像の領域を指定します。変形および回転可能な矩形の画像領域を形成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意:

  • ピクセルがカウントされるようにするには、ピクセルが画像領域の範囲内に完全に含まれている必要があります。部分的に含まれているピクセルは計算されません。
  • [フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

外部定義領域

Annulus、Circle、Region、EditAnnulus、EditCircle、EditCompositeRegion、EditPolygon、または EditRegion の各関数を含むスプレッドシートセルへの参照を指定します。

注意: EditCompositeRegion 関数コントロールを参照している場合は、検査領域がさまざまな形状の混合となることがあります。合成領域内の各形状は、検査領域に対して加算または減算 (マスキング) されるように割り当てることができます。

カラーライブラリ

必要なカラーを含む TrainMatchColor 関数への参照を指定します。

注意: これは、TrainMatchColor [image] データ構造体を参照している必要があります。この関数は、TrainExtractColor 関数によって出力された [image] データ構造体は参照できません。参照すると、MatchColor 関数は #ERR を返します。

カラー空間

色の距離を計測するために使用するカラー空間を指定します。

0 = RGB (デフォルト) | 関数は、RGB カラー空間で動作します。
1 = HSI | 関数は、HSI カラー空間で動作します。 注意: ExtractColorHistogram 関数、MatchColor 関数、および TrainMatchColor 関数は、HSI カラー表現を使用する際に個別の数式を使用して彩度の値を計算します。ExtractColorHistogram 関数によって返される彩度の値は、MatchColor 関数および TrainMatchColor 関数によって返される値とは異なるため、この 2 つの値は比較する値としては使用できません。

表示

画像上にオーバレイする MatchColor グラフィックスの表示モードを指定します。

0 = 非表示 (デフォルト) | MatchColor 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 入力のグラフィックスのみ | 入力画像領域が常に表示されます。

[カラー] タブ

参照する TrainMatchColor [image] データ構造体から抽出するカラーを指定します。デフォルトでは、参照するライブラリ内に登録されているカラーがすべて自動的に有効になります。

注意: SetMatchClrColorState 関数を使用して、スプレッドシートからカラーを有効にすることもできます。

MatchColor 関数関数の結果出力

戻り値 | アクティブなカラーから ROI 内の平均色までの RGB および HSI での色の距離を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | MatchColor 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

MatchColor 関数データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

インデックス | GetMatchClrColorByRank(色, ランク) | ランク別の色インデックス。
MatchColor の色 | GetActiveMatchClrColorName(色, インデックス) | インデックス別の名前。
得点 | GetMatchClrScoreByIndex(色, インデックス) | インデックス別の色得点。
色距離 | GetMatchClrDistByIndex(色, インデックス) | インデックス別の色の距離。
信頼性得点 | GetConfidenceScore(色) | 検査の信頼性得点。

関連項目

  • TrainMatchColor ツール
  • カラーデータアクセス関数
  • MatchColor ツールの使用方法


TrainExtractColor 関数

TrainExtractColor 関数 |
ビジョンツール → カラー | In-Sight 関数リファレンス

ExtractColor 関数で使用するため、画像領域からカラーモデルを抽出し登録します。TrainExtractColor 関数でカラーモデルにカラーを登録し、その後 ExtractColor 関数を使用して画像内に存在するカラーモデルを識別します。

概要

[登録] タブ

[画像] タブ

[外部登録] タブ

関連項目

概要

TrainExtractColor 関数を使用してカラーライブラリを生成できます (TrainExtractColor 関数プロパティシートの [登録] タブで設定します)。ライブラリには、それぞれ個別のカラーから成る最大 100 のカラーモデルを含めることができます。

カラーモデルは、RGB 値の集合 3 次元分散を定義し、個々の色分散を順に加算または減算することで生成されます。

カラーは、カラーが登録された時点で対象領域 (ROI) に存在したピーク RGB 値に基づき、RGB 値の 3 次元分散を定義します。分散は、個々のカラー許容値の設定に基づいて拡大または縮小することができ、カラーモデルで定義された集合分散に対して加算または減算することができます。

登録段階でカラーを定義する場合、TrainExtractColor 関数は、ROI 内に存在するカラーの 3D カラーヒストグラムを内部的に生成します。その後、この関数は ROI 内のピークの色を判断します。図 1 は、座金画像の 3D カラーヒストグラムを示しています。このヒストグラムのデータは、座金の色が 1 色から構成されているのではなく、RGB 空間内で 3D 分布する多数のカラーから成ることを示しています。

Closed 図 1 - 座金の 3D RGB ヒストグラム

3D ヒストグラムは、材料の表面から反射された光と材料の本体から反射された光から構成される二色性反射を表します。

  • ピークの色領域は、ヒストグラム内で、一致するピクセルが最も集中している場所を表します。
  • [暗]/[明] ラインは、オブジェクトの本体から反射される光に相当し、原点 (暗 0,0,0) とピークの色を結び、ヒストグラムの上下限を越えて伸びる直線として表されます。
  • ハイライトラインは、表面反射コンポーネントを表し、照明ベクトルに沿って、ピークの色からヒストグラムの上下限まで延びています (明 255,255,255)。

ピークの色および色相

あるカラーを初めて登録すると、この関数は ROI に存在する個々の色について統計的解析を実行します。ピークの色が決定され、赤チャネル、緑チャネル、および青チャネルからの標準偏差が計算されます。この計算はシグマ値と呼ばれ、色相コントロールを調整すると、ピークの色からの標準偏差の数値が設定されます。登録されたカラーの一部であるとみなされるカラーは必ず、この標準偏差の数値内に含まれます。また、この数値は、RGB カラーチャネルの上限および下限を形成します。例えば、色相コントロールがシグマ値 3 に設定されていた場合、RGB 値がピークの色から標準偏差で 3 以内に含まれるピクセルはすべて、そのカラーと一致するものに数えられます。

暗/明ライン

暗/明コントロールを調整することによって、ピークの色およびシグマ値の上下限を超えてモデルを拡張し、暗/明ラインに沿って、より多くのカラーを取り入れることができます。これらの設定項目によって、ピークの色の釣り合いを維持しながら、明度が大きいまたは小さい RGB 値を取り入れたり、除外したりすることができます。これらのカラーは、原点に位置する軸からヒストグラムの上下限に向かって伸び、ピークの色を包含するボリュームに含まれます。図 2 は、図 1 に基づく 3D ヒストグラムですが、暗限界と明限界が表示されています。カラーの暗/明ラインは、暗限界と明限界の値によって制限されます。この値は、色等級のパーセンテージとして設定されます (ピークの色から原点までのユークリッド距離)。暗限界と明限界については、別途、パーセンテージが計算されます。

Closed 図 2 - 3D ヒストグラムの暗限界と明限界

ハイライトライン

ハイライトコントロールを調整すると、そのカラーに属すると見なされるカラーの数が増えます。図 3 に示すように、追加されるカラーは、ピークの色から始まるボリュームに含まれ、[暗]/[明] ボリュームの幅に等しい幅を持ち、ハイライトラインを包含します。調節できるのはハイライトラインの上限のみです。これは、色等級のパーセンテージとして設定されます。

Closed 図 3 - 3D ヒストグラムのハイライトの限界

[登録] タブ

注意: ここで説明するパラメータを使用して、In-Sight カラービジョンシステムがオフラインのときに、カラーモデルの登録を設定できます。

[登録] タブの設定項目は、ライブラリにカラーおよびカラーモデルを手動で登録するために使用されます。

[カラーモデル] の設定項目

ライブラリディレクトリ構造

ライブラリディレクトリ構造には、ライブラリ内のカラーモデルが表示されます。

[新規モデル] | 新規カラーモデルをライブラリに追加します。
[名前変更] | デフォルトのカラーモデル名 (Model_1) を変更できます。
[モデルの削除] | 選択したカラーモデルをライブラリから削除します。

[カラー] テーブル

[カラー] テーブルには、[ライブラリ] ウィンドウで選択したカラーモデルのカラーが表示されます。このテーブルには、カラーの名前、RGB 値、および操作が表示されます。

[カラーの名前変更] | デフォルトのカラー名 (Color_1) を変更できます。
[カラーの加算] | カラーモデルでのカラーの加算操作を指定します。
[カラーの減算] | カラーモデルでのカラーの減算操作を指定します。
[カラーを下に移動] | カラーモデル内のカラーリストで、選択したカラーを下に移動します。
[カラーを上に移動] | カラーモデル内のカラーリストで、選択したカラーを上に移動します。
[色を削除] | カラーモデル内のカラーリストから選択したカラーを削除します。

[登録] の設定項目

カラーの登録方法、カラーおよびカラーモデル内でのカラーの操作を定義するために使用される ROI を指定します。

[最大ドミナントカラー] | 定義されたカラーモデル内の 1 つのカラーが登録され、クリックされたボタン ([加色の作成] または [減色の作成]) に応じて、このカラーモデルで加算または減算されることを表します。
[マルチカラー] | ROI 内の RGB データに従って、自動的にカラーモデルにカラーを登録し、クリックされたボタン ([加色の作成] または [減色の作成]) に応じて、新しく作成されたカラーに加算操作または減算操作を割り当てることを表します。その後、個々のカラーのプロパティを設定できます。 注意: このパラメータは、[最小カラー面積] パラメータと [登録前に画像を平滑化] パラメータを有効にします。
[登録前に画像を平滑化] | 画像のノイズを減らすために登録前に適用される画像平滑化値 (0 ～ 10、デフォルト = 1) を指定します。 注意: この設定項目は、[マルチカラー] が選択されている場合のみ使用可能になります。
[最小カラー面積 (%)] | カラーを登録するためにカラーが ROI 内で占める必要のある最小ピクセル数を、ROI 内の総ピクセル数に対するパーセンテージ (1 ～ 80、デフォルト = 2) で指定します。 注意: この設定項目は、[マルチカラー] が選択されている場合のみ使用可能になります。
[領域の選択] | カラーの定義に矩形の ROI を使用することを指定します。
[円の選択] | カラーの定義に、円形の ROI を使用することを指定します。
[ドーナツ領域の選択] | カラーの定義に、ドーナツ形の ROI を使用することを指定します。
[ポリゴンの選択] | カラーの定義に、ポリゴンの ROI を使用することを指定します。
[フリーハンドで描画] | カラーの定義に、フリーハンド形状の ROI を使用することを指定します。
[加色の作成] | カラーに対して加算操作を指定します。
[減色の作成] | カラーに対して減算操作を指定します。

[カラー許容値] の設定項目

選択された色に対する許容値を指定します。

ヒント: [カラー許容値] の設定項目を設定する場合、画像を簡単に見ることができる位置に TrainExtractColor プロパティシートを配置します。コントロールを調整するに従って、選択した画像マーキングのタイプに応じて画像が更新され、変更が反映されます。

[暗] | 下限値 (0 ～ 1.0、デフォルト = 1.0) を指定します。この設定は、0,0,0 とピークの色を通過する直線に沿って比例的に低くなるように色分散を拡大します。
[明] | 上限値 (1.0 ～ 10.0、デフォルト = 1.0) を指定します。この設定は、0,0,0 とピークの色を通過する直線に沿って比例的に高くなるように色分散を拡大します。
[ハイライト] | 登録用にハイライト制限 (1.0 ～ 10.0、デフォルト = 1.0) を指定します。この設定は、ピークの色から色飽和 (255,255,255) 方向に色分散を拡大します。
[色相] | 単一のカラーの登録用にシグマ値 (0.0 ～ 10.0、デフォルト = 2.0) を指定します。この設定は、ピークの色に類似の色が含まれるように、色分散を拡大します。シグマ値は、各カラープレーンの登録時に内部的に実行される標準偏差計算を参照します。[色相限界] では、3 つのカラープレーンのそれぞれで、ピークの色に関する標準偏差の数値を設定します。例えば、[色相限界] が 2.0 の場合、各カラープレーンでピークの色の周囲に ±1 の標準偏差に相当するボックスが設定されます。

[画像マーク] の設定項目

画像のカラー表示を指定します。

[すべてのモデルの結果をマーク] | カラーモデルのすべての色を画像内でマークすることを指定します。
[選択したカラーまでの結果をマーク] | 3 つのカラーがあるリストの 2 番目のカラーを選択すると、最初のカラーと 2 番目のカラーが画像内でマークされます。
[選択したカラーのみをマーク] | 選択したカラーのみが画像内でマークされます。

[画像] タブ

ライブラリのカラーモデルの登録に使用される画像を指定するには、[画像] タブを使用します。

注意: ここで説明するパラメータを使用して、In-Sight カラービジョンシステムがオフラインのときに、カラーモデルの登録を設定できます。

[ライブの開始] | センサをライブビデオモードにして、リアルタイム画像を表示します。
[画像を開く] | ローカル PC またはネットワーク接続された任意の In-Sight センサや PC から画像をロードします。

[外部登録] タブ

外部制御によって再登録パラメータを設定するには、[外部登録] タブを使用します。

注意: ここで説明するパラメータを使用して、In-Sight カラービジョンシステムがオンラインのときに、カラーモデルの再登録を設定できます。

TrainExtractColor 関数 (

画像 ,

イベント ,

外部定義領域 ,

再登録時操作 ,

再登録時操作手順 ,

再登録時モード ,

カラーモデル名 ,

暗限界 ,

明限界 ,

ハイライト制限 ,

色相限界 ,

最小カラー面積 ,

平滑化

)

TrainExtractColor 関数の入力パラメータ

TrainExtractColor 関数の結果出力

TrainExtractColor 関数のデータアクセス関数

関連項目

TrainExtractColor 関数の入力パラメータ

画像

カラー画像の参照を指定します。このパラメータは、AcquireImage 関数によって出力された有効なカラー [image] データ構造体、または ExtractColor 関数によって出力された [image] データ構造体を参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

注意: このパラメータはカラー画像を参照している必要があります。

イベント

カラーモデルを登録する更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体
  • Event 関数によって返される [image] データ構造体を含むセル
  • Button 関数を含むセル

外部定義領域

Annulus、Circle、Region、EditAnnulus、EditCircle、EditCompositeRegion、EditPolygon、または EditRegion の各関数を含むスプレッドシートセルの参照を指定します。

注: EditCompositeRegion 関数コントロールを参照している場合は、検査領域がさまざまな形状の混合となることがあります。合成領域内の各形状は、検査領域に対して加算または減算 (マスキング) されるように割り当てることができます。

再登録時操作

カラーモデルでのカラーの操作を指定します。

0 = 加色 | 新たに登録されたカラーは、カラーモデルに「加算」されます。
1 = 減色 | 新たに登録されたカラーは、カラーモデルから「減算」されます。

再登録時操作手順

カラーモデルに新しいカラーを追加するために使用する方式を指定します。

0 = 既存カラーに追加 (デフォルト) | 新しいカラーをカラーモデル内の既存のカラーに追加します。
1 = 既存カラーを削除してから追加 | 既存のカラーをすべて削除して、新しいカラーをカラーモデルに追加します。

再登録時モード

登録モードを指定します。

0 = シングルカラー (デフォルト) | 指定したカラーモデル内の 1 つのカラーが登録され、[再登録時操作] パラメータの設定に基づいて、カラーモデルで加算または減算されます。
1 = マルチカラー | この関数は、ROI 内の RGB データに従って、自動的にカラーモデルにカラーを登録し、[再登録時操作] パラメータのプロパティ ([加算] または [減算]) を新たに生成されたカラーに割り当てます。その後、個々のカラーのプロパティを設定できます。 注: このパラメータは、[最小カラー面積] パラメータと [平滑化] パラメータを有効にします。

カラーモデル名

[登録] タブで設定される、オンライン再登録で再登録するカラーモデルの名前を指定します。カラーモデルが存在しない場合は、新しいカラーモデルが生成されます。

暗限界

オンライン登録用に下限値 (0 ～ 1.0、デフォルト = 1.0) を指定します。この設定は、0,0,0 とピークの色を通過する直線に沿って比例的に低くなるように色分散を拡大します。

明限界

オンライン登録用に上限値 (1.0 ～ 10.0、デフォルト = 1.0) を指定します。この設定は、0,0,0 とピークの色を通過する直線に沿って比例的に高くなるように色分散を拡大します。

ハイライト制限

オンライン登録用にハイライト制限 (1.0 ～ 10.0、デフォルト = 1.0) を指定します。この設定は、ピークの色から色飽和 (255,255,255) 方向に色分散を拡大します。

色相限界

単一のカラーのオンライン登録用にシグマ値 (0.0 ～ 10.0、デフォルト = 2.0) を指定します。この設定は、ピークの色に類似の色が含まれるように、色分散を拡大します。シグマ値は、各カラープレーンの登録時に内部的に実行される標準偏差計算を参照します。[色相限界] では、3 つのカラープレーンのそれぞれで、ピークの色に関する標準偏差の数値を設定します。例えば、[色相限界] が 2.0 の場合、各カラープレーンでピークの色の周囲に ±1 の標準偏差に相当するボックスが設定されます。

注意: このパラメータは、[再登録時モード] パラメータが [シングルカラー] に設定されている場合にのみ有効になります。

最小カラー面積

カラーを登録するためにカラーが ROI 内で占める必要のある最小ピクセル数を、ROI 内の総ピクセル数に対するパーセンテージ (1 ～ 80、デフォルト = 2) で指定します。

注意: このパラメータは、[再登録時モード] パラメータが [マルチカラー] に設定されている場合にのみ有効になります。

平滑化

画像のノイズを減らすために登録前に適用される画像平滑化値 (0 ～ 10、デフォルト = 1) を指定します。

注意: このパラメータは、[再登録時モード] パラメータが [マルチカラー] に設定されている場合にのみ有効になります。

TrainExtractColor 関数の結果出力

戻り値

ExtractColor ツール用に登録されたカラーモデルを含む [image] データ構造体。入力パラメータが無効であれば #ERR が返されます。

TrainExtractColor 関数のデータアクセス関数

データアクセス関数を使用して、次のデータ要素を取得できます。

GetNTrainExtClrModels (ExtractColor ライブラリ) | TrainExtractColor ツールが生成した [image] データ構造体内のカラーモデルの数を返します。
GetTrainExtClrModelName (ExtractColor ライブラリ,[インデックス]) | TrainExtractColor ツールが生成した [image] データ構造体内のインデックス付きのカラーモデルの名前を返します。
GetColorLibraryName (ExtractColor ライブラリ) | 参照されている [image] データ構造体からカラーライブラリの名前を返します。

関連項目

ExtractColor 関数

カラーデータアクセス関数

ExtractColor ツールの使用方法


TrainMatchColor 関数

TrainMatchColor 関数 |
ビジョンツール → カラー | In-Sight 関数リファレンス

MatchColor 関数で使用するため、画像領域からカラーを抽出し登録します。TrainMatchColor 関数TrainMatchColor 関数でライブラリにカラーを登録し、その後、MatchColor 関数を使用し、現在の画像と登録されたカラーの間の色の距離に基づいて、画像内に存在するカラーを識別します。

  • 概要
  • [登録] タブ
  • [画像] タブ
  • [外部登録] タブ
  • 関連項目

概要

TrainMatchColor 関数を使用してカラーライブラリを生成します ([MatchColor Training] ダイアログの [登録] タブで設定します)。ライブラリは最高 100 種類のカラーを含むことができます。これらの検査対象物の RGB/HSI 値から構成されています。

カラーは、対象領域 (ROI) によって定義され、登録時に ROI に含まれる平均 RGB および HIS 値を保存します。個々のカラーは、カラー空間内の 1 色を定義します。[カラー許容値] の設定項目を調整することによって、あるカラーを、そのカラーよりもわずかに濃い色または薄い色でも一致とみなすように設定することができます。

RGB カラー空間では、暗限界と明限界は、登録されたカラーの色等級を基準にしています。色等級は、原点から始まり、登録されたカラーで終わるベクトルの長さとして表されます。値 1 は登録されたカラーに対応し、値 0.5 は登録されたカラーの半分に対応します。

HSI カラー空間では、暗限界と明限界は、明度平面のみを基準にしています。検査対象のオブジェクトの明度コンポーネントが、登録されたカラーの暗限界と明限界内に収まる場合、このオブジェクトの色の距離は、色相および彩度のみによって決められます。明度コンポーネントが暗限界と明限界内に収まらない場合、色の距離は、色相、彩度、および現在の明度の値と最も近い暗限界値または明限界値の差分に基づいて決定されます。

注意: ExtractColorHistogram 関数、MatchColor 関数、および TrainMatchColor 関数は、HSI カラー表現を使用する際に個別の数式を使用して彩度の値を計算します。ExtractColorHistogram 関数によって返される彩度の値は、MatchColor 関数および TrainMatchColor 関数によって返される値とは異なるため、この 2 つの値は比較する値としては使用できません。

[登録] タブ

注意: ここで説明するパラメータを使用して、In-Sight カラービジョンシステムがオフラインのときに、カラーの登録を設定できます。

[登録] タブの設定項目は、ライブラリにカラーを手動で登録するために使用されます。

ライブラリ名

[ライブラリ名]

ライブラリの名前を指定します (デフォルトはライブラリです)。

[カラー] テーブル

[カラー] テーブルには、ライブラリのカラーが表示されます。このテーブルには、カラーの名前、RGB 値、および HSI 値が表示されます。

[カラーの名前変更] | デフォルトのカラー名 (Color_1) を変更できます。
[色を削除] | 選択したカラーをライブラリから削除します。

[登録] の設定項目

[登録] の設定項目は、カラーの追加と保持に使用されるもので、カラーの定義に使用される ROI を指定します。

[領域の選択] | カラーの定義に、矩形の ROI を使用することを指定します。
[円の選択] | カラーの定義に、円形の ROI を使用することを指定します。
[ドーナツ領域の選択] | カラーの定義に、ドーナツ形の ROI を使用することを指定します。
[ポリゴンの選択] | カラーの定義に、円形の ROI を使用することを指定します。
[フリーハンドで描画] | カラーの定義に、フリーハンド形状の ROI を使用することを指定します。
[点の編集] | カラーの定義に使用される画像のポイントを指定します。
[加色の作成] | 新規カラーをライブラリに追加することを指定します。
[カラーの再登録] | 選択したカラーの再登録を指定します。

[カラー許容値] の設定項目

選択された色に対する許容値を指定します。

ヒント: [カラー許容値] の設定項目を設定する場合、画像を簡単に見ることができる位置に TrainMatchColor プロパティシートを配置します。設定項目を調整するに従って、画像が更新され、変更が反映されます。

[暗] | [暗] の範囲 (0 ～ 1.0、デフォルト = 1.0) を指定します。[カラー空間] を [RGB] に設定した場合、[暗] の範囲を拡大すると、登録されるカラーは (0,0,0) から登録される色の RGB 値までの線に沿って比例的に低くなります。[カラー空間] が [HSI] に設定されている場合、[暗] の範囲を拡大すると、登録される色の明度が小さくなります。
[明] | [明] の範囲 (1.0 ～ 10.0、デフォルト = 1.0) を指定します。[カラー空間] を [RGB] に設定した場合、[明] の範囲を拡大すると、登録されるカラーは (0,0,0) から登録される色の RGB 値までの線に沿って比例的に高くなります。[カラー空間] が [HSI] に設定されている場合、[明] の範囲を拡大すると、登録される色の明度が大きくなります。

[画像] タブ

ライブラリのカラーの登録に使用される画像を指定するには、[画像] タブを使用します。

注意: ここで説明するパラメータを使用して、In-Sight カラービジョンシステムがオフラインのときに、カラーの登録を設定できます。

[ライブの開始] | センサをライブビデオモードにして、リアルタイム画像を表示します。
[画像を開く] | ローカル PC またはネットワーク接続された任意の In-Sight センサや PC から画像をロードします。

[外部登録] タブ

外部登録用の再登録パラメータを設定するには、[外部登録] タブを使用します。

注意: ここで説明するパラメータを使用して、In-Sight カラービジョンシステムがオンラインのときに、カラーの再登録を設定できます。

  • TrainMatchColor 関数の入力パラメータ
  • TrainMatchColor 関数の出力パラメータ
  • TrainMatchColor データアクセス関数

TrainMatchColor 関数関数の入力パラメータ

TrainMatchColor 関数(

画像 ,

イベント ,

外部定義領域 ,

カラー名 ,

暗限界 ,

明限界 ,

)

画像

カラー画像の参照を指定します。この引数は、AcquireImage 関数によって出力された有効なカラー [image] データ構造体、または ExtractColor 関数によって出力された [image] データ構造体を参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

注意: このパラメータはカラー画像を参照している必要があります。

イベント

カラーを登録する更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体
  • Event 関数によって返される [image] データ構造体を含むセル
  • Button 関数を含んでいるセル

外部領域

Annulus、Circle、Region、EditAnnulus、EditCircle、EditCompositeRegion、EditPolygon、または EditRegion の各関数を含むスプレッドシートセルの参照を指定します。

注意: EditCompositeRegion 関数コントロールを参照している場合は、検査領域がさまざまな形状の混合となることがあります。合成領域内の各形状は、検査領域に対して加算または減算 (マスキング) されるように割り当てることができます。

カラー名

[登録] タブで設定される、オンライン再登録で再登録するカラーの名前を指定します。カラーが存在しない場合は、新しいカラーが生成されます。

暗限界

オンライン登録用に暗限界を指定します。 [カラー空間] を [RGB] に設定した場合、[暗] の範囲を拡大すると、登録されるカラーは (0,0,0) から登録される色の RGB 値までの線に沿って比例的に低くなります。[カラー空間] が [HSI] に設定されている場合、[暗] の範囲を拡大すると、登録される色の明度が小さくなります。

明限界

オンライン登録用に明限界を指定します。 [カラー空間] を [RGB] に設定した場合、[明] の範囲を拡大すると、登録されるカラーは (0,0,0) から登録される色の RGB 値までの線に沿って比例的に高くなります。[カラー空間] が [HSI] に設定されている場合、[明] の範囲を拡大すると、登録される色の明度が大きくなります。

TrainMatchColor 関数関数の結果出力

戻り値

MatchColor ツール用に登録されたカラーを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

TrainMatchColor 関数データアクセス関数

データアクセス関数を使用して、次のデータ要素を取得できます。

GetNTrainMatchClrColors(カラーライブラリ) | TrainMatchColor ツールが生成した [image] データ構造体内のカラーの数を返します。
GetTrainMatchClrColorName(カラーライブラリ,[インデックス]) | TrainMatchColor ツールが生成した [image] データ構造体内のインデックス付きのカラーの名前を返します。
GetColorLibraryName(カラーまたはカラーライブラリ) | 参照されている [image] データ構造体からカラーライブラリの名前を返します。

関連項目

  • MatchColor 関数
  • カラーデータアクセス関数
  • MatchColor ツールの使用方法


エッジ関数

ビジョンツール

In-Sight 関数リファレンス

マシンビジョンの用語では、エッジとは、グレースケール値が異なる 2 つの隣接するピクセルグループ間の境界 (線、円弧、円のいずれか) として定義されます。In-Sight のエッジツールを使用して、エッジを検出し、検出されたエッジに関する統計を計算できます。

In-Sight ビジョンシステムでは、エッジツールの次の関数を使用して、エッジの検出と処理を実行します。

  • Caliper 関数: エッジ間の幅の計測、エッジの検出、およびエッジペアとその間隔の検出を行います。
  • FindCircle 関数:ドーナツ状の対象領域 (ROI) 内の 1 つの円形のエッジを検出します。
  • FindCircleMinMax 関数:連続エッジの真円度を調べます。
  • FindCurve 関数:曲った ROI 内の 1 つの円弧エッジを検出します。
  • FindLine 関数:ROI 内の 1 つの直線エッジを検出します。
  • FindMultiLine 関数:ROI 内の複数の直線エッジを検出します。
  • FindSegment 関数:ROI 内の直線エッジのペアを検出します。
  • PairEdges 関数:エッジの配列をエッジペアの配列にソートします。
  • PairDistance 関数:2 つのエッジ間の距離を計算します。
  • PairMaxDistance 関数:エッジペアの最大距離を検出します。
  • PairMeanDistance 関数:エッジペアの距離の平均を計算します。
  • PairMinDistance 関数:エッジペアの最小距離を検出します。
  • PairSDevDistance 関数:エッジペアの距離の標準偏差を計算します。
  • PairsToEdges 関数:エッジペアの配列を（平均することにより）エッジの配列に変換します。
  • SortEdges 関数:エッジを指定した基準に沿ってソートします。

エッジ関数 について

エッジ検出

In-Sight エッジツールの各関数は、対象領域 (ROI) 内でピクセル極性の不連続、つまり明るいピクセルから暗いピクセルに (またはその逆に) 急激に変化している領域を判定することで、エッジを検出します。

Closed エッジの例

FindLine 関数や FindCircle 関数などのエッジツールがスプレッドシートに挿入されると、ROI がスキャンされてピクセル値の不連続が検出されます。

Closed スキャンの方向 - 矩形領域およびドーナツ領域

このプロセスでは、ROI のグレースケールヒストグラムが計算され、コントラスト (ROI 内で検出されたグレースケール値の差異) が高く、ほかの指定されたパラメータを満たす領域が、エッジと判定されます。

[表示] パラメータが [全て表示: 入力、結果、およびチャート] に設定されているときに表示されるエッジレスポンスチャートに、ROI 内で検出されたグレースケール値の 1 次導関数が表示されます。この山と谷が、主なエッジ変化を表しています。

Closed エッジレスポンスチャートの例

  • [Score] 軸は、ツールで設定された [得点] パラメータ (100 および -100) と [アクセプトしきい値] パラメータによって定義されます。山 (正の得点) は、暗から明へのエッジ変化を示し、谷 (負の得点) は明から暗へのエッジ変化を示します (得点 0 はエッジが検出されなかったことを示します)。
  • [Offset] 軸は、エッジ特徴を検出する ROI を表しています。0 は領域の開始を表し、右端の値は領域の最大幅 (ピクセル単位) を示しています。[Offset] 軸上の山または谷の頂点の位置は、ROI 内で検出されたエッジの位置を示しています。

エッジが検出されると、エッジツール関数が、検出されたエッジに関するデータを含む [image] データ構造体と結果テーブルを自動的に生成します。返された情報は、ほかの In-Sight ビジョンツールでフィクスチャの入力として使用したり、エッジに関するデータをさらに解析するためにほかの Edge ツール関数で使用したりすることができます。

エッジツールを使用する場合

エッジツールは、次のような状況で使用してください。

  • エッジの明ピクセルと暗ピクセル間のコントラストが高い場合。
  • アプリケーションで特徴をすばやく検出する必要がある場合。エッジツールは、In-Sight ビジョンツールの中でも高速です。例えば、パターンよりエッジ特徴の方が速く検出できます。

注: In-Sight エッジツールはグレースケール画像のみを解析します。すべてのカラー画像は、自動的にグレースケール値に変換されます。

エッジツールを使用する理由

次のようなアプリケーションでは、エッジ検出とデータ解析が非常に有効な場合があります。

  • ガスケットなどの部分の円形特徴の半径を測定したり、回路基板の回路の長さを測定したりする計測アプリケーション。
  • ほかの In-Sight ビジョンツールのフィクスチャの入力として使用するための、部品の円形特徴や直線エッジなどの特徴の検出。
  • エッジツールを使用してエッジ特徴が存在するかしないかを判定する、存在の有無を調べるアプリケーション。
  • エッジツールを使用して、設定済みパラメータに基づいてエッジを計数しソートする、計数およびソートアプリケーション。

注意: 水平または垂直の直線エッジ特徴をフィクスチャの入力として使用する場合、FindLine ツールは、ROI のスキャン方向に応じて、水平軸または垂直軸に沿った 1 方向のエッジの動きのみを報告します。

エッジツールの使用方法

エッジツールは通常、次の方法で使用されます。

  • 手順 1 — 画像に対してエッジツールがアプリケーションの条件を満たしているか判定します。
  • 手順 2 — Caliper、FindCircle、FindCircleMinMax、FindCurve、FindMultiLine、FindSegment など、エッジツールのいずれかをスプレッドシートに挿入し、画像内でエッジを判定するようにパラメータを設定します。
  • 手順 3 — PairDistance、PairEdges、PairMaxDistance、PairMeanDistance、PairMinDistance、PairSDevDistance、PairsToEdges、SortEdges など、ほかのエッジツールをフィルタに挿入し、特定の条件に基づいてエッジを計算またはソートします。


Caliper 関数

Caliper 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

適用された得点付け方法に基づき、単一のエッジまたはエッジペアを検出します。

Caliper 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

エッジモード,

検出する数,

最小コントラスト,

アクセプトしきい値,

エッジ幅,

第 1 エッジ,

エッジ: 第 2

エッジ間の距離

表示

)

Caliper 関数 の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

ドーナツ領域に移動、回転、およびカーブ可能な矩形画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

エッジモード

このパラメータは検索の種類を指定します。

単一エッジ | 画像領域で、指定した条件を満たす単一のエッジを検索するようにツールに指定します。このモードでは、位置およびコントラストの得点付け方法を使用できます。
エッジペア | 画像領域で、指定した条件を満たすエッジペアを検索するようにツールに指定します。このモードでは、位置、コントラスト、サイズ、およびまたがるの得点付け方法を使用できます。

検出する数

このパラメータは、返されるエッジまたはエッジペアの最大数を指定します (1 ～ In-Sight ビジョンシステムの画像の幅 - 1、デフォルト = 1)。特定の In-Sight ビジョンシステムが画像を取り込んでいる場合、検出されるエッジの最大数は画像の幅より 1 少ない数になります (つまり、In-Sight 5100 ビジョンシステムの最大数は 639 で、ビジョンシステムの画像解像度 640 × 480 より 1 少ない数になります)。[アクセプトしきい値] の設定を上回る得点を持つエッジまたはエッジペアが、指定した数よりも多く存在する場合は、最高得点のエッジまたはエッジペアが選択されます。

最小コントラスト

エッジまたはエッジペアの最小コントラスト (0 ～ 100、デフォルト = 5) を指定します。Caliper 関数は、最小コントラスト設定を上回る一致得点を持つエッジまたはエッジペアのみを返します。

アクセプトしきい値

許容できる一致最低得点を指定します (0 ～ 100、デフォルト = 5)。Caliper 関数は、アクセプトしきい値を上回る一致得点を持つエッジまたはエッジペアのみを返します。一致得点は、指定したすべての得点付け方法の幾何平均です。
エッジ幅 | エッジ変化が起きるピクセル距離を指定します (1～50、デフォルト = 2)。エッジ幅は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。

第 1 エッジ

ペアの 1 番目のエッジの極性を指定します。Caliper 関数は、1 番目のエッジが指定極性を持つエッジペアだけを報告します。

0 = 黒→白

1 = 白→黒

2 = 任意 (デフォルト)
エッジ: 第 2

ペアの 2 番目のエッジの極性を指定します。Caliper 関数は、2 番目のエッジが指定極性を持つエッジペアだけを報告します。このパラメータは、エッジペアモードの場合のみ使用されます。

0 = 黒→白

1 = 白→黒

2 = 任意 (デフォルト)
エッジ間の距離 | エッジペアの 2 つのエッジ間のピクセル距離を指定します (In-Sight ビジョンシステムの幅の 1 ～ 3 倍、デフォルト = 10)。このパラメータは、エッジペアモードの場合のみ使用されます。エッジ間の距離が画像領域の幅より長い場合、Caliper 関数は #ERR を表示します。画像領域が回転も湾曲もしていない場合、この値は [領域] → [Wide] の値未満にする必要があります。

表示

画像上の Caliper グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | Caliper 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 直線エッジが常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域と直線エッジは常に表示されます。
3 = すべて表示: 入力、結果、およびチャート | 入力画像、直線エッジ、およびエッジのレスポンスチャートが常に表示されます。

Caliper 関数の得点付け方法

Caliper ツールは、各種得点付け方法によって、検出する各エッジまたはエッジペアを得点付ける方法を決定します。

注意: Caliper ツールでは 1 つ以上の得点付け方法を使用する必要があります。得点付け方法が指定されていない場合は、#ERR が表示されます。

[得点付け方法] タブで選択できる得点付け方法は次のとおりです。

位置

エッジペアおよび単一エッジ。この得点付け方法は、画像領域の左側または中央を基準とした、エッジまたはエッジペアの相対位置に基づいています。得点付け設定を調整して、画像領域の左側までの近さに基づいてエッジまたはエッジペアに 0 ～ 100 の範囲の得点を割り当てるように指定することができます。

[中心領域] 設定は、外側エッジまたは中央エッジを得点付けの計算の基準に使用し、画像領域の中心からの相対位置に基づいてエッジまたはエッジペアに得点を付けます。中央エッジは画像領域の中心に近いエッジ、外側エッジは中心からは離れているエッジです。

[中心領域] チェックボックスがオフの場合、得点付けは、左または右のエッジを得点計算の基準に使用し、画像領域の左側からの相対位置に基づいて行われます。

[正規化] 設定はエッジペアに対してのみ使用され、得点を計算する前に、エッジペアのエッジ間の距離を [エッジ間距離] の設定で除算します。これによって、得点計算に実際の値ではなくパーセンテージ値を使用することで、領域内のサイズの変化に適応することができます。

コントラスト

エッジペアおよび単一エッジ。この得点付け方法は、エッジ候補のコントラスト、つまり、エッジを構成する隣接ピクセル間のコントラストの変化に基づいています。エッジペアでは、2 つのエッジの平均コントラストが使用されます。コントラストに基づいて 0 ～ 100 の範囲の得点をエッジまたはエッジペアに割り当てるように、得点付け設定を調整できます。得点の計算の基準は、高コントラストのエッジまたは低コントラストのエッジのいずれかを使用できます。

サイズ

エッジペアのみ。この得点付け方法は、エッジペア間の距離 (サイズ) に基づいています。サイズに基づいて 0 ～ 100 の範囲の得点をエッジペアに割り当てるように、得点付け設定を調整できます。

[エッジペア距離を正規化する] 設定は、得点の計算に実際の距離を使用します。得点の計算の基準として、[エッジ間距離] 設定により近い距離またはより離れている距離 (ピクセル単位) を使用します。それ以外の場合、得点計算の基準は、予想された [エッジ間距離] 設定より長いか、または短いエッジ間距離になります。

[左右対称モードを使用する] 設定では、領域の拡大/縮小を許可することができます。この設定を使用すると、[エッジ間距離] 設定より短いサイズと長いサイズの両方に対応できます。[非対称モード] では、一方向のみの変化を許容して、もう一方への変化を無視することができます。例えば、短い距離を許容して、より長い距離により低い得点を付けるように設定できます。

またがる

エッジペアのみ。この得点付け方法は、2 つのエッジが、画像領域の中心の両側に位置しているかどうかに基づいています。このタイプの得点付け方法を使用して、画像領域の中心に位置すると予測されるエッジのペアによって定義された対象物を見つけることができます。エッジペアのエッジが画像領域の中心にまたがらない場合の得点は 0 で、またがる場合は 100 点になります。

Caliper 関数 の結果出力

戻り値

ペアエッジを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

結果

Caliper 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

エッジモードに [単一エッジ] が選択されている場合、結果テーブルには、各エッジの、インデックス、行 0、列 0、行 1、列 1、得点、コントラスト、および位置が含まれます。インデックスは 0 から始まり、表示される行数は [検出する数] の設定値と等しくなります。

エッジモードに [エッジペア] が選択されている場合、結果テーブルには、各エッジのインデックス、行 0、列 0、行 1、および列 1 と、そのペアの最初のエッジの得点、コントラスト、位置、および距離が含まれます。インデックスは 0 から始まり、表示される行数は [検出する数] の設定値の 2 倍になります。

Caliper 関数 データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(エッジ, エッジのインデックス, 0) | 指定されたエッジの始点の行座標
列 0 | GetCol(エッジ, エッジのインデックス, 0) | 指定されたエッジの始点の列座標
行 1 | GetRow(エッジ, エッジのインデックス, 1) | 指定されたエッジの終点の行座標
列 1 | GetCol(エッジ, エッジのインデックス, 1) | 指定されたエッジの終点の列座標
得点 | GetScore(エッジ, エッジのインデックス) | エッジまたはエッジペアの得点。指定したすべての得点付け関数の幾何平均です。
コントラスト | GetContrast(エッジ, エッジのインデックス) | エッジの前景と背景の間の平均コントラスト (グレースケール階調で、0 ～ 255)。コントラストは黒→白の場合は正の値、白→黒の場合は負の値。
位置 | GetPosition(エッジ, エッジのインデックス) | エッジまたはエッジペアの中心の、画像領域の左側からの相対的な X 位置。
距離 | GetEdgeDistance(エッジ, エッジのインデックス) | エッジモードに [エッジペア] が選択されている場合の、エッジペア間の距離。エッジモードに [単一エッジ] が選択されている場合は、#ERR が返ります。

関連項目

Caliper ツールの使用方法

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


FindCircle 関数

FindCircle 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

ドーナツ状の画像領域内の 1 つの円形のエッジを検出します。FindCircle 関数は、半径が増加する方向にスキャンした同心円上のピクセル値を合計して画像領域の 1 次元プロジェクションを形成します。エッジの変化は、投影された画像データから抽出されます。

FindCircle 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

ドーナツ領域.X,

ドーナツ領域.Y,

ドーナツ領域.内側半径,

ドーナツ領域.外側半径,

極性,

検出する基準,

アクセプトしきい値,

スコアの正規化,

エッジ幅,

表示

)

FindCircle 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力ドーナツ領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

ドーナツ領域

移動および回転可能なドーナツ状画像領域を指定します。

X | フィクスチャ座標での X オフセット
Y | フィクスチャ座標での Y オフセット
内側半径 | 内側の半径
外側半径 | 外側の半径

注意: フィクスチャおよびドーナツ領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

極性

小さい円から大きい円へスキャンするとき、検出するエッジの極性を指定します。FindCircle 関数は、指定された極性のエッジのみを報告します。

0 = 黒→白

1 = 白→黒

2 = 任意（デフォルト）

検出する基準

エッジ選択方法を指定します。FindCircle 関数は、次のいずれかのエッジ候補から 1 つのエッジを選択します。

0 = 得点の高い順（デフォルト）

1 = 最小円

2 = 最大円

アクセプトしきい値

エッジコントラストの最小合格値を指定します（0～100、デフォルト = 25）。エッジコントラストは、スキャンする領域のグレースケールヒストグラムによって正規化されます。FindCircle 関数は、アクセプトしきい値より低いコントラスト得点を不合格とします。

スコアの正規化

エッジ得点（スコア）が、画像領域のグレースケールヒストグラムによって正規化されるかどうかを指定します。得点の正規化が有効になっている場合、未加工のエッジ得点は、次の式を使用して、画像領域内で検出された最大コントラストによって正規化されます。

得点 ＝ 未加工のエッジ得点÷最大コントラスト× 100

ここで、未加工のエッジ得点は、エッジ全体にわたるグレースケール階調の差であり、最大コントラストは、画像領域内での最大と最小のグレースケール階調 (0 ～ 255) の間の差です。

得点の正規化が無効になっている場合、低いコントラストのエッジの得点は、高いコントラストのエッジよりも低くなります。次の式が使用されます。

得点 ＝ 未加工のエッジ得点÷255×100

0 =オフ | 得点を正規化しません。
1 =オン（デフォルト） | 得点を正規化します。

ヒント: 得点の正規化は、低いコントラストの画像領域内でのエッジ検出に有効です。高いコントラストのエッジのみを検出するには、得点の正規化を無効にしてください。

エッジ幅

エッジ変化が起きるピクセル距離を指定します（1～50、デフォルト = 3）。エッジ幅は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。

表示

画像上の FindCircle グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | FindCircle 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 円エッジが常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域と円エッジは両方とも常に表示されます。
3 = 全て表示:入力、結果、およびチャート | 入力画像領域、円エッジ、およびエッジレスポンスチャートが常に表示されます。

FindCircle 関数の結果出力

戻り値 | 単一の円エッジを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | FindCircle 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

FindCircle 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

中心行 | GetRow(エッジ, 0, 0) | 円の中心行
中心列 | GetCol(エッジ, 0, 0) | 円の中心列
半径 | GetRadius(エッジ, 0) | 半径
得点 | GetScore(エッジ, 0) | エッジのコントラスト得点得点は、黒→白の遷移では正の値、白→黒の遷移では負の値になります。

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


FindCircleMinMax 関数

FindCircleMinMax 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

エッジからの最大および最小偏差とエッジ上のすべての点の半径の標準偏差を検出することによって、連続エッジの真円度を調べます。

FindCircleMinMax 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

ドーナツ領域.X,

ドーナツ領域.Y,

ドーナツ領域.内側半径,

ドーナツ領域.外側半径,

極性,

最小コントラスト,

エッジ幅,

表示

)

注意: FindCircleMinMax 関数は、円エッジの検出には使用しないでください。 円エッジの検出には FindCircle 関数を使用してください。

FindCircleMinMax 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力ドーナツ領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

ドーナツ領域

移動および回転可能なドーナツ状画像領域を指定します。

X | フィクスチャ座標での X オフセット
Y | フィクスチャ座標での Y オフセット
内側半径 | 内側の半径
外側半径 | 外側の半径

注意: フィクスチャおよび ドーナツ領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

極性

円の内側から外側へ移動して検出するエッジの極性を指定します。この関数は、指定された極性のエッジのみを報告します。

0 = 黒→白（デフォルト）

1 = 白→黒

最小コントラスト

円に沿った各点の最小グレースケールコントラストを指定します（0～255、デフォルト = 10）。

エッジ幅

エッジ変化が起きるピクセル距離を指定します (1 ～ 25、デフォルト = 3)。エッジ幅は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。

表示

画像上の FindCircleMinMax グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | FindCircleMinMax 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 円エッジと最小 / 最大偏差点が常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域、円エッジ、および最小 / 最大偏差点が常に表示されます。

FindCircleMinMax 関数の結果出力

戻り値 | 単一の円エッジを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
Results | FindCircleMinMax 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

FindCircleMinMax 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

中心行 | GetRow(エッジ) | 円エッジの中心行
中心列 | GetCol(エッジ) | 円エッジの中心列
半径 | GetRadius(エッジ) | 円エッジの半径
最小 | GetMin(エッジ) | 円エッジからの最小偏差
最大 | GetMax(エッジ) | 円エッジからの最大偏差
標準偏差 | GetSDev(エッジ) | 連続エッジ上のすべての点の半径からの標準偏差
得点 | 得点 ＝ （1－2×標準偏差÷半径）×100 | 円エッジと標準偏差に基づく連続エッジの真円性の計測。得点は、標準偏差が小さいほど高くなり、標準偏差が大きいほど低くなります。 得点は次の式を使用して計算されます。 得点 ＝ (1－2 ×標準偏差÷半径) × 100

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

最小行 | GetRow(エッジ, 1) | 円エッジの最小半径点の行
最大行 | GetRow(エッジ, 2) | 円エッジの最大半径点の行
最小列 | GetCol(エッジ, 1) | 円エッジの最小半径点の列
最大列 | GetCol(エッジ, 2) | 円エッジの最大半径点の列
コントラスト | GetContrast(エッジ) | 円エッジの前景と背景の間の平均コントラスト（グレースケール階調で、0～255）。コントラストは黒→白の場合は正の値、白→黒の場合は負の値。

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


FindCurve 関数

FindCurve 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

カーブ画像領域内で 1 つの円弧エッジ線分を検出します。FindCurve 関数は、領域のローカル座標系を基準に正の X 方向にスキャンした円弧線分上のピクセル値を合計することによって画像領域の 1 次元プロジェクションを形成します。エッジの変化は、投影された画像データから抽出されます。

FindCurve 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

極性,

検出する基準,

アクセプトしきい値,

スコアの正規化,

角度範囲,

エッジ幅,

表示

)

FindCurve 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

ドーナツ領域に移動、回転、およびカーブ可能な矩形画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法。
幅 | 領域の Y 軸に沿った寸法。
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

極性

領域の X 軸の方向で検出するエッジの極性を指定します。FindCurve 関数は、指定された極性のエッジのみを報告します。

0 = 黒→白

1 = 白→黒

2 = 任意（デフォルト）

検出する基準

エッジ選択方法を指定します。FindCurve 関数は、次のいずれかのエッジ候補から 1 つのエッジを選択します。

0 = 得点の高い順（デフォルト）

1 = 最初のエッジ

2 = 最後のエッジ

アクセプトしきい値

エッジコントラストの最小合格値を指定します（0～100、デフォルト = 25）。エッジコントラストは、スキャンする領域のグレースケールヒストグラムによって正規化されます。FindCurve 関数は、アクセプトしきい値より低いコントラスト得点を不合格とします。

スコアの正規化

エッジ得点（スコア）が、画像領域のグレースケールヒストグラムによって正規化されるかどうかを指定します。得点の正規化が有効になっている場合、未加工のエッジ得点は、次の式を使用して、画像領域内で検出された最大コントラストによって正規化されます。

得点 ＝ 未加工のエッジ得点÷最大コントラスト× 100

ここで、未加工のエッジ得点は、エッジ全体にわたるグレースケール階調の差であり、最大コントラストは、画像領域内での最大と最小のグレースケール階調 (0 ～ 255) の間の差です。

得点の正規化が無効になっている場合、低いコントラストのエッジの得点は、高いコントラストのエッジよりも低くなります。次の式が使用されます。

得点 ＝ 未加工のエッジ得点÷255×100

0 =オフ | 得点を正規化しません。
1 =オン（デフォルト） | 得点を正規化します。

ヒント:得点の正規化は、低いコントラストの画像領域内でのエッジ検出に有効です。高いコントラストのエッジのみを検出するには、得点の正規化を無効にしてください。

角度範囲

関数のエッジ回転角度の許容値を指定します（0～10、デフォルト = 0）。FindCurve 関数は指定された範囲外のエッジも検出しますが、精度が少し下がります。角度範囲が 0 よりも大きい場合は、エッジ検出速度が低下します。

注意: 角度範囲の最大値 10 は、常に円弧線分の範囲内で有効です。ただし、この設定は現在使用できません。

エッジ幅

エッジ変化が起きるピクセル距離を指定します（1～50、デフォルト = 3）。エッジ幅は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。

表示

画像上の FindCurve グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | FindCurve 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | カーブエッジが常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域とカーブエッジは両方とも常に表示されます。
3 = 全て表示:入力、結果、およびチャート | 入力画像領域、カーブエッジ、およびエッジレスポンスチャートが常に表示されます。

FindCurve 関数の結果出力

戻り値 | 1 つのカーブエッジ線分を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | FindCurve 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

FindCurve 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

中心行 | GetRow(エッジ, 0, 0) | カーブの中心の行座標
中心列 | GetCol(エッジ, 0, 0) | カーブの中心の列座標
始点行 | GetRow(エッジ, 0, 1) | 始点の行座標
始点列 | GetCol(エッジ, 0, 1) | 始点の列座標
終点行 | GetRow(エッジ, 0, 2) | 終点の行座標
終点列 | GetCol(エッジ, 0, 2) | 終点の列座標
半径 | GetRadius(エッジ, 0) | 円弧半径
得点 | GetScore(エッジ, 0) | エッジのコントラスト得点得点は黒→白の場合は正の値、白→黒の場合は負の値。

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


FindLine 関数

FindLine 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

画像領域内の 1 つの直線エッジを検出します。FindLine 関数は、領域のローカル座標系を基準に正の Y 方向にスキャンした半径線分上のピクセル値を合計することによって画像領域の 1 次元プロジェクションを形成します。エッジの変化は、投影された画像データから抽出されます。

FindLine 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

極性,

検出する基準,

アクセプトしきい値,

スコアの正規化,

角度範囲,

エッジ幅,

表示

)

FindLine 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

ドーナツ領域に移動、回転、およびカーブ可能な矩形画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法。
幅 | 領域の Y 軸に沿った寸法。
角度 | フィクスチャ座標での角度
カーブ | 領域の Y 軸と反対側の境界線との間の角度変位

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

極性

Y 軸に垂直の方向で検出するエッジの極性を指定します。FindLine 関数は、指定された極性のエッジのみを報告します。

0 = 黒→白

1 = 白→黒

2 = 任意（デフォルト）

検出する基準

エッジ選択方法を指定します。FindLine 関数は、次のいずれかのエッジ候補から 1 つのエッジを選択します。

0 = 得点の高い順（デフォルト）

1 = 最初のエッジ

2 = 最後のエッジ

アクセプトしきい値

エッジコントラストの最小合格値を指定します（0～100、デフォルト = 25）。エッジコントラストは、スキャンする領域のグレースケールヒストグラムによって正規化されます。FindLine 関数は、アクセプトしきい値より低いコントラスト得点を不合格とします。

スコアの正規化

エッジ得点（スコア）が、画像領域のグレースケールヒストグラムによって正規化されるかどうかを指定します。得点の正規化が有効になっている場合、未加工のエッジ得点は、次の式を使用して、画像領域内で検出された最大コントラストによって正規化されます。

得点 ＝ 未加工のエッジ得点÷最大コントラスト× 100

ここで、未加工のエッジ得点は、エッジ全体にわたるグレースケール階調の差であり、最大コントラストは、画像領域内での最大と最小のグレースケール階調 (0 ～ 255) の間の差です。

得点の正規化が無効になっている場合、低いコントラストのエッジの得点は、高いコントラストのエッジよりも低くなります。次の式が使用されます。

得点 ＝ 未加工のエッジ得点÷255×100

0 =オフ | 得点を正規化しません。
1 =オン（デフォルト） | 得点を正規化します。

ヒント:得点の正規化は、低いコントラストの画像領域内でのエッジ検出に有効です。高いコントラストのエッジのみを検出するには、得点の正規化を無効にしてください。

角度範囲

関数のエッジ回転角度の許容値を指定します（0～10、デフォルト = 0）。FindLine 関数は指定された範囲外のエッジも検出しますが、精度が少し下がります。角度範囲が 0 よりも大きい場合は、エッジ検出速度が低下します。

エッジ幅

エッジ変化が起きるピクセル距離を指定します（1～50、デフォルト = 3）。エッジ幅は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。

表示

画像上の FindLine グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | FindLine 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 直線エッジが常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域と直線エッジは両方とも常に表示されます。
3 = 全て表示:入力、結果、およびチャート | 入力画像領域、直線エッジ、およびエッジレスポンスチャートが常に表示されます。

FindLine 関数の結果出力

戻り値 | 1 つの直線エッジ線分を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | FindLine 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

FindLine 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

角度 | GetAngle(エッジ) | エッジの角度
行 0 | GetRow(エッジ, 0, 0) | 始点の行座標
列 0 | GetCol(エッジ, 0, 0) | 始点の列座標
行 1 | GetRow(エッジ, 0, 1) | 終点の行座標
列 1 | GetCol(エッジ, 0, 1) | 終点の列座標
得点 | GetScore(エッジ, 0) | エッジのコントラスト得点得点は黒→白の場合は正の値、白→黒の場合は負の値。

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


FindMultiLine 関数

FindMultiLine 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

画像領域内の複数の直線エッジを検出します。FindMultiLine 関数は、領域のローカル座標系を基準に正の Y 方向にスキャンした半径線分上のピクセル値を合計することによって画像領域の 1 次元プロジェクションを形成します。エッジの変化は、投影された画像データから抽出されます。

FindMultiLine 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

検出する数,

しきい値: 黒→白,

しきい値: 白→黒,

スコアの正規化,

検出する基準,

角度範囲,

エッジ幅,

表示

)

FindMultiLine 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

ドーナツ領域に移動、回転、およびカーブ可能な矩形画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法。
幅 | 領域の Y 軸に沿った寸法。
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

検出する数

関数が返すエッジの最大数を指定します (センサの画像幅から 1 を引いた数、デフォルト = 3）。検出可能な最大エッジ数は、In-Sight ビジョンシステムの画像幅から 1 を引いた数です。例えば、In-Sight 5100 ビジョンシステムの解像度は 640 × 480 であるため、検出可能な最大エッジ数は 639 となります。

しきい値: 黒→白

黒から白へのエッジコントラスト得点の最小許容値を指定します（0～100、デフォルト = 25）。FindMultiLine 関数は、コントラスト得点が黒→白のしきい値より小さい黒→白エッジをすべて不合格とします。エッジコントラストは、スキャンする領域のグレースケールヒストグラムによって正規化されます。

しきい値: 白→黒

白から黒へのエッジコントラスト得点の最小許容値を指定します（0～100、デフォルト = 25）。FindMultiLine 関数は、コントラスト得点が白→黒のしきい値より小さい白→黒エッジをすべて不合格とします。エッジコントラストは、スキャンする領域のグレースケールヒストグラムによって正規化されます。

スコアの正規化

エッジ得点（スコア）が、画像領域のグレースケールヒストグラムによって正規化されるかどうかを指定します。得点の正規化が有効になっている場合、未加工のエッジ得点は、次の式を使用して、画像領域内で検出された最大コントラストによって正規化されます。

得点 ＝ 未加工のエッジ得点÷最大コントラスト× 100

ここで、未加工のエッジ得点は、エッジ全体にわたるグレースケール階調の差であり、最大コントラストは、画像領域内での最大と最小のグレースケール階調 (0 ～ 255) の間の差です。

得点の正規化が無効になっている場合、低いコントラストのエッジの得点は、高いコントラストのエッジよりも低くなります。次の式が使用されます。

得点 ＝ 未加工のエッジ得点÷ 255 × 100

0 =オフ | 得点を正規化しません。
1 =オン（デフォルト） | 得点を正規化します。

ヒント:得点の正規化は、低いコントラストの画像領域内でのエッジ検出に有効です。高いコントラストのエッジのみを検出するには、得点の正規化を無効にしてください。

検出する基準

エッジ選択方法を指定します。FindMultiLine 関数は、次のいずれかのエッジ候補から 1 つのエッジを選択します。

0 = 得点の高い順（デフォルト）

1 = 最初のエッジ

2 = 最後のエッジ

角度範囲

関数のエッジ回転角度の許容値を指定します（0～10、デフォルト = 0）。FindMultiLine 関数は指定された範囲外のエッジも検出しますが、精度が少し下がります。角度範囲が 0 よりも大きい場合は、エッジ検出速度が低下します。

エッジ幅

エッジ変化が起きるピクセル距離を指定します（1～50、デフォルト = 3）。エッジ幅は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。

表示

画像上の FindMultiLine グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | FindMultiLine 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 検出された直線エッジが常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域と検出された直線エッジは両方とも常に表示されます。
3 = 全て表示:入力、結果、およびチャート | 入力画像領域、検出された直線エッジ、およびエッジのレスポンスチャートが常に表示されます。

FindMultiLine 関数の結果出力

戻り値 | 複数の直線エッジ線分を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | FindMultiLine 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

FindMultiLine 関数のデータアクセス関数

スプレッドシートに自動挿入されて結果テーブルを作成するデータアクセス関数は次のとおりです。

検出数

GetNFound(エッジ)

検出されたエッジの数です。

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

角度 | GetAngle(エッジ, インデックス) | 指定されたエッジの角度
行 0 | GetRow(エッジ, エッジのインデックス, 0) | 始点の行座標
列 0 | GetCol(エッジ, エッジのインデックス, 0) | 始点の列座標
行 1 | GetRow(エッジ, エッジのインデックス, 1) | 終点の行座標
列 1 | GetCol(エッジ, エッジのインデックス, 1) | 終点の列座標
得点 | GetScore(エッジ, エッジのインデックス) | エッジのコントラスト得点得点は黒→白の場合は正の値、白→黒の場合は負の値。

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


FindSegment 関数

ビジョンツール → エッジ

In-Sight 関数リファレンス

画像領域内のエッジペアを検出し、そのエッジ間の円弧距離を計算します。FindSegment 関数は、X 方向にスキャンした放射線状のピクセル値を合計することによって、画像領域の 1 次元プロジェクションを作成します。エッジの変化は、投影された画像データから抽出されます。エッジからエッジまでの距離が計算される円弧線分は、エッジを抽出するときに使用された領域から導出されます。

FindSegment 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

対象物の色,

検出する基準,

アクセプトしきい値,

スコアの正規化,

角度範囲,

エッジ幅,

表示

)

FindSegment 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

ドーナツ領域に移動、回転、およびカーブ可能な矩形画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法。
幅 | 領域の Y 軸に沿った寸法。
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

対象物の色

検出される線分の色を指定します。FindSegment 関数は、指定された極性のエッジペアのみを報告します。

0 = 黒（デフォルト） | 黒い対象物（白→黒に続いて黒→白の極性を持つもの）
1 = 白 | 白い対象物（黒→白に続いて白→黒の極性を持つもの）

検出する基準

エッジ選択方法を指定します。

0 = 最も広い対象物（デフォルト） | 特定の色によって識別できる線分からかけ離れた 2 つのエッジを検索。
1 = 最もエッジ強度が強いもの | 特定の色によって識別できる線分で、応答性の一番高い 2 つのエッジを検索。
2 = 最も広く途切れのない対象物 | 特定の色によって識別できる線分から、間にそのほかのエッジを含まない 2 つのエッジを検索。
3 = 最も狭い対象物 | 特定の色によって識別できる線分から、互いに一番近い 2 つのエッジを検索。

アクセプトしきい値

エッジコントラストの最小合格値を指定します（0～100、デフォルト = 25）。エッジコントラストは、スキャンする領域のグレースケールヒストグラムによって正規化されます。FindSegment 関数は、アクセプトしきい値より低いコントラスト得点を不合格とします。

スコアの正規化

エッジ得点（スコア）が、画像領域のグレースケールヒストグラムによって正規化されるかどうかを指定します。得点の正規化が有効になっている場合、未加工のエッジ得点は、次の式を使用して、画像領域内で検出された最大コントラストによって正規化されます。

得点 ＝ 未加工のエッジ得点÷最大コントラスト× 100

ここで、未加工のエッジ得点は、エッジ全体にわたるグレースケール階調の差であり、最大コントラストは、画像領域内での最大と最小のグレースケール階調 (0 ～ 255) の間の差です。

得点の正規化が無効になっている場合、低いコントラストのエッジの得点は、高いコントラストのエッジよりも低くなります。次の式が使用されます。

得点 ＝ 未加工のエッジ得点÷255×100

0 =オフ | 得点を正規化しません。
1 =オン（デフォルト） | 得点を正規化します。

ヒント:得点の正規化は、低いコントラストの画像領域内でのエッジ検出に有効です。高いコントラストのエッジのみを検出するには、得点の正規化を無効にしてください。

角度範囲

関数のエッジ回転角度の許容値を指定します（1～10、デフォルト = 0）。FindSegment 関数は指定された範囲外のエッジも検出しますが、精度が少し下がります。角度範囲に 0 より大きい値を設定すると、エッジ検出速度が低下します。

エッジ幅

エッジ変化が起きるピクセル距離を指定します（1～50、デフォルト = 3）。エッジ幅は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。

表示

画像上の FindSegment グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | FindSegment 関数を含むセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | エッジ線分を定義する 2 つのエッジが常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域と 2 つのエッジは両方とも常に表示されます。
3 = 全て表示:入力、結果、およびチャート | 入力画像、2 つのエッジ、およびエッジのレスポンスチャートが常に表示されます。

FindSegment 関数の結果出力

戻り値 | 一致した直線エッジのペアを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | FindSegment が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

FindSegment 関数のデータアクセス関数

2 つのデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

距離 | PairDistance(エッジ, 0, 1) | 線分の距離
得点 | GetScore(エッジ, 0) | 線分のコントラスト得点

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

角度 | GetAngle(エッジ, インデックス) | 指定されたエッジの角度
行 0 | GetRow(エッジ, エッジのインデックス, 0) | 始点の行座標
列 0 | GetCol(エッジ, エッジのインデックス, 0) | 始点の列座標
行 1 | GetRow(エッジ, エッジのインデックス, 1) | 終点の行座標
列 1 | GetCol(エッジ, エッジのインデックス, 1) | 終点の列座標

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


PairDistance 関数

PairDistance 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

データ構造体の 2 つのエッジ間の距離を計算します。PairDistance 関数はインデックス番号によって 2 つのエッジを参照し、それらのエッジの中点間どうしの距離を報告します。エッジ間の距離が計算される線分は、最初に画像からエッジを抽出した領域から導出されます。

PairDistance 関数 (

エッジ ,

第1エッジ,

第2エッジ

)

注意: PairDistance 関数が数式 Abs に追加された場合 (例えば、Abs(B2)+PairDistance(C2,0,1))は、PairDistance 関数を専用のスプレッドシートセルに挿入し、数式 Abs へのセル参照を使用することを推奨します。

PairDistance 関数の入力パラメータ

エッジ | このパラメータは複数の直線エッジから構成される [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。
第 1 エッジ | エッジペアの 1 番目のインデックス番号を指定します（0～10000、デフォルト = 0）。
第 2 エッジ | エッジペアの 2 番目のインデックス番号を指定します（0～10000、デフォルト = 1）。

PairDistance 関数の結果出力

戻り値

エッジ間の円弧距離。入力パラメータが無効であれば #ERR を返します。

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


PairEdges 関数

PairEdges 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

エッジの配列をエッジペアの配列にソートします。PairEdges 関数は、指定された許容範囲内のエッジペアの [image] データ構造体をスキャンします。ペアに属するエッジは、ペアの 1 番目のエッジは偶数インデックス番号となり、2 番目のエッジは奇数インデックス番号となり、順番に並べられます。

PairEdges 関数 (

エッジ,

エッジペアの数,

第 1 エッジ,

第 2 エッジ,

最小距離,

最大距離,

中間のエッジ.最小 黒→白,

中間のエッジ.最大 黒→白,

中間のエッジ.最小 白→黒,

中間のエッジ.最大 白→黒,

表示

)

PairEdges 関数の入力パラメータ

エッジ

このパラメータは複数の直線エッジから構成される [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

エッジペアの数

報告するペアの最大数を指定します (0 ～ 80、デフォルト = 1)。

第 1 エッジ

ペアの 1 番目のエッジの極性を指定します。PairEdges 関数は、1 番目のエッジが指定極性を持つエッジペアだけを報告します。

0 = 黒→白

1 = 白→黒（デフォルト）

2 = 任意

第 2 エッジ

ペアの 2 番目のエッジの極性を指定します。PairEdges 関数は、2 番目のエッジが指定極性を持つエッジペアだけを報告します。

0 = 黒→白（デフォルト）

1 = 白→黒

2 = 任意

最小距離

ペア内のエッジ間の最小の円弧距離 (0 ～ 4800、デフォルト = 0) を指定します。PairEdges 関数は、最小距離より離れているエッジペアだけを報告します。

最大距離

ペア内のエッジ間の最大の円弧距離 (0 ～ 4800、デフォルト = 50) を指定します。PairEdges 関数は、最大距離より近いエッジペアだけを報告します。

中間のエッジ

エッジペアの端点間の範囲に入るエッジの予想数と極性を指定します。PairEdges 関数は中間エッジの予想数とエッジペアを報告します。

最小 黒→白 | エッジペアの端点間で予想される黒→白エッジの最小数を指定します (0 ～ 320、デフォルト = 0)。
最大 黒→白 | エッジペアの端点間で予想される黒→白エッジの最大数を指定します (0 ～ 320、デフォルト = 0)。
最小 白→黒 | エッジペアの端点間で予想される白→黒エッジの最小数を指定します (0 ～ 320、デフォルト = 0)。
最大 白→黒 | エッジペアの端点間で予想される白→黒エッジの最大数を指定します (0 ～ 320、デフォルト = 0)。

表示

画像上の PairEdges グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | PairEdges 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 直線エッジが常に表示されます。

PairEdges 関数の結果出力

戻り値 | ペアエッジを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | PairEdges 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

PairEdges データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

ペア数 | GetNFound(エッジ) | 検出されたエッジペアの数
最小距離 | PairMinDistance(エッジ) | エッジペア間の最小距離
最大距離 | PairMaxDistance(エッジ) | エッジペア間の最大距離
平均距離 | PairMeanDistance(エッジ) | エッジペア間の平均距離
標準偏差距離 | PairSDevDistance(エッジ) | エッジペア間の距離の標準偏差

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

角度 | GetAngle(エッジ, インデックス) | 指定されたエッジの角度
行 0 | GetRow(エッジ, エッジのインデックス, 0) | 指定されたエッジの始点の行座標
列 0 | GetCol(エッジ, エッジのインデックス, 0) | 指定されたエッジの始点の列座標
行 1 | GetRow(エッジ, エッジのインデックス, 1) | 指定されたエッジの終点の行座標
列 1 | GetCol(エッジ, エッジのインデックス, 1) | 指定されたエッジの終点の列座標
得点 | GetScore(エッジ, エッジのインデックス) | 指定されたエッジのエッジコントラスト得点

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


PairMaxDistance 関数

PairMaxDistance 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

エッジペア間の最大距離を検出します。PairMaxDistance 関数は [image] データ構造体に含まれているエッジペアの配列を検索し、最大円弧長を囲んでいるエッジペアを探してその距離値を返します。

PairMaxDistance 関数 (

エッジ

)

PairMaxDistance 関数の入力パラメータ

エッジ

複数の直線エッジから構成される [image] データ構造体を含んでいるスプレッドシートセルを参照します。

PairMaxDistance 関数は、入力した [image] データ構造体が、偶数インデックスのエッジはエッジペアの 1 番目のエッジを含み、奇数インデックスのエッジはエッジペアの 2 番目のエッジを含んでいる、というようにペアでソートされていることを前提としています。

PairMaxDistance 関数の結果出力

戻り値

エッジペア間の距離の最大値。入力パラメータが無効であれば #ERR を返します。

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


PairMeanDistance 関数

PairMeanDistance 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

エッジペア間の距離の平均を計算します。

PairMeanDistance 関数 (

エッジ

)

PairMeanDistance 関数の入力パラメータ

エッジ

複数の直線エッジから構成される [image] データ構造体を含んでいるスプレッドシートセルを参照します。

PairMeanDistance 関数は、入力した [image] データ構造体が、偶数インデックスのエッジはエッジペアの 1 番目のエッジを含み、奇数インデックスのエッジはエッジペアの 2 番目のエッジを含んでいる、というようにペアでソートされていることを前提としています。

PairMeanDistance 関数の結果出力

戻り値

エッジペア間の距離の平均値。入力パラメータが無効であれば #ERR を返します。

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


PairMinDistance 関数

PairMinDistance 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

エッジペア間の最小距離を検出します。PairMinDistance 関数は [image] データ構造体に含まれているエッジペアの配列を検索し、最大円弧長を囲んでいるエッジペアを探してその距離値を返します。

PairMinDistance 関数 (

エッジ

)

PairMinDistance 関数の入力パラメータ

エッジ

複数の直線エッジから構成される [image] データ構造体を含んでいるスプレッドシートセルを参照します。

PairMinDistance 関数は、入力した [image] データ構造体が、偶数インデックスのエッジはエッジペアの 1 番目のエッジを含み、奇数インデックスのエッジはエッジペアの 2 番目のエッジを含んでいる、というようにペアでソートされていることを前提としています。

PairMinDistance 関数の結果出力

戻り値

エッジペア間の距離の最小値。入力パラメータが無効であれば #ERR を返します。

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


PairSDevDistance 関数

PairSDevDistance 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

エッジペア間の距離の標準偏差を計算します。

PairSDevDistance 関数 (

エッジ

)

PairSDevDistance 関数の入力パラメータ

エッジ

データ構造体を含んでいるスプレッドシートのセルへの参照。データ構造体は複数の直線エッジで構成されている必要があります。

PairSDevDistance 関数は、入力した [image] データ構造体が、偶数インデックスのエッジはエッジペアの 1 番目のエッジを含み、奇数インデックスのエッジはエッジペアの 2 番目のエッジを含んでいる、というようにペアでソートされていることを前提としています。

PairSDevDistance 関数の結果出力

戻り値

エッジペア間の距離の標準偏差値。入力パラメータが無効の場合は #ERR を返します。

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


PairsToEdges 関数

PairsToEdges 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

エッジペア配列をエッジ配列に変換します。PairsToEdges 関数は、偶数インデックスのエッジの行および列座標を、対応する奇数インデックスのエッジの行および列座標で平均し、ペアのエッジを 1 つのエッジに変換します。

PairsToEdges 関数 (

エッジ ,

エッジペアの数,

表示

)

PairsToEdges 関数の入力パラメータ

エッジ

データ構造体を含んでいるスプレッドシートのセルへの参照。データ構造体は複数の直線エッジで構成されている必要があります。

PairsToEdges 関数は、入力した [image] データ構造体が、偶数インデックスのエッジはエッジペアの 1 番目のエッジを含み、奇数インデックスのエッジはエッジペアの 2 番目のエッジを含んでいる、というようにペアでソートされていることを前提としています。

エッジペアの数

エッジに変換するエッジペアの数を指定します。（0～80、デフォルト 1）

表示

画像上の PairsToEdges グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | ExtractHistogram 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | エッジペアが常に表示されます。

PairsToEdges 関数の結果出力

戻り値 | エッジペアから派生したエッジを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | PairsToEdges 関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

PairsToEdges データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(エッジ, エッジのインデックス, 0) | 始点の行座標
列 0 | GetCol(エッジ, エッジのインデックス, 0) | 始点の列座標
行 1 | GetRow(エッジ, エッジのインデックス, 1) | 終点の行座標
列 1 | GetCol(エッジ, エッジのインデックス, 1) | 終点の列座標
得点 | GetScore(エッジ, エッジのインデックス) | エッジのコントラスト得点

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


SortEdges 関数

SortEdges 関数 |
ビジョンツール → エッジ | In-Sight 関数リファレンス

指定された条件を基準にエッジの配列をソートします。

SortEdges 関数 (

エッジ ,

ソートする数 ,

ソート基準 ,

表示

)

SortEdges 関数の入力パラメータ

エッジ

データ構造体を含んでいるスプレッドシートのセルへの参照。データ構造体は複数の直線エッジで構成されている必要があります。

ソートする数

ソートするエッジの数を指定します (0 ～ 160、デフォルト = 2)。

ソート基準

エッジをソートする基準を指定します。

0 = 得点の高い順 | コントラスト得点の降順でソートします。
1 = 最初から最後へ（デフォルト） | 元のスキャン方向でソートします。
2 = 黒→白の得点、次に白→黒の得点 | 極性でソートし、次に得点でソートします。
3 = 黒→白: 最初から最後へ、次に白→黒: 最初から最後へ | 極性でソートし、次に元のスキャン順でソートします。
4 = 最後から最初へ | スキャン順の逆にソートします。

表示

画像上の SortEdges グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | SortEdges 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 直線エッジが常に表示されます。

SortEdges 関数の結果出力

戻り値 | ソートされたエッジを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | SortEdges 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

SortEdges データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

Angle | GetAngle(エッジ, インデックス) | 指定されたエッジの角度
行 0 | GetRow(エッジ, エッジのインデックス, 0) | 始点の行座標
列 0 | GetCol(エッジ, エッジのインデックス, 0) | 始点の列座標
行 1 | GetRow(エッジ, エッジのインデックス, 1) | 終点の行座標
列 1 | GetCol(エッジ, エッジのインデックス, 1) | 終点の列座標
得点 | GetScore(エッジ, エッジのインデックス) | エッジのコントラスト得点

関連項目

エッジツールについて

エッジデータアクセス関数

プロパティシートの使用方法


傷検出関数

ビジョンツール

In-Sight 関数リファレンス

傷検出ビジョンツールの SurfaceFlaw 関数、DetectFlaw 関数、FlexFlawModel 関数および TrainFlawModel 関数は、欠陥の有無を検証するための高度なパターン一致分析の実行に使用されます。

傷検出ビジョンツールの SurfaceFlaw 関数は、登録モデルを使用せずに、ピクセル明度のばらつきに基づいて小さな欠陥を検出するために使用されます。このツールは、グレースケール画像またはカラー画像から、傷、刃こぼれ、裂け目、汚れまたは破片などの欠陥を検出するように設計されています。

傷検出ビジョンツールの DetectFlaw 関数、FlexFlawModel 関数および TrainFlawModel 関数は「ゴールデン」部品、つまり完全な部品に基づくモデルを作成してから、高度なパターン一致アルゴリズムを使用してこのモデルと取り込んだ画像を比較し、エッジの欠落や表面の傷、正しく印刷されていないロゴなどの欠陥の有無を判断します。

In-Sight ビジョンシステムは、傷検出ビジョンツールの次の関数を使用して、詳細な欠陥検出分析を実行します。

  • SurfaceFlaw 関数:　欠陥の有無を判断するための画像内のローカルな明度のばらつきを検出します。
  • DetectFlaw 関数:　取り込んだ画像とモデルを比較したときに欠陥の有無を判断するためのパラメータを作成します。
  • FlexFlawModel 関数:　プロセスばらつきを補正するためのオプションの Flex アルゴリズムを作成します。
  • TrainFlawModel 関数:　「ゴールデン」部品のモデルを作成します。

注意:　FlexFlawModel 関数は、TrainFlawModel 関数によって出力されたデータ構造体を参照する必要があります。DetectFlaw 関数は、TrainFlawModel 関数または DetectFlaw 関数によって出力されたデータ構造体を参照することがあります。

In-Sight 傷検出関数 ツールについて

傷検出ビジョンツールは、SurfaceFlaw 関数および、DetectFlaw 関数、FlexFlawModel 関数、TrainFlawModel 関数の、2 つのツールグループによって構成されています。

  • 傷検出ビジョンツールの SurfaceFlaw 関数
  • 傷検出ビジョンツールの DetectFlaw 関数、FlexFlawModel 関数 および TrainFlawModel 関数

傷検出ビジョンツールの SurfaceFlaw 関数

概要

SurfaceFlaw 関数は、生産プロセスにおける欠陥である、ローカルな明度のばらつきとカラーのばらつきのある領域を検出するように設計されています。この関数は、ブロブ解析を適用して欠陥の有無を判断する前に、内部のフィルタ操作を使用して、最初にカラーまたはグレースケールに急な変動のあったエッジと領域をハイライトします。

SurfaceFlaw 関数はスタンドアローン関数です。モデルを使用する必要がないため、設定が簡略化され実行時間が改善されます。モデルを組み込まないため、この関数は実行時の照明のばらつきを考慮し、欠陥を正確に検出することができます。ただし、DetectFlaw 関数、FlexFlawModel 関数および TrainFlawModel 関数が持つような、発生する可能性のあるばらつきを補正する機能はないため、部品のプロセスのばらつきを調整することはできません。このため、SurfaceFlaw 関数は、検査される部品の領域が均一である必要がある、つまり、急な変動が欠陥として分類されるアプリケーションに適しています。部品に明度のばらつきがある場合、そのほかの傷検出関数によってそうしたばらつきが考慮される必要があります。

注意:　SurfaceFlaw 関数は、Mask 関数によって出力された [image] データ構造体を受け入れます。これにより、この関数は画像内の指定した領域のみを検査することができます。

傷検出ビジョンツールの DetectFlaw 関数、FlexFlawModel 関数 および TrainFlawModel 関数

概要

傷検出ツールの DetectFlaw 関数、FlexFlawModel 関数および TrainFlawModel 関数は、欠陥が存在するかどうかを検証するための高度なパターン一致分析を実行するように設計されています。このツールの関数は、モデルの「引き伸ばし」(発生する可能性のあるばらつきを補正するように関数に指示すること) および画像の減算を組み合わせて、取り込まれた画像と比較する詳細モデルを作成し、取り込まれた画像に欠陥が存在するかどうかを判断します。このアーキテクチャでは、関数は実行時にモデルを動的に更新する機能を提供します。

これらの関数を組み合わせて、次の種類の検査を実行することができます。

  • 境界線の欠陥 - 部品や対象物が同じ形状を維持していることを確認します。
  • 表面の欠陥 - 部品や対象物に汚れや傷がないことを確認します。
  • 印刷の検査 - 部品や対象物にロゴが正しくシルクスクリーン印刷され、欠陥がないことを確認します。

モデルの作成

すべてのアプリケーションと同様に、「良好」と「不良」の両方の状態の部品が含まれる部品の画像のデータベースが最初にロードされます。傷検出ツールの使用を開始するには、最初に、検査する対象物や部品の画像を取り込みます。この対象物や部品は、検査される対象物や部品を「ゴールデン」として、つまり完全に表現したものです。これによって、対象物や部品の正しい特徴がすべてオリジナルのモデルに含まれていることが確認されます。画像の取り込み後、TrainFlawModel 関数がスプレッドシートに追加され、画像内の対象物や部品を定義するために、この関数の内部領域、または外部領域やパスへの参照のいずれかが指定されます。モデルが適切に定義されるように、すべてのパラメータを調整すると、この関数によって、モデルに関するデータがすべて格納されるようになります。

傷検出

登録モデルの準備ができたら、DetectFlaw 関数を使用して、取り込まれた画像に現れる対象物や部品内の欠陥を分類できるようになります。DetectFlaw 関数は TrainFlawModel 関数に格納されたモデルデータと取り込まれた画像を比較し、対象物や部品に面積欠陥またはエッジ欠陥、もしくはこの両方が存在するかどうかを判断します。領域の検査では、対象物や部品の表面上の傷や汚れなどの欠陥の有無が検証されます。また、エッジの検査では、余分なエッジ、またはエッジの欠落がないかどうか、また対象物や部品の境界線が一定であるかどうかが検証されます。領域とエッジの欠陥を組み合わせることによって、最高レベルの検査確認を行うことができます。

DetectFlaw 関数には、実行時に特定の欠陥を無視するようにマスクを動的に調整するためのコントロールも含まれています。

モデルの Flex 化

対象物や部品に歪みまたはプロセスばらつきが生じる場合、必要に応じて、FlexFlawModel 関数を使用して、歪みやプロセスばらつきを補正するための Flex アルゴリズムを作成することができます。FlexFlawModel 関数を使用して、モデルを「引き伸ばし」する、つまり部品で発生する可能性のあるばらつきの範囲がより広くなるようにモデルを修正し、DetectFlaw 関数がこのばらつきを欠陥として分類しないようにすることができます。

用語の定義:

  • エッジピクセル:　異なるピクセル値を持つ 2 つの領域間の境界線上に位置する画像内のピクセル。
  • エッジセグメント:　異なるピクセル値を持つ領域間の連続する境界線。エッジセグメントは、エッジピクセル (つまり、「エッジ特徴」) のリストによって表されます。
  • Flex:　位置決めエラー、レンズや遠近歪み、登録エラー、またはそのほかの通常のプロセスばらつきによって引き起こされるエッジピクセルとエッジセグメントの変位。
  • 囲まれたセグメントおよび囲まれたセグメント Flex: 囲まれたセグメントは、始点と終点が同じエッジセグメントです。また、囲まれたセグメント Flex は囲まれたセグメントの変位です。
  • 線分 Flex: 線分はエッジセグメントの一部です。これは囲まれていることもあり、囲まれていないこともあります。線分 Flex は線分の変位です。
  • ピクセル Flex:　エッジピクセルの変位。
  • Flex 解像度:　Flex に対する訂正が適用されるときに、モデル画像およびマスク画像に適用される倍率。解像度が高いほど、より正確に非線形歪みを処理できるようになりますが、消費されるメモリの量も増加します。
  • マスク/マスキング:　処理中に無視されるピクセル位置の集合。ピクセル値に関係なく、マスクされたピクセルが欠陥を生成することはありません。

注意:　傷検出ツールが持つマスク/マスキング機能は EditCompositeRegion 関数で適用される機能とは異なります。EditCompositeRegion 関数は通常、不規則な対象領域 (ROI) を定義し、画像の領域を除外するために使用されます。一方、傷検出ツールで使用されるマスキングは、モデルを作成するときのピクセルグレースケール勾配値を決定するために計算されます。

  • 面積欠陥:　登録モデル画像のピクセルと取り込まれた画像を比較し、ピクセル値 (グレースケールまたは色の明度) が同じであるかどうかを検証することによって検出される欠陥のタイプ。面積欠陥は通常、ブロブ状で、変色、染み、汚れ、または縞を含むことがあります。
  • エッジの欠落の欠陥:　あらかじめ登録しておいたエッジセグメントが、取り込まれた画像に存在しないときに発生する欠陥のタイプ。エッジの欠落という欠陥には、通常、部品の外形の変化や特徴の欠損などの欠陥が含まれます。
  • 余分なエッジの欠陥: 取り込まれた画像に現れているエッジセグメントが、登録されているエッジセグメントには存在しないときに発生する欠陥のタイプ。余分なエッジの欠陥には、通常、余分な特徴、傷、裂け目などの欠陥が含まれます。
  • モデル画像:　登録中に保存された画像。モデル画像は、面積欠陥を検出するために、取り込まれた画像と比較されます。
  • マスク画像:　マスクされたピクセルの位置と値、およびマスクされたエッジセグメントの位置を表します。マスク画像には、EditCompositeRegion 関数の形状やそのほかの非矩形形状によって除外された画像の領域は含まれません。
  • 残余画像:　取り込んだ画像をモデル画像およびマスク画像と比較することによって作成される画像。この画像は、面積欠陥を検出するために生成されます。


SurfaceFlaw 関数

SurfaceFlaw 関数 |
ビジョンツール → 傷検出 | In-Sight 関数リファレンス

SurfaceFlaw 関数を使用して、検査対象の対象物や部品のスクラッチ、刃こぼれ、裂け目などの欠陥を示す、ローカルな明度のばらつきを検出します。

  • SurfaceFlaw 関数の概要
  • SurfaceFlaw 関数の入力パラメータ
  • SurfaceFlaw 関数の結果出力
  • SurfaceFlaw 関数のデータアクセス関数
  • 関連項目

概要

SurfaceFlaw 関数は、生産プロセスの欠陥である、ローカルな明度のばらつきとカラーのばらつきのある領域を検出するように設計されています。この関数は、2 種類の内部フィルタ操作 (エッジ状の欠陥の検出に使用する [高速検出]、またはブロブ状の欠陥の検出に使用する [明るい傷]、[暗い傷]、[両方]) を使用します。しきい値を設定し、ブロブ解析を適用して欠陥の有無を判断する前に、最初に、カラーまたはグレースケールに急な変動のあったエッジと領域をハイライトします。

SurfaceFlaw 関数はスタンドアローン関数です。モデルを使用する必要がないため、設定が簡略化され実行時間が改善されます。モデルを組み込まないため、この関数は実行時の照明のばらつきを考慮し、欠陥を正確に検出することができます。ただし、DetectFlaw 関数、FlexFlawModel 関数および TrainFlawModel 関数が持つような、発生する可能性のあるばらつきを補正する機能はないため、部品のプロセスのばらつきを調整することはできません。このため、SurfaceFlaw 関数は、検査される部品の領域が均一である、つまり、明度に急な変動があると欠陥として分類されるアプリケーションに適しています。部品にプロセスのばらつきがある場合、ほかの Flaw Detection 関数でばらつきが考慮される必要があります。

注意:　SurfaceFlaw 関数は、Mask 関数によって出力された [image] データ構造体を受け入れます。これにより、画像内の指定した領域のみを検査することができます。

SurfaceFlaw 関数の設定

SurfaceFlaw 関数の設定では、欠陥の有無の判別に使用されるしきい値を確立します。開始前に、検査対象となる部品の画像のデータベースを収集します。これには、誤差のない状態の部品画像と、一般的な誤差を示す画像が含まれます。画像は [記録/再生のオプション] ダイアログを使用してロードします。

まず最初に、誤差のない状態の部品の画像をロードします。SurfaceFlaw 関数をスプレッドシートに挿入し、検査対象の画像領域を囲むように [領域] を調整します。[領域] を設定するときは、ラベルや、文字またはロゴのエッジなどの無関係な特徴は含めないようにします。検査対象に部品のエッジを含める場合、領域がエッジに対して平行に位置される必要があります (円形の領域についても同様に、部品のエッジに対して円形のカーブ領域が平行)。ただし、エッジを超えないようにします。

注意:
  • 部品が動きを有する場合、[フィクスチャ] を使用して [領域] が部品に応じて移動することを確認してください。
  • ラベルや英数字などの検査対象から除外する必要のある領域が部品に含まれる場合、Mask 関数によって出力された [image] データ構造体を使用し、除外する領域を削除します。これにより、画像内の指定した領域のみを検査することができます。

関数のパラメータが欠陥を特定しないように設定されていることを確認します。SurfaceFlaw 関数には、[表示画像] パラメータが含まれています。このパラメータによって、パラメータでの調整がどのように関数に影響するかを示す視覚的フィードバックが提供されます。まず、[表示画像] パラメータを [傷候補] に設定し、検出された欠陥が赤色の境界ボックスで囲まれるようにします。

パラメータを調整する際は、[サンプル係数] と [平滑化係数] パラメータを調整することを推奨します。勾配の小さい欠陥、または低コントラストの欠陥を検出するには、[サンプル係数] を大きくします。[サンプル係数] パラメータを大きくすると、小さな欠陥や疑似欠陥を除外することができます。

これらのパラメータを調整したら、[検出タイプ]、[検出サイズ]、および [検出軸] パラメータのさまざまなオプションを使用します。この関数には、エッジ状の欠陥と、ブロブ状の欠陥の、2 種類の欠陥の検出方法があります。[検出タイプ] パラメータを [高速検出] に設定すると、「領域」タイプの欠陥のエッジに対してエッジ状の欠陥を検出するエロージョン/ダイレーションフィルタを実行します。これにより、欠陥の面積全体ではなく、欠陥の境界ボックスの周囲長として欠陥のサイズが報告されます。この設定は、スクラッチや裂け目などの欠陥を検出するのに有用です。

[検出タイプ] のオプション ([明るい傷]、[暗い傷]、または [両方]) は、ボトムハットフィルタとトップハットフィルタの組み合わせを使用してブロブ状の欠陥を検出します。これにより、ピクセルサイズに基づいて欠陥を検出することができます。このオプションは、斑点、染み、汚れなどの欠陥の面積を基準にして欠陥を検出するのに有用です。ただし、この 3 種類の [検出タイプ] オプションは、一般的により長い処理時間を必要とします。

[検出タイプ] パラメータを [高速検出] に設定する必要のあるほとんどのアプリケーションで、[検出サイズ] は通常、1 に設定するのが適切です。[明るい傷]、[暗い傷]、または [両方] に設定する必要のあるアプリケーションでは、[検出サイズ] パラメータは、検出対象の欠陥の半径よりも大きいサイズに設定する必要があります。

注意:　[領域] がエッジに対して平行に設定された場合、[検出軸] を領域と平行になるように設定する必要があります。

最後に、[最小傷面積]、[最大傷面積] および [最小コントラスト] パラメータを調整し、欠陥がそれぞれ適切に検出され、ハイライトされることを確認します。

誤差のない状態の部品を正しく検査したら、欠陥の含まれる部品の画像をロードします。ここでも、関数が目的の欠陥を正しく特定するまでパラメータを調整するプロセスを実行します。欠陥が特定されたら、誤差のない状態の部品の画像を再ロードして、欠陥が含まれていない画像として正しく検査されることを確認します。データベースのすべての画像が正常に設定されると、実行時の検査向けの関数の準備が整います。

SurfaceFlaw 関数関数の入力パラメータ

SurfaceFlaw 関数(

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

領域.カーブ ,

外部定義領域 ,

歪みのない画像 ,

サンプル係数 ,

自動平滑化 ,

平滑化係数 ,

検出タイプ ,

検出サイズ ,

検出軸 ,

傷データの計算 ,

傷形の計算 ,

最小傷面積 ,

最大傷面積 ,

最小コントラスト ,

タイムアウト ,

表示画像 ,

表示行 ,

表示列 ,

表示

)

画像

このパラメータは、スプレッドシートで [image] データ構造体を含むセルを参照する必要があります。デフォルトでは、このパラメータは、AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールのグラフィックス関数によって返された、そのほかの　 [image] 　データ構造体も参照できます。

注意:
  • SurfaceFlaw 関数はピクセル座標で動作します。
  • SurfaceFlaw 関数では、グレースケール画像とカラー画像の両方がサポートされています。カラー画像を参照する場合、赤、緑、および青 (RGB) の 3 つのカラープレーンのいずれかの欠陥が識別されます。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 (デフォルト = 0) | 画像座標での行オフセット
列 (デフォルト = 0) | 画像座標での列オフセット
角度 (デフォルト = 0) | 画像座標系での方位角

領域

これは対象領域 (ROI) とも呼ばれ、画像解析の対象となる画像の領域を指定します。変形および回転可能な矩形の画像領域を形成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

注意:　別のビジョンツール関数またはオペレータ I/F 関数の出力に対する ROI を定義する場合、領域座標へのセル参照を設定する代わりに、[外部定義領域] パラメータを使用します。[外部定義領域] パラメータはフィクスチャの動きを正しく考慮しますが、セル参照は正しく機能しない可能性があり、フィクスチャの動きを参照する関数は #ERR を返すことがあります。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意:　[フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

外部定義領域

オペレータ I/F 関数、または Mask 関数によって出力された　 [image] 　データ構造体を含むスプレッドシートのセルへの参照を指定します。このパラメータを使用すると、SurfaceFlaw 関数は [領域] と [フィクスチャ] の設定を無視し、参照先領域に指定された画像領域を検査します。

注意:
  • このパラメータが外部定義領域の参照として設定されている場合に、この関数の内部領域を使用するには、セル参照に値 0 を入力し、このパラメータを手動で 0 に設定する必要があります。それ以外の場合、この関数は引き続き外部定義領域を参照します。
  • SurfaceFlaw 関数は EditMaskedRegion 関数または EditPolylinePath 関数をサポートしていません。

歪みのない画像

画像処理を先に進める前に、カーブや角度のある対象領域 (ROI) から歪みを取り除くかどうかを指定します。このパラメータは、欠陥を特定の軸 (X または Y) に沿ってのみ検出する場合に使用すると有用です。検出カーネルは ROI の方向や形に関係なく、常に画像の X 軸および Y 軸に沿って処理するようになります。画像内で「対角」の直線エッジに沿って欠陥を検出するには、最初に画像の歪みを取り除く必要があります。

注意:　このパラメータは、内部 [領域] または [外部定義領域] パラメータに角度やカーブがある場合に必要になります。

0 = OFF (デフォルト) | カーブや角度のある ROI から歪みを取り除かないように指定します。
1 = ON | カーブや角度のある ROI から歪みを取り除くように指定します。

サンプル係数

入力画像をサンプリングする量 (1 ～ 99999、デフォルト = 1) を指定します。これにより解像度を下げます。サンプリングは関数の実行時間を短縮するのに有用ですが、精度に影響を与えます。画像のサブサンプリングは欠陥のコントラストが低く、少しずつ移動するような場合に有用です。サブサンプリングによってピクセルがより密接するため、変化がより短く急になります。適切なサンプリング値を決定する際、値 1 はサンプリングを実行しないことを示します。つまり、入力画像はフル解像度で使用されます。値を高くすると解像度と精度が低くなりますが、実行時間はより速くなります。

自動平滑化

画像を滑らかにする最適な平滑化係数を選択するかどうかを指定します。最適な平滑化係数を選択することによって、通常、パフォーマンスを向上させることができます。

注意:　[自動平滑化] パラメータはデフォルトでオフになっています。このパラメータをオンにするには、[サンプル係数] パラメータを 1 より大きい値に設定する必要があります。[サンプル係数] パラメータを 1 より大きい値に設定し、[自動平滑化] を使用しない場合は、パラメータをオフにし、代わりに [サンプル係数] パラメータを使用して適切な値を設定します。

0 = OFF (デフォルト) | [サンプル係数] パラメータを使用して手動の平滑化係数を適用するように指定します。
1 = ON | 最適な平滑化係数を決定するように指定します。

平滑化係数

画像を滑らかにする係数 (0 ～ 99999、デフォルト = 0) を指定します。最適な値を決定する際は、[サンプル係数] パラメータに指定した値に近い値から開始します。平滑化を指定しない場合、値を 0 に設定します。

注意:　[自動平滑数] パラメータがオンに設定されている場合、このパラメータは使用できません。

検出タイプ

画像に適用して欠陥の有無を判別する画像処理のタイプを指定します。

注意:　画像処理のタイプに [明るい傷]、[暗い傷]、または [両方] を選択する場合、[検出サイズ] パラメータに検出する欠陥の最大サイズを設定する必要があります。

0 = 高速検出 (デフォルト) | このオプションは、縞やスクラッチなど、表面の「エッジ状」の明度変化に適しています。これは、欠陥のエッジをハイライトするエロージョン/ダイレーション操作を適用します。このオプションでは最適な実行時間が得られますが、欠陥を報告する際は、欠陥の面積ではなく、周辺長のみを報告します。
1 = 明るい傷 | このオプションは、暗い背景にある「ブロブ状」の欠陥を、面積のピクセルサイズを基準にして検出するのに適しています。「トップハット」フィルタ処理操作を指定します。欠陥候補を検出するために、[検出サイズ] パラメータのサイズよりも小さい、明るい特徴以外のすべてを除去します。
2 = 暗い傷 | このオプションは、明るい背景にある「ブロブ状」の欠陥を、面積のピクセルサイズを基準にして検出するのに適しています。「ボトムハット」フィルタ処理操作を指定します。[検出サイズ] パラメータのサイズより小さい、暗い特徴以外のすべてを除去します。
3 = 両方 | このオプションは、暗い、または明るい「ブロブ状」の欠陥を、面積のピクセルサイズを基準にして検出するのに適しています。「ボトムハット」および「トップハット」操作の両方を指定し、2 つの操作の最大結果を使用します。

検出サイズ

検出した近傍のサイズ (1 ～ 99999、デフォルト = 1) をピクセル単位で指定します。このパラメータは、[検出タイプ] パラメータで使用する処理近傍またはカーネルを構築するために使用します。

注意:　[高速検出] 以外の [検出タイプ] 操作では、サイズ値に、検出する欠陥の最大の長さまたは幅以上の値を設定する必要があります。

検出軸

欠陥候補を検出する軸を指定します。このパラメータはカーネルの高さも決定します。例えば、このパラメータを [X および Y] に設定し、[検出サイズ] を 1 に設定すると、カーネルは 3 × 3 グリッドになります。このパラメータを [X] に設定し、[検出サイズ] を 1 に設定すると、カーネルは 1 × 3 グリッドになります。

0 = X | X 軸に沿って欠陥を検出します。
1 = Y | Y 軸に沿って欠陥を検出します。
2 = X および Y (デフォルト) | X 軸と Y 軸の両方に沿って欠陥を検出します。

傷データの計算

検出された個々の欠陥の面積、明度、境界ボックスを計算するかどうかを指定します。

注意:
  • このパラメータを無効にすると、関数の実行時間が短縮されます。このパラメータを無効にすると、内部のブロブ解析は実行されません。これにより、「欠陥」ピクセルの総面積のみが返されます。画像内の欠陥の位置を示すグラフィックス情報は返されません。この関数によって自動的に生成される結果テーブルは、個々の結果に #ERR を返します。データを抽出するには、すべての欠陥を合わせた総面積を返す GetTotalFlawArea データアクセス関数を使用します。

0 = OFF | 検出された個々の欠陥の面積、明度、境界ボックスを計算しないように指定します。
1 = ON (デフォルト) | 検出された個々の欠陥の面積、明度、境界ボックスを計算するように指定します。

傷形の計算

検出された個々の欠陥の周辺長および真円度を計算するかどうかを指定します。真円度は、欠陥がどのくらい円状であるかを単位のない数値で示します。完璧な真円は、値 1.0 です。伸長した欠陥は、1 より大きい値になります。数値が増えると伸長がさらに大きくなることを示します。点状の欠陥は 0 に近い値になります。

注意:　このパラメータを有効にするには、[傷データの計算] パラメータを ON にしておく必要があります。

0 = OFF | 個々の欠陥の周辺長および真円度を計算しないように指定します。
1 = ON (デフォルト) | 個々の欠陥の周辺長および真円度を計算するように指定します。

最小傷面積

検出する欠陥の最小サイズをピクセル単位で指定します (1 ～ 99999、デフォルト = 30)。

最大傷面積

検出する欠陥の最大サイズをピクセル単位で指定します (1 ～ 99999、デフォルト = 99999)。値 0 は最大サイズを指定しません。

最小コントラスト

欠陥の検出に使用する明度しきい値を指定します (1 ～ 255、デフォルト = 20)。欠陥を検出するには、ここで指定する欠陥の明度値分、背景と異なる必要があります。

タイムアウト (ミリ秒)

この関数による欠陥のサーチ時間をミリ秒単位で指定します (0 ～ 30000、デフォルト = 0/タイムアウトなし)。指定された時間が経過すると、実行は停止し、#ERR が返されます。値を 0 に設定すると設定値が無効になり、タイムアウトは適用されません。

表示画像

表示する出力画像を指定します。

注意:　この画像は表示のためにのみ使用されます。別の関数への入力として使用することはできません。

0 = 入力画像 | そのときに取り込まれている画像が表示されるように指定します。
1 = 歪みのない画像 | 角度またはカーブのある ROI が入力として使用された場合、変換され、歪みが取り除かれた画像が表示されるように指定します。
2 = サンプル画像 | 平滑化され、サンプリングされた画像が表示されるように指定します。角度またはカーブのある ROI が入力として使用された場合、平滑化およびサンプリング効果に加えて、変換されて、歪みが取り除かれた画像が表示されるように指定します。
3 = 傷候補 | 欠陥の候補が表示されるように指定します。傷候補は背景に対比してハイライトされ、赤色の境界ボックスで囲まれます。この表示オプションには、定義した欠陥 ([最小傷面積] および [最大傷面積]) の範囲外の欠陥も含まれます。
4 = 傷マスク画像 (デフォルト) | 欠陥が表示されるように指定します。欠陥は白色で描画され、そのほかの領域は黒色で描画されます。

表示行

表示画像が表示される行座標 (デフォルト = 0) を左上隅を基準に指定します。

表示列

表示画像が表示される列座標 (デフォルト = 0) を左上隅を基準に指定します。

表示

画像上にオーバレイする SurfaceFlaw グラフィックスの表示モードを指定します。

0 = 非表示 (デフォルト) | SurfaceFlaw 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 指定された [表示画像] が常に表示されます。
2 = 入力と結果のグラフィックス | 指定された [表示画像] と結果グラフィックス (検出された欠陥は赤色の矩形に囲まれて描画されます) が常に表示されます。 注意: [外部定義領域] パラメータを [image] データ構造体の参照として設定すると、入力画像は表示されません。

SurfaceFlaw 関数関数の結果出力

戻り値 | 表示画像データと検出された欠陥を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが作成されます。 注意: [傷データの計算] パラメータを無効にすると、すべての検出された欠陥の総面積のみを返します。すべての欠陥を合わせた総面積を返すには、GetTotalFlawArea データアクセス関数を使用します。

SurfaceFlaw 関数データアクセス関数

次のデータアクセス関数が、SurfaceFlaw データ構造体結果テーブルを作成するためにスプレッドシートに自動挿入されます。

スプレッドシート名 | 関数名 | 説明
行 | GetRow(SurfaceFlaw 関数, インデックス) | 欠陥を囲む境界ボックスの行座標をピクセル単位で返します。
列 | GetCol(SurfaceFlaw 関数, インデックス) | 欠陥を囲む境界ボックスの列座標をピクセル単位で返します。
高さ | GetHigh(SurfaceFlaw 関数, インデックス) | 欠陥を囲む境界ボックスの高さ値をピクセル単位で返します。
幅 | GetWide(SurfaceFlaw 関数, インデックス) | 欠陥を囲む境界ボックスの幅の値をピクセル単位で返します。
面積 | GetArea(SurfaceFlaw 関数, インデックス) | 欠陥の面積をピクセル単位で返します。
周囲長 | GetPerimeter(SurfaceFlaw 関数, インデックス) | 欠陥の周辺長をピクセル単位で返します。
明度 | GetIntensity(SurfaceFlaw 関数, インデックス) | 欠陥の平均ピクセル明度の値を返します。
真円度 | GetRoundedness(SurfaceFlaw 関数, インデックス) | 欠陥の真円度をピクセル単位で返します。

注意:　複数の欠陥が返される場合、欠陥は領域内で大きい順にソートされます。

関連項目

  • 欠陥の検出ツールについて
  • TransSurfaceFlawToWorld 関数
  • プロパティシートの使用方法


DetectFlaw 関数

DetectFlaw 関数 |
ビジョンツール → 傷検出 | In-Sight 関数リファレンス

DetectFlaw 関数を使用し、TrainFlawModel 関数によって返された有効な [image] データ構造体、または FlexFlawModel 関数によって返された [image] データ構造体のいずれかに含まれる登録データと、そのときに取り込まれている画像を比較して、欠陥を識別します。DetectFlaw 関数は、面積欠陥、エッジの欠落、および余分なエッジの 3 タイプの欠陥を識別することができます。

領域の検査では、対象物や部品の表面上の傷や汚れなどの欠陥の有無が検証されます。エッジの検査では、余分なエッジ、またはエッジの欠落がないかどうか、また対象物や部品の境界が一定であるかどうかが確認されます。領域とエッジの欠陥検査を組み合わせることによって、最高レベルの検査を行うことができます。

ヒント:
  • 1 つまたは複数の DetectFlaw 関数で 1 つの TrainFlawModel 関数を参照できます。この結果、個々の DetectFlaw 関数は、必要に応じて設定を変え、対象物または部品のさまざまな部分を検査することができます。
  • [表示画像] パラメータが [エッジ画像]、[モデル画像]、[マスク画像] または [残余画像] のいずれかに設定されている場合、DetectFlaw の出力画像に対して、さらに画像処理を行うこともできます。例えば、ExtractBlobs 関数の [画像] パラメータを設定して、DetectFlaw 関数の残余画像を入力として使用することによって、追加でブロブ画像解析を行うことが可能です。
  • この関数の実行時間を短縮するには、関数の [画像の解像度] パラメータを [中程度] または [粗粒度] に設定します。この結果、画像がダウンサンプリングされ、画像のノイズやごく小さなばらつきに対する関数の感度が低くなります。
  • DetectFlaw 関数の入力パラメータ
    • DetectFlaw 関数の [標準] タブ
    • DetectFlaw 関数の [マスク編集] タブ
    • DetectFlaw 関数の [欠陥リスト] タブ
  • DetectFlaw 関数の結果出力
  • DetectFlaw Vision のデータアクセス関数
  • DetectFlaw 関数の関連項目

DetectFlaw 関数関数の入力パラメータ

[標準] タブ

DetectFlaw 関数(

傷モデル参照,

検査領域.X,

検査領域.Y,

検査領域.高さ,

検査領域.幅,

検査領域.角度,

検査領域.カーブ,

外部検出領域またはパス,

画像の解像度,

マスク画像制御.セグメント化した画像の追加,

マスク画像制御.デフォルトマスク,

欠陥パラメータ.最小コントラスト,

欠陥パラメータ.正規化,

欠陥パラメータ.面積欠陥タイプ,

欠陥パラメータ.最小面積欠陥サイズ,

欠陥パラメータ.エッジ欠陥タイプ,

欠陥パラメータ.最小エッジ欠陥サイズ,

エッジマーキング描画,

傷マーキング描画,

表示画像,

表示

)

傷モデル参照

 TrainFlawModel 関数によって返された有効な [image] データ構造体、または FlexFlawModel 関数によって返された [image] データ構造体のいずれかを含んでいるスプレッドシートセルへの参照を指定します。

検査領域

これは対象領域 (ROI) とも呼ばれ、画像解析の対象となる画像の領域を指定します。変形および回転可能な矩形の画像領域を形成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

注意:
  • [検査領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。
  • [検査領域] は、参照されている TrainFlawModel 関数で指定されているものと同じ入力フィクスチャへ自動的にフィクスチャされます。フィクスチャ参照が無効である場合、フィクスチャはデフォルトの 0,0,0 になります。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

外部検出領域またはパス

オペレータ I/F 関数が入力されているスプレッドシートのセルへの参照を指定します。このパラメータを使用すると、TrainFlawModel ツールは、[領域] と [フィクスチャ] の設定を無視し、参照先領域に指定された画像領域を検査します。

注意:　このパラメータが外部定義領域またはパスの参照として設定されている場合に、この関数の内部領域を使用するには、セル参照に値 0 を入力し、このパラメータを手動で 0 に設定する必要があります。それ以外の場合、この関数は引き続き外部定義領域またはパスを参照します。

画像の解像度

この関数で使用される画像処理解像度を指定します。それによって、この関数では検査画像をダウンサンプリングすることができます。このパラメータによって、傷検出に使用される解像度、および出力画像と画像上のマーキングの解像度も指定されます。

ヒント:　[中程度] または [粗粒度] の設定を使用すると、関数の実行時間を短縮することができます。また、この設定では画像のノイズやごく小さなばらつきに対する関数の感度を下げることもできます。

注意:　FlexFlawModel 関数によって返された [image] データ構造体を [モデル参照] パラメータが参照している場合、このパラメータは無効化され、代わりに FlexFlawModel 関数の [画像の解像度] パラメータの設定が使用されます。

1 = 細粒度 (デフォルト) | フル解像度の画像が使用されるように指定します。
2 = 中程度 | ハーフ解像度の画像が使用されるように指定します。
3 = 粗粒度 | 1/4 の解像度の画像が使用されるように指定します。

マスク画像制御

マスク画像の処理方法を制御するための Button 関数または Event 関数への外部参照を指定します。この参照によって、実行時に特定の欠陥を無視するようにマスクを動的に調整することができます。

残余画像の追加 | 現在の残余画像をマスク画像に追加するための Button 関数または Event 関数への参照を指定します。
デフォルトマスク | モデル画像からマスクデータを再生成することによって、マスク画像を最初に登録したときの状態に設定する Button 関数または Event 関数への参照を指定します。

欠陥パラメータ

面積欠陥またはエッジ欠陥、もしくはこの両方の判別で使用する制限値を指定します。面積欠陥は通常、汚れや変色などの欠陥で、ピクセルのグレースケール値の偏差で判断されます。エッジ欠陥は通常、傷や裂け目、余分な特徴などの欠陥で、エッジ特徴の有無に従って判断されます。

注意:　DetectFlaw 関数を適用したときに、欠陥パラメータの許容範囲が狭く (例えば、15 ピクセル以下)、画像のノイズに見られる変化が小さい場合、この変化については [欠陥を無視] および [残余画像の追加] オプションで考慮されないことがあります。このような状況では、[欠陥を無視] または [残余画像の追加] オプションを適用する前に、欠陥パラメータで使用される許容範囲の拡張を試みてください。

最小コントラスト

エッジ欠陥または面積欠陥とみなされるコントラストの最小変化値 (1 ～ 255、デフォルト = 25) を指定します。

正規化

領域から面積欠陥を検査する前に残余画像の明度レベルを正規化するかどうかを指定します。

0 = オフ (デフォルト) | 面積欠陥を検査する前にこの関数で明度レベルが正規化されないように指定します。
1 = オン | 面積欠陥を検査する前にこの関数で明度レベルが正規化されるように指定します。

面積欠陥タイプ

識別する面積欠陥のタイプを指定します。このオプションが有効である場合、残余画像から [最小コントラスト] および [最小面積欠陥サイズ] で指定された値を超えるピクセルのブロブがこの関数で識別されます。

0 = なし | 面積欠陥の検出を無効にします。
1 = 両方 (デフォルト) | 取り込まれた画像のピクセルのうち、登録モデルのピクセルよりも明るいもの、または暗いものが原因で発生している欠陥がこの関数で識別されます。
2 = 白い欠陥 | 取り込まれた画像のピクセルのうち、登録モデルのピクセルよりも明るいものが原因で発生している欠陥のみがこの関数で識別されます。
3 = 黒い欠陥 | 取り込まれた画像のピクセルのうち、登録モデルのピクセルよりも暗いものが原因で発生している欠陥のみがこの関数で識別されます。
最小面積欠陥サイズ

最小面積欠陥サイズをピクセル単位で指定します (2 ～ 400000、デフォルト = 30)。この値より小さい領域は欠陥とはみなされません。
エッジ欠陥タイプ

識別するエッジ欠陥のタイプを指定します。

0 = なし | この関数でエッジ欠陥は識別されません。
1 = 両方 | この関数で [欠落エッジ] と [余分エッジ] の両方の有無を検証します。
2 = 欠落エッジ (デフォルト) | モデルにあらかじめ登録されているエッジが、取り込まれた画像にすべて存在することをこの関数で検証します。[最小エッジ欠陥サイズ] で指定された値を超えるエッジの欠落は、欠陥として分類されます。
3 = 余分エッジ | 登録モデルに存在しないエッジが、取り込まれた画像にも存在しないことをこの関数で検証します。[最小エッジ欠陥サイズ] で指定された値を超える余分なエッジは、欠陥として分類されます。
最小エッジ欠陥サイズ エッジの欠落、または余分なエッジ、もしくはこの両方として分類するために、エッジの長さの最小値を指定します (2 ～ 1000、デフォルト = 5)。この設定より短いエッジが検出されても欠陥として分類されません。
エッジマーキング描画

検出されたエッジマークをこの関数で画像上に緑色で描画するかどうかを指定します。出力マーキングは、どのピクセルが、登録されているモデル画像内のピクセルと一致するかを示します。取り込まれた画像のピクセルのうち、登録されているモデル画像内の登録エッジ線分と一致するものは緑色で描画されます。許容値を外れ、エッジ欠陥または面積欠陥に分類されるピクセルは赤色で描画され、その周りは赤色の境界ボックスで囲まれます。

0 = オフ (デフォルト) | この関数で画像上にエッジマークを描画しないように指定します。
1 = オン | この関数で画像上にエッジマークを描画するように指定します。
傷マーキング描画

検出された欠陥マークをこの関数で画像上に赤色で描画するかどうかを指定します。出力マーキングは、どのピクセルが、登録されているモデル画像内のピクセルと一致するかを示します。取り込まれた画像のピクセルのうち、登録されているモデル画像内の登録エッジ線分と一致するものは緑色で描画されます。許容値を外れ、エッジ欠陥または面積欠陥に分類されるピクセルは赤色で描画され、その周りは赤色の境界ボックスで囲まれます。

0 = オフ (デフォルト) | この関数で画像上に欠陥マークを赤色で描画しないように指定します。
1 = オン | この関数で画像上に欠陥マークを赤色で描画するように指定します。
表示画像

この関数によって生成される出力のタイプを指定します。

0 = 実行時画像 (デフォルト) | この関数では、取り込んだ画像を出力画像として生成します。
1 = エッジ画像 | この関数では、取り込んだ画像からエッジモデルを出力画像として生成します。このオプションは、[エッジ欠陥タイプ] パラメータが [欠落エッジ]、[余分エッジ]、または [両方] に設定されている場合、もしくはこの関数が FlexFlawModel 関数によって返された [image] データ構造体を [モデル参照] パラメータで参照している場合にのみ使用できます。
2 = モデル画像 | この関数では、フィクスチャおよびスケール (必要に応じて、Flex アルゴリズム) に基づく変換の後、登録されるモデル画像を生成します。
3 = マスク画像 | この関数では、フィクスチャおよびスケール (必要に応じて、Flex アルゴリズム) に基づく変換の後、現在のマスク画像を生成します。
4 = 残余画像 | この関数では、欠陥検出分析に基づいて、残余画像を生成します。 注意: 残余画像を出力画像として使用している場合は [面積欠陥] を有効にしておく必要があります。有効にしていないと、エッジ欠陥は描画されますが、出力画像は生成されず、エラーメッセージが表示されます。

表示

画像上の DetectFlaw グラフィックスオーバレイの表示モードを指定します。出力マーキングは、どのピクセルが、登録されているモデル画像内のピクセルと一致するかを示します。

注意:　DetectFlaw プロパティシートが開いているときに、[エッジマーキング描画] および [傷マーキング描画] パラメータが有効にされていると、画像上にはすべてのマーキングが描画されます。

0 = 非表示 (デフォルト) | DetectFlaw 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 有効にされているマーキング、欠陥、および入力領域は常に表示されます。
2 = 入力と結果のグラフィックス | 入力領域、検出された欠陥、および検出されたエッジは常に表示されます。 注意: 検出された欠陥やエッジを表示するには、[エッジマーキング描画] および [傷マーキング描画] パラメータを有効にしておく必要があります。

[マスク編集] タブ

マスク画像の編集コントロール

[マスク画像の編集] コントロールは、参照している [image] データ構造体に保存されたマスク画像を操作する手段として使用します。[マスクの編集] タブが選択されているとき、この画像は表示されますが、[エッジ欠陥タイプ] パラメータが有効である場合はマスクされたエッジがマーキングされ、[面積欠陥タイプ] パラメータが有効である場合はマスク画像が表示されます。

注意:
  • マスク画像を調整すると、このマスク画像を含む同一の TrainFlawModel 関数を参照しているそのほかの DetectFlaw 関数もすべて調整の影響を受けます。
  • DetectFlaw 関数を適用したときに、欠陥パラメータの許容範囲が狭く (例えば、15 ピクセル以下)、画像のノイズに見られる変化が小さい場合、この変化については [欠陥を無視] および [残余画像の追加] オプションで考慮されないことがあります。このような状況では、[欠陥を無視] または [残余画像の追加] オプションを適用する前に、欠陥パラメータで使用される許容範囲の拡張を試みてください。

残余画像の追加 | 残余画像と残余エッジをマスクに追加するように指定します。この設定は、画像で識別された欠陥を、欠陥ではないものに変更する効果があります。
マスク拡大 | マスク内のピクセル領域を拡張することを指定します。 注意: このオプションを使用するには、[面積欠陥タイプ] を有効にする必要があります。
マスク縮小 | マスク内のピクセル領域を縮小することを指定します。 注意: このオプションを使用するには、[面積欠陥タイプ] を有効にする必要があります。
マスク削除 | すべてのマスクデータを削除することを指定します。
デフォルトマスク | モデル画像からマスクデータを再生成することによって、マスク画像を最初に登録したときの状態にリセットすることを指定します。

[欠陥リスト] タブ

[欠陥リスト] テーブル

[欠陥リスト] は検出された欠陥の一覧表で、内容をソートすることができます。このリストから欠陥を選択すると、画像内でその欠陥がハイライトされます。また、[欠陥を無視] ボタンも有効になります。一度に複数の欠陥を選択するには、Ctrl または Shift キーを押しながらリストから欠陥を選択します。

注意:　DetectFlaw 関数を適用したときに、欠陥パラメータの許容範囲が狭く (例えば、15 ピクセル以下)、画像のノイズに見られる変化が小さい場合、この変化については [欠陥を無視] および [残余画像の追加] オプションで考慮されないことがあります。このような状況では、[欠陥を無視] または [残余画像の追加] オプションを適用する前に、欠陥パラメータで使用される許容範囲の拡張を試みてください。

数 | 検出された欠陥の順序を 1 から N までの数字で指定します。
タイプ | 欠陥のタイプ (余分なエッジ、エッジの欠落、または面積) を指定します。
サイズ | 欠陥のサイズをピクセル単位で指定します。
コントラスト | 欠陥のコントラストを指定します。
行 | 欠陥を囲む境界ボックスの行座標を指定します。
列 | 欠陥を囲む境界ボックスの列座標を指定します。
高さ | 欠陥を囲む境界ボックスの高さを指定します。
幅 | 欠陥を囲む境界ボックスの幅を指定します。
[欠陥を無視] ボタン | 選択された欠陥をマスク画像に追加し、今後欠陥として報告されずにリストから削除することを指定します。このボタンを有効にするには、欠陥を選択する必要があります。

DetectFlaw 関数 関数の結果出力

戻り値 | 検出された欠陥を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。 注意: そのほかのビジョンツールについては、 [image] データ構造体を画像入力として使用することができます。
結果 | DetectFlaw 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが作成されます。

DetectFlaw 関数データアクセス関数

DetectFlaw データ構造体結果テーブルを作成するために、次のデータアクセス関数がスプレッドシートに自動挿入されます。

スプレッドシート名 | 関数名 | 説明
サマリー
総数 | GetTotalFlawCount(DetectFlaw, Type) | 欠陥のタイプに関係なく、検出された欠陥の総数を返します。
傷総サイズ | GetTotalFlawSize(DetectFlaw, Type) | 欠陥として分類されたピクセルの総数を返します。
Count 関数
面積 | GetTotalFlawCount(DetectFlaw, Type) | 検出された面積欠陥の総数を返します。
欠落エッジ | GetTotalFlawCount(DetectFlaw, Type) | 検出されたエッジの欠落の総数を返します。
余分エッジ | GetTotalFlawCount(DetectFlaw, Type) | 検出された余分なエッジの総数を返します。
傷サイズ
面積 | GetTotalFlawSize(DetectFlaw, Type) | 面積欠陥として分類されたピクセルの総数を返します。
欠落エッジ | GetTotalFlawSize(DetectFlaw, Type) | エッジの欠落として分類されたピクセルの総数を返します。
余分エッジ | GetTotalFlawSize(DetectFlaw, Type) | 余分なエッジピクセルとして分類されたピクセルの総数を返します。
傷タイプ 注意: 欠陥のタイプ (面積、エッジの欠落、および余分なエッジ) それぞれについて、検出された最初の 5 個の欠陥が表示されます。
サイズ | GetFlawSize(DetectFlaw, Type, Index) | 欠陥のサイズをピクセル単位で返します。
コントラスト | GetFlawContrast(DetectFlaw, Type, Index) | 欠陥のコントラストを返します。
行 | GetFlawRow(DetectFlaw, Type, Index) | 欠陥を囲む境界ボックスの行座標を返します。
列 | GetFlawCol(DetectFlaw, Type, Index) | 欠陥を囲む境界ボックスの列座標を返します。
高さ | GetFlawHigh(DetectFlaw, Type, Index) | 欠陥を囲む境界ボックスの高さを返します。
幅 | GetFlawWide(DetectFlaw, Type, Index) | 欠陥を囲む境界ボックスの幅を返します。

関連項目

  • 傷検出ツールについて
  • TrainFlawModel 関数
  • FlexFlawModel 関数
  • 欠陥を検出するためのデータアクセス関数
  • プロパティシートの使用方法


FlexFlawModel 関数

FlexFlawModel 関数 |
ビジョンツール → 傷検出 | In-Sight 関数リファレンス

FlexFlawModel 関数は、オプションの Flex アルゴリズムの構築に使用されます。この関数によって、TrainFlawModel 関数で許容されるプロセスばらつきが補正され、DetectFlaw 関数でより正確に欠陥を分類することができます。FlexFlawModel 関数は、登録されているエッジモデルと現在取り込まれている画像のエッジモデルを比較することによって、TrainFlawModel 関数または Mask 関数の領域内における変位を測定します。

  • FlexFlawModel 関数の概要
  • FlexFlawModel 関数の入力パラメータ
  • FlexFlawModel 関数の結果出力
  • FlexFlawModel 関数の関連項目

FlexFlawModel 関数 概要

FlexFlawModel 関数は、参照されている TrainFlawModel 関数によって指定された ROI 内で動作します。検査中、この関数は、参照されている TrainFlawModel 関数のフィクスチャおよびスケール値に基づいて、登録されているエッジモデルを部品の現在位置および方向に対して変換、回転、およびスケール変更します。その後、FlexFlawModel 関数は ROI 内から、指定された [画像の解像度] 値にあるエッジを抽出します。これらの抽出されたエッジは、登録されているエッジモデルと比較されます。次に、最初の一致得点が計算されますが、この最初の得点が小さすぎる場合は、#ERR が返されます。一致得点が十分に大きな値である場合、この関数では、[フレックスレシピ] の値に基づいて Flex アルゴリズムが実行されます。その後、最終的な Flex 得点が計算されます。

[フレックスパラメータ] を調整して Flex アルゴリズムを構築することによって、モデルを「引き伸ばし」、何もしなければ欠陥として分類される可能性のある許容範囲内のばらつきを補正することができます。この引き伸ばしによって、現在取り込まれている画像の部品にいっそう近い外観のモデルにすることも可能です。DetectFlaw 関数を実行する前に Flex を適用してこの部品に合わせて調整し、誤った不合格を減らすこともできます。

Flex アルゴリズムで補正できるものは次のとおりです。

  • 画像から画像へのわずかな動きのような位置エラー。
  • レンズまたは遠近歪み。
  • 形状や表面値のわずかな差異のような許容範囲内の部品のばらつき。
  • ラインスキャン画像に関連するようなピクセルの伸長。
  • 画像内での部品のスケール変化。

FlexFlawModel 関数関数の入力パラメータ

FlexFlawModel 関数(

登録傷モデル,

画像の解像度,

最小エッジ強度,

最小マッチ得点,

フレックスパラメータ.フレックスレシピ,

フレックスパラメータ.フレックスグリッドのサイズ,

フレックスパラメータ.包囲セグメントフレックスの許容,

フレックスパラメータ.包囲セグメントフレックス,

フレックスパラメータ.ラインセグメントフレックスの許容,

フレックスパラメータ.ラインセグメントフレックス,

フレックスパラメータ.ラインセグメント最大ラインサイズ,

フレックスパラメータ.ピクセルフレックスの許容,

フレックスパラメータ.ピクセルフレックス,

描画オプション,

表示画像,

表示

)

TrainFlawModel 関数

 TrainFlawModel 関数によって返された有効な [image] データ構造体を含むスプレッドシートセルへの参照を指定します。

画像の解像度

この関数で使用される画像処理解像度を指定します。それによって、この関数では検査画像をダウンサンプリングすることができます。このパラメータによって、傷検出に使用される解像度、および出力画像と画像上のマーキングの解像度も指定されます。

ヒント: [中程度] または [粗粒度] の設定を使用すると、関数の実行時間を短縮することができます。また、この設定では画像のノイズやごく小さなばらつきに対する関数の感度を下げることもできます。

1 = 細粒度 (デフォルト) | フル解像度の画像が使用されるように指定します。
2 = 中程度 | ハーフ解像度の画像が使用されるように指定します。
3 = 粗粒度 | 1/4 の解像度の画像が使用されるように指定します。

最小エッジ強度

画像からエッジ特徴を抽出するために必要なグレースケール明度の最小変化値 (5 ～ 255、デフォルト = 20) を指定します。

最小マッチ得点

[フレックスパラメータ] の使用を開始するために、一致得点の初期値の最小値 (10 ～ 100、デフォルト = 30) を指定します。一致得点の初期値がこの値より小さい場合、[フレックスパラメータ] は処理されず、関数の結果は #ERR になります。

フレックスパラメータ

Flex タイプに対する制限値と、許容できる Flex の大きさを指定します。

フレックスレシピ

事前に設定されている読み取り専用の設定値セットを指定します。これはさまざまなアプリケーションについて推奨される値のセットです。

0 = デフォルト

フレックスグリッドのサイズ = 8x8、包囲セグメントフレックスの許容 = Off、包囲セグメントフレックス = 20、ラインセグメントフレックスの許容 = On、ラインセグメントフレックス = 10、ラインセグメント最大ラインサイズ = 15、ピクセルフレックスの許容 = On、ピクセルフレックス = 1。

1 = 高フレックス

フレックスグリッドのサイズ = 4x4、包囲セグメントフレックスの許容 = On、包囲セグメントフレックス = 40、ラインセグメントフレックスの許容 = On、ラインセグメントフレックス = 20、ラインセグメント最大ラインサイズ = 8、ピクセルフレックスの許容 = On、ピクセルフレックス = 10。

ヒント: [高フレックス] は、大きな非線形歪みが見られるアプリケーションに最も適しています。

2 = 印刷拡張

フレックスグリッドのサイズ = 4x4、包囲セグメントフレックスの許容 = On、包囲セグメントフレックス = 30、ラインセグメントフレックスの許容 = On、ラインセグメントフレックス = 1、ラインセグメント最大ラインサイズ = 40、ピクセルフレックスの許容 = On、ピクセルフレックス = 1。

ヒント: [印刷拡張] は印刷された文字の品質を検証するアプリケーションに最も適しており、この関数は文字の拡張を調整する必要があります。
3 = 部分欠落

フレックスグリッドのサイズ = 8x8、包囲セグメントフレックスの許容 = On、包囲セグメントフレックス = 5、ラインセグメントフレックスの許容 = On、ラインセグメントフレックス = 5、ラインセグメント最大ラインサイズ = 10、ピクセルフレックスの許容 = On、ピクセルフレックス = 1。

ヒント: [部分欠落] は、エッジの境界線に基づくアプリケーションに最適であり、その欠陥サイズは非常に小さいものとなっています。
4 = 微細特徴

フレックスグリッドのサイズ = 2x2、包囲セグメントフレックスの許容 = On、包囲セグメントフレックス = 10、ラインセグメントフレックスの許容 = On、ラインセグメントフレックス = 3、ラインセグメント最大ラインサイズ = 15、ピクセルフレックスの許容 = On、ピクセルフレックス = 1。

ヒント: [微細特徴] は、大きな非線形歪みがあるアプリケーションで、小さな欠陥を検出する場合に最も適しています。このオプションを指定すると、処理に長時間かかります。
98 = カスタム

[フレックスパラメータ] に手動でさまざまな値を入力して、[フレックスレシピ] 設定をカスタマイズすることができます。直前に選択したレシピのデフォルト値が初期値として表示されます。

注意: [フレックスレシピ] の選択肢を制御するためのセル参照が作成されているときに、この関数のプロパティシートを開き、[フレックスレシピ] パラメータへの変更を行った場合、このセル参照のコマンドが関数によって上書きされます。
99 = フレックスなし

フレックスグリッドのサイズ = 2x2、包囲セグメントフレックスの許容 = Off、包囲セグメントフレックス = 1、ラインセグメントフレックスの許容 = Off、ラインセグメントフレックス = 1、ラインセグメント最大ラインサイズ = 3、ピクセルフレックスの許容 = Off、ピクセルフレックス = 1。

注意: [フレックスなし] 設定は、この関数が、Flex の計算に必要最小限の設定を使用することを指示します。どのような場合でも [フレックスなし] を適用するには、FlexFlawModel 関数自体を無効にする必要があります。

フレックスグリッドのサイズ

Flex に対する訂正が使用されるときに、モデル画像およびマスク画像に適用される粒度設定を指定します。粒度が高いほど、より正確に非線形歪みを処理できるようになりますが、消費されるメモリの量も増加します。

1 = 2×2 | 粒度設定の最高値を指定します。
2 = 4×4 | 粒度設定の 2 番目に高い値を指定します。
3 = 8×8 (デフォルト) | 粒度設定の 3 番目に高い値を指定します。
4 = 16×16 | 粒度設定の最も低い値を指定します。

包囲セグメントフレックスの許容

この関数で、囲まれたセグメントの変位を許容するかどうかを指定します。

1 = ON | 囲まれたセグメントの変位を許容します。
0 = OFF (デフォルト) | 囲まれたセグメントの変位を許容しません。
包囲セグメントフレックス | 囲まれたセグメントの中心から許容される変位の最大値 (1 ～ 40、デフォルト = 20) を指定します。
ラインセグメントフレックスの許容

エッジの一部分の変位を許容するかどうかを指定します。

1 = ON (デフォルト) | エッジの一部分の変位を許容します。
0 = OFF | エッジの一部分の変位を許容しません。
ラインセグメントフレックス | エッジセグメントに対して許容される線分変位の最大量 (1 ～ 20、デフォルト = 10) を指定します。
ラインセグメント最大ラインサイズ | エッジを分割する場合に、分割されたエッジの最大長 (3 ～ 500、デフォルト = 15) を指定します。
ピクセルフレックスの許容

個々のエッジピクセルについて、Flex を計算するかどうかを指定します。

1 = ON (デフォルト) | 個々のエッジピクセルについて Flex を計算します。
0 = OFF | 個々のエッジピクセルについて Flex を計算しません。
ピクセルフレックス | ピクセルに適用される変位の最大量 (1 ～ 10、デフォルト = 1) を指定します。

描画オプション

この関数が画像上に描画する結果を指定します。

0 = エッジマーキング (デフォルト) | この関数で、現在のエッジモデルと、Flex アルゴリズムの適用後のエッジモデルとの間にエッジの照合結果を描画するように指定します。
1 = エッジ移動距離 | 現在取り込まれている画像との照合のために、Flex アルゴリズムによってモデル画像がどのように修正されたかを示す結果を描画するように指定します。
2 = グリッド移動距離 | 現在取り込まれている画像との照合の際、Flex アルゴリズムを使用して、グリッドのセクション内のピクセルを修正する量と方向を示すために、まず、画像を内部的にグリッドに分割することを指定します。
3 = なし | 描画を行わないように指定します。

表示画像

この関数によって生成される出力画像のタイプを指定します。

0 = 実行時画像 (デフォルト) | 現在取り込まれている画像を表示するように指定します。
1 = エッジ画像 | 現在取り込まれている画像から生成されたエッジモデルを表示するように指定します。

表示

画像上の FlexFlawModel グラフィックスオーバレイの表示モードを指定します。登録モデルのピクセルと一致するピクセルは緑色で表示されます。一致しないピクセルは黄色になります。マスク画像から欠落しているピクセルは青色、マスク画像内の余分なピクセルは濃いマゼンタ色で表示されます。また、余分なエッジの欠陥はマゼンタ色、欠落しているエッジや面積欠陥ピクセルは赤色で表示されます。

0 = 非表示 (デフォルト) | FlexFlawModel 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスは表示されません。
1 = 結果のグラフィックスのみ | [描画オプション] および [表示画像] で指定された選択内容、および参照されている TrainFlawModel の検査領域は常に表示されます。
2 = すべて表示: 入力と結果のグラフィックス | 入力領域、[描画オプション] および [表示画像] で指定された選択内容、および参照されている TrainFlawModel の検査領域は常に表示されます。

FlexFlawModel 関数 関数の結果出力

戻り値 | Flex アルゴリズムによって修正されたモデルデータを含む [image] データ構造体。入力パラメータが無効である場合は、#ERR が返されます。
結果 | 最初に FlexFlawModel 関数がデータ構造体の右側にあるセルに挿入されている場合、2 つのセルに、データアクセス関数である GetMatchScore 関数および GetFlexScore 関数が自動的に入力されます。GetMatchScore 関数は Flex アルゴリズムを適用する前のエッジ一致得点を示す値を、また、GetFlexScore 関数は Flex アルゴリズム適用後のエッジ得点を示す値を返します。

関連項目

  • 傷検出ツールについて
  • TrainFlawModel 関数
  • DetectFlaw 関数
  • 欠陥を検出するためのデータアクセス関数
  • プロパティシートの使用方法


TrainFlawModel 関数

TrainFlawModel 関数 |
ビジョンツール → 傷検出 | In-Sight 関数リファレンス

TrainFlawModel 関数は、取り込まれた画像との比較対象となる「ゴールデン」、つまり完全な部品/対象物のモデルを作成するために使用します。この関数は検査の対象を定義します。[領域]、または [外部定義領域またはパス] パラメータで設定される対象領域は、登録される画像の領域とともに、これを参照する DetectFlaw および FlexFlawModel 関数が検索を実行する場所を定義します。

画像取り込みごとに、そのときのフィクスチャの値に基づいて ROI が調整されます。ROI の座標および更新後の [スケール] の値は、この関数を参照しているすべての DetectFlaw または FlexFlawModel 関数に渡されます。TrainFlawModel はこのモデルを保持します。

注意: TrainFlawModel 関数は、TrainFlawModel 関数を参照している DetectFlaw および FlexFlawModel 関数に更新後の領域、フィクスチャ、およびスケールデータを渡します。したがって、TrainFlawModel 関数を無効にする場合は、これを参照している関数をすべて無効にした後である必要があります。そうしないと、TrainFlawModel 関数を参照している関数では、無効化前の TrainFlawModel 関数の状態に基づいてデータが処理されます。

  • TrainFlawModel 関数の入力パラメータ
  • TrainFlawModel 関数の結果出力
  • TrainFlawModel データアクセス関数
  • 関連項目

TrainFlawModel 関数関数の入力パラメータ

TrainFlawModel 関数(

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

外部領域またはパス,

スケール,

エッジマスクサイズ,

最小エッジ強度,

最小エッジ長,

登録を強制,

表示解像度,

エッジマーキング描画,

表示画像,

タイムアウト,

表示

)

画像

このパラメータは、スプレッドシートで [image] データ構造体を含むセルを参照する必要があります。デフォルトでは、このパラメータは、AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールのグラフィックス関数によって返された、そのほかの [image] データ構造体も参照できます。

注意:
  • TrainFlawModel 関数は、キャリブレーションされた結果をサポートしていません。この関数は、ピクセル座標でのみ動作します。
  • TrainFlawModel 関数では、グレースケール画像とカラー画像の両方がサポートされています。カラー画像を参照する場合、赤、緑、および青 (RGB) の 3 つのカラープレーンのいずれかの欠陥が識別されます。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 (デフォルト = 0) | 画像座標での行オフセット
列 (デフォルト = 0) | 画像座標での列オフセット
角度 (デフォルト = 0) | 画像座標系での方位角

領域

これは対象領域 (ROI) とも呼ばれ、画像解析の対象となる画像の領域を指定します。変形および回転可能な矩形の画像領域を形成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

注意: 別のビジョンツール関数またはオペレータ I/F 関数の出力に対する ROI を定義する場合は、セル参照を領域座標に設定する代わりに、[外部定義領域またはパス] パラメータを使用します。[外部定義領域またはパス] パラメータはフィクスチャの動きを正しく考慮しますが、セル参照は正しく機能しない可能性があり、フィクスチャの動きを参照する関数は #ERR を返すことがあります。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意: [フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

外部定義領域またはパス

オペレータ I/F 関数が入力されているスプレッドシートのセルへの参照を指定します。このパラメータを使用すると、TrainFlawModel ツールは、[領域] と [フィクスチャ] の設定を無視し、参照先領域に指定された画像領域を検査します。

注意:
  • モデルの定義に外部定義領域またはパスを使用しているときに、この外部定義領域またはパスを変更する場合は、モデルの再登録を開始するために、[登録を強制] パラメータを有効にする必要があります。外部定義領域またはパスが参照されているときに、プロパティシートを開いて閉じても再登録は開始されません。
  • このパラメータが外部定義領域またはパスの参照として設定されている場合に、この関数の内部領域を使用するには、セル参照に値 0 を入力し、このパラメータを手動で 0 に設定する必要があります。それ以外の場合、この関数は引き続き外部定義領域またはパスを参照します。

スケール

実行時に想定されるモデル部品/対象物のスケーリング後のサイズを登録モデルに対する割合 (%) で指定します (80 ～ 120、デフォルト = 100)。

注意: 例えば、[フィクスチャ] 値の入力に FindPatMaxPatterns 関数を使用している場合、TrainFlawModel 関数の [スケール] パラメータが、FindPatMaxPatterns 関数によって出力される [スケール] 値へのセル参照として設定されることがあります。

エッジマスクサイズ

エッジのどのくらい近くまでマスク画像に構築されるか、その許容値を指定します (0 ～ 5、デフォルト = 0)。

最小エッジ強度

エッジ全体について、モデルに取り込まれる輝度の最小変化値を指定します (10 ～ 255、デフォルト = 30)。

最小エッジ長

モデルに取り込まれる最短のエッジの長さを指定します (10 ～ 1000、デフォルト = 20)。これより短いエッジは、モデルから除外されます。この値は、エッジに接続されるエッジピクセル数の最小値を表します。このパラメータの設定値を大きくすると、検出されるエッジの数が少なくなりますが、小さくすると検出されるエッジの数が増えます。この設定は、通常短いエッジとして現れるノイズエッジピクセルの除去に有効です。

登録を強制

スプレッドシートが更新されたときに、モデルを自動的に再登録するかどうかを指定します。

[強制登録] パラメータに関係なく、この関数のプロパティシートを開いて次のパラメータの変更を行い、[OK] ボタンを押して確認すると、モデルは再登録されます。

  • [画像] パラメータの変更
  • [フィクスチャ] パラメータの変更
  • [領域] パラメータの変更
  • [外部定義領域またはパス] パラメータの変更
  • [スケール] パラメータの変更
  • [エッジマスクサイズ] パラメータの変更
  • [最小エッジ強度] パラメータの変更
  • [最小エッジ長] パラメータの変更

ランタイム操作中、次のいずれの操作が行われた場合、モデルは再登録されます。

  • [画像] パラメータの変更
  • [領域] パラメータの変更
  • [外部定義領域またはパス] パラメータの変更
  • [最小エッジ強度] パラメータの変更
  • [最小エッジ長] パラメータの変更
0 = OFF (デフォルト) | プロパティシートを開いて前述のパラメータの 1 つを変更し、プロパティシートの [OK] ボタンを押してその変更を確認した場合のみ、再登録が行われます。 注意: パラメータがスプレッドシートに入力されている場合、TrainFlawModel 関数のプロパティシートを開かずにこれらのパラメータを変更すると、モデルの再登録は行われません。モデルの再登録を行うには、プロパティシートを開くか、または [登録を強制] パラメータをオンに設定する必要があります。
1 = ON | スプレッドシートが実行されるたびに、新しいモデルが登録されます。
表示解像度

モデル画像とエッジモデルの表示に使用する解像度を指定します。[中程度] または [粗粒度] を指定すると、画像はダウンサンプリングされ、細部やノイズは除去されます。

0 = 細粒度 (デフォルト) | フル解像度でモデルが登録されるように指定します。
1 = 中程度 | ハーフ解像度でモデルが登録されるように指定します。
2 = 粗粒度 | 1/4 の解像度でモデルが登録されるように指定します。
エッジマーキング描画

モデルのエッジを画像上に描画するかどうかを指定します。登録されているエッジは緑色で、マスクされたエッジは青色で描画されます。

0 = ON (デフォルト) | 画像上にエッジマークを描画します。
1 = OFF | 画像上にエッジマークを描画しません。
表示画像

表示する出力画像を指定します。

注意: この画像は表示のためにのみ使用されます。別の関数への入力として使用することはできません。

0 = 実行時画像 | そのときに取り込まれている画像が表示されるように指定します。
1 = エッジ画像 | 画像内の登録されているエッジが表示されるように指定します。
2 = モデル画像 (デフォルト) | 登録されているモデルが表示されるように指定します。
3 = マスク画像 | そのときに登録されているマスク画像が表示されるように指定します。
タイムアウト (ミリ秒) この関数が有効なモデルを検索する時間をミリ秒単位で指定します (0 ～ 30000、デフォルト = 5000)。指定された時間が経過すると、実行は停止し、#ERR が返されます。値を 0 に設定すると設定値が無効になり、タイムアウトは適用されません。

表示

画像上の TrainFlawModel グラフィックスオーバレイの表示モードを指定します。登録モデルのピクセルと一致するピクセルは緑色で表示されます。一致しないピクセルは黄色になります。マスク画像から欠落しているピクセルは青色、マスク画像内の余分なピクセルは濃いマゼンタ色で表示されます。また、余分なエッジの欠陥はマゼンタ色、欠落しているエッジや面積欠陥ピクセルは赤色で表示されます。

0 = 非表示 (デフォルト) | TrainFlawModel 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 指定された表示画像が常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域、モデル画像、およびマスク画像が常に表示されます。

TrainFlawModel 関数関数の結果出力

戻り値 | 各解像度で表されたモデル画像、エッジモデル画像、およびマスク画像が入った [image] データ構造体。入力パラメータのいずれかが無効である場合は #ERR が返されます。
結果 | TrainFlawModel 関数が初めてセルに挿入されると、登録状態が右隣のセルに自動的に表示されます。モデルを登録できない場合は #ERR が挿入されます。

TrainFlawModel 関数 データアクセス関数

1 つのデータアクセス関数がスプレッドシートに自動挿入されます。

登録 GetTrained(TrainFlawModel) モデルを登録できた場合には 1、登録できなかった場合には 0 を返します。

関連項目

  • 傷検出ツールについて
  • DetectFlaw 関数
  • FlexFlawModel 関数
  • プロパティシートの使用方法


ヒストグラム関数

ビジョンツール

In-Sight 関数リファレンス

マシンビジョンの用語では、ヒストグラムとは、対象領域 (ROI) 内のピクセル、その数、個々のグレースケール値の配列を指します。In-Sight のヒストグラム関数は、統計的解析と特徴分類を目的とした、ピクセルのカウントに使用されます。

In-Sight ビジョンシステムでは、ヒストグラムツールの次の関数を使用して、ヒストグラム解析を実行します。

  • ExtractColorHistogram 関数:ROI からカラーヒストグラム配列を抽出します。
  • ExtractHistogram 関数:ROI からグレースケールヒストグラム配列を抽出します。
  • HistContrast 関数: ROI 内のコントラストを計算します。
  • HistCount 関数: グレースケール値の範囲内に存在するピクセルの数をカウントします。
  • HistHead 関数: 範囲内の最小のグレースケール値を検出します。
  • HistHeadPercentage 関数: ヒストグラムの指定された範囲内に含まれるピクセルのうち、指定された割合（%）よりも大きなグレースケール値を返します。
  • HistMax 関数: 範囲内の最も一般的なグレースケール値を検出します。
  • HistMean 関数: グレースケールの平均値を計算します。
  • HistMin 関数: 範囲内の最も発生頻度の低いグレースケール値を検出します。
  • HistSDev 関数: グレースケールの標準偏差を計算します。
  • HistSum 関数: ピクセルグレースケールの合計を計算します。
  • HistSumSquare 関数: 二乗したピクセルグレースケールの合計を計算します。
  • HistTail 関数:範囲内の最大のグレースケール値を検出します。
  • HistTailPercentage 関数: ヒストグラムの指定された範囲内に含まれるピクセルのうち、指定された割合（%）よりも小さなグレースケール値を返します。
  • HistThresh 関数: 最適 2 値化しきい値を計算します。

ヒストグラム関数ツールについて

ヒストグラムの概要

In-Sight ヒストグラムツールは、ROI を調べ、その中の個々のピクセルをグレースケール値に従って分類し、ヒストグラム解析を実行します。8 ビットグレースケール画像では、グレースケール値 (0 ～ 255) に基づき 256 の階層があります。各階層には、それに属するピクセル個数が含まれ、階層がそのカウントのインデックスとなります。例えば、ある画像にグレースケール値 33 のピクセルが 46 個あると、その領域のヒストグラムの 33 番目となる階層の値は 46 となります。さらに、ヒストグラム配列の階層の合計は常に、抽出元の領域の面積に等しくなります。

次の画像は、ExtractHistogram 関数によるヒストグラムチャートの例です。ヒストグラムチャートは、関数の ROI 内のピクセルのグレースケール値を表示します。

  • グラフの X 軸は、グレースケール値 (0 ～ 255) を表します。
  • グラフの Y 軸は、特定のグレースケール値のピクセル合計数を表します。目盛の最大値はピクセル合計数の最大値によって作成されます。
  • 緑色の垂直線はしきい値を示します。

ヒストグラムツールを使用する場合

ヒストグラムは、すべての位置データを除き、画像に含まれるピクセルデータを簡潔に表すために重要です。関数は ROI 内のピクセル数と個々のグレースケール (またはカラー) 値に関する情報のみを返します。つまり、このヒストグラム配列から位置に依存しないすべてのグレースケール画像統計を直接計算することができます。

ヒストグラムツールは、特徴の有無の検出、照明値のチェックや、傷、ほこり、破片などがないかどうか判断するためのグレースケール値の非均一性の特定などの問題について画像を調べる際に有効です。

ヒストグラムツールの使用方法

ヒストグラムツールは通常、次の方法で使用されます。（明るさの最大、最小値を用いることで良否を判別する場合）

  • 手順 1 — 処理する画像がグレースケールの場合、ExtractHistogram 関数をスプレッドシートに挿入し、ヒストグラム解析を実施する画像領域を定義するためにパラメータを設定します。画像がカラー画像の場合は、ExtractColorHistogram 関数を使用します。
  • 手順 2 — 次に、HistHead 関数と HistTail 関数を使用してそれぞれ最初と最後の 0 以外の階層を検出します。HistHead 関数と HistTail 関数の出力を使用して、他のヒストグラム関数が解析を実行する範囲を設定し、ピクセルを含まない階層を削除します。
  • 手順 3 — 最後に、HistMin 関数と HistMax 関数を使用して、それぞれ最初と最後の 0 以外の階層間の最小と最大を判断します。他のヒストグラムツールを使用して追加の解析を実行することもできます (範囲を定義する HistHead 関数と HistTail 関数の出力を使用)。

注意: HistMin 関数の FirstBin パラメータ引数にデフォルトの 0 が指定されている場合、HistHead 関数の出力に関係なく、HistMin 関数はピクセルを含まない最初の階層である、階層 0 を常に返します。


ExtractColorHistogram 関数

ExtractColorHistogram 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

画像領域からカラーヒストグラム配列を抽出します。

  • 概要
  • ExtractColorHistogram 関数の入力パラメータ
  • ExtractColorHistogram 関数の結果出力
  • ExtractColorHistogram 関数のデータアクセス関数
  • 関連項目

概要

ExtractColorHistogram 関数は、画像領域内のすべてのピクセルにアクセスしてカラーヒストグラムを累積します。各カラーピクセルは、3 つの個別の色成分によって構成されています。これらの成分は、赤、緑、および青の組み合わせ (RGB)、または色相、彩度、および明度の組み合わせ (HSI) として表されます。RGB も HSI も、ピクセルの各成分は 0～255 の値に変換されます。したがって、累積されるヒストグラムには各色成分について 256 の要素が含まれており、各要素には、配列要素のインデックス番号と等しい値を持つピクセルの総数を示す値が含まれています。

注意: ExtractColorHistogram 関数、MatchColor 関数、および TrainMatchColor 関数は、HSI カラー表現を使用する際に個別の数式を使用して彩度の値を計算します。ExtractColorHistogram 関数によって返される彩度の値は、MatchColor 関数および TrainMatchColor 関数によって返される値とは異なるため、この 2 つの値は比較する値としては使用できません。

ExtractColorHistogram 関数関数の入力パラメータ

ExtractColorHistogram 関数(

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

領域.カーブ ,

HSI ,

表示

)

画像

この引数は有効な カラー [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

注意:　有効なカラー [image] データ構造体を返す関数は、AcquireImage 関数だけです。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

これは対象領域 (ROI) とも呼ばれ、画像解析の対象となる画像の領域を指定します。変形および回転可能な矩形の画像領域を形成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意:

  • ピクセルがヒストグラムに計算されるようにするには、ピクセルが画像領域の範囲内に完全に含まれている必要があります。部分的に含まれているピクセルは計算されません。
  • フィクスチャおよび 領域 パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

HSI

ヒストグラムで使用されるカラー表現タイプを指定します。

0 = RGB (デフォルト) | すべての入力ピクセルの赤、緑、および青成分がヒストグラムで表示されます。赤成分は赤色の線で、緑成分は緑色の線で、青成分は青色の線で表示されます。
1 = HSI | すべての入力ピクセルの色相、彩度、および明度成分がヒストグラムで表示されます。色相成分は赤色の線で、彩度成分は緑色の線で、明度成分は青色の線で表示されます。 注意: ExtractColorHistogram 関数、MatchColor 関数、および TrainMatchColor 関数は、HSI カラー表現を使用する際に個別の数式を使用して彩度の値を計算します。ExtractColorHistogram 関数によって返される彩度の値は、MatchColor 関数および TrainMatchColor 関数によって返される値とは異なるため、この 2 つの値は比較する値としては使用できません。

注意:　各ピクセルのカラー表現は、3 つの個別の色成分によって構成されています。これらの成分は、赤、緑、および青の組み合わせ (RGB) または色相、彩度、および明度の組み合わせ (HSI) として表されます。

表示

画像上の ExtractColorHistogram グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | ExtractColorHistogram 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
2 = 入力のグラフィックスのみ | 入力画像領域が常に表示されます。
3 = すべて表示: 入力とチャート | 入力画像領域とヒストグラムチャートは両方とも常に表示されます。

ExtractColorHistogram 関数関数の結果出力

戻り値 | RGB または HSI 度数分布を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | ExtractColorHistogram 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

ExtractColorHistogram 関数データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

赤 | HistMean(カラーヒストグラム, 0, 255, 0) | 平均赤チャネル値
緑 | HistMean(カラーヒストグラム, 0, 255, 1) | 平均緑チャネル値
青 | HistMean(カラーヒストグラム, 0, 255, 2) | 平均青チャネル値
色相 | HistMean(カラーヒストグラム, 0, 255, 3) | 平均色相レベル値
彩度 | HistMean(カラーヒストグラム, 0, 255, 4) | 平均彩度レベル値
明度 | HistMean(カラーヒストグラム, 0, 255, 5) | 平均明度レベル値

関連項目

  • ヒストグラムツールについて
  • カラーヒストグラムデータアクセス関数
  • ヒストグラムデータアクセス関数
  • プロパティシートの使用方法


ExtractHistogram 関数

ExtractHistogram 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

画像領域からヒストグラム配列を抽出します。

ExtractHistogram 関数 (

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

領域.カーブ ,

外部定義領域,

表示

)

ExtractHistogram 関数について

ExtractHistogram 関数は、画像領域内のすべてのピクセルにアクセスしてヒストグラムを累積します。個々のピクセルは、各グレースケール値と、その値におけるピクセルの総数に従って分類されます。8 ビットグレースケール画像には 256（＝ 2 の 8 乗）のピクセル値があります。したがって、累積されるヒストグラムには 256 の要素が含まれており、各要素には、配列要素のインデックス番号と等しいグレースケール値を持つピクセルの総数を示す値が含まれています。

ExtractHistogram 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

移動および回転可能な矩形の画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意:

  • ピクセルがヒストグラムに計算されるようにするには、ピクセルが画像領域の範囲内に完全に含まれている必要があります。部分的に含まれているピクセルは計算されません。
  • フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

外部定義領域

このパラメータは、Annulus、Circle、Region、EditAnnulus、EditCircle、EditCompositeRegion、EditPolygon、または EditRegion の各関数を含むスプレッドシートセルを参照できます。このパラメータを使用すると、ExtractHistogram ツールは、[領域] と [フィクスチャ] の設定を無視し、参照先領域に指定された画像領域を検査します。EditCompositeRegion 関数コントロールを参照している場合は、検査領域がさまざまな形状の混合となることがあります。コンポジット領域内の各形状は、検査領域に対して加算または減算 (マスキング) されるように割り当てることができます。

表示

画像上の ExtractHistogram グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | ExtractHistogram 関数を含んでいるセルがスプレッドシート内のアクティブセル である場合を除き、すべてのグラフィックスが表示されません。
2 = 入力のグラフィックスのみ | 入力画像領域が常に表示されます。
3 = 全て表示: 入力とチャート | 入力画像領域とヒストグラムチャートは両方とも常に表示されます。

ExtractHistogram 関数の結果出力

戻り値 | グレースケール度数分布を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | ExtractHistogram 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

ExtractHistogram 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

しきい値 | HistThresh(ヒストグラム, 0, 255) | 2 値化しきい値
コントラスト | HistContrast(ヒストグラム, 0, 255) | グレースケール画像のコントラスト
暗ピクセル | HistCount(ヒストグラム, 0, Thresh-1) | しきい値を下回るピクセルの数
明ピクセル | HistCount（ヒストグラム, Thresh, 255） | しきい値を上回るピクセルの数
平均 | HistMean(ヒストグラム, 0, 255) | 平均グレースケール値

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistContrast 関数

HistContrast 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

最適 2 値化しきい値を検出してから、しきい値より大きいグレースケール平均としきい値より小さいグレースケール平均の差を計算することによってコントラストを計算します。したがって、コントラスト値は常に、0～255 の値として返されます。

HistContrast 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistContrast 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔（0～255）の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔（0～255）の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistContrast 関数 の結果出力

戻り値

画像コントラストを表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistCount 関数

HistCount 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

指定されたグレースケール値の範囲内に存在するピクセルの数をカウントします。

HistCount 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistCount 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔 (0 ～ 255) の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔 (0 ～ 255) の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistCount 関数 の結果出力

戻り値

ピクセルの総数を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistHead 関数

HistHead 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

指定された値の範囲から、グレースケールの最小値を識別します。

HistHead 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistHead 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔 (0 ～ 255) の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔 (0 ～ 255) の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistHead 関数 の結果出力

戻り値

グレースケールの最小値を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistHeadPercentage 関数

HistHeadPercentage 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

ヒストグラムの指定された範囲内に含まれるピクセルのうち、指定されたパーセンテージよりも大きなグレースケール値を返します。

HistHeadPercentage 関数 (

ヒストグラム ,

パーセンテージ ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistHeadPercentage 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

パーセンテージ

ヒストグラムに表現されているピクセルのうち、指定されたグレースケール値の範囲内に存在する全ピクセルのパーセンテージを指定します。

範囲始まり

グレースケール間隔 (0 ～ 255) の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔 (0 ～ 255) の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、色成分を選択するために、オプションの [カラー] パラメータがこの関数に追加されます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistHeadPercentage 関数 の結果出力

戻り値

最も明るいグレースケール値を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

HistTailPercentage 関数

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistMax 関数

HistMax 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

指定された値の範囲内で発生する最も一般的なグレースケール値を識別します。

HistMax 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistMax 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔（0～255）の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔（0～255）の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistMax 関数 の結果出力

戻り値

最も発生頻度の高いグレースケール値を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistMean 関数

HistMean 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

グレースケールの平均を計算します。HistMean 関数は、指定された範囲内のすべてのピクセルのグレースケール値を合計し、同じ範囲内のピクセルの数で除算します。

HistMean 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistMean 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔（0～255）の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔（0～255）の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistMean 関数 の結果出力

戻り値

グレースケール値の平均を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistMin 関数

HistMin 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

指定された値の範囲内で最も発生頻度の低いグレースケール値を識別します。

HistMin 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistMin 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔（0～255）の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔（0～255）の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistMin 関数 の結果出力

戻り値

最も発生頻度の低いグレースケール値を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistSDev 関数

HistSDev 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

指定されたグレースケール値の範囲内にあるピクセル値の標準偏差を計算します。

HistSDev 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistSDev 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔（0～255）の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔（0～255）の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistSDev 関数 の結果出力

戻り値

グレースケールの標準偏差値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistSum 関数

HistSum 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

ピクセルグレースケールの合計を計算します。指定されたグレースケール値の範囲内にあるピクセル値の合計を計算します。

HistSum 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistSum 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔（0～255）の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔（0～255）の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistSum 関数 の結果出力

戻り値

ピクセル値の合計を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistSumSquare 関数

HistSumSquare 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

二乗したピクセルグレースケールの合計を計算します。HistSumSquare 関数は、指定されたグレースケール値の範囲内にあるピクセル値の二乗を合計します。

HistSumSquare 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistSumSquare 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔（0～255）の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔（0～255）の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistSumSquare 関数 の結果出力

戻り値

ピクセル値の二乗の合計を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistTail 関数

HistTail 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

指定された値の範囲から、グレースケールの最大値を識別します。

HistTail 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistTail 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔（0～255）の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔（0～255）の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistTail 関数 の結果出力

戻り値

グレースケールの最大値を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistTailPercentage 関数

HistTailPercentage 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

ヒストグラムの指定された範囲内に含まれるピクセルのうち、指定されたパーセンテージよりも小さなグレースケール値を返します。

HistTailPercentage 関数 (

ヒストグラム ,

パーセンテージ ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistTailPercentage 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

パーセンテージ

ヒストグラムに表現されているピクセルのうち、指定されたグレースケール値の範囲内に存在する全ピクセルのパーセンテージを指定します。

範囲始まり

グレースケール間隔（0～255）の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔（0～255）の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、色成分を選択するために、オプションの [カラー] パラメータがこの関数に追加されます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistTailPercentage 関数 の結果出力

戻り値

グレースケール値の最大値を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

HistHeadPercentage 関数

ヒストグラムデータアクセス関数

プロパティシートの使用方法


HistThresh 関数

HistThresh 関数 |
ビジョンツール → ヒストグラム | In-Sight 関数リファレンス

最適 2 値化しきい値を計算します。この関数は、グレースケール画像領域と 2 値再量子化間の正規化相関を計算し、類似性が最大のしきい値レベルを検出します。

HistThresh 関数 (

ヒストグラム ,

[範囲始まり],

[範囲終わり],

[ カラー ]

)

HistThresh 関数 の入力パラメータ

ヒストグラム

このパラメータは有効な [image] または [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

範囲始まり

グレースケール間隔（0～255）の始まりを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

範囲終わり

グレースケール間隔（0～255）の終わりを指定します。指定されなければ、このパラメータはデフォルト値 255 になります。

カラーの In-Sight センサを使用して、(ExtractColorHistogram 関数からの) [image] データ構造体を参照する場合は、オプションの [カラー] パラメータを関数に使用して、色成分を選択できます。

カラー

データ構造体からの色成分のヒストグラムのインデックスを指定します。指定されなければ、このパラメータはデフォルト値 0 になります。

0 = 赤 | データ構造体からの赤成分を指定します。
1 = 緑 | データ構造体からの緑成分を指定します。
2 = 青 | データ構造体からの青成分を指定します。
3 = 色相 | データ構造体からの色相成分を指定します。
4 = 彩度 | データ構造体からの彩度成分を指定します。
5 = 明度 | データ構造体からの明度成分を指定します。

注意: データ構造体を参照している場合、[カラー] パラメータは無視されます。

HistThresh 関数 の結果出力

戻り値

最適 2 値化しきい値を表す値。入力パラメータが無効であれば #ERR を返します。

関連項目

ヒストグラムツールについて

ヒストグラムデータアクセス関数

プロパティシートの使用方法


ID

ビジョンツール

In-Sight 関数リファレンス

In-Sight ID ツールは線形 1D および 2D シンボルに含まれるデータ文字列を読み取ります。また、必要に応じて、公表されている仕様に従って大半のシンボルの品質を検証することができます。ID ツールには次の関数があります。

  • ReadIDMax 関数: 単一視野内で、同じまたは異なるコード (データマトリックス、QR コード、1D/スタックド、およびポスタル) で表された複数の 1D および 2D シンボルに含まれる情報をデコードします。必要に応じて、モデルの登録と品質の検証も行います。
  • ReadIDCode 関数: 1D および 2D のシンボルに含まれている情報をデコードし、必要に応じて品質を検証します。
  • ValidateIDData 関数: ID コードからデコードされたデータを検証します。
  • VerifyIDCode 関数: データマトリックスシンボルからコードの読み取り易さとマークの品質に関連する方法を抽出するために使用します。

注意: レガシー関数である ReadIDCode 関数の代わりに ReadIDMax 関数を使用することを推奨します。ReadIDMax 関数には拡張性能機能が搭載されています。


ReadIDCode 関数

ビジョンツール → ID

In-Sight 関数リファレンス

1D および 2D のバーコードおよびシンボルに含まれている情報をデコードし、必要に応じて品質を検証します。

注意: レガシー関数である ReadIDCode 関数の代わりに ReadIDMax 関数を使用することを推奨します。ReadIDMax 関数には拡張性能機能が搭載されています。

ReadIDCode 関数関数の入力パラメータ

ReadIDCode 関数(

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

コード種類,

デコード設定.チェックサム,

デコード設定.全方向読み取り,

デコード設定.スキャン,

デコード設定.コントラスト,

デコード設定.シンボルフォーマット,

デコード設定.行数,

デコード設定.列数,

デコード設定.スケール許容,

デコード設定.カラー,

デコード設定.ミラー,

デコード設定.アルゴリズム,

デコード設定.モード,

デコード設定.遠近補正,

デコード設定.QRモード,

照合,

タイムアウト,

表示

)

画像

この引数は有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

移動および回転可能な矩形の画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法 注意: ReadIDCode 関数でサポートされる最大領域のサイズは 2048 ピクセル (高さ) × 2048 ピクセル (幅) です。[高さ] または [幅] パラメータを 2048 ピクセル以上に設定すると、#ERR を返します。
幅 | 領域の Y 軸に沿った寸法 注意: ReadIDCode 関数でサポートされる最大サイズは 2048 ピクセル (高さ) × 2048 ピクセル (幅) です。[高さ] または [幅] パラメータを 2048 ピクセル以上に設定すると、#ERR を返します。
角度 | フィクスチャ座標での角度。

注意:　[フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

コード種類

読み取りの対象となる 1D シンボルと 2D シンボルの種類を指定します。

注意:

  • 選択したコード種類に適用されないデコード設定は、グレーアウトされます。
  • POSTNET、PLANET、UPU 4-State、Australia Post 4-State、Japan Post 4-State、USPS OneCode
    4-State     ポスタルコード     のデコードアルゴリズムは、初期画像処理の段階で、領域.角度の値を使用します。画像内でバーコードが完全に水平である場合、[全方向読み取り] パラメータが OFF のときに、[角度] の値が 0 で動作が最適化されます。画像内でバーコードが完全に垂直である場合は、動作を最適化するために [領域] を ±90 度回転させる必要があります。
  • GS1 コードはすべてサポートされています。詳細については、www.gs1.org を参照してください。

255 = 自動

シートが更新されるたびに、領域内のすべてのシンボルを実行することによってデコードし、最初にデコードに成功したシンボルを選択します。後続するスプレッドシートの更新では、デコードに成功した最新のコード種類のデコードを最初に試みてから、そのほかのコード種類を試みます。

Closed コード種類を試みる順序

  1. 最も新しくデコードされたコード種類 (存在する場合)
  2. データマトリックス
  3. RSS CC-A
  4. RSS CC-B
  5. PDF417
  6. QR コード
  7. マイクロ QR コード
  8. RSS14 & スタックド
  9. RSS リミテッド
  10. UPC
  11. EAN
  12. Code 128
  13. POSTNET
  14. PLANET
  15. UPU 4-State
  16. Australia 4-State
  17. Japan 4-State
  18. USPS OneCode 4-State
  19. Code 39
  20. Code I2of5
  21. Code 93
  22. Codabar (NW-7)

注意:「自動」では、PharmaCode バーコードはデコードされません。

-1 = 学習 (デフォルト)

コード種類を学習します。このパラメータには、最初にデコードされたコード種類が再実装されます。

注意:「学習」では、PharmaCode バーコードはデコードされません。

ヒント:

  • シンボルが学習されると、「コード種類」パラメータには、そのシンボルのコード種類が表示されます。実行中のモードが学習モードであるかどうかを確認するには、空のスプレッドシートセルに、ReadIDCode 構造体を参照する GetLearned データアクセス関数を入力します。1 が返された場合、この関数は学習モードで実行されています。
  • シンボルの形式が変更されると想定される場合は、コード種類が同じであったとしても、学習モードでは実行しないでください。学習設定は、最初にデコードされたシンボルの形式 (コード種類、極性、形式、モジュール、サイズなど) を記憶しています。新しいシンボルの形式のいずれかが学習されたコードから変更された場合、コード種類が同じでも、読み取りは失敗します。シンボル形式の学習を解除しても同じコード種類を維持するには、別のコード種類を一度選択してから正しいコード種類を選択しなおす必要があります。形式が変化するシンボルを ReadIDCode 関数がデコードできるようにするには、コード種類を自動に設定します。シンボルの変化が予想されない場合は、特定のシンボルを選択します。
  • [アルゴリズム] パラメータが ON のときに [学習] を選択すると、デコード時間が長くなる可能性があります。
  • コード種類の再学習をプログラムで行う例については、 Closed ここをクリックしてください。

    1. セル A1 にボタンを作成します。

    2. セル A2 に式 If(A1,255,-1) を挿入します。

    3. 画像内に表示されるシンボルなしで ReadIDCode を作成します。

    4. ReadIDCodeの「コード種類」パラメータがセル A2 を参照するようにします。

    5. セル A1 のボタンをクリックして、ReadIDCode 関数に再学習 (学習解除してからの再学習を含む) させます。

0 = Code 39

Code 39 (別名 Code 3 of 9 および BC39) の読み取りを選択します。

1 = Code 128

Code 128 の読み取りを選択します。コードセット A、B、および C のバーコードをサポートします。

2 = Code I2of5

I2of5 (Interleaved 2 of 5含む) の読み取りを選択します。

3 = UPC

UPC (Universal Product Code含む) の読み取りを選択します。バージョン A (標準バージョン含む) およびバージョン E (ゼロ抑制バージョン含む) の UPC バーコードと、2 文字および 5 文字の補足コードをサポートします。

4 = EAN

EAN (European Article Numbering含む) の読み取りを選択します。EAN-8 および EAN-13 バーコードと同時に、2 文字および 5 文字の補足コードがサポートされています。

7 = PharmaCode

PharmaCode の読み取りを選択します。

5 = POSTNET

POSTNET の読み取りを選択します。

6 = PLANET

PLANET の読み取りを選択します。

9 = RSS-14 & スタックド

RSS-14 (Reduced Space Symbology含む) および RSS スタックドの読み取りを選択します。

10 = RSS リミテッド

RSS リミテッドの読み取りを選択します。

12 = Codabar (NW-7)

Codabar (USD-4 および Code 2 of 7 含む) の読み取りを選択します。

11 = Code 93

Code 93 の読み取りを選択します。

8 = UPU 4-State

UPU 4-State の読み取りを選択します。

13 = Australia Post 4-State

Australia Post 4-State の読み取りを選択します。

14 = Japan Post 4-State

Japan Post 4-State の読み取りを選択します。

15 = USPS OneCode 4-State

USPS OneCode 4-State の読み取りを選択します。

128 = データマトリックス

データマトリックスの読み取りを選択します。

注意:

  • 読み取りの対象となるデータマトリックスシンボルの種類を指定するには、データマトリックスパラメータを使用します。
  • [アルゴリズム] パラメータが有効な場合は最大 144 × 144 のグリッドがサポートされ、無効な場合は最大 48 × 48 のグリッドがサポートされます。

129 = QR

QR コードの読み取りを選択します。

注意:　読み取りの対象となる QR シンボルの種類を指定するには、QR パラメータを使用します。

130 = RSS CC-A

2D CC-A (コンポジットコンポーネント含む) の読み取りを選択します。

131 = RSS CC-B

2D CC-B (コンポジットコンポーネント含む) の読み取りを選択します。

132 = PDF417

PDF417 の読み取りを選択します。

デコード設定

1D および 2D シンボルのデコードに使用される設定を指定します。

注意:　選択したコード種類に適用されないデコード設定は、グレーアウトされます。

チェックサム

信頼性を保証するためにエラー検出アルゴリズムを使用してシンボルを検証するかどうかを指定します。チェックサムは、シンボルに含まれるオプションのチェックサムアルゴリズムを備えたシンボルのみに適用されます。各シンボルは、固有のチェックサムアルゴリズムを備えています。使用されるチェックサム (使用可能な場合含む) のタイプは、選択したコードのタイプによって異なります。

0 = OFF (デフォルト) | チェックサムを検証しません。
1 = ON | チェックサムの検証に合格する必要があります。

注意:　Code 128、Code 93、RSS、UPC、および EAN バーコードは、パラメータの選択にかかわらず、チェックサムによって検証されます。ほかの任意のバーコードについて、チェックサムが有効になっていて、チェックサムがエンコードされていない場合は、読み取りが失敗します。

全方向読み取り

バーコードのエレメントをすべて検出するために、領域内に抽出されるスキャンラインの方向を指定します。デコードを成功させるには、バーコードのすべてのエレメント間で、少なくとも 1 つのスキャンラインを抽出する必要があります。

0 = OFF | スキャンラインが 1 つの角度で抽出され、領域に対して平行なバーコードが検出されます。
1 = ON (デフォルト) | スキャンラインが複数の角度で抽出され、領域に対して回転しているバーコードが検出されます。

注意:　領域から 90 度回転していると、PharmaCode バーコードは正しくデコードしません。

スキャン

領域内で抽出された各スキャンライン間で、スペースをピクセル単位で指定します。[高精度] が選択された場合、バーコードは高精度で読み取られます。[粗いモデル] が選択されると、実行時間が短縮されます。最大で領域の高さまでで、1 ～ 255 の整数値を入力することもできます。

3 = 高精度

12 = 中程度 (デフォルト)

48 = 粗いモデル

注意:　1D シンボルに対して、[全方向読み取り] が ON の場合は、[スキャン] パラメータは無効になります。

コントラスト

予想されるシンボルのコントラストを指定します。

0 = 自動 (デフォルト) | 自動コントラストルーチンを選択し、グレースケール画像統計に基づいてしきい値を計算します。
16 = 低 | 低コントラストのシンボル用です。
32 = 標準 | 通常のコントラストのシンボル用です。
64 = 高 | 高コントラストのシンボル用です。

注意:　[コントラスト] パラメータは、ポスタルおよび RSS コードでのみ有効です。

シンボルフォーマット

シンボルの行および列のフォーマットを指定します。シンボルフォーマットが無効 (デフォルト含む) の場合、シンボルフォーマットは自動的に決定されます。有効になっている場合は、行数および列数を指定する必要があります。

注意:「シンボルフォーマット」パラメータは実装されていません。

行数

シンボル内の行数を指定します。

注意:「行数」パラメータは実装されていません。

列数

シンボル内の列数を指定します。

注意:「列数」パラメータは実装されていません。

スケール許容

シンボルサーチ時に許容するスケール変化の割合 (%　含む) を指定します (0 ～ 50、デフォルト = 0)。

注意:「スケール許容」パラメータは実装されていません。

カラー

シンボルの色を指定します。

0 = 黒 | シンボルは背景よりも暗くなります。
1 = 白 | シンボルは背景よりも明るくなります。

注意:　[カラー] パラメータは、1D RSS シンボルに対してのみ実装されます。

ミラー

デコードする前に、シンボルモデルを左から右への鏡像にするかどうかを指定します。

0 = いいえ | 鏡像にしないでシンボルをデコードします。
1 = はい | デコード前にシンボルを鏡像にします。
2 = 自動 (デフォルト) | デコードを試みる前にシンボルを鏡像にする必要があるかどうかを自動的に検出します。

アルゴリズム

読み取り精度を向上させるために、高度なアルゴリズムを使用するかどうかを指定します。

注意:　[アルゴリズム] が ON の場合、最小バーエレメントの幅が 10 ピクセル以上を超える 1D バーコードがデコードできないことがあります。

0 = OFF | 高度なアルゴリズムを使用しません。無効になっている場合、この関数は、レガシー ID 関数で使用されていたアルゴリズムを適用します。このアルゴリズムを使用する場合、デコード速度は向上する可能性がありますが、精度が劣る可能性があります。
1 = ON (デフォルト) | 高度なアルゴリズムを使用してデコードを行います。このアルゴリズムは、レガシーアルゴリズムよりも高精度ですが、デコード速度は低下する可能性があります。これが ON のとき、データマトリックスおよび RSS シンボルは、IDMax® を使用してデコードされます。

モード

特定のシンボルを読み取るために使用するモードを指定します。

0 = デフォルト

非整合データマトリックスシンボルの読み取りは行われません。

2 = 非整合モジュールを許可

非整合データマトリックスシンボルを読み取り、デコードオプションを試行するための時間を追加します。

注意:

  • コード種類でデータマトリックスシンボルをデコードするには、[自動]、[学習]、または [データマトリックス] を選択する必要があります。また、[アルゴリズム] パラメータを ON にする必要があります。
  • データマトリックスシンボルのモジュールがハローやそれに類する外観を示している場合は、このオプションを選択します。

3 = 高速/高コントラスト

高コントラストデータマトリックス、RSS-14、および RSS リミテッドのシンボルを読み取ります。この選択肢を使用すると、デコード速度が向上します。シンボルのコントラストが低い、シンボルが損傷している、または不鮮明である場合は選択しないでください。

注意:

  • [学習] が選択されたコードタイプで、アルゴリズムパラメータが有効である必要があります。
  • [高速/高コントラスト] オプションは、一部の高速読み取りアプリケーションに対して、より繰り返し可能なデコード時間を提供できるように設計されています。一般に、マークの品質が場所によって異なるような、コントラストの高いインクジェットコードの読み取りに使用されます。このようなアプリケーションでは、各マークのデコードに必要な時間に大きなばらつきが見られることがよくあります (つまり、印刷品質の悪いマークのデコードにかかる時間は、品質の良いマークの場合よりも 3 ～ 5 倍、長くなります)。[高速/高コントラスト] オプションによって、平均速度を高く保ちながら、デコード時間のばらつきを軽減できます。ただし、すべてのアプリケーションでこの恩恵を受けられるわけではないことに注意してください。使用しているアプリケーションにこのオプションが適しているかどうかを判定するには、適切なテストを実行する必要があります。

遠近補正

遠近歪みを持つデータマトリックスシンボルおよび QR コードシンボルのデコードを指定します。また、必要に応じて、既知の遠近歪みに対するデータマトリックスシンボルを登録することも可能です。

注意:

  • [コード種類] で、遠近歪みを持つデータマトリックスシンボルまたは QR コードシンボルをデコードするには、[自動]、[学習]、[データマトリックス]、または [QR] を選択する必要があります。また、[アルゴリズム] パラメータをオンにする必要があります。
  • [遠近補正あり] または [学習時に遠近補正データを登録] が選択されている場合、品質検証はサポートされません。

0 = 遠近補正なし (デフォルト)

遠近歪みのないデータマトリックスシンボルおよび QR コードシンボルをデコードします。

3 = 遠近補正あり

遠近歪みを持つデータマトリックスシンボルおよび QR コードシンボルをデコードします。遠近歪みは、モデルの登録中およびランタイムに、個別に予測されます。

7 = 学習時に遠近補正データを登録

既知の遠近歪みを持つデータマトリックスシンボルをデコードします。コード種類で [学習] が選択されている場合、遠近補正は、そのほかの 「学習済み」 属性とともに登録されます。ランタイムに、学習済み属性を使用して入力画像の遠近歪みが補正されている空間から、このシンボルがサーチされます。このオプションでは、ランタイムシンボルを、学習時間シンボルと同じ平面に配置する必要があります。このオプションを指定すると、既知の遠近歪みを持つひどく損傷したシンボルでもデコードを行うことができます。コード種類で [自動] が選択されている場合、このオプションは、「3 = 遠近補正あり」 と同じです。

ヒント:　センサは入射角 (センサの光軸と、シンボルが存在する平面の法線ベクトルの角度含む) が 40 度を超えないように、またシンボルの解像度が 1 セルあたり最低 5 ピクセルになるように取り付けることを推奨します。

QR モード

読み取りの対象となる QR コードの種類を指定します。

3 = QR コードモデル 1 と 2

4 = マイクロ QR コード

6 = QR コードモデル 2、およびマイクロ QR コード (デフォルト)

7 = QR コードモデル 1 と 2、およびマイクロ QR コード

照合

印刷品質テストを実行するかどうかを指定します。

0 = OFF (デフォルト) | 品質をテストしません。
1 = ON | 品質をテストし、スプレッドシートに結果を表示します。

注意:

  • 文字列をデコードできなかった場合、スプレッドシートに自動挿入された結果すべてに、#ERR が返されます。
  • PharmaCode および RSS スタックド以外のすべてのコード種類は、品質検証をサポートしています。

タイムアウト

関数が有効な ID シンボルを検索する時間をミリ秒単位で指定します (0 ～ 30000)。この時間が経過すると、処理は中止され、#ERR が返されます。値を 0 に設定すると設定値が無効になり、タイムアウトは適用されません。

表示

画像上の ReadIDCode グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | ReadIDCode 関数を含んでいるセルがスプレッドシート上でハイライトされている場合を除き、入力領域境界は表示されません。
1 = 結果のグラフィックスのみ | 結果のグラフィックス (データマトリックスおよび QR コード用ボックス含む) が常に表示されます。
2 = 入力と結果のグラフィックス | 入力グラフィックスと結果のグラフィックスが常に表示されます。 注意: 表示パラメータは、データマトリックスシンボルと QR コードシンボルに対してのみ実装されます。

ReadIDCode 関数 関数の結果出力

戻り値 | デコードされた英数字文字列を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数が初めてセルに挿入されると、デコードされた文字列が隣のセルに自動的に表示されます。バーコードまたはシンボルをデコードできない場合は #ERR が挿入されます。

ReadIDCode 関数データアクセス関数

[照合] チェックボックスを OFF にした ReadIDCode 関数をスプレッドシートに配置すると、データアクセス関数が 1 つだけスプレッドシートに自動挿入されます。

文字列

GetString(ID コード)

バーコードまたはシンボル内でエンコードされている英数字文字列を返します。

[照合] チェックボックスを ON にした ReadIDCode 関数をスプレッドシートに配置すると、自動的にデータアクセス関数が挿入されます。データアクセス関数の組み合わせは、選択したコード種類によって変わります。

注意:　ReadIDCode 関数をスプレッドシートに配置した後で [照合] チェックボックスを ON にしても、データアクセス関数は自動挿入されません。手動でセットしたデータアクセス関数を実行するには、[照合] チェックボックスを ON にしてください。

ReadIDCode データアクセス関数を使用して、そのほかのデータの取得ができます。


ReadIDMax 関数

ビジョンツール → ID

In-Sight 関数リファレンス

対象領域内で、同じまたは異なるコード (データマトリックス、QR コード、1D/スタックド、およびポスタル) で表された複数のシンボルに含まれる情報をデコードします。必要に応じて、モデルの登録と品質の検証も行います。

  • ReadIDMax 関数の入力パラメータ
  • ReadIDMax 関数の結果出力
  • ReadIDMax データアクセス関数

ReadIDMax 関数関数の入力パラメータ

ReadIDMax 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

シンボルグループ,

最大結果,

詳細デコードモード,

登録の有効化,

1D シンボル.Code 128,

1D シンボル.Code 39,

1D シンボル.I2of5,

1D シンボル.Pharmacode,

1D シンボル.UPC/EAN,

1D シンボル.Code 93,

1D シンボル.Codabar,

スタックドシンボル.PDF 417,

スタックドシンボル.DataBar,

スタックドシンボル.DataBar リミテッド,

スタックドシンボル.DataBar Expanded,

スタックドシンボル.EAN.UCC コンポジット,

ポスタルシンボル.POSTNET,

ポスタルシンボル.PLANET,

ポスタルシンボル.Japan Post,

ポスタルシンボル.Australia Post,

ポスタルシンボル.UPU,

ポスタルシンボル.インテリジェントメールバーコード,

デコード設定.遠近,

デコード設定.QRモード,

デコード設定.極性を無視,

デコード設定.フレキシブルグリッドサイズの許容,

デコード設定.チェックサム,

デコード設定.極性,

デコード設定.全方向読み取り,

デコード設定.ソートモード,

デコード設定.同一 1D シンボルの許容,

デコード設定.バイナリ結果の許容,

照合,

タイムアウト,

表示

)

注意:　ReadIDMax 関数のプロパティシートを設定している場合、パラメータ値の更新の影響を確認するには、[OK] ボタンをクリックして変更を受け入れてからプロパティシートを閉じます。ReadIDMax 関数では、プロパティシートを開いたまま更新された結果を表示することはできません。

画像

この引数は有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

移動および回転可能な矩形の画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法 注意: 1D/スタックドシンボルおよびポスタルシンボルを読み取る場合、ReadIDMax 関数でサポートされる最大領域サイズは 2048 ピクセル (高さ) × 2048 ピクセル (幅) です。[高さ] または [幅] パラメータを 2048 ピクセル以上に設定すると、#ERR を返します。
幅 | 領域の Y 軸に沿った寸法 注意: 1D/スタックドシンボルおよびポスタルシンボルを読み取る場合、ReadIDMax 関数でサポートされる最大サイズは 2048 ピクセル (高さ) × 2048 ピクセル (幅) です。[高さ] または [幅] パラメータを 2048 ピクセル以上に設定すると、#ERR を返します。
角度 | フィクスチャ座標での角度。

シンボルグループ

読み取りの対象となるコードグループを 4 種類の中から 1 つ指定します。

1D/スタックド (デフォルト) | 1D およびスタックドコードの読み取りを選択します。
データマトリックス | データマトリックスの読み取りを選択します。
QR コード | QR コードの読み取りを選択します。
ポスタル | ポスタルコードの読み取りを選択します。

最大結果

読み取られるシンボルの最大数 (1 ～ 128、デフォルト = 1) を指定します。

注意:　指定した [最大結果] の値が視野内のシンボル数を超える場合でも、関数は指定した数のシンボルの検索を続行します。視野内のシンボル数が一定ではない場合、[タイムアウト] の値を小さくして、関数の実行時間を短縮することができます。

詳細デコードモード

データマトリックス、または 1D/スタックドコードグループのデコードに使用する設定を指定します。

IDMax® (デフォルト) | 整合シンボルのみを読み取ります。非整合シンボルの読み取りは行われません。
非整合モジュールを許可 | 非整合シンボルを読み取り、デコードオプションを試行するための時間を追加します。
高速/高コントラスト | 高コントラストのシンボルを読み取ります。この選択肢を使用すると、デコード速度が向上します。シンボルのコントラストが低い、シンボルが損傷している、または不鮮明である場合は選択しないでください。 注意: [高速/高コントラスト] オプションは、一部の高速読み取りアプリケーションに対して、より繰り返し可能なデコード時間を提供できるように設計されています。一般に、マークの品質が場所によって異なるような、コントラストの高いインクジェットコードの読み取りに使用されます。このようなアプリケーションでは、各マークのデコードに必要な時間に大きなばらつきが見られることがよくあります (つまり、印刷品質の悪いマークのデコードにかかる時間は、品質の良いマークの場合よりも 3 ～ 5 倍、長くなります)。[高速/高コントラスト] オプションによって、平均速度を高く保ちながら、デコード時間のばらつきを軽減できます。ただし、すべてのアプリケーションでこの恩恵を受けられるわけではないことに注意してください。使用しているアプリケーションにこのオプションが適しているかどうかを判定するには、適切なテストを実行する必要があります。
IDQuick™ (高速) | ワーピングや歪みが生じる可能性のあるシンボルや非均一な背景に表示されるシンボルに使用します。このモードは、分離されたドットではなく、「連続した」ファインダパターンのコード用に設計されています。

登録の有効化

有効な場合、最初に読み込まれたシンボルのモデルを登録します。登録情報は、このチェックボックスをオフにするまで保持されます。シンボルを保持するには、チェックボックスをオフにしてから、再度オンにしてください。

ヒント:　登録が有効にされている場合、領域内のシンボルは 1 つのみにすることを推奨します。

OFF (デフォルト) | モデルの登録を行いません。
ON | 最初に読み込まれたシンボルのモデルを登録します。

1D シンボル

読み取りの対象となる 1D コードを指定します (複数のコードを選択して、読み取ることができます)。

Code 128 | Code 128 の読み取りを選択します。
Code 39 | Code 39 (別名 Code 3 of 9 および BC39) の読み取りを選択します。
Interleaved 2 of 5 | Interleaved 2 of 5 (別名 I2of5) の読み取りを選択します。
Pharmacode | Pharmacode の読み取りを選択します。
UPC/EAN | UPC (Universal Product Code) および EAN (European Article Numbering) の読み取りを選択します。UPC は、バージョン A (標準バージョン) およびバージョン E (ゼロ抑制バージョン) の UPC バーコードと、2 文字および 5 文字の補足コードをサポートします。EAN は、EAN-8 および EAN-13 バーコードと同時に、2 文字および 5 文字の補足コードをサポートします。
Code 93 | Code 93 の読み取りを選択します。
Codabar | Codabar (USD-4 および Code 2 of 7 含む) の読み取りを選択します。

スタックドコード

読み取りの対象となるスタックドコードを指定します (複数のコードを選択して、読み取ることができます)。

PDF 417 | PDF 417 の読み取りを選択します。
DataBar | DataBar (旧称 RSS) の読み取りを選択します。
DataBar Limited | DataBar リミテッドの読み取りを選択します。
DataBar Expanded | DataBar Expanded の読み取りを選択します。
EAN.UCC コンポジット | EAN.UCC コンポジットの読み取りを選択します。

ポスタルシンボル

読み取りの対象となるスタックドコードを指定します (複数のコードを選択して、読み取ることができます)。

POSTNET | POSTNET の読み取りを選択します。
PLANET | PLANET の読み取りを選択します。
Japan Post | Japan Post の読み取りを選択します。
Australia Post | Australia Post の読み取りを選択します。
UPU | UPU の読み取りを選択します。
インテリジェントメール バーコード | インテリジェントメールバーコードの読み取りを選択します。

デコード設定

遠近

遠近歪みを持つデータマトリックスシンボルおよび QR コードシンボルのデコードを指定します。また、必要に応じて、既知の遠近歪みに対するデータマトリックスシンボルを登録することも可能です。

遠近補正なし (デフォルト)

遠近歪みのないデータマトリックスシンボルをデコードします。

遠近補正あり

遠近歪みを持つデータマトリックスシンボル、QR コードシンボル、および 1D/スタックドシンボルをデコードします。遠近歪みは、モデルの登録中およびランタイムに、個別に予測されます。

学習時に遠近補正データを登録

既知の遠近歪みを持つデータマトリックスシンボルをデコードします。遠近歪みは登録されており、ランタイムに、登録された属性を使用して入力画像の遠近歪みが補正されている空間から、このシンボルがサーチされます。このオプションでは、ランタイムシンボルを、登録されたシンボルと同じ平面に配置する必要があります。このオプションを指定すると、既知の遠近歪みを持つひどく損傷したシンボルでもデコードを行うことができます。

ヒント:　ビジョンシステムは入射角 (センサの光軸と、シンボルが存在する平面の法線ベクトルとの間の角度) が 40 度を超えないように、またシンボルの解像度が 1 セルあたり 5 ピクセル以上になるように取り付けることを推奨します。

QR モード

読み取りの対象となる QR コードの種類を指定します。

QR コードモデル 1

QR コードモデル 2

QR コードモデル 1 と 2

Micro QR

Micro QR および QR コードモデル 1

Micro QR および QR コードモデル 2

すべての QR モード (デフォルト)

極性を無視

登録されたシンボルに対して極性が反転しているデータマトリックスシンボルを読み取り可能にするかどうかを指定します。

OFF (デフォルト) | 極性の反転を認めません。
ON | 極性の反転を認めます。

フレキシブルグリッド
サイズの許容

登録されたシンボルに対してグリッドサイズの異なるデータマトリックスシンボルおよび QR コードシンボルを読み取り可能にするかどうかを指定します。

OFF (デフォルト) | 登録シンボルとグリッドサイズの異なるシンボルの読み取りを認めません。
ON | 登録シンボルとグリッドサイズの異なるシンボルの読み取りを認めます。

チェックサム

信頼性を保証するためにエラー検出アルゴリズムを使用してシンボルを検証するかどうかを指定します。チェックサムは、シンボルに含まれるオプションのチェックサムアルゴリズムを備えたシンボルのみに適用されます。各シンボルは、固有のチェックサムアルゴリズムを備えています。使用されるチェックサム (使用可能な場合含む) のタイプは、選択したコードのタイプによって異なります。

OFF (デフォルト) | チェックサムを検証しません。
ON | チェックサムの検証に合格する必要があります。

注意:　Code 128、Code 93、DataBar、UPC、および EAN バーコードは、パラメータの選択にかかわらず、チェックサムによって検証されます。ほかの任意のバーコードについて、チェックサムが有効になっていて、チェックサムがエンコードされていない場合は、読み取りが失敗します。

極性

シンボルの色を指定します。

黒 | シンボルは背景よりも暗くなります。
白 | シンボルは背景よりも明るくなります。
自動 (デフォルト) | シンボルの極性を自動的に選択します。

全方向読み取り

バーコードのエレメントをすべて検出するために、領域内に抽出されるスキャンラインの方向を指定します。デコードを成功させるには、バーコードのすべてのエレメント間で、少なくとも 1 つのスキャンラインを抽出する必要があります。

0 = OFF | スキャンラインが 1 つの角度で抽出され、領域に対して平行なバーコードが検出されます。
1 = ON (デフォルト) | スキャンラインが複数の角度で抽出され、領域に対して回転しているバーコードが検出されます。

注意:　領域から 90 度以上回転していると、PharmaCode バーコードは正しくデコードしません。

ソートモード

順序がある場合、結果を返すときの順序を指定します。

注意:　シンボルを正確にソートするために、[最大結果] パラメータは、画像に含まれるシンボル数以上の値に設定する必要があります。

なし (デフォルト) | 最初にデコードされた結果から順にソートします。デコードされなかった結果は、デコードされた結果の後に表示されます。
上→下 | 行の昇順にソートします。
左→右 | 列の昇順にソートします。
アルファベット順 | 結果をアルファベット順にソートします。
文字数 | 結果を文字列の長さの順に (短いものから長いものへ) ソートします。
行 | シンボルを行にグループ化した後、それらを各行の中で左から右へソートすることで、結果をソートします。行によるソート時に、1 つのシンボルの中心が別のシンボルの一部と垂直にオーバラップする場合、この 2 つのシンボルは同じ行に属するものとみなされます。
列 | シンボルを列にグループ化した後、それらを各列の中で上から下へソートすることで、結果をソートします。列によるソート時に、1 つのシンボルの中心が別のシンボルの一部と水平にオーバラップする場合、この 2 つのシンボルは同じ列に属するものとみなされます。

同一 1D シンボルの許容

領域内のすべてのシンボルが同一の場合でも、それらのシンボルをデコードするかどうかを指定します。長さ、シンボルの種類、およびデコードされた文字列が同一の場合、2 つのシンボルは同一とみなされます。

OFF (デフォルト) | 複数のシンボルがデコードされた場合に結果を 1 つだけ返します。
ON | 結果が同一の場合でもすべての結果を返します。

照合

印刷品質テストを実行するかどうかを指定します。

OFF (デフォルト) | 品質をテストしません。
ON | 品質をテストし、スプレッドシートに結果を表示します。

注意:

  • 文字列をデコードできなかった場合、スプレッドシートに自動挿入された結果すべてに、#ERR が返されます。
  • Pharmacode および DataBar 以外のすべてのコード種類は、品質検証をサポートしています。

タイムアウト

関数が有効な ID シンボルを検索する時間をミリ秒単位で指定します (0 ～ 30000)。この時間が経過すると、処理は中止され、#ERR が返されます。値を 0 に設定すると設定値が無効になり、タイムアウトは適用されません。

表示

画像上の ReadIDMax グラフィックスオーバレイの表示モードを指定します。

非表示 (デフォルト) | ReadIDMax 関数を含んでいるセルがスプレッドシート上でハイライトされている場合を除き、入力領域境界は表示されません。
結果のグラフィックスのみ | 結果のグラフィックス (データマトリックスおよび QR コード用ボックス含む) が常に表示されます。
入力と結果のグラフィックス | 入力グラフィックスと結果のグラフィックスが常に表示されます。 注意: 表示パラメータは、データマトリックスシンボルと QR コードシンボルに対してのみ実装されます。

ReadIDMax 関数 関数の結果出力

戻り値

デコードされた英数字文字列を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

結果

この関数が最初からセルに挿入されている場合、結果テーブルはこのスプレッドシートに挿入されます。結果テーブルに返されるインデックス付き文字列の数は、[最大結果] パラメータに入力された値と同じです。シンボルをデコードできない場合、#ERR が返されます。

注意:　データマトリックスシンボルの場合、Base 256 ラッチ文字 (10 進数 231、16 進数 E7) によってエンコードされたデータは、(ISO/IEC 16022 データマトリックス仕様に従い) バイト単位で処理されます。

ReadIDMax 関数データアクセス関数

[照合] チェックボックスを OFF にした ReadIDMax 関数をスプレッドシートに配置すると、データアクセス関数が 1 つだけスプレッドシートに自動挿入されます。

文字列

GetString(IDMax, [インデックス])

インデックス付きシンボル内でエンコードされている英数字文字列を返します。

[照合] チェックボックスを ON にした ReadIDMax 関数をスプレッドシートに配置すると、自動的にデータアクセス関数が挿入されます。データアクセス関数の組み合わせは、選択したコードグループによって変わります。

注意:　ReadIDMax 関数をスプレッドシートに配置した後で [照合] チェックボックスを ON にしても、データアクセス関数は自動挿入されません。手動でセットしたデータアクセス関数を実行するには、[照合] チェックボックスを ON にしてください。

ReadIDMax データアクセス関数を使用して、そのほかのデータの取得ができます。


ValidateIDData 関数

ビジョンツール → ID

In-Sight 関数リファレンス

ReadIDMax 関数、または ReadIDCode 関数で初めに読み込まれた ID コードからデコードされたデータに対して、MIL-STD 130 および GS1 に準拠した検証を実行します。

ValidateIDData 関数関数の入力パラメータ

ValidateIDData 関数(

IDコード,

検証オプション,

DoD UID コンストラクト,

)

ID コード

この引数は、ReadIDCode 関数によって返される有効な [image] データ構造体、または ReadIDMax 関数によって返される有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。

注意: 参照する ReadIDCode 関数では、[アルゴリズム]　パラメータをオンにしておく必要があります。

検証オプション

使用する検証オプションを指定します。

0 = データクオリファイア (デフォルト)

データ内のデータ識別子 Closed 指定された文字、または文字列。これはデータの直前に置かれ、後続のデータの一般的なカテゴリや使用目的を定義します。 が有効で、各データ識別子に続く文字の種類、長さ、および値が規定に準拠することを示します。次の 3 つのカテゴリのデータクオリファイアを検証できます。

  • アプリケーション識別子 (AI)- ISO/IEC 15434 のフォーマット 05
  • データ識別子 (DI)- ISO/IEC 15434 のフォーマット 06
  • テキスト要素識別子 (TEI)

1 = ISO 15434

検証オプションに ISO 15434 を指定します。詳細については、

www.iso.ch/iso/en/ISOOnline.openerpage を参照してください。

2 = DoD UID

検証オプションに米国国防総省 (DoD) の固有識別子 (UID) を指定します。詳細については、

www.acq.osd.mil/dpap/UID または www.iuidtoolkit.com を参照してください。

注意: DoD の機械判読可能な情報 (MRI: Machine Readable Information) シンボルに関する必要最低条件は、ISO 16022 仕様によって定義された データマトリックス ECC 200 シンボルです。

3 = GS1

検証オプションに GS1 標準を指定します。In-Sight のファームウェアは、GS1 General Specification (GS1 仕様書) V10、2010 年 1 月第一版に対応しています。詳細については、www.gs1.org を参照してください。

4 = securPharm (高レベル)

検査オプションに「厳しい」 securPharm (データマトリックスシンボルを使用したドイツ医薬品産業のバーコードパッケージングシステム) を指定します。医薬品番号 (PPN)、シリアル番号、ロット番号、有効期限 (GTIN はオプション) が必要です。

5 = securPharm (低レベル)

検査オプションに「緩い」 securPharm (データマトリックスシンボルを使用したドイツ医薬品産業のバーコードパッケージングシステム) を指定します。医薬品番号 (PPN) が必要です。それ以外の情報はオプションです。

DoD UID コンストラクト

検証する DoD UID コンストラクトの種類を指定します。

注意: このパラメータは、[検証オプション]　パラメータの値に DoD UID が選択されている場合のみ有効になります。

0 = DoD UID コンストラクト #1 または #2 (デフォルト)

検証オプションとして、DoD UID コンストラクト #1 または #2 を指定します。

DoD コンストラクト #1 UID に準拠する場合、すべてのフィールドが検証されます。また、すべてのフィールドに少なくとも次の情報が含まれている必要があります。

  • エンタープライズ ID
  • エンタープライズ ID 内のシリアル番号

DoD コンストラクト #2 UID に準拠する場合、すべてのフィールドが検証されます。また、すべてのフィールドに少なくとも次の情報が含まれている必要があります。

  • エンタープライズ ID
  • 元の部品番号、ロット番号、またはバッチ番号
  • 元の部品番号、ロット番号、またはバッチ番号内のシリアル番号
  • 現在の部品番号、ロット番号、またはバッチ番号

1 = DoD UID コンストラクト #1

検証オプションとして、DoD UID コンストラクト #1 を指定します。

2 = DoD UID コンストラクト #2

検証オプションとして、DoD UID コンストラクト #2 を指定します。

ValidateIDData 関数関数の結果出力

戻り値 | シンボル の検証方法を含むを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数が初めてセルに挿入されると、 [image] データ構造体の右隣のセルに、該当する情報文字列とともに検証ステータスが自動的に表示されます。

ValidateIDData 関数データアクセス関数

ValidateIDData 関数 関数が初めて生成されると、次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

有効 | GetValid(IDValid) | データの妥当性 (0 = 無効、1 = 有効)。
診断情報 | GetDiagnosticString(IDValid) | 診断情報文字列を返します。

IDValidate データアクセス関数を使用して、そのほかのデータを取得することができます。


VerifyIDCode 関数

ビジョンツール → ID

In-Sight 関数リファレンス

データマトリックスシンボル、QR コードシンボル、または最初に ReadIDCode 関数により読み込まれたPOSTNET、PLANET、UPU 4-State、Australia Post 4-State、Japan Post 4-State、USPS OneCode
4-State ポスタルシンボルからコードの可読性とマークの品質に関連する基準を抽出するために使用します。

VerifyIDCode 関数 (

IDコード,

メトリクス,

IAQG 9132メトリクス,

Cognexメトリクス,

最小セルサイズ,

絞りパーセンテージ,

タイムアウト,

表示

)

注意:

  • 参照する ReadIDCode 関数では、[アルゴリズム] パラメータをオンにしておく必要があります。
  • カラーの In-Sight センサを使用している場合、ReadIDCode 関数は、カラー画像をグレースケールに変換する画像処理関数（例: ColorToGreyscaleFilter 関数）を参照する必要があります。

VerifyIDCode 関数の入力パラメータ

IDコード

このパラメータは、ReadIDCode 関数により返される有効な [image] データ構造体を含むプレッドシートのセルを参照している必要があります。

メトリクス

どのメトリクスを使用するかを指定します。

注意: QR コードの検証には、ISO 16022:2000 エンハンスおよび ISO 16022:2000 トラディショナルのみサポートされています。

0 = なし | ISO/AIM メトリクスを使用しません。
1 = ISO 16022:2000 エンハンス Closed 『International symbology specification - Data Matrix』 | ISO 16022:2000 エンハンス品質基準は、より信頼性の高い ID 検証結果を提供するために、高度な方法により計算されます。 ISO の詳細については、ここをクリックしてください。
2 = ISO 16022:2000 トラディショナル | ISO 16022:2000 トラディショナル品質基準は、ID 検証のための ISO 16022:2000 基準に記載されている方法に従って厳密に計算されます。
3 = ISO 15415:2004 （デフォルト） Closed 『Barcode print quality test specification - 2D symbols』 | ISO 15415 品質基準は、ID 検証のための ISO 15415:2004 基準で定義されている条件に従って厳密に計算されます。
4 = AIM DPM - プロセス制御 | AIM DPM - プロセス制御品質基準は、AIM により定義された条件に従って計算されます。
5 = AIM DPM - 契約準拠 | AIM DPM - 契約準拠品質基準は、AIM で定義された条件に従って計算されます。
6 = ポスタルコード検証 | ポスタルコード品質基準は、MERLIN 仕様書 （ソフトウェアリリースバージョン 2.02、2002 年 6 月 20 日リリース） で定義された条件に従って計算されます。

IAQG 9132メトリクス

IAQG AS9132、リビジョン A Closed 『Data Matrix（2D）Coding Quality Requirements for Parts Marking』 メトリクス （ドットの楕円率を含む） を使用して、データマトリックスシンボルを検証するかどうかを指定します。IAQG の詳細については、ここをクリックしてください。

注意: QR コードの検証では、IAQG AS9132メトリクスはサポートされていません。

オン（デフォルト） | IAQG AS9132 メトリクスを使用します。
OFF | IAQG AS9132 メトリクスを使用しません。

Cognexメトリクス

Cognex 補足メトリクスを使用するかどうかを指定します。

オン（デフォルト） | Cognex メトリクスを使用します。
OFF | Cognex メトリクスを使用しません。

最小セルサイズ

予想される最小モジュールとも呼ばれます。セルは単一の正方形で、黒または白のどちらかになります。例えば、10 × 10 のシンボルは、100 個の黒と白のセルで構成されます。1 つのセルは 1 ビットのデータに相当します。 セルサイズ (0 ～ 255、デフォルト = 0) を指定します。値が 0 の場合、現在のシンボルのセルサイズが使用されます。

注意: このパラメータをオンにするには、ISO メトリクスには ISO 15415:2004 を選択する必要があります。

絞りパーセンテージ

最小セル値から人工絞りサイズを計算するためのパーセンテージ（0 ～ 100、デフォルト = 80）を指定します。この値は、メトリクスの評価に使用されます。

注意: このパラメータをオンにするには、ISO メトリクスには ISO 15415 を選択する必要があります。

タイムアウト

関数が有効な ID シンボルの検証を試行する時間をミリ秒単位で指定します（0 ～ 30000）。この時間が経過すると、処理は中止され、#ERR が返されます。

表示

データマトリックスや QR コードシンボルを検証するときに、画像上の VerifyIDCode グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | VerifyIDCode 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、非表示になります。
1 = 結果のグラフィックスのみ | 結果のグラフィックス（データマトリックスおよび QR コード用ボックス）が常に表示されます。
2 = 全て表示:入力、結果、およびエラーモジュール | 入力領域グラフィックス、結果のグラフィックス （データマトリックスおよび QR コード用ボックス）、および Closed エラーモジュール診断グラフィックス （データマトリックスのみ） が常に表示されます。 ISO 15415、AIM DPM プロセス制御、または AIM DPM 契約準拠と、AIM DPM の両バージョンが選択されている場合、エラーはグラフィックスで表示されます。このグラフィックスは、検出されたエラーのタイプによって異なります。 色つきの正方形は変調のグレードを表します。正方形の色は、グレードによって次のように変わります。 ・ 正方形なし = 4 ・ 青色の正方形 = 2 または 3 ・ 黄色の正方形 = 1 ・ 赤色の正方形 = 0 赤色の [image] はビットエラー （黒いビットが予想されている場所にある白いビット、またはその逆） を表します。

VerifyIDCode 関数の結果出力

戻り値 | シンボル の検証方法を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数が初めてセルに挿入されると、検証されたシンボルのグレードが隣のセルに表示されます。シンボルを検証できない場合は #ERR が挿入されます。

VerifyIDCode データアクセス関数

初めて VerifyIDCode 関数を作成すると、選択されているメトリクスに応じて、IDVerify データアクセス関数が自動的にスプレッドシートに挿入されます。


画像フィルタ関数

ビジョンツール

In-Sight 関数リファレンス

In-Sight の画像フィルタツールは、必要とされる特徴は強調し、不必要な特徴は削除するか弱めるように、入力画像を処理します。結果として、ブロブ解析やヒストグラム分析などの追加のデータ抽出関数により適した、改善された入力画像や新しい出力画像が得られます。画像フィルタツールには次の関数があります。

  • ColorToGreyscaleFilter 関数: カラーの画像または対象領域 (ROI) 内の各ピクセルを、1 つのカラーパラメータからなる単純なフィルタに基づいて、グレースケール値に変換します (カラー In-Sight ビジョンシステムおよびカラー対応のエミュレータのみ)。
  • CompareImage 関数: 入力画像とテンプレート画像を比較し、各ピクセルが正規化された差を表すグレースケール出力画像を生成します。
  • ComputeImageSharpness 関数: In-Sight ビジョンシステムのレンズを再調整するための反復プロセスの一部として、入力画像の相対的なフォーカスの基準を計算します。
  • FindCircleDefects 関数: ユーザが設定したしきい値に基づいて、入力画像のドーナツ状 (リング状) 領域内の各ピクセルを黒または白に変換します。白は、環状でない、または放射状でないという特徴を示します。
  • GreyscaleDistance 関数: ユーザが設定したさまざまなカラーパラメータに基づいて、カラー画像または ROI 内の各ピクセルをグレースケール値または黒および白に変換します (カラーの In-Sight ビジョンシステムまたはカラー対応のエミュレータのみ)。
  • ImageMath 関数: 各ピクセルが、2 つの入力画像間で実行された算術演算 (加算、減算、平均など) の結果となるグレースケールまたは白黒の出力画像を生成します (多目的関数の詳細については、ImageMath 関数の「入力パラメータ」セクションを参照してください)。
  • LineScanDistortion 関数: In-Sight 5604 ラインスキャンビジョンシステムで使用するために、TrainLineScanDistortion 関数の計算に基づいて、歪みのない出力画像を生成します。
  • NeighborFilter 関数: 各ピクセルが、「局所的な」画像強調技術 (縮小、拡大、塗りつぶし、平滑化、またはエッジ強調など) を入力画像または ROI の一連の隣接するピクセル (「近傍」) に適用した結果であるグレースケール出力画像を生成します (多目的関数の詳細については、NeighborFilter 関数の「入力パラメータ」セクションを参照してください)。
  • PointFilter 関数: 各ピクセルが、「グローバルな」画像強調技術 (2 値化、反転、ヒストグラム平坦化、グレースケール伸長またはクリップなど) を入力画像または ROI の各ピクセルに適用した結果である白黒またはグレースケール出力画像を生成します (多目的関数の詳細については、PointFilter 関数の「入力パラメータ」セクションを参照してください)。
  • ScaleColorImage 関数: カラー入力画像または ROI のピクセルを再サンプリングして、縮小、拡大、回転または折り曲げの行われていない状態のカラー画像を生成します。
  • ScaleImage 関数: 入力画像または ROI のピクセルを再サンプリングして、縮小、拡大、回転または折り曲げの行われていない状態の画像を生成します。
  • SceneCorrection 関数: グレースケール画像を作成し、均一でない照明またはシェーディングのある画像を向上させます。
  • TrainLineScanDistortion 関数: In-Sight 5604 ラインスキャンビジョンシステムで使用するために、画像の領域内に存在するレンズの歪みを計算します。
  • WhiteBalance 関数: RGB (赤、緑、および青) 値を計算し、In-Sight ジョブに保存されたカラーテーブルに従ってそれらを修正することで、カラー画像の色かぶりを除去します (カラー In-Sight ビジョンシステムおよびカラー対応のエミュレータのみ)。

これらの画像フィルタ関数を操作別に表示するには、「画像処理の用途」セクションの表を参照してください。

注意: 画像パラメータを必要とする関数は、有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。画像パラメータのデフォルトの参照先はセル A0 です。セル A0 には、AcquireImage 関数によって返される [image] データ構造体が含まれています。そのほかの有効な画像パラメータには、CompareImage、FindCircleDefects、NeighborFilter、および PointFilter の各関数によって返される [image] データ構造体があります。

In-Sight 画像フィルタ関数 ツールについて

画像処理

マシンビジョンアプリケーションには、高品質な画像が必要です。画像にフォーカスが合ってない、歪みがある、または照明が不足しているなどの場合にはデータが失われます。このような状況では、ブロブ解析やヒストグラム解析などのデータ抽出関数が十分に動作できなかったり、失敗したりすることがあります。

高品質な画像を生成する最初のステップは、取り込んだ画像に鮮明にフォーカスが合い、歪みがなく、均一に照明が当たるように、機器のセットアップ時に照明やレンズなどのハードウェアと環境面の問題を確実に最適化することです。In-Sight ジョブで画像から必要なデータを抽出するのが困難な場合、第 2 のステップとして、画像フィルタ関数を使用して画像をさらに強調することができます。

すべての写真と同様、In-Sight の画像は「ラスターグラフィックス」です。ラスターグラフィックスは、画素 (「ピクセル」) からなるグリッドに、画像の特性に関する情報を保存しています。グリッドは、画像の最小で完結したサンプルであるため、拡大や縮小はできません。ラスター画像の品質は、ピクセルの総数 (別名「解像度」) と各ピクセルの情報量によって決まります。

画像の中の必要な対象物を強調し、不要な特徴は削除するか弱めるために (カラー、明度、コントラストまたはスケールなどを調整して)、In-Sight 画像フィルタ関数は、精巧な画像処理アルゴリズムを使用して、個々のピクセルまたは一連の隣接するピクセル (別名「近傍」) に対してデータを追加または除去します。

画像処理の用途

多くのユーザは画像フィルタツールを使用せずに In-Sight ジョブを作成し、ジョブで必要な結果を生成できない場合にのみツールを使用します。画像フィルタ関数は、次のいずれの場合でも使用できます。

  • 取り込んだ画像がカラーである。In-Sight ツールはグレースケール画像でのみ動作します。各ツールは画像をカラーからグレースケールに自動的に変換するように設計されていますが、画像フィルタ関数を使用して 1 回だけ変換を実行し、後続のツールは変換された画像を参照するようにするとより効率的です。
  • 取り込んだ画像の対象物と背景のコントラストが弱い。
  • 取り込んだ画像に、対象物の視覚的影響を最小化する不要な特徴が含まれている。
  • 取り込んだ画像のフォーカスがずれているため、ビジョンシステムのレンズを調整する必要がある。
  • 拡大、縮小、折り曲げまたは回転の行われていない状態の取り込み画像が、別の In-Sight ツールで必要とされている。
  • 白黒の取り込み画像が別の In-Sight ツールで必要とされている。

画像フィルタ関数は、さまざまな画像処理操作を実行できます。ほとんどの関数は特定の操作を対象としています。多目的に設計されている関数は 3 つあります。次の表は、一般的な操作とそれに使用可能な画像フィルタ関数の一覧です。

操作 | 説明 | 使用可能な画像フィルタ関数
明度/コントラスト | 各ピクセルのグレースケール値をユーザが指定した最小値または最大値に「クリッピング」 (「スケールアップ」または「スケールダウン」) して、明度とコントラストを変更します。 | PointFilter 関数
カラー調整 | 入力画像のカラーを変換または修正します。カラー In-Sight ビジョンシステムまたはカラー対応のエミュレータでのみ使用可能です。 | ColorToGreyscaleFilter 関数 GreyscaleDistance 関数 WhiteBalance 関数
拡大/縮小 | 入力画像または ROI 内の特徴を拡大または縮小します。 | NeighborFilter 関数
塗りつぶし | 隣接するピクセルに近い外観になるように、ピクセルを白値または黒値で埋めます。 | NeighborFilter 関数
フィルタ処理 | 不要なデータをブロックし、必要なデータのみを通します。 | ColorToGreyscaleFilter 関数 GreyscaleDistance 関数 NeighborFilter 関数 PointFilter 関数
画像の差分 | 入力画像を、テンプレート、別の画像または形状と比較し、2 つの画像間の差を判定します。 | CompareImage 関数 FindCircleDefects 関数 ImageMath 関数
反転 | 「ネガティブ」状態の画像を作成します。 | PointFilter 関数
レンズの調整 | 反復プロセスを通じてレンズのフォーカスを測定し、調整します。 | ComputeImageSharpness 関数
スケーリング (サイズ設定) | 拡大または縮小された入力画像をジョブビューに表示します。 | ScaleImage 関数 ScaleColorImage 関数
強調 | 方向 (垂直、水平) に基づいて「エッジ」(画像内でピクセルのグレースケール値が急激に変化する領域) を検出します。または、「平滑化された」画像とオリジナルの画像を比較して、エッジを強調します。 | NeighborFilter 関数
平滑化 | 入力画像内の一連の隣接するピクセル (「近傍」) のグレースケール値を平均し、急速に変化するグレースケール値の影響を弱めます。 | NeighborFilter 関数 SceneCorrection 関数
2 値化 | ユーザ設定のしきい値に基づき、白黒の入力画像または ROI を生成します。 | FindCircleDefects 関数 GreyscaleDistance 関数 ImageMath 関数 PointFilter 関数

画像処理を使用する理由

画像の品質が低いために In-Sight ジョブが失敗する場合、必要なデータを容易に抽出できるように画像を強調するには、画像フィルタ関数が有効です。例えば、次のような場合があります。

  • ブロブ解析用にノイズを除去したり、対象物の連結性を変更したりする場合。
  • ヒストグラム解析用の統計計算のために、空間的な特徴をグレースケール値に変換する場合。
  • 2D コードの読み取り用に、背景に対する 2D シンボルのコントラストを強める場合。
  • PatFind テンプレートサーチ用に速度と信頼性を改善するために、モデルと画像ピクセルデータの両方で、曖昧または不要な空間周波数特性を最小化する場合。

画像処理の実行方法

In-Sight Explorer では、画像処理手順は、次の 3 つに分けることができます。

  • 手順 1: 取り込んだ画像を分析し、画像処理が有効かどうか、どのような種類の変更が必要かを判定します。
  • 手順 2: 適切な画像フィルタ関数を In-Sight スプレッドシートに挿入し、複数のパラメータを試して、画像を強調するための最適な設定値を判定します。
  • 手順 3: 必要に応じて、別の画像フィルタ関数を In-Sight スプレッドシートに挿入し、前の関数の出力画像を参照させ、複数のパラメータ設定を試します。必要に応じて繰り返します。

このように、取り込んだ画像の品質を改善するには、複数の画像フィルタ関数を使用し、後続の画像フィルタ関数の出力にそれぞれ参照されるようにする必要が生じることがあります。ただし、画像フィルタツールを使用して達成できる改善の程度は、取り込んだ画像の品質によって決まります。つまり、照明や光学系などの外部要因によって多くが決まります。画像フィルタツールでは、粗悪な写真を良質な写真にすることはできません。


ColorToGreyscaleFilter 関数

ColorToGreyscaleFilter 関数 |
ビジョンツール → 画像フィルタ | In-Sight 関数リファレンス

ColorToGreyscaleFilter 関数は、カラー In-Sight センサおよびカラー対応のエミュレータでのみ使用可能で、カラーの画像または対象領域 (ROI) 内の各ピクセルをグレースケール値に変換します。変換は、「純色の」赤、緑、青 (RGB)、色相、彩度、明度 (HSI)、輝度、もしくは RGB 成分の加重平均の補間いずれか 1 つのカラーパラメータから成る単純なフィルタに基づいて行われます。

注意: ColorToGreyscaleFilter 関数は、GreyscaleDistance関数に似ていますが、より単純に動作します。つまり、各出力ピクセルが、選択した変換フィルタの関数となり、ピクセルの 1 つの色成分だけがフォーカスされます (例えば、GreyscaleDistance のように赤、緑、および青の値の組み合わせではなく、赤の値だけをフォーカスします)。用途に適したカラー変換関数を判定するために、両方を試してみる必要がある場合があります。

ColorToGreyscaleFilter 関数の入力パラメータ

ColorToGreyscaleFilter 関数の結果出力

ColorToGreyscaleFilter 関数の例

ColorToGreyscaleFilter 関数 (

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

変換 ,

表示

)

ColorToGreyscaleFilter 関数の入力パラメータ

画像

このパラメータは有効なカラー [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

注意: 有効なカラー [image] データ構造体を返す関数は、AcquireImage 関数だけです。

フィクスチャ

フィクスチャ入力の対象領域またはビジョンツール関数の画像座標系の出力を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、（0, 0, 0）になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

対象領域 (ROI) とも呼ばれ、画像処理が行われる画像の領域を指定し、移動と回転が可能な矩形画像領域を形成します。このパラメータを選択して、[領域の最大化] ボタンをクリックすると、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセットを指定します。
Y | フィクスチャ座標での原点の Y オフセットを指定します。
高さ | 領域の X 軸に沿った寸法を指定します。
幅 | 領域の Y 軸に沿った寸法を指定します。
角度 | フィクスチャ座標での角度を指定します。

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

変換

変換フィルタのタイプを指定します。

注意:

  • 各カラーピクセルは、色成分に分解されます。
  • ほかの In-Sight ツールが使用するデフォルトのカラー変換は、ColorToGreyscaleFilter の補間変換フィルタと同じです。

0 = 輝度（デフォルト） | 色の輝度の変換フィルタを指定します。結果は、輝度の出力画像です。入力画像でピクセルから放射される光が多いほど、出力画像での表示が明るくなります。
1 = 赤 (R) | 色の赤成分の変換フィルタを指定します。結果は、ピクセルの赤以外の成分がフィルタで除去されます。入力画像のピクセルの赤の値が大きいほど、出力画像での表示が明るくなります。
2 = 緑 (G) | 色の緑成分の変換フィルタを指定します。結果は、ピクセルの緑以外の成分がフィルタで除去されます。入力画像のピクセルの緑の値が大きいほど、出力画像での表示が明るくなります。
3 = 青 (B) | 色の青成分の変換フィルタを指定します。結果は、ピクセルの青以外の成分がフィルタで除去されます。入力画像のピクセルの青の値が大きいほど、出力画像での表示が明るくなります。
4 = 色相 (Hue) | 色の色相成分の変換フィルタを指定します。結果は、ピクセルの色相以外の成分がフィルタで除去されます。入力画像のピクセルの色相値が大きいほど、出力画像での表示が明るくなります (例えば、色相値 0 の赤は、暗く表示されます)。
5 = 彩度 (Saturation) | 色の彩度成分の変換フィルタを指定します。結果は、ピクセルの彩度以外の成分がフィルタで除去されます。入力画像のピクセルの彩度値が大きいほど、出力画像での表示が明るくなります (例えば、彩度値 0 の白は、暗く表示されます)。
6 = 明度 (Intensity) | 色の輝度成分の変換フィルタを指定します。結果は、ピクセルの輝度以外の成分がフィルタで除去され、ピクセルの RGB 成分の平均輝度が判定されます。入力画像のピクセルの輝度値が大きいほど、出力画像での表示が明るくなります (例えば、輝度値 255 の白は、明るく表示されます)。
7 = 補間輝度 | 色の補間の変換フィルタを指定します。輝度フィルタと同様に、結果は、ピクセルの輝度以外の成分がフィルタで除去されます。入力画像のピクセルの輝度値が大きいほど、出力画像での表示が明るくなります (例えば、輝度値 255 の白は、明るく表示されます)。ただし、補間フィルタは RGB 成分の加重平均輝度を判定する、非標準の変換フィルタです。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示（デフォルト） | ColorToGrayscaleFilter 関数を含んでいるセルがスプレッドシート上でハイライトされている場合を除き、入力画像領域は表示されません。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力画像領域が常に表示されます。

ColorToGreyscaleFilter 関数の結果出力

戻り値

処理された画像を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

ColorToGreyscaleFilter 関数の例

この例では、入力画像内の対象物は、GreyscaleDistance 関数の例でも使用されている黄色の Cognex 製センサです。画像をランダムサンプリング ([表示] メニューの [オーバレイ] を選択してオーバレイ表示をオフに切り替え、カーソルをセンサ上に移動して、ウィンドウ左下のステータスバーに表示される RGB 情報を確認) したところ、センサの RGB 値として、205-185-124、193-177-110、175-154-39、133-104-2 および 115-91-6 が得られました。

In-Sight スプレッドシートに関数を挿入した後、プロパティシートで「Region」という単語をダブルクリックして ROI を定義します。画像の上に赤い ROI ボックスが現れます。カーソルを使用してボックスを移動しサイズを調整したら、In-Sight ツールバーの緑色の「チェックマーク」アイコンをクリックして (または、キーボードの <Enter> キーを押して) 選択を確定し、プロパティシートに戻ります。

変換フィルタを選択し、ほかのパラメータについてはデフォルト設定を受け入れ、プロパティシートの [OK] をクリックして、この例の設定を完了し、関数を入力画像に適用します。

次の画像はそれぞれ、赤、緑、および青のフィルタが適用された 3 つの出力画像です。予想どおり、センサの黄色は、赤のフィルタが適用された画像で最も明るく表示されています。これは、赤が黄色センサの中で最も強い色成分だからです (この画像の赤の最大値は 210、平均値は 116、中央値は 127 です)。入力ピクセル値がフィルタの値に近いほど、出力ピクセルは明るくなります。

緑のフィルタが適用された画像では、センサの黄色は多少暗くなります。これは、赤に比べ緑の含有量が少ないからです (最大値 199、平均値 112、中央値 125)。

青のフィルタが適用された画像で、センサの黄色は最も暗くなります。これは、赤に比べ青の含有量がわずかだからです (最大値 197、平均値 101、中央値 121)。

関連項目

画像ツールについて

画像データアクセス関数

プロパティシートの使用方法


CompareImage 関数

CompareImage 関数 |
ビジョンツール → 画像フィルタ | In-Sight 関数リファレンス

CompareImage 関数は、入力画像とテンプレート画像を比較し、各ピクセルが正規化された差を表すグレースケール出力画像を生成します。

CompareImage 関数は、プロパティシートの [登録を強制] チェックボックスがオンの場合に、現在の画像からテンプレートを抽出するように設計されています。このチェックボックスをオフにすると、CompareImage はテンプレートのピクセルを入力画像にマッピングして入力画像とテンプレートを比較し、グレースケール出力画像を生成できます。特定の許容値の範囲内でテンプレート画像と一致しないピクセルは、明ピクセルまたは白ピクセルとして表示されます。

CompareImage 関数の入力パラメータ

CompareImage 関数の結果出力

CompareImage 関数の例

CompareImage 関数 (

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

登録を強制 ,

エッジ範囲 ,

補間方法 ,

表示

)

CompareImage 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

フィクスチャ入力、またはビジョン ツール関数の画像座標系の出力に相対する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、（0, 0, 0）になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

対象領域 (ROI) とも呼ばれ、画像処理が行われる画像の領域を指定し、移動と回転が可能な矩形画像領域を形成します。このパラメータを選択して、[領域の最大化] ボタンをクリックすると、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセットを指定します。
Y | フィクスチャ座標での原点の Y オフセットを指定します。
高さ | 領域の X 軸に沿った寸法を指定します。
幅 | 領域の Y 軸に沿った寸法を指定します。
角度 | フィクスチャ座標での角度を指定します。

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

登録を強制

どの時点で現在の画像からテンプレートを抽出するかを指定します。指定できるのは、ROI の寸法が変更されたとき、または [登録を強制] パラメータがオンになったときのいずれかです。

0 =オフ（デフォルト） | ROI の寸法が変更されたときにだけ、現在の画像からテンプレートを抽出します。ユーザがテンプレート画像を選択 (または「登録」) した後に選択されると、「登録」パラメータが無効になり、テンプレートが上書きできなくなります。
1 =オン | 現在の画像からテンプレートを抽出します。これは、ユーザがまだテンプレート画像を選択 (または、「登録」) 中である場合に選択します。

エッジ範囲

画像の比較時に許容されるエッジ周辺のピクセル数 (0 ～ 24、デフォルト = 3) を指定します。数値が大きいほど、テンプレートと入力画像とのエッジが一致する厳密度は低くなります (つまり、一致が不完全なエッジが、出力画像に差分として示される可能性が低くなります)。

補間方法

テンプレートを入力画像にマッピングして差分の出力画像を生成するときに実行する、ピクセル比較のタイプを指定します。

0 = 最近傍補間（デフォルト） | テンプレートの各ピクセルは、入力画像内の最近傍ピクセルと比較され、正規化されたグレースケールの差分がピクセルごとに計算されます。これは高速ですが、精度の低い方法です。
1 = バイリニア（Bi-Linear）補間 | テンプレートの各ピクセルは加重平均 (入力画像の 4 つの最近傍ピクセルのグレースケール値を表す) と比較され、正規化されたグレースケールの差がピクセルごとに計算されます。これは、比較的正確な方法ですが、速度は遅くなります。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示（デフォルト） | CompareImage 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、使用可能なグラフィックス項目は表示されません。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力画像領域と関連付けられているグラフィックス項目が常に表示されます。
3 = 全て表示:入力グラフィックスとテンプレート画像 | 入力画像領域と関連付けられているグラフィックス項目が常に表示されますが、CompareImage プロパティシート上では、テンプレート画像も表示されます。

CompareImage 関数の結果出力

戻り値

処理された画像を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

CompareImage 関数の例

この例の目的は、CompareImage 関数を使用して、「完成した」ガスケットのテンプレート画像と生産ライン上のガスケットの入力画像を比較することです。

まず、CompareImage 関数をスプレッドシートに挿入した後、プロパティシートで「Region」という単語をダブルクリックして ROI を定義します。画像の上に赤い ROI ボックスが現れます。カーソルを使用してボックスを移動しサイズを調整したら、[ジョブの編集] ツールバーの [OK] [image] ボタンをクリックして (または Enter キーを押して) 選択を確定し、プロパティシートに戻ります。

次に、ツールを別のデータ構造体にフィクスチャします。フィクスチャの実行時に、対象物のすべてのインスタンスに現れる際立った特徴を特定し、それをそれ以降に使用するビジョンツールの基準点として指定します。これにより、対象物が生産ラインで多少回転またはずれた場合でも、正確に比較または検査することができます。

関数をフィクスチャするには、プロパティシートで「Fixture」という単語をクリックし、プロパティシートのツールバーの [絶対参照] [image] ボタンまたは [相対参照] [image] ボタンのいずれかをクリックします。

プロパティシートが非表示になり、In-Sight スプレッドシートが表示されます。カーソルを移動して、スプレッドシートの別の構造体 (FindPatternsなど) の [行]、[列]、および [角度] のセルをフィクスチャの参照として選択し、[ジョブの編集] ツールバーの [OK] [image] ボタンをクリックするか、または Enter キーを押して選択を確定し、プロパティシートに戻ります。

次に、画像取り込みが手動でトリガされた時にテンプレート画像 (下図) が自動的に抽出されるように、プロパティシートの [登録を強制] チェックボックスがオンであることを確認します (ただし、[登録を強制] チェックボックスを選択しただけでも画像取り込みがトリガされるため、現在の画像が許容可能な場合は、画像の設定と画像取り込みの手動トリガは省略できます)。テンプレートが選択されたら、テンプレートの上書きを防ぐため、チェックボックスをオフにします。

ほかのパラメータについてはデフォルト設定を受け入れ、プロパティシートの [OK] をクリックして、この例の設定を完了し、関数を入力画像に適用します。

実行時、ツールはテンプレート画像と入力画像を比較します。不正な入力画像には、下図のような白い跡がついたガスケットの画像が含まれることがあります。

2 つの画像の差分は、グレースケール出力画像では明ピクセルとして表示されます (下図)。

別のツール (ExtractBlobs など。下記参照) で出力画像を参照して、ガスケットが検査に合格したか失敗したかを判定することができます。

関連項目

画像ツールについて

画像データアクセス関数

プロパティシートの使用方法


ComputeImageSharpness 関数

ComputeImageSharpness 関数 |
ビジョンツール → 画像フィルタ | In-Sight 関数リファレンス

ComputeImageSharpness 関数は、In-Sight センサのレンズを再調整するための反復プロセスの一部として、入力画像の相対的なフォーカスの基準を計算します。

この基準は画像のシャープネス得点と呼ばれ、「シーン」 (つまり、その画像でキャプチャされた対象物とその背景) 内で認識可能な最小の特徴が画像または対象領域 (ROI) に含まれる度合を示します。

動作は単純で、画像が取り込まれると、ComputeImageSharpness ツールが画像のシャープネス得点を取得します。その後、レンズが再調整され、シーン内ではそれ以外は一切変更されず、新しい画像が取り込まれ、得点が計算されます。得点が高いほど、フォーカスは鮮明です。このプロセスは、ユーザがフォーカスを許容できるようになるまで繰り返されます。

注意: 単一の画像シャープネス得点からは、画像の絶対的なシャープネスに関する有用な情報は得られません。まったく同じシーンから取得した別の画像のシャープネススコアと比較する必要があります。シーンは同一である必要があります。

ComputeImageSharpness 関数の入力パラメータ

ComputeImageSharpness 関数の結果出力

ComputeImageSharpness 関数の例

ComputeImageSharpness 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

フィルタ種類,

スムーズネス,

表示

)

ComputeImageSharpness 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

フィクスチャ入力の対象領域またはビジョンツール関数の画像座標系の出力を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、（0, 0, 0）になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

対象領域 (ROI) とも呼ばれ、画像処理が行われる画像の領域を指定し、移動と回転が可能な矩形画像領域を形成します。このパラメータを選択して、[領域の最大化] ボタンをクリックすると、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセットを指定します。
Y | フィクスチャ座標での原点の Y オフセットを指定します。
高さ | 領域の X 軸に沿った寸法を指定します。
幅 | 領域の Y 軸に沿った寸法を指定します。
角度 | フィクスチャ座標での角度を指定します。

フィルタ種類

勾配エネルギー:画像または ROI の局所的なグレースケール勾配のエネルギーに基づいて画像のシャープネスを計算します。局所的なグレースケール勾配は、所定の領域のグレースケール値の変化率を表しています。グレースケールの変化率が高いとグレースケール勾配が大きくなり、画像のシャープネス得点が高くなります。

スムーズネス

ROI 内に存在することがある高周波ノイズを除去できるようにする画像平滑化処理を指定します。次の 3 つの設定が可能です。

0 = なし（デフォルト） | 平滑化は実行しません。処理性能が最も高速になります。
1 = 平滑化レベル 1 | ROI に適用される平滑化のレベルです。ROI 内の非常に高い周波数のノイズを除去します。
2 = 平滑化レベル 2 | ROI に適用されるさらにレベルの高い平滑化です。ROI 内の高周波ノイズおよび非常に高い周波数のノイズを除去します。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示（デフォルト） | ComputeImageSharpness 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、使用可能なグラフィックス項目は表示されません。
1 = 入力のグラフィックスのみ | 入力画像領域と関連付けられているグラフィックス項目が常に表示されます。

ComputeImageSharpness 関数の結果出力

戻り値

画像のシャープネス得点を、浮動小数点値として返します。入力パラメータが無効であれば #ERR を返します。

ComputeImageSharpness 関数の例

この例では、入力画像の対象物は Cognex 製センサです。

まず、ユーザはライブ画像モードでレンズのフォーカスを調整します。このモードに切り替えるには、[ジョブの表示] ツールバーで [ライブ画像] [image] ボタンをクリックします。このモードを終了するには、キーボードで任意のキーを押すか、または [ライブ画像] ボタンを再びクリックします。

ライブ画像モードを終了した後、In-Sight スプレッドシートに関数を挿入し、プロパティシートで「Region」という単語をダブルクリックして ROI を定義します。画像の上に赤い ROI ボックスが現れます。カーソルを使用してボックスを移動しサイズを調整したら、[ジョブの編集] ツールバーの [OK] [image] ボタンをクリックして選択を確定し、プロパティシートに戻ります (<Enter> キーを押すか、または ROI 内をダブルクリックしても、選択を確定できます)。

ほかのパラメータについてはデフォルト設定を受け入れ、プロパティシートの [OK] をクリックして、この例の設定を完了し、関数を入力画像に適用します。

次の 2 つの画像は、Cognex 製センサの不鮮明な画像と、画像のシャープネス得点が 3.161 であることを示すオーバレイ表示です。

ライブ画像モードでレンズのフォーカスを調整すると、画像は多少鮮明になります。ライブ画像モードを終了すると、画像のシャープネス得点が 10.952 に変わっていることがわかります。

画像はまだ不鮮明なため、対象物のフォーカスが鮮明になるまで、ライブ画像モードでのフォーカスの調整と、画像のシャープネス得点の比較を続ける必要があります。それでもフォーカスが不適当なままの場合は、レンズを交換するか、レンズと対象物間の距離を変更するか、またはほかのハードウェアパラメータを変更する必要がある場合があります。

関連項目

画像ツールについて

画像データアクセス関数

プロパティシートの使用方法


FindCircleDefects 関数

FindCircleDefects 関数 |
ビジョンツール → 画像 | In-Sight 関数リファレンス

FindCircleDefects 関数は、ユーザが設定したしきい値に基づいて、入力画像のドーナツ状 (リング状) 領域内の各ピクセルを黒または白に変換します。白は、真円でない特徴または放射が均一でない特徴を示します。

ユーザは、画像上にドーナツ領域を定義して配置し、関数が円方向と放射方向のどちらの方向にピクセル勾配を計算するかを選択します。しきい値以上になる値は、白黒の出力画像内で白ピクセルとして表示されます。

  • FindCircleDefects 関数の入力パラメータ
  • FindCircleDefects 関数の結果出力
  • FindCircleDefects 関数の例
  • 関連項目

FindCircleDefects 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

ドーナツ領域.X,

ドーナツ領域.Y,

ドーナツ領域.内側半径,

ドーナツ領域.外側半径,

欠陥タイプ,

ずれ,

アクセプトしきい値,

表示

)

FindCircleDefects 関数関数の入力パラメータ

画像

この引数は有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

ドーナツ領域

移動および回転可能なドーナツ状画像領域を指定します。

X | フィクスチャ座標での X オフセット
Y | フィクスチャ座標での Y オフセット
内側の半径 | 内側の半径
外側の半径 | 外側の半径

注意:　フィクスチャおよび ドーナツ領域 パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

欠陥タイプ

関数が検出する欠陥のタイプとして、円または放射を指定します。周囲のピクセルとグレースケール値が異なるピクセルは、欠陥である可能性があります。

0 = 環状でない特徴 (デフォルト) | 円形からの偏差を検出するために、ドーナツ領域内のピクセル勾配を円方向に計算するように指定します。
1 = 放射状でない特徴 | 放射状の特徴から偏差を検出するために、ドーナツ領域内のピクセル勾配を放射方向に計算するように指定します。

ずれ

欠陥検出の許容度を指定します。

0 = OFF (デフォルト) | 対象物が円形で、ドーナツ領域の中央に位置していることを指定します。許容度の低い設定です。
1 = ON | 対象物が楕円形でも、ドーナツ領域の中央からずれていてもかまわないことを指定します。許容度の高い設定です。

アクセプトしきい値

欠陥のしきい値をグレースケール値で指定します。(0 ～ 255、デフォルト = 30)

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示 (デフォルト) | FindCircleDefects 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、使用可能なグラフィックス項目は表示されません。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力画像領域と関連付けられているグラフィックス項目が常に表示されます。

FindCircleDefects 関数関数の結果出力

戻り値 | 白黒の (2 値化された) 画像を格納している [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | FindCircleDefects 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

FindCircleDefects 関数 データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

暗ピクセル | GetDarkPixelCount(画像) | 欠陥しきい値を下回るピクセルの数を返します。ピクセルは黒で表示されます。
明ピクセル | GetBrightPixelCount(画像) | 欠陥しきい値以上のピクセルの数を返します。ピクセルは白で表示されます。

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

面積

GetArea(画像)

領域の面積を返します。

FindCircleDefects 関数の例

この例では、FindCircleDefect の機能を示すために、下に示す人工の円形対象物 (左側) と放射状対象物 (右側) を使用しています。どちらの対象物も色は中間のグレーで、内側および外側に太く暗い境界線があるのが特徴です。

In-Sight スプレッドシートに関数を挿入した後、プロパティシートで「Annulus」という単語をダブルクリックしてドーナツ領域を定義します。画像の上に赤いドーナツ領域が現れます。カーソルを使用してドーナツ領域を移動しサイズを調整したら、[ジョブの編集] ツールバーの [OK]　 [image] ボタンをクリックして選択を確定し、プロパティシートに戻ります (Enter キーを押すか、またはドーナツ領域内をダブルクリックしても、選択を確定できます)。下の図は、ドーナツ領域が表示された対象物の画像です。

欠陥タイプ (真円でないか、放射状が均一でない) を選択し、偏差の許容を「オン」または「オフ」にして、ほかのパラメータについてはデフォルト設定を受け入れます。プロパティシートの [OK] をクリックしてこの例の設定を完了し、関数を入力画像に適用します。

下の図は、円形対象物の白黒出力画像です。関数は真円でない欠陥を検出するよう設定され、[アクセプトしきい値] パラメータはデフォルト値の 30、偏差の許容は「オフ」(左) と「オン」 (右) です。円形対象物の外側のエッジは、滑らかな円のカーブの一部に見えているにもかかわらず、欠陥の可能性ありとしてマーキングされているため、「オフ」(左) に設定した方が厳密であることがわかります。

下の図は、同じ円形対象物の白黒出力画像ですが、関数は放射状が均一でない欠陥を検出するように設定されています。関数は、外側境界線の内側エッジと外側エッジを放射状が均一でない欠陥の可能性ありとしてマーキングしています。

下の図は、放射状対象物の白黒出力画像です。関数は放射状が均一でない欠陥を検出するように設定され、[アクセプトしきい値] パラメータは 70、偏差の許容は「オフ」(左) と「オン」(右) です。ここでも、放射状の特徴の外側エッジが欠陥の可能性ありとしてマーキングされているため、「オフ」(左) に設定した方がより厳密であることがわかります。

下の図は、同じ放射状対象物の白黒出力画像ですが、ツールは真円でない欠陥を検出するように設定されています。関数は、ドーナツ領域内のすべての放射特徴を真円でない欠陥の可能性ありとしてマーキングしています。

実世界の用途では、ユーザは、結果に関する判定を下すために、この後出力画像を別のツールで参照することになります。

関連項目

画像ツールについて

画像データアクセス関数

プロパティシートの使用方法


GreyscaleDistance 関数

GreyscaleDistance 関数 |
ビジョンツール → 画像フィルタ | In-Sight 関数リファレンス

GreyscaleDistance 関数は、カラー In-Sight センサおよびカラー対応のエミュレータでのみ使用可能で、ユーザが設定したさまざまなカラーパラメータに基づいて、カラー画像または対象領域 (ROI) 内の各ピクセルをグレースケール値または黒および白に変換します。カラーパラメータには、カラー表現 (赤、緑、および青、または色相、彩度、および明度) とユーザが入力した RGB または HSI カラーとしきい値の値が含まれます。グレースケール画像は、各ピクセルの色のユークリッド距離から生成されます。

Closed ユークリッド距離の詳細について

各ピクセルは、RGB または HSI の 3 つの個別の色成分から構成されます。GreyscaleDistance 関数は、各ピクセルの全体的な RGB 値または HSI 値を計算し、ユークリッド距離を使用して、最も一致するグレースケールを検出します。ユークリッド距離は、定規で測定可能な 2 点間の「通常の」距離として定義され、大半のが人々が「距離」と言うときに意味するものを指しています。ユークリッド距離は、ピクセルの色成分の距離の差を二乗したものの合計の平方根を求めることによって得られます。これを数式で表すと、次のようになります。

ここで、

x0 = プロパティシートの [カラー] セクションでユーザが指定した赤/色相の値

x1 = 入力ピクセルの実際の赤/色相の値

y0 = プロパティシートの [カラー] セクションでユーザが指定した緑/彩度の値

y1 = 入力ピクセルの実際の緑/彩度の値

z0 = プロパティシートの [カラー] セクションでユーザが指定した青/明度の値

z1= 入力ピクセルの実際の青/明度の値

D 値の範囲は 0 ～ 442 で、0 は完全一致を、442 は不一致を示しています。各 D 値は [image] 3 (成分の数の平方根) で除算され、0 が黒 (不一致)、255 が白 (完全一致) のグレースケールスペクトルに反転されます。

注意: GreyscaleDistance 関数は、ColorToGreyscaleFilter 関数に似ていますが、より多くの柔軟性と制御性を提供します。その結果の 1 つとして、「不純」色 (つまり、グレーや白を含む色) は、「純」色のみを対象としたフィルタを使用する ColorToGreyscaleFilter より、GreyscaleDistance の方がより的確に変換できます。用途に適したカラー変換関数を判定するために、両方を試してみる必要がある場合があります。

GreyscaleDistance 関数の入力パラメータ

GreyscaleDistance 関数の結果出力

GreyscaleDistance 関数の例

GreyscaleDistance 関数 (

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

カラー表現,

カラー.赤/色相 ,

カラー.緑/彩度 ,

カラー.青/明度 ,

しきい値.赤/色相 ,

しきい値.緑/彩度 ,

しきい値.青/明度 ,

表示

)

GreyscaleDistance 関数の入力パラメータ

画像

このパラメータは有効なカラー [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

注意: 有効なカラー [image] データ構造体を返す関数は、AcquireImage 関数だけです。

フィクスチャ

フィクスチャ入力の対象領域またはビジョンツール関数の画像座標系の出力を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、（0, 0, 0）になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

対象領域 (ROI) とも呼ばれ、画像処理が行われる画像の領域を指定し、移動と回転が可能な矩形画像領域を形成します。このパラメータを選択して、[領域の最大化] ボタンをクリックすると、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセットを指定します。
Y | フィクスチャ座標での原点の Y オフセットを指定します。
高さ | 領域の X 軸に沿った寸法を指定します。
幅 | 領域の Y 軸に沿った寸法を指定します。
角度 | フィクスチャ座標での角度を指定します。

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

カラー表現

カラー変換に使用するカラー表現方法を指定します。

0 = RGB（デフォルト） | 赤、緑、青
1 = HSI | 色相、彩度、明度

カラー

選択したカラー表現に応じて、カラー変換に使用する色を指定します。3 つのカラー値すべて (およびしきい値レベル) が、出力画像のピクセルの外観に影響します。例えば、3 つすべてのしきい値が -1 に設定された RGB 255-0-0 では、「純粋」な赤のピクセルがすべて出力画像で白で表示され、ほかの色はすべて、255-0-0 からのユークリッド距離に応じて、より暗いグレースケール値で表示されます (例えば、白はより暗く表示されます)。

赤/色相

0 ～ 255 (デフォルト = 0)

色の赤または色相成分を指定します。

緑/彩度

0 ～ 255 (デフォルト = 0)

色の緑または彩度成分を指定します。

青/明度

0 ～ 255 (デフォルト = 0)

色の青または明度成分を指定します。

しきい値

選択したカラー表現に応じて、各色座標の白黒 (「2 値化」) しきい値を指定します。

注意: 3 つのしきい値すべてのデフォルトは -1 です。このデフォルト設定では、ユークリッド距離に基づいてグレースケール出力画像が生成されます。

いずれかの [しきい値] パラメータが -1 より大きい整数に設定されると、出力は、指定されたしきい値に基づいた白黒画像となります。

[しきい値] パラメータは、正負 (±) の値を表します。しきい値は、上記の [カラー] セクションで指定された値から減算および加算され、RGB 成分または HSI 成分の最小しきい値と最大しきい値が生成されます。例えば、ユーザが RGB または HSI の値を 200-100-50、しきい値を 20-10-5 に指定した場合、最大しきい値は 220-110-55、最小しきい値は 180-90-45 になります。しきい値に等しいか、しきい値の範囲内の RGB または HSI 値を持つピクセルは、白で表示されます。しきい値の範囲外のピクセルは黒で表示されます。

赤/色相

-1 = 自動（デフォルト） | ユークリッド距離に基づく自動変換ルーチンを有効にします。
0~255 | 色の赤または色相成分の 2 値化しきい値を直接指定します。

緑/彩度

-1 = 自動 (デフォルト) | ユークリッド距離に基づく自動変換ルーチンを有効にします。
0~255 | 色の緑または彩度成分の 2 値化しきい値を直接指定します。

青/明度

-1 = 自動 (デフォルト) | ユークリッド距離に基づく自動変換ルーチンを有効にします。
0~255 | 色の青または明度成分の 2 値化しきい値を直接指定します。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示 | GreyscaleDistance 関数を含んでいるセルがスプレッドシート上でハイライトされている場合を除き、入力画像領域は表示されません。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力画像領域が常に表示されます。

GreyscaleDistance 関数の結果出力

戻り値 | 処理された画像を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | GreyscaleDistance 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

GreyscaleDistance 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

暗ピクセル | GetDarkPixelCount(画像) | 2 値化しきい値レベルを下回るピクセルの数
明ピクセル | GetBrightPixelCount(画像) | 2 値化しきい値レベル以上のピクセルの数

注意: 3 つのしきい値がすべて -1 (デフォルト) に設定されている場合、上記の 2 つの関数は #ERR を返します。

GreyscaleDistance 関数の例

この例では、入力画像の対象物は、ColorToGreyscaleFilter 関数の例でも使用されている黄色の Cognex 製センサです。画像をランダムサンプリング ([表示] メニューの [オーバレイ] をクリックしてオーバレイ表示をオフに切り替え、カーソルをセンサ上に移動して、ウィンドウ左下のステータスバーに表示される RGB 情報を確認) したところ、センサの RGB 値として、205-185-124、193-177-110、175-154-39、133-104-2 および 115-91-6 が得られました。

この例では、グレースケール出力画像を生成する GreyscaleDistance 関数の単純な設定を使用しています。

In-Sight スプレッドシートに関数を挿入した後、プロパティシートで「Region」という単語をダブルクリックして ROI を定義します。画像の上に赤い ROI ボックスが現れます。カーソルを使用してボックスを移動しサイズを調整したら、[ジョブの編集] ツールバーの [OK] [image] ボタンをクリックして選択を確定し、プロパティシートに戻ります (Enter キーを押すか、または ROI 内をダブルクリックしても、選択を確定できます)。

カラー表現に RGB を選択し、プロパティシートの [カラー] セクションの [RGB] フィールドに 205-185-124 を入力します。そのほかのパラメータについてはデフォルト設定を受け入れ、プロパティシートの [OK] をクリックしてこの例の設定を完了し、関数を入力画像に適用します。

下の図は、GreyscaleDistance 関数によって生成された出力画像です。RGB 値の 205-185-124 がセンサの一部の領域に完全一致しているため、センサは非常に明るいピクセルで表示されています。

上の画像と、ColorToGreyscaleFilter で赤のフィルタを使用して生成された下の画像を比べてください。下の画像でもセンサは明るく表示されていますが、上の画像のような強調されたコントラストはありません。

関連項目

画像ツールについて

画像データアクセス関数

プロパティシートの使用方法


ImageMath 関数

ImageMath 関数 |
ビジョンツール → 画像 | In-Sight 関数リファレンス

ImageMath は多目的の関数で、各ピクセルが、2 つの入力画像間の算術演算 (例えば、加算、減算、平均) の結果となるグレースケールまたは白黒の出力画像を生成します。

画像のサイズが異なる場合、この関数は、画像のオーバーラップしている領域を処理する前に、各画像の左上隅が一致するように、一方の画像を回転します。この関数は、1 ピクセルずつ、2 つの画像間で算術演算を実行します。グレースケール出力画像の場合、必要に応じて最終ステップとして、この関数ではディバイザとグレースケールオフセットを適用して、それぞれ明度/コントラストの変更、ピクセル値のシフトを実行できます。その後、出力画像は、選択した [結果配置] パラメータに基づいて配置されます。

ImageMath 関数の入力パラメータ

ImageMath 関数の結果出力

ImageMath 関数の例

ImageMath (

画像 1 ,

画像 2,

フィルタ種類 ,

結果配置,

詳細オプション.ディバイザ ,

詳細オプション.グレースケールオフセット,

表示

)

ImageMath 関数の入力パラメータ

画像 1

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

画像 2

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィルタ種類

グレースケールまたは白黒の出力画像を生成する画像処理操作を指定します。

0 = ディファレンス（デフォルト） | 「画像 1 - 画像 2」の絶対値。このパラメータは、画像 1 と画像 2 のグレースケール値の差を計算します。画像の順序は無関係です。
1 = 減算 | 画像 1 - 画像 2。このパラメータは、画像 1 のグレースケール値から画像 2 のグレースケール値を減算します。画像の順序は関係しています。
2 = 加算 | 画像 1＋画像 2。このパラメータは、画像 1 と画像 2 のグレースケール値を加算します。
3 = 最大 | 画像 1 と画像 2 の最大値の比較。このパラメータは、画像 1 と画像 2 を比較し、グレースケール値が最大のピクセルを選択します。
4 = 最小 | 画像 1 と画像 2 の最小値の比較。このパラメータは、画像 1 と画像 2 を比較し、グレースケール値が最小のピクセルを選択します。
5 = 平均 | 画像 1 と画像 2 の平均値。このパラメータは、画像 1 と画像 2 のグレースケール値を加算し、2 で除算します。
6 = AND | 画像 1 と画像 2 を比較し、論理「AND」演算に基づいて白黒画像を生成します。出力ピクセルは、両方の入力ピクセルが 0 より大きい場合は白、どちらかのピクセル値が 0 に等しい場合は黒になります。
7 = OR | 画像 1 と画像 2 を比較し、論理「OR」演算に基づいて白黒画像を生成します。出力ピクセルは、どちらかの入力ピクセルが 0 より大きい場合は白、どちらのピクセル値も 0 より大きくない場合は黒になります。
8 = XOR | 画像 1 と画像 2 を比較し、論理「排他的OR」演算に基づいて白黒画像を生成します。出力ピクセルは、一方の入力ピクセルが 0 より大きく、他方が 0 に等しい場合は白、両方のピクセル値が 0 より大きいか、両方が 0 に等しい場合は黒になります。

結果配置

画像処理操作の実行後に、出力画像を配置する位置を指定します。

0 = 画像 1 原点（デフォルト） | 出力画像の原点位置として画像 1 を指定します。したがって、結果として出力される画像は画像1 にオーバレイします。
1 = 画像 2 原点 | 出力画像の原点位置として画像 2 を指定します。したがって、結果として出力される画像は画像2 にオーバレイします。
2 = センサの原点 | 出力画像の原点として、AcquireImage の行 0、列 0 を指定します。したがって、結果として出力される画像は、画像の左上隅に配置されます。

詳細オプション

グレースケール出力画像に適用できる追加の数学的変更を指定します。演算の順序は、(1) 除算、(2) オフセットです。

ディバイザ | 各出力ピクセルのグレースケール値に分割する値を指定します (デフォルト = 1)。これは、ピクセル値の明度を変更するため、255 を超えるピクセル値を「スケールダウン」するために使用できます。
グレースケールオフセット | 各出力ピクセルのグレースケール値に適用するオフセット値を指定します (デフォルト = 0)。負のオフセットは出力の明度を下げ、正のオフセットは出力の明度を上げます。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示（デフォルト） | ImageMath 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、使用可能なグラフィックス項目が表示されません。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。

ImageMath 関数の結果出力

戻り値

処理された画像を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

ImageMath 関数の例

この例の目的は、ガスケット内の穴のみの出力ファイルを生成することです。後から、穴に関する判定を行うことができるように、穴は別のツールによって参照されます。

画像 1 の場合、ユーザはガスケット全体の画像を取り込みます (下図)。

画像 2 として画像 1 をコピーしますが、すべての白い穴を埋めます。これを生成するには、NeighborFilter関数をスプレッドシートに挿入して、プロパティシートで「Region」という単語を選択し、プロパティシートのツールバーの [領域の最大化] [image] ボタンをクリックして、ROI を最大化します。ROI を最大化すると、画像 1 と画像 2 の ROI が確実に同じサイズになります。

NeighborFilter プロパティシートで [フィルタの種類] プルダウンメニューから [白穴埋め] を選択し、そのほかのパラメータについてはデフォルト設定を受け入れ、[OK] をクリックして、この例の設定を完了し、関数を入力画像に適用します (結果は下図を参照)。

その後、ImageMath 関数をスプレッドシートに挿入し、プロパティシートで A0 を画像 1 として受け入れます。NeighborFilter 出力画像が画像 2 のソースとして参照される必要があります。プロパティシートで「Image 2」という単語をダブルクリックすると、表示が消え、In-Sight スプレッドシートが現れます。NeighborFilter によって返された [image] データ構造体をクリックし、[ジョブの編集] ツールバーで [OK] [image] ボタンをクリックして、選択を確定し、ImageMath プロパティシートに戻ります (Enter キーを押すか、または [image] データ構造体をダブルクリックしても、選択を確定できます)。

ImageMath プロパティシートで [フィルタの種類] ドロップダウンメニューから [Differences] を選択し、そのほかのパラメータについてはデフォルト設定を受け入れ、[OK] をクリックしてこの例の設定を完了し、関数を入力画像に適用します。

結果は、ガスケット内の穴のみの出力画像です (下図)。

関連項目

画像ツールについて

画像データアクセス関数

プロパティシートの使用方法


LineScanDistortion 関数

LineScanDistortion 関数 |
ビジョンツール → 画像 | In-Sight 関数リファレンス

TrainLineScanDistortion 関数の出力に基づいてレンズ歪みを補正します。In-Sight 5604 ラインスキャンビジョンシステムで使用されます。LineScanDistortion 関数は、TrainLineScanDistortion 関数の計算結果を参照して、ラインスキャンビジョンシステムのレンズ歪みを補正する [image] データ構造体を出力します。出力された [image] データ構造体は、ほかの In-Sight ビジョンツールで参照することができます。

LineScanDistortion 関数の入力パラメータ

LineScanDistortion 関数の結果出力

LineScanDistortion(

画像 ,

登録歪み,

表示

)

LineScanDistortion 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

登録歪み

このパラメータは有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示 | LineScanDistortion 関数を含むセルがスプレッドシート内でハイライトされている場合を除き、入力画像領域は表示されません。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力画像領域が常に表示されます。

LineScanDistortion 関数の結果出力

戻り値

処理された画像を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

画像ツールについて

画像データアクセス関数

TrainLineScanDistortion 関数

プロパティシートの使用方法


NeighborFilter 関数

ビジョンツール → 画像フィルタ

In-Sight 関数リファレンス

多目的関数の NeighborFilter は、各ピクセルが、「局所的な」画像強調技術 (縮小、拡大、塗りつぶし、平滑化、またはエッジ強度など) を入力画像または対象領域 (ROI) の一連の隣接するピクセル (「近傍」) に適用した結果であるグレースケール出力画像を生成します。一連のピクセルは、「処理近傍」と呼ばれ、形状は矩形で、[行数] および [列数] パラメータによって、それぞれ高さと幅が定義されます。NeighborFilter 操作の多くは、処理近傍内の特徴をその形状の特性に基づいて処理 (またはモーフィング) します。

  • NeighborFilter 関数の入力パラメータ
  • NeighborFilter 関数の結果出力
  • NeighborFilter 関数の例
  • 関連項目

NeighborFilter 関数関数の入力パラメータ

NeighborFilter 関数 (

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

操作 ,

行数 ,

列数 ,

表示

)

画像

この引数は有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

これは対象領域 (ROI) とも呼ばれ、画像処理の対象となる画像の領域を指定します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、[領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度

注意: [フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

操作

処理近傍で実行する操作を指定します。結果は、グレースケール出力画像で表示されます。一部の操作は、エッジを強調します。エッジは、ピクセルのグレースケール値が急激に変化する画像内の領域です。

0 = ボトムハット | 「ボトムハット」フィルタ処理操作を指定します。この操作は、処理近傍のサイズより小さい暗い特徴以外のすべてを除去します。結果は、これらの暗い特徴が明るいピクセルで表示され、背景が暗く表示された出力画像になります。
1 = クローズ | 「クロージング」操作を指定します。この操作はダイレーションの後にエロージョンを実行し、処理近傍のサイズより小さい暗い特徴を除去します。結果は、全体的な明度がわずかに高くなった出力画像となります。
9 = 畳み込み | 「畳み込み」操作を指定します。この操作は、周辺ピクセルの値に基づいて、個々のピクセルの値を変更します。このパラメータは非常に柔軟に設計されているため、ユーザは、さまざまな結果 (カスタムローパスフィルタ、カスタムダイレーション操作など) を生成できます。 注意: [カーネル] ボタンを押すと、[畳み込みフィルタのカーネル] ダイアログが開き、処理近傍の各ピクセル値の重みを指定できます。
2 = 膨張 (Dilate) | 「ダイレーション」操作を指定します。この操作は、明るい特徴を拡大し、暗い特徴を縮小します。結果は、明るいピクセルがより大きな領域を占める出力画像になります。暗い斑点の除去に有効です。
3 = エッジ強度 | 入力画像のダイレーションとエロージョンの差を表示する操作を指定します。結果は、エッジが明るいピクセルで表示された出力画像になります。この操作は、勾配 全方向に似ていますが、より複雑な対角線方向のエッジを表現できます (ただし、より時間がかかります)。
4 = 収縮 | 「エロージョン」操作を指定します。この操作は、明るい特徴を縮小し、暗い特徴を拡大します。結果は、暗いピクセルがより大きな領域を占める出力画像になります。明るい斑点の除去に有効です。
14 = 黒穴埋め | 明るいピクセルで囲まれた暗いピクセルを明るいピクセルに変換する「ピクセル塗りつぶし」操作を指定します。結果は、暗い穴が埋められた出力画像になります。
13 = 白穴埋め | 暗いピクセルで囲まれた明るいピクセルを暗いピクセルに変換する「ピクセル塗りつぶし」操作を指定します。結果は、明るい穴が埋められた出力画像になります。
10 = 勾配 垂直方向 | 「垂直方向の傾斜」操作を指定します。結果は、垂直方向のエッジが明るいピクセルで表示された出力画像になります。
11 = 勾配 水平方向 | 「水平方向の傾斜」操作を指定します。結果は、水平方向のエッジが明るいピクセルで表示された出力画像になります。
12 = 勾配 全方向 | 「垂直方向および水平方向の傾斜」操作を指定します。結果は、垂直方向および水平方向のエッジが明るいピクセルで表示された出力画像になります。この操作は、エッジ強度に似ていますが、より簡易で (処理が早く)、対角線方向のエッジは表現しません。
5 = ハイパス | 「ハイパス」操作を指定します。結果は、むらのないグレースケール勾配を持つ領域に対し、相対的にエッジが強調された出力画像となります。
6 = ローパス (デフォルト) | 「ローパス」操作を指定します。結果は、エッジが「平滑化」された、またはぼやけた出力画像になります。
7 = オープン | 「オープニング」操作を指定します。この操作はエロージョンの後にダイレーションを実行し、処理近傍のサイズより小さい明るい特徴を除去します。結果は、全体的な明度がわずかに低くなった出力画像となります。
8 = トップハット | 「トップハット」フィルタ処理操作を指定します。この操作は、処理近傍のサイズより小さい明るい特徴以外のすべてを除去します。結果は、これらの明るい特徴が明るいピクセルで表示され、それ以外の背景が暗く表示された出力画像になります。

行数

処理近傍の高さ (1 ～ 25、デフォルト = 3) を指定します。

注意:
  • 操作に [畳み込み] が選択されている場合、行数はピクセル単位でカーネルの高さを定義するために使用されます。

列数

処理近傍の幅 (1 ～ 25、デフォルト = 3) を指定します。

注意:
  • 操作に [畳み込み] が選択されている場合、列数はピクセル単位でカーネルの幅を定義するために使用されます。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示 (デフォルト) | NeighborFilter 関数を含んでいるセルがスプレッドシート上でハイライトされている場合を除き、入力画像領域は表示されません。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力画像領域が常に表示されます。

NeighborFilter 関数関数の結果出力

戻り値

処理済みの画像を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

注意: データ構造体にある処理済みの画像領域の内容は、ジョブとともに保存されることはありません。

NeighborFilter 関数の例

この例の目的は、NeighborFilter 関数の膨張操作を使用して、入力画像の連続した 5 つの数字の周辺にある黒い斑点を除去することです (下図)。

NeighborFilter 関数をスプレッドシートに挿入した後、プロパティシートで「領域」という単語をダブルクリックして ROI を定義します。画像の上に赤い ROI ボックスが現れます。カーソルを使用してボックスを移動しサイズを調整したら、[ジョブの編集] ツールバーの [OK] [image] ボタンをクリックして選択を確定し、プロパティシートに戻ります (Enter キーを押すか、または ROI 内をダブルクリックしても、選択を確定できます)。

プロパティシートで [フィルタ種類] ドロップダウンメニューから [膨張 (Dilate)] を選択し、そのほかのパラメータについてはデフォルト設定を受け入れ、プロパティシートで [OK] をクリックしてこの例の設定を完了し、関数を入力画像に適用します。

下の 2 つの画像では、オリジナルの入力画像と新しい出力画像の両方が [文字照合/認識] ツールによって参照されています。このツールは、数字を「照合」し、結果の信頼性を示す各数字の得点を表示します。

オリジナルの入力画像 (ダイレーションなし) では、文字照合/認識の最高得点が 100.000 (数字「2」) で、最低得点が 82.154 (数字「1」) です。数字「1」は、文字照合のデフォルトのアクセプトしきい値 90 を下回っているため、テキスト文字列は照合に失敗します。

新しい出力画像 (ダイレーションを適用) では、黒い斑点の多くが数字の周辺から除去され、数字が読み取り易くなっています。文字照合/認識の最高得点は 100.000 (数字「8」) で、最低得点は 91.518 (数字「9」) です。すべての数字が文字照合のデフォルトしきい値 90 を上回っているため、テキスト文字列は照合に成功します。

数字が薄すぎる場合は、「収縮」操作を適用し、明るい特徴を縮小して暗い特徴を拡大することができます。

関連項目

  • 画像ツールについて
  • 画像データアクセス関数
  • プロパティシートの使用方法


PointFilter 関数

PointFilter 関数 |
ビジョンツール → 画像フィルタ | In-Sight 関数リファレンス

多目的関数の PointFilter 関数は、すべてのピクセルが、「グローバルな」画像強調技術 (2 値化、反転、ヒストグラム平坦化、グレースケール伸長またはクリッピングなど) を入力画像または対象領域 (ROI) の各ピクセルに適用した結果である白黒またはグレースケールの出力画像を生成します。

PointFilter 関数の入力パラメータ

PointFilter 関数の結果出力

PointFilter 関数の例

PointFilter 関数 (

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

フィルタ種類 ,

最小値 ,

最大値 ,

しきい値 ,

表示

)

PointFilter 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

フィクスチャ入力の対象領域またはビジョンツール関数の画像座標系の出力を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、（0, 0, 0）になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

対象領域 (ROI) とも呼ばれ、画像処理が行われる画像の領域を指定し、移動と回転が可能な矩形画像領域を形成します。このパラメータを選択して、[領域の最大化] ボタンをクリックすると、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセットを指定します。
Y | フィクスチャ座標での原点の Y オフセットを指定します。
高さ | 領域の X 軸に沿った寸法を指定します。
幅 | 領域の Y 軸に沿った寸法を指定します。
角度 | フィクスチャ座標での角度を指定します。

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

フィルタ種類

グレースケールまたは白黒の出力画像を生成する「ピクセル単位」の画像処理操作を指定します。

注意: 選択した操作に適用できないパラメータは、淡色表示または「グレーアウト」されます。

0 = 2 値化 (デフォルト)

白黒 (「2 値化」) しきい値操作を指定します。この操作は、各入力ピクセルをしきい値レベルと比較し、出力ピクセルが白または黒のどちらになるかを判定します。しきい値以上の入力ピクセル値は白に、しきい値を下回る値は黒になります。

1 = クリップ (Clip)

「クリッピング」操作を指定します。この操作は、出力画像内の特徴がより均一になるように、グレースケールスペクトルの両端を除去します。この操作では、各入力ピクセルのグレースケール値と最小値および最大値と比較し、

  • 入力ピクセル値が最小値または最大値と「等しい」か、または「超える」場合、出力ピクセルにはそれぞれ最小値または最大値が割り当てられます (「クリッピング」されます)。
  • 入力ピクセル値が最小値と最大値の「間」である場合、出力ピクセルには入力ピクセルの値が割り当てられます。

2 = 等化（Equalize）

ヒストグラム平坦化操作を指定します。この操作は、入力画像のヒストグラムを抽出し、最も多いグレースケール値を拡散して、分布をより均一にします。結果は、コントラストが強められた出力画像となります。

7 = グレースケール距離

各出力ピクセルのグレースケール値を、各入力ピクセルのグレースケール値としきい値レベルの「差」として指定します (例えば、入力ピクセル値が 100 で、しきい値が 25 の場合、出力ピクセル値は 75 になります)。

4 = 反転

256 階調のグレースケールに基づく、ピクセル値の反転を指定します (例えば、入力ピクセル値 10 を反転すると、出力ピクセル値は 245 になります)。結果は、入力画像の「ネガティブ」状態の出力画像となります。

6 = しきい値範囲

白黒 (「2 値化」) しきい値操作を指定します。この操作は、各入力ピクセルを 2 つのしきい値 (最小値と最大値) と比較し、出力ピクセルが白または黒のどちらになるかを判定します。

  • 入力ピクセル値が最小値または最大値に「等しい」か、それを「超える」場合、出力ピクセルは白です。
  • 入力ピクセル値が最小値と最大値の「間」である場合、出力ピクセルは黒です。

5 = 光密度

出力ピクセル値 = 100 × log (255) - 100 × log (入力ピクセル値) 対数目盛に基づく、ピクセル値の反転を指定します。結果は、入力画像内の対象物と特徴を通り抜ける光の量を測定することで、それらの密度を明らかにする出力画像となります。対象物と特徴の密度が高いほど、出力画像ではより明るいピクセルで表示されます。

3 = 引き伸ばし（Stretch）

伸長操作を指定します。この操作は、入力画像のグレースケール値を完全な 256 階調グレースケールまで線形に「拡大」または「引き伸ばし」します。結果は、コントラストが強められた出力画像となります。

最小値

クリッピングおよびしきい値範囲操作の最小グレースケール値を指定します。(0 ～ 255、デフォルト 0)

最大値

クリッピングおよびしきい値範囲操作の最大グレースケール値を指定します。(0 ～ 255、デフォルト 255)

しきい値

2 値化およびグレースケール距離操作のしきい値レベルを指定します。

-1（デフォルト） | 指定された領域内のグレースケール値に基づいて、自動的にしきい値レベルを計算します。
0 ～ 255 | 0 ～ 255 の範囲内で、しきい値を直接指定します。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示（デフォルト） | PointFilter 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、入力画像領域は表示されません。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力画像領域が常に表示されます。

PointFilter 関数の結果出力

戻り値

処理された画像を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

PointFilter 関数の例

この例では、PointFilter 関数の各種フィルタを適用して、デンタルフロスの容器の入力画像を強調します (下図)。

PointFilter 関数をスプレッドシートに挿入した後、プロパティシートで「Region」という単語をダブルクリックして ROI を定義します。画像の上に赤い ROI ボックスが現れます。カーソルを使用してボックスを移動しサイズを調整したら、[ジョブの編集] ツールバーの [OK] [image] ボタンをクリックして選択を確定し、プロパティシートに戻ります (Enter キーを押すか、または ROI 内をダブルクリックしても、選択を確定できます)。

プロパティシートで [フィルタの種類] ドロップダウンメニューからフィルタを選択し、そのほかのパラメータについてはデフォルト設定を受け入れ、[OK] をクリックしてこの例の設定を完了し、関数を入力画像に適用します。

下の図は、2 値化操作によって生成された出力画像です。ユーザ設定のしきい値以上の入力ピクセル値はすべて、白で表示されます。しきい値を下回る値はすべて黒で表示されます。

下の図は、クリッピング操作によって生成された出力画像です。最小値は 40、最大値は 125 に設定されています。入力画像と比較すると、下の出力画像はわずかにコントラストが弱くなっていますが、まだ、背景と対象物を見分けることができます。この操作は、画像内のグレアまたは明るい領域が必要なデータの抽出を困難にしている場合に有効です。

下の図は、クリッピング操作とは逆の伸長操作によって生成された出力画像です。最小値と最大値は、それぞれ 0 と 255 の完全なグレースケール範囲に引き延ばされます。結果として、出力画像は入力画像よりコントラストが強くなります。

関連項目

画像ツールについて

画像データアクセス関数

プロパティシートの使用方法


ScaleImage 関数

ビジョンツール → 画像フィルタ

In-Sight 関数リファレンス

ScaleImage 関数は、入力画像または対象領域 (ROI) のピクセルを再サンプリングして、縮小、拡大、回転または折り曲げの行われていない状態の画像を生成します。この関数は、再サンプリングされた画像を In-Sight スプレッドシートの左上隅に表示します。

  • ScaleImage 関数の入力パラメータ
  • ScaleImage 関数の結果出力
  • ScaleImage 関数の例

ScaleImage 関数の入力パラメータ

ScaleImage 関数(

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

スケールタイプ,

X スケール,

Y スケール,

表示行,

表示列,

表示

)

画像

この引数はセル A0、つまり AcquireImage 関数により返される [image] データ構造体を含むセルを参照している必要があります。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

これは対象領域 (ROI) とも呼ばれ、画像処理の対象となる画像の領域を指定します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、[領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

スケールタイプ

ピクセルの再サンプリング方法を指定します。

0 = 補間 (デフォルト)

画像の再サンプリングのために、ピクセル領域の加重平均値の使用を指定します。

XY スケール

領域の (X, Y) 方向へのスケール比を指定します。

注意:　100 から 1000 の範囲に含まれる値はアップサンプリングを指定します。例えば、スケール比の指定値が両方とも 200 である場合、再サンプリング後の画像は指定された領域の 2 倍のサイズになります。

X スケール | 領域の X 方向へのスケール比 (10 ～ 1000、デフォルト = 50) を指定します。
Y スケール | 領域の Y 方向へのスケール比 (10 ～ 1000、デフォルト = 50) を指定します。

表示行

左上隅を基準に、再スケーリングされた画像を表示する行座標 (デフォルト = 0) を指定します。

注意:
  • 値 -1 を指定すると、この関数によって、スケーリングされた画像が入力画像と同じ行座標に配置されるようになります。
    • 取り込んだ画像については、AcquireImage 関数に指定した [取り込み開始行] が使用されます。このため、ScaleImage 関数の [表示行] および [表示列] パラメータを 0, 0 に設定すると、画像が部分的に取り込まれた場合、ScaleImage 関数は取り込まれた画像の上に出力結果を表示します。
    • ほかのビジョンツール (例: PointFilter 関数などの画像ツール) で画像を出力すると、入力画像を定義する行座標が使用されます。例えば、PointFilter 関数を列/行座標 100,100 に定義すると、パラメータに -1 が設定された参照している ScaleImage 関数は、行座標 100 に表示されます。
  • ファームウェアリリース 4.7.1 から 4.8.4 の間に作成された ScaleImage 関数を含むジョブを、In-Sight ビジョンシステムまたはファームウェア 4.9.0 を動作させているエミュレータにロードすると、[表示行] の値は自動的に -1 に設定されます。4.7.1 以前に作成されたジョブでは、[表示行] の値は自動的に 0 に設定されます。

表示列

左上隅を基準に、再スケーリングされた画像を表示する列座標 (デフォルト = 0) を指定します。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示 (デフォルト) | ScaleImage 関数を含んでいるセルがスプレッドシート上でハイライトされている場合を除き、入力領域境界と再サンプリングされた画像は表示されません。
1 = 結果のグラフィックスのみ | 再サンプリングされた画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力領域境界が常に表示されます。

ScaleImage 関数の結果出力

戻り値

処理済みの画像を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

ScaleImage 関数の例

この例では、入力画像の対象物はボトルです。この例の目的は、ボトルのサイズを 50% に縮小することです。

In-Sight スプレッドシートに関数を挿入した後、プロパティシートで「領域」という単語をダブルクリックして ROI を定義します。画像の上に赤い ROI ボックスが現れます。カーソルを使用してボックスを移動しサイズを調整したら、[ジョブの編集] ツールバーの [OK]　 [image] ボタンをクリックして選択を確定し、プロパティシートに戻ります (Enter キーを押すか、または ROI 内をダブルクリックしても、選択を確定できます)。

[X スケール] および [Y スケール] の両方のフィールドに「50」と入力し、そのほかのパラメータについてはデフォルト設定を受け入れ、プロパティシートで [OK] をクリックしてこの例の設定を完了し、関数を入力画像に適用します。

下の図は、50% に縮小されたボトルの画像です。

ユーザは、「折り曲げ」または「回転」が行われていない対象物に対しても ScaleImage 関数を使用することができます。これにより、処理された出力画像をほかのツールで容易に参照することができます。この例では、対象物はわずかにカーブした線分です。オーバレイは削除されて表示されています (削除は、[表示] メニューの [オーバレイ] をクリックして行います)。また、入力画像と出力画像の両方を同じビューに簡単に並べて表示できるように、線分のサイズも 50% に縮小されます。

関数を挿入した後、ROI を定義し、プロパティシートで [X スケール] および [Y スケール] フィールドに「50」を指定して (ボトルの例で前述のとおり)、対象物が直線になるまで [領域] パラメータの下の [角度] および [カーブ] フィールドの値を徐々に増やしていきます。そのほかのパラメータについてはデフォルト設定を受け入れ、プロパティシートで [OK] をクリックしてこの例の設定を完了し、関数を入力画像に適用します。下の図は、中央が曲がった対象物の画像で、左上隅が縮小されており、「曲がっていない」バージョンの画像です。

この例では、カーブした線分を直線にするために、角度 17.390 およびカーブ -36.389 が必要でした。

関連項目

  • 画像ツールについて
  • 画像データアクセス関数
  • プロパティシートの使用方法


ScaleColorImage 関数

ビジョンツール → 画像フィルタ

In-Sight 関数リファレンス

ScaleColorImage 関数は、入力画像または対象領域 (ROI) のピクセルを再サンプリングして、縮小、拡大、回転または折り曲げの行われていない状態のカラー画像を生成します。この関数は、再サンプリングされた画像を In-Sight スプレッドシートの左上隅に表示します。

  • ScaleColorImage 関数の入力パラメータ
  • ScaleColorImage 関数の結果出力

ScaleColorImage 関数の入力パラメータ

ScaleColorImage 関数(

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

スケールタイプ,

X スケール,

Y スケール,

表示行,

表示列,

表示

)

画像

この引数はセル A0、つまり AcquireImage 関数により返される [image] データ構造体を含むセルを参照している必要があります。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

これは対象領域 (ROI) とも呼ばれ、画像処理の対象となる画像の領域を指定します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、[領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

スケールタイプ

ピクセルの再サンプリング方法を指定します。

0 = 補間 (デフォルト)

画像の再サンプリングのために、ピクセル領域の加重平均値の使用を指定します。

XY スケール

領域の (X, Y) 方向へのスケール比を指定します。

注意:　100 から 1000 の範囲に含まれる値はアップサンプリングを指定します。例えば、スケール比の指定値が両方とも 200 である場合、再サンプリング後の画像は指定された領域の 2 倍のサイズになります。

X スケール | 領域の X 方向へのスケール比 (10 ～ 1000、デフォルト = 50) を指定します。
Y スケール | 領域の Y 方向へのスケール比 (10 ～ 1000、デフォルト = 50) を指定します。

表示行

 左上隅を基準に、再スケーリングされた画像を表示する行座標 (デフォルト = 0) を指定します。

注意:　値 -1 を指定すると、この関数によって、スケーリングされた画像が入力画像と同じ行座標に配置されるようになります。

  • 取り込んだ画像については、AcquireImage 関数に指定した [取り込み開始行] が使用されます。このため、ScaleColorImage 関数の [表示行] および [表示列] パラメータを 0, 0 に設定すると、画像が部分的に取り込まれた場合、ScaleColorImage 関数は取り込まれた画像の上に出力結果を表示します。
  • ほかのビジョンツール (例: ExtractColor 関数などのカラーツール) で画像を出力すると、入力画像を定義する行座標が使用されます。例えば、ExtractColor 関数を列/行座標 100,100 に定義すると、パラメータに -1 が設定された参照している ScaleColorImage 関数は、行座標 100 に表示されます。

表示列

 左上隅を基準に、再スケーリングされた画像を表示する列座標 (デフォルト = 0) を指定します。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示 (デフォルト) | ScaleColorImage 関数を含んでいるセルがスプレッドシート上でハイライトされている場合を除き、入力領域境界と再サンプリングされた画像は表示されません。
1 = 結果のグラフィックスのみ | 再サンプリングされた画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力領域境界が常に表示されます。

ScaleColorImage 関数の結果出力

戻り値

処理済みの画像を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

  • ScaleImage 関数
  • 画像ツールについて
  • 画像データアクセス関数
  • プロパティシートの使用方法


SceneCorrection 関数

ビジョンツール → 画像フィルタ

In-Sight 関数リファレンス

SceneCorrection 関数は、均一でない照明やシェーディングのある画像を修正して、均一な照明があるとみなされる出力画像を生成するのに有効です。この関数は、各ピクセルが、「局所的な」画像強調技術 (「平均明度」) を対象領域 (ROI) の一連の隣接するピクセル (「近傍」) に適用した結果であるグレースケール出力画像を生成します。一連のピクセルは、「処理近傍」と呼ばれ、形状は矩形で、[行数] および [列数] パラメータによって、それぞれ高さと幅が定義されます。

注意:　処理近傍は奇数で生成される必要があります (例: 行数 = 13、列数 = 13、行数 = 15、列数 = 21)。偶数を入力しても自動的に拒否されます。

  • SceneCorrection 関数の入力パラメータ
  • SceneCorrection 関数の結果出力
  • 関連項目

SceneCorrection 関数関数の入力パラメータ

SceneCorrection 関数(

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

操作 ,

行数 ,

列数 ,

タイムアウト ,

表示

)

画像

この引数は有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

これは対象領域 (ROI) とも呼ばれ、画像処理の対象となる画像の領域を指定します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、[領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度

注意:　[フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

操作

処理近傍で実行する操作を指定します。結果は、グレースケール出力画像で表示されます。

0 = 平均明度

「平均明度」操作を指定します。結果は、画像の平均グレースケールになります。このフィルタは、各ピクセルの明度値を処理近傍内にあるピクセルの平均明度と比較して、均一でない照明またはシェーディングの除去をシミュレートします。画像内のばらつきがほとんどない領域は、元の明度に関係なくニュートラルなグレーで表示されます。周囲のピクセルよりも暗いピクセルは、どのくらい周囲よりも暗いかによって、ニュートラルなグレーよりも暗くシェーディングされます。同様に、周囲のピクセルよりも明るいピクセルは、ニュートラルなグレーよりも明るくシェーディングされます。「ハイパス」操作と同様に、エッジおよび急速な変化は保存されます。

行数

処理近傍の高さ (画像最大高 1、デフォルト = 11) を指定します。この値は奇数値にする必要があります。

注意:　最大高さは In-Sight ビジョンシステムの画像領域の最大高さになります (例: 解像度 640 x 480　のビジョンシステム では 480 ピクセル)。

列数

処理近傍の幅 (画像最大幅 1、デフォルト = 11) を指定します。この値は奇数値にする必要があります。

注意:　最大幅は In-Sight ビジョンシステムの画像領域の最大幅になります (例: 解像度 640 x 480　のビジョンシステムでは 640 ピクセル)。

タイムアウト

適切なフィルタを計算する時間をミリ秒単位で指定します (0 ～ 30000、デフォルト = 0)。指定された時間が経過すると、実行は停止し、#ERR が返されます。タイムアウトを指定しない場合は、パラメータを 0 に設定します。

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示 (デフォルト) | SceneCorrection 関数を含んでいるセルがスプレッドシート上でハイライトされている場合を除き、入力画像領域は表示されません。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力画像領域が常に表示されます。

SceneCorrection 関数関数の結果出力

戻り値

処理済みの画像を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

注意:　 データ構造体にある処理済みの画像領域の内容は、ジョブとともに保存されることはありません。

関連項目

  • 画像ツールについて
  • 画像データアクセス関数
  • プロパティシートの使用方法


TrainLineScanDistortion 関数

TrainLineScanDistortion 関数 |
ビジョンツール → 画像 | In-Sight 関数リファレンス

LineScanDistortion 関数と In-Sight 5604 ラインスキャンビジョンシステムで使用される、レンズ歪みの画像領域を計算します。TrainLineScanDistortion 関数は、均等な間隔で交互に並ぶ白と黒の列を処理することによって、レンズ歪みを計算し、画像全体、または画像の特定の対象領域のいずれかを使用して、画像に存在する歪みを計算します。その後、LineScanDistortion 関数は TrainLineScanDistortion 出力を参照し、この計算を使用して、レンズ歪みを補正します。

TrainLineScanDistortion 関数は、In-Sight Explorer ソフトウェアでインストールされた画像ファイルなど、50% デューティサイクル画像 (交互に並ぶ白と黒の列) とともに使用する必要があります。画像ファイルをロードするには、In-Sight Explorer Calibration Grids ディレクトリの Line Scan Distortion フォルダに移動 (例えば、[Program Files] → [Cognex] → [In-Sight] → [In-Sight Explorer x.x.x] → [Calibration Grids] → [Line Scan Distortion] を選択) し、LineScanDistortionTrainSample.bmp ファイルを選択します。画像ファイルを印刷し、この印刷したファイルの画像を In-Sight 5604 ラインスキャンビジョンシステムで取得することを推奨します。

注意:
  • TrainLineScanDistortion 関数を使用する場合、物理セットアップと光学セットアップ (レンズ、In-Sight 5604 ラインスキャンビジョンシステム、およびビジョンシステムと取り込まれるシーンの間の物理的関係) は訂正登録とランタイム操作の両方で同一にする必要があります。このうちのいずれかが変更された場合、システムを再登録する必要があります。したがって、登録とランタイム画像の処理の両方で、同じビジョンシステムとレンズを使用することを推奨します。ビジョンシステムとレンズでは、元のセットアップおよび設定を変更しないようにする必要があります。例えば、画像取り込みフォーマットの変更 (解像度の変更による) またはビジョンシステムの移動を行うと、訂正が無効になります。
  • TrainLineScanDistortion 関数の使用は、システムのセットアップ中のみにしてください。デフォルトでは、画像取り込みのたびに再登録が行われることを防止するために、この関数は無効化されています。

TrainLineScanDistortion 関数の入力パラメータ

TrainLineScanDistortion 関数の結果出力

TrainLineScanDistortion 関数(

画像 ,

領域.X,

領域.Y,

領域.高さ,

領域.幅

)

TrainLineScanDistortion 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

領域

これは対象領域 (ROI) とも呼ばれ、画像解析の対象となる画像の領域を表します。移動可能な矩形の画像領域を形成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | 画像座標での原点の X オフセット
Y | 画像座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法

TrainLineScanDistortion 関数の結果出力

戻り値

計算後のレンズ歪み訂正を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

画像ツールについて

画像データアクセス関数

LineScanDistortion

プロパティシートの使用方法


WhiteBalance 関数

WhiteBalance 関数 |
ビジョンツール → 画像 | In-Sight 関数リファレンス

WhiteBalance 関数は、カラー In-Sight センサおよびカラー対応のエミュレータでのみ使用可能で、画像の赤、緑、および青 （RGB） 値を計算し、それらを In-Sight ジョブに保存されたカラーテーブルに従って修正することで、カラー画像の色かぶりを除去します。結果として、実世界で白いアイテムは、画像の中でも白で表示されます。

ユーザは、画像が飽和状態 （255-255-255） に近づかないように確保しながら、「中間色」の基準となる画像 （つまり、RGB 値が等しい画像。例えば、18-18-18） を取り込んで、カラーテーブルを生成する必要があります。推奨される方法は、空白の用紙の画像を取り込むことです。

WhiteBalance 関数は、各カラーチャネル （赤、緑、および青） のヒストグラムを生成し、最高値をベースラインとして、それを各カラー値で除算してスケール係数を生成し、このスケール係数を使用してカラーテーブルを生成し （例えば、RGB 200-100-50 のスケール係数は 1-2-4 となります）、カラー値を「補正」します。

現在のセンサ設定のカラーテーブルは、ジョブファイルに保存されます。適切なホワイトバランス情報が適用されることを保証するために、画像のロードや取り込みの前にジョブをロードしてください。

注意: WhiteBalance 関数は、AcquireImage プロパティシートのホワイトバランス領域を参照し、この領域のパラメータを使用してホワイトバランスを計算します。

WhiteBalance 関数の入力パラメータ

WhiteBalance 関数の結果出力

WhiteBalance 関数の例

WhiteBalance 関数 (

Image

)

WhiteBalance 関数の入力パラメータ

画像

このパラメータは有効なカラー [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

注意: 有効なカラー [image] データ構造体を返す関数は、AcquireImage だけです。

WhiteBalance 関数の出力結果

戻り値

データ構造体。入力パラメータが無効であれば #ERR を返します。

注意: WhiteBalance 関数はセル状態がオフの状態でスプレッドシートに挿入されます。これにより、画像は一度しか調整されず、スプレッドシートを更新するたびに調整されないことが保証されます。

WhiteBalance 関数の例

この例では、対象物 （センサのレンズ） の入力画像に、修正の必要がある濃青色の色かぶりがあります （下図）。

ユーザは、最初に視野 （FOV） から対象物を取り除き、空白の用紙に置き換えます。次に、WhiteBalance 関数をスプレッドシートに挿入するだけで、画像から青かぶりは除去されます。その後、プロパティシートで [OK] をクリックして、ジョブへのこの関数の追加を確定します。ジョブファイルに保存されるカラーテーブルを生成するため、用紙の画像を取り込みます。対象物を FOV に戻し、画面上に表示すると、青かぶりは完全に消えています （下図）。

関連項目

画像ツールについて

画像データアクセス関数

プロパティシートの使用方法


InspectEdge 関数

ビジョンツール

In-Sight 関数リファレンス

InspectEdge ビジョンツール (InspectEdge 関数、InspectEdgeForDefect 関数、InspectEdgePosition 関数、および InspectEdgeWidth 関数) は、詳細なエッジ解析 (エッジの位置、エッジペアの位置と間隔、エッジ幅の測定など) を行って、エッジに欠陥またはギャップが存在するかどうかを判定するために使用します。InspectEdge ビジョンツールは、対象領域 (ROI) 内でキャリパ配列を使用してエッジまたはエッジペアの位置を特定することによって、画像内に存在する対象物の特徴の正確な位置に関する詳細な情報を提供します。これによって、エッジのピークが検出され、検出されたエッジの中に欠陥やギャップなどの偏差が存在するかどうか検査されます。

In-Sight ビジョンシステムでは、InspectEdge ビジョンツールの次の関数を使用して、詳細なエッジ解析を実行します。

  • InspectEdge 関数: 詳細なエッジ解析用に、参照する ROI 内にキャリパの配列を作成します。この関数は、エッジ解析の最初の手順として使用されます。
  • InspectEdgeForDefect 関数: エッジモデルからの偏差を検出するために使用するエッジモデルおよび得点付け基準を作成します。また、検出されたエッジから最適の最適直線または最適円を作成します。
  • InspectEdgePosition 関数: エッジモデルおよび得点付け基準を作成し、エッジの位置を特定します。必要に応じて、検出されたエッジから最適ラインまたは最適円を作成します。
  • InspectEdgeTrainBeadPath 関数: エッジベースのビード特徴中心を検出して、ポリラインを作成し、ビードバスをトレースします。出力パスは、InspectEdgeWidth などの InspectEdge 関数の入力として使用し、位置欠陥、幅欠陥またはギャップがビードにあるかどうかを決定することができます。
  • InspectEdgeWidth 関数: エッジペアのエッジモデルおよび得点付け基準を作成し、エッジペアの幅における偏差を判別します。

注意: InspectEdgeForDefect 関数、InspectEdgePosition 関数、および InspectEdgeWidth 関数は、InspectEdge 関数によって出力されたデータ構造体を参照する必要があります。

In-Sight InspectEdge 関数ツールについて

概要

InspectEdge ビジョンツールは、詳細なエッジ解析 (対象物のエッジにひび割れ、刃こぼれ、くぼみ、しわなどの偏差が存在するかどうかの検査) を行うために使用します。これらのツールは通常、対象物の内側または外側にある特徴の正確な位置に関する詳細な情報を作成して、特徴の中に欠陥が存在するかどうかを判定するために使用します。

InspectEdge 関数は、エッジモードの手法を使用して画像内のエッジまたはエッジペアを特定します。エッジモードでは、1 次元カーネルを使用して個別のキャリパ内のエッジピークが検出されます。エッジモデルは、InspectEdgeForDefect 関数、InspectEdgePosition 関数と InspectEdgeWidth 関数の両方またはいずれかを使用して作成します。エッジモデルは、理想的なエッジまたはエッジペアを定義しており、後続のエッジ候補はエッジモデルと比較され、エッジ候補内に欠陥またはギャップが存在するかどうかが判定されます。

画像内の対象のエッジまたはエッジペアの位置と方向が判別できたら、各ツールを適用して次の手順を実行します。

  • 対象のエッジまたはエッジペアを囲む ROI とキャリパを指定し、InspectEdge 関数を使用して、対象のエッジを分離するための [キャリパ]、[最小コントラスト]、および [エッジ幅] パラメータ値を指定します。
  • InspectEdgeForDefect 関数、InspectEdgePosition 関数、または InspectEdgeWidth 関数を使用して、対象のエッジまたはエッジペアを規定するエッジモデルを定義します。

InspectEdge 関数を使用したエッジ検出

InspectEdge ビジョンツールを使用する際の最初の手順は、画像内でツールを適用する対象領域を指定することです。InspectEdge 関数は、綿密に定義された ROI に基づいて、関連するエッジ情報を画像から分離します。

次のいずれかの方法で、ROI を指定し、画像内でツールがエッジまたはエッジペアを検出する場所を決定します。

  • InspectEdge 関数の [領域] パラメータを使用して、位置、サイズ、角度、カーブと回転の両方またはいずれかを定義します。
  • EditMaskedRegion または EditPolylinePath などの外部 ROI を構築します。

ROI の位置を決定する際は、対象のエッジが ROI の検索方向と並行になっていること、および ROI ができるだけ多くのエッジを囲んでいること、また ROI から意味のない不必要なノイズが除外されていることも確認してください。

InspectEdge 関数の ROI 内で、キャリパの配列を使用して、対象のエッジを含む画像部分の 1 次元表示が作成されます。この 1 次元画像には、対象のエッジだけではなく、元の画像内のノイズおよび不必要な情報によって生成されたほかのエッジも含まれています。InspectEdge 関数の [キャリパ]、[エッジ幅]、および[最小コントラスト] パラメータをこの 1 次元画像に適用すると、対象のエッジの強度が増し、同時に画像のノイズが減少します。

InspectEdgeForDefect 関数、InspectEdgePosition 関数と InspectEdgeWidth 関数の両方またはいずれかを使用したエッジモデルの定義

InspectEdge 関数によって画像内のエッジが特定されると、InspectEdgeForDefect 関数、InspectEdgePosition 関数と InspectEdgeWidth 関数の両方またはいずれかを使用して、検査中に検出されることが予想されるエッジのエッジモデルを作成できます。画像内のエッジはエッジ候補と呼ばれ、理想的なエッジはエッジモデルと呼ばれます。エッジモデルの作成には、最適な直線タイプ、検出するエッジのタイプ (単一エッジまたはエッジペア)、エッジ変化、エッジ得点ルール、最適ラインルール、および検査する欠陥とギャップの両方またはいずれかのタイプを定義する手順が含まれます。

InspectEdgeForDefect 関数は、エッジモデルに基づいて最適な直線を作成して、エッジモデルからの偏差を検査するために使用します。InspectEdgePosition 関数は、エッジモデルに対するエッジの相対位置を判別してモデルからの偏差を報告し、必要に応じて最適な直線を作成するために使用します。InspectEdgeWidth 関数は、ペアのエッジ間の距離における偏差を調査するために使用します。

これら 3 つすべての関数において、ROI は参照先の InspectEdge 関数によってキャリパの配列に分割されているため、選択対象となるエッジを判別するために、各キャリパが評価されて内部のエッジが得点付けされます。位置欠陥の場合、検出された各エッジに基づいて直線が適合され、検出されたエッジを最適ラインと比較することによって、偏差が許容値の外側にある欠陥が判別されます。幅欠陥の場合、キャリパ内で検出された 2 つのエッジ間の距離が計算され、その距離を所定の範囲と比較することによって欠陥が判別されます。

結果の評価

エッジモデルに十分に一致しなかった画像内の各エッジパターン候補に対して、関数は (指定されている場合) 次の情報を返します。

  • 最適ラインに対するエッジパターン候補の相対位置。
  • エッジパターン候補内で検出されたすべての欠陥またはギャップのサイズ、面積、および位置。

さらに、ほかの関連する InspectEdge 関数のデータアクセス関数を使用して追加の情報を収集し、InspectEdge ビジョンツールによって生成されたデータに対して独自の処理および解析を行うことができます。


InspectEdge 関数

InspectEdge 関数 |
ビジョンツール → エッジ検査 | In-Sight 関数リファレンス

InspectEdge 関数は、高度なエッジ解析を実行するために使用します。参照される対象領域 (ROI) にキャリパと呼ばれるインデックス付きのエッジ検出領域の配列を挿入し、画像内のエッジまたはエッジペアを検索することで特徴の正確な位置に関する詳細な情報を作成します。この情報を使用して、エッジまたは特徴の位置、エッジペアの位置と間隔を判定したり、画像内の対象物の幅の測定したりできます。

  • InspectEdge 関数の概要
  • InspectEdge 関数の入力パラメータ
  • InspectEdge 関数の結果出力
  • InspectEdge 関数の関連項目

InspectEdge 関数概要

InspectEdge 関数が挿入されると、関数自身の内部領域を使用して、または EditMaskedRegion 関数や EditPolylinePath 関数などの外部 ROI の参照として ROI が確立され、ツールがエッジまたはエッジペアを検出する画像内の領域が決定されます。参照される ROI は個別のキャリパに分割され、各キャリパに含まれるピクセルがエッジ解析のために 1 つの畳み込みに渡されます。

ROI が設定されると、次の手順で適切に関数を適用する必要があります。

  • 対象のエッジを分離する [キャリパ]、[最小コントラスト]、および [エッジ幅] パラメータの値を指定します。
  • InspectEdgeForDefect 関数、InspectEdgePosition 関数、InspectEdgeTrainBeadPath 関数または InspectEdgeWidth 関数を使用して、対象のエッジまたはエッジペアを規定するエッジモデルを定義します。

InspectEdge 関数が配置されると、1 つの InspectEdge 関数を入力として使用して、複数の検査を実行できます。例えば、1 つの InspectEdge ROI 内で、InspectEdgeForDefect 関数が位置的な欠陥を判定する関数を参照する一方で、InspectEdgeWidth 関数が別の幅計測を実行し、InspectEdgePosition 関数が別のエッジに最適なラインを決定するといったことができます。

注意: InspectEdge 関数は、InspectEdge ビジョンツールの中で最長の実行時間を必要とします。ROI 内のキャリパの数が増加すると、関数の計算時間は長くなります。

InspectEdge 関数関数の入力パラメータ

InspectEdge 関数(

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

外部定義領域またはパス,

キャリパ.高さ,

キャリパ.繰り返しオフセット値,

キャリパ.初期オフセット値,

最小コントラスト,

エッジ幅,

全キャリパに適合,

キャリパグラフインデックス,

ポリライン幅,

表示

)

画像

このパラメータは、スプレッドシートで [image] データ構造体を含むセルを参照する必要があります。デフォルトでは、このパラメータは、AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールのグラフィックス関数によって返された、そのほかの [image] データ構造体も参照できます。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 (デフォルト = 0) | 画像座標での行オフセット
列 (デフォルト = 0) | 画像座標での列オフセット
角度 (デフォルト = 0) | 画像座標系での方位角

領域

これは対象領域 (ROI) とも呼ばれ、エッジ解析の対象となる画像の領域を表します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。黄色の点線は、エッジを検出する方向を示しています。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意: [フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

外部定義領域またはパス

Annulus 関数、Region 関数、EditAnnulus 関数、EditMaskedRegion 関数、EditPolylinePath 関数または EditRegion 関数を含むスプレッドシートセルへの参照を指定します。このパラメータを使用すると、InspectEdge ツールは、[領域] と [フィクスチャ] の設定を無視し、参照先領域に指定された画像領域を検査します。

注意:
  • このパラメータが外部定義領域またはパスの参照として設定されている場合に、この関数の内部領域を使用するには、セル参照に値 0 を入力し、このパラメータを手動で 0 に設定する必要があります。それ以外の場合、この関数は引き続き外部定義領域またはパスを参照します。
  • InspectEdge 関数の [外部定義領域] または [パス] パラメータが EditPolylinePath を参照している場合、InspectEdge 関数を InspectEdgeForDefect 関数または InspectEdgePosition 関数の参照として使用することはできません。これらの関数は #ERR を返します。

キャリパ

検出可能な欠陥やギャップのサイズを定義するために使用する ROI 内のキャリパ配列を指定します。検出可能な欠陥またはギャップのサイズは、検出可能なエッジの数によって決定されます。検出可能なエッジの数は、エッジに沿って配置されたキャリパの数によって決まります。InspectEdge セルがハイライトされているか、[表示] パラメータが [すべて表示] に設定されている場合、キャリパは ROI 内で赤い矩形として表示され、キャリパ内で検出されたエッジは緑色で表示されます。

注意: 検査する欠陥のタイプに応じて、キャリパをオーバラップして配置することができます。ただし、ROI に適用されるキャリパ数が増えるほど、関数の実行時間は長くなります。

高さ | 検査方向に沿って解析されるキャリパあたりのピクセル数を指定します。有効な範囲は、1 から In-Sight ビジョンシステムの画像の幅までです。デフォルト値は 5 です。
繰り返しオフセット値 | 各キャリパの開始間のピクセル数を指定します。有効な範囲は、0 から In-Sight ビジョンシステムの画像の幅までです。デフォルト値は 5 です。[全キャリパに適合] が有効な場合を除き、最後のキャリパは領域の終わりにオーバラップすることがあります。
初期オフセット値 | 領域内の最初のキャリパのオフセットを指定します。有効な範囲は、0 から In-Sight ビジョンシステムの画像の幅までです。デフォルト値は 0 です。

最小コントラスト

エッジとみなされるグレースケールコントラストの最小変化値を指定します (0 ～ 255、デフォルト = 5)。インデックス付きキャリパごとに、青色で描画されたコントラストグラフが画像上に表示されます。グラフ内の値は、0 ～ 100 の値に自動的にスケール変更されます。このパラメータの適用時にこのグラフを使用すると、値を適切に調整できます。

Closed 例 - グラフの [最小コントラスト] パラメータ

エッジ幅

エッジ変化が起きるピクセル距離を指定します (1 ～ 領域の幅、デフォルト = 3)。この設定値は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。この設定値を使用して、画像からノイズをフィルタします。

全キャリパに適合

すべてのキャリパを ROI 内に配置するかどうかを指定します。

0 = OFF (デフォルト) | 関数が [キャリパ繰り返しオフセット値] パラメータおよび [初期オフセット値] パラメータに厳密に従うように指定します。この場合、キャリパが ROI を覆ってしまうことがあります。
1 = ON | ROI 内にすべてのキャリパを確実に配置するために、関数が [キャリパ繰り返しオフセット値] パラメータおよび [初期オフセット値] パラメータを自動的に再計算するように指定します。

キャリパグラフインデックス

表示するキャリパを指定します (デフォルト = 0)。
ポリライン幅 EditPolylinePath 関数の高さ (1 ～ 領域の高さ値、デフォルト = 20) を指定します。このパラメータを InspectEdgeTrainBeadPath 関数と組み合わせて使用すると、検査領域内を検査できます。

表示

画像上の InspectEdge グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | InspectEdge 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | キャリパグラフと指定したキャリパが常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域、キャリパグラフ、および指定したキャリパが常に表示されます。
3 = 全て表示: 入力、結果、およびキャリパ | 入力画像領域、キャリパグラフ、ROI 内のすべてのキャリパが常に表示されます。

InspectEdge 関数関数の結果出力

戻り値 | 画像内で検出されたエッジとキャリパ数を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | ROI 内のキャリパの数。

関連項目

  • InspectEdge ツールについて
  • InspectEdge 関数のデータアクセス関数
  • InspectEdgeForDefect 関数
  • InspectEdgePosition 関数
  • InspectEdgeTrainBeadPath 関数
  • InspectEdgeWidth 関数
  • プロパティシートの使用方法


InspectEdgeForDefect 関数

InspectEdgeForDefect 関数 |
ビジョンツール → エッジ検査 | In-Sight 関数リファレンス

InspectEdgeForDefect 関数は、InspectEdge 関数によって返されるエッジまたはエッジペアに関する詳細なエッジ解析を行うためのエッジモデルを構築するために使用します。このデータは、検出されたエッジまたはエッジペアを最適ラインからの距離などの欠陥やギャップと比較するための最適なライン適合を構築するために使用します。

  • InspectEdgeForDefect 関数の概要
  • InspectEdgeForDefects 関数の入力パラメータ
  • InspectEdgeForDefects 関数の結果出力
  • InspectEdgeForDefects 関数のデータアクセス関数
  • InspectEdgeForDefects 関数の関連項目

InspectEdgeForDefect 関数の概要

スプレッドシートにこの関数を挿入した後に、InspectEdge 関数によって出力された [image] データ構造体に対する参照を作成する必要があります。InspectEdge 関数への参照が確立されると、InspectEdgeForDefect 関数のパラメータを設定することによってエッジモデルが作成されます。エッジモデルでは次の項目が定義されます。

  • 最適ラインのタイプ - 直線または円形。
  • エッジのタイプ - 単一またはエッジペア。
  • エッジ変化のタイプ - 白から黒または黒から白。
  • 不必要なエッジをフィルタ処理するために使用するエッジ得点付け基準。
  • 最適ラインから不必要なエッジをフィルタ処理するために使用する最適ライン基準。
  • 欠陥とギャップの両方またはいずれかの検出に使用する許容値。

エッジモデルが確立されると、この関数によってエッジ候補がエッジモデルと比較され、モデルからの偏差が報告されます。

Closed 例 - 合格した最適直線エッジ

Closed 例 - 不合格の最適直線エッジ

Closed 例 - 不合格の最適円エッジ

InspectEdgeForDefect 関数入力

InspectEdgeForDefect 関数(

InspectEdge 関数,

最適ライン,

エッジペアの検査,

エッジ方向の検出,

第 1 エッジ,

第 2 エッジ

エッジ得点.得点しきい値,

エッジ得点.エッジ規則,

エッジ得点.コントラスト上限,

エッジ得点.ペアサイズ,

最適ラインの詳細設定.外れ値の削除,

最適ラインの詳細設定.最適距離フィルタ,

最適ラインの詳細設定.最端フィルタ距離,

最適ラインの詳細設定.得点再計算,

最適ラインの詳細設定.最適ライン再計算,

欠陥/ギャップ最大数,

欠陥.最小距離,

欠陥.最大距離,

欠陥.サイズ有効,

欠陥.最小サイズ,

欠陥.最大サイズ,

欠陥.面積有効,

欠陥.最小面積,

欠陥.最大面積,

欠陥.欠陥ライン最適フィルタ,

欠陥.ソート基準,

ギャップ.有効,

ギャップ.ギャップ最小値,

ギャップ.ギャップ最大値,

ギャップ.最大移動距離,

ギャップ.終端ギャップを無視,

ギャップ.ソート基準,

キャリパインデックス,

表示

)

InspectEdge 関数

InspectEdge 関数によって返された有効な [image] データ構造体を含むスプレッドシートセルへの参照を指定します。

最適ライン

検出されたエッジから作成する最適ラインの種類を指定します。

1 = 最適直線 | 関数は、検出されたエッジから最適直線を作成します。
2 = 最適円 | 関数は、検出されたエッジから最適円を作成します。
3 = 自動調整 (デフォルト) | 関数は、ROI に基づいて最適直線または最適円のいずれかを自動的に作成します。

エッジペアの検査

この関数でエッジペアを検出するかどうかを指定します。検出されたエッジペアには、画像内にグラフィックス表示でラベルが付けられます。最初に検出されたエッジには 0、2 番目に検出されたエッジには 1 が付けられます。

0 = OFF (デフォルト) | エッジペアを検出しません。
1 = ON | [エッジ得点] パラメータに基づいてエッジペアを検出します。

エッジ方向の検出

エッジを検出する方向を指定します。エッジを検出する方向をグラフィックス表示するために、暗い緑の矢印が追加されます。最適ラインには、画像内にグラフィックス表示でラベルが付けられます。最初の最適ラインには 0、2 番目の最適ラインには 1 が付けられます。

注意: 参照している InspectEdge 関数の ROI がカーブしている場合、検査はカーブの中心に対して行われます。[エッジ方向の検出] パラメータが [左→右] に設定されている場合は、カーブの中心方向に向かって検査され、[右→左] に設定されている場合はカーブの中心から外側へ向かって検査されます。

0 = 左→右 (デフォルト) | ROI の左から右に向かってエッジを検出します。 Closed 例
1 = 右→左 | ROI の右から左に向かってエッジを検出します。 Closed 例
3 = 内→外 | ROI の中心から ROI の上の境界および下の境界に向かってエッジを検出します (検出されたエッジの順序は、ROI の「X」矢印とは反対の方向の順になります)。 Closed 例 注意: このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
2 = 外→内 | ROI の上下の境界から ROI の中心に向かってエッジを検出します (検出されたエッジの順序は、ROI の「X」矢印とは反対の方向の順になります)。 Closed 例 注意: このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。

第 1 エッジ

[エッジ方向の検出] パラメータに従って、検出された最初のエッジのコントラスト変化を指定します。

1 = 黒→白 | エッジは、黒ピクセルから白ピクセルに変化します。
2 = 白→黒 (デフォルト) | エッジは、白ピクセルから黒ピクセルに変化します。
3 = 任意 | エッジは、黒→白または白→黒のいずれかに変化します。

第 2 エッジ

[エッジ方向の検出] パラメータに従って、検出された 2 番目のエッジのコントラスト変化を指定します。

注意: このパラメータを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。

1 = 黒→白 (デフォルト) | エッジは、黒ピクセルから白ピクセルに変化します。
2 = 白→黒 | エッジは、白ピクセルから黒ピクセルに変化します。
3 = 任意 | エッジは、黒→白または白→黒のいずれかに変化します。

エッジ得点

指定した基準をエッジが満たすかどうかを判別するために使用する、エッジ得点モードを指定します。

得点しきい値

得点付けのしきい値を指定します。この値 (0 ～ 100、デフォルト = 10) より小さい得点のエッジはフィルタで除去されます。

エッジ規則

得点を計算するときに最も重要になるエッジのタイプを指定します。

1 = 最初のエッジ | 検出された最初のエッジに注目します。
2 = エッジ強度 | 最強のコントラスト変化を持つエッジに注目します。
3 = 最初のエッジ/エッジ強度 (デフォルト) | 最初に検出され、最強のコントラスト変化を持つエッジに注目します。
4 = エッジペアサイズ | [ペアサイズ] パラメータに最も近いサイズで検出されたエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
5 = 最初のエッジ/エッジペアサイズ | [ペアサイズ] パラメータに最も近いサイズで検出された最初のエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
6 = エッジ強度/エッジペアサイズ | 最強のコントラスト変化を持ち、[ペアサイズ] パラメータに最も近いサイズで検出されたエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
7 = 最初のエッジ/エッジ強度/エッジペアサイズ | 最強のコントラスト変化を持ち、[ペアサイズ] パラメータに最も近いサイズで検出された最初のエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。

コントラスト上限

エッジとみなすエッジコントラスト変化の上限 (2 ～ 255、デフォルト = 255) を指定します。この値を超えるエッジコントラスト変化を持つエッジの得点は、すべて同じ最高得点になります。このパラメータを有効にするには、[エッジ規則] パラメータを、[エッジ強度]、[最初のエッジ/エッジ強度]、[エッジ強度/エッジペアサイズ]、[最初のエッジ/エッジ強度/エッジペアサイズ] のいずれかに設定しておく必要があります。
ペアサイズ 最高得点を記録するエッジペアサイズを指定します (有効な範囲は、In-Sight ビジョンシステムの画像幅の 1 ～ 3 倍。デフォルト = 5)。このパラメータが有効な場合、この値の上下で検出されたエッジペアはこの値に比例して得点付けされます。例えば、[ペアサイズ] が 10 に設定されており、値が 8 と値が 14 の 2 つのエッジペア候補が検出された場合は、値 8 のエッジペアが選択されます。これは、2 番目のエッジペアより [ペアサイズ] に近いためです。このパラメータを有効にするには、[エッジペアの検査] パラメータを ON にし、[エッジ規則] パラメータを [エッジペアサイズ]、[最初に検出されたエッジペアサイズ]、[エッジ強度/エッジペアサイズ]、または [最初のエッジ/エッジ強度/エッジペアサイズ] のいずれかに設定しておく必要があります。

最適ラインの詳細設定

最適ラインを構築する方法を指定します。

外れ値の削除

[最適距離フィルタ] パラメータで指定されている距離より遠い点を最適ラインから削除するように指定します。

0 = OFF (デフォルト) | 除外距離エッジを考慮しません。
1 = ON | 計算時に除外距離エッジを考慮します。

最適距離フィルタ

最適ライン再計算で利用するためにエッジが元の最適ラインから離れている必要がある距離をピクセル単位で指定します (有効な範囲は　In-Sight ビジョンシステムの画像幅の 1 ～ 3 倍。デフォルト = 2)。この設定は、欠陥が最適ラインに影響を与えないようにする場合に有効です。この設定を有効にするには、[外れ値の削除] が ON になっている必要があります。

最端フィルタ距離

除外距離が、まだ最適ラインの一部とみなされる最適ラインからの距離を指定します (有効な範囲は In-Sight ビジョンシステムの画像幅の 1 ～ 3 倍。デフォルト はビジョンシステムの画像幅の 3 倍)。この値より大きなエッジはすべて無視されます。
得点再計算

最適ラインにより近いエッジを選択するために、エッジを得点再計算するように指定します。

0 = OFF (デフォルト) | 除外距離を考慮するためにエッジを得点再計算しません。
1 = ON | 計算時に除外距離エッジを考慮するために得点再計算を行います。
最適ライン再計算

エッジの得点再計算後に最適ラインの再適合を行うように指定します。この機能を有効にすると、最適ラインの精度が向上しますが、処理時間は長くなります。

0 = OFF (デフォルト) | 最適ラインの再適合を行いません。
1 = ON | エッジの得点再計算後に最適ラインの再適合を行います。

欠陥/ギャップ最大数

検出する欠陥とギャップの両方またはいずれかの最大数を指定します (1 ～ 4096、デフォルト = 5)。この値は、欠陥とギャップに個別に適用されます。例えば、値を 5 に設定すると、最大 5 つの欠陥と 5 つのギャップが検出されます。この設定は、スプレッドシートにデータアクセス結果テーブルを構築するために使用されます。
欠陥

最適ラインのエッジの欠陥を判別するためのパラメータを指定します。

最小距離

エッジと最適ラインの間の距離をピクセル単位で指定します (有効な範囲は　In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍。デフォルト = 3 ピクセル)。この値より小さい場合は欠陥ではないと判別されます。

最大距離

エッジと最適ラインの間の距離をピクセル単位で指定します (有効な範囲は　In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍。デフォルト はビジョンシステムの画像幅の 3 倍)。この値より大きい場合は欠陥ではないと判別されます。

注意: この値が [最小距離] パラメータより小さい場合、関数の結果は #ERR になります。

サイズ有効

サイズ欠陥を考慮するかどうかを指定します。サイズ欠陥では、エッジに沿った長さが考慮されます。

注意: [サイズ有効] と [面積有効] が両方ともに ON の場合は、両方の条件に不適合だった欠陥のみが表示されます。

0 = OFF | サイズ欠陥を考慮しません。
1 = ON (デフォルト) | [最小サイズ] および [最大サイズ] パラメータの設定値に基づいて、サイズ欠陥を考慮します。
最小サイズ | 最小欠陥サイズをピクセル単位で指定します。(有効な範囲は　In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍。デフォルト = 3 ピクセル)。最適ラインからの連続した偏差がこの値より小さい場合は欠陥とはみなされません。
最大サイズ | 最大欠陥サイズをピクセル単位で指定します。(有効な範囲は　In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍。デフォルトはビジョンシステムの画像幅の 3 倍)。最適ラインからの連続した偏差がこの値より大きい場合は欠陥とはみなされません。
面積有効

面積欠陥を考慮するかどうかを指定します。面積欠陥では、最適ラインに沿った長さ、および欠陥エッジの最適ラインからの距離が考慮されます。

注意: [サイズ有効] と [面積有効] が両方ともに ON の場合は、両方の条件に不適合だった欠陥のみが表示されます。

0 = OFF | 面積欠陥を考慮しません。
1 = ON (デフォルト) | [最小面積] および [最大面積] パラメータの設定値に基づいて、面積欠陥を考慮します。
最小面積 | 最小欠陥面積をピクセル単位で指定します (有効な範囲は　 0.001 ～ 100000倍。デフォルト = 10)。この値より小さい面積は欠陥とはみなされません。
最大面積 | 最大欠陥面積をピクセル単位で指定します (有効な範囲は　 0.001 ～ 1000000倍。デフォルト = 1000000)。この値より大きい面積は欠陥とはみなされません。
欠陥ライン最適フィルタ

最適ラインとの相対位置に基づいて欠陥をフィルタするかどうかを指定します。

0 = フィルタしない (デフォルト) | 関数は、最適ラインの両側の欠陥を返します。
1 = 最適ラインの左側を無視 | 関数は、最適ラインの左側の欠陥をフィルタし、最適ラインの右側で検出された欠陥のみを返します。
2 = 最適ラインの右側を無視 | 関数は、最適ラインの右側の欠陥をフィルタし、最適ラインの左側で検出された欠陥のみを返します。
ソート基準

検出された欠陥をソートする方法を指定します。

サイズ (デフォルト) | 検出された欠陥を、サイズの大きい順にソートします。
面積 | 検出された欠陥を、面積の大きい順にソートします。
位置 | 検出された欠陥を、キャリパインデックス順にソートします。
ギャップ

エッジ内のギャップを判別するためのパラメータを指定します。

有効

検出されたエッジ内のギャップを考慮するかどうかを指定します。

0 = OFF | ギャップを考慮しません。
1 = ON (デフォルト) | ほかのギャップパラメータの設定に基づいて、ギャップを考慮します。

ギャップ最小値

ギャップ最小値をピクセル単位で指定します。(有効な範囲は　In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍。デフォルト = 3 ピクセル)。この値より小さいギャップはギャップとはみなされません。

ギャップ最大値

ギャップ最大値をピクセル単位で指定します。(有効な範囲は　In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍。デフォルトはビジョンシステムの画像幅の 3 倍)。この値より大きいギャップはギャップとはみなされません。
最大移動距離

最適ラインをギャップとみなす、最適ラインからの最大移動距離をピクセル単位で指定します (有効な範囲は　In-Sight ビジョンシステムの画像幅の 1 ～ 3 倍。デフォルトはビジョンシステムの画像幅の 3 倍)。この設定は、検出されたエッジのうち、ほかのエッジと同じ最適ラインに沿っていないエッジを削除するフィルタとして機能します。

注意: [エッジペアの検査] パラメータが有効な場合は、領域の中心からエッジペアの中心までの最大移動距離がピクセル単位で測定されます。この距離が [最大移動距離] パラメータの値より大きい場合は、ギャップとみなされます。
終端ギャップを無視

ROI の始まりと終わりで検出されたギャップを考慮するかどうかを指定します。

0 = OFF | ROI の始まりと終わりで検出されたギャップを考慮しません。
1 = ON (デフォルト) | ROI の始まりと終わりで検出されたギャップを考慮します。
ソート基準

検出されたギャップをソートする方法を指定します。

サイズ (デフォルト) | 検出されたギャップを、サイズの大きい順にソートします。
位置 | 検出されたギャップを、キャリパインデックス順にソートします。
キャリパインデックス 画像上に表示するキャリパを指定します (キャリパは緑色に囲まれて表示されます)。デフォルトで表示されるキャリパは 0 です。

表示

画像上の InspectEdgeForDefect グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | InspectEdgeForDefect 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらかが常に表示されます。
2 = 結果のグラフィックスと検出されたエッジ | 最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、および検出されたエッジ点が常に表示されます。
3 = 結果のグラフィックスとキャリパの詳細 | 最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、検出されたエッジ点、およびインデックス付きキャリパウィンドウが常に表示されます。
4 = すべて表示: 入力と結果のグラフィックス | 入力領域、最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、および検出されたエッジ点が常に表示されます。

InspectEdgeForDefect 関数 関数の結果出力

戻り値 | 検出された欠陥、除外距離、およびギャップを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | InspectEdgeForDefect 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが作成されます。この結果テーブルは、実行中の検索タイプに対応しています。 Closed 例 - デフォルトの最適直線エッジ結果テーブル Closed 例 - デフォルトの最適円エッジ結果テーブル Closed 例 - デフォルトのエッジペア結果テーブル 注意: [欠陥/ギャップ最大数] パラメータの値がゼロより大きい場合、InspectEdgeForDefect 関数は、最初の 10 個の欠陥/ギャップ/エッジ/エッジペアに対応する最大 10 個のエントリを含む結果テーブルを自動的にデータ構造体に挿入します。追加のエントリを表示する場合は、最後の行をコピーして末尾に追加の行を貼り付けることによってテーブルを拡張することができます。

InspectEdgeForDefect 関数データアクセス関数

次のデータアクセス関数が、InspectEdgeForDefect データ構造体結果テーブルを作成するためにスプレッドシートに自動挿入されます。このスプレッドシートは、要約、欠陥、ギャップ、および除外距離の 4 つのセクションに分けられます。

スプレッドシート名 | 関数名 | 説明
要約
欠陥/ギャップ | GetDefectGapCount(検査, 欠陥/ギャップ, サイズ/面積, エッジペアインデックス) | 指定した内容に応じて、欠陥/ギャップの数を返します。欠陥 = 0、ギャップ = 1、サイズ = 0、面積 = 1。
行 0/1 | GetFitEdgeRow(検査, エッジペアインデックス, 点インデックス, エッジインデックス) | 指定した点の行座標を返します。
列 0/1 | GetFitEdgeCol(検査, エッジペアインデックス, 点インデックス) | 指定した点の列座標を返します。
中心行 | GetFitEdgeCenterRow(検査, 点インデックス) | 最適円を指定した場合に挿入され、最適円の中心の行座標を返します。
中心列 | GetFitEdgeCenterCol(検査, 点インデックス) | 最適円を指定した場合に挿入され、最適円の中心の列座標を返します。
半径 | GetFitEdgeRadius(検査, エッジペアインデックス, 点インデックス) | 最適円を指定した場合に挿入され、最適円の中心から選択したエッジペアまでの距離を返します。
欠陥/ギャップ
サイズ/面積 | GetDefectGapValue(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ, エッジペアインデックス, サイズ/面積/幅) | 欠陥またはギャップのサイズまたは面積を返します。欠陥 = 0、ギャップ = 1、サイズ = 0、面積 = 1、幅 = 2。
行 | GetDefectGapBoundsRow(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形の行座標を返します。
列 | GetDefectGapBoundsCol(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形の列座標を返します。
高さ | GetDefectGapBoundsHigh(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形の高さを返します。
幅 | GetDefectGapBoundsWide(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形の幅を返します。
角度 | GetDefectGapBoundsAngle(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形の角度を返します。
カーブ | GetDefectGapBoundsCurve(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形のカーブを返します。
始まり/終わり | GetDefectGapCaliperIndex(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ, エッジペアインデックス, 欠陥の始まり/終わり) | 欠陥が始まるキャリパまたは終わるキャリパを返します (始まり = 0、終わり = 1)。
除外距離 - 最も遠い点 1/2
キャリパ | GetExtremePoints(検査, エッジペアインデックス, 近い/遠い) | エッジが最適ラインから最も離れているキャリパのインデックスを返します (近い = 0、遠い = 1)。
行 | GetEdgeRow(検査, キャリパインデックス, エッジペアインデックスまたはエッジインデックス) | 参照したエッジの行座標を返します。
列 | GetEdgeCol(検査, キャリパインデックス, エッジペアインデックスまたはエッジインデックス) | 参照したエッジの列座標を返します。
距離 | GetEdgeFromFit(検査, キャリパインデックス, エッジペアインデックス) | 参照したキャリパのエッジから最適ラインまでの距離を返します。

注意:

InspectEdgeForDefect 関数の数式はすべて次の条件に適合しています。

  • データ構造体
  • キャリパインデックス = 0 ～ N (キャリパの総数は、InspectEdgeForDefect 関数が参照している InspectEdge 関数によって出力されたキャリパの数と同じ)
  • エッジペアインデックス = 0 または 1
  • エッジインデックス = 0 ～ N
  • 点インデックス = 0 ～ 1

[エッジペアの検査] パラメータが有効な場合は、エッジ 1 のデータの追加行が自動的にスプレッドシートに挿入されます。この場合、インデックス 0 はエッジ 0 に関係する情報を返し、インデックス 1 はエッジ 1 に関係する情報を返します。

関連項目

  • InspectEdge ツールについて
  • InspectEdge 関数
  • InspectEdge 関数のデータアクセス関数
  • InspectEdgePosition 関数
  • InspectEdgeWidth 関数
  • TransInspEdgeDefectToWorld 関数
  • プロパティシートの使用方法


InspectEdgePosition 関数

InspectEdgePosition 関数 |
ビジョンツール → エッジ検査 | In-Sight 関数リファレンス

InspectEdgePosition 関数は、InspectEdge 関数によって返されるエッジに関する詳細なエッジ解析を行うためのエッジモデルを構築するために使用します。このデータは、エッジの位置の判別、除外距離エッジの識別、および必要に応じて最適ラインの構築を行うために使用します。

  • InspectEdgePosition 関数の概要
  • InspectEdgePosition 関数の入力パラメータ
  • InspectEdgePosition 関数の結果出力
  • InspectEdgePosition 関数のデータアクセス関数
  • InspectEdgePosition 関数の関連項目

InspectEdgePosition 関数概要

スプレッドシートにこの関数を挿入した後に、InspectEdge 関数によって出力された [image] データ構造体に対する参照を作成する必要があります。InspectEdge 関数への参照が確立されると、InspectEdgeForDefect 関数のパラメータを設定することによってエッジモデルが作成されます。エッジモデルでは次の項目が定義されます。

  • 最適ラインのタイプ - 直線または円形。
  • エッジを検出する方向。
  • エッジ変化のタイプ - 白から黒または黒から白。
  • 不必要なエッジをフィルタ処理するために使用するエッジ得点付け基準。
  • 最適ラインから不必要なエッジをフィルタ処理するために使用する最適ライン基準。

エッジモデルが確立されると、この関数によってエッジ候補がエッジモデルと比較され、モデルからの偏差が報告されます。

InspectEdgePosition 関数関数の入力パラメータ

InspectEdgePosition 関数(

InspectEdge 関数,

最適ライン,

エッジ方向の検出,

第 1 エッジ,

エッジ得点.得点しきい値,

エッジ得点.エッジ規則,

エッジ得点.コントラスト上限,

最適ラインの詳細設定.外れ値の削除,

最適ラインの詳細設定.最適距離フィルタ,

最適ラインの詳細設定.最端フィルタ距離,

最適ラインの詳細設定.得点再計算,

最適ラインの詳細設定.最適ライン再計算,

キャリパインデックス,

表示

)

InspectEdge 関数

 InspectEdge 関数によって返された有効なデータ構造体を含むスプレッドシートのセルへの参照を指定します。このパラメータは、InspectEdgeWidth 関数によって返された有効なデータ構造体を参照することもできます。

最適ライン

検出されたエッジから作成する最適ラインの種類を指定します。

0 = なし | 最適ラインを作成しません。ROI の中心を基準に、検出されたエッジの位置を測定します。
1 = 最適直線 | 関数は、検出されたエッジから最適直線を作成します。最適ラインを基準に、検出されたエッジの位置を測定します。
2 = 最適円 | 関数は、検出されたエッジから最適円を作成します。最適ラインを基準に、検出されたエッジの位置を測定します。
3 = 自動調整 (デフォルト) | 関数は、ROI に基づいて最適直線または最適円のいずれかを自動的に作成します。

エッジ方向の検出

エッジを検出する方向を指定します。

0 = 左→右 (デフォルト) | ROI の左から右に向かってエッジを検出します。
1 = 右→左 | ROI の右から左に向かってエッジを検出します。

第 1 エッジ

[エッジ方向の検出] パラメータに従って、検出された最初のエッジのコントラスト変化を指定します。

1 = 黒→白 | エッジは、黒ピクセルから白ピクセルに変化します。
2 = 白→黒 (デフォルト) | エッジは、白ピクセルから黒ピクセルに変化します。
3 = 任意 | エッジは、黒→白または白→黒のいずれかに変化します。

エッジ得点

指定した基準をエッジが満たすかどうかを判別するために使用する、エッジ得点モードを指定します。

得点しきい値

得点付けのしきい値を指定します。この値 (0 ～ 100、デフォルト = 10) より小さい得点のエッジはフィルタで除去されます。

エッジ規則

得点を計算するときに最も重要になるエッジのタイプを指定します。

1 = 最初のエッジ | 検出された最初のエッジに注目します。
2 = エッジ強度 | 最強のコントラスト変化を持つエッジに注目します。
3 = 最初のエッジ/エッジ強度 (デフォルト) | 最初に検出され、最強のコントラスト変化を持つエッジに注目します。

コントラスト上限

エッジとみなすエッジコントラスト変化の上限 (2 ～ 255、デフォルト = 255) を指定します。この値を超えるエッジコントラスト変化を持つエッジの得点は、すべて同じ最高得点になります。

最適ラインの詳細設定

最適ラインを構築する方法を指定します。

外れ値の削除

[最適距離フィルタ] パラメータで指定されている距離より遠い点を最適ラインから削除するように指定します。

0 = OFF (デフォルト) | 除外距離エッジを考慮しません。
1 = ON | 計算時に除外距離エッジを考慮します。

最適距離フィルタ

最適ライン再計算で利用するためにエッジが元の最適ラインから離れている必要がある距離をピクセル単位で指定します (有効な範囲は　In-Sight ビジョンシステムの画像幅の 1 ～ 3 倍。デフォルト = 2)。この設定は、欠陥が最適ラインに影響を与えないようにする場合に有効です。この設定を有効にするには、[外れ値の削除] が ON になっている必要があります。

最端フィルタ距離

それを超えるとエッジが最小および最大距離の判別に使用されない除外距離を指定します。この値より大きいエッジはすべて無視されます。有効な範囲は、In-Sight ビジョンシステムの画像幅の 1 ～ 3 倍です。デフォルトは、画像幅の 3 倍です。
得点再計算

検出されて最初に破棄されたエッジが正しくフィルタ処理されていることを確認するために、エッジを得点再計算するように指定します。

0 = OFF (デフォルト) | 除外距離を考慮するためにエッジを得点再計算しません。
1 = ON | 計算時に除外距離エッジを考慮するために得点再計算を行います。
最適ライン再計算

エッジの得点再計算後に最適ラインの再適合を行うように指定します。この機能を有効にすると、最適ラインの精度が向上しますが、処理時間は長くなります。

0 = OFF (デフォルト) | 最適ラインの再適合を行いません。
1 = ON | エッジの得点再計算後に最適ラインの再適合を行います。
キャリパインデックス 画像上に表示するキャリパを指定します (キャリパは緑色に囲まれて表示されます)。デフォルトで表示されるキャリパは 0 です。

表示

画像上にオーバーレイする InspectEdgePosition グラフィックスの表示モードを指定します。

0 = 非表示 (デフォルト) | InspectEdgePosition 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらかが常に表示されます。
2 = 結果のグラフィックスとキャリパの詳細 | 最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、検出されたエッジ点、およびインデックス付きキャリパウィンドウが常に表示されます。
3 = すべて表示: 入力と結果のグラフィックス | 入力領域、最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、および検出されたエッジ点が常に表示されます。

InspectEdgePosition 関数 関数の結果出力

戻り値 | 得点によってソートされ、一致したエッジを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | InspectEdgePosition 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。 Closed 例 - デフォルトの最適直線エッジ結果テーブル Closed 例 - デフォルトの最適円エッジ結果テーブル

InspectEdgePosition 関数データアクセス関数

次のデータアクセス関数が、InspectEdgePosition データ構造体結果テーブルを作成するためにスプレッドシートに自動挿入されます。このスプレッドシートは、最も遠い点および最適直線の 2 つのセクションに分けられます。

スプレッドシート名 | 関数名 | 説明
最も遠い点
点 1 /点 2 | GetExtremePosPoints(検査, 近い/遠い) | 最適ラインから最も遠いエッジを含むキャリパのインデックスを返します (近い = 0、遠い = 1)。
行 | GetEdgePosRow(検査, キャリパインデックス, エッジインデックス) | 指定したキャリパのエッジ位置の行座標を返します。
列 | GetEdgePosCol(検査, キャリパインデックス, エッジインデックス) | 指定したキャリパのエッジ位置の列座標を返します。
最適直線
行 0/行 1 | GetFitEdgePosRow(検査, 点インデックス) | 最適直線の指定した点の行座標を返します。
列 0/列 1 | GetFitEdgePosCol(検査, 点インデックス) | 最適直線の指定した点の列座標を返します。
中心行 | GetFitEdgePosCenterRow(検査, 点インデックス) | 最適円を指定した場合に挿入され、最適円の中心の行座標を返します。
中心列 | GetFitEdgePosCenterCol(検査, 点インデックス) | 最適円を指定した場合に挿入され、最適円の中心の列座標を返します。
半径 | GetFitEdgePosRadius(検査, 点インデックス) | 最適円を指定した場合に挿入され、最適円の中心からの距離を返します。

注意:

InspectEdgePosition 関数の数式はすべて次の条件に適合しています。

  • 検査 = InspectEdgePosition 関数によって出力された [image] データ構造体
  • キャリパインデックス = 0 ～ N (キャリパの総数は、InspectEdgeForDefect 関数が参照している InspectEdge 関数によって出力されたキャリパの数と同じ)
  • エッジペアインデックス = 0 または 1
  • エッジインデックス = 0 ～ N
  • 点インデックス = 0 ～ 1 (0 = 始まり、1 = 終わり)

関連項目

InspectEdge ツールについて

InspectEdge 関数

InspectEdge 関数のデータアクセス関数

InspectEdgeForDefect 関数

InspectEdgeWidth 関数

プロパティシートの使用方法


InspectEdgeTrainBeadPath 関数

InspectEdgeTrainBeadPath 関数 |
ビジョンツール → エッジ検査 | In-Sight 関数リファレンス

InspectEdgeTrainBeadPath 関数は、エッジを基準とするビード特徴の中心を検出するために使用され、検出されたビードパスをトレースしたポリラインを作成します。このツールで作成されたポリラインパスを、InspectEdgeWidth 関数など、そのほかの InspectEdge 関数で入力として使用して、ビードに位置的な欠陥、幅の欠陥、またはギャップがないかどうかを判断することができます。

  • InspectEdgeTrainBeadPath 関数の概要
  • InspectEdgeTrainBeadPath 関数の入力パラメータ
  • InspectEdgeTrainBeadPath 関数の結果出力
  • InspectEdgeTrainBeadPath 関数の関連項目

InspectEdgeTrainBeadPath 関数 概要

ビードパスは連続するエッジのペアで、異なるピクセル値を持つ 2 つの領域間の境界を定義します (このパスは必ずしもループではありません)。一般に、ビードパスはインクや糊のついている部分や溶接の継ぎ目のことで、その幅や厚み、および位置によって定義されます。InspectEdgeTrainBeadPath 関数を、ほかの InspectEdge 関数とともに使用して、画像ごとにビードパスが異なる場合のビードの追跡アプリケーションで適用したり、ビードパスが常に同じ位置にあるかどうかの検証を行ったりすることができます。

ビードの追跡アプリケーションでは、InspectEdgeTrainBeadPath 関数を InspectEdge 関数の 1 つや InspectEdgeWidth 関数とともに使用して、ビードパスが濃くも薄くもなく、常に一定のパターンで配置されていることを検証できます。これらの関数はビードに沿ったパスを定義するマルチセグメントラインを作成し、濃すぎたり、薄すぎたりする領域や、欠落した領域がビードパスにないかどうかを判断します。

位置を基準にしたビード追跡アプリケーションでは、同じ関数を使用して、ビードパスが常に同じ場所に同じ濃度で存在するかどうか、パスに位置のばらつきはないかどうかを検証することができます。

注意: どちらのアプリケーションで使用する場合でも、InspectEdgeTrainBeadPath 関数を InspectEdge 関数の [外部領域またはパス] パラメータへの入力として使用する必要があります。また、InspectEdgeWidth 関数は、InspectEdge のパラメータで、InspectEdge 関数が出力した [image] データ構造体を参照する必要があります。

InspectEdgeTrainBeadPath 関数関数の入力パラメータ

InspectEdgeTrainBeadPath 関数(

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

外部領域またはパス,

キャリパ.高さ,

キャリパ.繰り返しオフセット値,

キャリパ.初期オフセット値,

最小コントラスト,

エッジ幅,

全キャリパに適合,

エッジ方向の検出,

第 1 エッジ,

第 2 エッジ,

エッジ得点.得点しきい値,

エッジ得点.エッジ規則,

エッジ得点.コントラスト上限,

エッジ得点.ペアサイズ,

登録,

キャリパグラフインデックス,

表示

)

画像

このパラメータは、スプレッドシートで [image] データ構造体を含むセルを参照する必要があります。デフォルトでは、このパラメータは、AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールのグラフィックス関数によって返された、そのほかの [image] データ構造体も参照できます。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 (デフォルト = 0) | 画像座標での行オフセット
列 (デフォルト = 0) | 画像座標での列オフセット
角度 (デフォルト = 0) | 画像座標系での方位角

領域

これは対象領域 (ROI) とも呼ばれ、エッジ解析の対象となる画像の領域を表します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。黄色の点線は、エッジを検出する方向を示しています。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意: [フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

外部領域またはパス

Annulus 関数、Region 関数、EditAnnulus 関数、EditMaskedRegion 関数、EditPolylinePath 関数 または EditRegion 関数を含むスプレッドシートセルへの参照を指定します。このパラメータを使用すると、InspectEdge ツールは、[領域] と [フィクスチャ] の設定を無視し、参照先領域に指定された画像領域を検査します。

注意:
  • このパラメータが外部領域またはパスの参照として設定されている場合に、この関数の内部領域を使用するには、セル参照に値 0 を入力し、このパラメータを手動で 0 に設定する必要があります。それ以外の場合、この関数は引き続き外部領域またはパスを参照します。
  • InspectEdge 関数の [外部領域またはパス] パラメータが EditPolylinePath を参照している場合、InspectEdge 関数を InspectEdgeForDefect 関数または InspectEdgePosition 関数の参照として使用することはできません。これらの関数は #ERR を返します。

キャリパ

検出可能な欠陥やギャップのサイズを定義するために使用する ROI 内のキャリパ配列を指定します。検出可能な欠陥またはギャップのサイズは、検出可能なエッジの数によって決定されます。検出可能なエッジの数は、エッジに沿って配置されたキャリパの数によって決まります。InspectEdge セルがハイライトされているか、[表示] パラメータが [すべて表示] に設定されている場合、キャリパは ROI 内で赤い矩形として表示され、キャリパ内で検出されたエッジは緑色で表示されます。

注意: 検査する欠陥のタイプに応じて、キャリパをオーバラップして配置することができます。ただし、ROI に適用されるキャリパ数が増えるほど、関数の実行時間は長くなります。

高さ | 検査方向に沿って解析されるキャリパあたりのピクセル数を指定します。有効な範囲は、1 から In-Sight ビジョンシステムの画像の幅までです。デフォルト値は 5 です。
繰り返しオフセット値 | 各キャリパの開始間のピクセル数を指定します。有効な範囲は、0 から In-Sight ビジョンシステムの画像の幅までです。デフォルト値は 5 です。[全キャリパに適合] が有効な場合を除き、最後のキャリパは領域の終わりにオーバラップすることがあります。
初期オフセット値 | 領域内の最初のキャリパのオフセットを指定します。有効な範囲は、0 から In-Sight ビジョンシステムの画像の幅までです。デフォルト値は 0 です。

最小コントラスト

エッジとみなされるグレースケールコントラストの最小変化値を指定します (1 ～ 255、デフォルト = 5)。インデックス付きキャリパごとに、青色で描画されたコントラストグラフが画像上に表示されます。グラフ内の値は、0 ～ 100 の値に自動的にスケール変更されます。このパラメータの適用時にこのグラフを使用すると、値を適切に調整できます。

Closed 例 - グラフの [最小コントラスト] パラメータ

エッジ幅

エッジ変化が起きるピクセル距離を指定します (1 ～ 領域の幅、デフォルト = 3)。この設定値は、エッジが抽出される前のグレースケールプロジェクションのフィルタ処理に使用されるピクセル演算子の大まかなサイズです。この設定値を使用して、画像からノイズをフィルタします。

全キャリパに適合

すべてのキャリパを ROI 内に配置するかどうかを指定します。

0 = OFF (デフォルト) | 関数が [キャリパ繰り返しオフセット値] パラメータおよび [初期オフセット値] パラメータに厳密に従うように指定します。この場合、キャリパが ROI を覆ってしまうことがあります。
1 = ON | ROI 内にすべてのキャリパを確実に配置するために、関数が [キャリパ繰り返しオフセット値] パラメータおよび [初期オフセット値] パラメータを自動的に再計算するように指定します。
エッジ方向の検出

エッジを検出する方向を指定します。

0 = 左→右 | ROI の左から右に向かってエッジを検出します。 Closed 例
1 = 右→左 | ROI の右から左に向かってエッジを検出します。 Closed 例
3 = 内→外 (デフォルト) | ROI の中心から ROI の上の境界および下の境界に向かってエッジを検出します (検出されたエッジの順序は、ROI の「X」矢印とは反対の方向の順になります)。 Closed 例 注意: このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
2 = 外→内 | ROI の上下の境界から ROI の中心に向かってエッジを検出します (検出されたエッジの順序は、ROI の「X」矢印とは反対の方向の順になります)。 Closed 例 注意: このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
第 1 エッジ

[エッジ方向の検出] パラメータに従って、検出された最初のエッジのコントラスト変化を指定します。

1 = 黒→白 | エッジは、黒ピクセルから白ピクセルに変化します。
2 = 白→黒 (デフォルト) | エッジは、白ピクセルから黒ピクセルに変化します。
3 = 任意 | エッジは、黒→白または白→黒のいずれかに変化します。
第 2 エッジ

[エッジ方向の検出] パラメータに従って、検出された 2 番目のエッジのコントラスト変化を指定します。

1 = 黒→白 (デフォルト) | エッジは、黒ピクセルから白ピクセルに変化します。
2 = 白→黒 | エッジは、白ピクセルから黒ピクセルに変化します。
3 = 任意 | エッジは、黒→白または白→黒のいずれかに変化します。
エッジ得点

指定した基準をエッジが満たすかどうかを判別するために使用する、エッジ得点モードを指定します。

得点しきい値

得点付けのしきい値を指定します。この値 (0 ～ 100、デフォルト = 10) より小さい得点のエッジはフィルタで除去されます。

エッジ規則

得点を計算するときに最も重要になるエッジのタイプを指定します。

1 = 最初のエッジ | 検出された最初のエッジに注目します。
2 = エッジ強度 | 最強のコントラスト変化を持つエッジに注目します。
3 = 最初のエッジ/エッジ強度 | 最初に検出され、最強のコントラスト変化を持つエッジに注目します。
4 = エッジペアサイズ (デフォルト) | 最大サイズのエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
5 = 最初のエッジ/エッジペアサイズ | 検出された最初のエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
6 = エッジ強度/エッジペアサイズ | 変化が最強のエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
7 = 最初のエッジ/エッジ強度/エッジペアサイズ | 変化が最強の最初のエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。

コントラスト上限

エッジとみなすエッジコントラスト変化の上限 (2 ～ 255、デフォルト = 255) を指定します。この値を超えるエッジコントラスト変化を持つエッジの得点は、すべて同じ最高得点になります。このパラメータを有効にするには、[エッジ規則] パラメータを、[エッジ強度]、[最初のエッジ/エッジ強度]、[エッジ強度/エッジペアサイズ]、[最初のエッジ/エッジ強度/エッジペアサイズ] のいずれかに設定しておく必要があります。
ペアサイズ 最高得点を記録するエッジペアサイズを指定します (有効な範囲は、In-Sight ビジョンシステムの画像幅の 1 ～ 3 倍。デフォルト = 5)。このパラメータが有効な場合、この値の上下で検出されたエッジペアはこの値に比例して得点付けされます。例えば、[ペアサイズ] が 10 に設定されており、値が 8 と値が 14 の 2 つのエッジペア候補が検出された場合は、値 8 のエッジペアが選択されます。これは、2 番目のエッジペアより [ペアサイズ] に近いためです。このパラメータを有効にするには、[エッジ規則] パラメータを [エッジペアサイズ]、[最初のエッジ/エッジペアサイズ]、[エッジ強度/エッジペアサイズ]、または [最初のエッジ/エッジ強度/エッジペアサイズ] のいずれかに設定しておく必要があります。
登録

ツールの登録モードを指定します。

0 = OFF | この関数が登録を行わないように指定します。
1 = ON (デフォルト) | この関数が登録を行うように指定します。

キャリパグラフインデックス

表示するキャリパを指定します (デフォルト = 0)。

表示

画像上の InspectEdge グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | InspectEdgeTrainBeadPath 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 登録された EditPolylinePath 関数および検出されたエッジペアポイントグラフが常に表示されます。
2 = 結果グラフィックスとキャリパ詳細の表示。 | 登録された EditPolylinePath 関数と 1 つのキャリパがエッジ候補とともに常に表示され、さらに、キャリパグラフが常に表示されます。
3 = 結果グラフィックス、キャリパ詳細およびエッジ候補を表示します。 | 登録された EditPolylinePath 関数と 1 つのキャリパがエッジ候補とともに常に表示され、さらに、キャリパグラフとすべてのキャリパのエッジ候補すべてが常に表示されます。
4 = 結果グラフィックス、すべてのエッジ候補およびキャリパを表示します。 | 登録された EditPolylinePath 関数と 1 つのキャリパがエッジ候補とともに常に表示され、さらに、キャリパグラフ、すべてのキャリパのエッジ候補すべて、およびキャリパすべてが常に表示されます。
5 = すべて表示: 入力と結果のグラフィックス | 入力グラフィックス、登録された EditPolylinePath 関数、1 つのキャリパがエッジ候補とともに常に表示され、さらに、キャリパグラフ、すべてのキャリパのエッジ候補すべて、およびキャリパすべてが常に表示されます。

InspectEdgeTrainBeadPath 関数関数の結果出力

戻り値 | 画像内で検出されたエッジとキャリパ数を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | ROI 内のキャリパの数。

関連項目

  • InspectEdge ツールについて
  • InspectEdge 関数のデータアクセス関数
  • InspectEdge 関数
  • InspectEdgeForDefect 関数
  • InspectEdgePosition 関数
  • InspectEdgeWidth 関数
  • プロパティシートの使用方法


InspectEdgeWidth 関数

InspectEdgeWidth 関数 |
ビジョンツール → エッジ検査 | In-Sight 関数リファレンス

InspectEdgeWidth 関数は、InspectEdge 関数によって返されるエッジペアに関する詳細なエッジ解析を行うためのエッジモデルを構築するために使用します。このデータは、エッジペアを検出して、それらの間の距離を解析するために使用されます。

  • InspectEdgeWidth 関数の概要
  • InspectEdgeWidth 関数の入力パラメータ
  • InspectEdgeWidth 関数の結果出力
  • InspectEdgeWidth 関数のデータアクセス関数
  • InspectEdgeWidth 関数の関連項目

InspectEdgeWidth 関数 概要

スプレッドシートにこの関数を挿入した後に、InspectEdge 関数によって出力された [image] データ構造体に対する参照を作成する必要があります。InspectEdge 関数への参照が確立されると、InspectEdgeWidth 関数のパラメータを設定することによってエッジモデルが作成されます。エッジモデルでは次の項目が定義されます。

  • エッジを検出する方向。
  • エッジ変化のタイプ - 白から黒または黒から白。
  • 不必要なエッジをフィルタ処理するために使用するエッジ得点付け基準。
  • 最適ラインから不必要なエッジをフィルタ処理するために使用する最適ライン基準。
  • 幅の偏差、欠陥とギャップの両方またはいずれかの検出に使用する許容値。
  • 位置の偏差の許容値 (ビードパスを検出する場合)。

エッジモデルが確立されると、この関数によってエッジ候補がエッジモデルと比較され、モデルからの偏差が報告されます。

注意: InspectEdgeWidth 関数を InspectEdgeTrainBeadPath 関数および InspectEdge 関数と組み合わせて使用すると、ビードパスに関連する幅と位置のエラーを判別できます。InspectEdgeWidth 関数の [InspectEdge] パラメータは、InspectEdgeTrainBeadPath 関数を参照している InspectEdge 関数によって出力された [image] データ構造体を参照している必要があります。

InspectEdgeWidth 関数関数の入力パラメータ

InspectEdgeWidth 関数(

InspectEdge 関数,

エッジ方向の検出,

第 1 エッジ,

第 2 エッジ,

エッジ得点.得点しきい値,

エッジ得点.エッジ規則,

エッジ得点.コントラスト上限,

エッジ得点.ペアサイズ,

詳細なフィルタ.得点再計算,

詳細なフィルタ.最適ライン,

詳細なフィルタ.外れ値の削除,

詳細なフィルタ.最適距離フィルタ,

欠陥/ギャップ最大数,

欠陥.最小幅,

欠陥.最大幅,

欠陥.サイズ,

欠陥.最小サイズ,

欠陥.最大サイズ,

欠陥.面積,

欠陥.最小面積,

欠陥.最大面積,

欠陥.ソート基準,

ギャップ.有効,

ギャップ.ギャップ最小値,

ギャップ.ギャップ最大値,

ギャップ.最大移動距離,

ギャップ.終端ギャップを無視,

ギャップ.ソート基準,

位置.有効,

位置.最小距離,

位置.最大距離,

位置.サイズ,

位置.最小サイズ,

位置.最大サイズ,

位置.面積,

位置.最小面積,

位置.最大面積,

位置.ソート基準,

キャリパインデックス,

表示

)

InspectEdge 関数

InspectEdge 関数によって返された有効なデータ構造体を含むスプレッドシートセルへの参照を指定します。このパラメータは、別の InspectEdgeWidth 関数によって返された有効なデータ構造体を参照することもできます。

エッジ方向の検出

エッジを検出する方向を指定します。

0 = 左→右 | ROI の左から右に向かってエッジを検出します。 Closed 例
1 = 右→左 | ROI の右から左に向かってエッジを検出します。 Closed 例
3 = 内→外 (デフォルト) | ROI の中心から ROI の上の境界および下の境界に向かってエッジを検出します (検出されたエッジの順序は、ROI の「X」矢印とは反対の方向の順になります)。 Closed 例 注意: このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
2 = 外→内 | ROI の上下の境界から ROI の中心に向かってエッジを検出します (検出されたエッジの順序は、ROI の「X」矢印とは反対の方向の順になります)。 Closed 例 注意: このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。

第 1 エッジ

[エッジ方向の検出] パラメータに従って、検出された最初のエッジのコントラスト変化を指定します。

1 = 黒→白 | エッジは、黒ピクセルから白ピクセルに変化します。
2 = 白→黒 (デフォルト) | エッジは、白ピクセルから黒ピクセルに変化します。
3 = 任意 | エッジは、黒→白または白→黒のいずれかに変化します。

第 2 エッジ

[エッジ方向の検出] パラメータに従って、検出された 2 番目のエッジのコントラスト変化を指定します。

1 = 黒→白 (デフォルト) | エッジは、黒ピクセルから白ピクセルに変化します。
2 = 白→黒 | エッジは、白ピクセルから黒ピクセルに変化します。
3 = 任意 | エッジは、黒→白または白→黒のいずれかに変化します。

エッジ得点

指定した基準をエッジが満たすかどうかを判別するために使用する、エッジ得点モードを指定します。

得点しきい値

得点付けのしきい値を指定します。この値 (0 ～ 100、デフォルト = 10) より小さい得点のエッジはフィルタで除去されます。

エッジ規則

得点を計算するときに最も重要になるエッジのタイプを指定します。

1 = 最初のエッジ | 検出された最初のエッジに注目します。
2 = エッジ強度 | 最強のコントラスト変化を持つエッジに注目します。
3 = 最初のエッジ/エッジ強度 | 最初に検出され、最強のコントラスト変化を持つエッジに注目します。
4 = エッジペアサイズ (デフォルト) | 最大サイズのエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
5 = 最初のエッジ/エッジペアサイズ | 検出された最初のエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
6 = エッジ強度/エッジペアサイズ | 変化が最強のエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。
7 = 最初のエッジ/エッジ強度/エッジペアサイズ | 変化が最強の最初のエッジペアに注目します。このオプションを有効にするには、[エッジペアの検査] パラメータを ON にしておく必要があります。

コントラスト上限

エッジとみなすエッジコントラスト変化の上限 (2 ～ 255、デフォルト = 255) を指定します。この値を超えるエッジコントラスト変化を持つエッジの得点は、すべて同じ最高得点になります。このパラメータを有効にするには、[エッジペアの検査] パラメータを ON にし、[エッジ規則] パラメータを、[エッジ強度]、[最初のエッジ/エッジ強度]、[エッジ強度/エッジペアサイズ]、または [最初のエッジ/エッジ強度/エッジペアサイズ] のいずれかに設定しておく必要があります。
ペアサイズ 最高得点を記録するエッジペアサイズを指定します (有効な範囲は、In-Sight ビジョンシステムの画像幅の 1 ～ 3 倍。デフォルト = 5)。このパラメータが有効な場合、この値の上下で検出されたエッジペアはこの値に比例して得点付けされます。例えば、[ペアサイズ] が 10 に設定されており、値が 8 と値が 14 の 2 つのエッジペア候補が検出された場合は、値 8 のエッジペアが選択されます。これは、2 番目のエッジペアより [ペアサイズ] に近いためです。このパラメータを有効にするには、[エッジペアの検査] パラメータを ON にし、[エッジ規則] パラメータを [エッジペアサイズ]、[最初に検出されたエッジペアサイズ]、[エッジ強度/エッジペアサイズ]、または [最初のエッジ/エッジ強度/エッジペアサイズ] のいずれかに設定しておく必要があります。

詳細なフィルタ

最適ラインを構築する方法を指定します。

得点再計算

検出されて最初に破棄されたエッジが正しくフィルタ処理されていることを確認するために、エッジを得点再計算するように指定します。

0 = OFF (デフォルト) | 除外距離を考慮するためにエッジを得点再計算しません。
1 = ON | 計算時に除外距離エッジを考慮するために得点再計算を行います。
最適ライン

検出されたエッジから作成する最適ラインの種類を指定します。

1 = 最適直線 | 関数は、検出されたエッジから最適直線を作成します。
2 = 最適円 | 関数は、検出されたエッジから最適円を作成します。
3 = 自動調整 (デフォルト) | 関数は、ROI に基づいて最適直線または最適円のいずれかを自動的に作成します。

外れ値の削除

[最適距離フィルタ] パラメータで指定されている距離より遠い点を最適ラインから削除するように指定します。

0 = OFF (デフォルト) | 除外距離エッジを考慮しません。
1 = ON | 計算時に除外距離エッジを考慮します。

最適距離フィルタ

最適ライン再計算で利用するためにエッジが元の最適ラインから離れている必要がある距離をピクセル単位で指定します (有効な範囲は　In-Sight ビジョンシステムの画像幅の 1 ～ 3 倍。デフォルト = 2)。この設定は、欠陥が最適ラインに影響を与えないようにする場合に有効です。この設定を有効にするには、[外れ値の削除] が ON になっている必要があります。

欠陥/ギャップ最大数

検出する欠陥とギャップの両方またはいずれかの最大数を指定します (1 ～ 4096、デフォルト = 5)。この値は、欠陥とギャップに個別に適用されます。例えば、値を 5 に設定すると、最大 5 つの欠陥と 5 つのギャップが検出されます。この設定は、スプレッドシートにデータアクセス結果テーブルを構築するために使用されます。
欠陥

最適ラインのエッジの欠陥を判別するためのパラメータを指定します。

最小幅

検出されたエッジペアの間の距離をピクセル単位で指定します。この値より小さい場合は欠陥であると判別されます。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍です。デフォルトは 3 ピクセルです。

最大幅

検出されたエッジペアの間の距離をピクセル単位で指定します。この値より大きい場合は欠陥であると判別されます。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。

注意: この値が [最小幅] パラメータより小さい場合、関数の結果は #ERR になります。

サイズ

サイズ欠陥を考慮するかどうかを指定します。サイズ欠陥では、検出されたエッジペアの長さに沿った幅偏差が考慮されます。

注意: [サイズ有効] と [面積有効] が両方ともに ON の場合は、両方の条件に不適合だった欠陥のみが表示されます。

0 = OFF | サイズ欠陥を考慮しません。
1 = ON (デフォルト) | [最小サイズ] および [最大サイズ] パラメータの設定値に基づいて、サイズ欠陥を考慮します。
最小サイズ | 最小欠陥サイズをピクセル単位で指定します。最適ラインからの連続した偏差がこの値より小さい場合は欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍です。デフォルトは 3 ピクセルです。
最大サイズ | 最大欠陥サイズをピクセル単位で指定します。最適ラインからの連続した偏差がこの値より大きい場合は欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。
面積

面積欠陥を考慮するかどうかを指定します。面積欠陥では、最適ラインに沿った長さ、および欠陥エッジの最適ラインからの距離が考慮されます。

注意: [サイズ有効] と [面積有効] が両方ともに ON の場合は、両方の条件に不適合だった欠陥のみが表示されます。

0 = OFF | 面積欠陥を考慮しません。
1 = ON (デフォルト) | [最小面積] および [最大面積] パラメータの設定値に基づいて、面積欠陥を考慮します。
最小面積 | 最小欠陥面積をピクセル単位で指定します (有効な範囲は　 0.001 ～ 100000倍。デフォルト = 10)。この値より小さい面積は欠陥とはみなされません。
最大面積 | 最大欠陥面積をピクセル単位で指定します (有効な範囲は　 0.001 ～ 1000000倍。デフォルト = 1000000)。この値より大きい面積は欠陥とはみなされません。
ソート基準

検出された欠陥をソートする方法を指定します。

サイズ (デフォルト) | 検出された欠陥を、サイズの大きい順にソートします。
面積 | 検出された欠陥を、面積の大きい順にソートします。
位置 | 検出された欠陥を、キャリパインデックス順にソートします。
幅 | 検出された欠陥を、幅の大きい順にソートします。
ギャップ

エッジ内のギャップを判別するためのパラメータを指定します。

有

検出されたエッジペア内のギャップを考慮するかどうかを指定します。

0 = OFF | ギャップを考慮しません。
1 = ON (デフォルト) | ほかのギャップパラメータの設定に基づいて、ギャップを考慮します。

ギャップ最小値

ギャップ最小値をピクセル単位で指定します。この値より小さいギャップはギャップとはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍です。デフォルトは 3 ピクセルです。

ギャップ最大値

ギャップ最大値をピクセル単位で指定します。この値より大きいギャップはギャップとはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。
最大移動距離

ギャップとみなされる、領域の中心からエッジペアの中心までの最大移動距離をピクセル単位で指定します。有効な範囲は、In-Sight ビジョンシステムの画像幅の 1 ～ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。
終端ギャップを無視

ROI の始まりと終わりで検出されたギャップを考慮するかどうかを指定します。

0 = OFF | ROI の始まりと終わりで検出されたギャップを考慮しません。
1 = ON (デフォルト) | ROI の始まりと終わりで検出されたギャップを考慮します。
ソート基準

検出されたギャップをソートする方法を指定します。

サイズ (デフォルト) | 検出されたギャップを、サイズの大きい順にソートします。
位置 | 検出されたギャップを、キャリパインデックス順にソートします。
位置

エッジペア内の位置欠陥を判別するためのパラメータを指定します。パラメータは、InspectEdgeTrainBeadPath 関数によって出力されたモデルパスの中心からの偏差として欠陥を定義しています。これらのパラメータは、InspectEdgeTrainBeadPath 関数を参照する InspectEdge 関数を参照している場合にのみ使用します。

有

検出されたエッジペア内の位置欠陥を考慮するかどうかを指定します。

0 = OFF (デフォルト) | 位置欠陥を考慮しません。
1 = ON | 他の位置パラメータの設定に基づいて、位置欠陥を考慮します。

最小距離

検出されたビードパスの中心からの最小位置移動距離をピクセル単位で指定します。この値より小さい位置偏差は、位置欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍です。デフォルトは 3 ピクセルです。

最大距離

検出されたビードパスの中心からの最大位置移動距離をピクセル単位で指定します。この値より大きい位置偏差は、位置欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。
サイズ

サイズ欠陥を考慮するかどうかを指定します。サイズ欠陥では、検出されたエッジペアの長さに沿った幅偏差が考慮されます。

注意: [サイズ有効] と [面積有効] が両方ともに ON の場合は、両方の条件に不適合だった欠陥のみが表示されます。

0 = OFF | サイズ欠陥を考慮しません。
1 = ON (デフォルト) | [最小サイズ] および [最大サイズ] パラメータの設定値に基づいて、サイズ欠陥を考慮します。
最小サイズ | 最小欠陥サイズをピクセル単位で指定します。最適ラインからの連続した偏差がこの値より小さい場合は欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍です。デフォルトは 3 ピクセルです。
最大サイズ | 最大欠陥サイズをピクセル単位で指定します。最適ラインからの連続した偏差がこの値より大きい場合は欠陥とはみなされません。有効な範囲は、In-Sight ビジョンシステムの画像幅の 0.001 ～ 3 倍です。デフォルトは、ビジョンシステムの画像幅の 3 倍です。
面積

面積欠陥を考慮するかどうかを指定します。面積欠陥では、最適ラインに沿った長さ、および欠陥エッジの最適ラインからの距離が考慮されます。

注意:[サイズ有効] と [面積有効] が両方ともに ON の場合は、両方の条件に不適合だった欠陥のみが表示されます。

0 = OFF | 面積欠陥を考慮しません。
1 = ON (デフォルト) | [最小面積] および [最大面積] パラメータの設定値に基づいて、面積欠陥を考慮します。
最小面積 | 最小欠陥面積をピクセル単位で指定します。この値より小さい領域は欠陥とはみなされません。有効な範囲は 0.001 ～ 100000 で、デフォルトは 10 です。
最大面積 | 最大欠陥面積をピクセル単位で指定します。この値より大きい領域は欠陥とはみなされません。有効な範囲は 0.001 ～ 1000000 で、デフォルトは 1000000 です。
ソート基準

検出された欠陥をソートする方法を指定します。

サイズ (デフォルト) | 検出された欠陥を、サイズの大きい順にソートします。
面積 | 検出された欠陥を、面積の大きい順にソートします。
位置 | 検出された欠陥を、キャリパインデックス順にソートします。
幅 | 検出された欠陥を、幅の大きい順にソートします。
キャリパインデックス 画像上に表示するキャリパを指定します (キャリパは緑色に囲まれて表示されます)。デフォルトで表示されるキャリパは 0 です。

表示

画像上の InspectEdgeWidth グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | InspectEdgeWidth 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらかが常に表示されます。
2 = 結果のグラフィックスと検出されたエッジ | 最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、および検出されたエッジ点が常に表示されます。
3 = 結果のグラフィックスとキャリパの詳細 | 最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、検出されたエッジ点、およびインデックス付きキャリパウィンドウが常に表示されます。
4 = すべて表示: 入力と結果のグラフィックス | 入力領域、最適ライン、検出された欠陥、除外距離点とギャップの両方またはどちらか、および検出されたエッジ点が常に表示されます。

InspectEdgeWidth 関数 関数の結果出力

戻り値 | 検出された欠陥、除外距離、およびギャップを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | InspectEdgeWidth 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。 注意: [欠陥/ギャップ最大数] パラメータの値がゼロより大きい場合、InspectEdgeWidth 関数は、最初の 10 個の欠陥/ギャップ/エッジ/エッジペアに対応する最大 10 個のエントリを含む結果テーブルを自動的にデータ構造体に挿入します。追加のエントリを表示する場合は、最後の行をコピーして末尾に追加の行を貼り付けることによってテーブルを拡張することができます。

InspectEdgeWidth 関数データアクセス関数

次のデータアクセス関数が、データ構造体結果テーブルを作成するためにスプレッドシートに自動挿入されます。

スプレッドシート名 | 関数名 | 説明
総数 | GetTotalCount(検査) | 結果の総数を返します。
欠陥/ギャップ/位置 | GetWidthCount(検査, 欠陥/ギャップ/位置) | 指定した欠陥またはギャップの総数を返します (欠陥 = 0、ギャップ = 1、位置 = 2)。
欠陥/ギャップ/位置
サイズ/面積/幅/位置 | GetDefectGapValue(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス, サイズ/面積/幅) | 欠陥またはギャップのサイズ、面積、または幅を返します (欠陥 = 0、ギャップ = 1、位置 = 2、サイズ = 0、面積 = 1、幅 = 2)。
行 | GetDefectGapBoundsRow(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) | 欠陥に外接する矩形の行座標を返します。
列 | GetDefectGapBoundsCol(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) | 欠陥に外接する矩形の列座標を返します。
高さ | GetDefectGapBoundsHigh(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) | 欠陥に外接する矩形の高さを返します。
幅 | GetDefectGapBoundsWide(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) | 欠陥に外接する矩形の幅を返します。
角度 | GetDefectGapBoundsAngle(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) | 欠陥に外接する矩形の角度を返します。
カーブ | GetDefectGapBoundsCurve(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス) | 欠陥に外接する矩形のカーブを返します。
始まり/終わり | GetDefectGapCaliperIndex(検査, 欠陥/ギャップインデックス, 欠陥/ギャップ/位置, エッジペアインデックス, 欠陥の始まり/終わり) | 欠陥が始まるキャリパまたは終わるキャリパを返します (始まり = 0、終わり = 1)。
除外距離 - 最も遠い点 1/2
キャリパ | GetExtremeWidth(検査, 最薄/最厚) | 指定した極端な幅を含むキャリパのインデックスを返します (最薄 = 0 および最厚 = 1)。
幅 | GetWidth(検査, キャリパインデックス) | インデックス付きキャリパ内のエッジの幅を返します。インデックス付きキャリパ内でエッジが検出されなかった場合は 0 を返します。
行 (始まりおよび終わり) | GetEdgeRow(検査, キャリパインデックス, エッジペアインデックスまたはエッジインデックス) | 参照したエッジの行座標を返します。
列 (始まりおよび終わり) | GetEdgeCol(検査, キャリパインデックス, エッジペアインデックスまたはエッジインデックス) | 参照したエッジの列座標を返します。

注意:
  • InspectEdgeWidth 関数の数式はすべて次の条件に適合しています。
  • 検査 = InspectEdgeWidth 関数によって出力された [image] データ構造体
  • キャリパインデックス = 0 ～ N (キャリパの総数は、InspectEdgeForDefect 関数が参照している InspectEdge 関数によって出力されたキャリパの数と同じ)
  • エッジペアインデックス = 0 または 1
  • エッジインデックス = 0 ～ N
  • 点インデックス = 0 ～ 1
  • [位置.有効] パラメータが ON の場合、Vision Data Access 関数の追加セクションが位置エラーに関連するスプレッドシートに挿入されます。

関連項目

  • InspectEdge ツールについて
  • InspectEdge 関数
  • InspectEdge 関数のデータアクセス関数
  • InspectEdgeForDefect 関数
  • InspectEdgePosition 関数
  • InspectEdgeTrainBeadPath 関数
  • TransInspEdgeWidthToWorld 関数
  • プロパティシートの使用方法


文字照合/認識関数

ビジョンツール

In-Sight 関数リファレンス

文字照合/認識ツールは、登録フォントを使用してテキスト文字列の読み取りや照合を行います。文字照合/認識ツールには次の関数があります。

  • OCRMax 関数: テキスト文字列の文字を登録、読み取り、および照合します。
  • OCRMaxAutoTune 関数: [オートチューン] ダイアログ への外部アクセスを提供します。
  • OCRMaxSettings 関数: セグメントパラメータやその他の高度なテキスト読み込みパラメータへのプログラムによるアクセスを提供します。
  • ReadText 関数: テキスト文字列を読み取ります。
  • TrainFont 関数: フォント文字を登録します。
  • VerifyText 関数: テキスト文字列を照合します。

注意: レガシー関数である ReadText、TrainFont および VerifyText 関数の代わりに、OCRMax 関数を使用することを推奨します。OCRMax 関数には拡張性能機能が搭載されています。

文字照合/認識関数 概要

In-Sight Explorer には、画像内の英数字テキスト文字列を調べるための光学式文字照合 (OCV) と光学式文字認識 (OCR) の 2 つの異なる方法があります。使用するのは、OCRMax 関数、OCRMaxSettings 関数、ReadText 関数、TrainFont 関数、および VerifyText 関数です。

注意: OCRMax 関数および OCRMaxSettings 関数は、In-Sight ファームウェアバージョン 4.7.0 以降を実行する In-Sight ビジョンシステムにのみ対応しています。

OCRMax 関数および OCRMaxSettings 関数

OCRMax 関数は、セグメンテーションと分類のプロセスを通じて OCR を実行します。セグメンテーションは、最初に実行され、しきい値技術を使用してテキスト行を含むとみなされる画像内の領域を特定します。テキストを文字にセグメンテーションした後、文字を登録し、フォントデータベースとして格納します。分類は、実行時に行われ、関数がセグメンテーションを実行した後に、検出されたテキストの「読み取り」を担います。これは、セグメンテーションされた文字の画像と登録された文字のフォントを比較することで実行されます。

注意: OCRMax 関数は自己完結型の関数です。つまり、OCRMaxSettings 関数を使用せずにセグメンテーションと分類を実行できます。OCRMaxSettings 関数は、非常に難しいアプリケーション向けの高度なセグメンテーションおよび分類パラメータを提供し、設定をプログラムで制御して、リモートデバイスからのパラメータの調整をサポートします。

セグメンテーション

セグメンテーションプロセスでは、OCRMax 関数が ROI 内のテキスト行の位置を判別し、テキストの角度、傾き、および極性を計算します。その後、領域を正規化し、不要なノイズを除去してから、前景ピクセルと背景ピクセルに 2 値化します。2 値化画像内でブロブ解析を実行し、文字フラグメントを生成します。各文字フラグメントが単一のブロブを表します。文字フラグメントをグループ化して文字を形成し、その文字に文字矩形を割り当てます。

ROI 内のテキスト行は、個々の文字の画像に分割され、各文字は編集不可の文字矩形で囲まれます。ROI は、テキスト行のおよその位置、角度、傾きを定義します。必要に応じて、[セグメント] タブの [角度範囲] および [スキュー範囲] パラメータを使用して、偏差を補正できます。

注意: OCRMax 関数が汎用目的の文字列検索機能ではない点を理解することが重要です。ROI が大きい複雑な画像内の文字列は検出できません。ROI は、テキスト行の直近に設定する必要があります。

分類

セグメンテーションが完了すると、文字はフォントデータベースに登録され、実行時の画像で文字の分類が開始されます。分類では、セグメンテーションされた文字画像を入力として使用し、対応する文字を判別します。テキスト行のセグメンテーションされた文字画像をすべて分類することで、テキスト行全体の文字列全体が返されます。

分類は登録後に実行され、入力された文字の文字列またはユーザ割り当ての値に基づいて、個々の文字にタイトルが割り当てられます。文字の集合が登録され 1 つのフォントにグループ化されると、実行時の画像がフォント内の文字と比較され、最適一致の文字と得点が返されます。

各文字は、分類対象文字の 1 つ以上の例の中から登録されます。文字は、1 つのフォントにグループ化され、OCRMax 関数の [image] データ構造体に格納されます。フォントには、すべての登録文字が含まれます。各文字は、名前、文字矩形の画像、およびその中の情報 (テキストのインクなど) から構成されます。

結果

実行時の画像内で読み取った文字の名前のほかに、追加情報も渡します。また、文字のステータス、文字分類得点、可能な代替文字、およびコンフュージョン得点もレポートします。分類得点は、実行時画像内の文字と登録インスタンスとの一致の度合いを示しています。コンフュージョン得点は、分類得点 (最高得点の登録インスタンス) と次に高い分類得点 (異なるクラスの最高得点の登録インスタンス。可能な代替文字としても使用される、[コンフュージョン] の出力) との差として計算されます。

[検査モード] (読み取りまたは認識と照合) に応じて、結果品質を示すステータスを出力します ([読み取り (Bad)]、[読み取り (Good)]、[無視]、[コンフュージョン]、[ミスマッチ]、[コンフュージョンミスマッチ]、[No read]、および [検証失敗])。認識と照合ステータスは、得点とコンフュージョン得点がそれぞれ [アクセプトしきい値] パラメータと [コンフュージョンしきい値] パラメータの範囲内の場合にのみ返されます。

ReadText 関数、TrainFont 関数、および VerifyText 関数

注意: レガシー関数である ReadText、TrainFont および VerifyText 関数の代わりに、OCRMax 関数を使用することを推奨します。OCRMax 関数には拡張性能機能が搭載されています。

ReadText 関数、TrainFont 関数、および VerifyText 関数は、OCV/OCR 機能を分担しています。使用する関数は、テキスト文字列内の文字が既知 (照合) か未知 (認識) かによって決まります。

OCV と OCR のどちらについても、照合または認識する可能性のあるすべての文字の登録モデルを含んでいるフォントが必要です。フォントは、テキスト文字列を個別のセグメントに分割し、各セグメントから文字のサンプル（インスタンスと呼ばれます）を抽出することによって、登録されます。同じ文字の複数のインスタンスを抽出して、1 つの文字モデルに入れることができます。文字モデルの集合全体によって、フォントデータベースが定義されます。

OCV の使用時には、テキスト文字列の各位置の文字がユーザ登録フォントの対応する文字モデルと比較されます。照合に合格するには、モデルと比較される各文字の一致得点が、(1) 最小アクセプトしきい値を超え、(2) フォント内のほかのすべての文字モデルと比較した場合の一致得点を超える必要があります。

OCR の使用時には、テキスト文字列の各文字がユーザ登録フォントのすべての文字モデルと比較されます。必要に応じて、文字モデルの比較数を小さな文字サブセットに制限して、読み取り速度と精度を向上させることができます。最高一致得点を持つ文字モデルによって、各文字の同一性が決定されます。読み取りに合格するには、テキスト文字列の各文字の一致得点が、(1) 最小アクセプトしきい値を超え、(2) 2 番目の一致得点を持つ文字モデルの得点と指定した別のアクセプトしきい値を合わせた値を超える必要があります。

フォントの登録について

フォント登録では、未知のテキストの認識（OCR）、およびテキストの照合（OCV）のために使用される文字モデル（A、B、C、5、$ など）を定義します。実世界画像アプリケーションで発生する可能性があるわずかな差異の影響を打ち消すことができるように、多くの場合、文字モデルの複数のインスタンスが登録されます。アプリケーションで必要となる各文字についてのモデルを確立した後は、In-Sight センサは、既知または未知の文字をこれらの文字モデルと比較することができます。[OCV/OCR フォントの登録] ダイアログは、フォントデータベースの文字モデルの定義および維持に使用します。


OCRMax 関数

ビジョンツール → 文字照合/認識

In-Sight 関数リファレンス

ユーザ定義の文字フォントが登録された後に、対象領域 (ROI) 内のテキスト文字列の読み取りおよび照合を行うか、またはそのどちらかを実行します。

  • 概要
  • OCRMax 関数の入力パラメータ
    • [標準] タブ
    • [セグメント] タブ
    • [フォントの登録] タブ
    • [フィールド化] タブ
    • [結果] タブ
    • [診断] タブ
  • OCRMax 関数の結果出力
  • OCRMax データアクセス関数
  • 関連項目

概要

OCRMax 関数は、セグメンテーションと分類のプロセスを通じて光学式文字認識 (OCR) を実行します。セグメンテーションは、最初に実行され、しきい値技術を使用してテキスト行を含むとみなされる画像内の領域を特定します。テキストを文字にセグメンテーションした後、文字を登録し、フォントデータベースとして格納します。分類は、実行時に行われ、関数がセグメンテーションを実行した後に、検出されたテキストの「読み取り」を担います。そして、セグメンテーションされた文字の画像と登録された文字のフォントを比較することで識別されます。

セグメンテーションプロセスでは、OCRMax 関数が ROI 内のテキスト行の位置を判別し、テキストの角度、傾き、および極性を計算します。その後、領域を正規化し、不要なノイズを除去してから、前景ピクセルと背景ピクセルに 2 値化します。バイナリ化画像内でブロブ解析を実行し、文字フラグメントを生成します。各文字フラグメントが単一のブロブを表します。文字フラグメントをグループ化して文字を形成し、その文字に文字領域を割り当てます。文字領域は、ROI 内の前景 (インクなど) ピクセルすべてを無駄なく囲んだ編集不可のバウンディングボックスです。

ROI 内のテキスト行は、個々の文字の画像に分割され、各文字は編集不可の文字矩形で囲まれます。ROI は、テキスト行のおよその位置、角度、傾きを定義します。必要に応じて、[セグメント] タブの [角度範囲] および [スキュー範囲] パラメータを使用して、偏差を補正できます。

OCRMax 関数関数の入力パラメータ

オートチューン: [オートチューン] ダイアログを起動して、自動的に最適な [セグメント] パラメータを計算し、フォントデータベースを登録します。[オートチューン] ダイアログの実行中に 1 つまたは複数の画像をロードすると、各画像が検査され、文字が正しくセグメント化および分類されていることが確認されます。文字が正しくセグメント化されていない場合、OCRMax 関数のオートチューンアルゴリズムは、現在の画像および以前に登録した画像をセグメント化する最適な [セグメント] パラメータを計算します。登録する画像が増えると、OCRMax 関数のオートチューンアルゴリズムの信頼性と精度も向上します。満足な結果が得られたら [オートチューン] ダイアログを閉じ、新しい [セグメント] パラメータを適用します。フォントデータベースは新たに登録された文字で更新されます。

[オートチューン] ダイアログには、[セグメント] パラメータを手動でチューニングするよりも大きな利点が 2 つあります。

  • 画像に必要なサイクルは 2 回ではなく、1 回のみです (1 回目に [セグメント] パラメータにチューニングし、2 回目に登録します)。
  • チューニングプロセス中に得られる [セグメント] パラメータによって文字が自動的に登録されるため、読み取り精度が向上します。

注意: OCRMaxAutoTune 関数では、[オートチューン] ダイアログを使用して VisionView オペレータインタフェースパネルなどの外部デバイスにアクセスすることができます。

OCRMax 関数 (

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

領域.カーブ ,

フォント ,

外部設定 ,

登録モード ,

登録文字列 ,

フォントの登録 ,

フォントをクリア ,

検査モード ,

マッチ文字列 ,

フィールド文字列 ,

フィールド定義 ,

スペースの検出 ,

スペース得点モード ,

スペース最小幅 ,

スペース最大幅 ,

アクセプトしきい値 ,

コンフュージョンしきい値 ,

サブサンプリングの使用 ,

タイムアウト ,

出力画像グラフィックス ,

文字ラベル位置 ,

診断の表示 ,

カーブ領域位置,

表示

)

[標準] タブ

画像

この引数は有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標系での方位角

領域

これは対象領域 (ROI) とも呼ばれ、画像解析の対象となる画像の領域を指定します。変形および回転可能な矩形の画像領域を形成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

ROI の X 軸はテキストのベースラインと平行となり、Y 軸は文字の垂直ストロークと平行になります。傾きがない場合は、Y 軸は X 軸に垂直になります。X 軸の正の方向が読み取り方向に対応します。

注意: ROI がほぼ同じ角度で設定されるため、画像内のテキストのベースラインは任意の角度 (0 ～ 360) にすることができます。

ROI は、1 行のみの読み取り対象のテキストと周囲の背景を含みます。背景は、ノイズが入っていたり、大きな勾配や影付きの場合もあります。鮮明に印刷されノイズのほとんどないテキストを持つ画像では、ROI はテキスト行より大幅に大きくなることがあります。ノイズの多い画像では、ROI は比較的テキスト行の外郭に近くなります。

注意: ROI にテキスト行以外の画像内の他の重要な特徴を含めないでください。例えば、ROI にテキスト近くの別の行やラベルのエッジが部分的に含まれることがないようにします。

経験則として、可能な場合、ROI はすべての側でテキスト行より文字幅の半分以上大きくします (ROI に他の特徴が含まれてしまう大きさにならない限り)。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

フォント

必要に応じて、別の OCRMax 関数によって出力され、登録フォントを含むデータ構造体へのセル参照を指定します。

注意: 参照が設定されており、登録フォントを参照する関数内で登録文字を編集する場合、登録文字への変更は、[取り消し] ボタンを押しても取り消されません。

外部設定

必要に応じて、OCRMaxSettings 関数によって出力されたデータ構造体へのセル参照を指定します。[セルにエクスポート] オプションを使用している場合、このパラメータは新しく作成した OCRMaxSettings 関数の [image] データ構造体への絶対セル参照として自動的に設定されます。このパラメータが OCRMaxSettings 関数への参照として設定されると、[セグメント] パラメータは無効になります。[セグメント] パラメータを再び有効にするには、このパラメータを設定します。

注意: このパラメータが OCRMaxSettings 関数への参照として設定されると、[オートチューン] ダイアログ は使用できなくなります。[オートチューン] ダイアログを有効にするには、このパラメータを 0 に設定する必要があります。

登録モード

フォントの登録方法を指定します。

0 = すべての文字をフォントに追加 (デフォルト) | [フォントの登録] パラメータがアクティブな場合は、ROI 内のすべての文字がフォントに追加されます。
1 = 新規文字をフォントに追加 | [フォントの登録] パラメータがアクティブな場合は、ROI 内の新しい文字のみがフォントに追加されます。
2 = フォント内の登録済み文字を置き換え | [フォントの登録] パラメータがアクティブな場合は、すべての登録文字を現在の ROI 内の文字で置換します。
3 = すべてのフォントを置き換え | [フォントの登録] パラメータがアクティブな場合は、フォント内のすべての文字を現在の ROI 内の文字で置換します。

登録文字列

登録するテキスト文字列を指定します。

注意: OCRMax 関数は ASCII 文字の登録のみをサポートしています。

フォントの登録

[登録モード] パラメータの設定に基づいて、文字を登録するためのイベントを指定します。

フォントをクリア

フォント内のすべての文字を削除するためのイベントを指定します。

注意: [フォントの登録] および [フォントをクリア] パラメータは、フォント内のすべての文字の削除を開始するイベントと同じイベントを参照し、ROI 内の現在の文字に基づいて再登録することができます。

検査モード

実行時の関数の検査モードを指定します。

読み取り (デフォルト) | 関数は、文字の登録インスタンスに基づいて、ROI 内の文字の読み取りを試みます。
認識と照合 | 関数は、最初に文字の登録インスタンスに基づいて ROI 内の文字を読み取り、その後、[マッチ文字列] パラメータに指定されたテキスト文字列と読み取った文字を照合して検証を試みます。

マッチ文字列

認識と照合検査モード時に、正確に一致する必要のあるテキスト文字列を指定します。

フィールド文字列

文字列に含まれる文字数を指定します。[フィールド化] を使用して、文字列のさまざまな位置にあると予測される文字に関する情報を提供します。[フィールド化] タブのコントロールを使用して、フィールド文字列とフィールド定義を作成します (必要な場合)。

注意: このパラメータは、[検査モード] パラメータが [読み取り] に設定されている場合のみ使用可能です。

フィールド定義

必要に応じ、フィールド定義設定を使用してフィールド文字列のユーザ定義エントリを作成できます。このエントリがフィールド文字列に含まれると、このエントリの挿入位置で有効となる文字のリストが限定されます。[フィールド化] タブのコントロールを使用して、フィールド文字列とフィールド定義を作成します (必要な場合)。

注意: このパラメータは、[検査モード] パラメータが [読み取り] に設定されている場合のみ使用可能です。

スペース

必要な場合に、関数が文字間のスペースを考慮する方法を指定します。OCRMax 関数は、文字間のギャップをスペース文字として分類することで処理します。これらはユーザによって定義されます。

スペースの検出

関数が、他の文字間のギャップへのスペース文字の挿入をどのように処理するかを指定します。

0 = なし (デフォルト) | 関数は、文字間のギャップの大きさに関係なく、スペース文字を挿入しません。
1 = シングルスペースの挿入 | 関数は、文字間のギャップの大きさに関係なく、文字間のギャップごとにシングルスペース文字を挿入します。
2 = 複数スペースの挿入 | 関数は、文字間のギャップごとに x 個 (0 以上) のスペース文字を挿入します。

スペース得点モード

関数がスペース文字の得点を計算する方法を指定します。

0 = 常に 100 を得点 (デフォルト) | スペース文字の得点は常に 100 になります。
1 = クラッタを基に得点 | スペース文字の得点は、背景となっているピクセルの割合に基づきます。完全に背景ピクセルを構成するスペース文字の得点は 100 になります。

スペース最小幅

スペース文字の最小幅をピクセル単位で指定します (0 ～ 1000、デフォルト = 10)。

スペース最大幅

スペース文字の最大幅をピクセル単位で指定します (0 ～ 1000、デフォルト = 100)。

アクセプトしきい値

各文字の許容できる最低一致得点（0～100、デフォルト = 80）を指定します。[アクセプトしきい値] を下回る一致得点の文字は拒否されます。

コンフュージョンしきい値

最高得点の文字と 2 番目である得点の文字の一致得点の間に必要な最小差を指定します (0 ～ 40、デフォルト = 0)。

サブサンプリングの使用

画像のサブサンプリングを有効にするかどうかを指定します。有効にすると、文字解像度が低下し関数の読み取り速度が向上します。

0 = OFF (デフォルト) | この関数がサブサンプリングを実行しないように指定します。
1 = ON | この関数がサブサンプリングを実行するように指定します。

タイムアウト

この関数による文字のサーチ時間をミリ秒単位で指定します (0 ～ 30000、デフォルト = 5000)。指定された時間が経過すると、実行は停止し、#ERR が返されます。値を 0 に設定すると設定値が無効になり、タイムアウトは適用されません。

出力画像グラフィックス

表示する出力画像の種類を指定します。

0 = 入力画像 (デフォルト) | 入力画像が表示されます。
1 = 正規化画像 | 正規化された画像が表示されます。
2 = バイナリ画像 | バイナリ化された画像が表示されます。

文字ラベル位置

文字領域に対する各文字のラベルを表示する相対位置を指定します。

0 = 文字の上 (デフォルト) | 各文字ラベルは文字領域の上に表示されます。
1 = 文字の右 | 各文字ラベルは文字領域の右側に表示されます。
2 = 文字の下 | 各文字ラベルは文字領域の下に表示されます。
3 = 文字の左 | 各文字ラベルは文字領域の左側に表示されます。

診断の表示

画像に表示するグラフィックス診断データのタイプを指定します。

0 = 非表示 (デフォルト) | OCRMax 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックス診断データが表示されません。
1 = 不合格文字のみ表示 | 不合格になった文字の周囲領域が赤色で描画され、テキストのメインラインは青色の矩形で囲まれます。 Closed 例
2 = 保存されたフラグメントのみ表示 | 保存されたフラグメントの周囲領域がシアンで描画され、テキストのメインラインは青色の矩形で囲まれます。 Closed 例
3 = 不合格フラグメントのみ表示 | 不合格になったフラグメントの周囲領域が黄色で描画され、テキストのメインラインは青色の矩形で囲まれます。 Closed 例
4 = すべて表示 | 保存された文字 (緑)、不合格文字 (赤)、保存されたフラグメント (シアン)、不合格フラグメント (黄)、テキストのメインライン (青)、およびテキストの拡張メインライン (マゼンタ) の周囲領域が描画されます。

カーブ領域位置

カーブ領域を使用する場合、歪みのない領域の画像上の位置を X 座標と Y 座標で指定します。

注意: このパラメータは [領域] パラメータのカーブ値が 0 より大きい場合のみ有効です。

X | 領域を配置する位置の X 座標を指定します。
Y | 領域を配置する位置の Y 座標を指定します。

表示

画像上の OCRMax グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | OCRMax 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 文字セグメントおよび対応するラベルが常に表示されます。
2 = 入力のグラフィックスのみ | 入力領域が常に表示されます。
3 = すべて表示: 入力と結果のグラフィックス | 画像領域、出力画像グラフィックス、文字セグメント、および対応するラベルが常に表示されます。

[セグメント] タブ

[セグメント] タブを使用して、ROI 内の文字をセグメンテーションする設定を調整および変更できます。通常は、デフォルト値とデフォルト設定で大半の文字は読み取れます。ただし、比較的困難な場合には、一部のパラメータ値を調整する必要が生じることがあります。このような場合は、最小文字幅、最大幅や最小ピッチ (文字間の距離。例えば、1 つの文字の左端からその次の文字の左端まで) を指定すると、通常は問題が解決します。

注意:
  • このタブのパラメータは、外部セルから参照することはできません。セル参照が必要な場合は、[外部設定] パラメータが OCRMaxSettings 関数を参照するように設定します。
  • [外部設定] パラメータが OCRMaxSettings 関数を参照するように設定されている場合、[セグメント] タブ内のコントロールは無効になります。
  • [セグメント] タブ内では、ROI を調整でき ([グラフィックスの編集] ボタンが有効)、ROI が変更されるとセグメンテーショングラフィックス (文字矩形) が更新されます。
  • ROI と文字領域を表示した場合に、文字領域の線がスプレッドシートオーバレイによって部分的に非表示になることがあります。[セグメント] パラメータの調整時に、半透明のスプレッドシートオーバレイを非表示にすると、文字領域の部分的な遮蔽を防ぐことができます。

セグメンテーションのガイドライン

  • 背景に強度なテクスチャまたは大量のノイズ、あるいはその両方が含まれ、その背景に文字が混在している画像は、セグメンテーションが困難です。
  • ROI には、読み取る文字のみを含め、他の文字やラベルエッジなどの無関係な強い特徴は含めないようにします。
  • 2 つの文字が接触している場合は、通常、パラメータを調整する必要があります。固定幅の接触文字は文字幅を指定することで補正できますが、接触文字のプロポーショナルフォントが問題となり、関数が正しく処理できる場合とできない場合があります。
  • 短いテキスト行 (例えば、3 文字以下) または線ジッタの多い比較的短い行の場合、予測される [角度範囲] を指定すると、関数が固有の不確定度を適切に補正し、短いテキスト行の向きを決定できます。
  • 1 行の中のすべての文字が同一の向きと傾きを持っている必要があります。
  • 十分に分離されたドットマトリックスプリント (ドットが接触していない) の場合、文字を適切にセグメンテーションするには、[最小文字フラグメントサイズ] などのパラメータを調整する必要が生じることがあります。
  • 文字ストローク幅は 2 ピクセル以上にする必要があります。
  • 大きな文字 (通常、英数字) の最小文字サイズは 8 × 8 ピクセルです。小さい文字 (ピリオドなど) の最小文字サイズは 2 × 2 ピクセルです。

ヒント: [出力画像グラフィックス] パラメータを使用すると、[セグメント] パラメータを調整しながら、正規化またはバイナリ化された文字画像を表示できます (画像が鮮明に表示されるように OCRMax プロパティシートを位置づけます)。正規化された画像およびバイナリ画像は、問題を把握し修正するための有用な診断ツールとなります。

セルにエクスポート

現在の [セグメント] タブのパラメータがスプレッドシート内のセルに OCRMaxSettings 関数としてエクスポートされるように指定します。使用する場合、[セグメント] パラメータは読み取り専用となり、[外部設定] パラメータは新しく作成した OCRMaxSettings 関数への参照として設定されます。[セグメント] パラメータを再び有効にするには、[外部設定] パラメータを 0 に設定して OCRMaxSettings 関数への参照を取り消します。

セグメントパラメータ

セグメント分割の実行に使用されるパラメータ設定を指定します。

文字の極性

文字幅の最大値を制限するかどうかを指定します。

注意: 関数のパフォーマンスを改善するには、テキストの極性を指定します。

1 = 黒 (白い背景) | テキストの極性は、白い背景に黒い文字です。
2 = 白 (黒い背景) | テキストの極性は、黒い背景に白い文字です。
4 = 自動 (デフォルト) | この関数は、テキストと背景の極性を自動的に決定します。

文字幅のタイプ

フォントの文字幅の変動方法を指定します。これにより、文字フラグメントをマージするか、分割するかが決定されます。

注意: 文字幅は文字領域 (例: インクの境界ボックス) の幅です。ROI ではありません (ROI には通常、文字矩形のまわりのパディングも含まれます)。

1 = 自動 (デフォルト) | 文字の幅は不明です。このフォントの幅は固定、またはプロポーショナルである可能性があります。指定した最大文字幅よりも広い文字フラグメントは、関数によって決定された文字フラグメントを分割する最適な位置に基づき、個々の文字に分割されます。各文字の幅が同じになるとは限りません。
2 = 固定 | フォントの文字領域はすべて同じ幅をしています。指定した最大文字幅よりも広い文字フラグメントは、個々の文字に分割されます。各文字の幅は同じになります。
4 = 可変 | フォントの文字の文字領域の幅は一定ではない可能性があります。指定した最大文字幅よりも広い文字フラグメントは、関数によって決定された文字フラグメントの分割に最適な位置に基づき、個々の文字に分割されます。各文字の幅が同じになるとは限りません。

文字幅の最小値

文字領域の最小の幅をピクセル単位で指定します (1 ～ 1000、デフォルト = 3)。この値以上の幅を持つ文字がレポートの対象となります。この設定によって、背景ノイズまたはそのほかのテキスト以外の特徴をフィルタ処理することができます。

注意: 読み取るフォントに小さなテキストの特徴 (つまり、ピリオド、コロン、ハイフンなど) が含まれる場合、最小値を高くしすぎると本物の文字まで破棄されてしまう可能性があり、背景ノイズを判別する機能が制限されることがあります。

文字幅の最大値を使用

文字幅の最大値を制限するかどうかを指定します。この設定は、文字フラグメントを分割するか、マージするかを決定する場合に有効です。文字フラグメントを分割する必要がある場合は、[文字幅のタイプ] パラメータで使用する適切な方法を決定します。

0 = OFF (デフォルト) | この関数は、文字の文字領域の幅について、許容される最大値を考慮しません。
1 = ON | この関数は、文字領域の幅について、許容される最大値を考慮します。有効な場合、指定された値よりも広い幅を持つ文字は、幅が広すぎないように、いくつかに分割されます。

文字幅の最大値

文字の文字領域について、許容される最大の幅をピクセル単位で指定します (1 ～ 5000、デフォルト = 100)。

注意: この設定は、[文字幅の最大値を使用] パラメータが有効化されている場合のみ使用可能です。

文字の高さの最小値

文字領域の最小の高さをピクセル単位で指定します (1 ～ 1000、デフォルト = 3)。この値以上の高さを持つ文字がレポートの対象となります。この設定によって、背景ノイズまたはそのほかのテキスト以外の特徴をフィルタ処理することができます。

注意: 読み取るフォントに小さなテキストの特徴 (つまり、ピリオド、コロン、ハイフンなど) が含まれる場合、最小値を高くしすぎると本物の文字まで破棄されてしまう可能性があり、背景ノイズを判別する機能が制限されることがあります。

文字の高さの最大値を使用

この関数で、文字の高さの最大値を有効にするかどうかを指定します。この値の使い方には 2 通りあります。この値は、まず、垂直方向に隣り合うノイズや文字が縦に並んだ行を拒否するなどのために行全体を検出するときに使用します。また、この値を上回る高さを持つ文字は、この高さに合わせてトリミングされます。

0 = OFF (デフォルト) | 文字の高さの最大値を考慮しません。
1 = ON | 文字の高さの最大値を考慮します。

文字の高さの最大値

文字の文字領域について、許容される最大の高さをピクセル単位で指定します (1 ～ 5000、デフォルト = 100)。

注意: この設定は、[文字の高さの最大値を使用] パラメータが有効化されている場合のみ使用可能です。

最小文字アスペクト比を使用

文字のアスペクト比の最小許容可能値を考慮に入れるかどうかを指定します。アスペクト比＝文字列全体の高さ／文字列を囲む矩形の幅

0 = OFF | 文字のアスペクト比の最小許容可能値を考慮に入れません。
1 = ON (デフォルト) | 文字のアスペクト比の最小許容可能値を考慮に入れます。アスペクト比がこの値よりも小さい(幅が広すぎる)文字は、複数のセグメントに分割されます。

最小文字アスペクト比

1 文字につき許容できる最小アスペクト比 (0 ～ 500、デフォルト = 80) を指定します。この設定値は、文字の行の高さ全体を使用した最大文字幅を間接的に設定する際に使用することができます。この最大幅は、行の高さを [最小文字アスペクト比] の値で割った値と同じになります。このパラメータで許可される幅よりも広い文字フラグメントはマージされず、分割されて、複数のフラグメントを形成します。この文字フラグメントは、幅が広すぎないように [文字幅のタイプ] パラメータによって制御されます。

注意: この設定は、[最小文字アスペクト比を使用] パラメータが有効化されている場合のみ使用可能です。

角度範囲

角度のサーチ範囲 (0 ～ 45、デフォルト = 0) を度単位で指定します。

注意: テキスト行に角度の回転または傾きがある場合、その角度または傾きが各画像で一定の場合は、[領域] を設定してこれらのばらつきを補正します。0 を超える任意の値を指定すると、セグメントプロセスの処理時間が長くなります。

スキュー範囲

スキューのサーチ範囲 (0 ～ 45、デフォルト = 0) を度単位で指定します。

注意: テキスト行に角度の回転または傾きがある場合、その角度または傾きが各画像で一定の場合は、[領域] を設定してこれらのばらつきを補正します。0 を超える任意の値を指定すると、セグメントプロセスの処理時間が長くなります。

文字フラグメントマージモード

分割された文字フラグメントを結合して文字を形成するときのマージ (結合) 方法を指定します。2 つの文字フラグメントを 1 文字の一部としてみなすためにオーバーラップする必要があるかどうか、または、間に水平ギャップのある文字フラグメントを 1 文字の一部としてみなすかどうかを決定します。

1 = 要オーバラップ (デフォルト) | 文字フラグメントは、[文字フラグメントの最小オーバーラップ値] パラメータの値を基準にして水平にオーバーラップする必要があります。
2 = 最小文字間ギャップ値に設定 | 文字の断片と断片の間に水平方向のギャップがある場合、これらの断片がマージされ、文字が形成されることがあります。[最小文字間ギャップ値] パラメータで定義された値未満のギャップを持つ 2 つの断片はマージされます。
4 = 最小文字間ギャップ値/最大文字間ギャップ値に設定 | 文字の断片と断片の間に水平方向のギャップがある場合、これらの断片がマージされ、文字が形成されることがあります。2 つの断片をマージするかどうかは、[最小文字間ギャップ値] パラメータと [最大文字内ギャップ値] パラメータで定義された値に基づいて判断されます。

文字フラグメントの最小オーバーラップ値

2 つの文字断片が同じ文字の一部とみなされるためには、この文字断片が相互に水平方向にオーバーラップしていなければなりませんが、その最小の割合を指定します (0 ～ 100、デフォルト = 0)。デフォルト値 (0) は 1 ピクセル以上オーバーラップする任意の 2 文字の断片をマージします。これよりも大きい値の場合、文字断片はより多くオーバーラップする必要があります。一部の文字のペアを水平方向に意図的にオーバーラップさせるアプリケーションや (カーニングとも呼ばれます)、最適化段階において回転や傾きを完全に修正できなかった場合は (通常、印刷が一定ではないため)、デフォルト値が必要になります。

最大文字内ギャップ値

損傷している文字であっても、1 つの文字の中で起こり得る水平方向のギャップの最大サイズをピクセル単位で指定します (0 ～ 1000、デフォルト = 5)。

注意: 隣り合う文字間に発生するギャップが損傷した文字内に発生する可能性のあるギャップよりも常に広い、最も一般的なアプリケーションの場合は、[最小文字間ギャップ値] パラメータを [最大文字内ギャップ値] パラメータの値に 1 を足して設定します。例えば、文字の内部に水平ギャップが発生することのない場合は、[最大文字内ギャップ値] パラメータに 0 を設定し、[最小文字間ギャップ値] パラメータに 1 を設定します。

最小文字間ギャップ値

異なる文字に属するために、2 つの文字断片の間に必要な水平方向のギャップの最小サイズをピクセル単位で指定します (0 ～ 1000、デフォルト = 0)。このギャップは、ある文字の文字領域の右端から、その隣の文字の文字領域の左端までの距離です。2 つの断片の間のギャップがこの値よりも小さい場合、これらの断片は同じ文字の一部であるとみなされます。ただし、結合後の文字幅が広くなりすぎる場合は例外です ([文字幅の最大値] または [最小文字アスペクト比] パラメータの指定を参照)。

注意: 隣り合う文字間に発生するギャップが損傷した文字内に発生する可能性のあるギャップよりも常に広い、最も一般的なアプリケーションの場合は、[最小文字間ギャップ値] パラメータを [最大文字内ギャップ値] パラメータの値に 1 を足して設定します。例えば、文字の内部に水平ギャップが発生することのない場合は、[最大文字内ギャップ値] パラメータに 0 を設定し、[最小文字間ギャップ値] パラメータに 1 を設定します。

最小文字フラグメントサイズ

前景 (つまり、テキスト) ピクセルの最小値を指定します (0 ～ 1000、デフォルト = 15)。前景のピクセル値がこの値を超えていれば、その文字断片は文字の一部であるとみなされます。この値を設定する際は、本物のテキスト断片を保持できるくらい小さい値に設定する必要がありますが、同時に、背景ノイズから小さな断片を除外できるくらい大きくします。ドットマトリックステキストや、ピリオドなどの小さい文字を含むテキストについては、小さい値が必要になります。文字が複数の小さな断片に分割されにくい文字で形成された、途切れのないストロークテキストの場合は、大きい値が必要になります。

文字サイズの最小値

前景 (つまり、テキスト) ピクセルの最小値を指定します (0 ～ 5000、デフォルト = 30)。前景のピクセル値がこの値以上である 2 値化文字がレポートの対象となり、ピクセル値が少ない文字は破棄されます。この設定によって、背景ノイズまたはそのほかのテキスト以外の特徴をフィルタ処理することができます。

注意: 読み取るフォントに小さなテキストの特徴 (つまり、ピリオド、コロン、ハイフンなど) が含まれる場合、最小値を高くしすぎると本物の文字まで破棄されてしまう可能性があり、背景ノイズを判別する機能が制限されることがあります。

[詳細設定] パラメータ

セグメントプロセスに適用される追加パラメータを指定します。

正規化モード

画像の正規化に使用するモードを指定します。このモードは背景のばらつきを除去し、グレースケールの 256 の値 (0 ～ 255) をすべて使用します。

注意: この設定は、登録時と実行時の両方で同じでなければなりません。登録後にこの設定を変更すると、分類で問題が発生する原因となる可能性があります。

1 = なし | 正規化は行われません。
2 = グローバル | ローカルなばらつきではなく、ROI 全体の情報を使用して、グローバルな正規化が実行されます。このオプションは背景色とテキストが ROI 全体を通して一定であり、高速モードのときに最適に機能します。
4 = ローカル (デフォルト) | 画像を正規化するために、ROI 内のローカルな文字領域に関する情報を使用して、ローカルな正規化を実行します。このオプションは背景の勾配を除去します。グローバルモードが機能しない場合に使用する必要があります。
8 = ローカル詳細設定 | 画像を正規化するために、ROI 内のローカルな文字領域に関する情報を使用して、背景だけではなく、前景のコントラストの調整を含むローカルな正規化を実行します。このオプションは背景の勾配を除去し、一定でないテキストのコントラストを調整します。3 つのオプションのうち、実行時間が最も長くかかります。

ストローク幅フィルタを使用

残りの画像と同じストローク幅を持たないものをすべて、正規化された画像から削除するかどうかを指定します。このオプションは、近くの文字と接続する可能性のある薄い線などのテキスト以外の特徴について、一部の種類を削除することができます。このオプションによって、2 値化しきい値を超えて偽のフラグメントを作成したり、近くの文字と連結したりする可能性のある、低コントラストの背景のばらつきを除去することもできます。ただし、テキストに一定のストローク幅がない場合や、テキストに大きな可変コントラスト (ストロークの一部が非常に薄いなど) がある場合は、このオプションを使用することによって問題が発生することがあります。

注意: この設定は、登録時と実行時の両方で同じでなければなりません。登録後にこの設定を変更すると、分類で問題が発生する原因となる可能性があります。

0 = OFF | 画像にある残りの断片と同じストローク幅を持たないものをすべて、画像から削除しません。
1 = ON (デフォルト) | 画像にある残りの断片と同じストローク幅を持たないものをすべて、画像から削除します。

境界フラグメントを無視

ROI の境界線に接触する断片をすべて、完全に無視するかどうかを指定します。ラベルのエッジなど、ROI の範囲に含まれる可能性のあるテキスト以外の特徴については、このような断片を無視することが有用です。

注意: 断片が、文字領域の境界からテキストのメインラインまで伸びている場合、この断片は 1 つの文字とみなされます。このパラメータが有効化されているとき、除外されるテキストのメインラインまで断片が伸びていてはいけません。

0 = OFF (デフォルト) | 境界線の断片を無視しません。
1 = ON | 境界線の断片を無視します。

2値化しきい値

正規化された画像において、テキストと背景の間で画像をバイナリ化するしきい値の計算に使用します。単位はパーセンテージ (0 ～ 100、デフォルト = 50) で指定します。例えば、デフォルト設定の 50% は約 128 (0 ～ 255 のグレースケール範囲で) の 2 値化しきい値を生成します。このとき、0 は白いテキスト上の黒と同じで、100 は黒いテキスト上の白と同じです。50％ 未満の値を使用すると 2 値化しきい値が変更され、テキストがより少なく、背景がより広くなります。一方、50% より大きい値を使用すると、背景がより少なく、テキストがより多くなります。通常、デフォルト値は画像を正しく 2 値化しますが、背景テクスチャがある場合、またはそのほかの背景のばらつきがある場合は、この値を小さくすることで背景のばらつきを補正することができます。

注意: この設定は、登録時と実行時の両方で同じでなければなりません。登録後にこの設定を変更すると、分類で問題が発生する原因となる可能性があります。

文字フラグメントのコントラストしきい値

正規化された画像のしきい値に対するコントラストの最小値を、断片全体のグレースケールレベルで指定します (0 ～ 255、デフォルト = 30)。断片のコントラストがこの値を超えていれば、その断片は文字の一部であるとみなされます。断片の各前景ピクセルは常にしきい値を満たすことを保証されますが、断片のすべてのピクセルがしきい値に非常に近いと、断片はテキストではなく、単にノイズとなる可能性が高くなります。値 0 では低コントラストの断片が拒否されるのを妨ぐことができます。

メインラインまでの最大フラグメント距離

テキストを貫通して、水平方向に伸びる「メインライン」から垂直に削除する断片となる距離を、 文字の高さの割合として指定します (0 ～ 1000、デフォルト = 0)。本来、文字は最適化された後に (角度方向および傾きを補正する段階)、水平の直線に沿って配置されることが予測されています。しかし、文字に「ジッタ」が見られることがあり、文字位置の縦方向に変動がある可能性があります。デフォルト設定では、これらの文字フラグメントは文字の「メインライン」に沿っていないため、拒否されてしまいます。このパラメータ設定を大きくすることによって、文字の「メインライン」に沿っていないフラグメントを保持することができます。

セグメント解析モード

文字の最適なセグメントを実行する文字解析モードのタイプを指定します。このパラメータは、グループステージ以外の追加の解析を実行するかどうかを決定します。

1 = 最小 | 基本のセグメント解析を実行します。グループステージ解析のみ実行します。
2 = 標準 (デフォルト) | 最適なセグメントを決定するために、文字の間隔を含め、行全体の追加の解析を実行します。有効になっている場合、[最小ピッチ値]、[文字のピッチタイプ]、[文字ピッチ位置] パラメータの影響を受けます。

最小ピッチ値

2 つの文字の間に発生する可能性のあるピッチの最小値をピクセル単位で指定します (0 ～ 1000、デフォルト = 0)。ピッチは [文字ピッチ位置] パラメータに基づいて計算されます。2 つの断片の間のピッチがこれよりも小さい場合、これらの断片は同じ文字の一部であるとみなされます。ただし、結合後の文字幅が広くなりすぎる場合は例外です（[文字幅の最大値] または [最小文字アスペクト比] パラメータの指定を参照）。

注意: [セグメント解析モード] パラメータが [最小] に設定されている場合、このパラメータは無効になります。

文字ピッチ位置

2 つの連続する文字間のピッチの測定方法を指定します。ピッチは、隣り合う文字の対応する点と点の間の (おおよその) 距離として定義されます。ある文字の末尾から隣の文字の始めまでの距離 (文字間ギャップ) ではありません。文字に異なる幅がある固定ピッチフォントでは、通常、適切なピッチメトリクスが使用されている場合のみ、ピッチは一定の値を持ちます。

注意: [セグメント解析モード] パラメータが [最小] に設定されている場合、このパラメータは無効になります。

1 = 自動 (デフォルト) | 未知のメトリクスが使用されていることを示します。適切なピッチはその他のピッチ位置のいずれかである可能性もありますし、一定のピッチ位置がない可能性もあります (プロポーショナルピッチフォントの場合)。また、OCRMax 関数によって適切なピッチメトリクスが決定されます。
2 = 左－左 | ある文字の文字領域の左端から隣の文字の文字領域の左端までの距離を測定したピッチを指定します。 注意: 「左」および「右」という用語は、ROI により定義された座標を基準にしています。つまり、「右」は正の X 方向です。
4 = 中央－中央 | ある文字の文字領域の中央から隣の文字の文字領域の中央までの距離を測定したピッチを指定します。
8 = 右－右 | ある文字の文字領域の右端から隣の文字の文字領域の右端までの距離を測定したピッチを指定します。 注意: 「左」および「右」という用語は、ROI により定義された座標を基準にしています。つまり、「右」は正の X 方向です。

文字のピッチタイプ

連続する文字の文字間隔に 1 つの固定値を確保するか、特定の文字によって異なるのかを指定します。ピッチは、隣り合う文字の対応する点と点の間の (おおよその) 距離として定義されます。ある文字の末尾から隣の文字の始めまでの距離 (文字間ギャップ) ではありません。

注意: [セグメント解析モード] パラメータが [最小] に設定されている場合、このパラメータは無効になります。

1 = 自動 (デフォルト)

ピッチタイプは不明だが、固定、またはプロポーショナルのどちらかで、可変ではないことを表します。OCRMax 関数によって最適なタイプが決定されます。

2 = 固定

ピッチが固定、つまり任意の 2 文字のピッチは一定であることを表します。たとえば、文字矩形の幅は関係ありません。このピッチは、[文字ピッチ位置] パラメータを基準に測定されます。

4 = 比例

ピッチがプロポーショナルである、つまり任意の 2 文字のピッチはその文字によって異なることを表します。例えば、2 つの小文字「i」の間の距離は、2 つの大文字「M」の間の距離よりもかなり少なくなります。

注意:
  • ピッチの計測値は文字列全体を通して一定ではありませんが、通常、文字間ギャップはほぼ一定です (文字間ギャップとは、ある文字の文字領域の右端から、隣の文字の文字領域の左端までの距離です)。
  • 「左」および「右」という用語は、ROI により定義された座標を基準にしています。つまり、「右」は正の X 方向です。

8 = 可変

文字列全体で、文字から文字までのメトリックが一定ではなく (たとえば、文字の配置がばらばらである)、ピッチは固定でもプロポーショナルでもないことを表します。OCRMax 関数でピッチのタイプを特定することは推奨しません。

注意: [変数] ピッチは [自動] とは異なります。[自動] は、ピッチは固定またはプロポーショナルのどちらかではあるが、不明であることを前提にしています。

出力画像グラフィックス

表示する出力画像の種類を指定します。

注意: このパラメータは、[標準] タブの [出力画像グラフィックス] パラメータを一時的に上書きします。[セグメント] タブを終了すると、[標準] タブの [出力画像グラフィックス] パラメータの設定が復元されます。

0 = 入力画像 (デフォルト) | 入力画像が表示されます。
1 = 正規化画像 | 正規化された画像が表示されます。
2 = バイナリ画像 | バイナリ画像が表示されます。

診断の表示

画像に表示するグラフィックス診断データのタイプを指定します。

0 = 非表示 (デフォルト) | OCRMax 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックス診断データが表示されません。
1 = 不合格文字のみ表示 | 不合格になった文字の周囲領域が赤色で描画され、テキストのメインラインは青色の矩形で囲まれます。 Closed 例
2 = 保存されたフラグメントのみ表示 | 保存されたフラグメントの周囲領域がシアンで描画され、テキストのメインラインは青色の矩形で囲まれます。 Closed 例
3 = 不合格フラグメントのみ表示 | 不合格になったフラグメントの周囲領域が黄色で描画され、テキストのメインラインは青色の矩形で囲まれます。 Closed 例
4 = すべて表示 | 保存された文字 (緑)、不合格文字 (赤)、保存されたフラグメント (シアン)、不合格フラグメント (黄)、テキストのメインライン (青)、およびテキストの拡張メインライン (マゼンタ) の周囲領域が描画されます。

[フォントの登録] タブ

[フォントの登録] タブを使用して、文字の登録、表示、名前の変更、および削除を実行できます。タブは、登録フォントを管理する [文字] と、文字登録パラメータを定義する [登録] の 2 つのグループに分かれています。

注意:
  • このタブのコントロールは、[標準] タブの [登録モード]、[登録文字列]、および [フォントの登録] パラメータにはリンクされていません。
  • [フォントの登録] タブ内では、ROI を調整でき ([グラフィックスの編集] ボタンが有効)、ROI が変更されるとセグメンテーショングラフィックス (文字領域) が更新されます。
  • マルチバイト文字名 (漢字など) はサポートされていません。マルチバイト文字を登録できますが、文字に指定する名前はシングルバイト名にする必要があります。

[文字] グループボックスコントロール

登録後、各登録文字はツリーで表示できます。ツリーでは、文字はフォルダとラベルが割り当てられ、それに応じてグループ化されます (文字が一致するラベルを持つ場合)。

  • ルートのフォントフォルダを選択すると、右側のパネルにフォント内のすべての文字が表示されます。文字は、下にラベルの付いたアイコンとして表示されます。
  • 文字フォルダを選択すると、右側のパネルにその文字の登録インスタンスがすべて表示されます。文字は、下にラベルの付いたアイコンとして表示されます。
  • 文字の登録インスタンスを選択すると、右側のパネルに合わせてズームされた文字が表示されます。

ヒント: OCRMax 関数に各文字の複数の登録インスタンスを実行時に読み取るように指定すると、関数は類似の文字の種類をより正確に判別できます。ただし、同じ文字のインスタンスの複数登録には、利点と欠点があります。複数のインスタンスを登録する利点は、特に、分類を間違えやすいテキスト (8 と B など) を読み取るときに、より高度な分類パフォーマンスを期待できる点です。複数のインスタンスを登録する欠点は、関数の実行時間が減少する、複数の登録インスタンスでは最高得点だけでなく 2 番目に高い得点も改善するため、信頼性得点が減少することがある、間違った文字が登録されることがあるといった点です。

  • [インポート]: [開く] ダイアログを起動します。このダイアログでは、OCRMax データファイル (*.ocm) として保存されたフォントをインポートできます。
  • エクスポート: [名前を付けて保存] ダイアログを起動します。このダイアログでは、フォントを OCRMax データファイル (*.ocm) として保存できます。
  • 名前変更: 項目を選択した後にクリックして、名前を変更します。ツリーまたは右側のリストパネル内の要素の名前を変更できます。

注意: 文字グループの名前を変更すると、グループ内のすべての文字に新しいラベルが割り当てられます。単一文字の名前を変更すると、新しいラベルがその単一の選択された文字に割り当てられます。文字はツリー内の新しいグループまたは異なるグループに移動されます。

  • [削除]: 項目を選択した後にクリックして、フォントから削除します。ツリーまたは右側のリストパネル内の要素の名前を変更できます。

注意:フォントフォルダを削除すると、フォントがクリアされ、すべての文字が削除されます。文字グループを削除すると、削除したグループのラベルと一致するラベルを持つ文字はすべて削除されます。

[登録] グループボックス

文字を登録するには、事前に文字が正しくセグメンテーションされている必要があります。

  • すべての文字をフォントに追加: ROI 内のすべての文字を登録するように指定します。登録対象の文字を [文字列の登録] テキスト入力ボックスに入力してから、[登録] ボタンをクリックします。[文字列の登録] テキスト入力ボックスの文字数は、セグメンテーションされた文字の数に一致している必要があります。
  • 新規文字をフォントに追加: ROI 内の新しい文字のみを登録するように指定します。登録対象の文字を [文字列の登録] テキスト入力ボックスに入力してから、[登録] ボタンをクリックします。[文字列の登録] テキスト入力ボックスの文字数は、セグメンテーションされた文字の数に一致している必要があります。
  • 個々の文字をフォントに追加: ROI 内の特定の文字を登録するように指定します。このオプションを選択すると、[文字列の登録] テキスト入力ボックスは無効になり、[登録] ボタンをクリックすると [個々の文字をフォントに追加] ダイアログが起動します。このダイアログでは、ROI の展開された画像と、セグメンテーションされた各文字の下にラベルとテキスト入力ボックスが示されます。ラベルは、その文字に現在関連付けられているシンボルです (「?」は、不明または未登録の文字を示します)。ラベルの下にテキスト入力ボックスがあります。セグメンテーションされた各文字のラベルをテキスト入力ボックスに入力します。テキスト入力ボックスを空のままにすると、文字は再登録されません。[登録] ボタンをクリックしてダイアログを閉じます。
  • 文字列の登録: 登録するテキスト文字列を指定します。[文字列の登録] テキスト入力ボックスの文字数は、セグメンテーションされた文字の数に一致している必要があります。
  • [登録] ボタン: 登録をアクティブ化します。

[フィールド化] タブ

[フィールド化] タブでは、OCRMax 関数の [フィールド文字列] 引数と [フィールド定義] 引数をグラフィカルに作成および編集することができます。結果の値は、リテラル文字列として関数に挿入されます。

[フィールド化] は、文字列を確認し修正する機能を提供し、一連の最適一致した有効な文字列を返します。[フィールド化] には 2 通りの基本的な用途があります。

  • OCR の結果の検証。[フィールド文字列] および [フィールド定義] パラメータに基づいて、返された文字列が正しいかどうかを判断します。
  • OCR の結果の修正。返された文字列が許容可能な結果リストにない場合は、返された文字列に最も近い、そのフィールドで許可されている許容文字列の検索を試みます。

フィールド化の標準的な使用例では、文字列にプレフィックス文字またはサフィックス文字、あるいはその両方が含まれている場合に、フィールド形式を使用してプレフィックス/サフィックス文字を無視します。この場合、[フィールド文字列] と [フィールド定義] によって ROI 内の文字列位置のオフセットが決まります。

フィールド文字列

文字列に含まれる文字数を指定します。フィールド文字列エントリには、(A～Z)、(a～z)、(0～9)、ハイフン（-）、ドット（.）、スペース（ ）など、[テキスト入力] ダイアログのすべての文字を使用できます。

フィールド文字列の各文字は、0 ～ 31 のインデックス付きフィールド位置に対応します。フィールド文字列には、読み取りを成功させたい文字列の文字と少なくとも同じ数の位置が含まれている必要があります (つまり、10 文字存在し、フィールド文字列で 9 文字のみ指定した場合は、最適一致が 9 つ返されます。しかし、8 文字存在し、フィールド文字列で 9 文字指定した場合、関数は #ERR を返します)。デフォルトでは、フィールド文字列の各位置は、アスタリスク（*）か英数字の「ワイルドカード」で示されます。これは、文字列のどの位置でもすべての文字が有効であることを意味します。

ただし、フィールド文字列の個別の位置は、その位置に一部の文字しか想定されないように制限することができます。すると、対象外の文字は読み取り時に考慮されないため、全体的な性能と信頼性が向上します。

定義済みのフィールド文字列エントリは、次のとおりです。

フィールド文字列 エントリ | 説明 | 有効な文字
* | ワイルドカード | フォントに含まれる任意の登録文字です。
N | 数字 | 0123456789
A | 大文字の英字 | ABCDEFGHIJKLMNOPQRSTUVWXYZ
a | 小文字の英字 | abcdefghijklmnopqrstuvwxyz
H | 16 進値（大文字の英字と数字） | 0123456789ABCDEF
h | 16 進値（小文字の英字と数字） | 0123456789abcdef
O | 8 進値 | 01234567

注意:

  • フィールド文字列のある位置を特定の文字に制限する場合は、その文字を入力してください。文字はフォントに登録されている必要があります。また、[フィールド定義] パラメータを使用して再割り当てしない限り、上記の定義済みフィールド文字列エントリの文字を使用することはできません。
  • スペースを含む文字列を読み取るには、フィールド文字列にスペースを含めます。その位置の対応するフィールド文字列エントリがアスタリスク（*）の場合、ReadText 関数はスペースを読み取りません。
  • [標準] タブの [フィールド文字列] パラメータがセル参照として定義されている場合、[フィールド化] タブの [フィールド文字列] オプションは無効になり、セル参照の現在の値が表示されます。
Closed フィールド文字列の例 1

フィールド文字列が「**********AN」の場合、1～10 番目のフィールド文字列位置ではフォントに含まれるすべての文字が有効です。ただし、11 番目の位置は、読み取り時に大文字の英字だけが想定されます。また、12 番目の位置は、数字だけが想定されます。

Closed フィールド文字列の例 2

フォントには、0～9 の数字と / だけが含まれます。フィールド文字列が「NN/NN/NN」の場合、1、2、4、5、7、および 8 番目の位置では数字だけが想定されています。また、3 および 6 番目の位置ではスラッシュ（/）だけが想定されています。

ただし、フィールド文字列が「NN/NN/AA」の場合は、フォントに英字が含まれていないため、#ERR が返されます。

フィールド定義

必要に応じ、フィールド定義設定を使用してフィールド文字列のユーザ定義エントリを作成できます。このエントリがフィールド文字列に含まれると、このエントリの挿入位置で有効となる文字のリストが限定されます。いくつかの定義済みフィールド定義があり、ユーザ定義のフィールド定義を追加できます。定義済み定義はグレーのテキストで表示され、削除も編集もできず、有効または無効の切り替えのみ可能です。ユーザ定義の定義は黒色のテキストで表示され、追加、削除、または編集できます。フィールド定義を追加するには、[新規追加] ボタンをクリックし、文字のアイコンを割り当ててから、定義を文字に割り当てます。

注意:
  • ユーザ定義の定義の数は、OCRMax 関数の数式の長さ (249) に制限されています。
  • OCRMax プロパティシートが閉じられたときに無効となったユーザ定義の定義は削除され、関数のプロパティシートが再度開かれたときには使用できません。
  • [標準] タブの [フィールド定義] パラメータがセル参照として定義されている場合、[フィールド化] タブの [フィールド定義] オプションは無効になり、セル参照の現在の値が表示されます。

フィールド定義エントリのために示す文字は、フォントに含まれている必要があります。例:#=123 は、ユーザ登録フォントに 1、2、3 が含まれる場合に有効です。ただし、#=123 は、フォントに 1、2、3 が含まれない場合は無効です。

注意: 定義済みのエントリ（*, A, a, N, H, h, O）をフィールド定義パラメータで使用すると、新しい定義で有効な文字のリストが再割り当てされます。

Closed フィールド定義の例 1

フィールド定義の値が「#=123;$=3456;%=789」でフィールド文字列が「#$%*******」の場合、1 番目の位置では 1、2、または 3 だけが、2 番目の位置では 3、4、5、または 6 だけが、3 番目の位置では 7、8、または 9 だけが有効です。また、4～10 番目の位置ではフォントに含まれるすべての文字が有効です。

Closed フィールド定義の例 2

フィールド定義の値が「#=123;$=3456;%=789, A=A」でフィールド文字列が「#$%******A」の場合、1 番目の位置では 1、2、または 3 だけが、2 番目の位置では 3、4、5、または 6 だけが、3 番目の位置では 7、8、または 9 だけが有効です。また、4～9 番目の位置ではフォントに含まれるすべての文字が有効です。フィールド定義「A=A」は定義済みのフィールド文字列エントリを再割り当てするため、10 番目の位置では A だけが想定されています。

フィールド定義のコントロール

  • フィールド文字列内の文字のみにマッチを行う: 関数が、フィールド文字列によって示されている文字に対してのみ文字の比較を試みるかどうかを指定します。

注意: [検査モード] が [認識と照合] に設定されている場合、このパラメータは [マッチ文字列] パラメータに指定されたテキスト文字列に対して比較されます。

  • 可変長文字列: 定義されたフィールド文字列が読み取りテキスト文字列全体の中の部分文字列であるかどうかを指定します。部分文字列が検出された場合は、最適一致の部分文字列が返されます。

注意: [外部設定] パラメータが OCRMaxSettings 関数への参照として設定されている場合、[フィールド文字列内の文字のみにマッチを行う] および [可変長文字列] パラメータは無効になります。

  • 最小長: [可変長文字列] パラメータが有効な場合、このパラメータは許容可能な文字列長の最小値を指定します (0 ～ 100、デフォルト = 1)。
  • 最大長: [可変長文字列] パラメータが有効な場合、このパラメータは許容可能な文字列長の最大値を指定します (0 ～ 100、デフォルト = 25)。
  • 最大開始インデックス値: [可変長文字列] パラメータが有効な場合、このパラメータは考慮対象となる、フィールド形式の部分列を指定します。部分列はこのインデックス値を超えない位置で開始する必要があります (0 ～ 100、デフォルト = 100)。
  • 最小終了インデックス値: [可変長文字列] パラメータが有効な場合、このパラメータは考慮対象となる、フィールド化の部分列を指定します。部分列はこのインデックス値以上の位置で終了する必要があります (0 ～ 100、デフォルト = 0)。

[結果] タブ

[結果] タブは、総合結果と各文字の得点を表示します。[全体結果] と [文字結果] の 2 つのセクションに分かれています。

全体結果

  • ステータス: 関数の総合結果が合格か不合格かを表示します。

文字結果

  • 文字: その位置で読み取った文字を表示します。
  • ステータス: 読み取り文字のステータス ([読み取り (Bad)]、[読み取り (Good)]、[無視]、[コンフュージョン]、[ミスマッチ]、[コンフュージョンミスマッチ]、[No read] または [検証失敗]) を表示します。
  • [読み取り (Bad)]: 良好な読み取りとみなされる [アクセプトしきい値] を上回る十分に高い得点の文字ではありません。
  • [読み取り (Good)]: 関数はこの位置の文字を正常に読み取りました。
  • [無視]: フィールド形式が有効な場合、フィールド形式文字列が指定され、それが関数によって読み取られた文字列より短いと、文字列の先頭または末尾の文字がセグメンテーションされますが (黄色)、総合結果には含まれません。例えば、フィールド形式定義が ABC の場合、関数によって読み取られた文字列が「12ABC34」であると、「1234」は無視されます。
  • [コンフュージョン]: 関数は、良好な読み取りとして十分に得点の高い文字を識別しました ([アクセプトしきい値] パラメータ値を上回る)。ただし、得点が非常に近い別の文字があり ([コンフュージョンしきい値] パラメータ値以内)、関数が正しい文字を選択したかどうかは確実ではありません (コンフュージョン = (1 番目の得点 - 2 番目の得点)/信頼性しきい値)。
  • [ミスマッチ]: 関数は、フィールド化に一致しないどの文字よりも非常に得点の高い、フィールド形式に一致しない文字を検出しました。フィールド形式に一致しない文字は、この位置に印刷されることが多くあります。このステータスを返すには、フィールド形式が有効になっている必要があります。

注意: ミスマッチステータスは、OCRMaxSettings 関数が使用されており、その関数の [フィールド化していない文字を無視] が無効になっている場合のみ返されます。

  • コンフュージョンミスマッチ: コンフュージョンとミスマッチの両方の条件を満たす文字を検出しました。
  • [検証失敗]: OCRMaxSettings 関数が使用されており、その関数の [追加の文字検証をスキップ] パラメータが無効の場合、関数は追加の検証手順を通じて文字を解析し、関数が誤った読み込みを生成しないように保証します。
  • 得点: 読み取った文字がフォントデータベース内の登録文字にどのぐらい近いかを測定した得点を表示します。
  • コンフュージョン: 次の最適一致の文字を表示します。
  • コンフュージョン得点: 次の最適一致と比較した場合に、選択した一致がどのぐらい確実かを示す測定値を表示します。

[診断] タブ

[診断] タブには、OCRMax 関数による ROI 内の文字のセグメンテーション方法に関する情報が表示されます。このデータは、調整するパラメータ、調整する量、文字や文字フラグメントが正しくセグメント化されていないかどうかを判断する際に有用です。このタブは、診断データのグラフィックス表示を指定する [診断の表示] パラメータとともに使用します。

注意: このタブは、パラメータを変更した場合や、新しい画像を取り込み/ロードすると自動的に更新されます。

メインラインのデータ

  • [メインライン角度]: ROI に対する文字領域の、角度方向の計測値を角度で表示します。
  • [文字スキュー]: ROI に対する文字領域の、角度スキューの計測値を角度で表示します。
  • [文字ピッチ]: 文字の最小および最大ピッチ測定値をピクセル単位で表示します。
  • [文字間ギャップ]: 文字間ギャップの最小および最大測定値をピクセル単位で表示します。
  • [文字内ギャップ]: 文字内ギャップの最小および最大測定値をピクセル単位で表示します。

合格した文字

  • [幅]: 合格した文字の幅の最小および最大測定値をピクセル単位で表示します。
  • [高さ]: 合格した文字の高さの最小および最大測定値をピクセル単位で表示します。
  • [サイズ]: 合格した文字サイズの最小および最大測定値をピクセル単位で表示します。

除外した文字

  • [幅]: 除外された文字の最小および最大測定幅をピクセル単位で表示します。
  • [高さ]: 除外された文字の高さの最小および最大測定値をピクセル単位で表示します。
  • [サイズ]: 除外された文字サイズの最小および最大測定値をピクセル単位で表示します。

注意: 除外された文字がない場合、#ERR が表示されます。

合格したフラグメント

  • [サイズ]: 合格したフラグメントのサイズの最小および最大測定値をピクセル単位で表示します。
  • [コントラスト]: 合格したフラグメントのコントラストの最小および最大測定値を割合 (%) で表示します。
  • [メインラインまでの距離 (%)]: 合格したすべてのフラグメントの最大 Y 距離を、メインラインの高さの割合 (%) で表示します。

除外したフラグメント

  • [サイズ]:除外されたフラグメントのサイズの最小および最大測定値をピクセル単位で表示します。
  • [コントラスト]:除外されたフラグメントのコントラストの最小および最大測定値を割合 (%) で表示します。
  • [メインラインまでの距離 (%)]:除外されたすべてのフラグメントの最大 Y 距離を、メインラインの高さの割合 (%) で表示します。

OCRMax 関数関数の結果出力

戻り値 | 読み取られた文字列を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | OCRMax 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

OCRMax 関数データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

文字列 | GetString(OCRMax) | 参照されているデータ構造体のテキスト文字列を返します。
文字列合格 | GetPassed(OCRMax) | 参照されているデータ構造体の文字列全体の合格/不合格ステータスを返します。
インデックス |  |
文字 | GetChar(OCRMax, インデックス) | 参照されているデータ構造体のインデックス付き文字を返します。
得点 | GetScore(OCRMax, インデックス) | 参照されているデータ構造体のインデックス付き文字の一致得点 (0～100) を返します。
合格 | GetPassed(OCRMax, インデックス) | 参照されているデータ構造体のインデックス付き文字の合格/不合格ステータスを返します。
2 番目文字 | GetScore(OCRMax, インデックス 0, [インデックス 1]) | 2 番目に高い得点の文字を返します。
2 番目得点 | GetScore(OCRMax, インデックス 0, [インデックス 1]) | 2 番目に高い得点の文字の得点を返します。
文字差 |  | インデックス付き文字の得点と 2 番目の得点値の差を返します。

関連項目

  • OCRMax 関数について
  • OCRMax 関数の設定方法
  • [オートチューン] ダイアログ
  • OCRMaxSettings 関数
  • OCRMaxAutoTune 関数
  • OCRMax データアクセス関数
  • TransOCRMaxToWorld 関数
  • プロパティシートの使用方法


OCRMaxAutoTune 関数

ビジョンツール → 文字照合/認識

In-Sight 関数リファレンス

参照されている OCRMax 関数の [オートチューン] ダイアログ への外部アクセスを提供します。この関数を使用すると、[オートチューン] ダイアログを使用して、VisionView オペレータインタフェースパネルなどのリモートデバイスから調整できるようになります。ボタンコントロールを押すと、参照されている OCRMax 関数の [オートチューン] ダイアログが起動します。

注意: [オートチューン] ダイアログは In-Sight ビジョンシステムがオンラインの場合は使用できません。

  • OCRMaxAutoTune 関数の入力パラメータ
  • OCRMaxAutoTune 関数の結果出力
  • 関連項目

OCRMaxAutoTune 関数関数の入力パラメータ

OCRMaxAutoTune 関数 (

ラベル,

OCRMax 関数

)

ラベル | スプレッドシートに表示される名前を指定します。
OCRMax 関数 | OCRMax 関数の [image] データ構造体への参照を指定します。

OCRMaxAutoTune 関数関数の結果出力

戻り値 | [オートチューン] ダイアログが表示されている場合は値 1 を返し、そうでない場合は 0 を返します。
戻り値 | ラベル付きボタン [image] コントロール。

関連項目

  • [オートチューン] ダイアログ
  • OCRMax 関数
  • OCRMaxSettings 関数
  • OCRMax データアクセス関数
  • OCRMax 関数の設定方法
  • プロパティシートの使用方法


OCRMaxSettings 関数

ビジョンツール → 文字照合/認識

In-Sight 関数リファレンス

OCRMax 関数のセグメント化、分類の詳細設定、フィールド化といった外部設定値。実行時に調整できます。この関数は設定値をプログラムで制御し、リモートデバイスからのパラメータの調整をサポートします。

  • OCRMaxSettings 関数の入力パラメータ
  • OCRMaxSettings 関数の出力
  • 関連項目

OCRMaxSettings 関数関数の入力パラメータ

OCRMaxSettings 関数 (

セグメント化.文字の極性,

セグメント化.文字幅のタイプ,

セグメント化.文字幅の最小値,

セグメント化.文字幅の最大値を使用,

セグメント化.文字幅の最大値,

セグメント化.文字の高さの最小値,

セグメント化.文字の高さの最大値を使用,

セグメント化.文字の高さの最大値,

セグメント化.最小文字アスペクト比を使用,

セグメント化.最小文字アスペクト比,

セグメント化.角度範囲,

セグメント化.スキュー範囲,

セグメント化.文字フラグメントマージモード,

セグメント化.文字フラグメントの最小オーバーラップ値,

セグメント化.最小文字内ギャップ値,

セグメント化.最小文字間ギャップ値,

セグメント化.最小文字フラグメントサイズ,

セグメント化.文字サイズの最小化,

セグメント詳細設定.正規化モード,

セグメント詳細設定.ストローク幅フィルタを使用,

セグメント詳細設定.境界フラグメントを無視,

セグメント詳細設定.2 値化しきい値,

セグメント詳細設定.文字フラグメントのコントラストしきい値,

セグメント詳細設定.メインラインまでの最大フラグメント距離,

セグメント詳細設定.セグメント解析モード,

セグメント詳細設定.最小ピッチ値,

セグメント詳細設定.文字ピッチ位置,

セグメント詳細設定.文字のピッチタイプ,

分類の詳細設定.分類テンプレートサイズ幅,

分類の詳細設定.分類テンプレートサイズの高さ,

分類の詳細設定.文字のアスペクト比を保持,

分類の詳細設定.追加の文字検証をスキップ,

分類の詳細設定.画像前処理,

フィールド化.フィールド化していない文字を無視,

フィールド化.文字列長,

フィールド化.最大文字列長,

フィールド化.最小文字列長,

フィールド化.最初にフィールド化した最大インデックス値,

フィールド化.最後にフィールド化した最小インデックス値

)

セグメント化

セグメント分割の実行に使用されるパラメータ設定を指定します。

文字の極性

文字幅の最大値を制限するかどうかを指定します。

注意: 関数のパフォーマンスを改善するには、テキストの極性を指定します。

1 = 黒 (白い背景) | テキストの極性は、白い背景に黒い文字です。
2 = 白 (黒い背景) | テキストの極性は、黒い背景に白い文字です。
4 = 自動 (デフォルト) | この関数は、テキストと背景の極性を自動的に決定します。

文字幅のタイプ

フォントの文字幅の変動方法を指定します。これにより、文字フラグメントをマージするか、分割するかが決定されます。

注意: 文字幅は文字領域 (例: インクの境界ボックス) の幅です。ROI ではありません (ROI には通常、文字矩形のまわりのパディングも含まれます)。

1 = 自動 (デフォルト) | 文字の幅は不明です。このフォントの幅は固定、またはプロポーショナルである可能性があります。指定した最大文字幅よりも広い文字フラグメントは、関数によって決定された文字フラグメントを分割する最適な位置に基づき、個々の文字に分割されます。各文字の幅が同じになるとは限りません。
2 = 固定 | フォントの文字領域はすべて同じ幅をしています。指定した最大文字幅よりも広い文字フラグメントは、個々の文字に分割されます。各文字の幅は同じになります。
4 = 変数 | フォントの文字の文字領域の幅は一定ではない可能性があります。指定した最大文字幅よりも広い文字フラグメントは、関数によって決定された文字フラグメントの分割に最適な位置に基づき、個々の文字に分割されます。各文字の幅が同じになるとは限りません。

文字幅の最小値

文字領域の最小の幅をピクセル単位で指定します (1 ～ 1000、デフォルト = 3)。この値以上の幅を持つ文字がレポートの対象となります。この設定によって、背景ノイズまたはそのほかのテキスト以外の特徴をフィルタ処理することができます。

文字幅の最大値を使用

文字幅の最大値を制限するかどうかを指定します。この設定は、文字フラグメントを分割するか、マージするかを決定する場合に有効です。文字フラグメントを分割する必要がある場合は、[文字幅のタイプ] パラメータで使用する適切な方法を決定します。

0 = OFF (デフォルト) | この関数は、文字の文字領域の幅について、許容される最大値を考慮しません。
1 = ON | この関数は、文字領域の幅について、許容される最大値を考慮します。有効な場合、指定された値よりも広い幅を持つ文字は、幅が広すぎないように、いくつかに分割されます。

文字幅の最大値

文字の文字領域について、許容される最大の幅をピクセル単位で指定します (1 ～ 5000、デフォルト = 100)。

注意: この設定は、[文字幅の最大値を使用] パラメータが有効化されている場合のみ使用可能です。

文字の高さの最小値

文字領域の最小の高さをピクセル単位で指定します (1 ～ 1000、デフォルト = 3)。この値以上の高さを持つ文字がレポートの対象となります。この設定によって、背景ノイズまたはそのほかのテキスト以外の特徴をフィルタ処理することができます。

文字の高さの最大値を使用

この関数で、文字の高さの最大値を有効にするかどうかを指定します。この値の使い方には 2 通りあります。この値は、まず、垂直方向に隣り合うノイズや文字が縦に並んだ行を拒否するなどのために行全体を検出するときに使用します。また、この値を上回る高さを持つ文字は、この高さに合わせてトリミングされます。

0 = OFF (デフォルト) | 文字の高さの最大値を考慮しません。
1 = ON | 文字の高さの最大値を考慮します。

文字の高さの最大値

文字の文字領域について、許容される最大の高さをピクセル単位で指定します (1 ～ 5000、デフォルト = 100)。

注意: この設定は、[文字の高さの最大値を使用] パラメータが有効化されている場合のみ使用可能です。

最小文字アスペクト比を使用

文字のアスペクト比の最小許容可能値を考慮に入れるかどうかを指定します。アスペクト比＝文字列全体の高さ／文字列を囲む矩形の幅

0 = OFF | 文字のアスペクト比の最小許容可能値を考慮に入れません。
1 = ON (デフォルト) | 文字のアスペクト比の最小許容可能値を考慮に入れます。アスペクト比がこの値よりも小さい(幅が広すぎる)文字は、複数のセグメントに分割されます。

最小文字アスペクト比

1 文字につき許容できる最小アスペクト比 (0 ～ 500、デフォルト = 80) を指定します。この設定値は、文字の行の高さ全体を使用した最大文字幅を間接的に設定する際に使用することができます。この最大幅は、行の高さを [最小文字アスペクト比] の値で割った値と同じになります。このパラメータで許可される幅よりも広い文字フラグメントはマージされず、分割されて、複数のフラグメントを形成します。この文字フラグメントは、幅が広すぎないように [文字幅のタイプ] パラメータによって制御されます。

注意: この設定は、[最小文字アスペクト比を使用] パラメータが有効化されている場合のみ使用可能です。

角度範囲

角度のサーチ範囲 (0 ～ 45、デフォルト = 0) を度単位で指定します。

注意: テキスト行に角度の回転または傾きがある場合、その角度または傾きが各画像で一定の場合は、[領域] を設定してこれらのばらつきを補正します。0 を超える任意の値を指定すると、セグメントプロセスの処理時間が長くなります。

スキュー範囲

スキューのサーチ範囲 (0 ～ 45、デフォルト = 0) を度単位で指定します。

注意: テキスト行に角度の回転または傾きがある場合、その角度または傾きが各画像で一定の場合は、[領域] を設定してこれらのばらつきを補正します。0 を超える任意の値を指定すると、セグメントプロセスの処理時間が長くなります。

文字フラグメントマージモード

分割された文字フラグメントを結合して文字を形成するときのマージ (結合) 方法を指定します。2 つの文字フラグメントを 1 文字の一部としてみなすためにオーバーラップする必要があるかどうか、または、間に水平ギャップのある文字フラグメントを 1 文字の一部としてみなすかどうかを決定します。

1 = 要オーバラップ (デフォルト) | 文字フラグメントは、[文字フラグメントの最小オーバーラップ値] パラメータの値を基準にして水平にオーバーラップする必要があります。
2 = 最小文字間ギャップ値に設定 | 文字の断片と断片の間に水平方向のギャップがある場合、これらの断片がマージされ、文字が形成されることがあります。[最小文字間ギャップ値] パラメータで定義された値未満のギャップを持つ 2 つの断片はマージされます。
4 = 最小文字間ギャップ値/最大文字間ギャップ値に設定 | 文字の断片と断片の間に水平方向のギャップがある場合、これらの断片がマージされ、文字が形成されることがあります。2 つの断片をマージするかどうかは、[最小文字間ギャップ値] パラメータと [最大文字内ギャップ値] パラメータで定義された値に基づいて判断されます。

文字フラグメントの最小オーバーラップ値

2 つの文字断片が同じ文字の一部とみなされるためには、この文字断片が相互に水平方向にオーバーラップしていなければなりませんが、その最小の割合を指定します (0 ～ 100、デフォルト = 0)。デフォルト値 (0) は 1 ピクセル以上オーバーラップする任意の 2 文字の断片をマージします。これよりも大きい値の場合、文字断片はより多くオーバーラップする必要があります。一部の文字のペアを水平方向に意図的にオーバーラップさせるアプリケーションや (カーニングとも呼ばれます)、最適化段階において回転や傾きを完全に修正できなかった場合は (通常、印刷が一定ではないため)、デフォルト値が必要になります。

最大文字内ギャップ値

損傷している文字であっても、1 つの文字の中で起こり得る水平方向のギャップの最大サイズをピクセル単位で指定します (0 ～ 1000、デフォルト = 5)。

注意: 隣り合う文字間に発生するギャップが損傷した文字内に発生する可能性のあるギャップよりも常に広い、最も一般的なアプリケーションの場合は、[最小文字間ギャップ値] パラメータを [最大文字内ギャップ値] パラメータの値に 1 を足して設定します。例えば、文字の内部に水平ギャップが発生することのない場合は、[最大文字内ギャップ値] パラメータに 0 を設定し、[最小文字間ギャップ値] パラメータに 1 を設定します。

最小文字間ギャップ値

異なる文字に属するために、2 つの文字断片の間に必要な水平方向のギャップの最小サイズをピクセル単位で指定します (0 ～ 1000、デフォルト = 0)。このギャップは、ある文字の文字領域の右端から、その隣の文字の文字領域の左端までの距離です。2 つの断片の間のギャップがこの値よりも小さい場合、これらの断片は同じ文字の一部であるとみなされます。ただし、結合後の文字幅が広くなりすぎる場合は例外です ([文字幅の最大値] または [最小文字アスペクト比] パラメータの指定を参照)。

注意: 隣り合う文字間に発生するギャップが損傷した文字内に発生する可能性のあるギャップよりも常に広い、最も一般的なアプリケーションの場合は、[最小文字間ギャップ値] パラメータを [最大文字内ギャップ値] パラメータの値に 1 を足して設定します。例えば、文字の内部に水平ギャップが発生することのない場合は、[最大文字内ギャップ値] パラメータに 0 を設定し、[最小文字間ギャップ値] パラメータに 1 を設定します。

最小文字フラグメントサイズ

前景 (つまり、テキスト) ピクセルの最小値を指定します (0 ～ 1000、デフォルト = 15)。前景のピクセル値がこの値を超えていれば、その文字断片は文字の一部であるとみなされます。この値を設定する際は、本物のテキスト断片を保持できるくらい小さい値に設定する必要がありますが、同時に、背景ノイズから小さな断片を除外できるくらい大きくします。ドットマトリックステキストや、ピリオドなどの小さい文字を含むテキストについては、小さい値が必要になります。文字が複数の小さな断片に分割されにくい文字で形成された、途切れのないストロークテキストの場合は、大きい値が必要になります。

文字サイズの最小値

前景 (つまり、テキスト) ピクセルの最小値を指定します (0 ～ 5000、デフォルト = 30)。前景のピクセル値がこの値以上である 2 値化文字がレポートの対象となり、ピクセル値が少ない文字は破棄されます。この設定によって、背景ノイズまたはそのほかのテキスト以外の特徴をフィルタ処理することができます。

セグメント詳細設定

セグメントプロセスに適用される追加パラメータを指定します。

正規化モード

画像の正規化に使用するモードを指定します。このモードは背景のばらつきを除去し、グレースケールの 256 の値 (0 ～ 255) をすべて使用します。

注意: この設定は、登録時と実行時の両方で同じでなければなりません。登録後にこの設定を変更すると、分類で問題が発生する原因となる可能性があります。

1 = なし | 正規化は行われません。
2 = グローバル | ローカルなばらつきではなく、ROI 全体の情報を使用して、グローバルな正規化が実行されます。このオプションは背景色とテキストが ROI 全体を通して一定であり、高速モードのときに最適に機能します。
4 = ローカル (デフォルト) | 画像を正規化するために、ROI 内のローカルな文字領域に関する情報を使用して、ローカルな正規化を実行します。このオプションは背景の勾配を除去します。グローバルモードが機能しない場合に使用する必要があります。
8 = ローカル詳細設定 | 画像を正規化するために、ROI 内のローカルな文字領域に関する情報を使用して、背景だけではなく、前景のコントラストの調整を含むローカルな正規化を実行します。このオプションは背景の勾配を除去し、一定でないテキストのコントラストを調整します。3 つのオプションのうち、実行時間が最も長くかかります。

ストローク幅フィルタを使用

残りの画像と同じストローク幅を持たないものをすべて、正規化された画像から削除するかどうかを指定します。このオプションは、近くの文字と接続する可能性のある薄い線などのテキスト以外の特徴について、一部の種類を削除することができます。このオプションによって、2 値化しきい値を超えて偽のフラグメントを作成したり、近くの文字と連結したりする可能性のある、低コントラストの背景のばらつきを除去することもできます。ただし、テキストに一定のストローク幅がない場合や、テキストに大きな可変コントラスト (ストロークの一部が非常に薄いなど) がある場合は、このオプションを使用することによって問題が発生することがあります。

注意: この設定は、登録時と実行時の両方で同じでなければなりません。登録後にこの設定を変更すると、分類で問題が発生する原因となる可能性があります。

0 = OFF | 画像にある残りの断片と同じストローク幅を持たないものをすべて、画像から削除しません。
1 = ON (デフォルト) | 画像にある残りの断片と同じストローク幅を持たないものをすべて、画像から削除します。

境界フラグメントを無視

ROI の境界線に接触する断片をすべて、完全に無視するかどうかを指定します。ラベルのエッジなど、ROI の範囲に含まれる可能性のあるテキスト以外の特徴については、このような断片を無視することが有用です。

注意: 断片が、文字領域の境界からテキストのメインラインまで伸びている場合、この断片は 1 つの文字とみなされます。このパラメータが有効化されているとき、除外されるテキストのメインラインまで断片が伸びていてはいけません。

0 = OFF (デフォルト) | 境界線の断片を無視しません。
1 = ON | 境界線の断片を無視します。

2 値化しきい値

正規化された画像において、テキストと背景の間で画像をバイナリ化するしきい値の計算に使用します。単位はパーセンテージ (0 ～ 100、デフォルト = 50) で指定します。例えば、デフォルト設定の 50% は約 128 (0 ～ 255 のグレースケール範囲で) の 2 値化しきい値を生成します。このとき、0 は白いテキスト上の黒と同じで、100 は黒いテキスト上の白と同じです。50％ 未満の値を使用すると 2 値化しきい値が変更され、テキストがより少なく、背景がより広くなります。一方、50% より大きい値を使用すると、背景がより少なく、テキストがより多くなります。通常、デフォルト値は画像を正しく 2 値化しますが、背景テクスチャがある場合、またはそのほかの背景のばらつきがある場合は、この値を小さくすることで背景のばらつきを補正することができます。

注意: この設定は、登録時と実行時の両方で同じでなければなりません。登録後にこの設定を変更すると、分類で問題が発生する原因となる可能性があります。

文字フラグメントのコントラストしきい値

正規化された画像のしきい値に対するコントラストの最小値を、断片全体のグレースケールレベルで指定します (0 ～ 255、デフォルト = 30)。断片のコントラストがこの値を超えていれば、その断片は文字の一部であるとみなされます。断片の各前景ピクセルは常にしきい値を満たすことを保証されますが、断片のすべてのピクセルがしきい値に非常に近いと、断片はテキストではなく、単にノイズとなる可能性が高くなります。値 0 では低コントラストの断片が拒否されるのを妨ぐことができます。

メインラインまでの最大フラグメント距離

テキストを貫通して、水平方向に伸びる「メインライン」から垂直に削除する断片となる距離を、 文字の高さの割合として指定します (0 ～ 1000、デフォルト = 0)。本来、文字は最適化された後に (角度方向および傾きを補正する段階)、水平の直線に沿って配置されることが予測されています。しかし、文字に「ジッタ」が見られることがあり、文字位置の縦方向に変動がある可能性があります。デフォルト設定では、これらの文字フラグメントは文字の「メインライン」に沿っていないため、拒否されてしまいます。このパラメータ設定を大きくすることによって、文字の「メインライン」に沿っていないフラグメントを保持することができます。

セグメント解析モード

文字の最適なセグメントを実行する文字解析モードのタイプを指定します。このパラメータは、グループステージ以外の追加の解析を実行するかどうかを決定します。

1 = 最小 | 基本のセグメント解析を実行します。グループステージ解析のみ実行します。
2 = 標準 (デフォルト) | 最適なセグメントを決定するために、文字の間隔を含め、行全体の追加の解析を実行します。有効になっている場合、[最小ピッチ値]、[文字のピッチタイプ]、[文字ピッチ位置] パラメータの影響を受けます。

最小ピッチ値

2 つの文字の間に発生する可能性のあるピッチの最小値をピクセル単位で指定します (0 ～ 1000、デフォルト = 0)。ピッチは [文字ピッチ位置] パラメータに基づいて計算されます。2 つの断片の間のピッチがこれよりも小さい場合、これらの断片は同じ文字の一部であるとみなされます。ただし、結合後の文字幅が広くなりすぎる場合は例外です（[文字幅の最大値] または [最小文字アスペクト比] パラメータの指定を参照）。

文字ピッチ位置

2 つの連続する文字間のピッチの測定方法を指定します。ピッチは、隣り合う文字の対応する点と点の間の (おおよその) 距離として定義されます。ある文字の末尾から隣の文字の始めまでの距離 (文字間ギャップ) ではありません。文字に異なる幅がある固定ピッチフォントでは、通常、適切なピッチメトリクスが使用されている場合のみ、ピッチは一定の値を持ちます。

注意: [セグメント解析モード] パラメータが [最小] に設定されている場合、このパラメータは無効になります。

1 = 自動 (デフォルト) | 未知のメトリクスが使用されていることを示します。適切なピッチはその他のピッチ位置のいずれかである可能性もありますし、一定のピッチ位置がない可能性もあります (プロポーショナルピッチフォントの場合)。また、OCRMax 関数によって適切なピッチメトリクスが決定されます。
2 = 左－左 | ある文字の文字領域の左端から隣の文字の文字領域の左端までの距離を測定したピッチを指定します。 注意: 「左」および「右」という用語は、ROI により定義された座標を基準にしています。つまり、「右」は正の X 方向です。
4 = 中央－中央 | ある文字の文字領域の中央から隣の文字の文字領域の中央までの距離を測定したピッチを指定します。
8 = 右－右 | ある文字の文字領域の右端から隣の文字の文字領域の右端までの距離を測定したピッチを指定します。 注意: 「左」および「右」という用語は、ROI により定義された座標を基準にしています。つまり、「右」は正の X 方向です。

文字のピッチタイプ

連続する文字の文字間隔に 1 つの固定値を確保するか、特定の文字によって異なるのかを指定します。ピッチは、隣り合う文字の対応する点と点の間の (おおよその) 距離として定義されます。ある文字の末尾から隣の文字の始めまでの距離 (文字間ギャップ) ではありません。

注意: [セグメント解析モード] パラメータが [最小] に設定されている場合、このパラメータは無効になります。

1 = 自動 (デフォルト)

ピッチタイプは不明だが、固定、またはプロポーショナルのどちらかで、可変ではないことを表します。OCRMax 関数によって最適なタイプが決定されます。

2 = 固定

ピッチが固定、つまり任意の 2 文字のピッチは一定であることを表します。たとえば、文字矩形の幅は関係ありません。このピッチは、[文字ピッチ位置] パラメータを基準に測定されます。

4 = 比例

ピッチがプロポーショナルである、つまり任意の 2 文字のピッチはその文字によって異なることを表します。例えば、2 つの小文字「i」の間の距離は、2 つの大文字「M」の間の距離よりもかなり少なくなります。

注意:
  • ピッチの計測値は文字列全体を通して一定ではありませんが、通常、文字間ギャップはほぼ一定です (文字間ギャップとは、ある文字の文字領域の右端から、隣の文字の文字領域の左端までの距離です)。
  • 「左」および「右」という用語は、ROI により定義された座標を基準にしています。つまり、「右」は正の X 方向です。

8 = 変数

文字列全体で、文字から文字までのメトリックが一定ではなく (たとえば、文字の配置がばらばらである)、ピッチは固定でもプロポーショナルでもないことを表します。OCRMax 関数でピッチのタイプを特定することは推奨しません。

注意: [変数] ピッチは [自動] とは異なります。[自動] は、ピッチは固定またはプロポーショナルのどちらかではあるが、不明であることを前提にしています。

分類の詳細設定

分類プロセスを調整するパラメータを指定します。登録文字と取り込んだ画像内の文字の相違に基づいて文字を分類する方法を指定します。

分類テンプレートサイズ幅

登録文字矩形と実行時文字矩形間の許容可能な X スケール係数を指定します (5 ～ 50、デフォルト = 10)。有効な場合は、スケール制約を満たすインスタンスのみが計算されます。

分類テンプレートサイズの高さ

登録文字矩形と実行時文字矩形間の許容可能な Y スケール係数を指定します (5 ～ 50、デフォルト = 18)。有効な場合は、スケール制約を満たすインスタンスのみが計算されます。

文字のアスペクト比を保持

実行時に展開された画像を再サンプリングする際にアスペクト比を維持するかどうかを指定します。

0 = OFF (デフォルト) | 実行時に展開された画像を再サンプリングする際にアスペクト比を維持しません。
1 = ON | 実行時に展開された画像を再サンプリングする際にアスペクト比を維持します。

追加の文字検証をスキップ

分類時に追加の文字検証を実行するかどうかを指定します。

0 = OFF | 分類時に追加の文字検証を実行します。これは、誤読 (文字を誤って許容するなど) の可能性を低減します。
1 = ON (デフォルト) | 分類時に追加の文字検証を実行しません。ただし、このオプションでは誤読が発生することがあります。

画像前処理

分類前に実行する画像処理関数を指定します。

0 = なし | 分類前に画像処理を実行しません。
1 = 正規化ヒストグラム (デフォルト) | ヒストグラムに基づいて画像を正規化します。
2 = 中央値を減算 | ローカルの近傍の中央値に基づいて減算します。
3 = 正規化画像 & 中央値を減算 | 分類時に正規化ヒストグラムと中央値の減算の両方の画像処理を実行します。 注意: このオプションが選択されると、ヒストグラムの正規化が実行されてから中央値が減算されます。

フィールド化

[フィールド化] を使用して、文字列のさまざまな位置にあると予測される文字に関する情報を提供します。

フィールド化していない文字を無視

文字位置ごとに、文字のフィールド形式によって指定された文字のみを含めるように結果を制約するかどうかを指定します。有効な場合は、分類得点に関係なく、フォント内の他のすべての文字が無視されます。

0 = OFF (デフォルト) | 文字のフィールド形式に基づいて結果を制約しません。
1 = ON | 文字のフィールド形式に基づいて結果を制約します。

文字列長

フィールド形式を固定長モードまたは可変長モードのどちらで実行するかを指定します。

0 = 変数 | 可変長モードで動作します。
1 = 固定 (デフォルト) | 固定長モードで動作します。

最大文字列長

許容可能な最大文字数を指定します (0 ～ 100、デフォルト = 25)。

注意: [文字数] パラメータが [固定] に設定されている場合、このパラメータは使用できません。

最小文字列長

許容可能な最小文字数を指定します (0 ～ 100、デフォルト = 1)。

注意: [文字数] パラメータが [固定] に設定されている場合、このパラメータは使用できません。

最初にフィールド化した最大インデックス値

考慮対象となる、フィールド化の部分列を指定します。部分列はこのインデックス値を超えない位置で開始する必要があります (0 ～ 100、デフォルト = 100)。

注意: [文字数] パラメータが [固定] に設定されている場合、このパラメータは使用できません。

最後にフィールド化した最小インデックス値

考慮対象となる、フィールド化の部分列を指定します。部分列はこのインデックス値を超えない位置で終了する必要があります (0 ～ 100、デフォルト = 0)

注意: [文字数] パラメータが [固定] に設定されている場合、このパラメータは使用できません。

OCRMaxSettings 関数関数の結果出力

戻り値

読み取られた文字列を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

  • OCRMax 関数について
  • OCRMax 関数
  • OCRMax データアクセス関数
  • OCRMax 関数の設定方法
  • プロパティシートの使用方法
  • [オートチューン] ダイアログ
  • OCRMaxAutoTune 関数
  • TransOCRMaxToWorld 関数


[OCV/OCRフォントの登録] ダイアログ

ビジョンツール → 文字照合/認識

In-Sight 関数リファレンス

[OCV/OCR フォントの登録] ダイアログを使用すると、フォントの文字モデルを追加、修正、または削除して、ユーザ登録フォントを作成することができます。このユーザ登録フォントは、TrainFont 関数に格納されます。このフォントは、ReadText 関数によるテキストの文字認識、または VerifyText 関数によるテキストの文字照合の際にそれぞれ使用されます。

注意:
  • レガシー関数である ReadText、TrainFont および VerifyText 関数の代わりに、OCRMax 関数を使用することを推奨します。OCRMax 関数には拡張性能機能が搭載されています。
  • フォントの各文字には最大 8 つのインスタンスを登録することができます。より多くの文字インスタンスを追加することによって、フォント内の対応する文字モデルの変形許容値が向上します。
  • フォントには最大 255 種類の文字モデルとともに特定の文字の 8 インスタンスを含むことができます。各モデルに文字ラベルが 1 つずつ割り当てられます。これらの制限のいずれかを超過した場合、In-Sight センサでは超過した文字モデルはすべて無視され、追加されません。
  • 文字形状の変動が小さい文字照合/認識アプリケーションでは、必要なインスタンスが 1 つで済む場合があります。文字形状の変動に対して大きな許容値が必要な場合には、必要な文字インスタンスの数も増加します。
  • ユーザインタフェースの言語が中国語または韓国語以外の値に設定されている場合、ラベルに中国語や韓国語の文字が含まれている文字インスタンスでは、[削除] や [ラベル変更] を含む OCV/OCR 操作は機能しません。ラベルに含まれている文字列に対応した言語にユーザインタフェースを変更してから、もう一度操作をやり直すか、またはラベルに英語の文字を使用してください。
  • 漢字などのマルチバイト文字のモデル名はサポートされていません。マルチバイト文字は登録できますが、文字モデルに指定する名前はシングルバイトの名前にする必要があります。

[フォントの登録] ダイアログを開く

  1. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。
  2. [関数の挿入] ダイアログの左側で、ツールカテゴリの [ビジョンツール] リストを展開します。
  3. [文字照合/認識] ツールカテゴリを選択します。
  4. 関数リストから TrainFont 関数を選択して、[OK] ボタンを押すか、関数名をダブルクリックします。

  5. [フォントの登録] ダイアログが表示されます。

[画像] タブ

[画像] タブでは、フォントの登録に使用する画像を取得することができます。目的の画像がアクティブな画像として既にロードされている場合は、次の節に進んでください。それ以外の場合は、次のいずれかの方法で、有効な画像を得ることができます。

  • [ライブの開始]:　センサをライブ表示モードにして、リアルタイム画像を表示します。必要な画像を取り込んだら、[ライブの停止] をクリックします。
  • [画像を開く]:　[開く] ダイアログを表示します。このダイアログを使用して、In-Sight センサ、ローカル PC、またはネットワーク接続された PC から画像をロードできます。
  • [参照する画像の選択]:　セル選択モードに切り替わり、アクティブジョブの [image] 構造体を参照できるようになります (スプレッドシートビューのみ)。
  • [基準画像]:　ツールが検査を行うために使用する画像を定義します。画像フィルタリングツール、Color Blob または Color Blobs (1 ～ 10) Location Tool、Color Blob Area または Color Blobs Areas (1 ～ 10) Measurement Tool、Color Blobs Counting Tool の出力画像、またはフィルタされていない取り込み画像 (デフォルト設定) のいずれかから選択します (EasyBuilder ビューのみ)。

スプレッドシートビュー:

EasyBuilder ビュー:

[登録] タブ

[登録] タブでは、画像から文字を抽出して、各文字のモデルを作成することができます。

ヒント:
  • フォントを登録するときに画像フィルタを使用する場合は、文字照合/認識の際に使用するフィルタと同じフィルタを使用してください。同じフィルタを使用しないと、文字照合/認識の精度が低下します。
  • エンボス状態の文字は、そのフォントの黒/白に応じて 収縮 または 膨張 フィルタを適用し、文字ストロークの中心のエンボス部分を埋めておくと、パフォーマンスを上げることができます。
  1. わかりやすいフォント名を選択します。フォントに名前を付けると、スプレッドシートのジョブに複数の　 [image] 　データ構造体が含まれている場合に便利です。

注意:　GetFontName 関数を使用して、フォント名をスプレッドシートに返すことができます。

  2. 登録する文字が周囲の背景よりも明るい場合は、[極性] として [白 (黒い背景)] を選択します。登録する文字が周囲の背景よりも暗い場合は、[黒 (白い背景)] を選択します。

注意:　[フォントの追加] ボタンをクリックする前に、登録する文字の極性が正しく設定されていることを確認してください。文字モデルをフォントに追加した後に極性を変更することはできません。

  3. デフォルトでは、1 つ以上の文字インスタンスがフォントに既に存在していたとしても、すべての文字がフォントに追加されます。新しい文字のみをフォントに追加する場合は、[新しい文字のみを登録] をクリックします。
  4. 登録する文字を含む最初のテキスト行と一致する [文字列] を入力します。

  5. [領域] ボタンをクリックします。
  6. 登録する文字を囲むように、対話型グラフィックスの配置およびサイズを変更します。

  7. 領域内でダブルクリックすると、変更が確定します。
  8. [セグメント] ボタンをクリックします。指定された [文字列] に基づいて、[領域] 内の文字が個々の文字インスタンスに分割されます。
  9. 正しくセグメント化されていない文字が残っている場合は、[変更] ボタンをクリックして、個々の文字インスタンスの対話型グラフィックス領域を微調整します。不正確なセグメントを調整するには、セグメントの領域をクリックして、文字が適切に囲まれるように、この領域を配置し、サイズを変更します。すべてのセグメントが文字の周りに正しく配置されるまで、この手順を繰り返します。
  10. 文字のいずれかが正しくラベル付けされていない場合は、まず、指定された [文字列] が画像内の文字と一致することを確認します。文字列が正しい場合は、[ラベルの変更] ボタンをクリックします。誤ったラベルのついた文字をダブルクリックして [ラベルの変更] ダイアログを開きます。正しいラベルを入力して、[OK] をクリックします。
  11. 必要に応じて、[削除] ボタンをクリックし、セグメントを個別に削除します。
  12. すべての文字が正しくセグメント化、およびラベル付けされたら、[フォントの追加] ボタンをクリックします。選択したテキスト行内の各文字のインスタンスが、現在のフォントに追加されます。登録する文字が含まれているテキスト行それぞれについて、この手順を繰り返します。
注意:
  • 文字をフォントに追加した後で、セグメントの修正、ラベル変更、削除を行うことはできません。
  • フォント登録にあたっては 1 文字ずつ追加せず、一度に複数の文字を登録するようにしてください。1 文字だけを追加した場合、文字列内の文字を読み取るときに重要な間隔情報がないことになります。1 文字だけを登録する必要がある場合は、次のような手順で登録してください。
    • 文字をセグメントした後、[修正] ボタンを押します。
    • 文字の両側にスペースができるように、文字ボックスの幅を調整します。図に示されているように、文字ボックスの左右の境界線が登録文字と隣の文字との中間になるようにします。

[フォント] タブ

[フォント] タブは、登録したフォントに含まれる文字モデルの表示および編集に使用します。ユーザフォントにはいくつかの文字モデルが含まれています。いくつかのモデル (「C」、「o」など) は、複数の文字インスタンスで構成されています。スペースや句読点を含むすべての文字が切り出され、文字モデルとして登録されます。ここで、すべての文字モデルを参照して、特定の文字モデルまたは文字インスタンスの削除、編集、名前変更、または有効化/無効化を行うことが可能です。[フォント] ツリーのルートレベル [image] を選択すると、各文字のモデルが表示されます。[フォント] ツリーの文字フォルダを選択すると、コンポジット文字モデル (* で示されます) と、モデルの作成に使用された登録文字のインスタンス (0 から始まるインデックス番号で示されます) が表示されます。登録文字の各インスタンスは、個別のサブフォルダに保存されます。

  1. [有効] チェックボックスは、このフォントで文字モデルが使用されるかどうか、また各文字のどのインスタンスがモデルの構築に使用されるかを指定します。デフォルトでは、このチェックボックスはすべての文字モデルについて有効化されています。文字モデル、または文字インスタンスを無効化するには、対象のモデルまたはインスタンスをハイライトし、チェックボックスを OFF にします。
注意:
  • ある文字モデルの [有効] チェックボックスがオフになると、その文字のすべてのインスタンスが無効になります。
  • 無効にされた文字インスタンスは、文字照合/認識の実行時には文字モデルとして利用されません。
  2. 文字モデル、または文字インスタンスが正しくない場合は、誤ったラベルのついたモデルまたはインスタンスをハイライトし、[ラベルの変更] ボタンをクリックして、ラベルを訂正します。文字モデルを選択している場合、そのすべての文字インスタンスの名前を変更します。1 つの文字インスタンスが選択されている場合、このインスタンスのラベルのみが変更され、対応する文字モデルフォルダに移動されます。
  3. 文字モデル、または文字モデルから文字インスタンスを個別に削除するには、削除対象をハイライトし、[削除] ボタンをクリックします。

注意:　文字モデルを削除すると、その文字のすべての登録インスタンスが消去され、復元することはできません。

  4. 選択した文字モデルや文字インスタンスのクローズアップを表示するには、[修正/表示] ボタンをクリックしてフォントエディタを開始します。文字モデルは編集できます。文字インスタンスは表示のみが可能です。編集された文字モデルには、[フォント] ツリーのフォルダの横に「*」が表示されます。

注意:　フォントエディタはむやみに使用しないでください。低品質なサンプルフォントを加工して登録するよりも、高品質なサンプルフォントで取り込んだ方が良い結果が得られます。

  5. 文字モデルに対して手動で行われた編集に満足できない場合は、[モデルの再構築] ボタンをクリックして、選択したフォント文字を再構築し、フォントエディタを使用して手動で行った編集をすべて削除することができます。
  6. フォントからすべての文字モデルとインスタンスを削除して最初からもう一度やり直すには、[すべて削除] ボタンをクリックします。

[相違度表] タブ

[相違度表] タブには、各文字モデルとほかのすべてのモデルを比較した一覧が表示され、その中で選択した 2 つの文字の違いが点数で表示されます。行見出しと列見出しは、文字が登録されたときに定義された文字ラベルを示します。2 つの文字の相違度が大きければ大きいほど、検査中にこれらの文字が誤認識される可能性が低くなります。このデータは、パフォーマンスに悪影響を与える可能性のある、登録フォントの弱点を示すため便利です。下の例では、「e」と「C」の文字モデルの相違度は 95 ときわめて高くなっています。これは、現在のフォントで、これら 2 つの文字が誤認識される可能性が非常に低いことを示しています。一方、「o」と「e」の文字モデルの相違度は 27 にすぎません。したがって、これら 2 つの文字は誤認識されやすいことを意味します。

  1. 表示する [得点付けモード] 相違度表として、[高速] または [高精度] を指定します。前述のように、相違度が高いほど、選択した 2 つの文字が検査中に誤認識される可能性が低くなります。

ヒント:　相違度表に表示される得点は、ReadText 関数や VerifyText 関数の [読み取りモード] パラメータで [高速] と [高精度] のどちらを選択すべきかを判断する際の目安となります。

  2. [右値以下を警告表示] フィールドに値を入力します。文字モデルの比較得点がこの相違値以下の場合は、すべて黄色でハイライトされます。これは、誤認識されやすい文字モデルのペアを示します。ハイライトする得点のしきい値を増減するには、↑/↓ボタンをクリックするか、値を入力します。[警告表示数] が更新され、得点が指定値以下である文字モデル比較の個数が表示されます。この個数は、[右値以下を警告表示] で指定したしきい値によって変化します。
  3. 文字モデルを隣り合わせに表示するには、黄色でハイライトされたペアをそれぞれクリックします。[選択された文字] フィールドには、比較中の各文字のモデルが表示されます。[相違度] には、選択した文字の「類似していない度合い」が表示されます。この比較によって、文字モデルが正しく登録されていなかったこと、文字モデルが登録されたときの画像状態がよくなかったこと、使用された文字の品質が低かったことなどが明らかになることがあります。

注意:　[フォント] タブで無効にされている文字は、相違度表には表示されません。

関連項目

OCV/OCR フォントの登録について

TrainFont 関数

ReadText 関数

VerifyText 関数


ReadText 関数

ビジョンツール → 文字照合/認識

In-Sight 関数リファレンス

ユーザ登録フォントの文字モデルを使用して画像領域内のテキスト文字列を読み取ります。

注意: レガシー関数である ReadText、TrainFont および VerifyText 関数の代わりに、OCRMax 関数を使用することを推奨します。OCRMax 関数には拡張性能機能が搭載されています。

ヒント:

  • テキスト文字列がすでにわかっている場合は、常に VerifyText 関数を使用します。テキスト文字列の読み取りがより速く、より正確に行われるようになります。
  • スピードの要求されないアプリケーションでは、スケール許容を ON にしてください。文字サイズのわずかな変化のために検出精度が大きく低下するのを防ぐことができます。
  • 文字列でない場所を誤って検出した場合、または、文字列がどこにも検出されなかった場合は、疑字背景を ON にして、再試行します。
  • 文字認識中に誤読が発生した場合は、読み取りモードを [高速] から [高精度] に切り替えます。[高精度] を選択した場合、文字と文字はより厳密に区別され、さらに正確な得点を上げることができます。それでも誤読が発生する場合は、登録フォントを開き、2 つの混同する可能性のある文字を調べます。それらの文字がうまく登録されていない可能性があります。
  • 常に同じ位置にスペースが入っているテキスト文字列を読み取っている場合は、フィールド文字列にスペースを追加します。

ReadText 関数関数の入力パラメータ

ReadText 関数(

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

領域.カーブ,

フォント ,

フィールド文字列 ,

フィールド定義,

アクセプトしきい値,

得点差しきい値,

チューン ,

照合モード,

疑字背景 ,

スケール許容 ,

タイムアウト,

表示

)

画像

この引数は有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 行オフセット
列 | 列オフセット
角度 | 角度

領域

移動および回転可能な矩形の画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

フォント

登録フォントを含む [image] データ構造体へのセル参照。

フィールド文字列

文字列に含まれる文字数を指定します。フィールド文字列エントリには、(A～Z)、(a～z)、(0～9)、ハイフン（-）、ドット（.）、スペース（ ）など、[テキスト入力] ダイアログのすべての文字を使用できます。

フィールド文字列の各文字は、0 ～ 31 のインデックス付きフィールド位置に対応します。フィールド文字列には、読み取りを成功させたい文字列の文字と同じ数の位置が含まれている必要があります。デフォルトでは、フィールド文字列の各位置は、アスタリスク（*）か英数字の「ワイルドカード」で示されます。これは、文字列のどの位置でもすべての文字が有効であることを意味します。

ただし、フィールド文字列の個別の位置は、その位置に一部の文字しか想定されないように制限することができます。すると、対象外の文字は読み取り時に考慮されないため、全体的な性能と信頼性が向上します。

定義済みのフィールド文字列エントリは、次のとおりです。

フィールド文字列 エントリ | 説明 | 有効な文字
* | ワイルドカード | フォントに含まれる任意の登録文字です。
N | 数字 | 0123456789
A | 大文字の英字 | ABCDEFGHIJKLMNOPQRSTUVWXYZ
a | 小文字の英字 | abcdefghijklmnopqrstuvwxyz
H | 16 進値（大文字の英字と数字） | 0123456789ABCDEF
h | 16 進値（小文字の英字と数字） | 0123456789abcdef
O | 8 進値 | 01234567

注意:

  • フィールド文字列のある位置を特定の文字に制限する場合は、その文字を入力してください。文字はフォントに登録されている必要があります。また、[フィールド定義] パラメータを使用して再マップしない限り、上記の定義済みフィールド文字列エントリの文字を使用することはできません。
  • スペースを含む文字列を読み取るには、フィールド文字列にスペースを含めます。その位置の対応するフィールド文字列エントリがアスタリスク（*）の場合、ReadText 関数はスペースを読み取りません。

Closed フィールド文字列の例 1

フィールド文字列が「**********AN」の場合、1～10 番目のフィールド文字列位置ではフォントに含まれるすべての文字が有効です。ただし、11 番目の位置は、読み取り時に大文字の英字だけが想定されます。また、12 番目の位置は、数字だけが想定されます。

Closed フィールド文字列の例 2

フォントには、0～9 の数字と / だけが含まれます。フィールド文字列が「NN/NN/NN」の場合、1、2、4、5、7、および 8 番目の位置では数字だけが想定されています。また、3 および 6 番目の位置ではスラッシュ（/）だけが想定されています。

ただし、フィールド文字列が「NN/NN/AA」の場合は、フォントに英字が含まれていないため、#ERR が返されます。

フィールド定義

必要に応じ、[フィールド定義] 設定を使用して [フィールド文字列] のユーザ定義エントリを作成できます。このエントリがフィールド文字列に含まれると、このエントリの挿入位置で有効となる文字のリストが限定されます。

セミコロン（;）で区切ることによって、複数のフィールド定義を使用できます。

フィールド定義エントリのために示す文字は、フォントに含まれている必要があります。例:　#=123 は、ユーザ登録フォントに 1、2、3 が含まれる場合に有効です。ただし、#=123 は、フォントに 1、2、3 が含まれない場合は無効です。

注意: 定義済みのエントリ（*, A, a, N, H, h, O）をフィールド定義パラメータで使用すると、新しい定義で有効な文字のリストが再マップされます。

Closed フィールド定義の例 1

フィールド定義の値が「#=123;$=3456;%=789」でフィールド文字列が「#$%*******」の場合、1 番目の位置では 1、2、または 3 だけが、2 番目の位置では 3、4、5、または 6 だけが、3 番目の位置では 7、8、または 9 だけが有効です。また、4～10 番目の位置ではフォントに含まれるすべての文字が有効です。

Closed フィールド定義の例 2

フィールド定義の値が「#=123;$=3456;%=789, A=A」でフィールド文字列が「#$%******A」の場合、1 番目の位置では 1、2、または 3 だけが、2 番目の位置では 3、4、5、または 6 だけが、3 番目の位置では 7、8、または 9 だけが有効です。また、4～9 番目の位置ではフォントに含まれるすべての文字が有効です。[フィールド定義]「A=A」は定義済みの [フィールド文字列] エントリを再マップするため、10 番目の位置では A だけが想定されています。

アクセプトしきい値

各文字の許容できる最低一致得点（0～100、デフォルト = 70）を指定します。ReadText 関数はアクセプトしきい値未満の一致得点の文字を不合格とし、その文字列を不合格とします。

得点差しきい値

最高得点の文字と 2 番目の得点の文字の一致得点の間に必要な最小差（0～20、デフォルト = 0）。

2 番目に高い得点の文字を調べるには、GetChar(テキスト, インデックス, 1) 関数を使用してください。

2 番目に高い得点の文字の得点を調べるには、GetScore(テキスト, インデックス, 1) 関数を使用してください。

チューン

参照されている [image] データ構造体の文字モデルのスケールを 50　～　200% で調整します。一致得点は、文字モデルのサイズを読み取る文字のサイズに可能な限り近づけることによって最大になります。チューンは、文字モデルのサイズと読み取る文字のサイズの差が ±5% を超える場合にのみ実行してください。

チューンは大きな処理時間を必要とするため、1 回だけ実行するようにします。一度、チューンを ON にしてジョブを実行したら、後のジョブの処理時間を短縮するためにスプレッドシートを開いてチューンを OFF にしてください。

0 = OFF (デフォルト) | スケールの調整を行いません。
1 = ON | 一致得点が最大になるように、文字モデルのスケールを調整します。

照合モード

読み取り精度を向上させるために、高度なアルゴリズムを使用するかどうかを指定します。

注意:　背景の状態によっては [高精度] よりも [高速] を選択したときに良好な結果を得られることがあります。アプリケーションに応じて選択してください。

ヒント:　[高精度] を選択している場合は、得点が低く抑えられる傾向があるため、アクセプトしきい値を小さめに設定する必要があります。

0 = 高速（デフォルト） | 高度なアルゴリズムを使用しません。このアルゴリズムを使用する場合、デコード速度は向上する可能性がありますが、精度が劣る可能性があります。
1 = 高精度 | 高度なアルゴリズムを使用してデコードを行います。このアルゴリズムは、精度がより高くなっていますが、デコード速度は低下する可能性があります。

疑字背景

画像内のそのほかの特徴が、テキスト文字列と区別しづらい場合に指定します。この設定は、画像内のそのほかの特徴が誤って文字列の先頭と認識される場合には特に有効です。

0 = OFF (デフォルト) | 画像内にテキスト文字列と区別しづらい特徴が含まれない場合に指定します。
1 = ON | 画像内にテキスト文字列と区別しづらい特徴が含まれている場合に指定します。

スケール許容

文字サイズの小さなばらつきを補正するため ±10% の許容値を指定します。

0 = OFF (デフォルト) | 文字スケールの小さなばらつきを認めません。
1 = ON | 文字スケールの小さなばらつきを認めます。

タイムアウト

関数が有効なテキスト文字列を検索する時間をミリ秒単位で指定します（0～30000）。この時間が経過すると、処理は中止され、#ERR が返されます。値を 0 に設定すると設定値が無効になり、タイムアウトは適用されません。

表示

画像上の ReadText グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | ReadText 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 文字セグメントおよび対応するラベルが常に表示されます。
2 = 入力と結果のグラフィックス | 画像領域と文字セグメントおよび対応するラベルが常に表示されます。

ReadText 関数関数の結果出力

戻り値 | 読み取られた文字列を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | ReadText 関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

ReadText 関数データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

文字列 | GetString(テキスト) | 参照されている [image] データ構造体のテキスト文字列を返します。
文字列合格 | GetPassed(テキスト) | 参照されている [image] データ構造体の文字列全体の合格/不合格ステータスを返します。
文字 | GetChar(テキスト, インデックス0, [インデックス1]) | 参照されている [image] データ構造体のインデックス付き文字を返します。オプションの「インデックス 1」パラメータが 1 の場合は、2 番目に高い得点の文字を返します。
得点 | GetScore(テキスト, インデックス0, [インデックス1]) | 参照されている [image] データ構造体のインデックス付き文字の一致得点 （0～100） を返します。オプションの Index1 パラメータが 1 の場合は、2 番目に高い得点の文字の得点を返します。
合格 | GetPassed(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の合格/不合格ステータスを返します。インデックスパラメータが指定されていない場合は、文字列全体の合格/不合格ステータスを返します。

テキストデータアクセス関数を使用して、次のデータ要素を取得できます。

角度 | GetAngle(テキスト) | データ構造体のテキスト文字列と [image] データ構造体の水平軸の間の角度を返します。
列 | GetCol(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の列座標 （ピクセル単位） を返します。
高さ | GetHigh(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の高さ （ピクセル単位） を返します。
行 | GetRow(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の行座標 （ピクセル単位） を返します。
幅 | GetWide(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の幅 （ピクセル単位） を返します。

関連項目

文字照合/認識ツールについて

新しいフォントの登録

文字照合/認識（テキスト）データアクセス関数

プロパティシートの使用方法


TrainFont 関数

ビジョンツール → 文字照合/認識

In-Sight 関数リファレンス

フォント文字を登録します。[関数の挿入] ダイアログから TrainFont 関数を選択すると、[OCV/OCR フォントの登録] ダイアログが自動的に開きます。

TrainFont 関数 (

画像 ,

表示

)

In-Sight のフォントについて

フォントは、画像から抽出される 1 つまたは複数の文字インスタンスを使用して「登録」される最大 255 の文字モデルのセットです。登録フォントの各文字モデルにはラベルを割り当てる必要があります。

登録フォントは、 [image] データ構造体に格納されます。VerifyText 関数は、テキスト文字列の文字と、フォントに保存された既存の文字モデルを比較して、テキスト文字列の内容を照合します (OCV)。ReadText 関数は、テキスト文字列の文字と、フォントの文字モデルを比較して、文字列の認識を行います (OCR)。

注意: 均一のサイズの文字だけが登録できます。また、関連する文字セグメントのサイズも、均一である必要があります。フォントサイズが異なる場合は、別の TrainFont 関数を作成してください。また、複数の文字をまとめて登録すると、文字間隔も認識されます。

TrainFont 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

表示

スプレッドシートで [image] データ構造体が選択された場合の TrainFont グラフィックスの表示モードを指定します。

注意: この関数をスプレッドシートに挿入した後、数式バーで [表示] パラメータの値を変更できるようになります。

0 = 非表示（デフォルト） | すべてのグラフィックスが表示されません。
1 = データベースに登録されているインスタンス | TrainFont 関数を含んでいるセルがスプレッドシート内でハイライトされると、登録モデルに関連付けられているデータベースインスタンスを表示します。
2 = 登録されたモデル | TrainFont 関数を含んでいるセルがスプレッドシート内でハイライトされると、登録モデルを表示します。

TrainFont 関数の結果出力

戻り値

文字モデルのデータベースを含んでいる [image] データ構造体。

TrainFont データアクセス関数

データアクセス関数を使用して、次のデータ要素を取得できます。

GetFontLabel(フォント, インデックス) | 参照されている [image] データ構造体からインデックス付き文字モデルのラベルを返します。
GetFontName(フォント) | 参照されている [image] データ構造体からフォントの名前を返します。
GetFontNumCharacter(フォント) | 参照されている [image] データ構造体に含まれる文字モデルの数を返します。

関連項目

文字照合/認識ツールについて

新しいフォントの登録

文字照合/認識（テキスト）データアクセス関数


VerifyText 関数

ビジョンツール → 文字照合/認識

In-Sight 関数リファレンス

画像領域内のテキスト文字列の文字を照合します。テキスト文字列の文字をユーザ登録フォントの文字モデルと比較します。また、混同する可能性のある文字と比較します。

注意: レガシー関数である ReadText、TrainFont および VerifyText 関数の代わりに、OCRMax 関数を使用することを推奨します。OCRMax 関数には拡張性能機能が搭載されています。

ヒント:

  • スピードの要求されないアプリケーションでは、スケール許容を ON にしてください。文字サイズのわずかな変化のために検出精度が大きく低下するのを防ぐことができます。
  • 文字列でない場所を誤って検出した場合、または、文字列がどこにも検出されなかった場合は、疑字背景を ON にして、再試行します。
  • 文字照合中に誤読が発生した場合は、 照合モード を [高速] から [高精度] に切り替えます。[高精度] を選択した場合、文字と文字はより厳密に区別され、さらに正確な得点を上げることができます。それでも誤読が発生する場合は、登録フォントを開き、2 つの混同する可能性のある文字を調べます。これらの文字はうまく登録されていない可能性があります。

VerifyText 関数関数の入力パラメータ

VerifyText 関数(

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

領域.カーブ,

フォント ,

文字列 ,

アクセプトしきい値,

チューン ,

照合モード,

疑字背景 ,

スケール許容 ,

タイムアウト,

表示

)

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 行オフセット
列 | 列オフセット
角度 | 角度

領域

移動および回転可能な矩形の画像領域を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

フォント

登録フォントを含む [image] データ構造体へのセル参照。

文字列

照合する文字列 (最大 100 文字)。

注意:　VerifyText 関数では、空白スペースが画像で文字と同じ幅を持っている場合、テキスト文字列内の空白スペースを照合します。

アクセプトしきい値

各文字の許容できる最低一致得点 (0～100、デフォルト = 90)を指定します。VerifyText 関数はアクセプトしきい値未満の一致得点の文字を不合格とし、その文字列を不合格とします。

チューン

参照されている [image] データ構造体の文字モデルのスケールを 50 ～ 200% で調整して画像の文字と対応させ、一致得点を最大にします。チューンは、文字モデルのサイズと読み取る文字のサイズの差が ±5% を超える場合にのみ選択してください。

0 = OFF (デフォルト) | スケールの調整を行いません。
1 = ON | 一致得点が最大になるように、文字モデルのスケールを調整します。

ヒント:　チューンは大きな処理時間を必要とするため、1 回だけ実行するようにします。一度、チューンを ON にしてジョブを実行したら、後のジョブの処理時間を短縮するためにスプレッドシートを開いてチューンを OFF にしてください。

照合モード

読み取り精度を向上させるために、高度なアルゴリズムを使用するかどうかを指定します。

注意:　背景の状態によっては [高精度] よりも [高速] を選択したときに良好な結果を得られることがあります。アプリケーションに応じて選択してください。

ヒント:　[高精度] を選択している場合は、得点が低く抑えられる傾向があるため、アクセプトしきい値を小さめに設定する必要があります。

0 = 高速 (デフォルト) | 高度なアルゴリズムを使用しません。このアルゴリズムを使用する場合、デコード速度は向上する可能性がありますが、精度が劣る可能性があります。
1 = 高精度 | 高度なアルゴリズムを使用してデコードを行います。このアルゴリズムは、精度がより高くなっていますが、デコード速度は低下する可能性があります。

疑字背景

画像内のそのほかの特徴が、テキスト文字列と区別しづらい場合に指定します。この設定は、画像内のそのほかの特徴が誤って文字列の先頭と認識される場合には特に有効です。

0 = OFF (デフォルト) | 画像内にテキスト文字列と区別しづらい特徴が含まれない場合に指定します。
1 = ON | 画像内にテキスト文字列と区別しづらい特徴が含まれている場合に指定します。

スケール許容

文字サイズの小さなばらつきを補正するため ± 10% の許容値を指定します。

0 = OFF (デフォルト) | 文字スケールの小さなばらつきを認めません。
1 = ON | 文字スケールの小さなばらつきを認めます。

タイムアウト

関数が有効なテキスト文字列を検索する時間をミリ秒単位で指定します (0～30000)。この時間が経過すると、処理は中止され、#ERR が返されます。値を 0 に設定すると設定値が無効になり、タイムアウトは適用されません。

表示

画像上の VerifyText グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | VerifyText 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 文字セグメントおよび対応するラベルが常に表示されます。
2 = 入力と結果のグラフィックス | 画像領域と文字セグメントおよび対応するラベルが常に表示されます。

VerifyText 関数関数の結果出力

戻り値 | 照合された文字列を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | VerifyText 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。

VerifyText 関数データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

文字列 | GetString(テキスト) | 参照されている [image] データ構造体のテキスト文字列を返します。
文字列合格 | GetPassed(テキスト) | 参照されている [image] データ構造体の文字列全体の合格/不合格ステータスを返します。
文字 | GetChar(テキスト, インデックス 0, [インデックス 1]) | 参照されている [image] データ構造体からインデックス付き文字を返します。オプションの [インデックス 1] パラメータが 1 の場合、[インデックス 0] パラメータで指定した文字とこの文字に最も似ている [image] データ構造体内の文字の一致得点の差が 10% 未満ならば、データ構造体内のこの文字を返します。
得点 | GetScore(テキスト, インデックス 0, [インデックス 1]) | 参照されている [image] データ構造体のインデックス付き文字の一致得点 (0 ～ 100) を返します。オプションの [インデックス 1] パラメータが 1 の場合、[インデックス 0] パラメータで指定した文字とこの文字に最も似ている [image] データ構造体内の文字の一致得点の差が 10% 未満ならば、データ構造体内のこの文字の一致得点を返します。
合格 | GetPassed(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の合格/不合格ステータスを返します。[インデックス] パラメータが指定されていない場合は、文字列全体の合格/不合格ステータスを返します。

次のテキストデータアクセス関数を使用して、そのほかのデータの取得ができます。

角度 | GetAngle(テキスト) | データ構造体のテキスト文字列と [image] データ構造体の水平軸の間の角度を返します。
列 | GetCol(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の列座標 (ピクセル単位) を返します。
コントラスト | GetContrast(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の前景と背景のコントラスト (グレースケール階調で、0 ～ 255) を返します。
高さ | GetHigh(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の高さ (ピクセル単位) を返します。
行 | GetRow(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の行座標 (ピクセル単位) を返します。
幅 | GetWide(テキスト, インデックス) | 参照されている [image] データ構造体のインデックス付き文字の幅 (ピクセル単位) を返します。

関連項目

  • 文字照合/認識ツールについて
  • 新しいフォントの登録
  • 文字照合/認識 (テキスト) データアクセス関数
  • プロパティシートの使用方法


パターンマッチ関数

ビジョンツール

In-Sight 関数リファレンス

In-Sight のパターンマッチ関数ツールは、あらかじめ定義したパターンと最も高い類似性を示す入力画像内の位置を検出します。この種のパターンマッチングをテンプレートマッチングともいいます。パターンマッチ関数ツールには次の関数があります。

  • FindPatMaxPatterns 関数: PatMax® アルゴリズムを使用して、登録されたパターンとの一致を検出します。
  • FindPatterns 関数:グレースケールパターンの登録と検出を行います。
  • SortPatterns 関数:パターンが一致する位置をソートします。
  • TrainPatMaxPattern 関数: PatMax アルゴリズムを使用して、画像からのパターンの抽出と登録を行います。

パターン検出について

パターン検出は、採用する類似性比較方法によってさまざまな特性を示しますが、方法にかかわらず基本的な考えはほぼ同じです。

パターン検出プロセスは登録と検出の 2 段階になっています。登録段階では、検出するパターン例を含んでいる領域が手動で識別され抽出されて登録パターンが作成されます。検出段階では、システムに与えられた新しい画像について、指定された方法に従って最大類似性を示す位置がサーチされます。これらの局所的な一致位置が類似性の降順でソートされ、指定された最低限の類似性を上回る最高のレスポンスが得られます。


FindPatMaxPatterns 関数

ビジョンツール → パターンマッチ

In-Sight 関数リファレンス

登録された検出対象物の形状を幾何学に表現したもの。 パターンFindPatMaxPatterns 関数FindPatMaxPatterns 関数は、 [image] 構造体から登録されたパターンに基づいて、画像内のパターンを検出します。

  • FindPatMaxPatterns 関数の入力パラメータ
  • FindPatMaxPatterns 関数の結果出力
  • FindPatMaxPatterns データアクセス関数
  • 関連項目

FindPatMaxPatterns 関数関数の入力パラメータ

FindPatMaxPatterns 関数(

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

サーチ領域.X,

サーチ領域.Y,

サーチ領域.高さ,

サーチ領域.幅,

サーチ領域.角度,

サーチ領域.カーブ,

外部領域,

パターン,

検出する数,

アクセプト,

コントラスト,

クラッタ,

領域外の特徴,

許容値.開始角度,

許容値.終了角度,

許容値.開始スケール,

許容値.終了スケール,

許容値.アスペクトレシオ,

許容値.開始アスペクト,

許容値.終了アスペクト,

オーバラップ設定.XY オーバラップ,

オーバラップ設定.角度オーバラップ,

オーバラップ設定.スケールオーバラップ,

オーバラップ設定.アスペクトオーバラップ,

タイムアウト,

アルゴリズム,

表示

)

画像

このパラメータは、スプレッドシートで　 [image] 　データ構造体を含むセルを参照する必要があります。デフォルトでは、このパラメータは、AcquireImage　 [image] 　データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールのグラフィックス関数や、座標補正関数により返された、そのほかの [image] データ構造体も参照できます。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連するサーチ領域を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

サーチ領域

これは対象領域 (ROI) とも呼ばれ、関数がパターンをサーチする画像の領域を指定します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

外部領域

このパラメータは、Annulus、Circle、Region、EditAnnulus、EditCircle、EditCompositeRegion、EditPolygon、または EditRegion の各関数を含むスプレッドシートセルを参照できます。このパラメータを使用すると、FindPatMaxPatterns ツールは、[サーチ領域] と [フィクスチャ] の設定を無視し、参照先領域に指定された画像領域を検査します。EditCompositeRegion 関数コントロールを参照している場合は、検査領域がさまざまな形状の混合となることがあります。合成領域内の各形状は、検査領域に対して加算または減算 (マスキング) されるように割り当てることができます。

パターン

このパラメータは、TrainPatMaxPattern 関数によって返される有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。

検出する数

返される一致したパターンの最大数を指定します (1 ～ 1024、デフォルト = 1)。

アクセプト

有効なインスタンスの最も低い得点である、アクセプトしきい値を指定します。一致する可能性がある得点は、アクセプトしきい値よりも大きな値である必要があります。得点がアクセプトしきい値よりも大きな値でない場合は、その一致した得点は返されません　(0 ～ 100、デフォルト = 50)。

コントラスト

有効なインスタンスの最も低いコントラストを指定します。一致する可能性があるコントラストは、コントラストしきい値よりも大きな値である必要があります。コントラストがコントラストしきい値よりも大きな値でない場合は、その一致したインスタンスは考慮されません (0 ～ 255、デフォルト = 10)。低コントラストの画像には、低いコントラストしきい値が使用され、高コントラストの画像には、高いコントラストしきい値が使用されます。

クラッタ

欠落している、またはふさがれているパターン特徴によって、レスポンス得点が減少するかどうかを指定します。

0 = OFF | クラッタの影響を得点に含めません。
1 = ON (デフォルト) | クラッタの影響を得点に含めます。

領域外の特徴

パターンレスポンス得点を劣化させることなく、サーチ領域の外側で検出可能なパターン特徴の割合 (%) を指定します　(0 ～ 100、デフォルト = 0)。

許容値

登録されたパターンに対して回転またはスケーリングされたパターンを検出するための設定を指定します。

開始角度

一致度のサーチを開始する角度を、半時計回りの度の単位で指定します　(-180 ～ 180、デフォルト = -15)。

終了角度

一致度のサーチを停止する角度を、半時計回りの度の単位で指定します　(-180 ～ 180、デフォルト = 15)。

開始スケール

一致度のサーチを開始するスケールを指定します　(1 ～ 10000、デフォルト = 100)。

終了スケール

一致度のサーチを停止するスケールを指定します (1 ～ 10000、デフォルト = 100)。

アスペクトレシオ

一致度検出を、均一スケールのみに制限するか、または均一スケールに加えて、X または Y のアスペクトレシオの変化を許容します。

注意: 開始アスペクトおよび終了アスペクトパラメータは、均一なスケール変化が選択されている場合は無効になります。

0 = 均一なスケール変化

1 = 均一および X のスケール変化

2 = 均一および Y のスケール変化

開始アスペクト

一致度のサーチを開始する最小スケール変化を、登録されたパターンの割合 (%) で指定します　(1 ～ 10000、デフォルト = 100)。

終了アスペクト

一致度のサーチを停止する最大スケール変化を、登録されたパターンの割合 (%) で指定します　(1 ～ 10000、デフォルト = 100)。

オーバラップ設定

相互にするパターンを検出する設定を、位置、回転、およびスケールに関して指定します。

XY オーバラップ

おおよそ同じ X、Y 位置にある、複数のしているパターン間の予想される位置の差を、登録されたパターンのサイズの割合 (%) で指定します　(0 ～ 100、デフォルト = 80)。

注意:　この値を低くすることによって、同じパターンが複数している一致部分を検出することができます。

角度オーバラップ

おおよそ同じ X、Y 位置にある、複数の回転されてオーバラップしているパターン間の予想される角度を指定します (0 ～ 360、デフォルト = 360)。

注意:

  • 角度パラメータは、開始角度および終了角度パラメータが同じ値である場合は、無効になります。
  • この値を低くすることによって、同じパターンが複数している一致部分を検出することができます。

スケールオーバラップ

おおよそ同じ X、Y 位置にある、複数のしているパターン間の予想される均一スケールの差を、登録されたパターンのサイズの割合 (%) で指定します　(1 ～ 10000、デフォルト = 140)。

注意:

  • スケールパラメータは、開始スケールおよび終了スケールパラメータが同じ値である場合は、無効になります。
  • この値を低くすることによって、同じパターンが複数している一致部分を検出することができます。

アスペクトオーバラップ

おおよそ同じ X、Y 位置にある、複数のしているパターン間の、予想されるアスペクトスケールの差を、登録されたパターンのサイズの割合 (%) で指定します　(1 ～ 10000、デフォルト = 140)。

注意:

  • アスペクトパラメータは、アスペクトレシオパラメータで均一なスケール変化が選択されている場合、または開始アスペクトおよび終了アスペクトパラメータの値が等しい場合は、無効になります。
  • この値を低くすることによって、同じパターンが複数している一致部分を検出することができます。

タイムアウト

この関数によるパターンのサーチ時間をミリ秒単位で指定します (0 ～ 30000)。指定された時間が経過すると、実行は停止し、#ERR が返されます。値を 0 に設定すると設定値が無効になり、タイムアウトは適用されません。
アルゴリズム

登録されたパターンに対して画像を処理するために使用されるアルゴリズムを指定します。

0 = PatMax | PatMax アルゴリズムは、PatQuick よりも高い精度を提供しますが、実行に要する時間はより長くなります。
1 = PatQuick | PatQuick アルゴリズムは、PatMax よりも精度は劣りますが、実行に要する時間は短縮されます。
2 = 登録されたパターン (デフォルト) | FindPatMaxPatterns 関数は、[パターン] パラメータで参照される TrainPatMaxPattern 関数の [アルゴリズム] パラメータに指定されたアルゴリズム (PatMax または PatQuick) を使用します。

表示

画像上のグラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | FindPatMaxPatterns 関数を含むセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 検出された各パターンに対して十字マークが常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域と検出された各パターンに対する十字マークは両方とも常に表示されます。
3 = すべて表示: 入力、結果、および一致特徴 | 入力画像領域、検出された各パターンに対する十字マーク、および PatMax 一致特徴が常に表示されます。 注意: TrainPatMaxPattern 関数のアルゴリズムパラメータに対して PatQuick が選択されている場合は、一致特徴は表示されません。 緑の一致特徴 = 67 ～ 100 パーセントの一致 黄色の一致特徴 = 20 ～ 66 パーセントの一致 赤の一致特徴 = 20 パーセント未満の一致

FindPatMaxPatterns 関数関数の結果出力

戻り値

得点によってソートされたモデルとパターンレスポンスのリストを含む [image] データ構造体。入力パラメータが無効である場合、または一致パターンが検出されない場合は #ERR を返します。

結果

FindPatMaxPatterns 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

注意:　この関数のプロパティシートには、パターンを検出し易くするためのヒントとして、補助的な情報文字列が表示されます。表示される可能性のある情報文字列については、 Closed ここをクリックしてください。

  • [値] 低コントラストのために破棄された結果。
  • [値] より正確な結果を得るために破棄された結果。
  • [値] クラッタが多すぎるために破棄された結果。
  • 現在のパラメータ設定に対して、登録パターンに含まれる特徴が少なすぎます。

スプレッドシートに情報文字列を挿入するには、GetInfoString データアクセス関数を使用します。

FindPatMaxPatterns 関数データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(パターン, インデックス) | パターン位置の行座標
列 | GetCol(パターン, インデックス) | パターン位置の列座標
角度 | GetAngle(パターン, インデックス) | パターン位置の角度
スケール | GetScale(パターン, インデックス) | 登録されたモデルと比較したパターンのサイズ (モデルサイズのパーセントで表示)
得点 | GetScore(パターン, インデックス) | パターンのレスポンス得点

関連項目

  • パターンマッチングツールについて
  • パターンデータアクセス関数
  • TrainPatMaxPattern 関数
  • プロパティシートの使用方法


FindPatterns 関数

ビジョンツール → パターンマッチ

In-Sight 関数リファレンス

FindPatterns 関数は、2 つの機能で構成されています。1 つはエリアベースまたはエッジベースのモデルパターンを抽出し、もう 1 つは、登録モデルを使ってサーチを実行します。

この関数によって登録する場合も検出する場合も、実行は、どのパラメータを更新したかによって決まります。どのモデルパラメータを更新してもモデルが返されます。画像、フィクスチャ、検索領域、またはほかのサーチパラメータを更新しても関数がサーチを開始します。

ヒント: 新しいモデルを誤って登録することを避けるには、2 つの個別の FindPatterns 関数を挿入します。1 つの関数はモデルの登録に使用し、無効にしておきます。もう 1 つの関数はパターンパラメータで最初の関数を参照してサーチします。

FindPatterns 関数 (

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

モデル領域.X ,

モデル領域.Y ,

モデル領域.高さ ,

モデル領域.幅 ,

モデル領域.角度 ,

モデル設定.モデルタイプ ,

モデル設定.粗さ ,

モデル設定.精度 ,

モデル設定.行オフセット ,

モデル設定.列オフセット ,

モデル設定.登録を強制 ,

モデル設定.パターン ,

サーチ領域.X ,

サーチ領域.Y ,

サーチ領域.高さ ,

サーチ領域.幅 ,

サーチ領域.角度 ,

検出する数 ,

角度範囲 ,

スケール許容 ,

アクセプトしきい値 ,

コンフューズしきい値 ,

タイムアウト ,

表示

)

FindPatterns 関数 の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

モデル領域

モデルを抽出する矩形画像を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度

モデル設定

モデル登録パラメータを指定します。

モデルタイプ

エリアモデルまたはエッジモデル登録を指定します。

0 = エリアモデル | エリアモデル登録は、 モデル領域からのグレースケールピクセル値の均一サンプリングに基づいてパターンを作成します。エリアモデルの類似性測定基準は、正規化されたグレースケール相関係数に基づいています。
1 = エッジモデル (デフォルト) | エッジモデル登録は、通常は対象物の境界線上で検出されるグレースケールの不連続に隣接するサンプリングポイントに基づいてパターンを作成します。エッジモデルの類似性測定基準は、正規化されたグレースケール相関に基づいています。 注意: モデルを定義するために使用可能なポイントの最大数は 4096 です。

粗さ

登録されるモデルの最小の特徴のサイズを指定します。

0 = 高精度 | 最小の特徴のサイズは約 4 ピクセル
1 = 中程度 (デフォルト) | 最小の特徴のサイズは約 4 ～ 8 ピクセル
2 = 粗いモデル | 最小の特徴のサイズは約 8 ピクセル以上

精度

精度/信頼性と実行速度の間のトレードオフを指定します。

0 = 高精度 | 精度/信頼性が高くなり、実行速度が遅くなるように指定します。
1 = 中程度 (デフォルト) |
2 = 高速 | 精度/信頼性が低くなり、実行速度が速くなるように指定します。

行オフセット

モデルのローカル座標系で測定されたとおり、モデルの中心からレスポンスポイントへの行オフセットを指定します (-1199 ～ 1199、デフォルト = 0)。

列オフセット

モデルのローカル座標系で測定されたとおり、モデルの中心からレスポンスポイントへの列オフセットを指定します (-639 ～ 639、デフォルト = 0)。

登録を強制

スプレッドシート更新での自動モデル登録を有効または無効にします。登録を強制がオフであれば、モデル領域またはモデル設定が変更されたときにのみモデルが登録されます。オンの場合は、スプレッドシートが実行されるたびにモデルが再登録されます。

0 =オフ(デフォルト)
1 =オン

パターン

FindPatterns 関数が独自モデルを使用してサーチするか、別の FindPatterns 関数に含まれているモデルを使用してサーチするかを指定します。デフォルト値は 0 で、現在の FindPatterns 関数が独自のモデルを使用することを意味します。

また、パターンはほかの FindPatterns 関数によって登録されたローカルモデルをサーチに使用するように指定する [image] データ構造体も参照できます。この代替動作によって、スプレッドシート上の複数の PatFind サーチのインスタンスで 1 つのモデルを共有することが可能になります。

注意: この動作はチェインしません。つまり、さらに別の PatFind モデルを参照している PatFind モデルを参照することはできません。

サーチ領域

パターン検索が実行される矩形画像を指定します。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度

検出する数

返される一致したパターンの最大数を指定します (0 ～ 255、デフォルト = 1)。

注意: 返すことができるパターンの最大数は 255 ですが、[モデル設定] パラメータがエッジモデルに設定されている場合は、そのほかの設定、特に [粗さ]、[精度]、および [スケール許容] によって、返されるパターン数は大幅に減少することがあります。より多くのパターンを検出する必要がある場合は、FindPatMaxPatterns 関数を使用することを推奨します。

角度範囲

パターンの回転に対する関数のプラス/マイナス方向の許容範囲を指定します (0 ～ 180、デフォルト = 15)。この関数は、指定された範囲外のパターンも検出しますが、精度が少し下がります。角度範囲を 0 より大きい値に設定すると、パターンを検出する速度が遅くなります。

スケール許容

パターンのスケール変化に対する関数の許容値を指定します。

0 =オフ(デフォルト) | スケール検索を無効にします。スケール検索が無効のときも、この関数は元のモデルサイズの約 ±10% の範囲内のパターンを検出しますが、不一致が増えるのでレスポンスが低下します。
1 =オン | スケール検索を有効にします。スケール検索が有効のとき、この関数は元のモデルサイズの ±10% の範囲で限定されたスケール調整を実行します。

アクセプトしきい値

パターンレスポンスの最小一致得点を指定します (0 ～ 100、デフォルト = 50)。この関数は、アクセプトしきい値を超えた、検出パターンのレスポンスを返します。

コンフューズしきい値

モデルの実際のインスタンスでない画像内パターンに対し、予測される最大パターンレスポンス得点を指定します (0 ～ 100、デフォルト = 70)。このサーチパラメータを設定すると、関数がどのパターンレスポンスを調査し、どのパターンを安全に無視できるかを知るのに有効です。このパラメータはコンフュージョンしきい値とも呼ばれます。

タイムアウト

この関数によるパターンのサーチ時間をミリ秒単位で指定します (0 ～ 30000、デフォルト = 5000)。指定された時間が経過すると、実行は停止し、#ERR が返されます。値を 0 に設定すると設定値が無効になり、タイムアウトは適用されません。

表示

画像上の FindPatterns グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | FindPatterns 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 十字マークは、検出されたモデルのオフセット座標に常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域と十字マークが常に表示されます。

FindPatterns 関数 の結果出力

戻り値 | 得点によってソートされたモデルとパターンレスポンスのリストを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | FindPatterns 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

FindPatterns 関数 データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(パターン, インデックス) | パターン位置の行座標
列 | GetCol(パターン, インデックス) | パターン位置の列座標
角度 | GetAngle(パターン, インデックス) | パターン位置の角度
スケール | GetScale(パターン, インデックス) | 登録されたモデルと比較したパターンのサイズ (モデルサイズのパーセントで表示)
得点 | GetScore(パターン, インデックス) | パターンのレスポンス得点

関連項目

パターンマッチングツールについて

パターンデータアクセス関数

プロパティシートの使用方法


SortPatterns 関数

SortPatterns 関数 |
ビジョンツール → パターンマッチ | In-Sight 関数リファレンス

画像内のパターンの位置でパターンをソートします。入力 [image] データ構造体内の各パターンについて、SortPatterns 関数は、指定された画像フィクスチャ座標系に対するパターンのレスポンスの位置を計算します。パターンは、X 座標、Y 座標、角度、角度絶対値、距離、またはグリッドのいずれか 1 つを基準にソートされます。ソートされたパターンは、新しい [image] データ構造体として返されます。

SortPatterns 関数 (

パターン ,

ソートする数 ,

ソート基準 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

ソート許容値 ,

表示

)

SortPatterns 関数関数の入力パラメータ

パターン

この引数は、FindPatMaxPatterns 関数または FindPatterns 関数によって返される有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。

ソートする数

ソートするパターンの最大数 (1 ～ 255、デフォルト = 1) を指定します。

ソート基準

ソートの方法を指定します。

0 = X (デフォルト) | x 軸に沿った距離を基準に、距離の短いものから長いものの順 (降順) でソートします。 Closed 例
1 = Y | y 軸に沿った距離を基準に、距離の短いものから長いものの順 (降順) でソートします。 Closed 例
2 = 角度 | フィクスチャ座標系の X 軸からパターンのレスポンス点とフィクスチャの原点により定義される線分までの角度 (0 ～ 360 度) を、距離の短いものから長いものの順 (降順) にソートします。 Closed 例
3 = 角度絶対値 | フィクスチャ座標系の x 軸からパターンのレスポンス点とフィクスチャの原点により定義される線分までの角度 (-180 ～ 180 度) の絶対値を、距離の短いものから長いものの順 (降順) にソートします。 Closed 例
4 = 距離 | フィクスチャの原点からパターンのレスポンス点までの距離を、距離の短いものから長いものの順 (降順) にソートします。 Closed 例
5 = グリッド X | まず、フィクスチャの x 軸に沿った距離を基準に距離の短いものから長いものの順 (降順) でソートし、次に y 軸に沿った距離を基準に距離の短いものから長いものの順 (降順) でソートします。 注意: SortPatterns 関数は、グリッド X が選択され、CalibrateImage 関数や TransPatternsToWorld 関数の出力などのワールド座標にキャリブレーションされた画像を関数が参照している場合には、#ERR を返します。グリッド X のソートは、ピクセル座標にのみ適用できます。ワールド座標を使用して [グリッド X] のソート方法を使用するには、SortPatterns 関数によって参照されている FindPatMaxPatterns 関数または FindPatterns 関数が、SortPatterns 関数によってピクセル座標でソートされた TransformImage 関数の出力を参照する必要があります。出力データは、その後、TransPatternsToWorld 関数を使用してワールド座標に変換できます。 Closed 例
6 = グリッド Y | まず、フィクスチャの y 軸に沿った距離を基準に距離の短いものから長いものの順 (降順) でソートし、次に x 軸に沿った距離を基準に距離の短いものから長いものの順 (降順) でソートします。 注意: SortPatterns 関数は、[グリッド Y] が選択され、CalibrateImage 関数や TransPatternsToWorld 関数の出力などのワールド座標にキャリブレーションされた画像を関数が参照している場合には、#ERR を返します。グリッド Y のソートは、ピクセル座標にのみ適用できます。ワールド座標を使用して [グリッド Y] のソート方法を使用するには、SortPatterns 関数によって参照されている FindPatMaxPatterns 関数または FindPatterns 関数が、SortPatterns 関数によってピクセル座標でソートされた TransformImage 関数の出力を参照する必要があります。出力データは、その後、TransPatternsToWorld 関数を使用してワールド座標に変換できます。 Closed 例

フィクスチャ

[フィクスチャ] 入力に対する参照パターンまたはビジョンツール関数の画像座標系の出力を定義します。フィクスチャに対する参照パターンを設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して参照されるパターンを確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

ソート許容値

グリッド X またはグリッド Y を使用してソートする場合に、検出されたパターンをパターングループに含むために必要な、登録パターン高さのサイズの割合 (%) (1% ～ 500%、デフォルト = 50%) を指定します。

注意:　このパラメータは [ソート基準] パラメータを [グリッド X] または [グリッド Y] のいずれかに設定した場合にのみ使用します。

表示

画像上の SortPatterns グラフィックスの表示モードを指定します。

0 = 非表示 (デフォルト) | SortPatterns 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 検出された各パターンに対して十字マークが常に表示されます。
3 = 全て表示: (パターンの特徴を含む) | 入力画像領域、検出された各パターンに対する十字マーク、および一致特徴が常に表示されます。 注意: 一致特徴は、PatMax により登録されたパターンについてのみ表示されます。

SortPatterns 関数関数の結果出力

戻り値 | ソートされたパターンのレスポンス点を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | SortPatterns 関数を初めてセルに挿入すると、スプレッドシート内に結果テーブルが自動的に作成されます。 注意: [ソートする数] パラメータの値が 0 より大きい場合、SortPatterns 関数 関数は、 [image] データ構造体内の最初の 10 個のパターンに対応する最大 10 のエントリを含んでいる結果テーブルを自動的に挿入します。より多くのエントリを表示する場合は、最後の行をコピーし、追加の行を末尾に貼り付けることによりテーブルを拡張することができます。新しく貼り付けた行のインデックスの値を必ず繰り上げて、正しいパターンがインデックスされるようにしてください。

SortPatterns 関数データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(パターン, インデックス) | パターン位置の行座標
列 | GetCol(パターン, インデックス) | パターン位置の列座標
角度 | GetAngle(パターン, インデックス) | パターン位置の角度
スケール | GetScale(パターン, インデックス) | 元のモデルに対するサイズの割合をパーセント単位で表したもの
得点 | GetScore(パターン, インデックス) | パターンのレスポンス得点

関連項目

パターンマッチングツールについて

パターンデータアクセス関数

プロパティシートの使用方法


TrainPatMaxPattern 関数

ビジョンツール → パターンマッチ

In-Sight 関数リファレンス

FindPatMaxPatterns 関数は、構造体から登録された検出する対象物の登録済み (内部) 幾何学記述。 パターンに基づいて、画像内のパターンを検出します。

PatMax® パターンは幾何図形特徴の集合です。ここで、各特徴は、ピクセル値が異なる 2 つの領域間の境界上の点です。TrainPatMaxPattern 関数TrainPatMaxPattern 関数でパターンを登録し、次に FindPatMaxPatterns 関数を使用して、画像内でそのパターンの 1 つ以上のインスタンスを検出します。PatMax は、マシンビジョンに利用可能なほかのパターン検出技術との差別化を図る、次の 3 つの重要な機能を提供します。

  • 外観が、回転、スケーリング、伸長された対象物の高速検出
  • 対象物のグレースケール値ではなく、形状に基づく検出技術
  • 非常に高い精度

PatMax がほかのパターン検出技術と異なる点は、回転またはスケーリングを効率的かつ高精度に行うことができないピクセルグリッド表現に基づいてはいないということです。その代わりに、PatMax では、パターンマッチングのための迅速かつ正確な変換が可能な特徴ベースの表現を使用します。

注意: 登録済みの PatMax パターンを含むセルをハイライトすると、そのパターンの特徴が表示されます。これにより、このパターンを保持している TrainPatMaxPattern のプロパティシートを表示せずに、登録されているパターンを参照できます。

  • TrainPatMaxPattern 関数の入力パラメータ
  • TrainPatMaxPattern 関数の結果出力
  • TrainPatMaxPattern データアクセス関数
  • 関連項目

TrainPatMaxPattern 関数関数の入力パラメータ

TrainPatMaxPattern 関数(

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

パターン領域.X ,

パターン領域.Y ,

パターン領域.高さ,

パターン領域.幅,

パターン領域.角度,

パターン領域.カーブ,

外部定義領域,

パターン原点.行オフセット,

パターン原点.列オフセット,

パターン設定.アルゴリズム,

パターン設定.融通性,

パターン設定.極性を無視,

パターン設定.感度,

パターン設定.粗粒度,

パターン設定.微粒度,

登録画像の再使用,

タイムアウト,

表示

)

画像

このパラメータは、スプレッドシートで [image] データ構造体を含むセルを参照する必要があります。デフォルトでは、このパラメータは、AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールのグラフィックス関数や、座標補正関数により返された、そのほかの [image] データ構造体も参照できます。

フィクスチャ

[フィクスチャ] 入力、またはビジョンツール関数の画像座標系の出力に関連する [パターン領域] を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

パターン領域

これは対象領域 (ROI) とも呼ばれ、パターン抽出の対象となる画像の領域を指定します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

外部領域

このパラメータは、Annulus、Circle、Region、EditAnnulus、EditCircle、EditCompositeRegion、EditPolygon、または EditRegion の各関数を含むスプレッドシートセルを参照できます。このパラメータを使用すると、TrainPatMaxPattern ツールは、[パターン領域] と [フィクスチャ] の設定を無視し、参照される領域に指定された画像領域を検査します。EditCompositeRegion 関数コントロールを参照している場合は、検査領域がさまざまな形状の混合となることがあります。合成領域内の各形状は、検査領域に対して加算または減算 (マスキング) されるように割り当てることができます。

パターン原点

登録パターンの原点の行および列を、登録領域の中心からのオフセットとして指定します。

行オフセット | 登録パターンの中心からの行オフセットを指定します。
列オフセット | 登録パターンの中心からの列オフセットを指定します。

パターン設定

パターンの登録のための設定を指定します。

アルゴリズム

パターンの登録に使用するアルゴリズムを指定します。

0 = PatMax (デフォルト) | PatMax アルゴリズムは、PatQuick よりも高い精度を提供しますが、実行に要する時間はより長くなります。
1 = PatQuick | PatQuick アルゴリズムは、PatMax よりも精度は劣りますが、実行に要する時間は短縮されます。

融通性

周囲長の偏差の量を指定します (0～10、デフォルト = 0)。

0 = 許容しない

1 以上 = 柔軟な境界

極性を無視

登録パターンに対して、色が反転した一致特徴を含む一致を検出可能かどうかを指定します。

0 = OFF (デフォルト) | 色が反転した特徴は一致しません。
1 = ON | 色が反転した一致特徴を許容します。

感度

0 = 実装されていません

粗粒度

粗粒度をピクセル単位で指定します。粗粒度は、大きな特徴を検出して、画像内の大まかなパターン一致を実行時に迅速に検出するために使用されます (0 ～ 10、デフォルト = 0)。

注意: 1.0 未満の値が指定された場合、[粗粒度] および [微粒度] の両方のパラメータ値が自動的に計算されます。

微粒度

微粒度をピクセル単位で指定します。微粒度は、小さな特徴を検出して、パターン位置を正確に判定するために使用されます (0～10、デフォルト = 0)。

注意:

  • 1.0 未満の値が指定された場合、[粗粒度] および [微粒度] の両方のパラメータ値が自動的に計算されます。
  • 微粒度の値を粗粒度の値よりも大きくすることはできません。
登録画像の再使用

パターンを登録するために使用した画像を保存し、[パターン設定] パラメータが変更されたときに使用するかどうかを指定します。

0 = OFF (デフォルト)

現在の画像 ([画像] パラメータに指定された画像) がパターンの登録/再登録に使用されます。

1 = ON

1 つ以上の [パターンの設定] パラメータが変更された場合は、パターンを登録するために最初に使用された画像が、パターンの再登録に使用されます。最初に有効にした場合は、[画像] パラメータによって識別された画像がパターンの登録に使用され、画像のコピーがジョブに保存されます。それより後の [パターンの設定] パラメータへの変更は、格納された画像を使用して実行されます。

注意:
  • ロードしているジョブがリリース 4.4.1 より前の In-Sight Explorer ファームウェアで作成されている場合、この機能を使用するには、パターンを In-Sight Explorer ファームウェア 4.4.1 以降で再登録する必要があります。古いリリースの In-Sight Explorer で登録されたパターンでこのパラメータが有効になっている場合、関数は #ERR を返します。このパラメータを使用するには、パターンを再登録する必要があります。
  • このパラメータが有効なときに、[フィクスチャ] 入力パラメータが変更され、[パターン領域] (または、[外部定義領域]) が移動または変更されると、関数は入力画像内の登録領域を調整し、新しい画像を保存して、パターンを再登録します。
  • [登録画像の再使用e] パラメータが On (有効) に変わったが、パターンがまだ登録されていない場合、パラメータが Off (無効) になり新しいパターンが登録されるまで、関数は #ERR を返します。

タイムアウト

関数が有効なパターンをサーチする時間をミリ秒単位で指定します (0～30000)。この時間が経過すると、処理は中止され、#ERR が返されます。値を 0 に設定すると設定値が無効になり、タイムアウトは適用されません。

表示

画像上の TrainPatMaxPattern 関数 グラフィックスの表示モードを指定します。

0 = 非表示 | TrainPatMaxPattern 関数 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 登録されたパターンの特徴が常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域、パターンの原点、および登録された特徴が常に表示されます。 注意: 登録された特徴の色 (緑、黄、赤) は、特徴の一致候補の品質を表しています。緑は品質が高いことを、赤は低いことを表します。すべての登録特徴が緑色になるまで粒度パラメータを調節する必要があります。または、より品質の高い画像を選択して、登録します。特徴 (エッジ) や画像コントラストがより明瞭であるほど高い結果が得られます。
3 = 全て表示: 入力、結果および登録画像 | 入力画像領域、パターンの原点、登録された特徴、および登録画像が常に表示されます。

TrainPatMaxPattern 関数関数の結果出力

戻り値

登録されたパターンを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。次の取り込みで新しいパターンを誤って登録することを避けるために、この関数はデフォルトで無効に設定されています。

結果

TrainPatMaxPattern 関数 関数が初めてセルに挿入されると、登録状態が右隣のセルに自動的に表示されます。パターンを登録できない場合は #ERR が挿入されます。

注意: この関数のプロパティシートには、パターンを登録し易くするためのヒントとして、補助的な情報文字列が表示されます。表示される可能性のある情報文字列については、 Closed ここをクリックしてください。

  • パターンに含まれるマッチ特徴が少なすぎることがあります。
  • 特徴の粒度を自動的に設定するのは困難です。
  • 手動で [粒度] を設定してください。登録画像の表示がぼやけているので、パターンが予想より正確でないことがあります。
  • 疎粒度の特徴が同じ方向であるために、パターン結果が不安定になることがあります。
  • 高精度な特徴が多いため、実行時間が長くなることがあります。手動で [粒度] を設定してください。
  • パターンに含まれる情報が不十分なため、角度またはスケールを正確に測定できないことがあります。

スプレッドシートに情報文字列を挿入するには、GetInfoString データアクセス関数を使用します。

TrainPatMaxPattern 関数データアクセス関数

1 つのデータアクセス関数がスプレッドシートに自動挿入されます。

登録

GetTrained(パターン)

パターンを登録できた場合には 1、登録できなかった場合には 0 を返します。

関連項目

  • パターンマッチングツールについて
  • FindPatMaxPatterns 関数
  • パターンデータアクセス関数
  • プロパティシートの使用方法


幾何・計測関数

In-Sight 関数リファレンス

幾何・計測関数を使用すると、スプレッドシートのプログラマは、円、点、線分などの標準的幾何図形構造体の距離を容易に計算することができます。

注意: 幾何・計測関数で、参照としてワールド座標データが使用されている場合、結果として得られるグラフィックスは正しく表示されません。

  • 幾何図形関数:点と線から幾何図形を作成します。
  • 計測関数: 円、点、および線の間の距離と角度を計算します。


幾何図形関数

幾何・計測関数

In-Sight 関数リファレンス

幾何図形関数は点と線から幾何図形を作成します。

  • BoundingRectangle 関数: 指定された (インデックス付けされた) ブロブの周りを囲む外接矩形を決定します。
  • CircleFromNPoints 関数: 3 つ以上の点から円を作成します。
  • LineFromNPoints 関数: 2 つ以上の点から線を作成します。
  • SegmentFromLines 関数: 新しい線分を作成するために終点を平均します。


BoundingRectangle 関数

BoundingRectangle 関数 |
幾何・計測 → 幾何図形 | In-Sight 関数リファレンス

指定された（インデックス付けされた）ブロブの周りを囲む外接矩形を決定します。この関数は、指定された関数入力に基づいて、ブロブのすべての点を囲む矩形を検出します。

BoundingRectangle 関数 (

ブロブ,

インデックス,

配置,

角度,

パディング.高さ,

パディング.幅,

表示

)

BoundingRectangle 関数の入力パラメータ

ブロブ

このパラメータは、ExtractBlobs 関数、FindBlobs 関数、または SortBlobs 関数により返される有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。

インデックス

構造体の中におけるブロブのインデックスを指定します。

配置

検出する矩形の配置を指定します。例については、 Closed ここをクリックしてください。

0 = ブロブ座標フレーム（デフォルト） | ブロブの角度と同じ角度になるように矩形を指定します。 注意: ブロブの角度は、GetAngle 関数によって返すことができます。
1 = 画像座標フレーム | 角度 0 度においてブロブと最も適合するように矩形を指定します。
2 = ユーザ座標フレーム | 角度パラメータで使用された角度においてブロブと最も適合するように矩形を指定します。

角度

外接矩形の検出に必要な角度（-360～360度）を指定します。

パディング

ブロブと矩形の間にある空き領域の大きさを、ピクセルで指定します。

高さ | ブロブと矩形の間にある空き領域の上辺から下辺までの大きさを、ピクセル （0～（画像の高さ÷2－1）） で指定します。
幅 | ブロブと矩形の間にある空き領域の左辺から右辺の大きさを、ピクセル （0～（画像の高さ÷2－1）） で指定します。

表示

BoundingRectangle 関数のグラフィックスオーバレイの画像上の表示モードを指定します。

0 = 非表示（デフォルト） | BoundingRectangle 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 外接矩形領域が常に表示されます。

BoundingRectangle 関数の結果出力

戻り値 | インデックス付きブロブから最適な外接矩形を定義する [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内の結果テーブルが自動的に作成されます。

BoundingRectangle 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(領域) | 画像座標での領域の原点の行オフセット
列 | GetCol(領域) | 画像座標での領域の原点の列オフセット
高さ | GetHigh(領域) | 領域の X 軸に沿った寸法。
幅 | GetWide(領域) | 領域の Y 軸に沿った寸法。
角度 | GetAngle(領域) | 画像座標での角度

関連項目

ブロブツールについて

ブロブデータアクセス関数

プロパティシートの使用方法


CircleFromNPoints 関数

CircleFromNPoints 関数 |
幾何・計測関数 → 幾何図形 | In-Sight 関数リファレンス

3 つ以上の入力点を使用して円を作成します。

CircleFromNPoints 関数 (

点 0 行,

点 0 列,

点 1 行,

点 1 列,

点 2 行,

点 2 列,

[...,

点 N 行,

点 N 列,

表示]

)

CircleFromNPoints 関数の入力パラメータ

点 0

1 番目の点の座標を指定します。

点 0 行 | 1 番目の点の X 座標
点 0 列 | 1 番目の点の Y 座標

点 1

2 番目の点の座標を指定します。

点 1 行 | 2 番目の点の X 座標
点 1 列 | 2 番目の点の Y 座標

点 2

3 番目の点の座標を指定します。

点 2 行 | 3 番目の点の X 座標
点 2 列 | 3 番目の点の Y 座標

点 3..N

任意の追加点の座標をオプションで指定します。

点 N 行 | N 番目の点の X 座標
点 N 列 | N 番目の点の Y 座標

表示

常時表示されるグラフィックス項目を指定します。

0 = 非表示 | CircleFromNPoints 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックス項目が表示されません。
1 = 結果のグラフィックスのみ | 作成された円グラフィックスが常に表示されます。入力点は、CircleFromNPoints 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合にのみ表示されます。
2 = 入力と結果のグラフィックス | 作成された円および入力点が常に表示されます。

CircleFromNPoints 関数の結果出力

戻り値 | 作成された円の行、列、半径、およびシグマを含んでいる [image] データ構造体。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内の結果テーブルが自動的に作成されます。

CircleFromNPoints 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(CircleFit) | 円の中心の X 座標
列 | GetCol(CircleFit) | 円の中心の Y 座標
半径 | GetRadius(CircleFit) | 円の半径
シグマ | GetSigma(CircleFit) | 点から円までの距離を二乗したものの合計の平方根を点の数で割った値

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

距離 | GetDistance(CircleFit, インデックス) | インデックス付きの点と、円の間の距離。値が負の数の場合、点は円の内側にあります。インデックス付きの点が無効であれば #ERR を返します。
最大距離 | GetMaxDist(CircleFit) | 円と、円から最も遠い点の間の距離。値が負の数の場合、点は円の内側にあります。
最大距離インデックス | GetMaxDistIndex(CircleFit) | 円から最も遠い点のインデックス
N 点使用 | GetNPointsUsed(CircleFit) | 円の作成に使用された点の数


LineFromNPoints 関数

LineFromNPoints 関数 |
幾何・計測 → 幾何図形 | In-Sight 関数リファレンス

2 つ以上の入力点を使用して線を作成します。

LineFromNPoints 関数 (

点行 0,

点列 0,

点行 1,

点列 1,

[...

点行 N,

点列 N,

表示]

)

LineFromNPoints 関数関数の入力パラメータ

点 0

1 番目の点の座標を指定します。

点行 0 | 1 番目の点の X 座標
点列 0 | 1 番目の点の Y 座標

点 1

2 番目の点の座標を指定します。

点行 1 | 2 番目の点の X 座標
点列 1 | 2 番目の点の Y 座標

点 2..N

任意の追加点の座標を指定します。

点行 N | N 番目の点の X 座標
点列 N | N 番目の点の Y 座標

表示

常時表示されるグラフィックス項目を指定します。

0 = 非表示 | LineFromNPoints 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックス項目が表示されません。
1 = 結果のグラフィックスのみ | 最適ラインのグラフィックスが常に表示されます。入力点は、LineFromNPoints 関数を含んでいるセルがスプレッドシート内のアクティブセルである場合のみ表示されます。
2 = 入力と結果のグラフィックス | 最適ラインと入力点は常に表示されます。

LineFromNPoints 関数関数の結果出力

戻り値 | 2 つ以上の有効な点がデータに含まれる場合の [image] データ構造体。データに含まれる有効な点が 1 つ以下の場合、#ERR を返します。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

LineFromNPoints 関数データアクセス関数

スプレッドシートに自動挿入されて結果テーブルを作成するデータアクセス関数は次のとおりです。

行 0 | GetRow(LineFit, 0) | 始点の X 座標
列 0 | GetCol(LineFit, 0) | 始点の Y 座標
行 1 | GetRow(LineFit, 1) | 終点の X 座標
列 1 | GetCol(LineFit, 1) | 終点の Y 座標
カイ 2 乗 | GetChi2(LineFit) | 点から線への距離の二乗の合計

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

距離 | GetDistance(LineFit, インデックス) | インデックス付きの点と、線の間の距離
最大距離 | GetMaxDist(LineFit) | 線から最も遠い点
最大距離インデックス | GetMaxDistIndex(LineFit) | 線から最も遠い点のインデックス
N 点使用 | GetNPointsUsed(LineFit) | 線の計算に使用された点の数


SegmentFromLines 関数

SegmentFromLines 関数 |
幾何・計測 → 幾何図形 | In-Sight 関数リファレンス

入力した 2 つの線を平均して、新しい線分を計算します。この関数は、1 番目の線と 2 番目の線について、始点どうしを平均します。同様に、1 番目の線と 2 番目の線について、終点どうしを平均し、結果として平均線分が得られます。

SegmentFromLines 関数 (

線0.X 0,

線0.Y 0,

線0.X 1,

線0.Y 1,

線1.X 0,

線1.Y 0,

線1.X 1,

線1.Y 1,

表示

)

SegmentFromLines 関数の入力パラメータ

線 0

1 番目の線の座標を指定します。

X 0 | 1 番目の線の始点の X 座標
Y 0 | 1 番目の線の始点の Y 座標
X 1 | 1 番目の線の終点の X 座標
Y 1 | 1 番目の線の終点の Y 座標

線 1

2 番目の線の座標を指定します。

X 0 | 2 番目の線の始点の X 座標
Y 0 | 2 番目の線の始点の Y 座標
X 1 | 2 番目の線の終点の X 座標
Y 1 | 2 番目の線の終点の Y 座標

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示 | この関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックス項目が表示されません。
1 = 結果のグラフィックスのみ | 返されるデータ構造体に関連付けられているグラフィックス項目が常に表示されます。ほかのグラフィックス項目は、この関数がスプレッドシート内のアクティブセルである場合のみ表示されます。
2 = 入力と結果のグラフィックス | 返されるデータ構造体と入力画像領域に関連付けられているグラフィックス項目が常に表示されます。

SegmentFromLines 関数の結果出力

戻り値 | 平均の線分が含まれている [image] データ構造体。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

SegmentFromLines データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(線, 0) | 始点の X 座標
列 0 | GetCol(線, 0) | 始点の Y 座標
行 1 | GetRow(線, 1) | 終点の X 座標
列 1 | GetCol(線, 1) | 終点の Y 座標

関連項目

幾何図形関数について

幾何・計測関数について

構造体データアクセス関数

プロパティシートの使用方法


計測関数

幾何・計測関数

In-Sight 関数リファレンス

計測関数は円、点、線間の距離と角度を計算します。

  • BlobToBlob 関数: 2 つのブロブの境界間における最小距離または最大距離を測定します。
  • BlobToLine 関数: ブロブ境界線と線の間の最小距離または最大距離を測定します。
  • BlobToPoint 関数: ブロブの境界線と点の間の最小距離または最大距離を測定します。
  • BlobToRadian 関数: ブロブ境界線と点の間の距離を、指定された角度で測定します。
  • CircleToCircle 関数: 2 つの円の最短距離を計算します。
  • LineToCircle 関数: 線と円の間の最小距離を計算します。
  • LineToLine 関数: 2 本の線の交点を計算します。
  • MidLineToMidLine 関数: ある線分の中点から別の線分の中点までの距離を計算します。
  • PointToCircle 関数: 点から円までの最小距離を計算します。
  • PointToLine 関数: 点から線への最小距離を計算します。
  • PointToPoint 関数: 2 点間の有向距離を計算します。
  • PointToPointAngle 関数: 2 点で形成する角度を計算します。
  • PointToPointDistance 関数: 2 点間の距離を計算します。


BlobToBlob 関数

BlobToBlob 関数 |
幾何・計測関数 → 計測 | In-Sight 関数リファレンス

2 つのブロブの境界間における最小距離または最大距離を測定します。

BlobToBlob 関数 (

ブロブ0,

インデックス0,

ブロブ1,

インデックス1,

検出する基準,

表示

)

BlobToBlob 関数 の入力パラメータ

ブロブ0

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

インデックス0

このパラメータは、 [image] データ構造体の中のゼロから始まるインデックスを参照します。

ブロブ1

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

インデックス1

このパラメータは、 [image] データ構造体の中のゼロから始まるインデックスを参照します。

検出する基準

距離の測定方法を指定します。

0 = 最小距離 | 1 番目と 2 番目のブロブのブロブ境界線間における、最小距離を検出します。
1 = 最大距離 | 1 番目と 2 番目のブロブのブロブ境界線間における、最大距離を検出します。

表示

画像上の BlobToBlob グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | BlobToBlob 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 2 つのブロブ間の最小距離または最大距離を示す線分が、常に表示されます。
2 = 入力と結果のグラフィックス | 2 つのブロブとその間の線分が常に表示されます。

BlobToBlob 関数の結果出力

戻り値 | ブロブと、別のブロブの境界線上にある最も近い点または最も遠い点の間の有効距離を含んでいる [image] データ構造体
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

BlobToBlob 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | 1 番目のブロブの境界線上にある最も近い点または最も遠い点の X 座標
列 0 | GetCol(距離, 0) | 1 番目のブロブの境界線上にある最も近い点または最も遠い点の Y 座標
行 1 | GetRow(距離, 1) | 2 番目のブロブの境界線上にある最も近い点または最も遠い点の X 座標
列 1 | GetCol(距離, 1) | 2 番目のブロブの境界線上にある最も近い点または最も遠い点の Y 座標
角度 | GetAngle(距離) | 1 番目のブロブと 2 番目のブロブの境界点間の角度
距離 | GetDistance(距離) | 1 番目のブロブと 2 番目のブロブの境界点間にある距離

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


BlobToLine 関数

BlobToLine 関数 |
幾何・計測関数 → 計測 | In-Sight 関数リファレンス

ブロブ境界線と線の間の最小距離または最大距離を測定します。

BlobToLine 関数 (

ブロブ,

インデックス,

線.X 0,

線.Y 0,

線.X 0,

線.Y 0,

検出する基準,

表示

)

BlobToLine 関数の入力パラメータ

ブロブ

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

インデックス

このパラメータは、 [image] データ構造体の中のゼロから始まるインデックスを参照します。

線

線の座標を指定します。

X 0 | 線の始点の X 座標
Y 0 | 線の始点の Y 座標
X 1 | 線の終点の X 座標
Y 1 | 線の終点の Y 座標

検出する基準

距離の測定方法を指定します。

0 = 最小距離 | ブロブ境界線と線の間の最小距離を検出します。
1 = 最大距離 | ブロブ境界線と線の間の最大距離を検出します。

表示

画像上の BlobToLine グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | BlobToLine 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | ブロブと線の間の最小距離または最大距離を示す線分が、常に表示されます。
2 = 入力と結果のグラフィックス | ブロブと線、およびそれらの間の線分が常に表示されます。

BlobToLine 関数の結果出力

戻り値 | 線と、ブロブ境界線上にある最も近い点または最も遠い点の間の有効距離を含んでいる [image] データ構造体
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

BlobToLine 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | ブロブ境界線上にある最も近い点または最も遠い点の X 座標
列 0 | GetCol(距離, 0) | ブロブ境界線上にある最も近い点または最も遠い点の Y 座標
行 1 | GetRow(距離, 1) | 線上の最も近い点または最も遠い点の X 座標
列 1 | GetCol(距離, 1) | 線上の最も近い点または最も遠い点の Y 座標
角度 | GetAngle(距離) | ブロブ境界点と線の間の角度
距離 | GetDistance(距離) | ブロブ境界点と線の間の距離

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


BlobToPoint 関数

BlobToPoint 関数 |
幾何・計測関数 → 計測 | In-Sight 関数リファレンス

ブロブの境界線と点の間の最小距離または最大距離を測定します。

BlobToPoint 関数 (

ブロブ,

インデックス,

点.X,

点.Y,

検出する基準,

表示

)

BlobToPoint 関数の入力パラメータ

ブロブ

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

インデックス

このパラメータは、 [image] データ構造体の中のゼロから始まるインデックスを参照します。

点

点の座標を指定します。

X | 点の X 座標
Y | 点の Y 座標

検出する基準

距離の測定方法を指定します。

0 = 最小距離 | ブロブ境界線と点の間の最小距離を検出します。
1 = 最大距離 | ブロブ境界線と点の間の最大距離を検出します。

表示

画像上の BlobToPoint グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | BlobToPoint 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | ブロブと点の間の最小距離または最大距離を示す線分が、常に表示されます。
2 = 入力と結果のグラフィックス | ブロブと点、およびそれらの間の線分が常に表示されます。

BlobToPoint 関数の結果出力

戻り値 | 点と、ブロブ境界線上にある最も近い点または最も遠い点の間の有効距離を含んでいる [image] データ構造体
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

BlobToPoint 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | ブロブ境界線上にある最も近い点または最も遠い点の X 座標
列 0 | GetCol(距離, 0) | ブロブ境界線上にある最も近い点または最も遠い点の Y 座標
行 1 | GetRow(距離, 1) | 点の X 座標
列 1 | GetCol(距離, 1) | 点の Y 座標
角度 | GetAngle(距離) | ブロブ境界点と点の間の角度
距離 | GetDistance(距離) | ブロブ境界点と点の間の距離

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


BlobToRadian 関数

幾何・計測関数 → 計測

In-Sight 関数リファレンス

ブロブ境界線と点の間の距離を、指定された角度で測定します。

BlobToRadian 関数 (

ブロブ,

インデックス,

点.X,

点.Y,

点.角度,

表示

)

BlobToRadian 関数の入力パラメータ

ブロブ

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

インデックス

このパラメータは、 [image] データ構造体の中のゼロから始まるインデックスを参照します。

点

点の座標と角度を指定します。

X | 点の X 座標
Y | 点の Y 座標
角度 | 点の角度

表示

画像上の BlobToRadian グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | BlobToRadian 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | ブロブと放射状線の間の最小距離または最大距離を示す線分が、常に表示されます。
2 = 入力と結果のグラフィックス | ブロブと放射状線、およびそれらの間の線分が常に表示されます。

BlobToRadian 関数の結果出力

戻り値 | 放射状線と、ブロブ境界線上にある最も近い点または最も遠い点の間の有効距離を含んでいる [image] データ構造体
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

BlobToRadian 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | ブロブ境界線上にある最も遠い点の X 座標
列 0 | GetCol(距離, 0) | ブロブ境界線上にある最も遠い点の Y 座標
行 1 | GetRow(距離, 1) | 点パラメータで指定された X 座標
列 1 | GetCol(距離, 1) | 点パラメータで指定された Y 座標
角度 | GetAngle(距離) | ブロブ境界線上の点と放射状線上の点との間の角度
距離 | GetDistance(距離) | ブロブ境界線上の点と放射状線上の点との間の距離

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


CircleToCircle 関数

CircleToCircle 関数 |
幾何・計測関数 → 計測 | In-Sight 関数リファレンス

2 つの円の最短距離を計算します。2 つの円が交差している場合、交差する点が計算され返されます。1 つの円が別の円の内側に含まれている場合、計算される距離は負の値です。

CircleToCircle 関数 (

円 0.X,

円 0.Y,

円 0.半径,

円 1.X,

円 1.Y,

円 1.半径,

表示

)

CircleToCircle 関数の入力パラメータ

円 0

1 番目の円の座標とサイズを指定します。

X | 1 番目の円の中心の X 座標
Y | 1 番目の円の中心の Y 座標
半径 | 1 番目の円の半径（ピクセル単位）

円 1

2 番目の円の座標とサイズを指定します。

X | 2 番目の円の中心の X 座標
Y | 2 番目の円の中心の Y 座標
半径 | 2 番目の円の半径（ピクセル単位）

表示

画像上の CircleToCircle グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | CircleToCircle 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 2 つの円の最短距離を示す線分が常に表示されます。
2 = 入力と結果のグラフィックス | 2 つの円とその間の線分が常に表示されます。

CircleToCircle 関数の結果出力

戻り値 | データ構造体。1 番目の円の点、2 番目の円の点、2 点間の距離、および角度を含む。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

CircleToCircle 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | 交差しない場合は 1 番目の円にある点の X 座標。交差する場合は交点の 1 番目の点の X 座標。
列 0 | GetCol(距離, 0) | 交差しない場合は 1 番目の円にある点の Y 座標。交差する場合は交点の 1 番目の点の Y 座標。
行 1 | GetRow(距離, 1) | 交差しない場合は 2 番目の円にある点の X 座標。交差する場合は交点の 2 番目の点の X 座標。
列 1 | GetCol(距離, 1) | 交差しない場合は 2 番目の円の点の Y 座標。交差する場合は交点の 2 番目の点の Y 座標。
角度 | GetAngle(距離) | 2 点間の角度
距離 | GetDistance(距離) | 交差しない場合は 2 点間の距離。交差している場合は 0。

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


LineToCircle 関数

LineToCircle 関数 |
幾何・計測 → 計測 | In-Sight 関数リファレンス

線と円の間の最小距離を計算します。

LineToCircle 関数 (

線.X 0,

線.Y 0,

線.X 1,

線.Y 1,

円.X,

円.Y,

円.半径,

表示

)

LineToCircle 関数の入力パラメータ

線

線分の座標を指定します。

X 0 | 線の始点の X 座標
Y 0 | 線の始点の Y 座標
X 1 | 線の終点の X 座標
Y 1 | 線の終点の Y 座標

円

円の座標と大きさを指定します。

X | 円の中心の X 座標
Y | 円の中心の Y 座標
半径 | 円の半径（ピクセル単位）

表示

画像上の LineToCircle グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | LineToCircle 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 入力した線と円の間の最小距離を示す線分が常に表示されます。
2 = 入力と結果のグラフィックス | 入力した線と円、およびそれらの間の線分が常に表示されます。

LineToCircle 関数の結果出力

戻り値 | 線と円が交差しない場合、この関数は、線上の点、円の点、2 点間の距離、および有向距離の角度を含んでいる [image] データ構造体を返します。 線と円が交差する場合、この関数は 2 つの交点、線分の角度、および距離 (= 0) を含んでいる [image] データ構造体を返します。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

LineToCircle データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | 交差しない場合は 1 番目の円にある点の X 座標。交差する場合は交点の 1 番目の点の X 座標。
列 0 | GetCol(距離, 0) | 交差しない場合は 1 番目の円にある点の Y 座標。交差する場合は交点の 1 番目の点の Y 座標。
行 1 | GetRow(距離, 1) | 交差しない場合は 2 番目の円にある点の X 座標。交差する場合は交点の 2 番目の点の X 座標。
列 1 | GetCol(距離, 1) | 交差しない場合は 2 番目の円の点の Y 座標。交差する場合は交点の 2 番目の点の Y 座標。
角度 | GetAngle(距離) | 2 点間の角度
距離 | GetDistance(距離) | 交差しない場合は 2 点間の距離。交差している場合は 0。

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


LineToLine 関数

LineToLine 関数 |
幾何・計測 → 計測 | In-Sight 関数リファレンス

2 本の線の交点と角度を計算します。交差しない場合は、線間の距離が計算されて返されます。

LineToLine 関数 (

線0.X 0,

線0.Y 0,

線0.X 1,

線0.Y 1,

線1.X 0,

線1.Y 0,

線1.X 1,

線1.Y 1,

表示

)

LineToLine 関数の入力パラメータ

線 0

1 番目の線分の座標を指定します。

X 0 | 1 番目の線の始点の X 座標
Y 0 | 1 番目の線の始点の Y 座標
X 1 | 1 番目の線の終点の X 座標
Y 1 | 1 番目の線の終点の Y 座標

線 1

2 番目の線分の座標を指定します。

X 0 | 2 番目の線の始点の X 座標
Y 0 | 2 番目の線の始点の Y 座標
X 1 | 2 番目の線の終点の X 座標
Y 1 | 2 番目の線の終点の Y 座標

表示

画像上の LineToLine グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | LineToLine 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 入力した 2 つの線間の最小距離を示す線分が常に表示されます。
2 = 入力と結果のグラフィックス | 入力した線およびその間の線分が常に表示されます。

LineToLine 関数の結果出力

戻り値 | 2 本の線が交差する場合、この関数は、交点、角度、および距離 (= 0) を含んでいる [image] データ構造体を返します。 2 本の線が交差しない場合、この関数は、各線上の点、線間の距離、および角度を含んでいる [image] データ構造体を返します。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

LineToLine データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | 交差する場合は交点の X 座標。交差しない場合は線 0 の始点の X 座標。
列 0 | GetCol(距離, 0) | 交差する場合は交点の Y 座標。交差しない場合は線 0 の始点の Y 座標。
行 1 | GetRow(距離, 1) | 交差する場合は交点の X 座標。交差しない場合は、線 0 の始点に最も近い線 1 延長線上の点の X 座標。
列 1 | GetCol(距離, 1) | 交差する場合は交点の Y 座標。交差しない場合は、線 0 の始点に最も近い線 1 延長線上の点の Y 座標。
角度 | GetAngle(距離) | 有向線分間の角度
距離 | GetDistance(距離) | 2 本の線間の距離

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


MidLineToMidLine 関数

MidLineToMidLine 関数 |
幾何・計測 → 計測 | In-Sight 関数リファレンス

ある線分の中点から別の線分の中点までの距離を計算します。

MidLineToMidLine 関数 (

線0.X 0,

線0.Y 0,

線0.X 1,

線0.Y 1,

線1.X 0,

線1.Y 0,

線1.X 1,

線1.Y 1,

表示

)

MidLineToMidLine 関数の入力パラメータ

線 0

1 番目の線分の座標を指定します。

X 0 | 1 番目の線の始点の X 座標
Y 0 | 1 番目の線の始点の Y 座標
X 1 | 1 番目の線の終点の X 座標
Y 1 | 1 番目の線の終点の Y 座標

線 1

2 番目の線分の座標を指定します。

X 0 | 2 番目の線の始点の X 座標
Y 0 | 2 番目の線の始点の Y 座標
X 1 | 2 番目の線の終点の X 座標
Y 1 | 2 番目の線の終点の Y 座標

表示

画像上の MidLineToMidLine グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | MidLineToMidLine 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 2 つの線の交点があれば、それを示す十字マーク。
2 = 入力と結果のグラフィックス | 入力した 2 つの線と、交点を示す十字マークが常に表示されます。

MidLineToMidLine 関数の結果出力

戻り値 | 線分間の有向距離を含んでいる [image] データ構造体。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

MidLineToMidLine データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | 線 0 の中点の X 座標
列 0 | GetCol(距離, 0) | 線 0 の中点の Y 座標
行 1 | GetRow(距離, 1) | 線 1 の中点の X 座標
列 1 | GetCol(距離, 1) | 線 1 の中点の Y 座標
角度 | GetAngle(距離) | 2 つの中点間の角度
距離 | GetDistance(距離) | 2 つの中点間の距離

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


PointToCircle 関数

PointToCircle 関数 |
幾何・計測関数 → 計測 | In-Sight 関数リファレンス

点から円までの最小距離を計算します。点が円の内側にある場合、距離は負の値で報告されます。

PointToCircle 関数 (

点.X ,

点.Y ,

円.X ,

円.Y ,

円.半径 ,

表示

)

PointToCircle 関数の入力パラメータ

点

点の座標を指定します。

X | 点の X 座標
Y | 点の Y 座標

円

円の座標と大きさを指定します。

X | 円の中心の X 座標
Y | 円の中心の Y 座標
半径 | 円の半径

表示

画像上の PointToCircle グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | PointToCircle 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 点と円との間の最小距離を示す線分が常に表示されます。
2 = 入力と結果のグラフィックス | 点と円、およびそれらの間の線分が常に表示されます。

PointToCircle 関数の結果出力

戻り値 | 点と、円上の最も近い点の間の有向距離を含んでいる [image] データ構造体。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

PointToCircle データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | 点の X 座標
列 0 | GetCol(距離, 0) | 点の Y 座標
行 1 | GetRow(距離, 1) | 円上の最も近い点の X 座標
列 1 | GetCol(距離, 1) | 円上の最も近い点の Y 座標
角度 | GetAngle(距離) | 2 点間の角度
距離 | GetDistance(距離) | 2 点間の距離

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


PointToLine 関数

PointToLine 関数 |
幾何・計測関数 → 計測 | In-Sight 関数リファレンス

点から線への最小距離を計算します。

PointToLine 関数 (

点.X ,

点.Y ,

線.X 0 ,

線.Y 0 ,

線.X 1 ,

線.Y 1 ,

表示

)

PointToLine 関数の入力パラメータ

点

点の座標を指定します。

X | 点の X 座標
Y | 点の Y 座標

線

線の座標を指定します。

X 0 | 線の始点の X 座標
Y 0 | 線の始点の Y 座標
X 1 | 線の終点の X 座標
Y 1 | 線の終点の Y 座標

表示

画像上の PointToLine グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | PointToLine 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 点と入力した線間の最小距離を示す線分が常に表示されます。
2 = 入力と結果のグラフィックス | 点と入力した線、およびそれらの間の線分が常に表示されます。

PointToLine 関数の結果出力

戻り値 | 点と、線上の最も近い点の間の有向距離を含んでいる [image] データ構造体。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

PointToLine データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | 点の X 座標
列 0 | GetCol(距離, 0) | 点の Y 座標
行 1 | GetRow(距離, 1) | 線上の最も近い点の X 座標
列 1 | GetCol(距離, 1) | 線上の最も近い点の Y 座標
角度 | GetAngle(距離) | 2 点間の角度
距離 | GetDistance(距離) | 2 点間の距離

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


PointToPoint 関数

PointToPoint 関数 |
幾何・計測関数 → 計測 | In-Sight 関数リファレンス

2 点間の有向距離を計算します。

PointToPoint 関数 (

点 0.X ,

点 0.Y ,

点 1.X ,

点 1.Y ,

表示

)

PointToPoint 関数の入力パラメータ

点 0

1 番目の点の座標を指定します。

X | 1 番目の点の X 座標
Y | 1 番目の点の Y 座標

点 1

2 番目の点の座標を指定します。

X | 2 番目の点の X 座標
Y | 2 番目の点の Y 座標

表示

画像上の PointToPoint グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | PointToPoint 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 2 つの入力点間の最小距離を示す線分が常に表示されます。
2 = 入力と結果のグラフィックス | 2 つの入力点、およびそれらの間の線分が常に表示されます。

PointToPoint 関数の結果出力

戻り値 | 2 点間の有向距離を含んでいる [image] データ構造体。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

PointToPoint データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(距離, 0) | 1 番目の点の X 座標
列 0 | GetCol(距離, 0) | 1 番目の点の Y 座標
行 1 | GetRow(距離, 1) | 2 番目の点の X 座標
列 1 | GetCol(距離, 1) | 2 番目の点の Y 座標
Angle | GetAngle(距離) | 2 点間の角度
距離 | GetDistance(距離) | 2 点間の距離

関連項目

計測関数について

幾何・計測関数について

距離データアクセス関数

プロパティシートの使用方法


PointToPointAngle 関数

PointToPointAngle 関数 |
幾何・計測関数 → 計測 | In-Sight 関数リファレンス

2 点間の角度を計算します。

PointToPointAngle 関数 (

点 0.X,

点 0.Y,

点 1.X,

点 1.Y

)

PointToPointAngle 関数の入力パラメータ

点 0

1 番目の点の座標を指定します。

X | 1 番目の点の X 座標
Y | 1 番目の点の Y 座標

点 1

2 番目の点の座標を指定します。

X | 2 番目の点の X 座標
Y | 2 番目の点の Y 座標

PointToPointAngle 関数の結果出力

戻り値

画像の行軸を基準にした 2 点間の角度。

注意: 幾何・計測カテゴリのほかの計測関数と異なり、PointToPointAngle 関数は [image] データ構造体や結果テーブルをスプレッドシートに挿入しません。

関連項目

計測関数について

幾何・計測関数について

プロパティシートの使用方法


PointToPointDistance 関数

PointToPointDistance 関数 |
幾何・計測関数 → 計測 | In-Sight 関数リファレンス

2 点間の距離を計算します。

PointToPointDistance 関数 (

点 0.X,

点 0.Y,

点 1.X,

点 1.Y

)

PointToPointDistance 関数の入力パラメータ

点 0

1 番目の点の座標を指定します。

X | 1 番目の点の X 座標
Y | 1 番目の点の Y 座標

点 1

2 番目の点の座標を指定します。

X | 2 番目の点の X 座標
Y | 2 番目の点の Y 座標

PointToPointDistance 関数の結果出力

戻り値

2 点間の距離。

注意: 幾何・計測カテゴリのほかの計測関数と異なり、PointToPointDistance 関数は [image] データ構造体や結果テーブルをスプレッドシートに挿入しません。

関連項目

計測関数について

幾何・計測関数について

プロパティシートの使用方法


画面表示関数

In-Sight 関数リファレンス

画面表示関数は、対話型コントロールでスプレッドシートをカスタマイズし、In-Sight センサの実行時に詳細なデータ表示を可能にします。画面表示関数は、次のサブカテゴリに分類されます。

  • オペレータ I/F 関数: スプレッドシートに対話型グラフィックスコントロールを挿入します。
  • ワークシート関数: スプレッドシートにグラフィックス表示を挿入します。
  • グラフィックス関数: 画像の上にグラフィックスオーバレイをプロットします。


オペレータ I/F 関数

画面表示関数

In-Sight 関数リファレンス

オペレータ I/F 関数では、スプレッドシートに対話型グラフィックス要素を挿入することによって、[関数の挿入] ダイアログやプロパティシートを使用することなく In-Sight のジョブの設定を簡単に変更できます。このコントロールには、アクセス権レベルが [フルアクセス] または [プロテクト] に設定されている場合にのみアクセス可能です。したがって、アクセス権レベルが [アクセス不可] に設定されている場合はアクセスできません。

オペレータ I/F には次の関数があります。

  • Authorize 関数: 承認を実行できるように、ラベル付きプッシュボタンコントロールをスプレッドシートに挿入します。
  • Button 関数: ラベル付きプッシュボタンコントロールを挿入します。
  • CheckBox 関数: ラベル付きチェックボックスコントロールを挿入します。
  • Dialog 関数: ラベル付きダイアログボックスコントロールを挿入します。
  • EditAnnulus 関数: ラベル付き対話型ドーナツ領域コントロールを挿入します。
  • EditCircle 関数: ラベル付き対話型円コントロールを挿入します。
  • EditCompositeRegion 関数: ラベル付き対話型合成領域コントロールを挿入します。
  • EditFloat 関数: 浮動小数点数編集コントロールを挿入します。
  • EditInt 関数: 整数編集コントロールを挿入します。
  • EditLine 関数: ラベル付き対話型線コントロールを挿入します。
  • EditMaskedRegion 関数: ラベル付き対話型領域コントロールを挿入します。
  • EditMultiGraphics 関数: 複数の対象領域の入力を編集できるように、ラベル付き対話型コントロールを挿入します。
  • EditPassword 関数: テキスト編集コントロールを挿入します。セキュリティの目的から、テキスト文字列はアスタリスクで表示されます。
  • EditPoint 関数: ラベル付き対話型点コントロールを挿入します。
  • EditPolygon 関数: ラベル付き対話型ポリゴン領域コントロールを挿入します。
  • EditPolylinePath 関数: ラベル付き対話型パス領域コントロールを挿入します。
  • EditRegion 関数: ラベル付き対話型領域コントロールを挿入します。
  • EditString 関数: テキスト編集コントロールを挿入します。
  • Link 関数:ラベル付きリンクコントロールを挿入します。
  • ListBox 関数: ドロップダウンリストコントロールを挿入します
  • MessageBox 関数: メッセージボックスコントロールを挿入します。
  • Select 関数: ラベル付き選択ボタンコントロールを挿入します。
  • Wizard 関数: ラベル付きウィザードコントロールを挿入します。

関連項目

画面表示関数について


Authorize 関数

Authorize 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

「認証のみ」認証のみを実行する場合は、ユーザ 1 (通常はオペレータ) が変更を加え、ユーザ 2 (通常はスーパバイザ) が変更内容を承認します。ダブルブラインドを実行する場合は、ユーザ 1 が変更を加え、ユーザ 2 はユーザ 1 によって加えられた変更を再入力する必要があります。承認結果は、監査メッセージによって追跡されます。

Authorize 関数は、EditInt、EditFloat、および EditString オペレータ I/F 関数をサポートしており、スプレッドシート、ダイアログ、EasyView、またはカスタムビューに追加できます。

注意:
  • Authorize 関数のプロパティシートにアクセスするには、ボタンを右クリックして、[関数の編集] を選択します。
  • Authorize 関数を含むスプレッドシートの設定方法、承認の実行方法、および生成される監査メッセージの種類の詳細については、承認の実行のトピックを参照してください。
  • Authorize 関数の入力パラメータ
  • Authorize 関数の結果出力
  • 関連項目

Authorize 関数関数の入力パラメータ

Authorize 関数(

ラベル ,

タイプ

レベル

セル参照

セル参照

)

ラベル

ボタンに表示される名前を指定します。

タイプ

承認の種類を指定します。

0 = なし (デフォルト) | 承認は実行されません。
1 = 認証のみ | ユーザ 2 がユーザ 1 によって加えられた変更を承認します。
2 = ダブルブラインド | ユーザ 2は、ユーザ 1 によってそれ以前に入力された値を正確に再入力します。

レベル

ユーザ 2 の最低限のアクセスレベルを指定します。

0 = なし (デフォルト) | 有効な In-Sight ログオン認証を持つユーザが承認を実行できます。ユーザ 1 は、自身のエントリの承認が許可されます。
1 = プロテクト | ユーザ 2 はユーザ 1 とは異なっており、プロテクトまたはフルの In-Sight アクセスレベルを保持している必要があります。
2 = フルアクセス | ユーザ 2 はユーザ 1 とは異なっており、フルの In-Sight アクセスレベルを保持している必要があります。

セル参照

承認が実行されるセル範囲の左上のセルを指定します。

セル参照

承認が実行されるセル範囲の右下のセルを指定します。
注意:
  • セル範囲の最大サイズは、10 (幅) × 20 (高さ) です。
  • スプレッドシート内で承認を実行する場合は、両方の [セル参照] パラメータを指定する必要があります。
  • ダイアログ、カスタムビュー、または EasyView で承認を実行し、両方の [セル参照] パラメータが指定されていない (= 0) 場合、Authorize 関数はセル範囲としてダイアログ、カスタムビュー、または EasyView を使用します。この場合、ダイアログ、カスタムビュー、または EasyView 全体が [Authorize] ダイアログに表示されます (サポートされていないエディットコントロールは無効になります)。
  • 一方の [セル参照] パラメータが指定され、もう一方の [セル参照] パラメータが指定されていない場合は、#ERR が返されます。

Authorize 関数関数の結果出力

結果

承認を実行するラベル付きボタン [image] コントロール。

関連項目

  • 承認プロセス
  • [監査メッセージの設定] ダイアログ
  • シンボリックタグエディタ
  • Authorize データアクセス関数
  • オペレータ I/F 関数について
  • 画面表示関数について
  • プロパティシートの使用方法


Button 関数

Button 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

ラベル付き押しボタンコントロール要素をスプレッドシートに挿入します。必要に応じて、ボタンを押すとスプレッドシートのイベントトリガに信号を送るように設定することができます。

Button 関数 (

名前,

トリガ

)

ヒント:Button 関数のプロパティシートにアクセスするには、ボタンを右クリックして、[式..] を選択します。

注意: In-Sight ネイティブモードコマンド、EV SetCellValue を使用し、プログラムによってボタンを制御することが可能です。ボタンを押すには 1 を、解除するには 0 を入力します。ボタンを押すコマンド送信後は、必ず解除するコマンドを送信してください。そうしないと、ボタンは押されたままの状態になってしまいます。

Button 関数の入力パラメータ

名前

文字列ラベルを指定します。この名前は、ボタンそのものの上に表示されます。

トリガ

ボタンを押すとオプションのトリガ信号が発生するように指定します。

-1 = なし（デフォルト） | トリガ信号は送られません。
32 = 手動 | 手動トリガをかけます。
（80～87） = ソフト（0～7） | ソフトトリガイベント信号が送られます。

Button 関数の結果出力

戻り値 | ボタンを押したときは 1 を、押さないときは 0 を返します。
結果 | ラベル付きボタン [image] コントロール。

Button 関数の例

  1. セル A3 および A4 は、次のように設定されていると仮定します。

A3=Button("テスト",-1)

A4=Count(A3,9999999,0,0)

スプレッドシートには次のように表示されます。

  2. セル A3 にあるボタンを押します。セル A3 を参照しているセル A4 は、[テスト] ボタンが押された回数をカウントします。セル A4 の値は 1.000 になります。

関連項目

オペレータ I/F 関数について

画面表示関数について

プロパティシートの使用方法


CheckBox 関数

CheckBox 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

ラベル付きのチェックボックスコントロール要素をスプレッドシートに挿入します。

CheckBox 関数 (

名前

)

注意: CheckBox 関数のプロパティシートにアクセスするには、CheckBox を右クリックして、[式] を選択します。

CheckBox 関数 の入力パラメータ

名前

CheckBox の横に表示される文字列ラベルを指定します。

CheckBox 関数 の結果出力

戻り値 | チェックボックスがオフ（チェックマークなし）の場合は 0、オン（チェックマークあり）の場合は 1 を返します。
結果 | ラベル付き CheckBox [image] コントロール。

CheckBox 関数 の例

スプレッドシートが次のように設定されています。

A3=CheckBox("テスト")

A4=A3

セル A4 はセル A3 を参照し、[テスト] チェックボックスのオン/オフ の状態を判定します。チェックボックスがオフの場合は、セル A4 に 0.000 の値を返します。オンの場合は、1.000 の値を返します。

関連項目

オペレータ I/F 関数について

画面表示関数について

プロパティシートの使用方法


Dialog 関数

画面表示関数 → オペレータ I/F

In-Sight 関数リファレンス

ダイアログボックスコントロールをスプレッドシートに挿入します。ダイアログにはスプレッドシート上には表示されない特殊なセルが含まれます (400 行目から始まる)。ダイアログにはテキストや値、および選択したオペレータ I/F、数学、文字列操作、入出力、クロックド・データ、データ・アクセスなどの関数が含まれています。ダイアログは最大 20 個までスプレッドシートに挿入でき、Wizard 関数を使用して複数のダイアログを関連付けることができます。ダイアログの実行には、ユーザが手動で操作する場合と Select 関数が参照したときに自動的に実行させる場合の 2 つの方法があります。

Dialog 関数 (

ラベル,

タイトル,

高さ,

幅

)

注意:

  • デフォルトでは、ジョブ内のすべての Dialog 関数に [キャンセル] ボタンが含まれます。Dialog 関数から [キャンセル] ボタンを除外するには、[Dialog 関数キャンセル表示] センサメニューオプションを無効にします。
  • Dialog 関数のプロパティシートにアクセスするには、ダイアログコントロールを右クリックして、[関数の編集] を選択します。
  • コピーしたダイアログコントロールを、複数のセルに貼り付けることはできません。
  • ダイアログを貼り付ける場合、すべてのセル参照は、絶対参照になります。
  • ダイアログを 1 つのジョブから別のジョブに貼り付けると、ダイアログコントロールはコピーされますが、ダイアログの内容はコピーされません。
  • グラフは Dialog 関数ではサポートされていません。
  • ダイアログ内のボタン ([OK]、[次へ]、[キャンセル] など) がダイアログ起動時のセルと同じ位置にある場合、マウスクリックを離すと、ダイアログ内でこのボタンがアクティブになります。また、1 つのセルでダイアログの高さを増減するか、セルをハイライトしてから Enter キーを押し、ダイアログを起動する方法もあります。

  • Dialog 関数のダイアログの [タイトル] パラメータが、ダイアログ内に編集可能な文字列値 (EditString、ListBox または Concatenate など) を含むセルを参照している場合 (必要に応じて GetString 関数を使用)、セルの値を変更すると、セルはただちに更新されて新しい値が表示されます。ただし、ダイアログのタイトルには古い値が表示されたままです。ダイアログのタイトルは、そのダイアログを再度開いたときに更新されます。また、モードが 1 (シーケンシャル) に設定された Wizard 関数によってダイアログが参照される場合、セルの文字列値を変更してもウィザードのメニューには古い値が表示されたままです。ウィザードのメニューは、そのウィザードを再度開いたときに更新されます。

Dialog 関数関数の入力パラメータ

ラベル | スプレッドシートに表示される名前を指定します。
タイトル | ダイアログのタイトルバーに表示される名前を指定します (最大 39 文字)。
高さ | ダイアログの高さをセルの数で指定します (1 ～ 20、デフォルト = 5)。
幅 | ダイアログの幅をセルの数で指定します (3 ～ 10、デフォルト = 5)。

Dialog 関数関数の結果出力

戻り値 | ダイアログが表示される場合は 1、表示されない場合は 0 を返します。
結果 | ラベル付きダイアログ [image] コントロール。

Dialog 関数例

スプレッドシートが次のように設定されています。

A4 = Dialog("テスト","テストダイアログ",5,5)

セル A4 のダイアログ [image] コントロールをクリックすると、次のダイアログが表示されます。

テキストラベル、数値、式などを、スプレッドシートに挿入する場合と同様に、ダイアログに挿入することができます。

ダイアログのメニューバーのオプション

[ファイル] メニューオプション

セルのインポート

セルのエクスポート

ページ設定

印刷プレビュー

印刷

[編集] メニューオプション

取り消し

やり直し

切り取り

コピー

貼り付け

クリア

検索

進む

セルのグラフィックス

領域の最大化

セル状態

[表示] メニュー

ツールバー (標準、フォーマット、ジョブの編集、数式バー)

グリッドライン

[挿入] メニュー

式

絶対参照

相対参照

コメント

シンボリックタグ

[フォーマット] メニュー

セル

行 (行の高さ、自動調節)

列 (列の幅、自動調節)

ダイアログツールバーのボタン

ボタン | 関数
 | 印刷
 | 印刷プレビュー
 | 切り取り
 | コピー
 | 貼り付け
 | 取り消し
 | やり直し
 | 検索
 | 太字
 | 斜体
 | 左揃え
 | 中央揃え
 | 右揃え
 | 小数点以下の桁数の増加
 | 小数点以下の桁数の縮小
 | 背景色
 | 前景色
 | 絶対参照
 | 相対参照
 | 関数の挿入
 | グラフィックスの編集
 | 領域の最大化
 | セル状態
 | コメントの挿入
 | シンボリックタグの挿入
 | OK
 | キャンセル
 | 数式バー

関連項目

Link 関数

Select 関数

Wizard 関数

オペレータ I/F 関数について

プロパティシートの使用方法


EditAnnulus 関数

EditAnnulus 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

対話型ドーナツ領域コントロール要素をスプレッドシートに挿入します。コントロールをクリックすると、表示が対話型グラフィックスモードに切り替わり、ドーナツ領域の位置およびサイズを調整することができます。

EditAnnulus 関数 (

画像

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

移動,

サイズ,

名前,

表示

)

注意:
  • EditAnnulus 関数のプロパティシートにアクセスするには、EditAnnulus コントロールを右クリックして、[式] を選択します。
  • [外部定義領域] パラメータ (ExtractBlobs 関数など) は、[内側半径] パラメータがゼロに設定されている EditAnnulus 関数を参照し、#ERR を返すことがあります。この状況では、EditAnnulus 関数の代わりに EditCircle 関数を使用します。

EditAnnulus 関数の入力パラメータ

画像

このパラメータは、 [image] データ構造体を含むスプレッドシートセルを参照する必要があります。デフォルトで、このパラメータは AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールの画像フィルタ関数や、座標補正関数によって返される、他の [image] データ構造体を参照することができます。

フィクスチャ

入力ドーナツ領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

移動

入力ドーナツ領域位置を調整する機能を有効または無効にします。

0 =オフ | ドーナツ領域を移動することはできません。
1 =オン(デフォルト) | ドーナツ領域を移動することができます。

サイズ

入力ドーナツ領域の半径を調整する機能を有効または無効にします。

0 =オフ | ドーナツ領域のサイズを変更することはできません。
1 =オン(デフォルト) | ドーナツ領域のサイズを変更することができます。

注意: ドーナツ領域の内側の半径および外側の半径の両方を調整することが可能です。

名前

スプレッドシートの EditAnnulus 関数コントロール要素のテキストラベルを指定します。

表示

画像上の EditAnnulus グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | EditAnnulus 関数を含むセルがスプレッドシート内でハイライトされている場合を除き、ドーナツ領域は表示されません。
2 = 入力のグラフィックスのみ | ドーナツ領域が常に表示されます。

EditAnnulus 関数の結果出力

結果

EditAnnulus [image] コントロールの右隣のセル内に結果テーブルが自動作成されます。

EditAnnulus 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(ドーナツ領域) | 画像座標でのドーナツ領域の中心の行オフセット
列 | GetCol(ドーナツ領域) | 画像座標でのドーナツ領域の中心の列オフセット
内側半径 | GetRadius(ドーナツ領域, 0) | ドーナツ領域の内側半径
外側半径 | GetRadius(ドーナツ領域, 1) | ドーナツ領域の外側半径


EditCircle 関数

EditCircle 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

対話型円コントロール要素をスプレッドシートに挿入します。コントロールをクリックすると、表示が対話型グラフィックスモードに切り替わり、円の位置およびサイズを調整することができます。

EditCircle 関数 (

画像

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

移動,

サイズ,

名前,

表示

)

注意: EditCircle 関数のプロパティシートにアクセスするには、EditCircle コントロールを右クリックして、[式]を選択します。

EditCircle 関数の入力パラメータ

画像

このパラメータは、 [image] データ構造体を含むスプレッドシートセルを参照する必要があります。デフォルトで、このパラメータは AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールの画像フィルタ関数や、座標補正関数によって返される、他の [image] データ構造体を参照することができます。

フィクスチャ

入力円を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

移動

入力円位置を調整する機能を有効または無効にします。

0 =オフ | 円を移動することはできません。
1 =オン（デフォルト） | 円を移動することができます。

サイズ

入力円の半径を調整する機能を有効または無効にします。

0 =オフ | 円のサイズを変更することはできません。
1 =オン（デフォルト） | 円のサイズを変更することができます。

名前

スプレッドシートの EditCircle 関数コントロール要素のテキストラベルを指定します。

表示

画像上の EditCircle グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | EditCircle 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、円は表示されません。
2 = 入力のグラフィックスのみ | 円が常に表示されます。

EditCircle 関数の結果出力

結果

EditCircle [image] コントロールの右隣のセル内に結果テーブルが自動作成されます。

EditCircle 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(領域) | 位置の X 座標
列 | GetCol(領域) | 位置の Y 座標
半径 | GetRadius(領域) | 円の半径


EditCompositeRegion 関数

EditCompositeRegion 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

スプレッドシートに対話型の合成領域コントロール要素を挿入します。コントロールをクリックすると、表示が対話型グラフィックスモードに切り替わり、合成領域を変更することができます。合成領域は、複数のサブ領域から構成される場合があります。サブ領域には、円環、円、ポリゴン、領域などが含まれます。各サブ領域は、加算 (画像分析に含める) もしくは減算 (画像分析から除外する) 操作です。減算操作は、「マスキング」とも呼ばれます。

EditCompositeRegion 関数 (

画像

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

サブ領域の追加,

サブ領域の削除,

サブ領域の編集

合成領域全体の移動,

回転,

名前,

表示

)

注意:
  • EditCompositeRegion 関数のプロパティシートにアクセスするには、EditCompositeRegion コントロールを右クリックして、[式] を選択します。
  • 合成領域には最大 32 個のサブ領域を追加できます。
  • 対話型グラフィックスモードのときには、 Closed 右クリックメニューを使用して、サブ領域の追加または削除、または選択したサブ領域の演算 (加算または減算) の変更を実行できます。

[標準] タブ

[標準] タブは、EditCompositeRegion 関数のパラメータを定義するために使用します。

EditCompositeRegion 関数の入力パラメータ

画像

このパラメータは、 [image] データ構造体を含むスプレッドシートセルを参照する必要があります。デフォルトで、このパラメータは AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールの画像フィルタ関数や、座標補正関数によって返される、他の [image] データ構造体を参照することができます。

フィクスチャ

入力合成領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

サブ領域の追加

オンにすると、対話型グラフィックスモードでサブ領域を追加できます。

サブ領域の削除

オンにすると、対話型グラフィックスモードでサブ領域を削除できます。

サブ領域の編集

オンにすると、対話型グラフィックスモードでサブ領域を変更できます。

合成領域全体の移動

オンにすると、対話型グラフィックスモードで合成領域全体を移動できます。
回転 オンにすると、対話型グラフィックスモードで合成領域全体を回転できます。

名前

スプレッドシートの EditCompositeRegion 関数コントロール要素のテキストラベルを指定します。

表示

画像上の EditCompositeRegion グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | EditCompositeRegion 関数を含むセルがスプレッドシート内でハイライトされている場合を除き、合成領域は表示されません。
2 = 入力のグラフィックスのみ | 合成領域が常に表示されます。

[領域] タブ

[領域] タブでは、サブ領域の挿入、削除、および編集を実行できます。サブ領域には、加算操作や減算操作の実行に使用される円環、円、ポリゴン、領域などが含まれます。

[領域] タブのコントロール

  • [挿入]: 円環、円、ポリゴン、または領域のサブ領域を挿入します。
  • [削除]: ハイライトしたサブ領域をリストから削除します。
  • [上に移動]: ハイライトしたサブ領域をリストの上に移動します。
  • [下に移動]: ハイライトしたサブ領域をリストの下に移動します。

注意: 合成領域は、リスト内のサブ領域の順序に基づいて順番に作成されます。

  • [領域プロパティ]: ハイライトしたサブ領域のプロパティを表示します。

EditCompositeRegion 関数の結果出力

結果

ラベル付きボタン [image] コントロール。

EditCompositeRegion 関数 の例

EditCompositeRegion プロパティシートを開く

  1. セル A2 を右クリックし、[関数の挿入] を選択して、[関数の挿入] ダイアログを開きます。
  2. [関数の挿入] ダイアログの左側で、ツールカテゴリの [画面表示] リストを展開します。
  3. [オペレータI/F] ツールカテゴリを選択します。
  4. 関数リストから EditCompositeRegion 関数を選択して、[OK] ボタンを押すか、関数名をダブルクリックします。

  5. EditCompositeRegion のプロパティシートが開きます。

[標準] タブ

  1. 必要に応じて、[フィクスチャ] パラメータを展開し、行、列、および角度の値を指定します。フィクスチャに関連する合成領域を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して合成領域を確実に回転または移動できます。

  2. 対話型グラフィックスモードで許可する操作 (サブ領域の追加、削除、および編集、合成領域全体の移動および回転) を決定し、該当するチェックボックス ([サブ領域の追加]、[サブ領域の削除]、[サブ領域の編集]、[合成領域全体の移動]、[回転]) をオンまたはオフにします。
  3. 必要に応じて、スプレッドシートの EditCompositeRegion 関数コントロールのテキストラベルに名前を指定します。
  4. オーバレイグラフィックスを表示するタイミングを決定します。EditCompositeRegion 関数を含むセルがスプレッドシート内でハイライトされている場合を除き、オーバレイグラフィックスを非表示にするには、[表示] ドロップダウンリストから [非表示] を選択します。オーバレイグラフィックスを常に表示するには、[入力のグラフィックスのみ] を選択します。

[領域] タブ

  1. デフォルトでは、領域は自動的にサブ領域リストに内包されます。この例では、円サブ領域が使用されます。その領域をハイライトし、[削除] ボタンをクリックします。

  2. [挿入] ドロップダウンリストから [円] を選択し、円サブ領域を追加します。
  3. [グラフィックスの編集] [image] ツールバーボタンをクリックし、サブ領域をグラフィカルに調整します。

注意: または、サブ領域をハイライトし、手動で円のプロパティを入力します。

  4. デフォルトでは、円は加算操作を使用します。必要に応じて、対象領域を覆うように円を調整します。

  5. 画像領域内を右クリックし、[サブ領域の追加] > [円] をクリックし、2 番目の円サブ領域を追加します。

  6. デフォルトでは、2 番目の円は減算操作を使用します。必要に応じて、検査対象外の画像の一部をマスクするように円を調整します。

  7. 変更を確定するには、Enter キーを押します。画像と半透明のスプレッドシートの間にグラフィックスが表示されます。変更をキャンセルするには、Esc キーを押します。変更を適用すると、新しい値がプロパティシートに自動的に入力されます。
  8. この例では、マスクされていないサブ領域のブロブ解析を実行するために ExtractBlobs 関数が使用されています。ExtractBlobs 関数をセル A4 に挿入します。
  9. ExtractBlobs パラメータを構成します。[外部定義領域] パラメータでは、セル A2 を EditCompositeRegion 関数を含むセルとして指定します。その後、ExtractBlobs 関数はマスクされていないサブ領域にあるブロブのみを検索します。


EditFloat 関数

EditFloat 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

スプレッドシートに浮動小数点数編集コントロール要素を挿入します。このコントロールは、ほかの対話型数値入力コントロールと同様に機能します。

EditFloat 関数 (

最小,

最大

)

注意: EditFloat コントロールのプロパティシートにアクセスするには、EditFloat コントロールを右クリックして、[式] を選択します。

EditFloat 関数 の入力パラメータ

最小 | 編集ボックスコントロールが容認する最小値を指定します（-9999999～9999999、デフォルト = 0）。
最大 | 編集ボックスコントロールが容認する最大値を指定します（-9999999～9999999、デフォルト = 100）。

EditFloat 関数 の結果出力

戻り値 | コントロールに入力された値を返します。
結果 | EditFloat [image] コントロール。

関連項目

オペレータ I/F 関数について

画面表示関数について

プロパティシートの使用方法


EditInt 関数

EditInt 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

スプレッドシートに整数編集コントロール要素を挿入します。このコントロールは、ほかのすべての In-Sight 対話型数値入力コントロールと同様に機能します。

EditInt 関数 (

最小,

最大

)

注意: EditInt コントロールのプロパティシートにアクセスするには、このコントロールを右クリックして、[式] を選択します。

EditInt 関数 の入力パラメータ

最小 | 編集ボックスコントロールが容認する最小値を指定します（-9999999～9999999、デフォルト = 0）。
最大 | 編集ボックスコントロールが容認する最大値を指定します（-9999999～9999999、デフォルト = 255）。

EditInt 関数 の結果出力

戻り値 | コントロールに入力された値を返します。
結果 | EditInt [image] コントロール。

関連項目

オペレータ I/F 関数について

画面表示関数について

プロパティシートの使用方法


EditLine 関数

EditLine 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

対話型線コントロール要素をスプレッドシートに挿入します。コントロールをクリックすると、表示が対話型グラフィックスモードに切り替わり、線の位置およびサイズを調整することができます。

EditLine 関数 (

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

点0移動,

点1移動,

名前,

表示

)

注意: EditLine 関数のプロパティシートにアクセスするには、EditLine コントロールを右クリックして、[式] を選択します。

EditLine 関数の入力パラメータ

フィクスチャ

入力線を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

点 0 移動

入力点 0 の位置を調整する機能を有効または無効にします。

0 =オフ | 点 0 を移動することはできません。
1 =オン（デフォルト） | 点 0 を移動することができます。

点 1 移動

入力点 1 の位置を調整する機能を有効または無効にします。

0 =オフ | 点 1 を移動することはできません。
1 =オン(デフォルト) | 点 1 を移動することができます。

名前

スプレッドシートの EditLine 関数コントロール要素のテキストラベルを指定します。

表示

画像上の EditLine グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | EditLine 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、線は表示されません。
2 = 入力のグラフィックスのみ | 線が常に表示されます。

EditLine 関数の結果出力

結果

EditLine [image] コントロールの右隣のセル内に結果テーブルが自動作成されます。

EditLine 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(線, 0) | 画像座標での始点の行オフセット
列 0 | GetCol(線, 0) | 画像座標での始点の列オフセット
行 1 | GetRow(線, 1) | 画像座標での終点の行オフセット
列 1 | GetCol(線, 1) | 画像座標での終点の列オフセット


EditMaskedRegion 関数

EditMaskedRegion 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

領域コントロール要素をスプレッドシートに挿入します。コントロールをクリックすると、表示が対話型グラフィックスモードに切り替わり、合成領域を変更することができます。ROI 内のマスクされた領域を使用して、画像内の処理対象外の領域を示します。

EditMaskedRegion 関数 の入力パラメータ

EditMaskedRegion 関数 の結果出力

EditMaskedRegion 関数の対話型グラフィックスモード

EditMaskedRegion 関数のマウス操作

EditMaskedRegion 関数 関連項目

EditMaskedRegion (

画像

フィクスチャ.行 ,

フィクスチャ.列,

フィクスチャ.角度,

マスクの追加,

マスクの削除,

マスクの編集

移動,

サイズ,

回転,

カーブ,

名前,

表示

)

注意:
  • EditMaskedRegion 関数のプロパティシートにアクセスするには、EditMaskedRegion コントロールを右クリックして、[式]を選択します。
  • 対話型グラフィックスモードでは、右クリックメニューを使用して、領域を追加または削除することができます。

EditMaskedRegion 関数の入力パラメータ

画像

このパラメータは、 [image] データ構造体を含むスプレッドシートセルを参照する必要があります。デフォルトで、このパラメータは AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールの画像フィルタ関数や、座標補正関数によって返される、他の [image] データ構造体を参照することができます。

フィクスチャ

入力合成領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

マスクの追加

オンにすると、対話型グラフィックスモードでマスクを追加できます。

マスクの削除

オンにすると、対話型グラフィックスモードでマスクを削除できます。

マスクの編集

オンにすると、対話型グラフィックスモードでマスクを編集できます。

移動

オンにすると、対話型グラフィックスモードで合成領域全体を移動できます。
サイズ | オンにすると、対話型グラフィックスモードでマスクをサイズ変更できます。
回転 | オンにすると、対話型グラフィックスモードで領域を回転できます。
曲り | オンにすると、対話型グラフィックスモードで領域を曲げることができます。

名前

スプレッドシートの EditMaskedRegion 関数コントロール要素のテキストラベルを指定します。

表示

画像上の EditMaskedRegion グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | EditMaskedRegion 関数を含むセルがスプレッドシート内でハイライトされている場合を除き、その領域は表示されません。
2 = 入力のグラフィックスのみ | 領域が常に表示されます。

EditMaskedRegion 関数の結果出力

結果

EditRegion [image] コントロール。

EditMaskedRegion 関数の対話型グラフィックスモード

項目 | オペレータ I/F 関数 | 説明
1 | サイズ可変端点 (x4) | 矩形領域の 4 つのコーナーを定義します。コーナーのいずれかで端点をクリックして、ROI のサイズを変更できます。
2 | マスク | 画像解析の対象外の画像領域を定義します。マスクは、ROI 内で移動およびサイズ変更することができます。1 つの ROI に合計 99 のマスクを追加できます。マスクを追加すると、ROI の先頭に追加されるか (ほかにマスクが追加されていない場合)、以前に追加されたマスクの後ろに追加されます。 注意: マスクはオーバラップできません。オーバラップするように設定すると、オーバラップを防ぐために 1 ピクセルのバッファが自動的に挿入されます。
3 | スキャン方向インジケータ (x2) | ROI の特徴をスキャンする方向を定義します。
4 | エッジ検出インジケータ | エッジ変化を検出する ROI 内の領域を定義します。また、ROI に新しいマスクを追加することもできます。
5 | 回転ハンドル | ROI を 360 度回転できます。
6 | 曲げハンドル | ROI を曲げて円弧または円環の形状にできます。

EditMaskedRegion 関数のマウス操作

マウスカーソルを ROI のさまざまな部分の上に合わせると、マウスカーソルは自動的に変形し、次の操作を実行できます。

マウスアイコン | 説明
 | 画像内の任意の場所に ROI をドラッグできます。
 | ROI のサイズを水平または垂直方向に変更できます。また、マスクのサイズも変更できます。
 | マウスカーソルを合わせた場所に応じて、2 種類の操作を実行できます。マウスカーソルが回転ハンドルの上にある場合は、ROI を現在の向きから 360 度回転できます。マウスカーソルが曲げハンドルの上にある場合は、ROI を円弧または円環の形状に変形できます。
 | ROI 内でマスクをドラッグできます。
 | ROI に対してマスクを追加または削除できます。このアイコンが現れたときにマウスを右クリックすると、[マスクの追加] と [マスクの削除] の 2 つのオプションのメニューが開きます。

関連項目

オペレータ I/F 関数について

画面表示関数について

InspectEdge 関数

構造体データアクセス関数

プロパティシートの使用方法


EditMultiGraphics 関数

EditMultiGraphics 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

オペレータ I/F 関数 (EditAnnulus、EditCircle、EditCompositeRegion、EditLine、EditMaskedRegion、EditPoint、EditPolygon、EditPolylinePath、EditRegion) の変数リストを操作するスプレッドシートに、対話型コントロールを挿入します。このコントロールをクリックすると、表示は対話型グラフィックスモードに切り替わり、参照されるオペレータ I/F 関数すべての位置を調整することができます。オペレータ I/F 関数は個別に編集する必要があります (それ以外のオペレータ I/F 関数のグラフィックスオーバレイはすべて、そのまま表示されます)。

EditMultiGraphics 関数 (

画像,

名前 ,

ラベル表示,

エディットコントロール 0,

エディットコントロール 1,

...

)

注意:

  • 対話型グラフィックスモードに切り替えてオペレータ I/F 関数で目的の領域を調整した後、この変更を適用するには、[ジョブの編集] ツールバーの [OK] ボタンを押すか、または Enter キーを押します。変更を適用せずに対話型グラフィックスモードを終了するには、[ジョブの編集] ツールバーの [キャンセル] ボタンを押します。
  • EditMultiGraphics 関数にはプロパティシートはありません。この関数は、3 種類のパラメータと既存のオペレータ I/F 関数を参照する引数の変数リストに基づいています。
  • 1 つのセルに指定できる最大セル長は 255 文字です。255 を超える文字を使用して変数パラメータを指定すると、エラーメッセージが表示されます。変数パラメータの指定に文字列を使用する場合は、セル範囲を使用します。
  • EditMultiGraphics では、変数リストの #ERR である、または条件付きで無効化されている関数はすべて無視され、編集可能なオペレータ I/F 関数のみが表示されます。
  • 参照されているオペレータ I/F 関数のオーバレイグラフィックスを表示する場合、この関数の [表示] パラメータが常にオーバレイグラフィックスを表示するように設定されていることを確認してください。設定されていない場合、EditMultiGraphics 関数、またはオーバレイグラフィックスを含む個々のセルがハイライトされている場合のみ、オーバレイグラフィックスが表示されます。

EditMultiGraphics 関数 の入力パラメータ

画像関数

このパラメータは、スプレッドシートで [image] データ構造体を含むセルを参照する必要があります。デフォルトでは、このパラメータは、AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールの画像関数や、座標補正関数により返された、そのほかの [image] データ構造体も参照できます。

注意: EditMultiGraphics 関数は、参照しているオペレータ I/F 関数と同じ基準画像を共有する必要があります。EditMultiGraphics 関数が参照しているオペレータ I/F 関数の 1 つまたは複数が同じ基準画像を共有していない場合、この関数の結果は #ERR 状態になります。

名前

スプレッドシートの EditMultiGraphics 関数コントロール要素のテキストラベルを指定します。

ラベル表示

画像上の EditMultiGraphics ラベルの表示モードを指定します。

0 = 非表示 | EditMultiGraphics 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、これらのラベルは表示されません。
1 = 入力のグラフィックスのみ | ラベルが常に表示されます。
エディットコントロール 0

オペレータ I/F 関数へのセル参照を指定します。EditMultiGraphics 関数では、オペレータ I/F 関数 EditAnnulus、EditCircle、EditCompositeRegion、EditLine、EditMaskedRegion、EditPoint、EditPolygon、EditPolylinePath、および EditRegion がサポートされています。

注意: 参照可能なオペレータ I/F 関数の最大値は、関数が適用可能なセル参照の最大数 (255 個)、またはセルの数式の最大文字列長 (255 文字) のいずれか先に発生したケースによって決定されます。
エディットコントロール 1 オペレータ I/F 関数へのセル参照を指定します。

EditMultiGraphics 関数 の結果出力

結果

EditMultiGraphics [image] コントロール。この関数で、サポートされているオペレータ I/F 関数が含まれていないセルを参照している場合、または EditMultiGraphics 関数の基準画像が、参照されているオペレータ I/F 関数の基準画像と一致しない場合、#ERR が返されます。

関連項目

オペレータ I/F 関数

EditAnnulus 関数

EditCircle 関数

EditCompositeRegion 関数

EditLine 関数

EditMaskedRegion 関数

EditPoint 関数

EditPolygon 関数

EditPolylinePath 関数

EditRegion 関数


EditPassword 関数

EditPassword 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

テキスト編集コントロール要素をスプレッドシートに挿入します。セキュリティの目的から、入力されたテキスト文字列は常にアスタリスクで表示されます。EditPassword コントロールは、ほかの対話型テキスト入力ボックスと同様に機能します。

EditPassword 関数 (

最大文字数

)

注意:

  • EditPassword コントロールのプロパティシートにアクセスするには、関数をスプレッドシートに挿入した後、このコントロールを右クリックして、[式] を選択します。
  • テキスト文字列には大文字と小文字の区別があります。
  • 表示されるアスタリスクの数は、[最大文字数] パラメータに指定した値と等しくなります。

EditPassword 関数の入力パラメータ

最大文字数

編集ボックスコントロールが受け入れるテキスト文字列の最大の長さ (文字数単位) を指定します(1 ～ 255、デフォルト = 8)。

EditPassword 関数の結果出力

戻り値 | アスタリスクで表示される、コントロールに入力されたテキスト文字列。 注意: アスタリスクのみが表示されますが、EditPassword 関数を参照するセルは実際の文字列を受け取り表示します。
結果 | EditPassword コントロール。

関連項目

オペレータ I/F 関数について

画面表示関数について

プロパティシートの使用方法


EditPoint 関数

EditPoint 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

対話型点コントロール要素をスプレッドシートに挿入します。コントロールをクリックすると、表示が対話型グラフィックスモードに切り替わり、点の位置を調整することができます。

EditPoint 関数 (

画像

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

移動,

名前,

表示

)

注意: EditPoint 関数のプロパティシートにアクセスするには、EditPoint コントロールを右クリックして、[式] を選択します。

EditPoint 関数の入力パラメータ

画像

このパラメータは、 [image] データ構造体を含むスプレッドシートセルを参照する必要があります。デフォルトで、このパラメータは AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールの画像フィルタ関数や、座標補正関数によって返される、他の [image] データ構造体を参照することができます。

フィクスチャ

入力点を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

移動

入力点位置を調整する機能を有効または無効にします。

0 =オフ | 入力点を移動することはできません。
1 =オン（デフォルト） | 入力点を移動することができます。

名前

スプレッドシートの EditPoint 関数コントロール要素のテキストラベルを指定します。

表示

画像上の EditPoint グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | EditPoint 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、点は表示されません。
2 = 入力のグラフィックスのみ | 点が常に表示されます。

EditPoint 関数の結果出力

結果

EditPoint [image] コントロールの右隣のセル内に結果テーブルが自動作成されます。

EditPoint 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(線) | 画像座標での行オフセット
列 | GetCol(線) | 画像座標での列オフセット


EditPolygon 関数

EditPolygon 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

対話型ポリゴンコントロール要素をスプレッドシートに挿入します。コントロールをクリックすると、表示が対話型グラフィックスモードに切り替わり、ポリゴンを変更することができます。

EditPolygon 関数(

画像

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

点追加,

点削除,

点移動,

ポリゴン全体の移動,

スケール,

回転,

名前,

表示

)

注意: EditPolygon 関数のプロパティシートにアクセスするには、EditPolygon コントロールを右クリックして、[式]を選択します。

EditPolygon 関数の入力パラメータ

画像

このパラメータは、 [image] データ構造体を含むスプレッドシートセルを参照する必要があります。デフォルトで、このパラメータは AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールの画像フィルタ関数や、座標補正関数によって返される、他の [image] データ構造体を参照することができます。

フィクスチャ

入力ポリゴンを定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

頂点の追加

オンにすると、グラフィックスの編集中に、ポリゴンに点を追加できます。

頂点の削除

オンにすると、グラフィックスの編集中に、ポリゴンから点を削除できます。

頂点の移動

オンにすると、グラフィックスの編集中に、ポリゴン内で点を移動できます。

ポリゴン全体の移動

オンにすると、グラフィックスの編集中に、ポリゴン全体を移動できます。

スケール

オンにすると、グラフィックスの編集中に、ポリゴンを拡大/縮小できます。

回転

オンにすると、グラフィックスの編集中に、ポリゴンを回転できます。

名前

スプレッドシートの EditPolygon 関数コントロール要素のテキストラベルを指定します。

表示

画像上の EditPolygon グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | EditPolygon 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、ポリゴンは表示されません。
2 = 入力のグラフィックスのみ | ポリゴンが常に表示されます。


EditPolylinePath 関数

EditPolylinePath 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

スプレッドシートに対話型のコンポジット 1 次元ポリライン領域コントロール要素を挿入します。コントロールをクリックすると、表示が対話型グラフィックスモードに切り替わり、ポリラインパスを変更することができます。

EditPolylinePath 関数の入力パラメータ

EditPolylinePath 関数の結果出力

EditPolylinePath 関数の対話型グラフィックスモード

EditPolylinePath 関数のマウス操作

EditPolylinePath 関数関連項目

EditPolylinePath (

画像

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

頂点の追加,

頂点の削除,

頂点の移動,

ポリライン全体の移動

スケール,

回転,

名前,

表示

)

注意:
  • EditPolylinePath 関数のプロパティシートにアクセスするには、EditPolylinePath コントロールを右クリックして、[式]を選択します。
  • グラフィックスの編集中は、右クリックメニューを使用して、線分を追加または削除することができます。
  • InspectEdgeForDefect 関数は、外部定義領域として EditPolylinePath 関数を利用する InspectEdge 関数と組み合わせて使用することはできません。
  • EditPolylinePath 関数では、[領域の最大化] ボタンは無効です。

EditPolylinePath 関数の入力パラメータ

画像

このパラメータは、 [image] データ構造体を含むスプレッドシートセルを参照する必要があります。デフォルトで、このパラメータは AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールの画像フィルタ関数や、座標補正関数によって返される、他の [image] データ構造体を参照することができます。

フィクスチャ

入力合成領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

頂点の追加

オンにすると、対話型グラフィックスモードでポリラインに頂点を追加できます。

頂点の削除

オンにすると、対話型グラフィックスモードで頂点を削除できます。
頂点の移動 | オンにすると、対話型グラフィックスモードで頂点を移動できます。

ポリライン全体の移動

オンにすると、対話型グラフィックスモードでポリラインパス全体を移動できます。

スケール

オンにすると、対話型グラフィックスモードでポリラインパス全体をスケーリングできます。
回転 | オンにすると、対話型グラフィックスモードでポリラインパス全体を回転できます。

名前

スプレッドシートの EditPolylinePath 関数コントロール要素のテキストラベルを指定します。

表示

画像上の EditPolylinePath グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | EditPolylinePath 関数を含むセルがスプレッドシート内でハイライトされている場合を除き、合成領域は表示されません。
2 = 入力のグラフィックスのみ | コンポジットポリラインパスが常に表示されます。

EditPolylinePath 関数の結果出力

結果

EditRegion [image] コントロール。

EditPolylinePath 関数の対話型グラフィックスモード

項目 | オペレータ I/F 関数 | 説明
1 | ポリラインパスの頂点 (x3) | ポリライン線分のパスを定義します。頂点をクリックして、ポリラインの位置を決めます。
2 | スキャン方向インジケータ (x2) | ポリラインの特徴をスキャンする方向を定義します。
3 | ポリラインパス | ポリラインのプロットをグラフィカルに表示します。
4 | 回転ハンドル | ROI を 360 度回転できます。

EditPolylinePath 関数のマウス操作

マウスカーソルを ROI のさまざまな部分の上に合わせると、マウスカーソルは自動的に変形し、次の操作を実行できます。

マウスアイコン | 説明
 | 画像内の任意の場所に ROI 全体をドラッグできます。
 | ROI 全体、またはポリラインを囲む ROI を水平または垂直方向に拡縮できます。
 | ROI 全体を現在の向きから 360 度回転できます。
 | ROI 内でポリラインを移動できます。
 | ポリラインパスに頂点を追加できます。1 つのポリラインに最大 99 個の頂点を追加できます。99 個の頂点をポリラインに追加すると、このオプションは無効になります。

関連項目

オペレータ I/F 関数について

画面表示関数について

InspectEdge 関数

構造体データアクセス関数

プロパティシートの使用方法


EditRegion 関数

EditRegion 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

対話型グラフィカル領域コントロール要素をスプレッドシートに挿入します。コントロールをクリックすると、表示が対話型グラフィックスモードに切り替わり、領域のサイズ、位置、角度、カーブを調整することができます。

EditRegion 関数 (

画像

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

移動 ,

サイズ ,

回転 ,

曲り ,

名前 ,

表示

)

注意: EditRegion コントロールのプロパティシートにアクセスするには、このコントロールを右クリックして、[式] を選択します。

EditRegion 関数の入力パラメータ

画像

このパラメータは、 [image] データ構造体を含むスプレッドシートセルを参照する必要があります。デフォルトで、このパラメータは AcquireImage [image] データ構造体を含むセル A0 を参照しています。また、このパラメータは、ビジョンツールの画像フィルタ関数や、座標補正関数によって返される、他の [image] データ構造体を参照することができます。

フィクスチャ

入力領域を定義する画像座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

移動

入力領域位置を調整する機能を有効または無効にします。

0 =オフ | 領域を移動することはできません。
1 =オン（デフォルト） | 領域を移動することができます。

サイズ

入力領域の高さおよび幅を調整する機能を有効または無効にします。

0 =オフ | 高さおよび幅を調整することはできません。
1 =オン(デフォルト) | 高さおよび幅を調整することができます。

回転

入力領域の角度を調整する機能を有効または無効にします。

0 =オフ | 領域を回転することはできません。
1 =オン(デフォルト) | 領域を回転することができます。

曲り

入力領域のカーブを調整する機能を有効または無効にします。

0 =オフ | カーブを変更することはできません。
1 =オン(デフォルト) | カーブを変更することができます。

名前

スプレッドシートの EditRegion 関数コントロール要素のテキストラベルを指定します。

表示

画像上の EditRegion グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | EditRegion 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、その領域は表示されません。
2 = 入力のグラフィックスのみ | 領域が常に表示されます。

EditRegion 関数の結果出力

結果

EditRegion [image] コントロール、および右隣のセル内に作成される、対応する結果テーブル。

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(領域) | 位置の X 座標列
高さ | GetHigh(領域) | 領域の高さ
幅 | GetWide(領域) | 領域の幅
角度 | GetAngle(領域) | 領域の角度
カーブ | GetCurve(領域) | 領域のカーブ

関連項目

オペレータ I/F 関数について

画面表示関数について

構造体データアクセス関数

プロパティシートの使用方法


EditString 関数

EditString 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

テキスト編集コントロール要素をスプレッドシートに挿入します。EditString コントロールは、ほかの対話型テキスト入力ボックスと同様に機能します。

EditString 関数 (

最大文字数

)

注意: EditString コントロールのプロパティシートにアクセスするには、このコントロールを右クリックして、[式] を選択します。

EditString 関数 の入力パラメータ

最大文字数

編集ボックスコントロールが受け入れるテキスト文字列の最大の長さ（文字数単位）を指定します（1～255、デフォルト = 8）。

EditString 関数 の結果出力

戻り値 | コントロールに入力されたテキスト文字列。
結果 | EditString コントロール。

関連項目

オペレータ I/F 関数について

画面表示関数について

プロパティシートの使用方法


Link 関数

Link 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

ラベル付きの Link コントロール要素をスプレッドシートに挿入します。Link コントロールは、概念的には HTML ブラウザのハイパーテキストリンクに似ていて、ネットワーク接続された複数の In-Sight デバイスの異なるスプレッドシートセルの間をすばやく「ジャンプ」できます。リンクは、ユーザ入力によって手動で実行したり、Select 関数に参照させることで自動的に実行することができます。

Link 関数 (

ラベル,

ホスト名,

ダイアログラベル/セル,

カーソル位置

)

注意:

  • Link コントロールのプロパティシートにアクセスするには、Link コントロールを右クリックして、[式] を選択します。
  • Link 関数を使用してほかのシステムにログオンする場合は、目的のシステム上でジョブを処理するための総合時間が増加することがあります。この実行時間が、取り込みトリガ間の時間に近づくか、または超えた場合は、いくつかのトリガが失敗することがあります。

Link 関数の入力パラメータ

ラベル

スプレッドシートに表示される Link コントロールの名前。

ホスト名

リンクする In-Sight センサのネットワークでのホスト名。同一のスプレッドシート内の場所をリンクする場合は、このパラメータを空白のままにしておきます。

注意:

  • ネットワーク間でリンクする場合は、アクティブなユーザのユーザ名およびパスワードが、リンク先の In-Sight センサのユーザリストに登録されているユーザ名およびパスワードと一致している必要があります。
  • 無効なホスト名が指定された場合は、最大 30 秒後に接続はタイムアウトします。

ダイアログラベル/セル

リンクによって開く既存の Dialog または Wizard コントロールのラベル。または、リンク先のスプレッドシートの左上の角に表示されるスプレッドシートのセルを参照します。ラベルに Wizard コントロールが指定されていれば、Link コントロールが実行されるときに、Wizard の最初のダイアログが自動的に開きます。

カーソル位置

リンク先でハイライトされるセルを参照します。

  • [ダイアログラベル/セル] パラメータが Wizard コントロールを参照する場合、カーソル位置は無視されます。
  • [ダイアログラベル/セル] パラメータが有効で、カーソル位置に指定されているセル参照がそのダイアログの中に含まれていない場合は、Link コントロールを実行してもダイアログは開きます。
  • [ダイアログラベル/セル] パラメータを入力しないか、または入力したパラメータが無効の場合、Link コントロールを実行すると、現在のスプレッドシートのカーソル位置 (定義されている場合) にジャンプします。
  • [ダイアログラベル/セル] と [カーソル位置] の両方が無効の場合、Link コントロールを実行すると、現在のスプレッドシートのセル A0 にジャンプします。

Link 関数の結果出力

戻り値

実行時に、指定したリンク先にジャンプするラベル付き Link [image] コントロール。

注意: リンクによってリンク先の有効な Dialog または Wizard にジャンプしたときは、Dialog または Wizard を閉じる (終了する) と、リンク元に戻ります。

Link 関数の例

例 1A: 現在のスプレッドシートのセルへのリンク

例 1B: 現在のスプレッドシートのセルへのリンク

例 2: 現在のスプレッドシートのダイアログへのリンク

例 3: ネットワークにわたるダイアログへのリンク

例 1A: 現在のスプレッドシートのセルへのリンク

  1. セル M2 には、次が格納されていると仮定します。

M2 = Link("ジャンプ","","","A5")

「ジャンプ」のラベルが付いた Link コントロールがセル M2 に表示されます。

  2. Link コントロールをクリックすると、関数が実行されます。ハイライトされたカーソルがセル A5 にジャンプします。また、セル A5 が現在のスプレッドシートに表示されない場合は、スプレッドシートは自動的に、セル A5 が表示されるのに必要なだけ表示位置を変えます。

例 1B: 現在のスプレッドシートのセルへのリンク

  1. セル A2 には、次が格納されていると仮定します。

A2 = Link("ジャンプ","","J5","L9")

「ジャンプ」のラベルが付いた Link コントロール がセル A2 に表示されます。

  2. Link コントロールをクリックすると、関数が実行されます。ハイライトされたカーソルはセル L9 にジャンプし、左上のセルは J5 になります。

例 2: 現在のスプレッドシートのダイアログへのリンク

  1. セル A2 には、次が格納されていると仮定します。

A2 = Link("ジャンプ","","Step 1","")

「ジャンプ」のラベルが付いた Link コントロール がセル A2 に表示されます。

  2. Link コントロールをクリックすると、関数が実行されます。現在のスプレッドシートに、「Step 1」のラベルがついたダイアログが開きます。このダイアログが存在しない場合は、Link コントロールを実行しても、何の結果も現れません。

例 3: ネットワークにわたるダイアログへのリンク

  1. セル A2 には、次が格納されていると仮定します。

A2 = Link("ジャンプ","is5100_020304","Step 1","")

「ジャンプ」のラベルが付いた Link コントロール がセル A2 に表示されます。

  2. Link コントロールをクリックすると、関数が実行されます。この Link コントロールを実行することによって、リモート In-Sight ホスト is5100_020304 へのログオンが自動的に行われ ([ユーザリスト] ダイアログの設定によって許可されている場合)、「Step1」のラベルの付いたダイアログが開きます。

  3. [OK] ボタンまたは [キャンセル] ボタンを押してリモートシステムのダイアログを終了すると、Link コントロールを開始したシステムに戻ります。

注意: リンクがダイアログでなくリモートシステムのウィザードを参照しているときは、[完了] ボタンまたは [キャンセル] ボタンを押した場合のみ、接続はリンク元のシステムにリストアされます。

関連項目

オペレータ I/F 関数について

画面表示関数について

Select 関数

Dialog 関数

Wizard 関数

プロパティシートの使用方法


ListBox 関数

ListBox 関数 |
画面表示 → オペレータ I/F | In-Sight 関数リファレンス

ドロップダウンリストコントロール要素をスプレッドシートに挿入します。

ListBox 関数 (

文字列 0 ,

[文字列 1],

[ 文字列 2 ],

...

)

注意: ListBox 関数は、さまざまな数の文字列を受け入れることができるため、この関数はプロパティシートを介しては設定されません。この関数はセル内で直接、または [ジョブの編集] ツールバーの数式バーを使用して設定できます。

ListBox 関数の入力パラメータ

文字列 0、1、2、...

各テキスト文字列の可変長リストです。ユーザがドロップダウンリストから各テキスト文字列を選択すると、それぞれ異なる値を返します。

ListBox 関数の結果出力

戻り値 | 選択した項目のインデックス番号（ゼロから始まる）を示す値。
結果 | ListBox [image] コントロール。 注意: リストで現在選択されているテキスト文字列にも、GetString データアクセス関数を使用してアクセスできます。

ListBox 関数の例

スプレッドシートが次のように設定されています。

A3=ListBox("Item1","Item2","Item3")

A4=A3

セル A3 に含まれている関数によって、デフォルトで "Item1" が選択されているリストコントロールが作成されます。Item1 のインデックス値は 0 であるため、セル A4 の値は 0.000 となります。

"Item2" を選択した場合、セル A4 の値は 1.000 となります。ListBox データアクセス関数

ListBox 関数ListBox データアクセス関数

次のデータアクセス関数を使用して、そのほかのデータ要素を取得できます。

文字列

GetString(ListBox)

テキスト文字列を返します。

関連項目

オペレータ I/F 関数について

画面表示関数について


MessageBox 関数

MessageBox 関数 |
画面表示 → オペレータ I/F | In-Sight 関数リファレンス

ユーザ定義のテキスト文字列を含む「ポップアップ」式のメッセージボックスを表示します。

MessageBox 関数 (

タイトル ,

テキスト ,

状態 ,

タイムアウト ,

ボタン文字列

)

注意: MessageBox コントロールのプロパティシートにアクセスするには、MessageBox コントロールを右クリックして、[式] を選択します。

MessageBox 関数の入力パラメータ

タイトル

メッセージボックスのタイトルバーに表示される名前。

テキスト

表示されるテキストメッセージ。

状態

メッセージボックスを表示する条件式または値を含んでいるセルを参照します。参照されたセルの値が 0 の場合、メッセージボックスは表示されません。参照されたセルの値が 0 以外の場合は、メッセージボックスが表示されます。

タイムアウト

ユーザからの入力がない場合にメッセージボックスが閉じられるまでの待機時間（-1～9999999 ミリ秒、デフォルト = 5000）。タイムアウトに 0 または -１ を指定すれば、ユーザからの入力があるときまで、メッセージボックスは表示され続けます。

ボタン文字列

メッセージボックスの下側に表示するユーザ入力用のボタンの種類を指定します。ボタンが押されると、メッセージボックスが閉じて、値を返します。返す値は、押されるボタンによって異なります。

0 = はい、いいえ（デフォルト） | [はい] がクリックされると、1.000 を返します。[いいえ] がクリックされると、0.000 を返します。
1 = OK、キャンセル | [OK] がクリックされると、1.000 を返します。[キャンセル] がクリックされると、0.000 を返します。
2 = 閉じる | [閉じる] がクリックされると、常に 1.000 を返します。

MessageBox 関数の結果出力

戻り値

0.000 または 1.000 の値（ユーザによりボタンがクリックされた場合）。または -1.000（指定されたタイムアウトの時間が過ぎた場合）。入力パラメータが無効であれば #ERR を返します。

MessageBox 関数の例

スプレッドシートが次のように設定されています。

A2=MessageBox("警告!","これはメッセージボックスの例です。",B2,5000,1)

B2=CheckBox("Test")

セル B2 のチェックボックスがオンの場合、セル A2 に定義されたメッセージボックスが表示されます。

ユーザが [OK] をクリックすると、セル A2 に 1.000 の値を返します。[キャンセル] をクリックすると、セル A2 に 0.000 の値を返します。ユーザがボタンを押す前に 5000 ミリ秒のタイムアウト時間が過ぎると、セル A2 に -1.000 の値を返します。

関連項目

オペレータ I/F 関数について

画面表示関数について

プロパティシートの使用方法


Select 関数

Select 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

Select 関数は、インデックス付きセル参照の変数リストから選択された、スプレッドシートのセルに含まれるオペレータ I/F 関数を実行します。

注意:　Select 関数はダイアログを含むセルへの可変数の参照を受け入れられるため、この関数はプロパティシートによって設定されません。この関数はセル、または [ジョブの編集] ツールバーの数式バーで直接設定できます。

Select 関数関数の入力パラメータ

Select 関数(

タイトル,

インデックス,

自動,

コントロール　0,

[コントロール　1],

[コントロール　2],

...

)

タイトル

スプレッドシートで、Select [image] コントロールの隣に表示される Select 関数の名前。

インデックス

セル参照の変数リストから実行されるコントロールの位置番号 (ゼロから始まる) を指定します。最初のセル参照はインデックス 0、2 番目はインデックス 1 のように続きます。

自動

Select 関数を自動（スプレッドシートの別のセルに入っている条件値に応じて）および手動で実行可能にするか、または手動でのみ実行可能にするかを指定します。

0 = 手動 | インデックス付きセルのオペレータ I/F 関数は、Select 関数のボタンが押されたときのみ実行されます。
1 = 手動またはプログラム | インデックス付きセルのオペレータ I/F 関数は、Select 関数のボタンが押されたときのみ、またはインデックスの値が変更された場合に自動的に実行されます。

コントロール　0、1、2、...

OCRMaxAutoTune 関数、Dialog 関数、Wizard 関数、Link 関数、Button 関数または Select 関数が含まれる必要がある、スプレッドシートのセルに対する参照の可変長リスト。

Select 関数関数の結果出力

結果

セル参照のインデックス付きリストからオペレータ I/F 関数を実行するラベル付き Select [image] コントロール。

関連項目

  • Dialog 関数
  • Link 関数
  • Wizard 関数
  • Button 関数
  • オペレータ I/F 関数について
  • 画面表示関数について


Wizard 関数

Wizard 関数 |
画面表示関数 → オペレータ I/F | In-Sight 関数リファレンス

スプレッドシートにウィザードコントロールを挿入します。ウィザードでは Dialog 関数を含んでいる 2 つ以上のセルを参照し、一度に 1 段階ずつ移動したり、ポップアップメニューからアクセスしたりできるようにしたダイアログの集合体を作成します。シーケンシャルモードでのウィザード操作の最終ダイアログには [終了] ボタンが含まれます。このボタンは、各ダイアログで行った設定変更を確定します。

Wizard 関数 (

名前 ,

モード ,

ダイアログ0,

ダイアログ1,

[ダイアログ2],

...

)

注意:
  • Wizard 関数はダイアログを含んでいるセルへの可変数の参照を受け入れるため、この関数はプロパティシートによって設定されません。この関数はセル、または [ジョブの編集] ツールバーの数式バーで直接設定できます。

  • Dialog 関数のダイアログの [タイトル] パラメータが、ダイアログ内に編集可能な文字列値 (EditString、ListBox または Concatenate など) を含むセルを参照している場合 (必要に応じて GetString 関数を使用)、セルの値を変更すると、セルはただちに更新されて新しい値が表示されます。ただし、ダイアログのタイトルには古い値が表示されたままです。ダイアログのタイトルは、そのダイアログを再度開いたときに更新されます。また、モードが 1 (シーケンシャル) に設定された Wizard 関数によってダイアログが参照される場合、セルの文字列値を変更してもウィザードのメニューには古い値が表示されたままです。ウィザードのメニューは、そのウィザードを再度開いたときに更新されます。

Wizard 関数関数の入力パラメータ

名前

スプレッドシートに表示されるウィザードの名前。

モード

ウィザードがダイアログを開く際にポップアップメニューを使用するか、または順番に開くかを指定します。

0 = メニュー | ポップアップメニューのリストから、どの順序でもダイアログを開くことができます。
1 = シーケンシャル | Wizard 関数のパラメータリストでダイアログを含んでいるセルが参照される順序でダイアログを開きます。

ダイアログ0、1、2、...

Dialog 関数を含んでいるスプレッドシートのセルを参照することによって、ウィザードに含めるダイアログを指定します。ダイアログを開く順序 (シーケンシャルモードの場合)、またはリスト (ポップアップメニューモードの場合) は、Wizard 関数のパラメータリストでセルが参照される順序によって定義されます。

Wizard 関数関数の結果出力

結果

ボタンを押して手動で実行する場合や Select 関数で自動的に実行する場合も、起動するウィザードはラベル付きのウィザード [image] コントロールになります。

Wizard 関数例

スプレッドシートが次のように設定されています。

A3=Dialog("Dialog1","Step 1",5,5)

A4=Dialog("Dialog2","Step 2",5,5)

A5=Dialog("Dialog3","Step 3",5,5)

A6=Wizard("ウィザードの例",1,A3,A4,A5)

セル A6 の Wizard 関数は、[モード] パラメータが 1 であるためシーケンシャルモードでアクセスされる セル A3、A4、および A5 を参照します。ウィザードを実行すると、「Dialog1」というラベルの付いたダイアログが最初に表示されます。ユーザは、[キャンセル] ボタンを押してウィザードを閉じるか、[次へ] ボタンを押してウィザードの次のダイアログへ進むことができます。最後の「Dialog3」ダイアログは次のように表示されます。

また、Wizard 関数の第 2 パラメータを 0 に変更すると、メニューモードでウィザードを起動することができます。

A6=Wizard("ウィザードの例",0,A3,A4,A5)

ここでウィザードを起動すると、起動するダイアログを選択するメニューが表示されます。

リストからダイアログを選択すると、[メニュー] ボタンが表示されます。このボタンをクリックすると、どのダイアログからでもメニューに戻ることができます (下図に Step 2 ダイアログの表示例を示します)。

関連項目

Dialog 関数

Select 関数

オペレータ I/F 関数について

画面表示関数について


ワークシート関数

画面表示関数

In-Sight 関数リファレンス

次の関数はスプレッドシートに画像を挿入します。

  • Chart 関数: スプレッドシートの行を使用してストリップチャート表示要素を実装します。
  • ColorLabel 関数: カラーのテキスト文字列を、オプションのカラー背景とともに表示します。
  • MultiStatus 関数: シミュレートした LED ステータス配列を実装します。
  • Status 関数: シミュレートしたマルチカラーステータス LED を名前付きで実装します。
  • StatusLight 関数: シミュレートした LED ステータスライトを名前付きで挿入します。ステータスライトの色および名前はどちらもユーザが指定できます。


Chart 関数

Chart 関数 |
画面表示関数 → ワークシート | In-Sight 関数リファレンス

スプレッドシートの行を使用してストリップチャート表示要素を挿入します。行の高さを調整すると、チャートのサイズを調整することができます。

注意: チャートは Dialog 関数ではサポートされていません。

Chart 関数 (

イベント ,

値 ,

プロット数 ,

名前 ,

最小値 ,

最大値

)

Chart 関数 の入力パラメータ

イベント | チャート内に次の値を記録する更新イベントを指定します。このパラメータはセル A0 (AcquireImage セル) か、 [image] 関数または [image] 関数のいずれかを含むセルを参照している必要があります。
値 | チャートに表示する数値を指定します。このパラメータは通常、すべてのサイクルで更新する数値 (-9999999～9999999、デフォルト = 0) を含んでいるスプレッドシートのセルを参照しています。
プロット数 | チャート表示する値の数 (2 ～ 5000、デフォルト = 10) を指定します。
名前 | チャートに表示される文字列ラベルを指定します。
最小値 | 縦のチャート座標の最小値（-9999999～9999999、デフォルト = 0）を指定します。
最大値 | 縦のチャート座標の最大値（-9999999～9999999、デフォルト = 0）を指定します。

注意: 最小値と最大値が 0 に設定されていれば、入力値に従って縦の座標範囲のスケーリングを継続します。

関連項目

ワークシート関数について

画面表示関数について

プロパティシートの使用方法


ColorLabel 関数

ColorLabel 関数 |
画面表示関数 → ワークシート | In-Sight 関数リファレンス

カラーラベルの表示要素をスプレッドシートに挿入します。ラベルはセルを背景色で塗りつぶし、テキストを前景色で描画します。

ColorLabel 関数 (

名前,

前面色,

背景色

)

ColorLabel 関数 の入力パラメータ

名前 | 前景に表示される文字列ラベルを指定します。
前面色 | 前景色を指定します。
背景色 | 背景色を指定します。

関連項目

ワークシート関数について

画面表示関数について

プロパティシートの使用方法


MultiStatus 関数

MultiStatus 関数 |
画面表示 → ワークシート | In-Sight 関数リファレンス

シミュレートした LED ステータスライトの配列をスプレッドシートに挿入します。この関数は、コントロール値の指定されたビットを、2 色の状態を持つ 1 つの LED として表示します。

MultiStatus 関数 (

値 ,

開始ビット ,

ビット数,

表示順序を逆に,

カラー0 ,

カラー1

)

MultiStatus 関数の入力パラメータ

値

コントロール値を指定します（0～65535、デフォルト = 0）。

開始ビット

コントロール値の最初のビットを指定します（0～15、デフォルト = 0）。

ビット数

表示するビットの数を指定します (1 ～ 16、デフォルト = 10)。各ビットが 1 つの LED に対応しています。

表示順序を逆に

配列の最上位ビット（MSB）を表すビットを決定します。

0 =オフ（デフォルト） | 左端のビットが MSB
1 =オン | 右端のビットが MSB

カラー 0

0 のビット表現に使用する色を設定します (0 ～ 16、デフォルト = 黄色)。

カラー 1

1 のビット表現に使用する色を設定します (0 ～ 16、デフォルト = 緑)。

MultiStatus の例

スプレッドシートが次のように設定されています。

A1 = EditInt(0,255)

A2 = MultiStatus(A1,0,8,0,0,0)

セル A1 の EditInt コントロールを増加すると、MultiStatus 関数が、参照するセル（この場合は、A1）のバイナリ表現をどのように表示するかを見ることができます。

関連項目

ワークシート関数について

画面表示関数について

プロパティシートの使用方法


Status 関数

Status 関数 |
画面表示 → ワークシート | In-Sight 関数リファレンス

シミュレートした LED ステータスライトの表示要素をスプレッドシートに挿入します。ステータスのセルは赤、黄色、または緑のテキストラベルとともに各色の LED で指定された値を表示します。

Status 関数 (

状態 ,

ラベル:緑 ,

ラベル:黄色 ,

ラベル:赤

)

Status 関数の入力パラメータ

状態

ステータスモニタ値を含んでいるセルを参照します。ステータスカラーと呼ばれるインジケータが、モニタ値によって、次のように表示されます。

モニタ値 | ステータスカラー
< 0 | 赤
= 0 | 黄色
> 0 | 緑色

ラベル: 緑

ステータスがゼロより大きい場合に表示されるテキストを指定します。

ラベル: 黄色

ステータスがゼロの場合に表示されるテキストを指定します。

ラベル: 赤

ステータスがゼロより小さい場合に表示されるテキストを指定します。

関連項目

ワークシート関数について

画面表示関数について

プロパティシートの使用方法


StatusLight 関数

StatusLight 関数 |
画面表示 → ワークシート | In-Sight 関数リファレンス

シミュレートした LED ステータスライト表示要素をスプレッドシートに挿入します。ステータスライトの色および名前はどちらもユーザが指定できます。StatusLight のセルは、指定された色の LED を、各色のテキストラベルとともに表示します。

StatusLight 関数 (

状態,

ラベル: 正,

ラベル: 0,

ラベル: 負,

カラー: 正,

カラー: 0,

カラー: 負

)

StatusLight 関数の入力パラメータ

状態 | ステータスモニタ値を含んでいるセルを参照します。
ラベル: 正 | ステータスが正の値の場合に表示されるテキストを指定します。
ラベル: 0 | ステータスがゼロの場合に表示されるテキストを指定します。
ラベル: 負 | ステータスが負の値の場合に表示されるテキストを指定します。
カラー: 正 | ステータスが正の値の場合に表示されるステータス LED の色を指定します (デフォルト = 緑)。
カラー: 0 | ステータスがゼロの値の場合に表示されるステータス LED の色を指定します (デフォルト = 黄色)。
カラー: 負 | ステータスが負の値の場合に表示されるステータス LED の色を指定します (デフォルト = 赤)。

例

セル A2 および B2 は、次のように設定されていると仮定します。

A2=EditInt(-1,1)

B2=StatusLight($A$2,"Pass","Warn","Fail",8,9,7)

A2 に現在含まれている値が 1 の場合、セル B2 は以下を返します。


グラフィックス関数

画面表示関数

In-Sight 関数リファレンス

グラフィックス関数は、画像上にグラフィックスオーバレイをプロットします。

  • PlotArc 関数: 画像上に円弧線分をプロットします。
  • PlotCircle 関数: 画像上に円をプロットします。
  • PlotCompositeRegion 関数: 画像上に合成領域をプロットします。
  • PlotCross 関数: 画像上に十字マークをプロットします。
  • PlotData 関数: 　 　構造体に保存されたグラフィックスを描画します。
  • PlotLine 関数: 画像内に線分をプロットします。
  • PlotPoint 関数: 画像内にポイントクロスヘアをプロットします。
  • PlotRegion 関数: 画像上に領域のアウトラインをプロットします。
  • PlotString 関数: 画像上にテキスト文字列をプロットします。


PlotArc 関数

PlotArc 関数 |
画面表示関数 → グラフィックス | In-Sight 関数リファレンス

反時計回りに始点から終点へと画像上に円弧線分をプロットします。

PlotArc 関数 (

円弧.中心行 ,

円弧.中心列 ,

円弧.開始点行 ,

円弧.開始点列 ,

円弧.終点行 ,

円弧.終点列 ,

名前 ,

カラー ,

表示

)

PlotArc 関数の入力パラメータ

円弧

プロットする円弧の画像座標を指定します。

中心行 | 円弧の中心の行座標
中心列 | 円弧の中心の列座標
開始点行 | 始点の行座標
開始点列 | 始点の列座標
終点行 | 終点の行座標
終点列 | 終点の列座標

名前

円弧線分とともに画像上に表示するテキストラベルを指定します。

カラー

プロットする円弧線分の色を指定します (デフォルト = 暗い緑)。

表示

画像上の PlotArc グラフィックスオーバレイの表示モードを指定します。

0 =オフ | PlotArc 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、円弧線分は表示されません。
1 =オン（デフォルト） | 円弧線分が常に表示されます。

PlotArc 関数の結果出力

戻り値

円弧線分を含んでいる [image] データ構造体。

関連項目

グラフィックス関数について

画面表示関数について

プロパティシートの使用方法


PlotCircle 関数

PlotCircle 関数 |
画面表示関数 → グラフィックス | In-Sight 関数リファレンス

画像上に円をプロットします。

PlotCircle 関数 (

円.行 ,

円.列 ,

円.半径 ,

名前 ,

カラー ,

表示

)

PlotCircle 関数の入力パラメータ

円

プロットする円の画像座標を指定します。

行 | 円の中心の行座標
列 | 円の中心の列座標
半径 | 円の半径

名前

円とともに画像上に表示するテキストラベルを指定します。

カラー

プロットする円の色を指定します (デフォルト = 暗い緑)。

表示

画像上の PlotCircle グラフィックスオーバレイの表示モードを指定します。

0 =オフ | PlotCircle 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、円は表示されません。
1 =オン（デフォルト） | 円が常に表示されます。

PlotCircle 関数の結果出力

戻り値

円を含んでいる [image] データ構造体。

関連項目

グラフィックス関数について

画面表示関数について

プロパティシートの使用方法


PlotCompositeRegion 関数

PlotCompositeRegion 関数 |
画面表示関数 → 画像 | In-Sight 関数リファレンス

画像上に合成領域のアウトラインをプロットします。

PlotCompositeRegion 関数 (

合成領域,

名前,

カラー,

表示

)

PlotCompositeRegion 関数 の入力パラメータ

合成領域

プロットする EditCompositeRegion、EditMaskedRegion、または EditPolylinePath 関数への参照を指定します。

名前

 合成領域とともに画像上に表示するテキストラベルを指定します。

カラー

プロットする領域の色を指定します (デフォルト = 暗い緑)。

表示

画像上のグラフィックスオーバレイの表示モードを指定します。

0 =オフ | PlotCompositeRegion 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、その領域は表示されません。
1 =オン(デフォルト) | 領域が常に表示されます。

PlotCompositeRegion 関数 の結果出力

戻り値

合成領域を含む [image] データ構造体。

関連項目

グラフィックス関数について

画面表示関数について

プロパティシートの使用方法


PlotCross 関数

PlotCross 関数 |
画面表示関数 → グラフィックス | In-Sight 関数リファレンス

画像上に十字マークをプロットします。

PlotCross 関数 (

十字.行,

十字.列,

十字.角度,

十字.高さ,

十字.幅,

名前,

カラー,

表示

)

PlotCross 関数の入力パラメータ

十字

プロットする十字マークの画像座標を指定します。

行 | 十字マークの中心の行座標
列 | 十字マークの中心の列座標
角度 | 十字マークの角度
高さ | 十字マークの高さ
幅 | 十字マークの幅

名前

十字マークとともに画像上に表示するテキストラベルを指定します。

カラー

プロットする十字マークの色を指定します (デフォルト = 暗い緑)。

表示

画像上の PlotCross グラフィックスオーバレイの表示モードを指定します。

0 =オフ | PlotCross 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、十字マークは表示されません。
1 =オン（デフォルト） | 十字マークが常に表示されます。

PlotCross 関数の結果出力

戻り値

十字を含んでいる [image] データ構造体。

関連項目

グラフィックス関数について

画面表示関数について

プロパティシートの使用方法


PlotData 関数

PlotData 関数 |
画面表示関数 → グラフィックス | In-Sight 関数リファレンス

データ構造体に格納されているグラフィックスをすべてプロットします。

注意: Repeat 関数または RepeatUntil 関数と組み合わせてループを作成する場合、PlotData 関数はスプレッドシートの反復されるセルのループ外に配置する必要があります。

PlotData 関数関数の入力パラメータ

PlotData 関数(

データ,

)

データ

StoreData 関数によって返された [image] データ構造体への参照を指定します。

PlotData 関数関数の結果出力

戻り値

データ構造体に格納されているグラフィックスを含む [image] データ構造体。

関連項目

  • グラフィックス関数について
  • 画面表示関数について
  • スプレッドシートセルのルールの作成
  • Repeat 関数
  • RepeatUntil 関数
  • StoreData 関数
  • プロパティシートの使用方法


PlotLine 関数

PlotLine 関数 |
画面表示関数 → グラフィックス | In-Sight 関数リファレンス

画像内に線分をプロットします。

PlotLine 関数 (

線.行0,

線.列0,

線.行1,

線.列1,

名前,

カラー,

表示

)

PlotLine 関数の入力パラメータ

線

プロットする線分の画像座標を指定します。

行 0 | 線の始点の行座標
列 0 | 線の始点の列座標
行 1 | 線の終点の行座標
列 1 | 線の終点の列座標

名前

線とともに画像上に表示するテキストラベルを指定します。

カラー

プロットする線の色を指定します (デフォルト = 暗い緑)。

表示

画像上の PlotLine グラフィックスオーバレイの表示モードを指定します。

0 =オフ | PlotLine 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、線分は表示されません。
1 =オン（デフォルト） | 線分が常に表示されます。

PlotLine 関数の結果出力

戻り値

線分を含んでいる [image] データ構造体。

関連項目

グラフィックス関数について

画面表示関数について

プロパティシートの使用方法


PlotPoint 関数

PlotPoint 関数 |
画面表示関数 → グラフィックス | In-Sight 関数リファレンス

画像内にポイントクロスヘアをプロットします。

PlotPoint 関数 (

点.行,

点.列,

名前,

カラー,

表示

)

PlotPoint 関数の入力パラメータ

点

プロットする点の画像座標を指定します。

行 | 点の行座標
列 | 点の列座標

名前

点とともに画像上に表示するテキストラベルを指定します。

カラー

プロットする点の色を指定します (デフォルト = 暗い緑)。

表示

画像上の PlotPoint グラフィックスオーバレイの表示モードを指定します。

0 =オフ | PlotPoint 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、点は表示されません。
1 =オン（デフォルト） | 点が常に表示されます。

PlotPoint 関数の結果出力

戻り値

点を含んでいる [image] データ構造体。

関連項目

グラフィックス関数について

画面表示関数について

プロパティシートの使用方法


PlotPolygon 関数

PlotPolygon 関数 |
画面表示関数 → 画像 | In-Sight 関数リファレンス

画像上に合成領域のアウトラインをプロットします。

PlotPolygon 関数 (

合成領域,

名前,

カラー,

表示

)

PlotPolygon 関数 の入力パラメータ

合成領域

プロットする EditCompositeRegion、EditMaskedRegion、または EditPolylinePath 関数への参照を指定します。

名前

 合成領域とともに画像上に表示するテキストラベルを指定します。

カラー

プロットする領域の色を指定します (デフォルト = 暗い緑)。

表示

画像上のグラフィックスオーバレイの表示モードを指定します。

0 =オフ | PlotCompositeRegion 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、その領域は表示されません。
1 =オン(デフォルト) | 領域が常に表示されます。

PlotPolygon 関数 の出力

戻り値

合成領域を含む [image] データ構造体。

関連項目

グラフィックス関数について

画面表示関数について

プロパティシートの使用方法


PlotRegion 関数

PlotRegion 関数 |
画面表示関数 → グラフィックス | In-Sight 関数リファレンス

画像上に領域のアウトラインをプロットします。

PlotRegion 関数 (

領域.行,

領域.列,

領域.高さ,

領域.幅,

領域.角度,

領域.カーブ,

名前,

カラー,

表示

)

PlotRegion 関数の入力パラメータ

領域

プロットする領域の画像座標を指定します。

行 | 領域の原点の行座標
列 | 領域の原点の列座標
高さ | 領域の高さ
幅 | 領域の幅
角度 | 領域の角度
カーブ | 領域の湾曲

名前

領域とともに画像上に表示するテキストラベルを指定します。

カラー

プロットする領域の色を指定します (デフォルト = 暗い緑)。

表示

画像上の PlotRegion グラフィックスオーバレイの表示モードを指定します。

0 =オフ | PlotRegion 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、領域は表示されません。
1 =オン（デフォルト） | 領域が常に表示されます。

PlotRegion 関数の結果出力

戻り値

領域を含んでいる [image] データ構造体。

関連項目

グラフィックス関数について

画面表示関数について

プロパティシートの使用方法


PlotString 関数

PlotString 関数 |
画面表示関数 → 画像 | In-Sight 関数リファレンス

画像上にテキスト文字列をプロットします。

ヒント: スプレッドシートに PlotString 関数を挿入した後で、関数のセルをハイライトし、[セルのフォーマット] ダイアログを使用して、PlotString セルとプロットするテキスト文字列のフォント、およびそのサイズとスタイルを設定します。

PlotString 関数 (

文字列,

点.行,

点.列,

カラー,

表示

)

PlotString 関数の入力パラメータ

文字列

プロットするテキスト文字列を指定します。

点

プロットする文字列の画像座標を指定します。

行 | 文字列の行座標
列 | 文字列の列座標

カラー

プロットする文字列の色を指定します (デフォルト = 暗い緑)。

表示

画像上の PlotString グラフィックスオーバレイの表示モードを指定します。

0 =オフ | PlotString 関数を含むセルがスプレッドシート内でハイライトされている場合を除き、文字列は表示されません。
1 =オン(デフォルト) | 文字列が常に表示されます。

PlotString 関数の結果出力

戻り値

文字列を含む [image] データ構造体。

関連項目

グラフィックス関数について

画面表示関数について

プロパティシートの使用方法


数値演算関数

In-Sight 関数リファレンス

数値演算関数は、標準の数学関数、演算子、論理演算、統計、三角関数などが用意され、数式を作成するために使用します。数値演算関数は次のカテゴリに分類されます。

  • 論理演算関数: In-Sight スプレッドシートにブール代数および条件テストの機能を提供します。
  • ルックアップ関数: ある範囲の値から最大値、最小値、またはインデックス番号をサーチしたり、行、列、および #ERR データを返したり、複数の関数にエラーが伝播するのを防止するために #ERR セルを抑止したりします。
  • 数学関数: 絶対値、べき乗、切り捨て、四捨五入、乱数生成などのさまざまな数学関数を提供します。
  • 演算子: 関係演算子には、=、<>、>、<、>=、<= があります。
  • 統計関数: 値のグループについての、最大値、最小値、平均値、および標準偏差データを返します。
  • 三角関数: サイン、コサイン、タンジェント、パイ、角度、およびラジアンのための（およびこれらに関連する）関数を提供します。


論理演算関数

数値演算関数

In-Sight 関数リファレンス

論理演算関数は、In-Sight スプレッドシートにブール代数および条件テストの機能を提供します。ビットごとの関数はすべて、2 進数で表現した引数の各ビット位置に対応する論理演算を実行し、結果として求められた 2 進値を 10 進数形式で返します。例えば、値 0 のビット 0 は値 1 のビット 0 と比較され、値 0 のビット 1 は値 1 のビット 1 と比較されます。複数の真/偽条件の結果を GUI 表示やディスクリート出力に組み合わせる場合は、ビットごとの関数を、MultiStatus 関数やディスクリート I/O 関数とともに使用すると特に有効です。

演算子 | シンボル
NOT | !
AND | &&
OR | ||
等しい | ==
等しくない | <> (または !=)

注意:

  • 特定のスニペットがスプレッドシートに挿入されるとき、[ジョブの編集] ツールバーに表示される式に、!、&&、||、==、<>、>=、<=、!= などの文字が含まれる場合があります。

  • 空のセルまたは文字列を含むセルが引数のリストに存在する場合、AND と && 演算子は異なる機能を持ちます。

すべての論理演算関数において、次が適用されます。

  • FALSE = 0
  • TRUE = ゼロ以外の結果

関数

説明

And(値1, 値2, ...)

すべての値がゼロ以外の場合は 1 を返します （論理 AND [image] どちらの値も TRUE である場合の結果は TRUE です）。

注意:

  • 引数が空のセルまたは文字列が含まれているセルを参照している場合、これらの値は無視されます。すべての引数が空のセルまたは文字列が含まれているセルを参照している場合は、#ERR が返されます。

  • 空のセルまたは文字列を含むセルが引数のリストに存在する場合、AND と && 演算子は異なる機能を持ちます。AND 関数は空のセルまたは文字列のみを含むセルを無視しますが、&& 演算子はこれらのセルを無視しません。セル A5 が空のセルの場合、関数 A5&&2 は 0 を返します。セル A5 に「a」などの文字列が含まれている場合、関数 A5&&2 は #ERR を返します。

Closed 例

  • And(45, -77) は 1 を返します。
  • And(65534, 0) は 0 を返します。
  • And(-3, -2, -1, 1, 2, 3) は 1 を返します。
  • And(-1, 0, 1) は 0 を返します。

BitAnd(値1, 値2, ...)

値のビットごとの AND を返します。

注意: 下位 16 ビットのみを処理します。

Closed 例

BitAnd(45, 77) は 13 を返します。

45 = 0000 0000 0010 1101 (2 進数)、77 = 0000 0000 0100 1101 (2 進数)

And 演算子を使用して、これら 2 つの 16 ビット 2 進数の共通ビットを個別に比較した結果は 0000 0000 0000 1101 で、これを 10 進数で表すと 13 になります。

BitNot(値)

値をビットごとに反転させた結果を返します。

注意: 下位 16 ビットのみを処理します。

Closed 例

BitNot(45) は 65490 を返します。

45 = 0000 0000 0010 1101 (2 進数)。0 を 1、1 を 0 に反転した結果は 2 進数では 1111 1111 1101 0010 で、これを 10 進数で表すと 65490 になります。

BitOr(値1, 値2, ...)

値のビットごとの OR を返します。

注意: 下位 16 ビットのみを処理します。

Closed 例

BitOr(45, 77) は 109 を返します。

45 = 0000 0000 0010 1101 (2 進数)、77 = 0000 0000 0100 1101 (2 進数)

Or 演算子を使用して、これら 2 つの 16 ビット 2 進数の共通ビットを個別に比較した結果は 0000 0000 0110 1101 で、これを 10 進数で表すと 109 になります。

BitXor(値1, 値2, ...)

値のビットごとの XOR (排他的 OR) を返します (論理 XOR [image] は、ビットの中の 1 つだけが TRUE のときに、結果が TRUE になります。等しいビットが複数個存在する場合の結果は FALSE です)。

注意: 下位 16 ビットのみを処理します。

Closed 例

BitXor (45, 77) は 96 を返します。

45 = 0000 0000 0010 1101 (2 進数)、77 = 0000 0000 0100 1101 (2 進数)

次のように、45 と 77 で共通ビットではないのは 0110 0000 のみです。

45 | 77 | ビット単位の XOR | XOR ビット
0 | 0 | 2 個の 0 ≥ XOR [image] FALSE | 0 (FALSE)
0 | 1 | 1 を 1 つのみ ≥ XOR [image] TRUE | 1 (TRUE)
1 | 0 | 1 を 1 つのみ ≥ XOR [image] TRUE | 1 (TRUE)
0 | 0 | 2 個の 0 ≥ XOR [image] FALSE | 0 (FALSE)
1 | 1 | 2 個の 1 ≥ XOR [image] FALSE | 0 (FALSE)
1 | 1 | 2 個の 1 ≥ XOR [image] FALSE | 0 (FALSE)
0 | 0 | 2 個の 0 ≥ XOR [image] FALSE | 0 (FALSE)
1 | 1 | 2 個の 0 ≥ XOR [image] FALSE | 0 (FALSE)

0110 0000 = 96 (10 進数)

If(条件, 値1, 値2)

条件がゼロ以外の場合は値1 を返し、条件がゼロの場合は値2 を返します。

注意: 条件または引数が空のセルを参照している場合、それらはゼロ (FALSE) と解釈されます。

InRange(値, 開始, 終了)

Min(開始,終了) ≤ 値 ≤ 最大(開始,終了) の場合、TRUE を返します。

Not(値)

値がゼロ以外の場合は 0 を返し、値がゼロの場合は 1 を返します (論理 NOT)。

Closed 例

  • Not(-12345) は 0 を返します。
  • Not(3.14) は 0 を返します。
  • Not(2-1) は 0 を返します。
  • Not(1-1) は 1 を返します。

Or(値1, 値2, ...)

すべての値がゼロの場合は 0 を返し、ゼロ以外の値がある場合は 1 を返します (論理 OR [image] 値のいずれかが TRUE の場合、結果は TRUE です)。

Closed 例

  • Or(45, -77) は 1 を返します。
  • Or(-1, 0, 1) は 1 を返します。
  • Or(0, 1-1) は 0 を返します。

関連項目

数値演算関数について

[関数の挿入] ダイアログ


ルックアップ関数

ルックアップ関数 |
数値演算関数 | In-Sight 関数リファレンス

関数

説明

Choose(インデックス, 値0, [値1, ...])

可変長リスト中のインデックス付きパラメータ値を返します。

Column(セル)

スプレッドシートのセルの列番号を返します。

注意: 列 A = 0.0 および列 Z = 25.0 です。

CountError(セル1, [セル2, ...])

1 つ以上のセルまたはセル範囲でのエラーの数を返します。

ErrFree(セルまたはセル範囲)

エラーの伝播を抑止するために、#ERR を空白セルに変換します。

If(条件, 値1, 値2)

条件がゼロ以外の場合は値 1 を返し、条件がゼロの場合は値 2 を返します。

MaxI(値0, [値1, ...])

値の可変長リストから最大の値のインデックスを返します。

MinI(値0, [値1, ...])

値の可変長リストから最小の値のインデックスを返します。

NthMaxI(N, 値0, [値1, ...])

値の可変長リストから N 番目に大きい値のインデックスを返します。

NthMinI(N, 値0, [値1, ...])

値の可変長リストから N 番目に小さい値のインデックスを返します。

Row(セル)

スプレッドシートのセルの行番号を返します。

Switch(入力値, デフォルト値, 場合0, 値0, [場合1, 値1, ...])

入力値に一致する最初の「場合」に対応する値を返します。インデックス付きの「場合」が FALSE の場合、指定されているデフォルト値を返します。数式内の複数の「場合」が入力値に一致した場合、一番先に一致した「場合」を返します。

Closed Switch の例

A4 = Switch(A2,-1,2,"C",3,"B",A3,"A")

セル A2=2 の場合、セル A4 に返される値は C となります。

セル A2=3 の場合、セル A4 に返される値は B となります。

セル A2=5 の場合、入力値に一致する数式の場合がないため、セル A4 に返される値はデフォルト値の -1 となります。

注意: 関数のパラメータにテキスト文字列が必要な場合、If、Switch、または Choose によって文字列を直接提供することはできません。例えば、Len(If(...)) は無効です。この問題を解決するには、If、Switch、または Choose を別のセルに入れて、そのセルへの参照を作成してください。

関連項目

数値演算関数について

[関数の挿入] ダイアログ


数学関数

数学関数 |
数値演算関数 | In-Sight 関数リファレンス

関数 | 説明
Abs(値) | 値の絶対値を返します。
Exp(値) | e を底とする値べき乗を返します。
Mod(値1, 値2) | 値 1 を値 2 で割った余りを返します。
Power(底, 指数) | 底を底とする指数べき乗を返します。
Rand(イベント) | 入力イベント発生時に乱数（0.0～1.0）を返します。各イベントは、新しい乱数の生成にトリガをかけます。 注意: Rand は、セル内の唯一の項目である必要があります。
Round(値) | 値を四捨五入して整数にした値を返します。
RoundDown(値) | 値を切り捨てて整数にした値を返します。
RoundUp(値) | 値を切り上げて整数にした値を返します。
Sqrt(値) | 値の平方根を返します。
Sum(値1, [値2, ...]) | 値の可変長リストの合計を返します。
Trunc(値) | 値を切り捨てて整数にした値を返します。結果は、小数部のない値となります。

関連項目

数値演算関数について

[関数の挿入] ダイアログ


演算子

演算子 |
数値演算関数 | In-Sight 関数リファレンス

注意: 特定のスニペットがスプレッドシートに挿入されると、[ジョブの編集] ツールバーに表示される式に、 !、&&、||、==、<>、>=、<=、!= などの文字が含まれる場合があります。これらの文字は、次の論理演算子および比較演算子の代替コードです。

演算子 | シンボル
NOT | !
AND | &&
OR | ||
等しい | ==
等しくない | <>（または、!=）

演算子 | 説明
= | 等しい
<> | 等しくない
> | より大きい
< | より小さい
>= | 以上
<= | 以下

関連項目

数値演算関数について

[関数の挿入] ダイアログ


統計関数

統計関数 |
数値演算関数 | In-Sight 関数リファレンス

関数 | 説明
ComputeStats 関数 | 参照値の統計を計算します。
Max(値 0, [値 1, ...]) | 値の可変長リストから最大値を返します。
Mean(値 0, [値 1, ...]) | 値の可変長リストの平均を返します。
Min(値 0, [値 1, ...]) | 値の可変長リストから最小値を返します。
NthMax(N, 値 0, [値 1, ...]) | 値の可変長リストから、N 番目に大きな値を返します。
NthMin(N, 値 0, [値 1, ...]) | 値の可変長リストから、N 番目に小さな値を返します。
SDev(値 0, 値 1, [値 2, ...]) | 値の可変長リストのバイアスを含めた標準偏差 (分母は N-1) を返します。
SDevUnbiased(値 0, 値 1, [値 2, ...]) | 値の可変長リストのバイアスを除外した標準偏差 (分母は N) を返します。

関連項目

数値演算関数について

[関数の挿入] ダイアログ


ComputeStats 関数

数値演算 → 統計

In-Sight 関数リファレンス

参照値の統計を計算します。

ComputeStats 関数 (

イベント,

値,

オフライン時にカウント,

イベントのリセット.手動,

イベントのリセット.オンライン,

イベントのリセット.ジョブを開く

)

ComputeStats 関数の入力パラメータ

イベント

カウンタを増分するイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

値

計算されるデータのソースを含んでいるセルへの必要な参照を指定します。参照されているセルがない場合、関数はすべての結果に対して #ERR を返します。

オフライン時にカウント

センサがオフラインの間に統計が計算されるかどうかを指定します。

0 =オフ | センサがオフラインの場合、統計を計算しません。
1 =オン（デフォルト） | センサがオフラインの場合、統計を計算します。

イベントのリセット

特定のイベントによって計算を強制的にリセットします。

手動

指定されたイベントが発生したときに計算をリセットするかどうかを指定します。このパラメータは、[Reset] ボタンを自動的に参照します。[Reset] ボタンは、関数が最初に作成されたときにスプレッドシートに挿入されます。

注意: プロパティシート内でこのチェックボックスを手動で切り替えると、[Reset] ボタンへの参照は削除されます。[Reset] ボタンを使用するには、このパラメータが [Reset] ボタンを含むセルを参照している必要があります。

0 =オフ（デフォルト） | 指定されたイベントが発生しても、計算をリセットしません。
1 =オン | 指定されたイベントが発生すると、計算をリセットします。

オンライン

センサがオンラインにされたときに計算をリセットするかどうかを指定します。

0 =オフ | センサがオンラインにされても、計算をリセットしません。
1 =オン(デフォルト) | センサがオンラインにされると、計算をリセットします。

ジョブを開く

ジョブがロードされた場合に計算をリセットするかどうかを指定します。

0 =オフ | ジョブがロードされても、計算をリセットしません。
1 =オン(デフォルト) | ジョブがロードされると、計算をリセットします。

ComputeStats 関数の結果出力

戻り値 | 計算された統計を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | ComputeStats 関数 が初めてセルに挿入されると、スプレッドシート内に結果テーブルと [Reset] ボタンが自動的に作成されます。[Reset] ボタンが押されると、すべてのカウンタはゼロにリセットされます。

ComputeStats 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

最新値 | GetLatest(統計) | 最新の値。
最小 | GetMin(統計) | 統計の計算に使用された最も小さな値。
最大 | GetMax(統計) | 統計の計算に使用された最も大きな値。
平均 | GetMean(統計) | 値の平均。
合計 | GetSum(統計) | 値の合計。
標準偏差 | GetSDev(統計) | 値の標準偏差。
平方偏差 | GetVariance(統計) | 値の平方偏差。
範囲 | GetRange(統計) | 最小値と最大値の間の範囲。
エラー数 | GetErrorCount(統計) | 参照値に対するエラーの総数。
サンプル数 | GetNumSamples(統計) | 計算に使用されたサンプルの総数。

関連項目

Count

クロックドデータ関数について


三角関数

数値演算関数

In-Sight 関数リファレンス

関数 | 説明
ACos(値) | 値のアークコサインを返します（単位は度）。 注意: -1 <= 値 <= 1
ASin(値) | 値のアークサインを返します（単位は度）。 注意: -1 <= 値 <= 1
ATan(値) | 値のアークタンジェントを返します（単位は度、±90）。
ATan2(DY,DX) | ベクトル (x,y) = (DY, DX) のアークタンジェントを返します (単位は度、± 180)。
Cos(角度) | 角度（単位は度）のコサインを返します。
Degrees(ラジアン) | ラジアン単位で指定された値を度単位の角度に変換します。
Pi | Pi ≈ 3.142 の値を返します。
Radians(度) | 度単位で指定された値をラジアン単位の角度に変換します。
Sin(角度) | 角度（単位は度）のサインを返します。
Tan(角度) | 角度（単位は度）のタンジェントを返します。

関連項目

数値演算関数について

[関数の挿入] ダイアログ


文字列操作関数

In-Sight 関数リファレンス

文字列操作関数は、スプレッドシートインタフェースへの表示用および In-Sight センサとリモート装置間の通信用の英数字データ文字列をフォーマットします。文字列操作関数は、次の 2 つのカテゴリに分類されます。

  • バイナリ関数
  • ストリング関数

注意: 文字列操作関数では、2 バイト文字はサポートされていません。


バイナリ関数

バイナリ関数 |
文字列操作関数 | In-Sight 関数リファレンス

バイナリ関数は、TCPDevice 関数で使用するためにバイナリデータパケットをフォーマットします。これらの関数を使用して、Modbus TCP パケットを Modbus TCP サーバデバイスに送信できます。これらの関数を使用して Modbus パケットを送信している場合は、TCPDevice 関数の [パケットタイプ] パラメータを Modbus に設定する必要があります。

関数

説明
BGetDouble(バイナリ, オフセット, [バイト/ワードオーダ])

構造体中の倍精度浮動小数点の値を単精度の結果として返します。

バイナリ | BStringf 関数、TCPDevice 関数または QueryDevice 関数によって (それぞれ) 返される、 [image] 構造体 [image] または [image] 構造体を参照します。
オフセット | バイト単位でオフセットを指定します。
バイト/ワードオーダ | 関数によって読み込まれるワードおよびバイトのバイト順序を指定します。 0 = ビッグエンディアン (デフォルト) 1 = リトルエンディアン 2 = ビッグエンディアン (16 ビットワード変換使用) 3 = リトルエンディアン (16 ビットワード変換使用)

BGetFloat(バイナリ, オフセット, [バイト/ワードオーダ])

構造体中の浮動小数点の値を返します。

バイナリ | BStringf 関数、TCPDevice 関数または QueryDevice 関数によって (それぞれ) 返される、 [image] 構造体、 [image] 構造体または [image] 構造体を参照します。
オフセット | バイト単位でオフセットを指定します。
バイト/ワードオーダ | 関数によって読み込まれるワードおよびバイトのバイト順序を指定します。 0 = ビッグエンディアン (デフォルト) 1 = リトルエンディアン 2 = ビッグエンディアン (16 ビットワード変換使用) 3 = リトルエンディアン (16 ビットワード変換使用)

BGetInt(バイナリ, オフセット, バイト数, [符号], [バイト/ワードオーダ])

構造体中の整数値を返します。

バイナリ | BStringf 関数、TCPDevice 関数または QueryDevice 関数によって (それぞれ) 返される、 [image] 構造体、 [image] 構造体または [image] 構造体を参照します。
オフセット | バイト単位でオフセットを指定します。
バイト数 | 1、2、または 4
符号 | 0 = 符号付き (デフォルト) 1 = 符号なし
バイト/ワードオーダ | 関数によって読み込まれるワードおよびバイトのバイト順序を指定します。 0 = ビッグエンディアン (デフォルト) 1 = リトルエンディアン 2 = ビッグエンディアン (16 ビットワード変換使用) 3 = リトルエンディアン (16 ビットワード変換使用)

BGetString(バイナリ, オフセット, バイト数, [バイト変換])

構造体中の文字列を返します。

バイナリ | BStringf 関数、TCPDevice 関数または QueryDevice 関数によって (それぞれ) 返される、 [image] 構造体、 [image] 構造体または [image] 構造体を参照します。
オフセット | バイト単位でオフセットを指定します。
バイト数 | 抽出される長さ
バイト変換 | 関数によって書き込まれるバイト順序を指定します。Modbus 実装のため、Modbus を介して PLC に読み取りまたは書き込みをする場合、文字列の隣り合うバイトを交換する必要があります。 注意: この関数で使用するバイト交換は、ビッグエンディアンまたはリトルエンディアンのバイト交換とは関連しません。例えば、有効になっている場合は、[バイナリ] パラメータからの入力文字列が「BADC\0」(「0」は Null 値を終了する文字列) のとき、出力結果は「ABCD\0」となります。 0 = 文字列のバイトを交換しない (デフォルト) 1 = 文字列のバイトを交換

BLen(バイナリ)

バイナリ構造体の長さを返します。バイナリは、TCPDevice 関数または QueryDevice 関数によって (それぞれ) 返される、 [image] 構造体または [image] 構造体を参照する必要があります。

BStringf(バイト/ワードオーダ, フォーマット文字列, 値1, [値2, ...])

指定したフォーマットを使用して作成されたバイナリ文字列を含む [image] 構造体を返します。

バイト/ワードオーダ

関数によって書き込まれるワードおよびバイトのバイト順序を指定します。

注意:　[バイト/ワードオーダ] パラメータは数字タイプのみに適用され、バイナリ構造体または文字列タイプのエンコーディングには影響しません。

0 = ビッグエンディアン (デフォルト)

1 = リトルエンディアン

2 = ビッグエンディアン (16 ビットワード変換使用)

3 = リトルエンディアン (16 ビットワード変換使用)

フォーマット文字列

使用できる書式文字列パラメータは次のとおりです。

パラメータ | 説明
%c | 1 バイト
%h | 2 バイト
%d | 4 バイト
%f | 4 バイト浮動小数点数
%e | 8 バイト浮動小数点数
%b | バイナリ構造体
%s | 文字列
%~s | 文字列はバイト変換される

注意:

  • フォーマット文字列のパラメータには大文字と小文字の区別があります。
  • フォーマット文字列は引用符 (") で囲む必要があります。

値

バイナリとしてエンコードする値の可変長リストを指定します (値 1, 値 2, ...)。値は、フォーマット文字列パラメータによって指定されたタイプに変換されます。

バイナリ関数 例

この例では、SYSTEM0、SYSTEM1 と命名された 2 つの In-Sight システムを使用します。SYSTEM0 は Modbus クライアントで、SYSTEM1 は Modbus サーバです。

SYSTEM0 のスプレッドシートには次の関数が含まれています。

A2=TCPDevice("SYSTEM1",502,0,4,1000)

B2=QueryDevice($A$0,A2,0,0,0,0,0,6,0,3,20,4,0,1)

A3=BLen(B2)

A4=BGetInt(B2,9,2)

A5=BGetString(B2,10,1)

SYSTEM1 には次の値が含まれています。

F4=65

SYSTEM0 のスプレッドシートが実行されるときに、セル A2 の TCPDevice 関数は、SYSTEM1 と TCP/IP Modbus 接続を確立します。セル B2 の QueryDevice 関数は、SYSTEM1 に Modbus Read Multiple Registers コマンドを送り、セル F4 に含まれているデータが SYSTEM0 によって (バイナリフォーマットで) インポートされることを指定します。SYSTEM0 のスプレッドシートに返す結果は、次のようになります。

A3=11 (SYSTEM1 の Modbus サーバからインポートされたバイナリデータのパケット長)。

A4=65 (SYSTEM1 のセル F4 に含まれた整数値)。

A5="A" (文字列として変換されたセル F4 の整数値)。

注意:　この例では、TCPDevice 関数は、Modbus サーバである SYSTEM1 には使用しません。これは、In-Sight が Modbus コマンドを受信すると自動的に応答するためです。

前述の例で、SYSTEM0 によって送受信された実際のデータパケットは次のようになります。

コマンドパケット |  | 応答パケット
00 |  | 00 |
00 |  | 00 |
00 |  | 00 |
00 |  | 00 |
00 |  | 00 |
06 | 長さ (6 バイト) | 05 | 長さ (5 バイト)
00 |  | 00 |
03 | 関数 (Read Multiple Registers) | 03 | 関数 (Read Multiple Registers)
20 04 | Ref# (セルアドレス = F4) | 02 | バイト数 (2 バイト)
00 01 | ワード数 (0001) | 00 65 | 結果値 (00 65 十進法。Modbus にはビッグエンディアンを使用)

関連項目

文字列操作関数について

ストリング関数について

TCP/IP Modbus による通信

TCPDevice 関数

QueryDevice 関数


ストリング関数

文字列操作関数

In-Sight 関数リファレンス

ストリング関数は、表示用および In-Sight センサとリモート装置間の通信用の英数字データをフォーマットします。

注意:

  • インデックスパラメータは 0 を基準にしています。つまり、文字列の 1 番目の文字は 0 のインデックスを持ち、2 番目の文字は 1 のインデックスを持ちます。
  • セルの幅よりも長い文字列は、切り詰められる場合があります。列の幅を広げたり、スペースを追加すると、すべての文字列が表示されます。

関数

説明

Code(文字列)

文字列の最初の文字の ASCII コードに対応する整数値を返します。

Closed Code 関数の例

セル A2 に英数字文字列 "ABC123" が含まれている場合、関数 Code(A2) は "A" に対応する ASCII コードである 65.000 を返します。

Concatenate(引数1, [引数2, 引数3, ...])

複数の英数字文字列を連結して返します。数字のパラメータは自動的にテキストに変換されます。

Closed Concatenate 関数の例

セル A2 に英数字文字列 "A1B1" が含まれ、セル A3 に英数字文字列 "C1D2" が含まれ、セル A4 に浮動小数点値 4.556 が含まれている場合、関数 Concatenate(A2,A3,A4) は "A1B1C1D24.556" を返します。

Exact(文字列1, 文字列2)

文字列1 と文字列2 がまったく同じであるとき 1 を返し、それ以外の場合は 0 を返します。

注意: Exact は大文字と小文字を区別します。

Closed Exact 関数の例

セル A2 に文字列 "ABC123" が含まれ、セル A3 に文字列 "ABC1234" が含まれている場合、Exact(A2,A3) は 0.000 を返します。

セル A2 に文字列 "VISION" が含まれ、セル A3 に文字列 "VISION" が含まれている場合、Exact(A2,A3) は 1.000 を返します。

Find(検索文字列, ソース文字列, [開始位置])

文字列 Text2 に含まれている文字列 Text1 のインデックス位置を返します。Text1 のサーチは Text2 のオプションで指定された開始文字位置から開始します。

注意: Find は大文字と小文字を区別します。

Closed Find 関数の例

セル A2 に文字列 "123" が含まれ、セル A3 に文字列 "ABC123" が含まれている場合、Find(A2,A3,2) は (ゼロから始まる) インデックス値 3.000 を返します。

関数 Find(A2,A3,4) は -1.000 を返します。これは、サーチをインデックス 4 から開始すると、文字列 "123" の全体が文字列 "ABC123" から検出できないためです。

FormatString(フォーマット文字列, [文字列または値, ...])

"C" ライブラリの標準フォーマット文字列で構成されたテキスト文字列を返します。FormatString 関数は、ほとんどのフォーマット文字列パラメータをサポートしています。In-Sight Explorer でこの関数を自動設定するには、[FormatString] ダイアログを使用します。

注意: 手動での FormatString 関数の編集は推奨されていません。

Left(文字列, 文字数)

文字列の左端から、指定された文字数だけ、文字列を返します。

Closed Left 関数の例

セル A2 に英数字文字列 "ABC123" が含まれている場合、関数 Left(A2,2) は文字列 "AB" を返します。

Len(文字列)

文字列の文字（バイト）数を返します。

Closed Len 関数の例

セル A2 に英数字文字列 "ABC123" が含まれている場合、関数 Len(A2) は整数値 6.000 を返します。

Lower(文字列)

小文字に変換した文字列を返します。

Closed Lower 関数の例

セル A2 に英数字文字列 "ABC123" が含まれている場合、関数 Lower(A2) は文字列 "abc123" を返します。

Mid(文字列, 開始位置, 文字数)

英数字文字列のインデックスされた開始位置から開始し、文字数で指定された分だけの文字列を返します。

Closed Mid 関数の例

セル A2 に英数字文字列 "ABC123" が含まれている場合、関数 Mid(A2,2,2) は文字列 "C1" を返します。

置換(ソース文字列, 開始位置, 文字数, 新しい文字列)

インデックスされた開始位置で新しい文字列に置き換えたソース文字列を返します。

Closed 置換 関数の例

セル A2 に英数字文字列 "ABC123" が含まれ、セル A3 に文字列 "123" が含まれている場合、置換(A2,0,3,A3) は文字列 "123123" を返します。

Right(文字列, 文字数)

文字列の右端から、指定された文字数だけ、文字列を返します。

Closed Right 関数の例

セル A2 に "ABC123" が含まれている場合、Right(A2,2) は文字列 "23" を返します。

Strcspn(ソース文字列, 文字リスト)

文字リストに含まれているソース文字列の最初の文字のインデックスを返します。ソース文字列のどの文字も文字リストに含まれていない場合は、文字列の長さを返します。

注意: Strcspn は大文字と小文字を区別します。

Closed Strcspn 関数の例

セル A2 に文字列 "BLUE" が含まれ、セル A3 に文字 "RED" が含まれている場合、Strcspn(A2,A3) はインデックス値 3.000 を返します。これは、文字リストの最初の文字になっている「E」がソース文字列に含まれているためです。

Stringf(フォーマット文字列, [テキスト/値, ...])

"C" ライブラリの標準フォーマット文字列で構成されたテキスト文字列を返します。

ヒント:FormatString 関数は、ほとんどのフォーマット文字列パラメータをサポートしています。In-Sight Explorer でパラメータを自動設定するには、[FormatString] ダイアログを使用します。

注意:

  • フォーマット文字列は引用符（"）で囲む必要があります。
  • フォーマット文字列のパラメータには大文字と小文字の区別があります。
  • Stringf 関数では、フォーマット制御文字列が続くことを示すために "\" マークが使用されます。後ろに制御文字（"n"、"r"、または "t"）のない \ マークは無視されます。1 つの \ マークを表示するには、2 つの \ マークを入力する必要があります（例: Stringf("C:\\InSight2\\") = "C:\InSight2\")。

使用できる書式文字列パラメータは次のとおりです。

%c

整数値に対応する ASCII 文字列を返します。英数字テキスト文字列が提供された場合は、最初の文字を返します。

Closed Stringf %c の例

セル A2 に整数値 65.000 が含まれている場合、Stringf("%c",A2) は ASCII コードの 65 に対応する "A" の文字を返します。関数 Stringf("Value = %c",A2) は文字列 "Value = A" を返します。

セル A2 に文字列 "123ABC" が含まれている場合、Stringf("%c",A2) は文字 "1" を返します。

%d

整数値を含んでいる文字列を返します。

Closed Stringf %d の例

セル A2 に浮動小数点値 123.456 が含まれている場合、Stringf("%d",A2) は数値文字列 "123" を返します。関数 Stringf("Value = %d",A2) は英数字文字列 "Value = 123" を返します。

セル A2 に文字列 "ABC123" が含まれている場合、Stringf("%d",A2) は数値文字列 "65" (文字 "A" の ASCII コード) を返します。

%e

科学的表記法で表された値を含んでいる文字列を返します。小数点第何位までにするかは % と e パラメータの間に小数点（.）付きの数字を挿入することによって指定できます。

Closed Stringf %e の例

セル A2 に浮動小数点値 123.456 が含まれている場合、Stringf("%e",A2) は数値文字列 "1.234560e+02" を返します。関数 Stringf("%.1e",A2) は数値文字列 "1.2e+02" を返します。これは、小数点以下第 1 位までを指定したためです。

%f

浮動小数点値を含んでいる文字列を返します。小数点第何位までにするかは % と f パラメータの間に小数点（.）付きの数字を挿入することによって指定できます。

Closed Stringf %f の例

セル A2 に浮動小数点値 123.456 が含まれている場合、Stringf("%f",A2) は数値文字列 "123.456001" を返します。関数 Stringf("%.1f",A2) は数値文字列 "123.5" を返します。これは、小数点以下第 1 位までを指定したためです。

%H

In-Sight センサの特定のホスト名を含む文字列を返します。

Closed Stringf %H の例

ホスト名が「is3k010203」の In-Sight センサのセルに関数 Stringf("Host Name: %H") が含まれている場合、この関数は英数字文字列 "Host Name: is3k010203" を返します。

%I

In-Sight センサの特定の IP アドレスを含む文字列を返します。

Closed Stringf %I の例

IP アドレスが「198.232.26.1」である In-Sight センサのセルに関数 Stringf("IP Address: %I") が含まれている場合、この関数は英数字文字列 "IP Address: 198.232.26.1" を返します。

%M

In-Sight センサの特定の MAC アドレスを含む文字列を返します。

Closed Stringf %M の例

MAC アドレスが「00-d0-24-01-02-03」である In-Sight センサのセルに関数 Stringf("MAC Address: %M") が含まれている場合、この関数は英数字文字列 "MAC Address: 00:d0:24:01:02:03" を返します。

%N

In-Sight センサの特定のシリアル番号を含む文字列を返します。

Closed Stringf %N の例

シリアル番号が「Z01020304」である In-Sight センサのセルに関数 Stringf("Serial Number: %N") が含まれている場合、この関数は英数字文字列 "Serial Number: Z01020304" を返します。

%o

整数の 8 進値を含んでいる文字列、または英数字文字列の最初の文字を返します。

Closed Stringf %o の例

セル A2 に整数値 123.000 が含まれている場合、Stringf("%o",A2) は数値文字列 "173" (整数 123 の 8 進値) を返します。セル A2 に文字列 "ABC123" が含まれている場合、Stringf("%o",A2) は数値文字列 "101" (文字 "A" の 8 進値) を返します。

%s

英数文字が追記された文字列を返します。

Closed Stringf %s の例

セル A2 に英数字文字列 "ABC" が含まれている場合、関数 Stringf("%s123",A2) は英数字文字列 "ABC123" を返します。セル A2 に数値文字列 "123" が含まれている場合、Stringf("%s.450",A2) は数値文字列 "123.450" を返します。

%T

In-Sight センサの特定のモデルタイプを含む文字列を返します。

Closed Stringf %T の例

In-Sight 5400 センサのセルに関数 Stringf("Model Type: %T") が含まれている場合、この関数は英数字文字列 "Model Type: 5400" を返します。

%u

符号なし整数値を含む文字列を返します。

Closed Stringf %u の例

セル A2 に浮動小数点値 123.456 が含まれている場合、Stringf("%u",A2) は数値文字列 "123" を返します。関数 Stringf("Value = %u",A2) は英数字文字列 "Value = 123" を返します。

セル A2 に文字列 "ABC123" が含まれている場合、Stringf("%u",A2) は数値文字列 "65" (文字 "A" の ASCII コード) を返します。

%V

In-Sight センサの特定のファームウェアバージョンを含む文字列を返します。

Closed Stringf %V の例

バージョン 3.40.01 のファームウェアが実行されている In-Sight センサのセルに関数 Stringf("Firmware Version: %V") が含まれている場合、この関数は英数字文字列 "Firmware Version: 3.40.01 (475)" を返します。

%x または %X

整数値の 16 進値を含んでいる文字列、または英数字文字列の最初の文字を返します。

Closed Stringf %x の例

セル A2 に整数値 123.000 が含まれている場合、Stringf("%x",A2) は文字列 "7b" (整数 123 の 16 進値) を返します。セル A2 に文字列 "ABC123" が含まれている場合、Stringf("%x",A2) は数値文字列 "41" (文字 "A" の 16 進値) を返します。

次のフォーマット文字列パラメータは、主にテキストをフォーマットする（例えば、関数 WriteSMTP で電子メールメッセージのテキストをフォーマットする）場合に使用されます。

¥x## | 16 進値 ## で指定された ASCII 文字をテキストに挿入します。 Closed Stringf ¥x## の例 セルl A2 に Stringf("\x02123\x1bABC\x03456") が含まれる場合、セルには "<STX>123<ESC>ABC<ETX>456" と表示されます。
¥n | テキストにラインフィードを挿入します。このパラメータは通常 \r（キャリッジリターン）と組み合わせて使用します。
¥r | テキストにキャリッジリターンを挿入します。このパラメータは通常 \n（ラインフィード）と組み合わせて使用します。
¥t | テキストにタブを挿入します。

Strspn(文字列, 文字リスト)

文字リストに含まれていないソース文字列の最初の文字のインデックスを返します。ソース文字列のすべての文字が文字リストに含まれている場合は、ソース文字列の長さを返します。

注意: Strspn は大文字と小文字を区別します。

Closed Strspn 関数の例

セル A2 に文字列 "RED" が含まれ、セル A3 に文字 "GREEN" が含まれている場合、Strspn(A2,A3) は (ゼロから始まる) インデックス値 2.000 を返します。これは、文字リストの最初の文字になっている「D」がソース文字列に含まれていないためです。

Strtol(整数文字列)

英数字文字列の最初の数字 (10 進値、16 進値、および 8 進値) を整数に変換します。16 進値の最初の文字には "0x"、8 進値の最初の文字には "0" を必ずつけてください。

Closed Strtol 関数の例

10 進値:セル A2 にテキスト文字列 "123ABC" が含まれている場合、関数 Strtol(A2) は整数値 123.000 を返します。

16 進値:セル A2 にテキスト文字列 "0x123" が含まれている場合、関数 Strtol(A2) は整数値 291.000 を返します。

"0x12AB" = 4,779.000。これは、"A" および "B" は 16 進値を表す文字であるためです。

"0x12GB" = 18.000。これは、"G" は 16 進値を表す文字ではないためです。

8 進値:セル A2 にテキスト文字列 "0123ABC" が含まれている場合、関数 Strtol(A2) は整数値 83.000 を返します。

Substitute(ソース文字列, 置換される文字列, 新しい文字列, [対象番号])

ソース文字列中で置換される文字列が検出されるたびに、新しい文字列に置き換えて作成したテキスト文字列を返します。オプションの対象番号インデックスが指定されている場合は、その対象番号で指定される文字列のみが置き換えられます。

Closed Substitute 関数の例

セル A2 にテキスト文字列 "ABC123123" が含まれ、セル A3 に文字列 "123" が含まれ、セル A4 に文字列 "abc" が含まれている場合、Substitute(A2,A3,A4,1) はソース文字列 "123" の 2 番目の対象番号を置き換え、文字列 "ABC123abc" を返します。

Token(文字列, 区切り文字リスト, 対象番号)

区切り文字で区切られた文字列の、指定された対象番号インデックス（オカレンス）に配置されている文字列を返します。関数内の区切り文字をは引用符（"）で囲む必要があります。

Closed Token 関数の例

セル A2 にカンマで区切られた文字列 "A,B,C,1,2,3" が含まれている場合、Token(A2,",",2) は "C" を返します。これは、C が文字列内のインデックス 2 にあるためです。

Trim(文字列)

先頭または末尾にある余分な空白を取り除き、単語間にスペース（もしあれば）を 1 つ残した文字列を返します。制御文字（キャリッジリターン、ラインフィードなど）もすべて取り除かれます。

Closed Trim 関数の例

セル A2 に文字列 "ABC 123" が含まれている場合、Trim(A2) は文字列 "ABC 123" を返します。

Upper(文字列)

大文字に変換した文字列を返します。

Closed Upper 関数の例

セル A2 に英数字文字列 "abc123" が含まれている場合、関数 Upper(A2) は文字列 "ABC123" を返します。

Value(数値文字列)

数値文字列の浮動小数点数値を返します。後続の数値以外の文字は無視されます。

Closed Value 関数の例

セル A2 に数値文字列 "123.4" が含まれている場合、関数 Value(A2) は浮動小数点数値 123.400 を返します。

関連項目

文字列操作関数について

バイナリ関数

[関数の挿入] ダイアログ


座標補正関数

In-Sight 関数リファレンス

座標補正関数は、特徴の位置および距離を画像、フィクスチャ、およびワールド座標系の間で変換します。

  • キャリブレーション関数: ピクセル座標系と 2 次元ワールド座標系間で行う変換を解決します。
  • フィクスチャ関数: フィクスチャ座標系とピクセル座標系間で行う変換を解決します。


キャリブレーション関数

座標補正関数

In-Sight 関数リファレンス

キャリブレーションとは、ピクセルの計測値を、わかり易い実世界値に変換するプロセスです。このプロセスでは、2 次元 (2D) 変換によって、画像のピクセル座標の点をワールド座標へ数学的にマッピングします。画像のキャリブレーションが完了すると、ほかのビジョンツールは、そのキャリブレーションを入力として参照することで、結果をキャリブレーションされた単位 (実世界値) で報告できるようになります。

In-Sight Explorer では、3 つの異なるキャリブレーション方法、キャリブレーションを画像に関連付ける手段、および画像座標とワールド座標間で変換を行う 10 個の座標補正関数を提供しています。

  • Calibrate 関数:　ユーザ指定の 4 つの点を使用して、ピクセル座標系とワールド座標系間で変換を行うための 2D 変換を作成します。線形および非線形歪みを補正します。
  • CalibrateAdvanced 関数:　ユーザ指定の 1 ～ 32 個の点を使用して、ピクセル座標系とワールド座標系間で変換を行うための 2D 変換を作成します。線形および非線形歪みを補正し、Calibrate 関数よりも高精度です (5 つ以上の点を使用)。
  • CalibrateGrid 関数:　ユーザ設定可能なキャリブレーショングリッドパターンを使用して、ピクセル座標系とワールド座標系間で変換を行うための 2D 変換を作成します。線形、非線形、およびレンズ歪みを補正し、最も高い精度を提供します。
注意:
  • Calibrate 関数、CalibrateAdvanced 関数、または CalibrateGrid 関数を使用する場合、物理セットアップと光学セットアップ (レンズ、センサ、およびセンサと取り込まれるシーンの間の物理的関係) はキャリブレーション操作とランタイム操作の両方で同一にする必要があります。このうちのいずれかが変更された場合、システムを再キャリブレーションする必要があります。したがって、キャリブレートとランタイム画像の処理の両方で、同じセンサとレンズを使用することを推奨します。センサとレンズでは、元のセットアップおよびキャリブレーション設定を変更しないようにする必要があります。例えば、画像取り込みフォーマットの変更 (解像度の変更による) またはセンサの移動を行うと、ピクセルをワールド座標にマッピングする 2D 変換が不正になります。
  • In-Sight 5604 ラインスキャンビジョンシステムは、ピクセル座標でのみ動作します。In-Sight 5604 で実行されているジョブに Calibrate 関数が追加されていると、不正な結果がもたらされます。
  • CalibrateImage 関数:　 構造体を [image] 構造体に関連付けます。これは、ほかのビジョンツールから参照することができます。
  • ExtractCalibration 関数:　TransformImage 関数によって返される [image] 構造体に基づいて、ワールド座標への 2D 変換を作成します。
  • TransBlobsToWorld 関数:　 構造体のピクセル座標をワールド座標に変換します。
  • TransEdgesToWorld 関数:　 構造体のピクセル座標をワールド座標に変換します。
  • TransFixtureToWorld 関数:　フィクスチャのピクセル座標をワールド座標に変換します。
  • TransformImage 関数:　CalibrateGrid 関数に存在する歪みを補正する [image] 構造体を生成します。
  • TransInspEdgeDefectToWorld 関数:　InspectEdgeForDefect [image] データ構造体のピクセル座標をワールド座標に変換します。
  • TransInspEdgeWidthToWorld 関数:　InspectEdgeWidth [image] データ構造体のピクセル座標をワールド座標に変換します。
  • TransOCRMaxToWorld 関数:　 データ構造体のピクセル座標をワールド座標に変換します。
  • TransPatternsToWorld 関数:　 構造体のピクセル座標をワールド座標に変換します。
  • TransPixelToWorld 関数:　ピクセル座標からワールド座標に点を変換します。
  • TransSurfaceFlawToWorld 関数:　 構造体のピクセル座標をワールド座標に変換します。
  • TransWorldToPixel 関数:　ワールド座標をピクセル座標に変換します。

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。


Calibrate 関数

Calibrate 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

Calibrate 関数は、ユーザ指定の 4 つの点を使用して、ピクセル座標系とワールド座標系間で変換を行うための 2D 変換を作成します。このプロセスで、Calibrate 関数は線形および非線形歪みを補正します。

Calibrate 関数 (

ピクセル点 0.行 ,

ピクセル点 0.列 ,

ワールド点 0.X ,

ワールド点 0.Y ,

ピクセル点 1.行 ,

ピクセル点 1.列 ,

ワールド点 1.X ,

ワールド点 1.Y ,

ピクセル点 2.行 ,

ピクセル点 2.列 ,

ワールド点 2.X ,

ワールド点 2.Y ,

ピクセル点 3.行 ,

ピクセル点 3.列 ,

ワールド点 3.X ,

ワールド点 3.Y ,

表示

)

Calibrate 関数について

Calibrate 関数では、2 つの異なる座標系 (取り込まれる対象物のワールド物理座標系と対象物のピクセル座標系) で表されるユーザ指定の点が必要です。そのため、Calibrate 関数ではビジョンツールを使用して画像から特徴を抽出する必要があります。これらの特徴の位置は、ワールド座標とピクセル座標の両方で入力されます。

キャリブレーション段階では、ワールド座標での位置が特定されている特徴を含む画像が取り込まれます。ExtractBlobs 関数、FindPatterns 関数、または FindLine 関数などのビジョンツールを使用すると、画像内の特徴が検出されてピクセル座標で報告されます。

注意: ピクセル座標の原点は、常に左上のピクセルの左上隅になります。

次に、ピクセル座標とワールド座標の両方を、ピクセル点およびワールド点パラメータとして入力します。ピクセル点の座標には、ビジョンツールの行と列の値へのセル参照が使用されます。一方、ワールド点のワールド座標には、座標を表す数値を入力します。その後、ビジョンツールはピクセル座標とワールド座標間の 2D 変換を計算し、この変換を表す [image] 構造体を生成します。

また、Calibrate 関数では次の変換が可能です。

  • 2 次元での変換
  • 3 つの軸についての回転
  • 2 次元でのスケール
  • 遠近歪み
  • 平行四辺形化またはスキュー
注意:
  • Calibrate 関数、CalibrateAdvanced 関数、または CalibrateGrid 関数を使用する場合、物理セットアップと光学セットアップ (レンズ、センサ、およびセンサと取り込まれるシーンの間の物理的関係) はキャリブレーション操作とランタイム操作の両方で同一にする必要があります。このうちのいずれかが変更された場合、システムを再キャリブレーションする必要があります。したがって、キャリブレートとランタイム画像の処理の両方で、同じセンサとレンズを使用することを推奨します。センサとレンズでは、元のセットアップおよびキャリブレーション設定を変更しないようにする必要があります。例えば、画像取り込みフォーマットの変更 (解像度の変更による) またはセンサの移動を行うと、ピクセルをワールド座標にマッピングする 2D 変換が不正になります。
  • In-Sight 5604 ラインスキャンビジョンシステムは、ピクセル座標でのみ動作します。In-Sight 5604 で実行されているジョブに Calibrate 関数が追加されていると、不正な結果がもたらされます。

Calibrate 関数の入力パラメータ

ピクセル点 0 ～ 3

ピクセル座標からワールド座標変換におけるピクセル座標を指定します。

行 | 画像の行座標
列 | 画像の列座標

ワールド点 0 ～ 3

ピクセル座標からワールド座標変換におけるワールド座標を指定します。

X | ワールド値での X 軸座標
Y | CalibrateAdvanced 関数の結果出力

表示

画像上の Calibrate グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 (デフォルト) | Calibrate 関数を含むセルがスプレッドシート上でハイライトされている場合を除き、4 つのキャリブレーションポイントは表示されません。
2 = 入力のグラフィックスのみ | 4 つのキャリブレーションポイントが常に表示されます。

Calibrate 関数の結果出力

戻り値

2 つの座標系間の変換を定義する係数を含む [image] データ構造体

関連項目

CalibrateAdvanced 関数

CalibrateGrid 関数

CalibrateImage 関数

座標補正関数について

キャリブレーション関数について

プロパティシートの使用方法


CalibrateAdvanced 関数

CalibrateAdvanced 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

CalibrateAdvanced 関数は、ユーザ指定の 1 ～ 32 個の点を使用して、ピクセル座標系とワールド座標系間で変換を行うための 2D 変換を作成します。このプロセスで、CalibrateAdvanced 関数は線形および非線形歪みを補正します。また、5 つ以上のポイントペア (点の組み合わせ) を使用した場合は、Calibrate 関数よりも高い精度を提供します。

CalibrateAdvanced 関数 (

ピクセル点 0.行 ,

ピクセル点 0.列 ,

ワールド点 0.X ,

ワールド点 0.Y ,

...,

ピクセル点 31.行 ,

ピクセル点 31.列 ,

ワールド点 31.X ,

ワールド点 31.Y

)

CalibrateAdvanced 関数について

Calibrate 関数と同様に、CalibrateAdvanced 関数では、2 つの異なる座標系 (取り込まれる対象物のワールド物理座標系と対象物のピクセル座標系) で表されるユーザ指定の点が必要です。

また、Calibrate 関数と同じように、CalibrateAdvanced 関数では、ビジョンツールを使用して画像から特徴を抽出する必要があります。2 つの関数の違いは、位置として使用できる特徴の数、および特徴の位置をワールド座標とピクセル座標の両方で入力する際の方法です。CalibrateAdvanced 関数では、ポイントペアと呼ばれる、1 ～ 32 組のピクセル座標とワールド座標の組み合わせを使用できます。一方、Calibrate 関数では 4 組のポイントペアが必要です。

CalibrateAdvanced 関数を使用すると、キャリブレーション段階で、ワールド座標での位置がわかっている 1 ～ 32 個の異なる特徴を含む画像が取り込まれます。ExtractBlobs 関数、FindPatterns 関数、または FindLine 関数などのビジョンツールを使用すると、画像内の特徴が検出されてピクセル座標で報告されます。

注意: ピクセル座標の原点は、常に左上のピクセルの左上隅になります。

次に、ピクセル座標とワールド座標の両方をパラメータとして入力します。ピクセル座標には、ビジョンツールの行と列の値へのセル参照を使用できます。一方、ワールド座標には、座標を表す数値を入力できます。その後、ビジョンツールはワールド座標とピクセル座標間の 2D 変換を計算し、この変換を表す [image] 構造体を生成します。

注意
  • CalibrateAdvanced 関数にはプロパティシートはありません。この関数は、ポイントペアの数で表される 1 ～ 32 個の変数パラメータに基づいています。例えば、スプレッドシートに挿入した CalibrateAdvanced 関数が、5 つの異なるブロブを報告する ExtractBlobs 関数を使用してシステムをキャリブレーションしていた場合、ピクセル座標は ExtractBlobs ツールで報告された行と列の値へのセル参照として表されます。その後、ワールド座標は特定の実世界値に従って設定されます。この結果、式は次のようになります。CalibrateAdvanced($D$11,$D$12,0,0,$E$11,$E$12,2,0,$F$11,$F$12,2,2,$G$11,$G$12,0,2,$H$11,$H$12,1,2)
  • 1 つのセルに指定できる最大の文字列長は 255 文字です。255 を超える文字を使用して変数パラメータを指定すると、エラーメッセージが表示されます。変数パラメータを指定するために使用する文字列が 255 文字の制限を超える場合は、セル範囲を使用します。X 値と Y 値をセルに直接入力することで、実世界の座標をセル範囲に含めることができます。例えば、セル範囲を使用して 32 個のポイントペアを指定する場合は、次の数式を使用します。CalibrateAdvanced(C11:F42)

CalibrateAdvanced 関数では次の変換が可能です。

  • 2 次元での変換 (1 つ以上のポイントペアを使用)
  • 3 つの軸についての回転 (4 つ以上のポイントペアを使用)
  • 2 次元でのスケール (2 つ以上のポイントペアを使用)
  • 遠近歪み (4 つ以上のポイントペアを使用)
  • 平行四辺形化またはスキュー (4 つ以上のポイントペアを使用)
注意:
  • Calibrate 関数、CalibrateAdvanced 関数、または CalibrateGrid 関数を使用する場合、物理セットアップと光学セットアップ (レンズ、センサ、およびセンサと取り込まれるシーンの間の物理的関係) はキャリブレーション操作とランタイム操作の両方で同一にする必要があります。このうちのいずれかが変更された場合、システムを再キャリブレーションする必要があります。したがって、キャリブレートとランタイム画像の処理の両方で、同じセンサとレンズを使用することを推奨します。センサとレンズでは、元のセットアップおよびキャリブレーション設定を変更しないようにする必要があります。例えば、画像取り込みフォーマットの変更 (解像度の変更による) またはセンサの移動を行うと、ピクセルをワールド座標にマッピングする 2D 変換が不正になります。
  • In-Sight 5604 ラインスキャンビジョンシステムは、ピクセル座標でのみ動作します。In-Sight 5604 で実行されているジョブに Calibrate 関数が追加されていると、不正な結果がもたらされます。

CalibrateAdvanced 関数の入力パラメータ

ピクセル点 0 ～ 31

ピクセル座標からワールド座標変換におけるピクセル座標を指定します。

行 | 画像の行座標
列 | 画像の列座標

ワールド点 0 ～ 31

ピクセル座標からワールド座標変換におけるワールド座標を指定します。

X | ワールド値での X 軸座標
Y | ワールド値での Y 軸座標

CalibrateAdvanced 関数の結果出力

戻り値

2 つの座標系間の変換を定義する係数を含む [image] データ構造体

関連項目

Calibrate 関数

CalibrateGrid 関数

CalibrateImage 関数

座標補正関数について

キャリブレーション関数について

プロパティシートの使用方法


CalibrateGrid 関数

CalibrateGrid 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

CalibrateGrid 関数は、ユーザ設定可能なキャリブレーショングリッドパターンを使用して、ピクセル座標系とワールド座標系間で変換を行うための 2D 変換を作成します。また、CalibrateGrid 関数は線形、非線形、およびレンズ歪みを補正します。キャリブレーション関数の中で最も高い精度を実現します。

  • CalibrateGrid 関数について
  • [CalibrateGrid] ダイアログペインとコントロール
  • CalibrateGrid 関数の使用方法
  • CalibrateGrid 関数の結果出力
  • 関連項目

CalibrateGrid 関数について CalibrateGrid 関数

CalibrateGrid 関数は、キャリブレーションドットグリッドパターンで検出されたドットまたはチェッカボードキャリブレーショングリッドパターンの頂点によって識別される点のセット間での 2D 変換を計算します。さらに、CalibrateGrid 関数は、画像の取り込みに使用されているレンズの放射歪みまたは遠近歪みを自動的に補正します。

注意:　歪みのない画像上でビジョンツールを表示または利用する場合は、TransformImage 関数を使用します。

CalibrateGrid 関数を使用するには、関数をスプレッドシートの空白セルに挿入し、[CalibrateGrid] ダイアログの [セットアップ] ペインを表示します。キャリブレーションパターンは、CalibrateGrid の [セットアップ] ペインで設定します。

  • 使用するキャリブレーショングリッドパターンのタイプ
  • キャリブレーショングリッドパターンの間隔
  • 実世界のタイプ、物理測定単位
  • ポーズの数を 1 ～ 30 に設定

次に、[ポーズ] ペインを使用して、キャリブレーションプレートグリッドを印刷し、パターンの画像を取り込みます。画像が取り込まれると、CalibrateGrid 関数は可能な限り多くの特徴点を自動的に識別します。[キャリブレーション] ボタンをクリックすると、CalibrateGrid 関数は直ちにキャリブレーションの計算を開始し、特徴点の間隔に基づいた「キャリブレーション得点」を報告します。結果は、[結果] ペインに表示されます。

キャリブレーションの実行が完了すると、キャリブレーションデータは [CalibrateGrid] セルに格納されます。これによって、CalibrateGrid 関数を 1 つのジョブからコピーして別のジョブに貼り付けること、または [セルのエクスポート]、[セルのインポート] を使用して外部ファイルとしてエクスポートおよびインポートすることができるようになります。さらに、必要であれば、各ジョブに異なるキャリブレーションを設定することや、1 つのジョブに複数のキャリブレーションを設定することもできます。なお、キャリブレーション関数を引数として使用するほかの関数は、CalibrateGrid データ構造体を参照することができます。

注意:
  • Calibrate 関数、CalibrateAdvanced 関数、または CalibrateGrid 関数を使用する場合、物理セットアップと光学セットアップ (レンズ、センサ、およびセンサと取り込まれるシーンの間の物理的関係) はキャリブレーション操作とランタイム操作の両方で同一にする必要があります。このうちのいずれかが変更された場合、システムを再キャリブレーションする必要があります。したがって、キャリブレートとランタイム画像の処理の両方で、同じセンサとレンズを使用することを推奨します。センサとレンズでは、元のセットアップおよびキャリブレーション設定を変更しないようにする必要があります。例えば、画像取り込みフォーマットの変更 (解像度の変更による) またはセンサの移動を行うと、ピクセルをワールド座標にマッピングする 2D 変換が不正になります。
  • In-Sight 5604 ラインスキャンビジョンシステムは、ピクセル座標でのみ動作します。In-Sight 5604 で実行されているジョブに Calibrate 関数が追加されていると、不正な結果がもたらされます。

[CalibrateGrid] ダイアログペインとコントロール

[CalibrateGrid] ダイアログはキャリブレーション用の 3 つのペインで構成されます。

  • [セットアップ] ペイン
  • [ポーズ] ペイン
  • [結果] ペイン

[セットアップ] ペイン

コントロール 説明

グリッドタイプ

キャリブレーションの作成に使用するキャリブレーションパターンのタイプを指定します。[フィデューシャルつきチェッカボード]、[フィデューシャルなしチェッカボード]、[フィデューシャルつきドット]、または [フィデューシャルなしドット]

[フィデューシャルつきチェッカボード]

タイル頂点 (4 つのタイルの隅が接する点) は、特徴の位置の判定に使用されます。センサの表面に対する角度が 45 度以内になっていれば、頂点の位置を正確に検出することができます。また、グリッドの原点および実世界空間におけるグリッドの角度を識別するために、フィデューシャルマーカが提供されています。

注意:　チェッカボードの格子の幅は、少なくとも 15 ピクセルにする必要があります。

[フィデューシャルなしチェッカボード]

タイル頂点 (4 つのタイルの隅が接する点) は、特徴の位置の判定に使用されます。センサの表面に対する角度が 45 度以内になっていれば、頂点の位置を正確に検出することができます。また、原点は [グリッドの軸] を使用して設定する必要があります。

注意:　チェッカボードの格子の幅は、少なくとも 15 ピクセルにする必要があります。

[フィデューシャルつきドット]

最も高い精度を提供 — チェッカボードのパターンと対比することで、視野全体での照明のばらつきおよび画像のノイズによる影響を少なくします。特徴の位置は、ドットの中心で決まります。ドットの位置は、センサの表面に対する角度が 30 度以内になっていれば検出することができます。また、グリッドの原点および実世界空間におけるグリッド角度を識別するため、さらにグリッド間隔を識別および設定するために、フィデューシャルマーカが提供されます。

注意:
  • 画像内にあるドットの推奨されるピクセルの直径は、15 ～ 30 ピクセルの間です。最小値と最大値の範囲は、6 ～ 50 ピクセルです。ピクセルの直径が 50 を超えるドットまたは 6 未満のドットは、ツールによって検出されません。
  • [フィデューシャルつきドット] キャリブレーションパターンでは、キャリブレーションパターンの中に特別な識別コードがあります。このコードは、[グリッド間隔] フィールドおよび [単位] フィールドの値によって決まります。キャリブレーションパターンが画像として取り込まれると、キャリブレーションツールはこのパターンを読み込み、キャリブレーションパターンにあるコードに基づいて自動的に [グリッド間隔] フィールドと [単位] フィールドの値を設定します。実際のグリッドサイズと埋め込まれているコードが一致していない状況で、印刷された同じ [フィデューシャルつきドット] キャリブレーションパターンを使用する必要がある場合は、[グリッドタイプ] フィールドで [フィデューシャルなしドット] を選択し、[グリッド間隔] フィールドと [単位] フィールドに手動で値を入力します。その後、各ポーズに対して、[グリッドの軸] のフィールド ([原点の選択]、[X 軸の選択]、および [Y 軸の選択]) に値を入力します。コード化されたシンボルを自動的に挿入しない [フィデューシャルつきドット] キャリブレーションパターンを作成するには、単純に、[グリッド間隔] フィールドと [単位] フィールドの値を 15 個ある設定済みパターン以外の組み合わせに設定します。特別な識別コードを持つ 15 個の設定済みキャリブレーションパターンは、次のようになっています。
インチ単位 | ミリメートル単位
0.1 | 1
0.125 | 2
0.25 | 5
0.5 | 10
1 | 20
2 | 50
4 | 100
12 |

[フィデューシャルなしドット]

最も高い精度を提供 — チェッカボードのパターンと対比することで、視野全体での照明のばらつきおよび画像のノイズによる影響を少なくします。特徴の位置は、ドットの中心で決まります。ドットの位置は、センサの表面に対する角度が 30 度以内になっていれば検出することができます。また、原点は [グリッドの軸] を使用して設定する必要があります。

注意:　取り込まれた画像内でのドットの直径は、少なくとも 10 ピクセルになっている必要があります (ただし、推奨値は 15)。

[グリッド間隔]:

チェッカボードパターン内にある正方形のサイズ、またはドットグリッドパターン内にあるドットの中心から中心への距離のいずれかを指定します (0.0000001 ～ 9999999、デフォルト = 10.00)。

[単位]:

実世界の測定単位 ([ミクロン]、[ミリメートル] (デフォルト設定)、[センチメートル] または [インチ]) で、キャリブレーションはこの単位に基づいています。

[ポーズ数]:

キャリブレーションの完了に必要なポーズの数を指定します。1 つのキャリブレーションパターンで視野全体をカバーできない場合は、複数のポーズを使用する必要があります。このタイプのキャリブレーションでは、視野をカバーするために、キャリブレーションパターンはさまざまな既知の物理的位置に配置されます。キャリブレーションパターンの各位置は、「ポーズ」と呼ばれます。CalibrateGrid 関数では、1 ～ 30 個のポーズを処理することができます。2 つ以上のポーズを選択した場合は、[ポーズ位置] のオプションが有効になります。これらのオプションは、ポーズ間におけるキャリブレーションパターンの予想される動きを指定するために使用します。

[レンズモデル]:

画像取得に使用されているレンズタイプに基づいて、歪み補正のタイプ ([放射歪み補正] または [遠近歪み補正]、デフォルト = [放射歪み補正]) を指定します。「放射歪み」とは、視野周辺部の倍率と、視野中央部の倍率が異なる光学レンズに生じる歪みのことです。放射歪みは、通常、視野の広いレンズでより深刻となります。例えば、広角レンズは、望遠レンズより深刻な放射歪みが発生する傾向があります。「遠近歪み」とは、取得されるシーンに対し、ビジョンシステムの光学軸が直角でない場合に発生する歪みのことです。

[グリッドの印刷]:

[グリッドの印刷] ボタンをクリックして、選択した [グリッドタイプ] を印刷します。

注意:　[グリッドの印刷] 機能は、高い精度を要求されない測定および検証を行う場合にのみ使用してください。高い精度と確度が要求されるアプリケーションには使用できません (高い精度と確度が要求されるアプリケーションには、正確に作成されたキャリブレーションパターンが必要になります)。

[ポーズ位置] - [自動]:

CalibrateGrid 関数による複数のポーズの設定方法を指定します (このオプションを有効にするには、[ポーズ数] パラメータに 1 よりも大きい値を設定する必要があります)。[自動] (デフォルト設定) を選択すると、キャリブレーションパターンを自由に移動することができます。入力が必要となるワールド座標値はポーズ 1 内にある原点のワールド座標のみになります。ほかのすべてのポーズは、フィデューシャルが検出されている限り、各ポーズの原点を指定しなくてもキャリブレートされます。

[ポーズ位置] - [ユーザ指定]:

CalibrateGrid 関数による複数のポーズの設定方法を指定します (このオプションを有効にするには、[ポーズ数] パラメータに 1 よりも大きい値を設定する必要があります)。[ユーザ指定] が選択されていると、各ポーズに対して原点を手動で入力する必要があります。このオプションは通常、キャリブレーションパターンを移動させるロボットの移動範囲が限られている場合、または各ポーズの原点の正確な位置がわかっている場合に使用します。原点位置がわかっていれば、キャリブレーションの計算をより高速に実行できます。

[ポーズ] ペイン

コントロール 説明

[原点の位置 (ワールド座標系)]:

原点の X 位置と Y 位置をワールド座標で指定します。さらに、グリッドの軸の角度関係と実世界軸の間に不一致がある場合は、[角度] を指定することもできます。

[特徴点検出数]:

 キャリブレーションで使用する抽出された特徴点の総数を表示します。

[画像取り込み]:

画像の取り込み方法を指定します。

[トリガ]: | [トリガ] ボタンを手動でクリックして画像を取り込むように指定します。
[ライブビデオ]: | In-Sight ビジョンシステムがライブビデオモードに切り替わり、ビジョンシステムのフォーカスが調整されます。
[画像ファイルを開く]: | [開く] ダイアログを使用して画像をロードするように指定します。

[グリッドの軸]:

 フィデューシャルなしのキャリブレーションパターン ([フィデューシャルなしチェッカボード]、[フィデューシャルなしドット]) が選択されている場合は、キャリブレーションパターンのグリッドの軸を指定します。

[領域の調整]:

 対話型グラフィックスモードが開始され、キャリブレーションの対象領域を定義します。その対象領域内の特徴のみがキャリブレーションで使用されます。

特徴点テーブル:

画像から抽出された特徴点のピクセル行とピクセル列の座標のほかに、キャリブレーションパターンの位置が原点に対するグリッド座標 (X, Y) で表示されます。原点の値が変わると、常に X 座標と Y 座標が更新されます。抽出された特徴点は、各特徴の位置に緑色の「x」でグラフィカルに表示されます。テーブルから特徴点を選択、またはグラフィックス表示の特徴点をクリックすると、テーブルとグラフィックス表示の両方でその特徴点がハイライトされ、その座標がグラフィカルに表示されます。

[結果] ペイン

コントロール 説明

[特徴点の総数]:

キャリブレーションで使用する抽出された特徴点の総数を表示します。

[平均エラー]:

キャリブレーション中の平均エラーをピクセル単位で表示します。

[最大エラー]:

キャリブレーション中の最大エラーをピクセル単位で表示します。

キャリブレーションのグラフィック:

キャリブレーションをグラフィカル形式で表示します。

  • 非常によい = エラー <= 0.25
  • よい = 0.25 < エラー <= 0.5
  • やや悪い = 0.5 < エラー <= 2.0
  • 悪い = 2.0 < エラー <= 5.0
  • 非常に悪い = 5.0 < エラー

特徴点テーブル:

画像から抽出された特徴点のピクセル行とピクセル列の座標のほかに、キャリブレーションパターンの位置が原点に対するグリッド座標 (X, Y) で表示されます。原点の値が変わると、常に X 座標と Y 座標が更新されます。抽出された特徴点は、各特徴の位置に緑色の「x」でグラフィカルに表示されます。テーブルから特徴点を選択、またはグラフィックス表示の特徴点をクリックすると、テーブルとグラフィックス表示の両方でその特徴点がハイライトされ、その座標がグラフィカルに表示されます。

使用方法 CalibrateGrid 関数

CalibrateGrid 関数を使用するプロセスは、次の手順で構成されています。

  • CalibrateGrid 関数の挿入
  • [セットアップ] ペインを使用したキャリブレーションパターンの設定
  • [グリッドの印刷] ダイアログを使用したキャリブレーションパターンの印刷
  • [ポーズ] ペインを使用したキャリブレーションパターンの画像の取得
  • [ポーズ] ペインでの原点の変更または設定 (オプション)
  • [グリッドの軸] を使用したフィデューシャルなしのキャリブレーションパターンの設定 (オプション)
  • [ポーズ] ペインを使用した複数のポーズの設定 (オプション)
  • [結果] ペインを使用したキャリブレーションの検証

CalibrateGrid 関数の挿入

  1. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。
  2. [関数の挿入] ダイアログの左側で、ツールカテゴリの [座標補正] リストを展開します。
  3. 関数リストから CalibrateGrid 関数を選択して、[OK] ボタンを押します。

[セットアップ] ペインを使用したキャリブレーションパターンの設定

CalibrateGrid 関数を初めて挿入すると、[セットアップ] ペインが自動的に表示されます。

注意:　いずれかの [CalibrateGrid] ダイアログから [セットアップ] ダイアログに戻るには、ダイアログの左側にあるナビゲーションペインで単純に [セットアップ] を選択します。

  1. キャリブレーションパターンの設定を開始するには、[グリッドタイプ] パラメータからキャリブレーションパターンを選択します。
  2. [グリッド間隔] フィールドの値を設定します。この値は、チェッカボードパターン内にある正方形のサイズ、またはドットグリッドパターン内にあるドットの中心から中心への距離のいずれかを定義するために使用されます。
  3. [単位] フィールドの値を設定します。これは実世界の測定単位で、ワールド座標はこの単位に基づいています。
  4. キャリブレーションの完了に必要なポーズの数を決め、[ポーズ数] パラメータにその値を入力します。1 つのキャリブレーションパターンで視野全体をカバーできない場合は、複数のキャリブレーションパターンを使用する必要があります。このタイプのキャリブレーションでは、視野をカバーするために、キャリブレーションパターンはさまざまな既知の物理的位置に配置されます。キャリブレーションパターンの各位置は、「ポーズ」と呼ばれます。CalibrateGrid 関数では、1 ～ 30 個のポーズを処理することができます。2 つ以上のポーズを選択した場合は、[ポーズ位置] のオプションが有効になります。これらのオプションは、ポーズ間におけるキャリブレーションパターンの予想される動きを指定するために使用します。デフォルト設定は [自動] になっています。この設定では、基本的にキャリブレーションパターンを自由に移動することができます。[自動] が選択されると、入力が必要となるワールド座標値はポーズ 1 内にある原点のワールド座標のみになります。ほかのすべてのポーズは、フィデューシャルが検出されている限り、各ポーズの原点を指定しなくてもキャリブレートされます。[ユーザ指定] は、キャリブレーションパターンを移動させるロボットの移動範囲が限られている場合、または各ポーズの原点の正確な位置がわかっている場合に選択します。すべてのポーズの原点位置を指定すれば、キャリブレーションの計算をより高速に実行できます。
  5. グリッドパターンを印刷する前に、[レンズモデル] ([放射歪み補正] または [遠近歪み補正]) を選択し、画像取得に使用されているレンズタイプに基づいて、歪み補正のタイプを定義します。「放射歪み」(デフォルト設定) とは、視野周辺部の倍率と、視野中央部の倍率が異なる光学レンズに生じる歪みのことです。放射歪みは、通常、視野の広いレンズでより深刻となります。例えば、広角レンズは、望遠レンズより深刻な放射歪みが発生する傾向があります。「遠近歪み」とは、取得されるシーンに対し、ビジョンシステムの光学軸が直角でない場合に発生する歪みのことです。

[グリッドの印刷] ダイアログを使用したキャリブレーションパターンの印刷

注意:　[グリッドの印刷] 機能は、高い精度を要求されない測定および検証を行う場合にのみ使用してください。高い精度と確度が要求されるアプリケーションには使用できません (高い精度と確度が要求されるアプリケーションには、正確に作成されたキャリブレーションパターンが必要になります)。

  1. キャリブレーションパターンの設定が完了したら、[グリッドの印刷] ボタンをクリックしてキャリブレーションパターンのコピーを印刷します。
  2. 印刷を実行する前に [ページ設定] ボタンをクリックし、[ページ設定] ダイアログを使用してキャリブレーションパターンを設定します。
  3. [印刷] ボタンをクリックして、[印刷] ダイアログを表示します。このダイアログから、キャリブレーションパターンの印刷を実行することができます。

[ポーズ] ペインを使用したキャリブレーションパターンの画像の取得

[セットアップ] ペインでのキャリブレーションパターンの設定が完了したら、ナビゲーションペインから [ポーズ] (または、複数のポーズを設定する場合は [ポーズ 1]) を選択します。[ポーズ] ペインが表示されます。

  1. キャリブレーション用画像の取り込みには、次の 3 つのオプションがあります。
  • [トリガ]
  • [ライブビデオ]
  • [画像ファイルを開く]

注意:　最も正確な結果を得るには、キャリブレーションパターンが視野全体で鮮明になるように焦点を調整します。また、特徴を処理する場合、CalibrateGrid 関数は特徴が白地に黒または黒地に白であるかどうかを判別しません。

  2. 画像の取り込みが完了すると、CalibrateGrid 関数は特徴点を自動的に抽出します。

  3. 抽出された各特徴を示すデータテーブルを表示するには、切り替えボタンをクリックします (テーブルを非表示にするにはボタンをもう一度クリック)。このテーブルには、画像から抽出された特徴点のピクセル行とピクセル列の座標のほかに、キャリブレーションパターンの位置が原点に対するグリッド座標 (X, Y) で表示されます。原点の値が変わると、常に X 座標と Y 座標が更新されます。抽出された特徴点は、各特徴の位置に緑色の「x」でグラフィカルに表示されます。テーブルから特徴点を選択、またはグラフィックス表示の特徴点をクリックすると、上の図のように、テーブルとグラフィックス表示の両方でその特徴点がハイライトされ、その座標がグラフィカルに表示されます。

新しい画像を取り込んだ場合または [ポーズ] ダイアログに戻った場合は常に、領域サイズの調整および特徴点の再抽出が行われ、結果表示も更新されます。デフォルトでは、画像全体が特徴点抽出に使用されます。[領域の調整] ボタンをクリックすると、対話型グラフィックスモードが開始されます。このモードでは、対象領域を定義し、その領域外にある画像部分を無視することができます。

[ポーズ] ペインでの原点の変更または設定 (オプション)

[原点の位置] フィールドは、原点の X 位置と Y 位置をワールド座標で指定するために使用されます。さらに、グリッドの軸の角度関係と実世界軸の間に不一致がある場合は、[角度] フィールドを使用してその角度を入力することができます。例えば、原点が画像の隅にあるよりも対象物の中心にある方が便利な場合は、原点を変更することができます。キャリブレーションの原点位置は、[原点の位置 (ワールド座標系)] にある [X]、[Y]、および [角度] フィールドの値を調整することで変更できます。 ボタンをクリックして値を増減するか、または必要な数値を手動で入力します。

[グリッドの軸] を使用したフィデューシャルなしのキャリブレーションパターンの設定 (オプション)

使用するキャリブレーションパターンにフィデューシャルがない場合は、[グリッドの軸] にある設定を使用して原点および X 座標軸と Y 座標軸を定義する必要があります。[グリッドの軸] にある設定は、フィデューシャルのないキャリブレーションパターンを選択した場合にのみ利用可能になり表示されます。

  1. 画像の処理と特徴の抽出が完了したら、[原点の選択] ボタンをクリックします。

  2. これにより対話型グラフィックスモードが開始されます。このモードからハイライトされている点のいずれかをダブルクリックし、原点として選択します。

注意:　抽出されたすべての特徴を原点にできるわけではありません。特徴点に 90 度離れている 2 つの隣接点が存在しない場合は、その特徴点を原点として選択することはできません。

  3. 原点の設定が完了すると、次の図のように、[スプレッドシートビュー] ウィンドウで原点がハイライトおよび表示され、データテーブルでは選択した原点座標が自動的にハイライトされます。

  4. 次に、[X 軸の選択] ボタンをクリックすると、対話型グラフィックスモードが開始されます。このモードからハイライトされている点のいずれかをダブルクリックし、X 軸として選択します。

  5. X 軸の設定が完了すると、次の図のように、[スプレッドシートビュー] ウィンドウで X 軸がハイライトおよび表示され、データテーブルでは選択した X 軸座標が自動的にハイライトされます。

  6. 次に、[Y 軸の選択] ボタンをクリックすると、再び対話型グラフィックスモードが開始されます。このモードからハイライトされている点のいずれかをダブルクリックし、Y 軸として選択します。

  7. Y 軸の設定が完了すると、次の図のように、[スプレッドシートビュー] ウィンドウで Y 軸がハイライトおよび表示され、データテーブルでは選択した Y 軸座標が自動的にハイライトされます。

  8. 最後に、原点、X 軸、および Y 軸の設定が完了したら、[キャリブレーション] ボタンをクリックして [結果] ペインに進み、キャリブレーションを終了するか、またはほかのポーズを設定する場合はナビゲーションペインで [ポーズ] を選択します。

[ポーズ] ダイアログを使用した複数のポーズの設定 (オプション)

1 つのキャリブレーションパターンで視野全体をカバーできない場合は、複数のキャリブレーションパターンを使用する必要があります。ここで説明する複数のポーズを扱う状況では、フィデューシャルつきのドットグリッドパターンが使用されており、またポーズの位置はユーザによって指定されます。ポーズ 2 ～ 5 は、ポーズ 1 で設定された固定の原点を参照しています。

注意:　キャリブレーションのために、各ポーズ用に異なる物理的位置に配置されているパターンを含む複数のポーズが必要になることがあります。その場合、キャリブレーションシーケンスの中で、キャリブレーションパターンとそのパターンを参照するセンサを複数の位置に正確に移動する必要があります。これはロボットを使用して行うこともできますが、ロボット制御ソフトウェアは自動化に対応していません。したがって、ロボットを使用する場合は、処理を進める前に、ロボットコントローラによってロボットを手動で操作してそれぞれの新しいポーズに移動する必要があります。

  1. 複数のポーズを設定する場合に、[セットアップ] ペインで [自動] が選択されていると、それ以降の各 [ポーズ] ダイアログは同じになります。ただし、[原点の位置] にあるフィールドは無効になっています。
  2. [セットアップ] ペインで [ユーザ指定] が選択されていると、各ポーズに対して原点を指定することが必要になります。原点を設定するには、[原点の位置] フィールドを使用します。
  3. ポーズ 1 に続くポーズごとに、新しい画像をロードするか、取り込む必要があります。
  4. すべてのポーズの設定が完了したら、[キャリブレーション] ボタンをクリックして [結果] ダイアログに進み、キャリブレーションを終了します。

[結果] ダイアログを使用したキャリブレーションの検証

[キャリブレーション] ボタンをクリックすると、CalibrateGrid 関数が最適な 2D 変換の計算を開始し、画面は自動的に [結果] ペインに切り替わります。[結果] ペインにはキャリブレーションの概要が表示されます。この概要には、検出された特徴点の総数、およびピクセル単位でキャリブレーションの平均エラーと最大エラーが示されます。エラーレベルの評価は、次のレート値を使用して、平均エラーに基づいて割り当てられます。

  • 非常によい = エラー <= 0.25
  • よい = 0.25 < エラー <= 0.5
  • やや悪い = 0.5 < エラー <= 2.0
  • 悪い = 2.0 < エラー <= 5.0
  • 非常に悪い = 5.0 < エラー

この評価は、キャリブレーション全体の「得点」と見ることができます。例えば、特徴点のグリッド上での間隔が不均等になっている場合は、得点が低くなります。また、複数ポーズのキャリブレーションで、ポーズ位置に [ユーザ指定] が選択されていると、ポーズの 1 つが正しく配置されなかった場合も得点が低くなります。

結果が許容可能であれば、[OK] ボタンをクリックしてキャリブレーションを終了します。キャリブレーションが正常に完了すると、スプレッドシートに [image] データ構造体が挿入されます。

CalibrateGrid 関数関数の結果出力

戻り値

2 つの座標系間の変換を定義する係数を含む [image] データ構造体

関連項目

  • Calibrate 関数
  • CalibrateAdvanced 関数
  • ExtractCalibration 関数
  • TransformImage 関数
  • 座標補正関数について
  • キャリブレーション関数について
  • プロパティシートの使用方法


CalibrateImage 関数

CalibrateImage 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

キャリブレーションを画像に関連づけます。

CalibrateImage 関数 (

画像,

キャリブ,

)

CalibrateImage 関数は [image] データ構造体と [image] データ構造体を関連づけて、新しい [image] データ構造体を作成します。ほかのビジョンツール関数は、CalibrateImage 関数で作成されたデータストラクチャを参照して、参照キャリブレーションによって定義されたワールド座標でそれらの結果を表示することができます。

例えば、センサは、CalibrateGrid などの座標補正関数を使用してキャリブレーションされます。次に、直近に作成された CalibrateGrid 関数の [image] 構造体へのセル参照として設定されたキャリブパラメータを含む、CalibrateImage 関数が挿入されます。続いて、ExtractBlobs 関数などの別のビジョンツールが、画像パラメータを CalibrateImage データ構造体へのセル参照として設定します。この結果、ExtractBlobs の座標は、キャリブレーションされた画像のワールド座標になります。

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

CalibrateImage 関数の入力パラメータ

画像 | このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。
キャリブ | このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

CalibrateImage 関数の結果出力

戻り値

処理された画像を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

注意: データ構造体にある処理済みの画像領域の内容は、ジョブとともに保存されることはありません。

関連項目

Calibrate 関数

CalibrateAdvanced 関数

CalibrateGrid 関数

座標補正関数について

キャリブレーション関数について

プロパティシートの使用方法


ExtractCalibration 関数

座標補正 → キャリブレーション

In-Sight 関数リファレンス

ExtractCalibration 関数は、TransformImage 関数によって返された歪みのない画像に基づいて、ワールド座標での 2D 変換を作成します。さらに、NeighborFilter 関数、PointFilter 関数、または ScaleImage 関数によって出力された [image] データ構造体に含まれるキャリブレーションデータを取得します。また、ExtractCalibration 関数は、ExtractColor 関数によって出力された [image] データ構造体に含まれるキャリブレーションデータの抽出もサポートします。

注意: ExtractColor 関数、NeighborFilter 関数、PointFilter 関数、および ScaleImage 関数を ExtractCalibration 関数と正常に連携動作させるには、それらの関数の画像パラメータを、 [image] データ構造を返す関数の参照として設定する必要があります。

ExtractCalibration 関数 (

画像,

)

ExtractCalibration 関数について

TransformImage 関数が追加されると、ExtractCalibration 関数は、TransformImage 関数が生成する画像によって定義されるワールド座標の 2D 変換を関連付けるために自動挿入されます。TransformImage 関数によって生成された [image] データ構造体を唯一の入力として使用する ExtractCalibration 関数は、 [image] データ構造体を返します。これは、TransformImage 関数で生成された歪みのない画像に対して TransBlobsToWorld、TransEdgesToWorld、TransFixtureToWorld、TransPatternsToWorld、TransPixelToWorld などの関数を使用したときの参照として使用できます。CalibrateImage 関数を使用して、ExtractCalibration 関数と TransformImage 関数を関連付けることができます。

個別に、ExtractCalibration 関数をスプレッドシートに挿入し、その画像パラメータを、NeighborFilter、PointFilter、または ScaleImage 関数によって出力される [image] データ構造体、または ExtractColor 関数によって出力される [image] データ構造体の参照として設定できます。その後、ExtractCalibration 関数は、これらの関数に入力するキャリブレーションデータを取得します。

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

ExtractCalibration 関数の入力パラメータ

画像

このパラメータは、NeighborFilter、PointFilter、ScaleImage、または TransformImage 関数によって作成された有効な [image] データ構造体、または ExtractColor 関数によって作成された有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。TransformImage 関数との組み合わせで自動挿入されると、デフォルトでは、参照されるセルは、TransformImage 関数によって返された [image] データ構造体を含むセルになります。それ以外の場合、参照されるセルは、AcquireImage によって返される [image] データ構造体を含む A0 となります。

ExtractCalibration 関数の結果出力

戻り値

2 つの座標系間の変換を定義する係数を含む [image] データ構造体

関連項目

TransformImage 関数

CalibrateGrid 関数

TransBlobsToWorld 関数

TransEdgesToWorld 関数

TransFixtureToWorld 関数

TransPatternsToWorld 関数

TransPixelToWorld 関数

座標補正関数について

キャリブレーション関数について

プロパティシートの使用方法


TransBlobsToWorld 関数

TransBlobsToWorld 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

画像座標からワールド座標に [image] 構造体を変換します。この関数は、指定されたワールド座標系を基準にブロブのオフセット、角度、および領域を計算します。

TransBlobsToWorld 関数 (

キャリブ ,

ブロブ ,

変換する数

)

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

TransBlobsToWorld 関数の入力パラメータ

キャリブ | このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。
ブロブ | このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。
変換する数 | 元の [image] データ構造体からワールド座標系に変換するブロブの数を指定します (0 ～ 4096、デフォルト = 3)。

TransBlobsToWorld 関数の結果出力

戻り値 | 変換されたブロブを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

TransBlobsToWorld データアクセス関数

スプレッドシートに自動挿入されるデータアクセス関数は、FindBlobs 関数および SortBlobs 関数によって自動挿入される関数と同じです。

関連項目

Calibrate 関数

ブロブツール

座標補正関数について

プロパティシートの使用方法


TransEdgesToWorld 関数

TransEdgesToWorld 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

画像座標からワールド座標に [image] 構造体を変換します。この関数は、指定されたワールド座標系を基準にエッジのオフセットと角度を計算します。

TransEdgesToWorld 関数 (

キャリブ ,

エッジ ,

変換する数

)

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

TransEdgesToWorld 関数の入力パラメータ

キャリブ | このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。
エッジ | このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。
変換する数 | 元の [image] データ構造体からワールド座標に変換するエッジの数を指定します (0 ～ 160、デフォルト = 3)。

TransEdgesToWorld 関数の結果出力

戻り値 | 変換されたエッジを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

TransEdgesToWorld 関数TransEdgesToWorld データアクセス関数

スプレッドシートに自動挿入されるデータアクセス関数は、 [image] データ構造体のソートとペアリングに使用する関数によって自動挿入される関数と同じです。

関連項目

Calibrate 関数

エッジツール

座標補正関数について

プロパティシートの使用方法


TransFixtureToWorld 関数

TransFixtureToWorld 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

ピクセル座標からワールド座標系にフィクスチャを変換します。

TransFixtureToWorld 関数 (

キャリブ ,

フィクスチャ,

表示

)

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

TransFixtureToWorld 関数の入力パラメータ

キャリブ

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

フィクスチャ

フィクスチャ座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

表示

画像上の TransPixelToWorld グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | TransPixelToWorld 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、フィクスチャは表示されません。
2 = 入力のグラフィックスのみ | フィクスチャが常に表示されます。

TransFixtureToWorld 関数の結果出力

戻り値

変換されたフィクスチャを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

Calibrate 関数

Calibrate 関数

CalibrateAdvanced 関数

CalibrateGrid 関数

CalibrateImage 関数

ExtractCalibration 関数

座標補正関数について

Fixture 関数

プロパティシートの使用方法


TransformImage 関数

TransformImage 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

TransformImage 関数は、CalibrateGrid 関数で提示された画像の歪みを補正する [image] データ構造体を生成します。

注意: TransformImage 関数は、グレースケール画像のみを出力します。

TransformImage 関数 (

画像,

キャリブレーション,

領域,

画像スケール,

基準点,

表示

)

TransformImage 関数について

TransformImage 関数は、CalibrateGrid 関数で引数として参照されている CalibrateGrid [image] データ構造体と [image] データ構造体を使用して [image] データ構造体を生成します。この構造体は、線形歪みやレンズ歪みを補正し、CalibrateGrid 関数で使用している画像の Closed 「歪みのない」状態を返します。この新しい出力画像はピクセルを基準にしていますが、同時に、ExtractCalibration 関数が自動的にスプレッドシートに挿入され、TransformImage 関数のキャリブレーションに基づいて、ワールド座標系での 2D 変換が行われます。

TransformImage 関数を実行する前の画像

TransformImage 関数を実行した後の画像

注意: この関数をスプレッドシートに追加したときから始まる TransformImage の登録時間は、指定された領域が変更された場合、またはこの関数を含むジョブがロードされた場合には、解像度 640×480 のセンサでは最長 3 秒、解像度 1600×1200 のセンサでは最長 30 秒かかることがあります。

TransformImage 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

キャリブレーション

このパラメータは、CalibrateGrid 関数によって生成された有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。

領域

これは対象領域 (ROI) とも呼ばれ、画像解析の対象となる画像の領域を表します。移動および回転可能な矩形の画像領域を形成します。このパラメータを選択して、プロパティシートのツールバーにある [領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法

画像スケール

変換後の画像の表示スケールを指定します。最小の設定値は 0.01、最大は 10.00 で、デフォルトは 1.0 です。

基準点

変換に使用される基準点を指定します。

0 = 画像の中心 (デフォルト) | 基準点は画像の中心になります。
1 = 領域の中心 | 基準点は ROI の中心になります。

表示

画像上の TransformImage 関数グラフィックスの表示モードを指定します。

0 = 非表示 | TransformImage 関数を含むセルがスプレッドシート内でハイライトされている場合を除き、すべてのグラフィックスが表示されません。
1 = 結果のグラフィックスのみ | 歪みのない画像が常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域と歪みのない画像が常に表示されます。

TransformImage 関数の結果出力

戻り値

処理された画像を含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。また、自動的に、ExtractCalibration [image] データ構造体を挿入します。TransformImage 関数によって返される [image] データ構造体に基づいて、ワールド座標系での 2D 変換を行います。

注意: データ構造体にある処理済みの画像領域の内容は、ジョブとともに保存されることはありません。

関連項目

CalibrateGrid 関数

ExtractCalibration 関数

座標補正関数について

キャリブレーション関数について

プロパティシートの使用方法


TransInspEdgeDefectToWorld 関数

TransInspEdgeDefectToWorld 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

画像座標からワールド座標に InspectEdgeForDefect [image] データ構造体を変換します。

TransInspEdgeDefectToWorld 関数 (

キャリブ ,

InspectEdgeForDefect 関数

)

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

TransInspEdgeDefectToWorld 関数 の入力パラメータ

キャリブ | このパラメータは有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。
InspectEdgeForDefect 関数 | このパラメータは、InspectEdgeForDefect 関数によって出力される有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。

TransInspEdgeDefectToWorld 関数 の結果出力

戻り値

変換されたエッジを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

Calibrate 関数

InspectEdge ツールについて

座標補正関数について

プロパティシートの使用方法


TransInspEdgeWidthToWorld 関数

TransInspEdgeWidthToWorld 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

画像座標からワールド座標に InspectEdgeWidth [image] データ構造体を変換します。

TransInspEdgeWidthToWorld 関数 (

キャリブ ,

InspectEdgeForDefect 関数

)

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

TransInspEdgeWidthToWorld 関数 の入力パラメータ

キャリブ | このパラメータは有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。
InspectEdgeWidth 関数 | このパラメータは、InspectEdgeWidth 関数によって出力される有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。

TransInspEdgeWidthToWorld 関数 の結果出力

戻り値

変換されたエッジを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

Calibrate 関数

InspectEdge ツールについて

座標補正関数について

プロパティシートの使用方法


関連項目

関連項目 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

画像座標からワールド座標に OCRMax 関数の [image] データ構造体を変換します。

関連項目 (

キャリブ,

OCRMax

)

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

関連項目 の入力パラメータ

キャリブ | このパラメータは有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。
OCRMax | このパラメータは、OCRMax 関数によって出力される有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。

関連項目 の出力

戻り値

変換された文字を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

注意: TransOCRMaxToWorld 関数によって返された [image] データ構造体は、フォントとして別の OCRMax 関数への参照として使用することはできません。また、標準の OCRMax 関数 [image] データ構造体として機能しません (例えば、結果グラフィックスを描画しません)。すべての OCRMax データアクセス関数は、TransOCRMaxToWorld 関数によって返された [image] データ構造体を使用して動作しますが、座標データを返すためだけに使用します。

関連項目

Calibrate 関数

OCRMax 関数

座標補正関数について

プロパティシートの使用方法


TransPatternsToWorld 関数

TransPatternsToWorld 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

画像座標からワールド座標に [image] 構造体を変換します。この関数は、指定されたワールド座標系を基準にパターンのレスポンス点のオフセットと角度を計算します。

TransPatternsToWorld 関数 (

キャリブ ,

パターン ,

変換する数

)

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

TransPatternsToWorld 関数の入力パラメータ

キャリブ | このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。
パターン | このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。
変換する数 | 元の [image] データ構造体からワールド座標に変換するパターンの数を指定します (0 ～ 100、デフォルト = 1)。

TransPatternsToWorld 関数の結果出力

戻り値 | 変換されたパターンを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

TransPatternsToWorld データアクセス関数

スプレッドシートに自動挿入されるデータアクセス関数は、 [image] データ構造体の検出とソートに使用する関数によって自動挿入される関数と同じです。

関連項目

Calibrate 関数

パターンマッチングツールについて

座標補正関数について

プロパティシートの使用方法


TransPixelToWorld 関数

TransPixelToWorld 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

ピクセル座標からワールド座標に点を変換します。

TransPixelToWorld 関数 (

キャリブ ,

点.行 ,

点.列 ,

表示

)

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

TransPixelToWorld 関数の入力パラメータ

キャリブ

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

点

点の座標を指定します。

行 | 点の行座標
列 | 点の列座標

表示

画像上の TransPixelToWorld グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | TransPixelToWorld 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、点は表示されません。
2 = 入力のグラフィックスのみ | 点が常に表示されます。

TransPixelToWorld 関数の結果出力

戻り値 | 変換された点を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

TransPixelToWorld データアクセス関数

スプレッドシートに自動挿入されて結果テーブルを作成するデータアクセス関数は次のとおりです。

X | GetRow(ポイント) | 変換された点の X 座標
Y | GetCol(ポイント) | 変換された点の Y 座標

関連項目

Calibrate 関数

Point 関数

座標補正関数について

プロパティシートの使用方法


TransSurfaceFlawToWorld 関数

TransSurfaceFlawToWorld 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

画像座標からワールド座標に SurfaceFlaw 関数の [image] データ構造体を変換します。

注意: ワールド座標系で報告されるビジョンツールの結果出力は、ほかのビジョンツールにおいてフィクスチャまたは領域の入力として使用することはできません。

TransSurfaceFlawToWorld 関数関数の入力パラメータ

TransSurfaceFlawToWorld 関数 (

キャリブ ,

傷検査

)

キャリブ | このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。
傷検査 | この引数は、SurfaceFlaw 関数によって出力される有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。

TransSurfaceFlawToWorld 関数関数の結果出力

戻り値

変換された欠陥を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

注意:
  • 欠陥の周囲長を変換するには、参照される [image] データ構造体の出力に CalibrateGrid 関数を使用する必要があります。
  • Calibrate 関数または CalibrateAdvanced 関数を使用する場合、すべての周囲長の値はピクセル単位の座標で返されます。
  • 欠陥の真円度や明度の値は実世界値には変換されません。

関連項目

  • Calibrate 関数
  • 座標補正関数について
  • SurfaceFlaw 関数
  • 傷検出
  • プロパティシートの使用方法


TransWorldToPixel 関数

TransWorldToPixel 関数 |
座標補正 → キャリブレーション | In-Sight 関数リファレンス

ワールド座標からピクセル座標に点を変換します。

TransWorldToPixel 関数 (

キャリブ ,

点.X ,

点.Y ,

表示

)

TransWorldToPixel 関数の入力パラメータ

キャリブ

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

点

点の座標を指定します。

X | ワールド X 座標
Y | ワールド Y 座標

表示

画像上の TransWorldToPixel グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | TransWorldToPixel 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、点は表示されません。
1 = 結果のグラフィックスのみ | 入力された点が常に表示されます。

TransWorldToPixel 関数の結果出力

戻り値 | 変換された点を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

TransWorldToPixel データアクセス関数

スプレッドシートに自動挿入されて結果テーブルを作成するデータアクセス関数は次のとおりです。

行 | GetRow(ポイント) | 変換された点の行座標
列 | GetCol(ポイント) | 変換された点の列座標

関連項目

Calibrate 関数

Point 関数

座標補正関数について

プロパティシートの使用方法


Fixture 関数

座標補正関数

In-Sight 関数リファレンス

フィクスチャ関数はフィクスチャ座標系とピクセル座標系の間の座標変換を定義します。

  1. TransBlobsToFixture 関数: 構造体を画像座標からフィクスチャ座標に変換します。
  2. TransEdgesToFixture 関数: 構造体を画像座標からフィクスチャ座標に変換します。
  3. TransFixtureToPixel 関数: ピクセル座標をフィクスチャ座標に変換します。
  4. TransPatternsToFixture 関数: データ構造体を画像座標からフィクスチャ座標に変換します。
  5. TransPixelToFixture 関数: ピクセル座標をフィクスチャ座標に変換します。


TransBlobsToFixture 関数

TransBlobsToFixture 関数 |
座標補正 → フィクスチャ | In-Sight 関数リファレンス

構造体を画像座標からフィクスチャ座標に変換します。この関数は、指定されたフィクスチャを基準にブロブのオフセットと角度を計算します。

TransBlobsToFixture 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

ブロブ ,

変換する数

)

TransBlobsToFixture 関数の入力パラメータ

フィクスチャ

フィクスチャ座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

ブロブ

データ構造体。このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

変換する数

元の [image] データ構造体からフィクスチャ座標に変換するブロブの数を指定します (0 ～ 4096、デフォルト = 3)。

TransBlobsToFixture 関数の結果出力

戻り値 | 変換されたブロブを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

TransBlobsToFixture データアクセス関数

スプレッドシートに自動挿入されるデータアクセス関数は、FindBlobs 関数および SortBlobs 関数によって自動挿入される関数と同じです。

関連項目

フィクスチャ

ブロブツール

座標補正関数について

プロパティシートの使用方法


TransEdgesToFixture 関数

TransEdgesToFixture 関数 |
座標補正 → フィクスチャ | In-Sight 関数リファレンス

画像座標からフィクスチャ座標に [image] 構造体を変換します。この関数は、指定されたフィクスチャを基準にエッジのオフセットと角度を計算します。

TransEdgesToFixture 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

エッジ ,

変換する数

)

TransEdgesToFixture 関数の入力パラメータ

フィクスチャ

フィクスチャ座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

エッジ

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

変換する数

元の [image] データ構造体からフィクスチャ座標に変換するエッジの数を指定します (0 ～ 160、デフォルト = 3)。

TransEdgesToFixture 関数の結果出力

戻り値 | 変換されたエッジを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

TransEdgesToFixture データアクセス関数

スプレッドシートに自動挿入されるデータアクセス関数は、 [image] データ構造体のソートとペアリングに使用する関数によって自動挿入される関数と同じです。

関連項目

フィクスチャ

エッジツール

座標補正関数について

プロパティシートの使用方法


TransFixtureToPixel 関数

TransFixtureToPixel 関数 |
座標補正 → フィクスチャ | In-Sight 関数リファレンス

ピクセル座標をフィクスチャ座標に変換します。

TransFixtureToPixel 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

点.X ,

点.Y ,

表示

)

TransFixtureToPixel 関数の入力パラメータ

フィクスチャ

フィクスチャ座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

点

フィクスチャ座標で点の座標を指定します。

X | フィクスチャ原点から点の行オフセット
Y | フィクスチャ原点から点の列オフセット

表示

画像上の TransFixtureToPixel グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | TransFixtureToPixel 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、点は表示されません。
1 = 結果のグラフィックスのみ | 点を常に表示します。

TransFixtureToPixel 関数の結果出力

戻り値 | 変換された点を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

TransFixtureToPixel データアクセス関数

スプレッドシートに自動挿入されて結果テーブルを作成するデータアクセス関数は次のとおりです。

行 | GetRow(ポイント) | 変換された点の行座標
列 | GetCol(ポイント) | 変換された点の列座標

関連項目

フィクスチャ

Point 関数

座標補正関数について

プロパティシートの使用方法


TransPatternsToFixture 関数

TransPatternsToFixture 関数 |
座標補正 → フィクスチャ | In-Sight 関数リファレンス

画像座標からフィクスチャ座標に [image] データ構造体を変換します。この関数は、指定されたフィクスチャを基準にパターンのレスポンス点のオフセットと角度を計算します。

TransPatternsToFixture 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

パターン ,

変換する数

)

TransPatternsToFixture 関数の入力パラメータ

フィクスチャ

フィクスチャ座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

パターン

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。

変換する数

元の [image] データ構造体からフィクスチャ座標に変換するパターンの数を指定します (0 ～ 100、デフォルト = 1)。

TransPatternsToFixture 関数の結果出力

戻り値 | 変換されたパターンを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

TransPatternsToFixture データアクセス関数

スプレッドシートに自動挿入されるデータアクセス関数は、 [image] データ構造体の検出とソートに使用する関数によって自動挿入される関数と同じです。

関連項目

フィクスチャ

パターンマッチングツールについて

座標補正関数について

プロパティシートの使用方法


TransPixelToFixture 関数

TransPixelToFixture 関数 |
座標補正 → フィクスチャ | In-Sight 関数リファレンス

ピクセル座標をフィクスチャ座標に変換します。

TransPixelToFixture 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

点.行 ,

点.列 ,

表示

)

TransPixelToFixture 関数の入力パラメータ

フィクスチャ

フィクスチャ座標系を指定します。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

点

ピクセル座標で点の座標を指定します。

行 | 画像原点からの点の行オフセット
列 | 画像原点からの点の列オフセット

表示

画像上にある TransPixelToFixture グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | TransPixelToFixture 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、点は表示されません。
2 = 入力のグラフィックスのみ | 点が常に表示されます。

TransPixelToFixture 関数の結果出力

戻り値 | 変換された点を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

TransPixelToFixture データアクセス関数

スプレッドシートに自動挿入されて結果テーブルを作成するデータアクセス関数は次のとおりです。

X | GetRow(ポイント) | 変換された点の X 座標
Y | GetCol(ポイント) | 変換された点の Y 座標

関連項目

フィクスチャ

Point 関数

座標補正関数について

プロパティシートの使用方法


入出力関数

In-Sight 関数リファレンス

入出力関数は、In-Sight センサが Ethernet ネットワーク接続またはシリアルポート接続経由でリモートデバイスと通信する方法を制御します。入出力関数は、次のカテゴリに分類されます。

  • BitStream 関数: WriteWaveformClocked 関数を使用して、送信するリストビットを統合し、集めます。
  • CombineOutputBuffers 関数: 複数の FormatOutputBuffer 関数の出力を単一の [image] データ構造体に集約します。
  • Event 関数: 指定されたイベントトリガ時に画像を取り込み、スプレッドシートを更新します。
  • ExportData 関数: ほかのセンサ、FTP サーバ、またはローカルもしくはネットワークに接続されたセンサの RAM ディスクの間でデータを共有するために、セルデータを .cxd ファイルとしてエクスポートします。
  • FormatInputBuffer 関数: ユーザが、ReadCCLinkBitBuffer 関数、ReadCCLinkWordBuffer 関数、ReadDeviceNetBuffer 関数、ReadEIPBuffer 関数、ReadModbusBuffer 関数、または ReadProfinetBuffer 関数から受け取るデータのフォーマットを設定できるようにします。
  • FormatOutputBuffer 関数: ユーザが、WriteCCLinkBitBuffer 関数、WriteCCLinkWordBuffer 関数、WriteDeviceNetBuffer 関数、WriteEIPBuffer 関数、WriteModbusBuffer 関数、または WriteProfinetBuffer 関数に送信されるデータのフォーマットを設定できるようにします。
  • ImportData 関数: ほかのセンサ、FTP サーバ、またはローカルもしくはネットワークに接続されたセンサの RAM ディスクから、セルデータを .cxd ファイルとしてインポートします。
  • SetEvent 関数: 実行時に、指定したイベントにトリガをかけます。
  • ディスクリート I/O 関数: システムがオンラインのときに、In-Sight センサのパラレルのディスクリート入出力の読み取りと書き込みを行います。
  • マシンステータス関数: In-Sight センサの動作ステータス情報を保存します。
  • メッセージ関数: ネイティブモード接続経由で、In-Sight センサからのテキスト文字列の読み出しや In-Sight センサへのテキスト文字列の書き込みを行います。
  • ネットワーク関数: ネットワーク上の In-Sight センサと TCP/IP デバイスでデータを共有します。
  • シリアル I/O 関数: In-Sight センサのシリアルポートを介して、データの読み込みと書き出しを行います。
  • 時間・タイマ関数: 現在の日時を返したり、時間ベースのイベントのトリガをかけたりします。
  • 波形関数: ディスクリート出力ラインを介して波形を生成し、送信します。


BitStream

入出力関数

In-Sight 関数リファレンス

WriteWaveformClocked 関数を使用して送信するビットリストを集めます (最大 253 ビットを指定することができます)。

注意:
  • BitStream 関数にはプロパティシートはありません。この関数は変数ビットリストに基づいており、未処理の数字 (0 または　1) 、セル参照、またはセル範囲として表されます。1 つのセルに指定できる最大の文字列長は 255 文字です。255 を超える文字を使用して変数パラメータを指定すると、エラーメッセージが表示されます。変数パラメータを指定するために使用する文字列が 255 文字の制限を超える場合は、セル範囲を使用します。
  • ゼロ以外の数字は、ビット値 1 と認識されます。

BitStream (

ビット0,

[ビット1 ...]

)

BitStream の入力パラメータ

ビット0 | 最初のビットを指定します。
ビット1 | 2 番目以降のビットを指定します。

BitStream の結果出力

戻り値

ビットを含む [image] データ構造体。次の場合には、#ERR を返します。

  • 入力パラメータが無効である場合
  • ビットが非負数値として記録されている場合

関連項目

WriteWaveformClocked

Waveform 関数

データアクセス入出力関数


CombineOutputBuffers 関数

入出力関数

In-Sight 関数リファレンス

複数の FormatOutputBuffer 関数の出力を単一の [image] データ構造体として単一の通信パケットで送信されるように設定することができます。

注意: CombineOutputBuffers 関数は、要素のサイズに関係なく、最大 128 個の要素をサポートします。

CombineOutputBuffers 関数 (

フォーマットセル 1,

フォーマットセル 2,

フォーマットセル N

)

CombineOutputBuffers 関数 の入力パラメータ

フォーマットセル 1 | FormatOutputBuffer 関数によって出力された、参照される [image] データ構造体を指定します。 注意: Modbus TCP、EIP、または PROFINET 通信を使用している場合の出力データの最大長は 4,000 バイトです。SLMP または SLMP スキャナを使用しているときに、[Q/L シリーズ] で [コントローラタイプ] が選択されている場合、出力データの最大長は 1920 バイトです。SLMP または SLMP スキャナを使用しているときに、[FX シリーズ] で [コントローラタイプ] が選択されている場合、出力データの最大長は 128 バイトです。そのほかのすべての通信方法では最大長は 256 バイトです。
フォーマットセル 2 | FormatOutputBuffer 関数によって出力された、参照される [image] データ構造体を指定します。 注意: Modbus TCP、EIP、または PROFINET 通信を使用している場合の出力データの最大長は 4,000 バイトです。SLMP または SLMP スキャナを使用しているときに、[Q/L シリーズ] で [コントローラタイプ] が選択されている場合、出力データの最大長は 1920 バイトです。SLMP または SLMP スキャナを使用しているときに、[FX シリーズ] で [コントローラタイプ] が選択されている場合、出力データの最大長は 128 バイトです。そのほかのすべての通信方法では最大長は 256 バイトです。
フォーマットセル N | FormatOutputBuffer 関数によって出力された、参照される [image] データ構造体を指定します。 注意: Modbus TCP、EIP、または PROFINET 通信を使用している場合の出力データの最大長は 4,000 バイトです。SLMP または SLMP スキャナを使用しているときに、[Q/L シリーズ] で [コントローラタイプ] が選択されている場合、出力データの最大長は 1920 バイトです。SLMP または SLMP スキャナを使用しているときに、[FX シリーズ] で [コントローラタイプ] が選択されている場合、出力データの最大長は 128 バイトです。そのほかのすべての通信方法では最大長は 256 バイトです。

CombineOutputBuffers 関数 の結果出力

戻り値

フォーマットされたデータを含む [image] データ構造体。次の場合には #ERR を返します。

  • 入力パラメータが無効である場合
  • 結合した FormatOutputBuffer 関数のサイズが 4,000 バイトを超えた場合

関連項目

FormatOutputBuffer 関数


Event 関数

入出力関数

In-Sight 関数リファレンス

指定されたイベントトリガでスプレッドシートを更新します。Event 関数は、特定の入出力条件でのみスプレッドシートを更新する重要な依存関係として使用されます。

Event 関数(

トリガ,

手動

)

Event 関数関数の入力パラメータ

トリガ

In-Sight センサがオンライン時のイベントのトリガソースを指定します。

16 = 画像取り込みエラー | ERR: 画像取り込みミスが発生した場合、またはセンサとの接続が失われた場合に生成されます。 注意: このトリガを使用するには、AcquireImage 関数のプロパティシートの [トリガ] パラメータを [カメラ] に設定しておく必要があります。
17 = ディスクリート I/O エラー | トラックパルスのオーバランが発生した場合、またはトラックパルスのキューがいっぱいである場合に生成されます。
18 = シリアルポート 0 エラー | 実装されていません。
19 = シリアルポート 1 エラー | 実装されていません。
20 = ワークシートエラー | ジョブの実行中に、#ERR が初めてセルに返されたときに生成されます。
21 = システムエラー | 実装されていません。
22 = ネットワークエラー | TCPDevice 関数または WriteResult 関数を使用したときに、これらの関数が低レベルのネットワークライブラリからソケットエラーを受信した場合、TCPDevice 関数を使用したときに、パケットを受信したがジョブの実行中だったので処理できなかった場合、あるいは WriteFTP 関数または WriteImageFTP 関数を使用したときに、ネットワークパラメータ設定 (ホスト名、ユーザ名、パスワードなど) が無効であった場合に生成されます。
32 = 手動 | センサをオンラインにして、手動トリガを開始したときに生成されます。
33 = オンライン/オフライン | In-Sight センサのオンライン/オフライン状態が切り替わったときに生成されます。
35 = ジョブを開く 完了 | ジョブのロード後に生成されます。
39 = 画像取り込みジョブ完了 | 取り込みを開始したジョブの実行の最後に生成されます。 注意: このトリガを使用するには、AcquireImage 関数のプロパティシートの手動パラメータを有効にしておく必要があります。
49 ～ 60 = ディスクリート 0 ～ 11 | 対応するディスクレート入力がイベントトリガとして構成されているときに、指定された信号動作 (つまり、立ち上がりエッジ、立ち下がりエッジ、または両方) が発生した場合に生成されます。 注意: ライン10 と11 (トリガ 59 と60 = ディスクリートライン 10 と 11) は In-Sight 7000 シリーズビジョンシステムが CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続されている場合にのみ適用できます。
64 = シリアルポート 0 | 実装されていません。
65 = シリアルポート 1 | シリアル ポートが [DeviceNet] または [テキスト] モードで構成されているときに、データがこのシリアルポートで受信された場合に生成されます。
80 ～ 87 = ソフト 0 ～ 7 (デフォルト = ソフト 0) | SetEvent 関数、Button 関数、または Timer 関数、もしくは Set Event 関数または Set Event and Wait ネイティブモードコマンド、ソフトトリガが実行された場合に生成されます。

手動

In-Sight センサがオフラインの場合に、イベントトリガを手動で行うかどうかを指定します。

0 = OFF | オフラインの場合の手動によるイベントトリガを無効にします。手動が無効でシステムがオフラインの場合は、イベントはいかなる方法でも起動されません。
1 = ON (デフォルト) | オフラインの場合の手動によるイベントトリガを有効にします。手動が有効でシステムがオフラインの場合は、現在のトリガパラメータの値にかかわらず、手動によるトリガでイベントを起動します。

Event 関数関数の結果出力

戻り値

データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

入出力関数について

SetEvent 関数


ExportData

ExportData |
入出力関数 | In-Sight 関数リファレンス

ExportData 関数は、スプレッドシートであらかじめ定められたイベントが、あるセルデータ (.CXD) ファイルのエクスポートを示しているときに、このファイルに、スプレッドシートのセル内のデータを自動的にエクスポートする関数です。この関数により、あるビジョンシステムの 1 つのセルに入っているデータが、ローカルまたはネットワークに接続された In-Sight ビジョンシステムのフラッシュメモリ、FTP を経由した中央サーバ、またはローカルもしくはネットワークに接続されたビジョンシステムの RAM ディスクのいずれか 1 つにエクスポートされます。

ExportData 関数を使用して .CXD ファイルをエクスポートした場合、データは ExportData 関数の一部となり、編集できません。 エクスポートした .CXD ファイルをクリックすると、エクスポートしたデータタイプに対応したプロパティシートではなく、ExportData 関数のプロパティシートが開きます。ExportData 関数でエクスポートできるデータのタイプは、DelayLine、CountPassFail、Calibrate、CalibrateAdvanced、FindPatterns、OCRMax、OCRMaxSettings、TrainPatMaxPattern、および TrainFont です。

注意: ExportData 関数では、PC 上のスニペットフォルダに .CXD ファイルをエクスポートすることはできません。

  • ExportData 関数の入力パラメータ
  • ExportData 関数の結果出力
  • ExportData 関数の例
  • 関連項目
警告:
  • ExportData 関数を使用してデータを書き込むと、ジョブがブロックされることがあります。つまり、ジョブの速度が低下し、ジョブの処理時間がトリガ期間よりも長くなった場合に、ビジョンシステムによってトリガがキューされたり、失敗したりすることがあります。
  • ローカルまたはネットワークに接続された In-Sight ビジョンシステムのフラッシュメモリへの書き込みに ExportData 関数を使用する場合、1 秒あたり 0.5 KB を超えるデータをフラッシュメモリに 16 回連続で書き込むと、警告が発せられ、ジョブの速度が低下しますので注意してください。この場合、データが欠落、または無視されることはありません。In-Sight ビジョンシステムのフラッシュメモリは、1 ページあたり約 100,000 回の書き込みで寿命となります。 したがって、ExportData 関数を使用する場合は、ビジョンシステムのフラッシュメモリを保護するための予防措置を講じておく必要があります。

ExportData の入力パラメータ

ExportData (

イベント,

ホスト名,

ユーザ名,

パスワード,

ファイル名,

セル

)

イベント

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体

注意: データをフラッシュメモリに書き込んでいる最中に、イベントが [image] データ構造体に設定されると、#ERR が返されます。

  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

注意: ExportData 関数のデフォルトイベントパラメータ設定が 0 で、この設定が 0 のままである場合、[Export] ボタンが ExportData セルの隣に作成されます。

ホスト名

ファイルが保存される場所を示します。ファイルは、フラッシュメモリ経由でローカルまたはネットワークに接続されたビジョンシステム、FTP を経由した外部サーバ、またはローカルもしくはネットワークに接続されたビジョンシステムの RAM ディスクに格納できます。

注意:

  • フラッシュメモリにデータをエクスポートする場合、[ホスト名] フィールドは空欄のまま（例: ""）にしておく必要があります。
  • インポート先に FTP サーバが指定されているときに、データ転送時にこの FTP サーバが使用できなかった場合、タイムアウトまで数秒かかります。タイムアウトした場合、In-Sight Explorer はビジョンシステムから切断されることがあります。

ユーザ名

ファイルの格納先ビジョンシステムまたはデバイスのファイルシステムにアクセスするユーザの名前を指定します。データをローカルビジョンシステムのフラッシュメモリ、または RAM ディスクにエクスポートする場合は、このフィールドを空白のままにしておくことができます。

パスワード

ファイルの格納先ビジョンシステムまたはデバイスのファイルシステムへのアクセスに使用するパスワードを指定します。データをローカルビジョンシステムのフラッシュメモリ、または RAM ディスクにエクスポートする場合は、このフィールドを空白のままにしておくことができます。

注意: ホスト名、ユーザ名、およびパスワードパラメータは、インポート先が FTP の場合のみ必要です。

ファイル名

格納する情報の識別に使用されるファイルの名前を指定します。目的の場所に同じ名前のファイルがすでに存在する場合、既存のファイルは上書きされます。RAM ディスクからエクスポートする場合、ファイル名の前に、"ramdisk/" を付けて指定する必要があります。例えば、"ramdisk/PartXPattern" と指定します。ここでは大文字と小文字は区別されません。

注意: ファイル名に拡張子をつける必要はありません。 テキスト文字列に自動的に追加されます。異なるファイル名拡張子を指定した場合、#ERR が返されます。

セル

エクスポートされるセルを表します。GetString 参照など、ほかの構造体への参照がセルに含まれている場合、実際にこのセルに含まれている値がエクスポートされます。

ExportData の出力

戻り値

FTP を経由した外部サーバ、ローカルまたはネットワークに接続された In-Sight ビジョンシステムのフラッシュメモリ、またはローカルもしくはネットワークに接続されたビジョンシステムの RAM ディスクに格納可能な .CXD ファイルが作成されます。

注意: ExportData 関数の結果として #ERR が返された場合、GetErrorString を使用して、原因を判定することができます。

次の 3 つの条件のうち 1 つが満たされた場合、ExportData 関数により .CXD ファイルがエクスポートされます。

  • ExportData 関数のプロパティシートの [OK] ボタンが押された。
  • イベントが受信された。
  • イベントパラメータがオン（または参照先のセルが 0 以外）のとき、ExportData 関数の入力パラメータの 1 つが更新された。

注意: ExportData 関数は、オフラインモードでも、データをエクスポートします。

ExportData 関数の例

ExportData(A8,"FTPServer1","operator1","","PartXPattern",H7)

セル A8 でイベントがトリガされた後、スプレッドシートが更新されるたびに、セル H7 にあるデータが、ファイル PartXPattern.cxd として、FTPServer1 に書き込まれます。ユーザ名は operator1 と指定されています。 また、パスワードは空白です。

EV ExportData(1,"","","","FindPatterns",F4)

  1. FindPatterns 関数がセル F4 に挿入されます。
  2. Telnet セッションが開かれ、Evaluate Native Mode コマンド、EV ExportData(1,"","","","FindPatterns",F4) が実行されます。セル F4 の FindPatterns 関数は、ファイル FindPatterns.cxd に書き込まれ、ローカルビジョンシステムのフラッシュメモリに保存されます。データはビジョンシステムに書き込まれるので、ユーザ名やパスワードは必要ありません。

関連項目

Event

Import/Export Cells 関数

ImportData

入出力関数について


FormatInputBuffer 関数

入出力関数

In-Sight 関数リファレンス

ユーザが、ReadCCLinkBitBuffer 関数、ReadCCLinkWordBuffer 関数、ReadDeviceNetBuffer 関数、ReadEIPBuffer 関数、ReadDeviceNetBuffer 関数、ReadModbusBuffer 関数、ReadProfinetBuffer 関数、

ReadMC 関数、および ReadUserDataBuffer 関数から受け取るデータのフォーマットを設定できるようにします。[関数の挿入] ダイアログから FormatInputBuffer 関数 を選択した場合、[フォーマット出力バッファ] ダイアログが自動的に表示されます。

FormatInputBuffer 関数 (

フォーマット

)

FormatInputBuffer 関数 の入力パラメータ

フォーマット

自動設定に使用されるデータタイプとエレメントのサイズ (単位はバイト) を指定します。

注意: Modbus TCP、EIP、または PROFINET 通信を使用している場合の入力データの最大長は 4,000 バイトです。SLMP または SLMP スキャナを使用しているときに、[Q/L シリーズ] で [コントローラタイプ] が選択されている場合、入力データの最大長は 1920 バイトです。SLMP または SLMP スキャナを使用しているときに、[FX シリーズ] で [コントローラタイプ] が選択されている場合、入力データの最大長は 128 バイトです。そのほかのすべての通信方法では最大長は 256 バイトです。

FormatInputBuffer 関数 の結果出力

戻り値

フォーマット後のデータを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

FormatOutputBuffer 関数

ReadCCLinkBitBuffer 関数

WriteCCLinkBitBuffer 関数

ReadCCLinkWordBuffer 関数

WriteCCLinkWordBuffer 関数

ReadDeviceNetBuffer 関数

WriteDeviceNetBuffer 関数

ReadEIPBuffer 関数

WriteEIPBuffer 関数

ReadDeviceNetBuffer 関数

ReadModbusBuffer 関数

WriteModbusBuffer 関数

ReadProfinetBuffer 関数

WriteProfinetBuffer 関数

ReadUserDataBuffer 関数


FormatOutputBuffer 関数

入出力関数

In-Sight 関数リファレンス

ユーザが、 WriteCCLinkBitBuffer 関数、WriteCCLinkWordBuffer 関数、WriteDeviceNetBuffer 関数、WriteEIPBuffer 関数、WriteModbusBuffer 関数、WriteProfinetBuffer 関数、WriteMC 関数、および WriteResultsBuffer 関数に送信されるデータのフォーマットを設定できるようにします。[関数の挿入] ダイアログから FormatOutputBuffer 関数 を選択した場合、[フォーマット出力バッファ] ダイアログが自動的に表示されます。

FormatOutputBuffer 関数 (

WithErr,

フォーマット,

値1,

[値2,

...]

)

FormatOutputBuffer 関数 の入力パラメータ

WithErr

入力エラーが発生している場合でも、関数が有効なバッファを返すかどうかを指定します。

0 = 入力エラーが発生している場合でも、データはバッファに入れられます (デフォルト)。

1 = 関数は、#ERR を返し、データはバッファに格納されません。

フォーマット

自動設定に使用されるデータタイプとエレメントのサイズ (単位はバイト) を指定します。

注意:

  • Modbus TCP、EIP、または PROFINET 通信を使用している場合の出力データの最大長は 4,000 バイトです。SLMP または SLMP スキャナを使用しているときに、[Q/L シリーズ] で [コントローラタイプ] が選択されている場合、出力データの最大長は 1920 バイトです。SLMP または SLMP スキャナを使用しているときに、[FX シリーズ] で [コントローラタイプ] が選択されている場合、出力データの最大長は 128 バイトです。そのほかのすべての通信方法では最大長は 256 バイトです。

  • この関数では、数式に最大 248 文字を使用できます。16 ビット整数 1 つは 3 文字であるため、16 ビット整数を使用する場合、出力データの最大長は 140 バイトになります。この上限を超えた場合、関数から「Error String too long」が返されます。出力データが 140 バイトを超える場合は、CombineOutputBuffers 関数を使用します。

値

値の可変長リストを指定します。

FormatOutputBuffer 関数 の結果出力

戻り値

フォーマット後のデータを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

FormatInputBuffer 関数

ReadCCLinkBitBuffer 関数

WriteCCLinkBitBuffer 関数

ReadCCLinkWordBuffer 関数

WriteCCLinkWordBuffer 関数

ReadDeviceNetBuffer 関数

WriteDeviceNetBuffer 関数

ReadEIPBuffer 関数

WriteEIPBuffer 関数

ReadDeviceNetBuffer 関数

ReadModbusBuffer 関数

WriteModbusBuffer 関数

ReadProfinetBuffer 関数

WriteProfinetBuffer 関数

WriteResultsBuffer 関数

CombineOutputBuffers 関数


ImportData

ImportData |
入出力関数 | In-Sight 関数リファレンス

ImportData 関数は、スプレッドシートであらかじめ定められたイベントが、あるセルデータ (.CXD) ファイルのロードを示しているときに、このファイルをスプレッドシートに自動的に挿入する関数です。ImportData 関数を使用して、ExportData 関数を通じてエクスポートされ、.CXD ファイルとして保存されたデータが、次のいずれかの場所から一度に 1 セルずつインポートされます。ローカル、またはネットワークに接続された In-Sight センサのフラッシュメモリ、FTP を経由した中央サーバ、またはローカルまたはネットワークに接続されたセンサの RAM ディスク。

ImportData 関数を使用して .CXD ファイルをインポートした場合、データは ImportData 関数の一部となり、編集できません。 インポートした .CXD ファイルをクリックすると、インポートしたデータタイプに対応したプロパティシートではなく、ImportData 関数のプロパティシートが開きます。ImportData 関数は、次のデータタイプをインポートできます。DelayLine、CountPassFail、Calibrate、CalibrateAdvanced、FindPatterns、OCRMax、OCRMaxSettings、TrainPatMaxPattern、および TrainFont。

注意: ImportData 関数は、PC 上の スニペット フォルダからは .CXD ファイルをインポートできません。

  • ImportData 関数の入力パラメータ
  • ImportData 関数の出力
  • ImportData 関数の例
  • 関連項目

ImportData の入力パラメータ

ImportData (

イベント,

ホスト名,

ユーザ名,

パスワード,

ファイル名

)

イベント

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

ホスト名

ファイルの保存場所を示します。ファイルは、フラッシュメモリ経由でローカルセンサ、FTP 経由で外部サーバ、またはローカルもしくはネットワークに接続されたセンサの RAM ディスクに格納できます。

注意: フラッシュメモリ、または RAM ディスクからデータをインポートする場合、[ホスト名] フィールドは空欄のまま（例: ""）にしておく必要があります。インポート先に FTP サーバが指定されているときに、データ転送時にこの FTP サーバが使用できなかった場合、タイムアウトまで数秒かかります。 タイムアウトした場合、In-Sight Explorer はセンサから切断される可能性があります。

ユーザ名

ファイルの格納先センサまたはデバイスのファイルシステムにアクセスするユーザの名前を指定します。

パスワード

ファイルの格納先センサまたはデバイスのファイルシステムにアクセスするためのパスワードを指定します。

注意: ホスト名、ユーザ名、およびパスワードパラメータは、インポート先が FTP の場合のみ必要です。

ファイル名

格納する情報の識別に使用されるファイルの名前を指定します。RAM ディスクからインポートする場合、ファイル名の前に、"ramdisk/" を付けて指定する必要があります。 例えば、"ramdisk/PartXPattern" と指定します。 ここでは大文字と小文字は区別されません。

注意: ファイル名に拡張子をつける必要はありません。 テキスト文字列に自動的に追加されます。異なるファイル名拡張子を指定した場合、#ERR が返されます。

ImportData の出力

インポートされたデータは、エクスポートされたセルに含まれるデータのデータ構造に対応します。例えば、整数をインポートすると、セルには整数値が表示されます。また、 [image] 構造体をインポートすると、セルには [image] 構造体が表示されます。ただし、 [image] 構造体をダブルクリックすると、ImportData 関数のプロパティシートが表示されます。 構造体のプロパティシートではない点に注意してください。

次の 4 つの条件のうち 1 つが満たされた場合、ImportData 関数により .CXD ファイルがインポートされます。

  • ImportData プロパティシートの [OK] ボタンが押された。
  • イベントが受信された。
  • イベントパラメータがオン（または参照先のセルが 0 以外）のとき、ImportData 関数の入力パラメータの 1 つが更新された。
  • ImportData 関数を使用しているジョブがロードされた。

注意: ImportData 関数は、オフラインモードでも、データをインポートします。

ImportData の例

ImportData(A0,"192.168.0.100","admin","","PartXPattern")

この関数は、画像の取り込み後にスプレッドシートが更新されるたびに、IP アドレス 192.168.0.100 にあるサーバから、PartXPattern.cxd という名前のファイルとしてデータをインポートします。ユーザ名は admin と指定されています。 また、パスワードは空白です。

関連項目

Event

ExportData

セルのインポート/エクスポート

入出力関数について


SetEvent 関数

SetEvent 関数 |
入出力関数 | In-Sight 関数リファレンス

現在のジョブ実行の完了後に実行する Event 関数をキューに入れます。この関数は、AcquireImage 関数のソフトトリガのソースとしても使用することができます。

  • SetEvent 関数の入力パラメータ
  • SetEvent 関数の結果出力
  • SetEvent 関数の例
  • 関連項目
注意:
  • In-Sight ビジョンシステムが格納できるキュー内の最大イベント数は 30 です。
  • Repeat 関数または RepeatUntil 関数を使用してセルの繰り返しの反復を作成する場合、SetEvent 関数は、反復されるセルの外に配置する必要があります。セルの中に配置すると、SetEvent 関数はキューに入れられる最大イベント数を超えてしまい、イベントトリガに失敗します。
  • In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

SetEvent 関数関数の入力パラメータ

SetEvent 関数 (

トリガ

)

トリガ

イベントのトリガ信号を指定します。

-1 = なし (デフォルト) | トリガ信号は送られません。
32 = 手動 | 手動トリガをかけます。
80 ～ 87 = ソフト 0 ～ 7 | ソフトトリガイベント信号が送られます。

SetEvent 関数関数の結果出力

戻り値

トリガの信号値。入力パラメータが無効の場合は #ERR が返されます。

SetEvent 関数 例

SetEvent 関数は、条件付きで有効になるセル状態の機能を使用してスプレッドシート内のイベントをトリガするために使用することもできます。次の例では、別のスプレッドシートのセル状態から条件付きで有効または無効にする SetEvent 関数を使用して SetEvent 関数をトリガする方法を示します。この例では、スプレッドシートのセルをモニタし、0 と 1 の間で変化したかを判別します。これにより、SetEvent 関数を有効にするか、無効にするかを決定します。

  1. この例では、スプレッドシートを下図に示すとおりに設定します。

  2. A3 の「Logic Cell」は B3 の SetEvent 関数によってモニタされます。セル D3 の Count は変化の回数をモニタします。

  3. セル A3 が 1 から 0 に変わり、再び 1 に変わると、B3 の SetEvent 関数はソフトトリガイベントを発行し、D3 の Count が増分されます。

関連項目

  • 入出力関数について
  • Event 関数


ディスクリート I/O 関数

入出力関数

In-Sight 関数リファレンス

ディスクリート I/O 関数は、In-Sight ビジョンシステムのパラレルのディスクリート入出力の読み取りと書き込みを行います。

  • ReadDiscrete 関数:　ディスクリート入力ポートから任意のビット幅のステータスを読み取ります。
  • WriteDiscrete 関数:　ディスクリート出力ポートへ任意のビット幅でデータを書き込みます。

次のとおり、In-Sight ビジョンシステムごとに直接接続 (組み込み) 入力と出力の数は異なります。

In-Sight ビジョンシステム | 直接接続 (組み込み) 入力1 | 直接接続 (組み込み) 出力
In-Sight 5000 シリーズ | なし | 高速出力× 2 ユーザ設定可能 LED × 2 (緑・赤)
In-Sight 7000 シリーズ | 汎用入力× 3 | 高速出力× 4 ユーザ設定可能 LED × 2 (緑・赤)
In-Sight Micro シリーズ | なし | 高速出力× 2 ユーザ設定可能 LED × 2 (緑・赤)
1 In-Sight 5000 シリーズ、7000 シリーズ、および Micro シリーズのビジョンシステムには、専用の取り込みトリガ入力が 1 つあります。詳細については、AcquireImage 関数のトピックのトリガパラメータを参照してください。また、In-Sight Explorer ソフトウェアに収録されているビジョンシステムのインストールガイドも参照してください。

I/O モジュールを使用してディスクリート入力および出力を追加できます。ディスクリート入力の数は、次のように、I/O モジュールの接続状況によって異なります。

I/O モジュール | サポートされている In-Sight ビジョンシステム | ディスクリート入力チャネル | ディスクリート出力チャネル
CIO-1400 | In-Sight 5000 シリーズ (5604 を除く) | 汎用入力× 7 | 汎用出力× 6
CIO-1450 | In-Sight 5000 シリーズ (5604 を除く) | 汎用入力× 8 | 汎用出力× 8
CIO-1460 | In-Sight 5000 シリーズ (5604 および 5605 を除く) | 汎用入力× 8 | 汎用出力× 8
CIO-MICRO および CIO-MICRO-CC | In-Sight 5100 および 5400 シリーズ1、5600 シリーズ、In-Sight 7000 シリーズ、In-Sight Micro シリーズ | 汎用入力× 8 | 汎用出力× 8
CIO-WENET | In-Sight Micro シリーズ | 汎用入力× 8 | 汎用出力× 8
1 CIO-MICRO および CIO-MICRO-CC I/O モジュールがサポートしているのは、128MB 以上の不揮発性フラッシュメモリを持つ In-Sight 5100 シリーズ、および 5400 シリーズのビジョンシステムのみです。モデルはタイプ番号 (821-xxxx-xx) で特定できます。このタイプ番号は、ビジョンシステムに添付されているラベルに記載されています。モデル、およびタイプ番号と不揮発性フラッシュメモリの一覧については、ここをクリックしてください。

注意:
  • In-Sight 7000 シリーズのビジョンシステムでは、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールの同時接続がサポートされています。
  • In-Sight 7000 シリーズビジョンシステムの高速出力は、ビジョンシステムが電源および I/O ブレークアウトケーブルに接続されている場合のみサポートされます。
  • In-Sight 7000 シリーズビジョンシステムの直接接続 (組み込み) 入力は、ビジョンシステムが電源および I/O ブレークアウトケーブルに接続されている場合のみサポートされます。
  • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
  • In-Sight ビジョンシステムを Opto 22、Wago、Sixnet など、ほかのベンダー製の標準の Ethernet I/O 製品との通信にも使用すると、I/O チャネルの数を実質的に無限に増やすことができます。ただし、Modbus パケットタイプ通信用に設定された In-Sight TCPDevice 関数を使用して、これらのビジョンシステムのイーサネットベースの入出力を設定する必要があります。
  • パルスディスクリート出力が CIO-1450 I/O モジュールから送信されるときには、パルス幅が指定より 10 ミリ秒長くなることがあります。
  • CIO-1460 I/O モジュールの電源を入れ直すと、ディスクリート出力は初期設定時に約 250 ミリ秒間、発光することがあります。

警告
  • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの TRIGGER+、TRIGGER-、HS OUT 0、HS OUT 1、および HS COMMON ターミナルはサポートされません。リモートデバイスからこれらのターミナルにリード線を接続しないでください。

  • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの I/O ポート (DB15) はサポートされていません。このポートには何も接続しないでください。

関連項目

[ディスクリート入力設定]

[ディスクリート出力設定]

[ディスクリート出力詳細]

[I/O モジュールの設定]


ReadCameraTrigger 関数

入出力関数 → ディスクリート I/O

In-Sight 関数リファレンス

In-Sight センサの画像取り込みトリガ入力の状態を読み取ります。

ReadCameraTrigger 関数 (

イベント

)

ReadCameraTrigger 関数の入力パラメータ

イベント

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体（デフォルト）
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

ReadCameraTrigger 関数の結果出力

戻り値

入力の状態を表す値。0 =オフ、1 =オン。

関連項目

入出力関数について


ReadDiscrete 関数

ReadDiscrete 関数 |
入出力関数 → ディスクリート I/O | In-Sight 関数リファレンス

ディスクリート入力ポートから任意のビット幅のステータスを読み取ります。

注意:
  • In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。
  • この関数を有効にするには、In-Sight システムをオンラインにする必要があります。

ReadDiscrete 関数関数の入力パラメータ

ReadDiscrete 関数 (

イベント,

開始ビット,

ビット数

)

イベント

読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

開始ビット

読み取る範囲の最初のビットを指定します。

In-Sight 5000 シリーズおよび Micro シリーズ:　(0 ～ 9、デフォルト = 0)

In-Sight 7000 シリーズ:　(0 ～ 13、デフォルト = 0)

ビット数

読み取る範囲内のビット数を指定します。

In-Sight 5000 シリーズおよび Micro シリーズ:　(1 ～ 10、デフォルト = 10)

In-Sight 7000 シリーズ:　(1 ～ 14、デフォルト = 10)

ReadDiscrete 関数関数の結果出力

戻り値

読み取った整数値。入力パラメータが無効であれば #ERR を返します。

関連項目

WriteDiscrete 関数

入出力関数について


WriteDiscrete 関数

入出力関数 → ディスクリート I/O

In-Sight 関数リファレンス

ディスクリート出力ポートへ任意のビット幅でデータを書き込みます。

注意:

  • この関数を有効にするには、In-Sight システムをオンラインにする必要があります。
  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。
  • WriteDiscrete 関数を含む In-Sight Explorer .JOB ファイルを CIO-1400 I/O モジュールが追加された In-Sight センサにロードする場合は、WriteDiscrete の開始ビットパラメータとビット数パラメータを変更し、I/O ラインの新しい構成を反映する必要があります。
  • In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

WriteDiscrete 関数関数の入力パラメータ

WriteDiscrete 関数 (

イベント,

開始ビット,

ビット数,

値

)

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル。
  • Button 関数を含んでいるセル

注意:　デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスが ON の場合、関数への入力が更新されると、関数は必ず実行されます。

開始ビット

書き込む範囲の最初のビットを指定します。

In-Sight 5000 シリーズおよび Micro シリーズ:　(0 ～ 11、デフォルト 0)

In-Sight 7000 シリーズ:　(0 ～ 13、デフォルト 1)

ビット数

書き込む範囲内のビット数を指定します。

In-Sight 5000 シリーズおよび Micro シリーズ:　(1 ～ 12、デフォルト 1)

In-Sight 7000 シリーズ:　(1 ～ 14、デフォルト 1)

値

書き込む正の整数値を指定します。

In-Sight 5000 シリーズおよび Micro シリーズ:　(0 ～ 4095、デフォルト 0)

In-Sight 7000 シリーズ:　(0 ～ 16383、デフォルト 0)

WriteDiscrete 関数関数の結果出力

戻り値

書き込まれた値。入力パラメータが無効であれば #ERR を返します。

関連項目

ReadDiscrete 関数

入出力関数について


マシンステータス関数

マシンステータス関数 |
入出力関数 | In-Sight 関数リファレンス

はIn-Sight センサの動作ステータス情報を保存します。

  • PushMSStack 関数:マシンステータススタックの各バッファのすべての内容を次のバッファに移動させます。
  • WriteMSStack 関数:スプレッドシートからマシンステータススタックの最初のバッファの動作ステータス情報に、ユーザが指定したテキスト文字列を追記します。


PushMSStack 関数

PushMSStack 関数 |
入出力関数 → マシンステータス | In-Sight 関数リファレンス

マシンステータススタックの各バッファのすべての内容を次のバッファに移動させます。

PushMSStack 関数 (

イベント

)

マシンステータススタックのバッファ 0 の動作ステータス情報に、ユーザが指定した文字列を追記するには、WriteMSStack 関数を使用してください。スタックに保存されているデータにアクセスするには、ネイティブモード接続経由で、またはマシンステータスポートから、GetMSBuffer コマンドを使用してください。

注意: スタックのすべてのバッファに情報が格納されている場合、バッファ 7 のデータは破棄されます。

PushMSStack 関数の入力パラメータ

イベント

マシンステータススタックに動作ステータス情報を移動させる更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

PushMSStack 関数の結果出力

戻り値

データ構造体。入力イベントが無効であれば #ERR を返します。

関連項目

Event 関数

WriteMSStack 関数

ステータスビュー

入出力関数について


WriteMSStack 関数

入出力関数 → マシンステータス

In-Sight 関数リファレンス

スプレッドシートが更新されると、スプレッドシートからマシンステータススタックのバッファ 0 の動作ステータス情報に、ユーザが指定した文字列を追記します。

マシンステータススタックの各バッファのすべての内容を次のバッファに移動させるには、PushMSStack 関数を使用してください。スタックに保存されているデータにアクセスするには、ネイティブモード接続経由で、またはマシンステータスポートから、GetMSBuffer コマンドを使用してください。

WriteMSStack 関数 (

イベント,

文字列

)

注意: この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。

WriteMSStack 関数の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 （デフォルト）
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

注意: デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスがオンの場合、関数への入力が更新されると、関数は必ず実行されます。

文字列

文字列または文字列を含むセルへの参照。区切り文字として使用される文字 （カンマ （,）、セミコロン （;）、CRLF: 復帰 (Carriage Return) コードと改行 (Line Feed) コードです。 CRLFなど) を含め、最大 255 文字まで指定できます。ユーザ定義の XML タグを文字列に含めることもできます。

WriteMSStack 関数の結果出力

戻り値

追記するテキストを含んでいる [image] データ構造体。入力文字列が無効な場合は #ERR を返します。

関連項目

Event 関数

PushMSStack 関数

ステータスビュー

入出力関数について


メッセージ関数

メッセージ関数 |
入出力関数 | In-Sight 関数リファレンス

ネイティブモード接続経由で In-Sight センサからのテキスト文字列の読み出しや In-Sight センサへのテキスト文字列の書き込みを行います。

  • ReadMessage 関数:Send Message コマンドを使用して、リモートネットワークホストまたはシリアルデバイスによって送信されたテキスト文字列を読み取ります。
  • WriteMessage 関数: ReadMessage 関数が実行されたときにテキスト文字列を出力します。WriteMessage 関数は、ReadMessage 関数によって使用されるのと同じ接続経由でテキスト文字列を出力します。


ReadMessage 関数

ReadMessage 関数 |
入出力関数 → メッセージ | In-Sight 関数リファレンス

ネイティブモード接続を使用して Send Message コマンドで送信された文字列を読み取ります。この関数は、指定されたイベント発生時に文字列を読み取ります。

ReadMessage 関数 (

イベント

)

注意: シリアルポート経由のネイティブモード接続の場合は、シリアルポートのモードを「ネイティブ」に設定する必要があります。

ReadMessage 関数の入力パラメータ

イベント

文字列を読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

ReadMessage 関数の結果出力

戻り値

読み込むテキスト文字列を含んでいる [image] データ構造体。入力イベントの値が無効な場合は #ERR を返します。

関連項目

Event 関数

WriteMessage 関数

シリアルポートのモード

入出力関数について


WriteMessage 関数

入出力関数 → メッセージ

In-Sight 関数リファレンス

スプレッドシートが更新されると、ネイティブモード接続経由でテキスト文字列を出力します。WriteMessage 関数は、ReadMessage 関数によって使用されるのと同じ接続経由で文字列を出力します。

WriteMessage 関数 (

イベント,

文字列

)

注意:

  • ネイティブモード接続を確立するには、ReadMessage 関数をスプレッドシートに挿入する必要があります。
  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。

WriteMessage 関数の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 （デフォルト）
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

注意: デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスがオンの場合、関数への入力が更新されると、関数は必ず実行されます。

文字列

文字列または文字列を含むセルへの参照。255 文字まで入力できます。

WriteMessage 関数の結果出力

戻り値

出力する文字列を含んでいる [image] データ構造体。入力文字列の値が無効な場合は #ERR を返します。

関連項目

Event 関数

ReadMessage 関数

シリアルポートのモード

入出力関数について


ネットワーク関数

入出力関数

In-Sight 関数リファレンス

ほとんどのネットワーク関数は、ネットワーク上の TCP/IP デバイスと In-Sight センサでデータを共有するために使用されます。通常のネットワーク関数に加え、FTP サーバ機能を使用してネットワークの記憶装置に自動的に画像の保存を可能にする WriteImageFTP 関数があります。

  • ClearResultsBuffer 関数: 指定したイベントの後、ファクトリプロトコルの結果バッファからバッファされた結果をクリアします。
  • GetByteCount 関数: FormatOutputBuffer、ReadCCLinkBitBuffer、ReadCCLinkWordBuffer、ReadEIPBuffer、ReadLatchedUserDataBuffer、ReadModbusBuffer、ReadProfinetBuffer、または ReadUserDataBuffer 関数に書き込まれたバイト数を返します。
  • GetConnectionStatus 関数: 指定されたプロトコルの接続ステータスを返します。
  • GetRemoteAddress 関数: UDP サーバが最後に受信したメッセージの送信元 IP アドレスを返します。
  • GetRemotePort 関数: UDP サーバが最後に受信したメッセージのクライアントのポート番号を返します。
  • Packet 関数: TCPDevice 関数によって読み出しまたは送信される、バイナリ文字列パケットフォーマットを定義します。
  • QueryDevice 関数: 指定した TCP/IP クライアントデバイスにデータを出力し、そのデバイスからの入力データを受信します。
  • ReadCCLinkBitBuffer 関数: CC-Link 通信を利用する三菱電機 PLC およびモーションコントローラ (MC) によって送信されたデータを読み取り (消費し) ます。
  • ReadCCLinkWordBuffer 関数: CC-Link 通信を利用する三菱電機 PLC/MC によって送信されたデータを読み取り (消費し) ます。
  • ReadDevice 関数: TCP/IP クライアントデバイスから In-Sight センサへデータをインポートします。
  • ReadEIP 関数: EtherNet/IP プロトコルを使用するクライアントによって生成されたデータを読み取り (消費し) ます。
  • ReadEIPBuffer 関数: リモートクライアントにより、EtherNet/IP プロトコルを使用して、FormatInputBuffer 関数の作成した、参照される [image] 構造体に送信されたデータを読み取り (消費し) ます。
  • ReadLatchedUserDataBuffer 関数: バッファ画像取り込みモードの場合に、FormatInputBuffer 関数に含まれているデータを読み取ります。
  • ReadMC 関数: SLMP 通信を利用する三菱電機 PLC/MC によって送信されたデータを読み取り (消費し) ます。
  • ReadModbusBuffer 関数: Modbus プロトコルを利用するリモートクライアントによって送信されたデータを読み取り (消費し) ます。
  • ReadProfinetBuffer 関数: リモートクライアントにより、Profinet プロトコルを使用して、FormatInputBuffer 関数の作成した、参照される [image] 構造体に送信されたデータを読み取り (消費し) ます。
  • ReadUserDataBuffer 関数: 現在有効なファクトリプロトコルのユーザデータフィールドのデータを読み取り (消費し) ます。
  • ReadResult 関数: ネットワークに接続された In-Sight センサ（「送信側」）から値をインポートします。
  • TCPDevice 関数: In-Sight スプレッドシートのセルを TCP/IP デバイス（クライアントまたはサーバ）として定義します。
  • UDPDevice 関数: UDP (User Datagram Protocol) を介してネットワーク接続された別のデバイスと通信するための単一の接続を定義します。
  • WriteCCLinkBitBuffer 関数: CC-Link 通信を利用する三菱電機 PLC/MC にデータを書き込みます。
  • WriteCCLinkWordBuffer 関数: CC-Link 通信を利用する三菱電機 PLC/MC にデータを書き込みます。
  • WriteDevice 関数: In-Sight センサから TCP/IP サーバデバイスにデータをエクスポートします。
  • WriteEIP 関数: EtherNet/IP プロトコルを使用して読み取る（消費する）クライアントデバイス用に、指定したパケット要求間隔（RPI）でデータを出力します。
  • WriteEIPBuffer 関数: EtherNet/IP プロトコルを使用して読み取る (消費する) クライアントデバイスで指定されたパケット要求間隔 (RPI) で、FormatOutputBuffer 関数の作成した、参照される [image] 構造体にデータを書き込みます。
  • WriteFTP 関数: ネットワーク上の FTP サーバの指定したファイルにテキスト文字列を追記します。
  • WriteImageFTP 関数: FTP サーバを使用している転送先のシステムへ現在の画像を転送します。
  • WriteImageSFTP 関数: SFTP サーバを使用している転送先のシステムへ現在の画像を転送します。
  • WriteMC 関数: SLMP 通信を利用する三菱電機 PLC/MC にデータを書き込みます。
  • WriteModbusBuffer 関数: FormatOutputBuffer 関数によって生成された、参照される [image] 構造体からデータを書き込み、Modbus プロトコルを使用して、リモートクライアントデバイスで使用できるようにします。
  • WriteProfinetBuffer 関数: Profinet プロトコルを使用して読み取る (消費する) クライアントデバイスで指定されたパケット要求間隔 (RPI) で、FormatOutputBuffer 関数の作成した、参照される [image] 構造体にデータを書き込みます。
  • WriteResult 関数: ネットワークに接続された In-Sight センサ（「受信側」）に値をエクスポートします。
  • WriteResultsBuffer 関数: FormatOutputBuffer [image] 構造体にデータを書き込みます。このデータは、有効なファクトリ通信プロトコルによってクライアントデバイスが読み取り (消費し) ます。
  • WriteSMTP 関数: SMTP サーバを介して電子メールメッセージを送信します。


ClearResultsBuffer 関数

ClearResultsBuffer 関数 |
入出力関数 → ネットワーク | In-Sight 関数リファレンス

指定したイベントの後、ファクトリプロトコルの結果バッファからバッファされた結果をクリアします。関数が指定したイベントを受け取ると、次のことが起こります。

  • 結果バッファのキューに入れられた結果はすべて削除されます (結果バッファが有効な場合)。
  • 現在有効なファクトリプロトコルを介してレポートされた現在の結果はクリアされます (結果 ID、結果コード、およびすべての結果データを含む)。
  • Results Valid ビットはクリアされます。

ClearResultsBuffer 関数の実行後、WriteResultsBuffer 関数を使用して追加の結果をキューに入れることができます。

注意:　結果バッファのクリア中は、ビジョンオブジェクトがロックされるため、ファクトリ通信プロトコルを介した In-Sight ビジョンシステムと PLC との間の通信は、結果のクリア操作が完了するまで遅くなります。

ClearResultsBuffer 関数(

イベント

)

ClearResultsBuffer 関数関数の入力パラメータ

イベント

結果バッファからのデータのクリアをトリガするスプレッドシートイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

ClearResultsBuffer 関数関数の結果出力

戻り値

値 1。入力パラメータが無効な場合は #ERR が返されます。

ClearResultsBuffer 関数例

In-Sight ビジョンシステムがオフラインからオンラインに変わったときに、ClearResultsBuffer 関数を使用して PROFINET ファクトリ通信プロトコルの結果バッファをクリアします。

  1. 開始するため、PLC が結果バッファを有効にします。
  2. 次に、PLC が画像取り込みをトリガします。
  3. In-Sight ビジョンシステムは、画像を取り込み、WriteResultsBuffer 関数を使用して結果を結果バッファに送信することで応答します。
  4. PLC が別の画像取り込みをトリガします。
  5. 再び、In-Sight ビジョンシステムは、画像を取り込み、WriteResultsBuffer 関数を使用して結果を結果バッファに送信することで応答します。
  6. 何かが生産ラインで発生し、生産マシンをリセットする必要があります。
  7. PLC はスプレッドシート内でイベントをトリガし、In-Sight ビジョンシステムの状態をリセットします。

注意: 2 通りの方法が考えられます。1 番目の方法では、PLC がオンライン → オフライン → オンラインといった移行をトリガし、ビジョンシステムの状態をリセットします。このシナリオでは、ClearResultsBuffer 関数をトリガするオンラインイベントを使用してスプレッドシートをプログラムする必要があります。2 番目の方法では、PLC がソフトイベントをトリガしてビジョンシステムの状態をリセットします。このシナリオでは、ソフトイベントがトリガされたときに ClearResultsBuffer 関数をトリガするイベント関数を使用してスプレッドシートをプログラムする必要があります。

  8. ビジョンシステムは、ClearResultsBuffer 関数を使用して結果バッファをクリアし、手順 5 でキューに入れられた結果はキューから削除されます。
  9. データ、結果コード、結果 ID を含め、結果の値はすべて 0 にリセットされます。

関連項目

イベント

入出力関数について


入出力関数

入出力関数 |
データアクセス | In-Sight 関数リファレンス

関数

説明
GetBinaryString(ビットストリーム)

データ構造体を 2 進数のリストとして返します。

注意: 返される文字列は参照のみを目的としています。In-Sight ファームウェアは数値形式として 2 進数をサポートしていません。

GetBufferData(ReadBuffer, インデックス)

、 [image] 、 [image] 、または [image] データ構造体のインデックス付きデータを返します。

注意: ReadDeviceNet 関数のイベントパラメータは、Event 関数を含んでいるセルを参照し、この Event 関数のトリガパラメータは、ポートパラメータの値に応じて、シリアルポート 0 またはシリアルポート 1 を指定している必要があります。
GetByteCount(バッファ) | FormatOutputBuffer 関数に書き込まれたバイト数、あるいは ReadCCLinkBitBuffer、ReadCCLinkWordBuffer、ReadEIPBuffer、ReadLatchedUserDataBuffer、ReadModbusBuffer、ReadProfinetBuffer、または ReadUserDataBuffer 関数に読み込まれたバイト数を返します。

GetClock(時間, フォーマット文字列)

現在の日時を、Now 関数によって返される [image] データ構造体の、"C" ライブラリ標準フォーマット文字列を使用して構成される文字列として返します。

フォーマット文字列

日時を表示するフォーマットを指定します。デフォルトのフォーマット文字列は、「月/日/年　時:分:秒」で、これは次のように表されます。

%m/%d/%Y %H:%M:%S

次の変数を使用できます。

%m | 月
%d | 日
%Y | 年
%H | 時
%M | 分
%S | 秒
%3N | ミリ秒
%6N | マイクロ秒
%9N | ナノ秒
GetConnectionStatus(イベント, プロトコル)

指定された通信プロトコルの接続ステータスを返します。関数は、プロトコルが機能しているがアクティブな接続がない場合は 0 を返し、プロトコルが機能しておりアクティブな接続がある場合はアクティブな接続の数を返します。接続に失敗した場合は #ERR を返します。この場合、GetErrorCode 関数と GetErrorString 関数を使用してエラーの原因を判別できます。

イベントパラメータは、ネットワークエラーイベントをキャプチャするように設定された Event 関数、またはセル A0 内の AcquireImage 関数を参照している必要があります。

プロトコルパラメータは、ステータス更新をポーリングするプロトコルを定義するために使用されます。

  • 0 = EtherNet/IP
  • 1 = PROFINET
  • 2 = SLMP スキャナ
  • 3 = Modbus TCP サーバ
  • 4 = CC Link
  • 5 = DeviceNet
  • 6 = POWERLINK
  • 100 = 現在有効なリアルタイムファクトリプロトコル

注意: CC Link と DeviceNet はこの関数ではサポートされていません。CC Link か DeviceNet を選択すると「Argument Out of Range」エラーが返されます。

GetFilename(FTP)

データ構造体のファイル名を返します。
GetHexString(ビットストリーム)

データ構造体に含まれるビットを、標準「0x」プレフィックス付きの 16 進数文字列として返します。16 進数文字列は最上位ニブルが先頭にきます。

注意: ビット数が 4 の倍数でない場合は、右から左へビットがニブルに効率的にグループ化されるように最上位位置に 0 が埋められます。

Closed 例 - 16 進数値のパディング
ビット | パディングあり | 16 進数
1 | 1000 | 1
11 | 0011 | 3
111 | 0111 | 7
1111 | 1111 | F
1 1111 | 0001 1111 | 1F
11 1111 | 0011 1111 | 3F
111 1111 | 0111 1111 | 7F
1111 1111 | 1111 1111 | FF
GetNumBits(ビットストリーム) | データ構造体に含まれるビットの合計を返します。
GetNumWaveformsPending(イベント)

現在実行中、または実行のためにキューに入っている WriteWaveformPulseTrain 波形または WriteWaveformClocked 波形の合計を返します。現在実行中の波形がない場合は、0 を返します。この値が 0 に等しくなるとすぐに、新しい波形が実行されます。この値が 0 以外の場合、波形は、適用されている設定とキューの空き領域に応じてキューに入れられるか、または廃棄されます。

注意: 単一の波形キューが存在するため、この関数は入力として WriteWaveformPulseTrain 関数または WriteWaveformClocked 関数を使用しません。代わりに、この関数はイベント (例えば、Button 関数や AcquireImage 関数) を使用して定期的に関数を更新します。
GetRemoteAddress(デバイス) | UDP サーバが受信した最新メッセージの送信元デバイスの IP アドレスを返します。デバイスパラメータには、UDPDevice 関数によって返された [image] データ構造体への参照を指定します。
GetRemotePort(デバイス) | UDP サーバが受信した最新メッセージの送信元デバイスのポート番号を返します。[デバイス] パラメータには、UDPDevice 関数によって返された [image] データ構造体への参照を指定します。

GetResult(Result, インデックス)

データ構造体のインデックス付きの値を返します。


Packet 関数

Packet 関数 |
入出力関数 → ネットワーク | In-Sight 関数リファレンス

TCPDevice 関数によって読み出しまたは送信される、バイナリ文字列パケットのフォーマットを定義します。

Packet 関数 (

長さフィールド位置,

長さフィールドサイズ,

エンディアン,

長さの調整,

バッファサイズ,

フォーマット文字列

)

Packet 関数 の入力パラメータ

長さフィールド位置

長さフィールドの位置 (0 ～ 4096) を指定します。

長さフィールドサイズ

長さフィールドに使用されるバイト数 (0、1、2、または 4) を指定します。

注意: [長さフィールドサイズ] パラメータを 0 に設定すると、パケットは固定長になり、長さフィールドはパケットに書き込まれません。[長さフィールドサイズ] パラメータを 0 に設定する場合、[長さフィールド位置] パラメータも 0 に設定して、[長さの調整] パラメータにパケットに必要な長さを設定する必要があります。

エンディアン

バイトのシーケンスが格納される順序を指定します。

0 = ビッグエンディアン（デフォルト） | 最上位の値が最初に格納されるように指定します。
1 = リトルエンディアン | 最下位の値が最初に格納されるように指定します。

長さの調整

(長さフィールドで指定される) パケット長を調整するバイト数 (-4096 ～ 4096) を指定します。

バッファサイズ

データを格納するために割り当てられるメモリの量 (16 ～ 4096) を指定します。

フォーマット文字列

指定されたフォーマットを使用して文字列を作成します。

使用できる書式文字列パラメータは次のとおりです。

パラメータ | 説明
%c | 1 バイト
%h | 2 バイト
%d | 4 バイト
%f | 4 バイト浮動小数点数
%b | バイナリ構造体
%s | 文字列

Packet 関数 の結果出力

戻り値

データ構造体。入力パラメータが無効であれば #ERR を返します。


QueryDevice 関数

QueryDevice 関数 |
入出力関数 → ネットワーク | In-Sight 関数リファレンス

指定した TCP/IP サーバデバイスまたは UDP サーバデバイスへデータを書き込み、次にそのデバイスからデータを読み取ります。デバイスからの応答は、デバイスのタイムアウト制限に達する前に受け取る必要があります。

注意: この関数の主な使用目的は、Modbus サーバからバイナリデータパケットを取得することです。

QueryDevice 関数関数の入力パラメータ

QueryDevice 関数(

イベント,

デバイス,

データ

)

イベント

TCP/IP デバイスへのデータ書き込みをトリガする、スプレッドシートのイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

デバイス

データ構造体を参照します。このデバイスは、TCPDevice 関数が生成した TCP/IP クライアント、または　UDPDevice 関数が返した [image] データ構造体への参照である必要があります。

データ

TCP/IP または UDP デバイスに出力されるデータです。TCP/IP が実装されている場合、データタイプはデバイスの [パケットタイプ] (ASCII 文字列またはバイナリ Modbus コマンド) で指定されたタイプと同じである必要があります。UDP が実装されている場合、データタイプはデバイスの [バイナリパケット] パラメータ (バイナリデータパケットまたは文字列情報) で指定されたタイプと同じである必要があります。

QueryDevice 関数関数の結果出力

戻り値

データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

  • 入出力関数について
  • バイナリ関数
  • Event 関数
  • ReadDevice 関数
  • TCPDevice 関数
  • TCP/IP Modbus による通信
  • UDPDevice 関数
  • WriteDevice 関数


ReadCCLinkBitBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

FormatInputBuffer 関数によって作成された、参照される [image] 構造体からのデータを、イベントのトリガ時に、CC-Link プロトコルを使用している CC-Link ネットワークから読み取ります。

注意:
  • この機能を有効にするには、In-Sight ビジョンシステムが In-Sight CIO-MICRO-CC I/O モジュールに接続されている必要があります。
  • In-Sight ビジョンシステムが CC-Link 経由で三菱電機 Automation Controller と通信するように設定されている場合、プロトコルはビジョンシステムと Automation Controller との間のデータ転送のみをサポートします。

ReadCCLinkBitBuffer 関数関数の入力パラメータ

ReadCCLinkBitBuffer 関数 (

イベント,

バッファ

)

イベント

指定した [image] 構造体を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

バッファ

FormatInputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体には、自動的にフォーマットされたデータが含まれます。

注意:　出力データの最大長は、256 バイトです。

ReadCCLinkBitBuffer 関数関数の結果出力

戻り値

読み取ったデータおよびフォーマットを含む [image] データ構造体。次の場合には #ERR を返します。

  • 入力パラメータが無効の場合
  • In-Sight ビジョンシステムが In-Sight CIO-MICRO-CC I/O モジュールに接続されていない場合
  • FormatInputBuffer 関数の項目が、[ビット] または [16 ビット 整数] 以外のデータ型の場合

関連項目

  • 入出力関数について
  • CC-Link 経由での三菱電機 Automation Controller との通信
  • ReadCCLinkWordBuffer 関数
  • WriteCCLinkBitBuffer 関数
  • WriteCCLinkWordBuffer 関数


ReadCCLinkWordBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

FormatInputBuffer 関数によって生成された、参照される [image] 構造体からのデータを、イベントのトリガ時に、CC-Link プロトコルを使用している CC-Link ネットワークから読み取ります。

注意:
  • この機能を有効にするには、In-Sight ビジョンシステムが In-Sight CIO-MICRO-CC I/O モジュールに接続されている必要があります。
  • In-Sight ビジョンシステムが CC-Link 経由で三菱電機 Automation Controller と通信するように設定されている場合、プロトコルはビジョンシステムと Automation Controller との間のデータ転送のみをサポートします。

ReadCCLinkWordBuffer 関数関数の入力パラメータ

ReadCCLinkWordBuffer 関数 (

イベント,

バッファ

)

イベント

指定した [image] 構造体を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

バッファ

FormatInputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体には、自動的にフォーマットされたデータが含まれます。

注意:　出力データの最大長は、256 バイトです。

ReadCCLinkWordBuffer 関数関数の結果出力

戻り値

読み取ったデータおよびフォーマットを含む [image] データ構造体。次の場合には #ERR を返します。

  • 入力パラメータが無効の場合
  • In-Sight ビジョンシステムが In-Sight CIO-MICRO-CC I/O モジュールに接続されていない場合
結果 構造体内のデータには GetBufferData 関数を使用してアクセスします。

関連項目

  • CC-Link 経由での三菱電機 Automation Controller との通信
  • ReadCCLinkBitBuffer 関数
  • WriteCCLinkBitBuffer 関数
  • WriteCCLinkWordBuffer 関数
  • 入出力関数について


ReadDevice 関数

ReadDevice 関数 |
入出力関数 → ネットワーク | In-Sight 関数リファレンス

TCP/IP または UDP 接続を利用してネットワーク上の別のホストから、In-Sight ビジョンシステムへデータをインポートします。

注意:
  • 2 つの In-Sight ビジョンシステム間で TCP/IP デバイス接続を確立するには、両方のデバイスをオンラインにする必要があります。
  • ReadDevice 関数を UDP を使用して通信するよう設定されている場合、バッファリングはありません。最後に受信したデータパケットが処理される前に別のデータパケットを受信した場合、新しいパケットが古いパケットに置き換えられます。

ReadDevice 関数関数の入力パラメータ

ReadDevice 関数(

デバイス

)

デバイス

TCPDevice 関数または UDPDevice 関数で作成された [image] データ構造体を含んでいるスプレッドシートのセルを参照します。

ReadDevice 関数関数の結果出力

戻り値

接続が確立されると、TCP/IP または　UDP クライアントからインポートされるデータを返します。有効な [image] データ構造体を含まないセルが参照された場合、または UDP メッセージのデフォルトバッファサイズ (256 バイト) より大きなメッセージを受信した場合は #ERR を返します。

関連項目

  • 入出力関数について
  • バイナリ関数
  • QueryDevice 関数
  • TCPDevice 関数
  • UDPDevice 関数
  • WriteDevice 関数


ReadEIP 関数

ReadEIP 関数 |
入出力関数 → ネットワーク | In-Sight 関数リファレンス

EtherNet/IP プロトコルを使用するリモートクライアントによって送信されたデータを読み取り (消費し) ます。

ReadEIP 関数(

イベント ,

マッピング

)

注意:

  • In-Sight センサでは、EtherNet/IP プロトコルを使用して同時に複数のデバイスと通信できますが、同時に複数の通信を確立することは推奨しません。
  • In-Sight センサは、明示的および非明示的な EtherNet/IP メッセージングをサポートしています。 Closed 例を参照。

    セル A4 の ReadEIP($A$0, "0d:4d:8s") は、2 つの 32 ビット整数とヌル終了文字列を PLC から読み取ります。

    GetBufferData($A$4, 0) は、最初の 32 ビット整数を表示します。

    GetBufferData($A$4, 1) は、2 番目の 32 ビット整数を表示します。

    GetBufferData($A$4, 2) は、文字列を表示します。

  • 詳細については、『Using EtherNet/IP with In-Sight Explorer and ControlLogix』を参照してください。

ReadEIP 関数関数の入力パラメータ

イベント

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

マッピング

コロン文字 (:) で区切られた指定子のリストから構成されるデータマッピングを指定します。各指定子は、開始バイトとデータ型コードの 2 つの部分から構成されます。データ型コードは次のとおりです。

コード | データ型
i | 8 ビットの整数
il | 16 ビットの整数
d | 32 ビットの整数
f | 32 ビットの浮動小数点数
s | テキスト文字列

例:　データマッピング "0i:1f:5d:9s" の場合、最初のデータ項目 (オフセット 0) は 8 ビット整数を指定し、2 番目の項目 (オフセット 1) は 32 ビットの浮動小数点値を指定し、3 番目の項目 (オフセット 5) は 4 バイトの符号付き整数を指定し、パケットの残り (オフセット 9 以降) は文字列を指定します。

注意:　In-Sight アドオンプロファイル (AOP) リビジョン 10 に付属の入力アセンブリインスタンス 12 を使用している場合、入力データの最大長は 488 バイトです。In-Sight アドオンプロファイル (AOP) リビジョン 4 に付属の入力アセンブリインスタンス 11 を使用している場合、入力データの最大長は 492 バイトです。

In-Sight アセンブリデータ構成 (非明示的メッセージング)

ReadEIP 関数関数の結果出力

戻り値 | クライアントによって送信されたデータを含む [image] データ構造体。入力パラメータが無効の場合か、クライアントからの接続が確立されていない場合は、#ERR が返されます。
結果 | 構造体内のデータには GetBufferData 関数を使用してアクセスします。

関連項目

Event 関数

WriteEIP 関数

入出力関数について


ReadEIPBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

EtherNet/IP プロトコルを利用するリモートクライアントによって送信されたデータを読み取り (消費し) ます。参照される [image] 構造体は FormatInputBuffer 関数によって作成されたもので、受信されたデータの認識方法を定義します。

ReadEIPBuffer 関数 (

イベント,

バッファ

)

注意:

  • In-Sight センサでは、EtherNet/IP プロトコルを使用して同時に複数のデバイスと通信できますが、同時に複数の通信を確立することは推奨しません。
  • In-Sight センサは、明示的および非明示的な EtherNet/IP メッセージングをサポートしています。 Closed 例

    セル A4 の ReadEIP($A$0, "0d:4d:8s") は、2 つの 32 ビット整数とヌル終了文字列を PLC から読み取ります。

    GetBufferData($A$4, 0) は、最初の 32 ビット整数を表示します。

    GetBufferData($A$4, 1) は、2 番目の 32 ビット整数を表示します。

    GetBufferData($A$4, 2) は、文字列を表示します。

Rockwell ControlLogix PLC での EtherNet/IP プロトコルの使用に関する詳細については、 ここをクリックしてください。

ReadEIPBuffer 関数の入力パラメータ

イベント

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体
  • 関数を含むセル
  • Button 関数を含むセル

バッファ

FormatInputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体は受信されたデータの解釈方法を定義します。

注意: 入力データの最大長は、4,000 バイトです。

In-Sight アセンブリデータ構成 (非明示的メッセージング)

ReadEIPBuffer 関数の結果出力

戻り値 | クライアントによって送信されたデータを含む [image] データ構造体。不正な入力パラメータが含まれていた場合、またはクライアントからの接続が確立されていない場合は #ERR が返されます。
結果 | 構造体内のデータには GetBufferData 関数を使用してアクセスします。

関連項目

Event 関数

WriteEIPBuffer 関数

ReadEIP 関数

WriteEIP 関数

GetBufferData 関数

入出力関数について


ReadLatchedUserDataBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

バッファ処理された画像取り込みを必要とするアプリケーションで使用する場合は、[ネットワークの設定] ダイアログで現在有効にされているファクトリ通信プロトコルの [User Data] フィールドに含まれるデータを読み取り (消費し)、画像取り込みトリガでデータを取得します。取得されたデータは、取り込まれた画像データとともに運ばれ、この関数を通じて、スプレッドシートに読み込まれます。参照される　 [image] 　構造体は FormatInputBuffer 関数によって作成されたもので、受信されたデータの認識方法を定義します。

  • ReadLatchedUserDataBuffer 関数の入力パラメータ
  • ReadLatchedUserDataBuffer 関数の結果出力
  • 関連項目

注意:　定期的な接続で、有効にされているリアルタイムプロトコルに基づくデータバッファへの書き込みが活発に行われていない場合、この関数は、最後にデータバッファへの書き込みを行ったプロトコルのデータを返します。

ReadLatchedUserDataBuffer 関数 関数の入力パラメータ

ReadLatchedUserDataBuffer 関数 (

イベント,

バッファ,

プロトコル,

接続の検証

)

イベント

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

バッファ

FormatInputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体は受信されたデータの解釈方法を定義します。

注意:　入力データの最大長は、4,000 バイトです。

プロトコル

ユーザデータの読み取り元となるプロトコルを指定します。

2 = SLMP プロトコルスキャナ | SLMP スキャナが有効なファクトリ通信プロトコルであることを指定します。
6 = POWERLINK | POWERLINK が有効なファクトリ通信プロトコルであることを指定します。
100 = デフォルト | 現在有効なファクトリ通信プロトコルが使用されることを指定します。

接続の検証

この関数で接続の検証を行うかどうかを指定します。有効にされている場合、選択されたプロトコルでアクティブな接続が行われていないと、#ERR が返されます。

ReadLatchedUserDataBuffer 関数 関数の結果出力

戻り値 | データ構造体。不正な入力パラメータが含まれていた場合、クライアントからの接続が確立されていない場合、または接続の確立後、データバッファへの書き込みが行われていない場合には #ERR が返されます。
結果 | データ構造体内のデータには GetBufferData 関数を使用してアクセスします。

関連項目

入出力関数について

Event 関数

ReadLatchedUserDataBuffer 関数

WriteResultsBuffer 関数


ReadMC 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

ReadMC 関数は、三菱電機 PLC およびモーションコントローラ (MC) への SLMP 接続を生成し、3E QnA 互換または 1E A 互換バイナリフレームを使用して Batch Read コマンドを送信し、PLC/MC からデータを受信します。

注意:　In-Sight ビジョンシステムが SLMP 経由で PLC/MC と通信するように設定されている場合、プロトコルはビジョンシステムと PLC/MC との間のデータ転送のみをサポートします。

ReadMC 関数 (

イベント,

ホスト名,

ポート,

PLC シリーズ,

デバイスのアドレス,

タイムアウト,

バッファ

)

ReadMC 関数関数の入力パラメータ

Event 関数

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

ホスト名

データを読み取る三菱電機 PLC/MC の IP アドレスを指定します。

ポート

MELSEC EtherNet モジュール上で開く SLMP サーバの TCP ポート番号を 16 進数で指定します。

PLC シリーズ

データパケットがカプセル化されるメッセージフレームを指定します。

0 = Q/L シリーズ (3E フレーム) | QnA 互換 3E フレームを使用して Batch Read コマンドを送信します。
1 = FX シリーズ (1E フレーム) | A 互換 1E フレームを使用して Batch Read コマンドを送信します。

デバイスのアドレス

三菱電機 PLC/MC のデータを読み取るメモリ位置を指定します。使用可能なデバイスアドレスとフォーマットは、PLC シリーズの入力に指定された PLC シリーズの種類 (Q/L シリーズまたは　FX シリーズ) によって異なります。

Q/L シリーズ

デバイスのアドレス | 説明 | フォーマット
Xhhhhhh* | 入力リレー | ビット
Yhhhhhh | 出力リレー | ビット
Mdddddd* | 内部リレー | ビット
Ldddddd | ラッチリレー | ビット
Fdddddd | アナンシエータ | ビット
Bhhhhhh | リンクリレー | ビット
Ddddddd | データレジスタ | ワード
Whhhhhh | リンクレジスタ | ワード
Rdddddd | ファイルブロックレジスタ | ワード
ZRhhhhhh | ファイルレジスタ | ワード
TNdddddd | タイマ値 | ワード
CNdddddd | カウンタ値 | ワード
* 「hhhhhh」は 16 進数アドレス、「dddddd」は 10 進数アドレスです。

FX シリーズ

デバイスのアドレス | 説明 | フォーマット
Xoooooo* | 入力リレー | ビット
Yoooooo | 出力リレー | ビット
Mdddddd* | 内部リレー | ビット
Ddddddd | データレジスタ | ワード
Rdddddd | 拡張レジスタ | ワード
Sdddddd | 状態リレー | ビット
* 「oooooo」は 8 進数アドレス、「dddddd」は 10 進数アドレスです。

タイムアウト

この関数がデータ送信を試行する時間をミリ秒単位で指定します (5 ～ 30000、デフォルト = 1000 ms)。指定された時間が経過すると、実行は停止し、#ERR が返されます。

注意:　[タイムアウト] の時間がジョブに追加される可能性があります。読み取りおよび書き込みの両方の操作が失敗した場合、両方の操作の [タイムアウト] 値が加算されるため、ジョブに追加される時間は [タイムアウト] 値の 2 倍になります。

バッファ

FormatInputBuffer 関数によって作成された、参照される　 [image] 　構造体を指定します。この構造体は受信されたデータの解釈方法を定義します。

注意:　選択された PLC シリーズが Q/L シリーズである場合、入力データの総最大長は 1920 バイトです。選択された PLC シリーズが FX シリーズである場合、入力データの総最大長は 128 バイトです。

ReadMC 関数関数の結果出力

戻り値 | 三菱電機 PLC/MC によって送信されたデータを含むデータ構造体。無効な入力パラメータが含まれていた場合、または三菱電機 PLC/MC からの接続が確立されていない場合は #ERR が返されます。
結果 | 構造体内のデータには GetBufferData 関数を使用してアクセスします。

関連項目

Event 関数

WriteMC 関数

GetBufferData 関数

入出力関数について


ReadModbusBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

Modbus プロトコルを利用するリモートクライアントによって送信されたデータを読み取り (消費し) ます。参照される [image] 構造体は FormatInputBuffer 関数によって作成されたもので、受信されたデータの認識方法を定義します。In-Sight ビジョンシステムに書き込むリモートクライアントはレジスタ 50000 ～ 50127 を使用する必要があります。

ReadModbusBuffer 関数 (

イベント,

バッファ

バイト/ワードオーダ

)

ReadModbusBuffer 関数の入力パラメータ

イベント

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体
  • 関数を含むセル
  • Button 関数を含むセル

バッファ

FormatInputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体は受信されたデータの解釈方法を定義します。

注意: 入力データの最大長は、4,000 バイトです。

バイト/ワードオーダ

関数によって読み込まれるワードおよびバイトのビット順序を指定します。使用可能な値は次のとおりです。

  • ビッグエンディアン - 最上位の値が最初に格納されるように指定します。
  • リトルエンディアン - 最上位の値が最初に格納されるように指定します。
  • ビッグエンディアン、16 ビットワード - 最初に最上位の値が格納されるように指定します。
  • リトルエンディアン、16 ビットワード - 最初に最下位の値が格納されるように指定します。

ReadModbusBuffer 関数の結果出力

戻り値 | クライアントによって送信されたデータを含む [image] データ構造体。不正な入力パラメータが含まれていた場合、またはクライアントからの接続が確立されていない場合は #ERR が返されます。
結果 | 構造体内のデータには GetBufferData 関数を使用してアクセスします。

関連項目

Event 関数

WriteModbusBuffer 関数

GetBufferData 関数

入出力関数について


ReadProfinetBuffer 関数

ReadProfinetBuffer

入出力関数 → ネットワーク

In-Sight 関数リファレンス

PROFINET IO プロトコルを利用するリモートクライアントによって送信されたデータを読み取り (消費し) ます。参照される [image] 構造体は FormatInputBuffer 関数によって作成されたもので、受信されたデータの認識方法を定義します。

ReadProfinetBuffer (

イベント,

バッファ

)

ReadProfinetBuffer 関数の入力パラメータ

イベント

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体
  • 関数を含むセル
  • Button 関数を含むセル

バッファ

FormatInputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体は受信されたデータの解釈方法を定義します。

注意: 入力データの最大長は、4,000 バイトです。

ReadProfinetBuffer 関数の結果出力

戻り値 | クライアントによって送信されたデータを含む [image] データ構造体。不正な入力パラメータが含まれていた場合、またはクライアントからの接続が確立されていない場合は #ERR が返されます。
結果 | 構造体内のデータには GetBufferData 関数を使用してアクセスします。

関連項目

Event 関数

入出力関数について


ReadResult 関数

ReadResult 関数 |
入出力関数 → ネットワーク | In-Sight 関数リファレンス

1つの In-Sight センサ (送信側) のセルの値を別の In-Sight センサ (受信側) へインポートします。ReadResult 関数を複数使用して、複数の In-Sight スレーブセンサから受信側の In-Sight センサの 1 つのスプレッドシートへ結果をインポートすることができます。

ReadResult 関数 (

画像取り込み,

ホスト名,

タイムアウト

)

注意:

  • 送信側と受信側の In-Sight センサは、両方ともオンラインにする必要があります。
  • WriteResult 関数と ReadResult 関数を使用する場合は、ReadResult 関数を使用する In-Sight センサをネットワークトリガのマスターとして設定し、WriteResult 関数を使用するセンサをネットワークトリガのスレーブとして設定することを強く推奨します。これによって、マスターが現在のトリガに応答してスレーブによって生成された結果を読み取るため、結果を同期化できます。

ReadResult 関数の入力パラメータ

画像取り込み

デフォルトでセル A0 に含まれている [image] データ構造体を参照します。このデータ構造体は画像取り込みトリガのソースを指定します。

ホスト名

結果を送信する In-Sight センサのネットワークでの名前を指定します。送信側の In-Sight センサのスプレッドシートには、受信側へ送信する値のあるセルを参照する WriteResult 関数が含まれている必要があります。

注意:

  • 「受信側」の In-Sight センサのスプレッドシートに複数の ReadResult 関数が含まれている場合、各関数はそれぞれ異なる送信側の In-Sight センサのホスト名を参照する必要があります。つまり、1 つの受信側センサだけが、1 つの送信側センサ上の WriteResult セルからのデータを読み取ることができます。
  • 無効なホスト名を指定した場合、最大 30 秒後に接続はタイムアウトします。

タイムアウト

画像の取り込み時間も含め、送信側の In-Sight センサが受信側の In-Sight センサへ結果を出力するまでの待機時間をミリ秒単位で指定します (-1～120000、-1 はタイムアウトしない)。

ReadResult 関数の出力結果

戻り値 | データ構造体には、指定した送信側の In-Sight センサからインポートした値が含まれます。入力パラメータが無効の場合や、ネットワークエラーが発生した場合、または指定されたタイムアウト時間内に結果を受信しない場合は #ERR を返します。
結果 | ReadResult 関数が初めてセルに挿入されると、送信側の In-Sight センサからインポートされた最初の 4 つの結果を含むテーブルがスプレッドシート内に自動的に生成されます。

スプレッドシートに自動挿入されて結果テーブルを作成するデータアクセス関数は次のとおりです。

GetResult(Result, インデックス)

データ構造体からインデックスの付いた値を返します。送信側の In-Sight センサの WriteResult 関数で参照されるセルの順番に、値のインデックスが生成されます。

注意: ReadResult 関数は、送信側の In-Sight センサからインポートされ、 [image] データ構造体に含まれる最初の 4 つの結果に対応する、結果テーブルの 4 つの項目を自動的に返します。さらに結果テーブルを拡大して、追加する結果を結果テーブルに返すようにするには、テーブルのセルをコピーして空白のセルに貼り付け、返す結果のインデックス値を追加するごとに 1 つずつ増やします。

ReadResult 関数の例

送信側 (Sender) と受信側 (Receiver) の 2 つの In-Sight センサがネットワークに接続されていると仮定します。各センサでは、ジョブは次のように設定されています。

送信側 (Sender):

A0 = AcquireImage(32,1,8,0,480,0,0,0,0,128,32,0,0,"","",0)

A1 = '画像取り込み回数:

A2 = '画像取り込み回数×2:

A3 = Timer("00:00:05",32)

A4 = WriteResult($A$0,$D$1,$D$2)

D1 = Count($A$0,9999999,0,0)

D2 = D1*2

AcquireImage セル (A0) は、手動トリガに設定されています。セル A3 の Timer 関数は、手動トリガを 5 秒ごとに起動します。セル D1 に含まれている Count 関数は、画像取り込みの数を累積し、セル D2 では画像取り込みの数を 2 倍にします。最後に、セル A4 の WriteResult 関数が、画像取り込みデータを受信側センサで利用できるようにします。

受信側 (Receiver):

A0 = AcquireImage(1,1,8,0,480,0,0,0,0,128,32,0,0,"","",0)

A1 = '画像取り込み回数:

A2 = '画像取り込み回数×2:

A4 = ReadResult($A$0,"Sender",0)

B4 = GetResult($A$4,0)

C4 = GetResult($A$4,1)

D1 = GetResult($A$4,0)

D2 = GetResult($A$4,1)

D4 = GetResult($A$4,2)

E4 = GetResult($A$4,3)

AcquireImage セル (A0) は、連続トリガに設定されています。セル A4 の ReadResult 関数は、送信側の WriteResult 関数からデータを引き出します。そのほかの実装済みセル (B4、C4、D1、D2、D4、E4) には、セル A4 の [image] 構造体のゼロから始まるインデックスを説明する GetResult 関数が含まれています。

両方のセンサをオンラインにすることにより、ReadResult 関数と WriteResult 関数の動作を見ることができます。

約 20 秒後には、4 つの画像取り込みが発生しています。受信側のセンサは、送信側からの値と同期されたままになります。送信側の WriteResult 関数は 2 つの値しか渡していないため、受信側のセル D4 および E4 は #ERR を返すことに注意してください。

関連項目

WriteResult 関数

入出力関数について


ReadUserDataBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

[ネットワークの設定] ダイアログで現在有効にされているファクトリ通信プロトコルの [User Data] フィールドに含まれるデータを読み取ります (消費します)。参照される　 [image] 　構造体は FormatInputBuffer 関数によって作成されたもので、受信されたデータの認識方法を定義します。

  • ReadUserDataBuffer 関数の入力パラメータ
  • ReadUserDataBuffer 関数の結果出力
  • 関連項目

注意:　定期的な接続で、有効にされているリアルタイムプロトコルに基づくデータバッファへの書き込みが活発に行われていない場合、この関数は、最後にデータバッファへの書き込みを行ったプロトコルのデータを返します。

ReadUserDataBuffer 関数 関数の入力パラメータ

ReadUserDataBuffer 関数 (

イベント,

バッファ,

プロトコル,

接続の検証

)

Event 関数

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

バッファ

FormatInputBuffer 関数によって生成された、参照される　 [image] 　構造体を指定します。この構造体は受信されたデータの解釈方法を定義します。

注意:　入力データの最大長は、4,000 バイトです。

プロトコル

ユーザデータの読み取り元となるプロトコルを指定します。

注意:　リアルタイム Ethernet プロトコルが指定されていない場合は、デフォルトで Modbus TCP サーバプロトコルが使用されます。

2 = SLMP プロトコルスキャナ | SLMP プロトコルスキャナが有効なファクトリ通信プロトコルであることを指定します。
6 = POWERLINK | POWERLINK が有効なファクトリ通信プロトコルであることを指定します。
100 = デフォルト | 現在有効なファクトリ通信プロトコルが使用されることを指定します。

接続の検証

この関数で接続の検証を行うかどうかを指定します。有効にされている場合、選択されたプロトコルでアクティブな接続が行われていないと、#ERR が返されます。

ReadUserDataBuffer 関数 関数の結果出力

戻り値 | クライアントによって送信されたデータを含む [image] データ構造体。不正な入力パラメータが含まれていた場合、クライアントからの接続が確立されていない場合、または接続の確立後、データバッファへの書き込みが行われていない場合には #ERR が返されます。
結果 | データ構造体内のデータには GetBufferData 関数を使用してアクセスします。

関連項目

  • 入出力関数について
  • Event 関数
  • ReadLatchedUserDataBuffer 関数
  • WriteResultsBuffer 関数


TCPDevice 関数

TCPDevice 関数 |
入出力関数 → ネットワーク | In-Sight 関数リファレンス

In-Sight スプレッドシートのセルを TCP/IP デバイス (クライアントまたはサーバ) として定義します。この関数を定義すると、In-Sight ビジョンシステムとほかの TCP/IP デバイスとの接続が可能になり、ネットワークを介してデータを共有することができます。TCP/IP の接続が確立すると、ReadDevice 関数、WriteDevice 関数、および QueryDevice 関数を使用してデータを通信します。TCPDevice 関数が、ネットワークのほかの TCP/IP デバイスと通信を開始する場合、セルは TCP/IP クライアントとして動作します。TCPDevice 関数が、ネットワークにあるほかの TCP/IP デバイスからの受信を待機する場合は、セルは TCP/IP サーバとして動作します。

  • TCPDevice 関数の入力パラメータ
  • TCPDevice 関数の結果出力
  • TCPDevice 関数の例
  • 関連項目

注意:

  • TCPDevice 関数は パケットを受信すると、イベントを発生させます。このイベントによって、スプレッドシートが更新されます。
  • 2 つの In-Sight ビジョンシステム間で TCP/IP デバイス接続を確立するには、両方のデバイスをオンラインにする必要があります。

TCPDevice 関数関数の入力パラメータ

TCPDevice 関数(

ホスト名,

ポート,

プロトコル,

パケット・タイプ,

タイムアウト,

終端記号

)

ホスト名

TCPDevice 関数が含まれているセルをクライアントにする場合は、接続を確立する TCP/IP サーバの名前を指定します。

ホスト名を指定しない場合 (デフォルトでは空文字)、セルは TCP/IP クライアントからの通信開始を待機するサーバになります。

ポート

TCP/IP デバイスとの間で接続を確立する TCP/IP サーバのポート番号です。ホスト名が指定された場合、入力されたポート番号はサーバ側にも割り当てる必要があります。ホスト名が指定されない (空文字の) 場合、このパラメータでこのデバイスに TCP/IP ポート番号が割り当てられます。

1 つのホストで、2 つの TCPDevice 関数が同じ TCP/IP ポート番号を共有することはできません。この場合、一方のデバイスは TCP/IP 接続を確立することができなくなります。例えば、同じ In-Sight スプレッドシートの 2 つのセルに TCPDevice 関数がデフォルトのポート番号として 3000 を指定した場合、どちらかのセルの 1 つのみが TCP/IP デバイスとして機能します。ポート番号の割り当ての重複を避けることは重要です。

注意: 有効なポート番号は、In-Sight の通信に使用されるポートを除く、1 ～ 65535 の範囲で未使用の番号です。PC のサービスで予約されているポート番号との競合を避けるために、In-Sight エミュレータの設定では、必ず 3000 (デフォルト) 以降のポート番号を割り当ててください。

プロトコル

ネットワーク上の In-Sight ビジョンシステムとほかの TCP/IP デバイスとの間の通信に使用するネットワークプロトコルです。In-Sight ビジョンシステムでは、標準の TCP/IP プロトコルのみサポートしています。

0 = TCP/IP

パケット・タイプ

In-Sight ビジョンシステムとほかの TCP/IP デバイスとの間で通信する文字列のデータフォーマットを定義します。

0 = 文字列 CR+LF (デフォルト) | ASCII フォーマットです。In-Sight ビジョンシステムから送信される際、ASCII 文字 13 (キャリッジリターン) と 10 (ラインフィード) が文字列データに付加されます。受信の際には、文字列データは CR+LF で終了します。
1 = 文字列 + CR (13) | ASCII フォーマットです。In-Sight ビジョンシステムから送信される際、ASCII 文字の 13 (キャリッジリターン) が文字列データに付加されます。受信の際には、文字列データは CR で終了します。
2 = 文字列 + LF (10) | ASCII フォーマットです。In-Sight ビジョンシステムから送信される際、ASCII 文字の 10 (ラインフィード) が文字列データに付加されます。受信の際には、文字列データは LF で終了します。
3 = 文字列 + ヌル文字 (0) | ASCII フォーマットです。In-Sight ビジョンシステムから送信される際、ASCII 文字の 0 (ヌル文字) が文字列データに追加されます。受信の際には、文字列データはヌル文字で終了します。
4 = Modbus | バイナリフォーマットです。文字列データは、Modbus プロトコルに準拠します。
5 = Siemens | ASCII フォーマットです。In-Sight ビジョンシステムから送信される際、ASCII 文字の 234 (0xEA) が文字列データに追加されます。受信の際には、文字列データは 234 で終了します (In-Sight ウエーハリーダのみ)。
6 = カスタム終端記号付き文字列 | ASCII フォーマットです。In-Sight ビジョンシステムから送信される際、指定した終端記号が文字列データに追加されます。受信の際には、文字列データは指定した終端機能で終了します。
7 = カスタム終端記号を持つバイナリ | バイナリフォーマットです。In-Sight ビジョンシステムから送信される際、指定した終端記号が文字列データに追加されます。受信の際には、文字列データは指定した終端機能で終了します。

注意:

  • Modbus パラメータは、In-Sight ビジョンシステムが Modbus クライアントとして稼動する場合のみ適用されます。Modbus に関しては、 Open Modbus/TCP Specification (外部リンク、インターネットへのアクセスが必要です。Modicon 発行) で定義されています。また、[パケットタイプ] が [Modbus] に設定されている場合、[ポート] は、In-Sight 通信により予約されている 502 に設定されている必要があることにも注意してください。
  • 指定されたパケットタイプに関わらず、In-Sight ビジョンシステムでデータを受信する場合、文字列データは ASCII 文字の 0 (ヌル文字) で終了します。

タイムアウト

TCP/IP 接続の確立を試みてから中断するまでの待機時間をミリ秒単位 (100～15000、デフォルト = 1000) で指定します。このパラメータは、TCPDevice 関数がセルで TCP/IP クライアントとして定義されている場合のみ適用されます。

終端記号

[パケットタイプ] に [カスタム終端記号付き文字列] または [カスタム終端記号を持つバイナリ] が指定された場合に使用する ASCII 文字 (0 ～ 255) を指定します。

TCPDevice 関数関数の結果出力

戻り値 | データ構造体。入力パラメータが無効の場合か、タイムアウトの設定時間を超えた場合は、#ERR が返されます。 注意: 1 つのジョブに挿入できる [image] 構造体の数は最大 12 個です。
結果 | 関数がセルに入力されると、右側の隣接したセルに追加の関数が自動的に挿入されます。関数が TCP/IP クライアントである場合は WriteDevice 関数で、TCP/IP サーバである場合は ReadDevice 関数です。

TCPDevice 関数例

SYSTEM0 という名前の In-Sight ホストビジョンシステムが、次のように設定されています。

A3=TCPDevice("SYSTEM1",3000,0,0,300)

B3=WriteDevice($A$0,A3,C3)

SYSTEM1 という名前の 2 番目のホストシステムには、TCP/IP サーバ機能が含まれており、次のように設定されています。

A4=TCPDevice("",3000,0,0,300)

B4=ReadDevice(A4)

2 つのシステムはオンラインの状態であるとします。SYSTEM0 のセル $A$0 にあるデフォルトの画像を取り込むと、セル A3 の TCP/IP クライアントは SYSTEM1 のセル A4 の TCP/IP サーバとポート番号 3000 で接続を確立します。SYSTEM0 のセル B3 に含まれている WriteDevice 関数により、セル C3 のデータが、SYSTEM1 のセル B4 に含まれている ReadDevice 関数にエクスポートされます。

関連項目

  • バイナリ関数
  • TCP/IP Modbus による通信
  • ReadDevice 関数
  • WriteDevice 関数
  • QueryDevice 関数


UDPDevice 関数

UDPDevice 関数 |
入出力関数 → ネットワーク | In-Sight 関数リファレンス

In-Sight スプレッドシートのセルを UDP デバイス (クライアントまたはサーバ) として定義します。この関数を定義すると、In-Sight ビジョンシステムとほかの UDP デバイスとの接続が可能になり、ネットワークを介してデータを共有することができます。UDP の接続が確立すると、ReadDevice 関数、WriteDevice 関数、および QueryDevice 関数を使用してデータを通信します。UDPDevice 関数が、ネットワークのほかの UDP デバイスと通信を開始する場合、セルは UDP クライアントとして動作します。UDPDevice 関数が、ネットワークにあるほかの UDP デバイスからの受信を待機する場合は、セルは UDP サーバとして動作します。

TCP に代わる User Datagram Protocol (UDP) はコネクションレス型通信トランスポート方法で、インターネットプロトコル経由でのメッセージ交換の際に限定的なサービスを提供します。TCP とは異なり、UDP では配信の確認や保証は行われません。また、パケットを順番どおりに並べることもありません。

UDPDevice 関数 (

ホスト名,

ポート,

タイムアウト,

バイナリーパケット

)

注意:

  • UDPDevice 関数は パケットを受信すると、イベントを発生させます。このイベントによって、スプレッドシートが更新されます。
  • 2 つの In-Sight ビジョンシステム間で UDP デバイス接続を確立するには、両方のデバイスをオンラインにする必要があります。

UDPDevice 関数 の入力パラメータ

ホスト名

UDPDevice 関数が含まれているセルをクライアントにする場合は、接続を確立する UDP サーバの名前を指定します。

ホスト名を指定しない場合 (デフォルトでは空の文字列) には、セルは UDP クライアントからの通信開始を待機するサーバになります。

ポート

UDP デバイスとの間で接続を確立する UDP サーバのポート番号です。ホスト名が指定された場合、入力されたポート番号はサーバ側にも割り当てる必要があります。ホスト名が指定されない (空の文字列である) 場合、このパラメータでこのデバイスに UDP/IP ポート番号が割り当てられます。

1 つのホストで、2 つの UDPDevice 関数が同じ UDP ポート番号を共有することはできません。この場合、一方のデバイスは UDP 接続を確立することができなくなります。例えば、1 つの In-Sight スプレッドシートの 2 つのセルにデフォルトのポート番号として「3000」を使用する UDPDevice 関数が入力されている場合、どちらか 1 つのセルのみが UDP デバイスとして機能します。ポート番号の割り当ての重複を避けることは重要です。

注意: 有効なポート番号は、In-Sight の通信に使用されるポートを除く、1 ～ 65535 の範囲で未使用の番号です。PC のサービスで予約されているポート番号との競合を避けるために、In-Sight エミュレータの設定では、必ず 3000 (デフォルト) 以降のポート番号を割り当ててください。

タイムアウト

UDP 接続の確立を試みてから中断するまでの待機時間をミリ秒単位 (100 ～ 15000、デフォルト = 1000) で指定します。このパラメータは、UDPDevice 関数がセルで UDP クライアントとして定義されている場合のみ適用されます。
バイナリーパケット データをバイナリデータパケット、または文字列情報のどちらとして処理するかを指定します。デフォルトでは、このオプションは無効にされており、データは文字列情報として処理されます。

UDPDevice 関数 の結果出力

戻り値 | データ構造体。入力パラメータが無効の場合か、タイムアウトの設定時間を超えた場合は、#ERR が返されます。 注意: 1 つのジョブに挿入できる [image] 構造体の数は最大 12 個です。
結果 | 関数がセルに入力されると、右側の隣接したセルに追加の関数が自動的に挿入されます。関数が UDP クライアントである場合は WriteDevice 関数で、UDP サーバである場合は ReadDevice 関数です。

UDPDevice 関数の例

ここでは、応答を必要としない UDP クライアント、応答を必要とする UDP クライアント、メッセージを受信するだけの UDP サーバ、およびメッセージを受信し応答する UDP サーバとして構成する場合の UDPDevice 関数の使用例を説明します。

応答を必要としない UDP クライアント

この構成では、UDP メッセージを UDP サーバデバイスに送信するように In-Sight ビジョンシステムを設定します。

設定

ジョブに UDPDevice 関数が追加され、この関数に対して有効な [ホスト名] および [ポート] パラメータが設定されます。UDPDevice 関数がクライアントとして動作することが決定されると、このジョブに WriteDevice 関数が自動的に追加されます。この WriteDevice 関数は有効な [イベント] パラメータを適用することによって設定されます。[デバイス] パラメータには、UDPDevice 関数によって出力される [image] データ構造体が設定されます (これは WriteDevice 関数がジョブに追加されたときに自動的に設定されます)。また、有効なバイナリデータパケットまたは文字列情報を出力するセルが参照されます。

実行

ビジョンシステムがオンラインである場合、WriteDevice 関数が有効なイベントを受信するたびに、UDP メッセージが送信されます。サーバからの応答は必要ないため、[タイムアウト] パラメータは必要ありません。

応答を必要とする UDP クライアント

この構成では、UDP メッセージを UDP サーバデバイスに送信し、[タイムアウト] パラメータに設定された期限が切れるまで、サーバデバイスからの応答を待機するように In-Sight ビジョンシステムを設定します。

設定

ジョブに UDPDevice 関数が追加され、この関数に対して有効な [ホスト名] および [ポート] パラメータが設定されます。次に、[タイムアウト] パラメータに適切なタイムアウト値を設定し、自動的に追加された WriteDevice 関数を設定します。それらの関数の設定後、QueryDevice 関数を追加し、その Event 関数を適切なイベントに設定し、[デバイス] パラメータを UDPDevice 関数と送信される適切なデータへの参照によって出力される [image] データ構造体に設定します。ジョブに UDPDevice 関数が追加され、この関数に対して有効な [ホスト名] および [ポート] パラメータが設定されます。UDPDevice 関数がクライアントとして動作することが決定されると、このジョブに WriteDevice 関数が自動的に追加されます。この WriteDevice 関数は有効な [イベント] パラメータを適用することによって設定されます。[デバイス] パラメータには、UDPDevice 関数によって出力される [image] データ構造体、および送信される適切なデータへの参照が設定されます。

実行

ビジョンシステムがオンラインである場合、QueryDevice 関数の [イベント] パラメータがトリガされるたびに UDP メッセージが送信されます。サーバからの応答を待っている間、このジョブのそのほかの関数が実行されます。サーバから応答が来ない場合、または [タイムアウト] パラメータの期間を過ぎてから応答を受信した場合はエラーが返されます。このエラーは、次のイベントによって新たな UDP メッセージの送信がトリガされたときにクリアされます。

メッセージを受信するだけの UDP サーバ

この構成では、UDP クライアントデバイスから UDP メッセージを受信するように In-Sight ビジョンシステムを設定します。

設定

ジョブに UDPDevice 関数が追加されます。[ホスト名] パラメータは空のままですが、[ポート] パラメータには有効な値が設定されます。UDPDevice 関数がサーバとして動作することが決定されると、このジョブに ReadDevice 関数が自動的に追加されます。この ReadDevice 関数は有効な [イベント] パラメータを適用することによって設定されます。[デバイス] パラメータには、UDPDevice 関数によって出力される [image] データ構造体が設定されます (これは ReadDevice 関数がジョブに追加されたときに自動的に設定されます)。

実行

ビジョンシステムがオンラインの場合、これはスプレッドシートのバックグラウンドで実行され、メッセージの送信を待機する UDP サーバとして動作します。メッセージを受信したサーバはスプレッドシートをトリガして ReadDevice 関数を実行し、着信データをこの関数に代入します。このメッセージはビジョンシステムの IP アドレスに直接送信することができ、またはネットワーク上にある複数のビジョンシステムにブロードキャストメッセージとして送信することもできます。

メッセージを受信し応答する UDP サーバ

この構成では、UDP クライアントデバイスから UDP メッセージを受信し、メッセージが正常に受信されたことを示す応答を送信するように In-Sight ビジョンシステムを設定します。

設定

2 つの UDPDevice 関数がジョブに追加されます。1 つめの UDPDevice 関数はサーバとして設定されます ([ホスト名] パラメータは空のままですが、[ポート] パラメータには有効な値が設定されます)。2 つめの UDPDevice 関数はクライアントとして設定されます。着信パケットのリモートアドレスの取得には、GetRemoteAddress 関数が使用されます。また、パケットを発行したリモートポートの取得には GetRemotePort 関数が使用されます。

実行

サーバの着信メッセージおよび発信メッセージの処理には、2 つの UDPDevice 関数が使用されます。メッセージを受信すると、このメッセージを実行し、処理するために、スプレッドシートがトリガされます。ジョブが応答を作成した場合、このイベントによって、応答パケットを送信するための WriteDevice 関数もトリガされます。着信パケットには IP アドレスとポート番号が含まれています。これらは、WriteDevice 関数によって、応答パケットの送信に使用されます。このメッセージはビジョンシステムの IP アドレスに直接送信することができ、またはネットワーク上にある複数のビジョンシステムにブロードキャストメッセージとして送信することもできます。

関連項目

バイナリ関数

ReadDevice 関数

WriteDevice 関数

QueryDevice 関数


WriteCCLinkBitBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

FormatOutputBuffer 関数によって生成された、参照される [image] 構造体からのデータを、イベントのトリガ時に、CC-Link プロトコルを使用している CC-Link ネットワークに書き込みます。

注意:
  • この機能を有効にするには、In-Sight ビジョンシステムが In-Sight CIO-MICRO-CC I/O モジュールに接続されている必要があります。
  • In-Sight ビジョンシステムが CC-Link 経由で三菱電機 Automation Controller と通信するように設定されている場合、プロトコルはビジョンシステムと Automation Controller との間のデータ転送のみをサポートします。

WriteCCLinkBitBuffer 関数関数の入力パラメータ

WriteCCLinkBitBuffer 関数 (

イベント,

バッファ

)

イベント

指定した [image] 構造体を書き込むイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

バッファ

FormatOutputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体には、自動的にフォーマットされたデータが含まれます。

注意:　出力データの最大長は、256 バイトです。

WriteCCLinkBitBuffer 関数関数の結果出力

戻り値

書き込んだ要素の数を返します。次の場合には #ERR を返します。

  • 入力パラメータが無効の場合
  • In-Sight ビジョンシステムが In-Sight CIO-MICRO-CC I/O モジュールに接続されていない場合
  • FormatOutputBuffer 関数の項目が、[ビット] または [16 ビット整数] 以外のデータ型の場合

関連項目

  • 入出力関数について
  • CC-Link 経由での三菱電機 Automation Controller との通信
  • ReadCCLinkBitBuffer 関数
  • ReadCCLinkWordBuffer 関数
  • WriteCCLinkWordBuffer 関数


WriteCCLinkWordBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

FormatOutputBuffer 関数によって生成された、参照される [image] 構造体からのデータを、イベントのトリガ時に、CC-Link プロトコルを使用している　CC-Link ネットワークに書き込みます。

注意:
  • この機能を有効にするには、In-Sight ビジョンシステムが In-Sight CIO-MICRO-CC I/O モジュールに接続されている必要があります。
  • In-Sight ビジョンシステムが CC-Link 経由で三菱電機 Automation Controller と通信するように設定されている場合、プロトコルはビジョンシステムと Automation Controller との間のデータ転送のみをサポートします。

WriteCCLinkWordBuffer 関数関数の入力パラメータ

WriteCCLinkWordBuffer 関数 (

イベント,

バッファ

)

イベント

指定した [image] 構造体を書き込むイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

バッファ

FormatOutputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体には、自動的にフォーマットされたデータが含まれます。

注意:　出力データの最大長は、256 バイトです。

WriteCCLinkWordBuffer 関数関数の結果出力

戻り値

書き込んだ要素の数を返します。次の場合には #ERR を返します。

  • 入力パラメータが無効の場合
  • In-Sight ビジョンシステムが In-Sight CIO-MICRO-CC I/O モジュールに接続されていない場合

関連項目

  • 入出力関数について
  • CC-Link 経由での三菱電機 Automation Controller との通信
  • ReadCCLinkBitBuffer 関数
  • ReadCCLinkWordBuffer 関数
  • WriteCCLinkBitBuffer 関数


WriteDevice 関数

WriteDevice 関数 |
入出力関数 → ネットワーク | In-Sight 関数リファレンス

In-Sight ビジョンシステムから、TCP/IP または UDP 接続を使用して、ネットワーク上のほかのホストへデータをエクスポートします。

注意:　2 つの In-Sight ビジョンシステム間で TCP/IP 接続を確立するには、両方のデバイスをオンラインにする必要があります。

WriteDevice 関数関数の入力パラメータ

WriteDevice 関数(

イベント,

デバイス,

データ1,

[データ2,

...]

)

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] 　データ構造体
  • 関数を含むセル
  • Button 関数を含むセル
  • 数値を含むセル (ゼロ以外の数値は強制的に更新を実行します)。

デバイス

TCPDevice　関数 または UDPDevice　関数で作成された [image] データ構造体を含んでいるスプレッドシートのセルを参照します。

データ1, 2, ...

TCPDevice 関数で指定された TCP/IP サーバデバイスへエクスポートするデータを含むセルを参照します。TCPDevice 関数のデータのパケットタイプは、ASCII またはバイナリです。

WriteDevice 関数関数の結果出力

戻り値

指定したイベントが起動したときに、エクスポートされるデータを含む [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

注意:
  • フルの状態の TCP/IP バッファへの書き込み操作を行っている間に、参照している TCPDevice　関数で指定したタイムアウト時間を超過した場合は、#ERR が返されます。
  • UPD 通信はコネクションレスなので、UDP 通信を設定する際には、タイムアウト時間は必要ありません。

関連項目

  • バイナリ関数
  • Event 関数
  • ReadDevice 関数
  • QueryDevice 関数
  • TCPDevice 関数
  • UDPDevice 関数


WriteEIP 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

EtherNet/IP プロトコルを使用するリモートクライアントデバイスにデータを書き込みます。データは 1 つの RPI: パケット要求間隔 RPI　でクライアントに送信されます。RPI 間隔は、クライアントデバイスによって設定されます。

WriteEIP 関数(

イベント,

MapSpec,

値1,

[値2,

...]

)

注意:

  • In-Sight センサでは、EtherNet/IP プロトコルを使用して同時に複数のデバイスと通信できますが、明示的な双方向接続は一度に 1 つしか行えません。
  • In-Sight センサは、サーバとしてのみ使用できます。In-Sight センサがほかのデバイスへの接続を開始することはありません。アセンブリデータ構成は、クライアントデバイスで指定する必要があります。
  • スプレッドシートには複数の WriteEIP 関数を挿入しないでください。WriteEIP 関数が複数あると、フラッシュメモリバッファへの送信待ちデータが上書きされることがあります。
  • RPI 間隔が 10 ミリ秒未満の場合、一部のビジョンツールのパフォーマンスに大きく影響する可能性があります。
  • In-Sight センサは、明示的および非明示的な EtherNet/IP メッセージングをサポートしています。 Closed 例

    セル A4 の ReadEIP($A$0, "0d:4d:8s") は、2 つの 32 ビット整数とヌル終了文字列を PLC から読み取ります。

    GetBufferData($A$4, 0) は、最初の 32 ビット整数を表示します。

    GetBufferData($A$4, 1) は、2 番目の 32 ビット整数を表示します。

    GetBufferData($A$4, 2) は、文字列を表示します。

  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。
  • 詳細については、『Using EtherNet/IP with In-Sight Explorer and SLC 5/05』を参照してください。

WriteEIP 関数関数の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル。
  • Button 関数を含んでいるセル

注意:　デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスが ON の場合、関数への入力が更新されると、関数は必ず実行されます。

MapSpec

コロン文字で区切られた指定子のリストから構成されるデータマッピングを指定します。各指定子は、開始バイトとデータ型コードの 2 つの部分から構成されます。サポートされている文字コードは、次のとおりです。

コード | データ型
i | 8 ビットの整数
il | 16 ビットの整数
d | 32 ビットの整数
f | 32 ビット浮動小数点数
s | テキスト文字列

例:　"0i:1f:5d:9s" の場合、最初のデータ項目 (オフセット 0) は 8 ビット整数を指定し、2 番目の項目 (オフセット 1) は 32 ビットの浮動小数点値を指定し、3 番目の項目 (オフセット 5) は 4 バイトの符号付き整数を指定し、パケットの残り (オフセット 9 以降) は文字列を指定します。

注意:　出力データの最大長は、492 バイトです。

値

MapSpec (値1, 値2, ...) と一致する値の可変長リストを指定します。

WriteEIP 関数関数の結果出力

戻り値

#ERR:

  • 入力パラメータが無効の場合
  • クライアントへの接続が確立されていない場合

関連項目

ReadEIP 関数

入出力関数について


WriteEIPBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

EtherNet/IP プロトコルを使用して、FormatOutputBuffer 関数によって作成された、参照される [image] 構造体からリモートクライアントデバイスにデータを書き込みます。データは 1 つの RPI: パケット要求間隔 RPI でクライアントに送信されます。RPI 間隔は、クライアントデバイスによって設定されます。

WriteEIPBuffer 関数 (

イベント,

バッファ

)

注意:

  • In-Sight センサでは、EtherNet/IP プロトコルを使用して同時に複数のデバイスと通信できますが、明示的な双方向接続は一度に 1 つしか行えません。
  • In-Sight センサは、サーバとしてのみ使用できます。In-Sight センサがほかのデバイスへの接続を開始することはありません。アセンブリデータ構成は、クライアントデバイスで指定する必要があります。
  • スプレッドシートには複数の WriteEIPBuffer 関数を挿入しないでください。WriteEIPBuffer 関数が複数あると、メモリバッファへの送信待ちデータが上書きされることがあります。
  • RPI 間隔が 10 ミリ秒未満の場合、一部のビジョンツールのパフォーマンスに大きく影響する可能性があります。
  • In-Sight センサは、明示的および非明示的な EtherNet/IP メッセージングをサポートしています。 Closed 例

    セル A4 の ReadEIP($A$0, "0d:4d:8s") は、2 つの 32 ビット整数とヌル終了文字列を PLC から読み取ります。

    GetBufferData($A$4, 0) は、最初の 32 ビット整数を表示します。

    GetBufferData($A$4, 1) は、2 番目の 32 ビット整数を表示します。

    GetBufferData($A$4, 2) は、文字列を表示します。

  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。
  • 詳細については、『 Using EtherNet/IP with In-Sight Explorer and ControlLogix』を参照してください。

WriteEIPBuffer 関数の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体
  • 関数を含むセル
  • Button 関数を含むセル

バッファ

FormatOutputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体には、自動的にフォーマットされたデータが含まれます。

注意: 出力データの最大長は、4,000 バイトです。

WriteEIPBuffer 関数の結果出力

戻り値

#ERR:

  • 入力パラメータが無効の場合
  • クライアントへの接続が確立されていない場合

関連項目

ReadEIPBuffer 関数

ReadEIP 関数

WriteEIP 関数

入出力関数について


WriteFTP 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

データファイルのファイルへの書き出し、または追記を行います。この関数は通常、データ結果のログ作成に使用されます。このログはファイルで参照できます。

  • WriteFTP 関数の入力パラメータ
  • WriteFTP 関数の結果出力
  • WriteFTP 関数の例
  • 関連項目

注意:

  • WriteFTP 関数を使用するには、In-Sight ビジョンシステムをオンラインにする必要があります。
  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。
  • FTP サーバ接続のポート番号を変更するには、ホスト名 (または IP アドレス)、コロン (:)、新しいポート番号の順に追記します。例えば、現在のホスト名が PRODUCTION1 である場合、ポート番号をデフォルト (ポート 21　含む) からポート 34 に変更するには、ホスト名パラメータに PRODUCTION1:34 と指定します。

  • 標準ユーザをサポートするために、In-Sight Explorer FTP サーバを使用している場合には、保存されるファイルのデフォルト位置が変更されます (In-Sight 4.5.0 以降)。Emulator フォルダは、C:\ProgramData\Cognex\In-Sight\In-Sight Explorer x.x.x\Emulator (Windows Vista 以降)、および C:\Documents and Settings\All Users\Application Data\Cognex\In-Sight\In-Sight Explorer x.x.x\Emulator (Windows XP) です。

WriteFTP 関数関数の入力パラメータ

WriteFTP 関数(

イベント,

ホスト名,

ユーザ名,

パスワード,

ファイル名,

データフォーマット,

文字列,

追記

)

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル。
  • Button 関数を含んでいるセル

注意:　デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスが ON の場合、関数への入力が更新されると、関数は必ず実行されます。

ホスト名

ファイルの出力先になるネットワーク上のホスト名 (または IP アドレス) を指定します。出力先のシステムとしては、ネットワーク上の In-Sight エミュレータまたは FTP サーバとして認識されるデバイスがあります。

ユーザ名

出力先ホストの FTP サーバ用の有効なユーザ名です。このユーザ名は、ファイル出力元の In-Sight ビジョンシステムに登録されている必要はありません。

パスワード

出力先ホストの FTP サーバ用の有効なパスワードです。パスワードは最大 15 文字で大文字と小文字の区別があります。

注意:

  • セキュリティの目的から、入力されたパスワードは WriteFTP 関数のプロパティシートや数式バー内では、"*" の表示でマスクされます。
  • パスワードはジョブファイルでは暗号化されたフォーマットで保存されます。

ファイル名

ファイルの名前です。ロングファイル名がサポートされています。パスが指定されていない場合は、ファイルは出力先ホストにある FTP サーバのデフォルトディレクトリに出力されます。FTP サーバ上にそのファイルが存在しない場合は、WriteFTP 関数の初回実行時に自動的に作成されます。デフォルトのファイル名は InSight です。

データフォーマット

ファイルのタイプです。各タイプに応じた拡張子が、自動的にファイル名に付加されます。

0 = テキスト | 標準 ASCII フォーマットのテキストファイル (.txt)。
1 = HTML (デフォルト) | 標準 HTML フォーマットのファイル (.htm)。
4 = XML | 標準 XML フォーマットのファイル (.xml)。
5 = CSV | 標準 CSV フォーマットのファイル (.csv)。

文字列

文字列または文字列を含むセルへの参照。255 文字まで入力できます。

注意:

  • [データフォーマット] パラメータに HTML を指定した場合、テキスト文字列内で HTML タグを使用する必要があります。
  • 文字列を変更すると、書き込みや追記が行われます。

追記

データをファイルに出力する方法を指定します。

0 = OFF | ファイル内の既存のデータを上書きします。
1 = ON (デフォルト) | ファイルの最後にテキスト文字列を追記します。

WriteFTP 関数関数の結果出力

戻り値

データ構造体を返します。スプレッドシートが更新されるたびに、[文字列] パラメータに含まれているデータ文字列が出力先システムのファイルに出力されます。

出力先ホスト名、ユーザ名、パスワードなどの入力パラメータが無効な場合、またはファイルキューが満杯の場合、#ERR を返します。

注意:

  • 出力データがキューに入れられると、その後、出力先ホストへの転送が失敗した場合でも #ERR は返されません。
  • WriteImageFTP 関数により生成されたネットワークエラー (無効なホスト名、ユーザ名、またはパスワード) を検出するには、スプレッドシートに独立した Event 関数を挿入し、トリガパラメータに「ネットワークエラー」を指定します。これにより、これらのエラーは、この Event 関数を参照した GetErrorString 関数、および GetErrorCode 関数で報告されます。別のネットワークエラーが報告されるまで、最後のエラーメッセージとエラーコードが保存され、返されます。

[データフォーマット] で HTML を指定した WriteFTP 関数をスプレッドシートに配置すると、次の情報が挿入されます。

Stringf 関数 | "C" ライブラリの標準フォーマット文字列で構成されたテキスト文字列を返します。Stringf 関数のフォーマットは、指定されているファイルフォーマットによって異なります。
テキスト文字列 | このセルには、" Test string." というテキスト文字列が含まれます。
GetFilename 関数 | 右隣の WriteImageFTP 関数から出力される画像ファイルの名前を表示します。デフォルトでは、画像ファイルの名前は WriteFTP 関数のプロパティシートに入力したファイル名と同じ名前になり、数値カウンタが追記されます。
データ構造体 | WriteImageFTP 関数が配置され、 [image] データ構造体を返します。WriteImageFTP 関数のプロパティシートの上から 5 つ目までのパラメータ値は、元の WriteFTP パラメータと同じものが使用されます。 注意: WriteFTP 関数のプロパティシートに後から変更を加えても、WriteImageFTP 関数のプロパティシートの内容は更新されません。

[データフォーマット] でテキストを指定した場合は、Stringf 関数だけがスプレッドシートに挿入されます。

WriteFTP 関数例

注意:　例 1 では、WriteFTP 関数のプロパティシートで編集されたパラメータは、[ホスト名]、[ユーザ名]、および [パスワード] の 3 つだけです。例 2 では、[ホスト名]、[ユーザ名]、[パスワード]、および [データ] フォーマットの 4 つのパラメータが編集されています。例 3 では、例 1 と同じパラメータが使用されていますが、自動的にスプレッドシートに挿入された関数が編集され、さらにほかの関数が追加されています。

WriteFTP の例 1:

A2 = WriteFTP($A$0,"FACTORYFLOOR-1","admin","*","InSight",1,B2,1)

B2 = Stringf("<LI><A HREF=%c%s%c>%s</A></LI>\r\n",34,D2,34,C2)

C2 = ' Test string.

D2 = GetFilename(E2)

E2 = WriteImageFTP($A$0,"FACTORYFLOOR-1","admin","*", $A$0,"InSight",999,0,0,0)

画像を取り込んだ後にスプレッドシートが更新されると、上記の式によって、セル C2 に含まれているテキスト文字列が、ホスト名 FACTORYFLOOR-1 のシステムにある InSight.htm ファイルの最後に追記されます。ユーザ名 admin とそのパスワードが FACTORYFLOOR-1 に登録されている必要があります。登録されていない場合は、スプレッドシートに #ERR が返されます。HTML ファイル内には、画像ファイル InSightxxx.bmp へのハイパーリンクが生成され、セル C2 に含まれている " Test string." というテキスト文字列が挿入されます。WriteImageFTP の [リセット] パラメータの値が OFF になっているため、1 番目のファイル名は InSight000.bmp、2 番目のファイル名は InSight001.bmp というように連続して出力されます。

Closed 例 1 のスプレッドシート表示例

WriteFTP の例 2:

A2 = WriteFTP($A$0,"FACTORYFLOOR-1","admin","*","InSight",0,B2,1)

B2 = Stringf("Test string.¥r¥n")

画像を取り込んだ後にスプレッドシートが更新されると、上記の式によって、セル C2 に含まれているテキスト文字列が、ホスト名 FACTORYFLOOR-1 のシステムにある InSight.txt ファイルの最後に追記されます。ユーザ名 admin とそのパスワードが FACTORYFLOOR-1 に登録されている必要があります。登録されていない場合は、スプレッドシートに #ERR が返されます。テキストファイル内には、" Test string." というテキスト文字列が挿入されます。

Closed 例 2 のスプレッドシート表示例

WriteFTP の例 3:

A2 = WriteFTP($A$0,"FACTORYFLOOR-1","admin","*","InSight",1,B2,1)

B2 = Stringf("<LI>%s</LI><BR>\r\n<IMG SRC=%c%s%c><BR><BR>\r\n",C2,34,D2,34)

C2 = Concatenate("Failure #",F2,".")

D2 = GetFilename(E2)

E2 = WriteImageFTP($A$0,"FACTORYFLOOR-1","admin","*", $A$0,"InSight",999,G2,0,0)

F2 = Count($A$0,999,G2,-1)

G2 = Button("リセット", -1)

画像を取り込んだ後にスプレッドシートが更新されると、上記の式によって、セル C2 に含まれているテキスト文字列が、ホスト名 FACTORYFLOOR-1 のシステムにある InSight.htm ファイルの最後に追記されます。ユーザ名 admin とそのパスワードが FACTORYFLOOR-1 に登録されている必要があります。登録されていない場合は、スプレッドシートに #ERR が返されます。HTML ファイル内には、各画像に箇条書きの見出しが付けられて画像が表示されます。1 番目の見出しは "Failure #0."、2 番目の見出しは "Failure #1." というように連続して表示されます。WriteImageFTP の [リセット] パラメータの値が OFF になっているため、1　番目の画像ファイル名は InSight000.bmp、2 番目のファイル名は InSight001.bmp というように連続して出力されます。

Closed 例 3 のスプレッドシート表示例

Closed 出力された HTML ファイルの Internet Explorer での表示例

関連項目

  • WriteImageFTP 関数
  • 入出力関数について


WriteImageFTP 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

取り込み中の画像をネットワークの FTP サーバに出力します。画像ファイルとして、画像上にグラフィックスオーバレイを含めた SVG ファイルを作成することもできます。一般的には、検査に失敗した画像を自動保存するために使用します。

  • WriteImageFTP 関数の入力パラメータ
  • WriteImageFTP 関数の結果出力
  • WriteImageFTP 関数の例
  • 関連項目

注意:

  • この関数では、画像ファイルと SVG ファイルを送信するために In-Sight ビジョンシステムがオンラインである必要があります。
  • In-Sight ビジョンシステムにリモートでログオンしている場合、関数を使用すると、画像取り込みごとに画面の画像が更新されないことがあります。
  • 関数を含む、メモリを多く使用するジョブが繰り返し実行されると、FTP コマンド "Get image.jpg" (または .bmp) は失敗する場合があります。これは、ビジョンシステムのメモリが断片化されすぎるためです。ジョブの実行は正常に継続されます。
  • ビジョンシステムをオンラインにしているときに AcquireImage パラメータを変更すると、関数によって現在の画像が送信されます。
  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。
  • FTP サーバ接続のポート番号を変更するには、ホスト名 (または IP アドレス)、コロン (:)、新しいポート番号の順に追記します。例えば、現在のホスト名が PRODUCTION1 である場合、ポート番号をデフォルト (ポート 21含む) からポート 34 に変更するには、ホスト名パラメータに PRODUCTION1:34 と指定します。

  • 標準ユーザをサポートするために、In-Sight Explorer FTP Serverを使用するときの、画像のデフォルトの保存先が変更されています (In-Sight 4.5.0 以降)。Emulator フォルダは、C:\ProgramData\Cognex\In-Sight\In-Sight Explorer x.x.x\Emulator (Windows Vista 以降)、および C:\Documents and Settings\All Users\Application Data\Cognex\In-Sight\In-Sight Explorer x.x.x\Emulator (Windows XP) です。

  • 保存された画像のデフォルト位置をエミュレータフォルダとして保持し、ディレクトリに 250 以上の画像ファイルの保存を許可する場合、ビジョンシステムはファームウェアの更新を実行することができなくなります。ディレクトリから画像ファイルを削除して、ファームウェアの更新機能を回復します。

WriteImageFTP 関数関数の入力パラメータ

WriteImageFTP 関数 (

イベント,

ホスト名,

ユーザ名,

パスワード,

画像,

ファイル名,

最大追記値,

リセット,

データフォーマット,

グラフィックスオーバーレイの保存,

解像度,

FTP キューを無効にする

)

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル。
  • Button 関数を含んでいるセル

注意: デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスが ON の場合、関数への入力が更新されると、関数は必ず実行されます。

ホスト名

画像ファイルの出力先になるネットワーク上のホスト名 (または IP アドレス) を指定します。出力先のデバイスとしては、ネットワーク上の In-Sight エミュレータまたは FTP サーバとして動作するホストがあります。

注意:

  • 無効なホスト名を指定した場合、最大 30 秒後に接続はタイムアウトします。
  • 画像を FTP サーバに書き込むとき、[ホスト名] および [ユーザ名] に指定する名前の前後には、スペースを使用することはできません。[ホスト名] および [ユーザ名] パラメータに指定した名前の前後にスペースが含まれる場合、指定したサーバへの画像の書き込みに失敗します。

ユーザ名

出力先ホストの FTP サーバ用の有効なユーザ名です。 このユーザ名は、画像ファイル出力元の In-Sight ビジョンシステムに登録されている必要はありません。

パスワード

出力先ホストの FTP サーバ用の有効なパスワードです。 パスワードは最大 15 文字で大文字と小文字の区別があります。

注意:

  • セキュリティの目的から、入力されたパスワードはプロパティシートや数式バー内では「*」の表示でマスクされます。
  • パスワードはジョブファイルでは暗号化されたフォーマットで保存されます。

画像

データ構造体を含むセルへの参照です。デフォルトの参照先は、セル A0 の [image] データ構造体です。

ファイル名

書き込む画像ファイルの名前です。[グラフィックスオーバレイ] パラメータが有効な場合は、SVG ファイルの名前も定義します。ロングファイル名がサポートされ、各ファイルが出力される時、それぞれのファイル名に数値カウンタが付加されます (数値カウンタの最大値は、[最大追記値] で指定します)。パスが指定されていない場合は、画像ファイルは出力先ホストにある FTP サーバのデフォルトディレクトリに出力されます。

最大追記値

指定されたファイル名で出力する画像ファイルの最大数 (0 ～ 9999999、デフォルト = 999)。 数値カウンタは指定されたファイル名の後ろに付加され、各画像ファイルが転送されるごとにカウンタは 1 つ増加します。カウンタが [最大追記値] に達するとリセットされ、出力先のシステムにある画像ファイルは同じ名前の新しいファイルで上書きされます。

数値カウンタの桁数は、[最大追記値] の桁数と等しくなります。例えば、[最大追記値] のデフォルト値 999 の場合は、ファイル名に 3 桁の数値が付加されます。0 が指定された場合は、ファイル名にカウンタは付加されません。

リセット

画像ファイルと SVG ファイルの両方に指定したファイル名に付加された数値カウンタを再開します。出力先のシステムに既にある画像ファイルと SVG ファイルは、同じ名前の新しいファイルで上書きされます。

0 = OFF (デフォルト) | [最大追記値] まで、各画像ファイルが転送されるごとにカウンタを 1 つ増加します。
1 = ON | カウンタを 0 にリセットします。

データフォーマット

送信先のホストに書き出される画像のファイルフォーマットです。

0 = BMP (デフォルト) | Windows ビットマップフォーマット (拡張子は .bmp です)。
1 = JPEG | 標準エンコード JPEG フォーマット (拡張子は .jpg です)。

グラフィックスオーバーレイの保存

In-Sight ビジョンツール、幾何計測関数および画面表示関数でサポートされているオーバレイグラフィックスデータを含めた SVG ファイルを、各関数の [表示] パラメータでグラフィックスを表示するように設定された場合に、作成するかどうかを指定します。オーバレイグラフィックスは [セルのフォーマット] ダイアログで指定したフォーマットを使用します。SVG ファイルと画像ファイルを表示するには SVG ファイルタイプをサポートする Web ブラウザ (Microsoft Internet Explorer 9.0 など) で SVG ファイルを開きます。SVG ファイルには、関連付けられている取り込まれた画像へのインターネットリンクが含まれます。ブラウザが SVG ファイルを開くと、続いてリンク先が表示され、取り込んだ画像がオーバレイグラフィックスとともに表示されます。

注意:

  • 有効にすると、SVG ファイルは [ファイル名] パラメータで指定した名前を使用します。
  • グラフィックスは Web ブラウザなどのサードパーティ製のアプリケーションによって表示されるため、オーバーレイグラフィックスデータは、ピクセル単位での正確な一致にはなりません。
  • Microsoft Internet Explorer 8.0 で SVG ファイルを表示するには、サードパーティ製のプラグインを使用する必要があります。Windows XP オペレーティングシステムを Microsoft Internet Explorer 8.0 および Adobe SVG プラグインと組み合わせて使用する場合、オーバーレイグラフィックスを表示するには、[データフォーマット] パラメータを JPG に設定する必要があります。
  • In-Sight ファームウェアでは、SVG と画像ファイルの各ペアの転送を保証していません。In-Sight ビジョンシステムがオーバーロードすると、検査や画像の取り込みが失敗しないように、SVG ファイルと画像ファイルの両方、またはいずれか 1 つの転送をスキップします。

0 = OFF (デフォルト) | 画像のみ転送されるように指定します。
1 = ON | 画像ファイルと SVG ファイルが転送されるように指定します。有効にすると、グラフィックスオーバーレイデータを含む SVG ファイルは画像に指定されたディレクトリに保存されます。Microsoft Internet Explorer 9.0 以降などの Web ブラウザを使用して、グラフィックスオーバーレイと画像を一緒に表示します。
解像度

画像がエクスポートされるときの画像解像度を指定します。

1 = フル (デフォルト) | 画像はフル解像度でエクスポートされます。
2 = ハーフ | 画像は半分の解像度でエクスポートされます。
3 = クォーター | 画像は 1/4 の解像度でエクスポートされます。
FTP キューを無効にする

FTP 転送の前に画像をキューに入れるかどうかを指定します。

0 = キュー (デフォルト) | この機能が有効な場合は、画像を破棄する前に、最大 1,000 回まで、5 ミリ秒ごとに FTP タスクキューへの画像の追加が試行されます。
1 = キューの無効化 | キューが無効化されている場合、一度に FTP タスクキューに追加されるのは、関数の各インスタンスからの画像 1 つのみです。それ以外の場合、画像は破棄され、FTP タスクキューへ再送信されません。

WriteImageFTP 関数関数の結果出力

戻り値

データ構造体を返します。スプレッドシートが更新されるたびに、指定された [image] データ構造体に含まれている画像データが出力先システムのファイルに出力されます。

出力先の [ホスト名]、[ユーザ名]、[パスワード] などの入力パラメータが無効な場合、または画像画像キューには一度に 1 つの画像が含まれます。WriteImageFTP を実行し、前の画像が送信される前に画像の送信を試みると、関数はエラーを返します。 キュー

注意:

  • 画像データがキューに入れられると、その後、出力先ホストへの転送が失敗した場合でも #ERR は返されません。
  • 関数により生成されたネットワークエラー (無効なホスト名、ユーザ名、またはパスワード) を検出するには、スプレッドシートに独立した Event 関数を挿入し、トリガパラメータに「ネットワークエラー」を指定します。これにより、これらのエラーは、この Event 関数を参照した GetErrorString 関数、および GetErrorCode 関数によって報告されます。別のネットワークエラーが報告されるまで、最後のエラーメッセージとエラーコードが保存され、返されます。

WriteImageFTP 関数例

WriteImageFTP($A$0,"SYSTEM1","admin","*",$A$0,"\IMAGES\TEST",999,0,0,0,1,0)

画像を取り込んだ後にスプレッドシートが更新されると、上記の式によって、ネットワークにあるホスト名が SYSTEM1 の IMAGES ディレクトリにビットマップ画像が転送されます。ユーザ名が admin で、そのパスワードと IMAGES ディレクトリが SYSTEM1 に存在する必要があります。存在しない場合、スプレッドシートに #ERR が返されます。最初に転送されたファイルは、TEST000.BMP、2 番目が TEST001.BMP というように連続して出力されます。

注意: 検査で不合格となった画像のみを保存する方法としては、関数にセル状態を設定する手法が一般的です。

関連項目

  • WriteImageFTP 関数の設定
  • WriteFTP 関数
  • 入出力関数について


WriteImageSFTP 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

SSH プロトコルを使用して通信し、現在の画像をネットワークの SFTP サーバに書き込みます。画像ファイルとして、画像上にグラフィックスオーバレイを含めた SVG ファイルを作成することもできます。一般的には、検査に失敗した画像を自動保存するために使用します。

  • WriteImageSFTP 関数の入力パラメータ
  • WriteImageSFTP 関数の結果出力
  • WriteImageSFTP 関数の例
  • 関連項目
注意:
  • この関数は、別の In-Sight ビジョンシステムまたはエミュレータへの画像転送には使用できません。ビジョンシステムは、SFTP ネットワーク上のクライアントとしてのみ動作します。
  • この関数では、画像ファイルと SVG ファイルを送信するために In-Sight ビジョンシステムがオンラインである必要があります。
  • In-Sight ビジョンシステムにリモートでログオンしている場合、関数を使用すると、画像取り込みごとに画面の画像が更新されないことがあります。
  • 関数を含む、メモリを多く使用するジョブが繰り返し実行されると、FTP コマンド "Get image.jpg" (または .bmp) は失敗する場合があります。これは、ビジョンシステムのメモリが断片化されすぎるためです。ジョブの実行は正常に継続されます。
  • ビジョンシステムをオンラインにしているときに AcquireImage パラメータを変更すると、関数によって現在の画像が送信されます。
  • この関数を含むジョブを In-Sight Explorer 4.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 4.3.0 以降とのみ互換性を持ちます。
  • FTP サーバ接続のポート番号を変更するには、ホスト名 (または IP アドレス)、コロン (:)、新しいポート番号の順に追記します。例えば、現在のホスト名が PRODUCTION1 である場合、ポート番号をデフォルト (ポート 21含む) からポート 34 に変更するには、ホスト名パラメータに PRODUCTION1:34 と指定します。

  • 標準ユーザをサポートするために、In-Sight Explorer FTP Serverを使用するときの、画像のデフォルトの保存先が変更されています (In-Sight 4.5.0 以降)。Emulator フォルダは、C:\ProgramData\Cognex\In-Sight\In-Sight Explorer x.x.x\Emulator (Windows Vista 以降)、および C:\Documents and Settings\All Users\Application Data\Cognex\In-Sight\In-Sight Explorer x.x.x\Emulator (Windows XP) です。

  • 保存された画像のデフォルト位置をエミュレータフォルダとして保持し、ディレクトリに 250 以上の画像ファイルの保存を許可する場合、ビジョンシステムはファームウェアの更新を実行することができなくなります。ディレクトリから画像ファイルを削除して、ファームウェアの更新機能を回復します。

WriteImageSFTP 関数関数の入力パラメータ

WriteImageSFTP 関数(

イベント,

ホスト名 ,

ユーザ名 ,

パスワード ,

画像 ,

ファイル名 ,

最大追記値 ,

リセット ,

データフォーマット ,

グラフィックスオーバーレイの保存,

解像度,

SFTP キューを無効にする

)

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル。
  • Button 関数を含んでいるセル

注意: デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスが ON の場合、関数への入力が更新されると、関数は必ず実行されます。

ホスト名

画像ファイルの出力先になるネットワーク上のホスト名 (または IP アドレス) を指定します。出力先のデバイスとしては、ネットワーク上の In-Sight エミュレータまたは FTP サーバとして動作するホストがあります。 In-Sight ビジョンシステムは、SFTP ネットワーク上のクライアントとしてのみ動作します。WriteImageSFTP 関数は、別の In-Sight ビジョンシステムまたはエミュレータへの画像転送には使用できません。

注意:

  • 無効なホスト名を指定した場合、最大 30 秒後に接続はタイムアウトします。
  • 画像を FTP サーバに書き込むとき、[ホスト名] および [ユーザ名] に指定する名前の前後には、スペースを使用することはできません。[ホスト名] および [ユーザ名] パラメータに指定した名前の前後にスペースが含まれる場合、指定したサーバへの画像の書き込みに失敗します。

ユーザ名

出力先ホストの SFTP サーバ用の有効なユーザ名です。 このユーザ名は、画像ファイル出力元の In-Sight ビジョンシステムに登録されている必要はありません。

パスワード

出力先ホストの SFTP サーバ用の有効なパスワードです。 パスワードは最大 15 文字で大文字と小文字の区別があります。

注意:

  • セキュリティの目的から、入力されたパスワードはプロパティシートや数式バー内では「*」の表示でマスクされます。
  • パスワードはジョブファイルでは暗号化されたフォーマットで保存されます。

画像

データ構造体を含むセルへの参照です。デフォルトの参照先は、セル A0 の [image] データ構造体です。

ファイル名

書き込む画像ファイルの名前です。[グラフィックスオーバレイ] パラメータが有効な場合は、SVG ファイルの名前も定義します。ロングファイル名がサポートされ、各ファイルが出力される時、それぞれのファイル名に数値カウンタが付加されます (数値カウンタの最大値は、[最大追記値] で指定します)。パスが指定されていない場合は、画像ファイルは出力先ホストにある FTP サーバのデフォルトディレクトリに出力されます。

最大追記値

指定されたファイル名で出力する画像ファイルの最大数 (0 ～ 9999999、デフォルト = 999)。 数値カウンタは指定されたファイル名の後ろに付加され、各画像ファイルが転送されるごとにカウンタは 1 つ増加します。カウンタが [最大追記値] に達するとリセットされ、出力先のシステムにある画像ファイルは同じ名前の新しいファイルで上書きされます。

数値カウンタの桁数は、[最大追記値] の桁数と等しくなります。例えば、[最大追記値] のデフォルト値 999 の場合は、ファイル名に 3 桁の数値が付加されます。0 が指定された場合は、ファイル名にカウンタは付加されません。

リセット

画像ファイルと SVG ファイルの両方に指定したファイル名に付加された数値カウンタを再開します。出力先のシステムに既にある画像ファイルと SVG ファイルは、同じ名前の新しいファイルで上書きされます。

0 = OFF (デフォルト) | [最大追記値] まで、各画像ファイルが転送されるごとにカウンタを 1 つ増加します。
1 = ON | カウンタを 0 にリセットします。

データフォーマット

送信先のホストに書き出される画像のファイルフォーマットです。

0 = BMP (デフォルト) | Windows ビットマップフォーマット (拡張子は .bmp です)。
1 = JPEG | 標準エンコード JPEG フォーマット (拡張子は .jpg です)。

グラフィックスオーバーレイの保存

In-Sight ビジョンツール、幾何計測関数および画面表示関数でサポートされているオーバレイグラフィックスデータを含めた SVG ファイルを、各関数の [表示] パラメータでグラフィックスを表示するように設定された場合に、作成するかどうかを指定します。オーバレイグラフィックスは [セルのフォーマット] ダイアログで指定したフォーマットを使用します。SVG ファイルと画像ファイルを表示するには SVG ファイルタイプをサポートする Web ブラウザ (Microsoft Internet Explorer 9.0 など) で SVG ファイルを開きます。SVG ファイルには、関連付けられている取り込まれた画像へのインターネットリンクが含まれます。ブラウザが SVG ファイルを開くと、続いてリンク先が表示され、取り込んだ画像がオーバレイグラフィックスとともに表示されます。

注意:

  • 有効にすると、SVG ファイルは [ファイル名] パラメータで指定した名前を使用します。
  • グラフィックスは Web ブラウザなどのサードパーティ製のアプリケーションによって表示されるため、オーバーレイグラフィックスデータは、ピクセル単位での正確な一致にはなりません。
  • Microsoft Internet Explorer 8.0 で SVG ファイルを表示するには、サードパーティ製のプラグインを使用する必要があります。Windows XP オペレーティングシステムを Microsoft Internet Explorer 8.0 および Adobe SVG プラグインと組み合わせて使用する場合、オーバーレイグラフィックスを表示するには、[データフォーマット] パラメータを JPG に設定する必要があります。
  • In-Sight ファームウェアでは、SVG と画像ファイルの各ペアの転送を保証していません。In-Sight ビジョンシステムがオーバーロードすると、検査や画像の取り込みが失敗しないように、SVG ファイルと画像ファイルの両方、またはいずれか 1 つの転送をスキップします。

0 = OFF (デフォルト) | 画像のみ転送されるように指定します。
1 = ON | 画像ファイルと SVG ファイルが転送されるように指定します。有効にすると、グラフィックスオーバーレイデータを含む SVG ファイルは画像に指定されたディレクトリに保存されます。Microsoft Internet Explorer 9.0 以降などの Web ブラウザを使用して、グラフィックスオーバーレイと画像を一緒に表示します。
解像度

画像がエクスポートされるときの画像解像度を指定します。

1 = フル (デフォルト) | 画像はフル解像度でエクスポートされます。
2 = ハーフ | 画像は半分の解像度でエクスポートされます。
3 = クォーター | 画像は 1/4 の解像度でエクスポートされます。
SFTP キューを無効にする

FTP 転送の前に画像をキューに入れるかどうかを指定します。

0 = キュー (デフォルト) | この機能が有効な場合は、画像を破棄する前に、最大 1,000 回まで、5 ミリ秒ごとに FTP タスクキューへの画像の追加が試行されます。
1 = キューの無効化 | キューが無効化されている場合、一度に FTP タスクキューに追加されるのは、関数の各インスタンスからの画像 1 つのみです。それ以外の場合、画像は破棄され、FTP タスクキューへ再送信されません。

WriteImageSFTP 関数関数の結果出力

戻り値

データ構造体を返します。スプレッドシートが更新されるたびに、指定された [image] データ構造体に含まれている画像データが出力先システムのファイルに出力されます。

出力先の [ホスト名]、[ユーザ名]、[パスワード] などの入力パラメータが無効な場合、または画像画像キューには一度に 1 つの画像が含まれます。WriteImageFTP を実行し、前の画像が送信される前に画像の送信を試みると、関数はエラーを返します。 キュー

注意:

  • 画像データがキューに入れられると、その後、出力先ホストへの転送が失敗した場合でも #ERR は返されません。
  • 関数により生成されたネットワークエラー (無効なホスト名、ユーザ名、またはパスワード) を検出するには、スプレッドシートに独立した Event 関数を挿入し、トリガパラメータに「ネットワークエラー」を指定します。これにより、これらのエラーは、この Event 関数を参照した GetErrorString 関数、および GetErrorCode 関数によって報告されます。別のネットワークエラーが報告されるまで、最後のエラーメッセージとエラーコードが保存され、返されます。

WriteImageSFTP 関数例

WriteImageSFTP($A$0,"SYSTEM1","admin","*",$A$0,"\IMAGES\TEST",999,0,0,0,1,0)

画像を取り込んだ後にスプレッドシートが更新されると、上記の式によって、ネットワークにあるホスト名が SYSTEM1 の IMAGES ディレクトリにビットマップ画像が転送されます。ユーザ名が admin で、そのパスワードと IMAGES ディレクトリが SYSTEM1 に存在する必要があります。存在しない場合、スプレッドシートに #ERR が返されます。最初に転送されたファイルは、TEST000.BMP、2 番目が TEST001.BMP というように連続して出力されます。

注意: 検査で不合格となった画像のみを保存する方法としては、関数にセル状態を設定する手法が一般的です。

関連項目

  • WriteImageFTP 関数の設定
  • WriteFTP 関数
  • 入出力関数について


WriteMC 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

WriteMC 関数は、三菱電機 PLC およびモーションコントローラへの SLMP 接続を生成し、3E QnA 互換または 1E A 互換バイナリフレームを使用して Batch Write コマンドを送信し、PLC/MC へデータを書き込みます。

注意:　In-Sight ビジョンシステムが SLMP/MC プロトコル経由で PLC/MC と通信するように設定されている場合、SLMP/MC プロトコルはビジョンシステムと PLC/MC との間のデータ転送のみをサポートします。

WriteMC 関数 (

イベント,

ホスト名,

ポート,

PLC シリーズ,

デバイスのアドレス,

タイムアウト,

バッファ

)

WriteMC 関数関数の入力パラメータ

イベント

データを読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

ホスト名

データを書き込む三菱電機 PLC/MC の IP アドレスを指定します。

ポート

MELSEC イーサネットモジュール上で開く SLMP サーバのポート番号を指定します。

PLC シリーズ

データパケットがカプセル化されるメッセージフレームを指定します。

0 = Q/L シリーズ | QnA 互換 3E フレームを使用して Batch Write コマンドを送信します。
1 = FX シリーズ | A 互換 1E フレームを使用して Batch Write コマンドを送信します。

デバイスのアドレス

データを書き込む三菱電機 PLC のメモリ位置を指定します。

タイムアウト

この関数がデータ送信を試行する時間をミリ秒単位で指定します (5 ～ 30000、デフォルト = 1000 ms)。指定された時間が経過すると、実行は停止し、#ERR が返されます。

バッファ

FormatOutputBuffer 関数によって生成された、参照される [image] 構造体を指定します。この構造体は受信されたデータの解釈方法を定義します。

選択された PLC シリーズが Q/L シリーズである場合、出力データの総最大長は 1920 バイトです。選択された PLC シリーズが FX シリーズである場合、出力データの総最大長は 128 バイトです。

WriteMC 関数関数の結果出力

戻り値

書き込まれた要素の数。入力パラメータが無効であれば #ERR を返します。

関連項目

Event 関数

ReadMC 関数

GetBufferData 関数

入出力関数について


WriteModbusBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

FormatOutputBuffer 関数によって生成された、参照される [image] 構造体からデータを書き込み、Modbus プロトコルを使用して、リモートクライアントデバイスで使用できるようにします。In-Sight ビジョンシステムから読み込むリモートクライアントがこのデータにアクセスするには、レジスタ 30010 ～ 30137 から読み込む必要があります。

WriteModbusBuffer 関数 (

イベント,

バッファ,

バイト/ワードオーダ

)

WriteModbusBuffer 関数の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体
  • 関数を含むセル
  • Button 関数を含むセル

バッファ

FormatOutputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体には、自動的にフォーマットされたデータが含まれます。

注意: 出力データの最大長は、4,000 バイトです。

バイト/ワードオーダ

関数によって書き込まれるワードおよびバイトのビット順序を指定します。使用可能な値は次のとおりです。

  • ビッグエンディアン - 32 ビットワードを使用し、最初に最上位の値が格納されるように指定します。
  • リトルエンディアン - 32 ビットワードを使用し、最初に最下位の値が格納されるように指定します。
  • ビッグエンディアン、16 ビットワード - 最初に最上位の値が格納されるように指定します。
  • リトルエンディアン、16 ビットワード - 最初に最下位の値が格納されるように指定します。

WriteModbusBuffer 関数の結果出力

戻り値

#ERR:

  • 入力パラメータが無効の場合
  • クライアントへの接続が確立されていない場合

関連項目

ReadModbusBuffer 関数

入出力関数について


WriteProfinetBuffer 関数

WriteProfinetBuffer

入出力関数 → ネットワーク

In-Sight 関数リファレンス

FormatOutputBuffer 関数によって作成された、参照される [image] 構造体からリモート PROFINET I/O クライアントデバイスにデータを書き込みます。

WriteProfinetBuffer (

イベント,

Buffer

)

注意:

  • In-Sight センサは、サーバとしてのみ使用できます。In-Sight センサがほかのデバイスへの接続を開始することはありません。
  • スプレッドシートには複数の WriteProfinetBuffer 関数を挿入しないでください。WriteProfinetBuffer 関数が複数あると、メモリバッファへの送信待ちデータが上書きされることがあります。
  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。

WriteProfinetBuffer 関数の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体
  • 関数を含むセル
  • Button 関数を含むセル

バッファ

FormatOutputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体には、自動的にフォーマットされたデータが含まれます。

注意: 出力データの最大長は、4,000 バイトです。

WriteProfinetBuffer 関数の結果出力

戻り値

#ERR:

  • 入力パラメータが無効の場合
  • クライアントへの接続が確立されていない場合

関連項目

入出力関数について


WriteResult 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

送信側の In-Sight センサのスプレッドシートの値を別のデバイス（受信側）にエクスポートします。

WriteResult 関数 (

イベント,

セル1,

[セル2 ,

...]

)

注意:

  • 1 つのジョブで使用できる WriteResult 関数は 1 つのみです。 1 つのジョブに複数の WriteResult 関数が存在する場合、1 つを除くすべてが #ERR を返します。
  • 受信側の In-Sight デバイスのスプレッドシートには、値をインポートするための ReadResult 関数が含まれている必要があります。
  • 送信側と受信側のデバイスは、両方ともオンラインにする必要があります。
  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。
  • WriteResult 関数と ReadResult 関数を使用する場合は、ReadResult 関数を使用する In-Sight センサをネットワークトリガのマスターとして設定し、WriteResult 関数を使用するセンサをネットワークトリガのスレーブとして設定することを強く推奨します。これによって、マスターが現在のトリガに応答してスレーブによって生成された結果を読み取るため、結果を同期化できます。

WriteResult 関数の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

注意: デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスがオンの場合、関数への入力が更新されると、関数は必ず実行されます。

セル

送信側の In-Sight センサから受信側のデバイスへエクスポートする値を含んでいるスプレッドシート内の 1 つまたは複数のセルを参照します。セルが参照される順番に従って、受信側デバイスの [image] データ構造体の各値のインデックス位置が決まります。

WriteResult 関数の結果出力

戻り値

受信側の In-Sight センサに送信される値を含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

注意: たまっている TCP/IP バッファへの書き込み操作を行っている間に、参照されている ReadResult 関数で指定されたタイムアウト時間を超過した場合は、#ERR が返されます。

WriteResult の例

ReadResult の例に、ReadResult と WriteResult の 2 つの関数に関する共同動作の例を示しています。

関連項目

ReadResult 関数


WriteResultsBuffer 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

参照している [image] 構造体からのデータを書き込みます。データは FormatOutputBuffer 関数によって生成され、現在有効なファクトリ通信プロトコル ([ネットワークの設定] ダイアログで有効にする) に書き込まれます。この関数は、ファクトリ通信プロトコルの [Result Code] フィールドにも書き込みます。

  • WriteResultsBuffer 関数の入力パラメータ
  • WriteResultsBuffer 関数の出力
  • 関連項目

注意: PROFINET 通信プロトコルが有効な場合に WriteResultsBuffer 関数を使用すると、バイトがスワップされます。

WriteResultsBuffer 関数 の入力パラメータ

WriteResultsBuffer 関数 (

イベント,

バッファ,

Result Code

)

イベント

ファクトリプロトコルへの結果の書き込みのきっかけとなるイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

バッファ

FormatOutputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体には、自動的にフォーマットされたデータが含まれます。

注意: 出力データの最大長は、4,000 バイトです。

Result Code

In-Sight ビジョンシステムによる検査の結果を接続されているデバイスに伝えるために使用できる 16 ビットの整数を指定します。

WriteResultsBuffer 関数 の出力

戻り値

参照されている FormatOutputBuffer 関数に含まれるデータ項目の総数。

関連項目

  • 入出力関数について
  • ReadLatchedUserDataBuffer 関数
  • ReadUserDataBuffer 関数


WriteSMTP 関数

入出力関数 → ネットワーク

In-Sight 関数リファレンス

SMTP サーバを介して電子メールメッセージを送信します。

WriteSMTP 関数 (

イベント,

SMTP サーバ,

To,

Cc,

From,

Subject,

重要度,

添付画像,

画像名,

画像フォーマット,

スクリーンキャプチャ,

メッセージ本文,

メッセージ本文,

メッセージ本文,

メッセージ本文

)

メッセージには画像を添付できます。画像ファイルとして、画像上にグラフィックスオーバレイを含めた完全なスクリーンキャプチャを作成することもできます。

警告: 継続的な画像の取り込みのような繰り返しの多いイベントには、この関数を参照させないでください。メッセージでメールサーバの負荷が増大してしまいます。

注意:

  • セル状態の WriteSMTP 関数では、Event 関数または Button 関数を参照する必要があります。
  • WriteSMTP 関数を使用するには、In-Sight センサをオンラインにする必要があります。
  • WriteSMTP 関数を含む、メモリを多く使用するジョブが繰り返し実行されると、FTP コマンド "Get image.jpg" (または .bmp) は失敗する場合があります。これは、In-Sight メモリが断片化されすぎるためです。ジョブの実行は正常に継続されます。
  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。

WriteSMTP 関数の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含むセル
  • Button 関数を含むセル

注意: デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスがオンの場合、関数への入力が更新されると、関数は必ず実行されます。

SMTP サーバ

SMTP サーバのホスト名または IP アドレス。

注意:

  • メッセージは MIME 1.0 フォーマットで送信されます。実際の SMTP メールサーバ名または IP アドレスを参照する必要があります。
  • DNS メールエクスチェンジ (MX) のレコード検索機能はサポートされていません。実際の SMTP メールサーバ名または IP アドレスを参照する必要があります。
  • In-Sight センサに固定 IP アドレスが割り当てられている場合、デフォルトゲートウェイとドメインを両方とも正しく設定する必要があります。両方が正しく設定されていないと、WriteSMTP 関数がメッセージを送信できないことがあります。
  • 無効なホスト名を指定した場合、最大 30 秒後に接続はタイムアウトします。

To

電子メールの宛先アドレスです。

Cc

電子メールのコピーの宛先アドレスです。

From

メッセージの差出人です。

注意: To、Cc、および From の値の形式は、"user@domain" です。ドメインは有効である必要があります。

Subject

メッセージの件名です。

重要度

メッセージの重要度です。

0 = 低

1 = 標準 (デフォルト)

2 = 高

添付画像

画像をメッセージに添付して送信します。

画像名

添付画像のファイル名です。デフォルトのファイル名は "Image" です。

画像フォーマット

送信先のホストに書き出される画像のファイルフォーマットです。

0 = BMP (デフォルト) | Windows ビットマップフォーマット (拡張子は .bmp です)。
1 = JPEG | 標準エンコード JPEG フォーマット (拡張子は .jpg です)。

スクリーンキャプチャ

リモートホストに画像を出力する際に、グラフィックスオーバレイを付けるかどうかを指定します (In-Sight 3400 のみ)。

0 (OFF) = グラフィックスオーバレイなし (デフォルト)

1 (ON) = グラフィックスオーバレイを含む

メッセージ本文

書き出すメッセージ本体の文字列または、文字列を含むセルへの参照を指定します。この関数では、4 つのセルへの参照が許可されます。各セルには最長 254 文字まで指定できます。

WriteSMTP 関数の結果出力

戻り値

スプレッドシートが更新されるとメッセージを送信する [image] データ構造体。

WriteSMTP 関数の例

WriteSMTP($A$0, "mailserver@yourdomain.com.", "recipient@yourdomain.com", "copy@yourdomain.com", "from@yourdomain.com", "Message", 1, 0, "Image", 0, 0, "Image Sent", "", "", "")

参照される Event 関数が起動してスプレッドシートが更新されたとき、この関数は SMTP メールサーバを介してメッセージを送信します。

Closed WriteSMTP のプロパティシートの例

関連項目

Button 関数

Event

セル状態

入出力関数について


シリアル I/O 関数

入出力関数

In-Sight 関数リファレンス

シリアル I/O 関数は、In-Sight センサのシリアルポートを介して、データの読み込みと書き出しを行います。

  • ReadSerial 関数:　シリアルポートからセルにテキスト文字列を読み込みます。
  • ReadDeviceNet 関数:　デバイスネットインタフェースモジュールにより送信されたデータをセルに読み込みます。
  • ReadDeviceNetBuffer 関数:　In-Sight センサのシリアルポートに接続されたデバイスネットインタフェースモジュールによって送信されたデータを、FormatInputBuffer 関数によって作成された、参照される [image] 構造体に読み込みます。
  • WriteDeviceNet 関数:　セルから、オプションのデバイスネットワークインタフェースモジュールにデータを書き込みます。
  • WriteDeviceNetBuffer 関数:　FormatOutputBuffer 関数によって作成された、参照される [image] 構造体にデータを書き込みます。このデータは、In-Sight センサのシリアルポートに接続されたデバイスネットワークインタフェースモジュールによって読み込まれます。
  • WriteSerial 関数:　テキスト文字列をセルからシリアルポートに出力します。


ReadDeviceNet 関数

ReadDeviceNet 関数 |
入出力関数 → シリアル I/O | In-Sight 関数リファレンス

In-Sight のシリアルポートに接続されている (オプションの) デバイスネットインタフェースモジュールからスプレッドシートセルにデータを読み込みます。

ReadDeviceNet 関数(

イベント ,

ポート ,

マッピング ,

互換モード

)

注意:

  • 選択されたシリアルポートは、DeviceNet　通信用に設定されている必要があります。また、In-Sight センサをオンラインにする必要があります。
  • CIO-1450 I/O モジュールを使用する場合、シリアルパケットが (終了文字を含めて) 256 バイトよりも大きいと、In-Sight センサと I/O モジュール間でシリアル通信の消失が発生する可能性があります。シリアル通信の消失が発生した場合は、両方の電源を入れ直す必要があります。

  • ReadDeviceNet 関数には、サードパーティの RS-232 デバイスネットゲートウェイアダプタが必要です。この関数は従来のインストール環境で使用できます。ただし、最新のアプリケーションで使用する場合は、RS-232 デバイスネットゲートウェイコンバータを完全にテストして、そのアプリケーションでも使用できることを確認してください。

ReadDeviceNet 関数関数の入力パラメータ

イベント

データを読み取る更新イベントを指定します。データを返すためには、このパラメータは、Event 関数を含んでいるセルを参照する必要があります。Event のトリガパラメータにはシリアルポート 1 を指定し、手動パラメータは OFF のままにしておく必要があります。Event 関数は、ジョブの編集ツールバーに Event(65,0) として表示されます。

ポート

データを読み込むシリアルポート (0 または 1) を指定します。選択できるポートはアクティブな In-Sight センサで使用できるポートによって異なります。

マッピング

コロン文字 (:) で区切られた指定子のリストから構成されるデータマッピングを指定します。各指定子は、(1) 開始バイトと、(2) データ型コードの 2 つの部分から構成されます。さまざまなデータ型コードを、次の表に示します。

コード | データ型
i | 8 ビットの整数
u | 8 ビット符号なし整数
il | 16 ビットの整数
ul | 16 ビット符号なし整数
f | 32 ビットの浮動小数点数
s | テキスト文字列

例:　データマッピング "0i:1f:5u:6s"　の場合、最初のデータ項目 (オフセット 0) はゼロ以外のときに画像取り込みトリガをかける 8 ビット整数を指定し、2 番目の項目 (オフセット 1) は浮動小数点値を指定し、3 番目の項目 (オフセット 5) は 1 バイトの符号なし整数を指定し、パケットの残り (オフセット 6 以降) は文字列を指定します。

注意:　データの長さは [DeviceNet モードの詳細設定] ダイアログに指定されているデバイスネットのブロックサイズと一致している必要があります。

互換モード

In-Sight 1000 が In-Sight 3000 と同じ順序で入力バイトストリームを解釈するかどうかを指定します。このパラメータは、In-Sight のほかのすべてのモデルでは無視されます。

ReadDeviceNet 関数関数の結果出力

戻り値 | デバイスネットインタフェースモジュールからスプレッドシートに読み込まれたデータを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | 構造体内のデータには GetBufferData 関数を使用してアクセスします。

関連項目

Event 関数

WriteDeviceNet 関数

シリアルポートのモード

入出力関数について


ReadDeviceNetBuffer 関数

入出力関数 → シリアル I/O

In-Sight 関数リファレンス

In-Sight センサのシリアルポートに接続されたデバイスネットインタフェースモジュールによって送信されたデータを読み込みます。参照される　 [image] 　構造体は FormatInputBuffer 関数によって作成されたもので、受信されたデータの認識方法を定義します。

ReadDeviceNetBuffer 関数(

イベント,

ポート,

バッファ

)

注意:

  • 選択されたシリアルポートは、DeviceNet　通信用に設定されている必要があります。また、In-Sight センサをオンラインにする必要があります。
  • CIO-1450 I/O モジュールを使用する場合、シリアルパケットが (終了文字を含めて) 256 バイトよりも大きいと、In-Sight センサと I/O モジュール間でシリアル通信の消失が発生する可能性があります。シリアル通信の消失が発生した場合は、両方の電源を入れ直す必要があります。
  • ReadDeviceNetBuffer 関数には、サードパーティの RS-232 デバイスネットゲートウェイアダプタが必要です。この関数は従来のインストール環境で使用できます。ただし、最新のアプリケーションで使用する場合は、RS-232 デバイスネットゲートウェイコンバータを完全にテストして、そのアプリケーションでも使用できることを確認してください。

ReadDeviceNetBuffer 関数関数の入力パラメータ

イベント | データを読み取る更新イベントを指定します。データを返すためには、このパラメータは、Event 関数を含んでいるセルを参照する必要があります。Event の トリガパラメータにはシリアルポート 1 を指定し、手動パラメータは OFF のままにしておく必要があります。Event 関数は、ジョブの編集ツールバーに Event(65,0) として表示されます。
ポート | データを読み込むシリアルポート (0 または 1) を指定します。選択できるポートはアクティブな In-Sight センサで使用できるポートによって異なります。
バッファ | FormatInputBuffer 関数によって生成された、参照される [image] 構造体を指定します。この構造体は受信されたデータの解釈方法を定義します。 注意: データの長さは [DeviceNet モードの詳細設定] ダイアログに指定されているデバイスネットのブロックサイズと一致している必要があります。

ReadDeviceNetBuffer 関数関数の結果出力

戻り値 | デバイスネットインタフェースモジュールからスプレッドシートに読み込まれたデータを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | 構造体内のデータには GetBufferData 関数を使用してアクセスします。

関連項目

Event 関数

WriteDeviceNetBuffer 関数

ReadDeviceNet 関数

WriteDeviceNet 関数

GetBufferData 関数

シリアルポートのモード

入出力関数について


ReadSerial 関数

ReadSerial 関数 |
入出力関数 → シリアル I/O | In-Sight 関数リファレンス

指定されたシリアルポートからセルにテキスト文字列を読み込みます。

  • ReadSerial 関数の入力パラメータ
  • ReadSerial 関数の結果出力
  • 関連項目

注意:

  • 選択されたシリアルポートは、Text モードに設定されている必要があります。また、In-Sight ビジョンシステムをオンラインにする必要があります。
  • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
  • In-Sight Micro ビジョンシステムは、CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続している場合のみ、シリアル通信をサポートします。
  • CIO-WENET イーサネット I/O モジュールはシリアル通信をサポートしていません。
  • In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。
  • CIO-1450 I/O モジュールを使用する場合、シリアルパケットが (終了文字を含めて) 256 バイトよりも大きいと、In-Sight ビジョンシステムと I/O モジュール間でシリアル通信の消失が発生する可能性があります。シリアル通信の消失が発生した場合は、両方の電源を入れ直す必要があります。

ReadSerial 関数関数の入力パラメータ

ReadSerial 関数 (

イベント,

ボート

)

Event 関数 | データを読み取る更新イベントを指定します。データを返すためには、このパラメータは、Event 関数を含んでいるセルを参照する必要があります。Event の トリガパラメータにはシリアルポート 1 を指定し、手動パラメータは OFF のままにしておく必要があります。Event 関数は、ジョブの編集ツールバーに Event(65,0) として表示されます。
ポート | 読み込むシリアルポートを指定します。In-Sight ビジョンシステムは 1 しか指定できません。In-Sight エミュレータは 0 または 1 を指定できます。

ReadSerial 関数関数の結果出力

戻り値

読み込むテキスト文字列を含んでいる [image] データ構造体。入力パラメータが無効な場合は #ERR を返します。

関連項目

  • Event 関数
  • WriteSerial 関数
  • [シリアルポートの設定] ダイアログ
  • 入出力関数


WriteDeviceNet 関数

入出力関数 → シリアル I/O

In-Sight 関数リファレンス

セルから、In-Sight センサのシリアルポートに接続されたデバイスネットワークインタフェースモジュールにデータを書き込みます。

WriteDeviceNet 関数(

イベント,

ポート,

MapSpec,

互換性,

値1,

[値2,

...]

)

注意:

  • 選択するシリアルポートは、デバイスネット通信に設定されている必要があります。
  • この関数を有効にするには、In-Sight センサをオンラインにする必要があります。
  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。
  • シリアルポートの内部バッファがいっぱいになると、WriteDeviceNet 関数は画像取り込みの実行とスプレッドシートの関数を中止します。WriteDeviceNet 関数は、バッファからデータが読み取られ、バッファが空になると、スプレッドシートの操作を再開します。
  • WriteDeviceNet 関数には、サードパーティの RS-232 デバイスネットゲートウェイアダプタが必要です。この関数は従来のインストール環境で使用できます。ただし、最新のアプリケーションで使用する場合は、RS-232 デバイスネットゲートウェイコンバータを完全にテストして、そのアプリケーションでも使用できることを確認してください。

WriteDeviceNet 関数関数の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル。
  • Button 関数を含んでいるセル

注意:　デフォルトのイベント参照が削除された場合、この値はチェックボックスによって置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスが ON の場合、関数への入力が更新されると、関数は必ず実行されます。

ポート

書き込むシリアルポートを指定します。In-Sight センサは 1 しか指定できません。In-Sight エミュレータは 0 または 1 を指定できます。

MapSpec

コロン文字 (:) で区切られた指定子のリストから構成されるデータマッピング (DataMap) を指定します。各指定子は、開始バイトとデータ型コードの 2 つの部分から構成されます。さまざまなデータ型コードを、次の表に示します。

コード | データ型
i | 8 ビットの整数
u | 8 ビット符号なし整数
il | 16 ビットの整数
ul | 16 ビット符号なし整数
f | 32 ビット浮動小数点数
s | テキスト文字列

例:　"0i:1f:5u:6s "の場合、最初のデータ項目 (オフセット 0) はゼロ以外のときに画像取り込みトリガをかける 8 ビット整数を指定し、2 番目の項目 (オフセット 1) は浮動小数点値を指定し、3 番目の項目 (オフセット 5) は 1 バイトの符号なし整数を指定し、パケットの残り (オフセット 6 以降) は文字列を指定します。

注意:　データの長さは [DeviceNet モードの詳細設定] に指定されているデバイスネットのブロックサイズと一致している必要があります。

互換性

In-Sight 1000 が In-Sight 3000 と同じ順序で出力バイトストリームを送信するかどうかを指定します。ほかの In-Sight モデルでは、このパラメータは無視されます。

0 = 互換性オフ

1 = 互換性オン

値

MapSpec (値1, 値2, ...) と一致する値の可変長リストを指定します。

WriteDeviceNet 関数関数の結果出力

戻り値

入力パラメータが無効であれば #ERR を返します。

関連項目

Event 関数

ReadDeviceNet 関数

シリアルポートのモード

入出力関数について


WriteDeviceNetBuffer 関数

入出力関数 → シリアル I/O

In-Sight 関数リファレンス

FormatOutputBuffer　関数によって作成された参照 [image] 構造体からデータを書き込みます。このデータは、In-Sight センサのシリアルポートに接続されたデバイスネットワークインタフェースモジュールによって読み込まれます。

WriteDeviceNetBuffer 関数(

イベント,

ポート,

バッファ

)

注意:

  • 選択するシリアルポートは、デバイスネット通信に設定されている必要があります。
  • この関数を有効にするには、In-Sight センサをオンラインにする必要があります。
  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。
  • WriteDeviceNet 関数には、サードパーティの RS-232 デバイスネットゲートウェイアダプタが必要です。この関数は従来のインストール環境で使用できます。ただし、最新のアプリケーションで使用する場合は、RS-232 デバイスネットゲートウェイコンバータを完全にテストして、そのアプリケーションでも使用できることを確認してください。

WriteDeviceNetBuffer 関数関数の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] 　データ構造体
  • 関数を含むセル
  • Button 関数を含むセル
  • 数値を含むセル (ゼロ以外の数値は強制的に更新を実行します)。

ポート

書き込むシリアルポートを指定します。In-Sight センサは 1 しか指定できません。In-Sight エミュレータは 0 または 1 を指定できます。

バッファ

FormatOutputBuffer 関数によって作成された、参照される [image] 構造体を指定します。この構造体には、自動的にフォーマットされたデータが含まれます。

注意:　データの長さは [DeviceNet モードの詳細設定] に指定されているデバイスネットのブロックサイズと一致している必要があります。

WriteDeviceNetBuffer 関数関数の結果出力

戻り値

入力パラメータが無効であれば #ERR を返します。

関連項目

Event 関数

ReadDeviceNetBuffer 関数

ReadDeviceNet 関数

WriteDeviceNet 関数

シリアルポートのモード

入出力関数について


WriteSerial 関数

入出力関数 → シリアル I/O

In-Sight 関数リファレンス

スプレッドシートが更新されると、指定されたシリアルポートにテキスト文字列を書き込みます。

  • WriteSerial 関数の入力パラメータ
  • WriteSerial 関数の結果出力
  • 関連項目

注意:

  • 選択されたシリアルポートは、Text モードに設定されている必要があります。また、In-Sight ビジョンシステムをオンラインにする必要があります。
  • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
  • In-Sight Micro ビジョンシステムは、CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続している場合のみ、シリアル通信をサポートします。
  • CIO-WENET イーサネット I/O モジュールはシリアル通信をサポートしていません。
  • In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。
  • この関数を含むジョブを In-Sight Explorer 3.3.0 以降で保存した場合、このジョブは、In-Sight Explorer 3.3.0 以降とのみ互換性を持ちます。

WriteSerial 関数の入力パラメータ

WriteSerial 関数 (

イベント,

ポート,

文字列

)

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル。
  • Button 関数を含んでいるセル

注意:　デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスが ON の場合、関数への入力が更新されると、関数は必ず実行されます。

ポート

書き込むシリアルポートを指定します。In-Sight ビジョンシステムは 1 しか指定できません。In-Sight エミュレータは 0 または 1 を指定できます。

文字列

書き出すテキスト文字列または、文字列を含むセルへの参照を指定します。

WriteSerial 関数の結果出力

戻り値

書き込まれるテキスト文字列。入力パラメータが無効な場合は #ERR が返されます。

関連項目

  • ReadSerial 関数
  • Event 関数
  • シリアルポートのモード
  • 入出力関数について


時間・タイマ関数

入出力関数

In-Sight 関数リファレンス

時間関数は、In-Sight ビジョンシステムの内部時計を読み取り、指定された時間にスプレッドシートイベントのトリガをかけることができます。

注意: [日付/時刻の設定] ダイアログでは、センサの内部クロックをローカルまたはリモートのネットワークサーバの時刻に自動同期するための SNTP (Simple Network Time Protocol)、または IEEE 1588 (バージョン 2) 標準で定義されている CIP-Sync と PTP (Precision Time Protocol) のいずれを In-Sight ビジョンシステムが使用するかを設定します。

  • GetSystemTimeOffset 関数: データ構造体から抽出されたシステム時刻のオフセット値を返します。システム時刻のオフセットは、PTP が有効な場合のみ有効です。
  • GetTimeValue 関数: データ構造体を時刻値に変換します。
  • Now 関数:In-Sight センサの内部時計から日時を読み取ります。
  • Sleep 関数: ジョブの実行を一時停止します。
  • Timer 関数:一定の間隔で、または毎日指定された時刻に、スプレッドシートイベントのトリガをかけます。


Now 関数

Now 関数 |
入出力関数 → 時間・タイマ | In-Sight 関数リファレンス

In-Sight センサの内部時計から日時を読み取ります。GetClock 関数は、現在の日時を指定されたフォーマットで表すテキスト文字列を、スプレッドシートに挿入します。

Now 関数 (

イベント

)

注意: [日付/時刻の設定] ダイアログは、In-Sight センサの内部クロックをローカルまたはリモートのネットワークサーバの時刻に自動同期させるために、SNTP (Simple Network Time Protocol) を使用するように In-Sight センサを設定します。

Now 関数の入力パラメータ

イベント

日時を読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

Now 関数の結果出力

戻り値 | 現在の日時を含んでいる [image] データ構造体。入力イベントの値が無効な場合は #ERR を返します。
結果 | データアクセス関数の GetClock がスプレッドシートに自動挿入されます。

関連項目

Event 関数

Timer 関数

入出力関数について


Sleep 関数

時間・タイマ関数

In-Sight 関数リファレンス

指定された時間、ジョブの実行を一時停止します。

Sleep 関数 (

接続時間,

セル1,

[セル2],

...

)

Sleep 関数の入力パラメータ

接続時間 | ジョブの実行を一時停止する時間をミリ秒単位で指定します (5～5000)。 注意: この関数は、オンライン/オフラインに関係なく、初めてスプレッドシートに挿入されたとき、および関数が更新されるたびに実行されます。
セル | 参照されるセルの可変長リストを指定します。セルの範囲を参照している場合、ジョブは、最後のセルの更新後、指定された時間、一時停止されます。更新されるセルがない場合、この関数は実行されません。


Timer 関数

入出力関数 → 時間・タイマ

In-Sight 関数リファレンス

一定の間隔で、または毎日特定の時刻に、スプレッドシートイベントのトリガをかけます。デフォルトでは、In-Sight ビジョンシステムがオンラインである場合は、この関数は有効になります。

  • Timer 関数の入力パラメータ
  • Timer 関数の結果出力
  • 関連項目

注意:
  • [日付/時刻の設定] ダイアログは、センサの内部クロックをローカルまたはリモートのネットワークサーバの時刻に自動同期させるために、SNTP (Simple Network Time Protocol) を使用するように In-Sight センサを設定します。
  • [セル状態] から Timer 関数を有効/無効にして、関数を開始または停止することができます。

  • In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

Timer 関数関数の入力パラメータ

Timer 関数(

時間,

トリガ

)

時間

時間の間隔または毎日の特定の時刻を指定する文字列です。

注意: デフォルトの間隔は 1 分です。

Closed 時刻の例

"01:00:00" | 1 時間ごとにトリガをかけます。
"0:10:00" | 10 分ごとにトリガをかけます。
"0:01:00" | 1 分ごとにトリガをかけます。
"0:00:10" | 10 秒ごとにトリガをかけます。
"@8:00" | 毎日午前 8 時 00 分にトリガをかけます。
"@8:30, 20:00" | 毎日午前 8 時 30 分と午後 8 時 00 分にトリガをかけます。
注意: @ 記号を使用して具体的な時刻を指定すると、日付と時刻が [日付/時刻の設定] ダイアログで手動で設定されている場合、SNTP サーバがオンの場合、またはを除き、この関数は #ERR を返します。

トリガ

一定の間隔で、または毎日特定の時刻に発生させるトリガ信号を指定します。

番号 | トリガの種類
-1 = なし | トリガ信号は送られません。
32 = 手動 | 手動トリガをかけます。
80 ～ 87 = Soft 0 ～ Soft 7 | ソフトトリガ (0 ～ 7) 信号が送られます (デフォルト = ソフト 0)。

Timer 関数関数の結果出力

戻り値

データ構造体。入力パラメータが無効であれば #ERR を返します。

関連項目

  • Event 関数
  • Now 関数
  • 入出力関数について


波形関数

入出力関数

In-Sight 関数リファレンス

波形関数は、 [image] データ構造体を生成します。これは、In-Sight ビジョンシステムの 1 つまたは複数のパラレルディスクリート出力ラインを介して出力するタイミングパターンです。内蔵高速出力または Cognex I/O 拡張モジュールの出力は、[ディスクリート出力設定] ダイアログを使用して選択、設定することができます。

  • WriteWaveformPulseTrain: 単一ディスクリート出力ライン上で連続パルスを開始します。
  • WriteWaveformClocked: 2 つのディスクリート出力ラインを使用して、連続データビットをクロックします。


WriteWaveformClocked 関数

入出力関数 → 波形

In-Sight 関数リファレンス

ディスクリート出力の 1 つをクロックとして使用し、もう 1 つをデータ出力に使用して、データを 1 ビットづつクロックアウトすることを要求します。また、クロックドデータを含む [image] データ構造体を生成します。

WriteWaveformClocked 関数の入力

WriteWaveformClocked 関数の出力結果

WriteWaveformClocked 関数の例

WriteWaveformClocked 関数の関連項目

WriteWaveformClocked 関数 (

イベント,

クロック出力,

データ出力,

クロック間隔,

データ有効エッジ,

キュー,

アイドル間隔,

ビット

)

注意:

  • この関数を有効にするには、In-Sight システムをオンラインにする必要があります。
  • オンラインからオフラインに遷移すると、ただちに現在実行中の波形関数を停止し、キューに保存されている波形をすべて破棄します。In-Sight ビジョンシステムがオンラインのときのみ、波形が開始されます。
  • 波形開始トリガ後、波形はバックグラウンドでサイクル完了まで継続されます。

WriteWaveformClocked 関数 の入力

イベント

波形を開始するイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル。
  • Button 関数を含むセル。

注意: デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスがオンの場合、関数への入力が更新されると、関数は必ず実行されます。

クロック出力

クロックとして使用するディスクリート出力ラインを指定します。高速出力や、In-Sight ビジョンシステムのユーザ設定可能な LED、I/O モジュールを使用しての追加出力 (接続時のみ) など、すべてのディスクリート出力ラインを使用することができます。

注意: 選択したディスクリート出力の [種類] パラメータを [波形] に設定していない場合、#ERR が返されます。#ERR の状態は、1 つまたは複数のセルを実行中のパラメータで参照したり、条件付きで有効にした実行中の式でセルを参照したり、関数に含まれるセルを修正したり、ジョブをロードしたりすることによって、波形関数を実行するまでクリアされません。

データ出力

ビットストリームの送信に使用される出力ラインを指定します。高速出力や、In-Sight ビジョンシステムのユーザ設定可能な LED、I/O モジュールを使用しての追加出力 (接続時のみ) など、すべてのディスクリート出力ラインを使用することができます。

注意: 選択したディスクリート出力の [種類] パラメータを [波形] に設定していない場合、#ERR が返されます。#ERR の状態は、1 つまたは複数のセルを実行中のパラメータで参照したり、条件付きで有効にした実行中の式でセルを参照したり、関数に含まれるセルを修正したり、ジョブをロードしたりすることによって、波形関数を実行するまでクリアされません。
クロック間隔

クロック出力サイクルの間隔をミリ秒単位で指定します (10～10000、デフォルト = 1000)。WriteWaveformClocked 関数のデューティサイクルは常に 50% です。つまり、クロックのハイおよびローの時間は同じ長さになります。
データ有効エッジ

次のビットを読み取る時に、クロックを立ち上がりエッジにするか、立ち下がりエッジにするかを指定します。

0 = 立ち下がりエッジ (デフォルト) | 次のビットを読み取るときに、クロックを立ち下がりエッジにします。
1 = 立ち上がりエッジ | 次のビットを読み取るときに、クロックを立ち上がりエッジにします。
キュー

波形キューを有効にするか無効にするかを指定します。

0 = 無効 | キューを [無効] にしたときに、波形を実行している場合、#ERR を返します。
1 = 有効 (デフォルト) | キューを [有効] にしたときに、波形を実行している場合、新しい波形はキューに保存され、次に実行されます。

アイドル間隔

波形が完了してから次の波形が始まるまでの、アイドル状態の待ち時間を指定します (0～10000、デフォルト = 3)。
ビット

送信するビットを含むビットストリーム関数が返す、 [image] データ構造体への参照を指定します。ビットストリーム関数で指定可能なビット数は、253 までです。

WriteWaveformClocked 関数 の出力結果

戻り値

クロックドデータを含む [image] データ構造体。入力パラメータが無効な場合は #ERR を返します。

WriteWaveformClocked 関数 の例

次の図は、WriteWaveformClocked 関数のパラメータを説明します。二つの例とも、データビットは 3、アイドル間隔は 2 です。

Closed 図 1 - [データ有効エッジ] を [立ち下がりエッジ] に設定したWriteWaveformClocked 関数

Closed 図 2 - [データ有効エッジ] を [立ち上がりエッジ] に設定したWriteWaveformClocked 関数

注意: 実際の出力時の電圧は、特定の出力および配線によって異なります。「NPN」または「シンク電流」で配線されている出力では、電圧レベルは上記の図とは逆となります。

関連項目

波形関数

BitStream

入出力関数について

データアクセス入出力関数


WriteWaveformPulseTrain 関数

入出力関数 → 波形

In-Sight 関数リファレンス

指定のディスクリート出力ラインから送信される連続パルスを要求し、パルス登録データを含む [image] データ構造体を生成します。

  • WriteWaveformPulseTrain 関数の入力パラメータ
  • WriteWaveformPulseTrain 関数の結果出力
  • WriteWaveformPulseTrain 関数の例
  • WriteWaveformPulseTrain 関数の関連項目

注意:

  • この関数を有効にするには、In-Sight システムをオンラインにする必要があります。
  • オンラインからオフラインに遷移すると、ただちに現在実行中の波形関数を停止し、キューに保存されている波形をすべて破棄します。In-Sight ビジョンシステムがオンラインのときのみ、波形が開始されます。
  • この関数のトリガ後、波形はバックグラウンドでサイクル完了まで継続されます。
  • ジョブ内の WriteWaveformPulseTrain 関数の数、または関数専用の出力ラインの数に関わらず、波形は一度に 1 つのみ生成することができます。

WriteWaveformPulseTrain 関数の入力パラメータ

WriteWaveformPulseTrain 関数 (

イベント,

出力,

間隔,

デューティサイクル,

パルス極性,

キュー,

アイドル間隔,

パルス数

)

イベント

波形を開始するイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル。
  • Button 関数を含んでいるセル

注意:　デフォルトのイベント参照が削除された場合、この値はチェックボックスで置き換えられます。イベントとして別のセルを参照した場合、この関数は、参照されたセルに基づき、条件に従って実行されます。このチェックボックスが ON の場合、関数への入力が更新されると、関数は必ず実行されます。

出力

使用する出力ラインを指定します。高速出力や、In-Sight ビジョンシステムのユーザ設定可能な LED、I/O モジュールを使用しての追加出力 (接続時のみ) など、すべてのディスクリート出力ラインを使用することができます。

注意:　選択したディスクリート出力の　[種類]　パラメータを [波形] に設定していない場合、#ERR が返されます。#ERR の状態は、1 つまたは複数のセルを実行中のパラメータで参照したり、条件付きで有効にした実行中の式でセルを参照したり、関数に含まれるセルを修正したり、ジョブをロードしたりすることによって、波形関数を実行するまでクリアされません。

間隔

パルス開始から次のパルス開始までの間の合計時間をミリ秒単位で指定します (10～10,000、デフォルト = 1000)。
デューティサイクル

パルスがアクティブ状態にある時間の割合 (パルス間隔の割合) を指定します (0～100%、デフォルト = 50%)。

注意:　実際のデューティサイクルは、使用している In-Sight ビジョンシステムおよび I/O モジュールの限界から、設定している数値にできるだけ近い数値となります。また、[間隔]　パラメータが最小値近くに設定されてると、デューティサイクルの精度がさらに下がります。
パルス極性

パルス極性を指定します。

0 = 高 (デフォルト) | パルスがアクティブなとき、出力ラインは強制的に HIGH になります。パルスがアクティブでないとき、出力は LOW に設定されます。
1 = 低 | パルスがアクティブなとき、出力ラインは強制的に LOW になります。パルスがアクティブでないとき、出力は HIGH に設定されます。
キュー

波形キューを有効にするか無効にするかを指定します。

0 = 無効 | キューを [無効] にしたときに、前の波形を実行している場合、#ERR を返します。
1 = 有効 (デフォルト) | キューを [有効] にしたときに、前の波形を実行している場合、新しい波形はキューに保存され、次に実行されます。

アイドル間隔

波形が完了してから次の波形が始まるまでの、アイドル状態の待ち時間を指定します (0～10000、デフォルト = 3)。
パルス数 パルス登録を構成するパルス総数を指定します (1～10000、デフォルト = 10)。

WriteWaveformPulseTrain 関数の結果出力

戻り値

パルス登録データを含む [image] データ構造体。入力パラメータが無効な場合は #ERR を返します。

WriteWaveformPulseTrain 関数 例

次の図は、WriteWaveformPulseTrain 関数 関数のパラメータを説明します。この例ではどちらも、パルスは 3、アイドル間隔は 2 です。

Closed 図 1 - [パルス極性] を [高] に設定した WriteWaveformPulseTrain 関数 関数

Closed 図 2 - [パルス極性] を [低] に設定した WriteWaveformPulseTrain 関数 関数

注意:　実際の出力時の電圧は、特定の出力および配線によって異なります。「NPN」または「シンク電流」で配線されている出力では、電圧レベルは上記の図とは逆となります。

関連項目

  • Waveform 関数
  • 入出力関数について
  • データアクセス入出力関数


クロックドデータ関数

In-Sight 関数リファレンス

クロックドデータ関数は、セルからのストリームの値を格納します。各関数は、指定されたイベントによってスプレッドシートが更新されるたびに、ストリームから選択した 1 つの値を返します。

  • Accumulate 関数:ある間隔で値を累積します。
  • ClockedMax 関数: 指定された間隔の間にサンプリングされたストリームの最大値を返します。
  • ClockedMin 関数: 指定された間隔の間にサンプリングされたストリームの最小値を返します。
  • ClockedSum 関数: 指定された間隔の間にサンプリングされたストリームからの値の合計を返します。
  • Count 関数:無限間隔でイベントをカウントします。
  • CountPassFail 関数: 指定された参照値の合格、不合格、およびイベント総数をカウントして返します。
  • DelayLine 関数:イベント信号発生時に値が読み取られるシフトレジスタ配列を実装します。
  • Latch 関数:指定されたイベント発生時に入力値を格納します。
  • LatchImage 関数: 指定されたイベント発生時に画像を格納します。
  • LatchString 関数:指定されたイベント発生時に文字列を格納します。
  • Maximum 関数:無限間隔で入力データストリームの最大値を取得します。
  • Minimum 関数:無限間隔で入力データストリームの最小値を取得します。

  • Repeat 関数: 指定セルの実行を、指定回数繰り返します。

  • RepeatUntil 関数: 終了条件が有効になるか、または指定した最大回数に達するまで、指定セルの実行を繰り返します。

  • StoreData 関数: セル結果を保存します。

  • ShiftRegister 関数: イベント発生ごとにセルの値が読み取られるシフトレジスタ配列またはデータストリームを実装します。


Accumulate 関数

クロックドデータ関数

In-Sight 関数リファレンス

無限間隔で値を合計します。この関数は、指定されたイベント発生時にサンプリングした値データストリームの累積値を返します。

Accumulate 関数 (

イベント,

値,

リセット,

プリセット

)

Accumulate 関数 の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

注意: Accumulate 関数は、指定されたイベントに依存するそのほかの関数により、参照される値が更新される前に、この値の状態をバッファします。

値

累積されるデータストリームのソースを含んでいるセルを参照します。

リセット

累積値をプリセットの値でリセットします。

0 =オフ（デフォルト） | 指定された値を無限に累積し続けます。
1 =オン | 累積値をリセットします。

プリセット

[リセット] パラメータがオンにされたときに設定する累積初期値を指定します。

Accumulate 関数 の結果出力

戻り値

リセット時から現在までのデータストリームの累積値。

関連項目

Event 関数

クロックドデータ関数について


ClockedMax 関数

クロックドデータ関数

In-Sight 関数リファレンス

無限間隔でデータストリームの値をサンプリングし、間隔をおいてストリームからサンプリングした値の中から最大値を返します。

ClockedMax 関数 (

イベント,

値,

リセット,

プリセット

)

ClockedMax 関数 の入力パラメータ

イベント

値を読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

注意: Maximum 関数は、指定されたイベントに依存するほかの関数によって参照値が更新される「前に」参照値の状態を合計しますが、それとは異なり、ClockedMax 関数 は、ほかの関数によって参照値が更新された「後に」参照値の状態を合計します。

値

参照するデータストリームのソースセルから最小値を探します。(-9999999 ～ 9999999、デフォルト 0)。

リセット

プリセットによって指定された値に内部レジスタをリセットします。

0 =オフ（デフォルト） | 現在のデータストリームからの値のサンプリングを継続します。
1 =オン | 返す最小値をリセットし、新しいデータストリームからサンプリングを開始します。

プリセット

リセット時の初期値を指定します（-9999999～9999999、デフォルト = -9999999）。

ClockedMax 関数 の結果出力

戻り値

リセット時から現在までのデータストリームの最小値。

関連項目

Event 関数

ClockedMin 関数

Minimum 関数

Maximum 関数

クロックドデータ関数について


ClockedMin 関数

クロックドデータ関数

In-Sight 関数リファレンス

無限間隔でデータストリームの値をサンプリングし、間隔をおいてストリームからサンプリングした値の中から最小値を返します。

ClockedMin 関数 (

イベント,

値,

リセット,

プリセット

)

ClockedMin 関数 の入力パラメータ

イベント

値を読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

注意: Minimum 関数は、指定されたイベントに依存するほかの関数によって参照値が更新される「前に」参照値の状態を合計しますが、それとは異なり、ClockedMin 関数 は、ほかの関数によって参照値が更新された「後に」参照値の状態を合計します。

値

最小値を求めるデータストリームのソースセルを参照します（-9999999～9999999、デフォルト = 0）。

リセット

プリセットによって指定された値に内部レジスタをリセットします。

0 =オフ（デフォルト） | 現在のデータストリームからの値のサンプリングを継続します。
1 =オン | 返す最小値をリセットし、新しいデータストリームからサンプリングを開始します。

プリセット

リセット時の初期値を指定します（-9999999～9999999、デフォルト = 9999999）。

ClockedMin 関数 の結果出力

戻り値

リセット時から現在までのデータストリームの最小値。

関連項目

Event 関数

ClockedMax 関数

Minimum 関数

Maximum 関数

クロックドデータ関数について


ClockedSum 関数

クロックドデータ関数

In-Sight 関数リファレンス

無限間隔で値を合計します。この関数は、指定されたイベント発生時にサンプリングした値データストリームの累積値を返します。

ClockedSum 関数 (

イベント,

値,

リセット,

プリセット

)

ClockedSum 関数 の入力パラメータ

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

注意: Accumulate 関数は、指定されたイベントに依存するほかの関数によって参照値が更新される「前に」参照値の状態を合計しますが、それとは異なり、ClockedSum 関数 は、ほかの関数によって参照値が更新された「後に」参照値の状態を合計します。

値

累積されるデータストリームのソースセルを参照します(-9999999～9999999、デフォルト = 1)。

リセット

累積値をプリセットの値でリセットします。

0 =オフ（デフォルト） | 指定された値を無限に累積し続けます。
1 =オン | 累積値をリセットします。

プリセット

リセット時の初期値を指定します(-9999999～9999999、デフォルト = 0)。

ClockedSum 関数 の結果出力

戻り値

リセット時から現在までのデータストリームの累積値。

関連項目

Event 関数

クロックドデータ関数について


Count

Count |
クロックドデータ関数 | In-Sight 関数リファレンス

無限間隔でイベントをカウントします。この関数は、リセット時以来発生したイベントの数をプリセット値に加算したものを返します。

Count (

イベント,

最大値,

リセット,

プリセット

)

Count の入力パラメータ

イベント

カウンタを増分する更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

最大値

カウンタが自動的に最小のプリセット値にリセットする前の最大値を指定します (デフォルト = 9999999)。

リセット

カウンタをプリセットの値にリセットします。

0 =オフ（デフォルト） | 最大値に達してからカウンタをリセットします。
1 =オン | 最大値に達する前であっても、直ちにカウンタをリセットします。

プリセット

最大値に達したとき、またはリセットがオンのときに、リセットするカウンタの最小値を指定します (デフォルト = 0）)。

Count の結果出力

戻り値

プリセット値と最後のリセット以降に発生したイベント数の合計を示す値。

関連項目

Event 関数

クロックドデータ関数について


CountPassFail 関数

クロックドデータ関数

In-Sight 関数リファレンス

指定された参照値の合格、不合格、およびイベント総数をカウントして返します。

CountPassFail 関数(

イベント,

値,

オフライン時にカウント,

イベントのリセット.手動,

イベントのリセット.オンライン,

イベントのリセット.ジョブを開く

)

CountPassFail 関数関数の入力パラメータ

イベント

カウンタを増分するイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

値

カウントされるデータストリームのソースを含んでいるセルへの必要な参照を指定します。参照されているセルがない場合、関数はすべての結果に対して #ERR を返します。増分されるカウンタ (Pass、Fail、または #ERR) は、次のように、返される値に基づいています。

Pass | 値 > 0
Fail | 値 = 0
#ERR | 値 < 0

オフライン時にカウント

センサがオフラインの間にカウンタが増分されるかどうかを指定します。

0 = OFF | センサがオフラインの場合、カウンタを増分させません。
1 = ON (デフォルト) | センサがオフラインの場合、カウンタを増分させます。

イベントのリセット

特定のイベントによってカウンタを強制的にリセットします。

手動

指定されたイベントが発生したときにカウンタをゼロにリセットするかどうかを指定します。このパラメータは、[リセット] ボタンを自動的に参照します。[リセット] ボタンは、関数が最初に作成されたときにスプレッドシートに挿入されます。

注意:　プロパティシート内でこのチェックボックスを手動で切り替えると、[リセット] ボタンへの参照は削除されます。[リセット] ボタンを使用するには、このパラメータが [リセット] ボタンを含むセルを参照している必要があります。

0 = OFF (デフォルト) | 指定されたイベントが発生しても、カウンタをリセットしません。
1 = ON | 指定されたイベントが発生すると、カウンタをリセットします。

オンライン

センサがオンラインにされたときに最初のイベントが発生すると、カウンタをゼロにリセットするかどうかを指定します。

0 = OFF | センサがオンラインにされても、最初のイベント発生後にカウンタをリセットしません。
1 = ON (デフォルト) | センサがオンラインにされると、最初のイベント発生後にカウンタをリセットします。

ジョブを開く

ジョブがロードされた場合にカウンタをゼロにリセットするかどうかを指定します。

0 = OFF | ジョブがロードされても、カウンタをリセットしません。
1 = ON (デフォルト) | ジョブがロードされると、カウンタをリセットします。

CountPassFail 関数関数の結果出力

戻り値 | 増分されたカウンタを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | CountPassFail 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルと [リセット] ボタンが作成されます。[リセット] ボタンをクリックすると、すべてのカウンタがゼロにリセットされます。

CountPassFail 関数データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

合格 | GetPassCount(Count) | 合格の増分カウント。合格数は、返される値がゼロよりも大きい場合にカウントアップされます。
不合格 | GetFailCount(Count) | 不合格の増分カウント。不合格数は、返される値がゼロの場合にカウントアップされます。
エラー | GetErrorCount(Count) | エラーの増分カウント。エラー数は、返される値がゼロよりも小さい場合にカウントアップされます。
総数 | GetTotalCount(Count) | 合格、不合格、およびエラーの総数。

関連項目

Count 関数

クロックドデータ関数について


DelayLine 関数

クロックドデータ関数

In-Sight 関数リファレンス

イベント発生ごとにセルの値が読み取られるシフトレジスタ配列またはデータストリームを実装します。

DelayLine 関数 (

イベント,

値,

ステップ数,

イベントのリセット

)

注意: リセット後、最初に読み取られる値が、シフトレジスタに入力されます。

DelayLine 関数の入力パラメータ

イベント

値を読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体
  • 関数を含むセル
  • Button 関数を含むセル

注意: DelayLine 関数は、指定されたイベントに依存するそのほかの関数によって、参照される値が更新される前に、この値の状態をバッファします。

値

ソースデータを含むセルを参照します。

ステップ数

関数の内部シフトレジスタ配列内にある値の数を指定します (デフォルト = 10)。

イベントのリセット

前に読み取った値を関数から消去します。リセット後、最初に読み取られる値がシフトレジスタに入力されます。

0 =オフ(デフォルト) | データストリームへの値の読み込みを継続します。
1 =オン | データストリームからすべての値を消去します。

DelayLine 関数の結果出力

戻り値 | データ構造体。これには、リセット時から現在までの、指定された値の統計値が含まれています。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

DelayLine 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

最後の値 | GetValue(ディレイ, インデックス) | 構造体に含まれる最新の値
平均 | GetMean(ディレイ) | 構造体のすべての値の平均
標準偏差 | GetSDev(ディレイ) | 構造体のすべての値の標準偏差
最小 | GetMin(ディレイ) | 構造体に含まれる最小の値
最大 | GetMax(ディレイ) | 構造体に含まれる最大の値

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

カウント | GetCount(ディレイ) | 構造体に含まれる値の数
合計 | GetSum(ディレイ) | 構造体に含まれる値の合計値

関連項目

Event 関数

クロックドデータ関数について


Latch 関数

Latch 関数 |
クロックドデータ関数 | In-Sight 関数リファレンス

指定されたイベント発生時に入力値を格納（取得）します。

Latch 関数 (

イベント,

値

)

Latch 関数の入力パラメータ

イベント

値を読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

値

格納するデータを含んでいるセルを参照します。

Latch 関数の結果出力

戻り値

直前のイベント発生時に格納された値。

関連項目

Event 関数

クロックドデータ関数について


LatchImage 関数

LatchImage 関数 |
クロックドデータ関数 | In-Sight 関数リファレンス

指定されたイベント発生時に画像を格納（取得）します。

LatchImage 関数 (

画像,

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

領域.X,

領域.Y,

領域.高さ,

領域.幅,

領域.角度,

イベント,

表示

)

LatchImage 関数の入力パラメータ

画像

このパラメータは有効な [image] データ構造体を含んでいるスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

フィクスチャ入力、またはビジョン ツール関数の画像座標系の出力に相対する対象領域（ROI）を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、（0, 0, 0）になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

対象領域（ROI）とも呼ばれ、画像処理が行われる画像の領域を指定し、移動と回転が可能な矩形画像領域を形成します。このパラメータを選択して、[領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

X | フィクスチャ座標での原点の X オフセットを指定します。
Y | フィクスチャ座標での原点の Y オフセットを指定します。
高さ | 領域の X 軸に沿った寸法を指定します。
幅 | 領域の Y 軸に沿った寸法を指定します。
角度 | フィクスチャ座標での角度を指定します。

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

イベント

画像を格納する更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

表示

画像の上に表示されるグラフィックスオーバレイを指定します。

0 = 非表示（デフォルト） | この関数を含んでいるセルがスプレッドシート内のアクティブセルである場合を除き、すべてのグラフィックス項目が表示されません。 注意: 入力領域が変更されると、2 番目の領域が表示され、次の指定されたイベント時に取得が実行される場所を示します。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。
2 = 入力のグラフィックスのみ | 入力画像領域と関連付けられているグラフィックス項目が常に表示されます。

LatchImage 関数の結果出力

戻り値

直前のイベント発生時に格納された画像。

関連項目

Event 関数

クロックドデータ関数について


LatchString 関数

LatchString 関数 |
クロックドデータ関数 | In-Sight 関数リファレンス

指定されたイベント発生時に文字列を格納（取得）します。

LatchString 関数 (

イベント,

"文字列"

)

LatchString 関数の入力パラメータ

イベント

文字列を読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

文字列

格納する文字列を含んでいるセルを参照します。

LatchString 関数の結果出力

戻り値

直前のイベント発生時に格納された文字列。

関連項目

Event 関数

クロックドデータ関数について


Maximum 関数

クロックドデータ関数

In-Sight 関数リファレンス

無限間隔でデータストリームの値をサンプリングし、間隔をおいてストリームからサンプリングした値の中から最大値を返します。

Maximum 関数 (

イベント,

値,

リセット,

プリセット

)

Maximum 関数の入力パラメータ

イベント

値を読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

注意: Maximum 関数は、指定されたイベントに依存するそのほかの関数により、参照される値が更新される前に、この値の状態をサンプリングします。

値

参照するデータストリームのソースセルから最大値を探します。

リセット

プリセットによって指定された値に内部レジスタをリセットします。

0 =オフ（デフォルト） | 現在のデータストリームからの値のサンプリングを継続します。
1 =オン | 返す最大値をリセットし、新しいデータストリームからサンプリングを開始します。

プリセット

リセットする最大値を指定します（デフォルト = -9999999）。

Maximum 関数の結果出力

戻り値

リセット時から現在までのデータストリームの最大値。

関連項目

Event 関数

クロックドデータ関数について


Minimum 関数

クロックドデータ関数

In-Sight 関数リファレンス

無限間隔でデータストリームの値をサンプリングし、間隔をおいてストリームからサンプリングした値の中から最小値を返します。

Minimum 関数 (

イベント,

値,

リセット,

プリセット

)

Minimum 関数の入力パラメータ

イベント

値を読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

注意: Minimum 関数は、指定されたイベントに依存するそのほかの関数により、参照される値が更新される前に、この値の状態をサンプリングします。

値

参照するデータストリームのソースセルから最小値を探します。

リセット

プリセットによって指定された値に内部レジスタをリセットします。

0 =オフ（デフォルト） | 現在のデータストリームからの値のサンプリングを継続します。
1 =オン | 返す最小値をリセットし、新しいデータストリームからサンプリングを開始します。

プリセット

リセットする最小値を指定します（デフォルト = 9999999）。

Minimum 関数の結果出力

戻り値

リセット時から現在までのデータストリームの最小値。

関連項目

Event 関数

クロックドデータ関数について


Repeat 関数

クロックドデータ関数

In-Sight 関数リファレンス

指定されたセルの実行を、指定された回数繰り返します。

注意:　Repeat 関数または RepeatUntil 関数を使用してセルの繰り返しする反復を作成する場合、SetEvent 関数は、反復されるセルの外に配置する必要があります。SetEvent 関数を反復されるセルの中に入れると、SetEvent 関数がイベントトリガに失敗する可能性があります。

Repeat 関数関数の入力パラメータ

Repeat 関数(

イベント,

繰り返しする反復,

繰り返しするセル

)

Event 関数

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル
  • 数値を含むセル。この数値が変化すると、イベントがトリガされます。

繰り返しする反復

実行する必要のある繰り返し回数 (0 ～ 5000) を指定します。

繰り返しするセル

繰り返しの対象となるセルへの参照を指定します。この参照は、セルの範囲、セル参照をカンマで区切って並べたリスト、またはこの 2 つの組み合わせである必要があります。

Repeat 関数関数の結果出力

戻り値

セルの繰り返しに関するデータを含む　 [image] データ構造体。

関連項目

  • クロックドデータ関数について
  • スプレッドシートセルのルールの作成
  • Event 関数
  • GetLoopCount 関数
  • GetLoopReset 関数
  • RepeatUntil 関数
  • StoreData 関数


RepeatUntil 関数

クロックドデータ関数

In-Sight 関数リファレンス

終了条件が満たされるか、または繰り返し回数の上限に達するまで、指定したセルの実行を繰り返します。

注意:　Repeat 関数または RepeatUntil 関数を使用してセルの繰り返しする反復を作成する場合、SetEvent 関数は、反復されるセルの外に配置する必要があります。SetEvent 関数を反復されるセルの中に入れると、SetEvent 関数がイベントトリガに失敗する可能性があります。

RepeatUntil 関数関数の入力パラメータ

RepeatUntil 関数(

イベント,

終了条件,

最大反復,

繰り返しするセル

)

Event 関数

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル
  • 数値を含むセル。この数値が変化すると、イベントがトリガされます。

終了条件

繰り返しの終了要件を定義するゼロ以外の値を指定します。

最大反復

実行する必要のある繰り返し回数の最大値 (0 ～ 5000) を指定します。

繰り返しするセル

繰り返しの対象となるセルへの参照を指定します。この参照は、セルの範囲、セル参照をカンマで区切って並べたリスト、またはこの 2 つの組み合わせである必要があります。

RepeatUntil 関数関数の結果出力

戻り値

セルの繰り返しに関するデータを含む [image] 　データ構造体。

関連項目

  • クロックドデータ関数について
  • スプレッドシートセルのルールの作成
  • Event 関数
  • GetLoopCount 関数
  • GetLoopReset 関数
  • Repeat 関数
  • StoreData 関数


ShiftRegister 関数

クロックドデータ関数

In-Sight 関数リファレンス

イベント発生ごとにセルの値が読み取られるシフトレジスタ配列またはデータストリームを実装します。

ShiftRegister 関数 (

イベント,

値 ,

ステップ数,

イベントのリセット

)

注意: リセット後、最初に読み取られる値が、シフトレジスタに入力されます。

ShiftRegister 関数の入力パラメータ

イベント

値を読み取る更新イベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含むセル
  • Button 関数を含むセル

注意: DelayLine 関数は、指定されたイベントに依存するほかの関数によって参照値が更新される「前に」参照値の状態をバッファしますが、それとは異なり、ShiftRegister 関数は、ほかの関数によって参照値が更新された「後に」参照値の状態をバッファします。

値

ソースデータを含むセルへの参照 (-9999999 ～ 9999999、デフォルト = 0)。

ステップ数

関数の内部シフトレジスタ配列内にある値の数を指定します (1 ～ 5000、デフォルト = 10)。

イベントのリセット

前に読み取った値を関数から消去します。リセット後、最初に読み取られる値がシフトレジスタに入力されます。

0 =オフ(デフォルト) | データストリームへの値の読み込みを継続します。
1 =オン | データストリームからすべての値を消去します。

ShiftRegister 関数の結果出力

戻り値 | データ構造体。この構造体には、リセット時から現在までの、指定された値の統計値が含まれています。
結果 | TransWorldToPixel データアクセス関数

ShiftRegister 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

最後の値 | GetValue(ディレイ, インデックス) | 構造体に含まれる最新の値
平均 | GetMean(ディレイ) | 構造体のすべての値の平均
標準偏差 | GetSDev(ディレイ) | 構造体のすべての値の標準偏差
最小 | GetMin(ディレイ) | 構造体に含まれる最小の値
最大 | GetMax(ディレイ) | 構造体に含まれる最大の値

次のデータアクセス関数を使用して、そのほかのデータの取得ができます。

カウント | GetCount(ディレイ) | 構造体に含まれる値の数
合計 | GetSum(ディレイ) | 構造体に含まれる値の合計値

関連項目

Event 関数

DelayLine 関数

クロックドデータ関数について


StoreData 関数

クロックドデータ関数

In-Sight 関数リファレンス

Repeat 関数または RepeatUntil 関数と組み合わせて使用し、セルの結果を格納します。

  • StoreData 関数の入力パラメータ
  • StoreData 関数の結果出力
  • 関連項目
注意:
  • Repeat 関数または RepeatUntil 関数と組み合わせてループを作成する場合、StoreData 関数はスプレッドシートの反復されるセルのループ内に配置する必要があります。
  • StoreData 関数は「先入れ先出し」方式でデータを格納します。つまり、新しい結果を格納する場合、この結果はバッファのインデックス 0 の位置に挿入され、既に格納されているそのほかの結果の位置はすべてバッファ内で 1 つシフトされます。
  • ジョブファイルの保存時、StoreData 関数が含むデータは格納されません。ジョブファイルに保存された StoreData 関数はすべて、このジョブを再ロードしたときに自動的にリセットされます。
  • 保存されたセルに入力画像への参照が含まれている場合、この入力画像は格納されず、GetValue 関数で参照すると、保存されたセル固有のグラフィックスのみ表示されます。
  • InspectEdge、InspectEdgeForDefect、InspectEdgePosition、InspectEdgeTrainBeadPath、または InspectEdgeWidth 関数を含むセルを参照した場合、領域グラフィックスには、エッジ検出インジケータの黄色の点線は表示されません。
  • BlobToBlob、BlobToLine、BlobToPoint、または BlobToRadian 関数を含むセルを参照した場合、これらの関数が外部参照しているブロブグラフィックスは表示されません。

StoreData 関数関数の入力パラメータ

StoreData 関数(

イベント,

データ,

ステップ数,

手動リセット,

オンラインリセット

)

イベント

指定したデータを読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] 　データ構造体
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

Data

結果の構造体を含むセルへの参照を指定します。数値または文字列値を含むセルは、すべて参照することができます。

注意:　StoreData 関数を、画像関数、DetectFlaw 関数、FlexFlawModel 関数、ReadIDMax 関数、TrainFlawModel 関数、TrainPatMaxPattern 関数、ValidateIDData 関数、VerifyIDCode 関数とともに使用することはできません。

ステップ数

繰り返し回数を 1 ～ 5000 の範囲で指定します。

リセット

格納されているデータをリセットするイベントを指定します。

手動 | Button 関数を含むセルに基づいて値がリセットされるように指定します。
オンライン | In-Sight ビジョンシステムがオンラインになったときに、データがリセットされます。

StoreData 関数関数の結果出力

戻り値

データ構造体。この構造体には、指定された [データ] に対する [リセット] から現在までの結果のデータが含まれています。

関連項目

  • クロックドデータ関数について
  • スプレッドシートセルのルールの作成
  • Event 関数
  • PlotData 関数
  • Repeat 関数
  • RepeatUntil 関数


データアクセス関数

In-Sight 関数リファレンス

データアクセス (VDA含む) 関数は、次のカテゴリに分けられるデータ構造体、関数、およびそのほかのセル参照から個々の値を抽出します。

VDA カテゴリ | 参照される構造体および関数
ブロブ関数 |
CircleFit 関数 |
クロックドデータ関数 |
オペレータ I/F 関数 | Authorize 関数、ListBox 関数
距離関数 |
エッジ関数 |
フォント関数 |
GetErrorCode 関数 | 大半の構造体
GetErrorString 関数 | 大半の構造体
GetOnline 関数 |
ヒストグラム関数 |
ID コード関数 |
IDMax 関数 |
IDValidate 関数 |
IDVerify 関数 |
画像関数 |
入出力関数 | , [image] , [image] , [image] , [image] , [image] , [image] , [image] , [image] , [image] , [image] , [image] , [image] ,
LineFit 関数 |
ラインスキャン関数 | イベント
OCRMax 関数 |
パターン関数 |
統計関数 |
構造体関数 | , [image] , [image] , [image] , [image] , [image] ,
テキスト |
時間・タイマ関数 | 、参照されるセル
WafID 関数 |


ブロブ関数

ブロブ関数 |
データアクセス | In-Sight 関数リファレンス

注意: 次の関数はそれぞれ、最初のパラメータとして、 [image] データ構造体を参照します。[インデックス] (ゼロから始まる) は、構造体からインデックスされているブロブを決定します。インデックスを指定しない場合、インデックスはデフォルトでゼロとなります (つまり、最初のブロブが返されます)。

関数 | 説明
GetAngle(ブロブ, インデックス) | ROI の中心に対するブロブの重心の角度を返します。
GetArea(ブロブ, インデックス) | ブロブの面積 (ピクセル単位) を返します。
GetCol(ブロブ, インデックス) | ブロブの重心の X 座標 (列) を返します。
GetColor(ブロブ, インデックス) | ブロブの色の値 (0 = 黒、1 = 白) を返します。
GetElongation(ブロブ, インデックス) | 指定されたブロブの伸長を返します。
GetHigh(テキスト, インデックス) | インデックス付きブロブの高さを返します。
GetHoles(ブロブ, インデックス) | ブロブに含まれている穴の数を返します。
GetMaxCol(ブロブ, インデックス) | ブロブの最大列の値を返します。
GetMaxColRow(ブロブ, インデックス) | 最大 (右端) 列座標での行座標を返します。
GetMaxRow(ブロブ, インデックス) | ブロブの最大行の値を返します。
GetMaxRowCol(ブロブ, インデックス) | 最大 (下端) 行座標での列座標を返します。
GetMinCol(ブロブ, インデックス) | ブロブの最小 (左端) 列座標を返します。
GetMinColRow(ブロブ, インデックス) | 最小 (左端) 列座標での行座標を返します。
GetMinRow(ブロブ, インデックス) | ブロブの最小行の値を返します。
GetMinRowCol(ブロブ, インデックス) | 最小 (上端) 行座標での列座標を返します。
GetNFound(ブロブ) | 指定された ROI 内で検出されたブロブの数を返します。
GetPerimeter(ブロブ, インデックス) | ブロブの周囲長 (ピクセル単位) を返します。
GetRow(ブロブ, インデックス) | ブロブの重心の Y 座標 (行) を返します。
GetScore(ブロブ, インデックス) | ブロブの得点値を返します。
GetSpread(ブロブ, インデックス) | ブロブの拡散の値を返します。
GetThresh(ブロブ) | ブロブの、手動で 2 値化されたしきい値、または最適化された値 (-1 で [自動] を指定した場合) のいずれかを返します。
GetWide(ブロブ, インデックス) | インデックス付きブロブの幅を返します。


CircleFit 関数

CircleFit 関数 |
データアクセス | In-Sight 関数リファレンス

注意: 次の関数はそれぞれ、最初のパラメータとして、 [image] データ構造体を参照します。

関数 | 説明
GetCol(CircleFit) | 円の中心の Y 座標を返します。
GetDistance(CircleFit, インデックス) | インデックス付きの点と円の間の距離を返します。値が負の数の場合、点は円の内側にあります。インデックス付きの点が無効であれば #ERR を返します。
GetMaxDist(CircleFit) | 円と、円から最も遠い点の間の距離を返します。値が負の数の場合、点は円の内側にあります。
GetMaxDistIndex(CircleFit) | 円から最も遠い点のインデックスを返します。
GetNPointsUsed(CircleFit) | 円の作成に使用された点の数を返します。
GetRadius(CircleFit) | 円の半径を返します。
GetRow(CircleFit) | 円の中心の X 座標を返します。
GetSigma(CircleFit) | 点から円までの距離を二乗したものの合計の平方根を点の数で割った値を返します。


クロックドデータ関数

クロックドデータ関数 |
データアクセス | In-Sight 関数リファレンス

注意:
  • GetCount、GetMax、GetMean、GetMin、GetSDev、GetSum および GetValue 関数はそれぞれ、最初のパラメータとして [image] データ構造体を参照します。
  • GetErrorCount、GetFailCount、GetPassCount および GetTotalCount 関数では、返される値は参照される [image] 構造体から取得され、CountPassFail 関数の作成時にスプレッドシートに挿入されます。

関数

説明
GetCount(ディレイ) | 構造体のカウント値を返します。
GetErrorCount(カウント) | 構造体から増分エラー数を返します。エラー数は、返される値がゼロよりも小さい場合にインクリメントされます。
GetFailCount(カウント) | 構造体から増分不合格数を返します。不合格数は、値がゼロの場合にインクリメントされます。

GetLoopCount(ループ)

データ構造体に格納された、Repeat または RepeatUntil 関数によって実行される繰り返し反復の現在のインデックスを返します。

注意: 正常な検査を確実に実行するには、ループの操作対象として選択したセルに GetLoopCount 関数を入れます。そうしない場合、関数は 1 度しか検査されず、ループと同期した更新は実行されません。

GetLoopReset(ループ)

データ構造体に格納された、Repeat または RepeatUntil 関数による繰り返し反復を最初に実行する前に 1 (TRUE) を返します。StoreData 関数のセルなど、ループ内にデータを保持する関数のデータのクリアにも使用することができます。

注意: 正常な検査を確実に実行するには、ループの操作対象として選択したセルに GetLoopReset 関数を入れます。そうしない場合、関数は 1 度しか検査されず、ループと同期した更新は実行されません。
GetMax(ディレイ) | 構造体の最大値を返します。
GetMean(ディレイ) | 構造体の平均値を返します。
GetMin(ディレイ) | 構造体の最小値を返します。
GetPassCount(カウント) | 構造体から増分合格数を返します。合格数は、値がゼロよりも大きい場合にインクリメントされます。

GetSDev(ディレイ)

構造体の標準偏差値を返します。

注意: この計算は偏りのある標準偏差で、分母は N-1 です (不偏標準偏差では分母は N です)。

GetSum(ディレイ)

 構造体の合計値を返します。
GetTotalCount(カウント) | 構造体から、合格、不合格、およびエラーの総数を返します。

GetValue(ディレイ)

 構造体に格納されている値を返します。


オペレータ I/F 関数

オペレータ I/F 関数 |
データアクセス | In-Sight 関数リファレンス

注意:
  • GetAuthorizeApprover 関数と GetAuthorizeDateTime 関数は、Authorize 関数セルを参照します。
  • GetAuthorizedValue 関数は、Authorize 関数によって参照されているサポートされるエディットコントロールセルを参照します。
  • GetString 関数は、ListBox 関数を含んでいるセルを参照します。

関数 | 説明
GetAuthorizeApprover(Authorize) | Authorize 関数のタイプが Authorize-Only または Double-Blind に設定されている場合は、最後に正常な認証を実行した承認者の名前を返します。タイプが None に設定されている場合は、新しい値を入力したユーザの名前を返します。
GetAuthorizeDateTime(Authorize) | 最後に正常な認証が実行された日付と時刻を返します。日付と時刻の形式: MM/DD/YYYY HH:MM:SS
GetAuthorizedValue(オペレータ I/F 関数) | 参照されているエディットコントロールの値を返します。エディットコントロールが認証されていない場合は、現在の値を返します。 注意: GetAuthorizedValue 関数は常に文字列タイプの値を返します。この関数の数値出力を別の関数への入力として使用するには、Value 関数を使用して文字列を数値に変換します。
GetString(ListBox) | テキスト文字列を返します。ListBox 関数を含んでいるセルが参照されている場合、現在リストから選択されているテキスト文字列が返されます。


距離関数

距離関数 |
データアクセス | In-Sight 関数リファレンス

注意: 次の関数はそれぞれ、最初のパラメータとして、 [image] データ構造体を参照します。

関数 | 説明
GetAngle(距離, インデックス) | 角度の値を返します。
GetCol(距離, インデックス1, インデックス2) | 列の値を返します。
GetDistance(距離) | 距離の値を返します。
GetRow(距離, インデックス1, インデックス2) | 行の値を返します。


エッジ関数

エッジ関数 |
データアクセス | In-Sight 関数リファレンス

注意: 次の関数はそれぞれ、最初のパラメータとして、 [image] データ構造体を参照します。

関数 | 説明
GetAngle(エッジ, インデックス) | インデックス付きのエッジの角度を返します。
GetCol(エッジ, インデックス 1, インデックス 2) | インデックス付きエッジの指定された列の値を返します。インデックス 1 ではエッジ番号を選択し、インデックス 2 では点 (0 = 左端の点、1 = 右端の点、2 = 中点) を指定します。
GetContrast(エッジ) | 検出された前景と背景の平均コントラスト (グレースケール階調で、0～255) を返します。コントラストは黒→白の場合は正の値、白→黒の場合は負の値になります。 構造体は FindCircleMinMax 関数で作成されている必要があります。
GetEdgeDistance(エッジ) | 2 つのエッジ (エッジペア) 間の距離を返します。 構造体は Caliper 関数で作成されている必要があります。
GetMax(エッジ) | 最良エッジの最大偏差の半径を返します。 構造体は FindCircleMinMax 関数で作成されている必要があります。
GetMin(エッジ) | 最良エッジの最小偏差の半径を返します。 構造体は FindCircleMinMax 関数で作成されている必要があります。
GetNFound(エッジ) | 検出されたエッジの数を返します。
GetPosition(エッジ, インデックス) | エッジまたはエッジペアの中心の領域 X 位置を返します。
GetRadius(エッジ, インデックス) | インデックス付きカーブエッジの半径を返します。
GetRow(エッジ, インデックス 1, インデックス 2) | インデックス付きエッジの指定された行の値を返します。インデックス 1 ではエッジ番号を選択し、インデックス 2 では点 (0 = 上端の点、1 = 下端の点、2 = 中点) を指定します。
GetScore(エッジ, インデックス) | インデックス付きエッジの得点を返します。得点は、黒→白への遷移の場合は正の値、白→黒への遷移の場合は負の値になります (ただし、FindSegment および FindCircleMinMax では、得点は常に正の値です)。
GetSDev(エッジ) | 標準偏差の値を返します。 構造体は FindCircleMinMax 関数で作成されている必要があります。 注意: この計算は偏りのある標準偏差で、分母は N-1 です (不偏標準偏差では分母は N です)。


傷検出

傷検出 |
データアクセス | In-Sight 関数リファレンス

関数 | 説明
GetTrained(TrainFlawModel) | TrainFlawModel 関数でモデルを登録できた場合には 1、登録できなかった場合には 0 を返します。
GetTotalFlawArea(SurfaceFlaw) | SurfaceFlaw 関数で検出されたすべての欠陥の総面積を返します。
GetTotalFlawCount(DetectFlaw, すべて/面積/エッジの欠落/余分なエッジ) | 指定されたタイプの欠陥の総数、またはすべての欠陥の総数を返します (すべて = -1、面積 = 0、エッジの欠落 = 1、余分なエッジ = 2)。
GetTotalFlawSize(DetectFlaw, すべて/面積/エッジの欠落/余分なエッジ) | 特定の欠陥に分類されるピクセルの総数、または何らかの欠陥として分類されるピクセルの総数を返します (すべて = -1、面積 = 0、エッジの欠落 = 1、余分なエッジ = 2)。
GetFlawType(DetectFlaw, インデックス) | 指定された欠陥のタイプを返します (面積 = 0、エッジの欠落 = 1、余分なエッジ = 2)。
GetFlawSize(DetectFlaw, 面積/エッジの欠落/余分なエッジ, インデックス) | 指定された欠陥に含まれるピクセルの数を返します (面積 = 0、エッジの欠落 = 1、余分なエッジ = 2)。インデックス値の範囲は、欠陥の種類によって異なります (インデックス = 0 から GetTotalFlawCount によって返される総数 -1)。
GetFlawContrast(DetectFlaw, 面積/エッジの欠落/余分なエッジ, インデックス) | 指定された欠陥のコントラスト値を返します (面積 = 0、エッジの欠落 = 1、余分なエッジ = 2)。インデックス値の範囲は、欠陥の種類によって異なります (インデックス = 0 から GetTotalFlawCount によって返される総数 -1)。
GetFlawRow(DetectFlaw, 面積/エッジの欠落/余分なエッジ, インデックス) | 指定された欠陥の境界ボックスの行座標を返します (面積 = 0、エッジの欠落 = 1、余分なエッジ = 2)。インデックス値の範囲は、欠陥の種類によって異なります (インデックス = 0 から GetTotalFlawCount によって返される総数 -1)。
GetFlawCol(DetectFlaw, 面積/エッジの欠落/余分なエッジ, インデックス) | 指定された欠陥の境界ボックスの列座標を返します (面積 = 0、エッジの欠落 = 1、余分なエッジ = 2)。インデックス値の範囲は、欠陥の種類によって異なります (インデックス = 0 から GetTotalFlawCount によって返される総数 -1)。
GetFlawHigh(DetectFlaw, 面積/エッジの欠落/余分なエッジ, インデックス) | 指定された欠陥の境界ボックスの高さを返します (面積 = 0、エッジの欠落 = 1、余分なエッジ = 2)。インデックス値の範囲は、欠陥の種類によって異なります (インデックス = 0 から GetTotalFlawCount によって返される総数 -1)。
GetFlawWide(DetectFlaw, 面積/エッジの欠落/余分なエッジ, インデックス) | 指定された欠陥の境界ボックスの幅を返します (面積 = 0、エッジの欠落 = 1、余分なエッジ = 2)。インデックス値の範囲は、欠陥の種類によって異なります (インデックス = 0 から GetTotalFlawCount によって返される総数 -1)。
GetMatchScore(FlexFlawModel) | Flex アルゴリズム適用前のエッジ一致得点を示す得点を返します。
GetFlexScore(FlexFlawModel) | Flex アルゴリズム適用後のエッジ一致得点を示す得点を返します。


フォント関数

フォント関数 |
データアクセス | In-Sight 関数リファレンス

注意: 次の関数はそれぞれ、最初のパラメータとして、 [image] データ構造体を参照します。

関数 | 説明
GetFontLabel(フォント, インデックス) | インデックス付き文字モデルのラベルを返します。
GetFontAllLabels(フォント) | フォント内の登録文字すべてのラベルのリストを返します。
GetFontName(フォント) | フォント名を返します。
GetFontNumCharacter(フォント) | 登録済み文字モデルの数を返します。


GetOnline 関数

GetOnline 関数 |
データアクセス | In-Sight 関数リファレンス

In-Sight センサのオンライン状態を返します。

GetOnline 関数 (

イベント

)

GetOnline 関数の入力パラメータ

イベント

指定されたイベントトリガでスプレッドシートを更新します。このパラメータは、トリガパラメータをオンライン/オフラインに設定した [image] 関数を含むセルへの参照である必要があります。

GetOnline 関数の結果出力

戻り値 | センサがオフラインの場合は 0.000、オンラインの場合は 1.000 です。
結果 | この関数を最初にセルに挿入したとき、トリガパラメータがオンライン/オフラインに設定された [image] 関数が、自動的に隣のセルに挿入されます。 注意: 隣のセルに既にデータが入力されている場合、警告メッセージが表示されます。関数が自動的に隣のセルに入力されることはありません。

GetOnline 関数の例

  1. セル A2 を右クリックし、[関数の挿入] をクリックして、[関数の挿入] ダイアログを開きます。
  2. [関数の挿入] ダイアログの左側で、ツールカテゴリのデータアクセスのリストを選択します。
  3. 右側のリストで、GetOnline をダブルクリックします。GetOnline のプロパティシートが開きます。
  4. [OK] をクリックして、プロパティシートのデフォルト設定をそのまま使用します。トリガパラメータがオンライン/オフラインに設定された [image] 関数が、自動的に隣のセルに挿入されます。セル A2 には、センサがオフラインであることを表す 0.000 が返されます。

注意: 隣のセルに既にデータが入力されている場合、警告メッセージが表示されます。関数が自動的に隣のセルに入力されることはありません。

  5. センサをオンラインにします。セル A2 には、センサがオンラインであることを表す 1.000 が返されます。


ヒストグラム関数

ヒストグラム関数 |
データアクセス | In-Sight 関数リファレンス

関数 | 説明
GetValue(構造体, インデックス) | 指定した [image] データ構造体のインデックス付きビン (0 ～ 255) に含まれている値の数を返します。


ID コード関数

データアクセス

In-Sight 関数リファレンス

注意:
  • レガシー関数である ReadIDCode 関数の代わりに ReadIDMax 関数を使用することを推奨します。ReadIDMax 関数には拡張性能機能が搭載されています。
  • 返される値はすべて、参照される [image] 構造体から取得され、ReadIDCode 関数の作成時にスプレッドシートに挿入されます。

関数

説明

GetAngle(ID コード)

シンボルの角度を返します (PharmaCode、RSS-14 スタックド、RSS リミテッドを除く)。

注意:

  • ポスタルシンボルを選択した場合は、ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。
  • [アルゴリズム] パラメータを ON にする必要があります。
  • ReadIDCode 関数の [アルゴリズム] パラメータが OFF のとき、角度が 0、90、180、270 度の ± 約 4 度以内である場合、それぞれ 0、90、180、270 度が返されます。

GetBarSkew(ID コード)

ポスタルバーコードのバーのスキューの平均を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetBarSpace(ID コード)

ポスタルバーコードのバーの平均間隔を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetBarWidth(ID コード)

ポスタルバーコードのバーの平均幅を返します。

GetCodeName(ID コード)

コード種類の名前を返します。このコード名は、プロパティシートに表示されるものと同じです。

GetCodeType(ID コード)

コード種類を返します。

GetCol(ID コード, [インデックス])

ポスタルシンボルの左上隅の列座標、または 2D シンボルのインデックス (0 ～ 3) 付きファインダパターン頂点の列 (y) 座標をピクセル単位で返します。POSTNET、PLANET、およびポスタルシンボルについては、ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetColor(ID コード)

データマトリックス、QR コード、または PDF417 シンボルの前景色の値 (0 = 黒、1 = 白) を返します。

GetContrast(ID コード)

ポスタルバーコードの前景と背景のグレースケールでの平均コントラストを返します。

注意:

  • ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。
  • ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、GetContrast 関数は PDF417 コードに対して #ERR を返します。

GetDecodability(ID コード)

バーコードの最小デコード可能性を返します (RSS スタックドを除く)。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetDefect(ID コード)

平均バーコードコントラストに対する最大エレメント反射非均一性の割合を返します (RSS スタックドを除く)。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetECLevel(ID コード)

データマトリックスまたは PDF417 コードの誤り訂正レベルを返します。

GetECMin(ID コード)

バーコード (RSS スタックドを除く) の連続するエレメント間の最小エッジレスポンスを返します。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetErrorCode(ID コード)

各情報文字列に対するエラーコードを返します。

Closed エラーコードとそれに対応する文字列

注意: エラー文字列は、GetErrorString 関数によってスプレッドシートに挿入されます。

診断コード | 対応する情報文字列
00010000 | ビジョンツールエラーです。
00010001 | 無効な画像メモリです。
00010001 | 入力した領域が小さすぎます。
00010002 | 入力した領域が画像境界を超えています。
00019000 | IDMax ビジョンツールエラーです。
04010000 | ReadCompositeCode エラーです。
04010001 | 2D コンポーネントアドレスパターンを検出できません。
04010002 | 無効な 2D コンポーネント画像データが多すぎます。
04010003 | 2D コンポーネントシンボルバージョンを検出できません。
04010004 | 欠落している 2D コンポーネントアドレスパターンを埋めることができません。
04010005 | スキャンラインが無効な画像データを検出しました。
04010006 | スキャンラインが画像境界を超えています。
04010007 | 1D コンポーネントファインダパターンを検出できません。
04010008 | 無効な 1D コンポーネント画像データが多すぎます。
04010009 | 有効なコンポジットシンボルが見つかりません。 注意: そのほかのシンボルすべてに対して、04020001 が返されます。
04010010 | 訂正の必要なシンボルエラーが多すぎます。
04010011 | 誤り訂正に失敗しました。
04010012 | 1D と 2D がデコード可能ですが、関連付けられていません。
04010013 | 自動コントラストしきい値計算に失敗しました。
04010014 | コントラスト感度が許容範囲を超えています。
04010015 | スキャンパラメータが許容範囲を超えています。
04020000 | ReadIDCode エラーです。
04020001 | 有効なシンボルが見つかりません。
04020002 | シンボルをデコードできませんでした。

GetErrorCount(ID コード)

2D シンボルで検出された、誤りのあるコードワードの数を返します。この値は、未使用誤り訂正を計算するために使用されます。

GetErrorString(ID コード)

シンボルのデコードに失敗した場合に診断情報を返します。

ReadIDCode のエラー文字列

GetFormat(ID コード)

ReadIDCode 関数の 2D シンボルのフォーマットを表す値を返します。

2D シンボルのフォーマット

GetGrade(ID コード, [ID コード])

バーコードの全体的な品質のグレードを返します。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。2 番目の [image] 構造体を、オプションのパラメータとして参照できます。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、GetGrade 関数は PDF417 コードに対して #ERR を返します。

Closed オプションの 2 番目の ID コードパラメータが使用される場合の戻り値

オプションの ID コードパラメータは、コンポジットシンボルをサポートします。コンポジットシンボルは、線形 1D シンボルの RSS バーコードコンポーネントと 2D CC-A\CC-B コンポジットコンポーネント (EAN/UCC 固有の MicroPDF417 の変形バージョン) の組み合わせです。オプションの ID コードパラメータが使用された場合は、次が返されます。

  • ReadIDCode 関数がデコードに失敗した場合、または [照合] パラメータが OFF の場合は、#ERR が返されます。
  • 2 つの [image] 構造体のデコードされたシンボルが両方とも 1D の場合、または両方とも 2D の場合、GetGrade は #ERR を返します。1 つの [image] 構造体は 1D シンボルを含み、もう 1 つの [image] 構造体は 2D シンボルを含む必要があります。
  • コンポジットシンボルの 2D コンポーネントを含む [image] 構造体が RSS CC-A\CC-B または PDF417 シンボルでない場合は、GetGrade は #ERR を返します。
  • コンポジットシンボルの 1D コンポーネントを含む [image] 構造体が RSS シンボルでない場合、GetGrade は、2 つの入力 ID コードのグレードのうちの低い方を返します。
  • コンポジットシンボルの 1D コンポーネントを含む [image] 構造体が RSS シンボルである場合、GetGrade は、コンポジットリンケージフラグを確認します。フラグが合格の場合 (つまり、1D と 2D のシンボルが結合されている場合)、2 つのグレードのうちの低い方を返します。フラグが不合格の場合 (つまり、1D と 2D のシンボルが結合されていない場合)、GetGrade は 0 を返します。

GetGridCols(ID コード)

2D シンボルに含まれている列数を返します。

GetGridRows(ID コード)

2D シンボルに含まれている行数を返します。

GetGrowth(ID コード)

2D シンボルの水平および垂直の印刷拡張が個別に計算され、低い方の得点が返されます。 印刷拡張テストの結果を返します。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetHigh(ID コード)

シンボルの高さを返します。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetLearned(ID コード)

シンボルのモデルが学習できた場合には 1 を返し、学習できなかった場合には 0 を返します。

GetLearnedGridCol(ID コード)

学習済みの QR コード、またはデータマトリックスシンボル内の列数を返します。

GetLearnedGridRow(ID コード)

学習済みの QR コード、またはデータマトリックスシンボル内の行数を返します。

GetMaxBarSkew(ID コード)

ポスタルバーコードのバーの最大スキューを返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetMaxBarWidth(ID コード)

ポスタルバーコードのバーの最大幅を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetMaxSpaceWidth(ID コード)

ポスタルバーコードのバーの最大間隔を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetMinBarSkew(ID コード)

ポスタルバーコードのバーの最小スキューを返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetMinBarWidth(ID コード)

ポスタルバーコードのバーの最小幅を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetMinSpaceWidth(ID コード)

ポスタルバーコードのバーの最小間隔を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetMirror(ID コード)

データマトリックスまたは QR コードシンボルの鏡像化の状態 (0 = 鏡像にしない、1 = 鏡像にする) を返します。

GetModulation(ID コード)

バーコード (RSS スタックドを除く) の平均コントラストに対する最小エッジレスポンス (ECMin) の割合を返します。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetNBars(ID コード)

ポスタルバーコードで検出されるバーの数を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetNonUniformity(ID コード)

2D シンボル (PDF417 シンボルを除く) の軸非均一性のテスト結果を返します。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetNumEdges(ID コード)

照合された RSS CC-A\CC-B シンボルコンポーネントの 1 つの有効なスキャンラインで検出されるエッジの総数を返します。

注意: ReadIDCode 関数では、[アルゴリズム] パラメータを OFF にする必要があります。

GetQuietZonesCheck(ID コード)

シンボルの平均コントラストに対する、2D RSS CC-A\CC-B シンボルのクワイエットゾーンで検出される最大非均一性の割合を返します。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

注意: ReadIDCode 関数では、[アルゴリズム] パラメータを OFF にする必要があります。

GetRawStream(ID コード)

Code 128 シンボルの読み取りシンボルから、デコードされていないデータストリームを返します。

GetReflectanceDark(ID コード)

2D RSS CC-A\CC-B またはポスタルシンボルの最小 (暗) 反射を返します。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetReflectanceLight(ID コード)

2D RSS CC-A\CC-B またはポスタルシンボルの最大 (明) 反射を返します。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetResolution(ID コード)

ポスタルバーコードで最小 (最も狭い) エレメントの幅を返します。2D シンボルの場合、セルの平均サイズ (ピクセル単位) を返します。

GetRow(ID コード, [インデックス])

ポスタルシンボルの左上隅の行座標、または 2D シンボルのインデックス (0 ～ 3) 付きファインダパターン頂点の行 (y) 座標をピクセル単位で返します。ポスタルシンボルについては、ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。

GetSDevBarSkew(ID コード)

ポスタルバーコードのバーのスキューの標準偏差を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetSDevBarSpace(ID コード)

ポスタルバーコードのバーの間隔の標準偏差を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetSDevBarWidth(ID コード)

ポスタルバーコードのバーの幅の標準偏差を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetSDevContrast(ID コード)

ポスタルバーコードの前景と背景のグレーレベルでのコントラストの標準偏差を返します。

注意: ReadIDCode 関数の [アルゴリズム] パラメータが OFF の場合、[照合] チェックボックスを ON にする必要があります。ReadIDCode 関数の [アルゴリズム] パラメータが ON の場合、この関数は VerifyIDCode 関数を参照する必要があります。

GetString(ID コード)

シンボル内でエンコードされている文字列を返します。

GetSymbologyIdentifier(ID コード)

ISO 15424 仕様に基づき、シンボルのタイプを 3 文字コードとして返します。

注意: [アルゴリズム] パラメータを ON にする必要があります。

GetUnusedEC(ID コード)

2D シンボルの未使用誤り訂正テストの結果 (%) を返します。

GetWide(ID コード)

シンボルの幅を返します。ReadIDCode 関数の [照合] チェックボックスを ON にする必要があります。


IDMax 関数

データアクセス

In-Sight 関数リファレンス

注意: 返される値はすべて、参照される [image] 構造体から取得され、ReadIDMax 関数の作成時にスプレッドシートに挿入されます。必要に応じてインデックスを使用して、ReadIDMax 関数の結果テーブルからインデックス付き文字列を参照することができます。

関数

説明

GetAngle(IDMax, [インデックス])

シンボルの角度を返します (PharmaCode および DataBar シンボルを除く)。

注意: ポスタルシンボルを選択した場合は、 ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。

GetBarWidth(IDMax, [インデックス])

ポスタルバーコードのバーの平均幅を返します。

GetCodeName(IDMax, [インデックス])

コード種類の名前を返します。このコード名は、プロパティシートに表示されるものと同じです。

GetCodeType(IDMax, [インデックス])

コード種類を返します。

Closed コード種類と対応するコード名を参照してください。

コード種類 | 対応するコード名
1 | Code 128
0 | Code 39
2 | ITF-14
7 | Pharmacode
3/4 | UPC/EAN
11 | Code 93
12 | Codabar
128 | データマトリックス
129 | QR コード
132 | PDF 417
9 | DataBar
10 | DataBar Limited
12 | DataBar Expanded
16 | EAN.UCC Composite
5 | POSTNET
6 | PLANET
14 | Japan Post
13 | Australia Post
8 | UPU
15 | Intelligent Mail Barcode

GetCol(IDMax, [インデックス 1], [インデックス 2])

ポスタルシンボルの左上隅の列座標、または 2D シンボルのインデックス (0 ～ 3) 付きファインダパターン頂点の列 (y) 座標をピクセル単位で返します。2 番目のインデックスはインデックス付きシンボルを識別します。POSTNET、PLANET、およびポスタルシンボルについては、ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。

GetColor(IDMax, [インデックス])

データマトリックス、QR コード、または PDF417 シンボルの前景色の値 (0 = 黒、1 = 白) を返します。

GetContrast(IDMax, [インデックス])

ポスタルバーコードの前景と背景のグレースケールでの平均コントラストを返します。

GetDecodability(IDMax, [インデックス])

バーコードの最小デコード可能性を返します (DataBar バーコードを除く)。ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。

GetDefect(IDMax, [インデックス])

平均バーコードコントラストに対する最大エレメント反射非均一性の割合を返します (DataBar バーコードを除く)。ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。

GetECLevel(IDMax, [インデックス])

データマトリックスまたは PDF417 コードの誤り訂正レベルを返します。

GetECMin(IDMax, [インデックス])

バーコード (DataBar バーコードを除く) の連続するエレメント間の最小エッジレスポンスを返します。ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。

GetErrorCode(IDMax, [インデックス])

各情報文字列に対するエラーコードを返します。

Closed エラーコードとそれに対応する文字列

注意: エラー文字列は、GetErrorString 関数によってスプレッドシートに挿入されます。

診断コード | 対応する情報文字列
00010000 | ビジョンツールエラーです。
00010001 | 無効な画像メモリです。
00010001 | 入力した領域が小さすぎます。
00010002 | 入力した領域が画像境界を超えています。
00019000 | IDMax ビジョンツールエラーです。
04010000 | ReadCompositeCode エラーです。
04010001 | 2D コンポーネントアドレスパターンを検出できません。
04010002 | 無効な 2D コンポーネント画像データが多すぎます。
04010003 | 2D コンポーネントシンボルバージョンを検出できません。
04010004 | 欠落している 2D コンポーネントアドレスパターンを埋めることができません。
04010005 | スキャンラインが無効な画像データを検出しました。
04010006 | スキャンラインが画像境界を超えています。
04010007 | 1D コンポーネントファインダパターンを検出できません。
04010008 | 無効な 1D コンポーネント画像データが多すぎます。
04010009 | 有効なコンポジットシンボルが見つかりません。 注意: そのほかのシンボルすべてに対して、04020001 が返されます。
04010010 | 訂正の必要なシンボルエラーが多すぎます。
04010011 | 誤り訂正に失敗しました。
04010012 | 1D と 2D がデコード可能ですが、関連付けられていません。
04010013 | 自動コントラストしきい値計算に失敗しました。
04010014 | コントラスト感度が許容範囲を超えています。
04010015 | スキャンパラメータが許容範囲を超えています。
04020000 | ReadIDMax エラー。
04020001 | 有効なシンボルが見つかりません。
04020002 | シンボルをデコードできませんでした。

GetErrorCount(IDMax, [インデックス])

2D シンボルで検出された、誤りのあるコードワードの数を返します。この値は、未使用誤り訂正を計算するために使用されます。

GetErrorString(IDMax, [インデックス])

シンボルのデコードに失敗した場合に診断情報を返します。

ReadIDMax のエラー文字列

GetFormat(IDMax, [インデックス])

ReadIDMax 関数の 2D シンボルのフォーマットを表す値を返します。

2D シンボルのフォーマット

GetGrade(IDMax)

バーコードの全体的な品質のグレードを返します。

GetGridCols(IDMax, [インデックス])

2D シンボルに含まれている列数を返します。

GetGridRows(IDMax, [インデックス])

2D シンボルに含まれている行数を返します。

GetGrowth(IDMax, [インデックス])

2D シンボルの水平および垂直の印刷拡張が個別に計算され、低い方の得点が返されます。 印刷拡張テストの結果を返します。ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。

GetHigh(IDMax, [インデックス])

シンボルの高さを返します。ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。

GetLearned(IDMax, [インデックス])

シンボルのモデルが学習できた場合には 1 を返し、学習できなかった場合には 0 を返します。

GetLearnedGridCol(IDMax, [インデックス])

学習済みの QR コード、またはデータマトリックスシンボル内の列数を返します。

GetLearnedGridRow(IDMax, [インデックス])

学習済みの QR コード、またはデータマトリックスシンボル内の行数を返します。

GetMirror(IDMax, [インデックス])

データマトリックスまたは QR コードシンボルの鏡像化の状態 (0 = 鏡像にしない、1 = 鏡像にする) を返します。

GetModulation(IDMax, [インデックス])

バーコード (RSS スタックドを除く) の平均コントラストに対する最小エッジレスポンス (ECMin) の割合を返します。ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。

GetModuleSize(IDMax, [インデックス])

2D モジュールのサイズを返します。

GetNonUniformity(IDMax, [インデックス])

2D シンボル (PDF417 シンボルを除く) の軸非均一性のテスト結果を返します。ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。

GetNumResults(IDMax)

検出されたデコード済み結果の数を返します。

GetRawStream(IDMax, [インデックス])

Code 128 シンボルの読み取りシンボルから、デコードされていないデータストリームを返します。

GetResolution(IDMax, [インデックス])

ポスタルバーコードで最小 (最も狭い) エレメントの幅を返します。2D シンボルの場合、セルの平均サイズ (ピクセル単位) を返します。

GetRow(IDMax, [インデックス 1], [インデックス 2])

ポスタルシンボルの左上隅の行座標、または 2D シンボルのインデックス (0 ～ 3) 付きファインダパターン頂点の行 (y) 座標をピクセル単位で返します。2 番目のインデックスはインデックス付きシンボルを識別します。ポスタルシンボルについては、ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。

GetString(IDMax, [インデックス])

インデックス付き結果から文字列を返します。[インデックス] が提供されない場合は、結果 0 を返します。

注意: 文字列に NULL (0x00) が含まれている場合、自動的に文字を "<NUL>" に変換します。

GetStringIDMax(IDMax,変換モード,[インデックス])

選択した変換モード (0、1 または 2、デフォルト = 0) を基準にしてインデックス付き結果から文字列を返します。この変換モードは印刷できない ASCII 文字の処理方法を指定します。

  • 変換モードを 0 に設定すると、ASCII 文字 0x00 を "<NUL>" に変換します。
  • 変換モードを 1 に設定すると、次の表を使用してすべての印刷できない ASCII 文字 (0-31, 127) を変換します。
0x00 | "<NUL>"
0x01 | "<SOH>"
0x02 | "<STX>"
0x03 | "<ETX>"
0x04 | "<EOT>"
0x05 | "<ENQ>"
0x06 | "<ACK>"
0x07 | "<BEL>"
0x08 | "<BS>"
0x09 | "<HT>"
0x0a | "<LF>"
0x0b | "<VT>"
0x0c | "<FF>"
0x0d | "<CR>"
0x0e | "<SO>"
0x0f | "<SI>"
0x10 | "<DLE>"
0x11 | "<DC1>"
0x12 | "<DC2>"
0x13 | "<DC3>"
0x14 | "<DC4>"
0x15 | "<NAK>"
0x16 | "<SYN>"
0x17 | "<ETB>"
0x18 | "<CAN>"
0x19 | "<EM>"
0x1a | "<SUB>"
0x1b | "<ESC>"
0x1c | "<FS>"
0x1d | "<GS>"
0x1e | "<RS>"
0x1f | "<US>"
0x7f | "<DEL>"
  • 変換モード を 2 に設定すると、CR (0x0d) と LF (0x0a) を除いたすべての印刷できない ASCII 文字を変換します。

GetSymbologyGroup(IDMax, [インデックス])

ReadIDMax ツールについて選択されたコードグループを返します (0 = データマトリックス、1 = QR コード、2 = 1D/スタックド、3 = ポスタル)。

GetSymbologyIdentifier(IDMax, [インデックス])

ISO 15424 仕様に基づき、シンボルのタイプを 3 文字コードとして返します。

GetUnusedEC(IDMax, [インデックス])

2D シンボルの未使用誤り訂正テストの結果 (%) を返します。

GetWide(IDMax, [インデックス])

シンボルの幅を返します。ReadIDMax 関数の [照合] チェックボックスを ON にする必要があります。


IDValidate 関数

データアクセス

In-Sight 関数リファレンス

注意: 返される値はすべて、参照される [image] 構造体から取得され、ValidateIDData 関数の作成時にスプレッドシートに挿入されます。ValidateIDData 関数が ReadIDMax 関数を参照しているとき、インデックスは、必要に応じて ReadIDMax 関数の結果テーブルからインデックス付き文字列を参照することができます。

関数

説明

GetCAGECode(IDValid, [インデックス])

DoD UID データ内の CAGE コードを返します。

GetCAGECodeID(IDValid, [インデックス])

DoD UID データ内の CAGE コードを表す識別子を返します。

GetDataFormat(IDValid, [インデックス])

データのエンコードに使用されたフォーマットを返します。

GetDiagnosticCode(IDValid, [インデックス])

診断コードを返します。

Closed 診断コードとそれに対応する診断情報文字列

診断コード | 診断情報文字列
04040000 | データは正常に検証されました。
04040001 | 無効なシンボル識別子です。
04040003 | 無効なフィールド識別子です。
04040004 | 無効なアプリケーション識別子 (AI) です。
04040005 | 無効なデータ識別子 (DI) です。
04040006 | 無効なテキスト要素識別子 (TEI) です。
04040007 | 無効なフィールドデータです。
04040008 | 無効なフィールドセパレータです。
04040009 | データは ISO 15434 準拠ではありません。
04040010 | サポートされないフォーマットです。
04040011 | 無効なフォーマットコードです。
04040012 | ISO 15434 シンタックスは、このコードではサポートされていません。
04040013 | フィールドは、このアプリケーションでは無効です。
04040014 | アプリケーションフィールドはサポートされていません。
04040015 | 無効なアプリケーションデータです。
04040016 | 複数のフォーマットが存在します。
04040017 | 重複するフィールドがあります。
04040018 | 無効な DoD UID コンストラクト #1 データです。
04040019 | 無効な DoD UID コンストラクト #2 データです。
04040020 | 無効な DoD UID データです。
04040021 | フォーマットトレーラ文字が欠落しています。
04040022 | メッセージトレーラ文字が欠落しています。

GetDiagnosticString(IDValid, [インデックス])

診断情報文字列を返します。

Closed 診断情報文字列

診断情報文字列

データは正常に検証されました。

無効なシンボル識別子です。

無効なフィールド識別子です。

無効なアプリケーション識別子 (AI) です。

無効なデータ識別子 (DI) です。

無効なテキスト要素識別子 (TEI) です。

無効なフィールドデータです。

無効なフィールドセパレータです。

データは ISO 15434 準拠ではありません。

サポートされないフォーマットです。

無効なフォーマットコードです。

ISO 15434 シンタックスは、このコードではサポートされていません。

フィールドは、このアプリケーションでは無効です。

アプリケーションフィールドはサポートされていません。

無効なアプリケーションデータです。

複数のフォーマットが存在します。

重複するフィールドがあります。

無効な DoD UID コンストラクト #1 データです。

無効な DoD UID コンストラクト #2 データです。

無効な DoD UID データです。

フォーマットトレーラ文字が欠落しています。

メッセージトレーラ文字が欠落しています。

GetFieldData(IDValid, インデックス)

インデックスで指定されたフィールドにエンコードされているデータを返します。

GetFieldIdentifier(IDValid, インデックス)

インデックスで指定されたフィールドにエンコードされている識別子を返します。

Closed アプリケーション識別子 (AI) およびその説明

アプリケーション識別子 | アプリケーション識別子の説明
00 | Serial Shipping Container Code (SSCC)
01 | Global Trade Item Number (GTIN)
02 | コンテナに含まれる取引品目の GTIN
10 | バッチ番号、またはロット番号
11 | 製造日
12 | 納期
13 | 梱包日
15 | 有効期限
17 | 使用期限
20 | バリアント番号
21 | シリアル番号
22 | セカンダリデータフィールド
240 | 追加品目の ID
241 | カスタマー部品番号
242 | オーダーメイドバリエーション番号
250 | セカンダリシリアル番号
251 | ソースエントリへの参照
253 | Global Document Type Identifier (GDTI)
254 | GLN 拡張コンポーネント
30 | 品目数
310 | 正味重量 (キログラム)
311 | 長さ、または 1 次元 (メートル)
312 | 幅、直径、または 2 次元 (メートル)
313 | 奥行き、厚さ、高さ、または 3 次元 (メートル)
314 | 面積 (平方メートル)
315 | 実容量 (リットル)
316 | 実容量 (立方メートル)
320 | 正味重量 (ポンド)
321 | 長さ、または 1 次元 (インチ)
322 | 長さ、または 1 次元 (フィート)
323 | 長さ、または 1 次元 (ヤード)
324 | 幅、直径、または 2 次元 (インチ)
325 | 幅、直径、または 2 次元 (フィート)
326 | 幅、直径、または 2 次元 (ヤード)
327 | 奥行き、厚さ、高さ、または 3 次元 (インチ)
328 | 奥行き、厚さ、高さ、または 3 次元 (フィート)
329 | 奥行き、厚さ、高さ、または 3 次元 (ヤード)
330 | ロジスティック重量 (キログラム)
331 | 長さ、または 1 次元 (メートル)
332 | 幅、直径、または 2 次元 (メートル)
333 | 奥行き、厚さ、高さ、または 3 次元 (メートル)
334 | 面積 (平方メートル)
335 | ロジスティック容量 (リットル)
336 | ロジスティック容量 (立方メートル)
337 | 1 平方メートルあたりの重量 (キログラム)
340 | ロジスティック重量 (ポンド)
341 | 長さ、または 1 次元 (インチ)
342 | 長さ、または 1 次元 (フィート)
343 | 長さ、または 1 次元 (ヤード)
344 | 幅、直径、または 2 次元
345 | 幅、直径、または 2 次元
346 | 幅、直径、または 2 次元
347 | 奥行き、厚さ、高さ、または 3 次元
348 | 奥行き、厚さ、高さ、または 3 次元
349 | 奥行き、厚さ、高さ、または 3 次元
350 | 面積 (平方インチ)
351 | 面積 (平方フィート)
352 | 面積 (平方ヤード)
353 | 面積 (平方インチ)
354 | 面積 (平方フィート)
355 | 面積 (平方ヤード)
356 | 正味重量 (トロイオンス)
357 | 正味重量 (または容量) (トロイオンス)
360 | 実容量 (クオート)
361 | 実容量 (米ガロン)
362 | ロジスティック容量 (クオート)
363 | ロジスティック容量 (米ガロン)
364 | 実容量 (立方インチ)
365 | 実容量 (立方フィート)
366 | 実容量 (立方ヤード)
367 | ロジスティック容量 (立方インチ)
368 | ロジスティック容量 (立方フィート)
369 | ロジスティック容量 (立方ヤード)
37 | 取引品目数
390 | 適用される支払額 (現地通貨)
391 | 適用される支払額と ISO 通貨コード
392 | 適用される支払額 (単一通貨圏)
393 | 適用される支払額と ISO 通貨コード
400 | カスタマー発注番号
401 | 委託番号
402 | 出荷識別番号
403 | ルーティングコード
410 | グローバルロケーション番号に出荷/配送
411 | グローバルロケーション番号に請求/インボイスを送信
412 | グローバルロケーション番号から購入
413 | グローバルロケーション番号に出荷/配送/転送
414 | 物理的な場所の識別 - グローバルロケーション番号
415 | インボイス発行側のグローバルロケーション番号
420 | 1 つの郵便局内の郵便番号に出荷/配送
421 | ISO 国コードを持つ郵便番号に出荷/配送
422 | 取引品目の発送国
423 | 最初に処理を行う国
424 | 処理を行う国
425 | 分解を行う国
426 | プロセスチェーン全体をカバーする国
7001 | NATO Stock Number (NSN)
7002 | UN/ECE 枝肉番号およびカット規格番号
7030-7039 | プロセッサの承認番号 (ISO 国番号付き)
8001 | ロール型製品 (幅、長さ、芯の直径、方向、接合)
8002 | 携帯電話識別子
8003 | Global Returnable Asset Identifier (GRAI)
8004 | Global Individual Asset Identifier (GIAI)
8005 | 測定単位あたりの価格
8006 | 取引 I のコンポーネント ID
8007 | International Bank Account Number (IBAN)
8008 | 製造日時
8018 | Global Service Relation Number (GSRN)
8020 | 支払伝票の整理番号
8100 | GS1-128 Coupon Extended Code
8101 | GS1-128 Coupon Extended Code
8102 | GS1-128 Coupon Extended Code
90 | 貿易相手との間で相互に合意した情報
91 ～ 99 | 企業の内部情報

GetAIDescription(ID コード, インデックス)

インデックスで指定されたフィールドにエンコードされているアプリケーション識別子 (AI) を返します。

GetGTIN(IDValid, [インデックス])

DoD UID データ内の GTIN (CAGE コード＋ CAGE コード内の元の部品番号含む) を返します。

GetGTINID(IDValid, [インデックス])

DoD UID データ内の GTIN (CAGE コード＋ CAGE コード内の元の部品番号含む) を表す識別子を返します。

GetInvalidDataLength(IDValid, [インデックス])

エラーのあるデータサブストリングの長さを返します。

GetInvalidDataPosition(IDValid, [インデックス])

エラーのあるデータサブストリングの開始位置を返します。

GetNumDataFormats(IDValid, [インデックス])

データのエンコードに使用されたフォーマットの数を返します。

GetNumFields(IDValid, [インデックス])

データにエンコードされているフィールドの数を返します。

GetPartNum(IDValid, [インデックス])

DoD UID データ内の部品番号を返します。

GetPartNumID(IDValid, [インデックス])

DoD UID データ内の部品番号を表す識別子を返します。

GetSerialNum(IDValid, [インデックス])

DoD UID データ内のシリアル番号を返します。

GetSerialNumID(IDValid, [インデックス])

DoD UID データ内のシリアル番号を表す識別子を返します。

GetUID(IDValid, [インデックス])

DoD UID データ内の UID を返します。

GetUIDID(IDValid, [インデックス])

DoD UID データ内の UID を表す識別子を返します。

GetValid(IDValid, [インデックス])

参照されるデータが有効か無効かを返します (0 = 無効、1 = 有効)。


IDVerify 関数

データアクセス

In-Sight 関数リファレンス

注意:

  • 返される値はすべて、参照される [image] 構造体から取得され、VerifyIDCode 関数の作成時にスプレッドシートに挿入されます。
  • 次の関数は、データマトリックス、QR コード、またはPOSTNET、PLANET、UPU 4-State、Australia Post 4-State、Japan Post 4-State、USPS OneCode
    4-State     ポスタル    シンボルでのみ使用可能です。参照される ReadIDCode 関数では、[アルゴリズム] パラメータをオンにしておく必要があります。

  • ValidateIDData 関数が ReadIDMax 関数を参照しているとき、インデックスは、必要に応じて　ReadIDMax 関数の結果テーブルからインデックス付き文字列を参照することができます。
  • Closed 汎用データアクセス関数

    関数

    説明

    GetGrade(IDVerify, [インデックス])

    選択されたメトリクスに基づいて、シンボルの全体的な品質のグレードを返します。

    注意: VerifyIDCode 関数で、メトリクスのセット (ISO、IAQG AS9132、または Cognex) の複数のパラメータをオンにしている場合、GetGrade 関数は、オンにされたメトリクスのうち最もグレードが低いものを返します。

    GetHigh(IDVerify, [インデックス])

    シンボルの高さを返します。

    GetWide(IDVerify, [インデックス])

    シンボルの幅を返します。

    GetRow(IDVerify, [インデックス])

    バーコードの左上隅の行座標、または 2D シンボルのインデックス (0 ～ 3) 付きファインダパターン頂点の行座標をピクセル単位で返します。バーコードについては、ReadIDCode 関数の [照合] チェックボックスをオンにする必要があります。

    GetCol(IDVerify, [インデックス])

    バーコードの左上隅の列座標、または 2D シンボルのインデックス (0 ～ 3) 付きファインダパターン頂点の列座標をピクセル単位で返します。バーコードについては、ReadIDCode 関数の [照合] チェックボックスをオンにする必要があります。

    GetAngle(IDVerify, [インデックス])

    シンボルの角度を返します。

    Get2DModulation(IDVerify, [インデックス])

    選択されたメトリクスメソッドで定義されているシンボルの変調を返します。VerifyIDCode 関数の ISO 15415 または AIM DPM メトリクスのいずれかを、オンにしておく必要があります。

    注意: Get2DModulation 関数は、データマトリックス ECC 200 以外のシンボルについては #ERR を返します。

    • グレード A = 4.0
    • グレード B = 3.0
    • グレード C = 2.0
    • グレード D = 1.0
    • グレード F = 0.0

    GetNoReadString(IDVerify, [インデックス])

    ReadIDCode のエラーに関する情報を提供する診断文字列を返します。検証対象のコードの種類によっては、グリッドサイズ、極性、解像度、ECC レベル、場合によってはコードの種類も返されます。

    Closed 診断情報文字列

    診断情報文字列

    シンボルのデコードが正常に終了しました。

    シンボルが検出されましたが、デコードできませんでした。

    シンボルが検出されなかったか、デコードされませんでした。

    ReadIDCode 操作がタイムアウトになりました。

    デコードを試みているときに、センサがメモリ不足になりました。

    ReadIDCode が予期せずに失敗しました。

    VerifyIDCode に不正な ReadIDCode セル参照が存在します。

    ReadIDCode に無効な画像セル参照があります。

    [アルゴリズム] チェックボックスが選択されている場合、No-Read 診断は、データマトリックスまたは QR コードでのみサポートされます。

    ReadIDCode プロパティシートで、[アルゴリズム] チェックボックスがオンになっていません。

    GetNoReadStatus(IDVerify, [インデックス])

    ReadIDCode のエラーに関する情報を提供する診断コードを返します。

    Closed 診断コードとそれに対応する情報文字列

    データマトリックス: すべてのメトリクスは、次の状況で計算されます。

    診断コード

    対応するエラー文字列

    04030000

    シンボルのデコードが正常に終了しました。

    04030001

    シンボルが検出されましたが、デコードできませんでした。

    QR コード: ISO 15415 および IAQG AS9132 を除くすべてのメトリクスは、次の状況で計算されます。

    診断コード

    対応するエラー文字列

    04030000

    シンボルのデコードが正常に終了しました。

    04030001

    シンボルが検出されましたが、デコードできませんでした。

    次の状況では、データマトリックスまたは QR コードで使用できるメトリクスはありません。

    診断コード

    対応するエラー文字列

    04030002

    シンボルが検出されなかったか、デコードされませんでした。

    04030003

    ReadIDCode 操作がタイムアウトになりました。

    04030004

    デコードを試みているときに、センサがメモリ不足になりました。

    04030005

    ReadIDCode が予期せずに失敗しました。

    04030006

    VerifyIDCode に不正な ReadIDCode セル参照が存在します。

    04030007

    ReadIDCode に無効な画像セル参照があります。

    04030008

    [アルゴリズム] チェックボックスが選択されている場合、No-Read 診断は、データマトリックスまたは QR コードでのみサポートされます。

    04030009

    ReadIDCode プロパティシートで、[アルゴリズム] チェックボックスがオンになっていません。

  • Closed ISO 16022/18004 データアクセス関数

    関数

    説明

    GetContrast(IDVerify, [インデックス])

    ISO 15415 が選択されている場合は、シンボルのコントラスト測定の結果を、前景と背景のグレースケール階調の間の差 (%) で返します。

    • グレード A (4.0): 0.70 ≦ x < 1.00
    • グレード B (3.0): 0.55 ≦ x < 0.70
    • グレード C (2.0): 0.40 ≦ x < 0.55
    • グレード D (1.0): 0.20 ≦ x < 0.40
    • グレード F (0.0): 0.00 ≦ x < 0.20

    AIM DPM (プロセスコントロールまたは契約準拠) が選択されている場合は、白と黒の分散の平均の差を、白の分散平均のパーセンテージとして計算した、シンボルコントラスト測定の結果を返します。AIM DPM 標準では、このような白の分散が 78% ± 8% の許容範囲内になるように、画像を取得することを規定しています。

    • グレード A (4.0): 0.30 ≦ x < 1.00
    • グレード B (3.0): 0.25 ≦ x < 0.30
    • グレード C (2.0): 0.20 ≦ x < 0.25
    • グレード D (1.0): 0.15 ≦ x < 0.20
    • グレード F (0.0): 0.00 ≦ x < 0.15

    GetGrowth(IDVerify, [インデックス])

    2D シンボルの水平および垂直の印刷拡張が個別に計算され、低い方の得点が返されます。 印刷拡張測定の結果を返します。

    • グレード A (4.0): -0.50 ≦ x ≦ 0.50
    • グレード B (3.0): -0.70 ≦ x < -0.50 または 0.50 < x ≦ 0.70
    • グレード C (2.0): -0.85 ≦ x < -0.70 または 0.70 < x ≦ 0.85
    • グレード D (1.0): -1.00 ≦ x < -0.85 または 0.85 < x ≦ 1.00
    • グレード F (0.0): x < -1.00 または x > 1.00

    GetGrowthHorizontal(IDVerify, [インデックス])

    2D シンボルの水平方向への印刷拡張を返します。

    • グレード A (4.0): -0.50 ≦ x ≦ 0.50
    • グレード B (3.0): -0.70 ≦ x < -0.50 または 0.50 < x ≦ 0.70
    • グレード C (2.0): -0.85 ≦ x < -0.70 または 0.70 < x ≦ 0.85
    • グレード D (1.0): -1.00 ≦ x < -0.85 または 0.85 < x ≦ 1.00
    • グレード F (0.0): x < -1.00 または x > 1.00

    GetGrowthVertical(IDVerify, [インデックス])

    2D シンボルの垂直方向への印刷拡張を返します。

    • グレード A (4.0): -0.50 ≦ x ≦ 0.50
    • グレード B (3.0): -0.70 ≦ x < -0.50 または 0.50 < x ≦ 0.70
    • グレード C (2.0): -0.85 ≦ x < -0.70 または 0.70 < x ≦ 0.85
    • グレード D (1.0): -1.00 ≦ x < -0.85 または 0.85 < x ≦ 1.00
    • グレード F (0.0): x < -1.00 または x > 1.00

    GetNonUniformity(IDVerify, [インデックス])

    2D シンボルの軸非均一性の測定結果を返します。

    • グレード A (4.0): 0.00 ≦ x ≦ 0.06
    • グレード B (3.0): 0.06 < x ≦ 0.08
    • グレード C (2.0): 0.08 < x ≦ 0.10
    • グレード D (1.0): 0.10 < x ≦ 0.12
    • グレード F (0.0): 0.12 < x ≦ 1.00

    GetRefDecode(IDVerify, [インデックス])

    シンボルのデコードが正常終了したかどうかを示します。

    • グレード A (4.0): 1
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 0

    GetUnusedEC(IDVerify, [インデックス])

    2D シンボルの未使用誤り訂正測定の結果 (%) を返します。

    • グレード A (4.0): 0.62 ≦ x ≦ 1.00
    • グレード B (3.0): 0.50 ≦ x < 0.62
    • グレード C (2.0): 0.37 ≦ x < 0.50
    • グレード D (1.0): 0.25 ≦ x < 0.37
    • グレード F (0.0): 0.00 ≦ x < 0.25

  • Closed ISO 15415/AIM DPM データアクセス関数

    関数

    説明

    Get2DModulation(IDVerify, [インデックス])

    選択されたメトリクスメソッドで定義されているシンボルの変調を返します。VerifyIDCode 関数の ISO 15415 または AIM DPM メトリクスのいずれかを、オンにしておく必要があります。

    注意: Get2DModulation 関数は、データマトリックス ECC 200 以外のシンボルについては #ERR を返します。

    • グレード A = 4.0
    • グレード B = 3.0
    • グレード C = 2.0
    • グレード D = 1.0
    • グレード F = 0.0

    GetContrast(IDVerify, [インデックス])

    ISO 15415 が選択されている場合は、シンボルのコントラスト測定の結果を、前景と背景のグレースケール階調の間の差 (%) で返します。

    • グレード A (4.0): 0.70 ≦ x < 1.00
    • グレード B (3.0): 0.55 ≦ x < 0.70
    • グレード C (2.0): 0.40 ≦ x < 0.55
    • グレード D (1.0): 0.20 ≦ x < 0.40
    • グレード F (0.0): 0.00 ≦ x < 0.20

    AIM DPM (プロセスコントロールまたは契約準拠) が選択されている場合は、白と黒の分散の平均の差を、白の分散平均のパーセンテージとして計算した、シンボルコントラスト測定の結果を返します。AIM DPM 標準では、このような白の分散が 78% ± 8% の許容範囲内になるように、画像を取得することを規定しています。

    • グレード A (4.0): 0.30 ≦ x < 1.00
    • グレード B (3.0): 0.25 ≦ x < 0.30
    • グレード C (2.0): 0.20 ≦ x < 0.25
    • グレード D (1.0): 0.15 ≦ x < 0.20
    • グレード F (0.0): 0.00 ≦ x < 0.15

    GetExtremeReflectance(IDVerify, [インデックス])

    シンボルの ISO 15415 極的反射率を返します。VerifyIDCode 関数の ISO 15415 メトリクスをオンにしておく必要があります。このメトリクスは、AIM DPM 標準の一部ではありません。AIM DPM が選択されている場合、#ERR が返されます。

    • グレード A (4.0): 1
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 0

    GetFixedPatternDamage(IDVerify, [インデックス])

    シンボルの固定パターン損傷のメトリクスを返します。VerifyIDCode 関数の ISO 15415 または AIM DPM メトリクスのいずれかを、オンにしておく必要があります。固定パターン損傷の計測方法は、ISO 15415 と AIM DPM とでは異なります。

    • グレード A = 4.0
    • グレード B = 3.0
    • グレード C = 2.0
    • グレード D = 1.0
    • グレード F = 0.0

    GetGridNonUniformity(IDVerify, [インデックス])

    シンボルのグリッド非均一性を返します。VerifyIDCode 関数の ISO 15415 または AIM DPM メトリクスのいずれかを、オンにしておく必要があります。

    • グレード A (4.0): x ≦ 0.38
    • グレード B (3.0): 0.38 < x ≦ 0.50
    • グレード C (2.0): 0.50 < x ≦ 0.63
    • グレード D (1.0): 0.63 < x ≦ 0.75
    • グレード F (0.0): x > 0.75

    GetGrowth(IDVerify, [インデックス])

    2D シンボルの水平および垂直の印刷拡張が個別に計算され、低い方の得点が返されます。 印刷拡張測定の結果を返します。ISO 15415 および AIM DPM の両方で、印刷拡張はプロセスコントロールメトリクスとして分類されます。これらはグレードマッピングを定義しないため、シンボルのグレードの計算に使用しないでください。

    注意:

    • 印刷拡張の計測および報告方法は、ISO 16022 や ISO 18004 での方法とは異なります。ISO 15415 および AIM DPM の両方で、印刷拡張は計測されたセルサイズの標準からの平均偏差として計測され、標準に対するパーセンテージで表されます。負の数は印刷損失を表します。
    • 印刷拡張は、GetGrowthHorizontal および GetGrowthVertical 関数によって返されたシンボルの水平方向と垂直方向に、それぞれ計測されます。GetGrowth 関数は、水平および垂直印刷拡張値の平均を返します。

    GetGrowthHorizontal(IDVerify, [インデックス])

    2D シンボルの水平方向への印刷拡張を返します。

    • グレード A (4.0): -0.50 ≦ x ≦ 0.50
    • グレード B (3.0): -0.70 ≦ x < -0.50 または 0.50 < x ≦ 0.70
    • グレード C (2.0): -0.85 ≦ x < -0.70 または 0.70 < x ≦ 0.85
    • グレード D (1.0): -1.00 ≦ x < -0.85 または 0.85 < x ≦ 1.00
    • グレード F (0.0): x < -1.00 または x > 1.00

    GetGrowthVertical(IDVerify, [インデックス])

    2D シンボルの垂直方向への印刷拡張を返します。

    • グレード A (4.0): -0.50 ≦ x ≦ 0.50
    • グレード B (3.0): -0.70 ≦ x < -0.50 または 0.50 < x ≦ 0.70
    • グレード C (2.0): -0.85 ≦ x < -0.70 または 0.70 < x ≦ 0.85
    • グレード D (1.0): -1.00 ≦ x < -0.85 または 0.85 < x ≦ 1.00
    • グレード F (0.0): x < -1.00 または x > 1.00

    GetNonUniformity(IDVerify, [インデックス])

    2D シンボルの軸非均一性の測定結果を返します。

    • グレード A (4.0): 0.00 ≦ x ≦ 0.06
    • グレード B (3.0): 0.06 < x ≦ 0.08
    • グレード C (2.0): 0.08 < x ≦ 0.10
    • グレード D (1.0): 0.10 < x ≦ 0.12
    • グレード F (0.0): 0.12 < x ≦ 1.00

    GetRefDecode(IDVerify, [インデックス])

    シンボルのデコードが正常終了したかどうかを示します。

    • グレード A (4.0): 1
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 0

    GetUnusedEC(IDVerify, [インデックス])

    2D シンボルの未使用誤り訂正測定の結果 (%) を返します。

    • グレード A (4.0): 0.62 ≦ x ≦ 1.00
    • グレード B (3.0): 0.50 ≦ x < 0.62
    • グレード C (2.0): 0.37 ≦ x < 0.50
    • グレード D (1.0): 0.25 ≦ x < 0.37
    • グレード F (0.0): 0.00 ≦ x < 0.25

  • Closed Cognex 補足データアクセス関数

    関数

    説明

    GetBkgdUniformity(IDVerify, [インデックス])

    クワイエットゾーンを含め、2D シンボルのグレースケール背景の均一性を返します。クワイエットゾーンとバイナリデータビット 0 を表すモジュールのグレーレベルが均一なシンボルは、良い品質であるとみなされます。

    • グレード A (4.0): 0.9 ≦ x ≦ 1.0
    • グレード B (3.0): 0.8 ≦ x < 0.9
    • グレード C (2.0): 0.7 ≦ x < 0.8
    • グレード D (1.0): 0.6 ≦ x < 0.7
    • グレード F (0.0): 0.0 ≦ x < 0.6

    GetCellSeparability(IDVerify, [インデックス])

    バイナリデータビット 1 または 0 を表すモジュールのバイモーダル特性の計測値を返します。モジュールのグレーレベルは、AIM 参照デコードアルゴリズムで定義されたサンプリンググリッドから抽出されます。

    • グレード A (4.0): 0.75 ≦ x ≦ 1.00
    • グレード B (3.0): 0.60 ≦ x < 0.75
    • グレード C (2.0): 0.50 ≦ x < 0.60
    • グレード D (1.0): 0.40 ≦ x < 0.50
    • グレード F (0.0): 0.00 ≦ x < 0.40

    GetFinderConfCon(IDVerify, [インデックス])

    シンボルの検出パターン (タイミングパターンを含む) がどの程度、AIM シンボル仕様に準拠しているかを表す値を返します。特に、同じ色を持つ隣り合ったモジュールがどの程度の実線を形成し、異なる色のモジュールのサイズがどの程度同じであるかを計測します。この測定値が小さい場合、AIM 参照デコードアルゴリズムのシンボル探索が成功する可能性が低いことを表します。また、この関数は、検出パターン内にある予測されたバイナリデータビット 0 または 1 を表す (タイミングパターンを含む) モジュール数の割合も計測します。

    • グレード A (4.0): 1.0
    • グレード B (3.0): 0.9 ≦ x < 1.0
    • グレード C (2.0): 0.8 ≦ x < 0.9
    • グレード D (1.0): 0.7 ≦ x < 0.8
    • グレード F (0.0): 0.0 ≦ x < 0.7

    GetFinderConfDot(IDVerify, [インデックス])

    ドットピーンシンボルの検出パターンが AIM 仕様にどの程度準拠しているかを表す値を返します。

    • グレード A (4.0): 1.0
    • グレード B (3.0): 0.9 ≦ x < 1.0
    • グレード C (2.0): 0.8 ≦ x < 0.9
    • グレード D (1.0): 0.7 ≦ x < 0.8
    • グレード F (0.0): 0.0 ≦ x < 0.7

    GetImageSharpness(IDVerify, [インデックス])

    3×3 のソベルで取得したエッジの大きさを画像コントラストと比較して、画像エッジのシャープネス値を返します。シャープネス値の高い画像は、焦点のよくあった高品質の画像とみなされます。

    • グレード A (4.0): 0.5 ≦ x ≦ 1.0
    • グレード B (3.0): 0.4 ≦ x < 0.5
    • グレード C (2.0): 0.3 ≦ x < 0.4
    • グレード D (1.0): 0.2 ≦ x < 0.3
    • グレード F (0.0): 0.0 ≦ x < 0.2

    GetSymSeparability(IDVerify, [インデックス])

    画像全体の中で、このシンボルがはっきりした特徴であるかどうかを示します。画像の最小グレーレベルと最大グレーレベルの中間であるグローバルしきい値によって、背景とはっきり区別できるシンボルは良い品質であるとみなされます。

    • グレード A (4.0): 1
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 0

  • Closed IAQG AS9132 データアクセス関数

    関数

    説明

    GetIAQGOverallGrade(IDVerify, [インデックス])

    GetPercDotOSFailGrade、GetPercDotPositionFailGrade、および GetDistortionAngleGrade について、抽出に成功した最小グレードを使用し、IAQG AS9132 に従って全体的なシンボルグレードを返します。

    GetDistortionAngle(IDVerify, [インデックス])

    シンボルの X 軸と Y 軸の垂線からの逸脱を度単位で返します。

    • グレード A (4.0): x ≦ 7.0
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): x > 7.0

    GetDistortionAngleGrade(IDVerify, [インデックス])

    歪みの角度に対する IAQG AS9132 グレードを返します。

    • グレード A (4.0): x ≦ 7.0
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): x > 7.0

    GetDotCenter(IDVerify, [インデックス])

    シンボル内のセルの中心が、期待される位置にどの程度近いかを示すパーセンテージを返します。

    注意: この関数は、ドットピーンデータマトリックスシンボルを検証する場合のみ適用されます。

    • グレード A (4.0): 0.0 ≦ x ≦ 10.0
    • グレード B (3.0): 10.0 ≦ x < 20.0
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 20.0 ≦ x < 100.0

    GetDotDiameter(IDVerify, [インデックス])

    セルの直径の平均値を、予想されるセルの直径に対するパーセンテージとして返します。

    注意: この関数は、ドットピーンデータマトリックスシンボルを検証する場合のみ適用されます。

    • グレード A (4.0): 60.0 < x < 105.0
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 0.0 ≦ x ≦ 60.0 および 105.0 ≦ x ≦ 150.0

    GetDotOvality(IDVerify, [インデックス])

    セルの幅と高さの平均差分を、予想されるセルサイズに対するパーセンテージとして返します。

    注意: この関数は、ドットピーンデータマトリックスシンボルを検証する場合のみ適用されます。

    • グレード A (4.0): 0.0 ≦ x < 20.0
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 20.0 ≦ x < 100.0

    GetPercDotOSFail(IDVerify, [インデックス])

    シンボル内で、ドットサイズまたは楕円率の範囲のいずれかから外れるオンセルのパーセンテージを返します。

    GetPercDotOSFailGrade(IDVerify, [インデックス])

    ドットサイズまたは楕円率の範囲のいずれかから外れるオンセルのパーセンテージに対する IAQG AS9132 グレードを返します。2% を超える値は、このメトリクスでは不合格 (0) グレードで、それ以外の場合は合格 (4) です。

    GetPercDotPositionFail(IDVerify, [インデックス])

    シンボル内で、位置の許容範囲を超えるオンセルのパーセンテージを返します。

    GetPercDotPositionFailGrade(IDVerify, [インデックス])

    位置の許容範囲を超えるオンセルのパーセンテージに対する IAQG AS9132 グレードを返します。

    • グレード A (4.0): 1
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 0

    GetSDevDotCenter(IDVerify, [インデックス])

    ドット位置のシフトエラーの標準偏差を返します。

    注意: この関数は、ドットピーンデータマトリックスシンボルを検証する場合のみ適用されます。

    • グレード A (4.0): 0.0 ≦ x < 20.0
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 20.0 ≦ x < 100.0

    GetSDevDotDiameter(IDVerify, [インデックス])

    すべてのセルの直径の標準偏差を返します。

    注意: この関数は、ドットピーンデータマトリックスシンボルを検証する場合のみ適用されます。

    • グレード A (4.0): 0.0 ≦ x < 20.0
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 20.0 ≦ x < 100.0

    GetSDevDotOvality(IDVerify, [インデックス])

    セルの幅と高さの間の標準偏差を返します。

    注意: この関数は、ドットピーンデータマトリックスシンボルを検証する場合のみ適用されます。

    • グレード A (4.0): 0.0 ≦ x < 20.0
    • グレード B (3.0): なし
    • グレード C (2.0): なし
    • グレード D (1.0): なし
    • グレード F (0.0): 20.0 ≦ x < 100.0

  • Closed ポスタルコードデータアクセス関数

    関数

    説明

    GetBarPitch(IDVerify, [インデックス])

    POSTNET、PLANET、UPU 4-State、Australia Post 4-State、Japan Post 4-State、USPS OneCode
    4-State     ポスタル    バーコードのバーの平均ピッチを返します。

    GetBarSkew(IDVerify, [インデックス])

    ポスタルバーコードのバーの平均スキューを返します。

    GetBarSpace(IDVerify, [インデックス])

    ポスタルバーコードのバーの平均間隔を返します。

    GetBarVoid(IDVerify, [インデックス])

    ポスタルバーコードのバーの平均空隙間隔 (インクのない領域) を返します。

    GetBarHeight(IDVerify, [インデックス])

    ポスタルバーコード内の指定された種類のバーの高さの平均を返します (インデックス入力値: 0 = ショート/タイミング、1 = アセンダ、2 = デセンダ、3 = トール/フル)。

    GetBarWidth(IDVerify, [インデックス])

    ポスタルバーコードのバーの平均幅を返します。

    GetBaselineShift(IDVerify, [インデックス])

    ポスタルバーコードのベースラインからのバーの平均シフトを返します。

    GetBGReflectance(IDVerify, [インデックス])

    平均背景反射を返します。

    GetClearanceBottom(IDVerify, [インデックス])

    コードの下側の空間 (クワイエットゾーン) を返します。

    注意: シンボルのデコードが正常に終了した場合のみ有効です。

    GetClearanceLeft(IDVerify, [インデックス])

    コードの左側の空間 (クワイエットゾーン) を返します。

    注意: シンボルのデコードが正常に終了した場合のみ有効です。

    GetClearanceRight(IDVerify, [インデックス])

    コードの右側の空間 (クワイエットゾーン) を返します。

    注意: シンボルのデコードが正常に終了した場合のみ有効です。

    GetClearanceTop(IDVerify, [インデックス])

    コードの上側の空間 (クワイエットゾーン) を返します。

    注意: シンボルのデコードが正常に終了した場合のみ有効です。

    GetContrast(IDVerify, [インデックス])

    シンボルのコントラスト測定の結果を、前景と背景のグレースケール階調の間の差 (%) で返します。

    GetMaxBarHeight(IDVerify, [インデックス])

    ポスタルバーコード内の指定された種類のバーの高さの最大値を返します (インデックス入力値: 0 = ショート/タイミング、1 = アセンダ、2 = デセンダ、3 = トール/フル)。

    GetMaxBarPitch(IDVerify, [インデックス])

    ポスタルバーコードのバーの最大ピッチを返します。

    GetMaxBarSkew(IDVerify, [インデックス])

    ポスタルバーコードのバーの最大スキューを返します。

    GetMaxBarSpace(IDVerify, [インデックス])

    ポスタルバーコードのバーの最大間隔を返します。

    GetMaxBarVoid(IDVerify, [インデックス])

    ポスタルバーコードのバーの最大空隙間隔 (インクのない領域) を返します。

    GetMaxBarWidth(IDVerify, [インデックス])

    ポスタルバーコードのバーの最大幅を返します。

    GetMaxBaselineShift(IDVerify, [インデックス])

    ポスタルバーコードのベースラインからのバーの最大シフトを返します。

    GetMaxBGReflectance(IDVerify, [インデックス])

    最大背景反射を返します。

    GetMaxContrast(IDVerify, [インデックス])

    前景と背景間の最大コントラストを (グレースケール階調で) 返します。

    GetMaxOverInkSize(IDVerify)

    ポスタルバーコードのバーの最大オーバーインクサイズを返します。

    GetMinBarHeight(IDVerify, [インデックス])

    ポスタルバーコード内の指定された種類のバーの高さの最小値を返します (インデックス入力値: 0 = ショート/タイミング、1 = アセンダ、2 = デセンダ、3 = トール/フル)。

    GetMinBarPitch(IDVerify, [インデックス])

    ポスタルバーコードのバーの最小ピッチを返します。

    GetMinBarSpace(IDVerify, [インデックス])

    ポスタルバーコードのバーの最小間隔を返します。

    GetMinBarVoid(IDVerify, [インデックス])

    ポスタルバーコードのバーの最小空隙間隔 (インクのない領域) を返します。

    GetMinBarWidth(IDVerify, [インデックス])

    ポスタルバーコードのバーの最小幅を返します。

    GetMinBarSkew(IDVerify, [インデックス])

    ポスタルバーコードのバーの最小スキューを返します。

    GetMinBaselineShift(IDVerify, [インデックス])

    ベースラインからのバーの最小シフトを返します。

    GetMinBGReflectance(IDVerify, [インデックス])

    最小背景反射を返します。

    GetMinContrast(IDVerify, [インデックス])

    前景と背景間の最小コントラストを (グレースケール階調で) 返します。

    GetMinOverInkSize(IDVerify)

    バーの最小オーバーインクサイズを返します。

    GetModulation(IDVerify)

    ポスタルバーコードの平均コントラストに対する最小エッジレスポンス (ECMin) の割合を返します。

    GetNBars(IDVerify)

    ポスタルバーコードで検出されるバーの数を返します。

    GetOneBarBaselineShift(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーのベースラインシフトを返します。

    GetOneBarBGReflectance(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーの背景反射を返します。

    GetOneBarCol(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーの列番号を返します。POSTNET および PLANET 2-State コードでは、バーの位置はバーの底辺の中心です。UPU 4-State、USPS OneCode 4-State、Japan Post 4-State、Australia Post 4-State 4-State コードでは、バーの T エレメントの中心です。

    GetOneBarContrast(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーのコントラストを返します。

    GetOneBarHeight(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーの高さを返します。

    GetOneBarOverInkSize(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーのオーバーインクサイズを返します。

    GetOneBarPitch(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーのピッチを返します。

    GetOneBarRow(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーの行番号を返します。POSTNET および PLANET 2-State コードでは、バーの位置はバーの底辺の中心です。UPU 4-State、USPS OneCode 4-State、Japan Post 4-State、Australia Post 4-State 4-State コードでは、バーの T エレメントの中心です。

    GetOneBarSkew(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーのスキューを返します。

    GetOneBarSpace(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーの領域を返します。

    GetOneBarType(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーの種類 (0 = ショート/タイミング、1 = アセンダ、2 = デセンダ、3 = トール/フル) を返します。

    注意: パラメータのインデックス値はポスタルバーコードの個々のバーを参照し、出力値は個々のバーの種類を示します。

    GetOneBarVoid(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーの空隙間隔を返します。

    GetOneBarWidth(IDVerify, [インデックス])

    ポスタルバーコード内の、インデックスで指定されたバーの幅を返します。

    GetOverInkSize(IDVerify)

    ポスタルバーコードのバーの平均オーバーインクサイズを返します。

    GetSDevBarHeight(IDVerify, [インデックス])

    ポスタルバーコードで指定された種類のバーの高さの標準偏差を返します (インデックス入力値: 0 = ショート/タイミング、1 = アセンダ、2 = デセンダ、3 = トール/フル)。

    GetSDevBarPitch(IDVerify, [インデックス])

    ポスタルバーコードのバーのピッチの標準偏差を返します。

    GetSDevBarSkew(IDVerify, [インデックス])

    ポスタルバーコードのバーのスキューの標準偏差を返します。

    GetSDevBarSpace(IDVerify, [インデックス])

    ポスタルバーコードのバーの間隔の標準偏差を返します。

    GetSDevBarVoid(IDVerify, [インデックス])

    ポスタルバーコードのバーの空隙間隔 (インクのない領域) の標準偏差を返します。

    GetSDevBarWidth(IDVerify, [インデックス])

    ポスタルバーコードのバーの幅の標準偏差を返します。

    GetSDevBaselineShift(IDVerify, [インデックス])

    ベースラインからのバーのシフトの標準偏差を返します。

    GetSDevBGReflectance(IDVerify, [インデックス])

    背景反射の標準偏差を返します。

    GetSDevOverInkSize(IDVerify, [インデックス])

    バーのオーバーインクサイズの標準偏差を返します。

    GetVerifyDecoded(IDVerify, [インデックス])

    シンボルのデコードに成功したかどうかを返します (出力値: 0 = 失敗、1 = 成功)。


画像関数

画像関数 |
データアクセス | In-Sight 関数リファレンス

注意: 次の関数はそれぞれ、最初のパラメータとして、 [image] データ構造体を参照します。

関数 | 説明
GetArea(画像) | 領域内の処理されるピクセルの数を返します。 構造体は FindCircleDefects 関数によって作成される必要があります。
GetBrightPixelCount(画像) | しきい値を上回るピクセルの数を返します。 構造体は FindCircleDefects 関数によって作成される必要があります。
GetCol(画像, インデックス) | 開始列座標を返します。
GetDarkPixelCount(画像) | しきい値を下回るピクセルの数を返します。 構造体は FindCircleDefects 関数によって作成される必要があります。
GetExposure(画像) | 最後に行われた画像取り込みで使用した、現在の露光時間パラメータの設定 (ミリ秒単位) を返します。GetExposure 関数は、セル A0 の AcquireImage 関数で作成された [image] データ構造体を参照する必要があります。 注意: 自動露光 パラメータが有効な場合、GetExposure 関数は、ソフトウェアにより自動的に決定された露光時間を返します。
GetHigh(画像) | 行の数を返します。
GetPixelValue(画像, フィクスチャ, 点) | 指定された点のピクセルのグレー値を返します。
GetRegion(画像) | 参照される画像フィルタ関数の領域座標を含む [image] データ構造体を返します。出力は [外部定義領域] パラメータをサポートしているビジョンツールの [外部定義領域] パラメータの参照として使用することができます。
GetRow(画像 インデックス) | 開始行座標を返します。
GetString(画像) | In-Sight のスレーブ側が In-Sight のマスター側よりネットワークトリガを受信したときスレーブに送られる文字列を返します。マスターシステムのセル A0 にデフォルトで含まれている [image] データ構造体は、マスターデータパラメータで指定されている文字列を含んでいる必要があります。
GetThresh(画像) | 現在の 2 値化しきい値を返します。GetThresh 関数は、PointFilter 関数によって作成された [image] データ構造体を参照する必要があります。また、 [フィルタ種類] で [2 値化] を指定する必要があります。
GetWide(画像) | 列数を返します。


InspectEdge 関数

InspectEdge 関数 |
データアクセス | In-Sight 関数リファレンス

関数 | 説明
GetCaliperAngle(InspectEdge, キャリパインデックス) | インデックス付きキャリパの角度を返します。
GetCaliperCol(InspectEdge, キャリパインデックス) | インデックス付きキャリパの列座標を返します。
GetCaliperHigh(InspectEdge, キャリパインデックス) | インデックス付きキャリパの高さを返します。
GetCaliperRow(InspectEdge, キャリパインデックス) | インデックス付きキャリパの行座標を返します。
GetCaliperWide(InspectEdge, キャリパインデックス) | インデックス付きキャリパの幅を返します。
GetDefectExtremumCaliperIndex(InspectEdgeForDefect, 欠損インデックス, エッジペアインデックス, 最も近い点/最も遠い点) | 最適ラインから最も遠い点または最も近い点 (デフォルト = 0、0 = 最も近い、1 = 最も遠い) を含む指定された欠損内のキャリパインデックスを返します。
GetDefectFilterCount(InspectEdgeForDefect, エッジペアインデックス、右/左) | 結果のデータセットからフィルタされた欠損の数を返します。フィルタ方向 (デフォルト = 1)
GetDefectGapBoundsAngle(InspectEdgeForDefect/Width, 欠損/ギャップインデックス, 欠損/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形の角度を返します。
GetDefectGapBoundsCol(InspectEdgeForDefect/Width, 欠損/ギャップインデックス, 欠損/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形の列座標を返します。
GetDefectGapBoundsCurve(InspectEdgeForDefect/Width, 欠損/ギャップインデックス, 欠損/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形のカーブを返します。
GetDefectGapBoundsHigh(InspectEdgeForDefect/Width, 欠損/ギャップインデックス, 欠損/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形の高さを返します。
GetDefectGapBoundsRow(InspectEdgeForDefect/Width, 欠損/ギャップインデックス, 欠損/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形の行座標を返します。
GetDefectGapBoundsWide(InspectEdgeForDefect/Width, 欠損/ギャップインデックス, 欠損/ギャップ, エッジペアインデックス) | 欠陥に外接する矩形の幅を返します。
GetDefectGapCaliperIndex(InspectEdgeForDefect/Width, 欠損/ギャップインデックス, 欠損/ギャップ, エッジペアインデックス, 欠損の開始/終了) | 欠陥が始まるキャリパまたは終わるキャリパを返します (始まり = 0、終わり = 1)。
GetDefectGapCount(InspectEdgeForDefect, 欠損/ギャップ, サイズ/領域, エッジペアインデックス) | 指定された値に応じて、欠損/ギャップの数を返します (欠損 = 0、ギャップ = 1、サイズ = 0、領域 = 1)。
GetDefectGapExtremumValue(InspectEdgeForDefect/Width, 欠損/ギャップ/位置, エッジペアインデックス, 最大/最小, サイズ/領域/幅) | 一連の欠損またはギャップの最大サイズまたは最小サイズ、領域、もしくは幅値を返します (欠損 = 0、ギャップ = 1、および位置 = 2。最大 = 0 および最小 = 1。サイズ = 0、領域 = 1、幅 = 2)。
GetDefectGapValue(InspectEdgeForDefect/Width, 欠損/ギャップインデックス, 欠損/ギャップ/位置, エッジペアインデックス, サイズ/領域/幅) | 1 つのギャップのサイズ、領域、幅、あるいはすべてのギャップのサイズ、領域、または幅別の累計を返します (欠損 = 0、ギャップ = 1、および -1 = サイズ、領域、または幅別のすべてのギャップの合計。欠損 = 0、ギャップ = 1 、および位置 = 2。サイズ = 0、領域 = 1、幅 = 2)。
GetEdgeCol(InspectEdgeForDefect, キャリパインデックス, エッジペアインデックスまたはエッジインデックス) | 参照したエッジの列座標を返します。
GetEdgeContrast(検査, キャリパインデックス, エッジペアインデックス, エッジインデックス) | インデックス付きキャリパエッジのコントラスト値を返します。
GetEdgeCount(InspectEdgeForDefect, キャリパインデックス) | インデックス付きキャリパで検出されたエッジの数を返します。
GetEdgeFromCenter(InspectEdgeForDefect/Position, キャリパインデックス, エッジペアインデックス, エッジインデックス) | インデックス付きキャリパの指定されたエッジから ROI の中心までの距離を返します。
GetEdgeFromFit(InspectEdgeForDefect, キャリパインデックス, エッジペアインデックス) | 参照したキャリパのエッジから最適ラインまでの距離を返します。
GetEdgeFromRegion(InspectEdgeForDefect, キャリパインデックス, エッジインデックス, エッジペアインデックス, サーチ領域エッジ) | サーチ領域からインデックス付きキャリパのインデックス付きエッジまでの距離を返します。
GetEdgePairCol(InspectEdgeWidth, キャリパインデックス, エッジペアインデックス) | インデックス付きキャリパ内で指定されたエッジペアの列座標を返します。
GetEdgePairCount(InspectEdgeWidth, キャリパインデックス) | インデックス付きキャリパ内のエッジペアの数を返します。
GetEdgePairRow(InspectEdgeWidth, キャリパインデックス, エッジペアインデックス) | インデックス付きキャリパ内で指定されたエッジペアの行座標を返します。
GetEdgePairWidth(InspectEdgeWidth, キャリパインデックス, エッジペアインデックス) | インデックス付きキャリパ内で指定されたエッジペアの幅を返します。エッジペアインデックスに 0 を指定すると、インデックス付きキャリパ内で最も得点の高いエッジペアのみが返されます。
GetEdgePosCol(InspectEdgePosition, キャリパインデックス, エッジインデックス) | 指定したキャリパのエッジ位置の列座標を返します。
GetEdgePosContrast(InspectEdgePosition, キャリパインデックス, エッジインデックス) | インデックス付きキャリパの指定されたエッジのコントラストを返します。
GetEdgePosFromCenter(InspectEdgePosition, キャリパインデックス, エッジインデックス) | インデックス付きキャリパの指定されたエッジから ROI の中心までの距離を返します。
GetEdgePosFromFit(InspectEdgePosition, キャリパインデックス) | インデックス付きキャリパのエッジから最適ラインまでの距離を返します。
GetEdgePosFromRegion(InspectEdgePosition, キャリパインデックス, エッジインデックス, サーチ領域エッジ) | サーチ領域からインデックス付きキャリパのインデックス付きエッジまでの距離を返します。
GetEdgePosRow(InspectEdgePosition, キャリパインデックス, エッジインデックス) | 指定したキャリパのエッジ位置の行座標を返します。
GetEdgePosScore(InspectEdgePosition, キャリパインデックス, エッジインデックス) | インデックス付きキャリパの指定されたエッジの得点を返します。
GetEdgeRow(InspectEdgeForDefect, キャリパインデックス, エッジペアインデックスまたはエッジインデックス) | 参照したエッジの行座標を返します。
GetEdgeScore(検査, キャリパインデックス, エッジペアインデックス, エッジインデックス) | インデックス付きキャリパ内で検出された各エッジのエッジ得点を返します。
GetExtremePoints(InspectEdgeForDefect, エッジペアインデックス, 近い/遠い) | エッジが最適ラインから最も離れているキャリパのインデックスを返します (近い = 0、遠い = 1)。
GetExtremePosPoints(InspectEdgePosition, 近い/遠い) | 最適ラインから最も遠いエッジを含むキャリパのインデックスを返します (近い = 0、遠い = 1)。
GetExtremeWidth(InspectEdgeWidth, 最も薄い/最も厚い) | 指定した極端な幅を含むキャリパのインデックスを返します (最薄 = 0 および最厚 = 1)。
GetFitEdgeAngle(InspectEdgeForDefect, エッジペアインデックス) | インデックス付きキャリパ内で指定されたエッジペアの角度を返します。
GetFitEdgeCenterCol(InspectEdgeForDefect, 点インデックス) | 最適円の中心の列座標を返します。
GetFitEdgeCenterRow(InspectEdgeForIndex, 点インデックス) | 最適円の中心の行座標を返します。
GetFitEdgeCol(InspectEdgeForDefect, エッジペアインデックス, 点インデックス) | 指定した点の列座標を返します。
GetFitEdgePosAngle(InspectEdgePosition) | 1 つめの点から計算した最適ラインの角度を返します。
GetFitEdgePosCenterCol(InspectEdgePosition, 点インデックス) | 最適円の中心の列座標を返します。
GetFitEdgePosCenterRow(InspectEdgePosition, 点インデックス) | 最適円の中心の行座標を返します。
GetFitEdgePosCol(InspectEdgePosition, 点インデックス) | 最適直線の指定した点の列座標を返します。
GetFitEdgePosRadius(InspectEdgePosition, 点インデックス) | 最適円の中心からの距離を返します。
GetFitEdgePosRow(InspectEdgePosition, 点インデックス) | 最適直線の指定した点の行座標を返します。
GetFitEdgeRadius(InspectEdgeForDefect, エッジペアインデックス, 点インデックス) | 選択されたエッジペアに対する最適円の中心からの距離を返します。
GetFitEdgeRow(InspectEdgeForDefect, エッジペアインデックス, 点インデックス) | 指定した点の行座標を返します。
GetFitError(InspectEdgeForDefect/Position, エッジインデックス) | 最適ラインの精度を返します。
GetNumCalipers(InspectEdge) | 指定された InspectEdge 関数に含まれるキャリパの総数を返します。
GetNumCalipersUsed(InspectEdgeForDefect/Position, エッジペアインデックス) | 最適ラインまたは最適円の構築に使用されるキャリパの数を返します。GetNumCalipers 関数から返される値に対してここで返された値を使用し、最適ラインまたは最適円の構築に使用されるキャリパの割合 (%) を決定します。必要に応じて、[エッジペアの検査] パラメータを有効化した InspectEdgeForDefect 関数を参照する場合、[第 1 エッジ] に使用するキャリパの数を返すには、[エッジペアインデックス] に 0 を指定し、[第 2 エッジ] に使用するキャリパの数を返すには、[エッジペアインデックス] に 1 を指定します。
GetTotalCount(InspectEdge/ForDefect/Position/Width) | 参照された InspectEdge、InspectEdgeForDefect、InspectEdgePosition、または InspectEdgeWidth 関数に対する結果の総数を返します。
GetWidth(InspectEdgeWidth, キャリパインデックス) | インデックス付きキャリパ内のエッジの幅を返します。インデックス付きキャリパ内でエッジが検出されなかった場合は 0 を返します。
GetWidthAverage(InspectEdgeWidth) | 参照される InspectEdgeWidth 関数からの平均幅の値を返します。最小/最大値の範囲外にギャップまたは欠陥があるエッジペアについては、平均値の計算に幅の値は使用されません。
GetWidthCaliperCount(InspectEdgeWidth, なし/あり, 実数/割合) | 欠損を含む、または含まないキャリパの数または割合 (%) を返します (なし = 0 およびあり = 1、実数 = 0 および割合 = 1)。
GetWidthCaliperExtremum(InspectEdgeWidth, なし/あり, 最小/最大) | 欠損を含む、または含まないキャリパの最小ブロックまたは最大ブロックを返します (なし = 0 およびあり = 1、最小 = 0 および最大 = 1)。
GetWidthCount(InspectEdgeWidth, 欠損/ギャップ) | 指定した欠陥またはギャップの総数を返します (欠陥 = 0、ギャップ = 1)。
GetWidthStdDev(InspectEdgeWidth) | 参照される InspectEdgeWidth 関数からの幅値の標準偏差を返します。最小/最大値の範囲外にギャップまたは欠陥があるエッジペアについては、標準偏差の計算に幅の値は使用されません。
GetWidthThresholdCount(InspectEdgeWidth, 上/下, 実数/割合) | 幅しきい値を上回るか、または下回る欠損の数を返します (上回る = 0 および下回る = 1、実数 = 0 および割合 = 1)。
GetWidthThresholdExtremum(InspectEdgeWidth, 上/下, 最小/最大, サイズ/領域/幅) | 幅しきい値を上回るか、または下回る最小もしくは最大の欠損のサイズ、領域、または幅の値を返します (上回る = 0 および下回る = 1。最小 = 0 および最大 = 1。サイズ = 0、領域 = 1、および幅 = 2)。
GetWidthTotalCaliperSize(InspectEdgeWidth, なし/あり) | 欠損のある、またはないすべてのキャリパのサイズの累計を返します (なし = 0 およびあり =1)。
GetWidthTotalDefectSize(InspectEdgeWidth, 上/下) | 幅しきい値を上回る、または下回るすべての欠損のサイズの累計を返します (上回る = 0 および下回る = 1)。

注意:

次の関数はそれぞれ、最初のパラメータとして、データ構造体を参照します。構造体から何がインデックス付けされているかは、[インデックス] (ゼロから始まる) によって決まります。

InspectEdge 関数の式はすべて、以下の規則に準拠します。

  • InspectEdgeForDefect/Position/Width = 指定された関数によって出力された [image] データ構造体
  • キャリパインデックス = 0 ～ N (キャリパの総数は、InspectEdgeForDefect/Position/Width 関数が参照している InspectEdge 関数によって出力されるキャリパ数と同じです)
  • エッジペアインデックス = 0 ～ 1 (参照する最適ラインを決定します。0 = 1 つめの最適ライン、1 = 2 つめの最適ライン)
  • エッジインデックス = 0 ～ N
  • 点インデックス = 0 ～ 1


LineFit 関数

LineFit 関数 |
データアクセス | In-Sight 関数リファレンス

注意: 次の関数はそれぞれ、最初のパラメータとして、 [image] データ構造体を参照します。

関数 | 説明
GetChi2(LineFit) | 点から線への距離の二乗の合計を返します。
GetCol(LineFit, インデックス) | インデックスで示された点の Y 座標を返します。
GetDistance(LineFit, インデックス) | インデックス付きの点と線の間の距離を返します。
GetMaxDist(LineFit) | 線から最も遠い点を返します。
GetMaxDistIndex(LineFit) | 線から最も遠い点のインデックスを返します。
GetNPointsUsed(LineFit) | 線の計算に使用された点の数を返します。
GetRow(LineFit, インデックス) | インデックスで示された点の X 座標を返します。


関数

ラインスキャン関数

データアクセス

In-Sight 関数リファレンス

注意:　特に断りのない限り、次の各関数では、イベントを参照して強制的に値を更新する必要があります。

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] 　データ構造体
  • 関数を含むセル
  • Button 関数を含むセル
  • 数値を含むセル (ゼロ以外の数値は強制的に更新を実行します)。

関数 | 説明
GetImageBufferCount(画像) | 現在使用されているバッファの数を返します。
GetImageBufferOverrunCount(画像) | 画像バッファの不足のため、失われた画像取り込みの数を返します。このカウントは、センサがオンラインまたはオフラインに切り替わったとき、または LineScanStatReset 関数の実行時にリセットされます。
GetLineScanAcqEncoderSteps(画像) | 部分的に取り込まれた画像について、現在までに取り込んだステップ数 (ソフトウェアエンコーダの場合はマイクロ秒) を返します。画像取り込みを実行していない場合は 0 を返します。この統計情報は、システムが低速の場合に、ハードウェアエンコーダを設定する際に最も有効です。
GetLineScanAcqLineCount(画像) | 部分的に取り込まれた画像について、現在までに取り込んだライン数を返します。画像取り込みを実行していない場合は 0 を返します。この統計情報は、システムが低速なためにハードウェアエンコーダを設定する際に最も有効です。
GetLineScanAcqStepsPerSec(画像) | 最後の画像取り込み周期での 1 秒あたりの平均ステップ数を返します。ソフトウェアエンコーダの場合は、常に 1000000.0 を返します。
GetLineScanAcqTime(画像) | 最後の画像取り込みに要した時間をミリ秒単位で返します。この時間は、トリガ信号の開始から最終行の終わりまでとして計測されます。
GetLineScanAcqTimeoutCount(画像) | エンコーダが画像取り込み時のタイムアウトによって画像取り込みを中断した回数を返します。このカウントは、センサがオンラインまたはオフラインに切り替わったとき、または LineScanStatReset 関数の実行時にリセットされます。
GetLineScanEncoderSteps(画像) | 最後にオンラインまたはオフラインに切り替わってからの、または最後に LineScanStatReset 関数を実行してからの、ステップ数 (ソフトウェアエンコーダの場合はマイクロ秒) を返します。この値は、約 40 億ステップを超えるとリセットされます。
GetLineScanExposureConflict(画像) | 現在の [ライン間隔] の値と [露光時間] の値との間に不整合がある場合は 1 を返し、それ以外の場合は 0 を返します。これは、ソフトウェアエンコーダのみに適用され、ハードウェアエンコーダでは常に 0 が返されます。この関数が 1 を返した場合、ラインのオーバランが発生している可能性があります。
GetLineScanFillLines(画像) | 画像内の黒で埋めたライン (ラインオーバランによってクリッピングされたか失われたライン) の数を返します。 注意: GetLineScanFillLines は、セル A0 の AcquireImage 関数を参照している必要があります。
GetLineScanLineCount(画像) | 取り込んだラインの数を返します。このカウントは、センサがオンラインまたはオフラインに切り替わったとき、または LineScanStatReset 関数の実行時にリセットされます。
GetLineScanLineOverrunCount(画像) | エンコーダレートが大きすぎたために失われたラインの数を返します。このカウントは、センサがオンラインまたはオフラインに切り替わったとき、または LineScanStatReset 関数の実行時にリセットされます。
GetLineScanMinLinePeriod(画像) | 2 つのライン間に許可される最短時間 (マイクロ秒) を返します。
LineScanStatReset(画像) | ラインスキャンの累積統計情報をリセットします。これは、オンラインイベントまたはオフラインイベントの発生時に、自動的に実行されます。


OCRMax 関数

データアクセス

In-Sight 関数リファレンス

注意:　特に明記されていない限り、次の関数はそれぞれ、最初のパラメータとして、 [image] データ構造体を参照します。Char_Index (ゼロから始まる) は、構造体からインデックスされている文字を決定します。

関数 | 説明
GetAngle(文字領域) | 文字矩形の角度を返します。
GetAngle(OCRMax, 文字インデックス) | 文字領域の角度を返します。
GetChar(OCRMax, Char_Index0, [文字インデックス 1]) | インデックス付き文字を返します。オプションの Char_Index1 パラメータが 1 の場合は、2 番目に高い得点の文字を返します。
GetCharConfused(OCRMax, 文字インデックス *) * オプション | オプションの Char_Index が指定されている場合は、インデックス付き文字のコンフュージョン状態 (曖昧な場合は 1.0、そうでない場合は 0.0) を返します。Char_Index が指定されていない場合は、文字列内のいずれかの文字がコンフュージョン状態である場合に 1.0、そうでない場合に 0.0 を返します。
GetCharFailedValidation(OCRMax, 文字インデックス *) * オプション | オプションの Char_Index が指定されている場合は、インデックス付き文字の検証状態 (検証に失敗した場合は 1.0、そうでない場合は 0.0) を返します。Char_Index が指定されていない場合は、文字列内のいずれかの文字が検証に失敗した場合に 1.0、そうでない場合に 0.0 を返します。
GetCharMisMatch(OCRMax, 文字インデックス*) * オプション | オプションの Char_Index が指定されている場合は、文字の不一致状態 (不一致とみなされた場合は 1.0、そうでない場合は 0.0) を返します。Char_Index が指定されていない場合は、文字列内のいずれかの文字が不一致の場合に 1.0、そうでない場合に 0.0 を返します。
GetCharacterRegion(OCRMax, 文字インデックス, 表示) | インデックス付き文字の [image] データ構造体を返します。返される領域は、次の図に示すように、文字を完全に囲む可能な限り最小の矩形領域です。参照されている文字が (次の図に示す文字のように) 傾いていない場合、表示される文字領域と文字矩形は同一になります。
GetCharsTrained(OCRMax) | 登録されている文字をテキスト文字列として返します。
GetCol(文字領域) | 文字矩形の左上隅を返します。
GetCol(OCRMax, 文字インデックス, コーナーインデックス) | 表示される文字領域の指定された隅の列座標を返します。 注意: 文字が傾いていない場合は、文字矩形と表示される文字領域は同一となります。
GetFontName(OCRMax) | 参照されている OCRMax 関数からフォントの名前を返します。
GetHigh(文字領域) | 文字矩形の高さを返します。 注意: 文字矩形の高さと文字領域の高さは同一です。
GetHigh(OCRMax, 文字インデックス) | 文字領域の高さを返します。 注意: 文字矩形の高さと文字領域の高さは同一です。
GetIgnoredCharacters(OCRMax) | フィールドの形式化中に無視された、セグメンテーションされた文字の数を返します。
GetNumCharTrainedInstances(OCRMax, 文字) | 文字の登録インスタンスの数を返します (例: "a"、"B"、"1")。
GetPassed(OCRMax, 文字インデックス) | インデックス付き文字の合格/不合格ステータスを返します。[インデックス] パラメータが指定されていない場合は、文字列全体の合格/不合格ステータスを返します。文字列のすべての文字が合格の場合にのみ、文字列全体が合格になります。
GetScore(OCRMax, 文字インデックス 0, [文字インデックス 1]) | インデックス付き文字の一致得点 (0 ～ 100) を返します。オプションの [インデックス 1] パラメータが 1 の場合は、2 番目に高い得点の文字の得点を返します。
GetRow(文字領域) | 文字矩形の左上隅を返します。
GetRow(OCRMax, 文字インデックス, コーナーインデックス) | 文字領域の指定された隅の行座標を返します。
GetSize(OCRMax, 文字インデックス) | インデックス付き文字のサイズをピクセル単位で返します。
GetString(OCRMax) | 参照されている OCRMax 関数によって読み取られたテキスト文字列を返します。
GetWide(文字領域) | 文字矩形の幅を返します。 注意: スキューが存在する場合、幅は文字領域の幅にスキューを補正するために必要な幅を加えた大きさになります。
GetWide(OCRMax, 文字インデックス) | 文字領域の幅を返します。


パターン関数

パターン関数 |
データアクセス | In-Sight 関数リファレンス

注意:　次の関数はそれぞれ、最初のパラメータとして、 [image] データ構造体を参照します。インデックス (ゼロから始まる) は、構造体からインデックスされているパターンを決定します。

関数

説明

GetAngle(パターン, [インデックス])

角度の値を返します。

GetClutter(パターン, [インデックス])

登録パターンの一部ではない特徴 クラッタの得点を返します。

GetCol(パターン, [インデックス])

列の値を返します。

GetContrast(パターン, [インデックス])

前景と背景のコントラスト (グレースケール階調で、0～255) を返します。

GetCoverage(パターン, [インデックス])

カバレッジのパーセンテージを返します。

GetErrorCode(パターン, [インデックス])

パターンに対するエラーコードを返します。

Closed エラーコードとそれに対応する情報文字列

エラーコード | 対応する情報文字列
00000008 | 操作のタイムアウト時間を超過しました。

GetFitError(パターン, [インデックス])

一致誤差の得点を返します。

GetGrainCoarse(パターン)

粗粒度値を返します。

GetGrainFine(パターン)

微粒度値を返します。

GetInfoCode(パターン, [インデックス])

参照されている TrainPatMaxPattern または FindPatMaxPatterns 関数から、情報文字列に対する診断コードを返します。

Closed 診断コードとそれに対応する情報文字列

注意:　情報文字列は、GetInfoString 関数によりスプレッドシートに挿入されます。

TrainPatMaxPattern 関数

診断コード | 対応する情報文字列
07010000 | パターンに含まれるマッチ特徴が少なすぎることがあります。
07010001 | 特徴の粒度を自動的に設定するのは困難です。
07010100 | 手動で [粒度] を設定してください。登録画像の表示がぼやけているので、パターンが予想より正確でないことがあります。
07010102 | 疎粒度の特徴が同じ方向であるために、パターン結果が不安定になることがあります。
07010200 | 高精度な特徴が多いため、実行時間が長くなることがあります。手動で [粒度] を設定してください。
07010101 | パターンに含まれる情報が不十分なため、角度またはスケールを正確に測定できないことがあります。
07030000 | エラー情報はありません。

FindPatMaxPatterns 関数

診断コード | 対応する情報文字列
07020300 | [値] 低コントラストのために破棄された結果。
07020301 | [値] より正確な結果を得るために破棄された結果。
07020302 | [値] クラッタが多すぎるために破棄された結果。
07020303 | 現在のパラメータ設定に対して、登録パターンに含まれる特徴が少なすぎます。

GetInfoString(パターン, [インデックス])

参照されている TrainPatMaxPattern または FindPatMaxPatterns 関数に対する情報文字列を返します。

GetNFound(パターン)

検出されたパターン一致の数を返します。

GetOutsideArea(パターン, [インデックス])

サーチ領域外で検出された一致パターンの領域の割合 (0 から 1 の段階で、0 はすべて内部、1 はすべて外部での検出) を返します。

GetOutsideFeatures(パターン, [インデックス])

サーチ領域外で検出された一致パターンの特徴の割合 (0 から 1 の段階で、0 はすべて内部、1 はすべて外部での検出) を返します。

GetRow(パターン, [インデックス])

行の値を返します。

GetScale(パターン, [インデックス])

登録パターンと比較した一致のサイズ (%) を返します。

GetScaleX(パターン, [インデックス])

登録パターンと比較した X 方向の一致のサイズ (%) を返します。

GetScaleY(パターン, [インデックス])

登録パターンと比較した Y 方向の一致のサイズ (%) を返します。

GetScore(パターン, [インデックス])

パターンのレスポンス得点の値を返します。

GetTrained(パターン)

TrainPatMaxPattern 関数または FindPatterns 関数によって返された [image] 構造体のパターンが認識された場合は 1 を返し、パターンが認識できなかった場合は 0 を返します。


構造体関数

構造体関数 |
データアクセス | In-Sight 関数リファレンス

注意: 次の関数の構造体引数は、Annulus 関数、Circle 関数、Cross 関数、Fixture 関数、Line 関数、Point 関数、または Region 関数で返されたデータ構造体を参照する必要があります。各関数で有効な構造体については、説明の中で指示します。

関数 | 説明
GetAngle(構造体, インデックス) | インデックス付き [image] 、 [image] 、または [image] データ構造体から角度の値を返します。
GetCol(構造体, インデックス1, インデックス2) | インデックス付き [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、または [image] 構造体から列の値を返します。
GetCurve(構造体) | インデックス付き [image] 構造体のカーブの値を返します。
GetHigh(構造体) | インデックス付き [image] または [image] 構造体の高さを返します。
GetRadius(構造体, インデックス) | インデックス付き [image] または [image] 構造体の半径を返します。
GetRow(構造体, インデックス1, インデックス2) | インデックス付き [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、または [image] 構造体から列の値を返します。
GetWide(構造体) | インデックス付き [image] または [image] 構造体の半径を返します。


テキスト (文字照合/認識) 関数

データアクセス

In-Sight 関数リファレンス

注意:
  • レガシー関数である ReadText、TrainFont および VerifyText 関数の代わりに、OCRMax 関数を使用することを推奨します。OCRMax 関数には拡張性能機能が搭載されています。
  • 特に明記されていない限り、次の関数はそれぞれ、最初のパラメータとして、 [image] データ構造体を参照します。インデックス (ゼロから始まる) は、構造体からインデックスされている OCV/OCR 文字を決定します。

関数

説明

GetAngle(テキスト)

テキスト文字列と [image] データ構造体の水平軸の間の角度を返します。GetAngle 関数は、[インデックス] パラメータを無視します。

GetChar(テキスト, インデックス0, [インデックス　1])

インデックス付き文字を返します。オプションの [インデックス 1] パラメータが 1 の場合は、2 番目に高い得点の文字を返します。オプションの　[インデックス 1] パラメータが 1 の場合は、2 番目に高い得点の文字を返します。VerifyText 関数では、2 つの文字の一致得点の差が 10% 未満の場合にのみ、2 番目の得点の文字を返します。

GetCol(テキスト, インデックス)

インデックス付き文字の列座標をピクセル単位で返します。

GetContrast(テキスト, インデックス)

インデックス付き文字の前景と背景のコントラスト (グレースケール階調で、0～255) を返します。インデックス付き文字が指定されていない場合は、文字列の最初の文字のコントラストを返します。

GetErrorCode(テキスト, インデックス)

各情報文字列に対する診断コードを返します。

Closed 診断コードとそれに対応する情報文字列

注意:　エラー文字列は、GetErrorString 関数によってスプレッドシートに挿入されます。

コード | 対応する文字列
00000011 | 無効な画像セル参照です。
00400000 | 無効なフォントセル参照です。
00400002 | 照合文字列の長さは 32 文字以内でなければなりません。
00400003 | 照合文字列が入力されていません。
00400004 | 照合文字列に登録されていない文字が含まれています。

GetErrorString(テキスト, インデックス)

エラー文字列を返します。

Closed エラー文字列

注意:　エラーコードは、GetErrorString 関数によってスプレッドシートに挿入されます。

コード | 対応する文字列
00000011 | 無効な画像セル参照です。
00400000 | 無効なフォントセル参照です。
00400002 | 照合文字列の長さは 32 文字以内でなければなりません。
00400003 | 照合文字列が入力されていません。
00400004 | 照合文字列に登録されていない文字が含まれています。

GetHigh(テキスト, インデックス)

インデックス付き文字の高さをピクセル単位で返します。

GetPassed(テキスト, インデックス)

インデックス付き文字の合格/不合格ステータスを返します。[インデックス] パラメータが指定されていない場合は、文字列全体の合格/不合格ステータスを返します。文字列のすべての文字が合格の場合にのみ、文字列全体が合格になります。

GetRow(テキスト, インデックス)

インデックス付き文字の行座標をピクセル単位で返します。

GetScore(テキスト, インデックス　0, [インデックス　1])

インデックス付き文字の一致得点 (0 ～ 100) を返します。オプションの [インデックス　1] パラメータが 1 の場合は、2 番目に高い得点の文字の得点を返します。VerifyText 関数では、2 つの文字の一致得点の差が 10% 未満の場合にのみ、2 番目に高い得点の文字を返します。

GetString(テキスト)

テキスト文字列を返します。

GetWide(テキスト, インデックス)

インデックス付き文字の幅をピクセル単位で返します。


時間・タイマ関数

データアクセス

In-Sight 関数リファレンス

注意:　値はすべて、参照された関数またはセルから返されます。

関数

説明

GetAllTime(画像)

画像の取り込みおよびジョブの実行に必要な時間をミリ秒単位で返します。入力値が無効であった場合は、#ERR が返されます。

注意:

  • このパラメータはセル A0、つまり AcquireImage 関数により返される [image] データ構造体を含むセルを参照している必要があります。
  • 返される GetAllTime 値には、センサフィルムストリップの実行時間は含まれません。

  • GetAllTime 関数とステータスバーは、時間の計算方法が [ジョブのプロファイル] ダイアログ とは異なります。[ジョブのプロファイル] ダイアログでも結果グラフィックスの生成は考慮されます。

GetElapsedTime(画像)

2 回の連続した画像取り込みの間隔をミリ秒単位で返します。入力値が無効であった場合は、#ERR が返されます。

注意:　このパラメータはセル A0、つまり AcquireImage 関数により返される [image] データ構造体を含むセルを参照している必要があります。

GetExposureTimestamp(画像)

露光タイムスタンプを送信するために使用できる [image] データ構造体を返します (画像取り込みがトリガされ、In-Sight ビジョンシステムが露光を開始した日時の記録)。

注意:

  • このパラメータはセル A0、つまり AcquireImage 関数により返される [image] データ構造体を含むセルを参照している必要があります。
  • タイムスタンプ値はすべての In-Sight ビジョンシステムでサポートされ、実際の露光時間に対して 200 マイクロ秒単位の精度です。

GetSystemTimeOffset(時刻)

データ構造体から抽出されたシステム時刻のオフセット値を返します。システム時刻のオフセットは、PTP が有効な場合のみ有効です。

GetTime(セル 1, [セル 2, ...])

可変長リストまたはセルの実行に必要な時間をミリ秒単位で返します。入力値が無効であった場合は、#ERR が返されます。複数のセルを選択した場合、実行時間の合計が返されます。

GetTimeValue(時刻)

データ構造体を時刻値に変換します。


カラーデータアクセス関数

In-Sight 関数リファレンス

カラーデータアクセス (VDA) 関数は、次のカテゴリに分けられるデータ構造体、関数、およびそのほかのセル参照から個々の値を抽出します。

VDA カテゴリ | 参照される構造体および関数
カラー関数 | ,
カラーヒストグラム関数 |
ホワイトバランス関数 | Event


カラー関数

カラー関数 |
カラーデータアクセス | In-Sight 関数リファレンス

注意: 次の各関数は、最初のパラメータが色データ構造体を含むセルを参照します。各構造体には、それを生成したカラーツールに応じて名前が付けられます。TrainExtractColor 関数は [image] データ構造体を生成し、TrainMatchColor 関数は [image] データ構造体を、ExtractColor 関数と MatchColor 関数は [image] データ構造体を生成します。GetColorLibraryName 関数を使用すると、どのツールがそのデータ構造体を生成したかがわかります。

関数 | 説明
GetActiveExtClrModelName(カラー, インデックス) | ExtractColor 関数に対して、インデックスで指定したアクティブなカラーモデルの名前を返します。
GetActiveMatchClrColorName(カラー, インデックス) | MatchColor 関数に対して、インデックスで指定したアクティブなカラーの名前を返します。
GetBlue(カラー) | MatchColor 関数に対して、対象領域 (ROI) 内の平均のカラーの青成分を返します。
GetColorLibraryName(カラー構造体) | TrainExtractColor、TrainMatchColor、ExtractColor、および MatchColor と組み合わせて使用します。TrainExtractColor 関数と TrainMatchColor 関数の場合、関数によって取得されたカラーライブラリの名前を返します。ExtractColor 関数と MatchColor 関数の場合、参照された登録関数 (それぞれ、TrainExtractColor と TrainMatchColor) の名前を返します。
GetConfidenceScore(カラー) | MatchColor 関数の現在の検査の信頼性得点を返します。信頼性得点は、( s1 × (M - s2) - s2 × (M - s1)) / ( (M - s2) + (M - s1)) で、s1 は最高得点、s2 は 2 番目に高い得点、M は 1.01 の定数です。信頼性得点が高いほど、適切な一致が選択されている可能性が高くなります。
GetExtClrColorModelState(カラー, カラーモデル名) | ExtractColor 関数に対して、指定されたカラーモデルの状態を返します。
GetExtClrModelByRank(カラー, ランク) | ExtractColor 関数に対して、カラーモデル内で指定したピクセル数ランクにあるインデックスを返します。ランク 0 が最高で、ランク n-1 が最低です。
GetGreen(カラー) | MatchColor 関数に対して、ROI 内の平均のカラーの緑成分を返します。
GetHue(カラー) | MatchColor 関数に対して、ROI 内の平均のカラーの色相成分を返します。
GetIntensity(カラー) | MatchColor 関数に対して、ROI 内の平均のカラーの明度成分を返します。
GetMatchClrColorByRank(カラー, ランク) | MatchColor 関数に対して、ランク (0 ～ n-1) に一致するカラーのインデックスを返します。ランク 0 のカラーが最高得点となります。
GetMatchClrColorState(カラー, カラー名) | MatchColor 関数に対して、指定されたカラーの状態を返します。
GetMatchClrDistByIndex(カラー, インデックス) | MatchColor 関数に対して、インデックスで指定したカラーの色の距離を返します。
GetMatchClrDistByName(カラー, 名前) | MatchColor 関数に対して、名前で指定したカラーの色の距離を返します。
GetMatchClrScoreByIndex(カラー, インデックス) | MatchColor 関数に対して、インデックスで指定したカラーの得点を返します。
GetMatchClrScoreByName(カラー, 名前) | MatchColor 関数に対して、名前で指定したカラーの得点を返します。
GetNActiveExtClrModels(カラー) | 参照されている ExtractColor 関数内で、アクティブで参照されているカラーモデルの数を返します。
GetNActiveMatchClrColors(カラーライブラリ) | 参照されている MatchColor 関数内で、アクティブで参照されているカラーの数を返します。
GetNTrainExtClrModels(ExtractColor ライブラリ) | TrainExtractColor 関数によって取得されたカラーモデルの数を返します。
GetNTrainMatchClrColors(カラーライブラリ) | TrainMatchColor 関数によって取得されたカラーの数を返します。
GetOverallPixelCount(カラー) | ExtractColor 関数に対して、すべてのアクティブなカラーモデルを合わせたピクセル数を返します。
GetPixelCountByIndex(カラー, インデックス) | ExtractColor 関数で、インデックスで指定したカラーモデルのピクセル数を返します。
GetPixelCountByName(カラー, 名前) | ExtractColor 関数に対して、名前で指定したカラーモデルのピクセル数を返します。
GetRed(カラー) | MatchColor 関数に対して、ROI 内の平均のカラーの赤成分を返します。
GetSaturation(カラー) | MatchColor 関数に対して、ROI 内の平均のカラーの彩度成分を返します。
GetTrainExtClrModelName(ExtractColor ライブラリ, インデックス) | ExtractColor 関数に対して、インデックスで指定したカラーモデルの名前を返します。
GetTrainMatchClrColorName(カラーライブラリ, インデックス) | MatchColor 関数に対して、インデックスで指定した格納されているカラーの名前を返します。
SetExtClrColorModelState(カラー, 有効, カラーモデル名 1, [カラーモデル名 2,...]) | ExtractColor 関数に対して、有効化または無効化されているカラーモデルの数を返します。初めてスプレッドシートに挿入したとき、この関数のセル状態は無効化されています。この状態は Button 関数によって条件付きで有効化されます。
SetMatchClrColorState(カラー, 有効, カラー名 1, [カラー名 2,...]) | MatchColor 関数に対して、有効化または無効化されているカラーの数を返します。初めてスプレッドシートに挿入したとき、この関数のセル状態は無効化されています。この状態は Button 関数によって条件付きで有効化されます。


カラーヒストグラム関数

カラーヒストグラム関数 |
カラーデータアクセス | In-Sight 関数リファレンス

関数

説明

GetValue(構造体, インデックス, [カラー])

データ構造体の指定したカラーのインデックス付きビン (0 ～ 255) に含まれている値を返します。

カラーは、ヒストグラムデータを読み出す色成分を決定するオプションのパラメータです。指定しないと、このパラメータはデフォルト値 0 (赤含むになります。

0 = 赤 | 構造体からの赤成分を選択します。
1 = 緑 | 構造体からの緑成分を選択します。
2 = 青 | 構造体からの青成分を選択します。
3 = 色相 | 構造体からの色相成分を選択します。
4 = 彩度 | 構造体からの彩度成分を選択します。
5 = 明度 | 構造体からの明度成分を選択します。


関数

ホワイトバランス関数

カラーデータアクセス

In-Sight 関数リファレンス

注意: 次の各関数では、イベントを参照して強制的に値を更新する必要があります。

イベント

指定した値を読み取るイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含むセル A0 の [image] データ構造体
  • 関数を含むセル
  • Button 関数を含むセル
  • 数値を含むセル (ゼロ以外の数値は強制的に更新を実行します)。

関数 | 説明
GetBlueWhiteBalance(イベント) | 青成分について、現在のホワイトバランスオフセット係数 (0 ～ 255) を返します。
GetGreenWhiteBalance(イベント) | 緑成分について、現在のホワイトバランスオフセット係数 (0 ～ 255) を返します。
GetRedWhiteBalance(イベント) | 赤成分について、現在のホワイトバランスオフセット係数 (0 ～ 255) を返します。
SetBlueWhiteBalance(イベント) | 青成分について、ホワイトバランスオフセット係数の値 (0 ～ 255) を指定します。
SetGreenWhiteBalance(イベント) | 緑成分について、ホワイトバランスオフセット係数の値 (0 ～ 255) を指定します。
SetRedWhiteBalance(イベント) | 赤成分について、ホワイトバランスオフセット係数の値 (0 ～ 255) を指定します。


構造体関数

In-Sight 関数リファレンス

構造体関数はスプレッドシートのセルに含まれている値を組み合わせて、ほかの関数の入力パラメータによって簡単に参照することができるグラフィックス、フィクスチャ、マスク、および領域を作成します。構造体の位置と形状の調整は、対話型グラフィックスモードとプロパティシートを使用することにより容易になります。構造体関数には次の関数があります。

  • Annulus 関数
  • Circle 関数
  • Cross 関数
  • Fixture 関数
  • Line 関数
  • Mask 関数
  • Point 関数
  • Region 関数


ドーナツ領域

Annulus 関数 |
構造体関数 | In-Sight 関数リファレンス

フィクスチャされた Annulus 構造体を作成します。

Annulus 関数(

フィクスチャ.行,

フィクスチャ.列,

フィクスチャ.角度,

ドーナツ領域.X,

ドーナツ領域.Y,

ドーナツ領域.内側半径,

ドーナツ領域.外側半径,

表示

)

Annulus 関数の入力パラメータ

フィクスチャ

ドーナツ領域を定義する画像座標系を指定します。

行 | 行オフセット
列 | 列オフセット
角度 | 角度

ドーナツ領域

ドーナツ領域のサイズおよび位置を指定します。

X | フィクスチャ座標での X オフセット
Y | フィクスチャ座標での Y オフセット
内側半径 | 内側の半径
外側半径 | 外側の半径

注意: フィクスチャおよびドーナツ領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

表示

画像上の Annulus グラフィックスオーバレイの表示モードを指定します。

0 = 非表示 | Annulus 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、Annulus 構造体のグラフィックスは表示されません。
2 = 入力のグラフィックスのみ | Annulus 構造体のグラフィックスが常に表示されます。

Annulus 関数の結果出力

戻り値 | データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | Annulus 関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

Annulus 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(ドーナツ領域) | 画像座標でのドーナツ領域の中心の行オフセット
列 | GetCol(ドーナツ領域) | 画像座標でのドーナツ領域の中心の列オフセット
内側半径 | GetRadius(ドーナツ領域, 0) | インデックス付きドーナツ領域の内側半径
外側半径 | GetRadius(ドーナツ領域, 1) | インデックス付きドーナツ領域の外側半径


Circle 関数

構造体関数

In-Sight 関数リファレンス

フィクスチャされた Circle 構造体を作成します。

Circle 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

円.X ,

円.Y ,

円.半径 ,

表示

)

Circle 関数の入力パラメータ

フィクスチャ

円を定義する画像座標系を指定します。

行 | 行オフセット
列 | 列オフセット
角度 | 角度

円

フィクスチャ座標での円のサイズと位置を指定します。

X | フィクスチャ座標での円の X オフセット
Y | フィクスチャ座標での円の Y オフセット
半径 | 円の半径

注意: フィクスチャおよび円パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

表示

画像上のサークルグラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | Circle 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、Circle 構造体は表示されません。
2 = 入力のグラフィックスのみ | Circle 構造体が常に表示されます。

Circle 関数の結果出力

戻り値 | データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | Circle 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

Circle 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(円) | 画像座標での円の中心の行オフセット
列 | GetCol(円) | 画像座標での円の中心の列オフセット
半径 | GetRadius(円) | 円の半径

関連項目

対話型グラフィックスモード

プロパティシート


Cross 関数

構造体関数

In-Sight 関数リファレンス

フィクスチャされた十字構造体を作成します。

Cross 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

十字.X ,

十字.Y ,

十字.角度 ,

十字.高さ ,

十字.幅 ,

表示

)

Cross 関数の入力パラメータ

フィクスチャ

十字マークを定義する画像座標系を指定します。

行 | 行オフセット
列 | 列オフセット
角度 | 角度

十字

フィクスチャ座標での十字のサイズと位置を指定します。

X | 十字マークの X オフセット
Y | 十字マークの Y オフセット
角度 | 十字マークの角度
高さ | 十字マークの X 軸の寸法
幅 | 十字マークの Y 軸の寸法

注意: フィクスチャおよび十字パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

表示

画像上の十字グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | Cross 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、十字構造体は表示されません。
2 = 入力のグラフィックスのみ | 十字マークが常に表示されます。

Cross 関数の結果出力

戻り値 | データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | Cross 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

Cross 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(十字) | 画像座標での十字マークの中心の行オフセットを返します。
列 | GetCol(十字) | 画像座標での十字マークの中心の列オフセットを返します。
角度 | GetAngle(十字) | 十字マークの角度を返します。
高さ | GetHigh(十字) | X 軸の寸法を返します。
幅 | GetWide(十字) | Y 軸の寸法を返します。

関連項目

対話型グラフィックスモード

プロパティシート


Fixture 関数

構造体関数

In-Sight 関数リファレンス

Fixture 構造体を作成します。

Fixture 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

表示

)

Fixture 関数の入力パラメータ

フィクスチャ

フィクスチャを定義する画像座標系を指定します。

行 | 行オフセット
列 | 列オフセット
角度 | 角度

表示

画像上のフィクスチャポイントのグラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | Fixture 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、フィクスチャポイントグラフィックスは表示されません。
2 = 入力のグラフィックスのみ | フィクスチャポイントグラフィックスが常に表示されます。

Fixture 関数の結果出力

戻り値 | データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | この関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

Fixture 関数のデータアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(フィクスチャ) | 画像座標でのフィクスチャの行オフセットを返します。
列 | GetCol(フィクスチャ) | 画像座標でのフィクスチャの列オフセットを返します。
角度 | GetAngle(フィクスチャ) | 画像座標での角度を返します。

関連項目

対話型グラフィックスモード

プロパティシート


Line 関数

構造体関数

In-Sight 関数リファレンス

フィクスチャされたライン構造体を作成します。

Line 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

線.X 0 ,

線.Y 0 ,

線.X 1 ,

線.Y 1 ,

表示

)

Line 関数の入力パラメータ

フィクスチャ

ラインを定義する画像座標系を指定します。

行 | 行オフセット
列 | 列オフセット
角度 | 角度

線

線の端点を指定します。

X 0 | 始点の X オフセット
Y 0 | 始点の Y オフセット
X 1 | 終点の X オフセット
Y 1 | 終点の Y オフセット

注意: フィクスチャおよび線パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

表示

画像上のライングラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | Line 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、ライン構造体は表示されません。
2 = 入力のグラフィックスのみ | ライン構造体が常に表示されます。

Line 関数の結果出力

戻り値 | データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | Line 関数が初めてセルに挿入されると、スプレッドシート内に結果テーブルが自動的に作成されます。

Line データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 0 | GetRow(線, 0) | 画像座標での始点の行オフセット
列 0 | GetCol(線, 0) | 画像座標での始点の列オフセット
行 1 | GetRow(線, 1) | 画像座標での終点の行オフセット
列 1 | GetCol(線, 1) | 画像座標での終点の列オフセット

関連項目

対話型グラフィックスモード

プロパティシート


Mask 関数

構造体関数

In-Sight 関数リファレンス

Mask 関数を使用して不規則な形状の 2 値化画像マスクを作成します。このマスクを使用して画像内の特定の領域をハイライトし (値 255 が割り当てられた「対象ピクセル」)、ほかの領域を検査対象から除外します (値 0 が割り当てられた「対象外ピクセル」)。この関数は SurfaceFlaw 関数の入力として使用することも、Flaw Detection 関数の FlexFlawModel 関数で Flex を適用することもできます。

  • Mask 関数の概要
  • Mask 関数の入力パラメータ
  • Mask 関数の結果出力
  • 関連項目

概要

画像マスクを使用して特定の特徴を検査対象から除去し、そのほかの領域をハイライトします。マスクは 2 ステップからなる内部処理で作成されます。最初のステップではエッジ検出とセグメンテーションを実行します。この間に入力画像は [平滑化係数] パラメータ設定に基づいて平滑化されます。平滑化された画像を使用すると、エッジ強調画像が内部で作成されます。

注意: カラー画像のエッジ強調画像は 3 色すべてのチャネル (赤、緑、青) を基に計算されます。

次に、ブロブ解析を使用して、画像をエッジ変化に基づきセグメンテーションします。これはエッジ強調画像で実行されます。このとき、暗いブロブはセグメントに抽出され、インデックスおよびラベルが付けられます。[マスク生成] パラメータの [穴塗りつぶし最大サイズ]、[カーネルサイズ中央値] および [収縮マスク数] は、画像マスクの穴の塗りつぶし、境界の平滑化、狭いストリップの削除にそれぞれ使用することができます。[カーネルサイズ中央値] パラメータはエッジの平滑化およびストリップの削除に使用すると特に有効です。

この処理の 2 つ目のステップでは、画像マスクの生成に使用されるエッジまたはセグメントを選択します。デフォルトではエッジを使用して ([マスク方法] パラメータはデフォルトで [エッジマスク] に設定されます)、エッジ強調に基づいた画像マスクが生成されます。この画像マスクでは、エッジピクセルのみがマスクされ、そのほかのピクセルはすべて表示されます。このタイプのマスクは、ラベル、テキストまたはロゴを除外する場合に使用すると有用です。

また、[マスク方法] パラメータを [最大セグメント] または [選択したセグメント] のいずれかに設定してセグメントを使用することもできます。背景に 0、次に大きいセグメントに 1 のインデックスが付き、残りのセグメントはそれぞれのサイズに基づいてソートされます (画像内で色分けされ、インデックスが付けられます)。このタイプのマスクは、背景や画像内の大きな領域を遮断する場合に使用すると有用です。

関数を設定する場合は、[表示画像] パラメータを使用してセグメントを表示することができます。セグメントには数値のインデックスが付き、色分けされて表示されます (黒ピクセルはセグメントの一部ではなく、白ピクセルは最大セグメントの一部です)。

マスクが適切に設定されると、登録され、このマスクがモデルとして内部で保持されます。関数のプロパティシートが開いている間にいずれかのパラメータが変更されると、マスクは新しいパラメータ設定に再登録されます。

注意:
  • マスクの対象範囲が画像から画像への動きを有する場合、マスクに [フィクスチャ] があることを確認してください。
  • パラメータの外部コントロールを許可するために、[マスク方法]、[平滑化係数]、[最小エッジコントラスト]、[最小セグメント面積]、[穴塗りつぶし最大サイズ]、[収縮マスク数]、[反転]、[カーネルサイズ中央値] および [セグメント] のいずれかのパラメータが絶対参照としてスプレッドシートに入力されている場合、パラメータが変更されると、自動的にマスクモデルが再登録されます。
  • パラメータの外部コントロールを許可するために [領域] パラメータが絶対参照としてスプレッドシートに入力されている場合、パラメータが変更されたときは、[マスクを登録] ボタンを押してマスクモデルを再登録してください。関数のプロパティシートが開いている間に [領域] パラメータが変更されると、マスクモデルは自動的に再登録されます。

Mask 関数関数の入力パラメータ

Mask 関数 (

画像 ,

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

領域.カーブ ,

スケール,

外部定義領域,

傷モデル参照 ,

セグメント化.平滑化係数 ,

セグメント化.最小エッジコントラスト ,

セグメント化.最小セグメント面積 ,

マスク生成.マスク方法 ,

マスク生成.セグメント ,

マスク生成.穴塗りつぶし最大サイズ ,

マスク生成.カーネルサイズ中央値 ,

マスク生成.収縮マスク数 ,

マスク生成.反転 ,

マスク生成.マスクを登録 ,

タイムアウト ,

表示画像,

表示

)

画像

この引数は有効な [image] データ構造体を含むスプレッドシートのセルを参照している必要があります。デフォルトで参照されるセルは A0 で、このセルに AcquireImage 関数によって返される [image] データ構造体が含まれています。

フィクスチャ

フィクスチャ入力、またはビジョンツール関数の画像座標系の出力に関連する対象領域 (ROI) を定義します。フィクスチャに関連する ROI を設定すると、フィクスチャが回転または移動した場合に、フィクスチャに対応して ROI を確実に回転または移動できます。

デフォルト設定は画像の左上隅で、(0, 0, 0) になります。

行 | 画像座標での行オフセット
列 | 画像座標での列オフセット
角度 | 画像座標での角度

領域

これは対象領域 (ROI) とも呼ばれ、画像処理の対象となる画像の領域を指定します。変換および回転可能な矩形の画像領域を作成します。このパラメータを選択して、[領域の最大化] ボタンを押すと、画像全体が対象になるように領域が自動的に拡張されます。

注意: パラメータの外部コントロールを許可するために [領域] パラメータが絶対参照としてスプレッドシートに入力されている場合、パラメータが変更されたときは、[マスクを登録] ボタンを押してマスクモデルを再登録してください。関数のプロパティシートが開いている間に [領域] パラメータが変更されると、マスクモデルは自動的に再登録されます。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法
幅 | 領域の Y 軸に沿った寸法
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意: [フィクスチャ] および [領域] パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

スケール

マスクのサイズを、登録したフィクスチャサイズに対する割合 (%) で指定します (80 ～ 120、デフォルト = 100)。

注意: 変化する [スケール] パラメータの影響を表示するには、コントロールをスプレッドシートにドラッグ & ドロップします。これにより EditInt 関数が作成され、自動的に [スケール] パラメータに対する絶対参照として分類されます。関数のプロパティシートが開いている間に [スケール] パラメータの値を変更すると、マスクが新しいスケール値で自動的に再登録され、パラメータの変更による影響がわかりにくくなります。

外部領域

オペレータ I/F 関数が入力されているスプレッドシートのセルへの参照を指定します。このパラメータを使用すると、Mask 関数は、[領域] と [フィクスチャ] の設定を無視し、参照先領域に指定された画像領域を検査します。

注意: このパラメータが外部定義領域の参照として設定されている場合に、この関数の内部領域を使用するには、セル参照に値 0 を入力し、このパラメータを手動で 0 に設定する必要があります。それ以外の場合、この関数は引き続き外部定義領域を参照します。

Flex Flaw 参照

Flex アルゴリズムによって修正されたモデルデータを含み、FlexFlawModel 関数によって出力される [image] データ構造体を含んでいるセルへの参照を指定します。これにより、FlexFlawModel 関数の Flex アルゴリズムによる Flex をマスクに適用して、プロセスばらつきを考慮することができます。

セグメンテーション

関数がセグメンテーション解析を実行する方法を指定します。

平滑化係数 | エッジ検出を実行する前に適用する平滑化の量を指定します (0 ～ 31、デフォルト = 1)。平滑化を適用すると、グレースケール値を平均化し、急速な変化による影響を弱めます。
最小エッジコントラスト | エッジ検出に使用する最小コントラストを指定します (1 ～ 100、デフォルト = 10)。 注意: このパラメータは[マスク方法] パラメータが [エッジマスク] に設定されている場合のみ有効になります。
最小セグメント面積 | 抽出する必要のあるセグメントの最小面積をピクセル単位で指定します (1 ～ 50000、デフォルト = 1000)。このパラメータはセグメントからノイズを除去する場合に有効です。 注意: このパラメータは [マスク方法] パラメータを [最大セグメント] または [選択したセグメント] のいずれかに設定した場合に使用します。

マスク生成

マスクを構築する方法を指定します。

マスク方法

マスクを構築する基準として、エッジまたはセグメントを指定します。

0 = 最大セグメント | マスクの生成に最大セグメントを使用するように指定します。
1 = エッジマスク (デフォルト) | マスクの生成にエッジ強調を使用するように指定します。使用するエッジを決定するには、最小エッジコントラストを使用します。
2 = 選択したセグメント | マスクの生成にユーザーが選択したセグメントを使用するように指定します。使用するセグメントを指定するには、[セグメント] パラメータを使用します。

セグメント

マスクの生成に特定のセグメントを使用するように指定します。カンマ区切り文字列 (1,2,5,7 など) を入力し、特定のセグメントを選択します。

注意: このパラメータを有効にするには、[マスク方法] パラメータを [選択したセグメント] に設定する必要があります。

穴塗りつぶし最大サイズ

穴を塗りつぶすために必要な (穴としてカウントされない) 最大サイズを指定します (0 ～ 10000、デフォルト = 0)。

注意: [マスク方法] パラメータが [エッジマスク] に設定されている場合は、このパラメータは 0 に設定する必要があります。

カーネルサイズ中央値

マスク画像のエッジを平滑化するために使用するカーネルサイズ中央値を指定します (0 ～10、デフォルト = 0)。カーネルが常に奇数値で作成されるように、カーネルは (2N + 1) に基づいて構築されます。パラメータを 0 に設定すると、カーネルを使用しないように指定します。

収縮マスク数

生成された画像が収縮または膨張する回数を指定します (-100 ～ 100、デフォルト = 0)。負の値または正の値を使用できます。負の値は画像を膨張させます。パラメータを 0 に設定すると、収縮も膨張もしないように指定します。

反転

マスクを反転するかどうかを指定します (つまり、白を黒、黒を白)。

0 = OFF (デフォルト) | マスクは反転しません。
1 = ON | マスクは反転します。

マスクを登録

現在設定されているパラメータ設定でマスクが登録されるように指定します。

注意: このパラメータをスプレッドシートに挿入して、再登録操作の外部コントロールを許可することもできます。このパラメータをスプレッドシートに入力すると、カスタムビューを使用して、外部デバイスで実行時にマスクを再登録することができます。

タイムアウト

マスクを計算する時間をミリ秒単位で指定します (0 ～ 30000、デフォルト = 0)。指定された時間が経過すると、実行は停止し、#ERR が返されます。

表示画像

この関数によって生成される出力画像のタイプを指定します。

0 = 入力画像 | 入力画像が表示されます。
1 = エッジ画像 | エッジ強調画像が表示されます。
2 = セグメント化した画像 | 色分けされ、数値のインデックスが付いたセグメント画像が表示されます。
3 = マスク画像 (デフォルト) | フィクスチャ入力を考慮した 2 値化マスク画像です。セグメンテーションとマスク生成処理の後に生成されます。ピクセル値 255 = 対象ピクセル、ピクセル値 0 = 対象外ピクセル

表示

画像上にオーバレイするグラフィックスを指定します。

0 = 非表示 (デフォルト) | Mask 関数を含んでいるセルがスプレッドシート上でハイライトされている場合を除き、入力画像領域は表示されません。
1 = 結果のグラフィックスのみ | 処理された画像が常に表示されます。
2 = 入力と結果のグラフィックス | 入力画像領域とマスクが常に表示されます。

Mask 関数関数の結果出力

戻り値

2 値化マスクを含んでいる [image] データ構造体。入力パラメータが無効であれば #ERR を返します。

注意: 画像は関数のデータ構造体に保存されません。

関連項目

  • 構造体関数
  • SurfaceFlaw 関数
  • FlexFlawModel 関数
  • プロパティシートの使用方法


Point 関数

構造体関数

In-Sight 関数リファレンス

フィクスチャされた Point データ構造体を作成します。

Point 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

点.X ,

点.Y ,

表示

)

Point 関数の入力パラメータ

フィクスチャ

点を定義する画像座標系を指定します。

行 | 行オフセット
列 | 列オフセット
角度 | 角度

点

フィクスチャ座標で点の位置を指定します。

X | 十字マークの X オフセット
Y | 十字マークの Y オフセット

注意: フィクスチャおよび点パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

表示

画像上の Point グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | Point 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、Point データ構造体は表示されません。
2 = 入力のグラフィックスのみ | Point データ構造体が常に表示されます。

Point 関数の結果出力

戻り値 | データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | Point 関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

Point データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(ポイント) | 画像座標での点の行オフセット
列 | GetCol(ポイント) | 画像座標での点の列オフセット

関連項目

対話型グラフィックスモード

プロパティシート


Region 関数

構造体関数

In-Sight 関数リファレンス

フィクスチャされた Region データ構造体を作成します。

Region 関数 (

フィクスチャ.行 ,

フィクスチャ.列 ,

フィクスチャ.角度 ,

領域.X ,

領域.Y ,

領域.高さ ,

領域.幅 ,

領域.角度 ,

領域.カーブ ,

表示

)

Region 関数の入力パラメータ

フィクスチャ

領域を定義する画像座標系を指定します。

行 | 行オフセット
列 | 列オフセット
角度 | 角度

領域

位置、サイズ、角度、およびカーブ (ドーナツ領域の場合) を指定します。領域は常にフィクスチャ座標系を基準に定義されています。

X | フィクスチャ座標での原点の X オフセット
Y | フィクスチャ座標での原点の Y オフセット
高さ | 領域の X 軸に沿った寸法。
幅 | 領域の Y 軸に沿った寸法。
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

注意: フィクスチャおよび領域パラメータは、画像の範囲内で定義されている必要があります。画像の範囲内で定義されていない場合、この関数は #ERR を返します。

表示

画像上の Region グラフィックスオーバレイの表示モードを指定します。

0 = 非表示（デフォルト） | Region 関数を含んでいるセルがスプレッドシート内でハイライトされている場合を除き、領域データ構造体のグラフィックスは表示されません。
2 = 入力のグラフィックスのみ | 領域構造体グラフィックスが常に表示されます。

Region 関数の結果出力

戻り値 | データ構造体。入力パラメータが無効であれば #ERR を返します。
結果 | Region 関数をスプレッドシートに配置すると、結果テーブルが自動的に作成されます。

Region データアクセス関数

次のデータアクセス関数が、結果テーブルを作成するためにスプレッドシートに自動挿入されます。

行 | GetRow(領域) | 画像座標での領域の原点の行オフセット
列 | GetCol(領域) | 画像座標での領域の原点の列オフセット
高さ | GetHigh(領域) | 領域の X 軸に沿った寸法。
幅 | GetWide(領域) | 領域の Y 軸に沿った寸法。
角度 | GetAngle(領域) | 画像座標での角度
カーブ | GetCurve(領域) | 領域の X 軸と反対側の境界線との間の角度変位

関連項目

対話型グラフィックスモード

プロパティシート


フォーカス関数

In-Sight 関数リファレンス

フォーカス関数は、サポートされる In-Sight 7000 シリーズビジョンシステムのレンズを自動または手動で調整する手法を提供します。

フォーカス関数には次の関数があります。

  • EditFocusPosition 関数: レンズの焦点位置を制御します。
  • GetCurrentFocusPosition 関数: レンズの現在の焦点位置を返します。


EditFocusPosition 関数

EditFocusPosition 関数 |
フォーカス関数 | In-Sight 関数リファレンス

EditFocusPosition 関数は、自動的にレンズの焦点を合わせたり、特定の焦点位置にレンズを移動したりすることで、サポートされている In-Sight 7000 シリーズビジョンシステムのレンズの焦点位置を制御します。

  • EditFocusPosition 関数の入力パラメータ
  • EditFocusPosition 関数の結果出力
  • EditFocusPosition 関数の使用方法
  • 関連項目

注意:
  • EditFocusPosition 関数は、サポートされている In-Sight 7000 シリーズビジョンシステムでのみ使用できます。
  • EditFocusPosition 関数は、ビジョンシステムがオフラインの場合のみ動作します。
  • EditFocusPosition 関数がジョブ内にあり有効で、関数を含むジョブファイルがロードされると、EditFocusPosition 関数によってビジョンシステムのレンズが前回の焦点位置に移動します。
  • [フォーカス位置をジョブに保存] パラメータを ON にすると、フォーカス位置データがジョブに保存され、ジョブをリロードした際にレンズに再適用されます。
  • ライブビデオ時に スプレッドシートビューまたは EasyBuilder ビューのいずれかで [フォーカスの保存] ボタンを押した後にスプレッドシートビューでフォーカス位置データを変更した場合、スプレッドシートに保存されたフォーカス位置データは、ライブビデオに保存されたフォーカス位置データを上書きします。

EditFocusPosition 関数 関数の入力パラメータ

EditFocusPosition 関数 (

最小焦点位置,

最大焦点位置,

画像,

オートフォーカス領域.X,

オートフォーカス領域.Y,

オートフォーカス領域.高さ,

オートフォーカス領域.幅,

オートフォーカス領域.角度,

オートフォーカス領域.カーブ,

オートフォーカスイベント,

オートフォーカスオフセット,

焦点位置値の設定,

焦点位置イベントの設定,

フォーカス位置をジョブに保存

Run Autofocus on Job Load

)

最小焦点位置

 最小焦点位置値を指定します (0～100、デフォルト = 0)。

最大焦点位置

最大焦点位置値を指定します (0～100、デフォルト = 100)。

画像

AcquireImage 関数によって返される [image] データ構造体を含むセル A0 への参照を指定します。

注意:　このパラメータは他の [image] データ構造体を参照できますが、関数は AcquireImage [image] データ構造体のみを使用するように設計されています。

オートフォーカス領域

レンズの焦点を計算するために使用される領域のサイズと位置を指定します。

X | フィクスチャ座標での焦点領域の X オフセット。
Y | フィクスチャ座標での焦点領域の Y オフセット。
高さ | 焦点領域の高さ。
幅 | 焦点領域の幅。
角度 | フィクスチャ座標での角度
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

オートフォーカスイベント

オートフォーカスをトリガするスプレッドシートイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • Event 関数を含むセル
  • Button 関数を含んでいるセル

オートフォーカスオフセット

オートフォーカスの完了後に、レンズの位置に適用されるオフセットを指定します (-100 ～ 100、デフォルト = 0)。

焦点位置値の設定

焦点位置として使用する値またはセル参照を指定します。

焦点位置イベントの設定

指定された焦点位置へレンズを移動するスプレッドシートイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • Event 関数を含むセル
  • Button 関数を含んでいるセル

フォーカス位置をジョブに保存

フォーカス位置をジョブと一緒に保存し、ジョブがロードされたときにレンズに適用するかどうかを指定します。チェックボックスをオンにすると、レンズは最後に保存された焦点位置に移動します。

注意:　[フォーカス位置をジョブに保存] チェックボックスと [Run Autofocus on Job Load] チェックボックスは相互に排他的であるため、両方のチェックボックスを同時にオンにすることはできません。

0 = OFF | レンズは移動せず、セルに現在の焦点位置が表示されます。
1 = ON (デフォルト) | レンズは最後に保存された焦点位置に移動します。

Run Autofocus on Job Load

ジョブがロードされたときに自動的にレンズの焦点を合わせるかどうかを指定します。

注意:　[フォーカス位置をジョブに保存] チェックボックスと [Run Autofocus on Job Load] チェックボックスは相互に排他的であるため、両方のチェックボックスを同時にオンにすることはできません。

0 = OFF (デフォルト) | ジョブがロードされたときに自動的にレンズの焦点を合わせません。
1 = ON | ジョブがロードされたときに自動的にレンズの焦点を合わせます。

EditFocusPosition 関数 関数の結果出力

戻り値 | 現在の焦点位置の値 (0 ～ 100)、または入力パラメータが無効な場合は #ERR が返されます。
結果 | 新しい画像を取り込み、表示されている画像を新たに取り込んだ画像で更新します。

EditFocusPosition 関数の使用方法

  • レンズの自動フォーカス
  • オートフォーカス位置の調整
  • レンズを特定の位置に設定
  • ライブビデオでのレンズの自動フォーカス

レンズの自動フォーカス

  1. EditFocusPosition 関数をスプレッドシートセルに挿入します。
  2. EditFocusPosition プロパティシートで [OK] をクリックすると、フォーカス位置の値を調整する EditInt 関数および、オートフォーカスをトリガする Button 関数の 2 つのセルが自動的にスプレッドシートに挿入されます。

  3. [オートフォーカス] ボタンをクリックします。
  4. 画像が更新されるまで1 ～2 秒待機します。フォーカス位置の値が [オートフォーカス] ボタンの左側のセルに表示されます。

注意:　オートフォーカスはスプレッドシートビューと EasyBuilder ビューの両方のライブビデオからアクセスすることができます。

オートフォーカス位置の調整

  1. オートフォーカス完了後、EditFocusPosition プロパティシートを開きます。
  2. [オートフォーカスオフセット] の値を調整し、[OK] をクリックします。
  3. フォーカスが合っているかどうかを確認します (特徴が最適化されているか、影が最小限かどうか、など)。フォーカスが合っていない場合、最適な位置になるまで値を再調整します。

注意:　オートフォーカスオフセット値は、元のオートフォーカス位置とともにジョブに保存され、ジョブをリロードした際にレンズに再適用されます。

レンズを特定の位置に設定

  1. EditFocusPosition 関数をスプレッドシートに挿入します。
  2. [フォーカス位置イベントの設定] パラメータに、Event 関数または Button 関数を含むセル参照を指定します。
  3. [フォーカス位置値の設定] パラメータに、フォーカス位置として使用する値またはセル参照を指定し、[OK]をクリックします。
  4. イベントが発生すると、レンズは指定の位置に移動し、フォーカス位置の値が [オートフォーカス] ボタン隣のセルに表示されます

ライブビデオでのレンズの自動フォーカス

  1. [ジョブの表示] ツールバーの [ライブビデオ] [image] ボタンをクリックして、ライブビデオモードに切り替えます。

    2. 注意:　ビジョンシステムはオフラインになっている必要があります。

  2. [オートフォーカス] ボタンを押すか、検査対象の特徴の詳細がクリアで高コントラストになり、フォーカスメトリクス得点が許容可能になるまで [Focus Position] スライダーを手動で調整します。

    3. 注意:　[オートフォーカス] ボタンを押すと、 [Focus Position] スライダーと [フォーカスの保存] ボタンは無効になります。

  3. [オートフォーカス] ボタンを押すと、フォーカス位置の値が更新されて新しい画像が表示されます。
  4. [フォーカスの保存] ボタンを押します。現在のフォーカス位置がデフォルトのフォーカス位置として保存されます。次にビジョンシステムの電源を入れ直したときに、レンズは自動的にその位置に移動します。
  5. ライブビデオモードを終了するには、キーボードの任意のキーを押すか、[ライブビデオ] ボタンを再度押します。

関連項目

  • フォーカス関数
  • GetCurrentFocusPosition 関数


GetCurrentFocusPosition 関数

フォーカス関数

In-Sight 関数リファレンス

レンズの現在の焦点位置を返します。

注意:

  • GetCurrentFocusPosition 関数は、サポートされている In-Sight 7000 シリーズビジョンシステムでのみ使用できます。

GetCurrentFocusPosition 関数 の入力パラメータ

入力

説明

イベント

データを読み取るスプレッドシートイベントを指定します。このパラメータは、次のいずれかを参照している必要があります。

  • AcquireImage 関数を含んでいるセル A0 の [image] データ構造体 (デフォルト)
  • 関数を含んでいるセル
  • Button 関数を含んでいるセル

GetCurrentFocusPosition 関数 の出力

戻り値

イベントがトリガされた時点の現在の焦点位置値 (0 ～ 100)。現在位置を判別できない場合は、-1 を返します。

関連項目

フォーカス関数

EditFocusPosition 関数


In-Sight の通信環境

In-Sight 通信リファレンス

In-Sight ビジョンシステムは、Ethernet ネットワークまたはシリアルポート接続を介して、さまざまなプロトコルを使用して、外部デバイスと通信することができます。次の表に、In-Sight ビジョンシステムがサポートしているさまざまなプロトコルと、関連項目へのリンクを示します。

物理接続 プロトコル 関連項目

Ethernet

TCP/IP

  • TCPDevice 関数、QueryDevice 関数
  • ReadDevice 関数、WriteDevice 関数
  • AcquireImage 関数、WriteResult 関数、ReadResult 関数

Ethernet

TCP/IP Modbus

  • TCP/IP Modbus による通信について
  • TCPDevice 関数、ReadDevice 関数、WriteDevice 関数、QueryDevice 関数
  • Binary Text 関数
  • AnybusX-gateway
  • PROFIBUS ネットワーク上の Siemens PLC との通信
  • CC-Link ネットワーク上の三菱電機オートメーションコントローラとの Anybus ゲートウェイ経由での通信

Ethernet

ファイル転送プロトコル (FTP)

  • [FTP の設定] ダイアログ
  • [ログオン/ログオフ] ダイアログ
  • [保存] および [開く] ダイアログ
  • WriteFTP 関数、WriteImageFTP 関数、WriteImageSFTP 関数

Ethernet

SMTP

  • WriteSMTP 関数

Ethernet

EtherNet/IP (EIP)

  • ReadEIP 関数、WriteEIP 関数
  • ReadEIPBuffer 関数、WriteEIPBuffer 関数
  • EtherNet/IP ネットワーク上の Rockwell ControlLogix PLC との通信
  • EtherNet/IP ネットワーク上の Rockwell SLC 5/05 PLC との通信

Ethernet

MELSEC

  • 三菱電機 MELSEC 通信プロトコル
  • SLMP スキャナのファクトリインタフェース
  • FormatInputBuffer 関数、FormatOutputBuffer 関数
  • ReadUserDataBuffer 関数、ReadLatchedUserDataBuffer 関数、WriteResultsBuffer 関数
  • CC-Link ネットワーク上の三菱電機オートメーションコントローラとの Anybus ゲートウェイ経由での通信
  • CC-Link ネットワーク上の三菱電機オートメーションコントローラとの In-Sight CIO-MICRO-CC 経由での通信
  • ReadCCLinkBitBuffer 関数、ReadCCLinkWordBuffer 関数、WriteCCLinkBitBuffer 関数、WriteCCLinkWordBuffer 関数

Ethernet

PROFINET

  • ReadProfinetBuffer 関数、WriteProfinetBuffer 関数
  • ProfiNET ネットワーク上の Siemens PLC との通信

Ethernet

POWERLINK

  • POWERLINK 通信
  • POWERLINK ファクトリインタフェース

  • FormatInputBuffer 関数、FormatOutputBuffer 関数

  • ReadUserDataBuffer 関数、ReadLatchedUserDataBuffer 関数、WriteResultsBuffer 関数

Ethernet

ネイティブモード

  • ネイティブモードでの通信について
  • ネイティブモードコマンド

Ethernet

DataChannel による通信

  • DataChannel による通信について
  • SetWatch 関数

シリアル

Text モード

  • Text モードの詳細設定
  • [シリアルポートの設定] ダイアログ
  • ReadSerial 関数、WriteSerial 関数

シリアル

ネイティブモード

  • Native モードの詳細設定
  • [シリアルポートの設定] ダイアログ
  • ネイティブモードでの通信について
  • ネイティブモードコマンド
  • ReadSerial 関数、WriteSerial 関数

シリアル

DeviceNet

  • DeviceNet モードの詳細設定
  • [シリアルポートの設定] ダイアログ
  • ReadDeviceNet 関数、WriteDeviceNet 関数

シリアル

Motoman モード

  • Motoman 通信について
  • Motoman コマンド
  • [シリアルポートの設定] ダイアログ

シリアル

Kuka モード

  • Kuka 通信について

In-Sight® Explorer 4.9.0 ヘルプ (Cognex Directory Server 非表示版)

Revision: 5.6.0.17

03/22/2018 16:06:23

Copyright © 1999-2013

Cognex Corporation

All Rights Reserved.


Anybus X-gateway

In-Sight 通信リファレンス

AnybusR X-gateway● は、2 つの異なる産業用ネットワークプロトコル間の通信を容易にして、プロトコル間での通信とデータ交換を可能にします。Anybus X-gateway はイーサネットインタフェースを多目的通信ソリューションとして利用して、産業用ネットワークプロトコルサポートと Web および電子メール機能を提供します。

このモデルでは、In-Sight センサは TCP/IP Modbus 通信を使用して、異なるネットワーク (例えば、PROFIBUS や CCLink) 上の PLC との間で通信し、データを交換することができます。Anybus X-gateway のイーサネットインタフェースは、In-Sight センサと PLC の間で入力バッファと出力バッファを使用してデータを交換します。これらのバッファは、次の図に示すように、TCP/IP Modbus ネットワークと PROFIBUS ネットワークを接続する産業用ネットワークプロトコルを介してアクセスされます。

  • 入力バッファ: 入力バッファは、Profibus ネットワーク上の PLC から送信されるデータを保存します。このデータは、TCP/IP Modbus ネットワーク上の In-Sight センサに送信されます。
  • 出力バッファ: 出力バッファは、TCP/IP Modbus ネットワーク上の In-Sight センサから送信されるデータを格納します。このデータは、Profibus ネットワーク上の PLC に送信されます。

関連項目

PROFIBUS ネットワーク上の Siemens PLC と通信するには

CCLink ネットワーク上の Mitsubishi PLC との通信


CC-Link ネットワーク上の三菱電機オートメーションコントローラとの Anybus X-gateway 経由での通信

TCP/IP Modbus による通信

In-Sight 通信リファレンス

  • 概要
  • Anybus X-gateway のインストールと設定
  • CC-Link ネットワーク上の三菱電機オートメーションコントローラへの Anybus X-gateway の接続
  • TCP/IP Modbus 経由での In-Sight ビジョンシステムへの Anybus X-gateway の接続

概要

In-Sight ビジョンシステムは、Anybus X-gateway と TCP/IP Modbus プロトコルを使用して、CC-Link ネットワーク上のデバイスと通信することができます。

このトピックでは、ゲートウェイのインストールおよび設定方法、オートメーションコントローラプログラミングソフトウェア (三菱電機 GX Developer) の設定方法、CC-Link ネットワーク上の三菱電機オートメーションコントローラと通信するための In-Sight Explorer のセットアップ方法について説明します。

下記の例は、次のコンポーネントを使用していることを前提に記述されています。

  • Anybus X-gateway および HMS Anybus IPconfig ソフトウェア
  • ファームウェアバージョン 3.41.00 以上を実行している In-Sight ビジョンシステム
  • CC-Link をサポートする三菱電機オートメーションコントローラ
  • 三菱電機 GX Developer プログラミングソフトウェア

Anybus X-gateway のインストールと設定

この節の手順では、Anybus X-gateway の Ethernet 部分のインストールおよび設定方法について説明します。手順では、次のコンポーネントを使用していることを前提にしています。

注意:詳細については、HMS Anybus-X のマニュアル (『Anybus-X Generic Gateway User Manual』、『Anybus-X Ethernet Network Interface Addendum』、『X-gateway Interface Addendum - CC-Link Slave Interface』) を参照してください。これらのマニュアルは、HMS の Web サイト (www.hms-networks.com) のサポートページで提供されています。

Anybus X-gateway のインストールおよび設定を行うには、以下の手順に従います。

  1. HMS のソフトウェアユーティリティである Anybus IPconfig をダウンロードしてインストールします。このユーティリティでは、HMS IP Configuration Protocol (HICP) を使用して、Anybus ベースの Ethernet インタフェースを簡単な方法で設定できます。
  2. Ethernet に接続した PC で、Anybus IPconfig を実行します。ネットワーク上で検出された Anybus ベースの Ethernet インタフェースとその IP アドレスが、すべてウィンドウに表示されます。
  3. Anybus X-gateway の CC-Link ステーションアドレススイッチを使用して、CC-Link ステーションアドレスを設定します。詳細については、『X-gateway Interface Addendum - CC-Link Slave Interface』を参照してください。
  4. 通信するオートメーションコントローラのボーレートに合わせて、Anybus X-gateway のボーレートスイッチを設定します。
  5. Anybus X-gateway ハードウェアを実際に取り付けて接続します。詳細については、Anybus X-gateway のマニュアルを参照してください。
  6. Anybus X-gateway ハードウェアを適切に取り付けて、すべてのケーブルを接続した後、Anybus X-gateway ハードウェアの電源を投入し、電源がオンになるまで 30 ～ 60 秒待ちます。Anybus-X Gateway ハードウェアの電源がオンになると、Ethernet LED 状態インジケータが緑色に点灯または点滅します。
  7. Anybus IPconfig ユーティリティで、[Scan] ボタンをクリックし、Anybus ベースの Ethernet インタフェースがすべて表示されているウィンドウを更新します。リストに、デフォルト IP アドレス 192.168.0.1 の Anybus X-gateway ハードウェアが新たに追加表示されます。
  8. Anybus X-gateway の設定を変更する必要がある場合は、リストで「Anybus X-gateway」をダブルクリックします。DHCP による IP アドレスまたは固定 IP アドレス、サブネットマスク、デフォルトゲートウェイ、および DNS サーバを割り当てるためのダイアログが表示されます。設定を完了したら、[Set] ボタンをクリックして続行します。
  9. 最後に、Anybus IPconfig ユーティリティで、[Scan] ボタンをクリックし、Anybus ベースの Ethernet インタフェースがすべて表示されているウィンドウを更新します。リストに、新しい IP アドレス (変更した場合) の Anybus X-gateway ハードウェアが表示されます。

CC-Link ネットワーク上の三菱電機オートメーションコントローラへの Anybus X-gateway の接続

Anybus X-gateway では、TCP/IP Modbus ネットワークと CC-Link データをやり取りし、In-Sight ビジョンシステムの入力と出力を三菱電機オートメーションコントローラのプロセッサメモリに送信することができます。これらの値は、確立後、CC-Link ネットワークの更新レートによって定義される間隔で同期されます。

TCP/IP Modbus 経由での In-Sight ビジョンシステムへの Anybus X-gateway の接続では、実際のデータがどのように転送されるかを説明しています。また、スニペットと詳細なサンプル設定を示しています。

詳細については、『Anybus-X Generic Gateway User Manual』と『Anybus-X CC-Link Slave Network Interface Addendum』を必要に応じて参照してください。これらのマニュアルは、HMS の Web サイト (www.hms-networks.com) でダウンロードすることができます。

Anybus X-gateway のほかに、Anybus Communicator も CC-Link のマスタまたはスレーブとして使用することができます。ここでは Anybus X-gateway を使用します。

CC-Link 通信の設定

Anybus X-gateway と三菱電機コントローラの間の CC-Link 接続を設定するには、最初に Anybus X-gateway をオートメーションコントローラと同じボーレートに設定し、コントローラと異なるステーション番号を指定する必要があります。スイッチは電源コネクタの横にあります。詳細については、Anybus のユーザマニュアルを参照してください。 次の手順では、三菱電機 GX Developer ソフトウェアを使用して、オートメーションコントローラの設定を行います。

  1. GX Developer を開き、オートメーションコントローラのプロジェクトをロードします。

  2. オートメーションコントローラモジュールの設定を確認します。[パラメータ]、[PLC パラメータ] の順にダブルクリックし、[I/O 割り当て] タブを選択します。

    この例では、Q02(H) デバイスが 1 つ、Intelli デバイスが 1 つ、入力デバイスが 1 つ、出力デバイスが 1 つあります。ポイントの種類と数の詳細については、三菱電機のマニュアルを参照してください。
  3. CC-Link ネットワークを設定します。[パラメータ] の下の [ネットワークパラメータ] をダブルクリックして、[CC-Link] を選択します。

    PLC が「種類」の下の「マスタステーション」して選択されます。

    「リモートネット (Ver.1 モード)」は、Anybus X-gateway で使用される CC-Link バージョン 1.0 を指しています。Anybus Communicator を使用する場合は、バージョン 2.0 が選択されます。

    Anybus X-gateway が接続されている唯一のステーションであるため、「すべての接続数」は「1」に設定されます。
  4. 占有されるステーションを設定します。[ステーション情報] をダブルクリックします。次の画面が表示されます。

    オートメーションコントローラハンドシェークを設定できるようになります。これは、X-Gateway または Communicator でオートメーションコントローラからの応答が必要な場合のオプションの手順です。詳細については、HMS の Web サイトの『How to set up an Anybus Product with CC-Link and a Mitsubishi Automation Controller』を参照してください。
  5. オートメーションコントローラと相互通信できるように X-Gateway を設定します。PC と Gateway の config ポートの間をシリアルケーブルで接続し、Windows のハイパーターミナルを開きます ([スタート] → [アクセサリ] → [通信] → [ハイパーターミナル])。
  6. [ファイル] メニューで、[プロパティ] をクリックします。
  7. [接続先] タブの [接続方法] フィールドで該当する COM ポートを選択し、[設定] をクリックします。次の画像にある設定を使用します。

    接続して ESC キーを押し、メニューオプションを表示します。

    6 を押して、次の設定情報を入力します。この設定は、オートメーションコントローラの設定画面で入力した情報と一致している必要があります。

    デバイスを再起動します。システムの設定が完了しました。

TCP/IP Modbus 経由での In-Sight ビジョンシステムへの Anybus X-gateway の接続

この節では、TCP/IP Modbus による通信を使用した In-Sight ビジョンシステムへの Anybus X-gateway の接続について説明します。

  • In-Sight Explorer での TCP/IP Modbus による通信の設定 In-Sight Explorer
  • オートメーションコントローラから In-Sight ビジョンシステムへの CC-Link 経由でのデータの読み取り
  • In-Sight ビジョンシステムからオートメーションコントローラへの CC-Link 経由でのデータの書き込み

注意:詳細については、Open Modbus/TCP Specification (外部リンク。インターネットアクセスが必要。Modicon 発行) と InSightModbus.doc (Cognex サポート Web サイトで入手可能) を参照してください。

In-Sight Explorer での TCP/IP Modbus による通信の設定 In-Sight Explorer

In-Sight ビジョンシステムでは TCP/IP Modbus クライアント機能が有効になっていますが、Anybus X-gateway が TCP/IP Modbus サーバ (スレーブ) として機能するため、このサーバ機能はこのモデルでは必要ありません。

  1. In-Sight Explorer で、[In-Sight ネットワーク] ペインから設定される、In-Sight ビジョンシステムまたはエミュレータを選択します。
  2. [ファイル] メニューの [ジョブの新規作成] を選択し、ビジョンシステムまたはエミュレータに新規ジョブをロードします。
  3. [パレット]の [スニペット] タブを選択して、[Communication] フォルダを展開します。In-Sight Explorer スプレッドシートで、A2 を選択して [CCLinkGateway.cxd] をダブルクリックするか、ファイルをセル A2 にドラッグ & ドロップするかして、CCLinkGateway.cxd ファイルをセル A2 にロードします。
  4. 新規ジョブを CCLinkGateway.job として、ビジョンシステムまたはエミュレータに保存します。
  5. セル A5 をダブルクリックし、Anybus X-gateway の IP アドレスを入力します (必要に応じ、HMS Anybus IPconfig ソフトウェアユーティリティを実行して、Anybus X-gateway の IP アドレスを取得します)。
  6. TCP/IP Modbus 通信を行うには、In-Sight クライアント (マスタ) のジョブに TCPDevice 関数と QueryDevice 関数が存在している必要があります。TCPDevice 関数は、リモートデバイス間 (この場合は、Anybus X-gateway と In-Sight ビジョンシステム) のネットワーク接続を作成するときに使用します。QueryDevice 関数は、TCP/IP Modbus パケットの Modbus 関数コードコマンドを作成するときに使用します。CCLinkGateway.cxd ファイルでは、TCPDevice 関数が C5 に含まれ、2 つの QueryDevice 関数がセル B15 (読み取り要求用) とセル B28 (書き込み要求用) に含まれています。
  7. Anybus X-gateway は、QueryDevice 関数の以下の Modbus 関数コードをサポートしています。
関数コード | 関数名
3 | Read multiple registers
4 | Read input registers
6 | Write single register
7 | Read exception status
8 | Diagnostics
16 | Force multiple registers
22 | Mask write register
23 | Read/Write registers
  8. セル B15 の QueryDevice 関数をダブルクリックし、パラメータが次のように設定されていることを確認します。

注意:Modbus パケット構造体の詳細については、Modbus Implementation Guide バージョン 1.0b (外部リンク、インターネットへのアクセスが必要です) を参照してください。

パラメータ入力番号

パラメータ入力

名

パラメータ入力値

説明

1

Event

$A$15

[イベント] ボタンへのセル参照。

2

Device

$C$5

セル C5 の TCPDevice 関数へのセル参照。

3

Data

0

Modbus ヘッダ、トランザクション ID、上位バイト = 0。

4

Data

0

Modbus ヘッダ、トランザクション ID、下位バイト = 0。

5

Data

0

Modbus ヘッダ、プロトコル ID、上位バイト = 0。

6

Data

0

Modbus ヘッダ、プロトコル ID、下位バイト = 0。

7

Data

0

フィールド長、上位バイト = 0。

8

Data

6

フィールド長、下位バイト = 6 (後続のバイト数)。

9

Data

0

単位 ID、使用しないバイト = 0。

10

Data

$C$12+3

Modbus 関数コードバイト。この例では、この入力は 3 または 4 になる。

注意:Modbus 関数コードバイトが 3 にセットされている場合、In-Sight は保持レジスタ (TCP/IP Modbus 経由で書き込まれたデータ) を読み取ります。Modbus 関数コードバイトが 4 にセットされている場合、In-Sight は入力レジスタ (CC-Link 経由で書き込まれたデータ) を読み取ります。

11

Data

0

Modbus 参照アドレス、上位バイト = 0。

注意:入力レジスタは、アドレス 1000 から Read multiple registers (関数コード 3) を使用して、またはアドレス 0 から Read input registers (関数コード 4) を使用して読み取られる場合があります。

12

Data

$E$19

Modbus 参照アドレス、下位バイト = 4。最初の 4 バイトは「ビット領域」サイズの指定に使用される。この場合、最初の 4 バイトはデータ交換に使用することができず、占有されるステーションの番号のために予約済みです。

注意:入力レジスタは、アドレス 1000 から Read multiple registers (関数コード 3) を使用して、またはアドレス 0 から Read input registers (関数コード 4) を使用して読み取られる場合があります。

注意: 詳細については、HMS Web サイト (www.hms-networks.com) のサポートページで提供されている『X-gateway Interface Addendum - CC-Link Slave Interface』のデータ交換の基本事項についての説明 (第 2-1 章) を参照してください。

13

Data

0

ワード (レジスタ) 数、上位バイト = 0。

14

Data

$B$8

ワード (レジスタ) 数、下位バイト = 0。

この例では、この入力は 1、2、3、4、6、8 のいずれかになります。

  9. Anybus X-gateway からの TCP/IP Modbus 応答パケットは、QueryDevice 関数のバイナリ構造体に格納されます。これらの戻り値は、In-Sight Explorer で BGetInt 関数によって読み取られます。この関数は、バイナリ構造体の特定のバイトからの整数値を返し、応答は以下のような形式になります。
バイト番号 | Modbus 応答 | 説明
バイト 7 | Modbus 関数コード | この例では、3 または 4。このコマンドが失敗すると、関数コードに 128 が追加されます (返される値は 131 または 132。セル E15 を参照してください)。
バイト 8 | バイト数 | この例では、2 レジスタ (ワード) = 4 バイト。セル E15 を参照してください。
バイト 9/10 | レジスタ 0 の値 | これらの値は 2 バイト形式です。CCLinkGateway.cxd ファイルで、セル D18 の BGetInt 関数がバイト 9 のバイナリ値を読み取ります (ワード読み取りの下位バイト)。
バイト 11/12 | レジスタ 1 の値 | これらの値は 2 バイト形式です。CCLinkGateway.cxd ファイルで、セル D19 の BGetInt 関数がバイト 11 のバイナリ値を読み取ります (ワード読み取りの下位バイト)。
バイト 13/14 | レジスタ 2 の値 | これらの値は 2 バイト形式です。CCLinkGateway.cxd ファイルで、セル D20 の BGetInt 関数がバイト 13 のバイナリ値を読み取ります (ワード読み取りの下位バイト)。
バイト 15/16 | レジスタ 3 の値 | これらの値は 2 バイト形式です。CCLinkGateway.cxd ファイルで、セル D21 の BGetInt 関数がバイト 15 のバイナリ値を読み取ります (ワード読み取りの下位バイト)。
バイト 17/18/19/20 | 浮動小数点数値を格納するレジスタ 3 および 4 の値 | これらの値は浮動小数点形式です。CCLinkGateway.cxd ファイルで、セル D22 の BGetInt 関数がバイト 17 のバイナリ値を読み取ります (ワード読み取りの下位バイト)。
バイト 21/22/23/24 | 文字列 (バイト配列) を格納するレジスタ 5、6、および 7 の値 | これらの値は文字列形式です。CCLinkGateway.cxd ファイルで、セル D23 の BGetInt 関数がバイト 21 のバイナリ値を読み取ります (ワード読み取りの下位バイト)。
  10. 書き込み要求用の QueryDevice 関数 (セル B28) は、要求パケットおよび応答パケットと同じ形式で書式設定されます。

オートメーションコントローラから In-Sight ビジョンシステムへの CC-Link 経由でのデータの読み取り

このモデルによって提供される例に従い、Anybus X-gateway の入力バッファは読み取られるデータソースです。このバッファには、TCP/IP Modbus 上の In-Sight ビジョンシステムが CC-Link ネットワーク上のオートメーションコントローラから要求したデータが保持されます。

  1. 「In-Sight Explorer での TCP/IP Modbus による通信の設定」の節で作成した In-Sight Explorer ジョブを引き続き使用します。
  2. CC-Link Configurator (GX Configurator-CC) を開きます。必要に応じ、GX Developer を使用して、三菱電機オートメーションコントローラにプロジェクトをダウンロードします。また、GX Developer を使用して、さらに複雑なデータ操作を行う場合があります。
  3. オートメーションコントローラシリーズとして、「QCPU-Q」を選択します。

  4. [オンライン] メニューから、[Remote station monitor/test] を選択します。

  5. [Remote station monitor/test] ダイアログを次のように設定します。

  6. [Batch monitor]、[Start monitor] の順にクリックします。
  7. [Present value change (RWw)] をクリックして、読み取り値の 16 進値と 10 進値を入力します。値は、In-Sight Explorer でリトルエンディアン表記で転送されている場合であっても、ビッグエンディアン表記で表示されます。

  8. CCLinkGateway.cxd ファイルのセル A8 で、レジスタの値として「8」 (16 バイト) を選択します。
  9. セル C12 で、「Read Registers」のドロップダウンリストから、「Input Registers」を選択します。

  10. セル A15 の [Read] ボタンをクリックして、結果を更新します。セル D18 ～ D23 の値が変化して、CC-Link Configurator で入力した値が反映されるはずです。

In-Sight ビジョンシステムからオートメーションコントローラへの CC-Link 経由でのデータの書き込み

このモデルによって提供される例に従い、Anybus X-gateway の出力バッファは書き込まれるデータソースです。このバッファには、TCP/IP Modbus 上の In-Sight ビジョンシステムが CC-Link ネットワーク上のオートメーションコントローラに書き込むデータが保持されます。

  1. CCLinkGateway.cxd ファイルのセル A8 で、レジスタの値として「8」 (16 バイト) を選択します。
  2. セル C12 で、「Read Registers」のドロップダウンリストから「Holding Registers」を選択します。これにより、In-Sight ジョブ内で書き込まれるのと同じレジスタからデータが読み取られます。
  3. 次に、アプリケーションに対する正しいデータタイプになるように、セル D31 ～ D36 の値を調整します。EditInt セルに値を入力します。セル D31 ～ D34 には 4 つの整数 (最小値は -32768、最大値は 32767 で、値はこの範囲内の有効な整数である必要があります) を、セル D35 には浮動小数点数値 (最小値は ±1.175495e-38、最大値は ±3.402823e+38 で、値はこの範囲内の有効な浮動小数点数値である必要があります) を、セル D36 には 4 バイトの文字列 (文字列は 4 文字を超えることができなくなりました) を入力します。

  4. セル A28 の [Write] ボタンをクリックし、In-Sight Explorer スプレッドシートからオートメーションコントローラに結果を書き込みます。

  5. セル A15 の [Read] ボタンをクリックします。セル D18 ～ D23 の値が変化し、セル D31 ～ 36 に入力した値が反映されるはずです。
  6. CC-Link Configurator (GX Configurator-CC) を開きます。必要に応じ、GX Developer を使用して、三菱電機オートメーションコントローラにプロジェクトをダウンロードします。また、GX Developer を使用して、さらに複雑なデータ操作を行う場合があります。
  7. オートメーションコントローラシリーズとして、「QCPU-Q」を選択します。

  8. [オンライン] メニューから、[Remote station monitor/test] を選択します。

  9. [Remote station monitor/test] ダイアログを次のように設定します。

  10. [Batch monitor]、[Start monitor] の順にクリックします。RWr モニタの下の値が変化し、In-Sight Explorer スプレッドシートで入力した値の 16 進値と 10 進値が反映されるはずです。値は、In-Sight Explorer でリトルエンディアン表記で転送されている場合であっても、ビッグエンディアン表記で表示されます。

関連項目

Anybus X-gateway


Profibus ネットワーク上の Siemens PLC との通信

TCP/IP Modbus による通信

In-Sight 通信リファレンス

概要

Anybus X-gateway のインストールと設定

Anybus X-gateway の Profibus ネットワーク上の Siemens PLC への接続

TCP/IP Modbus 経由での Anybus X-gateway の In-Sight ビジョンシステムへの接続

概要

In-Sight ビジョンシステムは、Anybus X-gateway と TCP/IP Modbus プロトコルを使用して、PROFIBUS ネットワーク上のデバイスと通信することができます。

このトピックでは、ゲートウェイのインストールおよび設定方法、PLC プログラミングソフトウェア （Siemens Step 7） の設定方法、および Profibus ネットワーク上の Siemens PLC と通信するように In-Sight Explorer を設定する方法について説明します。

ここでの例は、次のコンポーネントを使用していることを前提に記述されています。

  • Anybus X-gateway および HMS Anybus IPconfig ソフトウェア
  • ファームウェアバージョン 3.41.00 以上を実行している In-Sight ビジョンシステム
  • Siemens S7-300 または S7-400 シリーズ PLC (Profibus オプション)
  • Siemens Step 7 プログラミングソフトウェア

Anybus X-gateway のインストールと設定

このセクションに含まれている手順では、Anybus X-gateway のイーサネット部分のインストールおよび設定方法について説明します。手順では、次のコンポーネントを使用していることを前提にしています。

注意: 詳細については、HMS Anybus-X のマニュアル (『Anybus-X Generic Gateway User Manual』、『Anybus-X Ethernet Network Interface Addendum』、および『Anybus-X PROFIBUS Slave Network Interface Addendum』) を参照してください。これらのマニュアルは、HMS の Web サイト (www.hms-networks.com) からダウンロードできます。

Anybus X-gateway をインストールおよび設定するには

  1. HMS Software ユーティリティの Anybus IPconfig をダウンロードしてインストールします。このユーティリティは、HMS IP Configuration Protocol (HICP) を使用します。これにより、Anybus ベースのイーサネットインタフェースを簡単に設定することができます。
  2. イーサネット接続機能を備えた PC を使用して、Anybus IPconfig を実行します。ネットワーク上で検出された Anybus ベースのイーサネットインタフェースのすべてと、それらの IP アドレスがウィンドウに表示されます。
  3. Anybus X-gateway 上のロータリ式 PROFIBUS ノードアドレススイッチを使用して、PROFIBUS ノードアドレスを設定します。詳細については、『Anybus-X PROFIBUS Slave Network Interface Addendum』を参照してください。
  4. Anybus X-gateway ハードウェアを物理的に取り付けて、接続します。詳細については、Anybus X-gateway のマニュアルを参照してください。
  5. Anybus X-gateway ハードウェアを正しく取り付けて、すべてのケーブルを接続した後、Anybus X-gateway ハードウェアに電源を供給し、デバイスの電源が入るのを 30 ～ 60 秒待ちます。Anybus X-gateway ハードウェアの電源が入ると、イーサネット LED ステータスインジケータが緑色に点灯するか、緑色に点滅します。
  6. Anybus IPconfig ユーティリティから、[Scan] ボタンをクリックして、Anybus ベースのすべてのイーサネットインタフェースが表示されているウィンドウを更新します。新しく追加した Anybus X-gateway ハードウェアがリストに表示され、デフォルトの IP アドレス 192.168.0.1 と表示されます。
  7. Anybus X-gateway の設定を変更する必要がある場合は、リスト内の Anybus X-gateway をダブルクリックします。IP アドレスを割り当てるためのダイアログが表示されるので、DHCP を使用して IP アドレスを割り当てるか、固定 IP アドレス、サブネットマスク、デフォルトゲートウェイ、および DNS サーバを割り当てます。設定が終了したら、[Set] ボタンをクリックして続行します。
  8. 最後に、Anybus IPconfig ユーティリティから、[Scan] ボタンをクリックして、Anybus ベースのすべてのイーサネットインタフェースが表示されているウィンドウを更新します。Anybus X-gateway ハードウェアがリストに表示され、新しい IP アドレスが表示されます (IP アドレスを変更した場合)。

Anybus X-gateway の PROFIBUS ネットワーク上の Siemens PLC への接続

このセクションでは、Siemens PLC と Anybus-X gateway の間の PROFIBUS 通信の接続と確認の手順を説明します。

Anybus-X gateway は、PROFIBUS ネットワークと TCP/IP Modbus ネットワークの間でデータを交換します。これにより、In-Sight ビジョンシステムの入力と出力を Siemens PLC のプロセッサのメモリに送信することができます。これらの値は、確立後、PROFIBUS ネットワークの更新レートによって定義される間隔で同期されます。

注意: 詳細については、HMS Anybus-X のマニュアル (『Anybus-X Generic Gateway User Manual』、『Anybus-X Ethernet Network Interface Addendum』、および『Anybus-X PROFIBUS Slave Network Interface Addendum』) を参照してください。これらのマニュアルは、HMS の Web サイト (www.hms-networks.com) からダウンロードできます。

Anybus X-gateway との PROFIBUS 通信のセットアップ

Siemens コントローラと Anybus X-gateway 間の PROFIBUS 接続をセットアップするには、まず、Siemens の HW Config ツールを使用して、Anybus X-gateway をコントローラのハードウェア構成に追加する必要があります。

  1. SIMATIC マネージャを開き、PLC のプロジェクトをロードします。
  2. [SIMATIC 300] または [SIMATIC 400] ノードを選択して、オブジェクトリストの [Hardware] ノードをダブルクリックします。

  3. Siemens の HW Config ツールが表示されます。PROFIBUS ノードをコントローラに追加するためには、ハードウェア構成図に PROFIBUS システムが存在する必要があります。ハードウェア構成図に PROFIBUS:DP マスタシステムがない場合は、次の手順で追加します。
  1. ラック構成内のコントローラのスロットから DP または MPI/DP モジュールを探して、ダブルクリックします。
  2. [Properties] ダイアログの [Operating Mode] タブで、[DP Master] ラジオボタンが選択されていることを確認します。また、[General] タブで、インタフェースタイプが [PROFIBUS] に設定されていることを確認します。
  3. デバイスのアドレスを変更する必要がある場合は、[Properties] ボタンをクリックします。
  4. リストビューから PROFIBUS サブネットを選択して、[Properties] ボタンをクリックします。必要な場合は、ネットワークの名前を変更し、[Transmission Rate] および [Highest PROFIBUS Address] を変更します。
  5. [OK] ボタンをクリックして、ダイアログに加えた変更を確定します。
  6. PROFIBUS:DP マスタシステムが図に表示されます。

  4. 初めて Anybus X-gateway を PROFIBUS ネットワークに追加した場合は、HMS Industrial Networks AB Anybus X-gateway GSD ファイルをインストールする必要があります。このファイルの最新バージョンは、HMS の Web サイトからダウンロードするか、HMS に直接問い合わせて入手することができます。次の手順を実行して、Anybus X-gateway GSD ファイルをインストールします。
  1. HW Config ツールのメニューから、[オプション] → [Install GSD Files] を選択します。
  2. [Browse] ボタンをクリックして、HMS_1013.GSD ファイルがある GSD フォルダを選択します。
  3. [Select All] ボタンを押し、[Install] ボタンをクリックして、Anybus X-gateway 用のハードウェア記述をインストールします。
  5. Anybus X-gateway デバイスを PROFIBUS ネットワークに追加するには、ハードウェアカタログから Anybus-S PROFIBUS DP-V1 ノードを指定します ([PROFINET DP] → [Additional Field Devices] → ツリー内の [General] ノードにあります)。Anybus-S PROFIBUS DP-V1 デバイスのインスタンスをハードウェア構成内の PROFIBUS DP マスタシステムにドラッグします。

  6. PROFIBUS ノードのアドレスを、接続先の Anybus X-gateway デバイスのアドレスに設定します (Anybus X-gateway Profibus ノードのアドレスは、Anybus X-gateway 上のロータリ式 PROFIBUS ノードアドレススイッチを使用して設定します)。
  7. Anybus X-gateway デバイスが、指定したアドレスで PROFIBUS:DP マスタシステムに表示されます。
  8. デバイスの名前を変更するには、構成内のノードをダブルクリックして、[Designation] フィールドを新しい名前に変更します。

  9. 次に、PROFIBUS ネットワークの入出力バイト設定を設定する必要があります。Anybus X-gateway のデフォルトの入出力設定は、各ネットワークについて 20 バイト (10 ワード) です。PROFIBUS ネットワーク経由で 20 バイトの入出力すべてにアクセスするように PLC を設定するには、まず、ハードウェアカタログ内の Anybus-S PROFIBUS DP-V1 ノードを展開します。Anybus-S PROFIBUS DP-V1 ノードから「IN/OUT:8 words」モジュールを選択して、選択したモジュールをスロット 1 のグリッドにドラッグ＆ドロップします。次に、「IN/OUT:2 words」モジュールを選択して、選択したモジュールをスロット 2 のグリッドにドラッグ＆ドロップします。これにより、Anybus X-gateway で使用される PLC に 10 ワードがマップされます。

注意: 入出力 20 バイトのデフォルト設定の変更については、『Anybus-X Generic Gateway User Manual』の第 5 章を参照してください。

  10. Anybus X-gateway を PROFIBUS システムに追加した後、HW Config Utility を使用して、プロジェクトを保存およびコンパイルして、PLC にダウンロードすることができます。
  11. プロジェクトが PLC に正常にダウンロードされると、Anybus X-gateway 上の Gateway Status LED と PROFIBUS Online Status LED の両方が緑色に点灯して、PROFIBUS PLC との通信状態が正常であることを示します。

PROFIBUS 通信の確認

上記の手順で、Anybus X-gateway が Siemens プロジェクトの入出力デバイスとして追加されました。プロジェクトがコントローラにダウンロードされると、周期データ転送が開始されます。

PLC と Anybus X-gateway の間の I/O 接続が正しく行われていることを確認するには、次の手順を実行します。

  1. Siemens コントローラの操作モードを [Run] にします。
  2. オンラインモードで、HW Config ツールを開きます。Anybus X-gateway がエラーのない状態で表示されます (エラーは、Anybus X-gateway のネットワークアイコンの上の赤い線によって示されます)。これは、PROFIBUS 接続が正常に確立されたことを意味します。

接続の確立

接続エラー
  3. PROBIBUS(1): DP master system (1) ネットワークの Anybus X-gateway ボックスをダブルクリックします。[General] タブに、ステータスが「OK」または「Module available and o.k.」と表示されます。
  4. HW Config Utility で Anybus X-gateway を選択し、「IN/OUT:8 words」モジュールを右クリックして、メニューから [Monitor/Modify] を選択します。

  5. [Monitor/Modify] ダイアログの [Run conditionally] サブセクションにある [Monitor] チェックボックスをオンにします。ダイアログの右下隅に、「RUNNING」という語が表示されます。[Status value] 列には、[Address] 列にリストされている PIW 入力ワードアドレスのそれぞれのステータスコードが表示されます。

注意: 詳細については、『Anybus-X PROFIBUS Slave Network Interface Addendum』の第 3 章を参照してください。

TCP/IP Modbus 経由での Anybus X-gateway の In-Sight ビジョンシステムへの接続

このセクションでは、TCP/IP Modbus 通信を使用して Anybus X-gateway を In-Sight ビジョンシステムに接続する方法について説明します。

  • In-Sight Explorer で TCP/IP Modbus 通信をセットアップする
  • PLC から PROFIBUS 経由で In-Sight ビジョンシステムにデータを読み取る
  • In-Sight ビジョンシステムから PROFIBUS 経由で PLC にデータを書き込む

注意:
  • 詳細については、『Open Modbus/TCP Specification』 (外部リンク、インターネットアクセスが必要です。Modicon によって発行) と『InSightModbus.doc』 (Cognex サポート Web サイトから入手可能) を参照してください。
  • 次のサンプルでは、Anybus X-gateway のデフォルトの Modbus/TCP Modbus アドレスモードが有効です。これが、デフォルトの設定です。Modbus アドレスモードが無効に変更されると、0 ではなく 1024 の新規レジスタアドレスを反映するために、ProfibusGateway.cxd 内の Read Holding Registers および Write Multiple Registers QueryDevice 関数を更新する必要があります。『X-gateway Interface Addendum Ethernet Slave Interface』の第 5 章 5-1 ～ 5-4 ページを参照してください。

In-Sight Explorer で TCP/IP Modbus 通信をセットアップする

TCP/IP Modbus クライアント機能は In-Sight ビジョンシステム上で有効ですが、Anybus X-gateway が TCP/IP Modbus サーバ (スレーブ) として機能するため、このモデルでは必要ありません。

  1. In-Sight Explorer で、[In-Sight ネットワーク] ペインから、設定する In-Sight ビジョンシステムまたはエミュレータを選択します。
  2. [ファイル] メニューから [ジョブの新規作成] を選択して、新規ジョブをビジョンシステムまたはエミュレータにロードします。
  3. ［パレット] から [スニペット] タブを選択し、[通信] フォルダを展開します。In-Sight Explorer スプレッドシートのセル A2 に ProfibusGateway.cxd ファイルをロードします。そのためには、A2 を選択してから ProfibusGateway.cxd をダブルクリックするか、ファイルをセル A2 にドラッグ＆ドロップします。
  4. 新規ジョブを ProfibusGateway.job という名前でビジョンシステムまたはエミュレータに保存します。
  5. セル A5 をダブルクリックして、Anybus X-gateway の IP アドレスを入力します (必要な場合は、HMS Anybus IPconfig ソフトウェアユーティリティを実行して、Anybus X-gateway の IP アドレスを確認します)。
  6. TCP/IP Modbus 通信では、In-Sight クライアント (マスタ) のジョブに TCPDevice および QueryDevice 関数が含まれている必要があります。TCPDevice 関数は、リモートデバイス (この場合は Anybus X-gateway) と In-Sight ビジョンシステムの間にネットワーク接続を作成するために使用されます。QueryDevice 関数は、TCP/IP Modbus パケットの Modbus 関数コードコマンドを作成するために使用されます。ProfibusGateway.cxd ファイルには、セル C5 に TCPDevice 関数と次の 2 つの QueryDevice 関数が含まれています。1 つは読み取り要求用の関数 (セル B15) で、もう 1 つは書き込み要求用の関数 (セル B27) です
  7. Anybus X-gateway は、QueryDevice 関数で次の Modbus 関数コードをサポートします。
関数コード | 関数名
3 | Read multiple registers
4 | Read input registers
6 | Write single register
7 | Read exception status
8 | Diagnostics
16 | Force multiple registers
22 | Mask write register
23 | Read/Write registers
  8. セル B15 の QueryDevice 関数をダブルクリックして、パラメータ設定が次のようになっていることを確認します。

注意: Modbus パケット構造体の詳細については、『Modbus Implementation Guide』バージョン 1.0b (外部リンク、インターネットアクセスが必要) を参照してください。

パラメータ入力番号 | パラメータ入力 名 | パラメータ入力値 | 説明
1 | Event | $A$15 | [イベント] ボタンのセル参照。
2 | Device | $C$5 | セル C5 の TCPDevice 関数のセル参照。
3 | Data | 0 | Modbus ヘッダ、トランザクション識別子、上位バイト = 0。
4 | Data | 0 | Modbus ヘッダ、トランザクション識別子、下位バイト = 0。
5 | Data | 0 | Modbus ヘッダ、プロトコル識別子、上位バイト = 0。
6 | Data | 0 | Modbus ヘッダ、プロトコル識別子、下位バイト = 0。
7 | Data | 0 | フィールド長、上位バイト = 0。
8 | Data | 6 | フィールド長、下位バイト = 6 (後続のバイト数)。
9 | Data | 0 | ユニット ID、バイトは使用されない = 0。
10 | Data | $C$12+3 | Modbus 関数コードバイト。この例では、この入力は 3 または 4 です。 注意: Modbus 関数コードバイトが 3 に設定されると、In-Sight は保持レジスタ (TCP/IP Modbus 経由で書き込まれたデータ) を読み取ります。Modbus 関数コードバイトが 4 に設定されると、In-Sight は入力レジスタ (PROFIBUS 経由で書き込まれたデータ) を読み取ります。
11 | Data | 0 | Modbus 参照アドレス、上位バイト = 0。 注意: 入力レジスタは、Read multiple registers (関数コード 3) を使用してアドレス 1024 から、または Read input registers (関数コード 4) を使用してアドレス 0 から読み取ることができます。
12 | Data | 0 | Modbus 参照アドレス、下位バイト = 0。 注意: 入力レジスタは、Read multiple registers (関数コード 3) を使用してアドレス 1024 から、または Read input registers (関数コード 4) を使用してアドレス 0 から読み取ることができます。
13 | Data | 0 | ワード (レジスタ) カウント、上位バイト = 0。
14 | Data | $B$8 | ワード (レジスタ) カウント、下位バイト。この例では、この入力は 1、2、3、5、または 8 です。
  9. Anybus X-gateway からの TCP/IP Modbus 応答パケットは、QueryDevice 関数のバイナリ構造体に保存されます。これらの戻り値は、In-Sight Explorer で BGetInt 関数によって読み取られます。この関数は、バイナリ構造体の特定のバイトから整数値を返し、応答の形式は次のとおりです。
バイト番号 | Modbus 応答 | 説明
バイト 7 | Modbus 関数コード | この例では、3 または 4 です。コマンドが失敗した場合は、128 が関数コードに追加されます (返される値は、131 または 132 になります。セル E15 を参照)。
バイト 8 | バイトカウント | この例では、2 つのレジスタ (ワード) = 4 バイト。セル E15 を参照。
バイト 9/10 | レジスタ 0 の値 | これらの値は 2 バイト形式です。ProfibusGateway.cxd ファイルでは、セル D18 の BGetInt 関数は、バイト 9 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
バイト 11/12 | レジスタ 1 の値 | これらの値は 2 バイト形式です。ProfibusGateway.cxd ファイルでは、セル D19 の BGetInt 関数は、バイト 11 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
バイト 13/14 | レジスタ 2 の値 | これらの値は 2 バイト形式です。ProfibusGateway.cxd ファイルでは、セル D20 の BGetInt 関数は、バイト 13 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
バイト 15/16/17/18 | 浮動小数点数を格納するレジスタ 3 および 4 の値 | これらの値は浮動小数点形式です。ProfibusGateway.cxd ファイルでは、セル D21 の BGetInt 関数は、バイト 15 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
バイト 19/20/21/22/23/24 | 文字列を (バイト配列で) 格納するレジスタ 5、6、および 7 の値 | これらの値は文字列形式です。ProfibusGateway.cxd ファイルでは、セル D22 の BGetInt 関数は、バイト 19 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
  10. セル B27 の QueryDevice 関数 (書き込み要求用) は、要求パケットおよび応答パケットと同じようにフォーマットされます。

PLC から PROFIBUS 経由で In-Sight ビジョンシステムにデータを読み取る

このモデルによって提供される例が示すように、Anybus X-gateway の入力バッファは、読み取られるデータソースです。このバッファは、In-Sight ビジョンシステム (TCP/IP Modbus ネットワーク上) によって要求された PLC (PROFIBUS ネットワーク上) からのデータを保持します。

  1. 「In-Sight Explorer で TCP/IP Modbus 通信をセットアップする」セクションで作成した In-Sight Explorer ジョブを使用して続行します。
  2. SIMATIC マネージャを開き、PLC のプロジェクトをロードします。必要な場合は、プロジェクトを Siemens コントローラにダウンロードして、[Operating Mode] を [Run] に設定します。
  3. Simatic Manager で、PLC を右クリックして、[Variable Table] メニューから [Insert New Object] を選択して、新しい変数テーブルを作成します。新しいテーブルに名前を付けて、開きます。
  4. 次の表に示すように、テーブルに 5 つの項目を追加します。
オフセット | アドレス | 表示形式
0 | PQW 385 | DEC
+2 | PQW 387 | DEC
+4 | PQW 389 | DEC
+6 | PQD 391 | FLOATING_POINT
+10 | PQD 395 | CHARACTER
+14 | PQD 399 | CHARACTER

注意: アドレスは、PQW 385 の出力アドレスである「IN/OUT:8 words」モジュールに依存します。「IN/OUT:8 words」モジュールが別の出力アドレスを使用している場合は、指定したオフセットを出力アドレスに適用して、正しい出力アドレスを返してください。

  5. SIMATIC Manager で、[PLC] → [Connect To] メニューから [Configured PLC] を開きます。システムがオンラインになり、変数テーブルに入力されたアドレスをモニタします。
  6. 変数テーブルに追加した 5 つの項目の値を入力して、[Variable] メニューの [Activate Modify Values] を選択します。

  7. ビジョンシステムをオンラインに設定します。
  8. ProfibusGateway.cxd ファイルのセル A8 で、レジスタ数として 8 を選択します (16 バイト)。
  9. セル C12 で、[Read Registers] ドロップダウンリストから [Input Registers] を選択します。

  10. セル A15 の [Read] ボタンをクリックして、結果を更新します。変数テーブルに入力された値を反映して、セル D18 ～ D22 の値が変わります。

In-Sight ビジョンシステムから PROFIBUS 経由で PLC にデータを書き込む

このモデルによって提供される例が示すように、Anybus X-gateway の出力バッファは、書き込まれるデータソースです。このバッファは、In-Sight ビジョンシステム (TCP/IP Modbus ネットワーク上) によって PLC (PROFIBUS ネットワーク上) に書き込まれるデータを保持します。

  1. ProfibusGateway.cxd ファイルのセル A8 で、レジスタ数として 8 を選択します (16 バイト)。
  2. セル C12 で、[Read Registers] ドロップダウンリストから [Holding Registers] を選択します。これは、In-Sight ジョブ内から書き込まれるのと同じレジスタからデータを読み取ります。
  3. 次に、アプリケーションに応じた有効なデータ型になるように、セル D30 ～ D34 の値を調整します。セル D30 ～ D32 の 3 つの整数 (最小値は -32768 であり、最大値は 32767 なので、この範囲内の有効な整数を入力する必要があります)、セル D33 の浮動小数点数値 (最小値は ±1.175495e-38 であり、最大値は ±3.402823e+38 なので、この範囲内の有効な浮動小数点数値を入力する必要があります)、およびセル D34 の 6 バイトの文字列 (6 文字/バイトより長い文字列を入力することはできません) として、EditInt セルに値を入力します。

  4. セル A27 の [Write] ボタンをクリックして、In-Sight Explorer スプレッドシートの結果を PLC に書き込みます。

  5. セル A15 の [Read] ボタンをクリックします。セル D30 ～ 34 に入力した値を反映して、セル D18 ～ D22 の値が変わります。
  6. SIMATIC マネージャを開き、PLC のプロジェクトをロードします。必要な場合は、プロジェクトを Siemens コントローラにダウンロードして、[Operating Mode] を [Run] に設定します。
  7. Simatic Manager で、PLC を右クリックして、[Variable Table] メニューから [Insert New Object] を選択して、新しい変数テーブルを作成します。新しいテーブルに名前を付けて、開きます。
  8. 次の表に示すように、テーブルに 5 つの項目を追加します。
オフセット | アドレス | 表示形式
0 | PIW 325 | DEC
+2 | PIW 327 | DEC
+4 | PIW 329 | DEC
+6 | PID 331 | FLOATING_POINT
+10 | PID 335 | CHARACTER
+14 | PIW 339 | CHARACTER

注意: アドレスは、PＩW 325 の入力アドレスである「IN/OUT:8 words」モジュールに依存します。「IN/OUT:8 words」モジュールが別の入力アドレスを使用している場合は、指定したオフセットを入力アドレスに適用して、正しい入力アドレスを返してください。

  9. SIMATIC Manager で、[PLC] → [Connect To] メニューから [Configured PLC] を開きます。システムがオンラインになり、変数テーブルに入力されたアドレスをモニタします。In-Sight Explorer スプレッドシートに入力された値を反映して、変数テーブルの値が変わります。

注意: Siemens S7 PLC は、1 バイト、1 ワード、1 ダブルワードとしてデータにアクセスすることで、1 バイト、2 バイト、または 4 バイトを一貫して I/O 画像から直接読み出すことができます。ただし、4 バイトより大きなバイトをデータ文字列内で読み出す場合は、System Function Blocks SFC14 および SFC15 を使用する必要があります。詳細については、HMS マニュアル『How to Configure an Anybus PROFIBUS Slave Module with a Siemens Step 7 PLC』のセクション 5.2.2 を参照してください。このマニュアルは、HMS の Web サイトのサポートページ (www.hms-networks.com) から入手可能です。

関連項目

Anybus X-gateway


DataChannel による通信

In-Sight 通信リファレンス

In-Sight の DataChannel は、英数字のデータと画像を開発者独自のグラフィカルユーザインタフェース (GUI) アプリケーションに統合します。DataChannel によって、In-Sight ビジョンシステムを TCP/IP サーバとして使用し、GUI アプリケーションを TCP/IP クライアントとして使用することができます。この構成によって、画像とデータを In-Sight ビジョンシステムから PC に転送する高速で効率的なメカニズムが実現されます。

DataChannel への接続の確立

カスタム GUI アプリケーションで DataChannel を使用するには、次の手順に従ってください。

  1. In-Sight ビジョンシステムへの TCP 接続を開きます。

    注意:DataChannel 用のデフォルトの TCP/IP ポート番号は 50000 です。別のポート番号を指定する必要がある場合は、ネイティブモードの Put Portnum コマンドを使用してください。

  2. クライアントからポートに接続します。

  3. 接続が確立したら、クライアントは有効なユーザ名とパスワードを使用してログインする必要があります。デフォルトのログインユーザ名は「admin」、パスワードは空白文字列です。In-Sight ビジョンシステムでは、ログインの画面は表示されません。ユーザ名とパスワードの両方の後にキャリッジリターン/ラインフィード (CRLF) を送信する必要があります。

    ユーザ名とパスワードのいずれかが 5 秒以内に In-Sight ビジョンシステムに送信されないか、無効である場合は、次のメッセージが表示され、接続は終了します。

    "<Prompt><Accept>Invalid Password</Accept></Prompt>" + CRLF

    ユーザ名とパスワードが有効な場合は、次のようなウェルカムメッセージが送信されます。

    "<Prompt><Accept>ok</Accept><DataSession>0</DataSession><OpcSession>0</OpcSession><ImageSession>0</ImageSession>
    <SystemType>22</SystemType><Screen><High>480</High><Wide>640</Wide><Color>0</Color></Screen>
    <ToolEnabledBits>FEF6FFFF300000000000000000000000</ToolEnabledBits></Prompt>" + CRLF

    注意:
    • 高解像度 In-Sight ビジョンシステムにログオンした場合、High と Wide の値は、それぞれ 768 と 1024、または 1200 と 1600 です。
    • OpcSession は COGNEX 技術者のみが使用します。

    • Closed SystemType は、In-Sight ビジョンシステムのハードウェアタイプを示します。

      In-Sight モデル

      SystemType 出力
      In-Sight 1720

      62、63、64、65
      In-Sight 1721

      32、54、55、56、84
      In-Sight 1722

      46、57、58、59
      In-Sight 1740

      105
      In-Sight 1741

      106
      In-Sight 1742

      119

      In-Sight 5100

      16、17、19、22、36、44、48、52、102

      In-Sight 5100C

      24、61、109、111

      In-Sight 5110

      20、26、42、49

      In-Sight 5400

      14、40、41

      In-Sight 5400C

      33、109、111

      In-Sight 5400S

      107

      In-Sight 5400CS

      109

      In-Sight 5401

      18、34

      In-Sight 5403

      38

      In-Sight 5403S

      112

      In-Sight 5410

      21、37、47

      In-Sight 5410S

      107

      In-Sight 5411

      35

      In-Sight 5413

      43

      In-Sight 5600

      53、118

      In-Sight 5603

      60、120

      In-Sight 5604

      88、114

      In-Sight 5605

      100

      In-Sight 5610

      67

      In-Sight 5613

      66

      In-Sight 5614

      98

      In-Sight 5615

      101

      In-Sight Micro 1020

      79

      In-Sight Micro 1050

      80

      In-Sight Micro 1100

      76

      In-Sight Micro 1100C

      87

      In-Sight Micro 1110

      81

      In-Sight Micro 1400

      77

      In-Sight Micro 1400C

      86、125
      In-Sight Micro 1402 | 127
      In-Sight Micro 1403

      78、124

      In-Sight Micro 1403C

      89、126
      In-Sight Micro 1410

      82
      In-Sight Micro 1412 | 127

      In-Sight Micro 1413

      83

      In-Sight 7010

               129

      In-Sight 7010C

               133

      In-Sight 7020

               129
      In-Sight 7050 | 129
      In-Sight 7200 | 129
      In-Sight 7200C | 133
      In-Sight 7210 | 129
      In-Sight 7230 | 129
      In-Sight 7400 | 129
      In-Sight 7400C | 133
      In-Sight 7410 | 129
      In-Sight 7430 | 129
      In-Sight 7402 | 129
      In-Sight 7402C | 133
      In-Sight 7412 | 129
      In-Sight 7432 | 129

    • ToolEnabledBits は COGNEX 技術者のみが使用します。

    ユーザ名とパスワードが無効の場合、In-Sight は次のメッセージを送信して接続を閉じます。

    "<Prompt><Accept>Invalid Password</Accept></Prompt>" + CRLF

    In-Sight ビジョンシステムへのほかのアクティブなネットワーク接続がない場合は、最大 6 つの DataChannel 接続を同時に確立できます。既に 6 つのアクティブなネットワーク接続が存在する場合、In-Sight ビジョンシステムは次のメッセージを送信します。

    "<Prompt><Accept>Too many connections</Accept></Prompt>" + CRLF

  4. ログインに成功した後、クライアントは、DataChannel 経由で受信する情報のタイプを指定する必要があります。クライアントは、画像情報を受信する場合は「IMG」+CRLF、データを受信する場合は「DAT」+CRLF を送信する必要があります。スプレッドシートが更新されるたびに、画像またはデータが DataChannel 経由で送信されます。ログインと同様に、いずれかのコマンドが 5 秒以内に In-Sight ビジョンシステムに送信されなかった場合は、次のメッセージが表示され、接続は終了します。

    "<Prompt><Accept>Connection Closed</Accept></Prompt>" + CRLF

  5. データを送信するように接続が設定されている場合は、ネイティブモードの Put Watch コマンドを使用して出力セルを指定します。

    注意:
    • In-Sight のスプレッドシートが変更された場合は常に、Put Watch コマンドを送信する必要があります。
    • DataChannel は、数値または文字列のデータが含まれている任意のセルをモニタできます。データ出力は、XML フォーマットで送信されます。データは、モニタ対象のセルが「評価」(計算) されるか、セル内の値が変更されたときのみ、そのセルから送信されます。定数値はほかのセルに依存しないので (ほかのセルの値が変化しても、定数セルの値は変化しません)、スプレッドシートへの挿入後、一度しか評価されません。セルの評価と依存関係の詳細については、ここをクリックしてください。
    • Put Watch コマンドを送信する代わりに、SetWatch 関数を In-Sight のスプレッドシートに挿入すると、情報を DataChannel に自動送信することができます。
    • AcqSeqNum の値は、データ出力を、対応する画像出力に一致させるために使用できます。スプレッドシートが、イベントによって、または手動トリガによって更新されると、2 サイクルが発生します。そのほかの取り込みトリガは、1 サイクルのみを出力します。2 サイクルが発生した場合、2 番目のサイクルは、データ出力を、対応する画像出力に一致させるために使用されます。

Closed Telnet クライアントによる DataChannel のテスト

  1. コマンドプロンプトを開きます。コマンドプロンプトから、Telnet クライアントを使用してビジョンシステムにログオンします。ログオンするときには、ホスト名または IP アドレスとポート番号 23 (予約済みのネイティブモードコマンドポート) を指定します。例: telnet is5100_010203 23

  2. Telnet クライアントから、次のコマンドを入力します。EV B0 1 Count($A$0,9999999,0,0)Count 関数が、デフォルトのパラメータを使用してセル B0 に挿入されます。

  3. Telnet クライアントから、次のコマンドを入力します。Put Watch B000 1

  4. コマンドプロンプトから、2 番目の Telnet セッションを開始して、In-Sight ビジョンシステムにログオンします。ログオンするときには、ホスト名または IP アドレスとポート番号 50000 (デフォルトの DataChannel ポート) を指定します。例: telnet is5100_010203 50000

  5. 2 番目の Telnet セッションから、「admin」と入力して、Enter キーを押します。もう一度 Enter キーを押して、空のパスワードを適用します。

  6. 2 番目の Telnet セッションから、「DAT」と入力して、Enter キーを押します。

  7. In-Sight ビジョンシステムで画像を一度取り込みます。2 番目の Telnet プログラムが受信したデータが表示されます。

Closed データ出力フォーマット

データ出力は、XML フォーマットで送信されます。前述の例を使用した Telnet セッションからの出力の例を次に示します。In-Sight ビジョンシステムは、手動で 2 度トリガされました。

注意:スプレッドシートが、イベントによって、または手動トリガによって更新されると、2 サイクルが発生します。そのほかの取り込みトリガは、1 サイクルのみを出力します。

Admin

******

<Prompt><Accept>ok</Accept><DataSession>0</DataSession><OpcSession>0</OpcSession><ImageSession>0</ImageSession>
<SystemType>22</SystemType><Screen><High>480</High><Wide>640</Wide><Color>0</Color></Screen>
<ToolEnabledBits>FEF6FFFF300000000000000000000000</ToolEnabledBits></Prompt>

dat

<Cycle AcqSeqNum="1">

</Cycle>

<Cycle AcqSeqNum="2">

<Cell Id="B0">

  <Float>1</Float>

</Cell>

</Cycle>

<Cycle AcqSeqNum="2">

</Cycle>

<Cycle AcqSeqNum="3">

<Cell Id="B0">

  <Float>2</Float>

</Cell>

</Cycle>

Closed 画像出力フォーマット

画像出力は、ヘッダと本体の 2 つの部分で構成されます。画像出力は常にビッグエンディアン形式のバイナリです (PC はリトルエンディアンなので、アプリケーションでエンディアン形式を変換する必要があります)。In-Sight はセル A0 からデフォルトの画像を送信し、常にフル画像を送信します。ヘッダの後に本体が続きます。本体は、row0 から始まる未処理のピクセルデータです。ピクセルデータにアクセスするには、アプリケーションはヘッダの「オフセット」値を使用する必要があります。画像データは、ピクセル 0.0 から始まる、列 - 行に並べられたピクセルで構成されます。グレースケールビジョンシステムの場合、ピクセルは 8 ビットのグレースケール値です。カラービジョンシステムは、0 = グレースケール画像、1 = ベイヤー画像、および 4 = 24 ビットカラー画像の 3 種類のうちいずれか 1 つを出力するようにプログラムできます。

注意: 24 ビットカラーイメージはピクセル 0,0 から行単位で転送されます。各ピクセルは、3 バイト (24 ビット) により表されます。先頭ビットは青、2 つめのビットは緑、3 つめのビットは赤です。

ヘッダのフォーマット:

unsigned integer 32 bits | Length; | // length of packet including raw img // data, excluding 'Length' itself.
unsigned integer 16 bits | Offset; | // offset from 'Ver' field to the raw image pixel data.
unsigned integer 16 bits | Ver; | // version = 0.
unsigned integer 16 bits | ImgHigh,ImgWide; | // original high x wide in pixels.
unsigned integer 16 bits | Row,Col; | // row & col of upper-left corner for // this page, in original image scale.
unsigned integer 16 bits | High,Wide; | // high & wide of this page in pixel.
unsigned integer 16 bits | Rsub, Csub; | // image sub-sampling rate.
unsigned integer 16 bits | CellRow,CellCol; | // cell-coordinates for the image.0.0 for cell A0.
unsigned integer 16 bits | RowIdx,ColIdx; | // interleaved index = 0.0 (for future use).
unsigned integer 32 bits | Color; | // RGB bits - should be 0 for greyscale, 1 for Bayer or 4 for 24-bit color.
unsigned integer 32 bits | AcqSeqNum; | // Acquisition Sequence Number
unsigned integer 32 bits | Rsrvd[1]; | // reserved.
signed character 8 bits | Tag[16]; | // optional tag string - null // terminated (for future use).


SetWatch

DataChannel による通信

In-Sight 通信リファレンス

スプレッドシートが更新されたときに、指定したセルの範囲に含まれる値を DataChannel に送信します。

シンタックス: SetWatch(Upper-Left-Cell,Lower-Right-Cell,Mode)

注意: SetWatch 関数は、［関数の挿入］ ダイアログの関数リストには表示されません。SetWatch 関数は手動で入力する必要があります。

入力

Upper-Left-Cell

セルの範囲内の左上隅のセルを指定します。

Lower-Right-Cell

セルの範囲内の右下隅のセルを指定します。

モード

スプレッドシートが更新された後に DataChannel にデータを送信する条件を指定します。

0 = 無効 | 関数を無効にします。
1 = 変更された場合 | スプレッドシートが変更された場合にのみデータを送信します。
2 = 常に | 常にデータを送信します。

出力

戻り値

選択したモードの値。


EtherNet/IP による通信

Ethernet/IP による通信

In-Sight 通信リファレンス

EtherNet/IP は、Ethernet TCP/IP および UDP/IP 層の上に実装されるアプリケーションレベルのプロトコルです。共通の CIP (Control and Information Protocol) を通じて、ControlNet および DeviceNet とオブジェクトモデルを共有しています。このプロトコルによって、Ethernet 経由でのデータと I/O の転送が可能になります。

EtherNet/IP は、標準の Ethernet 物理層と、標準の Ethernet プロトコルおよびインターネットプロトコル (TCP/IP および UDP/IP) を使用して、データを送信します。TCP/IP は 2 地点間トポロジであるため、EtherNet/IP はこの層を明示的なメッセージングにのみ使用します。すなわち、データフィールドでプロトコル情報とサービス実行に関する命令の両方を伝えるメッセージにのみ使用します。明示的メッセージングでは、ノードは各メッセージを解釈して、要求されたタスクを実行し、応答を生成する必要があります。この種類のメッセージは一般に、設定、診断、およびイベントデータの送信に使用されます。

UDP/IP プロトコル層は、マルチキャスト機能を備え、非明示的メッセージングに使用されます。非明示的メッセージングでは、データフィールドはリアルタイム I/O データのみを含みます。データの意味は接続確立時に事前定義されるので、プロトコル情報は送信されません。このため、実行時のノードの処理時間が最小化されます。非明示的メッセージは、短く、オーバヘッドの低いメッセージであり、コントローラに必要なタイムクリティカルなパフォーマンスを可能にします。

In-Sight システムは、一度に 1 つの I/O クライアント (ホストの In-Sight ビジョンシステムと通信する PLC デバイス) からの明示的または非明示的メッセージをサポートします。

  • In-Sight オブジェクトモデル
  • ビジョンオブジェクトの属性
  • ビジョンオブジェクトのサービス
  • アセンブリオブジェクト
  • EtherNet/IP の関数
  • EtherNet/IP による通信

In-Sight オブジェクトモデル

EtherNet/IP ネットワークでは、In-Sight ビジョンシステムはサーバとして機能し、明示的および非明示的 I/O メッセージングの両方をサポートします。例えば、検査データを、明示的メッセージによって、または非明示的接続によって、クライアントに転送することができます。非明示的な接続は、画像取り込み、トリガ、およびスプレッドシートのイベントの制御に使用することもできます。

識別オブジェクト、Ethernet リンクオブジェクト、TCP/IP オブジェクト、およびそのほかの内部オブジェクトは、EtherNet/IP 仕様によって必須とされています。アセンブリオブジェクトのさまざまなインスタンスは、EtherNet/IP クライアントとアプリケーションデータを交換するために使用されます。ビジョンオブジェクトは、In-Sight ビジョンシステムに固有の情報を提供するために、In-Sight システムによって定義されます。これがどのように行われるかという詳細については、「ビジョンオブジェクトの属性とサービス」の節を参照してください。In-Sight ビジョンシステムによって提供される現在のオブジェクトモデルを下の図に示します。

  • 識別オブジェクト: このオブジェクトは、デバイスの識別情報とデバイスに関する全般情報を提供します。
  • Ethernet リンクオブジェクト: Ethernet リンクオブジェクトは、Ethernet 802.3 通信インタフェースについて、リンク固有のカウンタとステータス情報を保持します。
  • TCP/IP オブジェクト: TCP/IP オブジェクトは、デバイスの TCP/IP ネットワークインタフェース設定を照会 (可能な場合は設定も) するメカニズムを提供します。該当する項目の例としては、デバイスの IP アドレス、ネットワークマスク、ゲートウェイアドレスなどがあります。
  • ビジョンオブジェクト: ビジョンオブジェクトには、In-Sight ビジョンシステム固有のすべてのサービスと属性が含まれます。これには、画像取り込み、検査、ジョブの変更、および In-Sight Explorer スプレッドシートとの通信などが含まれます。
  • アセンブリオブジェクト: アセンブリオブジェクトは、複数のオブジェクトの属性をバインドして、各オブジェクト間でのデータの送受信を 1 つの接続でできるようにします。アセンブリオブジェクトを使用すると、入力データまたは出力データをバインドすることができます。「入力」と「出力」という用語は、ネットワーク側から見た定義です。「入力」はネットワーク上にデータを生成し、「出力」はネットワークからデータを消費します。

ビジョンオブジェクトの属性

この節では、EtherNet/IP ビジョンオブジェクト内に存在するさまざまな属性とサービスについて説明します。

クラスコード: 78 Hex - このオブジェクトは、In-Sight ビジョンシステムに対して可能なすべての操作をモデル化します。

インスタンス属性

属性 ID | アクセスルール | 名前 | データ型 | 属性の説明
6 | Get | Online | BOOL | 0 = オフライン 1 = オンライン
7 | Get | OfflineReason | BYTE | 0 = オンライン 1 = プログラミング 2 = ディスクリートオフライン 3 = Comm. Offline 4-255 = 予約済み
8 | Set | ForceOffline | BOOL | 1 = In-Sight ビジョンシステムをオフラインにします。
9 | Set | AcqTriggerEnable | BOOL | 0 = 取り込みトリガは無効です。Trigger Ack を 0 にリセットします。 1 = 取り込みトリガは有効です。
10 | Set | AcqTrigger | BOOL | AcqTriggerEnable が真のとき、In-Sight ビジョンシステムは AcqTrigger が 0 から 1 に変わると画像を取り込みます。
11 | Get | AcqStatusRegister | BYTE | ビット 0: Trigger Ready ビット 1: Trigger Ack ビット 2: Acquiring ビット 3: Missed Acquisition ビット 4 ～ 7: 予約済み
12 | Set | UserData | バイト配列 | 検査への入力として使用できるユーザ定義データ。
13 | Set | ResultsBufferEnable | BOOL | ResultsBufferEnable が真のとき、ResultsAck 属性が真に設定されるまで、検査結果のバッファリングを有効にします。
14 | Get | InspectionStatusRegister | BYTE | ビット 0:Inspecting ビット 1: Inspection Completed ビット 2: Results Buffer Overrun ビット 3: Results Valid ビット 4: Job Loading ビット 5: Job Load Completed ビット 6: Job Load Failed ビット 7: 予約済み
15 | Set | InspectionResultsAck | BOOL | クライアントが検査結果を受信したことを確認応答します。
16 | Get | InspectionResults | 構造体 | 最後の検査結果。
 |  | InspectionID | UINT | 検査カウンタ。
 |  | 予約済み | UINT | 予約済みフィールド。
 |  | InspectionResults | バイト配列 | 最後の検査結果。
17 | Get | InspectionResultString | STRING | ユーザ定義の結果文字列。
18 | Set | SoftTrigger | BYTE | ビット 0:ソフトトリガ 0 ビット 1: ソフトトリガ 1 ビット 2:ソフトトリガ 2 ビット 3:ソフトトリガ 3 ビット 4:ソフトトリガ 4 ビット 5:ソフトトリガ 5 ビット 6:ソフトトリガ 6 ビット 7:ソフトトリガ 7
19 | Set | JobID | INT | 現在ロードされているジョブの ID 番号。または、現在のジョブに ID がない場合は -1。 この値を設定すると (1 ～ 154)、関連付けられた ID を持つジョブがロードされます。
20 | Set | JobName | STRING | 現在ロードされているジョブのファイル名。または、ファイル名が不明の場合は空の文字列。 この値を設定すると、その関連付けられたファイル名を持つジョブがロードされます。

オンライン属性

オンライン属性は、In-Sight ビジョンシステムがオンラインまたはオフライン状態であることを示します。In-Sight ビジョンシステムがオフラインのときには、OfflineReason 属性を使用して、In-Sight ビジョンシステムがオフラインになっている原因を調べることができます。

OfflineReason 属性の値

Offline Reason | 名前 | 説明
0 | Online | ビジョンシステムはオンラインです。
1 | Programming | ビジョンシステムのジョブが変更されています。
2 | Discrete Offline | ディスクリート信号によって、ビジョンシステムがオフラインになっています。
3 | Comm.Offline | 通信プロトコルによって、ビジョンシステムがオフラインになっています。

注意:　複数のデバイスから In-Sight ビジョンシステムはオフラインにできます。このフィールドでは最小限のチャネルステータスを返します。

ForceOffline 属性を使用すると、In-Sight ビジョンシステムをオフライン状態にできます。In-Sight ビジョンシステムがほかの理由でオフラインになっている場合、ForceOffline 属性が真に設定されると、OfflineReason 属性は Comm. Offline に設定されます。

画像取り込み属性

注意: In-Sight ビジョンシステムを、ネイティブモードコマンドを介した PLC/モーションコントローラから画像取り込みトリガを受け入れるように設定する場合は、 [イベント] コードを 8 に設定 (SW8) した SetEvent and Wait 関数を使用することを推奨します。これによって、ビジョンシステムは、画像取り込みと検査の両方が完了してから「完了」レスポンスを PLC/モーションコントローラに送り返すようになるため、前の検査結果が PLC/モーションコントローラに送信されることはなくなります。ビジョンシステムからの「完了」レスポンスを使用して、検査結果の読み取り要求を送信する条件付き PLC ロジックを作成することもできます。

画像取り込み属性を使用することによって、画像を取り込むようにビジョンオブジェクトをトリガすることができます。ビジョンオブジェクトの画像取り込み属性をリセットするには、AcqTriggerEnable 属性が偽に設定されている必要があります。ただし、AcqStatusRegister が 0 の場合を除きます。この場合、AcqTriggerEnable 属性を真に設定して、ビジョンオブジェクト経由の取り込みを有効にすることができます。Acquisition Trigger がトリガを受け入れる準備ができると、AcqStatusRegister の Trigger Ready ビットがセットされます。

AcqTriggerEnable 属性が真に設定されている間、ビジョンオブジェクトは、AcqTrigger 属性が 0 から 1 に変わったことを検出するたびに、画像の取り込みを開始します。非明示的メッセージングによってこれを設定するときには、変更がビジョンオブジェクトによって確実に検出されるように、AcqStatusRegister の Trigger Ack ビットによって同じ値が検出されるまで、属性が変更状態に保たれる必要があります。

注意:明示的メッセージングを使用するときには、変更は常に検出されるので、この必要はありません。

画像取り込み時には、AcqStatusRegister の Trigger Ready ビットがクリアされて、Acquiring ビットがセットされます。画像取り込みが完了すると、Acquiring ビットはクリアされます。画像取り込みシステムが次の新しい画像取り込みを開始する準備ができると、Trigger Ready ビットが再びセットされます。

ほかの方法で画像取り込みがトリガされた場合、AcqStatusRegister の Acquiring および Missed Acquisition ビットはアクティブなままです。

検査結果属性

画像取り込みトリガの結果として取り込まれた画像は、検査のためにキューに入れられます。画像の検査の実行中は、InspectionStatusRegister の Inspecting ビットがセットされます。検査が完了すると、Inspecting ビットはクリアされ、Inspection Completed ビットがトグルされます。

ResultsBufferEnable 属性によって、ビジョンオブジェクトでの検査結果の取り扱い方が決まります。ResultsBufferEnable 属性が偽に設定された場合、検査結果は直ちに InspectionResults 属性に入れられます。

ResultsBufferEnable 属性が真に設定された場合は、InspectionResultsAck 属性を真に設定することによって確認応答されるまで、前の検査結果が InspectionResults 属性に入ったままになります。Results Valid ビットがクリアされたら、新しい結果を InspectionResults 属性に入れることができるようにするため、InspectionResultsAck 属性を偽に設定する必要があります。これを使用して、ビジョンオブジェクトとクライアントの間で結果を取得するためのハンドシェークを確立することができます。

InspectionStatusRegister の動作

Inspection Status Register ビット | ビット名 | バッファリングが無効な場合の結果 | バッファリングが有効な場合の結果
0 | Inspecting | 画像を検査しているときにセットされます。 | 画像を検査しているときにセットされます。
1 | Inspection Completed | 検査の完了時にトグルされます。 | 検査の完了時にトグルされます。
2 | Results Buffer Overrun | 常にクリア。 | クライアントが前の結果に確認応答しなかったために、検査結果をキューに入れることができなかったときにセットされます。検査結果が正常にキューに入れられるとクリアされます。
3 | Results Valid | 検査が開始されるとクリアされ、検査が完了するとセットされます。 | 新しい結果が InspectionResults 属性に入れられるとセットされます。InspectionResultsAck 属性を真に設定することによって結果が確認応答されるまでセットされたままです。
4 | Job Pass* | 検査が完了したときに [ジョブの PASS/FAIL] のセルが合格を示すとセットされます。そうでない場合は、クリアされたままです。 注意: Inspection Completed ビットが立つ前のジョブ PASS ビットは有効です。 | 新しい結果が InspectionResults 属性に挿入され、[ジョブの PASS/FAIL] のセルがその結果に対して合格を示すとセットされます。そうでない場合は、クリアされたままです。InspectionResultsAck 属性を真に設定することによって結果が確認応答され、ビットがクリアされるまで、状態は変化しません。 注意: Results Valid ビットがセットされる前のジョブ PASS ビットは有効です。
*Job Pass ビットは、In-Sight アドオンプロファイル (AOP) リビジョン 10 にのみ含まれます。

ジョブ属性

ビジョンオブジェクトは、JobID および JobName 属性を設定することによって、In-Sight ビジョンシステムの不揮発性フラッシュメモリに格納されたジョブをロードすることができます。ロードが失敗した場合は、セット操作も失敗します。

ビジョンオブジェクトのサービス

共通サービス

ビジョンオブジェクトは、次の共通サービスを提供します。

サービスコード | サービス名 | サービスの説明
05 Hex | Reset | ビジョンオブジェクトをリセットします。
0E Hex | Get_Attribute_Single | 指定された属性の内容を返します。
10 Hex | Set_Attribute_Single | 属性の値を変更します。

リセットサービス

リセットサービスは、ビジョンオブジェクトの画像取り込みトリガシステムをリセットし、無効にします。また、ビジョンオブジェクトの検査結果バッファリングシステムを無効にし、クリアします。

オブジェクト固有サービス

ビジョンオブジェクトは、次のオブジェクト固有サービスを提供します。

サービスコード | サービス名 | サービスの説明
32 Hex | Acquire | 1 回の画像取り込みをトリガします。
33 Hex | 予約済み | 廃止されます。
34 Hex | SendNativeCmd | ネイティブモードコマンドを In-Sight ビジョンシステムに送信します。
35 Hex | GetInspectionResults | InspectionResults 属性を取得します。
36 Hex | Transfer User Data | データをユーザデータ保持バッファの一部に転送します。
37 Hex | Set User Data | ユーザデータ保持バッファをユーザデータフィールドにラッチして、In-Sight にユーザデータへのアクセス権を与えることを、ビジョンシステムに対して通知します。

画像取り込みサービス

ビジョンオブジェクトの画像取り込みサービスは、画像取り込みシステムが画像を取り込む準備ができていた場合、画像取り込みをトリガします。画像取り込みをトリガできなかった場合は、次に画像取り込みが成功するまで、AcqStatusRegister の Missed Acquisition ビットがセットされます。

コマンドが失敗した場合、Acquire Service はベンダー固有のエラーコード 1F を返します。

SendNativeCmd サービス

SendNativeCmd サービスは、ドキュメント化されている任意のネイティブモードコマンド文字列を In-Sight ビジョンシステムに送信します。SendNativeCmd の要求データは、In-Sight ビジョンシステムに送信されるネイティブモードコマンド文字列を含む必要があります。応答データはネイティブモードコマンドの文字列結果を含みます。

SendNativeCmd 要求データのフォーマット

名前 | タイプ | 説明
Command | STRING | 処理されるネイティブモードコマンド。

SendNativeCmd 応答データのフォーマット

名前 | タイプ | 説明
Result | STRING | ネイティブモードコマンドの文字列結果。

コマンドが失敗した場合、サービスは次のベンダー固有のエラーコードの 1 つを返します。

エラーコード | 説明 | ネイティブモード 戻りコード
1 | 正しくないコマンドです。 | -
4 | 応答なし - システムはビジーです。 |
100 | コマンドは失敗しました。 | 0
101 | コマンドを実行できません。 | -1
102 |  | -2
103 |  | -3
104 |  | -4
105 |  | -5
106 |  | -6

GetInspectionResults サービス

GetInspectionResults サービス (コード 0x35) は、ビジョンオブジェクトの InspectionResults 属性からデータを読み取ります。このサービスを使用して、260 バイトのメッセージの受信をサポートしていないデバイスから InspectionResults 属性のデータを読み取ることができます。

GetInspectionResults 要求データのフォーマット

名前 | タイプ | 説明
Size | UINT | 読み取る InspectionResults 属性のバイト数。
Offset | UINT | (オプション) InspectionResults 属性へのオフセット。これは、InspectionResults 属性で読み取る最初のバイトを指定します。

GetInspectionResults 応答データのフォーマット

名前 | タイプ | 説明
Data | バイト配列 | InspectionResults 属性のデータ。

Transfer User Data コマンド

このコマンドを使用して、データをユーザデータ保持バッファの一部に転送します。ユーザデータ保持バッファは、Set User Data コマンドが発行されたときにユーザデータフィールドにラッチされます。

要求フォーマット

名前 | タイプ | 説明
Size | UINT | 書き込むユーザデータフィールドのバイト数。
Offset | UINT | ユーザデータフィールドへのオフセット。
Data | バイト配列 | ユーザデータフィールドに書き込むユーザデータ。

Set User Data コマンド

PLC はこのコマンドを使用して、ユーザデータ保持バッファをユーザデータフィールドにラッチして、In-Sight にユーザデータへのアクセス権を与えることを、ビジョンシステムに対して通知します。

アセンブリオブジェクト

入力データの I/O アセンブリデータ属性の形式は、次のとおりです。

I/O アセンブリデータ属性の形式 - 入力アセンブリ

注意:
  • Job Pass ブロック、Exposure Complete ブロック、Current Job ID (16 ビット整数) ブロックを含む入力アセンブリインスタンス 12 を使用する場合、In-Sight ソフトウェア 4.8.0 以降に付属の In-Sight アドオンプロファイル (AOP) リビジョン 10 を、RSLogix とともに PC にインストールする必要があります。
  • Acquisition ID は画像取り込みの終了時に増加し、画像とともに検査サブシステムに移動します。検査が完了する前に、RPI に応じて PLC で更新することができます。Inspection ID は、Inspection Completed ビットがトグルするときに増加します (このとき、Results Valid は高く設定され、Inspecting ビットは低くなります)。

  • インスタンス 12: In-Sight ソフトウェア 4.8.0 以降に付属の In-Sight アドオンプロファイル (AOP) リビジョン 10

    インスタンス | バイト | ビット 7 | ビット 6 | ビット 5 | ビット 4 | ビット 3 | ビット 2 | ビット 1 | ビット 0
    12 | 0 | Online | Offline Reason | Missed Acq | Acquiring | Trigger Ack | Trigger Ready
    1 予約済み

    Job Load Failed

             Job Load Completed

    Job Loading

             Results Valid

    Results

    Buffer

    Overrun

             Inspection Completed Inspecting
    2 | 予約済み
    3 予約済み Job Pass Exposure
    Complete     		予約済み
    4 | Current Job ID (16 ビット整数)
    5
    6 | Acquisition ID (16 ビット整数)
    7
    8 | Inspection ID (16 ビット整数)
    9
    10 | Inspection Result (16 ビット整数)
    11
    12 | Inspection Results 0
    ...
    499 | Inspection Results 487

  • インスタンス 11:In-Sight ソフトウェア 4.1.0 ～ 4.7.4 に付属の In-Sight アドオンプロファイル (AOP) リビジョン 4

    インスタンス | バイト | ビット 7 | ビット 6 | ビット 5 | ビット 4 | ビット 3 | ビット 2 | ビット 1 | ビット 0
    11 | 0 | Online | Offline Reason | Missed Acq | Acquiring | Trigger Ack | Trigger Ready
    1 予約済み

    Job Load Failed

             Job Load Completed

    Job Loading

             Results Valid

    Results

    Buffer

    Overrun

             Inspection Completed Inspecting
    2 | Acquisition ID (16 ビット整数)
    3
    4 | Inspection ID (16 ビット整数)
    5
    6 | Inspection Result (16 ビット整数)
    7
    8 | Inspection Results 0
    ...
    499 | Inspection Results 491

I/O アセンブリデータ属性の形式 - 出力アセンブリ

インスタンス | バイト | ビット 7 | ビット 6 | ビット 5 | ビット 4 | ビット 3 | ビット 2 | ビット 1 | ビット 0
21 | 0 | Set Offline | 予約済み | 予約済み | Initiate Job Load | Inspection Results Ack | Buffer Results Enable | Trigger | Trigger Enable
 | 1 | Soft Event 7 | Soft Event 6 | Soft Event 5 | Soft Event 4 | Soft Event 3 | Soft Event 2 | Soft Event 1 | Soft Event 0
 | 2 | Job Load ID
 | 3
 | 4 | User Data 0
 | ... |
 | 495 | User Data 491

注意: In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

I/O アセンブリデータ属性コンポーネントのマッピング

次の表に、In-Sight ビジョンシステムの I/O アセンブリデータ属性のマッピングを示します。

データ コンポーネント 名 | クラス |  | インスタンス 番号 | 属性
 | 名前 | 番号 |  | 名前 | 番号
Set Offline | Vision | 78 Hex | 1 | ForceOffline | 8
Trigger Enable | Vision | 78 Hex | 1 | AcqTriggerEnable | 9
Trigger | Vision | 78 Hex | 1 | AcqTrigger | 10
ResultsBufferEnable | Vision | 78 Hex | 1 | ResultsBufferEnable | 13
Soft Event N | Vision | 78 Hex | 1 | SoftTrigger bit N | 18
Online | Vision | 78 Hex | 1 | Online | 6
OfflineReason | Vision | 78 Hex | 1 | OfflineReason | 7
Trigger Ready Trigger Ack Acquiring Missed Acquisition | Vision | 78 Hex | 1 | AcqStatusRegister | 11
User Data | Vision | 78 Hex | 1 | User Data | 12
Inspecting Inspection Completed Results Buffer Overrun Results Valid | Vision | 78 Hex | 1 | InspectionStatusRegister | 14
Inspection ID Inspection Data | Vision | 78 Hex | 1 | InspectionResults | 16

EtherNet/IP の関数

これらの関数は、In-Sight Explorer のスプレッドシートと EtherNet/IP スタックの間のデータの送受信に使用されます。

ReadEIP 関数

ReadEIPBuffer 関数

WriteEIP 関数

WriteEIPBuffer 関数

EtherNet/IP による通信

次の項目には、EtherNet/IP と In-Sight ビジョンシステムの設定と利用に関する情報と手順が記載されています。

EtherNet/IP ネットワーク上の Rockwell ControlLogix PLC との通信

EtherNet/IP ネットワーク上の Rockwell SLC 5/05 PLC との通信


EtherNet/IP ネットワーク上の Rockwell ControlLogix PLC との通信

EtherNet/IP による通信

In-Sight 通信リファレンス

概要

非明示的メッセージ

明示的メッセージ

[Time Sync] タブ

概要

このトピックでは、In-Sight ビジョンシステムと EtherNet/IP ネットワーク上の ControlLogix または CompactLogix PLC との間でデータを転送する方法について説明します。下記の例は、次のコンポーネントを使用していることを前提に記述されています。

  • ファームウェアバージョン 4.8.0 以上を実行している In-Sight ビジョンシステム
  • ファームウェアバージョン 15 以上を実行している ControlLogix または CompactLogix コントローラ
  • Rockwell 社 RSLogix 5000 プログラミングソフトウェア (バージョン 15 以上)
  • Job Pass ブロック、Exposure Complete ブロック、Current Job ID ブロックを含む入力アセンブリインスタンス 12 を使用する場合は、In-Sight ソフトウェア 4.8.0 以上に付属の In-Sight アドオンプロファイル (AOP) リビジョン 10。入力アセンブリインスタンス 11 を使用する場合は、In-Sight ソフトウェア 4.1.0 ～ 4.7.4 に付属の In-Sight AOP リビジョン 4。
注意:
  • In-Sight アドオンプロファイルは、In-Sight ソフトウェア CD から RSLogix とともに PC にインストールする必要があります。
  • モジュールのデータが正しく結合されるようにするため、Rockwell EDS ハードウェアインストールユーティリティを使用して、モジュールを追加する前に In-Sight EDS ファイルをインストールしておく必要があります。
  • 入力アセンブリおよび出力アセンブリにおいて枠線で囲まれているデータフィールドの詳細については、RSLogix 5000 Module Profiles/Cognex Corporation ディレクトリを参照してください。インストールされている AOP モジュールに関する参照ドキュメンテーションが追加されています。

アドオンプロファイル (AOP)

AOP は RSLogix5000 ソフトウェアに追加された機能です。AOP のユーザインタフェースを使用して、設定およびステータスデータの一覧を取得し、あらゆるチェックのために利用することができます。入力されたデータを検証し、行われた選択が正しく、必要な設定と矛盾しないようにします。

AOP は I/O の構造と設定データを認識し、RSLogix5000 でデバイスに割り当てられた名前を使用してタグを作成します。タグの完全な列挙によってデータを明確に区別し、すべてのデータをタグ名によって使用することができます。

In-Sight アドオンプロファイル (AOP) /ファームウェアの互換性

最新の In-Sight アドオンプロファイル (AOP) には、以前の AOP リビジョンからのコンテンツがすべて含まれており、既存アプリケーションとの互換性は失われませんが、接続が確立されるかどうかは、AOP で選択されているメジャーリビジョンフィールドに関連します。次の表に、In-Sight ファームウェアバージョンと比較した AOP メジャーリビジョンフィールドのさまざまな選択による接続機能を示します。

ファームウェアのバージョン | AOP Rev 3 | AOP Rev 4 | AOP Rev 10
3.x | キーを有効にして正常に動作1 | キーを無効にして接続2 | 接続しない3
4.1.0 ～ 4.7.4 | キーを無効にして接続2 | キーを有効にして正常に動作1 | 接続しない3
4.8.0 以降 | キーを無効にして接続2 | キーを無効にして接続2 | キーを有効にすることで正常に動作1
1キーを有効にして正常に動作: 一般的に、AOP メジャーリビジョンは、In-Sight ビジョンシステムが実行されているファームウェアのバージョンに基づいて選択します。
  • In-Sight ビジョンシステムでファームウェアバージョン 4.8.0 以降が実行されている場合は、In-Sight ソフトウェア 4.8.0 以降に付属の AOP メジャーリビジョン 10 を選択します。
  • In-Sight ビジョンシステムでファームウェアバージョン 4.1.0 ～ 4.7.4 が実行されている場合は、In-Sight ソフトウェア 4.7.1 ～ 4.7.4 に付属の AOP メジャーリビジョン 4 を選択します。
  • In-Sight ビジョンシステムでファームウェアバージョン 3.x.x が実行されている場合は、In-Sight ソフトウェア 3.x.x に付属の AOP メジャーリビジョン 3 を選択します。

2キーを無効にして接続: 「不一致の」AOP メジャーリビジョンを選択しても、接続が確立される場合があります。例えば、AOP メジャーリビジョン 4 が選択され、ビジョンシステムでファームウェアバージョン 4.8.0 が実行されている場合、AOP は、すべてのファームウェアバージョンに存在する入力アセンブリインスタンス 11 への接続を試行します。結果として、キーを無効にして接続が確立されます。ただし、一部のフィールドが正しく機能しない場合があります。

3接続しない:AOP メジャーリビジョン 10 を使用するには、ファームウェアバージョン 4.8.0 以降が必要です。例えば、AOP メジャーリビジョン 10 が選択され、ビジョンシステムでファームウェアバージョン 4.7.4 が実行されている場合、AOP は、ファームウェアバージョン 4.7.4 以前には存在しない入力アセンブリインスタンス 12 への接続の確立を試行します。結果として、接続は確立されません。

非明示的メッセージと明示的メッセージ

非明示的メッセージは、応答時間が重要なアプリケーションに固有の I/O データを送信します。ポイントツーポイントまたはマルチキャストのどちらの構成でも送信できます。明示的メッセージは、受信側デバイスに応答を要求します。結果として、明示的メッセージは、あまり頻繁に発生しない操作に適しています。In-Sight Explorer ジョブへの変更命令は、明示的メッセージに適した操作の一例です。一方、ビジョン検査におけるツールからの測定データの受信は、非明示的メッセージに適した操作の一例です。

非明示的メッセージ

下記では、ControlLogix PLC を In-Sight ビジョンシステム (ファームウェアバージョン 4.8.0 以上を実行) に接続する方法、および EtherNet/IP 非明示的メッセージを送受信する方法について説明します。

  • 単一の ControlLogix PLC との非明示的メッセージング接続の確立
  • 複数の ControlLogix PLC とのマルチキャスト非明示的メッセージング接続の確立
  • In-Sight ビジョンシステムからのデータの取得
  • In-Sight ビジョンシステムへのデータの送信

EtherNet/IP 非明示的メッセージングを使用すると、In-Sight ビジョンシステムの入力および出力を ControlLogix または CompactLogix PLC のタグにマップすることができます。これらの値は、確立後、RPI (Requested Packet Interval) によって定義される間隔で同期されます。RPI の間隔を過ぎるたび、PLC はビジョンシステムのステータスレジスタを更新し、ビジョンシステムが PLC のステータスレジスタを更新することを要求します。

下の図は、EtherNet/IP 経由の Ethernet ベースの I/O を表しています。

EtherNet/IP ビジョンオブジェクトは、In-Sight センサ内のさまざまなサブシステムのステータスと、In-Sight Explorer スプレッドシートからの着信データと発信データを追跡します。

入力アセンブリと出力アセンブリは、EtherNet/IP ビジョンオブジェクトのさまざまなフィールドをマップします。入力アセンブリは、PLC に送信される In-Sight ビジョンシステムのデータ値の集合 (PLC 入力) であり、出力アセンブリは、In-Sight ビジョンシステムが PLC から受信したデータ値の集合 (PLC 出力) です。

EtherNet/IP 非明示的メッセージング接続があった場合、これらの値はクライアント上で RPI 間隔で更新されます。また、クライアントが EtherNet/IP 非明示的メッセージング接続を介して値を更新した場合、これらの変更は In-Sight センサの各種サブシステムに反映され、それに応じて In-Sight センサは応答します。

単一の ControlLogix PLC との非明示的メッセージング接続の確立

In-Sight ビジョンシステムと ControlLogix コントローラの間で EtherNet/IP 非明示的メッセージング接続をセットアップするには、最初に、In-Sight ビジョンシステムを ControlLogix I/O Configuration ツリーに設定する必要があります。ラックの Ethernet モジュールに対応するノードに、汎用 Ethernet fモジュールを I/O デバイスとして追加する必要があります。

単一の ControlLogix PLC との非明示的メッセージング接続を確立するには

  1. RSLogix 5000 を開き、PLC のプロジェクトをロードします。

注意:RSLogix 5000 に接続を追加するには、PLC がオフラインである必要があります。

  2. [I/O Configuration] ノードで、Ethernet モジュールを選択し、アイコンを右クリックして、メニューから [New Module] を選択します。

  3. 次のダイアログが表示されたら、リストから使用中の In-Sight ビジョンシステムのモデルを選択します。このオプションは、アドオンプロファイルが In-Sight ソフトウェア CD からインストールされた後に表示されます。

  4. 選択を行うと、In-Sight ビジョンシステムの設定ダイアログが表示されます。

    注意:[Time Sync] タブは、In-Sight 5000 シリーズビジョンシステムに接続しているときにのみ表示されます。

次のフィールドを設定する必要があります。

  • [Name]:これは、汎用 EtherNet/IP デバイスに与えられる名前です。RSLogix 5000 で作成されるタグは、この名前に基づきます。一貫性を保つために、In-Sight ビジョンシステムの名前を使用することを推奨します。
  • [IP アドレス]: In-Sight ビジョンシステムの IP アドレス。
  • [ホスト名]:この設定は任意です。ネットワークに DNS (Domain Name Server) がある場合のみ、この設定を使用してください。
  5. In-Sight ビジョンシステムと PLC との間で転送するデータの量とタイプを設定するには、[Change] ボタンを使用します。[Change] ボタンを使用して、電子キー (Electronic Keying) を有効にすることもできます。
  6. 一般的な通信パラメータを確定した後、設定プロセスに関する手順は下の図に示します。

次のフィールドを設定する必要があります。

  • [Requested Packet Interval (RPI)]:このフィールドは、RPI (Requested Packet Interval) を指定します。これは、非明示的メッセージング接続によるデータ交換の時間間隔 (ミリ秒単位) を定義します。

注意:In-Sight ファームウェアバージョン 3.30.00 以上では、RPI 値をジョブ実行時間より長くする必要がなくなりました。非明示的メッセージング接続はジョブ実行と非同期に実行するようになりました。ただし、RPI 時間が短いと (20ms 未満)、ビジョンジョブのパフォーマンスに悪影響を与えることがあります。最良の結果を得るためには、RPI 時間を、In-Sight ビジョンシステムがジョブ実行を完了してから PLC がデータを要求するまでの時間の半分以下に設定してください。

  • [Major Fault On Controller If Connection Fails While in Run Mode]:このオプションをオンにすると、コントローラは接続が失敗したときにメジャーフォールトを生成します。
  • [Inhibit Module]:このチェックボックスを ON にすると、PLC は In-Sight ビジョンシステムとの接続の確立を試みません。

注意:In-Sight ビジョンシステムが「スタンバイ」モードで動作しなくなる場合は、モジュールを禁止して再度有効にすることで、モジュールが再び動作可能になります。

  7. ControlLogix にモジュールを追加すると、I/O ツリーは次のようになります。

  8. 次に、RSLogix 5000 はタグを作成します。これらのタグは、デバイスに与えられた名前に基づいて、In-Sight ビジョンシステムの入力および出力データにマップされます。

  • [InSight_Top:I Scheduled Input]:下の表に、In-Sight ビジョンシステムから PLC に送信されるデータを示します。

  • TriggerReady:In-Sight ビジョンシステムが新しいトリガを受け入れられることを示します。このビットは、ビジョンシステムがオンラインであり、Trigger Enable ビットがセットされ、ビジョンシステムが画像の取り込み中でないときに高くなります。
  • TriggerAck:In-Sight ビジョンシステムが Trigger ビットのセットによってトリガされたことを示します。このビットは、Trigger ビットがクリアされるまでセットされたままです。
  • Acquiring:Trigger ビットのセットによって、または外部ハードウェアトリガによって、In-Sight ビジョンシステムが画像を取り込み中であるときにセットされます。
  • MissedAcq:In-Sight ビジョンシステムが取り込みトリガをミスしたときにセットされます。取り込みが正常にトリガされるとクリアされます。

  • OfflineReasonX: このフィールドは、In-Sight ビジョンシステムがオフラインである原因を示すために使用される 3 ビットのフィールドです。 原因を下の表に示します。

    Offline Reason

    名前

    説明

    0

    Online

    ビジョンシステムはオンラインです。

    1

    Programming

    ビジョンシステムのジョブが変更されています。

    2

    Discrete Offline

    ディスクリート信号によって、ビジョンシステムがオフラインになっています。

    3

    Comm.Offline

    通信プロトコルによって、ビジョンシステムがオフラインになっています。

    注意:　複数のデバイスから In-Sight ビジョンシステムはオフラインにできます。このフィールドでは最小限のチャネルステータスを返します。

  • Online:このビットは、In-Sight ビジョンシステムがオンラインのときにセットされ、ビジョンシステムがオフラインのときにクリアされます。ビジョンシステムがオフラインのときには、Offline Reason フィールドを調べて、原因を判断してください。
  • Inspecting:このビットは、In-Sight ビジョンシステムがスプレッドシート関数を実行しているときにセットされます。

  • InspectionCompleted:このビットは、検査の完了時に切り替えられます。

    注意:このビットは、結果の読み取り準備ができていることを示すために使用します。データの読み取り時期を指定するには、ResultsValid を使用します。

  • ResultsBufferOverrun:このフィールドは、Buffer Results Enable ビットがセットされていて、Inspection Results Ack ビットをセットすることによって PLC が確認応答しなかったために In-Sight ビジョンシステムが検査結果のセットを破棄したときにセットされます。

  • ResultsValid:Inspection ID、Inspection Result、および Inspection Results フィールドが有効なときにセットされます。

    注意:このビットは、検査結果の読み取り準備ができていることを示すために使用します。

  • JobLoading:このビットは、新規ジョブをロードするときにセットされます。

注意:このビットは、EtherNet/IP を使用する PLC によってジョブのロードが開始された場合にのみ機能します。

  • JobLoadComplete:このビットは、ジョブロード操作の完了時にトグルされます。

注意:このビットは、EtherNet/IP を使用する PLC によってジョブのロードが開始された場合にのみ機能します。

  • JobLoadFailed:このビットは、ジョブのロードの最後の試みが失敗したときにセットされます。次にジョブのロードが成功したときにクリアされます。

注意:このビットは、EtherNet/IP を使用する PLC によってジョブのロードが開始された場合にのみ機能します。

  • ExposureComplete: このビットは、In-Sight ビジョンシステムが露光完了すると High となり、画像取り込みトリガが与えられると Low となります。このビットは、Clear Exposure Complete 信号が High に設定されると Low に保持されます。

    注意: このビットを使用するには、In-Sight ソフトウェア 4.8.0 以降に付属の In-Sight アドオンプロファイル (AOP) リビジョン 10 をインストールしてください。

  • JobPass: このビットは、最後のジョブが [ジョブの PASS/FAIL セルの設定] ダイアログの設定に合格するとセットされます。このビットはジョブが合格しないとクリアされます。

    注意: このビットを使用するには、In-Sight ソフトウェア 4.8.0 以降に付属の In-Sight アドオンプロファイル (AOP) リビジョン 10 をインストールしてください。

  • CurrentJobID: ビジョンシステムで現在実行中のジョブの ID 番号。または、現在のジョブに ID 番号がない場合は 65535。このフィールドは、ジョブ変更の方法に関係なく、ビジョンシステムでジョブが変更されたときに更新されます。

    注意: このビットを使用するには、In-Sight ソフトウェア 4.8.0 以降に付属の In-Sight アドオンプロファイル (AOP) リビジョン 10 をインストールしてください。

  • AcquisitionID:この ID は、トリガソースに関係なく各画像取り込みが完了すると増分され、Acquisition とその Inspection Results を同期化するために使用できます。
  • InspectionID:この結果セットに関連付けられている取り込み ID。この値は、各検査サイクルの新しい結果が到着するたびに増加します。
  • InspectionResultCode:この結果セットに関連付けられている成功/失敗コード。この値を設定することはできず、常に 0 です。
  • InspectionResults:In-Sight Explorer スプレッドシートの WriteEIPBuffer 関数または EasyBuilder の [Ethernet/IP による通信] タブによって設定された検査結果。バッファは、In-Sight スプレッドシートの表示どおりに書き込まれ、ビットは、FormatOutputBuffer 関数 (スプレッドシート) または [Format Outputs] タブ (EasyBuilder) の定義と同じ順序で表示されます。
  • InSight_Top:O Scheduled Input:下の表に、EtherNet/IP クライアント (ControlLogix) から In-Sight ビジョンシステムに送信されるデータを示します。

  • TriggerEnable:このフィールドがセットされると、Trigger ビットによるトリガが有効になります。このフィールドをクリアすると、EtherNet/IP トリガメカニズムは無効になります。このビットは Ethernet/IP 経由で実行されるトリガにのみ影響し、その他のトリガモードにはまったく影響しません。
  • Trigger:次の条件が満たされたとき、このビットをセットすると画像取り込みをします。
    • In-Sight ビジョンシステムがオンラインである。
    • Trigger Enable ビットがセットされている。
    • AcquireImage 関数の [トリガ] パラメータが [ネットワーク]、[外部]、または [Real-time Ethernet] に設定されている。
  • ResultsBufferEnable:このビットがセットされると、Inspection ID、Inspection Result、および Inspection Results フィールドは、Inspection Results Ack フィールドが確認応答してセットされるまで変化しません。In-Sight ビジョンシステムは、Results Valid ビットをクリアすることによって、確認応答に応答します。Inspection Results Ack フィールドがクリアされて、PLC に送信される新しい結果セットがあるときには、Results Valid ビットはクリアされません。
  • InspectionResultsAck:Buffer Results Enable ビットがセットされると、Inspection Results Ack ビットは、PLC が Inspection ID、Inspection Result、および Inspection Results データを受信したことを確認応答します。
  • InitiateJobLoad: セットされると、ビジョンシステムは Job Load ID フィールドで指定したジョブ ID をロードします。
  • ForceOffline:このビットがセットされると、このビットが再びクリアされるまで、In-Sight ビジョンシステムはオフラインになります。
  • SoftEventX:これらのビットをセットすると、In-Sight Explorer スプレッドシート内の関連するソフトイベントがトリガされます。
  • JobLoadID:PLC によって Initiate Job Load ビットがセットされたときにロードされるジョブの ID 番号 (1 ～ 999)。
  • UserData:このデータは、ReadEIPBuffer 関数によって In-Sight Explorer スプレッドシートに送信されます。バッファは、PLC の表示どおりに書き込まれ、ビットは、RSLogix 5000 の定義と同じ順序で表示されます。

例:接続のセットアップ

I/O メッセージングのために、ControlLogix プロジェクトに In-Sight ビジョンシステムが入出力デバイスとして追加されました。このプロジェクトがコントローラにダウンロードされた後、I/O 接続が確立されます (ほかの I/O デバイスと同様ですが、[Inhibit Module] チェックボックスが [Offline] に設定されている場合を除きます)。接続が正常に確立されると、要求された RPI で周期的なデータ転送が開始されます。

正しい I/O 接続を確認するには、次の手順に従ってください。

  1. オフライン中に、「単一の ControlLogix PLC との非明示的メッセージング接続の確立」に記載されている ControlLogix 設定手順を実行します。
  2. プロジェクトを ControlLogix コントローラにダウンロードします。
  3. ダウンロードの完了時に、In-Sight ビジョンシステムに対応する I/O デバイスがエラーを示さなければ、I/O 接続が正常に完了したことを意味します。
  4. I/O データの正しい双方向転送を確認するには、In-Sight Explorer を通じて In-Sight ビジョンシステムに接続します。AcquireImage プロパティシートを開いて、[トリガ] パラメータを [ネットワーク] に設定します。これで、ビジョンシステムは、オンラインになります。
  5. RSLogix で、コントローラタグに移動し、次に示すように、TriggerEnable ビットの状態を 0 から 1 に変更し、EtherNet/IP を介した画像取り込みのトリガを有効にします。

  6. これを設定した後、Trigger ビットが 0 から 1 に変更されると、In-Sight ビジョンシステムは画像を取り込みます。
  7. 検査が完了すると、InspectionCompleted トグルビットの状態は、次のように変更されます。

複数の ControlLogix PLC とのマルチキャスト非明示的メッセージング接続の確立

複数の PLC に検査結果を送信する場合は、マルチキャスト非明示的メッセージング接続を確立できます。マルチキャスト接続によって、接続されているすべての PLC がデータを消費できますが、データを生成できるのは 1 つの PLC のみです。In-Sight ビジョンシステムと ControlLogix コントローラの間で EtherNet/IP 非明示的メッセージング接続をセットアップするには、最初に、In-Sight ビジョンシステムを ControlLogix I/O Configuration ツリーに設定する必要があります。

マルチキャスト非明示的メッセージング接続を確立するには、最初の PLC で次の手順を実行します。

  1. 「単一の ControlLogix PLC との非明示的メッセージング接続の確立」の節の手順 1 ～ 3 に従います。
  2. In-Sight ビジョンシステムの設定ダイアログの [General] タブ:
    • 接続を「Input (Results Only)」に設定する必要があります。
    • ビジョンシステムのサイズおよびデータタイプの入力結果は、各接続で同一である必要があります。
    • (オプション) いずれかの PLC から In-Sight ビジョンシステムにデータを書き込む場合は、[Connection] を [Data] (PLC の書き込みのみの場合は [Bidirectional]) に設定します。In-Sight ビジョンシステムに書き込みできる ControlLogix コントローラは、一度に 1 つのみです。
  3. In-Sight ビジョンシステムの設定ダイアログの [Connection] タブ:
  • RPI 値は、各々の In-Sight ビジョンシステム接続で同じである必要があります。

In-Sight ビジョンシステムからのデータの取得

In-Sight Explorer スプレッドシートから ControlLogix PLC にデータを取得するためには、WriteEIPBuffer 関数を使用して、データが EtherNet/IP スタックにプッシュされる必要があります。この関数は、FormatOutputBuffer 関数によって作成されたデータバッファを取得し、それを In-Sight ビジョンシステムの EtherNet/IP 入力アセンブリ (ネットワークへの入力) のデータ領域に書き込みます。このデータは、次の RPI サイクルで PLC に転送されます。このデータ領域への EIP バッファの書き込みはキューに入れられます。つまり、スプレッドシートの実行中に書き込みは行われず、スプレッドシートの実行の少し後に別のイベントとして実行されます。このため、検査は短時間で完了しますが、新しいバッファの書き込みは完了しません。ResultsValid はデータの読み取り準備ができる前には高くならず、準備ができている場合にのみ高くなるため、この設定によって発生する可能性がある PLC ロジックのわずかなタイミングのずれに関する問題を回避するには、ResultsValid を使用してデータの読み取り時期を決定することが重要です。

例:In-Sight ビジョンシステムからの 32 ビット整数データの取得

以下の手順で、In-Sight ビジョンシステムから ControlLogix PLC に送信されるデータの書式設定の方法を説明します。

  1. まず、In-Sight Explorer を使用して、新規ジョブを作成します。
  2. [パレット] の [スニペット] タブから、次の 2 つのスニペットをスプレッドシートに追加します。[Acquisition] → [AcqCounter] および [Math & Logic] → [Random]
  3. AcquireImage セルを開いて、[トリガ] パラメータを [連続] に設定します。
  4. 空白のセルを右クリックして、[関数の挿入] を選択します。画面左側の [入出力] カテゴリを展開し、FormatOutputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  5. [FormatOutputBuffer] ダイアログの [追加] ボタンをクリックします。これでセル選択モードになります。Random スニペットの「Scaled random number」セルを選択します。
  6. [FormatOutputBuffer] ダイアログで、[データ型] プルダウンメニューを使用して、[データ型] を [32 ビット整数] に変更します。
  7. [FormatOutputBuffer] ダイアログの [追加] ボタンを再びクリックします。これでセル選択モードになります。AcqCounter スニペットのカウントセルを選択します。

  8. [OK] ボタンをクリックして、[FormatOutputBuffer] ダイアログを閉じます。
  9. 空白のセルを右クリックして、[関数の挿入] を選択します。画面左側の [入出力] カテゴリを展開し、[ネットワーク] サブカテゴリをクリックし、WriteEIPBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  10. WriteEIPBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatOutputBuffer [image] データ構造体へのセル参照として設定します。
  11. In-Sight ビジョンシステムをオンラインにします。
  12. データが RSLogix 5000 の Controller → Controller Tags ノードに表示されます。

注意:データ値を表示するには、RSLogix の [Monitor Tags] タブを選択する必要があります。

例:In-Sight ビジョンシステムからの浮動小数点数値データの取得

別のデータ型、例えば、32 ビット整数型以外の型や、データ型の混合を送信する必要がある場合、最も簡単な方法は、ContorlLogix でユーザ定義型を作成して、そのデータを In-Sight ビジョンシステムの入力タグから新しく作成したユーザ定義型にコピーすることです。以下の手順では、2 つのセルを浮動小数点数値としてコピーする方法を説明します。

  1. In-Sight ビジョンシステムをオフラインにします。
  2. 以前に作成した FormatOutputBuffer 関数を開きます。

  3. [FormatOutputBuffer] ダイアログから、[Data Type] プルダウンメニューを使用して、[Data Type] を [32 bit integer] から [32 bit floating point] に変更します。

    注意:ビジョンシステムで使用されるデータタイプの一致は、必ずしも必要とは限りません。PLC でバッファの受信に使用されるデータタイプに関係なく、ビットはビジョンシステムの出力バッファから、FormatOutputBuffer または [Format Outputs] タブに表示されている順序どおりにコピーされます。

  4. In-Sight ビジョンシステムをオンラインに戻します。
  5. RSLogix で、オフラインモードにします。
  6. RSLogix で、[Data Types] → [User-Defined] フォルダを右クリックし、メニューから [New Data Type] を選択します。

  7. 新しいデータ型にわかり易い名前を付けて、2 つの浮動小数点数値を [Members:] リストに追加します。

  8. 次に、ユーザ定義データ型を使用して、新しいタグをプロジェクトの Controller Tags に追加します。

  9. 最後に、COP 命令を MainRoutine ラダーロジックプログラムに追加します。これは、InSight_Top:I.InspectionResults[0] タグから InSight_Top_Input タグにデータをコピーします。

注意:長さフィールドは、出力にコピーする必要がある入力構造体の数です。この場合、入力構造体は 32 ビット浮動小数点数値であるため、COP コマンドは、ビジョンシステムの出力バッファから 64 ビットを PLC のユーザ定義型にコピーします。PLC の受信バッファで 16 ビット整数型 (INT) を使用する場合、同じ 64 ビットを取得するには、長さ 4 を使用します。また、8 ビット整数型 (SINT) を使用する場合、64 ビットすべてをコピーするには、長さ 8 を使用します。

  10. このプログラムが ControlLogix PLC にダウンロードされた後、In-Sight Explorer スプレッドシートの Random セルと Acquisition Counter セルが InSight_Top_Input タグに浮動小数点形式で表示されます。

In-Sight ビジョンシステムへのデータの送信

ControlLogix PLC から In-Sight Explorer スプレッドシートにデータを送信するためには、ReadEIPBuffer 関数を使用して、データが EtherNet/IP スタックからプルされる必要があります。この関数は、FormatInputBuffer 関数内で作成されたデータフォーマットを取得し、EtherNet/IP 出力アセンブリ (ネットワークからの出力) のデータ領域からデータを読み取って、このデータを書式設定して In-Sight Explorer スプレッドシートに入れます。このデータは、RPI サイクルごとに PLC から受信されます。対応するスプレッドシートのデータは、スプレッドシートが実行されたときのみ更新されます。

例:In-Sight ビジョンシステムへの 32 ビット整数データの送信

この例では、In-Sight Explorer 内に新規ジョブを作成した後、以下の手順を実行して、ControlLogix PLC が受信するデータを設定します。

  1. AcquireImage セルを開いて、[トリガ] パラメータを [連続] に設定します。
  2. 空白のセルを右クリックして、[関数の挿入] を選択します。画面左側の [入出力] カテゴリを展開し、FormatInputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  3. [FormatInputBuffer] ダイアログの [追加] ボタンをクリックして、2 つの 32 ビット整数をリストに追加します。

  4. [OK] ボタンをクリックして、 [FormatInputBuffer] ダイアログを閉じます。
  5. 空白のセルを右クリックして、[関数の挿入] を選択します。画面左側の [入出力] カテゴリを展開し、[ネットワーク] サブカテゴリをクリックし、ReadEIPBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  6. ReadEIPBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatOutputBuffer [image] データ構造体へのセル参照として設定します。
  7. FormatOutputBuffer 関数に追加されたフィールドに基づいて、Data Access 関数が自動的にスプレッドシートに追加されます。
  8. In-Sight ビジョンシステムをオンラインモードにします。
  9. RSLogix 5000 で、[Controller Tags] ダイアログを開き、InSight_Top:O.Data[1] および InSight_Top:O.Data[2] タグの値を変更します。In-Sight Explorer スプレッドシートの値も変更されます。

例:In-Sight ビジョンシステムへの浮動小数点数値データの送信

別のデータ型、例えば、32 ビット整数型以外の型や、データ型の混合を送信する必要がある場合、最も簡単な方法は、ContorlLogix でユーザ定義型を作成して、そのデータを In-Sight ビジョンシステムの出力タグから新しく作成したユーザ定義型にコピーすることです。以下の手順では、2 つのセルを浮動小数点数値としてコピーする方法を説明します。

  1. RSLogix で、オフラインモードにします。
  2. RSLogix で、[User-Defined] → [Data Types] フォルダを右クリックし、メニューから [New Data Type] を選択します。

  3. 新しいデータ型にわかり易い名前を付けて、2 つの浮動小数点数値を [Members:] リストに追加します。

  4. 次に、下記の例のように、ユーザ定義データ型を使用して、新しいタグをプロジェクトの Controller Tags に追加します。

  5. 最後に、COP 命令を MainRoutine ラダーロジックプログラムに追加します。これは、InSight_Top_Output タグから InSight_Top:O.Data[1] タグにデータをコピーします。

  6. In-Sight ビジョンシステムをオフラインにします。
  7. 以前に作成した FormatInputBuffer 関数を開き、両方の [Data Type] の値を [32 bit floating point] に変更します。
  8. In-Sight ビジョンシステムをオンラインに戻します。
  9. このプログラムが ControlLogix PLC にダウンロードされた後、InSight_Top_Output タグ内のデータは浮動小数点形式で表示されるようになります。

明示的メッセージ

非明示的メッセージと異なり、明示的メッセージは特定のデバイスに送信され、そのデバイスは常にそのメッセージへの返信で応答します。結果として、明示的メッセージは、あまり頻繁に発生しない操作に適しています。明示的メッセージは、In-Sight ビジョンシステムの EtherNet/IP ビジョンオブジェクトの属性の読み取りと書き込みに使用できます。これらの属性は、ジョブの変更、画像の取り込み、ネイティブモードコマンドの送信、および結果データの取得に使用されます。

例: ジョブの変更

ControlLogix PLC から In-Sight ビジョンシステムに送信される最も一般的な明示的メッセージが、ジョブの変更命令です。明示的メッセージは、MSG 命令を使用して ControlLogix PLC から送信されます。以下の手順では、RSLogix で MSG 命令を追加して、In-Sight ビジョンシステム上のジョブを変更する方法を説明します。

  1. 次のタグを ControlLogix の [Controller Tags] ダイアログに追加します。

注意:この例では、ジョブ名の最大長が 30 文字であることを前提にしています。ジョブ名がこれより長い場合は、最も長いジョブ名に 2 文字を加えた文字数に等しい SINT 構造体の数が含まれるように、SetJobData バッファを拡張する必要があります。

  2. RSLogix 5000 プロジェクトに、次のようなラダーを作成します。

注意:このスニペットは、SetJobData バッファの最初の 2 バイトにジョブ名の長さをコピーし、同じバッファの 3 番目のバイト以降に文字列データをコピーして、そのバッファをビジョンシステムの JobName 属性に送信します。ジョブ名の末尾には、「.job」のファイル拡張子を追加してください。

このラダーは、非明示的接続で Set Offline ビットを使用して、In-Sight ビジョンシステムをオフラインにします。ビジョンオブジェクトの JobName 属性は、ジョブを変更する前に In-Sight ビジョンシステムをオフラインにする必要があるためです。Set Offline ビットは、In-Sight ビジョンシステムが Online ビットを Low にするのを待って、新規ジョブ名を含むデータをセットアップし、MSG 命令を In-Sight ビジョンシステムに送信します。ジョブの変更が完了した後、TriggerSetJob タグの立ち下がりエッジによって、In-Sight ビジョンシステムはオンラインに戻ります。

  3. MSG 命令をセットアップするには、[InSight_SetJobMsg] ボタンをクリックします。[Message Configuration] ダイアログが表示されます。

注意:この例では、ジョブ名の最大長が 30 文字であることを前提にしています。ジョブ名がこれより長い場合は、最も長いジョブ名に 2 文字を加えた文字数に等しいソース長を入力する必要があります。

次のフィールドを設定する必要があります。

  • [Message Type]:これは、送信されるメッセージのタイプです。ビジョンオブジェクトなど、ベンダー固有のオブジェクトにメッセージを送信するには、[CIP Generic] を選択します。
  • [Service Type]:これは、オブジェクトに送信されるサービスコードです。ビジョンオブジェクトの 1 つの属性を変更するには、[Set Attribute Single] を選択します。
  • [Service Code]:このフィールドによって、任意のタイプのサービスをオブジェクトに送信できます。事前定義のサービスタイプが選択されている場合、このフィールドは無効になります。
  • [Class]:これは、メッセージが送信されるクラスの識別子です。ビジョンオブジェクトの ID は Hex 78 です。
  • [Instance]:このフィールドは、メッセージの送信先オブジェクトのインスタンス番号を指定します。In-Sight ビジョンシステムの場合、ビジョンオブジェクトは 1 つのインスタンスしか持たないため、このフィールドは 1 に設定する必要があります。
  • [Attribute]:メッセージの送信先の属性番号。この場合、JobName 属性の ID は 14 Hex です。
  • [Source Element]:このフィールドは、メッセージとともに送信されるデータのソースを示します。JobName 属性の場合、2 バイトの長さのヘッダが付いた String を送信する必要があります。この文字列は、前の手順で作成されたラダーの COP および MOV 命令を使用して書式設定されました。新規ジョブ名を JobName 属性に送信するには、このフィールドを InSight_SetJobData に設定します。
  • [Source Length]:このフィールドは、オブジェクトに送信されるソース要素のバイト数を示します。この例では、ソース要素内のすべてのデータを送信する必要があるため、32 バイトに設定します。
  4. 次に、MSG 命令に対して、明示的メッセージの送信先デバイスを指定する必要があります。[Message Configuration] ダイアログの [Communication] タブをクリックして、[Browse] ボタンをクリックします。下の図に示されているように、[I/O Configuration] から In-Sight ビジョンシステムを選択します。

  5. プログラムを ControlLogix PLC にダウンロードすると、InSight_JobName および InSight_TriggerSetJob コントローラタグを使用することによって、現在のジョブを RSLogix と交換できるようになります。

注意:ジョブ名の末尾には、「.job」の拡張子を追加してください。

  6. Job Loading、Job Load Complete、および Job Load Failed ビットを使用して、ジョブのロードの可否を判定できます。

[Time Sync] タブ

In-Sight アドオンプロファイル Rev 10 がインストールされ、In-Sight 5000 シリーズビジョンシステムが接続されている場合、[Module Properties] ウィンドウに [Time Sync] タブが表示され、グランドマスタクロックとビジョンシステムのローカルクロックに関する情報が表示されます。このタブは読み取り専用です。

注意:時刻同期 (CIP-Sync) の詳細については、「[日付/時刻の設定] ダイアログ」と「時刻同期を設定するには」を参照してください。


EtherNet/IP ネットワーク上の Rockwell SLC 5/05 PLC との通信

Ethernet/IP による通信

In-Sight 通信リファレンス

概要

必要なコンポーネント

RSLogix 500 の使用

メッセージ (MSG) 命令

MSG 命令の設定画面

MSG 命令を使用してデータを受信するには

SLC5/05 からネイティブモードコマンドを送信するには

メッセージ命令の結果

概要

このセクションでは、In-Sight ビジョンシステムと PLC の間の PCCC (PC3) 通信構成について説明します。この例では、Allen-Bradley SLC5/05 と Rockwell 500 ソフトウェアを使用します。

必要なコンポーネント

  • ファームウェアバージョン 2.2 以上を実行している In-Sight ビジョンシステム
  • Rockwell RSLogix 500 プログラミングソフトウェア (バージョン 4.5 以上)
  • Allen-Bradley SLC5/05 コントローラ (RSLogix500 をサポートする、対応するファームウェアを搭載)

RSLogix 500 の使用

  1. RSLogix 500 ソフトウェアプログラムから .RSS ファイルを開き、[Channel Configuration] ダイアログを開きます ([Project Folder] → [Controller Folder] → [Channel Configuration])。

  2. Allen-Bradley SLC には、設定に使用できる 2 つのチャネルがあります。すなわち、チャネル 1 (イーサネット) と チャネル 0 (DF1 全二重 - シリアル) です。[Chan. 1 - System] タブをクリックします。
  3. 必要に応じて、チャネル 1 (イーサネット) を設定します。適切な設定については、ネットワーク管理者に問い合わせてください。

注意: PLC および In-Sight ビジョンシステムで、IP、サブネット、およびゲートウェイパラメータが正しいことを確認してください。

  4. 必要に応じて、タイムアウトを設定します。

注意: 接続タイムアウトと応答タイムアウトはミリ秒単位であり、非活動タイムアウトは秒単位です。これらのパラメータによって、システムが要求の送受信に使用する Message Timeout パラメータが決まります。(Msg Connection Timeout + Msg Reply Timeout + 5mS = Msg Timeout)

メッセージ (MSG) 命令

アプリケーション内でメッセージ命令を作成できるようになりました。メッセージ開発のための拡張命令については、RSLogix 500 のマニュアルを参照してください。

メッセージ (MSG) 命令内で次の設定パラメータを設定できます。

  • [Type]: Peer-To-Peer。これは変更できません。
  • [Read/Write]: In-Sight ビジョンシステムで実行する関数を選択します。[Read] は、In-Sight からデータを取得します。[Write] は、In-Sight にデータを送信します。
  • [Target Device]: In-Sight ビジョンシステムと通信するには、[PLC5] を選択します。これは、SLC に対して、使用する通信プロトコルを指定します。In-Sight ビジョンシステムは、ControlLogix コントローラとほぼ同様に機能します (Rockwell のマニュアル 13862 を参照してください)。
  • [Local/Remote]: In-Sight ビジョンシステムが SLC と同じネットワーク上にあることを示すには、[Local] を選択します。SLC とは別のネットワーク上の In-Sight と通信するには、[Remote] を選択します。リモート通信の場合は、その二次ネットワークへのゲートウェイとして機能している別のデバイスを通じてメッセージを送る必要があります。一般に、これには Allen-Bradley ControlLogix コントローラを使用できます(ゲートウェイ経由でほかのネットワーク上のデバイスをアドレス指定する方法については、Rockwell のマニュアルを参照してください)。
  • [Control Block]: これは、MSG 命令がデータ (IP アドレス、メッセージタイプなど) の格納に使用する一時整数ファイルです。これは一般に、送信されるユーザデータではありません。
  • [Control Block Length]: これは、MSG 命令によって自動的に計算されます。
  • [Setup Screen]: [Setup Screen] を選択すると、[Message Instruction Setup] ダイアログが開きます。

MSG 命令の設定画面

[MSG Instruction Setup] 画面では、次の設定パラメータを設定できます。

[General] タブ

[This Controller] セクション:

  • [Communication Command]: 最初の画面 (MSG Instruction 画面) で選択したのと同じコマンド (READ/WRITE) を選択する必要があります。
  • [Data Table Address]: これは、データが書き込まれる (READ) か、送信される (WRITE) SLC 上のデータファイルの場所です (MSG Instruction 画面を参照)。この例では、「F8:0」です。「F」は浮動小数点ファイルを示し、「8」はファイル番号 8 を示し、「0」はそのファイルのオフセットを示します (この例では、0 番目の要素から始まります)。下の図は、RSLogix 500 のメイン画面から Float Table にアクセスした例を示しています。

  • [Size in Elements]: これは、送信される要素 (個別のデータ) の数です。この例では、2 つの要素が送信されます (3.14 と 78.87)。
  • [Channel]: SLC の構成によって異なります。SLC では、チャネル 1 はイーサネットポートです。

[Target Device] セクション:

  • [Message Timeout]: In-Sight ビジョンシステムが応答できる適切な時間の長さを選択します。In-Sight がこの時間内に応答しなかった場合、MSG 命令はエラーになります。このパラメータをこの画面から変更することはできません。[Message Timeout] は、チャネル 1 の設定ダイアログに入力されたパラメータによって決まります (「RSLogix 500 の使用」 の手順 4 を参照)。
  • [Data Table Address]: これは、データが読み取られるか、書き込まれる In-Sight ビジョンシステム上の場所です。この例では、「F8:1」です。「F」はデータが浮動小数点型 (実数) であることを示し、「8」は In-Sight が ? を無視することを示します (データは常に入力アセンブリに書き込まれ、出力アセンブリから読み取られます)。「1」は、READ が実行されるか、それとも WRITE が実行されるかによって意味が異なります。

WRITE が行われるときには、「1」は、入力アセンブリのデータ部分までの実際のデータバイトオフセットを示します。READ が行われるときは、「1」は要素を示します。例えば、次の画像処理機能があります。メッセージが READ の場合、「F8:2」は、出力アセンブリから (READ は In-Sight の出力アセンブリからデータを取得します) 浮動小数点型の 3 番目の要素を読み取ることを意味します (SLC のインデックスは 0 から始まるので、「:2」は 3 番目の要素を示します)。メッセージが WRITE の場合、「F8:12」は、入力アセンブリのデータセクションの 12 番目のバイトに浮動小数点数値を書き込むことを意味します。WRITE は、データの書き込みを開始する、アセンブリの実際のバイトを示します。READ は、実際のデータ要素を示します。

注意: ネイティブモードコマンドを In-Sight ビジョンシステムに送信するには、宛先アドレスとして ST10:0 が使用されます。文字列またはほかのデータ型を In-Sight に送信するには、ST10:0 以外の宛先アドレスを使用してください。

  • [Local/Remote]: アプリケーションに応じて、[Local] または [Remote] に設定します。
  • [MultiHop]: この設定は、以前に入力された情報に依存します。In-Sight との正常な通信のためには、とりあえず YES に設定しておきます。

[MultiHop] タブ

[MultiHop] タブは、In-Sight システムのアドレスとコントローラの位置を識別するために使用されます。In-Sight ビジョンシステムへの通信を経路指定するためには、両方とも識別される必要があります。前述のように、PC3 通信時には、In-Sight ビジョンシステムは ControlLogix モジュールとして機能します。

MSG 命令を使用してデータを受信するには

次の例では、In-Sight スプレッドシートに WriteEIP 関数を含んだセルがあり、MapSpec が「0f:4f:8il:10il:12il」であると仮定します。

例:

RSLogix500 MSG 命令で、ターゲットデバイスのデータテーブルアドレスが「N8: 2」であり (DTA = N8:2)、3 つの要素を要求しています (n = 3)。

MSG 命令では、「N」は整数が転送されることを示し、「2」は MapSpec の 3 番目の項目で始まることを示します。

注意: すべての MapSpec パラメータはゼロから始まります。

In-Sight ビジョンシステムは、MapSpec の 3 番目の項目のデータ (8il) と、その後に続く 10il と 12il (すべて整数の 3 つの要素) で応答します。

例:

DTA = F8:1 n = 2

応答は、4f (MapSpec の 2 番目の項目) のデータになり、In-Sight は 8il と 10il のすべてのデータを結合して、2 番目の浮動小数点数の生成を試みます。連続している同種の要素 (2 つの浮動小数点数、42 の整数、13 の文字など) のみを要求できます。

例:

DTA = F8:0 n = 2

応答は、0f と 4f のデータ (両方とも浮動小数点数の 2 つの要素) になります。

例:

DTA = N8:3 n = 2

応答は、10il と 12il のデータ (両方とも整数の 2 つの要素) になります。この例でも、同じ型の連続する要素を取得しています。

SLC5/05 からネイティブモードコマンドを送信するには

  1. 必要に応じて、SLC5/05 を設定します。
  2. ネイティブモードコマンドを保持する文字列テーブルを作成します。

  3. 必要なネイティブモードコマンド文字列をデータファイルに追加します。

  4. 新しいメッセージ (MSG) 命令をラダーロジックに追加して、次の例に示されているように設定します。

  5. MSG 設定画面を開き、次のように設定します。

THIS CONTROLLER (SLC) | パラメータ | 説明
Data Table Address: | ST10:1 | 上記で作成した文字列テーブル (ST) の最初の要素
Size in Elements: | 1 | 常に 1 に設定します。PCCC MSG では、一度に 1 つの文字列 (したがって 1 つのコマンド) しか送信できません。
Channel: | 1 | コントローラのイーサネットチャネルに設定します。
TARGET DEVICE (In-Sight センサ) | パラメータ | 説明
Message Timeout: | ([Channel Configuration] ダイアログから)
Data Table Address: | ST10:0 | これは宛先アドレスです。ネイティブモードコマンドの場合、これは常に ST10:0 です。
  6. [MultiHop] タブをクリックして、必要に応じて設定します。

例: この例では、設定する必要があるのは、送信先の In-Sight ビジョンシステムの IP アドレスのみです。

  7. 設定が終了したら、MSG ウィンドウを閉じます。
  8. ラダーロジックを保存して、コントローラにダウンロードした後、オンラインにして、コントローラを RUN モードで設定します。
  9. メッセージをトリガして、In-Sight ビジョンシステムに送信します。

メッセージ命令の結果

命令への入力が high に設定されると、メッセージ命令の Enable (EN) ビットが 1 にセットされます。In-Sight が、ネイティブモードコマンドが受信され、正常に実行されたことを応答すると、Done (DN) ビットが 1 にセットされます。Error ビット (ER) が有効な場合 (1 にセットされた場合) は、メッセージ命令に問題があったことを意味します。エラーが発生した場合は、MSG 命令の設定画面をクリックしてください。ウィンドウの下部にエラーコードが表示されます。エラーコードを下の表に示します。

エラーコード

エラーコード | 説明 | ネイティブモード戻りコード
00 | 成功。エラーはありません。 | 1
10 | 違法なコマンドまたは形式です。 | 0
EE | コマンドを実行できません。 | -2、-4、または -5
D9 | ユーザ指定のタイムアウトまでに応答を受信しませんでした。 | NA
F2 | 無効なパラメータまたは無効なデータです。 | -1


WriteImageFTP 関数の設定

WriteImageFTP Function 関数の設定

In-Sight 関数リファレンス

WriteImageFTP 関数は、取り込んだ画像をネットワークの FTP サーバに出力します。一般的には、検査に失敗した画像を自動保存するために使用します。

  1. スプレッドシートに WriteImageFTP 関数を挿入して、WriteImageFTP 関数のプロパティシートを開きます。以下のパラメータを設定します。残りのパラメータについてはデフォルトの設定を使用しています。
    • ホスト名では、ご使用の PC の名前を選択します (ご使用の PC 名が表示されない場合は、ここをクリックしてください)。
    • FTP サーバにログオンするためのユーザ名とパスワードを入力します。In-Sight Explorer ソフトウェアには、FTP サーバが組み込まれています。この FTP サーバは、In-Sight Explorer を開くと実行します。In-Sight Explorer の FTP サーバを使用する場合、デフォルトのユーザ名は admin であり、そのパスワードは未設定です。
    • 画像ファイルのファイル名を入力します。

  2. パラメータを設定したら、[OK] をクリックして、プロパティシートを閉じます。
  3. ビジョンシステムをオンラインにします。
  4. ビジョンシステムをトリガします。取り込んだ各画像について、指定したホストにビットマップまたはJpgファイルが保存されます。

注意: 標準ユーザをサポートするために、In-Sight Explorer FTP Serverを使用するときの、画像のデフォルトの保存先が変更されています (In-Sight 4.5.0 以降)。Emulator フォルダは、C:\ProgramData\Cognex\In-Sight\In-Sight Explorer x.x.x\Emulator (Windows Vista 以降)、および C:\Documents and Settings\All Users\Application Data\Cognex\In-Sight\In-Sight Explorer x.x.x\Emulator (Windows XP) です。

FTP 問題のトラブルシューティング

  • In-Sight ビジョンシステムをオンラインにする必要があります。オフラインモードでは WriteImageFTP 関数は実行されず、画像が送信されません。
  • インターネット接続のファイアウォールは無効にする必要があります。詳細については、ファイアウォールのトピックを参照してください。
  • IIS (Internet Information Services) がインストールされている場合は、IIS がポート 21 を使用していないことを確認します。ポート 21 が使用されている場合は、22 などの未使用のポートに変更します。
  • ローカル PC の名前が [ホスト名] ドロップダウンリストに表示されない場合は、PC の IP アドレスを手動で入力します。

FAQ

Q: 同じネットワーク上に複数の FTP サーバを設置できますか？

A: 同じネットワーク上の複数の PC で In-Sight Explorer を実行することができます。ただし、同一 PC 上で複数の FTP サーバを実行する場合は、同じ FTP ポート番号 21 を使用することができませんのでご注意ください。

Q: 画像をローカル PC 以外の場所にも保存することはできますか？

A: FTP サーバがインストールされている別の PC がある場合は、その PC を保存場所として選択することができます。In-Sight Explorer ソフトウェアは、FTP サーバとみなされることにご注意ください。サードパーティ製の FTP サーバを使用する場合は、In-Sight Explorer の起動前に実行してください。ほかの FTP サーバが実行されていない場合は、In-Sight Explorer が起動している必要があります。ホスト名が In-Sight Explorer に表示されない場合や、サードパーティ製の FTP サーバを使用する場合は、WriteImageFTP ダイアログで PC の IP アドレスを指定する必要があります。

Q: FTP 関数を使用するときには、In-Sight Explorer を開く必要がありますか？

A: In-Sight Explorer は FTP サーバとして機能します。In-Sight Explorer が実行していない場合は、サードパーティ製の FTP サーバを実行しておく必要があります。

Q: In-Sight Explorer はファイル転送に何番のポートを使用しますか？

A: In-Sight Explorer はファイル転送 (FTP) にポート 21 を使用します。In-Sight Explorer のほかにも別のアプリケーションがポート 21 を使用していた場合、WriteImageFTP 関数は正常に実行されません。IT 部門に問い合わせて、すべてのファイアウォールおよびウィルス対策ソフトウェアを無効にするか、21 番以外のポートを使用するように設定してください。


三菱電機 MELSEC 通信プロトコル

三菱電機の通信

In-Sight 通信リファレンス

In-Sight ビジョンシステムは、3 種類の MELSEC 通信プロトコルによる三菱電機 MELSEC Q シリーズ、L シリーズ、FX シリーズオートメーションコントローラとの通信に対応しています。

注意:In-Sight Explorer GUI では、「オートメーションコントローラ」と同じ意味の「プログラマブルロジックコントローラ/モーションコントローラ (PLC/MC)」という用語が使用されています。

In-Sight ビジョンシステムは以下の 3 つの方法により、三菱電機 MELSEC オートメーションコントローラと通信することができます。

  • CC-Link
  • SLMP
  • SLMP スキャナ

また、SLMP スキャナプロトコルを使用する iQ Sensor Solution 用に In-Sight ビジョンシステムを設定することもできます。

  • iQ Sensor Solution

CC-Link

In-Sight CIO-MICRO-CC I/O モジュールを使用すると、CC-Link ネットワーク上のオートメーションコントローラと In-Sight ビジョンシステムの間の通信を容易に行うことができます。この接続ではデータ同期のみがサポートされ、オートメーションコントローラからビジョンシステムにコマンド (「trigger」、「change job」、「Online/Offline」など) を送信する手段は組み込まれていません。CC-Link V1 ネットワークでは最大 112 ビットおよび 16 ワードの入力および出力データがサポートされます。また、1 つのステーションの占有および 1 ～ 8 サイクル間での使用に対応しています。CC-Link V2 ネットワークでは最大 1008 ビットおよび 128 ワードの入力および出力データがサポートされます。また、1 つ ～ 4 つのステーションの占有および 1 ～ 8 サイクル間での使用に対応しています。CC-Link ネットワーク上のビジョンシステムとオートメーションコントローラの間で CIO-MICRO-CC I/O モジュールを経由してデータを通信するには、ReadCCLinkBitBuffer、ReadCCLinkWordBuffer、WriteCCLinkBitBuffer、WriteCCLinkWordBuffer の各関数を使用します。

SLMP

基本的な Seamless Message Protocol (SLMP) 接続では、オートメーションコントローラと In-Sight ビジョンシステムの間でのデータ交信をサポートしています。SLMP 接続では、オートメーションコントローラからビジョンシステムにコマンド (「trigger」、「change job」、「Online/Offline」など) を送信する手段は組み込まれていません。SLMP 接続を介して In-Sight コマンドを実行するには、In-Sight のネイティブモード文字列コマンドを使用し、オートメーションコントローラにてプログラミングする必要があります。SLMP 接続は、オートメーションコントローラによって発行される In-Sight コマンドで制御を行わないアプリケーションや、既にネイティブモード文字列コマンドで動作するように設計されたアプリケーションとの互換性を持たせる場合に最適です。

SLMP スキャナ

SLMP スキャナ接続は、オートメーションコントローラと In-Sight ビジョンシステムの間でのデータ交信をサポートしています。SLMP スキャナ接続では、コントロールおよびステータスレジスタを直接指定し、オートメーションコントローラからビジョンシステムのコマンドを発行するためのコントロールおよびステータスチャネルも提供しています。SLMP スキャナ接続では、コントロールおよびステータスチャネルには含まれていないより高度なネイティブモード文字列コマンドの送受信を行うための専用コマンドチャネルが備えられています。SLMP スキャナ接続は、オートメーションコントローラによって発行されるビジョンシステムコマンドを使用するアプリケーションに最適です。この場合、ネイティブモードコマンドを使用する既存のアプリケーションと互換性を持たせる必要はありません。

このトピックでは、In-Sight ビジョンシステムにおける、In-Sight Explorer を使用した SLMP スキャナの設定および使用方法について説明します。EasyBuilder 開発環境内で SLMP スキャナを使用する方法の詳細については、パレットの [ヘルプ] タブを参照してください。

注意:SLMP スキャナ接続は、In-Sight Explorer のファームウェアバージョン 4.5.0 以上、および In-Sight Explorer のソフトウェアバージョン 4.5.0 以上でのみサポートされています。

iQ Sensor Solution

三菱電機 iQ Sensor Solution は、GX Works2 ソフトウェアで SLMP スキャナプロトコルを介して In-Sight ビジョンシステムを制御できるようにする、ファクトリプロトコルです。

このトピックでは、ネットワーク上の In-Sight ビジョンシステムの検出、ビジョンシステムの SLMP スキャナパラメータ設定の読み取り/書き込み、GX Works 2 からのビジョンシステムステータスのモニタの方法について説明します。

注意:　iQ Sensor Solution は、In-Sight Explorer のファームウェアバージョン 4.9.0 以上、および In-Sight Explorer のソフトウェアバージョン 4.9.0 以上でのみサポートされています。

関連項目

  • CC-Link ネットワーク上の三菱電機オートメーションコントローラとの Anybus X-gateway 経由での通信
  • CC-Link ネットワーク上の三菱電機オートメーションコントローラとの In-Sight CIO-MICRO-CC 経由での通信
  • SLMP 通信で使用するための In-Sight ビジョンシステムの設定
  • SLMP スキャナ通信で使用するための In-Sight ビジョンシステムの設定
  • SLMP スキャナのファクトリインタフェース
  • iQ Sensor Solution 経由での三菱電機 L シリーズオートメーションコントローラとの通信


CC-Link ネットワーク上の三菱電機オートメーションコントローラとの In-Sight CIO-MICRO-CC I/O モジュール経由での通信

三菱電機の通信

In-Sight 通信リファレンス

このトピックでは、三菱電機 CC-Link 通信プロトコルの概要を説明します。また、In-Sight CIO-MICRO-CC I/O モジュールを使用して、In-Sight ビジョンシステムを三菱電機 Q シリーズオートメーションコントローラと連携する方法を説明します。CC-Link の指定ケーブルを使用して、CIO-MICRO-CC I/O モジュールとビジョンシステムをオートメーションコントローラに直接接続し、CC-Link 通信のエンドポイント設定またはミッドスパン設定のいずれかで使用することができます。デバイスの接続とインストールの詳細については、In-Sight Explorer ソフトウェアに付属の『In-Sight® CIO-MICRO および CIO-MICRO-CC I/O モジュール日本語版インストールガイド』を参照してください。

CC-Link プロトコル通信で使用するための In-Sight ビジョンシステムの設定

この節では、CC-Link 通信を使用して、In-Sight ビジョンシステムを三菱電機 Q シリーズオートメーションコントローラに接続する方法を説明します。CIO-MICRO-CC I/O モジュールは、In-Sight ビジョンシステムと三菱電機 Q シリーズオートメーションコントローラの間のゲートウェイとして動作します。In-Sight ビジョンシステムと三菱電機オートメーションコントローラの間の CC-Link プロトコル接続を作成するには、ReadCCLinkBitBuffer 関数、ReadCCLinkWordBuffer 関数、WriteCCLinkBitBuffer 関数、および WriteCCLinkWordBuffer 関数を使用します。

  • CC-Link 通信で使用するための In-Sight CIO-MICRO-CC の設定
  • In-Sight ビジョンシステムから三菱電機オートメーションコントローラへのデータの取得
  • 三菱電機オートメーションコントローラから In-Sight ビジョンシステムへのデータの送信

CC-Link 通信で使用するための In-Sight CIO-MICRO-CC の設定

CC-Link 通信のセットアップは、CIO-MICRO-CC I/O モジュールと三菱電機 Q シリーズオートメーションコントローラの CC-Link 接続を使用して行います。これらの手順では、In-Sight ビジョンシステムと CIO-MICRO-CC I/O モジュールがオートメーションコントローラに接続され、In-Sight Explorer で CC-Link 通信で使用するための設定を行うことができるようになっていることを前提にしています。

  1. [In-Sight ネットワーク] ペインから、目的の In-Sight ビジョンシステムを選択して接続します。
  2. [センサ] メニューから、[CC-Link の設定] を選択し、[CC-Link の設定] ダイアログを起動します。
  3. [CC-Link の設定] ダイアログに目的の CIO-MICRO-CC I/O モジュールが表示されていない場合は、[I/O モジュール] ボタンを押して [I/O モジュールの設定] ダイアログを開き、I/O モジュールを設定します。
  4. [CC-Link の設定] ダイアログで、接続されている三菱電機 Q シリーズオートメーションコントローラに合うように設定を行います。
  5. [OK] を押して、[CC-Link の設定] ダイアログを閉じます。

In-Sight ビジョンシステムから三菱電機オートメーションコントローラへのデータの取得

In-Sight Explorer スプレッドシートから三菱電機オートメーションコントローラにデータを取得するには、WriteCCLinkBitBuffer (合格/不合格データなど) 関数と WriteCCLinkWordBuffer (整数値、浮動小数点数値、文字列データなど) 関数を使用して、データを転送する必要があります。各関数は、FormatOutputBuffer 関数によって作成されたデータの個々のバッファを取り、そのデータを CIO-MICRO-CC I/O モジュールの CC-Link メモリバッファに書き込みます。このデータは、次の更新サイクルの際に転送されます。

  1. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで FormatOutputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  2. この FormatOutputBuffer 関数は、ワードデータ (整数値、浮動小数点数値、文字列データなど) の送信に使用します。
  3. [FormatOutputBuffer] ダイアログの [追加] ボタンをクリックします。これでセル選択モードになります。三菱電機オートメーションコントローラに転送する整数値、浮動小数点数値、文字列データを選択します。
  4. 送信する追加のデータがある場合は、もう一度、[FormatOutputBuffer] ダイアログから、[追加] ボタンをクリックします。これで再びセル選択モードになります。転送する追加のデータを選択します。
  5. [OK] ボタンをクリックして、[FormatOutputBuffer] ダイアログを閉じます。
  6. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで WriteCCLinkWordBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  7. WriteCCLinkWordBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatOutputBuffer 関数の [image] データ構造体へのセル参照として設定します。
  8. 別の FormatOutputBuffer 関数を追加します。この関数は、ビットデータ (合格/不合格データなど) の送信に使用します。
  9. 手順 3 の指示に従います。FormatOutputBuffer 関数を設定する場合は、「データ型」パラメータが「ビット」に設定されていることを確認します。
  10. [OK] ボタンをクリックして、[FormatOutputBuffer] ダイアログを閉じます。
  11. WriteCCLinkBitBuffer 関数をスプレッドシートに追加します。
  12. WriteCCLinkBitBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatOutputBuffer 関数の [image] データ構造体へのセル参照として設定します。

三菱電機オートメーションコントローラから In-Sight ビジョンシステムへのデータの送信

三菱電機オートメーションコントローラから In-Sight Explorer スプレッドシートにデータを送信するには、ReadCCLinkBitBuffer (有効化/無効化関数など) 関数と ReadCCLinkWordBuffer (整数値、浮動小数点数値、文字列データなど) 関数を使用して、CIO-MICRO-CC I/O モジュールからデータを転送する必要があります。これらの関数は、FormatInputBuffer 関数内で作成された書式設定済みデータを取り、対応する CIO-MICRO-CC I/O モジュールのメモリ領域を読み取ります。その後、このデータを書式設定して In-Sight Explorer スプレッドシートに挿入します。

  1. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで FormatInputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  2. この FormatInputBuffer 関数は、ワードデータ (整数値、浮動小数点数値、文字列データなど) の受信に使用します。
  3. [FormatInputBuffer] ダイアログの [追加] ボタンをクリックして、32 ビットの浮動小数点数と 32 ビットの整数をリストに追加します。
  4. [OK] ボタンをクリックして、[FormatInputBuffer] ダイアログを閉じます。
  5. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで ReadCCLinkWordBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  6. ReadCCLinkWordBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatInputBuffer 関数の [image] データ構造体へのセル参照として設定します。
  7. 別の FormatInputBuffer 関数を追加します。この関数は、ビットデータ (有効化/無効化関数など) の受信に使用します。
  8. [FormatInputBuffer] ダイアログの [追加] ボタンをクリックして、ビットデータタイプを追加します。
  9. [OK] ボタンをクリックして、[FormatInputBuffer] ダイアログを閉じます。
  10. ReadCCLinkBitBuffer 関数をスプレッドシートに追加します。
  11. ReadCCLinkBitBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatInputBuffer 関数の [image] データ構造体へのセル参照として設定します。
  12. 関数を実装したら、In-Sight ビジョンシステムをオンラインにして設定をテストします。

関連項目

  • ReadCCLinkBitBuffer 関数
  • ReadCCLinkWordBuffer 関数
  • WriteCCLinkBitBuffer 関数
  • WriteCCLinkWordBuffer 関数


SLMP 通信で使用するための In-Sight ビジョンシステムの設定

三菱電機の通信

In-Sight 通信リファレンス

この節では、三菱電機 MELSEC Q シリーズおよび FX シリーズオートメーションコントローラへの SLMP 通信を使用して、In-Sight ビジョンシステムに接続する方法について説明します。ReadMC 関数と WriteMC 関数は、In-Sight ビジョンシステムと MELSEC オートメーションコントローラの間の SLMP 通信を作成するために使用され、3E QnA 互換または 1E A 互換バイナリフレームを使用して Batch Read/Write コマンドを送信し、オートメーションコントローラとのデータの送受信を行います。

注意:SLMP が三菱電機 MELSEC FX シリーズ (1E フレーム)Ethernet モジュールに割り当てられているとき、使用可能なポートと最大接続数はモジュールのモデルタイプ (FX3U-ENET または FX3U-ENET-L) によって異なります。詳細については、該当するモジュールのマニュアルを参照してください。

  • In-Sight ビジョンシステムからのデータの取得
  • In-Sight ビジョンシステムへのデータの読み取り
  • 関連項目

In-Sight ビジョンシステムからのデータの取得

In-Sight Explorer スプレッドシートからのデータを MELSEC オートメーションコントローラで取得するには、WriteMC 関数を使用して、データを転送する必要があります。この関数は、FormatOutputBuffer 関数によって作成されたデータのバッファを取り、そのデータをオートメーションコントローラの設定済みメモリ位置に書き込みます。このデータは、次の更新サイクルの際に転送されます。

  1. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで FormatOutputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  2. [FormatOutputBuffer] ダイアログの [追加] ボタンをクリックします。これでセル選択モードになります。オートメーションコントローラに転送されるデータを選択します。
  3. 送信する追加データがある場合は、[FormatOutputBuffer] ダイアログで、[追加] ボタンをクリックします。これで再びセル選択モードになります。転送する追加データを選択します。
  4. [OK] ボタンをクリックして、[FormatOutputBuffer] ダイアログを閉じます。
  5. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで WriteMC 関数をダブルクリックして、スプレッドシートに挿入します。
  6. WriteMC 関数の [バッファ] パラメータを、作成したばかりの FormatOutputBuffer 関数の [image] データ構造体へのセル参照として設定します。
  7. オートメーションコントローラ設定に対する WriteMC 関数のホスト名、ポート、PLC シリーズ、およびデバイスアドレスのパラメータを設定します。

In-Sight ビジョンシステムへのデータの読み取り

MELSEC オートメーションコントローラから In-Sight Explorer スプレッドシートにデータを送信するためには、ReadMC 関数を使用して、データをオートメーションコントローラから読み取る必要があります。この関数は、FormatInputBuffer 関数内で作成されたデータ形式を取得し、読み取るオートメーションコントローラのメモリ位置を判別します。その後、このデータを書式設定して In-Sight Explorer スプレッドシートに挿入します。

  1. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで FormatInputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  2. [FormatInputBuffer] ダイアログの [追加] ボタンをクリックして、32 ビットの浮動小数点数と 32 ビットの整数をリストに追加します。
  3. [OK] ボタンをクリックして、[FormatInputBuffer] ダイアログを閉じます。
  4. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで ReadMC 関数をダブルクリックして、スプレッドシートに挿入します。
  5. ReadMC 関数の [バッファ] パラメータを、作成したばかりの FormatInputBuffer 関数の [image] データ構造体へのセル参照として設定します。
  6. オートメーションコントローラ設定に対する ReadMC 関数のホスト名、ポート、PLC シリーズ、およびデバイスアドレスのパラメータを設定します。
  7. 関数が実装されたら、In-Sight ビジョンシステムをオンラインにして、設定をテストします。

関連項目

  • FormatInputBuffer 関数
  • FormatOutputBuffer 関数
  • ReadMC 関数
  • WriteMC 関数


SLMP スキャナ通信で使用するための In-Sight ビジョンシステムの設定

三菱電機の通信

In-Sight 通信リファレンス

このトピックでは、三菱電機 MELSEC Q シリーズおよび FX シリーズオートメーションコントローラへの SLMP スキャナ通信を使用して、In-Sight ビジョンシステムを接続する方法について説明します。SLMP スキャナを使用すると、In-Sight ビジョンシステムの入力および出力を MELSEC オートメーションコントローラのプロセスメモリにマップすることができます。これらの値は、確立後、SLMP スキャナ通信の更新レートパラメータ設定によって定義される間隔で同期されます。

注意:
  • In-Sight ビジョンシステムの入力および出力のプロセスメモリへのマップの詳細については、「SLMP スキャナのファクトリインタフェース」で説明されています。
  • 三菱電機 MELSEC Q シリーズオートメーションコントローラは、ファームウェアのバージョンが 4.5.0 以降の In-Sight ビジョンシステムでサポートされています。
  • 三菱電機 MELSEC FX シリーズオートメーションコントローラは、ファームウェアのバージョンが 4.7.0 以降の In-Sight ビジョンシステムでサポートされています。

  • SLMP スキャナが MELSEC FX シリーズ (1E フレーム)Ethernet モジュールに割り当てられているとき、使用可能なポートと最大接続数はモジュールのモデルタイプ (FX3U-ENET または FX3U-ENET-L) によって異なります。詳細については、該当するモジュールのマニュアルを参照してください。

    モデルタイプ 使用可能なポート 最大
    接続数
    FX3U-ENET | すべてのポート (C1 ～ C8) | 4
    FX3U-ENET-L | C3 および C4 | 2
  • SLMP スキャナ通信の確立
  • 画像取り込みトリガを受信するための In-Sight ビジョンシステムの設定
  • In-Sight ビジョンシステムからのデータの取得
  • In-Sight ビジョンシステムへのデータの送信
  • 関連項目

SLMP スキャナ通信の確立

In-Sight ビジョンシステムと SLMP スキャナ通信を確立するためには、In-Sight ビジョンシステムの [ネットワークの設定] ダイアログを使用して、SLMP スキャナが有効になるようにビジョンシステムを設定しておく必要があります。有効にした後、[SLMP スキャナ設定] ダイアログを使用して、MELSEC オートメーションコントローラへの接続を設定し、デバイスアドレスおよびさまざまなデータブロックのサイズを定義します。

  1. In-Sight Explorer を開き、該当する In-Sight ビジョンシステムに接続します。
  2. [センサ] メニューから [ネットワークの設定] ダイアログを開きます。
  3. ダイアログの [リアルタイムイーサネットプロトコル] セクションで [SLMP スキャナ] を選択し、[設定] ボタンを押して [SLMP スキャナ設定] ダイアログを起動します。
  4. [SLMP スキャナ設定] ダイアログの [設定] タブを使用して、三菱電機オートメーションコントローラとの接続を確立するのに必要な接続情報を定義します。
  5. [SLMP スキャナ設定] ダイアログの [デバイスのアドレス指定] タブを使用して、デバイスのアドレス、およびオートメーションコントローラと通信するさまざまなデータブロックのサイズを定義します。

注意:In-Sight ビジョンシステムの入力および出力のプロセスメモリへのマップの詳細については、「SLMP スキャナのファクトリインタフェース」で説明されています。

  6. In-Sight ビジョンシステムを再起動し、電源の再投入後に SLMP スキャナサービスを有効にします。

画像取り込みトリガを受信するための In-Sight ビジョンシステムの設定

In-Sight ビジョンシステムを三菱電機オートメーションコントローラと統合すると、MELSEC オートメーションコントローラから画像を取り込むためにビジョンシステムをトリガできるようになります。AcquireImage 関数の [トリガ] パラメータを [ネットワーク] に設定すると、SLMP スキャナ通信が有効になっている場合に、オートメーションコントローラでビジョンシステムをトリガすることができます。

  1. AcquireImage 関数のプロパティシートを開きます。
  2. [トリガ] パラメータを [ネットワーク] に設定します。
  3. In-Sight ビジョンシステムをオンラインにします。
  4. In-Sight ビジョンシステムは、Control and Status レジスタの Network Trigger Enable および Network Trigger ビットを直接操作することによりトリガできます。また Acquisition Status レジスタの Network Trigger Ready、Trigger Ack、Acquiring、および Missed Acq ビットをモニタリングすることによりトリガできます。

In-Sight ビジョンシステムからのデータの取得

In-Sight Explorer スプレッドシートから MELSEC オートメーションコントローラでデータを取得するためには、WriteResultsBuffer 関数を使用して、データが SLMP スキャナスタックにプッシュされる必要があります。この関数は、FormatOutputBuffer 関数によって作成されたデータのバッファを取り、そのデータを MELSEC オートメーションコントローラの設定済みデータテーブルに書き込みます。このデータは、次の更新サイクルの際に転送されます。

  1. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで FormatOutputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  2. [FormatOutputBuffer] ダイアログの [追加] ボタンをクリックします。これでセル選択モードになります。MELSEC オートメーションコントローラに転送されるデータを選択します。
  3. 送信する追加データがある場合は、FormatOutputBuffer ダイアログで、[追加] ボタンをクリックします。これで再びセル選択モードになります。転送する追加データを選択します。
  4. [OK] ボタンをクリックして、[FormatOutputBuffer] ダイアログを閉じます。
  5. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで WriteResultsBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  6. WriteResultsBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatOutputBuffer 関数の [image] データ構造体へのセル参照として設定します。
  7. WriteResultsBuffer 関数の [プロトコル] パラメータを 2 = SLMP スキャナにセットします。
  8. オプションで、[Result Code] パラメータを、検査結果の結果コードを取得するためのスプレッドシート内のセルへのセル参照としてセットします。

In-Sight ビジョンシステムへのデータの送信

MELSEC オートメーションコントローラから In-Sight Explorer スプレッドシートにデータを送信するためには、ReadUserDataBuffer 関数を使用して、データを SLMP スキャナスタックからプルする必要があります。この関数は、FormatInputBuffer 関数内で作成されたデータ形式を取り、MELSEC オートメーションコントローラから受信したデータを読み取って、このデータを書式設定して In-Sight Explorer スプレッドシートに挿入します。

注意:In-Sight ビジョンシステムをトリガして MELSEC オートメーションコントローラからユーザデータを読み取るためには、ビジョンコントロールビットブロックの Set User Data ビットをオートメーションコントローラからトリガする必要があります。

  1. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで FormatInputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  2. [FormatInputBuffer] ダイアログの [追加] ボタンをクリックして、32 ビットの浮動小数点数と 32 ビットの整数をリストに追加します。
  3. [OK] ボタンをクリックして、[FormatInputBuffer] ダイアログを閉じます。
  4. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで ReadUserDataBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  5. ReadUserDataBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatInputBuffer 関数の [image] データ構造体へのセル参照として設定します。
  6. 関数が実装されたら、In-Sight ビジョンシステムをオンラインにして、設定をテストします。

関連項目

  • ReadLatchedUserDataBuffer 関数
  • ReadUserDataBuffer 関数
  • WriteResultsBuffer 関数
  • SLMP スキャナのファクトリインタフェース


SLMP スキャナのファクトリインタフェース

SLMP 通信

In-Sight 関数リファレンス

  • SLMP スキャナの操作
  • SLMP スキャナのファクトリインタフェース
  • SLMP スキャナのポーリング

SLMP スキャナの操作

SLMP スキャナはコマンド/応答ベースのプロトコルであり、In-Sight ビジョンシステムから送信されます。またビジョンシステムは、コントロールビットが変化したかどうかを判別するために、定期的な間隔で三菱電機オートメーションコントローラに読み取り要求を送信する必要があります。このプロセスは「ポーリング」と呼ばれ、ポーリングサイクルが定義されています。

三菱電機通信プロトコルでは、In-Sight ビジョンシステムからの情報がデータブロックに結合され、ビジョンシステムとオートメーションコントローラの間で転送されます。この手法においては、ビットタイプのデータはオートメーションコントローラのビットレジスタに格納され、ワードタイプのデータはオートメーションコントローラのワードレジスタに格納されます。この実装のため、データブロック内ではビットデータはワードデータには結合されず、これらのデータ項目はオートメーションコントローラ内で個別にアドレス指定することができます。

定義済みデータブロック

定義済みデータブロックを使用すると、ビジョンシステムがオートメーションコントローラとの間でデータの読み取り、および書き込みを行う場所を制御することができます。アプリケーションの設定をするために、コマンド機能に必要なさまざまなコントロールおよびステータスビットは連続したブロックにグループ化され、これらを同時に処理することができます。ビジョンシステムとオートメーションコントローラ間の相互の設定をする場合は、データの各ブロックに対して開始アドレスとデバイスタイプを選択する必要があります。

ビジョンコントロールビットブロック

ビジョンコントロールビットブロックは、オートメーションコントローラが開始する動作に対して、ビットタイプを持つすべての信号を定義します。ビジョンコントロールビットブロックは 32 ビットで、一部のビットは将来の実装用に予約済みです。

ビット 7 | ビット 6 | ビット 5 | ビット 4 | ビット 3 | ビット 2 | ビット 1 | ビット 0
Set Offline | 予約済み |  | Initiate Job Load | Inspection Results Ack | Buffer Results Enable | Trigger | Trigger Enable
ビット 15 | ビット 14 | ビット 13 | ビット 12 | ビット 11 | ビット 10 | ビット 9 | ビット 8
予約済み
ビット 23 | ビット 22 | ビット 21 | ビット 20 | ビット 19 | ビット 18 | ビット 17 | ビット 16
予約済み |  |  |  | Clear Exposure Complete | 予約済み | Initiate String Cmd | Set User Data
ビット 31 | ビット 30 | ビット 29 | ビット 28 | ビット 27 | ビット 26 | ビット 25 | ビット 24
Soft Event 7 | Soft Event 6 | Soft Event 5 | Soft Event 4 | Soft Event 3 | Soft Event 2 | Soft Event 1 | Soft Event 0

ビジョンステータスビットブロック

ビット 7 | ビット 6 | ビット 5 | ビット 4 | ビット 3 | ビット 2 | ビット 1 | ビット 0
Online | Offline Reason |  |  | Missed Acq | Acquiring | Trigger Ack | Trigger Ready
ビット 15 | ビット 14 | ビット 13 | ビット 12 | ビット 11 | ビット 10 | ビット 9 | ビット 8
General Fault | Job Load Failed | Job Load Complete | Job Loading | Results Valid | Results Buffer Overrun | Inspection Completed | Inspecting
ビット 23 | ビット 22 | ビット 21 | ビット 20 | ビット 19 | ビット 18 | ビット 17 | ビット 16
予約済み |  |  | Job Pass | Exposure Complete | String Cmd Error | String Cmd Ack | Set User Data Ack
ビット 31 | ビット 30 | ビット 29 | ビット 28 | ビット 27 | ビット 26 | ビット 25 | ビット 24
Soft Event Ack 7 | Soft Event Ack 6 | Soft Event Ack 5 | Soft Event Ack 4 | Soft Event Ack 3 | Soft Event Ack 2 | Soft Event Ack 1 | Soft Event Ack 0

注意:　ジョブの PASS ビッドの動作は結果バッファリングが無効か有効かによって異なります。
バッファリングが無効 バッファリングが有効
検査が完了したときに [ジョブの PASS/FAIL] のセルが合格を示すとセットされます。そうでない場合は、クリアされたままです。

注意:　Inspection Completed ビットが立つ前のジョブ PASS ビットは有効です。

新しい結果が InspectionResults 属性に挿入され、[ジョブの PASS/FAIL] のセルがその結果に対して合格を示すとセットされます。そうでない場合は、クリアされたままです。InspectionResultsAck 属性を真に設定することによって結果が確認応答され、ビットがクリアされるまで、状態は変化しません。

注意:　Results Valid ビットがセットされる前のジョブ PASS ビットは有効です。

出力ワードブロック

ワード 0 | ワード 1 | ワード 2 | ワード 3 | ワード 4 | ワード 5 ..N
Current Job ID | Acquisition ID | Inspection ID | Inspection Result Code | Inspection Result Length | Inspection Results

入力ワードブロック

ワード 0 | ワード 1 | ワード 2 ..N
Job Load ID | User Data Length | User Data

文字列コマンドワードブロック

ワード 0 | ワード 1 ..N
Length | String Command

文字列コマンド結果ワードブロック

ワード 0 | ワード 1 | ワード 2 ..N
Result Code | Length | String Command Result

SLMP スキャナのファクトリインタフェース

これらのモジュールを使用することによって、In-Sight ビジョンシステムの各種サブシステムへのアクセスが可能になります。

  • Acquisition
  • Inspection
  • Job Management
  • Soft Events
  • String Commands

Acquisition

Acquisition のコントロールおよびステータスビットを使用すると、オートメーションコントローラは、In-Sight ビジョンシステムで画像取り込みをトリガして、画像取り込み完了時期を判別し、ビジョンシステムをオフラインステータスにして画像取り込みトリガを受け入れないようにすることができます。

  • Acquisition Control:　In-Sight ビジョンシステムの画像取り込みとオンライン/オフラインステータスを制御します。

ビット

名前

説明

0

Trigger Enable

このフィールドがセットされると、Trigger ビットによるトリガが有効になります。このビットをクリアすると、ネットワークトリガメカニズムが無効になります。

1

Trigger

次の条件が満たされたとき、このビットをセットすると画像取り込みをします。

  • In-Sight ビジョンシステムがオンラインである。
  • Trigger Enable ビットがセットされている。
  • AcquireImage 関数の [トリガ] パラメータが [ネットワーク] または [外部] に設定されている。
2 Clear Exposure Complete

この信号が High のときは、Exposure Complete ステータスは Low のままです。この信号が Low に設定されると、次の露光完了時に Exposure Complete ステータスが High に設定されます。

3 ～ 6

予約済み

使用されません。

7

Set Offline

このビットがセットされると、このビットが再びクリアされるまで、In-Sight ビジョンシステムはオフラインになります。
  • Acquisition Status:　In-Sight ビジョンシステムの画像取り込みとオンライン/オフラインステータスを示します。

ビット

名前

説明

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 ビットのフィールドです。

Offline Reason | 名前 | 説明
0 | Online | ビジョンシステムはオンラインです。
1 | Programming | ビジョンシステムのジョブが変更されています。
2 | Discrete Offline | ディスクリート信号によって、ビジョンシステムがオフラインになっています。
3 | Comm.Offline | 通信プロトコルによって、ビジョンシステムがオフラインになっています。

注意:　複数のデバイスから In-Sight ビジョンシステムはオフラインにできます。このフィールドでは最小限のチャネルステータスを返します。

7

Online

このビットは、In-Sight ビジョンシステムがオンラインのときにセットされ、ビジョンシステムがオフラインのときにクリアされます。ビジョンシステムがオフラインのときには、Offline Reason フィールドを調べて、原因を判断してください。

8 ～ 23

Exposure Complete

このビットは、In-Sight ビジョンシステムが露光完了すると High となり、画像取り込みトリガが与えられると Low となります。このビットは、Clear Exposure Complete 信号が High に設定されると Low に保持されます。

  • Acquisition ID: In-Sight ビジョンシステムによる特定の画像取り込みと検査結果を一致させます。
バイト数 | 名前 | 説明
0 ～ 1 | Acquisition ID | この ID は現在の画像取り込みに関連付けられています。Network Trigger ビットを使用して画像取り込みされ、Trigger Ack 信号がアサートされると、この ID が Acquisition ID に設定されます。

一般的な画像取り込みシーケンス

注意: In-Sight ビジョンシステムを、ネイティブモードコマンドを介した PLC/モーションコントローラから画像取り込みトリガを受け入れるように設定する場合は、 [イベント] コードを 8 に設定 (SW8) した SetEvent and Wait 関数を使用することを推奨します。これによって、ビジョンシステムは、画像取り込みと検査の両方が完了してから「完了」レスポンスを PLC/モーションコントローラに送り返すようになるため、前の検査結果が PLC/モーションコントローラに送信されることはなくなります。ビジョンシステムからの「完了」レスポンスを使用して、検査結果の読み取り要求を送信する条件付き PLC ロジックを作成することもできます。

In-Sight ビジョンシステムは、Acquisition Control レジスタの Network Trigger Enable および Network Trigger ビットを直接操作することにより画像取り込みが行えます。また Acquisition Status レジスタの Network Trigger Ready、Trigger Ack、Acquiring、および Missed Acq ビットにより画像取り込み状況をモニタリングすることができます。

最初の起動時には、Network Trigger Enable ビットは偽であり、トリガを有効にするには真に設定する必要があります。ビジョンシステムがトリガを受け入れる準備ができると、Acquisition Status レジスタの Network Trigger Ready ビットが真に設定されます。

Network Trigger Enable および Network Trigger Ready ビットが真である間、Trigger ビットが 0 から 1 に変化するのをビジョンシステムは見ており、それが確認されると画像取り込みが開始されます。Acquisition Status レジスタの Trigger Ack ビットが同じ状態値になるまで、Trigger ビットを新しい状態で保持する必要があります (これは、ビジョンシステムが変化を確実に確認するために必要なハンドシェークです)。

画像取り込み時には、Acquisition Status レジスタの Network Trigger Ready ビットがクリアされて、Acquiring ビットが真に設定されます。画像取り込みが完了すると、Acquiring ビットはクリアされます。ビジョンシステムが新しい画像取り込みを開始する準備ができると、Network Trigger Ready ビットが再度真に設定されます。

トリガメカニズムを強制的にリセットするには、Acquisition Status レジスタが 0 になるまで Network Trigger Enable ビットを偽に設定します。Network Trigger Enable ビットを真に設定すると、画像取り込みが再度有効になります。

Closed 例: 一般的な画像取り込みシーケンス

Closed 例: 検査シーケンスより高速な画像取り込み

Inspection

検査ステータスおよびコントロールモジュールを使用すると、オートメーションコントローラは、In-Sight ビジョンシステムのビジョン処理部分をモニタして新しい結果が有効になる時期を判別し、ビジョンシステムが新しい結果をキューに入れるように要求することができます。

  • Inspection Control:　ジョブの実行と検査結果の処理を制御します。
ビット | 名前 | 説明
0 | Buffer Results Enable | このビットがセットされると、Inspection Count、Inspection Result Code、および Inspection Results フィールドは、Inspection Results Ack ビットがセットされて確認応答されるまで変化しません。最大 8 つの検査が In-Sight ビジョンシステムのバッファに保持されます。ビジョンシステムは、Results Valid ビットをクリアすることによって、確認応答に応答します。Inspection Results Ack ビットがクリアされて、オートメーションコントローラに送信される新しい結果セットがあるときには、Results Valid ビットはクリアされません。Inspection Results Ack ビットがクリアされて、オートメーションコントローラに送信される結果がビジョンシステムのバッファにそれ以上ない場合には、Results Valid ビットはクリアされたままです。
1 | Inspection Results Ack | Buffer Results Enable ビットがセットされると、Inspection Results Ack ビットは、オートメーションコントローラが Inspection Count、Inspection Result Code、および Inspection Results データを受信したことを確認応答するように、オートメーションコントローラによってセットされます。その後、次の検査結果のセットがオートメーションコントローラに送信されます。Inspection Results Ack ビットがクリアされると、ビジョンシステムは Results Valid ビットをセットします (バッファが空でなかった場合)。
2 | Set User Data | このコマンドは、ビジョンシステムにて消費される User Data フィールドを保持バッファに転送する必要がある場合に、オートメーションコントローラから In-Sight ビジョンシステムへ通知します。
3 ～ 7 | 予約済み | 使用されません。
  • Inspection Status:　ジョブの実行と検査結果のステータスを示します。
ビット | 名前 | 説明
0 | Inspecting | このビットは、In-Sight ビジョンシステムがジョブを実行しているときにセットされます。
1 | Inspection Completed | このビットは、検査の完了時に立ちます。
2 | Results Buffer Overrun | このフィールドは、Buffer Results Enable ビットがセットされていて、Inspection Results Ack ビットをセットすることによってオートメーションコントローラが確認応答しなかったために In-Sight ビジョンシステムが検査結果のセットを破棄したときにセットされます。最大 8 つの検査がビジョンシステムのバッファに保持されるため、このビットは、9 番目の検査がバッファに追加されて、バッファ内の 8 番目の検査に上書きされたときにセットされます。有効な検査が発生して、前の検査が上書きされない限り、このビットはクリアされません。
3 | Results Valid | Inspection Count、Inspection Result、および Inspection Results フィールドが有効なときにセットされます。
4 ～ 6 | 予約済み | 使用されません。
7 | 予約済み | General Fault ビット用に予約済みです。
  • User Data:このデータは、ReadUserDataBuffer または ReadLatchedUserDataBuffer 関数を使用して、In-Sight スプレッドシートに読み込むことができます。
バイト | 名前 | 説明
0 ～ 1 | User Data Option | ユーザデータとともに渡される 16 ビットフィールド。将来の使用に備えて予約済みです。
2 ～ 3 | User Data Length | ユーザデータフィールドの長さ。
4 ～ 1920 | User Data | ReadUserDataBuffer または ReadLatchedUserDataBuffer 関数を使用してスプレッドシートに読み取ることができるデータバッファ。
  • Inspection Results:　これは、WriteResultsBuffer 関数を使用して、In-Sight スプレッドシートから書き込まれたデータです。Inspection Control モジュールの Buffer Results Enable ビットがセットされていた場合、Inspection Results Ack ビットをパルス出力することによって確認応答されるまで、検査結果は変わりません。
バイト | 名前 | 説明
0 ～ 1 | Inspection ID | この結果セットに関連付けられている取り込み ID。
2 ～ 3 | Inspection Result Code | 現在は使用されていません。常に 0 です。
4 ～ 5 | Inspection Results Length | 検査結果データの長さ。
6 ～ 1914 | Inspection Results | WriteResultsBuffer 関数を使用してスプレッドシートから書き出された検査結果データ。

検査/結果シーケンス

In-Sight ビジョンシステムによって取り込まれた画像は、処理のためにキューに入れられます。ビジョンシステムが画像を処理している間、Inspection Status レジスタの Inspecting ビットがセットされます。ビジョンシステムが画像の処理を終了すると、Inspecting ビットがクリアされ、Inspection Completed ビットが立ちます。

Inspection Control レジスタの Buffer Results Enable ビットによって、ビジョンシステムでの検査結果の取り扱い方が決まります。Buffer Results Enable ビットが偽に設定された場合、検査結果は直ちに Inspection Results レジスタに入ります。また、Results Valid ビットが真に設定されます。Buffer Results Enable ビットが真に設定されると、新しい結果がキューに入れられます。以前の検査結果は、オートメーションコントローラによって確認応答されるまで Inspection Results レジスタに入ったままであり、Inspection Results Ack ビットが真に設定されます。Results Valid ビットがクリアされると、オートメーションコントローラは Inspection Results Ack ビットを偽に戻す必要があります。これで、キューに入れられた結果を Inspection Results レジスタに入れることができます (これは、オートメーションコントローラが結果を確実に受信するために必要なハンドシェークです)。

検査ステータスレジスタの動作

ビット | ビット名 | バッファリングが無効な場合の結果 | バッファリングが有効な場合の結果
0 | Inspecting | 画像を検査しているときにセットされます。 | 画像を検査しているときにセットされます。
1 | Inspection Complete | 検査の完了時にトグルされます。 | 検査の完了時にトグルされます。
2 | Results Buffer Overflow | 0 に設定されたままです。 | オートメーションコントローラが前の結果に確認応答しなかったために、検査結果をキューに入れることができなかったときにセットされます。結果バッファがオーバフローします。検査結果が正常にキューに入れられたときにクリアされます。
3 | Results Valid | 新しい結果が Inspection Results レジスタに入れられたときにセットされます。Inspection Results Ack ビットを真に設定することによって結果が確認応答されるまでセットされたままです。 | 新しい結果が Inspection Results レジスタに入れられたときにセットされます。Inspection Results Ack ビットを真に設定することによって結果が確認応答されるまでセットされたままです。

結果バッファリング

検査結果用のキューを有効にする必要があります。有効にした場合、オートメーションコントローラが有限個の検査データ結果を読み取るまでキューに入れておくことができます。これは、システムの複数の部分 (外部オートメーションコントローラを含む) の速度が短時間に低下した場合に、データの流れを滑らかにするのに有効な機能です。

通常、結果が送信される速度より検査を実行する速度の方が速い場合、バッファリングありとバッファリングなしの間の大きな相違点は、破棄される結果を判別するかどうかということです。バッファリングが有効でない場合は最新の結果が保持され、以前の結果はオートメーションコントローラが読み取ることができず失われます。原則的に、最新の結果によって以前の結果が上書きされるだけです。バッファリングが有効である (さらに、キューがいっぱいである) 場合は、結果キューに空きができるまで最新の結果が破棄されます。

Closed 例: 結果オーバフローシーケンス

Job Management

Current Job ID フィールドモジュールは、In-Sight ビジョンシステムの現在のジョブ ID を示します。現在のジョブに ID がない場合は、65535 になります。ジョブをロードするには、Set Offline ビットを使用してオートメーションコントローラがビジョンシステムをオフラインに設定する必要があります。次に、Job Load ID フィールドが該当するジョブの ID に設定され、Initiate Job Load ビットがセットされます。Job Load Complete ビットが High になると、Initiate Job Load ビットがリセットされます。

  • Job Control:Initiate Job Load ビットを Job Load ID フィールドと連動して使用し、ビジョンシステムでジョブのロード操作を開始します。
ビット | 名前 | 説明
0 | Initiate Job Load | セットされると、ビジョンシステムは Job Load ID フィールドで指定したジョブ ID をロードします。
  • Job Status: ジョブのロード操作のステータスを示します。
ビット | 名前 | 説明
0 | Job Loading | このビットは、このプロトコルを通してジョブのロードが開始されたときにセットされます。
1 | Job Load Complete | このビットは、このプロトコルによって開始されたジョブのロード操作の完了時にトグルされます。
2 | Job Load Failed | このビットは、ジョブのロードの最後の試みが失敗したときにセットされます。SLMP スキャナプロトコルがジョブのロードを開始し、ロードに成功するとクリアされます。
  • Job Load ID: オートメーションコントローラが Initiate Job Load ビットと連動して使用することによって、ビジョンシステムでジョブのロード操作を開始します。
バイト | 名前 | 説明
0 ～ 1 | Job Load ID | オートメーションコントローラによって Initiate Job Load ビットがセットされたときにロードされるジョブの ID 番号 (1 ～ 999)。
  • Current Job ID: オートメーションコントローラに現在ロードされているジョブの ID 番号を報告するために、ビジョンシステムが使用します。
バイト | 名前 | 説明
0 | Current Job ID | ビジョンシステムで現在実行中のジョブの ID 番号。または、現在のジョブに ID 番号がない場合は 65535。このフィールドは、ジョブ変更の方法に関係なく、ビジョンシステムでジョブが変更されたときに更新されます。

Soft Events

オートメーションコントローラはソフトイベントを使用して、ジョブの特定の動作をトリガすることができます。各ソフトイベントには、トリガとそれに関連付けられている確認応答ビットがあります。トリガビットの立ち上がりエッジによって、In-Sight ビジョンシステムは、ソフトイベントに関連付けられている動作を処理します。ソフトイベントの開始時に、ビジョンシステムは Soft Event Ack ビットを High に設定します。このビットは、オートメーションコントローラが Trigger ビットをリセットして、ソフトイベントに関連付けられている動作の処理が完了するまで High のまま保持されます。ソフトイベントをトリガできない場合は、General Fault ビットが High に設定されます。このビットは、イベントが正常にトリガされるまで High のまま保持されます。

注意: In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

  • Soft Event Control: スプレッドシートのソフトイベントのトリガを可能にします。これらのビットをセットすると、スプレッドシート内の関連するソフトイベントがトリガされます。
ビット 7 | ビット 6 | ビット 5 | ビット 4 | ビット 3 | ビット 2 | ビット 1 | ビット 0
Soft Event 7 | Soft Event 6 | Soft Event 5 | Soft Event 4 | Soft Event 3 | Soft Event 2 | Soft Event 1 | Soft Event 0

  • Soft Event Status: これらのビットは、ソフトイベントの完了を示すのに使用されます。
ビット 7 | ビット 6 | ビット 5 | ビット 4 | ビット 3 | ビット 2 | ビット 1 | ビット 0
Soft Event Ack 7 | Soft Event Ack 6 | Soft Event Ack 5 | Soft Event Ack 4 | Soft Event Ack 3 | Soft Event Ack 2 | Soft Event Ack 1 | Soft Event Ack 0

String Commands

In-Sight ビジョンシステムのネイティブモード通信に基づく、デバイス相互通信の文字列コマンドをサポートします。ネイティブモードコマンドを使用すると、特にコントロールビットを介してコマンドを発行できない場合に有効で、オートメーションコントローラからビジョンシステムに文字列スタイルのコマンドを発行することができます。この節では、ビジョンシステムに文字列コマンドを開始するときに使用される一般的なインタフェース、およびビジョンシステムからの応答の取得方法を定義します。

  • String Command Control:ビジョンシステムでネイティブモード通信を開始します。
ビット | 名前 | 説明
0 | Initiate String Cmd | このビットがセットされると、String Command フィールドからデータが読み取られ、文字列コマンドが実行されます。コマンドの読み取り時には、String Cmd Ack ビットがセットされます。このビットは、ビジョンシステムがコマンドを確実に受信するために、String Cmd Ack ビットをセットするまで High のまま保持する必要があります。
  • String Command Control Data:ネイティブモードコマンドを定義します。
バイト数 | 名前 | 説明
0 ～ 1 | Command Data Length | ネイティブモードコマンドの長さ。
2 ～ 1920 | String Command | ビジョンシステムによって処理されるネイティブモードコマンド。
  • String Command Status: ネイティブモードコマンド文字列のステータスを示します。
ビット | 名前 | 説明
0 | String Cmd Ack | このビットは、ビジョンシステムがコマンドの処理を完了して、コマンドに対する応答を生成したときにセットされます。ビジョンシステムによってこのビットがセットされると、オートメーションコントローラは安全に文字列コマンド応答データを読み取ることができます。オートメーションコントローラが Initiate String Cmd ビットをクリアした後で、このビットがリセットされます。オートメーションコントローラは、Initiate String Cmd ビットをクリアして String Cmd Ack ビットが Low 状態に戻ってから、新しいコマンドを開始する必要があります。
1 | String Cmd Error | このビットは、前の文字列コマンドの結果がエラーコードを返したかどうかを示します。
  • String Command Response Data:ネイティブモードコマンド文字列のステータスコード。
バイト数 | 名前 | 説明
0 ～ 1 | Response Result Code | ネイティブモードコマンドの応答コード。コマンドが成功したか失敗したかを、このコードで判別することができます。 注意:すべてのネイティブモードコマンドはここで確認できます。各コマンドは正常に実行された場合、1 を返します。失敗した場合、各コマンドに固有のエラーコードがあります。エラーコードの詳細については、各ネイティブモードコマンドのトピックを参照してください。
2 ～ 3 | Response Length | ネイティブモードコマンドの応答データの長さ (バイト単位)。
4 ～ 1920 | Response Data | ネイティブモードコマンドの結果文字列。コマンドによって返されるデータの ASCII 文字列表記です。

SLMP スキャナのポーリング

SLMP スキャナはコマンド/応答ベースのプロトコルであり、In-Sight ビジョンシステムから送信されます。またビジョンシステムは、コントロールビットが変化したかどうかを判別するために、定期的な間隔でオートメーションコントローラに読み取り要求を送信する必要があります。このプロセスは「ポーリング」と呼ばれ、ポーリングサイクルが定義されています。

ポーリングサイクル

すべてのポーリングサイクルの最初には、オートメーションコントローラからビジョンコントロールビットブロックが読み取られます。次に、ビジョンシステムは、コントロールブロック内のビットの状態変化を順番に処理します。一部の状態変化では、オートメーションコントローラとの追加の通信 (Job ID または User Data フィールドの読み取り、ステータスブロックの書き込みなど) が必要です。これらの要求は、1 つのキューに入れられます。ポーリングメカニズムは、キュー内の項目がなくなるかまたはポーリング間隔を超えるまで、これらの要求を順番に処理します。ポーリングサイクルが完了すると、サイクルは繰り返されません。

注意:
  • 前のサイクルでキューに入れられたにもかかわらず処理されていない通信項目は、次のサイクル時に最初に処理されます。サイクルの最初にキュー内にいくつかの項目があるときには、次のポーリングサイクルの処理によって遅延が発生することがある場合でも、各ポーリングサイクルでキュー内の少なくとも 1 つの項目が常に処理されます。
  • [SLMP スキャナ設定] ダイアログ内の [ポーリング間隔 (ms)] パラメータを使用すると、ポーリングサイクルの間隔を定義することができます。

ブロック通信

下の表では、ビジョンコントロールビットブロック内のステータスビットの変化に応じて、In-Sight ビジョンシステムが実行する操作を定義します。

ブロック | 読み取り/書き込みが行われる場合 | 操作
ビジョンコントロールビットブロック | ユーザが指定した定期的な間隔で読み取ります。 | Acquisition Trigger Soft Event ほかのブロックの読み取りまたは書き込み
ビジョンステータスビットブロック | 最初に接続が確立されて、新しいステータスが使用可能なときに書き込まれます。 |
入力ワードブロック | 新しい検査結果が使用可能であるか、またはジョブ変更が発生したときに書き込まれます。 |
出力ワードブロック | Set User Data ビットが 0 から 1 に変化したか、または Initiate Job Load ビットが 0 から 1 に変化したときに読み取られます。 | User Data フィールドの読み取り後、User Data Ack ビットをセットします。
文字列コマンドワードブロック | Initiate String Command ビットが 0 から 1 に変化したときに読み取られます。 | 文字列コマンドを処理します。
文字列コマンド結果ブロック | 新しい文字列コマンド結果が使用可能なときに書き込まれます。 | 文字列コマンド結果ワードブロックの書き込み後、String Cmd Ack ビットをセットします。

一般的なシーケンス図

次の図は、画像取り込みおよび検査サイクルをトリガするオートメーションコントローラに対応する、In-Sight ビジョンシステムの一般的な動作を示しています。


iQ Sensor Solution 経由での三菱電機 L シリーズオートメーションコントローラとの通信

三菱電機の通信

In-Sight 通信リファレンス

  • 概要
  • GX Works2 での In-Sight ビジョンシステムの検出
  • SLMP スキャナパラメータの読み取りと書き込み
  • In-Sight ビジョンシステムのステータスのモニタ
  • 関連項目

概要

このトピックでは、iQ Sensor Solution を In-Sight ビジョンシステム用に設定し、ビジョンシステムと三菱電機オートメーションコントローラの間で GX Works2 を使用してデータを転送する方法について説明します。このトピック中の例は、以下のコンポーネントが使用されていることを前提に記述されています。

  • ファームウェアバージョン 4.9.0 以降を実行可能な In-Sight ビジョンシステム
  • 三菱電機 L シリーズオートメーションコントローラ
  • 三菱電機 GX Works2 ソフトウェア (SWnDNC-GXW2-E) バージョン 1.492 以降
  • In-Sight Explorer 4.9.0 以降に付属の Cognex In-Sight プロファイル言語パッケージ (英語 = CognexInsight_en.ipar、日本語 = CognexInsight_ja.ipar)

注意:三菱電機 iQ Sensor Solution の詳細については、三菱電機の『iQ Sensor Solution リファレンスマニュアル』を参照してください。

三菱電機 iQ Sensor Solution

三菱電機 iQ Sensor Solution は、GX Works2 ソフトウェアで SLMP スキャナプロトコルを介して In-Sight ビジョンシステムを制御できるようにする、ファクトリプロトコルです。iQ Sensor Solution を使用して、GX Works2 でネットワーク上のビジョンシステムの検出、ビジョンシステムの SLMP スキャナパラメータ設定の読み取り/書き込み、ビジョンシステムのステータスのモニタを行うことができます。

注意:GX Works2 の詳細については、『GX Works2 オペレーティングマニュアル』を参照してください。

GX Works2 での In-Sight ビジョンシステムの検出

以下の手順は、In-Sight ビジョンシステムがこれまで SLMP スキャナ用に設定されておらず、サポートされる三菱電機オートメーションコントローラと同じ Ethernet サブネットに接続されていることを前提にしています。

  1. GX Works2 を起動します。

  2. GX Works2 で新規プロジェクトを作成します。

  3. [ツール] メニューの [プロファイル登録] を選択します。[プロファイル登録] ウィンドウが開きます。

  4. Cognex In-Sight プロファイル言語パッケージ (英語 = CognexInsight_en.ipar、日本語 = CognexInsight_ja.ipar) に移動し、[登録] をクリックします。

    注意:デフォルトでは、Cognex In-Sight プロファイル言語パッケージは、C:\Program Files (x86)\Cognex\In-Sight\In-Sight Explorer 4.9.x\Factory Protocol Description\ESPP にインストールされています。

  5. プロジェクトビューで、[パラメータ] → [PC パラメータ] を選択します。[L パラメータ設定] ウィンドウが表示されます。

  6. [内蔵 Ethernet ポート設定] タブを選択します。

  7. [Set Open Setting in Ethernet Configuration] チェックボックスをオンにします。次のメッセージが表示されます。

  8. [はい] をクリックします。[オープン設定] ボタンが、[Ethernet 構成設定] ボタンに変化します。

  9. [Ethernet 構成設定] ボタンをクリックします。[Ethernet 構成 (内蔵 Ethernetポート)] ウィンドウが表示されます。

  10. [Ethernet 構成] → [オンライン] → [接続機器の自動検出] を選択します。次のメッセージが表示されます。

  11. メッセージを読んで、[はい] をクリックします。[Ethernet 構成] ウィンドウに、実際のシステム設定が反映されます。

  12. [設定を反映して閉じる] を選択します。[Ethernet 構成] ウィンドウの設定が保存され、システム設定が完了します。
注意:
  • 接続済みデバイスの自動検出後、[Ethernet 構成設定] ウィンドウには最大 16 個の In-Sight ビジョンシステムが (IP アドレスの昇順に) 表示されます。
  • [接続機器の自動検出] ボタンを押したとき、ネットワーク内のビジョンシステムが iQSS 互換ではない場合、そのビジョンシステムは [Ethernet 構成] ウィンドウに表示されません。ビジョンシステムが iQSS 互換であっても、あらかじめ GX Works2 にプロファイルが追加されていない場合は、「プロファイルのないモジュールが検出されました」と表示されます。
  • 実際のシステム設定でビジョンシステムが検出された場合
  • システム設定内にエラーが存在する場合、接続済みデバイスの自動検出の実行後、[出力] ウィンドウにエラー情報が表示されます。[出力] ウィンドウでエラーをダブルクリックすると、エラーの対象先にジャンプしてエラーを修正できます。
  • トラブルシューティングの詳細については、三菱電機の『iQ Sensor Solution リファレンスマニュアル』を参照してください。

In-Sight ビジョンシステムへの通信設定の反映

IP アドレスなどの通信設定を、In-Sight ビジョンシステムに反映することができます。この機能は、ビジョンシステムの設定を追加、削除、または変更した後に実行します。

  1. GX Works2 で、[Ethernet 構成] ウィンドウを開きます (このウィンドウの表示については、「GX Works2 での In-Sight ビジョンシステムの検出」の節を参照してください)。
  2. 対象の In-Sight ビジョンシステムを選択して、通信設定を行います。

  3. デバイスマップ領域で、対象のビジョンシステムを右クリックします。

  4. [オンライン] → [Communication Setting Reflection of Ethernet Device] を選択します。これにより、選択したビジョンシステムに通信設定が反映されます。

SLMP スキャナパラメータの読み取りと書き込み

注意:SLMP スキャナパラメータの詳細については、SLMP スキャナパラメータの節を参照してください。

  1. GX Works2 で、[Ethernet 構成設定] ウィンドウを開きます(このウィンドウの表示については、「GX Works2 での In-Sight ビジョンシステムの検出」の節を参照してください)。

  2. デバイスマップ領域で、対象の In-Sight ビジョンシステムを右クリックします。

  3. [オンライン] → [Ethernet 機器のパラメータ処理] を選択します。[Ethernet 機器のパラメータ処理] ウィンドウが表示されます。

パラメータの読み取り

  1. ビジョンシステムのパラメータを読み取るには、[Method selection] ドロップダウンリストから、「パラメータの読み取り」を選択します。
  2. 読み取るパラメータのチェックボックスがオンになっていることを確認します。
  3. [実行] ボタンをクリックします。「読み取り値」列に、ビジョンシステムのパラメータ値が表示されます。

パラメータの書き込み

  1. ビジョンシステムのパラメータを書き込むには、[Method selection] ドロップダウンリストから、「パラメータの書き込み」を選択します。
  2. 書き込むパラメータのチェックボックスがオンになっていることを確認します。
  3. 「書き込み値」列に値を入力します。
  4. [実行] ボタンをクリックします。これにより、新しいパラメータ値がビジョンシステムに書き込まれます。

SLMP スキャナパラメータ

ID | 名前 | タイプ | サイズ (バイト) | 説明 | 対応する In-Sight Explorer の GUI
1 | SLMP Scanner Enable1 | バイト | 1 | ビジョンシステムの SLMP スキャナサービスを有効にします。0 = 無効 (デフォルト)、1 以上 = 有効。 | [ネットワークの設定] ダイアログ
2 Controller Type 列挙 1 通信する三菱電機 PLC/MC のタイプを指定します。[Q/L Series (3E Frame)] または [FX Series (1E Frame)]1。デフォルト = [Q/L Series (3E Frame)]。
 [SLMP スキャナ設定] ダイアログ
([設定] タブ)
3 | Controller IP Address | 文字列 | In-Sight ビジョンシステムが接続する PLC/MC の IP アドレスを指定します。
4 | Controller Port | ワード | 2 | PLC/MC が使用する SLMP/MC プロトコルチャネルの TCP ポート番号を 10 進値 (1 ～ 65535) 形式で指定します (デフォルト = 12288 ([Dec]))。
5 | SLMP Timeout | ワード | 2 | PLC/MC から MC プロトコルメッセージへの応答用のタイムアウトをミリ秒単位で指定します (5 ～ 30000、デフォルト = 1000)。
6 | SLMP Poll Interval | ワード | 2 | PLC/MC 上のビジョンコントロールブロックの連続するポーリング間の時間をミリ秒単位で指定します (5 ～ 30000、デフォルト = 1000)。
7 SLMP Control Address 文字列
ビジョンコントロールデータブロックの PLC/MC 先頭アドレス。
なし (デフォルト)、X - 入力リレー、Y - 出力リレー、M - 内部リレー、L - ラッチリレー、F - アナンシエータ、B - リンクリレー、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ
[SLMP スキャナ設定] ダイアログ
([デバイスのアドレス指定] タブ)
8 SLMP Status Address 文字列
ビジョンステータスデータブロックの PLC/MC 先頭アドレス。
なし (デフォルト)、X - 入力リレー、Y - 出力リレー、M - 内部リレー、L - ラッチリレー、F - アナンシエータ、B - リンクリレー、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ
9 SLMP Input Address 文字列
検査結果データブロックの PLC/MC 先頭アドレス。
なし (デフォルト)、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ
10 SLMP Input Size ワード 2
PLC/MC と通信されるデータブロックのサイズを指定します。
2 つのデバイス2 + 入力データ長 (ワード単位) (最大: 960 ワード)
11 SLMP Output Address 文字列
ユーザデータブロックの PLC/MC 先頭アドレス。
なし (デフォルト)、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ
12 SLMP Output Size ワード 2
PLC/MC と通信されるデータブロックのサイズを指定します。
5 つのデバイス3 + 出力データ長 (ワード単位) (最大: 960 ワード)
13 SLMP Command Address 文字列
コマンド文字列の PLC/MC 開始アドレス。
なし (デフォルト)、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ
14 SLMP Command Size ワード 2
PLC/MC と通信されるデータブロックのサイズを指定します。
0 ～ 960 (デフォルト = 0)
15 SLMP Command Result Address 文字列
コマンド結果データの PLC/MC 開始アドレス。
なし (デフォルト)、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ
16 SLMP Command Result Size ワード 2
PLC/MC と通信されるデータブロックのサイズを指定します。
0 ～ 960 (デフォルト = 0)

1 [FX Series (1E Frame)] は iQ Sensor Solution ではサポートされません。

2 2 つのデバイス (4 バイト/2 ワード) は、[Job Load ID] と [User Length] で使用します。

3 5 つのデバイス (10 バイト/5 ワード) は、[Job ID]、[Acquisition ID]、[Inspection ID]、[Inspection Result Code]、[Inspection Result Length] で使用します。

In-Sight ビジョンシステムのステータスのモニタ

  1. GX Works2 を起動して、iQSS ネットワークが設定されているプロジェクトを開きます。
  2. [診断] メニューの [センサ・機器モニタ] を選択します。[Module Selection (センサ・機器モニタ)] ウィンドウが表示されます。

  3. [OK] をクリックします。[センサ・機器モニタ] ウィンドウに、内蔵 Ethernet ポート内蔵 LCPU に接続されているビジョンシステムのステータスが表示されます。

  4. 「デバイスのリスト」または「デバイスマップ領域」から、目的のビジョンシステムを選択します。[モニタ情報] ウィンドウに、ビジョンシステムのステータスが表示されます。

    注意:[Ethernet 構成] ウィンドウでは、一度に 1 つのビジョンシステムのみをモニタすることができます。

関連項目

SLMP スキャナ

[ネットワークの設定] ダイアログ


Motoman の通信

In-Sight 通信リファレンス

Motoman MRC、MRC-II、および XRC ロボットコントローラは、複雑ですが非常に強力なエラーチェックプロトコルを使用して、RS-232 シリアルポート経由でほかのデバイスと通信します。Motoman シリアル通信用に設定すると、In-Sight センサはこのプロトコルを認識して、Motoman コントローラから受信したコマンドに応答できるようになります。

Motoman モードは、In-Sight のネイティブモード通信の拡張です。Motoman ロボットコントローラは、RS-232 ポートを介して数値テキストのみを送信します。In-Sight の標準ネイティブモードコマンドを送信することはできません。その代わりに、Motoman コントローラは、ネイティブモードコマンドの数値表現に必要に応じて追加パラメータを付加したものを In-Sight に送信する必要があります。

Motoman モードはネイティブモードに基づくので、In-Sight のジョブをネイティブモードで開発してテストした後、実際のロボットコントローラが In-Sight センサに接続されている場合のみ Motoman モードに切り替えることができます。ジョブにそのほかの変更を加える必要はありません。

Motoman 通信用に In-Sight センサを設定するには

  1. [センサ] メニューで、[シリアルポートの設定] をクリックします。
  2. [シリアルポートの設定] ダイアログで、[モード] ドロップダウンリストを開いて、[Motoman] を選択します。

これで、In-Sight センサは、Motoman コントローラの標準のシリアルポート設定をデフォルトとして使用するようになります。ただし、コントローラが別の設定を使用する場合には、Motoman コントローラと同じシリアルポート設定を使用するように、In-Sight を設定してください。

注意:
  • Motoman コントローラは、DCI モードで通信するように設定する必要があります。In-Sight から Motoman ロボットコントローラに対して開始された通信はホストモードで動作し、現時点ではサポートされていません。
  • Motoman コントローラではフロー制御を「なし」に指定している場合でも、In-Sight では Motoman コントローラとの通信時に「ハードウェア」によるフロー制御(ハードウェアフロー制御)が必要です。
  • 現時点でテスト済みなのは、Motoman XRC コントローラのみです。

関連項目

次の関連項目では、In-Sight と Motoman ロボットコントローラ間の通信についての詳細を説明します。

  • Motoman コマンド
  • Motoman の例


Motoman コマンド

Motoman モードでの通信

In-Sight 通信リファレンス

データおよびコマンドを送信する際も、データを受信する際も、In-Sight センサとの間のすべてのデータ通信は、Motoman ロボットコントローラが開始します。In-Sight と Motoman コントローラ間の通信は、このコントローラから開始される 2 つのコマンド手順によって行われます。

ロボットコントローラから In-Sight センサにコマンドまたはデータを送信するには

4 つの Motoman SAVEV コマンドを使用します。

  • 1 番目の SAVEV では、コマンドを含んでいる Motoman 変数のインデックスを指定します。
  • 2 番目の SAVEV では、コマンド番号および必要に応じてセルのアドレスを指定します。
  • 3 番目の SAVEV では、このコマンドのパラメータを含んでいる Motoman 変数のインデックスを指定します。
  • 4 番目の SAVEV では、コマンド番号に追加するパラメータを指定します。

In-Sight センサからロボットコントローラにデータを読み込むには

3 つの Motoman SAVEV コマンドを使用し、直後に LOADV コマンドを続けます。

  • 1 番目の SAVEV では、コマンドを含んでいる Motoman 変数のインデックスを指定します。
  • 2 番目の SAVEV では、コマンド番号および必要に応じてセルのアドレスを指定します。
  • 3 番目の SAVEV では、In-Sight から送信された結果データを入れる Motoman 変数のインデックスを指定します。
  • LOADV によってデータが送信されます。

Motoman コマンド

Motoman モードでは、9 つのネイティブモードコマンドがサポートされます。ロボットコントローラのプログラマは、すべてのコマンドを Motoman の D 変数として送信する必要があります。サポートされるコマンドと、それらに対応する Motoman モードを次の表に示します。

ネイティブモードコマンド | 対応する Motoman モード
Set Job (SJ) | 100000
Get Job (GJ) | 200000
Set Online (SO) | 300000
Get Online (GO) | 400000
Set Event (SE) | 500000
Set Integer (SI) | 600000
Set Float (SF) | 700000
Set String (SS) | 800000
Get Value (GV) | 900000

コマンド SJ、GJ、SO、GO、および SE は、コマンドを完全に指定する追加パラメータを必要としません。したがって、100000～199999 の値は SJ コマンドを表し、200000～299999 の値は GJ コマンドを表し、以下同様です。

コマンド SI、SF、SS、および GV は、コマンドの一部としてパラメータ(具体的には、In-Sight スプレッドシート内のセルの参照)を送信する必要があります。しかし、Motoman ロボットコントローラでは英字を送信できないので、目的の In-Sight セルの列参照は数字で指定する必要があります。列番号は 01000～26000 であり、01000 は列 A を示し、02000 は列 B を示し、以下同様です(例えば、26000 は列 Z を示します)。行番号は、そのまま追加すれば、セルのアドレスになります。

Motoman に完全に対応するネイティブモードコマンドは、通常、100000 よりも大きい数になるため、ロボットコントローラによって送信されるすべてのコマンドは Motoman D 変数として格納する必要があります。

完全な Motoman モードコマンドの構築方法

ロボットコントローラ D 値コマンド = N + CC + RRR

    • N は、ネイティブモードに 「対応する」 {100000～900000}
    • CC は、列番号に 「相当する」(01000～26000)
    • RRR は行番号

Motoman コマンドの例

アクティブな In-Sight スプレッドシートのジョブのセル B123 から値を取得するコマンドは、ネイティブモードでは GVB123 になります。Motoman ロボットコントローラでそれに相当するコマンドは、902123 (900000 + 02000 + 123) になります。

Motoman コマンドのほかの例


Motoman コマンドの例

Motoman モードでの通信

In-Sight 通信リファレンス

対応するそれぞれのネイティブモードコマンドの機能の再現に必要な Motoman コマンドシーケンスの例は次のとおりです。各例では、コマンドの保持には Motoman 変数 D001、D001 を指すインデックスの保持には Motoman 変数 B000、送信されるパラメータや受信したデータを保持する Motoman 変数を指すインデックスの保持には Motoman 変数 B001 を使用します。

Motoman コマンドの例

In-Sight センサのスロット番号 13 のジョブをアクティブにします。

ネイティブモードコマンド | Motoman コマンドシーケンス
SJ13 | 0001 SET B000 1 0002 SET D001 100000 0003 SET B001 2 0004 SET B002 13 0005 SAVEV B000 0006 SAVEV D001 0007 SAVEV B001 0008 SAVEV B002
 | Motoman B 変数 B002 はジョブ番号パラメータを保持します。

アクティブな In-Sight ジョブのジョブ番号を取得します。

ネイティブモードコマンド | Motoman コマンドシーケンス
GJ | 0001 SET B000 1 0002 SET D001 200000 0003 SET B001 3 0004 SAVEV B000 0005 SAVEV D001 0006 SAVEV B001 0007 LOADV B003
 | Motoman B 変数 B003 は、アクティブな In-Sight ジョブ(0～19)の番号を保持します。

In-Sight をオンラインに設定します。

ネイティブモードコマンド | Motoman コマンドシーケンス
SO1 | 0001 SET B000 1 0002 SET D001 300000 0003 SET B001 4 0004 SET B004 1 0005 SAVEV B000 0006 SAVEV D001 0007 SAVEV B001 0008 SAVEV B004
 | Motoman B 変数 B004 は、パラメータを保持します。In-Sight をオフラインに設定するには、SETB004 0 にします。

In-Sight センサのオンライン/オフライン状態を取得します。

ネイティブモードコマンド | Motoman コマンドシーケンス
GO | 0001 SET B000 1 0002 SET D001 400000 0003 SET B001 5 0004 SAVEV B000 0005 SAVEV D001 0006 SAVEV B001 0007 LOADV B005
 | Motoman B 変数 B005 は、オンライン/オフライン状態 (1 または 0)を保持します。

「Soft 7」として指定されているアクティブな In-Sight ジョブでイベントをトリガします。

ネイティブモードコマンド | Motoman コマンドシーケンス
SE7 | 0001 SET B000 1 0002 SET D001 500000 0003 SET B001 6 0004 SET B006 7 0005 SAVEV B000 0006 SAVEV D001 0007 SAVEV B001 0008 SAVEV B006
 | Motoman B 変数 B006 はイベント番号パラメータを保持します。

アクティブな In-Sight ジョブのセル A13 に含まれている EditInt 関数の値を整数値 69 に設定します。

ネイティブモードコマンド | Motoman コマンドシーケンス
SIA013 69 | 0001 SET B000 1 0002 SET D001 601013 0003 SET B001 7 0004 SET I007 69 0005 SAVEV B000 0006 SAVEV D001 0007 SAVEV B001 0008 SAVEV I007
 | Motoman I 変数 I007 は整数パラメータを格納します。

アクティブな In-Sight ジョブのセル B14 に含まれている EditFloat 関数の値を倍精度、または実数の値 3.142 に設定します。

ネイティブモードコマンド | Motoman コマンドシーケンス
SFB014 3.142 | 0001 SET B000 1 0002 SET D001 702014 0003 SET B001 8 0004 SET R008 3.142 0005 SAVEV B000 0006 SAVEV D001 0007 SAVEV B001 0008 SAVEV R008
 | Motoman R 変数 R008 は、倍精度または実数のパラメータを格納します。

アクティブな In-Sight ジョブのセル C15 に含まれている EditString 関数の値を文字列、または P 変数「1.1,2.2,3.3,4.4,5.5,6.6,00」に設定します。

ネイティブモードコマンド | Motoman コマンドシーケンス
SSC015 1.1,2.2,3.3,4.4,5.5,6.6,00 | 0001 SET B000 1 0002 SET D001 803015 0003 SET B001 9 0004 SET P009 1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 00 0005 SAVEV B000 0006 SAVEV D001 0007 SAVEV B001 0008 SAVEV P009
 | Motoman P 変数 P009 は P 変数パラメータを格納します。

注意: In-Sight ジョブでは Token 関数を使用して、P 変数の値を解析してください。

アクティブな In-Sight ジョブのセル C15 に含まれている文字列を取得して(直前の例で設定したように)、指定した Motoman 変数に結果を入れます。

ネイティブモードコマンド | Motoman コマンドシーケンス
GVC015 | 0001 SET B000 1 0002 SET D001 903015 0003 SET B001 10 0004 SAVEV B000 0005 SAVEV D001 0006 SAVEV B001 0007 LOADV P010
 | Motoman P 変数 P010 には 1.1,2.2,3.3,4.4,5.5,6.6,00 が含まれます。

アクティブな In-Sight ジョブのセルに含まれている値を取得して、指定した Motoman 変数に結果を入れます。要求されたデータは、コントローラプログラム内の Motoman 変数によって示される指定データ型(整数または浮動小数点数)に合わせてフォーマットされます。

注意: In-Sight のセルに数値が含まれている場合、その数値が整数か浮動小数点数値かにかかわらず、ネイティブモードコマンド GV で要求すると、小数第 3 位までにフォーマットされた浮動小数点数値が返されます。

ネイティブモードコマンド

Motoman コマンドシーケンス

GVD016

0001 SET B000 1
0002 SET D001 904016
0003 SET B001 11
0004 SAVEV B000
0005 SAVEV D001
0006 SAVEV B001
0007 LOADV I011

この例では、次のように I 変数 (整数) が要求されます。したがって、

  1. セル D016 に含まれる値が 123 の場合、Motoman I 変数 I011 には「123」が含まれます。
  2. セル D016 に含まれる値が 123.555 の場合、Motoman I 変数 I011 には、やはり「123」が含まれます。

注意: Motoman モードコマンドでは浮動小数点数値を整数に変換する場合に四捨五入は行われません。小数点以下の部分は単純に切り捨てられます。In-Sight の浮動小数点数値を Motoman 整数値に変換する場合、必要に応じてユーザ側で数学的な四捨五入関数を実行します。

ネイティブモードコマンド

Motoman コマンドシーケンス

GVE017

0001 SET B000 1
0002 SET D001 905017
0003 SET B001 12
0004 SAVEV B000
0005 SAVEV D001
0006 SAVEV B001
0007 LOADV R012

この例では、次のように R 変数 (実数) が要求されます。したがって、

  1. セル E017 に含まれている値が 123 の場合、Motoman R 変数 R012 には「123,000」が含まれます。
  2. セル E017 に含まれている値が 123.555 の場合、Motoman R 変数 R012 には「123.555」が含まれます。


ネイティブモードでの通信

In-Sight 通信リファレンス

ネイティブモードのプロトコルについて

ネイティブモードの基本シンタックス

ネイティブモードの拡張シンタックス

ネイティブモードのコマンドを使用して In-Sight センサとシリアルポート経由で通信するには

ネイティブモードのコマンドを使用して In-Sight センサと Telnet 経由で通信するには

ネイティブモードコマンドのリスト

ネイティブモードのプロトコルについて

In-Sight のネイティブモードのプロトコルは ASCII プロトコルであり、次のいずれからも In-Sight センサを制御することができます。

  • PC 上で動作しているカスタムアプリケーションプログラム
  • 標準シリアル通信をサポートしているリモートホスト
  • Ethernet ネットワークを介する Telnet

ネイティブモードのプロトコルは、基本と拡張の 2 組のコマンドに分けられます。ネイティブモードの基本コマンドは、2 つの文字、パラメータ (必要な場合)、および終端記号で構成されます。ネイティブモードの拡張コマンドには、追加の関数やコマンドが含まれます。コマンドは大文字と小文字が区別されません。Telnet 接続を使用してネイティブモードのコマンドを送信するときの終端記号は、CR + LF (ASCII 文字 13 + 10) です。シリアルポートを介してネイティブモードのコマンドを使用する場合は、[Native モードの詳細設定] ダイアログ で、ほかの終端記号を指定することもできます。デフォルトの終端記号は CR (ASCII 文字 13) です。

ネイティブモードのコマンドがリモートから In-Sight センサに発行されると、In-Sight センサはコマンドを処理して、最後に終端記号が付いた ASCII 文字列を応答として返します。値を設定 (set) するコマンドは、「成功」の場合は 1 を返し、「コマンドが認識されない」場合は 0 を返し、「失敗」の場合は負の数を返します。値を取得 (get) するコマンドは、コマンドによって、異なるさまざまな値を返します。

注意: ネイティブモードコマンドのサブセットは、(一般的な Control and Information Protocol CIP メッセージが可能な) 任意の PLC から明示的メッセージングを使用して EtherNet/IP 接続経由で送信できます。

ネイティブモードの基本シンタックス

ネイティブモードの基本コマンドの一般的なシンタックスは、次のとおりです。

[コマンド] [パラメータ] [終端記号]

[コマンド] は、2 文字で構成されます。一部のネイティブモードコマンドは、オプションの [パラメータ] を取ります。

ネイティブモードの基本コマンドは、[終端記号] で終了します。デフォルトの終端記号は CR (ASCII 文字 13) です。シリアルポートを介してネイティブモードコマンドを使用する場合は、[Native モードの詳細設定] ダイアログで、ほかの終端記号を指定することもできます。

ネイティブモードの基本コマンドでは、大文字と小文字は区別されません。パラメータ間にスペースは存在しません。

注意:

  • ジョブに対して実行されるネイティブモードコマンド (Write Job、Delete Job など) は、主に下位互換性を目的としています。
  • ネイティブモードのファイル転送コマンドでは、標準の 16 ビット CRC (Cyclical Redundancy Check 周期冗長検査) チェックサムが使用されます。

ネイティブモードの拡張シンタックス

ネイティブモードの拡張コマンドの一般的なシンタックスは、次のとおりです。

[コマンド 1] [コマンド 2] [入力パラメータ] [終端記号]

[コマンド 1] は、3 つのネイティブモード拡張コマンド (Get、Put、EV) のいずれかです。[コマンド 2] は、どのデータを [コマンド 1] に基づいて送信、受信、または実行するかを示す、セカンダリコマンドです。[入力パラメータ] は、オプションの補足情報をコマンドに提供します。

ネイティブモードの拡張コマンドは、[終端記号] で終了します。デフォルトの終端記号は CR (ASCII 文字 13) です。シリアルポートを介してネイティブモードコマンドを使用する場合は、[Native モードの詳細設定] ダイアログで、ほかの終端記号を指定することもできます。

ネイティブモードの拡張コマンドでは、大文字と小文字は区別されません。特定の入力パラメータ間にはスペースが存在することに注意してください。

ネイティブモードのコマンドを使用して In-Sight センサとシリアルポート経由で通信するには

  1. [センサ] メニューで、[シリアルポートの設定] をクリックします。
  2. [シリアルポートの設定] ダイアログで、[モード] ドロップダウンリストから [Native] を選択します。
  3. In-Sight センサと同じポート設定を使用するように、リモートのシリアル装置を設定します。

注意: シリアルポート経由でネイティブモードコマンドを使用する場合、[シリアルポートの設定] ダイアログから [Native モードの詳細設定] ダイアログを開いて、別の終端記号を指定することができます。

ネイティブモードのコマンドを使用して In-Sight センサと Telnet 経由で通信するには

Telnet は、Microsoft Windows に組み込まれているクライアントであり、In-Sight のネイティブモードコマンドを使用して、センサとのリモート通信を行うことができます。

  1. リモートホストで、Telnet クライアントアプリケーションを起動します。
  2. Telnet アプリケーションで、In-Sight センサのホスト名または IP アドレスを指定して、In-Sight センサに接続します。接続に成功すると、「Welcome to In-Sight(tm)」というメッセージとともに、ハードウェアセンサタイプ (例えば、1721、3400、5100、5400C) とセッション番号が表示されます。
  3. In-Sight センサの有効なユーザ名とパスワードを入力します。入力するユーザ名とパスワードは、そのセンサのユーザリストに登録されている必要があります。ログオンが成功すると、「User Logged In」というメッセージが表示されます。

Telnet 接続をテストするには、Telnet のプロンプトに対して、ネイティブモードの Get Value コマンド「gva000」を入力します。接続が確立されていた場合、コマンドは 1 を返し、その後に In-Sight センサのスプレッドシートのセル A0 の値 #画像が表示されます。

(リモートホスト上で実行させるための) カスタムアプリケーションを作成して、Telnet のログオンプロセスとネイティブモードデータの送受信を自動化することが可能です。

注意:

  • デフォルトでは、Telnet 経由で接続された場合、デフォルトのタイムアウトはありません。タイムアウト値を設定するには、Put Timeout コマンドを使用します。
  • Telnet クライアントアプリケーションでは、通常、セキュリティの目的から、パスワードはエコーバックされません。
  • UNIX ベースのプラットフォームから Telnet を使用して In-Sight センサにログオンする場合、Telnet コマンドラインは次のフォーマットである必要があります。

> telnet<host> <port>

<host> は、In-Sight センサのホスト名または IP アドレスであり、<port> は、リモートの Telnet ポート (通常は 23) です。ポート番号を指定すると、UNIX のユーザ名とパスワードの認証が無効になり、UNIX システムによってユーザ名とパスワードの入力が求められます。


ネイティブモードコマンド

In-Sight 通信リファレンス

ネイティブモードの基本コマンド

ネイティブモードの拡張コマンド

ネイティブモードの基本コマンド

ファイルおよびジョブコマンド

  • Load File: (LF) In-Sight ビジョンシステムのフラッシュメモリから、指定したジョブをロードして、アクティブジョブにします。
  • Store File: (TF) ビジョンシステムのフラッシュメモリに現在のジョブを保存します。
  • Read File: (RF) ビジョンシステムのフラッシュメモリからジョブを読み取ります。
  • Write File: (WF) ビジョンシステムのフラッシュメモリへジョブを送信します。
  • Delete File: (DF) 指定したジョブまたはセルデータ (.cxd) ファイルをビジョンシステムのフラッシュメモリから削除します。
  • Get File: (GF) ビジョンシステム上のアクティブなジョブのファイル名を返します。
  • Set Job: (SJ) ビジョンシステムのフラッシュメモリにあるジョブスロットの 1 つからジョブをロードし、それをアクティブジョブにします。
  • Store Job: (TJ) ビジョンシステムのフラッシュメモリにある指定されたスロットに現在のジョブを保存します。
  • Read Job: (RJ) 指定した In-Sight ジョブスロットからジョブを読み取ります。
  • Write Job: (WJ) ビジョンシステムのフラッシュメモリにある指定されたジョブスロットへジョブを送信します。
  • Delete Job: In-Sight センサのフラッシュメモリ内の指定したスロットからジョブを削除します。
  • Get Job: (GJ) 現在ロードされているジョブの ID 番号を取得します。

画像コマンド

  • Read BMP: (RB) 現在の画像をビジョンシステムから外部デバイスへ ASCII 16 進フォーマットで送信します。
  • Read Image: (RI) 現在の画像をビジョンシステムから外部デバイスへ ASCII 16 進フォーマットで送信します。
  • Write BMP: (WB) 外部デバイスからビジョンシステムに画像データを送信します。
  • Write Image: (WI) 外部デバイスからビジョンシステムに画像データを送信します。

設定およびセルの値コマンド

  • Get Value: (GV) 指定されたセルまたはシンボリックタグの値を返します。
  • Set Integer: (SI) 指定されたセルまたはシンボリックタグに整数値を設定します。
  • Set Float: (SF) 指定されたセルまたはシンボリックタグに浮動小数点値を設定します。
  • Set Region: (SR) EditRegion セルまたはシンボリックタグの値を設定します。
  • Set String: (SS) 指定されたセルまたはシンボリックタグに文字列値を設定します。
  • Get Info: (GI) In-Sight ビジョンシステムに関するシステム情報を返します。
  • Read Settings: (RS) ビジョンシステムのシステム設定データを読み取ります。
  • Write Settings: (WS) 外部デバイスからビジョンシステムにシステム設定データを送信します。
  • Store Settings: (TS) ビジョンシステムの設定を proc.set ファイルに保存します。
  • Set IP Address Lock: (SL) ビジョンシステムの IP アドレスが無許可で変更されることを防ぎます。
  • Get IP Address Lock: (GL) ビジョンシステム上の IP アドレスのセキュリティステータスを返します。

実行およびオンラインコマンド

  • Set Online: (SO) ビジョンシステムをオンラインモードまたはオフラインモードに設定します。
  • Get Online: (GO) ビジョンシステムをオンライン状態に戻します。
  • Set Event: (SE) 指定したイベントをトリガします。
  • Set Event and Wait: (SW) 指定したイベントをトリガして、コマンドが完了してからレスポンスを返します。
  • Reset System: (RT) ビジョンシステムをリセットします (ビジョンシステムの電源を物理的に入れなおすことに似ています)。
  • Send Message: (SM) 文字列をネイティブモード接続経由でスプレッドシートに送信します。スプレッドシートのイベントをトリガすることもできます。

ネイティブモードの拡張コマンド

  • Get: In-Sight ビジョンシステムとそのスプレッドシートから情報を受信するために使用されます。
  • Put: ビジョンシステムとそのスプレッドシートへ情報を送信するために使用されます。

Evaluate

Evaluate: (EV) In-Sight 関数を実行したり、In-Sight のスプレッドシートに数式を挿入したりします。情報の取得や、In-Sight ビジョンシステムの変更に使用されます。

注意: In-Sight 関数は EV コマンドとともに使用できます。次に上げるコマンドは、EV コマンドを使用して実行される最も一般的な関数の一部です。

  • GetCellName: 指定されたシンボリックタグ名のセルの位置、または指定されたセルのシンボリックタグ名を返します。
  • GetCellValue: 指定されたシンボリックタグまたはスプレッドシートのセルの内容を XML フォーマットで返します。
  • GetDeEnergizeOutputs: [ディスクリート出力設定] ダイアログで設定された [オフライン時に出力の電源を切る] 設定を返します。
  • GetDiagnosticLog: In-Sight ビジョンシステムのエラーを診断するために使用する情報のログを返します。
  • GetDiscreteInput: [ディスクリート入力設定] ダイアログで設定された情報を返します。
  • GetDiscreteOutput: [ディスクリート出力設定] ダイアログで設定された情報を返します。
  • GetDiscreteOutputDelay: [ディスクリート出力設定] ダイアログで設定された遅延設定を返します。
  • GetEasyBuilderTag: 指定したシンボリックタグ名またはセル位置の EasyBuilder タグを返します。
  • GetEIPSingleAttribute: In-Sight EtherNet/IP のクラスおよびインスタンス属性を返します。
  • GetFTPSettings: [FTP の設定] ダイアログで設定された情報を返します。
  • GetHostTable: [In-Sight のホストテーブル] ダイアログに含まれる情報を返します。
  • GetMSBuffer: マシンステータススタック内の 8 つのインデックス付きバッファ (ゼロで始まります) の 1 つに格納されたマシンステータスデータを返します。
  • GetNetwork: [ネットワークの設定] ダイアログで設定された情報を返します。
  • GetSerialPort: [シリアルポートの設定] ダイアログで設定された情報を返します。
  • GetStartup: [スタートアップ] ダイアログで設定された情報を返します。
  • GetSystemConfig: システム情報を返すさまざまなコマンド。
  • GetUserList: [ユーザリスト] ダイアログで設定された情報を返します。
  • SetCellName: 指定されたセルのシンボリックタグ名を設定します。
  • SetCellValue: 特定のセルの値に EasyBuilder タグを追加します。
  • SetDeEnergizeOutputs: [ディスクリート出力設定] ダイアログの [オフライン時に出力の電源を切る] 設定を行います。
  • SetDiscreteInput: [ディスクリート入力設定] ダイアログの設定を行います。
  • SetDiscreteOutput: [ディスクリート出力設定] ダイアログおよび [ディスクリート出力の詳細設定] ダイアログの設定を行います。
  • SetDiscreteOutputDelay: [ディスクリート出力詳細] ダイアログの遅延設定を行います。
  • SetEditRegion: EditRegion 関数を含むセルの設定を行います。
  • SetEIPSingleAttribute:In-Sight EtherNet/IP のクラスおよびインスタンス属性を設定します。
  • SetFavorHostTable:[In-Sight のホストテーブル] の [ホストテーブルを DNS より優先する] オプションを有効または無効にします。
  • SetFTPSettings: [FTP の設定] ダイアログの設定を行います。
  • SetHostTable: [In-Sight のホストテーブル] ダイアログの設定を行います。
  • SetNetwork: [ネットワークの設定] ダイアログの設定を行います。
  • SetSerialPort: [シリアルポートの設定] ダイアログの設定を行います。
  • SetStartup: [スタートアップ] ダイアログの設定を行います。
  • SetSystemConfig: システムパラメータを設定するさまざまなコマンド。


Load File

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサのフラッシュメモリから、指定したジョブをロードして、アクティブジョブにします。

シンタックス: LF[ファイル名]

注意:

  • In-Sight センサはオフラインになっている必要があります。
  • RAMDisk フォルダに保存されているジョブファイルをロードするシンタックスは、LFRAMDisk/[ファイル名] です。例えば、センサの RAMDisk フォルダに保存されているファイル「Product.job」をロードするには、「LFRAMDisk/Product.job」というコマンドを発行します。

Load File の入力

入力 | 説明
Filename | ジョブの名前。コマンドは .JOB 拡張子があってもなくても実行されます。

Load File の出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | ファイル名が見つかりません。
-2 | ジョブのロードに失敗したか、システムがオンラインになっているか、またはファイルが見つかりません。
-4 | ロードするジョブが見つからなかったか、センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Load File の例

「Product」をアクティブなジョブとして In-Sight センサにロードするには、次のコマンドを発行します。LFProduct.job

In-Sight センサは、1 で応答して、ジョブが正常にロードされ、アクティブになったことを示します。

関連項目

Store File

Read File

Write File

Delete File

Get File


Store File

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサのフラッシュメモリに現在のジョブを保存します。

シンタックス: TF[ファイル名]

注意:

  • [オンラインでもジョブを保存] チェックボックスがオンの場合、[フル] または [プロテクト] レベルのアクセス権を持つユーザは、オンライン中にジョブを保存できます。[オンラインでもジョブを保存] チェックボックスがオフの場合、ジョブを保存するには、ビジョンシステムはオフラインでなければなりません。

  • 現在のジョブファイルを指定したファイル名でセンサの RAMDisk フォルダに保存するシンタックスは、TFRAMDisk/[ファイル名] です。例えば、ファイル「Test.job」をセンサの RAMDisk フォルダに保存するには、「TFRAMDisk/Test.job」というコマンドを発行します。

Store File の入力

入力 | 説明
Filename | ジョブの名前。ファイル拡張子は、.JOB である必要があります。

Store File の出力

戻り値

ステータスコードの後に、行の終端文字が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | ファイル名が見つかりません。
-2 | ジョブの保存に失敗したか、センサがオンラインになっているか、またはファイルが見つからなかったため、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Store File の例

現在のジョブに「TEST」という名前を付けて In-Sight センサのフラッシュメモリに保存するには、次のコマンドを発行します。TFTest.job

In-Sight センサは、1 を返すことにより、現在のジョブが正常に保存されたことを示します。

関連項目

Load File

Read File

Write File

Delete File

Get File


Read File

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

指定した In-Sight フラッシュメモリからジョブを読み込みます。

シンタックス: RF[ファイル名]

注意: RAMDisk フォルダに保存されているジョブファイルを読み取るシンタックスは、RFRAMDisk/[ファイル名] です。例えば、センサの RAMDisk フォルダに保存されているファイル「Model.job」を読み取るには、「RFRAMDisk/Model.job」というコマンドを発行します。

Read File の入力

入力 | 説明
Filename | ジョブの名前。コマンドは .JOB 拡張子があってもなくても実行されます。

Read File の出力

戻り値

ステータスコードの後に、行の終端文字およびジョブデータの行が続きます。

ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | ジョブのファイル名がありません。
-2 | 指定された名前で保存されたジョブがないか、ジョブデータが無効なため、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

ジョブデータの行は次のとおりです。

Name | 最初の行には、ジョブ名が表示されます。
Size | 2 番目の行には、ジョブのサイズ(バイト単位)を示す整数値が表示されます。
Data | 実際のジョブデータは、1 行あたり 80 文字にフォーマットされた ASCII 16 進値としてエンコードされます。各行は終端文字で終わります。
CheckSum | 最後の行には、ジョブデータのチェックサムである 4 バイトの ASCII 16 進値が表示されます。

Read File の例

In-Sight センサに保存されている「Model.job」という名前のジョブに関する情報を取得するには、次のコマンドを送信します。RFModel.job

Read File コマンドを送信した後、Telnet ウィンドウに出力される最初の行は、ステータスコード(1)であり、その後に、ジョブ名(Model.job)とバイト単位のデータサイズ(826)が続き、次に、ジョブデータ(ASCII 16 進 フォーマット)が続きます。 最後の行には、4 バイトの ASCII 16 進値によるチェックサム (8767) が表示されます。

注意: データは ASCII 16 進値としてエンコードされるので、RF コマンドによって報告されるサイズは、In-Sight センサに格納された実際の .JOB ファイルのサイズの 2 倍のバイト数になります。

関連項目

Load File

Store File

Write File

Delete File

Get File


Write File

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサのフラッシュメモリにジョブを送信します。

シンタックス: WF

[Filename]

[Size]

[Data]

[Checksum]

注意:

  • In-Sight センサはオフラインになっている必要があります。
  • センサの RAMDisk フォルダに保存されているジョブファイルを送信するには、ファイル名に RAMDisk フォルダのパスを含める必要があります。例えば、「RAMDisk/NewModel.job」と指定します。

Write File の入力

コマンドは分割されて送信され、その後にジョブデータが続きます。ジョブデータは、Read File コマンドから受信したデータの正確なコピーである必要があります。ジョブデータの行は次のとおりです。

入力 | 説明
Filename | ジョブの名前。コマンドは .JOB 拡張子があってもなくても実行されます。
Size | 2 番目の行には、ジョブのサイズ(バイト単位)を示す整数値が表示されます。
Data | 実際のジョブデータは、1 行あたり 80 文字にフォーマットされた ASCII 16 進値としてエンコードされます。各行は終端文字で終わります。
CheckSum | 最後の行には、ジョブデータのチェックサムである 4 バイトの ASCII 16 進値が表示されます。

Write File の出力

戻り値

ステータスコードの後に、行の終端文字が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | ジョブを書き込むことができなかったか、ジョブデータが無効です。
-3 | チェックサムに失敗しました。チェックサムがジョブデータと一致しません。
-4 | In-Sight センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Write File の例

ジョブデータを「NewModel.job」という名前のジョブファイルに書き込むには、WF というコマンドを発行します。Write File コマンドを発行した後の最初の入力はジョブ名 (NewModel.job) であり、その後にバイト単位のサイズ (826) が続きます。 次に、ジョブファイルの各 ASCII 16 進バイトが入力されます。 最後の行 (8767) に、4 バイトの ASCII 16 進値によるチェックサムが入力されます。

In-Sight センサは、1 を返すことにより、ジョブがセンサのフラッシュメモリに正常に送信されたことを示します。

注意:

  • センサ上にジョブファイルがすでに存在した場合、既存のジョブデータに上書きされます。
  • センサ上にジョブファイルが存在しなかった場合は、指定した名前で新しいジョブファイルが作成されます。

関連項目

Load File

Store File

Read File

Delete File

Get File


Delete File

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

指定したジョブ またはセルデータ (.CXD) ファイルを In-Sight センサのフラッシュメモリから削除します。

シンタックス: DF[ファイル名]

注意:

  • In-Sight センサはオフラインになっている必要があります。
  • センサの RAMDisk フォルダに保存されているジョブまたは .CXD ファイルを削除するシンタックスは、DFRAMDisk/[ファイル名] です。例えば、センサの RAMDisk に保存されているファイル「Test.job」を削除するには、「DFRAMDisk/Test.job」というコマンドを発行します。

Delete File の入力

入力 | 説明
Filename | ジョブ または .CXD ファイルの名前。ファイル拡張子は、.JOB または .CXD である必要があります。

Delete File の出力

戻り値

ステータスコードの後に、行の終端文字が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | ファイル名が見つかりません。
-2 | ファイルが削除されたか、センサがオンラインであるか、指定した名前のファイルがないか、ジョブデータが無効であるため、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Delete File の例

例: ジョブファイルの削除

例: .CXD ファイルの削除

例: ジョブファイルの削除

In-Sight センサから「Test.job」という名前のジョブを削除するには、次のコマンドを発行します。DFTest.job

In-Sight センサは次の行で、ステータスコード 1 で応答して、ジョブが正常に削除されたことを示します。

例: .CXD ファイルの削除

In-Sight センサの RAM ディスクフォルダから「FindPatterns.cxd」という名前の .CXD ファイルを削除するには、次のコマンドを発行します。DFRAMDisk/FindPatterns.cxd

In-Sight センサは次の行でステータスコード 1 で応答して、.CXD ファイルが正常に削除されたことを示します。

関連項目

Load File

Store File

Read File

Write File

Get File


Get File

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサ上のアクティブなジョブのファイル名を返します。

シンタックス: GF

注意:

  • このコマンドを正常に実行するためには、アクティブジョブを保存しておく必要があります。
  • アクティブジョブがセンサの RAMDisk フォルダに保存された場合には、Get File の出力に RAMDisk フォルダのパスが含まれます。例えば、アクティブジョブ「Test.job」がセンサの RAMDisk フォルダに保存されている場合、Get File コマンドは「RAMDisk/Test.job」を返します。

Get File の入力

なし

Get File の出力

戻り値

ステータスコードの後に、ファイル名が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。

Get File の例

In-Sight センサ上のアクティブジョブが「Test.job」という名前であり、保存されていると仮定します。 アクティブジョブのファイル名を返すには、次のコマンドを発行します。GF

In-Sight センサは、ステータスコード 1 を返すことにより、コマンドが正常に実行されたことを示します。次の行には、アクティブジョブのファイル名(Test.job)が表示されます。

注意:

  • アクティブなジョブがリモート In-Sight センサから読み込まれた場合、ファイル名は次の形式で表示されます。FTP: //HostName/filename
  • アクティブジョブが PC からドラッグ & ドロップされ、センサに保存されていなかった場合、ファイル名は .job のフォーマットで表示されます。

関連項目

Load File

Store File

Read File

Write File

Delete File


Set Job

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサのフラッシュメモリ内のジョブスロットの 1 つからジョブをロードし、それをアクティブジョブにします。

シンタックス: SJ[ID]

注意:

  • In-Sight センサはオフラインになっている必要があります。
  • ジョブ ID 番号の機能を使用するには、ロードするジョブが数値 0 ～ 999 の接頭辞を付けて保存されている必要があります。ネットワークに対応していない In-Sight センサとの下位互換性のためには、接頭辞は 0 ～ 19 の範囲である必要があります。

Set Job の入力

入力 | 説明
ID | ロードするジョブの ID 番号(0～999)。

Set Job の出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | ID が 0 より小さいか、整数ではありません。
-2 | ジョブのロードに失敗したか、センサがオンラインになっているか、またはファイルが見つからなかったため、コマンドを実行できませんでした。
-4 | In-Sight センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set Job の例

85Test.job をアクティブなジョブとして In-Sight センサにロードするには、次のコマンドを発行します。SJ85

In-Sight センサは、1 で応答して、ジョブが正常にロードされ、アクティブになったことを示します。

関連項目

Store Job

Read Job

Write Job

Delete Job

Get Job


Store Job

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサ上のフラッシュメモリ内の指定したジョブスロットに現在のジョブを保存します。

シンタックス: TJ[ID][名前]

注意:

  • [オンラインでもジョブを保存] チェックボックスがオンの場合、[フル] または [プロテクト] レベルのアクセス権を持つユーザは、オンライン中にジョブを保存できます。[オンラインでもジョブを保存] チェックボックスがオフの場合、ジョブを保存するには、ビジョンシステムはオフラインでなければなりません。

  • ジョブ ID 番号機能を使用するには、ジョブに数値 0 ～ 999 の接頭辞を付けて保存する必要があります。ネットワークに対応していない In-Sight センサとの下位互換性のためには、接頭辞は 0 ～ 19 の範囲である必要があります。

Store Job の入力

入力 | 説明
ID | ジョブ ID 番号（0～999）。
Name | ジョブの名前。コマンドは、.JOB ファイル拡張子があってもなくても実行されます。

Store Job の出力

戻り値

ステータスコードの後に、行の終端文字が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | ジョブ ID 番号が無効であるか、整数ではありません。
-2 | センサがオンラインであるため、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Store Job の例

現在のジョブに「TEST」という名前を付けて In-Sight センサのスロット 0 に保存するには、次のコマンドを発行します。TJ00Test.job

In-Sight センサは、1 を返すことにより、現在のジョブが正常に保存されたことを示します。

関連項目

Set Job

Read Job

Write Job

Delete Job

Get Job


Read Job

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

指定した In-Sight ジョブスロットからジョブを読み取ります。

シンタックス: RJ[ID]

注意: ネットワークに対応していないセンサとの下位互換性のためには、ジョブ ID 番号は 0～19 の範囲である必要があります。

Read Job の入力

入力 | 説明
ID | ジョブ ID 番号(0～999)。

Read Job の出力

戻り値

ステータスコードの後に、行の終端文字およびジョブデータの行が続きます。

ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | ジョブ ID 番号が有効範囲(0～999)にありません。
-2 | ジョブを読み取ることができなかったか、ジョブスロットが空のため、コマンドを実行できませんでした。
-4 | In-Sight センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

ジョブデータの行は次のとおりです。

Name | 最初の行には、ジョブ名が表示されます。
Size | 2 番目の行には、ジョブのサイズ(バイト単位)を示す整数値が表示されます。
Data | 実際のジョブデータは、1 行あたり 80 文字にフォーマットされた ASCII 16 進値としてエンコードされます。各行は終端文字で終わります。
CheckSum | 最後の行には、ジョブデータのチェックサムである 4 バイトの ASCII 16 進値が表示されます。

Read Job の例

In-Sight センサに保存されている「85Test.job」という名前のジョブに関する情報を取得するには、次のコマンドを送信します。RJ85

Read Job コマンドを発行した後、Telnet ウィンドウに出力される最初の行は、ステータスコード (1) であり、その後に、ジョブ名 (85Test.job) とバイト単位のデータサイズ (826) が続き、次に、ジョブデータ (ASCII 16 進フォーマット) が続きます。最後の行には、4 バイトの ASCII 16 進値によるチェックサム (5384) が表示されます。

注意: データは ASCII 16 進値としてエンコードされるので、RJ コマンドによって報告されるサイズは、In-Sight センサに格納された実際の .JOB ファイルのサイズの 2 倍のバイト数になります。

関連項目

Set Job

Store Job

Write Job

Delete Job

Get Job


Write Job

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサ上のフラッシュメモリ内の指定した In-Sight ジョブスロットにジョブを送信します。

シンタックス: WJ[ID]

[Filename]

[Size]

[Data]

[Checksum]

注意:

  • In-Sight センサはオフラインになっている必要があります。
  • ネットワークに対応していないセンサとの下位互換性のためには、ジョブ ID 番号は 0～19 の範囲である必要があります。

Write Job の入力

コマンドと ID は分割されて送信され、その後にジョブデータが続きます。ジョブデータは、Read Job コマンドから受信したデータの正確なコピーである必要があります。

入力 | 説明
ID | ジョブ ID 番号(0～999)。

ジョブデータの行は次のとおりです。

入力 | 説明
Name | 最初の行には、ジョブ名が表示されます。
Size | 2 番目の行には、ジョブのサイズ(バイト単位)の整数値が格納されています。
Data | 実際のジョブデータは、1 行あたり 80 文字にフォーマットされた ASCII 16 進値としてエンコードされます。各行は終端文字で終わります。
CheckSum | 最後の行には、ジョブデータのチェックサムである 4 バイトの ASCII 16 進値が表示されます。

Write Job の出力

戻り値

ステータスコードの後に、行の終端文字が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | ジョブ ID 番号が有効範囲(0～999)にありません。
-2 | ジョブを書き込むことができなかったか、ジョブデータが無効です。
-3 | チェックサムに失敗しました。チェックサムがジョブデータと一致しません。
-4 | In-Sight センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Write Job の例

ジョブデータを「86Test.job」という名前のジョブファイルに書き込むには、次のコマンドを発行します。WJ86

コマンドを発行した後、ジョブ名(Test.job)を入力し、その後にバイト単位のサイズ(826)を続けます。 次に、ジョブファイルの各 ASCII 16 進バイトが入力されます。 最後の行 (5384) に、4 バイトの ASCII 16 進値によるチェックサムが入力されます。

In-Sight センサは、1 を返すことにより、ジョブがセンサのフラッシュメモリに正常に送信されたことを示します。

注意:

  • センサ上にジョブファイルがすでに存在した場合、既存のジョブデータに上書きされます。
  • センサ上にジョブファイルが存在しなかった場合は、指定した名前で新しいジョブファイルが作成されます。
  • データは ASCII 16 進値としてエンコードされるので、サイズは、In-Sight センサに格納された実際の .JOB ファイルのサイズの 2 倍のバイト数になります。

関連項目

Set Job

Store Job

Read Job

Delete Job

Get Job


Delete Job

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサのフラッシュメモリ内の指定したスロットからジョブを削除します。

シンタックス: DJ[ID]

注意:

  • In-Sight センサはオフラインになっている必要があります。
  • ネットワークに対応していないセンサとの下位互換性のためには、ジョブ ID 番号は 0～19 の範囲である必要があります。

Delete Job の入力

入力 | 説明
ID | ジョブ ID 番号(0～999)。

Delete Job の出力

戻り値

ステータスコードの後に、行の終端文字が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | ジョブ ID 番号が有効範囲(0～999)にありません。
-2 | ジョブを削除することができなかったか、センサがオンラインになっているか、またはジョブスロットが空のため、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Delete Job の例

In-Sight センサのスロット 0 から「Test.job」という名前のジョブを削除するには、次のコマンドを発行します。DJ00Test.job

In-Sight センサは次の行で、ステータスコード 1 で応答して、ジョブが正常に削除されたことを示します。

関連項目

Store Job

Set Job

Read Job

Write Job

Get Job


Get Job

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサ上のアクティブなジョブの ID を返します。

シンタックス: GJ

注意:

  • ジョブ ID 番号の機能を使用するには、ロードするジョブが数値 0 ～ 999 の接頭辞を付けて保存されている必要があります。ネットワークに対応していない In-Sight センサとの下位互換性のためには、接頭辞は 0 ～ 19 の範囲である必要があります。
  • このコマンドを正常に実行するためには、数値の接頭辞を付けてアクティブジョブを保存しておく必要があります。ジョブがドラッグ＆ドロップされたものである場合、ファイル名に数値の接頭辞が付いていなければ、このコマンドは正常に実行されません。
  • Motoman 通信を使用して Get Job コマンドを発行すると、ステータスデータは返されますが、結果データは返されません。Get Job コマンドの代わりに Get File コマンドを使用します。または、スプレッドシートの別のセルにジョブ ID 番号を入力し、Get Value コマンドを使用します。

Get Job の入力

なし

Get Job の出力

戻り値

ステータスコードの後に、アクティブジョブの整数値の ID が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないか、数値の接頭辞が付いていないため、コマンドを実行できませんでした。

Get Job の例

アクティブジョブの ID を返すには、「GJ」コマンドを発行します。

In-Sight センサは、1 で応答して、コマンドが正常に実行されたことを示します。アクティブジョブの名前は、「85.JOB」です。

関連項目

Store Job

Set Job

Read Job

Write Job

Delete Job


Read BMP

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサからリモートデバイスに現在画像を ASCII 16 進フォーマット(1 行 80 文字)で送信します。バイナリに変換すると、結果データは標準の BMP 画像形式になります。

シンタックス: RB

注意: Read BMP コマンドの実行は、Read Image コマンドを実行することと同じです。

Read BMP の入力

なし

Read BMP の出力

戻り値

ステータスコードの後に、行の終端記号および画像データの行が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-4 | In-Sight センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

画像データの行は次のとおりです。

Size | 2 番目の行には、画像のサイズ(バイト単位)を示す整数値が表示されます。
Image | 実際の画像データは、1 行あたり 80 文字にフォーマットされた ASCII 16 進値としてエンコードされます。各行は終端文字で終わります。
CheckSum | 最後の行には、画像データのチェックサムである 4 バイトの ASCII 16 進値が表示されます。

Read BMP の例

In-Sight センサから現在の画像(ASCII 16 進値フォーマット)を読み出すには、次のコマンドを発行します。RB

In-Sight センサは、まず、1 を返すことにより、コマンドが正常に実行されたことを示します。次の行には、バイト単位のサイズ(3436)が表示され、その後に画像データ(ASCII 16 進フォーマット)が続きます。

注意: 上のグラフィックスでは、わかりやすくするために、実際の画像データのほとんどが省略されています。

最後に、4 バイトの ASCII 16 進値によるチェックサム(E213)が返されます。

関連項目

Write BMP


Read Image

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサからリモートデバイスに現在画像を ASCII 16 進フォーマット(1 行 80 文字)で送信します。バイナリに変換すると、結果データは標準の BMP 画像形式になります。

シンタックス: RI

注意: Read Image コマンドの実行は、Read BMP コマンドを実行することと同じです。

Read Image の入力

なし

Read Image の出力

戻り値

ステータスコードの後に、行の終端記号および画像データの行が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-4 | In-Sight センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

画像データの行は次のとおりです。

Size | 2 番目の行には、画像のサイズ(バイト単位)を示す整数値が表示されます。
Image | 実際の画像データは、1 行あたり 80 文字にフォーマットされた ASCII 16 進値としてエンコードされます。各行は終端文字で終わります。
CheckSum | 最後の行には、画像データのチェックサムである 4 バイトの ASCII 16 進値が表示されます。

Read Image の例

In-Sight センサから現在の画像(ASCII 16 進値フォーマット)を読み出すには、次のコマンドを発行します。RI

In-Sight センサは、まず、1 を返すことにより、コマンドが正常に実行されたことを示します。次の行には、バイト単位のデータサイズ(3436)が表示され、その後に画像データ(ASCII 16 進フォーマット)が続きます。

注意: 上のグラフィックスでは、わかりやすくするために、実際の画像データのほとんどが省略されています。

最後に、4 バイトの ASCII 16 進値によるチェックサム(E213)が返されます。

関連項目

Write Image


Write BMP

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

リモート装置から In-Sight センサに画像データを送信します。

シンタックス: WB

[Size]

[画像]

[Checksum]

注意:

  • In-Sight センサはオフラインになっている必要があります。
  • Write BMP コマンドの実行は、Write Image コマンドを実行することと同じです。

Write BMP の入力

コマンドは分割されて送信され、その後に画像データが続きます。画像データは、Read BMP コマンドから送信したデータの正確なコピーである必要があります。画像データの行は次のとおりです。

入力 | 説明
Size | 画像ファイルのサイズ(バイト単位)の整数値。
Image | 実際の画像データは、1 行あたり 80 文字にフォーマットされた ASCII 16 進値としてエンコードされます。各行は終端文字で終わります。
CheckSum | 最後の行には、画像データのチェックサムである 4 バイトの ASCII 16 進値が表示されます。

Write BMP の出力

戻り値

ステータスコードの後に、行の終端文字が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | 画像を書き込むことができなかったか、画像データが無効です。
-3 | チェックサムに失敗しました。チェックサムが画像データと一致しません。
-4 | In-Sight センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Write BMP の例

システム設定をセンサに送信するには、次のコマンドを発行します。WB。Write BMP コマンドを発行した後の最初の入力は、バイト単位のサイズ (3436) です。 次に、画像データの各 ASCII 16 進バイトが入力されます。 最後の行 (E213) に、4 バイトの ASCII 16 進値によるチェックサムが入力されます。

注意: 上のグラフィックスでは、わかりやすくするために、実際の画像データのほとんどが省略されています。

In-Sight センサは、1 を返すことにより、画像データがセンサに正常に送信されたことを示します。

関連項目

Read BMP


Write Image

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

リモート装置から In-Sight センサに画像データを送信します。

シンタックス: WI

[Size]

[画像]

[Checksum]

注意:

  • In-Sight センサはオフラインになっている必要があります。
  • Write Image コマンドの実行は、Write BMP コマンドを実行することと同じです。

Write Image の入力

コマンドは分割されて送信され、その後に画像データが続きます。画像データは、Read Image コマンドから送信したデータの正確なコピーである必要があります。画像データの行は次のとおりです。

入力 | 説明
Size | 画像ファイルのサイズ(バイト単位)の整数値。
Image | 実際の画像データは、1 行あたり 80 文字にフォーマットされた ASCII 16 進値としてエンコードされます。各行は終端文字で終わります。
CheckSum | 最後の行には、画像データのチェックサムである 4 バイトの ASCII 16 進値が表示されます。

Write Image の出力

戻り値

ステータスコードの後に、行の終端文字が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | 画像を書き込むことができなかったか、画像データが無効です。
-3 | チェックサムに失敗しました。チェックサムが画像データと一致しません。
-4 | In-Sight センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Write Image の例

システム設定をセンサに送信するには、次のコマンドを発行します。WI

Write Image コマンドを発行した後の最初の入力は、バイト単位のサイズ(3436)です。 次に、画像データの各 ASCII 16 進バイトが入力されます。最後の行 (E213) に、4 バイトの ASCII 16 進値によるチェックサムが入力されます。

注意: 上のグラフィックスでは、わかりやすくするために、実際の画像データのほとんどが省略されています。

In-Sight センサは、1 を返すことにより、画像データがセンサに正常に送信されたことを示します。

関連項目

Read Image


Get Value

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

EasyBuilder の位置決めツールまたは検査ツールの結果、あるいはジョブデータといった、指定されたシンボリックタグの内容を返します。

シンタックス: GV["Symbolic Tag"]

Get Value の入力

入力 | 説明
"Symbolic Tag" | シンボリックタグの名前 [位置決めツールまたは検査ツールの結果またはジョブデータなど (例: "Job.Robot.FormatString.")]

Get Value の出力

戻り値

ステータスコードの後に、行の終端文字および指定したセルに含まれる値が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | "Symbolic Tag" が無効です。
-2 | コマンドを実行することができませんでした。

注意:: シンボリックタグに数値が含まれている場合、ツールの結果またはジョブデータが整数か浮動小数点数値かにかかわらず、Get Value コマンドで要求すると、小数第 3 位までにフォーマットされた浮動小数点数値が返されます。構造体など、印刷されない文字がセルに含まれている場合は、印刷されない文字の代わりにシャープ記号（#）が返されます。ツールの結果またはジョブデータが空白の場合は、ヌル文字列が送信されます。

Get Value の例

Get Value コマンドを送信することによって、EasyBuilder の位置決めツールまたは検査ツールの結果、あるいはジョブデータといったシンボリックタグに含まれるデータを返すことができます。

  1. 三菱電機社製のロボットコントローラを使用して通信するよう、ジョブを設定していると仮定します。

  2. Get Value ネイティブモードコマンドを使用して、In-Sight ビジョンシステムから文字列データを取得します。次の Telnet クライアントウィンドウに示すように、コマンド GVJob.Robot.FormatString を発行します。

  3. In-Sight ビジョンシステムは コマンドが正常に実行されたことを示す 1 および、フォーマットした文字列中のデータを返します。

スプレッドシートビュー

指定したセルに含まれている値を返します。

Syntax: GV[列][行]

Get Value の入力

入力 | 説明
列 | 取得するセル値の列文字 (A to Z)。
行 | 取得するセル値の行番号。行番号は、3 桁で構成されている必要があります (000 to 399)。

Get Value の出力

戻り値

ステータスコードの後に、行の終端文字および指定したセルに含まれる値が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | セル ID が無効です。
-2 | コマンドを実行することができませんでした。

注意: In-Sight のセルに数値が含まれている場合、その数値が整数か浮動小数点数値かにかかわらず、Get Value コマンドで要求すると、小数第 3 位までにフォーマットされた浮動小数点数値が返されます。構造体など、印刷されない文字がセルに含まれている場合は、印刷されない文字の代わりにシャープ記号（#）が返されます。セルが空白の場合は、ヌル文字列が送信されます。

Get Value の例

  1. セル A1、B0、および B1 が次のような内容であると仮定します。

A1 = 4.000

B0 = EditInt(0,10)

B1 = EditFloat(0,10)

A1 が現在含んでいる値は 4、B0 が含んでいる値は5、B1 が含んでいる値は3.230 です。スプレッドシートには、次のように表示されます。

さまざまな GV コマンドを発行すると、次のような結果が生成されます。


Set Integer

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

EasyBuilder の位置決めツールまたは検査ツールのパラメータ、あるいはジョブデータなどの、シンボリックタグの整数値を指定した整数値に設定します。パラメータまたはジョブデータは整数データタイプである必要があります。

シンタックス: SI["Name"][Space][Int]

Set Integer 入力

入力 | 説明
"Name" | 設定する位置決めツールまたは検査ツールパラメータ (例: "Pattern_1.Model_Type") あるいは EasyBuilder ジョブデータ (例: "Job.External_Reset_Counters") の名前。
Space | "name" と整数値を切り離す空白スペース。
整数 | 設定する整数値。

Set Integer 出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | EasyBuilder の "Name" が無効か、整数データタイプではありません。
-2 | コマンドを実行することができなかったか、指定した整数値がコントロールの有効範囲外です。例えば、指定した名前は有効なデータタイプのコントロールを含んでいません。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set Integer 例

例 1:整数値を含むパラメータ値を変更する

例 2: チェックボックスを含むパラメータをオフまたはオンにする

例 3: ドロップダウンリストの選択を変更する

例 1: 整数値を含むパラメータ値を変更する

新しい整数値を含む Set Integer コマンドを送信することによって、位置決めツールまたは検査ツールパラメータ、あるいはジョブデータの整数値を設定することができます。

  1. ジョブにパターン位置決めツールが含まれ、パターン位置決めツールの現在の [タイムアウト] パラメータが、デフォルトの 5000 ミリ秒に設定されていると仮定します。

  2. このパラメータの設定を Set Integer ネイティブモードコマンドを使用して変更します。次の telnet クライアントウィンドウに示すように、コマンド SIPattern_1.Timeout 500 を発行します。

  3. In-Sight ビジョンシステムは、1 を返すことにより、コマンドが正常に実行されたことを示します。ツールの [タイムアウト] パラメータは、5000 から 500 に正常に変更されました。

例 2: チェックボックスを含むパラメータをオフまたはオンにする

Set Integer コマンドを使用して、1 (有効) または 0 (無効) の値を送信することによって、ツールのチェックボックスパラメータを有効または無効にすることができます。

  1. ジョブにパターン位置決めツールが含まれ、パターン位置決めツールの現在の [スケール許容] パラメータが、デフォルトの無効 (オフ) に設定されていると仮定します。

  2. このパラメータの設定を、特定のパーツに基づき、プログラムで有効または無効に変更します。次の telnet クライアントウィンドウに示すように、コマンド SIPattern_1.Scale_Tolerance 1 を発行します。

  3. In-Sight ビジョンシステムは、1 を返すことにより、コマンドが正常に実行されたことを示します。ツールの [スケール許容] パラメータは、無効 (オフ) から有効 (オン) に正常に変更されました。

例 3: ドロップダウンリストの選択を変更する

Set Integer コマンドを使用して必要な選択を示す整数を送信することにより、ツールのドロップダウンメニューリストパラメータの選択を変更することができます。ドロップダウンメニュー内の項目は、ListBox コントロールに対応しており、整数値 (ゼロから始まります) が割り当てられています。Set Integer ネイティブモードコマンドを使用して、ドロップダウンメニューを含んでいるパラメータに別の値を割り当てることによって、リストから別の値を「選択」することができます。

  1. ジョブにブロブ係数ツールが含まれ、ブロブ係数ツールの [ブロブの色] パラメータが、デフォルトの [任意]/2 に設定されていると仮定します。

  2. このパラメータの設定を、特定の製品パーツに基づき、プログラムで [黒]/0 または [白]/1 に変更します。次の telnet クライアントウィンドウに示すように、コマンド SIBlobs_1.Blob_Color 1 を発行します。

  3. In-Sight ビジョンシステムは、1 を返すことにより、コマンドが正常に実行されたことを示します。ツールの [ブロブの色] パラメータは、[任意]/2 から [白]/1 に正常に変更されました。

スプレッドシートビュー

セルに含まれているコントロールを指定した整数値に設定します。コントロールは、EditInt、Checkbox、または ListBox タイプである必要があります。

シンタックス:SI[列][行][整数]

Set Integer 入力

入力 | 説明
列 | 設定するセル値の列文字 (A ～ Z)。
行 | 設定するセル値の行番号。行番号は、3 桁で構成されている必要があります (000～399)。
整数 | 設定する整数値。

Set Integer 出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | セル ID が無効か、整数ではありません。
-2 | コマンドを実行することができなかったか、指定した整数値がコントロールの有効範囲外です。例えば、指定したセルは有効なタイプのコントロールを含んでいません。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set Integer 例

例 1:EditInt コントロールの値を変更する

例 2: CheckBox コントロールの状態を切り替える

例 3: ListBox コントロール内の選択を変更する

例 1: EditInt コントロールの値を変更する

セル A2 の EditInt コントロールを整数値 8 に設定するコマンドは、SIA0028 です。

  1. セル A2 には、次が格納されていると仮定します。

A2 = EditInt(0,10)

A2 に現在含まれている値は 3 です。スプレッドシートには次のように表示されます。

  2. Set Integer ネイティブモードコマンドを使用して、A2 内の値を 8 に変更するには、次の Telnet クライアントウィンドウに示すように、コマンド SIA0028 を発行します。

In-Sight センサは、1 を返すことにより、コマンドが正常に実行されたことを示します。スプレッドシート内の EditInt コントロールは、3 から 8 に正常に変更されました。

例 2: CheckBox コントロールの状態を切り替える

Set Integer コマンドを使用して、チェックボックスを含んでいるセルに値 1 (有効) または 0 (無効) を送信することによって、CheckBox コントロールを有効または無効にすることができます。

  1. セル B2、D2、および E2 が次のような内容であると仮定します。

B2 = CheckBox("Draw circle")

D2 = 'Check box integer value =

E2 = $B$2

次に示すように、チェックボックスは現在オフになっています。

注意:　セル E2 は、CheckBox コントロールの整数値を報告するだけです。

  2. Set Integer ネイティブモードコマンドを使用して、このチェックボックスを選択するには、次の Telnet クライアントウィンドウに示すように、コマンド SIB0021 を発行します。

In-Sight センサは、1 を返すことにより、コマンドが正常に実行されたことを示します。チェックボックスが選択されました。

CheckBox コントロールの新しい整数値を反映して、セル E2 は 0 から 1 に変更されました。

例 3: ListBox コントロール内の選択を変更する

ListBox コントロール内の各項目には、整数値 (ゼロから始まります) が割り当てられます。Set Integer ネイティブモードコマンドを使用して、ListBox コントロールを含んでいるセルに別の値を割り当てることによって、リストから別の値を「選択」することができます。

  1. セル B2、C2、および D2 が次のような内容であると仮定します。

B2 = ListBox("Red", "Orange", "Yellow", "Green", "Blue", "Indigo", "Violet")

C2 = ' Integer List Value =

D2 = $B$2

ListBox コントロールは、現在 Yellow に設定されています。これは、次のスプレッドシートに示すように、整数値 2 に対応します。

注意: セル D2 は、セル B2 の整数値を報告するだけです。

  2. Set Integer ネイティブモードコマンドを使用して、現在のリスト選択を Blue に変更するには、次の Telnet クライアントウィンドウに示すように、コマンド SIB0024 を発行します。

In-Sight センサは、1 を返すことにより、コマンドが正常に実行されたことを示します。スプレッドシート内のリスト選択は、Yellow から Blue に変更されました。

ListBox コントロールの新しい整数値を反映して、セル D2 は 2 から 4 に変更されました。


Set Float

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

EasyBuilder の位置決めツールまたは検査ツールのパラメータ、あるいはジョブデータなどの、シンボリックタグの浮動小数点値を指定した浮動小数点値に設定します。シンボリックタグのデータタイプは浮動小数点である必要があります。

シンタックス: SF["Symbolic Tag"][スペース][浮動小数点]

Set Float の入力

入力 | 説明
"Symbolic Tag" | 設定するシンボリックタグの名前 [位置決めツールまたは検査ツールパラメータ (例: "Pattern_1.Horizontal_Offset") あるいは EasyBuilder ジョブデータ (例: "Acquistion.Exposure_Time")]。
スペース | "symbolic tag" と浮動小数点値を切り離す空白スペース。
浮動小数点 | 小数点文字（.）を含む、設定する浮動小数点値。

Set Float の出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | "Symbolic Tag" が無効か、指定した値に浮動小数点数が含まれていません。
-2 | コマンドを実行することができなかったか、指定した浮動小数点値がコントロールの有効範囲外です。例えば、指定したセルは有効なタイプのコントロールを含んでいません。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set Float の例

浮動小数点値を含む Set Float コマンドを送信することによって、位置決めツールまたは検査ツールパラメータ、あるいはジョブデータの浮動小数点値を設定することができます。

  1. パターン位置決めツールの [水平オフセット] パラメータが、デフォルトの 0.000 に設定されていると仮定します。

  2. このパラメータの設定を Set Float ネイティブモードコマンドを使用して変更します。次の telnet クライアントウィンドウに示すように、コマンド SFPattern_1.Horizontal_Offset 100.302 を発行します。

  3. In-Sight ビジョンシステムは、ステータスコード 1 を返すことにより、コマンドが正常に実行されたことを示します。ツールの [水平オフセット] コントロールは、0.000 から 100.302 に正常に変更されました。

スプレッドシートビュー

セルに含まれている編集ボックスコントロールを、指定した浮動小数点値に設定します。編集ボックスコントロールは、EditFloat タイプである必要があります。

Syntax: SF[列][行][浮動小数点]

Set Float の入力

入力 | 説明
列 | 設定するセル値の列文字 (A~Z)。
行 | 設定するセル値の行番号。行番号は、3 桁で構成されている必要があります (000～399)。
浮動小数点 | 小数点文字（.）を含む、設定する浮動小数点値。

Set Float の出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | セル ID が無効であるか、指定した値に浮動小数点数が含まれていません。
-2 | コマンドを実行することができませんでした。例えば、指定したセルが編集ボックスコントロールを含んでいないか、編集ボックスコントロールが EditFloat 関数によって作成されていません。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set Float の例

セル A2 に格納されている編集ボックスを浮動小数点値 7.2 に設定するコマンドは、SFA0027.2 です。

  1. セル A2 には、次が格納されていると仮定します。

A2 = EditFloat(0,10)

A2 に現在含まれている値は 3.5 です。スプレッドシートには次のように表示されます。

  2. Set Float ネイティブモードコマンドを使用して、この値を 7.2 に変更するには、次の Telnet クライアントウィンドウに示すように、コマンド SFA0027.2 を発行します。

In-Sight センサは、ステータスコード 1 を返すことにより、コマンドが正常に実行されたことを示します。EditFloat コントロールは、3.5 から 7.2 に正常に変更されました。


Set Region

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

EasyBuilder の位置決めツールまたは検査ツールの領域などの、シンボリックタグに含まれる領域を設定します。ツールの領域には、 EditRegion 関数の領域編集コントロールが含まれる必要があります。

Syntax: SR["Symbolic Tag"][スペース][行][スペース][列][スペース][高さ][スペース][幅][スペース][角度][スペース][カーブ]

Set Region の入力

入力 | 説明
"Symbolic Tag" | 位置決めツールまたは検査ツールの名前 (例: "Blobs_1.Region")
スペース | "Symbolic Tag" と浮動小数点値を切り離す空白スペース
行 | フィクスチャ座標での原点の X オフセット
スペース | 前後の値を切り離す空白スペース
列 | フィクスチャ座標での原点の Y オフセット
スペース | 前後の値を切り離す空白スペース
高さ | 領域の X 軸に沿った寸法
スペース | 前後の値を切り離す空白スペース
幅 | 領域の Y 軸に沿った寸法
スペース | 前後の値を切り離す空白スペース
角度 | フィクスチャ座標での角度
スペース | 前後の値を切り離す空白スペース
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

Set Region の出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | "Symbolic Tag" が無効です。
-2 | "Symbolic Tag" に領域編集コントロールが含まれていないか、または EditRegion 関数が領域編集コントロールを生成しなかったため、コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set Region の例

領域の位置、寸法、角度および形を含む Set Region コマンドを送信することによって、位置決めツールまたは検査ツールの領域を設定することができます。

  1. ブロブ計数ツールの領域が、現在異なる位置にあり、その寸法、角度および形が異なっていると仮定します。

  2. Set Region ネイティブモードコマンドを使用して、ツールの領域を移動し、角度を変更します。次の telnet クライアントウィンドウに示すように、コマンド Blobs_1.Region 240.750 344.250 190.250 25.500 0.000 0.000 を発行します。

  3. In-Sight ビジョンシステムは、ステータスコード 1 を返すことにより、コマンドが正常に実行されたことを示します。

スプレッドシートビュー

セルに含まれている領域編集コントロールを設定します。領域編集コントロールは、 EditRegion 関数である必要があります。

Syntax: SR[列][行][行][スペース][列][スペース][高さ][スペース][幅][スペース][角度][スペース][カーブ]

Set Region の入力

入力 | 説明
列 | 設定するセル値の列文字 (A～Z)
行 | 設定するセル値の行番号。行番号は、3 桁で構成されている必要があります (000～399)
行 | フィクスチャ座標での原点の X オフセット
スペース | 前後の値を切り離す空白スペース
列 | フィクスチャ座標での原点の Y オフセット
スペース | 前後の値を切り離す空白スペース
高さ | 領域の X 軸に沿った寸法
スペース | 前後の値を切り離す空白スペース。
幅 | 領域の Y 軸に沿った寸法
スペース | 前後の値を切り離す空白スペース
角度 | フィクスチャ座標での角度
スペース | 前後の値を切り離す空白スペース
カーブ | 領域の X 軸と反対側の境界線との間の角度変位

Set Region の出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | セル ID が無効です。
-2 | 指定したセルに領域編集コントロールが含まれていないか、または EditRegion 関数が領域編集コントロールを生成しなかったため、コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set Region の例

セル A2 に格納されている領域編集を、別の位置および寸法に設定します。

  1. セル A2 には、次が格納されていると仮定します。

A2 = EditRegion(0,0,0,1,1,1,1,"Region",0)

スプレッドシートには次のように表示されます。

  2. Set Region ネイティブモードコマンドを使用して、領域の位置および寸法を変更するには、次の Telnet クライアントウィンドウに示すように、コマンド SRA002437.0 581.2 333.12 441 2 2.3 を発行します。

In-Sight センサは、ステータスコード 1 を返すことにより、コマンドが正常に実行されたことを示します。


Set String

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

EasyBuilder の位置決めツールまたは検査ツールのパラメータなどの、シンボリックタグの文字列を指定の文字列に設定します。パラメータは文字列データタイプである必要があります。

シンタックス: SS["Symbolic Tag"][スペース][文字列]

Set String の入力

入力 | 説明
"Symbolic Tag" | 位置決めツールまたは検査ツールの結果のシンボリックタグ名 (例: "Text_1.Match_String")。
スペース | "Symbolic Tag" と文字列を切り離す空白スペース
文字列 | 設定する文字列

Set String の出力

戻り値 | 1 | コマンドは正常に実行されました。
 | 0 | 認識されないコマンドが送信されました。
 | -1 | "Symbolic Tag" が無効です。
 | -2 | 入力文字列が、EditString 関数で指定されている文字列の最大長を超えているか、セルに EditString 関数が含まれていません。
 | -6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set String の例

文字列を含む Set String コマンドを送信することによって、文字認識ツールまたは ID コードの読み取りツールを設定することができます。

  1. 文字認識識別ツールの [マッチ文字列] パラメータがデフォルトの　ABC になっていると仮定します。

  2. Set String ネイティブモードコマンドを使用して、パラメータの設定を変更します。次の telnet クライアントウィンドウに示すように、コマンド SIText_1.Match_String 604 を発行します。

  3. In-Sight ビジョンシステムは、ステータスコード 1 を返すことにより、コマンドが正常に実行されたことを示します。ツールの [マッチ文字列] パラメータは ABC から 604 に変更されました。

スプレッドシートビュー

セルに 含まれている編集ボックスコントロールを、指定した文字列に設定します。編集ボックスは EditString タイプである必要があります。

シンタックス: SS[列][行][文字列]

Set String Inputs

入力 | 説明
列 | 設定するセル値の列文字 (A～Z)。
行 | 設定するセル値の行番号。行番号は、3 桁で構成されている必要があります (000～399)。
文字列 | 設定する文字列。

Set String の出力

戻り値 | 1 | コマンドは正常に実行されました。
 | 0 | 認識されないコマンドが送信されました。
 | -1 | セル ID が無効です。
 | -2 | 入力文字列が、EditString 関数で指定されている文字列の最大長を超えているか、セルに EditString 関数が含まれていません。
 | -6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set String の例

  1. セル B2 には、次が格納されていると仮定します。

B2 = EditString(20)

EditString コントロールには、現在、Before SS というテキストが含まれています。スプレッドシートには次のように表示されます。

  2. Set String ネイティブモードコマンドを使用して、このテキストを After SS に変更するには、次の Telnet クライアントウィンドウに示すように、コマンド SSB002After SS を発行します。

In-Sight センサは、ステータスコード 1 を返すことにより、コマンドが正常に実行されたことを示します。EditString コントロールは、Before SS から After SS に正常に変更されました。


Get Info

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight ビジョンシステムのシステム情報を返します。

シンタックス:GI

Get Info 入力

なし

Get Info 出力

戻り値

ステータスコードの後に、システム情報が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。

システム情報には次の情報が含まれます。

Serial Number | In-Sight ビジョンシステムのシリアル番号。
Application Version | In-Sight ビジョンシステムの現在のファームウェアのバージョン。
Monitor Version | In-Sight ビジョンシステムのモニタのバージョン。
MAC Address | In-Sight ビジョンシステムの MAC アドレス。
Date of Build | In-Sight ビジョンシステムのファームウェアのビルドを作成した日付。

Get Info 例

In-Sight ビジョンシステムについてのシステム情報を表示するには、次のコマンドを発行します。GI

ビジョンシステムは、まず、1 を返すことにより、コマンドが正常に実行されたことを示します。以下の行には、システム情報が報告されます。


Read Settings

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサのシステム設定データを読み取ります。システム設定データは、proc.set ファイルの内容で構成され、ASCII 16 進値フォーマットでエンコードされています。

シンタックス: RS

Read Settings の入力

なし

Read Settings の出力

戻り値

ステータスコードの後に、行の終端文字および設定データの行が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | 設定を読み取ることができませんでした。
-4 | In-Sight センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

設定データの行は次のとおりです。

Size | 最初の行には、設定データのサイズ(バイト単位)を示す整数値が表示されます。
Settings | 設定データは、1 行あたり 80 文字にフォーマットされた ASCII 16 進値としてエンコードされます。各行は終端文字で終わります。
CheckSum | 最後の行には、システム設定データのチェックサムである 4 バイトの ASCII 16 進値が表示されます。

Read Settings の例

In-Sight センサのシステム設定データを読み取るには、次のコマンドを発行します。RS

In-Sight センサは、まず、1 を返すことにより、コマンドが正常に実行されたことを示します。次の行(4246)は、転送されるデータ量(バイト単位)を表します。最後に、システム設定データが送信され、その後にデータのチェックサム(9A67)が続きます。

注意:

  • 上のグラフィックスでは、わかりやすくするために、実際の画像データのほとんどが省略されています。
  • データは ASCII 16 進値としてエンコードされるため、RS コマンドによって報告されるサイズは、proc.set ファイルのバイト数の 2 倍になります。

関連項目

Write Settings

Store Settings


Write Settings

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

リモート装置から In-Sight センサにシステム設定データを送信します。

シンタックス: WS

[Size]

[Settings]

[Checksum]

注意: In-Sight センサはオフラインになっている必要があります。

Write Settings の入力

コマンドは分割されて送信され、その後に設定データが続きます。設定データは、Read Settings コマンドから受信したデータの正確なコピーである必要があります。

設定データの行は次のとおりです。

入力 | 説明
Size | 最初の行には、設定データのサイズ(バイト単位)の整数値が格納されています。
Settings | 設定データは、1 行あたり 80 文字にフォーマットされた ASCII 16 進値としてエンコードされます。各行は終端文字で終わります。
CheckSum | 最後の行には、システム設定データのチェックサムである 4 バイトの ASCII 16 進値が表示されます。

Write Settings の出力

戻り値

ステータスコードの後に、行の終端文字が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | 設定データを保存できませんでした。
-3 | チェックサムに失敗しました。チェックサムが設定データと一致しません。
-4 | In-Sight センサがメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Write Settings の例

システム設定をセンサに送信するには、次のコマンドを発行します。WS

Write Settings コマンドを発行した後の最初の入力は、バイト単位のサイズ (4246) です。 次に、システム設定の各 ASCII 16 進バイトが入力されます。 最後の行 (9A67) に、4 バイトの ASCII 16 進値によるチェックサムが入力されます。

In-Sight センサは、ステータスコード 1 を返すことにより、コマンドが正常に実行されたことを示します。

注意:
  • 上のグラフィックスでは、わかりやすくするために、実際の画像データのほとんどが省略されています。
  • データは ASCII 16 進値としてエンコードされるため、サイズは、proc.set ファイルのバイト数の 2 倍になります。

関連項目

Read Settings

Store Settings


Store Settings

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサの設定を proc.set ファイルに保存します。

シンタックス: TS

Store Settings の入力

なし

Store Settings の出力

戻り値

ステータスコード。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | センサがオンラインであるため、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Store Settings の例

センサの設定を proc.set ファイルに保存するには、次のコマンドを発行します。TS

In-Sight センサは、ステータスコード 1 を返すことにより、コマンドが正常に実行されたことを示します。

関連項目

Read Settings

Write Settings


Set IP Address Lock

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサの IP アドレスの無許可の変更を防ぎます。

シンタックス: SL[整数]

Set IP Address Lock の入力

入力

説明

整数

0 | IP アドレスをアクセス可能にします。
1 | IP アドレスをアクセス不可にします。

Set IP Address Lock の出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 整数に指定した値が範囲外であるか、有効な整数ではありません。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set IP Address Lock の例

センサの IP アドレスをアクセス不可にするには、次のコマンドを発行します。SL1

In-Sight センサは、ステータスコード 1 を返すことにより、IP アドレスが正常にアクセス不可にされたことを示します。

関連項目

Get IP Address Lock


Get IP Address Lock

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサ上の IP アドレスのセキュリティステータスを返します。Set IP Address Lock コマンドを使用すると、IP アドレスの無許可の変更を防ぐことができます。

シンタックス: GL

Get IP Address Lock の入力

なし

Get IP Address Lock の出力

戻り値

0 | IP アドレスはアクセス可能になっています。
1 | IP アドレスはアクセス不可になっています。
-2 | コマンドを実行することができませんでした。

Get IP Address Lock の例

センサ上の IP アドレスのセキュリティステータスを返すには、次のコマンドを発行します。GL

In-Sight センサは、0 で応答して、IP アドレスがアクセス可能であることを示します。

関連項目

Set IP Address Lock


Set Online

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサをオンラインまたはオフラインモードに設定します。

シンタックス: SO[整数]

注意:
  • In-Sight センサが In-Sight Explorer ユーザインタフェースで手動で、またはディスクリート入力信号によってオフラインに設定されていた場合、このコマンドを使用してセンサをオンラインモードにすることはできません。
  • In-Sight Explorer アプリケーションは、管理関数 (Backup や Restore など) を実行するために、Set Online コマンドを In-Sight センサに送信します。

Set Online の入力

入力

説明

整数

0 | In-Sight センサをオフラインに設定します。
1 | In-Sight センサをオンラインに設定します。

Set Online の出力

戻り値 | 1 | コマンドは正常に実行されました。
 | 0 | 認識されないコマンドが送信されました。
 | -1 | 整数に指定した値が範囲外であるか、有効な整数ではありません。
 | -2 | コマンドを実行することができませんでした。
 | -5 | 通信フラグは正常でしたが、センサが In-Sight Explorer ユーザインタフェースによって手動で、またはディスクリート I/O 信号によってオフラインに設定されたため、システムはオンラインになりませんでした。
 | -6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set Online の例

例 1: In-Sight センサをオンラインモードに設定する

例 2: In-Sight センサをオフラインモードに設定する

例 1: In-Sight センサをオンラインモードに設定する

In-Sight センサをオンラインモードに設定するには、次のコマンドを発行します。SO1

In-Sight センサは、ステータスコード 1 を返すことにより、センサが正常にオンラインになったことを示します。

例 2: In-Sight センサをオフラインモードに設定する

In-Sight センサをオフラインモードに設定するには、次のコマンドを発行します。SO0

In-Sight センサは、ステータスコード 1 を返すことにより、センサが正常にオフラインになったことを示します。


Get Online

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサのオンライン状態を返します。

シンタックス: GO

Get Online の入力

なし

Get Online の出力

戻り値

0 | In-Sight センサは現在オフラインモードです。
1 | In-Sight センサは現在オンラインになっています。

Get Online の例

In-Sight センサのオンライン状態を判定するには、次のコマンドを発行します。GO

In-Sight センサは、0 で応答して、センサが現在オフラインになっていることを示します。


Set Event

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

ネイティブモードのコマンドを使用して、スプレッドシート内の指定したイベントをトリガします。

  • SetEvent 関数の入力パラメータ
  • SetEvent 関数の結果出力
  • SetEvent 関数の例

注意:
  • In-Sight ビジョンシステムを、ネイティブモードコマンドを介した PLC/モーションコントローラから画像取り込みトリガを受け入れるように設定する場合は、 [イベント] コードを 8 に設定 (SW8) した SetEvent and Wait 関数を使用することを推奨します。これによって、ビジョンシステムは、画像取り込みと検査の両方が完了してから「完了」レスポンスを PLC/モーションコントローラに送り返すようになるため、前の検査結果が PLC/モーションコントローラに送信されることはなくなります。ビジョンシステムからの「完了」レスポンスを使用して、検査結果の読み取り要求を送信する条件付き PLC ロジックを作成することもできます。 SetEvent 関数を PLC/モーションコントローラで使用して画像取り込みをトリガする場合、検査結果も読み取られていない場合にのみ使用してください。それ以外の場合に使用すると、画像取り込みと検査が同期されません。ビジョンシステムは画像が取り込まれるとすぐ、検査完了前に応答を返します。
  • In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

Set Event 入力

シンタックス:SE[整数]

入力

説明

整数

設定するイベントコード。

(0 ～ 7) | ソフトトリガを指定します (ソフト 0、ソフト 1、...、ソフト 7)。
8 | 画像を取り込んで、スプレッドシートを更新します。このオプションでは、AcquireImage 関数の [トリガ] パラメータを、[外部]、[手動]、または [ネットワーク] に設定する必要があります。

Set Event 出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 番号が範囲外 (0 ～ 8 以外) であるか、整数ではありません。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set Event 例

SetEvent 関数を使用して、スプレッドシート内のイベントをネイティブモードコマンドでトリガします。

イベント 0 (ソフト 0) をトリガするコマンドは SE0 です。

  1. セル A2 および A3 には、次が格納されていると仮定します。

A2 = Event(80,0)

A3 = Count($A$2,9999,0,0)

スプレッドシートには次のように表示されます。

  2. Telnet クライアントを使用して、連続した 4 つの Set Event コマンドを発行します。

SE0 が送信されるたびに、セル A3 のカウンタが 1 ずつ増加されます。


Set Event and Wait

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

指定したイベントをトリガして、コマンドが完了してからレスポンスを返します。

注意:
  • In-Sight ビジョンシステムはオンラインになっている必要があります。
  • In-Sight ビジョンシステムを、ネイティブモードコマンドを介した PLC/モーションコントローラから画像取り込みトリガを受け入れるように設定する場合は、 [イベント] コードを 8 に設定 (SW8) した SetEvent and Wait 関数を使用することを推奨します。これによって、ビジョンシステムは、画像取り込みと検査の両方が完了してから「完了」レスポンスを PLC/モーションコントローラに送り返すようになるため、前の検査結果が PLC/モーションコントローラに送信されることはなくなります。ビジョンシステムからの「完了」レスポンスを使用して、検査結果の読み取り要求を送信する条件付き PLC ロジックを作成することもできます。

Set Event and Wait 入力

シンタックス:SW[整数]

入力

説明

整数

設定するイベントコード。

(0 ～ 7) | ソフトトリガを指定します (ソフト 0、ソフト 1、...、ソフト 7)。
8 | 画像を取り込んで、スプレッドシートを更新します。このオプションでは、AcquireImage 関数の [トリガ] パラメータを、[外部]、[手動]、または [ネットワーク] に設定する必要があります。

Set Event and Wait 出力

戻り値

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 番号が範囲外 (0 ～ 8 以外) であるか、整数ではありません。
-2 | コマンドを実行できなかったか、センサがオフラインです。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Set Event and Wait 例

イベント 0 (ソフト 0) をトリガするコマンドは SW0 です。コマンドが完了するまで、応答は送信されません。

  1. セル A2 および A3 には、次が格納されていると仮定します。

A2 = Event(80,0)

A3 = Count($A$2,9999,0,0)

スプレッドシートには次のように表示されます。

  2. センサをオンラインにします。Telnet クライアントを使用して、連続した 4 つの Set Event & Wait コマンドを発行します。

SW0 が送信されるたびに、セル A3 のカウンタが 1 ずつ増加されます。


Reset System

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

In-Sight センサをリセットします。このコマンドは、センサの電源を物理的に入れ直すことと同じです。

シンタックス: RT

Reset System の入力

なし

Reset System の出力

戻り値

ステータスコードの後に、行の終端文字および設定データの行が続きます。返されるステータスコードは、次のものだけです。

-6

ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Reset System の例

In-Sight センサをリセットするには、次のコマンドを発行します。RT

In-Sight センサが正常にリセットされると、ステータスコードは返されません。


Send Message

ネイティブモードの基本コマンド

In-Sight 通信リファレンス

文字列をネイティブモード接続経由で In-Sight のスプレッドシートに送信します。スプレッドシートのイベントをトリガすることもできます。

シンタックス: SM"文字列"[整数]

Send Message の入力

入力

説明

"文字列"

設定する文字列。

注意: 文字列は引用符で囲む必要があります。

整数

設定するイベントコード。

注意: これはオプションのパラメータです。

(0 ～ 7) | ソフトトリガを指定します (ソフト 0、ソフト 1、...、ソフト 7)。
8 | 画像を取り込んで、スプレッドシートを更新します。このオプションでは、AcquireImage 関数の [トリガ] パラメータを、[外部] または [手動] に設定する必要があります。

Send Message の出力

戻り値

ステータスコード。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 番号が範囲外 (0 ～ 8 以外) であるか、整数ではありません。
-2 | コマンドを実行できなかったか、センサがオフラインです。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Send Message の例

例: テキスト文字列を送信する

例: 文字列を送信して、スプレッドシートイベントをトリガする

例: テキスト文字列を送信する

  1. セル A2 および A3 には、次が格納されていると仮定します。

A2 = Event(80,0)

A3 = ReadMessage(A2)

スプレッドシートには次のように表示されます。

  2. センサをオンラインにします。Telnet クライアントを使用して、In-Sight センサに Set Event コマンドを発行します。文字列「Test」を送信するコマンドは、SM"Test" です。イベント 0 (ソフト 0) をトリガするコマンドは SE0 です。

セル A3 の ReadMessage 関数によって「Test」と表示されます。

例: 文字列を送信して、スプレッドシートイベントをトリガする

  1. セル A2 および A3 には、次が格納されていると仮定します。

A2 = Event(80,0)

A3 = ReadMessage(A2)

スプレッドシートには次のように表示されます。

  2. センサをオンラインにします。Telnet クライアントを使用して、In-Sight センサに Send Message コマンドを発行します。「Test」という文字列を送信して、イベント 0 (ソフト 0) をトリガするコマンドは、SM"Test"0 です。

  3. センサをオフラインにします。セル A3 の ReadMessage 関数によって「Test」と表示されます。


Get

ネイティブモードの拡張コマンド - Get

In-Sight 通信リファレンス

In-Sight ビジョンシステムおよびそのスプレッドシートから情報を取得するために、次の 3 つのコマンドが、ネイティブモードの拡張コマンドである Get と組み合わせて使用されます。

  • Get Connections
  • Get Expr [列][行]
  • Get Filelist

シンタックス:Get [コマンド]

注意:Get とコマンドの間、およびコマンドと入力パラメータの間にはスペースが必要です。

Get Connections

In-Sight ビジョンシステムの現在の接続情報を返します。

シンタックス:Get Connections

Get Connections の入力

なし

Get Connections の出力

戻り値
  • ステータスコード。ステータスコードは次のとおりです。
1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 入力が無効か、長さが 15 バイトを超えています。
-2 | コマンドを実行することができませんでした。
-6 | パラメータが無効か、長さが 15 バイトを超えています。
  • ビジョンシステムに現在ログオンしているユーザ数。
  • ビジョンシステムに現在ログオンしているユーザ名。
  • 各ユーザの FTP 読み取り/書き込み権限、アクセスレベル、および Java アプレット接続の 16 進表記。FTP 読み取り/書き込み権限、アクセスレベル、および Java アプレット接続は、次のとおりです。
0x01 | 読み取り
0x02 | 書き込み
0x08 | アクセスレベルが「プロテクト」のユーザは、ビジョンシステムの操作モードをオンラインとオフラインの間で切り替えることができません。
0x10 | フル
0x20 | プロテクト
0x40 | アクセス不可
0x80 | Java アプレット接続
  • 各ユーザのビジョンシステムのホスト名と IP アドレス (16 進数)。

Get Connections の例

ビジョンシステムの接続設定を取得するには、次のコマンドを発行します。Get Connections

In-Sight ビジョンシステムは、まず、ステータスコード (1) と、その後の、In-Sight ビジョンシステムにログオンしているユーザ数 (2) で応答します。次に、各ユーザの接続情報が表示されます。最初のユーザ admin のアクセスの 16 進表記は 0x13 です。この表記は、ユーザに適用される FTP 読み取り/書き込み権限とアクセスレベル (前の表を参照) を合計することによって求められます。この例では、admin はフルアクセス (0x10) + FTP 読み取り権限 (0x01) + FTP 書き込み権限 (0x02) = 0x13 を持っています。ユーザ admin は、現在、FACTORYFLOOR-1 という名前のビジョンシステムに接続されています。FACTORYFLOOR-1 の IP アドレスは 192.168.0.1 です。このアドレスを 16 進で表すと、C0A80001 になります。

第 2 のユーザ (monitor) の接続情報は、同様に次の行に示されています。

Get Expr

列および行アドレスにより指定したセルに含まれているパラメータまたは値と、そのセルの状態を返します。

シンタックス:Get Expr [列][行]

注意:指定したセルが空白の場合は、ステータスコードの後の 2 つの出力行は空白になります。

Get Expr の入力

入力 | 説明
列 | 設定するセル値の列文字 (A ～ Z)。
行 | 設定するセル値の行番号。行番号は、3 桁で構成されている必要があります (000 ～ 399)。

Get Expr の出力

戻り値
  • ステータスコード。ステータスコードは次のとおりです。
1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | セル ID が無効か、長さが 15 バイトを超えています。
-2 | コマンドを実行することができませんでした。
  • 指定したセルに含まれるパラメータまたは値。
  • 指定したセルの状態。
0 | セルは無効です。
1 | セルは有効です。

Get Expr の例

セル A0 に含まれている AcquireImage 関数によって返されるパラメータを取得するには、次のコマンドを発行します。Get Expr A000

コマンド Get Expr A000 を発行すると、In-Sight ビジョンシステムは、ステータスコード (1) で応答し、その後に、セル A0 に含まれる式が続きます。最後に、セルの状態 (1) が表示されます。

Get Filelist

In-Sight ビジョンシステムのメモリに格納されているファイルの数と各ファイル名を返します。

シンタックス:Get Filelist

注意:

  • ビジョンシステム上で RAM ディスクフォルダが有効になっている場合は、「RAMDisk」というフォルダ名が Get Filelist の出力に含まれます。
  • Get Filelist ネイティブモードコマンドを使用して RAM ディスクフォルダからファイルリストを取得することはできません。RAM ディスクフォルダのファイルリストを取得するには、代わりに Closed FTP プロトコルを使用してください。FTP コマンドの CD (change directory) はサポートされません。

Get Filelist の入力

なし

Get Filelist の出力

戻り値

ステータスコードの後に、メモリに格納されているファイルの数と各ファイル名が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 入力が無効か、長さが 15 バイトを超えています。
-2 | コマンドを実行することができませんでした。

Get Filelist の例

In-Sight ビジョンシステムに格納されているファイルの数とリストを取得するには、次のコマンドを発行します。Get Filelist

コマンド Get Filelist を発行すると、In-Sight ビジョンシステムは、ステータスコード (1) で応答し、その後に、メモリに存在するファイルの数 (13) が続きます。最後に、各ファイルのファイル名が表示されます。


Put

ネイティブモードの拡張コマンド - Put

In-Sight 通信リファレンス

シンタックス: PUT [コマンド] [入力パラメータ]

Putについて

In-Sight ビジョンシステムとそのスプレッドシートに情報を送信するために、次のコマンドが、ネイティブモードの拡張コマンドである Put と組み合わせて使用されます。

  • Put Live [整数]
  • Put Portnum [整数]
  • Put Timeout [整数]
  • Put Update
  • Put Watch [列][行][整数]
  • Put XML [整数]

注意: Put とコマンドの間、およびコマンドと入力パラメータ (存在する場合) の間にはスペースが必要です。

Put Live

ライブ取り込みモードをオンまたはオフにします。

シンタックス: Put Live [整数]

注意: Put Live コマンドを使用するときには、ビジョンシステムがオフラインになっている必要があります。

Put Live の入力

入力 | 説明
整数 | 0 = ライブ取り込みモードを無効にします。 1 = ライブ取り込みモードを有効にします。

Put Live の出力

戻り値

ステータスコード。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 入力が無効か、長さが 15 バイトを超えています。
-2 | コマンドを実行できなかったか、ビジョンシステムがオンラインです。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Put Live の例

ビジョンシステムをライブ取り込みモードにするには、次のコマンドを発行します。Put Live 1

In-Sight ビジョンシステムは、ステータスコード 1 を返すことによって、ビジョンシステムが正常にライブ取り込みモードになったことを示します。

ビジョンシステムのライブ取り込みモードを終了するには、次のコマンドを発行します。Put Live 0

In-Sight ビジョンシステムは、ステータスコード 1 を返すことによって、ビジョンシステムが正常にライブ取り込みモードを終了したことを示します。

Put Portnum

In-Sight ビジョンシステムがネットワーク経由のデータまたは画像転送に使用するポートを指定します。

シンタックス: Put Portnum [整数]

注意:

  • Portnum コマンドを実行しないと、指定したポートにほかのデバイスを接続できません。
  • ポート番号が変更された場合、In-Sight OPC サーバは無効になります。

Put Portnum の入力

入力 | 説明
整数 | ポート番号を指定します。 (1 ～ 65535) 注意: 有効なポート番号は、1 ～ 65535 の未使用の任意の番号ですが、In-Sight の通信に使用されるポートを除きます。

Put Portnum の出力

戻り値

ステータスコード。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 入力が無効か、長さが 15 バイトを超えています。
-2 | コマンドを実行できなかったか、ビジョンシステムがオンラインです。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Put Portnum の例

ネットワーク経由でのデータまたは画像の転送に使用するポートとして 3001 を指定するには、次のコマンドを発行します。Put Portnum 3001

In-Sight ビジョンシステムは、ステータスコード 1 を返すことによって、ポート番号が正常に 3001 に変更されたことを示します。

Put Timeout

クライアントからのポート接続を送受信のない状態で維持する時間 (ミリ秒) を指定します。指定した時間の間、In-Sight ビジョンシステムがクライアントからメッセージを受信しなかった場合、ビジョンシステムはポートを閉じます。

シンタックス: Put Timeout [整数]

注意: In-Sight ビジョンシステムを再起動すると、タイムアウトはデフォルト設定 (0 ミリ秒) にリセットされます。

Put Timeout の入力

入力 | 説明
整数 | 0* または -1 | タイムアウトしません。
 | (1 ～ 9999999) | ポート接続を送受信のない状態で維持する時間 (ミリ秒)。
* はデフォルト値を示します。 |  |

Put Timeout の出力

戻り値

ステータスコード。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 入力が無効か、長さが 15 バイトを超えています。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Put Timeout の例

30000 ミリ秒のタイムアウトを指定するには、次のコマンドを発行します。Put Timeout(30000)

In-Sight ビジョンシステムは、ステータスコード 1 を返すことによって、タイムアウトが正常に 30000 に変更されたことを示します。

Put Update

GUI (スプレッドシート、セルグラフィックス、および画像表示) を更新します。

シンタックス: Put Update [整数]

Put Update の入力

入力 | 説明
整数 | 1 = GUI (スプレッドシート、セルグラフィックス、および画像表示) を更新します。

Put Update の出力

戻り値

ステータスコード。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 入力が無効か、長さが 15 バイトを超えています。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Put Update の例

GUI を更新するには、次のコマンドを発行します。Put Update 1

In-Sight ビジョンシステムは、ステータスコード 1 を返すことによって、コマンドが正常に実行されたことを示します。

Put Watch

セルが更新されるたびに、指定したセルに含まれている値を返します。Put Watch コマンドを使用すると、出力セルを指定し、DataChannel を使用してデータを送信することができます。

シンタックス: Put Watch [列][行][整数]

注意: Put Watch コマンドで情報を送信する送信先のポートを指定するには、Put Portunum コマンドを実行する必要があります。

Put Watch の入力

入力 | 説明
列 | 設定するセル値の列文字 (A ～ Z)。
行 | 設定するセル値の行番号。行番号は、3 桁で構成されている必要があります (000 ～ 399)。
整数 | 0 = セル値の出力を無効にします。 1 = セル値が変更された場合のみ、セル値の出力を有効にします。 2 = 取り込みのたびに、セル値の出力を有効にします。

Put Watch の出力

戻り値

ステータスコードの後に、行の終端文字および指定したセルに含まれる値が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 入力が無効か、長さが 15 バイトを超えています。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Put Watch の例

セル A0 が更新されたときのみ、セル A0 から情報を受信するには、次のコマンドを発行します。Put Watch A000

In-Sight ビジョンシステムは、ステータスコード 1 を返すことによって、コマンドが正常に実行されたことを示します。

Put XML

ネイティブモードコマンドの出力結果を XML でフォーマットするかどうかを指定します。

シンタックス: Put XML [整数]

Put XML の入力

入力 | 説明
整数 | 0 = XML フォーマットを無効にします (デフォルト)。 1 = legacy XML フォーマットを有効にします。 2 = strict XML フォーマットを有効にします。

Put XML の出力

戻り値

ステータスコード。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | 入力が無効か、長さが 15 バイトを超えています。

Put XML の例

以下の例では、標準出力を legacy XML 対応出力および strict XML 対応出力と比較します。

Put XML 0

出力結果の XML フォーマットを無効にするには、次のコマンドを発行します。Put XML 0。In-Sight ビジョンシステムは、ステータスコード 1 を返すことによって、XML が正常に無効化されたことを示します。次に、Get Filelist コマンドを発行します。

Put XML 1

出力結果の legacy XML フォーマットを有効にするには、次のコマンドを発行します。Put XML 1。In-Sight ビジョンシステムは、適切な XML フォーマットを使用して 1 を返すことによって、legacy XML フォーマットが正常に有効化されたことを示します。次に、Get Filelist コマンドを発行します。応答は、legacy XML フォーマットで返されます。

Put XML 2

出力結果の strict XML フォーマットを有効にするには、次のコマンドを発行します。Put XML 2。In-Sight ビジョンシステムは、適切な XML フォーマットを使用して、1 で応答します。次に、Get Filelist コマンドを発行します。応答は、strict XML フォーマットで返されます (例えば、FileName ID 値が引用符で囲まれます)。


Evaluate

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

In-Sight 関数の実行、および In-Sight のスプレッドシートへの数式の挿入を行います。Evaluate は、In-Sight ビジョンシステムから情報を取得したり、In-Sight ビジョンシステムに変更を加えたりするコマンドを実行します。Evaluate は、次の 2 つのカテゴリに分けることができます。

  • Evaluate コマンド (一般): すべての In-Sight ビジョンシステムに対して Evaluate コマンドと組み合わせて使用される汎用コマンドです。
  • Evaluate コマンド (WafID): In-Sight ウェーハリーダ専用に Evaluate コマンドと組み合わせて使用されるコマンドです。

シンタックス: EV [コマンド]

注意:

  • Evaluate コマンドを使用してデータ構造体を返す In-Sight 関数を実行することはできませんが、このような関数を In-Sight のスプレッドシートに挿入することは可能です。
  • Evaluate コマンドを使用して In-Sight システム設定に加えられた変更は一時的なものです。In-Sight ビジョンシステムを再起動すると、変更は失われます。設定を proc.set ファイルに保存するには、Store Settings コマンドを使用してください。

Evaluate の入力

コマンド

サポートされている任意の In-Sight 関数、または関数の適切な文字列、および一般的なコマンドと In-Sight ウェーハリーダ専用のコマンド。

注意: 引用符で囲まれている入力 (GetSystemConfig の "DHCPTimeout" など) は、In-Sight ビジョンシステムに送信する際に引用符で囲む必要があります。

Evaluate の出力

戻り値
  • ステータスコード。ステータスコードは次のとおりです。
1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-4 | In-Sight ビジョンシステムのメモリ不足です。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。
  • 後続の出力に含まれる文字数 (バイト単位)。
  • 式の結果 (XML フォーマット、ステータスコードが 1 の場合のみ表示されます)。

注意: 式の結果は、実行されるコマンドによって異なります。

Evaluate の例

例: Evaluate コマンドを使用して In-Sight の数式をスプレッドシートのセルにリモートで挿入する

例: Evaluate コマンドと In-Sight 関数を使用して In-Sight ビジョンシステムから情報を取得する

例: Evaluate コマンドを使用して In-Sight のネットワーク設定を取得する

例: Evaluate コマンドを使用して In-Sight の特定の設定を変更する

例: Evaluate コマンドを使用して In-Sight の数式をスプレッドシートのセルにリモートで挿入する

Evaluate コマンドを使用して In-Sight の数式をスプレッドシートのセルにリモートで挿入するための一般的なシンタックスは、次のとおりです。

シンタックス: EV [列][行] [セル状態] [数式]

Evaluate の入力

列

設定するセル値の列文字 (A ～ Z)。

行

設定するセル値の行番号 (0 ～ 399)。

セル状態

指定したセルの現在の状態 (0 = 無効、1 = 有効)。

注意:

  • セル状態は別のセルを (絶対または相対) 参照することもあります。参照されるセルが空白の場合、セル状態は 0 になります。
  • テキストラベル付きのコントロール関数を、セル状態が無効と指定されたスプレッドシートに挿入した場合、GUI にはコントロールに関連付けられたグラフィックスのみが表示されます。スプレッドシート内でセル状態が変更されない限り、テキストラベルはスプレッドシートに表示されません。

数式

数式を作成するための値、関数、引数、および演算子の組み合わせ。

例 A: 基本関数をリモートで挿入する

  1. スプレッドシートが次のように設定されていると仮定します。
     A3 = 3
    A4 = 4
    A5 = 5
    A6 = 6

リモート接続を使用して、In-Sight スプレッドシートに数式を挿入することができます。

  2. Telnet クライアントから In-Sight ビジョンシステムにログオンしているときに、次のコマンドを入力します。EV A8 1 Sum(1,2,A3:A6)

In-Sight は、ステータスコード (1) と、返された XML データのバイト数 (0) で応答します。この Evaluate コマンドは、数式 Sum(1,2,A3:A6) をセル A8 に挿入します。

注意: Sum スプレッドシート関数によって返される実際の結果 21 は、この Evaluate コマンドによって XML データとしては返されません。この結果を取得するには、代わりに Get Value コマンドを使用してください。

例 B: プロパティシートを使用して関数をリモートで挿入する

プロパティシートから選択したパラメータを含む関数も、スプレッドシートにリモートで挿入できます。Telnet クライアントから、次のコマンドを入力します。EV A2 1 ExtractBlobs($A$0,0,0,0,40,276,381,450,0,0,8,-1,0,0,2,1,100,100000,0)

次の画像に示すように、In-Sight ビジョンシステムは、ステータスコード (1) と、返された XML データのサイズ (0) で応答します。

ExtractBlobs 関数は、スプレッドシートのセル A2 に正常に挿入されました。

例: Evaluate コマンドと In-Sight 関数を使用して In-Sight ビジョンシステムから情報を取得する

シンタックス: EV [コマンド]

  1. In-Sight スプレッドシートのセル A2 に ReadIDCode 関数から取得された [image] データ構造体が含まれていると仮定します。デコードされた文字列は、隣のセルに次のように返されます。
    A2 = ReadIDCode ($A$0,0,0,0,156.798,216.083,178.964,179.119,0,128,0,1,3,0,0,0,0,15,0,2,1,0,0,6,0,0,0)

  2. 次のように、Telnet クライアントを使用して In-Sight ビジョンシステムにログオンし、EV GetString(A2) と入力します。

In-Sight ビジョンシステムは、ステータスコード 1 を返して、コマンドが正常に実行されたことを示します。次の行では、36 バイトの XML データが返されたことが報告され、最後の行には、XML で書式設定された式の結果が含まれています。

例: Evaluate コマンドを使用して In-Sight のネットワーク設定を取得する

シンタックス: EV [コマンド]

Telnet クライアントから In-Sight ビジョンシステムにログオンしているときに、EV GetNetwork() と入力して、システムのネットワーク設定を取得します。Telnet クライアントの出力は、次の画像に示されています。

In-Sight ビジョンシステムは、ステータスコード 1 を返すことにより、コマンドが正常に実行されたことを示します。次の行には、その後に続く XML データのサイズ (552 バイト) が含まれています。残りの行は、返された実際の XML データで構成されています。

例: Evaluate コマンドを使用して In-Sight の特定の設定を変更する

この例では、In-Sight 5100 ビジョンシステムの FTP 設定のうち、アイドルタイムアウト、読み取りタイムアウト、接続リトライ、ローカルポート、リモートポート、およびパッシブ転送を設定します。Telnet クライアントから In-Sight ビジョンシステムにログオンしているときに、次のコマンドを発行します。EV SetFTPSettings(120,120,1,21,21,0)

Telnet クライアントの出力は、次の画像に示されています。

In-Sight ビジョンシステムは、ステータスコード 1 を返すことによって、コマンドが正常に実行されたことを示します。次の 18 は、その後に続く XML 出力バイト数を表しています。最後に、実際の XML データが示されています。


GetCellName

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

指定されたシンボリックタグ名のセルの位置、または指定されたセルのシンボリックタグ名を返します。

シンタックス: EV GetCellName("Name")

GetCellName の入力

入力 | 説明
"Name" | シンボリックタグの名前 (例: Distance_1.Distance)、またはセルの場所 (例: A4)。名前は引用符で囲む必要があります。

GetCellName の出力

戻り値

ステータスコードの後に文字数、およびセルの名前またはセル参照が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | セル ID が無効です。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetCellName の例

シンボリックタグ名

セル B116 のシンボリックタグ名を取得するには、次のコマンドを発行します。EV GetCellName("B116")

このコマンドを発行すると、次のような結果が生成されます。

In-Sight センサは、コマンドが正常に実行されたことを示す 1 を返します。文字数 (単位はバイト) の後にシンボリックタグ名が続きます。

シンボリックタグ名のセル位置

シンボリックタグのついた Distance Measurement ツールの結果のセル位置を取得するには、次のコマンドを発行します。EV GetCellName("Distance_1.Distance")

このコマンドを発行すると、次のような結果が生成されます。

In-Sight センサは、コマンドが正常に実行されたことを示す 1 を返します。文字数 (単位はバイト) の後にセルの位置が続きます。


GetCellValue

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

EasyBuilder フィクスチャ出力の内容、EasyBuilder の位置決めツールまたは検査ツールの結果、あるいはスプレッドシートのセルといった、指定されたシンボリックタグの内容を XML フォーマットで返します。

注意: 英語以外の言語でジョブを作成しているときに、[オプション] ダイアログ内 [ユーザインタフェース] パネルの [英語シンボリックタグを EasyBuilder で使用] オプションを有効 (ON) した場合、このオプションを有効にする以前に作成されたシンボリックタグ参照は、英語名に更新する必要があります。

シンタックス: EV GetCellValue("Symbolic Tag")

GetCellValue の入力

入力 | 説明
"Symbolic Tag" | 位置決めツール、または検査ツールの結果 (例: "Distance_1.Distance")、またはセル参照 (例: A4)といった、シンボリックタグの名前。自動生成された EasyBuilder フィクスチャ出力データについては、この名前は [通信] アプリケーションステップ で選択した [デバイス] および [プロトコル] に応じて、"Job.Robot.FormatString" または "Job.FormatString" になります。名前は引用符で囲む必要があります。

GetCellValue の出力

戻り値

ステータスコードの後に、結果の文字数、およびセルの内容 (整数値、浮動小数点値、またはテキスト文字列) が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | セル ID が無効です。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetCellValue の例

EasyBuilder

ビジョンガイド付きのロボットアプリケーション用のフィクスチャデータ、または位置決めツール、もしくは検査ツールの結果を取得するには

ビジョンガイド付きロボットアプリケーションのフィクスチャの例

[通信] ステップで選択された [デバイス] および [プロトコル] に応じて、発行できるコマンドは次の 2 種類のいずれかになります。EV GetCellValue("Job.Robot.FormatString") および EV GetCellValue("Job.FormatString")。

EV GetCellValue("Job.Robot.FormatString") は、次の状況で使用します。

  • [デバイス] で[Robot] が選択されている。
  • [デバイス] で [その他] が選択され、[プロトコル] で [Serial Kuka] または [Serial Motoman] が選択されている。

EV GetCellValue("Job.FormatString") は、次の状況で使用します。

  • [デバイス] で [その他] が選択され、[プロトコル] で [Ethernet Native、[Serial Native]、[Serial Text]、または [TCP/IP] が選択されている。

EV GetCellValue("Job.Robot.FormatString")

このコマンドを発行すると、次のような結果が生成されます。

In-Sight センサは、コマンドが正常に実行されたことを示す 1 を返します。結果の文字数 (単位はバイト) の後に、セルの値 (整数値、浮動小数点値、またはテキスト文字列) が続きます。

EV GetCellValue("Job.FormatString")

このコマンドを発行すると、次のような結果が生成されます。

In-Sight センサは、コマンドが正常に実行されたことを示す 1 を返します。結果の文字数 (単位はバイト) の後に、セルの値 (整数値、浮動小数点値、またはテキスト文字列) が続きます。

位置決めツール、または検査ツールの結果の例

次の例では、Distance Measurement ツールの結果を取得するためのコマンドを発行しています。

EV GetCellValue("Distance_1.Distance")

このコマンドを発行すると、次のような結果が生成されます。

In-Sight センサは、コマンドが正常に実行されたことを示す 1 を返します。結果の文字数 (単位はバイト) の後に、セルの値 (整数値、浮動小数点値、またはテキスト文字列) が続きます。

スプレッドシート

スプレッドシートの特定のセルにある値を取得するには、次のようなコマンドを発行します。

EV GetCellValue("A52")

このコマンドを発行すると、次のような結果が生成されます。

In-Sight センサは、コマンドが正常に実行されたことを示す 1 を返します。結果の文字数 (単位はバイト) の後に、セルの値 (整数値、浮動小数点値、またはテキスト文字列) が続きます。


GetDeEnergizeOutputs

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ディスクリート出力設定] ダイアログで設定された [オフライン時に出力の電源を切る] 設定を返します。

シンタックス: EV GetDeEnergizeOutputs()

GetDeEnergizeOutputs の入力

なし

GetDeEnergizeOutputs の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetDeEnergizeOutputs の例

[オフライン時に出力の電源を切る] 設定を取得するには、次のコマンドを発行します。EV GetDeEnergizeOutputs()

In-Sight センサは、ステータスコード(1)とその後の文字数(バイト単位、18)で応答します。最後に、[オフライン時に出力の電源を切る] 設定が返されます。


GetDiagnosticLog

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

In-Sight ビジョンシステムのエラーを診断するために使用する情報のログを返します。

シンタックス: EV GetDiagnosticLog()

GetDiagnosticLog の入力

なし

GetDiagnosticLog の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetDiagnosticLog の例

In-Sight Micro ビジョンシステムと CIO-MICRO、CIO-MICRO-CC、または CIO-WENET イーサネット I/O モジュールの間の接続ステータスに関する診断ログを取得するには、次のコマンドを発行します。EV GetDiagnosticLog()

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、446) で応答します。最後に、診断ログが返されます。


GetDiscreteInput

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ディスクリート入力設定] ダイアログで設定された情報を返します。

シンタックス: EV GetDiscreteInput()

GetDiscreteInput の入力

なし

GetDiscreteInput の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetDiscreteInput の例

[ディスクリート出力設定] ダイアログで設定された情報を取得するには、次のコマンドを発行します。GetDiscreteInput()

注意: 最初の XML タグの Count は、ディスクリート入力の数を表しています。各ディスクリート入力にはライン ID(ゼロから始まります)が割り当てられます。

In-Sight センサは、ステータスコード(1)とその後の文字数(バイト単位、43)で応答します。最後に、[ディスクリート入力設定] ダイアログで設定された情報が返されます。


GetDiscreteOutput

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ディスクリート出力設定] ダイアログで設定された情報を返します。

シンタックス: EV GetDiscreteOutput()

GetDiscreteOutput の入力

なし

GetDiscreteOutput の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetDiscreteOutput の例

[ディスクリート出力設定] ダイアログで設定された情報を取得するには、次のコマンドを発行します。EV GetDiscreteOutput()

注意: 最初の XML タグの Count は、ディスクリート出力の数を表しています。各ディスクリート出力にはライン ID(ゼロから始まります)が割り当てられます。

In-Sight センサは、ステータスコード(1)とその後の文字数(バイト単位、635)で応答します。最後に、[ディスクリート出力設定] ダイアログで設定された情報が返されます。


GetDiscreteOutputDelay

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ディスクリート出力詳細設定] ダイアログの遅延設定を返します。

シンタックス: EV GetDiscreteOutputDelay(LineID,[Model])

GetDiscreteOutputDelay の入力

入力 | 説明
ラインID | 出力ラインの番号。
IOモジュール | 特定の I/O モジュールタイプのディスクリート出力遅延を返すのに使用される、パラメータ (オプション) です。 0 = 直接接続 I/O / CIO-1350 1 = CIO-1450 および CIO-1460 2 = CIO-1400 3 = CIO-MICRO および CIO-MICRO-CC

GetDiscreteOutputDelay の出力

出力 説明
Type 0 = なし

1 = 取り込み遅延

2 = トリガ後の時間
Delay
  • Type = 0 の場合、遅延は無視され、強制的に 0 が返されます。
  • Type = 1 の場合、信号のパルスを出力ラインが受信した後、出力を遅延させるための画像取り込みパルスまたはトラッキングパルスの数 （0 ～ 1000） を返します。この値が 0 の場合、In-Sight ビジョンシステムは、WriteDiscrete 関数を評価するとすぐに出力ラインを更新します。1 以上の場合、出力ラインはパルスに設定されます。
  • Type = 2 の場合、出力の送信前の時間 (0～10000 ms) を返します。

GetDiscreteOutputDelay の例

CIO-MICRO I/O モジュール の ライン 3 の遅延設定を取得するには、次のコマンドを発行します。EV GetDiscreteOutputDelay(3,3)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、87) で応答します。最後に、Type (トリガ後の時間) および Delay (250 ms) が返されます。


GetEasyBuilderTag

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

指定したシンボリックタグ名またはセル位置の EasyBuilder タグを返します。

シンタックス: EV GetEasyBuilderTag("Name")

GetEasyBuilderTag の入力

入力 | 説明
"Name" | シンボリックタグまたはセル位置の名前。入力がシンボリックタグである場合は、引用符で囲む必要があります。入力がセル位置である場合は、必要に応じて引用符で囲みます。

GetEasyBuilderTag の出力

戻り値

ステータスコードの後に、EasyBulder タグ名が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。

GetEasyBuilderTag の例

シンボリックタグ名

Acquistion.Frames_Per_Second シンボリックタグに関連付けられている EasyBuilder タグを返すには、次のコマンドを発行します。EV GetEasyBuilderTag("Acquisition.Frames_Per_Second")

In-Sight センサは、コマンドが正常に実行されたことを示す 1 を返します。文字数は 34 (単位はバイト) です。最後に、結果が XML フォーマットで返されます。

セル位置

セル F11 の EasyBuilder タグを返すには、次のコマンドを発行します。EV GetEasyBuilderTag(F11)

In-Sight センサは、コマンドが正常に実行されたことを示す 1 を返します。文字数は 34 (単位はバイト) です。最後に、結果が XML フォーマットで返されます。


GetEIPSingleAttribute

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

In-Sight EtherNet/IP のクラスおよびインスタンス属性を返します。

シンタックス: EV GetEIPSingleAttribute(Image Event,Class,Instance,Attribute)

注意: GetEIPSingleAttribute ネイティブモードコマンドは、ファームウェアバージョン 3.1.0 ～ 3.2.5 を実行するセンサ上でのみサポートされます。バージョン 3.3.0 以上のセンサでは、非明示的接続がタイムアウトになると、センサは非明示的接続およびセッションを自動的に削除します。

GetEIPSingleAttribute の入力

入力 | 説明
Image Event | スプレッドシートのセル A0 を参照します。Image Event がトリガされると、スプレッドシートのセルは更新されます。
Class | Control and Information Protocol Class に割り当てられた 10 進数の識別番号。
Instance | 参照されるインスタンスの 10 進値。
Attribute | 属性の 10 進数の識別子。

GetEIPSingleAttribute の出力

戻り値

ステータスコードの後に、結果の文字数 （バイト単位） と、XML フォーマットの結果が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

結果は、次のとおりです。

Value | 0 | タイムアウトへの移行
 | 1 | 自動削除

GetEIPSingleAttribute の例

In-Sight EtherNet/IP のクラスおよびインスタンス属性を返すには、次のコマンドを発行します。EV GetEIPSingleAttribute(A0,5,0,12)

In-Sight センサは、ステータスコード（1）とその後の文字数（バイト単位、18）で応答します。最後に、値（1）が返されます。


GetExternalLightMode

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

In-Sight 7000 シリーズビジョンシステムに接続されている外部ストロボデバイスのタイプを返します。

シンタックス: EV GetExternalLightMode()

GetExternalLightMode の入力

なし

GetExternalLightMode の出力

ステータスコード

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。
OutputMode
0 | 無効
1 | PNP (ソーシング)
2 | NPN (シンキング)

GetExternalLightMode の例

ビジョンシステムに接続されている外部ストロボデバイスのタイプを返すには、次のコマンドを発行します。EV GetExternalLightMode()

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最終的には、OutputMode (2) が返されます。これは、このビジョンシステムが NPN (シンキング) 外部ストロボデバイスに接続されていることを示します。


GetFTPSettings

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[FTP の設定] ダイアログで設定された情報を返します。

シンタックス: EV GetFTPSettings()

GetFTPSettings の入力

なし

GetFTPSettings の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetFTPSettings の例

[FTP の設定] ダイアログで設定された情報を取得するには、次のコマンドを発行します。EV GetFTPSettings()

In-Sight センサは、ステータスコード(1)とその後の文字数(バイト単位、223)で応答します。最後に、[FTP の設定] ダイアログで設定された情報が返されます。


GetHostTable

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[In-Sight のホストテーブル] ダイアログに含まれる情報を返します。

シンタックス: EV GetHostTable()

GetHostTable の入力

なし

GetHostTable の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetHostTable の例

[In-Sight のホストテーブル] ダイアログで設定された情報を取得するには、次のコマンドを発行します。EV GetHostTable()

注意: 最初の XML タグの Count は、ホストテーブル内のホストの数を表しています。

In-Sight センサは、ステータスコード(1)とその後の文字数(バイト単位、173)で応答します。最後に、[In-Sight のホストテーブル] ダイアログで設定された情報が返されます。


GetMSBuffer

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

マシンステータススタック内の 8 つのインデックス付きバッファ(ゼロで始まります)の 1 つに格納されたマシンステータスデータを返します。Index が 0 の場合は、現在のマシンステータスが返されます。

シンタックス: EV GetMSBuffer(Index)

GetMSBuffer の入力

入力 | 説明
Index | どのバッファを返すかを識別します(0～7)。

GetMSBuffer の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetMSBuffer の例

マシンステータススタック内のバッファ 0 に格納されたマシンステータスデータを取得するには、次のコマンドを発行します。EV GetMSBuffer(0)

In-Sight センサは、ステータスコード(1)とその後の文字数(バイト単位、582)で応答します。最後に、マシンステータスデータが返されます。

注意:
  • <BootTime> として指定した日時が最新になるのは、In-Sight デバイスの電源を入れ直した後であり、[SNTP サービスを使用する] チェックボックスが選択されていて、SNTP サーバが見つかった場合に限られます。
  • GetMSBuffer コマンドは、マシンステータスポートにアクセスすることによって、EV 接頭辞なしで使用できます。


GetNetwork

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ネットワークの設定] ダイアログで設定された情報を返します。

シンタックス: EV GetNetwork()

GetNetwork の入力

なし

GetNetwork の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetNetwork の例

[ネットワークの設定] ダイアログで設定された情報を取得するには、次のコマンドを発行します。EV GetNetwork()

In-Sight センサは、ステータスコード(1)とその後の文字数(バイト単位、552)で応答します。最後に、[ネットワークの設定] ダイアログで設定された情報が返されます。この例では、センサは起動時に DHCP によって動的に設定されます。UseDHCP 入力が 0 に設定された場合は、固定 IP 割り当ての設定が使用されます。


GetSerialPort

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[シリアルポートの設定] ダイアログで設定された情報を返します。有効なシリアルポート(1)を指定する必要があります。

シンタックス: EV GetSerialPort(Port)

GetSerialPort の入力

入力 | 説明
Port | どのシリアルポートのデータが返されるかを指定します。

GetSerialPort の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetSerialPort の例

[シリアルポートの設定] ダイアログで設定された情報を取得するには、次のコマンドを発行します。EV GetSerialPort(1)

In-Sight センサは、ステータスコード(1)とその後の文字数(バイト単位、477)で応答します。最後に、[シリアルポートの設定] ダイアログで設定された情報が返されます。

注意: [モード] が 1(未使用) に設定されていた場合、GetSerialPort は Mode 出力として -1 を返します。


GetStartup

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[スタートアップ] ダイアログで設定された情報を返します。

シンタックス: EV GetStartup()

GetStartup の入力

なし

GetStartup の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetStartup の例

[スタートアップ] ダイアログで設定された情報を取得するには、次のコマンドを発行します。EV GetStartup()

In-Sight センサは、ステータスコード(1)とその後の文字数(バイト単位、79)で応答します。最後に、[スタートアップ] ダイアログで設定された情報が返されます。


GetSystemConfig

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

次のパラメータは、GetSystemConfig Evaluate ネイティブモードコマンドと組み合わせて、システム情報を返すために使用されます。

  • Active Cells Limit
  • DHCP Timeout
  • Telnet Port
  • Services Enabled

Active Cells Limit

[Active Cells Limit] ダイアログに設定された使用可能なスプレッドシートセルの数を返します。

シンタックス: EV GetSystemConfig("ActiveCellLimit")

入力

入力 | 説明
"ActiveCellLimit" | アクティブセルの制限、セル単位 (2048 ～ 10400)。 注意: In-Sight 5000 センサ、In-Sight Micro 1020 および 1050 ビジョンシステムのアクティブセルの制限は 4,092 セルで、変更できません。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、XML フォーマットの結果が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

例

In-Sight センサまたはビジョンシステムのアクティブセル制限を取得するには、次のコマンドを発行します。EV GetSystemConfig("ActiveCellsLimit")

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、33) で応答します。最後に、現在の制限 (6144) に続いて、アクティブセル制限範囲の最小数 (2048) と最大数 (8192) が返されます。

DHCP Timeout

[ネットワークの設定] ダイアログで設定された DHCP タイムアウト情報を返します。

シンタックス: EV GetSystemConfig("DHCPTimeout")

入力

入力 | 説明
"DHCPTimeout" | In-Sight センサが DHCP 用に設定されているときに、センサが DHCP サーバが有効な IP アドレスで応答するのを待つ時間 (5 ～ 180 秒、デフォルト = 60)。DHCP サーバからの応答待ち時間がタイムアウトすると、ネットワーク通信は中断されます。センサは電源を入れ直すまでネットワークへの再接続を試みません。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、XML フォーマットの結果が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetSystemConfig("DHCPTimeout") の例

[ネットワークの設定] ダイアログで設定された [DHCP タイムアウト] 情報を取得するには、次のコマンドを発行します。EV GetSystemConfig("DHCPTimeout")

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、21) で応答します。最後に、[DHCP タイムアウト] 情報 (30) が返されます。

Telnet Port

[ネットワークの設定] ダイアログで設定された Telnet ポート情報を返します。

シンタックス: EV GetSystemConfig("TelnetPort")

入力

入力 | 説明
"TelnetPort" | アクティブな In-Sight センサ (通信を待っている TCP/IP サーバ) がリモートデバイス (通信を開始する TCP/IP クライアント) からの接続要求をリスンする Telnet ポート。有効なポート割り当ては、1 ～ 65535 の未使用の番号ですが、21、68、80、502、1069、1070、1212、2222、44818、および 50000 (In-Sight 通信のために予約済み) を除きます。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、XML フォーマットの結果が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetSystemConfig("TelnetPort") の例

[ネットワークの設定] ダイアログで設定された [Telnet ポート] 情報を取得するには、次のコマンドを発行します。EV GetSystemConfig("TelnetPort")

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、23) で応答します。最後に、[Telnet ポート] 情報 (23) が返されます。

Services Enabled

[ネットワークの設定] ダイアログで設定された [プロトコルサービス] 情報を返します。

注意: EtherNet/IP サービスと PROFINET サービスは相互に排他的であるため、両方のサービスを同時に有効にすることはできません。

シンタックス: EV GetSystemConfig("ServicesEnabled")

入力

入力 | 説明
"ServicesEnabled" | センサ上で現在有効なサービス。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、XML フォーマットの結果が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

結果は、次のとおりです。

返される値は、バイナリ値から変換された 10 進値です。

サービス | バイナリ | 10 進値
PROFINET | 100 | 4
EtherNet/IP | 010 | 2
Modbus Server | 001 | 1
なし | 000 | 0

複数のサービスが有効になっている場合、返された 10 進値をバイナリ値に変換することによって、どのサービスが有効になっているかを調べることができます。 Closed 例

次のコマンドを発行します。EV GetSystemConfig("ServicesEnabled")

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、20) で応答します。最後に、有効なサービス (5) が返されます。有効なサービスを判断するには、10 進値をバイナリ値に変換します。

5 = 101

バイナリ値に基づいて、Modbus および PROFINET サービスがセンサ上で有効になっていることがわかります。

サービス | PROFINET | EtherNet/IP | Modbus
バイナリ | 1 | 0 | 1

GetSystemConfig("ServicesEnabled") の例

[ネットワークの設定] ダイアログで設定された [プロトコルサービス] 情報を取得するには、次のコマンドを発行します。EV GetSystemConfig("ServicesEnabled")

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、20) で応答します。最後に、有効なサービス (2) が返され、EtherNet/IP サービスが有効であることを示します。


GetUserList

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ユーザリスト] ダイアログで設定された情報を返します。

シンタックス: EV GetUserList()

GetUserList の入力

なし

GetUserList の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

GetUserList 結果

名 ユーザ名を返します。

アクセス

ユーザのアクセスレベルを返します。

0 | フル
1 | プロテクト
2 | アクセス不可
ビュー

ユーザがログオンしたときに、カスタムビューが表示されるかどうかを返します。

0 | カスタム
1 | 標準 (スプレッドシートビュー、またはEasyBuilder ビューが表示されます)。

読み取り

ユーザが FTP 読み取り権限の有無を返します。

0 | 無
1 | 有

書き込み

ユーザが FTP 書き込み権限の有無を返します。

0 | 無
1 | 有

SaveJobOnline

ユーザはオンライン中にジョブ保存の可否を返します。

0 | 無
1 | 有

GetUserList の例

[ユーザリスト] ダイアログで設定された情報を取得するには、次のコマンドを発行します。EV GetUserList()

注意: 最初の XML タグの Count は、ユーザリスト内のユーザ数を表しています。

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、568) で応答します。最後に、[ユーザリスト] ダイアログで設定された情報が返されます。

関連項目

[ユーザリスト] ダイアログ


SetCellName

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

指定したセルのシンボリックタグ名を設定し、必要に応じてシンボリックタグを OPC チャネル経由で In-Sight OPC サーバに送信できます。または、監査メッセージサーバへの監査メッセージを生成します。

シンタックス:EV SetCellName(Cell,"Name",[Mode])

SetCellName 入力

入力 | 説明
Cell | セル参照 (例: A4)。
"Name" | シンボリックタグ名として使用するテキスト文字列。名前は引用符で囲む必要があります。
Mode | モードの入力は省略できます。 0 = 出力を無効にします。 2 = OPC チャネル経由でシンボリックタグを送信します。 8 = シンボリックタグを使用して監査メッセージサーバへの監査メッセージを生成します。 10 = OPC チャネル経由でシンボリックタグを送信し、シンボリックタグを使用して監査メッセージサーバへの監査メッセージを生成します。 注意:監査メッセージを生成するには、[監査メッセージを有効にする] チェックボックスをオンにする必要があります。

SetCellName 出力

戻り値

ステータスコード。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | セル ID が無効です。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetCellName 例

シンボリックタグ名 "Width" をセル B60 に割り当てるには、次のコマンドを発行します。EV SetCellName(B60,"Width")

In-Sight センサは、コマンドが正常に実行されたことを示す 1 を返します。文字数は 18 (単位はバイト) です。最後に、結果が XML フォーマットで返されます。


SetCellValue

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

特定のセルの値に EasyBuilder タグを追加します。

シンタックス: EV SetCellValue("Name",Value,[モード])

SetCellValue の入力

入力 | 説明
"Name" | そのセルに対して使用する EasyBuilder タグ名。名前は引用符で囲む必要があります。
Value | そのセルで使用する値。整数値、浮動小数点値、またはテキスト文字列です。入力値 "Name" で指定されたセルが EditInt、EditFloat、または EditString 関数ではなかった場合、または値タイプが一致しない場合、#ERR が返されます。
モード | モードの入力は省略できます。 0 = 出力を無効にします。OPC データアクセスおよび交換で、名前付き値を利用可能にしません。 1 = セルの値が変更された場合、出力を有効にします。 2 = 出力を有効にします。OPC データアクセスおよび交換で、名前付き値を利用可能にします。

SetCellValue の出力

戻り値

ステータスコード。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-1 | セル ID が無効です。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetCellValue の例

Distance Measurement ツールの Minimum Distance 値に EasyBuilder タグ名 "Distance_1.Minimum" をつけて、セル A116 に配置するには、次のコマンドを発行します。EV SetCellValue("Distance_1.Minimum",62)

In-Sight センサは、コマンドが正常に実行されたことを示す 1 を返します。コマンドの実行に成功すると 2 番目の確認として、文字数 (単位はバイト) および <Float>1</Float> も表示されます。


SetDeEnergizeOutputs

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ディスクリート出力設定] ダイアログの [オフライン時に出力の電源を切る] 設定を変更します。

シンタックス: EV SetDeEnergizeOutputs(DeEnergizeOutputs,WriteProcSet)

SetDeEnergizeOutputs の入力

入力 | 説明
DeEnergizeOutputs | 0 = 無効* 1 = 有効
WriteProcSet | 0 = 設定は proc.set ファイルに保存されません。In-Sight センサの電源を入れ直すと、設定は失われます。 1 = 設定は proc.set ファイルに保存されます。In-Sight センサの電源を入れ直しても、設定は失われません。
* はデフォルト値を示します。

SetDeEnergizeOutputs の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetDeEnergizeOutputs の例

センサがオフラインになったときに出力の電源を切るように設定するには、次のコマンドを発行します。EV SetDeEnergizeOutputs(1,1)

In-Sight センサは、ステータスコード(1)とその後の文字数(バイト単位、18)で応答します。最後に、値(1)が返されます。


SetDiscreteInput

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ディスクリート入力設定] ダイアログの設定を変更します。

シンタックス:EV SetDiscreteInput(LineID,"Name",Type,Signal)

注意:
  • このコマンドを実行する際には、In-Sight システムはオフラインになっている必要があります。
  • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。

  • Store Settings (TS) ネイティブモードコマンドを使用して proc.set ファイルに変更を保存します。proc.set ファイルに保存しないと、In-Sight ビジョンシステムの電源を入れ直したときに変更が失われます。

SetDiscreteInput入力

入力 | 説明
LineID | In-Sight 5000 シリーズおよび In-Sight Micro シリーズ: (0 ～ 9)
In-Sight 7000 シリーズ:　(0 ～ 7、9 ～ 11)
"Name"

入力ラインの名前。

注意:　入力する "Name" は、引用符で囲む必要があります。
Type | 0 = ユーザデータ*
1 = イベントトリガ
2 = ジョブ ID 番号
3 = オンライン/オフライン
4 = 取り込みトリガ (CIO-1400 ではサポートされていません)
5 = ジョブ読み込みスイッチ

8 = シリアル受信 (直接接続 I/O のみ。LineID = 1 の場合のみ有効)

注意:
  • [シリアル受信] は、In-Sight Explorer 4.7.1 以降が搭載されている In-Sight 7000 シリーズビジョンシステムに接続し、In-Sight 4.7.1 以降のファームウェアを使用している場合のみ使用可能です。
  • SetDiscreteInput コマンドが発行され、入力ライン 1 がシリアル受信に設定された場合、ビジョンシステムは出力ライン 1 がシリアル送信に設定されているかどうかを判別します。設定されていない場合、入力ライン 1 は一時的にこのラインのデフォルトの入力タイプにリセットされます。SetDiscreteOutput コマンドが発行され、出力ライン 1 がシリアル送信に設定された場合、入力ライン 1 は自動的にシリアル受信に設定されます。
Signal

0 = 立ち上がりエッジ*

1 = 立ち下がりエッジ

2 = 両方のエッジ
* はデフォルト値を示します。

注意: [オンライン / オフライン]、[画像取り込みトリガ]、および [ジョブ読み込みスイッチ] 入力タイプを、同時に複数の入力ラインで使用することはできません。

SetDiscreteInput出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetDiscreteInput例

以下の設定を行うには

LineID: 4

"Name":Line 4

Type:ジョブ ID 番号

Signal:立ち上がりエッジ

次のコマンドを発行します。EV SetDiscreteInput(4,"LINE4",2,0)

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、結果が XML フォーマットで返されます。


SetDiscreteOutput

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ディスクリート出力設定] ダイアログおよび [ディスクリート出力の詳細設定] ダイアログの設定を変更します。

シンタックス:EV SetDiscreteOutput(LineID,"Name",Type,Pulse,PulseLen,Delay)

注意:
  • このコマンドを実行する際には、In-Sight ビジョンシステムはオフラインになっている必要があります。
  • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
  • In-Sight ビジョンシステムを CIO-1400 または CIO-1450 I/O モジュールとともに使用する場合、シリアルポート経由でディスクリート出力設定を変更するために、SetDiscreteOutput または SetDiscreteOutputDelay コマンドを使用しないでください。使用した場合、ビジョンシステムが応答しなくなる場合があります。変更を行う、または Telnet 経由でコマンドを送信するには、[ディスクリート出力設定] および [ディスクリート出力詳細] ダイアログを使用します。

  • Store Settings (TS) ネイティブモードコマンドを使用して proc.set ファイルに変更を保存します。proc.set ファイルに保存しないと、In-Sight ビジョンシステムの電源を入れ直したときに変更が失われます。

SetDiscreteOutput入力

入力 | 説明
LineID

In-Sight 5000 シリーズおよび In-Sight Micro シリーズ:(0 ～ 11)
In-Sight 7000 シリーズ:(0 ～ 13)
"Name"

出力ラインの名前。

注意:入力する "Name" は、引用符で囲む必要があります。
Type | 0 = ユーザ用*

1 = 高
2 = 低
3 = 取り込み開始
4 = 取り込み終了
5 = ジョブ完了
6 = システムビジー
7 = ジョブを開く - 完了
8 = ジョブを開く - エラー
9 = ERR:Missed Acquisition
10 = ERR:トラックオーバラン
11 = ERR:トラックキューフル
12 = オンライン/オフライン

13 = ストロボ

In-Sight 5000 シリーズ: LineID = 1 (直接接続 I/O / CIO-1350 または CIO-1400 では HSOUT 1) または LineID = 9 (CIO-1450 または CIO-1460 では HSOUT 1) の場合のみ有効。

In-Sight 7000 シリーズ: LineID = 0 (直接接続 I/O では HSOUT 0) または LineID = 8 (CIO-MICRO または CIO-MICRO-CC では HSOUT 0) の場合のみ有効。

In-Sight Micro シリーズ:LineID = 1 (直接接続 I/O では HSOUT 1) または LineID = 9 (CIO-MICRO、CIO-MICRO-CC、および CIO-WENET では HSOUT 1) の場合のみ有効。
14 = I/O モジュールスタンバイ (CIO-1450 および CIO-1460 のみ。LineID = 0 ～ 7 の場合のみ有効)
15 = 照明制御 (CIO-1460 のみ。LineID = 9 の場合のみ有効)
17 = ライフライン (CIO-MICRO および CIO-MICRO-CC のみ)
18 = Waveform

20 = シリアル送信 (直接接続 I/O のみ。LineID = 1 の場合のみ有効)

注意:
  • [シリアル送信] は、In-Sight Explorer 4.7.1 以降が搭載されている In-Sight 7000 シリーズビジョンシステムに接続し、In-Sight 4.7.1 以降のファームウェアを使用している場合のみ使用可能です。
  • SetDiscreteOutput コマンドが発行され、出力ライン 1 がシリアル送信に設定された場合、ビジョンシステムは入力ライン 1 がシリアル受信に設定されているかどうかを判別します。設定されていない場合、出力ライン 1 は一時的にこのラインのデフォルトの出力タイプにリセットされます。SetDiscreteInput コマンドが発行され、入力ライン 1 がシリアル受信に設定された場合、出力ライン 1 は自動的にシリアル送信に設定されます。
Pulse

0 = レベル出力
1 = パルス出力
PulseLen

出力パルスの持続時間。In-Sight 5000 シリーズおよび In-Sight Micro シリーズビジョンシステム (10 ～ 1000 ms、デフォルト = 10)、In-Sight 7000 シリーズおよび In-Sight Micro 1402/1412 ビジョンシステム (1 ～ 1000 ms、デフォルト = 10)。
Delay

(0 ～ 1000)
* はデフォルト値を示します。

SetDiscreteOutput出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetDiscreteOutput例

以下の設定を行うには

LineID:3

"Name":"LINE3"

Type:ジョブを開く - 完了

Pulse:レベル出力

PulseLen:250 ms

Delay:50

次のコマンドを発行します。EV SetDiscreteOutput(3,"LINE3",7,0,250,50)

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、結果が XML フォーマットで返されます。


SetDiscreteOutputDelay

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ディスクリート出力詳細設定] ダイアログの遅延設定を変更します。

シンタックス: EV SetDiscreteOutputDelay(ラインID,タイプ,[遅延],[[WriteProcSet],[IOモジュール]])

注意: SetDiscreteOutputDelay コマンドのあとに、SetDiscreteOutput コマンドを発行すると、SetDiscreteOutputDelay の設定は上書きされてしまいます。

SetDiscreteOutputDelay の入力

Input | Description
ラインID | 修正するライン出力番号。
タイプ 0 = なし

1 = 取り込み遅延

2 = トリガ後の時間
遅延
  • タイプ = 0 の場合、遅延は無視され、強制的に 0 が返されます。
  • タイプ = 1 の場合、遅延は、信号のパルスを出力ラインが受信した後に、出力を遅延させるための画像取り込みパルスまたはトラッキングパルスの数 （0 ～ 1000）となります。この値が 0 の場合、In-Sight ビジョンシステムは、WriteDiscrete 関数を評価するとすぐに出力ラインを更新します。1 以上の場合、出力ラインはパルスに設定されます。
  • タイプ = 2の場合、遅延は、出力の送信前の時間 (0～10000 ms) となります。

WriteProcSet

オプションのパラメータです。

0 = 設定は proc.set ファイルに保存されません。ビジョンシステムの電源を入れ直すと、設定は失われます。

1 = 設定は proc.set ファイルに保存されます。 ビジョンセンサの電源を入れ直しても、設定は失われません。

IOモジュール

特定の I/O モジュールタイプのディスクリート出力遅延を設定するのに使用される、サブパラメータ (オプション) です。

0 = 直接接続 I/O / CIO-1350

1 = CIO-1450 および CIO-1460

2 = CIO-1400

3 = CIO-MICRO および CIO-MICRO-CC

SetDiscreteOutputDelay の出力

戻り値

ステータスコードの後に、文字数 (バイト単位) が続きます。ステータスコードは次のとおりです。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetDiscreteOutputDelayの例

以下の設定を行うには

ラインID: 3

タイプ: トリガ後の時間

遅延: 250 ms

WriteProcSet: 1

IOモジュール: CIO-MICRO

次のコマンドを発行します。 EV SetDiscreteOutputDelay(3,2,250,1,3)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、結果が XML フォーマットで返されます。


SetEditRegion

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

EditRegion 関数を含むセルの設定を変更します。セルには、すでに EditRegion 関数が含まれている必要があります。含まれていなかった場合、SetEditRegion は EditRegion 関数を作成しません。

シンタックス: EV SetEditRegion(Cell,Row,Column,High,Wide,Angle,Curve)

SetEditRegion の入力

入力

説明

セル

column | （A～Z） 設定するセル値の列文字。
row | (0 ～ 599) 設定するセル値の行番号。

行

フィクスチャ座標での原点の行オフセット。

列

フィクスチャ座標での原点の列オフセット。

高さ

領域の X 軸に沿った寸法。

注意: この値を負の整数に指定することはできません。

幅

領域の Y 軸に沿った寸法。

注意: この値を負の整数に指定することはできません。

角度

フィクスチャ座標での角度。

カーブ

領域の X 軸と反対側の境界線との間の角度変位。

SetEditRegion の出力

戻り値

ステータスコードの後に、結果の文字数 （バイト単位） と、XML フォーマットの結果が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetEditRegion の例

  1. セル A3 に EditRegion 関数をデフォルト設定で挿入します。セル A3 には、次が格納されていると仮定します。

A3 = EditRegion(0,0,0,1,1,1,1,"",0)

EditRegion [image] コントロールが作成され、対応する結果テーブルが右隣のセルに作成されます。

  2. Telnet クライアントから、次のコマンドを発行します。EV SetEditRegion(A3,100,100,250,250,0,0)

EditRegion の結果テーブルが、SetEditRegion 入力値を反映して更新されます。


SetEIPSingleAttribute:

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

In-Sight EtherNet/IP のクラスおよびインスタンス属性を設定します。

シンタックス: EV SetEIPSingleAttribute:(Class,Instance,Attribute,Value)

注意: SetEIPSingleAttribute ネイティブモードコマンドは、ファームウェアバージョン 3.1.0 ～ 3.2.5 を実行するセンサ上でのみサポートされます。 バージョン 3.3.0 以上のセンサでは、非明示的接続がタイムアウトになると、センサは非明示的接続およびセッションを自動的に削除します。

SetEIPSingleAttribute: の入力

入力 | 説明
Class | Control and Information Protocol Class に割り当てられた識別番号。
Instance | 参照されるインスタンスの値。 注意: クラスの属性を変更する場合には、Instance を 0 にします。
Attribute | 変更される属性の識別子。
Value | 属性に割り当てる値。

サポートされるパラメータは、次のとおりです。

Class | Instance | Attribute | Value | 説明
5 | 0 | 12 | 0 = タイムアウトへの移行* 1 = 自動削除 | Watchdog_timeout_action: すべての新しい接続について、クラス Watchdog timeout action を定義します。
* はデフォルト値を示します。

SetEIPSingleAttribute: の出力

戻り値

ステータスコードの後に、結果の文字数 （バイト単位） と、XML フォーマットの結果が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetEIPSingleAttribute: の例

EIP I/O ウォッチドッグタイムアウト操作を [自動削除] に設定するには、次のコマンドを発行します。EV SetEIPSingleAttribute(5,0,12,1)

In-Sight センサは、ステータスコード（1）とその後の文字数（バイト単位、18）で応答します。最後に、値（1）が返されます。


SetExternalLightMode

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

In-Sight 7000 シリーズビジョンシステムに接続されている外部ストロボデバイスのタイプを指定します。

シンタックス: EV SetExternalLightMode(OutputMode)

SetExternalLightMode の入力

入力 | 説明
OutputMode | 0 = 無効 1 = PNP (ソーシング)* 2 = NPN (シンキング)
WriteProcSet | 0 = 設定は proc.set ファイルに保存されません。In-Sight ビジョンシステムの電源を入れ直すと、設定は失われます。* 1 = 設定は proc.set ファイルに保存されます。In-Sight ビジョンシステムの電源を入れ直しても、設定は保持されます。*
* はデフォルト値を示します。

SetExternalLightMode の出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetExternalLightMode の例

NPN (シンキング) 外部ストロボデバイスがビジョンシステムに接続されていることを指定し、設定を proc.set ファイルに保存するには、コマンド EV SetExternalLightMode(2,1) を発行します。

ビジョンシステムは、コマンドが正常に実行されたことを示すステータスコード (1) に続けて、文字数 (18) をバイト単位で返します。最後に、浮動小数点値 （0）が返されます。


SetFavorHostTable

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[In-Sight のホストテーブル] の [ホストテーブルを DNS より優先する] オプションを有効または無効にします。

シンタックス:EV SetFavorHostTable(FavorHostTable)

注意: Store Settings (TS) ネイティブモードコマンドを使用して proc.set ファイルに変更を保存します。proc.set ファイルに保存しないと、In-Sight ビジョンシステムの電源を入れ直したときに変更が失われます。

SetFavorHostTable入力

入力 | 説明
FavorHostTable | 0 = 無効* 1 = 有効
* はデフォルト値を示します。

SetFavorHostTable出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetFavorHostTable例

[ホストテーブルを DNS より優先する] オプションを有効にするには、次のコマンドを発行します。EV SetFavorHostTable(1)

SetFavorHostTable コマンドを発行すると、In-Sight センサはステータスコード (1) で応答し、その後にバイト単位の文字数 (18) が続きます。最後に、結果が XML フォーマットで返されます。


SetFTPSettings

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[FTP の設定] ダイアログの設定を行います。

シンタックス: EV SetFTPSettings(IdleTimeout,ReadTimeout,ConnectionRetry,LocalPort,RemotePort,Passive)

注意: Store Settings (TS) ネイティブモードコマンドを使用して proc.set ファイルに変更を保存します。proc.set ファイルに保存しないと、In-Sight ビジョンシステムの電源を入れ直したときに変更が失われます。

SetFTPSettings入力

入力 | 説明
IdleTimeout | (0 ～ 10000)、120*
ReadTimeout | (0 ～ 10000)、120*
ConnectionRetry | (1 ～ 10)、1*
LocalPort | (1 ～ 65535)、21*
RemotePort | (1 ～ 65535)、21*
Passive | 0 = 無効* 1 = 有効
* はデフォルト値を示します。

SetFTPSettings出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetFTPSettings例

以下の設定を行うには

IdleTimeout: 180

ReadTimeout: 180

ConnectionRetry: 1

LocalPort: 21

RemotePort: 21

Passive: 0

次のコマンドを発行します。EV SetFTPSettings(180,180,1,21,21,0)

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、結果が XML フォーマットで返されます。


SetHostTable

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[In-Sight のホストテーブル] ダイアログの設定を行います。

シンタックス: EV SetHostTable(HostID,"Name","IPAddress")

注意: Store Settings (TS) ネイティブモードコマンドを使用して proc.set ファイルに変更を保存します。proc.set ファイルに保存しないと、In-Sight ビジョンシステムの電源を入れ直したときに変更が失われます。

SetHostTable入力

入力 | 説明
HostID | (0 ～ 31) テーブルの最初のホスト名 = 0、 テーブルの 2 番目のホスト名 = 1、 ... 順に最大 31 まで。
"Name" | In-Sight センサのホスト名。
"IPAddress" | In-Sight センサの IP アドレス。

SetHostTable出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetHostTable例

例 1: ホストテーブルエントリを追加する

例 2: ホストテーブルエントリを編集する

例 1: ホストテーブルエントリを追加する

ホスト名「PRODUCTION1」、IP アドレス「192.168.1.1」のセンサをホストテーブルの最初のエントリとして追加するには、次のコマンドを発行します。EV SetHostTable(0,"PRODUCTION1","192.168.1.1")

ホスト名「PRODUCTION2」、IP アドレス「192.168.1.3」のセンサをホストテーブルの 2 番めのエントリとして追加するには、次のコマンドを発行します。EV SetHostTable(1,"PRODUCTION2","192.168.1.3")

例 2: ホストテーブルエントリを編集する

2 番目のホストテーブルエントリの IP アドレスを編集するには、次のコマンドを発行します。EV SetHostTable(1,"PRODUCTION2","192.168.1.2")


SetNetwork

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[ネットワークの設定] ダイアログの設定を行います。

シンタックス:　EV SetNetwork(UseDHCP,"HostName","IPAddress","SubnetMask","DefaultGateway","DNSServer","DomainName")

注意: Store Settings (TS) ネイティブモードコマンドを使用して proc.set ファイルに変更を保存します。proc.set ファイルに保存しないと、In-Sight ビジョンシステムの電源を入れ直したときに変更が失われます。

SetNetwork入力

入力 | 説明
UseDHCP | 0 = 無効 1= 有効
"HostName" | In-Sight センサのホスト名。
"IPAddress" | In-Sight センサの IP アドレス。
"SubnetMask" | The In-Sight センサのサブネットマスク。
"DefaultGateway" | In-Sight センサのデフォルトゲートウェイ。
"DNSServer" | ゲートウェイホストの IP アドレス。
"DomainName" | In-Sight センサのネットワークドメイン。

注意:　IPAddress、SubnetMask、DefaultGateway、DNSServer、および DomainName パラメータは、GetNetwork コマンドからの戻り値に示されているように、現在のフィールドではなく固定フィールドを変更します。

SetNetwork出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetNetwork 例

以下の設定を行うには

UseDHCP: 0

"HostName": is5100_010203

"IPAddress": 192.168.0.1

"SubnetMask": 255.255.255.0

"DefaultGateway": 192.168.0.254

"DNSServer": 192.168.0.2

"DomainName": yourdomain.com

次のコマンドを発行します。EV SetNetwork(0,"is5100_010203","192.168.0.1","255.255.255.0","192.168.0.254","192.168.0.2","yourdomain.com")

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、結果が XML フォーマットで返されます。


SetSerialPort

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[シリアルポートの設定] ダイアログの設定を行います。

シンタックス:　EV SetSerialPort(SerialPortNum,Mode,BaudRate,DataBits,StopBits,Parity,Handshake,InputPacketSize,OutputPacketSize,
InputTerminator,OutputTerminator,FixedInputMode,FixedInputLength,DeviceNetTrigger)

注意:
  • In-Sight システムはオフラインになっている必要があります。
  • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
  • In-Sight Micro ビジョンシステムは、CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続している場合のみ、シリアル通信をサポートします。
  • CIO-WENET イーサネット I/O モジュールはシリアル通信をサポートしていません。

  • Store Settings (TS) ネイティブモードコマンドを使用して proc.set ファイルに変更を保存します。proc.set ファイルに保存しないと、In-Sight ビジョンシステムの電源を入れ直したときに変更が失われます。

SetSerialPort入力

入力 | 説明
SerialPortNum | 1
Mode | 1 = 未使用 (閉じた状態) 6 = テキスト 7 = ネイティブ* 8 = DeviceNet 9 = Motoman 10 = Kuka
BaudRate | 1200 2400 4800 9600 19200 38400 57600 115200*
DataBits | 4 = 7 データビット 8 = 8 データビット
StopBits | 1 = 1 ストップビット* 4 = 2 ストップビット*
Parity | 256 = なし* 512 = 奇数 1024= 偶数
Handshake | 0 = なし* 1 = ハードウェア 2 = Xon/Xoff
InputPacketSize (DeviceNet のみ) | (1 ～ 255)、1*
OutputPacketSize (DeviceNet のみ) | (1 ～ 255)、1*
InputTerminator (Text および Native のみ) | (1 ～ 255)、13*
OutputTerminator (Text および Native のみ) | -1 = CRLF 0 = 終端記号なし (1 ～ 255)、13*
FixedInputMode (Text および Native のみ) | 0= 無効* 1 = 有効
FixedInputLength (Text および Native のみ) | (1 ～ 255)、1*
DeviceNetTrigger (DeviceNet のみ) | 0 = 無効 1 = 有効*
* はデフォルト値を示します。

SetSerialPort出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetSerialPort例

以下の設定を行うには

SerialPortNum: 1

Mode: 7

BaudRate: 115200

DataBits: 8

StopBits: 1

Parity: 256

Handshake: 0

InputPacketSize: 0

OutputPacketSize: 0

InputTerminator: 13

OutputTerminator: 13

FixedInputMode: 0

FixedInputLength: 0

DeviceNetTrigger: 1

次のコマンドを発行します。EV SetSerialPort(1,7,115200,8,1,256,0,0,0,13,13,0,0,1)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、結果が XML フォーマットで返されます。


SetStartup

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

[スタートアップ] ダイアログの設定を行います。

シンタックス:　EV SetStartup("JobName",Online)

注意: Store Settings (TS) ネイティブモードコマンドを使用して proc.set ファイルに変更を保存します。proc.set ファイルに保存しないと、In-Sight ビジョンシステムの電源を入れ直したときに変更が失われます。

SetStartup入力

入力 | 説明
"JobName" | 起動時に自動的にロードするジョブの名前。
Online | 0= オフライン開始* 1= オンライン開始
* はデフォルト値を示します。

SetStartup出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

SetStartup 例

起動時にジョブ「Sorting.job」をロードして、オンラインモードで起動するようにセンサを設定するには、次のコマンドを発行します。EV SetStartup("Sorting.job",1)

In-Sight センサは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、結果が XML フォーマットで返されます。


SetSystemConfig

ネイティブモードの拡張コマンド - Evaluate

In-Sight 通信リファレンス

次のパラメータは、SetSystemConfig Evaluate ネイティブモードコマンドと組み合わせて、システムパラメータを設定するために使用されます。

注意:　引用符で囲まれている入力は、In-Sight ビジョンシステムに送信する際に引用符で囲む必要があります。

  • Active Cells Limit
  • DHCP Timeout
  • Telnet Port
  • Live Image
  • Online Image
  • Services Enabled
  • Audit Enable Settings
  • Audit IP Settings
  • Trigger Timestamp
  • Increase Image Buffers
  • Adjust ExtractBlobs Memory Allocation
  • Default Focus Position

Active Cells Limit

[アクティブセル制限] ダイアログ内の使用可能なスプレッドシートセルの数を設定します。

シンタックス:EV SetSystemConfig("ActiveCellLimit",Limit,WriteProcSet)

入力

入力 | 説明
"ActiveCellLimit" | [アクティブセル制限] ダイアログの設定を参照します。
Limit | アクティブセルの制限、セル単位(2048 ～ 10400)、6144* 注意: In-Sight 5000 ビジョンシステムのアクティブセルの制限は 4,096 セルで、変更できません。
WriteProcSet | 0* = [アクティブセル制限] の設定値は無効です。この値は、proc.set ファイルに書き込まれ、In-Sight ビジョンシステムの電源が入れ直された場合にのみ有効になります。 1 = [アクティブセル制限] の設定値は proc.set ファイルに保存されます。[アクティブセル制限] を有効するには、In-Sight ビジョンシステムの電源を入れ直す必要があります。
* はデフォルト値を示します。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

例

アクティブセル制限を 8,192 に指定するには、次のコマンドを発行します。EV SetSystemConfig("ActiveCellsLimit",8192,1)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、20) で応答します。最後に、制限が設定されたことを示す 1、または制限が設定されていないことを示す 0 のどちらかの結果コードが返されます。変更を有効にするには、In-Sight ビジョンシステムの電源を入れ直す必要があります。

DHCP Timeout

[ネットワークの設定] ダイアログの [DHCP タイムアウト] の設定値を変更します。

シンタックス:EV SetSystemConfig("DHCPTimeout",Timeout,WriteProcSet)

入力

入力 | 説明
"DHCPTimeout" | [DHCP タイムアウト] 設定を参照します。
Timeout | (5 ～ 180)、60*
WriteProcSet | 0* = [DHCP タイムアウト] 設定は proc.set ファイルに保存されません。In-Sight ビジョンシステムの電源を入れ直すと、設定は失われます。 1 = [DHCP タイムアウト] 設定は proc.set ファイルに保存されます。In-Sight ビジョンシステムの電源を入れ直しても、設定は失われません。
* はデフォルト値を示します。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | コマンドを実行することができませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

例

30 秒の DHCP タイムアウトを指定するには、次のコマンドを発行します。EV SetSystemConfig("DHCPTimeout",30,1)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、[DHCP タイムアウト] 設定 (30) が返されます。

Telnet Port

[ネットワークの設定] ダイアログの [Telnet ポート] 設定を変更します。

シンタックス:EV SetSystemConfig("TelnetPort",Port,WriteProcSet)

入力

入力 | 説明
"TelnetPort" | [Telnet ポート] 設定を参照します。
Port | (1 ～ 65535)、23*
WriteProcSet | 1 = [Telnet ポート] 設定は proc.set ファイルに保存されます。In-Sight ビジョンシステムの電源を入れ直しても、設定は失われません。
* はデフォルト値を示します。

注意:

  • 有効なポート割り当ては、1 ～ 65535 の未使用の番号ですが、21、68、80、502、1069、1070、1212、2222、44818、および 50000 (In-Sight 通信のために予約済み) を除きます。
  • [Telnet ポート] 設定を有効にするには、ビジョンシステムを再起動する必要があります。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

例

Telnet ポート 2000 を指定するには、次のコマンドを発行します。EV SetSystemConfig("TelnetPort",2000,1)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、[Telnet ポート] 設定 (2000) が返されます。

Live Image

[表示画像の設定] ダイアログの [ライブ取り込み] 設定を変更します。

シンタックス:　EV SetSystemConfig("LiveImage",Resolution,MaxFrameRate)

入力

入力 | 説明
"LiveImage" | [ライブ画像] 設定を参照します。
Resolution | 1 = フル 0 または 2 = ハーフ* 3 = クォーター
MaxFrameRate | (0.016 ～ 100)、0*
* はデフォルト値を示します。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

例

ハーフ解像度のライブ画像を最大レート 0.064 フレーム/秒で使用するようにビジョンシステムを設定するには、次のコマンドを発行します。EV SetSystemConfig("LiveImage",1,0.064)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、[ライブ取り込み] 設定 (1 0.064) が返されます。

Online Image

[表示画像の設定] ダイアログの [オンライン解像度] 設定を変更します。

シンタックス:　EV SetSystemConfig("OnlineImage",Resolution,MaxFrameRate)

入力

入力 | 説明
"OnlineImage" | [オンライン画像] 設定を参照します。
Resolution | 0 = 最適* 1 = フル 2 = ハーフ 3 = クォーター
MaxFrameRate | (0.016 ～ 100)、0*
* はデフォルト値を示します。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

例

ハーフ解像度のオンライン画像を最大レート 0.064 フレーム/秒で使用するようにビジョンシステムを設定するには、次のコマンドを発行します。EV SetSystemConfig("OnlineImage",2,0.064)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、18) で応答します。最後に、[ライブ取り込み] 設定 (2 0.064) が返されます。

Services Enabled

[ネットワークの設定] ダイアログの [プロトコルサービス] 設定を変更します。

注意:　EtherNet/IP サービスと PROFINET サービスは相互に排他的であるため、両方のサービスを同時に有効にすることはできません。

シンタックス:　EV SetSystemConfig("ServicesEnabled",Services,Mask)

入力

入力

説明

"ServicesEnabled"

[プロトコルサービス] 設定を参照します。

Services

ビジョンシステム上で有効にするすべてのサービスを指定します。Services パラメータは、10 進値に変換されるバイナリ値です。

サービス | バイナリ | 10 進値
PROFINET | 100 | 4
EtherNet/IP | 010 | 2
Modbus Server | 001 | 1
なし | 000 | 0

複数のサービスを有効にするには、有効にするサービスのバイナリ値を求めて、それを 10 進値に変換します。 Closed 例

現在、有効になっているサービスはなく、Modbus および PROFINET サービスを有効にする必要があるとします。

    1. サービスの有効化に使用するバイナリ値を求めます。
サービス | PROFINET | EtherNet/IP | Modbus
バイナリ | 1 | 0 | 1
    2. バイナリ値を 10 進値に変換します。

101 = 5

    3. サービスの変更に使用するバイナリ値を求めます。
サービス | PROFINET | EtherNet/IP | Modbus
バイナリ | 1 | 0 | 1
    4. バイナリ値を 10 進値に変換します。これによって、Mask パラメータ値が得られます。

101 = 5

    5. 次のコマンドを発行します。EV SetSystemConfig("ServicesEnabled",5,5)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、20) で応答します。最後に、有効になったサービス (5) が返されます。

Mask

ビジョンシステム上で変更するサービスを指定します。Mask パラメータは、10 進値に変換されるバイナリ値です。

サービス | バイナリ | 10 進値
PROFINET | 100 | 4
EtherNet/IP | 010 | 2
Modbus Server | 001 | 1
なし | 000 | 0

複数のサービスを変更するには、変更するサービスのバイナリ値を求めて、それを 10 進値に変換します。 Closed 例

現在、有効になっているサービスは、PROFINET サービスだけです。EtherNet/IP サービスを有効にして、PROFINET サービスを無効にする必要があるとします。EtherNet/IP サービスを有効にするだけなので、Service パラメータは 2 であることがわかります。

  1. サービスの変更に使用するバイナリ値を求めます。これによって、Mask パラメータ値が得られます。
サービス | PROFINET | EtherNet/IP | Modbus
バイナリ | 1 | 1 | 0
  2. バイナリ値を 10 進値に変換します。

110 = 6

  3. 次のコマンドを発行します。EV SetSystemConfig("ServicesEnabled",2,6)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、20) で応答します。最後に、有効になったサービス (2) が返されます。

* はデフォルト値を示します。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

例

1 つのサービスを有効にして変更するには

現在、有効になっているサービスはなく、PROFINET サービスを有効にする必要があるとします。次のコマンドを発行します。EV SetSystemConfig("ServicesEnabled",4,4)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、20) で応答します。最後に、有効になったサービス (4) が返されます。

すべてのサービスを無効にする

すべてのサービスを無効にするので、Service パラメータは 0 であることがわかります。

    1. サービスの変更に使用するバイナリ値を求めます。
サービス | PROFINET | EtherNet/IP | Modbus
バイナリ | 1 | 1 | 1
    2. バイナリ値を 10 進値に変換します。これによって、Mask パラメータ値が得られます。

111 = 7

    3. 次のコマンドを発行します。EV SetSystemConfig("ServicesEnabled",0,7)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、20) で応答します。最後に、有効になったサービス (0) が返されます。

Audit Enable Settings

アクティブなビジョンシステムの自動監査メッセージを有効または無効にします。また、監査メッセージが生成されるイベントのタイプを指定します。

シンタックス:EV SetSystemConfig("AuditEnableSettings",Enabled,SystemEvents,TaggedCells,SystemSettings,WriteProcSet)

入力

入力 | 説明
"AuditEnableSettings" | [Audit Enable] 設定を参照します。
有 | 0* = アクティブなビジョンシステムの自動監査メッセージを無効にします。 1 = アクティブなビジョンシステムの自動監査メッセージを有効にします。
SystemEvents | 0 = 無効。 1* = In-Sight のシステムイベントが発生した場合 (ビジョンシステムのログオン/ログオフ、ジョブのロードまたは保存、オンラインモードからオフラインモードへの遷移、システムの起動、およびファームウェア更新) に、監査メッセージが生成されます。
TaggedCells | 0 = 無効。 1* = In-Sight Explorer、カスタムアプリケーション、VisionView、または PLC を使用して、シンボリックタグ付きセルを編集する (例えば、セルの数式または対話型コントロールの値を変更する場合など) と、監査メッセージが生成されます。
SystemSettings | 0 = 無効。 1* = システム設定 (proc.set ファイルに保存されている設定) を変更すると、監査メッセージが生成されます。
WriteProcSet | 0* = [Audit Enable] 設定は proc.set ファイルに保存されません。In-Sight ビジョンシステムの電源を入れ直すと、設定は失われます。 1 = [Audit Enable] 設定は proc.set ファイルに保存されます。In-Sight ビジョンシステムの電源を入れ直しても、設定は失われません。
* はデフォルト値を示します。 |

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

例

システム設定値が変更され、その設定値が proc.set ファイルに保存されたときにアクティブなビジョンシステムの監査メッセージの生成を有効にするには、次のメッセージを発行します。EV SetSystemConfig("AuditEnableSettings",1,0,0,1,1)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、20) で応答します。最後に、結果が XML フォーマットで返されます。

Audit IP Settings

監査メッセージサーバの IP アドレスおよび TCP/IP ポートを指定します。

シンタックス:EV SetSystemConfig("AuditIPSettings","IPAddress",Port,WriteProcSet)

入力

入力 | 説明
"AuditIPSettings" | [Audit IP] 設定を参照します。
"IPAddress" | 監査メッセージサーバの IP アドレスを指定します。
Port | 監査メッセージサーバの TCP/IP ポートを指定します。(デフォルト = 5753) 注意:有効なポート番号は、In-Sight 通信のために予約されているポートを除いて、1 ～ 65535 の未使用の任意の番号です。
WriteProcSet | 0* = [Audit IP] 設定は proc.set ファイルに保存されません。In-Sight ビジョンシステムの電源を入れ直すと、設定は失われます。 1 = [Audit IP] 設定は proc.set ファイルに保存されます。In-Sight ビジョンシステムの電源を入れ直しても、設定は失われません。
* はデフォルト値を示します。 |

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

例

監査メッセージサーバの IP アドレスおよび TCP/IP ポートを指定して、設定を proc.set ファイルに保存するには、次のコマンドを発行します。EV SetSystemConfig("AuditIPSettings","192.168.0.13",5753,1)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、20) で応答します。最後に、結果が XML フォーマットで返されます。

Trigger Timestamp

In-Sight ビジョンシステムが CIP-Sync および Precision Time Protocol (PTP) 経由で通信するように設定されている場合、PLC からタイムスタンプが書き込まれるユーザデータフィールドのオフセットをシステム構成変数 "EIP.TriggerTimestampInputOffset" に設定するには、SetSystemConfig コマンドを使用します。

シンタックス:EV SetSystemConfig("Eip.TriggerTimestampInputOffset",Offset)

入力

入力 | 説明
"Eip.TriggerTimestampInputOffset" | 64 ビットのタイムスタンプをマイクロ秒単位でキャプチャするための EtherNet/IP 入力アセンブリへのオフセットと、それに続けてビジョンシステムのトリガに使用される 64 ビットのシステム時間オフセットをマイクロ秒単位 (合計 16 バイト) で設定します。
Offset | オフセット (0 ～ 500) を指定します。この設定を無効にするには、この変数を -1 に設定します。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Increase Image Buffers

ビジョンシステムの解像度と RAM サイズに基づいて、In-Sight ビジョンシステムに割り当てられる画像バッファのデフォルト数を増やすことができます。このコマンドの実行後、変更を有効化するには、ビジョンシステムの電源を入れ直す必要があります。

シンタックス:EV SetSystemConfig("StartupImageBuffers",NumberofBuffers,WriteProcSet)

入力

入力 | 説明
"StartupImageBuffers" | 起動時にビジョンシステムに割り当てられる画像バッファの数を設定します。
NumberofBuffers | ビジョンシステムに割り当てられるバッファの数を設定します。 注意:NumberofBuffers が 0 に設定されている場合、バッファ数のデフォルト値が使用されます。
WriteProcSet | 0* = [画像バッファ] 設定は proc.set ファイルに保存されません。In-Sight ビジョンシステムの電源を入れ直すと、設定は失われます。 1 = [画像バッファ] 設定は proc.set ファイルに保存されます。In-Sight ビジョンシステムの電源を入れ直しても、設定は失われません。
* はデフォルト値を示します。 |

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Adjust ExtractBlobs Memory Allocation

ExtractBlobs 関数に対するメモリを手動で割り当てられるようにします。この設定を使用する場合、指定する値は ExtractBlobs 関数の対象領域 (ROI) 内にあるピクセル数の半分以下でなければなりません。

警告: Adjust ExtractBlobs Memory Allocation 設定は、メモリ不足のため、ExtractBlobs 関数が #ERR を返した場合のみ適用されます。この関数にメモリを割り当てるときは控えめにしてください。ExtractBlobs 関数にメモリを割り当てすぎると、In-Sight ビジョンシステム全体でメモリの問題を引き起こす場合があります。

シンタックス:EV SetSystemConfig("ExtractBlobsMemory",k)

入力

入力 | 説明
"ExtractBlobsMemory" | ExtractBlobs 関数の起動時にビジョンシステムに割り当てられるメモリの量を設定します。
k | ExtractBlobs 関数の使用時にビジョンシステムに割り当てられるメモリの量を指定します。k の値は、使用する ROI のサイズおよび画像の品質によって異なります。小さめの値から初めて、少しずつ増やします。例えば、ROI <= 640 x 480 で、斑点のある画像では、値は 8,000 から始めて、1,000 ずつ増やします。ROI <= 1600 x 1200 の場合は 32,000 から始めて 1,000 ずつ増やします。ROI <= 2448 x 2048 の場合は 128,000 から始めて 1,000 ずつ増やしていきます。 注意:ExtractBlobs のデフォルトのメモリ割り当てに戻すには 0 を入力します。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

Default Focus Position

In-Sight 7000 シリーズのビジョンシステムがビジョンシステムの proc.set ファイルにフォーカスの位置を保存できるようにします。

注意:　DefaultFocusPosition 関数は、フォーカス位置の値を保存するためにのみ使用されます。レンズを移動することはありません。

入力

入力 | 説明
"DefaultFocusPosition" | 起動時にビジョンシステムにより使用されるデフォルトのフォーカス位置を設定します。
位置 | デフォルトのフォーカス位置 (0 ～ 100) を指定します。この設定を無効にするには、この変数を -1 に設定します。

出力

戻り値

ステータスコードの後に、結果の文字数 (バイト単位) と、結果 (XML フォーマット) が続きます。

1 | コマンドは正常に実行されました。
0 | 認識されないコマンドが送信されました。
-2 | アクティブジョブが保存されていないので、コマンドを実行できませんでした。
-6 | ユーザはコマンドを実行するためのフルアクセスのアクセス権を持っていません。

例

フォーカス位置の設定 25 を proc.set ファイルに保存するには、次のコマンドを発行します。EV SetSystemConfig("DefaultFocusPosition",25)

In-Sight ビジョンシステムは、ステータスコード (1) とその後の文字数 (バイト単位、20) で応答します。最後に、結果が XML フォーマットで返されます。


TCP/IP Modbus による通信

In-Sight 通信リファレンス

In-Sight ビジョンシステムは、『Open Modbus/TCP Specification』 (外部リンク、インターネットアクセスが必要です。Modicon によって発行) で定義されているように、ネットワークに接続されたほかの Modbus TCP サーバデバイスに対して Modbus クライアントとして機能することができます。Modbus コマンドを送信するように In-Sight ビジョンシステムを設定するには、スプレッドシート関数 TCPDevice でパケットタイプとして Modbus を指定する必要があります。

In-Sight ビジョンシステムは、Modbus サーバとして機能することもできます。ビジョンシステムをサーバとして設定するために、設定を変更したり、関数を追加する必要はありません。

TCP/IP Modbus コマンド

次の Modbus コマンドがサポートされます。

Read Multiple Registers (Modbus 関数コード 03)

In-Sight スプレッドシートの複数のセルの値を読み取ります (値は、16 ビットの整数として返されます)。いずれかのセルが整数以外の値を含んでいた場合は、エラーコード 02 (ILLEGAL DATA ADDRESS) が返されます。

注意: WriteModbusBuffer 関数を使用する場合、In-Sight ビジョンシステムから読み取りを行うリモートクライアントは、レジスタ 30010 ～ 30137 を使用する必要があります。

Reference Number | 読み取るセルを定義します。Modbus Reference Number の上位 6 ビット (ビット 15 ～ 10) はセルの列 (A ～ Z) を定義し、下位 10 ビット (ビット 9 ～ 0) はセルの行 (0 ～ 399) を定義します。 Modbus Reference Number の例
Word Count | 読み取るセルの数を定義します。複数のセルの場合、返される値は、Reference Number によって定義されたセルから始まり、列ごとに 1 ずつ増えます。メッセージが現在の行の残りの列より多い値を要求した場合、サーバは開始行の下の最初のセルから値の読み取りを続けます。

Closed Read Multiple Registers の例

例: Read Multiple Registers - In-Sight のスプレッドシートの 3 つのセル (G273 ～ G275) に含まれているデータの読み取り。

Modbus リクエストを受信すると、In-Sight はセル G273 ～ G275 に含まれているデータを返します。

バイト | 値 (10 進) | 説明
0 | 0 | Modbus ヘッダ
1 | 0
2 | 0
3 | 0
4 | 0
5 | 6 | 後続のバイト数
6 | 0 | ユニット ID
7 | 3 | Modbus 関数コード (03 は Read Multiple Registers)
8 | 25 | Modbus Reference Number (In-Sight スプレッドシートセル参照)
9 | 17
10 | 0 | セルの数 (開始セルを含む)
11 | 3

Write Multiple Registers (Modbus 関数コード 16)

EditInt 関数を含む In-Sight スプレッドシートのセルにデータを書き込みます。いずれかのセルが EditInt 関数を含んでいなかった場合は、エラーコード 02 (ILLEGAL DATA ADDRESS) が返されます。

注意: ReadModbusBuffer 関数を使用する場合、In-Sight ビジョンシステムに書き込みを行うリモートクライアントは、レジスタ 50000 ～ 50127 を使用する必要があります。

Reference Number | 書き込むセルを定義します。Modbus Reference Number の上位 6 ビット (ビット 15 ～ 10) はセルの列 (A ～ Z) を定義し、下位 10 ビット (ビット 9 ～ 0) はセルの行 (0 ～ 399) を定義します。 ModBus Reference Number の例
Word Count | スプレッドシートに書き込むセルの数を定義します。複数のセルの場合、書き込まれる値は、Reference Number によって定義されたセルから始まり、列ごとに 1 ずつ増えます。メッセージが現在の行の残りの列より多い値を書き込む場合、サーバは開始行の下の最初のセルから値の書き込みを続けます。

Closed Write Multiple Registers の例

例: Write Multiple Registers - In-Sight のスプレッドシートのセル E9 への書き込み。

スプレッドシートで、データを受け取るために、セル E9 に EditInt 関数を作成します。Modbus コマンドが送信されると、セル E9 の値は 65 になります。

バイト | 値 (10 進) | 説明
0 | 0 | Modbus ヘッダ
1 | 0
2 | 0
3 | 0
4 | 0
5 | 9 | 後続のバイト数
6 | 0 | ユニット ID
7 | 16 | Modbus 関数コード (16 は Write Multiple Registers)
8 | 16 | Modbus Reference Number (In-Sight スプレッドシートセル参照)
9 | 9
10 | 0 | セルの数 (開始セルを含む)
11 | 1
12 | 2 | バイトカウント
13 | 00 | Data
14 | 65

Write Coil (Modbus 関数コード 05)

In-Sight スプレッドシートでイベントを開始します。コイル 0 ～ 7 にゼロ以外の値を書き込むと、スプレッドシートでソフトイベント 0 ～ 7 がトリガされます。コイル 8 にゼロ以外の値を書き込むと、画像取り込みがトリガされます。コイル番号が有効な範囲 (0 ～ 8) でなかった場合は、エラーコード 02 (ILLEGAL DATA ADDRESS) が返されます。

Closed Write Coil の例

例: Write Coil - In-Sight での画像取り込みのトリガ。

バイト | 値 (10 進) | 説明
0 | 0 | Modbus ヘッダ
1 | 0
2 | 0
3 | 0
4 | 0
5 | 6 | 後続のバイト数
6 | 0 | ユニット ID
7 | 5 | Modbus 関数コード (05 は Write Coil)
8 | 0 | コイル番号*
9 | 8
10 | 255 | ON。リモートデバイス出力はオン(255) またはオフ(0)のいずれかです。
11 | 0 | 常にゼロ

* コイルは、バイト 8 および 9 を使用して示されます。

コイル番号 | バイト 8 の値 (10 進) | バイト 9 の値 (10 進) | 説明
0 | 0 | 0 | ソフトトリガ 0 を指定します。
1 | 0 | 1 | ソフトトリガ 1 を指定します。
2 | 0 | 2 | ソフトトリガ 2 を指定します。
3 | 0 | 3 | ソフトトリガ 3 を指定します。
4 | 0 | 4 | ソフトトリガ 4 を指定します。
5 | 0 | 5 | ソフトトリガ 5 を指定します。
6 |  | 6 | ソフトトリガ 6 を指定します。
7 | 0 | 7 | ソフトトリガ 7 を指定します。
8 | 0 | 8 | 画像をIn-Sight カメラから新しい画像を取り込みます。新しい画像を取り込むと、In-Sight はスプレッドシートを評価し、スプレッドシートの値を更新します。 取り込み、スプレッドシートを更新します。このオプションでは、AcquireImage 関数の ［トリガ］ 引数を ［外部］ または ［手動］ に設定する必要があります。

関連項目

バイナリ関数

TCPDevice 関数

Profibus ネットワーク上の Siemens PLC との通信

CC-Link ネットワーク上の Mitsubishi PLC との通信

Anybus X-gateway


Modbus Reference Number の例

TCP/IP Modbus による通信

In-Sight 通信リファレンス

In-Sight スプレッドシート内のセルを Modbus デバイスから参照するには、セルを次のように 2 バイトの Modbus Reference Number に変換する必要があります。

上位 6 ビット（ビット 11～15） = 列（A～Z）

下位 10 ビット（ビット 0～10） = 行（0～399）

例 1: セル G273 を参照する場合、Reference Number は次のように変換されます。

  1. 1. セルの列と行を 10 進値に変換します。

G = 06 {A = 0, B = 1, C = 2, ..., X = 23, Y = 24, Z = 25}

273 = 273

  2. 2. 10 進値をバイナリに変換します（右から左へ読む）。

注意: 列用のバイナリ数が 6 ビット長でない場合、または行用のバイナリ数が 10 ビット長でない場合、最終的なデータバイトの残りのビットは（バイトの最上位に向かって）0 で埋めてください。

G = 06 = 000110（6 ビット）

273 = 273 = 0100010001（10 ビット）

ビット

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

0

0

0

1

1

0

0

1

0

0

0

1

0

0

0

1
  3. 3. 2 つの 8 ビット値に分割される 16 ビットワードが生成されます。

00011001 00010001

  4. 4. これらの 2 つの 8 ビット値をそれぞれ 10 進値に変換します。

00011001 = 25

00010001 = 17

  5. 5. 以上で、上位バイト（10 進値の 25）および下位バイト（10 進値の 17） Reference Number が得られます。

例 2: セル N23 を参照する場合、Reference Number は次のように変換されます。

  1. 1. セルの列と行を 10 進値に変換します。

N = 13

23 = 23

  2. 2. 10 進値をバイナリに変換します （右から左へ読む）。

N = 13 = 001101

23 = 23 = 0000010111

ビット

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

0

0

1

1

0

1

0

0

0

0

0

1

0

1

1

1
  3. 3. 2 つの 8 ビット値に分割される 16 ビットワードが生成されます。

00110100 00010111

  4. 4. これらの 2 つの 8 ビット値をそれぞれ 10 進値に変換します。

00110100 = 52

00010111 = 23

  5. 5. 以上で、上位バイト（10 進値の 52）および下位バイト（10 進値の 23） Reference Number が得られます。

例 3: セル Z399 を参照する場合、Reference Number は次のように変換されます。

  1. 1. セルの列と行を 10 進値に変換します。

Z = 25

399 = 399

  2. 2. 10 進値をバイナリに変換します （右から左へ読む）。

N = 25 = 011001

399 = 399 = 0110001111

ビット

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

0

1

1

0

0

1

0

1

1

0

0

0

1

1

1

1
  3. 3. 2 つの 8 ビット値に分割される 16 ビットワードが生成されます。

01100101 10001111

  4. 4. これらの 2 つの 8 ビット値をそれぞれ 10 進値に変換します。

01100101 = 101

10001111 = 143

  5. 5. 以上で、上位バイト（10 進値の 101）および下位バイト（10 進値の 143） Reference Number が得られます。

関連項目

TCP/IP Modbus による通信

バイナリ関数

TCPDevice 関数


POWERLINK 通信

B&R 通信

In-Sight 通信リファレンス
  • POWERLINK および In-Sight ビジョンシステム
  • POWERLINK 通信で使用するために In-Sight ビジョンシステムを設定
  • 関連項目

注意:
  • POWERLINK は、In-Sight のファームウェアバージョン 4.7.2 以上、および In-Sight Explorer のソフトウェアバージョン 4.7.2 以上を実行している In-Sight 7000 シリーズのビジョンシステムでのみサポートされています。
  • In-Sight ビジョンシステムは、B&R Automation Studio バージョン 3.090 以上、および Automation Runtime バージョン 3.08 以上でのみサポートされています。

POWERLINK および In-Sight ビジョンシステム

  • 概要
  • POWERLINK サイクル
  • 非同期データ転送
  • In-Sight ビジョンシステムの理想的な MTU とサイクル時間設定
  • POWERLINK ネットワークゲートウェイおよび In-Sight ビジョンシステム

概要

POWERLINK は、時間が重要なシステムで使用されるリアルタイム Ethernet プロトコルです。POWERLINK Ethernet プロトコルは、PLC や産業用 PC などの管理ノード (MN) を使用して、Ethernet 帯域幅を固定時間サイクル (200 ～ 10000 µs) に分割します。In-Sight ビジョンシステムなど、ネットワークで稼動しているもう 1 つのデバイスは、制御ノード (CN) として動作し、MN からのメッセージに対応したデータの送信のみ許可されています。

各サイクルの間、MN は各 CN 宛てのデータを作成し、CN はそれぞれ、ネットワーク上のほかのデバイス宛てのデータで応答します。このデータは等時性メッセージング (決定論が保証されたメッセージング) を使用したノードと非同期メッセージング (決定論の保証されていないメッセージング) を使用したノードの間で送信されます。ネットワーク上のデバイスがすべて同期された後、MN により非同期期間が開始され、1 つのデバイスがネットワーク上で標準 TCP/IP トラフィックを送信できるようになります。

注意: デバイスがネットワーク帯域幅を競合することはないので、POWERLINK ノードをまとめて接続する場合に遅延を軽減するには、スイッチではなくリピーターハブを使用します。

POWERLINK ネットワークのデバイスはすべて、ノード ID 番号 (1 ～ 240) で識別されます。MN のノード ID は常に 240で、CN はノード ID 1 ～ 239 のいずれかを持ちます。このノード ID 番号は固定 IP サブネット 192.168.100.<NodeID> と組み合わせられます。これは、ネットワーク上の各デバイスに、POWERLINK ネットワーク内の固定 IP アドレスを割り当てます。この IP アドレスは、POWERLINK ネットワークの外側にあるほかのデバイスと通信するために使用することもできます。

POWERLINK サイクル

POWERLINK ネットワークは、「サイクル」(200 ～ 10000 µs) と呼ばれる固定タイムスライスに分割されます。各サイクルには、等時性メッセージ送信、および非同期メッセージ送信 (時間が許せば) の期間が含まれます。各サイクルのはじめに、MN はサイクルの開始 (SoC) メッセージをネットワークにブロードキャストし、サイクルの等時性フェーズが始まることを知らせます。SoC メッセージの送信後、MN はそのサイクルについて設定された CN それぞれにポーリング要求 (PReq) を送信します。各 CN はポーリング応答 (PRes) メッセージで応答します。PReq および PRes メッセージは、ネットワーク上にデータを作成するために使用されます。

POWERLINK ネットワークでは、CN はクロストラフィック通信を実行できます。つまり、最初に MN を通過しなくても互いにプロセスデータを交換できます。このタイプの設定では、1 つの PLC を POWERLINK MN にすることができます。もう 1 つの PLC は CN として動作し、In-Sight ビジョンシステムの画像取り込みを制御します。In-Sight ファームウェアは、MN 以外に 2 つの CN からのクロストラフィック通信をサポートし、各ノードから最大 100 バイトのデータを受信することができます。

注意: クロストラフィックサポートには、In-Sight 4.8.0 以降のファームウェアが必要です。

CN データが送信されるたびに、MN は非同期の開始 (SoA) メッセージをネットワークに送信し、サイクルの非同期フェーズの開始を知らせます。この間、1 つのノード (SoA フレームに含まれるデータにより示されるもの) がネットワークへの送信を許可されるパケットは 1 つです。このノードに、そのサイクル期間の容量以上のデータがある場合、この送信は複数のサイクルの非同期フェーズに拡散されます。

非同期データ転送

In-Sight ビジョンシステムにとって、POWERLINK ネットワークの非同期データ送信機能は非常に重要です。非同期フェーズは次のタスクを実行するために使用されます。

  • を使用したビジョンシステムの設定とモニタ In-Sight Explorer
  • オンライン中に画像およびデータを In-Sight Explorer または Cognex VisionView に送信
  • WriteImageFTP 関数を使用して FTP サーバに画像を送信

POWERLINK ネットワークの設定のうち非同期データスループットに最大の影響を持つものは、最大送信単位 (MTU) 設定とサイクル時間の 2 つです。

MTU

POWERLINK ネットワークの非同期パケットに対する MTU の範囲は 300 ～ 1500 バイトです。デフォルトでは、B&R PLC は MTU を 300 バイトに設定します。デフォルトの MTU を増やすには、非同期データ送信の各サイクルで、さらに時間を確保する必要があります。例えば、MTU では、非同期データ送信のために 27 µs の確保が要求されますが、最大サイズ (1500 バイト) の場合は 123 µs 必要です。

サイクル時間

サイクル時間も非同期データ送信を制限します。POWERLINK ネットワークは、1 サイクルにつき、非同期パケットを 1 つだけ送信するように設定されているため、サイクル時間を短縮すると、ネットワークで送信できる非同期パケットの数が増えます。最も一般的な POWERLINK ネットワーク設定の 1 つのサイクル時間は 400 µs です。これは 1 秒間に 2500 サイクル、つまり 1 秒間に送信できる非同期フレームの数は 2500 になります。

In-Sight ビジョンシステムの理想的な MTU とサイクル時間設定

POWERLINK はデータ送信、特に非同期の部分を Ethernet に依存しているため、POWERLINK ネットワークで使用できる帯域幅全体を計算する方法を理解することは、最適なパフォーマンスの確立には重要な決定因子です。この帯域幅全体は POWERLINK ネットワークの非同期送信を通じて通信するすべての CN で共有されます。

POWERLINK ネットワークで使用できる帯域幅全体は、一般に次の式で計算されます。

  • 帯域幅 (Mbps) = MTU × 8 ÷ サイクル時間 (µs)

Cognex では、POWERLINK ネットワーク上の In-Sight ビジョンシステムに対する最適な設定は、MTU 1500 バイト、サイクル時間 400 µs であると決定しました。MTU のサイズが大きく減少したり、サイクル時間が増加したりすると、前節に記載されている 3 つの箇条書き項目について、パフォーマンスが大幅に低下します。サイクル時間の計算については、B&R Automation Studio アプリケーションに用意されている B&R Microsoft Excel スプレッドシート (powerlink_cycletime_calculations.xls) をご利用ください。

注意:

次の In-Sight アプリケーションパラメータは、接続のパフォーマンスに影響を与える場合があります。

  • フル画像の取り込みやフル解像度画像の送信および記録など、取り込まれた画像および画像の更新設定。限られた帯域幅環境の中で、目標は画像の取得レートを削減することです。このためには、部分的な取り込みが行われるように AcquireImage 関数の [取り込み開始行] および [行数] パラメータを設定し、[記録/再生のオプション] ダイアログの [記録] タブで、[画像の解像度] パラメータを [ハーフ] または [クォーター] に設定します。必要に応じて、この方法で設定を行い、バックグラウンドサービス用の帯域幅を増やします。
  • WriteImageFTP または WriteImageSFTP 関数を使用して画像を送信すると、画像解像度の設定に関係なく、In-Sight Explorer で使用できる帯域幅が削減されます。

  • POWERLINK サイクル時間が 500µs 未満に設定されている場合、使用できる User Data チャネルは 16 に制限され、Inspection Results は 32 に制限されます。サイクル時間設定が低すぎる場合や、送信するデータの設定が多すぎる場合は、POWERLINK 接続が失敗します。

POWERLINK ネットワークゲートウェイおよび In-Sight ビジョンシステム

B&R PLC は、POWERLINK ネットワーク上のデバイスと、標準 Ethernet ポートを通じて接続されたデバイスの間の TCP/IP トラフィック用ゲートウェイとして動作することができます。In-Sight Explorer には、[In-Sight ネットワーク] ペインに POWERLINK ネットワークを追加する機能があります。[エクスプローラリモートサブネットリスト] ダイアログ ([システム] メニューからアクセス可能) を使用して、POWERLINK ネットワークを追加し、サブネット情報を設定することができます。この設定後、[In-Sight ネットワーク] ペインには、POWERLINK サブネットの In-Sight ビジョンシステムが表示されるようになります。

POWERLINK 通信で使用するための In-Sight ビジョンシステムの設定

この節では、POWERLINK 通信を使用して、B&R PLC を In-Sight ビジョンシステムに接続する方法を説明します。

  • In-Sight ビジョンシステムでの POWERLINK 通信の有効化
  • In-Sight ビジョンシステムへの周期接続の確立
  • AcquireImage の [トリガ] パラメータの設定
  • In-Sight ビジョンシステムからのデータの取得
  • In-Sight ビジョンシステムへのデータの送信
  • In-Sight ネットワークへの POWERLINK ネットワークの追加
  • In-Sight ビジョンシステムでの POWERLINK 通信の無効化
注意:
  • これらの手順では、POWERLINK ネット経由での送信準備の整ったデータを含むジョブが In-Sight ビジョンシステムにロードされていることを前提にしています。
  • アプリケーション開発では、工場ラインに設置されている In-Sight ビジョンシステムに直接接続することを推奨します。これにより画像の更新速度が速くなるため、焦点の調節や画像の位置揃え、アプリケーションのセットアップがしやすくなります。アプリケーションの開発が完了したら、ジョブを保存してから、POWERLINK を有効化し、リモートサブネットを追加します。このリモートサブネットでは、将来のトラブルシューティングやアプリケーションの追加開発のために、In-Sight Explorer からビジョンシステムをモニタできます。

In-Sight ビジョンシステムでの POWERLINK 通信の有効化

In-Sight ビジョンシステムを POWERLINK ネットワークに配置するには、まず、In-Sight ビジョンシステムの [ネットワークの設定] ダイアログを使用して、POWERLINK が有効になるようにビジョンシステムを設定する必要があります。

注意: これらの手順では、POWERLINK ネットワークが既に動作していて、ほかのデバイスもこのネットワークにあり、かつ MN が B&R PLC であることを前提にしています。

  1. POWERLINK ネットワークに配置する In-Sight ビジョンシステムを、In-Sight Explorer が実行されている PC に直接接続します。
  2. In-Sight Explorer を開き、目的の In-Sight ビジョンシステムに接続します。
  3. [センサ] メニューから [ネットワークの設定] ダイアログを開きます。
  4. ダイアログの [リアルタイムイーサネットプロトコル] セクションで [POWERLINK] を選択し、[設定] ボタンをクリックして [POWERLINKの設定] ダイアログを起動します。
  5. [POWERLINKの設定] ダイアログは、In-Sight ビジョンシステムのノード ID を定義するために使用されます。
  6. メッセージプロンプトが表示されたら、In-Sight ビジョンシステムを再起動し、電源の再投入後に POWERLINK プロトコルを有効にします。
  7. ビジョンシステムを PC から外し、POWERLINK ネットワークに接続します。

In-Sight ビジョンシステムへの周期接続の確立

In-Sight ビジョンシステムを POWERLINK ネットワークに統合しやすくするために、Cognex は Automatic Studio へのインポート用 In-Sight-7000.xdd ファイル (0000031D_In-Sight-7000.xdd) を作成しました。In-Sight-7000.xdd ファイルは、POWERLINK ネットワーク経由でデータを送信しやすくするために、In-Sight ビジョンシステムから POWERLINK マスターノードへのネットワークインタフェースを記述したものです。

  1. Automation Studio の [ツール] メニューにアクセスし、[Import Fieldbus Device] オプションを選択します。
  2. In-Sight Explorer 4.7.1 に含まれている .xdd ファイル (例えば、C:\Program Files\Cognex\In-Sight\In-Sight Explorer 4.7.1\XDD) に移動し、ファイル (0000031D_In-Sight-7000.xdd) をインポートします。

  3. In-Sight-7000.xdd ファイルのインポート後、In-Sight ビジョンシステムを POWERLINK ネットワークに追加し、ノード ID を割り当てる必要があります。

    注意: Automation Stuido へのサードパーティデバイスの追加に関する具体的な情報については、B&R Automation Studio ヘルプの Explorer POWERLINK ヘルプコンテンツを参照してください。

  4. In-Sight ビジョンシステムの追加が正常に終了したら、POWERLINK ネットワークへ周期的に送信されるチャネルを有効化します。In-Sight ビジョンシステムとの通信が確立されたら、[Cyclic transmission] の値を [Write] (ビジョンシステムへ出力) または [Read] (ビジョンシステムから入力) に設定し、このチャネルのデータを送信します。

  5. 有効化されたチャネルも、システム変数にマップすることができます。

    注意: コントロールブロックやステータスブロックなど、ビットレベルのデータには、倍精度整数名にビット位置指定子を追加してアクセスする必要があります。このリリースでは、ビット変数を直接マッピングすることはできません。

  6. 適切に設定されたプロジェクトは B&R PLC にダウンロードされ、その後、PLC は In-Sight ビジョンシステムを使用して、データの周期転送を開始します。
  7. In-Sight ビジョンシステムが正常に動いていることを確認するには、Automation Studio の Monitor モードに入り、ビジョンシステムの I/O マッピングを開いて、ModuleOK チャネルが TRUE であることを確認します。

AcquireImage の [トリガ] パラメータの設定

In-Sight ビジョンシステムを POWERLINK ネットワークに統合すると、POWERLINK ネットワークで画像を取り込むためにビジョンシステムをトリガできるようになります。AcquireImage 関数の [トリガ] パラメータを [Real-time Ethernet] に設定し、POWERLINK が有効化されているときにハードウェアに支援されたトリガモードを有効化します。

  1. AcquireImage 関数のプロパティシートを開きます。
  2. [トリガ] パラメータを [Real-time Ethernet] に設定します。
  3. In-Sight ビジョンシステムをオンラインにします。
  4. In-Sight ビジョンシステムのトリガを行うには、Inspection Control オブジェクトの [コントロール] フィールドにある Trigger Enable と Trigger ビットを直接操作するか、Inspection Status オブジェクトの [ステータス] 構造体にある Trigger Ready、Trigger Ack、Acquiring、および Missed Acq ビットをモニタします。
  5. Automation Studio で、Inspection Control チャネルから Trigger Enable ビットを True に設定し、Trigger ビットを False から True に切り替えます。また、Trigger Ready ビットは True に設定します。

In-Sight ビジョンシステムからのデータの取得

In-Sight Explorer スプレッドシートからのデータを B&R PLC で取得するには、WriteResultsBuffer 関数を使用して、データを POWERLINK ネットワークに書き込む必要があります。この関数は、FormatOutputBuffer 関数によって作成されたデータのバッファを取り、そのデータを B&R PLC の設定済みデータテーブルに書き込みます。その後、このデータはサイクル時間に関係なく、最大 4 ms おきに同期され、次の更新サイクル中に送信されます。

以下の手順に従って、In-Sight ビジョンシステムから B&R PLC に送信されるデータの書式設定の方法を説明します。

  1. まず、In-Sight Explorer を使用して、新規ジョブを作成します。
  2. [パレット] の [スニペット] タブから、次の 2 つのスニペットをスプレッドシートに追加します。[Acquisition] → [AcqCounter] および [Math & Logic] → [Random]
  3. AcquireImage セルを開いて、[トリガ] パラメータを [連続] に設定します。
  4. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで FormatOutputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  5. [FormatOutputBuffer] ダイアログの [追加] ボタンをクリックします。これでセル選択モードになります。Random スニペットの「Scaled random number」セルを選択します。

  6. [FormatOutputBuffer] ダイアログの [追加] ボタンを再びクリックします。これでセル選択モードになります。AcqCounter スニペットのカウントセルを選択します。

  7. [OK] ボタンを押して、[FormatOutputBuffer] ダイアログを閉じます。
  8. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで WriteResultsBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  9. WriteResultsBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatOutputBuffer 関数の [image] データ構造体へのセル参照として設定します。
  10. In-Sight ビジョンシステムをオンラインにします。
  11. In-Sight ビジョンシステムが正常に動いていることを確認するには、Automation Studio の Monitor モードに入り、ビジョンシステムの I/O マッピングを開いて、ModuleOK チャネルが TRUE であることを確認します。

In-Sight ビジョンシステムへのデータの送信

B&R PLC から In-Sight Explorer スプレッドシートにデータを送信するためには、ReadUserDataBuffer 関数を使用して、データを POWERLINK プロトコルスタックからプルする必要があります。この関数は、FormatInputBuffer 関数内で作成されたデータ形式を取り、B&R PLC から受信したデータを読み取って、このデータを書式設定して In-Sight Explorer スプレッドシートに入れます。In-Sight ビジョンシステムをトリガして B&R PLC からユーザデータを読み取るためには、コントロールブロックの Set User Data ビットを PLC からトリガする必要があります。

例:In-Sight ビジョンシステムへのデータの送信

この例では、In-Sight Explorer 内に新規ジョブを作成した後、以下の手順を実行して、B&R PLC が受信するデータを設定します。

  1. AcquireImage セルを開いて、[トリガ] パラメータを [連続] に設定します。

    注意:連続トリガモードは、デモンストレーションのみを目的としています。連続トリガモードでは、ビジョンシステムはできる限り多くの画像を取り込み、PLC からイベントが開始されると、PLC からビジョンシステムへのデータ転送を直ちに観察できます。ランタイム操作のためにビジョンシステムを導入する準備ができたら、画像取り込みトリガのソースに基づいて、[トリガ] パラメータを再設定する必要があります。

  2. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで FormatInputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。

  3. [FormatInputBuffer] ダイアログの [追加] ボタンをクリックして、32 ビットの浮動小数点数と 32 ビットの整数をリストに追加します。

  4. [OK] ボタンを押して、[FormatInputBuffer] ダイアログを閉じます。
  5. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで ReadUserDataBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  6. ReadUserDataBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatInputBuffer 関数の [image] データ構造体へのセル参照として設定します。
  7. FormatInputBuffer 関数に追加されたフィールドに基づいて、データアクセス関数が自動的にスプレッドシートに追加されます。
  8. In-Sight ビジョンシステムをオンラインにします。
  9. Automation Studio の Monitor モードに入り、データを強制的に UserData フィールドに入れて、In-Sight ビジョンシステムが正常に動作していることを確認します。
  10. Inspection Control オブジェクトの [コントロール] フィールドで Set User Data ビットを設定します。
  11. Inspection Control オブジェクトの [コントロール] フィールドで「Set User Data」ビットの設定を解除します。ビジョンシステムは連続トリガモードになっているため、画像を取り込み、データ転送を観察することができます。

In-Sight ネットワークへの POWERLINK ネットワークの追加

[In-Sight Network] ペインに POWERLINK ネットワークを追加するには、次の手順に従って操作します。

  1. [システム] メニューで、[リモートサブネット] をクリックします。
  2. [エクスプローラリモートサブネットリスト] ダイアログで [追加] ボタンをクリックして、[サブネットの追加] ダイアログを開きます。
  3. 追加されるサブネットにわかり易い名前を付け、[名前] フィールドに入力します。
  4. [IP アドレス] フィールドの IP アドレスは、POWERLINK ネットワーク用に PLC でプログラミングされた "POWERLINK NAT subnet" IP アドレスと一致する必要があります。
  5. [マスク] フィールドに「255.255.255.0」と入力します。
  6. ネットワークインフラストラクチャが POWERLINK ネットワークへルーティングできない場合、[Use Custom Gateway] オプションをチェックし、[ゲートウェイ] フィールドに標準Ethernet ネットワークの PLC の IP アドレスを設定します。これにより、PC のルーティングテーブルにリモートサブネットへの経路が確立されます。
  7. [OK] ボタンをクリックして、変更を確定し、[サブネットの追加] ダイアログを閉じます。
  8. 新たに設定されたリモートサブネットが [Explorer Remote Subnet List] ダイアログに表示されます。[OK] ボタンを押して、ダイアログを閉じます。
  9. POWERLINK ネットワークが [In-Sight ネットワーク] ペインに表示されるようになります。

In-Sight ビジョンシステムでの POWERLINK 通信の無効化

POWERLINK ネットワークで動作するように設定された In-Sight ビジョンシステムを無効化するには、次の手順に従って操作します。

  1. In-Sight Explorer が実行されている PC から、In-Sight ビジョンシステムを使用可能な Ethernet ポートの 1 つに接続し、PC で DHCP に設定します。
  2. [システム] メニューで、[センサ/デバイスをネットワークに追加] をクリックします。
  3. [センサ/デバイスをネットワークに追加] ダイアログで、目的の In-Sight ビジョンシステムを選択し、[DHCP で IP アドレスを自動的に取得する] オプションを選択して、[適用] ボタンをクリックします。
  4. 設定が正常に変更されたことを示すメッセージの後、指定したビジョンシステムが [In-Sight ネットワーク] ペインに表示されます。
  5. スプレッドシート または EasyBuilder 開発環境のいずれかで、ビジョンシステムへの接続を開きます。
  6. [センサ] メニューで、[ネットワークの設定] をクリックし、[ネットワークの設定] ダイアログを開きます。
  7. [リアルタイムイーサネットプロトコル] で [なし] を選択し、[OK] ボタンをクリックします。
  8. ビジョンシステムを再起動して、変更を適用します。

関連項目

  • POWERLINK ファクトリインタフェース
  • ReadLatchedUserDataBuffer 関数
  • ReadUserDataBuffer 関数
  • WriteResultsBuffer 関数


POWERLINK ファクトリインタフェース

POWERLINK プロトコル通信

In-Sight 関数リファレンス

  • POWERLINK ファクトリインタフェース
  • POWERLINK/In-Sight ビジョンシステムの I/O マッピング
  • POWERLINK/In-Sight ビジョンシステムでの LED の動作

POWERLINK ファクトリインタフェース

等時性フェーズでは、POWERLINK マスターノードと In-Sight ビジョンシステムの間をやりとりされるデータは 5 つのデータチャネルに編成されます。次に説明するチャネルは、等時性フェーズで POWERLINK ネットワークを通じた周期転送のために、Process Data オブジェクト (PDO) にマップすることができます。POWERLINK ファクトリインタフェースのチャネルには、特定の In-Sight ビジョンシステムデータバッファへの通信パスが用意されています。これは、データ交換やビジョンシステムジョブの管理、取り込み、検査制御、およびステータスデータに使用されます。

  • Inspection Control オブジェクト (0x2000)
  • Inspection Status オブジェクト (0x2001)
  • Inspection Results (0x2010)
  • Inspection Results データ (0x2011)
  • User Data (0x2021)

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 からアクセスできます。

注意: 現在のリリースでは、[コントロール] フィールドは、DWORD としてのみ表示されています (ビットごとにラベルはついていません)。

ビット 名前 説明

0

Trigger Enable

このフィールドがセットされると、Trigger ビットによるトリガが有効になります。このビットをクリアすると、ネットワークトリガメカニズムが無効になります。

1

Trigger

次の条件が満たされたとき、このビットをセットすると画像取り込みをします。

  • In-Sight ビジョンシステムがオンラインである。
  • Trigger Enable ビットがセットされている。

  • AcquireImage 関数の [トリガ] パラメータが [Real-time Ethernet] に設定されている。

    注意:　[トリガ] パラメータの [ネットワーク] または [外部] 設定も使用できますが、さらに遅延が長くなります。

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 をロードします。

注意:In-Sight ビジョンシステムがオンラインの間は、Initiate Job Load ビットを設定しないでください。ビジョンシステムをオフラインにしてから、Initiate Job Load の開始を設定します。オンラインのうちに設定すると、Job Load Failed ビットが設定されません。

5 ～ 6

予約済み

将来の実装に備えて予約済みです。

7

Set Offline

このビットがセットされると、このビットが再びクリアされるまで、In-Sight ビジョンシステムはオフラインになります。

8 ～ 15

予約済み

 将来の実装に備えて予約済みです。

16

Set User Data

このコマンドは、ビジョンシステムにて消費される User Data フィールドを保持バッファに転送する必要がある場合に、PLC から In-Sight ビジョンシステムへ通知します。

17 ～ 18

予約済み

 将来の実装に備えて予約済みです。

19

Clear Exposure Complete

この信号が High のときは、Exposure Complete ステータスは Low のままです。この信号が Low に設定されると、次の露光完了時に Exposure Complete ステータスが High に設定されます。

20 ～ 23

予約済み

 将来の実装に備えて予約済みです。

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 番号。または、現在のジョブに ID 番号がない場合は 65535。このフィールドは、ジョブ変更の方法に関係なく、ビジョンシステムでジョブが変更されたときに更新されます。
3 | AcquisitionID | 16 ビットの整数 | R | この ID は現在の画像取り込みに関連付けられています。Network Trigger ビットを使用して画像取り込みされ、Trigger Ack 信号がアサートされると、この ID が Acquisition ID に設定されます。

ステータス構造体

Inspection Control オブジェクトの [ステータス] フィールドが周期転送用に設定されているとき、ステータス構造体の個々のビットへは PLC からアクセスできます。

注意:現在のリリースでは、[コントロール] フィールドは、DWORD としてのみ表示されています (ビットごとにラベルはついていません)。

ビット 名前 説明

0

Trigger Ready

In-Sight ビジョンシステムが、Trigger ビットを介して新しいトリガを受け入れられることを示します。このフィールドは、ビジョンシステムがオンラインであり、Network Trigger Enable ビットがセットされ、AcquireImage 関数の [トリガ] パラメータが [Real-time Ethernet] に設定されて、ビジョンシステムが現在画像を取り込んでいないときに真になります。

注意:　[トリガ] パラメータの [ネットワーク] または [外部] 設定も使用できますが、さらに遅延が長くなります。

1

Trigger Ack

In-Sight ビジョンシステムが Trigger ビットのセットによってトリガされたことを示します。このビットは、Trigger ビットがクリアされるまでセットされたままです。

2

Acquiring

画像取り込み方法に関係なく、In-Sight ビジョンシステムが現在画像を取り込んでいるときにセットされます。

3

Missed Acq

画像取り込み方法に関係なく、In-Sight ビジョンシステムが画像取り込みに失敗したときにセットされます。画像取り込みが正常にトリガされるとクリアされます。

4 ～ 6

Offline Reason

このフィールドは、In-Sight ビジョンシステムがオフラインである原因を示すために使用される 3 ビットのフィールドです。

Offline Reason | 名前 | 説明
0 | Online | ビジョンシステムはオンラインです。
1 | Programming | ビジョンシステムのジョブが変更されています。
2 | Discrete Offline | ディスクリート信号によって、ビジョンシステムがオフラインになっています。
3 | Comm.Offline | 通信プロトコルによって、ビジョンシステムがオフラインになっています。

注意:　複数のデバイスから In-Sight ビジョンシステムはオフラインにできます。このフィールドでは最小限のチャネルステータスを返します。

7

Online

このビットは、In-Sight ビジョンシステムがオンラインのときにセットされ、ビジョンシステムがオフラインのときにクリアされます。ビジョンシステムがオフラインのときには、Offline Reason フィールドを調べて、原因を判断してください。

8

Inspecting

このビットは、In-Sight ビジョンシステムがジョブを実行しているときにセットされます。

9

Inspection Completed

このビットは、検査の完了時に立ちます。

10

Results Buffer Overrun

 このフィールドは、Buffer Results Enable ビットがセットされていて、Inspection Results Ack ビットをセットすることによって PLC が確認応答しなかったために In-Sight ビジョンシステムが検査結果のセットを破棄したときにセットされます。最大 8 つの検査がビジョンシステムのバッファに保持されるため、このビットは、9 番目の検査がバッファに追加されて、バッファ内の 8 番目の検査に上書きされたときにセットされます。有効な検査が発生して、前の検査が上書きされない限り、このビットはクリアされません。

11

Results Valid

[Inspection Count]、 [Inspection Result]、 および [Inspection Results] フィールドが有効なときにセットされます。

12

Job Loading

このビットは、このプロトコルを通してジョブのロードが開始されたときにセットされます。

13

Job Load Complete

このビットは、このプロトコルによって開始されたジョブのロード操作の完了時にトグルされます。

14

Job Load Failed

 このビットは、ジョブのロードの最後の試みが失敗したときにセットされます。MN がジョブのロードを開始し、ロードに成功するとクリアされます。

15

予約済み

 将来の実装に備えて予約済みです。

16

Set User Data Ack

 このコマンドは、ビジョンシステムにて消費される User Data フィールドを保持バッファに転送する必要がある場合に、PLC から In-Sight ビジョンシステムへ通知します。

17 ～ 18

予約済み

 将来の実装に備えて予約済みです。

19

Exposure Complete

このビットは、In-Sight ビジョンシステムが露光完了すると High となり、画像取り込みトリガが与えられると Low となります。このビットは、Clear Exposure Complete 信号が High に設定されると Low に保持されます。

20 Job Pass

このビットは、最後のジョブが [ジョブの PASS/FAIL セルの設定] ダイアログの設定に合格するとセットされます。このビットはジョブが合格しないとクリアされます。

21 ～ 23

 予約済み 将来の実装に備えて予約済みです。

24 ～ 31

 Soft Event Ack 0 ～ 7

これらのビットは、ソフトイベントの完了を示すのに使用されます。

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 ビジョンシステムの各種サブシステムへのアクセスが可能になります。

  • 一般的な画像取り込みシーケンス
  • 検査/結果シーケンス
  • 結果バッファリング
  • Soft Events

一般的な画像取り込みシーケンス

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 ビットを真に設定すると、画像取り込みが再度有効になります。

Closed 例: 一般的な画像取り込みシーケンス

Closed 例: 検査シーケンスより高速な画像取り込み

検査/結果シーケンス

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 が読み取ることができず失われます。原則的に、最新の結果によって以前の結果が上書きされるだけです。バッファリングが有効である (さらに、キューがいっぱいである) 場合は、結果キューに空きができるまで最新の結果が破棄されます。

Closed 例: 結果オーバフローシーケンス

Soft Events

PLC から In-Sight ビジョンシステムへのデータ送信に加えて、ジョブ固有の動作を制御するために、ソフトイベントを送信できます。個々のソフトイベントには、トリガ (Inspection Control オブジェクトのビット 24 ～ 31) および確認応答ビット (Inspection Status オブジェクトのビット 24 ～ 31) が関連付けられています。トリガビットの立ち上がりエッジによって、In-Sight ビジョンシステムは、ソフトイベントに関連付けられている動作を処理します。ソフトイベントの開始時に、ビジョンシステムは Soft Event Ack ビットを High に設定します。このビットは、PLC が Trigger ビットをリセットして、ソフトイベントに関連付けられている動作の処理が完了するまで High のまま保持されます。ソフトイベントをトリガできない場合は、General Fault ビットが High に設定されます。このビットは、イベントが正常にトリガされるまで High のまま保持されます。

Closed 例 - ソフトイベントのトリガ

注意: In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

POWERLINK/In-Sight ビジョンシステムでの LED の動作

POWERLINK 対応 In-Sight ビジョンシステムを使用するときには、ビジョンシステムの LED を使用して、POWERLINK 固有の最新動作ステータスの更新を通知することができます。ユーザ 1 LED は POWERLINK エラー LED、ユーザ 2 LED は POWERLINK ステータス LED です。これらの状態は [ディスクリート出力設定] ダイアログで変更できません。

注意:ユーザ 2 LED は、ビジョンシステムが POWERLINK ネットワークのノードとして、このネットワークでエラー状態を検知したときにオンになり、正常な動作に戻ったときにオフになります。

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 ノードはエラーのため停止しています。


PROFINET - ネットワーク上の Siemens PLC との通信

PROFINET 通信

In-Sight 通信リファレンス

概要

I/O メッセージング

関連項目

概要

分散 I/O (リモート I/O) は、PROFINET IO 経由で接続されます。この構成では、PROFIBUS の I/O ビューが保持され、フィールドデバイスのユーザデータが定期的に制御システムのプロセスモデルに送信されます。

PROFINET IO は、挿入場所 (スロット) と I/O チャネル (サブスロット) のグループで構成されるデバイスモデルを記述します。フィールドデバイスの技術的特性は、XML ベースの GSD (General Station Description) によって記述されます。

PROFINET IO では、次の 3 種類のデバイスが区別されます。

  • IO コントローラ: 自動化プログラムを実行するコントローラ。
  • IO デバイス: リモートで割り当てられたフィールドデバイス。IO コントローラに割り当てられます。
  • IO スーパバイザ: コミッショニングおよび診断機能を実行するプログラミングデバイス (PC)。

PROFINET IO のエンジニアリングプロセスは、PROFIBUS と同様です。すなわち、コンフィギュレーション時に、分散化フィールドバスが 1 つ以上の制御システムに割り当てられます。I/O デバイスは、GSD ファイルの内容に基づいて、実際のシステム拡張に応じて構成されます。同時に、I/O デバイスは、統合され、適切にパラメータ化され、PROFINET のトポロジーとして構成されます (1)。

エンジニアリングプロセスの完了後、拡張データが IO コントローラにロードされます (2)。IO コントローラは、IO デバイスとのデータ交換を独自に引き継ぎます (3)。

In-Sight システムは、一度に 2 つのコントローラ (またはスーパーバイザ) からの PROFINET IO 接続をサポートします。下記の手順では、PROFINET IO を使用して In-Sight ビジョンシステム (ファームウェアバージョン 3.40.00 以上を実行) と Siemens PLC の間でデータを転送する方法を説明します。

下記の例は、次のコンポーネントを使用していることを前提に記述されています。

  • ファームウェアバージョン 3.40.00 以上を実行している In-Sight ビジョンシステム
  • Siemens S7-300 または S7-400 シリーズ PLC (PROFINET オプション)
  • Siemens Step 7 プログラミングソフトウェア バージョン 5.3 (SP3 以上)

I/O メッセージング

この節では、PROFINET IO 通信を使用して、Siemens PLC を In-Sight ビジョンシステム (ファームウェアバージョン 3.40.00 以上を実行) に接続する方法を説明します。

In-Sight ビジョンシステムでの PROFINET 通信の有効化

接続のセットアップ

In-Sight ビジョンシステムからのデータの取得

In-Sight ビジョンシステムへのデータの送信

PROFINET IO を使用すると、In-Sight ビジョンシステムの入力および出力を Siemens PLC のプロセスメモリにマップすることができます。これらの値は、確立後、PROFINET IO システムの更新レートによって定義される間隔で同期されます。

In-Sight ビジョンシステムでの PROFINET 通信の有効化

In-Sight ビジョンシステムと PROFINET 通信を確立するためには、In-Sight ビジョンシステムの [ネットワークの設定] を使用して、PROFINET が有効になるようにビジョンシステムを設定しておく必要があります。

  1. In-Sight Explorer を開き、In-Sight ビジョンシステムに接続します。
  2. [センサ] メニューから [ネットワークの設定] ダイアログを開きます。
  3. ダイアログの [プロトコルサービス] セクションで、[PROFINET] を選択し、[OK] を押します。
  4. In-Sight ビジョンシステムを再起動すると、電源の再投入後 PROFINET サービスが有効になります。

接続のセットアップ

In-Sight ビジョンシステムと Siemens コントローラの間の PROFINET I/O 接続をセットアップするには、最初に、Siemens の HW Config ツールを使用して、In-Sight ビジョンシステムをコントローラのハードウェア構成に追加する必要があります。

  1. SIMATIC マネージャを開き、PLC のプロジェクトをロードします。
  2. [SIMATIC 300] または [SIMATIC 400] ノードを選択して、オブジェクトリストの [Hardware] ノードをダブルクリックします。

  3. HW Config ツールが表示されます。PROFINET IO ノードをコントローラに追加するためには、PROFINET IO システムがハードウェア構成図に存在する必要があります。図に PROFINET IO システムがない場合は、次の手順を実行します。
  • CPU 上の PROFINET IO インタフェースにサブネットアドレスが割り当てられていることを確認します。これを確認するには、CPU の PROFINET IO モジュールをダブルクリックします。PROFINET IO モジュールの [Networked] ステータスが [No] になっている場合は、[Properties] ボタンをクリックして、新しいサブネットを追加します。
  • CPU 上の PROFINET IO インタフェースがサブネットに割り当てられたら、PROFINET　IO システムをハードウェア構成図に追加します。そのためには、PLC コンフィグレーションの PROFINET IO モジュールを右クリックして、[Insert PROFINET IO System] を選択します。

  4. これが PROFINET ネットワークに追加される初めての In-Sight ビジョンシステムである場合は、In-Sight GSD ファイル (弊社支給) をインストールする必要があります。In-Sight GSD ファイルをインストールするには、次の手順で行います。
  • HW Config ツールのメニューから、[オプション] → [Install GSD Files] を選択します。
  • [Browse] ボタンを押して、In-Sight Explorer インストール CD-ROM から GSD フォルダを選択します。
  • [Select All] ボタンを押し、[Install] ボタンをクリックして、In-Sight ビジョンシステムのハードウェア記述をインストールします。

In-Sight ビジョンシステムを PROFINET ネットワークに追加するには、Hardware Catalog の In-Sight ノードを参照して ([PROFINET IO] → [Additional Field Devices] → [Sensors] → [Cognex Vision Sensors])、In-Sight ビジョンシステムのインスタンスをハードウェア構成内の PROFINET IO システムにドラッグします。

  5. デバイス名と IP アドレスを、接続する In-Sight ビジョンシステムの正確な名前と IP アドレスに設定します。

注意: In-Sight ビジョンシステムの名前にアンダースコアが使用されていた場合は、ビジョンシステムの名前を PROFINET に入力するときに、アンダースコアをハイフンに置き換える必要があります。例えば、In-Sight Explorer でのカメラの名前が「Camera_Top」の場合は、PROFINET では「Camera-Top」に変更する必要があります。

  6. これで、In-Sight ビジョンシステムが PROFINET IO システム上のデバイスとして表示され、特定の PROFINET IO 実装によってサポートされる In-Sight ビジョンシステムの各種モジュールも表示されます。

Closed ヒント: Siemens Step 7 ソフトウェアを使用して PLC を設定する場合は、ここをクリックします。

Siemens Step 7 ソフトウェアは、In-Sight GSD ファイル内の各モジュールの定義に基づいて、In-Sight ビジョンシステム用に追加された各モジュールにデフォルトの I/O アドレスを割り当てます (上の図を参照)。これらの I/O アドレスのいくつかまたはすべてを変更することができます。 ディスクリートビットデータを細かく決定するモジュール (画像取り込み制御とステータス、検査制御とステータス、およびソフトイベント制御) はすべて、PLC の画像処理入力および出力メモリ領域内のアドレスに割り当てる必要があります。Siemens S7 シリーズ PLC の最新のファームウェアを使用すると、このメモリ領域のサイズを変更することができます (デフォルトのサイズは 256 バイトです。I0.0 ～ I255.7、Q0.0 ～ Q255.7)。設定機能がない以前のファームウェアやモデル (Siemens PLC のドキュメントを参照) ではサイズは固定されており、通常 256 バイトです。上の図からもわかるように、ディスクリートビットデータモジュールは 0 から始まる I/O アドレスにマップされています。また、バイト/ワードモジュールは、PLC の画像処理入力および出力メモリ領域のすぐ上から始まるアドレス (256 以上) に割り当てられます。
一般的なユースケースでは、下の図に示されるような構成になっています。つまり、Step 7 ソフトウェアの割り当てより隣接しているブロック内に各 In-Sight ビジョンシステムの I/O アドレスが割り当てられています。PLC ロジックが新しい I/O ビットアドレスにアクセスするためには、Step 7 ソフトウェアの HW 設定で PLC (CPU) のプロパティを開いて、ダイアログの [Cycle/Clock Memory] タブの [Size of the process-image input area] と [Size of the process-image output area] に移動します。例では、入力および出力領域のサイズは 912 に変更されています。これは、ビジョンシステム用の PLC の I および Q アドレスを使用して、In-Sight ビジョンシステムのディスクリートビットデータにアクセス可能にするためです。これらの画像処理サイズを変更しないと、ビット値の読み取りや書き込みが正しく行われません。ただし、バイト/ワード値は正しく更新されます。これらの画像処理サイズが変更された場合に必要になる追加のメモリオーバヘッドについては、Siemens PLC のドキュメントを参照してください。

In-Sight ビジョンシステムの使用可能なモジュールのすべてが、自動的にハードウェア構成に追加されます。これらのモジュールによって、In-Sight ビジョンシステムの各種サブシステムへのアクセスが可能になります。デフォルトの UserData および InspectionResults モジュールは、64 バイトのサイズです。モジュールのサイズを変更するためには、リストからモジュールを削除して、[Catalog] ツリー内の [In-Sight Data Modules] フォルダにある適切なサイズのモジュールをリストの [Slot] にドラッグします。

  7. HW Config ユーティリティで In-Sight ビジョンシステムを PROFINET システムに追加した後、PROFINET IO システムのプロパティウィンドウを開いて、周期転送率を調整することができます。このためには、ハードウェア構成図の [PROFINET IO System] をダブルクリックします。周期更新時間は、PROFINET IO システム全体について、または各デバイスについて設定することができます。

注意:　更新時間をデフォルト値の 1ms のままにした場合、PLC が In-Sight ビジョンシステムに接続されているときに、ビジョンツールのパフォーマンスが大幅に低下することがあります。パフォーマンスの低下を緩和するには、周期更新時間を 8ms または 16ms に変更します。

例:接続のセットアップ

(この例では、In-Sight ビジョンシステムが Siemens プロジェクトの入出力デバイスとして追加されていることを前提としています。)プロジェクトがコントローラにダウンロードされた後、要求した更新時間で、周期データ転送が開始されます。正しい I/O 接続を確認するには、次の手順に従ってください。

  1. オフラインのときに、「接続のセットアップ」の節に記載されている Siemens の構成手順を実行します。
  2. 完成したプロジェクトを Siemens コントローラにダウンロードして、[Operating Mode] を [Run] に設定します。
  3. オンラインで、HW Config ツールを開きます。In-Sight ビジョンシステムのエラーが表示されなければ、I/O 接続は正常に完了しています。
  4. In-Sight ビジョンシステムと Siemens コントローラの間の I/O データの正しい双方向転送を確認するには、In-Sight Explorer を使用して In-Sight ビジョンシステムに接続します。In-Sight ビジョンシステムのスプレッドシートビューから、AcquireImage のプロパティシートを開き、[トリガ] パラメータを [外部] に設定します。次に、ビジョンシステムをオンラインにします。
  5. HW Config ツールから、In-Sight ビジョンシステムを選択し、[Acquisition Control Module] を右クリックして、[Monitor/Modify] を選択します。

  6. 次に、[Input bit 0] を [false] から [true] に変更します。これによって、Acquisition Trigger ビットが有効になります。

  7. このビットをセットすると、入力ビット 1 が false から true に変更されたときに、In-Sight ビジョンシステムは画像を取り込みます。
  8. Inspection Status モジュールの [Monitor/Modify] ウィンドウで、[Run conditionally] チェックボックスが [Monitor] についてオンになっていた場合、手順 6 を繰り返すと、検査の完了時に Inspection Completed ビット (ビット 1) の状態が変化することがわかります。

In-Sight ビジョンシステムからのデータの取得

In-Sight Explorer スプレッドシートから Siemens PLC にデータを取得するためには、WriteProfinetBuffer 関数を使用して、データが PROFINET スタックにプッシュされる必要があります。この関数は、FormatOutputBuffer 関数によって作成されたデータのバッファを取り、そのデータを PROFINET Inspection Results モジュールの検査結果領域に書き込みます。このデータは、次の更新サイクルの際に転送されます。

以下の手順に従って、In-Sight ビジョンシステムから Siemens PLC に送信されるデータの書式設定の方法を説明します。

  1. まず、In-Sight Explorer を使用して、新規ジョブを作成します。
  2. [パレット] の [スニペット] タブから、次の 2 つのスニペットをスプレッドシートに追加します。[Acquisition] → [AcqCounter] および [Math & Logic] → [Random]
  3. AcquireImage セルを開いて、[トリガ] パラメータを [連続] に設定します。
  4. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで FormatOutputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  5. [FormatOutputBuffer] ダイアログの [追加] ボタンをクリックします。これでセル選択モードになります。Random スニペットの「Scaled random number」セルを選択します。
  6. [FormatOutputBuffer] ダイアログの [追加] ボタンを再びクリックします。これでセル選択モードになります。AcqCounter スニペットのカウントセルを選択します。

  7. [OK] ボタンをクリックして、[FormatOutputBuffer] ダイアログを閉じます。
  8. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで WriteProfinetBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  9. WriteProfinetBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatOutputBuffer 関数の [image] データ構造体へのセル参照として設定します。
  10. In-Sight ビジョンシステムをオンラインにします。
  11. Simatic Manager で、ご使用の PLC を右クリックし、[Insert New Object] メニューから [Variable Table] を選択して、新しい変数テーブルを作成します。新しい変数テーブルを開きます。
  12. テーブルに 2 つの項目を追加します。

オフセット

アドレス

表示形式

説明

+4

PID 261

FLOATING_POINT

乱数

+8

PID 265

DEC

Acquisition ID

注意: このアドレス設定では、Inspection Results モジュールが入力アドレス 257 にあることを前提としています。Inspection Results モジュールが別のアドレスにある場合は、指定したオフセットを入力アドレスに適用して、正しいアドレスに設定してください。

  13. Simatic Manager で、[PLC] → [Connect To] メニューから [Configured PLC] を開き、[Variable] メニューから [Monitor] を選択します。In-Sight Explorer スプレッドシートに表示されている値と同じ値が表示されます。

In-Sight ビジョンシステムへのデータの送信

Siemens PLC から In-Sight Explorer スプレッドシートにデータを送信するためには、ReadProfinetBuffer 関数を使用して、データが PROFINET スタックからプルされる必要があります。この関数は、FormatInputBuffer 関数内で作成されたデータ形式を取り、PROFINET User Data モジュールのデータ領域からデータを読み取って、このデータを書式設定して In-Sight Explorer スプレッドシートに入れます。このデータは、更新サイクルごとに、PLC から受信されます。

例:In-Sight ビジョンシステムへのデータの送信

この例では、In-Sight Explorer 内に新規ジョブを作成した後、以下の手順を実行して、Siemens PLC が受信するデータを設定します。

  1. AcquireImage セルを開いて、[トリガ] パラメータを [連続] に設定します。
  2. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで FormatInputBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  3. [FormatInputBuffer] ダイアログの [追加] ボタンをクリックして、32 ビットの浮動小数点数と 32 ビットの整数をリストに追加します。

  4. [OK] ボタンをクリックして、[FormatInputBuffer] ダイアログを閉じます。
  5. 空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。左側のペインで [入出力] カテゴリをクリックし、その後、右側のペインで ReadProfinetBuffer 関数をダブルクリックして、スプレッドシートに挿入します。
  6. ReadProfinetBuffer 関数の [バッファ] パラメータを、作成したばかりの FormatInputBuffer 関数の　 [image] 　データ構造体へのセル参照として設定します。
  7. FormatInputBuffer 関数に追加されたフィールドに基づいて、データアクセス関数が自動的にスプレッドシートに追加されます。
  8. In-Sight ビジョンシステムをオンラインにします。
  9. Simatic Manager で、ご使用の PLC を右クリックし、[Insert New Object] メニューから [Variable Table] を選択して、新しい変数テーブルを作成します。新しい変数テーブルを開きます。
  10. テーブルに 2 つの項目を追加します。

オフセット

アドレス

表示形式

0

PQD 257

FLOATING_POINT

+4

PQD 261

DEC

注意: このアドレス設定では、Inspection Results モジュールが入力アドレス 257 にあることを前提としています。Inspection Results モジュールが別のアドレスにある場合は、指定したオフセットを入力アドレスに適用して、正しいアドレスに設定してください。

  11. Simatic Manager で、[PLC] → [Connect To] → [Configured PLC] メニューをクリックします。
  12. 変数テーブルに追加した 2 つの項目の値を入力して、[Variable] メニューの [Activate Modify Values] を選択します。

  13. In-Sight Explorer スプレッドシートの値が、入力した値に変更されます。

関連項目

Siemens PLC でのレコードの使用

PROFINET I/O モジュールリファレンス


PROFINET I/O モジュールリファレンス

PROFINET 通信

In-Sight 関数リファレンス

これらのモジュールを使用することによって、In-Sight ビジョンシステムの各種サブシステムへのアクセスが可能になります。これらのモジュールは、次の機能を実行します。

  • Acquisition Control:　In-Sight ビジョンシステムの画像取り込みとオンライン/オフラインステータスを制御します。

    ビット

    名前

    説明

    0

    Trigger Enable

    このフィールドがセットされると、Trigger ビットによるトリガが有効になります。このビットをクリアすると、ネットワークトリガメカニズムが無効になります。

    1

    Trigger

    次の条件が満たされたとき、このビットをセットすると画像取り込みをします。

    • In-Sight ビジョンシステムがオンラインである。
    • Trigger Enable ビットがセットされている。
    • AcquireImage 関数の [トリガ] パラメータが [ネットワーク] または [外部] に設定されている。

    2 ～ 6

    予約済み

    使用されません。

    7

    Set Offline

    このビットがセットされると、このビットが再びクリアされるまで、In-Sight ビジョンシステムはオフラインになります。

  • Acquisition Status:　In-Sight ビジョンシステムの画像取り込みとオンライン/オフラインステータスを示します。

    ビット

    名前

    説明

    0

    Trigger Ready

    In-Sight ビジョンシステムが新しいトリガを受け入れられることを示します。このフィールドは、ビジョンシステムがオンラインであり、Trigger Enable ビットがセットされ、ビジョンシステムが画像の取り込み中でないときに真になります。

    1

    Trigger Ack

    In-Sight ビジョンシステムが Trigger ビットのセットによってトリガされたことを示します。このビットは、Trigger ビットがクリアされるまでセットされたままです。

    2

    Acquiring

    In-Sight ビジョンシステムが画像を取り込み中であるときにセットされます。セットされる Trigger ビットによって、または外部トリガによってセットされます。

    3

    Missed Ack

    In-Sight ビジョンシステムが画像取り込みトリガをミスしたときにセットされます。画像取り込みが正常にトリガされるとクリアされます。

    4 ～ 6

    Offline Reason

    このフィールドは、In-Sight ビジョンシステムがオフラインである原因を示すために使用される 3 ビットのフィールドです。

    Offline Reason

    名前

    説明

    0

    Online

    ビジョンシステムはオンラインです。

    1

    Programming

    ビジョンシステムのジョブが変更されています。

    2

    Discrete Offline

    ディスクリート信号によって、ビジョンシステムがオフラインになっています。

    3

    Comm.Offline

    通信プロトコルによって、ビジョンシステムがオフラインになっています。

    注意:　複数のデバイスから In-Sight ビジョンシステムはオフラインにできます。このフィールドでは最小限のチャネルステータスを返します。

    7

    Online

    このビットは、In-Sight ビジョンシステムがオンラインのときにセットされ、ビジョンシステムがオフラインのときにクリアされます。ビジョンシステムがオフラインのときには、Offline Reason フィールドを調べて、原因を判断してください。

    8 ～ 23

    Acquisition ID

    この ID は、トリガソースに関係なく各画像取り込みが完了すると増分され、Acquisition とその Inspection Results を同期化するために使用できます。

  • Inspection Control:　ジョブの実行と検査結果の処理を制御します。

    ビット

    名前

    説明

    0

    Buffer Results Enable

    このビットがセットされると、Inspection ID、Inspection Result、および Inspection Results フィールドは、Inspection Results Ack フィールドが確認応答してセットされるまで変化しません。最大 8 つの検査がビジョンシステムのバッファに保持されます。In-Sight ビジョンシステムは、Results Valid ビットをクリアすることによって、確認応答に応答します。Inspection Results Ack フィールドがクリアされて、PLC に送信される新しいルールセットがあるときには、Results Valid ビットはクリアされません。Inspection Results Ack ビットがクリアされて、PLC に送信される結果がビジョンシステムのバッファにそれ以上ない場合には、Results Valid ビットはクリアされたままです。

    1

    Inspection Results Ack

    Buffer Results Enable ビットがセットされると、Inspection Results Ack ビットは、PLC が Inspection ID、Inspection Result、および Inspection Results データを受信したことを確認応答します。その後、次の検査結果のセットが PLC に送信されます。Inspection Results Ack ビットがクリアされると、ビジョンシステムは Results Valid ビットをセットします (バッファが空でなかった場合)。
    2 Set User Data この信号の立ち上がりエッジで、ユーザデータ保持バッファをユーザデータフィールドに取得して、In-Sight にユーザデータへのアクセス権を与えます。ビジョンシステムがコマンドを受信することを保証するには、Inspection Status モジュールで Set User Data Ack ビットがアサートされるまで、PLC でこのビットを high に保持する必要があります。Profinet Write Record コマンドを使用して、ユーザデータ保持バッファに書き込むことができます。PROFINET 接続で User Data モジュールが設定されている場合に Set User Data 信号がアサートされると、モジュールアラームがアサートされます。

    3 ～ 7

    予約済み

    使用されません。

  • Inspection Status:　ジョブの実行と検査結果のステータスを示します。

    ビット

    名前

    説明

    0

    Inspecting

    このビットは、In-Sight ビジョンシステムがジョブを実行しているときにセットされます。

    1

    Inspection Completed

    このビットは、検査の完了時に立ちます。

    2

    Results Buffer Overrun

    このフィールドは、Buffer Results Enable ビットがセットされていて、PLC が確認応答しない、つまり、Inspection Results Ack ビットをセットしたために、In-Sight ビジョンシステムが検査結果のセットを破棄したときにセットされます。最大 8 つの検査がビジョンシステムのバッファに保持されるため、このビットは、9 番目の検査がバッファに追加されて、バッファ内の 8 番目の検査に上書きされたときにセットされます。有効な検査が発生して、前の検査が上書きされない限り、このビットはクリアされません。

    3

    Results Valid

    [Inspection Count]、 [Inspection Result]、 および [Inspection Results] フィールドが有効なときにセットされます。

    4

    Job Loading

    このビットは、新規ジョブをロードするときにセットされます。

    注意:このビットは、PROFINET を使用する PLC によってジョブのロードが開始された場合にのみ機能します。

    5

    Job Load Complete

    このビットは、ジョブロード操作の完了時にトグルされます。

    注意:このビットは、PROFINET を使用する PLC によってジョブのロードが開始された場合にのみ機能します。

    6

    Job Load Failed

    このビットは、ジョブのロードの最後の試みが失敗したときにセットされます。次にジョブのロードが成功したときにクリアされます。

    注意:このビットは、PROFINET を使用する PLC によってジョブのロードが開始された場合にのみ機能します。

    7

    Set User Data Ack

    このビットは、Set User Data コマンドの完了に確認応答するためにセットされます。
    8 Job Pass このビットは、最後のジョブが [ジョブの PASS/FAIL セルの設定] ダイアログの設定に合格するとセットされます。このビットはジョブが合格しないとクリアされます。

    注意:　ジョブの PASS ビッドの動作は結果バッファリングが無効か有効かによって異なります。
    バッファリングが無効 バッファリングが有効
    検査が完了したときに [ジョブの PASS/FAIL] のセルが合格を示すとセットされます。そうでない場合は、クリアされたままです。

    注意:　Inspection Completed ビットが立つ前のジョブ PASS ビットは有効です。

            新しい結果が InspectionResults 属性に挿入され、[ジョブの PASS/FAIL] のセルがその結果に対して合格を示すとセットされます。そうでない場合は、クリアされたままです。InspectionResultsAck 属性を真に設定することによって結果が確認応答され、ビットがクリアされるまで、状態は変化しません。

    注意:　Results Valid ビットがセットされる前のジョブ PASS ビットは有効です。

    9 ～ 15 予約済み 使用されません。

  • Job Control:　このモジュールの入力バイトは、In-Sight ビジョンシステムの現在のジョブ ID を示します。現在のジョブに ID がない場合は、255 になります。In-Sight ビジョンシステムがオフラインのときに出力バイトを設定すると、同じ ID のジョブがロードされます。有効なジョブ ID 番号は、1 ～ 254 です。

    注意:
    • デフォルトのジョブ ID の接頭辞は 0 で、ジョブが変更されないことを示しています。
    • 255 のジョブ ID 接頭辞は使用しないでください。ジョブ ID 接頭辞のないジョブが In-Sight Explorer によってロードされたときに、255 の入力バイトが PLC に返されます。したがって、ジョブ ID 接頭辞が 255 のジョブがロードされた場合や、ジョブ ID 接頭辞のないジョブがロードされた場合にわかりにくくなります。
  • Soft Event Control: スプレッドシートのソフトイベントのトリガを可能にします。これらのビットをセットすると、スプレッドシート内の関連するソフトイベントがトリガされます。

注意: In-Sight Explorer または VisionView アプリケーションが検査をモニタするジョブ設置環境では、ジョブがスプレッドシートイベントのトリガをかけるソフトイベント (Timer 関数として設定) に依存する場合、画像取り込みサイクルの完了直前にトリガがかけられると、画像の検査が遅延することがあります。ジョブファイルが大きい場合 (つまり、追加されたジョブのロジックに加えて、ファイルにパターンマッチ、傷検出 エッジ検査 ツールなど多くのビジョンツールが含まれる)、In-Sight Explorer または VisionView に必要な更新により、表示の更新がキューに入れられるまで画像の検査が妨げられます。正確なタイミングを必要とするアプリケーションでは (10 ミリ秒による測定など)、この更新により合格/不合格の結果を決定するのが遅れるため、検査プロセスでの次のステーション (PLC またはモーションコントローラなど) への結果の転送も遅延します。こうしたアプリケーション環境では、検査の遅延を避けるために、ソフトイベントを使用しないことを推奨します。

  • User Data:　このデータは、ReadProfinetBuffer 関数を使用して、In-Sight スプレッドシートから読み取ることができます。

  • Inspection Results:　これは、WriteResultsBuffer 関数を使用して、In-Sight スプレッドシートから書き込まれたデータです。Inspection Control モジュールの Buffer Results Enable ビットがセットされていた場合、Inspection Results Ack ビットをパルス出力することによって確認応答されるまで、検査結果は変わりません。

    バイト

    名前

    説明

    0 ～ 1

    Inspection ID

    この結果セットに関連付けられている取り込み ID。

    2 ～ 3

    Inspection Result Code

    現在は使用されていません。常に 0 です。

    4 ～ 259

    Inspection Results

    WriteResultsBuffer 関数を使用してスプレッドシートから書き出された検査結果データ。

次のタイミング図は、画像取り込み制御、検査制御、画像取り込みステータス、検査ステータス、および検査結果の関係を示しています。

Closed PROFINET での画像取り込みと検査のタイミング図 (バッファリング無効)

Closed PROFINET での画像取り込みと検査のタイミング図 (バッファリング有効)


PROFINET - Siemens PLC でのレコードの使用

PROFINET 通信

In-Sight 通信リファレンス

PROFINET は、In-Sight ビジョンシステムと通信する 2 番目の方法として、Read Record および Write Record コマンドを使用した通信もサポートしています。これらのコマンドは、In-Sight ビジョンシステムのメモリの特定の領域に明示的に書き込みを行います。Read Record および Write Record コマンドは、特定のデバイスに送信され、そのデバイスはそのメッセージに対する応答を常に返します。結果として、Read Record および Write Record コマンドは、あまり頻繁には行われない操作に適しています。

In-Sight ビジョンシステムでは、次の Record コマンドがサポートされています。

インデックス | 説明
1 | ジョブ名
10 | Inspection Result バイト 0 ～ 999
11 | Inspection Result バイト 1000 ～ 1999
12 | Inspection Result バイト 2000 ～ 2999
13 | Inspection Result バイト 3000 ～ 3999
30 | User Data バイト 0 ～ 999
31 | User Data バイト 1000 ～ 1999
32 | User Data バイト 2000 ～ 2999
33 | User Data バイト 3000 ～ 3999

注意:
  • レコード 10 ～ 13 は読み取り専用レコードです。このデータは、Inspection ID、Inspection Result Code、および Inspection Results データを含む Inspection Results モジュールと同じフォーマットです。これらのレコードに書き込みを試みると、アクセス拒否を示すエラーコード 0xB6 が返されます。

    レコード 30 ～ 33 は読み取り/書き込みレコードです。User Data モジュールを含む周期接続が確立されている場合に PLC がこのレコード範囲に書き込みを試みると、状態の競合が発生したことを示すエラーコード 0xB5 が生成されます。大量のデータを転送する必要があるアプリケーションでは、周期接続の User Data モジュールか、または User Data Write Record コマンドが使用されます。両方を同時に使用することはできません。
  • Siemens CP 343-1 モジュールを PROFINET I/O コントローラとして使用し、FB52 - PNIO READ OR WRITE RECORD を使用してデータのレコードを読み取り/書き込みしている場合、各読み取り/書き込みレコードデータの最初の 480 バイトのみが転送されます。
  • In-Sight ビジョンシステムが PROFINET IO ネットワーク経由で通信するように設定され、レコード 30 ～ 33 へのユーザデータの書き込みが成功した場合、ユーザデータの読み取りを試行すると、レコード 30 ～ 33 が異常な結果を返します。

In-Sight ビジョンシステム上でのジョブの変更

In-Sight ビジョンシステムと Siemens PLC の間で Read Record および Write Record コマンドを使用して行われる最も一般的な操作は、ジョブの変更です。Siemens PLC 内では、これらのコマンドは「WRREC」(SFB 53) および「RDREC」(SFB 52) ブロックを使用して送信されます。

以下の手順では、「WRREC」ブロックを追加することによって、In-Sight ビジョンシステム上の現在のジョブを変更する方法を説明します。

  1. PLC プロジェクトのシンボルテーブルを開きます (Simatic Manager プロジェクトの [S7 Program] ツリーノードにあります)。
  2. 次のシンボルをプロジェクトに追加します。

シンボル

アドレス

データ型

説明

LoadJob

M 124.1

BOOL

LoadJob コマンドをトリガします。

LoadJobBusy

M 124.2

BOOL

LoadJob コマンドの実行中は真。

LoadJobDone

M 124.3

BOOL

LoadJob コマンドが成功した場合に真。

LoadJobErr

M 124.4

BOOL

LoadJob コマンドが失敗した場合に真。
  3. OB1 メインプログラムブロックを開き、[View] メニューから [LAD] を選択して、エディタをラダーモードに設定します。
  4. 関数ツリーからブロックをドラッグして、WRREC コールをラダーネットワークに追加します。このブロックは、[Libraries] → [Standard Library] → [System Function Blocks] → [DP] ノードにあります。
  5. 下の図のようにラダーロジックを追加して、ラングを完成します。

  6. 関数ブロック内の ID パラメータは、コマンドの送信先である In-Sight モジュールの診断アドレスに相当する 16 進値に設定する必要があります。これは、HW Config ツールのモジュールリストにあります。この例では、診断アドレスは 2044 (16 進値では 7FC) です。
  7. プロジェクトを PLC にダウンロードして、PLC を Run モードにします。
  8. PLC プロジェクトの変数テーブルを開きます。次のエントリを変数テーブルに追加します。

アドレス

シンボル

データ型

M 124.1

LoadJob

BOOL

M 124.2

LoadJobBusy

BOOL

M 124.3

LoadJobDone

BOOL

M 124.4

LoadJobErr

BOOL

MD 128

CHARACTER

MD 132

CHARACTER

MD 136

CHARACTER

MD 140

CHARACTER

MD 144

CHARACTER
  9. [Variable] メニューから [Monitor] を選択して、モニタリングを有効にします。
  10. In-Sight Explorer を使用して、ビジョンシステムをオフラインにします。
  11. 変数テーブルの MD 128 ～ MD 147 エントリに、ロードするジョブの名前を入力します。ジョブ名の最後の文字の後にヌル文字 ($0) を入力する必要があります。

  12. ジョブ名を入力した後、[Modify value] 列の「LoadJob」行に「true」と入力します。
  13. 次に、[Valuable] メニューから [Activate Modify Values] を選択して、値を PLC のメモリにコミットします。
  14. 指定したジョブがロードされて、In-Sight Explorer に表示され、LoadJobDone 変数に「true」と表示されます。

DWord の STATUS 出力で Write/Read Record メッセージから返されるエラー情報 (ERROR ビットが 1 にセット)

Closed STATUS 出力パラメータには、有用なエラー診断情報が含まれます。詳細については、ここをクリックしてください。

以下の表に、STATUS パラメータで返される値の説明を示します。これらの値は、バイト配列 [1...4] として解釈されます。

エラー情報の構造は、次のとおりです。

フィールド要素:

名前:

説明

STATUS[1]

Function_Num
  • エラーがなかった場合、B#16#00。
  • DPV1-PDU の関数 ID。エラーの場合、B#16#80 は OR 結合されます。DPV1 プロトコル要素が使用されなかった場合は、B#16#C0。

STATUS[2]

Error_Decode

エラー ID の場所。

STATUS[3]

Error_Code_1

エラー ID

STATUS[4]

Error_Code_2

製造元固有のエラー ID 拡張。

STATUS[2] の値は、次のとおりです。

Error_Decode

(B#16#...)

ソース

説明

00 ～ 7F

CPU

エラーも警告もありません。

80

DPV1

IEC 61158-6 によるエラー。

81 ～ 8F

CPU

B#16#8x は、SFB の n 番目のコールパラメータのエラーを示します。

FE、FF

DP プロファイル

プロファイル固有のエラー。

STATUS[3] の値は、次のとおりです。

Error_Decode

(B#16#...)

Error_Code_1

(B#16#...)

DVP1 による説明

説明

00

00

エラーも警告もありません。

70

00

予約済み、拒否

初期コール。アクティブなデータレコード転送はありません。

01

予約済み、拒否

初期コール。データレコード転送が開始されました。

02

予約済み、拒否

中間コール。データレコード転送は既にアクティブです。

80

90

予約済み、成功

無効な論理開始アドレス。

92

予約済み、成功

ANY ポインタに対して違法な型。

93

予約済み、成功

ID または F_ID によってアドレス指定された DP コンポーネントは設定されていません。

95

追加の割り込み情報をフェッチするときの H システムのエラー (外部 DP インタフェースを介してローカルまたは分散 I/O 層で追加割り込み情報をフェッチするときには、このエラーは「グループエラー」として出力されます)。

注意:接続中または更新中は、追加割り込み情報が一時的に使用できなくなることがあります。

96

H システムでマスタとリザーブのスイッチオーバが発生し、前のマスタ CPU が STOP モードになりました。その時点で、OB の処理中でした。SFB 54 は、OB 開始情報、管理情報、ヘッダ情報、または追加割り込み情報を提供できません。SFC 6「RD_SINFO」は、OB 開始情報を読み出します。SFC 13「DPNRM_DG」は、OB 4x、55、56、57、82、および 83 について、影響を受けた DP スレーブの現在の診断フレームを同期して読み取ります (OB 開始情報からのアドレス情報)。

A0

読み取りエラー

モジュールの読み取り時に否定的確認応答。

A1

書き込みエラー

モジュールの書き込み時に否定的確認応答。

A2

モジュール失敗

層 2 の DP プロトコルエラー。

A3

予約済み、成功

A4

予約済み、成功

バス通信が中断されました。

A5

予約済み、成功

A7

予約済み、成功

DP スレーブまたはモジュールが占有されています (一時的エラー)。

A8

バージョン不一致

DP スレーブまたはモジュールが互換性のないバージョンを報告しています。

A9

サポートされない機能

機能が DP スレーブまたはモジュールによってサポートされていません。

AA ～ AF

ユーザ固有

DP スレーブまたはモジュールは、アプリケーションの製造元固有のエラーを報告しています。DP スレーブまたはモジュールの製造元のマニュアルを参照してください。

B0

無効なインデックス

モジュール内に未知のデータレコード。違法なデータレコード番号 3256。

B1

書き込み長エラー

RECORD パラメータで指定された長さが正しくありません。SFB54 では、AINFO に長さエラー。

B2

無効なスロット

構成されたスロットは空です。

B3

タイプの不一致

実際のモジュールタイプが、指定されたモジュールタイプに一致しません。

B4

無効な領域

DP スレーブまたはモジュールは、無効な領域へのアクセスを報告しています。

B5

ステータスの不一致

DP スレーブまたはモジュールの準備ができていません。

B6

アクセス拒否

DP スレーブまたはモジュールがアクセスを拒否しています。

B7

無効な範囲

DP スレーブまたはモジュールは、パラメータまたは値の範囲が無効であることを報告しています。

B8

無効なパラメータ

DP スレーブまたはモジュールは、無効なパラメータを報告しています。

B9

無効なタイプ

DP スレーブまたはモジュールは、無効なタイプを報告しています。

BA ～ BF

ユーザ固有

DP スレーブまたはモジュールは、アクセス時に製造元固有のエラーを報告しています。DP スレーブまたはモジュールの製造元のマニュアルを参照してください。

C0

読み取り制約の不一致

モジュールにはデータレコードがありますが、読み取りデータはまだありません。

C1

書き込み制約の不一致

モジュールの同じデータレコードに対する前の書き込み要求が、モジュールによってまだ処理されていません。

C2

リソースビジー

モジュールは、CPU の最大ジョブ数を処理中です。

C3

リソース使用不能

必要な操作リソースが現在、占有されています。

C4

内部一時エラー。ジョブを実行できませんでした。ジョブを繰り返してください。このエラーが頻繁に発生する場合は、工場の電気干渉の原因を調べてください。

C5

DP スレーブまたはモジュールを使用できません。

C6

優先度クラスのキャンセルのため、データレコード転送はキャンセルされました。

C7

DP マスタがウォームまたはコールドリスタートされたため、ジョブはキャンセルされました。

C8 ～ CF

DP スレーブまたはモジュールは、製造元固有のリソースエラーを報告しています。DP スレーブまたはモジュールの製造元のマニュアルを参照してください。

Dx

ユーザ固有

DP スレーブ固有。DP スレーブの説明を参照してください。

81

00 ～ FF

初期コールパラメータのエラー (SFB54 では MODE)。

00

違法な操作モード。

82

00 ～ FF

2 番目のコールパラメータのエラー。

:

:

:

88

00 ～ FF

8 番目のコールパラメータのエラー (SFB54 では TINFO)。

01

正しくない ID シンタックス。

23

数量フレームを超えているか、ターゲット領域が小さすぎます。

24

正しくない ID 範囲。

32

DB/DI 番号がユーザ範囲外です。

3A

DB/DI 番号が、ID 領域 DB/DI について NULL であるか、指定された DB/DI が存在しません。

89

00 ～ FF

9 番目のコールパラメータのエラー (SFB54 では AINFO)。

01

正しくない ID シンタックス。

23

数量フレームを超えているか、ターゲット領域が小さすぎます。

24

正しくない ID 範囲。

32

DB/DI 番号がユーザ範囲外です。

3A

DB/DI 番号が、ID 領域 DB/DI について NULL であるか、指定された DB/DI が存在しません。

8A

00 ～ FF

10 番目のコールパラメータのエラー。

:

:

:

8F

00 ～ FF

15 番目のコールパラメータのエラー。

FE、FF

00 ～ FF

プロファイル固有のエラー。

DPV1 エラーでは、DP マスタは STATUS[4] データを CPU と SFB の両方にわたします。DPV1 エラーがなかった場合、この値は 0 に設定されますが、SFB52 (読み取りレコード) では、以下の例外があります。

  • MLEN が RECORD のターゲット領域の長さより大きかった場合、STATUS[4] は RECORD のターゲット領域の長さを含みます。
  • 実際のデータレコード長が MLEN より小さく、MLEN が RECORD のターゲット領域の長さより小さかった場合、STATUS[4] は MLEN に等しくなります。
  • STATUS[4] が 255 より大きく、255 に設定しなければならなかった場合、STATUS[4] は 0 になります。


ネットワーク接続

In-Sight Explorer GUI リファレンス

In-Sight センサは、工場出荷時に、DHCP サーバを使用している既存のネットワークにインストールできるように設定されています。センサをネットワークケーブルに接続し、電力を供給すると、DHCP サーバによって自動的にセンサが検出、設定され、デフォルトのホスト名を使用してネットワークに接続されます。既存のネットワークにセンサをインストールするときには、DHCP サーバが使用可能かどうか、ネットワーク管理者に問い合わせてください。

注意: DHCP サーバを使用してネットワークにセンサを追加した後、センサの DHCP を無効にして、固定 IP アドレスを割り当てることを強く推奨します。

センサで DHCP サーバを使用しない場合、または In-Sight センサを PC に直接接続する場合は、[センサ/デバイスをネットワークに追加] ダイアログを使用して、センサとの接続を確立します。このインストールには、Microsoft Windows でネットワーク設定の変更が必要になる場合があります。

センサとの通信が確立され、センサにログオンできるようになったら、[ネットワークの設定] ダイアログを使用して、センサのネットワーク設定値を設定または変更することもできます。

複数のサブネットで複数の In-Sight センサを使用している場合は、In-Sight のホストテーブルを使用して、異なるサブネットにある In-Sight センサが互いに通信できるようにし、Explorer のホストテーブルを使用して、In-Sight Explorer が別のサブネットにある In-Sight センサと通信できるようにします。Explorer のホストテーブルで定義されているセンサは、[In-Sight ネットワーク] ペイン、および [In-Sight のファイル] ペインに表示されます。

センサをメンテナンスする場合は、[バックアップ] ダイアログを使用して、ネットワーク設定のアーカイブコピーを PC のハードディスクに格納できます。また、[レポート作成] ダイアログを使用して、ネットワーク上にあるセンサやエミュレータのネットワーク設定が記載された HTML および XML ベースの出力ファイルを生成できます。

関連項目

ネットワークのトラブルシューティング


PC のネットワーク設定 (非 DHCP)

How To...

このセクションでは、DHCP を使用していないネットワークで In-Sight ソフトウェアを実行する In-Sight センサに接続できるように、MicrosoftR; WindowsR; のネットワーク設定を行う方法について説明します。次の手順とサンプルダイアログは、カテゴリビューが有効化されている Windows XP Professional および Windows Vista に固有のものです。

注意: 使用しているネットワークに DHCP サーバがあるかどうかは、ネットワーク管理者に確認してください。

Microsoft Windows XP Professional でネットワークを設定するには

  1. [スタート] をクリックして、[コントロール パネル] ショートカットをクリックし、[コントロール パネル] を開きます。
  2. [ネットワークとインターネット接続] アイコンをクリックして、[ネットワークとインターネット接続] ダイアログを開きます。
  3. [ネットワーク接続] アイコンをクリックして、[ネットワーク接続] ダイアログを開きます。
  4. [ローカル エリア接続] アイコンを右クリックし、[プロパティ] をクリックして、[ローカル エリア接続のプロパティ] ダイアログを開きます。

  5. [全般] タブを選択します。
  6. [インターネット プロトコル (TCP/IP)] チェックボックスをオンにします。
  7. [インターネット プロトコル (TCP/IP)] をハイライトし、[プロパティ] をクリックして、[インターネット プロトコル (TCP/IP) のプロパティ] ダイアログを開きます。
  8. [次の IP アドレスを使う] ラジオボタンをクリックします。グレーアウトされていた [IP アドレス]、[サブネット マスク]、[デフォルト ゲートウェイ]、[優先 DNS サーバー]、および [代替 DNS サーバー] フィールドがアクティブになります。

  9. 適切な IP アドレスを入力します。
  10. 適切なサブネットマスクを入力します。サブネットマスクは、PC の IP アドレスのどの部分がネットワークを示し、どの部分がホストを示すかを定義します。IP アドレスのネットワーク部分は、同じサブネット上のすべてのホストに共通であり、残りの部分はそれぞれのホストに固有のものが割り当てられます。

注意: 優先 DNS サーバおよび代替 DNS サーバについては、ネットワーク管理者に確認してください。

  11. [OK] をクリックして、[インターネット プロトコル (TCP/IP) のプロパティ] ダイアログを閉じます。
  12. [閉じる] をクリックして、[ローカルエリア接続のプロパティ] ダイアログを閉じ、プロンプトが表示されたら、Windows を再起動します。

Microsoft Windows Vista でネットワークを設定するには

  1. [スタート] をクリックして、[コントロール パネル] ショートカットをクリックし、[コントロール パネル] を開きます。
  2. [ネットワークとインターネット] アイコンをクリックして、[ネットワークとインターネット] ウィンドウを開きます。
  3. [ネットワークと共有センター] アイコンをクリックして、[ネットワークと共有センター] ウィンドウを開きます。左側のペインで、[ネットワーク接続の管理] をクリックして、[ネットワーク接続] ウィンドウを開きます。
  4. [ローカル エリア接続] アイコンを右クリックし、[プロパティ] をクリックして、[ローカル エリア接続のプロパティ] ダイアログを開きます (管理者のパスワードまたは確認を求められた場合は、パスワードを入力するか、確認を行います)。

  5. [ネットワーク] タブを選択します。
  6. このダイアログの [この接続は次の項目を使用します] 部分で、[インターネット プロトコル バージョン 4 (TCP/IPv4)] チェックボックス、または [インターネット プロトコル バージョン 6 (TCP/IPv6)] チェックボックスをオンにします。
  7. [インターネット プロトコル バージョン 4 (TCP/IPv4)] または [インターネット プロトコル バージョン 6 (TCP/IPv6)] をハイライトし、[プロパティ] をクリックして、[インターネット プロトコル (TCP/IP) のプロパティ] ダイアログを開きます。
  8. 開いた [インターネット プロトコル (TCP/IP) のプロパティ] ダイアログに応じて、次の操作を行います。
    • インターネット プロトコル バージョン 4 (TCP/IPv4) のプロパティの場合: [次の IP アドレスを使用する] ラジオボタンをクリックします。グレーアウトされていた [IP アドレス]、[サブネット マスク]、および [デフォルト ゲートウェイ] フィールドがアクティブになります。
    • インターネット プロトコル バージョン 6 (TCP/IPv6) のプロパティの場合: [次の IPv6 アドレスを使う] ラジオボタンをクリックします。グレーアウトされていた [IPv6 アドレス]、[サブネット プレフィックスの長さ]、および [デフォルト ゲートウェイ] フィールドがアクティブになります。

  9. 適切な IP アドレスを入力します。
  10. 適切なサブネットマスク、またはサブネットプレフィックスの長さを入力します。
    • インターネット プロトコル バージョン 4 (TCP/IPv4) のプロパティの場合: サブネットマスクは、PC の IP アドレスのどの部分がネットワークを示し、どの部分がホストを示すかを定義します。IP アドレスのネットワーク部分は、同じサブネット上のすべてのホストに共通であり、残りの部分はそれぞれのホストに固有のものが割り当てられます。
    • インターネット プロトコル バージョン 6 (TCP/IPv6) のプロパティの場合: サブネットプレフィックスの長さは、最初の共有されるビット (IP アドレスでネットワークを表す部分) の桁数でサブネットマスクを定義する方法で、アドレスの左側から数えます。例えば、255.0.0.0 のサブネットマスクでは最初の 8 桁が共有ビット (255。2 進法では 11111111) であり、サブネットプレフィックスの長さでは /8 で表されます。

注意: 優先 DNS サーバおよび代替 DNS サーバについては、ネットワーク管理者に確認してください。

  11. [OK] をクリックして、[インターネット プロトコル (TCP/IP) のプロパティ] ダイアログを閉じます。
  12. [閉じる] をクリックして、[ローカル エリア接続のプロパティ] ダイアログを閉じます。


リンクローカル IP アドレス

リンクローカル IP アドレス (自動プライベート IP アドレスとも呼ばれます) の使用目的は、すぐに使用できる一意の動的または固定 IP アドレスがないときに、一時的な IP アドレスを自動的に提供することです。リンクローカル IP アドレスは 169.254.0.0/16 の範囲です。

リンクローカル機能は、4.1.0 以降のファームウェアを使用して Ethernet 構成をサポートしている In-Sight デバイスでのみ使用できます。必要な場合は、In-Sight デバイスが自動的にリンクローカル IP アドレスを設定するので、構成を行わなくても、PC やネットワークに接続、または接続を維持することができるようになります。リンクローカル IP アドレスを使用する例は次のとおりです。

  • 新規デバイスを静的ネットワークに接続する。
  • 新規デバイスを PC に直接接続する。
  • 静的ネットワークに、既に使用されている IP アドレスを持つデバイスを接続する。
  • 動的 IP アドレスを管理していた DHCP サーバで障害が発生したときに、デバイスへの接続を維持する。
  • デバイスを DHCP ネットワークから静的ネットワークへ移動する。
注意:
  • 新しい In-Sight Ethernet デバイスは、工場出荷時に、DHCP サーバを使用している既存のネットワークにインストールできるように設定されています。
  • ルータはリンクローカル IP アドレスとの間でデータをやり取りできないので、[センサ/デバイスをネットワークに追加] ダイアログを使用してリンクローカル IP アドレスを動的または固定 IP アドレスに置き換えることを強く推奨します。


ネットワークのトラブルシューティング

In-Sight Explorer のトラブルシューティング

In-Sight Explorer ソフトウェアのインストール

センサの初期設定

別のネットワークへのセンサの移行

PC がセンサとは別のサブネットにある

PC に直接接続されているセンサに接続できない

ハブまたはスイッチに直接接続されているセンサに接続できない

In-Sight センサが [In-Sight ネットワーク] ペインに表示されない

ローカルエミュレータに接続できない

In-Sight Explorer によって検出される PC の IP アドレスが正しくない

IP アドレスとサブネットマスクに 2 桁しか入力できない

使用可能なポート

センサのファームウェアをアップデートできない

ファイルを転送できない

センサに書き込めない

重要: センサの設定を工場出荷時のデフォルトにリセットすると、[センサ/デバイスをネットワークに追加] ダイアログによって、proc.set ファイルが上書きされます。

In-Sight Explorer ソフトウェアのインストール

  • PC に In-Sight ソフトウェアをインストールするときには、ローカルの管理者権限があることを確認してください。
  • すべてのファイアウォールとウィルス対策ソフトウェアを無効にしてください。

センサの初期設定

IP アドレスを割り当てます。

In-Sight センサは、工場出荷時には DHCP が有効になっています。ご使用のネットワークに DHCP サーバがない場合は、[センサ/デバイスをネットワークに追加] ダイアログを使用して、センサに固定 IP アドレスを割り当ててください。

注意: DHCP は、ネットワークに DHCP サーバがある場合のみ使用してください。既存のネットワークにセンサをインストールするときには、DHCP サーバが使用可能かどうか、ネットワーク管理者に問い合わせてください。

別のネットワークへのセンサの移行

すべてのセンサをセットアップした後で、IP アドレスを新しいネットワーク用に変更する必要がある場合 (生産ラインに設置する場合など) は、[センサ/デバイスをネットワークに追加] ダイアログを使用して、センサのネットワーク設定を変更してください。

注意: センサの IP アドレス変更作業は、変更前のネットワーク上で実施する必要があります。

PC がセンサとは別のサブネットにある

センサが、In-Sight Explorer を実行している PC とは異なるサブネット上で動作するように設定されている場合は、センサのホスト名と IP アドレスを Explorer のホストテーブルに入力しないと、そのセンサは [In-Sight ネットワーク] に表示されません。

PC に直接接続されているセンサに接続できない

正しい種類のネットワークケーブルを使用していることを確認します。

In-Sight 5000 シリーズのほとんどのセンサはネットワークケーブルの極性自動検出機能を備えているため、センサと PC を直接接続する際に、ストレートケーブルまたはクロスケーブルのどちらを使用しても構いません。自動検出機能を持たないセンサの場合は、クロスケーブルを使用するか、ストレートケーブルとクロスカプラを併用する必要があります。ご使用のセンサの正しい接続方法を調べるには、センサの背面の製品番号ラベルを確認してください。製品番号が P/N 800-5828 の場合、センサには自動検出機能がありません。

PC がネットワークに接続されていることを確認します。

センサのネットワークケーブルを PC のネットワークカードに接続すると、画面右下の通知領域にネットワーク接続アイコンが表示されます。ネットワーク接続アイコンが表示されない場合は、ネットワークケーブルがしっかりと挿入されていて、良好な状態であることを確認してください。

PC の Microsoft メディア検出機能を無効にします。

ネットワークインタフェースがリンク状態であるかどうかを自動的に検知するメディア検出機能が有効な場合、In-Sight センサとの通信が正しく行えないことがあります。ハブまたはスイッチを使用するか、PC のメディア検出機能を無効にすることを推奨します。詳細については、Microsoft サポート技術情報 239924 を参照してください。

ハブまたはスイッチに直接接続されているセンサに接続できない

注意: ネットワーキングの方法としては、スイッチの方を推奨します。

  • ネットワークケーブルと電源ケーブルがスイッチに正しく接続されていて、良好な状態であることを確認します。ネットワークケーブルをスイッチのイーサネットポートに挿入すると、緑色のライトが点灯して、そのポートで接続されたことを示します。
  • センサ背面の 24VDC LED と ENET LED が点灯していることを確認します。
  • ポートブロッキングやフィルタリングなど、ネットワークスイッチのオプション機能が有効になっていないことを確認します。

In-Sight センサが [In-Sight ネットワーク] ペインに表示されない

注意:
  • 次の各手順を完了した後、[表示] メニューの [更新] をクリックして、[In-Sight ネットワーク] を更新してください。
  • 次の方法で問題が解決しない場合は、[センサ/デバイスをネットワークに追加] ダイアログを使用して、センサのネットワーク設定の再設定を行ってください。

センサに電源が供給されていることと、ネットワーク通信が機能していることを確認します。

電源ケーブルとイーサネットケーブルがセンサにしっかりと接続されていることを確認します。センサが電力を受け取っていることと、ネットワーク接続が検出されていることを確認するには、センサ背面の 24VDC LED と ENET LED が点灯していることを確認してください。

センサの IP アドレスが正しく設定されていることを確認します。

デフォルトの Microsoft ネットワークの基本の IP アドレスは、192.168.0.ｘ です。x は 1 ～ 254 の番号です。0 と 255 は予約されているので使用しないでください。

センサのサブネットマスクが正しく設定されていることを確認します。

IP アドレスが 192.168.0.x の場合、デフォルトのサブネットマスクは 255.255.255.0 です。サブネットマスク中の 255 が設定されたオクテットは、すべてのデバイスで同じ値を共有しなければならないことを意味します。また、サブネットマスク中の 0 が設定されたオクテットは、デバイスごとに異なる値を使用しなければならないことを意味します。例えば、255.255.255.0 のサブネットマスクを使用するとき、PC の IP アドレスが 192.168.1.24 でセンサの IP アドレスが 192.168.0.98 の場合、3 番目のオクテットが一致しないため PC はセンサを自動認識できません。

センサの IP アドレスに ping して、センサがネットワーク上で認識されているかどうかを確認します。

コマンドプロンプトを開いて、センサの IP アドレスに ping を打ちます。例えば、IP アドレスが 192.168.0.1 のセンサに ping を発行するには、ping 192.168.0.1 というコマンドを入力します。Request timed out というメッセージが表示された場合、指定した IP アドレスはネットワーク上で検出されないことを意味します。

注意: センサの電源を切って、ほかのデバイスが同じ IP アドレスを使用していないかどうか確認しなければならない場合があります。IP アドレスは、ネットワーク上で一意でなければなりません。

ローカルエミュレータに接続できない

Error 6003: エミュレータを起動できませんでした。

エラーメッセージの詳細

In-Sight Explorer によって検出される PC の IP アドレスが正しくない

  1. In-Sight Explorer を開きます。
  2. エミュレータに接続します。
  3. [センサ] メニューから [ネットワークの設定] を選択します。
  4. エミュレータの IP アドレスを確認します。
  • IP アドレスが 127.0.0.1 の場合、ネットワークカードが故障している可能性があります。
  • IP アドレスが正しくない場合、In-Sight Explorer が別のネットワークカード (無線 LAN カードなど) を検出した可能性があります。In-Sight Explorer は、PC の起動時に使用されたネットワークカードの IP アドレスを使用します。PC に複数のネットワークカードが装着されている場合は、ネットワークカードのバインド順を変更しなければならないことがあります。In-Sight は、リストの最初にある IP アドレスを使用します。
Closed Windows XP でカテゴリ表示を有効にして、ネットワークカードのバインド順を変更するには
  1. [スタート] をクリックして、[コントロール パネル] ショートカットをクリックします。
  2. [ネットワークとインターネット接続] アイコンをクリックします。
  3. [ネットワーク接続] アイコンをクリックして、[ネットワーク接続] ウィンドウを開きます。
  4. [詳細設定] メニューから [詳細設定] をクリックして、[アダプタとバインド] タブを選択します。
  5. ダイアログの [接続] 部分で、移動する必要のあるネットワークカードを選択し、矢印ボタンを使用してネットワークカードをリストの一番上へ移動します。
  6. [OK] をクリックして、ダイアログを閉じます。順序を変更した場合は、PC を再起動しなければならないことがあります。
Closed Windows Vista でカテゴリ表示を有効にして、ネットワークカードのバインド順を変更するには
  1. [スタート] をクリックして、[コントロール パネル] ショートカットをクリックします。
  2. [ネットワークとインターネット] アイコンをクリックします。
  3. [ネットワークと共有センター] アイコンをクリックして、[ネットワークと共有センター] ウィンドウを開きます。左側のペインで、[ネットワーク接続の管理] をクリックします。
  4. <ALT> キーを押して、[詳細] メニューを表示します。[詳細] メニューの [詳細設定] をクリックします (管理者のパスワードまたは確認を求められた場合は、パスワードを入力するか、確認を行います)。
  5. [アダプタとバインド] タブを選択します。
  6. ダイアログの [接続] 部分で、変更の対象となる接続を選択します。
  7. ダイアログの [<接続名> のバインド] 部分で、移動する必要のあるネットワークカードを選択し、矢印ボタンを使用してネットワークカードをリストの一番上へ移動します。
  8. [OK] をクリックして、ダイアログを閉じます。

IP アドレスとサブネットマスクに 2 桁しか入力できない

これは、PC の画面設定の影響です。

Closed Windows XP を使用し、カテゴリ表示で修正を行うには
  1. [スタート] をクリックして、[コントロール パネル] ショートカットをクリックします。
  2. [デスクトップの表示とテーマ] アイコンをクリックします。
  3. [画面] アイコンをクリックして、[画面のプロパティ] ダイアログを開きます。
  4. [設定] タブを選択して、[詳細設定] ボタンをクリックします。
  5. [全般] タブを選択します。
  6. [DPI 設定] が [通常のサイズ (96 DPI)] に設定されていることを確認します。
  7. [OK] をクリックして、ダイアログを閉じます。
Closed Windows Vista を使用し、カテゴリ表示で修正を行うには
  1. [スタート] をクリックして、[コントロール パネル] ショートカットをクリックします。
  2. [デスクトップのカスタマイズ] アイコンをクリックします。
  3. [個人設定] をクリックして、[個人設定] ウィンドウを開きます。
  4. 左側にあるペインで、[フォント サイズ (DPI) の調整] をクリックします (管理者のパスワードまたは確認を求められた場合は、パスワードを入力するか、確認を行います)。
  5. [DPI スケール] ダイアログで、DPI が [既定のスケール (96 DPI) - より多くの情報] に設定されていることを確認します。
  6. [OK] をクリックして、ダイアログを閉じます。
  7. DPI スケールを変更した場合は、PC を再起動します。

使用可能なポート

有効なポート番号は、In-Sight 通信のために予約されているポートを除いて、1 ～ 65535 の未使用の任意の番号です。PC のサービスで予約されているポート番号との競合を避けるために、In-Sight エミュレータの設定では、必ず 3000 (デフォルト) 以降のポート番号を割り当ててください。

センサのファームウェアをアップデートできない

  • ほとんどのファームウェアアップデート問題は、ファイアウォールに原因があります。すべてのファイアウォールが無効になっていることを確認してください。
  • 工場でセンサにインストールされたファームウェアのバージョンとアップグレードするバージョンによっては、ファームウェアアップグレードキーが必要になる場合があります。

ファイルを転送できない

別のアプリケーションが FTP ポートを制御していないかどうか確認します。

  1. In-Sight Explorer を閉じます。
  2. コマンドプロンプトを開いて、netstat -a というコマンドを入力します。
  3. ポート 21 でリスンしているアクティブな TCP 接続 (例: 「TCP 0.0.0.0:21」) を見つけます。これで、何らかのアプリケーション (FTP サーバなど) がデフォルトの FTP ポート 21 を使用していることがわかることがあります。その場合は、そのアプリケーションを停止するか、ポート番号を変更する必要があります。

ポート 21 を使用している可能性のある一般的なアプリケーションは、Windows のインターネットインフォメーションサービス (IIS) です。IIS がこのポートを使用していないことを Windows XP および Windows Vista で確認するには、次の手順に従って操作します。

Closed Windows XP で、カテゴリ表示が有効な場合
  1. [スタート] をクリックして、[コントロール パネル] ショートカットをクリックし、[コントロール パネル] を開きます。
  2. [パフォーマンスとメンテナンス] アイコンをクリックします。
  3. [管理ツール] アイコンをクリックします。
  4. [インターネット インフォメーション サービス (IIS)] アイコンをダブルクリックします。
  5. IIS ウィンドウで、ローカルコンピュータを展開します。
  6. [FTP サイト] ディレクトリを展開します。
  7. デフォルトの FTP サイトを右クリックし、[プロパティ] をクリックします。
  8. [TCP ポート] が 21 でないことを確認します。21 の場合は、22 など未使用のポートに変更します。
Closed Windows Vista で、カテゴリ表示が有効な場合
  1. [スタート] をクリックして、[コントロール パネル] ショートカットをクリックし、[コントロール パネル] を開きます。
  2. [システムとメンテナンス] アイコンをクリックします。
  3. [管理ツール] アイコンをクリックします。
  4. [インターネット インフォメーション サービス (IIS) マネージャ] アイコンをダブルクリックします。(管理者のパスワードまたは確認を求められた場合は、パスワードを入力するか、確認を行います)。
  5. [インターネット インフォメーション サービス (IIS) マネージャ] ウィンドウで、ローカルコンピュータを展開します。
  6. [FTP サイト] ディレクトリを展開します。
  7. デフォルトの FTP サイトを右クリックし、[プロパティ] をクリックします。
  8. [TCP ポート] が 21 でないことを確認します。21 の場合は、22 など未使用のポートに変更します。

センサに書き込めない

これは、ネットワーク内の変更によって発生することがあります。デバイスに ping を打つことはできても、WriteDevice または WriteImageFTP 関数ではデバイスに書き込めない場合があります。

  • ネットワーク上の DNS (Domain Name System) サーバがデバイスのホスト名を解決できていない可能性があります。その可能性があるときには、ホスト名の代わりに IP アドレスを入力してみてください。
  • WriteImageFTP 関数を設定するときには、ユーザ名とパスワードを入力して、FTP サーバにログオンします。In-Sight Explorer ソフトウェアには、FTP サーバが組み込まれています。この FTP サーバは、In-Sight Explorer が起動され、エミュレータが有効にされている場合に機能します。In-Sight Explorer の FTP サーバを使用する場合、デフォルトのユーザ名は admin であり、そのパスワードは未設定です。

関連項目

#ERR

エラーメッセージ

ファイアウォール

WriteImageFTP 関数の設定方法


ファイアウォール

In-Sight Explorer トラブルシューティング

多くのネットワークトポロジでは、ネットワーク上のさまざまなデバイスとやり取りするデータの種類を制御するために、ファイアウォールが実装されています。デフォルトの設定では、一部のファイアウォールで、In-Sight Explorer の動作とネットワークの In-Sight センサの検出が妨げられる場合があります。企業のファイアウォールによって保護されている場合、またはインターネットに接続していない場合は、Windows のファイアウォールを無効にすることができます。

  • In-Sight ポート

  • Microsoft Windows ファイアウォール設定

    • Windows 7
    • Windows XP

In-Sight ポート

In-Sight の通信には次のポートが使用されます。

ポート番号 | サービス
TCP 21 | FTP
TCP 23 | Telnet
UDP 68 | DHCP (In-Sight ビジョンシステムのみ)
TCP 80 | HTTP
TCP 502 | Modbus
TCP 1069 | In-Sight プロトコル
UDP 1069 | In-Sight Discovery
TCP 1070 | [マシンステータス] データ
TCP 1212 | アップグレードポート (PC のみ)
UDP 2222 | EtherNet/IP
TCP 5753 | 監査メッセージサーバ
TCP 44818 | EtherNet/IP
TCP 50000 | DataChannel

Microsoft Windows ファイアウォール設定

In-Sight Explorer および In-Sight OPC Server は Windows ファイアウォールプログラムの例外一覧に自動的に追加されません。Windows ファイアウォールプログラムがアプリケーションの一部をブロックしたことを示す警告ダイアログが表示される場合があります。プログラムを追加するには、警告ダイアログからアクセスを許可するか、以下を Windows ファイアウォールの例外一覧に手動で追加します。In-Sight Explorer については、次のアプリケーションを追加します。

  • (In-Sight Explorer フォルダ内)\In-Sight Explorer.exe
  • (In-Sight Explorer フォルダ内)\Emulator\In-Sight.exe

In-Sight OPC サーバについては、次のアプリケーションを追加します。

  • (In-Sight OPC サーバフォルダ内)\OPCInSight.exe

Windows 7

Windows のファイアウォールを無効にするには、次の設定を行います。

  1. [スタート] メニューで [コントロールパネル]、[システムとセキュリティ]、[Windows ファイアウォール] の順にクリックします。
  2. [通知設定の変更] をクリックします。
  3. 各 [Windows ファイアウォールを無効にする (推奨されません)] ラジオボタンを選択します。
  4. [OK] ボタンをクリックして、選択を確定します。

必要に応じて、以下の手順を実行して、外部機器からローカル PC のエミュレータに接続できるようにし、In-Sight ビジョンシステムを FTP サーバとして有効化して、Telnet サービスを使用可能にします。

  1. [スタート] メニューで [コントロールパネル]、[システムとセキュリティ]、[Windows ファイアウォール] の順にクリックします。
  2. [Windows ファイアウォールを介したプログラムまたは機能を許可する] をクリックします。
  3. [設定の変更] ボタンをクリックします。
  4. [別のプログラムの許可...] ボタンをクリックします。
  5. [参照...] ボタンをクリックして、In-Sight.exe 実行可能ファイルに移動します。デフォルトでは、このファイルは C:\Program Files (x86)\Cognex\In-Sight\In-Sight Explorer 4.6.0\Emulator\In-Sight.exe にあります。
  6. [参照] ダイアログで [開く] をクリックします。
  7. [プログラムの追加] ダイアログの [追加] ボタンをクリックします。
  8. [許可されたプログラムおよび機能] の表で、In-Sight.exe を使用するドメインに対応するチェックボックスをオンにします。
  9. [OK] をクリックします。

Windows XP

Windows のファイアウォールを無効にするには、次の設定を行います。

  1. [スタート] メニューから Windows のコントロールパネルを開き、クラシック表示にします。
  2. [Windows ファイアウォール] をダブルクリックします。
  3. [Windows ファイアウォール] ダイアログの [全般] タブで [無効] をクリックします。

ファイアウォールを有効にしたままネットワーク上の In-Sight センサにアクセスするには、次の設定を行います。

  1. [スタート] メニューから Windows のコントロールパネルを開き、クラシック表示にします。
  2. [Windows ファイアウォール] をダブルクリックします。
  3. [詳細設定] タブをクリックします。
  4. [ネットワーク接続の設定] 領域の [設定] ボタンをクリックし、[詳細設定] ダイアログを開きます。

注意: このボタンを無効にすると、Windows のファイアウォールは有効化されません。ファイアウォールを有効にするには、[全般] タブを選択し、[有効] をクリックします。

  5. [サービス] タブで、[追加] をクリックします。
  6. [サービスの説明] フィールドに、「In-Sight Explorer Network Browsing」と入力します。
  7. [名前または IP アドレス] フィールドに「localhost」と入力します。
  8. [このサービスの外部ポート番号] と [このサービスの内部ポート番号] の両方に、「1069」と入力します。
  9. [UDP] オプションをオンにします。
  10. [OK] をクリックします。

ファームウェアアップデートを行う必要がある場合は、次の手順を実行します。

  1. [スタート] メニューから Windows のコントロールパネルを開き、クラシック表示にします。
  2. [Windows ファイアウォール] をダブルクリックします。
  3. [詳細設定] タブをクリックします。
  4. [ネットワーク接続の設定] 領域の [設定] ボタンをクリックし、[詳細設定] ダイアログを開きます。

注意: このボタンを無効にすると、Windows のファイアウォールは有効化されません。ファイアウォールを有効にするには、[全般] タブを選択し、[有効] をクリックします。

  5. [サービス] タブで、[追加] をクリックします。
  6. [サービスの説明] フィールドに、「In-Sight Explorer Firmware Update」と入力します。
  7. [名前または IP アドレス] フィールドに「localhost」と入力します。
  8. [このサービスの外部ポート番号] と [このサービスの内部ポート番号] の両方に、「1212」と入力します。
  9. [OK] をクリックします。
  10. [詳細設定] ダイアログで、[FTP サーバー] チェックボックスを ON にします。
  11. [サービス設定] ダイアログが表示されたら、[OK] をクリックします。

必要に応じて、以下の手順を実行して、外部機器からローカル PC のエミュレータに接続できるようにし、In-Sight ビジョンシステムを FTP サーバとして有効化して、Telnet サービスを使用可能にします。

  1. [スタート] メニューから Windows のコントロールパネルを開き、クラシック表示にします。
  2. [Windows ファイアウォール] をダブルクリックします (カテゴリ表示の場合は、[セキュリティ センター]、[Windows ファイアウォール] の順にクリックします)。
  3. [詳細設定] タブをクリックします。
  4. [ネットワーク接続の設定] 領域の [設定] ボタンをクリックし、[詳細設定] ダイアログを開きます。

注意: このボタンを無効にすると、Windows のファイアウォールは有効化されません。ファイアウォールを有効にするには、[全般] タブを選択し、[有効] をクリックします。

In-Sight Explorer Emulator の有効化

  5. [サービス] タブで、[追加] をクリックします。
  6. [サービスの説明] フィールドに、「In-Sight Explorer Emulator」と入力します。
  7. [名前または IP アドレス] フィールドに「localhost」と入力します。
  8. [このサービスの外部ポート番号] と [このサービスの内部ポート番号] の両方に、「1069」と入力します。
  9. [OK] をクリックします。

FTP Server の有効化

  10. [詳細設定] ダイアログで、[FTP サーバー] チェックボックスを ON にします。
  11. [サービス設定] ダイアログが表示されたら、[OK] をクリックします。

Telnet サービスの有効化

  12. [サービス] タブで、[追加] をクリックします。
  13. [サービスの説明] フィールドに、「In-Sight Explorer Emulator Telnet」と入力します。
  14. [名前または IP アドレス] フィールドに「localhost」と入力します。
  15. [このサービスの外部ポート番号] と [このサービスの内部ポート番号] の両方に、「23」と入力します。
  16. [OK] をクリックします。


Caliper ツールの使用

In-Sight Explorer 関数リファレンス

Caliper ツールを使用するには、次の手順が必要です。

  1. [Caliper] ダイアログを開く
  2. Caliper ツールの入力を設定する
  3. 画像領域を設定する
  4. コントラスト得点付け方法を設定する
  5. サイズ得点付け方法を設定する
  6. ストラドル得点付け方法を設定する
  7. ポジション得点付け方法を設定する

この例では、Caliper ツールを使用して、高コントラストで、画像領域の中心近くにあり、画像領域の中心にまたがり、エッジ距離が予想された距離に近いエッジペアを検出します。

1. [Caliper] ダイアログを開く

  1. スプレッドシート内の空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。
  2. [関数の挿入] ダイアログの左側で、ツールカテゴリの [ビジョンツール] リストを展開します。
  3. [エッジ] ツールカテゴリを選択します。
  4. 関数リストから Caliper 関数を選択して、[OK] ボタンを押すか、関数をダブルクリックします。

  5. [Caliper] ダイアログが表示されます。

2. Caliper ツールの入力を設定する

  1. [エッジモード] を [エッジペア] に設定します。
  2. この例では、[第1エッジ] 極性を [黒→白] に設定します。
  3. [第2エッジ] 極性を [白→黒] に設定します。
  4. [エッジ距離] をエッジペアのエッジ間の予想される距離に設定します。
  5. [表示] を [入力と結果のグラフィックス] に変更します。
  6. [OK] ボタンをクリックします。

3. 画像領域を設定する

  1. 以前にスプレッドシートに挿入したキャリパエッジ構造体を右クリックします。
  2. [セルのグラフィックス] を選択します。
  3. 調べるエッジペアが含まれるように領域を調整します。
  4. 領域内をダブルクリックして、スプレッドシートに戻ります。

4. コントラスト得点付け方法を設定する

  1. スプレッドシート内のキャリパエッジ構造体をダブルクリックします。
  2. [得点付け方法] タブをクリックします。デフォルトのコントラスト得点付け方法エディタが表示されています。
  3. 上部のスライダを、予想されるエッジコントラストの下に設定します。予想されるエッジコントラストは、次の図に示すとおり、エッジペアの平均です。ほかのスライダを調整して、目的に合った得点計算を生成できます。ここに示す設定では、平均コントラストが 84 を超えるエッジペアを 100 点として、コントラストがゼロに近づくほど得点が下がります。
  4. [OK] をクリックします。
  5. エッジペアの得点に注意してください。得点は、コントラスト得点付け方法にのみ依存しています。

5. サイズ得点付け方法を設定する

  1. スプレッドシート内のキャリパエッジ構造体をダブルクリックします。
  2. [得点付け方法] タブをクリックします。
  3. [得点付け関数の追加] ドロップダウンリストで [サイズ] を選択し、[追加] ボタンをクリックします。サイズ得点付け方法エディタが表示されます。
  4. この例では、サイズが [エッジ距離] の設定より大きいか小さいかではなく、予想されるエッジサイズとの差だけに着目します。[左右対称モードを使用する] チェックボックスをオンにします。
  5. 差が 5 ピクセルのエッジペアが 100 点となり、差が 25 ピクセルになるまでは差が大きくなるほど得点が下がり、25 ピクセルに達したときは 0 点になるように、スライダを調整します。
  6. [OK] ボタンをクリックします。
  7. エッジペアの得点に注意してください。ここでは、得点は、コントラスト得点付け方法とサイズ得点付け方法の幾何平均に依存しています。

6. ストラドル得点付け方法を設定する

  1. スプレッドシート内のキャリパエッジ構造体をダブルクリックします。
  2. [得点付け方法] タブをクリックします。
  3. [得点付け関数の追加] ドロップダウンリストで [ストラドル] を選択し、[追加] ボタンをクリックします。編集可能なパラメータがないことを示す注意が表示されます。
  4. [Caliper] ダイアログは開いたままにしておきます。

ストラドル得点付け方法では、エッジペアが画像領域の中心にまたがる場合に 100 点、またがらない場合は 0 点となります。

ここでは、得点は、コントラスト得点付け方法、ストラドル得点付け方法およびサイズ得点付け方法の幾何平均に依存しています。

7. ポジション得点付け方法を設定する

  1. [得点付け関数の追加] ドロップダウンリストで [ポジション] を選択し、[追加] ボタンをクリックします。ポジション得点付け方法エディタが表示されます。
  2. この例では、画像領域におけるエッジペアの中心の位置だけに着目します。スケーリングを処理する必要性は想定していません。[エッジの中心] と [中心領域] が選択されていることを確認します。
  3. 中心から 5 ピクセル以内のエッジペアが高得点となり、中心からの距離が 20 ピクセルになるまでは中心から離れるほど得点が下がり、20 ピクセルに達すると 0 点になるようにスライダを調整します。
  4. [OK] ボタンをクリックします。
  5. エッジペアの得点に注意してください。ここでは、得点は、コントラスト得点付け方法とサイズ得点付け方法の幾何平均に依存しています。

この例の得点は、コントラスト、サイズ、ポジション、およびストラドルの得点の幾何平均 (コントラストの得点×サイズの得点×ポジションの得点×ストラドルの得点の 4 乗根) になります。

関連項目

Caliper ツール


ExtractColor ツールの使用

In-Sight Explorer 関数リファレンス

色を抽出するには、次の手順を実行します。

  1. [TrainExtractColor] ダイアログを開く
  2. カラーモデルを追加する
  3. カラーモデルにカラーを加算または減算する
  4. カラー許容値を調整する
  5. 複数のカラーモデルを使用する
  6. 画像のマーキング
  7. ExtractColor 関数を追加する

この例では、TrainExtractColor 関数および ExtractColor 関数を使用して、ピクセル数に基づき、画像内の対象物が赤いリンゴであるか、オレンジであるかを判定します。

1. [TrainExtractColor] ダイアログを開く

  1. スプレッドシート内の空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。
  2. [関数の挿入] ダイアログの左側で、ツールカテゴリの [ビジョンツール] リストを展開します。
  3. [カラー] ツールカテゴリを選択します。
  4. 関数リストから TrainExtractColor 関数を選択して、[OK] ボタンを押すか、関数をダブルクリックします。

  5. [TrainExtractColor] ダイアログが表示されます。

2. カラーモデルを追加する

カラーモデルは、画像内の対象物と背景を定義するために使用するカラーの集合です。各カラーモデルは 3 次元色空間を表しています。カラーモデルに対し、取り込む対象物および背景のカラーの RGB 値を加算または減算します。2 つ以上のカラーモデルを使用している場合、カラーモデルは結果に対してランク付けされます。

  1. [カラーモデル] の下にある [新規モデル] をクリックします。デフォルト名 [モデル_1] の新しいカラーモデルが [ライブラリ] に追加されます。
  2. カラーモデルを追加したら、必要に応じて名前を変更します。カラーモデルの名前は、該当するカラーモデルをハイライトし、[ライブラリ] リストの上にある名前変更ボタン [image] をクリックすることで、いつでも変更できます。
  3. 必要に応じて、カラーモデルをハイライトし、削除ボタン [image] をクリックして、カラーモデルを削除できます。

3. カラーモデルにカラーを加算または減算する

  1. 変更するカラーモデルの名前をクリックして選択します。
  2. ダイアログの [登録] セクションで、カラーの定義に使用する対象領域 (ROI) の形状として、領域、円、ドーナツ領域、ポリゴン、フリーハンドのいずれかを選択します。この例では、円 ROI を使用します。
  3. [新しいカラーの加算] ボタンをクリックして、対話型グラフィックスモードに切り替え、加算する RGB 値が含まれるように、画像内で円 ROI の位置を決めます。

  4. ROI を設定したら、[ジョブの編集] ツールバーで [OK] ボタンをクリックします。カラーモデルに加算されたカラーには、定義した ROI 内のピーク RGB 値が含まれます。
  5. カラーモデルに含めない色がある場合は、[新しいカラーの減算] ボタンをクリックして、前述のプロセスを繰り返します。この例では、影と白い背景を減算します。
  6. 上または下方向ボタンを使用して、カラーモデル内の色の適用順序を変更できます。リストの上にあるカラーから順に検査に使用されます。

4. カラー許容値を調整する

[画像マーク] に、対象物がどの程度検出されるかが示されています。[カラー許容値] セクションの [黒]、[白]、[ハイライト]、および [色相] の設定値を使用して、感度を増減することができます。

[黒] | [黒] 設定値を大きくすると、黒 (0,0,0) の方向に色空間が加算されます。
[白] | [白] 設定値を大きくすると、白 (255,255,255) の方向に色空間が加算されます。
[ハイライト] | [ハイライト] 設定値を大きくすると、最初の色の位置から白 (255,255,255) の方向に色空間が加算されます。
[色相] | [色相] 設定値を大きくすると、色の 3 次元「ボックス」が色空間の 3 方向に大きくなります。

[カラー許容値] 設定を変更すると、リンゴの画像内で検出されるピクセルの数が増えることを確認してください。

5. 複数のカラーモデルを使用する

  1. 2 番目のカラーモデルをライブラリに追加します。1 番目のカラーモデルでは、赤いリンゴの画像内で検出される赤いピクセルをカウントします。2 番目のカラーモデルは、オレンジの画像内のピクセルを検出するように設定します。
  2. カラーの定義に使用する ROI の形状として、領域、円、ドーナツ領域、ポリゴン、フリーハンドのいずれかを選択します。この例では、円 ROI を使用します。
  3. [新しいカラーの加算] ボタンをクリックして、対話型グラフィックスモードに切り替え、加算する RGB 値が含まれるように、画像内で円 ROI の位置を決めます。この例では、オレンジの色が均一なので、円にオレンジの大半を含めます。
  4. ROI を設定したら、[ジョブの編集] ツールバーで [OK] ボタンをクリックします。
  5. 最後に、オレンジの大半がハイライトされるように [カラー許容値] 設定を調整します。

6. 画像のマーキング

ダイアログの下部にある [画像マーク] ボタンをクリックすると、カラーおよびカラーモデルを追加したときに画像内の何をハイライトするかを設定できます。選択した設定値は、[ライブラリ] 内のアクティブな (ハイライトされた) カラーモデルに適用されます。

[グループ全体] | カラーモデルのすべての色が画像内でマークされます。
[選択されたカラーまで] | 3 つのカラーがあるリストの 2 番目のカラーを選択すると、最初のカラーと 2 番目のカラーが画像内でマークされます。
[選択されたカラーのみ] | 選択したカラーのみが画像内でマークされます。

7. ExtractColor 関数を追加する

  1. [TrainExtractColor] ダイアログの [OK] ボタンをクリックします。
  2. スプレッドシート内の空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。
  3. [関数の挿入] ダイアログの左側で、ツールカテゴリの [ビジョンツール] リストを展開します。
  4. [カラー] ツールカテゴリを選択します。
  5. 関数リストから ExtractColor 関数を選択して、[OK] ボタンを押すか、関数をダブルクリックします。
  6. ExtractColorプロパティシートが表示されます。

  7. [カラーライブラリ] パラメータに、TrainExtractColor 関数によって返される [image] データ構造体のセル参照を入力します。このセルには、ExtractColor 関数が使用するカラーモデルが含まれます。
  8. パラメータを設定したら、[OK] ボタンをクリックしてプロパティシートを閉じます。
  9. リンゴの画像の結果は次のようになります。

  10. オレンジの画像の結果は次のようになります。

この例の検査では、画像内の果物がリンゴであるかオレンジであるかを、対応するモデルのピクセル数に基づいて判定できます。

関連項目

TrainExtractColor ツール

ExtractColor ツール


MatchColor ツールの使用

In-Sight Explorer 関数リファレンス

色を照合するには、次の手順を実行します。

  1. [TrainMatchColor] ダイアログを開く
  2. カラーを追加する
  3. MatchColor 関数を追加する

この例では、MatchColor ツールを使用して、画像内に色が存在するかどうかを判定します。

1. [TrainMatchColor] ダイアログを開く

  1. スプレッドシート内の空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。
  2. [関数の挿入] ダイアログの左側で、ツールカテゴリの [ビジョンツール] リストを展開します。
  3. [カラー] ツールカテゴリを選択します。
  4. 関数リストから TrainMatchColor 関数を選択して、[OK] ボタンを押すか、関数をダブルクリックします。

  5. [TrainMatchColor] ダイアログが表示されます。

2. カラーを追加する

  1. ダイアログの [登録] セクションで、カラーの定義に使用する対象領域 (ROI) の形状として、領域、円、ドーナツ領域、ポリゴン、フリーハンドのいずれかを選択します。この例では、円 ROI を使用します。
  2. [新しいカラーの加算] ボタンをクリックして、対話型グラフィックスモードに切り替え、加算する色が含まれるように、画像内で円 ROI の位置を決めます。

  3. ROI を設定したら、[ジョブの編集] ツールバーで [OK] ボタンをクリックします。ライブラリに加算されたカラーには、定義した ROI 内のすべての色の平均が含まれます。この例では、次に設定する緑と青が類似しているため、許容値として、[黒] の範囲を 0.9、[白] の範囲を 1.2 に設定します。
    4. [黒] | [色空間] を [RGB] に設定した場合、[黒] の範囲を拡大すると、登録されるカラーは (0,0,0) から登録される色の RGB 値までの線に沿って比例的に低くなります。[色空間] が [HSI] に設定されている場合、[黒] の範囲を拡大すると、登録されるカラーの明度が小さくなります。
[白] | [色空間] を [RGB] に設定した場合、[白] の範囲を拡大すると、登録されるカラーは (0,0,0) から登録される色の RGB 値までの線に沿って比例的に高くなります。[色空間] が [HSI] に設定されている場合、[白] の範囲を拡大すると、登録されるカラーの明度が大きくなります。
  4. 赤および青のカラーについてこの手順を繰り返します。青と赤の白と黒の許容値をそれぞれ、0.9 と 1.4 に設定します。

  5. カラーの設定が終了したら、[TrainMatchColor] ダイアログの [OK] ボタンをクリックして、ダイアログを閉じます。

3. MatchColor 関数を追加する

  1. スプレッドシート内の空白のセルを右クリックして [関数の挿入] を選択し、[関数の挿入] ダイアログを開きます。
  2. [関数の挿入] ダイアログの左側で、ツールカテゴリの [ビジョンツール] リストを展開します。
  3. [カラー] ツールカテゴリを選択します。
  4. 関数リストから MatchColor 関数を選択して、[OK] ボタンを押すか、関数をダブルクリックします。
  5. MatchColor プロパティシートが表示されます。

  6. [カラーライブラリ] パラメータに、TrainMatchColor 関数によって返される [image] データ構造体のセル参照を入力します。このセルには、MatchColor 関数が使用するカラーライブラリが含まれます。
  7. パラメータを設定したら、[OK] ボタンをクリックしてプロパティシートを閉じます。
  8. 緑色の画像の結果は次のようになります。

  9. 青色の画像の結果は次のようになります。

  10. 赤色の画像の結果は次のようになります。

この例の検査では、色の距離得点に基づいて色 (緑、青、または赤) を判別できます。

関連項目

TrainMatchColor ツール

MatchColor ツール


OCRMax 関数の設定

How To...

OCRMax 関数は、入力として対象領域 (ROI) を使用し、セグメンテーションと呼ばれるプロセスを通して、1 行のテキストを個々の文字の画像に分割します。 このトピックでは、この関数の動作方法 (登録時と実行時の両方) およびセグメンテーションを適切に実行するために [セグメント] パラメータを最適に設定する方法について説明します。

  • OCRMax 関数の使用方法

    • 登録画像のロード
    • OCRMax 関数の登録
  • OCRMax 関数の実行
  • セグメンテーションの概要

  • セグメンテーションプロセス

    • 行の最適化
    • 正規化
    • 2 値化
    • フラグメント化
    • グループ化
    • 解析

  • 実行時における最適なパフォーマンスの実現

    • 推奨される文字および領域のサイズ
    • セグメンテーション速度の向上
  • 関連項目

OCRMax 関数の使用方法

OCRMax 関数の操作には、登録時および実行時という 2 つのフェーズがあります。

  • 登録時の処理には、読み取り対象文字の複数の画像のロード、画像からの文字の抽出、文字のセグメンテーション、および文字の登録済みフォントデータベースの作成があります。
  • 実行時の処理には、In-Sight ビジョンシステムのオンラインへの移行、画像の取り込み、および登録済みフォントデータベースに基づいた文字の抽出と分類があります。

登録画像のロード

  1. [画像] メニューから [記録/再生のオプション] を選択します。
  2. [記録/再生のオプション] ダイアログは、自動的に [再生] タブが表示された状態で開きます。表示されていない場合は、[再生] タブをクリックします。
  3. [再生フォルダ] セクションで [参照] ボタンをクリックし、[フォルダの参照] ダイアログを表示します。 登録画像が含まれているディレクトリに移動し、[OK] ボタンをクリックして続行します。
  4. [再生フォルダ] には指定したディレクトリが表示されます。[画像カウント] はこのディレクトリ内に保存されている画像の数を示しています。[記録/再生のオプション] ダイアログの [OK] ボタンをクリックして、続行します。

OCRMax 関数の登録

  1. 最初の登録画像をロードします。
  2. OCRMax 関数をスプレッドシートに挿入します。
  3. [標準] タブから、[領域] パラメータをダブルクリックして対話型グラフィックモードに移行し、読み取り対象のテキスト行の上に関数の ROI を配置します。 ROI を設定する際には、角回転とスキューの両方またはどちらかが考慮されていることを確認してください。
  4. 関数は、関数により [セグメント] タブのデフォルト設定に基づいて文字であると判断されたテキストの周囲に自動的に文字領域を作成します。

  5. 関数がテキストの周囲の文字領域を正しく抽出していない場合、次の 2 つのオプションがあります。
  • [オートチューニング] ダイアログを使用して、最適なセグメンテーション設定を OCRMax 関数に自動的に計算させます。 [オートチューニング] ダイアログでは、セグメンテーションフェーズと登録フェーズを 1 つの手順にまとめています。 [オートチューニング] ダイアログのトピックの説明に従って、フォントデータベースを正しくセグメンテーションして登録します。
  • [セグメント] タブに移動して、個々の文字領域内においてテキストが正しく囲まれるまでパラメータを手動で調整します。 セグメンテーションプロセスに従って、登録前に画像データベース内のすべての文字を正しくセグメンテーションします。

セグメンテーション後の手動による登録

  1. テキストがセグメンテーションされると、いつでも文字を登録しフォントに追加できます。
  2. 最初の登録画像をリロードします。
  3. [フォントの登録] タブへ移動し、登録するテキスト文字列を正確に入力して、[登録] ボタンを押します。

注意: フォントデータベースが作成されると、[新規文字をフォントに追加] および [個々の文字をフォントに追加] オプションを使用して、追加文字をフォントに追加できます。

  4. 文字は、関数の [image] データ構造体に追加され格納されます。
  5. 次の登録画像をロードし、必要な文字インスタンスがすべて登録されるまで手順 2 ～ 5 を繰り返します。

OCRMax 関数の実行

OCRMax 関数をオンラインにする前に、関数の検査モードを、関数が実行時に ROI 内のテキストのみを読み取るのか、または読み取りを実行し、正しい文字列を読み取ったことを確認するようにプログラムするかどうかに応じて設定します。実行時に、In-Sight ビジョンシステムはオンラインになり、ジョブによって定義されているとおりに画像を取り込みます。画像が取り込まれると、画像内のテキスト文字列は [セグメント] パラメータに基づいて自動的にセグメンテーションされ、登録済みインスタンスと比較されます。 関数の結果は、OCRMax データアクセス関数を介して出力され、[結果] タブに文字に関する追加情報が表示されます。

実行時に最適な処理を行うために、登録時と実行時で使用するパラメータ設定は同じにしてください。 ただし、新しい画像セットでエラーが発生したために、パラメータを調整する必要が生じることがあります。 パラメータを変更しても、既に正しく登録された文字の外観がほとんど変わらない場合、再登録は不要です。 ただし、パラメータを変更すると、以前に登録した文字が影響を受ける場合は、再登録が必要です。 パラメータを変更しても文字領域に影響を与えることはありませんが、一部のパラメータでは影響を与える場合もあります。

登録後に次のパラメータのいずれかを変更すると、再登録が必要になる場合があります。

  • 正規化モード
  • ストローク幅フィルタを使用
  • 2値化しきい値

次のパラメータでは、文字に変更が加えられてしまう (トリミング、分割など) ため、再登録が必要になることがあります。

  • 文字幅の最大値
  • 最小文字アスペクト比
  • 文字の高さの最大値

次のパラメータでは、角度とスキューの両方またはどちらかの値が変更されてしまうため、再登録が必要になることがあります (以前、文字に多少不正確なスキューが存在しており、後に文字を適切にデスキューするために [スキュー範囲] パラメータを増加させた場合など)。

  • 角度範囲
  • スキュー範囲
  • 検査領域の回転

セグメンテーションの概要

OCRMax 関数は、6 段階のプロセスを通して光学式文字認識を実行します。

  1. 行の最適化: ROI を配置して、テキスト行の位置、角度、およびスキューを決定します。 OCRMax 関数は、この入力画像を取得して、文字の行が水平でスキューがなくなるように画像を修正します。
  2. 正規化: ROI 内のテキスト行を正規化します。これにより、単一のしきい値を使用して画像を 2 値化することができます。
  3. 2 値化:　正規化した画像をテキストと背景に 2 値化するためのしきい値を決定します。
  4. フラグメント化:　次に関数は、2 値化された画像に対してブロブ解析を実行し、文字フラグメントを作成します。
  5. グループ化:　文字フラグメントをグループ化して、文字を作成します。
  6. 解析:　必要に応じて、追加の解析を実行し、最終的な文字を作成する前に最適なグループ化を行います。

セグメンテーションプロセス

次のリストは、OCRMax パラメータとそのパラメータが影響を与えるプロセスの手順を示しており、さらにプロセスの各手順におけるトラブルシューティングの情報についても説明しています。

ヒント:　文字が正しくセグメンテーションされていない場合は、[診断の表示] パラメータを利用して、受け入れた/拒否した文字および文字フラグメントに関するグラフィックのフィードバックを有効にします。 さらに、[診断] タブを使用して、調整が必要なパラメータを判別します。

行の最適化

  • 領域
  • 文字の極性
  • 角度範囲
  • スキュー範囲

テキスト行の回転とスキューを決定する処理は、[検査領域の回転]、および [角度範囲] と [スキュー範囲] パラメータで指定した値によって影響を受けます。 テキスト行の回転やスキューが画像内で均一なアプリケーションでは、[文字の極性]、[角度範囲]、および [スキュー範囲] の値を関数に計算させるより、高速かつ正確に指定することができます。

トラブルシューティング

行の最適化段階での目的は、文字の行の角度とスキューの値を正確に決定することです。 OCRMax 関数は、領域の上に領域が配置されると、関数がデフォルトの [セグメント] パラメータに基づいて文字が含まれていると判断した領域の周囲に自動的に文字領域を作成します。 [領域] 内で文字領域の外観が予期したものとは異なる場合は、画像内で角度とスキューの両方またはどちらかが正しくなるまで [角度範囲] と [スキュー範囲] を調整してみてください。 文字を登録する前に、文字が必要な角度とスキューの両方またはどちらかに対して適切に調整されている状態になるように、必ず角度とスキューを調整してください。

[領域] に、ラベルエッジなどの無関係な強い特徴が含まれている場合、角度とスキューの両方またはどちらかに対する OCRMax 関数の計算値が不正確になることがあります。 このため、[領域] にはテキスト行のみが含まれるようにしてください。

正規化

  • 正規化モード
  • ストローク幅フィルタを使用

正規化された画像では、グレースケール値 128 が黒値と白値の間の事実上のしきい値です。例えば、[文字の極性] が「黒 (白い背景)」の場合、128 より小さいグレースケール値はテキストを示し、128 以上のグレースケール値は背景を示します。 ただし、グレースケールのしきい値は 2 値化の段階で変更することができます。

注意:　正規化された画像の外観は [文字の極性] の影響を受けません。例えば、正規化された画像内の暗ピクセルは、テキストの極性が「黒 (白い背景)」であるか「白 (黒い背景)」であるかに関係なく、正規化された画像内では黒になります。

トラブルシューティング

正規化段階での目的は、単一の 2 値化しきい値により、[領域] 内の画像領域を処理して 2 値化し (テキストと背景に分割)、正規化された画像を作成することです。 正規化された画像 ([出力画像グラフィックス] パラメータを「正規化された画像」に設定することで表示可能) では、テキストの極性 (「黒 (白い背景)」または「白 (黒い背景)」) に応じて、テキストがすべて均一な黒で背景が均一な白、またはその逆で表示されます。 また、2 値化された画像 ([出力画像グラフィックス] パラメータを「2 値化された画像」に設定することで表示可能) を表示すると、正規化された画像の精度を決定するのに有効です。背景の重要な領域がテキストとして間違って 2 値化されている場合、問題となるのはたいてい正規化の段階です (ただし、2 値化の段階に関連している場合もあります)。

背景がほとんど均一に表示されており、テキストのコントラストも均一である場合は、デフォルトの [グローバル] の [正規化モード] オプションが適切に動作しています。 背景の外観にばらつきが存在する場合、例えば、一方の側がもう片方の側より暗い、または上部が下部より明るいなどの場合は、[ローカル] または [ローカル詳細設定] のいずれかの [正規化モード] オプションを使用してみてください。 テキスト自体のコントラストが異常な場合、例えば、一部の文字がほかの文字より顕著に薄いなどの場合は、[ローカル詳細設定] オプションが必要になります。 ただし、[ローカル詳細設定] オプションは、背景のノイズを拡大してしまうことがあります (スポット、斑点など)。 [ローカル詳細設定] がテキストを定義する以上にノイズを拡大してしまう場合は、代わりに [ローカル] オプションを試してみてください。

[正規化モード] パラメータのほかに、[ストローク幅フィルタを使用] パラメータも正規化された画像に影響を与えます。 [ストローク幅フィルタを使用] は、テキストの残りの部分より大幅に狭いストロークを除去します。このようなストロークは、たいていの場合単なるノイズです。 また、このパラメータは、一般的な低コントラストの背景のばらつきも除去します。 ただし、このパラメータが、実際のテキストストローク間違って除去してしまう場合もあります。このような場合は、無効にする必要があります。 通常、この問題は、文字のストローク幅が異なるか、または文字の一部が文字のほかの部分よりも薄い (つまり、コントラストが低い) 場合に発生します。

最後に、[文字の極性] も正規化に影響を与えます。 通常、OCRMax アルゴリズムによりテキストの正しい極性を決定できますが、可能な場合は極性を設定することを推奨します。 文字の極性が間違っている場合、テキストが含まれている [領域] 内にあるテキスト以外の特徴により影響を受けることがあります。 テキスト以外の特徴を除外するために [領域] を配置し直して再設定することにより、問題を修正する必要があります。

2 値化

  • 文字の極性
  • 2値化しきい値

2 値化において正規化された画像にしきい値を適用する目的は、黒 (0) (背景) と白 (255) という 2 つのグレースケール値のみを持つ画像を生成することです。

注意:　正規化された画像とは異なり、2 値化された画像は [文字の極性] によって影響を受けます。2 値化された画像では、テキストは常に白です。

トラブルシューティング

2 値化段階での目的は、正規化された画像を 2 値化することにより、テキストを示す特徴に対してグレースケール値 255 を、背景を示す特徴に対してグレースケール値 0 を割り当てることです (指定した [文字の極性] とは無関係です)。 生成された画像は、2 値化された画像です ([出力画像グラフィックス] パラメータを「2 値化された画像」に設定することで表示可能)。 2 値化は、[2 値化しきい値] パラメータを使用して、正規化された画像に単一のしきい値を適用するだけの処理です。

2 値化された画像を反転して表示すると (つまり、テキストにグレースケール値 0 を、背景に 255 を割り当てる)、テキストの極性が正しくなくなります。 これは、[文字の極性] パラメータの設定が間違っている場合に発生します。「自動」設定により極性が不適切に判別されてしまったか、または実際は黒地に白であるのに「黒 (白い背景)」に設定されてしまっています (逆の場合もあります)。 テキストの極性の判別が正しくなくなるのは、たいてい [領域] にテキスト以外の特徴が含まれている場合です。または、[領域] が、文字の上部と下部の両方またはどちらかに接触している場合です。これらの場合には、[領域] を再配置するだけでこの特徴が除外されるため、通常は問題が解決されます。

2 値化された画像の極性は適切であるが、含まれているテキストが多すぎるかまたは少なすぎる場合は、[2 値化しきい値] を調整してみてください。 パラメータを小さくするとテキストとして認識される画像が減少し、大きくするとテキストとして認識される画像が増加します。 最も一般的なのは、背景テクスチャまたはノイズが顕著である場合には、[2 値化しきい値] をデフォルト値の 50 より低く設定することです。

デフォルト値より低くする場合、通常は 40 または 30 にします。25 より低い設定が必要になることはあまりなく、50 より高い値が必要になることは非常にまれです。値を変更しても、まったく問題が解決されない場合は、より細かい値 (32.5 など) を試してみてください。0.1 ごとに変化させると有効な場合があります。

注意: [2 値化しきい値] は、0 ～ 255 (グレースケール範囲) の範囲で整数のしきい値に変換されたパーセンテージです。256 分の 1 よりも小さい変化分の値では、差異は生じません。

また、2 値化された画像に関する一部の問題は、実際には正規化された画像に関する問題の場合があることにも注意してください。 詳細については、「正規化」の節を参照してください。ただし、背景の大きいブロックがテキストとして 2 値化された場合は、たいてい [正規化モード] パラメータの設定が間違っている場合で (特に、[グローバル] オプションを使用している場合)、また [2 値化しきい値] とは関係なく、テキストの断片が背景として 2 値化された場合は、たいてい [ストローク幅フィルタを使用] パラメータを有効にしている場合です。

さらに、ノイズの小さな斑点がテキストとして 2 値化されていることもよくあります。このような斑点は、フラグメント化段階で除去することができます。

フラグメント化

  • 最小文字フラグメントサイズ
  • 文字フラグメントのコントラストしきい値
  • 境界フラグメントを無視
  • メインラインまでの最大フラグメント距離

入力として 2 値化された画像を使用すると、ブロブ解析の 1 形態として、連結されているピクセルのセットからフラグメントが形成されます。 連結されているピクセルの各セットは、1 つのフラグメントであるとみなされます。 フラグメントは、事実上 1 つにグループ化されて文字を形成するため、単なるノイズまたはテキスト以外の特徴を示すフラグメントを除去するという点においてこの段階は重要になります。

ヒント: 最終的な文字が小さすぎる場合や、文字が欠落している場合は、[出力画像グラフィックス] パラメータを「2 値化された画像」に設定してください。 2 値化された画像内でフラグメントが欠落している箇所が存在する場合 (つまり、白である場合) は、前述のパラメータを変更してみてください (また同時に、グループ化段階のパラメータ、[文字サイズの最小値]、[文字幅の最小値]、および [文字の高さの最小値] を調整すると、文字全体が破棄される場合もあります)。

トラブルシューティング

フラグメント化段階での目的は、以前に 2 値化したテキストピクセルが実際にテキストピクセルであるかどうかを判別することです。 2 値化された画像は、連結性解析 (ブロブ解析とも呼ばれます) を使用して処理され、連結されたフラグメント (つまり、ブロブ) を形成します。フラグメント化段階では、各フラグメントを維持するか除去するかを決定します。 維持されたフラグメントは、文字の形成に使用されます。

[診断の表示] パラメータを使用して文字領域を詳細に表示することにより、維持または除去するフラグメントを判別することができる場合があります。 同様に、[診断] タブでデータを確認して、維持または除去するフラグメントを判別します。

フラグメントが除去されることがあるのは、小さすぎる場合、コントラストが低すぎる場合、[領域] の境界と交差している場合、または文字のメインラインの外側にある場合 (つまり、上または下に寄りすぎている) です。 前述の 1 つ以上の理由により特定のフラグメントが除去されることがあるため、複数のパラメータを調整する必要があります。 問題となるのは、テキストの断片が除去されることがある一方で、ノイズの断片がテキストとして 2 値化されてしまう場合があることです。通常は、いずれの問題の場合も、この段階でパラメータを適切に設定することにより処理することができます。

注意: フラグメントが含まれている文字全体が小さい場合 (ピリオドやコロンなどの場合)、問題は次のグループ化の段階にあるかもしれません。 このような場合、文字領域が小さすぎる文字を指定してしまうというよりはむしろ、文字全体が欠落してしまいます。 特に重要なことであるため繰り返して説明すると、ある画像で結果を 1 つに固定するようにパラメータを設定しても、別の画像では結果が適切になるとは限らないということです。 例えば、ある画像でノイズの断片を除去するために [最小文字フラグメントサイズ] パラメータを大きくしたとしても、別の画像では実際のピリオドやコロンが除去されてしまうことがあるということです。

小さいテキストのフラグメントが除去された場合は、そのフラグメントを維持するために [最小文字フラグメントサイズ] パラメータを小さくしてみてください。 ピクセルの数とは、2 値化された画像内で連結されているピクセルの数です。 同様に、ノイズの小さい断片が維持されている場合は、パラメータの値を大きくしてみてください。

[領域] の境界に接触しているテキストフラグメント (つまり、1 つ以上のピクセルが、2 値化された画像のちょうど上部、下部、左側、または右側にある) が除去された場合、そのフラグメントを維持するためには [境界フラグメントを無視] パラメータを無効にします。 同様に、[領域] の境界に接触しているノイズの断片が維持された場合、その断片を除去するためには [境界フラグメントを無視] パラメータを有効にします。

文字領域が短すぎる場合 (つまり、文字の上部と下部の両方またはどちらかが切り取られた場合)、全体的に問題となるのは、文字の上部と下部の両方またはどちらかにあるフラグメントが、残りの文字のメインラインの外側にあるために除去されたかもしれないということです。 こういう状況が発生するのは主に、印刷が垂直方向に多少不規則である場合 (印刷された一部の文字の高さが高すぎるかまたは低すぎる)、または印刷がずれている場合 (例えば、大部分のテキストは直線上に位置しているが、行の片方の端にある文字が連続して低くまたは高く印刷されている) です。 このような場合は、該当するメインラインの外側にあるフラグメントを含めるために [メインラインまでの最大フラグメント距離] パラメータを大きくしてみてください。 [診断の表示] パラメータをオンにして、文字の周囲のメインラインの配置をグラフで表示します。 この距離は、メインラインからの推定される高さのパーセンテージとして指定します。このため、除去されたフラグメントの高さが維持されたそのほかのフラグメントより多少高い場合は、2 または 5% など比較的小さい値に設定してみてください。 メインラインから遠く離れたフラグメントが除去されている場合 (例えば、テキストの行が大文字で始まり、次に小文字がある場合などに発生することがあります) は、30% など大きい値に設定してみてください。

最後に、テキストフラグメントが除去されたが、前述の 3 つの状況のいずれにも該当しない場合、フラグメントが除去されたのはコントラストが低いためです。 フラグメントを維持するために、[文字フラグメントのコントラストしきい値] パラメータの値を小さくしてください。 フラグメントのコントラストは、2 値化しきい値として使用されている値を基準として、正規化された画像内のグレースケール値を使用して測定されます。 例えば、[2 値化しきい値] パラメータが 50 に設定されている場合、この 2 値化しきい値はグレースケール値の 128 に相当します。正規化された画像内にあるフラグメントのすべてのピクセルの値が 100 である場合、そのフラグメントのコントラストは 128 になります。

グループ化

  • 文字フラグメントマージモード (1)
  • 文字フラグメントの最小オーバーラップ値 (1)
  • 最小文字間ギャップ値 (1)
  • 最大文字内ギャップ値 (1)
  • 文字サイズの最小値 (4)
  • 文字幅の最小値 (4)
  • 文字の高さの最小値 (4)
  • 文字の高さの最大値 (3)
  • 文字幅の最大値 (1, 2)
  • 最小文字アスペクト比 (1, 2)
  • 文字幅のタイプ (2)

フラグメント化の段階で維持された文字フラグメントはすべて、グループ化されて文字を形成します。 単純で一色のストロークフォント (このフォントは、細かい断片には分割されません) のアプリケーションでは、各文字は単一の文字フラグメントから構成されています。 ドットマトリックステキストが組み込まれているアプリケーションでは、各文字に複数の文字フラグメントが含まれています。

注意: 次の解析の段階は、グループ化の段階でマージされなかった文字フラグメントをマージするために使用することもできます。 例えば、実際は 2 つである文字が単一の文字として報告されている場合、その理由を特定するためにグループ化と解析の両方の段階のパラメータを調整する必要があります。 このシナリオでは、最初に解析段階の [セグメント解析モード] パラメータを「最小」に設定するのが有効です。これにより、グループ化段階のパラメータが変更されなくなります。

グループ化の段階は、次の 4 つのタイプの操作から構成されています (パラメータのリストは、パラメータに影響を与える操作タイプを示すようにコード化された番号です)。

  1. 2 つ以上の文字フラグメントをマージして 1 つの文字を形成します。
  2. 1 つの文字フラグメントまたは 1 グループの文字フラグメントを 2 つ以上の別の文字フラグメントに分割します。
  3. 1 つの文字フラグメントを垂直方向または水平方向にトリミングして 1 つの小さい文字フラグメントを作成します。
  4. 文字フラグメントのグループを破棄します。

トラブルシューティング

グループ化段階での目的は、個別のフラグメントを取得して、そのフラグメントをマージすることと別々に分割することの両方またはどちらかにより、グループ化して文字全体を形成することです。 同様に、この段階では、フラグメントのセットをまとめて破棄する場合もあります。 グループ化段階の結果は、文字を形成しているマーク (ドットピン、インクジェットなど) を囲む文字領域としてグラフで表示されます。

注意:　次の解析段階でもグループ化を実行できますが、重要な違いは、この 2 つの手順でプロセスを実行する方法です。 グループ化の段階では、グループ化は「ローカル」ベースで決定されますが (つまり、近接したフラグメントを基にしている)、解析の段階でのグループ化は「グローバル」ベースに決定されます (つまり、全体として、すべてのフラグメントを基にしている)。

マージ: 1 つ以上のフラグメントを単一の文字にマージするには、フラグメントの水平方向の配置、特にフラグメントのオーバラップが存在するかどうか、フラグメント間にギャップが存在するかどうか、およびオーバラップまたはギャップの大きさ (存在する場合) を調べます。 マージ操作では、文字幅の最大値を超える文字は生成されません。

フラグメントのマージ方法に影響を与える主なパラメータは、[文字フラグメントマージモード] パラメータです。 このパラメータを [要オーバラップ] に設定すると、フラグメントをマージするために 1 ピクセル以上 ([文字フラグメントの最小オーバーラップ値] パラメータの設定に応じて異なります) 水平方向にオーバラップさせる必要があります。 通常この設定は、文字を「字詰めする」場合に有効です。例えば、文字「AV」は、「A」の右端の部分が「V」の左端の部分にオーバラップするように印刷されることがあります。このパラメータを [最小文字間ギャップ値に設定] または [最小文字間ギャップ値/最大文字内ギャップ値に設定] のいずれかに設定すると、水平方向のギャップにより文字のペアごとに分割されるはずです。

ドットマトリックス印刷では、ドットがオーバラップするのではなく少なくとも明確に分離されていれば、[最小文字間ギャップ値に設定] または [最小文字間ギャップ値/最大文字内ギャップ値に設定] のいずれかを使用するのが有効です。これにより、OCRMax 関数は、2 文字間に存在するギャップ (文字間ギャップ) と単一文字のドット間に存在するギャップ (文字内ギャップ) を区別することができます。 理想的には、文字間ギャップ値がすべて文字内ギャップ値より大きければ、[最小文字間ギャップ値に設定] の設定値を別の 2 文字間に存在する最小のギャップ値に設定して使用することができます。

分割: 幅の広い単一のフラグメントを 1 つ以上の別の文字に分割するには、[文字幅の最大値] パラメータを使用して、単一の文字で許可される文字幅の最大値を指定します (つまり、フォント内で最大幅を持つ文字の幅です。英数字フォントの場合、通常は「M」または「W」がこれに相当します)。 指定した最大幅より幅が広いフラグメントは、最大幅にトリミングされるか、またはそれぞれが最大幅を超えない複数の断片に分割されます。 通常、幅の広いフラグメントが形成されるのは、2 つ以上の文字がお互いに非常に近接している場合か、または 2 つ以上の文字がノイズやテキスト以外のストロークによって連結されている場合です。

文字幅の最大値を間接的に設定するには、[最小文字アスペクト比を使用] パラメータを有効にして、[最小文字アスペクト比] パラメータを設定します。 この値を設定すると、幅は [最小文字アスペクト比] の値で除算すると線の高さと等しくなります (線の高さを確認するには、[診断] タブを表示して、[合格した文字]、[除外した文字] の [最小値]、および [高さ] の [最大値] で返される値を調べます)。 [最小文字アスペクト比] および [文字幅の最大値] パラメータの両方を有効にすると、使用される幅の値は小さくなります。

文字がどのように分割されるかは、[文字幅のタイプ] パラメータに応じて異なります。 このパラメータを [固定] に設定すると、幅の広いフラグメントがほぼ同じサイズの断片に分割されます (この設定は、文字がすべて同じ幅を持つと想定される場合に適しています)。 このパラメータを [変数] または [自動] に設定すると、OCRMax 関数は同じサイズまたは同じサイズではない断片に最適に分割するように判別します (この設定は、プロポーショナルテキストでは一般的なように、文字ごとにフォント幅が異なる場合に適しています)。

トリミング: 文字やフラグメントの高さが高すぎる場合はトリミングすることができます。 通常、この操作は、ノイズまたはテキスト以外のストロークが文字の上部や下部に連結されている場合に実行します。 垂直方向のトリミングを有効にするには、[文字の高さの最大値を使用] パラメータをアクティブにして、[文字の高さの最大値] パラメータで適切な値を指定します。 ただし、すべてのテキストが直線上に印刷されているわけではない場合には、問題が発生することがあります。このような状況では、[文字の高さの最大値] パラメータの値を、文字の実際の高さよりも大きい値まで増加させる必要があります (ただし、まだ理想的な結果にはなりません)。

破棄: フラグメントを破棄するプロセスは、おそらくグループ化段階のさまざまな操作の中で最も簡単に対応できる操作です。 一連のフラグメントをグループ化したが、2 値化されたピクセルの幅、高さ、または総数が小さすぎる場合、そのセット全体が破棄されることがあります。 このため、実際には文字であるのに完全に破棄されてしまっている場合は、[文字幅の最小値]、[文字の高さの最小値]、および [文字サイズの最小値] の各パラメータのすべてまたはいずれかを、文字が維持されるまで小さくしてください。 同様に、テキスト以外の何らかの特徴が文字として間違って報告されている場合は、前述のパラメータの 1 つ以上を、テキスト以外の特徴が破棄されるまで大きくしてください。

解析

  • セグメント解析モード
  • 最小ピッチ値
  • 文字のピッチタイプ
  • 文字ピッチ位置

グループ化の段階では、個々のフラグメントから一連の文字フラグメントを形成しますが、たいていの場合、これらのセットが最終的な正しい文字になります。 ただし、文字を正しくセグメンテーションするために、さらに高度な解析が必要になる場合があります。特に、文字間の距離が、文字の個別の断片間の距離を超えない程度である場合です (例えば、ドットマトリックス印刷におけるドットなど)。 そのほかのケースでは、グループ化段階のパラメータよりも解析段階のパラメータを使用する方が、正確なセグメンテーションを簡単に実行できる場合があります。

トラブルシューティング

解析段階での目的は、いくつかのフラグメントに基づいた「ローカルな」情報ではなく、ROI 内のすべてのフラグメントに関する「グローバルな」情報に基づいて、フラグメントをグループ化して文字を形成することです。 [セグメント解析モード] パラメータのデフォルトの設定は [標準] で、これは「グローバルな」解析に適用されます。一方、[最小] 設定では「ローカルな」解析のみが実行され、これはグループ化段階に相当します。

注意: 解析段階は常に、個々の文字が別の断片として表示されてしまう使用例に関係しています。例えば、テキストがドットマトリックスであるか、またはスクラッチにより文字が分割されているなどの場合です。 それぞれの文字が常に単一の断片として表示されるようなアプリケーションでは、[セグメント解析モード] を [最小] に設定することができます。 また、この設定は、文字が複数の断片として表示されているが、文字間のギャップが常に文字内のギャップより大きい場合にも使用することができます。 このシナリオにおいても、[文字フラグメントマージモード] パラメータを [最小文字間ギャップ値に設定] に設定してください。

この段階に関連する最も一般的な問題は、2 つ以上の文字が単一の文字として報告される場合です。 この問題は、[セグメント解析モード] パラメータを [最小] に設定するだけで処理できる場合があります。 ただし、「標準」オプションが必要な場合、この問題に対処するには通常、文字の幅と間隔の両方またはどちらかに関して 1 つ以上の制約事項を指定します。

2 つ以上の文字がマージされるのを防ぐには、[文字幅の最大値] パラメータと [最小文字アスペクト比] パラメータの両方またはどちらかを使用して、文字幅の最大値を小さくします。 これらの方法の詳細については、グループ化の段階を参照してください。

また、[最小ピッチ値] パラメータを使用して、2 つの文字間のピッチを設定することもできます。 ピッチは、[文字のピッチタイプ] および [文字ピッチ位置] パラメータの指定に従って、2 つの文字の対応する部分間の距離として測定されます。

[文字のピッチタイプ] および [文字ピッチ位置] パラメータを設定するのは有効なことですが、通常は必要ありません。 このガイドラインにおける 1 つの例外は、[文字のピッチタイプ] パラメータを [自動] に設定していると、OCRMax 関数は、固定ピッチのフォントには適切であるが、プロポーショナルピッチのフォントには不適切であるような選択をしてしまう場合です。 特に、この関数は、幅の狭い 2 つの文字を誤って 1 つにグループ化してしまう場合があります。 パラメータを [比例] に設定すると、この特定の問題が解決できることがあります。

実行時における最適なパフォーマンスの実現

通常、OCR アプリケーションのパフォーマンスは、読み取り率、つまり正しく読み取られた文字のパーセンテージによって判断されます。

注意: 一部のアプリケーションでは、読み間違い (誤った受け入れ) の方が読み落とし (誤った拒否) より不都合であるとして、読み取り率を計算することが推奨される場合があります。 同様に、別のアプリケーションでは、正しい文字の数ではなく正しい文字列の数として、読み取り率を計算することが推奨される場合もあります。 ただし、パラメータを最適化するプロセスは、いずれの場合でも同じです。

最適な読み取り率を実現する最も効果的な方法は、実際の部品 (良品と不良品の両方を含む) の画像を数多く取り込んで、その画像を手動でグレード付けしてから (例えば、作業者が画像を確認して、後の検証作業で参照できるように正確なテキストをテキストファイルに入力するなど)、評価対象の各パラメータセットについてデータベース全体にわたって読み取り率を計算することです。 さらに、可能な場合は、登録時に各文字に対して1 ～ 4 つのインスタンスを使用します。

高読み取り率のルール

次に、高読み取り率を実現するための一般的なルールを示します。

  • 画像の数が多くなるほど読み取り率は向上します。
  • アプリケーションで必要な読み取り率が高ければ高いほど、目的の読み取り率を実現して検証するために必要な画像が増えます。
  • 1 つのガイドラインとして、総文字数 (読み取り率を定義する際に文字列が重要になる場合は、総文字列数) をエラー率の計算で必要になる場合と比較して、最低 10 倍使用するようにしてください。 ただし、フォントを登録するために使用する文字は数に含めないでください。 例えば、目標の読み取り率が 99% である場合、理想的には、100 文字あたり 1 文字だけ誤った文字が含まれていることになります (この場合、読み取り率を計算するのに必要な文字数は 10*100 = 1,000 です)。 目標の読み取り率が 99.9% である場合は、最低 10,000 文字を使用してください。
  • さらに最低限のガイドラインは、それぞれのタイプの文字に対して前述の文字数を使用することです。 通常、このガイドラインが必要になるのは、実験の結果、特定のタイプの文字がそのほかの文字よりも読み取りに失敗し易いことが判明した場合のみです (または、問題となるこれらの文字のインスタンスが十分に存在する場合です)。 例えば、文字のセットに 0 ～ 9 の数字が含まれており、目標の読み取り率が 99% である場合、理想的には、各数字に対して 1,000 個の画像が存在している必要があります。

推奨される文字および領域のサイズ

次に、文字のセグメンテーションで最適な結果を実現するために従う必要がある一般的なガイドラインを示します。

文字のサイズ

理想的には、あるフォントで大きい文字 (例えば、「M」) に対して、約 20 ～ 40 ピクセルの高さにする必要があります。 大きい文字に対して約 8 ～ 10 ピクセルよりも低い高さにした場合、セグメンテーションは動作しますが、その後の分類が困難になります。 大きい文字に対して 40 ピクセルを超える高さにすると、一般的にセグメンテーションの速度が必要以上に遅くなり、読み取り率に関してもメリットはありません。

文字が推奨される値よりも大きく表示され、処理時間が問題となる場合、最適なアプローチは、In-Sight ビジョンシステムとレンズの位置のいずれかまたは両方を移動させて、文字を小さくすることです。 このオプションが実現できない場合は、別の手段として、平滑化とサブサンプリングを使用して画像サイズを縮小します (例えば、NeighborFilter 関数で [操作] パラメータをローパスに設定)。 ただし、文字が水平方向に近接している場合は、文字を小さくすると文字間のギャップにブレが生じるため、文字を元のサイズで使用する必要があります。

文字のストローク幅

理想的には、各文字のストローク幅 (または、ドットマトリックス印刷ではドットの直径) を最低 3 ピクセル (できれば 4 ピクセル) にする必要があります。 さらに大きいストローク幅も許容可能です。

領域のサイズ

[領域] は常に、読み取り対象のすべての文字を完全に囲んでいる必要がありますが、同時にテキストの周囲には多少の背景も含まれています。 可能な場合は、テキストの余分の行やラベルエッジなど、強調されている特徴は含めないでください。

理想的には、[領域] は、右側と左側は最も幅の広い文字 (例えば、「M」) の最低半分の幅の分だけ拡大されており、同時に上部と下部は最低 1 ストロークの幅の分だけ拡大されている必要があります。

また、[領域] は、画像領域全体にわたって拡大することができるため、テキストの位置が変動して簡単にはフィクスチャされないアプリケーションで実行可能なソリューションになります。 ただし、著しい背景ノイズや無関係な特徴が存在する場合は、[領域] を小さくして、ノイズや特徴がテキストとしてセグメンテーションされる可能性を減らすのが適切なオプションです。

セグメンテーション速度の向上

OCRMax 関数の処理時間に影響を与える主な要因は、[領域] のサイズと文字のサイズです。 さらに、一部の [セグメント] パラメータは処理時間に多大な影響を与えますが、読み取り率を大幅に減少させることなく高速なオプションを選択することが可能な場合あります。

領域および文字のサイズ

一般的に、セグメンテーションプロセスの処理時間は、[領域] および文字のサイズとともに増加します。 [領域] を使用する際にかなり詰めて文字を囲むと、セグメンテーションが高速になります。 同様に、文字を小さくしても (つまり、In-Sight ビジョンシステムの位置/光学系を移動させるか、または画像をサブサンプリングする)、セグメンテーションが高速になります。

速度に影響を与えるパラメータ

次のパラメータはセグメンテーションの速度に多大な影響を与えますが、一部のアプリケーションでは、読み取り率を許容できないほど低下させることなく高速な設定を選択することが可能です。

  • 文字の極性:　[自動] パラメータ設定を使用すると、OCRMax 関数は、時間をかけてテキストの正しい極性を決定します。 大部分のアプリケーションでは、テキストの極性は常に均一です。 極性を指定すると (「黒 (白い背景)」または「白 (黒い背景)」のいずれか)、関数の実行が高速になります。
  • 角度範囲およびスキュー範囲: これらのパラメータのいずれかまたは両方にゼロ以外の数値を指定すると、OCRMax 関数は、時間をかけてテキストの正しい角度/スキューを決定します。 複数の画像内のテキストの角度とスキューの両方またはどちらかが常に均一であるか、または [領域] がフィクスチャできる場合、これらのパラメータでゼロ以外の値を設定するよりも [領域] を設定してこれらの値を指定する方が適切です。 ただし、この操作ができない場合は、可能な限り小さい値を使用してみてください。
  • 正規化モード: 一連の操作が大幅に異なる速度で実行されます。操作の実行速度は、[なし]、[グローバル、[ローカル]、[ローカル詳細設定] の順に最高から最低になります。
  • ストローク幅フィルタを使用: テキスト以外の幅の狭いストロークまたは低コントラストの背景のばらつきを除去するためにこのパラメータを設定します。ただし、実行に長時間を要することがあります。 このパラメータを無効にすると、OCRMax 関数の実行が高速になります。
  • セグメント解析モード: このパラメータをデフォルトの [標準] 設定ではなく [最小] に設定すると、関数の実行が高速になります。 ただし、大部分のアプリケーションでは、速度の変化は比較的小さくなります。

関連項目

  • OCRMax 関数について
  • [オートチューニング] ダイアログ
  • OCRMaxSettings 関数
  • OCRMax データアクセス関数
  • TransOCRMaxToWorld 関数
  • プロパティシートの使用方法


DeviceNet ゲートウェイへの接続

How To...

この例では、HMS Anybus X-gateway を使用して DeviceNet ファクトリ通信ネットワーク経由でデータにアクセスする方法について説明します。 ここでは、ゲートウェイのインストールおよび設定方法、デバイスが通信するためのネットワーク (RSNetwork) の設定方法、およびデータをゲートウェイに送信するための In-Sight Explorer ジョブの作成方法について説明します。 この例では、次のハードウェアおよびソフトウェアが用意されていることを前提とします。

  • ファームウェアバージョン 3.41.00 以上を実行している In-Sight ビジョンシステム
  • Anybus X-gateway Modbus/TCP-to-DeviceNet アダプタ
  • DeviceNet スキャナカードを搭載した Rockwell PLC
  • Rockwell RSNetWorx および RSLogix 5000 ソフトウェア

Anybus X-gateway のインストールと設定

このセクションに含まれている手順では、Anybus X-gateway のイーサネット部分のインストールおよび設定方法について説明します。

注意: 詳細については、HMS Anybus-X のマニュアル (『Anybus-X Generic Gateway User Manual』、『Anybus-X Ethernet Network Interface Addendum』、および『Anybus-X DeviceNet Slave Network Interface Addendum』) を参照してください。これらのマニュアルは、HMS の Web サイト (www.hms-networks.com) からダウンロードできます。

  1. HMS Software ユーティリティの Anybus IPconfig をダウンロードしてインストールします。このユーティリティは、HMS IP Configuration Protocol (HICP) を使用します。これにより、Anybus ベースのイーサネットインタフェースを簡単に設定することができます。
  2. イーサネット接続機能を備えた PC を使用して、Anybus IPconfig を実行します。ネットワーク上で検出された Anybus ベースのイーサネットインタフェースのすべてと、それらの IP アドレスがウィンドウに表示されます。
  3. Anybus X-gateway 上の MAC ID ディップスイッチを使用して、DeviceNet MAC ID アドレスを設定します。詳細については、『Anybus-X DeviceNet Slave Network Interface Addendum』を参照してください。Anybus X-gateway ハードウェアを物理的に取り付けて、接続します。詳細については、Anybus X-gateway のマニュアルを参照してください。
  4. Anybus X-gateway ハードウェアを正しく取り付けて、すべてのケーブルを接続した後、Anybus X-gateway ハードウェアに電源を供給し、デバイスの電源が入るのを 30 ～ 60 秒待ちます。Anybus X-gateway ハードウェアの電源が入ると、イーサネット LED ステータスインジケータが緑色に点灯するか、緑色に点滅します。
  5. Anybus IPconfig ユーティリティから、[Scan] ボタンをクリックして、Anybus ベースのすべてのイーサネットインタフェースが表示されているウィンドウを更新します。新しく追加した Anybus X-gateway ハードウェアがリストに表示され、デフォルトの IP アドレス 192.168.0.1 と表示されます。
  6. Anybus X-gateway の設定を変更する必要がある場合は、リスト内の Anybus X-gateway をダブルクリックします。IP アドレスを割り当てるためのダイアログが表示されるので、DHCP を使用して IP アドレスを割り当てるか、固定 IP アドレス、サブネットマスク、デフォルトゲートウェイ、および DNS サーバを割り当てます。設定が終了したら、[Set] ボタンをクリックして続行します。
  7. 最後に、Anybus IPconfig ユーティリティから [Scan] ボタンをクリックして、Anybus ベースのすべてのイーサネットインタフェースが表示されているウィンドウを更新します。Anybus X-gateway ハードウェアがリストに表示され、新しい IP アドレスが表示されます (IP アドレスを変更した場合)。

Anybus X-gateway の DeviceNet ネットワーク上の Rockwell PLC への接続

このセクションでは、Rockwell PLC と Anybus-X gateway の間の DeviceNet 通信の接続と確認の手順について説明します。Anybus-X gateway は、Modbus/TCP ネットワークと DeviceNet ネットワークの間でデータを交換します。これにより、入力と出力を Rockwell PLC に送信することができます。Rockwell PLC と Anybus X-gateway の間の DeviceNet 接続をセットアップするには、最初に、RSNetWorx を使用して、ゲートウェイをコントローラのハードウェア構成に追加する必要があります。

  1. DeviceNet の RSNetWorx を開く

注意: Anybus-Gateway を初めて使用する場合は、エレクトロニックデータシート (EDS) をインストールする必要があります。HMS の Web サイトから EDS ファイルをダウンロードしてください。

  2. [ツール] メニューから、EDS ウィザードを選択して EDS ファイルをインストールします。 [次へ] をクリックして [Register an EDS file] を選択し、[次へ]を選択します。ダウンロードした EDS のパスを追加し、[次へ]をクリックします。
  3. [ネットワーク] メニューから [オンライン] を選択します。これにより、スキャナで設定されたボーレートで全ネットワークがスキャンされ、接続されているノードがすべて表示されます。
  4. 1756-DNB (または、接続されている別のスキャナ) をダブルクリックします。スキャナの設定ウィンドウが表示されます。
  5. [Scanlist] タブを選択します。スキャナにオフライン設定をダウンロードするか、またはスキャナの現在の設定をアップロードするかを選択するメッセージが表示されます。[Upload] を選択します。
  6. デバイスをスキャンリストに追加するには、[Available Devices] で [Anybus-S] をハイライトして右矢印をクリックし、スキャナに追加します。

  7. デバイスを追加したら、[Edit I/O Parameters] を選択します。I/O タイプとサイズを設定するためのウィンドウが表示されます。ポーリングオプションにチェックを付け、入力と出力サイズを 20 バイトに設定します。各スキャンのポーリングレートを設定し、必要に応じてデータを取得します。
  8. 入力と出力のデータ量が正しいことを確認します。[Input] および [Output] タブを選択し、下の画面表示と比較します。

  9. [ファイル] → [名前を付けて保存] をクリックし、設定を InSightExample.dnt という名前で保存します。

注意: 入力と出力の 20 バイトはデフォルトの設定です。別のサイズにする必要がある場合は、『Anybus X-gateway User Manual』を参照して設定を変更してください。これらのマニュアルは、HMS の Web サイト (www.hms-network.com) から入手可能です。

TCP/IP Modbus 経由での Anybus X-gateway の In-Sight ビジョンシステムへの接続

このセクションでは、TCP/IP Modbus 通信を使用して Anybus X-gateway を In-Sight ビジョンシステムに接続する方法について説明します。

  • In-Sight Explorer で TCP/IP Modbus 通信をセットアップする
  • PLC から DeviceNet 経由で In-Sight ビジョンシステムにデータを読み取る
  • In-Sight ビジョンシステムから DeviceNet 経由で PLC にデータを書き込む

注意: 詳細については、『Open Modbus/TCP Specification』 (Modicon によって発行、www.modbus-ida.org) および『In-SightModbus.doc』 (www.cognex.com/support/files/In-Sight/Modbus.zip) を参照してください。

In-Sight Explorer で TCP/IP Modbus 通信をセットアップする

TCP/IP Modbus クライアント機能は In-Sight ビジョンシステム上で有効ですが、Anybus X-gateway が TCP/IP Modbus サーバ (スレーブ) として機能するため、このモデルでは必要ありません。

  1. In-Sight Explorer の [In-Sight ネットワーク] ペインから、設定する In-Sight ビジョンシステムまたはエミュレータを選択します。
  2. [ファイル] メニューから [ジョブの新規作成] を選択して、新規ジョブをビジョンシステムまたはエミュレータにロードします。
  3. ［パレット] から [スニペット] タブを選択し、[通信] フォルダを展開します。In-Sight Explorer スプレッドシートのセル A2 に DeviceNetGateway.cxd ファイルをロードします。そのためには、A2 を選択してから DeviceNetGateway.cxd をダブルクリックするか、またはファイルをセル A2 にドラッグ＆ドロップします。
  4. 新規ジョブを DeviceNetGateway.job という名前でビジョンシステムまたはエミュレータに保存します。
  5. セル A5 をダブルクリックして、Anybus X-gateway の IP アドレスを入力します (必要な場合は、HMS Anybus IPconfig ソフトウェアユーティリティを実行して、Anybus X-gateway の IP アドレスを確認します)。
  6. TCP/IP Modbus 通信では、In-Sight クライアント (マスタ) のジョブに TCPDevice および QueryDevice 関数が含まれている必要があります。TCPDevice 関数は、リモートデバイス (この場合は Anybus X-gateway) と In-Sight ビジョンシステムの間にネットワーク接続を作成するために使用されます。QueryDevice 関数は、TCP/IP Modbus パケットの Modbus 関数コードコマンドを作成するために使用されます。DeviceNetbusGateway.cxd ファイルには、セル C5 に TCPDevice 関数と次の 2 つの QueryDevice 関数が含まれています。1 つは読み取り要求用の関数 (セル B15) で、もう 1 つは書き込み要求用の関数 (セル B27) です
  7. Anybus X-gateway は、QueryDevice 関数で次の Modbus 関数コードをサポートします。
関数コード | 関数名
3 | Read multiple registers
4 | Read input registers
6 | Write single register
7 | Read exception status
8 | Diagnostics
16 | Force multiple registers
22 | Mask write register
23 | Read/Write registers
  8. セル B15 の QueryDevice 関数をダブルクリックして、パラメータ設定が次のようになっていることを確認します。

注意: Modbus パケット構造体の詳細については、Modbus-IDA が発行している 『Modbus Implementation Guide』 (バージョン 1.0b) を参照してください。

パラメータ入力番号 | パラメータ入力名 | パラメータ入力値 | 説明
1 | Event | $A$15 | [イベント] ボタンのセル参照。
2 | Device | $C$5 | セル C5 の TCPDevice 関数のセル参照。
3 | Data | 0 | Modbus ヘッダ、トランザクション識別子、上位バイト = 0。
4 | Data | 0 | Modbus ヘッダ、トランザクション識別子、下位バイト = 0。
5 | Data | 0 | Modbus ヘッダ、プロトコル識別子、上位バイト = 0。
6 | Data | 0 | Modbus ヘッダ、プロトコル識別子、下位バイト = 0。
7 | Data | 0 | フィールド長、上位バイト = 0。
8 | Data | 6 | フィールド長、下位バイト = 6 (後続のバイト数)。
9 | Data | 0 | ユニット ID、バイトは使用されない = 0。
10 Data $C$12+3

Modbus 関数コードバイト。この例では、この入力は 3 または 4 です。

注意: Modbus 関数コードバイトが 3 に設定されると、In-Sight は保持レジスタ (TCP/IP Modbus 経由で書き込まれたデータ) を読み取ります。Modbus 関数コードバイトが 4 に設定されると、In-Sight は入力レジスタ (DeviceNet 経由で書き込まれたデータ) を読み取ります。

11 Data 0

Modbus 参照アドレス、上位バイト = 0。

注意: 入力レジスタは、Read multiple registers (関数コード 3) を使用してアドレス 1000 から、または Read input registers (関数コード 4) を使用してアドレス 0 から読み取ることができます。

12 Data 0

Modbus 参照アドレス、下位バイト = 0。

注意: 入力レジスタは、Read multiple registers (関数コード 3) を使用してアドレス 1000 から、または Read input registers (関数コード 4) を使用してアドレス 0 から読み取ることができます。

13 | Data | 0 | ワード (レジスタ) カウント、上位バイト = 0。
14 | Data | $B$8 | ワード (レジスタ) カウント、下位バイト。この例では、この入力は 1、2、3、5、または 8 です。
  9. Anybus X-gateway からの TCP/IP Modbus 応答パケットは、QueryDevice 関数のバイナリ構造体に保存されます。これらの戻り値は、In-Sight Explorer で BGetInt 関数によって読み取られます。この関数は、バイナリ構造体の特定のバイトから整数値を返し、応答の形式は次のとおりです。
バイト番号 | Modbus 応答 | 説明
7 | Modbus 関数コード | この例では、3 または 4 です。コマンドが失敗した場合は、128 が関数コードに追加されます (返される値は、131 または 132 になります。セル E15 を参照)。
8 | バイトカウント | この例では、2 つのレジスタ (ワード) = 4 バイト。セル E15 を参照。
9/10 | レジスタ 0 の値 | これらの値は 2 バイト形式です。DeviceNetGateway.cxd ファイルでは、セル D18 の BGetInt 関数は、バイト 9 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
11/12 | レジスタ 1 の値 | これらの値は 2 バイト形式です。DeviceNetGateway.cxd ファイルでは、セル D19 の BGetInt 関数は、バイト 11 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
13/14 | レジスタ 2 の値 | これらの値は 2 バイト形式です。DeviceNetGateway.cxd ファイルでは、セル D20 の BGetInt 関数は、バイト 13 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
15/16 | レジスタ 3 の値 | これらの値は 2 バイト形式です。DeviceNetGateway.cxd ファイルでは、セル D21 の BGetInt 関数は、バイト 15 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
17/18/19/20 | 浮動小数点数を格納するレジスタ 4 および 5 の値 | これらの値は浮動小数点形式です。DeviceNetGateway.cxd ファイルでは、セル D22 の BGetInt 関数は、バイト 17 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
21/22/23/24/25/26 | 文字列を (バイト配列で) 格納するレジスタ 6、7、および 8 の値 | これらの値は文字列形式です。DeviceNetGateway.cxd ファイルでは、セル D23 の BGetInt 関数は、バイト 21 のバイナリ値を読み取ります (読み取られたワードの下位バイト)。
  10. セル B27 の書き込み要求用の QueryDevice 関数は、要求パケットおよび応答パケットと同じようにフォーマットされます。

PLC から DeviceNet 経由で In-Sight ビジョンシステムにデータを読み取る

このモデルによって提供される例が示すように、Anybus X-gateway の入力バッファは、読み取られるデータソースです。このバッファは、In-Sight ビジョンシステム (TCP/IP Modbus ネットワーク上) によって要求された PLC (DeviceNet ネットワーク上) からのデータを保持します。

  1. 「In-Sight Explorer で TCP/IP Modbus 通信をセットアップする」セクションで作成した In-Sight Explorer ジョブを使用して続行します。
  2. RSLogix を開き、PLC のプロジェクトをロードします。
  3. [I/O Configuration] フォルダで DeviceNet モジュール (この例では、1756-DNB) を右クリックし、プロパティを選択します。

  4. [RSNetWorx] タブをクリックして、前のセクションで作成した設定ファイルを追加します。[OK] をクリックします。

  5. コイルをラダープログラムに追加し、DeviceNet スキャナを Run モードに設定します。

  6. RSLogix で、[Data Types] → [User-Defined] フォルダを右クリックし、メニューから [New Data Type] を選択します。
  7. [Data Type] に、AnyBusData という名前を付けます。タイプのメンバに次のように入力します。
  • 4 つの整数値
  • 1 つの実数
  • ASCII として表示される配列 SINT[6]

  8. ユーザ定義データ型 (この例では、InSightData) を使用して、新しいタグをプロジェクトの Controller Tags に追加します。
  9. 最後に、COP 命令を メインルーチンラダーロジックプログラムに追加します。これは、DeviceNet バッファ (Local:1:0.Data[0]) から InSightData タグにデータをコピーします。

  10. 更新されたプロジェクトをコントローラにロードしてオンラインにし、Run モードで開始します。
  11. InsightData タグの項目に値を入力します。
  12. In-Sight ビジョンシステムをオンラインにします。
  13. DeviceNetGateway.cxd ファイルのセル A8 で、レジスタ数として 9 を選択します (18 バイト)。
  14. セル NC で、[Read Registers] ドロップダウンリストから [Input Registers] を選択します。

  15. セル A15 の [読み取り] ボタンをクリックして、結果を更新します。Controller Tags に入力された値を反映して、セル D18 ～ D23 の値が変わります。

In-Sight ビジョンシステムから DeviceNet 経由で PLC にデータを書き込む

このモデルによって提供される例が示すように、Anybus X-gateway の出力バッファは、書き込まれるデータソースです。このバッファは、In-Sight ビジョンシステム (TCP/IP Modbus ネットワーク上) によって PLC (DeviceNet ネットワーク上) に書き込まれるデータを保持します。

  1. ProfibusGateway.cxd ファイルのセル A8 で、レジスタ数として 8 を選択します (16 バイト)。
  2. セル C12 で、[Read Registers] ドロップダウンリストから [Holding Registers] を選択します。これは、In-Sight ジョブ内から書き込まれるのと同じレジスタからデータを読み取ります。
  3. 次に、アプリケーションに応じた有効なデータ型になるように、セル D30 ～ D34 の値を調整します。セル D31 ～ D34 の 3 つの整数値 (最小値は -32768 であり、最大値は 32767 であるため、この範囲内の有効な整数値を入力する必要があります)、セル D35 の浮動小数点数値 (最小値は ±1.175495e-38 であり、最大値は ±3.402823e+38 であるため、この範囲内の有効な浮動小数点数値を入力する必要があります）、およびセル D36 の 6 バイトの文字列 (6 文字/バイトより長い文字列を入力することはできません) として、EditInt セルに値を入力します。

  4. セル A27 の [Write] ボタンをクリックして、In-Sight Explorer スプレッドシートの結果を PLC に書き込みます。
  5. RSLogix で、前のプロジェクトを開いて別のラングを追加し、ゲートウェイから InsightData タグにデータを書き込みます。

  6. 更新されたプロジェクトをコントローラにロードしてオンラインにし、Run モードで開始します。
  7. Controller Tags を開いて、InSightData タグで作成されたユーザに対する変更を確認します。


ロボット通信 - ABB ロボットコントローラ

ロボット通信

In-Sight 通信リファレンス

このトピックでは、In-Sight ビジョンシステムから ABB ロボットコントローラに接続し、データを転送する手順の概要を説明します。このトピックで、ロボットコントローラは、画像取り込みとデータ転送を制御するデバイスを指しています。一般に、In-Sight ネイティブモードコマンドを使用するロボットコントローラは、画像を取り込み、処理するようにビジョンシステムをトリガし、その後、ビジョンシステムに特定のデータを要求します。データは、シリアル通信または Ethernet 通信を使用して転送することができます。

必要なハードウェア

  • In-Sight ビジョンシステム (In-Sight Micro シリーズ、In-Sight 5000 および In-Sight 7000 シリーズのビジョンシステム)

  • In-Sight I/O モジュール または電源および I/O ブレークアウトケーブル (In-Sight 7000 シリーズビジョンシステムのみ)

    注意:
    • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
    • In-Sight Micro ビジョンシステムは、CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続している場合のみ、シリアル通信をサポートします。
    • CIO-WENET イーサネット I/O モジュールはシリアル通信をサポートしていません。
  • D-Sub 9 ピンシリアルケーブルまたは Ethernet ケーブル
  • PC
  • ABB ロボットコントローラ (IRC5、S4Cplus、または S4P+)
  • PC インタフェース (Ethernet 通信用に推奨)
  • ビジョンシステムインタフェース (シリアル通信用)

必要なソフトウェア

  • Cognex In-Sight Explorer バージョン 3.3.0 以上
  • Cognex In-Sight ファームウェアバージョン 3.3.0 以上
  • ABB RAPID プログラミング言語

シリアル通信

ロボットコントローラの RAPID コード

MODULE VISION

 ! DATA DECLARATIONS

  PERS num nXOffs:=0;

  PERS num nYOffs:=0;

  PERS num nAngle:=0;

  VAR string stReceived;

  VAR iodev ComChannel;

  PERS tooldata tGripper:=[TRUE,[0,0,0],[0,0,0,1]],

  [5,[0,0,],[1,0,0,0],0,0,0]];

  PERS tooldata tVision:=[TRUE,[[0,0,0],[0,0,0,1]],

  [5,[0, 0, 0],[1,0,0,0],0,0,0]];

  CONST robtarget pHome:=[[0,0,0],[0,0,0,1],

  [-2,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

  CONST robtarget pVisionPos:=[[0,0,0],[0,0,0,1],

  [-2,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

  PROC Main()

    MoveL pHome,v1000,fine,tVision;

    GetVisionData;

    MoveL Reltool(pVisionPos,nXOffs,nYOffs,0\Rz:=nAngle),v500,

    fine,tGripper;

    WaitTime 3;

    MoveL pHome,v1000,fine,tVision;

  ENDPROC

  PROC GetVisionData()

    VAR string XData:="";

    VAR string YData:="";

    VAR string AngleData:="";

    VAR num NumCharacters:=9;

    VAR bool bOK;

    nXOffs:=0;

    nYOffs:=0;

    nAngle:=0;

    Close ComChannel;

    Open "COM2", ComChannel \Append\Bin;

  ClearIOBuff ComChannel;

    WaitTime\InPos, 0.5;

    ! Instruction In-Sight to Acquire an Image

    ! and not return until complete

    WriteStrBin ComChannel, "sw8\0D";

    CheckStatus;

    ! Get the value in cell C7

    WriteStrBin ComChannel, "gvc007\0D";

    CheckStatus;

    ! Read the X-offset

    XData:= ReadStrbin (ComChannel, NumCharacters \Time:=5);

    ! Read the Y-offset

    YData:= ReadStrbin (ComChannel, NumCharacters \Time:=5);

    ! Read the Angle-offset

    AngleData:= ReadStrbin (ComChannel, NumCharacters \Time:=5);

    !Closes Serial Channel "COM2"

    Close ComChannel;

    !Convert String Data To Numerical Data

    bOK:=StrToVal(XData,nXOffs);

    bOK:=StrToVal(YData,nYOffs);

    bOK:=StrToVal(AngleData,nAngle);

  ENDPROC

  PROC CheckStatus()

    stReceived:=ReadStrBin(ComChannel,1\Time:=5);

    IF stReceived<>"1" THEN

      TPErase;

      TPWrite "Vision Error!";

      Stop;

  ENDIF

  ClearIOBuff ComChannel;

  ENDPROC

ENDMODULE

In-Sight シリアルポートの設定

ビジョンシステムに接続している間 (ビジョンシステムはオフライン) に、次の手順に従ってください。

  1. [センサ] メニューで、[シリアルポートの設定] をクリックします。

  2. [I/O の種類] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、I/O モジュールを設定します。[OK] ボタンをクリックして [I/O モジュールの設定] ダイアログを閉じ、[シリアルポートの設定] ダイアログに戻ります。

    3. 注意: In-Sight 7000 シリーズのビジョンシステムが CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用するように構成されている場合、電源および I/O ブレークアウトケーブルの　RS-232 TRANSMIT および RS-232 RECEIVE ピンは無効です。シリアルデバイスへの接続には、I/O モジュールの RS-232 OUT ポート (DB9) を使用してください。

  3. [シリアルポートの設定] ダイアログで、次のプロパティを設定します。

    • [ビット/秒]: 115200
    • [データビット]: 8 (CIO-1400 を使用する場合のデフォルト設定)
    • [ストップビット]: 1 (CIO-1400 を使用する場合のデフォルト設定)
    • [パリティ]: なし
    • [フロー制御]: なし
    • [モード]: Native
    • [固定長の入力]: 無効
    • [入力終端記号]: 13
    • [出力終端記号]: 13
  4. ダイアログで、ビジョンシステムに物理的に接続されている I/O モジュールの横に「(接続済み)」というメッセージが表示されていることを確認します。
  5. [OK] をクリックします。

In-Sight ジョブの設定

  1. [ファイル] メニューから、新規ジョブを作成します。
  2. AcquireImage プロパティシート (セル A0 をダブルクリック) で、次のパラメータを設定します。
    • トリガ = 外部
    • 手動 = ON
  3. セル A2 を選択し、「ExtractBlobs」と入力して Enter キーを押します (この時点で、ExtractBlobs プロパティシートが表示)。
  4. [OK] をクリックします (パラメータはすべて、デフォルト設定値)。
  5. セル A4 を選択し、パレット の [スニペット] タブから、[Communication] → [Robots] → [ABB.cxd] スニペットをスプレッドシートに挿入します。
  6. 次のように座標セル参照を定義します。
    • X: C6 をダブルクリック、C2 をダブルクリック
    • Y: D6 をダブルクリック、D2 をダブルクリック
    • 角度: E6 をダブルクリック、E2 をダブルクリック
  7. [手動トリガ] アイコンを数回クリックし、ExtractBlobs 関数からのデータが変化していることを確認します。
  8. ジョブを保存します。
  9. ビジョンシステムをオンラインにします。

Ethernet 通信

ロボットコントローラの設定

次のコードの例は、IP アドレス 192.168.0.1 の In-Sight ビジョンシステムに接続しているコントローラを示しています。ビジョンシステムの IP アドレスを確認するには、In-Sight Explorer の [In-Sight ネットワーク] ツリーでビジョンシステム名を右クリックして、[プロパティ] を選択します。

ロボットコントローラの RAPID コード

MODULE VISION

  ! DATA DECLARATIONS

  PERS num nXOffs:=0;

  PERS num nYOffs:=0;

  PERS num nAngle:=0;

  VAR string stReceived;

  VAR socketdev ComSocket;

  PERS tooldata tGripper:=[TRUE,[0,0,0],[0,0,0,1]],

  [5,[0,0,],[1,0,0,0],0,0,0]];

  PERS tooldata tVision:=[TRUE,[[0,0,0],[0,0,0,1]],

  [5,[0, 0, 0],[1,0,0,0],0,0,0]];

  CONST robtarget pHome:=[[0,0,0],[0,0,0,1],

  [-2,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

  CONST robtarget pVisionPos:=[[0,0,0],[0,0,0,1],

  [-2,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

  PROC Main()

    ConnectToInSight ;

    MoveL pHome,v1000,fine,tVision;

    GetVisionData;

    MoveL Reltool(pVisionPos,nXOffs,nYOffs,0\Rz:=nAngle),v500,

    fine,tGripper;

    WaitTime 3;

    MoveL pHome,v1000,fine,tVision;

    GetVisionData;

    MoveL Reltool(pVisionPos,nXOffs,nYOffs,0\Rz:=nAngle),v500,

    fine,tGripper;

    WaitTime 3;

    MoveL pHome,v1000,fine,tVision;

    SocketClose ComSocket;

  ENDPROC

  PROC GetVisionData()

    VAR string XData:="";

    VAR string YData:="";

    VAR string AngleData:="";

    VAR num NumCharacters:=9;

    VAR bool bOK;

    nXOffs:=0;

    nYOffs:=0;

    nAngle:=0;

    status := SocketGetStatus(ComSocket);

    IF status <> SOCKET_CONNECTED THEN

      TPErase;

      TPWrite "Vision Sensor Not Connected";

      Return;

    ENDIF

    ! Instruct In-Sight to Acquire an Image

    ! and not return until complete

    SocketSend ComSocket \Str:="sw8\0d\0a ";

    CheckStatus;

    SocketReceive ComSocket \Str:=stReceived;

    ! Get the value in cell C7

    SocketSend ComSocket \Str:="gvc007\0d\0a ";

    ! Read the data

    SocketReceive ComSocket \Str:=stReceived;

    ! Parse the data string

    XData:= StrPart(stReceived, 3, NumCharacters);

    YData:= StrPart(stReceived, NumCharacters, NumCharacters);

    AngleData:= StrPart(stReceived, 2*NumCharacters, NumCharacters);

    !Convert String Data To Numerical Data

    bOK:=StrToVal(XData,nXOffs);

    bOK:=StrToVal(YData,nYOffs);

    bOK:=StrToVal(AngleData,nAngle);

    SocketClose ComSocket;

  ENDPROC

  PROC CheckStatus()

    SocketReceive ComSocket \Str:=stReceived;

    IF stReceived <> "1\0d\0a" THEN

      TPErase;

      TPWrite "Vision Error!";

      Stop;

    ENDIF

  ENDPROC

  PROC ConnectToInSight()

    var num found:=0;

    var num length:=0;

    SocketCreate ComSocket;

    SocketConnect ComSocket, "192.168.0.1", 23;

    SocketReceive ComSocket \Str:=stReceived;

    Length:=strlen(stReceived);

    found:=strmatch(stReceived,1,"User:");

    IF found = length+1 THEN

      TPErase;

      TPWrite "Vision Login Error (User Prompt)";

      Stop;

    ENDIF

    ! Send the Username

    SocketSend ComSocket \Str:="admin\0d\0a";

    SocketReceive ComSocket \Str:=stReceived;

    IF stReceived <> "Password:" THEN

      TPErase;

      TPWrite "Vision Login Error (Password Prompt)";

      Stop;

    ENDIF

    ! Send Password

    SocketSend ComSocket \Str:="\0d\0a";

    SocketReceive ComSocket \Str:=stReceived;

    IF stReceived <> "User Logged In\0d\0a" THEN

      TPErase;

      TPWrite "Vision Login Error (Final Login)";

      Stop;

    ENDIF

  ENDPROC

ENDMODULE

In-Sight ジョブの設定

  1. [ファイル] メニューから、新規ジョブを作成します。
  2. AcquireImage プロパティシート (セル A0 をダブルクリック) で、次のパラメータを設定します。
  • トリガ = 外部
  • 手動 = ON
  3. セル A2 を選択し、「ExtractBlobs」と入力して Enter キーを押します (この時点で、ExtractBlobs プロパティシートが表示)。
  4. [OK] をクリックします (パラメータはすべて、デフォルト設定値)。
  5. セル A4 を選択し、パレット の [スニペット] タブから、[Communication] → [Robots] → [ABB.cxd] スニペットをスプレッドシートに挿入します。
  6. 次のように座標セル参照を定義します。
  • X: C6 をダブルクリック、C2 をダブルクリック
  • Y: D6 をダブルクリック、D2 をダブルクリック
  • 角度: E6 をダブルクリック、E2 をダブルクリック
  7. [手動トリガ] アイコンを数回クリックし、ExtractBlobs 関数からのデータが変化していることを確認します。
  8. ジョブを保存します。
  9. ビジョンシステムをオンラインにします。

トラブルシューティング

ハイパーターミナルとのシリアル接続

In-Sight シリアルポートの設定

ビジョンシステムに接続している間 (ビジョンシステムはオフライン) に、次の手順に従ってください。

  1. [センサ] メニューで、[シリアルポートの設定] をクリックします。

  2. [I/O の種類] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、I/O モジュールを設定します。[OK] ボタンをクリックして [I/O モジュールの設定] ダイアログを閉じ、[シリアルポートの設定] ダイアログに戻ります。

    注意: In-Sight 7000 シリーズのビジョンシステムが CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用するように構成されている場合、電源および I/O ブレークアウトケーブルの　RS-232 TRANSMIT および RS-232 RECEIVE ピンは無効です。シリアルデバイスへの接続には、I/O モジュールの RS-232 OUT ポート (DB9) を使用してください。

  3. [シリアルポートの設定] ダイアログで、次のプロパティを設定します。

    • [ビット/秒]: 115200
    • [データビット]: 8 (CIO-1400 を使用する場合のデフォルト設定)
    • [ストップビット]: 1 (CIO-1400 を使用する場合のデフォルト設定)
    • [パリティ]: なし
    • [フロー制御]: なし
    • [モード]: Native
    • [固定長の入力]: 無効
    • [入力終端記号]: 13
    • [出力終端記号]: 13
  4. ダイアログで、ビジョンシステムに物理的に接続されている I/O モジュールの横に「(接続済み)」というメッセージが表示されていることを確認します。
  5. [OK] をクリックします。

テストジョブの設定

  1. [ファイル] メニューから、新規ジョブを作成します。
  2. AcquireImage プロパティシート (セル A0 をダブルクリック) で、次のパラメータを設定します。
    • トリガ = 外部
    • 手動 = ON
  3. セル A2 を選択し、「ExtractBlobs」と入力して Enter キーを押します (この時点で、ExtractBlobs プロパティシートが表示)。
  4. [OK] をクリックします (パラメータはすべて、デフォルト設定値)。
  5. セル A4 を選択し、「FindBlobs」と入力して Enter キーを押します (この時点で、FindBlobs プロパティシートが表示)。
  6. ブロブパラメータについてはセル B2 を参照します。
  7. [OK] をクリックします。
  8. [手動トリガ] アイコンを数回クリックし、データが変化していることを確認します。
  9. ビジョンシステムをオンラインにします。

In-Sight ビジョンシステムへの接続

  1. Windows で、[スタート] → [すべてのプログラム] → [アクセサリ] → [通信] → [ハイパーターミナル] をクリックします。
  2. 新しい接続を生成します ([ファイル] → [新しい接続])。
    • [ポート名]: COM1
    • [ビット/秒]: 115200
    • [データビット]: 8
    • [パリティ]: なし
    • [ストップビット]: 1
    • [フロー制御]: なし
  3. [ファイル] → [プロパティ] → [設定] をクリックします。
    • [エミュレーション]: ANSI
    • [ASCII 設定] を表示を見やすくするため次のように設定します。
      • 行末に改行文字を付ける
      • ローカル エコーする
      • 着信データに改行文字を付ける
      • 右端で折り返す
  4. [接続] をクリックします。
  5. ビジョンシステムのユーザ名とパスワードを入力します (デフォルトのユーザ名は「admin」、パスワードは空白)。
  6. 「User Logged In」と表示されます。
  7. 「SW8」と入力し、Enter キーを押します (手動トリガが実行され、画像が変化)。
  8. 「GVC004」と入力し、Enter キーを押します (セル C4 に保存されている値が取得)。

Telnet による Ethernet 接続の確認

テストジョブの設定

  1. [ファイル] メニューから、新規ジョブを作成します。
  2. AcquireImage プロパティシート (セル A0 をダブルクリック) で、次のパラメータを設定します。
    • トリガ = 外部
    • 手動 = ON
  3. セル A2 を選択し、「ExtractBlobs」と入力して Enter キーを押します (この時点で、ExtractBlobs プロパティシートが表示)。
  4. [OK] をクリックします (パラメータはすべて、デフォルト設定値)。
  5. セル A4 を選択し、「FindBlobs」と入力して Enter キーを押します (この時点で、FindBlobs プロパティシートが表示)。
  6. ブロブパラメータについてはセル B2 を参照します。
  7. [OK] をクリックします。
  8. [手動トリガ] アイコンを数回クリックし、データが変化していることを確認します。
  9. ビジョンシステムをオンラインにします。

In-Sight ビジョンシステムへの接続

  1. Windows で、[スタート] → [ファイル名を指定して実行] をクリックします。
  2. [ファイル名を指定して実行] ウィンドウで、「telnet <センサの IP アドレス>」 (例: telnet 10.27.80.66) と入力します。
  3. [OK] をクリックします。
  4. ビジョンシステムのユーザ名とパスワードを入力します (デフォルトのユーザ名は「admin」、パスワードは空白)。
  5. 「User Logged In」と表示されます。
  6. 「SW8」と入力し、Enter キーを押します (手動トリガが実行され、画像が変化)。
  7. 「GVC004」と入力し、Enter キーを押します (セル C4 に保存されている値が取得)。
  8. telnet セッションを切断するには、Ctrl + ] キーを押します。
  9. 「quit」と入力し、ウィンドウを閉じます。


ロボット通信 - DENSO ロボットコントローラ

ロボット通信

In-Sight 通信リファレンス

このトピックでは、In-Sight ビジョンシステムから DENSO ロボットコントローラに接続し、データを転送する手順の概要を説明します。このトピックで、ロボットコントローラは、画像取り込みとデータ転送を制御するデバイスを指しています。一般に、In-Sight ネイティブモードコマンドを使用するロボットコントローラは、画像を取り込み、処理するようにビジョンシステムをトリガし、その後、ビジョンシステムに特定のデータを要求します。

必要なハードウェア

  • In-Sight ビジョンシステム (In-Sight Micro シリーズ、In-Sight 5000 および In-Sight 7000 シリーズのビジョンシステム)

  • In-Sight I/O モジュール または電源および I/O ブレークアウトケーブル (In-Sight 7000 シリーズビジョンシステムのみ)

    注意:
    • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
    • In-Sight Micro ビジョンシステムは、CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続している場合のみ、シリアル通信をサポートします。
    • CIO-WENET イーサネット I/O モジュールはシリアル通信をサポートしていません。
  • RS-232 シリアルケーブル (ヌルモデム) または Ethernet ケーブル (クロスタイプ)
  • PC
  • DENSO ロボットコントローラ (RC-5 または RC-7 バージョン)
  • PC インタフェース (In-Sight 設定用に推奨)
  • ビジョンシステムインタフェース (シリアル通信用)

必要なソフトウェア

  • Cognex In-Sight Explorer バージョン 3.3.0 以上

    注意: ビジョンシステムの IP アドレスを確認するには、In-Sight Explorer の [In-Sight ネットワーク] ペインでビジョンシステム名を右クリックし、[プロパティ] を選択します。

  • Cognex In-Sight ファームウェアバージョン 3.3.0 以上
  • DENSO ロボットコントローラ (RC-5 または RC-7)
  • DENSO Wincaps II シミュレーションソフトウェア (オプション)

DENSO の設定

Ethernet 接続には、クロスタイプの Ethernet ケーブルを使用します。

  1. DENSO コントローラの IP アドレスを設定します。
  2. ティーチペンダントのトップ画面から、次の手順を実行します。
    • [F6 Set]、[F5 Set Com]、[F4 Address] を押します。
    • 変更する項目を選択し、[F5 Change] を押します。

    • 必要な IP アドレスを入力して、[OK] をクリックします。 この例では、コントローラの IP アドレスとして 192.168.0.1 を使用します。

      注意: プログラムコードの入力方法の詳細については、『DENSO Owner’s Manual』CD の「Setting Up Manual」の第 5 章「Editing a program in manual mode」を参照してください。

    • DENSO ロボットをキャリブレーションします。

DENSO RC-5 または RC-7 コントローラでの新規プログラムの生成

  1. ティーチペンダントを手動モードに切り替えます。
  2. ティーチペンダントのトップ画面から、次の手順を実行します。
    • [F1 Program] を押します。
    • [F1 New Program] を押します。
    • ダイアログボックスが表示され、新規プログラムを生成するか確認を求められます。[OK] を押します。
    • 新規プログラムの名前を入力し、[OK] を押します。この例では、名前として PRO1 を使用します。

  3. PRO1 に次のサンプルコードを入力します。

    注意: プログラムコードの入力方法の詳細については、『DENSO Owner’s Manual』CD の「Setting Up Manual」の第 5 章「Editing a program in manual mode」を参照してください。

    • サンプルコードは 4 軸 DENSO ロボット用で、次のことを前提としています。
      • P1 は、ビジョンシステムによって検出される「ピックポイント」となります。
      • IO104 は、アームツールの端にあるグリッパをアクティブにします。
      • アプローチ高さとデパート高さはそれぞれ 75mm です。
      • ピックポイントの「Z」高さは変わりません。

    '!TITLE "PRO1"

    PROGRAM PRO1

    TAKEARM

    SPEED 100

    FLUSH #4

    INPUT #4, F1, F2, F3

    DELAY 100

    LETX P1 = F1

    LETY P1 = F2

    LETT P1 = F2

    APPROACH P, P1 75

    MOVE L, @E P1

    SET IO104

    DELAY 75

    DEPART L, 100

サンプルプログラムの保存とアクティブ化

  1. サンプルプログラムを入力したら、[F6 Save] を押します。
  2. [OK] を押して、入力したプログラムを保存します。
  3. プログラムリストで PRO1 を選択します。
  4. [F12 Config] を押します。
  5. [Make the specified program active] を選択し、[OK] を押します。
  6. [OK] を押して、コンパイルを開始します。

  7. [OK] を押して、「local variable initialized」エラーに応答します。

    注意: 詳細については、『DENSO Owner’s Manual』CD の「Beginners Guide」の第 2.1 章「Creating a program」を参照してください。

In-Sight ビジョンシステムとの通信を確立した後、このプログラムを実行すると、DENSO コントローラにデータが入力され、新しいピック位置に移動します。 プロジェクトのビジョンシステム部分の設定については、In-Sight のマニュアルを参照してください。


ロボット通信 - FANUC ロボットコントローラ

ロボット通信

In-Sight 通信リファレンス

  • 概要
  • シリアル通信
  • Ethernet 通信
  • In-Sight ビジョンシステムインタフェースによる通信
  • トラブルシューティング

概要

このトピックでは、In-Sight ビジョンシステムから FANUC ロボットコントローラに接続し、データを転送する手順の概要を説明します。このトピックで、ロボットコントローラは、画像取り込みとデータ転送を制御するデバイスを指しています。 一般に、In-Sight ネイティブモードコマンドを使用するロボットコントローラは、画像を取り込み、処理するようにビジョンシステムをトリガし、その後、ビジョンシステムに特定のデータを要求します。データは、シリアルl通信または Ethernet 通信を使用して転送することができます。

シリアル通信

この節では、シリアル接続を介して FANUC ロボットコントローラと In-Sight ビジョンシステム間の通信を確立するための手順について説明します。

  • 要件
  • KAREL ロボットコントローラコード
  • In-Sight シリアルポートの設定
  • In-Sight ジョブの設定

要件

必要なハードウェア

  • In-Sight ビジョンシステム (In-Sight Micro シリーズ、In-Sight 5000 および In-Sight 7000 シリーズのビジョンシステム)
  • In-Sight I/O モジュール または電源および I/O ブレークアウトケーブル (In-Sight 7000 シリーズビジョンシステムのみ)

    注意:
    • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
    • In-Sight Micro ビジョンシステムは、CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続している場合のみ、シリアル通信をサポートします。
  • DB9 シリアルケーブル
  • PC
  • FANUC ロボットコントローラ (RJ2 または RJ3)
  • K-Floppy ケーブル (DB25 - DB9)
  • ヌルモデムアダプタ (DB9 - DB9)

必要なソフトウェア

  • Cognex In-Sight Explorer バージョン 3.3 以上
  • Cognex In-Sight Explorer ファームウェアバージョン 3.3 以上
  • FANUC KAREL プログラミング言語

KAREL ロボットコントローラコード

VAR

  file_var     :FILE

  Status       :STRING[4]

  xs           :STRING[9]

  ys           :STRING[9]

  angles       :STRING[9]

  x            :REAL

  y            :REAL

  angle        :REAL

BEGIN

-- Connect to In-Sight

OPEN FILE file_var ('RW', 'P2:')

-- Instruction In-Sight to Acquire an Image

-- (wait for a response)

WRITE file_var ('sw8',CHR(13))

-- Read status

READ file_var (status::1::0)

IF status <> '1' THEN

  WRITE TPDISPLAY('sw8 Failed',CR)

  RETURN

  ENDIF

CLR_IO_STAT(file_var)

-- Get the value in cell C7

WRITE file_var ('gvc007',CHR(13))

-- Read status

READ file_var (status::1::0)

IF status <> '1' THEN

  WRITE TPDISPLAY('gvc007 Failed',CR)

  RETURN

  ENDIF

CLR_IO_STAT(file_var)

-- Read the data

-- This will split the information at the quotations "'".

-- Example String '10.5''9.8''15.9'

READ file_var (xs::0::2, ys::0::2, angles::0::2, CR)

-- Convert the data

CNV_STR_REAL(xs, x)

CNV_STR_REAL(ys, y)

CNV_STR_REAL(angles, angle)

-- Remove comment for testing

-- WRITE TPDISPLAY('X:',x,CR,'Y:',y,CR,'R',Angle,CR)

--

-- Use Vision Data

--

-- Close the connection

CLOSE FILE file_var

In-Sight シリアルポートの設定

ビジョンシステムに接続している間 (ビジョンシステムはオフライン) に、次の手順に従ってください。

  1. [センサ] メニューで、[シリアルポートの設定] をクリックします。

  2. [I/O の種類] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、I/O モジュールを設定します。[OK] ボタンをクリックして [I/O モジュールの設定] ダイアログを閉じ、[シリアルポートの設定] ダイアログに戻ります。

    注意: In-Sight 7000 シリーズのビジョンシステムが CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用するように構成されている場合、電源および I/O ブレークアウトケーブルの　RS-232 TRANSMIT および RS-232 RECEIVE ピンは無効です。シリアルデバイスへの接続には、I/O モジュールの RS-232 OUT ポート (DB9) を使用してください。

    [シリアルポートの設定] ダイアログで、次のプロパティを設定します。

    • [ビット/秒]: 19200
    • [データビット]: 8 (CIO-1400 を使用する場合のデフォルト設定)
    • [ストップビット]: 1 (CIO-1400 を使用する場合のデフォルト設定)
    • [パリティ]: なし
    • [フロー制御]: なし
    • [モード]: Native
    • [固定長の入力]: 無効
    • [入力終端記号]: 13
    • [出力終端記号]: 0
    • ダイアログで、ビジョンシステムに物理的に接続されている I/O モジュールの横に「(接続済み)」というメッセージが表示されていることを確認します。
  3. [OK] をクリックします。

In-Sight ジョブの設定

  1. [ファイル] メニューから、新規ジョブを作成します。
  2. AcquireImage プロパティシート (セル A0 をダブルクリック) で、次のパラメータを設定します。
  • トリガ = 外部
  • 手動 = ON
  3. セル A2 を選択し、「ExtractBlobs」と入力して Enter キーを押します (この時点で、ExtractBlobs プロパティシートが表示)。
  4. [OK] をクリックします (パラメータはすべて、デフォルト設定値)。
  5. セル A4 を選択し、パレット の [スニペット] タブから、[Communication] → [Robots] → [FANUC.cxd] スニペットをスプレッドシートに挿入します。
  6. 次のように座標セル参照を定義します。
  • X: C6 をダブルクリック、C2 をダブルクリック
  • Y: D6 をダブルクリック、D2 をダブルクリック
  • 角度: E6 をダブルクリック、E2 をダブルクリック
  7. [手動トリガ] アイコンを数回クリックし、ExtractBlobs 関数からのデータが変化していることを確認します。
  8. ジョブを保存します。
  9. ビジョンシステムをオンラインにします。

Ethernet 通信

この節では、Ethernet 通信を介して FANUC ロボットコントローラと In-Sight ビジョンシステム間の通信を設定するための 2 つのオプションについて説明します。

  • TCP/IP
    • 要件
    • KAREL ロボットコントローラの設定
    • KAREL ロボットコントローラコード
    • In-Sight ジョブの設定
  • EtherNet/IP
    • 要件
    • EtherNet/IP の設定
    • TPP ロボットコントローラの設定
    • TPP ロボットコントローラコード
    • In-Sight ビジョンシステムとロボットコントローラのキャリブレーション
    • In-Sight ジョブの設定と部品の登録
    • In-Sight ジョブの I/O 設定

TCP/IP

この節では、TCP/IP を介して FANUC ロボットコントローラと In-Sight ビジョンシステム間の通信を設定する方法について説明します。

要件

必要なハードウェア
  • In-Sight ビジョンシステム (In-Sight Micro シリーズ、In-Sight 5000 および In-Sight 7000 シリーズのビジョンシステム)
  • In-Sight I/O モジュール または電源および I/O ブレークアウトケーブル (In-Sight 7000 シリーズビジョンシステムのみ)
  • Ethernet ケーブル
  • PC
  • FANUC ロボットコントローラ (RJ2 または RJ3)
必要なソフトウェア
  • Cognex In-Sight Explorer バージョン 3.3 以上
  • Cognex In-Sight Explorer ファームウェアバージョン 3.3 以上
  • FANUC KAREL プログラミング言語

KAREL ロボットコントローラの設定

ソケットメッセージングオプションを設定する

設定対象のタグを、ネットワーク上の別のデバイスで使用できるように設定することはできません。

クライアントタグの設定

  1. コントローラをコールドスタートします。
    • ティーチペンダントで、Shift + RESET キーを押し続けます。または、オペレータパネルで RESET キーを押し続けます。
    • ティーチペンダントで Shift + RESET キーを押したまま (または、オペレータパネルで RESET キーを押したまま)、オペレータの ON ボタンを押します。
    • すべてのキーを離します。
  2. ティーチペンダントで、[MENUS] を押します。
  3. [SETUP] を選択します。
  4. F1 キー ([TYPE]) を押します。
  5. [Host Comm] を選択します。
  6. F4 キー ([SHOW]) を押します。
  7. [Clients] を選択します。

  8. カーソルを、ソケットメッセージング用に設定するタグに移動し、F3 キーを押します。次のような画面が表示されます。

    SETUP Tags

    Tag C3:

    ****************

    1 Comment:

    SM

    2 Protocol name:

    *****

    3 Port name:

    *************************

    4 Mode:

    UNDEFINED

    Current

    ********

    State:

    ****************************

    5 Remote:

    192.168.0.1

    6 Path:

    ****************************

    Startup

    OFF

    7 State:

    15 min

    8 Remote:

    9 Path:

    Options

    10 Error Reporting:

    11 Inactivity Timeout:

  9. カーソルを [Protocol name] に移動し、F4 キー ([CHOICE]) を押します。
  10. [SM] を選択します。
  11. カーソルを [Startup State] に移動し、F4 キー ( [CHOICE]) を押します。
  12. [Start] を選択して、Enter キーを押します。
  13. [Remote] を選択して、Enter キーを押します。
  14. ソケットメッセージングに使用するリモートホストサーバを入力し、F2 キー ([ACTION]) を押します。

  15. [DEFINE] を選択します。

    注意: DNS を使用していない場合は、ホストエントリテーブルにリモートホストとその IP アドレスを追加する必要があります。

システム変数の設定 (クライアントタグ)

  1. [MENUS] を押します。
  2. [NEXT] を選択します。
  3. [SYSTEM] を選択し、F1 キー ([TYPE]) を押します。
  4. [Variables] を選択します。
  5. カーソルを [$HOSTC_CFG] に移動し、Enter キーを押します。

  6. カーソルを、前述のタグの設定で選択したタグに対応する構造体に移動します。例えば、タグ S3 を設定している場合は、次の画面に示すように、カーソルを構造体要素 [3] に移動します。

    SYSTEM Variables
    $HOSTS_CFG
    1 [1] | HOST_CFG_T
    2 [2] | HOST_CFG_T
    3 [3] | HOST_CFG_T
    4 [4] | HOST_CFG_T
    5 [5] | HOST_CFG_T
    6 [6] | HOST_CFG_T
    7 [7] | HOST_CFG_T
    8 [8] | HOST_CFG_T

  7. Enter キーを押します。次のような画面が表示されます。

    SYSTEM Variables
    $HOSTS_CFG[3]
    1 $COMMENT | *uninit*
    2 $PROTOCOL | 'SM'
    3 $PORT | *uninit*
    4 $OPER | 3
    5 $STATE | 3
    6 $MODE | *uninit*
    7 $REMOTE | *uninit*
    8 $REPERRS | FALSE
    9 $TIMEOUT | 15
    10 $PATH | *uninit*
    11 $STRT_PATH | *uninit*
    12 $STRT_REMOTE | *uninit*
    13 $USERNAME | *uninit*
    14 $PWRD_TIMOUT | 0
    15 $SERVER_PORT | 23
  8. カーソルを [$SERVER_PORT] に移動します。ソケットメッセージングに使用する TCP/IP サーバポートの名前を入力します。
  9. これで、クライアントタグを KAREL プログラムで使用できます。

KAREL ロボットコントローラコード

次のコードの例は、IP アドレス 192.168.0.1 の In-Sight ビジョンシステムに接続しているコントローラを示しています。ビジョンシステムの IP アドレスを確認するには、In-Sight Explorer の [In-Sight ネットワーク] ペインでビジョンシステム名を右クリックして、[プロパティ] を選択します。

PROGRAM eComm

VAR

  file_var :FILE

  tmp_int  :INTEGER

  mp_str   :STRING[128]

  status   :INTEGER

  entry    :INTEGER

  try      :INTEGER

  statuss      :STRING[1]

  xs           :STRING[9]

  ys           :STRING[9]

  angles       :STRING[9]

  x            :REAL

  y            :REAL

  angle        :REAL

BEGIN

  WRITE TPDISPLAY(CR,CR,CR,CR,CR,CR,CR,CR,CR,CR,CR,CR,CR,CR,CR)

  SET_FILE_ATR(file_var, ATR_IA)

  -- Connect the tag

  WRITE TPDISPLAY('Connecting...',CR)

  MSG_DISCO('C3:', status)

  MSG_CONNECT('C3:',status)

  OPEN FILE file_var('rw','C3:')

  -- Read the In-Sight Welcome message

  WRITE TPDISPLAY('Logging In',CR)

  mp_str =''

  READ file_var(mp_str)

  WRITE TPDISPLAY(mp_str,CR)

  -- Read User:prompt

  READ file_var(mp_str::6::0)

  IF UNINIT(mp_str) THEN

    mp_str = ''

  ENDIF

  WRITE TPDISPLAY(mp_str,CR)

  IF (mp_str <>'User:') THEN

    WRITE TPDISPLAY('User Failed',CR)

    --Error

    RETURN

  ENDIF

  --Send User Name

  WRITE file_var('admin',CHR(13),CHR(10))

  -- Read Password prompt

  mp_str =''

  READ file_var(mp_str::10::0)

  IF UNINIT(mp_str) THEN

    mp_str = ''

  ENDIF

  WRITE TPDISPLAY(mp_str,CR)

  IF (mp_str <>'Password:') THEN

    WRITE TPDISPLAY('Password Failed',CR)

    --Error

    RETURN

  ENDIF

  --Send Password

  WRITE file_var('',CHR(13),CHR(10))

  -- Read Login Response

  mp_str =''

  READ file_var(mp_str)

  IF UNINIT(mp_str) THEN

    mp_str = ''

  ENDIF

  WRITE TPDISPLAY(mp_str,CR)

  IF (mp_str <> 'User Logged In') THEN

    WRITE TPDISPLAY('Log In Failed',CR)

    --Error

    RETURN

  ENDIF

  -- Instruction In-Sight to Acquire an Image

  -- (wait for a response)

  WRITE TPDISPLAY('Trigger',CR)

  WRITE file_var ('sw8',CHR(13),CHR(10))

  -- Read Status

  READ file_var (statuss)

  IF statuss <> '1' THEN

    WRITE TPDISPLAY('sw8 Failed',CR)

    RETURN

  ENDIF

  -- Get the value in cell C7

  WRITE TPDISPLAY('Get Value C7',CR)

  WRITE file_var ('gvc007',CHR(13),CHR(10))

  -- Read Status

  READ file_var (statuss)

  IF statuss <> '1' THEN

    WRITE TPDISPLAY('gvc007 Failed',CR)

    RETURN

  ENDIF

  -- Read the data

  -- This will split the information at the quotations "'".

  -- Example String '10.5''9.8''15.9'

  READ file_var (xs::0::2, ys::0::2, angles::0::2, CR)

  --Disconnect Socket

  MSG_DISCO('C3:', status)

  -- Convert the data

  CNV_STR_REAL(xs, x)

  CNV_STR_REAL(ys, y)

  CNV_STR_REAL(angles, angle)

  WRITE TPDISPLAY('X:',x,CR,'Y:',y,CR,'R',Angle,CR)

END eComm

In-Sight ジョブの設定

  1. [ファイル] メニューから、新規ジョブを作成します。
  2. AcquireImage プロパティシート (セル A0 をダブルクリック) で、次のパラメータを設定します。
    1. トリガ = 外部
    2. 手動 = ON
  3. セル A2 を選択し、「ExtractBlobs」と入力して Enter キーを押します (この時点で、ExtractBlobs プロパティシートが表示)。
  4. [OK] をクリックします (パラメータはすべて、デフォルト設定値)。
  5. セル A4 を選択し、パレット の [スニペット] タブから、[Communication] → [Robots] → [FANUC.Communications] スニペットをスプレッドシートに挿入します。
  6. 次のように座標セル参照を定義します。
    1. X: C6 をダブルクリック、C2 をダブルクリック
    2. Y: D6 をダブルクリック、D2 をダブルクリック
    3. 角度: E6 をダブルクリック、E2 をダブルクリック
  7. [手動トリガ] アイコンを数回クリックし、ExtractBlobs 関数からのデータが変化していることを確認します。
  8. ジョブを保存します。
  9. ビジョンシステムをオンラインにします。

EtherNet/IP

この節では、EtherNet/IP (EIP) を介して FANUC ロボットコントローラと In-Sight ビジョンシステム間の通信を設定する方法について説明します。 この設定シナリオの例では、ロボットコントローラは、画像取り込みとその後のビジョンシステムからのデータ転送を制御するデバイスを指しています。 一般に、ロボットコントローラは、X、Y、および角度データの画像を取り込み、処理するようにビジョンシステムをトリガします。 EtherNet/IP 通信は、ビジョンシステムをトリガし、データをロボットコントローラに送信するのに使用されます。また、16 ビットデジタル入力ラインは、2D 部品の位置を転送するのに使用されます。

注意:
  • 負の浮動小数点数値は入力ラインを介して送信することはできません。すべての数値はビジョンシステムで 10 を乗算され、その後ロボットコントローラで 10 で除算されます。
  • この節で使用される I/O 設定は 1 つの例であり、実際の I/O 設定とは異なる場合があります。 EtherNet/IP はラック 89 を使用しますが、スロットの場所は取り付けによって変わる場合があります。この例では、ラック 89 とスロット 1 を使用します。

要件

必要なハードウェア
  • In-Sight ビジョンシステム (In-Sight Micro シリーズ、In-Sight 5000 および In-Sight 7000 シリーズのビジョンシステム)
  • In-Sight I/O モジュール または電源および I/O ブレークアウトケーブル (In-Sight 7000 シリーズビジョンシステムのみ)
  • Ethernet ケーブル
  • PC
  • FANUC ロボットコントローラ (R-30iA’)
必要なソフトウェア
  • In-Sight Explorer バージョン 4.8 以上
  • In-Sight Explorer ファームウェアバージョン 4.8 以上
  • FANUC ソフトウェア R540 EtherNet/IP I/O スキャナ
  • FANUC ティーチペンダントプログラミング (TPP)

EtherNet/IP の設定

  1. ロボットコントローラと通信する In-Sight ビジョンシステムに接続します。
  2. [センサ] メニューから [ネットワークの設定] を選択し、[ネットワークの設定] ダイアログを開きます。
  3. [リアルタイムイーサネットプロトコル] を [EtherNet/IP] に設定します。

TPP ロボットコントローラの設定

  1. FANUC R540 EtherNet/IP I/O スキャナソフトウェアを起動します。
  2. [MENU] を押します。
  3. I/O を選択します。
  4. F1 キー ([TYPE]) を押して、[EtherNet/IP] を選択します。 下のような画面が表示されます。
EtherNet/IP List(Rack 89) 1/32
Description | TYP | Enable | Status | Slot
Connection1 | ADP | FALSE | OFFLINE | 1
Connection2 | ADP | FALSE | OFFLINE | 2
Connection3 | ADP | FALSE | OFFLINE | 3
Connection4 | ADP | FALSE | OFFLINE | 4
Connection5 | ADP | FALSE | OFFLINE | 5
Connection6 | ADP | FALSE | OFFLINE | 6
Connection7 | ADP | FALSE | OFFLINE | 7
Connection8 | ADP | FALSE | OFFLINE | 8
Connection9 | ADP | FALSE | OFFLINE | 9
ConnectionA | ADP | FALSE | OFFLINE | 10
ConnectionB | ADP | FALSE | OFFLINE | 11
ConnectionC | ADP | FALSE | OFFLINE | 12
ConnectionD | ADP | FALSE | OFFLINE | 13
ConnectionE | ADP | FALSE | OFFLINE | 14
ConnectionF | ADP | FALSE | OFFLINE | 15
ConnectionG | ADP | FALSE | OFFLINE | 16
ConnectionH | ADP | FALSE | OFFLINE | 17
ConnectionI | ADP | FALSE | OFFLINE | 18
ConnectionJ | ADP | FALSE | OFFLINE | 19
ConnectionK | ADP | FALSE | OFFLINE | 20
  5. 適切な接続を選択して、名前を変更します。システムが正常に接続されたら、表に次のように設定が反映されます。
EtherNet/IP List(Rack 89) 1/32
Description | TYP | Enable | Status | Slot
COGNEX | SCN | TRUE | RUNNING | 1
Connection2 | ADP | FALSE | OFFLINE | 2

In-Sight ビジョンシステム EtherNet/IP I/O の設定
In-Sight 5000 シリーズビジョンシステム
  • IP アドレス: ビジョンシステムの IP アドレスをここに挿入します
  • 製造元 ID: 678
  • デバイスのタイプ: 100
  • 製品コード: 257
  • 入力サイズ (ワード): 64
  • 出力サイズ (ワード): 64
  • RPI (ミリ秒): 32
  • アセンブリインスタンス (入力): 12
  • アセンブリインスタンス (出力): 21
  • 設定インスタンス: 0
In-Sight Micro シリーズビジョンシステム
  • IP アドレス: ビジョンシステムの IP アドレスをここに挿入します
  • 製造元 ID: 678
  • デバイスのタイプ: 100
  • 製品コード: 260
  • 入力サイズ (ワード): 64
  • 出力サイズ (ワード): 64
  • RPI (ミリ秒): 32
  • アセンブリインスタンス (入力): 12
  • アセンブリインスタンス (出力): 21
  • 設定インスタンス: 0
In-Sight 7000 シリーズビジョンシステム
  • IP アドレス: ビジョンシステムの IP アドレスをここに挿入します
  • 製造元 ID: 678
  • デバイスのタイプ: 100
  • 製品コード: 265
  • 入力サイズ (ワード): 64
  • 出力サイズ (ワード): 64
  • RPI (ミリ秒): 32
  • アセンブリインスタンス (入力): 12
  • アセンブリインスタンス (出力): 21
  • 設定インスタンス: 0
入力の定義
名前 | 信号のタイプ | 信号のラベル | 装置のマップ
DI_Trig_Ready | DI | Trigger Ready | 0
DI_Trig_Ack | DI | Trigger Ack | 1
DI_Acquiring | DI | Acquiring | 2
DI_Miss_Ack | DI | Missed Acquisition | 3
GI_Offline_Reason | GI | Offline Reason | 4-6
DI_Online | DI | Online | 7
DI_Inspecting | DI | Inspecting | 8
DI_Inspect_Comp | DI | Inspection Completed | 9
DI_Buffer_Overrun | DI | Results Buffer Overrun | 10
DI_Results_Valid | DI | Results Valid | 11
DI_Job_Loading | DI | Job Loading | 12
DI_Load_Comp | DI | Job Load Completed | 13
DI_Load_Fail | DI | Job Load Failed | 14
GI_Reserved | GI | Reserved | 15-23
GI_Reserved2 | GI | Reserved | 24-26
DI_ExposureComp | DI | Exposure Completed | 27
DI_JobPass | DI | Job Pass | 28
GI_Reserved3 | GI | Reserved | 29-31
GI_CurrentJobID | GI | Current Job ID | 32-47
GI_AcquisitionID | GI | Ack ID | 48-64
GI_InspectionID | GI | Inspection ID | 65-80
GI_InspectionResult | GI | Inspection Result | 81-96
GI_X_Position | GI | User Data Input 0 | 97-112
GI_Y_Position | GI | User Data Input 1 | 113-128
GI_Angle | GI | User Data Input 2 | 129-144
DI_X_Negative | DI |  | 145
DI_Y_Negative | DI |  | 146
DI_A_Negative | DI |  | 147
サンプル

下に、ロボットコントローラのデジタル入力設定のサンプルを示します。EtherNet/IP はラック 89 で、スロットは EtherNet/IP 設定セクションの接続番号です。 ビットは 1 から開始します。

注意: これは、サンプル設定を示しているだけです。ロボットの設定では、ラック 89、スロット 1 が必要になります。

# | RANGE | RACK | SLOT | START | STATUS
1 | DI[ 1- 80] | 0 | 0 | 0 | UNASG
2 | DI[ 81- 88] | 48 | 1 | 21 | ACTIV
3 | DI[ 89- 100] | 0 | 0 | 0 | UNASG
4 | DI[ 101-120] | 48 | 1 | 1 | ACTIV
5 | DI[ 121-124] | 89 | 1 | 1 | ACTIV
6 | DI[ 125-133] | 89 | 1 | 8 | ACTIV
7 | DI[ 134-585] | 89 | 1 | 145 | ACTIV
出力の定義
名前 | 信号のタイプ | 信号のラベル | 装置のマップ
DO_Trig_Enable | DO | Trigger Enable | 0
DO_Trigger | DO | Trigger | 1
DO_Results_Enable | DO | Buffer Results Enable | 2
DO_Results_Ack | DO | Inspection Results Ack | 3
 | DO | Reserved | 4
 | DO | Reserved | 5
 | DO | Reserved | 6
DO_Set_Offline | DO | Set Offline | 7
DO_SE0 | DO | Soft Event 0 | 8
DO_SE1 | DO | Soft Event 1 | 9
DO_SE2 | DO | Soft Event 2 | 10
DO_SE3 | DO | Soft Event 3 | 11
DO_SE4 | DO | Soft Event 4 | 12
DO_SE5 | DO | Soft Event 5 | 13
DO_SE6 | DO | Soft Event 6 | 14
DO_SE7 | DO | Soft Event 7 | 15
DO_Reserved | GO | Reserved | 16-31
DO_UserData_000 | GO | User Data 0 | 32-39
DO_UserData_001 | GO | User Data 1 | 40-47
サンプル

下に、ロボットコントローラのデジタル出力設定のサンプルを示します。

注意: これは、サンプル設定を示しているだけです。ロボットの設定では、ラック 89、スロット 1 が必要になります。

# | 範囲 | ラック | スロット | 開始 | ステータス
1 | DO[ 1- 80] | 0 | 0 | 0 | UNASG
2 | DO[ 81- 84] | 48 | 1 | 21 | ACTIV
3 | DO[ 85- 100] | 0 | 0 | 0 | UNASG
4 | DO[ 101-120] | 48 | 1 | 1 | ACTIV
5 | DO[ 121-184] | 89 | 1 | 1 | ACTIV
6 | DO[ 185-256] | 89 | 1 | 65 | ACTIV
7 | DO[ 257-616] | 89 | 1 | 153 | ACTIV

グループ I/O の設定
GI# | ラック | スロット | 開始ポイント | 番号ポイント
1 | 89 | 1 | 5 | 3
2 | 89 | 1 | 33 | 16
3 | 89 | 1 | 49 | 16
4 | 89 | 1 | 65 | 16
5 | 89 | 1 | 81 | 16
6 | 89 | 1 | 97 | 16
7 | 89 | 1 | 113 | 16
8 | 89 | 1 | 129 | 16

# SIM VALUE | 7/64
GI[ 1]U | 0 [GI_Offline_Reas]
GI[ 2]U | 56 [GI_CurrentJob_ID ]
GI[ 3]U | 56 [GI_Ack_ID ]
GI[ 4]U | 56 [GI_Inspect_ID ]
GI[ 5]U | 0 [GI_Inspect ]
GI[ 6]U | 2426 [GI_X_Position ]
GI[ 7]U | 3208 [GI_Y_Position ]
GI[ 8]U | 242 [GI_Angle ]

TPPロボットコントローラコード

次のサンプルコードは、In-Sight ビジョンシステムをトリガして、グループ入力データ、および X、Y、角度データを取得する方法を示しています (値が負であるかどうかがチェックされます)。 I/O の値は、ロボット I/O の設定に応じて異なる場合があります。

注意: このコードで取得されるのは、部品の実際のオフセットではなく、部品の検出位置です。

1: DO[121:DO_Trigger_Enable]=ON

2: WAIT DI[121:DI_Trigger_Ready]=ON

3: DO[122:DO_Trigger]=ON

4:

5: WAIT DI[122:DI_Trigger_Ack]=ON

6: DO[122:DO_Trigger]=OFF

8:

9: IF DI[127:DI_Inspect_Complete]= OFF,JMP LBL[2]

10:

11: LBL[1]

12: WAIT DI[127:DI_Inspect_Complete] =OFF

13: JMP LBL[3]

14:

15: LBL[2]

16: WAIT DI[127:DI_Inspect_Complete]=ON

17:

18: LBL[3]

19:

20: R[2:X Position]=GI[6:GI_X_Position]

21: R[2:X Position]=R[2:X Position]/10

22:

23: IF DI[145:X_Negative]=OFF,JMP LBL[4]

24: R[2:X Position]=R[2:X Position]*(-1)

25:

26: LBL[4]

27:

28: R[3:Y Position]=GI[7:GI_Y_Position]

29: R[3:Y Position]=R[3:Y Position]/10

30: IF DI[146:Y_Negative]=OFF,JMP LBL[5]

31:

32: R[3:Y Position]=R[3:Y Position]*(-1)

33:

34: LBL[5]

35:

36: R[4:Angle]=GI[8:GI_Angle]

37: R[4:Angle]=R[4:Angle]/10

38:

39: IF DI[147:A_Negative]=OFF,JMP LBL[6]

40:

41: R[4:Angle]=R[4:Angle]*(-1)

42:

43: LBL[6]

44:L @P[1] 50mm/sec FINE

45:

46:

47:

48: PR[1,1]=R[2:X Position]

49: PR[1,2]=R[3:Y Position]

50:

51: PR[1,6]=PR[1,6]+R[4:Angle]

52:

53:L PR[1] 50mm/sec FINE

54: WAIT .50(sec)

55: PR[1,6]=47.002

56:

57:L @P[1] 100mm/sec FINE

注意: PR[1] の値は、最初に選択された位置と同じにする必要があります。 こうすることにより、Z の高さおよび RX、RY の値を正しく設定することができます。

In-Sight ビジョンシステムとロボットコントローラのキャリブレーション

高精度チェッカボードキャリブレーションプレートを使用して、In-Sight ビジョンシステムから得られた結果を、ピクセルから実世界の測定単位にキャリブレーションすることは非常に重要です。 この節では、ビジョンシステムとロボットの間のキャリブレーションプロセスに関して重要になる点について説明します。

注意: キャリブレーションプロセスの設定方法に関する詳細な手順については、CalibrateGrid 関数のトピックを参照してください。 キャリブレーションプレートの詳細については、弊社営業窓口にお問い合わせください。

キャリブレーションを設定する際には、ビジョンシステムの視野 (FOV) にキャリブレーションプレートを配置します。 キャリブレーションプレートがビジョンシステムの FOV 全体を覆っていることを確認してください。 FOV 全体を覆うことができない場合は、複数のポーズ (例えば、複数の画像を取り込むなど) を使用する必要があります。

ロボットのユーザフレームの使用

ロボットのユーザフレームを作成するには、次の 2 つの方法を使用することができます。CalibrateGrid 関数を使用して原点を割り当てるか、または手動で原点を割り当てる方法です。

CalibrateGrid の原点

下の画像は、CalibrateGrid 関数により原点を自動的に割り当てる方法を示しています。 原点は、+X および +Y 軸上の 2 つの赤い十字が交わる点に配置されます。 この方法でロボットのユーザフレームを設定すると、ロボットのユーザーフレームの原点 (0,0) が CalibrateGrid 関数の原点 (0,0) と同じになります。

手動による原点の割り当て

下の画像は、原点を左下隅、つまり +X が下の右方向および +Y が左の上方向になるように手動で割り当てる方法を示しています。 この場合、緑の十字の X、Y 位置を、CalibrateGrid 関数の [ポーズ] ペインに手動で入力する必要があります。

In-Sight ジョブの設定と部品の登録

In-Sight ビジョンシステムをキャリブレーションしたら、次はジョブを実行するための残りの設定を行います。

ビジョンシステムが外部トリガを受け入れるように設定する必要があります。 EasyBuilder ビューの [画像の設定] アプリケーションステップで、[トリガ] パラメータを [外部] に設定します。

次に、PatMax パターンモデルを使用して、部品を検出します。 EasyBuilder ビューの [位置決め] アプリケーションステップに移動し、[PatMax パターン位置決めツール] を追加して部品を検出します。 次に、[検査] アプリケーションステップに移動し、3 つの [演算 & ロジックツール] を追加して X、Y、および角度の絶対値を乗算し、値の端数を切り上げます。 追加したこの 3 つの [演算 & ロジックツール] は、出力値が負であるか正であるかを判別するのにも使用できます。

注意: [位置決め] および [検査] ツールの設定および使用方法の詳細については、EasyBuilder ビューの [パレット] の [ヘルプ] タブを参照してください。

In-Sight ジョブの I/O 設定

ツールを設定して結果が返されたら、次の手順はその結果をロボットコントローラに出力することです。 EasyBuilder ビューで、[通信] アプリケーションステップに移動します。 [デバイスの追加] ボタンをクリックして、[デバイス] として [その他]、[プロトコル] として [EtherNet/IP] を選択し、[OK] ボタンをクリックします。

デバイスを追加したら、[フォーマット出力データ] タブを選択して [追加] ボタンをクリックし、[出力データの選択] ダイアログを表示します。 最初に、X、Y、および角度の値の [PatMax パターン位置決めツール] 出力プロパティを追加します。 次に、[演算 & ロジックツール] の 3 つの出力を追加します (出力は、PatMax ツールの場合と同じ順序、つまり X、Y、および角度にする必要があります)。

注意: [通信] アプリケーションステップの設定および使用方法の詳細については、EasyBuilder ビューの [パレット] の [ヘルプ] タブを参照してください。

In-Sight ビジョンシステムインタフェースによる通信

センサインタフェースオプションを使用するには、PREMOSYS の Web サイト http://www.premosys.com から入手するサードパーティのプロトコルコンバータが必要です。このコンバータは、FANUC のセンサインタフェースのシリアルフロー制御プロトコルを処理します。

  • 要件
  • ロボットコントローラのティーチペンダントコード
  • In-Sight シリアルポートの設定
  • In-Sight ジョブの設定

要件

必要なハードウェア

  • In-Sight ビジョンシステム (In-Sight Micro シリーズ、In-Sight 5000 および In-Sight 7000 シリーズのビジョンシステム)
  • In-Sight I/O モジュール または電源および I/O ブレークアウトケーブル (In-Sight 7000 シリーズビジョンシステムのみ)

    注意:
    • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
    • In-Sight Micro ビジョンシステムは、CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続している場合のみ、シリアル通信をサポートします。
  • PREMOSYS プロトコルコンバータ VE0010
  • PC
  • FANUC ロボットコントローラ (RJ2 または RJ3)
  • シリアルケーブル (DB25 - DB25)
  • In-Sight と VE0010 の接続用ケーブル (VE0010 のマニュアルを参照)

必要なソフトウェア

  • Cognex In-Sight Explorer バージョン 3.3 以上
  • Cognex In-Sight Explorer ファームウェアバージョン 3.3 以上
  • FANUC センサインタフェースオプション

ロボットコントローラのティーチペンダントコード

   1:  R[20:MEASURE_CNTR_CAM]=0    ;

   2:  R[2:ALARM CODE]=0    ;

   3:  LBL[9] ;

   4:  !REGISTER CHOICE ;

   5:  R[51:REGISTER_CHOICE]=5    ;

   6:  R[6:INTERMEDIATE_CALC]=R[51:REGISTER_CHOICE]*65536    ;

   7:  R[1:SEND_CAM]=R[50:PRODUCT_CHOICE]+256    ;

   8:  R[1:SEND_CAM]=R[1:SEND_CAM]+1    ;

   9:  R[1:SEND_CAM]=R[1:SEND_CAM]+R[6:INTERMEDIATE_CALC]    ;

  10:  R[5:REC_ACK]=0    ;

  11:  SEND R[1:SEND_CAM] ;

  12:  RCV R[5:REC_ACK] LBL[1] TIMEOUT,LBL[1] ;

  13:  R[20:MEASURE_CNTR_CAM]=R[20:MEASURE_CNTR_CAM]+1    ;

  14:  JMP LBL[2] ;

  15:  !Measurement I/O ;

  16:  LBL[2] ;

  17:  IF R[5:REC_ACK]=1,JMP LBL[3] ;

  18:  !Measurement Not OK ;

  19:  IF R[20:MEASURE_CNTR_CAM]=1,JMP LBL[9] ;

  20:  IF R[20:MEASURE_CNTR_CAM]=2,JMP LBL[10] ;

  21:  LBL[10] ;

  22:  !In-Sight TO ROBOT ;

  23:  IF R[5:REC_ACK]=2 OR R[5:REC_ACK]=3 OR R[5:REC_ACK]=6,JMP LBL[4] ;

  24:  !ROBOT TO In-Sight ;

  25:  IF R[5:REC_ACK]=4 OR R[5:REC_ACK]=5 OR R[5:REC_ACK]=8 OR

    :  R[5:REC_ACK]=9,JMP LBL[5] ;

  26:  !POSITION IS Not OK ;

  27:  IF R[5:REC_ACK]=12,JMP LBL[6] ;

  28:  LBL[4:Alarm Code 1] ;

  29:  R[2:ALARM CODE]=4    ;

  30:  JMP LBL[3] ;

  31:  LBL[5:Alarm Code 2] ;

  32:  R[2:ALARM CODE]=5    ;

  33:  JMP LBL[3] ;

  34:  LBL[6:Alarm Code 3] ;

  35:  R[2:ALARM CODE]=6    ;

  36:  JMP LBL[3] ;

  37:  LBL[3:End] ;

In-Sight シリアルポートの設定

ビジョンシステムに接続している間 (ビジョンシステムはオフライン) に、次の手順に従ってください。

  1. [センサ] メニューで、[シリアルポートの設定] をクリックします。

  2. [シリアルポートの設定] ダイアログで、次のプロパティを設定します。

    • [ビット/秒]: 4800
    • [データビット]: 8
    • [ストップビット]: 1
    • [パリティ]: なし
    • [フロー制御]: なし
    • [モード]: Native
    • [固定長の入力]: 無効
    • [入力終端記号]: 13
    • [出力終端記号]: 13
  3. [OK] をクリックします。

In-Sight ジョブの設定

VE0010 プロトコルコンバータに付属のサンプルを使用します。

トラブルシューティング

  • ハイパーターミナルとのシリアル接続
  • Telnet による Ethernet 接続の確認

ハイパーターミナルとのシリアル接続

In-Sight シリアルポートの設定

ビジョンシステムに接続している間 (ビジョンシステムはオフライン) に、次の手順に従ってください。

  1. [センサ] メニューで、[シリアルポートの設定] をクリックします。

  2. [I/O の種類] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、I/O モジュールを設定します。[OK] ボタンをクリックして [I/O モジュールの設定] ダイアログを閉じ、[シリアルポートの設定] ダイアログに戻ります。

    注意: In-Sight 7000 シリーズのビジョンシステムが CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用するように構成されている場合、電源および I/O ブレークアウトケーブルの　RS-232 TRANSMIT および RS-232 RECEIVE ピンは無効です。シリアルデバイスへの接続には、I/O モジュールの RS-232 OUT ポート (DB9) を使用してください。

  3. [シリアルポートの設定] ダイアログで、次のプロパティを設定します。

    • [ビット/秒]: 115200
    • [データビット]: 8 (CIO-1400 を使用する場合のデフォルト設定)
    • [ストップビット]: 1 (CIO-1400 を使用する場合のデフォルト設定)
    • [パリティ]: なし
    • [フロー制御]: なし
    • [モード]: Native
    • [固定長の入力]: 無効
    • [入力終端記号]: 13
    • [出力終端記号]: 13
  4. ダイアログで、ビジョンシステムに物理的に接続されている I/O モジュールの横に「(接続済み)」というメッセージが表示されていることを確認します。
  5. [OK] をクリックします。

テストジョブの設定

  1. [ファイル] メニューから、新規ジョブを生成します。
  2. AcquireImage プロパティシート (セル A0 をダブルクリック) で、次のパラメータを設定します。
    • トリガ = 外部
    • 手動 = ON
  3. セル A2 を選択し、「ExtractBlobs」と入力して Enter キーを押します (この時点で、ExtractBlobs プロパティシートが表示)。
  4. [OK] をクリックします (パラメータはすべて、デフォルト設定値)。
  5. セル A4 を選択し、「FindBlobs」と入力して Enter キーを押します (この時点で、FindBlobs プロパティシートが表示)。
  6. ブロブパラメータについてはセル B2 を参照します。
  7. [OK] をクリックします。
  8. [手動トリガ] アイコンを数回クリックし、データが変化していることを確認します。
  9. ビジョンシステムをオンラインにします。

In-Sight ビジョンシステムへの接続

  1. Windows で、[スタート] → [すべてのプログラム] → [アクセサリ] → [通信] → [ハイパーターミナル] をクリックします。
  2. 新しい接続を生成します ([ファイル] → [新しい接続])。
    • [ポート名]: COM1
    • [ビット/秒]: 115200
    • [データビット]: 8
    • [パリティ]: なし
    • [ストップビット]: 1
    • [フロー制御]: なし
  3. [ファイル] → [プロパティ] → [設定] をクリックします。
    • [エミュレーション]: ANSI
    • [ASCII 設定] の表示を見やすくするため次のように設定します。
      • 行末に改行文字を付ける
      • ローカル エコーする
      • 着信データに改行文字を付ける
      • 右端で折り返す
  4. [接続] をクリックします。
  5. ビジョンシステムのユーザ名とパスワードを入力します (デフォルトのユーザ名は「admin」、パスワードは空白)。
  6. 「User Logged In」と表示されます。
  7. 「SW8」と入力し、Enter キーを押します (手動トリガが実行され、画像が変化)。
  8. 「GVC004」と入力し、Enter キーを押します (セル C4 に保存されている値が取得)。

Telnet による Ethernet 接続の確認

テストジョブの設定

  1. [ファイル] メニューから、新規ジョブを作成します。
  2. AcquireImage プロパティシート (セル A0 をダブルクリック) で、次のパラメータを設定します。
    • トリガ = 外部
    • 手動 = ON
  3. セル A2 を選択し、「ExtractBlobs」と入力して Enter キーを押します (この時点で、ExtractBlobs プロパティシートが表示)。
  4. [OK] をクリックします (パラメータはすべて、デフォルト設定値)。
  5. セル A4 を選択し、「FindBlobs」と入力して Enter キーを押します (この時点で、FindBlobs プロパティシートが表示)。
  6. ブロブパラメータについてはセル B2 を参照します。
  7. [OK] をクリックします。
  8. [手動トリガ] アイコンを数回クリックし、データが変化していることを確認します。
  9. ビジョンシステムをオンラインにします。

In-Sight ビジョンシステムへの接続

  1. Windows で、[スタート] → [ファイル名を指定して実行] をクリックします。
  2. [ファイル名を指定して実行] ウィンドウで、「telnet <センサの IP アドレス>」 (例: telnet 10.27.80.66) と入力します。
  3. [OK] をクリックします。
  4. ビジョンシステムのユーザ名とパスワードを入力します (デフォルトのユーザ名は「admin」、パスワードは空白)。
  5. 「User Logged In」と表示されます。
  6. 「SW8」と入力し、Enter キーを押します (手動トリガが実行され、画像が変化)。
  7. 「GVC004」と入力し、Enter キーを押します (セル C4 に保存されている値が取得)。
  8. telnet セッションを切断するには、Ctrl + ] キーを押します。
  9. 「quit」と入力し、ウィンドウを閉じます。


Kuka 通信

ロボット通信 - KUKA ロボットコントローラ

In-Sight 通信リファレンス

KUKA ロボットは、品質検証からオブジェクトや位置検出、ピックアンドプレースアプリケーションまで、多数のアプリケーションで In-Sight ビジョンシステムを統合することができます。

  • KUKA Serial


ロボット通信 - Kawasaki ロボットコントローラ

ロボット通信

In-Sight 通信リファレンス

このトピックでは、In-Sight ビジョンシステムから Kawasaki ロボットコントローラに接続し、データを転送する手順の概要を説明します。このトピックで、ロボットコントローラは、画像取り込みとデータ転送を制御するデバイスを指しています。一般に、In-Sight ネイティブモードコマンドを (Telnetまたはシリアル RS-232 経由で) 使用するロボットコントローラは、画像を取り込み、処理するようにセンサをトリガし、その後、センサに特定のデータを要求します。データは、シリアル通信または Ethernet 通信を使用して転送することができますが、Kawasaki は Ethernet TCP/IP の使用を推奨しています。

必要なハードウェア

  • In-Sight ビジョンシステム (In-Sight Micro シリーズ、In-Sight 5000 および In-Sight 7000 シリーズのビジョンシステム)

  • In-Sight I/O モジュール または電源および I/O ブレークアウトケーブル (In-Sight 7000 シリーズビジョンシステムのみ)

    注意:
    • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
    • In-Sight Micro ビジョンシステムは、CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続している場合のみ、シリアル通信をサポートします。
    • CIO-WENET イーサネット I/O モジュールはシリアル通信をサポートしていません。
  • PC
  • D コントローラ 1QN (Ethernet オプションで使用) または C コントローラ 1HA (Ethernet オプションで使用)
  • Ethernet 接続対応ケーブル (100Base-T)
  • センサインタフェース (シリアル通信用)

必要なソフトウェア

  • Cognex In-Sight Explorer バージョン 3.3.1 以上
  • Cognex In-Sight ファームウェアバージョン 3.3.1 以上
  • Kawasaki AS プログラミング言語

In-Sight の設定

Kawasaki ロボットコントローラに接続してデータを転送するように In-Sight ビジョンシステムを設定するには、ビジョンシステムの [ネットワークの設定] で設定を行ってロボットコントローラと通信し、位置データを抽出するジョブを構築します。 Kawasaki ロボットコントローラと通信するように In-Sight ビジョンシステムを設定すると、ビジョンシステムはサーバとして動作します。 ロボットコントローラが値を取得するための要求を送信すると (GetValue - TCP_SEND)、ビジョンシステムはその要求を処理してセル値で応答します。 ロボットコントローラはデータを受信し (TCP_RECEIVE)、データを使用可能なフォーマットにデコードします。

In-Sight ネットワークの設定

  1. [センサ] メニューから [ネットワークの設定] を選択します。
  2. [ネットワークの設定] ダイアログで、[DHCP サーバの使用] チェックボックスのチェックを解除します。
  3. [IP アドレス] パラメータに、ビジョンシステムの IP アドレスを入力します (この例では、192.168.0.12)。
  4. [Telnet ポート] パラメータを [10,000] に設定します。
  5. [OK] をクリックして、[ネットワークの設定] ダイアログを閉じます。

In-Sight ジョブの設定

  1. [ファイル] メニューから、新規ジョブを作成します。
  2. AcquireImage プロパティシート (セル A0 をダブルクリック) で、次のパラメータを設定します。
    • トリガ = 外部
    • 手動 = ON
  3. セル A2 を選択し、「ExtractBlobs」と入力して Enter キーを押します (この時点で、ExtractBlobs プロパティシートが表示)。
  4. [OK] をクリックします (パラメータはすべて、デフォルト設定値)。
  5. セル A4 を選択し、パレット の [スニペット] タブから、[Communication] → [Robots] → [General.cxd] スニペットをスプレッドシートに挿入します。
  6. 次のように座標セル参照を定義します。
    • X: C6 をダブルクリック、C2 をダブルクリック
    • Y: D6 をダブルクリック、D2 をダブルクリック
    • 角度: E6 をダブルクリック、E2 をダブルクリック
  7. [手動トリガ] アイコンを数回クリックし、ExtractBlobs 関数からのデータが変化していることを確認します。
  8. ジョブを保存します。
  9. センサをオンラインにします。

ロボットコントローラの設定

次のコードの例は、IP アドレス 192.168.0.12 の In-Sight ビジョンシステムに接続しているコントローラを示しています。ビジョンシステムの IP アドレスを確認するには、In-Sight Explorer の [In-Sight ネットワーク] ツリーでビジョンシステム名を右クリックして、[プロパティ] を選択します。

.PROGRAM cognex()

;POINT FRAME1 is the part frame, where frame1 is calculated using

;the FRAME command: POINT FRAME1=FRAME(f.origin,f.x1,f.xy,f.origin)

;The coordinates are assumed to be received from the vision system in the part frame

$termchk=$CHR(13)+$CHR(10)

.ret1=-1

.ret1a=-1

.ret1a1=-1

.ret1b=-1

.ret1b1=-1

.ret1bc=-1

.ret2=-1

CALL tcp_open(10000); sock_id1 = CAMERA

IF sock_id1<0 THEN

RETURN

END

$receive=""

CALL tcp_recv(.ret1a,$receive)

IF .ret1a<0 GOTO quit

.$str = "admin"+$CHR(13)+$CHR(10)

CALL tcp_send(.ret1a1,.$str)

IF .ret1a1<0 GOTO quit

$receive = ""

CALL tcp_recv(.ret1b,$receive)

IF .ret1b<0 GOTO quit

$receive = ""

CALL tcp_recv(.ret1c,$receive)

IF .ret1c<0 GOTO quit

.$str = "GVA002"+$CHR(13)+$CHR(10)

CALL tcp_send(.ret1,.$str)

IF .ret1<0 GOTO quit

$receive = ""

CALL tcp_recv(.ret2,$receive)

IF .ret2<0 GOTO quit

$response = $receive

$ok = $DECODE($response,$termchk,0)

ok = VAL($ok)

IF ok <>1 GOTO quit

$response = $RIGHT($response,LEN($response)-4)

$response = $LEFT($response,LEN($response)-5)

$x = $DECODE($response,",",0)

x = VAL($x)

$temp = $DECODE($response,",",1)

$y = $DECODE($response,",",0)

y = VAL($y)

$temp = $DECODE($response,",",1)

o = VAL($response)

PRINT x,y,o

POINT pick = frame1 + TRANS(x,y,o)

HOME

LAPPRO pick, 100

LMOVE pick

CLAMP 1

LDEPART 100

HOME

quit:

CALL tcp_close

.END

.PROGAM tcp_close()

ret = 0

TCP_CLOSE ret,sock_id1

IF ret<0 THEN

PRINT "TCP_CLOSE error id = ",sock_id1

ELSE

PRINT "TCP_CLOSE OK id = ",sock_id1

END

.END

.PROGRAM tcp_open(.port)

tout_open = 60

ip[1] = 192

ip[2] = 168

ip[3] = 0

ip[4] = 12

port = .port

.er_count = 0

connect:

TIMER (2) = 0

TCP_CONNECT sock_id1,port,ip[1],tout_open

IF sock_id1<0 THEN

IF .er_count>=5 THEN

PRINT "Client Communication with Cognex has failed"

GOTO forgetit

ELSE

.er_count = .er_count+1

PRINT "TCP_CONNECT error id = ",sock_id1," error count = ",.er_count

GOTO connect

END

ELSE

PRINT "TCP_CONNECT OK id = ",sock_id1," with timep = ",TIMER(2)

END

forgetit:

RETURN

.END

.PROGRAM tcp_recv(.ret,$receive)

.ret = 0

.eret = -99

tout_rec = 60

max_length = 255

.$receive = ""

.num = 0

TCP_RECV .eret,sock_id1,.#recv_buff[1],.num,tout_rec,max_length

TIMER(3) = 0

IF .eret<0 THEN

PRINT "TCP_RECV error in RECV",.eret

PRINT ".num = ",.num

.ret = -1

ELSE

IF .num>0 THEN

IF .num*max_length<=255 THEN

PRINT "TCP_RECV OK in RECV",.eret

PRINT "Number of array elements = ",.num

FOR .j = 1 TO .num

.$receive = .$receive + .#recv_buf[.j]

PRINT "len(.$recv_buf[",.j,"] = ",LEN(.$recv_buf[.j])

PRINT ".$receive = ",.$receive

END

ELSE

.ret = -1

PRINT "String too long"

PRINT .$recv_buf[1]

END

ELSE

PRINT "Invalid response"

.ret = -1

END

.END

.PROGRAM tcp_send(.ret,.$data)

.$send_buf[1] = .$data

.buf_n = 1

.ret = 1

tout = 60

TCP_SEND .sret,sock_id1,.$send_buf[1],.buf_n,tout

IF .sret<0 THEN

.ret = -1

PRINT "TCP SEND error in SEND",.sret

ELSE

PRINT "TCP_SEND OK in SEND",.sret

PRINT "Sent string = ",$send_buf[1]

END

.END


セキュリティの設定

How To...

In-Sight ビジョンシステムでは、[ユーザアクセス設定] ダイアログを使用して、ビジョンシステムレベルの保護を設定することができます。 このトピックでは、個別のビジョンシステムへのセキュリティの実装方法について説明します。

  • 概要
  • アクセスレベル
  • セルの保護
  • セルへのライセンスの追加
  • In-Sight Explorer の終了時にパスワードを要求
  • パスワードの再設定
  • 関連項目

概要

In-Sight ビジョンシステムに接続する際、ユーザに対してユーザ名とパスワードを要求するように設定することができます。 このメカニズムはセキュリティの基準として使用でき、ユーザに対して異なる 3 つのアクセスレベル (フル、ロック、およびプロテクト) を設定することができます。 デフォルトでは、3 つの異なるタイプのユーザアカウント (admin、monitor、および operator) が設定されています。 これらの 3 つのユーザアカウントは、ユーザが使用できる 3 つのアクセスレベルを表しています。 ユーザアカウントはパスワードを使用して保護できるため、ビジョンシステムに対して変更を加えることができるのは正しいパスワードを知っているユーザのみです。

アクセスレベル

次の 3 つのアクセスレベルが使用できます。

  • フルアクセス
  • プロテクトアクセス
  • ロックアクセス

フルアクセス

フルアクセス権を付与されたユーザは、ビジョンシステムに対して完全に制限なくアクセスすることができます。つまり、ある設定が変更された場合、このアクセスレベルを付与されたユーザが変更を行っていることになります。 通常、このアクセスレベルは、例えば、ビジョンシステムに関するジョブを開発しているユーザに付与されます。

フルアクセスの詳細

  • スプレッドシートビュー、EasyBuilder ビュー、カスタムビュー、または EasyView を表示することができます。
  • 常にオンライン/オフラインを切り替えることができますが、無効にすることはできません。
  • デフォルトでは、[オンラインでもジョブを保存] は無効ですが、有効にすることができます。
  • 常に FTP 読み取りおよび FTP 書き込み権限は有効で、無効にすることはできません。

プロテクトアクセス

プロテクトアクセス権を付与されたユーザーは制限モードの状態ですが、一部のオプションは使用することができます。 このモードでは、ユーザはライブモードにはアクセスできますが、そのうちのカスタムビューにのみアクセスすることができます。 ユーザは、コントロール関数によってアクセスした設定を編集することはできますが、プロパティシートを開いたり数式を変更したりすることはできません。

プロテクトアクセスの詳細

  • 最初に使用できるビューはカスタムビューまたは EasyBuilder ビューのいずれかですが、すべてのビューにアクセスすることができます (この機能は無効にすることはできません)。
  • デフォルトでは、オンライン/オフラインを切り替えることができ、無効にすることもできます。
  • デフォルトでは、[オンラインでもジョブを保存] は無効ですが、有効にすることができます。
  • デフォルトでは、FTP 読み取り権限は有効ですが、無効にすることができます。また、デフォルトでは、FTP 書き込み権限は無効ですが、有効にすることができます。

ロックアクセス

このモードでは、アクセスレベルは最も制限されます。 このモードのユーザは、ビジョンシステムの現在の状態をモニタできるのみで、ビジョンシステムに変更を加えるためのアクセスが制限されます。

ロックアクセスの詳細

  • 最初に使用できるビューはカスタムビューまたは EasyBuilder ビューのいずれかで、スプレッドシートビューにアクセスすることはできません (アクセス権も付与されません)。
  • オンライン/オフラインを切り替えることはできず、その権限も付与されません。
  • [オンラインでもジョブを保存] は無効で、有効にすることもできません。
  • デフォルトでは、FTP 読み取りおよび FTP 書き込み権限は無効ですが、有効にすることができます。

セルの保護

これまでに説明してきたシステムレベルの保護のほかに、ジョブに対してジョブレベルの保護をプログラムすることができます。 ジョブレベルの保護を作成するには、保護対象となる一連のセルをハイライトしてそのセルを右クリックし、右クリックメニューから [セルのフォーマット] を選択します。これにより、[セルのフォーマット] ダイアログが表示されます。 このダイアログで [保護] タブをクリックして、[ロック] チェックボックスをオンにします。 これで、ハイライトされたセルのステータスがロック状態になります。

注意: セルがロックされていて、ジョブが保護されていないときには、スプレッドシートの左上隅に黄色のロックアイコン [image] が表示されます。ロック済みのセルを含むジョブが保護されたときには、同じ位置に赤いロックアイコン [image] が表示されます。

これでセルがロック状態になりますが、ジョブファイル自体も保護する必要があります。 [ファイル] メニューから、[ジョブの保護] を選択します。 選択するとすぐに、パスワードを要求されます。 ジョブを保護するためのパスワードを入力します (パスワードを空白にすることもできます)。

注意:　パスワードを紛失したり、忘れたりした場合、パスワードを復旧する方法はありません。 新しいジョブを作成する必要があります。

これでジョブの保護が有効になり、セルも保護されます (また、[ファイル] メニューでのオプションが [ジョブの保護を解除] になります)。 これで、保護されたセルは編集できなくなりますが、ユーザは保護されたセルを構築するのに使用した数式を表示して (数式の編集はできません)、コントロール関数 (EditInt、EditString など) の値を変更することができます。

注意: EasyBuilder ジョブはすべて、ジョブを保護して組み込み型で作成されます。

セルへのライセンスの追加

使用できる保護の別のレイヤとして、セルへのライセンスの追加があります。 セルにライセンスを追加すると、ジョブのユーザがジョブを変更したり、ジョブの作成状態を表示したりできないようにして、ジョブを作成することができます。 セルへのライセンスの追加を使用すると、ユーザがセルを表示したり、セル内部の内容を確認したりすることができなくなります。

一部のセルにライセンスを追加することはセルを保護することと似ていますが、単に [セルのフォーマット] ダイアログの [保護] タブにある [ロック] チェックボックスをオンにするのではなく、[ライセンスパスワード] フィールドにパスワードを入力します。 パスワードを入力すると、セルの出力値はスプレッドシートビューに表示されたままですが、[ジョブの編集] ツールバーの数式エディタの数式が「****」として表示されます。

注意: セルの保護のときと同様に、パスワードを紛失したり、忘れたりした場合、パスワードを復旧する方法はありません。 新しいジョブを作成する必要があります。

ライセンスパスワードを作成したら、ビジョンシステムにライセンスをロードしない限り、ライセンスが追加されたセルは正常に動作しなくなります。 ビジョンシステムにライセンスをロードするには [ライセンス] ダイアログを使用しますが、このライセンスは別のアプリケーションである「In-Sight ライセンスジェネレータ」で生成します。

注意: 「In-Sight ライセンスジェネレータ」の起動と使用に関する詳細な手順については、[ライセンス] ダイアログのトピックを参照してください。

In-Sight で使用可能なライセンスは、単一ビジョンシステムライセンスとサイトライセンスの 2 種類です。 単一ライセンスは、1 つのジョブで使用できるビジョンシステムの数を制御するのに使用します。 サイトライセンスは、企業 1 社が所有しているすべてのビジョンシステムにライセンスを追加するのに使用します。 2 種類のライセンスの主な違いは、ライセンス数の計算方法です。 単一ライセンスの場合、ライセンス数の計算に含めるのは特定の 1 台のビジョンシステムの MAC　アドレスですが、サイトライセンスの場合、この計算方法は使用しません。 つまり、単一ライセンスは、そのライセンスが生成された時点で入力された MAC アドレスを持つビジョンシステムにのみロードされ、ライセンスが追加されたジョブはその特定のビジョンシステムでのみ実行することができます。 サイトライセンスに含まれているのは 1 つのパスワードのみであり、そのパスワードを入力したすべてのビジョンシステムでジョブを実行することができます。

ライセンスを生成すると、そのライセンスの文字列が目的のビジョンシステムにロードされ、セルを実行できるようになります (この作業は [ライセンス] ダイアログで行います)。

注意: パスワードを入力するとセルの実行が許可されるだけで、ユーザがセル内の数式を確認することはできません。 セルを編集するには、ライセンスを追加するのに使用した元のパスワードを [ライセンス] ダイアログに入力する必要があります。これにより、セルの数式を表示および編集できるようになります。

In-Sight Explorer の終了時にパスワードを要求

In-Sight Explorer では、セルの保護およびライセンスの追加のほかに、In-Sight Explorer が誤って終了されるのを防ぐために、プログラムを終了する前にパスワードを要求するようにプログラムすることができます。 In-Sight Explorer を終了する際にパスワードを要求するには、[システム] メニューから [オプション] を選択して、[オプション] ダイアログを表示します。 [オプション] ダイアログから、[プログラムの終了] を選択します。 [終了時にパスワードを要求する] チェックボックスをオンにしてから、[パスワードの設定] ボタンを押してパスワードを設定します。

パスワードの再設定

パスワードを忘れた場合に、In-Sight ビジョンシステムを復旧するメカニズムが備わっています。 ビジョンシステムのユーザリストおよびハッシュパスワードがビジョンシステムの proc.set ファイルに格納されています。このファイルには、そのビジョンシステムの大部分の一般設定が保持されています。 ビジョンシステムの設定を工場出荷時のデフォルト設定値に戻すと、このファイルが消去され、デフォルトの設定値で再度作成されます。

注意:　工場出荷時のデフォルト設定値に戻すと、ビジョンシステムに格納されているディスクリート I/O 設定値、カスタムの画像バッファ設定値、およびさまざまなそのほかの設定値が影響を受けます。 ビジョンシステムのデフォルト設定値に変更されたことにより、ジョブ自体は影響を受けませんが、ジョブの動作が変更されることがあります。

工場出荷時のデフォルト値への再設定

ビジョンシステムの工場出荷時のデフォルト設定値へのリストアを行うには、以下の手順を実行します。

  1. [システム] メニューから [センサ/デバイスをネットワークに追加] を選択して、[センサ/デバイスをネットワークに追加] ダイアログを表示します。
  2. 表のリスト内を右クリックして、右クリックメニューから [すべてのデバイスを表示] を選択します。 これにより、リモートサブネットワーク上で使用するように設定されているデバイスを含む、すべてのデバイスが検出されて表示されます。
  3. リストから目的のビジョンシステムを選択すると、ダイアログの右側にビジョンシステムのネットワーク設定値が表示されます。
  4. [センサを工場出荷時の状態に初期化する] チェックボックスをオンにしてから、[適用] ボタンを押します。
  5. ビジョンシステムの電源を入れ直すように要求されます。 電源を入れ直すと、ビジョンシステムは工場出荷時のデフォルト設定値に再設定されます。

関連項目

  • [セルのフォーマット] ダイアログ
  • [ライセンス] ダイアログ
  • [ユーザアクセス設定] ダイアログ
  • NodeLock 関数を使用した In-Sight ジョブの保護
  • 承認の実行


承認の実行

How To...

特定の化学薬品関連製造環境では、一般的に、バッチの切り替えを完了して製造の再開が許可される前に承認プロセスを実行します。 承認プロセス時に、多くの場合、オペレータが正しいバッチ情報を入力したことを確認する (認証のみ) またはオペレータが以前入力したのと同じバッチ情報を入力する (タブルブラインド) には、品質または製造スーパーバイザが必要になります。

これらの承認プロセスを実行するには、Authorize 関数を使用することができます。 認証のみを実行する場合は、オペレータ (ユーザ 1) が変更を加え、スーパーバイザ (ユーザ 2) が変更内容を承認します。 ダブルブラインドを実行する場合は、ユーザ 1 が変更を加え、ユーザ 2 はユーザ 1 によって加えられた変更を再入力する必要があります。承認結果は、監査メッセージによって追跡されます。

このトピックでは、Authorize 関数を含むスプレッドシートの設定方法、承認プロセスの実行方法、および承認を監査メッセージによって追跡する際に生成される監査メッセージの種類について説明します。

  • スプレッドシートの設定
  • 承認プロセス
  • 監査メッセージ

スプレッドシートの設定

  1. スプレッドシートが次のように設定されています。

    A2 = Authorize("Change Batch",1,1,A4,A6)

    A4 = EditInt(0,255)

    A5 = EditFloat(0,100)

    A6 = EditString(8)

  2. VisionView® アプリケーションを使用して承認を実行する場合は、サンプルジョブをカスタムビューに追加します。 [カスタムビューの設定] ダイアログの [セル範囲] で、Authorize 関数のセル (A2) と参照先セル (A4、A5、および A6) を含む領域を選択します。

    注意: サンプルジョブを EasyView に追加するには、Authorize 関数のセル (A2) と参照先セル (A4、A5、および A6) のシンボリックタグを挿入し、[シンボリックタグエディタ] ダイアログで各シンボリックタグの [EasyView] チェックボックスをオンにします。

  3. 承認の結果を監査メッセージで追跡するには、Authorize 関数のセル (A2) のシンボリックタグを挿入して、[シンボリックタグエディタ] ダイアログでそのシンボリックタグの [監査メッセージ] チェックボックスをオンにします。その後、[監査メッセージの設定] ダイアログで [監査メッセージを有効にする] チェックボックスと [タグ付きセル変更時] チェックボックスをオンにし、必要に応じてダイアログ内のその他の設定値を設定します。

  4. 参照先セル (A4、A5、および A6) には、値が承認されているかどうかに関係なく、オペレータが最後に入力した値が表示されます。 必要に応じて、GetAuthorizedValue 関数を使用して、最後に承認された値をスプレッドシートに表示することができます。 例えば、参照先セル (A4、A5、および A6) の最後に承認された値を表示するには、スプレッドシートを次のように設定します。

    C4 = GetAuthorizedValue(A4)

    C5 = GetAuthorizedValue(A5)

    C6 = GetAuthorizedValue(A6)

    注意:

    • GetAuthorizedValue 関数は常に文字列タイプの値を返します。この関数の数値出力を別の関数への入力として使用するには、Value 関数を使用して文字列を数値に変換します。

    • GetAuthorizeApprover および GetAuthorizeDateTime 関数を使用して、承認された値のほかに、最後に正常に実行された承認の承認者 (ユーザ 2) の名前と日時をスプレッドシートに表示することもできます。

承認プロセス

  1. ユーザ 1 は、エディットコントロールを押して、新しい値を手動で入力します。
注意:
  • ユーザ 1 が「ロック」アクセスレベルである場合、ユーザ 1 はエディットコントロールを変更できません。
  • ユーザ 2 はユーザ 1 とは異なっており、十分なログオン権限 (最低限のアクセスレベルは [レベル] パラメータで定義されます) を保持している必要があります。選択されたレベルが [なし] の場合は、同じユーザがログオンして新しい値を承認することが許可されます。

  2. すべての新しい値の入力後、ユーザ 1 は [Change Batch] ボタンを押します。[認証ログオン] ダイアログが表示されます。

注意: ボタンの名前は、[ラベル] パラメータによって設定されます。

  3. ユーザ 2 は、[ユーザ名] および [パスワード] フィールドに正しいユーザ名とパスワードを入力して、In-Sight Explorer にログオンします。ユーザ 2 が正常にログオンすると、[認証] ダイアログが表示されます。[認証] ダイアログは承認の種類 (認証のみまたはダブルブラインド) によって異なります。
  • 認証のみを実行している場合は、ユーザ 1 が入力した新しい値が [認証] ダイアログに表示され、ユーザ 2 にはダイアログ内の値の変更は許可されません (すべてのエディットコントロールが無効になります)。ユーザ 2 が、新しい値が正しいと判断し、[認証] ボタンをクリックすると、変更は承認されます。ユーザ 2 が、新しい値は誤りであると判断し、[キャンセル] をクリックした場合、変更は承認されません。

  • ダブルブラインドを実行している場合は、ユーザ 1 が入力した新しい値は [認証] ダイアログ内で非表示となり (最後に承認された値が表示されます)、Authorize 関数によってサポートされていないエディットコントロールはすべて無効になります。ユーザ 2 は、エディットコントロールを押して、新しい値を手動で再入力します。すべての新しい値を入力後、ユーザ 2 が [認証] ボタンをクリックすると、変更が承認されます。ユーザ 2 が [キャンセル] をクリックすると、変更は承認されません。

注意: ユーザ 2 が間違った値を 1 つ以上入力し承認に失敗した場合は、[認証] ダイアログが再度表示されます。この場合は、ユーザ 2 が入力した値がダイアログに表示されます。 、ダブルブラインド承認を再試行する場合、ユーザ 2 は、正常な承認を得るためにユーザ 1 の値を再入力する必要があります。

  4. [認証] ボタンをクリックすると、承認の結果を監査メッセージで追跡している場合は監査メッセージが生成されます (オプション)。
  5. 監査が正常に実行された場合は、GetAuthorizedValue 関数によって返された値が更新され、最後に承認された値が表示されます (オプション)。

監査メッセージ

監査メッセージの種類は、承認の種類と承認の結果 (成功または失敗) によって異なります。[キャンセル] を押すと、監査メッセージは生成されません。

認証のみ

ユーザ 2 が [認証] ダイアログで [認証] ボタンを押すと、次のそれぞれについて監査メッセージが生成されます。

  • ユーザ 1 によって加えられた変更。監査メッセージには、ユーザ 1 の名前、エディットコントロールのシンボリックタグ、コントロールの古い値、およびコントロールの新しい値が含まれます。
  • 成功ステータスとユーザ 2 の名前。

注意: 認証のみが選択されており、ユーザ 2 が [認証] ボタンを押した場合、承認は常に成功します。

ダブルブラインド

ユーザ 2 が [認証] ダイアログで [認証] ボタンを押すと、次のそれぞれについて監査メッセージが生成されます。

承認が成功した場合:

  • ユーザ 1 によって加えられた変更。監査メッセージには、ユーザ 1 の名前、エディットコントロールのシンボリックタグ、コントロールの古い値、およびコントロールの新しい値が含まれます。
  • 成功ステータスとユーザ 2 の名前。

承認が失敗した場合:

  • 失敗ステータスとユーザ 2 の名前。

なし

承認の種類として [なし] が選択されている場合、承認は実行されません。ただし、ユーザがラベル付きプッシュボタン (サンプルジョブの [Change Batch] ボタン) を押すと、次のそれぞれについて監査メッセージが生成されます。

  • ユーザによって加えられた変更。監査メッセージには、ユーザの名前、エディットコントロールのシンボリックタグ、コントロールの古い値、およびコントロールの新しい値が含まれます。
  • 成功ステータスとユーザの名前。

注意: [なし] が選択されており、ラベル付きボタンが押された場合は、常に成功ステータスが生成されます。


NodeLock 関数を使用した In-Sight ジョブの保護

In-Sight 関数リファレンス

このトピックでは、NodeLock スプレッドシート関数を使用して、ネットワークに接続されている特定の In-Sight システムでのみジョブが実行されるように制限したり、許可されていないユーザによるジョブの変更を防いだりする方法について説明します。In-Sight ファームウェアバージョン 2.10 以降では、NodeLock 関数を使用して、ジョブファイルを暗号化および圧縮することもできます。この関数は、スプレッドシートビューが利用できるビジョンシステムでのみ使用可能です。

警告: NodeLock 関数を有効にする前に、ジョブのバックアップコピーを生成し、異なるファイル名を付けてください。NodeLock 関数を有効にすると、ジョブを編集することはできません。

特定の MAC アドレスを含む NodeLock 関数をスプレッドシートに挿入すると、ジョブを必要な回数だけ保存できますが、ジョブを ([開く] ダイアログから) ロードした後は、編集することができません。プレースホルダとして NodeLock 関数が必要な場合は、MAC アドレスを指定しない (空文字の) 関数を挿入します。例えば、次の画像処理機能があります。NodeLock(“”)。ジョブを保護する準備が整った後、有効な MAC アドレスを追加します。また、MAC アドレスなしで 2 番目の NodeLock 関数を挿入して、一時的に NodeLock 関数を無効にすることができます。ジョブを保護する準備が整った後、スプレッドシートから 2 番目の NodeLock 関数を削除します。

スプレッドシートに NodeLock 関数を挿入するには、次の手順に従ってください。

  1. スプレッドシートビューで、関数を挿入する空のセルをハイライトします。
  2. 空のセルで、「nodelock」と入力し、続けて、左括弧、二重引用符で囲んだシステムの MAC アドレス、右括弧を入力して式を完成させます。式のフォーマットは次のとおりです。nodelock("mac address")。例:

注意: MAC アドレスのフォーマットは、12 桁の 16 進値を含む文字列です。

複数の MAC アドレスを関数に入れることができます。各 MAC アドレスを二重引用符で囲み、カンマで区切ります。例:

注意: NodeLock() 関数は、MAC アドレスのフォーマットが正しい場合はスプレッドシートに「1」を返し、フォーマットが不正または空白 (空文字列) の場合は「#ERR」を返します。

警告: NodeLock 関数で指定されたすべての MAC アドレスが In-Sight システムの MAC アドレスと一致しない限り、システムにジョブをロードしても、実行されず、編集もできません。

NodeLock 関数が有効な場合、ジョブは、ユーザ名に設定されたアクセス権限に関係なく、強制的にプロテクトモードで実行されます。オペレータ I/F を介して式に入力された値は、ジョブと一緒に保存されます。


画像歪みを補正するための画像のキャリブレーションと変換

How To...

In-Sight ビジョンシステムは、設置環境によって、レンズなど特定の設定条件によって引き起こされた歪みや遠近歪みを含む画像を取り込むことがあります。レンズによっては、樽型歪みまたは糸巻型歪みのパターンが生成される場合があり、これによって、実世界の直線が画像内では曲線に見えてしまうことがあります。遠近歪みは、In-Sight ビジョンシステムを検査領域に対して垂直に取り付けることができない場合に生じます。このような状況では、画像内の特徴が、視野内の位置に応じて引き延ばされたように表示され、不正確な結果となることがあります。

In-Sight ビジョンシステムには、これらの非線形歪みおよび遠近歪みを補正するための、一連のキャリブレーション関数が含まれています。

キャリブレーション関数を使用して、次の 2 つの目的のために In-Sight ビジョンシステムの光学系を「キャリブレーション」することができます。

  • In-Sight ビジョンシステムが光学歪みを補正 (画像を「変換」) し、非常に正確な計測値を返す。
  • In-Sight ビジョンシステムが、ピクセル単位を、ミリメートルやインチなどの実世界の測定単位に変換する。

In-Sight ビジョンシステムをキャリブレーションすることによって、画像の周辺部にある対象物をより正確に検出できます。また、In-Sight ビジョンシステムを検査面に対して最大 45 度の角度で取り付けることができるなど、柔軟な設置が可能になります。

例の概要

このトピックでは、レンズ歪みと遠近歪みを補正するために、CalibrateGrid 関数および TransformImage 関数を使用して、画像をキャリブレーションおよび変換する方法を示します。また、この例では、キャリブレートされ変換された出力を参照して、ほかの In-Sight ビジョンツール関数、特に TrainPatMaxPattern、FindPatMaxPatterns、および FindCircle の各関数のパフォーマンスを最適化する方法も示します。

アプリケーション

ロボットによるピックアンドプレース操作のために、ガスケットの形状をパターンとして使用して、視野内のガスケットを検出します。部品を検出し、その位置をミリメートル単位で報告した後、ガスケットの最大の穴の半径をミリメートル単位で計測し、部品が指定された公差内であることを確認します。設置環境の物理条件によって、In-Sight ビジョンシステムは検査面に対して 30 度の角度で取り付ける必要があり、これによって遠近歪みが生じています。

このアプリケーションでは、次のステップを実行します。

  1. サンプルアプリケーションと画像をロードする
  2. 画像をキャリブレーションする
  3. 画像を変換する
  4. ビジョンツールを設定し結果を変換する
  5. アプリケーションをテストする

サンプルアプリケーションと画像をロードする

実際のアプリケーションでは、In-Sight ビジョンシステムを取り付け、接続し、部品または対象物の画像を取り込む必要があります。この例では、このアプリケーションをシミュレートするためのサンプルのジョブと画像が提供されています。

開始するには、サンプルキャリブレーションジョブとそれに対応する画像をロードする必要があります。

  1. ローカルエミュレータまたは In-Sight ビジョンシステムにログオンします。
  2. [ファイル] メニューから [ジョブを開く] を選択し、[開く] ダイアログから In-Sight Explorer スプレッドシートサンプルジョブディレクトリの Calibration フォルダに移動して (Windows Vista および Windows 7 の場合: C:\Users\Public\Public Documents\Cognex\In-Sight\In-Sight Explorer x.x.x\Sample Jobs\Spreadsheet\Calibration、Windows XP および Windows Server 2003 の場合:　C:\Documents and Settings\All Users\Documents\Cognex\In-Sight\In-Sight Explorer x.x.x\Sample Jobs\Spreadsheet\Calibration)、「CalibGrid_TransformImage.job」ファイルを選択します。
  3. ジョブをロードしたら、対応するサンプル画像をロードする必要があります。[画像] メニューから [記録/再生のオプション] を選択します。
  4. [記録/再生のオプション] ダイアログは、自動的に [再生] タブが表示された状態で開きます。表示されていない場合は、[再生] タブをクリックします。
  5. [再生フォルダ] セクションで [参照] ボタンをクリックし、[フォルダの参照] ダイアログを表示します。[Sample Jobs] → [Spreadsheet] ディレクトリに移動し、Calibration フォルダを選択します。[OK] ボタンをクリックして、続行します。
  6. [再生フォルダ] には指定したディレクトリが表示されます。[画像カウント] はこのディレクトリに保存されている画像の数を示しています。[記録/再生のオプション] ダイアログの [OK] ボタンをクリックして、続行します。

画像をキャリブレーションする

In-Sight ビジョンシステムにおいて、キャリブレーションとは、画像領域を「マッピング」して、画像内の特徴と、既知の実世界の測定単位との関係を確立することです。このプロセスでは、線形および非線形の歪みを補正し、画像のピクセル単位と実世界の測定単位との間の 2D 変換を生成します。

In-Sight ビジョンシステムでキャリブレーションに使用する関数には、Calibrate、CalibrateAdvanced、および CalibrateGrid の 3 つがあり、それぞれ精度が異なります。

注意: Calibrate 関数と CalibrateAdvanced 関数は、画像内でユーザが指定した、4 点 (Calibrate の場合) または最大 9 個の点 (CalibrateAdvanced の場合) を使用し、検査対象物の実世界の計測値に関連付けます。これらの関数は、線形および非線形の歪みのみを補正します。

CalibrateGrid 関数は、ドットまたは正方形のチェッカボードによるグリッドパターン画像を取り込むことで、画像領域の「マップ」を生成します。この関数は、グリッド内で検出された特徴 (ドットまたは正方形の交点) を、ユーザが指定したグリッドパターンのグリッド間隔に関連付けます。このプロセスによって、非常に正確な計算が可能になり、それを使用して歪んだ特徴を正しい形状に変換することができます。

CalibrateGrid 関数を設定する

  1. CalibrateGrid 関数によって返された [image] データ構造体を含むセルを選択し、そのセルをダブルクリックして、[CalibrateGrid] ダイアログを開きます。
  2. [CalibrateGrid] ダイアログのナビゲーションペインで [セットアップ] をクリックし、CalibrateGrid の [セットアップ] ダイアログを開きます。[グリッドタイプ] パラメータを [フィデューシャルつきドット] に、[グリッド間隔] パラメータを 25 に、[単位] パラメータを [ミリメートル] に、さらに、[ポーズ数] パラメータを 1 に設定します。

注意: 部品または対象物の検査に大きな視野が必要な場合、または画像が大幅に歪んでいる場合は、キャリブレーションの精度を高めるために、複数のポーズを使用することを検討してください。

  3. ナビゲーションペインから [ポーズ] を選択し、キャリブレーションに使用する画像を取り込みます。このアプリケーションの場合は、[画像ファイルを開く] ボタンをクリックし、[Sample Jobs] → [Spreadsheet] ディレクトリから CalibrationGrid.bmp ファイルをロードします。
  4. 画像がロードされると、CalibrateGrid 関数は自動的に画像を処理し、検出した特徴点の数を報告します。[キャリブレーション] ボタンをクリックして、続行します。
  5. キャリブレーションデータが [image] データ構造体に取得されます。この構造体には、歪みの補正とピクセルの実世界単位への変換との両方に必要なデータが含まれ、ほかの In-Sight ビジョンツールから参照できます。

画像を変換する

次の手順は、TransformImage 関数を追加して、In-Sight ビジョンツールで参照できる歪みのない画像を生成することです。CalibrateGrid 関数は、画像の「マップ」を生成するために使用される数学的計算を含む [image] データ構造体を返します。TransformImage 関数は、この [image] データ構造体を利用して、補正計算に使用する [image] データ構造を生成し、歪みのない画像を返します。

TransformImage 関数を設定する

  1. TransformImage 関数によって返された [image] データ構造体を含むセルを選択し、プロパティシートを開きます。
  2. [キャリブレーション] パラメータを、CalibrateGrid 関数によって返された [image] データ構造体への絶対セル参照に設定します。そのほかのパラメータはデフォルト設定のままにします。
  3. [OK] ボタンをクリックして、TransformImage プロパティシートを閉じます。
  4. TransformImage 関数によって返された [image] データ構造体を含むセルを 1 回クリックすると、歪みのない画像が表示されます。この構造体は遠近歪みを補正し、例えば、楕円形に対して円形を生成します。
  5. TransformImage 関数が生成されると、ExtractCalibration 関数も自動的に生成され、スプレッドシートに挿入されます。ExtractCalibration 関数は、変換された画像のピクセル値と CalibrateGrid 関数に対して指定された実世界の単位とのキャリブレーションを含む [image] データ構造体を返します。

ビジョンツールを設定し結果を変換する

このアプリケーションでは、ガスケットが視野内のランダムな位置に現れることがあるため、ロボットによってピックする前に、画像内で検出してから、正しく製造されていることを確認する必要があります。これには、ガスケットの位置をミリメートル単位で返し、ガスケット内の最大の穴の半径もミリメートル単位で返す必要があります。

画像をキャリブレーションし変換する前では、ガスケットの形状と最大の穴は視野内のガスケットの位置によって異なり、結果はピクセル単位で返されます。CalibrateGrid 関数および TransformImage 関数を使用すると、歪みの影響が補正され、キャリブレーションされた結果が返されます。そこで、In-Sight ビジョンツールを、返された歪みのないキャリブレーション画像を参照するように設定します。

検査の設定

ビジョンツールを設定するには、関数をインストールし、検査を実行するようにリンクする必要があります。このアプリケーションでは、画像によって視野内での対象物の位置が異なるため、フィクスチャを使用する必要があります。 また、このフィクスチャは、位置データをロボットに渡すという目的でも使用します。

  • TrainPatMaxPattern 関数を設定する
  • FindPatMaxPatterns 関数を設定する
  • FindCircle 関数を設定する
  • 結果を変換する

注意: [ジョブの監査] ツールバーを使用して、In-Sight ビジョンツール間のさまざまな依存関係を表示できます。

TrainPatMaxPattern 関数を設定する

TrainPatMaxPattern 関数は、FindPatMaxPatterns 関数によって参照されるモデルパターンを生成します。ガスケットの形状をモデルとして使用します。

  1. [記録/再生] ツールバーを使用して、画像 Gasket_01.bmp をロードします。
  2. TrainPatMaxPattern 関数によって返された [image] データ構造体を含むセルを選択し、プロパティシートを開きます。
  3. [画像] パラメータを、TransformImage 関数によって出力された [image] データ構造体への絶対セル参照に設定します。これによって、TrainPatMaxPattern 関数は常に歪みのない画像を参照します。
  4. プロパティシートのツールバーで [グラフィックスの編集] ボタンを押して、対話型グラフィックスモードに切り替え、 [サーチ領域] パラメータの対象領域を調整します。ガスケットの形状を過不足なく囲むように、対象領域を設定します。領域をダブルクリックして、変更を受け入れ、対話型グラフィックスモードを終了します。
  5. [OK] ボタンをクリックして、TrainPatMaxPattern 関数のプロパティシートを閉じます。
  6. これで、モデルパターンが確立されました。

FindPatMaxPatterns 関数を設定する

FindPatMaxPatterns 関数を使用して、TrainPatMaxPattern 関数によって確立されたモデルパターンに基づき、視野内で部品を検出します。

  1. FindPatMaxPatterns 関数によって返された [image] データ構造体を含むセルを選択し、プロパティシートを開きます。
  2. [画像] パラメータを、TransformImage 関数によって出力された [image] データ構造体への絶対セル参照に設定します。これによって、FindPatMaxPatterns 関数は常に歪みのない画像を参照します。
  3. ガスケットが画像内の任意の場所に現れるため、 [サーチ領域] パラメータを、画像全体を囲むように設定します。
  4. [パターン] パラメータを、TrainPatMaxPattern 関数によって返された [image] データ構造体への絶対セル参照に設定します。
  5. ガスケットの一部が画像領域の外に現れる可能性があるため、 [領域外の特徴] パラメータを 15 に設定します。
  6. 画像内でガスケットが回転していることがあるため、 [開始角度] パラメータを -90 に、[終了角度] パラメータを 90 に設定します。
  7. そのほかのパラメータはすべて、デフォルト設定値のままにします。
  8. [OK] ボタンをクリックして、FindPatMaxPatterns 関数のプロパティシートを閉じます。

FindCircle 関数を設定する

FindCircle 関数を使用して、ガスケット内の最大の穴の半径を判定します。

  1. FindCircle 関数によって返された [image] データ構造体を含むセルを選択し、プロパティシートを開きます。
  2. [画像] パラメータを、TransformImage 関数によって出力された [image] データ構造体への絶対セル参照に設定します。これによって、FindCircle 関数は常に歪みのない画像を参照します。
  3. [フィクスチャ] パラメータを、FindPatMaxPatterns 関数の [行]、[列]、および [角度] の出力への絶対参照に設定します。これによって、FindCircle 関数の [ドーナツ領域] は、FindPatMaxPatterns 関数によって返された検出されたパターンに相対的に移動されます。
  4. プロパティシートのツールバーで [グラフィックスの編集] ボタンを押して、対話型グラフィックスモードに切り替え、 [ドーナツ領域] パラメータの対象領域を調整します。ドーナツ領域の位置をガスケットの最大の穴に合わせ、外側の半径がガスケットの最大の穴より多少大きく、内側の半径が外側の半径のおよそ半分になるように、対象領域を設定します。領域をダブルクリックして、変更を受け入れ、対話型グラフィックスモードを終了します。
  5. [極性] パラメータを [白→黒] に設定します。ドーナツ領域では、サーチ領域が内側の半径から外側の半径へ向かって検査され、ガスケットは「黒」、背景は「白」になります。エッジ極性を指定すると、検索が高速になります。
  6. [検出する基準] パラメータを [最大円] に設定すると、検索がさらに高速になります。
  7. そのほかのパラメータはすべて、デフォルト設定値のままにします。
  8. [OK] ボタンをクリックして、FindCircle 関数のプロパティシートを閉じます。

結果を変換する

FindPatMaxPatterns 関数と FindCircle 関数はどちらも、結果をピクセル単位で返しますが、ロボットと検査にはミリメートル単位の結果が必要です。さらに、ガスケットは視野内のランダムな位置や向きで現れる可能性があるため、フィクスチャを使用して、In-Sight ビジョンツールのサーチ領域を画像内で正確に位置決めする必要があり、そのため結果をピクセル単位で返す必要があります。

例えば、FindCircle 関数には FindPatMaxPatterns 関数の結果がピクセル単位の出力として必要です。FindPatMaxPatterns 関数によって返された [行]、[列]、[角度] の値は、FindCircle 関数でフィクスチャの入力として使用され、対象領域 (ROI) を画像内のどこに位置付けるかを示します。

これを解決するために、TransPatternsToWorld 関数と TransEdgesToWorld 関数を使用して、FindPatMatPatterns 関数と FindCircle 関数のピクセル単位の結果を実世界の単位であるミリメートルに変換します。これによって、TransPatternsToWorld 関数と TransEdgesToWorld 関数によって返された値が出力され、FindCircle 関数は引き続き FindPatMaxPatterns 関数によって返されたピクセル値をフィクスチャとして使用できます。

注意: フィクスチャが必要ない場合は、CalibrateImage 関数を使用して、ツールのピクセル単位の結果を実世界の単位に変換できます。

TransPatternsToWorld 関数を設定する

TransPatternsToWorld 関数は、FindPatMaxPatterns 関数によって返されたピクセル単位の結果を実世界の測定単位に変換します。

  1. TransPatternsToWorld 関数によって返された [image] データ構造体を含むセルを選択し、プロパティシートを開きます。
  2. [キャリブ] パラメータを、ExtractCalibration 関数によって返された [image] データ構造体に含まれるキャリブレーションデータへの絶対セル参照に設定します。ExtractCalibration 関数は、変換された画像のピクセル単位と CalibrateGrid 関数に対して指定された実世界の単位との間のキャリブレーションを含みます。
  3. [パターン] パラメータを、FindPatMaxPatterns 関数によって返された [image] データ構造体への絶対セル参照に設定します。
  4. [変換する数] パラメータはデフォルト設定値のままにします。
  5. [OK] ボタンをクリックして、TransPatternsToWorld 関数のプロパティシートを閉じます。
  6. これで、TransPatternsToWorld 関数によって返される結果は、実世界の単位、この場合はミリメートルで表示されます。

TransEdgesToWorld 関数を設定する

TransEdgesToWorld 関数は、FindCircle 関数によって返されたピクセル単位の結果を実世界の測定単位に変換します。

  1. TransEdgesToWorld 関数によって返された [image] データ構造体を含むセルを選択し、プロパティシートを開きます。
  2. [キャリブ] パラメータを、ExtractCalibration 関数によって返された [image] データ構造体に含まれるキャリブレーションデータへの絶対セル参照に設定します。ExtractCalibration 関数は、変換された画像のピクセル単位と CalibrateGrid 関数に対して指定された実世界の単位との間のキャリブレーションを含みます。
  3. [エッジ] パラメータを、FindCircle 関数によって返された [image] データ構造体への絶対セル参照に設定します。
  4. [変換する数] パラメータを 1 に設定します。
  5. [OK] ボタンをクリックして、TransEdgesToWorld 関数のプロパティシートを閉じます。
  6. これで、TransEdgesToWorld 関数によって返される結果は、実世界の単位、この場合はミリメートルで表示されます。

アプリケーションをテストする

遠近歪みの影響を理解するために、TrainPatMaxPattern 関数、FindPatMaxPatterns 関数、および FindCircle 関数を開き、それぞれの [画像] パラメータを A0 に設定して、修正されていない画像を表示します。

次に、TrainPatMaxPattern 関数のモデルパターンを歪んだ画像に対して調整します。

その後、[記録/再生] ツールバーを使用して、画像を順に表示し、パターン検出とガスケットの穴のサイズ測定が困難であることを確認します。

最後に、それぞれの関数の [画像] パラメータを TransformImage 関数によって返された [image] データ構造体に設定し直し、ツールが各画像に対して正常に実行されることを確認します。

検査結果の例

次の表に、遠近歪みの補正における CalibrateImage 関数と TransformImage 関数の効果を示します。

検査結果 | 歪んだ画像 | 歪みのない画像
Gasket_00.bmp (登録パターン画像)
パターンの得点 | 99.997 | 99.997
半径 (ミリメートル) | 16.666 | 20.573
Gasket_01.bmp
 | 57.27 | 99.954
 | 18.109 | 20.694
Gasket_02.bmp
 | 54.576 | 99.954
 | 18.302 | 20.723
Gasket_03.bmp
 | 0 | 99.997
 | #ERR | 20.765
Gasket_04.bmp
 | 86.539 | 99.912
 | 17.615 | 20.641
Gasket_05.bmp
 | 66.928 | 99.997
 | 18.047 | 20.669
Gasket_06.bmp
 | 0 | 98.815
 | #ERR | 20.507
Gasket_07.bmp
 | 57.133 | 99.826
 | 18.267 | 20.770
Gasket_08.bmp
 | 0 | 98.070
 | #ERR | 20.633
Gasket_09.bmp
 | 0 | 99.933
 | #ERR | 20.777
平均半径 (ミリメートル) | 17.834 | 20.664
標準偏差 | 0.622 | 0.089

関連項目

  • CalibrateGrid 関数
  • TransformImage 関数
  • TrainPatMaxPattern 関数
  • FindPatMaxPatterns 関数
  • FindCircle 関数
  • TransPatternsToWorld 関数
  • TransEdgesToWorld 関数


CIO-WENET の接続

How To...

この CIO-WENET I/O モジュールはイーサネット経由で In-Sight Micro ビジョンシステムに接続し、8 つのデジタル入力と 8 つのデジタル出力を提供します。工場出荷時の IP アドレス設定は 192.168.0.1 で、多くの場合、デバイスを使用できるようにするには、この設定を変更する必要があります。

注意: CIO-WENET イーサネット I/O モジュールはシリアル通信をサポートしていません。

  • 電源接続
  • IP アドレスの割り当て
  • I/O 接続

電源接続

警告: 不適切な供給電圧を使用すると、システム障害の原因となる可能性があります。

CIO-WENET への電源供給には、24V (-15%/+20%) の電源接続を使用します。この電力をほかのモジュールやデバイスへジャンパすることができます。一般的な設定では、CIO-WENET への電源供給には ACC-24I を使用します。この場合、電源から CIO-WENET 電源接続へ電力をジャンパします。

IP アドレスの割り当て

CIO-WENET は出荷時にデフォルトの IP アドレス (192.168.0.1) とサブネットマスク (255.255.0.0) が設定されています。ご使用の構成で、これらの設定が適切でない場合は、次の手順に従って、bootp サーバをインストールし、デバイスに IP アドレスを割り当てます。

  1. CIO-WENET で使用する IP アドレスを決定します。この値を記録し、安全な場所に保管します。
  2. Ethernet クロスオーバケーブルを使用して、192.168.xxx.xxx サブネットの IP アドレス (例: 192.168.0.4) を持つ PC にこのデバイスを直接接続します。192.168.0.1 は使用しないでください。
  3. 接続した PC でブラウザを開き、192.168.0.1 にアクセスします。Web ベースの Wago 管理ページが表示されます。
  4. ページの左側にあるナビゲーションリストで [TCP/IP] をクリックします。
  5. ユーザ名に「admin」、パスワードに「wago」と入力し、[OK] ボタンをクリックします。
  6. デフォルトの IP アドレスをデバイスに割り当てた IP アドレスに変更します。
  7. 必要に応じて、[サブネットマスク] を変更します。
  8. [SUBMIT] ボタンをクリックします。
  9. CIO-WENET の電源を切り、PC から切断します。
  10. 標準のイーサネットケーブルを使用して、CIO-WENET をネットワークに接続します。
  11. デバイスの電源を投入し、ネットワークに接続された PC のブラウザを使用して、このデバイスにアクセスし、Web 管理ページを表示します。

注意: bootp サーバを使用して、デバイスの IP アドレスを変更することもできます。このサーバは、In-Sight Explorer 4.1.0 以上の CD-ROM に入っています。通常、bootp プロトコルは CIO-WENET では無効化されています。有効化されている場合、IP アドレスを割り当てるための bootp サーバが使用できない限り、このデバイスは電源を投入しても動作しません。bootp サーバを使用する場合は、まず、ブラウザからデバイスの Web ベースの Wago 管理ページを使用して、bootp プロトコルを有効化する必要があります。

[I/O モジュールの設定] ダイアログを使用して、In-Sight Explorer 内で使用する I/O モジュールを設定します。I/O モジュールを設定したら、必要に応じてディスクリート入力ラインおよび出力ラインを設定することができます。

I/O 接続

  • 750-403 デジタル入力モジュールは、デジタルフィールドデバイス (ビジョンシステム、スイッチなど) から制御信号を受信します。各モジュールは 2 ～ 3 導体デバイスで、モジュール 1 つにつき 4 つ (DI 1 ～ 4)、合計 8 つの入力チャネルがあります。
  • 750-540 デジタル出力モジュールは、デジタルフィールドデバイスへ制御信号を送信します。モジュール 1 つにつき 4 つ (D0 1 ～ 4)、合計 8 つの出力チャネルがあります。

関連項目

[I/O モジュールの設定] ダイアログ

[ディスクリート入力設定] ダイアログ

[ディスクリート出力設定] ダイアログ


時刻同期の設定

How To...

このトピックでは、In-Sight ビジョンシステムを設定して IEEE 1588 (バージョン 2) 規格で定義されている CIP-Sync および PTP (Precision Time Protocol) を使用し、非決定性 Ethernet 経由で In-Sight ビジョンシステムと外部デバイス (PLC など) の間のイベントを同期化する方法について説明します。

  • In-Sight ビジョンシステムでの CIP-Sync の有効化
  • ローカルクロック情報
  • 画像取り込みのタイムスタンプを返す
  • PLC へのタイムスタンプの送信
  • EtherNet/IP を介したタイムスタンプを使用した In-Sight ビジョンシステムのトリガ
注意:
  • CIP-Sync は、128MB の不揮発性フラッシュメモリ付き In-Sight 5000 シリーズビジョンシステムで、バージョン 4.5.0 以降のファームウェアが実行されている場合に使用できます。In-Sight 5605 ビジョンシステム、ハードウェアタイプ 821-0032-1R は例外で、CIP-Sync をサポートしていません。In-Sight 5605 ビジョンシステム、ハードウェアタイプ 821-0032-2R は CIP-Sync をサポートしています。
  • In-Sight ビジョンシステムで CIP-Sync と PTP を有効にする前に、ビジョンシステムがインストールされている環境に事前に PTP が実装されている必要があります。
  • 時刻同期を有効にすると、ジョブ実行時間全体に 2 ～ 2.5% の処理時間が追加されます。
  • In-Sight のタイムスタンプの精度は、8 ナノ秒です。
  • 「Trigger at Time X」機能を使用しており、ネットワークが同じ CIP-Sync および PTP 規格で設定されている場合は、設定時刻の ± 5 マイクロ秒以内にトリガが発生します。それ以外の場合、設定時刻から最長で 100 マイクロ秒以内にトリガが発生します (最悪の場合のシナリオ)。

In-Sight ビジョンシステムでの CIP-Sync の有効化

  1. [センサ] メニューから、[日付/時刻の設定] を選択し、[日付/時刻の設定] ダイアログを起動します。
  2. [時刻同期] セクションで [時刻同期を使用する] チェックボックスを ON にします。
  3. [時刻同期] を有効にした後、ビジョンシステムの電源を入れ直して PTP の使用を開始し、ビジョンシステムの日付と時刻の設定をマスタと同期化する必要があります。
  4. 有効にした後は、[同期の詳細設定] ボタンを押すと、PTP スタックの現在のステータスに関する情報が表示されます。

ローカルクロック情報

グランドマスタクロック (マスタシステムの時刻) に大きな変化があった場合でも、In-Sight ビジョンシステムが継続して適切に動作するようにするため、ローカルクロックは 100ns 分解能の常時稼働 64 ビット自走タイマとして実装されます。オフセットは、ローカルクロックとマスタクロックの間で維持され、PTP を介して同期化されます。PTP は、マスタクロックのチックレートと一致するように自走タイマのチックレートを調整するためにも使用されます。

ローカルクロックの現在値を返すには、Now 関数を使用します。Now 関数は、ローカルクロックの現在値と、ローカルクロックとマスタクロック間の現在のシステム時刻オフセットを取り込みます。時間・タイマデータアクセス関数を使用すると、現在時刻のフィールドが返されます。

画像取り込みのタイムスタンプを返す

In-Sight ビジョンシステムで、カメラトリガ入力を使用した画像取り込みがトリガされた場合は、GetExposureTimestamp 関数を使用して、画像露光の開始時間を取り込んで、返すことができます。この関数は、他の 時間・タイマデータアクセス関数で処理できる [image] データ構造を返します。

PLC へのタイムスタンプの送信

PLC に送信されるデータを設定する場合は、[フォーマット出力バッファ] ダイアログを使用してデータを追加および送信できます。符号なし、4 倍精度整数値を示す「uq」フォーマット指定子を持つ 64 ビット整数のデータ型を使用します。フォーマット出力バッファは、4 倍精度整数値でタイムスタンプを PLC に送信することができます。

上記の例では、セル E10 に、GetExposureTimestamp 関数の出力を参照する GetTimeValue 関数が含まれます。セル E9 には、Now 関数を参照する GetTimeValue 関数が含まれます。セル 25 ～ 28 にはビジョンツールデータが含まれます。

EtherNet/IP を介したタイムスタンプを使用した In-Sight ビジョンシステムのトリガ

In-Sight ビジョンシステムでは、非明示的な EtherNet/IP 接続を使用してビジョンシステムにタイムスタンプを送信することで、画像取り込みをトリガすることができます。この設定を構成するには、AcquireImage 関数の Trigger パラメータを Timestamp に設定する必要があります。また、EtherNet/IP モジュールの入力アセンブリは、8 バイトデータをトリガタイムスタンプとして解釈するように設定する必要があります。この設定は、SetSystemConfig 関数を使用して、システム構成変数 「EIP.TriggerTimestampInputOffset」を、PLCからタイムスタンプが書き込まれるユーザデータフィールドのオフセットに設定することで実現されます。

例えば、次の関数を In-Sight ジョブファイルに追加することで、トリガタイムスタンプフィールドはユーザデータフィールドの最初の 8 バイトとして使用できます。

  • SetSystemConfig("EIP.TriggerTimestampInputOffset", 0)

注意: 設定を無効にするには、変数を 0 から -1 に設定します。

EtherNet/IP を使用して PLC から新しいタイムスタンプが到達すると、このタイムスタンプによってトリガされて In-Sight ビジョンシステムが取り込みを開始します。タイムスタンプがかなり以前、すなわち到達までに要した時間が 1 時間を超えた場合は、TimeTriggerFault が発行され、「EIP.TriggerTimstampFaults」カウントがインクリメントされます。


スプレッドシートセルのループの作成

How To...

特定のアプリケーションにおいては、1 回の画像取り込みおよびジョブ実行の間に、関数のアクションを複数回繰り返して実行することが必要になる場合があります。 この手法でアプリケーションを構築すると、数百、ときには数千のスプレッドシートセルを実行することが必要になります。 ただし、In-Sight ジョブでは、代わりにセルのループを使用して、スプレッドシート内のプログラミング空間を節約し、処理し易いスプレッドシートセルのブロックを作成するように構築することができます。

クロックドデータ関数の Repeat、RepeatUntil、および StoreData は、一連のセルをグループ化して、特定の期間繰り返して実行するのに使用されます。

例の概要

このトピックでは、Repeat、RepeatUntil、および StoreData 関数を使用して、ループ (指定した期間スプレッドシートセルを繰り返して実行すること) を構築する方法について説明します。 また、この例では、そのほかの In-Sight ビジョンツール、特に ExtractBlobs、SortBlobs、および Caliper 関数を使用して対象となる特徴を識別し、その高さおよび幅が公差内であるかを検査する方法についても説明します。 さらに、このアプリケーションでは、検査に関する要素およびピンコネクタに関する統計データをグラフィカルに表示するカスタムビューも使用します。

アプリケーション

ピンコネクタの高さおよび幅が公差内であるかを検査します。 ピンコネクタの位置を検出してその数をカウントしたら、各ピンコネクタをピクセル単位で測定して、指定した公差内にあることを確認します。 セルの繰り返しループを組み込んだ場合、このジョブで必要なスプレッドシートセルは 50 個未満ですみますが、ループを組み込まない場合、同じジョブで何千ものスプレッドシートセルをプログラムする必要が生じます。

このアプリケーションでは、次の手順を実行します。

  1. サンプルアプリケーションと画像をロードする
  2. ピンコネクタをカウント、検出、および測定する
  3. ループを構築する
  4. カスタムビューを表示する

サンプルアプリケーションと画像をロードする

実際のアプリケーションでは、In-Sight ビジョンシステムを取り付け、接続し、部品または対象物の画像を取り込む必要があります。この例では、このアプリケーションをシミュレートするためのサンプルのジョブと画像が提供されています。

開始するには、サンプルルーピングジョブとそれに対応する画像をロードする必要があります。

  1. ローカルエミュレータまたは In-Sight ビジョンシステムにログオンします。
  2. [ファイル] メニューから [ジョブを開く] を選択し、[開く] ダイアログから In-Sight Explorer スプレッドシートサンプルジョブディレクトリの Looping フォルダ内の Demo Connector Pin Inspection フォルダに移動して (Windows Vista および Windows 7 の場合: C:\Users\Public\Public Documents\Cognex\In-Sight\In-Sight Explorer x.x.x\Sample Jobs\Spreadsheet\Looping\Demo Connector Pin Inspection、Windows XP および Windows Server 2003 の場合: C:\Documents and Settings\All Users\Documents\Cognex\In-Sight\In-Sight Explorer x.x.x\Sample Jobs\Spreadsheet\Looping\Demo Connector Pin Inspection)、「demo connector pin inspection.job」ファイルを選択します。
  3. ジョブをロードしたら、対応するサンプル画像をロードする必要があります。[画像] メニューから [記録/再生のオプション] を選択します。
  4. [記録/再生のオプション] ダイアログは、自動的に [再生] タブが表示された状態で開きます。表示されていない場合は、[再生] タブをクリックします。
  5. [再生フォルダ] セクションで [参照] ボタンをクリックし、[フォルダーの参照] ダイアログを表示します。 [Sample Jobs] → [Spreadsheet] → [Looping] ディレクトリに移動し、Demo Connector Pin Inspection フォルダを選択します。[OK] ボタンをクリックして、続行します。
  6. [再生フォルダ] には指定したディレクトリが表示されます。[画像カウント] はこのディレクトリに保存されている画像の数を示しています。[記録/再生のオプション] ダイアログの [OK] ボタンをクリックして、続行します。

ピンコネクタをカウント、検出、および測定する

このアプリケーションの最初の手順は、ピンコネクタを識別して検出することです。これを実行するには、ブロブビジョンツール、ExtractBlobs、および SortBlobs を使用します。 最初に ExtractBlobs 関数により、画像を検査して各ピンコネクタの数 (検査ごとにほぼ 204 個) と位置を判別し、次に SortBlobs 関数を使用して、各ピンコネクタの位置をフィクスチャを基準として決定します。

ピンコネクタの数をカウントして特定したら、Caliper 関数を使用して測定を行い、各ピンコネクタの幅と高さをピクセル単位で判別します。 Caliper 関数によって返されたデータを使用して、ピンコネクタが 0.500 公差内にあるかどうかを計算するためのスプレッドシートの論理を構築します。

この節では、次の手順について説明します。

  1. ブロブビジョンツールを設定する
  2. 水平方向および垂直方向の Caliper エッジビジョンツールを設定する
  3. スプレッドシートの論理を構築する

ヒント: [ジョブの監査] を有効にして、ジョブ内のセルの依存関係をグラフィカルに表示します。

ブロブビジョンツールを設定する

  1. セル A6 の ExtractBlobs 関数によって返された [image] データ構造体を選択し、そのセルをダブルクリックして、ExtractBlobs 関数のプロパティシートを開きます。
  2. [領域] パラメータを画像領域全体に設定します。これは、位置が画像間で変化し、フィクスチャは必要ないためです (ブロブ解析も、高速な画像処理技術のうちの 1 つです)。
  3. [ソートする数] パラメータを [500] に設定します。ツールのパフォーマンスを向上させるには、この数値を [250] まで小さくしてください。
  4. さらにパフォーマンスを向上させる必要がある場合は、[ブロブの色] パラメータを [白]、[背景色] パラメータを [黒] に設定します。
  5. また、[最小面積] パラメータを [10] に、[最大面積] を [100] に設定します。 これにより、画像に表示される余分な対象物がピンコネクタとして分類されなくなります。
  6. [OK] ボタンをクリックして、ExtractBlobs プロパティシートを閉じます。
  7. 次に、セル A7 の SortBlobs 関数によって返された [image] データ構造体を選択し、そのセルをダブルクリックして、SortBlobs 関数のプロパティシートを開きます。
  8. [ブロブ] パラメータを、セル A6 の ExtractBlobs 関数によって返された [image] データ構造体への絶対参照として設定します。
  9. [ソートする数] パラメータを [250] に設定します。
  10. [ソート基準] パラメータを [グリッド - フィクスチャ原点からX、次にY] に設定します。
  11. [OK] ボタンをクリックして、SortBlobs プロパティシートを閉じます。

水平方向および垂直方向の Caliper エッジビジョンツールを設定する

  1. セル G13 の Caliper 関数 (Caliper 水平方向) によって返された [image] データ構造体を選択し、そのセルをダブルクリックして、Caliper 関数のプロパティシートを開きます。
  2. [フィクスチャ] パラメータをセル E13 および F13 への絶対参照として設定します。これらのセルは、SortBlobs 関数によって出力されたピンコネクタの行および列ピクセル座標の結果であり、GetLoopCount 関数はループ内の位置に基づいて、インデックスを付けられたどのピンコネクタを検査するかを決定します。
  3. [領域] パラメータを、ピンコネクタの右下の幅の周囲に設定します。
  4. [エッジモード] パラメータを [エッジペア] に設定します。つまり、最初のエッジをピンコネクタの左側に、2 番目のエッジをピンコネクタの右側に設定します。
  5. [エッジ距離] パラメータを [9] に設定します。この値は、ピンコネクタの幅の最大ピクセル距離です。
  6. [OK] ボタンをクリックして、水平方向の Caliper 関数のプロパティシートを閉じます。
  7. 次に、セル L13 の Caliper 関数 (Caliper 垂直方向) によって返された [image] データ構造体を選択し、そのセルをダブルクリックして、Caliper 関数のプロパティシートを開きます。
  8. [フィクスチャ] パラメータをセル E13 および F13 への絶対参照として設定します。これらのセルは、SortBlobs 関数によって出力されたピンコネクタの行および列ピクセル座標の結果であり、GetLoopCount 関数はループ内の位置に基づいてどのピンコネクタを検査するかを決定します。
  9. [領域] パラメータを、ピンコネクタの右下の高さの周囲に設定します。
  10. [エッジモード] パラメータを [エッジペア] に設定します。つまり、最初のエッジをピンコネクタの上部に、2 番目のエッジをピンコネクタの下部に設定します。
  11. [エッジ距離] パラメータを [8] に設定します。この値は、ピンコネクタの高さの最大ピクセル距離です。
  12. [OK] ボタンをクリックして、水平方向の Caliper 関数のプロパティシートを閉じます。

スプレッドシートの論理を構築する

  1. 各 Caliper 関数に対して GetEdgeDistance 関数を使用し、Caliper 関数によって返されたエッジペア間の距離を抽出します。
  2. InRange 関数を使用して、GetEdgeDistance 関数によって返された距離が EditInt 関数 (スプレッドシートのカスタムビューコントロールセクションで、標準の幅、高さ、および許容値を定義) で定義された範囲内にあるかどうかを計算します。
  3. Stringf 関数を使用して、浮動小数点数値が含まれているテキスト文字列を出力します。小数点以下 2 桁のみを表示します。
  4. 2 つの PlotLine 関数を使用して、Caliper 関数によって返された検出済みエッジを描画します。また、必要な場合は PlotString 関数を使用して、Stringf 関数によって出力された欠陥情報を描画します。

ループを構築する

スプレッドシートセルのループを構築する機能がない場合、204 個のピンコネクタすべてをカウント、ソート、および測定するプロセスには 408 個の Caliper 関数 (それぞれ、高さ用と幅用) と、GetRow、GetCol、および PlotLine 関数に関連付けられている 204 個の検出済みピンコネクタすべてに対して SortBlobs 関数によって返された 1 つの表を設定する必要があります。 ルーピングを使用すると、スプレッドシートをプログラムするのに必要な領域が削減され、さらに構築するのに必要な時間と複雑さも削減されます。

ループの作成には、内部ループの繰り返し手順ごとのデータの格納、およびループ内に累積された検査データのグラフィカルな表示という処理が含まれています。 検査時には、Caliper 関数が出力したエッジが PlotLine 関数によって描画され、必要に応じて、PlotString 関数によってエラーメッセージが生成されます。 繰り返し行われる検査ごとにすべてのグラフィカルな要素を取り込むには、StoreData 関数を PlotLine および PlotString 関数と関連付け、さらにループを構築するセル内に StoreData 関数を配置します。

この例では、PlotLine 関数が検査ごとのグラフィカルなデータを StoreData 関数に出力し、StoreData 関数がその出力結果をピンコネクタごとに蓄積して格納します。 StoreData 関数がない場合は、最後に検査されたピンコネクタのみが表示されます。 StoreData 関数は、蓄積されたデータをループの最後で PlotData 関数に出力し、PlotData 関数がループで蓄積されたデータからグラフィックを生成します。

この節では、次の手順について説明します。

  1. PlotLine、PlotString、および StoreData 関数を設定する
  2. Repeat および GetLoopCount 関数を設定する
  3. PlotData 関数を設定する

ヒント: [ジョブの監査] を有効にして、ジョブ内のセルの依存関係をグラフィカルに表示します。

PlotLine、PlotString、および StoreData 関数を設定する

  1. セル J13 の PlotLine 関数 (Caliper 水平方向) によって返された [image] データ構造体を選択し、そのセルをダブルクリックして、PlotLine 関数のプロパティシートを開きます。
  2. GetRow および GetCol という エッジデータアクセス関数を使用して、行および列座標の内側で [行] パラメータが動的引数によって構築されており、Caliper 関数からエッジデータを抽出して、ピンコネクタの水平方向のエッジをグラフィカルに描画します。
  3. 同様に、[カラー] パラメータも動的引数によって構築されていますが、これはかなり単純です。 このパラメータの引数は、セル I13 への結果出力 (Caliper 関数の結果に応じて 0 （エッジなし) と 1 (エッジあり) に変化します) を使用して、表示されている色が赤であるか緑であるかを判別します。
  4. [表示] パラメータはセル J1 への絶対セル参照であり、セル J1 はカスタムビューに線を表示するかどうかを制御する CheckBox 関数です。
  5. 水平方向および垂直方向の Caliper に対する追加の PlotLine および PlotString 関数はそれぞれ、同じ方法で構築されます。
  6. セル K13 の StoreData 関数 (Caliper 水平方向) によって返された [image] データ構造体を選択し、そのセルをダブルクリックして、StoreData 関数のプロパティシートを開きます。
  7. [イベント] パラメータは、セル A0 (AcquireImage 関数が含まれている) の [image] データ構造体への絶対セル参照です。 この関数は、画像が取り込まれるたびに実行されます。
  8. [データ] パラメータは、セル J13 の PlotLine 関数によって返された [image] データ構造体へのセル参照であり、StoreData 関数は、ループの実行時に PlotLine 関数によって出力されたグラフィカルな表示データをすべて取り込みます。
  9. [ステップ数] パラメータは、セル D6 内の GetNFound ブロブデータアクセス関数への絶対セル参照であり、この関数は ExtractBlobs 関数で検出されたブロブの総数を抽出します。 この数値により、StoreData 関数がデータを蓄積する回数が決定されます。
  10. 水平方向および垂直方向の Caliper に対する追加の StoreData 関数はそれぞれ、同じ方法で構築されます。
  11. 最後に、セル R13 の PlotCircle 関数によって返された [image] データ構造体を選択し、そのセルをダブルクリックして、PlotCircle 関数のプロパティシートを開きます。 この関数は、不合格のピンコネクタの上に円を描画するのに使用されます。
  12. GetRow および GetCol という 2 つのエッジデータアクセス関数を使用して、行および列座標の内側で [円] パラメータが動的引数によって構築されており、Caliper 関数からエッジデータを抽出して 2 で除算し、描画される円の行/列座標を推定します (必要な場合)。
  13. [表示] パラメータは、2 つの数値演算関数を利用する動的引数を使用して、円を描画するかどうかを決定します。
  14. セル S13 の StoreData 関数によって返された [image] データ構造体を選択します。この StoreData 関数はセル R13 の PlotCircle 関数によって出力されたデータを取り込むように設定されます。

Repeat および GetLoopCount 関数を設定する

  1. セル B13 の Repeat 関数によって返された [image] データ構造体を選択します。Repeat 関数は、セルまたは [ジョブの編集] ツールバーの数式バー上で直接設定されます。 データ構造体を選択すると、Repeat 関数の数式が [ジョブの編集] ツールバーの数式バーに表示されます。
  2. [イベント] パラメータは、セル A0 (AcquireImage 関数が含まれている) の [image] データ構造体への絶対セル参照です。 この関数は、画像が取り込まれるたびに実行されます。
  3. [繰り返しする反復] パラメータは、セル D6 内の GetNFound ブロブデータアクセス関数への絶対セル参照であり、この関数は ExtractBlobs 関数で検出されたブロブの総数を抽出します。 この数値により、関数を実行する回数が決定されます。
  4. [繰り返しするセル] パラメータは、D13 ～ S15 のセルをカプセル化するように設定されます。
  5. セル D13 に含まれている GetLoopCount 関数を選択します。 この関数はループのカウントを保持して、インデックスを付けられたどのピンコネクタが検査されているのかを判別します。
  6. セル E13 (GetRow)　および F13 (GetCol)　の「ブロブの結果」出力結果は、位置に関して SortBlobs 関数を、インデックスに関して GetLoopCount 関数を参照するように構築されます。

PlotData 関数を設定する

  1. セル A19 の PlotData 関数によって返された [image] データ構造体を選択し、そのセルをダブルクリックして、PlotData 関数のプロパティシートを開きます。
  2. [データ] パラメータを、セル K13 の StoreData 関数によって返された [image] データ構造体への相対参照として設定します。 PlotData 関数は、StoreData 関数に格納されているデータに基づいてグラフィカルな表示を生成します。
  3. ループに含まれている各 StoreData 関数は、関連する PlotData 関数を使用して、ループ時に蓄積されたグラフィックを描画します。

カスタムビューを表示する

カスタムビューの表示は、ジョブ実行時のオペレータとの対話用に作成されます。 オペレータは、場合によってはこの機能を使用して、標準の幅または高さの値、許容値、および特定の結果を描画または表示するかどうかを調整することができます。

また、オペレータはコントロール関数 (EditInt や CheckBox 関数など) を使用して、実行時に簡単にジョブと対話することができます。

この節では、次の手順について説明します。

  1. カスタムビューでコントロールを設定する
  2. カスタムビューの表示を設定する

ヒント: [ジョブの監査] を有効にして、ジョブ内のセルの依存関係をグラフィカルに表示します。

カスタムビューでコントロール関数を設定する

  1. セル G1 で EditInt 関数を選択します。
  2. この EditInt 関数とセル G2、H1、および H2 の EditInt 関数は、セル I13 および N13 の InRange 関数の入力パラメータとして使用されます。 これらのコントロール関数は、GetEdgeDistance 関数によって返された距離が公差内であるかどうかを計算します。
  3. セル J1 で CheckBox 関数を選択します。
  4. この CheckBox 関数は、セル J13 および J14 の PlotLine 関数の入力パラメータとして使用されます。 このコントロール関数は、Caliper 関数の水平方向の結果を表示するかどうかを決定します。
  5. セル J2 で CheckBox 関数を選択します。
  6. この CheckBox 関数は、セル O13 および O14 の PlotLine 関数の入力パラメータとして使用されます。 このコントロール関数は、Caliper 関数の垂直方向の結果を表示するかどうかを決定します。
  7. セル N1 で CheckBox 関数を選択します。
  8. この CheckBox 関数は、セル R13 の PlotCircle 関数の入力パラメータとして使用されます。 このコントロール関数は、欠陥のあるピンコネクタの上に赤色の円を表示するかどうかを決定します。
  9. セル N2 で CheckBox 関数を選択します。
  10. この CheckBox 関数は、セル J15 および O15 の PlotString 関数の入力パラメータとして使用されます。 このコントロール関数は、Caliper 関数の値を数値テキスト文字列として表示するかどうかを決定します。

カスタムビューの表示を設定する

  1. [編集] メニューから、[カスタムビューの設定] を選択します。これにより、[カスタムビューの設定] ダイアログが表示されます。
  2. 「カスタムビューでコントロール関数を設定する」節の説明に従って、コントロール関数を囲むように [セルの範囲] を定義します。
  3. [移動/サイズ変更] ボタンをクリックして対話型グラフィックモードに移行し、画像内でコントロール関数を配置する場所を決定します。
  4. [OK] ボタンをクリックして、[カスタムビューの設定] ダイアログを閉じます。
  5. [表示] メニューから [カスタムビュー] を選択し、カスタムビューのユーザインタフェースを表示します。 これは、ジョブ実行時にオペレータが対話に使用するユーザインタフェースです。
  6. 実行時をシミュレートするには、[記録/再生] ツールバーから [再生] ボタンをクリックします。 これにより、[再生] フォルダ内の画像の再生が開始され、実行時のジョブの実行状態がシミュレートされます。


In-Sight 7000 シリーズビジョンシステムでのシリアル通信の有効化

How To...

In-Sight 7000 シリーズビジョンシステムでシリアル通信を有効にするには、次の 2 つのオプションがあります。

  • 電源および I/O ブレークアウトケーブル
  • CIO-MICRO　または CIO-MICRO-CC I/O モジュール
注意:
  • インストール手順の詳細と配線の詳細については、『In-Sight® 7000 Series Vision System Installation Manual』を参照してください。
  • ハードウェアフロー制御が必要な場合は、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する必要があります。
  • シリアルデータを送受信するためには、ビジョンシステムがオンラインである必要があります。

オプション 1: 電源および I/O ブレークアウトケーブル

In-Sight 7000 シリーズのビジョンシステムは、電源および I/O ブレークアウトケーブルの RS-232 TRANSMIT および RS-232 RECEIVE ピンを使用してシリアルデバイスに直接接続することができます。 In-Sight 7000 シリーズビジョンシステムが電源および I/O ブレークアウトケーブルに接続されている場合 (I/O モジュールには接続されていない)、ビジョンシステムではディスクリートとシリアルの間で双方向の入力と出力を使用することができます。

  • 入力 Line 1 は、「シリアル受信」または汎用入力として設定することができます。
  • 出力 Line 1 は、「シリアル送信」または高速出力として設定することができます。
注意:
  • 入力 Line 1 が汎用入力として設定されているか、または出力 Line 1 が高速出力として設定されている場合、[シリアルポートの設定] ダイアログコントロールは有効のままです。シリアルポートがアクティブではないことを示す視覚的な表示はありません。
  • 入力 Line 1 に対して「シリアル受信」が選択されている場合、出力 Line 1 に対しては自動的に「シリアル送信」が選択されます。逆の場合も同様です。 さらに、入力 Line 1 に対してそのほかの入力タイプが選択されている場合、この Line は汎用入力として設定され、出力 Line 1 はこの Line に対するデフォルトの出力タイプを使用して、自動的に高速出力に再設定されます。逆の場合も同様です。

以下の手順では、次のことを前提としています。

  • ビジョンシステムが適切にインストールされている。
  • ビジョンシステムに、電源および I/O ブレークアウトケーブルが接続されている。
  • 電源および I/O ブレークアウトケーブルが、シリアルデバイスに接続されている。

  • I/O モジュールには接続されていない。

    注意: インストール手順の詳細と配線の詳細については、『In-Sight® 7000 Series Vision System Installation Manual』を参照してください。.

EasyBuilder ビュー

  1. In-Sight Explorer を起動して、ビジョンシステムにログオンします。
  2. [入力] アプリケーションステップに移動します。
    1. 接続済みモジュールとして直接接続 I/O がリストされていることを確認します。 リストされていない場合は、[I/O モジュール] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、直接接続 I/O に接続します。
    2. Line 1 に対して、[エッジタイプ] ドロップダウンリストから [シリアル受信] を選択します。
  3. [出力] アプリケーションステップに移動します。
    1. Line 1 に対して、指定した信号タイプとして自動的に [シリアル送信] が選択されていることを確認します。
  4. [通信] アプリケーションステップに移動します。
    1. 新しいデバイスを追加する場合は、[デバイスの追加] ボタンをクリックしてデバイスを設定します。 既存のデバイスを編集する場合は、[通信] グループボックスでそのデバイスをハイライトして [デバイスの編集] ボタンをクリックします。
    2. [シリアルポートの設定] タブを選択して、シリアル通信を設定します。

スプレッドシートビュー

  1. In-Sight Explorer を起動して、ビジョンシステムにログオンします。
  2. [センサ] メニューから、[ディスクリート入力設定] ダイアログを開きます。
    1. 接続済みモジュールとして直接接続 I/O がリストされていることを確認します。 リストされていない場合は、[I/O モジュール] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、直接接続 I/O に接続します。
    2. Line 1 に対して、[種類] ドロップダウンリストから [シリアル受信] を選択します。[OK] をクリックして、ダイアログを閉じます。
  3. [ディスクリート出力設定] ダイアログを開きます。
    1. Line 1 に対して、指定したタイプが [シリアル送信] であることを確認します。[OK] をクリックして、ダイアログを閉じます。
  4. [シリアルポートの設定] ダイアログを開き、シリアル通信を設定します。[OK] をクリックして、ダイアログを閉じます。

オプション 2: CIO-MICRO または CIO-MICRO-CC I/O モジュール

In-Sight 7000 シリーズのビジョンシステムでは、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールの同時接続がサポートされています。In-Sight 7000 シリーズのビジョンシステムが CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用するように構成されている場合、電源および I/O ブレークアウトケーブルの　RS-232 TRANSMIT および RS-232 RECEIVE ピンは無効です。シリアルデバイスへの接続には、I/O モジュールの RS-232 OUT ポート (DB9) を使用してください。

以下の手順では、次のことを前提としています。

  • ビジョンシステムが適切にインストールされている。
  • ビジョンシステムに、電源および I/O ブレークアウトケーブルが接続されている (電源、取り込みトリガ、および I/O の供給のみが目的)。

  • I/O モジュールの RS-232 OUT　ポート (DB9) が、シリアルデバイスに接続されている。

    警告:
    • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの TRIGGER+、TRIGGER-、HS OUT 0、HS OUT 1、および HS COMMON ターミナルはサポートされません。リモートデバイスからこれらのターミナルにリード線を接続しないでください。
    • In-Sight 7000 シリーズのビジョンシステムを CIO-MICRO または CIO-MICRO-CC I/O モジュールと接続する場合、I/O モジュールの I/O ポート (DB15) はサポートされていません。このポートには何も接続しないでください。

    注意:
    • In-Sight 7000 シリーズビジョンシステムの高速出力は、ビジョンシステムが電源および I/O ブレークアウトケーブルに接続されている場合のみサポートされます。
    • インストール手順の詳細と配線の詳細については、『In-Sight® 7000 Series Vision System Installation Manual』を参照してください。

EasyBuilder ビュー

  1. In-Sight Explorer を起動して、ビジョンシステムにログオンします。
  2. [通信] アプリケーションステップに移動します。
    1. 接続済みモジュールとして [CIO-MICRO]　または [CIO-MICRO-CC] がリストされていることを確認します。 リストされていない場合は、[I/O モジュール] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、適切な I/O モジュールに接続します。
    2. 新しいデバイスを追加する場合は、[デバイスの追加] ボタンをクリックしてデバイスを設定します。 既存のデバイスを編集する場合は、[通信] グループボックスでそのデバイスをハイライトして [デバイスの編集] ボタンをクリックします。
    3. [シリアルポートの設定] タブを選択して、シリアル通信を設定します。

スプレッドシートビュー

  1. In-Sight Explorer を起動して、ビジョンシステムにログオンします。

  2. [センサ] メニューから、[シリアルポートの設定] ダイアログを開きます。
    1. 接続済みモジュールとして [CIO-MICRO] または [CIO-MICRO-CC] がリストされていることを確認します。 リストされていない場合は、[I/O モジュール] ボタンをクリックして [I/O モジュールの設定] ダイアログを開き、適切な I/O モジュールに接続します。
    2. シリアル設定を行います。[OK] をクリックして、ダイアログを閉じます。

関連項目

  • [シリアルポートの設定] ダイアログ
  • [ディスクリート入力設定] ダイアログ
  • [ディスクリート出力設定] ダイアログ
  • [I/O モジュールの設定] ダイアログ


[I/O モジュールの設定] ダイアログ

[センサ] メニュー → [ディスクリート I/O の設定] → [入力設定]

In-Sight Explorer GUI リファレンス

[I/O モジュールの設定] ダイアログでは、In-Sight Explorer 内で使用する I/O モジュールの設定を行います。

[I/O モジュールの設定] ダイアログにアクセスする

CIO-1400、CIO-1450、または CIO-1460 を設定する

CIO-MICRO または CIO-MICRO-CC を設定する

CIO-WENET を設定する

[I/O モジュールの設定] ダイアログにアクセスする

EasyBuilder ビュー

  • [アプリケーションステップ] ペインから、以下の操作を実行します。
    • [入力] または [出力] アプリケーションステップをクリックします。または、
    • [通信] アプリケーションステップをクリックし、シリアルデバイスを追加して、[シリアルポートの設定] タブをクリックします。
  • [I/O モジュール] ボタンをクリックします。

スプレッドシートビュー

  • [センサ] メニューから、以下の操作を実行します。
    • [シリアルポートの設定] を選択します。
    • [ディスクリート I/O の設定] → [入力設定] を選択します。または、
    • [ディスクリート I/O の設定] → [出力設定] を選択します。
  • [I/O モジュール] ボタンをクリックします。

CIO-1400、CIO-1450、または CIO-1460 を設定する

  1. In-Sight Explorer から、サポートしているビジョンシステムに接続します。
  2. [I/O モジュールの設定] ダイアログを開きます。
  3. [I/O モジュールの選択] ドロップダウンリストから、[CIO-1400]、[CIO-1450]、または [CIO-1460] を選択します。

  4. [OK] をクリックして、ダイアログを閉じます。

CIO-MICRO または CIO-MICRO-CC を設定する

注意:　フルアクセス許可を持つユーザとしてログオンしている場合、[センサ] メニューから In-Sight CIO-MICRO および CIO-MICRO-CC モジュールのファームウェアを更新することはできません。Admin ではなくパスワードが空白のユーザとして In-Sight Explorer にログオンしている場合を除き、In-Sight CIO-MICRO および CIO-MICRO-CC モジュールのファームウェアを更新するには、[I/O モジュールの設定] ダイアログを使用する必要があります。

  1. In-Sight Explorer から、サポートしているビジョンシステムに接続します。
  2. [I/O モジュールの設定] ダイアログを開きます。
  3. [I/O モジュールの選択] ドロップダウンリストから、[CIO-MICRO] または [CIO-MICRO-CC] を選択します。

  4. [接続先] ドロップダウンリストから適切な I/O モジュールを選択します。

注意:　I/O モジュールのホスト名がリストに表示されない場合は、<IP アドレスによって接続> を選択して、I/O モジュールの IP アドレスを手動で入力します。

  5. [更新間隔] フィールドに、In-Sight Micro ビジョンシステムと CIO-MICRO または CIO-MICRO-CC I/O モジュールとの間で入出力を同期するために必要な時間間隔 (1 ～ 500 ミリ秒、デフォルト = 20 ミリ秒) を指定します。

注意:　出力信号の大幅な遅延が問題になる場合は、更新間隔を短くします。ただし、更新間隔はアプリケーションで必要とされる以上に短くしないでください。更新間隔が短くなると、ジョブの実行にかかる時間が長くなることがあります。

  6. [ファームウェアアップデート] ボタンをクリックして、I/O モジュールのファームウェアを更新します。ファームウェアを更新すると、発見されたファームウェアがデフォルトのディレクトリ C:\Program Files\Cognex\In-Sight\In-Sight Explorer x.x.x\firmware\CioMicro にインストールされます。

  7. 必要に応じて、[設定の変更] ボタンをクリックして、I/O モジュールのネットワーク設定を行います。
  • デフォルトでは、In-Sight CIO-MICRO および CIO-MICRO-CC I/O モジュールは、DHCP サーバによって起動時に動的に設定されます。新しいホスト名を割り当てることもできますが、ダイアログ内のそのほかのフィールドはすべて無効です。

注意:　DHCP サーバが使用できない場合は、I/O モジュールはタイムアウトし、リンクローカル IP アドレスに接続します。

  • CIO-MICRO および CIO-MICRO-CC には、固定 IP アドレスも使用することができます。[DHCP サーバの使用] チェックボックスをオフにして、[IP アドレス]、[サブネットマスク]、[デフォルトゲートウェイ]、[DNS サーバ] および [ドメイン名] フィールドに適切なネットワーク設定を指定します。

  8. [OK] をクリックして、ダイアログを閉じます。

CIO-WENET を設定する

注意:　In-Sight Explorer で CIO-WENET Ethernet I/O モジュールを設定するには、最初に、モジュールに IP アドレスを割り当てる必要があります。

  1. In-Sight Explorer から、サポートしているビジョンシステムに接続します。
  2. [I/O モジュールの設定] ダイアログを開きます。
  3. [I/O モジュールの選択] ドロップダウンリストから、[CIO-WENET] を選択します。

  4. [IP アドレス] フィールドには、CIO-WENET に事前に割り当てた IP アドレスを指定します。
  5. [更新間隔] フィールドに、In-Sight Micro ビジョンシステムと CIO-WENET I/O モジュールとの間で入出力を同期するために必要な時間間隔 (1 ～ 500 ミリ秒、デフォルト = 20 ミリ秒) を指定します。
注意:
  • 出力信号の大幅な遅延が問題になる場合は、更新間隔を短くします。ただし、更新間隔はアプリケーションで必要とされる以上に短くしないでください。更新間隔が短くなると、ジョブの実行にかかる時間が長くなることがあります。
  • CIO-WENET の場合、同期間隔は [更新間隔] よりも 3 ミリ秒長くなります。
  6. [OK] をクリックして、ダイアログを閉じます。

関連項目

[シリアルポートの設定] ダイアログ

[ディスクリート入力設定] ダイアログ

ディスクリート出力


カスタムビューで起動する

How To...

In-Sight Explorer の起動時に自動的にカスタムビューでジョブをロードしたり、特定のユーザ名でログオンするようにしたりカスタマイズすることができます。起動時にカスタムビューを自動ロードするには、以下の手順を実行します。

注意: アクセス権レベルが「プロテクト」または「ロック」に設定されているユーザ名でセンサにログオンすると、常にカスタムビューが表示されます。

  1. ロードするジョブファイルを指定します。

a. ジョブファイルをカスタムビューで生成して、ジョブファイルを保存します。

b. [センサ] メニューから [スタートアップ] を選択して、[スタートアップ] ダイアログを開きます。

c. [ジョブ] ドロップダウンメニューから、起動時に自動的にロードするジョブファイルを選択します。

d. [OK] をクリックして、[スタートアップ] ダイアログを閉じます。

  2. カスタムビューで起動するようにユーザの設定を行います。

a. [センサ] メニューから、[ユーザリスト] を選択して、[ユーザリスト] ダイアログを開きます。

b. リストのユーザをハイライトします。

c. [編集] をクリックして、[ユーザ] ダイアログを開きます。

d. [ログオン時にカスタムビューを表示] チェックボックスをオンにします。

e. [OK] をクリックして、[ユーザ] ダイアログを閉じます。もう一度 [OK] をクリックして、[ユーザリスト] ダイアログを閉じます。

  3. デフォルトのログオンユーザを設定します。

注意: デフォルトのログオンユーザは、上記の [ユーザリスト] ダイアログで指定したユーザでなければなりません。

a. [システム] メニューから、[オプション] ダイアログを開きます。

b. [スタートアップ] をハイライトして、[スタートアップ] パネルを表示します。

c. In-Sight Explorer の起動時に自動的にログオンする [ユーザ名] を入力します。

d. ユーザ名の [パスワード] を入力します。ユーザにパスワードが割り当てられていない場合は、[パスワード] フィールドを空欄のままにしておきます。


トラブルシューティング

In-Sight Explorer リファレンス

#ERR

エラーメッセージ

ファイアウォール

ネットワークのトラブルシューティング


#ERR

In-Sight Explorer トラブルシューティング

#ERR の意味

#ERR セルのトラブルシューティングの方法

#ERR を無視してエラーの拡散を止める方法

#ERR の意味

#ERR を表示するセルは、そのセルが関数を正常に実行できなかったことを示しています。一般的には、無効な入力パラメータが原因です。#ERR 状態は、ビジョンアプリケーションの通常の操作によって発生することもあれば、スプレッドシートの論理そのものに含まれるエラーによって発生することもあり、さまざまなことが要因となります。一般に、次の場合に #ERR が発生します。

  1. 算術演算の基本的なエラー

セル A4 = A3/A2 で、セル A2 が 0 の場合、セル A4 の関数は「ゼロによる除算」エラーを生成します。

  2. 領域グラフィックスエラー: 領域が画像の範囲外へ移動

PatFind などの位置決めツールを使用して、ほかのビジョンツールの位置をフィクスチャするとき、ビジョンツールの領域の一部が画像の範囲外に出てしまうことがあります。この場合、ビジョンツールは、ビジョンツールの有効な結果構造体を返さずに #ERR を報告します。

  3. 「Get」関数のエラー: ビジョンツールが結果を生成しない

ExtractBlobs ツールとともに GetRow 関数を使用する場合、状況によっては、ExtractBlobs ツールで予想される数のブロブを確認できないことがあります。このような状況で画像から目的のブロブを検出できなかった場合、GetRow 関数は #ERR を報告します。

  4. 通信エラー: データを送信できない

WriteImageFTP セルや WriteDevice セルは、スプレッドシートが実行されるたびに、データを In-Sight センサから別のコンピュータに自動的に送信します。クライアントコンピュータで問題が発生し、データを受信できない場合、In-Sight センサの出力バッファがいっぱいになることがあります。出力バッファのオーバフロー (データを格納できない状態) が発生すると、これらのセルは #ERR を報告します。

#ERR セルのトラブルシューティング方法

ほとんどの #ERR 状態はエラー文字列を返します。エラー文字列が生成されている場合、#ERR を含むセルにマウスを合わせると、エラー文字列が表示されます。また、赤い感嘆符 ( [image]) がプロパティシートに表示された場合は、その赤い感嘆符にマウスを合わせるとエラー文字列が表示されます。エラー文字列をスプレッドシート上で取得するには、GetErrorString 関数を使用します。各エラー文字列には個別の診断コード番号が割り当てられています。診断コードは、GetErrorCode 関数で取得できます。最もよく返されるエラー文字列を確認するには、 Closed ここをクリックしてください。

汎用エラー文字列

診断コード | 対応する情報文字列
00000000 | システムエラーです。
00000001 | メモリ不足のため、操作を完了できません。
00000003 | 入力した引数が間違っています。
00000004 | 入力した引数は範囲外です。
00000005 | 入力した引数の型は互換性がありません。
00000009 | 前のセルでジョブがタイムアウトしたため、セルは実行されませんでした。

汎用ビジョンツールのエラー文字列

診断コード | 対応する情報文字列
00010000 | ビジョンツールエラーです。
00010001 | 無効な画像メモリです。
00010001 | 入力した領域が小さすぎます。
00010002 | 入力した領域が画像境界を超えています。

ReadIDCode 関数のエラー文字列

診断コード | 対応する情報文字列
00019000 | IDMax ビジョン処理エラーです。
04010000 | ReadCompositeCode エラーです。
04010001 | 2D コンポーネントアドレスパターンを検出できません。
04010002 | 無効な 2D コンポーネント画像データが多すぎます。
04010003 | 2D コンポーネントシンボルバージョンを検出できません。
04010004 | 欠落している 2D コンポーネントアドレスパターンを埋めることができません。
04010005 | スキャンラインが無効な画像データを検出しました。
04010006 | スキャンラインが画像境界を超えています。
04010007 | 1D コンポーネントファインダパターンを検出できません。
04010008 | 無効な 1D コンポーネント画像データが多すぎます。
04010009 | 有効なシンボルが見つかりません。
04010010 | 訂正の必要なシンボルエラーが多すぎます。
04010011 | 誤り訂正に失敗しました。
04010012 | 1D と 2D がデコード可能ですが、関連付けられていません。
04010013 | 自動コントラストしきい値計算に失敗しました。
04010014 | コントラスト感度が許容範囲を超えています。
04010015 | スキャンパラメータが許容範囲を超えています。
04020000 | ReadIDCode エラーです。
04020001 | 有効なシンボルが見つかりません。
04020002 | シンボルをデコードできませんでした。
04030001 | シンボルが検出されましたが、デコードできませんでした。
04030002 | シンボルが検出されなかったか、デコードされませんでした。
04030003 | ReadIDCode 操作がタイムアウトになりました。
04030004 | デコードを試みているときに、センサがメモリ不足になりました。
04030005 | ReadIDCode が予期せずに失敗しました。
04030006 | VerifyIDCode に無効な ReadIDCode セル参照があります。
04030007 | ReadIDCode に無効な画像セル参照があります。
04030008 | [アルゴリズム] チェックボックスがオンのときには、No-Read 診断はデータマトリックスまたは QR コードについてのみサポートされます。
04030009 | ReadIDCode プロパティシートの [アルゴリズム] チェックボックスがオンになっていません。

VerifyIDCode 関数および ValidateIDCode 関数のエラー文字列

診断コード | 対応する情報文字列
04040001 | 無効なシンボル識別子です。
04040002 | パターンマッチに失敗しました。
04040003 | 無効なフィールド識別子です。
04040004 | 無効なアプリケーション識別子 (AI) です。
04040005 | 無効なデータ識別子 (DI) です。
04040006 | 無効なテキスト要素識別子 (TEI) です。
04040007 | 無効なフィールドデータです。
04040008 | 無効なフィールドセパレータです。
04040009 | データは ISO 15434 準拠ではありません。
04040010 | サポートされないフォーマットです。
04040011 | 無効なフォーマットコードです。
04040012 | ISO 15434 シンタックスは、このコードではサポートされません。
04040013 | フィールドは、このアプリケーションでは無効です。
04040014 | アプリケーションフィールドはサポートされていません。
04040015 | 無効なアプリケーションデータです。
04040016 | 複数のフォーマットが存在します。
04040017 | 重複するフィールドがあります。
04040018 | 無効な DoD UID コンストラクト #1 データです。
04040019 | 無効な DoD UID コンストラクト #2 データです。
04040020 | 無効な DoD UID データです。
04040021 | フォーマットトレーラ文字が欠落しています。
04040022 | メッセージトレーラ文字が欠落しています。

ImportData/ExportData 関数のエラー文字列

診断コード | 対応する情報文字列
05030000 | ファイル名がありません。
05030001 | ユーザ名がありません。
05030002 | ファイルタイプが .CXD ではありません。
05030003 | ファイル名が長すぎます。
05030004 | メモリ割り当てエラーです。
05030006 | ローカルフラッシュメモリがエクスポート先として指定された場合、AcquireImage を ExportData のイベントにすることはできません。
05030007 | サポートされないデータタイプです。
05030008 | データがファイルにありません。
05030009 | データ解析エラーです。
05030010 | サポートされないデータタイプです。
05030011 | ファイル操作エラーです。

PatMax の情報およびエラー文字列

診断コード | 対応する情報文字列
07010000 | パターンに含まれるマッチ特徴が少なすぎることがあります。
07010001 | 特徴の粒度を自動的に設定するのは困難です。
07010100 | 手動で [粒度] を設定してください。登録画像の表示がぼやけているので、パターンが予想より正確でないことがあります。
07010102 | 疎粒度の特徴が同じ方向であるために、パターン結果が不安定になることがあります。
07010200 | 高精度な特徴が多いため、実行時間が長くなることがあります。手動で [粒度] を設定してください。
07010101 | パターンに含まれる情報が不十分なため、角度またはスケールを正確に測定できないことがあります。
07020300 | コントラストが低いため、結果は破棄されました。
07020301 | より正確な結果を得るため、結果は破棄されました。
07020302 | クラッタが多すぎるため、結果は破棄されました。
07020303 | 現在のパラメータ設定に対して、登録パターンに含まれる特徴が少なすぎます。
07030000 | エラー情報はありません。

汎用エラー文字列

診断コード | 対応する情報文字列
09990100 | 対応付けデータのサイズはゼロです。
09990101 | ビューで指定したポイントが 9 未満です。
09990102 | 無限にマップします。
09990103 | 無効なポイント構成です。
09990104 | 固有パラメータの検索に失敗しました。
09990500 | 内部 CalibrateGrid エラーです。

ComputeStats 関数のエラー文字列

診断コード | 対応する情報文字列
03040700 | 関数の入力値が無効です。

畳み込みフィルタのエラー文字列

診断コード | 対応する情報文字列
03210002 | 行と列の数は 1 ～ 10 の範囲でなければなりません。
03210004 | カーネル値は -9999 ～ 9999 の範囲でなければなりません。

注意: #ERR に対応するエラー文字列がない場合、GetErrorCode 関数は -1 を返します。

エラー文字列を返さない #ERR については、エラーとなっているセル関数の各パラメータを調べることによって、#ERR の原因を究明することができます。数式内のセル参照を調べて、それらの値を確認してください。複雑なジョブの場合は、いくつかの参照や入れ子型の参照を追跡する必要が生じる場合もあります。

画像取り込み関数の一部の機能 (部分取り込み、照明制御など) は、エミュレータではサポートされていません。In-Sight センサ上でこれらの機能を使用したジョブを作成し、そのジョブをエミュレータにロードすることは可能ですが、このとき、セル A0 の AcquireImage 関数が #ERR を報告することがあります。

#ERR を無視してエラーの拡散を止める方法

ExtractBlobs ツールにより検出された複数のブロブの合計面積を計算するケースを考えて見ましょう。GetArea 関数を使用して、ブロブ構造体から個々のブロブの面積を取得します。ブロブが検出されないと、GetArea 関数は正常に実行されませんが、アプリケーションでは正常な状況である場合があります。

セル | 関数 | 説明
A1 | ExtractBlobs([パラメータ]) | ブロブを抽出して、 [image] 構造体を返します。
B1 キー | GetArea(A1,0) | ブロブ 0 の面積を返します。
B2 キー | GetArea(A1,1) | ブロブ 1 の面積を返します。
B3 キー | GetArea(A1,2) | ブロブ 2 の面積を返します。
B4 キー | Sum(B1:B3) | ブロブの総面積を計算します。
ExtractBlobs 関数が 3 つ以上のブロブを検出できないと、1 つ以上の GetArea セルが #ERR を報告するために、数式 Sum(B1:B3) は、#ERR を報告します。このエラー状態を無視するには、次の ErrFree 関数を使用します。
B4 キー | Sum(ErrFree(B1:B3)) | ブロブの総面積を計算します。

ErrFree 関数を使用すると #ERR が 0 に置き換えられます。したがって、この Sum 関数の入力パラメータに含まれる #ERR の値はすべて 0 として処理されます。


エラーメッセージ

In-Sight Explorer トラブルシューティング

詳細と可能な解決方法については、次のいずれかのエラーを選択してください。

Error:　参照深度の最大値を超えています。

Error 3000:　<番号> は正しい値ではありません。

Error 5000:　セグメントが検出されませんでした。

Error 5001:　フォントに登録された文字数が最大値に達しています。

Error 5100:　入力した In-Sight ホスト名は既に存在します。

Error 5101:　このホスト名は使用できません。

Error 5102:　このホスト名は使用できません。

Error 5106:　この IP アドレスは使用できません。

Error 5107:　IP アドレスは既に定義されています。

Error 5200:　パスワードが間違っています。

Error 5201:　入力したユーザ名は既に存在します。

Error 5300:　<ホスト名> を再起動できません。

Error 5301:　<ホスト名> の再起動の際にエラーが発生しました。

Error 5302:　<ホスト名> へのネイティブモード接続を確立できません。

Error 5400:　未知の接続エラーです。

Error 5401:　接続が拒否されました。

Error 5402:　不正なユーザ名またはパスワードです。

Error 5403:　不正なユーザ名またはパスワードです。

Error 5404:　<ホスト名> に接続できません。

Error 5405:　内部の接続/切断エラーです。

Error 5406:　バージョンが一致しませんでした。

Error 5407:　<ユーザ名> に合わせてアクセス権レベルを調整する必要があります。

Error 5408:　ユーザ <ユーザ名> は既にこのシステムにローカル接続しています。

Error 5409:　<ホスト名> からのユーザ <ユーザ名> は既にこのシステムにリモート接続しています。

Error 5410:　ドラッグ & ドロップリストには有効なファイルがありません。

Error 5500:　画像をファイル <ファイル名> に保存できません。

Error 5501:　ジョブをファイル「ファイル名」に保存できません。

Error 5502:　エミュレータ上のファイル名 image.bmp、image.jpg、screen.bmp または screen.jpg に保存できません。

Error 5503:　<フォルダ名> という名前の新しいフォルダを作成できませんでした。

Error 5504:　<フォルダ名> という名前のフォルダは既に存在します。

Error 5505:　<ファイル名> は最大長の 15 文字を超えているか複数のドット (.) を含んでいます。

Error 5506:　画像ファイル <ファイル名> を開くことができません。

Error 5507:　ジョブファイル <ファイル名> を開くことができません。

Error 5600:　IP アドレス <IP アドレス> を持つデバイスがネットワーク上に検出されました。

Error 5700:　数式が複雑すぎます。

Error 5701:　数式が不正です。

Error 5800:　未知のネイティブモード応答です。

Error 5801:　未知のネイティブモードコマンドです。

Error 5802:　コマンドを実行できる権限を持っていません。

Error 5803:　ネイティブモードコマンドエラーです。

Error 6000:　レイアウトを回復できません。

Error 6001:　UDP ポート 1069 を開くことができません。

Error 6002:　エミュレータを停止できませんでした。

Error 6003:　エミュレータを起動できませんでした。

Error 6004:　レポートを書き込むことができませんでした。

Error 6005:　スタイルシート <ファイル名> をコピーできませんでした。

Error 6006:　リリースノート <ファイル名> を表示できませんでした。

Error 6007:　<ホスト名> からディレクトリを取得できません。

Error 6008:　<ホスト名> へのリンクを確立できませんでした。

Error 6009:　<ホスト名> への FTP 接続を確立できません。

Error 6010:　ファイル <ファイル名> をバックアップできません。

Error 6011:　<ホスト名> のバックアップディレクトリを作成できません。

Error 6012:　<ホスト名> への FTP セッションを閉じるときに例外が発生しました。

Error 6014:　<ファイル名> をリストアする際にエラーが発生しました。

Error 6015:　<ホスト名> のバックアップディレクトリが見つかりません。

Error 6016:　<ファイル名> の削除は許可されていません。

Error 6017:　<ファイル名> を削除する際にエラーが発生しました。

Error 6018:　<ファイル名> をコピーする際にエラーが発生しました。

Error 6019:　<ファイル名> のコピーは許可されていません。

Error 6020:　In-Sight センサ <ホスト名> はオンラインのままです。

Error 6021:　<ホスト名> のオンラインステータスを検出できません。

Error 6022:　<ホスト名> のオンラインステータスを設定できません。

Error 6023:　<ホスト名> のオフラインステータスを確認できません。

Error 6024:　<ホスト名> をバックアップできません。

Error 6025:　<ホスト名> のオンラインステータスをリストアできません。

Error 6027:　<ホスト名> の再起動がタイムアウトになりました。

Error 6028:　<ホスト名> の再起動の際にエラーが発生しました。

Error 6029:　<ホスト名> へのネイティブモード接続を確立できません。

Error 6030:　<ホスト名> から設定を読み取ることができません。

Error 6031:　<ホスト名> からネットワーク設定を取得できません。

Error 6032:　<ファイル名> に設定を書き込むことができません。

Error 6033:　<ファイル名> にネットワーク設定を書き込むことができません。

Error 6034:　<ホスト名> にネットワーク設定を保存することができません。

Error 6035:　不正なホスト名が検出されました。

Error 6036:　このホスト名は使用できません。

Error 6037:　ホスト名は既に定義されています。

Error 6038:　不正な IP アドレスが検出されました。

Error 6039:　この IP アドレスは使用できません。

Error 6040:　IP アドレスは既に定義されています。

Error 6041:　セキュリティキーが無効です。

Error 6042:　レジストリを書き込む際にエラーが発生しました。

Error 6043:　エミュレータに接続できませんでした。

Error 6044:　Options.xml ファイルの書き出しに失敗しました。

Error 6045:　ローカルエミュレータは、センサのファームウェアを更新するために現在使用中です。

Error 6046:　<ホスト名> のバックアップディレクトリを作成できません。

Error 6047:　In-Sight センサがネットワーク上で検出されず、オフラインプログラミングライセンスが入力されていなかったため、エミュレータは起動しませんでした。

Error 6304:　ディレクトリ <ホスト名> を開くことができません。

Error 6308:　<ホスト名> のバックアップディレクトリが見つかりません。

Error 6421:　<ホスト名> に接続できません。

Error 6441:　<ホスト名> のバックアップディレクトリが見つかりません。

Error 7000:　ファームウェアファイルを取得する際にエラーが発生しました。

Error 7001:　未知のエラーです。

Error 7002:　1 つまたは複数の In-Sight センサでファームウェアの更新に失敗しました。

Error 7003:　ホスト <ホスト名> に接続できませんでした。

Error 7004:　サポートされていない In-Sight システムタイプ <モデル> を更新できませんでした。

Error 7005:　ファームウェアをダウンロードするためのローカル FTP サーバとの通信を確立することができませんでした。

Error 7006:　ファームウェアをダウンロードするための、ローカル FTP サーバへのアクセス権が不十分です。

Error 7007:　ファームウェアをダウンロードするためにローカル FTP サーバを起動する際にエラーが発生しました。

Error 7008:　ローカルエミュレータの FTP サーバに接続する際に、エラーが発生しました。

Error 7009:　ファームウェアをアップデートできません。適切なファームウェアのファイルがありません。

Error 7010:　ファイル名 <ファイル名> は長すぎます。

Error 7011:　In-Sight センサ <ホスト名> はオンライン状態のため更新できませんでした。

Error 7012:　In-Sight センサ <モデル> のファームウェアファイル <ファイル名> が存在しません。

Error 7013:　In-Sight センサ <ホスト名> を更新するには、現在のユーザがフルアクセス権限を持っている必要があります。

Error 7016:　このバージョンのファームウェアは、フラッシュメモリのサイズが 32MB 未満の In-Sight ハードウェアにはロードできません。

Error 7302:　ファームウェアの更新に失敗しました。

Error 7700:　入力したアカウントはネットワーク上のどの In-Sight ビジョンセンサに対するフルアクセス権限も持っていません。

Error 7705:　IP アドレス <IP アドレス> は既存の In-Sight ビジョンセンサの IP アドレスと競合しています。

Error 7706:　IP アドレス <IP アドレス> はネットワーク上に既に存在する別のデバイスと競合しています。

Error 7707:　IP アドレス <IP アドレス> は別の In-Sight ビジョンセンサで使用する IP アドレスと競合しています。

Error 7708:　ホスト名 <ホスト名> は既存の In-Sight ビジョンセンサのホスト名と競合しています。

Error 7709:　ホスト名 <ホスト名> は別の In-Sight ビジョンセンサで使用するホスト名と競合しています。

Error 7711:　設定時に I/O エラーが発生しました。

Error 7712:　設定が失敗しました。

Error 7713:　In-Sight ビジョンセンサはオンラインでは設定できません。

Error 7714:　ビジョンセンサはオンラインです。設定されませんでした。

Error 7715:　In-Sight ビジョンセンサをオフラインにすることができませんでした。

Error 7718:　検証が失敗しました。

Error 7719:　設定が中断されました。

Error 7720:　不正なホスト名が検出されました。

Error 7721:　不正な IP アドレスが検出されました。

Error 7722:　無効な DHCP 設定が検出されました。

Error 7723:　無効な DNS サーバが検出されました。

Error 7724:　無効なデフォルトゲートウェイサーバが検出されました。

Error 7725:　無効なサブネットマスクが検出されました。

Error 7726:　無効なドメインが検出されました。

Error 7727:　不正なユーザ名またはパスワードです。

Error 7728:　In-Sight ビジョンセンサに接続できませんでした。

Error 7729:　In-Sight ビジョンセンサは正常に再起動されませんでした。

Error 7731:　このデバイスではネットワーク設定を行えませんでした。

Error 7740:　選択したネットワークインタフェースが接続されていません。

Error 7741:　選択したネットワークインタフェースは現在 DHCP を使用しています。

Error 7742:　選択したネットワークインタフェースは現在 DHCP を使用しており、0.0.0.0 という IP アドレスを持っています。この手順を継続するには、ネットワークインタフェースで固定 IP アドレスを再設定する必要があります。

Error:　参照深度の最大値を超えています。

セル参照チェーンに含まれる参照の最大値は 256 セルで、このエラーは、参照チェーンが 256 を上回ったときに表示されます。このエラーは、インデックス番号を作成するときによく発生します (例: B0=0; B1=B0+1; B2=B1+1; B3=B2+1...B255=B254+1; B256=B255+1; B257=B256+1 → エラーがトリガされます)。このエラーを回避するには、参照チェーンにブレイクをハードコーディングします (例: B0=0; B1=B0+1; B2=B1+1; B3=B2+1...B199=B198+1; B200=200 → ハードコーディングされた上限。この結果、参照深度が 56 残るため、チェーンに追加されるほかのセルはこれを使用できます。その後、チェーンを再開します。B201=B200+1...B255=B254+1; B256=B255+1; B257=B256+1 → エラーはトリガされません)。

Error 3000:　<番号> は正しい値ではありません。

Explorer のホストテーブルのエントリが持つ IP アドレスの最初のオクテットは、1 ～ 223 である必要があります。また、4 番目のオクテットは、1 ～ 254 である必要があります。0.5.2.8 や 10.40.6.255 などの IP アドレスは使用できません。

Error 5000:　OCV セグメントが検出されませんでした。

In-Sight Explorer は、定義されている領域に文字インスタンスを検出できませんでした。[OCV/OCR フォントの登録] ダイアログボックスで極性 ([黒 (白い背景)] または [白 (黒い背景)]) が正しく設定されていることと、必要な文字の周囲をサーチ領域が正しく囲んでいることを確認してください。

Error 5001:　フォントに登録された文字数が最大値に達しています。

TrainFont 関数には最大 64 種類の文字を登録できます。新しいモデルを追加する前に、既存の不要なモデルを削除してください。

Error 5100:　入力した In-Sight ホスト名は既に存在します。

既に存在するホストを In-Sight ホストテーブルに追加しようとしました。ほかの名前を指定してください。

Error 5101:　このホスト名は使用できません。

ホスト名は必須であり、空白にすることはできません。ホストの名前を選択してください。

Error 5102:　このホスト名は使用できません。

無効なホスト名を使用して Explorer のホストテーブルを定義しようとしました。一部のホスト名はシステム専用であり、ホストテーブル名には使用できません。ほかの名前を指定してください。

Error 5106:　この IP アドレスは使用できません。

無効な IP アドレスを持つホストを In-Sight ホストテーブルに追加しようとしました。ほかの IP アドレスを指定してください。

Error 5107:　IP アドレスは既に定義されています。

既存のホストテーブルエントリに登録済みの IP アドレスを持つホストを In-Sight ホストテーブルに追加しようとしました。ほかの IP アドレスを指定してください。

Error 5201:　入力したユーザ名は既に存在します。

In-Sight のユーザ名は一意である必要があります。既存のユーザと同じ名前で新しいユーザを入力しようとすると、Error 5201 が表示されます。

Error 5302:　<ホスト名> へのネイティブモード接続を確立できません。

<ホスト名> のネイティブモードチャネルが In-Sight Explorer への応答を停止しました。センサを再起動して、操作をやり直してください。

Error 5403:　不正なユーザ名またはパスワードです。

別のユーザが既にセンサにログオンしている場合に、有効なユーザ名と間違ったパスワードでセンサにログオンしようとすると、Error 5403 が表示されることがあります。

Error 5404:　<ホスト名> に接続できません。

In-Sight Explorer が <ホスト名> への 1069 番ポート経由の TCP ソケットを作成できない場合、Error 5404 が発生します。

このエラーは通常、ファイアウォールによって TCP ソケットの作成が妨げられたか、Windows が適切なネットワークインタフェースカード (NIC) ではなく別の NIC でアクセスしようとして発生します。

一般に、Windows から <ホスト名> への Telnet または FTP 接続を確立できる場合は、In-Sight Explorer によって、センサへの TCP ソケットを作成することができます。

Windows のコマンドプロンプトで、「telnet aaa.bbb.ccc.ddd 1069」 (aaa.bbb.ccc.ddd は <ホスト名> の IP アドレス) と入力してください。Telnet でそのポートへのソケット接続を作成できない場合は、In-Sight Explorer でも作成することはできません。

LMHOSTS に関する注意:

NetBIOS 名前解決用に Microsoft Windows 内の LMHOSTS ファイルを使用しており、異なるサブネットでの通信用にネットワーク設定を最近変更した場合は、LMHOSTS ファイルを調べて、<ホスト名> が適切な IP アドレスに割り当てられていることを確認してください。

Error 5405:　内部の接続/切断エラーです。

In-Sight Explorer は、ウィンドウのタイトルバーに示されているセンサと通信ができなくなりました。センサが起動されており、ネットワーク上で正常に通信していることを確認してください。必要に応じて、センサの電源を入れ直してください。

Error 5406:　バージョンが一致しませんでした。

異なるバージョンの In-Sight Explorer または PC Host で作成されたジョブファイルをロードすると、バージョン不一致エラーまたは警告が表示されることがあります。ジョブファイルを保存し直すと、バージョン情報が更新されます。

Job ファイルのロード時に、バージョンが一致しませんと表示される。

ロードしようとしているジョブと、ロード先の In-Sight ビジョンシステム/エミュレータとの間でバージョンスタンプが一致しません。このエラーは、ある In-Sight ソフトウェアまたはファームウェアを使用して作成したジョブを、異なるバージョンを使用してロードしようとする場合に発生します。

この警告は、ジョブとビジョンシステムの互換性の問題については表示しません。そのような互換性の問題がある可能性を注意喚起することを意図しています。この警告の後にジョブのロードに失敗したことに関するほかのエラーメッセージが表示されない場合、ビジョンシステム/エミュレータには互換性があるため、これ以上の操作は必要ありません。エラーメッセージが表示される場合は、このジョブファイルを修正して、ビジョンシステム/エミュレータで実行するファームウェアとの完全な互換性を確保する必要があります。

Error 5501:　ジョブをファイル <ファイル名> に保存できません。

Error 5501 は、次のエラーメッセージとともに表示されます。

オンライン中はジョブファイルを保存できません
アクティブな In-Sight センサがオンラインのときに、ジョブファイルを保存しようとしました。[フル] または [プロテクト] アクセス権を持つ場合、センサをオフラインにするか、または [ユーザ] ダイアログで [Allow Online Job Save] チェックボックスをオンにしてから、操作をやり直します。このエラーは、ローカルエミュレータを無効にしようとするときに、[オプション] ダイアログで表示されることがあります。

Error 5507:　ジョブファイル <ファイル名> を開くことができません。

Error 5507 は、次のエラーメッセージとともに表示されます。

アクセスは拒否されました
このメッセージは、ファイル名に中国語または韓国語の文字が含まれ、In-Sight Explorer の [言語] ([システム] → [オプション] → [言語]) が [中国語] または [韓国語] にそれぞれ設定されていない場合に、Windows エクスプローラからスプレッドシートにジョブファイルをドラッグ & ドロップしたときに表示されることがあります。ファイル名に応じた適切な [言語] を In-Sight Explorer に設定してから再起動し、操作をやり直してください。

Error 5700:　数式が複雑すぎます。

1 つの式で使用できる関数、引数、および演算子の最大数は、全体で 254 です。関数の引数がセルの範囲にある場合、その範囲内の各セルは 1 つの引数としてカウントされます。

例えば、Sum(1,2,A3:A6) という数式は、1 つの関数 (Sum) と 6 つの引数 (1、2、A3、A4、A5、A6) によって構成されています。つまり、この数式では、使用可能な 254 の要素のうちの 7 つを使用しています。

Error 5701:　数式が不正です。

Error 5701 は、数式をスプレッドシートのセルまたは数式バーに入力するときに、数式のいずれかの部分に修正の必要がある場合に表示されます。図のように、無効な構文は赤色でハイライトされます。赤色のテキストが表示されずに Error 5701 だけが表示された場合は、関数名が完全に入力されていないか、その関数に必要なすべての引数が提供されていない可能性があります。

ヒント:　Ctrl+Shift+F キーを押すと、数式エディタが表示され、現在の数式を編集できます。

Error 6000:　レイアウトを回復できません。

In-Sight Explorer を起動すると、In-Sight Explorer は、アプリケーションのルートフォルダにある options.xml ファイルからの起動レイアウトのロードを試みます。起動レイアウトで定義されているホストが、ネットワーク上に検出されない場合、このエラーが表示されます。

Error 6000 は、起動レイアウトが保存された後に、問題のセンサまたはエミュレータのホスト名が変更されていると発生します。この問題は、次の手順で [レイアウトを保存する] をもう一度実行すると解決します。

  1. In-Sight Explorer の起動時に自動ログオンさせたい In-Sight センサにログオンします。
  2. 必要に応じて、ビューの表示レイアウト (タイル表示または単一の最大表示) を調整します。
  3. [システム] メニューの [レイアウトを保存する] をクリックします。

Error 6001:　UDP ポート 1069 を開くことができません。

In-Sight Explorer は、UDP ポート 1069 を開いて、TCP/IP ネットワーク上の In-Sight センサと通信します。一部の PC アプリケーション (Microsoft Outlook や Microsoft IIS Admin サービスなど) は、ランダムな UDP ポートを開きます。これによって、In-Sight Explorer の動作が妨げられることがあります。次のエラーメッセージが表示される場合は、

Error 6001:　UDP ポート 1069 を開くことができません。In-Sight Explorer はネットワーク上の In-Sight センサを検出することができません。[OK] をクリックして続行します。

すべてのアプリケーションを閉じて、In-Sight Explorer を再起動してください。ほかのすべてのアプリケーションを閉じてもこのエラーメッセージが表示される場合は、PC を再起動してから In-Sight Explorer を起動してください。In-Sight Explorer をインストールすると、そのほかの Windows アプリケーションがこれらのポートを使用できないようにするためのレジストリエントリが作成されますが、このレジストリエントリは PC を再起動するまで有効になりません。

Error 6003:　エミュレータを起動できませんでした。

アプリケーションの起動時に、[In-Sight ネットワーク] のツリーに表示された In-Sight センサやエミュレータと通信できない場合、このエラーが表示されることがあります。このエラーは、Explorer のホストテーブルで定義されているホストが、ネットワークでアクセスできない場合に起動レイアウトに含まれていると発生します。

<ホスト名> で示されている In-Sight センサまたはエミュレータの電源が入っており、ネットワークで通信できることを確認してください。このセンサが Explorer のホストテーブルのエントリである場合は、ホストテーブルのエントリの IP アドレスが、ネットワーク設定で定義されている <ホスト名> の実際の IP アドレスと一致することを確認してください。

Error 6003 は、Internet Information Services (IIS) Admin サービスが Windows の [コントロールパネル] で起動している場合に表示されることもあります。このサービスが動作している場合は停止して、In-Sight Explorer を再起動してください。IIS Admin サービスは、In-Sight Explorer が起動した「後」に再起動させることができます。

Error 6003 は Error 6001 とともに表示される場合があり、Error 6001 の解決手順で問題が解決することもあります。

Error 6004:　レポートを書き込むことができませんでした。<ファイル名>

In-Sight Explorer は、<ファイル名> をディスクに書き込むことができませんでした。ドライブが存在し、レポートファイルを書き込むための十分な空き容量があることを確認してください。<ファイル名> がネットワークドライブを指している場合は、ドライブが接続されており、そのドライブへの書き込みアクセス権があることを確認してください。

Error 6007:　<ホスト名> からディレクトリを取得できません。

In-Sight Explorer は、<ホスト名> からファイルディレクトリ情報を取得できませんでした。このフォルダに含まれる、ファイルを表示する権限が、ユーザアカウントにない可能性があります。<ファイル名> のローカル FTP ポートが、[オプション] ダイアログで指定されている Explorer の FTP ポートと一致していることを確認してください。

Error 6008:　<ホスト名> へのリンクを確立できませんでした。

In-Sight Explorer は、アクセス先ホストにリンクできませんでした。ホストがダウンしているか、メッセージが表示されたときに、リンクを完了しないことを選択している可能性があります。

Error 6009:　<ホスト名> への FTP 接続を確立できません。

このエラーは、[In-Sight のファイル] 一覧や、ファームウェアの更新またはバックアップなどのファイル操作時に表示されることがあります。Error 6009 では、次のいずれかのエラーメッセージが付加されることがあります。

接続が拒否されました: 接続

In-Sight Explorer は、現在 [In-Sight ネットワーク] で選択されているセンサと通信できません。[表示] メニューで [更新] を選択して、[In-Sight ネットワーク] の表示を更新してください。それでもセンサにアクセスできない場合は、センサの電源を入れ直して、操作をやり直してください。

パスワードが間違っていました。ログインできません。

現在のユーザは、<ホスト名> のファイルを表示するためのアクセス権を持っていません。このセンサに保存されているファイルを表示できるアクセス権を持つ、別のユーザとしてログオンして、操作をやり直してください。

Error 6010:　ファイル <ファイル名> をバックアップできません。

Error 6010 は、次のエラーメッセージとともに表示されます。

ファイルが見つかりません

<ファイル名> は、In-Sight ファイルシステムに対して無効である可能性があります。ファイル名に記号や特殊文字が含まれていないことを確認してください。ファイル名を変更して、操作をやり直してください。

Error 6011:　<ホスト名> のバックアップディレクトリを作成できません。

[システム] メニューで、[オプション] をクリックします。[バックアップディレクトリ] が有効なフォルダ名であり、このフォルダに Windows エクスプローラからアクセスできることを確認してください。

Error 6014:　<ファイル名> をリストアする際にエラーが発生しました。

Error 6014 は、リストア、選択してリストア、またはファームウェアアップデートの操作時に、In-Sight Explorer が <ファイル名> をコピー先センサにコピーできない場合に発生します。次のような状況が考えられます。

In-Sight センサのフラッシュメモリ空き容量が不足しているためにファイルを保存できないとき

このエラーは、In-Sight ファイルシステムに対してファイル名が長すぎたり、ファイルサイズが大きすぎてコピー先センサに保存できなかったりすると、表示されることがあります。次のパスにあるバックアップディレクトリを確認してください。

<ISE dir>\Backups\<ホスト名>

ここで <ISE dir> は、In-Sight Explorer がインストールされているフォルダです。また <ホスト名> は、コピー先 In-Sight センサの名前です。<ファイル名> は最大 251 文字 (拡張子を除く) です。コピー先センサに多数のファイルが保存されている場合は、ほかのファイルを削除して、リストア操作をやり直してください。または、[In-Sight のファイル] ペインや Windows エクスプローラを使用して、ファイルを手動でコピーしてください。

エミュレータ上のファイルをリストアしているとき

エミュレータのリストアを試みているときに、ファイル (image1A.bmp、image1B.bmp、image2A.bmp など) が読み取り専用の場合、このエラーが発生します。読み取り専用属性を削除してから、リストア操作をやり直してください。

Error 6015:　<ホスト名> のバックアップディレクトリが見つかりません。

In-Sight Explorer は、<ホスト名> のバックアップフォルダを確認できませんでした。バックアップフォルダが次のパスに格納されていることを確認してください。

<InSight2>\Backups

ここで <InSight2> は、In-Sight Explorer がインストールされているフォルダです。バックアップはセンサのホスト名と同じ名前のサブフォルダとして格納されます。このフォルダが移動または削除されたり、フォルダの名前が変更されたりしていないか確認してください。バックアップディレクトリの命名方法の詳細については、Error 6046 を参照してください。

Error 6016:　<ファイル名> の削除は許可されていません。

In-Sight ファイルシステム内の一部のファイルはセンサの動作に不可欠であるため、削除できません。次のファイルは、In-Sight センサやエミュレータから削除できません。

  • proc.set
  • image.bmp
  • image.jpg
  • screen.bmp
  • screen.jpg

Error 6017:　<ファイル名> を削除する際にエラーが発生しました。

In-Sight Explorer は、In-Sight システムから <ファイル名> を削除できませんでした。ファイルが読み取り専用でないことを確認してください。

ファイルがリモートで削除された可能性があります。ファイルを選択し、F5 キーを押して、[In-Sight のファイル] ペインを更新してください。

Error 6018:　<ファイル名> をコピーする際にエラーが発生しました。

In-Sight Explorer は、<ファイル名> をコピー先 In-Sight センサにコピーできませんでした。Error 6018 とともに、次のメッセージが表示される場合があります。

転送に失敗しました - メモリが不足しています

ファイルを転送するために必要なフラッシュメモリ空き容量が不足している可能性があります。いくつかのファイルを削除してから、ファイルをコピーし直してください。

書き込みの権限がありません

上書きしようとしたファイルは、読み取り専用でした。アクセス制限を解除して、コピーし直してください。

ファイルが見つかりません

コピーしようとしたファイルが、コピー元センサに存在しませんでした。[In-Sight のファイル] ペインを更新して (F5 キー)、コピー元センサにファイルが存在することを確認してください。

ファイルのドラッグ & ドロップ操作に問題があります

問題 #1:　英語版のオペレーティングシステムで、韓国語または中国語の文字を含むファイル名を Windows エクスプローラから [In-Sight のファイル] ペインにドラッグ & ドロップすると、Error 6018 が発生します。

問題 #2:　韓国語版のオペレーティングシステムでは、Windows エクスプローラから [In-Sight のファイル] ペインにドラッグ & ドロップできるのは韓国語または英語の文字を含むファイル名だけです。そのほかの文字では Error 6018 が発生します。

問題 #3:　中国語版のオペレーティングシステムでは、Windows エクスプローラから [In-Sight のファイル] ペインにドラッグ & ドロップできるのは中国語または英語の文字を含むファイル名だけです。そのほかの文字では Error 6018 が発生します。

回避策:

  • [ジョブを開く] ダイアログ ([ファイル] → [ジョブを開く]) を使用して、ファイルをロードします。
  • ファイル名には英語の文字を使用します。

Error 6019:　<ファイル名> のコピーは許可されていません。

一部のファイル (proc.set など) は非常に重要なネットワーク設定を含むため、別のセンサに単純にコピーすることはできません。

Error 6029:　<センサ> へのネイティブモード接続を確立できません。

<センサ> 上のユーザ名に対応するパスワードとは異なるパスワードでログオンしていると、バックアップまたはファームウェアアップデートの操作時にこのエラーが発生することがあります。例えば、ユーザ名 admin、パスワード apple でログオンしているのに、In-Sight センサの admin のパスワードが grape の場合、Error 6029 が表示されることがあります。適切なパスワードでログオンして、操作をやり直してください。

エラーメッセージ「ファームウェアは正常にアップデートされましたが、リストア時にエラーが発生しました。Error 6029:　<センサ> へのネイティブモード接続を確立できません。」が表示された場合は、Restore を使用してセンサのファイルをリストアする必要があります。

Error 6035:　ホスト名が不正です。

Error 6035 は、新しいホストを Explorer のホストテーブルに追加する際に、[ホスト名] フィールドが空白のままになっていると表示されます。ホスト名を入力して、[OK] をクリックしてください。

Error 6036:　このホスト名は使用できません。

Error 6036 は、Explorer のホストテーブルのエントリにあるホスト名を PC と同じ名前に設定しようとすると表示されます。ほかのホスト名を指定して、[OK] をクリックしてください。

Error 6037:　ホスト名は既に定義されています。

Explorer のホストテーブルに追加しようとしたホスト名は、既にホストテーブルに存在します。ほかのホスト名を指定して、[OK] をクリックしてください。

Error 6038: IP アドレスが不正です。

一部の IP アドレス (0.0.0.0 など) は、Explorer のホストテーブルのエントリには使用できません。有効な IP アドレスを指定してください。

Error 6039:　この IP アドレスは使用できません。

Error 6039 は、新しいホストを Explorer のホストテーブルに追加する際に、[IP アドレス] フィールドが空白のままになっていると表示されます。一部の IP アドレス (ルックバックアドレスの 127.x.x.x など) は、Explorer のホストテーブルのエントリには使用できません。有効な IP アドレスを指定してください。

Error 6040:　IP アドレスは既に定義されています。

1 つの IP アドレスは、Explorer のホストテーブルにある 1 つのホストテーブルエントリにのみ、対応することができます。同じ IP アドレスで 2 つ目のセンサを追加しようとすると、Error 6040 が表示されます。

Error 6041:　セキュリティキーが無効です。

[オプション] ダイアログに入力したオフラインプログラミングキーは無効です。弊社の販売代理店または弊社テクニカルサポートに連絡して、有効なキーを入手してください。

Error 6042:　レジストリを書き込む際にエラーが発生しました。

Error 6042 は、管理者権限を持たないユーザとして Windows にログオンしている場合に、オフラインプログラミングキーを入力したときに表示されることがあります。Windows からログオフして、管理者として PC にログオンし直してください。その後、操作をやり直してください。

Error 6044:　Options.xml ファイルの書き出しに失敗しました。

In-Sight Explorer は、オプションファイルを保存できませんでした。options.xml (In-Sight Explorer のインストールフォルダにあります) が読み取り専用になっていないことと、別のアプリケーションで開かれていないことを確認してください。

Error 6046:　<ホスト名> のバックアップディレクトリを作成できません。

In-Sight Explorer では、センサ名ごとに最大 256 のバックアップを作成することができます。これ以上のバックアップを作成しようとすると、Error 6046 が表示されることがあります。新しいインクリメンタルバックアップ (sensor.002 や sensor.003 など) は、フォルダ内で一番大きな番号が付けられているバックアップに基づいて作成されます。

例えば、IS3K という名前の In-Sight センサのバックアップを既に 100 個作成している場合、バックアップディレクトリには IS3K、IS3K.001、IS3K.002、...、IS3K.099 という名前のフォルダが作成されています。IS3K.099 が存在する限り、次に作成されるバックアップは、(ほかのすべてのバックアップが削除されていても) IS3K.100 に格納されます。

Error 6046 を解決するには、Windows エクスプローラでバックアップディレクトリを参照して、<ホスト名> の大きな番号が付いたバックアップを削除してください。または、バックアップを別のフォルダに移動してください。ただし、In-Sight Explorer がバックアップをリストアするには、バックアップしたファイルがバックアップディレクトリに存在する必要があるので注意してください。

Error 6047:　In-Sight センサがネットワーク上で検出されず、オフラインプログラミングライセンスが入力されていなかったため、エミュレータは起動しませんでした。

Error 6047 は、オフラインプログラミングキーが入力されていない状態で、かつ、In-Sight センサがネットワーク上で検出されなかった場合に表示されます。このエラーは、アクティブなネットワーク接続がない場合に発生することがあります。ネットワーク上にセンサが検出されない場合、このキーが入力されていないとローカルエミュレータは起動しません。

Error 6304:　ディレクトリ <ホスト名> を開くことができません。

In-Sight Explorer は、<ホスト名> でバックアップを実行できませんでした。[オプション] ダイアログで適切なバックアップディレクトリが定義されていることと、そのディレクトリが読み取り専用になっていないことを確認してください。

Error 6308:　<ホスト名> のバックアップディレクトリが見つかりません。

<ホスト名> のリストア操作を実行しようとしましたが、In-Sight Explorer は、このセンサのバックアップファイルを確認できませんでした。[オプション] ダイアログで定義されているバックアップディレクトリが適切であることと、<ホスト名> のバックアップが保存されているフォルダを適切に指定していることを確認してください。

Error 6421:　<ホスト名> に接続できません。

このエラーは、バックアップからセンサをリストアしようとすると表示されることがあります。このセンサにアクセスする権限が、ユーザアカウントにない可能性があります。また、In-Sight センサの電源が入っていることと、ネットワークケーブルが適切に接続されていることを確認してください。

Error 6441:　<ホスト名> のバックアップディレクトリが見つかりません。

バックアップされていないセンサをリストアしようとしたか、PC からそのセンサのバックアップフォルダにアクセスできませんでした。<ホスト名> でのバックアップ操作が既に実行されていることと、[オプション] ダイアログで適切なバックアップディレクトリが定義されていることを確認してください。

Error 7002:　1 つまたは複数の In-Sight センサでファームウェアの更新に失敗しました。

In-Sight Explorer は、少なくとも 1 つの In-Sight センサでファームウェアの更新手順を正常に完了できませんでした。[ファームウェアアップデート] ダイアログの結果を見て、エラー状態を解決してください。ファームウェアの更新をやり直してください。

Error 7003:　ホスト <ホスト名> に接続できませんでした。

In-Sight Explorer は、<ホスト名> への接続を確立できませんでした。Error 7003 は、次のエラーメッセージとともに表示されることがあります。

<ホスト名> からのユーザ <ユーザ名> は既にこのシステムにリモート接続しています。

操作を完了するには、[はい] をクリックして、ログオンからやり直してください。

Error 7006:　ファームウェアをダウンロードするための、ローカル FTP サーバへのアクセス権が不十分です。

ファームウェアをダウンロードしようとしましたが、現在のユーザレベルの権限では、この操作が許可されませんでした。ローカル In-Sight エミュレータへのフルアクセス権限を持つユーザとしてログインしてから、ファームウェアのダウンロードを試みてください。また、サードパーティの FTP サーバ (例: IIS または FileZilla) の場合、このサーバがファームウェアの更新に干渉する場合があります。このシナリオでは、サードパーティの FTP サーバをすべて無効化、またはアンインストールし、In-Sight Explorer を再起動して、ファームウェアの更新を再試行します。

Error 7008:　ローカルエミュレータの FTP サーバに接続する際に、エラーが発生しました。

In-Sight Explorer は、エミュレータがシャットダウンされた場合、または TCP ポート 21 が別のアプリケーション (FTP サーバなど) によって使用されている場合、一部のファイル操作 (ファームウェアアップデートなど) を実行できません。この問題を解決するには、次の手順を実行してください。

  1. 保存していないすべてのジョブを保存します。
  2. In-Sight Explorer を終了します。
  3. サードパーティの FTP サーバやほかのアプリケーションが TCP ポート 21 にバインドされていないことを確認します。この手順を実行するには、Windows の [コントロールパネル] でサービス (IIS Admin や Microsoft FTP サービスなど) を無効にする必要があります。
  4. In-Sight Explorer を再起動します。

また、In-Sight センサのファームウェアの更新を完了するには、ローカルエミュレータへのフルアクセス権限を持つユーザとしてログオンする必要があることにも注意してください。

Error 7009:　ファームウェアをアップデートできません。適切なファームウェアのファイルがありません。

In-Sight Explorer ファームウェアの更新を完了するためのファームウェアファイルを確認できませんでした。トラブルシューティング情報については、Error 7012 を参照してください。

Error 7010:　ファイル名 <ファイル名> は長すぎます。

In-Sight ファイルシステムでは、ファイル名は最大 251 文字 (拡張子の .JOB を除く) です。ファイル名を変更して、操作をやり直してください。

Error 7011:　In-Sight センサ <ホスト名> はオンライン状態のため更新できませんでした。

In-Sight センサがオフラインになっていないと、そのセンサのファームウェアを更新できません。センサをオフラインにするには

  1. センサにログオンします。
  2. [センサ] メニューで、[オンライン] が選択されていないことを確認します。

ファームウェアの更新をもう一度実行してください。

Error 7012:　In-Sight センサ <センサ名> のファームウェアファイル <ファイル名> が存在しません。

In-Sight Explorer は、<センサ名> のファームウェアの更新ファイルを確認できませんでした。ファームウェア更新ファイルは、<ISE path>\firmware にあります。ここで <ISE path> は、In-Sight Explorer をインストールしたフォルダです。In-Sight Explorer を再インストールして、ファームウェアファイルを作成し直してください。

注意:　In-Sight Explorer のリリース 2.53 以降には、In-Sight 3000 センサのファームウェアは含まれていません。In-Sight 3000 のファームウェアをバージョン 2.53 以上に更新しようとすると、このエラーが表示されます。

Error 7013:　In-Sight センサ <ホスト名> を更新するには、現在のユーザがフルアクセス権限を持っている必要があります。

In-Sight センサのファームウェアを更新するには、そのセンサへのフルアクセス権限を持つユーザとしてログオンする必要があります。

Error 7016:　このバージョンのファームウェアは、フラッシュメモリのサイズが 32MB 未満の In-Sight ハードウェアにはロードできません。

In-Sight 1000 シリーズ、3000、4000 シリーズセンサ、In-Sight 3400 ビジョンセンサ、In-Sight 5000 ビジョンセンサ、および 1700/1701 ウェーハリーダのサポートは終了しました。In-Sight Explorer 4.3.0 以降では、フラッシュメモリのサイズが 32MB 未満のビジョンシステムはサポートされていません。

Error 7302:　ファームウェアの更新に失敗しました。

このアクションをサポートしていないセンサのファームウェアを更新しようとした可能性があります。ファームウェアの更新をサポートしていないセンサのファームウェアを更新しようとした可能性があります。

Error 7708:　ホスト名 <ホスト名> は既存の In-Sight ビジョンセンサのホスト名と競合しています。

既に存在するホストを Explorer のホストテーブルに追加しようとしました。ほかの名前を指定してください。

Error 7712:　設定が失敗しました。

[センサ/デバイスをネットワークに追加] ダイアログは、In-Sight センサを適切に設定できませんでした。詳細なトラブルシューティング情報については、ダイアログで Error 7712 の後に表示されるエラーメッセージを参照してください。

Error 7718:　検証が失敗しました。

[センサ/デバイスをネットワークに追加] ダイアログを使用して設定しようとしたネットワーク設定は適用できませんでした。固有のトラブルシューティング情報については、ダイアログで Error 7718 の後に表示されるエラーメッセージを参照してください。

Error 7719:　設定が中断されました。

[センサ/デバイスをネットワークに追加] ダイアログで、1 つまたは複数の In-Sight センサの設定を終了することを選択しました。

Error 7720:　不正なホスト名が検出されました。

Error 7720 は、新しいホストを Explorer のホストテーブルに追加する際に、[ホスト名] フィールドが空白のままになっていると表示されます。ホスト名を入力して、[OK] をクリックしてください。

Error 7721:　不正な IP アドレスが検出されました。

指定した IP アドレスを In-Sight センサに割り当てることができませんでした。[センサ/デバイスをネットワークに追加] ダイアログでこのエラーメッセージが表示された場合は、In-Sight センサに IP Address Lock が設定されていないか確認してください。IP Address Lock が設定されていると、センサの IP アドレスは変更できません。Telnet セッションでセンサに SL0 を発行すると、IP Address Lock が解除されます(注意: この設定を変更するには、フルアクセス権限を持つユーザとしてログオンする必要があります)。

Error 7728:　In-Sight ビジョンセンサに接続できませんでした。

[センサ/デバイスをネットワークに追加] ダイアログは、In-Sight センサとの通信を確立できませんでした。センサの電源が入っていることと、ネットワーク接続がアクティブであることを確認してください。詳細なトラブルシューティングのヒントについては、Error 5404 を参照してください。

Error 7731:　このデバイスではネットワーク設定を行えませんでした。

詳細なトラブルシューティング情報については、ダイアログで Error 7731 の後に表示される注意を参照してください。

また、このデバイスが PC と同じ物理サブネットに接続され、電源が入っていることも確認します。デバイスへのイーサネットケーブル接続もすべて確認してください。

それでも問題が解決されない場合は、デバイスを PC に直接接続し、デバイスの電源を一度切ってから、再び入れてください。


用語集

In-Sight Explorer リファレンス

次の表では、このヘルプで使用されている専門用語が定義されています。

用語 | 定義

アクティブセル

スプレッドシート内で現在ハイライトされているセルです。図を参照してください。

アクティブな In-Sight ビジョンシステム

現在ジョブを編集中の In-Sight ビジョンシステムです。このビジョンシステムはスプレッドシート内に「フォーカス」を持っています。フォーカスは通常、アクティブセルによって示されます。

アクティブなジョブ

In-Sight ビジョンシステムのメモリに現在ロードされているジョブファイルです。

ブロブ

黒の背景上の白いしみ、白いコンベヤベルト上の黒いネジなど、暗い色または明るい色の連続したピクセルのグループです。すぐに見つかる特徴の 1 つでもあり、ブロブの特徴の形状とサイズはばらつきがありますが、角度方向の値は限定されます。

セルデータファイル

セルデータファイル (*.CXD) には、スプレッドシートのセルデータが格納されます。スプレッドシートのセルまたはセルのグループは、.CXD ファイルにエクスポートされます。.CXD ファイルは次のいずれかの場所に格納することができます。その場所は、FTP 経由でセントラルサーバ、ローカルやリモートの In-Sight ビジョンシステムまたはエミュレータ、ローカルやリモートの In-Sight ビジョンシステムまたはエミュレータの [RAMDisk] フォルダ、またはローカル PC 上の [スニペット] フォルダです。なお、格納されているセルデータは、前述の任意の場所からスプレッドシートへインポートすることができます。

.CXD ファイルのエクスポートおよびインポートには、いくつかの方法があります。.CXD ファイルは、[Export Cells] ダイアログ、ExportData 関数または [スニペット] ダイアログを使用してエクスポートすることができます。また、.CXD ファイルは、[セルのインポート] ダイアログ、ImportData 関数、[スニペット] ダイアログ、またはパレットからドラッグアンドドロップしたスニペットを使用してインポートすることができます。

文字インスタンス (OCV/OCR)

OCV/OCR モデルを作成するために、入力に使用されるグレースケールパターンです。

文字モデル (OCV/OCR)

フォントのコンポジット文字で、その文字のすべての登録インスタンスを考慮に入れることによって形成されます。

コード

1D バーコード、2D データマトリックスコード、および英数字データ文字列を含むシンボルです。

列

(列)

In-Sight ビジョンシステムピクセル座標系の X 方向を定義します。

Closed 例

EasyBuilder タグ

EasyBuilder ビューの情報を提供します。詳細については、EasyBuilder ジョブおよびスプレッドシートの項目を参照してください。

EasyView タグ

EasyView 作成に使用されるデータを含むセルの表示に使用するシンボリックタグです。VisionView に表示します。

エッジ

水平方向、垂直方向、円形、またはカーブしている明るいピクセルと暗いピクセルの間の変化領域です。エッジは、部品の端、回路基板上のピン、ネジのネジ山、ビンの底、バネのコイルなどに相当します。これらの種類の特徴は、一般にすばやく簡単に検出できます。

Explorer ホストテーブル

Explorer ホストテーブルによって、In-Sight Explorer は、異なるサブネットの In-Sight ビジョンシステムと通信できます。このホストテーブルで定義されているビジョンシステムは、[In-Sight ネットワーク]、1 つまたは複数の In-Sight ビジョンシステムでファイル操作を実行するダイアログ ([保存]/[開く]、[スニペット]、[セルのインポート]/[セルのエクスポート]、[バックアップ]、[リストア]、[クローン作成]、[ファームウェアアップデート] など) に表示されます。

注意: In-Sight ホストテーブルに含まれるいずれかのビジョンシステムが DHCP を使用するように設定されている場合、ビジョンシステムの IP アドレスが変更されると、ホストテーブルエントリが無効になることがあります。ホストテーブルで定義されるどのビジョンシステムについても、固定 IP アドレスを設定することを強く推奨します。

特徴

(対象の特徴)

マシンビジョンでは、特徴とは「画像内の対象物」を指し、画像内で検出されるさまざまな種類の特徴に対してビジョン検査が設計されます。

ファームウェア

ファームウェアは、物理的な In-Sight ビジョンシステム内で動作するソフトウェアコードです。適切なファームウェア更新ファイル (*.UPD) を In-Sight エミュレータからロードすることによって、ビジョンシステムは、最新バージョンのファームウェアに更新できます。ファームウェアの更新手順を参照してください。

フィクスチャ

フィクスチャは、ビジョンツールの出力で、他のビジョンツールの基準点となり、行、列、および角度の座標値を備えます。フィクスチャを選択する場合、画像内の部品を見て、どの種類のフィクスチャが最もすばやく簡単に認識できるかを判断し、そのフィクスチャが部品の各画像に存在することを確認します。その後、フィクスチャの種類に基づき、適切なビジョンツールを選択して特徴を定義します。検査時に特徴がフィクスチャとして使用されると、In-Sight ビジョンシステムは最初にその特徴を検索します。特徴が検出されると、その特徴の位置は他のビジョンツールの基準点となります。他のビジョンツールは、フィクスチャされた特徴の位置に基づいて検査を実行します。

注意:
  • 対象部分がビジョンシステムから見てどの画像でも正確に同じ位置に存在する場合、フィクスチャは不要です。
  • 1 つ以上のフィクスチャを作成しジョブの中で使用できます。フィクスチャは相互にリンクできます。

HOSTS.NET

ビジョンシステムの In-Sight ホストテーブルエントリを含む仮想ファイルです。HOSTS.NET は、システムファイルであり、削除することはできません。

画像

(画像ファイル)

In-Sight ビジョンシステムによって取り込んだ画像は、.BMP または .JPG ファイルとして PC に保存できます。これらのファイルは、その後、ジョブテストで使用するために、In-Sight ビジョンシステムまたはエミュレータによってロードされます。In-Sight ビジョンシステムは、画像 (image.bmp) を 1 つしか取得できません。画像のコピーを永続的に保存する場合は、画像を PC のハードディスクに保存する必要があります。画像ファイルは、[In-Sight ネットワーク] または Microsoft Windows エクスプローラからドラッグアンドドロップ操作によって開くことができます。

IMAGE.BMP

In-Sight ビジョンシステムに表示されるアクティブな画像データを含む仮想ファイルです。IMAGE.BMP は、システムファイルであり、削除できないことに注意してください。

IMAGE.JPG

In-Sight ビジョンシステムに表示されるアクティブな画像データを含む仮想ファイルです。IMAGE.BMP と同じです。IMAGE.JPG は、システムファイルであり、削除できないことに注意してください。

In-Sight エミュレータ

(エミュレータ)

(In-Sight オフラインエミュレータ)

In-Sight エミュレータは、[オプション] ダイアログで選択されているエミュレーションモードに応じて、さまざまなタイプの In-Sight ビジョンシステムの動作をエミュレートできるオフラインプログラミングソフトウェアです。エミュレータには、In-Sight ビジョンシステムと同じように、[In-Sight ネットワーク] からアクセスできます。

In-Sight ホストテーブル

In-Sight ホストテーブルには、リモートホストの固定 IP アドレスが定義されています。それぞれ異なるサブネットにある複数の In-Sight ビジョンシステムが互いに通信する必要がある場合、この定義は必須です。In-Sight ビジョンシステムは、TCPDevice、WriteImageFTP、WriteSMTP などの関数で通信する際にホストテーブルを使用します。

注意: In-Sight ホストテーブルに含まれるいずれかのビジョンシステムが DHCP を使用するように設定されている場合、ビジョンシステムの IP アドレスが変更されると、ホストテーブルエントリが無効になることがあります。ホストテーブルで定義されるどのビジョンシステムについても、固定 IP アドレスを設定することを強く推奨します。

In-Sight ビジョンシステム

(In-Sight センサ)

(In-Sight ビジョンセンサ)

In-Sight ビジョンシステムは、画像を取り込むためのデジタルグレースケールまたはカラーカメラとそれらをデジタル化する CCD チップ、プログラムされた画像解析を実行する PC プロセッサ、および結果をレポートしたり、ロボットや PLC などの他のデバイスとの間でメッセージを送受信したりする入出力ハードウェアと通信リンクから構成されます。Cognex 製ビジョンシステム全製品の一覧については、弊社のウェブサイト http://www.cognex.com/ProductsServices/VisionSystems/ を参照してください。

ジョブ

(ジョブファイル)

ジョブファイル (*.JOB) は、マシンビジョンの特定のタスクを実行するように設定されています。In-Sight ビジョンシステムでは、ジョブファイルの容量は、使用可能なフラッシュメモリの容量に制限されます。In-Sight エミュレータ (PC 上で動作) のファイル容量は、PC のハードディスクのサイズに基づきます。ジョブファイルは、In-Sight FTP サーバだけでなく、非 In-Sight FTP サーバからでも In-Sight ビジョンシステムにロードできます。アクティブなジョブファイルの名前は、そのファイルが過去に 1 回でも保存されていれば、タイトルバーに表示されます。ジョブファイルは、[In-Sight のファイル] 一覧または Microsoft Windows エクスプローラから、ドラッグアンドドロップ操作によって開くこともできます。

OCR

Optical Character Recognition (光学文字認識) の略で、未知の文字を読み取り、その結果を文字モデルとパターンマッチングして文字を「認識」し、認識した文字を文字列として転送するプロセスです。

「文字照合/認識関数の概要」を参照してください。

OCV

Optical Character Verification (光学文字照合) の略で、既知の文字を読み取り、その結果を文字モデルとパターンマッチングして、予想される文字列が存在したかどうかを「照合」するプロセスです。

「文字照合/認識関数の概要」を参照してください。

オフラインプログラミングキー

In-Sight Explorer がネットワークで In-Sight ビジョンシステムを検出しない場合、In-Sight ジョブを In-Sight のオフラインのエミュレータ環境でローカルに設定するために、[オプション] ダイアログで オフラインプログラミングキー を入力する必要があります。

詳細については、「ソフトウェアの登録」を参照してください。

OPC タグ

OPC チャネルを使用して通信するデータを含むセルを表示するのに使用されるシンボリックタグです。

パターン

パターンには、反復する形状の単純なグループから、ロゴやラベルなどの複雑な構成までさまざまなものが含まれます。パターンは、最も信頼性の高い種類の特徴であり、最大範囲の位置の回転、移動、スケールのばらつきが許容されますが、一般に検査には最も長い時間がかかります。

PC Host

In-Sight PC Host は、以前から使用されている In-Sight ビジョンシステム用プログラミングソフトウェアです。In-Sight Explorer は、PC Host の機能をエミュレータとして備えており、In-Sight ジョブのオフラインプログラミングおよびテストを実行できます。

proc.set

In-Sight ビジョンシステムの設定は、proc.set ファイルに保存されます。このファイルには、次の情報が含まれています。ネットワーク構成、シリアルポート設定、ユーザリストデータ、In-Sight ホストテーブルエントリ、スタートアップオプション、および日付/時刻の設定ダイアログ

注意: proc.set は、システムファイルであり、削除することはできません。

ROI

Region of Interest (対象領域) の略です。検査する画像の領域を定義します。

行

In-Sight ビジョンシステムピクセル座標系の Y 方向を定義します。

Closed 例

シンボリックタグ

位置決めまたは検査ツール結果、ジョブデータおよびパラメータ制御 (例: Blobs_1.Pass_Count など) といった、EasyBuilder ビューやそのほかのデバイスとの通信に使用されるデータを含むセルの表示に使用します。また、OPC チャネルから In-Sight OPC サーバに転送して、監査メッセージサーバに監査メッセージを生成するか、または EasyView の作成に使用できるデータを含むセルの表示にも使用します。これにより、Cognex VisionView デバイスでのデータの表示方法をカスタマイズし、データがオペレータによって編集可能かどうかを決定することができます。

テキスト

英数字 (ABC、123 など) テキスト文字列です。
VisionView アプリケーション | Cognex VisionView® アプリケーションソフトウェアは VisionView オペレータインタフェースパネル、VisionView VGA、PC または Windows CE ベースの HMI パネルに導入することができます。VisionView アプリケーションソフトウェアを使用して複数のビジョンシステムに接続し、工場フロアのオペレータにビジョンシステムが取り込んだ画像や、重要な合格/不合格データを表示することができます。


テクニカルサポート

In-Sight Explorer リファレンス

参照ドキュメンテーション

インターネットリソース

電話によるサポート

修理および返品

参照ドキュメンテーション

このヘルプファイルに加え、次の製品ドキュメントリソースを参照すると In-Sight ビジョンシステム、およびそのインタフェースについてさらに深い知識を習得できます。

  • 『In-Sight 5000 シリーズビジョンシステム インストールガイド』、Cognex P/N 597-0027-xx
  • 『In-Sight Micro シリーズビジョンシステム インストールガイド』、Cognex P/N 597-0109-xx
  • 『In-Sight 7000 シリーズビジョンシステム インストールガイド』、Cognex P/N 597-0138-xx
  • 『In-Sight CIO-MICRO および CIO-MICRO-CC I/O モジュール インストールガイド』、Cognex P/N 597-0114-xx
  • 『Model 1460 I/O 拡張モジュールのインストールガイドとリファレンス』、Cognex P/N 597-0029-xx
  • 『Model 1450 I/O 拡張モジュールのインストールガイドとリファレンス』、Cognex P/N 597-0013-xx
  • 『Model 1400 I/O 拡張モジュールのインストールガイドとリファレンス』、Cognex P/N 597-0104-xx
  • In-Sight コンピュータベースドチュートリアル

インターネットリソース

In-Sight サポート (http://www.cognex.com/support/InSight) では、ユーザの皆様の In-Sight に関する問題にお答えしております。サポートセンターでは、次のリソースを提供しております。

  • In-Sight ソフトウェア、最新版ドキュメント、および機構図面のダウンロード
  • ナレッジベース/FAQ のサイト
  • In-Sight SmartList
  • オンライン相談
  • ライブクラス、オンラインクラス、ビデオトレーニング
  • 部品やアクセサリのオンラインカタログ
  • In-Sight Explorer Emulator キー
  • ファームウェアの更新
  • 事例提示

電話によるサポート

製品ドキュメントやオンラインサポートでも In-Sight に関する問題が解決できない場合は、弊社テクニカルサポートに電話でご相談ください。

  • 米国:　+1-508-650-4100
  • 日本:　+81-3-4579-5835
  • フランス:　+33 (0)1 4777 1550
  • イギリス:　+44 (0)1908 206000
  • ドイツ:　+49 (0) 7 21 / 66 39 - 0
  • イタリア:　+39 (0)267471200

修理および返品

電子メール: ckk_support@cognex.com


ソフトウェアの登録

In-Sight Explorer リファレンス

オフラインプログラミングキー

In-Sight Explorer がネットワークで In-Sight ビジョンシステムを検出しない場合、In-Sight ジョブを In-Sight のオフラインのエミュレータ環境でローカルに設定するために、[オプション] ダイアログで オフラインプログラミングキー を入力する必要があります。

注意:
  • いずれかのバージョンの PC Host 用のオフラインプログラミングラインセンスを購入済みの場合は、これらのライセンスを、In-Sight Explorer 用の有効なオフラインプログラミングキーとして使用できます。
  • オフラインプログラミングキーをまだ入力していない場合に、In-Sight Explorer を起動すると、Error 6001 または Error 6047 が表示されることがあります。


法的通知

In-Sight Explorer リファレンス

著作権

本ドキュメントで説明しているソフトウェアは、ライセンスの下で作成されており、本ページに記されている著作権を明記したライセンスに基づいた許可なしに、使用したり複写したりすることはできません。ライセンスの保持者以外にソフトウェア、本ドキュメント、あるいはそれらのコピーを提供することはできません。本ソフトウェアの権利と所有権は Cognex Corporation あるいはそのライセンス保持者にあります。Cognex Corporation は、同社が提供していない装置における同社製ソフトウェアの使用または信頼性についていかなる責任も負いません。Cognex Corporation は、本ドキュメントで記述されているソフトウェアの内容、商品価値、または特定の使用目的に対する責任に関して、明示または黙示にかかわらずいかなる保証も行いません。

本ドキュメントで説明している Cognex 製ソフトウェアのソースプログラムのコピーもすべて、Cognex Corporation のみの所有物です。ソースプログラムは、セキュリティ保護されたバージョンコントロールシステムに保存され、このソフトウェアの開発に直接関与する Cognex の技術担当者だけにアクセスが制限されています。ソースプログラムが第三者と共有されたことはありません。

本ドキュメントの内容は、予告なしに変更することがあります。内容の変更について、Cognex Corporation はいかなる責任も負いません。本ドキュメントあるいは関連ソフトウェアにおける誤りについて、Cognex Corporation はいかなる責任も負いません。

本ドキュメントの内容の一部、または全部を Cognex Corporation の書面による許可なく複製、ほかのメディアに送信すること、およびほかの言語に翻訳することを禁じます。

Copyright © 1999-2013

Cognex Corporation

All Rights Reserved

特許

本製品は、次に示す複数の米国および他国の特許によって保護されています。それ以降に取得された関連特許は、http://www.cognex.com/patents に記載されています。

5481712, 5742037, 5825913, 5845007, 5861910, 5909504, 5943441, 5949905, 5960125, 5978080, 5978081, 5995648, 6005978, 6137893, 6141033, 6154567, 6215915, 6236769, 6282328, 6301396, 6327393, 6381366, 6381375, 6408109, 6421458, 6457032, 6459820, 6490600, 6658145, 6687402, 6690842, 6771808, 6804416, 6836567, 6850646, 6856698, 6859907, 6931602, 6941026, 6959112, 6963338, 6975764, 6985625, 6993192, 7006712, 7016539, 7043081, 7058225, 7065262, 7069499, 7088862, 7107519, 7164796, 7175090, 7181066, 7251366, 7380016, 7412106, 7427028, 7636449, 5751853 JP 3927239

商標

下記は Cognex Corporation の登録商標 (®) です。

  • Cognex
  • Cognex Vision for Industry
  • In-Sight
  • EasyBuilder
  • VisionView
  • The In-Sight "crosshair" logo
  • OCRMax
  • PatFind
  • PatMax
  • PatQuick

下記は Cognex Corporation の商標 (™) です。

  • The Cognex logo
  • TestRun

そのほかの製品名および企業名は、各所有者に帰属する商標です。


Cognex Connect

In-Sight の通信環境

Cognex Connect™ を使用すると、In-Sight ビジョンシステムを既存の FA システムに統合できます。Cognex Connect™ には、ビジョンシステムで使用可能な通信機能が用意されています。 PLC またはロボットコントローラに In-Sight を直接接続している場合やネットワークに接続している PC または HMI から複数の In-Sight ビジョンシステムを管理している場合、Cognex Connect は、In-Sight と工場フロアに置かれているすべての機器の間に、シームレスで信頼性の高い通信リンクを保ちます。設定インタフェースを備えているため、ネットワークに接続している PC から複数のビジョンシステムを制御することができます。また、ユーザは、企業内に設置してあるファイルサーバにデータおよび画像を転送し、ユーザ独自のオペレーティングインターフェースを作成することによりデータや画像を表示することができます。

Cognex Connectは、開発環境である EasyBuilder もしくはスプレッドシートのツールとして、下記の制御機器および通信機器機器用としてサポートしています。

· PLC | Cognex Connect は、オープンスタンダードな産業用 Ethernet 通信プロトコル (SLMP、EtherNet/IP、PROFINET など) をサポートしています。そのため、さまざまな PLC (三菱電機、Rockwell、Siemens など) に問題なく接続することができます。
· PC または HMI | Cognex Connect は、OPC サーバ、Active X ディスプレイコントロール、および標準の TCP/IPEthernet 通信プロトコルをサポートしています。
· ロボット | 設定済みドライバ、汎用のテンプレート、およびサンプルコードは、ABB、Denso、Fanuc、Kawasaki、Kuka、Motoman、および Staubli で製造されたロボットで使用できます。三菱電機、Adept、Epson、およびほかの製造元のロボットとの通信もサポートしています。
· フィールドバス | Cognex Connect は、CC-Link、DeviceNet、PROFIBUS などの標準をすべてサポートしています。

すべての In-Sight モデルで、一連の Cognex Connect 通信機能がサポートされています。Cognex Connect の詳細については、www.cognex.com/connect を参照してください。


ロボット通信 - Kuka ロボットコントローラ - シリアル

In-Sight 通信リファレンス

Kuka ロボットコントローラは、複雑ですが強力なエラーチェックプロトコルを使用して、RS-232 シリアルポート経由でほかのデバイスと通信します。Kuka シリアル通信用に設定すると、In-Sight ビジョンシステムはこのプロトコルを認識して、Kuka コントローラから受信したコマンドに応答できるようになります。

Kuka モードは、In-Sight のネイティブモード通信の拡張です。Kuka モードは ネイティブモードに基づくので、In-Sight のジョブをネイティブモードで開発してテストした後、実際のロボットコントローラが In-Sight ビジョンシステムに接続されている場合のみ Kuka モードに切り替えることができます。ジョブにほかの変更を加える必要はありません。

注意:
  • In-Sight ビジョンシステムと通信するには、Kuka ロボットは P3964R モードである必要があります。また、後述のように、ビジョンシステムの [シリアルポートの設定] で、[モード] として Kuka が選択されている必要があります。
  • In-Sight ビジョンシステムは、Kuka のデフォルトのプロトコル設定 (すなわち、トランザクションにおいて、Kuka ロボットの優先度が高く、In-Sight ビジョンシステムの優先度が低い設定) を使用するように設定されています。
  • In-Sight 7000 シリーズビジョンシステムへのシリアル通信を有効にするには、電源および I/O ブレークアウトケーブルと、CIO-MICRO または CIO-MICRO-CC I/O モジュールを使用する 2 つのオプションがあります。電源および I/O ブレークアウトケーブル (I/O モジュールへの接続はありません) に接続する場合、ビジョンシステムでは、1 つのディスクリート入力ラインと 1 つのディスクリート出力を [シリアル受信] および [シリアル送信] としてそれぞれ接続することができます。詳細については、「シリアル通信の有効化 - In-Sight 7000 シリーズ」を参照してください。
  • In-Sight Micro ビジョンシステムは、CIO-MICRO または CIO-MICRO-CC I/O モジュールに接続している場合のみ、シリアル通信をサポートします。
  • CIO-WENET イーサネット I/O モジュールはシリアル通信をサポートしていません。

Kuka 通信用に In-Sight ビジョンシステムを設定するには

  1. [センサ] メニューで、[シリアルポートの設定] をクリックします。
  2. [シリアルポートの設定] ダイアログで、[モード] ドロップダウンリストを開いて、[Kuka] を選択します。

これで、In-Sight ビジョンシステムは、Kuka コントローラの標準のシリアルポート設定をデフォルトとして使用するようになります。ただし、コントローラが別の設定を使用する場合には、Kuka コントローラと同じシリアルポート設定を使用するように、In-Sight を設定してください。

注意:Kuka KR C2 および KR C2 Edition 2005 ロボットコントローラがサポートされます。

Kuka コマンド

データおよびコマンドを送信する際も、データを受信する際も、Kuka ロボットコントローラは、In-Sight ビジョンシステムとの間のすべてのデータ通信をネイティブモードコマンドを使用して開始します。

Kuka モードでは、次のネイティブモードコマンドがサポートされます。

ネイティブモードコマンド | シンタックス
Get Job | GJ
Get Online | GO
Get Value | GV
Load File | LF[ファイル名]
Set Event | SE[整数]
Store File | TF[ファイル名]
Set Float | SF[列][行][浮動小数点数]
Set Integer | SI[列][行][整数]
Set Job | SJ[ID]
Set Online | SO[整数]
Set String | SS[列][行][文字列]


In-Sight 監査メッセージサーバのデモ

In-Sight Explorer GUI リファレンス

In-Sight 監査メッセージサーバのデモでは、ネットワーク上で監査メッセージが 1 つ以上のビジョンシステムから受信される方法について説明しています。監査メッセージは、タイムスタンプが付けられた XML フォーマットのデータレコードです。これには、システムパラメータ、ユーザログオン、およびほかのシステムイベントへの変更点が含まれています。

注意:
  • In-Sight 監査メッセージサーバのデモアプリケーションは、デモンストレーションとテストの目的で使用され、設置の目的では使用されません。
  • Visual Studio 2008 プロジェクトには、監査メッセージサーバ用のサンプルコードが含まれており、次のディレクトリにインストールされています。
    • Windows XP の場合:C:\Documents and Settings\All Users\Documents\Cognex\In-Sight\In-Sight Sample Projects x.x.x\C# v2008\Audit Message Server
    • Windows Vista 以降の場合:C:\Users\Public\Documents\Cognex\In-Sight Sample Projects x.x.x\C# v2008\Audit Message Server

    このサンプルでは、監査メッセージがファイルに記録されますが、必要に応じて、準拠データベースまたは監査証跡ロギングシステム用に監査メッセージを収集して XML データを変換するように変更することができます。

In-Sight 監査メッセージサーバのデモの使用法

監査メッセージの方式

In-Sight 監査メッセージサーバのデモの使用法

  1. Windows の [スタート] メニューから In-Sight 監査メッセージサーバのデモを起動します (デフォルトの場所は、C:\Program Files\Cognex\In-Sight\In-Sight Audit Message Server Demo x.x.x です)。

  2. サーバアドレスは PC の IP アドレスです。PC で複数のネットワーク IP アドレスが使用できる場合は、監査メッセージサーバに対して別の IP アドレスを選択することができます。[Select] ボタンをクリックして PC で使用できる IP アドレスを表示し、リストから監査メッセージサーバ用の IP アドレスを選択します。
  3. [Use local time for message] ボックスをオンにして、監査メッセージに PC の日時でタイムスタンプを付けます。こうすることによって、ネットワーク上の In-Sight ビジョンシステムが、SNTP サーバを使用するように設定されていないか、または SNTP サーバが使用できなくなった場合でも、そのビジョンシステムから受信したすべての監査メッセージに正確なタイムスタンプが付けられます。
  4. [追加] ボタンをクリックして、[Add Audit Message Port] ダイアログを開きます。1024 と 65535 の間で未使用の TCP/IP ポートを入力します (デフォルトは 5753)。これは、In-Sight ビジョンシステムから監査メッセージを収集するために、データベースまたは監査証跡ロギングソフトウェアが接続されるポートです。複数のビジョンシステムが、同じ監査メッセージポートにメッセージを送信することができます。または、複数の監査メッセージポートを追加し、監査メッセージング用に設定された各ビジョンシステムに対して 1 つのポートを使用することができます。

注意:次の TCP/IP ポートは、使用できる範囲内にあります。ただし、このポートは In-Sight で予約済みであるため、入力できません。1069 (In-Sight プロトコル)、1070 (マシンステータスデータ)、1212 (アップグレードポート)、2222 および 44818 (EtherNet/IP)、50000 (DataChannel)。

  5. [Log to File] ボックスをオンにします。プロンプトが出たら、ログファイルのファイル名を入力します (ファイルの拡張子は .txt または .log)。前のステップで複数の TCP/IP ポートを追加した場合は、ポートごとにログファイルを作成します。
  6. [In-Sight Audit Message Settings] ダイアログを設定します。
  7. [Start] ボタンをクリックします。監査メッセージサーバおよびビジョンシステムの監査メッセージの設定を正しく行うと、監査メッセージのデモアプリケーションに最初の監査メッセージが表示されます。

監査メッセージの方式

Closed 監査メッセージの XML 方式:

関連項目

[Audit Message Settings] ダイアログ


オートチューン

In-Sight Explorer GUI リファレンス

[オートチューン] ダイアログは OCRMax 関数と連動して使用します。オートチューンレコードを生成してオートチューンモデルを作成することで、OCRMax 関数のセグメンテーションパラメータを設定し、フォントデータベースを登録します。オートチューンレコードには、画像、登録文字列、ユーザが確認済みの画像内の文字位置が含まれます。オートチューンモデルには、1 つ以上のオートチューンレコードと、オートチューンレコードに含まれるすべての画像の最適なセグメント設定が含まれます。

  • 概要
  • [オートチューン] ダイアログを表示するには
  • [オートチューン] ダイアログのタブと設定項目
  • [オートチューン] ダイアログの使用法
  • 関連項目

注意:
  • In-Sight ビジョンシステムがオンラインになっている場合、[オートチューン] ダイアログは使用できません。
  • [外部設定] パラメータが OCRMaxSettings 関数への参照として設定されている場合、[オートチューン] ダイアログは使用できません。[オートチューン] ダイアログを有効にするには、[外部設定] パラメータを 0 に設定する必要があります。
  • [オートチューン] ダイアログを使用する場合、セグメンテーションのチューニングは In-Sight ビジョンシステム上ではなく、In-Sight エミュレータ上で実行することを推奨します。OCRMax 関数のオートチューンアルゴリズムは大量の計算リソースを要するため、ビジョンシステム上よりもエミュレータ上で実行した方がパフォーマンスが向上します。
  • フォントデータベースを登録し、[オートチューン] ダイアログを使用して文字をセグメンテーションする場合、文字の表示状態が最も良い画像の処理から開始し (画質が最も良い画像を最初に使用し)、表示状態の良いものから悪いものへと順番に処理することを推奨します。また、実行時に出現することが想定されるばらつきがすべて表れている画像を含めてください。これによって、OCRMax 関数のオートチューンアルゴリズムによるチューニングが成功しやすくなります。
  • オートチューンアルゴリズムは、+/- 5 度以上傾いている ROI 内のテキストに対しては機能しません。このシナリオでは、ROI をフィクスチャして角度範囲内のテキストに合わせて調整するか、[角度範囲] パラメータを 5 より大きい値に設定して、オートチューンアルゴリズムの計算にこの値を使用するようにします。
  • 文字がオーバーラップしている場合、オートチューンアルゴリズムは機能しません。オーバーラップしている文字は手動でセグメンテーションし、分類してください。
  • OCRMaxAutoTune 関数を使用することにより、VisionView オペレータインタフェースパネルなどの外部デバイスを使用して、[オートチューン] ダイアログに外部アクセスすることができます。

概要

[オートチューン] ダイアログを実行すると、文字が正しくセグメンテーションされ、分類されているかを検証するため、各画像が調査されます。文字が正しくセグメンテーションされていない場合、OCRMax 関数のオートチューンアルゴリズムは、現在の画像 (オートチューンレコード) と以前登録された画像 (オートチューンモデル) をセグメンテーションする最適なセグメンテーションパラメータを計算します。画像の登録数が増えるほど、OCRMax 関数のオートチューンアルゴリズムの信頼性と正確性が向上します。満足できる結果に達したら、[オートチューン] ダイアログを閉じます。新しいセグメンテーションパラメータが適用され、新しく登録された文字でフォントデータベースが更新されます。

[オートチューン] ダイアログには、セグメンテーションパラメータを手動でチューニングする場合に比べて、主に 2 つの利点があります。

  1. 画像を 1 回だけ表示すればよく、2 回 (1 回目はセグメンテーションパラメータのチューニングのために、2 回目は登録のために) 表示する必要がありません。
  2. チューニングプロセス中に取得されるセグメンテーションパラメータによって文字が自動的に登録されるため、読み取り精度が向上します。

[オートチューン] ダイアログを表示するには

  1. OCRMax プロパティシートから、[オートチューン] ボタンを押します。

[オートチューン] ダイアログのタブと設定項目

[オートチューン] ダイアログには、[オートチューン]、[設定]、[記録]、[フォント] の 4 つのタブがあります。

これらのタブのほかに、次の設定項目を含むツールバーがあります。

  • [リセット]:　現在のオートチューンモデルをクリアし、セグメンテーションパラメータを初期状態にリセットします。
  • [開く]: [開く] ダイアログを起動します。このダイアログを使用して、以前保存したオートチューンモデル (.REC ファイルなど) に移動します。デフォルトでは、[オートチューン] ダイアログには、最後に保存されたオートチューンモデルが自動的にロードされます。
  • [名前を付けて保存]: [名前を付けて保存] ダイアログを起動します。このダイアログを使用して、オートチューンモデル (.REC ファイルなど) を保存および格納するディレクトリに移動します。デフォルトでは、オートチューンモデルは接続されている In-Sight デバイス (エミュレータまたは In-Sight ビジョンシステム。どちらが接続されているか、ジョブの開発に使用されたかによります) 上のメモリに保存されます。
  • [領域の編集]: 対話型グラフィックモードを起動します。このモードを使用して、OCRMax の対象領域を変更することができます。
  • [最初の画像]: 再生フォルダ ([記録/再生のオプション] ダイアログで設定します) に保存されている最初の画像に移動します。
  • [前の画像]: 再生フォルダに保存されている前の画像に移動します。
  • [次の画像]: 再生フォルダに保存されている次の画像に移動します。
  • [最後の画像]: 再生フォルダに保存されている最後の画像に移動します。
  • [画像を開く]:　[画像を開く] ダイアログを起動します。このダイアログを使用して、画像ディレクトリに移動します。
  • [ライブビデオ]: ライブビデオモードに切り替えます。In-Sight ビジョンシステムから連続的に画像を取り込み、表示領域に表示します。このオプションは、ビジョンシステムに接続しているときのみ使用できます。

オートチューン

[オートチューン] タブでは、登録するテキスト文字列の入力、自動または手動での文字セグメンテーションの有効化、フォントデータベースへの文字の追加を行います。

  • [Text] フィールド: 登録するテキスト文字列を指定します。文字列にスペースが含まれている場合、キーボードのスペースキーを使用して入力します。
  • [セグメントの修正 (自動)]: OCRMax 関数で、文字領域を作成し、さまざまな組み合わせのセグメンテーションパラメータを使用して、正しい文字数が検出されるまで自動的にセグメンテーションを試行します。
  • [セグメントの修正 (手動)]: 対話型グラフィックモードで文字領域のサイズと位置を個別に編集することにより、文字領域を手動で調整します。その後、OCRMax 関数が文字領域の形状と位置に基づいて、最適なセグメンテーションパラメータを計算します。
  • [文字登録のみ]: [Text] フィールドに指定したテキストを登録し、フォントに追加します。セグメンテーションパラメータの調整は行いません。

設定

[設定] タブでは、OCRMax 関数のオートチューニングアルゴリズムの設定を行います。

  • [結果数]: 生成する候補結果の最大数 (1 ～ 9,999,999、デフォルト = 30) を指定します。

注意:　In-Sight ビジョンシステムに接続している場合、最大 15 件のオートチューンモデルの結果を生成することができます。

  • [パラメータステップ]: 各セグメンテーションパラメータの試行の最大繰り返し回数 (1 ～ 100、デフォルト = 5) を指定します。

注意:　繰り返し回数を多くするほど、オートチューンプロセスの完了までの時間が長くなります。

  • [ファイル名の自動保存]: .REC ファイルの名前を指定します。デフォルト名は「ocrs_{cell}.rec」です (名前を指定する場合、ファイルパスまたは拡張子を追加しないでください)。ファイル名の最大長は 255 文字で、英数字とアンダースコアのみを使用できます。[OK] ボタンを押して [オートチューン] ダイアログを閉じると、自動的に .REC ファイルが In-Sight ビジョンシステムのメモリにエクスポートされます。その後、[オートチューン] ダイアログを再び開いたとき、自動的に .REC ファイルがインポートされます。

注意:　.REC ファイルを特定の場所に保存する、または特定の場所からロードするには、[オートチューン] ダイアログのツールバーの設定項目の [開く] オプションと [名前を付けて保存] オプションを使用します。

  • [パラメータのロック]: [パラメータのロック] ダイアログを起動します。このダイアログでは、[オートチューン] ダイアログで最適なセグメンテーションパラメータ (オートチューンプロセスの開始前に設定します) を計算するときに変更しない OCRMax パラメータを指定します。
Closed [パラメータのロック] ダイアログ

注意:　スプレッドシート内のセル参照として作成されたパラメータは、自動的にロックされ無効になります。

記録

[記録] タブには、オートチューンレコードのリストが表示されます。オートチューンレコードには、画像、登録テキスト文字列、ユーザが確認済みの画像内の文字位置が含まれます。

  • テーブル: 登録に使用される画像の名前、登録されるテキスト文字列、セグメントおよび文字が検証済みであるかどうかが表示されます。
  • [記録の表示]: 有効にするレコードを選択してこのボタンを押すと、[オートチューン結果] ダイアログが起動します。このダイアログには以前登録した文字領域が表示され、その下に現在のオートチューン結果が表示されます。現在の結果による文字のセグメンテーションが登録済みの結果よりも適切である場合、[記録を現在の結果に置き換える] ボタンを押して、以前登録された文字領域を現在のオートチューン結果で上書きします。
Closed [オートチューン結果] ダイアログ

  • [記録の削除]: レコードを選択してこのボタンを押すと、そのレコードがリストから削除されます。

注意:レコードの削除が完了するまでに、しばらく時間がかかる場合があります。

フォント

[フォント] タブには、登録された文字とそのインスタンスが読み取り専用で表示されます。

[オートチューン] ダイアログの使用法

以下のすべての手順は、登録する文字が含まれているサンプル画像のデータベースが作成され、ディレクトリに配置されていることを前提にしています。また、スプレッドシートに OCRMax 関数が挿入されていることも前提にしています。

[オートチューン] ダイアログを使用した OCR アプリケーションの文字の登録およびセグメンテーションプロセスは、以下により構成されます。

  • 登録画像のロード
  • 自動文字セグメンテーションによる画像の登録
  • 手動文字セグメンテーションによる画像の登録
  • 文字識別の修正

登録画像のロード

  1. 画像をロードします。[画像] メニューから [記録/再生のオプション] を選択します。
  2. [記録/再生のオプション] ダイアログは、自動的に [再生] タブが表示された状態で開きます。表示されていない場合は、[再生] タブをクリックします。
  3. [再生フォルダ] セクションで [参照] ボタンをクリックし、[フォルダの参照] ダイアログを表示します。登録画像が含まれているディレクトリに移動し、[OK] ボタンを押して続行します。
  4. [再生フォルダ] には指定したディレクトリが表示されます。[画像カウント] はこのディレクトリに保存されている画像の数を示しています。[記録/再生のオプション] ダイアログの [OK] ボタンをクリックして、続行します。
  5. [再生フォルダ] ディレクトリを指定すると、[オートチューン] ダイアログツールバーの [最初の画像]、[前の画像]、[次の画像]、[最後の画像] の各ボタンを使用して、画像に移動することができます。

自動文字セグメンテーションによる画像の登録

  1. [オートチューン] ダイアログでは、デフォルトで、[オートチューン] タブが表示されます。[Text] フィールドに、登録するテキスト文字列を入力します。
  2. [オートチューン] ダイアログのツールバーの [領域の編集] ボタンを押して対話型グラフィックスモードに切り替え、読み取るテキスト行の上に OCRMax 関数の対象領域を配置します。対象領域を設定するときは、角度回転や傾きを考慮してください。
  3. 関数は、関数が [セグメント] タブのデフォルト設定に基づいて文字であると判断したテキストの周囲に自動的に文字領域を作成します。
  4. [セグメンテーションの修正 (自動)] ボタンを押すと、OCRMax 関数を使用して、セグメンテーションパラメータを自動的に調整することができます。
  5. OCRMax 関数が文字をセグメンテーションした後、[自動セグメントの結果] ダイアログに結果のリストが表示されます。

  6. 結果を確認し、どの結果が最も適切に文字をセグメンテーションしているかを判断します。リストで結果を選択すると、画像内の文字領域が更新されます。必要に応じ、[結果の編集] ボタンを押して対話型グラフィックスモードに切り替え、文字の周囲の文字領域を手動で調整します。
  7. 最適な結果が決まったら、リストから結果を選択し、[OK] ボタンを押して、[自動セグメントの結果] ダイアログを閉じます。
  8. 新しいオートチューンレコードが作成され、新しい文字領域で画像が更新されます。フォントも新しく登録された文字で更新されます。
  9. 次の画像をロードして、手順 1 ～ 8 を繰り返します。
  10. すべての登録画像を使用したら、[OK] ボタンを押して、[オートチューン] ダイアログを閉じます。

手動文字セグメンテーションによる画像の登録

  1. [オートチューン] ダイアログでは、デフォルトで、[オートチューン] タブが表示されます。[Text] フィールドに、登録するテキスト文字列を入力します。
  2. [オートチューン] ダイアログのツールバーの [領域の編集] ボタンを押して対話型グラフィックスモードに切り替え、読み取るテキスト行の上に OCRMax 関数の対象領域を配置します。対象領域を設定するときは、角度回転や傾きを考慮してください。
  3. 関数は、関数が [セグメント] タブのデフォルト設定に基づいて文字であると判断したテキストの周囲に自動的に文字領域を作成します。
  4. [セグメンテーションの修正 (手動)] ボタンを押して、対話型グラフィックモードに切り替えます。
  5. 必要に応じて、文字領域の位置とサイズを手動で編集します。
  6. すべての文字領域のサイズと位置を必要に応じて再指定した後、[ジョブの編集] ツールバーの [OK] ボタンを押して、対話型グラフィックスモードを終了します。
  7. [オートチューン] ダイアログが再び表示され、新しいオートチューンレコードが作成され、新しい文字領域で画像が更新されます。フォントも新しく登録された文字で更新されます。
  8. 次の画像をロードして、手順 1 ～ 8 を繰り返します。
  9. すべての登録画像を使用したら、[OK] ボタンを押して、[オートチューン] ダイアログを閉じます。

文字識別の修正

このオプションは、画像のセグメンテーションは正しく行われているが、文字が正しく識別されていない場合に使用します。

  1. [オートチューン] ダイアログでは、デフォルトで、[オートチューン] タブが表示されます。[Text] フィールドに、登録するテキスト文字列を入力します。
  2. [文字登録のみ] ボタンを押します。
  3. 新しく登録された文字によってフォントが更新され、新しいオートチューンレコードが作成されます。

注意: 「オートチューンモデル内に記録されたオートチューン文字列が無効です。」というエラーメッセージが表示される場合、追加されたオートチューンレコードと別のオートチューンレコードの間で分類だけが異なり、それ以外は同一であることを示しています。例えば、1 つ目のオートチューンレコードで数字の「0」が文字の「O」として分類され、2 つ目のオートチューンレコードで正しく数字の「0」として分類された場合、このエラーが発生します。このエラーが発生した場合は [記録] タブに移動して、オートチューンレコードの指定されたテキスト文字列が正しいことを確認します。

関連項目

  • OCRMax
  • OCRMaxAutoTune
  • OCRMaxSettings 関数
  • OCRMax 関数の設定方法


バッチ実行

In-Sight Explorer GUI リファレンス

[バッチ実行] ダイアログでは、TestRun で使用する複数の In-Sight ジョブファイルのロードと、単一操作としてのテストの実行を行います。

  • [バッチ実行] ダイアログを表示するには
  • [バッチ実行] ダイアログの設定項目
  • 関連項目

[バッチ実行] ダイアログを表示するには

  1. [パレット] の [TestRun] タブで、[TestRun] ツールバーの [バッチ実行] ボタンを押します。

[バッチ実行] ダイアログの設定項目

  • [選択中のジョブ] テーブル: チェックボックス、ジョブ名、ディレクトリの位置、TestRun の実行中および完了後のジョブのステータス (成功/失敗) が表示されます。
  • [ジョブの追加]: このボタンを押すと、[選択] ダイアログが起動します。このダイアログを使用して、1 つ以上のジョブやディレクトリを選択します。ディレクトリを選択すると、ディレクトリ内のすべての .job ファイルが追加されます。
  • [削除]:ジョブを選択してこのボタンを押すと、ジョブがリストから削除されます。
  • [すべて削除]: リスト内のジョブをすべて選択して削除します。
  • [ジョブのロード]: テーブルからジョブを選択してこのボタンを押すと、接続されている In-Sight エミュレータまたはビジョンシステムにそのジョブがロードされます。
  • [すべてを含む]: このボタンを押すと、テーブル内のすべてのジョブをバッチ実行に自動的に含めることができます。
  • [すべてを除外]: このボタンを押すと、テーブル内のすべてのジョブのバッチ実行を自動的に無効にすることができます。
  • [レポートロケーション]: バッチ実行レポートログのディレクトリの場所を表示します。
  • [参照]: このボタンを押すと、[開く] ダイアログが起動します。このダイアログを使用して、バッチ実行レポートログを保存するディレクトリの場所を指定します。
  • [レポート名]: バッチ実行レポートログの名前を表示します。
  • [権限]: このボタンを押すと、[権限] ダイアログが起動します。このダイアログでは、ジョブが保存されているフォルダにアクセスするためのユーザ認証を入力します (必要な場合)。このユーザ認証は、TestRun セットアップの [画像データベースフォルダ] のステップで入力する内容と一致している必要があります。
  • [日付 & 時間をレポート名に含める]: バッチ実行レポートログファイル名に、日付と時間を付加するかどうかを指定します。有効にすると、名前とファイルフォーマットの間に日付/タイムスタンプが挿入されます。例えば、レポートの名前が「MyReport」でファイルフォーマットが XML の場合、レポート名は「MyReport.20121011_082345.xml」のようになります。
  • [レポートフォーマット]: バッチ実行レポートのファイルフォーマットを指定します (プレーンテキスト、XML、または HTML。デフォルト = XML)。
  • [実行]:　このボタンを押すと、バッチ TestRun 処理が開始します。ジョブを 1 つ以上選択し、レポートロケーションと作成レポート名を指定しなければ、[実行] ボタンは有効になりません。[実行] ボタンを押すと、[選択中のジョブ] テーブルの [ステータス] 列に、テスト実行の進行状況が表示されます。
  • [閉じる]: このボタンを押すと、ダイアログが終了します。

関連項目

  • TestRun — EasyBuilder ビュー
  • TestRun — スプレッドシートビュー


[IPsec ルールの設定] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[IPsec ルールの設定] ダイアログでは、新規ルールを設定するか、または既存のルールを編集します。各ルールでは、次の項目を定義します。

  • リモートデバイスのネットワーク名、リモートデバイスの IP アドレスまたは IP アドレスの範囲。
  • ポート番号、またはポート番号の範囲。
  • 保護するプロトコル:　TCP または UDP。
  • 適用する暗号化アルゴリズム。
  • 適用する認証アルゴリズム。
  • ビジョンシステムとデバイスの間で共有する暗号化および認証鍵。
  • ルールを有効にするかどうか。

注意:　PC またはネットワークデバイスが IPsec を使用して In-Sight ビジョンシステムと通信する場合、PC またはネットワークデバイスも IPsec を使用するように設定する必要があります。ビジョンシステムとデバイスは、同じ暗号化モードとアルゴリズム、および共有鍵を共有する必要があります。IPsec を設定するステップはデバイスに応じて異なります。一部の設定は、複雑になる場合があります。IPsec を設定する手順の詳細については、それぞれのデバイスのマニュアルを参照してください。Microsoft Windows では、IPsec を完全にサポートしています。このため、IPsec を使用するように設定すると、ビジョンシステムと通信を行う、Windows で実行中のプロセス (In-Sight Explorer、In-Sight SDK など) とビジョンシステムの間の通信が保護されます。

[Configure IPsec Rule] ダイアログを表示するには

  1. [IPsec Rules] ダイアログで、[追加] または [編集] ボタンのいずれかをクリックします。

[Configure IPsec Rule] ダイアログの設定項目

[Configure IPsec Rule] には、IPsec ルールに関する設定項目が次の 3 つのタブで表示されます。

  • [Devices] タブ
  • [Protocols and Ports] タブ
  • [Security] タブ

[Devices] タブ

このタブでは、[Source] および [Destination] デバイスを指定します。

  • [Source]:　[Source] デバイスを指定して、[Destination] デバイスで選択できるオプションを定義します。逆の場合も同様です。例えば、[Source] デバイスを「This Vision System」に設定すると、[Destination] デバイスは「This PC」または「Device Name or IP Address」から選択することができます。デバイスは、名前、IP アドレス、または IP アドレスの範囲で指定することができます。名前を指定するには、ホスト名を入力します。この場合、IP アドレスは無視されます。単一の IP アドレスを指定するには、その IP アドレスを入力します。IP アドレスの範囲を指定するには、最初に IP アドレス範囲の開始アドレス、次に「-」、最後に終了アドレスを入力します。すべての IP アドレスを指定するには、このフィールドを空白のままにします。
  • [Destination]:　[Destination] デバイスを指定して、[Source] デバイスで選択できるオプションを定義します。逆の場合も同様です。例えば、[Destination] デバイスを「This Vision System」に設定すると、[Source] デバイスは「This PC」または「Device Name or IP Address」から選択することができます。デバイスは、名前、IP アドレス、または IP アドレスの範囲で指定することができます。名前を指定するには、ホスト名を入力します。この場合、IP アドレスは無視されます。単一の IP アドレスを指定するには、その IP アドレスを入力します。IP アドレスの範囲を指定するには、最初に IP アドレス範囲の開始アドレス、次に「-」、最後に終了アドレスを入力します。すべての IP アドレスを指定するには、このフィールドを空白のままにします。

[Protocols and Ports] タブ

このタブでは、モニタする IP プロトコルとポートを指定します。

  • [Protocol Type]:　モニタする IP プロトコルを指定します ([Any]、[TCP]、または [UDP]。デフォルト = [Any])。
  • [Source Ports]:　モニタするソースポートを指定します ([Any Ports] または [Specific Ports]。デフォルト = [Any Ports])。[Specific Ports] を選択した場合は、ドロップダウンメニューの下のフィールドで、ポートまたはポートの範囲を指定する必要があります。使用できるポート番号は、1 ～ 65534 です。ポートの範囲を指定するには、最初にポート範囲の開始ポート番号、次に「-」、最後に終了ポート番号を入力します。
  • [Destination Ports]:　モニタするデスティネーションポートを指定します ([Any Ports] または [Specific Ports]。デフォルト = [Any Ports])。[Specific Ports] を選択した場合は、ドロップダウンメニューの下のフィールドで、1 つまたは複数のポートを指定する必要があります。使用できるポート番号は、1 ～ 65534 です。ポートの範囲を指定するには、最初にポート範囲の開始ポート番号、次に「-」、最後に終了ポート番号を入力します。
注意:
  • 通常、IPsec は、TCPDevice または UDPDevice 関数でジョブからのネットワークトラフィックを保護するのに使用します。この場合、IPsec ルールを使用して、これらの関数が使用するポート番号を指定します。ただし、In-Sight Explorer が実行中で In-Sight ビジョンシステムに接続されている場合は、このビジョンシステムにおいても TCPDevice または UDPDevice 関数で TCP のポート番号 1069 を使用して、In-Sight Explorer にデータを送信します。デフォルトでは、このデータ送信は保護されていません。IPsec を使用してこのデータを保護するには、追加のルールを作成して、TCP のポート番号 1069 を保護する必要があります。このように設定すると、ビジョンシステムは TCP サーバとして動作し、接続を受け入れます。一方、In-Sight Explorer は TCP クライアントとして動作し、接続を開始します。In-Sight Explorer を実行中の PC からビジョンシステムへのトラフィックの場合は、[Source Ports] を「Any」に、[Destination Ports] を「1069」に設定する必要があります。ビジョンシステムから In-Sight Explorer を実行中の PC へのトラフィックの場合は、[Source Ports] を「1069」に、[Destination Ports] を「Any」に設定する必要があります。
  • In-Sight ビジョンシステムがポート 1069 経由で通信するように設定され、UDP が通信方法である場合、メッセージを適切に暗号化するため、ルールを鏡像化する必要があります。

[Security] タブ

このタブでは、デバイス間で共有する暗号化アルゴリズムと鍵を指定します。In-Sight では、Authentication Headers (AH) および Encapsulating Security Payload (ESP) (トランスポートモードで、手動入力された共有鍵を使用する場合)、MD5 および SHA1 認証用アルゴリズム、DES、3DES (トリプル DES)、Blowfish、および AES 暗号化用アルゴリズムがサポートされています。

注意:　IPsec 標準では、インバウンドおよびアウトバウンドのトラフィックで、別のポリシーが使用できます。In-Sight でサポートされているのは「鏡像化」ポリシーのみで、インバウンドおよびアウトバウンドの両方のトラフィックに指定したポリシーが適用されます。

  • [Data and address integrity without encryption (AH)]:　AH モードを使用するかどうか (デフォルトでは、AH が選択されています)、および適用する整合性アルゴリズムのタイプを指定します ([None], [MD5] または [SHA1]。デフォルト = [None])。
  • [Data integrity and encryption (ESP)]:　ESP モードを使用するかどうかを指定します (デフォルト = [AH])。
    • [Integrity algorithm]:　適用する整合性アルゴリズムのタイプを指定します ([None]、[MD5]、または [SHA1]。デフォルト = [None])。
    • [Encryption algorithm]:　適用する暗号化アルゴリズムのタイプを指定します ([None]、[DES]、[3DES]、[AES]、または [Blowfish]。デフォルト = [None])。

注意:　[Source] または [Destination] デバイスのいずれかを「This PC」に設定した場合、使用できる暗号化アルゴリズムは、[DES] または [3DES] です。これらの暗号化アルゴリズムは、Windows OS でサポートされています。

  • [Preshared Key]:　ソースおよびデスティネーションのデバイス間で共有する鍵を指定します (AH および ESP モードの両方で必要)。暗号化の場合、鍵は文字列または数字です。これは、暗号化および復号化アルゴリズムで使用されます。通常、鍵は保護されています。これは、鍵の保有者ならだれでも、その鍵で暗号化された送信を復号化できるためです。鍵の長さは 32 文字以内でなければなりません。
  • [Enable IPsec Rule]:　ルールを有効化するか、無効化するかを指定します。デフォルトでは、ルールは無効化されています。


[プリンタの接続] ダイアログ

ファイルメニュー

In-Sight Explorer GUI リファレンス

[プリンタの接続] ダイアログでは、[印刷] ダイアログの使用可能なプリンタのリストに新しいプリンタを追加することができます。

[プリンタの接続] ダイアログを表示するには

  • [ファイル] メニューで、[ページ設定] をクリックします。
  • [ページ設定] ダイアログで、[プリンタの設定] ボタンをクリックします。
  • もうひとつの [ページ設定] ダイアログが開きます。このダイアログの [ネットワーク] ボタンをクリックします。

[プリンタの接続] ダイアログの項目

  • [プリンタ]: プリンタの名前と場所を入力します。プリンタは、PC に直接接続されていない限り、共有されたネットワークプリンタでなければなりません。プリンタの名前または場所がわからない場合は、[共有プリンタ] で参照してください。次のフォーマットで、プリンタの場所と名前を入力します。
    \\printserver_name\shared_name
  • [共有プリンタ]: ネットワーク上のプリンタを参照することができます。[展開して表示する] を選択すると、ダイアログを開くたびに、ディレクトリ階層が展開されます。
  • [プリンタ情報]: プリンタ固有の情報が表示されます。


[フォーマット入出力バッファ] ダイアログ

入出力関数

In-Sight Explorer GUI リファレンス

[フォーマット入出力バッファ] ダイアログは、データを自動的に設定して、フォーマット化データを含む　 [image] 　構造体を返すために使用します。使用している通信のタイプに応じて、一部の入出力関数 (「関連項目」の節を参照してください) でこのデータを使用することができます。

[フォーマット入力バッファ] ダイアログを表示するには

  1. スプレッドシートの空白のセルを選択します。
  2. [挿入] メニューで、[式] をクリックします。
  3. [関数の挿入] ダイアログで、[入出力] カテゴリを展開します。
  4. 右側のリストで、[FormatInputBuffer] をダブルクリックします。

[フォーマット入力バッファ] ダイアログの設定項目

  • [データ型]:　自動的に設定するデータの型を指定します。
  • [エレメントごとのバイト数]:　選択したデータ型が [文字列] または [バイト順序反転文字列] の場合、データのサイズをバイト単位で指定します。そのほかのデータ型のサイズはすべて固定で編集できません。[エレメントごとのバイト数] フィールドには、最大 4,000 バイトを入力することができます。ただし、最大入力長を超えた場合、プロトコルでは読み取ることはできません。入力データが制限を超えた場合、プロトコルはその一部しか読み取ることができません。
注意:

  • Modbus TCP、EIP、または PROFINET 通信を使用している場合の入力データの最大長は 4,000 バイトです。SLMP または SLMP スキャナを使用しているときに、[Q/L シリーズ] で [コントローラタイプ] が選択されている場合、入力データの最大長は 1920 バイトです。SLMP または SLMP スキャナを使用しているときに、[FX シリーズ] で [コントローラタイプ] が選択されている場合、入力データの最大長は 128 バイトです。そのほかのすべての通信方法では最大長は 256 バイトです。

  • メッセージの総サイズが 4,000 バイトを超えた場合は、#ERR が返されます。
データ型 | サイズの範囲 (バイト数)
ビット* | 1 ビット

8 ビット整数

1

8 ビット符号なし整数

1

16 ビット整数

2

16 ビット符号なし整数

2

32 ビット整数

4

32 ビット浮動小数点数

4
文字列
  • Modbus TCP、EIP、または PROFINET = 1 ～ 4000。
  • SLMP または SLMP スキャナで Q/L シリーズ = 1 ～ 1920 (ワードベースのプロトコルの場合は 1 ～ 960 ワード)。
  • SLMP または SLMP スキャナで FX シリーズ = 1 ～ 128 (ワードベースのプロトコルの場合は 1 ～ 64 ワード)。
  • そのほかのすべての通信方法 = 1 ～ 256 (ワードベースのプロトコルの場合は 1 ～ 128 ワード)。

バイト順序反転文字列

  • Modbus TCP、EIP、または PROFINET = 1 ～ 4000。
  • SLMP または SLMP スキャナで Q/L シリーズ = 1 ～ 1920 (ワードベースのプロトコルの場合は 1 ～ 960 ワード)。
  • SLMP または SLMP スキャナで FX シリーズ = 1 ～ 128 (ワードベースのプロトコルの場合は 1 ～ 64 ワード)。
  • そのほかのすべての通信方法 = 1 ～ 256 (ワードベースのプロトコルの場合は 1 ～ 128 ワード)。

*[ビット] データタイプは、SLMP および CC-Link 通信の場合のみ使用可能です。

  • [追加]: リストにデータ型を追加します。
  • [削除]:　ハイライトしたデータ型をリストから削除します。
  • [上に移動]:　ハイライトしたデータ型をリストの上に移動します。そのデータ型が既にリストの最初の場合、[上に移動] ボタンはグレーアウトされます。
  • [下に移動]:　ハイライトしたデータ型をリストの下に移動します。そのデータ型が既にリストの最後の場合、[下に移動] ボタンはグレーアウトされます。

[フォーマット出力バッファ] ダイアログを表示するには

  1. スプレッドシートの空白のセルを選択します。
  2. [挿入] メニューで、[式] をクリックします。
  3. [関数の挿入] ダイアログで、[入出力] カテゴリを展開します。
  4. 右側のリストに表示された FormatOutputBuffer をダブルクリックします。

[フォーマット出力バッファ] ダイアログの設定項目

  • [セル範囲]:　選択した [データ型] の値を含む参照セル (またはセル範囲) を指定します。

注意:　各データ型は有効な値を含むセルを参照する必要があります。そうでない場合、ダイアログは #ERR を返します。

  • [データ型]:　自動的に設定するデータの型を指定します。
  • [エレメントごとのバイト数]:　選択したデータ型が [文字列] または [バイト順序反転文字列] の場合、データのサイズをバイト単位で指定します。そのほかのデータ型のサイズはすべて固定で編集できません。[エレメントごとのバイト数] フィールドには、最大 4,000 バイトを入力することができます。ただし、最大出力長を超えた場合、プロトコルでは書き込むことはできません。出力データが制限を超えた場合、プロトコルはその一部しか書き込むことができません。
注意:

  • Modbus TCP、EIP、または PROFINET 通信を使用している場合の出力データの最大長は 4,000 バイトです。SLMP または SLMP スキャナを使用しているときに、[Q/L シリーズ] で [コントローラタイプ] が選択されている場合、出力データの最大長は 1920 バイトです。SLMP または SLMP スキャナを使用しているときに、[FX シリーズ] で [コントローラタイプ] が選択されている場合、出力データの最大長は 128 バイトです。そのほかのすべての通信方法では最大長は 256 バイトです。

  • メッセージの総サイズが 4,000 バイトを超えた場合は、#ERR が返されます。
  • 16 ビット整数 1 つは 3 文字であるため、16 ビット整数を使用する場合、出力データの最大長は 140 バイトになります。この上限を超えた場合、関数から「Error String too long」が返されます。出力データが制限を超える場合は、CombineOutputBuffers 関数を使用します。
データ型 | サイズの範囲 (バイト数)
ビット* | 1 ビット

8 ビット整数

1

8 ビット符号なし整数

1

16 ビット整数

2

16 ビット符号なし整数

2

32 ビット整数

4
64 ビット整数 | 8

32 ビット浮動小数点数

4
文字列
  • Modbus TCP、EIP、または PROFINET = 1 ～ 4000。
  • SLMP または SLMP スキャナで Q/L シリーズ = 1 ～ 1920 (ワードベースのプロトコルの場合は 1 ～ 960 ワード)。
  • SLMP または SLMP スキャナで FX シリーズ = 1 ～ 128 (ワードベースのプロトコルの場合は 1 ～ 64 ワード)。
  • そのほかのすべての通信方法 = 1 ～ 256 (ワードベースのプロトコルの場合は 1 ～ 128 ワード)。

バイト順序反転文字列

  • Modbus TCP、EIP、または PROFINET = 1 ～ 4000。
  • SLMP または SLMP スキャナで Q/L シリーズ = 1 ～ 1920 (ワードベースのプロトコルの場合は 1 ～ 960 ワード)。
  • SLMP または SLMP スキャナで FX シリーズ = 1 ～ 128 (ワードベースのプロトコルの場合は 1 ～ 64 ワード)。
  • そのほかのすべての通信方法 = 1 ～ 256 (ワードベースのプロトコルの場合は 1 ～ 128 ワード)。
*[ビット] データタイプは、SLMP および CC-Link 通信の場合のみ使用可能です。
  • [追加]: 1 つまたは複数のセルを参照できるように、セル選択モードに切り替えます。ダイアログを開いたままでセルを選択できます。
  • [削除]:　ハイライトしたデータ型をリストから削除します。ハイライトされた項目がない場合、[削除] ボタンは使用できません。
  • [上に移動]:　ハイライトしたデータ型をリストの上に移動します。そのデータ型が既にリストの最初の場合、[上に移動] ボタンはグレーアウトされます。
  • [下に移動]:　ハイライトしたデータ型をリストの下に移動します。そのデータ型が既にリストの最後の場合、[下に移動] ボタンはグレーアウトされます。

Closed FormatOutputBuffer の例

  1. セル A2、A3、および A4 が次のような内容であるとします。

A2 = EditInt(0,255)

A3 = EditFloat(0,100)

A4 = EditString(8)

スプレッドシートには次のように表示されます。

  2. FormatOutputBuffer 関数をセル C2 に挿入します。[フォーマット出力バッファ] ダイアログが自動的に開きます。

  3. [追加] ボタンをクリックして、適切なデータを含むセルを参照します。例えば、セル A2 をハイライトします。

  4. Enter キーを押して、参照セルの選択を適用し、[フォーマット出力バッファ] ダイアログに戻ります。参照したセルがダイアログのリストに表示されています。
  5. [追加] ボタンをクリックして、さらにセル参照を追加します。リスト内の既存の項目の [データ型] を変更したり、削除したり、並べ替えたりすることができます。

  6. [OK] をクリックしてダイアログを閉じ、スプレッドシートに戻ります。 　データ構造体が返されます。

  7. WriteEIPBuffer 関数をセル C4 に挿入します。この関数の [バッファ] パラメータは、セル C2 を参照しています。

  8. [OK] をクリックして、スプレッドシートに戻ります。

関連項目

FormatInputBuffer 関数

ReadCCLinkBitBuffer 関数

WriteCCLinkBitBuffer 関数

ReadCCLinkWordBuffer 関数

WriteCCLinkWordBuffer 関数

ReadDeviceNetBuffer 関数

WriteDeviceNetBuffer 関数

ReadEIPBuffer 関数

WriteEIPBuffer 関数

ReadDeviceNetBuffer 関数

ReadModbusBuffer 関数

WriteModbusBuffer 関数

ReadProfinetBuffer 関数

WriteProfinetBuffer 関数

ReadUserDataBuffer 関数

WriteResultsBuffer 関数

CombineOutputBuffers 関数


FormatString ダイアログ

文字列操作関数

In-Sight Explorer GUI リファレンス

EasyBuilder ビュー

スプレッドシートビュー

EasyBuilder ビュー

[FormatString ] ダイアログは、位置決めツールおよび検査ツールのデータを選択、フォーマットして、ロボットコントローラなどのリモートデバイスに送信可能な出力文字列を生成するために使用します。ロボットで使用される文字列を構成 ([通信] アプリケーションステップの [通信] グループボックスで、[デバイス] を [ロボット]、または [プロトコル] を [Serial Kuka] もしくは [Serial Motoman] に設定) する場合、[FormatString] ダイアログでは、ジョブで生成されたフィクスチャ出力が自動的に選択されます。

[FormatString] ダイアログでは、参照先の各ツール結果が個別のアイテムとしてリストされます。[ラベル]、[データ型]、[小数部の桁数]、[固定長]、および [パッド] を割り当てることによって、各アイテムを整形することができます。アイテムの整形を行うには、まず、リストのアイテムをハイライトする必要があります。[前置テキスト]、[後置テキスト]、[終端記号]、および [区切り文字] を追加することによって、[出力文字列] 全体の書式を設定することができます。後置文字] を追加することによって、[出力文字列] 全体の書式を設定することができます。

注意:
  • 連続していない複数のアイテムを整形するには、Ctrl キーを押しながらアイテムをハイライトします。
  • 連続している複数のアイテムを整形するには、Shift キーを押しながらリストの最初のアイテムと最後のアイテムをハイライトします。

[FormatString] ダイアログの設定項目

  • [前置テキスト]: 出力文字列の接頭辞。30 文字まで入力できます。
  • [後置テキスト]: 出力文字列の接尾辞。30 文字まで入力できます。
  • [終端記号]: 選択した終端記号を出力文字列に付加します。
    • [なし]: 出力文字列に終端記号を付加しません。
    • [復帰 (CR)]: 出力文字列に復帰コード(キャリッジリターン)を付加します。
    • [改行 (LF)]: 出力文字列に改行コード(ラインフィード)を付加します。
    • [CR+LF]: 出力文字列にキャリッジリターンとラインフィードを付加します。
  • [区切り文字を使用]: デフォルトでオンになっています。オンの場合アイテムが区切られます。区切り文字は 1 文字だけ指定できます。
    • [標準]: 標準の区切り文字 (カンマ、スペース、タブ、セミコロン、またはアンダースコア) を選択することができます。
    • [その他]: カスタムの 1 文字の区切り文字を入力することができます。
  • [追加]: [Select Output Data] ダイアログが表示されます。このダイアログには、このジョブに追加された位置決めツール、または検査ツールのデータが表示されます。目的の結果を選択すると、[FormatString] ダイアログに戻り、選択した結果それぞれについて 1 つのアイテムが作成されます。
  • [削除]: ハイライトしたアイテムをリストから削除します。ハイライトされたアイテムがない場合、[削除] ボタンは使用できません。
  • [上に移動]: ハイライトしたアイテムをリストの上に移動します。そのアイテムがすでにリストの最初の場合、[上に移動] ボタンはグレーアウトされます。
  • [下に移動]: ハイライトしたアイテムをリストの下に移動します。そのアイテムがすでにリストの最後の場合、[下に移動] ボタンはグレーアウトされます。
  • [ラベル]: 各アイテムに識別のためのラベルを割り当てることができます。12 文字まで入力できます。
  • [ラベルを含む]: オンにすると、アイテムの前にラベル文字列が付加されます。
  • [データ型]: [FormatString] ダイアログでは、参照先の結果の内容に基づいて、各アイテムの [データ型] が自動的に判別されます。
    • 数値: 文字列を返します。
    • [符号なし整数]: 符号なし整数値を含む文字列を返します。
    • [整数 (hex)]: 小文字で表現された 16 進数文字列を返します。
    • [整数(HEX)]: 大文字で表現された 16 進数文字列を返します。
    • [整数 (8 進)]: 8 進値文字列を返します。
    • [浮動小数点]: 浮動小数点値を含む文字列を返します。
    • [科学表記]: 科学表記の値を含む文字列を返します。
    • [文字]: 与えられた ASCII コードに対応する 1 文字を返します。テキスト文字列が与えられたときは、その最初の 1 文字を返します。
    • [文字列]: 文字列を返します。
  • [小数部の桁数]: [浮動小数点] または [科学表記] データ型について、小数点以下の桁数を選択します。(0～6、デフォルト 6)
  • [固定長]: 各アイテムの文字列を固定幅に設定することができます。
    • [フィールド幅]: 各アイテムの文字列に含まれる文字数の最小値を指定します。(1～30、デフォルト 8)
    • [パッド]: アイテムの文字列の文字数が、指定した [フィールド幅] より少ない場合は、次のいずれかの方法で埋め込みが行われます。
      • [先頭のスペース]: 文字列の前にスペースを埋め込んで右詰めにします。
      • [末尾のスペース]: 文字列の後にスペースを埋め込んで左詰めにします。
      • [先頭の 0]: 文字列の前に 0 を埋め込んで右詰めにします。
  • [出力文字列]: 出力文字列を表示します。現在ハイライトされているアイテムに対応する文字は太字で示されます。 合計文字数が表示されます。シンタックス: <前置テキスト (任意)><ラベル (任意)><アイテム 0><区切り文字 (任意)><アイテム 1><区切り文字 (任意)>...<終端記号>

スプレッドシートビュー

FormatString ダイアログを使用すると、参照セルのデータを容易に整形して、リモートデバイスに送信するための [出力文字列] を生成することができます。FormatString ダイアログでは、各参照セルが個別のアイテムとしてリストされます。[ラベル]、[データ型]、[小数部の桁数]、[固定長]、および [パッド] を割り当てることによって、各アイテムを整形することができます。アイテムの整形を行うには、まず、リストのアイテムをハイライトする必要があります。[前置テキスト]、[後置テキスト]、[終端記号]、および [区切り文字] を追加することによって、[出力文字列] 全体の書式を設定することができます。[後置文字] を追加することによって、[出力文字列] 全体の書式を設定することができます。

注意:
  • 連続していない複数のアイテムを整形するには、Ctrl キーを押しながらアイテムをハイライトします。
  • 連続している複数のアイテムを整形するには、Shift キーを押しながらリストの最初のアイテムと最後のアイテムをハイライトします。

[FormatString] ダイアログを表示するには

  1. スプレッドシートの空白のセルを選択します。
  2. [挿入] メニューで、[式] をクリックします。
  3. [関数の挿入] ダイアログで、[文字列操作] カテゴリを展開します。
  4. 右側のリストで、FormatString をダブルクリックします。

[FormatString] ダイアログの設定項目

  • [前置テキスト]: 出力文字列の接頭辞。30 文字まで入力できます。
  • [後置テキスト]: 出力文字列の接尾辞。30 文字まで入力できます。
  • [終端記号]: 選択した終端記号を出力文字列に付加します。
    • [なし]: 出力文字列に終端記号を付加しません。
    • [復帰 (CR)]: 出力文字列に復帰コード (キャリッジリターン) を付加します。
    • [改行 (LF)]: 出力文字列に改行コード (ラインフィード) を付加します。
    • [CR+LF]: 出力文字列にキャリッジリターンとラインフィードを付加します。
  • [区切り文字を使用]: オンにするとアイテムが区切られます。区切り文字は 1 文字だけ指定できます。
    • [標準]: 標準の区切り文字 (カンマ、スペース、タブ、セミコロン、またはアンダースコア) を選択することができます。
    • [その他]: カスタムの 1 文字の区切り文字を入力することができます。
  • [追加]: 1 つまたは複数のセルを参照できるように、セル選択モードに切り替えます。セルを選択すると、ダイアログに戻り、選択した各セルについて 1 つのアイテムが作成されます。
  • [削除]: ハイライトしたアイテムをリストから削除します。ハイライトされたアイテムがない場合、[削除] ボタンは使用できません。
  • [上に移動]: ハイライトしたアイテムをリストの上に移動します。そのアイテムが既にリストの最初の場合、[上に移動] ボタンはグレーアウトされます。
  • [下に移動]: ハイライトしたアイテムをリストの下に移動します。そのアイテムが既にリストの最後の場合、[下に移動] ボタンはグレーアウトされます。
  • [ラベル]: 各アイテムに識別のためのラベルを割り当てることができます。12 文字まで入力できます。
  • [ラベルを含む]: オンにすると、アイテムの前にラベル文字列が付加されます。
  • [セル]: 通常はセル参照を指定しますが、数式を入力することもできます。数式中のセル参照は、スプレッドシート内のグラフィックスに一致するように色分けされます。

ヒント: [セル] テキストボックスにカーソルを置いて F4 を押すと、4 つのセル参照タイプを切り替えることができます。

  • [データ型]: FormatString ダイアログでは、参照セルの内容に基づいて、各アイテムの [データ型] が自動的に判別されます。
    • [整数値]: 文字列を返します。
    • [符号なし整数]: 符号なし整数値を含む文字列を返します。
    • [整数 (hex)]: 小文字で表現された 16 進数文字列を返します。
    • [整数 (HEX)]: 大文字で表現された 16 進数文字列を返します。
    • [整数 (8 進)]: 8 進値文字列を返します。
    • [浮動小数点]: 浮動小数点値を含む文字列を返します。
    • [科学表記]: 科学表記の値を含む文字列を返します。
    • [文字]: 与えられた ASCII コードに対応する 1 文字を返します。テキスト文字列が与えられたときは、その最初の 1 文字を返します。
    • [文字列]: 文字列を返します。
  • [小数部の桁数]: [浮動小数点] または [科学表記] データ型について、小数点以下の桁数を選択します。(0 ～ 6、デフォルト 6)
  • [固定長]: 各アイテムの文字列を固定幅に設定することができます。
    • [フィールド幅]: 各アイテムの文字列に含まれる文字数の最小値を指定します。(1 ～ 30、デフォルト 8)
    • [パッド]: アイテムの文字列の文字数が、指定した [フィールド幅] より少ない場合は、次のいずれかの方法で埋め込みが行われます。
      • [先頭のスペース]: 文字列の前にスペースを埋め込んで右詰めにします。
      • [末尾のスペース]: 文字列の後にスペースを埋め込んで左詰めにします。
      • [先頭の 0]: 文字列の前に 0 を埋め込んで右詰めにします。
  • [出力文字列]: 出力文字列を表示します。現在ハイライトされているアイテムに対応する文字は太字で示されます。 合計文字数が表示されます。シンタックス: <前置テキスト (任意)><ラベル (任意)><アイテム 0><区切り文字 (任意)><アイテム 1><区切り文字 (任意)>...<終端記号>

Closed FormatString の例

次の例では、ExtractBlobs 関数を使用して、画像の特徴の位置と角度を検索します。 FormatString 関数は、このデータを参照して、リモートデバイスに送信できる [出力文字列] を返します。

  1. ExtractBlobs 関数をセル A3 に挿入します。データ構造体が返されます。
  2. FormatString 関数をセル A5 に挿入します。FormatString ダイアログが自動的に開きます。

  3. [追加] ボタンをクリックして、適切なデータを含んでいるセルを参照します。例えば、 [image] データ構造体で返されたセル C3、D3、および E3 をハイライトします。

  4. Enter キーを押して、参照セルの選択を適用し、FormatString ダイアログに戻ります。参照したセルがダイアログのリストにアイテムとして表示されています。リストにアイテムを追加したり、既存のアイテムを削除したり、並べ替えたりすることができます。
  5. [前置テキスト] テキストボックスに ABC と入力します。
  6. [後置テキスト] テキストボックスに XYZ と入力します。
  7. [終端記号] ドロップダウンリストから CR+LF を選択します。
  8. [区切り文字を使用] チェックボックスをオンにします。
  9. 区切り文字の [標準] ドロップダウンリストからスペースを選択します。

  10. リストの最初のアイテムである参照セル C3 をハイライトします。[ラベル] テキストボックスに、X と入力します(スプレッドシートのセルの [行] に対応)。
  11. リストの 2 番目のアイテムである参照セル D3 をハイライトします。[ラベル] テキストボックスに、Y と入力します(スプレッドシートのセルの [列] に対応)。
  12. リストの 3 番目のアイテムである参照セル E3 をハイライトします。[ラベル] テキストボックスに、Angle と入力します(スプレッドシートのセルの [角度] に対応)。
  13. Shift キーを押しながら、リストの最初のアイテムと最後のアイテムを選択します。すべてのアイテムがハイライトされて、一度に整形することができます。
  14. [ラベルを含む] チェックボックスをオンにします。
  15. [データ型] が [浮動小数点] になっていることを確認します。
  16. [小数部の桁数] テキストボックスに 3 と入力します。
  17. [固定長] チェックボックスをオンにします。
  18. [固定長] テキストボックスに 8 と入力します。
  19. [パッド] ドロップダウンリストから [先頭の 0] を選択します。

  20. [OK] をクリックして FormatString ダイアログを閉じ、スプレッドシートに戻ります。セル A5 に文字列が出力されます。

関連項目

FormatString

Stringf


[IPsec ルール] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[IPsec ルール] ダイアログでは、最大 16 ペアの IPsec 設定ルールの追加、編集、および削除を行います (ペアの 1 つは、データの送信を定義するルールで、もう 1 つはデータの受信を定義するルール)。ここでは、In-Sight ビジョンシステムがほかのデバイスと通信を行う際に IPsec を適用する条件を指定します。

  • IPsec について
  • IPsec の設定
  • [IPsec ルール] ダイアログを表示するには
  • [IPsec ルール] ダイアログの設定項目
注意:
  • Windows XP 32 ビットオペレーティングシステムを実行中の PC の場合は、In-Sight Explorer が Windows XP 上で IPsec を設定できるようにするために、PC 上に ipseccmd.exe ファイルを「フル」モードでインストールする必要があります。ファイルは、Microsoft ダウンロード センターからダウンロードできます。ipseccmd.exe ファイルのインストール時にプログラムが開いた場合は、インストールが終了してから、In-Sight Explorer を再起動する必要があります。
  • PC と In-Sight ビジョンシステムの間で IPsec を設定する場合は、PC に 1 つのネットワークアダプタカードと 1 つの IPv4 アドレスのみを割り当てる必要があります。1 台の PC に IPsec が有効なネットワークカードが複数ある場合はサポートされていません。

IPsec について

IPsec を使用すると、同じネットワーク上にある In-Sight ビジョンシステムとほかのデバイスまたは PC 間のデータ送信が保護されます。IPsec は、IP (インターネットプロトコル) トラフィックの暗号化および認証のオープンスタンダードです。正しく設定を行うと、IPsec が使用可能な 2 台のデバイス間で安全に通信を行うことができます。IPsec を使用している PC またはデバイスでは、ネットワークトラフィックを保護するのに必要な「ルール」を設定します。特定のネットワークトラフィックのみを保護する必要がある場合は、そのトラフィックに対してルールを指定します。

IPsec は、ネットワークスタックの IP 層で動作します。このため、PROFINET の一部の変形バージョンなど、IP を使用しないネットワークプロトコルでは、IPsec を使用することはできません。IP の上部で構築されている TCP および UDP プロトコルでは、IPsec を使用することができます。ビジョンシステムとリモートデバイスで IPsec を設定したら、ビジョンシステムは正常時と同様に動作します。IPsec は、TCPDevice または UDPDevice 関数を使用した送信など、任意の IP ネットワークトラフィックに適用でき、設定した IPsec ルールが使用されます。

IPsec を使用して通信を行うには、最初に 2 台のデバイスで Internet Key Exchange (IKE) を介して安全な接続を確立しておく必要があります。接続を確立するには、事前に設定したルールに従って、2 台のデバイス間で IPsec をネットワークトラフィックに適用する方法を取り決めておく必要があります。

設定が完了したら、In-Sight ビジョンシステムは自動的に IKE を開始し、設定ルールに合わせて IPsec を IP ネットワークトラフィックに適用します。ビジョンシステムがネットワーク上で IP を介してデータを送信する場合、送信先の IP アドレス、送信元ポート、および送信先ポートを格納されている設定ルールと比較します。ルールに一致している場合、ビジョンシステムはリモートデバイスとの間で IKE を開始します。IKE が成功すると、ルールに従って IPsec が適用され、In-Sight ファームウェアは、自動的にデータを変更して送信します。IP を使用していないトラフィックでは、IPsec は適用されず、通常どおりに送信が行われます。

デフォルトでは、ルールに一致していない出力トラフィックはすべて、ビジョンシステムですべての IP トラフィックを保護するようなルールが設定されていない限り、IPsec を適用せずに送信されます。ビジョンシステムは、リモートデバイスから IKE を開始する要求を受けとった場合、設定ルールに従って安全な接続の確立を試行します。IKE が成功したら、ビジョンシステムは、入力データを復号化し、設定に従ってデータを処理します。IKE が失敗した場合は、どちらの側から開始したかには関係なく、IPsec で保護されたデータをやり取りすることはできません。ビジョンシステムは、保護されていない入力トラフィックを許可するか、拒否するかのいずれかに設定できます。デフォルトでは許可しています。

シリアル番号の送信を保護するための IPsec ルールの例

この例では、In-Sight ビジョンシステムが ReadIDMax 関数を使用して、パッケージに印刷されたシリアル番号を読み取り、そのデータを TCPDevice 関数を使用して、データベースサーバに安全に送信する場合を考えます。[IPsec ルール] ダイアログでルールを追加し、[IPsec ルールの設定] ダイアログでそのルールを設定します。ここでは、適切な IP アドレスとポート、必要な暗号化アルゴリズム、認証アルゴリズム、および鍵を指定します。対応するルールに従って Windows のローカル セキュリティ ポリシーツールを使用して、データベースサーバも設定します。

TCPDevice は、IPsec ルールに一致する [ポート] および [プロトコル] パラメータを使用して設定します。これは、ジョブが実行されると、ReadIDMax 関数で読み取ったシリアル番号を送信する際に IPsec ルールを適用します。

IPsec の設定

  1. 設定を開始するには、[ネットワークの設定] ダイアログを起動します。
  2. [IPsec を有効にする] チェックボックスをオンにすると、[設定] ボタンがアクティブになるため、そのボタンをクリックして [IPsec ルール] ダイアログを起動します。
  3. [IPsec ルール] ダイアログでは、[追加] ボタンをクリックして最低 1 つの新規ルールを作成します。これによって、[IPsec ルールの設定] ダイアログが起動します。
  4. [IPsec ルールの設定] ダイアログで、[デバイス] タブ、[プロトコルおよびポート] タブ、[セキュリティ] タブの順に設定を行います。
  5. 設定を完了したら、[OK] ボタンをクリックして [IPsec ルールの設定] ダイアログを閉じます。次に、[IPsec ルール] ダイアログに戻ると、ルールのペアが表示されています。このダイアログでは、新規ルールの追加、既存のルールの編集または削除を行うことができます。
  6. IPsec ルールは、proc.set ファイルに格納されます。複数の In-Sight ビジョンシステムでルールを共有する場合は、[クローン作成] ダイアログの [IPsec 設定のみクローンを作成] オプションを使用して、ルールを複数のビジョンシステムにコピーします。
  7. [ソース] または [処理先] デバイスのいずれかを「This PC」に設定してルールを作成した場合、In-Sight Explorer は、ビジョンシステムと PC の両方に同時にルールを作成します。PC に格納されている IPsec ルールを .ipsec ファイルとしてインポートまたはエクスポートして、設定時間を保存するには、[オプション] ダイアログの [IPsec ルール] パネルを使用します。
注意:　In-Sight ビジョンシステムで IPsec を有効にした後、ビジョンシステムの電源が再投入され、In-Sight Explorer がビジョンシステムに再接続するまでに数分間かかることがあります。ビジョンシステムに再接続するには、以下の手順を実行します。
  1. ビジョンシステムの電源の再投入が完了した後、In-Sight Explorer がビジョンシステムへの接続を試行している間に、Windows の [ローカル セキュリティ ポリシー] ダイアログ (Windows の [スタート] メニュー→ [コントロール パネル] → [システムとセキュリティ] → [管理ツール]) に移動します。
  2. [ローカル セキュリティ ポリシー] ダイアログで、[ローカル コンピューター] オプションの [IP セキュリティ ポリシー] をダブルクリックします。
  3. [IPSec ルール] オプションを右クリックして、[割り当ての解除] を選択します。
  4. [IPSec ルール] オプションをもう一度右クリックして、[割り当て] を選択します。
  5. 数秒すると、In-Sight Explorer がビジョンシステムに再接続します。

[IPsec ルール] ダイアログを表示するには

  1. [センサ] メニューで、[ネットワークの設定] をクリックします。
  2. [ネットワークの設定] ダイアログで、[IPsec を有効にする] チェックボックスをオンにし、チェックボックスの右側にある [設定] ボタンをアクティブにします。
  3. [設定] ボタンをクリックして、[IPsec ルール] ダイアログを起動します。

[IPsec ルール] ダイアログの設定項目

IPsec が追加されると、自動的にルールの「ペア」が作成されます。1 つはデータの送信時に使用され、もう 1 つはデータの受信時に使用されます。In-Sight Explorer では 16 個のルールペアを作成でき、それぞれの送信/受信ルールが [IPsec ルール] ダイアログに表示されます (16 個のルールペアを追加すると、全ルールは 32 個になります)。ルールを削除すると、常に送信/受信の両方のルールが削除されます。ルールの順序を変更した場合は、ルールペアが両方とも移動されたことを確認してください。そうでない場合は、In-Sight ビジョンシステムなどの 1 台のデバイスが安全ではなくなり、2 台のデバイス間で通信ができなくなります。

  • [追加]: [IPsec ルール] の表に新しいエントリを作成し、[IPsec ルールの設定] ダイアログを起動します。最大 16 個のルールペアを追加して設定できます。
  • [編集]:　[IPsec ルール] の表にある既存のエントリを変更します。リストからエントリを選択して [編集] ボタンをクリックし、[IPsec ルールの設定] ダイアログを起動します。
  • [削除]:　[IPsec ルール] の表からルールを削除します。削除するルールを選択して、[削除] ボタンをクリックします。
  • [すべて削除]:　[IPsec ルール] の表からすべてのルールを削除します。
  • [上へ] および [下へ] キー:　表で選択したルールを上または下へ移動します。ルールの順序は、In-Sight ファームウェアがルールを処理する順序を示します。IP トラフィックが発生すると、In-Sight ファームウェアは、リストの最初にあるルールから順序に従って、トラフィックを調べます。ルールの順序を変更したときは、ルールペアが両方ともに現在の順序に移動されたことを確認してください。そうでない場合、ルールは正常に実行されません。


[SLMP スキャナ設定] ダイアログ

In-Sight Explorer GUI リファレンス

[SLMP スキャナ設定] ダイアログでは、三菱電機 PLC およびモーションコントローラ (MC) と通信する In-Sight ビジョンシステムを設定します。

[SLMP スキャナ設定] ダイアログを表示するには

  1. [ネットワークの設定] ダイアログで [リアルタイムイーサネットプロトコル] の [SLMP スキャナ] オプションをオンにして、[設定] ボタンを押します。

[SLMP スキャナ設定] ダイアログの [設定] および [デバイスのアドレス指定] タブの設定項目

[設定] タブ

[設定] タブは、In-Sight ビジョンシステムと三菱電機 PLC/MC の間の接続を確立するのに必要な接続情報を設定するために使用されます。

注意: 三菱電機 ネットワーク設定の詳細については、『MELSEC Communication Protocol Reference Manual』を参照してください。

  • [コントローラタイプ]:　通信する三菱電機 PLC/MC のタイプを指定します。[Q/L シリーズ (3E フレーム)] または [FX シリーズ (1E フレーム)]。デフォルト = [Q/L シリーズ (3E フレーム)]。
  • [IP アドレス]:　In-Sight ビジョンシステムの接続先の PLC の IP アドレスを指定します。

  • [ポート番号]:　PLC が使用する SLMP チャネルの TCP ポート番号を 10 進値 ([10 進数]: 1 ～ 65535) または 16 進値 ([16 進数]: 1 ～ FFFF) 形式で指定します (デフォルト = 12288 ([10 進数]))。

    注意:
    • この値は、三菱電機 PLC/MC の [SLMP Port] で指定した [Host Port] の設定に一致している必要があります。
    • [ポート番号] の形式は、In-Sight Explorer を閉じたときに 10 進値 ([10 進数]) にリセットされます。
  • [タイムアウト (ms)]:　PLC から SLMP メッセージへの応答用のタイムアウトをミリ秒単位で指定します (5 ～ 30000、デフォルト = 1000)。
  • [ポーリング間隔 (ms)]:　PLC 上のビジョンコントロールブロックの連続するポーリング間の時間をミリ秒単位で指定します (5 ～ 30000、デフォルト = 1000)。
  • [リモートステーションに接続]:　デフォルトでは、このチェックボックスはオフにされています。この場合、In-Sight ビジョンシステムは、入力した IP アドレスで指定した Ethernet モジュールを使用して、直接 PLC/MC に接続されています。
    • このチェックボックスをオンにして、[コントローラタイプ] で [Q/L シリーズ (3E フレーム)] を選択すると、設定項目 [ネットワーク番号]、[PC 番号]、および [書込み先モジュール] が有効になります。
    • このチェックボックスをオンにして、[コントローラタイプ] で [FX シリーズ (1E フレーム)] を選択すると、設定項目 [PC 番号] が有効になります。
  • [ネットワーク番号]:　通信を行うのに使用する SLMP ネットワーク番号を指定します (0 ～ 239、デフォルト = 0、0 = ローカルネットワーク)。

  • [PC 番号 (16 進数)]:　指定した処理先モジュールのネットワーク上のステーション ID を 16 進値で指定します (0x1 ～ 0x78 = CC-Link IE フィールドネットワークアダプタ上のステーション、0x7E = CC-Link IE フィールドネットワーク上のマスタステーション、0xFF = ローカルステーションへの直接接続、デフォルト = 0xFF)。

  • [書込み先モジュール]:　ビジョンシステムの接続先のデバイスモジュールの ID (0x3FF = ローカルステーション、0x3D0 = 制御システム CPU、0x3D1 = スタンバイシステム CPU、0x3D2 = システム A CPU、0x3D3 = システム B CPU、0x3E0 = CPU 1、0x3E1 = CPU 2、0x3E2 = CPU 3、0x3E3 = CPU 4、デフォルト = 0x3FF)。
  • [リセット] ボタン:　[リセット] ボタンを押すと、値がすべてデフォルト設定値にリストアされます。
  • [テスト接続] ボタン:　[テスト接続] ボタンは、In-Sight ビジョンシステムと三菱電機 PLC の間の SLMP 経由の「テスト」接続を確立するために使用されます。[テスト接続] ボタンを押すと接続が開始され、接続を確立する試行が実行されます。30 秒後、タイムアウトになるまでに接続が確立されないか、またはエラー状態になった場合は、SLMP によってエラーを報告するエラーメッセージが表示されます。

注意:　[SLMP スキャナ設定] ダイアログで値を変更したにもかかわらず、ビジョンシステムで SLMP が有効にならない場合は、ビジョンシステムを再起動して SLMP を有効にする必要があることを示すメッセージが表示されます。この場合は、ビジョンシステムを再起動して SLMP を有効にする必要があります。

[デバイスのアドレス指定] タブ

[デバイスのアドレス指定] タブは、PLC/MC のデバイスアドレス、および In-Sight ビジョンシステムから三菱電機 PLC/MC に通信されるさまざまなデータブロックのサイズを設定するために使用されます。デバイスタイプとデータブロックのサイズは、[設定] タブで定義した [コントローラタイプ] ([Q/L シリーズ] または [FX シリーズ]) に応じて異なります。

  • [名前] 列:　PLC/MC との間で通信されるデータブロックの名前を指定します (読み取り専用)。
  • [選択中のデバイス] 列: データブロックの読み取りまたは書き込みに使用される PLC デバイスを指定します。使用可能な PLC/MC デバイスは次のとおりです。
    • [Q/L シリーズ]: X - 入力リレー、Y - 出力リレー、M - 内部リレー、L - ラッチリレー、F - アナンシエータ、B - リンクリレー、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ。
    • [FX シリーズ]:　X - 入力リレー、Y - 出力リレー、M - 内部リレー、D - データレジスタ、R - 拡張レジスタ、S - ステートリレー。
  • [オフセット] 列: データブロックの読み取りまたは書き込みに使用されるデバイステーブルのオフセットを指定します。オフセット値は、[選択中のデバイス] のタイプに応じて、10 進値、16 進値、または 8 進値で入力する必要があります。
    • Q/L シリーズ
      • 10 進値:　M - 内部リレー、L - ラッチリレー、F - アナンシエータ、D - データレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ。
      • 16 進値:　X - 入力リレー、Y - 出力リレー、B - リンクリレー、W - リンクレジスタ。
    • FX シリーズ
      • 10 進値:　M - 内部リレー、D - データレジスタ、R - 拡張レジスタ、S - ステートリレー。
      • 8 進値:　X - 入力リレー、Y - 出力リレー。
  • [デバイス数] 列:　PLC/MC と通信されるデータブロックのサイズを指定します。サイズは、PLC/MC「デバイス」で使用される単位で表されます (ワードまたはビットのいずれか)。固定サイズでないデータブロック、または参照した FormatInputBuffer または FormatOutputBuffer 関数によってサイズが自動的に設定されるデータブロックの場合にのみ設定可能です。[入力ブロック]、[出力ブロック]、[コマンド]、[コマンド結果] の最大データサイズは、選択した [コントローラタイプ] ([Q/L シリーズ] または [FX シリーズ]) に応じて異なります。

Q/L シリーズ

名前 | 選択中のデバイス | オフセット | デバイス数 | 説明
コントロール | なし (デフォルト)、X - 入力リレー、Y - 出力リレー、M - 内部リレー、L - ラッチリレー、F - アナンシエータ、B - リンクリレー、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ | 0 ～ | 32 (読み取り専用) | ビジョンコントロールの PLC 先頭アドレス。
ステータス | なし (デフォルト)、X - 入力リレー、Y - 出力リレー、M - 内部リレー、L - ラッチリレー、F - アナンシエータ、B - リンクリレー、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ |  | 32 (読み取り専用) | ビジョンステータスの PLC 先頭アドレス。
入力ブロック | なし (デフォルト)、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ |  | 2 つのデバイス1 + 入力データ長 (ワード単位) (最大: 960 ワード) | 検査結果の PLC 先頭アドレス。
出力ブロック | なし (デフォルト)、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ |  | 5 つのデバイス2 + 出力データ長 (ワード単位) (最大: 960 ワード) | ユーザデータの PLC 先頭アドレス。
コマンド | なし (デフォルト)、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ |  | 0 ～ 960 (デフォルト = 0) | コマンド文字列の PLC 先頭アドレス。
コマンド結果 | なし (デフォルト)、D - データレジスタ、W - リンクレジスタ、R - ファイルブロックレジスタ、ZR - ファイルレジスタ |  | 0 ～ 960 (デフォルト = 0) | コマンド結果データの PLC 先頭アドレス。
1 2 つのデバイス (4 バイト/2 ワード) は、[Job Load ID] と [User Length] で使用します。 2 5 つのデバイス (10 バイト/5 ワード) は、[Job ID]、[Acquisition ID]、[Inspection ID]、[Inspection Result Code]、[Inspection Result Length] で使用します。

FX シリーズ

名前 | 選択中のデバイス | オフセット | デバイス数 | 説明
コントロール | なし (デフォルト)、X - 入力リレー、Y - 出力リレー、M - 内部リレー、D - データレジスタ、R - 拡張レジスタ、S - ステートリレー | 0 ～ | 32 (読み取り専用) | ビジョンコントロールの PLC 先頭アドレス。
ステータス | なし (デフォルト)、X - 入力リレー、Y - 出力リレー、M - 内部リレー、D - データレジスタ、R - 拡張レジスタ、S - ステートリレー |  | 32 (読み取り専用) | ビジョンステータスデータブロックの PLC 先頭アドレス。
入力ブロック | なし (デフォルト)、D - データレジスタ、R - 拡張レジスタ |  | 2 つのデバイス1 + 入力データ長 (ワード単位) (最大: 64 ワード) | 検査結果の PLC 先頭アドレス。
出力ブロック | なし (デフォルト)、D - データレジスタ、R - 拡張レジスタ |  | 5 つのデバイス2 + 出力データ長 (ワード単位) (最大: 64 ワード) | ユーザデータの PLC 先頭アドレス。
コマンド | なし (デフォルト)、D - データレジスタ、R - 拡張レジスタ |  | 0 ～ 64 (デフォルト = 0) | コマンド文字列の PLC 先頭アドレス。
コマンド結果 | なし (デフォルト)、D - データレジスタ、R - 拡張レジスタ |  | 0 ～ 64 (デフォルト = 0) | コマンド結果データの PLC 先頭アドレス。
1 2 つのデバイス (4 バイト/2 ワード) は、[Job Load ID] と [User Length] で使用します。 2 5 つのデバイス (10 バイト/5 ワード) は、[Job ID]、[Acquisition ID]、[Inspection ID]、[Inspection Result Code]、[Inspection Result Length] で使用します。

注意:
  • データブロックの [選択中のデバイス] パラメータが [なし] に設定されている場合、PLC との間でデータブロックは通信されません。
  • 入力および出力データブロックは、コントロールおよびステータスワードデータでインライン通信されるため、TN および CN タイプのデバイスはサポートされていません。
  • Q/L シリーズでは、現在使用可能な大部分のメッセージフレーム形式を処理することができます (3E フレーム)。ただし、FX シリーズでは、最初の世代のプロトコルメッセージフレーム (1E フレーム) のみを処理することができます。このため、1 パケット内で送信可能なデータ量は制限されます。

最大データサイズ

Q/L シリーズ | FX シリーズ
バッチ読み取りビット数 | 7904 ビット | 256 ビット
バッチ読み取りワード数 | 960 ワード | 64 ワード
バッチ書き込みビット数 | 7904 ビット | 160 ビット
バッチ書き込みワード数 | 690 ワード | 64 ワード

関連項目

SLMP 通信

ネットワークのトラブルシューティング


[マルチビュー接続] ダイアログ

センサメニュー

In-Sight Explorer GUI リファレンス

[マルチビュー接続] ダイアログでは、1 つの In-Sight ビジョンシステムまたはエミュレータに接続できるアプリケーションの数を設定します。

マルチビュー接続機能は、VisionView® と In-Sight Explorer をサポートしています。In-Sight ビジョンシステムに VisionView のみを接続する場合は、VisionView アプリケーションを最大 5 つ接続することができます。ビジョンシステムに VisionView と In-Sight Explorer を両方接続する場合は、In-Sight Explorer アプリケーションを 1 つ、VisionView を最大 4 つ接続することができます。

注意:マルチビュー接続機能を使用するには、以下のファームウェアおよびソフトウェアバージョンが必要です。
  • ファームウェアバージョン 4.9.0 以降を実行している In-Sight ビジョンシステム
  • VisionView アプリケーションソフトウェアバージョン 1.6.3 以降
  • [マルチビュー接続] ダイアログの表示
  • [マルチビュー接続] ダイアログの設定項目
  • In-Sight ビジョンシステムへの複数のアプリケーションの接続

[マルチビュー接続] ダイアログの表示

  • [センサ] メニューで、[ビュー接続] をクリックします。

[マルチビュー接続] ダイアログの設定項目

スライダコントロールを使用して、In-Sight ビジョンシステムまたはエミュレータに接続可能なアプリケーションの数 (1 ～ 5、デフォルト = 1) を設定することができます。変更を有効にするには、ビジョンシステムを再起動する必要があります。

注意:
  • マルチビュー接続機能を VisionView アプリケーションで利用するには、VisionView アプリケーションをバージョン 1.6.3 にアップグレードする必要があります。ただし、VisionView 700 オペレータインタフェースパネルは、VisionView 1.6.3 をサポートしていません。
  • [ビュー接続数] を 2 以上に設定すると、自動的に追加の画像バッファが In-Sight ビジョンシステムに割り当てられます。例えば、[ビュー接続数] が 2 に設定され、[画像バッファ] ダイアログで [画像バッファ] が 3 に設定されている場合、5 つの画像バッファがビジョンシステムに割り当てられます。画像バッファの合計数がビジョンシステムで利用可能な画像バッファの最大数を超える場合は、画像バッファの最大数がビジョンシステムに割り当てられます。
  • ビュー接続数を増やすと、ジョブのロードや画像の取り込みなど、そのほかのタスクで使用できる RAM の量が減り、パフォーマンスが低下する場合があります。

In-Sight ビジョンシステムへの複数のアプリケーションの接続

In-Sight ビジョンシステムに 2 つ以上のアプリケーションを接続する場合、ビュー接続には、標準ビュー接続とビュー専用接続の 2 つのタイプがあります。

  • 標準ビュー接続: 任意のタイプのアクセス権限 (フルアクセス、プロテクト、ロック) を許可します。通常、対話型コントロールの編集、ビジョンシステムのオンライン/オフラインの切り替え、新規ジョブのロード、ビジョンシステムのトリガなど、さまざまな実行モード (= フルアクセス、プロテクトアクセスレベル) のアクションを行うアプリケーションで、この接続を使用します。この接続は 1 つのアプリケーションのみが使用できます。

    注意: [ビュー接続数] を 1 に設定した場合は、標準ビュー接続が使用されます。

  • ビュー専用接続: ロックアクセス権限のみを許可します。この接続では、アプリケーションはビジョンシステムの動作を表示することのみが可能です。対話型コントロールはすべて無効になり、フィルムストリップ、[トリガ]、[オンライン/オフライン]、[フォーカス] などのボタンはすべて表示されません。この接続は VisionView でのみ使用します。
注意:
  • 接続ユーザ名は、VisionView の [センサの設定] 画面の [ユーザ名] フィールドで設定します。接続ユーザ名が <デフォルト> または空白のままの場合、VisionView は、フルアクセスレベルを持つデフォルトユーザ名の「admin」を自動的に使用します。
  • 使用できる VisionView 実行モードのアクションは、各 VisionView で有効にされているオペレータコントロールによって異なります。
  • VisionView の詳細については、VisionView Help® ファイルを参照してください。

VisionView のみの接続

注意: この節の例と図は、の In-Sight ビジョンシステムに VisionView アプリケーションのみが接続されていて、[ビュー接続数] が 5 に設定されていることを前提にしています。

  1. In-Sight ビジョンシステムに複数の VisionView アプリケーションが接続されている場合、標準ビュー接続を使用できるのは 1 つの VisionView のみです。ほかの VisionView アプリケーションはビュー専用接続になります。次の図では、VisionView 1 は標準ビュー接続 (緑) です。VisionView 2 ～ 5 はビュー専用接続 (赤) です。

  2. フルアクセスまたはプロテクト権限を持つ VisionView アプリケーションが 2 つ以上、ビジョンシステムへの標準ビュー接続を確立しようとすると、最初に接続した VisionView アプリケーションが標準ビュー接続になります。

    次の図では、VisionView 1 が、フルアクセスまたはプロテクト権限による標準ビュー接続 (緑) を既に確立しています。VisionView 2 が標準ビュー接続によるビジョンシステムへの接続を試行しますが、この接続は自動的にロック権限によるビュー専用接続 (赤) に変更されます。

    変更後、VisionView 2 では [強制接続] ボタンと [ビューのみ] バナーが表示されます。一方、対話型コントロールはすべて無効になり、フィルムストリップ、[トリガ]、[オンライン/オフライン]、[フォーカス] などのボタンはすべて表示されません。

    注意:
    • [強制接続] ボタンを表示するには、[オペレータコントロール] 画面の [強制接続] チェックボックスをオンにする必要があります。
    • [強制接続] ボタンは、フルアクセスまたはプロテクト権限による標準ビュー接続が、ロック権限によるビュー専用接続に変更されたときに表示されます。VisionView がロックアクセスレベルの場合、[強制接続] ボタンは表示されません。

  3. VisionView 2 で [強制接続] ボタンを押すと、ビジョンシステムへの標準ビュー接続を再確立します。再確立されると、VisionView 2 はフルアクセスまたはプロテクト権限になり、さまざまな実行モードアクションを行うことができます。一方、VisionView 1 の接続は、ロック権限によるビュー専用接続に自動的に変更されます。

    注意: 既に最大数のアプリケーションが接続されているために、VisionView が In-Sight ビジョンシステムへの接続に失敗した場合も、[強制接続] ボタンが表示されます。この場合、[強制接続] ボタンを押すと、VisionView はビジョンシステムへの標準接続を再確立します。一方、ほかの VisionView はビジョンシステムから切断されます。

VisionView および In-Sight Explorer の接続

注意: この節の例は、VisionView と In-Sight Explorer の両方を、同じ In-Sight ビジョンシステムに接続することを前提に記述されています。

  1. VisionView アプリケーションと In-Sight Explorer アプリケーションの両方を同じ In-Sight ビジョンシステムに接続した場合、In-Sight Explorer アプリケーションが常に標準ビュー接続になります。VisionView アプリケーションはすべてビュー専用接続になります。

    注意: ビジョンシステムに同時に接続できる In-Sight Explorer アプリケーションは 1 つだけです。

  2. ビジョンシステムに既に In-Sight Explorer が接続されているときに、VisionView アプリケーションがフルアクセスまたはプロテクト権限による標準ビュー接続を確立しようとすると、その接続は自動的にロック権限によるビュー専用接続に変更されます。

    変更後、VisionView アプリケーションでは [強制接続] ボタンと [ビューのみ] バナーが表示されます。一方、対話型コントロールはすべて無効になり、フィルムストリップ、[トリガ]、[オンライン/オフライン]、[フォーカス] などのボタンはすべて表示されません。

    注意:
    • [強制接続] ボタンを表示するには、[オペレータコントロール] 画面の [強制接続] チェックボックスをオンにする必要があります。
    • [強制接続] ボタンは、フルアクセスまたはプロテクト権限による標準ビュー接続が、ロック権限によるビュー専用接続に変更されたときに表示されます。VisionView がロックアクセスレベルの場合、[強制接続] ボタンは表示されません。

  3. VisionView アプリケーションで [強制接続] ボタンを押すと、ビジョンシステムへの標準ビュー接続を再確立します。再確立されると、VisionView アプリケーションはフルアクセスまたはプロテクト権限になり、さまざまな実行モードアクションを行うことができます。一方、In-Sight Explorer は自動的にビジョンシステムから切断されます。

    注意: 既に最大数のアプリケーションが接続されているために、VisionView が In-Sight ビジョンシステムへの接続に失敗した場合も、[強制接続] ボタンが表示されます。この場合、[強制接続] ボタンを押すと、VisionView はビジョンシステムへの標準接続を再確立します。一方、ほかの VisionView はビジョンシステムから切断されます。

関連項目

オンライン/オフライン

[ユーザアクセス設定] ダイアログ

フィルムストリップ


[POWERLINK の設定] ダイアログ

[センサ] メニュー

In-Sight Explorer GUI リファレンス

POWERLINK リアルタイム Ethernet プロトコルを設定する際に、In-Sight ビジョンシステムが POWERLINK 通信で使用する [Node ID] を設定します。

  • [POWERLINK Settings] ダイアログの表示
  • [POWERLINK の設定] ダイアログの設定項目
  • 関連項目

[POWERLINK の設定] ダイアログの表示

  1. [リアルタイムイーサネットプロトコル] グループボックスの [ネットワークの設定] ダイアログで、[POWERLINK] を選択します。
  2. これによって、[POWERLINK] の右側にある [設定] ボタンが有効になります。
  3. [設定] ボタンをクリックして、[POWERLINK の設定] ダイアログを起動します。

[POWERLINK の設定] ダイアログの設定項目

  • [ノード ID]: POWERLINK ネットワーク上にある In-Sight ビジョンシステムのノード ID を指定します (1 ～ 239。デフォルト = 1)。POWERLINK ネットワーク上にあるすべてのデバイスは、ノード ID で識別されます。この ID を固定 ID サブネットと結合し (192.168.100<NodeID>)、ネットワーク上の各デバイスに対して POWERLINK ネットワーク内の固定 IP アドレスを指定します。

ノード ID を POWERLINK ネットワークの NAT IP アドレスと組み合わせて使用することによって、POWERLINK ネットワークの外側にあるほかのデバイスと通信することができます。例えば、デフォルトの NAT IP アドレスは 192.168.101.0 です。ノード ID が 26 である In-Sight ビジョンシステムと通信するには、NAT IP アドレスをノード ID と結合し、192.168.101.26 とします。

関連項目

  • POWERLINK 通信
  • POWERLINK ファクトリインタフェース


[PROFINET の設定] ダイアログ

In-Sight Explorer GUI リファレンス

[PROFINET の設定] ダイアログでは、Siemens PLC と通信する In-Sight ビジョンシステムを設定します。

[PROFINET の設定] ダイアログを表示するには

  1. [ネットワークの設定] ダイアログ で [リアルタイムイーサネットプロトコル] の [PROFINET] オプションをオンにして、[設定] ボタンを押します。

[PROFINET の設定] ダイアログの設定項目

  • [PROFINET ステーション名を有効にする]: このチェックボックスをオンにすると、[ステーション名] を使用して、In-Sight ビジョンシステムが通信を行うマスタ PROFINET デバイスのホスト名を定義することができます。この設定はデフォルトで無効となっています。
  • [ステーション名]: ビジョンシステムが PROFINET プロトコルを介して通信を行うマスタ PROFINET デバイスの名前を指定します。ステーション名の最大長は 239 文字です。ステーションの [ステーション名] フィールドのシンタックスは、次のルールを満たす必要があります。
  • ピリオド (.) で区切られた 1 つ以上のラベルである。
  • 全長が 1 ～ 239 文字の範囲である。
  • 全ラベル長が 1 ～ 63 文字の範囲である。
  • ラベルは、a ～ z、0 ～ 9 の文字タイプから構成される必要がある。
  • ラベルは、ハイフンマイナス文字 (-) で始めることはできない。
  • ラベルは、ハイフンマイナス文字 (-) で終わることはできない。
  • 最初のラベルは、「port-xyz」または「port-xyz-abcde」で始めることはできない (「a、b、c、d、e、x、y、または z」 = 「0 ～ 9」)。
  • ステーション名は「n.n.n.n」の形式にすることはできない (「n」 = 0 ～ 999)。
  • ラベルは、「xn-」のみで始める (RFC 3490 が適用される場合)。

関連項目

ネットワークのトラブルシューティング

PROFINET - ネットワーク上の Siemens PLC との通信

PROFINET I/O モジュールリファレンス

PROFINET - Siemens PLC でのレコードの使用


[管理者アカウント] ダイアログ

In-Sight Explorer GUI リファレンス

[管理者アカウント] ダイアログを使用すると、標準ユーザは管理者権限が必要なレジストリの一部エリアに書き込むことが可能となります。Windows に標準ユーザとしてログオンしている場合、レジストリに書き込むことはできません。しかし、In-Sight Explorer では、オフラインプログラミングキーを入力したり、[Windows のログオン時に In-Sight Explorer を起動する] オプションを変更したりする場合に、レジストリへの書き込みが必要となります。そのような場合、Windows Vista またはそれ以降を使用し、ユーザアカウント制御 (UAC) をオフに設定すると、[管理者アカウント] ダイアログが表示され、管理者資格を入力することにより、レジストリに書き込むことができるようになります。

注:
  • オフラインプログラミングキーを入力したり、[Windows のログオン時に In-Sight Explorer を起動する] オプションを変更したりしたときに、Windows の [別のユーザとして実行] ダイアログが表示されるのは、以下の状態のときです。管理者資格を提供してから、続行してください。
    • Windows Vista 以降を使用し、Windows に標準ユーザとしてログオンし、UAC (ユーザアカウント制御) をオンに設定している場合。
    • Windows XP を使用し、Windows に標準ユーザとしてログオンしている場合。
  • Windows Vista 以降を使用し、Windows に管理者としてログオンし、UAC (ユーザアカウント制御) をオンにしている場合に、オフラインプログラミングキーを入力したり、[Windows のログオン時に In-Sight Explorer を起動する] オプションを変更したりしようとすると、有効/無効を指定するダイアログが開きます。[無効] を選択してから、続行してください。
  • 標準ユーザアクセスをサポートするため、次のデフォルトフォルダロケーションが変更となりました。In-Sight Explorer 4.5.0 以降では、[スタート] メニューから次のフォルダにアクセス可能です。

    • フォルダ In-Sight Explorer 4.4.x 以前 In-Sight Explorer 4.5.0 以降
    サンプルジョブ

    C:\Program Files\Cognex\In-Sight\In-Sight Explorer x.x.x\Sample Jobs
    • Windows Vista 以降:
      C:\Users\Public\Documents\Cognex\In-Sight\In-Sight Explorerx.x.x

    • Windows XP:
      C:\Documents and Settings\All Users\Documents\Cognex\In-Sight\In-Sight Explorer x.x.x
    サンプル
    プロジェクト     		C:\Program Files\Cognex\In-Sight\In-Sight Explorer x.x.x\Sample Projects
    • Windows Vista 以降:
      C:\Users\Public\Documents\Cognex\In-Sight Sample Projects x.x.x
    • Windows XP:
      C:\Documents and Settings\All Users\Documents\Cognex\In-Sight\In-Sight Sample Projects x.x.x

[管理者アカウント] ダイアログのコントロール

  • ドメイン名: ネットワークドメインを指定します。
  • ユーザ名: 管理者のユーザ名を指定します。
  • パスワード: 指定したユーザ名のパスワードを指定します。

注　有効な管理者資格が提供されると、そのステータスは In-Sight Explorer を閉じるまで続きます。


MapSpec

コロン文字 (:) で区切られた指定子のリストから構成されるデータマッピングを指定します。各指定子は、開始バイトとデータ型コードの 2 つの部分から構成されます。さまざまなデータ型コードを、次の表に示します。

コード | データ型
i | 8 ビットの整数
u | 8 ビットの符号なし整数
il | 16 ビットの整数
ul | 16 ビットの符号なし整数
d | 32 ビットの符号なし整数
f | 32 ビットの浮動小数点数
s | テキスト文字列


基本色

関数の引数として色を使用するには、使用する色に対応するインデックス番号を入力します。

Index | 色名 | (R, G, B) | サンプル
0 | デフォルト |  |
1 | 暗い赤 | (128,0,0) |
2 | 暗い緑 | (0,128,0) |
3 | 暗い黄色 | (128,128,0) |
4 | 暗い青 | (0,0,128) |
5 | 暗い赤紫 | (128,0,128) |
6 | 暗い水色 | (0,128,128) |
7 | 赤（IGM デフォルト） | (255,0,0) |
8 | 緑 | (0,255,0) |
9 | 黄色 | (255,255,0) |
10 | 青 | (0,0,255) |
11 | 赤紫 | (255,0,255) |
12 | 水色 | (0,255,255) |
13 | 暗い灰色 | (128,128,128) |
14 | 灰色 | (192,192,192) |
15 | Black | (0,0,0) |
16 | 白 | (255,255,255) |


Acquire

In-Sight センサから新しい画像を取り込みます。新しい画像を取り込むと、In-Sight はスプレッドシートを評価し、スプレッドシートの値を更新します。

AcquireImage 関数のトピックを参照してください


アクティブセル

アクティブセルと呼ばれるセルは、スプレッドシート内で現在ハイライトされているセルのことです。

例: 次のスプレッドシートでは、B2 がアクティブセルであり、黒で縁取られています。 アクティブセルのアドレスを示すために、アクティブな列 (B) およびアクティブな行 (2) のヘッダは、両方とも橙色でハイライトされています。


ドーナツ状

円またはリングのような形状です。


バーコードエレメント

バーコードを構成するバーやスペースを総称してエレメントと呼びます。


ベイヤーパターン

白黒の画像センサに色感度を追加するためには、センサの上にカラーモザイクフィルタを適用することが一般的な方法です。ほとんどの場合、赤 - 緑 - 青(RGB)の 3 色のパターンが使用されます。In-Sight カラーセンサでは、RGB カラーモザイクフィルタパターンとして、ベイヤーパターンが使用されます。ベイヤーパターンを使用すると、特定のカラーフィルタによって、各ピクセルが特定のパターンで覆われます。次のように、ピクセルの総数の半分が緑(G)に割り当てられ、総数の 4 分の 1 が、赤(R)および青(B)の両方に割り当てられます。

各カラーピクセルは、赤、緑、および青の、3 つの個別の色成分によって構成されています。各ピクセルで欠けている色は、各位置の周辺ピクセルを使用して補間されます。例えば、あるピクセルに緑のフィルタが適用されている場合、緑成分の値は既知ですが、赤成分および青成分の値は、赤のフィルタおよび青のフィルタが適用された周辺ピクセルの値の平均から計算する必要があります。ソフトウェア補間により、2 つの未知の色成分について、0～255 の値が各ピクセルに割り当てられます。1 つのピクセルで 3 つの色成分の値をすべて計算する方法の例を次に示します。

 | R1 (78) |
B1 (42) | G1 (218) | B2 (48)
 | R2 (82) |

ピクセル G1 の各色成分の値:

  • 赤成分の値 =
  • 緑成分の値 = G1 の値 = 218
  • 青成分の値 =

この例では、ピクセル G1 の RGB 成分の値は、(80, 218, 45) です。

 | R1 (236) | G2 (218) | R3 (242)
B1 | G2 (218) | B2 (60) | G3 (222)
 | R2 (238) | G4 (222) | R4 (244)

各ピクセルに出力値が与えられている場合の、ピクセル B2 の各色成分の値:

  • 赤成分の値 =
  • 緑成分の値 =
  • 青成分の値 = B2 の値 = 60

この例では、ピクセル B2 の RGB 成分の値は、(240, 220, 60) です。


ブロブの面積の例

ブロブの面積は、ブロブに含まれているピクセルの数をカウントすることによって計算されます。 次の画像で、拡大されたブロブを考えてみます。

ピクセルをカウントすることによって、このブロブは 8 ピクセルの面積を持つことがわかります。


ブロブの重心の例

ブロブの重心は、ブロブの均衡点を表します。均質な材料の薄板がブロブの形に切り抜かれた場合に、そのブロブが均衡する点が重心です。実際には、ブロブの重心はブロブそのものの内側には存在しない場合もあることに注意してください。

次の画像に示されている黒い領域は、ExtractBlobs 関数によって識別されたブロブであると仮定します。赤いドットが、ブロブの重心を表します。

重心の行座標および列座標は、それぞれ、GetRow および GetCol データアクセス関数によって返されます。


ブロブの周囲長の例

次の画像で、8 ピクセルの領域を持つ拡大されたブロブを考えてみます。

ブロブの周囲長は、ブロブに含まれている各ピクセルの外部ピクセルエッジの数をカウントすることによって計算されます。 この場合、ブロブには周囲長を構成する 12 の外部エッジがあります。


キャリブレーションの精度

キャリブレーションの精度は、次のような多くの要素に依存します。

  • 対象物の検査する部分。滑らかなエッジが最適です。粗くぎざぎざのエッジでは精度が低下します。
  • キャリブレーショングリッドの印刷品質または製造品質。標準のインクジェットまたはレーザプリンタで印刷されたキャリブレーショングリッドでは精度が制限されます。
  • レンズの品質。テレセントリック特性を持つ高品質レンズは最適な結果を生成し、最低限の補正しか必要としません。
  • In-Sight ビジョンシステムの取り付け方法。ビジョンシステムが振動する部分に取り付けられると、時間の経過とともに移動することがあります。
  • 画像の品質。画像のゲインが超過しているとピクセルにジッタが生じ、画像に過度に光が蓄積されると精度が下がります。
  • ビジョンツールの精度。エッジツールの精度は 0.25 (1/4) ピクセルですが、PatMax ツールの精度は 0.025 (1/40) ピクセルです。

これらの問題が重なり合うと精度は大幅に低下します。これらの問題は通常付加的で、相殺されることはほとんどありません。検査する部品が平らでエッジがきわめて明瞭な場合は、0.10 (1/10) ピクセルの精度が実現可能です。システムの精度を判定する唯一の方法は、テストすることです。


キャリブレーションのガイドライン

ここでは、画像をキャリブレーションするときに考慮すべき、ほかの重要な要素について説明します。

  • キャリブレーションする場合、In-Sight ビジョンシステムとレンズのセットアップ、およびセンサと取り込まれるシーンの間の物理的関係を、キャリブレーション操作とランタイム操作の両方で同一にする必要があります。このうちのいずれかが変更された場合、システムを再キャリブレーションする必要があります。したがって、キャリブレートとランタイム画像の処理の両方で、同じセンサとレンズを使用することを推奨します。
  • センサとレンズでは、元の物理セットアップおよびキャリブレーション設定を変更しないようにする必要があります。例えば、画像取り込みフォーマットの変更 (解像度の変更による) またはセンサの移動を行うと、ピクセルをワールド座標にマッピングする 2D 変換が不正になります。
  • 精度をできるだけ高め、キャリブレーションされた画像にできるだけ大きな領域が含まれるようにするには、グリッドパターンが画像領域の多くの部分を占めるようにする必要があります。少なくとも 10 行× 7 列のドットまたはグリッドインデックスを取り込むか、少なくとも 100 の特徴点を取り込むようにしてください。
  • 画像の視野が大きい場合は、小さく扱い易いキャリブレーションプレートを使用して、複数のポーズで視野全体をカバーし、画像全体をキャリブレーションできます。
  • 大幅に歪んだ画像の場合は、複数のポーズを使用して、キャリブレーション用の参照点をより多く取り込み、キャリブレーションの精度を高めることができます。
  • 照明も含め、すべての点で一貫性を維持します。
  • キャリブレーショングリッドは、対象物の検査面と同じ平面に置きます。例えば、立体的な対象物の上面を検査する場合は、キャリブレーショングリッドを同じ高さにする必要があります。

キャリブレーショングリッドのタイプ (ドットまたはチェッカボード) を選択するには、次を参照してください。

ドットグリッド

  • 比較的高い精度。最大で 0.05 (1/20) ピクセル。
  • 最大 30 度の遠近歪みを許容。
  • ノイズと一貫しない照明に対する非常に大きな許容範囲。
  • 各ドットは直径 10～50 ピクセル以上 (15 ピクセル以上のドットを使用すると、より正確な結果が得られます)。

チェッカボード

  • 高い精度。最大で 0.25 (1/40) ピクセル。
  • 最大 45 度の遠近歪みを許容。
  • ノイズと一貫しない照明に対する大きな許容範囲。
  • 各正方形の幅は 15 ピクセル以上。


セルの実行

セルの実行順序の決定

In-Sight スプレッドシートは、第 1 にセルの依存関係に従ってセルを評価することにより、セルの実行順序を決定し、第 2 にスプレッドシート内でのセルの位置により決定します。

1. セルの依存関係

セルの実行順序

3. セルの実行順序の例外

5. 実行のトリガ

1. セルの依存関係

次の例では、セル B2 と A3 の値は、A2 の値に直接依存しています。セル A4 は A3 を参照しているので、間接的に A2 に依存しています。A2 の値が変更されると、まず B2 と A3 の値が、次に A4 の値が再評価される必要があります。セルの依存関係を追跡するために、内部実行ツリーが自動的に作成されます。内部実行ツリーは、システムがオフラインのときにスプレッドシートに変更が加えられるたびに再構築されます。

例 1: 単純な依存関係ツリー

A2 = 1

A3 = A2+1

A4 = A3+1

B2 = A2+2

[プロファイラ] ダイアログから、この例における実行ツリーがわかります。

セルの値または式が変更されると、In-Sight のスプレッドシートはツリーのセルを調べて、再評価が必要なセルを決定します。この例では、A2 の値が変更されると、依存しているすべてのセル（B2、A3、および A4）を再評価する必要があります。ただし、セル B2 の式が変更されても、B2 に依存しているセルはないので、ほかのどのセルも更新する必要はありません。

2. セルの実行順序

依存関係が評価された後は、スプレッドシート内の位置によってセルが評価されます。セルは、行座標に従って（左から右に）ソートされ、次に、列座標に従って（上から下に）ソートされます。前の例では、セル A2、B2、A3、A4 の順に実行されます。2 つのセルが同じ行にある場合は、左のセルから実行されます。

[プロファイラ] から、セル A2、B2、A3、A4 の順に実行されることがわかります。

3. セルの実行順序の例外

通常のセルの実行順序の例外は、次のとおりです。

  • ReadResult および WriteResult 関数
  • クロックド関数
  • 非依存セル参照を伴う関数

スプレッドシート内の位置にかかわらず、ReadResult 関数および WriteResult 関数は実行ツリーの下の方に配置されます。ReadResult 関数はスレーブの WriteResult 関数からデータが返されるのを待つため、データを待つ時間が無駄にならないようにジョブの最後に実行されます。WriteResult 関数も、システムが次のトリガを受け取る準備ができるように、ジョブの最後の方で実行されます。

実行ツリーでは、クロックドデータ関数は、ほかのセルの古いデータにアクセスする必要があるので、常にツリーの一番上に配置されます。

セル参照を引数とする関数には、依存関係を確立しないものがあります。参照されたセルの行座標を返す Row 関数は、このような関数のひとつです。例えば、Row（A4） は、A4 の値が変更されても常に 4 を返します。

例 3: 実行順序の例外

例 1 のスプレッドシートに、次の ReadResult 関数を追加します。

A1 = ReadResult($A$0,"SYSTEM1",1000)

セル A1 はスプレッドシートの上の方にあるにもかかわらず、実行ツリーでは一番下になっていることがプロファイラからわかります。

続いて、クロックドデータ関数を追加します。

A5 = Accumulate($A$0,0,0,0)

セル A5 はデータを含むほかのセルの下にありますが、実行ツリーでは一番上になっていることに注意してください。

4. 実行のトリガ

セルは、次のときに実行されます。

  • 依存しているセルが変更されたとき。
  • AcquireImage トリガ、シリアルデータ、TCPDevice への着信パケットなどの外部イベントが発生したとき。
  • スプレッドシートのイベントのトリガ信号を送信するオペレータ I/F 関数 (Button、Checkbox、EditInt など) を実行したとき。

ほとんどのビジョンツール関数は、直接的または間接的にセル A0 の AcquireImage 関数に依存しています。新しい画像が取り込まれると常に、これらの関数が実行され、新しい値が返されます。また、画像の取り込みやほかのスプレッドシートのイベントのトリガがかけられると、スプレッドシートが更新されます。


セル

セルは、列文字と行番号によって示されるスプレッドシート内の場所です。例えば、A2 は A 列と 2 行が交差する場所です。


条件付きセル状態: 相対参照と絶対参照

条件付きセル状態の相対参照と絶対参照の違いは、セルのコンテンツをコピーして貼り付ける際に現れます。セル状態が条件付き相対参照のセルをコピーして新しい位置に貼り付ける場合、貼り付けられたセルの状態はコピーされるセルのセル参照の位置に相対的なセルの値に依存します。

一方、条件付き絶対参照に設定されたセルをコピーして新しい位置に貼り付ける場合は、どこに貼り付ける場合でも、貼り付けられたセルは常にコピー元のセル参照と同じ状態になります。

（コピーと貼り付けではなく）切り取りと貼り付けを使用すると、相対セル参照の変換は実行されず、セルの内容が単に移動します。ご注意ください。

例

条件付き相対参照セル状態の例

条件付き絶対参照セル状態の例

条件付き相対参照セル状態の例:

スプレッドシートが次のように設定されていると仮定します。

A0 = AcquireImage(...)

A2 = '有効

A3 = 1,000

B2 = '無効

B3 = 0.000

D2 = 'コピー

D3 = 37.000

E4 = '貼り付け

1. 1. セル D3 を右クリックして、[セル状態] を選択します。

2. [条件付きで有効] をクリックします。

3. 3. [有効条件の参照設定] の下で、[相対] をクリックします。

4. [セルの選択] をクリックします。

5. 5. セル A3 をダブルクリックします。

6. [OK] をクリックします。

7. セル D3 を右クリックして、[コピー] を選択します。

8. 8. セル E3 を選択します。

9. 9. [編集] メニューで、[貼り付け] をクリックします。

値 37.000 が、セル E3 に貼り付けられます。コピーされたセル D3 は有効になっているにもかかわらず、E3 は無効になっている（薄く表示されている）ことに注意してください。D3 のセル状態は A3 の値に相対的に条件付けられていたため、1 つ右のセルに「移動」して貼り付けられた E3 の状態は、B3 の値に基づいて条件付けられます。相対参照では、参照されるセルが、（左右および上下の両方で）同じ距離にあるセルに変換されます。セル B3 は値 0.000 を含んでいるため、E3 は無効になります。

セル E3 が選択された場合、相対参照セル状態 (if B3) は、[ジョブの編集] ツールバーで次のように確認できます。

つまり、B3 にゼロ以外の値が含まれている場合、E3 は 37 になります。

条件付き絶対参照セル状態の例:

前の例を拡張して、スプレッドシートにいくつかのセルを追加します。

A4 = 1,000

B4 = 0.000

D4 = 442.000

1. セル D4 を右クリックして、[セル状態] を選択します。

2. [条件付きで有効] をクリックします。

3. 3. [有効条件の参照設定] の下で、[絶対] をクリックします。

4. [セルの選択] をクリックします。

5. 5. セル A4 をダブルクリックします。

6. [OK] をクリックして、[セル状態の編集] ダイアログを閉じます。

7. セル D4 を右クリックして、[コピー] を選択します。

8. セル E4 を右クリックして、[貼り付け] を選択します。

値 442.000 が、セル E4 に貼り付けられます。コピーされたセル D4 のセル状態は A4 の値に絶対的に条件付けられていたため、E4 は有効になっていることに注意してください。絶対的に条件付けられたセル状態参照では、セルが新しい位置に貼り付けられても、参照されるセルは変換されません。

セル E4 が選択された場合、絶対参照セル状態 (if $A$4) は、[ジョブの編集] ツールバーで次のように確認できます。

つまり、A4 にゼロ以外の値が含まれている場合、E4 は 442 になります。


ピクセルの色成分

各カラーピクセルは、3 つの個別の色成分によって構成されています。これらの成分は、赤、緑、および青の組み合わせ （RGB） または色相、彩度、および明度の組み合わせ （HSI） として表されます。RGB も HSI も、ピクセルの各成分は 0～255 の値に変換されます。

RGB の場合の色は、異なる割合の赤、緑、および青の色調の組み合わせによって作成されます。この組み合わせによって、各ピクセルに特定の色が生成されます。次の例を参照してください。

この「ピクセル」の RGB 成分の値は （255, 0, 0） | この「ピクセル」の RGB 成分の値は （0, 255, 0） | この「ピクセル」の RGB 成分の値は （0, 0, 255）

この「ピクセル」の RGB 成分の値は （200, 0, 0） | この「ピクセル」の RGB 成分の値は （150, 0, 0） | この「ピクセル」の RGB 成分の値は （85, 0, 0）

HSI の場合、色の色相は、放射線の電磁スペクトルの可視部でのその色の位置に対応しています。

色相の数値への変換は、色環の作成によって実行されます。色環では、スペクトルのすべての色相が円上に配置されます。特定の色相は、色環上のその色相の位置を示す角度によって指定されます。次の図は色環を示しています。

注意: 色相の値の範囲は、0～255 を基準とします。

色の彩度は、その色に灰色または白色が混ざっている度合いです。彩度が飽和状態の場合は、純色になります。白色（または灰色）が混ざっている度合いが高くなるほど、彩度が低下します。次の図は、1 つの色相の彩度の値の範囲を示しています。

色の明度は、明るさの尺度です。色の明度は、色を構成する赤、緑、および青成分の平均値として定義されます。色相、彩度、および明度の組み合わせによって、各ピクセルの正確な色が生成されます。次の例を参照してください。

この「ピクセル」の HSI 成分の値は （0, 255, 85） | この「ピクセル」の HSI 成分の値は （85, 255, 85） | この「ピクセル」の HSI 成分の値は （170, 255, 85）


連続したリストアイテム

相互に隣接している (隣り合っている) 場合、「リストアイテムは連続している」と呼ばれます。


畳み込みカーネル

カーネルのピクセル高さと幅は、[行数] と [列数] で調整します。

カーネルの調整:

  1. 評価中のピクセルを表す、ハイライトされたボックスを選択します。そのピクセルの明度 (-255 ～ +255) にかけ合わせる値を入力します。
  2. 次に、隣接するピクセルを表すボックスを選択します。この位置のピクセルに掛け合わせる値を入力します。例えば、現在のピクセルのすぐ右隣にあるピクセルの明度に 2 を掛けるには、中央のボックスのすぐ右隣にあるボックスに 2 を入力します。
  3. 手順 2 と 3 を繰り返して、すべてのピクセルを演算します。すべてのボックスに値を入力する必要はありません。


DHCP サーバ

DHCP (Dynamic Host Configuration Protocol) サーバ

Ethernet 構成をサポートしている In-Sight デバイスが起動時に DHCP (Dynamic Host Configuration Protocol) を使用するかどうかを決定します。ローカルネットワークで DHCP サーバを使用している場合のみ、このオプションを選択します。このチェックボックスまたはボタンがオフにされている場合は、[ネットワークの設定] ダイアログまたは [センサ/デバイスをネットワークに追加] ダイアログの値を使用して TCP/IP を構成します。

注意: [ネットワークの設定] ダイアログの [DHCP サーバの使用] チェックボックスがオンのときは、[DHCP タイムアウト] を指定することができます。DHCP サーバから指定時間以内に応答がない場合、センサはネットワークサポートが無効の状態で起動します。

運用時は固定 IP アドレスを使用します。これによって、ローカルネットワークで DHCP サーバを使用する必要がなくなり、断続的な DHCP トラフィックをなくすことができます。


DNS サーバ

DNS (Domain Name System) サーバ

同じネットワーク上のホストデバイスには一意な IP アドレス番号が割り当てられますが、アドレスの共通部分は同じドメイン (例: yourcorp.com) 上のすべてのホストによって共有されます。これらの番号を記憶するのは難しいので、通常は各ホストに IP アドレスの「別名」となる [ホスト名] を割り当てます。DNS サーバは、これらのホスト名をネットワーク上で認識可能な IP アドレスに変換します。

例えば、In-Sight センサの IP アドレスが 192.168.1.2 であり、ホスト名が PRODUCTION2 とすると、[DNS サーバ] は、PRODUCTION2 は実際には指定されたアドレスの In-Sight ホストであると理解します。[DNS サーバ] フィールドでは、指定されたドメインでのホスト名から IP アドレスへの変換を解決するために、どのホストに (IP アドレスで) 問い合わせを行うかを設定します。


ドメイン

ドメインについて

ドメインは、ネットワーク上にある、IP アドレスの一部が共通したデバイスのグループです。FQDN (Fully Qualified Domain Name) は、ホスト名とトップレベルのドメインを含むドメイン名です。例えば、www.yourdomain.com は完全修飾ドメインであり、「www」はホスト、「yourdomain」は第 2 レベルのドメイン、.com はトップレベルドメインです。

ローカルネットワーク上にない In-Sight センサまたは In-Sight エミュレータから In-Sight センサを設定しモニタするには、In-Sight センサに FQDN が必要になります。[ネットワークの設定] ダイアログ、または [センサ/デバイスをネットワークに追加] ダイアログの [ドメイン名] フィールドで入力した文字列は、[ホスト名:] フィールドに入力した文字列に付加されて、FQDN となります。

[DHCP サーバの使用] チェックボックスがオンの場合、[ドメイン名] フィールドはグレーアウトされ、DHCP サーバから割り当てられた値が表示されます。

FQDN の例

ローカルのドメイン名が yourdomain.com の場合、次のようになります。

In-Sight センサの [ホスト名] が is5100_010203 の場合、FQDN は is5100_010203.yourdomain.com になります。


動的 IP アドレス

Ethernet 構成をサポートする In-Sight デバイスは、DHCP サーバが使用できれば、IP アドレスを動的に取得するように設定できます。この場合、任意の In-Sight Ethernet デバイスが、要求の送信およびネットワーク設定 (IP アドレス、DNS サーバ、サブネットマスク、ゲートウェイ、ドメイン名など) の受信を自動的に行うことができます。多数のデバイスを使用するネットワークでは、各デバイスに手動でネットワーク設定を入力するよりも、DHCP セットアップの方がよく使用されます。しかし、初期設定を完了した後は、デバイスの DHCP を無効にして、固定 IP アドレスを割り当てることを強く推奨します。これによって、断続的な DHCP トラフィックを防ぐことができます。


サブ領域の順序

正しい順序で並べられたサブ領域のリスト

  1. 「加算」操作を使用して、領域を挿入します。
  2. 「減算」操作を使用して、円を挿入します。
  3. 「加算」操作を使用して、2 つめの小さな領域を挿入します。円によってマスクされる画像の部分が対象領域から除外されるので、マスクされていない小さい領域は対象領域に含まれるようになります。

誤った順序で並べられたサブ領域のリスト

  1. 「加算」操作を使用して、領域を挿入します。
  2. 「加算」操作を使用して、2 つめの小さな領域を挿入します。
  3. 「減算」操作を使用して、円を挿入します。円全体がマスクされます。円と領域が対象領域から除外されます。


EtherNet/IP

EtherNet/IP は、イーサネットおよび TCP/IP プロトコルの上に実装されるアプリケーションレベルのプロトコルです。このプロトコルを使用すると、産業環境においてイーサネット経由でデータを転送できます。EtherNet/IP プロトコルの詳細については、http: //www.odva.org/ を参照してください。


ファインダパターン頂点

データマトリックスシンボル

データマトリックスシンボルの場合、ファインダパターン頂点はシンボルの 4 つのコーナにあるセルは、モジュールとも呼ばれ、黒または白のいずれかの単一の正方形です。例えば、10 × 10 のシンボルは、100 個の黒と白のセルから構成されます。1 個のセルがデータの 1 ビットに相当します。 セル2 本の実線の交点は、「L 境界」を形成します。登録時には、L 型の角が左下の方を向いています。ポイント 0 はシンボルの左上隅のセル、ポイント 1 は左下隅のセル（2 本の実線が交差する位置）、ポイント 2 は右下隅のセル、ポイント 3 は右上隅のセルです。

Closed ここをクリックするとデータマトリックスシンボルのポイントの位置が表示されます。

QR コードシンボル

QR コードシンボルの場合、ファインダパターン頂点はシンボルの 4 つの隅にあるセルのそれぞれ中央に置かれます。シンボルの 3 つの Closed 位置検出パターンが L 型を形成します。登録時には、L 型の角が左上の方を向いています。ポイント 0 はシンボルの右上隅のセル、ポイント 1 は左上隅のセル（中央の位置検出パターンが L 型の角を形成します）、ポイント 2 は左下隅のセル、ポイント 3 は右下隅のセルです。

Closed ここをクリックすると QR コードシンボルのポイントの位置が表示されます。

バーコード

バーコードの場合、ファインダパターン頂点はシンボルの 4 つの隅にあるセルのそれぞれ中央に置かれます。ポイント 0 は左上隅のセル、ポイント 1 は左下隅のセル、ポイント 2 は右下隅のセル、ポイント 3 は右上隅のセルです。

Closed ここをクリックするとバーコードのポイントの位置が表示されます。


FTP

ファイル転送プロトコル (FTP)

In-Sight センサには、FTP プロトコルを使用してネットワーク上のほかのセンサとファイルを共有する FTP クライアント/サーバ機能が内蔵されています。[保存] や [開く] ダイアログは、FTP クライアントとして稼動し、ネットワーク上の FTP サーバと接続を確立して、ジョブや画像、ファームウェアの更新ファイルを転送します。

また、In-Sight センサへの FTP 接続が、ネットワーク上の In-Sight 以外のホストから起動される場合もあります（この場合は、In-Sight センサは FTP サーバとして稼動します）。これは、In-Sight センサの proc.set ファイル (.SET) を保存する唯一の方法です。この設定ファイルをほかの In-Sight センサにロードして、構成を複製することができます。

ログオンプロセスおよび In-Sight センサへの FTP コマンドの発行を自動化するカスタムアプリケーションを書き込んで、リモートホスト上で実行させることができます。

注意:
  • 1 台の PC では 1 つの FTP サーバだけを実行できます。In-Sight センサとの FTP 通信が適切に行われることを保証するために、サードパーティ製の FTP サーバがローカル PC で実行されている場合は、すべて終了してください。
  • In-Sight センサが [オンライン] になっている間にファイルを保存またはロードしようとすると、In-Sight センサの性能が低下することがあります。
  • FTP を介しての In-Sight 5600 センサへのファイル転送は、ほかのセンサへの転送に比べて遅くなることがあります。

In-Sight センサは、標準の FTP コマンドをサポートしています。次の表に、よく使用されるコマンドを示します。

FTP コマンド | 説明
open [アドレス] | リモートホストと In-Sight センサの間の FTP 接続を確立します。
help | 利用可能な FTP コマンドのリストを表示します。
help [コマンド] | 各 FTP コマンドについての説明を表示します。
dir | In-Sight センサに現在保存されているファイルのリストを表示します。
prompt | 複数のコマンドを使用する場合、Y / N プロンプトを切り替えます。プロンプトのデフォルト設定はオンです。
get [ファイル名] | In-Sight センサからファイルをダウンロードし、リモートホストにある FTP クライアントのデフォルトディレクトリに保存します。1
mget [ファイル名] | In-Sight センサから複数のファイルをダウンロードして、リモートホスト上の FTP クライアントのデフォルトディレクトリに保存します。1,2
put [ファイル名] | リモートホスト上の FTP クライアントのデフォルトディレクトリから In-Sight センサにファイルをアップロードします。1
mput [ファイル名] | リモートホストにある FTP クライアントのデフォルトディレクトリから In-Sight センサへ複数のファイルをアップロードします。1,2
del | 指定したファイルを In-Sight センサから削除します。
mdel | 複数のファイルを In-Sight センサから削除します。3
disconnect | リモートホストと In-Sight センサの間の FTP 接続を切断して、FTP コマンドのプロンプトに戻ります。 注意: In-Sight センサでは、一度に最大 2 つの FTP 接続が可能です。
quit | リモートホストと In-Sight センサの間の FTP 接続を切断して、DOS コマンドプロンプトに戻ります。
1 FTP では、メッセージや警告なしに、転送先の既存ファイルが上書きされます。 2 ワイルドカード文字「*」を使用すると (例、*.job)、複数のファイルを指定できます。ただし、ファイルごとに送信するかどうかの確認が求められます。 3 ワイルドカード文字「*」を使用すると (例、*.job)、複数のファイルを指定できます。ただし、ファイルごとに削除するかどうかの確認が求められます。

例 1:In-Sight センサとリモートホスト間の FTP 接続の確立

  1. In-Sight センサの IP アドレスを確認します。

注意: [In-Sight Explorer について] ダイアログには、[In-Sight ネットワーク] 内にあるすべてのデバイスの IP アドレスが表示されます。

  2. リモートホスト上の FTP アプリケーションを開きます。Microsoft Windows の場合は、[コマンドプロンプト] ウィンドウを開き、FTP と入力します。
  3. FTP コマンドプロンプトで、open [アドレス] と入力します。ここでの [アドレス] は、ステップ 1 で取得した IP アドレスです。接続に成功すると、次のようなメッセージが表示されます。220 In-Sight (R) 5100 Release 3.40.00 (2240) ready (is5100_010203).
  4. User プロンプトで、In-Sight センサの [ユーザリスト] に登録されているユーザ名を入力します。ユーザ名が受け入れられると、次のメッセージが表示されます。331 User name OK, need password.
  5. Password プロンプトで、ユーザ名に対応するパスワードを入力します。パスワードが受け入れられると、次のようなメッセージが表示されます。230 User <UserName> logged in.

Closed 例 1 のコマンドプロンプト出力を見るには、ここをクリックしてください。

例 2:FTP を使用した In-Sight センサの設定の保存およびロード

In-Sight センサの設定は、proc.set ファイルに保存されます。このファイルには、[シリアルポートの設定]、[ディスクリート I/O]、ユーザリスト、起動方法の設定パラメータ (ユーザとジョブ)、および日付/時刻の設定に関する設定の詳細が含まれています。

注意: In-Sight センサがオンラインのときに、In-Sight センサに proc.set ファイルをコピーすることはできません。

In-Sight センサから FTP クライアントに設定ファイルを保存するには、次の手順に従ってください。

  1. 例 1 の説明に従って、In-Sight センサへの FTP 接続を確立します。
  2. ログオンしたら、次のコマンドを入力します。

get proc.set

ファイル転送が成功したかどうかを確認するには、FTP クライアントのデフォルトのローカルディレクトリで、proc.set を探します。

注意: FTP プロンプトで LCD コマンドを発行すると、デフォルトのローカルディレクトリ名が表示されます。

FTP クライアントから In-Sight センサに設定ファイルをロードするには、次の手順に従ってください。

  1. 例 1 の説明に従って、In-Sight センサへの FTP 接続を確立します。
  2. ログオンしたら、次のコマンドを発行します。

put proc.set

このコマンドによって、転送先の In-Sight センサにある現在の設定ファイルは、メッセージまたは警告が表示されることなく上書きされるので注意してください。ファイルのロードが成功したら、転送先の In-Sight センサを再起動します。転送先の In-Sight センサに適用されないファイルの設定は破棄されます。

Closed 例 2 のコマンドプロンプト出力を見るには、ここをクリックしてください。


ゲートウェイ

ゲートウェイとは、あるローカルサブネットにある接続機器から別のローカルサブネットにある接続機器へ、データパケットをルーティングする装置です。In-Sight デバイスがほかのサブネットの装置と通信する必要がある場合、[デフォルトゲートウェイ] フィールドにゲートウェイ装置のアドレスを入力します。必要がなければ、このフィールドを空白のままにしておきます。


画像エディタ

画像エディタを使用すると、フォント文字の個別のインスタンスを編集することができます。現在選択されている文字モデルのインスタンスがフォントエディタに表示されます。次のボタンをクリックするだけで、一般的なタスクを実行できます。

注意: 編集できるのは 2 値化された文字モデルだけです。グレースケールの文字インスタンスは読み取り専用です。

アクティブな [フォント] に文字インスタンスを保存します。保存しないまま文字を編集したとき、選択文字の変更時またはダイアログの終了時に、変更内容を保存 (または破棄) するかどうかの確認が求められます。

最後の操作を取り消します。

最後の操作をやり直します。

[標準] (ポインタ) アイコンを選択しているときに、マウスを画像に合わせると、各ピクセルのグレースケール値が返されます。

領域全体に拡大:画像領域を点線の矩形で囲んで、拡大します。ユーザが定義した矩形が、画像領域全体まで拡大されます。矩形を作成するときには、カーソルの初期位置が矩形の中心になります。最大まで拡大すると、[領域全体に拡大] は無効になります。Ctrl キーを押しながらマウスの左ボタンを押したまま、 [image] カーソルをドラッグして、領域を定義します。ボタンを離すと、領域が拡大されます。終了するには、Ctrl キーを離します。カーソルが [標準] [image] カーソルに戻ります。

[拡大画像の移動]:Shift キーと Ctrl キーを押しながら、マウスの左ボタンを押したまま、 [image] カーソルをドラッグします。終了するには、Shift キーと Ctrl キーを離します。カーソルが [標準] [image] カーソルに戻ります。

ピクセルをクリックして、後続の描画操作で使用する色 (黒または白) を選択します。値を選択すると、モードは以前の描画選択 (細線または太線) に自動的に戻ります。選択した色は、選択したラジオボタン ([黒を描画] または [白を描画]) で示されます。

注意: 画像領域の外側を選択すると無視されます。

スポイトで選択した色を使用して、1 ピクセルの太さの線を引きます。

3 ピクセルの太さの線を引きます。線は [スポイト] で選択した色、または [黒色]、[白色] で描画されます。

拡大率を上げます。

拡大率を下げます。

表示倍率を 1:1 に設定します。画像の 1 ピクセルに対して PC ディスプレイの 1 ピクセルで表示します。

ウィンドウ内に画像全体が表示されるように自動調整します。画像は、スプレッドシートの下で画像全体が表示される最大限の大きさに自動調整されます。画像のアスペクト比は維持されます。このため、画像の周囲にグレーの余白が表示される場合があります。

操作を取り消します。


In-Sight アセンブリデータ構成 (非明示的メッセージング)

入力アセンブリ

Class | 0x04
Instance | 0x01
Size | 132 バイト(32 ビットワード 33 個)

データ構成

バイト 0～3 (4 バイト) - 将来使用するために予約されています。

バイト 4～132 (128 バイト) - スプレッドシートデータ(ユーザ定義可能)

出力アセンブリ

Class | 0x04
Instance | 0x02
データサイズ | 132 バイト (32 ビットワード 33 個)

データ構成

バイト 0～2 (3 バイト)

バイト 3 (1 バイト)

バイト 4～132 (128 バイト)

注意: RPI(Requested Packet Interval: 最小パケット要求間隔)は、10 ミリ秒(データのみ)です。ただし、デフォルト設定の AcquireImage 関数に対して、画像取り込みトリガバイトを含むパケットを与える場合、RPI は 40 ミリ秒です。


In-Sight ポート

In-Sight の通信には次のポートが使用されます。

ポート番号 | サービス
TCP 21 | FTP
TCP 23 | Telnet
UDP 68 | DHCP (In-Sight ビジョンシステムのみ)
TCP 80 | HTTP
TCP 502 | Modbus
TCP 1069 | In-Sight プロトコル
UDP 1069 | In-Sight Discovery
TCP 1070 | [マシンステータス] データ
TCP 1212 | アップグレードポート (PC のみ)
UDP 2222 | EtherNet/IP
TCP 5753 | 監査メッセージサーバ
TCP 44818 | EtherNet/IP
UDP 45237 | iQ Sensor Solution
TCP 50000 | DataChannel


インターネットプロトコル

IP (インターネットプロトコル) アドレス

IP アドレスは、ネットワーク上でホストを一意に識別します。IP アドレスは、3 つのタイプ(クラス)のどれか 1 つになります。一般的に、クラスはサブネット数とサブネットで動作しているホストの数で決定されます。

ネットワーククラス | ネットワーク (またはサブネット) の 最大数 | ホストの最大数
A | 127 | 16,000,000
B | 16,000 | 65,000
C | 2,000,000 | 254

In-Sight センサに割り当てられる IP アドレスは、ネットワーク上のほかのホストと同様に、既存のネットワークで有効なアドレッシング体系に準拠する必要があります。使用しているネットワークのアドレッシング体系については、ネットワーク管理者に確認してください。

ネットワークが In-Sight 専用に構成されている場合は、適切なネットワーククラスの選択と IP アドレスの割り当てが必要です。次の IP アドレッシング体系を利用できます。

ネットワーククラス | IP アドレスの範囲 | デフォルトのサブネットマスク
A | 10.0.0.1 ～ 10.255.255.254 | 255.0.0.0
B | 172.16.0.1 ～ 172.31.255.254 | 255.255.240.0
C | 192.168.0.1 ～ 192.168.255.254 | 255.255.0.0

In-Sight では、クラス C のネットワークが一般的です。


補間

補間は、ピクセルの RGB（赤、緑、および青）成分の加重平均で、次の式を使用します。

補間値 ＝ 0.25×R＋0.50×G＋0.25×B


I/O モジュール

次の I/O モジュールは、In-Sight ビジョンシステムで使用するために Cognex から提供されています。

  • CIO-1400 I/O モジュールは In-Sight 5000 シリーズ (In-Sight 5604 を除く) のビジョンシステムで使用されます。
  • CIO-1450 I/O モジュールは In-Sight 5000 シリーズ (In-Sight 5604 を除く) のビジョンシステムで使用されます。
  • CIO-1460 I/O モジュールは In-Sight 5000 シリーズ (In-Sight 5604 および 5605 を除く) のビジョンシステムで使用されます。
  • CIO-MICRO I/O モジュールは 5100 および 5400 シリーズ1、5600 シリーズ、7000 シリーズ、および In-Sight Micro シリーズのビジョンシステムで使用されます。
  • CIO-MICRO-CC I/O モジュールは 5100 および 5400 シリーズ1、5600 シリーズ、7000 シリーズ、および In-Sight Micro シリーズのビジョンシステムで使用されます。
  • CIO-WENET は、In-Sight Micro シリーズのビジョンシステムで使用されます。

1 CIO-MICRO および CIO-MICRO-CC I/O モジュールがサポートしているのは、128MB 以上の不揮発性フラッシュメモリを持つ In-Sight 5100 シリーズ、および 5400 シリーズのビジョンシステムのみです。モデルはタイプ番号 (821-xxxx-xx) で特定できます。このタイプ番号は、ビジョンシステムに添付されているラベルに記載されています。モデル、およびタイプ番号と不揮発性フラッシュメモリの一覧については、ここをクリックしてください。


リスト選択

リスト選択のヒント

[In-Sight ネットワーク] ペイン、および In-Sight Explorer 内の多くのダイアログでは、ファイルまたは In-Sight センサをリストから選択することが要求されます。リストからアイテムを選択するには、以下の方法があります。

操作 | マウス | キーボード | 結果のサンプル
リストから 1 つのアイテムを選択 | 項目をクリックします。 | リストに到達するまで、Tab キーを押します。↑/↓ キーを使用して、リストのアイテムをハイライトします。 |
リストから複数の不連続アイテムを選択 | Ctrl キーを押しながら、リストの任意のアイテムをクリックします。 | リストに到達するまで、Tab キーを押します。↑/↓ キーを使用して、リストのアイテムをハイライトします。 Ctrl キーを押し続けます。↑/↓ キーを使用して、次のアイテムをハイライトします。Ctrl キーを押したままスペースバーを押して、アイテムの選択状態を切り替えます。 |
リストから複数の連続アイテムを選択 | 連続して選択する範囲の最初のアイテムをクリックします。Shift キーを押したまま、連続して選択する範囲の最後にある項目をクリックします。 | リストに到達するまで、Tab キーを押します。↑/↓ キーを使用して、選択した範囲の最初のアイテムをハイライトします。Shift キーを押したまま、↑/↓ キーを使用して、リスト内のハイライトされた範囲を拡張します。 |


輝度

概念上、輝度は明度に密接に関係しており、特定の領域から放射または反射される光の量の尺度です。

マシンビジョンアプリケーションでは、輝度は、ピクセルの RGB (赤、緑、および青) 成分から算出されるグレースケール値で、次の式を使用します。

RGB の輝度の値 ＝ 0.299×R＋0.587×G＋0.114×B


MAC Address

MAC（Media Access Control）アドレス

MAC アドレスは、ネットワークの特定のノードを識別するためのハードウェアアドレスです。すべての In-Sight センサには、工場出荷時に固有の MAC アドレスが割り当てられており、変更はできません。In-Sight センサの MAC アドレスを調べるには、本体に貼られたシリアル番号ラベルをご覧ください。または、In-Sight Explorer で [In-Sight Explorer について] ダイアログを開いてください。

MAC アドレスの例:00-d0-24-01-02-03


マシンステータスポート

In-Sight マシンステータスポートは、ポート 1070 での TCP/IP 接続であり、ユーザ名およびパスワードログオンなしで、In-Sight センサのマシンステータスデータへのリモートクライアントアクセスを提供します。この読み取り専用ポートを通じて GetMSBuffer コマンドを実行する場合は、EV 接頭辞が不要です。接続は 15 秒でタイムアウトになり、ポート 1070 には最大 5 つの同時接続が可能です。


MicroPDF417 の変形バージョン

EAN/UCC 協会は、CC-A コンポジットシンボルの 2D コンポーネントとして、MicroPDF417 シンボルの変形バージョンを採用しました。詳細については、AIM International（外部リンク、インターネットアクセスが必要です）が発行している『International Symbology Specification - EAN/UCC Composite Symbology?（ITS/99-002）』のセクション 8 を参照してください。この仕様では、RSS ファミリコンポーネントの上段に配置される CC-A のバージョンについて、次の制限が適用されます。

  1. RSS-14 Stacked または RSS-14 Stacked Omnidirectional のバーコードには 2 列の CC-A コンポーネントのみを組み合わせることができます。
  2. RSS Limited のバーコードには 3 列の CC-A コンポーネントのみを組み合わせることができます。
  3. RSS-14 または RSS-14 Truncated のバーコードには 4 列の CC-A コンポーネントのみを組み合わせることができます。
  4. RSS Expanded のバーコードには 4 列の CC-A コンポーネントのみを組み合わせることができます。2D コンポジットコンポーネントと組み合わせて使用する場合、RSS Expanded Stacked のバーコードには、上段に 4 つ以上のシンボルキャラクタが含まれます。


MIME

MIME (Multipurpose Internet Mail Extensions)

インターネットで非 ASCII 形式のメッセージをフォーマットするための仕様です。


Monitor Version

In-Sight モニタは、主に In-Sight センサのトラブルシューティングに使用します。Safe Mode では、すべての設定パラメータをリセットして In-Sight を起動することができます。ただし、入出力、スタートアップ、カスタマイズなどの In-Sight センサの「設定」が、警告なしに上書きされますので注意してください。Diagnostic および Server Mode はコグネックスの技術者が使用するために用意されています。これらの項目を使用する場合は、コグネックスのサポートセンターにご相談ください。Start In-Sight により、In-Sight ソフトウェアがシステム上で起動されます。


ネイティブモードおよび EIP

次のネイティブモードコマンドは、(一般的な Control and Information Protocol CIP メッセージが可能な) 任意の PLC から明示的メッセージングを使用して EtherNet/IP 接続経由で送信できます。

  • Delete File
  • Get File
  • Get Online
  • Get Value
  • Load File
  • Set Event
  • Set Float
  • Set Integer
  • Set Online
  • Set String
  • Store File


ネイティブモードのチェックサム

CRC (Cyclical Redundancy Check: 周期冗長検査)

ネイティブモードでのファイル転送に使用されるチェックサムは、標準の 16 ビット CRC(Cyclical Redundancy Check: 周期冗長検査)を使用しています。 CRC は次のアルゴリズムで計算されます。 この例では、変数 CRC には符号なしの 16 ビットを使用し、入力バイトは 8 ビットです。

1. 1. CRC を 0 に設定します。

2. 2. データストリームから次のバイトを取得します。

3. 3. CRC と入力バイトの最上位のビットをテストし、次の手順に従います。

CRC と入力バイトの最上位のビットが等しければ、CRC を 1 ビット左へシフトします。

片方のビットが 0 で片方が 1 の場合は、CRC を 1 ビット左へシフトし、4129 との排他的論理和を求めます。

4. 4. 入力バイトを 1 ビット左へシフトします。

5. 5. 入力バイトを 8 回シフトするまで、ステップ 3～4 を繰り返します。

6. 6. データストリーム内にまだバイトが残っている場合は、上記のステップ 2 に戻ります。

このアルゴリズムの解説については、『Numerical Recipes in C: The Art of Scientific Computing(Press, William H., et al. Cambridge, MA: Cambridge University Press, 1992, 896-901) 1(C 言語による数値計算のレシピ) を参照してください。
CRC の 1 ビット を 1 回計算する C 関数は次のとおりです。ルックアップテーブルを使用する適正化した関数については、弊社テクニカルサポートにお問い合わせください。

unsigned short CalculateCRC(char* buffer, int size)

{

  unsigned short cword = 0;

  unsigned short ch;

  int i,j;

  for (i = 0; i < size; i++) {

    ch = buffer[i] << 8;

    for (j = 0; j < 8; j++) {

      if ((ch & 0x8000) ^ (cword & 0x8000)) {

        cword = (cword <<= 1) ^ 4129;

      }

      else {

        cword <<= 1;

      }

      ch <<= 1;

    }

  }

  return cword;

}


不連続なリストアイテム

相互に隣接していない(隣り合っていない)場合、「リストアイテムは不連続」と呼ばれます。


ポップアップウィンドウの例

ポップアップウィンドウを閉じるには、次の 2 つの方法があります。

  • ポップアップウィンドウ外部の任意の場所をクリックします。
  • ポップアップウィンドウの内部で、グラフィックスにより占有されていない任意の場所(COGNEX ロゴマークの前など)をクリックします。


ファイルへ出力

[ファイルへ出力] ダイアログを使用すると、プリンタへ出力する代わりにファイルへ出力することができます。ディレクトリを指定しなければ、ファイルは In-Sight Explorer の実行ファイルのあるディレクトリに保存されます。


プロパティシート - 複数パラメータの例

プロパティシートのパラメータは、わかりやすくするために、次に示す [モデル領域] のようにグループ化されていることがあります。


ReadCompositeCode エラー文字列

次のエラーが、データアクセス関数の GetErrorString によって [image] 構造体から抽出される場合があります。

  • システムエラーです。
  • ヒープメモリ不足です。
  • ビジョンツールエラーです。
  • 無効な画像バッファです。
  • 無効な領域サイズです。
  • 領域が画像境界を超えています。
  • ReadCompositeCode エラーです。
  • 行アドレスパターンを検出できません。
  • 行アドレスパターン RAP メモリ制限を超えました。
  • CC-A シンボルバージョンを検出できません。
  • 欠落している RAP 点を埋めることができません。
  • 無効なスキャンラインが検出されました。
  • スキャンラインが画像境界を超えています。
  • 半値パターンを検出できません。
  • 半値メモリ制限を超えました。
  • 有効なシンボルが見つかりません。
  • 訂正の必要なシンボルエラーが多すぎます。
  • リードソロモンエラー訂正に失敗しました。
  • 1D と 2D がデコード可能ですが、関連付けられていません。
  • 自動コントラストしきい値計算に失敗しました。
  • コントラスト感度が許容範囲を超えています。


ReadIDCode エラー文字列

次のリストは、データアクセス関数の GetErrorString によって [image] 構造体から抽出されるエラーです。

  • システムエラーです。
  • ヒープメモリ不足です。
  • ビジョンツールエラーです。
  • 無効な画像バッファです。
  • 無効な領域サイズです。
  • 領域が画像境界を超えています。
  • ReadIDCode エラーです。
  • 行アドレスパターンを検出できません。
  • 行アドレスパターン RAP メモリ制限を超えました。
  • CC-A シンボルバージョンを検出できません。
  • 欠落している RAP 点を埋めることができません。
  • 無効なスキャンラインが検出されました。
  • スキャンラインが画像境界を超えています。
  • 半値パターンを検出できません。
  • 半値メモリ制限を超えました。
  • 有効なシンボルが見つかりません。
  • 訂正の必要なシンボルエラーが多すぎます。
  • リードソロモンエラー訂正に失敗しました。
  • 自動コントラストしきい値計算に失敗しました。
  • コントラスト感度が許容範囲を超えています。


レポートファイルの種類

出力ファイルの種類に HTML を選択した場合、あらかじめ定義された HTML フォーマットを含むスタイルシートが使用されます。HTML レポートの Web ブラウザ出力の例を以下に示します。

XML を選択した場合、In-Sight Explorer は XML フォーマットで In-Sight センサのレポートを生成します。レポートのコードを見ることで、XML の階層的な性質を確認できます。

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>

<In-SightReport title="In-Sight Report" date="6/27/2005" time="2:46:26 PM">

  <In-Sight Name="is5100_020304">

    <MACAddress>00-d0-24-02-03-04</MACAddress>

    <SerialNumber>Z44200031</SerialNumber>

    <FirmwareVersion>2.80.00 (568)</FirmwareVersion>

    <MonitorVersion>2.00</MonitorVersion>

    <Settings>

      <Network>

        <UseDHCP>True</UseDHCP>

        <HostName>is5100_020304</HostName>

        <Current>

          <IPAddress>192.168.0.115</IPAddress>

          <SubnetMask>255.255.255.0</SubnetMask>

          <DefaultGateway>192.168.0.254</DefaultGateway>

          <DNSServer>192.168.0.2</DNSServer>

          <DomainName>yourdomain.com</DomainName>

       </Current>>

...


結果テーブル

EasyBuilder ビューの [ジョブの実行] ステップで表示できる結果テーブルには、アクティブジョブの各ツールに関する情報が表示されます。このテーブルを使用して、ジョブを実行しながら、ツールのモニタやトラブルシューティングを実行することができます。

結果テーブルには、個々のツールについて、合格/不合格のステータス、ツールアイコン、名前、結果、合格数、失敗数とともに、ツールの実行にかかった時間がミリ秒単位で表示されます。

また、このテーブルからあるツールを選択すると、選択したツール (オレンジ色でハイライトされます) とそのジョブで使用されているそのほかのツールの依存関係が表示されるため、ツールの不具合が、ほかのツールの不具合に関係しているかどうかを判断することができます。ツールが別のツールを参照しているときには依存関係が存在します。1 つの依存関係は、参照元と参照先の 2 つの部分から構成されます。これらは線で結ばれています。参照元とはデータのソース (入力を提供するツール) のことで、円で表されます。参照先とはデータのディスティネーション (出力を受け取るツール) のことで、矢印で表されます。青い依存関係グラフィックスは選択したツールが参照先であることを、緑色のグラフィックスは選択したツールが参照元であることを示します。

テーブルの要約版がパレットの [Results] タブに表示されます。[ジョブの実行] ステップと [結果] タブの両方で、テーブル内のツールを右クリックして編集できます。


RightClickMenu

右クリックメニュー

  • [切り取り]: 選択したセルを切り取ります。多くの場合、[貼り付け] と組み合わせて使用されます。
  • [コピー]: 選択されているセルをクリップボードにコピーします。多くの場合、[貼り付け] と組み合わせて使用されます。
  • [貼り付け]: クリップボードに切り取りまたはコピーされたセルを貼り付けます。
  • [挿入]: 選択した行数または列数だけ、行または列を挿入します。行全体または列全体を選択しなければ、[挿入] ダイアログを開いて、セル、行、または列を挿入できます。
  • [削除]: 選択した行または列を削除します。行全体または列全体を選択しなければ、[削除] ダイアログを開いて、セル、行、または列を削除できます。
  • [コンテンツのクリア]: 選択したセルのコンテンツをクリアします (すべて、フォーマット、コンテンツ、コメントまたはシンボリックタグ、アクセス許可)。
  • [関数の挿入]: [関数の挿入] ダイアログを開いて、関数をアクティブセルに挿入します。このオプションは、アクティブセルが関数を含んでいない場合のみ使用可能です。
  • [関数の編集]: アクティブセルにプロパティシートが関連付けられた関数が含まれている場合、プロパティシートが開きます。そうでない場合は、[関数の挿入] ダイアログが開きます。このオプションは、アクティブセルに関数が含まれている場合のみ使用可能です。
  • [絶対参照を挿入]: 絶対参照をアクティブセルに挿入します。
  • [相対参照を挿入]: 相対参照をアクティブセルに挿入します。
  • [コメントの挿入]: [コメントの編集] ダイアログを開いて、アクティブセルに新しいコメントを挿入します。このオプションは、アクティブセルがコメントを含んでいない場合のみ使用可能です。
  • [コメントの編集]: [コメントの編集] ダイアログを開いて、アクティブセルの既存のコメントを編集します。このオプションは、アクティブセルにコメントが含まれている場合のみ使用可能です。
  • [シンボリックタグの挿入]: [シンボリックタグエディタ] ダイアログを開いて、アクティブセルに新しいシンボリックタグを挿入します。このオプションは、アクティブセルがシンボリックタグを含んでいない場合のみ使用可能です。
  • [シンボリックタグの編集]: シンボリックタグエディタを開いて、アクティブセルの既存のシンボリックタグを編集します。このオプションは、アクティブセルにシンボリックタグが含まれている場合のみ使用可能です。
  • [セルのグラフィック]: 対話型グラフィックスモードに切り替えて、セルグラフィックスを編集します。このオプションは、関連するセルグラフィックスを持つ関数がアクティブセルに含まれている場合にのみ使用できます。
  • [セル状態]: [セル状態] ダイアログを開いて、セルの実行を明示的に有効または無効にしたり、参照セルの値に基づいて条件付きで有効または無効にしたりします。
  • [ジョブの PASS/FAIL]: [ジョブの PASS/FAIL セルの設定] ダイアログを開いて、数値の結果を含むセルをモニタし、ジョブ全体の成功/失敗ステータスを判定します。ジョブのステータスは、センサからの出力として、Cognex VisionView などそのほかのアプリケーションへ送信することができます。
  • [カスタムビューの設定]: [カスタムビューの設定] ダイアログを開いて、スプレッドシートの [カスタムビュー] プロパティを設定します。
  • [EasyView の設定]: [EasyView の設定] ダイアログを開いて、VisionView のデータの表示方法をカスタマイズします。
  • [フォーマット]:
    • [セルのフォーマット]: [セルのフォーマット] ダイアログを開いて、選択したセルの数値、配置、フォント、および保護を設定します。
    • [行の高さ]: [行の高さ] ダイアログを開いて、スプレッドシートの 1 行または複数の行の高さを調整します。
    • [列の幅]: [列の幅] ダイアログを開いて、スプレッドシートの 1 列または複数の列の幅を調整します。
    • [非表示]: 選択した行または列を非表示にします。
    • [再表示]: 選択されている行または列の間にある非表示の行または列を表示します。
  • [スニペット]:
    • [インポート]: [スニペット] ダイアログを開いて、.CXD ファイルで保存されたスニペットをスプレッドシートにインポートします。このデータファイルは、PC の Snippets フォルダからロードすることができます。
    • [エクスポート]: [スニペット] ダイアログを開いて、.CXD ファイルで保存されたスニペットを PC の Snippets フォルダにエクスポートします。
  • [セルのインポート]: .CXD ファイルのセルデータをスプレッドシートにインポートします。
  • [セルのエクスポート]: .CXD ファイルのセルデータをエクスポートします。


ロボットコントローラ

ロボットコントローラは、画像取り込みとデータ転送を制御するデバイスです。一般に、In-Sight ネイティブモードコマンドを使用するロボットコントローラは、画像の取り込みと処理を行うようにビジョンシステムをトリガし、その後、ビジョンシステムに特定のデータを要求します。通常、情報は次のようにやり取りされます。

ロボットコントローラコード
  1. In-Sight ビジョンシステムに接続します。
  2. Set Event and Wait (SW8) ネイティブモードコマンドを使用して、画像取り込みをトリガします。
  3. Get Value (GV) ネイティブモードコマンドを使用して、特定の In-Sight スプレッドシートセルの文字列を取得します。
  4. 必要に応じて、データを読み込み、文字列を解析します。
  5. データを適切なデータタイプに変換して、ロボット位置レジスタに加えます。
In-Sight コード
  1. ビジョンシステムのセル A0 (AcquireImage 関数のプロパティシート) から、トリガパラメータの [外部] を選択します。
  2. 部品の位置を調べるために、In-Sight ビジョンツールを設定します。
  3. 必要に応じて、FormatString ダイアログ、または FormatString 関数を使用してデータをフォーマットします。
  4. ロボットの GV ネイティブモードコマンドを使用して In-Sight ビジョンシステムからこのデータを取得できるように、このデータが保存されているセルの場所をメモしておきます。
スニペット

スプレッドシートビューでは、スニペットが使用できます。多数のロボットメーカーのために、専用の通信スニペットが作られています。使用しているロボットがリストに載っていない場合は、

汎用ロボットスニペット General.cxd を変更して、大半のロボットと通信させることが可能です。


RSS シンボル

RSS（Reduced Space Symbology）シンボル

RSS シンボルは、コンポジットシンボルのバーコードとして使用されます。詳細については、AIM International が発行している『International Symbology Specification - EAN/UCC Composite Symbology?（ITS/99-002）』のセクション 7.2 を参照してください。この仕様では、RSS ファミリコンポーネントの上段に配置される CC-A のバージョンについて、次の制限が適用されます。

  1. RSS-14 Stacked のバーコードには 2 列の CC-A コンポーネントのみを組み合わせることができます。
  2. RSS Limited のバーコードには 3 列の CC-A コンポーネントのみを組み合わせることができます。
  3. RSS-14 のバーコードには 4 列の CC-A コンポーネントのみを組み合わせることができます。


スキャンライン

1D シンボルの場合、バーコードはバーに対して垂直な最大 10 本の等間隔ライン（スキャンライン）に分割されます。 2D シンボルの場合、スキャンラインはシンボルの各行を横切ります。 スキャン反射プロファイルは各スキャンラインに対して計測され、すべての検査計算に使用されます。

詳細については、国際標準化機構（ISO/IEC）が発行している『Bar Code Print Quality Test Specification（P/N ISO/IEC-15416）』、米国国家規格協会（ANSI）が発行している『Bar Code Print Quality Guideline（P/N ANSI X3.182-1900）』、または、ヨーロッパ標準化委員会（CEN）が発行している『Specification EN1635』を参照してください。


SMTP

SMTP (Simple Mail Transfer Protocol)

サーバ間で電子メールメッセージを送受信するためのプロトコルです。


SNTP

SNTP (Simple Network Time Protocol)

In-Sight センサの日時の設定を、リモートサーバの日時の設定と同期させるためのプロトコルです。このプロトコルにより、日時情報が確実に更新され、維持されます。


固定 IP アドレス

固定 IP アドレスは手動で入力され、変化しません。


構造体関数

構造体は、複数の値を 1 つのセルに取得する「コンテナ」であり、画像または画像から抽出された特徴もそれに含まれます。構造体の中の各値は、対応するデータアクセス関数を通してセルに返すことが可能です。例えば、AcquireImage 関数は取り込んだ画像データを画像構造体の内部に格納します。GetPixelValue 関数は、画像構造体に含まれている指定されたピクセルのグレースケール値を返します。


サブネットマスク

サブネットマスクについて

IP アドレスは、2 つのアドレス (ネットワークアドレスとホストアドレス) の組み合わせです。サブネットマスクは、IP アドレスのどの部分がネットワークを示し、どの部分がホストを示すかを定義します。ネットワーク上に利用できるゲートウェイ

サブネットマスクには、3 つのタイプ（クラス）があります。次の表に示すように、ネットワークの特定のサブネットのクラスは、IP アドレスのネットワークアドレス部分とホストアドレス部分を表すビット数によって定義されます。

Class | サブネットマスク | ネットワークアドレス | ホストアドレス
A | 255.0.0.0 | 8 ビット | 24 ビット
B | 255.255.0.0 | 16 ビット | 16 ビット
C | 255.255.255.0 | 24 ビット | 8 ビット

例えば、ネットワークに接続された In-Sight ホストシステムの IP アドレスが、192.168.0.1 とします。最初の 3 つのオクテット (192.168.0) が 24 ビットのネットワークアドレスを示し、最後のオクテット (1) がネットワーク上の In-Sight ホストの 8 ビットアドレスとすると、このホストのサブネットマスクは、255.255.255.0 になります。


Popup_UserDataHoldingBuffer

ユーザデータ保持バッファ

ユーザデータ保持バッファは、Transfer User Data サービスを使用して PLC から書き込まれたユーザデータを一時的に保管しておく場所です。このバッファはビジョンシステムへ転送される大量のデータを蓄積するために使用されます。これによって、大規模な転送中、データの整合性が保たれます。Transfer User Data サービスを実行しても、Set User Data サービスが実行されるまで、In-Sight スプレッドシートはデータを読み取ることができません。このサービスが実行されると、転送されたデータはすべて、In-Sight スプレッドシートで使用できるようになります。このメカニズムによって、In-Sight スプレッドシートが常に一貫したデータにアクセスすることが保証されます。


ホワイトバランス

ホワイトバランス機能は、画像の中心の 100 × 100 領域の RGB (赤、緑、および青) チャネルのヒストグラムを生成します。各チャネルのピークレスポンスが検出されます。ビン数が最小の 2 つのチャネルが 最大のビン数に分割され、画像を取り込むたびに相互参照するカラーテーブルを作成するために使用されるスケール係数が得られます。ホワイトバランス設定はジョブとともに保存され、そのジョブが（ジョブのロードと同時ではなく）最初の画像を取り込むと有効になります。


[ホワイトバランス] ボタン

[ホワイトバランス] ボタンは、AcquireImage 関数のプロパティシートのボタンにあります (カラーの In-Sight センサのみ)。


XML

XML (Extensible Markup Language)

XML(Extensible Markup Language)は、HTML に似た Web ドキュメントオーサリング言語です。HTML がテキストおよびグラフィックスアプリケーションを主な対象としているのに対して、XML は、グループに編成された自動処理が可能なデータを格納するために、高度なカスタマイズが可能な標準方式を作成する目的で開発されました。

XML フォーマットに関する詳細な技術情報については、http://www.w3.org/XML を参照してください。


エレクトロニックデータシート

エレクトロニックデータシートとは

In-Sight エレクトロニックデータシートが置かれている場所

In-Sight エレクトロニックデータシートの使用方法

エレクトロニックデータシートとは

エレクトロニックデータシート (EDS) は、ネットワーク上の In-Sight センサを識別するためのテキストファイルで、Rockwell Software の RSLinx などのさまざまなネットワーク設定ツールにより使用されます。

In-Sight エレクトロニックデータシートが置かれている場所

In-Sight エレクトロニックデータシートファイルは、In-Sight Explorer の EDS サブフォルダにインストールされます。デフォルトでは、EDS ファイルへのフルパスは C:¥Program Files¥Cognex¥In-Sight¥In-Sight Explorer <version>¥EDS です。

In-Sight エレクトロニックデータシートの使用方法

ここでは、Cognex EDS ファイルを、Rockwell Software の RSLinx リビジョン 2.43 に統合する手順を例として説明します。

Cognex EDS ファイルはロードされておらず、Ethernet ドライバは In-Sight センサを識別するように設定されていると仮定すると、RSWho アプリケーションが次のように表示されて、検出された In-Sight センサが [Unrecognized Device]（認識されないデバイス）であることを示す場合があります。

RSLinx 内で In-Sight センサを正しく識別するには、次の操作を実行します。

  1. RSLinx で、[File...Exit and Shutdown] を選択します。
  2. [スタート] → [すべてのプログラム] → [Rockwell Software] → [RSLinx Tools] → [EDS Hardware Installation Tool] の順にクリックします。

  3. [追加] をクリックします。

  4. [Register a directory of EDS files] を選択します。
  5. 必要に応じて、In-Sight ソフトウェアフォルダの EDS サブディレクトリを参照します。
  6. [Next] をクリックします。

  7. [Next] をクリックします。

  8. [Next] をクリックします。

  9. [Next] をクリックします。

  10. [Finish] をクリックします。
  11. [Exit] をクリックして、ハードウェアインストレーションツールを終了します。
  12. [スタート] → [すべてのプログラム] → [Rockwell Software] → [RSLinx] → [RSLinx] の順にクリックします。
  13. [RSLinx Communication Service] [image] システムトレイアイコンをダブルクリックします。
  14. [Communications...RSWho] を選択します。
  15. 適切なドライバをツリーから選択します。

数分後に、RSLinx は次のようにネットワーク上の In-Sight センサを正しく識別します。


GetAngle 関数

データアクセス

In-Sight 関数リファレンス

GetAngle 関数 は、次のタイプの構造体に関する、特定の特徴間の角度を判定するために使用されるデータアクセス関数です。

  • ブロブ関数
  • 距離関数
  • エッジ関数
  • ID コード関数
  • パターン関数
  • 構造体 (十字、フィクスチャ、および領域のみ)
  • テキスト

GetAngle 関数の使用方法

GetAngle 関数 関数の一般的なシンタックスは、次のとおりです。

   GetAngle 関数(構造体, [インデックス])

ここで、構造体は、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、または [image] 構造体を含むセルへの参照です。

インデックス (オプション) は、指定された構造体で、アクセスの対象となる要素を決定します。

注意: インデックスは、 [image] 、 [image] 、 [image] 、および [image] 構造体にのみ適用されます。


GetArea 関数

データアクセス

In-Sight 関数リファレンス

GetArea 関数 は、次に挙げるタイプのデータ構造体のうちの 1 つから、面積 (ピクセルの数) を返すために使用されるデータアクセス関数です。

  • ブロブ関数
  • Image

GetArea 関数の使用方法

GetArea 関数 関数の一般的なシンタックスは、次のとおりです。

   GetArea 関数(構造体, [インデックス])

ここで、構造体は、 [image] または [image] データ構造体を含んでいるセルへの参照です。

インデックス（オプション）は、アクセスする構造体の要素を決定します。

注意: インデックスは、 [image] 構造体を参照している場合のみ適用されます。


GetCol 関数

データアクセス

In-Sight 関数リファレンス

GetCol 関数 は、次のデータ構造体から列座標 (Y 座標) を読み込むために使用されるデータアクセス関数です。

  • ブロブ関数
  • CircleFit 関数
  • 距離関数
  • エッジ関数
  • ID コード関数
  • IDMax 関数
  • Image
  • LineFit 関数
  • パターン関数
  • 構造体 (Annulus、サークル、十字、フィクスチャ、ライン、ポイント、および領域)
  • テキスト (文字照合/認識) 関数

GetCol 関数 の使用方法

GetCol 関数 関数の一般的なシンタックスは、次のとおりです。

   GetCol 関数(構造体, [インデックス 1], [インデックス 2])

ここで、構造体は、次のデータ構造体を含むセルへの参照です。 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、または [image] 。

インデックス 1 (オプション) は、参照する構造体で、アクセスの対象となる要素を指定します。

インデックス2 (オプション) は端点 (0 または 1) ( [image] のみ) またはインデックス付きシンボル ( [image] のみ) を指定します。


GetColor 関数

データアクセス

In-Sight 関数リファレンス

GetColor 関数 は、次の構造体から前景色情報を返すために使用されるデータアクセス関数です。

  • ブロブ関数
  • ID コード関数

GetColor 関数の使用方法

GetColor 関数の一般的なシンタックスは、次のとおりです。

   GetColor 関数(構造体, [インデックス])

ここで、構造体は、 [image] または [image] データ構造体を含むセルへの参照です。

インデックス ( [image] のみ) は、構造体のどのブロブを参照するかを決定します。


GetContrast 関数

データアクセス

In-Sight 関数リファレンス

GetContrast 関数は、次の構造体から前景 / 背景のコントラスト情報を返すデータアクセス関数です。

  • エッジ関数
  • ID コード関数
  • IDVerify 関数
  • パターン関数
  • テキスト (文字照合/認識) 関数

GetContrast 関数の使用方法

GetContrast 関数の一般的なシンタックスは、次のとおりです。

   GetContrast 関数(構造体, [インデックス])

ここで、構造体は、 [image] 、 [image] 、 [image] 、 [image] 、または [image] データ構造体を含むセルへの参照です。

インデックス (オプション) は、抽出の対象となる構造体要素を指定します ( [image] および [image] 構造体のみ)。


GetDecodability 関数

データアクセス

In-Sight 関数リファレンス

GetDecodability 関数は、次の構造体から最小デコード可能性を返すデータアクセス関数です。

  • ID コード関数

GetDecodability 関数の使用方法

GetDecodability 関数の一般的なシンタックスは、次のとおりです。

   GetDecodability 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetDefect 関数

データアクセス

In-Sight 関数リファレンス

GetDefect 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数

GetDefect 関数の使用方法

GetDefect 関数の一般的なシンタックスは、次のとおりです。

   GetDefect 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetDistance 関数

データアクセス

In-Sight 関数リファレンス

GetDistance 関数は、次の構造体から距離情報を返すデータアクセス関数です。

  • CircleFit 関数
  • 距離関数
  • LineFit 関数

GetDistance 関数の使用方法

GetDistance 関数の一般的なシンタックスは、次のとおりです。

   GetDistance 関数(構造体, [インデックス])

ここで、構造体は、 [image] 、 [image] 、または [image] 構造体を含んでいるセルへの参照です。

インデックスは、参照される構造体の点を決定します ( [image] および [image] のみ)。


GetECLevel 関数

データアクセス

In-Sight 関数リファレンス

GetECLevel 関数は、次の構造体から誤り訂正レベル情報を返すデータアクセス関数です。

  • ID コード関数

GetECLevel 関数の使用方法

GetECLevel 関数の一般的なシンタックスは、次のとおりです。

   GetECLevel 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetECMin 関数

データアクセス

In-Sight 関数リファレンス

GetECMin 関数は、次の構造体から最小エッジレスポンス情報を返すデータアクセス関数です。

  • ID コード関数

GetECMin 関数の使用方法

GetECMin 関数の一般的なシンタックスは、次のとおりです。

   GetECMin 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetEdgeDistance 関数

データアクセス

In-Sight 関数リファレンス

GetEdgeDistance 関数 関数は、2 つのエッジ (エッジペア) 間の距離を判定するために使用されるデータアクセス関数です。

  • エッジ関数

GetEdgeDistance 関数の使用方法

GetEdgeDistance 関数 関数の一般的なシンタックスは、次のとおりです。

   GetEdgeDistance 関数(構造体, [インデックス])

ここで、構造体は、 [image] 構造体を含んでいるセルへの参照です。

インデックス（オプション）は、指定された構造体で、アクセスの対象となる要素を決定します。

注意: インデックスは、 [image] 構造体にのみ適用されます。


GetErrorCode 関数

データアクセス

In-Sight 関数リファレンス

GetErrorCode 関数 関数は、大半の構造体や関数からの診断コードを返すデータアクセス関数です。

注意: #ERR に対応するエラーコードがない場合、GetErrorCode 関数は -1 を返します。

GetErrorCode 関数の使用方法

GetErrorCode 関数 関数の一般的なシンタックスは、次のとおりです。

   GetErrorCode(構造体)


GetErrorCount 関数

データアクセス

In-Sight 関数リファレンス

GetErrorCount 関数は、次の構造体からエラーの数を返すデータアクセス関数です。

  • ID コード関数

GetErrorCount 関数の使用方法

GetErrorCount 関数の一般的なシンタックスは、次のとおりです。

   GetErrorCount 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetErrorString 関数

データアクセス

In-Sight 関数リファレンス

GetErrorString 関数 関数は、大半の構造体や関数からの診断情報を返すデータアクセス関数です。

GetErrorString 関数の使用方法

GetErrorString 関数 関数の一般的なシンタックスは、次のとおりです。

   GetErrorString 関数(構造体)


フォーマットを取得

GetFormat関数

データアクセス

In-Sight 関数リファレンス

GetFormat 関数は、次の構造体からシンボルフォーマット情報を返すデータアクセス関数です。

  • ID コード関数

GetFormat 関数の使用方法

GetFormat 関数の一般的なシンタックスは、次のとおりです。

   GetFormat 関数 (構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetFormat 関数の値

GetFormat 関数の値 |
ID コード関数 | In-Sight 関数リファレンス

次の表は ReadIDCode 関数で、2D シンボルのフォーマットを表す値のリストを示します。

  • データマトリックス ECC 200 シンボルフォーマットを表す値
  • データマトリックス ECC 0～140 シンボルフォーマットを表す値
  • RSS CC-A シンボルフォーマットを表す値
  • QR コードシンボルフォーマットを表す値

注意: PDF417 シンボルに対しては常に 0 が返されます。

データマトリックス ECC 200 シンボルフォーマットを表す値

Value | 行数 | 列数
0 | 10 | 10
1 | 12 | 12
2 | 14 | 14
3 | 16 | 16
4 | 18 | 18
5 | 20 | 20
6 | 22 | 22
7 | 24 | 24
8 | 26 | 26
9 | 32 | 32
10 | 36 | 36
11 | 40 | 40
12 | 44 | 44
13 | 48 | 48
14 | 8 | 18
15 | 8 | 32
16 | 12 | 26
17 | 12 | 36
18 | 16 | 36
19 | 16 | 48

データマトリックス ECC 0～140 シンボルフォーマットを表す値

Value | 行数 | 列数
20 | 9 | 9
21 | 11 | 11
22 | 13 | 13
23 | 15 | 15
24 | 17 | 17
25 | 19 | 19
26 | 21 | 21
27 | 23 | 23
28 | 25 | 25
29 | 27 | 27
30 | 29 | 29
31 | 31 | 31
32 | 33 | 33
33 | 35 | 35
34 | 37 | 37
35 | 39 | 39
36 | 41 | 41
37 | 43 | 43
38 | 45 | 45
39 | 47 | 47
40 | 49 | 49

RSS CC-A シンボルフォーマットを表す値

Value | 行数 | 列数
0 | 5 | 2
1 | 6 | 2
2 | 7 | 2
3 | 8 | 2
4 | 9 | 2
5 | 10 | 2
6 | 12 | 2
7 | 3 | 4
8 | 4 | 4
9 | 4 | 5
10 | 4 | 6
11 | 4 | 7
12 | 4 | 3
13 | 5 | 3
14 | 6 | 3
15 | 7 | 3
16 | 8 | 3

QR コードシンボルフォーマットを表す値

Value | 行数 | 列数
0 | 21 | 21
1 | 25 | 25
2 | 29 | 29
3 | 33 | 33
4 | 37 | 37
5 | 41 | 41
6 | 45 | 45
7 | 49 | 49
8 | 53 | 53
9 | 57 | 57
10 | 61 | 61
11 | 65 | 65
12 | 69 | 69
13 | 73 | 73
14 | 77 | 77
15 | 81 | 81
16 | 85 | 85
17 | 89 | 89
18 | 93 | 93
19 | 97 | 97
20 | 101 | 101
21 | 105 | 105
22 | 109 | 109


GetGrade 関数

データアクセス

In-Sight 関数リファレンス

GetGrade 関数 関数は、次の構造体から全体的な品質のグレード情報を返すデータアクセス関数です。

  • ID コード関数
  • IDVerify 関数

GetGrade 関数 の使用方法

GetGrade 関数 関数の一般的なシンタックスは、次のとおりです。

   GetGrade 関数(構造体, [構造体2])

ここで、構造体は、 [image] または [image] データ構造体を含むセルへの参照です。

オプションの構造体2 パラメータは、 [image] 構造体を参照する場合のみに適用されます。


グリッドの列数

GetGridCols 関数

データアクセス

In-Sight 関数リファレンス

GetGridCols 関数は、次の構造体から列の数を返すデータアクセス関数です。

  • ID コード関数

GetGridCols 関数の使用方法

GetGridCols 関数の一般的なシンタックスは、次のとおりです。

   GetGridCols 関数 (構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


グリッドの行数

GetGridRows 関数

データアクセス

In-Sight 関数リファレンス

GetGridRows 関数は、次の構造体から行の数を返す データアクセス関数です。

  • ID コード関数

GetGridRows 関数の使用方法

GetGridRows 関数の一般的なシンタックスは、次のとおりです。

   GetGridRows 関数 (構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetGrowth 関数

データアクセス

In-Sight 関数リファレンス

GetGrowth 関数は、次の構造体から印刷拡張の結果を返すデータアクセス関数です。

  • ID コード関数
  • IDVerify 関数

GetGrowth 関数の使用方法

GetGrowth 関数の一般的なシンタックスは、次のとおりです。

   GetGrowth 関数(構造体)

ここで、構造体は、 [image] または [image] 構造体を含むセルへの参照です。


GetHigh 関数

データアクセス

In-Sight 関数リファレンス

GetHigh 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数
  • 画像関数
  • 構造体 (十字および領域のみ)
  • テキスト (文字照合/認識) 関数

GetHigh 関数の使用方法

GetHigh 関数の一般的なシンタックスは、次のとおりです。

   GetHigh 関数(構造体, [インデックス])

ここで、構造体は、 [image] 、 [image] 、 [image] 、 [image] 、または [image] 構造体を含むセルへの参照です。

インデックスは、参照の対象となるインデックス付き文字を決定します ( [image] のみ)。


GetLearned 関数

データアクセス

In-Sight 関数リファレンス

GetLearned 関数は、次の構造体から認識された状態を返すです。

  • ID コード関数

GetLearned 関数の使用方法

GetLearned 関数の一般的なシンタックスは、次のとおりです。

   GetLearned 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetMax 関数

データアクセス

In-Sight 関数リファレンス

GetMax 関数は、次の構造体から情報を返すデータアクセス関数です。

  • Delay
  • エッジ関数

GetMax 関数の使用方法

GetMax 関数の一般的なシンタックスは、次のとおりです。

   GetMax 関数(構造体)

ここで、構造体は、 [image] または [image] 構造体を含むセルへの参照です。


GetMaxBarSkew 関数

データアクセス

In-Sight 関数リファレンス

GetMaxBarSkew 関数 関数は、次の構造体からバーの最大スキューを返すデータアクセス関数です。

  • ID コード関数

GetMaxBarSkew 関数 の使用方法

GetMaxBarSkew 関数 関数の一般的なシンタックスは、次のとおりです。

   GetMaxBarSkew 関数(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


GetMaxBarWidth 関数

データアクセス

In-Sight 関数リファレンス

GetMaxBarWidth 関数 関数は、次の構造体からバーの最大幅を返すデータアクセス関数です。

  • ID コード関数

GetMaxBarWidth 関数 の使用方法

GetMaxBarWidth 関数 関数の一般的なシンタックスは、次のとおりです。

   GetMaxBarWidth 関数(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


GetMaxDist 関数

データアクセス

In-Sight 関数リファレンス

GetMaxDist 関数は、次の構造体から距離情報を返すデータアクセス関数です。

  • CircleFit 関数
  • LineFit 関数

GetMaxDist 関数の使用方法

GetMaxDist 関数の一般的なシンタックスは、次のとおりです。

   GetMaxDist(構造体)

ここで、構造体は、 [image] または [image] 構造体を含んでいるセルへの参照です。


GetMaxDistIndex 関数

データアクセス

In-Sight 関数リファレンス

GetMaxDistIndex 関数は、次の構造体からの情報を返すデータアクセス関数です。

  • CircleFit 関数
  • LineFit 関数

GetMaxDistIndex 関数の使用方法

GetMaxDistIndex 関数の一般的なシンタックスは、次のとおりです。

   GetMaxDistIndex関数(構造体)

ここで、構造体は、 [image] または [image] 構造体を含んでいるセルへの参照です。


GetMin 関数

データアクセス

In-Sight 関数リファレンス

GetMin 関数は、次の構造体から情報を返すデータアクセス関数です。

  • Delay
  • エッジ関数

GetMin 関数の使用方法

GetMin 関数の一般的なシンタックスは、次のとおりです。

   GetMin 関数(構造体)

ここで、構造体は、 [image] または [image] 構造体を含むセルへの参照です。


GetMinBarSkew 関数

データアクセス

In-Sight 関数リファレンス

GetMinBarSkew 関数 関数は、次の構造体から最小スキューを返すデータアクセス関数です。

  • ID コード関数

GetMinBarSkew 関数 の使用方法

GetMinBarSkew 関数 関数の一般的なシンタックスは、次のとおりです。

   GetMinBarSkew 関数(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


GetMinBarWidth 関数

データアクセス

In-Sight 関数リファレンス

GetMinBarWidth 関数 関数は、次の構造体からバーの最小幅を返すデータアクセス関数です。

  • ID コード関数

GetMinBarWidth 関数 の使用方法

GetMinBarWidth 関数 関数の一般的なシンタックスは、次のとおりです。

   GetMinBarWidth 関数(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


GetMirror 関数

データアクセス

In-Sight 関数リファレンス

GetMirror 関数 関数は、次の構造体から鏡像化の状態を返すデータアクセス関数です。

  • ID コード関数

GetMirror 関数 の使用方法

GetMirror 関数 関数の一般的なシンタックスは、次のとおりです。

   GetMirror 関数(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


GetModulation 関数

データアクセス

In-Sight 関数リファレンス

GetModulation 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数

GetModulation 関数の使用方法

GetModulation 関数の一般的なシンタックスは、次のとおりです。

   GetModulation 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetNBars 関数

データアクセス

In-Sight 関数リファレンス

GetNBars 関数 関数は、次の構造体からバーの数を返すデータアクセス関数です。

  • ID コード関数

GetNBars 関数 の使用方法

GetNBars 関数 関数の一般的なシンタックスは、次のとおりです。

   GetNBars 関数(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


GetNFound 関数

データアクセス

In-Sight 関数リファレンス

GetNFound 関数は、次の構造体で検出されたアイテムの数を返すデータアクセス関数です。

  • ブロブ関数
  • エッジ関数
  • パターン関数

GetNFound 関数の使用方法

GetNFound 関数の一般的なシンタックスは、次のとおりです。

   GetNFound 関数(構造体)

ここで、構造体は、 [image] 、 [image] 、または [image] データ構造体を含んでいるセルへの参照です。


GetNonUniformity 関数

データアクセス

In-Sight 関数リファレンス

GetNonUniformity 関数 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数
  • IDVerify 関数

GetNonUniformity 関数 の使用方法

GetNonUniformity 関数 関数の一般的なシンタックスは、次のとおりです。

   GetNonUniformity 関数(構造体)

ここで、構造体は、 [image] 、または [image] データ構造体を含むセルへの参照です。


GetNPointsUsed 関数

データアクセス

In-Sight 関数リファレンス

GetNPointsUsed は、次の構造体からの情報を返すデータアクセス関数です。

  • CircleFit: データ構造体の円の作成に使用された点の数を返します。
  • LineFit: データ構造体の線の計算に使用された点の数を返します。

GetNPointsUsed 関数の使用方法

GetNPointsUsed 関数の一般的なシンタックスは、次のとおりです。

GetNPointsUsed(構造体)

ここで、構造体は、 [image] または [image] 構造体を含んでいるセルへの参照です。


GetNumEdges 関数

データアクセス

In-Sight 関数リファレンス

GetNumEdges 関数は、次の構造体からエッジの数を返すデータアクセス関数です。

  • ID コード関数

GetNumEdges 関数の使用方法

GetNumEdges 関数の一般的なシンタックスは、次のとおりです。

   GetNumEdges 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetPosition 関数

データアクセス

In-Sight 関数リファレンス

GetPosition 関数は、次の構造体から画像領域に対するエッジまたはエッジペアの中心の相対位置を返すデータアクセス関数です。

  • エッジ関数

GetPosition 関数の使用方法

GetPosition 関数の一般的なシンタックスは、次のとおりです。

   GetPosition 関数(構造体, [インデックス])

ここで、構造体は、 [image] データ構造体を含んでいるセルへの参照です。

インデックス (オプション) は、抽出の対象となる構造体要素を指定します。


GetQuietZonesCheck 関数

データアクセス

In-Sight 関数リファレンス

GetQuietZonesCheck 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数

GetQuietZonesCheck 関数の使用方法

GetQuietZonesCheck 関数の一般的なシンタックスは、次のとおりです。

   GetQuietZonesCheck 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetRadius 関数

データアクセス

In-Sight 関数リファレンス

GetRadius 関数は、次の構造体から半径の値を返すデータアクセス関数です。

  • CircleFit 関数
  • エッジ関数
  • 構造体（Annulusおよびサークルのみ）

GetRadius 関数の使用方法

GetRadius 関数の一般的なシンタックスは、次のとおりです。

   GetRadius 関数(構造体, [インデックス])

ここで、構造体は、 [image] 、 [image] 、 [image] 、または [image] 構造体を含んでいるセルへの参照です。

インデックス（オプション）は、参照する構造体で、アクセスの対象となる要素を決定します。

注意: インデックスは、この関数では通常 0 です。


GetReflectanceDark 関数

データアクセス

In-Sight 関数リファレンス

GetReflectanceDark 関数は、次の構造体から最小 (暗) 反射を返すデータアクセス関数です。

  • ID コード関数

GetReflectanceDark 関数の使用方法

GetReflectanceDark 関数の一般的なシンタックスは、次のとおりです。

   GetReflectanceDark 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


GetReflectanceLight 関数

データアクセス

In-Sight 関数リファレンス

GetReflectanceLight 関数は、次の構造体から最大 (明) 反射を返すデータアクセス関数です。

  • ID コード関数

GetReflectanceLight 関数の使用方法

GetReflectanceLight 関数の一般的なシンタックスは、次のとおりです。

   GetReflectanceLight 関数(構造体)

ここで、構造体は、 [image] 構造体を含むセルへの参照です。


解像度

データアクセス

In-Sight 関数リファレンス

解像度 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数

解像度 の使用方法

解像度 関数の一般的なシンタックスは、次のとおりです。

   解像度(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


行を取得

データアクセス

In-Sight 関数リファレンス

行を取得 関数は、次のデータ構造体から行座標 (Y 座標) を読み込むために使用されるデータアクセス関数です。

  • ブロブ関数
  • CircleFit 関数
  • 距離関数
  • エッジ関数
  • ID コード関数
  • IDMax 関数
  • Image
  • LineFit 関数
  • パターン関数
  • 構造体 (Annulus、サークル、十字、フィクスチャ、ライン、ポイント、および領域)
  • テキスト (文字照合/認識) 関数

行を取得 の使用方法

行を取得 関数の一般的なシンタックスは、次のとおりです。

   行を取得(構造体, [インデックス 1], [インデックス 2])

ここで、構造体は、次のデータ構造体を含むセルへの参照です。 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、 [image] 、または [image] 。

インデックス 1 (オプション) は、参照する構造体で、アクセスの対象となる要素を指定します。

インデックス 2 (オプション) は端点 (0 または 1) を指定します( [image] のみ)。またはインデックス付きシンボル ( [image] のみ) を指定します。


GetScore 関数

データアクセス

In-Sight 関数リファレンス

GetScore 関数 は、次の構造体から得点情報を返すデータアクセス関数です。

  • ブロブ関数
  • エッジ関数
  • パターン関数
  • テキスト（文字照合/認識）関数

GetScore 関数の使用方法

GetScore 関数の一般的なシンタックスは、次のとおりです。

   GetScore 関数(構造体, [インデックス0], [インデックス1])

ここで、構造体は、 [image] 、 [image] 、 [image] 、または [image] データ構造体を含んでいるセルへの参照です。

インデックス0 は、参照する構造体で、アクセスの対象となる要素を指定します。

オプションのインデックス1 パラメータが 1 の場合は、2 番目に高い得点の文字の得点を返します（ [image] のみ）。


GetSDev 関数

データアクセス

In-Sight 関数リファレンス

GetSDev 関数は、次の構造体から標準偏差の値を返すデータアクセス関数です。

  • Delay
  • エッジ関数

GetSDev 関数の使用方法

GetSDev 関数の一般的なシンタックスは、次のとおりです。

   GetSDev 関数(構造体)

ここで、構造体は、 [image] または [image] 構造体を含むセルへの参照です。


GetSDevBarSkew 関数

データアクセス

In-Sight 関数リファレンス

GetSDevBarSkew 関数 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数

GetSDevBarSkew 関数 の使用方法

GetSDevBarSkew 関数 関数の一般的なシンタックスは、次のとおりです。

   GetSDevBarSkew 関数(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


GetSDevBarSpace 関数

データアクセス

In-Sight 関数リファレンス

GetSDevBarSpace 関数 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数

GetSDevBarSpace 関数 の使用方法

GetSDevBarSpace 関数 関数の一般的なシンタックスは、次のとおりです。

   GetSDevBarSpace 関数(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


GetSDevBarWidth 関数

データアクセス

In-Sight 関数リファレンス

GetSDevBarWidth 関数 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数

GetSDevBarWidth 関数 の使用方法

GetSDevBarWidth 関数 関数の一般的なシンタックスは、次のとおりです。

   GetSDevBarWidth 関数(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


GetSDevContrast 関数

データアクセス

In-Sight 関数リファレンス

GetSDevContrast 関数 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数

GetSDevContrast 関数 の使用方法

GetSDevContrast 関数 関数の一般的なシンタックスは、次のとおりです。

   GetSDevContrast 関数(構造体)

ここで、構造体は、 [image] データ構造体を含むセルへの参照です。


GetString 関数

データアクセス

In-Sight 関数リファレンス

GetString 関数は、次の構造体または関数から情報を返すデータアクセス関数です。

  • オペレータ I/F 関数
  • ID コード関数
  • 画像関数
  • テキスト (文字照合/認識) 関数

GetString 関数の使用方法

GetString 関数の一般的なシンタックスは、次のとおりです。

   GetString 関数(構造体)

ここで、構造体は、 [image] 、 [image] 、 [image] データ構造体、またはそのほかの関数を含むセルへの参照です。


GetThresh 関数

データアクセス

In-Sight 関数リファレンス

GetThresh 関数は、次の構造体から 2 値化しきい値を返すデータアクセス関数です。

  • ブロブ関数
  • 画像関数

GetThresh 関数の使用方法

GetThresh 関数の一般的なシンタックスは、次のとおりです。

   GetThresh 関数(構造体)

ここで、構造体は、 [image] または [image] データ構造体を含んでいるセルへの参照です。


GetUnusedEC 関数

データアクセス

In-Sight 関数リファレンス

GetUnusedEC 関数 関数は、次の構造体から未使用誤り訂正テストの結果を返すデータアクセス関数です。

  • ID コード関数
  • IDVerify 関数

GetUnusedEC 関数 の使用方法

GetUnusedEC 関数 関数の一般的なシンタックスは、次のとおりです。

   GetUnusedEC 関数(構造体)

ここで、構造体は、 [image] 、または [image] データ構造体を含むセルへの参照です。


GetValue 関数

データアクセス

In-Sight 関数リファレンス

GetValue 関数は、次の構造体から情報を返すデータアクセス関数です。

  • カラーヒストグラム関数
  • Delay
  • ヒストグラム関数

GetValue 関数の使用方法

GetValue 関数の一般的なシンタックスは、次のとおりです。

   GetValue 関数(構造体, [インデックス], [カラー])

ここで、構造体は、 [image] 、 [image] 、または [image] データ構造体を含むセルへの参照です。

インデックス (オプション) は、ヒストグラム値をカウントするビンを指定します ( [image] および [image] のみ)。

カラー (オプション) は、ヒストグラムデータの読み出しに使用する色成分を決定します ( [image] のみ)。


GetWide 関数

データアクセス

In-Sight 関数リファレンス

GetWide 関数は、次の構造体から情報を返すデータアクセス関数です。

  • ID コード関数
  • 画像関数
  • 構造体 (十字および領域のみ)
  • テキスト (文字照合/認識) 関数

GetWide 関数の使用方法

GetWide 関数の一般的なシンタックスは、次のとおりです。

   GetWide 関数(構造体, [インデックス])

ここで、構造体は、 [image] 、 [image] 、 [image] 、 [image] 、または [image] データ構造体を含むセルへの参照です。

インデックスは、計測する文字要素を決定します ( [image] のみ)。


統計関数

統計関数 |
データアクセス | In-Sight 関数リファレンス

注意: 返される値はすべて、参照された [image] 構造体から取得され、ComputeStats 関数の作成時にスプレッドシートに挿入されます。

関数 | 説明
GetLatest(統計) | 統計の計算に使用された最新の値を返します。
GetMax(統計) | 統計の計算に使用された最も大きな値を返します。
GetMean(統計) | 値の平均を返します。
GetMin(統計) | 統計の計算に使用された最も小さな値を返します。
GetNumError(統計) | 参照値に対するエラーの総数を返します。
GetNumSamples(統計) | 計算に使用されたサンプルの総数を返します。
GetRange(統計) | 最小値と最大値の間の範囲を返します。
GetSDev(統計) | 値の標準偏差を返します。
GetSum(統計) | 値の合計を返します。
GetVariance(統計) | 値の平方偏差を返します。