JP7155743B2 - ロボットシステム、ロボット、及び制御方法 - Google Patents

ロボットシステム、ロボット、及び制御方法 Download PDF

Info

Publication number
JP7155743B2
JP7155743B2 JP2018154486A JP2018154486A JP7155743B2 JP 7155743 B2 JP7155743 B2 JP 7155743B2 JP 2018154486 A JP2018154486 A JP 2018154486A JP 2018154486 A JP2018154486 A JP 2018154486A JP 7155743 B2 JP7155743 B2 JP 7155743B2
Authority
JP
Japan
Prior art keywords
value
period
peak value
threshold
robot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018154486A
Other languages
English (en)
Other versions
JP2020028926A (ja
Inventor
信宏 狩戸
馨 竹内
泰裕 下平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2018154486A priority Critical patent/JP7155743B2/ja
Priority to CN201910770128.9A priority patent/CN110842910B/zh
Priority to US16/545,109 priority patent/US11389958B2/en
Publication of JP2020028926A publication Critical patent/JP2020028926A/ja
Application granted granted Critical
Publication of JP7155743B2 publication Critical patent/JP7155743B2/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/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0009Constructional details, e.g. manipulator supports, bases
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Manipulator (AREA)

Description

この発明は、ロボットシステム、ロボット、及び制御方法に関する。
力制御によってロボットに作業を行わせる技術についての研究、開発が行われている。
これに関し、アームと、外部から加わる力を検出する力検出部を有し、アームの先端部に設置された力覚センサーと、力覚センサーの力検出部への負荷が無負荷となる状態を保護状態とし、保護状態である場合の力覚センサーの検出結果に基づいて、力覚センサーにおいて検出される力の基準点を設定するゼロ点調整を実行する調整部とを備えるロボット装置が知られている(特許文献1参照)。
特開2017-087313号公報
しかしながら、このようなロボット装置は、当該ロボット装置の外部から加えられる検出対象ではない力が力覚センサーに加わる環境では、ゼロ点調整を精度よく実行することができない場合があった。
上記課題を解決するために本発明の一態様は、ロボットと、前記ロボットに加えられた外力を検出する力検出部と、前記力検出部のリセット処理を行うリセット処理部と、前記リセット処理部による前記リセット処理に応じた補正を行う補正部と、を備え、前記リセット処理は、前記力検出部をリセットする第1処理と、予め決められた第1期間において、前記力検出部から出力された出力値のピーク値が予め決められた第1閾値以上であるか否かを判定し、判定結果を更新する第2処理と、前記ピーク値が前記第1閾値以上であることを前記判定結果が示す場合、前記第1処理を実行する第3処理と、前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記第1処理によって前記力検出部がリセットされたタイミングから予め決められた第2期間が経過していない場合、前記第2処理を実行する第4処理と、前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記タイミングから前記第2期間が経過した場合、予め決められた第3期間における前記出力値の平均値を第1オフセット値として算出する第5処理と、を含み、前記補正部は、前記リセット処理部によって前記第5処理が実行された場合、前記リセット処理の後に、前記第1オフセット値を前記出力値から加算又は減算する補正を行う、ロボットシステムである。
また、本発明の他の態様は、アームと、前記アームに加えられた外力を検出する力検出部と、前記力検出部のリセット処理を行うリセット処理部と、前記リセット処理部による前記リセット処理に応じた補正を行う補正部と、を備え、前記リセット処理は、前記力検出部をリセットする第1処理と、予め決められた第1期間において、前記力検出部から出力された出力値のピーク値が予め決められた第1閾値以上であるか否かを判定し、判定結果を更新する第2処理と、前記ピーク値が前記第1閾値以上であることを前記判定結果が示す場合、前記第1処理を実行する第3処理と、前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記第1処理によって前記力検出部がリセットされたタイミングから予め決められた第2期間が経過していない場合、前記第2処理を実行する第4処理と、前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記タイミングから前記第2期間が経過した場合、予め決められた第3期間における前記出力値の平均値を第1オフセット値として算出する第5処理と、を含み、前記補正部は、前記リセット処理部によって前記第5処理が実行された場合、前記リセット処理の後に、前記第1オフセット値を前記出力値から加算又は減算する補正を行う、ロボットである。
また、本発明の他の態様は、ロボットを制御する制御方法であって、前記ロボットに加えられた外力を検出する力検出部のリセット処理を行うリセット処理ステップと、前記リセット処理ステップによる前記リセット処理に応じた補正を行う補正ステップと、を含み、前記リセット処理は、前記力検出部をリセットする第1処理と、予め決められた第1期間において、前記力検出部から出力された出力値のピーク値が予め決められた第1閾値以上であるか否かを判定し、判定結果を更新する第2処理と、前記ピーク値が前記第1閾値以上であることを前記判定結果が示す場合、前記第1処理を実行する第3処理と、前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記第1処理によって前記力検出部がリセットされたタイミングから予め決められた第2期間が経過していない場合、前記第2処理を実行する第4処理と、前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記タイミングから前記第2期間が経過した場合、予め決められた第3期間における前記出力値の平均値を第1オフセット値として算出する第5処理と、を含み、前記補正ステップは、前記リセット処理ステップによって前記第5処理が実行された場合、前記リセット処理の後に、前記第1オフセット値を前記出力値から加算又は減算する補正を行う、制御方法である。
実施形態に係るロボットシステム1の構成の一例を示す図である。 ロボット制御装置30のハードウェア構成の一例を示す図である。 ロボット制御装置30の機能構成の一例を示す図である。 ロボット制御装置30が行うリセット処理の流れの一例を示す図である。 ロボット制御装置30が力制御によってロボット20を動作させる処理の流れの一例を示す図である。 実施形態の変形例に係るロボットシステム1の構成の一例を示す図である。
<実施形態>
以下、本発明の実施形態について、図面を参照して説明する。なお、以下では、説明の便宜上、ある処理が複数回実行された場合において、複数回実行された当該処理のうち現在から最も近い過去に実行された当該処理のことを、直前に実行された当該処理と称して説明する。
<ロボットシステムの概要>
まず、実施形態に係るロボットシステムの概要について説明する。
実施形態に係るロボットシステムは、ロボットと、ロボットに加えられた外力を検出する力検出部と、力検出部のリセット処理を行うリセット処理部と、リセット処理部によるリセット処理に応じた補正を行う補正部と、を備える。リセット処理は、第1処理と、第2処理と、第3処理と、第4処理と、第5処理と、を含む。第1処理は、力検出部をリセットする処理である。第2処理は、予め決められた第1期間において、力検出部から出力された出力値のピーク値が予め決められた第1閾値以上であるか否かを判定し、判定結果を更新する処理である。第3処理は、ピーク値が第1閾値以上であることを当該判定結果が示す場合、第1処理を実行する処理である。第4処理は、ピーク値が第1閾値以上ではないことを当該判定結果が示し、且つ、第1処理によって力検出部がリセットされたタイミングから予め決められた第2期間が経過していない場合、第2処理を実行する処理である。第5処理は、ピーク値が第1閾値以上ではないことを当該判定結果が示し、且つ、当該タイミングから第2期間が経過した場合、予め決められた第3期間における当該出力値の平均値を第1オフセット値として算出する処理である。また、補正部は、リセット処理部によって第5処理が実行された場合、リセット処理の後に、第1オフセット値を当該出力値から加算又は減算する補正を行う。これにより、ロボットシステムは、ロボットの外部から力検出部に振動が加わる環境下であっても、力検出部から出力される出力値に基づく制御によってロボットに作業を精度よく行わせることができる。
以下では、実施形態に係るロボットシステムの構成と、ロボットシステムが行うリセット処理とのそれぞれについて詳しく説明する。なお、以下では、説明の便宜上、ある期間内におけるある値の最小値と当該値の最大値との差分を、当該期間内における当該値のピーク値と称して説明する。
<ロボットシステムの構成>
まず、ロボットシステム1の構成について説明する。
図1は、実施形態に係るロボットシステム1の構成の一例を示す図である。ロボットシステム1は、前述のロボットシステムの一例である。ロボットシステム1は、ロボット20と、ロボット制御装置30を備える。なお、ロボットシステム1は、ロボット20とロボット制御装置30に加えて、他の装置を備える構成であってもよい。当該他の装置には、カメラ等の撮像部を備えた撮像装置、撮像装置を制御する画像処理装置、ロボット制御装置30を制御する情報処理装置、ロボット制御装置30にロボット20の動作を教示する教示装置等が含まれる。
ロボット20は、前述のロボットの一例である。アームAと、アームAを支持する基台Bを備える単腕ロボットである。なお、ロボット20は、単腕ロボットに代えて、複腕ロボットであってもよい。ここで、複腕ロボットのうち、2本の腕を備えるロボットは、双腕ロボットとも称される。すなわち、ロボット20は、2本の腕を備える双腕ロボットであってもよく、3本以上の腕を備える複腕ロボットであってもよい。また、ロボット20は、他のロボットであってもよい。当該他のロボットには、スカラロボット(水平多関節ロボット)、直交座標ロボット、円筒型ロボット等が含まれる。
アームAは、エンドエフェクターEと、マニピュレーターMと、力検出部FSを備える。なお、アームAは、エンドエフェクターEを備えない構成であってもよい。
エンドエフェクターEは、物体を保持するエンドエフェクターである。この一例において、エンドエフェクターEは、指部を備え、当該指部によって物体を挟んで持つことにより物体を保持する。ここで、本実施形態では、保持するとは、物体の状態を持ち上げることが可能な状態にすることを意味する。なお、エンドエフェクターEは、当該指部によって物体を保持するエンドエフェクターに代えて、空気の吸引、磁力、他の治具等によって物体を持ち上げることにより物体を保持する構成であってもよい。また、エンドエフェクターEは、物体を保持するエンドエフェクターに代えて、物体を保持しないエンドエフェクターであってもよい。物体を保持しないエンドエフェクターには、例えば、グリース、接着剤等の吐出物を吐出するディスペンサーが設けられたエンドエフェクター、電動ドライバー等のツールが設けられたエンドエフェクター等が含まれる。
マニピュレーターMは、6軸垂直多関節型のマニピュレーターである。すなわち、アームAは、6軸垂直多関節型のアームである。なお、マニピュレーターMは、5軸以下の垂直多関節型のマニピュレーターであってもよく、7軸以上の垂直多関節型のマニピュレーターであってもよい。
力検出部FSは、前述の力検出部の一例である。力検出部FSは、エンドエフェクターEとマニピュレーターMの間に設けられる。力検出部FSは、例えば、水晶を含む力検出素子を4つ備える。そして、力検出部FSは、4つの水晶のそれぞれに加わる剪断力に基づいて、ロボット20の図示しないハンドに作用した外力を検出する。これにより、ロボット20は、水晶を含まない力検出素子を4つ備えた力センサーと比べて、力検出部FSから出力される出力値が、温度等の環境因子の変化、経年劣化等に応じて変動してしまうことを抑制することができる。
ここで、ロボット20のハンドは、エンドエフェクターE、又はエンドエフェクターEにより保持された物体のことである。すなわち、力検出部FSは、エンドエフェクターEに作用した外力、又はエンドエフェクターEにより保持された物体に作用した外力を検出する。換言すると、力検出部FSは、アームAに加えられた外力を検出する。
ロボット20のハンドに作用する外力には、当該ハンドを並進させる並進力が含まれる。
当該並進力には、第1並進力と、第2並進力と、第3並進力との3種類の並進力が含まれている。第1並進力は、図1に示した力検出座標系FCにおけるX軸の方向に作用する並進力のことである。力検出座標系FCは、力検出部FSに対応付けられ、ロボット20の動きに応じて力検出部FSとともに動く三次元直交座標系のことである。図1では、図を簡略化するため、力検出部FSから離れた位置に力検出座標系FCを示している。第2並進力は、力検出座標系FCにおけるY軸の方向に作用する並進力のことである。第3並進力は、力検出座標系FCにおけるZ軸の方向に作用する並進力のことである。
また、ロボット20のハンドに作用する外力には、当該ハンドを回転させる回転モーメント(トルク)が含まれる。当該回転モーメントには、第1回転モーメントと、第2回転モーメントと、第3回転モーメントとの3種類の回転モーメントが含まれている。第1回転モーメントは、力検出座標系FCにおけるX軸の周りに作用する回転モーメントのことである。第2回転モーメントは、力検出座標系FCにおけるY軸の周りに作用する回転モーメントのことである。第3回転モーメントは、力検出座標系FCにおけるZ軸の周りに作用する回転モーメントのことである。
力検出部FSは、このような3種類の並進力と3種類の回転モーメントとのそれぞれを、ロボット20のハンドに作用する外力として検出する。力検出部FSは、検出した3種類の並進力のそれぞれに応じた出力値と、検出した3種類の回転モーメントのそれぞれに応じた出力値との6種類の出力値のそれぞれを示す情報を外力情報としてロボット制御装置30に出力する。
以下では、説明の便宜上、力検出部FSから出力されるこれら6種類の出力値を、単に6種類の出力値と称して説明する。6種類の出力値のうちの一部又は全部は、力検出部から出力される出力値の一例である。なお、力検出部FSは、6種類の出力値のうちの一部の種類の出力値を出力する構成であってもよい。この場合、力検出部FSは、第1並進力、第2並進力、第3並進力、第1回転モーメント、第2回転モーメント、第3回転モーメントのうちの一部を外力として検出する。
外力情報は、ロボット制御装置30によるロボット20の力制御に用いられる。力制御は、力検出部FSから出力された出力値に基づく制御、すなわち、力検出部FSからロボット制御装置30に出力された外力情報に基づく制御のことである。例えば、力制御は、インピーダンス制御等のコンプライアントモーション制御のことである。
なお、力検出部FSは、水晶を含む力検出素子を3つ以下備える構成であってもよく、水晶を含む力検出素子を5つ以上備える構成であってもよい。また、力検出部FSは、水晶を含む4つの力検出素子のうちの一部又は全部に代えて、水晶を含まない力検出素子を備える構成であってもよい。
ロボット制御装置30は、予め記憶された動作プログラムに基づいて、ロボット20に予め決められた作業を行わせる。この際、ロボット制御装置30は、例えば、力検出部FSから外力情報を取得し、取得した外力情報に基づく力制御によってロボット20を制御する。ロボット制御装置30がロボット20に当該作業を行わせる制御方法については、既知の方法であってもよく、これから開発される方法であってもよい。
また、ロボット制御装置30は、力検出部FSのリセット処理を行う。リセット処理は、力検出部FSから出力される出力値のゼロ点調整を行う処理のことである。リセット処理は、例えば、以下において説明する第1処理~第4処理を含む処理である。なお、リセット処理は、第1処理~第4処理に加えて、他の処理が含まれる構成であってもよい。
第1処理は、力検出部FSをリセットする処理である。なお、第1処理には、力検出部FSをリセットする処理に加えて、他の処理が含まれる構成であってもよい。
第2処理は、タイミングTから予め決められた第1期間が経過するまでの第1期間内において、第1期間よりも短い第1待機期間が経過する毎に実行される処理である。ここで、タイミングTは、直前に実行された第1処理によって力検出部FSがリセットされたタイミングを示す。また、第2処理は、タイミングTから現在までの期間P1内において力検出部FSから出力された出力値のピーク値PKが、予め決められた第1閾値SH1以上であるか否かを判定し、判定する毎に判定結果を更新する処理である。すなわち、第2処理によって更新された判定結果は、ピーク値PKが第1閾値SH1以上であること、又は、ピーク値PKが第1閾値SH1以上ではないこと、のうちのいずれかを示す。ここで、当該現在は、当該第2処理が実行されたタイミング、又は当該第2処理が行われている間のうちの当該タイミングよりも後のタイミングを示す。ピーク値PKと第1閾値SH1とのそれぞれについては、後述する。なお、第2処理には、このような処理に加えて、他の処理が含まれる構成であってもよい。
以下では、一例として、第1期間が300ミリ秒間である場合について説明する。なお、第1期間は、300ミリ秒間より短い期間であってもよく、300ミリ秒間より長い期間であってもよい。
また、以下では、一例として、第1待機期間が10ミリ秒間である場合について説明する。なお、第1待機期間は、10ミリ秒間より短い期間であってもよく、第1期間より短い期間であれば10ミリ秒間より長い期間であってもよい。
第3処理は、直前に実行された第2処理によって更新された判定結果が、前述の第1期間内においてピーク値PKが第1閾値SH1以上であることを示す場合、第1処理を実行する処理である。換言すると、第3処理は、第1期間内においてピーク値PKが第1閾値SH1以上であると第2処理によって判定された場合、第1処理を実行する処理である。更に換言すると、第3処理は、タイミングTから第1期間が経過するまでの間において、ピーク値PKが第1閾値SH1以上であると第2処理によって判定された場合、タイミングTから第1期間が経過する前に第2処理を終了させ、第1処理を再度実行する処理である。ここで、本実施形態では、第1期間内は、タイミングTから第1期間が経過するまでの間の範囲内のことを意味する。なお、第3処理には、このような処理に加えて、他の処理が含まれる構成であってもよい。
第4処理は、ピーク値PKが第1閾値SH1以上ではないことを判定結果が示し、且つ、予め決められた第2期間が経過していない場合、第2処理を再度実行する処理である。当該判定結果は、直前に実行された第2処理によって更新された判定結果のことである。ここで、第2期間は、第1期間以下の期間である。以下では、一例として、第2期間が、第1期間と同じ期間である場合について説明する。なお、第4処理には、このような処理に加えて、他の処理が含まれる構成であってもよい。
第5処理は、ピーク値PKが第1閾値SH1以上ではないこと判定結果がを示し、且つ、第2期間が経過した場合、予め決められた第3期間内において力検出部FSから出力された出力値の平均値をオフセット値として算出する処理である。当該判定結果は、直前に実行された第2処理によって更新された判定結果のことである。また、本実施形態では、第3期間内は、タイミングTから第3期間が経過するまでの間の範囲内のことを意味する。以下では、一例として、第3期間が、第1期間と同じ期間である場合について説明する。なお、第3期間の一部は、第1期間と重なる構成であってもよい。また、第3期間は、第1期間と重ならない期間のうち、第1期間よりも後の期間であってもよい。
また、第5処理は、換言すると、第2期間内においてピーク値PKが第1閾値SH1以上であると第2処理によって判定されなかった場合、第3期間内において力検出部FSから出力された出力値の平均値をオフセット値として算出する処理である。本実施形態では、第2期間内は、タイミングTから第2期間が経過するまでの間の範囲内のことを意味する。
また、第5処理は、更に換言すると、タイミングTから第2期間が経過するまでの間において、ピーク値PKが第1閾値SH1以上であると第2処理によって判定されることが1回もなかった場合、第3期間内において力検出部FSから出力された出力値の平均値をオフセット値として算出する処理である。なお、第5処理には、このような処理に加えて、他の処理が含まれる構成であってもよい。
また、ロボット制御装置30は、力検出部FSのリセット処理を行った後、リセット処理に応じた補正を行う。具体的には、ロボット制御装置30は、第4処理によって算出されたオフセット値を、第1期間よりも後の期間において力検出部FSから出力された出力値から加算又は減算する補正を行う。これにより、ロボット制御装置30は、ロボット20の外部から力検出部FSに振動が加わる環境下であっても、力検出部FSから出力される出力値に基づく制御によってロボット20に作業を精度よく行わせることができる。
<ロボット制御装置のハードウェア構成>
以下、図2を参照し、ロボット制御装置30のハードウェア構成について説明する。図2は、ロボット制御装置30のハードウェア構成の一例を示す図である。
ロボット制御装置30は、例えば、プロセッサー31と、メモリー32と、通信部34を備える。これらの構成要素は、バスを介して相互に通信可能に接続されている。また、ロボット制御装置30は、通信部34を介してロボット20と通信を行う。
プロセッサー31は、例えば、CPU(Central Processing Unit)である。なお、プロセッサー31は、CPUに代えて、FPGA(Field-Programmable Gate Array)等の他のプロセッサーであってもよい。プロセッサー31は、メモリー32に格納された各種のプログラムを実行する。
メモリー32は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、ROM(Read-Only Memory)、RAM(Random Access Memory)等を含む。なお、メモリー32は、ロボット制御装置30に内蔵されるものに代えて、USB(Universal Serial Bus)等のデジタル入出力ポート等によって接続された外付け型の記憶装置であってもよい。メモリー32は、ロボット制御装置30が処理する各種の情報、各種の画像、各種のプログラム等を格納する。
通信部34は、例えば、USB等のデジタル入出力ポートやイーサネット(登録商標)ポート等を含んで構成される。
なお、ロボット制御装置30は、キーボード、マウス、タッチパッド等の入力装置を備える構成であってもよい。また、ロボット制御装置30は、液晶ディスプレイパネル、有機EL(ElectroLuminescence)ディスプレイパネル等を備えた表示装置を備える構成であってもよい。
<ロボット制御装置の機能構成>
以下、図3を参照し、ロボット制御装置30の機能構成について説明する。図3は、ロボット制御装置30の機能構成の一例を示す図である。
ロボット制御装置30は、メモリー32と、通信部34と、制御部36を備える。
制御部36は、ロボット制御装置30の全体を制御する。制御部36は、第1取得部361と、第2取得部362と、軌道算出部363と、力検出制御部364と、エンドエフェクター制御部365と、マニピュレーター制御部366を備える。制御部36が備えるこれらの機能部は、例えば、プロセッサー31が、メモリー32に記憶された各種の指令を実行することにより実現される。また、当該機能部のうちの一部又は全部は、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)等のハードウェア機能部であってもよい。
第1取得部361は、力検出部FSから外力情報を取得する。
第2取得部362は、マニピュレーターMが備える各モーターそれぞれについて、モーターに備えられたエンコーダーからモーターの回動角を示す回動角情報を取得する。
軌道算出部363は、メモリー32に予め記憶された動作プログラムと、第2取得部362が取得した回動角情報とに基づいて、ロボット20が動く軌道を算出する。本実施形態において、ロボット20の動きは、ロボット20とともに動く仮想的な点の動きによって表される。以下では、説明の便宜上、当該点を制御点と称して説明する。制御点は、例えば、TCP(Tool Center Point)である。なお、制御点は、TCPに代えて、ロボット20とともに動く他の仮想的な点であってもよい。また、軌道算出部363が当該軌道を算出する方法は、既知の方法であってもよく、これから開発される方法であってもよい。
力検出制御部364は、力検出部FSを制御する。力検出制御部364は、リセット処理部364Aと、補正部364Bを備える。
リセット処理部364Aは、前述のリセット処理を行う。
補正部364Bは、リセット処理部364Aによるリセット処理に応じて、力検出部FSから出力される出力値の補正を行う。
エンドエフェクター制御部365は、エンドエフェクターEを制御する。なお、エンドエフェクター制御部365は、ロボット制御装置30が備える構成に代えて、ロボット制御装置30と別体の情報処理装置に備えられる構成であってもよい。この場合、ロボットシステム1は、当該情報処理装置を備える。
マニピュレーター制御部366は、軌道算出部363が算出した軌道に基づいて、制御点が当該軌道に沿って動くようにマニピュレーターMを制御する。また、マニピュレーター制御部366は、補正部364Bによって補正された出力値に基づく力制御によってマニピュレーターMを制御する。
<ロボット制御装置が行うリセット処理>
以下、図4を参照し、ロボット制御装置30が行うリセット処理について説明する。図4は、ロボット制御装置30が行うリセット処理の流れの一例を示す図である。ロボット制御装置30は、例えば、メモリー32に予め記憶された動作プログラムに基づいて、図4に示したフローチャートの処理を実行する。なお、ロボット制御装置30は、ロボット制御装置30に接続された他の情報処理装置を介して、ユーザーから受け付けた操作に応じて当該処理を実行する構成であってもよく、他の方法によって当該処理を実行する構成であってもよい。
リセット処理部364Aは、リセット回数の初期化を行う(ステップS110)。リセット回数は、図4に示したフローチャートの処理が実行されてから終了されるまでの間において、力検出部FSのリセットが行われた回数のことである。ステップS110において、リセット処理部364Aは、リセット回数を格納する変数Xをメモリー32の記憶領域内に生成する。そして、リセット処理部364Aは、生成した変数Xに対して0を格納する処理を、リセット回数の初期化として行う。
次に、リセット処理部364Aは、リセット処理を開始する(ステップS120)。具体的には、リセット処理部364Aは、ステップS120において、前述の第1処理を行う。すなわち、リセット処理部364Aは、ステップS120において、力検出部FSをリセットする。そして、リセット処理部364Aは、ステップS110において初期化した変数Xに格納されている値に1を加算した値を、変数Xへ格納し直す。すなわち、リセット処理部364Aは、ステップS120において、変数Xに格納された値を更新する。また、リセット処理部364Aは、ステップS120において、計時処理と、取得処理と、平均値算出処理と、ピーク値算出処理とのそれぞれを開始する。
計時処理は、第1処理が実行される毎に実行される処理である。すなわち、計時処理は、本実施形態では、ステップS120の処理が実行される毎に実行される処理である。また、計時処理は、前述のタイミングTからの経過時間を計時する処理である。なお、計時処理には、このような処理に加えて、他の処理が含まれる構成であってもよい。
取得処理は、予め決められたサンプリング周期が経過する毎に実行される処理である。また、取得処理は、第1取得部361に外力情報を力検出部FSから取得させる処理である。第1取得部361は、取得処理によって外力情報を取得する毎に、取得した外力情報と、計時処理によって計時された経過時間を示す経過時間情報とを対応づけてメモリー32に記憶させる。なお、取得処理には、このような処理に加えて、他の処理が含まれる構成であってもよい。
平均値算出処理は、例えば、計時処理によって経過時間が計時される毎に実行される処理である。また、平均値算出処理は、前述の期間P1内においてメモリー32に記憶された複数の外力情報に基づいて実行される処理である。すなわち、平均値算出処理は、タイミングTから、直前に経過時間が計時されたタイミングまでの期間P1内においてメモリー32に記憶された複数の外力情報に基づいて実行される処理である。また、平均値算出処理は、期間P1内において力検出部FSから出力された出力値の平均値を算出する処理である。ここで、本実施形態では、力検出部FSは、前述した通り、6種類の出力値を出力する。このため、平均値算出処理は、本実施形態では、6種類の出力値それぞれについて、期間P1内における出力値の平均値を算出する処理である。
具体的には、平均値算出処理は、本実施形態では、第1並進力に応じた出力値の当該期間内における平均値と、第2並進力に応じた出力値の当該期間内における平均値と、第3並進力に応じた出力値の当該期間内における平均値と、第1回転モーメントに応じた出力値の当該期間内における平均値と、第2回転モーメントに応じた出力値の当該期間内における平均値と、第3回転モーメントに応じた出力値の当該期間内における平均値との6種類の平均値を算出する処理である。
なお、平均値算出処理には、このような処理に加えて、他の処理が含まれる構成であってもよい。また、平均値算出処理は、計時処理によって経過時間が計時される毎に実行される処理に代えて、他のタイミングにおいて周期的又は非周期的に実行される処理であってもよい。また、平均値算出処理は、6種類の平均値のうちの一部の種類の平均値を算出する処理であってもよい。また、平均値算出処理は、6種類の出力値それぞれについて、出力値に基づく他の値を当該出力値の平均値として算出する処理であってもよい。当該他の値は、当該出力値の二乗和の平方根、当該出力値の分散等のことである。
ピーク値算出処理は、例えば、計時処理によって経過時間が計時される毎に実行される処理である。また、ピーク値算出処理は、期間P1内においてメモリー32に記憶された複数の外力情報に基づいて実行される処理である。すなわち、ピーク値算出処理は、タイミングTから、直前に経過時間が計時されたタイミングまでの期間P1内においてメモリー32に記憶された複数の外力情報に基づいて実行される処理である。また、ピーク値算出処理は、期間P1内におけるピーク値PKを算出する処理である。ここで、本実施形態では、力検出部FSは、前述した通り、6種類の出力値を出力する。このため、本実施形態では、ピーク値PKには、第1ピーク値と、第2ピーク値と、第3ピーク値と、第4ピーク値と、第5ピーク値と、第6ピーク値との6種類のピーク値が含まれている。第1ピーク値は、第1並進力に応じた出力値の期間P1内におけるピーク値である。第2ピーク値は、第2並進力に応じた出力値の期間P1内におけるピーク値である。第3ピーク値は、第3並進力に応じた出力値の期間P1内におけるピーク値である。第4ピーク値は、第1回転モーメントに応じた出力値の期間P1内におけるピーク値である。第5ピーク値は、第2回転モーメントに応じた出力値の期間P1内におけるピーク値である。第6ピーク値は、第3回転モーメントに応じた出力値の期間P1内におけるピーク値である。すなわち、ピーク値算出処理は、本実施形態では、このような6種類のピーク値のそれぞれをピーク値PKとして算出する処理である。なお、ピーク値算出処理は、6種類のピーク値のうちの一部の種類のピーク値を算出する処理であってもよい。この場合、ピーク値PKには、当該一部の種類のピーク値が含まれる。
なお、ピーク値算出処理には、このような処理に加えて、他の処理が含まれる構成であってもよい。また、ピーク値算出処理は、計時処理によって経過時間が計時される毎に実行される処理に代えて、他のタイミングにおいて周期的又は非周期的に実行される処理であってもよい。また、ピーク値算出処理は、6種類の出力値のうちの一部の種類の出力値それぞれについて、出力値のピーク値を算出する処理であってもよい。また、ピーク値算出処理は、6種類の出力値それぞれについて、出力値に基づく他の値をピーク値として算出する処理であってもよい。当該他の値は、当該出力値の最大値、当該出力値の最小値、当該出力値の分散等のことである。
ステップS120の処理が行われた後、リセット処理部364Aは、タイミングTから第1待機期間が経過するまで待機する(ステップS130)。
タイミングTから第1待機期間が経過したと判定した場合(ステップS130-YES)、リセット処理部364Aは、力検出部FSの状態がエラー状態であるか否か判定する(ステップS140)。
力検出部FSの状態がエラー状態であると判定した場合(ステップS140-YES)、リセット処理部364Aは、所定期間のリセット回数倍待機する(ステップS190)。具体的には、リセット処理部364Aは、当該場合、メモリー32に記憶された変数Xに格納された値をメモリー32から読み出す。当該値は、すなわち、リセット回数である。リセット処理部364Aは、読み出したリセット回数に対して所定期間を乗じた期間、ステップS190において待機する。所定期間は、例えば、20ミリ秒間である。また、ステップS190においてリセット処理部364Aが所定期間に対して乗じる値は、リセット回数に代えて、他の値であってもよい。また、リセット処理部364Aは、ステップS190において所定期間待機する構成であってもよい。なお、所定期間は、20ミリ秒間よりも短い期間であってもよく、20ミリ秒間よりも長い期間であってもよい。
ステップS190の処理が行われた後、リセット処理部364Aは、メモリー32に記憶された変数Xを参照し、変数Xに格納されたリセット回数が所定回数未満であるか否かを判定する(ステップS200)。所定回数は、例えば、15回である。なお、所定回数は、15回より少ない回数であってもよく15回より多い回数であってもよい。
変数Xに格納されたリセット回数が所定回数未満であると判定した場合(ステップS200-YES)、リセット処理部364Aは、ステップS120に遷移し、リセット処理を開始し直す。一方、変数Xに格納されたリセット回数が15回以上であると判定した場合(ステップS200-NO)、リセット処理部364Aは、エラー処理を行う(ステップS210)。エラー処理は、例えば、リセット処理を正常に終了させることに失敗したことを示す情報を出力する処理である。なお、エラー処理は、リセット処理を正常に終了させることに失敗したことに応じて行われる他の処理であってもよい。エラー処理を行った後、リセット処理部364Aは、処理を終了する。
一方、力検出部FSの状態がエラー状態ではないと判定した場合(ステップS140-NO)、リセット処理部364Aは、直前のピーク値算出処理によって算出されたピーク値PKが第1閾値SH1以上であるか否かを判定する(ステップS150)。ここで、ステップS150の処理について説明する。
前述した通り、本実施形態では、ピーク値PKには、6種類のピーク値が含まれている。このため、以下では、一例として、第1閾値SH1が6種類の閾値を含んでいる場合について説明する。第1閾値SH1に含まれる6種類の閾値には、前述した第1ピーク値~第6ピーク値それぞれについての閾値が含まれている。この場合、リセット処理部364Aは、ステップS150において、6種類の判定を行う。
ステップS150において行う6種類の判定には、第1ピーク値についての判定と、第2ピーク値についての判定と、第3ピーク値についての判定と、第4ピーク値についての判定と、第5ピーク値についての判定と、第6ピーク値についての判定とが含まれている。
ステップS150において行う第1ピーク値についての判定は、直前のピーク値算出処理によって算出されたピーク値PKに含まれる6種類のピーク値のうちの第1ピーク値が、第1閾値SH1に含まれる6種類の閾値のうちの第1ピーク値についての閾値以上であるか否かを判定する判定である。ステップS150において行う第1ピーク値についての判定は、当該第1ピーク値が当該閾値以上であると判定した場合、例えば、当該判定についての第1フラグを0にする。一方、ステップS150において行う第1ピーク値についての判定は、当該第1ピーク値が当該閾値未満であると判定した場合、例えば、当該判定についての第1フラグを1にする。
ステップS150において行う第2ピーク値についての判定の説明は、上記の第1ピーク値についての判定の説明において、第1ピーク値を第2ピーク値と読み替えた説明と同様であるため、説明を省略する。ステップS150において行う第3ピーク値~第6ピーク値それぞれについての判定の説明についても、ステップS150において行う第2ピーク値についての判定の説明と同様であるため、説明を省略する。
リセット処理部364Aは、ステップS150において、例えば、第1ピーク値~第6ピーク値それぞれについての判定において第1フラグが0となった判定が1つ以上ある場合、直前のピーク値算出処理によって算出されたピーク値PKが第1閾値SH1以上であると判定する。一方、リセット処理部364Aは、ステップS150において、例えば、第1ピーク値~第6ピーク値それぞれについての判定において第1フラグが0となった判定が0である場合、直前のピーク値算出処理によって算出されたピーク値PKが第1閾値SH1未満であると判定する。なお、リセット処理部364Aは、ステップS150において、第1ピーク値~第6ピーク値それぞれについての判定における第1フラグに応じた他の方法によって、直前のピーク値算出処理によって算出されたピーク値PKが第1閾値SH1以上であるか否かを判定する構成であってもよい。
リセット処理部364Aは、直前に実行されたピーク値算出処理によって算出されたピーク値PKが第1閾値SH1以上であると判定した場合(ステップS150-YES)、ステップS190に遷移し、所定期間のリセット回数倍待機する。一方、リセット処理部364Aは、直前のピーク値算出処理によって算出されたピーク値PKが第1閾値SH1未満であると判定した場合(ステップS150-NO)、ステップS160に遷移する。このように、ステップS150の処理は、前述の第2処理の一例である。また、ステップS150-YESからステップS190、ステップS200、ステップS120へと順に実行される処理は、前述の第3処理の一例である。また、ステップS150-NOからステップS160-NO、ステップS170-NO、ステップS130-YES、ステップS140-NO、ステップS150へと順に実行される処理は、前述の第4処理の一例である。
ここで、第1閾値SH1に含まれている6種類の閾値の具体例について説明する。
第1閾値SH1に含まれている閾値のうち第1ピーク値についての閾値は、例えば、5[N]である。なお、当該第1ピーク値についての閾値は、5[N]より小さい値であってもよく、5[N]より大きい値であってもよい。
第1閾値SH1に含まれている閾値のうち第2ピーク値についての閾値は、例えば、5[N]である。なお、当該第2ピーク値についての閾値は、5[N]より小さい値であってもよく、5[N]より大きい値であってもよい。また、当該第2ピーク値についての閾値は、第1閾値SH1に含まれている閾値のうち第1ピーク値についての閾値と異なる値であってもよい。
第1閾値SH1に含まれている閾値のうち第3ピーク値について予め決められた第1閾値は、例えば、5[N]である。なお、当該第3ピーク値についての閾値は、5[N]より小さい値であってもよく、5[N]より大きい値であってもよい。また、当該第3ピーク値についての閾値は、第1閾値SH1に含まれている閾値のうち第1ピーク値についての閾値と、第1閾値SH1に含まれている閾値のうち第2ピーク値についての閾値とのうちいずれか一方又は両方と異なる値であってもよい。
第1閾値SH1に含まれている閾値のうち第4ピーク値についての閾値は、例えば、50[N・mm]である。なお、当該第4ピーク値についての閾値は、50[N・mm]より小さい値であってもよく、50[N・mm]より大きい値であってもよい。
第1閾値SH1に含まれている閾値のうち第5ピーク値についての閾値は、例えば、50[N・mm]である。なお、当該第5ピーク値についての閾値は、50[N・mm]より小さい値であってもよく、50[N・mm]より大きい値であってもよい。また、当該第5ピーク値についての閾値は、第1閾値SH1に含まれている閾値のうち第4ピーク値についての閾値と異なる値であってもよい。
第1閾値SH1に含まれている閾値のうち第6ピーク値についての閾値は、例えば、50[N・mm]である。なお、当該第6ピーク値についての閾値は、50[N・mm]より小さい値であってもよく、50[N・mm]より大きい値であってもよい。また、当該第6ピーク値についての閾値は、第1閾値SH1に含まれている閾値のうち第4ピーク値についての閾値と、第1閾値SH1に含まれている閾値のうち第5ピーク値についての閾値とのうちいずれか一方又は両方と異なる値であってもよい。
第1閾値SH1に含まれている6種類の閾値それぞれの大きさは、例えば、ロボット20の外部から力検出部FSに加わる振動の大きさに応じて決められる。なお、当該6種類の閾値それぞれの大きさは、これに代えて、他の方法によって決められる構成であってもよい。
ステップS160において、リセット処理部364Aは、タイミングTから第4期間が経過し、且つ、直前に実行されたピーク値算出処理によって算出されたピーク値PKが、予め決められた第2閾値SH2未満であるか否かを判定する(ステップS160)。第4期間は、第1期間よりも短い期間であり、且つ、第1待機期間よりも長い期間である。第4期間は、例えば、100ミリ秒間である。また、第2閾値SH2は、第1閾値SH1よりも小さい閾値のことである。ここで、前述した通り、本実施形態では、ピーク値PKには、6種類のピーク値が含まれている。このため、以下では、一例として、第2閾値SH2が6種類の閾値を含んでいる場合について説明する。第2閾値SH2に含まれる6種類の閾値には、前述した第1ピーク値~第6ピーク値それぞれについての閾値が含まれている。この場合、リセット処理部364Aは、ステップS160において、6種類の判定を行う。
ステップS160において行う6種類の判定には、第1ピーク値についての判定と、第2ピーク値についての判定と、第3ピーク値についての判定と、第4ピーク値についての判定と、第5ピーク値についての判定と、第6ピーク値についての判定とが含まれている。
ステップS160において行う第1ピーク値についての判定は、直前のピーク値算出処理によって算出されたピーク値PKに含まれる6種類のピーク値のうちの第1ピーク値が、第2閾値SH2に含まれる6種類の閾値のうちの第1ピーク値についての閾値以上であるか否かを判定する判定である。ステップS160において行う第1ピーク値についての判定は、当該第1ピーク値が当該閾値以上であると判定した場合、例えば、当該判定についての第2フラグを0にする。一方、ステップS160において行う第1ピーク値についての判定は、当該第1ピーク値が当該閾値未満であると判定した場合、例えば、当該判定についての第2フラグを1にする。
ステップS160において行う第2ピーク値についての判定の説明は、上記の第1ピーク値についての判定の説明において、第1ピーク値を第2ピーク値と読み替えた説明と同様であるため、説明を省略する。ステップS160において行う第3ピーク値~第6ピーク値それぞれについての判定の説明についても、ステップS160において行う第2ピーク値についての判定の説明と同様であるため、説明を省略する。
リセット処理部364Aは、ステップS160において、例えば、第1ピーク値~第6ピーク値それぞれについての判定において第2フラグが0となった判定が1つ以上ある場合、直前のピーク値算出処理によって算出されたピーク値PKが第2閾値SH2以上であると判定する。一方、リセット処理部364Aは、ステップS160において、例えば、第1ピーク値~第6ピーク値それぞれについての判定において第2フラグが0となった判定が0である場合、直前のピーク値算出処理によって算出されたピーク値PKが第2閾値SH2以上ではないと判定する。なお、リセット処理部364Aは、ステップS160において、第1ピーク値~第6ピーク値それぞれについての判定における第2フラグに応じた他の方法によって、直前のピーク値算出処理によって算出されたピーク値PKが第2閾値SH2以上であるか否かを判定する構成であってもよい。
ここで、第2閾値SH2に含まれている6種類の閾値の具体例について説明する。
第2閾値SH2に含まれている閾値のうち第1ピーク値についての閾値は、例えば、0.25[N]である。なお、当該第1ピーク値についての閾値は、0.25[N]より小さい値であってもよく、0.25[N]より大きい値であってもよい。
第2閾値SH2に含まれている閾値のうち第2ピーク値についての閾値は、例えば、0.25[N]である。なお、当該第2ピーク値についての閾値は、0.25[N]より小さい値であってもよく、0.25[N]より大きい値であってもよい。また、当該第2ピーク値についての閾値は、第2閾値SH2に含まれている閾値のうち第1ピーク値についての閾値と異なる値であってもよい。
第2閾値SH2に含まれている閾値のうち第3ピーク値について予め決められた第2閾値は、例えば、0.25[N]である。なお、当該第3ピーク値について予め決められた第2閾値は、0.25[N]より小さい値であってもよく、0.25[N]より大きい値であってもよい。また、当該第3ピーク値について予め決められた第2閾値は、第2閾値SH2に含まれている閾値のうち第1ピーク値についての閾値と、第2閾値SH2に含まれている閾値のうち第2ピーク値についての閾値とのうちいずれか一方又は両方と異なる値であってもよい。
第2閾値SH2に含まれている閾値のうち第4ピーク値についての閾値は、例えば、15[N・mm]である。なお、第2閾値SH2に含まれている閾値のうち第4ピーク値についての閾値は、15[N・mm]より小さい値であってもよく、15[N・mm]より大きい値であってもよい。
第2閾値SH2に含まれている閾値のうち第5ピーク値についての閾値は、例えば、15[N・mm]である。なお、第2閾値SH2に含まれている閾値のうち第5ピーク値についての閾値は、15[N・mm]より小さい値であってもよく、15[N・mm]より大きい値であってもよい。また、第2閾値SH2に含まれている閾値のうち第5ピーク値についての閾値は、第2閾値SH2に含まれている閾値のうち第4ピーク値についての閾値と異なる値であってもよい。
第2閾値SH2に含まれている閾値のうち第6ピーク値についての閾値は、例えば、15[N・mm]である。なお、第2閾値SH2に含まれている閾値のうち第6ピーク値についての閾値は、15[N・mm]より小さい値であってもよく、15[N・mm]より大きい値であってもよい。また、第2閾値SH2に含まれている閾値のうち第6ピーク値についての閾値は、第2閾値SH2に含まれている閾値のうち第4ピーク値についての閾値と、第2閾値SH2に含まれている閾値のうち第5ピーク値についての閾値とのうちいずれか一方又は両方と異なる値であってもよい。
第2閾値SH2に含まれている6種類の閾値それぞれの大きさは、例えば、力検出部FSの感度、エンドエフェクターEの重量等に応じて決められる。なお、当該6種類の閾値それぞれの大きさは、これに代えて、他の方法によって決められる構成であってもよい。
リセット処理部364Aは、タイミングTから第4期間が経過し、且つ、直前のピーク値算出処理によって算出されたピーク値PKが第2閾値SH2未満であると判定した場合(ステップS160-YES)、平均値算出処理を終了させる(ステップS180)。また、リセット処理部364Aは、当該場合、計時処理、ピーク値算出処理のそれぞれを終了させる。そして、リセット処理部364Aは、直前に実行された平均値算出処理によって算出された6種類の平均値のそれぞれに基づいて、6種類の出力値それぞれに応じたオフセット値を特定する。より具体的には、リセット処理部364Aは、6種類の出力値のそれぞれについて、出力値の平均値を当該出力値に応じたオフセット値として特定する。
例えば、リセット処理部364Aは、直前に実行された平均値算出処理によって算出された6種類の平均値のうち第1並進力に応じた出力値の平均値を、当該出力値に応じたオフセット値として特定する。
また、例えば、リセット処理部364Aは、直前に実行された平均値算出処理によって算出された6種類の平均値のうち第2並進力に応じた出力値の平均値を、当該出力値に応じたオフセット値として特定する。
また、例えば、リセット処理部364Aは、直前に実行された平均値算出処理によって算出された6種類の平均値のうち第3並進力に応じた出力値の平均値を、当該出力値に応じたオフセット値として特定する。
また、例えば、リセット処理部364Aは、直前に実行された平均値算出処理によって算出された6種類の平均値のうち第1回転モーメントに応じた出力値の平均値を、当該出力値に応じたオフセット値として特定する。
また、例えば、リセット処理部364Aは、直前に実行された平均値算出処理によって算出された6種類の平均値のうち第2回転モーメントに応じた出力値の平均値を、当該出力値に応じたオフセット値として特定する。
また、例えば、リセット処理部364Aは、直前に実行された平均値算出処理によって算出された6種類の平均値のうち第3回転モーメントに応じた出力値の平均値を、当該出力値に応じたオフセット値として特定する。
リセット処理部364Aは、このように6種類のオフセット値を特定した後、特定した6種類のオフセット値のそれぞれをメモリー32に記憶させ、処理を終了する。
一方、リセット処理部364Aは、タイミングTから第4期間が経過していない、又は、直前のピーク値算出処理によって算出されたピーク値PKが第2閾値SH2以上であると判定した場合(ステップS160-NO)、タイミングTから前述の第1期間が経過したか否かを判定する(ステップS170)。
リセット処理部364Aは、タイミングTから第1期間が経過していないと判定した場合(ステップS170-NO)、ステップS130に遷移し、タイミングTから第1待機期間が経過したか否かを再び判定する。一方、リセット処理部364Aは、タイミングTから第1期間が経過したと判定した場合(ステップS170-YES)、ステップS180に遷移し、平均値算出処理を終了させる。また、リセット処理部364Aは、当該場合、計時処理、ピーク値算出処理のそれぞれを終了させる。そして、リセット処理部364Aは、直前に実行された平均値算出処理によって算出された6種類の平均値のそれぞれに基づいて、6種類の出力値それぞれに応じたオフセット値を特定する。ステップS180の処理が行われた後、リセット処理部364Aは、処理を終了する。
このように、ステップ150-NOからステップS160-NO、ステップS170-YES、ステップS180へと順に実行される処理は、前述の第5処理の一例である。また、ステップS160の処理は、第6処理の一例である。また、ステップS150-NOからステップS160-YES、ステップS180へと順に実行される処理は、第7処理の一例である。
以上のように、ロボット制御装置30は、図4に示したフローチャートの処理によって、リセット処理、及びリセット処理のリトライを実行することができる。これにより、ロボット制御装置30は、異常値を各オフセット値として特定すること、力検出部FSの状態がエラー状態であることによってロボット20の動作を停止させてしまうこと等を抑制することができる。また、これにより、ロボット制御装置30は、ロボット20の状態が、ロボット20の外部から力検出部FSに振動が加わらない状態にする動作を、ロボット20に行わせる必要がない。当該動作には、移動、待機等が含まれる。その結果、ロボット制御装置30は、当該動作によってロボット20に作業を行わせる効率が低下してしまうことを抑制することができる。また、ロボット制御装置30は、当該作業に要する時間を短縮することができる。
また、ロボット制御装置30は、図4に示したフローチャートの処理によってリセット処理を行うため、力検出部FSがリセットされたタイミングにおいて力検出部FSから出力された出力値をオフセット値として特定せず、当該出力値の平均値をオフセット値として特定している。これにより、力検出部FSに加わる振動の振幅の大きさにかかわらず、適切なオフセット値を特定することができる。
また、図4に示したフローチャートの処理では、異常値となりうる出力値が力検出部FSから出力されている場合、又は力検出部FSの状態がエラー状態である場合であっても、繰り返しステップS130~ステップS170の各判定処理が繰り返し実行される。このため、ロボット制御装置30では、ユーザーは、これらの場合においてリセット処理を繰り返すようなコードを動作プログラムに書き込む手間が軽減される。
ここで、上記において説明した処理のうちステップS150、ステップS190、ステップS200、ステップS120の順に実行される処理は、タイミングTから現在までの期間P1内において力検出部FSから出力された出力値のピーク値PKが、オフセット値を算出することに適している値になるまで待機する処理である。このため、当該処理が実行される回数が多いほど、当該ピーク値PKがオフセット値を算出することに適していないと考えられる。例えば、当該回数が多いほど、ロボット20の外部から力検出部FSに対して振幅が大きな振動又は減衰しづらい振動が加えられている可能性が高い。このため、ステップS190において、リセット処理部364Aは、ステップS190の処理が実行される毎に、待機期間を長くしている。これにより、ロボット制御装置30は、当該ピーク値PKがオフセット値を算出することに適している値になるまで、より確実に待機することができる。しかし、当該回数が多いほど、ロボット20に行わせる作業効率を低下させてしまう。そこで、リセット処理部364Aは、ステップS200の処理によって、リセット回数が所定回数以上に達した場合、ステップS210においてエラー処理を行う。これにより、ロボット制御装置30は、リセット処理を繰り返す回数の増大によってロボット20に行わせる作業効率が低下してしまうことを抑制することができる。
また、上記において説明した処理のうちステップS160、ステップS180の順に実行される処理は、第1期間が経過する前のタイミングにおいて力検出部FSに加わっている振動が十分に減衰した場合、第1期間が経過することを待たずにオフセット値を算出する処理である。これにより、ロボット制御装置30は、オフセット値を算出することに要する時間を短縮することができる。その結果、ロボット制御装置30は、リセット処理による作業効率の低下を抑制することができる。
また、上記において説明した処理のうちステップS160の処理は、タイミングTから現在までの期間P1内において力検出部FSから出力された出力値のピーク値PKを用いているため、ピーク値PKが無視できるほど小さいにもかかわらず、当該出力値の最大値が無視できないほど大きい又は当該出力値の最小値が無視できないほど小さい場合がある。このような問題を抑制するため、当該処理には、当該最大値と当該最小値とのうちいずれか一方又は両方について、予め決められた閾値以上であるか否かを判定する処理が含まれていてもよい。
また、上記において説明したステップS160の処理において、タイミングTから第4期間が経過しており、且つ、直前のピーク値算出処理によって算出されたピーク値PKが第2閾値SH2未満であると判定された場合、リセット処理部364Aは、ステップS180において、各オフセット値を0にする構成であってもよい。これは、当該場合、ステップS180において、各オフセット値が0に近い値として特定されることが多いためである。
また、図4に示したフローチャートの処理は、例えば、ロボット制御装置30がロボット20に力制御を行わせる前のタイミングに実行される。ここで、ロボット制御装置30は、当該処理を実行する際のロボット20の姿勢と、ロボット20に力制御を行わせる際のロボット20の姿勢とが一致していない場合、当該処理とともに重力補償を行う。これにより、ロボット制御装置30は、当該場合であっても、力検出部FSから出力される出力値に基づく力制御によってロボット20に作業を精度よく行わせることができる。
また、図4に示したフローチャートの処理は、例えば、予め決められた周期が経過する毎に実行される。これにより、ロボット制御装置30は、力検出部FSから出力される出力値が温度によってドリフトすることによって生じる誤差、計算によって積算された誤差等によってロボット20に行わせる作業の精度が低下してしまうことを抑制することができる。なお、当該周期は、例えば、数分程度であるが、これに限られるわけではない。
またロボット制御装置30は、図4に示したフローチャートの処理を、6種類の出力値のそれぞれについて、並列に実行する構成であってもよい。
<ロボット制御装置が力制御によってロボットを動作させる処理>
以下、図5を参照し、ロボット制御装置30が力制御によってロボット20を動作させる処理について説明する。図5は、ロボット制御装置30が力制御によってロボット20を動作させる処理の流れの一例を示す図である。なお、ロボット制御装置30は、例えば、メモリー32に予め記憶された動作プログラムに基づいて、図5に示したフローチャートの処理を実行する。なお、ロボット制御装置30は、ロボット制御装置30に接続された他の情報処理装置を介して、ユーザーから受け付けた操作に応じて当該処理を実行する構成であってもよく、他の方法によって当該処理を実行する構成であってもよい。
第1取得部361は、力検出部FSから外力情報を取得する(ステップS310)。
次に、補正部364Bは、図4に示したフローチャートの処理によってメモリー32に予め記憶された6種類のオフセット値のそれぞれを読み出す(ステップS320)。ここで、ステップS320において補正部364Bがメモリー32から読み出すオフセット値は、図4に示したフローチャートの処理のうちステップS160、ステップS180の順に実行される処理と、図4に示したフローチャートの処理のうちステップS160、ステップS170,ステップS180の順に実行される処理とのうち直前に実行された処理においてメモリー32に記憶されたオフセット値である。
次に、補正部364Bは、ステップS320においてメモリー32から読み出した6種類のオフセット値に基づいて、ステップS310において第1取得部361が取得した外力情報が示す6種類の出力値を補正する(ステップS330)。具体的には、補正部364Bは、当該6種類の出力値のそれぞれについて、当該6種類のオフセット値のうち出力値に応じたオフセット値を、当該出力値に加算又は減算することによって当該出力値を補正する。ここで、補正部364Bがオフセット値によって当該出力値を補正する方法は、これに限られず、他の方法であってもよい。すなわち、補正部364Bがオフセット値によって当該出力値を補正する方法は、既知の方法であってもよく、これから開発される方法であってもよい。なお、補正部364Bは、当該6種類の出力値のそれぞれについて、当該6種類のオフセット値のうち出力値に応じたオフセット値に基づく他の方法によって当該出力値を補正する構成であってもよい。
次に、マニピュレーター制御部366は、ステップS330において補正部364Bが補正した6つの出力値に基づく力制御によってマニピュレーターMを動作させる(ステップS340)。
次に、マニピュレーター制御部366は、力制御によるマニピュレーターMの動作を終了させるか否かを判定する(ステップS350)。マニピュレーター制御部366は、本実施形態では、動作プログラムに基づいて、力制御によるマニピュレーターMの動作を終了させるか否かを判定する。力制御によるマニピュレーターMの動作を終了させないとマニピュレーター制御部366が判定した場合(ステップS350-NO)、第1取得部361は、ステップS310に遷移し、力検出部FSから外力情報を再び取得する。一方、マニピュレーター制御部366は、力制御によるマニピュレーターMの動作を終了させると判定した場合(ステップS350-YES)、処理を終了する。
なお、上記において説明したピーク値PKには、6種類のピーク値の一部が含まれる構成であってもよい。
<実施形態の変形例>
以下、図6を参照し、実施形態の変形例について説明する。図6は、実施形態の変形例に係るロボットシステム1の構成の一例を示す図である。実施形態の変形例に係るロボットシステム1では、ロボット20は、図1に示したように、ロボット制御装置30を内蔵している。すなわち、当該ロボットシステム1は、ロボット制御装置30を内蔵したロボット20を備える。
これにより、ロボットシステム1は、ロボット制御装置30がロボット20に内蔵されている場合であっても、力検出部から出力される出力値に基づく制御によってロボットに作業を精度よく行わせることができる。
以上のように、実施形態に係るロボットシステム(実施形態では、ロボットシステム1)は、ロボット(実施形態では、ロボット20)と、ロボットに加えられた外力を検出する力検出(実施形態では、力検出部FS)部と、力検出部のリセット処理を行うリセット処理部(実施形態では、リセット処理部364A)と、リセット処理部によるリセット処理に応じた補正を行う補正部(実施形態では、補正部364B)と、を備え、リセット処理は、力検出部をリセットする第1処理と、予め決められた第1期間において、力検出部から出力された出力値のピーク値(実施形態では、ピーク値PK)が予め決められた第1閾値(実施形態では、第1閾値SH1)以上であるか否かを判定し、判定結果を更新する第2処理と、当該ピーク値が第1閾値以上であることを当該判定結果が示す場合、第1処理を実行する第3処理と、当該ピーク値が第1閾値以上ではないことを当該判定結果が示し、且つ、第1処理によって力検出部がリセットされたタイミングから予め決められた第2期間が経過していない場合、第2処理を実行する第4処理と、当該ピーク値が第1閾値以上ではないことを当該判定結果が示し、且つ、当該タイミングから第2期間が経過した場合、予め決められた第3期間における当該出力値の平均値を第1オフセット値として算出する第5処理と、を含み、補正部は、リセット処理部によって第5処理が実行された場合、リセット処理の後に、第1オフセット値を当該出力値から加算又は減算する補正を行う。
また、ロボットシステムでは、第1期間と第3期間とは重なる、構成が用いられてもよい。
また、ロボットシステムでは、リセット処理は、力検出部から出力された出力値のピーク値が第1閾値よりも小さい第2閾値未満であるか否かを判定する第6処理と、当該ピーク値が第1閾値以上ではないことを、第2処理によって更新された判定結果が示し、且つ、第6処理において当該ピーク値が第2閾値未満であると判定された場合、第3期間よりも短い第4期間における当該出力値の平均値を第2オフセット値として算出する第7処理と、を含み、補正部は、リセット処理部によって第7処理が実行された場合、リセット処理の後に、第2オフセット値を当該出力値から加算又は減算する補正を行う、構成が用いられてもよい。
以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。
また、以上に説明した装置における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。当該装置は、例えば、ロボット制御装置30等である。なお、ここでいう「コンピューターシステム」とは、OS(Operating System)や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD(Compact Disk)-ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル、差分プログラム等であってもよい。
1…ロボットシステム、20…ロボット、30…ロボット制御装置、31…プロセッサー、32…メモリー、34…通信部、36…制御部、361…第1取得部、362…第2取得部、363…軌道算出部、364…力検出制御部、364A…リセット処理部、364B…補正部、365…エンドエフェクター制御部、366…マニピュレーター制御部、A…アーム、B…基台、E…エンドエフェクター、FC…力検出座標系、FS…力検出部、M…マニピュレーター、P1…期間、PK…ピーク値、SH1…第1閾値、SH2…第2閾値、T…タイミング、X…変数

Claims (5)

  1. ロボットと、
    前記ロボットに加えられた外力を検出する力検出部と、
    前記力検出部のリセット処理を行うリセット処理部と、
    前記リセット処理部による前記リセット処理に応じた補正を行う補正部と、
    を備え、
    前記リセット処理は、
    前記力検出部をリセットする第1処理と、
    直前に実行された前記第1処理によって前記力検出部がリセットされたタイミングから
    予め決められた第1期間が経過するまでの前記第1期間内において、前記力検出部から出
    力された出力値のピーク値が予め決められた第1閾値以上であるか否かを判定し、判定結
    果を更新する第2処理と、
    前記ピーク値が前記第1閾値以上であることを前記判定結果が示す場合、前記第1処理
    を実行する第3処理と、
    前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記タ
    ミングから予め決められた第2期間が経過していない場合、前記第2処理を実行する第4
    処理と、
    前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記タイ
    ミングから前記第2期間が経過した場合、前記タイミングから予め決められた第3期間
    経過するまでの第3期間内における前記出力値の平均値を第1オフセット値として算出す
    る第5処理と、
    を含み、
    前記補正部は、前記リセット処理部によって前記第5処理が実行された場合、前記リセ
    ット処理の後に、前記第1オフセット値を前記出力値から加算又は減算する補正を行う、
    ロボットシステム。
  2. 前記第1期間と前記第3期間とは重なる、
    請求項1に記載のロボットシステム。
  3. 前記リセット処理は、
    前記ピーク値が前記第1閾値よりも小さい第2閾値未満であるか否かを判定する第6処
    理と、
    前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記第6
    処理において前記ピーク値が前記第2閾値未満であると判定された場合、前記タイミング
    から前記第3期間よりも短い第4期間が経過するまでの第4期間内における前記出力値の
    平均値を第2オフセット値として算出する第7処理と、
    を含み、
    前記補正部は、前記リセット処理部によって前記第7処理が実行された場合、前記リセ
    ット処理の後に、前記第2オフセット値を前記出力値から加算又は減算する補正を行う、
    請求項1又は2に記載のロボットシステム。
  4. アームと、
    前記アームに加えられた外力を検出する力検出部と、
    前記力検出部のリセット処理を行うリセット処理部と、
    前記リセット処理部による前記リセット処理に応じた補正を行う補正部と、
    を備え、
    前記リセット処理は、
    前記力検出部をリセットする第1処理と、
    直前に実行された前記第1処理によって前記力検出部がリセットされたタイミングから
    予め決められた第1期間が経過するまでの前記第1期間内において、前記力検出部から出
    力された出力値のピーク値が予め決められた第1閾値以上であるか否かを判定し、判定結
    果を更新する第2処理と、
    前記ピーク値が前記第1閾値以上であることを前記判定結果が示す場合、前記第1処理
    を実行する第3処理と、
    前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記タ
    ミングから予め決められた第2期間が経過していない場合、前記第2処理を実行する第4
    処理と、
    前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記タイ
    ミングから前記第2期間が経過した場合、前記タイミングから予め決められた第3期間
    経過するまでの前記第3期間内における前記出力値の平均値を第1オフセット値として算
    出する第5処理と、
    を含み、
    前記補正部は、前記リセット処理部によって前記第5処理が実行された場合、前記リセ
    ット処理の後に、前記第1オフセット値を前記出力値から加算又は減算する補正を行う、
    ロボット。
  5. ロボットを制御する制御方法であって、
    前記ロボットに加えられた外力を検出する力検出部のリセット処理を行うリセット処理
    ステップと、
    前記リセット処理ステップによる前記リセット処理に応じた補正を行う補正ステップと

    を含み、
    前記リセット処理は、
    前記力検出部をリセットする第1処理と、
    直前に実行された前記第1処理によって前記力検出部がリセットされたタイミングから
    予め決められた第1期間が経過するまでの前記第1期間内において、前記力検出部から出
    力された出力値のピーク値が予め決められた第1閾値以上であるか否かを判定し、判定結
    果を更新する第2処理と、
    前記ピーク値が前記第1閾値以上であることを前記判定結果が示す場合、前記第1処理
    を実行する第3処理と、
    前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記タ
    ミングから予め決められた第2期間が経過していない場合、前記第2処理を実行する第4
    処理と、
    前記ピーク値が前記第1閾値以上ではないことを前記判定結果が示し、且つ、前記タイ
    ミングから前記第2期間が経過した場合、前記タイミングから予め決められた第3期間
    経過するまでの第3期間内における前記出力値の平均値を第1オフセット値として算出す
    る第5処理と、
    を含み、
    前記補正ステップは、前記リセット処理ステップによって前記第5処理が実行された場
    合、前記リセット処理の後に、前記第1オフセット値を前記出力値から加算又は減算する
    補正を行う、
    制御方法。
JP2018154486A 2018-08-21 2018-08-21 ロボットシステム、ロボット、及び制御方法 Active JP7155743B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018154486A JP7155743B2 (ja) 2018-08-21 2018-08-21 ロボットシステム、ロボット、及び制御方法
CN201910770128.9A CN110842910B (zh) 2018-08-21 2019-08-20 机器人***、机器人及控制方法
US16/545,109 US11389958B2 (en) 2018-08-21 2019-08-20 Robot system, robot, and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018154486A JP7155743B2 (ja) 2018-08-21 2018-08-21 ロボットシステム、ロボット、及び制御方法

Publications (2)

Publication Number Publication Date
JP2020028926A JP2020028926A (ja) 2020-02-27
JP7155743B2 true JP7155743B2 (ja) 2022-10-19

Family

ID=69583184

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018154486A Active JP7155743B2 (ja) 2018-08-21 2018-08-21 ロボットシステム、ロボット、及び制御方法

Country Status (3)

Country Link
US (1) US11389958B2 (ja)
JP (1) JP7155743B2 (ja)
CN (1) CN110842910B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7211007B2 (ja) * 2018-10-30 2023-01-24 セイコーエプソン株式会社 制御装置、ロボットシステムおよび制御方法
JP2022163318A (ja) * 2021-04-14 2022-10-26 セイコーエプソン株式会社 ロボット制御システム、下位制御装置、及び、ロボットの制御方法
FR3136394A1 (fr) * 2022-06-13 2023-12-15 Staubli Faverges Systèmes et procédés pour mettre à jour le coefficient de correction d’un capteur d’effort d’un robot industriel

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009023047A (ja) 2007-07-19 2009-02-05 Fanuc Ltd ロボット制御装置
JP2016112627A (ja) 2014-12-11 2016-06-23 ファナック株式会社 人間協調型ロボットシステム
JP2018075672A (ja) 2016-11-10 2018-05-17 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19854011A1 (de) * 1998-11-12 2000-05-25 Knoll Alois Einrichtung und Verfahren zum Vermessen von Mechanismen und ihrer Stellung
KR101064516B1 (ko) * 2009-08-06 2011-09-15 한국과학기술연구원 순외력 측정을 위한 힘 센서 검출 신호 보정 방법
JP5550468B2 (ja) * 2010-06-30 2014-07-16 キヤノン株式会社 力覚センサの校正方法
JP2015066610A (ja) * 2013-09-27 2015-04-13 セイコーエプソン株式会社 力補正値検出方法及びロボット
CN104608113B (zh) * 2013-11-01 2018-07-17 精工爱普生株式会社 机器人、机器人***以及机器人控制装置
CN103869773A (zh) * 2014-03-04 2014-06-18 南昌大学 基于主端机的力反馈控制器校正反馈力的方法
JP6575306B2 (ja) 2015-11-04 2019-09-18 株式会社デンソー ロボット装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009023047A (ja) 2007-07-19 2009-02-05 Fanuc Ltd ロボット制御装置
JP2016112627A (ja) 2014-12-11 2016-06-23 ファナック株式会社 人間協調型ロボットシステム
JP2018075672A (ja) 2016-11-10 2018-05-17 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム

Also Published As

Publication number Publication date
CN110842910B (zh) 2023-01-13
JP2020028926A (ja) 2020-02-27
US11389958B2 (en) 2022-07-19
CN110842910A (zh) 2020-02-28
US20200061816A1 (en) 2020-02-27

Similar Documents

Publication Publication Date Title
JP7155743B2 (ja) ロボットシステム、ロボット、及び制御方法
US11298828B2 (en) Calibration device, calibration method, and control device
US20160184996A1 (en) Robot, robot system, control apparatus, and control method
CN109483528B (zh) 机器人以及力传感器的偏移校正装置
US10882182B2 (en) Robot apparatus, control method of robot apparatus, and recording medium
CN110385715B (zh) 设置方式判定装置、设置方式判定用程序以及记录介质
JP7225563B2 (ja) ロボット、制御装置およびロボットの制御方法
US10744651B2 (en) Mirror replacement device for a segmented mirror telescope and mirror replacement method thereof
JP6003312B2 (ja) ロボットシステム
JP5849477B2 (ja) ロボット、ロボット制御装置、ロボット制御方法、およびプログラム
JP2015136778A (ja) ロボット制御方法、ロボット装置、プログラム及び記録媒体
JP2021003771A (ja) ロボットシステム
KR20090114890A (ko) 로봇의 충돌검지 방법
CN110871456B (zh) 机器人
JP2018020430A (ja) ロボット装置、ロボット制御方法、物品の製造方法、プログラム及び記録媒体
JP2016120530A (ja) ロボット、及びロボット校正システム
JP7400225B2 (ja) リセット制御方法
JP5942720B2 (ja) 状態判別方法、ロボット、制御装置、及びプログラム
WO2017026045A1 (ja) ハンド力覚計測装置、ハンド力覚計測方法、及びハンド力覚計測プログラム
JP6354248B2 (ja) ロボット、ロボットシステム、制御装置、及び制御方法
JP2019141966A (ja) ロボット制御装置、ロボット、及びロボットシステム
US20230321836A1 (en) Correction device, correction method, and robot system
JP7127362B2 (ja) ロボット制御装置、ロボット制御装置の制御方法、及びロボットシステム
US20200246969A1 (en) Robot control device
CN111486871A (zh) 传感器检测方法、装置、检测设备及可读存储介质

Legal Events

Date Code Title Description
RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20180911

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20181120

RD07 Notification of extinguishment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7427

Effective date: 20200810

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210602

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20210917

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20211108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220330

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220523

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220919

R150 Certificate of patent or registration of utility model

Ref document number: 7155743

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150