JP6867885B2 - 角度伝達誤差同定システム、角度伝達誤差同定方法及びロボットシステム - Google Patents

角度伝達誤差同定システム、角度伝達誤差同定方法及びロボットシステム Download PDF

Info

Publication number
JP6867885B2
JP6867885B2 JP2017111011A JP2017111011A JP6867885B2 JP 6867885 B2 JP6867885 B2 JP 6867885B2 JP 2017111011 A JP2017111011 A JP 2017111011A JP 2017111011 A JP2017111011 A JP 2017111011A JP 6867885 B2 JP6867885 B2 JP 6867885B2
Authority
JP
Japan
Prior art keywords
value
amplitude
phase
function
torque
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
JP2017111011A
Other languages
English (en)
Other versions
JP2018202554A (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.)
Kawasaki Motors Ltd
Original Assignee
Kawasaki Jukogyo KK
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 Kawasaki Jukogyo KK filed Critical Kawasaki Jukogyo KK
Priority to JP2017111011A priority Critical patent/JP6867885B2/ja
Priority to EP18812588.4A priority patent/EP3636396B1/en
Priority to PCT/JP2018/021387 priority patent/WO2018225689A1/ja
Priority to CN201880036822.1A priority patent/CN110709213B/zh
Priority to US16/619,890 priority patent/US11305425B2/en
Publication of JP2018202554A publication Critical patent/JP2018202554A/ja
Application granted granted Critical
Publication of JP6867885B2 publication Critical patent/JP6867885B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1641Programme controls characterised by the control loop compensation for backlash, friction, compliance, elasticity in the joints
    • 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/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • 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
    • B25J17/00Joints
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/102Gears specially adapted therefor, e.g. reduction gears
    • B25J9/1025Harmonic drives
    • 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/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1638Programme controls characterised by the control loop compensation for arm bending/inertia, pay load weight/inertia
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39194Compensation gravity
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39195Control, avoid oscillation, vibration due to low rigidity
    • 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/41Servomotor, servo controller till figures
    • G05B2219/41112Control parameter such as motor controlled by a torque signal
    • 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/41Servomotor, servo controller till figures
    • G05B2219/41114Compensation for gravity, counter balance gravity
    • 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/49Nc machine tool, till multiple
    • G05B2219/49197Gear
    • 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/49Nc machine tool, till multiple
    • G05B2219/49292Harmonic gear, transmission, strain wave gear

Landscapes

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

Description

本発明は、角度伝達誤差同定システム、角度伝達誤差同定方法及びロボットシステムに関する。
従来からロボット制御装置が知られている(例えば特許文献1参照)。
このロボット制御装置は、ハーモニックドライブ(登録商標)減速機の誤差振動(回転ムラ)を打ち消すための補正信号を出力する補正信号発生手段を備えている。この補正信号発生手段は、位相差を設定する位相設定器及び振幅を設定する歪振幅設定器を有し、設定された位相差及び振幅をもとに補正信号が演算される。位相設定器に設定される位相差は、誤差振動が最も小さくなる位相差を実測的に求められる。また、位相設定器に設定される位相差についても、誤差振動の振幅値を実測又は計算するか、徐々に設定値を変化させるかして、適正値が求められる。
特開昭63−153610号公報
ところで、関節及び減速機に作用する重力トルクの変化によって適切な位相差及び適切な振幅が変化する場合がある。しかし、特許文献1に記載のロボット制御装置は、重力トルクの変化によって位相差及び振幅が適切な値から外れ、誤差振動を打ち消すための補正信号を生成することができない場合があった。
上記課題を解決するため、本発明のある態様に係る角度伝達誤差同定システムは、減速機を介してモータによって回転駆動される関節を含むロボットアームの前記減速機の角度伝達誤差を同定する角度伝達誤差同定システムであって、振幅パラメータ及び位相パラメータを有する前記減速機の角度伝達誤差をモデル化した周期関数である角度伝達誤差同定関数の前記振幅パラメータ及び前記位相パラメータを算出し、前記角度伝達誤差同定関数を用いて前記角度伝達誤差を同定する同定部を備え、前記同定部は、前記減速機の角度伝達誤差の同定時に前記関節に作用する重力トルク値である重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が負の値をとる動作領域における前記振幅パラメータと前記関節に作用する重力トルク値との相関関係を表した振幅第1関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が負の値をとる動作領域における前記位相パラメータと前記関節に作用する重力トルク値との相関関係を表した位相第1関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が正の値をとる動作領域における前記振幅パラメータと前記関節に作用する重力トルク値との相関関係を表した振幅第2関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が正の値をとる動作領域における前記位相パラメータと前記関節に作用する重力トルク値との相関関係を表した位相第2関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出する。
この構成によれば、関節に作用する重力トルクに応じた位相パラメータ及び振幅パラメータを有する周期関数を用いて減速機の角度伝達誤差を同定することができる。これによって、関節に作用する重力トルクが変化しても減速機の角度伝達誤差を精確に同定することができ、同定した角度伝達誤差に基づいて減速機の出力軸に接続される負荷の不安定な挙動を抑制することができる。
更に、関節に作用する重力トルクに応じた位相パラメータ及び振幅パラメータは、重力トルクが正の値をとるときと負の値をとるときとで別の関数を用いて算出されるので、重力トルクが正の領域と重力トルクが負の領域とで減速機の特性が異なる場合であっても、減速機の角度伝達誤差を精確に同定することができる。
前記関節の動作領域に含まれる前記関節の回動方向に並ぶ複数の微小動作領域のそれぞれについて、該微小動作領域の前記減速機の角度伝達誤差の所定の周波数成分の振幅である微小動作領域振幅及び位相である微小動作領域位相を算出する微小領域振幅/位相算出部と、複数の前記微小動作領域のそれぞれについて、対応する該微小動作領域において前記関節に作用する重力トルク値である対応重力トルク値を算出する微小領域重力トルク値算出部と、前記微小動作領域振幅と前記対応重力トルク値との相関関係を表した前記振幅第1関数及び前記振幅第2関数を算出するトルク−振幅相関関係算出部であって、前記振幅第1関数は前記微小領域振幅/位相算出部が算出した複数の前記微小動作領域のうち前記対応重力トルク値が負の値をとる前記微小動作領域における前記微小動作領域振幅及び前記対応重力トルク値に基づき算出される関数であり、前記振幅第2関数は前記微小領域振幅/位相算出部が算出した複数の前記微小動作領域のうち前記対応重力トルク値が正の値をとる前記微小動作領域における前記微小動作領域振幅及び前記対応重力トルク値に基づき算出される関数である、トルク−振幅相関関係算出部と、前記位相第1関数及び前記位相第2関数を算出するトルク−位相相関関係算出部であって、前記位相第1関数は前記微小領域振幅/位相算出部が算出した複数の前記微小動作領域のうち前記対応重力トルク値が負の値をとる前記微小動作領域における前記微小動作領域位相及び前記対応重力トルク値に基づき算出される関数であり、前記位相第2関数は前記微小領域振幅/位相算出部が算出した複数の前記微小動作領域のうち前記対応重力トルク値が正の値をとる前記微小動作領域における前記微小動作領域位相及び前記対応重力トルク値に基づき算出される関数である、トルク−位相相関関係算出部と、を更に備えていてもよい。
この構成によれば、振幅パラメータと重力トルク値との相関関係及び位相パラメータと重力トルク値との相関関係を精確に算出することができる。
前記トルク−振幅相関関係算出部は、最小二乗法を用いて前記振幅第1関数及び前記振幅第2関数を一次関数で表し、前記トルク−位相相関関係算出部は、最小二乗法を用いて前記位相第1関数及び前記位相第2関数を一次関数で表してもよい。
この構成によれば、振幅第1関数、振幅第2関数、位相第1関数及び位相第2関数を適切に算出することができる。
前記トルク−位相相関関係算出部は、対応する前記微小動作領域の振幅パラメータの値で重みづけした重み付き最小二乗法を用いて前記位相第1関数及び前記位相第2関数を一次関数で表してもよい。
この構成によれば、位相第1関数及び位相第2関数を精確に算出することができる。
前記トルク−振幅相関関係算出部は、振幅第3関数を更に算出し、前記振幅第3関数は前記振幅第1関数における重力トルク値が負の値をとる第1所定値に対応する振幅値と、前記振幅第2関数における重力トルク値が正の値をとる第2所定値に対応する振幅値とを通る関数であり、前記トルク−位相相関関係算出部は、位相第3関数を更に算出し、前記位相第3関数は前記位相第1関数における重力トルク値が負の値をとる第3所定値に対応する位相値と、前記位相第2関数における重力トルク値が正の値をとる第4所定値に対応する位相値とを通る関数であり、前記同定部は、前記重力トルク現在値が前記第1所定値よりも小さいときは前記振幅第1関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が前記第1所定値よりも大きく且つ前記第2所定値よりも小さいときは前記振幅第3関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が前記第2所定値よりも大きいときは前記振幅第2関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が前記第3所定値よりも小さいときは前記位相第1関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出し、且つ前記重力トルク現在値が前記第3所定値よりも大きく且つ前記第4所定値よりも小さいときは前記位相第3関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出し、且つ前記重力トルク現在値が前記第4所定値よりも大きいときは前記位相第2関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出してもよい。
この構成によれば、重力トルク値が0を跨ぐ区間において、角度伝達誤差の補償を円滑におこなうことができる。
前記トルク−振幅相関関係算出部は、前記振幅第3関数を一次関数で表し、前記トルク−位相相関関係算出部は、前記位相第3関数を一次関数で表してもよい。
この構成によれば、振幅第3関数、及び位相第3関数を適切に算出することができる。
上記課題を解決するため、本発明のある態様に係る角度伝達誤差同定方法は、減速機を介してモータによって回転駆動される関節を含むロボットアームの前記減速機の角度伝達誤差を同定する角度伝達誤差同定方法であって、前記関節の動作領域に含まれる前記関節の回動方向に並ぶ複数の微小動作領域のそれぞれについて、該微小動作領域の前記減速機の角度伝達誤差の所定の周波数成分の振幅である微小動作領域振幅及び位相である微小動作領域位相を算出する微小領域振幅/位相算出ステップと、複数の前記微小動作領域のそれぞれについて、対応する該微小動作領域において前記関節に作用する重力トルク値である対応重力トルク値を算出する微小領域重力トルク値算出ステップと、前記微小動作領域振幅と前記対応重力トルク値との相関関係を表した振幅第1関数及び振幅第2関数を算出するトルク−振幅相関関係算出ステップであって、前記振幅第1関数は前記微小領域振幅/位相算出ステップにおいて算出した複数の前記微小動作領域のうち前記対応重力トルク値が負の値をとる前記微小動作領域における前記微小動作領域振幅及び前記対応重力トルク値に基づき算出される関数であり、前記振幅第2関数は前記微小領域振幅/位相算出ステップにおいて算出した複数の前記微小動作領域のうち前記対応重力トルク値が正の値をとる前記微小動作領域における前記微小動作領域振幅及び前記対応重力トルク値に基づき算出される関数である、トルク−振幅相関関係算出ステップと、前記微小動作領域位相と前記対応重力トルク値との相関関係を表した位相第1関数及び位相第2関数を算出するトルク−位相相関関係算出ステップであって、前記位相第1関数は前記微小領域振幅/位相算出ステップにおいて算出した複数の前記微小動作領域の位相のうち前記対応重力トルク値が負の値をとる前記微小動作領域における前記微小動作領域位相及び前記対応重力トルク値に基づき算出される関数であり、前記位相第2関数は前記微小領域振幅/位相算出ステップにおいて算出した複数の前記微小動作領域の位相のうち前記対応重力トルク値が正の値をとる前記微小動作領域における前記微小動作領域位相及び前記対応重力トルク値に基づき算出される関数である、トルク−位相相関関係算出ステップと、振幅パラメータ及び位相パラメータを有する前記減速機の角度伝達誤差をモデル化した角度伝達誤差同定関数の前記振幅パラメータ及び前記位相パラメータを算出し、前記角度伝達誤差同定関数を用いて前記角度伝達誤差を同定する同定ステップであって、前記減速機の角度伝達誤差の同定時に前記関節に作用する重力トルク値である重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記振幅第1関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記位相第1関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記振幅第2関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記位相第2関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出する同定ステップと、を備える。
この構成によれば、関節に作用する重力トルクに応じた位相パラメータ及び振幅パラメータを有する周期関数を用いて減速機の角度伝達誤差を同定することができる。これによって、関節に作用する重力トルクが変化しても減速機の角度伝達誤差を精確に同定することができ、同定した角度伝達誤差に基づいて減速機の出力軸に接続される負荷の不安定な挙動を抑制することができる。
更に、関節に作用する重力トルクに応じた位相パラメータ及び振幅パラメータは、重力トルクが正の値をとるときと負の値をとるときとで別の関数を用いて算出されるので、重力トルクが正の領域と重力トルクが負の領域とで減速機の特性が異なる場合であっても、減速機の角度伝達誤差を精確に同定することができる。
上記課題を解決するため、本発明のある態様に係るロボットシステムは、減速機を介してモータによって回転駆動される関節を含むロボットアームの前記減速機の角度伝達誤差を同定する角度伝達誤差同定システムを含むロボットシステムであって、前記角度伝達誤差同定システムは、振幅パラメータ及び位相パラメータを有する前記減速機の角度伝達誤差をモデル化した周期関数である角度伝達誤差同定関数の前記振幅パラメータ及び前記位相パラメータを算出し、前記角度伝達誤差同定関数を用いて前記角度伝達誤差を同定する同定部を備え、前記同定部は、前記減速機の角度伝達誤差の同定時に前記関節に作用する重力トルク値である重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が負の値をとる動作領域における前記振幅パラメータと前記関節に作用する重力トルク値との相関関係を表した振幅第1関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が負の値をとる動作領域における前記位相パラメータと前記関節に作用する重力トルク値との相関関係を表した位相第1関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が正の値をとる動作領域における前記振幅パラメータと前記関節に作用する重力トルク値との相関関係を表した振幅第2関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が正の値をとる動作領域における前記位相パラメータと前記関節に作用する重力トルク値との相関関係を表した位相第2関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出する。
この構成によれば、関節に作用する重力トルクに応じた位相パラメータ及び振幅パラメータを有する周期関数を用いて減速機の角度伝達誤差を同定することができる。これによって、関節に作用する重力トルクが変化しても減速機の角度伝達誤差を精確に同定することができ、同定した角度伝達誤差に基づいて減速機の出力軸に接続される負荷の不安定な挙動を抑制することができる。
更に、関節に作用する重力トルクに応じた位相パラメータ及び振幅パラメータは、重力トルクが正の値をとるときと負の値をとるときとで別の関数を用いて算出されるので、重力トルクが正の領域と重力トルクが負の領域とで減速機の特性が異なる場合であっても、減速機の角度伝達誤差を精確に同定することができる。
本発明は、減速機の角度伝達誤差を精確に同定することができ、これによって、減速機の角度伝達誤差を精確に補償することできるという効果を奏する。
本発明の実施の形態に係るロボットシステムの構成例を概略的に示す図である。 図1のロボットシステムの制御系統の構成例を概略的に示すブロック図である。 角度伝達誤差の説明図である。 図1のロボットシステムのロボットの関節の微小動作領域の一例を説明する説明図である。 図1のロボットシステムの微小領域振幅/位相算出部が算出した所定の周波数成分の周期関数の一例を示す図である。 図1のロボットシステムの動作例を示すフローチャートである。 図1のロボットシステムの動作例を示すフローチャートである。 図1のロボットシステムのトルク−振幅相関関係算出部によって算出された振幅第1関数及び振幅第2関数の一例を示すグラフである。 図1のロボットシステムのトルク−振幅相関関係算出部によって算出された振幅第1関数、振幅第2関数、及び振幅第3関数の一例を示すグラフである。 図1のロボットシステムのトルク−位相相関関係算出部によって算出された位相第1関数及び位相第2関数の一例を示すグラフである。 図1のロボットシステムのトルク−位相相関関係算出部によって算出された位相第1関数、位相第2関数、及び位相第3関数の一例を示すグラフである。
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、本実施の形態によって本発明が限定されるものではない。また、以下では、全ての図を通じて、同一又は相当する要素には同一の参照符号を付して、その重複する説明を省略する。
図1は、本発明の実施の形態に係るロボットシステム100の構成例を概略的に示す図である。図2は、ロボットシステム100の制御系統の構成例を概略的に示すブロック図である。
図1及び図2に示すように、ロボットシステム100は、減速機13を介してモータ11によって回転駆動される関節7を含むロボットアーム4の減速機13の角度伝達誤差を同定する減速機角度伝達誤差同定システムを含むシステムである。ロボットシステム100は、ロボット1と、制御装置2とを備え、減速機13の角度伝達誤差を制御装置2が同定する。
[ロボットの構成例]
図1に示すように、ロボット1は、多関節型ロボットの産業用ロボット(多関節ロボット)である。ロボット1は、基部3と、ロボットアーム4と、ハンド14を含む。
ロボットアーム4は、基部3に対してハンド14を移動させるロボットアームであり、少なくとも一つの関節を含む。このうち、説明の便宜上、角度伝達誤差を同定及び補償する関節を以下では関節7という。関節7は、例えば水平方向に延在する回動軸線周りに回動する関節である。したがって、関節7の回動によって関節7よりも先端側に連なる要素(ハンド14を含む)の姿勢が変化し、関節7に作用する重力トルクが変化する。図2に示すように、ロボットアーム4には、関節7を駆動する関節駆動部9が設けられている。関節駆動部9は、モータ11と、エンコーダ12と、減速機13とを含む。モータ11は、関節7を回動させる駆動源であり、例えばサーボモータである。エンコーダ12は、モータ11の出力軸11aの回転角を検知する。減速機13は、入力軸13aがモータ11の出力軸11aに連結され、モータ11の出力軸11aの回転を所定の減速比で減速し出力軸13bから出力する。
減速機13は、例えば波動歯車装置(ハーモニックドライブ(登録商標))である。波動歯車装置は、サーキュラスプラインと、フレクスプラインと、ウェーブジェネレータとを備える。サーキュラスプラインは、剛性の内歯歯車であり、例えば筐体と一体的に設けられる。フレクスプラインは、可撓性を有する外歯歯車であり、サーキュラスプラインと歯合する。フレクスプラインは、サーキュラスプラインよりも歯数が少なく、減速機13の出力軸13bと接続される。ウェーブジェネレータは、フレクスプラインの内側に接触する楕円状のカムであり、減速機13の入力軸13aと接続されている。そして、減速機13の入力軸13aが回転することによって、ウェーブジェネレータがフレクスプラインとサーキュラスプラインとの噛み合い位置が移動し、サーキュラスプラインとフレクスプラインの歯数差に応じてフレクスプラインが回転軸周りに回転し、減速機13の出力軸13bが回転する。波動歯車装置は、小型・軽量、高減速比、高トルク容量、ノンバックラッシ等の特徴からロボットの駆動機構の減速機に適した特性を有する。
ところで、図3に示すように、波動歯車装置などの減速機には、加工誤差等により、減速機に入力される入力回転角に減速比を乗じた理論上の出力回転角と、実際の出力回転角との差である角度伝達誤差が生じる。この角度伝達誤差は、モータの出力軸の回転に伴って周期的に変化する。このような減速機出力軸の角度伝達誤差ATEは、以下の式(1)に係る関数を用いたモデルによって近似的に表現することが可能である。
Figure 0006867885
このうち、周波数fは、減速機13の構造(種類)に依存する値であり、例えば波動歯車装置の角度伝達誤差に特に大きな影響をあたえるのは周波数が2に係る成分であることが判っている。
[制御装置の構成例]
図2に示すように、制御装置2は、ロボット1を制御する。制御装置2は、演算部21と、記憶部22と、関節7に対応して設けられたサーボアンプ24とを含む。
演算部21は、例えばマイクロコントローラ、CPU、ASIC、FPGA等のプログラマブルロジックデバイス(PLD)などの演算器で構成される。演算部は、集中制御する単独の制御器で構成されていてもよく、互いに協働して分散制御する複数の制御器で構成されてもよい。演算部21は、指令部41と、微小領域振幅/位相算出部42と、微小領域重力トルク値算出部43と、トルク−振幅相関関係算出部44と、トルク−位相相関関係算出部45と、同定部46とを含む。指令部41、微小領域振幅/位相算出部42、微小領域重力トルク値算出部43、トルク−振幅相関関係算出部44、トルク−位相相関関係算出部45、同定部46は、所定の制御プログラムを演算部21が実行することにより実現される機能ブロックである。
指令部41は、動作プログラムに基づき目標位置を生成し、これを出力する。出力された目標位置は、サーボアンプ24に入力される。また、指令部41は、同定部46が同定した角度伝達誤差に基づいて目標位置を補正し、これを出力する。
図4は、ロボット1の関節7の第1微小動作領域Rd1〜第8微小動作領域Rd8の一例を説明する説明図である。図5は、微小領域振幅/位相算出部42が算出した所定の周波数成分の周期関数の一例を示す図である。
微小領域振幅/位相算出部42は、図4及び図5に示すように、関節7の動作領域Rに含まれる関節7の回動方向に並ぶ複数の微小動作領域のそれぞれについて、微小動作領域の角度伝達誤差の所定の周波数の振幅である微小動作領域振幅Ad(図7参照)及び位相である微小動作領域位相φd(図9参照)を算出する。微小動作領域は、関節7の回動領域において所定の間隔で予め設定された領域である。例えば8つの予め設定された微小動作領域Rd1〜Rd8が設定されている。なお、図4において、7aで示す要素が関節7よりもロボットアーム4の基端側のリンクであり、7bで示す要素が関節7よりもロボットアーム4の先端側のリンクである。
微小領域振幅/位相算出部42は、例えば、微小動作領域の角度伝達誤差を実測的に算出する。すなわち、例えば、減速機13の出力軸13bに、この出力軸13bの回転角を検知するエンコーダ(図示せず)を設ける。そして、微小領域振幅/位相算出部42は、指令部41を介して関節7を動作させ、理論上の減速機13の出力軸13bの回転角とエンコーダから出力される減速機13の出力軸13bの回転角との差分である角度伝達誤差の変化を算出する。そして、算出した角度伝達誤差の変化から所定の周波数成分(例えばf=2)を抽出し、この周波数成分に係る正弦波の振幅(微小動作領域振幅Ad)及び位相(微小動作領域位相φd)を算出する。なお、周波数fは、減速機13の構造(種類)に依存する値であり、波動歯車減速機である減速機13において、周波数fは、角度伝達誤差に大きな影響を与える2と予め規定されている。
なお、本実施の形態において、微小領域振幅/位相算出部42は、減速機13の出力軸13bの回転角を検知するエンコーダ12によって取得した情報に基づいて角度伝達誤差を検出したがこれに限られるものではない。これに代えて、角度伝達誤差を同定する関節7の動作に起因する他の関節を制御するための電流値の変化を検知し、この電流値の変化に基づいて関節7の角度伝達誤差を解析的に算出してもよい。
微小領域重力トルク値算出部43は、微小動作領域Rd1〜Rd8のそれぞれについて関節7に作用する対応重力トルク値Tgを算出する。対応重力トルク値Tgは、対応する微小動作領域において関節7に作用する重力トルク値であり、例えばロボットアーム4の姿勢等から解析的に算出される値であるが、これに代えて関節7に重力トルクを検出するためのセンサを設け、関節7に作用する重力トルク値を検出してもよい。上述の通り、関節7は水平方向に延在する回動軸線周りに回動する関節であり、関節7の回動によって、関節7よりも先端側に連なるロボットアーム4の要素、及びハンド14の姿勢が変化し、関節7に作用する重力トルクが変化する。なお、図4に示すようにロボットアーム4が例えば上方に伸延し、関節7に重力トルクが作用せず、関節7に作用する重力トルク値が0にある状態から一方側に関節7を回動させ、ロボットアーム4を倒していったときの重力トルク値に正符号を付して表す。また、関節7に重力トルクが作用せず、関節7に作用する重力トルク値が0にある状態から他方側に関節7を回動させ、ロボットアーム4を倒していったときの重力トルク値に負符号を付して表す。
そして、微小領域重力トルク値算出部43は、例えば各微小動作領域の中央における重力トルク値を各微小動作領域の重力トルク値として取り扱う。しかし、これに限られるものではなく、微小領域重力トルク値算出部43は、各微小動作領域において関節7に作用する重力トルク値の平均値を各微小動作領域の重力トルク値として取り扱ってもよい。
図7は、ロボットシステム100のトルク−振幅相関関係算出部44によって算出された振幅第1関数FA1及び振幅第2関数FA2の一例を示すグラフである。
トルク−振幅相関関係算出部44は、図7に示すように、微小動作領域振幅Adと対応重力トルク値Tgとの相関関係を表した振幅第1関数FA1及び振幅第2関数FA2を算出する。振幅第1関数FA1は、微小領域振幅/位相算出部42が算出した微小動作領域Rd1〜Rd8のうち対応重力トルク値Tgが負の値をとる微小動作領域における微小動作領域振幅Ad(図7におけるAd1〜Ad4)及び対応重力トルク値Tg(図7におけるTg1〜Tg4)に基づき算出される関数である。本実施の形態において、微小動作領域Rd1〜Rd4の対応重力トルク値Tg1〜Tg4が負の値をとるように規定されている。
また、振幅第2関数FA2は、微小領域振幅/位相算出部42が算出した微小動作領域Rd1〜Rd8のうち対応重力トルク値Tgが正の値をとる微小動作領域における微小動作領域振幅Ad(図7におけるAd5〜Ad8)及び対応重力トルク値Tg(図7におけるTg5〜Tg8)に基づき算出される関数である。本実施の形態において、微小動作領域Rd5〜Rd8の対応重力トルク値Tg5〜Tg8が正の値をとるように規定されている。
そして、トルク−振幅相関関係算出部44は、最小二乗法を用いて振幅第1関数FA1及び振幅第2関数FA2を一次関数で表すように構成されている。すなわち、トルク−振幅相関関係算出部44は、最小二乗法を用いて一次関数で表される振幅第1関数FA1及び振幅第2関数FA2の傾き及び切片に係る係数を算出する。
図8は、ロボットシステム100のトルク−振幅相関関係算出部44によって算出された振幅第1関数FA1、振幅第2関数FA2、及び振幅第3関数FA3の一例を示すグラフである。
また、トルク−振幅相関関係算出部44は、図8に示すように、振幅第3関数FA3を更に算出する。振幅第3関数FA3は、振幅第1関数FA1における重力トルク値Tgが負の値をとる第1所定値Tgaに対応する振幅値Aaと、振幅第2関数FA2における重力トルク値Tgが正の値をとる第2所定値Tgbに対応する振幅値Abとを通る関数である。トルク−振幅相関関係算出部44は、振幅値Aaと振幅値Abとを通る一次関数として振幅第3関数FA3を表す。すなわち、トルク−振幅相関関係算出部44は、一次関数で表される振幅第3関数FA3の傾き及び切片に係る係数を算出する。
図9は、ロボットシステム100のトルク−位相相関関係算出部45によって算出された位相第1関数Fφ1及び位相第2関数Fφ2の一例を示すグラフである。
トルク−位相相関関係算出部45は、図9に示すように、微小動作領域位相φdと対応重力トルク値Tgとの相関関係を表した位相第1関数Fφ1及び位相第2関数Fφ2を算出する。位相第1関数Fφ1は、対応重力トルク値Tgが負の値をとる微小動作領域Rd1〜Rd4における微小動作領域位相φd(図9におけるφd1〜φd4)及び対応重力トルク値Tg(図9におけるTg5〜Tg8)に基づき算出される関数である。
また、位相第2関数Fφ2は、対応重力トルク値Tgが正の値をとる微小動作領域Rd5〜Rd8における微小動作領域位相φd(図9におけるφd5〜φd8)及び対応重力トルク値Tg(図9におけるTg5〜Tg8)に基づき算出される関数である。
そして、トルク−振幅相関関係算出部44は、対応する微小動作領域の振幅パラメータの値Aで重みづけした重み付き最小二乗法を用いて位相第1関数Fφ1及び位相第2関数Fφ2を一次関数で表す。すなわち、例えば微小動作領域Rd1の位相φd1は、振幅Ad1で重み付けを行い、他の位相についても同様に対応する振幅で重み付けを行う。そして、トルク−位相相関関係算出部45は、重み付け最小二乗法を用いて一次関数で表される位相第1関数Fφ1及び位相第2関数Fφ2の傾き及び切片に係る係数を算出する。
図10は、ロボットシステム100のトルク−位相相関関係算出部45によって算出された位相第1関数Fφ1、位相第2関数Fφ2、及び位相第3関数Fφ3の一例を示すグラフである。
そして、トルク−位相相関関係算出部45は、図10に示すように、位相第3関数Fφ3を更に算出する。位相第3関数Fφ3は、位相第1関数Fφ1における重力トルク値Tgが負の値をとる第3所定値Tgcに対応する位相値φaと、位相第2関数Fφ2における重力トルク値Tgが正の値をとる第4所定値Tgdに対応する位相値φbとを通る関数である。トルク−位相相関関係算出部45は、位相値φa及び位相値φbを通る一次関数として位相第3関数を表す。すなわち、トルク−位相相関関係算出部45は、一次関数で表される位相第3関数Fφ3の傾き及び切片に係る係数を算出する。なお、本実施の形態において、第3所定値Tgcは、第1所定値Tgaと同じ値であるが、異なる値としてもよい。また、第4所定値Tgdは、第2所定値Tgbと同じ値であるが、異なる値としてもよい。
図2に示すように、同定部46は、振幅パラメータ及び位相パラメータを有する減速機13の角度伝達誤差をモデル化した周期関数である以下の式(2)に係る角度伝達誤差同定関数F2の振幅パラメータA及び位相パラメータφを算出し、角度伝達誤差同定関数F2を用いて角度伝達誤差θateを同定する。
Figure 0006867885
同定部46は、減速機13の角度伝達誤差の同定時に関節に作用する重力トルク値である重力トルク現在値Tgpが第1所定値Tgaよりも小さいときは振幅第1関数FA1を用いて重力トルク値Tgに対応する振幅パラメータを算出する。重力トルク現在値Tgpは、ロボットアーム4の姿勢等から解析的に算出される値であるが、これに代えて関節7に重力トルクを検出するためのセンサを設け、関節7に作用する重力トルク値を検出してもよい。また、同定部46は、重力トルク現在値Tgpが第1所定値Tgaよりも大きく且つ第2所定値Tgbよりも小さいときは振幅第3関数FA3を用いて重力トルク値Tgに対応する振幅パラメータを算出する。本実施の形態において、同定部46は、重力トルク現在値Tgpが第1所定値Tga以上且つ第2所定値Tgb以下のときは振幅第3関数FA3を用いて重力トルク値Tgに対応する振幅パラメータを算出する。更に、同定部46は、重力トルク現在値Tgpが第2所定値Tgbよりも大きいときは振幅第2関数FA2を用いて重力トルク値Tgに対応する振幅パラメータを算出する。
また、同定部46は、重力トルク現在値Tgpが第3所定値Tgcよりも小さいときは位相第1関数Fφ1を用いて重力トルク値Tgに対応する位相パラメータを算出する。また、同定部46は、重力トルク現在値Tgpが第3所定値Tgcよりも大きく且つ第4所定値Tgdよりも小さいときは位相第3関数Fφ3を用いて重力トルク値Tgに対応する位相パラメータを算出する。本実施の形態において、同定部46は、重力トルク現在値Tgpが第3所定値Tgc以上且つ第4所定値Tgd以下のときは位相第3関数Fφ3を用いて重力トルク値Tgに対応する位相パラメータを算出する。更に、同定部46は、重力トルク現在値Tgpが第4所定値Tgdよりも大きいときは位相第2関数Fφ2を用いて重力トルク値Tgに対応する位相パラメータを算出する。
記憶部22は、ROM、RAM等のメモリを有する。記憶部22には、所定のプログラムが記憶されていて、演算部21がこれらのプログラムを読み出して実行することにより、各種の処理が行われる。また、記憶部22には、領域Rd1〜Rd8に係る情報が格納されている。
サーボアンプ24は、指令部41が生成した目標位置に基づきモータ11に電流を供給する。
[動作例]
次に、ロボットシステム100の動作例を説明する。
図6A及び図6Bは、ロボットシステム100の動作例を示すフローチャートである。
まず、図6Aに示すように、微小領域振幅/位相算出部42は、微小動作領域Rd1〜Rd8のそれぞれについて、微小動作領域振幅Ad(Ad1〜Ad8)及び微小動作領域位相φd(φd1〜φd8)を算出する(微小領域振幅/位相算出ステップ)(ステップS1)。
次に、微小領域重力トルク値算出部43は、微小動作領域Rd1〜Rd8のそれぞれについて、対応重力トルク値Tg(Tg1〜Tg8)を算出する(微小領域重力トルク値算出ステップ)(ステップS2)。
次に、図7に示すように、トルク−振幅相関関係算出部44は、算出した微小動作領域振幅Ad及び対応重力トルク値Tgに基づいて、振幅第1関数FA1及び振幅第2関数FA2を算出する(トルク−振幅相関関係算出ステップ)(ステップS3)。
次に、図8に示すようにトルク−振幅相関関係算出部44は、算出した振幅第1関数FA1及び振幅第2関数FA2に基づいて、振幅第3関数FA3を算出する(ステップS4)。
次に、図9に示すように、トルク−位相相関関係算出部45は、算出した微小動作領域位相φd及び対応重力トルク値Tgに基づいて、位相第1関数Fφ1及び位相第2関数Fφ2を算出する(トルク−位相相関関係算出ステップ)(ステップS5)。
次に、図10に示すように、トルク−位相相関関係算出部45は、算出した振幅第1関数Fφ1及び振幅第2関数Fφ2に基づいて、位相第3関数Fφ3を算出する(ステップS6)。
次に、同定部46は、角度伝達誤差同定関数F2の振幅パラメータ及び位相パラメータを算出し、角度伝達誤差同定関数F2を用いて角度伝達誤差を同定する(同定ステップ)(ステップS7)。
このとき、図6Bに示すように、まず、同定部46は、重力トルク現在値Tgpと第1所定値Tga及び第2所定値Tgbとを比較する(ステップS71)。そして、同定部46は、重力トルク現在値Tgpが第1所定値Tgaよりも小さい場合、振幅第1関数FA1を用いて重力トルク値Tgに対応する振幅パラメータを算出する(ステップS72)。また、同定部46は、重力トルク現在値Tgpが第1所定値Tga以上且つ第2所定値Tgb以下の場合、振幅第3関数FA3を用いて重力トルク値Tgに対応する振幅パラメータを算出する(ステップS73)。更に、同定部46は、重力トルク現在値Tgpが第2所定値Tgbよりも大きいときは振幅第2関数FA2を用いて重力トルク値Tgに対応する振幅パラメータを算出する(ステップS74)。
次に、同定部46は、重力トルク現在値Tgpと第3所定値Tgc及び第4所定値Tgdとを比較する(ステップS75)。そして、同定部46は、重力トルク現在値Tgpが第3所定値Tgcよりも小さい場合、位相第1関数Fφ1を用いて重力トルク値Tgに対応する位相パラメータを算出する(ステップS76)。また、同定部46は、重力トルク現在値Tgpが第3所定値Tgc以上且つ第4所定値Tgd以下の場合、位相第3関数Fφ3を用いて重力トルク値Tgに対応する位相パラメータを算出する(ステップS77)。更に、同定部46は、重力トルク現在値Tgpが第4所定値Tgdよりも大きい場合、位相第2関数Fφ2を用いて重力トルク値Tgに対応する位相パラメータを算出する(ステップS78)。
次に、同定部46は、算出した振幅パラメータ及び位相パラメータを適用した角度伝達誤差同定関数F2を用いて角度伝達誤差を同定する(ステップS79)。
このように、同定部46は、重力トルク現在値Tgpが負の数値範囲である所定の数値範囲に含まれるときは振幅第1関数FA1を用いて重力トルク値Tgに対応する振幅パラメータを算出する。また、同定部46は、重力トルク現在値Tgpが負の数値範囲である所定の数値範囲に含まれるときは位相第1関数Fφ1を用いて重力トルク値Tgに対応する位相パラメータを算出する。更に、同定部46は、重力トルク現在値Tgpが正の数値範囲である所定の数値範囲に含まれるときは振幅第2関数FA2を用いて重力トルク値Tgに対応する振幅パラメータを算出する。また、同定部46は、重力トルク現在値Tgpが正の数値範囲である所定の数値範囲に含まれるときは位相第2関数Fφ2を用いて重力トルク値Tgに対応する位相パラメータを算出する。
ところで、重力トルク値が0及びこの付近の領域において、減速機13の角度伝達に係る特性が大きく変化し、重力トルクが正の領域と、重力トルクが負の領域とで減速機13の角度伝達に係る特性が異なる場合がある。例えば、減速機13が波動歯車装置の場合、重力トルク値が0となる領域において、サーキュラスプラインの歯とフレクスプラインの歯とが当接する面がウェーブジェネレータの回転方向において反対側に切り替わり、減速機13の角度伝達に係る特性が大きく変化する場合がある。
しかし、本実施の形態において、ロボットシステム100は、角度伝達誤差を同定する同定部46が重力トルク値が正の値をとるときと負の値をとるときとで補償値を算出する基礎となる関数を切り替えるよう構成されている。したがって、重力トルク値が正の値をとるときと負の値をとるときとで減速機13の角度伝達誤差に係る特性が大きく変化する場合であっても角度伝達誤差の補償をより精確におこなうことができる。
また、重力トルク値が0を跨ぐ区間においては、振幅第1関数FA1及び振幅第2関数FA2を振幅第3関数FA3が緩やかに接続し、位相第1関数Fφ1及び位相第2関数Fφ2を位相第3関数Fφ3が緩やかに接続しているので、減速機13の角度伝達誤差に係る特性が急激に変化する区間(重力トルク値が0を跨ぐ区間)において、角度伝達誤差の補償を円滑におこなうことができる。
以上に説明したように、本発明のロボットシステム100は、角度伝達誤差をモデル化した角度伝達誤差同定関数のパラメータ(振幅パラメータ及び位相パラメータ)と関節に作用する重力トルクとの相関関係を踏まえて角度伝達誤差同定関数F2のパラメータを設定し、角度伝達誤差を同定するよう構成されているので、関節に作用する重力トルクが変化する場合において、角度伝達誤差を精確に同定することができる。これによって、角度伝達誤差を精確に補償することできる。
また、重力トルク値が正の値をとるときと負の値をとるときとで角度伝達誤差同定関数F2のパラメータ(振幅パラメータ及び位相パラメータ)を算出する基礎となる関数を切り替える。これによって、角度伝達誤差の同定を更に精確におこなうことができる。
<変形例>
なお、上記実施の形態において、微小領域振幅/位相算出部42は、角度伝達誤差から一つの周波数成分を抽出し、これに基づいて算出した角度伝達誤差同定関数を用いて角度伝達誤差を同定しているがこれに限られるものではない。これに代えて、微小領域振幅/位相算出部42は、角度伝達誤差から複数の周波数成分を抽出し、これらに基づいて算出した各周波数成分に対応する角度伝達誤差同定関数の総和を用いて角度伝達誤差を同定してもよい。
上記説明から、当業者にとっては、本発明の多くの改良や他の実施形態が明らかである。従って、上記説明は、例示としてのみ解釈されるべきであり、本発明を実行する最良の態様を当業者に教示する目的で提供されたものである。本発明の精神を逸脱することなく、その構造及び/又は機能の詳細を実質的に変更できる。
1 ロボット
2 制御装置
4 ロボットアーム
7 関節
9 関節駆動部
11 モータ
12 エンコーダ
13 減速機
46 同定部
100 ロボットシステム

Claims (8)

  1. 減速機を介してモータによって回転駆動される関節を含むロボットアームの前記減速機の角度伝達誤差を同定する角度伝達誤差同定システムであって、
    振幅パラメータ及び位相パラメータを有する前記減速機の角度伝達誤差をモデル化した周期関数である角度伝達誤差同定関数の前記振幅パラメータ及び前記位相パラメータを算出し、前記角度伝達誤差同定関数を用いて前記角度伝達誤差を同定する同定部を備え、
    前記同定部は、前記減速機の角度伝達誤差の同定時に前記関節に作用する重力トルク値である重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が負の値をとる動作領域における前記振幅パラメータと前記関節に作用する重力トルク値との相関関係を表した振幅第1関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が負の値をとる動作領域における前記位相パラメータと前記関節に作用する重力トルク値との相関関係を表した位相第1関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が正の値をとる動作領域における前記振幅パラメータと前記関節に作用する重力トルク値との相関関係を表した振幅第2関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が正の値をとる動作領域における前記位相パラメータと前記関節に作用する重力トルク値との相関関係を表した位相第2関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出する、角度伝達誤差同定システム。
  2. 前記関節の動作領域に含まれる前記関節の回動方向に並ぶ複数の微小動作領域のそれぞれについて、該微小動作領域の前記減速機の角度伝達誤差の所定の周波数成分の振幅である微小動作領域振幅及び位相である微小動作領域位相を算出する微小領域振幅/位相算出部と、
    複数の前記微小動作領域のそれぞれについて、対応する該微小動作領域において前記関節に作用する重力トルク値である対応重力トルク値を算出する微小領域重力トルク値算出部と、
    前記微小動作領域振幅と前記対応重力トルク値との相関関係を表した前記振幅第1関数及び前記振幅第2関数を算出するトルク−振幅相関関係算出部であって、前記振幅第1関数は前記微小領域振幅/位相算出部が算出した複数の前記微小動作領域のうち前記対応重力トルク値が負の値をとる前記微小動作領域における前記微小動作領域振幅及び前記対応重力トルク値に基づき算出される関数であり、前記振幅第2関数は前記微小領域振幅/位相算出部が算出した複数の前記微小動作領域のうち前記対応重力トルク値が正の値をとる前記微小動作領域における前記微小動作領域振幅及び前記対応重力トルク値に基づき算出される関数である、トルク−振幅相関関係算出部と、
    前記位相第1関数及び前記位相第2関数を算出するトルク−位相相関関係算出部であって、前記位相第1関数は前記微小領域振幅/位相算出部が算出した複数の前記微小動作領域のうち前記対応重力トルク値が負の値をとる前記微小動作領域における前記微小動作領域位相及び前記対応重力トルク値に基づき算出される関数であり、前記位相第2関数は前記微小領域振幅/位相算出部が算出した複数の前記微小動作領域のうち前記対応重力トルク値が正の値をとる前記微小動作領域における前記微小動作領域位相及び前記対応重力トルク値に基づき算出される関数である、トルク−位相相関関係算出部と、を更に備える請求項1に記載の角度伝達誤差同定システム。
  3. 前記トルク−振幅相関関係算出部は、最小二乗法を用いて前記振幅第1関数及び前記振幅第2関数を一次関数で表し、
    前記トルク−位相相関関係算出部は、最小二乗法を用いて前記位相第1関数及び前記位相第2関数を一次関数で表す、請求項2に記載の角度伝達誤差同定システム。
  4. 前記トルク−位相相関関係算出部は、対応する前記微小動作領域の振幅パラメータの値で重みづけした重み付き最小二乗法を用いて前記位相第1関数及び前記位相第2関数を一次関数で表す、請求項3に記載の角度伝達誤差同定システム。
  5. 前記トルク−振幅相関関係算出部は、振幅第3関数を更に算出し、前記振幅第3関数は前記振幅第1関数における重力トルク値が負の値をとる第1所定値に対応する振幅値と、前記振幅第2関数における重力トルク値が正の値をとる第2所定値に対応する振幅値とを通る関数であり、
    前記トルク−位相相関関係算出部は、位相第3関数を更に算出し、前記位相第3関数は前記位相第1関数における重力トルク値が負の値をとる第3所定値に対応する位相値と、前記位相第2関数における重力トルク値が正の値をとる第4所定値に対応する位相値とを通る関数であり、
    前記同定部は、前記重力トルク現在値が前記第1所定値よりも小さいときは前記振幅第1関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が前記第1所定値よりも大きく且つ前記第2所定値よりも小さいときは前記振幅第3関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が前記第2所定値よりも大きいときは前記振幅第2関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が前記第3所定値よりも小さいときは前記位相第1関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出し、且つ前記重力トルク現在値が前記第3所定値よりも大きく且つ前記第4所定値よりも小さいときは前記位相第3関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出し、且つ前記重力トルク現在値が前記第4所定値よりも大きいときは前記位相第2関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出する、請求項2乃至4の何れかに記載の角度伝達誤差同定システム。
  6. 前記トルク−振幅相関関係算出部は、前記振幅第3関数を一次関数で表し、
    前記トルク−位相相関関係算出部は、前記位相第3関数を一次関数で表す、請求項5に記載の角度伝達誤差同定システム。
  7. 減速機を介してモータによって回転駆動される関節を含むロボットアームの前記減速機の角度伝達誤差を同定する角度伝達誤差同定方法であって、
    前記関節の動作領域に含まれる前記関節の回動方向に並ぶ複数の微小動作領域のそれぞれについて、該微小動作領域の前記減速機の角度伝達誤差の所定の周波数成分の振幅である微小動作領域振幅及び位相である微小動作領域位相を算出する微小領域振幅/位相算出ステップと、
    複数の前記微小動作領域のそれぞれについて、対応する該微小動作領域において前記関節に作用する重力トルク値である対応重力トルク値を算出する微小領域重力トルク値算出ステップと、
    前記微小動作領域振幅と前記対応重力トルク値との相関関係を表した振幅第1関数及び振幅第2関数を算出するトルク−振幅相関関係算出ステップであって、前記振幅第1関数は前記微小領域振幅/位相算出ステップにおいて算出した複数の前記微小動作領域のうち前記対応重力トルク値が負の値をとる前記微小動作領域における前記微小動作領域振幅及び前記対応重力トルク値に基づき算出される関数であり、前記振幅第2関数は前記微小領域振幅/位相算出ステップにおいて算出した複数の前記微小動作領域のうち前記対応重力トルク値が正の値をとる前記微小動作領域における前記微小動作領域振幅及び前記対応重力トルク値に基づき算出される関数である、トルク−振幅相関関係算出ステップと、
    前記微小動作領域位相と前記対応重力トルク値との相関関係を表した位相第1関数及び位相第2関数を算出するトルク−位相相関関係算出ステップであって、前記位相第1関数は前記微小領域振幅/位相算出ステップにおいて算出した複数の前記微小動作領域の位相のうち前記対応重力トルク値が負の値をとる前記微小動作領域における前記微小動作領域位相及び前記対応重力トルク値に基づき算出される関数であり、前記位相第2関数は前記微小領域振幅/位相算出ステップにおいて算出した複数の前記微小動作領域の位相のうち前記対応重力トルク値が正の値をとる前記微小動作領域における前記微小動作領域位相及び前記対応重力トルク値に基づき算出される関数である、トルク−位相相関関係算出ステップと、
    振幅パラメータ及び位相パラメータを有する前記減速機の角度伝達誤差をモデル化した角度伝達誤差同定関数の前記振幅パラメータ及び前記位相パラメータを算出し、前記角度伝達誤差同定関数を用いて前記角度伝達誤差を同定する同定ステップであって、前記減速機の角度伝達誤差の同定時に前記関節に作用する重力トルク値である重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記振幅第1関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記位相第1関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記振幅第2関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記位相第2関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出する同定ステップと、を備える角度伝達誤差同定方法。
  8. 減速機を介してモータによって回転駆動される関節を含むロボットアームの前記減速機の角度伝達誤差を同定する角度伝達誤差同定システムを含むロボットシステムであって、
    前記角度伝達誤差同定システムは、振幅パラメータ及び位相パラメータを有する前記減速機の角度伝達誤差をモデル化した周期関数である角度伝達誤差同定関数の前記振幅パラメータ及び前記位相パラメータを算出し、前記角度伝達誤差同定関数を用いて前記角度伝達誤差を同定する同定部を備え、
    前記同定部は、前記減速機の角度伝達誤差の同定時に前記関節に作用する重力トルク値である重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が負の値をとる動作領域における前記振幅パラメータと前記関節に作用する重力トルク値との相関関係を表した振幅第1関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が負の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が負の値をとる動作領域における前記位相パラメータと前記関節に作用する重力トルク値との相関関係を表した位相第1関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が正の値をとる動作領域における前記振幅パラメータと前記関節に作用する重力トルク値との相関関係を表した振幅第2関数を用いて前記重力トルク現在値に対応する前記振幅パラメータを算出し、且つ前記重力トルク現在値が正の数値範囲である所定の数値範囲に含まれるときは前記関節の動作領域のうち前記関節に作用する重力トルク値が正の値をとる動作領域における前記位相パラメータと前記関節に作用する重力トルク値との相関関係を表した位相第2関数を用いて前記重力トルク現在値に対応する前記位相パラメータを算出する、ロボットシステム。
JP2017111011A 2017-06-05 2017-06-05 角度伝達誤差同定システム、角度伝達誤差同定方法及びロボットシステム Active JP6867885B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2017111011A JP6867885B2 (ja) 2017-06-05 2017-06-05 角度伝達誤差同定システム、角度伝達誤差同定方法及びロボットシステム
EP18812588.4A EP3636396B1 (en) 2017-06-05 2018-06-04 Angular transmission error identification system, angular transmission error identification method, and robot system
PCT/JP2018/021387 WO2018225689A1 (ja) 2017-06-05 2018-06-04 角度伝達誤差同定システム、角度伝達誤差同定方法及びロボットシステム
CN201880036822.1A CN110709213B (zh) 2017-06-05 2018-06-04 角度传递误差辨识系统、角度传递误差辨识方法以及机器人系统
US16/619,890 US11305425B2 (en) 2017-06-05 2018-06-04 Angular transmission error identification system, angular transmission error identification method, and robot system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017111011A JP6867885B2 (ja) 2017-06-05 2017-06-05 角度伝達誤差同定システム、角度伝達誤差同定方法及びロボットシステム

Publications (2)

Publication Number Publication Date
JP2018202554A JP2018202554A (ja) 2018-12-27
JP6867885B2 true JP6867885B2 (ja) 2021-05-12

Family

ID=64567396

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017111011A Active JP6867885B2 (ja) 2017-06-05 2017-06-05 角度伝達誤差同定システム、角度伝達誤差同定方法及びロボットシステム

Country Status (5)

Country Link
US (1) US11305425B2 (ja)
EP (1) EP3636396B1 (ja)
JP (1) JP6867885B2 (ja)
CN (1) CN110709213B (ja)
WO (1) WO2018225689A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113119130B (zh) * 2021-04-28 2022-04-15 浙江大学 一种面向工业机器人的几何误差辨识方法
CN114115013A (zh) * 2021-11-19 2022-03-01 深圳市汇川技术股份有限公司 机器人电机的控制方法、终端设备以及存储介质
WO2023222207A1 (en) * 2022-05-17 2023-11-23 Abb Schweiz Ag Reducing kinematic error

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2577713B2 (ja) * 1986-12-17 1997-02-05 株式会社神戸製鋼所 ロボツト用制御装置
JP3239789B2 (ja) * 1997-02-21 2001-12-17 松下電器産業株式会社 制御装置および制御方法
CN1290679C (zh) * 2004-07-08 2006-12-20 北京理工大学 机器人关节的双闭环控制系统
JP4305340B2 (ja) * 2004-09-08 2009-07-29 パナソニック株式会社 ロボットに取り付けられた負荷の質量と重心位置の算出方法
JP4858229B2 (ja) * 2007-02-28 2012-01-18 パナソニック株式会社 ロボットに取り付けられた負荷の質量と重心位置の算出方法
JP4998159B2 (ja) * 2007-09-05 2012-08-15 パナソニック株式会社 多関節型ロボットの制御方法
JP4835959B2 (ja) * 2009-03-30 2011-12-14 アイシン・エィ・ダブリュ株式会社 回転電機制御装置
JP4676551B1 (ja) * 2009-12-22 2011-04-27 ファナック株式会社 コギングトルク補正量算出機能を有するモータ制御装置
JP2011212823A (ja) * 2010-04-02 2011-10-27 Yaskawa Electric Corp ロボットアーム位置補正パラメータの同定装置及び方法、並びにそれを用いたロボットコントローラ及びロボット制御方法
JP2011224662A (ja) * 2010-04-15 2011-11-10 Yaskawa Electric Corp ロボット制御装置の補正パラメータ同定装置
WO2013061362A1 (ja) * 2011-10-24 2013-05-02 株式会社ハーモニック・ドライブ・システムズ 波動歯車装置を備えたアクチュエータの位置決め制御システム
JP2014136260A (ja) * 2013-01-15 2014-07-28 Daihen Corp 制御装置
JP6374274B2 (ja) * 2014-09-04 2018-08-15 国立大学法人長岡技術科学大学 制御装置及び減速機システム
JP6610477B2 (ja) * 2016-03-30 2019-11-27 日本電産株式会社 回転アクチュエータおよびロボット

Also Published As

Publication number Publication date
EP3636396A4 (en) 2021-03-03
EP3636396A1 (en) 2020-04-15
US11305425B2 (en) 2022-04-19
CN110709213A (zh) 2020-01-17
EP3636396B1 (en) 2022-09-28
US20210146536A1 (en) 2021-05-20
JP2018202554A (ja) 2018-12-27
WO2018225689A1 (ja) 2018-12-13
CN110709213B (zh) 2022-06-21

Similar Documents

Publication Publication Date Title
JP6867885B2 (ja) 角度伝達誤差同定システム、角度伝達誤差同定方法及びロボットシステム
JP5895628B2 (ja) ロボットの制御方法及びロボット制御装置、並びにロボット制御システム
JP5482664B2 (ja) ロボットハンド
CN110662636B (zh) 减速机角度传递误差辨识系统和减速机角度传递误差辨识方法
JP5916583B2 (ja) 多関節ロボットのウィービング制御装置
JP5897644B2 (ja) ロボットの制御装置
US11559891B2 (en) Robot system and method for controlling robot system
JP6305283B2 (ja) 動力装置の制御システム
US10919150B2 (en) Motor control system, control method for motor control system, and robot system
WO2013031465A1 (ja) 制御方法及び制御装置
JP6021478B2 (ja) ロボット制御装置、及びロボット制御方法
JP2016032326A (ja) モータ制御装置、ロボット装置、モータ制御方法、プログラム及び記録媒体
US11826909B2 (en) Driving mechanism, robot apparatus, method for controlling driving mechanism, method of manufacturing an article using robot arm, and storage medium
JP6845103B2 (ja) 制御システム、制御方法、及び制御プログラム
JP5245384B2 (ja) ロボット制御装置
JP5633268B2 (ja) ロボットの制御装置
JP2015021902A (ja) 動力伝達機の特性測定方法
JP7121599B2 (ja) ロボットシステム及びロボットシステムの制御方法
JP2019107708A (ja) ロボット

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200512

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210409

R150 Certificate of patent or registration of utility model

Ref document number: 6867885

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250