JP6223640B2 - キャリブレーション装置およびこれを用いたロボットシステム - Google Patents

キャリブレーション装置およびこれを用いたロボットシステム Download PDF

Info

Publication number
JP6223640B2
JP6223640B2 JP2017525259A JP2017525259A JP6223640B2 JP 6223640 B2 JP6223640 B2 JP 6223640B2 JP 2017525259 A JP2017525259 A JP 2017525259A JP 2017525259 A JP2017525259 A JP 2017525259A JP 6223640 B2 JP6223640 B2 JP 6223640B2
Authority
JP
Japan
Prior art keywords
force
unit
calibration
information
external force
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.)
Active
Application number
JP2017525259A
Other languages
English (en)
Other versions
JPWO2016208467A1 (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
Publication of JPWO2016208467A1 publication Critical patent/JPWO2016208467A1/ja
Application granted granted Critical
Publication of JP6223640B2 publication Critical patent/JP6223640B2/ja
Active 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/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/0095Manipulators transporting wafers
    • 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/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J18/00Arms
    • B25J18/02Arms extensible
    • B25J18/04Arms extensible rotatable
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • B25J9/041Cylindrical coordinate type
    • B25J9/042Cylindrical coordinate type comprising an articulated arm
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1638Programme controls characterised by the control loop compensation for arm bending/inertia, pay load weight/inertia
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator

Landscapes

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

Description

この発明は、例えば力制御を行うロボットにおいて、ロボット手先の姿勢や動作によらず、外的作用により生じた外力のみを抽出するキャリブレーション装置およびこれを用いたロボットシステムに関するものである。
キャリブレーション装置は、自動加工装置や自動組立装置、ロボットのような機械装置に対するキャリブレーション操作を実施するものであり、備え付けられた作業対象に作用する手先効果器等、質量を持った作用装置に係る手先負荷の重力補償を実施するものである。
例えば、手先負荷とロボットアームとの間にロードセルや力覚センサを備えたロボットにおいて、重力補償や慣性力の補償を目的として、作業前に手先負荷の重量および重心位置を計測または推定し、この値に基づいて手先負荷の姿勢や加減速動作に応じた重力または慣性力を演算し、力センサの値から差し引くことで、外的作用により生じた外力を抽出している。
ここで、手先負荷以外の外力が作用しない条件下で、ロボットの手先フランジまたはロボット手先の位置姿勢を計測するとともに、その位置姿勢において、力覚センサで3軸力および3モーメントからなる6自由度の力情報を計測し、手先負荷によりある姿勢から別の姿勢に変化する際に作用する力センサ出力の差から、最小二乗法を利用してオフセット電圧を推定するキャリブレーション装置が提案されている(例えば、特許文献1参照)。
また、据え付け位置の不備による重力方向の誤差を考慮して、複数姿勢で得られる力情報から所定の計算を実施することで、重力方向ベクトルや手先負荷重量、手先負荷の重心位置ベクトル、力覚センサのバイアス値等、外力を抽出する際に差し引くべき値を最小二乗法によって求めるキャリブレーション装置が提案されている(例えば、特許文献2参照)。
特開平7−205075号公報 特開2012−40634号公報
特許文献1、2に示されるように、キャリブレーション装置において、センサ取り付け時に生じているオフセット出力やバイアス出力を精度よく取り除くことは、手先負荷の重量や重心位置を精度よく推定する上で必要なことである。
ここで、特許文献1、2に示されたキャリブレーション装置では、取得するデータには、余分な外力が作用しないことが仮定されている。しかしながら、実際に用いられるロボットにおいて、力覚センサの先に取り付けられた手先負荷の周辺には、ツール部分に取り付けられた通信ケーブルや信号線といった配線が外力作用として含まれることが多く、正確なキャリブレーションをすることができなない。
特に、任意の複数姿勢で取得したデータから、最小二乗法等を用いて各パラメータを算出する方法を用いる場合、ケーブル等に起因する外力による成分を含むデータとそうでないデータとが混在するため、特に手先負荷が小さい場合には、バイアス値成分を正確に推定することができない。その結果、手先負荷質量や重心位置ベクトルの推定が正確でなく、高精度にキャリブレーションを実施することができないという問題がある。
この発明は、上記のような課題を解決するためになされたものであり、外力による影響を考慮してバイアス成分を除去し、手先負荷質量および重心位置ベクトルを高精度に算出することで、高精度にキャリブレーションを実施することができるキャリブレーション装置を得ることを目的とする。
この発明に係るキャリブレーション装置は、先端に取り付けられ、作業対象に対して作用するツール部分の力制御を行う機械装置において、前記作業対象との接触により、前記ツール部分に生じた外力のみを抽出するキャリブレーション装置であって、前記ツール部分の位置情報を取得する位置情報取得部と、前記ツール部分に作用する力情報を取得する力情報取得部と、前記力情報を取得するセンサのセンサ座標系の原点を通過する任意の回転軸を指定する回転軸指定部と、前記回転軸周りに前記ツール部分を回転させる姿勢指令値を生成する姿勢生成部と、前記力情報からバイアス値および手先負荷の重力作用分を差し引いて、前記作業対象との接触により生じた外力のみを抽出するキャリブレーション処理を実施するキャリブレーション部とを備え、前記キャリブレーション部は、前記姿勢指令値に応じて前記ツール部分を回転させた際の前記位置情報および前記力情報に基づいて、近似曲線を生成する近似曲線生成部と、前記近似曲線、前記位置情報および前記力情報に基づいて、前記力情報のバイアス値を推定するバイアス値推定部と、前記力情報から前記バイアス値を除去し、前記バイアス値が除去された前記力情報を用いて、前記手先負荷の質量および重心位置ベクトルを算出する質量・重心位置推定部と、推定された前記バイアス値、前記手先負荷の質量および重心位置ベクトルを用いて、前記力情報から前記バイアス値および前記手先負荷の重力作用分を差し引く外力成分演算部とを有するものである。
この発明に係るキャリブレーション装置によれば、先端に取り付けられ、作業対象に対して作用するツール部分の力制御を行う機械装置において、前記作業対象との接触により、前記ツール部分に生じた外力のみを抽出するキャリブレーション装置であって、前記ツール部分の位置情報を取得する位置情報取得部と、前記ツール部分に作用する力情報を取得する力情報取得部と、前記力情報を取得するセンサのセンサ座標系の原点を通過する任意の回転軸を指定する回転軸指定部と、前記回転軸周りに前記ツール部分を回転させる姿勢指令値を生成する姿勢生成部と、前記力情報からバイアス値および手先負荷の重力作用分を差し引いて、前記作業対象との接触により生じた外力のみを抽出するキャリブレーション処理を実施するキャリブレーション部とを備え、前記キャリブレーション部は、前記姿勢指令値に応じて前記ツール部分を回転させた際の前記位置情報および前記力情報に基づいて、近似曲線を生成する近似曲線生成部と、前記近似曲線、前記位置情報および前記力情報に基づいて、前記力情報のバイアス値を推定するバイアス値推定部と、前記力情報から前記バイアス値を除去し、前記バイアス値が除去された前記力情報を用いて、前記手先負荷の質量および重心位置ベクトルを算出する質量・重心位置推定部と、推定された前記バイアス値、前記手先負荷の質量および重心位置ベクトルを用いて、前記力情報から前記バイアス値および前記手先負荷の重力作用分を差し引く外力成分演算部とを有している。
そのため、外力による影響を考慮してバイアス成分を除去し、手先負荷質量および重心位置ベクトルを高精度に算出することで、高精度にキャリブレーションを実施することができる。
この発明の実施の形態1に係るキャリブレーション装置が適用されたロボットシステムを示す構成図である。 この発明の実施の形態1に係るキャリブレーション装置を示すブロック構成図である。 この発明の実施の形態1に係るロボットシステムのロボット座標系、ワールド座標系、重力座標系、センサ座標系の位置関係を例示する説明図である。 この発明の実施の形態1に係るロボットシステムのメカニカルフランジ座標系とセンサ座標系との関係を例示する説明図である。 この発明の実施の形態1に係るキャリブレーション装置のキャリブレーション部およびこれを用いたロボットシステムを示すブロック構成図である。 この発明の実施の形態1に係るキャリブレーション装置のキャリブレーション部内のパラメータ推定部を詳細に示すブロック構成図である。 (a)、(b)は、この発明の実施の形態1に係るキャリブレーション装置において、指定軸上の姿勢生成部により生成される姿勢指令値による動作を例示する説明図である。 この発明の実施の形態1に係るキャリブレーション装置において、パラメータ推定部のバイアス値推定部による軸力のバイアス推定動作を示す説明図である。 この発明の実施の形態1に係るキャリブレーション装置において、パラメータ推定部のバイアス値推定部によるモーメントのバイアス推定動作を示す説明図である。 この発明の実施の形態2に係るキャリブレーション装置において、パラメータ推定部のバイアス値推定部が、バイアス推定結果について所定の誤差レベルか否かを判断する処理を示すフローチャートである。 (a)、(b)は、この発明の実施の形態2に係るキャリブレーション装置において、パラメータ推定部のバイアス値推定部が、バイアス推定結果について所定の誤差レベルか否かを判断する場合を例示する説明図である。 この発明の実施の形態2に係るキャリブレーション装置において、キャリブレーション部に入力する前に誤差情報表示部によってユーザに表示し、エラーデータを選択する場合を例示する説明図である。 この発明の実施の形態3に係るキャリブレーション装置において、キャリブレーション部でツール部に関する質量の影響を考慮する他に、作業開始時の接触状態を保持するオフセット保持の具体例を示す説明図である。 この発明の実施の形態3に係るキャリブレーション装置のキャリブレーション部を示すブロック構成図である。
以下、この発明に係るキャリブレーション装置およびこれを用いたロボットシステムの好適な実施の形態につき図面を用いて説明するが、各図において同一、または相当する部分については、同一符号を付して説明する。
なお、以下の各実施の形態では、キャリブレーション装置として、具体的にロボットを利用したシステムにおいてキャリブレーション処理を行うロボットシステムを例に挙げて説明する。しかしながら、この発明に係るキャリブレーション装置は、ロボットを活用しない場合であっても、力制御を行う機械装置については、同じ構成でキャリブレーションを実施可能なので、適用範囲をロボットシステムに限定するものではない。
具体的には、キャリブレーション装置としては、自動加工装置、自動組立装置、ロボットのような自動加工または自動組立を実施する機械装置であって、力制御を行う機械装置についてキャリブレーションを実施するものが挙げられる。
また、この発明に係るキャリブレーション装置は、センサ座標系の原点を通過する任意軸周りに姿勢変化を生じた際のロボットの手先負荷位置情報と、力センサの出力情報である力情報とから近似曲線を生成する。また、近似曲線、位置情報および力情報から、キャリブレーション処理に不要なケーブルやバネ等に起因する張力や斥力による外力成分を除去してバイアス値を推定し、力覚センサデータからバイアス値を除去した後、手先負荷質量および重心位置ベクトルを推定し、これらの情報に基づいて手先負荷の重力補償を行い、手先負荷に作用する外力成分を演算するものである。
これにより、不要な外力成分を有するデータを除去した抽出データからバイアス値を推定した後、手先負荷質量および重心位置ベクトルを推定することで、取得データの中から手先負荷質量および重心位置ベクトルの推定処理に用いられる複数の入力情報に含まれる外力の影響を除去でき、高精度に重力補償および外力成分推定を行うことができる。
実施の形態1.
図1は、この発明の実施の形態1に係るキャリブレーション装置が適用されたロボットシステムを示す構成図である。ここでは、まず、キャリブレーション装置の処理内容について説明する。図1において、ロボットシステムは、ロボットアーム1、ロボットのコントローラ2およびロボットアーム1に取り付けられたツール部4を基本的な構成として有している。
また、力制御を行うロボットシステムでは、ロボットアーム1とツール部4との間に、力情報を取得する力情報センサとして力センサ3が設けられている。通常、ロボットは、任意の座標系上で、ロボットアーム1の先端位置またはロボットアーム1の先端に取り付けられたツール部4の先端位置を位置制御で制御し、コントローラ2で指定された所望の位置に移動する。
なお、力センサ3を用いた力制御を導入すると、位置制御だけでなく、インピーダンス制御や力制御が実現可能となる。また、インピーダンス制御や力制御については後述するが、受動的または能動的に接触状態、すなわちツール部4と周辺環境や周辺物体との間の力の作用状態を制御する制御方式である。
この制御方式を活用することで、一般にロボットを用いた研磨作業、バリ取り作業、コネクタ等の組立作業、テーパを有する軸と穴との嵌めあい作業等、接触状態を考慮する必要がある作業を実施できるようになる。
キャリブレーション装置は、このようなロボットシステムにおいて、力情報を用いてロボット等の機械装置を制御する場合に必要な装置である。また、ロボットが作業するにあたり、ロボットアーム1の先端に、作業に用いるためのハンドや工具、センサが取り付けられ作業を実施するが、これらをツール部分と呼ぶ。このとき、力制御を活用した作業を実施するには、手先側のツール部分と作業対象とが、どのような接触状態にあるのかを正確に知る必要がある。ここで、接触状態とは、力およびモーメントの大きさや方向ベクトルで表現できる。
ロボット等の機械装置は、力情報を用いて作業をする場合、例えばバリ取りや研磨といった加工作業や、接触状態を有する組立作業といった作業を実施することができるようになるが、このとき、ロボット等の機械装置が正しく作業するためには、接触状態を目的状態に保ちながら作業をすることが望まれる。ここで、目的状態とは、加工や作業のためにあらかじめ設計された接触状態のことであり、作業目的に合わせて作業速度や必要な精度と合わせて作業者が調整する。
ところで、力情報は、力覚センサ・ロードセルといったセンサから電気信号として取得している。また、力情報を取得するセンサは、ロボットの手先側のフランジ位置に取り付けられる。なお、センサは、構造体の歪みを利用して電気信号を出力するため、センサ構造体をロボットに取り付けたときに生ずる構造体の歪みや、衝突等で生じた構造体の歪みや、センサ自身の電気回路のゼロ点設定によっては、バイアスを生じることがある。
ここで、ゼロ点設定とは、生じているバイアス成分を相殺するように、出力値に対してオフセット量を加えて調整する設定であり、通常ロボット動作前に行う。また、バイアスとは、センサに出力される定常的なオフセット量のことであり、センサ出力のみを観測すると、姿勢によらず一定量の大きさの外力が作用しているように見える。すなわち、ツールに対して作業対象による作用力を生じない無負荷状態の場合でも、一定の作用力を生じているように計測される。そのため、バイアス成分は、除去されなければならない。
上述したように、力情報を用いたロボット等の機械装置の制御においては、インピーダンス制御や力制御が行われる。なお、インピーダンス制御は、位置指令値を与えて制御する場合に、外力が作用した際のツール部先端の挙動について仮想的な剛性や粘性を設定し、作業対象とツール先端との位置関係を制御する制御方式である。一方、力制御は、力目標値を与えて、力目標値に追従するように制御する制御方式である。
このとき、それぞれの制御方式で、力や位置関係を目標状態として適切に指令値設定またはインピーダンス・パラメータ設定することで、組立搬送やバリ取り研磨のような作業に適用することができる。ここで、指令値とは、力制御の力目標値や、インピーダンス制御の位置制御の位置姿勢目標値、または位置指令実行中の手先速度指令値のことを指す。また、インピーダンス・パラメータとは、例えば、一般のインピーダンス制御におけるスティフネス行列、ダンピング行列および慣性行列における各要素値のことを表す。
なお、これらの制御を実施する場合、力情報にバイアスを生じていると、外部から作用する実際の作用力とは異なったベクトル量の力情報が制御系に入力される。そのため、ロボットツール部に関するインピーダンス制御または力制御が、実際の作用力とは違う力に基づいて行われるため、ユーザが設計していた目的の位置および状態に到達しないか、または、ロボットツール部が、コントローラで指定する目標作用力に追従できなくなる。そこで、通常は、バイアスの影響を低減する操作を行うことが多い。
ここで、上記特許文献1の例えば段落0031に記載されているように、特定の姿勢において取得される力情報をバイアス量として出力値から相殺する方法では、垂直多関節型のロボット等、姿勢変更により重力方向およびツール先端の向きが変更可能な場合には、重力影響分の補償量が変化するため、演算される外力の大きさが不正確になる。
また、重力や手先加速度による慣性力の影響を除去し、正確な外力を求めるために、ツール部分、すなわちセンサから見た手先負荷について質量および重心位置を正確に同定し、同時にバイアス量を推定することにより、力情報からバイアス量および手先負荷の重力作用分をあらかじめ差し引くことで、実際の外力を正確に計算することができる。
また、上記特許文献1、2の方法では、何れもN(N=1,2,・・・)個の姿勢において、それぞれ力情報を取得してバイアス量推定、およびその他のパラメータとして、ツール質量、ツール重心位置、重力方向等の推定を行うが、何れの方法も、取得データから外力成分が理想的に除去できている状態で位置情報および力情報が取得できていることを前提としている。
また、作用力の誤差としての外力成分は、ローパスフィルタや移動平均フィルタで示されるフィルタ処理で影響を低減可能なホワイトノイズを想定しており、特定の方向に依存して生じる誤差データは考慮されていない。
しかしながら、実際には、ロボットシステムおよび機械システムには、図1に示すように、目的に応じてツール先端に取り付けられるケーブルとして、力センサケーブル5、触覚センサやビジョンセンサのセンサケーブル6、エアケーブル7といったケーブル類が設けられ、さらに、図示しない電源線といった配線が設けられているため、ケーブル類や配線の作用で外力を生じる。また、これらのケーブルや配線の取り付け方によっては、センサノイズ以上の外力成分が力情報に含まれてしまうことがある。
その結果、このような情報に基づいて上記特許文献1、2の方法を適用すると、それぞれのデータがどの程度影響を受けているのかを判断することが難しく、例えば最小二乗法等を適用した解が、誤差の影響を受けるという課題がある。なお、この影響は、高精度な制御を行う上では無視できない。
そこで、この発明は、上記の課題を解決するために、位置情報および力情報を取得する姿勢として、センサ座標系の任意の軸周りに回転する姿勢変更を実施したデータを用いることで、ケーブルや配線による外力作用分の顕著なものを除去し、一定の傾向があるものについては、補正を行うことで、高精度にバイアスを推定し、バイアス推定処理後の力情報を入力として用いることで、高精度にツール部分の質量、すなわち手先負荷の質量および重心位置を推定することができるものである。
以下、図2を参照しながら、この発明の実施の形態1に係るキャリブレーション装置のキャリブレーション手順について詳しく説明する。図2は、この発明の実施の形態1に係るキャリブレーション装置を示すブロック構成図である。図2に示したキャリブレーション装置は、力センサの情報から、作業に関係するロボットの手先部分やツール先端に作用する外力作用分のみを抽出するために、力センサの情報に対してキャリブレーション処理を実施するものである。
ロボットがある姿勢Rk(k=1,2,・・・,M)をとるとき、姿勢Rkにおける力センサ情報をF(k)とする。ここで、姿勢とは、回転行列Rkで表現している。また、回転行列とは、ある基準座標系からみて、現在注目している座標系がどういった姿勢変化をしているかを、3×3行列で表現したものである。
力センサ情報F(k)には、バイアスF_bis(k)、手先負荷分の作用力F_mas(k)、外的な作用力F_ext(k)および電気信号としてのノイズ成分F_nos(k)があり、次式(1)で表される。
F(k)=F_bis(k)+F_mas(k)
+F_ext(k)+F_nos(k) ・・・(1)
また、力センサ情報F(k)からF_bis(k)、F_mas(k)、F_nos(k)を除去することで、求めたい外力成分F_ext(k)が求められる。外力成分F_ext(k)は、式(1)を変形して、次式(2)で表される。
F_ext(k)=F(k)−F_bis(k)
−F_mas(k)−F_nos(k) ・・・(2)
ここで、外力成分F_ext(k)を演算する方法としては、ローパス等のフィルタ処理でノイズ成分F_nos(k)を除去し、バイアス値およびツール部の負荷推定に基づく手先負荷影響を演算して、これらを差し引くことで求められる。なお、バイアス成分は、固定されたときに作用している一定の力、具体的には軸力およびモーメントとし、ツールの姿勢に依存しない。
すなわち、F_bis(k)は、姿勢kに依存せず、すべての姿勢kに対して共通の値、F_bis(k)=[F_bis_x,F_bis_y,F_bis_z,M_bis_x,M_bis_y,M_bis_z]となる。また、F_mas(k)については、質量とセンサ座標系と重心位置との関係性を求めることで演算可能となる。
一般には、外力をかけない状態で複数姿勢Rkをとり、このときの位置情報と力情報とに基づいて、キャリブレーション処理を行う。この発明では、キャリブレーション時に取り扱うデータが、F_ext(k)が0にならない力情報を含めて取り扱う場合について、取得姿勢に対して拘束条件を与えることで高精度なキャリブレーション処理を実施し、これに基づいて外力成分による作用力F_ext(k)を計算する。この方法について以下に説明する。
図3は、この発明の実施の形態1に係るロボットシステムのロボット座標系、ワールド座標系、重力座標系、センサ座標系の位置関係を例示する説明図である。図3に示されるように、システム内に固定されたロボット本体の基準座標系として定義されるロボット座標系をΣrob、同一システム内の機器に共通の座標系として定義されるワールド座標系をΣwld、重力加速度方向を−Z方向とした重力座標系をΣgrvとおく。
通常、水準器を用いてロボットを据え付ける台の上面の法線方向、すなわちロボット座標系ΣrobのZ方向と、重力座標系ΣgrvのZ軸方向である重力方向とが直交するように高精度にレベリングされることが多いため、自動化システムでは、ロボット座標系Σrobおよび重力座標系Σgrvについては、Z軸がほぼ一致し、誤差の影響は少ないとする。
また、重力座標系の定義としてΣgrvのX軸方向およびY軸方向は、簡単のためロボット座標系Σrobと一致させるものとする。また、設計図に基づいてロボットシステムを構築する場合、図面に記載された精度で位置姿勢関係は既知としてよいため、ワールド座標系Σwldおよびロボット座標系Σrobも、相対関係としての同次変換行列wldrobが既知であるとしてよい。すなわち、Σwld、Σrob、Σgrvの相対関係の初期値は、およそ推定されるものとして説明を進める。
ここで、ロボットアームの末端で、センサやツールを取り付けることができる部分のことをロボットメカニカルフランジと称する。ロボットメカニカルフランジの座標系は、ロボット座標系からみた手先位置指令値で演算することができる。
次に、ロボットメカニカルフランジにセンサを取り付ける場合に、センサ座標系Σsenを定義する方法について説明する。この発明では、出力する情報が3軸または6軸の場合を想定しているが、センサ座標系Σsenは、筐体に対してあらかじめX軸、Y軸、Z軸方向が定義されているので、これに従うものとする。
図4は、この発明の実施の形態1に係るロボットシステムのメカニカルフランジ座標系とセンサ座標系との関係を例示する説明図である。図4に示されるように、ロボット座標系に対するメカニカルフランジ座標系をΣmecとすると、ここで定義されているメカニカルフランジの座標系とセンサ座標系Σsenとを比較することで、同次変換行列を求めることができる。なお、厳密には誤差を含むが、初期値は分かるものして取り扱うことができる。
ここで、同次変換行列とは、回転行列R(3×3)および参照座標系で定義された位置関係を示す位置ベクトルPからなる4×4の行列のことである。例えば、基準となる座標系をワールド座標系Σwldにとり、注目する座標系をロボット座標系Σrobとして同次変換行列wldrobを表現すると、回転行列R、位置ベクトルPおよび同次変換行列wldrobは、次式(3)〜(5)で表される。
Figure 0006223640
Figure 0006223640
Figure 0006223640
上述した位置関係が成り立っている場合において、さらにバイアスを正確に推定することができ、ツール部分の質量および重心位置が分かれば、外力成分F_ext(k)を演算することができる。これらが正しく演算できないのは、各座標系の位置関係が不正確で重力方向および重力加速度にずれがある場合、バイアス成分が不正確な場合、またはツール部分の質量や重心位置が不正確な場合が存在することによる。
これに対して、この発明では、これらを最適化計算で誤差を最小化するパラメータを算出するのではなく、固有の動作を行うことで誤差要因となるデータの除去および個別の推定処理を実施することで、バイアス、物体質量および重心位置の推定精度を向上させることを特徴とする。
そこで、まず、ロボットのキャリブレーション処理に必要な位置情報および力情報を取得する。位置情報としてツール部分の位置情報を取得するが、位置情報とは、直交座標系で表現されたX軸、Y軸、Z軸に対する並進3自由度である[X、Y、Z]およびオイラー表現されたX軸、Y軸、Z軸に対する回転3自由度である[A、B、C]のことを指す。このとき、キャリブレーション用の位置情報および力情報を取得する目的で、図2の回転軸指定部100により、センサ座標系の原点を通過する任意の回転軸Vec_rotを指定する。
ここで、センサ座標系の定義を基準としたキャリブレーションでは、回転軸指定部100で指定された回転軸Vec_rot周りに回転した姿勢で位置情報および力情報を取得する。そのため、図2の指定軸上の姿勢生成部101は、回転軸Vec_rotに基づいて、位置情報および力情報を取得するための姿勢を決定し、姿勢指令値として出力する。
なお、回転軸Vec_rotに対し、基準となる位置姿勢から回転量を大きくとる方が誤差は少なくなるので、各姿勢は、例えば回転軸Vec_rotの正回転方向に対して45度間隔で取得するように決定することができる。一方、後述するように、この発明では、回転軸Vec_rotに対する回転量が小さくても推定処理ができるため、周辺物体との干渉等の理由で、姿勢変化に対する制約が大きい場合にも情報取得が可能である。
また、回転軸Vec_rotについては、センサ座標系の主軸であるセンサ座標系のX軸、Y軸、Z軸を指定してもよい。なお、後述する近似曲線生成部では、指定する回転軸に直交する面上に直交する主軸を定義する必要があるため、あらかじめセンサ座標系の主軸を指定すると、変換処理が不要となる。一方で、主軸以外の軸を回転軸として指定できるため、ユーザが周辺環境との干渉を考慮して決定することもできるし、メーカーがあらかじめ回転軸Vec_rotおよび回転角度量θを決定しておくこともできる。
このように指定された回転軸Vec_rotに対して、姿勢指令値に基づいて姿勢変更を行い、キャリブレーションに用いるデータを取得する。ここでは、ロボット102に取り付けられた力情報取得部103として、例えばロードセルや力センサを用いて、現在のロボット状態から力情報を取得する。
また、位置情報取得部104は、例えばロボットの各軸に取り付けられたエンコーダからの情報を使ってロボットの手先位置を演算し、さらにセンサ座標系の位置姿勢を取得する位置情報を取得する。なお、位置情報取得部104は、ロボットツール部分にマーカーを張り付け、ビジョンセンサでマーカーを計測することで、ロボット外部からロボット姿勢を計測または推定することもできる。
ここで、外部センサを用いる場合には、ロボット固有の機構誤差であるバックラッシやたわみ等の誤差の影響を考慮しなくてもよい。なお、外部センサを取り付ける場合は、センサ取り付け位置がロボット座標系Σrobまたはワールド座標系Σwldである基準座標系から見てどういった位置に据え付けられているのか、ジグを用いて正確に位置決めするか、外部センサが基準マーカー等を参照して据え付け位置を推定する必要がある。
このようにしてロボットツール先端を回転させるキャリブレーションのための位置情報および力情報を取得し、最小でも回転軸Vec_rot1つに対して、3つ以上の点を取得する必要がある。これは、このキャリブレーション装置が円を用いた近似を適用するためである。なお、基本的には4つ以上の点で誤差の影響を考慮することが望ましい。
このようにして、回転軸Vec_rot周りに姿勢を変化させながら位置情報および力情報を取得し、データ記憶部105に記憶していく。続いて、記憶したデータを利用してキャリブレーション部106においてキャリブレーション処理を行う。
図5は、この発明の実施の形態1に係るキャリブレーション装置のキャリブレーション部およびこれを用いたロボットシステムを示すブロック構成図である。キャリブレーション装置の使用にあたっては、まず、パラメータを求めるパラメータ推定部201において、パラメータ推定処理を行う。次に、実際にロボットを使って作業を実施するとき(通常動作時)に、推定されたパラメータを用いて、力情報からバイアス値および重力影響分を差し引く処理を行う。以下、これについて説明する。
図5において、このキャリブレーション装置では、パラメータ推定部201において、パラメータであるツール部分を含めた手先負荷の質量、ツール部分を含めた手先負荷の重心位置、およびバイアスを求める。以上のパラメータ推定部に関する説明は、図6を用いて後述する。
次に、通常動作時のロボット102は、指令値生成部203によって生成される姿勢指令値により動作し、現在のロボット状態に応じて、力情報取得部103で力情報が取得される。このとき、外力成分演算部207は、パラメータ記憶部202に記憶されたパラメータに基づいて、位置情報取得部104で得られるロボットの現在位置姿勢Rkにおける手先負荷質量による力の作用分F_mas(k)を演算する。
また、外力成分演算部207は、上記式(2)に示したように、センサデータF(k)から手先負荷質量による力の作用分F_mas(k)およびバイアスによる作用分F_bisを差し引くことで、接触による外力成分F_ext(k)を求める。また、外力成分演算部207は、この外力成分を、指令値生成部203に作用外力演算値としてフィードバックすることで、キャリブレーション処理を行う。
以上のように、キャリブレーション部106は、ロボット102に対して、データ記憶部105に記憶された位置情報および力情報に基づいて、パラメータを求めるパラメータ推定処理を行うパラメータ推定部201と、パラメータ推定部201における推定結果を記憶するパラメータ記憶部202と、記憶されたパラメータを用いて、バイアスによる作用分および手先負荷質量による力の作用分を除いて、接触による外力成分を求める外力成分演算部207とから構成されている。この発明は、キャリブレーション部106を、指令値生成部203、ロボット102、力情報取得部103および位置情報取得部104から構成されるロボットシステムに適用するものである。
以下、さらにこの発明の特徴となっているパラメータ推定部201について詳細に説明する。図6は、この発明の実施の形態1に係るキャリブレーション装置のキャリブレーション部内のパラメータ推定部を詳細に示すブロック構成図である。
図6に示されるように、回転軸指定部100で指定された回転軸Vec_rot周りに回転させた姿勢でデータを複数取得し、取得したデータをデータ記憶部105に格納し、パラメータ推定部201でまずバイアス値および仮の質量を求める。また、パラメータ推定部201は、さらに求められたバイアス値および仮の質量に基づいて、質量および重心位置の推定を実施する。推定された質量および重心位置情報は、パラメータ記憶部202に出力される。
また、パラメータ推定部201に記載されたバイアス値推定部21および近似曲線生成部20によるバイアス値の具体的な求め方を以下に説明する。まず、回転軸Vec_rotとして、重力方向に垂直な面内で、センサ座標系の任意軸の1つとしてセンサ座標系の主軸周りで回転させた場合を考える。ここでは、重力方向に対してセンサ−Z軸方向が一致する方向を基準姿勢Rk0とする。また、回転軸Vec_rotとしてセンサ座標系主軸のY軸を選ぶ。
続いて、図7〜9を参照しながら、軸力のバイアス値F_bis_x、F_bis_y、F_bis_zの計算方法について説明する。図7(a)、(b)は、この発明の実施の形態1に係るキャリブレーション装置において、指定軸上の姿勢生成部により生成される姿勢指令値による動作を例示する説明図である。図7に示されるように、基準姿勢Rk0からY軸周りに回転させた姿勢を3点以上取得する。ここで取得した軸力データFx、Fzを、縦軸にFz、横軸にFxをとって記述する。
なお、重力方向に垂直な面内に回転軸を選ぶ場合、回転運動をした際の作用力のベクトル変化に注目したときに、そのまま回転軸に直交する軸、ここではX軸およびZ軸への力情報のプロットが、図8に示されるように、円軌道を描く特徴が現れる。この特徴を利用して、取得した力情報に対して各位置姿勢で取得したデータをプロットした際に、円となる近似曲線を生成する。
近似曲線生成部20では、重力方向をセンサ座標系−Z軸に合わせ、Y軸周りに回転させた場合に得られるX軸方向の軸力をFxとし、Z軸方向の軸力をFzとする。次に、横軸をFx、縦軸をFzとして各点(Fx,Fz)に対する円近似を求める。これは、円の中心位置の原点からのオフセット量を、X軸力をプロットする横軸方向にはFx_b、Z軸力をプロットする縦軸方向にはFz_bとおくと、Fx_b、Fz_b、円の半径Rを変数とした円の公式として、次式(6)のように定義できる。
(Fx−Fx_b)^2+(Fz−Fz_b)^2=R^2 ・・・(6)
ここで、これらの多項式の最小二乗近似解を求めるには、Fx_b、Fz_b、Rを変数とした関数f(Fx_b,Fz_b,R)を次式(7)のように定義し、二乗して偏微分した結果が0となるような解を求める最小二乗近似を適用することができる。
f(Fx_b,Fz_b,R)
=(Fx−Fx_b)^2+(Fz−Fz_b)^2−R^2 ・・・(7)
これによって得られたFx_b、Fz_bが、X軸力のバイアス値F_bis_x、F_bis_zである。なお、ここで得られるRは、質量分の外力Mg’である。この外力Mg’から得られる質量を、仮の質量M_tmpとする。また、回転主軸をX軸に変更して同様の処理を実施することで、F_bis_yも得られる。このようにして、軸力に関するバイアス値を算出することができる。
また、近似曲線生成部20では、モーメントに関するバイアス値を以下のように求める。まず、モーメントに関しては、回転運動を実施した場合に、回転軸Vec_rotをY軸に選ぶと、回転軸Vec_rot周りの姿勢変化Rkに対して、図9に示されるように、コサインカーブに位相差とオフセットとをかけた曲線に近似できるという特徴がある。
すなわち、数値モデルとしては、Y軸周りのモーメントのバイアス成分をM_y_bとして、基準姿勢Rk0からのY軸周りの回転角度をθとしたとき、横軸にθ、縦軸にモーメントをとった際の位相差φと定義する。また、コサインカーブの振幅をAmとおく。このとき、取得したモーメントデータをM_yとすると、次式(8)が成り立つ。
M_y=M_y_b+Am*COS(θ+φ) ・・・(8)
なお、回転角度θに対する周期性としては、360度でちょうど1周期となる周波数になることが特徴である。このモデルに対して、f(M_y_b、Am、φ)とする関数を次式(9)のように定義し、ニュートンラプソン法で繰り返し演算を実施することで、M_y_b、Am、φに関する近似解を得ることができる。
f(M_y_b,Am,φ)
=M_y−M_y_b−Am*COS(θ+φ) ・・・(9)
これによって得られたM_y_bが、求めるY軸周りのモーメントのバイアス値M_bis_yとなる。なお、解の収束性が悪く近似解が得られない場合は、360の勾配数で360度を割った角度、例えば2であれば、θとして0度と180度とを選び、例えば4であれば、θとして0度と90度と180度と270度とを選び、それぞれのM_yの平均値をとってもよい。
また、同様にして、回転軸Vec_rotとしてX軸を選定することで、M_bis_xを得ることができる。また、M_bis_zについては、Y軸、X軸で実施したのと同様に、重力方向に直交する面上にZ軸を一致させる姿勢Rk1を基準位置とし、回転軸Vec_rotとしてZ軸を選定し、M_bis_yを求めたときと同様の処理を実施することができる。
なお、他の方法として、単純にRk0の姿勢から回転軸Vec_rotをZ軸として選定し、360の勾配数で360度を割った角度、例えば2であれば、θとして0度と180度とを選び、例えば4であれば、θとして0度と90度と180度と270度とを選び、それぞれのM_zの平均値をとってもよい。
以上示した方法で、近似曲線生成部20では、近似された曲線の式から仮のバイアス値推定が行われ、バイアス値F_bisおよび仮の質量M_tmpが求められる。
なお、このとき、ケーブルが引っ掛かったデータが混入している場合は、図8のエラーデータ13のような点が存在する。この発明の特徴は、この点を、近似曲線生成部20の結果である近似曲線と力情報と位置情報とからキャリブレーション処理中に除去することにある。
具体的には、図8に示すようなエラーデータが数点である場合は、全部でN個の姿勢Rkでデータを取得した場合に、N−M個ずつのグループに分け、それぞれで最大誤差を比較することで、エラーデータを抽出することができる。ただし、MおよびNは、M<Nとなる正の整数である。
また、ツール部分の手先負荷質量および重心位置の算出については、図6の質量・重心位置推定部22により実施される。ここで、力制御用の軸設定を、キャリブレーションされた状態のX軸、Y軸、Z軸の座標軸設定で、センサ中心位置にセンサ座標系Σsenとおき、手先負荷の重心位置にメカニカルフランジ座標系Σmecと同じ姿勢で重心座標系ΣLを定義する。
ここでは、センサ座標系と手先負荷の重心座標系との位置関係(xq,yq,zq,Aq,Bq,Cq)、および質量mを未知変数qとして定義する。すなわち、q=(xq,yq,zq,Aq,Bq,Cq,m)として定義する。
ここで、モデルとセンサ出力との誤差を、モデルから推定される力Fmdlとセンサで実際に取得した前述のデータSiとの差で定義すると、モデルとセンサ出力との誤差は、次式(10)で表される。なお、初期値としてm=M_tmpとする。
Figure 0006223640
すなわち、最も誤差が小さいqを探すことが本来の目的であるので、繰り返し演算でf(qi)がそれぞれ0に近づくようqiを求める問題に帰着させることができる。なお、iはイテレーションである。
また、ニュートンラプソン法によると、漸近的に0に近づくための変数qiを求める場合は、次式(11)で表される更新則が成り立つ。
Figure 0006223640
ここで、繰り返し計算により、近似的に近付くときの毎回計算の差分の形で表現しなおすと、次式(12)が得られる。
Figure 0006223640
なお、具体的に式を展開すると、求める形は、次式(13)の演算となる。
Figure 0006223640
式(13)は、式(11)と式(12)とをdqについて整理した表現となっている。式(13)について説明すると、右辺で偏微分する変数については、一般にqに関する変数すべてで定義される。ここでは、手先負荷の質量・重心位置の推定手法について、重力方向も考慮した一般形で表現しており、推定したい変数を重心位置=(Xs,Ys,Zs,As,Bs,Cs)、質量m、ワールド座標系Σwldから見た重力ベクトルの傾きを、X軸およびY軸周りに関する回転量で、Aw、Bwを変数とした形式で表現している。
この発明の実施の形態1のように、重力方向の傾きを既知として除く場合は、Aw,Bwを除き、推定したい変数を重心位置=(Xq,Yq,Zq,Aq,Bq,Cq)、質量mとする対応が可能である。前述の変数qに合わせると、偏微分する変数は、Xq,Yq,Zq,Aq,Bq,Cq,mとなる。
このとき、モデルから推定される力Fmdlは、下記のように定義できる。ただし、重心座標系ΣLをメカニカルフランジ座標系Σmecと同じ軸方向に定義し、重心座標系ΣLからみた軸力の3次元ベクトルである質量による外力ベクトルをLf、同じく重心座標系ΣLからみた質量によるモーメントベクトルをLmとし、重心座標系から見た重力加速度ベクトルをLgと表現している。また、ワールド座標系Σwldからみた重心座標系ΣLへの姿勢行列(3×3行列)は、WLで表現している。以下、次式(14)はFmdlの定義を示し、次式(15)〜(21)は式(14)の要素の定義を示す。
Figure 0006223640
Figure 0006223640
Figure 0006223640
Figure 0006223640
Figure 0006223640
Figure 0006223640
Figure 0006223640
Figure 0006223640
なお、センサと負荷重心との位置関係、すなわち、ツール部分の重心位置から見たセンサ座標系への同次変換行列LSは、次式(22)のように定義される。
Figure 0006223640
また、式中に示されたn、oおよびaは、重心座標系ΣLからセンサ座標系Σsに姿勢変更する場合のオイラー角(A,B,C)を用いて、次式(23)のように定義される。
Figure 0006223640
以上の定義に基づいて、上記式(12)、式(13)を用いて更新していくと、漸近的に上記式(10)が0に近づいていく。これによって、質量mおよびセンサ座標系とツール部分の重心位置との相対関係として(xq,yq,zq,Aq,Bq,Cq)を得ることができる。
ロボット座標系Σrobとセンサ座標系Σsenとの相対関係は、センサ取り付け時のキャリブレーションで分かっているものとし、上述したように水準器を活用する等して、重力方向はロボット座標系Σrobに対して既知とするため、結果としてセンサ座標系Σsenからみた重力方向と質量mとの関係から、センサ座標系上で手先負荷の重力または慣性力の影響分を計算することができる。ただし、重力方向の情報については、水準器による取得に限るものではない。
このように、上述したキャリブレーション装置によれば、除去されなかったエラーデータを除去することができる。また、これによって得られた正確なバイアス値に基づいて算出される、質量およびツール部分の重心位置がより高精度に得られる。そのため、従来では得られなかった、エラーデータを含む力情報を用いた力情報キャリブレーションの高精度化を実現することができるため、力制御性能が格段に向上する効果が期待される。
以上のように、実施の形態1によれば、先端に取り付けられ、作業対象に対して作用するツール部分の力制御を行う機械装置において、作業対象との接触により、ツール部分に生じた外力のみを抽出するキャリブレーション装置であって、ツール部分の位置情報を取得する位置情報取得部と、ツール部分に作用する力情報を取得する力情報取得部と、センサ座標系の原点を通過する任意の回転軸を指定する回転軸指定部と、回転軸周りにツール部分を回転させる姿勢指令値を生成する姿勢生成部と、力情報からバイアス値および手先負荷の重力作用分を差し引いて、作業対象との接触により生じた外力のみを抽出するキャリブレーション処理を実施するキャリブレーション部とを備え、キャリブレーション部は、姿勢指令値に応じてツール部分を回転させた際の位置情報および力情報に基づいて、近似曲線を生成する近似曲線生成部と、近似曲線、位置情報および力情報に基づいて、力情報のバイアス値を推定するバイアス値推定部と、力情報からバイアス値を除去し、バイアス値が除去された力情報を用いて、手先負荷の質量および重心位置ベクトルを算出する質量・重心位置推定部と、推定されたバイアス値、手先負荷の質量および重心位置ベクトルを用いて、力情報からバイアス値および手先負荷の重力作用分を差し引く外力成分演算部とを有している。
そのため、外力による影響を考慮してバイアス成分を除去し、手先負荷質量および重心位置ベクトルを高精度に算出することで、高精度にキャリブレーションを実施することができる。
また、バイアス値を独立して高精度に推定することができ、結果として全体のキャリブレーション精度が向上するので、従来にない高精度な力制御を行うことができる。
実施の形態2.
上記実施の形態1に記載のキャリブレーション装置では、ケーブルや配線等によって生じるエラーデータを抽出するために、データをいくつかのグループ化を実施して、結果が大きくずれるものを特定し、エラーデータを発見する方法をとっていた。しかしながら、これだけでは、例えば、次のような場合に、エラーデータを除去できないことがある。
事例1:エラーデータが多く含まれる場合。この場合には、エラーデータのみを抽出するのが難しい。
事例2:センサ座標系の回転軸とロボットによって与えられる回転軸とがずれていて、近似曲線が円形でフィッティングできない場合。
そこで、この発明の実施の形態2では、このような問題を解決するために、図10に示されるように、バイアス値推定部21において、ツール部分に取り付けられるケーブルおよび配線による外力の作用により生じる力情報の増加分が所定の誤差レベルか、すなわち設定値を超えたか否かを判定して、誤差レベルに到達していれば質量・重心位置推定部22に移り、そうでない場合は、さらに追加で新しい姿勢を取得することを特徴とする。
図11(a)に示されるように、円形の場合は、フィッティングした円よりも半径が±X%変動した円を新たに定義し、それを所定の誤差レベルの閾値として用いる。ただし、Xの値は、ケーブルや配線の外力やノイズで受ける力の変動の大きさに応じて個別に定義する。
これは、ノイズで受ける力の変動が大きい場合には、フィルタをかけることでノイズの影響は低減できるものの、Xを小さくし過ぎると全てがエラーデータとなってしまうようなことが生じるためである。
この発明の実施の形態2に係るキャリブレーション装置により、所定の誤差レベルから外れるデータを徐々に除去していくことができるため、エラーデータを含まないデータに近づけていくことが可能である。
また、図11(b)に示されるように、上記事例2に該当するような場合は、楕円体フィッティングが必要になる。この場合は、上記式(6)に示した円の式を楕円の式に置き換えて定義することで対応することができ、楕円のまま評価するため、短径および長径に対してそれぞれ±X%という形で定義することができる。
さらに別の方法として、図12に示されるように、データ記憶部105に記憶された位置情報および力情報を、図11に示した形式でグラフとして表示する誤差情報表示部301と、マウスやキーボード、タッチパネルといった入力機器によりデータを選択させるデータ選択部302とを介して、ユーザにエラーデータを選択させる処理を通じてエラーデータを除去し、キャリブレーション処理を行ってもよい。
以上のように、実施の形態2によれば、複数のエラーデータを含む場合であっても、的確に選択することができ、高精度なキャリブレーションを実現することができるので、結果として、従来にない高精度な力制御を行うことができる。
実施の形態3.
上記実施の形態1または実施の形態2のキャリブレーション装置では、ツール部分による質量の影響を考慮するようなキャリブレーションは可能であった。しかしながら、例えば図13に示されるように、ティーチングポイント12に従って動くロボットにおいて、P2の地点で作業を開始する場合に、この時点で作用する外力F_extに対して力制御をかけたくない場合がある。すなわち、ロボットの周辺物体11にP2の時点で生じた接触した状態を保ちながら、P3の位置まで作業を進めたい場合がある。
このような場合には、単にツール部分のキャリブレーションを適用するだけでは不十分であり、接触状態を保持するような制御をすることは難しい。一方で、単純にゼロ点調整をするだけのシステムでは、ツール部分の姿勢変更には対応しないことになる。そのため、例えば、ロボットの周辺物体11で拘束されていない方向、例えばXsen周りに回転する方向にツール部分を姿勢変更した場合には、センサ座標系に対する重力の軸方向が変化するため、ツール部分の姿勢変更による影響を考慮できず、外力が作用したと誤判断することになる。
そこで、この発明の実施の形態3では、このような問題を解決するために、図14に示されるように、P2に至ったときに、ユーザがツール部分の位置姿勢の指令値を指定するオフセット位置姿勢指定部208により所定の位置姿勢情報を取得し、この位置姿勢にツール部分を移動した際に演算される作用外力の演算値をオフセット保持部209に記憶する。また、オフセット保持部209は、この瞬間に外力成分演算部207によって計算されていた作用外力の演算値を記憶する。
また、作業外力の演算値を記憶した次の制御周期以降について、外力成分演算部207によって計算されていた作用外力の演算値から、先程オフセット保持部209に記憶された作用外力の演算値を差し引いて出力する。
ただし、外力成分演算部207によって計算されていた作用外力の演算値の中には、従来の作用外力の演算値と、オフセット保持部209に記憶された作用外力の演算値を差し引いたオフセット処理後の作用外力の演算値との両方を情報として流すこととしている。これにより、さらにオフセット位置姿勢指定部208で姿勢を指定した場合に、その位置で生じている作用外力分だけオフセットとして演算することができる。
以上のように、実施の形態3によれば、特定の位置で生じる接触状態を保ちながらさらに姿勢を変更するような複雑な動作を生成することが可能となり、従来にない動作生成が容易に生成できるため、ユーザの使いやすさが格段に向上する。
すなわち、ツール部分のキャリブレーション以外の作用による外力分を考慮した力制御を行う際に、ある動作中に力制御には関与しない一定外力として取り扱うことできるようになるので、外部との接触を伴う力制御をする場合の設定が非常に容易になり、ユーザの使いやすさを向上させることができる。
なお、以上のような発明は、産業用のロボットまたは位置制御が可能な機械装置に適用することができる。

Claims (5)

  1. 先端に取り付けられ、作業対象に対して作用するツール部分の力制御を行う機械装置において、前記作業対象との接触により、前記ツール部分に生じた外力のみを抽出するキャリブレーション装置であって、
    前記ツール部分の位置情報を取得する位置情報取得部と、
    前記ツール部分に作用する力情報を取得する力情報取得部と、
    前記力情報を取得するセンサのセンサ座標系の原点を通過する任意の回転軸を指定する回転軸指定部と、
    前記回転軸周りに前記ツール部分を回転させる姿勢指令値を生成する姿勢生成部と、
    前記力情報からバイアス値および手先負荷の重力作用分を差し引いて、前記作業対象との接触により生じた外力のみを抽出するキャリブレーション処理を実施するキャリブレーション部と、を備え、
    前記キャリブレーション部は、
    前記姿勢指令値に応じて前記ツール部分を回転させた際の前記位置情報および前記力情報に基づいて、近似曲線を生成する近似曲線生成部と、
    前記近似曲線、前記位置情報および前記力情報に基づいて、前記力情報のバイアス値を推定するバイアス値推定部と、
    前記力情報から前記バイアス値を除去し、前記バイアス値が除去された前記力情報を用いて、前記手先負荷の質量および重心位置ベクトルを算出する質量・重心位置推定部と、
    推定された前記バイアス値、前記手先負荷の質量および重心位置ベクトルを用いて、前記力情報から前記バイアス値および前記手先負荷の重力作用分を差し引く外力成分演算部と、を有する
    キャリブレーション装置。
  2. 前記バイアス値推定部は、前記ツール部分に取り付けられるケーブルおよび配線の少なくとも一方による外力の作用により生じる前記力情報の増加分が設定値を超えた場合に、当該力情報を除去する
    請求項1に記載のキャリブレーション装置。
  3. 前記キャリブレーション部は、
    ユーザが前記ツール部分の位置姿勢の指令値を指定するオフセット位置姿勢指定部と、
    前記ユーザが指定した位置姿勢に前記ツール部分を移動した際に演算される作用外力の演算値を記憶するオフセット保持部と、を有し、
    前記オフセット保持部が動作した次の演算周期のキャリブレーションから、前記オフセット保持部に保持された作用外力の演算値分をさらに差し引く
    請求項1または請求項2に記載のキャリブレーション装置。
  4. 先端に取り付けられ、作業対象に対して作用するツール部分の力制御を行う機械装置において、前記作業対象との接触により、前記ツール部分に生じた外力のみを抽出するキャリブレーション装置であって、
    前記ツール部分の位置情報を取得する位置情報取得部と、
    前記ツール部分に作用する力情報を取得する力情報取得部と、
    前記力情報を取得するセンサのセンサ座標系の原点を通過する任意の回転軸を指定する回転軸指定部と、
    前記回転軸周りに前記ツール部分を回転させる姿勢指令値を生成する姿勢生成部と、
    前記姿勢指令値に応じて前記ツール部分を回転させた際の前記位置情報および前記力情報に基づいて、前記力情報からバイアス値および手先負荷の重力作用分を差し引いて、前記作業対象との接触により生じた外力のみを抽出するキャリブレーション処理を実施するキャリブレーション部と、
    を備えた、キャリブレーション装置。
  5. 請求項1から請求項4までの何れか1項に記載されたキャリブレーション装置が適用されたロボットシステム。
JP2017525259A 2015-06-22 2016-06-15 キャリブレーション装置およびこれを用いたロボットシステム Active JP6223640B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2015124837 2015-06-22
JP2015124837 2015-06-22
PCT/JP2016/067793 WO2016208467A1 (ja) 2015-06-22 2016-06-15 キャリブレーション装置およびこれを用いたロボットシステム

Publications (2)

Publication Number Publication Date
JPWO2016208467A1 JPWO2016208467A1 (ja) 2017-09-07
JP6223640B2 true JP6223640B2 (ja) 2017-11-01

Family

ID=57585736

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017525259A Active JP6223640B2 (ja) 2015-06-22 2016-06-15 キャリブレーション装置およびこれを用いたロボットシステム

Country Status (5)

Country Link
US (1) US20180169854A1 (ja)
JP (1) JP6223640B2 (ja)
CN (1) CN107708937B (ja)
DE (1) DE112016002797B4 (ja)
WO (1) WO2016208467A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200031722A (ko) * 2018-09-14 2020-03-25 삼성디스플레이 주식회사 로봇암 장치

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6487385B2 (ja) * 2016-07-20 2019-03-20 ファナック株式会社 ロボットの原点位置較正装置および方法
JP2018114593A (ja) * 2017-01-19 2018-07-26 セイコーエプソン株式会社 ロボット
JP6942577B2 (ja) * 2017-09-15 2021-09-29 オークマ株式会社 工作機械の数値制御装置及び数値制御方法
TWI642523B (zh) * 2017-09-21 2018-12-01 上銀科技股份有限公司 用於機械臂之負載估測重力補償的方法及其負載估測重力補償系統
KR20200042952A (ko) 2017-11-02 2020-04-24 미쓰비시덴키 가부시키가이샤 캘리브레이션 장치, 캘리브레이션 방법 및 제어 장치
JP6708675B2 (ja) * 2018-02-22 2020-06-10 ファナック株式会社 ロボット
JP2019155542A (ja) * 2018-03-14 2019-09-19 株式会社東芝 搬送装置、搬送システム、コントローラ、および搬送方法
JP6795540B2 (ja) * 2018-04-24 2020-12-02 ファナック株式会社 ロボットを用いた負荷の重量及び重心位置を推定するための装置、方法及びプログラム
EP3807058A1 (en) 2018-06-15 2021-04-21 Universal Robots A/S Estimation of payload attached to a robot arm
JP6773084B2 (ja) * 2018-07-02 2020-10-21 株式会社安川電機 動作教示装置、ロボットシステム及び動作教示方法
CN108956003B (zh) * 2018-07-17 2020-10-20 崧智智能科技(苏州)有限公司 一种实时标定六维传感器姿态的方法、装置及终端设备
JP7099908B2 (ja) * 2018-08-30 2022-07-12 トヨタ自動車株式会社 センサシステム、ロボットハンド、センサシステムの較正方法、およびプログラム
KR102543596B1 (ko) * 2018-08-31 2023-06-19 삼성전자주식회사 외력의 측정을 위한 적어도 하나의 파라미터를 산출하는 방법 및 이를 수행하는 전자 장치
US11027435B2 (en) 2018-12-04 2021-06-08 Raytheon Company Automated work piece testing system and method for same
US11198227B2 (en) 2018-12-04 2021-12-14 Raytheon Company Adjustable ballast system and method for same
DE102018133418B3 (de) * 2018-12-21 2020-03-26 Battenberg Robotic Gmbh & Co. Kg Verfahren zur Messung der Steifigkeit eines Körpers
JP7227012B2 (ja) * 2019-01-10 2023-02-21 ファナック株式会社 多関節ロボットの制御装置
DE102019101595B3 (de) * 2019-01-23 2020-03-12 Franka Emika Gmbh Verfahren zum Ermitteln einer Gewichtskraft und eines Schwerpunktes einer Robotermanipulatorlast
JP7092307B2 (ja) 2019-02-01 2022-06-28 三菱電機株式会社 作業判別装置および作業判別方法
JP7000368B2 (ja) * 2019-02-08 2022-01-19 ファナック株式会社 ロボットキャリブレーション方法及びロボットキャリブレーション装置
DE102019120157B3 (de) * 2019-07-25 2020-08-20 Franka Emika Gmbh Verifikation eines Massemodells eines Robotermanipulators
DE102019131401B3 (de) * 2019-11-21 2020-10-29 Franka Emika Gmbh Kalibrierung einer Impedanzregelung eines Robotermanipulators
CN111189577B (zh) * 2020-01-16 2022-01-07 腾讯科技(深圳)有限公司 传感器标定及数据测量方法、装置、设备、存储介质
CN113492398B (zh) * 2020-04-02 2022-12-20 北京配天技术有限公司 标定杆、重力加速度方向的标定系统及其标定方法
US11345017B2 (en) * 2020-06-11 2022-05-31 Andrew Flessas Method and system for moving cable-mounted objects using robotic mounts
CN112077816B (zh) * 2020-09-24 2023-12-19 上海交通大学 遥操作设备力反馈功能的测试装置及方法
EP4043161A1 (de) * 2021-02-11 2022-08-17 Siemens Aktiengesellschaft Verfahren zum kalibrieren eines roboterarms und roboteranordnung mit einem rotoberarm
CN112975971B (zh) * 2021-03-01 2022-03-11 南京航空航天大学 一种机器人惯性力补偿方法
CA3212211A1 (en) 2021-03-31 2022-10-06 David Paul Noonan Co-manipulation surgical system for use with surgical instruments for performing laparoscopic surgery
US11812938B2 (en) 2021-03-31 2023-11-14 Moon Surgical Sas Co-manipulation surgical system having a coupling mechanism removeably attachable to surgical instruments
CN113319833B (zh) * 2021-05-19 2022-09-02 三一建筑机器人(西安)研究院有限公司 直角坐标机器人标定方法及装配系统
US20230049155A1 (en) * 2021-08-12 2023-02-16 Ati Industrial Automation, Inc. Gravity and Inertial Compensation of Force/Torque Sensors
JP2023030396A (ja) * 2021-08-23 2023-03-08 株式会社トキワシステムテクノロジーズ 直接教示システム、直接教示プログラム、直接教示方法
CN114767302B (zh) * 2022-06-17 2022-11-01 杭州柳叶刀机器人有限公司 口腔机器人的控制方法、装置和电子设备
CN114952861B (zh) * 2022-06-27 2024-05-03 西南交通大学 基于位姿测量数据的机器人运动学参数误差精准辨识方法
DE102022213568B3 (de) 2022-12-13 2024-02-29 Kuka Deutschland Gmbh Kalibrieren einer Steuerung
US11832910B1 (en) * 2023-01-09 2023-12-05 Moon Surgical Sas Co-manipulation surgical system having adaptive gravity compensation
US11986165B1 (en) 2023-01-09 2024-05-21 Moon Surgical Sas Co-manipulation surgical system for use with surgical instruments for performing laparoscopic surgery while estimating hold force

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2529280B2 (ja) * 1987-07-21 1996-08-28 松下電器産業株式会社 多関節ロボットの制御装置
JP2515594B2 (ja) * 1989-07-20 1996-07-10 三菱電機株式会社 ロボットの力制御方法及び装置
JPH06262563A (ja) * 1993-03-17 1994-09-20 Fanuc Ltd 産業用ロボットの位置教示支援用力表示装置
JPH07205075A (ja) * 1994-01-25 1995-08-08 Nippon Steel Corp 力制御ロボットにおけるエンドエフェクタの重量補償方法
JP3053606B2 (ja) 1998-02-23 2000-06-19 ファナック株式会社 ロボットに装着された力センサのキャリブレーション方法及びロボット
US6812665B2 (en) * 2002-04-19 2004-11-02 Abb Ab In-process relative robot workcell calibration
JP5311294B2 (ja) 2010-04-28 2013-10-09 株式会社安川電機 ロボットの接触位置検出装置
JP5550468B2 (ja) 2010-06-30 2014-07-16 キヤノン株式会社 力覚センサの校正方法
JP5618066B2 (ja) 2010-08-18 2014-11-05 株式会社Ihi 力制御ロボットのキャリブレーション装置と方法
JP5720876B2 (ja) * 2010-11-29 2015-05-20 株式会社Ihi 加工ロボット及びその重力補償方法
JP6003312B2 (ja) 2012-07-10 2016-10-05 セイコーエプソン株式会社 ロボットシステム
CN103600354B (zh) * 2013-11-08 2016-10-05 北京卫星环境工程研究所 航天器机械臂柔性随动控制重力补偿方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200031722A (ko) * 2018-09-14 2020-03-25 삼성디스플레이 주식회사 로봇암 장치
KR102495331B1 (ko) 2018-09-14 2023-02-03 삼성디스플레이 주식회사 로봇암 장치

Also Published As

Publication number Publication date
DE112016002797B4 (de) 2019-12-12
CN107708937B (zh) 2021-03-05
JPWO2016208467A1 (ja) 2017-09-07
US20180169854A1 (en) 2018-06-21
CN107708937A (zh) 2018-02-16
WO2016208467A1 (ja) 2016-12-29
DE112016002797T5 (de) 2018-03-22

Similar Documents

Publication Publication Date Title
JP6223640B2 (ja) キャリブレーション装置およびこれを用いたロボットシステム
JP4271232B2 (ja) ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体
US10589424B2 (en) Robot control device, robot, and robot system
US9969088B2 (en) Force sensor correcting method
US11498219B2 (en) Method for controlling an end element of a machine tool, and a machine tool
JP6733239B2 (ja) 制御装置及びロボットシステム
US11161249B2 (en) Robot control apparatus and robot system
JP5946859B2 (ja) 力に応じて動かすロボットのロボット制御装置およびロボットシステム
JP2016187844A (ja) ロボット、ロボット制御装置およびロボットシステム
US20170277167A1 (en) Robot system, robot control device, and robot
US9555548B2 (en) Robot control device for controlling robot moved according to applied force
US20160089788A1 (en) Robot, robot system, control device, and control method
JP2017074647A (ja) センサの位置と向きを算出する機能を備えたロボットシステム
EP2404712A1 (en) A dual arm robot and a method for controlling a dual arm robot
CN112123341B (zh) 机器人双臂协调运动控制方法、装置和电子设备
JP2015089584A (ja) ロボットの制御方法及びロボットシステム
US7957834B2 (en) Method for calculating rotation center point and axis of rotation, method for generating program, method for moving manipulator and positioning device, and robotic system
CN109311163B (zh) 校正机器人的运动控制命令的方法及其相关设备
JP6011089B2 (ja) ロボットシステム並びにロボット制御装置及び方法
JP2017047479A (ja) ロボット、制御装置、及びロボットシステム
JP6273783B2 (ja) ツール先端点情報補正プログラム、ツール先端点情報補正装置、及び、ツール先端点情報補正方法
JP2015222196A (ja) 三次元測定機、及びこれを用いた形状測定方法
JP2021186929A (ja) 多軸ロボットの制御方法
JP6743431B2 (ja) 制御装置、及びロボットシステム
CN113492400B (zh) 机器人的控制方法及机器人系统

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170510

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170510

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170510

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170605

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170620

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170721

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: 20170905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171003

R150 Certificate of patent or registration of utility model

Ref document number: 6223640

Country of ref document: JP

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