JPWO2012140770A1 - ロボット制御装置 - Google Patents

ロボット制御装置 Download PDF

Info

Publication number
JPWO2012140770A1
JPWO2012140770A1 JP2013509715A JP2013509715A JPWO2012140770A1 JP WO2012140770 A1 JPWO2012140770 A1 JP WO2012140770A1 JP 2013509715 A JP2013509715 A JP 2013509715A JP 2013509715 A JP2013509715 A JP 2013509715A JP WO2012140770 A1 JPWO2012140770 A1 JP WO2012140770A1
Authority
JP
Japan
Prior art keywords
area
interference
hand
work
work area
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.)
Granted
Application number
JP2013509715A
Other languages
English (en)
Other versions
JP5430796B2 (ja
Inventor
則夫 松井
則夫 松井
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP5430796B2 publication Critical patent/JP5430796B2/ja
Publication of JPWO2012140770A1 publication Critical patent/JPWO2012140770A1/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • B25J9/1666Avoiding collision or forbidden zones
    • 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/40476Collision, planning for collision free path
    • 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/40478Graphic display of work area of robot, forbidden, permitted zone
    • 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/40479Use graphic display, layout of robot path, obstacles to indicate interference
    • 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/40492Model manipulator by spheres for collision avoidance
    • 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/49Nc machine tool, till multiple
    • G05B2219/49137Store working envelop, limit, allowed zone

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

ハンド(51)と周囲環境との干渉が生じない非干渉領域と、ワーク(6)を把持する際にハンド(51)が通過する可能性のあるワーク領域とを、それぞれパラメータ(421)として記憶する記憶部(42)と、取り出し動作の手順に従った命令列を含む動作記述プログラム(422)を実行し、ロボット(5)にアーム(52)を駆動させてハンド(51)を移動させ、記憶部(42)からワーク領域のパラメータ(421)を読み出し、三次元ビジョンセンサ(1)から取得したワーク(6)の位置及び姿勢に基づいて、ワーク領域の位置及び向きを演算し、記憶部(42)から非干渉領域のパラメータを読み出して周囲環境領域と位置及び向きが演算されたワーク領域との重複部分を演算し、周囲環境領域とワーク領域とに重複部分が存在している場合、ワーク領域内にハンド(51)が進入した際に、干渉時動作として規定された動作を実行する制御部(43)とを有する。

Description

本発明は、ロボット制御装置に関する。
従来、ロボットと三次元ビジョンセンサとに接続されるロボット制御装置は、三次元ビジョンセンサで認識された対象ワークに対してロボットのアームの先端に取り付けたハンドでロボットを取り出し上空位置から対象ワークが検出された位置へ移動させ、対象ワークを取り出す。この際、ロボット制御装置は、上空位置から三次元ビジョンセンサが対象ワークを認識検出した位置へハンドを移動させるようにアームを動かして対象ワークを取り出す作業を行う。
上空位置から三次元ビジョンセンサで対象ワークを認識検出された位置へハンドを直線的に移動する場合、周囲環境(周辺治具、対象ワークが納められている箱)に干渉することがある。この場合、干渉となる対象ワークを避けて干渉しない領域を求め上空位置から対象ワークが検出された位置へ移動させる必要がある。
干渉となる領域を避けて干渉しない領域を求め移動させるには、ロボットが配置された様々な周辺環境が想定されるため、その都度、周辺環境にあった個別のプログラム(ロボットの移動条件を管理するために作成された言語を用いた制御手順)を作成する必要がある。さらに、周囲環境が複雑な形状であったり、周囲環境が途中変更されたり追加されたりするごとにプログラムを改造する手間が発生する。
特許文献1に記載の発明は、把持対象物の近傍空間に把持位置を頂点とする所定の大きさの空間錘に分割するとともに、この空間錘の中から周囲物体との干渉がない開放空間錘を選択し、得られた開放空間錘について周囲物体からの距離を求め、その距離に基づいて把持姿勢を決定する技術が開示されている。
特開平4−167104号公報
しかしながら、上空位置から把持位置へ移動する際には、アームの姿勢及び移動方向は決まっている。したがって、上空位置から把持位置へ移動の際の周囲環境との干渉を検討するにあたっては、上記特許文献のように、複数の空間錘による把持位置を中心とした多面体で、全方位について周囲環境との干渉を検討すると、ロボット処理装置の処理負荷が増大し、処理が遅くなってしまうという問題があった。
本発明は、上記に鑑みてなされたものであって、周囲環境に合わせて動作記述プログラムを変更する必要のないロボット制御装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、ワーク検出手段が検出したワークをハンドで把持して移動させる取り出し動作を、アームの先端に前記ハンドが設置されたロボットに行わせるロボット制御装置であって、ハンドと周囲環境との干渉が生じない非干渉領域と、ワークを把持する際にハンドが通過する可能性のあるワーク領域とを、それぞれパラメータとして記憶するパラメータ記憶手段と、取り出し動作の手順に従って記述された命令列を含む動作記述プログラムを実行し、ロボットにアームを駆動させてハンドを移動させるプログラム実行手段と、パラメータ記憶手段からワーク領域のパラメータを読み出し、ワーク検出手段から取得したワークの位置及び姿勢に基づいて、ワーク領域の位置及び向きを演算するワーク領域演算手段と、パラメータ記憶手段から非干渉領域のパラメータを読み出して、非干渉領域を除いた周囲環境領域とワーク領域演算手段によって位置及び向きが演算されたワーク領域との重複部分を演算する重複部分演算手段と、周囲環境領域とワーク領域演算手段によって位置及び向きが演算されたワーク領域とに重複部分が存在している場合、ワーク領域内にハンドが進入した際に、干渉時動作として予め規定された動作を実行する干渉時動作実行手段とを有することを特徴とする。
本発明にかかるロボット制御装置は、ハンドが進入すると周囲環境との干渉が生じる干渉領域と、ワークを把持する際にハンドが通過しうるワーク領域の形状とをパラメータとして動作記述プログラムとは別個に設定できるため、周囲環境に合わせて動作記述プログラムを変更する必要がないという効果を奏する。
図1は、本発明にかかるロボット制御装置の実施の形態を用いたロボット制御システムの構成を示す図である。 図2は、非干渉領域の設定の一例を示す図である。 図3Aは、ワーク領域を立方体形状に設定する一例を示す図である。 図3Bは、ワーク領域を円柱形状に設定する一例を示す図である。 図3Cは、ワーク領域を円錐形状に設定する一例を示す図である。 図3Dは、ワーク領域を頂点側が除かれた部分円錐形状(テーパ柱形状)に設定する一例を示す図である。 図4は、傾いてないワークをハンドが取り出す状態の一例を示す図である。 図5は、傾いているワークをハンドが取り出す状態の別の一例を示す図である。 図6は、ワークを取り出す際にハンドが周囲環境と干渉する状態の一例を示す図である。 図7は、周囲環境領域とワーク領域とに重複する部分が存在する場合の一例を示す図である。 図8は、周囲環境領域とワーク領域とに重複する部分が存在しない場合の一例を示す図である。 図9は、初期設定の流れを示す図である。 図10は、動作記述プログラムの一例を示す図である。 図11は、領域干渉確認動作時のロボット制御装置の動作の流れを示す図である。
以下に、本発明にかかるロボット制御システムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
図1は、本発明にかかるロボット制御装置の実施の形態を用いたロボット制御システムの構成を示す図である。ロボット制御システムは、三次元ビジョンセンサ1、ティーチングボックス(T/B)2、コンピュータ3、ロボット制御装置4及びロボット5を備え、ロボット5でワーク6を把持して移動させる動作を行う。
ワーク検出手段としての三次元ビジョンセンサ1は、撮像により画像データを生成する撮像部11と、撮像部11が生成した画像データを処理してロボットの座標データを生成するロボット座標生成部12とを有する。
ロボット制御装置4は、三次元ビジョンセンサ1やT/B2、コンピュータ3とのデータの送受信のためのインタフェース(I/F)41と、各種のパラメータ421、動作記述プログラム422及び制御プログラム423を格納する記憶部42と、動作記述プログラム422や制御プログラム423を実行する制御部43と、ロボット5が備えるサーボモータへ制御信号を出力するサーボアンプ44とを有する。
パラメータ421は、後段で説明する初期設定によってパラメータ記憶手段としての記憶部42に記憶される。動作記述プログラム422は、三次元ビジョンセンサ1が検出したワーク6をハンド51で把持して移動させる取り出し動作をロボット5に行わせる自動運転ための動作を記述したプログラムリストであり、取り出し動作の手順に従って記述された命令列(コマンド列)を含んでいる。制御プログラム423は、動作記述プログラム422中で実行されるコマンド又はT/B2による操作に応じてロボット5に動作をさせるためにサーボアンプ44へ送る命令を示す。サーボアンプ44は、ロボット5に搭載された不図示のサーボモータを駆動して、ロボット5に所定の動作を実行させる。
コンピュータ3は、パラメータ421などのデータの入力や、動作記述プログラム423の作成、後段で説明する警告表示などを行うユーザインタフェースとして用いられる。
T/B2は、手動操作でロボット5を制御するための入力インタフェースである。
ロボット5は、ワーク6を把持するためのハンド51と、ハンド51を非干渉領域内の任意の位置へ移動させるためのアーム52と、ハンド51やアーム52を動作させるサーボモータ53とを有する。ハンド51及びアーム52は、サーボモータ53がサーボアンプ44からの制御信号で駆動されることによって動作する。
上記構成において、動作記述プログラム422中のハンド51を所定位置へ動かすコマンドを実行する場合には、制御部43は制御プログラム423として記憶されている命令によって、サーボアンプ44に指令を送って制御信号を出力させ、ロボット5のサーボモータ53を駆動させてアーム52を動かすことによりハンド51を移動させる。
初期設定では、非干渉領域、ワーク領域、干渉時動作及び領域干渉確認の実行の有無が設定される。
周囲環境と干渉を生じることなくハンドを移動させることが可能な領域である非干渉領域は初期設定によってパラメータ421として記憶部42に設定される。非干渉領域は、座標位置や寸法を数値として指定することで設定される。図2は、非干渉領域の設定の一例を示す図である。ロボット5の座標系がXYZABCの6軸座標系であるならば、座標空間内に2点を指定する(図2では、P及びP)ことで、指定した2点を頂点として含む直方体を非干渉領域として設定できる。ここで、X、Y、Zは、座標基準位置(例えばアーム52の付け根)からのX方向、Y方向、Z方向の距離であり、A、B、Cは、X座標軸、Y座標軸、Z座標軸の回転角度である。これにより、非干渉領域を除いた空間が周囲環境領域(干渉領域)として間接的に設定される。なお、非干渉領域を複数設定することにより、複雑な形状の周囲環境領域を設定することも可能である。
ワーク領域は、三次元ビジョンセンサ1で検出したワーク6を把持する際にハンド51が通過する可能性があると見なす領域であり、三次元ビジョンセンサ1で検出したワークの位置を基準としてどのような形状(立方体、円柱、円錐など)及び大きさとするかが設定される。空間内での幾何学図形状の領域の定義には公知の方法を適用可能である。例えば、円錐状の領域を定義する場合には、高さ及び底面半径と、軸方向とを指定すれば良い。図3Aは、ワーク領域を立方体形状に設定する一例を示す図である。図3Bは、ワーク領域を円柱形状に設定する一例を示す図である。図3Cは、ワーク領域を円錐形状に設定する一例を示す図である。図3Dは、ワーク領域を頂点側が除かれた部分円錐形状(テーパ柱形状)に設定する一例を示す図である。
図4は、傾いていないワーク6をハンド51が取り出す状態の一例を示す図である。ワーク6が傾いていない場合には、ハンド51はワーク6の鉛直上方の所定の距離離れた取り出し上空位置に配置された後に、把持位置まで移動してワーク6を把持する。したがって、この場合には、ワーク領域はワーク6の鉛直上方に設けられる。
図5は、傾いているワーク6をハンド51が取り出す状態の一例を示す図である。ワーク6が傾いている場合には、ハンド51はワーク6の傾きに合わせて傾けられた状態でワーク6の垂線方向の所定距離離れた取り出し上空位置に配置された後に、把持位置まで移動してワーク6を把持する。したがって、この場合には、ワーク領域はワーク6の斜め上方に設けられる。
図6は、ワーク6を取り出す際にハンドが周囲環境と干渉する状態の一例を示す図である。ワーク6が傾いている場合、把持位置や取り出し上空位置において周囲環境と干渉しなくても、取り出し上空位置やそこから把持位置へ移動する際にハンド51が周囲環境と干渉する可能性がある。周囲環境領域とワーク領域とが重複する部分が存在する場合、すなわち、ワーク領域が非干渉領域からはみ出る場合には、ハンド51が周囲環境と干渉する可能性があると判断できる。図7は、周囲環境領域とワーク領域とが重複する部分が存在する場合の一例を示す図であり、ワーク6の斜め上方に設けられたワーク領域30は、非干渉領域20からはみ出しており、ハンド51は周囲環境と干渉している。図8は、周囲環境領域とワーク領域とが重複する部分が存在しない場合の一例を示す図であり、ワーク6の斜め上方に設けられたワーク領域30は、非干渉領域20からはみ出しておらず、ハンド51が周囲環境と干渉する可能性がないと判断できる。
干渉時動作は、ハンド51を移動させると周囲環境との干渉が生じる可能性がある場合に干渉時動作としてどのような処理を行うかの設定であり、例えば、エラー停止によりハンド51の移動を停止させる処理や、警告表示を行った上でハンド51の移動を継続させる処理などを設定する。
領域干渉確認有りとする(領域干渉確認動作モードとする)設定がなされた場合、自動運転時は動作記述プログラム422の記述によらず、ハンド51を移動させる際に常に領域干渉確認動作を行う。領域干渉確認無しとの設定がなされた場合、領域干渉確認動作は行わない。ただし、動作記述プログラム422に領域干渉確認開始命令が含まれている場合には、その命令の実行後は動作記述プログラム422中の領域干渉確認終了命令が実行されるまで、領域干渉確認動作を実行する。このように動作記述プログラム422中の領域干渉確認命令にしたがって領域干渉確認動作を行う場合には、非干渉領域及び周辺環境の領域設定は、動作記述プログラム422中で行うことも可能である。なお、パラメータ421と動作記述プログラム422との両方で非干渉領域及び周辺環境の領域を設定することも可能である。また、ワーク領域の設定に関しても、動作記述プログラム422による設定も可能である。
図9は、初期設定の流れを示す図である。まず、コンピュータ3を介して領域パラメータや干渉時動作などを入力し、記憶部42にパラメータ421を記憶させる(ステップS101)。また、領域干渉確認実行の有無の設定についてもパラメータ421として記憶部42に記憶させる(ステップS102)。これらの設定が完了した後、制御部43は、領域干渉確認動作の実行をする設定がなされたか否かを確認する(ステップS103)。領域干渉確認動作を行わない設定の場合は(ステップS103/No)、初期設定は終了する。領域干渉確認動作を実行する設定がされた場合には(ステップS103/Yes)、外部環境とワーク領域との両方がパラメータ421として設定されているか否かを確認し(ステップS104)、これらの少なくとも一方が設定されていない場合には(ステップS104/No)、領域干渉確認動作を実行できない旨をエラー表示した上で領域干渉確認動作の実行の設定を無効に変更して(ステップS105)、初期設定を終了する。両方が設定されている場合は(ステップS104/Yes)、領域干渉確認動作が可能であるため、エラー表示は行わずに初期設定を終了する。
次に、ロボット5の自動運転時の動作について説明する。制御部43がプログラム実行手段として機能し、動作記述プログラム422を実行することにより、ロボット5は、動作記述プログラム422に従った手順で、三次元ビジョンセンサ1が位置及び姿勢(傾き)を検出したワーク6に対して取り出し作業を行うべく動作する。パラメータ421や動作記述プログラム422によって設定された領域に基づく領域干渉確認動作を有効にすることで、制御部43はワーク領域演算手段として機能し、ワーク領域を演算する。また、制御部43は、重複部分演算手段としても機能し、周囲環境領域とワーク領域との重複部分を演算する。制御部43は、ハンド51を上空位置へ移動させる際に、領域演算結果に基づいてハンド51が周囲環境と干渉することなく動作可能であるか否かを判断し、移動可能な場合はエラー出力することなく継続して作業を進める。ハンド51が周囲環境と干渉する可能性がある場合には、制御部43は干渉時動作実行手段として機能し、ハンド51がワーク領域に入った時点で干渉時動作として指定された動作(ロボット5のエラー停止、警告表示など)を行う。
図10は、動作記述プログラム422の一例を示す図である。図10において動作記述プログラム422には、非干渉領域内の所定の位置P0にハンド51を移動させたのち、上空位置P1にハンドを移動させ、さらに把持位置P2にハンド51を移動させてからハンド51でワーク6を把持し、上空位置P1にハンド51を移動させる動作が記述されている。この例においては動作記述プログラム422中に領域干渉確認動作の開始及び終了の命令(領域干渉確認動作実行命令)が含まれているため、パラメータ421による設定に関わらず、P0から上空位置P1へハンド51を移動させる際と、上空位置P1から把持位置P2へハンド51を移動させる際には領域干渉確認動作を実行する。
図11は、領域干渉確認動作時のロボット制御装置4の動作の流れを示す図である。領域干渉確認動作中でない場合、処理を行うことなく終了する(ステップS201/No)。領域干渉確認動作を開始すると(ステップS201/Yes)、制御部43は、ワーク領域演算手段として機能し、三次元ビジョンセンサ1から入力されたワークの座標位置と、パラメータ421又は動作記述プログラム422に設定されている形状に基づいてワーク領域を算出する。また、制御部43は、重複部分演算手段としても機能し、周囲環境領域を間接的に設定する非干渉領域のパラメータ421を記憶部42から読み出し、周囲環境領域とワーク領域との重複部分を演算する(ステップS202)。
次に、制御部43は、状態変数の値を確認する(ステップS203)。状態変数は、ワーク領域と周囲環境領域とに重複する部分があり、かつ、ハンド51の現在位置がワーク領域内である場合に“1”となり、それ以外の場合に“0”となる変数である。状態変数の初期値は“0”であるとする。状態変数が“0”である場合には(ステップS203/0)、ハンド51が移動しても周囲環境と干渉する可能性はないため、制御部43はサーボアンプ44を用いてロボット5のサーボモータを駆動し、アーム52を動かしてハンド51を移動させる(ステップS204)。ハンド51を移動させた後、制御部43は動作記述プログラム422で指定された位置にハンド51が到達したか否かを判断する(ステップS205)。動作記述プログラム422で指定された位置にハンド51が到達したならば(ステップS205/Yes)、処理を終了する。
動作記述プログラム422中の命令で指定された位置にハンド51が到達していない場合(ステップS205/No)、ワーク領域と周囲環境領域とに重複する部分があり、かつ、ハンド51の現在位置がワーク領域内であるか否かを確認する(ステップS206)。ワーク領域と周囲環境領域とに重複する部分があり、かつ、ハンド51の現在位置がワーク領域内である場合には(ステップS206/Yes)、状態変数に“1”を設定し(ステップS207)、そうでなければ(ステップS206/No)、状態変数に“0”を設定する(ステップS208)。その後、ステップS203に戻る。
状態変数を確認した際に、値が“1”であった場合は(ステップS203/1)、パラメータ421として設定されている干渉時動作を確認する(ステップS209)。干渉時動作が“エラー”である場合には(ステップS209/エラー)、ハンド51を動かさずに処理を終了する。干渉時動作をこのように設定した場合には、周囲環境と干渉する可能性がある領域内でハンド51を移動させないようにすることができる。よって、ハンド51が周囲環境と干渉して破損することを防止し、ロボット5の長期使用が可能となる。また、ハンド51の交換の必要が少なくなるため、生産設備としての環境負荷を低減できる。また、干渉時動作が“信号出力”である場合には(ステップS209/信号出力)、周囲環境と干渉する可能性がある領域内でハンド51が移動していることを警告表示し(ステップS210)、その上でアームを動かしてハンド51を移動させる(ステップS204)。周囲環境領域とワーク領域とに重複する部分がある場合でも、ハンド51が実際に周囲環境と干渉するとは限らないため、干渉時動作をこのように設定して警告表示を行った上でハンド51の移動を継続することで、作業能率を高めることができる。ハンド51が周囲環境と干渉するとしても、事前に警告表示がなされているため、実際に干渉を生じる前にT/B2からの操作でハンド51の移動を停止させたり、干渉発生後速やかにハンド51の移動を停止させることが可能となる。なお、干渉時動作として“無効”を設定することも可能であり、この場合には、状態変数の値に関わらずアーム52を動かしてハンド51を移動させる。
ここでは、動作記述プログラム422を実行して自動運転する場合を例として説明したが、T/B2の操作によって制御プログラム43を動作させてサーボアンプ44へ制御信号を送る手動運転時も、初期設定において領域干渉確認動作を実行可能な設定がなされているならば、状態変数に応じてハンド51の移動を停止させたり、警告表示を行うことが可能である。このため、T/B2での操作によって干渉しない領域へロボット5を移動させた上で、プログラムの変更や修正を行うことが容易である。
このように、本実施の形態においては、プログラム作成者は、ロボットの干渉状態を配置された周囲環境に応じて個別に干渉条件を毎回演算して求める必要はなく、ロボットの状態変数を確認することで容易に作成することが可能となる。さらに、状態変数は、プログラム作成用のコンピュータにおいて容易に確認可能であり、三次元立体図として可視化して確認できる。
1 三次元ビジョンセンサ
2 T/B
3 コンピュータ
4 ロボット制御装置
5 ロボット
11 撮像部
12 ロボット座標生成部
41 I/F
42 記憶部
43 制御部
44 サーボアンプ
51 ハンド
52 アーム
421 パラメータ
422 動作記述プログラム
423 制御プログラム
【0001】
技術分野
[0001]
本発明は、ロボット制御装置に関する。
背景技術
[0002]
従来、ロボットと三次元ビジョンセンサとに接続されるロボット制御装置は、三次元ビジョンセンサで認識された対象ワークに対して、ロボットを取り出し上空位置から対象ワークが検出された位置へ移動させ、ロボットのアームの先端に取り付けたハンドで対象ワークを取り出す。この際、ロボット制御装置は、上空位置から三次元ビジョンセンサが対象ワークを認識検出した位置へハンドを移動させるようにアームを動かして対象ワークを取り出す作業を行う。
[0003]
上空位置から三次元ビジョンセンサで対象ワークを認識検出された位置へハンドを直線的に移動する場合、周囲環境(周辺治具、対象ワークが納められている箱)に干渉することがある。この場合、干渉となる領域を避けて干渉しない領域を求め上空位置から対象ワークが検出された位置へ移動させる必要がある。
[0004]
干渉となる領域を避けて干渉しない領域を求め移動させるには、ロボットが配置された様々な周辺環境が想定されるため、その都度、周辺環境にあった個別のプログラム(ロボットの移動条件を管理するために作成された言語を用いた制御手順)を作成する必要がある。さらに、周囲環境が複雑な形状であったり、周囲環境が途中変更されたり追加されたりするごとにプログラムを改造する手間が発生する。
[0005]
特許文献1には、把持対象物の近傍空間に把持位置を頂点とする所定の大きさの空間錘に分割するとともに、この空間錘の中から周囲物体との干渉がない開放空間錘を選択し、得られた開放空間錘について周囲物体からの距離を求め、その距離に基づいて把持姿勢を決定する技術が開示され
【0005】
ビジョンセンサ1が検出したワーク6をハンド51で把持して移動させる取り出し動作をロボット5に行わせる自動運転ための動作を記述したプログラムリストであり、取り出し動作の手順に従って記述された命令列(コマンド列)を含んでいる。制御プログラム423は、動作記述プログラム422中で実行されるコマンド又はT/B2による操作に応じてロボット5に動作をさせるためにサーボアンプ44へ送る命令を示す。サーボアンプ44は、ロボット5に搭載された不図示のサーボモータを駆動して、ロボット5に所定の動作を実行させる。
[0017]
コンピュータ3は、パラメータ421などのデータの入力や、動作記述プログラム422の作成、後段で説明する警告表示などを行うユーザインタフェースとして用いられる。
[0018]
T/B2は、手動操作でロボット5を制御するための入力インタフェースである。
[0019]
ロボット5は、ワーク6を把持するためのハンド51と、ハンド51を非干渉領域内の任意の位置へ移動させるためのアーム52と、ハンド51やアーム52を動作させるサーボモータ53とを有する。ハンド51及びアーム52は、サーボモータ53がサーボアンプ44からの制御信号で駆動されることによって動作する。
[0020]
上記構成において、動作記述プログラム422中のハンド51を所定位置へ動かすコマンドを実行する場合には、制御部43は制御プログラム423として記憶されている命令によって、サーボアンプ44に指令を送って制御信号を出力させ、ロボット5のサーボモータ53を駆動させてアーム52を動かすことによりハンド51を移動させる。
[0021]
初期設定では、非干渉領域、ワーク領域、干渉時動作及び領域干渉確認の実行の有無が設定される。
[0022]
周囲環境と干渉を生じることなくハンドを移動させることが可能な領域である非干渉領域は初期設定によってパラメータ421として記憶部42に設定される。非干渉領域は、座標位置や寸法を数値として指定することで設定
【0008】
で非干渉領域及び周辺環境の領域を設定することも可能である。また、ワーク領域の設定に関しても、動作記述プログラム422による設定も可能である。
[0029]
図9は、初期設定の流れを示す図である。まず、コンピュータ3を介して領域パラメータや干渉時動作などを入力し、記憶部42にパラメータ421を記憶させる(ステップS101)。また、領域干渉確認実行の有無の設定についてもパラメータ421として記憶部42に記憶させる(ステップS102)。これらの設定が完了した後、制御部43は、領域干渉確認動作の実行をする設定がなされたか否かを確認する(ステップS103)。領域干渉確認動作を行わない設定の場合は(ステップS103/No)、初期設定は終了する。領域干渉確認動作を実行する設定がされた場合には(ステップS103/Yes)、非干渉領域とワーク領域との両方がパラメータ421として設定されているか否かを確認し(ステップS104)、これらの少なくとも一方が設定されていない場合には(ステップS104/No)、領域干渉確認動作を実行できない旨をエラー表示した上で領域干渉確認動作の実行の設定を無効に変更して(ステップS105)、初期設定を終了する。両方が設定されている場合は(ステップS104/Yes)、領域干渉確認動作が可能であるため、エラー表示は行わずに初期設定を終了する。
[0030]
次に、ロボット5の自動運転時の動作について説明する。制御部43がプログラム実行手段として機能し、動作記述プログラム422を実行することにより、ロボット5は、動作記述プログラム422に従った手順で、三次元ビジョンセンサ1が位置及び姿勢(傾き)を検出したワーク6に対して取り出し作業を行うべく動作する。パラメータ421や動作記述プログラム422によって設定された領域に基づく領域干渉確認動作を有効にすることで、制御部43はワーク領域演算手段として機能し、ワーク領域を演算する。また、制御部43は、重複部分演算手段としても機能し、周囲環境領域とワーク領域との重複部分を演算する。制御部43は、ハンド51を上空位置へ移動させる際に、領域演算結果に基づいてハンド51が周囲環境と干渉するこ

Claims (6)

  1. ワーク検出手段が検出したワークをハンドで把持して移動させる取り出し動作を、アームの先端に前記ハンドが設置されたロボットに行わせるロボット制御装置であって、
    前記ハンドと周囲環境との干渉が生じない非干渉領域と、前記ワークを把持する際に前記ハンドが通過する可能性のあるワーク領域とを、それぞれパラメータとして記憶するパラメータ記憶手段と、
    前記取り出し動作の手順に従って記述された命令列を含む動作記述プログラムを実行し、前記ロボットに前記アームを駆動させて前記ハンドを移動させるプログラム実行手段と、
    前記パラメータ記憶手段から前記ワーク領域のパラメータを読み出し、前記ワーク検出手段から取得した前記ワークの位置及び姿勢に基づいて、前記ワーク領域の位置及び向きを演算するワーク領域演算手段と、
    前記パラメータ記憶手段から前記非干渉領域のパラメータを読み出して、前記非干渉領域を除いた周囲環境領域と前記ワーク領域演算手段によって位置及び向きが演算された前記ワーク領域との重複部分を演算する重複部分演算手段と、
    前記周囲環境領域と前記ワーク領域演算手段によって位置及び向きが演算された前記ワーク領域とに重複部分が存在している場合、前記ワーク領域内に前記ハンドが進入した際に、干渉時動作として予め規定された動作を実行する干渉時動作実行手段とを有することを特徴とするロボット制御装置。
  2. 前記動作記述プログラムは、領域干渉確認動作実行命令を含み、
    前記ワーク領域演算手段、前記重複部分演算手段及び前記干渉時動作実行手段は、前記領域干渉確認動作実行命令が前記プログラム実行手段によって実行された際に作動することを特徴とする請求項1記載のロボット制御装置。
  3. 前記ワーク領域演算手段、前記重複部分演算手段及び前記干渉時動作実行手段を、前記プログラム実行手段が前記動作記述プログラムを実行する間作動させるように動作モードを指定する手段を有することを特徴とする請求項1記載のロボット制御装置。
  4. 前記干渉時動作は、前記ハンドの移動の中止であることを特徴とする請求項1記載のロボット制御装置。
  5. ティーチングボックスから入力される指令に基づいて前記ロボットに前記アームを駆動させ、前記ハンドを移動させる手段を有することを特徴とする請求項1記載のロボット制御装置。
  6. 前記パラメータ記憶手段は、前記非干渉領域のパラメータを複数記憶可能であり、
    前記干渉時動作実行手段は、前記パラメータ記憶手段にパラメータが記憶された複数の前記非干渉領域のいずれにも含まれない領域を周囲干渉領域として作動することを特徴とする請求項1から5のいずれか1項記載のロボット制御装置。
JP2013509715A 2011-04-14 2011-04-14 ロボット制御装置 Expired - Fee Related JP5430796B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/059298 WO2012140770A1 (ja) 2011-04-14 2011-04-14 ロボット制御装置

Publications (2)

Publication Number Publication Date
JP5430796B2 JP5430796B2 (ja) 2014-03-05
JPWO2012140770A1 true JPWO2012140770A1 (ja) 2014-07-28

Family

ID=47008972

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013509715A Expired - Fee Related JP5430796B2 (ja) 2011-04-14 2011-04-14 ロボット制御装置

Country Status (6)

Country Link
US (1) US9132546B2 (ja)
JP (1) JP5430796B2 (ja)
CN (1) CN103492134B (ja)
DE (1) DE112011105151B4 (ja)
TW (1) TWI474905B (ja)
WO (1) WO2012140770A1 (ja)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE537534C2 (sv) * 2013-08-27 2015-06-02 Cognibotics Ab Metod och system för bestämning av åtminstone en egenskap hos en manipulator
JP5785284B2 (ja) 2014-02-17 2015-09-24 ファナック株式会社 搬送対象物の落下事故を防止するロボットシステム
JP6364856B2 (ja) * 2014-03-25 2018-08-01 セイコーエプソン株式会社 ロボット
US10403238B2 (en) * 2014-06-03 2019-09-03 Lenovo (Singapore) Pte. Ltd. Presentation of representations of input with contours having a width based on the size of the input
JP6137155B2 (ja) 2014-12-09 2017-05-31 トヨタ自動車株式会社 干渉回避方法、制御装置及びプログラム
US9561587B2 (en) * 2014-12-16 2017-02-07 Amazon Technologies, Inc. Robotic grasping of items in inventory system
DE102014019209A1 (de) * 2014-12-19 2016-06-23 Daimler Ag Verfahren zum Betreiben eines Roboters
JP6088563B2 (ja) * 2015-02-10 2017-03-01 ファナック株式会社 位置及び姿勢の変換演算機能を備えたワーク取出しロボットシステム、及びワーク取出し方法
JP6572687B2 (ja) * 2015-09-02 2019-09-11 トヨタ自動車株式会社 把持可否判定方法
WO2017113308A1 (zh) * 2015-12-31 2017-07-06 深圳配天智能技术研究院有限公司 一种机器人控制方法及控制设备
CN105945955B (zh) * 2016-07-26 2017-07-18 耿跃峰 一种自动机械臂
JP6275345B1 (ja) * 2017-02-03 2018-02-07 三菱電機株式会社 変換係数算出装置、変換係数算出方法及び変換係数算出プログラム
JP2018176334A (ja) * 2017-04-10 2018-11-15 キヤノン株式会社 情報処理装置、計測装置、システム、干渉判定方法および物品の製造方法
JP6455646B1 (ja) 2017-04-19 2019-01-23 株式会社安川電機 プログラミング支援装置、ロボットシステム、プログラミング支援方法及びプログラム生成方法
JP6687591B2 (ja) 2017-12-26 2020-04-22 ファナック株式会社 物品搬送装置、ロボットシステムおよび物品搬送方法
DE102018205669B4 (de) * 2018-04-13 2021-12-23 Kuka Deutschland Gmbh Aufnehmen von Nutzlasten mittels eines robotergeführten Werkzeugs
JP7119556B2 (ja) * 2018-05-15 2022-08-17 オムロン株式会社 多関節ロボットの干渉判定装置、多関節ロボットの干渉判定方法、多関節ロボットの干渉判定プログラム、及び経路計画生成装置
JP6833777B2 (ja) * 2018-09-10 2021-02-24 株式会社東芝 物体ハンドリング装置及びプログラム
US10696494B1 (en) 2019-05-31 2020-06-30 Mujin, Inc. Robotic system for processing packages arriving out of sequence
US10647528B1 (en) 2019-05-31 2020-05-12 Mujin, Inc. Robotic system for palletizing packages using real-time placement simulation
US11077554B2 (en) 2019-05-31 2021-08-03 Mujin, Inc. Controller and control method for robotic system
US10679379B1 (en) 2019-05-31 2020-06-09 Mujin, Inc. Robotic system with dynamic packing mechanism
US10618172B1 (en) 2019-05-31 2020-04-14 Mujin, Inc. Robotic system with error detection and dynamic packing mechanism
US10696493B1 (en) 2019-05-31 2020-06-30 Mujin, Inc. Robotic system with packing mechanism
JP7204587B2 (ja) 2019-06-17 2023-01-16 株式会社東芝 物体ハンドリング制御装置、物体ハンドリング装置、物体ハンドリング方法および物体ハンドリングプログラム
US20210379762A1 (en) * 2019-08-23 2021-12-09 Scott Denenberg Motion planning and task execution using potential occupancy envelopes
US20220241978A1 (en) * 2021-02-01 2022-08-04 The Boeing Company Robotic manufacturing systems and methods
CN113134832A (zh) * 2021-03-16 2021-07-20 无锡信捷电气股份有限公司 一种桁架机器人安全区域的设定方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5325468A (en) 1990-10-31 1994-06-28 Sanyo Electric Co., Ltd. Operation planning system for robot
JPH0774970B2 (ja) 1990-10-31 1995-08-09 三洋電機株式会社 ロボットの作業計画装置
JPH05324032A (ja) 1992-05-19 1993-12-07 Citizen Watch Co Ltd ロボットの動作領域設定方法
US5835684A (en) * 1994-11-09 1998-11-10 Amada Company, Ltd. Method for planning/controlling robot motion
JP4103057B2 (ja) * 1998-06-29 2008-06-18 株式会社安川電機 ロボットの動作経路計画方法およびその装置
JP2000039912A (ja) 1998-07-22 2000-02-08 Meidensha Corp ロボット制御装置
JP3782679B2 (ja) * 2001-05-09 2006-06-07 ファナック株式会社 干渉回避装置
WO2004106009A1 (ja) * 2003-06-02 2004-12-09 Matsushita Electric Industrial Co., Ltd. 物品操作システムおよび方法、並びに物品管理システムおよび方法
JP2006099260A (ja) * 2004-09-28 2006-04-13 Fanuc Ltd ロボットプログラム作成装置
JP4507250B2 (ja) * 2004-10-29 2010-07-21 アイダエンジニアリング株式会社 トランスファプレス機械
JP2006346790A (ja) 2005-06-15 2006-12-28 Toyota Motor Corp ロボットと干渉判別方法と干渉判別装置
JP2007334678A (ja) * 2006-06-15 2007-12-27 Fanuc Ltd ロボットシミュレーション装置
DE102007026956A1 (de) 2007-06-12 2008-12-18 Kuka Innotec Gmbh Verfahren und System zum Roboter geführten Depalettieren von Reifen
JP5155144B2 (ja) 2008-12-26 2013-02-27 ファナック株式会社 ロボットの動作許容領域の自動設定装置

Also Published As

Publication number Publication date
CN103492134A (zh) 2014-01-01
TWI474905B (zh) 2015-03-01
CN103492134B (zh) 2016-05-04
JP5430796B2 (ja) 2014-03-05
DE112011105151T5 (de) 2014-01-09
TW201240779A (en) 2012-10-16
DE112011105151B4 (de) 2018-09-13
WO2012140770A1 (ja) 2012-10-18
US9132546B2 (en) 2015-09-15
US20140018959A1 (en) 2014-01-16

Similar Documents

Publication Publication Date Title
JP5430796B2 (ja) ロボット制御装置
JP6717768B2 (ja) 生産ラインにおける運用を考慮した学習制御を行うロボット及びその制御方法
JP3782679B2 (ja) 干渉回避装置
JP5281414B2 (ja) ワーク自動把持のための方法及びシステム
JP4153528B2 (ja) ロボットシミュレーションのための装置、プログラム、記録媒体及び方法
JP5929854B2 (ja) ロボットシステムおよび被加工物の製造方法
JP6931457B2 (ja) モーション生成方法、モーション生成装置、システム及びコンピュータプログラム
JP5872894B2 (ja) ロボット動作教示支援装置及び方法
JP6088563B2 (ja) 位置及び姿勢の変換演算機能を備えたワーク取出しロボットシステム、及びワーク取出し方法
JP2012223845A (ja) ロボットの着目部位と周辺物との干渉を予測する方法及び装置
JP2019188580A (ja) 情報処理装置、制御方法、ロボットシステム、コンピュータプログラム、及び記憶媒体
JP2009090403A (ja) ロボット動作範囲設定装置
JP2015168053A (ja) 教示作業を簡易化し、動作性能を向上させる機能を備えたロボット制御装置
JP2018062026A (ja) ロボットの速度や加速度を制限する機能を備えたロボット制御装置
JP2018176333A (ja) 接触センサによるワーク位置検出プログラム生成機能を備えたオフラインプログラミング装置及び方法
JP4750200B2 (ja) ロボット動作範囲設定装置
JP6526097B2 (ja) ロボットシステム
JP2016159406A (ja) ロボット制御装置、ロボット制御方法及びロボットシステム
JP2020082253A (ja) 画像情報処理装置、把持システム、および画像情報処理方法
JP7310831B2 (ja) 制御装置、制御方法、ロボット装置、プログラムおよび非一時的な機械可読媒体
JP5857803B2 (ja) 産業用機械の干渉判定装置、干渉判定方法、コンピュータプログラムおよび記録媒体
JP5382419B2 (ja) 原点サーチ支援装置及びプログラム
WO2022030414A1 (ja) ロボットの構成部材の干渉を検出するロボット装置
WO2024023934A1 (ja) ワーク取出し装置、ワーク取出し方法及び制御装置
JP7405960B2 (ja) ロボットの制御装置及び制御方法、ロボットシステム、ロボットの動作プログラムを生成する装置及び方法

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131203

R150 Certificate of patent or registration of utility model

Ref document number: 5430796

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees