Bin Picking Studio 1.4.0:CADファイル不要でロボット環境を構築
Environment builder
ロボット環境を調整する必要があるのに、CADエンジニアが不在で困った経験はありませんか? これからは、Bin Picking Studioでシンプルな衝突オブジェクトを自分で簡単に描画できます!
どうやって?
以下の記事で、包括的かつわかりやすいガイドを用意しました。
Bin Picking Studio 1.4.0には、新しいユーザーフレンドリーなツール「Environment builder」が搭載されています。作業セルの3Dモデル構築、ロボットのワークスペース定義、移動能力テストが可能です。また、キャリブレーション済みスキャナからの点群と比較して、環境モデルを検証することもできます。
「Environment builder」は、3Dビジュアライザと、異なる機能を持つ3つのタブに分かれたコントロールパネルで構成されます:
- Scene: ロボット環境の3Dモデルを構築
- Robot: ロボットの動作をテスト
- Vision: キャリブレーション済みビジョンシステムに接続し、仮想環境と現実世界を比較
Scene
ロボットが作業スペースから出ないよう、仮想の箱で囲み込みます。迅速かつ労力いらず! 環境設定画面にロボットを表示し、環境オブジェクトのリサイズとスケーリング機能を追加することで、作業の容易さが向上しています。
衝突のないビンピッキングを実現するには、実際のロボットセルの精密な3Dモデルを管理する必要があります。Bin Picking Studioで作成した仮想環境は、ロボットのリーチ範囲内で少なくとも現実世界と一致していなければなりません。軌道は衝突チェックされますが、スキャナはシーン内のすべての物体を見るわけではないため、現実に一致する静的衝突オブジェクトを定義する必要があります。
Object list
「Scene」タブには、階層構造をサポートする「Object list」があります。つまり、各オブジェクトは子オブジェクトを持つことができ、オブジェクトグループをより簡単に操作できます。親オブジェクト横の+/-ボタンで子オブジェクトリストを展開/折りたたみできます。
既存オブジェクトの階層を変更するには、「Object list」でオブジェクトを掴み、目的の位置に移動します(オブジェクトを別のオブジェクト上に移動すると+アイコンが表示され、子オブジェクトにできます)。
例:
パレット上に複数の物体がある場合、各物体を親オブジェクトの子として定義すると便利です。親オブジェクトの位置プロパティを変更するだけで、すべての物体を操作(移動、回転など)できます。
「Object list」の各オブジェクトには、左から順に3つのオプションがあります:
- Sync icon: オブジェクトが保存済み(synced)か未保存かを示す
- Visibility toggle: オブジェクトの表示/非表示を切替
- Remove button: オブジェクトを削除(親オブジェクト削除時は子オブジェクトもすべて削除される)
「Scene」タブのハイライトされた「Object list」と「+ Add object」ボタン
3Dビジュアライザ左下の「+ Add object」ボタンをクリックして新しいオブジェクトを追加できます。利用可能なプリミティブ形状(箱/球/円柱)で衝突オブジェクトを定義するか、STLファイルをアップロードできます。
プリミティブ形状を選択した場合、「Edit form」と「3D object tools panel」でプロパティを定義できます。
STLファイルを選択するとポップアップが表示され、新しいオブジェクトの名前入力、ファイル選択、オブジェクトタイプ選択を求められます。3つのタイプがあります:
- Bin: ビンを表すCADモデル用(青でレンダリング)
- Environment: ロボット周辺の実在物体に対応するその他の衝突オブジェクト(灰色でレンダリング)
- Virtual collision object: ロボットの現実環境に必ずしも存在しないオブジェクト。主にビンピッキング時のロボットワークスペース制限や、セル壁の定義による仮想ロボット内部の透過検査に使用(赤色半透明でレンダリング、このタイプのみ)
これらすべてのオブジェクトタイプは、ピックした物体が衝突しないという意味で「衝突オブジェクト」を表します。
「Object list」からオブジェクトを選択すると、リストで青、ビジュアライザで赤にハイライトされ、「Edit form」と「3D object tools」パネルが表示されます。3Dビジュアライザで直接クリックしても選択可能です。選択解除は、「Object list」で再クリックするか、「3D object tools」パネルの「Close」を選択します。
Edit form & 3D object tools
「Object list」または3Dビジュアライザでオブジェクトを選択すると、「Edit form」と「3D object tools」パネルが表示されます。
ハイライトされた「Edit form」、「3D object tools」パネル、「Save scene」ボタンを持つ「Scene」タブ
「Edit form」では以下のオブジェクトプロパティを入力できます:
- Name(オブジェクト名)
- Type(上記のオブジェクトタイプ)
- CAD file (mesh): STLオブジェクトをダウンロード可能
- Scale: STLオブジェクトをスケーリング
- Dimensions: オブジェクトをリサイズ(プリミティブ形状のみ):箱は幅/高さ/奥行き、球は半径、円柱は半径/高さ
- Position: 親オブジェクト原点からのオブジェクト原点の相対位置を変更
- Rotation: オブジェクトを自分の原点を中心に回転
「3D object tools」でオブジェクトを動的に操作することもできます:
- Move: マーカー矢印を表示し、ドラッグで目的の軸方向に位置変更
- Rotate: マーカー円を表示し、ドラッグで目的の軸方向に回転変更
- Scale: マーカー矢印を表示し、オブジェクトをスケーリング
- Resize: マーカー矢印を表示し、ドラッグで目的の軸方向に寸法変更(箱と円柱のみ)
- Self/Parent toggle: マーカー使用時の回転原点を変更。「self」で自分の原点、「parent」で親の原点を中心に回転
マーカーで各軸の位置/回転値に増分を加えることもできます。マーカーをドラッグする代わりに、特定軸の矢印/円をクリックし、値を入力して「Check」ボタンで適用します。
「+ Add child object」ボタンで、現在選択中のオブジェクトの子オブジェクトを作成できます。「x Close」ボタンで選択解除(編集終了)。
「Save scene」ボタンをクリックしてアクションを完了。仮想環境がロボットと同期されます。その後初めて「Robot」タブのロボット制御が使用可能になります。
Robot
「Robot」タブにアクセスする前に、データベースからロボットとグリッパーを選択し、ツールポイントを定義する必要があります。その後、ロボットを仮想ジョグし、ワークスペースを定義できます。
Robot controls
3つの動作モードから選択可能:
- Joint
個々のロボット関節を2通りで仮想ジョグ:- 対応する関節のスライダーを移動
- 関節位置を入力フィールドに手動入力
- Linear (Tool coordinate system / Robot-base coordinate system)
ロボットのツールポイントをツール座標系またはロボットベース座標系で移動。3通りの移動方法:- ロボットのツールポイントのマーカーをドラッグして目的位置に移動
- 矢印をドラッグして各軸方向に移動、または円をドラッグして回転
- 「Toolpoint position」パネルにTCP位置と姿勢を手動入力
「Home pose」ボタンをクリックすると、ロボットが自動的にデフォルト位置に移動します。衝突チェック機能を有効にするには、「Highlight collisions ON/OFF」トグルボタンを使用します。
ロボット操作時、関節制限が適用されます。
関節制限の設定例
関節制限でロボットの経路計画ワークスペースを定義できます。
ロボットは通常、関節可動範囲の一部のみで動作します。経路計画がロボットの全ワークスペースの該当部分のみで行われるよう、関節制限を設定することを強く推奨します。正しく設定された関節制限は、経路計算時間と成功率に好影響を与えます。
関節制限フィールドを空欄にすると、システムはロボットのデフォルトハードウェア制限を使用します。
あまりに制限的な関節制限は経路計画失敗を招く可能性があります。常に余裕を持たせてください。ロボットのリーチが十分か確認するには、「Robot controls」パネルのジョグオプションを使用し、ロボットがビンモデルのあらゆる場所にさまざまなグリッパー姿勢で到達できるか確認してください。
Vision
実際のビンピッキングセルとそのCAD版の不一致による困難に遭遇したことがあるかもしれません。キャリブレーション済みビジョンシステムを用意し、スキャンをトリガーして、スキャンされた点群がモデル化された仮想空間と一致するか確認できる新機能により、これはもう問題ありません。採用ビジョンシステムのスキャンボリュームも確認できるため、視野設定がこれまで以上に容易になりました。
「Vision」タブでは、設定済みVision Systemを操作して衝突オブジェクトの配置を検証できます。
スキャナがロボットアームに搭載されている場合、そのVision Systemをリストに表示するにはまずロボットモデルを選択する必要があります。選択しないと警告メッセージが表示されます。
3つのVision Systemを持つ「Vision System list」、4つ目はロボット未選択のため表示不可
Vision Systemのステータス:
- Available: スキャナが接続準備完了、Vision Systemはキャリブレーション済み
- Not available: スキャナが現在接続準備未完了。電源、接続、ネットワーク設定を確認
- Not calibrated: Vision Systemが未キャリブレーション。まず正常なキャリブレーションを実行してから「Environment builder」で使用
Vision Systemをクリックすると詳細情報(スキャナID、マウント位置、モデルタイプ)を取得できます。下部フィールドはVision Systemのキャリブレーションを反映(ロボットベースから見たスキャナカメラの並進と姿勢(外部キャリブレーション)またはロボットフランジから見たもの(ハンドアイキャリブレーション))。
Vision System概要ウィンドウのボタン:
- Visibility: 各スキャナモデル、スキャンボリューム、スキャナ原点(具体的にはカメラ)の表示/非表示
- Connect: スキャナが接続準備完了かつVision Systemキャリブレーション済みで「Connect」ボタンをクリック
- Disconnect: 接続後、このボタンでスキャナから切断
- Trigger: スキャナ接続中にスキャンをトリガー
Vision Systemの詳細情報
一度に一つのスキャナのみ接続可能です。同じスキャナが複数のVision Systemで使用されている場合、すべてで接続されます。
「Environment builder」はPhoXi Interfaceとスキャナ制御を共有します。「Environment builder」で接続すると、PhoXi Interfaceでも同じスキャナが接続されます。
Validation
スキャナに接続しスキャンをトリガーすることで、衝突オブジェクト(主にビン)を配置し、モデルが現実と正確に一致するようにできます。
正確なオブジェクト配置を確保するには、キャリブレーション済みVision Systemが接続可能である必要があります。スキャンをトリガーし、CADモデルを位置調整してモデルと点群が重なるようにします。
自動制御システム
- 複数ロボット統合セルでシェイカーカップを1サイクルで完成:効率最大化
- Universal Robots、Kim Povlsen氏を社長に任命しデンマークロボティクスのリーダーシップ強化
- ケンブリッジコンサルタンツ、人間の触覚を模倣する高度なデクスタスロボット「ハンク」を発表
- Robotiq、中〜大量生産向け手頃で多機能なビンピッキングロボットを発表
- Omron、高速・高精度組立向けi4シリーズSCARAロボットを発表
- Mecademic、世界最小SCARAロボット「MCS500」を発表
- ロボットプログラミングの理解:3つの主要手法を解説
- なぜ「サービス」が企業の新たな利益エンジンになるのか
- 生産性向上:最新ビンピッキングソリューションの信頼性
- 遺伝的アルゴリズムで物体とその充填材を同時に透明化する手法を開発
- ロボットが触覚で90種類以上の物体を識別、視覚・触覚融合のマルチモーダルAI