Adapterプロジェクトの生成ツール
以下では、Adapterプロジェクトの生成ツールの概要と、Adapterプロジェクトの生成ツールを使用してAdapterプロジェクトをすばやく生成する方法について説明します。
概要
Adapterプロジェクトの生成ツールは、Adapterプロジェクトをすばやく生成するためのツールです。グラフィカルなユーザーインターフェースでパラメータを簡単に設定するだけで、対応するAdapterプロジェクトを迅速に作成し、それを基にして標準インターフェースが実装できない複雑な機能を実現するためのカスタム開発を行うことができます。
Adapterプロジェクトは、外部通信機器(産業用ロボット、上位システム、PLCなど)とMech-Vision/Mech-Vizソフトウェアを接続するPythonプログラムです。内部でMech-Vision/Mech-Vizと通信し、外部機器とPythonで実現可能な通信プロトコルを使用して通信します。
Adapterプロジェクトの生成ツールとAdapterプロジェクトの関係を下図に示します。
Adapterプロジェクトの生成ツールの主要な機能は、ロボットプログラムとAdapterプログラム間の通信コマンドを設定することです。設定可能なコマンドには、Mech-Visionの画像撮影コマンド、Mech-Visionのステップパラメータの設定コマンド、Mech-Vizの画像撮影コマンド、Mech-Vizのステップパラメータの設定コマンドが含まれます。通信先や実際の要件に応じて、これらのコマンドのいずれかまたは複数を設定できます。 Adapterプロジェクトの生成ツールの主な設定手順は以下の通りです。
下表に従って通信先を選択してください。
通信先 |
説明 |
適用シーン |
Mech-Vision |
Mech-Visionを使用してビジョン結果または計画された経路を取得します。 |
ビジョン結果のみを送信するプロジェクトや、簡単な経路計画プロジェクト。 |
Mech-Viz |
Mech-Vizを使用して動作経路を計画し、Mech-VizプロジェクトはMech-Visionプロジェクトに対応するビジョンサービスを呼び出す必要があります。また、Mech-VizプロジェクトがMech-Visionプロジェクトに対応するビジョンサービスを呼び出す前に、Mech-Visionのステップパラメータを設定する必要はありません。 |
より複雑な経路計画プロジェクト。 |
Mech-Vision&Mech-Viz |
Mech-Vizを使用して動作経路を計画する場合、以下の2つの状況があります。両方の通信先をMech-Vision&Mech-Vizに選択できます。
|
上記の2つの場合が要件を満たしていない場合に選択可能。 |
Adapterプロジェクトの生成ツールを使用してAdapterプロジェクトを生成
以下では、Adapterプロジェクトの生成ツールを使用してAdapterプロジェクトをすばやく生成する方法について説明します。
使用する前に、Mech-VisionソリューションとMech-Vizプロジェクト(存在する場合)が作成され、開かれていることを確認してください。 |
Adapterプロジェクトの生成ツールを開く
Mech-Visionでは、メニューバーの
をクリックすると、Adapterプロジェクトの生成ツール の画面が表示されます。
|
基本設定
-
基本設定 の画面では、Adapterプロジェクト名、通信先、通信プロトコル、パラメータ形式 を設定します。
設定手順は、通信先 によって異なります。画面左側の設定項目も 通信先 に応じて異なります。例えば、通信先を Mech-Vision に選択した場合、基本設定、Mech-Visionの入力、Mech-Visionの出力、ステータスコードの設定 のみを設定する必要があります。 下記の説明に従って 基本設定 を行ってください。
設定項目 説明 Adapterプロジェクト名
Adapterプロジェクトの名前を設定します。プロジェクト名は、アルファベット、数字、アンダースコア(数字で始まるものは不可)の文字列です。
通信先
Mech-Vision
Mech-Visionの入力と出力のみを設定する必要があります。
Mech-Viz
Mech-Vizの入力と出力のみを設定する必要があります。
Mech-Vision&Mech-Viz
Mech-VisionおよびMech-Vizの入力と出力を設定する必要があります。
通信プロトコル
TCP/IP
通信形式
通信用に送信する文字列の形式を指定します。現在はASCII文字列のみがサポートされています。
サービスタイプ
AdapterプロジェクトがTCP/IP通信のサーバーまたはクライアントとして動作するかどうかを指定します。デフォルトはサーバーとして動作します。
パラメータ形式
並進の単位
mm(ミリメートル、初期値)またはm(メートル)を選択可能です。
回転の単位
°(角度、初期値)またはrad(ラジアン)を選択可能です。
回転形式
オイラー角
通常はオイラー角を選択します。ロボットのタイプに応じて、対応する オイラー角のタイプ を選択します。
-
ABB/EPSON/ESTUN/KUKA/NACHI: Z-Y'-X''(ZYX_ROTATED)
-
AUBO/DENSO/DOBOT/DELTA/EFORT/ELITE/FANUC/FLEXIV/FR/HANS/HYUNDAI/JAKA/MELFA/ROKAE/SIASUN/STEP/TM/YASKAWA:X-Y-Z(XYZ_STATIC)
-
COMAU/DOOSAN/KAWASAKI/QJAR:Z-Y'-Z''(ZYZ_ROTATED)
-
STAUBLI/TURIN:X-Y'-Z''(XYZ_ROTATED)
-
UR:ur_rot
四元数
四元数を選択すると、入出力のすべての位置姿勢データが四元数の形式で送受信されます。
その他のデータ形式
浮動小数点以下の桁数
データの小数点以下の桁数を設定します。初期値は4で、設定可能な範囲は1~20です。
文字列の区切り文字
データ間の区切り文字を設定します。初期値は英語のコンマで、一般的な区切り文字は英語のコンマ、セミコロン、スペースです。
通信プロトコルをTCP/IPとASCIIに選択する場合のみ、この3つの項目が表示されます。
文字列の終端文字
コマンドの終端文字を設定します。初期値は\rです。一般的な終端文字は\n、\r、\r\nです。
先頭文字と末尾文字を追加
コマンド全体の先頭文字と末尾文字を設定します。チェックを入れると、先頭文字と末尾文字を入力する必要があります。デフォルトでは、チェックを入れていません。例えば、コマンドが「p,1\r」である場合、先頭文字が「<」で末尾文字が「>」であれば、コマンド全体は「<p,1>\r」となります。
-
-
上記の設定が完了したら、次へ をクリックします。コマンド設定画面は選択した通信先によって異なります。
「Mech-Visionの入力」を設定
Mech-Visionの入力 画面では、ロボットまたは上位システムがMech-Visionに送信するコマンドの形式を設定します。設定項目には、画像撮影コマンド、Mech-Visionのステップパラメータを設定 および Mech-Visionからロボット名を取得 が含まれます。
画像撮影コマンドを設定
-
Mech-Visionの撮影コマンドを設定します。
このコマンドは、Mech-Visionプロジェクトを実行するために使用されます。また、このコマンドは必要に応じて以下の機能を設定できます。
-
Mech-Visionプロジェクトにパラメータレシピが含まれる場合、このコマンドはパラメータレシピの切替えに対応します。
-
カメラがEye in Hand方式で取り付けられている場合、またはMech-Visionプロジェクトに「経路計画」ステップが含まれる場合、このコマンドを使用して撮影時のロボットの位置姿勢をMech-Visionプロジェクトに送信することができます。
下記の説明に従って 画像撮影コマンド を設定してください。
名前:コマンド全体における各部分の名前。
パラメータ値:各部分の名前に対応するパラメータ値。
位置:各部分がコマンド全体内での開始位置(1から始まるインデックスでソートされ、コンマで位置が区切られる)。
長さ:各部分が占めるフィールド数(フィールドは 文字列の区切り文字 で区切られたデータを指す)。
位置 と 長さ の関係:次のパラメータの開始位置 = 前のパラメータの開始位置 + 前のパラメータの長さ。
名前 パラメータ値 位置 長さ コマンドコード
Mech-Visionプロジェクトを実行するためのコマンドです。初期値はpで、必要に応じて変更することができます。
1(固定値)
1(固定値)
プロジェクト番号
Mech-Visionプロジェクト番号(正整数)です。
2(固定値)
1(固定値)
パラメータレシピ番号(オプション)
Mech-Visionプロジェクト内のパラメータレシピの番号であり、正の整数です。
変更可能
1(固定値)
撮影時のロボットの位置姿勢(オプション)
カメラがEye in Hand方式で取り付けられている場合、このコマンドを使用して撮影時のロボットの位置姿勢をMech-Visionプロジェクトに送信することができます。このパラメータを「JPs」または「JPs+フランジ位置姿勢」に変更することができます。
変更可能
-
回転形式をオイラー角に設定した場合:
-
位置姿勢の形式がJPsである場合、固定値6になります。
-
位置姿勢の形式が「JPs+フランジ位置姿勢」である場合、固定値12になります。
-
-
回転形式を四元数に設定した場合:
-
位置姿勢の形式がJPsである場合、固定値6になります。
-
位置姿勢の形式が「JPs+フランジ位置姿勢」である場合、固定値13になります。
-
-
-
パラメータ値、位置、長さ の列でハイライトされた内容をダブルクリックして、必要に応じて修正することができます。
-
異なるコマンドのコマンドコードはそれぞれ設定する必要があります。
-
異なるパラメータが占めるフィールドの位置が重複しないようにしてください。例えば、撮影時のロボットの位置姿勢の位置が3で、長さが12です。パラメータレシピ番号の位置が4で長さが1である場合、撮影時のロボットの位置姿勢の2番目のフィールド位置とパラメータレシピ番号の位置が重複します。パラメータレシピ番号の位置が15以上である場合、撮影時のロボットの位置姿勢とパラメータレシピ番号の位置は重複しません。
-
各パラメータに対応する位置に空白がある場合、デフォルトで0で埋められます。プレビュー時に、その空白位置は 予約位置 として表示され、対応する値は0です。例えば、パラメータレシピ番号の位置が3で長さが1で、撮影時のロボットの位置姿勢が6で長さが12の場合、位置4と5に空白があります。撮影時のロボットの位置姿勢の位置を4に変更すると、この空白位置が削除されます。位置を変更して、不要な空白位置を削除することをお勧めします。
-
-
上記の設定が完了したら、プレビュー をクリックすると、設定項目に対応するコマンド例が表示されます。
コマンドのプレビュー の下に、マウスカーソルをフィールド名の上に合わせると、フィールド名とそれに対応するデータがハイライト表示されます。
Mech-Visionのステップパラメータを設定(オプション)
パラメータレシピを使用してステップパラメータをプリセットできない場合、または外部情報に基づいてステップパラメータを設定する必要がある場合は、「Mech-Visionのステップパラメータを設定」コマンドを設定するために Mech-Visionのステップパラメータを設定 にチェックを入れます。
-
画像撮影コマンドとマージ にチェックを入れるかどうかを選択します。
「画像撮影コマンドとマージ」とは、画像撮影コマンドにMech-Visionのステップパラメータの設定を書き込む、つまり画像撮影コマンドに設定されたステップパラメータを追加することを意味します。Mech-Visionのステップパラメータを設定 コマンドは、Mech-Visionの画像撮影コマンドと組み合わせて1つのコマンドとして使用することも、単独のコマンドとして使用することもできます(この場合、画像撮影コマンドの前に呼び出す必要があります)。
下記の説明に従って 画像撮影コマンドとマージ にチェックを入れるかどうかを選択し、対応する設定を行ってください。
-
通信先を Mech-Vision&Mech-Viz に選択し、Mech-Visionのステップパラメータを設定する必要がある場合、画像撮影コマンドとマージ にチェックを入れる必要はありません。 下表に従って「Mech-Visionのステップパラメータを設定」コマンドを設定してから次の手順に進みます。
名前
パラメータ値
位置
長さ
コマンドコード
Mech-Visionのステップパラメータを設定するコマンドです。初期値はsで、変更することができます。
1(固定値)
1(固定値)
プロジェクト番号
Mech-Visionプロジェクト番号(正整数)です。
2(固定値)
1(固定値)
パラメータレシピ番号(オプション)
Mech-Visionプロジェクト内のパラメータレシピの番号であり、正の整数です。
変更可能
1(固定値)
-
通信先を Mech-Vision に選択し、Mech-Visionのステップパラメータを設定する必要がある場合、画像撮影コマンドとマージ にチェックを入れるかどうかを選択できます。画像撮影コマンドとマージ にチェックを入れた場合、上表の設定項目は画像撮影コマンドの設定を再利用します。
-
-
ステップパラメータを選択します。
ステップパラメータを選択 をクリックし、表示される画面で以下の操作に従ってステップパラメータを選択します。
-
設定するステップと対応するパラメータ名を表示するために、ソリューション内のプロジェクトを選択します。
-
ステップを選択 の下に必要なステップを選択します。
-
ステップのパラメータ の下にステップのパラメータにチェックを入れます。
-
確認 をクリックします。
-
Mech-Visionのステップパラメータを設定 にチェックが入っている場合は、ステップパラメータを選択する必要があり、そうでない場合は下図のポップアップメッセージが表示されます。
-
ステップとパラメータを複数選択できます。
-
ステップのパラメータ値が「ブール」のデータ型である場合、trueには1を、falseには0を使用します。
上図の設定を例として説明します。 確認 をクリックすると、Mech-Visionのステップパラメータを設定するコマンドを下図に示します。
-
-
異なるパラメータが占めるフィールドの位置が重複しないようにしてください。
-
各パラメータに対応する位置に空白がある場合、デフォルトで0で埋められます。位置を変更して、不要な空白位置を削除することをお勧めします。
-
-
上記の設定が完了したら、プレビュー をクリックすると、設定項目に対応するコマンド例が表示されます。
「Mech-Visionの出力」を設定
Mech-Visionの出力 画面では、Mech-Visionがロボットまたは上位システムに返すデータの形式を設定します。設定項目には、位置姿勢データ、対象物のラベル および その他の出力 が含まれます。
-
Mech-Visionプロジェクトの「出力」ステップに応じて対応する項目の設定を行います。
「出力」ステップのポートタイプ ポート名 設定項目 適用シーン 事前定義済み(ビジョン結果)
poses
位置姿勢データ(ビジョンポイント)
対象物の位置姿勢を取得する場合
事前定義済み(ビジョン結果)
poses、labels
位置姿勢データ(ビジョンポイント)、対象物のラベル
対象物の位置姿勢とラベルを取得する場合
事前定義済み(ロボット経路)
moves
位置姿勢データ(ロボット経路)
ロボットが対象物に移動する経路を計画する場合
カスタム
カスタマイズされたポート名
その他の出力
OCR文字、VINコード、測定結果など、カスタマイズされたデータを取得する場合
-
下記の説明に従って設定項目を設定します。
設定項目
説明
位置姿勢データ
ビジョンポイントのデータ(Mech-Visionプロジェクトに「経路計画」ステップが含まない)
数量
オプション:1、固定値(手動入力が必要)、すべて。
-
1:Mech-VisionがN個のビジョンポイントを出力しますが、Adapterが最初のビジョンポイントのみを返します。
-
固定値M:Mech-VisionがN個のビジョンポイントを出力しますが、Adapterが最初のM個のビジョンポイントを返します。
-
すべて:Mech-VisionがN個のビジョンポイントを出力し、Adapterがすべて(N個)のビジョンポイントを返します。
送信する位置姿勢の数
Mech-Visionが返されたデータには、今回返された位置姿勢の数が格納されます。位置姿勢データの前に位置姿勢の数が配置されます。
対象物の位置姿勢をロボットの位置姿勢に変換
Mech-Visionの認識結果の位置姿勢をX軸を中心に自動的に180°回転させ、Z軸が下向きにし、ロボットがその位置姿勢に直接移動して把持することができます。
ロボット経路(Mech-Visionプロジェクトに「経路計画」ステップを含む必要がある)
位置姿勢のタイプ
オプション:JPs、TCP。
送信する位置姿勢の数
Mech-Visionが返されたデータには、今回返された位置姿勢の数が格納されます。位置姿勢データの前に位置姿勢の数が配置されます。
経路におけるビジョンポイントのインデックス
経路計画設定ツールの「ビジョン処理による移動」に対応する経路点が経路全体における位置です。
移動方式MOVEJ/MOVEL
経路点の移動方式です。1はMOVEJ、2はMOVELを示します。
対象物のラベル
「出力」ステップのlabelsポートのデータです。
その他の出力(「+」をクリックして複数のポートを追加可能)
ポート名
「出力」ステップのカスタムポートの名前です。
データタイプ
オプション:stringlist、numberlist。
-
その他の出力 を設定する場合は、カスタムポートのデータのリストサイズがラベルまたは位置姿勢のリストサイズと一致していることを確認してください。
-
ビジョンポイントのデータ を選択する場合: 基本設定 で回転形式に四元数を選択した場合、出力の各位置姿勢は7フィールドを占めます。
-
ロボット経路 を選択する場合: 基本設定 で回転形式に四元数を選択し、位置姿勢のタイプにTCPを選択した場合、各出力位置姿勢は7つのフィールドを占め、位置姿勢のタイプにJPsを選択した場合、各出力位置姿勢は6つのフィールドを占めます。
-
設定項目にチェックが入っていない場合、次の手順に進むことはできません。
-
-
上記の設定が完了したら、プレビュー をクリックすると、設定項目に対応するコマンド例が表示されます。確認したら、次へ をクリックして次の手順に進みます。
「Mech-Vizの入力」を設定
Mech-Vizの入力 画面では、ロボットまたは上位システムがMech-Vizに送信するコマンドの形式を設定します。設定項目には、画像撮影コマンド、Mech-Vizのステップパラメータを設定 および Mech-Vizからロボット名を取得 が含まれます。
画像撮影コマンド
-
Mech-Vizの撮影コマンドを設定します。
このコマンドは、Mech-Vizプロジェクトを実行するために使用されます。また、このコマンドは必要に応じて以下の機能を設定できます。
-
Mech-Vizプロジェクトに対応するMech-Visionプロジェクトにはパラメータレシピが含まれる場合、このコマンドはパラメータレシピの切替えに対応します。
-
Mech-Vizプロジェクトに分岐ステップが含む場合、このコマンドは分岐ステップの出口の設定に対応します。
-
カメラがEye in Hand方式で取り付けられている場合、または設定された撮影位置をMech-Vizの計画の開始位置とする場合、このコマンドを使用して撮影時のロボットの位置姿勢または設定された撮影位置姿勢をMech-Vizプロジェクトに送信することができます。
下記の説明に従って 画像撮影コマンド を設定してください。
名前:コマンド全体における各部分の名前。
パラメータ値:各部分の名前に対応するパラメータ値。
位置:各部分がコマンド全体内での開始位置(1から始まるインデックスでソートされ、コンマで位置が区切られる)。
長さ:各部分が占めるフィールド数(フィールドは 文字列の区切り文字 で区切られたデータを指す)。
位置 と 長さ の関係:次のパラメータの開始位置 = 前のパラメータの開始位置 + 前のパラメータの長さ。
名前 パラメータ値 位置 長さ コマンドコード
Mech-Vizプロジェクトを実行するためのコマンドです。初期値はrで、変更することができます。
1(固定値)
1(固定値)
Mech-Visionプロジェクト番号(オプション)
Mech-Visionプロジェクト番号(正整数)です。
2(固定値)
1(固定値)
Mech-Visionパラメータレシピ番号(オプション)
Mech-Visionプロジェクト内のパラメータレシピの番号であり、正の整数です。
変更可能
1(固定値)
分岐ステップID(オプション)
「メッセージによって異なる分岐を実行」ステップの番号です。Mech-Vizプロジェクトに「メッセージによって異なる分岐を実行」ステップが1つある場合にのみサポートされます。
変更可能
1(固定値)
分岐出口番号(オプション)
「メッセージによって異なる分岐を実行」ステップの出口番号を設定します。例えば、このパラメータを0に設定すると、「メッセージによって異なる分岐を実行」ステップは出口番号0に沿って実行を続行します。
変更可能
1(固定値)
撮影時のロボットの位置姿勢(オプション)
カメラがEye in Hand方式で取り付けられている場合、このコマンドは撮影時のロボットの位置姿勢をMech-Vizプロジェクトに送信します。このパラメータを「JPs」または「JPs+フランジ位置姿勢」に変更することができます。
変更可能
-
回転形式をオイラー角に設定した場合:
-
位置姿勢の形式がJPsである場合、固定値6になります。
-
位置姿勢の形式が「JPs+フランジ位置姿勢」である場合、固定値12になります。
-
-
回転形式を四元数に設定した場合:
-
位置姿勢の形式がJPsである場合、固定値6になります。
-
位置姿勢の形式が「JPs+フランジ位置姿勢」である場合、固定値13になります。
-
-
パラメータ値、位置、長さ の列でハイライトされた内容をダブルクリックして、必要に応じて修正することができます。
-
異なるコマンドのコマンドコードはそれぞれ設定する必要があります。
-
異なるパラメータが占めるフィールドの位置が重複しないようにしてください。例えば、撮影時のロボットの位置姿勢の位置が3で、長さが6です。パラメータレシピ番号の位置が4で長さが1である場合、撮影時のロボットの位置姿勢の2番目のフィールド位置とパラメータレシピ番号の位置が重複します。パラメータレシピ番号の位置が9以上である場合、撮影時のロボットの位置姿勢とパラメータレシピ番号の位置は重複しません。
-
各パラメータに対応する位置に空白がある場合、デフォルトで0で埋められます。プレビュー時に、その空白位置は 予約位置 として表示され、対応する値は0です。例えば、パラメータレシピ番号の位置が3で長さが1で、撮影時のロボットの位置姿勢が6で長さが6の場合、位置4と5に空白があります。撮影時のロボットの位置姿勢の位置を4に変更すると、この空白位置が削除されます。位置を変更して、不要な空白位置を削除することをお勧めします。
-
Mech-Vizプロジェクトに複数の「メッセージによって異なる分岐を実行」ステップがある場合は、他の分岐番号と対応する出口番号を予約してから、Adapterプロジェクトのカスタム開発を行うことができます。
-
-
上記の設定が完了したら、プレビュー をクリックすると、設定項目に対応するコマンド例が表示されます。
コマンドのプレビュー の下に、マウスカーソルをフィールド名の上に合わせると、フィールド名とそれに対応するデータがハイライト表示されます。
Mech-Vizのステップパラメータを設定(オプション)
Mech-Vizのステップパラメータを設定する必要がある場合、「Mech-Vizのステップパラメータを設定」コマンドを設定するために Mech-Vizのステップパラメータを設定 にチェックを入れる必要があります。
-
画像撮影コマンドとマージ にチェックを入れるかどうかを選択します。
「画像撮影コマンドとマージ」とは、画像撮影コマンドにMech-Vizのステップパラメータの設定を書き込む、つまり画像撮影コマンドに設定されたステップパラメータを追加することを意味します。Mech-Vizのステップパラメータを設定 コマンドは、Mech-Vizの画像撮影コマンドと組み合わせて1つのコマンドとして使用することも、単独のコマンドとして使用することもできます(この場合、画像撮影コマンドの前に呼び出す必要があります)。
-
画像撮影コマンドとマージ にチェックを入れない場合、下表に従って「Mech-Vizのステップパラメータを設定」コマンドを設定してから次の手順に進みます。
名前
パラメータ値
位置
長さ
コマンドコード
Mech-Vizのステップパラメータを設定するコマンドです。初期値はtで、変更することができます。
1(固定値)
1(固定値)
-
画像撮影コマンドとマージ にチェックを入れた場合、上表の設定項目は画像撮影コマンドの設定を再利用します。
-
-
ステップパラメータを選択します。
ステップパラメータを選択 をクリックし、表示される画面で以下の操作に従ってステップパラメータを選択します。
-
ステップを選択 の下に必要なステップを選択します。
-
ステップのパラメータ の下にステップのパラメータ名にチェックを入れます。
-
確認 をクリックします。
-
Mech-Vizのステップパラメータを設定 にチェックが入っている場合は、ステップパラメータを選択する必要があり、そうでない場合は以下のポップアップメッセージが表示されます。
-
ステップとパラメータを複数選択できます。
-
ステップのパラメータ値が「ブール」のデータ型である場合、trueには1を、falseには0を使用します。
上図の設定を例として説明します。確認 をクリックすると、Mech-Vizのステップパラメータを設定するコマンドを下図に示します。
-
-
異なるパラメータが占めるフィールドの位置が重複しないようにしてください。
-
各パラメータに対応する位置に空白がある場合、デフォルトで0で埋められます。位置を変更して、不要な空白位置を削除することをお勧めします。
-
-
上記の設定が完了したら、プレビュー をクリックすると、設定項目に対応するコマンド例が表示されます。
Mech-Vizからロボット名を取得
取得する前に、Mech-Vizプロジェクトが 自動読み込み に設定されていることを確認してください。Mech-Vizの左側パネルでプロジェクトを右クリックし、自動的に読み込む にチェックを入れます。 |
-
取得 をクリックすると、Mech-Vizプロジェクトに使用したロボット名が入力ボックスに表示されます。
-
Mech-Vizから取得したロボット名 と Mech-Visionから取得したロボット名 が一致しない場合は、ロボット名を一致させるためにMech-VisionまたはMech-Vizプロジェクトのロボット名を変更する必要があります。
-
上記の設定が完了したら、次へ をクリックして Mech-Vizの出力 を設定します。
「Mech-Vizの出力」を設定
Mech-Vizの出力 画面では、Mech-Vizがロボットまたは上位システムに返すデータの形式を設定します。設定項目には*位置姿勢のタイプ*、送信する位置姿勢の数、経路におけるビジョンポイントのインデックス、対象物のラベルを送信、移動方式MOVEJ/MOVEL および ツール番号 があります。
-
下記の説明に従って設定項目を設定します。
設定項目
説明
位置姿勢のタイプ
オプション:JPs、TCP(初期値)。
送信する位置姿勢の数
Mech-Vizが返されたデータには、今回返された位置姿勢の数が格納されます。位置姿勢データの前に位置姿勢の数が配置されます。
経路におけるビジョンポイントのインデックス
Mech-Vizプロジェクトの「ビジョン処理による移動」ステップに対応する経路点が経路全体における位置です。
対象物のラベルを送信
Mech-VizはMech-Visionのlabelsポートデータを転送します。
移動方式MOVEJ/MOVEL
経路点の移動方式です。1はMOVEJ、2はMOVELを示します。
ツール番号
ロボットが経路点に移動する際に使用するロボットハンドの番号です。
基本設定 で回転形式に四元数を選択し、位置姿勢のタイプにTCPを選択した場合、各出力位置姿勢は7つのフィールドを占め、位置姿勢のタイプにJPsを選択した場合、各出力位置姿勢は6つのフィールドを占めます。
-
上記の設定が完了したら、プレビュー をクリックすると、設定項目に対応するコマンド例が表示されます。確認したら、次へ をクリックして次の手順に進みます。
ステータスコードの設定
-
ステータスコードの設定 画面で、コマンド処理の各種結果に対応するステータスコードを設定します。
Adapterプロジェクトの生成ツールは、デフォルトで7つのステータスコードをサポートしています。ステータスコードは必要に応じて増減できます。
-
ステータスコードの削減:異なるステータスコードの値を同じ値に設定します。例えば、「コマンドが無効」と「プロジェクトが読み込まれていない」を2に設定します。
-
ステータスコードの増加:Adapterコードを修正します。詳細は こちら をご覧ください。
-
-
上記の設定が完了したら、保存して生成 をクリックします。以下のウィンドウがポップアップしたら、上記の設定は正しいので、はい をクリックしてすべての設定を保存します。
Adapterプロジェクトを設定
Adapterプロジェクトの生成ツールの設定が完了したら、以下の手順に従ってAdapterプロジェクトを設定します。
-
Mech-Visionのツールバーで ロボット通信設定 をクリックします。
-
ロボット通信設定 の画面で以下の設定を行います。
-
ロボットを選択し、 次へ をクリックします。
-
インターフェイスサービスのタイプ を Adapter に設定します。
-
Adapterプロジェクトのディレクトリ の下の をクリックします。ポップアップ表示されたファイルブラウザでAdapterプロジェクトを選択します。
-
(オプション) ソリューションを開くとインターフェースサービスを自動的に起動 にチェックを入れることを推奨します。
-
適用 をクリックします。
-
-
Mech-Visionのメイン画面で、ツールバーのインターフェースサービスが起動されていることを確認します。
これで、Adapterプロジェクトの設定が完了しました。
その他の説明
上記の設定が完了すると、ソリューションファイルのあるディレクトリの communication
フォルダの下にあるXX(XXはAdapterプロジェクト名)フォルダが生成されたAdapterプロジェクトとなります。そのファイル構造は以下の通りです。
communication
├─adapter_generator_config.json(Adapterプロジェクトの生成ツールの設定ファイル)
│
└─XX(XXは設定されたAdapterプロジェクト名を示す)
├─XX_adapter.py(Adapterプロジェクトを記述するファイル、Adapterプロジェクトの生成ツールで設定されたパラメータによって生成される)
├─XX_widget.py(グラフィカルインターフェースを記述するファイル、デフォルトではWidgetプログラムは有効になっていない)
├─__init__.py(Adapterプロジェクトを設定するファイル、AdapterプログラムとWidgetプログラムを有効にするかどうかを設定できる)
Widgetプログラムを有効にするには、__init__.pyファイルの次の行のコメントを外します。
|
また、生成されたAdapterプロジェクトのカスタム開発により、より複雑な機能を実現可能です。例えば、「タイムアウト」ステータスコードを8に設定するには、XX_adapter.pyファイルの以下の行にコードを追加する必要があります。
status_code_dict = {ms.SUCCESS: 1, ms.INVALID_COMMAND: 2, ms.PROJECT_NOT_LOADED: 3,
ms.NO_POINT_CLOUD: 4, ms.NO_RESULT: 5, ms.PLAN_FAILED: 6,
ms.OTHER_ERROR: 7, ms.TIMEOUT: 8}
以下のコードは、「タイムアウト」例外をスローするときに使用されます。
raise AdapterError(ms.TIMEOUT)
Adapterプログラミングの詳細は、以下の内容をお読みください。