JP2023505322A - ロボットをプログラムするための方法及びシステム - Google Patents

ロボットをプログラムするための方法及びシステム Download PDF

Info

Publication number
JP2023505322A
JP2023505322A JP2022534382A JP2022534382A JP2023505322A JP 2023505322 A JP2023505322 A JP 2023505322A JP 2022534382 A JP2022534382 A JP 2022534382A JP 2022534382 A JP2022534382 A JP 2022534382A JP 2023505322 A JP2023505322 A JP 2023505322A
Authority
JP
Japan
Prior art keywords
trajectory
image
robotic device
trajectory points
display interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2022534382A
Other languages
English (en)
Inventor
シン レオン、ヨン
Original Assignee
オーグメントゥス プライベート リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オーグメントゥス プライベート リミテッド filed Critical オーグメントゥス プライベート リミテッド
Publication of JP2023505322A publication Critical patent/JP2023505322A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39001Robot, manipulator control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39024Calibration of manipulator
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39438Direct programming at the console
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39443Portable, adapted to handpalm, with joystick, function keys, display
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39449Pendant, pda displaying camera images overlayed with graphics, augmented reality
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39451Augmented reality for robot programming
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40607Fixed camera to observe workspace, object, workpiece, global
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user
    • G06T2207/20096Interactive definition of curve of interest
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30232Surveillance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Automation & Control Theory (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)
  • Processing Or Creating Images (AREA)

Abstract

ロボット・デバイス及びロボット・デバイスの近傍における較正フィクスチャを識別することと、ロボット・デバイスの第1の姿勢を決定するために、較正フィクスチャをロボット・デバイスのベースに基準化することと、環境の3D画像を受信することであって、3D画像が較正フィクスチャを含む、受信することと、センサに対する較正フィクスチャの第2の姿勢を決定することと、第1の姿勢及び第2の姿勢に基づいて、センサに対するロボット・デバイスの第3の姿勢を決定することと、複数の軌道点を受信することと、3D画像及び第3の姿勢に基づいて、複数の軌道点に対応する複数の仮想軌道点を決定することと、複数の仮想軌道点の表示を提供することと、仮想軌道点を操作するためのインターフェースを提供することとを含む方法。

Description

本発明は、軌道点のシーケンスを実施するようにロボットをプログラムするためのシステム及び方法に関する。より詳細には、本発明は、動作環境においてロボットが視覚的にプログラムされるやり方に関する。
ロボットは、オブジェクトの表面を処理するためにしばしば使用されている。ロボットをプログラムするための既存の実践は、ロボットに軌道点のシーケンスを教示することを伴う。ロボットは、プログラミング中、所望の動作パスに沿った様々な軌道点を通してガイドされることによって、どのようにタスクを実施するのかを教示される。代替として、オブジェクトの3次元(3D:three-dimensional)CADモデルが存在する場合、ロボット・シミュレーション・システム、いわゆるオフライン・プログラミングにおいて、ロボット工学バックグラウンドを持つ人物が、軌道点を教示する。
本発明は、環境内で、ロボット・デバイス及びロボット・デバイスの近傍における較正フィクスチャを識別すること、較正フィクスチャに対するロボット・デバイスの第1の姿勢を決定するために、較正フィクスチャをロボット・デバイスの所定の部分に基準化すること、センサから環境の3D画像を受信することであって、3D画像が較正フィクスチャを含む、受信すること、3D画像に基づいて、センサに対する較正フィクスチャの第2の姿勢を決定すること、第1の姿勢及び第2の姿勢に基づいて、センサに対するロボット・デバイスの第3の姿勢を決定すること、表示インターフェース又はデバイス・インターフェースから、複数の軌道点を受信すること、3D画像及び第3の姿勢に基づいて、複数の軌道点に対応する複数の仮想軌道点を決定することを含むコンピュータ実装方法に関する。
本発明は、ロボット・デバイスをプログラムするためのシステムに更に関する。システムは、センサと、センサに通信可能に結合され、本明細書で開示される実施例のうちのいずれか1つによる方法を実施するように構成された、コンピューティング・システムとを備える。
本発明は、コンピューティング・システムによって実行されるときに、本明細書に開示される実施例のうちのいずれか1つによる方法をコンピューティング・システムに実施させる命令を、その中に記憶している非一時的なコンピュータ可読媒体に更に関する。
本明細書で説明される例示的な実施例は、限定することを意味していない。開示される方法及びシステムの一定の態様を、広く多様な異なる構成において配置し、組み合わせることができ、それらのすべてが本明細書で企図されていることが容易に理解されるであろう。
更に、図に示された特定の配置を、限定するものとして見るべきではない。他の実施例は、所与の図に示された各要素よりも多い、又は少ない要素を含むことがあることが理解されるべきである。更に、例証した要素のうちのいくつかは、組み合わされる、又は省略されることがある。それでもなお、例示的な実施例は、図に例証した要素を含むことができる。
表示インターフェースに結合され得るセンサを使用して環境の3D画像を取得する例示的なシステム及び方法が提供され、ここで、3D画像は、ロボット、オブジェクト、及び較正フィクスチャを含む。3D画像は、ロボットの軌道点を作成する、操作する、及び/又は管理するために使用される。環境の画像は、表示インターフェース上の2D画像を指す。センサと結合された表示インターフェースは、ロボットの環境の実際の画像内で、ロボットについての軌道点を視覚化し、管理するために使用される。
一実施例によれば、環境内で、ロボット・デバイス及びロボット・デバイスの近傍における較正フィクスチャを識別することを含む方法が提供される。ロボット・デバイスはまた、ロボットとも呼ばれる。例えば、ロボット・デバイスが産業用ロボットである場合、ロボット・デバイスは、処理を実施するためのツール、例えば、溶接ツール又は塗装ツールを含むエンド・エフェクタを持っている。ロボット・デバイスを識別することは、ロボット・デバイスの存在を識別することを指す。識別することは、ロボット・デバイスを指す更なる情報、例えば、ロボット・デバイスの識別番号、型、モデル、位置、向き、及び/又は状態を識別することを更に含むことができる。識別することは、ロボット・デバイスを提供することを含むことができる。代替として、又は追加として、識別することは、センサ・データ、例えば、画像データ、磁界データ、電界データ、ケーブルを介して送信された信号、ワイヤレスで送信された信号、又はロボット・デバイスを識別するために使用され得る任意の他のデータにおけるロボット・デバイスの位置を識別することを指すことができる。較正フィクスチャは、視覚的に独特であるように、例えば、カラー・マーキング、バー・コード、2次元コード、又は独特なコーティングでマークされていてよい。
更に、本方法は、較正フィクスチャに対するロボット・デバイスの第1の姿勢を決定するために、較正フィクスチャをロボット・デバイスの所定の部分(例えば、ベース)に基準化することを含む。基準化することは、基準化信号に基づくことができる。例えば、基準化することは、基準化レール、距離確保デバイス(例えば、レーザ・ベースの距離確保デバイス)、画像センサ、又は較正フィクスチャをロボット・デバイスのベースに基準化するために使用され得る別の信号を使用することを含むことができる。
更に、本方法は、センサから環境の3D画像を受信することを含み、ここで、3D画像は較正フィクスチャを含む。3D画像は、ロボット、オブジェクト、及び較正フィクスチャを示すことができる。3D画像は、軌道点を作成する、操作する、及び/又は管理するために使用される。3D画像は、一連の赤外線画像、一連の構造化光画像、一連の静止画像、一連のダイナミック・レンジ画像、一連のショット・ノイズ画像、一連のレッド・ノイズ画像、一連のダーク・ノイズ画像、及び/又はビデオ・ストリームを含むことができる。3D画像をキャプチャするセンサは、深度センサ及び/又は3Dセンサであってよい。センサは、3D画像を示すための表示インターフェースに結合されてよい。較正フィクスチャは、センサを使用することによって、その環境におけるロボットの姿勢、及び一般に動き(並進及び回転)を算出し、検出するために使用される3次元(3D)オブジェクトであってよい。
本方法は、完全に仮想的な3Dモデル(例えば、コンピュータ支援設計(computer-aided design)すなわち「CAD」モデル)を使用することには頼らないので、不正確な3Dモデルは、予期せずにロボットをオブジェクト又は環境と衝突させる軌道がコマンドされている状態に至ることができる。したがって、本方法は、より安全である。
更に、本方法は、3D画像に基づいて、センサに対する較正フィクスチャの第2の姿勢を決定することを含む。その点で、決定することは、較正フィクスチャの位置及び/若しくは向き、並びに/又は、ロボット・デバイスの位置及び/若しくは向きを推定することにおいて、1つ又は複数のフィデューシャル・マーカを識別することを含むことができる。フィデューシャルともまた呼ばれ得るフィデューシャル・マーカは、基準又は尺度の点として使用するために、生み出された画像の中に現れる、センサの視野に置かれたオブジェクトである。例えば、フィデューシャル・マーカは、カラー・ドッド、バーコード、又は認識可能なオブジェクトであってよい。例えば、フィデューシャル・マーカは、較正フィクスチャ及び/又はロボット・デバイスの上に塗装される、それらに取り付けられる、又はそれらの上に置かれる。追加として、又は代替として、決定することは、較正マーカの3D形状認識に基づくことができる。その点で、較正マーカは、較正フィクスチャに取り付けられた、若しくは較正フィクスチャの一部を形成する、3D構造又はオブジェクトであってよい。代替として、較正フィクスチャは、全体として較正マーカであってもよい。更に、較正マーカは、ロボット・デバイスに取り付けられた、又はロボット・デバイスの一部を形成する、3D構造であってもよい。代替として、ロボット・デバイスは、全体として較正マーカであってもよい。その点で、3D形状認識は、パターン認識、パターン・マッチング、機械学習、又は任意の他の好適な形状認識技法を含むことができる。
本方法は、3D画像に基づいて、センサに対する較正フィクスチャの第2の姿勢を決定することを含むので、追加の機器を必要とすることなく、第2の姿勢を迅速に決定することができる。第2の姿勢が3D形状認識に基づいて決定されるときには、決定することの精度が、なお一層向上する。
更に、本方法は、第1の姿勢に基づいて、センサに対するロボット・デバイスの第3の姿勢を決定することを含む。代替として、第3の姿勢を決定することは、第1の姿勢及び第2の姿勢に基づくことができる。
更に、本方法は、複数の軌道点を受信することを含む。ウェイポイントともまた呼ばれてよい軌道点は、オブジェクトの処理中にロボットが辿ることになっているパスを定義する。軌道点は、3次元位置情報及び3次元向き情報を含む。これらの軌道点は、ロボットのロボット制御ユニット若しくはコンピューティング・システムにおける、又はそれらに結合された、メモリの中に命令として記憶される。ロボットの動作中、プログラム命令が実行され、それによって、所望の通りにロボットを動作させる。軌道点は、表示インターフェースを介したユーザ・エントリの形式で、又はデバイス・インターフェースを介したロボット・スクリプトの形式で提供されてよい。
更に、本方法は、3D画像及び第3の姿勢に基づいて、複数の軌道点に対応する複数の仮想軌道点を決定することを含む。軌道点は、ロボットの現在の環境の知識なしに、ロボットの所定の部分(例えば、ベース)に対する3次元点として、ユーザによって事前にプログラムされていてもよい。
本方法は、3D画像及び第3の姿勢に基づいて、複数の軌道点に対応する複数の仮想軌道点を決定することを含むので、本方法は、ロボットをプログラムしているユーザ又はオペレータが、コンピュータ・サイエンスについての知識を有することを必要としない。したがって、ロボットをプログラムしているオペレータは、ロボットによって実施される動き及びプロセスの十分な暗黙知を有する人物であればよい。したがって、本方法は、よりコストがかからず、オブジェクトの3D CADモデルを必要とせず、直観的に使用できる。
更に、オプションとして、本方法は、環境の2D画像を受信することを含む。その点で、環境の2D画像は、表示デバイスに含まれた、又は表示デバイスに結合された、カメラから受信されてよい。代替として、環境の2D画像は、センサに含まれた、又はセンサに結合された、カメラから受信されてもよい。
更に、オプションとして、本方法は、複数の仮想軌道点でオーバーレイされた環境の2D画像の表示を提供することを含む。
本方法は、複数の仮想軌道点でオーバーレイされた環境の2D画像の表示を提供することを含むので、環境の3Dモデルが正確ではない、又は環境が変化した場合に、予期せずにロボットを環境におけるオブジェクトと衝突させる軌道、又は他の予期しない結果を生み出す軌道を、たやすく判定することができる。したがって、本方法は、より安全で予測可能である。更に、本方法は、複数の仮想軌道点でオーバーレイされた環境の2D画像の表示を提供することを含むので、オペレータは、テストのためのプログラムを稼働することなく、プロセスのなんらかの部分、例えば、塗装動作における表面のなんらかの部分を見逃しているかどうかを判定することができる。よって、満足のいく品質のプログラミングを実現するのに、単一の反復で事足りることができる。
更に、オプションとして、本方法は、表示インターフェースを通して仮想軌道点を操作するためのインターフェースを提供することを含む。
本方法は、表示インターフェースを通して仮想軌道点を操作するためのインターフェースを提供することを含むので、本方法は、ロボットの物理的な動きを必要としない。したがって、本方法は、より時間がかからず、より面倒がかからず、よりエラーが起きにくい。更に、許容できるプログラムを、ただ1つの、又はほんのいくつかの反復で実現することができる。
よって、この方法は、ロボット軌道点の直観的な視覚化を提供し、ロボット・プログラミングを簡略化する。
本方法はまた、環境の2D画像の上に重ね合わせられていても、いなくてもよい3D画像の表示を提供することを含むことができる。
ロボットの軌道点を表示インターフェース上の画像の中に投影するための場所を決定するために、センサに対するロボットの姿勢(位置及び向き)が決定されてよい。ロボットの姿勢は、較正フィクスチャの3D画像を処理することによって決定されてよい。センサに対するロボットの姿勢が決定されると、1つ又は複数の軌道点の姿勢が、表示インターフェース上に投影されても、又はオプションとして表示インターフェース上の拡張現実プレゼンテーションの中に投影されてもよく、ユーザがその所与の環境内でロボットの軌道を視覚化するのを可能にする。
較正フィクスチャは、センサに対するロボットの姿勢を決定するために使用される3D特徴を有するオブジェクトである。較正フィクスチャは、ロボットと較正フィクスチャとの間で決定された相対姿勢で、ロボットの環境内に置かれてよい。それによって、較正フィクスチャの表現を含む、環境の3D画像をセンサが取得するとき、センサに対するロボットの姿勢を決定することができる。
別の実施例において、本方法は、デバイス・インターフェースから、複数の仮想軌道点のうちの1つ又は複数の、1つ又は複数のプロパティへの1つ又は複数の調整を示す入力データを受信することを更に含むことができる。その点で、プロパティは、軌道位置、軌道向き、エンド・エフェクタ状態、軌道速度、電子信号入力、及び電子信号出力から成るグループから選択される1つ又は複数である。デバイス・インターフェースは、表示デバイスの表示インターフェース、又は、モバイル、ラップトップ、ノートブック、若しくはデスクトップ・コンピュータの入力インターフェースであってよい。入力データは、調整を示し、ここで、各調整は、仮想軌道点のうちの1つ又は複数の、1つ又は複数のプロパティに関する。例えば、入力データは、1つの軌道点の1つのプロパティ、例えば、1つの軌道点の軌道向きへの、調整を示すデータを含むことができる。別の実例として、入力データは、1つの軌道点の軌道向きへの調整を示すデータと、別の軌道点の軌道速度への調整を示すデータとを含むことができる。更に、この実施例による方法は、デバイス・インターフェースから、仮想軌道点のうちの1つ又は複数を作成する、複製する、又は削除するための入力データを受信することを含むことができる。更に、本方法は、表示インターフェース上で受信された入力データに基づいて、複数の仮想軌道点のうちの1つ又は複数に対応する軌道点のうちの1つ又は複数の、1つ又は複数の調整されたプロパティを決定することを含むことができる。
別の実施例において、本方法は、センサを含むデバイスのインターフェースから、軌道点又は仮想軌道点のうちの1つ若しくは複数及びそれらのそれぞれのプロパティに従ってロボット・デバイスが動くための命令を提供する入力データを受信すること、上述した命令をロボット・デバイスに送信することを更に含むことができる。
前述の受信された軌道点は、様々な座標のうちの1つへの参照を含む、又は様々な座標のうちの1つに基づくことができる。例えば、表示インターフェースを介してユーザ入力から受信されてもよい軌道点は、仮想座標に基づくことができ、したがって、仮想軌道点と呼ばれてもよい。別の実例において、ロボット・スクリプトとして受信された軌道点は、物理座標又はロボット座標に基づくことができ、したがって、物理軌道点と呼ばれてもよい。仮想座標は、ロボット・デバイスによって使用される物理座標又はロボット座標とは別個である可能性があるので、受信された軌道点が仮想軌道点である場合、軌道点は、物理軌道点への転換又は変換を必要とすることになり、次いで物理軌道点は、実行のためにロボット・デバイスに送信される。それに応じて、上述した命令をロボット・デバイスに送信するステップは、仮想軌道点を物理軌道点に転換し、物理軌道点をロボット・デバイスに送ることを含むことができる。
別の実施例において、本方法は、仮想軌道点を操作するための表示インターフェースを提供すること、表示インターフェースから、指定されたパターンで配置された複数の仮想軌道点を含む軌道パターンの作成及び/又は軌道パターンへの調整を示す入力データを受信することを更に含むことができる。更に、本方法は、作成された、又は調整された軌道パターンに基づいて、2次元軌道パターンを、表示インターフェース上で3次元軌道パターンに変換することを含むことができる。更に、本方法は、表示インターフェースから、表示インターフェース上で3次元軌道パターンを並進させる、及び/又は回転させるための入力データを受信することを含むことができる。更に、本方法は、表示インターフェースから、3次元軌道パターンを3D画像の一部の上に投影するための入力データを受信することを含むことができる。その点で、一実施例において、3D画像は、表示インターフェース上の2D画像の上に重ね合わせられてよい。代替として、3D画像は、2D画像なしに表示されてもよい。
別の実施例によれば、ロボット・デバイスをプログラムするためのシステムが提供される。システムは、センサと、センサに通信可能に結合され、一実施例による方法を実施するように構成されたコンピューティング・システムとを含む。
更に、本システムは、メモリの中に軌道点を記憶するために、ロボット・デバイスのメモリに結合又は接続されてよい。代替として、本システムが軌道点の通りにロボット・デバイスを動作させることができるように、本システムは、ロボット・デバイスの制御に結合又は接続されてもよい。
別の実施例によれば、非一時的なコンピュータ可読媒体が提供される。コンピュータ可読媒体は、コンピューティング・システムによって実行されるときに、本明細書で説明された方法の一実施例による機能をコンピューティング・システムに実施させる命令を、その中に記憶している。
別の実施例によれば、方法が提供される。本方法は、環境内で、ロボット・デバイス及びロボット・デバイスの近傍における較正フィクスチャを識別することと、較正フィクスチャに対するロボット・デバイスの第1の姿勢を決定するために、較正フィクスチャをロボット・デバイスの所定の部分(例えば、ベース)に基準化することと、センサから環境の3D画像を受信することであって、3D画像が較正フィクスチャを含む、受信することと、3D画像に基づいて、センサに対する較正フィクスチャの第2の姿勢を決定することと、第1の姿勢及び第2の姿勢に基づいて、センサに対するロボット・デバイスの第3の姿勢を決定することと、仮想軌道点を作成するためのインターフェースを提供することと、3D画像及び第3の姿勢に基づいて、仮想軌道点に対応する軌道点を決定することとを含む。
本明細書で開示される実施例のうちのいずれか1つによる方法、システム、及び/又は非一時的なコンピュータ可読媒体を含む実施例において、複数の軌道点は、わずか1つの軌道点であり、複数の仮想軌道点は、わずか1つの仮想軌道点である。
実施例のよりよい理解のために、実施例の他の、並びに更なる特徴及び利点と共に、付属する図面と併用して以下の説明への参照が行われる。本発明の範囲は、添付の請求項において指摘されることになる。
一実施例による方法を例証する流れ図である。 一実施例によるシステムを例証する図である。 表示インターフェースの2D画像を例証する図である。 一実施例による方法を使用して、オブジェクトの3D画像の上に投影されている軌道パターンの画像を例証する図である。
図を参照すると、図1は、センサによって取得された3D画像を使用して、第3の姿勢(ロボットとセンサとの相対姿勢)の決定、及び/又は、ロボット軌道点の作成若しくは管理を考慮することができる方法100を示す流れ図を例証する。方法100は、タブレット・デバイス、スマートフォン、ヘッド・マウント・ディスプレイ(HMD)などの、カメラを含む表示デバイスを使用して、又は、モバイル、ラップトップ、ノートブック、若しくはデスクトップ・コンピュータを使用して遂行することができる。表示デバイスとは別々であるセンサが使用されてもよく、しかしながら、センサは、物理的なフィクスチャ又は接着媒体を通して表示デバイスに結合されてもよい。センサは更に、又は代替として、ケーブル(有線)又は無線の接続を通して、表示デバイスに通信可能に結合されてもよい。
図1のブロック102によって示されるように、方法100は、センサから、環境の3D画像を受信することを含む。センサは、深度センサ及び/又は3Dセンサであってよい。3D画像は、一連の赤外線画像、一連の構造化光画像、一連の静止画像、及び/又はビデオ・ストリームの合成であってよい。3D画像は、単一の静止赤外線画像及び/又は構造化光画像であってもよい。環境は、少なくとも1つのロボット・デバイスと、較正フィクスチャとを含むことができる。
図1を参照すると、方法100は、ブロック104によって例証されるように、センサに対するロボット・デバイスの姿勢を決定することを更に含む。環境の3D画像は、センサに対して、環境内でロボット・デバイスがどこに設置されるのかを決定するように処理されてよい。ロボット・デバイスの姿勢を決定することは、センサに対するロボット・デバイスの位置(X、Y、Z)及び向き(ロール、ピッチ、ヨー)を決定することを含む。センサに対するロボット・デバイスの姿勢は、較正フィクスチャを含む3D画像を処理することによって決定されてよい。3D画像における較正フィクスチャ上の3次元特徴を認識することによって、センサからのロボット・デバイスの並進及び回転を決定することができる。システムは、ロボット・デバイスと較正フィクスチャとの相対姿勢の予備知識を有していてもよく、それによって、センサに対するロボット・デバイスの姿勢が決定されるのを可能にする。
方法100は、拡張現実プレゼンテーションが所望される場合、ブロック106に示されるように、オプションとして、センサに対するロボット・デバイスについての軌道点の姿勢を決定することを更に含む。センサに対するロボット・デバイスの姿勢が決定されるとき、ロボットは、オプションの拡張現実プレゼンテーションの一部として、軌道点を仮想的にオーバーレイする場所を決定するための基準点として使用されてよい。センサは既知の相対変位で表示デバイスに結合されているので、表示デバイス上のセンサと視覚カメラとの既知の相対変位に基づいた姿勢補償を通して、視覚カメラとセンサとの相対姿勢から、ロボットと視覚カメラとの相対姿勢を導き出すことができる。その点で、表示デバイスの視覚カメラに対する軌道点の姿勢は、ロボット・デバイスとセンサとの相対姿勢に基づいて決定され得る。これらのロケーション、例えば、表示デバイス上のセンサと視覚カメラとの相対変位は、軌道点を、表示デバイスの視覚カメラによってキャプチャされた2D画像の中に仮想的にオーバーレイするために使用されてよい。
簡略化のために図1に図示されていないステップにおいて、方法100は、オプションとして、環境の2D画像を受信することを含む。その点で、2D画像は、センサから受信される。代替実施例において、2D画像は、好ましくはセンサに近い位置に設置された、その向きがセンサの向きと同一である、更なるカメラによって受信されてもよい。
ブロック108に示されるように、方法100は、ブロック102で受信された3D画像の表示を提供するステップを含む。オプションとして、3D画像は、環境の2D画像の上に重ね合わせられてもよい。
簡略化のために図1に図示されていないステップにおいて、方法100は、複数の軌道点を受信することを含む。更に、方法100は、3D画像、及びブロック106で決定されたセンサに対するロボット・デバイスの位置に基づいて、複数の軌道点に対応する複数の仮想軌道点を決定することを含む。その点で、各仮想軌道点は、対応する3D画像において、その対応する軌道点の厳密な位置と重ね合わせられるようなやり方で、3D画像の中に位置付けられる。すなわち、例えば、ある軌道点がロボット・デバイスの下部接合部に位置付けられている場合、その対応する仮想軌道点は、3D画像におけるロボット・デバイスの下部接合部の3D表現に位置付けられる。オプションとして、各仮想軌道点は、対応する3D画像において、その対応する軌道点の厳密な位置と重ね合わせられるようなやり方で、2D画像の中に位置付けられる。
ブロック110に示されるように、方法100は、決定された複数の仮想軌道点でオーバーレイされた3D画像の表示を提供することを更に含む。オプションとして、方法100は、決定された複数の仮想軌道点でオーバーレイされた、環境の2D画像の表示を提供することを更に含む。
図1のブロック112によって示されるように、方法100は、表示インターフェース上に提示された3D画像上の仮想軌道点のオーバーレイを含むことができる。オプションとして、方法100のブロック112は、表示インターフェース上に提示された、環境の2D画像上の仮想軌道点のオーバーレイを含むことができる。環境の画像は、表示デバイス上の視覚カメラによって取得された2D画像であってよい。環境の画像は、ロボット・デバイス全体を含んでも、ロボット・デバイスの一部を含んでも、又はロボット・デバイスのどこも含まなくてもよい。追加として、環境の画像は、較正フィクスチャ全体を含んでも、較正フィクスチャの一部を含んでも、又は較正フィクスチャのどこも含まなくてもよい。追加として、環境の画像は、単一の静止2D画像、一連の静止2D画像、及び/又はビデオ・ストリームであってよい。
図1のブロック112によって示されるように、方法100は、表示インターフェースを通して、仮想軌道点を作成すること、及び/又は管理することを更に含むことができる。言い換えれば、ロボット・デバイスによって実行若しくは実施されることになる軌道又は軌道パターンが生成されてよい。表示インターフェースに関連付けられたユーザ・インターフェースは、ロボット・デバイスの仮想軌道への1つ又は複数の変更を示す入力データを受信することができる。例えば、表示インターフェースは、3D画像に、及び/又はオプションとして2D画像に調節された、タッチ・ベースのインターフェースを含むことができる。仮想軌道点は、表示インターフェース上で入力データを通して、作成されても、削除されても、及び/又は複製されてもよい。位置、向き、エンド・エフェクタ状態、軌道速度、電子信号入力、及び電子信号出力などの、各仮想軌道点のプロパティが、表示インターフェース上で入力データを通して調整されてよい。ロボット・デバイスの軌道点は、表示インターフェース上での仮想軌道点に対応する。ロボット・デバイスは、軌道を実行するようにコマンドされてよく、ここで、軌道は、複数の軌道点のうちの少なくともいくつかのシーケンスを含む。ロボット・デバイスは、軌道に沿った各軌道点のプロパティを実行するようにコマンドされてもよい。例えば、表示インターフェース上で入力データを通して命令された通りに、エンド・エフェクタが軌道の途中でアクティブにされるようにコマンドされてもよい。
本明細書で説明される流れ図に関連して説明された機能性は、特殊機能及び/若しくは構成された一般機能のハードウェア・モジュール、図1に示された流れ図に関連して説明された具体的な論理機能、決定、並びに/又はステップを実現するためのプログラム・コードの部分として、実装することができる。使用される場合、プログラム・コードを、例えば、ディスク又はハード・ドライブを含むストレージ・デバイスなどの、任意のタイプのコンピュータ可読媒体上に記憶することができる。
図1に示された流れ図における機能は、説明された方法の機能性全体が維持される限り、別々に説明された機能の並列実行又は逆の順序さえも含む、示された又は議論されたものとは順不同で実行されてもよい。図1に示された流れ図における機能は、選択的に実行されてもよい。例えば、一実施例は、ロボット相対センサの較正を実施することができ、別の実施例は、較正に加えて、拡張現実プレゼンテーションを通してロボットについての仮想軌道点の視覚化を実施することができ、別の実施例は、較正に加えて、3D画像を使用してロボットについての仮想軌道点の視覚化を実施することができ、別の実施例は、較正と、拡張現実における及び/又は3D画像を使用した前述の視覚化とに加えて、センサによって取得された3D画像を使用して、ロボット軌道点の作成又は管理を実施することができる。他の組合せもまた可能であってよい。
図2は、ロボット・デバイス202、較正フィクスチャ228、表示デバイス222、及びセンサ224から成り立つシステムを例証する。
ロボット・デバイス202は、所定の部分、例えば、ベース204を含み、ベース204は、定置ベースであっても、又はモバイル・ベースであってもよい。ロボット・デバイスは、軌道点210~218を含む軌道220に沿って動作し、動くように制御されてよい。追加として、ロボット・デバイスは、エンド・エフェクタ226を含むことができ、エンド・エフェクタ226は、指グリッパ、又は吸着グリッパなどの異なるタイプのグリッパなどの、グリッパの形態を取ることができる。エンド・エフェクタは、ドリル、ブラシ、又は塗装ガンなどのツールの形態を取ってもよい。エンド・エフェクタは、力センサ、近接センサ、又はカメラなどのセンサを含むことができる。他の実例もまた可能であってよい。
表示デバイス222は、インターフェース、及びオプションとして、環境の2D画像をキャプチャする視覚カメラを含むデバイスであってよい。例えば、表示デバイスは、タブレット・コンピュータ、ハンドヘルド・スマートフォン、又はモバイル、ラップトップ、ノートブック若しくはデスクトップ・コンピュータの一部であってよい。
センサ224は、環境の3D画像を取得する、深度センサ及び/又は3Dセンサであってよい。3D画像は、一連の赤外線画像、一連の構造化光画像、一連の静止画像、及び/又はビデオ・ストリームの合成であってよい。3D画像は、単一の静止赤外線画像及び/又は構造化光画像であってもよい。センサ224は、フィクスチャ又は接着媒体を通して表示デバイス222に物理的に固定されていてよい。センサを表示デバイスに結合するためのフィクスチャは、取り外し可能な機構、又は取り外し不可能な機構を持っていてよい。表示デバイス222がセンサ224から3D画像を受信するために、センサ224は、ケーブル(有線)又は無線の接続を通して、表示デバイス222に接続されてもよい。
較正フィクスチャ228は、ロボット・デバイスの環境に置かれる、3次元特徴を有するオブジェクトである。図2の例示的な実施例によれば、較正フィクスチャ228は、ベース206と、ベースに取り付けられた非対称幾何学的特徴208とを有することができる。ベース206は、較正フィクスチャ228を、テーブル、壁、又はオブジェクトなどの、環境における表面の上に設置する、又は接着するために使用されてよい。例示的な実施例において、非対称幾何学的特徴208は、異なるサイズ及び/又は異なる位置を有する2つの球形オブジェクトを含むことができる。しかしながら、本明細書で説明される例示的な実施例は、限定することを意味しない。非対称幾何学的特徴は、例示的な実施例に示されていない構成によって実現されてもよい。例えば、較正フィクスチャ上の非対称幾何学的特徴は、半球形、円柱形、円錐形、矩形、三角形、台形、楕円形、正弦曲線、凹型、凸型、又はその組合せ若しくは変形であってもよい追加の形状又は特徴から成り立ってもよい。
センサ224によって取得された3D画像において、較正フィクスチャ228上の非対称幾何学的特徴208を認識することによって、センサ224に対する較正フィクスチャ228の姿勢が決定されてよい。較正フィクスチャ228に対するロボット・デバイス202の姿勢は既知であり得るので、それによって、センサ224に対するロボット・デバイス202の姿勢が、3D画像において較正フィクスチャ228を認識することによって決定されてよい。
代替実施例において、較正フィクスチャは、ベースと、ベースに取り付けられた3D対称幾何学的特徴とを有することができる。対称幾何学的特徴の実例は、非対称幾何学的特徴に適用可能な上述した形状又は特徴を含むことができる。代替実施例において、較正フィクスチャは、ベースと、ベースに取り付けられた3Dの非幾何学的な、又は不規則な形状の特徴を有することができる。そのような非幾何学的特徴は、対称であっても、又は非対称であってもよい。代替実施例において、3D特徴の総数は、1つであっても、又は2つ以上であってもよい。
図3は、表示インターフェース330の2D画像を例証し、ここで、仮想軌道点310~328は、オブジェクト332の上に置かれている。表示インターフェース330は、表示デバイス222のインターフェースであってよい。表示インターフェース330の2D画像は、単一の静止画像、又は表示デバイス222の視覚カメラから連続して受信されるビデオ・ストリームであってよい。表示デバイス222の向きが変化するにつれて、表示インターフェース330上の2D画像は、対応する視点からの環境の部分を表示するように更新されてよい。
図3を参照すると、仮想軌道点310~328は、表示インターフェース330上に、又はオプションとして表示インターフェース330上の拡張現実プレゼンテーションに、投影されていてよい。仮想軌道点は、ロボット・デバイス302の軌道点に対応する。センサに対するロボット・デバイス302についての軌道点310~328の姿勢は、図1のブロック106に基づいて決定される。仮想軌道点は、図1のブロック112に基づいて、表示インターフェース330の上にオーバーレイされる。表示デバイス222の向きに応じて、仮想軌道点310~328によって映し出された軌道点のサブセットのみが、表示インターフェース330上に投影されてもよい。ロボット・デバイスは、表示インターフェース330上に示された仮想軌道点310~328によって映し出された通りに、軌道点のシーケンスを通して動くようにコマンドされてよい。
図1のブロック108を参照して、センサ224によって取得された3D画像が、表示インターフェース330上に、又はオプションとして表示インターフェース330上の環境の2D画像と、重ね合わせられてよい。表示インターフェース330上の環境の2D画像の上に重ね合わせられている間、3D画像は、可視であっても、又は不可視であってもよい。図1のブロック112は、表示インターフェース上で仮想軌道点を作成すること、及び/又は管理することを含む。仮想軌道点の作成及び/又は管理は、3D画像上で実施されてよく、3D画像は、表示インターフェース330上の環境の2D画像の上に重ね合わせられていても、いなくてもよい。例えば、表示インターフェース330上の入力の位置は、3D画像の上に投影され、その後、表示インターフェース330上の入力位置からのレイ・キャストが3D画像と交差する位置に、対応する仮想軌道点を作成する。このようにして、仮想軌道点、よって軌道点は、環境及びロボット・デバイス302に関して正確に作成される、及び/又は管理されてよい。図3に示されるように、仮想軌道点312~328は、オブジェクト332の3D画像の上に置かれており、オブジェクト332の3D画像は、デバイス・インターフェース330上でオブジェクト332の2D画像の上に重ね合わせられていても、いなくてもよく、ここで、仮想軌道点312~328は、デバイス・インターフェース330上でオブジェクト332の表面上に位置付けられるように現れてよい。
図3を参照すると、較正フィクスチャ334は、センサ224に対するロボット・デバイス302の姿勢を決定するために使用されてよい。較正フィクスチャ334は、表示インターフェース330上の仮想軌道点の適切なオーバーレイのために、表示デバイス222のセンサ224及び視覚カメラによって常にキャプチャされている必要はなくてもよい。較正フィクスチャは、非対称幾何学的特徴308、及びベース306から成り立ってよい。
図4は、オブジェクト412の3D画像の上に投影されている軌道パターンの画像を例証する。表示インターフェース430は、ユーザが軌道パターン404を定義するのを可能にすることができるユーザ・インターフェース402のサブセットを含むことができる。例えば、ユーザ・インターフェース402は、ユーザが軌道パターンのプロパティを定義するのを可能にすることができる。上述したプロパティは、軌道パターン404の寸法(垂直及び水平の長さ)、軌道パターン404に沿った軌道点の数及び/若しくは密度、並びにステップオーバの頻度を含むことができる。ユーザ・インターフェース402は、ユーザによって定義された軌道パターン404のプレビューを提供することができる。軌道パターンは、例示的な実施例に例証されたラスタ・パターンに限定されなくてもよく、軌道パターンは、ジグザグ状、らせん状、等高線状、及び魚尾状を含む他のパターンであってもよい。
軌道パターン404は、ユーザ・インターフェース402上の2次元軌道パターン404を、3次元軌道パターン408に変換するプロセス406にかけられてよい。3次元軌道パターン408は、表示インターフェース430上で入力データが受信されると、その3次元座標フレームに沿って並進及び回転することができる。3次元軌道パターン408は、オブジェクト412の3D画像の上に投影されて、オブジェクト412の表面に一致する投影された軌道パターン414をもたらすことができる。3次元パターン408上の各仮想軌道点は、それぞれの投影パス410を介して、オブジェクト412の表面の上に投影されてよく、ここで、投影パス410は、3次元軌道パターン408上のそれらのそれぞれの位置での起点と、3次元軌道パターン408の平面に対して直交であってよい投影向きとを含む。3次元軌道パターン408の投影は、例示的な実施例に示されたオブジェクト412に限定していなくてもよい。例えば、3次元軌道パターン408は、タービン翼、エアロフォイル、金属シート、又は他の製造部品などの、例示的な実施例には示されていない他のオブジェクト上に投影されてもよい。3次元軌道パターン408は、環境の上に投影されてもよく、ここでの環境は、オブジェクト412又はロボット・デバイスを含まない、例えば、テーブル、床、壁、フィクスチャ、又はコンベア・システムである。
本開示は、様々な態様の例証として意図される、本出願で説明された特定の実施例に関して限定されないことになる。当業者には明らかであるように、その趣旨及び範囲から逸脱することなく、多くの修正及び変形を行うことができる。本明細書で挙げたものに加えて、本開示の範囲内で機能的に等価である方法及び装置は、上記の説明から当業者には明らかであろう。そのような修正及び変形は、添付の請求項の範囲内に入ることが意図される。
上の詳細な説明は、付属の図を参照して開示されたシステム及び方法の様々な特徴及び機能を説明している。図において、同様の記号は、通常、文脈がそうでないと指示しない限り、同様の部品を識別する。本明細書及び図において説明された例示的な実施例は、限定することを意味していない。本明細書で提示された主題の趣旨又は範囲から逸脱することなく、他の実施例を利用することができ、他の変更を行うことができる。本開示の態様は、本明細書で広く説明され、図において例証されたように、多様に異なる構成において配置し、置換し、組み合わせ、分離し、設計することができ、それらのすべてが本明細書で明示的に企図されることが容易に理解されるであろう。
上で説明された方法のブロックなどの情報の処理を表現するブロックは、本明細書で説明された方法又は技法の具体的な論理機能を実施するように構成され得る回路に対応していてよい。代替として、又は追加として、情報の処理を表現するブロックは、モジュール、セグメント、又はプログラム・コード(関連データを含む)の一部に対応していてもよい。プログラム・コードは、方法又は技法における具体的な論理機能又はアクションを実装するための、プロセッサによって実行可能な1つ又は複数の命令を含むことができる。プログラム・コード及び/又は関連データは、ディスク若しくはハード・ドライブ、又は他のストレージ媒体を含むストレージ・デバイスなどの、任意のタイプのコンピュータ可読媒体上に記憶されてよい。
1つ又は複数の情報送信を表現するブロックは、同じ物理デバイスにおけるソフトウェア及び/又はハードウェア・モジュールの間の情報送信に対応していてよい。しかしながら、他の情報送信は、異なる物理デバイスにおけるソフトウェア・モジュール及び/又はハードウェア・モジュールの間であってもよい。
コンピュータ可読媒体はまた、レジスタ・メモリ、プロセッサ・キャッシュ、及びランダム・アクセス・メモリ(RAM:random-access memory)のような短い時間の期間にわたってデータを記憶するコンピュータ可読媒体などの、非一時的なコンピュータ可読媒体を含むことができる。コンピュータ可読媒体はまた、読み出し専用メモリ(ROM:read only memory)、光学又は磁気ディスク、コンパクト・ディスク読み出し専用メモリ(CD-ROM:compact-disc read only memory)のような、二次的な又は永続的な長期ストレージなどの、より長い時間の期間にわたってプログラム・コード及び/又はデータを記憶する非一時的なコンピュータ可読媒体を含むことができる。コンピュータ可読媒体は、コンピュータ可読ストレージ媒体又は有形なストレージ・デバイスと考えられてよい。
図に示された特定の配置は、限定するものとして見られるべきではない。他の実施例は、所与の図に示された各要素よりも多い、又は少ない要素を含むことができることが理解されるべきである。例証された要素のうちのいくつかを、組み合わせる、又は省略することができる。
冠詞「a」、「an」、及び「the」は、特徴又は要素に関して使用されるとき、特徴又は要素のうちの1つ若しくは複数への参照を含むことが理解されるべきである。用語「及び/又は」は、関連付けられた特徴又は要素のうちの1つ又は複数のいずれか及びすべての組合せを含む。用語「備える」、「含む」、「伴う」、及び「有する」は、オープン・エンドであることが意図され、列挙されたもの以外に追加の特徴又は要素が存在してもよいことを意味する。「第1の」、「第2の」、及び「第3の」などの識別子は、単なるラベルとして使用されているにすぎず、それらのオブジェクトに数量的な要件を課すように意図されることも、制限事項の間にいかなる相対位置又は時間系列を課すようにして解釈されることもない。用語「結合される」は、物理的に結合すること、電気的に結合すること、及び/又は通信可能に結合することを指すことができる。用語「結合される」は、2つのオブジェクトに適用されるとき、2つのオブジェクトが、直接、又は第3のオブジェクトを通して間接的に結合されていることを指すことができる。
様々な態様及び実施例が本明細書で開示されてきたが、当業者には、他の態様及び実施例が明らかであろう。本明細書で開示された様々な態様及び実施例は、例証の目的のためであり、限定することは意図されず、真の範囲は、以下の請求項によって示されている。
100 方法
102 ブロック
104 ブロック
106 ブロック
108 ブロック
110 ブロック
112 ブロック
202 ロボット・デバイス
204 ベース
206 ベース
208 非対称幾何学的特徴
210~218 軌道点
220 軌道
222 表示デバイス
224 センサ
226 エンド・エフェクタ
228 フィクスチャ
302 ロボット・デバイス
306 ベース
308 非対称幾何学的特徴
310~328 仮想軌道点
330 表示インターフェース
332 オブジェクト
334 較正フィクスチャ
402 ユーザ・インターフェース
404 軌道パターン
406 プロセス
408 軌道パターン
410 投影パス
412 オブジェクト
414 軌道パターン
430 表示インターフェース

Claims (21)

  1. 環境内で、ロボット・デバイス及び前記ロボット・デバイスの近傍における較正フィクスチャを識別すること、
    前記較正フィクスチャに対する前記ロボット・デバイスの第1の姿勢を決定するために、前記較正フィクスチャを前記ロボット・デバイスの所定の部分に基準化すること、
    センサから前記環境の3D画像を受信することであって、前記3D画像が前記較正フィクスチャを含む、受信すること、
    前記3D画像に基づいて、前記センサに対する前記較正フィクスチャの第2の姿勢を決定すること、
    前記第1の姿勢及び前記第2の姿勢に基づいて、前記センサに対する前記ロボット・デバイスの第3の姿勢を決定すること、
    表示インターフェース又はデバイス・インターフェースから、複数の軌道点を受信すること、
    前記3D画像及び前記第3の姿勢に基づいて、前記複数の軌道点に対応する複数の仮想軌道点を決定すること
    を含むコンピュータ実装方法。
  2. 前記センサに対する較正フィクスチャの第2の姿勢を前記決定することが、前記3D画像における前記較正フィクスチャの3次元特徴を認識することに基づく、請求項1に記載の方法。
  3. 前記ロボット・デバイスについての軌道のオーバーレイされた仮想表現の表示を提供することであって、前記軌道が、前記複数の軌道点のうちの少なくともいくつかのシーケンスを含む、提供すること
    を更に含む請求項1又は2に記載の方法。
  4. 前記仮想軌道点のうちの1つ又は複数における軌道向きのグラフィカル表現を生成し、表示すること、
    前記軌道に沿ってプロセスを実施するツールのグラフィカル表現を生成し、表示すること
    を更に含む請求項1から3までのいずれか一項に記載の方法。
  5. 前記表示インターフェースから、前記複数の前記仮想軌道点のうちの1つ又は複数の、1つ又は複数のプロパティへの1つ又は複数の調整を示す入力データを受信することであって、前記プロパティが、軌道位置、軌道向き、エンド・エフェクタ状態、軌道速度、電子信号入力、及び電子信号出力から成るグループから選択される1つ又は複数である、受信すること、
    前記表示インターフェースから、前記仮想軌道点のうちの1つ又は複数を作成する、複製する、又は削除するための入力データを受信すること、
    前記表示インターフェース上で受信された入力データに基づいて、前記複数の仮想軌道点のうちの前記1つ又は複数に対応する前記軌道点のうちの1つ又は複数の、1つ又は複数の調整されたプロパティを決定すること
    を更に含む請求項1から4までのいずれか一項に記載の方法。
  6. 前記表示インターフェース又は前記デバイス・インターフェースから、前記軌道点又は前記仮想軌道点のうちの1つ若しくは複数及びそれらのそれぞれのプロパティに従って前記ロボット・デバイスが動くための命令を提供する入力データを受信すること、
    前記命令を前記ロボット・デバイスに送信すること
    を更に含む請求項1から5までのいずれか一項に記載の方法。
  7. 前記命令を前記ロボット・デバイスに送信することが、
    前記仮想軌道点を物理軌道点に転換し、前記物理軌道点を前記ロボット・デバイスに送ること
    を含む、請求項6に記載の方法。
  8. 前記仮想軌道点を操作するための前記表示インターフェースを提供すること、
    前記表示インターフェースから、指定されたパターンで配置された前記複数の仮想軌道点を含む軌道パターンの作成及び/又は軌道パターンへの調整を示す入力データを受信すること、
    作成された、又は調整された前記軌道パターンに基づいて、2次元軌道パターンを、前記表示インターフェース上で3次元軌道パターンに変換すること、
    前記表示インターフェースから、前記表示インターフェース上で前記3次元軌道パターンを並進させる、及び/又は回転させるための入力データを受信すること、
    前記表示インターフェースから、前記3次元軌道パターンを、前記表示インターフェース上に示された前記3D画像の一部の上に投影するための入力データを受信すること
    を更に含む請求項1から7までのいずれか一項に記載の方法。
  9. 前記軌道点が、前記表示インターフェースを介したユーザ・エントリの形式である、又は前記デバイス・インターフェースを介したロボット・スクリプトの形式である、請求項1から8までのいずれか一項に記載の方法。
  10. 前記3D画像に基づいて、オブジェクトの表面及び環境に沿った1つ又は複数の軌道点を内挿する、又は外挿すること
    を更に含む請求項1から9までのいずれか一項に記載の方法。
  11. 前記ロボット・デバイスからの、ロボット関節角度、ロボット・ステータス、及びエンド・エフェクタ状態などのロボット情報を、モバイル・デバイス、ラップトップ、又はデスクトップ・コンピュータに送信すること、
    前記表示インターフェース上で、現実のロボット・デバイスの表現の上にオーバーレイされた仮想ロボットについての受信されたロボット情報を生成し、表示すること
    を更に含む請求項1から10までのいずれか一項に記載の方法。
  12. 前記環境の2D画像を受信すること、
    前記仮想軌道点でオーバーレイされた前記環境の前記2D画像の表示を提供すること
    を更に含む請求項1から11までのいずれか一項に記載の方法。
  13. 前記センサから受信された前記3D画像と重ね合わせられた前記環境の前記2D画像の表示を提供することであって、前記環境の前記2D画像の上に重ね合わせられた前記3D画像が、前記表示インターフェース上で可視又は不可視に現れることができる、提供すること、
    表示デバイスの向きの変化に応答して、対応する視点からの、3D画像と重ね合わせられた前記2D画像の少なくとも一部を示すように前記表示を更新すること
    を更に含む請求項12に記載の方法。
  14. センサと、
    前記センサに通信可能に結合されたコンピューティング・システムと
    を備える、ロボット・デバイスをプログラムするためのシステムであって、
    前記コンピューティング・システムが、
    環境内で、ロボット・デバイス及び前記ロボット・デバイスの近傍における較正フィクスチャを識別すること、
    前記較正フィクスチャに対する前記ロボット・デバイスの第1の姿勢を決定するために、前記較正フィクスチャを前記ロボット・デバイスの所定の部分に基準化すること、
    前記センサから前記環境の3D画像を受信することであって、前記3D画像が前記較正フィクスチャを含む、受信すること、
    前記3D画像に基づいて、前記センサに対する前記較正フィクスチャの第2の姿勢を決定すること、
    前記第1の姿勢及び前記第2の姿勢に基づいて、前記センサに対する前記ロボット・デバイスの第3の姿勢を決定すること、
    表示インターフェース又はデバイス・インターフェースから、複数の軌道点を受信すること、
    前記3D画像及び前記第3の姿勢に基づいて、前記複数の軌道点に対応する複数の仮想軌道点を決定すること
    を行うように構成された、システム。
  15. 前記コンピューティング・システムが、
    前記3D画像における前記較正フィクスチャの3D特徴の認識に基づいて、前記センサに対する前記較正フィクスチャの前記第2の姿勢を決定すること
    を行うように更に構成された、請求項14に記載のシステム。
  16. 前記コンピューティング・システムが、
    前記複数の仮想軌道点のうちの1つ又は複数の、1つ又は複数のプロパティを調整するために前記表示インターフェースを提供することであって、前記プロパティが、軌道位置、軌道向き、エンド・エフェクタ状態、軌道速度、電子信号入力、及び電子信号出力から成るグループから選択される1つ又は複数である、提供すること、
    前記仮想軌道点を作成する、複製する、又は削除するために前記表示インターフェースを提供すること、
    前記複数の仮想軌道点のうちの前記1つ又は複数に対応する前記軌道点のうちの1つ又は複数の、1つ又は複数の調整されたプロパティを決定すること
    を行うように更に構成された、請求項14又は15に記載のシステム。
  17. 前記コンピューティング・システムが、
    前記仮想軌道点のうちの1つ又は複数における軌道向きのグラフィカル表現を生成し、表示することと、
    軌道に沿ってプロセスを実施するツールのグラフィカル表現を生成し、表示することと
    を行うように更に構成された、請求項14から16までのいずれか一項に記載のシステム。
  18. 前記コンピューティング・システムが、
    前記仮想軌道点を操作するための前記表示インターフェースを提供すること、
    前記表示インターフェースから、指定されたパターンで配置された前記複数の仮想軌道点を含む軌道パターンの作成及び/又は軌道パターンへの調整を示す入力データを受信すること、
    作成された、又は調整された前記軌道パターンに基づいて、2次元軌道パターンを、前記表示インターフェース上で3次元軌道パターンに変換すること、
    前記表示インターフェースから、前記表示インターフェース上で前記3次元軌道パターンを並進させる、及び/又は回転させるための入力データを受信すること、
    前記表示インターフェースから、前記3次元軌道パターンを、前記表示インターフェース上に示された前記3D画像の一部の上に投影するための入力データを受信すること
    を行うように更に構成された、請求項14から17までのいずれか一項に記載のシステム。
  19. 前記表示インターフェース又は前記デバイス・インターフェースから、前記軌道点又は前記仮想軌道点のうちの1つ若しくは複数及びそれらのそれぞれのプロパティに従って前記ロボット・デバイスが動くための命令を提供する入力データを受信すること、
    前記仮想軌道点を物理軌道点に転換し、前記物理軌道点を前記ロボット・デバイスに送ることを含む、前記命令を前記ロボット・デバイスに送信すること
    を更に含む、請求項14から18までのいずれか一項に記載のシステム。
  20. コンピューティング・システムによって実行されるときに、請求項1から13までのいずれか一項に記載の方法を前記コンピューティング・システムに実施させる命令を、その中に記憶している非一時的なコンピュータ可読媒体。
  21. 環境内で、ロボット・デバイス及び前記ロボット・デバイスの近傍における較正フィクスチャを識別することと、
    前記較正フィクスチャに対する前記ロボット・デバイスの第1の姿勢を決定するために、前記較正フィクスチャを前記ロボット・デバイスの所定の部分に基準化することと、
    センサから前記環境の3D画像を受信することであって、前記3D画像が前記較正フィクスチャを含む、受信することと、
    前記3D画像に基づいて、前記センサに対する前記較正フィクスチャの第2の姿勢を決定することと、
    前記第1の姿勢及び前記第2の姿勢に基づいて、前記センサに対する前記ロボット・デバイスの第3の姿勢を決定することと、
    仮想軌道点を作成するための表示インターフェースを提供することと、
    前記3D画像及び前記第3の姿勢に基づいて、前記仮想軌道点に対応する軌道点を決定することと
    を含む方法。
JP2022534382A 2019-12-09 2020-12-01 ロボットをプログラムするための方法及びシステム Pending JP2023505322A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
SGPCT/SG2019/050606 2019-12-09
SG2019050606 2019-12-09
PCT/SG2020/050709 WO2021118458A1 (en) 2019-12-09 2020-12-01 Method and system for programming a robot

Publications (1)

Publication Number Publication Date
JP2023505322A true JP2023505322A (ja) 2023-02-08

Family

ID=76330623

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022534382A Pending JP2023505322A (ja) 2019-12-09 2020-12-01 ロボットをプログラムするための方法及びシステム

Country Status (5)

Country Link
US (1) US20220410394A1 (ja)
EP (1) EP4072795A4 (ja)
JP (1) JP2023505322A (ja)
KR (1) KR20220110546A (ja)
WO (1) WO2021118458A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113554712B (zh) * 2021-06-29 2024-06-18 北京百度网讯科技有限公司 自动驾驶车辆的配准方法、装置、电子设备和车辆

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6836700B2 (en) * 2002-07-29 2004-12-28 Advanced Robotic Technologies, Inc. System and method generating a trajectory for an end effector
KR101471852B1 (ko) * 2013-12-02 2014-12-12 경상대학교산학협력단 스마트장치, 로봇정보 제공장치, 로봇 궤적 생성 방법 및 로봇 작업교시 방법
US9919427B1 (en) * 2015-07-25 2018-03-20 X Development Llc Visualizing robot trajectory points in augmented reality
US9916506B1 (en) * 2015-07-25 2018-03-13 X Development Llc Invisible fiducial markers on a robot to visualize the robot in augmented reality
US10956739B2 (en) * 2016-06-27 2021-03-23 Autodesk, Inc. Augmented reality robotic system visualization
US10596700B2 (en) * 2016-09-16 2020-03-24 Carbon Robotics, Inc. System and calibration, registration, and training methods
JP6693981B2 (ja) * 2018-02-19 2020-05-13 ファナック株式会社 ロボットの動作をシミュレーションするシミュレーション装置
JP6787966B2 (ja) * 2018-10-02 2020-11-18 ファナック株式会社 拡張現実と複合現実を用いたロボット制御装置及び表示装置
JP7376268B2 (ja) * 2019-07-22 2023-11-08 ファナック株式会社 三次元データ生成装置及びロボット制御システム

Also Published As

Publication number Publication date
US20220410394A1 (en) 2022-12-29
WO2021118458A1 (en) 2021-06-17
EP4072795A4 (en) 2024-01-03
KR20220110546A (ko) 2022-08-08
EP4072795A1 (en) 2022-10-19

Similar Documents

Publication Publication Date Title
CN112839764B (zh) 用于焊接路径生成的系统和方法
EP1435280B1 (en) A method and a system for programming an industrial robot
US7236854B2 (en) Method and a system for programming an industrial robot
US10751877B2 (en) Industrial robot training using mixed reality
JP2019519387A (ja) 拡張現実ロボットシステムの可視化
JP7376268B2 (ja) 三次元データ生成装置及びロボット制御システム
JP6826069B2 (ja) ロボットの動作教示装置、ロボットシステムおよびロボット制御装置
CN110553600B (zh) 一种用于工件检测的结构光传感器仿真激光线的生成方法
WO2006019970A2 (en) Method and apparatus for machine-vision
JP6946087B2 (ja) 情報処理装置及びその制御方法、並びに、プログラム
EP3578321A1 (de) Verfahren zum verwenden mit einer maschine zum erstellen einer erweiterte-realität-anzeigeumgebung
CN109648568A (zh) 机器人控制方法、系统及存储介质
CN113172659A (zh) 基于等效中心点识别的柔性机器人臂形测量方法及系统
CN210361314U (zh) 一种基于增强现实技术的机器人示教装置
JP2023505322A (ja) ロボットをプログラムするための方法及びシステム
Costa et al. Modeling of video projectors in OpenGL for implementing a spatial augmented reality teaching system for assembly operations
CN113597362B (zh) 用于确定机器人坐标系与可移动装置坐标系之间的关系的方法和控制装置
JP2014186588A (ja) シミュレーション装置、プログラム及び画像生成方法
Niu et al. Eye-in-hand manipulation for remote handling: Experimental setup
JP7249221B2 (ja) センサ位置姿勢キャリブレーション装置及びセンサ位置姿勢キャリブレーション方法
Sauer et al. Occlusion handling in augmented reality user interfaces for robotic systems
US10379620B2 (en) Finger model verification method and information processing apparatus
Eissa et al. An effective programming by demonstration method for SMEs’ industrial robots
CN113297952B (zh) 一种复杂环境下绳驱柔性机器人的测量方法和系统
WO2022123850A1 (ja) 制御装置、制御方法、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231116