タクトと経路の最適化

生産タクト:

生産タクトとは、1つのワークを処理するために必要な時間です。つまり、ロボットワークステーションの作業効率に関するユーザー定義の年間出力の要件を指します。

現在、ほとんどのプロジェクトにはタクトの要件があり、一部のプロジェクトにはタクトの要件が非常に高くなっています(4秒または5秒以内)。タクト要件が高いプロジェクトの場合、ワークステーションが作業プロセス全体を完了した後、Mech-Mindソフトウェアシステムは、ビジョンアルゴリズムの最適化とロボット経路の最適化を介してタクトを最適化します。タクトには、カメラの撮影時間、Mech-Visionの処理時間、Mech-Vizの計画からロボットの処理が完了するまでの時間が含まれます。したがって、図1に示すように、タクトと経路の最適化の全体プロセスは主に上記の3つの部分に分けられます。

../../../_images/13.png

図1 経路とタクトの最適化の全体的なコンセプト

Mech-Eye Viewer

投影時間

2D/3D露出パラメータ

Mech-Eye Viewerソフトウェアを使用する場合、複雑な構造の金属部品やディテール対象物の認識など、一部の応用シナリオでは、2D露出モードを切り替えて、2〜3セットの異なる3D露出時間を使用してキャプチャし、より多く情報を取得します。また、段ボール箱や平らなワークなど、より多くのシーンでは、時間を節約するために露光回数を減らすことができることに注意してください。下図に示します。

2D/3D露出パラメータの調整については、 パラメータ調整 をご参照ください。

更新

Mech-Eye Viewerソフトウェアの最新バージョンを使用し、カメラファームウェアバージョンを更新すると、深度画像と点群画像の生成速度が向上し、カメラの撮影速度がある程度向上します。

カメラを変更

DeepシリーズのカメラなどのMech-Mindのカメラ製品は、視野が広いため、2台の光学機器で別々に投影し、取得した点群を合成する必要があります。そのため、通常の状態での投影時間は、ProMおよびProSシリーズのカメラの2倍になります。シーンの作業範囲を確認した後、適切なカメラを使用すると、写真撮影の速度を向上させます。

深度画像のROI

深度画像のROIは、カメラの視野内でエリアを分割し、カメラが処理する必要のあるデータの量を削減するために使用されます。深度画像のROIは、XY方向のROIと深度の制限に別々に設定して、全体として点群の数を減らすことができます。

XY方向のROI設定は、図2に示します。設定インターフェースに入り、ROIの範囲はフレームを作成することによって選択されます。

../../../_images/31.png

図2 深度画像のROI(XY)を設定

Z方向の制限は、カメラパラメータで設定する必要があります。最小深度と最大深度を別々に設定すると、点群の数を効果的に減らすことができます。図中の数値の単位はミリメートルです。

../../../_images/5.png

図3 深度画像のROI(Z)を設定

Mech-Vision

ステップの実行時間を加速

カメラから画像を取得

../../../_images/6.png

図4 カメラから画像を取得

カメラから画像を取得 は、Mech-Visionプロジェクトで最も重要なステップであり、ほとんどのプロジェクトで約 40% の時間がかかります。カメラから画像を取得 することがかかる時間は、主に上記の方法で最適化できます。一方、カメラはRGB画像と深度画像を取得し、それらを組み合わせて点群画像を生成するため、カメラから画像を取得 する機能を分割することもできます。プロジェクトによっては、点群とRGB画像を別々に処理する必要がある場合があります。ディープラーニングが必要なプロジェクトの場合は、別々に処理できます。図5に示すように、プロジェクトは並行して計算されるため、より多くの時間を節約できます。

../../../_images/7.png

図5 ディープラーニングと点群処理の並行計算

点群処理

実際のプロジェクトでは、カメラから取得した点群を直接使用することはできなく、点群のクラスタリングやマージなど、より具体的な処理が必要になります。このプロセスでは、ディテールを最適化することでタクトを向上させます。以下に、タクトに大きく影響するステップとタクトの最適化の方法、いくつかの関連する点群処理を示します。

ROI内の点群を抽出

通常、シーン内の点群の場合、ターゲットワークを含むエリアの一部のみが注目する部分です。このとき、ROIを選択して特定のアリアに焦点を合わせ、非作業アリアの点群のほとんどをフィルターで除去して、タクトを大幅に向上させます。

../../../_images/8.png

図6 ROI内の点群を抽出

点群ダウンサンプリング

このステップは、点群をサンプリングして、元の点群のサイズを縮小するために使用されます。点群密度の要件が高くないほとんどのプロジェクト(エッジマッチング、最高層のマスクの取得などのみが必要)にとって、このステップを追加すると、タクトを大幅に改善できます。【サンプリング間隔】はサンプリング倍率を制御し、タクトの要件に応じて設定できます。

../../../_images/9.png

図7 点群ダウンサンプリング

点群の法線ベクトルのを計算してフィルタリング

深度画像が点群に変換された後、点群の法線ベクトルを計算してフィルタリングする必要があります。適切なサポートグラフィックカード(GPU)を備えたホストコンピュータの場合、GPUアクセラレーションの法線ベクトルの計算方法を設定すると、タクトを大幅に向上できます。

../../../_images/10.png

図8 点群の法線ベクトルのを計算してフィルタリング

点のフィルタリング

このステップでは、設定されたルールを使用して点群内のポイントをフィルタリングし、ノイズを除去します。タクトを改善するために、平均距離推定に使用される【最近隣接点の数】を変更し、実験テストを実行します。精度の確保に基づいて、このパラメータを適切に減らし

../../../_images/111.png

図9 点のフィルタリング

点群クラスタリング

このステップには、【GPUアクセラレーション】のオプションがあります。点群数が多い場合、このオプションをオンにするとタクトが向上します。そうでない場合、明らかな効果はありません。ビデオメモリが不足している場合(たとえば、Mech-Viz/ディープラーニングはメモリの使用が多すぎる場合)、ビデオメモリは減少せずに増加する可能性があることに注意してください。実際の状況に応じて、このパラメータを設定してください。

../../../_images/121.png

図10 点群クラスタリング

3D位置姿勢推定

3D位置姿勢推定 は主に「3D位置姿勢低精度推定」と「3D位置姿勢高精度推定」で構成されており、テンプレートの数に応じて、シングルテンプレートとマルチテンプレートに分けられます。ここで、3D位置姿勢低精度推定は、主に空間点群におけるテンプレート点群のおおよその位置を計算するために使用されます。3D位置姿勢高精度推定は、主にテンプレートを空間点群とマッチングするために使用されます。このステップは空間内の各ポイントの相対位置を計算する必要があるため、ポイントが多いほど、より多くの時間がかかり、位置姿勢高精度推定の反復もより多くの時間がかかります。したがって、これら2つのステップを調整する場合の主なポイントは、処理点群(データとテンプレート)の数を減らし、反復回数(位置姿勢高精度推定)を減らすことです。

ちなみに

  • 位置姿勢低精度推定の場合、【SurfaceMatching】を選択した場合は、【サンプリング設定】を調整して点群密度を調整し、計算時間を短縮します。ダウンサンプリングされた点群の密度を下げることはできないが、それでもタクトの向上が必要な場合、【基準/基準ポイントのサンプリングステップサイズ】を増やすことを考慮してください。

  • クラスタリング、ROI、点群フィルタリングなど、初期の点群前処理により、多くの不要な点群が初期段階で削除されます。

  • 複数のワークをマッチングする場合は、同時にマッチングするワークの数を適切に減らすこともできます。例えば、一度に3つのワークのみをマッチングして、マッチング速度を上げます。

  • 実際のワークの特徴に応じて、テンプレートファイルを簡略化します。たとえば、エッジテンプレートを使用して大きなワークピースをマッチングさせたり、テンプレートをダウンサンプリングして点群の数をより小さな範囲に減らしたりします。

  • ポイント方向の計算方法:法線ベクトルがないテンプレートには、【StandardMode】を使用します。エッジ平面対象物のテンプレートの場合は、認識された対象物が適切に分割されていることを確認しながら、【EdgeTangent】を使用します。

../../../_images/16.png

図11 3D位置姿勢低精度推定

../../../_images/17.png

図12 3D位置姿勢高精度推定

その他

プロジェクトでは、 カメラから画像を取得3D位置姿勢推定 に加えて、他の多くのステップがあります。ほとんどのステップがかかる時間は無視できます。必要に応じて、Mech-Visionの ステップの使用ガイド に従って適切な調整を行うことができます。

産業用コンピュータ性能の向上

コンピュータビジョンと画像処理は、コンピュータのリソースを非常に使用します。優れた性能の産業用コンピュータ(Industrial Personal Computer)は、全体的な速度を大幅に向上させることができます。Mech-Mindは、産業用コンピュータにI7 8700 + 1050TIの最小構成を提供します。より高いCPUとGPUを構成すると、より良い結果が得られます。

ちなみに

3D位置姿勢推定 は主にCPUリソースを使用しますが、ディープラーニングはより多くのGPUリソ​​ースを使用します。

Mech-Vizとロボット

経路の最適化

ロボット経路の最適化とは、主にロボット移動中の非必要な固定点と動作の削減を指します。したがって、経路最適化のキーポイントは、固定小数点を減らし、迂回を減らすことです。

ちなみに

主な操作は以下のとおりです。

  • 迂回路を減らし、衝突のない運動期間中の冗長な中間点を減らし、ロボットのスムーズな動作を確保します。

  • 初期段階でロボットの運動を確保するために、固定小数点を減らします。

  • 回転を減らします。ロボットの把持プロセス中に、治具が180°を超えて回転する場合があります。ビジョンプロジェクトの制御と対称性の調整により、このような状況の発生を減らすことができます。また、 相対移動 を同時に使用すると、過度の回転を直接回避することができます。

  • ほとんどの移動タスクに「待たない」を追加することで、ロボットの流暢さを向上させ、一時停止を減らすことができます。

  • ロボットの動作経路の滑らかさを向上させるために、回転半径関数を適切かつ合理的に使用して、ロボットは経路の固定点に移動することを回避します。同時に、より多くの関節運動を使用し、より長い線形運動の使用を減らし、ロボットが特異点に移動する可能性を減らします。必要に応じて、長距離の線形運動の代わりにマルチセグメント関節運動を使用して、長距離での制御不能な運動状態を防ぎます。

  • 特異点を避けます。 Mech-Vizソフトウェアの設計によれば、ロボットが特異点を超えようとすると、ロボットは適切に減速して、ロボットがエラーを報告しないようにします。同様に、ワークを把持する過程で、ロボットは特異点の近くに移動しないようにして、特異点によるエラー停止や低速走行を防止する必要があります。

ロボットのスピード

ロボットの作業プロセスが確認されたら、ゆっくりと安定した動作の状態で、ロボットの速度を達成可能な最高速度まで徐々に上げることができます。ロボット速度を上げることは、タクトに非常に役立ちます。

ちなみに

各動作でのロボットの速度は、Mech-Vizソフトウェアで直接調整できます。

移動タスクの速度

Mech-Vizソフトウェアが移動タスクを実行する場合、デフォルトの:ref:BasicMoveInfo では、加速度が50%、速度が100%です。経路の最適化が完了すると、各タスクの速度と加速度をそれぞれ調整して、さまざまな状況でロボットの速度と加速度を制御できます。

ちなみに

ロボットがワークを把持していないときは、速度と加速度を徐々に最大許容値まで調整できます。

../../../_images/18.png

図13 Mech-Vizで移動の速度を制御

撮影のプロセスとタイミング

Mech-Vizでは、 视觉识别 タスクを使用することでキャプチャをトリガーします。Mech-Visionを介して結果を処理および出力し、 视觉识别 タスクで処理結果を取得し、ロボットを制御して指定された位置に移動させます。データ処理のプロセスはバックグラウンドで実行できます。つまり、ロボットの移動中に、取得した新しいデータを処理し、次の把持の準備をします。

ちなみに

  • 「Eye to Hand」モードでは、ロボットがワークを把持してカメラの視野外に移動した後、カメラのキャプチャをトリガーしてバックグラウンドで処理します。ロボットは前のワークを完了すると、すぐに次のワークを把持します。

  • 「Eye in Hand」モードでは、ロボットがワークを把持した後、写真撮影点に戻って撮影し、バックグラウンドでデータ処理を行います。ロボットは、最初のワークの放置が完了すると、次のワークを直接把持します。

ヒント

一部の段ボール箱のデパレタイジングのプロジェクトでは、把持するたびに他の段ボール箱が変更されないようにする場合、一回撮影で複数の把持のソリューションを使用できます。Mech-Visionソフトウェアは、各認識プロセス中に一度に複数の対象物を認識し、取得したすべての位置姿勢を出力としてMech-Vizに送信します。そのため、1回の認識だけで、認識された箱をすべて把持し、把持後に再撮影することで、カメラの時間を大幅に節約できます。

同様に、治具が十分に大きい場合は、ロボットを制御して、一度に異なる位置にある複数の段ボール箱を把持して、把持のタクトを向上させることができます。