JP2013146792A - Robot controller, robot system, sensor information processing device and robot control method - Google Patents

Robot controller, robot system, sensor information processing device and robot control method Download PDF

Info

Publication number
JP2013146792A
JP2013146792A JP2012006774A JP2012006774A JP2013146792A JP 2013146792 A JP2013146792 A JP 2013146792A JP 2012006774 A JP2012006774 A JP 2012006774A JP 2012006774 A JP2012006774 A JP 2012006774A JP 2013146792 A JP2013146792 A JP 2013146792A
Authority
JP
Japan
Prior art keywords
displacement
robot
force
control
unit
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.)
Pending
Application number
JP2012006774A
Other languages
Japanese (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 JP2012006774A priority Critical patent/JP2013146792A/en
Publication of JP2013146792A publication Critical patent/JP2013146792A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a robot controller or the like which performs non-linear impedance control and facilitates the verification of the stability of a solution of a motion equation and hardware implementation.SOLUTION: A robot controller includes a force control unit 20 which outputs a correction value of a target track of a robot 100 based on a detection sensor value acquired from a force sensor 10, a target value outputting unit 60 which performs correction processing on the target track based on the correction value to obtain a target value and outputs the target value, and a robot control unit 80 which performs the feedback control of the robot 100 based on the target value. The force control unit 20 has a digital filter unit 22 which obtains a solution of an ordinary differential equation in force control as the correction value, and performs force control so that a first displacement variation amount being a displacement variation amount for an external force when virtual displacement for the robot 100 corresponding to the correction value is first displacement differs from a second displacement variation amount being a displacement variation amount when the virtual displacement is second displacement.

Description

本発明は、ロボット制御装置、ロボットシステム、センサー情報処理装置及びロボット制御方法等に関係する。     The present invention relates to a robot control device, a robot system, a sensor information processing device, a robot control method, and the like.

マニピュレーター等のロボットを用いて行う作業において、種々の拘束条件、例えば物体との接触を伴う作業がある。このような場合においては、位置の制御に加えて、力の制御が要求される場合が多い。例えば、物体の表面をなぞる場合、1つの物体を他の物体に嵌め合わせる場合、柔軟物を破壊しないように把持する場合などにおいては、単なる位置の制御に加えて、物体からの反力に対応した動きが必要となる。   In operations performed using a robot such as a manipulator, there are various constraints such as operations involving contact with an object. In such cases, force control is often required in addition to position control. For example, when tracing the surface of an object, fitting one object to another object, gripping a flexible object without destroying it, etc., in addition to simply controlling the position, respond to the reaction force from the object Movement is required.

ロボットにおいて力制御を行う代表的な手法としては、インピーダンス制御と呼ばれる手法がある。インピーダンス制御とは、ロボットを、その実際の質量や粘性特性や弾性特性に関わらず、あたかも作業に適したそれらの値を持つかのように動作させる制御手法である。これは、ロボットに取り付けられた力覚センサーなどから得られる力情報に基づいて運動方程式を解き、ロボットをその解に従って動作させる制御手法である。この運動方程式を適切に設定することにより、マニピュレーター等のロボットを、あたかも所定の質量、粘性、弾性を持っているかのごとく動作させることが可能になる。   A typical technique for performing force control in a robot is a technique called impedance control. Impedance control is a control method for operating a robot as if it had those values suitable for work regardless of its actual mass, viscosity characteristics, and elastic characteristics. This is a control method that solves an equation of motion based on force information obtained from a force sensor attached to a robot and operates the robot according to the solution. By appropriately setting this equation of motion, it becomes possible to operate a robot such as a manipulator as if it has a predetermined mass, viscosity, and elasticity.

なお、インピーダンス制御においては、ロボット等に所望の特性(質量・粘性特性・弾性特性)を持つかのように振る舞わせるために、当該特性に対応する係数パラメーターを用いた常微分方程式(2階の線形常微分方程式である運動方程式)を解く必要がある。常微分方程式を解く手法は種々知られているが、Runge−Kutta法やNewton法等が用いられる。   In impedance control, in order to make a robot or the like behave as if it has a desired characteristic (mass, viscosity characteristic, elastic characteristic), an ordinary differential equation (second-order equation) using a coefficient parameter corresponding to the characteristic is used. It is necessary to solve the equation of motion (linear ordinary differential equation). Various methods for solving ordinary differential equations are known, but the Runge-Kutta method, Newton method, and the like are used.

このようなインピーダンス制御や力制御に関する従来技術としては、特許文献1又は特許文献2に開示される技術が知られている。   As a conventional technique related to such impedance control and force control, a technique disclosed in Patent Document 1 or Patent Document 2 is known.

特開平10−128685号公報JP-A-10-128855 特開2011−8360号公報JP 2011-8360 A

インピーダンス制御においては、例えば仮想的なバネの伸び縮み(仮想変位)として力を指定する。   In the impedance control, for example, force is specified as virtual spring expansion / contraction (virtual displacement).

しかし、大きな力を必要とする場合、大きな仮想変位を指定すると、その力に対する外力が無くなった時に、マニピュレーターは指定された仮想変位に対応する非常に大きな動きをする。このような大きな動きは、実用上、安全上、非常に問題となる。   However, when a large force is required and a large virtual displacement is specified, when the external force for the force disappears, the manipulator makes a very large movement corresponding to the specified virtual displacement. Such a large movement is very problematic for practical use and safety.

また、大きな仮想変位を指定することにより、原理的には非常に大きな力(外力)を発生させることが可能であるが、発生させた力によりロボットの作業対象物であるワークを破壊してしまう恐れがあるなどの問題もある。   In addition, by designating a large virtual displacement, it is possible in principle to generate a very large force (external force), but the generated force destroys the workpiece that is the work target of the robot. There are also problems such as fear.

これらは仮想変位に対して線形な出力をするインピーダンス制御を行うために生じる問題である。前述した特許文献1及び特許文献2では、仮想変位に対して非線形な出力をするインピーダンス制御を行う手法を開示している。   These are problems that arise due to impedance control that outputs linearly with respect to virtual displacement. Patent Document 1 and Patent Document 2 described above disclose a technique for performing impedance control that performs nonlinear output with respect to virtual displacement.

まず、特許文献1には、力制御における運動方程式の弾性項を仮想変位に対して非線形な関数とすることにより、非線形インピーダンス制御を行う手法が開示されている。   First, Patent Document 1 discloses a technique for performing nonlinear impedance control by using an elastic term of an equation of motion in force control as a nonlinear function with respect to virtual displacement.

しかし、この技術においては、力制御に用いる運動方程式が安定であるかどうかの判断が非常に困難であるという問題がある。   However, this technique has a problem that it is very difficult to determine whether the equation of motion used for force control is stable.

特許文献2には、2つ(複数)の制御機構と2つの制御パラメーターを持ち、制御状態空間の中にスライディング面と呼ばれる超平面を想定し、制御状態がその超平面で分割される空間のどちらにあるかによって、2つ(複数)の制御機構と2つの制御パラメーターを切り替え、それによって、制御状態をスライディング面上に拘束し、制御系の安定性、収束性を保証する手法が開示されている。   Patent Document 2 has two (plural) control mechanisms and two control parameters, assumes a hyperplane called a sliding plane in the control state space, and is a space where the control state is divided by the hyperplane. A method is disclosed that switches between two (multiple) control mechanisms and two control parameters depending on which is present, thereby constraining the control state on the sliding surface and ensuring the stability and convergence of the control system. ing.

しかし、この技術においては、スライディングモード制御系の設計が困難であり、実用性に欠けるという問題があった。   However, this technique has a problem in that it is difficult to design a sliding mode control system and lacks practicality.

本発明の幾つかの態様によれば、非線形インピーダンス制御を行い、運動方程式の解の安定性の検証やハードウェアー化を容易にするロボット制御装置、ロボットシステム、センサー情報処理装置及びロボット制御方法等を提供することができる。   According to some aspects of the present invention, a robot control device, a robot system, a sensor information processing device, a robot control method, and the like that perform non-linear impedance control and facilitate the verification of the stability of the equation of motion and the implementation of hardware. Can be provided.

本発明の一態様は、力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正値を出力する力制御部と、前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力する目標値出力部と、前記目標値に基づいて、前記ロボットのフィードバック制御を行うロボット制御部と、を含み、前記力制御部は、力制御における常微分方程式の解を前記補正値として求めるデジタルフィルター部を有し、前記力制御部は、前記補正値に対応する前記ロボットについての仮想的な変位が第1の変位である場合の外力に対する変位変化量である第1の変位変化量と、前記仮想的な変位が第2の変位である場合の前記変位変化量である第2の変位変化量とが異なる力制御を行うロボット制御装置に関係する。   One aspect of the present invention provides a force control unit that outputs a correction value of a target trajectory of a robot based on a detection sensor value acquired from a force sensor, and a correction process based on the correction value with respect to the target trajectory. A target value output unit configured to obtain a target value and output the obtained target value; and a robot control unit configured to perform feedback control of the robot based on the target value. A digital filter unit that obtains a solution of an ordinary differential equation in the control as the correction value, and the force control unit is an external force when the virtual displacement of the robot corresponding to the correction value is the first displacement A robot control device that performs force control in which a first displacement change amount that is a displacement change amount with respect to a second displacement change amount that is a displacement change amount when the virtual displacement is a second displacement is different Related to.

本発明の一態様では、力制御における常微分方程式の解を補正値として求めるデジタルフィルター処理を行う。さらに、仮想変位が第1の変位である時の変位変化量を第1の変位変化量とし、仮想変位が第1の変位と異なる第2の変位である時の変位変化量を第2の変位変化量とする場合に、力制御部は、第1の変位変化量と第2の変位変化量とが異なる力制御を行う。   In one embodiment of the present invention, digital filter processing is performed to obtain a solution of an ordinary differential equation in force control as a correction value. Further, the displacement change amount when the virtual displacement is the first displacement is defined as the first displacement change amount, and the displacement change amount when the virtual displacement is the second displacement different from the first displacement is the second displacement. In the case of the change amount, the force control unit performs force control in which the first displacement change amount and the second displacement change amount are different.

このように第1の変位変化量と第2の変位変化量とが異なる力制御を行うことにより、非線形インピーダンス制御を実現することが可能となる。さらに、力制御における常微分方程式の解を求める処理のデジタルフィルター化を図ることにより、ハードウェアー化を容易にすることが可能となる。また、線形なシステムの組み合わせを用いることにより、運動方程式の解の安定性の検証を行うことが可能となる。   As described above, by performing force control in which the first displacement change amount and the second displacement change amount are different, nonlinear impedance control can be realized. Furthermore, it is possible to facilitate hardware implementation by digitalizing a process for obtaining a solution of an ordinary differential equation in force control. Moreover, it becomes possible to verify the stability of the solution of the equation of motion by using a combination of linear systems.

また、本発明の一態様では、前記力制御部は、前記仮想的な変位が前記第2の変位よりも大きい前記第1の変位である場合に、前記第1の変位変化量が前記第2の変位変化量よりも大きくなる前記補正値を出力してもよい。   In the aspect of the invention, the force control unit may be configured such that the first displacement change amount is the second displacement when the virtual displacement is the first displacement larger than the second displacement. The correction value that is larger than the displacement change amount may be output.

これにより、例えば仮想的な変位の絶対値が大きくなればなるほど、変位変化量が大きくなるような力制御を行うこと等が可能になる。   Thereby, for example, it is possible to perform force control such that the displacement change amount increases as the absolute value of the virtual displacement increases.

また、本発明の一態様では、前記力制御部は、前記仮想的な変位が前記第2の変位よりも大きい前記第1の変位である場合に、前記第1の変位変化量が前記第2の変位変化量よりも小さくなる前記補正値を出力してもよい。   In the aspect of the invention, the force control unit may be configured such that the first displacement change amount is the second displacement when the virtual displacement is the first displacement larger than the second displacement. The correction value that is smaller than the amount of change in displacement may be output.

これにより、例えば仮想的な変位の絶対値が大きくなればなるほど、変位変化量が小さくなるような力制御を行うこと等が可能になる。   Thereby, for example, it is possible to perform force control such that the displacement change amount becomes smaller as the absolute value of the virtual displacement becomes larger.

また、本発明の一態様では、前記力制御部は、前記常微分方程式の各項の係数パラメーターのセットに対応するデジタルフィルターのパラメーターセットを複数記憶する制御パラメーター記憶部を有し、前記力制御部は、前記仮想的な変位が前記第1の変位である場合には、前記デジタルフィルターの第1のパラメーターセットを選択し、前記仮想的な変位が前記第2の変位である場合には、前記デジタルフィルターの第2のパラメーターセットを選択し、選択した前記デジタルフィルターの前記パラメーターセットを用いて、力制御における前記常微分方程式の解を前記補正値として求め、前記補正値を出力してもよい。   In the aspect of the invention, the force control unit may include a control parameter storage unit that stores a plurality of digital filter parameter sets corresponding to coefficient parameter sets of the terms of the ordinary differential equations, and the force control unit. The section selects the first parameter set of the digital filter when the virtual displacement is the first displacement, and when the virtual displacement is the second displacement, The second parameter set of the digital filter is selected, the solution of the ordinary differential equation in force control is obtained as the correction value using the parameter set of the selected digital filter, and the correction value is output. Good.

これにより、インピーダンス制御に用いるデジタルフィルターのパラメーターセットを切り替えることで、非線形インピーダンス制御を実現すること等が可能となる。   This makes it possible to realize nonlinear impedance control by switching the parameter set of the digital filter used for impedance control.

また、本発明の一態様では、前記力制御部は、前記仮想的な変位が前記第1の変位から前記第2の変位までの範囲内に含まれる第3の変位である場合には、前記第1のパラメーターセットを用いて求めた第1の補正値と、前記第2のパラメーターセットを用いて求めた第2の補正値とに対して重み付け処理を行って、第3の補正値を求め、求めた前記第3の補正値を出力してもよい。   In the aspect of the invention, the force control unit may be configured so that the virtual displacement is a third displacement included in a range from the first displacement to the second displacement. A weighting process is performed on the first correction value obtained using the first parameter set and the second correction value obtained using the second parameter set to obtain a third correction value. The obtained third correction value may be output.

これにより、複数のデジタルフィルターのパラメーターを用いて、デジタルフィルター処理を行った時の出力値を求め、各出力値の重み付け加算を行うことにより補正値を求めて、非線形インピーダンス制御を実現すること等が可能になる。   As a result, using a plurality of digital filter parameters, the output value when digital filter processing is performed is obtained, the correction value is obtained by weighted addition of each output value, and nonlinear impedance control is realized, etc. Is possible.

また、本発明の一態様では、前記制御パラメーター記憶部は、前記補正値を求める際に用いるオフセットパラメーターを記憶し、前記力制御部は、前記仮想的な変位に基づいて、使用する前記オフセットパラメーターを切り替えて、力制御における前記常微分方程式の解を求めてもよい。   In one aspect of the present invention, the control parameter storage unit stores an offset parameter used when obtaining the correction value, and the force control unit uses the offset parameter to be used based on the virtual displacement. And the solution of the ordinary differential equation in force control may be obtained.

これにより、例えば、第1のパラメーターセットから第2のパラメーターセットへ切り替える点において、インピーダンス制御の応答の連続性を高めること等が可能になる。   Thereby, for example, the continuity of the response of the impedance control can be increased at the point of switching from the first parameter set to the second parameter set.

また、本発明の一態様では、前記力制御部は、前記補正値を求める前記デジタルフィルター部の動作の安定度を判定し、前記デジタルフィルター部の前記動作が安定であると判定された場合に、前記デジタルフィルターの前記パラメーターセットの選択処理を行い、力制御における前記常微分方程式の解を前記補正値として求めてもよい。   In one aspect of the present invention, the force control unit determines the stability of the operation of the digital filter unit for obtaining the correction value, and when the operation of the digital filter unit is determined to be stable. The parameter set of the digital filter may be selected and the solution of the ordinary differential equation in force control may be obtained as the correction value.

これにより、デジタルフィルターの安定性を判定すること等が可能になる。   This makes it possible to determine the stability of the digital filter.

また、本発明の一態様では、前記力制御部は、前記補正値に対応する前記ロボットについての前記仮想的な変位の方向が第1の方向である場合には、第1の力制御を行い、前記仮想的な変位の方向が前記第1の方向と反対方向である第2の方向である場合には、第1の力制御と異なる第2の力制御を行ってもよい。   In the aspect of the invention, the force control unit performs the first force control when the direction of the virtual displacement of the robot corresponding to the correction value is the first direction. When the direction of the virtual displacement is the second direction opposite to the first direction, the second force control different from the first force control may be performed.

これにより、仮想的な変位の方向に基づいて、実行する力制御を切り替えること等が可能になる。   This makes it possible to switch the force control to be executed based on the virtual displacement direction.

また、本発明の一態様では、前記常微分方程式は、仮想質量項、仮想粘性項及び仮想弾性項を係数パラメーターとする運動方程式であってもよい。   In the aspect of the invention, the ordinary differential equation may be an equation of motion having a virtual mass term, a virtual viscosity term, and a virtual elasticity term as coefficient parameters.

これにより、運動方程式の解を求めること等が可能になる。   Thereby, it is possible to obtain a solution of the equation of motion.

また、本発明の他の態様は、力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正値を出力する力制御部と、前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力する目標値出力部と、前記目標値に基づいて、前記ロボットのフィードバック制御を行うロボット制御部と、を含み、前記力制御部は、前記補正値に対応する前記ロボットについての仮想的な変位が第1の変位である場合の外力に対する変位変化量である第1の変位変化量と、前記仮想的な変位が第2の変位である場合の前記変位変化量である第2の変位変化量とが異なる力制御を行うロボット制御装置に関係する。   According to another aspect of the present invention, a force control unit that outputs a correction value of a target trajectory of a robot based on a detection sensor value acquired from a force sensor, and the correction value based on the correction value for the target trajectory. A target value output unit that performs correction processing to obtain a target value, and outputs the obtained target value; and a robot control unit that performs feedback control of the robot based on the target value, the force control unit Is a first displacement change amount that is a displacement change amount with respect to an external force when a virtual displacement of the robot corresponding to the correction value is a first displacement, and the virtual displacement is a second displacement. This is related to a robot control apparatus that performs force control different from the second displacement change amount that is the displacement change amount.

また、本発明の他の態様は、前記ロボット制御装置と、前記目標値出力部から取得される前記目標値に基づいて、各部を動作させる前記ロボットと、を含むロボットシステムに関係する。   Another aspect of the present invention relates to a robot system including the robot control device and the robot that operates each unit based on the target value acquired from the target value output unit.

これにより、ロボット制御装置にとどまらず、本実施形態の処理を実行するロボットシステムを実現すること等が可能になる。   As a result, it is possible to realize a robot system that executes the processing of this embodiment as well as the robot control device.

また、本発明の他の態様は、センサーから取得される検出センサー値に基づいて、制御対象物の目標軌道の補正値を出力するセンサー情報処理部と、前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力する目標値出力部と、前記目標値に基づいて、前記制御対象物のフィードバック制御を行う制御部と、を含み、前記センサー情報処理部は、デジタルフィルター部を有し、前記センサー情報処理部は、前記補正値に対応する前記制御対象物についての仮想的な変位が第1の変位である場合の外力に対する変位変化量である第1の変位変化量と、前記仮想的な変位が第2の変位である場合の前記変位変化量である第2の変位変化量とが異なる力制御を行うセンサー情報処理装置に関係する。   According to another aspect of the present invention, a sensor information processing unit that outputs a correction value of a target trajectory of a control object based on a detection sensor value acquired from a sensor, and the correction value for the target trajectory. A target value output unit that performs a correction process based on the target value and outputs the calculated target value; and a control unit that performs feedback control of the control object based on the target value, and the sensor The information processing unit includes a digital filter unit, and the sensor information processing unit is a displacement change amount with respect to an external force when a virtual displacement of the control object corresponding to the correction value is a first displacement. The present invention relates to a sensor information processing apparatus that performs force control in which a certain first displacement change amount is different from a second displacement change amount that is the displacement change amount when the virtual displacement is a second displacement.

これにより、センサー情報に対するデジタルフィルター処理により、常微分方程式の解を求め、出力値を出力するセンサー情報処理装置を実現すること等が可能になる。   Accordingly, it is possible to realize a sensor information processing apparatus that obtains an ordinary differential equation solution and outputs an output value by digital filter processing on sensor information.

また、本発明の他の態様は、力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正値として、力制御における常微分方程式の解を求め、前記補正値に対応する前記ロボットについての仮想的な変位が第1の変位である場合の外力に対する変位変化量である第1の変位変化量と、前記仮想的な変位が第2の変位である場合の前記変位変化量である第2の変位変化量とが異なる力制御を行い、前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力し、前記目標値に基づいて、前記ロボットのフィードバック制御を行うことを特徴とするロボット制御方法に関係する。   In another aspect of the present invention, a solution of an ordinary differential equation in force control is obtained as a correction value of a target trajectory of the robot based on a detection sensor value acquired from a force sensor, and the correction value corresponds to the correction value. A first displacement change amount that is a displacement change amount with respect to an external force when the virtual displacement of the robot is a first displacement, and the displacement change amount when the virtual displacement is a second displacement. A force control different from the second displacement change amount is performed, a correction process based on the correction value is performed on the target trajectory to obtain a target value, the calculated target value is output, and the target value is The present invention relates to a robot control method characterized by performing feedback control of the robot based on the above.

また、本発明の他の態様は、力覚センサーを有するロボットの制御方法であって、第1の大きさの外力が前記力覚センサーに加えられた場合の前記ロボットの位置の変位変化量と、前記第1の大きさとは異なる大きさである第2の大きさの外力が前記力覚センサーに加えられた場合の前記ロボットの位置の前記変位変化量とが異なる力制御を行うことを特徴とするロボット制御方法に関係する。   According to another aspect of the present invention, there is provided a method for controlling a robot having a force sensor, wherein a displacement change amount of the position of the robot when an external force having a first magnitude is applied to the force sensor; Force control different from the displacement change amount of the position of the robot when an external force of a second magnitude that is different from the first magnitude is applied to the force sensor is performed. It relates to the robot control method.

ロボット制御装置及びロボットシステムの基本構成例。2 is a basic configuration example of a robot control device and a robot system. 図2(A)、図2(B)は、ロボットシステムの一例。2A and 2B are examples of the robot system. 図3(A)〜図3(C)は、力制御についての説明図。FIG. 3A to FIG. 3C are explanatory diagrams of force control. 図4(A)、図4(B)は、コンプライアンス制御についての説明図。FIG. 4A and FIG. 4B are explanatory diagrams regarding compliance control. 図5(A)、図5(B)は、インピーダンス制御についての説明図。FIGS. 5A and 5B are explanatory diagrams of impedance control. 図6(A)〜図6(C)は、線形インピーダンス制御の問題点の説明図。FIG. 6A to FIG. 6C are explanatory diagrams of problems in linear impedance control. 力覚フィードバックを含まない場合の制御系の基本構成例。A basic configuration example of a control system when force feedback is not included. 力覚フィードバックを含む場合の制御系の基本構成例。The example of basic composition of a control system in case a force feedback is included. 運動方程式の解を求める際のデジタルフィルターの基本形。The basic form of a digital filter when finding the solution of the equation of motion. 図10(A)〜図10(C)は、系の安定性判定手法の説明図。FIG. 10A to FIG. 10C are explanatory diagrams of a system stability determination method. デジタルフィルターを用いたロボット制御装置及びロボットシステムの基本構成例。2 is a basic configuration example of a robot control device and a robot system using a digital filter. 図12(A)〜図12(D)は、非線形インピーダンス制御の説明図。FIG. 12A to FIG. 12D are explanatory diagrams of nonlinear impedance control. 第1の実施形態の詳細なシステム構成例。1 is a detailed system configuration example according to a first embodiment. 第1の実施形態のデジタルフィルター。The digital filter of 1st Embodiment. 第1の実施形態のインピーダンスデジタルフィルター処理を説明するフローチャート。The flowchart explaining the impedance digital filter process of 1st Embodiment. 正弦波外力に対する線形インピーダンス制御応答例。Example of linear impedance control response to sinusoidal external force. 正弦波外力に対する非線形インピーダンス制御応答例。Nonlinear impedance control response example to sinusoidal external force. デジタルフィルターパラメーターの単純切り替えを行う手法が不適切な例。An example of an inappropriate technique for switching digital filter parameters. 第2の実施形態の詳細なシステム構成例。The detailed system configuration example of 2nd Embodiment. 第2の実施形態のデジタルフィルター。The digital filter of 2nd Embodiment. 第2の実施形態のインピーダンスデジタルフィルター処理を説明するフローチャート。The flowchart explaining the impedance digital filter process of 2nd Embodiment. 2つのインピーダンス処理出力の重み付け加算の例。An example of weighted addition of two impedance processing outputs. 図23(A)、図23(B)は、目標軌道、補正値、目標値を求める具体的なシステム構成例。FIG. 23A and FIG. 23B are specific system configuration examples for obtaining a target trajectory, a correction value, and a target value.

以下、本実施形態について説明する。まず、本実施形態の概要を説明する。次に、第1の実施形態と第2の実施形態について、それぞれシステム構成例と詳細な処理について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。   Hereinafter, this embodiment will be described. First, an outline of the present embodiment will be described. Next, a system configuration example and detailed processing will be described for the first embodiment and the second embodiment, respectively. In addition, this embodiment demonstrated below does not unduly limit the content of this invention described in the claim. In addition, all the configurations described in the present embodiment are not necessarily essential configuration requirements of the present invention.

1.概要
1.1 基本構成
本実施形態のロボット制御装置(マニピュレーター制御装置)及びこれを含むロボットシステムの構成例を図1に示す。なお、本実施形態のロボット制御装置、ロボットシステムは図1の構成には限定されず、その一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。また、ロボット以外のものも制御対象物とすることができるセンサー情報処理装置の構成を、以下で述べるロボット制御装置と同様の構成とすることもできる。
1. 1. Overview 1.1 Basic Configuration FIG. 1 shows a configuration example of a robot control device (manipulator control device) of the present embodiment and a robot system including the same. Note that the robot control apparatus and the robot system according to the present embodiment are not limited to the configuration shown in FIG. 1, and various modifications may be made such as omitting some of the components or adding other components. Is possible. In addition, the configuration of the sensor information processing apparatus that can also control objects other than the robot can be the same as the configuration of the robot control apparatus described below.

本実施形態のロボット制御装置は、力制御部20、目標値出力部60、ロボット制御部80を含む。また本実施形態のロボットシステムは、このロボット制御装置と、ロボット100(力覚センサー10)により構成される。   The robot control apparatus according to the present embodiment includes a force control unit 20, a target value output unit 60, and a robot control unit 80. The robot system according to this embodiment includes the robot control device and the robot 100 (force sensor 10).

目標値出力部60は、ロボット(狭義にはマニピュレーター)のフィードバック制御の目標値を出力する。この目標値に基づいてロボット100のフィードバック制御が実現される。多関節ロボット等を例に取れば、この目標値は、ロボットの関節角情報などである。ロボットの関節角情報は、例えばロボットのアームのリンク機構における各関節の角度(ジョイント軸とジョイント軸のなす角度)を表す情報である。   The target value output unit 60 outputs a target value for feedback control of the robot (manipulator in a narrow sense). Based on this target value, feedback control of the robot 100 is realized. Taking an articulated robot or the like as an example, this target value is information on the joint angle of the robot. The joint angle information of the robot is information representing the angle of each joint (angle formed by the joint axis) in the link mechanism of the robot arm, for example.

目標値出力部60は、軌道生成部62とインバースキネマティクス処理部64を含むことができる。軌道生成部62は、ロボットの軌道情報を出力する。軌道情報は、ロボットのエンドエフェクター部(エンドポイント)の位置情報(x,y,z)と、各座標軸回りでの回転角度情報(u,v,w)を含むことができる。インバースキネマティクス処理部64は、軌道生成部62からの軌道情報に基づいてインバースキネマティクス処理を行い、例えばロボットの関節角情報を目標値として出力する。インバースキネマティクス処理は、関節を有するロボットの動きを計算する処理であり、ロボットのエンドエフェクター部の位置姿勢などから関節角情報等を逆運動学により計算する処理である。   The target value output unit 60 can include a trajectory generation unit 62 and an inverse kinematics processing unit 64. The trajectory generator 62 outputs the trajectory information of the robot. The trajectory information can include position information (x, y, z) of the end effector section (end point) of the robot and rotation angle information (u, v, w) about each coordinate axis. The inverse kinematics processing unit 64 performs inverse kinematics processing based on the trajectory information from the trajectory generation unit 62, and outputs, for example, robot joint angle information as a target value. The inverse kinematics process is a process for calculating the motion of a robot having a joint, and is a process for calculating joint angle information and the like by inverse kinematics from the position and orientation of the end effector unit of the robot.

力制御部20(狭義にはインピーダンス制御部)は、力覚センサー10からのセンサー情報に基づいて力制御(力覚制御)を行って、目標値の補正値を出力する。更に具体的には、力制御部20(インピーダンス制御部)は、力覚センサー10からのセンサー情報(力情報、モーメント情報)に基づいてインピーダンス制御(或いはコンプライアンス制御)を行う。力制御は、例えば、従来の位置制御に対して、力のフィードバックが加わった制御である。インピーダンス制御は、外力に対するエンドエフェクター部(手先)の変位の生じやすさ(機械インピーダンス)を、制御により望ましい状態にする手法である。具体的には、ロボットのエンドエフェクター部に質量と粘性係数と弾性要素が接続されるモデルにおいて、目標として設定した質量と粘性係数と弾性係数で物体に接触するようにする制御である。また力覚センサー10は、ロボット100が出している力の反力として受けている力やモーメントを検出するセンサーである。この力覚センサー10は、通常、ロボット100のアームの手首部分に取り付けられ、検出された力やモーメントは、センサー情報として、各種の力制御(インピーダンス制御)に用いられる。   The force control unit 20 (impedance control unit in a narrow sense) performs force control (force control) based on sensor information from the force sensor 10, and outputs a correction value of the target value. More specifically, the force control unit 20 (impedance control unit) performs impedance control (or compliance control) based on sensor information (force information and moment information) from the force sensor 10. Force control is, for example, control in which force feedback is added to conventional position control. Impedance control is a technique for making the ease of displacement (mechanical impedance) of the end effector section (hand) with respect to external force a desirable state by control. Specifically, in a model in which a mass, a viscosity coefficient, and an elastic element are connected to an end effector unit of a robot, the control is performed so that the object comes into contact with the mass, the viscosity coefficient, and the elastic coefficient set as targets. The force sensor 10 is a sensor that detects a force or moment received as a reaction force of the force generated by the robot 100. The force sensor 10 is usually attached to the wrist portion of the arm of the robot 100, and the detected force and moment are used for various types of force control (impedance control) as sensor information.

ロボット制御部80は、目標値出力部60からの目標値に基づいて、ロボットのフィードバック制御を行う。具体的には、力制御部20からの補正値に基づく補正処理の結果出力された目標値に基づいて、ロボットのフィードバック制御を行う。例えば目標値と、ロボット100からのフィードバック信号に基づいて、ロボット100のフィードバック制御を行う。例えばロボット制御部80は、複数の駆動制御部82―1〜82―N(狭義にはモーター制御部)を含み、ロボット100が有する駆動部102―1〜102―Nに対して、その制御信号を出力する。ここで駆動部102―1〜102―Nは、ロボット100の各関節を動かすための駆動機構であり、例えばモーター等により実現される。   The robot control unit 80 performs feedback control of the robot based on the target value from the target value output unit 60. Specifically, the feedback control of the robot is performed based on the target value output as a result of the correction process based on the correction value from the force control unit 20. For example, feedback control of the robot 100 is performed based on the target value and a feedback signal from the robot 100. For example, the robot control unit 80 includes a plurality of drive control units 82-1 to 82-N (in a narrow sense, motor control units), and controls the control signals for the drive units 102-1 to 102-N included in the robot 100. Is output. Here, the drive units 102-1 to 102-N are drive mechanisms for moving each joint of the robot 100, and are realized by, for example, a motor or the like.

図2(A)に本実施形態のロボット制御装置を含むロボットシステムの例を示す。このロボットシステムは、制御装置300(情報処理装置)とロボット310(図1のロボット100)とを含む。制御装置300はロボット310の制御処理を行う。具体的には、動作シーケンス情報(シナリオ情報)に基づいてロボット310を動作させる制御を行う。ロボット310は、アーム320及びハンド(把持部)330を有する。そして制御装置300からの動作指示にしたがって動作する。例えば、図示しないパレットに載せられたワークを把持したり、移動したりするなどの動作を行う。また、図示しない撮像装置で取得された撮像画像情報に基づいて、ロボットの姿勢やワークの位置などの情報が検出され、検出された情報が制御装置300に送られる。   FIG. 2A shows an example of a robot system including the robot control apparatus of this embodiment. This robot system includes a control device 300 (information processing device) and a robot 310 (robot 100 in FIG. 1). The control device 300 performs control processing for the robot 310. Specifically, control for operating the robot 310 is performed based on the operation sequence information (scenario information). The robot 310 includes an arm 320 and a hand (gripping unit) 330. Then, it operates according to an operation instruction from the control device 300. For example, operations such as gripping or moving a workpiece placed on a pallet (not shown) are performed. Further, information such as the posture of the robot and the position of the workpiece is detected based on captured image information acquired by an imaging device (not shown), and the detected information is sent to the control device 300.

本実施形態のロボット制御装置は、例えば図2(A)の制御装置300に設けられ、制御装置300のハードウェアーやプログラムによりロボット制御装置が実現される。そして本実施形態のロボット制御装置によれば、制御装置300などの制御ハードウェアーに対する性能要求を低減できると共に、ロボット310を高い応答性で動作させることが可能になる。   The robot control apparatus according to the present embodiment is provided, for example, in the control apparatus 300 in FIG. 2A, and the robot control apparatus is realized by hardware or a program of the control apparatus 300. And according to the robot control apparatus of this embodiment, while being able to reduce the performance requirement with respect to control hardware, such as the control apparatus 300, it becomes possible to operate the robot 310 with high responsiveness.

また、図2(A)では、ロボット本体310(ロボット)と制御装置300(ロボット制御装置)とが別体に構成されているが、本実施形態のロボットは図2(A)の構成に限定されず、図2(B)のようにロボット本体310と制御装置300とが一体に構成されていてもよい。具体的には図2(B)に示したように、ロボットはロボット本体310(アーム320及びハンド330を有する)、及びロボット本体310を支えるベースユニット部を含み、当該ベースユニット部に制御装置300が格納される。図2(B)のロボットでは、ベースユニット部に車輪等が設けられ、ロボット全体が移動可能な構成となっている。なお、図2(A)は単腕型の例であるが、ロボットは図2(B)に示すように双腕型等の多腕型のロボットであってもよい。なお、ロボットの移動は人手で行われてもよいし、車輪を駆動するモーターを設け、当該モーターを制御装置300により制御することで行なってもよい。   In FIG. 2A, the robot body 310 (robot) and the control device 300 (robot control device) are configured separately, but the robot of this embodiment is limited to the configuration of FIG. 2A. Instead, the robot body 310 and the control device 300 may be configured integrally as shown in FIG. Specifically, as shown in FIG. 2B, the robot includes a robot main body 310 (having an arm 320 and a hand 330), and a base unit that supports the robot main body 310, and the control unit 300 is included in the base unit. Is stored. In the robot shown in FIG. 2B, wheels and the like are provided in the base unit portion, and the entire robot is movable. 2A is an example of a single arm type, the robot may be a multi-arm type robot such as a double arm type as shown in FIG. 2B. Note that the robot may be moved manually or by providing a motor for driving the wheels and controlling the motor by the control device 300.

1.2 力制御・インピーダンス制御
次に、力制御、インピーダンス制御(コンプライアンス制御)の概要について説明する。
1.2 Force Control / Impedance Control Next, an outline of force control and impedance control (compliance control) will be described.

図3(A)は、ロボットの左のアームAL、右のアームARで物体OBを挟んで移動している様子を示している。例えば、位置制御だけでは、物体を落としたり、破壊したりしてしまうおそれがある。力制御によれば、柔軟な物体や脆い物体を、図3(A)のように両側から適切な力で挟んで移動させることが可能になる。   FIG. 3A shows a situation where the object OB is sandwiched between the left arm AL and the right arm AR of the robot. For example, the position control alone may cause an object to be dropped or destroyed. According to the force control, a flexible object or a fragile object can be moved while being sandwiched with appropriate force from both sides as shown in FIG.

また、力制御によれば、図3(B)に示すように、不確実性のある物体の表面SFをアームAM等でなぞることが可能になる。このような制御は位置制御だけでは実現不能である。また、力制御によれば、図3(C)に示すように、粗い位置決めの後に、探って位置合わせをして、物体OBを穴部HLにはめ込むことも可能になる。   Further, according to the force control, as shown in FIG. 3B, it is possible to trace the surface SF of an uncertain object with the arm AM or the like. Such control cannot be realized only by position control. Further, according to the force control, as shown in FIG. 3C, after rough positioning, it is possible to probe and align the object OB into the hole HL.

しかしながら、バネなどの実際の機械部品による力制御では、用途が限られるという問題がある。また、このような機械部品による力制御では、特性の動的な切り替えが困難である。   However, there is a problem that the application is limited in force control using actual mechanical parts such as a spring. In addition, in such force control using mechanical parts, it is difficult to dynamically switch characteristics.

一方、モーターのトルクを制御するトルク制御は簡単であるが、位置精度が悪くなるという問題がある。また、異常時に衝突などの問題が生じる。例えば図3(A)において、異常事態が起きて、物体OBを落としてしまった場合に、トルク制御では、釣合うべき反力が無くなるため、左右のアームAL、ARが衝突してしまうなどの問題が生じる。   On the other hand, torque control for controlling the torque of the motor is simple, but there is a problem that the positional accuracy is deteriorated. In addition, a problem such as a collision occurs when an abnormality occurs. For example, in FIG. 3A, when an abnormal situation occurs and the object OB is dropped, there is no reaction force to be balanced in the torque control, so the left and right arms AL and AR collide. Problems arise.

これに対して、インピーダンス制御(コンプライアンス制御)は、制御が複雑であるものの、汎用性や安全性が高いという利点がある。   On the other hand, although impedance control (compliance control) is complicated, there is an advantage that versatility and safety are high.

図4(A)、図4(B)は、インピーダンス制御の1つであるコンプライアンス制御を説明する図である。コンプライアンスはバネ定数の逆数を意味し、バネ定数が硬さを表すのに対して、コンプライアンスは柔らかさを意味する。ロボットと環境との間に相互作用が働くときに、機械的柔軟性であるコンプライアンスを与える制御をコンプライアンス制御と呼ぶ。   FIG. 4A and FIG. 4B are diagrams for explaining the compliance control which is one of the impedance controls. Compliance means the reciprocal of the spring constant, and the spring constant represents hardness, whereas compliance means softness. Control that provides compliance, which is mechanical flexibility, when interaction between the robot and the environment works is called compliance control.

例えば図4(A)では、ロボットのアームAMには力覚センサーSEが取り付けられている。このロボットのアームAMは、力覚センサーSEで得られたセンサー情報(力・トルク情報)に応じて姿勢が変わるようにプログラムされている。具体的には、図4(A)のA1に示す仮想的なバネが、あたかもアームAMの先端に取り付けられているかのようにロボットを制御する。   For example, in FIG. 4A, a force sensor SE is attached to the arm AM of the robot. The robot arm AM is programmed so that its posture changes according to sensor information (force / torque information) obtained by the force sensor SE. Specifically, the robot is controlled as if a virtual spring indicated by A1 in FIG. 4A is attached to the tip of the arm AM.

例えばA1に示すバネのバネ定数が100Kg/mであったとする。これを図4(B)のA2に示すように5Kgの力で押せば、A3に示すようにバネは5cmだけ縮む。逆に言えば、5cmだけ縮んでいれば、5Kgの力で押されているといえる。つまり、力情報と位置情報とが線形に対応づけられている。   For example, it is assumed that the spring constant of the spring indicated by A1 is 100 kg / m. If this is pressed with a force of 5 kg as shown at A2 in FIG. 4B, the spring contracts by 5 cm as shown at A3. In other words, if it shrinks by 5 cm, it can be said that it is pushed with a force of 5 kg. That is, force information and position information are associated linearly.

コンプライアンス制御では、このA1に示す仮想的なバネがアームAMの先端に取り付けられているかのような制御が行われる。具体的には、ロボットは、力覚センサーSEの入力に応答して動作し、A2に示す5Kgの加重に対して、A3に示すように5cmだけ後退するように制御され、力情報に対応して位置情報が変化するように制御される。   In the compliance control, control is performed as if the virtual spring indicated by A1 is attached to the tip of the arm AM. Specifically, the robot operates in response to the input of the force sensor SE, and is controlled to move back by 5 cm as shown in A3 with respect to the 5 kg weight shown in A2, corresponding to the force information. The position information is controlled to change.

このような単純なコンプライアンス制御では時間項を含まないが、時間項を含み、その2次の項までを考慮した制御が、インピーダンス制御である。具体的には、2次の項は質量項であり、1次の項は粘性項であり、インピーダンス制御のモデルは下式(1)に示すような運動方程式で表すことができる。   Such simple compliance control does not include a time term, but the control including the time term and considering the second order term is impedance control. Specifically, the second-order term is a mass term, the first-order term is a viscosity term, and the impedance control model can be expressed by an equation of motion as shown in the following equation (1).

Figure 2013146792
上式(1)において、mは質量、μは粘性係数、kは弾性係数、fは力、xは目標位置からの変位である。またxの1次微分、2次微分は、各々、速度、加速度に対応する。インピーダンス制御では、上式(1)の特性をアームの先端であるエンドエフェクター部に持たせるための制御系を構成する。即ち上式(1)で表される仮想質量、仮想粘性係数、仮想弾性係数を、あたかもアームの先端が持っているかのように制御を行う。
Figure 2013146792
In the above equation (1), m is mass, μ is a viscosity coefficient, k is an elastic coefficient, f is a force, and x is a displacement from a target position. The first and second derivatives of x correspond to speed and acceleration, respectively. In the impedance control, a control system for providing the end effector unit, which is the tip of the arm, with the characteristic of the above formula (1) is configured. That is, control is performed as if the tip of the arm has the virtual mass, virtual viscosity coefficient, and virtual elastic coefficient represented by the above equation (1).

このように、インピーダンス制御は、アームの先端の質量に粘性要素と弾性要素が各方向に接続されるモデルにおいて、目的として設定された粘性係数と弾性係数で物体に接触するようにする制御である。   As described above, impedance control is control that makes a contact with an object with a viscosity coefficient and an elastic coefficient set as an object in a model in which a viscous element and an elastic element are connected to the mass of the tip of the arm in each direction. .

例えば図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が衝突するのを防止できる。   For example, as shown in FIG. 5A, let us consider a control in which an object OB is held by robot arms AL and AR and moved along a trajectory TR. In this case, the trajectory TRL is a trajectory through which the point PL set inside the left side of the object OB passes, and is a virtual left-hand trajectory determined on the assumption of impedance control. The trajectory TRR is a trajectory through which the point PR set inside the right side of the object OB passes, and is a virtual right-hand trajectory determined on the assumption of impedance control. In this case, the arm AL is controlled so that a force corresponding to the distance difference between the tip of the arm AL and the point PL is generated. The arm AR is controlled so that a force corresponding to the distance difference between the tip of the arm AR and the point PR is generated. In this way, it is possible to realize impedance control that moves the object OB while grasping it softly. In the impedance control, even if the situation where the object OB falls as shown by B1 in FIG. 5A occurs, the ends of the arms AL and AR are points PL and PR as shown by B2 and B3. It is controlled to stop at the position. That is, if the virtual trajectory is not a collision trajectory, it is possible to prevent the arms AL and AR from colliding.

また図5(B)のように、物体の表面SFをなぞるように制御する場合にも、インピーダンス制御では、アームAMの先端に対して、仮想的な軌道TRVAと先端との距離差DFに応じた力が働くように制御される。従って、アームAMを、力を加えながら表面SFをなぞるような制御が可能になる。   In addition, as shown in FIG. 5B, when the control is performed so that the surface SF of the object is traced, the impedance control is performed according to the distance difference DF between the virtual trajectory TRVA and the tip with respect to the tip of the arm AM. It is controlled so that the applied force works. Therefore, the arm AM can be controlled to trace the surface SF while applying a force.

これらの例は線形インピーダンス制御を行っている様子を示している。そのため、例えば、図5(A)の例で、より強い力をかけなければ物体OBを把持できないという場合には、PLをより右手AR側に、PRをより左手AL側に設定する必要がある。この場合に、物体OBが落下してしまうと、ロボットの右手ARは点PRに、左手ALは点PLにそのまま移動してしまい、両手が衝突してしまう恐れがある。このように、線形インピーダンス制御では、仮想変位に対して、線形な解(力、外力)が定まるため、点PL及びPRを図5(A)の位置に設定したまま、物体OBにかける力を強くすることができない。   These examples show how linear impedance control is performed. Therefore, for example, in the example of FIG. 5A, when the object OB cannot be gripped unless a stronger force is applied, it is necessary to set PL to the right hand AR side and PR to the left hand AL side. . In this case, if the object OB falls, the right hand AR of the robot moves to the point PR and the left hand AL moves to the point PL as it is, and there is a possibility that both hands collide. Thus, in linear impedance control, since a linear solution (force, external force) is determined with respect to virtual displacement, the force applied to the object OB is maintained while the points PL and PR are set at the positions shown in FIG. I can't be strong.

同様に図6(A)〜図6(C)に、ロボットの指先が、凹凸のある物体の表面に沿って動く場合、あるいは、表面の凹凸を削りながら動く場合の例を示す。   Similarly, FIGS. 6A to 6C show examples in which the fingertip of the robot moves along the surface of an object with unevenness or moves while removing the unevenness on the surface.

図6(A)の凸OBS1を削る場合のようにあまり力を必要としない場合には、ロボットの指先の目標位置をPD1とするような小さな仮想変位で、凸OBS1を削るために必要な力を発生させることができる。   When not much force is required as in the case of cutting the convex OBS1 in FIG. 6A, the force required to cut the convex OBS1 with a small virtual displacement such that the target position of the fingertip of the robot is PD1. Can be generated.

しかし、図6(A)と同じインピーダンス制御パラメーターのみを用いて、図6(B)の凸OBS2を削る場合のように大きな力を必要とする場合には、ロボットの指先の目標位置をPD2とするような大きな仮想変位を発生させる必要がある。   However, when a large force is required as in the case of cutting the convex OBS2 in FIG. 6B by using only the same impedance control parameters as in FIG. 6A, the target position of the fingertip of the robot is set as PD2. It is necessary to generate such a large virtual displacement.

この時、図6(C)のように反力がなくなると、ロボットのマニピュレーターは大きな動きを起こしてしまう。これは人間の作業でも起こりえることではあるが、実際には、人間は、対象物に与える力、仮想変位によって、力加減を変化させている。   At this time, if the reaction force disappears as shown in FIG. 6C, the manipulator of the robot will move greatly. Although this can occur in human work, in reality, humans change the force level by the force applied to the object and the virtual displacement.

そこで、後述する実施形態では、仮想変位に対して非線形な解(力)を出力して、図5(A)の衝突や、図6(C)の大きな動きを回避する手法を用いる。   Therefore, in an embodiment to be described later, a method of outputting a non-linear solution (force) with respect to the virtual displacement and avoiding the collision in FIG. 5A and the large movement in FIG. 6C is used.

1.3 制御系の構成
ここで、力覚フィードバックを含まない場合の制御系の基本構成例を図7に示す。
1.3 Configuration of Control System Here, FIG. 7 shows a basic configuration example of a control system when force feedback is not included.

軌道生成部562は、軌道情報p(xyzuvw)を生成してインバースキネマティクス処理部564に出力する。ここで軌道情報pは、例えばアームの先端(エンドエフェクター部)の位置情報(xyz)と各軸回りの回転情報(uvw)を含む。そしてインバースキネマティクス処理部564は、この軌道情報pに基づいてインバースキネマティクス処理を行って、目標値である各関節の関節角θを生成して出力する。そして、この関節角θに基づいて、モーター制御を行うことで、ロボットのアームの動作制御が行われる。この場合に図7のモーター(M)の制御は、公知のPID制御により実現されている。このPID制御は公知の技術であるため、ここでは詳細な説明を省略する。   The trajectory generation unit 562 generates trajectory information p (xyzuww) and outputs it to the inverse kinematics processing unit 564. Here, the trajectory information p includes, for example, position information (xyz) of the tip of the arm (end effector section) and rotation information (uvw) about each axis. Then, the inverse kinematics processing unit 564 performs inverse kinematics processing based on the trajectory information p, and generates and outputs a joint angle θ of each joint as a target value. Then, by performing motor control based on the joint angle θ, the operation control of the robot arm is performed. In this case, the control of the motor (M) in FIG. 7 is realized by known PID control. Since this PID control is a known technique, a detailed description thereof is omitted here.

図7において、軌道生成部562とインバースキネマティクス処理部564とにより目標値出力部が構成される。この目標値出力部の処理は、ロボットの全体的な処理になる。一方、後段のモーター制御は、関節毎の制御になる。   In FIG. 7, the trajectory generation unit 562 and the inverse kinematics processing unit 564 constitute a target value output unit. The processing of this target value output unit is the overall processing of the robot. On the other hand, the latter-stage motor control is control for each joint.

図8に、力覚フィードバックを含む場合の制御系の基本構成例を示す。図8では、図7に対して、更に、力覚センサー510と、姿勢補正部532と、ハンド・ツール自重補正部534と、運動方程式処理部536と、フォワードキネマティクス処理部540が設けられている。   FIG. 8 shows a basic configuration example of the control system in the case of including force feedback. 8 further includes a force sensor 510, a posture correction unit 532, a hand / tool self-weight correction unit 534, a motion equation processing unit 536, and a forward kinematics processing unit 540, compared to FIG. Yes.

図8では、力覚センサー510からのセンサー情報を受けて、姿勢補正部532がセンサーの姿勢補正を行い、ハンド・ツール自重補正部534がハンド・ツール自重補正を行う。そして、運動方程式処理部536が、前述の式(1)に示すような運動方程式の解を求める処理を行い、補正値Δpを出力する。この補正値Δpにより軌道情報pが補正されることで、目標値である関節角θの補正処理が行われる。またフォワードキネマティクス処理部540は、フォワードキネマティクス処理を行って、ロボットの軌道情報p’を求めて軌道生成部562にフィードバックする。また姿勢補正部532、ハンド・ツール自重補正部534に対して姿勢を特定するための情報を出力する。なお、ロボットの軌道情報p’の軌道生成部562へのフィードバックは、p’に基づいた軌道の修正処理等を行うためのものであり、当該修正処理等を行わないのであれば、フィードバックは必ずしも必要ない。   In FIG. 8, in response to sensor information from the force sensor 510, the posture correction unit 532 performs sensor posture correction, and the hand / tool self-weight correction unit 534 performs hand / tool self-weight correction. Then, the equation of motion processing unit 536 performs processing for obtaining a solution of the equation of motion as shown in the above equation (1), and outputs a correction value Δp. By correcting the trajectory information p with this correction value Δp, a correction process for the joint angle θ, which is a target value, is performed. The forward kinematics processing unit 540 performs forward kinematics processing, obtains the trajectory information p ′ of the robot, and feeds it back to the trajectory generation unit 562. Information for specifying the posture is output to the posture correction unit 532 and the hand / tool self-weight correction unit 534. The feedback of the robot trajectory information p ′ to the trajectory generation unit 562 is for performing a trajectory correction process based on p ′. If the correction process is not performed, the feedback is not necessarily performed. unnecessary.

ハンド・ツール自重補正部534では、ハンド・ツール自重補正が行われ、姿勢補正部532では姿勢補正が行われる。ここでハンド・ツール自重補正は、ロボットのハンドの自重や、ハンドがつかむツールの自重による影響を、力覚センサー10からのセンサー情報(力情報)から相殺するための補正処理である。また姿勢補正は、力覚センサー10の姿勢による影響を、センサー情報(力情報)から相殺するための補正処理である。これらのハンド・ツール自重補正及び姿勢補正は、例えば下式(2)のように表すことができる。   The hand / tool self-weight correction unit 534 performs hand / tool self-weight correction, and the posture correction unit 532 performs posture correction. Here, the hand / tool self-weight correction is a correction process for offsetting the influence of the weight of the robot hand and the weight of the tool held by the hand from the sensor information (force information) from the force sensor 10. The posture correction is a correction process for offsetting the influence of the posture of the force sensor 10 from the sensor information (force information). These hand tool self-weight correction and posture correction can be expressed as, for example, the following expression (2).

Figure 2013146792
上式(2)において、Fx,Fy,Fz、Fu,Fv,Fwは力覚センサー10からのセンサー情報である力情報、トルク情報である。またBx,By,Bz、Bu,Bv,Bwはバイアス項である。そして、補正後のセンサー情報(力情報、トルク情報)であるfx,fy,fz、fu,fv,fwが運動方程式処理部536に入力される。なお、データには固定値があるため、実質的な補正係数は6×7=42個となる。これらのハンド・ツール自重補正及び姿勢補正は公知の補正処理であるため、詳しい説明は省略する。
Figure 2013146792
In the above equation (2), Fx, Fy, Fz, Fu, Fv, and Fw are force information and torque information that are sensor information from the force sensor 10. Bx, By, Bz, Bu, Bv, and Bw are bias terms. Then, the corrected sensor information (force information, torque information) fx, fy, fz, fu, fv, fw is input to the motion equation processing unit 536. Since the data has a fixed value, the substantial correction coefficient is 6 × 7 = 42. Since these hand tool self-weight correction and posture correction are known correction processes, detailed description thereof will be omitted.

1.4 デジタルフィルター処理
図8の運動方程式処理部536では運動方程式(広義には常微分方程式)の解を求める必要がある。従来、運動方程式の解を求めるにはNewton法やRunge−Kutta法等が用いられていた。しかし、これらの手法はハードウェアー化に適さず、安定性の判定も難しい。さらに応答性の切り替えに対応することが困難であるという問題もある。
1.4 Digital Filter Processing The equation of motion processing unit 536 in FIG. 8 needs to find the solution of the equation of motion (ordinary differential equation in a broad sense). Conventionally, a Newton method, a Runge-Kutta method, or the like has been used to obtain a solution of the equation of motion. However, these methods are not suitable for hardware and it is difficult to determine stability. Further, there is a problem that it is difficult to cope with switching of responsiveness.

そこで本出願人は、上述の3つの問題に対応するために、常微分方程式を解く手法としてデジタルフィルターを用いる。   Therefore, the present applicant uses a digital filter as a technique for solving an ordinary differential equation in order to deal with the above three problems.

1.4.1 運動方程式のデジタルフィルターを用いた解法
運動方程式は上述した式(1)の形で表される。運動方程式は線形常微分方程式であるため、インパルス入力に対する解であるインパルスレスポンスが求められれば、インパルスレスポンスと外力項との畳み込みにより、任意の外力項に対する解を得ることができる。
1.4.1 Solving equations of motion using digital filters The equations of motion are expressed in the form of equation (1) above. Since the equation of motion is a linear ordinary differential equation, if an impulse response that is a solution to the impulse input is obtained, a solution for an arbitrary external force term can be obtained by convolution of the impulse response and the external force term.

ここで、運動方程式の解を求めるというステップを、力覚センサーのセンサー情報の入力に対して解(例えば位置情報)を出力するフィルターであると捉えるならば、上式(1)の形から、2極のアナログフィルターとして考えることができる。   Here, if the step of obtaining the solution of the equation of motion is regarded as a filter that outputs a solution (for example, position information) in response to input of sensor information of the force sensor, from the form of the above equation (1), It can be thought of as a two-pole analog filter.

つまり、運動方程式の解はアナログフィルターの出力として求めることができるのであるから、当該アナログフィルターをデジタルフィルター化することで、デジタルフィルターを用いて運動方程式を解くことが可能になる。   That is, since the solution of the equation of motion can be obtained as the output of the analog filter, the equation of motion can be solved using the digital filter by converting the analog filter into a digital filter.

アナログフィルターのデジタルフィルター化の手法は種々知られているが、例えばImpulse Invariance法を用いればよい。これは、アナログフィルターのインパルスレスポンスを離散時間Tでサンプルした値と同じインパルスレスポンスを与えるデジタルフィルターを考える手法である。Impulse Invariance法については公知の手法であるため詳細な説明は省略する。   Various methods for converting an analog filter into a digital filter are known. For example, an impulse invariance method may be used. This is a technique for considering a digital filter that gives the same impulse response as the value obtained by sampling the impulse response of an analog filter at a discrete time T. Since the Impulse Invariance method is a known method, detailed description thereof is omitted.

以上の結果、常微分方程式の解はデジタルフィルターの出力として求めることが可能になる。運動方程式であれば、図9に示したように2極のデジタルフィルターとなる。図9において、dは1サンプル分の遅延であり、C、C、Cはデジタルフィルターの係数(デジタルフィルターパラメーター)である。なお、図9のデジタルフィルターの入力値Fと出力値Yの関係は式(3)のように表すことができる。 As a result, the solution of the ordinary differential equation can be obtained as the output of the digital filter. If it is an equation of motion, it will become a two-pole digital filter as shown in FIG. In FIG. 9, d is a delay for one sample, and C 0 , C 1 , and C 2 are digital filter coefficients (digital filter parameters). The relationship between the input value F and an output value Y n of the digital filter in FIG. 9 can be expressed by Equation (3).

Figure 2013146792
デジタルフィルターによる処理であれば、ハードウェアー化は容易であるし、後述するように安定性の判定も容易である。また、デジタルフィルターの係数を切り替えれば、特性(柔らかく動かすか固く動かすか等)を切り替えることもできるし、フィルター駆動周波数を切り替えて解の応答性を切り替えることもできる。
Figure 2013146792
If the processing is performed using a digital filter, it is easy to implement hardware, and it is also easy to determine stability as described later. In addition, by switching the coefficient of the digital filter, it is possible to switch the characteristics (whether it is moved softly or hardly), or to switch the response of the solution by switching the filter drive frequency.

1.4.2 デジタルフィルターの安定度判定
インピーダンス制御においては、運動方程式の質量項(m)、粘性項(μ)及び弾性項(k)の設定次第では、安定でない系ができてしまう可能性がある。極端な例で言えば、ロボットに一度力を加えたら、その後一切触れていないにもかかわらずロボットの振動が継続するような、発振する系にもなりうるということである。そのような安定性(安定度)の低い系は実用上好ましくないため、運動方程式に関する系の安定性を判定し、安定でない場合には何らかの対処をする必要がある。
1.4.2 Judgment of digital filter stability In impedance control, depending on the setting of the mass term (m), viscosity term (μ), and elasticity term (k) of the equation of motion, there is a possibility that an unstable system may be formed. There is. In an extreme example, once a force is applied to a robot, it can be an oscillating system where the robot continues to vibrate even though it has not been touched at all. Such a system with low stability (stability) is not preferable in practice, and therefore it is necessary to determine the stability of the system related to the equation of motion, and to take some measures if it is not stable.

しかし、上述のNewton法やRunge−Kutta法等では、運動方程式の解を求めることはできても、安定性の判定は行えない。そのため、解を求める処理とは別に安定性を判定する処理が必要となるが、一般的に安定性の判定処理は容易でないことが知られている。   However, with the Newton method and the Runge-Kutta method described above, it is possible to determine the solution of the equation of motion, but it is not possible to determine the stability. Therefore, a process for determining stability is required separately from the process for obtaining a solution, but it is generally known that the process for determining stability is not easy.

本実施形態の手法では、運動方程式を、デジタルフィルターを用いて処理するため、運動方程式に関する系の安定性の判定とは、対応するデジタルフィルターの安定性の判定に他ならない。デジタルフィルターの安定性の判定は、容易に行うことができ、極が単位円の中にあるか否かを判定すればよい。   In the method of the present embodiment, since the equation of motion is processed using a digital filter, the determination of the stability of the system related to the equation of motion is nothing but the determination of the stability of the corresponding digital filter. The stability of the digital filter can be easily determined, and it is only necessary to determine whether the pole is in the unit circle.

具体例を図10(A)〜図10(C)に示す。これらはどれも極が単位円の中に収まっている例であるが、極が単位円の外にある場合には安定でないと判定する。また、図10(C)のようにある程度、単位円の円周上から内側に離れた位置に極がある場合には、特に問題はない。しかし、図10(A)のように単位円にかなり近い位置に極(なお、図10(A)は重根ではなく限りなく近い位置に2つの極がある例である)がある場合には、注意が必要である。なぜなら、デジタルフィルターの実装手法によっては、設計値に対して誤差が生ずるおそれがあるからである。当該誤差が極の位置を単位円の外側方向に移動させる要因となった場合、図10(A)のような安定性に余裕のないデジタルフィルターは、設計上安定であるにもかかわらず、実装時には安定でない動作をする可能性があるため、何らかの対処が必要となる。   Specific examples are shown in FIGS. 10A to 10C. These are all examples in which the pole is within the unit circle, but if the pole is outside the unit circle, it is determined that the pole is not stable. In addition, there is no particular problem when there is a pole at a position away from the circumference of the unit circle to some extent as shown in FIG. However, when there is a pole at a position very close to the unit circle as shown in FIG. 10A (note that FIG. 10A is an example in which there are two poles at a position that is infinitely close rather than a multiple root), Caution must be taken. This is because an error may occur with respect to the design value depending on the digital filter mounting method. If the error causes the pole position to move in the direction outside the unit circle, a digital filter with no margin of stability as shown in FIG. Since some operations may be unstable at times, some countermeasure is required.

1.4.3 デジタルフィルターを用いた場合の構成例
図11にデジタルフィルターを用いて運動方程式の解を求める場合の、ロボット制御装置及びそれを含むロボットシステム及びセンサー情報装置の構成例を示す。なお本実施形態のロボット制御装置、ロボットシステム及びセンサー情報装置は図11の構成には限定されず、その一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。
1.4.3 Configuration Example Using Digital Filter FIG. 11 shows a configuration example of a robot control device, a robot system including the same, and a sensor information device in the case of obtaining a solution of an equation of motion using the digital filter. Note that the robot control device, the robot system, and the sensor information device of the present embodiment are not limited to the configuration in FIG. 11, and various components such as omitting some of the components or adding other components. Variations are possible.

力覚センサー10、目標値出力部60、ロボット制御部80及びロボット100については図1と同様であるため、詳細な説明は省略する。   The force sensor 10, the target value output unit 60, the robot control unit 80, and the robot 100 are the same as those in FIG.

力制御部20は、デジタルフィルター部22を含む。デジタルフィルター部22は、力覚センサーからのセンサー情報(センサー情報に対して補正処理や帯域制限処理が施された情報も含む)に対してデジタルフィルター処理を行って、出力値を補正値として目標値出力部60に出力する。また、力制御部20はセンサー情報に対して帯域制限処理を行う帯域制限部25を含んでもよい。   The force control unit 20 includes a digital filter unit 22. The digital filter unit 22 performs digital filter processing on sensor information from the force sensor (including information obtained by performing correction processing and band limitation processing on the sensor information), and uses the output value as a correction value as a target. Output to the value output unit 60. The force control unit 20 may include a band limiting unit 25 that performs band limiting processing on the sensor information.

デジタルフィルター部22は、デジタルフィルター演算部221と、デジタルフィルター係数出力部222と、デジタルフィルター安定度判定部223を含む。デジタルフィルター演算部221は、センサー情報とデジタルフィルター係数に基づいて、デジタルフィルター処理を行って運動方程式の解を求める。デジタルフィルター係数出力部222は、運動方程式の係数パラメーター(質量項m、粘性項μ、弾性項k及び駆動周期T)に基づいて、デジタルフィルター係数を求め、デジタルフィルター演算部221とデジタルフィルター安定度判定部223に出力する。デジタルフィルター安定度判定部223は、デジタルフィルター係数に基づいて、当該デジタルフィルターの安定性の判定を行う。   The digital filter unit 22 includes a digital filter calculation unit 221, a digital filter coefficient output unit 222, and a digital filter stability determination unit 223. The digital filter calculation unit 221 performs digital filter processing based on the sensor information and the digital filter coefficient to obtain a solution of the equation of motion. The digital filter coefficient output unit 222 obtains a digital filter coefficient based on the coefficient parameters of the equation of motion (mass term m, viscosity term μ, elasticity term k, and driving period T), and the digital filter calculation unit 221 and the digital filter stability The data is output to the determination unit 223. The digital filter stability determination unit 223 determines the stability of the digital filter based on the digital filter coefficient.

デジタルフィルター係数出力部222は、デジタルフィルター係数記憶部224と、デジタルフィルター係数変換部225を含んでもよい。デジタルフィルター係数変換部225は、運動方程式の係数パラメーターをデジタルフィルター係数に変換する。デジタルフィルター係数記憶部224は、変換されたデジタルフィルター係数を記憶する。デジタルフィルター係数記憶部224に複数のデジタルフィルター係数を記憶しておけば、出力するデジタルフィルター係数を切り替えることで、ロボットの動作特性や、解の応答性を切り替えることが可能になる。   The digital filter coefficient output unit 222 may include a digital filter coefficient storage unit 224 and a digital filter coefficient conversion unit 225. The digital filter coefficient conversion unit 225 converts coefficient parameters of the equation of motion into digital filter coefficients. The digital filter coefficient storage unit 224 stores the converted digital filter coefficient. If a plurality of digital filter coefficients are stored in the digital filter coefficient storage unit 224, it is possible to switch the operation characteristics of the robot and the responsiveness of the solution by switching the output digital filter coefficients.

1.5 非線形インピーダンス制御
次に、図12(A)〜図12(C)を用いて、以下で説明する第1の実施形態と第2の実施形態において実現する非線形インピーダンス制御の概要を説明する。
1.5 Nonlinear Impedance Control Next, an outline of nonlinear impedance control realized in the first embodiment and the second embodiment described below will be described with reference to FIGS. 12 (A) to 12 (C). .

第1の実施形態及び第2の実施形態では、第1の大きさの外力が力覚センサーに加えられた場合のロボットの位置の変位変化量と、第1の大きさとは異なる大きさである第2の大きさの外力が力覚センサーに加えられた場合のロボットの位置の変位変化量とが異なる力制御を行う。   In the first embodiment and the second embodiment, the displacement change amount of the position of the robot when an external force of the first magnitude is applied to the force sensor is different from the first magnitude. Force control different from the displacement change amount of the position of the robot when an external force of the second magnitude is applied to the force sensor is performed.

具体的に、まず、図12(A)には、線形インピーダンス制御の例を示す。図12(A)のグラフは、外力が大きくなるほど、変位も比例して大きくなる様子を示している。前述した図5(A)、図5(B)や図6(A)〜図6(C)における外力と変位にはこのような関係が成り立っている。   Specifically, first, FIG. 12A shows an example of linear impedance control. The graph in FIG. 12A shows that the displacement increases proportionally as the external force increases. Such a relationship is established between the external force and the displacement in FIGS. 5 (A), 5 (B) and 6 (A) to 6 (C).

次に、図12(B)には所定の閾値以上外力が大きくなった場合には、変位が大きくなりにくくする非線形インピーダンス制御の例を示す。すなわち、変位が大きくなるにつれ、発生させる外力が大きくなりやすくする制御である。このような非線形インピーダンス制御を行えば、例えば図6(A)〜図6(C)のように大きな力をかけなければ削れない凸OBS2がある場合でも、変位を大きくすることなく(目標位置PD2を遠くに設定することなく)、必要な力を発生させることができる。その結果、凸OBS2を削った後でもマニピュレーターが大きく動きすぎることを防ぐことができる。なお、図12(B)のグラフは、外力と変位の関係を一意にするためには傾斜が必要であるため、外力をいくら大きくしても傾きを0にはしない。   Next, FIG. 12B shows an example of nonlinear impedance control in which the displacement is less likely to increase when the external force increases beyond a predetermined threshold. That is, the control is such that the generated external force tends to increase as the displacement increases. When such nonlinear impedance control is performed, for example, as shown in FIGS. 6A to 6C, even when there is a convex OBS2 that cannot be cut unless a large force is applied, the displacement is not increased (the target position PD2). Without having to be set far away). As a result, it is possible to prevent the manipulator from moving too much even after the convex OBS 2 is cut. Note that the graph of FIG. 12B requires an inclination to make the relationship between the external force and the displacement unique, so the inclination is not reduced to 0 no matter how much the external force is increased.

さらに、図12(C)には所定の閾値以上変位が大きくなった場合には、外力(抗力)が大きくなりにくくする非線形インピーダンス制御の例を示す。言い換えれば、外力が大きい場合に変位を非常に大きく非線形インピーダンス制御である。このような非線形インピーダンス制御を行えば、例えば図5(A)のように物体OBを把持する場合に、物体OBをつぶさずに変位を大きくすることが可能となる。   Further, FIG. 12C shows an example of nonlinear impedance control in which the external force (drag) is less likely to increase when the displacement becomes larger than a predetermined threshold. In other words, when the external force is large, the displacement is very large and nonlinear impedance control is performed. If such nonlinear impedance control is performed, for example, when the object OB is gripped as shown in FIG. 5A, the displacement can be increased without crushing the object OB.

以下、図11の構成を基本とし、図12(B)及び図12(C)のような非線形インピーダンス制御を実現する第1の実施形態と第2の実施形態について説明する。第1の実施形態は、本発明の基本形であり、使用するデジタルフィルターのパラメーターを切り替えて、非線形インピーダンス制御を行う例である。第2の実施形態は、2種類のデジタルフィルターのパラメーターのそれぞれを用いて、インピーダンス制御を行った時の出力値に重み付けを行い、重み付けした2種類の出力値の和を補正値として用いて、力制御を行う例である。   Hereinafter, a first embodiment and a second embodiment that realize nonlinear impedance control as shown in FIGS. 12B and 12C based on the configuration of FIG. 11 will be described. The first embodiment is a basic form of the present invention and is an example in which nonlinear impedance control is performed by switching parameters of a digital filter to be used. In the second embodiment, each of the two types of digital filter parameters is used to weight the output value when impedance control is performed, and the sum of the two types of weighted output values is used as a correction value. It is an example which performs force control.

2.第1の実施形態
2.1 構成
図13に第1の実施形態に係るロボット制御装置の構成例を示す。
2. First Embodiment 2.1 Configuration FIG. 13 shows a configuration example of a robot control apparatus according to the first embodiment.

力覚センサー10、目標値出力部60(軌道生成部62、インバースキネマティクス処理部64)、ロボット制御部80(モーター制御部82−1〜モーター制御部82−N)等については図1と同様であるため詳細な説明は省略する。また、入力補正部30は検出センサー値(センサー情報)に対して補正処理を行うもので、例えば図8の姿勢補正部532やハンド・ツール自重補正部534等を含んでもよい。フォワードキネマティクス処理部40は、図8のフォワードキネマティクス処理部540に対応し、フォワードキネマティクス処理の結果を入力補正部30に出力するとともに、必要に応じて軌道生成部62にも出力してもよい。   The force sensor 10, target value output unit 60 (orbit generation unit 62, inverse kinematics processing unit 64), robot control unit 80 (motor control unit 82-1 to motor control unit 82-N), and the like are the same as in FIG. Therefore, detailed description is omitted. The input correction unit 30 performs correction processing on the detected sensor value (sensor information), and may include, for example, the posture correction unit 532 and the hand / tool self-weight correction unit 534 shown in FIG. The forward kinematics processing unit 40 corresponds to the forward kinematics processing unit 540 of FIG. 8 and outputs the result of the forward kinematics processing to the input correction unit 30 and also outputs it to the trajectory generation unit 62 as necessary. Also good.

また、ロボット制御装置の力制御部20は、インピーダンス処理部21と、制御パラメーター記憶部24−1〜制御パラメーター記憶部24−Nと、パラメーター選択部26と、補正判定部27と、を含む。なお、本実施形態の力制御部20は図13の構成には限定されず、その一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。   The force control unit 20 of the robot control device includes an impedance processing unit 21, a control parameter storage unit 24-1 to a control parameter storage unit 24-N, a parameter selection unit 26, and a correction determination unit 27. Note that the force control unit 20 of the present embodiment is not limited to the configuration shown in FIG. 13, and various modifications such as omitting some of the components or adding other components are possible. is there.

また、図13のインピーダンス処理部21は、図11のデジタルフィルター演算部221に対応し、動作も同様のため、説明を省略する。さらに、図13の制御パラメーター記憶部24−1〜制御パラメーター記憶部24−Nは、図11のデジタルフィルター係数記憶部224に対応し、図13のパラメーター選択部26は、図11のデジタルフィルター係数変換部225に対応する。   The impedance processing unit 21 in FIG. 13 corresponds to the digital filter calculation unit 221 in FIG. Furthermore, the control parameter storage unit 24-1 to control parameter storage unit 24-N in FIG. 13 correspond to the digital filter coefficient storage unit 224 in FIG. 11, and the parameter selection unit 26 in FIG. This corresponds to the conversion unit 225.

制御パラメーター記憶部24−1〜制御パラメーター記憶部24−Nは、それぞれ異なる制御パラメーターを記憶する。ここで、制御パラメーターとは、後述する運動方程式の係数パラメーターであっても良いし、デジタルフィルターのパラメーターであってもよい。さらに、制御パラメーターとして、後述するオフセットパラメーターを記憶してもよい。制御パラメーター記憶部の機能は、RAM等のメモリーやHDD(ハードディスクドライブ)などにより実現でき、実際には一つのメモリー等により構成されていても良いし、複数のメモリー等により構成されていても良い。   The control parameter storage unit 24-1 to the control parameter storage unit 24-N store different control parameters. Here, the control parameter may be a coefficient parameter of an equation of motion described later, or may be a parameter of a digital filter. Furthermore, you may memorize | store the offset parameter mentioned later as a control parameter. The function of the control parameter storage unit can be realized by a memory such as a RAM, an HDD (hard disk drive), etc., and may actually be constituted by a single memory or a plurality of memories. .

パラメーター選択部26は、制御パラメーター記憶部24−1〜制御パラメーター記憶部24−Nに記憶された制御パラメーターの中から使用する制御パラメーターを選択し、インピーダンス処理部21に出力する。また、制御パラメーター記憶部24−1〜制御パラメーター記憶部24−Nに記憶された制御パラメーターが運動方程式の係数パラメーターである場合には、係数パラメーターをデジタルフィルターのパラメーターへ変換する処理等を行う。   The parameter selection unit 26 selects a control parameter to be used from among the control parameters stored in the control parameter storage unit 24-1 to the control parameter storage unit 24-N, and outputs the control parameter to the impedance processing unit 21. Further, when the control parameter stored in the control parameter storage unit 24-1 to control parameter storage unit 24-N is a coefficient parameter of the equation of motion, a process of converting the coefficient parameter into a parameter of the digital filter is performed.

補正判定部27は、インピーダンス処理部21により算出された補正値(仮想変位)に基づいて、インピーダンス制御に用いるデジタルフィルターのパラメーターを変更(切り替え)するか否かを判定し、変更すると判定した場合には、パラメーター選択部26にその旨を通知する。   The correction determination unit 27 determines whether to change (switch) the parameter of the digital filter used for impedance control based on the correction value (virtual displacement) calculated by the impedance processing unit 21, and determines to change Is notified to the parameter selection unit 26.

また、オフセットパラメーターを用いる場合には、デジタルフィルターは図14のようになる。図14に示すデジタルフィルターでは、式(4)に表すように、図9のデジタルフィルターの出力値Y(式(3)参照)にオフセットパラメーター(Offset)を加算した値(Output)を補正値(出力値)として求める。 Further, when the offset parameter is used, the digital filter is as shown in FIG. In the digital filter shown in FIG. 14, as expressed in Expression (4), a value (Output) obtained by adding an offset parameter (Offset) to the output value Y n (see Expression (3)) of the digital filter in FIG. 9 is a correction value. Calculated as (output value).

Figure 2013146792
図14に示したデジタルフィルターによる処理であれば、ハードウェアー化は容易であるし、安定性の判定も容易である。
Figure 2013146792
If the processing by the digital filter shown in FIG. 14 is performed, hardware implementation is easy and determination of stability is also easy.

2.2 詳細な処理
次に図15のフローチャートを用いて、本実施形態における力制御部が行うデジタルフィルター処理の流れを説明する。また、図16に、正弦波外力に対する線形インピーダンス制御の応答例を示し、図17に正弦波外力に対する非線形インピーダンス制御の応答例を示す。ここでは、先に図16の説明を行い、次に図15のフローチャートの説明を交えながら、図17の説明を行う。
2.2 Detailed Processing Next, the flow of digital filter processing performed by the force control unit in the present embodiment will be described using the flowchart of FIG. FIG. 16 shows a response example of linear impedance control to a sine wave external force, and FIG. 17 shows a response example of nonlinear impedance control to a sine wave external force. Here, the description of FIG. 16 will be made first, and then the explanation of FIG. 17 will be made with the explanation of the flowchart of FIG.

まず図16には、縦軸を任意目盛、横軸を時間(秒)として、外力Fの曲線が表されている。そして、図16のグラフには、運動方程式の係数パラメーター(仮想質量、仮想粘性、仮想剛性)の設定を同図に示すPR1とPR2とした時の外力Fに対する線形インピーダンス制御の応答をそれぞれ示している。また、駆動周期は125マイクロ秒(8kサンプル/秒)であり、マニピュレーターの電流制御ループの周期と同じであるものとし、外力は1秒周期の正弦波であるとする。   First, in FIG. 16, a curve of the external force F is represented with the vertical axis representing an arbitrary scale and the horizontal axis representing time (seconds). The graph of FIG. 16 shows the response of linear impedance control to the external force F when the coefficient parameters (virtual mass, virtual viscosity, virtual stiffness) of the equation of motion are set to PR1 and PR2 shown in FIG. Yes. The driving cycle is 125 microseconds (8 ksamples / second), which is the same as the cycle of the current control loop of the manipulator, and the external force is a sine wave with a cycle of 1 second.

図16のPR1とPR2では、仮想質量と仮想粘性は同じであるが、仮想剛性についてはPR2がPR1の2倍大きい。そのため、ロボットは、PR1設定時にはいわゆる軟らかいバネのような応答をし、PR2設定時にはPR1設定時の2倍硬いバネのような応答をする。なお、粘性項、質量項があるため、PR1又はPR2設定時の応答の位相は、外力の位相とずれる。   In PR1 and PR2 of FIG. 16, the virtual mass and the virtual viscosity are the same, but the virtual stiffness is PR2 that is twice as large as PR1. Therefore, the robot responds like a so-called soft spring when setting PR1, and responds like a spring that is twice as hard as setting PR1 when setting PR2. Since there are a viscosity term and a mass term, the phase of response when setting PR1 or PR2 is shifted from the phase of external force.

次に、図17の説明を行う。図17に示す外力F、PR1設定時の応答、PR2設定時の応答は図16と同じである。図17では、仮想変位に基づいて、使用するデジタルフィルターのパラメーター(係数パラメーターでもよい)を変更して非線形インピーダンス制御を行った時の応答曲線(VPR1)を新たに加えている。   Next, FIG. 17 will be described. The external force F, response at the time of setting PR1, and response at the time of setting PR2 shown in FIG. 17 are the same as those in FIG. In FIG. 17, a response curve (VPR1) when nonlinear impedance control is performed by changing a parameter (or coefficient parameter) of a digital filter to be used is newly added based on the virtual displacement.

図17では、出力(応答)が−1以上+1以下の範囲(以下、軟領域と呼ぶ)にある時に用いる設定をPR1とし、出力(応答)がそれ以外(以下、硬領域と呼ぶ)の場合に用いる設定をPR2としている。   In FIG. 17, the setting used when the output (response) is in the range from −1 to +1 (hereinafter referred to as the soft region) is PR1, and the output (response) is other than that (hereinafter referred to as the hard region). The setting used for is PR2.

デジタルフィルター処理の流れとしては、まず、出力タイミングを待ち(S101)、出力タイミングになった場合に、入力補正部から姿勢補正後の外力(外力値)Fを取得する(S102)。   As a flow of the digital filter processing, first, the output timing is waited (S101), and when the output timing is reached, an external force (external force value) F after posture correction is acquired from the input correction unit (S102).

次に、式(3)を計算し、Yを求める(S103)。さらに、求めたYにオフセット値(Offset)を加え、出力値(Output)を求める(S104)。デジタルフィルターのパラメーターの初期値は軟パラメーター(PR1)であるので、VPR1の応答曲線は軟パラメーター曲線(PR1設定時の応答曲線)に沿う。 Next, Equation (3) is calculated to obtain Y n (S103). Further, an offset value (Offset) is added to the obtained Y n to obtain an output value (Output) (S104). Since the initial value of the digital filter parameter is the soft parameter (PR1), the response curve of VPR1 is along the soft parameter curve (response curve when setting PR1).

ここで、一つ前の出力値と今回計算された出力値が設定境界を挟んでいるかを判定する(S105)。   Here, it is determined whether the previous output value and the currently calculated output value sandwich the setting boundary (S105).

一つ前の出力値と今回計算された出力値が設定境界を挟んでいると判定した場合には、今回計算された出力値が属する領域に対応するデジタルフィルターのパラメーターセットを取得する(S106)。設定境界(境界閾値)は任意に設定可能であり、本例においては、縦軸の−1と+1が設定境界として設定されている。そのため、本例では、VPR1設定時の応答が初めて+1以上になった点で、初めてデジタルフィルターのパラメーターをPR2に切り替えることとなる。そして、取得したデジタルフィルターのパラメーターセットを用いて、次回以降のデジタルフィルター処理を行う。なお、デジタルフィルターのパラメーターは硬パラメーター(PR2)に切り替わるが、質量(慣性)項と粘性項があるため、VPR1設定時の応答曲線は、徐々に軟パラメーター曲線から硬パラメーター曲線(PR2設定時の応答曲線)へと移る。また、VPR1設定時の応答が+1以下になった時(または−1以上になった時)には硬パラメーターから軟パラメーターに切り替わるが、この場合にも同様に、質量(慣性)項と粘性項があるため、徐々に硬曲線から軟曲線へと移る。   If it is determined that the previous output value and the currently calculated output value sandwich the setting boundary, a digital filter parameter set corresponding to the region to which the currently calculated output value belongs is acquired (S106). . The setting boundary (boundary threshold) can be arbitrarily set. In this example, −1 and +1 on the vertical axis are set as the setting boundaries. Therefore, in this example, the digital filter parameter is switched to PR2 for the first time when the response at the time of setting VPR1 becomes +1 or more for the first time. Then, the next digital filter processing is performed using the acquired digital filter parameter set. The parameter of the digital filter is switched to the hard parameter (PR2), but since there are mass (inertia) term and viscosity term, the response curve when VPR1 is set gradually changes from the soft parameter curve to the hard parameter curve (PR2 setting). To the response curve. In addition, when the response at the time of setting VPR1 becomes +1 or less (or when it becomes -1 or more), the hard parameter is switched to the soft parameter. Similarly, in this case, the mass (inertia) term and the viscosity term are switched. Therefore, the curve gradually changes from a hard curve to a soft curve.

一方、一つ前の出力値と今回計算された出力値が設定境界を挟んでいないと判定された場合には、デジタルフィルターのパラメーターセットを変更せずに、そのままステップS101に戻る(S107)。以上本例では、このような処理を繰り返す。   On the other hand, if it is determined that the previous output value and the output value calculated this time do not sandwich the setting boundary, the process returns to step S101 without changing the digital filter parameter set (S107). In this example, such processing is repeated.

本例のように使用するデジタルフィルターのパラメーターを切り替える場合には、軟領域では、応答曲線の傾斜が急であり、同じ力を発生させるための変位(補正値)が大きく、分解能が高い。一方、硬領域では、応答曲線の傾斜が緩やかであり、同じ力を発生させるための変位がより小さく抑えられている。   When switching the parameters of the digital filter to be used as in this example, in the soft region, the slope of the response curve is steep, the displacement (correction value) for generating the same force is large, and the resolution is high. On the other hand, in the hard region, the slope of the response curve is gentle, and the displacement for generating the same force is further suppressed.

以上の本実施形態のロボット制御装置は、力覚センサー10から取得される検出センサー値に基づいて、ロボット100の目標軌道の補正値を出力する力制御部20と、目標軌道に対して補正値に基づく補正処理を行って目標値を求め、求めた目標値を出力する目標値出力部60と、目標値に基づいて、ロボット100のフィードバック制御を行うロボット制御部80と、を含む。そして、力制御部20は、力制御における常微分方程式の解を補正値として求めるデジタルフィルター部22を有する。さらに、力制御部20は、補正値に対応するロボット100についての仮想的な変位が第1の変位である場合の外力に対する変位変化量である第1の変位変化量と、仮想的な変位が第2の変位である場合の変位変化量である第2の変位変化量とが異なる力制御を行う。   The robot control device according to the present embodiment described above is based on the detection sensor value acquired from the force sensor 10 and outputs a correction value for the target trajectory of the robot 100, and a correction value for the target trajectory. A target value output unit 60 that performs a correction process based on the target value to obtain a target value and outputs the obtained target value, and a robot control unit 80 that performs feedback control of the robot 100 based on the target value. And the force control part 20 has the digital filter part 22 which calculates | requires the solution of the ordinary differential equation in force control as a correction value. Furthermore, the force control unit 20 has a first displacement change amount that is a displacement change amount with respect to an external force when the virtual displacement of the robot 100 corresponding to the correction value is the first displacement, and the virtual displacement is Force control different from the second displacement change amount that is the displacement change amount in the case of the second displacement is performed.

まず、力制御は、力覚センサー10から取得される検出センサー値に基づいて、ロボット100の目標軌道の補正値を求め、求めた補正値を出力する。   First, in the force control, the correction value of the target trajectory of the robot 100 is obtained based on the detection sensor value acquired from the force sensor 10, and the obtained correction value is output.

ここで、デジタルフィルター処理に用いられる検出センサー値(センサー情報)とは、力覚センサー10からの出力値そのものであってもよいし、当該出力値に対して入力補正部30による補正処理が施されたものであってもよい。また、帯域制限部25(図11に記載)による帯域制限処理が施されたものであってもよい。さらに、これらと数学的に等価な情報であってもよい。   Here, the detection sensor value (sensor information) used for the digital filter processing may be an output value itself from the force sensor 10 or a correction process by the input correction unit 30 is performed on the output value. It may be what was done. Moreover, the band limiting process by the band limiting unit 25 (described in FIG. 11) may be performed. Furthermore, the information may be mathematically equivalent to these.

また、補正値とは、力制御部20により求められ、目標値出力部60により目標軌道を補正するために用いられる値のことである。例えば、補正値は、図12(B)や図12(C)のグラフに表される変位のことである。図12(B)や図12(C)のグラフ等に表された変位は、外力に対するインピーダンス制御の応答(出力)であり、実際にロボット100のマニピュレーター等が動いた距離等を表す値ではない。そのため、実際にロボット100のマニピュレーター等が動いた時の変位と区別するために、この変位のことを仮想変位(仮想的な変位)とも呼ぶ。   The correction value is a value obtained by the force control unit 20 and used for correcting the target trajectory by the target value output unit 60. For example, the correction value is the displacement represented in the graphs of FIGS. 12B and 12C. The displacements shown in the graphs of FIGS. 12B and 12C are impedance control responses (outputs) to external forces, and are not values that represent the distance or the like that the manipulator or the like of the robot 100 actually moved. . Therefore, in order to distinguish from the displacement when the manipulator or the like of the robot 100 actually moves, this displacement is also referred to as virtual displacement (virtual displacement).

そして、目標値出力部は、目標軌道に対して補正値に基づく補正処理を行って目標値を求める。   Then, the target value output unit obtains the target value by performing correction processing based on the correction value with respect to the target trajectory.

ここで、目標値とは、ロボット100のフィードバック制御における目標値のことであり、ロボット制御部80における制御はこの目標値に基づいて行われる。目標値は目標軌道に対して補正値による補正処理を行うことで取得できる。   Here, the target value is a target value in the feedback control of the robot 100, and the control in the robot control unit 80 is performed based on the target value. The target value can be acquired by performing a correction process using a correction value on the target trajectory.

また、目標軌道とは、狭義にはロボット100のエンドエフェクター部(エンドポイント)の空間的な目標位置の変化を表すものであってもよい。1つの目標位置は、例えば3次元空間座標xyz(姿勢も考慮すれば各軸周りの回転角uvwを追加してもよい)で表されることになり、目標軌道とは当該目標位置の集合となる。ただし、目標軌道はこれに限定されるものではなく、ロボット100の目標関節角の集合であってもよい。関節を持つロボット100では、各関節の角度を決定すると、フォワードキネマティクス処理によりエンドエフェクター部の位置は一意に決定される。つまり、N関節ロボットではN個の関節角(θ1〜θN)により1つの目標位置を表現できることになるから、当該N個の関節角の組を1つの目標関節角とすれば、目標軌道とは目標関節角の集合と考えることができる。よって、力制御部20から出力される補正値も、位置に関する値であってもよいし、関節角に関する値であってもよい。   Further, the target trajectory may represent a change in the spatial target position of the end effector section (end point) of the robot 100 in a narrow sense. One target position is represented by, for example, three-dimensional space coordinates xyz (a rotation angle uvw around each axis may be added in consideration of the posture), and the target trajectory is a set of the target positions. Become. However, the target trajectory is not limited to this, and may be a set of target joint angles of the robot 100. In the robot 100 having a joint, when the angle of each joint is determined, the position of the end effector unit is uniquely determined by forward kinematics processing. That is, in an N-joint robot, one target position can be expressed by N joint angles (θ1 to θN). If the set of N joint angles is one target joint angle, what is a target trajectory? It can be considered as a set of target joint angles. Therefore, the correction value output from the force control unit 20 may be a value related to the position or a value related to the joint angle.

具体例を図23(A)、図23(B)に示す。デジタルフィルター処理により解を求める対象となる常微分方程式として、上式(1)の運動方程式を用いるのであれば、当該運動方程式の解は位置に関する値となる。よって、目標軌道が目標位置である場合には、解をそのまま補正値とすればよく、システム構成例は図23(A)のようになる。なお、目標値は位置に関する値でも関節角に関する値でもよいが、一般的にはロボット100のフィードバック制御は関節角を用いることが想定される。   Specific examples are shown in FIGS. 23A and 23B. If the equation of motion of the above equation (1) is used as an ordinary differential equation for which a solution is obtained by digital filter processing, the solution of the equation of motion is a value related to the position. Therefore, when the target trajectory is the target position, the solution may be used as a correction value as it is, and a system configuration example is as shown in FIG. Note that the target value may be a value related to a position or a value related to a joint angle, but it is generally assumed that the feedback control of the robot 100 uses a joint angle.

それに対して、目標値出力部60のインバースキネマティクス処理部64とは別に、力制御部20がインバースキネマティクス処理部23を含む図23(B)のようなケースも考えられる。例えば、目標値出力部60での目標軌道生成処理と、力制御部20での補正値出力処理とで、処理のタイミングや処理レートが異なる場合等である。その場合には、目標軌道は目標関節角であり、力制御部20では運動方程式の解に対して変換処理(例えばインバースキネマティクス処理)を行って補正値とすることになる。   On the other hand, in addition to the inverse kinematics processing unit 64 of the target value output unit 60, a case as shown in FIG. 23B in which the force control unit 20 includes the inverse kinematics processing unit 23 is also conceivable. For example, this is a case where the target trajectory generation process in the target value output unit 60 and the correction value output process in the force control unit 20 have different processing timings and processing rates. In this case, the target trajectory is the target joint angle, and the force control unit 20 performs a conversion process (for example, inverse kinematics process) on the solution of the motion equation to obtain a correction value.

また、力制御部20は、力制御における常微分方程式の解を補正値として求めるデジタルフィルター部22を有するが、力制御における常微分方程式とは、力制御において解を求める必要がある常微分方程式のことである。狭義には線形常微分方程式であってもよい。さらに狭義には、ロボットにあたかも所望の特性(質量・粘性・弾性等)を持つようにふるまわせるために解を求める必要がある常微分方程式のことであり、式(1)に示したような運動方程式であってもよい。   The force control unit 20 includes a digital filter unit 22 that obtains a solution of an ordinary differential equation in force control as a correction value. The ordinary differential equation in force control is an ordinary differential equation that needs to obtain a solution in force control. That is. In a narrow sense, it may be a linear ordinary differential equation. In a more narrow sense, it is an ordinary differential equation that requires a solution to behave as if the robot had the desired characteristics (mass, viscosity, elasticity, etc.), as shown in equation (1) It may be an equation of motion.

さらに、仮想変位が第1の変位である時の変位変化量を第1の変位変化量とし、仮想変位が第1の変位と異なる第2の変位である時の変位変化量を第2の変位変化量とする場合に、力制御部20は、第1の変位変化量と第2の変位変化量とが異なる力制御を行う。   Further, the displacement change amount when the virtual displacement is the first displacement is defined as the first displacement change amount, and the displacement change amount when the virtual displacement is the second displacement different from the first displacement is the second displacement. In the case of the change amount, the force control unit 20 performs force control in which the first displacement change amount and the second displacement change amount are different.

ここで、変位変化量とは、外力に対する変位の変化量のことをいう。例えば、図12(B)のグラフにおいては、変位変化量は変位を表す曲線の傾きのことをいう。言い換えれば、ロボットのマニピュレーターに一定方向から力を加え、それを徐々に変化させてマニピュレーターの瞬間的な変位を測定し、図12(B)のようにグラフ化した時、ある大きさの外力に対するグラフの傾きが変位変化量となる。   Here, the displacement change amount means a change amount of displacement with respect to an external force. For example, in the graph of FIG. 12B, the displacement change amount refers to the slope of a curve representing the displacement. In other words, when a force is applied to the manipulator of the robot from a certain direction, the momentary displacement of the manipulator is measured by gradually changing the force, and when graphed as shown in FIG. The slope of the graph is the displacement change amount.

そのため、このような変位変化量を確認するためには、例えば、互いに大きさの異なる第1の外力、第2の外力、第3の外力をロボットのマニピュレーターに与え、第1の外力を与えた時のマニピュレーターの変位と第2の外力を与えた時の変位、第3の外力を与えた時の変位をそれぞれ求める。そして、第1の外力を与えた時のマニピュレーターの変位と第2の外力を与えた時の変位との差や、第2の外力を与えた時の変位と第3の外力を与えた時の変位との差を、変位変化量として確認できる。なお、第1の外力と第2の外力(第2の外力と第3の外力)の差を微小にすれば、グラフの傾きと同様の値を求めることができる。すなわち、変異変化量は、第1の外力を加えた時の変位と、第1の外力と異なる第2の外力を加えた時の変位との差ということもできる。そしてこの時、第1の外力と第2の外力との差が微小であっても良い。ここで、微小とは0に限りなく近いことをいう。   Therefore, in order to confirm such a displacement change amount, for example, the first external force, the second external force, and the third external force having different sizes are applied to the manipulator of the robot, and the first external force is applied. The displacement of the manipulator at the time, the displacement when the second external force is applied, and the displacement when the third external force is applied are obtained. Then, the difference between the displacement of the manipulator when the first external force is applied and the displacement when the second external force is applied, and the displacement when the second external force is applied and the third external force are applied. The difference from the displacement can be confirmed as the displacement change amount. If the difference between the first external force and the second external force (second external force and third external force) is made small, a value similar to the slope of the graph can be obtained. That is, the variation amount of the mutation can also be referred to as a difference between the displacement when the first external force is applied and the displacement when the second external force different from the first external force is applied. At this time, the difference between the first external force and the second external force may be minute. Here, minute means that it is close to zero.

また、上記のように変位変化量を確認した際に、外力に比例して変位が大きくなるようであれば、変位と外力とに図12(A)のような関係が成り立っていることが分かり、外力を大きくしているにも関わらず変位が大きくならないようであれば、変位と外力とに図12(B)のような関係が成り立っていることが分かる。   Further, when the displacement change amount is confirmed as described above, if the displacement increases in proportion to the external force, it is understood that the relationship as shown in FIG. 12A is established between the displacement and the external force. If the displacement does not increase even though the external force is increased, it can be seen that the relationship shown in FIG. 12B is established between the displacement and the external force.

このように第1の変位変化量と第2の変位変化量とが異なる力制御を行うことにより、非線形インピーダンス制御を実現することができる。具体的には、外力が急に消失した場合でも、例えば外力が大きい場合に変位を制限する図12(B)のような制御を行うことにより、マニピュレーターの動きを所定の範囲に制限することができる。また、例えばロボットのマニピュレーターが把持する物体が壊れやすいものであったとしても、例えば外力が大きい場合に変位を非常に大きくする図12(C)に示すような制御を行うことにより、外力(抗力)を所定の範囲内に制限することができる。このことは、ロボットの実用上、安全上、非常に有効である。   In this way, nonlinear force control can be realized by performing force control in which the first displacement change amount and the second displacement change amount are different. Specifically, even when the external force suddenly disappears, for example, when the external force is large, the movement of the manipulator can be limited to a predetermined range by performing control as shown in FIG. it can. For example, even if an object gripped by the manipulator of the robot is fragile, for example, by performing the control as shown in FIG. ) Can be limited within a predetermined range. This is very effective for practical use and safety of the robot.

また、常微分方程式の解を求めるという力制御において必要な処理を、デジタルフィルターを用いて行うことが可能になるため、Newton法、Runge−Kutta法等の手法を用いる場合や、上述した特許文献2に示されているようなスライディングモード制御を行う場合に比べて、ハードウェアー化が容易である。そして、デジタルフィルター処理に用いるデジタルフィルターを切り替える(例えばフィルター係数を切り替える)ことで、簡単に応答特性を切り替えることも可能となる。   In addition, since it is possible to use a digital filter to perform a process necessary in force control for obtaining a solution of an ordinary differential equation, when using a method such as the Newton method, the Runge-Kutta method, or the above-described patent document Compared with the case where the sliding mode control as shown in FIG. The response characteristics can be easily switched by switching the digital filter used for the digital filter processing (for example, switching the filter coefficient).

さらに、本実施形態のロボット制御装置は線形なシステムの組み合わせであるため、運動方程式の解の安定性の判定も容易である。   Furthermore, since the robot control apparatus of this embodiment is a combination of linear systems, it is easy to determine the stability of the solution of the equation of motion.

また、力制御部20は、仮想的な変位が第2の変位よりも大きい第1の変位である場合に、第1の変位変化量が第2の変位変化量よりも大きくなる補正値を出力してもよい。   Further, the force control unit 20 outputs a correction value that causes the first displacement change amount to be larger than the second displacement change amount when the virtual displacement is the first displacement larger than the second displacement. May be.

これにより、例えば仮想的な変位の絶対値が大きくなればなるほど、変位変化量が大きくなるような力制御を行うこと等が可能になる。すなわち、図12(C)のグラフのような力制御が可能になる。   Thereby, for example, it is possible to perform force control such that the displacement change amount increases as the absolute value of the virtual displacement increases. That is, force control as shown in the graph of FIG.

例えば、ロボットのマニピュレーターに加える力がある程度小さいうちはマニピュレーターが反発したかのようにマニピュレーターが押し込みにくいが、マニピュレーターに加える力が大きくなるとマニピュレーターが抵抗せずに、加えた力に応じてマニピュレーターが動くようになる。   For example, while the force applied to the robot manipulator is small to some extent, it is difficult to push the manipulator as if the manipulator repelled, but when the force applied to the manipulator increases, the manipulator does not resist and the manipulator moves according to the applied force It becomes like this.

また、力制御部20は、仮想的な変位が第2の変位よりも大きい第1の変位である場合に、第1の変位変化量が第2の変位変化量よりも小さくなる補正値を出力してもよい。   Further, the force control unit 20 outputs a correction value in which the first displacement change amount becomes smaller than the second displacement change amount when the virtual displacement is the first displacement larger than the second displacement. May be.

これにより、例えば仮想的な変位の絶対値が大きくなればなるほど、変位変化量が小さくなるような力制御を行うこと等が可能になる。すなわち、図12(B)のグラフのような力制御が可能になる。   Thereby, for example, it is possible to perform force control such that the displacement change amount becomes smaller as the absolute value of the virtual displacement becomes larger. That is, force control as shown in the graph of FIG.

例えば、ロボットのマニピュレーターに加える力がある程度小さいうちはマニピュレーターが押し込みやすく、加えた力に応じてマニピュレーターが動くが、マニピュレーターに加える力が大きくなるとマニピュレーターが反発したかのように押し込みにくくなる。   For example, while the force applied to the manipulator of the robot is small to some extent, the manipulator is easy to push in, and the manipulator moves according to the applied force. However, when the force applied to the manipulator increases, it becomes difficult to push the manipulator as if it had repelled.

また、これらの力制御を組み合わせて、第1の変位が第1の範囲のある場合には、仮想的な変位の絶対値が大きくなればなるほど、変位変化量が大きくなるような力制御を行い、第1の変位が第2の範囲のある場合には、仮想的な変位の絶対値が大きくなればなるほど、変位変化量が小さくなるような力制御を行うなどの変形実施が可能である。   In addition, by combining these force controls, when the first displacement is within the first range, force control is performed so that the displacement change amount increases as the absolute value of the virtual displacement increases. When the first displacement is in the second range, it is possible to perform a modification such as performing force control so that the displacement change amount decreases as the absolute value of the virtual displacement increases.

また、力制御部20は、常微分方程式の各項の係数パラメーターのセットに対応するデジタルフィルターのパラメーターセットを複数記憶する制御パラメーター記憶部24を含んでもよい。そして、力制御部20は、仮想的な変位が第1の変位である場合には、デジタルフィルターの第1のパラメーターセットを選択してもよい。さらに、力制御部20は、仮想的な変位が第2の変位である場合には、デジタルフィルターの第2のパラメーターセットを選択し、選択したデジタルフィルターのパラメーターセットを用いて、力制御における常微分方程式の解を補正値として求め、補正値を出力してもよい。   Further, the force control unit 20 may include a control parameter storage unit 24 that stores a plurality of digital filter parameter sets corresponding to coefficient parameter sets for each term of the ordinary differential equation. Then, when the virtual displacement is the first displacement, the force control unit 20 may select the first parameter set of the digital filter. Further, when the virtual displacement is the second displacement, the force control unit 20 selects the second parameter set of the digital filter, and uses the selected parameter set of the digital filter to constantly perform the force control. A solution of the differential equation may be obtained as a correction value, and the correction value may be output.

ここで、常微分方程式の各項の係数パラメーターとは、常微分方程式における定数項、1階微分項の係数、2階微分項の係数、・・・n階微分項の係数を指すものとする。上述した式(1)の例であれば、m、μ、kが係数パラメーターとなる。   Here, the coefficient parameter of each term of the ordinary differential equation refers to the constant term, the coefficient of the first derivative term, the coefficient of the second derivative term,... The coefficient of the nth derivative term in the ordinary differential equation. . In the case of the above-described equation (1), m, μ, and k are coefficient parameters.

一方、デジタルフィルターのパラメーターとは、(3)式における各項の係数を指す。具体的には、C、C、Cのことである。なお、第1のパラメーターセットと第2のパラメーターセットは、いずれかのパラメーターが異なっているものとする。 On the other hand, the digital filter parameter refers to the coefficient of each term in the equation (3). Specifically, it is C 0 , C 1 , C 2 . Note that any one of the first parameter set and the second parameter set is different.

具体的には、例えば、図12(D)に示すように、所定の外力とそれに対応する仮想変位が斜線の領域AR1に属する場合には、第1のパラメーターセットPR1を選択し、一方、所定の外力とそれに対応する仮想変位が領域AR1の外の領域AR2に属する場合には、第2のパラメーターセットPR2を選択する等の選択処理を行う。   Specifically, for example, as shown in FIG. 12D, when a predetermined external force and the corresponding virtual displacement belong to the hatched area AR1, the first parameter set PR1 is selected, When the external force and the corresponding virtual displacement belong to the area AR2 outside the area AR1, a selection process such as selecting the second parameter set PR2 is performed.

なお、本実施形態では、仮想変位に基づいて、インピーダンス制御に用いるデジタルフィルターのパラメーターセットの選択処理を行っているが、仮想変位ではなく外力に基づいて、選択処理を行っても良い。   In this embodiment, the selection process of the parameter set of the digital filter used for impedance control is performed based on the virtual displacement. However, the selection process may be performed based on an external force instead of the virtual displacement.

これにより、インピーダンス制御に用いるデジタルフィルターのパラメーターセットを切り替えることで、非線形インピーダンス制御を実現すること等が可能となる。   This makes it possible to realize nonlinear impedance control by switching the parameter set of the digital filter used for impedance control.

また、第1のパラメーターセットと第2のパラメーターセットとを混合して、第3のパラメーターセットを作成し、これを用いても良い。すなわち、力制御部20は、仮想的な変位が第1の変位から第2の変位までの範囲内に含まれる第3の変位である場合には、第1のパラメーターセットと第2のパラメーターセットのうちの少なくとも一方のパラメーターセットに対して重み付け処理を行って、デジタルフィルターの第3のパラメーターセットを求め、第3のパラメーターセットを用いて、常微分方程式の解を補正値として求めてもよい。   Alternatively, the first parameter set and the second parameter set may be mixed to create a third parameter set, which may be used. That is, when the virtual displacement is the third displacement included in the range from the first displacement to the second displacement, the force control unit 20 performs the first parameter set and the second parameter set. The third parameter set of the digital filter may be obtained by performing a weighting process on at least one of the parameter sets, and the solution of the ordinary differential equation may be obtained as a correction value using the third parameter set. .

また、制御パラメーター記憶部24は、補正値を求める際に用いるオフセットパラメーターを記憶してもよい。そして、力制御部20は、仮想的な変位に基づいて、使用するオフセットパラメーターを切り替えて、力制御における常微分方程式の解を求めてもよい。   Further, the control parameter storage unit 24 may store an offset parameter used when obtaining the correction value. And the force control part 20 may obtain | require the solution of the ordinary differential equation in force control by switching the offset parameter to be used based on virtual displacement.

ここで、オフセットパラメーターとは、外力が0である場合の仮想変位のことをいう。オフセットパラメーターは、図14と式(4)に示すように、式(3)の出力値Yに加算して補正値を求めるために用いられる。例えば、図12(D)の例では、第1のパラメーターセットPR1のオフセットパラメーターは0であり、第2のパラメーターセットPR2のオフセットパラメーターは0以上となっている。なお、図12(B)及び図12(C)、図16、図17に示す例では、オフセットパラメーターは全て0となっている。 Here, the offset parameter refers to a virtual displacement when the external force is zero. As shown in FIG. 14 and Expression (4), the offset parameter is used to obtain a correction value by adding to the output value Y n of Expression (3). For example, in the example of FIG. 12D, the offset parameter of the first parameter set PR1 is 0, and the offset parameter of the second parameter set PR2 is 0 or more. In the examples shown in FIGS. 12B, 12C, 16 and 17, all the offset parameters are 0.

これにより、例えば、第1のパラメーターセットから第2のパラメーターセットへ切り替える点において、インピーダンス制御の応答の連続性を高めること等が可能になる。   Thereby, for example, the continuity of the response of the impedance control can be increased at the point of switching from the first parameter set to the second parameter set.

また、力制御部20は、補正値を求めるデジタルフィルター部22の動作の安定度を判定し、デジタルフィルター部22の動作が安定であると判定された場合に、デジタルフィルターのパラメーターセットの選択処理を行い、力制御における常微分方程式の解を補正値として求めてもよい。   Further, the force control unit 20 determines the stability of the operation of the digital filter unit 22 for obtaining the correction value, and when the operation of the digital filter unit 22 is determined to be stable, the digital filter parameter set selection process. And the solution of the ordinary differential equation in force control may be obtained as a correction value.

これにより、デジタルフィルターの安定性を判定すること等が可能になる。力制御における常微分方程式の係数パラメーターは、設定次第では現実にはあり得ない系(例えば発振するロボット等)を作ってしまうことがある。そのため、常微分方程式の安定性を判定する必要があるが、デジタルフィルターを用いれば、その判定が容易となる。   This makes it possible to determine the stability of the digital filter. Depending on the setting, the coefficient parameter of the ordinary differential equation in force control may create a system (for example, an oscillating robot) that is impossible in reality. Therefore, it is necessary to determine the stability of the ordinary differential equation. However, if a digital filter is used, the determination becomes easy.

また、力制御部20は、補正値に対応するロボット100についての仮想的な変位の方向が第1の方向である場合には、第1の力制御を行い、仮想的な変位の方向が第1の方向と反対方向である第2の方向である場合には、第1の力制御と異なる第2の力制御を行ってもよい。   The force control unit 20 performs the first force control when the direction of the virtual displacement of the robot 100 corresponding to the correction value is the first direction, and the direction of the virtual displacement is the first direction. When the second direction is opposite to the first direction, second force control different from the first force control may be performed.

これにより、仮想的な変位の方向に基づいて、実行する力制御を切り替えること等が可能になる。例えば、鉛筆削りで鉛筆を削る場合を考える。この場合に、鉛筆削りの中に鉛筆を押し込む方向(第1の方向)には、仮想変位を大きくする力制御を行う一方で、鉛筆削りから鉛筆を引っ張り出す方向(第2の方向)には、仮想変位を小さくするような力制御を行うことが可能になる。この例では、鉛筆削りの中に鉛筆を押し込みやすくなる一方で、鉛筆削りの中から鉛筆を引っ張り出しにくくなる。なお、仮想変位の方向ではなく、外力の方向に基づいて、実行する力制御の切り替えを行っても良い。すなわち、力制御部20は、検出センサー値により表される外力の方向が第1の方向である場合には、第1の力制御を行い、外力の方向が第1の方向と反対方向である第2の方向である場合には、第1の力制御と異なる第2の力制御を行ってもよい。   This makes it possible to switch the force control to be executed based on the virtual displacement direction. For example, consider the case of sharpening a pencil with a pencil sharpener. In this case, in the direction in which the pencil is pushed into the pencil sharpener (first direction), force control is performed to increase the virtual displacement, while in the direction in which the pencil is pulled from the pencil sharpener (second direction). It becomes possible to perform force control to reduce the virtual displacement. In this example, it becomes easier to push the pencil into the pencil sharpener, but it is difficult to pull out the pencil from the pencil sharpener. Note that the force control to be executed may be switched based on the direction of the external force instead of the direction of the virtual displacement. That is, when the direction of the external force represented by the detection sensor value is the first direction, the force control unit 20 performs the first force control, and the direction of the external force is opposite to the first direction. In the case of the second direction, second force control different from the first force control may be performed.

また、常微分方程式は、仮想質量項、仮想粘性項及び仮想弾性項を係数パラメーターとする運動方程式であってもよい。   The ordinary differential equation may be an equation of motion having a virtual mass term, a virtual viscosity term, and a virtual elasticity term as coefficient parameters.

これにより、運動方程式の解を求めること等が可能になる。よって、ロボット100に対して、あたかも仮想質量項に対応する質量、仮想粘性項に対応する粘性、仮想弾性項に対応する弾性を持つかのようにふるまわせることが可能になる。   Thereby, it is possible to obtain a solution of the equation of motion. Therefore, the robot 100 can behave as if it has a mass corresponding to the virtual mass term, a viscosity corresponding to the virtual viscosity term, and an elasticity corresponding to the virtual elasticity term.

また、以上の本実施形態は、上述してきたロボット制御装置(力制御部20、目標値出力部60、ロボット制御部80を含む)と、目標値出力部60から取得される目標値に基づいて、各部を動作させるロボット100を含むロボットシステムに関係する。   Further, the present embodiment described above is based on the above-described robot control device (including the force control unit 20, the target value output unit 60, and the robot control unit 80) and the target value acquired from the target value output unit 60. The present invention relates to a robot system including the robot 100 that operates each unit.

これにより、ロボット制御装置にとどまらず、本実施形態の処理を実行するロボットシステムを実現すること等が可能になる。   As a result, it is possible to realize a robot system that executes the processing of this embodiment as well as the robot control device.

また、以上の本実施形態は、センサーから取得される検出センサー値に基づいて、制御対象物の目標軌道の補正値を出力するセンサー情報処理部と、目標軌道に対して補正値に基づく補正処理を行って目標値を求め、求めた目標値を出力する目標値出力部と、目標値に基づいて、制御対象物のフィードバック制御を行う制御部と、を含むセンサー情報処理装置に適用できる。センサー情報処理装置において、センサー情報処理部は、デジタルフィルター部を有する。そして、センサー情報処理部は、補正値に対応する制御対象物についての仮想的な変位が第1の変位である場合の外力に対する変位変化量である第1の変位変化量と、仮想的な変位が第2の変位である場合の変位変化量である第2の変位変化量とが異なる力制御を行う。   Further, the present embodiment described above includes a sensor information processing unit that outputs a correction value of the target trajectory of the control target based on the detection sensor value acquired from the sensor, and a correction process based on the correction value with respect to the target trajectory. It can be applied to a sensor information processing apparatus including a target value output unit that obtains a target value by performing the above and outputs the obtained target value, and a control unit that performs feedback control of the controlled object based on the target value. In the sensor information processing apparatus, the sensor information processing unit includes a digital filter unit. Then, the sensor information processing unit includes a first displacement change amount that is a displacement change amount with respect to an external force when the virtual displacement of the control object corresponding to the correction value is the first displacement, and the virtual displacement. Force control that is different from the second displacement change amount, which is the displacement change amount when is the second displacement, is performed.

センサー情報処理装置では、センサーは図13等における力覚センサー10に相当し、センサー情報処理部が力制御部20に相当する。ただし、センサー情報処理装置は、ロボット制御装置への適用に限定されるものではなく、他の制御システムに適用されてもよい。その場合、センサー情報に対するセンサー情報処理(デジタルフィルター処理を含む)に基づいて、制御で使用される情報を出力することになる。さらに言えば、センサー情報処理装置は制御システムへの適用に限定されず、他のシステム(装置)に用いられてもよい。例えば、センサーを用いて種々の情報を検出する検出システム等に用いられてもよい。   In the sensor information processing apparatus, the sensor corresponds to the force sensor 10 in FIG. 13 and the like, and the sensor information processing unit corresponds to the force control unit 20. However, the sensor information processing apparatus is not limited to application to the robot control apparatus, and may be applied to other control systems. In that case, information used in the control is output based on sensor information processing (including digital filter processing) for the sensor information. Furthermore, the sensor information processing apparatus is not limited to application to a control system, and may be used for other systems (apparatuses). For example, it may be used in a detection system that detects various information using a sensor.

ここで、センサー情報処理とは、センサーからの出力値に対して何らかの処理を施して、有用な情報を求める処理のことであり、少なくとも常微分方程式の解を求める処理が含まれる。例えば、ロボット制御装置では、力覚センサーに係る力情報から補正値(例えばロボットの目標位置の補正値)を求めるような、物理的に意味の異なる情報への変換処理となる。また、検出システムであれば、検出精度を高める処理(例えば、センサー情報に含まれるノイズを低減する処理)等が考えられる。   Here, the sensor information processing is processing for obtaining useful information by applying some processing to the output value from the sensor, and includes at least processing for obtaining a solution of an ordinary differential equation. For example, in the robot control apparatus, conversion processing into information having physically different meanings such as obtaining a correction value (for example, a correction value of a target position of the robot) from force information related to the force sensor is performed. In the case of a detection system, a process for improving detection accuracy (for example, a process for reducing noise included in sensor information) may be considered.

なお、センサー情報処理装置の適用がロボット制御装置に限定されないように、センサー情報を出力するセンサーも力覚センサーに限定されるものではない。例えば、加速度センサーや角速度センサー、方位センサー、生体センサー(脈拍センサー等)、GPS等であってもよい。   The sensor that outputs sensor information is not limited to the force sensor so that the application of the sensor information processing apparatus is not limited to the robot control device. For example, an acceleration sensor, an angular velocity sensor, an orientation sensor, a biological sensor (such as a pulse sensor), or a GPS may be used.

これにより、センサー情報に対するデジタルフィルター処理により、常微分方程式の解を求め、出力値を出力するセンサー情報処理装置を実現すること等が可能になる。このセンサー情報処理装置は、例えばセンサーを含むICチップ等として実現されてもよい。センサー情報そのものではなく、センサー情報を用いた常微分方程式の解等を出力できるため、他のシステム等と組み合わせた際に、装置の出力値の有用性が増すことになる。   Accordingly, it is possible to realize a sensor information processing apparatus that obtains an ordinary differential equation solution and outputs an output value by digital filter processing on sensor information. This sensor information processing apparatus may be realized as an IC chip including a sensor, for example. Since the solution of the ordinary differential equation using the sensor information instead of the sensor information itself can be output, the usefulness of the output value of the apparatus increases when combined with other systems.

なお、上記ではデジタルフィルターを用いて力制御を行う場合について述べたが、デジタルフィルターを他の構成要素により代替することも可能である。デジタルフィルターを他の構成要素により代替した場合も、本発明の範囲に含まれるものとする。   In the above description, the case where force control is performed using a digital filter has been described. However, the digital filter may be replaced by other components. The case where the digital filter is replaced by another component is also included in the scope of the present invention.

3.第2の実施形態
ここで、第1の実施形態におけるデジタルフィルターパラメーターの切り替えを行う手法が不適切である一例を図18に示す。図18の例の各種設定は、図16の例と同じであるが、図18に示すようにPR2の代わりにPR3の係数パラメーターを用いる点が図16の例と異なっている。また、使用するデジタルフィルターのパラメーターを変更してインピーダンス制御を行った時の応答をVPR2としてグラフに表している。
3. Second Embodiment Here, an example in which the technique of switching digital filter parameters in the first embodiment is inappropriate is shown in FIG. The various settings of the example of FIG. 18 are the same as those of the example of FIG. 16, but are different from the example of FIG. 16 in that a coefficient parameter of PR3 is used instead of PR2 as shown in FIG. Further, the response when impedance control is performed by changing the parameters of the digital filter to be used is shown in the graph as VPR2.

図18の例では、VPR2の曲線のP1周辺にうねりが発生している。本来であれば、滑らかな曲線となることが望ましい。そのため、力制御における運動方程式の係数パラメーターセットの組み合わせをPR1及びPR3とするような場合には、このようなデジタルフィルターパラメーターの単純切り替えを行う手法は不適切であると言える。   In the example of FIG. 18, the undulation is generated around P1 of the curve of VPR2. Originally, it should be a smooth curve. Therefore, when the combination of coefficient parameters set of the equation of motion in force control is set to PR1 and PR3, it can be said that such a method of simply switching the digital filter parameters is inappropriate.

そこで、第2の実施形態では、2種類のデジタルフィルターのパラメーターのそれぞれを用いて、インピーダンス制御を行った時の出力値に重み付けを行い、重み付けした2種類の出力値の和を補正値として用いて、力制御を行う。   Therefore, in the second embodiment, each of the two types of digital filter parameters is used to weight the output value when impedance control is performed, and the sum of the two types of weighted output values is used as the correction value. Force control.

3.1 構成
図19に第2の実施形態に係るロボット制御装置の構成例を示す。
3.1 Configuration FIG. 19 shows a configuration example of a robot control apparatus according to the second embodiment.

力覚センサー10、入力補正部30、フォワードキネマティクス処理部40、目標値出力部60(軌道生成部62、インバースキネマティクス処理部64)、ロボット制御部80(モーター制御部82−1〜モーター制御部82−N)等については図13と同様であるため詳細な説明は省略する。   Force sensor 10, input correction unit 30, forward kinematics processing unit 40, target value output unit 60 (orbit generation unit 62, inverse kinematics processing unit 64), robot control unit 80 (motor control unit 82-1 to motor control) The part 82-N) and the like are the same as those in FIG.

また、ロボット制御装置の力制御部20は、インピーダンス処理部21―1及びインピーダンス処理部21―2と、制御パラメーター記憶部24−1及び制御パラメーター記憶部24−2と、補正混合部28と、を含む。なお、本実施形態の力制御部20は図19の構成には限定されず、その一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。   The force control unit 20 of the robot control device includes an impedance processing unit 21-1, an impedance processing unit 21-2, a control parameter storage unit 24-1, a control parameter storage unit 24-2, a correction mixing unit 28, including. Note that the force control unit 20 of the present embodiment is not limited to the configuration of FIG. 19, and various modifications may be made such as omitting some of the components or adding other components. is there.

各インピーダンス処理部と制御パラメーター記憶部の動作は、図13と同様であるが、インピーダンス処理部と制御パラメーター記憶部が1対1に対応付けられている点が第1の実施形態と異なる。制御パラメーター記憶部24−1と制御パラメーター記憶部24−2は、それぞれ異なる制御パラメーターを記憶しており、インピーダンス処理部21−1とインピーダンス処理部21−2は、対応する制御パラメーター記憶部に記憶された制御パラメーターに基づいて、インピーダンス処理を行う。   The operations of the impedance processing units and the control parameter storage unit are the same as those in FIG. 13, except that the impedance processing unit and the control parameter storage unit are associated with each other on a one-to-one basis. The control parameter storage unit 24-1 and the control parameter storage unit 24-2 store different control parameters, respectively, and the impedance processing unit 21-1 and the impedance processing unit 21-2 store in the corresponding control parameter storage unit. Impedance processing is performed based on the controlled parameters.

そして、補正混合部28は、インピーダンス処理部21−1とインピーダンス処理部21−2から取得される出力値に対して、重み付けを行って、重み付けした各出力値の和を補正値として算出する。   And the correction | amendment mixing part 28 weights with respect to the output value acquired from the impedance process part 21-1 and the impedance process part 21-2, and calculates the sum of each weighted output value as a correction value.

なお、第2の実施形態におけるデジタルフィルターは図20のようになる。   The digital filter in the second embodiment is as shown in FIG.

3.2 詳細な処理
次に図21のフローチャートを用いて、本実施形態における力制御部が行うデジタルフィルター処理の流れを説明する。
3.2 Detailed Processing Next, the flow of the digital filter processing performed by the force control unit in the present embodiment will be described using the flowchart of FIG.

デジタルフィルター処理の流れは、ステップS201からS204までは図15のステップS101〜S104と同様である。なお、初回のステップS203では、デジタルフィルターのパラメーターとしてPR1に対応するパラメーターを用いる。   The flow of the digital filter process is the same as steps S101 to S104 in FIG. 15 from step S201 to S204. In the first step S203, a parameter corresponding to PR1 is used as a digital filter parameter.

そして、仮想変位が第1の変位から第2の変位までの範囲内に含まれるか否かを判定する(S205)。すなわち、2組のインピーダンス処理を並列動作させて、その出力を重み付け加算するか否かを判定する。   Then, it is determined whether or not the virtual displacement is included in the range from the first displacement to the second displacement (S205). That is, it is determined whether or not two sets of impedance processes are operated in parallel and the outputs are weighted and added.

仮想変位が第1の変位から第2の変位までの範囲内に含まれると判定した場合には、ステップS203で用いていないデジタルフィルターパラメーターを用いて、ステップS203及びステップS204の処理を行う(S206)。初回の場合には、ステップS203では、PR1のパラメーターを用いているので、ステップS206ではPR3のパラメーターを用いる。   When it is determined that the virtual displacement is included in the range from the first displacement to the second displacement, the processing of step S203 and step S204 is performed using the digital filter parameter not used in step S203 (S206). ). In the case of the first time, since the parameter PR1 is used in step S203, the parameter PR3 is used in step S206.

そして、ステップS204とステップS206の出力値の重み付き和を後述する式(6)に従って求め(S207)、インピーダンス制御の応答(出力)として出力し、ステップS201に戻る。   Then, a weighted sum of the output values of step S204 and step S206 is obtained according to equation (6) described later (S207), output as an impedance control response (output), and the process returns to step S201.

一方、仮想変位が第1の変位から第2の変位までの範囲内に含まれないと判定した場合には、一つ前の出力値と計算された出力値が設定境界を挟んでいるか判定する(S208)。なお、設定境界は、図17の例と同様に、縦軸の−1と+1とする。   On the other hand, if it is determined that the virtual displacement is not included in the range from the first displacement to the second displacement, it is determined whether the previous output value and the calculated output value sandwich the setting boundary. (S208). The setting boundaries are set to -1 and +1 on the vertical axis, as in the example of FIG.

次に、一つ前の出力値と計算された出力値が設定境界を挟んでいると判定した場合には、今回計算された出力値が属する領域に対応するデジタルフィルターのパラメーターを取得する(S209)。   Next, when it is determined that the previous output value and the calculated output value sandwich the setting boundary, the digital filter parameter corresponding to the region to which the currently calculated output value belongs is acquired (S209). ).

一方、一つ前の出力値と今回計算された出力値が設定境界を挟んでいないと判定された場合には、デジタルフィルターのパラメーターセットを変更せずに、そのままステップS201に戻る。以上本例では、このような処理を繰り返す。   On the other hand, if it is determined that the previous output value and the currently calculated output value do not sandwich the setting boundary, the digital filter parameter set is not changed, and the process directly returns to step S201. In this example, such processing is repeated.

また、2種類のインピーダンス処理出力の重み付け加算を求めた場合の応答の一例を図22に示す。これは図18と同じ2組の制御パラメーター(PR1とPR3)を用いた場合であるが、本例では、パラメーターを切り替えるのではなく、2組のインピーダンス処理を並列動作させ、その出力を重み付け加算している。なお、本例では説明の簡略化のため、仮想変位の大きさに関わらず、常に重み付け和(CPR1)を求めている。   FIG. 22 shows an example of a response when weighted addition of two types of impedance processing outputs is obtained. This is the case where the same two sets of control parameters (PR1 and PR3) as in FIG. 18 are used. In this example, instead of switching the parameters, two sets of impedance processes are operated in parallel, and the outputs are weighted and added. doing. In this example, for simplification of description, the weighted sum (CPR1) is always obtained regardless of the magnitude of the virtual displacement.

なお、軟パラメーター(PR1)設定時の出力をY、硬パラメーター(PR3)設定時の出力をYとして、重みWを式(5)に、出力値Outputを式(6)に表す。 Note that the output of the soft parameters (PR1) when setting Y s, the output of the hard parameters (PR3) set at a Y h, the weight W in equation (5) represents the output value Output in equation (6).

Figure 2013146792
Figure 2013146792

Figure 2013146792
重み付け関数は、正負両方向に飽和特性を持ち、単調増加関数であれば他の関数でも良いが、ここではtanhあるいはシグモイド関数(実質的にはtanhと同一のもの)を用いる。シグモイド関数は2値の系の最大エントロピー状態を与える関数であり、さまざまな場面で現れる。ただし、ここで最大エントロピーに特別の意味があるわけではない。
Figure 2013146792
The weighting function has saturation characteristics in both positive and negative directions, and may be another function as long as it is a monotonically increasing function. Here, a tanh or sigmoid function (substantially the same as tanh) is used. The sigmoid function is a function that gives the maximum entropy state of a binary system and appears in various situations. However, the maximum entropy does not have any special meaning here.

以上の本実施形態のロボット制御装置の力制御部20は、仮想的な変位が第1の変位から第2の変位までの範囲内に含まれる第3の変位である場合には、第1のパラメーターセットを用いて求めた第1の補正値と、第2のパラメーターセットを用いて求めた第2の補正値とに対して重み付け処理を行って、第3の補正値を求め、求めた第3の補正値を出力してもよい。   When the virtual displacement is the third displacement included in the range from the first displacement to the second displacement, the force control unit 20 of the robot control device of the present embodiment described above is The first correction value obtained using the parameter set and the second correction value obtained using the second parameter set are weighted to obtain a third correction value, and the obtained first A correction value of 3 may be output.

例えば、力制御部20は、重み付け処理後の第1の補正値と第2の補正値との和を第3の補正値として求めてもよい。   For example, the force control unit 20 may obtain the sum of the first correction value and the second correction value after the weighting process as the third correction value.

これにより、複数のデジタルフィルターのパラメーターを用いて、デジタルフィルター処理を行った時の出力値を求め、各出力値の重み付け加算を行うことにより補正値を求めて、非線形インピーダンス制御を実現すること等が可能になる。   As a result, using a plurality of digital filter parameters, the output value when digital filter processing is performed is obtained, the correction value is obtained by weighted addition of each output value, and nonlinear impedance control is realized, etc. Is possible.

以上のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、ロボット制御装置、ロボットシステム及びセンサー情報処理装置の構成、動作も本実施形態で説明したものに限定されず、種々の変形実施が可能である。   Although the present embodiment has been described in detail as described above, it will be easily understood by those skilled in the art that many modifications can be made without departing from the novel matters and effects of the present invention. Accordingly, all such modifications are intended to be included in the scope of the present invention. For example, a term described at least once together with a different term having a broader meaning or the same meaning in the specification or the drawings can be replaced with the different term in any part of the specification or the drawings. Further, the configurations and operations of the robot control device, the robot system, and the sensor information processing device are not limited to those described in the present embodiment, and various modifications can be made.

10 力覚センサー、20 力制御部、21 インピーダンス処理部、
22 デジタルフィルター部、23 インバースキネマティクス処理部、
24 制御パラメーター記憶部、25 帯域制限部、26 パラメーター選択部、
27 補正判定部、28 補正混合部、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 インバースキネマティクス処理部
10 force sensor, 20 force control unit, 21 impedance processing unit,
22 digital filter section, 23 inverse kinematics processing section,
24 control parameter storage unit, 25 band limiting unit, 26 parameter selection unit,
27 correction determination unit, 28 correction mixing unit, 30 input correction unit,
40 forward kinematics processing unit, 60 target value output unit, 62 trajectory generation unit,
64 inverse kinematics processing unit, 80 robot control unit,
82 drive control unit (motor control unit), 100 robot, 102 drive unit,
221 digital filter operation unit, 222 digital filter coefficient output unit,
223 digital filter stability determination unit, 224 digital filter coefficient storage unit,
225 Digital filter coefficient conversion unit, 300 controller, 310 robot,
320 arms, 330 hands, 510 force sensor, 532 posture correction unit,
534 Hand tool self-weight correction unit, 536 motion equation processing unit,
540 forward kinematics processing unit, 562 orbit generation unit,
564 Inverse Kinematics Processing Department

Claims (14)

力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正値を出力する力制御部と、
前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力する目標値出力部と、
前記目標値に基づいて、前記ロボットのフィードバック制御を行うロボット制御部と、
を含み、
前記力制御部は、
力制御における常微分方程式の解を前記補正値として求めるデジタルフィルター部を有し、
前記力制御部は、
前記補正値に対応する前記ロボットについての仮想的な変位が第1の変位である場合の外力に対する変位変化量である第1の変位変化量と、前記仮想的な変位が第2の変位である場合の前記変位変化量である第2の変位変化量とが異なる力制御を行うことを特徴とするロボット制御装置。
A force control unit that outputs a correction value of the target trajectory of the robot based on a detection sensor value acquired from the force sensor;
A target value output unit that performs correction processing based on the correction value for the target trajectory to obtain a target value, and outputs the calculated target value;
A robot controller that performs feedback control of the robot based on the target value;
Including
The force control unit
A digital filter unit for obtaining a solution of an ordinary differential equation in force control as the correction value;
The force control unit
A first displacement change amount that is a displacement change amount with respect to an external force when a virtual displacement of the robot corresponding to the correction value is a first displacement, and the virtual displacement is a second displacement. A robot control apparatus that performs force control different from the second displacement change amount that is the displacement change amount in the case.
請求項1において、
前記力制御部は、
前記仮想的な変位が前記第2の変位よりも大きい前記第1の変位である場合に、前記第1の変位変化量が前記第2の変位変化量よりも大きくなる前記補正値を出力することを特徴とするロボット制御装置。
In claim 1,
The force control unit
When the virtual displacement is the first displacement larger than the second displacement, the correction value that causes the first displacement change amount to be larger than the second displacement change amount is output. A robot controller characterized by the above.
請求項1において、
前記力制御部は、
前記仮想的な変位が前記第2の変位よりも大きい前記第1の変位である場合に、前記第1の変位変化量が前記第2の変位変化量よりも小さくなる前記補正値を出力することを特徴とするロボット制御装置。
In claim 1,
The force control unit
When the virtual displacement is the first displacement larger than the second displacement, the correction value is output so that the first displacement change amount becomes smaller than the second displacement change amount. A robot controller characterized by the above.
請求項1乃至3のいずれかにおいて、
前記力制御部は、
前記常微分方程式の各項の係数パラメーターのセットに対応するデジタルフィルターのパラメーターセットを複数記憶する制御パラメーター記憶部を有し、
前記力制御部は、
前記仮想的な変位が前記第1の変位である場合には、前記デジタルフィルターの第1のパラメーターセットを選択し、
前記仮想的な変位が前記第2の変位である場合には、前記デジタルフィルターの第2のパラメーターセットを選択し、
選択した前記デジタルフィルターの前記パラメーターセットを用いて、力制御における前記常微分方程式の解を前記補正値として求め、前記補正値を出力することを特徴とするロボット制御装置。
In any one of Claims 1 thru | or 3,
The force control unit
A control parameter storage unit that stores a plurality of digital filter parameter sets corresponding to coefficient parameter sets of each term of the ordinary differential equation;
The force control unit
If the virtual displacement is the first displacement, select a first parameter set of the digital filter;
If the virtual displacement is the second displacement, select a second parameter set of the digital filter;
A robot control apparatus characterized in that, using the parameter set of the selected digital filter, a solution of the ordinary differential equation in force control is obtained as the correction value, and the correction value is output.
請求項4において、
前記力制御部は、
前記仮想的な変位が前記第1の変位から前記第2の変位までの範囲内に含まれる第3の変位である場合には、前記第1のパラメーターセットを用いて求めた第1の補正値と、前記第2のパラメーターセットを用いて求めた第2の補正値とに対して重み付け処理を行って、第3の補正値を求め、求めた前記第3の補正値を出力することを特徴とするロボット制御装置。
In claim 4,
The force control unit
When the virtual displacement is a third displacement included in the range from the first displacement to the second displacement, a first correction value obtained using the first parameter set And a second correction value obtained using the second parameter set is weighted to obtain a third correction value, and the obtained third correction value is output. Robot control device.
請求項4又は5において、
前記制御パラメーター記憶部は、
前記補正値を求める際に用いるオフセットパラメーターを記憶し、
前記力制御部は、
前記仮想的な変位に基づいて、使用する前記オフセットパラメーターを切り替えて、力制御における前記常微分方程式の解を求めることを特徴とするロボット制御装置。
In claim 4 or 5,
The control parameter storage unit is
Storing an offset parameter used when obtaining the correction value;
The force control unit
A robot control apparatus characterized by obtaining a solution of the ordinary differential equation in force control by switching the offset parameter to be used based on the virtual displacement.
請求項4乃至6のいずれかにおいて、
前記力制御部は、
前記補正値を求める前記デジタルフィルター部の動作の安定度を判定し、
前記デジタルフィルター部の前記動作が安定であると判定された場合に、前記デジタルフィルターの前記パラメーターセットの選択処理を行い、力制御における前記常微分方程式の解を前記補正値として求めることを特徴とするロボット制御装置。
In any one of Claims 4 thru | or 6.
The force control unit
Determining the stability of the operation of the digital filter unit for obtaining the correction value;
When it is determined that the operation of the digital filter unit is stable, the parameter set of the digital filter is selected, and the solution of the ordinary differential equation in force control is obtained as the correction value. Robot control device.
請求項1乃至7のいずれかにおいて、
前記力制御部は、
前記補正値に対応する前記ロボットについての前記仮想的な変位の方向が第1の方向である場合には、第1の力制御を行い、
前記仮想的な変位の方向が前記第1の方向と反対方向である第2の方向である場合には、第1の力制御と異なる第2の力制御を行うことを特徴とするロボット制御装置。
In any one of Claims 1 thru | or 7,
The force control unit
When the direction of the virtual displacement for the robot corresponding to the correction value is the first direction, the first force control is performed,
When the virtual displacement direction is a second direction opposite to the first direction, a second force control different from the first force control is performed. .
請求項1乃至8のいずれかにおいて、
前記常微分方程式は、
仮想質量項、仮想粘性項及び仮想弾性項を係数パラメーターとする運動方程式であることを特徴とするロボット制御装置。
In any one of Claims 1 thru | or 8.
The ordinary differential equation is
A robot control device characterized by an equation of motion having a virtual mass term, a virtual viscosity term, and a virtual elasticity term as coefficient parameters.
力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正値を出力する力制御部と、
前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力する目標値出力部と、
前記目標値に基づいて、前記ロボットのフィードバック制御を行うロボット制御部と、
を含み、
前記力制御部は、
前記補正値に対応する前記ロボットについての仮想的な変位が第1の変位である場合の外力に対する変位変化量である第1の変位変化量と、前記仮想的な変位が第2の変位である場合の前記変位変化量である第2の変位変化量とが異なる力制御を行うことを特徴とするロボット制御装置。
A force control unit that outputs a correction value of the target trajectory of the robot based on a detection sensor value acquired from the force sensor;
A target value output unit that performs correction processing based on the correction value for the target trajectory to obtain a target value, and outputs the calculated target value;
A robot controller that performs feedback control of the robot based on the target value;
Including
The force control unit
A first displacement change amount that is a displacement change amount with respect to an external force when a virtual displacement of the robot corresponding to the correction value is a first displacement, and the virtual displacement is a second displacement. A robot control apparatus that performs force control different from the second displacement change amount that is the displacement change amount in the case.
請求項1乃至10のいずれかの前記ロボット制御装置と、
前記目標値出力部から取得される前記目標値に基づいて、各部を動作させる前記ロボットと、
を含むことを特徴とするロボットシステム。
The robot control device according to any one of claims 1 to 10,
The robot that operates each unit based on the target value acquired from the target value output unit;
A robot system characterized by including:
センサーから取得される検出センサー値に基づいて、制御対象物の目標軌道の補正値を出力するセンサー情報処理部と、
前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力する目標値出力部と、
前記目標値に基づいて、前記制御対象物のフィードバック制御を行う制御部と、
を含み、
前記センサー情報処理部は、
デジタルフィルター部を有し、
前記センサー情報処理部は、
前記補正値に対応する前記制御対象物についての仮想的な変位が第1の変位である場合の外力に対する変位変化量である第1の変位変化量と、前記仮想的な変位が第2の変位である場合の前記変位変化量である第2の変位変化量とが異なる力制御を行うことを特徴とするセンサー情報処理装置。
A sensor information processing unit that outputs a correction value of a target trajectory of the control object based on a detection sensor value acquired from the sensor;
A target value output unit that performs correction processing based on the correction value for the target trajectory to obtain a target value, and outputs the calculated target value;
A control unit that performs feedback control of the controlled object based on the target value;
Including
The sensor information processing unit
Has a digital filter section,
The sensor information processing unit
A first displacement change amount that is a displacement change amount with respect to an external force when a virtual displacement of the control object corresponding to the correction value is a first displacement, and the virtual displacement is a second displacement. The sensor information processing apparatus performs force control different from the second displacement change amount which is the displacement change amount in the case of.
力覚センサーから取得される検出センサー値に基づいて、ロボットの目標軌道の補正値として、力制御における常微分方程式の解を求め、
前記補正値に対応する前記ロボットについての仮想的な変位が第1の変位である場合の外力に対する変位変化量である第1の変位変化量と、前記仮想的な変位が第2の変位である場合の前記変位変化量である第2の変位変化量とが異なる力制御を行い、
前記目標軌道に対して前記補正値に基づく補正処理を行って目標値を求め、求めた前記目標値を出力し、
前記目標値に基づいて、前記ロボットのフィードバック制御を行うことを特徴とするロボット制御方法。
Based on the detection sensor value obtained from the force sensor, find the solution of the ordinary differential equation in force control as the correction value of the target trajectory of the robot,
A first displacement change amount that is a displacement change amount with respect to an external force when a virtual displacement of the robot corresponding to the correction value is a first displacement, and the virtual displacement is a second displacement. Force control different from the second displacement change amount which is the displacement change amount in the case,
Perform a correction process based on the correction value for the target trajectory to obtain a target value, and output the calculated target value,
A robot control method, wherein feedback control of the robot is performed based on the target value.
力覚センサーを有するロボットの制御方法であって、
第1の大きさの外力が前記力覚センサーに加えられた場合の前記ロボットの位置の変位変化量と、
前記第1の大きさとは異なる大きさである第2の大きさの外力が前記力覚センサーに加えられた場合の前記ロボットの位置の前記変位変化量とが異なる力制御を行うことを特徴とするロボット制御方法。
A method for controlling a robot having a force sensor,
A displacement change amount of the position of the robot when an external force of a first magnitude is applied to the force sensor;
Force control different from the displacement change amount of the position of the robot when an external force of a second magnitude different from the first magnitude is applied to the force sensor is performed. Robot control method.
JP2012006774A 2012-01-17 2012-01-17 Robot controller, robot system, sensor information processing device and robot control method Pending JP2013146792A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012006774A JP2013146792A (en) 2012-01-17 2012-01-17 Robot controller, robot system, sensor information processing device and robot control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012006774A JP2013146792A (en) 2012-01-17 2012-01-17 Robot controller, robot system, sensor information processing device and robot control method

Publications (1)

Publication Number Publication Date
JP2013146792A true JP2013146792A (en) 2013-08-01

Family

ID=49044856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012006774A Pending JP2013146792A (en) 2012-01-17 2012-01-17 Robot controller, robot system, sensor information processing device and robot control method

Country Status (1)

Country Link
JP (1) JP2013146792A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108406765A (en) * 2018-02-06 2018-08-17 南京航空航天大学 A kind of fisher's formula multi-arm robot impedance adjustment
CN109311149A (en) * 2016-04-24 2019-02-05 卡斯坦宁堡有限公司 Mobile robot
CN110053022A (en) * 2019-04-28 2019-07-26 郑州工程技术学院 A kind of the robot teaching system and teaching method of three-dimensional force sensor
CN111426590A (en) * 2020-02-18 2020-07-17 浙江鸿星文具有限公司 Pencil sharpening force testing method
CN115338610A (en) * 2022-07-04 2022-11-15 中国科学院自动化研究所 Biaxial hole assembling method and device, electronic device and storage medium

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109311149A (en) * 2016-04-24 2019-02-05 卡斯坦宁堡有限公司 Mobile robot
JP2019516565A (en) * 2016-04-24 2019-06-20 カスタニエンバオム ゲーエムベーハーKastanienbaum Gmbh Mobile robot
JP7121997B2 (en) 2016-04-24 2022-08-19 カスタニエンバオム ゲーエムベーハー mobile robot
CN108406765A (en) * 2018-02-06 2018-08-17 南京航空航天大学 A kind of fisher's formula multi-arm robot impedance adjustment
CN110053022A (en) * 2019-04-28 2019-07-26 郑州工程技术学院 A kind of the robot teaching system and teaching method of three-dimensional force sensor
CN111426590A (en) * 2020-02-18 2020-07-17 浙江鸿星文具有限公司 Pencil sharpening force testing method
CN111426590B (en) * 2020-02-18 2022-08-30 浙江鸿星文具有限公司 Pencil sharpening force testing method
CN115338610A (en) * 2022-07-04 2022-11-15 中国科学院自动化研究所 Biaxial hole assembling method and device, electronic device and storage medium
CN115338610B (en) * 2022-07-04 2024-02-13 中国科学院自动化研究所 Double-shaft hole assembly method, device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
JP5966372B2 (en) Robot control apparatus, robot system, robot control method, and robot
JP5962020B2 (en) Robot control apparatus, robot system, robot, and robot control method
JP6305673B2 (en) Robot control system, robot system and robot
CN110799309B (en) Vibration control of a system with configuration dependent dynamics
CN108621156B (en) Robot control device, robot system, robot, and robot control method
Ott et al. A hybrid system framework for unified impedance and admittance control
EP3067162B1 (en) Master-slave system
Jung et al. Force tracking impedance control of robot manipulators under unknown environment
JP6484265B2 (en) Robot system having learning control function and learning control method
JP2013146792A (en) Robot controller, robot system, sensor information processing device and robot control method
Herrmann et al. Robotic hand posture and compliant grasping control using operational space and integral sliding mode control
JP2020510455A5 (en)
JP6390669B2 (en) Robot control system, robot system
Phuong et al. FPGA-based wideband force sensing with Kalman-filter-based disturbance observer
JP2013113661A (en) External force detection device, robot control system and external force detection method
JP6814441B2 (en) Learning control device and learning control method for drive machines
JP2013119133A (en) Robot and robot control method
Bodor et al. Predictive control of robot manipulators with flexible joints
Wilson et al. Improved multi-DOF haptics with spring drive amplifiers
JP6314410B2 (en) Robot control apparatus, robot system, robot, robot control method, and program
Jeon et al. Hardware design on an FPGA chip of impedance force control for interaction between a human operator and a robot arm
Mitsantisuk et al. Multi-sensor fusion observer based multilatral control of haptic devices without force sensor
JP2011159210A (en) Controller and control method for parallel link mechanism
Wongratanaphisan et al. Contact Transition Control of a Flexible Structure Mounted Manipulator
Kim et al. Restriction Space Projection method for position sensor based force reflection of multi degrees-of-freedom bilateral teleoperation systems in unstructured environments