衝突検出
ここでは衝突検出の設定について説明します。
概要
部品ロード・アンロード、デパレタイジング・パレタイジングなどの応用では、プロジェクトをスムーズに実行するために、ロボットがコンテナなどの障害物との衝突を防ぐことが重要です。 Mech-Viz は衝突検出機能によりロボット動作中の衝突を防ぐことができます。ロボット運動経路を計画するとき、Mech-Viz の仮想空間では衝突が発生する部分がハイライト表示され、プロジェクトを停止して現場の衝突を回避します。
衝突検出設定
衝突検出パネルで、衝突検出設定をクリックして衝突検出設定画面を開きます。
衝突モデルを組み合わせることで衝突検出を実行します。 Mech-Viz は、デフォルトでは以下の衝突を検出します:ロボット関節-ロボット関節、ロボット関節-シーンの物体、ロボット関節-ロボットハンド、シーンの物体-ロボットハンド。これ以外、点群と把持されている対象物の衝突検出を設定することもできます。まず、リソースに衝突モデルを追加して設定します。
点群と他の対象物間の衝突を検出
左の点群設定パレットで点群と他の対象物間の衝突を検出をチェックすると、点群とロボットハンドとの衝突を検出します。また、点群とロボット関節、把持されている対象物の衝突検出を設定することもできます。
Mech-Viz は、「ビジョン処理による移動」ステップと「ビジョン処理による移動」に依存する「相対移動」ステップにだけ点群衝突検出を実行し、その他の移動ステップには実行しません。 |
-
点群の立方体の辺の長さ
点群立方体は点群の点を中心に生成した立方体です。衝突を検出する時、立方体と他の物体との衝突は点群の衝突とされます。
衝突検出の精度と速度の要求を満たすように点群立方体の辺の長さパラメータを調整します。検出精度を向上させたい場合、このパラメータ値を低くしてください。ただし検出の速度が低下します。このパラメータ値を高くすると速度は速くなりますが検出の精度は低下します。
-
点群衝突計算モード
プロジェクトデバッグ時に「完全計算」を使用し、デバッグ後に「簡単計算」を使用してください。
オプション 説明 簡単計算
計算速度が速いが計算の記録は完全ではない。計画履歴に記載された点群衝突体積は最終値ではないため衝突が発生した点群が記録されないことがある。デバッグ後の安定した生産に適用。
完全計算
計算速度が遅いが完全に情報を記録する。計画履歴に記載された点群衝突体積は最終値なので衝突が発生した点群は全部確認可能。デバッグ時に適用。
点群とロボットハンド
「ロボットハンド」パネルでは、「衝突体積のしきい値」を設定します。点群立方体とロボットハンド衝突モデルの衝突体積が設定値を超えると衝突が発生したと判断します。衝突体積がこの値を超えると衝突が発生したと判断します。
実際に応じて設定してください。
把持されている対象物とその他の物体との衝突を検出
把持されている対象物とその他の物体との衝突を検出します。対象物を移動する過程で発生する衝突を検出します。
幾何立体
幾何立体モデルの追加方法
Mech-Viz は Mech-Vision によって提供された対象物の寸法に基づいて直方体、円柱の衝突モデルを自動的に生成します。そのため Mech-Vision で設定を行う必要があります。
設定手順:
-
Mech-Vision で「平面点群の位置姿勢とサイズを計算(複数種類の対象物を扱う現場)」または「対象物の寸法を読み込む(単一種類の対象物を扱う現場)」を使用して対象物の寸法を取得します。
-
寸法データを「出力」ステップで出力するとで Mech-Viz では寸法を取得して衝突モデルが生成されます。
出力される「把持点位置姿勢」と「物体寸法」は一致しなければなりません。
外部モデル
追加方法
設定手順:
-
対象物の .stl モデルと .binvox モデルを Mech-Viz のプロジェクトフォルダにある
collision_models
フォルダ(これがない場合に新規作成してください)に移動します。 -
Mech-Vision では相応のステップの「位置姿勢分類ラベル」ポートでラベルを確認し、モデルファイルをラベル名に変更します。Mech-Viz のリソースにこの対象物を追加した場合、その名前もラベル名と一致するように設定してください。
-
Mech-Vision では点群を外部サービスに送信ステップの対象物情報を送信パラメータをチェックし、すべての入力はカメラ座標系にあるのチェックを外してこのステップのすべての入力ポートをデータフローにつなぎます。
出力した点群と位置姿勢はいずれもロボット座標系にある必要があります。 |