JP2023084116A - 視覚サーボを用いた実演によるロボット教示 - Google Patents

視覚サーボを用いた実演によるロボット教示 Download PDF

Info

Publication number
JP2023084116A
JP2023084116A JP2022193887A JP2022193887A JP2023084116A JP 2023084116 A JP2023084116 A JP 2023084116A JP 2022193887 A JP2022193887 A JP 2022193887A JP 2022193887 A JP2022193887 A JP 2022193887A JP 2023084116 A JP2023084116 A JP 2023084116A
Authority
JP
Japan
Prior art keywords
workpiece
robot
hand
demonstration
ibvs
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
JP2022193887A
Other languages
English (en)
Inventor
カイメン ワン
Kaimeng Wang
哲朗 加藤
Tetsuro Kato
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Publication of JP2023084116A publication Critical patent/JP2023084116A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0081Programme-controlled manipulators with master teach-in means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • 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
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • 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
    • 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/35Nc in input of data, input till input file format
    • G05B2219/35464Glove, movement of fingers
    • 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/20112Image segmentation details
    • G06T2207/20132Image cropping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Geometry (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

【課題】人間の操作者が実施するのに単純かつ直感的であり、ロボットの取り付け及び組み立ての操作に必要な精度を有する改良されたロボット教示技術を実現する。【解決手段】人間の実演に基づいてロボットに教示し制御する方法は、ワークピースを把持して移動させる人間の手をカメラが検出して、ワークピースのロボットの動きの大まかな軌道を定義する実演段階を含む。実演段階中に収集されたワークピース上の線特徴または他の幾何学的特徴を、ワークピースの最終的な取り付け位置を正確なものにする画像ベースの視覚サーボ(IBVS)アプローチで使用する。IBVS制御は、ロボットによる最終接近中のワークピース設置を引き継ぐ。移動物体検出を、2D画像空間にて物体と手の両方の位置を自動的に特定し手の主要点検出を使用して手に属する線特徴を除去することにより、ワークピース上の線特徴を識別するために使用する。【選択図】図6

Description

本開示は、産業用ロボットプログラミングの分野に関し、さらに具体的には、ワークピースを把持して移動させる人間の手をカメラが検出して、大まかな軌道を定義する実演段階を含むワークピースの取り出し/移動/設置の操作を実施するようにロボットをプログラミングする方法に関する。実演段階中に収集されたワークピースの幾何学的特徴を、ワークピースの最終的な設置位置の画像ベースの視覚サーボ調整に使用する。
産業用ロボットを使用して、多様な製造、組み立て及び材料移動操作を繰り返し実施することが周知である。しかし、コンベヤ上のランダムな位置と向きでワークピースを持ち上げ、ワークピースを容器または第2のコンベヤに移動するなど、かなり単純な操作を実施するようにロボットに教示することでさえ、従来の方法を用いると、直感的ではなかったり、時間がかかったり、及び/またはコストがかかったりしている。
ロボットには、伝統的に、教示ペンダントを使用して人間の操作者によって上記のタイプのピックアンドプレース操作を実施するように教示してきた。教示ペンダントは、操作者が「X方向のジョグ」または「ローカルZ軸を中心とした把持部の回転」などの増分移動を、ロボットとその把持部がワークピースを把持するのに正しい位置と向きになるまでロボットに指示することによって、使用される。次に、ロボットの構成とワークピースの位置及び姿勢とをロボットコントローラによって記録し、「取り出し」操作に使用する。次に、ほぼ同じ教示ペンダントコマンドを使用して、「移動」及び「設置」の操作を定義する。しかし、ロボットのプログラミングに対する教示ペンダントの使用は、特に専門家ではない操作者にとって、直感的ではなく、エラーが発生しやすく、時間がかかることが多い。
ロボットにピックアンドプレース操作の実施を教示する別の既知の技術には、モーションキャプチャシステムの使用が挙げられる。モーションキャプチャシステムでは、作業セルの周囲に配置された複数のカメラを用いて、人間の操作者及びワークピースの位置と方向を、操作者がワークピースを操作する際に、記録する。操作者及び/またはワークピースには、操作が実施される際にカメラ画像内の操作者及びワークピース上の主要な場所をさらに正確に検出するために、一意に認識可能なマーカドットを付加する場合がある。しかし、このタイプのモーションキャプチャシステムは高価であり、記録された位置が正確になるように正確に設定し構成するのは難しく、時間がかかる。
このほか、人間の実演によるロボット教示が知られているが、部品の取り付け及び組み立てなどの用途で必要とされるような、ワークピースの正確な設置に必要な位置精度が不足している可能性がある。
上記の状況に照らして、人間の操作者が実施するのに単純かつ直感的であり、ロボットの取り付け及び組み立ての操作に必要な精度を有する改良されたロボット教示技術が必要である。
本開示の教示に従って、カメラからの画像を用いた人間の実演に基づいて操作を実施するようにロボットを教示し制御する方法を開示する。この方法は、ワークピースを把持し移動させている人間の手をカメラが検出して、ワークピースのロボットの動きの大まかな軌道を定義する実演段階を含む。実演段階中に収集されたワークピース上の線特徴または他の幾何学的特徴を、ワークピースの最終的な設置位置を正確なものにする画像ベースの視覚サーボ(IBVS)アプローチで使用する。ここで、IBVS制御は、ロボットによる最終接近中にワークピースの設置を引き継ぐ。移動物体検出を、2D画像空間で物体と手の両方の位置を自動的に特定するために使用し、その後、手の主要点検出を使用して、手に属する線特徴を除去することによって、ワークピース上の線特徴を識別する。
現在開示している装置及び方法の追加の特徴が、添付の図面と併せて、以下の説明及び添付の特許請求の範囲から明らかになるであろう。
図1は、本開示の一実施形態による、人間の手の画像を分析して、指型ロボット把持部の対応する位置と向きを判定する方法を示す図である。 図2は、本開示の一実施形態による、人間の手及びワークピースのカメラ画像を使用してピックアンドプレース操作を実施するようにロボットに教示するためのシステム及びステップの図である。 図3は、本開示の一実施形態による、ワークピースのカメラ画像と、人間の手の実演によって以前に教示されたプログラミングとを使用して、ロボットがピックアンドプレース操作を実施するためのシステム及びステップの図である。 図4は、本開示の一実施形態による、画像ベースの視覚サーボを用いた人間の実演によるロボット教示の技術の基本概念を示す図である。 図5Aは、本開示の一実施形態による、人間の実演者によってアセンブリに取り付けられているワークピースの画像である。 図5Bは、本開示の一実施形態による、画像ベースの視覚サーボのために識別された線特徴を示している、図5Aからの画像のトリミングされたバージョンである。 図6は、本開示の一実施形態による、画像ベースの視覚サーボを用いた人間の実演によるロボット教示の技術の詳細を示す図である。 図7は、本開示の一実施形態による、実演段階及びロボット実行段階を含む、画像ベースの視覚サーボを用いた人間による実演によるロボット教示のための方法のフローチャート図である。
画像ベースの視覚サーボを用いた人間の実演によるロボットの教示を対象とする本開示の実施形態の以下の考察は、本質的に単なる例示であり、開示の装置及び技術またはその用途または使用を限定することを意図するものでは決してない。
さまざまな製造、組み立て及び材料移動操作に対する産業用ロボットの使用は周知である。既知のタイプのロボット操作の1つが、「取り出し、移動及び設置」として知られていることがある。ここで、ロボットが第1の場所から部品またはワークピースを取り出し、移動し、第2の場所に設置する。第1の場所は、金型から抜き出したばかりの部品など、ランダムな向きの部品が流れているコンベヤベルトである可能性も否定できない。第2の場所は、別の操作につながる別のコンベヤである場合もあれば、輸送用コンテナである場合もあるが、いずれの場合も、部品を特定の場所に設置し、第2の場所で特定の姿勢に方向づける必要がある。
上記のタイプの取り出し、移動及び設置の操作を実施するために、典型的には、カメラを使用して、入ってくる部品の位置と向きを判定し、指型把持部または磁気把持部または吸盤把持部を使用して、特定の方法で部品を把持するようにロボットを教示する必要がある。部品の向きに応じて部品を把持する方法をロボットに教示する作業を、従来、人間の操作者が教示ペンダントを使用して実施していた。教示ペンダントは、操作者が「X方向のジョグ」または「ローカルZ軸を中心とした把持部の回転」などの増分移動を、ロボットとその把持部がワークピースを把持するのに正しい位置と向きになるまでロボットに指示することによって、使用される。次に、ロボットの構成とワークピースの位置及び姿勢とをロボットコントローラによって記録し、「取り出し」操作に使用する。次に、ほぼ同じ教示ペンダントコマンドを使用して、「移動」及び「設置」の操作を定義する。しかし、ロボットのプログラミングに対する教示ペンダントの使用は、特に専門家ではない操作者にとって、直感的ではなく、エラーが発生しやすく、時間がかかることが多い。
ロボットに取り出し、移動及び設置の操作の実施を教示する別の既知の技術には、モーションキャプチャシステムの使用が挙げられる。モーションキャプチャシステムでは、作業セルの周囲に配置された複数のカメラを用いて、人間の操作者及びワークピースの位置と向きを、操作者がワークピースを操作する際に、記録する。操作者及び/またはワークピースには、操作が実施される際にカメラ画像内の操作者上及びワークピース上の主要な場所をさらに正確に検出するために、一意に認識可能なマーカドットを付加する場合がある。しかし、このタイプのモーションキャプチャシステムは高価であり、記録された位置が正確になるように正確に設定し構成するのは難しく、時間がかかる。
このほか、ワークピースを開始(取り出し)場所から目的(設置)場所に移動する人間の手の画像を1つまたは複数のカメラが取り込む、人間の実演によるロボット教示が知られている。人間の実演によるロボット教示の技術が、2020年4月8日に出願され、本出願と共通に譲渡された、「人間の実演によるロボット教示」と題する米国特許出願16/843,185号に開示されている。この米国特許出願は、その全体が参照により本明細書に組み込まれる。前述の出願は、以下で「‘185出願」と呼ぶ。
‘185出願の技術は、ワークピースの設置に細かい精度が必要ない場合には良好に機能する。しかし、ロボットによるアセンブリへの構成要素の取り付けなどの精密設置用途では、手によるワークピースの把持姿勢が不確実であると問題が発生する可能性がある。このため、ワークピースの設置精度を向上させる技術が必要となる。本開示は、画像ベースの視覚サーボ(IBVS)を使用して、アセンブリ内の目標の場所へのワークピースの設置を正確なものにすることによってこれを達成し、ワークピースに属する線特徴を自動的に識別することによってIBVSアプローチをさらに強化する。
図1は、‘185出願で開示され、本開示の実施形態で使用するように、人間の手の画像を分析して、指型ロボット把持部の対応する位置と向きを判定する方法を示す図である。手110には、手に取り付けられた状態で定義されている手座標枠120がある。手110は、親指先端114を有する親指112と、人差し指先端118を有する人差し指116とを含む。親指112及び人差し指116の他の点、例えば、親指112及び人差し指116の付け根の場所及び親指112及び人差し指116の第1関節の場所なども、カメラ画像内で識別されてもよい。
点122を、親指112の付け根と人差し指116の付け根との間の中間に位置づける。ここで、点122は、手座標枠120の原点として定義される。手110の他の実際の構造点または派生した構造点を、原点122として定義してもよい。手座標枠120の向きは、ロボット把持部の向きとの相関に適した任意の取り決めを使用して定義されてもよい。例えば、手座標枠120のY軸は、親指112及び人差し指116の平面(点114、118及び122によって定義される平面)に対して垂直であると定義されてもよい。このため、X軸及びZ軸は、親指112及び人差し指116の平面内にある。さらに、Z軸は、親指112と人差し指116とによって形成される角度(角度114-122-118)を二等分するものとして定義されてもよい。X軸の向きは、既知のY軸とZ軸から右手の法則によって求められてもよい。前述のように、ここで定義された取り決めは単に例示的なものであり、代わりに他の座標枠の向きを使用してもよい。肝心なのは、座標枠の位置と向きを、手の主要な認識可能な点に基づいて定義してもよく、その座標枠の位置と向きがロボット把持部の位置と向きに関連付けることができることである。
(図1には図示せず、後述する)カメラを使用して、手110の画像を提供してもよい。ここで、この画像を分析して、指の関節と共に親指先端114及び人差し指先端118を含む親指112及び人差し指116の空間位置(作業セル座標枠など)、ひいては手の基準座標系120の原点の場所122及び向きを判定することができる。図1では、手の基準座標系120の場所及び向きは、ロボット160に取り付けられた把持部150の把持部座標枠140と相関している。把持部座標枠140は、手の基準座標系120の原点122に対応する原点142と、人差し指先端118及び親指先端114にそれぞれ対応する点144及び146とを有する。このため、指型把持部150の2つの指は、把持部座標枠140のX-Z平面内にあり、Z軸は角度146-142-144を二等分する。
把持部座標枠140の原点142はこのほか、ロボット160の工具中心点として定義されてもよい。工具中心点は、その位置と向きがロボットコントローラに知られている点である。ここで、コントローラは、コマンド信号をロボット160に提供して、工具中心点とその関連する座標枠(把持部座標枠140)とを定義された場所及び向きに移動させることができる。
図1は、手の画像が指型ロボット把持部にどのように対応するかを示す。類似の技術を使用して、人間の実演者の手と吸盤タイプの把持部または他のタイプの把持部の位置と向きを関連付けることができる。
図2は、‘185出願に開示され、本開示の実施形態で使用するように、人間の手のカメラ画像を使用してピックアンドプレース操作を実施するようにロボットに教示するためのシステム200及びステップの図である。図2に示す教示段階は、作業セル202で実施される。作業セル202は、教示ステップの画像を撮影するためのカメラ210を含む。カメラ210は、これまでに考察した指先、親指先端及び指関節などの手の特定の点及び特徴の座標を識別することができる限り、3次元(3D)カメラまたは2次元(2D)カメラであってもよい。手の姿勢検出に3Dカメラを使用する技術及び手の姿勢検出に2Dカメラを使用する異なる技術を、’185出願で詳細に考察している。カメラ210は、部品移動活動(以下で考察する全ステップ(1)~(3))が実施されている作業セル202の部分の画像を提供するように構成される。
カメラ210は、ロボットコントローラ220と通信する。コントローラ220は、教示ステップの画像を分析し、以下で考察するようにロボットプログラミングコマンドを生成する。ここで、ロボットプログラミングコマンドは、再生段階または実行段階中にピックアンドプレース操作を実施するロボットの動きを制御するために使用される。このほか、カメラ210とコントローラ220との間に別個のコンピュータを設けることがあり得る。ここで、この別個のコンピュータはカメラ画像を分析し、把持部位置または最終軌道をコントローラ220に通信するであろう。図2の教示段階は、次の3つのステップから構成される。取り出しステップ(ステップ(1))では、ワークピースの位置と姿勢(姿勢は向きと交換可能な用語である)を判定し、ワークピースを把持する手の位置と姿勢を判定する。移動ステップ(ステップ(2))では、ワークピースが取り出し場所から設置場所に移動するときに、ワークピース及び手の位置を追跡する。設置ステップ(ステップ(3))では、ワークピースの位置と姿勢を使用して、ワークピースをその目的(設置)の場所に設置する。ステップについては、以下で考察する。
ステップ(1)(取り出し)では、カメラ画像を使用してワークピース230の位置と姿勢を識別する。ワークピースがコンベヤ上を流れて入ってくる場合、ワークピース230の位置の1つの座標(Zなど)をコンベヤ位置指数に従って追跡する。図2に示すワークピース230は単純な立方体である。しかし、ワークピース230の任意のタイプまたは形状をカメラ画像から識別してもよい。例えば、ワークピース230が特定の射出成形部品であることがわかっており、コンベヤ上で任意のランダムな向きと位置を有している可能性がある場合、カメラ210からの画像を分析してワークピース230の主要な特徴を識別し、そのような特徴から、ワークピース座標枠232の位置と向きを判定することができる。ワークピース230はこのほか、アセンブリに取り付けられる構成部品であってもよい。ここで、構成部品は、ロボットによる取り出しのために任意の適切な方法で(個別に、あるいは複数で)提供される。
さらにステップ(1)(取り出し)では、カメラ画像も使用して、ワークピース230を把持するときの手240の位置と姿勢を識別する。手240の画像は、図1に関して上記で考察し、‘185出願で詳細に説明した方法(2つの異なる技術)で、手座標枠242の位置と向きを判定するために分析される。手240は、矢印244によって示す方向でワークピース230に接近する。点250で示すように親指先端がワークピース230に接触し、指先がワークピース230に接触する(この接触点は見えない)と、コントローラ220は、この特定の画像からの全データを取り出しデータとして保存する。取り出しデータは、ワークピース230のワークピース座標枠232によって定義される位置と姿勢と、手240の手座標枠242によって定義される位置と姿勢とを含む。
ステップ(2)(移動)では、カメラ画像を使用して、経路260に沿って移動するときのワークピース230と手240の両方の位置を追跡する。ワークピース230及び手240の複数の画像を記録して、経路260を定義する。この経路は典型的には直線ではない。例えば、経路260は、長い弧を描く曲線を含んでも、ワークピース230を、何らかの障壁を乗り越えて移動させるものであってもよい。いずれにせよ、経路260は、移動ステップ中のワークピース230及び手240の位置(と、任意選択で向き)を定義する複数の点を含む。これまでに考察した同一の技術を使用して、カメラ画像からワークピース座標枠232の位置と姿勢及び手座標枠242の位置と姿勢を識別する。手の姿勢判定技術についても、‘185出願で詳細に考察している。
ステップ(3)(設置)では、カメラ画像を使用して、矢印270で示すように、ワークピース230を、その目的の場所に設置した後、ワークピース230の(そのワーク座標枠232によって定義されるときの)最終的な位置と姿勢を識別する。これまでに考察した同一の技術は、カメラ画像からワークピース座標枠232の位置と姿勢を識別するために、使用される。親指先端と指先がワークピース230との接触を断つと、コントローラ220は、この特定の画像からのワークピース座標枠データを設置データとして保存する。設置データはこのほか、ワークピース230が移動を停止した、すなわち、ワークピース座標枠232が一定期間(1~2秒など)全く同一の位置と姿勢であることに基づいて、記録され保存されてもよい。
手の主要点の3D座標から手の姿勢を判定する上記のステップは、図2のコントローラ220などのロボットコントローラ上で実施されても、コントローラ220と通信する別個のコンピュータ上で実施されてもよい。‘185出願には、さまざまなタイプと数のカメラを使用して、手の主要点の3D座標を計算するための技術が開示されている。図2は、(ロボットの関与しない)ロボット教示段階での軌道を定義するための取り出し-移動-設置の操作の人間の実演のステップを示しているが、対応する一連のステップを、以下で考察する再生段階またはロボット実行段階中に(人間の実演者が関与せずに)ロボットが使用する。
図3は、‘185出願に開示され、本出願の実施形態で使用するように、ワークピースのカメラ画像と、人間の手の実演によって以前に教示されたプログラミングとを使用して、ロボットがピックアンドプレース操作を実施するためのシステム300及びステップの図である。システム300は、コントローラ340と通信するカメラ330を含む作業セル302内に位置づけられる。このような項目は、以前に図2に示した作業セル202、カメラ210及びコントローラ220と同じであってもなくてもよい。カメラ330及びコントローラ340に加えて、作業セル302は、典型的には、物理ケーブル342を介してコントローラ340と通信するロボット310を含む。ロボット310は把持部320を操作する。
システム300は、システム200で人間の操作者によって教示された取り出し、移動及び設置の操作を「再生」するように設計される。取り出し、移動及び設置のステップで記録された手とワークピースの位置データは、次のようにロボットプログラミング命令を生成するために使用される。ロボット310は、当業者に知られているように、把持部320を定位置に位置決めする。カメラ330は、例えば、部品のトレイに位置づけられ得るワークピース350の位置と向きを識別する。ワークピース350は、図3の位置350A及び350Cに示される。
上記で考察した教示/実演段階から、コントローラ220(図2)は、ワークピース350に対する手240の位置と向き(ひいては、図1から、把持部320の位置と向き)を認識して、ワークピース350を適切に把持する(「取り出し」操作)。経路1は、定位置から、ワークピース350の位置と向きに基づいて計算された取り出し位置まで把持部320を移動させる経路として計算される。取り出し操作は経路1の終端で実施される。把持部320は、経路1に沿って取り出し場所に近づく320Aとして示され、ワークピース350は、取り出し場所で350Aとして示される。
教示/実演段階から、コントローラ220は、移動軌道に沿った複数の場所でのワークピース230(ひいてはワークピース350)の位置を認識する。経路2は、把持部320A及びワークピース350Aを取り出し位置から移動軌道経路に沿って移動させる経路として計算される。図3では、移動経路に沿った中間位置のうちの1つが把持部320Bを示す。
経路2は、教育/実演段階中に記録された設置位置で終端する。これには、ワークピース350Cに対応する、ワーク350の位置と姿勢(向き)の両方が含まれる。把持部320がワークピース350を設置の場所と向きに設置した後、把持部320はワークピース350を解放し、経路3を介して定位置に戻る。
以下は、上記で説明した人間の実演によるロボットプログラミングのための開示の技術の概要である。
・教示/実演段階では、ワークピースの把持、移動及び設置を実演するために人間の手を使用する。
・手とワークピースのカメラ画像を分析して、カメラ画像から判定された手の主要点に基づいて、ワークピースに対するロボット把持部の適切な姿勢と位置を判定する。
・ワークピースに対するロボット把持部の適切な姿勢と位置を使用して、再生段階または実行段階中にワークピースのカメラ画像に基づいて、取り出し-移動-設置の軌道のロボット運動コマンドを生成する。
本開示では、上記で詳述した人間の実演からの取り出し-移動-設置の軌道生成を使用し、実演段階中のIBVSデータ収集と、再生/実行段階中のIBVS制御とを追加して、ロボット構成要素組み立てなどの操作に必要な正確なワークピース設置を提供する。
図4は、本開示の一実施形態による、画像ベースの視覚サーボ(IBVS)を用いた人間の実演によるロボット教示技術の基本概念を示す図である。ボックス410では、図2に示すように、カメラ監視を用いてワークピースの取り出し-移動-設置の人間の実演を実施する。ボックス420では、人間の実演のカメラ画像の分析から判定されたときの取り出し-移動-設置の軌道を示している。未加工の軌道422が、人間の実演にて典型的な多くの小さな揺れ動き及び不正確な動きを含む3D空間での手の実際の動き(ロボット把持部を表す座標枠)を描写する。改良された軌道424を、未加工の軌道422から、取り出し場所から最大高さまで真っ直ぐ上に進み、最大高さでは設置場所の真上の点まで水平に進み、設置場所まで真っ直ぐ下るなどによって、計算する。
ボックス420からの取り出し-移動-設置の軌道(好ましくは改良された軌道424)は、ボックス430では、再生段階または実行段階にて(図示しない)ロボットによって使用される。これについては、ある程度詳細に説明し、図3に示した。軌道424を使用してワークピースをその最終場所に設置するのではなく、本開示では、軌道424の最終接近区画432にIBVS追跡を追加する。IBVS追跡は、ロボット実行のカメラ画像にてワークピースの幾何学的特徴を検出し、幾何学的特徴の実際の場所を目標または所望の場所と比較する。ロボットコントローラは、IBVS追跡計算からの出力信号を使用して、ロボットと把持部の最終的な接近運動、ひいてはワークピースの最終的な設置を正確に制御する。信頼性を向上させるための全体的な方法のIBVS計算及び強化の詳細について、以下で考察する。
画像ベースの視覚サーボ(IBVS)とは、視覚センサから抽出したフィードバック情報(視覚フィードバック)を使用して、ロボットの運動を制御する技術である。IBVSは、画像平面内の選択された特徴の現在の場所と目標の場所との間の誤差に基づいて制御信号を計算する。IBVSは、3Dカメラデータを使用したロボット制御方法で発生することの多い較正誤差及び奥行き精度の問題を克服する。
IBVSの基本的概念は、物体(例えば、ワークピース)の幾何学的特徴を識別し、幾何学的特徴が画像平面内の特徴の事前定義された目標の場所と一致するように物体の設置を誘導することである。幾何学的特徴が点Aである最も単純な場合では、点Aは現在のカメラ画像のx-y画素座標に場所を有し、目標点の場所Bはカメラ画像平面のx-y画素座標に別の場所を有する。ロボットは物体を移動させ、目標点の場所Bに対する点Aの場所は、点Aが目標点の場所Bと一致するまで、連続する各カメラ画像にて計算される。
点Aの移動を実現するためにロボットの運動を次のように制御する。目標点の場所Bに対する点Aの場所の2D(x-y画素)誤差は、2D画像空間速度ベクトルΔXを計算するために使用される。ヤコビ行列Jが、画像空間速度ベクトルΔXを3Dロボットのデカルト空間速度ベクトルΔqに関連付ける。ヤコビ行列Jは、カメラ投影パラメータに基づいて既知のものである。2D画像空間速度、関数行列式及び3Dデカルト空間速度は、次のように関連付けられている。
ΔX=JΔq (1)
ここで、3Dロボットのデカルト空間速度ベクトルΔqのみがわかっていない。
3Dロボットのデカルト空間速度ベクトルΔqを計算するために、式(1)は次のように再整理される。
Δq=J-1ΔX (2)
ここで、J-1はヤコビアンJの逆数である。
物体(ワークピース)の多くの異なるタイプの幾何学的特徴をIBVSで追跡してもよい。このような特徴には、点、線、円、他の楕円、円柱、さらには不規則な形状が含まれる。ここで、二重積分画像モーメント計算によって位置誤差を計算することができる。一般に、点特徴の使用は、実際のロボット環境の変化に対してロバストではない。例えば、画像空間内の点の見かけの位置が、照明条件によって変化する可能性があり、多くの点特徴がほとんどの物体にて互いに非常に近くに位置づけられている可能性があるため、異なる特徴点を分離するか区別することが困難なことがある。一方で、複雑な2D及び3Dの形状に関連するIBVS計算が冗長になることがあり、多くの物体には、使用可能な円及び円柱などの幾何学的特徴がない。最終的には、特定の物体(ワークピース)と設置用途に最適な特徴のタイプを選択してもよい。
本開示の技術を使用して幅広く検査された例では、コンピュータアセンブリ用のCPUファンを分析する。CPUファンの外形は一般に(上面図にて)正方形であり、(ファンの羽根を囲む)内側のシュラウド面は八角形である。このため、この部分はIBVSの線特徴を使用するのに適している。後に示すように、ロボットのタスクは、CPUファンユニットを持ち上げて、コンピュータの筐体に取り付けることである。このタスクでは、CPUファンユニットを所定の位置に押し込むときに、係合させる必要のあるピンとスロットを位置合わせするために、CPUファンユニットを正確に配置する必要がある。
ワークピース(例えば、CPUファンユニット)上の線特徴の目標の場所は、構成要素組み立ての人間の実演中に判定することができる。例えば、「設置」場所で手の動きが止まる場合、あるいはカメラ画像にて手が離れる方向に移動してワークピースが静止している場合、ワークピースが最終的な取り付け位置にあることがわかり、画像空間内の目標の線特徴の場所を計算することができる。目標の線特徴の場所の判定を、人間の実演段階中に1回だけ実施する。この判定では、人間の実演者に任意の追加のステップは必要ない。図2に示したものと同じ人間の実演ステップに基づいて追加の計算を実施するだけである。
ロボット実行中、把持部/ワークピースが軌道424(図4)の最終接近セクション432にあるとき、IBVS追跡を始動する。この時点で、ワークピース上の選択された線特徴は、カメラ画像にて追跡され始める。画像内の適切な線特徴を確実かつ効率的に識別するために、最初にカメラ画像をトリミングして静的な背景をいずれも削除すること、すなわち、ある画像から次の画像に移動していないものをいずれも削除することが有用である。
移動物体検出の基本的な考え方は、現在の画像から画像の背景モデルを差し引くことであり、差が閾値を上回るあらゆる画素を、現在の画像で何が変化したかを表す画像の前景マスクとして保持する。ガウス混合モデル法を使用して背景をモデル化すると、移動物体の検出のロバスト性が向上することが知られている。ここで、ガウス分布を計算し、平均から一定の統計的距離内(+/-2シグマなど)にある画素を、変更されていないものとして識別するが、事前定義された統計的距離の外側にある画素を、変更されたものとして識別する。
移動物体の検出は、2D赤/緑/青(RGB)画像データまたは3Dカメラからの奥行きデータから計算することができる。一部の環境では、RGB画像データは、人間の実演者の手またはワークピースによって投じられる影の問題に悩まされる。影は移動物体として出現し、分析対象のトリミングされたエリアに不要な余剰画像空間を追加する。奥行きデータには影の問題はないが、多くの場合ノイズが多く、画像ごとに変化したように見える小さな斑点または画素群が多数ある。好ましい実施形態では、移動物体検出を、画像時間ステップごとに別々にRGBデータ及び奥行きデータに対して実施し、(「AND」演算で)RGBデータ及び奥行きデータの両方で移動していると識別された画素を使用して、画像トリミングの境界を定義する。この技術は、影またはノイズではなく、人間の手と物体/ワークピースとを含むトリミングされた画像を提供するために良好に機能することが示されている。
IBVS追跡の効率とロバスト性を向上させるのに有用なことがわかっている別の技術では、移動物体検出を使用して画像をトリミングした後、人間の実演者の手の線特徴を除去する。これは、図1に示し、‘185出願で詳細に説明されている手の検出技術を利用することによって実施することができる。具体的には、指と親指の主要な構造点(指関節など)を画像内で識別した後、画像内の手の位置に関する知識を使用して、手の線特徴を2つのステップで除去することができる。第1のステップでは、手の人差し指と小指との間に位置する線特徴を、トリミングされた画像から除去する。この第1のステップでは、物体(CPUファン)のIBVS位置決めには明らかに有用ではない、指の縁に関連する多くの線特徴を潜在的に排除してもよい。第2のステップでは、人差し指または親指の幅の許容範囲(δ)内にある線特徴を除去する。第2のステップの考え方では、人差し指自体と親指自体の縁に関連付けられた線特徴を除去する。例えば、画像内で線が検出され、その線が関節主要点によって定義される人差し指の中心線の距離許容範囲内にある場合(すなわち、d<δ)、その線はIBVS計算では無視される。第2のステップの親指の近くの線に同じ概念が適用される。手の線特徴を除去すると、除去された線は、物体のIBVSベースの設置のために追跡する必要がある物体(CPUファン)上の線のうちの1つかどうかを判定するために評価する必要がないため、トリミングされた画像のIBVS計算が高速化される。
図5Aは、人間の実演者によってアセンブリに取り付けられているワークピースの画像500である。ワークピース(CPUファン)は、アセンブリ(コンピュータ筐体)から横に離れているボックス510が示す場所から実演者の手によって持ち上げられている。次に、ワークピースは、電気コネクタとピン/穴などの機械的特徴との位置合わせを含め、コンピュータ筐体内の所定の位置に移動され設置される。ワークピースは、ボックス520内の最終的な設置場所に示される。上記で考察したように、人間の実演段階では、把持部とワークピースの基本的な取り出し-移動-設置の軌道を提供するほか、ワークピースの移動中に線特徴データを収集して、ワークピースが最終的な取り付け位置に取り付けられるときの線特徴の所望または目標の場所を識別する有利な条件を提供する。
図5Bは、本開示の一実施形態による、画像ベースの視覚サーボのために識別された線特徴を示す、図5Aからの画像のトリミングされたバージョンである画像550である。画像550は、上記のように移動物体検出技術を使用してトリミングされており、その結果、画像500のトリミングされた部分は、本質的に実演者の手とワークピース(CPUファン)のみを含む。図示のようにトリミングされた後、実演者の手に関連付けられた線特徴を、上記のように除去する。この除去には、手の人差し指と小指との間にある任意の線特徴の除去(無視)と、手の親指または人差し指の許容距離内の線特徴の除去(無視)が含まれる。トリミングされた画像550に残る線特徴を、これまでに考察したIBVS追跡に使用する。画像550では、線560、562、564及び566を識別する。線はいずれもCPUファンの外枠及びシュラウドの幾何学的特徴である。このような線は、まさにIBVS追跡に必要な幾何学的特徴の一種である。
図5Aに示す人間の実演段階全体で、画像をトリミングして分析し、幾何学的特徴データを収集する。幾何学的特徴(例えば、線560~566)の目標または所望の場所は、図5Bに示すように、手及びワークピースの移動が停止し、ワークピースがその最終的な取り付け位置にあるときに、識別される。次に、人間の実演中に収集された線特徴データは、以下で考察するように、ロボットの再生段階または実行段階中にIBVS追跡に使用される。
図6は、本開示の一実施形態による、画像ベースの視覚サーボ(IBVS)を用いた人間の実演によるロボット教示のための技術の詳細を示す図である。人間の実演段階600には、ボックス602での取り出し-移動-設置の操作の人間の実演が含まれる。手の姿勢は、各画像フレーム間隔で、ボックス610での画像にて識別される。ここで、手の姿勢は、図1及び図2を参照して上記で考察したように、対応する把持部の姿勢に変換される。このほか、上記したように、実演が完了した後、3Dの取り出し-移動-設置の軌道はボックス620で全体的に判定される。結果として得られた軌道を622に示す。
また、人間の実演段階600中に、ボックス630にて、ワークピース上の幾何学的特徴を、画像ベースの視覚サーボ用にカメラ画像から収集する。上記で考察したCPUファンの例では、線特徴をIBVSの追跡対象として選択した。ワークピース上に存在する最も適切な特徴に基づいて、他のタイプの幾何学的特徴も使用することがあり得る。ボックス640では、ワークピースの最終的な取り付け位置での線特徴を表す、目標または所望の線特徴を取り込む。目標または所望の線特徴は、線624によって示すように、ワークピースが「設置」場所に到達した(移動を停止した)とボックス620での軌道生成が判定したときに、取り込まれる。ボックス630及び640で実施されるステップは、図5A及び図5Bの考察にて上記に記載した。目標または所望の線特徴は、カメラの画像平面の座標での2D線である。
ロボット実行(または再生)段階650を、図3に示すようなシステムを使用して実施する。ボックス620からの全体的な取り出し-移動-設置の軌道は、ボックス660でロボット運動プログラムを実行するロボットコントローラに線652で提供される。ボックス660にて実行されるロボット運動プログラムは、ロボットに、人間の実演中に取り込まれた軌道622に対応する軌道662を使用してワークピースを取り出させ、移動させ、設置させる。ロボットが使用する軌道662は、実演中に取り込まれた軌道622の単純化されたバージョン(例えば、「上方、横断、下方」)であってもよい。
ボックス670では、ロボットコントローラは、ロボット把持部が指定された接近位置に到達し、「設置」場所に近づいていると判定する。これは、図4に示し、上記で考察したものである。接近位置に到達すると、軌道662上の点672が示すように、画像ベースの視覚サーボが始動する。ボックス680では、ロボットが「設置」場所への最終接近でワークピースを移動するときに、IBVSを実施する。IBVS中に、ワークピースのカメラ画像を継続的に分析し、選択された線特徴の現在の位置を特定する。ボックス640からの目標または所望の線特徴は、図示のように線654上でロボットコントローラに提供される。ロボット制御信号を、選択された線特徴の現在の位置と、線特徴の目標または所望の位置との間の(カメラ画像平面座標での)差に基づいて生成する。IBVS制御信号により、ロボット把持部は、軌道662のみを使用して可能な精度よりもはるかに高い精度で、ワークピースを(ボックス690に示す)その最終取り付け位置に設置する。
ロボット実行段階650は、単一の人間の実演段階600に基づいて何度も実施することができる。例えば、本明細書で考察したCPUファンの取り付け用途では、ボックス690にてロボットがワークピースを取り付けた後、(CPUファンを必要とする)新たなコンピュータ筐体がIBVSカメラに対して固定された位置に設置され、別のCPUファンをロボットが把持し(選択のためにトレイ内に多数のCPUファンが利用可能であっても、1つだけ利用可能であってもよい)、ボックス660、670、680及び690のステップが繰り返される。ロボット実行段階は、それぞれボックス620及び640にて取り込まれた軌道及び所望の線特徴に対して無期限に繰り返すことができる。
図7は、本開示の一実施形態による、実演段階及びロボット実行段階を含む、画像ベースの視覚サーボを用いた人間の実演によるロボット教示のための方法のフローチャート図700である。図7の左側の702~712の番号が付けられたステップは、図6及びそれ以前の図の人間の実演段階600を表す。図7の右側の720~726の番号が付けられたステップは、図6及びそれ以前の図のロボット実行段階650を表す。
ボックス702では、人間が、ワークピースを把持し、所望の軌道に沿って移動させ、目的の場所に設置することによって実演される取り出し-移動-設置の操作などの操作を実演する。目的の場所に設置するステップは、構成要素ワークピースを別個の構造体に取り付けるか組み付けるステップを含んでもよい。ボックス704では、1つまたは複数のカメラからの実演の画像を分析して、画像内の手の主要点及びワークピースを検出する。手の主要点の検出と、主要点の把持部姿勢との相関関係とは、図1に示し、これまでに考察した。
ボックス706では、最新の画像の手及びワークピースの分析に基づいて、移動軌道の新たなステップを追加する。取り出し点での把持行動と設置点での解放動作の検出を含む軌道生成の詳細が、‘185出願に記載されており、本明細書でも上記で概説している。ボックス708では、ワークピースの幾何学的特徴(上記で考察したCPUファン上の線特徴など)を、最新のカメラ画像のために取り込む。操作の人間の実演中の幾何学的特徴の取り込みの詳細を、図5及び図6を参照して上記で考察し、特に図6のボックス630に示した。
決定菱形710では、設置(最終)場所に到達したかどうかを判定する。これまでに考察したように、設置場所(軌道の終点)に到達したことは、カメラ画像内で手及び/またはワークピースが静止することによって識別することができる。設置場所はこのほか、‘185出願に記載されているように、ワークピースから離れる方向に移動する手の指先によって特定することができる。設置場所に到達していない場合、実演は継続し、プロセスはボックス704に戻って次のカメラ画像を分析する。設置場所に到達した場合、プロセスは決定菱形710から、軌道が確定され、目標(または所望)の幾何学的特徴の場所が取り込まれるボックス712に移動する。図6を参照して詳細に説明するように、軌道と目標の幾何学的特徴の場所の両方はロボット実行段階で使用される。
ボックス720では、実演された操作(例えば、ワークピースの取り出し-移動-設置)のロボット実行中に、ロボットコントローラは、ロボットプログラムを実行し、ロボット把持部にワークピースを持ち上げさせ、人間の実演中に生成された軌道に従って移動させる。コントローラによって計算されたロボットプログラムは、当業者には理解されるであろうように、逆運動学計算などを使用して、軌道に沿ったさまざまな点での把持部の位置と向きをロボット関節速度コマンドに変換する。
決定菱形722では、軌道にて最終接近位置に到達したかどうかを判定する。この概念は、図4のボックス430に示し、図6のボックス670を参照して再度考察したものである。最終接近位置にまだ到達していない場合、プロセスはボックス720に戻って、実演された軌道をたどり続ける。決定菱形722にて最終接近位置に到達した場合、ボックス724にて画像ベースの視覚サーボ(IBVS)が始動する。
ボックス726では、IBVS制御信号をロボット制御装置が使用して、ワークピースを最終的な設置位置または取り付け位置に操縦するときにロボット把持部を位置決めする。IBVS制御信号は、現在のカメラ画像で識別された幾何学的特徴と、画像平面座標での目標または所望の特徴の場所との差に基づいて計算される。この技術はこのほか、図5及び図6を参照してこれまでに説明したものである。プロセスは、ロボットがワークピースをその最終的な設置位置または取り付け位置に設置すると、終了する。ロボット実行段階(図7にて720~726までの番号が付けられたステップ)は、人間の実演の単一のインスタンスから取り込まれたデータに基づいて、何度も繰り返されてもよい。
これまでの考察を通じて、さまざまなコンピュータ及びコントローラを説明し、暗示している。このようなコンピュータ及びコントローラのソフトウェアアプリケーション及びモジュールは、プロセッサ及びメモリモジュールを有する1つまたは複数の計算装置上で実行されることを理解されたい。特に、これは、図2に関して考察した任意選択の別個のコンピュータと共に、上記で考察したロボットコントローラ220及び340内のプロセッサを含む。具体的には、コントローラ/コンピュータ内のプロセッサは、人間の実演を介したロボット教示、教示段階中のIBVSデータ収集及び実行段階中のワークピース設置のIBVS制御を、上記で考察した方法で実施するように構成される。
上記で概説したように、画像ベースの視覚サーボ(IBVS)を用いた人間の実演によるロボット教示の開示した技術は、ロボットの構成要素の組み立て操作に必要なワークピースの設置精度を提供しながら、以前の技術よりもロボット運動プログラミングをさらに速く、さらに簡単に、さらに直感的にする。
画像ベースの視覚サーボ(IBVS)を用いた人間の実演によるロボット教示の多くの例示的な態様及び実施形態を上記で考察してきたが、当業者であれば、その修正、置換、追加及び部分的な組み合わせを認識するであろう。このため、以下の添付の特許請求の範囲及び以下に導入される特許請求の範囲は、その真の精神及び範囲内にあるようなあらゆる修正、置換、追加及び部分的な組み合わせを含むと解釈されることが意図されている。

Claims (20)

  1. 人間の実演によって操作を実施するようにロボットをプログラミングする方法であって、前記方法は、
    人間の手によってワークピースに対する前記操作を実演するステップと、
    前記手及び前記ワークピースのカメラ画像をコンピュータによって分析して、実演データを作成するステップと、
    前記実演データにて識別された手座標枠に基づいて、各画像フレーム間隔で軌道に新たな点を追加するステップと、
    各画像フレーム間隔で前記実演データ内の前記ワークピース上の幾何学的特徴を識別するステップと、
    前記操作の前記実演が完了したときに、前記軌道を確定し、前記幾何学的特徴の目標の場所を取り込むステップと、
    ロボットコントローラがプログラムを実行して、把持部を有するロボットに、前記軌道を使用して前記ワークピースに対する前記操作を実施させるステップと、
    前記軌道内で最終接近位置に到達したと判定されたときに、画像ベースの視覚サーボ(IBVS)を開始するステップと、
    前記ワークピース上の前記幾何学的特徴の現在の場所が前記幾何学的特徴の前記目標の場所と一致するまで、前記ロボットコントローラがIBVS制御を使用して前記把持部を操縦するステップと、を含む、方法。
  2. 前記ワークピース上の前記幾何学的特徴は、点、線、弧、楕円、円柱及び不規則な形状のうちの1つまたは複数を含む、請求項1に記載の方法。
  3. 前記ワークピース上の前記幾何学的特徴、前記幾何学的特徴の前記現在の場所及び前記目標の場所は、前記カメラ画像の画像平面座標にて識別される、請求項1に記載の方法。
  4. 前記ワークピース、前記手またはその両方の動きが停止したと判定されたときに、前記操作の前記実演が完了する、請求項1に記載の方法。
  5. 前記実演データ内の前記ワークピース上の幾何学的特徴を識別するステップは、以前の画像フレームから変化した前記画像フレームの一部のみを含むように、移動物体検出を使用して各画像フレームをトリミングするステップを含む、請求項1に記載の方法。
  6. 前記移動物体検出は、2次元(2D)の色/強度データと3次元(3D)の奥行きデータの両方で実施され、前記画像フレームは、前記2Dデータと前記3Dデータの両方で変化した画素を含むようにトリミングされる、請求項5に記載の方法。
  7. 前記実演データ内の前記ワークピース上の幾何学的特徴を識別するステップは、前記ワークピース上の幾何学的特徴を識別する前に前記人間の手の幾何学的特徴を除去するステップを含む、請求項1に記載の方法。
  8. 前記人間の手の幾何学的特徴を除去するステップは、前記手の人差し指と小指との間に位置する幾何学的特徴を除去するステップと、前記手の前記人差し指または親指の所定の距離許容範囲内に位置する幾何学的特徴を除去するステップとを含む、請求項7に記載の方法。
  9. 前記手座標枠は、前記実演データで識別された前記手の2つ以上の指の主要点に基づいて計算され、前記主要点は指関節を含む、請求項1に記載の方法。
  10. IBVSを使用して前記把持部を操縦するステップは、前記幾何学的特徴の前記現在の場所と前記目標の場所との間の画像平面座標の差に基づいてロボット制御信号を生成するステップを含む、請求項1に記載の方法。
  11. 前記操作を実演するステップは、機械的特徴の係合を介して前記ワークピースをアセンブリに取り付けるステップを含み、前記ロボットコントローラによる前記IBVS制御は、前記把持部に、前記機械的特徴の係合を介して前記ワークピースを前記アセンブリに取り付けさせる、請求項1に記載の方法。
  12. 前記ワークピース及び前記アセンブリの新たなインスタンスに対して、前記コントローラが、前記プログラムを実行し、IBVS制御を使用して前記把持部を操縦することを連続的に繰り返すステップをさらに含む、請求項11に記載の方法。
  13. 人間の実演によって取り付け操作を実施するようにロボットをプログラミングする方法であって、前記方法は、
    人間の手によってワークピースのアセンブリへの前記取り付け操作を実演するステップと、
    前記手及び前記ワークピースのカメラ画像をコンピュータによって分析して、実演データを作成するステップと、
    前記実演データにて識別された手座標枠に基づいて、各画像フレーム間隔で軌道に新たな点を追加するステップと、
    各画像フレーム間隔で前記実演データ内の前記ワークピース上の幾何学的特徴を識別するステップと、
    前記ワークピースを前記アセンブリに機械的に篏合させることによって、前記取り付け操作の前記実演が完了すると、前記軌道を確定し、前記幾何学的特徴の目標の場所を取り込むステップと、
    ロボットコントローラがプログラムを実行して、把持部を有するロボットに、前記軌道を使用して前記ワークピースに対する前記取り付け操作を実施させるステップと、
    前記軌道内の最終接近位置に到達したと判定されたときに、画像ベースの視覚サーボ(IBVS)を開始するステップと、
    前記ロボットコントローラによるIBVS制御を使用して、前記ワークピースを前記アセンブリに機械的に篏合させることにより、前記取り付け操作が完了するまで前記把持部を操縦するステップであって、IBVS制御を使用するステップは、前記ワークピース上の前記幾何学的特徴の現在の場所と、前記幾何学的特徴の前記目標の場所との間の差に基づいて、制御信号を計算するステップを含む、ステップと、を含む、方法。
  14. 人間の実演によって操作を実施するようにロボットをプログラミングするためのシステムであって、前記システムは、
    カメラと、
    把持部を有するロボットと、
    プロセッサ及びメモリを有するロボットコントローラであって、前記コントローラは、前記ロボットと通信し、前記カメラから画像を受信し、前記コントローラは、
    前記ワークピースに対する前記操作を実演する人間の手のカメラ画像を分析して、実演データを作成するステップと、
    前記実演データにて識別された手座標枠に基づいて、各画像フレーム間隔で軌道に新たな点を追加するステップと、
    各画像フレーム間隔で前記実演データ内の前記ワークピース上の幾何学的特徴を識別するステップと、
    前記操作の前記実演が完了したときに、前記軌道を確定し、前記幾何学的特徴の目標の場所を取り込むステップと、
    プログラムを実行して、前記把持部を有する前記ロボットに、前記軌道を使用して前記ワークピースに対する前記操作を実施させるステップと、
    前記軌道内で最終接近位置に到達したと判定されたときに、画像ベースの視覚サーボ(IBVS)を開始するステップと、
    前記ワークピース上の前記幾何学的特徴の現在の場所が前記幾何学的特徴の前記目標の場所と一致するまで、IBVS制御を使用して前記把持部を操縦するステップと、を含むステップを実施するように構成される、ロボットコントローラと、を具備する、システム。
  15. 前記ワークピース上の前記幾何学的特徴は、点、線、円弧、楕円、円柱及び不規則な形状のうちの1つまたは複数を含む、請求項14に記載のシステム。
  16. 前記実演データ内の前記ワークピース上の幾何学的特徴を識別するステップは、以前の画像フレームから変化した前記画像フレームの一部のみを含むように、移動物体検出を使用して各画像フレームをトリミングするステップを含む、請求項14に記載のシステム。
  17. 前記実演データ内の前記ワークピース上の幾何学的特徴を識別するステップは、前記ワークピース上の幾何学的特徴を識別する前に前記人間の手の幾何学的特徴を除去するステップであって、前記手の人差し指と小指との間に位置する幾何学的特徴を除去するステップと、前記手の前記人差し指または親指の事前定義された距離許容範囲内にある幾何学的特徴を除去するステップと、を含むステップを含む、請求項14に記載のシステム。
  18. IBVSを使用して前記把持部を操縦するステップは、前記幾何学的特徴の前記現在の場所と前記目標の場所との間の画像平面座標の差に基づいてロボット制御信号を生成するステップを含む、請求項14に記載のシステム。
  19. 前記操作を実演するステップは、機械的特徴の係合を介して前記ワークピースをアセンブリに取り付けるステップを含み、前記ロボットコントローラによるIBVS制御は、前記把持部に、前記機械的特徴の係合を介して前記ワークピースを前記アセンブリに取り付けさせる、請求項14に記載のシステム。
  20. 前記プログラムを実行し、IBVS制御を使用して前記ワークピース及び前記アセンブリの新たなインスタンス上で前記把持部を操縦することを連続的に繰り返すステップをさらに含む、請求項19に記載のシステム。
JP2022193887A 2021-12-06 2022-12-05 視覚サーボを用いた実演によるロボット教示 Pending JP2023084116A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/457,688 2021-12-06
US17/457,688 US20230173660A1 (en) 2021-12-06 2021-12-06 Robot teaching by demonstration with visual servoing

Publications (1)

Publication Number Publication Date
JP2023084116A true JP2023084116A (ja) 2023-06-16

Family

ID=86382052

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022193887A Pending JP2023084116A (ja) 2021-12-06 2022-12-05 視覚サーボを用いた実演によるロボット教示

Country Status (4)

Country Link
US (1) US20230173660A1 (ja)
JP (1) JP2023084116A (ja)
CN (1) CN116214480A (ja)
DE (1) DE102022130652A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116533679B (zh) * 2023-06-14 2023-09-29 奇诺机器人科技(杭州)有限公司 基于视觉引导的自动换胎方法
CN116834023B (zh) * 2023-08-28 2023-11-14 山东嘉达装配式建筑科技有限责任公司 一种打钉机器人控制系统

Also Published As

Publication number Publication date
CN116214480A (zh) 2023-06-06
DE102022130652A1 (de) 2023-06-07
US20230173660A1 (en) 2023-06-08

Similar Documents

Publication Publication Date Title
JP2023084116A (ja) 視覚サーボを用いた実演によるロボット教示
Chang Robotic assembly of smartphone back shells with eye-in-hand visual servoing
US20210316449A1 (en) Robot teaching by human demonstration
EP3272473B1 (en) Teaching device and method for generating control information
CN111462154B (zh) 基于深度视觉传感器的目标定位方法、装置及自动抓取机器人
Ahlin et al. Autonomous leaf picking using deep learning and visual-servoing
US20220080581A1 (en) Dual arm robot teaching from dual hand human demonstration
Tonko et al. Model-based stereo-tracking of non-polyhedral objects for automatic disassembly experiments
Ortenzi et al. Vision-guided state estimation and control of robotic manipulators which lack proprioceptive sensors
JP6499272B2 (ja) ティーチング装置及び制御情報の生成方法
CN112805127A (zh) 用于创建机器人控制程序的方法和设备
CN117794704A (zh) 机器人控制设备、机器人控制系统以及机器人控制方法
Luo et al. Robotic conveyor tracking with dynamic object fetching for industrial automation
JP7112528B2 (ja) 作業座標作成装置
Yeasin et al. Automatic robot programming by visual demonstration of task execution
US11712797B2 (en) Dual hand detection in teaching from demonstration
Eissa et al. An effective programming by demonstration method for SMEs’ industrial robots
JP2023059863A (ja) 人の両手の実演による双腕ロボットの教示
Kita et al. Robot and 3D-sensor calibration using a planar part of a robot hand
Chen et al. Rover Manipulation
US20230294291A1 (en) Efficient and robust line matching approach
Fölscher et al. Saving time on robot programming: Programming by demonstration using stereoscopic motion capturing
TW201529259A (zh) 端效器控制方法
CN116749233A (zh) 基于视觉伺服的机械臂抓取系统及方法
Hosni Mohamed Ali et al. A supervised learning technique for programming a welding arm robot using vision system