JP2020142323A - ロボット制御装置、ロボット制御方法、及びロボット制御プログラム - Google Patents

ロボット制御装置、ロボット制御方法、及びロボット制御プログラム Download PDF

Info

Publication number
JP2020142323A
JP2020142323A JP2019040611A JP2019040611A JP2020142323A JP 2020142323 A JP2020142323 A JP 2020142323A JP 2019040611 A JP2019040611 A JP 2019040611A JP 2019040611 A JP2019040611 A JP 2019040611A JP 2020142323 A JP2020142323 A JP 2020142323A
Authority
JP
Japan
Prior art keywords
robot
image
target
image processing
motion
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
JP2019040611A
Other languages
English (en)
Inventor
康裕 大西
Yasuhiro Onishi
康裕 大西
星斗 付
Xingdou Fu
星斗 付
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2019040611A priority Critical patent/JP2020142323A/ja
Priority to CN202080004442.7A priority patent/CN112566758A/zh
Priority to US17/270,867 priority patent/US20210197391A1/en
Priority to EP20766977.1A priority patent/EP3936286A4/en
Priority to PCT/JP2020/005943 priority patent/WO2020179416A1/ja
Publication of JP2020142323A publication Critical patent/JP2020142323A/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
    • 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
    • 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
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • B25J13/089Determining the position of the robot with reference to its environment
    • 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/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
    • 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/40427Integrate sensing and action in planning
    • 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/40519Motion, trajectory planning
    • 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/40613Camera, laser scanner on end effector, hand eye manipulator, local

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Manipulator (AREA)

Abstract

【課題】ロボットの動作に要する時間を短縮する。【解決手段】ロボット制御装置は、ハンドアイカメラを用いて、ロボットの第1の動作目標を決定するための画像処理に用いられる第1の画像と、第1の動作目標に続く第2の動作目標を決定するための画像処理に用いられる第2の画像とを撮影するステップ301,304と、第1の画像及び第2の画像に基づいて、第1の動作目標及び第2の動作目標をそれぞれ決定するための画像処理を行うステップ302,305と、第1の動作目標又は第2の動作目標に基づいて、ロボットの動作を制御するステップ303を実行する。ここで、ステップ305は、第1の動作目標に基づくロボットの動作が行われているときに、第2の画像に基づいて第2の動作目標を決定するための画像処理を行う。第1の動作目標に基づくロボット60の動作が終わる前に、撮影装置82は、第2の画像を撮影する。【選択図】図3

Description

本発明はロボット制御装置、ロボット制御方法、及びロボット制御プログラムに関わる。
ファクトリーオートメーションの分野では、ワークを撮影して得られる画像からロボットに対するワークの相対的な位置及び姿勢を計算するための画像処理を行い、その計算結果に基づいて、ロボットがワークを把持するためのロボットの目標位置及び目標姿勢を計算することにより、ロボットによるワークのピッキング動作を制御している。この種の画像撮影に用いられるカメラは、ロボットビジョンと呼ばれており、その取り付け方式には、種々の方式がある。例えば、特許文献1に記載されているように、ロボットにロボットビジョンを取り付ける方式が知られている。ロボットに取り付けられたロボットビジョンは、ハンドアイカメラとも呼ばれる。ハンドアイカメラによれば、ロボットの動作を通じてカメラ視点を自由に動かすことができるため、ロボット上に設置された固定型のカメラから認識し難い位置にあるワークの位置及び姿勢を十分に特定できるという利点を有する。
特開2011−93014号公報
しかし、特許文献1に記載の方式では、ワークを撮影して得られる画像から、ロボットがワークを把持するためのロボットの目標位置及び目標姿勢を計算するための画像処理が終わるまでロボットの動作は停止しており、画像処理の完了後にロボットによるワークのピッキング動作を開始している。このため、画像処理に要する時間の分だけロボットの動作開始に遅れが生じることとなり、ピッキング動作に要する時間が長引いてしまう。
そこで、本発明はこのような問題を解決し、ロボットの動作に要する時間を短縮することのできるロボット制御装置、ロボット制御方法、及びロボット制御プログラムを提案することを課題とする。
上述の課題を解決するため、本発明に関わるロボット制御装置は、ロボットに取り付けられた撮影装置であって、ロボットの第1の動作目標を決定するための画像処理に用いられる第1の画像と、ロボットの第1の動作目標に続く第2の動作目標を決定するための画像処理に用いられる第2の画像とを撮影する撮影装置と、第1の画像及び第2の画像に基づいて、第1の動作目標及び第2の動作目標をそれぞれ決定するための画像処理を行う画像処理装置と、第1の動作目標又は第2の動作目標に基づいて、ロボットの動作を制御するコントローラと、を備える。第1の動作目標に基づくロボットの動作が行われているときに、画像処理装置は、第2の画像に基づいて第2の動作目標を決定するための画像処理を行う。第1の動作目標に基づくロボットの動作が終わる前に、撮影装置は、第2の画像を撮影する。このように、第1の動作目標に基づくロボットの動作と、第1の動作目標に続く第2の動作目標を決定するための画像処理とを同時に並行して行うことにより、画像処理に要する時間の分だけロボットの動作開始を遅らせる必要がなく、ロボットの動作に要する時間を短縮することができる。
第1の画像は、例えば、第1の物体の画像でもよい。第2の画像は、例えば、第1の物体とは異なる第2の物体の画像でもよい。第1の動作目標は、例えば、ロボットが第1の物体を操作するためのロボットの目標位置及び目標姿勢でもよい。第2の動作目標は、例えば、ロボットが第2の物体を操作するためのロボットの目標位置及び目標姿勢でもよい。これにより、ロボットが第1の物体及び第2の物体のそれぞれを操作するのに要する時間を短縮できる。
本発明に関わるロボット制御方法は、ロボット制御装置が、ロボットに取り付けられた撮影装置を用いて、ロボットの第1の動作目標を決定するための画像処理に用いられる第1の画像と、ロボットの第1の動作目標に続く第2の動作目標を決定するための画像処理に用いられる第2の画像とを撮影するステップと、第1の画像及び第2の画像に基づいて、第1の動作目標及び第2の動作目標をそれぞれ決定するための画像処理を行うステップと、第1の動作目標又は第2の動作目標に基づいて、ロボットの動作を制御するステップと、を実行する。ここで、画像処理を行うステップは、第1の動作目標に基づくロボットの動作が行われているときに、第2の画像に基づいて第2の動作目標を決定するための画像処理を行うことを含む。第1の動作目標に基づくロボットの動作が終わる前に、撮影装置は、第2の画像を撮影する。このように、第1の動作目標に基づくロボットの動作と、第1の動作目標に続く第2の動作目標を決定するための画像処理とを同時に並行して行うことにより、画像処理に要する時間の分だけロボットの動作開始を遅らせる必要がなく、ロボットの動作に要する時間を短縮することができる。
本発明に関わるロボット制御プログラムは、ロボットに取り付けられた撮影装置に、ロボットの第1の動作目標を決定するための画像処理に用いられる第1の画像と、ロボットの第1の動作目標に続く第2の動作目標を決定するための画像処理に用いられる第2の画像とを撮影することを指示するステップと、第1の画像及び第2の画像に基づいて、第1の動作目標及び第2の動作目標をそれぞれ決定するための画像処理を行うことを画像処理装置に指示するステップと、第1の動作目標又は第2の動作目標に基づいて、ロボットの動作を制御することをコントローラに指示するステップと、をコンピュータシステムに実行させる。ここで、画像処理を行うステップは、第1の動作目標に基づくロボットの動作が行われているときに、第2の画像に基づいて第2の動作目標を決定するための画像処理を行うことを含む。第1の動作目標に基づくロボットの動作が終わる前に、撮影装置は、第2の画像を撮影する。このように、第1の動作目標に基づくロボットの動作と、第1の動作目標に続く第2の動作目標を決定するための画像処理とを同時に並行して行うことにより、画像処理に要する時間の分だけロボットの動作開始を遅らせる必要がなく、ロボットの動作に要する時間を短縮することができる。
本発明によれば、ロボットの動作に要する時間を短縮することができる。
本実施形態に関わるロボット制御装置の構成を示す説明図である。 本実施形態に関わるロボットの動作を示す説明図である。 本実施形態に関わるロボット制御方法の処理の流れの一例を示すフローチャートである。 本実施形態に関わるロボット制御装置のハードウェア構成の一例を示す説明図である。 本実施形態に関わるロボット制御方法の処理の流れの一例を示すフローチャートである。 本実施形態に関わるロボット制御方法の処理の流れの一例を示すタイミングチャートである。
以下、本発明の一側面に関わる実施形態を図面に基づいて説明する。本発明の実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更又は改良され得るととともに、本発明には、その等価物も含まれる。なお、同一符号は、同一の構成要素を示すものとし、重複する説明は省略する。
[適用例]
まず、図1乃至図3を参照しながら、本発明の適用例について説明する。
図1は本実施形態に関わるロボット制御装置100の構成を示す説明図である。ロボット制御装置100は、そのハードウェア資源として、コンピュータシステム10と、ロボット60の手首に取り付けられたハンドアイカメラ80と、ロボット60の動作を制御するコントローラ70とを備える。ロボット60は、物体90(例えば、仕掛け品又は部品などのワーク)を操作(例えば、把持、吸着、移動、組み立て、又は挿入など)するためのロボットハンド62を備えている。ロボット制御装置100は、ハンドアイカメラ80を用いて撮影された画像の画像処理を通じて、ロボット60の動作目標を決定する。ロボット60の動作目標を決定するための画像処理に用いられる画像は、例えば、ロボット60によって操作される物体90の画像でもよく、或いはロボット60の動作環境91(例えば、ロボット60によって操作される物体90の置き場)の画像でもよい。
物体90の画像は、2次元の画像でもよく、或いは3次元の画像でもよい。3次元の画像は、ハンドアイカメラ80と物体90との間の距離情報(奥行情報)を有する画像を意味する。2次元の画像は、そのような奥行情報を有しない。3次元の画像の例として例えば、物体90の3次元形状に関する情報を高さマップと呼ばれる形式で提供する3次元点群を挙げることができる。ハンドアイカメラ80は、2次元又は3次元の画像を撮影するように構成されている。3次元の画像を撮影するように構成されるハンドアイカメラは、例えば、(i)2次元の画像を撮影するイメージセンサの撮影位置を変えながら複数の2次元の画像を撮影し、ステレオ立体視の画像処理により、奥行情報を含む3次元の画像を得るように構成されているイメージセンサ、(ii)物体を複数の異なる方向から同時に撮影することにより奥行情報を含む3次元の画像を得るように構成されているステレオカメラ、及び(iii)3次元点群を得るように構成されている距離センサを含む。距離センサの方式としては、例えば、三角法方式、飛行時間方式(タイム・オブ・フライト方式)、又は位相差方式などを用いることができる。
ロボット制御装置100は、例えば、ハンドアイカメラ80を視点とする物体90の画像の見え方からロボット60に対する物体90の相対的な位置及び姿勢を計算するための画像処理を行い、その計算結果に基づいてロボット60の動作目標を計算してもよい。ロボット60の動作目標は、例えば、ロボット60が物体を操作するために要求されるロボット60の目標位置及び目標姿勢である。この種の画像処理として、例えば、モデルベーストマッチングと呼ばれるアルゴリズムを用いることができる。ロボット60が物体90をピッキングし、所定の位置にプレイスする操作(以下、「ピックアンドプレイス」と呼ぶ)においては、ロボット60の動作目標は、ロボット60が物体90をピックアンドプレイスするために要求されるロボット60の目標位置及び目標姿勢である。ロボット60の動作目標を決定するための画像処理に用いられる画像に複数の物体90が映っている場合には、ロボット60の動作目標を決定するための画像処理は、複数90の物体の中からどの物体90を選択するのかを決定する計算処理を含んでもよい。なお、ハンドアイカメラ80として、物体90の2次元の画像を撮影するように構成されているものを用いて、物体90をピックアンドプレイスする場合には、物体90の形状が既知であり、且つ、物体90同士が重ならないように配置されている必要がある。
ロボット制御装置100は、例えば、ロボット60の動作環境91の画像から物体90の置き場所を計算するための画像処理を行い、その計算結果に基づいてロボット60の動作目標を計算してもよい。この例では、ロボット60の動作目標は、ロボット60が物体90を置き場所に置くために要求されるロボット60の目標位置及び目標姿勢である。
なお、図1において、符号201は、ロボット60を基準とする座標系を示し、符号202は、ロボットハンド62を基準とする座標系を示し、符号203は、ハンドアイカメラ80を基準とする座標系を示す。ハンドアイカメラ80を視点とする物体90の画像の見え方から、ハンドアイカメラ80に対する物体90の相対的な位置及び姿勢(座標系203における物体90の位置及び姿勢)を計算により求めることができる。座標系203と座標系202との関係は既知であるため、座標系203における物体90の位置及び姿勢を、変換行列を用いて、座標系202における物体90の位置及び姿勢に変換することができる。ロボット60には、各関節の角度を示す検出情報を出力するエンコーダが組み込まれており、エンコーダから出力される検出情報が示す各関節の角度に基づいて、座標系202における物体90の位置及び姿勢を座標系201における物体90の位置及び姿勢に変換することができる。
ロボット60の目標姿勢(各関節のジョイント角)の候補は、逆運動学により決定される。ロボット60の目標姿勢の候補が複数存在する場合は、評価関数の評価値を基に何れかの候補を選択してもよい。このような評価関数として、例えば、ロボット60の移動経路の長さに応じて変化する評価値を出力する評価関数を用いてもよい。
図2は本実施形態に関わるロボット60の動作を示す説明図である。図3は本実施形態に関わるロボット制御方法の処理の流れの一例を示すフローチャートである。この例では、ロボット60が、複数の異なる物体90のうち何れか一つの物体90(以下、「第1の物体90A」と呼ぶ)をピックアンドプレイスし、続いて、何れか一つの物体90(以下、「第2の物体90B」と呼ぶ)をピックアンドプレイスする場合を説明する。ロボット60が第1の物体90Aをピックアンドプレイスするためにために要求されるロボット60の目標位置及び目標姿勢を「第1の動作目標」と呼ぶ。ロボット60が第2の物体90Bをピックアンドプレイスするためにために要求されるロボット60の目標位置及び目標姿勢を「第2の動作目標」と呼ぶ。第1の動作目標を決定するための画像処理に用いられる第1の物体90Aの画像を「第1の画像」と呼ぶ。第2の動作目標を決定するための画像処理に用いられる第2の物体90Bの画像を「第2の画像」と呼ぶ。
ステップ301において、ロボット制御装置100は、ロボット60の第1の動作目標を決定するための画像処理に用いられる第1の物体90Aの第1の画像を撮影する。
ステップ302において、ロボット制御装置100は、第1の動作目標を決定するための画像処理を行う。このステップでは、ロボット制御装置100は、第1の物体90Aの第1の画像の見え方から、上述の座標変換を通じて、ロボット60に対する第1の物体90Aの相対的な位置及び姿勢を計算し、ロボット60が第1の物体90Aをピックアンドプレイスするために要求されるロボット60の第1の動作目標(第1の目標位置及び第1の目標姿勢)を計算する。
ステップ303において、ロボット制御装置100は、第1の動作目標に基づいて、ロボット60の動作を制御する。このステップでは、ロボット制御装置100は、ロボット60の現在の位置及び姿勢がそれぞれ第1の目標位置及び第1の目標姿勢に一致するように、ロボット60の各関節を駆動するモータの回転角を制御するための駆動指令をロボット60に出力する。
ステップ304において、ロボット制御装置100は、ロボット60の第2の動作目標を決定するための画像処理に用いられる第2の画像を撮影する。このステップでは、第1の動作目標に基づくロボット60の動作(ステップ303)が終わる前に、ロボット制御装置100は、ハンドアイカメラ80による第2の物体90Bの撮影が可能となるようにロボット60の位置及び姿勢を制御し、ハンドアイカメラ80を第2の物体90Bに向けて第2の画像を撮影すればよい。例えば、第1の動作目標に基づくロボット60の動作(ステップ303)が行われている最中に、ロボット制御装置100は、第2の画像を撮影してもよい。或いは、第1の動作目標に基づくロボット60の動作(ステップ303)が行われる前に、ロボット制御装置100は、第2の画像を撮影してもよい。
ステップ305において、ロボット制御装置100は、第2の動作目標を決定するための画像処理を行う。このステップでは、ロボット制御装置100は、第2の物体90Bの第2の画像の見え方から、上述の座標変換を通じて、ロボット60に対する第2の物体90Bの相対的な位置及び姿勢を計算し、ロボット60が第2の物体90Bを操作するために要求されるロボット60の第2の動作目標(第2の目標位置及び第2の目標姿勢)を計算する。
ステップ306において、ロボット制御装置100は、第2の動作目標に基づく動作を行わずに作業を終了するか否かを判定する。このステップでは、ロボット制御装置100は、例えば、ロボット60の動作を継続する指令がメインプログラム又は操作者から入力されているか否かを基準に、ロボット60の動作継続の要否を判定してもよい。
ステップ306において、第2の動作目標に基づく動作が行われるものと判定されると(ステップ306;NO)、ロボット制御装置100は、ステップ303において、第2の動作目標に基づいて、ロボット60の動作を制御する。このステップでは、ロボット制御装置100は、ロボット60の現在の位置及び姿勢がそれぞれ第2の目標位置及び第2の目標姿勢に一致するように、ロボット60の各関節を駆動するモータの回転角を制御するための駆動指令をロボットに出力する。
本実施形態によれば、ロボット制御装置100は、第1の動作目標に基づいて、ロボット60の動作を制御するステップ303と、第1の動作目標に続く第2の動作目標を決定するための画像処理を行うステップ305とを同時に並行して行うことにより、画像処理に要する時間の分だけロボット60の動作開始を遅らせる必要がなく、ロボット60の動作に要する時間を短縮することができる。
なお、ステップ303における第2の動作目標に基づくロボット60の動作が終わる前に、ロボット制御装置100は、第2の動作目標に続く動作目標を決定するための画像処理に用いられる画像を撮影する(ステップ304)。次いで、ロボット制御装置100は、第2の動作目標に基づいて、ロボット60の動作を制御するステップ303と、第2の動作目標に続く動作目標を決定するための画像処理を行うステップ305とを同時に並行して行う。以後、ロボット60の動作が継続する限り、ロボット制御装置100は、ステップ303〜305の処理を繰り返す。
上述の説明では、ロボット60が複数の異なる物体90を操作する場合を例に、物体90の撮影画像の画像処理を通じてロボット60の動作目標を決定する処理について説明したが、ロボット制御装置100は、例えば、ロボット60の動作環境91の画像から物体90の置き場所を計算するための画像処理を行い、その計算結果に基づいてロボット60の動作目標を計算してもよい。物体90の置き場所を計算するための画像処理の例として、複数の物体90を整列配置させるための画像処理や、予め定められた特定の場所に物体90を置くための画像処理などを挙げることができる。
[ハードウェア構成]
次に、図4を参照しながら、本実施形態に関わるロボット制御装置100のハードウェア構成の一例について説明する。
ロボット制御装置100は、そのハードウェア資源として、コンピュータシステム10と、ロボット60の手首に取り付けられたハンドアイカメラ80と、ロボット60の動作を制御するコントローラ70とを備える。ハンドアイカメラ80は、撮影装置81と、画像処理装置82とを備える。撮影装置81は、ロボット60の動作目標を決定するための画像処理に用いられる画像(例えば、2次元の画像又は3次元点群)を撮影する。撮影装置81は、2次元の画像を撮影するイメージセンサでもよく、或いは3次元点群を撮影する距離センサでもよい。画像処理装置82は、画像処理用に設計されたFPGA(Field Programmable Gate Array)を備える。コントローラ70は、コンピュータシステム10からの指示(ロボット60の動作目標を示す指示)に応答してロボット60の各関節を駆動する信号をロボット60に出力するロボットコントローラである。
ロボット60は、例えば、垂直多関節ロボット、水平多関節ロボット、直交ロボット、又はパラレルリンクロボットなどの各種ロボットである。ロボット60は、自律的に動作するマニピュレータとして動作し、例えば、ワークのピッキング、組み立て、搬送、塗装、検査、研磨、又は洗浄などの様々な用途に用いることができる。ロボット60には、各関節の角度を示す検出情報を出力するエンコーダ61が組み込まれている。
コンピュータシステム10は、演算装置20と、記憶装置30と、入出力インタフェース40と、表示装置50とを備える。演算装置20は、CPU(Central Processing Unit)21と、ROM(Read Only Memory)22と、RAM(Random Access Memory)23とを備えている。記憶装置30は、ディスク媒体(例えば、磁気記録媒体又は光磁気記録媒体)又は半導体メモリ(例えば、揮発性メモリ又は不揮発性メモリ)などのコンピュータ読み取り可能な記録媒体である。このような記録媒体は、例えば、非一過性の記録媒体と呼ぶこともできる。記憶装置30は、ロボット60の動作を制御するためのロボット制御プログラム31を格納している。このロボット制御プログラム31は、ロボット60の動作を制御するメインプログラムとして機能し、ロボット制御装置100の各部(撮影装置81、画像処理装置82、コントローラ70、及びロボット60)を制御する。ロボット制御プログラム31は、記憶装置30からRAM23に読み込まれ、CPU21によって解釈及び実行される。
入出力インタフェース40は、画像処理装置82によって画像処理された結果の情報である、ロボット60の動作目標を示す情報をハンドアイカメラ80から入力するとともに、ロボット60の現在の位置及び姿勢を示す情報である、エンコーダ61からの検出情報を入力する。CPU21は、ハンドアイカメラ80及びエンコーダ61から出力されるこれらの情報に基づいて、ロボット60の動作指示(ロボット60の動作目標を示す指示)をロボット制御プログラム31に従って生成し、これを、入出力インタフェース40を通じてコントローラ70に出力する。
表示装置50は、例えば、画像処理装置82によって画像処理された結果やロボット60の作業の結果などを表示する。表示装置は、例えば、液晶ディスプレイである。
[ロボット制御方法]
次に、バラ積みされた複数の物体90の中から何れか一つの物体90を選択してこれをピッキングし、その後、所定の位置にプレイスする動作をロボット60に実行させるための処理の流れの一例について、図5のフローチャートを参照しながら説明する。
第1の動作目標に基づくロボット60の動作は、第1の物体90Aをピッキングする動作(ステップ503)と、ピッキングした第1の物体90Aをプレイスする動作(ステップ505)とに分けられる。このため、図5のステップ503,505の処理は、図3のステップ303の処理に相当する。図5のステップ501,502,504,506,507の処理は、それぞれ、図3のステップ301,302,304,305,306の処理に相当する。
この例によれば、ロボット制御装置100は、ピッキングした第1の物体90Aをプレイスする動作(ステップ505)と、第2の物体90Bをピックアンドプレイス処理するためのロボット60の動作目標を決定するための画像処理(ステップ506)とを同時に並行して行うことにより、画像処理に要する時間の分だけロボット60の動作開始を遅らせる必要がなく、ロボット60の動作に要する時間を短縮することができる。
なお、ピッキングした第1の物体90Aをプレイスする動作(ステップ505)が終わる前に、ロボット制御装置100は、第2の画像を撮影すればよい(ステップ504)。図5に示すフローチャートでは、ピッキングした第1の物体90Aをプレイスする動作(ステップ505)の前に、ロボット制御装置100は、第2の画像を撮影しているが、ピッキングした第1の物体90Aをプレイスしながら、同時に、第2の画像を撮影してもよい。ロボット制御装置100は、ピッキングした第1の物体90Aをプレイスする前に或いはプレイスしながら、ハンドアイカメラ80による第2の物体90Bの撮影が可能となるようにロボット60の位置及び姿勢を制御し、ハンドアイカメラ80を第2の物体90Bに向けて第2の画像を撮影してもよい。
図6は、図5のピックアンドプレイス処理のタイミングチャートの一例を示す。
ステップ601において、ロボット制御プログラム31は、ロボット60の第1の動作目標を決定するための画像処理に用いられる第1の画像の撮影を撮影装置81に指示する。
ステップ602において、撮影装置81は、第1の画像を撮影する。
図6のステップ601,602の処理は、図5のステップ501の処理に相当する。
ステップ603において、ロボット制御プログラム31は、第1の画像に基づいて第1の動作目標を決定するための画像処理を行うことを画像処理装置82に指示する。
ステップ604において、画像処理装置82は、第1の動作目標を決定するための画像処理を行う。
図6のステップ603,604の処理は、図5のステップ502の処理に相当する。
ステップ605において、ロボット制御プログラム31は、第1の物体をピッキングすることをコントローラ70に指示する。
ステップ606において、コントローラ70は、第1の物体をピッキングすることを指令する信号をロボット60に出力する。
ステップ607において、ロボット60は、第1の物体をピッキングする。
ステップ608において、コントローラ70は、第1の物体のピッキングが終了したことをロボット制御プログラム31に通知する。
図6のステップ605,606,607,608の処理は、図5のステップ503の処理に相当する。
ステップ609において、ロボット制御プログラム31は、ロボット60の第2の動作目標を決定するための画像処理に用いられる第2の画像の撮影を撮影装置81に指示する。
ステップ610において、撮影装置81は、第2の画像を撮影する。
図6のステップ609,610の処理は、図5のステップ504の処理に相当する。
ステップ611において、ロボット制御プログラム31は、第1の物体90Aをプレイスすることをコントローラ70に指示する。
ステップ612において、コントローラ70は、第1の物体90Aをプレイスすることを指令する信号をロボット60に出力する。
ステップ613において、ロボット60は、第1の物体90Aをプレイスする。
ステップ614において、コントローラ70は、第1の物体90Aのプレイシングが終了したことをロボット制御プログラム31に通知する。
図6のステップ611,612,613,614の処理は、図5のステップ505の処理に相当する。
ステップ615において、ロボット制御プログラム31は、第2の画像に基づいて第2の動作目標を決定するための画像処理を行うことを画像処理装置82に指示する。
ステップ616において、画像処理装置82は、第2の動作目標を決定するための画像処理を行う。
図6のステップ615,616の処理は、図5のステップ506の処理に相当する。
なお、ロボット60の動作がピックアンドプレイス以外の動作(例えば、把持、吸着、移動、組み立て、又は挿入など)である場合においても、ロボット制御プログラム31、撮影装置81、画像処理装置82、コントローラ70、及びロボット60の間における通信のタイミングチャートは、例えば、図6のタイミングチャートと同様である。
コンピュータシステム10は、画像処理装置82の機能を備えてもよい。また、ロボット制御プログラム31によって実現される機能の全部又は一部を専用のハードウェア資源(例えば、特定用途向け集積回路、又はフィールドプログラマブルゲートアレイなど)を用いて実現してもよい。
また、ロボット60の動作目標を決定するための画像処理に用いられる画像の撮影は、ハンドアイカメラ80を停止又は移動させながら行ってもよい。また、ロボット60の一つの動作目標を決定するための画像処理に用いられる画像の数は、1つに限らず、2つ以上でもよい。
また、ロボット60は、ファクトリーオートメーションに用いられる産業ロボットのアームに限定されるものではなく、例えば、サービス業に用いられるロボット(例えば、オペレーティングロボット、医療用ロボット、掃除ロボット、レスキューロボット、セキュリティロボットなど)のアームでもよい。
上述の実施形態の一部又は全部は、以下の付記のように記載され得るが、以下には限定されない。
(付記1)
ロボット60に取り付けられた撮影装置81であって、ロボット60の第1の動作目標を決定するための画像処理に用いられる第1の画像と、ロボット60の第1の動作目標に続く第2の動作目標を決定するための画像処理に用いられる第2の画像とを撮影する撮影装置81と、
第1の画像及び第2の画像に基づいて、第1の動作目標及び第2の動作目標をそれぞれ決定するための画像処理を行う画像処理装置82と、
第1の動作目標又は第2の動作目標に基づいて、ロボット60の動作を制御するコントローラ70と、を備え、
第1の動作目標に基づくロボット60の動作が行われているときに、画像処理装置82は、第2の画像に基づいて第2の動作目標を決定するための画像処理を行い、
第1の動作目標に基づくロボット60の動作が終わる前に、撮影装置82は、第2の画像を撮影する、ロボット制御装置100。
(付記2)
付記1に記載のロボット制御装置100であって、
第1の画像は、第1の物体の画像であり、
第2の画像は、第1の物体とは異なる第2の物体の画像であり、
第1の動作目標は、ロボット60が第1の物体を操作するためのロボット60の目標位置及び目標姿勢であり、
第2の動作目標は、ロボット60が第2の物体を操作するためのロボット60の目標位置及び目標姿勢である、ロボット制御装置100。
(付記3)
ロボット制御装置100が、
ロボット60に取り付けられた撮影装置81を用いて、ロボット60の第1の動作目標を決定するための画像処理に用いられる第1の画像と、ロボット60の第1の動作目標に続く第2の動作目標を決定するための画像処理に用いられる第2の画像とを撮影するステップ101,104と、
第1の画像及び第2の画像に基づいて、第1の動作目標及び第2の動作目標をそれぞれ決定するための画像処理を行うステップ102,105と、
1の動作目標又は第2の動作目標に基づいて、ロボット60の動作を制御するステップ103と、を実行し、
画像処理を行うステップ105は、第1の動作目標に基づくロボット60の動作が行われているときに、第2の画像に基づいて第2の動作目標を決定するための画像処理を行うことを含み、
第1の動作目標に基づくロボット60の動作が終わる前に、撮影装置82は、第2の画像を撮影する、ロボット制御方法。
(付記4)
ロボット60に取り付けられた撮影装置81に、ロボット60の第1の動作目標を決定するための画像処理に用いられる第1の画像と、ロボット60の第1の動作目標に続く第2の動作目標を決定するための画像処理に用いられる第2の画像とを撮影することを指示するステップ401,409と、
第1の画像及び第2の画像に基づいて、第1の動作目標及び第2の動作目標をそれぞれ決定するための画像処理を行うことを画像処理装置82に指示するステップ403,415と、
1の動作目標又は第2の動作目標に基づいて、ロボット60の動作を制御することをコントローラに指示するステップ405,411と、
をコンピュータシステムに実行させるロボット制御プログラム31であって、
画像処理を行うステップ416は、第1の動作目標に基づくロボット60の動作が行われているときに、第2の画像に基づいて第2の動作目標を決定するための画像処理を行うことを含み、
第1の動作目標に基づくロボット60の動作が終わる前に、撮影装置82は、第2の画像を撮影する、ロボット制御プログラム31。
10…コンピュータシステム 20…演算装置 21…CPU 22…ROM 23…RAM 30…記憶装置 31…ロボット制御プログラム 40…入出力インタフェース 50…表示装置 60…ロボット 61…エンコーダ 70…コントローラ 80…ハンドアイカメラ 81…撮影装置 82…画像処理装置 100…ロボット制御装置

Claims (4)

  1. ロボットに取り付けられた撮影装置であって、前記ロボットの第1の動作目標を決定するための画像処理に用いられる第1の画像と、前記ロボットの前記第1の動作目標に続く第2の動作目標を決定するための画像処理に用いられる第2の画像とを撮影する撮影装置と、
    前記第1の画像及び前記第2の画像に基づいて、前記第1の動作目標及び前記第2の動作目標をそれぞれ決定するための画像処理を行う画像処理装置と、
    前記1の動作目標又は前記第2の動作目標に基づいて、前記ロボットの動作を制御するコントローラと、を備え、
    前記第1の動作目標に基づく前記ロボットの動作が行われているときに、前記画像処理装置は、前記第2の画像に基づいて前記第2の動作目標を決定するための画像処理を行い、
    前記第1の動作目標に基づく前記ロボットの動作が終わる前に、前記撮影装置は、前記第2の画像を撮影する、ロボット制御装置。
  2. 請求項1に記載のロボット制御装置であって、
    前記第1の画像は、第1の物体の画像であり、
    前記第2の画像は、前記第1の物体とは異なる第2の物体の画像であり、
    前記第1の動作目標は、前記ロボットが前記第1の物体を操作するための前記ロボットの目標位置及び目標姿勢であり、
    前記第2の動作目標は、前記ロボットが前記第2の物体を操作するための前記ロボットの目標位置及び目標姿勢である、ロボット制御装置。
  3. ロボット制御装置が、
    ロボットに取り付けられた撮影装置を用いて、前記ロボットの第1の動作目標を決定するための画像処理に用いられる第1の画像と、前記ロボットの前記第1の動作目標に続く第2の動作目標を決定するための画像処理に用いられる第2の画像とを撮影するステップと、
    前記第1の画像及び前記第2の画像に基づいて、前記第1の動作目標及び前記第2の動作目標をそれぞれ決定するための画像処理を行うステップと、
    前記1の動作目標又は前記第2の動作目標に基づいて、前記ロボットの動作を制御するステップと、を実行し、
    前記画像処理を行うステップは、前記第1の動作目標に基づく前記ロボットの動作が行われているときに、前記第2の画像に基づいて前記第2の動作目標を決定するための画像処理を行うことを含み、
    前記第1の動作目標に基づく前記ロボットの動作が終わる前に、前記撮影装置は、前記第2の画像を撮影する、ロボット制御方法。
  4. ロボットに取り付けられた撮影装置に、前記ロボットの第1の動作目標を決定するための画像処理に用いられる第1の画像と、前記ロボットの前記第1の動作目標に続く第2の動作目標を決定するための画像処理に用いられる第2の画像とを撮影することを指示するステップと、
    前記第1の画像及び前記第2の画像に基づいて、前記第1の動作目標及び前記第2の動作目標をそれぞれ決定するための画像処理を行うことを画像処理装置に指示するステップと、
    前記1の動作目標又は前記第2の動作目標に基づいて、前記ロボットの動作を制御することをコントローラに指示するステップと、
    をコンピュータシステムに実行させるロボット制御プログラムであって、
    前記画像処理を行うステップは、前記第1の動作目標に基づく前記ロボットの動作が行われているときに、前記第2の画像に基づいて前記第2の動作目標を決定するための画像処理を行うことを含み、
    前記第1の動作目標に基づく前記ロボットの動作が終わる前に、前記撮影装置は、前記第2の画像を撮影する、ロボット制御プログラム。
JP2019040611A 2019-03-06 2019-03-06 ロボット制御装置、ロボット制御方法、及びロボット制御プログラム Pending JP2020142323A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019040611A JP2020142323A (ja) 2019-03-06 2019-03-06 ロボット制御装置、ロボット制御方法、及びロボット制御プログラム
CN202080004442.7A CN112566758A (zh) 2019-03-06 2020-02-17 机器人控制装置、机器人控制方法及机器人控制程序
US17/270,867 US20210197391A1 (en) 2019-03-06 2020-02-17 Robot control device, robot control method, and robot control non-transitory computer readable medium
EP20766977.1A EP3936286A4 (en) 2019-03-06 2020-02-17 ROBOT CONTROL DEVICE, ROBOT CONTROL METHOD AND ROBOT CONTROL PROGRAM
PCT/JP2020/005943 WO2020179416A1 (ja) 2019-03-06 2020-02-17 ロボット制御装置、ロボット制御方法、及びロボット制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019040611A JP2020142323A (ja) 2019-03-06 2019-03-06 ロボット制御装置、ロボット制御方法、及びロボット制御プログラム

Publications (1)

Publication Number Publication Date
JP2020142323A true JP2020142323A (ja) 2020-09-10

Family

ID=72337199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019040611A Pending JP2020142323A (ja) 2019-03-06 2019-03-06 ロボット制御装置、ロボット制御方法、及びロボット制御プログラム

Country Status (5)

Country Link
US (1) US20210197391A1 (ja)
EP (1) EP3936286A4 (ja)
JP (1) JP2020142323A (ja)
CN (1) CN112566758A (ja)
WO (1) WO2020179416A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022162784A1 (ja) * 2021-01-27 2022-08-04 日本電気株式会社 制御装置、制御方法及び記憶媒体

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6761194B2 (ja) * 2019-01-30 2020-09-23 株式会社安川電機 ロボットシステム、ロボット制御方法、ロボットコントローラ及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004160567A (ja) * 2002-11-11 2004-06-10 Fanuc Ltd 物品取出し装置
JP2009115783A (ja) * 2007-11-07 2009-05-28 Mitsubishi Electric Research Laboratories Inc シーン内の物体の3d姿勢を求める方法及びシステム
JP2014226739A (ja) * 2013-05-20 2014-12-08 三菱電機株式会社 部品払出装置および部品払出方法
JP2018161700A (ja) * 2017-03-24 2018-10-18 キヤノン株式会社 情報処理装置、システム、情報処理方法、製造方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003211381A (ja) * 2002-01-16 2003-07-29 Denso Wave Inc ロボット制御装置
JP2011093014A (ja) 2009-10-27 2011-05-12 Ihi Corp ハンドアイ式ビンピッキングロボットの制御装置
CN104802166B (zh) * 2013-10-10 2016-09-28 精工爱普生株式会社 机器人控制系统、机器人、程序以及机器人控制方法
CN108621156B (zh) * 2013-10-10 2021-08-03 精工爱普生株式会社 机器人控制装置、机器人系统、机器人以及机器人控制方法
JP6576050B2 (ja) * 2015-02-27 2019-09-18 キヤノン株式会社 物体移動方法及びシステム
JP6126183B2 (ja) * 2015-10-05 2017-05-10 ファナック株式会社 ターゲットマークを撮像するカメラを備えたロボットシステム
ES2912406T3 (es) * 2019-02-15 2022-05-25 Siemens Ag Sistema y método computarizados que usan diferentes vistas de imágenes para encontrar ubicaciones de agarre y trayectorias para una recogida robótica

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004160567A (ja) * 2002-11-11 2004-06-10 Fanuc Ltd 物品取出し装置
JP2009115783A (ja) * 2007-11-07 2009-05-28 Mitsubishi Electric Research Laboratories Inc シーン内の物体の3d姿勢を求める方法及びシステム
JP2014226739A (ja) * 2013-05-20 2014-12-08 三菱電機株式会社 部品払出装置および部品払出方法
JP2018161700A (ja) * 2017-03-24 2018-10-18 キヤノン株式会社 情報処理装置、システム、情報処理方法、製造方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022162784A1 (ja) * 2021-01-27 2022-08-04 日本電気株式会社 制御装置、制御方法及び記憶媒体
JP7494943B2 (ja) 2021-01-27 2024-06-04 日本電気株式会社 制御装置、制御方法及びプログラム

Also Published As

Publication number Publication date
WO2020179416A1 (ja) 2020-09-10
US20210197391A1 (en) 2021-07-01
EP3936286A4 (en) 2022-12-07
CN112566758A (zh) 2021-03-26
EP3936286A1 (en) 2022-01-12

Similar Documents

Publication Publication Date Title
JP6966582B2 (ja) ロボットモーション用のビジョンシステムの自動ハンドアイ校正のためのシステム及び方法
CN110573308B (zh) 用于机器人设备的空间编程的基于计算机的方法及系统
JP7027299B2 (ja) ビジョンベース操作システムのキャリブレーション及びオペレーション
CN109313417B (zh) 帮助机器人定位
JP6420229B2 (ja) 仮想物体の画像をロボットの映像に重畳表示する映像表示装置を備えるロボットシステム
US8306661B2 (en) Method and system for establishing no-entry zone for robot
US9519736B2 (en) Data generation device for vision sensor and detection simulation system
JP6499273B2 (ja) ティーチング装置及び制御情報の生成方法
US9352467B2 (en) Robot programming apparatus for creating robot program for capturing image of workpiece
WO2018043525A1 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
JP2015150636A (ja) ビジュアルフィードバックを利用したロボットシステム
WO2020179416A1 (ja) ロボット制御装置、ロボット制御方法、及びロボット制御プログラム
US20190030722A1 (en) Control device, robot system, and control method
WO2021039775A1 (ja) 画像処理装置、撮像装置、ロボット及びロボットシステム
CN110587592A (zh) 机器人控制装置、机器人控制方法及计算机可读记录介质
JP2019077026A (ja) 制御装置、ロボットシステム、制御装置の動作方法及びプログラム
CN113597362B (zh) 用于确定机器人坐标系与可移动装置坐标系之间的关系的方法和控制装置
JP6499272B2 (ja) ティーチング装置及び制御情報の生成方法
JP2015132523A (ja) 位置姿勢計測装置、位置姿勢計測方法及びプログラム
WO2023013740A1 (ja) ロボット制御装置、ロボット制御システム、及びロボット制御方法
JP2015003348A (ja) ロボット制御システム、制御装置、ロボット、ロボット制御システムの制御方法及びロボットの制御方法
CN107363831B (zh) 基于视觉的遥操作机器人控制系统及方法
JP6343930B2 (ja) ロボットシステム、ロボット制御装置、及びロボット制御方法
US20230123629A1 (en) 3d computer-vision system with variable spatial resolution
CN110900606A (zh) 一种基于小型机械臂手眼联动系统及其控制方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220121

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220610