JP2018020430A - ロボット装置、ロボット制御方法、物品の製造方法、プログラム及び記録媒体 - Google Patents

ロボット装置、ロボット制御方法、物品の製造方法、プログラム及び記録媒体 Download PDF

Info

Publication number
JP2018020430A
JP2018020430A JP2017133945A JP2017133945A JP2018020430A JP 2018020430 A JP2018020430 A JP 2018020430A JP 2017133945 A JP2017133945 A JP 2017133945A JP 2017133945 A JP2017133945 A JP 2017133945A JP 2018020430 A JP2018020430 A JP 2018020430A
Authority
JP
Japan
Prior art keywords
robot
workpiece
value
force sensor
work
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
JP2017133945A
Other languages
English (en)
Other versions
JP6479101B2 (ja
Inventor
昭也 三浦
Akinari Miura
昭也 三浦
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to US15/647,978 priority Critical patent/US20180021949A1/en
Priority to CN201710578535.0A priority patent/CN107639634A/zh
Priority to EP17181781.0A priority patent/EP3272471A3/en
Publication of JP2018020430A publication Critical patent/JP2018020430A/ja
Application granted granted Critical
Publication of JP6479101B2 publication Critical patent/JP6479101B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】力覚センサやロボットアームに過大な負荷が繰り返し作用するのを抑制し、各ワークに過大な負荷が作用するのを抑制し、ロボットハンドが把持する第1ワークの質量にばらつきがあっても、高精度な嵌合作業を可能にする。【解決手段】ワークW1をワークW2に接触させるよう、力覚センサ203の検出値を目標値に近づけるようロボットアーム201の動作をインピーダンス制御する制御部301が、ワークW1を把持させるロボットハンド202移動させて、力覚センサ203の検出値から第1の目標値を得る。また、得られた第1の目標値を力覚センサ203の検出値とみなして、インピーダンス制御を行う。【選択図】図1

Description

本発明は、インピーダンス制御を行うロボット制御の技術に関する。
多関節のロボットアームは、複数のリンクが関節部を介して連結されて構成されている。ロボットアームの先端のリンクには、エンドエフェクタとしてロボットハンドが、力覚センサを介して装着される。
ロボットの動作は、制御装置により制御される。制御装置は、ロボットの動作を制御して、各種の生産作業をロボットに実行させる。生産作業には、例えば第1ワークを第2ワークに嵌合する嵌合作業がある。具体的には、第2ワークを保持具に固定し、ロボットにより第1ワークを第2ワークに嵌合させる。この嵌合作業時、制御装置は、第1ワークを第2ワークに嵌合する移動方向に移動させながら、移動方向と直交する方向の力の検出値が小さくなるようにロボットアームを動作させるインピーダンス制御を行う。
ところで、嵌合作業時、力覚センサには、ロボットハンドの重量やロボットハンドに把持させた第1ワークの重量がかかる。そして、ロボットアームを動作させると、ロボットハンドには、ロボットハンドの自重及び第1ワークの重量により振動が発生する。通常、インピーダンス制御では、力覚センサの検出値が小さくなる方向にロボットアームを動作させようとする。このため第1ワークが第2ワークに接触する前にインピーダンス制御を開始すると、ロボットアーム先端は微小に振動しながら動作するため、力のかかっている方向である振動の方向にロボットハンドの位置を修正しようとしてしまう。このため、第2ワークに対する第1ワークのずれ量が大きくなり、嵌合作業が失敗することがあった。
これに対し、特許文献1では、ロボットハンドに把持させた第1ワークが第2ワークに接触するまでは、位置制御によりロボットアームを動作させ、接触した後は、インピーダンス制御によりロボットアームを動作させる提案がなされている。
この特許文献1では、第1ワークが第2ワークに接触したか否かの判断を、力覚センサの検出値が閾値以上となったか否かで行っている。ここで、力覚センサの検出値には、ロボットハンドの重量や第1ワークの重量などの重力成分が含まれる。例えば、第1ワークを移動させる移動方向が重力方向と直交する方向、即ち水平方向である場合には、移動方向と直交する方向の力検出成分に重力成分が重畳される。したがって、特許文献1では、力覚センサの検出値に含まれる重力成分を補償する重力補償値を、ロボットの姿勢とエンドエフェクタの質量から演算によって求め、検出値に対し重力補償値で補正を行っている。
特開2010−142909号公報
しかしながら、第1ワークが第2ワークに接触した時に位置制御からインピーダンス制御に切り替えるようにすると、力覚センサには、ロボットハンドを介して過大な負荷が作用することがあった。また、各ワークにも過大な負荷が作用することがあった。
即ち、位置制御では、第1ワークを目標位置に保持するようにロボットアームの動作を制御する。ロボットハンドが把持した第1ワークが第2ワークに接触した時には、第1ワークが第2ワークから受けた外力により目標の位置からずれる方向に移動しようとする。位置制御では、位置ずれを解消する方向に第1ワークを押し戻すようロボットアームを制御するため、第1ワークを第2ワークに押し付ける力が増大する。この結果、ロボットハンドが把持した第1ワークが第2ワークに接触した時には、各ワーク及び力覚センサに過大な負荷が作用することがあった。このような過大な負荷が力覚センサに繰り返し作用すると、力覚センサが劣化し、力覚センサの検出精度が低下したり、力覚センサが破損したりすることがあった。また、過大な負荷がロボットアームに繰り返し作用すると、ロボットアームが劣化したり破損したりすることがあった。また、各ワークの品質、ひいては嵌合作業により製造された物品の品質が低下することもあった。
また、ロボットハンドに把持させる実際の第1ワークには、質量のばらつきがある。このため、第1ワークの質量として、予め決められた値(設計値など)を用いて重力補償値を演算すると、第1ワークには質量のばらつきがあるので、重力補償値には、第1ワークの質量のばらつきによる誤差が含まれることになる。また、ロボットハンドによる第1ワークの把持位置のずれに起因する誤差も重力補償値に含まれることになる。よって、一定の重力補償値で重力補償したロボットアームのインピーダンス制御では、精密な嵌合作業を行うのは困難であった。
そこで本発明は、力覚センサやロボットアームに過大な負荷が繰り返し作用するのを抑制し、各ワークに過大な負荷が作用するのを抑制し、ロボットハンドが把持する第1ワークの質量にばらつきがあっても、高精度な組付作業を可能にすることを目的とする。
本発明のロボット装置は、ロボットアームと、前記ロボットアームに支持された、第1ワークを把持させるロボットハンドと、前記ロボットアームと前記ロボットハンドとの間に設けられた力覚センサと、前記第1ワークが第2ワークに接触させるよう、前記力覚センサの検出値を目標値に近づけるよう前記ロボットアームの動作をインピーダンス制御する制御部と、を備え、前記制御部は、前記ロボットハンドを移動させて、前記力覚センサの検出値から第1の目標値を得る第1の処理と、前記第1の目標値を前記検出値とみなして、前記インピーダンス制御を行う第2の処理と、を実行することを特徴とする。
本発明のロボット制御方法は、第1ワークを第2ワークに接触させるよう、力覚センサの検出値を目標値に近づけるようロボットアームの動作をインピーダンス制御するロボット制御方法であって、前記第1ワークを把持させるロボットハンドを移動させて、前記力覚センサの検出値から第1の目標値を得る第1の工程と、前記第1の目標値を前記検出値とみなして、前記インピーダンス制御を行う第2の工程と、を備えることを特徴とする。
本発明の物品の製造方法は、力覚センサの検出値を目標値に近づけるようロボットアームの動作をインピーダンス制御して、第1ワークを第2ワークに接触させた物品を製造する物品の製造方法であって、前記第1ワークを移動させて、前記力覚センサの検出値から第1の目標値を得る第1の工程と、前記第1の目標値を前記検出値とみなして、前記インピーダンス制御を行い、前記第1ワークを第2ワークに接触させる第2の工程と、を備えることを特徴とする。
本発明によれば、力覚センサに過大な負荷が繰り返し作用するのが抑制される。また、各ワークに過大な負荷が作用するのが抑制される。また、ロボットハンドが把持する第1ワークの質量にばらつきがあっても、高精度な組立作業が可能となる。
第1実施形態に係るロボット装置の概略構成を示す模式図である。 第1実施形態においてロボットハンドを作業開始位置に位置決めした状態を示す模式図である。 第1実施形態に係る物品の製造方法(ロボット制御方法)を示すフローチャートである。 (a)〜(c)は、嵌合作業を行うときのロボットの動作を説明するための図である。 (a)〜(c)は、嵌合作業を行うときのロボットの動作を説明するための図である。 時間に対する力覚センサの検出値及びワークを把持したロボットハンドの移動速度を示す説明図である。 第2実施形態においてロボットハンドを作業開始位置に位置決めした状態を示す模式図である。
以下、本発明を実施するための形態を、図面を参照しながら詳細に説明する。
[第1実施形態]
図1は、第1実施形態に係るロボット装置の概略構成を示す模式図である。ロボット装置100は、工場等の生産ラインに配置される生産装置である。ロボット装置100は、作業ロボットとしてのロボット200と、ロボット200の動作を制御する制御装置300と、を備えて構成される。ロボット200は、垂直多関節(例えば6関節)のロボットアーム201と、ロボットアーム201の先端に支持されたエンドエフェクタとしてのロボットハンド202とを有している。また、ロボット200は、ロボットアーム201とロボットハンド202の間に設けられた力覚センサ203を有している。
ロボットアーム201は、複数のリンク210〜216を有し、複数のリンク210〜216が関節で回転又は旋回(揺動)可能に連結されて構成されている。ロボットアーム201の基端(リンク210)は、ベース部材を構成し、架台150に固定されている。即ち、ロボットアーム201の基端(リンク210)が固定端であり、ロボットアーム201の先端(リンク216)が自由端である。ロボットハンド202は、ロボットアーム201の先端(リンク216)に力覚センサ203を介して取り付けられている。
ロボットハンド202は、複数のフィンガーを有しており、複数のフィンガーを閉動作させることにより、第1ワークであるワークW1を把持することができ、複数のフィンガーを開動作させることにより、ワークW1を把持解放することができる。また、架台150には、第2ワークであるワークW2を保持する保持具160が設けられている。ワークW1は、円環状の部材であり、ワークW2は、ワークW1が嵌る円筒部を有する部材である。ロボットハンド202に把持させたワークW1をワークW2に接触、組み付けもしくは嵌合することで物品が製造される。なお、ワークW1,W2の形状はこれに限定されるものではない。例えばワークW1が円筒状の部材であり、ワークW2が嵌合穴を有する部材であってもよい。
力覚センサ203は、ロボットアーム201の先端にかかる力を検出する。力覚センサ203は、6軸力覚センサである。ロボットアーム201の先端、即ち力覚センサ203には、互いに直交する3軸Sx,Sy,Szからなるセンサ座標系Σsの原点Osが設定されている。力覚センサ203が検出する力は、センサ座標系Σsを基準に、互いに直交する3軸Sx,Sy,Szの方向の力成分(Fx,Fy,Fz)及び各軸Sx,Sy,Szまわりのモーメント成分(Mx,My,Mz)からなる。よって、力覚センサ203は、ロボットアーム201の先端に作用するどの方向からの力も検出することができる。力覚センサ203としては、静電容量式、歪みゲージ式、光学式、その他の方式のものを用いることができる。
制御装置300は、制御部(処理部)としてのCPU(Central Processing Unit)301を備えている。また、制御装置300は、記憶部として、ROM(Read Only Memory)302、RAM(Random Access Memory)303、HDD(Hard Disk Drive)304を備えている。また、制御装置300は、記録ディスクドライブ305、複数(ロボットアーム201の関節の数と同じ6つ)のサーボ制御回路311及びインタフェース321,322を備えている。これら制御装置300の各構成要素は、同一の筐体内に収納されているが、別々の筐体内に配置されていてもよい。また、サーボ制御回路311は、ロボットアーム201内に配置されていてもよい。
CPU301には、ROM302、RAM303、HDD304、記録ディスクドライブ305、サーボ制御回路311及びインタフェース321,322が、バス310を介して接続されている。
ROM302には、BIOS等の基本プログラムが格納されている。RAM303は、CPU301の演算処理結果等、各種データを一時的に記憶する記憶装置である。HDD304は、CPU301の演算処理結果や外部から取得した各種データ等を記憶する記憶装置であると共に、CPU301に、後述する各種演算処理を実行させるためのプログラム350を記録するものである。CPU301は、HDD304に記録(格納)されたプログラム350に基づいてロボット制御方法(物品の製造方法)の各工程を実行する。また、HDD304には、ロボット言語で記述されたロボット動作プログラムが格納されている。記録ディスクドライブ305は、記録ディスク360に記録された各種データやプログラム等を読み出すことができる。
CPU301は、各サーボ制御回路311に位置指令を出力して各ロボット200の動作を制御する。各サーボ制御回路311は、ロボットアーム201の各関節に配置され、各関節を駆動する不図示のモータに接続されており、位置指令に応じてモータを駆動する。
インタフェース321には、力覚センサ203が接続されている。インタフェース321は、力覚センサ203の検出結果を、CPU301にて処理可能な、検出値を示す信号としてCPU301に出力する。
インタフェース322には、書き換え可能な不揮発性メモリや外付けHDD等の外部記憶装置330が接続されている。
なお、第1実施形態では、コンピュータ読み取り可能な記録媒体がHDD304であり、HDD304にプログラム350が格納される場合について説明するが、これに限定するものではない。プログラム350は、コンピュータ読み取り可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。例えば、プログラム350を供給するための記録媒体としては、図1に示すROM302や、記録ディスク360、外部記憶装置330を用いてもよい。具体例を挙げて説明すると、記録媒体として、フレキシブルディスク、HDD、SSD、CD−ROM、DVD−ROM、磁気テープ、USBメモリ等の不揮発性メモリ、ROM等を用いることができる。また、記憶部としてHDD304の場合について説明するが、SSDや書き換え可能な不揮発性メモリであってもよい。
ここで、ロボットアーム201の基端には、互いに直交する3軸Xo,Yo,Zoからなる絶対座標系Σoの原点Oが設定されている。また、ロボット200の手先、つまりロボットハンド202には、ツールセンターポイント(TCP)が設定されている。TCPは、ロボットアーム201の基端に設定された絶対座標系Σoの原点Oを基準に、位置を表す3つのパラメータと、姿勢を表す3つのパラメータで表される。このTCPの目標値である教示点が、記憶部であるHDD304に格納されたロボット動作プログラムに記述されている。
CPU301は、ロボット動作プログラムに記述された補間方法に従い、教示点間を補間し、逆運動学計算により各関節の値に変換したロボットアーム201の軌道データを生成する。ここで、教示点間を補間する補間方法としては、直線補間、円弧補間、関節補間、Spline補間、B−Spline補間、ベジェ曲線など、種々の方法がある。軌道データは、時刻毎(例えば1[ms]毎)の位置指令の集合である。位置指令は、各モータの目標回転位置を表す。CPU301は、位置指令を各サーボ制御回路311に出力することで、ロボットアーム201の動作を制御する。
ここで、ロボットアーム201の動作の制御として、位置制御とインピーダンス制御がある。位置制御では、ロボット200の手先に設定したTCPが絶対座標系Σoの3軸Xo,Yo,Zoで目標位置となるようにロボットアーム201の動作を制御する。換言すると、ロボットアーム201の各関節の関節角度が目標関節角度となるように、即ち各関節のモータの回転位置が目標回転位置となるようにロボットアーム201の動作を制御する。このとき、力覚センサ203により検出された力の検出値に関係なくロボットアーム201の動作を制御する。したがって、ロボット200の手先に外力が作用すると、その外力に抗してTCPを目標位置に保つように制御する。よって、位置制御を行っているときにロボット200の手先に外力が作用すると、ロボットアーム201の剛性を高める制御をする。
インピーダンス制御では、力覚センサ203による力の検出値を目標値(より具体的には0)に近づけるようにロボットアーム201の動作を制御する。したがって、ロボット200の手先に外力が作用した時には、その外力が作用する方向に手先を移動させるよう制御する。例えば、ロボットハンド202が把持しているワークW1がワークW2に引っ掛かるなどして外力がワークW1に作用した場合には、外力がワークW1を把持しているロボットハンド202を介して力覚センサ203に伝わる。したがって、力覚センサ203により検出された外力が小さくなる方向、即ち引っ掛かりが解消する方向にロボットアーム201の動作を制御することになる。よって、インピーダンス制御を行っているときには、ロボットアーム201の柔軟性を高める制御をする。
図2は、第1実施形態においてロボットハンドを作業開始位置に位置決めした状態を示す模式図である。
第1実施形態では、ワークW1をワークW2に嵌合する嵌合作業を行い、ワークW1がワークW2に嵌合された物品W0を製造する。CPU301は、嵌合作業を行う際には、位置制御とインピーダンス制御のいずれかを選択的に実行する。
力覚センサ203は、リンク216のフランジ面に固定されている。フランジ面に垂直な方向に、センサ座標系ΣsのSz軸が延びている。ロボットハンド202は、力覚センサ203の先端に装着され、ワークW1を把持する。被嵌合ワークであるワークW2は、中心軸C2が絶対座標系ΣoのXo軸と平行な向きに固定される。
第1実施形態では、センサ座標系ΣsのSz軸と絶対座標系ΣoのXo軸とが平行な状態となり、センサ座標系ΣsのSx軸と絶対座標系ΣoのZo軸とが平行な状態でワークW1とワークW2との嵌合作業を行う。図2では、ワークW1の中心軸C1がワークW2の中心軸C2と重なるようにロボットアーム201を制御した状態を図示している。図2に示すように、第1実施形態では、ワークW1とワークW2とが接触しない位置を、嵌合作業を開始する(つまりインピーダンス制御を開始する)作業開始位置とする。この作業開始位置に位置決めした状態から、ワークW1をXo軸の方向(Sz軸の方向)である移動方向Dに移動させて、ワークW1をワークW2に嵌合する嵌合作業を行う。
図3は、第1実施形態に係る物品の製造方法、即ちロボット制御方法を示すフローチャートである。図4(a)〜図4(c)及び図5(a)〜図5(c)は、嵌合作業を行うときのロボット200の動作を説明するための図である。図6は、時間に対する力覚センサの検出値及びワークを把持したロボットハンドの移動速度を示す説明図である。なお、第1実施形態では、嵌合作業を行う移動方向Dが水平方向であるものとして説明する。
図4(a)は、ワークW1を位置PAに移動させた状態を示す図である。図4(b)は、ワークW1を位置PBに移動させた状態を示す図である。図4(c)は、ワークW1を位置PCに移動させた状態を示す図である。図5(a)は、ワークW1を位置PDに移動させた状態を示す図である。図5(b)は、ワークW1を位置PEに移動させた状態を示す図である。図5(c)は、ワークW1からロボット200を退避させた状態を示す図である。
位置PAは、ワークW1をロボットハンド202に把持させてから次の位置PBに移動させる途中のワークW1の位置である。位置PBは、ワークW1がワークW2に対向し、ワークW1がワークW2に接触しない位置である。例えば、ワークW1とワークW2との間隔が10[mm]となる位置である。位置PCは、ワークW1がワークW2に対向し、ワークW1がワークW2に接触しない位置であって、嵌合作業を開始する位置、即ちインピーダンス制御を開始する位置(作業開始位置)である。そして、位置PCは、位置PBよりもワークW2に近い位置である。例えば、ワークW1とワークW2との間隔が5[mm]となる位置である。これら位置PA,PB,PCは、予め教示により設定された位置である。位置PDは、ワークW1がワークW2に接触する位置である。位置PEは、ワークW1がワークW2に嵌合完了する位置、即ちインピーダンス制御を終了する位置(作業完了位置)である。
位置PAへのワークW1の移動が完了すると、位置PAから位置PEまで連続的にロボットアーム201を動作させる。
まず、CPU301は、ロボットハンド202にワークW1を把持させている位置PA(図4(a))から位置PB(図4(b))にワークW1が移動するよう、ロボットアーム201の動作を制御する(S1)。このステップS1では、CPU301は、位置制御によりロボットアーム201の動作を制御する。この位置制御により、ワークW1の中心軸C1がワークW2の中心軸C2にほぼ一致するようにワークW1がワークW2に対向する。
次にCPU301は、ロボットハンド202にワークW1を把持させた状態で、ワークW1が位置PB(図4(b))から位置PC(図4(c))まで移動するようロボットアーム201の動作の制御を開始する(S2)。このとき速度Vxは一定であることが好ましく、例えば35[mm/s]とする。ここで速度が一定とは速度が変化しない場合に限らず、指定速度に対し、速度の最大値と最小値の差の絶対値が10%以下のことである。このとき、CPU301は、ロボットアーム201の動作を制御して、ロボットアーム201の先端の姿勢を一定に保ちつつロボットアーム201の先端を移動方向Dへ移動させる。つまり、CPU301は、ステップS2では、ワークW1が移動方向Dに移動するようロボットアーム201の動作を制御する。
ここで、ロボットハンド202には重量WGがあり、ロボットハンド202が把持したワークW1にも重量WGがある(図2)。ロボットアーム201の動作中、ロボットハンド202は、ロボットハンド202が把持したワークW1の慣性力及びロボットハンド202の慣性力により振動する。具体的には、力覚センサ203は、ばね部材(可撓性部材)と、ばね部材の変形を検出する素子とを有する。ワークW1の慣性力及びロボットハンド202の慣性力により力覚センサ203のばね部材が変形してロボットハンド202が振動する。この振動は、力覚センサ203の力の検出値に現れる。そして、この振動は、重力の方向が顕著に現れる。例えば、図6に示すように、力覚センサ203のSx軸方向の力の検出値Fxが振動する。
したがって、CPU301は、位置PBから位置PCへワークW1を動作させているときに、力覚センサ203からの力の検出値(データ)を取得する(S3)。そして、CPU301は、ワークW1が位置PCに到達したか否かを判断し(S4)、到達していなければ(S4:No)、ステップS3に戻り、ワークW1が位置PCに到達するまで、力覚センサ203からのデータの取得を続行する。ステップS3,S4のループによる力覚センサ203のデータ数は適宜決定してよい。第1実施形態では、例えば、データのサンプリング周期を1[μs]、位置PBから位置PCまでのサンプリング時間を0.2[s]とした。
以上、CPU301は、ステップS2〜S4において、位置PBから位置PCまでワークW1を移動するようロボットアーム201の動作を制御する(定速処理、定速工程)。このとき速度Vxが一定であると、ロボットハンド202及びワークW1に加速度が生じないようにロボットアーム201を動作できる。このとき、ロボットハンド202及びワークW1に加速度が生じないように、ロボットハンド202及びワークW1を直線移動させるのが好ましい。
CPU301は、ワークW1が位置PC(図4(c))に到達したと判断した場合(S4:Yes)、力覚センサ203の検出値から目標値を得るために検出値Fx,Fyの中心値、及び中心値に対する最大の振幅値を演算する(S5:演算処理、演算工程)。つまり、ステップS5では、位置PBから位置PCまでロボットハンドを移動させた期間中に取得した力覚センサ203の移動方向Dに交差(直交)する方向である軸Sx,Syの方向の力の検出値の中心値と振動の振幅を得る。第1実施形態では、検出値Fyは0であったものとし、重力方向にのみロボットハンド202が振動していたものとして説明する。即ち、図6に示すように、位置PBから位置PCまで定速処理を行った期間中に取得した力覚センサ203の検出値Fxの中心値Fcx及び中心値Fcxに対する最大の振幅値ΔFxを得る。CPU301は、これら値Fcx,ΔFxを、図1のHDD304等の記憶部に記憶させておく。ここでの中心値とは、力覚センサ203より得られたデータを不図示のローパスフィルタ回路を用いてカットオフ周波数よりも高い周波数をフィルタアウトした値の全データの平均値である。
次に、CPU301は、検出値Fxを第1の目標値に近づけるインピーダンス制御を行いながら、ワークW1が位置PC(図4(c))から位置PE(図5(b))まで移動方向Dに移動するようロボットアームの動作を制御する(S6〜S13:嵌合処理)。本実施形態では第1の目標値は中心値Fcxである。また、ワークW1を移動方向Dに移動させながら、力覚センサ203により検出された力の検出値のうち、移動方向と直交(交差)する方向の検出値Fxが中心値Fcxに近づくようにロボットアーム201を動作させるインピーダンス制御を行うことが好ましい。このように、CPU301は、ワークW1が位置PCに到達したら、位置制御からインピーダンス制御にロボットアーム201の動作の制御を切り替える。
CPU301は、ステップS8〜S10において、位置PC(図4(c))から位置PD(図5(a))までの期間、第1の目標値を検出値とみなして(ここでは、検出値Fxが中心値Fcxと同じ値になっているとみなして)インピーダンス制御を行う。位置PCから位置PDまでの期間は、位置PCからワークW1の移動を開始してから、力覚センサの検出値が第2の目標値を超えるまでの期間である。本実施形態では、第2の目標値は、中心値Fcxに対する検出値Fxの偏差|Fx−Fcx|と振幅値ΔFxとを等しくする検出値Fxである。以上、ここまでを第1の処理という。
以下、ステップS6以降の処理について具体的に説明する。CPU301は、力覚センサ203の初期化を行う(S6)。具体的には、CPU301は、検出値Fxを、図6に示すように、中心値Fcxを基準とする値に補正する。この中心値Fcxにより、ロボットハンド202の重量WG及びワークW1の重量WGによる重力成分が検出値Fxから差し引かれる。
このように、ワークW1をワークW2に嵌合する嵌合作業をするたびに重力補償値である中心値Fcxを計測するようにしたので、ロボットハンド202が把持するワークW1に重量WGのばらつきがあっても、精度よく重力成分を補償することができる。また、ロボットハンド202におけるワークW1の把持位置にばらつきがあっても、精度よく重力成分を補償することができる。
次に、CPU301は、インピーダンス制御を開始する(S7)と同時に、位置PCから移動を開始する(S8)。インピーダンス制御では、補正後の検出値Fxを0に近づける制御を行う。インピーダンス制御を開始したところを第2の処理の開始時期とする。
CPU301は、位置PCから位置PDまでの期間中、ワークW1が一定の速度で移動するようロボットアーム201の動作を制御する。つまり、ロボットハンド202(ワークW1)に加速度が生じるのを防止している。
このとき、CPU301は、ステップS2〜S4の処理に引き続き、当該処理でワークW1を移動させた速度と同じ速度VxでワークW1を移動方向Dに移動させることが好ましい。つまり、第1の処理と同じ条件でワークW1を移動させることが好ましい。これにより、ロボットハンド202の振動の状態は、第1の処理の場合とほぼ同様となるからである。
そして、CPU301は、振幅値ΔFxを不感帯とし、補正後の検出値Fxの大きさが不感帯ΔFx以上であるか否かを判断する(S9)。CPU301は、補正後の検出値Fxの大きさが不感帯ΔFx以上でなければ(S9:No)、補正後の検出値Fxが0になっているとみなす(S10)。即ち、力覚センサ203から検出した(補正していない)検出値Fxが中心値Fcx(第一の目標値)になっているものとみなす。
つまり、位置PCから位置PDまでは、ワークW1はワークW2に接触しておらず、ステップS2〜S4の処理と同様、ロボットハンド202が振動している状態である。よって、ロボットハンド202が振動している間は、不感帯ΔFxを設けてインピーダンス制御を行う。
仮に、不感帯ΔFxを設けずにインピーダンス制御を行うと、外力が作用している振動の方向にロボットハンド202(ワークW1)の位置を補正しようとするため、ワークW2の中心軸C2に対するワークW1の中心軸C1のずれ量が大きくなるおそれがある。
これに対し、第1実施形態では、ステップS9,S10により、ワークW1がワークW2に接触するまでの期間は、補正後の検出値Fxが0になっているものとみなしているので、中心軸C2に対する中心軸C1のずれ量を小さくすることができる。具体的には、ロボットハンド202の振動の分のずれ量にすることができる。よって、ワークW1を位置PCから位置PDまで良好に案内することができる。
CPU301は、ステップS9において、補正後の検出値Fxの大きさが不感帯ΔFx以上と判断した場合(S9:Yes)、ワークW1がワークW2に接触したので、不感帯を解除し(S11)、インピーダンス制御を続行する。
第1実施形態では、移動方向Dと交差(直交)する交差方向においては、インピーダンス制御にてワークW1をワークW2に接触させている。つまり、位置制御のときのように、ワークW1がワークW2に接触した時に生じる交差方向のずれを解消しようとする力が、ワークW1,W2にかからないようにしている。これにより、ワークW1がワークW2に接触したときの接触力だけがワークW1,W2にかかるようになるため、ワークW1,W2及び力覚センサ203に過負荷がかかるのを抑制することができる。
CPU301は、移動方向DへのワークW1の移動を継続しながら、検出値Fzが予め設定された閾値THz以上であるか否かを判断する(S12)。CPU301は、検出値Fzが閾値THzを下回ると判断した場合(S12:No)、ステップS12を繰り返し、ワークW1を移動方向Dに移動させながらインピーダンス制御を継続する。
CPU301は、検出値Fzが閾値THz以上であると判断した場合(S12:Yes)、インピーダンス制御を終了する(S13)。このように、ステップS11〜ステップS13までのインピーダンス制御では、不感帯ΔFxが解除されているので、力覚センサ203の検出値に基づいて感度よくインピーダンス制御による嵌合作業を行うことができる。このため、嵌合作業の途中でワークW1がワークW2に引っ掛かるのが抑制され、高精度な組付作業が可能となる。
CPU301は、ワークW1が位置PE(図5(b))に到達したか否かを判断する(S14)。CPU301は、ワークW1が位置PEに到達したと判断した場合(S14:Yes)、嵌合作業が成功したので、ワークW1の把持を解除する(S15)。ワークW1が位置PEに到達したと判断したところまでを第2の処理という。そして、CPU301は、図5(c)に示すように退避位置にロボットハンド202が退避するようロボットアーム201を制御する(S16)。
なお、CPU301は、ワークW1が位置PEに到達していないと判断した場合(S14:No)、嵌合作業が失敗しているので、ロボットアーム201の動作を停止する(S17)。
以上、第1実施形態によれば、位置PCから位置PDまでワークW1が移動する期間中、不感帯ΔFxを設けてインピーダンス制御を行うので、ロボットアーム201や力覚センサ203、特に力覚センサ203に過大な負荷が繰り返し作用するのが抑制される。よって、ロボットアーム201や力覚センサ203が劣化したり破損したりするのを抑制することができる。また、各ワークW1,W2に過大な負荷が作用するのが抑制される。よって、各ワークW1,W2、ひいては物品W0の品質が向上する。
また、第1実施形態では、事前にワークW1の重量のデータを取得しておく必要がない。ロボットハンド202が把持するワークW1の質量にばらつきがあっても、ロボットハンド202に対するワークW1の把持位置にばらつきがあっても、ワークW1毎に中心値Fcxを計測して重力補償を行うので、高精度な嵌合作業が可能となる。
また、第1実施形態によれば、ワークW1を直進移動させて嵌合作業を行う際にインピーダンス制御時の直進性を担保することができる。また、第1実施形態によれば、ワークW1を位置PCから位置PDまで移動させるときに、ワークW1の移動速度を落とすことなく嵌合作業を行うことができる。
なお、以上の説明では、Sx軸の方向に振動が発生する場合について説明したが、Sy軸の方向に振動が発生する場合も同様に不感帯を設けてインピーダンス制御を行えばよい。
[第2実施形態]
次に、第2実施形態に係るロボット装置による物品の製造方法、即ちロボット制御方法について説明する。図7は、第2実施形態においてロボットハンドを作業開始位置に位置決めした状態を示す模式図である。
第2実施形態において、ロボット装置の構成は第1実施形態と同様であるので、各構成の説明は省略する。第2実施形態では、嵌合作業を行う各ワークの形状が異なる。第1ワークであるワークW11は、45度に屈曲したL字形状をした筒部材である。
したがって、ロボットアーム201の先端を、水平状態に対して45度傾けた状態で、水平方向であるXo軸の方向に移動させて、第2ワークであるワークW12にワークW11を嵌合する嵌合作業を行う。つまり絶対座標系ΣoのZo軸に対し、センサ座標系ΣsのSx軸が45度傾いており、かつ絶対座標系ΣoのXo軸に対し、センサ座標系ΣsのSz軸が45度傾いた位置関係となる。ワークW11の重量WG11の方向と、ロボットハンド202の重量WG12の方向は、センサ座標系ΣsのSx軸に対して45度傾いている。
第2実施形態では、ワークW11の移動方向Dとセンサ座標系Σsが一致しない。したがって、ステップS5では、力覚センサ203の3つの検出値Fx,Fy,Fzから移動方向DであるXo軸の方向と、これに直交する方向であるZo軸の方向及びYo軸の方向の力を検出値として求める。第2実施形態の場合、重力成分は、Zo軸の方向の力に含まれる。したがって、第2実施形態では、Zo軸の方向の力の中心値と振幅値を求め、第1実施形態と同様、ステップS6において力覚センサ203の初期化を行う。
したがって、ステップS6〜S13の嵌合処理では、Xo軸の方向にワークW11を移動させながら、Zo軸の方向及びYo軸の方向の力の検出値が0に近づくようにインピーダンス制御を行う。
ところで、第1実施形態と同様、ステップS9では、このステップS5で求めた振幅値を不感帯とする。作業開始位置からワークW11の移動を開始してから、Zo軸の方向の中心値に対する検出値の偏差が振幅値を超えるまでの期間は、検出値が中心値と同じ値になっている。つまり検出値を第1の目標値(ここでは中心値)を基準とする値に補正し、補正後の検出値を0とみなしてインピーダンス制御を行う。
したがって、第2実施形態によれば、嵌合するワークの形状が異なっても、第1実施形態と同様に嵌合作業を行うことが可能である。
なお、本発明は、以上説明した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。また、実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されない。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、上述の実施形態では、ロボットアーム201が垂直多関節のロボットアームの場合について説明したが、これに限定するものではない。ロボットアームが、例えば、水平多関節のロボットアーム、パラレルリンクのロボットアーム、直交ロボット等、種々のロボットアームであってもよい。
また、上述の実施形態では、力の検出値が不感帯以上となった時点で不感帯を解除したが、不感帯以上となった後でも、嵌め合いの長さが短い場合や、振動の影響をあまり受けない場合は不感帯を解除しなくてもよい。
また、上述の実施形態では、嵌合作業を行う第1ワークの移動方向が水平方向である場合について説明したが、これに限定するものではなく、移動方向が垂直方向、傾斜方向など、いずれの方向であってもよい。
201…ロボットアーム、202…ロボットハンド、203…力覚センサ、301…CPU(制御部)

Claims (17)

  1. ロボットアームと、
    前記ロボットアームに支持された、第1ワークを把持させるロボットハンドと、
    前記ロボットアームと前記ロボットハンドとの間に設けられた力覚センサと、
    前記第1ワークが第2ワークに接触させるよう、前記力覚センサの検出値を目標値に近づけるよう前記ロボットアームの動作をインピーダンス制御する制御部と、を備え、
    前記制御部は、
    前記ロボットハンドを移動させて、前記力覚センサの検出値から第1の目標値を得る第1の処理と、
    前記第1の目標値を前記検出値とみなして、前記インピーダンス制御を行う第2の処理と、
    を実行することを特徴とするロボット装置。
  2. 前記第2の処理において、前記検出値を、前記第1の目標値を基準とする値に補正し、補正後の前記検出値を0とみなす請求項1に記載のロボット装置。
  3. 前記第2の処理において、前記ロボットハンドが移動する速度が、前記第1の処理において前記ロボットハンドが移動する速度と同じである請求項1又は2に記載のロボット装置。
  4. 前記第2の処理において、前記ロボットハンドを前記第1の処理において前記ロボットハンドが移動した方向に移動する処理を行う請求項1乃至3のいずれか1項に記載のロボット装置。
  5. 前記第1の処理において、前記ロボットハンドを移動する方向が水平方向である請求項1乃至4のいずれか1項に記載のロボット装置。
  6. 前記第1の処理において、前記力覚センサの検出値が作業開始位置から作業完了位置に向かう移動方向に交差する方向の値である請求項1乃至5のいずれか1項に記載のロボット装置。
  7. 前記第1の処理において、前記ロボットハンドを前記作業開始位置まで一定の速度で移動する処理を行う請求項6に記載のロボット装置。
  8. 前記力覚センサの検出値から第2の目標値を得る請求項1乃至7のいずれか1項に記載のロボット装置。
  9. 前記第2の処理を、前記検出値が前記第2の目標値を超えるまでの期間、行う請求項8に記載のロボット装置。
  10. 第1ワークを第2ワークに接触させるよう、力覚センサの検出値を目標値に近づけるようロボットアームの動作をインピーダンス制御するロボット制御方法であって、
    前記第1ワークを把持させるロボットハンドを移動させて、前記力覚センサの検出値から第1の目標値を得る第1の工程と、
    前記第1の目標値を前記検出値とみなして、前記インピーダンス制御を行う第2の工程と、
    を備えることを特徴とするロボット制御方法。
  11. 前記力覚センサの検出値から第2の目標値を得る請求項10に記載のロボット制御方法。
  12. 前記第2の工程において、前記インピーダンス制御を前記検出値が前記第2の目標値を超えるまでの期間、行う請求項11に記載のロボット制御方法。
  13. 力覚センサの検出値を目標値に近づけるようロボットアームの動作をインピーダンス制御して、第1ワークを第2ワークに接触させた物品を製造する物品の製造方法であって、
    前記第1ワークを移動させて、前記力覚センサの検出値から第1の目標値を得る第1の工程と、
    前記第1の目標値を前記検出値とみなして、前記インピーダンス制御を行い、前記第1ワークを第2ワークに接触させる第2の工程と、
    を備えることを特徴とする物品の製造方法。
  14. 前記力覚センサの検出値から第2の目標値を得る請求項13に記載の物品の製造方法。
  15. 前記第2の工程において、前記インピーダンス制御を前記検出値が前記第2の目標値を超えるまでの期間、行う請求項14に記載の物品の製造方法。
  16. コンピュータに請求項10乃至12のいずれか1項に記載のロボット制御方法の各工程を実行させるためのプログラム。
  17. 請求項16に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2017133945A 2016-07-20 2017-07-07 ロボット装置、ロボット制御方法、物品の製造方法、プログラム及び記録媒体 Active JP6479101B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US15/647,978 US20180021949A1 (en) 2016-07-20 2017-07-12 Robot apparatus, robot controlling method, program, and recording medium
CN201710578535.0A CN107639634A (zh) 2016-07-20 2017-07-17 机器人设备、机器人控制方法和记录介质
EP17181781.0A EP3272471A3 (en) 2016-07-20 2017-07-18 Robot apparatus, robot controlling method, program, and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016142294 2016-07-20
JP2016142294 2016-07-20

Publications (2)

Publication Number Publication Date
JP2018020430A true JP2018020430A (ja) 2018-02-08
JP6479101B2 JP6479101B2 (ja) 2019-03-06

Family

ID=61164971

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017133945A Active JP6479101B2 (ja) 2016-07-20 2017-07-07 ロボット装置、ロボット制御方法、物品の製造方法、プログラム及び記録媒体

Country Status (1)

Country Link
JP (1) JP6479101B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020185619A (ja) * 2019-05-10 2020-11-19 川崎重工業株式会社 ロボットシステム及びその制御方法
US11141855B2 (en) * 2018-01-15 2021-10-12 Canon Kabushiki Kaisha Robot system, method of controlling robot arm, recording medium, and method of manufacturing an article
CN117182928A (zh) * 2023-11-03 2023-12-08 深圳市磐锋精密技术有限公司 一种智能抓取机器手同步控制系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010142909A (ja) * 2008-12-19 2010-07-01 Yaskawa Electric Corp ロボットの制御装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010142909A (ja) * 2008-12-19 2010-07-01 Yaskawa Electric Corp ロボットの制御装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11141855B2 (en) * 2018-01-15 2021-10-12 Canon Kabushiki Kaisha Robot system, method of controlling robot arm, recording medium, and method of manufacturing an article
JP2020185619A (ja) * 2019-05-10 2020-11-19 川崎重工業株式会社 ロボットシステム及びその制御方法
JP7385373B2 (ja) 2019-05-10 2023-11-22 川崎重工業株式会社 ロボットシステム及びその制御方法
CN117182928A (zh) * 2023-11-03 2023-12-08 深圳市磐锋精密技术有限公司 一种智能抓取机器手同步控制系统
CN117182928B (zh) * 2023-11-03 2024-01-26 深圳市磐锋精密技术有限公司 一种智能抓取机器手同步控制系统

Also Published As

Publication number Publication date
JP6479101B2 (ja) 2019-03-06

Similar Documents

Publication Publication Date Title
US20180021949A1 (en) Robot apparatus, robot controlling method, program, and recording medium
US20150234375A1 (en) Tool coordinate system correcting method of robot system, and robot system
JP6648913B2 (ja) 制御方法、ロボット装置、プログラム、記録媒体、物品の製造方法、及び駆動装置
JP4202365B2 (ja) 力制御装置
JP4598849B2 (ja) 嵌合の詰まり状態を修正する嵌合装置
JP6479101B2 (ja) ロボット装置、ロボット制御方法、物品の製造方法、プログラム及び記録媒体
US10195744B2 (en) Control device, robot, and robot system
JPH11502776A (ja) 多軸工業ロボットの較正の装置と方法
CN103507070B (zh) 使用三轴力传感器进行力控制的机器人控制装置
JP2015000455A (ja) ロボット装置及びロボット装置の制御方法
JP6003312B2 (ja) ロボットシステム
US11141855B2 (en) Robot system, method of controlling robot arm, recording medium, and method of manufacturing an article
JP5218540B2 (ja) 組立ロボットとその制御方法
JP2021003771A (ja) ロボットシステム
JP2017154221A (ja) ロボット、ロボットの制御装置及びロボットの制御方法
US20210129322A1 (en) Control Method And Calculation Device
JP3577124B2 (ja) 力制御ロボットを用いて嵌合データを取得する方法
JP6881361B2 (ja) ロボットの制御装置、ロボットのおよび制御方法
JP2016209936A (ja) ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP2015085492A (ja) ロボット、ロボットシステム、制御装置及び制御方法
US11518026B2 (en) Control method and calculation device
JP2018167395A (ja) ロボット装置、制御装置、及びロボットの制御方法
JP7167667B2 (ja) 検査方法およびロボットシステム
JP5942720B2 (ja) 状態判別方法、ロボット、制御装置、及びプログラム
US20220080587A1 (en) Method Of Adjusting Force Control Parameter, Robot System, And Force Control Parameter Adjustment Program

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180515

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190205

R151 Written notification of patent or utility model registration

Ref document number: 6479101

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151