JP2024015086A - ロボットシステム、制御方法、物品の製造方法、制御プログラム、記録媒体 - Google Patents
ロボットシステム、制御方法、物品の製造方法、制御プログラム、記録媒体 Download PDFInfo
- Publication number
- JP2024015086A JP2024015086A JP2023200964A JP2023200964A JP2024015086A JP 2024015086 A JP2024015086 A JP 2024015086A JP 2023200964 A JP2023200964 A JP 2023200964A JP 2023200964 A JP2023200964 A JP 2023200964A JP 2024015086 A JP2024015086 A JP 2024015086A
- Authority
- JP
- Japan
- Prior art keywords
- hand
- reaction force
- force
- robot
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 26
- 238000004519 manufacturing process Methods 0.000 title claims description 7
- 230000033001 locomotion Effects 0.000 claims abstract description 54
- 238000001514 detection method Methods 0.000 claims abstract description 47
- 238000003860 storage Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 abstract description 14
- 230000008859 change Effects 0.000 description 22
- 238000004364 calculation method Methods 0.000 description 12
- 238000005259 measurement Methods 0.000 description 11
- 239000012636 effector Substances 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012886 linear function Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000000418 atomic force spectrum Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/42—Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
- G05B19/423—Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
Abstract
【課題】教示者が手を使って直接ロボットを動かして作業動作を教示する場合、従来のインピーダンス制御では、教示者はロボットと作業対象物との接触を感覚的に感じとることが困難なため、教示作業を効率的に行えなかった。【解決手段】作業用ロボットは、アームと、ハンドと、制御部と、動作を教示する時に教示者により印加される操作力を受けとめるハンドリング部と、操作力を検出する操作力検出部と、作業対象物から前記ハンドが受けた反力を検出する反力検出部とを備える。動作を教示する際に、反力検出部により反力が検出されていない場合には、制御部は、ハンドの移動における抵抗が小さくなるようにインピーダンス制御のパラメータを調整し、反力検出部により反力が検出されている場合には、制御部は、操作力検出部が検出した操作力の方向にハンドを移動させる際、ハンドの移動における抵抗が大きくなるようにインピーダンス制御のパラメータを調整する。【選択図】図2
Description
本発明は、作業用ロボット及びそれに作業動作を教示する方法に関する。特に、ロボットに教示者が直接力を加えて作業軌道を教示することができる作業用ロボットに関する。
従来、ロボットに動作を教示する際には、ティーチングペンダントのようなリモコン端末を用いて、エンドエフェクタの先端部などを所定位置へ移動させる操作を行い、目視等で位置を確認しつつ、教示位置を記憶させていた。その際には、教示位置間の移動速度、加速度などを個別に調整する必要があった。ティーチングペンダントを用いた教示方法では、座標を数値で入力するか、あるいはJOG動作の繰り返しでロボットを移動させており、作業が煩雑で操作性が高いとは言えず、教示を効率的に行うことができなかった。
教示における操作性を改善する方法のひとつとして、例えば特許文献1には、教示者が手で直接ロボットに力を加えて操作しながら教示する技術が記載されている。
教示における操作性を改善する方法のひとつとして、例えば特許文献1には、教示者が手で直接ロボットに力を加えて操作しながら教示する技術が記載されている。
特許文献1に記載された装置では、教示者が軌道を教示する目的でロボット本体の手先効果器に対して力を加えた場合に、センサでその力を検出し、この力の方向に手先効果器を移動させるように制御する。その際には、センサに加えられた操作力の方向および操作方向設定スイッチで選択された操作方向によって決められる方向にのみ手先効果器を移動させるように制御する。
かかる装置によれば、教示者が自らの手でロボットを操作できる点で、ティーチングペンダントのようなリモコンを使う場合に比べて直感的に教示作業を行える利便性がある。
かかる装置によれば、教示者が自らの手でロボットを操作できる点で、ティーチングペンダントのようなリモコンを使う場合に比べて直感的に教示作業を行える利便性がある。
しかしながら、特許文献1に記載された制御方法では、加えられた操作力に応じてその方向にロボットが自動的に動いてしまうため、例えばロボットが作業対象物に接触したとしても、教示者は接触したことを感覚的に感じとることが困難である。このため、教示者がロボットを作業対象物に接触させながら微妙な位置制御を行おうとしても、ロボットが作業対象物に対して過剰な力を加えたりして、意図に沿った教示を行えない可能性があった。
例えば、フレキシブルケーブルをロボットに把持させてコネクタに挿入する作業を教示する場合に、フレキシブルケーブルの先端がコネクタと接触したか否か、コネクタと摺動しているか否か、等を教示者が手先の感覚で知覚できないことがあった。このため、教示者が適切な操作力を加えることができず、フレキシブルケーブルが意図と異なる形に変形してうまく挿入できず、ロボットに精密な作業を教示することができない場合があった。
例えば、フレキシブルケーブルをロボットに把持させてコネクタに挿入する作業を教示する場合に、フレキシブルケーブルの先端がコネクタと接触したか否か、コネクタと摺動しているか否か、等を教示者が手先の感覚で知覚できないことがあった。このため、教示者が適切な操作力を加えることができず、フレキシブルケーブルが意図と異なる形に変形してうまく挿入できず、ロボットに精密な作業を教示することができない場合があった。
本発明は、複数の軸を有するアームと、ハンドと、制御部と、動作を教示する時に教示者により印加される操作力を受けとめるハンドリング部と、前記操作力を検出する操作力検出部と、作業対象物から前記ハンドが受けた反力を検出する反力検出部と、を備え、作業用動作プログラムを生成するため、前記教示者が前記アーム及び前記ハンドの動作を教示する際に、前記反力検出部により前記反力が検出されていない場合、前記制御部は、前記操作力検出部が検出した前記操作力の方向に前記ハンドを移動させる際、前記ハンドの移動における抵抗が小さくなるようにインピーダンス制御のパラメータを調整し、前記反力検出部により前記反力が検出されている場合、前記制御部は、前記操作力検出部が検出した前記操作力の方向に前記ハンドを移動させる際、前記ハンドの移動における抵抗が大きくなるようにインピーダンス制御のパラメータを調整する、ことを特徴とする作業用ロボットである。
また、本発明は、複数の軸を有するアームと、ハンドと、制御部と、教示者が動作を教示する時に、前記教示者により印加される操作力を受けとめるハンドリング部と、前記操作力を検出する操作力検出部と、作業対象物から前記ハンドが受けた反力を検出する反力検出部と、を備えた作業用ロボットの制御方法であって、作業用動作プログラムを生成するために前記教示者が動作を教示する際に、前記反力検出部により前記反力が検出されていない場合、前記制御部は、前記操作力検出部が検出した前記操作力の方向に前記ハンドを移動させる際、前記ハンドの移動における抵抗が小さくなるようにインピーダンス制御のパラメータを調整し、前記反力検出部により前記反力が検出されている場合、前記制御部は、前記操作力検出部が検出した前記操作力の方向に前記ハンドを移動させる際、前記ハンドの移動における抵抗が大きくなるようにインピーダンス制御のパラメータを調整する、ことを特徴とする作業用ロボットの制御方法である。
教示時に、教示者がハンドにかかる反力を感知しやすいように制御部がインピーダンス制御系パラメータを制御するため、教示者は教示作業中にハンドと作業対象物の接触や摺動等を感覚によって容易に知覚することができる。そのため、微妙な力加減の制御が要求されるような教示作業を効率的に行うことができ、作業時にロボットが発揮すべき力の大きさと方向を規定した作業プログラムを効率的に生成することができる。また、作業時にインピーダンス制御系パラメータを切替えることができるような作業アルゴリズムを有する制御プログラムを生成することができる。
作業時には、ハンドにかかる反力あるいは作業対象物に対してハンドが印加した力を計測しながらインピーダンス制御系パラメータを切替える作業アルゴリズムにより、作業対象物に位置ずれが生じたとしてもロボットは的確に作業を実行することができる。
[第一の実施形態]
以下、図面を参照して、本発明の第一の実施形態である作業用ロボットの構成、教示方法、作業動作について順に説明する。
図1は、本実施形態の作業用ロボットの構成を表す図である。図1に示す作業用ロボットは、ロボットアーム11と、ロボットアームの先端に搭載されたハンド12と、ロボットアーム11とハンド12の間に取り付けられたハンドリング部13と、作業用ロボット全体の制御部としてロボットコントローラ14を備える。
以下、図面を参照して、本発明の第一の実施形態である作業用ロボットの構成、教示方法、作業動作について順に説明する。
図1は、本実施形態の作業用ロボットの構成を表す図である。図1に示す作業用ロボットは、ロボットアーム11と、ロボットアームの先端に搭載されたハンド12と、ロボットアーム11とハンド12の間に取り付けられたハンドリング部13と、作業用ロボット全体の制御部としてロボットコントローラ14を備える。
ロボットアーム11は、複数の軸を有する多関節ロボットアームであり、各関節軸にトルクセンサを内蔵するとともに、不図示のモータとエンコーダを搭載している。本実施形態では6軸のアームを用いるが、これとは構成が異なるアームであっても差し支えない。
ロボットアーム11の各関節軸に搭載されているエンコーダは、各関節の角度情報を検出することができ、計測結果をロボットコントローラ14に所定の周期で通信できる。ロボットコントローラ14は、エンコーダで検出した結果に基づき、ロボットアーム11の姿勢を算出することができる。
ロボットアーム11の各軸に搭載されているトルクセンサは、ロボットアーム11にかかる力を検出することができる。すなわち、各トルクセンサは各関節軸にかかるトルクを計測することができ、計測結果をロボットコントローラ14に所定の周期で通信できる。
また、ハンド12は6軸力覚センサを内蔵しており、ハンド12が作業対象物に接触した際にかかる反力を検出することができる。力覚センサはX軸、Y軸、Z軸の各軸の力と、各軸周りのモーメントを計測することができ、計測した力をロボットコントローラ14に所定の周期で通信できる。ロボットコントローラ14は、算出したロボットアームの姿勢と力覚センサの計測結果に基づき、ハンドにかかる作業対象物からの反力の方向や大きさを算出することができる。
したがって、ロボットコントローラと6軸力覚センサは、反力検出手段あるいは反力検出部を構成していると言える。尚、作業対象物にハンドが印加した力と作業対象物からの反力は、互いに作用反作用の関係があり、大きさは等しく方向は逆である。したがって、ロボットコントローラ14は算出したロボットアームの姿勢と力覚センサの計測結果に基づき、作業対象物にハンドが印加した力を算出することもできる。
したがって、ロボットコントローラと6軸力覚センサは、反力検出手段あるいは反力検出部を構成していると言える。尚、作業対象物にハンドが印加した力と作業対象物からの反力は、互いに作用反作用の関係があり、大きさは等しく方向は逆である。したがって、ロボットコントローラ14は算出したロボットアームの姿勢と力覚センサの計測結果に基づき、作業対象物にハンドが印加した力を算出することもできる。
ロボットコントローラ14は、算出したロボットアームの姿勢とトルクセンサが検出したトルク、および6軸力覚センサが検出した反力に基づき、教示者によりハンドリング部13に印加された操作力の方向や大きさを算出することができる。具体的には、トルクセンサが検出したトルク検出結果から6軸力覚センサが検出した反力を減算することにより、ハンドリング部13に印加された操作力の方向や大きさを算出できる。
したがって、ロボットコントローラ、トルクセンサ、6軸力覚センサは、操作力検出手段あるいは操作力検出部を構成していると言える。
本実施形態では、ロボットアーム11の各軸に搭載されているトルクセンサと、ハンド12の6軸力覚センサは、ハンドリング部13を間に挟むように配置されている。かかる配置を採用したことにより、ハンドリング部に印加された外力(操作力)と、作業対象物からの反力の検出精度を高めることができる。
したがって、ロボットコントローラ、トルクセンサ、6軸力覚センサは、操作力検出手段あるいは操作力検出部を構成していると言える。
本実施形態では、ロボットアーム11の各軸に搭載されているトルクセンサと、ハンド12の6軸力覚センサは、ハンドリング部13を間に挟むように配置されている。かかる配置を採用したことにより、ハンドリング部に印加された外力(操作力)と、作業対象物からの反力の検出精度を高めることができる。
ロボットコントローラ14は、CPU,RAM,ROM,I/Oポート等を内蔵するコンピュータであり、ロボットアーム内のモータ、センサ、エンコーダ等と信号の授受を行うとともに、外部のネットワークやコンピュータとも接続可能である。
ロボットコントローラ14は、ロボットアーム11の各関節軸のモータへの駆動指令を生成し、フィードバック制御による各関節軸の位置制御を行うことができる。その際に、ロボットコントローラ14は、トルクセンサおよび力覚センサの計測結果から求めた操作力および反力に基づいて、モータへの駆動指令を変化させる力フィードバック制御を行うことができる。すなわち、単純な位置制御とは異なり、力のフィードバックが加わった制御であり、ハンド12の物理的な応答を、教示作業を行う上で望ましい状態に設定するものである。
ロボットコントローラ14は、ロボットアーム11の各関節軸のモータへの駆動指令を生成し、フィードバック制御による各関節軸の位置制御を行うことができる。その際に、ロボットコントローラ14は、トルクセンサおよび力覚センサの計測結果から求めた操作力および反力に基づいて、モータへの駆動指令を変化させる力フィードバック制御を行うことができる。すなわち、単純な位置制御とは異なり、力のフィードバックが加わった制御であり、ハンド12の物理的な応答を、教示作業を行う上で望ましい状態に設定するものである。
本実施形態では、ロボットコントローラ14は、ロボットアーム11の姿勢と、教示者によりハンドリング部13に印加された操作力に応じて、各関節軸のモータを駆動する際のインピーダンス制御系のパラメータを調整することができる。例えば、図5の左端のP0に示すように、ハンド12が把持する把持ワーク51が組立対象ワーク52と接触しないで離間している時には、6軸力覚センサが検出する反力はゼロだが、この場合には、教示者が印加する操作力の方向に移動しやすくする。すなわち、ロボットコントローラ14は、ハンドリング部13に教示者が印加した操作力の方向にロボットアームを動かし易い状態になるようにインピーダンス制御系のパラメータを調整する。具体的には、移動させるために駆動する関節軸の制御パラメータの仮想粘性係数と仮想弾性係数のいずれかもしくは両方を調整する。その際には、各関節軸の移動量の割合や大きさに応じて、関節毎にインピーダンス制御系のパラメータの調整量を変えてもよい。
ここで、仮想粘性係数、仮想弾性係数とは、力制御を行う場合に、それぞれロボットの先端に粘性要素、弾性要素が接続されたのと同様な効果を生じさせる制御パラメータである。仮想粘性係数[N/(mm/s)]、[Nm/(deg/s)]は、一定速度を出すのに必要な力を示すパラメータなので、ハンド12を移動させ易い状態にするには仮想粘性係数を小さく設定する。
ここで、仮想粘性係数、仮想弾性係数とは、力制御を行う場合に、それぞれロボットの先端に粘性要素、弾性要素が接続されたのと同様な効果を生じさせる制御パラメータである。仮想粘性係数[N/(mm/s)]、[Nm/(deg/s)]は、一定速度を出すのに必要な力を示すパラメータなので、ハンド12を移動させ易い状態にするには仮想粘性係数を小さく設定する。
また、本実施形態では、作業軌道を教示する際に、力覚センサで計測した作業対象物からの反力に基づいて、各関節軸のインピーダンス制御系のパラメータを調整することができる。例えば、図5のP1に示すように、ハンド12が把持する把持ワーク51が組立対象ワーク52と接触している時には、6軸力覚センサは把持ワーク51を介して組立対象ワーク52から受ける反力を検出する。反力を検出した場合には、ロボットコントローラ14は、教示者が印加する操作力の方向にハンド12を移動させにくいように制御する。具体的には、ハンドリング部13に教示者が印加した操作力の方向にハンド12を移動させるために駆動するロボットアームの関節軸の制御パラメータの仮想粘性係数、仮想弾性係数を変更して、移動させにくい状態になるように調整する。その際には、各関節軸の移動量の割合や大きさに応じて、関節毎にインピーダンス制御系のパラメータの調整量を変えてもよい。
仮想粘性係数[N/(mm/s)]、[Nm/(deg/s)]は、一定速度を出すのに必要な力を示すパラメータなので、移動させにくい状態、すなわち教示者が操作力を印加した際に抵抗力を感じるようにするには、仮想粘性係数を大きく設定する。
上記のように、ハンド12の移動方向、すなわち教示者が印加した操作力の方向に対してハンド12の移動における抵抗が小さくなるようにパラメータを調整した状態を、ハンド12を移動させやすい状態とする。逆にハンド12の移動方向、すなわち教示者が印加した操作力の方向に対してハンド12の移動における抵抗が大きくなるようにパラメータを調整した状態を、ハンド12を移動させにくい状態とする。
仮想粘性係数[N/(mm/s)]、[Nm/(deg/s)]は、一定速度を出すのに必要な力を示すパラメータなので、移動させにくい状態、すなわち教示者が操作力を印加した際に抵抗力を感じるようにするには、仮想粘性係数を大きく設定する。
上記のように、ハンド12の移動方向、すなわち教示者が印加した操作力の方向に対してハンド12の移動における抵抗が小さくなるようにパラメータを調整した状態を、ハンド12を移動させやすい状態とする。逆にハンド12の移動方向、すなわち教示者が印加した操作力の方向に対してハンド12の移動における抵抗が大きくなるようにパラメータを調整した状態を、ハンド12を移動させにくい状態とする。
本実施形態のインピーダンス制御系のパラメータの調整方法は、以下のように言うこともできる。
ロボットハンドあるいはロボットハンドが把持しているワークが作業対象物と接触していない場合には、ロボットハンドの力覚センサにより反力は検出されない。反力が検出されていない時は、ロボットコントローラ14は、教示者が印加する操作力の方向にロボットハンドを移動させやすいように、検出された操作力に基づいてインピーダンス制御系のパラメータを調整する。
ロボットハンドあるいはロボットハンドが把持しているワークが作業対象物と接触している場合には、作業対象物に対してロボットハンドが印加した力に対する反作用、すなわち作業対象物からの反力がロボットハンドの力覚センサにより検出される。反力が検出されたら、ロボットコントローラ14は、教示者が操作力の方向に移動させにくく感じるよう、インピーダンス制御系のパラメータを調整する。尚、力覚センサが反力を検出している場合に、反力だけでなく操作力をも参照してインピーダンス制御系のパラメータを調整してもよい。
ロボットハンドあるいはロボットハンドが把持しているワークが作業対象物と接触していない場合には、ロボットハンドの力覚センサにより反力は検出されない。反力が検出されていない時は、ロボットコントローラ14は、教示者が印加する操作力の方向にロボットハンドを移動させやすいように、検出された操作力に基づいてインピーダンス制御系のパラメータを調整する。
ロボットハンドあるいはロボットハンドが把持しているワークが作業対象物と接触している場合には、作業対象物に対してロボットハンドが印加した力に対する反作用、すなわち作業対象物からの反力がロボットハンドの力覚センサにより検出される。反力が検出されたら、ロボットコントローラ14は、教示者が操作力の方向に移動させにくく感じるよう、インピーダンス制御系のパラメータを調整する。尚、力覚センサが反力を検出している場合に、反力だけでなく操作力をも参照してインピーダンス制御系のパラメータを調整してもよい。
また、インピーダンス制御系の仮想粘性係数と仮想弾性係数を単純に増減させるだけでは、必ずしも教示者が作業対象物との接触や摺動を感じ易くなるとは限らない。例えば、仮想弾性係数[mm/N]、[deg/Nm]を大きくし過ぎると組立対象から受ける反力がバネ成分に吸収され、操作部に力が伝わらない場合がある。算出した反力の大きさに応じてパラメータを変更すべき場合もあるので、反力の大きさに応じたインピーダンス制御系のパラメータテーブルを予め準備しておくことが望ましい。
図2は、ロボットコントローラ14が備える機能ブロックを簡易的に示す機能ブロック図である。
21は第一のセンサとして操作力を検出するためのトルクセンサであり、22は第二のセンサとして反力を検出するための力覚センサであり、23はロボットの各軸に設けられたエンコーダである。
21は第一のセンサとして操作力を検出するためのトルクセンサであり、22は第二のセンサとして反力を検出するための力覚センサであり、23はロボットの各軸に設けられたエンコーダである。
24は、I/Oポートとメモリ等から構成されるデータ取得/記憶部である。トルクセンサ21で計測した力と、力覚センサ22で計測した力と、ロボットの各軸のエンコーダ23で計測した情報を取り込んで記憶する。
25はロボットメカモデル登録部であり、ロボットアームの形状や寸法をはじめとする諸情報が記憶されている。
25はロボットメカモデル登録部であり、ロボットアームの形状や寸法をはじめとする諸情報が記憶されている。
26はロボット姿勢算出部であり、データ取得/記憶部24に記憶されたエンコーダの計測結果と、ロボットメカモデル登録部25の情報に基づき、ロボットアームの位置姿勢を算出する。
27はエンドエフェクタ情報登録部であり、ハンドの形状や寸法をはじめとする諸情報が記憶されている。
27はエンドエフェクタ情報登録部であり、ハンドの形状や寸法をはじめとする諸情報が記憶されている。
28は手先座標算出部であり、ロボット姿勢算出部26で算出された姿勢情報と、エンドエフェクタ情報登録部27の情報に基づき、ハンドの位置姿勢を算出する。
29は操作力算出部であり、トルクセンサ21の計測値と、ロボット姿勢算出部26で算出された姿勢情報と、手先座標算出部28で算出されたハンドの位置姿勢情報に基づき、ハンドリング部13に加えられた操作力(外力)を算出する。
29は操作力算出部であり、トルクセンサ21の計測値と、ロボット姿勢算出部26で算出された姿勢情報と、手先座標算出部28で算出されたハンドの位置姿勢情報に基づき、ハンドリング部13に加えられた操作力(外力)を算出する。
30は反力算出部であり、力覚センサ22の計測値と、ハンドの位置姿勢情報に基づき、作業対象物からハンドが受けた反力(外力)を算出する。尚、求めた反力の向きを逆転させれば、作業対象物に対してロボットハンドが印加した力を算出することもできる。
31は、インピーダンス制御系パラメータ設定部で、教示時には、操作力の算出結果と反力の算出結果に基づき、ハンドリング部13を使って教示するのに好適な状態にインピーダンス制御系の仮想粘性係数および/または仮想弾性係数を設定する。また、作業時には、インピーダンス制御系パラメータ設定切替部34からの切替信号に基づき、インピーダンス制御系の仮想粘性係数および/または仮想弾性係数を適宜切替える。
31は、インピーダンス制御系パラメータ設定部で、教示時には、操作力の算出結果と反力の算出結果に基づき、ハンドリング部13を使って教示するのに好適な状態にインピーダンス制御系の仮想粘性係数および/または仮想弾性係数を設定する。また、作業時には、インピーダンス制御系パラメータ設定切替部34からの切替信号に基づき、インピーダンス制御系の仮想粘性係数および/または仮想弾性係数を適宜切替える。
32は、ロボット動作計画生成部で、教示時におけるトルクセンサ21、力覚センサ22の計測値や、インピーダンス制御系パラメータ設定部31のパラメータ設定値を参照して、教示された作業動作を実行するための作業プログラムを生成して記憶する。作業プログラムの生成については後述する。
33は、ロボット動作指令部であり、インピーダンス制御系パラメータ設定部31で設定された制御パラメータに従って、ロボットアームの各関節軸の駆動系(モータ)に伝達すべき指令を生成する。
34は、インピーダンス制御系パラメータ設定切替部であり、作業時に、トルクセンサ21や力覚センサ22の計測値等に基づいてパラメータの設定を切替えたり、力制御と位置制御を切替えたりする。
34は、インピーダンス制御系パラメータ設定切替部であり、作業時に、トルクセンサ21や力覚センサ22の計測値等に基づいてパラメータの設定を切替えたり、力制御と位置制御を切替えたりする。
以上説明したロボットコントローラ14の各ブロックの機能は、内蔵するCPU、各機能のプログラムを格納したメモリ、データを一時的に記憶するためのRAM、データを送受信するI/Oポート等のハードウエア資源を利用して達成される。
また、35は、ロボット駆動系であり、ロボット動作指令部33から出される指示に従って、ロボットアームの各関節軸のモータ等を駆動する。
また、35は、ロボット駆動系であり、ロボット動作指令部33から出される指示に従って、ロボットアームの各関節軸のモータ等を駆動する。
次に、図3は本実施形態における教示時の制御フローを示すフローチャート図である。教示動作が開始されると、まず工程S1で、インピーダンス制御系のパラメータの基準値を設定する。具体的には、ロボットコントローラ14のメモリに予め記憶されたインピーダンス制御系のパラメータの初期値を読み込む。インピーダンス制御系のパラメータの基準値は、ロボットの自重を考慮し、自重でロボットが動き出さないように設定しておく。
次に、工程S2で、第一のセンサであるトルクセンサ21が教示者による操作力を検出していないかを確認する。操作力を検出していない場合は、パラメータは基準値を維持する。
トルクセンサ21が操作力を検出すると、工程S3において、操作力がかかっている方向にハンド12を移動させ易くするようにインピーダンス制御系のパラメータを自動設定する。
トルクセンサ21が操作力を検出すると、工程S3において、操作力がかかっている方向にハンド12を移動させ易くするようにインピーダンス制御系のパラメータを自動設定する。
次に、工程S4において、第二のセンサである力覚センサ22が、作業対象物からの反力を検出していないか確認する。力覚センサ22で作業対象物からの反力を検出すると、工程S5において、作業対象物からの反力の方向に教示者が抵抗力を感じ、操作力の方向にハンド12を移動させにくくなるようにパラメータを自動設定する。
工程S6において、プログラム停止指令を取得したかを判断するが、停止命令を取得するまで、トルクセンサ21と力覚センサ22の検出した力をもとにインピーダンス制御系のパラメータの更新を行い、教示作業を続ける。
図4に、インピーダンス制御系のパラメータテーブルを例示する。作業対象物からの反力の大きさに応じて、仮想粘性係数と仮想弾性係数が設定されている。パラメータテーブルは、ハンドが把持するワークや組立対象ワークなど作業対象物毎に設定して適宜選択してもよいし、一律に同じテーブルを用いてもよい。
次に、図5を参照して、教示者が作業動作を教示している例について説明する。図5は、教示の一連の動作をP0からP4の各段階に分けて示したもので、図中の左から右に向かって時間が流れている。教示者は、ハンドリング部を手で操作してハンド12を移動させ、ハンド12が把持している把持ワーク51を組立対象ワーク52の凹部に嵌合させる作業を教示する。把持ワーク51は作業対象物の一部であり、組立対象ワーク52は、作業対象物の他の一部である。
まず、状態P0は、把持ワーク51を把持したハンド12が組立対象ワーク52の上方に配置され、教示者がハンドリング部を持っている状態である。教示者は、ハンドリング部13に-Z方向の操作力を加えてハンドを鉛直方向下方に移動させ、組立対象ワーク52に向けてアプローチする。
状態P1は、把持ワーク51と組立対象ワーク52が接触した状態である。教示者は、把持ワーク51が組立対象ワーク52の上面に接触すると、接触を維持させたまま+X方向に移動させ、組立対象ワーク52の凹部に向けてアプローチする。すなわち、教示者は-Z方向に軽い操作力をかけつつ、+X方向に移動させるための操作力を加える。
状態P1は、把持ワーク51と組立対象ワーク52が接触した状態である。教示者は、把持ワーク51が組立対象ワーク52の上面に接触すると、接触を維持させたまま+X方向に移動させ、組立対象ワーク52の凹部に向けてアプローチする。すなわち、教示者は-Z方向に軽い操作力をかけつつ、+X方向に移動させるための操作力を加える。
次に、状態P2は、嵌合動作に移行する前段階として、把持ワーク51が組立対象ワーク52の凹部の角に達したか否かを教示者が探っている状態である。後に図6を参照して説明するように、本実施形態のインピーダンス制御によれば、反力が変化すると教示者にとっての移動させやすさが変化するため、教示者は把持ワーク51が凹部の角に到達したのを容易に認識することができる。そこで、凹部の角に到達したら、教示者はハンドリング部に加える操作力を変更して、ハンド12の姿勢を修正する。
状態P3は、把持ワーク51が組立対象ワーク52の溝部(凹部)に嵌合可能な状態に、ハンド12の姿勢が修正された状態である。
状態P4は、ハンドリング部に-Z方向に操作力を掛けて-Z方向にハンド12を移動させ、組立対象ワーク52に把持ワーク51を勘合させた状態である。
状態P3は、把持ワーク51が組立対象ワーク52の溝部(凹部)に嵌合可能な状態に、ハンド12の姿勢が修正された状態である。
状態P4は、ハンドリング部に-Z方向に操作力を掛けて-Z方向にハンド12を移動させ、組立対象ワーク52に把持ワーク51を勘合させた状態である。
上記の教示動作におけるハンドが受ける反力とインピーダンス制御系の動作について、図6を参照して説明する。
図6左側に示すように、P0からP1に向けて移動している途中経路においては、ハンド12が把持する把持ワーク51は組立対象ワーク52にまだ接触していないため、ハンド12の6軸力覚センサが反力を検出することはない。この状態においては、ロボットコントローラ14のインピーダンス制御系パラメータ設定部31は、ハンドリング部13に印加された操作力の方向にハンド12が動き易い状態になるようにインピーダンス制御系のパラメータを調整する。
ハンドがP1に到達すると、把持ワーク51が組立対象ワーク52と接触し、+Z方向に反力が発生するが、この反力は把持ワーク51を介してハンド12に伝達される。ハンド12の6軸力覚センサがこの反力を検出すると、インピーダンス制御系パラメータ設定部31は、ハンドリング部13に印加された操作力の方向にハンド12を移動させにくい状態になるようにインピーダンス制御系のパラメータを調整する。教示者は、操作力を加えてハンドを移動させようとしても、反力と同じ方向の抵抗力を感じることになる。これにより、教示者は、把持ワーク51が組立対象ワーク52と接触したことを手先感覚で感じ取ることができ、次の教示動作に移ることができる。教示者が把持ワーク51の接触を感知できないと、この例で言えば下向き(-Z方向)の操作力をかけ続けてしまうため、把持ワーク51と組立対象ワーク52の間に過度の力が印加され、いずれかもしくは双方が破損する可能性がある。また、把持ワーク51がフレキシブルな部材ならば、破損は生じないとしても、変形が生じて以後の作業(例えば挿入作業)が困難になる可能性がある。
しかし、本実施形態によれば、教示者は、組立対象物からのZ方向の反力を容易に感じ取ることが可能になる。したがって、教示者は、組立対象ワークに把持ワークが接触した後に、力をより微細にコントロールして教示作業を遂行することが可能になる。
しかし、本実施形態によれば、教示者は、組立対象物からのZ方向の反力を容易に感じ取ることが可能になる。したがって、教示者は、組立対象ワークに把持ワークが接触した後に、力をより微細にコントロールして教示作業を遂行することが可能になる。
次に、P1からP2に向けて移動させて嵌合部の位置を探る動作中は、教示者はハンドリング部13を操作して、把持ワーク51を組立対象ワーク52に-Z方向に押し当てながら、+X方向に移動させる。-X方向および+Z方向に反力が発生し、この反力は把持ワーク51を介してハンド12に伝達され、ハンド12の6軸力覚センサにより検出される。反力が検出されると、インピーダンス制御系パラメータ設定部31は、ハンドリング部13に印加された操作力の方向にハンド12を移動させにくい状態になるようにインピーダンス制御系のパラメータを調整する。教示者は、操作力を加えてハンドを移動させようとしても、反力と同じ方向の抵抗力を感じることになる。これにより、教示者は、把持ワーク51を組立対象ワーク52に押し付けながら摺動させている際の摩擦力を、手先感覚で抵抗力として感じ取ることができ、嵌合部の位置を探る動作を思い通りに行うことができる。
そして、図6右側に示すように、P2に到達すると、把持ワーク51が組立対象ワーク52の凹部の角において、反力が一旦は急激に小さくなるように変化する。本実施形態のインピーダンス制御によれば、教示者は反力の変化を抵抗力の変化として手で高感度に感じ取ることが可能なので、凹部の角に達したことを容易に感知できる。組立対象ワークが角部に到達したことを感知できるので、教示者はハンドをオーバーランさせることなく姿勢を変更して、凹部への挿入動作に移行することができる。
図7は、教示した嵌合組立の作業動作を行うために、ロボット動作計画生成部32が作成した作業用制御プログラムの内容を説明するための図である。
図中、グラフZは、ハンドの手先部のZ座標の変化を示しており、例えば状態P0から状態P1までは鉛直方向に下降し、状態P1から状態P2まではZ方向の座標変化がないことを示している。
図中、グラフZは、ハンドの手先部のZ座標の変化を示しており、例えば状態P0から状態P1までは鉛直方向に下降し、状態P1から状態P2まではZ方向の座標変化がないことを示している。
また、グラフXは、ハンドの手先部のX座標の変化を示しており、例えば状態P0から状態P1まではX方向の座標変化はなく、状態P1から状態P2まではX方向に移動していることを示している。
また、グラフのFzは、第二のセンサである力覚センサ22で検知されるZ方向の反力を示しており、例えば状態P1において把持ワーク51が組立対象ワーク52に接触すると、瞬間的に大きな反力が検出されることがわかる。そして、状態P1から状態P2にかけては、インピーダンス制御によりZ方向の反力は、ほぼ一定であることがわかる。
また、グラフのFxは、第二のセンサである力覚センサ22で検知されるX方向の反力を示しており、例えば状態P1から状態P2にかけては、組立対象ワーク52から-X方向にほぼ一定の反力を受けていることがわかる。
また、グラフのFxは、第二のセンサである力覚センサ22で検知されるX方向の反力を示しており、例えば状態P1から状態P2にかけては、組立対象ワーク52から-X方向にほぼ一定の反力を受けていることがわかる。
まず、教示段階においては、教示者はP0からP1の区間ではハンドを-Z方向にのみ移動させる操作を行う。組立対象ワークに接触するまでは反力としてFx、Fzの力は発生せず、Z方向の位置のみ変化する。組立対象ワークに接触すると+Fzの力が発生し、人が接触を検知してロボットを止めるまで+Fzの力が増加する。P1からP2の区間では-Z方向に人が一定の力を加えながら、+X方向に移動を行う。組立対象ワークの凹部の角に達するまでは、-Z方向に押し付けている力に対する反力(+Fz)と、-X方向に摩擦による反力(-Fx)が発生する。人が組立対象ワークの凹部の角への到達を感知してX方向の移動を止めるまで、+X方向の位置が変化する。P2からP3の区間ではロボットの姿勢を教示者が変化させている。P3は、組立対象の溝の壁面に把持ワークを接触させた状態である。P3からP4の区間では、教示者は組立対象ワークの凹部の壁面に倣わせながら把持ワークを-Z方向に移動させ、把持ワークを組立対象ワークに嵌合させる。
本実施形態では、ロボットコントローラは、教示段階におけるP0からP4までのロボットの位置、姿勢と前記トルクセンサと力覚センサの力プロファイル情報を記憶し、ロボット動作計画生成部32が作業用動作プログラムを生成する。
すなわち、ロボットの姿勢や位置(軌道)のみを教示するのではなく、作業の各工程でロボットが作業対象物から受ける反力、言い換えれば作業対象物に印加すべき力の大きさと方向を含めて教示を行う。
すなわち、ロボットの姿勢や位置(軌道)のみを教示するのではなく、作業の各工程でロボットが作業対象物から受ける反力、言い換えれば作業対象物に印加すべき力の大きさと方向を含めて教示を行う。
ロボット動作計画生成部32が生成した作業用動作プログラムにおいては、インピーダンス制御系パラメータ設定切替部34が、第二のセンサである力覚センサ22の検知情報に基づきインピーダンス制御のパラメータを切替える。
以下、図7を参照して作業用動作プログラムを実行する作業段階について具体的に説明する。尚、作業用動作プログラムは、教示時にロボットコントローラ14内のメモリに記憶させてもよいし、一旦外部の記憶装置に記憶させ、ネットワークあるいはコンピュータ読み取り可能な記憶媒体を介してロボットコントローラ14にロードしてもよい。
以下、図7を参照して作業用動作プログラムを実行する作業段階について具体的に説明する。尚、作業用動作プログラムは、教示時にロボットコントローラ14内のメモリに記憶させてもよいし、一旦外部の記憶装置に記憶させ、ネットワークあるいはコンピュータ読み取り可能な記憶媒体を介してロボットコントローラ14にロードしてもよい。
P0からP1までの区間では、力覚センサ22により検出される反力は0である。この区間では、ロボット動作指令部33は、ハンドのX座標が一定値で、Z座標が1次関数(比例)で表される動作をするように、ロボット駆動系35に対して位置制御モードの駆動信号を送る。
その後、力覚センサ22で反力であるFzの急激な変化が検出されたら、ロボットコントローラは状態P1に到達したと判断し、インピーダンス制御系パラメータ設定切替部34がインピーダンス制御のパラメータを切替える。切替えは、反力であるFzの変化率(微分値)が所定の閾値を上回ったことを条件にしてもよいし、反力であるFzの数値自体が所定の閾値を超えたことを条件にしてもよい。
P1からP2までの区間では、X座標は一次関数(比例)で表され、Z座標は一定値になるよう制御する。この区間全体に渡って反力がほぼ一定のため、ロボット動作指令部33は、ロボットの先端に掛る力が一定になるように、ロボット駆動系35に対して力制御モードの駆動信号を送る。すなわち、位置制御モードから力制御モードに動作モードを切り替える。
その後、力覚センサ22で反力であるFxの急激な変化が検出されたら、ロボットコントローラは状態P2に到達したと判断し、インピーダンス制御系パラメータ設定切替部34がインピーダンス制御のパラメータを切替える。切替えは、反力であるFzの変化率(微分値)が所定の閾値を上回ったことを条件にしてもよいし、反力であるFzの数値自体が所定の閾値を超えたことを条件にしてもよい。
P2からP3までの区間では、ハンドの姿勢変更を行うが、X座標、Z座標どちらも1次関数的には変化しておらず、反力であるFx、Fzは一定ではない。区間全体で力が一定値でないため、ロボット動作指令部33は、教示時の姿勢変更の動作軌跡をそのまま再現するように、ロボット駆動系35に対して位置制御モードの駆動信号を送る。
P2からP3までの区間では、ハンドの姿勢変更を行うが、X座標、Z座標どちらも1次関数的には変化しておらず、反力であるFx、Fzは一定ではない。区間全体で力が一定値でないため、ロボット動作指令部33は、教示時の姿勢変更の動作軌跡をそのまま再現するように、ロボット駆動系35に対して位置制御モードの駆動信号を送る。
姿勢変更が完了したP3からP4までの区間では、X座標は一定値、Z座標は比例しており、どちらも1次関数で表される。区間全体に渡って反力がほぼ一定のため、ロボット動作指令部33は、ロボットの先端に掛る力が同じになるように、ロボット駆動系35に対して力制御モードの駆動信号を送る。
その後、力覚センサ22で反力であるFzの急激な変化が検出されたら、ロボットコントローラは状態P4に到達したと判断し、ロボット駆動系35に対して駆動を終了するよう信号を送る。終了は、反力であるFzの変化率(微分値)が所定の閾値を上回ったことを条件にしてもよいし、反力であるFzの数値自体が所定の閾値を超えたことを条件にしてもよい。
本実施形態によれば、ハンドにかかる反力を計測しながらインピーダンス制御系パラメータを切替えることで、作業対象物に位置ずれが生じても教示した動作を的確に実行することができる。
図8(a)~図8(d)は、これを説明するための簡易図で、図8(a)は教示時の把持ワークと組立対象ワークの位置関係を示している。図8(b)~図8(d)は、作業時に組立対象ワークが、点線で示した教示時の位置から、実線で示した位置にずれてセットされた場合を示している。
作業時にハンドを位置座標のみで制御した場合には、組立対象ワークが教示時とずれて置かれていた場合に、状態P2すなわち凹部の角への到達を正しく検知できないため、その後のハンドの姿勢変更や-Z方向への嵌合動作を正しく行うことができない。嵌合作業を行えないばかりではなく、場合によっては、ワークやロボット自身を破損させる可能性もある。
しかし、本実施形態によれば、組立対象ワークの凹部の角に到達したことを、力覚センサ22で感度よく検出できるようにインピーダンス制御系のパラメータが教示されている。図8(b)において、力覚センサ22による反力の計測値に基づいて凹部の角を検出するまで、一定方向に力をかけ続ける制御を行うことで、組立対象ワークがずれていたとしても、適切に作業動作を進めることができる。また、図8(c)においては、把持ワークと組立対象ワークの相対位置が教示時と同じになっているため、姿勢変更の動作軌跡をそのまま再現するだけでよい。そして、図8(d)においては、反力であるFzの急激な変化が検出されたら、状態P4に到達したと判断することができる。判断は、反力であるFzの変化率(微分値)が所定の閾値を上回ったことを条件にしてもよいし、反力であるFzの数値自体が所定の閾値を超えたことを条件にしてもよい。
以上説明したように、本実施形態によれば、教示者がハンドと作業対象物の接触状態を感知しやすいインピーダンス制御を行って作業プログラムを生成するため、位置姿勢および印加すべき力を効率的に教示することができる。そして、教示時に計測した反力に基づいて、作業時のインピーダンス制御系パラメータを切替える作業アルゴリズムを生成することができる。
尚、以上の説明では、理解を容易にするため単純化して説明したが、実際に教示者が手による操作で教示する場合には、直線上を誤差なく移動させるのは難しく、一定の力を与え続けることも困難である。そのため、実際に作業動作の制御プログラムを生成するにあたっては、教示時に振動的になってしまっているデータにフィルタをかけ、教示者の本来の意図ではない動きや力を分離して除外することが好ましい。
また、力覚センサは、姿勢に応じて自重影響を受け検出値が変化する場合もあるので、特定姿勢で必ずゼロ点校正を行うか、動作毎にゼロ点校正を行い、検出する反力に姿勢による影響が残らないようにするのが望ましい。
[第二の実施形態]
図9は、本発明の第二の実施形態の構成を簡易的に示した図である。図9において、ロボット装置は、ロボットアーム91と、アーム先端に搭載されたハンド92と、ハンド92とロボットアーム91の間に取付けられた力覚センサ内蔵型のハンドリング部93と、ロボットコントローラ94を備える。第一の実施形態と共通する部分については、説明を省略する。
図9は、本発明の第二の実施形態の構成を簡易的に示した図である。図9において、ロボット装置は、ロボットアーム91と、アーム先端に搭載されたハンド92と、ハンド92とロボットアーム91の間に取付けられた力覚センサ内蔵型のハンドリング部93と、ロボットコントローラ94を備える。第一の実施形態と共通する部分については、説明を省略する。
第一の実施形態では、教示者によりハンドリング部に加えられた操作力を各関節のトルクセンサの計測値および6軸力覚センサが検出した反力に基づき検出したが、本実施形態においては、ハンドリング部93に内蔵された力覚センサで計測する点が異なる。
本実施形態においては、ロボットコントローラとハンドリング部93に内蔵された力覚センサは、操作力検出手段あるいは操作力検出部を構成していると言える。
本実施形態においては、ロボットコントローラとハンドリング部93に内蔵された力覚センサは、操作力検出手段あるいは操作力検出部を構成していると言える。
第一の実施形態では、操作力の方向と大きさを算出するための処理がある程度複雑になったが、本実施形態によれば操作力の検出をより簡単に行うことができる。
ハンドリング部93に内蔵されている力覚センサは、ロボットアーム91にかかる操作力を計測し、計測結果をロボットコントローラ94に所定の周期で通信できる。
ハンドリング部93に内蔵されている力覚センサは、ロボットアーム91にかかる操作力を計測し、計測結果をロボットコントローラ94に所定の周期で通信できる。
本実施形態では、ハンドリング部93に内蔵された力覚センサで人の操作力を検出し、ハンド92に内蔵された力覚センサで組立対象からの反力を検出することで、第一の実施形態と同様の効果を奏することができる。尚、人の操作力を検出する際に、組立対象からの反力の影響をなるべく小さくするために、ハンドリング部93に内蔵する力覚センサは、ハンドリング部内のなるべくハンド92から遠い位置に配置するのが望ましい。
第一の実施形態と同様に、教示段階において、教示者がハンドにかかる反力を感知しやすいインピーダンス制御を行って作業プログラムを生成するため、位置精度が高い軌道を効率的に教示することができる。そして、教示時に計測した反力に基づいて、作業時のインピーダンス制御系パラメータを切替える作業アルゴリズムを生成することができる。
作業時には、ハンドにかかる反力を計測しながらインピーダンス制御系パラメータを切替えることで、作業対象物に位置ずれが生じても教示した動作を的確に実行することができる。
[第三の実施形態]
図10は、本発明の第三の実施形態の構成を簡易的に示した図である。
図10において、ロボット装置は、ロボットアーム101と、ロボット先端に搭載されたハンド102と、ロボットアーム101とハンド102の間に取り付けられたハンドリング部103から成る。また、ロボットの駆動指令を生成するロボットコントローラ104と、組立ベース107から成る。ロボットアーム101は、多関節ロボットであり、各関節軸にトルクセンサを内蔵しており、各関節軸に不図示のモータとエンコーダを搭載している。ハンド102で把持した把持ワーク105を、組立対象ワーク106に嵌合する作業を例示している。第一の実施形態と共通する部分については、説明を省略する。
図10は、本発明の第三の実施形態の構成を簡易的に示した図である。
図10において、ロボット装置は、ロボットアーム101と、ロボット先端に搭載されたハンド102と、ロボットアーム101とハンド102の間に取り付けられたハンドリング部103から成る。また、ロボットの駆動指令を生成するロボットコントローラ104と、組立ベース107から成る。ロボットアーム101は、多関節ロボットであり、各関節軸にトルクセンサを内蔵しており、各関節軸に不図示のモータとエンコーダを搭載している。ハンド102で把持した把持ワーク105を、組立対象ワーク106に嵌合する作業を例示している。第一の実施形態と共通する部分については、説明を省略する。
第一の実施形態では、第二のセンサとしてハンドが備えた力覚センサを用いて作業対象物からの反力を計測した。本実施形態においては、第二のセンサとして組立対象ワーク106が載置された組立ベース107に内蔵された力覚センサを用いて、作業対象物に対してハンドが印加した力を計測する点が異なる。すなわち、組立対象ワーク106は、第二のセンサとしての力覚センサが内蔵された組立ベース107にセットされており、内蔵された力覚センサで、作業対象物に対してロボットハンドが印加した力を計測する。作業対象物にハンドが印加した力と作業対象物からハンドが受ける反力は、互いに作用反作用の関係があり、大きさは等しく方向は逆である。
したがって、組立ベース107に内蔵された力覚センサの計測結果に基づき、ロボットコントローラはハンドにかかる反力を算出することができる。
本実施形態においては、ロボットコントローラと組立ベースに内蔵された力覚センサは、反力検出手段あるいは反力検出部を構成していると言える。
したがって、組立ベース107に内蔵された力覚センサの計測結果に基づき、ロボットコントローラはハンドにかかる反力を算出することができる。
本実施形態においては、ロボットコントローラと組立ベースに内蔵された力覚センサは、反力検出手段あるいは反力検出部を構成していると言える。
本実施形態では、組立ベース107に内蔵された力覚センサで組立対象ワークに対してハンドが印加した力を検出し、ロボットコントローラがハンドにかかる反力を算出する。また、ロボットアーム101に内蔵したトルクセンサの計測結果とロボットコントローラが算出した反力の差分に基づいて、ハンドリング部103にかかる教示者の操作力を検出する。本実施形態においても、第一の実施形態と同様の効果を奏することができる。
すなわち、教示段階において、教示者がハンドと作業対象物の接触状態を感知しやすいインピーダンス制御を行って作業プログラムを生成するため、位置姿勢および印加すべき力を効率的に教示することができる。そして、教示時に算出した反力に基づいて、作業時のインピーダンス制御系パラメータを切替える作業アルゴリズムを生成することができる。
作業時には、作業対象物に対してハンドが印加した力を計測しながらハンドにかかる反力を算出し、インピーダンス制御系パラメータを切替えることで、作業対象物に位置ずれが生じても教示した動作を的確に実行することができる。
[他の実施形態]
本発明の実施形態は、上述した第一~第三の実施形態に限られるものではなく、適宜変更したり、組み合わせたりすることが可能で、本発明の技術的思想内で多くの変形が可能である。
例えば、作業用ロボットは六軸制御のアームを備えたロボットに限られるわけではなく、またロボットが行う作業も部品の嵌合作業には限られない。いろいろなタイプの作業用ロボットを用いた物品の製造作業に、広く適用することが可能である。
アームの先端に取り付けられるハンドは、上述の実施形態には限られず、各種のマニピュレータ等であってもよい。
ハンドリング部は、教示者が手を使ってハンドあるいはロボットアームに操作力を加えやすい機構であれば、形状や設置位置は上記実施形態の例に限られるものではなく、視認性がよい位置に把持しやすいグリップ等を設けるのが好適である。
また、すべての作業工程の教示を教示者の手による直接操作で行わなければならないわけではなく、一部の工程の教示をティーチングペンダント等のリモコン機器や、シミュレータを用いて行ってもよい。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明の実施形態は、上述した第一~第三の実施形態に限られるものではなく、適宜変更したり、組み合わせたりすることが可能で、本発明の技術的思想内で多くの変形が可能である。
例えば、作業用ロボットは六軸制御のアームを備えたロボットに限られるわけではなく、またロボットが行う作業も部品の嵌合作業には限られない。いろいろなタイプの作業用ロボットを用いた物品の製造作業に、広く適用することが可能である。
アームの先端に取り付けられるハンドは、上述の実施形態には限られず、各種のマニピュレータ等であってもよい。
ハンドリング部は、教示者が手を使ってハンドあるいはロボットアームに操作力を加えやすい機構であれば、形状や設置位置は上記実施形態の例に限られるものではなく、視認性がよい位置に把持しやすいグリップ等を設けるのが好適である。
また、すべての作業工程の教示を教示者の手による直接操作で行わなければならないわけではなく、一部の工程の教示をティーチングペンダント等のリモコン機器や、シミュレータを用いて行ってもよい。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
11・・・ロボットアーム/12・・・ハンド/13・・・ハンドリング部/14・・・ロボットコントローラ/21・・・トルクセンサ/22・・・力覚センサ/23・・・エンコーダ/24・・・データ取得/記憶部/25・・・ロボットメカモデル登録部/26・・・ロボット姿勢算出部/27・・・エンドエフェクタ情報登録部/28・・・手先座標算出部/29・・・操作力算出部/30・・・反力算出部/31・・・インピーダンス制御系パラメータ設定部/32・・・ロボット動作計画生成部/33・・・ロボット動作指令部/34・・・インピーダンス制御系パラメータ設定切替部/35・・・ロボット駆動系/51・・・把持ワーク/52・・・組立対象ワーク/93・・・力覚センサ内蔵型のハンドリング部/107・・・力覚センサ内蔵型の組立ベース
本発明の一態様は、ロボットと、制御部と、前記ロボットの所定部位をユーザが操作する場合の操作力に関する情報を検出する操作力検出部と、対象物から前記所定部位が受けた反力に関する情報を検出する反力検出部と、を備え、前記制御部が、前記反力と前記操作力とに基づき、前記ロボットをインピーダンス制御する場合のパラメータを制御することで前記ユーザが前記所定部位を操作する場合の抵抗力を制御し、前記パラメータには、前記操作力を検出していない状態の前記ロボットの姿勢を維持するための抵抗力を発生させるための基準値が設定されており、前記反力と前記操作力とに基づき、前記パラメータを前記基準値から変更し前記ユーザが前記所定部位を操作する場合の抵抗力を変更することで、前記所定部位を前記ユーザにより移動させ易くする制御、または前記所定部位を前記ユーザにより移動させ辛くする制御、を実行する、ことを特徴とするロボットシステムである。
また、本発明の別の一態様は、ロボットと、制御部と、前記ロボットの所定部位をユーザが操作する場合の操作力に関する情報を検出する操作力検出部と、対象物から前記所定部位が受けた反力に関する情報を検出する反力検出部と、を備えたロボットシステムの制御方法であって、前記制御部が、前記反力と前記操作力とに基づき、前記ロボットをインピーダンス制御する場合のパラメータを制御することで前記ユーザが前記所定部位を操作する場合の抵抗力を制御し、前記パラメータには、前記操作力を検出していない状態の前記ロボットの姿勢を維持するための抵抗力を発生させるための基準値が設定されており、前記反力と前記操作力とに基づき、前記パラメータを前記基準値から変更し前記ユーザが前記所定部位を操作する場合の抵抗力を変更することで、前記所定部位を前記ユーザにより移動させ易くする制御、または前記所定部位を前記ユーザにより移動させ辛くする制御、を実行する、ことを特徴とする制御方法である。
Claims (14)
- 複数の軸を有するアームと、ハンドと、制御部と、
動作を教示する時に教示者により印加される操作力を受けとめるハンドリング部と、
前記操作力を検出する操作力検出部と、
作業対象物から前記ハンドが受けた反力を検出する反力検出部と、を備え、
作業用動作プログラムを生成するため、前記教示者が前記アーム及び前記ハンドの動作を教示する際に、
前記反力検出部により前記反力が検出されていない場合、前記制御部は、前記操作力検出部が検出した前記操作力の方向に前記ハンドを移動させる際、前記ハンドの移動における抵抗が小さくなるようにインピーダンス制御のパラメータを調整し、
前記反力検出部により前記反力が検出されている場合、前記制御部は、前記操作力検出部が検出した前記操作力の方向に前記ハンドを移動させる際、前記ハンドの移動における抵抗が大きくなるようにインピーダンス制御のパラメータを調整する、
ことを特徴とする作業用ロボット。 - 前記インピーダンス制御のパラメータは、前記作業用ロボットの力制御で用いられる仮想粘性係数と仮想弾性係数のいずれかもしくは両方である、
ことを特徴とする請求項1に記載の作業用ロボット。 - 前記制御部は、インピーダンス制御のパラメータを調整するとき、予め記憶したインピーダンス制御のパラメータテーブルからパラメータを選択する、
ことを特徴とする請求項1又は2に記載の作業用ロボット。 - 前記制御部は、
前記作業用動作プログラムを実行する際には、前記反力検出部の検出値に基づいて、動作モードを切り替える、
ことを特徴とする請求項1から3のいずれか1項に記載の作業用ロボット。 - 前記制御部は、前記反力検出部の検出値に基づいて、前記ハンドあるいは前記ハンドが把持するワークが作業対象物と接触したことを検知して、動作モードを切り替える、
ことを特徴とする請求項4に記載の作業用ロボット。 - 前記制御部は、前記動作モードを、位置制御モードか、または力制御モードに切替える、
ことを特徴とする請求項4又は5に記載の作業用ロボット。 - 前記操作力検出部は、前記アームの軸に設けられたトルクセンサか又は前記ハンドリング部に設けられたトルクセンサを有し、
前記反力検出部は、前記ハンドに設けられた力覚センサか又は作業対象物を載置するベースに設けられた力覚センサを有する、
ことを特徴とする請求項1から6のいずれか1項に記載の作業用ロボット。 - 複数の軸を有するアームと、ハンドと、制御部と、
教示者が動作を教示する時に、前記教示者により印加される操作力を受けとめるハンドリング部と、
前記操作力を検出する操作力検出部と、
作業対象物から前記ハンドが受けた反力を検出する反力検出部と、
を備えた作業用ロボットの制御方法であって、
作業用動作プログラムを生成するために前記教示者が動作を教示する際に、
前記反力検出部により前記反力が検出されていない場合、前記制御部は、前記操作力検出部が検出した前記操作力の方向に前記ハンドを移動させる際、前記ハンドの移動における抵抗が小さくなるようにインピーダンス制御のパラメータを調整し、
前記反力検出部により前記反力が検出されている場合、前記制御部は、前記操作力検出部が検出した前記操作力の方向に前記ハンドを移動させる際、前記ハンドの移動における抵抗が大きくなるようにインピーダンス制御のパラメータを調整する、
ことを特徴とする作業用ロボットの制御方法。 - 前記制御部は、
前記作業用動作プログラムを実行する際には、前記反力検出部の検出値に基づいて、動作モードを切り替える処理を行う、
ことを特徴とする請求項8に記載の作業用ロボットの制御方法。 - 請求項8または9に記載の作業用ロボットの制御方法を、
コンピュータに実行させるプログラム。 - 請求項10に記載のプログラムを記憶した、
コンピュータ読み取り可能な記憶媒体。 - 前記作業用動作プログラムは、前記作業用ロボットに物品の製造作業を行わせる動作プログラムである、
ことを特徴とする請求項8に記載の作業用ロボットの制御方法。 - 請求項12に記載の作業用ロボットの制御方法により生成した前記作業用動作プログラムを前記制御部が実行し、前記作業用ロボットが物品の製造作業を行う、
ことを特徴とする物品の製造方法。 - 前記制御部は、
前記作業用動作プログラムを実行して物品の製造作業を行う時は、前記反力検出部の検出値に基づいて、動作モードを切り替える処理を行う、
ことを特徴とする請求項13に記載の物品の製造方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017141250 | 2017-07-20 | ||
JP2017141250 | 2017-07-20 | ||
JP2018127463A JP7427358B2 (ja) | 2017-07-20 | 2018-07-04 | ロボットシステム、物品の製造方法、制御方法、制御プログラム、および記録媒体 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018127463A Division JP7427358B2 (ja) | 2017-07-20 | 2018-07-04 | ロボットシステム、物品の製造方法、制御方法、制御プログラム、および記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024015086A true JP2024015086A (ja) | 2024-02-01 |
Family
ID=65016459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023200964A Pending JP2024015086A (ja) | 2017-07-20 | 2023-11-28 | ロボットシステム、制御方法、物品の製造方法、制御プログラム、記録媒体 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2024015086A (ja) |
WO (1) | WO2019017416A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6875690B1 (ja) * | 2020-02-12 | 2021-05-26 | リバーフィールド株式会社 | 手術ロボット、及び手術ロボットの制御ユニット |
JP7458818B2 (ja) * | 2020-02-21 | 2024-04-01 | キヤノン株式会社 | ロボット装置、インタフェース装置、制御装置、エンドエフェクタ、制御方法、ロボット装置を用いた物品の製造方法、プログラム及び記録媒体 |
US20230278205A1 (en) * | 2020-07-31 | 2023-09-07 | Fanuc Corporation | Robot system and robot control device |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6445586A (en) * | 1987-08-13 | 1989-02-20 | Omron Tateisi Electronics Co | Robot controller |
JPH077305B2 (ja) * | 1989-10-06 | 1995-01-30 | 日立建機株式会社 | ロボットの直接教示装置及び直接教示方法 |
JPH06250728A (ja) | 1993-02-26 | 1994-09-09 | Hitachi Constr Mach Co Ltd | ロボットの直接教示装置 |
JP2013111684A (ja) * | 2011-11-28 | 2013-06-10 | Panasonic Corp | ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、ロボットアームの制御用集積電子回路 |
JP6100727B2 (ja) * | 2014-04-09 | 2017-03-22 | ファナック株式会社 | リードスルー機能を有する人協調型産業用ロボット |
-
2018
- 2018-07-19 WO PCT/JP2018/027015 patent/WO2019017416A1/ja unknown
-
2023
- 2023-11-28 JP JP2023200964A patent/JP2024015086A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2019017416A1 (ja) | 2019-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7427358B2 (ja) | ロボットシステム、物品の製造方法、制御方法、制御プログラム、および記録媒体 | |
JP2024015086A (ja) | ロボットシステム、制御方法、物品の製造方法、制御プログラム、記録媒体 | |
TWI483819B (zh) | 夾爪裝置及其控制方法 | |
JP4202365B2 (ja) | 力制御装置 | |
CN106003101B (zh) | 机器人控制装置以及机器人系统 | |
US9393687B2 (en) | Method for programming an industrial robot and industrial robot | |
US11465288B2 (en) | Method of controlling robot | |
CN110709211B (zh) | 机器人系统和机器人系统的控制方法 | |
WO2021024586A1 (ja) | 制御装置、制御システム、ロボットシステム及び制御方法 | |
JP6044511B2 (ja) | ロボットの制御方法及びロボットシステム | |
WO2017088888A1 (en) | Robot trajectory or path learning by demonstration | |
Stolt et al. | Sensorless friction-compensated passive lead-through programming for industrial robots | |
JP2016028842A (ja) | アクチュエータシステム | |
JP2017030059A (ja) | ロボット制御装置、ロボットおよびロボットシステム | |
JP5218540B2 (ja) | 組立ロボットとその制御方法 | |
JP2021030364A (ja) | ロボット制御装置 | |
KR20130000496A (ko) | 가속도센서와 자이로센서를 구비한 로봇 교시장치와 이를 이용한 로봇제어방법 | |
JPH06143171A (ja) | ロボット | |
US11660742B2 (en) | Teaching method and robot system | |
JP3937108B2 (ja) | ロボットの制御方法およびロボット | |
JP2016221653A (ja) | ロボット制御装置およびロボットシステム | |
JP6668629B2 (ja) | ロボット制御装置およびロボットシステム | |
JP7185749B2 (ja) | ロボットシステム及びロボットシステムの制御方法 | |
WO2023200012A1 (ja) | 遠隔制御システム、遠隔制御方法及び遠隔制御プログラム | |
US20220080587A1 (en) | Method Of Adjusting Force Control Parameter, Robot System, And Force Control Parameter Adjustment Program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231221 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20231221 |