Mech-Vizプロジェクトを構築¶
本節では、クランクシャフト供給のMech-Vizプロジェクトの構築について説明します。
プロジェクトの構築手順¶
今回作成するプロジェクトは以下のような流れで処理を行います。
ツールとワークの設定。3Dシミュレーションエリアにツールモデルを表示し、かつエンドツールの衝突検出を有効にするために、ツールを設定する必要があります。また、ロボットがワークを把持する際の運動経路を計画するためにワークの設定も必要です。
シーンの設定。シーンを設定して実際の動作環境を再現することでロボット運動経路の計画に役立ちます。
ワークフローの構築。異なるタスクやパラメータを使用してプロジェクトを構築します。
衝突検出設定。ロボットが箱もしくはその他障害物との衝突を防止し、プログラムの連続的な実行を保証するため、衝突検出設定を行う必要があります。
プロジェクトのシミュレーション。上記すべての設定が完了後、プロジェクトの実行結果を確認するためにプロジェクトをシミュレートします。
ツールと対象物の設定¶
ロボットモデルを設定した後、ツールとワークの設定を行います。衝突モデルとツールを追加し、TCPを調整します。
衝突モデルの追加と調整¶
ツールと対象物のタブで
をクリックし、ポップアップするファイル選択ウィンドウで衝突モデルを選択します。追加した衝突モデルを選択したら、それがプロジェクト編集エリアに表示されます。
エンドツールの追加¶
操作説明 |
サンプル図 |
1-2 エンドツール をクリックした後、 追加 をクリックします 。 |
|
3-4 エンドツール名を入力し(例として「tcp」と名付ける)、追加した衝突モデルを選択します。 |
|
5 OK をクリックし、設定を保存します。 |
|
設定完了後、エンドツールリストに追加されたモデル名が表示されます。 |
ワークフローの構築¶
これはMech-Vizプロジェクトのコア部分です。タスクライブラリ内のタスクをプロジェクト編集エリアにドラックしてからタスクの各パラメータを設定し、タスクを線でつなぐことでプロジェクトを構築します。
下図のようなワークフローが完成形です。
「初期位置」の設定¶
初期位置はロボットが動作を開始する位置であり、安全な位置を設定します。ロボットがこの場所にいる時はカメラの視界を遮ることなく、把持されるワークや周辺機器から遠ざける必要があります。
移動 タスクを使用することで、ロボットの運動経路にあるターゲット位置姿勢およびターゲット位置姿勢への移動方法を設定することができます。初期位置を設定するためには、移動 タスクを使用します。
ツールバーの ロボットを同期させる をクリックすると、ロボットモデルがロボット実機の状態に同期されます。
ティーチペンダントを使用して、ロボット実機をカスタマイズされた初期位置に移動し、ロボットモデルも対応する位置に到達したことを確認します。
ステップライブラリから
をプロジェクト編集エリアにドラッグします。 この移動ステップはロボットの現在の位置姿勢を記録します 。このステップの名前を「初期位置」に変更します。
「写真撮影点」の追加¶
「初期位置」と「把持点」の間に 写真撮影点 を追加します。
ティーチペンダントでロボット実機をカスタマイズされた写真撮影点に移動させたら、現時点でのロボットの位置姿勢を記録するための1つの 移動 タスクをプロジェクト編集エリアにドラッグします。
ロボットによってカメラの視野が遮られないようにしてください。Mech-Eye Viewerで画像を取得し、視野が遮られているかどうかを確認できます。
名前を「写真撮影点」に変更します。
「写真撮影点」の入力を「初期位置」からつなぎ、出力を「視覚処理による認識_1」につなぎます。
「把持点」の設定¶
「把持点」は、把持するワークの位置姿勢なので、視覚処理による認識 と 視覚処理による移動 タスクを使用します。
タスク
視覚処理による認識
説明
Mech-Visionプロジェクトをトリガーし、ビジョン結果を取得します。
操作
タスクライブラリから
をプロジェクト編集エリアにドラッグします。次に「初期位置」の出力を「視覚処理による認識」の入力につなぎます。パラメータ設定
ビジョンサービスの名前 をクリックし、ドロップダウンリストで作成したMech-Visionプロジェクトを選択します。
サンプル図
タスク
視覚処理による移動
説明
ビジョン結果によって移動します。
操作
タスクライブラリから
をプロジェクト編集エリアにドラッグします。次に「視覚処理による認識」の出力「視覚処理による移動」の入力につなぎます。パラメータ設定
ビジョンサービスの名前 をクリックし、ドロップダウンリストで作成したMech-Visionプロジェクトを選択します。
サンプル図
ロボットが把持点に到達したら、治具を開いてワークを把持する必要があります。
DOを設定 タスクでツールを制御します。
タスク
DOを設定
説明
ロボットポート信号を指定して、ツールの開閉を制御します。
操作
タスクライブラリから
をプロジェクト編集エリアにドラッグします。次に「視覚処理による移動」の出力を「DOを設定」の入力につなぎます。パラメータ設定
名前を「DOを設定_把持」に変更し、タスクのパラメータで「DO」にチェックを入れます。チェックを入れると、ソフトウェアは実行中に制御信号を送信してツールが把持可能な状態になります。
サンプル図
DO値と実際のエンドツールの開閉の対応関係は次の通りです。
「把持待ち」の設定¶
ツールがワークを把持する際に、ワークをしっかり把持するまで待機時間を設定します。
タスク
待つ
目的
待つ タスクを使用して、ロボットがこのタスクを実行したら指定時間を待機します(ミリ秒単位)。
操作
タスクライブラリから
をプロジェクト編集エリアにドラッグします。パラメータは初期値を使用します。つなぎ
「待つ_1」の入力を「DOを設定_把持」につなぎ、出力を「相対移動_2」につなぎます。
把持動作の「相対移動点」の設定¶
ツールが把持点まで垂直に下向きに移動し、物体を吸着した後、垂直に上向きに移動することが理想的です。この動作を実現するために、 相対移動 タスクを追加します。
ツールは把持点からZ方向に200mmから垂直下向きに移動します。
タスク
相対移動
操作
タスクライブラリから
をプロジェクト編集エリアにドラッグします。すると、タスク名は「相対移動_1」になります。つなぎ
「相対移動_1」の入力を「視覚処理による認識_1」につなぎ、出力を「視覚処理による移動_1」につなぎます。
パラメータ設定
「基準とする位置姿勢」を 次のタスク に設定し、座標系のZ値を-200に設定します。
サンプル図
ツールがワークを吸着した後、垂直に上向きに200mm移動します。
タスク
相対移動
操作
タスクライブラリから
をプロジェクト編集エリアにドラッグします。すると、タスク名は「相対移動_2」になります。つなぎ
「相対移動_2」の入力を「DOを設定_把持」につなぎます。
パラメータ設定
「基準とする位置姿勢」を 現在のタスク に設定し、座標系のZ値を-200に設定します。
サンプル図
「配置点」の設定¶
ロボットがワークを把持した後、ユーザーに設定された位置姿勢に移動してワークを配置します。
ティーチペンダントでロボット実機をカスタマイズされた配置点に移動し、ロボットを同期させた後に1つの 移動 タスクをプロジェクト編集エリアにドラッグして、現在の位置姿勢を記録します。その名前を「配置点」に変更します。
次に「DOを設定_把持」の出力を「配置点」の入力につなぎます。
ロボットが配置点に到達したら、ツールを閉じてワークを吸着解除します。 DOを設定 タスクでツールを制御します。
タスク
DOを設定
説明
ロボットポート信号を指定して、ツールの開閉を制御します。
操作
タスクライブラリから
をプロジェクト編集エリアにドラッグします。次に「配置点」の出力を「DOを設定」の入力につなぎます。パラメータ設定
名前を「DOを設定_配置」に変更し、タスクのパラメータで「DO値」のチェックを外します。チェックを外すと、ソフトウェアは実行中に制御信号を送信してツールが把持解除の状態になります。
サンプル図
配置動作の「相対移動点」の設定¶
把持動作の「相対移動点」の設定を参照し、配置点の前後に「相対移動」タスクを一つずつ追加します。
ツールが配置点のZ方向に200mmから垂直に下向きに移動します。
操作
タスクライブラリから
をプロジェクト編集エリアにドラッグします。すると、タスク名は「相対移動_3」になります。つなぎ
「相対移動_3」の入力を「相対移動_2」につなぎ、出力を「配置点」につなぎます。
パラメータ設定
「基準とする位置姿勢」を 次のタスク に設定し、座標系のZ値を-200に設定します。
ツールがワークを吸着解除した後、垂直に上向きに200mmに移動します。
操作
タスクライブラリから
をプロジェクト編集エリアにドラッグします。すると、タスク名は「相対移動_4」になります。つなぎ
「相対移動_4」の入力を「DOを設定_配置」の出力につなぎ、出力を「初期位置」につなぎます。
パラメータ設定
「基準とする位置姿勢」を 現在のタスク に設定し、座標系のZ値を-200に設定します。
実行のシミュレーション¶
上記の操作を完了した後、実行 をクリックし、Mech-Vizロジェクトのシミュレーションを実行します。
注意
Mech-VisionとMech-Vizが通信を行い、Mech-Visionによって取得されたシーンの点群をMech-Vizに送信します。そのために、Mech-Vizプロジェクトを実行する前にMech-Centerを起動する必要があります。