WO2020017370A1 - 制御装置、制御方法、及び制御システム - Google Patents

制御装置、制御方法、及び制御システム Download PDF

Info

Publication number
WO2020017370A1
WO2020017370A1 PCT/JP2019/026927 JP2019026927W WO2020017370A1 WO 2020017370 A1 WO2020017370 A1 WO 2020017370A1 JP 2019026927 W JP2019026927 W JP 2019026927W WO 2020017370 A1 WO2020017370 A1 WO 2020017370A1
Authority
WO
WIPO (PCT)
Prior art keywords
torque
control
control unit
external force
control device
Prior art date
Application number
PCT/JP2019/026927
Other languages
English (en)
French (fr)
Inventor
康宏 松田
長阪 憲一郎
大雅 増田
一生 本郷
Original Assignee
ソニー株式会社
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 ソニー株式会社 filed Critical ソニー株式会社
Priority to CN201980046168.7A priority Critical patent/CN112384341A/zh
Priority to JP2020531248A priority patent/JP7375754B2/ja
Priority to EP19838444.8A priority patent/EP3825077A4/en
Priority to US17/258,857 priority patent/US11850751B2/en
Publication of WO2020017370A1 publication Critical patent/WO2020017370A1/ja

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
    • 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
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1607Calculation of inertia, jacobian matrixes and inverses
    • 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/39392Dynamic pyramiding, change vision field to small area if high tracking speed, zoom
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40201Detect contact, collision with human
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40493Task to parameter designer, adapts parameters of impedance model as function of sensors

Definitions

  • Patent Document 1 discloses a technology in which the vibration of a robot is suppressed by correcting the operation of the robot based on an external force acting on the robot detected by a sensor provided in the robot.
  • the estimation is performed based on the first external force detected by the force sensor included in the control target and the torque detected by the torque sensor included in the movable portion of the control target that moves the force sensor.
  • a control device includes a control unit that performs a comparison with a second external force and corrects a torque command value based on a result of the comparison, thereby controlling an operation of the control target.
  • Processing block 214-1B performs a process for calculating the torque command value tau a.
  • the processing block 214-1B calculates a torque command value ⁇ a by performing an inverse dynamics (ID: Inverse Dynamics) operation based on the angular acceleration (the second order differential value of the joint angle q).
  • the processing block 214-1B outputs the calculated torque command value tau a to the correction unit 219-1.
  • ID Inverse Dynamics
  • control device 200 acquires external force F s detected by force sensor 112 and external torque ⁇ e detected by torque sensor 114 (step S1000).
  • the control device 200 calculates the estimated outside torque ⁇ ex by the inverse dynamics calculation based on the current state of the joint unit 102 and the outside torque ⁇ e (step S1002).
  • the control device 200 calculates an estimated external force F ex based on the estimated external torque ⁇ ex (step S1004).
  • the control device 200 calculates a difference ⁇ between the calculated estimated external force F ex and the external force F s detected by the force sensor 112 (step S1006).
  • FIG. 10 is a block diagram illustrating a configuration example of a processing block of the control unit 210-2 according to the second embodiment.
  • the processing block configuration of the control unit 210-2 according to the second embodiment is different from the first embodiment in that the processing of the processing block 212-2A is executed by the Cartesian space control unit 212-2. Different from the embodiment. Therefore, in this section, only the processing block 212-2A will be described, and detailed description of the other processing blocks will be omitted.
  • control unit 210-3 according to the third embodiment unlike the control unit 210-3 according to other embodiments, controls a control target based on an angle instead of a torque. Subsequently, an operation example according to the third embodiment will be described.
  • the control device 900 includes a CPU (Central Processing Unit) 901, a ROM (Read Only Memory) 903, and a RAM (Random Access Memory) 905.
  • the control device 900 includes a host bus 907, a bridge 909, an external bus 911, an interface 913, an input device 915, an output device 917, a storage device 919, a drive 921, a connection port 923, and a communication device 925.
  • the hardware configuration shown here is an example, and some of the components may be omitted. Further, the hardware configuration may further include components other than the components shown here.
  • the input device 915 may be formed by a device that detects information about the user.
  • the input device 915 includes various sensors such as an image sensor (for example, a camera), a depth sensor (for example, a stereo camera), an acceleration sensor, a gyro sensor, a geomagnetic sensor, an optical sensor, a sound sensor, a distance measuring sensor, and a force sensor. May be included.
  • the input device 915 obtains information about the state of the control device 900 itself, such as the attitude and the moving speed of the control device 900, and information about the surrounding environment of the control device 900, such as brightness and noise around the control device 900. Is also good.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)

Abstract

検出される外力に応じて制御対象の動作を制御することが可能な制御装置の提供。制御対象が備える力覚センサにより検出される第1の外力と、前記力覚センサを可動させる前記制御対象の可動部が備えるトルクセンサにより検出されるトルクに基づき推定される第2の外力との比較を行い、トルク指令値を前記比較の結果に基づき補正することで、前記制御対象の動作を制御する制御部(210-1)、を備える、制御装置(200)。

Description

制御装置、制御方法、及び制御システム
 本開示は、制御装置、制御方法、及び制御システムに関する。
 近年、人間と共存及び共働するロボットに関する技術が注目されている。当該技術の一例として、ロボットの動作を制御する技術が普及し始めている。
 下記特許文献1には、ロボットに備えられたセンサが検出するロボットに作用する外力等に基づき、ロボットの動作が補正されることで、ロボットに生じる振動が抑制される技術が開示されている。
特開2017-124455号公報
 上記の技術は、例えば、ロボットが周囲の人間又は物体等に接触した際に、位置制御によりロボットに生じる振動を抑えることができる。しかしながら、当該技術は、ロボットの力の制御までは行わないため、ロボットが人間又は物体等に与える衝撃等を抑えることはできず、人間に怪我を負わせたり、周囲の物体を破損したりすることが起こり得る。そのため、ロボットが周囲の人間又は物体等に接触した際に、ロボットの力を制御すること、又はロボットが受動性を持った動作を行うこと等により、人間又は物体等へ与える衝撃を抑制するような動作をロボットが行うことが望まれる。
 そこで、本開示では、検出される外力に応じて制御対象の動作を制御することが可能な、新規かつ改良された制御装置、制御方法、及び制御システムを提案する。
 本開示によれば、制御対象が備える力覚センサにより検出される第1の外力と、前記力覚センサを可動させる前記制御対象の可動部が備えるトルクセンサにより検出されるトルクに基づき推定される第2の外力との比較を行い、トルク指令値を前記比較の結果に基づき補正することで、前記制御対象の動作を制御する制御部、を備える、制御装置が提供される。
 また、本開示によれば、制御対象が備える力覚センサにより検出される第1の外力と、前記力覚センサを可動させる前記制御対象の可動部が備えるトルクセンサにより検出されるトルクに基づき推定される第2の外力との比較を行い、トルク指令値を前記比較の結果に基づき補正することで、前記制御対象の動作を制御すること、を含む、プロセッサにより実行される制御方法が提供される。
 また、本開示によれば、アクチュエータを有する可動部と、前記可動部によって複数のリンクが連結されたアーム部と、前記可動部に作用するトルクを検出するトルクセンサと、前記アーム部の先端に作用する第1の外力を検出する力覚センサと、を備える、アーム装置と、前記第1の外力と、前記トルクに基づき推定される第2の外力との比較を行い、トルク指令値を前記比較の結果に基づき補正することで、前記アーム装置の動作を制御する制御部、を備える、制御装置と、を備える、制御システムが提供される。
 以上説明したように本開示によれば、検出される外力に応じて制御対象の動作を制御することが可能となる。
 なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
本開示の一実施形態に係るアーム装置の概略構成を示す説明図である。 比較例に係る制御部の機能構成例を示すブロック図である。 第1の実施形態に係る制御システムの構成例を示すブロック図である。 同実施形態に係る制御部の機能構成例を示すブロック図である。 同実施形態に係るゲインの連続的変化の例を示す説明図である。 同実施形態に係るゲインのステップ状変化の例を示す説明図である。 同実施形態に係る閾値群の例を示す説明図である。 同実施形態に係る制御部の処理ブロックの構成例を示すブロック図である。 同実施形態に係る制御装置の動作例を示すフローチャートである。 第2の実施形態に係る制御部の処理ブロックの構成例を示すブロック図である。 第3の実施形態に係る制御部の処理ブロックの構成例を示すブロック図である。 第4の実施形態に係る制御部の処理ブロックの構成例を示すブロック図である。 本開示の一実施形態に係るアーム装置及び制御装置のハードウェア構成例を示すブロック図である。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 なお、説明は以下の順序で行うものとする。
 1.概要
 2.第1の実施形態
  2.1.構成例
  2.2.動作例
 3.第2の実施形態
  3.1.構成例
  3.2.動作例
 4.第3の実施形態
  4.1.構成例
  4.2.動作例
 5.第4の実施形態
  5.1.構成例
  5.2.動作例
 6.ハードウェア構成例
 7.まとめ
 <<1.概要>>
 以下では、図1、図2を参照しながら、本開示の一実施形態の概要について説明する。以下では、本開示の一実施形態に係る制御装置による制御対象をアーム装置とし、制御装置が当該アーム装置の動作を制御する例について説明する。なお、制御対象は、アーム装置に限定されない。
 <1.1.アーム装置の概要>
 図1は、本開示の一実施形態に係るアーム装置100の概略構成を示す説明図である。アーム装置100は、例えば、複数の関節部102、複数のリンク104、及び先端部106で構成される。図1に示すように、アーム装置100は、4つの関節部102a~102dと、4つのリンク104a~104dと、1つの先端部106とを有する。4つのリンク104a~104dは、4つの関節部102a~102d及び先端部106を連結する。具体的に、図1に示すように、リンク104aは、関節部102aと関節部b102bとを連結する。また、リンク104bは、関節部102bと関節部102cとを連結する。また、リンク104cは、関節部102cと関節部102dとを連結する。また、リンク104dは、関節部102dと先端部106とを連結する。
 関節部102は、複数のリンク104を互いに回動可能に連結する機能を有する。例えば、関節部102a~102dは、リンク104a~104dを互いに回動可能に連結する。そして、関節部102a~102dが回転して動作することにより、アーム装置100の動作が制御される。ここで、以下の説明においては、アーム装置100の各構成部材の位置とは、動作制御のために規定している空間における位置(座標)を意味し、各構成部材の姿勢とは、動作制御のために規定している空間における任意の軸に対する向き(角度)を意味する。また、以下の説明では、アーム装置100の動作(又は動作制御)とは、関節部102a~102dの動作(又は動作制御)を行うことによりアーム装置100の各構成部材の位置及び姿勢が変化される(変化が制御される)ことをいう。
 また、関節部102及びリンク104の各々は、所定の回転軸に対して回転する可動部を有する。例えば、関節部102及びリンク104の各々は、アクチュエータを有し、当該アクチュエータの駆動により所定の回転軸に対して回転する。関節部102及びリンク104の各々における回転がそれぞれ制御されることにより、例えば、アーム装置100を伸ばしたり、縮めたり(折り畳んだり)、捻ったりといった、アーム装置100の動作が制御される。なお、本実施形態に係るアーム装置100は、4つの関節部102a~102d及び4つのリンク104a~104dの各々に可動部を有するため、8つの自由度(DoF:Degrees of Freedom)を有する。よって、アーム装置100は、一般的にロボットアームの位置と姿勢を制御するために必要とされる6つの自由度(位置の3自由度+姿勢の3自由度)以上の自由度を有するため、冗長自由度を持つアーム装置である。
 なお、上述の例では、アーム装置100は、4つの関節部102、4つのリンク104、及び8つの可動部を有しているが、関節部102、リンク104、及び可動部の数は特に限定されない。例えば、アーム装置100が有する関節部102、リンク104、及び可動部の数は、先端部106の位置及び姿勢の自由度を考慮して、所望の自由度を実現するように適宜設定されてもよい。また、関節部102及びリンク104の形状、及び関節部102の回転軸の方向等も、図1に示す例に限定されず、先端部106の位置及び姿勢の自由度を考慮して、所望の自由度を実現するように適宜設定されてもよい。
 なお、本開示の一実施形態では、関節部102a~102dに設けられるアクチュエータとして、仮想アクチュエータ(VA:Virtualized Actuator)とが設けられる。仮想アクチュエータは、モータ、エンコーダ、減速機、及びトルクセンサを一体にしたアクチュエータユニットである。仮想アクチュエータは、関節部102a~102dが理想的な応答を行うように関節部の動作を制御(以下では、VA制御とも称される)し、理論モデルに従った応答を得ることができる。これにより、アーム装置100は、アーム装置100に作用する外力に対して受動性を持った動作を行うことができる。なお、仮想アクチュエータの詳細については、本願出願人による先行特許出願である国際公開第2015/046081号を参照することができる。
 上述したように、本実施形態に係る関節部102a~102dは回転機構を有する。そのため、以下の説明において、関節部102a~102dの動作制御とは、具体的には、関節部102a~102dの関節角度及び/又は発生トルク(関節部102a~102dが発生させるトルク)が制御されることを意味する。また、発生トルクは、トルクセンサにより検出され得る。例えば、本開示の一実施形態のようにアクチュエータとして仮想アクチュエータが用いられる場合、発生トルクは、仮想アクチュエータが有するトルクセンサにより検出される。一方、一般的なアクチュエータが用いられる場合、それだけでは発生トルクを検出できないため、関節部102a~102dに別途トルクセンサが設けられてもよい。
 リンク104a~104eは棒状の部材であり、関節部102により互いに連結される。例えば、関節部102aは、リンク104aとリンク104bとを回動可能に連結する。また、関節部102bは、リンク104bとリンク104cとを回動可能に連結する。また、関節部102cは、リンク104cとリンク104dとを回動可能に連結する。また、関節部102dは、リンク104dとリンク104eとを回動可能に連結する。
 アーム装置100の先端部106には、多様な先端ユニットが設けられ得る。本開示の一実施形態では、例えば、先端ユニットとしてセンサ装置が設けられる。センサ装置は、多様なセンサを含み得る。例えば、センサ装置は、カメラ、サーモカメラ、デプスセンサ、マイクロフォン(以下、マイクとも称する)、圧力センサ、静電センサ、歪センサ、力覚センサ、慣性センサ及び生体センサを含み得る。なお、先端部106は、センサ装置として、これらのうち一つ又は複数を組み合わせ含んでも良いし、同一種類の装置を複数含んでも良い。本開示の一実施形態における先端部106は、センサ装置として力覚センサを含む。
 カメラは、RGBカメラ等の、レンズ系、駆動系、及び撮像素子を有し、画像(静止画像又は動画像)を撮像する撮像装置である。サーモカメラは、赤外線等により撮像対象の温度を示す情報を含む撮像画像を撮像する撮像装置である。デプスセンサは、赤外線測距装置、超音波測距装置、LiDAR(Laser Imaging Detection and Ranging)又はステレオカメラ等の深度情報を取得する装置である。マイクは、周囲の音を収音し、アンプおよびADC(Analog Digital Converter)を介してデジタル信号に変換した音声データを出力する装置である。圧力センサは、外部から加えられた圧力を検出する装置である。静電センサは、静電容量の変化を検出する装置であり、例えば人体等の近接を検出可能な装置である。歪センサは、外部から引張力又は圧縮力を加えられることで発生する伸び又は縮みを検出する装置である。力覚センサは、力及びモーメントを検出する装置である。慣性センサは、加速度及び角速度を検出する装置である。生体センサは、心拍及び体温等の生体情報を検出する装置である。
 また、先端部106には、先端ユニットとして、エンドエフェクタが設けられてもよい。エンドエフェクタは、例えば、ハンド及びグリッパ等を含み得る。
 以上、図1を参照しながら、アーム装置100の概略構成について説明した。なお、アーム装置100は、アーム装置100を統合的に制御する制御装置により、その関節部102の動作が制御される。当該制御装置は、アーム装置100内に設けられてもよいし、アーム装置100とネットワークで接続された外部サーバ等として用意されてもよい。以下では、図2を参照しながら、比較例に係る制御部について説明する。
 <1.2.アーム装置の制御>
 以下では、本開示の一実施形態に係る制御部を説明するにあたり、まずは比較例に係る制御部について説明する。図2は、比較例に係る制御部310の機能構成例を示すブロック図である。上述したアーム装置100を統合的に制御する制御部の一例として、図2に示す機能構成を有する制御部310がある。当該制御部310は、図2に示すように、デカルト空間制御部312、トルク指令値算出部314、補正部315、VA制御部316、及び順運動学演算部318を備える。
 制御部310は、制御対象20(アーム装置100)を制御するための指令値を算出するための上位ブロックとして、デカルト空間制御部312、及びトルク指令値算出部314を有する。当該2つのブロックにより、アーム装置100全体の位置、及び姿勢を決定するための全軸協調制御系が構築されている。デカルト空間制御部312は、アーム装置100の現在の位置及び姿勢を示す現在位置姿勢x、及びアーム装置100を動作した際の目標の位置及び姿勢を示す目標位置姿勢xに基づき、デカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を算出する。なお、現在位置姿勢xは、順運動学演算部318がアーム装置100の関節部102の関節角度qに基づく順運動学演算を行うことで算出される。トルク指令値算出部314は、デカルト空間制御部312が算出した指令加速度値(現在位置姿勢xの2階微分値)を、関節空間における指令値τ(以下では、トルク指令値τとも称される)に変換する。
 また、制御部310は、上位ブロックで算出されたトルク指令値τに基づき制御対象20の動作を制御する下位ブロックとして、補正部315、及びVA制御部316を有する。補正部315は、トルク指令値τをトルクセンサが検出する外部から加えられる外トルクτで補正する。具体的に、補正部315は、トルク指令値τに外トルクτを加算することで、トルク指令値τを補正する。補正部315は、補正したトルク指令値τをVA制御部316へ出力する。VA制御部316は、外力トルクを加算して受動性を考慮したトルク指令値τ(以下では、最終トルク指令値τとも称される)をアーム装置100内のモータ指令部へ出力する。そして、アーム装置100は、VA制御部316から入力された最終トルク指令値τに基づき、関節部102を動作させる。そして、関節部102が動作後の関節角度qが順運動学演算部318へ出力される。このようにして、アーム装置100は、外力に対する受動性を持った動作を行うことができる。
 上述のように、アーム装置100に対してVA制御が行われることで、アーム装置100の作業における安全性が向上する。しかしながら、上述の制御部310の構成では、VA制御により安全性が向上する一方で、アーム装置100の作業の精度が低下してしまうという問題点がある。作業精度低下の主な要因として、トルクセンサが検出する外トルクτが挙げられる。なぜならば、外トルクτは、VA制御系においては指令値となる一方、全軸協調制御系においては外乱として作用してしまうからである。
 また、作業精度低下の他の要因として、アーム装置100の設計誤差、及び演算誤差等が挙げられる。作業空間における力、及びモーメントは、関節部102のトルクセンサが検出する外トルクτ、アーム装置100の姿勢、及びアーム装置100の構成等に基づき算出される。そのため、アーム装置100の設計誤差、及び演算誤差等により、算出される力、及びモーメントに誤差が生じると、アーム装置100の作業の精度が低下してしまう。
 本開示の実施形態は、上記の点に着目して発想されたものである。本開示の実施形態では、検出される外力に応じて制御対象の動作を制御することが可能な技術を提案する。例えば、検出される外力に応じて、制御対象を動作させる際の動作モードを切り替えることが可能な制御システムを提案する。具体的に、当該制御システムは、制御対象が精度の高い動作(第1の動作)を行う高精度モードと、制御対象が安全性の高い動作(第2の動作)を行う高安全モードとの切り替えを制御する。
 当該制御システムは、アクチュエータ、及びトルクを検出するトルクセンサを有する関節部102と、関節部102によって複数のリンク104が連結されたアーム部とで構成されるアーム装置100を含む。また、アーム装置100のアーム部の先端部106には、先端部106に作用する外力の実測値(第1の外力)を検出する力覚センサが設けられる。また、当該制御システムは、アーム装置100の動作を制御する制御部を有する制御装置も含む。制御部は、例えば、外力の実測値と、外トルクと動力学演算に基づき推定される外力の推定値(第2の外力)との比較を行い、アーム装置100への運動目的(制御指令)に基づき算出されるトルク指令値を比較の結果に基づき補正することで、アーム装置100の動作を制御する。
 具体的に、制御部は、外力の実測値と外力の推定値との比較の結果に基づきゲインを調整し、ゲインを適用することでトルク指令値を補正する。より具体的に、制御部は、トルク、アーム装置100の姿勢と動力学演算に基づき推定される推定トルクにゲインを乗算することで、ゲインを適用する。そして、制御部は、推定トルクにゲインを乗算した値に基づき、トルク指令値を補正する。
 以上、図1、図2を参照しながら、本開示の一実施形態の概要について説明した。続いて、第1の実施形態について説明する。
 <<2.第1の実施形態>>
 以下では、第1の実施形態について説明する。なお、第1の実施形態では、トルクセンサが検出するデータを用いたVA制御により高安全モードを実現する。また、第1の実施形態では、力覚センサが検出するデータを用いたインピーダンス制御により高精度モードを実現するものとする。
 <2.1.構成例>
 以下では、図3~図8を参照しながら、第1の実施形態に係る構成例について説明する。
 <2.1.1.制御システム10の構成例>
 図3は、第1の実施形態に係る制御システム10の構成例を示すブロック図である。図3に示すように、制御システム10は、アーム装置100、及び制御装置200を含み得る。
 (1)アーム装置100
 図3に示すように、アーム装置100は、センサ部110、及び関節動作部120を含み得る。
 (1-1)センサ部110
 センサ部110は、多様なセンサを含み得る。センサ部110は、例えば、図3に示すように、力覚センサ112、及びトルクセンサ114を含む。力覚センサ112は、アーム装置100の先端部106に設けられ、先端部106に作用する外力、及びモーメントを検出する。アーム装置100の先端部106は、高精度な作業が必要とされる作業空間により近い位置である。力覚センサ112は、当該位置に設けられることで、アーム装置100の他の位置に設けられる場合と比較して、より高精度な力及びモーメントを検出することができる。なお、力覚センサ112は、3次元から6次元の外力、及びモーメントを検出する。また、力覚センサ112は、基本的に、アーム装置100の関節部102が動作した際のアーム装置100の動作に応じて可動し、データを検出する。なお、力覚センサ112は、アーム装置100の関節部102が停止している際も、データを検出してもよい。また、トルクセンサ114は、アーム装置100の関節部102a~102dの各々に設けられ、関節部102a~102dの各々に作用するトルクを検出する。なお、トルクセンサ114は、関節部102の回転軸周りにおける1次元のトルクを検出する。
 (1-2)関節動作部120
 関節動作部120は、関節部102を動作させる機能を有する。例えば、関節動作部120は、制御装置200から入力される最終トルク指令値τに基づき、関節部102を動作させる。そして、関節動作部120は、動作後の関節部102の関節角度qを制御装置200へ出力する。
 (2)制御装置200
 制御装置200は、図3に示すように、制御部210-1、及び記憶部230を含み得る。
 (2-1)制御部210-1
 制御部210-1は、アーム装置100の動作を制御する機能を有する。例えば、制御部210-1は、アーム装置100のセンサ部110が検出するデータに基づき、アーム装置100の動作の制御に必要な情報を算出する。具体的に、制御部210-1は、力覚センサ112とトルクセンサ114が検出したデータに基づき、アーム装置100に対するトルク指令値τを算出する。また、制御部210-1は、力覚センサ112とトルクセンサ114が検出したデータの関係に基づき、必要に応じてトルク指令値τを補正する。例えば、制御部210-1は、トルク、アーム装置100の姿勢(例えば、関節角度)と動力学演算に基づき推定される推定トルクにゲインを乗算した値を用いて、トルク指令値を補正する。そして、制御部210-1は、最終的なトルク指令値である最終トルク指令値τをアーム装置100の関節動作部120に出力し、関節動作部120に関節部102の動作を制御させる。
 (2-2)記憶部230
 記憶部230は、各種データを記憶する機能を有する。例えば、記憶部230は、アーム装置100のセンサ部110が検出したセンサデータを記憶する。また、記憶部230は、制御部210-1の制御処理において出力されるデータを記憶する。また、記憶部230は、各種アプリケーション等のプログラム、及びデータ等を記憶する。なお、記憶部230が記憶するデータは、上述の例に限定されない。
 <2.1.2.制御部210-1の機能構成例>
 図4は、第1の実施形態に係る制御部210-1の機能構成例を示すブロック図である。図4に示すように、制御部210-1は、全軸協調制御部211-1及び関節制御部220-1を備える。
 (1)全軸協調制御部211-1
 図4に示すように、全軸協調制御部211-1は、デカルト空間制御部212-1、トルク指令値算出部214-1、外力推定部216-1、外トルク適応制御部218-1、及び補正部219-1を備える。
 (1-1)デカルト空間制御部212-1
 デカルト空間制御部212-1は、デカルト空間における指令値を算出する機能を有する。例えば、デカルト空間制御部212-1は、アーム装置100を動作した際の目標の位置及び姿勢を示す目標位置姿勢xと、アーム装置100の先端部106の力覚センサ112が検出する外力F(外力の実測値)に基づき、デカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を算出する。そして、デカルト空間制御部212-1は、算出したデカルト空間における指令加速度値をトルク指令値算出部214-1へ出力する。
 (1-2)トルク指令値算出部214-1
 トルク指令値算出部214-1は、デカルト空間における指令加速度値を関節空間における指令値τ(トルク指令値τ)に変換する機能を有する。例えば、トルク指令値算出部214-1は、デカルト空間制御部212-1が算出した指令加速度値(現在位置姿勢xの2階微分値)に基づき、関節部102の角加速度(関節角度qの2階微分値)を算出する。次いで、トルク指令値算出部214-1は、角加速度(関節角度qの2階微分値)に基づき、トルク指令値τを算出する。そして、トルク指令値算出部214-1は、算出したトルク指令値τを補正部219-1へ出力する。
 (1-3)外力推定部216-1
 外力推定部216-1は、アーム装置100の先端部106に作用していると推定される推定外力Fex(外力の推定値)を算出する機能を有する。例えば、外力推定部216-1は、アーム装置100の関節部102の関節角度q、角速度(関節角度qの微分値)、及び角加速度(関節角度qの2階微分値)に基づき、逆動力学演算を行う。そして、外力推定部216-1は、外トルクτに含まれると推定されるアーム装置100の動作のみに起因して生じたトルク(重力、遠心力等)である外トルク(τにキャレットを付して表す)を算出する。以下では、関節角度q、角速度(関節角度qの微分値)、及び角加速度(関節角度qの2階微分値)は、まとめて関節部102の現在状態とも称される。次いで、外力推定部216-1は、トルクセンサが検出する外トルクτと外トルク(キャレットを付したτ)との差分を推定外トルク(推定トルク)τexとして算出する。具体的に、外力推定部216-1は、外トルクτから外トルク(キャレットを付したτ)を減算して推定外トルクτexを算出する。これにより、アーム装置100の動作のみに起因して生じたトルクがキャンセルされるため、外力推定部216-1は、人や環境等との衝突で発生した外トルク成分を算出することができる。次いで、外力推定部216-1は、推定外トルクτexに基づき、推定外力Fexを算出する。そして、外力推定部216-1は、算出した推定外力Fexを外トルク適応制御部218-1へ出力する。
 (1-4)外トルク適応制御部218-1
 外トルク適応制御部218-1は、高精度モードと高安全モードとを切り替える機能を有する。例えば、外トルク適応制御部218-1は、外力Fと推定外力Fexとを比較して差分εを抽出し、当該差分εに基づき、アーム装置100の全体に作用する外力(第3の外力)の作用状態を検出する。以下では、アーム装置100の全体に作用する外力は、全体外力とも称される。次いで、外トルク適応制御部218-1は、作用状態に応じて高精度モードと高安全モードとを切り替える。差分εの抽出に用いられる推定外力Fexは、外力推定部216-1による算出時に、アーム装置100の動作のみに起因して生じたトルク(重力、遠心力等)がキャンセルされ、人や環境等との衝突で発生した外トルク成分として算出されている。そのため、外トルク適応制御部218-1は、差分εの抽出にあたり、当該推定外力Fexと力覚センサが検出する外力Fとを同レベルで扱うことができる。
 アーム装置100に想定外の全体外力が作用している作用状態である場合、外トルク適応制御部218-1は、例えば、動作モードを高安全モードに切り替える。これは、即ち、力覚センサ112とトルクセンサ114との2つのセンサ系の間で不整合が生じたと判定されたことを意味する。そのため、外トルク適応制御部218-1は、力覚センサ112が検出する外力Fとトルクセンサ114が検出する外トルクτとを用いて安全性の高い力制御を行う高安全モードに切り替える。外トルク適応制御部218-1は、例えば、所定の値(第2の値)に近づくようにゲインαを調整することで、動作モードとして高安全モードを設定する。具体的に、外トルク適応制御部218-1は、ゲインαが1に近づくように設定する。そして、外トルク適応制御部218-1は、推定外トルクτexにゲインαを乗じたατexを補正部219-1へ出力する。なお、ゲインαが示す値は、0≦α≦1の範囲の値であるとする。また、所定の値(第2の値)には、0≦α≦1の条件を満たす任意の値が設定されてよい。
 アーム装置100に想定内の全体外力が作用している作用状態である場合、外トルク適応制御部218-1は、例えば、動作モードを高精度モードに切り替える。これは、即ち、力覚センサ112とトルクセンサ114との2つのセンサ系の間で整合が取れていると判定されたことを意味する。そのため、外トルク適応制御部218-1は、力覚センサ112が検出する外力Fのみを用いた精度の高い作業を行う高精度モードに切り替える。外トルク適応制御部218-1は、例えば、所定の値(第1の値)に近づくようにゲインαを調整することで、動作モードとして高精度モードを設定する。具体的に、外トルク適応制御部218-1は、ゲインαが0に近づくように設定する。また、力覚センサ112とトルクセンサ114との2つのセンサ系の間で整合が取れており、周囲の人間または物体等と接触する危険性がなく作業ができると想定される場合、外トルク適応制御部218-1は、ゲインαを0にしてもよい。これにより、外トルク適応制御部218-1は、ατexを0として補正部219-1へ出力することができる。即ち、外トルク適応制御部218-1は、トルクセンサが検出する外トルクτの入力を無効化することができる。なお、所定の値(第1の値)には、0≦α≦1の条件を満たす任意の値が設定されてよい。
 作用状態は、差分εと所定の閾値との比較に基づき、外トルク適応制御部218-1に検出される。例えば、差分εが所定の閾値以上である場合、作用状態は、アーム装置100に想定外の全体外力が作用している作用状態である。また、差分εが所定の閾値以上でない場合、作用状態は、アーム装置100に想定内の全体外力が作用している作用状態である。なお、作用状態の判定条件は、上述の例に限定されず、任意の判定条件であってもよい。
 ゲインαは、差分εに基づき、任意の方法で外トルク適応制御部218-1に調整される。例えば、外トルク適応制御部218-1は、ゲインαを連続的に変化させる。これにより、外トルク適応制御部218-1は、高精度モードと高安全モードとを連続的に切り替えてよい。図5は、第1の実施形態に係るゲインの連続的変化の例を示す説明図である。図5の左側のゲインαの連続的変化の例1は、ゲインαが線形型で連続的に変化する例を示す。図5の中央のゲインαの連続的変化の例2は、ゲインαが多項式型で連続的に変化する例を示す。図5の右側のゲインαの連続的変化の例3は、ゲインαが非線形型(テーブル参照型)で連続的に変化する例を示す。図5の各々の図の例に示すように、差分εが所定の範囲内(例えば、閾値THR1から閾値THR2の範囲内)の値である場合、外トルク適応制御部218-1は、ゲインαを0から1まで連続的に変化させてもよい。なお、差分εが閾値THR1からTHR2の範囲内である場合、ゲインαは、非線形関数型、学習型等で連続的に変化してもよい。このように、ゲインαの連続的な変化により動作モードが連続的に切り替えられることで、アーム装置100は、動作モードの切り替え時における動作の変化を滑らかに行うことができる。なお、以下では、閾値THR1及び閾値THR2等の複数の閾値は、まとめて閾値群とも称される。
 また、外トルク適応制御部218-1は、ゲインαを非連続的に変化させてもよい。これにより、外トルク適応制御部218-1は、高精度モードと高安全モードとを非連続的に切り替えてよい。図6は、第1の実施形態に係るゲインのステップ状変化の例を示す説明図である。図6のゲインαのステップ状変化の例に示すように、差分εが所定の閾値以上であるか否かに応じて、外トルク適応制御部218-1は、ゲインαを0または1のいずれか一方となるようにステップ状に変化させてもよい。
 なお、動作モードが高安全モードである時に、差分εが小さくなり、アーム装置100に想定外の外力Fが作用していないと判定されたとする。その場合、外トルク適応制御部218-1は、動作モードを高安全モードから高精度モードへシームレスに切り替えてもよい。一方、動作モードが高精度モードである時に、差分εが大きくなり、アーム装置100に想定外の外力Fが作用していると判定されたとする。その場合、外トルク適応制御部218-1は、動作モードを高精度モードから高安全モードへシームレスに切り替えてもよい。
 閾値群は、適応的に変更されてもよい。図7は、本開示の実施形態に係る閾値群の例を示す説明図である。例えば、外トルク適応制御部218-1は、アーム装置100に指令されるタスクの内容に応じて閾値群を変更する。具体的に、タスクの内容が人とのインタラクションや動的な環境における動作を示す場合、アーム装置100は安全性の高い動作を行うことを求められるため、外トルク適応制御部218-1は、図7の左側の閾値群の例1のように、THR1及びTHR2を設定する。また、タスクの内容が精密加工や液体運搬等の動作を示す場合、アーム装置100は精度の高い動作を求められるため、外トルク適応制御部218-1は、図7の右側の閾値群の例2のように、THR3及びTHR4を設定する。
 なお閾値群は、記憶部230にて、テーブルに直接的な値として保持されてもよいし、関数により表現され保持されてもよい。デーブルに直接的な値として保持される場合、閾値群は、例えば、{THR1、THR2}、{THR3、THR4}のように保持される。また、関数により表現される場合、閾値群は、例えば、THR3=f(THR1,THR2,param)、THR4=f’(THR1,THR2,param)のように表現される。
 また、上述の例では、動作モードとして高精度モードと高安全モードとの2つのモードの切り替えについて説明したが、動作モードは、アーム装置100の作業内容に応じて、他のモードに切り替えられてもよい。例えば、動作モードは、アーム装置100に作用する想定外の外力Fに対して、アーム装置100が敏感な動作を行う敏感モードに切り替えられてもよい。敏感モードの場合、外トルク適応制御部218-1は、ゲインαが1.0である領域が多くなるように閾値群を設定する。これにより、アーム装置100が推定外トルクτexの影響を受けやすくなるため、外トルク適応制御部218-1は、アーム装置100が外力Fに対してより敏感に動作するように動作を制御することができる。また、動作モードは、アーム装置100に作用する想定外の外力Fに対して、アーム装置100が鈍感な動作を行う鈍感モードに切り替えられてもよい。鈍感モードの場合、外トルク適応制御部218-1は、ゲインαが0.0である領域が多くなるように閾値群を設定する。これにより、アーム装置100が推定外トルクτexの影響を受けづらくなるため、外トルク適応制御部218-1は、アーム装置100が外力Fに対してより鈍感に動作するように動作を制御することができる。
 なお、外トルク適応制御部218-1は、例えば、過去に外力推定部216-1から入力された推定外力Fexの値、過去に調整したゲインαの値等に基づき機械学習を行い、当該機械学習の結果に基づき、ゲインαを調整してもよい。
 (1-5)補正部219-1
 補正部219-1は、最終トルク指令値τを算出する機能を有する。例えば、補正部219-1は、高安全モード、または高精度モードの各々のモードに応じて調整されたゲインαが適用されたατexに基づき、トルク指令値τを補正し、最終トルク指令値τを算出する。具体的に、補正部219-1は、動作モードが高安全モードである場合、トルク指令値τにατexを加算することで、トルク指令値τを補正する。これにより、補正部219-1は、アーム装置100が力覚センサ112により検出される外力Fとトルクセンサ114により検出される外トルクτとに基づき受動性を持った動作をするように最終トルク指令値τを算出することができる。そして、補正部219-1は、算出した最終トルク指令値τを関節制御部220-1へ出力する。
 また、補正部219-1は、動作モードが高精度モードである場合、ατexを用いずにτをそのまま最終トルク指令値τとする。これにより、補正部219-1は、アーム装置100が力覚センサ112により検出される外力Fのみに基づき精度の高い作業を行うように最終トルク指令値τを算出することができる。そして、補正部219-1は、算出した最終トルク指令値τを関節制御部220-1へ出力する。なお、補正部219-1は、動作モードが高精度モードである場合であっても、トルク指令値τとατexとを加算することにより、トルク指令値τを補正して最終トルク指令値τを算出してもよい。
 (2)関節制御部220-1
 関節制御部220-1は、最終トルク指令値τに基づき、制御対象の動作を制御する機能を有する。関節制御部220-1は、高安全モードにおいて補正部219-1から最終トルク指令値τが入力された場合、当該最終トルク指令値τに基づき、アーム装置100が受動性を持った動作を行うように、アーム装置100の関節部102の動作を制御する。受動性を持った動作として、例えば、関節制御部220-1は、アーム装置100が人間と接触した際に、アーム装置100が人間との接触方向と反対方向へ移動して人間から離れる動作を行うように、関節部102を動作させる。また、高精度モードにおいて補正部219-1から最終トルク指令値τが入力された場合、当該最終トルク指令値τに基づき、アーム装置100が高精度な作業を行うように、アーム装置100の関節部102の動作を制御する。なお、関節制御部220-1は、トルクセンサが検出する外トルクτが無効化された上で算出された最終トルク指令値τが補正部219-1から入力された場合、アーム装置100の関節部102のアクチュエータの制御剛性を上げることができる。これにより、関節制御部220-1は、アーム装置100の先端部106により高精度な作業を行わせることができる。
 以上、図3~図7を参照しながら、第1の実施形態に係る制御部210-1の機能構成例について説明した。続いて、第1の実施形態に係る制御部210-1の各構成要素における処理の詳細について説明する。
 <2.1.3.制御部210-1の処理ブロック構成例>
 図8は、第1の実施形態に係る制御部210-1の処理ブロックの構成例を示すブロック図である。図8に示すように、デカルト空間制御部212-1は、処理ブロック212-1Aを備える。また、トルク指令値算出部214-1は、処理ブロック214-1A、及び処理ブロック214-1Bを備える。また、外力推定部216-1は、処理ブロック216-1A、処理ブロック216-1B、及び処理ブロック216-1Cを備える。また、外トルク適応制御部218-1は、処理ブロック218-1A、処理ブロック218-1B、及び処理ブロック218-1Cを備える。また、関節制御部220-1は、処理ブロック220-1Aを備える。
 (1)処理ブロック212-1A
 処理ブロック212-1Aは、デカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を算出する処理を行う。例えば、処理ブロック212-1Aは、目標姿勢位置xと力覚センサ112が検出した外力Fとに基づき、デカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を算出する。アーム装置100の現在位置姿勢をxとすると、外力の実測値Fは、以下の数式(1)のように示される。
Figure JPOXMLDOC01-appb-M000001
 なお、数式(1)のMはインピーダンス制御における慣性行列を、Dはインピーダンス制御における粘性行列を、Kはインピーダンス制御における剛性行列を示している。
 処理ブロック212-1Aは、e=(x-x)として数式(1)を変形した以下の数式(2)により、デカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を算出する。そして、処理ブロック212-1Aは、算出したデカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を処理ブロック214-1Aへ出力する。
Figure JPOXMLDOC01-appb-M000002
 (2)処理ブロック214-1A
 処理ブロック214-1Aは、関節部102の角加速度(関節角度qの2階微分値)を算出する処理を行う。例えば、処理ブロック214-1Aは、ヤコビ行列Jの一般化逆行列Jを用いることで、デカルト空間における指令加速度値(現在位置姿勢xの2階微分値)から関節部102の角加速度(関節角度qの2階微分値)を算出する。そして、処理ブロック214-1Aは、算出した角加速度(関節角度qの2階微分値)を処理ブロック214-1Bへ出力する。なお、処理ブロック214-1Aにおける関節部102の角加速度(関節角度qの2階微分値)の算出方法は、ヤコビ行列Jの一般化逆行列Jを用いる方法に限定されない。例えば、関節部102の角加速度(関節角度qの2階微分値)は、特異点回避型の逆行列を用いる方法により算出されてもよい。
 (3)処理ブロック214-1B
 処理ブロック214-1Bは、トルク指令値τを算出する処理を行う。例えば、処理ブロック214-1Bは、角加速度(関節角度qの2階微分値)に基づき逆動力学(ID:Inverse Dynamics)演算を行うことで、トルク指令値τを算出する。そして、処理ブロック214-1Bは、算出したトルク指令値τを補正部219-1へ出力する。
 (4)処理ブロック216-1A
 処理ブロック216-1Aは、外トルク(キャレットを付したτ)を算出する処理を行う。例えば、処理ブロック216-1Aは、関節部102の関節角度qに基づき逆動力学演算を行うことで、外トルク(キャレットを付したτ)を算出する。具体的に、処理ブロック216-1Aは、関節部102の関節角度qから、角速度(関節角度qの微分値)及び角加速度(関節角度qの2階微分値)を算出することで関節部102の現在状態を検出する。そして、処理ブロック216-1Aは、当該現在状態に基づき逆動力学演算を行うことで、外トルク(キャレットを付したτ)を算出する。そして、処理ブロック216-1Aは、算出した外トルク(キャレットを付したτ)を処理ブロック216-1Bへ出力する。なお、外トルク(キャレットを付したτ)は、以下の数式(3)により算出される。
Figure JPOXMLDOC01-appb-M000003
 なお、数式(3)のキャレットを付したMは慣性行列を、キャレットを付したcは遠心力及びコリオリ力を、キャレットを付したgは重力項を示している。
 また、外トルク(キャレットを付したτ)は、機械要素の摩擦、バックラッシ、及びハーネス捻転等のモデル化により算出されてもよい。例えば、機械要素(例えば摩擦)がモデル化された場合、外トルク(キャレットを付したτ)は、上記数式(3)ではなく、以下の数式(4)により算出される。
Figure JPOXMLDOC01-appb-M000004
 数式(4)に示すキャレットを付したhを有する項は摩擦項を示している。クーロン摩擦力をF、符号関数をsgn()、粘性摩擦をDとすると、摩擦項は、以下の数式(5)により算出される。
Figure JPOXMLDOC01-appb-M000005
 また、外トルク(キャレットを付したτ)は、弾性アクチュエータ(SEA:Series Elastic Actuator)のバネ要素のモデル化により算出されてもよい。弾性アクチュエータは、例えば、モータとリンクとの間に弾性体であるバネが備えられた機構である。モータ側の関節角度をθ、バネの関節剛性をK、リンク側の関節角度をqとすると、外トルク(キャレットを付したτ)は、上記数式(3)及び数式(4)ではなく、以下の数式(6)により算出される。
Figure JPOXMLDOC01-appb-M000006
 (5)処理ブロック216-1B
 処理ブロック216-1Bは、推定外トルクτexを算出する処理を行う。例えば、処理ブロック216-1Bは、トルクセンサ114が検出する外トルクτから処理ブロック216-1Aが算出した外トルク(キャレットを付したτ)を減算することで、外トルクτexを算出する。そして、処理ブロック216-1Bは、算出した外トルク(キャレットを付したτ)を処理ブロック216-1C,及び処理ブロック218-1Cへ出力する。
 (6)処理ブロック216-1C
 処理ブロック216-1Cは、推定外力Fexを算出する処理を行う。例えば、処理ブロック216-1Cは、ヤコビ行列Jを用いることで、推定外トルクτexから推定外力Fexを算出する。そして、処理ブロック216-1Cは、算出した推定外力Fexを処理ブロック218-1Aへ出力する。
 (7)処理ブロック218-1A
 処理ブロック218-1Aは、差分εを算出する処理を行う。例えば、処理ブロック218-1Aは、処理ブロック216-1Cから入力される推定外力Fexから力覚センサ112が検出する外力Fを減算することで、差分εを算出する。そして、処理ブロック218-1Aは、算出した差分εを処理ブロック218-1Bへ出力する。
 (8)処理ブロック218-1B
 処理ブロック218-1Bは、ゲインαを調整する処理を行う。例えば、処理ブロック218-1Bは、処理ブロック218-1Aが算出した差分εに基づき、ゲインαを調整する。そして、処理ブロック218-1Bは、調整後のゲインαを処理ブロック218-1Cへ出力する。
 (9)処理ブロック218-1C
 処理ブロック218-1Cは、推定外トルクτexにゲインαを適用する処理を行う。例えば、処理ブロック218-1Cは、処理ブロック216-1Bから入力される推定外トルクτexと処理ブロック218-1Bが調整したゲインαとを乗算することでατexを算出する。そして、処理ブロック218-1Cは、算出したατexを補正部219-1へ出力する。
 (10)処理ブロック220-1A
 処理ブロック220-1Aは、VA制御に関する処理を行う。例えば、処理ブロック220-1Aは、トルクセンサ114が検出した外トルクに基づき補正された最終トルク指令値τが補正部219-1から入力されると、アーム装置100(制御対象20)が受動性を持った動作を行うように関節部102の動作を制御する。
 以上、図3~図8を参照しながら、第1の実施形態に係る構成例について説明した。続いて、第1の実施形態に係る動作例について説明する。
 <2.2.動作例>
 以下では、図9を参照しながら、第1の実施形態に係る制御装置200の動作例について説明する。図9は、第1の実施形態に係る制御装置200の動作例を示すフローチャートである。
 図9に示すように、まず、制御装置200は、力覚センサ112が検出する外力F、及びトルクセンサ114が検出する外トルクτを取得する(ステップS1000)。制御装置200は、関節部102の現在状態に基づく逆動力学演算と外トルクτにより、推定外トルクτexを算出する(ステップS1002)。制御装置200は、推定外トルクτexに基づき推定される推定外力Fexを算出する(ステップS1004)。制御装置200は、算出した推定外力Fexと力覚センサ112が検出した外力Fとの差分εを算出する(ステップS1006)。
 差分εを算出後、制御装置200は、差分εの閾値群を設定する(ステップS1008)。なお、ステップS1008にて、当該閾値群は、距離情報d、アーム装置100に対する付く指令、又はアーム装置100の過去の動作履歴のいずれに基づき決定されてもよい。制御装置200は、設定した差分εの閾値群に基づき、算出した差分εに応じたゲインαを設定する(ステップS1010)。ゲインαを設定後、制御装置200は、制御指令値に基づき算出したトルク指令値τを、推定外トルクτexにゲインαを適用したατexで補正し、最終トルク指令値τを算出する(ステップS1012)。そして、制御装置200は、最終トルク指令値τに基づき、制御対象であるアーム装置100の関節部102を動作させることで、アーム装置100の動作を制御し(ステップS1014)、処理を終了する。
 以上、図9を参照しながら、第1の実施形態に係る制御部210-1の動作例について説明した。
 以上、図3~図9を参照しながら、第1の実施形態について説明した。続いて、第2~第4の実施形態について説明する。なお、以下に説明する第2~第4の実施形態に係る制御システム10は、制御部210の処理ブロックの構成のみが第1の実施形態の制御システム10と異なる。したがって、以下では、第1の実施形態と相違する事項である制御部210の処理ブロックの構成を主に説明し、第1の実施形態と重複する事項の詳細な説明を省略する。
 <<3.第2の実施形態>>
 以下では、図10を参照しながら、第2の実施形態について説明する。上述の第1の実施形態では、高精度モードが力覚センサにより検出されるデータを用いたインピーダンス制御により実現される例について説明した。第2の実施形態では、高精度モードがPID(Proportional Integral Differential)制御により実現される例について説明する。第2の実施形態では、制御部210-2のデカルト空間制御部212-2の処理ブロックにて、第1の実施形態とは異なる処理が実行される。以下では、当該異なる処理について、主に説明する。
 <3.1.構成例> 
  <3.1.1.制御システム10の構成例>
 第2の実施形態に係る制御システム10の構成は、第1の実施形態にて説明した制御システム10の構成と同一である。したがって、本節では、制御システム10の構成に関する詳細な説明を省略する。
 <3.1.2.制御部210-2の機能構成例>
 第2の実施形態に係る制御部210-2の機能構成は、第1の実施形態にて説明した制御部210-1の機能構成と同一である。したがって、本節では、制御部210-2の機能構成に関する詳細な説明を省略する。
 <3.1.3.制御部210-2の処理ブロック構成例>
 図10は、第2の実施形態に係る制御部210-2の処理ブロックの構成例を示すブロック図である。図10に示すように、第2の実施形態に係る制御部210-2の処理ブロック構成は、デカルト空間制御部212-2にて処理ブロック212-2Aの処理が実行される点が第1の実施形態と異なる。したがって、本節では、処理ブロック212-2Aに関してのみ説明し、他の処理ブロックに関する詳細な説明を省略する。
 処理ブロック212-2Aは、デカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を算出する処理を行う。例えば、処理ブロック212-2Aは、目標姿勢位置xに基づき、デカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を算出する。アーム装置100の現在位置姿勢をxとすると、デカルト空間における指令加速度値(現在位置姿勢xの2階微分値)は、以下の数式(7)のように示される。
Figure JPOXMLDOC01-appb-M000007
 なお、数式(7)のKはPID制御における比例ゲイン、KはPID制御における微分ゲイン、KはPID制御における積分ゲインを示している。また、e=x-x、微分を示すs、積分を示す1/sを用いて数式(7)を簡略化すると、数式(7)は以下の数式(8)のようになる。
Figure JPOXMLDOC01-appb-M000008
 処理ブロック212-2Aは、数式(8)により、デカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を算出する。そして、処理ブロック212-2Aは、算出したデカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を処理ブロック214-1Aへ出力する。
 上述のように、第1の実施形態では高精度モードがインピーダンス制御により実現される例、第2の実施形態では高精度モードがPID制御により実現される例について説明したが、高精度モードの制御方法は上述の例に限定されない。例えば、高精度モードは、ハイブリッド制御により制御されてもよい。
 以上、図10を参照しながら、第2の実施形態に係る構成例について説明した。続いて、第2の実施形態に係る動作例について説明する。
 <3.2.動作例>
 第2の実施形態に係る制御装置200の動作は、第1の実施形態にて説明した制御装置200の動作と同一である。したがって、本節では、制御装置200の動作例に関する詳細な説明を省略する。
 以上、図10を参照しながら、第2の実施形態について説明した。続いて、第3の実施形態について説明する。
 <<4.第3の実施形態>>
 以下では、図11を参照しながら、第3の実施形態について説明する。上述の第1の実施形態では、高安全モードの制御にVA制御を用いる例について説明した。第3の実施形態では、高精度モードにおける位置制御にVA制御を用いる例について説明する。第3の実施形態では、制御部210-3の関節角度指令値算出部214-3の処理ブロック、外力推定部216-3の処理ブロック、及び外トルク適応制御部218-3の処理ブロックにて、第1の実施形態とは異なる処理が実行される。以下では、当該異なる処理について主に説明する。
 <4.1.構成例> 
 <4.1.1.制御システム10の構成例>
 第3の実施形態に係る制御システム10の構成は、第1の実施形態にて説明した制御システム10の構成と同一である。したがって、本節では、制御システム10の構成に関する詳細な説明を省略する。
 <4.1.2.制御部210-3の機能構成例>
 第3の実施形態に係る制御部210-3の機能構成は、第1の実施形態にて説明した制御部210-1の機能構成と同一である。したがって、本節では、制御部210-3の機能構成に関する詳細な説明を省略する。
 <4.1.3.制御部210-3の処理ブロック構成例>
 図11は、第3の実施形態に係る制御部210-3の処理ブロックの構成例を示すブロック図である。図11に示すように、第3の実施形態に係る制御部210-3の処理ブロック構成は、トルク指令値算出部214-1ではなく、関節角度指令値算出部214-3を有する点が第1の実施形態と異なる。また、制御部210-3の処理ブロック構成は、外力推定部216-3にて、処理ブロック216-1A~216-1Cに加えて、処理ブロック216-3Dの処理が実行される点が第1の実施形態と異なる。また、制御部210-3の処理ブロック構成は、外トルク適応制御部218-3にて、処理ブロック218-3Dが実行する処理が第1の実施形態と異なる。したがって、本節では、関節角度指令値算出部214-3、処理ブロック216-3D、及び処理ブロック218-3Dに関してのみ説明し、他の処理ブロックに関する詳細な説明を省略する。
 (1)関節角度指令値算出部214-3
 関節角度指令値算出部214-3は、関節角度指令値qaを算出する処理を行う。関節角度指令値算出部214-3は、まず、積分処理を行う。例えば、関節角度指令値算出部214-3は、処理ブロック212-1Aから入力されるデカルト空間における指令加速度値(現在位置姿勢xの2階微分値)を積分することで、現在位置姿勢xの1階微分値を算出する。続けて、関節角度指令値算出部214-3は、現在位置姿勢xの1階微分値を積分することで、現在位置姿勢xを算出する。次いで、関節角度指令値算出部214-3は、例えば、現在位置姿勢xに基づき逆運動学(IK:Inverse Kinematics)演算を行うことで、関節角度指令値qを算出する。そして、関節角度指令値算出部214-3は、算出した関節角度指令値qを補正部219-1へ出力する。
 (3)処理ブロック216-3D
 処理ブロック216-3Dは、推定関節角度qexを算出する処理を行う。例えば、処理ブロック216-3Dは、以下の数式(9)により推定関節角度qexを算出する。そして、処理ブロック216-3Dは、算出した推定関節角度qexを処理ブロック218-3Dへ出力する。なお、数式(9)のIは関節部102の仮想イナーシャ、vは関節部102の内部の仮想的な粘性係数である。
Figure JPOXMLDOC01-appb-M000009
 (4)処理ブロック218-3D
 処理ブロック218-3Dは、推定関節角度qexにゲインαを適用する処理を行う。例えば、処理ブロック218-3Dは、処理ブロック216-3Dから入力される推定関節角度qexと処理ブロック218-1Bが調整したゲインαとを乗算することでαqexを算出する。そして、処理ブロック218-3Dは、算出したαqexを補正部219-1へ出力する。
 以上、図11を参照しながら、第3の実施形態に係る構成例について説明した。上述のように、第3の実施形態に係る制御部210-3は、他の実施形態に係る制御部210-3と異なり、トルクではなく角度に基づき、制御対象の制御を行う。続いて、第3の実施形態に係る動作例について説明する。
 <4.2.動作例>
 第3の実施形態に係る制御装置200の動作は、第1の実施形態にて説明した制御装置200の動作と同一である。したがって、本節では、制御装置200の動作例に関する詳細な説明を省略する。
 以上、図11を参照しながら、第3の実施形態について説明した。続いて、第4の実施形態について説明する。
 <<5.第4の実施形態>>
 以下では、図12を参照しながら、第4の実施形態について説明する。上述の第1の実施形態では、外トルク適応制御部218-1に対して、力覚センサ112が検出する外力F、及びトルクセンサ114が検出する外トルクτに基づき算出される推定外力Fexが入力される例について説明した。第4の実施形態では、外トルク適応制御部218-4に対して、アーム装置100に外力Fが作用する前の周辺情報も入力される例について説明する。第4の実施形態では、制御部210-4の外トルク適応制御部218-4の処理ブロックにて、第1の実施形態とは異なる処理が実行される。以下では、当該異なる処理について主に説明する。
 <5.1.構成例>
 <5.1.1.制御システム10の構成例>
 第4の実施形態に係る制御システム10の構成は、第1の実施形態にて説明した制御システム10の構成と同一である。したがって、本節では、制御システム10の構成に関する詳細な説明を省略する。
 <5.1.2.制御部210-4の機能構成例>
 第4の実施形態に係る制御部210-4の機能構成は、第1の実施形態にて説明した制御部210-1の機能構成と同一である。したがって、本節では、制御部210-4の機能構成に関する詳細な説明を省略する。
 <5.1.3.制御部210-4の処理ブロック構成例>
 図12は、第4の実施形態に係る制御部210-4の処理ブロックの構成例を示すブロック図である。図12に示すように、第4の実施形態に係る制御部210-4の処理ブロック構成は、外トルク適応制御部218-4の処理ブロック218-4Eにおける処理が第1の実施形態と異なる。したがって、本節では、処理ブロック218-4Eに関してのみ説明し、他の処理ブロックに関する詳細な説明を省略する。
 処理ブロック218-4Eは、ゲインαを調整する処理を行う。例えば、処理ブロック218-4Eは、処理ブロック218-1Aから入力される差分εに加え、外部から入力される距離情報dに基づき、ゲインαを調整する。そして、処理ブロック218-4Eは、調整後のゲインαを処理ブロック218-1Cへ出力する。
 距離情報dは、例えば、アーム装置100に対して外力Fが作用する前に、センサ部110により検出され、処理ブロック218-4Eへ入力される。距離情報dを検出するセンサ部110は、例えば、ステレオカメラ、及び単眼カメラ等のビジョンセンサ、Photoreflector、及びToF(Time of Flight)センサ等の距離センサ等である。また、センサ部110は、3D LiDAR(Laser Imaging Detection and Ranging)、及びLaser Range Finder等の測距装置であってもよい。距離情報dは、具体的に、アーム装置100から周囲の人間または物体等までの距離を示す情報である。処理ブロック218-4Eは、人間または物体等までの距離を予め知ることで、人間または物体等を回避することを考慮したゲインαの調整を行うことができる。これにより、アーム装置100は、人間または物体等までの距離を考慮した動作をすることで不要な接触を回避することができ、作業における安全性をより向上することができる。
 以上、図12を参照しながら、第4の実施形態に係る構成例について説明した。続いて、第4の実施形態に係る動作例について説明する。
 <5.2.動作例>
 第4の実施形態に係る制御装置200の動作は、第1の実施形態にて説明した制御装置200の動作と同一である。したがって、本節では、制御装置200の動作例に関する詳細な説明を省略する。
 以上、図12を参照しながら、第4の実施形態について説明した。続いて、本開示の一実施形態に係るアーム装置100及び制御装置200のハードウェア構成について説明する。
 <<6.ハードウェア構成例>>
 以下では、図12を参照しながら、本開示の一実施形態に係るアーム装置100及び制御装置200のハードウェア構成例について説明する。図12は、本開示の一実施形態に係るアーム装置100及び制御装置200のハードウェア構成例を示すブロック図である。本実施形態に係る制御システム10おける制御処理は、ソフトウェアと、以下に説明するハードウェアとの協働により実現される。
 図12に示すように、制御装置900は、CPU(Central Processing Unit)901、ROM(Read Only Memory)903、及びRAM(Random Access Memory)905を備える。また、制御装置900は、ホストバス907、ブリッジ909、外部バス911、インタフェース913、入力装置915、出力装置917、ストレージ装置919、ドライブ921、接続ポート923、及び通信装置925を備える。なお、ここで示すハードウェア構成は一例であり、構成要素の一部が省略されてもよい。また、ハードウェア構成は、ここで示される構成要素以外の構成要素をさらに含んでもよい。
 (CPU901、ROM903、RAM905)
 CPU901は、例えば、演算処理装置又は制御装置として機能し、ROM903、RAM905、又はストレージ装置919に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ROM903は、CPU901に読み込まれるプログラムや演算に用いるデータ等を格納する手段である。RAM905には、例えば、CPU901に読み込まれるプログラムや、そのプログラムを実行する際に適宜変化する各種パラメータ等が一時的又は永続的に格納される。これらはCPUバスなどから構成されるホストバス907により相互に接続されている。CPU901、ROM903およびRAM905は、例えば、ソフトウェアとの協働により、図3を参照して説明した制御部210-1の機能を実現し得る。
 (ホストバス907、ブリッジ909、外部バス911、インタフェース913)
 CPU901、ROM903、RAM905は、例えば、高速なデータ伝送が可能なホストバス907を介して相互に接続される。一方、ホストバス907は、例えば、ブリッジ909を介して比較的データ伝送速度が低速な外部バス911に接続される。また、外部バス911は、インタフェース913を介して種々の構成要素と接続される。
 (入力装置915)
 入力装置915は、例えば、マウス、キーボード、タッチパネル、ボタン、マイクロフォン、スイッチ及びレバー等、ユーザによって情報が入力される装置によって実現される。また、入力装置915は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、制御装置900の操作に対応した携帯電話やPDA等の外部接続機器であってもよい。さらに、入力装置915は、例えば、上記の入力手段を用いてユーザにより入力された情報に基づいて入力信号を生成し、CPU901に出力する入力制御回路などを含んでいてもよい。制御装置900のユーザは、この入力装置915を操作することにより、制御装置900に対して各種のデータを入力したり処理動作を指示したりすることができる。
 他にも、入力装置915は、ユーザに関する情報を検知する装置により形成され得る。例えば、入力装置915は、画像センサ(例えば、カメラ)、深度センサ(例えば、ステレオカメラ)、加速度センサ、ジャイロセンサ、地磁気センサ、光センサ、音センサ、測距センサ、力センサ等の各種のセンサを含み得る。また、入力装置915は、制御装置900の姿勢、移動速度等、制御装置900自身の状態に関する情報や、制御装置900の周辺の明るさや騒音等、制御装置900の周辺環境に関する情報を取得してもよい。また、入力装置915は、GNSS(Global Navigation Satellite System)衛星からのGNSS信号(例えば、GPS(Global Positioning System)衛星からのGPS信号)を受信して装置の緯度、経度及び高度を含む位置情報を測定するGNSSモジュールを含んでもよい。また、位置情報に関しては、入力装置915は、Wi-Fi(登録商標)、携帯電話・PHS・スマートフォン等との送受信、または近距離通信等により位置を検知するものであってもよい。入力装置915は、例えば、図3を参照して説明したセンサ部110の機能を実現し得る。
 (出力装置917)
 出力装置917は、取得した情報をユーザに対して視覚的又は聴覚的に通知することが可能な装置で形成される。このような装置として、CRTディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、ELディスプレイ装置、レーザープロジェクタ、LEDプロジェクタ及びランプ等の表示装置や、スピーカ及びヘッドホン等の音声出力装置や、プリンタ装置等がある。出力装置917は、例えば、制御装置900が行った各種処理により得られた結果を出力する。具体的には、表示装置は、制御装置900が行った各種処理により得られた結果を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。他方、音声出力装置は、再生された音声データや音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。
 (ストレージ装置919)
 ストレージ装置919は、制御装置900の記憶部の一例として形成されたデータ格納用の装置である。ストレージ装置919は、例えば、HDD等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等により実現される。ストレージ装置919は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置などを含んでもよい。このストレージ装置919は、CPU901が実行するプログラムや各種データ及び外部から取得した各種のデータ等を格納する。ストレージ装置919は、例えば、図3を参照して説明した記憶部230の機能を実現し得る。
 (ドライブ921)
 ドライブ921は、記憶媒体用リーダライタであり、制御装置900に内蔵、あるいは外付けされる。ドライブ921は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記憶媒体に記録されている情報を読み出して、RAM905に出力する。また、ドライブ921は、リムーバブル記憶媒体に情報を書き込むこともできる。
 (接続ポート923)
 接続ポート923は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)、RS-232Cポート、又は光オーディオ端子等のような外部接続機器を接続するためのポートである。
 (通信装置925)
 通信装置925は、例えば、ネットワーク930に接続するための通信デバイス等で形成された通信インタフェースである。通信装置925は、例えば、有線若しくは無線LAN(Local Area Network)、LTE(Long Term Evolution)、Bluetooth(登録商標)又はWUSB(Wireless USB)用の通信カード等である。また、通信装置925は、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ又は各種通信用のモデム等であってもよい。この通信装置925は、例えば、インターネットや他の通信機器との間で、例えばTCP/IP等の所定のプロトコルに則して信号等を送受信することができる。
 なお、ネットワーク930は、ネットワーク930に接続されている装置から送信される情報の有線、または無線の伝送路である。例えば、ネットワーク930は、インターネット、電話回線網、衛星通信網などの公衆回線網や、Ethernet(登録商標)を含む各種のLAN(Local Area Network)、WAN(Wide Area Network)などを含んでもよい。また、ネットワーク930は、IP-VPN(Internet Protocol-Virtual Private Network)などの専用回線網を含んでもよい。
 以上、図13を参照しながら、本実施形態に係るアーム装置100及び制御装置200のハードウェア構成例について説明した。上記の各構成要素は、汎用的な部材を用いて実現されていてもよいし、各構成要素の機能に特化したハードウェアにより実現されていてもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用するハードウェア構成を変更することが可能である。
 <<7.まとめ>>
 以上説明したように、本開示の実施形態に係る制御装置200は、制御対象が備える力覚センサにより検出される外力を取得する。また、制御装置200は、力覚センサを可動させる制御対象の可動部が備えるトルクセンサにより検出されるトルクを取得する。次いで、制御装置200は、取得したトルクに基づき、制御対象に作用していると推定される推定外力を算出する。そして、制御装置200は、外力と推定外力との比較を行い、外力に基づき算出されるトルク指令値を比較の結果に基づき補正することで、制御対象の動作を制御する。
 上述のように、制御装置200は、力覚センサが検出する外力と、トルクセンサが検出するトルクとに基づき、制御対象に作用していると推定される推定外力を算出することができる。また、制御装置200は、当該推定外力と力覚センサが検出する外力とを比較することで、トルク指令値を補正し、制御対象の動作を制御することができる。即ち、制御装置200は、トルクセンサが検出するトルクに応じてトルク指令値を補正することができ、補正されたトルク指令値に応じて制御対象の動作を制御することができる。
 よって、検出される外力に応じて制御対象の動作を制御することが可能な、新規かつ改良された制御装置、制御方法、及び制御システムを提供することが可能である。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 例えば、本明細書において説明した各装置は、単独の装置として実現されてもよく、一部または全部が別々の装置として実現されても良い。例えば、図3に示したアーム装置100、制御装置200は、単独の装置として実現されてもよい。また、例えば、図3に示した制御装置200が、アーム装置100とネットワーク等で接続されたサーバ装置として実現されてもよい。
 また、本明細書においてフローチャートを用いて説明した処理は、必ずしも図示された順序で実行されなくてもよい。いくつかの処理ステップは、並列的に実行されてもよい。また、追加的な処理ステップが採用されてもよく、一部の処理ステップが省略されてもよい。
 また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
 なお、以下のような構成も本開示の技術的範囲に属する。
(1)
 制御対象が備える力覚センサにより検出される第1の外力と、前記力覚センサを可動させる前記制御対象の可動部が備えるトルクセンサにより検出されるトルクに基づき推定される第2の外力との比較を行い、トルク指令値を前記比較の結果に基づき補正することで、前記制御対象の動作を制御する制御部、
 を備える、制御装置。
(2)
 前記制御部は、前記比較により抽出される前記第1の外力と前記第2の外力との差分に基づきゲインを調整し、前記ゲインを前記トルク指令値に適用することで、前記制御対象が安全性を優先して動作する第1のモードと、前記制御対象が作業の精度を優先して動作する第2のモードとの切り替えを制御する、前記(1)に記載の制御装置。
(3)
 前記制御部は、前記差分に基づき、前記制御対象に作用する第3の外力の作用状態に応じて、前記第1のモードと前記第2のモードとを切り替える、前記(2)に記載の制御装置。
(4)
 前記制御部は、前記制御対象に想定内の前記第3の外力が作用している前記作用状態である場合、前記第1のモードを設定する、前記(3)に記載の制御装置。
(5)
 前記制御部は、第1の値に近づくように前記ゲインを調整することで前記第1のモードを設定する、前記(4)に記載の制御装置。
(6)
 前記制御部は、前記制御対象に想定外の前記第3の外力が作用している前記作用状態である場合、前記第2のモードを設定する、前記(3)~(5)のいずれか一項に記載の制御装置。
(7)
 前記制御部は、第2の値に近づくように前記ゲインを調整することで前記第2のモードを設定する、前記(6)に記載の制御装置。
(8)
 前記制御部は、前記ゲインを連続的に変化させることで、前記第1のモードと前記第2のモードとを連続的に切り替える、前記(2)~(7)のいずれか一項に記載の制御装置。
(9)
 前記制御部は、前記差分が所定の範囲内の値である場合、前記ゲインを連続的に変化させる、前記(8)に記載の制御装置。
(10)
 前記制御部は、前記ゲインを非連続的に変化させることで、前記第1のモードと前記第2のモードとを非連続的に切り替える、前記(2)~(7)のいずれか一項に記載の制御装置。
(11)
 前記制御部は、前記差分が所定の閾値以上であるか否かに応じて、前記ゲインをステップ状に変化させる、前記(10)に記載の制御装置。
(12)
 前記制御部は、前記トルク、及び前記制御対象の姿勢に基づき推定される推定トルクに前記ゲインを乗算した値に基づき、前記トルク指令値を補正する、前記(2)~(11)のいずれか一項に記載の制御装置。
(13)
 前記制御部は、前記トルクから前記制御対象の動作のみに起因して生じたトルクである外トルクを減算することで、前記推定トルクを推定する、前記(12)に記載の制御装置。
(14)
 前記制御部は、前記制御対象の関節角度に基づき逆動力学演算を行うことで、前記外トルクを算出する、前記(13)に記載の制御装置。
(15)
 制御対象が備える力覚センサにより検出される第1の外力と、前記力覚センサを可動させる前記制御対象の可動部が備えるトルクセンサにより検出されるトルクに基づき推定される第2の外力との比較を行い、トルク指令値を前記比較の結果に基づき補正することで、前記制御対象の動作を制御すること、
 を含む、プロセッサにより実行される制御方法。
(16)
 アクチュエータを有する可動部と、前記可動部によって複数のリンクが連結されたアーム部と、前記可動部に作用するトルクを検出するトルクセンサと、前記アーム部の先端に作用する第1の外力を検出する力覚センサと、を備える、アーム装置と、
 前記第1の外力と、前記トルクに基づき推定される第2の外力との比較を行い、トルク指令値を前記比較の結果に基づき補正することで、前記アーム装置の動作を制御する制御部、を備える、制御装置と、
 を備える、制御システム。
 10  制御システム
 100 アーム装置
 102 関節部
 104 リンク
 106 先端部
 110 センサ部
 112 力覚センサ
 114 トルクセンサ
 120 関節動作部
 200 制御装置
 210 制御部
 211 全軸協調制御部
 212 デカルト空間制御部
 214 トルク指令値算出部
 216 外力推定部
 218 外トルク適応制御部
 219 補正部
 220 関節制御部
 230 記憶部

Claims (16)

  1.  制御対象が備える力覚センサにより検出される第1の外力と、前記力覚センサを可動させる前記制御対象の可動部が備えるトルクセンサにより検出されるトルクに基づき推定される第2の外力との比較を行い、トルク指令値を前記比較の結果に基づき補正することで、前記制御対象の動作を制御する制御部、
     を備える、制御装置。
  2.  前記制御部は、前記比較により抽出される前記第1の外力と前記第2の外力との差分に基づきゲインを調整し、前記ゲインを前記トルク指令値に適用することで、前記制御対象が安全性を優先して動作する第1のモードと、前記制御対象が作業の精度を優先して動作する第2のモードとの切り替えを制御する、請求項1に記載の制御装置。
  3.  前記制御部は、前記差分に基づき、前記制御対象に作用する第3の外力の作用状態に応じて、前記第1のモードと前記第2のモードとを切り替える、請求項2に記載の制御装置。
  4.  前記制御部は、前記制御対象に想定内の前記第3の外力が作用している前記作用状態である場合、前記第1のモードを設定する、請求項3に記載の制御装置。
  5.  前記制御部は、第1の値に近づくように前記ゲインを調整することで前記第1のモードを設定する、請求項4に記載の制御装置。
  6.  前記制御部は、前記制御対象に想定外の前記第3の外力が作用している前記作用状態である場合、前記第2のモードを設定する、請求項3に記載の制御装置。
  7.  前記制御部は、第2の値に近づくように前記ゲインを調整することで前記第2のモードを設定する、請求項6に記載の制御装置。
  8.  前記制御部は、前記ゲインを連続的に変化させることで、前記第1のモードと前記第2のモードとを連続的に切り替える、請求項2に記載の制御装置。
  9.  前記制御部は、前記差分が所定の範囲内の値である場合、前記ゲインを連続的に変化させる、請求項8に記載の制御装置。
  10.  前記制御部は、前記ゲインを非連続的に変化させることで、前記第1のモードと前記第2のモードとを非連続的に切り替える、請求項2に記載の制御装置。
  11.  前記制御部は、前記差分が所定の閾値以上であるか否かに応じて、前記ゲインをステップ状に変化させる、請求項10に記載の制御装置。
  12.  前記制御部は、前記トルク、及び前記制御対象の姿勢に基づき推定される推定トルクに前記ゲインを乗算した値に基づき、前記トルク指令値を補正する、請求項2に記載の制御装置。
  13.  前記制御部は、前記トルクから前記制御対象の動作のみに起因して生じたトルクである外トルクを減算することで、前記推定トルクを推定する、請求項12に記載の制御装置。
  14.  前記制御部は、前記制御対象の関節角度に基づき逆動力学演算を行うことで、前記外トルクを算出する、請求項13に記載の制御装置。
  15.  制御対象が備える力覚センサにより検出される第1の外力と、前記力覚センサを可動させる前記制御対象の可動部が備えるトルクセンサにより検出されるトルクに基づき推定される第2の外力との比較を行い、トルク指令値を前記比較の結果に基づき補正することで、前記制御対象の動作を制御すること、
     を含む、プロセッサにより実行される制御方法。
  16.  アクチュエータを有する可動部と、前記可動部によって複数のリンクが連結されたアーム部と、前記可動部に作用するトルクを検出するトルクセンサと、前記アーム部の先端に作用する第1の外力を検出する力覚センサと、を備える、アーム装置と、
     前記第1の外力と、前記トルクに基づき推定される第2の外力との比較を行い、トルク指令値を前記比較の結果に基づき補正することで、前記アーム装置の動作を制御する制御部、を備える、制御装置と、
     を備える、制御システム。
PCT/JP2019/026927 2018-07-17 2019-07-08 制御装置、制御方法、及び制御システム WO2020017370A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201980046168.7A CN112384341A (zh) 2018-07-17 2019-07-08 控制装置、控制方法以及控制***
JP2020531248A JP7375754B2 (ja) 2018-07-17 2019-07-08 制御装置、制御方法、及び制御システム
EP19838444.8A EP3825077A4 (en) 2018-07-17 2019-07-08 CONTROL DEVICE, CONTROL PROCESS, AND CONTROL SYSTEM
US17/258,857 US11850751B2 (en) 2018-07-17 2019-07-08 Control device, control method, and control system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018134482 2018-07-17
JP2018-134482 2018-07-17

Publications (1)

Publication Number Publication Date
WO2020017370A1 true WO2020017370A1 (ja) 2020-01-23

Family

ID=69164456

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/026927 WO2020017370A1 (ja) 2018-07-17 2019-07-08 制御装置、制御方法、及び制御システム

Country Status (5)

Country Link
US (1) US11850751B2 (ja)
EP (1) EP3825077A4 (ja)
JP (1) JP7375754B2 (ja)
CN (1) CN112384341A (ja)
WO (1) WO2020017370A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023281789A1 (ja) * 2021-07-05 2023-01-12 ソニーグループ株式会社 ロボット制御装置、およびロボット制御方法
WO2023119449A1 (ja) * 2021-12-21 2023-06-29 ファナック株式会社 制御装置及び機械システム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7290472B2 (ja) * 2019-05-29 2023-06-13 ファナック株式会社 ロボットシステム
JP2021049597A (ja) * 2019-09-24 2021-04-01 ソニー株式会社 情報処理装置、情報処理システム及び情報処理方法
US11999059B2 (en) * 2020-12-18 2024-06-04 Boston Dynamics, Inc. Limiting arm forces and torques
US11931898B2 (en) 2020-12-22 2024-03-19 Boston Dynamics, Inc. Arm and body coordination
CN113084828B (zh) * 2021-04-02 2022-11-11 上海电气集团股份有限公司 一种运动控制方法、装置、设备和存储介质
WO2023245600A1 (en) * 2022-06-24 2023-12-28 Abb Schweiz Ag Method, device and computer readable media for use with robot
CN115338865B (zh) * 2022-08-18 2023-05-09 哈尔滨工业大学(深圳) 空间非合作目标包络式抓捕的抓取效果衡量方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1177580A (ja) * 1997-07-08 1999-03-23 Yaskawa Electric Corp ロボットの制御装置
JP2010105138A (ja) * 2008-10-31 2010-05-13 Toshiba Corp ロボット制御装置
WO2015046081A1 (ja) 2013-09-24 2015-04-02 ソニー・オリンパスメディカルソリューションズ株式会社 医療用ロボットアーム装置、医療用ロボットアーム制御システム、医療用ロボットアーム制御方法及びプログラム
JP2016190292A (ja) * 2015-03-31 2016-11-10 セイコーエプソン株式会社 ロボット制御装置、ロボットシステムおよびロボット制御方法
JP2017124455A (ja) 2016-01-12 2017-07-20 キヤノン株式会社 ロボット装置、ロボット制御方法、プログラム及び記録媒体

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2770982B2 (ja) * 1989-05-25 1998-07-02 株式会社豊田中央研究所 マニピユレータの位置と力の協調制御装置
JP3300625B2 (ja) * 1997-01-27 2002-07-08 ファナック株式会社 ロボットの制御方式
US6989645B2 (en) * 2002-12-18 2006-01-24 Sony Corporation Robot apparatus, and load absorbing apparatus and method
JP4508164B2 (ja) * 2006-06-26 2010-07-21 トヨタ自動車株式会社 多関節ロボット及びその制御プログラム
TR201807071T4 (tr) * 2011-06-21 2018-06-21 Univ Sabanci Diş i̇skelet.
EP2746000A4 (en) * 2011-08-19 2015-08-19 Yaskawa Denki Seisakusho Kk ROBOTIC SYSTEM, ROBOT AND ROBOT CONTROL DEVICE
KR101329853B1 (ko) * 2012-11-14 2013-11-14 고려대학교 산학협력단 머니퓰레이터 충돌 감지 장치와 이를 이용한 머니퓰레이터 제어 장치 및 제어 방법
US9375841B1 (en) * 2014-05-28 2016-06-28 Google Inc. Robotic devices with ambient indications of joint status
JP6193816B2 (ja) * 2014-06-20 2017-09-06 ファナック株式会社 アームの退避機能を有する多関節ロボット
DE102015008144B4 (de) * 2015-06-24 2024-01-18 Kuka Roboter Gmbh Umschalten einer Steuerung eines Roboters in einen Handführ-Betriebsmodus
JP6699843B2 (ja) * 2015-07-04 2020-05-27 学校法人早稲田大学 ロボットアームの制御システム
JP6591818B2 (ja) * 2015-07-30 2019-10-16 ファナック株式会社 産業用ロボットシステムおよびその制御方法
US10888389B2 (en) 2015-09-10 2021-01-12 Duke University Systems and methods for arbitrary viewpoint robotic manipulation and robotic surgical assistance
JP7052308B2 (ja) * 2017-11-15 2022-04-12 セイコーエプソン株式会社 センサー、およびロボット

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1177580A (ja) * 1997-07-08 1999-03-23 Yaskawa Electric Corp ロボットの制御装置
JP2010105138A (ja) * 2008-10-31 2010-05-13 Toshiba Corp ロボット制御装置
WO2015046081A1 (ja) 2013-09-24 2015-04-02 ソニー・オリンパスメディカルソリューションズ株式会社 医療用ロボットアーム装置、医療用ロボットアーム制御システム、医療用ロボットアーム制御方法及びプログラム
JP2016190292A (ja) * 2015-03-31 2016-11-10 セイコーエプソン株式会社 ロボット制御装置、ロボットシステムおよびロボット制御方法
JP2017124455A (ja) 2016-01-12 2017-07-20 キヤノン株式会社 ロボット装置、ロボット制御方法、プログラム及び記録媒体

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3825077A4

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023281789A1 (ja) * 2021-07-05 2023-01-12 ソニーグループ株式会社 ロボット制御装置、およびロボット制御方法
WO2023119449A1 (ja) * 2021-12-21 2023-06-29 ファナック株式会社 制御装置及び機械システム

Also Published As

Publication number Publication date
JPWO2020017370A1 (ja) 2021-07-15
EP3825077A4 (en) 2021-09-01
US11850751B2 (en) 2023-12-26
EP3825077A1 (en) 2021-05-26
CN112384341A (zh) 2021-02-19
US20210323148A1 (en) 2021-10-21
JP7375754B2 (ja) 2023-11-08

Similar Documents

Publication Publication Date Title
WO2020017370A1 (ja) 制御装置、制御方法、及び制御システム
US11583348B2 (en) Medical robot arm apparatus, medical robot arm control system, medical robot arm control method, and program
Sariyildiz et al. An acceleration-based robust motion controller design for a novel series elastic actuator
JP4490997B2 (ja) 移動ロボット
KR102003216B1 (ko) 로봇을 위한 모터 제어 및/또는 조정
Cho et al. Collision detection algorithm to distinguish between intended contact and unexpected collision
JP2015157352A (ja) ロボット、ロボットの制御装置及び制御方法、並びに、ロボット用制御プログラム
US11950970B2 (en) Medical support arm system, medical support arm control method, and medical support arm control device
JP2009066683A (ja) ロボットハンド及び制御方法、並びにプログラム
Gómez Eguíluz et al. Reliable robotic handovers through tactile sensing
Kaplish et al. Motion retargeting and control for teleoperated physical human-robot interaction
JP5076107B2 (ja) 触覚センサを有するロボット
WO2021060104A1 (ja) 情報処理装置、情報処理システム及び情報処理方法
Mittendorfer et al. Self-organizing sensory-motor map for low-level touch reactions
Tsetserukou et al. Intelligent variable joint impedance control and development of a new whole-sensitive anthropomorphic robot arm
Khan et al. Compliance control and human–robot interaction: Part II—Experimental examples
Ott et al. Autonomous opening of a door with a mobile manipulator: A case study
Choi et al. Development of the Cartesian arm exoskeleton system (CAES) using a 3-axis force/torque sensor
JP2007301660A (ja) 異物検知方法およびロボット
Tsetserukou et al. Design, control and evaluation of a whole-sensitive robot arm for physical human-robot interaction
Wang et al. Sensorless Whole‐Body Compliance Control of Collaborative Manipulator Based on Haptic Filter and Position Controller
Zhang et al. Hybrid filters and feedback mechanism for wearable-based human-manipulator interface
Siradjuddin et al. An iterative robot-image Jacobian approximation of image-based visual servoing for joint limit avoidance
KR101292550B1 (ko) 볼-온-플레이트 시스템 균형 제어 장치 및 방법
EP4335598A1 (en) Action abstraction controller for fully actuated robotic manipulators

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19838444

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020531248

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019838444

Country of ref document: EP

Effective date: 20210217