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

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

Info

Publication number
JP2013146793A
JP2013146793A JP2012006775A JP2012006775A JP2013146793A JP 2013146793 A JP2013146793 A JP 2013146793A JP 2012006775 A JP2012006775 A JP 2012006775A JP 2012006775 A JP2012006775 A JP 2012006775A JP 2013146793 A JP2013146793 A JP 2013146793A
Authority
JP
Japan
Prior art keywords
robot
displacement
force
value
control
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
JP2012006775A
Other languages
English (en)
Other versions
JP5966372B2 (ja
JP2013146793A5 (ja
Inventor
Mitsuhiro Inazumi
満広 稲積
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 JP2012006775A priority Critical patent/JP5966372B2/ja
Priority to CN201310014616.XA priority patent/CN103203756B/zh
Priority to EP13151284.0A priority patent/EP2617533A1/en
Priority to US13/742,653 priority patent/US9020642B2/en
Publication of JP2013146793A publication Critical patent/JP2013146793A/ja
Publication of JP2013146793A5 publication Critical patent/JP2013146793A5/ja
Priority to US14/672,668 priority patent/US9517562B2/en
Application granted granted Critical
Publication of JP5966372B2 publication Critical patent/JP5966372B2/ja
Expired - Fee Related 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/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
    • 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/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1605Simulation of manipulator lay-out, design, modelling of manipulator
    • 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/1648Programme controls characterised by the control loop non-linear control combined or not with linear 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/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/408Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4086Coordinate conversions; Other special calculations
    • 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/39343Force based impedance 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/41Servomotor, servo controller till figures
    • G05B2219/41124Nonlinear compensation
    • 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/42Servomotor, servo controller kind till VSS
    • G05B2219/42092Position and force control loop together
    • 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/42Servomotor, servo controller kind till VSS
    • G05B2219/42267Stability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • G06F17/13Differential equations
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller
    • Y10S901/09Closed loop, sensor feedback controls arm movement

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Manipulator (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Numerical Control (AREA)
  • Operations Research (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)

Abstract

【課題】 非線形インピーダンス制御を行い、運動方程式の解の安定性の検証やハードウェアー化を容易にすることができるロボット制御装置等の提供。
【解決手段】 ロボット制御装置は、力覚センサー10から取得される検出センサー値に基づき、ロボット100の目標軌道の補正値を出力する力制御部20と、目標軌道に対して補正値に基づく補正処理を行って目標値を求め、求めた目標値を出力する目標値出力部60と、目標値に基づき、ロボット100のフィードバック制御を行うロボット制御部80を含む。力制御部20は、力制御における常微分方程式の解を、変換処理前の補正値として求めるインピーダンス処理部21と、インピーダンス処理部21から取得される変換処理前の補正値に対して非線形変換処理を行うことにより変換処理後の補正値を求め、求めた変換処理後の補正値を出力する非線形変換部29を含む。
【選択図】図13

Description

本発明は、ロボット制御装置、ロボットシステム及びロボット制御方法等に関係する。
マニピュレーター等のロボットを用いて行う作業において、種々の拘束条件、例えば物体との接触を伴う作業がある。このような場合においては、位置の制御に加えて、力の制御が要求される場合が多い。例えば、物体の表面をなぞる場合、1つの物体を他の物体に嵌め合わせる場合、柔軟物を破壊しないように把持する場合などにおいては、単なる位置の制御に加えて、物体からの反力に対応した動きが必要となる。
ロボットにおいて力制御を行う代表的な手法としては、インピーダンス制御と呼ばれる手法がある。インピーダンス制御とは、ロボットを、その実際の質量や粘性特性や弾性特性に関わらず、あたかも作業に適したそれらの値を持つかのように動作させる制御手法である。これは、ロボットに取り付けられた力覚センサーなどから得られる力情報に基づいて運動方程式を解き、ロボットをその解に従って動作させる制御手法である。この運動方程式を適切に設定することにより、マニピュレーター等のロボットを、あたかも所定の質量、粘性、弾性を持っているかのごとく動作させることが可能になる。
なお、インピーダンス制御においては、ロボット等に所望の特性(質量・粘性特性・弾性特性)を持つかのように振る舞わせるために、当該特性に対応する係数パラメーターを用いた常微分方程式(2階の線形常微分方程式である運動方程式)を解く必要がある。常微分方程式を解く手法は種々知られているが、Runge−Kutta法やNewton法等が用いられる。
このようなインピーダンス制御や力制御に関する従来技術としては、特許文献1又は特許文献2に開示される技術が知られている。
特開平10−128685号公報 特開2011−8360号公報
インピーダンス制御においては、例えば仮想的なバネの伸び縮み(仮想変位)として力を指定する。
しかし、大きな力を必要とする場合、大きな仮想変位を指定すると、その力に対する外力が無くなった時に、マニピュレーターは指定された仮想変位に対応する非常に大きな動きをする。このような大きな動きは、実用上、安全上、非常に問題となる。
また、大きな仮想変位を指定することにより、原理的には非常に大きな力(外力)を発生させることが可能であるが、発生させた力によりロボットの作業対象物であるワークを破壊してしまう恐れがあるなどの問題もある。
これらは仮想変位に対して線形な出力をするインピーダンス制御を行うために生じる問題である。前述した特許文献1及び特許文献2では、仮想変位に対して非線形な出力をするインピーダンス制御を行う手法を開示している。
まず、特許文献1には、力制御における運動方程式の弾性項を仮想変位に対して非線形な関数とすることにより、非線形インピーダンス制御を行う手法が開示されている。
しかし、この技術においては、力制御に用いる運動方程式が安定であるかどうかの判断が非常に困難であるという問題がある。
特許文献2には、2つ(複数)の制御機構と2つの制御パラメーターを持ち、制御状態空間の中にスライディング面と呼ばれる超平面を想定し、制御状態がその超平面で分割される空間のどちらにあるかによって、2つ(複数)の制御機構と2つの制御パラメーターを切り替え、それによって、制御状態をスライディング面上に拘束し、制御系の安定性、収束性を保証する手法が開示されている。
しかし、この技術においては、スライディングモード制御系の設計が困難であり、実用性に欠けるという問題があった。
本発明の幾つかの態様によれば、非線形インピーダンス制御を行い、運動方程式の解の安定性の検証やハードウェアー化を容易にするロボット制御装置、ロボットシステム及びロボット制御方法等を提供することができる。
本発明の一態様は、力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正値を出力する力制御部と、前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力する目標値出力部と、前記目標値に基づいて、前記ロボットのフィードバック制御を行うロボット制御部と、を含み、前記力制御部は、力制御における常微分方程式の解を、変換処理前の前記補正値として求めるインピーダンス処理部と、前記インピーダンス処理部から取得される前記変換処理前の前記補正値に対して非線形変換処理を行うことにより前記変換処理後の前記補正値を求め、求めた前記変換処理後の前記補正値を出力する非線形変換部と、を含むロボット制御装置に関係する。
本発明の一態様では、線形インピーダンス処理の出力値に対して、フィルター処理を行うことにより、非線形インピーダンス制御を実現することができる。また、線形なシステムの組み合わせを用いることにより、運動方程式の解の安定性の検証を行うことが可能となる。
また、本発明の他の態様では、力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正値を出力する力制御部と、前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力する目標値出力部と、前記目標値に基づいて、前記ロボットのフィードバック制御を行うロボット制御部と、を含み、前記力制御部は、前記力覚センサーから取得される前記検出センサー値に対して非線形変換処理を行うことにより、変換処理後の前記検出センサー値を求める非線形変換部と、前記非線形変換部から取得される前記変換処理後の前記検出センサー値に基づいて、力制御における常微分方程式の解を前記補正値として求めるインピーダンス処理部と、を含むロボット制御装置に関係する。
本発明の他の態様では、線形インピーダンス処理の入力値に対して、フィルター処理を行うことにより、非線形インピーダンス制御を実現することができる。また、線形なシステムの組み合わせを用いることにより、運動方程式の解の安定性の検証を行うことが可能となる。
また、本発明の一態様では、前記補正値に対応する前記ロボットについての仮想的な変位が第1の変位である場合の外力に対する変位変化量を第1の変位変化量とし、前記仮想的な変位が第2の変位である場合の前記変位変化量を第2の変位変化量とする場合に、前記力制御部は、前記仮想的な変位が前記第2の変位よりも大きい前記第1の変位である場合に、前記第1の変位変化量が前記第2の変位変化量よりも大きくなるように前記非線形変換処理を行い、前記補正値を出力してもよい。
これにより、例えば仮想的な変位の絶対値が大きくなればなるほど、変位変化量が大きくなるような力制御を行うこと等が可能になる。
また、本発明の一態様では、前記補正値に対応する前記ロボットについての仮想的な変位が第1の変位である場合の外力に対する変位変化量を第1の変位変化量とし、前記仮想的な変位が第2の変位である場合の前記変位変化量を第2の変位変化量とする場合に、前記力制御部は、前記仮想的な変位が前記第2の変位よりも大きい前記第1の変位である場合に、前記第1の変位変化量が前記第2の変位変化量よりも小さくなるように前記非線形変換処理を行い、前記補正値を出力してもよい。
これにより、例えば仮想的な変位の絶対値が大きくなればなるほど、変位変化量が小さくなるような力制御を行うこと等が可能になる。
また、本発明の一態様では、前記力制御部は、前記補正値に対応する前記ロボットについての前記仮想的な変位の方向が第1の方向である場合には、第1の力制御を行い、前記仮想的な変位の方向が前記第1の方向と反対方向である第2の方向である場合には、第1の力制御と異なる第2の力制御を行ってもよい。
これにより、仮想的な変位の方向に基づいて、実行する力制御を切り替えること等が可能になる。
また、本発明の一態様では、前記非線形変換部は、前記インピーダンス処理部から取得される前記変換処理前の前記補正値又は前記力覚センサーから取得される前記検出センサー値に対して、シグモイド関数を用いて前記非線形変換処理を行ってもよい。
これにより、シグモイド関数を用いて非線形変換処理を行うこと等が可能になる。
また、本発明の一態様では、前記インピーダンス処理部は、力制御における前記常微分方程式の解を前記補正値として求めるデジタルフィルター部を有してもよい。
これにより、常微分方程式の解を求めるという力制御において必要な処理を、デジタルフィルターを用いて行うことが可能になるため、ハードウェアー化を容易にすること等が可能となる。
また、本発明の一態様では、前記力制御部は、前記補正値を求める前記デジタルフィルター部の動作の安定度を判定し、前記デジタルフィルター部の前記動作が安定であると判定された場合に、力制御における前記常微分方程式の解を前記補正値として求めてもよい。
これにより、デジタルフィルターの安定性を判定すること等が可能になる。
また、本発明の一態様では、前記常微分方程式は、仮想質量項、仮想粘性項及び仮想弾性項を係数パラメーターとする運動方程式であってもよい。
これにより、運動方程式の解を求めること等が可能になる。
また、本発明の他の態様では、前記ロボット制御装置と、前記目標値出力部から取得される前記目標値に基づいて、各部を動作させる前記ロボットと、を含むロボットシステムに関係する。
これにより、ロボット制御装置にとどまらず、本実施形態の処理を実行するロボットシステムを実現すること等が可能になる。
また、本発明の他の態様では、力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正処理に用いる変換処理前の前記補正値として、力制御における常微分方程式の解を求め、求めた前記変換処理前の補正値に対して非線形変換処理を行うことにより前記変換処理後の前記補正値を求め、求めた前記変換処理後の前記補正値に基づいて、前記ロボットの前記目標軌道に対する前記補正処理を行って目標値を求め、求めた前記目標値に基づいて、前記ロボットのフィードバック制御を行うことを特徴とするロボット制御方法に関係する。
また、本発明の他の態様では、力覚センサーから取得される検出センサー値に対して非線形変換処理を行うことにより、ロボットの目標軌道の補正処理に用いる変換処理後の前記検出センサー値を求め、求めた前記変換処理後の前記検出センサー値に基づいて、力制御における常微分方程式の解を前記補正値として求め、求めた前記補正値に基づいて、前記ロボットの前記目標軌道に対する前記補正処理を行って目標値を求め、求めた前記目標値に基づいて、前記ロボットのフィードバック制御を行うことを特徴とするロボット制御方法に関係する。
また、本発明の他の態様は、力覚センサーを有するロボットの制御を行うロボット制御方法であって、前記力覚センサーに加えられた外力の大きさと、前記外力が加えられた時の前記ロボットの変位の大きさとの関係が非線形になる力制御を行うことを特徴とするロボット制御方法に関係する。
ロボット制御装置及びロボットシステムの基本構成例。 図2(A)、図2(B)は、ロボットシステムの一例。 図3(A)〜図3(C)は、力制御についての説明図。 図4(A)、図4(B)は、コンプライアンス制御についての説明図。 図5(A)、図5(B)は、インピーダンス制御についての説明図。 図6(A)〜図6(C)は、線形インピーダンス制御の問題点の説明図。 力覚フィードバックを含まない場合の制御系の基本構成例。 力覚フィードバックを含む場合の制御系の基本構成例。 運動方程式の解を求める際のデジタルフィルターの基本形。 図10(A)〜図10(C)は、系の安定性判定手法の説明図。 デジタルフィルターを用いたロボット制御装置及びロボットシステムの基本構成例。 図12(A)〜図12(C)は、非線形インピーダンス制御の説明図。 第1の実施形態の詳細なシステム構成例。 第1の実施形態のデジタルフィルター。 第1の実施形態のインピーダンスデジタルフィルター処理を説明するフローチャート。 正弦波外力に対する線形インピーダンス制御応答例。 正弦波外力に対する非線形インピーダンス制御応答例。 正弦波外力に対する非線形・非対称インピーダンス制御応答例。 第2の実施形態の詳細なシステム構成例。 第2の実施形態のデジタルフィルター。 第2の実施形態のインピーダンスデジタルフィルター処理を説明するフローチャート。 図22(A)、図22(B)は、目標軌道、補正値、目標値を求める具体的なシステム
以下、本実施形態について説明する。まず、本実施形態の概要を説明する。次に、第1の実施形態と第2の実施形態について、それぞれシステム構成例と詳細な処理について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.概要
1.1 基本構成
本実施形態のロボット制御装置(マニピュレーター制御装置)及びこれを含むロボットシステムの構成例を図1に示す。なお、本実施形態のロボット制御装置、ロボットシステムは図1の構成には限定されず、その一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。
本実施形態のロボット制御装置は、力制御部20、目標値出力部60、ロボット制御部80を含む。また本実施形態のロボットシステムは、このロボット制御装置と、ロボット100(力覚センサー10)により構成される。
目標値出力部60は、ロボット(狭義にはマニピュレーター)のフィードバック制御の目標値を出力する。この目標値に基づいてロボット100のフィードバック制御が実現される。多関節ロボット等を例に取れば、この目標値は、ロボットの関節角情報などである。ロボットの関節角情報は、例えばロボットのアームのリンク機構における各関節の角度(ジョイント軸とジョイント軸のなす角度)を表す情報である。
目標値出力部60は、軌道生成部62とインバースキネマティクス処理部64を含むことができる。軌道生成部62は、ロボットの軌道情報を出力する。軌道情報は、ロボットのエンドエフェクター部(エンドポイント)の位置情報(x,y,z)と、各座標軸回りでの回転角度情報(u,v,w)を含むことができる。インバースキネマティクス処理部64は、軌道生成部62からの軌道情報に基づいてインバースキネマティクス処理を行い、例えばロボットの関節角情報を目標値として出力する。インバースキネマティクス処理は、関節を有するロボットの動きを計算する処理であり、ロボットのエンドエフェクター部の位置姿勢などから関節角情報等を逆運動学により計算する処理である。
力制御部20(狭義にはインピーダンス制御部)は、力覚センサー10からのセンサー情報に基づいて力制御(力覚制御)を行って、目標値の補正値を出力する。更に具体的には、力制御部20(インピーダンス制御部)は、力覚センサー10からのセンサー情報(力情報、モーメント情報)に基づいてインピーダンス制御(或いはコンプライアンス制御)を行う。力制御は、例えば、従来の位置制御に対して、力のフィードバックが加わった制御である。インピーダンス制御は、外力に対するエンドエフェクター部(手先)の変位の生じやすさ(機械インピーダンス)を、制御により望ましい状態にする手法である。具体的には、ロボットのエンドエフェクター部に質量と粘性係数と弾性要素が接続されるモデルにおいて、目標として設定した質量と粘性係数と弾性係数で物体に接触するようにする制御である。また力覚センサー10は、ロボット100が出している力の反力として受けている力やモーメントを検出するセンサーである。この力覚センサー10は、通常、ロボット100のアームの手首部分に取り付けられ、検出された力やモーメントは、センサー情報として、各種の力制御(インピーダンス制御)に用いられる。
ロボット制御部80は、目標値出力部60からの目標値に基づいて、ロボットのフィードバック制御を行う。具体的には、力制御部20からの補正値に基づく補正処理の結果出力された目標値に基づいて、ロボットのフィードバック制御を行う。例えば目標値と、ロボット100からのフィードバック信号に基づいて、ロボット100のフィードバック制御を行う。例えばロボット制御部80は、複数の駆動制御部82―1〜82―N(狭義にはモーター制御部)を含み、ロボット100が有する駆動部102―1〜102―Nに対して、その制御信号を出力する。ここで駆動部102―1〜102―Nは、ロボット100の各関節を動かすための駆動機構であり、例えばモーター等により実現される。
図2(A)に本実施形態のロボット制御装置を含むロボットシステムの例を示す。このロボットシステムは、制御装置300(情報処理装置)とロボット310(図1のロボット100)とを含む。制御装置300はロボット310の制御処理を行う。具体的には、動作シーケンス情報(シナリオ情報)に基づいてロボット310を動作させる制御を行う。ロボット310は、アーム320及びハンド(把持部)330を有する。そして制御装置300からの動作指示にしたがって動作する。例えば、図示しないパレットに載せられたワークを把持したり、移動したりするなどの動作を行う。また、図示しない撮像装置で取得された撮像画像情報に基づいて、ロボットの姿勢やワークの位置などの情報が検出され、検出された情報が制御装置300に送られる。
本実施形態のロボット制御装置は、例えば図2(A)の制御装置300に設けられ、制御装置300のハードウェアーやプログラムによりロボット制御装置が実現される。そして本実施形態のロボット制御装置によれば、制御装置300などの制御ハードウェアーに対する性能要求を低減できると共に、ロボット310を高い応答性で動作させることが可能になる。
また、図2(A)では、ロボット本体310(ロボット)と制御装置300(ロボット制御装置)とが別体に構成されているが、本実施形態のロボットは図2(A)の構成に限定されず、図2(B)のようにロボット本体310と制御装置300とが一体に構成されていてもよい。具体的には図2(B)に示したように、ロボットはロボット本体310(アーム320及びハンド330を有する)、及びロボット本体310を支えるベースユニット部を含み、当該ベースユニット部に制御装置300が格納される。図2(B)のロボットでは、ベースユニット部に車輪等が設けられ、ロボット全体が移動可能な構成となっている。なお、図2(A)は単腕型の例であるが、ロボットは図2(B)に示すように双腕型等の多腕型のロボットであってもよい。なお、ロボットの移動は人手で行われてもよいし、車輪を駆動するモーターを設け、当該モーターを制御装置300により制御することで行なってもよい。
1.2 力制御・インピーダンス制御
次に、力制御、インピーダンス制御(コンプライアンス制御)の概要について説明する。
図3(A)は、ロボットの左のアームAL、右のアームARで物体OBを挟んで移動している様子を示している。例えば、位置制御だけでは、物体を落としたり、破壊したりしてしまうおそれがある。力制御によれば、柔軟な物体や脆い物体を、図3(A)のように両側から適切な力で挟んで移動させることが可能になる。
また、力制御によれば、図3(B)に示すように、不確実性のある物体の表面SFをアームAM等でなぞることが可能になる。このような制御は位置制御だけでは実現不能である。また、力制御によれば、図3(C)に示すように、粗い位置決めの後に、探って位置合わせをして、物体OBを穴部HLにはめ込むことも可能になる。
しかしながら、バネなどの実際の機械部品による力制御では、用途が限られるという問題がある。また、このような機械部品による力制御では、特性の動的な切り替えが困難である。
一方、モーターのトルクを制御するトルク制御は簡単であるが、位置精度が悪くなるという問題がある。また、異常時に衝突などの問題が生じる。例えば図3(A)において、異常事態が起きて、物体OBを落としてしまった場合に、トルク制御では、釣合うべき反力が無くなるため、左右のアームAL、ARが衝突してしまうなどの問題が生じる。
これに対して、インピーダンス制御(コンプライアンス制御)は、制御が複雑であるものの、汎用性や安全性が高いという利点がある。
図4(A)、図4(B)は、インピーダンス制御の1つであるコンプライアンス制御を説明する図である。コンプライアンスはバネ定数の逆数を意味し、バネ定数が硬さを表すのに対して、コンプライアンスは柔らかさを意味する。ロボットと環境との間に相互作用が働くときに、機械的柔軟性であるコンプライアンスを与える制御をコンプライアンス制御と呼ぶ。
例えば図4(A)では、ロボットのアームAMには力覚センサーSEが取り付けられている。このロボットのアームAMは、力覚センサーSEで得られたセンサー情報(力・トルク情報)に応じて姿勢が変わるようにプログラムされている。具体的には、図4(A)のA1に示す仮想的なバネが、あたかもアームAMの先端に取り付けられているかのようにロボットを制御する。
例えばA1に示すバネのバネ定数が100Kg/mであったとする。これを図4(B)のA2に示すように5Kgの力で押せば、A3に示すようにバネは5cmだけ縮む。逆に言えば、5cmだけ縮んでいれば、5Kgの力で押されているといえる。つまり、力情報と位置情報とが線形に対応づけられている。
コンプライアンス制御では、このA1に示す仮想的なバネがアームAMの先端に取り付けられているかのような制御が行われる。具体的には、ロボットは、力覚センサーSEの入力に応答して動作し、A2に示す5Kgの加重に対して、A3に示すように5cmだけ後退するように制御され、力情報に対応して位置情報が変化するように制御される。
このような単純なコンプライアンス制御では時間項を含まないが、時間項を含み、その2次の項までを考慮した制御が、インピーダンス制御である。具体的には、2次の項は質量項であり、1次の項は粘性項であり、インピーダンス制御のモデルは下式(1)に示すような運動方程式で表すことができる。
Figure 2013146793
上式(1)において、mは質量、μは粘性係数、kは弾性係数、fは力、xは目標位置からの変位である。またxの1次微分、2次微分は、各々、速度、加速度に対応する。インピーダンス制御では、上式(1)の特性をアームの先端であるエンドエフェクター部に持たせるための制御系を構成する。即ち上式(1)で表される仮想質量、仮想粘性係数、仮想弾性係数を、あたかもアームの先端が持っているかのように制御を行う。
このように、インピーダンス制御は、アームの先端の質量に粘性要素と弾性要素が各方向に接続されるモデルにおいて、目的として設定された粘性係数と弾性係数で物体に接触するようにする制御である。
例えば図5(A)に示すように、ロボットのアームAL、ARで物体OBをつかんで、軌道TRに沿って移動させる制御を考える。この場合に、軌道TRLは、物体OBの左側の内側に設定された点PLが通る軌道であり、インピーダンス制御を想定して決定された仮想的な左手の軌道である。また軌道TRRは、物体OBの右側の内側に設定された点PRが通る軌道であり、インピーダンス制御を想定して決定された仮想的な右手の軌道である。この場合に、アームALは、アームALの先端と点PLの距離差に応じた力が発生するように制御される。またアームARは、アームARの先端と点PRの距離差に応じた力が発生するように制御される。このようにすれば、物体OBを柔らかくつかみながら移動させるインピーダンス制御を実現できる。そして、インピーダンス制御では、図5(A)のB1に示すように物体OBが落下する事態が生じたとしても、アームAL、ARは、B2、B3に示すように、その先端が点PL、PRの位置で止まるように制御される。即ち、仮想的な軌道が衝突軌道でなければ、アームAL、ARが衝突するのを防止できる。
また図5(B)のように、物体の表面SFをなぞるように制御する場合にも、インピーダンス制御では、アームAMの先端に対して、仮想的な軌道TRVAと先端との距離差DFに応じた力が働くように制御される。従って、アームAMを、力を加えながら表面SFをなぞるような制御が可能になる。
これらの例は線形インピーダンス制御を行っている様子を示している。そのため、例えば、図5(A)の例で、より強い力をかけなければ物体OBを把持できないという場合には、PLをより右手AR側に、PRをより左手AL側に設定する必要がある。この場合に、物体OBが落下してしまうと、ロボットの右手ARは点PRに、左手ALは点PLにそのまま移動してしまい、両手が衝突してしまう恐れがある。このように、線形インピーダンス制御では、仮想変位に対して、線形な解(力、外力)が定まるため、点PL及びPRを図5(A)の位置に設定したまま、物体OBにかける力を強くすることができない。
同様に図6(A)〜図6(C)に、ロボットの指先が、凹凸のある物体の表面に沿って動く場合、あるいは、表面の凹凸を削りながら動く場合の例を示す。
図6(A)の凸OBS1を削る場合のようにあまり力を必要としない場合には、ロボットの指先の目標位置をPD1とするような小さな仮想変位で、凸OBS1を削るために必要な力を発生させることができる。
しかし、図6(A)と同じインピーダンス制御パラメーターのみを用いて、図6(B)の凸OBS2を削る場合のように大きな力を必要とする場合には、ロボットの指先の目標位置をPD2とするような大きな仮想変位を発生させる必要がある。
この時、図6(C)のように反力がなくなると、ロボットのマニピュレーターは大きな動きを起こしてしまう。これは人間の作業でも起こりえることではあるが、実際には、人間は、対象物に与える力、仮想変位によって、力加減を変化させている。
そこで、後述する実施形態では、仮想変位に対して非線形な解(力)を出力して、図5(A)の衝突や、図6(C)の大きな動きを回避する手法を用いる。
1.3 制御系の構成
ここで、力覚フィードバックを含まない場合の制御系の基本構成例を図7に示す。
軌道生成部562は、軌道情報p(xyzuvw)を生成してインバースキネマティクス処理部564に出力する。ここで軌道情報pは、例えばアームの先端(エンドエフェクター部)の位置情報(xyz)と各軸回りの回転情報(uvw)を含む。そしてインバースキネマティクス処理部564は、この軌道情報pに基づいてインバースキネマティクス処理を行って、目標値である各関節の関節角θを生成して出力する。そして、この関節角θに基づいて、モーター制御を行うことで、ロボットのアームの動作制御が行われる。この場合に図7のモーター(M)の制御は、公知のPID制御により実現されている。このPID制御は公知の技術であるため、ここでは詳細な説明を省略する。
図7において、軌道生成部562とインバースキネマティクス処理部564とにより目標値出力部が構成される。この目標値出力部の処理は、ロボットの全体的な処理になる。一方、後段のモーター制御は、関節毎の制御になる。
図8に、力覚フィードバックを含む場合の制御系の基本構成例を示す。図8では、図7に対して、更に、力覚センサー510と、姿勢補正部532と、ハンド・ツール自重補正部534と、運動方程式処理部536と、フォワードキネマティクス処理部540が設けられている。
図8では、力覚センサー510からのセンサー情報を受けて、姿勢補正部532がセンサーの姿勢補正を行い、ハンド・ツール自重補正部534がハンド・ツール自重補正を行う。そして、運動方程式処理部536が、前述の式(1)に示すような運動方程式の解を求める処理を行い、補正値Δpを出力する。この補正値Δpにより軌道情報pが補正されることで、目標値である関節角θの補正処理が行われる。またフォワードキネマティクス処理部540は、フォワードキネマティクス処理を行って、ロボットの軌道情報p’を求めて軌道生成部562にフィードバックする。また姿勢補正部532、ハンド・ツール自重補正部534に対して姿勢を特定するための情報を出力する。なお、ロボットの軌道情報p’の軌道生成部562へのフィードバックは、p’に基づいた軌道の修正処理等を行うためのものであり、当該修正処理等を行わないのであれば、フィードバックは必ずしも必要ない。
ハンド・ツール自重補正部534では、ハンド・ツール自重補正が行われ、姿勢補正部532では姿勢補正が行われる。ここでハンド・ツール自重補正は、ロボットのハンドの自重や、ハンドがつかむツールの自重による影響を、力覚センサー10からのセンサー情報(力情報)から相殺するための補正処理である。また姿勢補正は、力覚センサー10の姿勢による影響を、センサー情報(力情報)から相殺するための補正処理である。これらのハンド・ツール自重補正及び姿勢補正は、例えば下式(2)のように表すことができる。
Figure 2013146793
上式(2)において、Fx,Fy,Fz、Fu,Fv,Fwは力覚センサー10からのセンサー情報である力情報、トルク情報である。またBx,By,Bz、Bu,Bv,Bwはバイアス項である。そして、補正後のセンサー情報(力情報、トルク情報)であるfx,fy,fz、fu,fv,fwが運動方程式処理部536に入力される。なお、データには固定値があるため、実質的な補正係数は6×7=42個となる。これらのハンド・ツール自重補正及び姿勢補正は公知の補正処理であるため、詳しい説明は省略する。
1.4 デジタルフィルター処理
図8の運動方程式処理部536では運動方程式(広義には常微分方程式)の解を求める必要がある。従来、運動方程式の解を求めるにはNewton法やRunge−Kutta法等が用いられていた。しかし、これらの手法はハードウェアー化に適さず、安定性の判定も難しい。さらに応答性の切り替えに対応することが困難であるという問題もある。
そこで本出願人は、上述の3つの問題に対応するために、常微分方程式を解く手法としてデジタルフィルターを用いる。
1.4.1 運動方程式のデジタルフィルターを用いた解法
運動方程式は上述した式(1)の形で表される。運動方程式は線形常微分方程式であるため、インパルス入力に対する解であるインパルスレスポンスが求められれば、インパルスレスポンスと外力項との畳み込みにより、任意の外力項に対する解を得ることができる。
ここで、運動方程式の解を求めるというステップを、力覚センサーのセンサー情報の入力に対して解(例えば位置情報)を出力するフィルターであると捉えるならば、上式(1)の形から、2極のアナログフィルターとして考えることができる。
つまり、運動方程式の解はアナログフィルターの出力として求めることができるのであるから、当該アナログフィルターをデジタルフィルター化することで、デジタルフィルターを用いて運動方程式を解くことが可能になる。
アナログフィルターのデジタルフィルター化の手法は種々知られているが、例えばImpulse Invariance法を用いればよい。これは、アナログフィルターのインパルスレスポンスを離散時間Tでサンプルした値と同じインパルスレスポンスを与えるデジタルフィルターを考える手法である。Impulse Invariance法については公知の手法であるため詳細な説明は省略する。
以上の結果、常微分方程式の解はデジタルフィルターの出力として求めることが可能になる。運動方程式であれば、図9に示したように2極のデジタルフィルターとなる。図9において、dは1サンプル分の遅延であり、C、C、Cはデジタルフィルターの係数(デジタルフィルターパラメーター)である。なお、図9のデジタルフィルターの入力値Fと出力値Yの関係は式(3)のように表すことができる。
Figure 2013146793
デジタルフィルターによる処理であれば、ハードウェアー化は容易であるし、後述するように安定性の判定も容易である。また、デジタルフィルターの係数を切り替えれば、特性(柔らかく動かすか固く動かすか等)を切り替えることもできるし、フィルター駆動周波数を切り替えて解の応答性を切り替えることもできる。
1.4.2 デジタルフィルターの安定度判定
インピーダンス制御においては、運動方程式の質量項(m)、粘性項(μ)及び弾性項(k)の設定次第では、安定でない系ができてしまう可能性がある。極端な例で言えば、ロボットに一度力を加えたら、その後一切触れていないにもかかわらずロボットの振動が継続するような、発振する系にもなりうるということである。そのような安定性(安定度)の低い系は実用上好ましくないため、運動方程式に関する系の安定性を判定し、安定でない場合には何らかの対処をする必要がある。
しかし、上述のNewton法やRunge−Kutta法等では、運動方程式の解を求めることはできても、安定性の判定は行えない。そのため、解を求める処理とは別に安定性を判定する処理が必要となるが、一般的に安定性の判定処理は容易でないことが知られている。
本実施形態の手法では、運動方程式を、デジタルフィルターを用いて処理するため、運動方程式に関する系の安定性の判定とは、対応するデジタルフィルターの安定性の判定に他ならない。デジタルフィルターの安定性の判定は、容易に行うことができ、極が単位円の中にあるか否かを判定すればよい。
具体例を図10(A)〜図10(C)に示す。これらはどれも極が単位円の中に収まっている例であるが、極が単位円の外にある場合には安定でないと判定する。また、図10(C)のようにある程度、単位円の円周上から内側に離れた位置に極がある場合には、特に問題はない。しかし、図10(A)のように単位円にかなり近い位置に極(なお、図10(A)は重根ではなく限りなく近い位置に2つの極がある例である)がある場合には、注意が必要である。なぜなら、デジタルフィルターの実装手法によっては、設計値に対して誤差が生ずるおそれがあるからである。当該誤差が極の位置を単位円の外側方向に移動させる要因となった場合、図10(A)のような安定性に余裕のないデジタルフィルターは、設計上安定であるにもかかわらず、実装時には安定でない動作をする可能性があるため、何らかの対処が必要となる。
1.4.3 デジタルフィルターを用いた場合の構成例
図11にデジタルフィルターを用いて運動方程式の解を求める場合の、ロボット制御装置及びそれを含むロボットシステムの構成例を示す。なお本実施形態のロボット制御装置、ロボットシステムは図11の構成には限定されず、その一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。
力覚センサー10、目標値出力部60、ロボット制御部80及びロボット100については図1と同様であるため、詳細な説明は省略する。
力制御部20は、デジタルフィルター部22を含む。デジタルフィルター部22は、力覚センサーからのセンサー情報(センサー情報に対して補正処理や帯域制限処理が施された情報も含む)に対してデジタルフィルター処理を行って、出力値を補正値として目標値出力部60に出力する。また、力制御部20はセンサー情報に対して帯域制限処理を行う帯域制限部25を含んでもよい。
デジタルフィルター部22は、デジタルフィルター演算部221と、デジタルフィルター係数出力部222と、デジタルフィルター安定度判定部223を含む。デジタルフィルター演算部221は、センサー情報とデジタルフィルター係数に基づいて、デジタルフィルター処理を行って運動方程式の解を求める。デジタルフィルター係数出力部222は、運動方程式の係数パラメーター(質量項m、粘性項μ、弾性項k及び駆動周期T)に基づいて、デジタルフィルター係数を求め、デジタルフィルター演算部221とデジタルフィルター安定度判定部223に出力する。デジタルフィルター安定度判定部223は、デジタルフィルター係数に基づいて、当該デジタルフィルターの安定性の判定を行う。
デジタルフィルター係数出力部222は、デジタルフィルター係数記憶部224と、デジタルフィルター係数変換部225を含んでもよい。デジタルフィルター係数変換部225は、運動方程式の係数パラメーターをデジタルフィルター係数に変換する。デジタルフィルター係数記憶部224は、変換されたデジタルフィルター係数を記憶する。デジタルフィルター係数記憶部224に複数のデジタルフィルター係数を記憶しておけば、出力するデジタルフィルター係数を切り替えることで、ロボットの動作特性や、解の応答性を切り替えることが可能になる。
1.5 非線形インピーダンス制御
次に、図12(A)〜図12(C)を用いて、以下で説明する第1の実施形態と第2の実施形態において実現する非線形インピーダンス制御の概要を説明する。
第1の実施形態及び第2の実施形態では、力覚センサーに加えられた外力の大きさと、外力が加えられた時のロボットの変位の大きさとの関係が非線形になる力制御を行う。
具体的に、まず、図12(A)には、線形インピーダンス制御の例を示す。図12(A)のグラフは、外力が大きくなるほど、変位も比例して大きくなる様子を示している。前述した図5(A)、図5(B)や図6(A)〜図6(C)における外力と変位にはこのような関係が成り立っている。
次に、図12(B)には所定の閾値以上外力が大きくなった場合には、変位が大きくなりにくくする非線形インピーダンス制御の例を示す。すなわち、変位が大きくなるにつれ、発生させる外力が大きくなりやすくする制御である。このような非線形インピーダンス制御を行えば、例えば図6(A)〜図6(C)のように大きな力をかけなければ削れない凸OBS2がある場合でも、変位を大きくすることなく(目標位置PD2を遠くに設定することなく)、必要な力を発生させることができる。その結果、凸OBS2を削った後でもマニピュレーターが大きく動きすぎることを防ぐことができる。なお、図12(B)のグラフは、外力と変位の関係を一意にするためには傾斜が必要であるため、外力をいくら大きくしても傾きを0にはしない。
さらに、図12(C)には所定の閾値以上変位が大きくなった場合には、外力(抗力)が大きくなりにくくする非線形インピーダンス制御の例を示す。言い換えれば、外力が大きい場合に変位を非常に大きく非線形インピーダンス制御である。このような非線形インピーダンス制御を行えば、例えば図5(A)のように物体OBを把持する場合に、物体OBをつぶさずに変位を大きくすることが可能となる。
以下、図11の構成を基本とし、図12(B)及び図12(C)のような非線形インピーダンス制御を実現する第1の実施形態と第2の実施形態について説明する。第1の実施形態は、線形デジタルフィルター処理を行なった後に、出力値に対してフィルター処理を行い、非線形インピーダンス制御を実現する例である。第2の実施形態は、デジタルフィルターの入力値に対してフィルター処理を行った後、線形デジタルフィルター処理を行ない、非線形インピーダンス制御を実現する例である。
2.第1の実施形態
2.1 構成
図13に第1の実施形態に係るロボット制御装置の構成例を示す。
力覚センサー10、目標値出力部60(軌道生成部62、インバースキネマティクス処理部64)、ロボット制御部80(モーター制御部82−1〜モーター制御部82−N)等については図1と同様であるため詳細な説明は省略する。また、入力補正部30は検出センサー値(センサー情報)に対して補正処理を行うもので、例えば図8の姿勢補正部532やハンド・ツール自重補正部534等を含んでもよい。フォワードキネマティクス処理部40は、図8のフォワードキネマティクス処理部540に対応し、フォワードキネマティクス処理の結果を入力補正部30に出力するとともに、必要に応じて軌道生成部62にも出力してもよい。
また、ロボット制御装置の力制御部20は、インピーダンス処理部21と、制御パラメーター記憶部24と、非線形変換部29と、を含む。なお、本実施形態の力制御部20は図13の構成には限定されず、その一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。
また、図13のインピーダンス処理部21は、図11のデジタルフィルター演算部221に対応し、動作も同様のため、説明を省略する。
さらに、図13の制御パラメーター記憶部24は、図11のデジタルフィルター係数記憶部224に対応し、制御パラメーターを記憶する。ここで、制御パラメーターとは、後述する運動方程式の係数パラメーターであっても良いし、デジタルフィルターのパラメーターであってもよい。さらに、制御パラメーターとして、オフセットパラメーターを記憶してもよい。制御パラメーター記憶部の機能は、RAM等のメモリーやHDD(ハードディスクドライブ)などにより実現でき、実際には一つのメモリー等により構成されていても良いし、複数のメモリー等により構成されていても良い。
そして、非線形変換部29は、インピーダンス処理部の出力値に対して、フィルター処理を行って、補正値を出力する。フィルター処理の前後の補正値(出力値、応答)については、図17を用いて後述する。
ここで、第1の実施形態におけるデジタルフィルターは図14のようになる。図14に示すデジタルフィルターでは、式(4)に表すように、図9のデジタルフィルターの出力値Y(式(3)参照)に対して、フィルター処理関数Gによりフィルター処理を行なった値(Output)を補正値(出力値)として求める。式(4)では、変位を制御する場合や力を制御する場合など目的に合わせた関数Gを用いる。
Figure 2013146793
図14に示したデジタルフィルターによる処理であれば、ハードウェアー化は容易であるし、安定性の判定も容易である。
2.2 詳細な処理
次に図15のフローチャートを用いて、本実施形態における力制御部が行うデジタルフィルター処理の流れを説明する。また、図16に、正弦波外力に対する線形インピーダンス制御の応答例を示し、図17に正弦波外力に対する非線形インピーダンス制御の応答例を示す。ここでは、先に図16の説明を行い、次に図15のフローチャートの説明を交えながら、図17の説明を行う。
まず図16には、縦軸を任意目盛、横軸を時間(秒)として、外力Fの曲線が表されている。そして、図16のグラフには、運動方程式の係数パラメーター(仮想質量、仮想粘性、仮想剛性)の設定を同図に示すPR1とPR2とした時の外力Fに対する線形インピーダンス制御の応答をそれぞれ示している。また、駆動周期は125マイクロ秒(8kサンプル/秒)であり、マニピュレーターの電流制御ループの周期と同じであるものとし、外力は1秒周期の正弦波であるとする。
図16のPR1とPR2では、仮想質量と仮想粘性は同じであるが、仮想剛性についてはPR2がPR1の2倍大きい。そのため、ロボットは、PR1設定時にはいわゆる軟らかいバネのような応答をし、PR2設定時にはPR1設定時の2倍硬いバネのような応答をする。なお、粘性項、質量項があるため、PR1又はPR2設定時の応答の位相は、外力の位相とずれる。
次に、図17の説明を行う。図17に示す外力F、PR1設定時の応答及びその他の設定は図16の場合と同じである。図17では、PR1の曲線(すなわちPR1設定時のインピーダンス処理部21の出力値)に対して、フィルター処理を行い、非線形インピーダンス制御を実現した時の応答曲線(FPR1)を新たに加えている。
デジタルフィルター処理の流れとしては、まず、出力タイミングを待ち(S101)、出力タイミングになった場合に、入力補正部から姿勢補正後の外力(外力値)Fを取得する(S102)。
次に、式(3)を計算し、Yを求める(S103)。このYの値を図17のグラフにおいて表すと、PR1の曲線となる。
さらに、求めたYにフィルター処理を行い、出力値(Output)を求める(S104)。図17では、FPR1の曲線がこのOutputの値を表している。なお、本実施形態では、フィルター処理関数として、例えばシグモイド関数を用いる。シグモイド関数は2値の系の最大エントロピー状態を与える関数であり、さまざまな場面で現れる。ただし、ここで最大エントロピーに特別の意味があるわけではない。
以上の本実施形態のロボット制御装置は、力覚センサー10から取得される検出センサー値に基づいて、ロボット100の目標軌道の補正値を出力する力制御部20と、目標軌道に対して補正値に基づく補正処理を行って目標値を求め、求めた目標値を出力する目標値出力部60と、目標値に基づいて、ロボット100のフィードバック制御を行うロボット制御部80と、を含む。そして、力制御部20は、力制御における常微分方程式の解を、変換処理前の補正値として求めるインピーダンス処理部21と、インピーダンス処理部21から取得される変換処理前の補正値に対して非線形変換処理を行うことにより変換処理後の補正値を求め、求めた変換処理後の補正値を出力する非線形変換部29と、を含む。
すなわち、力制御部20は、補正値を求めるために用いる値である力制御における常微分方程式の解を求めるインピーダンス処理部21と、インピーダンス処理部21から取得される常微分方程式の解に対して非線形変換処理を行うことにより補正値を求め、求めた補正値を出力する非線形変換部29と、を含む。
まず、力制御は、力覚センサー10から取得される検出センサー値に基づいて、ロボット100の目標軌道の補正値を求め、求めた補正値を出力する。
ここで、検出センサー値(センサー情報)とは、力覚センサー10からの出力値そのものであってもよいし、当該出力値に対して入力補正部30による補正処理が施されたものであってもよい。また、帯域制限部25(図11に記載)による帯域制限処理が施されたものであってもよい。さらに、これらと数学的に等価な情報であってもよい。
また、補正値とは、力制御部20により求められ、目標値出力部60により目標軌道を補正するために用いられる値のことである。例えば、補正値は、図12(B)や図12(C)のグラフに表される変位のことである。図12(B)や図12(C)のグラフ等に表された変位は、外力に対するインピーダンス制御の応答(出力)であり、実際にロボット100のマニピュレーター等が動いた距離等を表す値ではない。そのため、実際にロボット100のマニピュレーター等が動いた時の変位と区別するために、この変位のことを仮想変位(仮想的な変位)とも呼ぶ。なお、変換処理前の補正値は、中間値、中間補正値とも言い換えることができる。
そして、目標値出力部は、目標軌道に対して補正値に基づく補正処理を行って目標値を求める。
ここで、目標値とは、ロボット100のフィードバック制御における目標値のことであり、ロボット制御部80における制御はこの目標値に基づいて行われる。目標値は目標軌道に対して補正値による補正処理を行うことで取得できる。
また、目標軌道とは、狭義にはロボット100のエンドエフェクター部(エンドポイント)の空間的な目標位置の変化を表すものであってもよい。1つの目標位置は、例えば3次元空間座標xyz(姿勢も考慮すれば各軸周りの回転角uvwを追加してもよい)で表されることになり、目標軌道とは当該目標位置の集合となる。ただし、目標軌道はこれに限定されるものではなく、ロボット100の目標関節角の集合であってもよい。関節を持つロボット100では、各関節の角度を決定すると、フォワードキネマティクス処理によりエンドエフェクター部の位置は一意に決定される。つまり、N関節ロボットではN個の関節角(θ1〜θN)により1つの目標位置を表現できることになるから、当該N個の関節角の組を1つの目標関節角とすれば、目標軌道とは目標関節角の集合と考えることができる。よって、力制御部20から出力される補正値も、位置に関する値であってもよいし、関節角に関する値であってもよい。
具体例を図22(A)、図22(B)に示す。力制御における常微分方程式として、上式(1)の運動方程式を用いるのであれば、当該運動方程式の解は位置に関する値となる。よって、目標軌道が目標位置である場合には、解をそのまま補正値とすればよく、システム構成例は図22(A)のようになる。なお、目標値は位置に関する値でも関節角に関する値でもよいが、一般的にはロボット100のフィードバック制御は関節角を用いることが想定される。
それに対して、目標値出力部60のインバースキネマティクス処理部64とは別に、力制御部20がインバースキネマティクス処理部23を含む図22(B)のようなケースも考えられる。例えば、目標値出力部60での目標軌道生成処理と、力制御部20での補正値出力処理とで、処理のタイミングや処理レートが異なる場合等である。その場合には、目標軌道は目標関節角であり、力制御部20では運動方程式の解に対して変換処理(例えばインバースキネマティクス処理)を行って補正値とすることになる。
また、力制御における常微分方程式とは、力制御において解を求める必要がある常微分方程式のことである。狭義には線形常微分方程式であってもよい。さらに狭義には、ロボットにあたかも所望の特性(質量・粘性・弾性等)を持つようにふるまわせるために解を求める必要がある常微分方程式のことであり、式(1)に示したような運動方程式であってもよい。
そして、非線形変換部29は、インピーダンス処理部21から取得される変換処理前の補正値に対して非線形変換処理を行うことにより変換処理後の補正値を求める。第1の実施形態では、インピーダンス処理部21の出力値に対してフィルター処理を行う点が、後述する第2の実施形態と異なる。具体的には、上述したようにシグモイド関数等を用いて、フィルター処理を行うが、フィルター処理関数はこれに限定されず、目的に合わせた関数を用いることが可能である。例えば図17では、外力が大きくなればなるほど、補正値(仮想変位)が大きくなりにくくなるようなフィルター処理を行っている。すなわち、図17では図12(B)のような非線形インピーダンス制御を実現している。
このように線形インピーダンス処理の出力値に対して、フィルター処理を行うことにより、非線形インピーダンス制御を実現することができる。具体的には、例えば上述したように、外力の大小に係わらず、その外力が急に消失した場合に起こるマニピュレーターの動きを所定の範囲に制限することができる。あるいは、外力(抗力)を所定の範囲内に制限することができる。このことは、ロボットの実用上、安全上、非常に有効である。
また、本実施形態のロボット制御装置は線形なシステムの組み合わせであるため、運動方程式の解の安定性の判定も容易である。
また、仮想変位が第1の変位である時の外力に対する変位変化量を第1の変位変化量とし、仮想変位が第1の変位と異なる第2の変位である時の変位変化量を第2の変位変化量とする場合に、力制御部20は、第1の変位変化量と第2の変位変化量とが異なる力制御を行ってもよい。
例えば、力制御部20は、仮想的な変位が第2の変位よりも大きい第1の変位である場合に、第1の変位変化量が第2の変位変化量よりも大きくなるように非線形変換処理を行い、補正値を出力してもよい。
ここで、変位変化量とは、外力に対する変位の変化量のことをいう。例えば、図12(B)のグラフにおいては、変位変化量は変位を表す曲線の傾きのことをいう。言い換えれば、ロボットのマニピュレーターに一定方向から力を加え、それを徐々に変化させてマニピュレーターの瞬間的な変位を測定し、図12(B)のようにグラフ化した時、ある大きさの外力に対するグラフの傾きが変位変化量となる。
そのため、このような変位変化量を確認するためには、例えば、互いに大きさの異なる第1の外力、第2の外力、第3の外力をロボットのマニピュレーターに与え、第1の外力を与えた時のマニピュレーターの変位と第2の外力を与えた時の変位、第3の外力を与えた時の変位をそれぞれ求める。そして、第1の外力を与えた時のマニピュレーターの変位と第2の外力を与えた時の変位との差や、第2の外力を与えた時の変位と第3の外力を与えた時の変位との差を、変位変化量として確認できる。なお、第1の外力と第2の外力(第2の外力と第3の外力)の差を微小にすれば、グラフの傾きと同様の値を求めることができる。すなわち、変異変化量は、第1の外力を加えた時の変位と、第1の外力と異なる第2の外力を加えた時の変位との差ということもできる。そしてこの時、第1の外力と第2の外力との差が微小であっても良い。ここで、微小とは0に限りなく近いことをいう。
また、上記のように変位変化量を確認した際に、外力に比例して変位が大きくなるようであれば、変位と外力とに図12(A)のような関係が成り立っていることが分かり、外力を大きくしているにも関わらず変位が大きくならないようであれば、変位と外力とに図12(B)のような関係が成り立っていることが分かる。
このように第1の変位変化量と第2の変位変化量とが異なる力制御を行うことにより、非線形インピーダンス制御を実現することができる。例えば、仮想的な変位(または外力)の絶対値が大きくなればなるほど、変位変化量が大きくなるような力制御を行うこと等が可能になる。すなわち、図12(C)のグラフのような力制御が可能になる。具体的には、ロボットのマニピュレーターに加える力がある程度小さいうちはマニピュレーターが反発したかのようにマニピュレーターが押し込みにくいが、マニピュレーターに加える力が大きくなるとマニピュレーターが抵抗せずに、加えた力に応じてマニピュレーターが動くようになる。したがって、ロボットのマニピュレーターが把持する物体が壊れやすいものであったとしても、外力が大きい場合に変位を非常に大きくする図12(C)に示すような制御を行うことにより、外力(抗力)を所定の範囲内に制限することができる。このことは、ロボットの実用上、安全上、非常に有効である。
また、力制御部20は、仮想的な変位が第2の変位よりも大きい第1の変位である場合に、第1の変位変化量が第2の変位変化量よりも小さくなるように非線形変換処理を行い、補正値を出力してもよい。
これにより、例えば仮想的な変位(または外力)の絶対値が大きくなればなるほど、変位変化量が小さくなるような力制御を行うこと等が可能になる。すなわち、図12(B)のグラフのような力制御が可能になる。具体的には、ロボットのマニピュレーターに加える力がある程度小さいうちはマニピュレーターが押し込みやすく、加えた力に応じてマニピュレーターが動くが、マニピュレーターに加える力が大きくなるとマニピュレーターが反発したかのように押し込みにくくなる。したがって、外力が急に消失した場合でも、外力が大きい場合に変位を制限する図12(B)のような制御を行うことにより、マニピュレーターの動きを所定の範囲に制限することができる。
また、これらの力制御を組み合わせて、第1の変位が第1の範囲のある場合には、仮想的な変位の絶対値が大きくなればなるほど、変位変化量が大きくなるような力制御を行い、第1の変位が第2の範囲のある場合には、仮想的な変位の絶対値が大きくなればなるほど、変位変化量が小さくなるような力制御を行うなどの変形実施が可能である。
また、力制御部20は、補正値に対応するロボット100についての仮想的な変位の方向が第1の方向である場合には、第1の力制御を行い、仮想的な変位の方向が第1の方向と反対方向である第2の方向である場合には、第1の力制御と異なる第2の力制御を行ってもよい。
具体例を図18に示す。図18の諸設定は図17と同じであるが、使用するフィルター処理関数が異なる。図18の例では、同図のグラフにおける仮想変位の方向が正の方向である時(すなわちPR1の傾きが正である時)には、補正値(出力値)が大きくなりやすい第1の力制御を行い、仮想変位の方向が負の方向である時(すなわちPR1の傾きが負である時)には、補正値が大きくなりにくい第2の力制御を行う。
例えば、鉛筆削りで鉛筆を削る場合を考える。この場合に、鉛筆削りの中に鉛筆を押し込む方向(第1の方向)には、仮想変位を大きくする力制御を行う一方で、鉛筆削りから鉛筆を引っ張り出す方向(第2の方向)には、仮想変位を小さくするような力制御を行うことが可能になる。この例では、鉛筆削りの中に鉛筆を押し込みやすくなる一方で、鉛筆削りの中から鉛筆を引っ張り出しにくくなる。
これにより、仮想的な変位の方向に基づいて、実行する力制御を切り替えること等が可能になる。なお、仮想変位の方向ではなく、外力の方向に基づいて、第1の力制御を行うか、第2の力制御を行うかを決定してもよい。すなわち、力制御部20は、検出センサー値により表される外力の方向が第1の方向である場合には、第1の力制御を行い、外力の方向が第1の方向と反対方向である第2の方向である場合には、第1の力制御と異なる第2の力制御を行ってもよい。
また、非線形変換部29は、インピーダンス処理部21から取得される変換処理前の補正値又は力覚センサー10から取得される検出センサー値に対して、シグモイド関数を用いて非線形変換処理を行ってもよい。
これにより、シグモイド関数を用いて非線形変換処理を行うこと等が可能になる。
また、インピーダンス処理部21は、力制御における常微分方程式の解を補正値として求めるデジタルフィルター部22を有してもよい。
これにより、常微分方程式の解を求めるという力制御において必要な処理を、デジタルフィルターを用いて行うことが可能になるため、Newton法、Runge−Kutta法等の手法を用いる場合や、上述した特許文献2に示されているようなスライディングモード制御を行う場合に比べて、ハードウェアー化が容易である。そして、デジタルフィルター処理に用いるデジタルフィルターを切り替える(例えばフィルター係数を切り替える)ことで、簡単に応答特性を切り替えることも可能となる。
また、力制御部20は、補正値を求めるデジタルフィルター部22の動作の安定度を判定し、デジタルフィルター部22の動作が安定であると判定された場合に、力制御における常微分方程式の解を補正値として求めてもよい。
これにより、デジタルフィルターの安定性を判定すること等が可能になる。力制御における常微分方程式の係数パラメーターは、設定次第では現実にはあり得ない系(例えば発振するロボット等)を作ってしまうことがある。そのため、常微分方程式の安定性を判定する必要があるが、デジタルフィルターを用いれば、その判定が容易となる。
また、常微分方程式は、仮想質量項、仮想粘性項及び仮想弾性項を係数パラメーターとする運動方程式であってもよい。
これにより、運動方程式の解を求めること等が可能になる。よって、ロボット100に対して、あたかも仮想質量項に対応する質量、仮想粘性項に対応する粘性、仮想弾性項に対応する弾性を持つかのようにふるまわせることが可能になる。
また、本発明の他の態様では、ロボット制御装置と、目標値出力部60から取得される目標値に基づいて、各部を動作させるロボット100と、を含むロボットシステムに関係する。
これにより、ロボット制御装置にとどまらず、本実施形態の処理を実行するロボットシステムを実現すること等が可能になる。
3.第2の実施形態
3.1 構成
図19に第2の実施形態に係るロボット制御装置の構成例を示す。
力覚センサー10、入力補正部30、フォワードキネマティクス処理部40、目標値出力部60(軌道生成部62、インバースキネマティクス処理部64)、ロボット制御部80(モーター制御部82−1〜モーター制御部82−N)等については図13に表す第1の実施形態と同様であるため詳細な説明は省略する。
また、図13と同様に、ロボット制御装置の力制御部20は、インピーダンス処理部21と、制御パラメーター記憶部24と、非線形変換部29と、を含む。ただし、インピーダンス処理部21と、非線形変換部29との配置が逆になっている点が第1の実施形態と異なる。
そのため、非線形変換部29は、入力補正部30から取得した外力値Iに対して、フィルター処理を行って、インピーダンス処理部21に非線形変換処理後の外力Fを出力する。なお、本実施形態の力制御部20は、図19の構成には限定されず、その一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。また、その他の構成要素の動作等は、第1の実施形態と同様である。
ここで、第2の実施形態におけるデジタルフィルターは図20のようになる。図20に示すデジタルフィルターでは、式(5)に表すように、図9のデジタルフィルターへの入力値に対してフィルター処理関数Hによりフィルター処理を行なった値(F)を、非線形変換処理後の外力(入力値)として求める。式(5)では、変位を制御する場合や力を制御する場合など目的に合わせた関数Hを用いる。
Figure 2013146793
図20に示したデジタルフィルターによる処理であれば、第1の実施形態と同様に、ハードウェアー化は容易であるし、安定性の判定も容易である。
3.2 詳細な処理
次に図21のフローチャートを用いて、本実施形態における力制御部が行うデジタルフィルター処理の流れを説明する。
まず、出力タイミングを待ち(S201)、出力タイミングになった場合に、入力補正部から姿勢補正後の外力(外力値)Iを取得する(S202)。
次に、外力(外力値)Iに基づいて、式(5)を計算し、変換処理後の外力Fを求める(S203)。さらに、求めたFを入力値として式(3)に従って、出力値(Y)を求める(S204)。
なお、本実施形態では、第1の実施形態と同様に、フィルター処理関数として、例えばシグモイド関数を用いる。ただし、これに限定されない。
以上の本実施形態のロボット制御装置は、力覚センサー10から取得される検出センサー値に基づいて、ロボットの目標軌道の補正値を出力する力制御部20と、目標軌道に対して補正値に基づく補正処理を行って目標値を求め、求めた目標値を出力する目標値出力部60と、目標値に基づいて、ロボットのフィードバック制御を行うロボット制御部80と、を含む。そして、力制御部20は、力覚センサー10から取得される検出センサー値に対して非線形変換処理を行うことにより、変換処理後の検出センサー値を求める非線形変換部29と、非線形変換部29から取得される変換処理後の検出センサー値に基づいて、力制御における常微分方程式の解を補正値として求めるインピーダンス処理部21と、を含む。
これにより、線形インピーダンス処理の入力値に対して、フィルター処理を行うことにより、非線形インピーダンス制御を実現することができる。また、線形なシステムの組み合わせを用いることにより、運動方程式の解の安定性の検証を行うことが可能となる。
以上のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、ロボット制御装置及びロボットシステムの構成、動作も本実施形態で説明したものに限定されず、種々の変形実施が可能である。
10 力覚センサー、20 力制御部、21 インピーダンス処理部、
22 デジタルフィルター部、23 インバースキネマティクス処理部、
24 制御パラメーター記憶部、25 帯域制限部、29 非線形変換部、
30 入力補正部、40 フォワードキネマティクス処理部、60 目標値出力部、
62 軌道生成部、64 インバースキネマティクス処理部、80 ロボット制御部、
82 駆動制御部(モーター制御部)、100 ロボット、102 駆動部、
221 デジタルフィルター演算部、222 デジタルフィルター係数出力部、
223 デジタルフィルター安定度判定部、224 デジタルフィルター係数記憶部、
225 デジタルフィルター係数変換部、300 ロボット制御装置、
310 ロボット、320 アーム、330 ハンド、510 力覚センサー、
532 姿勢補正部、534 ハンド・ツール自重補正部、
536 運動方程式処理部、540 フォワードキネマティクス処理部、
562 軌道生成部、564 インバースキネマティクス処理部

Claims (13)

  1. 力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正値を出力する力制御部と、
    前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力する目標値出力部と、
    前記目標値に基づいて、前記ロボットのフィードバック制御を行うロボット制御部と、
    を含み、
    前記力制御部は、
    力制御における常微分方程式の解を、変換処理前の前記補正値として求めるインピーダンス処理部と、
    前記インピーダンス処理部から取得される前記変換処理前の前記補正値に対して非線形変換処理を行うことにより前記変換処理後の前記補正値を求め、求めた前記変換処理後の前記補正値を出力する非線形変換部と、
    を含むことを特徴とするロボット制御装置。
  2. 力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正値を出力する力制御部と、
    前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力する目標値出力部と、
    前記目標値に基づいて、前記ロボットのフィードバック制御を行うロボット制御部と、
    を含み、
    前記力制御部は、
    前記力覚センサーから取得される前記検出センサー値に対して非線形変換処理を行うことにより、変換処理後の前記検出センサー値を求める非線形変換部と、
    前記非線形変換部から取得される前記変換処理後の前記検出センサー値に基づいて、力制御における常微分方程式の解を前記補正値として求めるインピーダンス処理部と、
    を含むことを特徴とするロボット制御装置。
  3. 請求項1又は2において、
    前記補正値に対応する前記ロボットについての仮想的な変位が第1の変位である場合の外力に対する変位変化量を第1の変位変化量とし、前記仮想的な変位が第2の変位である場合の前記変位変化量を第2の変位変化量とする場合に、
    前記力制御部は、
    前記仮想的な変位が前記第2の変位よりも大きい前記第1の変位である場合に、前記第1の変位変化量が前記第2の変位変化量よりも大きくなるように前記非線形変換処理を行い、前記補正値を出力することを特徴とするロボット制御装置。
  4. 請求項1又は2において、
    前記補正値に対応する前記ロボットについての仮想的な変位が第1の変位である場合の外力に対する変位変化量を第1の変位変化量とし、前記仮想的な変位が第2の変位である場合の前記変位変化量を第2の変位変化量とする場合に、
    前記力制御部は、
    前記仮想的な変位が前記第2の変位よりも大きい前記第1の変位である場合に、前記第1の変位変化量が前記第2の変位変化量よりも小さくなるように前記非線形変換処理を行い、前記補正値を出力することを特徴とするロボット制御装置。
  5. 請求項1乃至4のいずれかにおいて、
    前記力制御部は、
    前記補正値に対応する前記ロボットについての前記仮想的な変位の方向が第1の方向である場合には、第1の力制御を行い、
    前記仮想的な変位の方向が前記第1の方向と反対方向である第2の方向である場合には、第1の力制御と異なる第2の力制御を行うことを特徴とするロボット制御装置。
  6. 請求項1乃至5のいずれかにおいて、
    前記非線形変換部は、
    前記インピーダンス処理部から取得される前記変換処理前の前記補正値又は前記力覚センサーから取得される前記検出センサー値に対して、シグモイド関数を用いて前記非線形変換処理を行うことを特徴とするロボット制御装置。
  7. 請求項1乃至6のいずれかにおいて、
    前記インピーダンス処理部は、
    力制御における前記常微分方程式の解を前記補正値として求めるデジタルフィルター部を有することを特徴とするロボット制御装置。
  8. 請求項7において、
    前記力制御部は、
    前記補正値を求める前記デジタルフィルター部の動作の安定度を判定し、
    前記デジタルフィルター部の前記動作が安定であると判定された場合に、力制御における前記常微分方程式の解を前記補正値として求めることを特徴とするロボット制御装置。
  9. 請求項1乃至8のいずれかにおいて、
    前記常微分方程式は、
    仮想質量項、仮想粘性項及び仮想弾性項を係数パラメーターとする運動方程式であることを特徴とするロボット制御装置。
  10. 請求項1乃至9のいずれかの前記ロボット制御装置と、
    前記目標値出力部から取得される前記目標値に基づいて、各部を動作させる前記ロボットと、
    を含むことを特徴とするロボットシステム。
  11. 力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正処理に用いる変換処理前の前記補正値として、力制御における常微分方程式の解を求め、
    求めた前記変換処理前の補正値に対して非線形変換処理を行うことにより前記変換処理後の前記補正値を求め、
    求めた前記変換処理後の前記補正値に基づいて、前記ロボットの前記目標軌道に対する前記補正処理を行って目標値を求め、
    求めた前記目標値に基づいて、前記ロボットのフィードバック制御を行うことを特徴とするロボット制御方法。
  12. 力覚センサーから取得される検出センサー値に対して非線形変換処理を行うことにより、ロボットの目標軌道の補正処理に用いる変換処理後の前記検出センサー値を求め、
    求めた前記変換処理後の前記検出センサー値に基づいて、力制御における常微分方程式の解を前記補正値として求め、
    求めた前記補正値に基づいて、前記ロボットの前記目標軌道に対する前記補正処理を行って目標値を求め、
    求めた前記目標値に基づいて、前記ロボットのフィードバック制御を行うことを特徴とするロボット制御方法。
  13. 力覚センサーを有するロボットの制御を行うロボット制御方法であって、
    前記力覚センサーに加えられた外力の大きさと、前記外力が加えられた時の前記ロボットの変位の大きさとの関係が非線形になる力制御を行うことを特徴とするロボット制御方法。
JP2012006775A 2012-01-17 2012-01-17 ロボット制御装置、ロボットシステム、ロボット制御方法及びロボット Expired - Fee Related JP5966372B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2012006775A JP5966372B2 (ja) 2012-01-17 2012-01-17 ロボット制御装置、ロボットシステム、ロボット制御方法及びロボット
CN201310014616.XA CN103203756B (zh) 2012-01-17 2013-01-15 机器人控制装置、机器人系统以及机器人控制方法
EP13151284.0A EP2617533A1 (en) 2012-01-17 2013-01-15 Robot controller, robot system, robot control method
US13/742,653 US9020642B2 (en) 2012-01-17 2013-01-16 Robot controller, robot system, robot control method
US14/672,668 US9517562B2 (en) 2012-01-17 2015-03-30 Robot controller, robot system, robot control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012006775A JP5966372B2 (ja) 2012-01-17 2012-01-17 ロボット制御装置、ロボットシステム、ロボット制御方法及びロボット

Publications (3)

Publication Number Publication Date
JP2013146793A true JP2013146793A (ja) 2013-08-01
JP2013146793A5 JP2013146793A5 (ja) 2015-03-05
JP5966372B2 JP5966372B2 (ja) 2016-08-10

Family

ID=47683526

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012006775A Expired - Fee Related JP5966372B2 (ja) 2012-01-17 2012-01-17 ロボット制御装置、ロボットシステム、ロボット制御方法及びロボット

Country Status (4)

Country Link
US (2) US9020642B2 (ja)
EP (1) EP2617533A1 (ja)
JP (1) JP5966372B2 (ja)
CN (1) CN103203756B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017169098A1 (ja) * 2016-03-31 2017-10-05 ソニー株式会社 制御装置及び制御方法
CN112060094A (zh) * 2020-09-11 2020-12-11 浙大宁波理工学院 基于阻抗控制的机械臂控制方法

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5743495B2 (ja) * 2010-11-05 2015-07-01 キヤノン株式会社 ロボット制御装置
JP5962020B2 (ja) * 2012-01-17 2016-08-03 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、ロボット及びロボット制御方法
JP5966372B2 (ja) 2012-01-17 2016-08-10 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、ロボット制御方法及びロボット
CN103991077B (zh) * 2014-02-19 2015-12-09 吉林大学 一种基于力融合的机器人手控器共享控制方法
CN103878769B (zh) * 2014-02-21 2016-09-07 东南大学 一种遥操作柔性环境力反馈系统
US9618937B1 (en) 2014-08-25 2017-04-11 Google Inc. Slip detection using robotic limbs
JP5927259B2 (ja) * 2014-09-30 2016-06-01 ファナック株式会社 力制御を実行するロボットシステム
US9499218B1 (en) 2014-12-30 2016-11-22 Google Inc. Mechanically-timed footsteps for a robotic device
CN106200685B (zh) * 2015-05-04 2019-03-19 中国科学院沈阳自动化研究所 非线性位置与速度的遥操作控制算法
CN106239516B (zh) * 2015-06-03 2021-09-24 精工爱普生株式会社 机器人控制装置、机器人以及机器人系统
WO2017048788A1 (en) 2015-09-14 2017-03-23 Tolomatic, Inc. Actuator diagnostics and prognostics
JP6542629B2 (ja) * 2015-09-18 2019-07-10 川崎重工業株式会社 加工ツールの位置決め装置及び位置決め方法
US9925667B1 (en) 2016-01-25 2018-03-27 Boston Dynamics, Inc. Continuous slip recovery
US20180021949A1 (en) * 2016-07-20 2018-01-25 Canon Kabushiki Kaisha Robot apparatus, robot controlling method, program, and recording medium
EP3605250A4 (en) * 2017-03-31 2020-07-29 Sony Corporation INFORMATION PROCESSING DEVICE AND INFORMATION PROCESSING PROCESS, COMPUTER PROGRAM AND PROGRAM MANUFACTURING PROCESS
CN110462530A (zh) * 2017-03-31 2019-11-15 索尼公司 信息处理设备、信息处理方法、计算机程序和程序制造方法
CN107016209B (zh) * 2017-04-17 2020-06-16 珞石(山东)智能科技有限公司 一种工业机器人和导轨协同规划方法
US10406685B1 (en) * 2017-04-20 2019-09-10 X Development Llc Robot end effector control
CN108406765B (zh) * 2018-02-06 2021-05-07 南京航空航天大学 一种开链式多臂机器人阻抗控制方法
JP7008569B2 (ja) * 2018-04-27 2022-01-25 キヤノン株式会社 電子機器及びその制御方法
CN108646561B (zh) * 2018-05-15 2021-05-18 浙江工业大学 一种基于交叉耦合的多机械臂系统固定时间参数辨识与位置同步控制方法
JP7124440B2 (ja) * 2018-05-23 2022-08-24 セイコーエプソン株式会社 ロボット制御装置およびロボットシステム
DK180068B1 (en) * 2018-07-16 2020-03-19 Onrobot A/S Safe Collaborative Gripping Device
CN109483534B (zh) * 2018-11-08 2022-08-02 腾讯科技(深圳)有限公司 一种物体抓取方法、装置和系统
US10335947B1 (en) * 2019-01-18 2019-07-02 Mujin, Inc. Robotic system with piece-loss management mechanism
CN110065070B (zh) * 2019-04-29 2020-09-18 华中科技大学 一种基于动力学模型的机器人自适应阻抗控制系统
CN110842911B (zh) * 2019-09-29 2022-04-29 哈尔滨工程大学 考虑关节电机特性的柔性机械臂联合建模和滑模控制方法
CN111640495B (zh) * 2020-05-29 2024-05-31 北京机械设备研究所 基于阻抗控制的变力跟踪控制方法及装置
CN112372637B (zh) * 2020-10-27 2022-05-06 东方红卫星移动通信有限公司 低轨卫星空间机械臂自适应阻抗柔顺控制方法、模块及系统
CN112454351B (zh) * 2020-10-28 2022-06-21 上海景奕智能控制技术有限公司 机械手控制方法、装置及机械手
CN112792808B (zh) * 2020-12-24 2022-09-02 珞石(山东)智能科技有限公司 基于变结构滤波器的工业机器人在线轨迹规划方法及装置
CN112904728B (zh) * 2021-01-21 2023-08-11 青岛大学 一种基于改进型趋近律的机械臂滑模控制轨迹跟踪方法
CN113070881B (zh) * 2021-04-02 2022-11-11 深圳市优必选科技股份有限公司 机器人运动控制方法、装置和机器人
CN113780460A (zh) * 2021-09-18 2021-12-10 广东人工智能与先进计算研究院 一种材质识别方法、装置、机器人、电子设备及存储介质
CN113878577B (zh) * 2021-09-28 2023-05-30 深圳市海柔创新科技有限公司 机器人的控制方法、机器人、控制终端和控制系统
DE102022200943B3 (de) * 2022-01-28 2023-05-11 Kuka Deutschland Gmbh Steuern eines Teleroboters
CN114800532B (zh) * 2022-06-27 2022-09-16 西南交通大学 机械臂控制参数确定方法、装置、设备、介质和机器人
CN115157271B (zh) * 2022-09-05 2022-12-16 杭州柳叶刀机器人有限公司 机械臂控制方法、装置、控制终端及存储介质
DE102023101809B3 (de) 2023-01-25 2024-02-01 Deutsches Zentrum für Luft- und Raumfahrt e.V. Aktuatorsystem sowie Verfahren zur Federsteifigkeitsanpassung in einem Aktuatorsystem

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04141391A (ja) * 1990-10-02 1992-05-14 Citizen Watch Co Ltd コンプライアンス制御方法
JPH05265508A (ja) * 1992-03-19 1993-10-15 Fujitsu Ltd ディジタル波形整形フィルタ
JPH06246673A (ja) * 1993-02-24 1994-09-06 Yaskawa Electric Corp ロボットのコンプライアンス制御装置
JPH08243958A (ja) * 1995-03-13 1996-09-24 Yaskawa Electric Corp アーム駆動装置
JPH10582A (ja) * 1996-06-13 1998-01-06 Toshiba Corp ロボット制御装置
JPH1158278A (ja) * 1997-08-25 1999-03-02 Yaskawa Electric Corp ロボットの制御装置
JP2005014192A (ja) * 2003-06-27 2005-01-20 National Aerospace Laboratory Of Japan 回転機構用制御装置
WO2011080856A1 (ja) * 2010-01-04 2011-07-07 パナソニック株式会社 ロボット、ロボットの制御装置、及び制御方法

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1193881A (en) * 1968-02-08 1970-06-03 Telephone Mfg Co Ltd Improvements in or relating to Low Pass Filters
US3639739A (en) * 1969-02-05 1972-02-01 North American Rockwell Digital low pass filter
US4193118A (en) * 1978-07-18 1980-03-11 Motorola, Inc. Low pass digital averaging filter
US4547858A (en) * 1983-06-13 1985-10-15 Allied Corporation Dynamic control for manipulator
JPS61264414A (ja) 1985-05-20 1986-11-22 Fujitsu Ltd 移動体制御装置
US4860215A (en) * 1987-04-06 1989-08-22 California Institute Of Technology Method and apparatus for adaptive force and position control of manipulators
US5023808A (en) * 1987-04-06 1991-06-11 California Institute Of Technology Dual-arm manipulators with adaptive control
JPS6444510A (en) 1987-08-13 1989-02-16 Omron Tateisi Electronics Co Robot control device
US4808063A (en) * 1987-11-03 1989-02-28 Westinghouse Electric Corp. Robot system employing force/position control
EP0331265B1 (en) * 1988-03-01 1995-08-23 Hitachi Construction Machinery Co., Ltd. Position/force controlling apparatus for working machine with multiple of degrees of freedom
JPH0683976B2 (ja) * 1988-03-15 1994-10-26 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン コンプライアンス制御方法
US4925312A (en) * 1988-03-21 1990-05-15 Staubli International Ag Robot control system having adaptive feedforward torque control for improved accuracy
JP2770982B2 (ja) * 1989-05-25 1998-07-02 株式会社豊田中央研究所 マニピユレータの位置と力の協調制御装置
US5210706A (en) * 1989-08-25 1993-05-11 Tokyo Electric Co. Ltd. Device for measuring a physical force
JPH0569358A (ja) * 1990-12-20 1993-03-23 Fujitsu Ltd ロボツトの力制御装置
JPH04306712A (ja) 1991-04-04 1992-10-29 Kobe Steel Ltd マニピュレータの制御装置
JP2798518B2 (ja) * 1991-04-04 1998-09-17 株式会社神戸製鋼所 マニピュレータの制御装置
JPH05108108A (ja) 1991-05-10 1993-04-30 Nok Corp コンプライアンス制御方法及び制御装置
US5239246A (en) * 1992-07-08 1993-08-24 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Force reflection with compliance control
JPH06170763A (ja) 1992-12-04 1994-06-21 Fanuc Ltd 力制御を用いた研磨方法
US5497061A (en) * 1993-03-31 1996-03-05 Hitachi, Ltd. Method of controlling robot's compliance
JPH0724665A (ja) * 1993-07-05 1995-01-27 Yamatake Honeywell Co Ltd 自動組立装置
JP3424849B2 (ja) * 1994-01-14 2003-07-07 株式会社安川電機 マニピュレータのコンプライアンス制御装置
JPH09185416A (ja) * 1995-12-28 1997-07-15 Yaskawa Electric Corp マニピュレータの力制御装置
JPH10128685A (ja) 1996-10-29 1998-05-19 Toshiba Corp ロボット制御装置
JPH10151590A (ja) * 1996-11-20 1998-06-09 Yaskawa Electric Corp マニピュレータの力制御装置
EP0849053B1 (en) * 1996-12-16 2002-10-02 Kabushiki Kaisha Sankyo Seiki Seisakusho Method of controlling force assisting device and control apparatus using the same
JP3672426B2 (ja) 1996-12-19 2005-07-20 本田技研工業株式会社 脚式移動ロボットの姿勢制御装置
EP0965416B1 (en) 1996-12-19 2005-12-07 Honda Giken Kogyo Kabushiki Kaisha Attitude controller of legged moving robot
JPH11123683A (ja) * 1997-10-22 1999-05-11 Fanuc Ltd 引き抜き分解機能を有する力制御ロボット
JP3659045B2 (ja) * 1999-01-27 2005-06-15 三菱電機株式会社 ロボット制御装置
JP4480843B2 (ja) 2000-04-03 2010-06-16 ソニー株式会社 脚式移動ロボット及びその制御方法、並びに、脚式移動ロボット用相対移動測定センサ
JP3833567B2 (ja) 2002-05-01 2006-10-11 本田技研工業株式会社 移動ロボットの姿勢制御装置
JP3997405B2 (ja) 2002-07-26 2007-10-24 株式会社安川電機 移動マニピュレータの制御装置および移動マニピュレータ
JP4517726B2 (ja) 2004-05-25 2010-08-04 株式会社安川電機 アシスト装置
US9110456B2 (en) * 2004-09-08 2015-08-18 Abb Research Ltd. Robotic machining with a flexible manipulator
PL1736748T3 (pl) * 2005-06-21 2012-09-28 Mettler Toledo Gmbh Sposób przetwarzania wyjściowego sygnału przetwornika pomiarowego, jak również urządzenie do pomiaru siły do wykonywania sposobu
JP2007007779A (ja) * 2005-06-30 2007-01-18 Nachi Fujikoshi Corp ロボット制御装置
CN101870108B (zh) * 2006-01-13 2011-09-28 松下电器产业株式会社 机械手臂的控制装置
JP4202365B2 (ja) * 2006-03-07 2008-12-24 ファナック株式会社 力制御装置
PL1860410T3 (pl) * 2006-05-22 2019-05-31 Mettler Toledo Gmbh Sposób przetwarzania sygnału wyjściowego z przetwornika pomiarowego oraz urządzenie do pomiaru siły
JP4508164B2 (ja) 2006-06-26 2010-07-21 トヨタ自動車株式会社 多関節ロボット及びその制御プログラム
US20080065257A1 (en) * 2006-09-13 2008-03-13 Jianmin He Controlled material removal rate (CMRR) and self-tuning force control in robotic machining process
EP1915963A1 (en) * 2006-10-25 2008-04-30 The European Atomic Energy Community (EURATOM), represented by the European Commission Force estimation for a minimally invasive robotic surgery system
JP4258545B2 (ja) * 2006-11-22 2009-04-30 トヨタ自動車株式会社 デジタルローパスフィルタ
JP4267027B2 (ja) * 2006-12-07 2009-05-27 ファナック株式会社 ロボット制御装置
CN101327591B (zh) * 2008-07-22 2011-03-30 吉林大学 两自由度位置反馈型双向伺服手控器控制系统
JP2011008360A (ja) 2009-06-23 2011-01-13 Sumitomo Heavy Ind Ltd スライディングモード制御系の設計方法及びその設計支援装置
JP5219956B2 (ja) 2009-07-23 2013-06-26 本田技研工業株式会社 移動体の制御装置
WO2011036865A1 (ja) * 2009-09-28 2011-03-31 パナソニック株式会社 ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、及び、ロボットアーム制御用集積電子回路
JP5232124B2 (ja) 2009-10-28 2013-07-10 本田技研工業株式会社 脚式移動ロボットの制御装置
JP5483997B2 (ja) 2009-10-28 2014-05-07 本田技研工業株式会社 脚式移動ロボットの制御装置
KR101687626B1 (ko) 2010-01-06 2016-12-21 삼성전자주식회사 로봇 및 그 제어방법
JP5398592B2 (ja) 2010-03-01 2014-01-29 本田技研工業株式会社 脚式移動ロボットの運動状態評価装置
US8428780B2 (en) 2010-03-01 2013-04-23 Honda Motor Co., Ltd. External force target generating device of legged mobile robot
US8650965B2 (en) * 2010-08-31 2014-02-18 Kabushiki Kaisha Yaskawa Denki Robot, robot system, robot control device, and state determining method
JP5645564B2 (ja) * 2010-09-14 2014-12-24 キヤノン株式会社 センサ装置及びロボット装置
JP5854695B2 (ja) 2010-09-22 2016-02-09 キヤノン株式会社 ロボット装置の制御方法及びロボット装置
JP5966372B2 (ja) 2012-01-17 2016-08-10 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、ロボット制御方法及びロボット
JP5962020B2 (ja) * 2012-01-17 2016-08-03 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、ロボット及びロボット制御方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04141391A (ja) * 1990-10-02 1992-05-14 Citizen Watch Co Ltd コンプライアンス制御方法
JPH05265508A (ja) * 1992-03-19 1993-10-15 Fujitsu Ltd ディジタル波形整形フィルタ
JPH06246673A (ja) * 1993-02-24 1994-09-06 Yaskawa Electric Corp ロボットのコンプライアンス制御装置
JPH08243958A (ja) * 1995-03-13 1996-09-24 Yaskawa Electric Corp アーム駆動装置
JPH10582A (ja) * 1996-06-13 1998-01-06 Toshiba Corp ロボット制御装置
JPH1158278A (ja) * 1997-08-25 1999-03-02 Yaskawa Electric Corp ロボットの制御装置
JP2005014192A (ja) * 2003-06-27 2005-01-20 National Aerospace Laboratory Of Japan 回転機構用制御装置
WO2011080856A1 (ja) * 2010-01-04 2011-07-07 パナソニック株式会社 ロボット、ロボットの制御装置、及び制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017169098A1 (ja) * 2016-03-31 2017-10-05 ソニー株式会社 制御装置及び制御方法
CN112060094A (zh) * 2020-09-11 2020-12-11 浙大宁波理工学院 基于阻抗控制的机械臂控制方法
CN112060094B (zh) * 2020-09-11 2022-02-15 浙大宁波理工学院 基于阻抗控制的机械臂控制方法

Also Published As

Publication number Publication date
US20150202775A1 (en) 2015-07-23
EP2617533A1 (en) 2013-07-24
JP5966372B2 (ja) 2016-08-10
CN103203756B (zh) 2016-12-28
CN103203756A (zh) 2013-07-17
US20130184868A1 (en) 2013-07-18
US9020642B2 (en) 2015-04-28
US9517562B2 (en) 2016-12-13

Similar Documents

Publication Publication Date Title
JP5966372B2 (ja) ロボット制御装置、ロボットシステム、ロボット制御方法及びロボット
JP5962020B2 (ja) ロボット制御装置、ロボットシステム、ロボット及びロボット制御方法
JP6305673B2 (ja) ロボット制御システム、ロボットシステム及びロボット
EP3067162B1 (en) Master-slave system
CN101801616B (zh) 动力辅助装置及其控制方法
JP2009066685A (ja) ロボット装置及びロボット装置の制御方法
JP6226320B2 (ja) 鉛直多関節油圧マニピュレータのパラメータ同定法、同定装置および同定用プログラム
JP2013146792A (ja) ロボット制御装置、ロボットシステム、センサー情報処理装置及びロボット制御方法
JP6044511B2 (ja) ロボットの制御方法及びロボットシステム
WO2014061681A1 (ja) 多関節ロボットのウィービング制御装置
WO2021111394A8 (en) Orientation of user-input devices for controlling surgical arms
JP2009148850A (ja) ロボットの動作制御装置及びその動作制御方法
JP6390669B2 (ja) ロボット制御システム、ロボットシステム
JP2013113661A (ja) 外力検知装置、ロボット制御システム及び外力検知方法
JP2013119133A (ja) ロボット及びロボット制御方法
JP6814441B2 (ja) 駆動機械の学習制御装置及び学習制御方法
CN107636418B (zh) 一种机器人控制方法、控制设备及系统
Fellag et al. Adaptive discrete sliding mode control of a pneumatic artificial muscles robot
JPWO2018212189A1 (ja) 把持システム
Bodor et al. Predictive control of robot manipulators with flexible joints
WO2021141049A1 (ja) 制御システム
JP2007136564A (ja) マニピュレータ制御方法および装置
KR100969585B1 (ko) 범용의 로봇 직접교시를 위한 모듈
JP2011159210A (ja) パラレルリンク機構の制御装置および制御方法
Jeon et al. Hardware design on an FPGA chip of impedance force control for interaction between a human operator and a robot arm

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150116

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160303

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160620

R150 Certificate of patent or registration of utility model

Ref document number: 5966372

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees