JP2015202535A - 作用された力に応じて移動されるロボットを制御するロボット制御装置 - Google Patents

作用された力に応じて移動されるロボットを制御するロボット制御装置 Download PDF

Info

Publication number
JP2015202535A
JP2015202535A JP2014082624A JP2014082624A JP2015202535A JP 2015202535 A JP2015202535 A JP 2015202535A JP 2014082624 A JP2014082624 A JP 2014082624A JP 2014082624 A JP2014082624 A JP 2014082624A JP 2015202535 A JP2015202535 A JP 2015202535A
Authority
JP
Japan
Prior art keywords
force
robot
axis
center line
rotation center
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
JP2014082624A
Other languages
English (en)
Other versions
JP5893664B2 (ja
Inventor
隆裕 岩竹
Takahiro Iwatake
隆裕 岩竹
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP2014082624A priority Critical patent/JP5893664B2/ja
Priority to DE102015004481.8A priority patent/DE102015004481B4/de
Priority to US14/684,655 priority patent/US9555548B2/en
Priority to CN201510173831.3A priority patent/CN104972469B/zh
Publication of JP2015202535A publication Critical patent/JP2015202535A/ja
Application granted granted Critical
Publication of JP5893664B2 publication Critical patent/JP5893664B2/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/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • 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/1651Programme controls characterised by the control loop acceleration, rate control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37357Force, pressure, weight or deflection

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

【課題】ロボットの先端部に力を作用させてロボットを移動させるときに、ロボットの先端部を任意の姿勢により移動しやすくする。【解決手段】ロボット制御装置(10)は、作用された力に応じて回転移動される軸を操作軸として設定すると共に、操作軸の回転移動方向を設定する操作軸設定部(25)と、操作軸に対して仮想的に作用させる第一仮想力を求めて、それを第一操作力とする第一操作力取得部(22)と、操作軸設定部によって設定された操作軸を、第一操作力から定まる操作力に基づいて、移動させる操作指令を出力する操作指令部(24)とを含む。操作指令部は、第一操作力と操作軸設定部によって設定される移動方向とに基づいて、操作軸の目標移動方向および目標移動速度を求めて操作軸を移動させる。【選択図】図2

Description

本発明は、ロボットに作用された力に応じて移動されるロボットを制御するロボット制御装置に関する。さらに特別には、本発明は、少なくとも一つの回転軸を含む複数の軸から成るロボットに作用させた力に基づいて、前記ロボットを移動させるロボットシステムのロボット制御装置に関する。
ロボットに力を作用させることにより、ロボットを移動させるロボットの操作方法や、ロボットを移動させて位置を教示する方法として、ダイレクトティーチが知られている。このような場合には、ロボットを移動させたい方向に力を作用させてロボットを直接的に誘導し、それにより、ロボットを直交座標系上における所望の位置および/または姿勢に移動させることができる。
特許文献1には、ロボットの腕の先端に取付けられた力検出器の手動操作部を操作したときに、力検出器により発生する信号をもとに、ロボットの腕の先端部の位置および姿勢を移動させる方法が開示されている。
特許文献2に開示される直接教示装置においては、人為的に加えられた力をロボットに設けられた力センサにより検出し、その力の信号を用いてロボットの位置および姿勢を移動させる際に、デカルト座標系上の特定方向にのみ、ロボットアームを移動させている。
特開昭56−85106号公報 特開平6−250728号公報
特許文献1においては、力に応じて、直交座標系上におけるロボットの先端部の位置および/または姿勢を移動させている。このため、特許文献1においては、ダイレクトティーチ中に、所望の各軸の位置を移動させることができない。
特許文献2においては、ダイレクトティーチによりロボットを移動させるときに、その移動方向を特定方向に制限して、操作性を向上させている。特定方向は、デカルト座標系上におけるロボットの先端部の位置および/または姿勢に関する方向である。このため、特許文献2においては、ダイレクトティーチ中に、各軸の制御に切替えたり、或る所望の軸だけ動かすようにするなど、駆動されるべき軸を制限することなどは提案されていない。
本発明はこのような事情に鑑みてなされたものであり、ロボットの先端部に力を作用させてロボットを移動させることにより、直交座標系上におけるロボットの先端部の位置および/または姿勢を移動させる際に、ロボットの先端部を移動が困難な位置、または、移動が不可能な位置に移動させることのできるロボット制御装置を提供することを目的とする。また、そのようなロボット制御装置の操作性をより向上させることも望まれている。
前述した目的を達成するために1番目の発明によれば、少なくとも一つの回転軸を含む複数の軸から成るロボットに作用させた力に基づいて、前記ロボットを移動させるロボットシステムのロボット制御装置において、前記ロボットの先端部に作用させた力を計測する力計測部と、前記少なくとも一つの回転軸のうち、前記力に応じて回転移動される軸を操作軸として設定すると共に、前記力の方向に応じて定まる前記操作軸の回転移動方向を設定する操作軸設定部と、前記力計測部が計測した力の並進成分から成る力を第一先端部作用力としたとき、前記第一先端部作用力をもとに、前記操作軸の回転中心線と直交する平面上に存在し、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求め、前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記操作軸に対して仮想的に作用させる第一仮想力を求めて、前記第一仮想力を第一操作力とする第一操作力取得部と、前記操作軸設定部によって設定された前記操作軸を、前記第一操作力から定まる操作力に基づいて、移動させる操作指令を出力する操作指令部と、を具備し、前記操作指令部は、前記第一操作力と前記操作軸設定部によって設定される前記移動方向とに基づいて、前記操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させることを特徴とするロボット制御装置が提供される。
2番目の発明によれば、少なくとも一つの回転軸を含む複数の軸から成るロボットに作用させた力に基づいて、前記ロボットを移動させるロボットシステムのロボット制御装置において、前記ロボットの先端部に作用させた力を計測する力計測部と、前記少なくとも一つの回転軸のうち、前記力に応じて回転移動される軸を操作軸として設定すると共に、前記力の方向に応じて定まる前記操作軸の回転移動方向を設定する操作軸設定部と、前記力計測部が計測した力のモーメント成分から成る力を第二先端部作用力としたとき、記第二先端部作用力をもとに、前記操作軸に対して仮想的に作用させる第二仮想力を求め、前記第二仮想力を第二操作力とする第二操作力取得部と、前記操作軸設定部によって設定された前記操作軸を、前記第二操作力から定まる操作力に基づいて、移動させる操作指令を出力する操作指令部と、を具備し、前記操作指令部は、前記第二操作力と前記操作軸設定部によって設定される前記移動方向とに基づいて、前記操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させることを特徴とするロボット制御装置が提供される。
3番目の発明によれば、少なくとも一つの回転軸を含む複数の軸から成るロボットに作用させた力に基づいて、前記ロボットを移動させるロボットシステムのロボット制御装置において、前記ロボットの先端部に作用させた力を計測する力計測部と、前記少なくとも一つの回転軸のうち、前記力に応じて回転移動される軸を操作軸として設定すると共に、前記力の方向に応じて定まる前記操作軸の回転移動方向を設定する操作軸設定部と、前記力計測部が計測した力の並進成分から成る力を第一先端部作用力としたとき、前記第一先端部作用力をもとに、前記操作軸の回転中心線と直交する平面上に存在し、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求め、前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記操作軸に対して仮想的に作用させる第一仮想力を求めて、前記第一仮想力を第一操作力とする第一操作力取得部と、前記力計測部が計測した力のモーメント成分から成る力を第二先端部作用力としたとき、記第二先端部作用力をもとに、前記操作軸に対して仮想的に作用させる第二仮想力を求め、前記第二仮想力を第二操作力とする第二操作力取得部と、前記操作軸設定部によって設定された前記操作軸を、前記第一操作力および前記第二操作力から定まる操作力に基づいて、移動させる操作指令を出力する操作指令部と、を具備し、前記操作指令部は、前記第一操作力と前記第二操作力と前記操作軸設定部によって設定される前記移動方向とに基づいて、前記操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させることを特徴とするロボット制御装置が提供される。
4番目の発明によれば、1番目または3番目の発明において、前記操作指令部は、前記操作軸の目標移動方向および目標移動速度を求めるとき、前記操作軸の回転中心線回りの、前記ロボットの先端部の目標移動方向および目標接線速度を求めて、前記ロボットの先端部の目標移動方向および目標接線速度をもとに、前記操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させる。
5番目の発明によれば、2番目または3番目の発明において、前記操作指令部は、前記操作軸の目標移動方向および目標移動速度を求めるとき、前記操作軸の回転中心線回りの、前記ロボットの先端部の目標移動方向および目標接線速度を求めて、前記ロボットの先端部の目標移動方向および目標接線速度をもとに、前記操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させる。
6番目の発明によれば、1番目、3番目および4番目のいずれかの発明において、前記第一操作力取得部は、前記第一先端部作用力をもとに、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求めると共に、前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第一操作力の方向と大きさを求める。
7番目の発明によれば、1番目、3番目および4番目のいずれかの発明において、前記第一操作力取得部は、前記第一先端部作用力をもとに、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求めると共に、前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記位置ベクトルの大きさを所定の値にした位置ベクトルに基づいて、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第一操作力の方向と大きさを求める。
8番目の発明によれば、1番目、3番目および4番目のいずれかの発明において、前記第一操作力取得部は、前記第一先端部作用力が作用する方向と、所定方向への方向の回転操作とをもとに、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求めると共に、前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトル、をもとに、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第一操作力の方向と大きさを求める。
9番目の発明によれば、1番目、3番目および4番目のいずれかの発明において、前記第一操作力取得部は、前記第一先端部作用力が作用する方向と、所定方向への方向の回転操作とをもとに算出した、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求めると共に、前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記位置ベクトルの大きさを所定の値にした位置ベクトルに基づいて、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第一操作力の方向と大きさを求める。
10番目の発明によれば、1番目、3番目および4番目のいずれかの発明において、前記第一操作力取得部は、前記第一先端部作用力をもとに、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求めると共に、前記求められた力の並進成分から成る力の方向と、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記第一操作力の方向を求めて、前記求められた力の並進成分から成る力の大きさ、または、前記第一先端部作用力の大きさをもとに、前記第一操作力の大きさを求める。
11番目の発明によれば、2番目、3番目および5番目のいずれかの発明において、前記第二操作力取得部は、前記第二先端部作用力によって、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第二操作力の方向と大きさを求める。
12番目の発明によれば、7番目または9番目の発明において、前記操作軸の回転中心線から、前記ロボットの先端部までの最短距離が大きくなるに従って、前記所定の値を小さくする。
13番目の発明によれば、8番目の発明において、前記操作軸の回転中心線から前記ロボットの先端部までの最短距離が大きくなるに従って、前記所定方向と前記位置ベクトルとの成す角度が小さくなる方向に前記所定方向を変更する。
14番目の発明によれば、1番目から13番目のいずれかの発明において、前記操作指令部は、力制御ゲインをもとにした力制御によって、前記操作軸の移動速度を求め、前記軸の回転中心線から前記ロボットの先端部までの最短距離が大きくなるに従って、前記力制御ゲインを小さくする。
本発明においては、ロボットの先端部に力を作用させるとき、ロボットの軸を力に応じて移動させることによって、ロボットをどのような姿勢にも移動させ易くすることが可能となる。また、ロボットの先端部に力を作用させてロボットの軸の位置を移動させるとき、ロボットの先端部の位置が変動しても、また、ロボットの先端部に作用させる力の方向が変動しても、より安定的に、また、より安全に、また、容易に移動させることを可能とし、操作性を向上させられる。
本発明の一実施形態に係るロボット制御装置によって制御されるロボットを具備するロボットシステムの概略構成を示す図である。 本発明の一実施形態に係るロボット制御装置の構成を機能的に示す図である。 本発明の一実施形態に係るロボット制御装置による処理の過程を示すフローチャートである。 ロボットの先端部に力Fsが作用しているのを示す図である。 図4に示される一つの操作軸に対する操作力を算出する方法を説明するための図である。 力Fpの算出方法の一例を示す図である。 力Fpの算出方法の別の例を示す図である。 操作軸に対する操作力を算出する方法を説明するための図である。 操作軸に対する操作力を算出する別の方法を説明するための図である。 力Fpの方向を回転させる方法の一例を示す図である。 操作軸に対する操作力を算出するさらに別の方法を説明するための図である。 操作軸に対する操作力を算出する他の方法を説明するための図である。
以下、添付図面を参照して本発明の実施形態を説明する。以下の図面において同様の部材には同様の参照符号が付けられている。理解を容易にするために、これら図面は縮尺を適宜変更している。
以下、力とは、特に断りがない限り、力の並進方向成分および力のモーメント成分を含むものとする。また、位置および/または姿勢とは、位置または姿勢、もしくは、位置および姿勢を表すものとする。
また、以下、軸とは、ロボットを構成するリンクとリンクとをつなぐ関節部分であり、リンクとリンクとの間の位置関係や角度関係を変える部分とする。軸の位置(回転軸の場合の位置は、角度である)を変えることによって、リンクとリンクとの位置関係を変えることができ、その結果、ロボットの先端部の位置および/または姿勢を変えることができる。なお、軸とする部分とは異なる箇所に、軸の位置を移動させるためのアクチュエータが配置されていてもよい。
また、ロボットの軸の回転中心線回りに作用させる力、または、ロボットの軸の回転中心線回りにかかる力とは、ロボットの軸が回転軸の場合であって、座標系の1つの軸がロボットの軸の回転中心線と一致するように、ロボットの軸に対して座標系を設定するとき、その座標系上で、ロボットの軸の回転中心線と直交する平面、かつ、原点がロボットの軸の回転中心線とその平面との交点である、平面において存在する並進方向の力、または、ロボットの軸の回転中心線回りに作用する力のモーメントとする。
また、本発明において、力制御ゲインとは、作用する力に応じてロボットを移動させる力制御において、作用する力の大きさをもとに、制御周期毎の、直交座標系上のロボットの先端部の位置および/または姿勢や、ロボットの各軸の位置などの移動量を求めるような係数である。
図1は、本発明の一実施形態に係るロボット制御装置10によって制御されるロボット50を具備するロボットシステム11の構成例を示す概略図である。ロボットシステム11は、ロボット制御装置10と、ロボット制御装置10によって制御周期毎の各軸の位置を制御されるロボット50と、を具備している。
ロボットシステム11において、操作者60がロボット50の先端部58に力を作用させたとき、ロボット制御装置10は、力計測部が計測したロボット50の先端部58に作用された力、設定されたデータ、ロボット50の位置データなどに基づいて、ロボット50の各軸を移動させるアクチュエータを制御する。これにより、ロボット50を構成する軸の位置を変え、ロボット50を移動させられる。
ロボット制御装置10は、演算処理装置、ROM、RAMなどを含むハードウェア構成を有していて、後述する種々の機能を実行する。
本発明の一実施形態に係るロボット制御装置10によって制御されるロボット50は、少なくとも一つの回転軸を含む軸によって構成される。
図1に示されるロボット50は、六つの軸によって構成される。これら六つの軸は、ロボット50の台座59側から順に、第一軸をJ1軸51、第二軸をJ2軸52、第三軸をJ3軸53、第四軸をJ4軸54、第五軸をJ5軸55、第六軸をJ6軸56とする。
図1の右方に示されるように、J1軸51、J4軸54およびJ6軸56は、軸と軸をつなぐ、リンク回りに回転する回転軸R1として構成される。また、J2軸52、J3軸53およびJ5軸55は、軸と軸をつなぐ、リンクとは直交する方向回りに回転する回転軸R2として構成される。
なお、図1は、ロボット50の軸の構成を表すための簡易的な説明図である。また、軸の原点を、各軸に設定した座標系の原点、かつ、リンクとリンクが接続される点とすると、軸の原点の位置は、空間に設定した座標系上の位置として表されるものとする。なお、以下では、空間に設定した座標系を基準座標系とする。J1軸51とJ2軸52の軸の原点は同じ位置にあり、J3軸53とJ4軸54の原点は同じ位置にあり、J5軸55とJ6軸56の原点は同じ位置にあるものとする。
本実施例では、回転軸とした軸に対して、軸の位置を移動させる、と述べる場合、軸の位置とは、回転軸の角度であり、軸の位置を移動させるとは、回転軸を回転させて位置を変えることを表すものとする。また、軸の原点の位置、と述べる場合、空間に対して設定した座標系上の、各軸に設定した座標系の原点の位置を表すものとする。また、空間に対して設定した座標系とは、空間に対して固定させた直交座標系上で、ロボット50の先端部58や、先端部58をロボット50に取付けるためのフランジ部57、また各軸に設定した座標系などの、位置および/または姿勢を表すための座標系とする。
また、空間に対して設定した基準座標系上の、ロボット50の位置および/または姿勢を表すため、ロボット50に対して設定した座標系をツール座標系とする。ツール座標系の原点であり、並進移動させる点、また、回転移動させるときの中心点を制御点とする。基準座標系に平行な座標系を、制御点に設定した座標系を制御座標系とする。なお、制御点の位置は、ロボット50に対して設定される位置であれば、任意の位置であって構わない。
本実施例では、ロボット50の六つの軸はいずれも回転軸とするが、ロボット50が直動軸を含んでも構わない。また、ロボット50は、六軸構成の垂直多関節型ロボットである。しかしながら、一つ以上の回転軸を含み、各軸の位置が制御可能、また、直交位置が制御可能なロボットであれば、他の形態を有する任意の公知のロボットでもよい。
ロボット50の先端部58は、ロボット50のフランジ部57に取付けられている物体が存在する部分である。ロボット50の先端部58には、図示しないが、六軸の力センサが取付けられている。ロボット制御装置10は、所定時間毎に検出された力センサの出力をもとに、後述する力計測部21によって、操作者60がロボット50の先端部58に作用させた力を計測する。
力計測部21は、ロボット50の先端部58における力を計測する点に原点を有する座標系を設定する。そして、力計測部21は、ロボット50の先端部58に作用させた力として、その座標系上の、力の並進方向の成分Fおよび力のモーメント成分Mを計測する。以下、この座標系を力計測座標系とし、座標系の原点を力計測点とする。このとき、ロボット50の先端部58に設定した座標系のX軸、Y軸、Z軸の力の並進方向成分をそれぞれFx、Fy、Fzと表すとともに、X軸、Y軸、Z軸回りで検出される力のモーメント成分をそれぞれMx、My、Mzと表す。
ここで、力計測点は、操作者が力を作用させる作用点、または、力センサに設定したセンサ座標系の原点、センサ座標系の軸上の点などであって構わない。
本実施例では、力の六成分を計測するが、力の並進方向成分F、または、力のモーメント成分Mのみを計測するようにしてもよい。また、力センサの取付位置は、ロボット50の先端部58に作用させた力を計測できる限り、任意の箇所であってよい。また、ロボット50の先端部58に作用された力を計測する計測部は、六軸の力センサの代わりに、三軸の力センサを使用してもよい。
また、力計測部21は、ロボット50を構成する軸を移動させるアクチュエータがモータである場合の電流値、または、軸の指令位置と実際の軸の位置との間の偏差、または、各軸に取付けられたトルクセンサの出力などをもとに、ロボット50の先端部58に作用される力を推定してもよい。
なお、ロボット50の先端部58には、ワークを加工したり、ワークを搬送したりするなどの作業を行うためのツールや、力に応じた移動操作を行うための操縦装置などが取付けられている。
ロボット50に取付けられた力センサに対してツールや操縦装置を取付けてもよい。あるいは、ロボット50に取付けられたツールに対して力センサを取付け、その先端側に操縦装置を取付けてもよい。
ロボット50の先端部58に力を作用させるとき、操縦装置を用いることなしに、力センサに取付けられたツールに対して力を作用させてもよい。あるいは、力センサに取付けられた操縦装置に対して力を作用させてもよい。
力センサに取付けられたツールや操縦装置に対して、操作者が力を作用させて、ロボット50を移動させる場合には、力計測部21は、力センサが検出した力に対して、力センサに取付けられたツールや操縦装置または把持したワークなどの物体が重力や慣性力(コリオリ力、ジャイロ効果を含む)などによって及ぼす影響を、必要に応じて補償する。これにより、力計測部21は、ロボット50の先端部58に操作者が作用させた正味の力を計測できる。
ロボット50の先端部58に取付けられたツールに、力センサと操縦装置とが組合わされた装置を取付ける場合には、力センサに取付けられた物体が重力や慣性力によって力センサに及ぼす影響が小さくなる。従って、この場合には、正味の力を求める場合の誤差も小さくなる。
また、力センサと操縦装置とが組合わされた装置を、磁石やバネなどを用いてツールに取付けてもよい。この場合には、そのような装置を簡易に着脱することができる。また、力を作用させてロボット50を移動させる場合にのみ、そのような装置を取付けることも可能となる。これによって、教示操作が不要な時には装置を取外しておいたり、そのような装置を必要に応じて他のロボットシステムで使用することが可能となる。
図2は、本発明の実施形態に係るロボット制御装置10の構成を機能的に示す図である。図2に示されるように、ロボット制御装置10は、前述した力計測部21と、第一操作力取得部22と、第二操作力取得部23と、操作指令部24と、操作軸設定部25と、記憶部26と、を具備している。
操作軸設定部25は、ロボット50を構成する少なくとも一つの回転軸のうち、力に応じて回転移動される軸を操作軸として設定し、さらに力の方向に応じて定まる前記操作軸の回転移動方向を設定する。操作軸の設定や、力の方向に応じて定まる操作軸の回転移動方向は、ロボット制御装置10の記憶部26に格納された設定に基づいて設定される。
また、ロボット制御装置10に接続された入力装置(図示しない)による入力に応じて、操作軸を変更したり、力の方向に応じて定まる操作軸の回転移動方向を変更してもよい。また、ロボット50の軸の位置や、ロボット50の先端部58に作用される力などの移動操作の状況に応じて、操作軸とする軸を変更したり、力の方向に応じて定まる操作軸の回転移動方向を変更してもよい。
力計測部21は、操作者60が、ロボット50の先端部58に作用させる正味の力を計測する。前述したように、力計測部21は、ロボット50の先端部58に取付けられたツールや操縦装置、または把持したワークなどの物体が重力や慣性力(コリオリ力、ジャイロ効果を含む)などによって及ぼす影響を必要に応じて補償する。
力センサに取付けられた物体が及ぼす重力や慣性力の影響の補償は、次のようにして公知の方法によって行う。力センサに取付けられた物体に対して、操作者が力を作用させる前に、その物体の質量や重心を予め算出しておく。そして、算出された質量および重心と、ロボットの移動動作を参照すると共に、公知の方法、例えば特許第4267027号に開示される手法を用いて算出する。
力計測部21が計測した、ロボット50の先端部58に作用された、力の並進方向の成分から成る力を、第一先端部作用力とする。また、力計測部21が計測した、ロボット50の先端部58に作用された、力のモーメント成分から成る力を、第二先端部作用力とする。
第一操作力取得部22は、力計測部21が計測した力をもとに、後述の操作指令部24がロボット50の軸の位置の操作指令を制御周期毎に生成する際に使用される操作力を取得する。
このとき、第一操作力取得部22は、力計測部21が計測した、第一先端部作用力をもとに、操作軸の回転中心線と直交する平面上に存在し、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求め、前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記操作軸に対して仮想的に作用させる第一仮想力を求める。そして、第一操作力取得部22は、第一仮想力を第一操作力として、第一操作力を取得する。
第二操作力取得部23は、力計測部21が計測した力をもとに、後述の操作指令部24がロボット50の軸の位置の操作指令を制御周期毎に生成する際に使用される操作力を取得する。
このとき、第二操作力取得部23は、第二先端部作用力をもとに、操作軸に対して仮想的に作用させる第二仮想力を求める。そして、第二操作力取得部23は、第二仮想力を第二操作力として、第二操作力を取得する。
このとき、第二操作力取得部23は、前記第二先端部作用力によって、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第二操作力の方向と大きさを求めることが好ましい。
第一操作力取得部22および第二操作力取得部23がそれぞれ取得する第一および第二の操作力は、次のようにして求められる。
力計測部21が計測した、ロボット50の先端部58に作用された実際の力をもとに操作力を算出する。または、ロボット50の先端部58に作用された力をもとに、移動させるべき軸に対して、仮想的に作用するとした力である仮想力を、操作力として算出する。
具体的には、次のようにして算出する。
移動させるべき軸に対して、軸の回転中心線に直交する平面に、ロボット50の先端部58に作用する並進方向の力を射影したとき、軸に対して、正負のどちらの回転方向を向いているかをもとに、換言すれば、軸の回転中心線回りに作用する並進方向の力の向きをもとに、軸を移動させる操作力の方向を定める。そして、力計測部21が計測した並進方向の力の大きさ、または、前記射影した力の大きさ、または、前記射影した力の、回転中心線から射影した力の作用点までの位置ベクトルに直交する成分の大きさをもとに、操作力の大きさを求める。
また、力計測部21が計測した、ロボット50の先端部58に作用される力をもとに、移動させるべき軸に対して、回転中心線回りの力のモーメントを算出して、操作力を求めてもよい。
また、力計測部21が計測した、ロボット50の先端部58に作用される力をもとに、移動させるべき軸に対して、回転中心線回りの力のモーメントを算出するときに、適宜、力のベクトルや、位置ベクトルの算出方法を工夫して、操作性を向上させるようにモーメントを算出し、操作力を求めてもよい。
また、移動させるべき軸に対して、軸の回転中心線回りに作用する力のモーメントの正負をもとに、軸を移動させる操作力の方向を定めると共に、力計測部21が計測した力の大きさをもとに、操作に応じた適切な操作力の大きさを求めてもよい。
なお、操作力の方向は、移動させるべき軸の移動方向を定めることができるような、方向、正負の符号など、順方向か逆方向を定めるものであればよい。
また、力に応じて軸を移動させるときの、ロボットの操作性を向上させるために、必要に応じて、操作中のロボットの移動方向、移動速度などを考慮して、操作力を調整することが好ましい。
本実施例では、操作される軸が回転軸である場合を示したが、操作される軸が、直動軸である場合には、軸方向の力の並進方向の成分を算出するようにする。
操作指令部24は、ロボット50の先端部58に作用された力に基づいてロボット50を移動させるように、操作軸設定部25が設定する操作軸、力の方向に応じて定まる操作軸の移動方向、ならびに、第一操作力取得部22および/または第二操作力取得部23が算出した操作力(第一操作力および/または第二操作力)をもとに、操作軸の目標移動方向、目標移動速度を求め、操作軸を移動させる操作指令を制御周期毎に出力する。操作力に基づいて操作指令を生成するときには、力制御ゲインによって、操作力に対する移動速度を定めてもよい。また、操作時の状況に応じて、操作力に対する応答性を下げたり、速度を加速したり、減速したりと、必要に応じて、移動速度を調整することが好ましい。
記憶部26には、力計測部21が力を計測するために必要なパラメータ、第一操作力取得部22や第二操作力取得部23が操作力を算出するために必要なパラメータ、操作軸設定部25が操作軸を設定するために必要なパラメータや設定の結果など、各種の計算に必要なパラメータおよび計算結果などが記憶される。
さらに、ロボット制御装置10は、図示しないが、ロボット50の各軸に取付けられたエンコーダなどの位置検出装置からの情報をもとに、ロボット50の各軸の位置や、先端部の位置および/または姿勢、速度、加速度を算出する算出部などを具備している。
さらに、ロボット制御装置10は、図示しないが、各種設定を入力することのできる入力装置がロボット制御装置10に接続されて転送されるデータや、他の制御装置やコンピュータで入力された設定がネットワークを通してロボット制御装置10に転送されるデータなどの、入力データを受付けて処理する入力部を具備している。
次いで、操作者60がロボット50の先端部58に力を作用させてロボット50を移動させるときの、本発明の第一の実施形態に係るロボット制御装置10による処理の過程の一例を図3を参照して説明する。図3は、ロボット制御装置10による処理の過程の一例を示すフローチャートである。以下、ロボット50の先端部58に力を作用させてロボット50を移動させるときの、ロボット制御装置10の実行処理を、図3のフローチャート及び関連する図面を参照しつつ説明する。なお、ここで説明される一連の処理は、一例であって、本発明がこの具体例に限定されるわけではないことに留意されたい。
はじめに、力計測部21によって、操作者60がロボット50の先端部58に作用させた力を計測する(ステップS1)。
次いで、操作軸設定部25は、力に応じて移動される操作軸を設定し、また、力の方向に応じて定まる操作軸の移動方向を設定する(ステップS2)。
次いで、力計測部21が計測した、ロボット50の先端部58に作用された力をもとに、第一操作力取得部22および/または第二操作力取得部23によって、操作軸設定部25が設定した操作軸の位置を移動させるための操作力(第一操作力および/または第二操作力)を算出する(ステップS3)。
次いで、操作指令部24は、第一操作力取得部22および/または第二操作力取得部23が算出した操作力、操作軸設定部25の設定をもとに、操作軸の位置を移動させる操作指令を生成して、出力する(ステップS4)。
操作軸の位置を移動させる処理の実施例についてさらに説明する。
ステップS2において、操作軸設定部25が、移動されるべき操作軸を設定し、力の方向に応じて定まる操作軸の移動方向を、力の方向と同じ方向に設定したと仮定する。
このような場合において、ステップS3における、第一操作力取得部22および/または第二操作力取得部23によって、操作軸の位置を移動させるための操作力を算出する方法、また、ステップS4における操作指令部によって移動の操作指令を生成する方法について、詳細に説明する。なお、操作軸の軸が異なる場合、または、移動操作の状況に応じて、異なる算出方法を用いてもよい。
図4は、ロボット50の先端部58において、力Fsが作用していることが、力計測部21によって計測されていることを示す図である。力Fsは、力の並進方向の成分Fおよび力のモーメント成分Mを含み、力の並進方向の成分Fx、Fy、Fzおよび力のモーメント成分Mx、My、Mzから成る力とする。
以下において、第一操作力取得部22が第一操作力を取得する処理は、力Fsの力の並進方向の成分F(Fx、Fy、Fz)をもとに、操作力を算出する処理に相当する。また、第二操作力取得部23が第二操作力を取得する処理は、力Fsの力のモーメント成分M(Mx、My、Mz)をもとに、操作力を算出する処理に相当する。
第一操作力取得部22および/または第二操作力取得部23によって、力Fsをもとに第一操作力および/または第二操作力が求められる。これら第一操作力および第二操作力のそれぞれは操作力として使用される。もしくは、第一操作力および第二操作力をもとに操作力を算出してもよい。このような場合、第一操作力および第二操作力のそれぞれに、所定の係数または別々の係数をかけることも可能である。
操作軸に対して座標系を設定するとき、操作軸の回転中心線と座標系のZ軸が一致するように座標系を設定する。力計測部21が計測した力Fsを、この操作軸に設定した座標系上の力に座標変換して、算出される力における、Z軸回りの力のモーメントを、操作力としてもよい。
また、操作力を次のように求めてもよい。
図5は、図4に示した、ある操作軸31と、力計測部21が計測した力Fsをもとに、操作軸31に対する操作力を算出する方法を説明する図である。
操作軸31の基準座標系上の位置を表す点P1が、座標系の原点となるように、また、Z軸Azが操作軸31の回転中心線と一致するように、また、X軸AxおよびY軸Ayの成す平面が、操作軸31の回転中心線と直交する平面となるように、操作軸31に対して、点P1、X軸Ax,Y軸Ay、Z軸Az軸で構成される座標系を設定する。平面Cは、操作軸31に設定した座標系においてX軸AxおよびY軸Ayが成す平面であり、X−Y平面とする。また、平面Cは操作軸31の回転中心線と直交する平面としてもよい。この場合、点P1はこの平面と回転中心線との交点になる。また、点P2は、ロボット50の先端部58に作用させた力を計測するときの力計測座標系の原点である、力計測点を平面Cに射影した点とする。
ここで、力計測部21が計測した力Fsのモーメント成分の力M(Mx、My、Mz)を、平面C上の力のモーメントに座標変換した力のモーメントを力のモーメントM21とする。または、操作軸31に設定した座標系上の力のモーメントに変換したときのZ軸Az回りの力のモーメントを力のモーメントM21としてもよい。
位置ベクトルPvは、平面Cにおいて、点P1から点P2への位置ベクトルとする。このときの位置ベクトルPvの大きさは、操作軸31の回転中心線と力計測点との間の最短距離となる。
力Fpは、力計測部21が計測した力Fsの並進方向の成分の力F(Fx、Fy、Fz)をもとに、平面C上で、操作軸31の回転中心線回りに作用する力として求めた、並進方向の力である。並進方向の成分の力Fを平面Cに射影して得られる、並進方向の力を、力Fpとしてもよい。また、力Fsの並進方向の成分の力Fをもとに力Fpを求めるとき、力Fsの並進方向の成分の力Fが作用する方向と、所定方向への方向の回転操作とをもとに力Fpを算出するようにしてもよい。
ここで、力Fsの並進方向の成分の力Fの方向の変動によって、力Fによって求まる力Fpの大きさが変動することを軽減させるための、力Fpの算出方法の一例について図6を用いて説明する。操作軸31に設定した座標系上において、力計測点P3において作用する力Fを、力計測点P3のZ軸Az方向の値が0となるようにした平面C上の点P2において作用するように、平行移動させた力を力Fspとする。力Fspと平面Cとの成す角度が所定閾値より小さいとき、力Fspを、点P2を回転中心点として、平面Cに最も近回りする方向に回転させて平面C上の力とすることによって、力Fpを求める。
なお、力Fspと平面Cとの成す角度が大きく、力Fspの方向が平面Cに直交する方向に近い場合、前記の方法では力を不適切に大きくしてしまうため、このようなことは行わない。力Fspと平面Cとの成す角度が所定閾値以上であるとき、力Fsの並進方向の成分の力Fまたは力Fspを平面Cに射影して力Fpを求めるか、または、力Fpの大きさを0として力Fsの並進方向の成分の力Fによる操作力は作用しないものとする。
また、力Fsの並進方向の成分の力Fと平面Cに平行な面との成す角度が所定閾値より小さいとき、力Fを平面Cに射影し、さらに、その射影したベクトルに対して、ベクトルの大きさが力Fの大きさとなるように、ベクトルを伸縮調整して求めたベクトルを、力Fpとしてもよい。
さらに、力Fsの並進方向の成分の力Fと平面Cに平行な面との成す角度が所定閾値以上であるとき、力Fを平面Cに射影して力Fpを求めるか、または、力Fpの大きさを0として、力Fsの並進方向の成分の力Fによる操作力は作用しないとしてもよい。
以上のように、力Fsの並進方向の成分の力Fが作用する方向と、所定方向への方向の回転操作をもとに、平面C上の力Fpを求めることによって、力Fを平面C上に射影するだけの場合に比べて、力Fの方向の変動による力Fpの大きさの変動を軽減させたり、力Fpの大きさを調整させたりすることが可能となる。
また、力Fsの並進方向の成分の力Fの方向の変動によって、力Fによって求まる力Fpの大きさが変動することを軽減させるための、力Fpの別の算出方法の一例について図7を参照しつつ説明する。
図7に示す平面は、力Fsの並進方向の成分の力Fを平面Cに射影したときのベクトルを含む、かつ、平面Cに直交する、かつ、軸Az2を含む平面を示している。ここで、軸Az2は、Z軸Azに平行な軸とする。操作軸31に設定した座標系上において、力計測点P3において作用する力Fを、力計測点P3のZ軸Az方向の値が0となるようにした平面C上の点P2において作用するように、平行移動させた力を力Fspとする。この力Fspが平面Cと成す角度と、所定の角度によって順次定まる所定の範囲Rp1、Rp2、Rp3とを比較して、力Fspの方向が、所定の範囲のどの範囲に存在するかを求める。力Fspの方向が存在する範囲をもとに、所定の範囲毎に設定した所定の角度を求めて、平面Cに対してこの角度を成す方向を求める。換言すれば、力の方向に応じて定まる代表的な方向を求める。そして、力の方向がこの求められた方向となるように、力Fspを、点P2を回転中心点として回転させる。このように求められた力を平面Cに射影して、算出されるベクトルを、力Fpとする。
例えば、力Fspの方向が、範囲Rp1内にある場合には、力Fspを回転して移動させる方向を平面Cと成す角度が0度となる方向とする。力Fspの方向が、範囲Rp3内にある場合には、力Fspの方向は平面Cと直交する方向に近い。このような場合には、力Fspを回転して移動させる方向を平面Cと直交する方向とする、または、力Fpの大きさを0として、力Fsの並進方向の成分の力Fによる操作力は作用しないとする。
このように所定の範囲によって、力Fspの方向を、切替えるときには、操作力が大きく変わらないように、力Fspの方向、または、力Fspを射影して求められる力Fpの大きさを円滑に変化させることが好ましい。
このように求めた平面C上の力Fpに対して、さらに、後述するような、所定方向への方向の回転操作や、平行移動操作、力のFpの大きさを変更する操作などをもとに求められた力Fnを、新たな力Fpとしてもよい。
そして、平面C上の力Fpと、位置ベクトルPvとの外積演算によって求められた力のモーメントM11、また、力のモーメントM21をもとに操作力を求める。
位置ベクトルPvの大きさが所定の値より小さいとき、前記力のモーメントM21を、操作力とする。これには次の効果がある。点P2が点P1の付近にあり、点P2の誤差によって、点P2が実際とは異なる位置になる、または、位置が変動してしまう場合、力のモーメントの符号が逆になることがある。このような場合であって、操作力に対する力制御ゲインの値が大きい場合、または、力のモーメントM11と力のモーメントM21のそれぞれに係数をかけてそれらを足し合わせて力のモーメントを算出する場合、かつ、力のモーメントM11にかける係数が大きい場合に、操作軸を意図しない方向に移動させてしまうことなどを防ぐことができる。
位置ベクトルPvの大きさが所定の値以上であるとき、位置ベクトルPvと力Fpの外積演算から力のモーメントを算出し、算出した力のモーメントM11を操作力とする。または、前記算出した力のモーメントM11と、前記力のモーメントM21とを足し合わせた力のモーメントを操作力とする。さらに、力のモーメントM11と、力のモーメントM21のそれぞれに係数をかけることにより大きさを変えて、それぞれの影響力を調整した値を、足し合わせるようにしてもよい。このとき、この係数を、位置ベクトルPvの大きさや、力Fpの大きさなどをもとに、調整してもよい。
力計測部21が計測した力Fsの力のモーメント成分の力Mの影響を排除するようにしたい場合や、力Fsの並進方向の力のみで移動させたい場合には、力のモーメントM21を考慮せず、力のモーメントM11のみを操作力とすることが好ましい。
また、力Fpの大きさが同じであっても、位置ベクトルPvの大きさによって、算出される力のモーメントM11の大きさは変化する。このため、力のモーメントM21とは異なり、力のモーメントM11は、ロボット50の先端部58の位置の移動によって大きさが変わり、操作力が変動する。
このため、位置ベクトルPvの大きさが所定閾値以上で、力Fpの大きさが所定閾値より小さい場合には、力のモーメントM21のみを操作力とすることが好ましい場合がある。以上の、力のモーメントM21についての説明は、力のモーメントM21を考慮する場合、他でも同様である。
前述のように力のモーメントを算出する場合、力Fpの大きさが同じであっても、位置ベクトルPvの大きさによって、算出される力のモーメントM11の大きさが変わってしまうことに起因する問題がある。この問題に対処するための方法を、図8を参照して説明する。
図8は、前述のように説明した、力計測部21が計測した力Fsをもとに、操作軸31に対する操作力を算出する別の方法を説明する図である。直線Lwは、平面C上に存在し、点P1および点P2を含む直線とする。平面C上の並進方向の力からなる力Fpが作用する、位置ベクトルPvをもとに、位置ベクトルPvの大きさを、所定の値Cpnにまで伸縮調整させた位置ベクトルPnを算出する。力Fpを、この位置ベクトルPnの端点となる位置P4において作用するように、平行移動させた力を力Fnとする。
このように求めた、位置ベクトルPnと力Fnの外積演算から、力のモーメントを算出し、算出した力のモーメントM12を操作力とする。
このように、力のモーメントを求めるときに、位置ベクトルを伸縮調整させることによって、点P2の位置の変動による、力のモーメントの変動を軽減させ、操作力の細かな変動や、急激な変化などを防ぐことができるため、ロボット50を安定して移動させ、操作性を向上させることが可能となる。
また、操作力と力制御ゲインをもとに、操作軸の移動速度を求める場合、同じ大きさの力を作用させても、ロボット50の先端部58の位置によって、意図せずに、操作軸の移動速度が変わることを防ぐことができる。
また、図8において、位置ベクトルPvの大きさを所定の大きさにするための所定の値Cpnは、位置ベクトルPvの大きさをもとに、変更するようにしてもよい。具体的には、位置ベクトルPvの大きさに対して、所定の範囲毎に段階的に、所定の値Cpnを変える。このとき、段階的に切替えるときには、操作力が大きく変わらないように、所定の値Cpnの値を円滑に変化させる、または、算出する力のモーメントM12を円滑に変化させることが好ましい。
前述したように、所定の値Cpnを所定の範囲毎に段階的に変えているので、所定の範囲内での細かな位置の変動によって、力のモーメントが変動することを防ぐことができる。これによって、力Fnの大きさが同じ場合であっても、位置ベクトルPvの大きさに応じて力のモーメントM12が変わるようにできる。さらに、操作力の変動を減らし、ロボット50をより安定、安全に移動させ、操作性を向上させることが可能となる。
あるいは、位置ベクトルPvの大きさが大きくなるに従って、所定の値Cpnを小さくするようにしてもよい。このとき、位置ベクトルPvの大きさが大きくなるに従って、位置ベクトルPvの大きさに対して、所定の範囲毎に段階的に、または、所定の関数に従って段階的に、所定の値Cpnが小さくなるようにする。このとき、所定の値Cpnを段階的に切替えるときには、操作力が大きく変わらないように、所定の値Cpnの値を円滑に変化させることが好ましい。
このように、所定の値Cpnを、位置ベクトルPvの大きさが大きくなるに従って、小さくすることによって、力Fnが同じ大きさであっても、力のモーメントM12の大きさを小さくして、操作力を小さくすることができる。これによって、操作力と力制御ゲインをもとに、操作軸の移動速度を求める場合、力Fpが同じ大きさでも、ロボット50の先端部58が操作軸から遠位にあるときには、操作軸の移動速度を小さくできる。この移動速度、つまり、軸の回転速度を小さくした状態で、ロボット50の先端部58を移動させることによって、操作者がより安全にロボット50を移動させることが可能となる。
さらに、図5を参照した前述の説明と同様に、力のモーメントM21を算出して用いてもよい。つまり、位置ベクトルPvの大きさが所定の値より小さいとき、力のモーメントM21を操作力とする。また、位置ベクトルPvの大きさが所定の値以上であるとき、力のモーメントM12、または、力のモーメントM12と力のモーメントM21とを足し合わせた力のモーメントを操作力とする。さらに、力のモーメントM12と、力のモーメントM21のそれぞれに係数をかけて大きさを変えることにより、それぞれの影響力を調整した値を、足し合わせるようにしてもよい。このとき、この係数を、位置ベクトルPvの大きさや、力Fpの大きさなどをもとに、調整してもよい。
また、前述のように力のモーメントを算出する場合、力Fpの大きさが同じであっても、力Fpの方向によって、算出される力のモーメントの大きさが変わってしまうことに起因する問題がある。この問題に対処するための方法を、図9を参照して説明する。
図9は、前述のように説明した、力計測部21が計測した力Fsをもとに、操作軸31に対する操作力を算出する別の方法を説明する図である。図9においては、力Fsの並進方向の成分の力Fが作用する方向と、所定方向への方向の回転操作とをもとにして、操作軸31の回転中心線回りに作用させる、並進方向の力から成る力を求める。
まず、前述のように、力Fsの並進方向の成分の力Fをもとに、平面C上の、並進方向の力からなる力Fpを算出する。算出された力Fpの方向をもとに、力Fpと直線Lwとが成す角度を求める。この算出された角度と、所定の角度の範囲Rpとを比較する。力Fpの方向が、所定の角度の範囲Rp以内にあると判定されるとき、力Fpの方向が代表的な方向である所定方向Dn(図示しない)になるように、点P2を回転中心点として力Fpを回転させ、それにより、力Fnを算出する。この力Fnの方向は、位置ベクトルPvと直交する方向とすることが好ましい。このように求めた、位置ベクトルPnと力Fnの外積演算から、力のモーメントを算出し、算出した力のモーメントM13を操作力とする。
このように、力のモーメントを求めるときに、操作軸31の回転中心線回りに作用する力Fpの方向を、方向に応じて定まる代表的な方向にすることによって、力Fpの方向の変動に起因する、力のモーメントの変動を軽減させ、操作力の変動や、急激な変化などを防ぐことができる。従って、ロボット50を安定して移動させることができ、操作性を向上させることができる。
また、操作力と力制御ゲインとをもとに、操作軸の移動速度を求める場合、同じ大きさの力を作用させても、力Fpの方向によって、意図せずに、操作軸の移動速度が変わることを防ぐことができる。
また、力Fpの方向を回転させるときに用いる、所定方向Dnを、力Fpの方向に応じて変更するようにしてもよい。所定方向Dnを力Fpの方向に応じて変更して、力Fpの方向を回転させる方法の一例を、図10を参照しつつ説明する。
図10に示されるように、所定の角度の範囲として、範囲Rp1、Rp2、Rp3のように順次異なる範囲を設定する。力Fpと直線Lwとが成す角度をもとに、力Fpの方向が、前記角度の範囲Rp1、Rp2、Rp3のどの範囲にあるかを判定する。範囲毎に予め設定した所定方向Dnに基づいて、点P2を回転中心点として、力Fpの方向を回転させる。
例えば力Fpの方向が範囲Rp1内にあるとき、力Fpを所定方向Dnに回転させた力Fn1を力Fnとする。力Fpの方向が範囲Rp2内にあるとき、力Fpを別の所定方向Dnに回転させた力Fn2を力Fnとする。さらに、力Fpが範囲Rp3内にあるとき、力Fpをさらに別の所定方向Dnに回転させた力Fn3を力Fnとする。このように所定方向Dnを範囲毎に段階的に切替えるときには、操作力が大きく変わらないように、力Fpの方向を円滑に変化させる、または、算出する力のモーメントM13が円滑に変化するようにすることが好ましい。
このように、力Fpの方向を回転させるときに用いる、所定方向Dnを、力Fpの方向をもとに、所定の範囲毎に段階的に変えることによって、力Fpの方向をなるべく考慮して力のモーメントM13が変わるようにできる。さらに、この場合には、力Fpの方向が所定の範囲内にあるときの力Fpの方向の変動による、力のモーメントM13の細かな変動を防ぐことができる。これによって、操作力の変動を減らし、ロボット50をより安定、安全に移動させ、操作性を向上させることが可能となる。
また、位置ベクトルPvの大きさが大きくなるに従って、所定方向Dnと位置ベクトルPvとの成す角度が小さくなる方向に所定方向Dnを変更してもよい。このとき、位置ベクトルPvの大きさが大きくなるに従って、位置ベクトルPvの大きさに対して、所定の範囲毎に段階的に、または、所定の関数に従って段階的に、所定方向Dnと位置ベクトルPvとの成す角度が小さくなる方向に所定方向Dnを変更する。
所定方向Dnを範囲毎に段階的に切替えるときには、操作力が大きく変わらないように、力Fpの方向を円滑に変化させる、または、算出する力のモーメントM13が円滑に変化させることが好ましい。
このように、位置ベクトルPvの大きさが大きくなるに従って、所定方向Dnと位置ベクトルPvとの成す角度が小さくなる方向に所定方向Dnを変更することによって、力Fnが同じ大きさであっても、力のモーメントM13の大きさを小さくして、操作力を小さくすることができる。
これによって、操作力と力制御ゲインとをもとに、操作軸の移動速度を求める場合、力Fpが同じ大きさでも、ロボット50の先端部58が操作軸から遠位にあるときには、操作軸の移動速度を小さくできる。この移動速度、つまり、軸の回転速度を小さくした状態で、ロボット50の先端部58を移動させることによって、操作者がより安全にロボット50を移動させることが可能となる。
さらに、図5を参照した前述の説明と同様に、力のモーメントM21を算出して用いてもよい。つまり、位置ベクトルPvの大きさが所定の値より小さいとき、力のモーメントM21を操作力とする。また、位置ベクトルPvの大きさが所定の値以上であるとき、力のモーメントM13、または、力のモーメントM13と力のモーメントM21とを足し合わせた力のモーメントを操作力とする。さらに、力のモーメントM13と、力のモーメントM21のそれぞれに係数をかけて大きさを変えることにより、それぞれの影響力を調整した値を、足し合わせるようにしてもよい。このとき、この係数を、位置ベクトルPvの大きさや、力Fpの大きさなどをもとに、調整してもよい。
また、前述した、力のモーメントM12の算出時に行った、平面C上の力Fpが作用する位置ベクトルの伸縮調整の操作と、力のモーメントM12の算出時に行った、力Fsの並進方向の成分の力Fの方向および所定方向への回転操作をもとに、力のモーメントを算出するようにしてもよい。
この算出方法の実施の一例を、図11を参照しつつ、説明する。
図11は、図5、図8、図9、図10などと同様に、力計測部21が計測した力Fsをもとに、操作軸31に対する操作力を算出する方法を説明する図である。
前述したのと同様に、点P1は操作軸31の基準座標系上の位置を表す原点とする。平面Cは、原点が点P1にあり、Z軸Azが操作軸31の回転中心線と一致し、X軸AxおよびY軸Ayの成す平面が、操作軸31の回転中心線と直交する平面となるように、操作軸31に設定した座標系の、X軸AxおよびY軸Ayが成す平面であり、X−Y平面とする。点P2は、ロボット50の先端部58に作用された力を計測するときの力計測座標系の原点である、力計測点を、平面Cに射影した点とする。位置ベクトルPvは、平面Cにおいて、点P1から点P2への位置ベクトルとする。力Fpは、力Fsの並進方向の成分の力Fをもとに、前述のように、平面C上で操作軸31の回転中心線回りに作用する力として求めた並進方向の力である。Lwは、平面C上に存在し、点P1および点P2を含む直線とする。
このとき、並進方向の力からなる力Fpが作用する、位置ベクトルPvをもとに、位置ベクトルPvの大きさを所定の値Cpnにまで伸縮調整させた位置ベクトルPnを算出する。並進方向の力から成る力Fpが作用する点を、この位置ベクトルPnの端点である位置P4に移動させるように、力Fpを平行移動させた力を、力Fnpとする。
平面C上を平行移動させて求められた力Fnpの方向をもとに、力Fnpと直線Lwとが成す角度を算出する。この算出した角度と、所定の角度によって与えられる所定の角度の範囲Rpとを比較する。力Fpの方向が、所定の角度の範囲Rp以内にあると判定されるときには、力Fpの方向を、所定方向に回転させた力Fnを算出する。
このように求めた、位置ベクトルPnと力Fnの外積演算から、力のモーメントを算出し、算出した力のモーメントM14を操作力とする。ただし、位置ベクトルPvの大きさが所定の値より小さいときは、前述したのと同様に、力のモーメントM21を、操作力とする。
このように、操作軸31の回転中心線回りに作用する力Fpの方向を方向に応じて定まる代表的な方向にする、また、力が作用する位置ベクトルを所定の大きさにする。これにより、力のモーメントを求めるときに、点P2の位置の変動による、また、力Fpの方向の変動よる、力のモーメントの変動を軽減させ、操作力の細かな変動や、急激な変化などを防ぐことができる。従って、ロボット50を安定して移動させることができ、操作性を向上させることができる。
また、操作力と力制御ゲインとをもとに、操作軸の移動速度を求める場合、同じ大きさの力を作用させても、力Fpの方向によって、意図せずに、操作軸の移動速度が変わることを防ぐことができる。
また、力Fpの方向の変更、力Fpが作用する位置ベクトルの大きさを所定の値にする方法の別の実施例、力のモーメントM22を考慮する方法などは、前述したのと同様である。このようなことによって、ロボット50に力を作用させて移動させるときの、操作性を向上させるとともに、より安全にすることが可能である。
操作力の算出方法として、別の実施例について説明する。
力計測部21が計測した力Fsの並進方向の成分の力Fをもとに、操作軸31の回転中心線回りに作用させる並進方向の力から成る力Fpを求め、前記並進方向の力から成る力Fpの方向をもとに、操作力の方向を求める。もしくは、力計測部21が計測した力Fsの並進方向の成分の力Fの大きさ、または、操作軸31の回転中心線回りに作用させる力Fpの大きさをもとに、操作力の大きさを求めるようにしてもよい。
この実施例について、図12を参照しつつ、さらに説明する。
前述の実施例と同様に、点P1は操作軸31の基準座標系上の位置を表す原点とする。平面Cは、原点が点P1にあり、Z軸Azが操作軸31の回転中心線と一致し、X軸AxおよびY軸Ayの成す平面が、操作軸31の回転中心線と直交する平面となるように、操作軸31に設定した座標系の、X軸AxおよびY軸Ayが成す平面であり、X−Y平面とする。点P2は、ロボット50の先端部58に作用させた力を計測するときの力計測座標系の原点である、力計測点を平面Cに射影した点とする。位置ベクトルPvは、平面Cにおいて、点P1から点P2への位置ベクトルとする。力Fpは、力Fsの並進方向の成分の力Fをもとに、前述のように、平面C上で操作軸31の回転中心線回りに作用する力として求めた並進方向の力である。Lwは、平面C上に存在し、点P1および点P2を含む直線とする。
位置ベクトルPvの大きさが所定の値より小さいとき、操作力は作用しないとする。そして、位置ベクトルPvの大きさが所定の値以上であるとき、以下のようにする。
まず、力Fpをもとに、操作軸31に対して仮想的に作用するとした仮想力を次のように求める。力Fpのベクトルと、位置ベクトルPvの内積を求めるなどして、力Fpの方向が、直線Lwと直交する正方向(+Rqの方向)であるか、直線Lwと直交する負方向(−Rqの方向)であるかによって、仮想力の方向を求め、仮想力の符号を決める。図12に示す場合には、力Fpの方向は、直線Lwと直交する+方向(+Rqの方向)にあると求められる。従って、この方向をもとに、仮想力の方向を正方向とし、仮想力の符号を正とする。
さらに、力Fpの大きさをもとに、または、力Fsの並進方向の成分の力Fの大きさを、仮想力の大きさとする。または、力Fpの位置ベクトルPvと直交する成分の大きさを、仮想力の大きさとしてもよい。このようにして求めた仮想力Fkを、操作力とする。
さらに、力計測部21が計測した力Fsのモーメント成分の力Mをもとに求めた、前記力のモーメントM21を算出して用いてもよい。位置ベクトルPvの大きさが所定の値より小さいとき、力のモーメントM21を操作力とする。
また、位置ベクトルPvの大きさが所定の値以上であるときには、前記仮想力Fkに所定の値をかけた値、または、前記仮想力Fkに所定の値をかけた値と力のモーメントM21とを足し合わせた力のモーメントを操作力とする。さらに、前記仮想力Fkに所定の値をかけた値と、力のモーメントM21のそれぞれに係数をかけて大きさを変えることにより、それぞれの影響力を調整した値を、足し合わせるようにしてもよい。このとき、この係数を、位置ベクトルPvの大きさや、力Fpの大きさなどをもとに、調整してもよい。
前述の説明と同様に、力計測部21が計測した力Fsのモーメント成分の力Mの影響を排除するようにしたい場合や、力Fsの並進方向の力のみで移動させたい場合には、力のモーメントM21を考慮せず、仮想力Fkをもとにした力を操作力とすることが好ましい。
操作指令部24は、前述のようにして求めた操作力と操作軸設定部25によって設定される力の方向に応じて定まる移動方向に基づいて操作軸を移動させる。このとき、操作指令部24は、操作力の符号と、操作軸設定部25が設定した力の方向に応じて定まる、ここでは、操作力の符号に応じて定まる操作軸の移動方向をもとに、操作軸の目標移動方向(回転軸の場合、回転方向)を決定し、操作力の大きさをもとに、操作軸の目標移動速度を算出する。
このとき、操作力の大きさに、力に対する移動の応答性を定める力制御ゲインをかけた力制御を行うことによって、操作軸の目標移動速度を算出することが好ましい。また、操作軸の回転中心線からロボット50の先端部58までの最短距離に応じて、前記力制御ゲインを変更するようにしてもよい。
このとき、操作軸の回転中心線からロボット50の先端部58までの最短距離をもとに、所定の範囲毎に段階的に、または、所定の関数に従って段階的に、または、所定の関数に従って連続的に、力制御ゲインを変更する。なお、力制御ゲインを段階的に切替えるときには、ロボット50の移動速度が急に、大きく変わらないように、移動の速度を円滑に変化させることが好ましい。
これによって、ロボット50の先端部58の位置によって、操作力に対する応答性を変更し、空間における領域毎に、ロボット50の移動速度を調整することができる。
ここで、操作軸の回転中心線からロボット50の先端部58までの最短距離が大きい場合と、小さい場合とにおいて、同じ操作力に対して、操作軸の速度を同じ角速度で移動させることを考える。最短距離が大きい場合には、最短距離が小さい場合よりも、ロボット50の先端部58の並進方向の速度は速くなる。
そして、操作軸からロボット50の先端部58の位置が遠い場合には、操作軸からロボット50の先端部58の位置が近い場合よりも、同じ操作力に対する操作軸の角速度を遅くした方が、安全であり、また操作しやすくなる。従って、操作軸の回転中心線からロボット50の先端部58までの最短距離が大きくなるに従って、力制御ゲインを小さくするようにしてもよい。
これによって、操作力の大きさが同じ場合でも、操作軸からロボット50の先端部58の位置が遠くなるに従って、ロボット50の先端部58の速度を小さくすることができる。その結果、安全性を高め、操作性を向上させることが可能となる。
また、操作力の大きさに応じて操作軸の目標移動速度を変える場合には、操作力の大きさが同じでも、ロボット50の先端部58が、操作軸から遠くなるに従って、ロボット50の先端部58の接線速度は大きくなってしまう。
そこで、操作指令部24は、前述のようにして求めた操作力と、操作軸設定部25によって設定される力の方向に応じて定まる移動方向とに基づいて、操作軸を移動させるとき、操作力に基づいて、操作軸の回転中心線回りの、ロボット50の先端部58の目標移動方向および目標接線速度を求める。そして、操作指令部24は、ロボット50の先端部58の目標移動方向および目標接線速度をもとに、操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させるようにしてもよい。
これによって、操作力の大きさが同じ場合、ロボット50の先端部58の位置によらず、ロボット50の先端部58の接線速度を同じにすることが可能となる。この場合、ロボット50の先端部58が、操作軸から離れるに従って、操作力の大きさが同じでも、操作軸の回転速度は小さくなる。
また、このような効果を得るため、操作力の大きさをもとに、操作軸の目標移動速度を算出する場合には、前述したように、操作軸の回転中心線からロボット50の先端部58までの最短距離が大きくなるに従って、力制御ゲインを小さくしてもよい。また、前述した効果を得るために、操作力を算出するときに、操作軸の回転中心線からロボット50の先端部58までの最短距離で除算演算して小さくなるように求めてもよい。
また、操作力に基づいて、操作軸の回転中心線回りのロボット50の先端部58の移動方向および接線速度を求めた後で、操作軸の目標移動方向および目標移動速度を求めるとき、操作力の大きさに、力に対する移動の応答性を定める力制御ゲインをかけた力制御によって、ロボット50の先端部58の目標接線速度を算出してもよい。このときにも、操作軸の回転中心線からロボット50の先端部58までの最短距離に応じて、力制御ゲインの値を変更するようにしてもよい。
このような場合には、操作軸の回転中心線からロボット50の先端部58までの最短距離をもとに、所定の範囲毎に段階的に、または、所定の関数に従って段階的に、または、所定の関数に従って連続的に、力制御ゲインを変更する。なお、力制御ゲインを段階的に切替えるときには、ロボット50の移動速度が急に、大きく変わらないように、移動の速度を円滑に変化させることが好ましい。
また、前述の場合に、操作軸の回転中心線からロボット50の先端部58までの最短距離が大きくなるに従って、力制御ゲインを小さくするようにしてもよい。これによって、操作軸の回転中心線から、ロボット50の先端部58の位置が遠ざかるに従って、操作軸の回転中心線回りの、ロボット50の先端部58の接線速度を小さくすることができ、ロボット50をより安全に操作することが可能となる。
以上のようにして、操作指令部24は、操作軸設定部25の設定と、第一操作力取得部22および/または第二操作力取得部23が、算出する操作力をもとに、操作軸としたロボット50の所望の軸を移動させる指令を出力する。
以上によって、ロボットの先端部に力を作用させるとき、ロボットの軸を力に応じて移動させることによって、ロボットをどのような姿勢にも移動させ易くすることが可能となる。言い換えれば、ロボットの先端部に力を作用させてロボットを移動させることにより、直交座標系上におけるロボットの先端部の位置および/または姿勢を移動させる際に、ロボットの先端部を移動が困難な位置、または、移動が不可能な位置に移動させることが可能となる。
また、ロボットの先端部に力を作用させて、ロボットの軸の位置を移動させるとき、ロボットの先端部の位置が変動しても、また、ロボットの先端部に作用させる力の方向が変動しても、より安定的に、また、より安全に、また、容易に移動させることを可能とし、操作性を向上させる。
以上、本発明の種々の実施形態および変形例を説明したが、他の実施形態および変形例によっても本発明の意図される作用効果を奏することができることは当業者に自明である。特に、本発明の範囲を逸脱することなく前述した実施形態および変形例の構成要素を削除ないし置換することが可能であるし、公知の部をさらに付加することが可能である。また、本明細書において明示的または暗示的に開示される複数の実施形態の特徴を任意に組合せることによっても本発明を実施できることは当業者に自明である。すなわち、本発明の技術的思想の範囲内で考えられる他の形態についても、本発明の範囲内に含まれる。
10 ロボット制御装置
11 ロボットシステム
21 力計測部
22 第一操作力取得部
23 第二操作力取得部
24 操作指令部
25 操作軸設定部
26 記憶部
31 操作軸
50 ロボット
51 第一軸、J1軸
52 第二軸、J2軸
53 第三軸、J3軸
54 第四軸、J4軸
55 第五軸、J5軸
56 第六軸、J6軸
57 ロボットのフランジ部
58 ロボットの先端部
59 ロボットの台座
60 操作者
Ax 操作軸に設定した座標系のX軸
Ay 操作軸に設定した座標系のY軸
Az 操作軸の回転中心線と一致する、操作軸に設定した座標系のZ軸
Az2 Z軸Azと、平行な軸
C X軸Axと、Y軸Ayが成す平面であり、操作軸の回転中心線と直交する平面
F 力計測部が計測した力における、並進方向の力
Fn 平面C上で、力Fpを平行移動させた力
Fn1 平面C上で、力Fpを回転移動させた力
Fn2 平面C上で、力Fpを回転移動させた力
Fn3 平面C上で、力Fpを回転移動させた力
Fnp 平面C上で、力Fpを平行移動させた力
Fs 力計測部が計測した力
Fsp 力Fが作用する点を平面C上に移動するように、力Fを平行移動させた力
Fp 操作軸の回転中心線回りに作用する、平面C上の並進方向の力
Lw 平面C上に存在し、点P1と点P2を含む直線
P1 操作軸31に設定した座標系の原点
P2 力計測点P3を平面Cに射影した、平面C上の点
P3 力計測点
P4 平面C上の点
Pn 平面C上で、位置ベクトルPvを伸縮調整した位置ベクトル
Pv 平面C上の位置ベクトル
R1 回転軸
R2 回転軸
Rp 方向、角度の範囲
Rp1 方向、角度の範囲
Rp2 方向、角度の範囲
Rp3 方向、角度の範囲
+Rq 平面C上で、直線Lwと直交する正方向
−Rq 平面C上で、直線Lwと直交する負方向

Claims (14)

  1. 少なくとも一つの回転軸を含む複数の軸から成るロボットに作用させた力に基づいて、前記ロボットを移動させるロボットシステムのロボット制御装置において、
    前記ロボットの先端部に作用させた力を計測する力計測部と、
    前記少なくとも一つの回転軸のうち、前記力に応じて回転移動される軸を操作軸として設定すると共に、前記力の方向に応じて定まる前記操作軸の回転移動方向を設定する操作軸設定部と、
    前記力計測部が計測した力の並進成分から成る力を第一先端部作用力としたとき、
    前記第一先端部作用力をもとに、前記操作軸の回転中心線と直交する平面上に存在し、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求め、
    前記求められた力の並進成分から成る力、および、
    前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、
    前記操作軸に対して仮想的に作用させる第一仮想力を求めて、前記第一仮想力を第一操作力とする第一操作力取得部と、
    前記操作軸設定部によって設定された前記操作軸を、前記第一操作力から定まる操作力に基づいて、移動させる操作指令を出力する操作指令部と、を具備し、
    前記操作指令部は、前記第一操作力と前記操作軸設定部によって設定される前記移動方向とに基づいて、前記操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させることを特徴とするロボット制御装置。
  2. 少なくとも一つの回転軸を含む複数の軸から成るロボットに作用させた力に基づいて、前記ロボットを移動させるロボットシステムのロボット制御装置において、
    前記ロボットの先端部に作用させた力を計測する力計測部と、
    前記少なくとも一つの回転軸のうち、前記力に応じて回転移動される軸を操作軸として設定すると共に、前記力の方向に応じて定まる前記操作軸の回転移動方向を設定する操作軸設定部と、
    前記力計測部が計測した力のモーメント成分から成る力を第二先端部作用力としたとき、
    前記第二先端部作用力をもとに、前記操作軸に対して仮想的に作用させる第二仮想力を求め、前記第二仮想力を第二操作力とする第二操作力取得部と、
    前記操作軸設定部によって設定された前記操作軸を、前記第二操作力から定まる操作力に基づいて、移動させる操作指令を出力する操作指令部と、を具備し、
    前記操作指令部は、前記第二操作力と前記操作軸設定部によって設定される前記移動方向とに基づいて、前記操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させることを特徴とするロボット制御装置。
  3. 少なくとも一つの回転軸を含む複数の軸から成るロボットに作用させた力に基づいて、前記ロボットを移動させるロボットシステムのロボット制御装置において、
    前記ロボットの先端部に作用させた力を計測する力計測部と、
    前記少なくとも一つの回転軸のうち、前記力に応じて回転移動される軸を操作軸として設定すると共に、前記力の方向に応じて定まる前記操作軸の回転移動方向を設定する操作軸設定部と、
    前記力計測部が計測した力の並進成分から成る力を第一先端部作用力としたとき、
    前記第一先端部作用力をもとに、前記操作軸の回転中心線と直交する平面上に存在し、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求め、
    前記求められた力の並進成分から成る力、および、
    前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、
    前記操作軸に対して仮想的に作用させる第一仮想力を求めて、前記第一仮想力を第一操作力とする第一操作力取得部と、
    前記力計測部が計測した力のモーメント成分から成る力を第二先端部作用力としたとき、
    前記第二先端部作用力をもとに、前記操作軸に対して仮想的に作用させる第二仮想力を求め、前記第二仮想力を第二操作力とする第二操作力取得部と、
    前記操作軸設定部によって設定された前記操作軸を、前記第一操作力および前記第二操作力から定まる操作力に基づいて、移動させる操作指令を出力する操作指令部と、を具備し、
    前記操作指令部は、前記第一操作力と前記第二操作力と前記操作軸設定部によって設定される前記移動方向とに基づいて、前記操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させることを特徴とするロボット制御装置。
  4. 請求項1、3のいずれか一項に記載のロボット制御装置において、
    前記操作指令部は、
    前記操作軸の目標移動方向および目標移動速度を求めるとき、
    前記操作軸の回転中心線回りの、前記ロボットの先端部の目標移動方向および目標接線速度を求めて、
    前記ロボットの先端部の目標移動方向および目標接線速度をもとに、前記操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させることを特徴とするロボット制御装置。
  5. 請求項2、3のいずれか一項に記載のロボット制御装置において、
    前記操作指令部は、
    前記操作軸の目標移動方向および目標移動速度を求めるとき、
    前記操作軸の回転中心線回りの、前記ロボットの先端部の目標移動方向および目標接線速度を求めて、
    前記ロボットの先端部の目標移動方向および目標接線速度をもとに、前記操作軸の目標移動方向および目標移動速度を求めて、前記操作軸を移動させることを特徴とするロボット制御装置。
  6. 請求項1、3、4のいずれか一項に記載のロボット制御装置において、
    前記第一操作力取得部は、
    前記第一先端部作用力をもとに、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求めると共に、
    前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第一操作力の方向と大きさを求めることを特徴とするロボット制御装置。
  7. 請求項1、3、4のいずれか一項に記載のロボット制御装置において、
    前記第一操作力取得部は、
    前記第一先端部作用力をもとに、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求めると共に、
    前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記位置ベクトルの大きさを所定の値にした位置ベクトルに基づいて、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第一操作力の方向と大きさを求めることを特徴とするロボット制御装置。
  8. 請求項1、3、4のいずれか一項に記載のロボット制御装置において、
    前記第一操作力取得部は、
    前記第一先端部作用力が作用する方向と、所定方向への方向の回転操作とをもとに、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求めると共に、
    前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトル、をもとに、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第一操作力の方向と大きさを求めることを特徴とするロボット制御装置。
  9. 請求項1、3、4のいずれか一項に記載のロボット制御装置において、
    前記第一操作力取得部は、
    前記第一先端部作用力が作用する方向と、所定方向への方向の回転操作とをもとに算出した、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求めると共に、
    前記求められた力の並進成分から成る力、および、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記位置ベクトルの大きさを所定の値にした位置ベクトルに基づいて、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第一操作力の方向と大きさを求めることを特徴とするロボット制御装置。
  10. 請求項1、3、4のいずれか一項に記載のロボット制御装置において、
    前記第一操作力取得部は、
    前記第一先端部作用力をもとに、前記操作軸の回転中心線回りに作用させる、力の並進成分から成る力を求めると共に、
    前記求められた力の並進成分から成る力の方向と、前記求められた力の並進成分から成る力が作用する位置ベクトルをもとに、前記第一操作力の方向を求めて、
    前記求められた力の並進成分から成る力の大きさ、または、前記第一先端部作用力の大きさをもとに、前記第一操作力の大きさを求めることを特徴とするロボット制御装置。
  11. 請求項2、3、5に記載のロボット制御装置において、
    前記第二操作力取得部は、
    前記第二先端部作用力によって、前記操作軸の回転中心線回りに作用する力のモーメント成分を算出して、前記第二操作力の方向と大きさを求めることを特徴とするロボット制御装置。
  12. 請求項7または9に記載のロボット制御装置において、
    前記操作軸の回転中心線から、前記ロボットの先端部までの最短距離が大きくなるに従って、前記所定の値を小さくすることを特徴とするロボット制御装置。
  13. 請求項8に記載のロボット制御装置において、
    前記操作軸の回転中心線から前記ロボットの先端部までの最短距離が大きくなるに従って、前記所定方向と前記位置ベクトルとの成す角度が小さくなる方向に前記所定方向を変更することを特徴とするロボット制御装置。
  14. 請求項1から13のいずれか一項に記載のロボット制御装置において、
    前記操作指令部は、力制御ゲインをもとにした力制御によって、
    前記操作軸の移動速度を求め、
    前記軸の回転中心線から前記ロボットの先端部までの最短距離が大きくなるに従って、前記力制御ゲインを小さくすることを特徴とするロボット制御装置。
JP2014082624A 2014-04-14 2014-04-14 作用された力に応じて移動されるロボットを制御するロボット制御装置 Active JP5893664B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2014082624A JP5893664B2 (ja) 2014-04-14 2014-04-14 作用された力に応じて移動されるロボットを制御するロボット制御装置
DE102015004481.8A DE102015004481B4 (de) 2014-04-14 2015-04-07 Robotersteuervorrichtung zum Steuern eines gemäß einer ausgeübten Kraft bewegten Roboters
US14/684,655 US9555548B2 (en) 2014-04-14 2015-04-13 Robot control device for controlling robot moved according to applied force
CN201510173831.3A CN104972469B (zh) 2014-04-14 2015-04-13 控制与作用的力对应地移动的机器人的机器人控制装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014082624A JP5893664B2 (ja) 2014-04-14 2014-04-14 作用された力に応じて移動されるロボットを制御するロボット制御装置

Publications (2)

Publication Number Publication Date
JP2015202535A true JP2015202535A (ja) 2015-11-16
JP5893664B2 JP5893664B2 (ja) 2016-03-23

Family

ID=54193324

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014082624A Active JP5893664B2 (ja) 2014-04-14 2014-04-14 作用された力に応じて移動されるロボットを制御するロボット制御装置

Country Status (4)

Country Link
US (1) US9555548B2 (ja)
JP (1) JP5893664B2 (ja)
CN (1) CN104972469B (ja)
DE (1) DE102015004481B4 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6746990B2 (ja) * 2016-03-18 2020-08-26 セイコーエプソン株式会社 ロボット制御装置及びロボットシステム
JP2018069361A (ja) * 2016-10-27 2018-05-10 セイコーエプソン株式会社 力制御座標軸設定装置、ロボットおよび力制御座標軸設定方法
CN106994686B (zh) * 2016-12-01 2018-05-08 遨博(北京)智能科技有限公司 关节外力力矩的计算方法及装置、机器人
JP6400749B2 (ja) * 2017-01-24 2018-10-03 ファナック株式会社 力制御押付装置を備えたロボットシステム
EP3444076B1 (de) * 2017-08-17 2020-06-17 Siemens Healthcare GmbH Verfahren zur absolutpositionsbestimmung eines robotischen gerätes und robotisches gerät
WO2019098044A1 (ja) 2017-11-14 2019-05-23 三菱電機株式会社 ロボットの動作調整装置、動作制御システム及びロボットシステム
DE102018200864B3 (de) 2018-01-19 2019-02-07 Kuka Deutschland Gmbh Verfahren und System zum Steuern eines Roboters
JP2019177436A (ja) * 2018-03-30 2019-10-17 日本電産株式会社 ロボット制御装置、ロボットの関節の角度を求める方法、プログラム
KR102543596B1 (ko) * 2018-08-31 2023-06-19 삼성전자주식회사 외력의 측정을 위한 적어도 하나의 파라미터를 산출하는 방법 및 이를 수행하는 전자 장치
JP7415447B2 (ja) * 2019-10-31 2024-01-17 セイコーエプソン株式会社 ロボットシステム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5685106A (en) * 1979-12-14 1981-07-11 Hitachi Ltd Robot teaching method
JPH06250728A (ja) * 1993-02-26 1994-09-09 Hitachi Constr Mach Co Ltd ロボットの直接教示装置
JP4267027B2 (ja) * 2006-12-07 2009-05-27 ファナック株式会社 ロボット制御装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2897792B2 (ja) 1991-02-21 1999-05-31 株式会社デンソー 電磁継電器
CN100445047C (zh) * 2001-02-21 2008-12-24 索尼公司 机器人装置和控制机器人装置操作的方法
JP3923053B2 (ja) * 2004-03-31 2007-05-30 ファナック株式会社 ロボット教示装置
US20090259412A1 (en) * 2006-02-23 2009-10-15 Abb Ab system for controlling the position and orientation of an object in dependence on received forces and torques from a user
DE102007062108A1 (de) 2007-12-21 2009-07-02 Kuka Roboter Gmbh Industrieroboter und Verfahren zum Programmieren eines Industrieroboters
EP2390064A4 (en) * 2009-01-22 2013-03-27 Panasonic Corp APPARATUS AND METHOD FOR CONTROLLING A ROBOT ARM, ROBOT, PROGRAM FOR CONTROLLING A ROBOT ARM, AND INTEGRATED ELECTRONIC CIRCUIT
DE102009018403A1 (de) 2009-04-22 2010-10-28 Kuka Roboter Gmbh Verfahren und Vorrichtung zur Regelung eines Manipulators
JP4699572B2 (ja) * 2009-09-28 2011-06-15 パナソニック株式会社 ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路
DE102010019640A1 (de) 2010-05-06 2011-11-10 Kuka Roboter Gmbh Handgerät und Verfahren zum Steuern und/oder Programmieren eines Manipulators
DE102010029745A1 (de) 2010-06-07 2011-12-08 Kuka Laboratories Gmbh Werkstück-Handhabungssystem und Verfahren zum Manipulieren von Werkstücken mittels kooperierender Manipulatoren
US8650965B2 (en) * 2010-08-31 2014-02-18 Kabushiki Kaisha Yaskawa Denki Robot, robot system, robot control device, and state determining method
DE102012009010A1 (de) 2012-05-05 2012-12-13 Daimler Ag Verfahren zum Erzeugen einer Bewegung eines Roboters
WO2013175777A1 (ja) * 2012-05-23 2013-11-28 パナソニック株式会社 ロボット、ロボットの制御装置、制御方法、及び制御プログラム
WO2014110682A1 (en) * 2013-01-18 2014-07-24 Robotiq Inc. Force/torque sensor, apparatus and method for robot teaching and operation
DE102013218823A1 (de) * 2013-09-19 2015-04-02 Kuka Laboratories Gmbh Verfahren zum manuell geführten Verstellen der Pose eines Manipulatorarms eines Industrieroboters und zugehöriger Industrieroboter

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5685106A (en) * 1979-12-14 1981-07-11 Hitachi Ltd Robot teaching method
JPH06250728A (ja) * 1993-02-26 1994-09-09 Hitachi Constr Mach Co Ltd ロボットの直接教示装置
JP4267027B2 (ja) * 2006-12-07 2009-05-27 ファナック株式会社 ロボット制御装置

Also Published As

Publication number Publication date
CN104972469B (zh) 2016-11-02
DE102015004481A1 (de) 2015-10-15
CN104972469A (zh) 2015-10-14
US20150290810A1 (en) 2015-10-15
DE102015004481B4 (de) 2018-12-06
US9555548B2 (en) 2017-01-31
JP5893664B2 (ja) 2016-03-23

Similar Documents

Publication Publication Date Title
JP5893664B2 (ja) 作用された力に応じて移動されるロボットを制御するロボット制御装置
JP5893665B2 (ja) 作用された力に応じて移動されるロボットを制御するロボット制御装置
JP5893666B2 (ja) 力に応じて動かすロボットのロボット制御装置およびロボットシステム
JP5946859B2 (ja) 力に応じて動かすロボットのロボット制御装置およびロボットシステム
JP6314426B2 (ja) ロボット制御装置およびロボット制御方法
JP6046218B1 (ja) 物体と物体とを合わせ状態にするロボットのロボット制御装置
JP5916583B2 (ja) 多関節ロボットのウィービング制御装置
JP2018130800A (ja) 学習制御機能を備えたロボットシステム及び学習制御方法
JP6044511B2 (ja) ロボットの制御方法及びロボットシステム
WO2018212265A1 (ja) ロボットシステム及びロボットシステムの制御方法
JP7481097B2 (ja) ロボット制御装置
Luo et al. Cartesian position and force control with adaptive impedance/compliance capabilities for a humanoid robot arm
Herbin et al. Six-axis control joystick based on tensometric beam
JP6238110B2 (ja) ロボットハンドの制御方法と制御装置
JP2016179523A (ja) ロボット制御装置およびロボットシステム
CN113474130A (zh) 利用机器人执行预先设定的任务的方法和系统
Fontes et al. Feedforward control for the kinematically redundant manipulator 3PRRR
Nuchkrua et al. Contouring control of 5-DOF manipulator robot arm based on equivalent errors
Briones et al. Position and force control of a parallel robot capaman 2 bis parallel robot for drilling tasks
US20240198523A1 (en) Robot system, and control method and control program thereof
JP2017148913A (ja) ロボット、制御装置及びロボットの制御方法
JP6252272B2 (ja) 垂直多関節型ロボットの位置誤差抑制方法
JPS63276607A (ja) マニピュレータ装置
JP2015168050A (ja) ロボット制御装置、ロボットおよびロボット制御方法
Kim Position/Force Control Using a 6-axis Compliance

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20150917

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150929

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151109

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160224

R150 Certificate of patent or registration of utility model

Ref document number: 5893664

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150