衝突検出

本節では衝突検出の設定について紹介します。以下の内容について説明します:

概要

部品ロード・アンロード、デパレタイジング・パレタイジングなどの応用では、プロジェクトをスムーズに実行するために、ロボットがコンテナなどの障害物との衝突を防ぐことが重要です。 Mech-Viz は衝突検出機能によりロボット動作中の衝突を防ぐことができます。ロボット運動経路を計画するとき、Mech-Viz の仮想空間では衝突が発生する部分がハイライト表示され、プロジェクトを停止して現場の衝突を回避します。

計算設定

計算設定は、ソフトウェアにおける衝突の計算と記録を修正し、プロジェクトの実行速度を調整するために使用されます。

プロジェクトのデバッグ過程で 計算設定 のパラメータグループを各解に対応する完全な衝突接触を計算+計画履歴に保存に設定することを推奨します。これによって問題をすばやく突き止めて解決することができます。

衝突検出設定

衝突モデルを組み合わせることで衝突検出を実行します。 衝突検出を実行する前に、リソースに衝突モデルを追加して設定します。

  • ロボットハンドモデルの追加と設定は ロボットハンド をお読みください。

  • シーンの物体のモデルの追加と設定については シーンの物体 をお読みください。

  • 対象物モデルは Mech-Vision により提供されたデータに基づいて自動的に生成されます。設定方法は以下のとおりです。

Mech-Viz では以下の物体間の衝突を検出します:

1

ロボット関節

ロボット関節

2

ロボット関節

シーンの物体

3

ロボット関節

ロボットハンド

4

シーンの物体

ロボットハンド

また、以下の物体間の衝突検出も設定できます。

衝突検出パネルで、「衝突検出設定」をクリックして衝突検出設定画面を開きます。

点群と他の対象物間の衝突を検出

左の「点群設定」パレットで点群と他の対象物間の衝突を検出をチェックすると、点群とロボットハンドとの衝突を検出します。また、点群とロボット関節、把持されている対象物の衝突検出を設定することもできます。

「ビジョン処理による移動」ステップと「ビジョン処理による移動」に依存する「相対移動」ステップにだけ点群衝突検出を実行し、その他の移動ステップは実行しません。
点群設定‐点群立方体の辺の長さ

点群立方体は点群の点を中心に生成した立方体です。衝突を検出する時、立方体と他の物体との衝突は点群の衝突とされます。

衝突検出の精度と速度の要求を満たすようにパラメータを調整します。

ロボットハンド設定 - 衝突体積のしきい値

点群立方体とロボットハンド衝突モデルの衝突体積の最大許容値。衝突体積がこの値を超えると衝突が発生したと判断します。

実際に応じて設定してください。

ロボット関節設定 - ロボット関節

ロボット関節には、手首、前腕、上腕、ベースがあります。デフォルトでは関節と点群の衝突を検出しません。

実際に応じて設定してください。

ロボット関節設定 - 衝突体積のしきい値

点群立方体とロボット関節衝突モデルの衝突体積の最大許容値。衝突体積がこの値を超えると衝突が発生したと判断します。

実際に応じて設定してください。

把持されている対象物とその他の物体との衝突を検出

把持されている対象物とその他の物体との衝突を検出します。対象物を移動する過程で発生する衝突を検出します。

把持されている対象物のモデルタイプに応じて直方体または外部モデルを選択してください。

直方体

直方体モデルの追加方法

Mech-Viz は Mech-Vision によって提供された対象物の寸法に基づいて直方体の衝突モデルを自動的に生成します。そのため Mech-Vision で設定を行う必要があります。

  1. Mech-Vision で「平面点群の位置姿勢とサイズを計算(複数種類の対象物を扱う現場)」または「対象物の寸法を読み込む(単一種類の対象物を扱う現場)」を使用して対象物の寸法を取得します。

  2. 寸法データを「出力」ステップで出力するとで Mech-Viz では寸法を取得して衝突モデルが生成されます。

出力される「把持点位置姿勢」と「物体寸法」は一致しなければなりません。
直方体底部の安全距離設定

混載パレタイジングを実行する場合、直方体の対象物モデルに底部安全距離を設定する必要があります。底部安全距離を設定すると、対象物モデルの底部に相応の衝突検出範囲を設けます。 この範囲に他の物体が干渉したら、それは対象物との衝突と判断されます。これにより、箱を把持してから移動する過程で配置済みの箱との衝突を回避できます。

直方体の対象物を扱う混載パレタイジングを実行するとき、把持と配置の過程で底部の安全距離内の衝突を検出をオンにして直方体底部の安全距離を設定します。

collision picked5
衝突体積のしきい値

点群立方体と把持されている対象物衝突モデルの衝突体積がこの値を超えると衝突が発生したと判断します。点群と他の対象物間の衝突を検出をオンにすると設定できます。

実際に応じて設定してください。

外部モデル

追加方法
  1. 対象物の stl モデルと binvox モデル Mech-Viz のプロジェクトフォルダにあるcollision_modelsフォルダ(これがない場合に新規作成してください)に移動します。

  2. Mech-Vision では相応のステップの「位置姿勢分類ラベル」ポートでラベルを確認し、モデルファイルをラベル名に変更します。Mech-Vizのリソースにこの対象物を追加した場合、その名前もラベル名と一致するように設定してください。

  3. Mech-Vision では 点群を外部サービスに送信 ステップの対象物情報を送信パラメータをチェックし、すべての入力はカメラ座標系にあるのチェックを外してこのステップのすべての入力ポートをデータフローにつなぎます。

出力した点群と位置姿勢はいずれもロボット座標系にある必要があります。
衝突体積のしきい値

点群立方体と把持されている対象物衝突モデルの衝突体積がこの値を超えると衝突が発生したと判断します。点群と他の対象物間の衝突を検出をオンにすると設定できます。

実際に応じて設定してください。