JP2013000816A - Robot control device, and method and program for controlling the same - Google Patents
Robot control device, and method and program for controlling the same Download PDFInfo
- Publication number
- JP2013000816A JP2013000816A JP2011131961A JP2011131961A JP2013000816A JP 2013000816 A JP2013000816 A JP 2013000816A JP 2011131961 A JP2011131961 A JP 2011131961A JP 2011131961 A JP2011131961 A JP 2011131961A JP 2013000816 A JP2013000816 A JP 2013000816A
- Authority
- JP
- Japan
- Prior art keywords
- calculated
- calculating
- reference value
- joint
- deviation
- 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.)
- Withdrawn
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
Description
本発明は、高速かつ安定にロボット制御の収束演算を行うことができるロボット制御装置、その制御方法及び制御プログラムに関するものである。 The present invention relates to a robot control apparatus capable of performing convergence calculation for robot control at high speed and stably, a control method therefor, and a control program.
ロボットの手先位置や足先位置などを決定するための関節角度を求める手法として、例えば、ニュートンラプソン(Newton−Raphson)法を用いた逆運動学演算手法が知れている。このニュートンラプソン法を用いた逆運動学演算を行った場合、ヤコビ行列の逆行列を用いているため、ヒューマノイドロボットなどの特異姿勢において、その成分が非常に大きな値となり解が発散することがあり、計算速度も遅くなる。一方で、そのような解の発散を抑え、計算速度を向上させた逆運動学演算手法として、最急降下法が知られている。例えば、最急降下法を用いて目標を設定し、アクチュエータを制御する制御装置が知られている(特許文献1参照)。 For example, an inverse kinematic calculation method using a Newton-Raphson method is known as a method for obtaining a joint angle for determining a hand position or a foot position of a robot. When inverse kinematics calculation using this Newton-Raphson method is performed, because the inverse matrix of the Jacobian matrix is used, the component may become very large and the solution may diverge in a singular posture such as a humanoid robot. The calculation speed is also slowed down. On the other hand, the steepest descent method is known as an inverse kinematic calculation method that suppresses the divergence of such a solution and improves the calculation speed. For example, a control device that sets a target using the steepest descent method and controls an actuator is known (see Patent Document 1).
しかしながら、上記特許文献1に示す制御装置は、最急降下法を用いて目標を設定しているため、ヒューマノイドロボットなどの特異姿勢においても安定であるが、一方で、その収束速度が遅くなるという問題が存在している。
However, since the control device shown in
本発明は、このような問題点を解決するためになされたものであり、高速かつ安定にロボット制御の収束演算を行うことができる、ロボット制御装置、その制御方法及び制御プログラムを提供することを主たる目的とする。 The present invention has been made to solve such problems, and provides a robot control apparatus, a control method thereof, and a control program capable of performing convergence control of robot control at high speed and stably. Main purpose.
上記目的を達成するための本発明の一態様は、ロボットの所定部の位置指令値を生成する指令値生成手段と、前記指令値生成手段により生成された前記位置指令値と前記所定部の制御位置との偏差を算出する第1偏差算出手段と、前記第1偏差算出手段により算出された前記偏差に基づいて、前記所定部に生じる力の参照値である力参照値を算出する力参照値算出手段と、前記力参照値算出手段により算出された前記力参照値と転置ヤコビ行列とに基づいて各関節トルクを算出し、該算出した各関節トルクに基づいて、各関節角度を算出する関節角度算出手段と、前記関節角度算出手段により算出された前記各関節角度に基づいて、順運動学演算を行い前記所定部の制御位置を算出する順運動学演算手段と、を備える、ことを特徴とするロボット制御装置である。この一態様によれば、高速かつ安定にロボット制御の収束演算を行うことができる。 One aspect of the present invention for achieving the above object is that a command value generating unit that generates a position command value of a predetermined part of a robot, the position command value generated by the command value generating unit, and a control of the predetermined unit A first deviation calculating unit that calculates a deviation from the position; and a force reference value that calculates a force reference value that is a reference value of a force generated in the predetermined portion based on the deviation calculated by the first deviation calculating unit. A joint for calculating each joint torque based on the force reference value and the transposed Jacobian matrix calculated by the calculating means and the force reference value calculating means, and calculating each joint angle based on the calculated joint torque An angle calculation unit; and a forward kinematics calculation unit that calculates a control position of the predetermined unit by performing a forward kinematics calculation based on each joint angle calculated by the joint angle calculation unit. Robo It is a door control device. According to this aspect, it is possible to perform robot control convergence calculation at high speed and stably.
この一態様において、前記所定部に生じる力に関する外乱の推定値である外乱推定値を算出する外乱推定値算出手段と、前記力参照値算出手段により算出された力参照値から、前記外乱推定値算出手段により算出された前記外乱推定値を、減算する外乱減算手段と、
を更に備え、前記外乱推定値算出手段は、前記関節角度算出手段により算出された関節角速度と、前記外乱減算手段により減算された力参照値と、に基づいて、前記外乱推定値を算出してもよい。これにより、ロボット制御の収束演算時に生じる発散を効果的に抑えることができる。なお、ここでの外乱とは、例えば、離散化等により収束演算の中で位置指令値に対する所定部の誤差を生じさせるものであり、その誤差によって収束しなくなる要因を力の次元で表したものを意味する。
In this aspect, a disturbance estimated value calculating unit that calculates a disturbance estimated value that is an estimated value of a disturbance related to the force generated in the predetermined portion, and the disturbance estimated value from the force reference value calculated by the force reference value calculating unit. Disturbance subtraction means for subtracting the disturbance estimated value calculated by the calculation means;
The disturbance estimated value calculating means calculates the disturbance estimated value based on the joint angular velocity calculated by the joint angle calculating means and the force reference value subtracted by the disturbance subtracting means. Also good. Thereby, the divergence which arises at the time of the convergence calculation of robot control can be suppressed effectively. Here, the disturbance is, for example, an error of a predetermined part with respect to the position command value in the convergence calculation due to discretization or the like, and the factor that causes the error not to converge due to the error is expressed in the force dimension. Means.
この一態様において、前記外乱推定値算出手段は、前記関節角度算出手段により算出された関節角速度にヤコビ行列を積算して前記所定部の速度を算出し、該速度を微分して前記所定部の加速度を算出し、該加速度に慣性行列を積算して所定部の力を算出する力算出部と、前記力算出部により算出された所定部の力と、前記外乱減算手段により外乱推定値が減算された力参照値と、の偏差を算出する第2偏差算出部と、前記第2偏差算出部により算出された偏差に対してローパスフィルタ処理を行い、前記外乱推定値を算出するローパスフィルタ部と、を有していてもよい。 In this one aspect, the disturbance estimated value calculating means calculates the speed of the predetermined part by adding the Jacobian matrix to the joint angular speed calculated by the joint angle calculating means, and differentiates the speed to differentiate the speed of the predetermined part. A force calculation unit that calculates acceleration and adds an inertia matrix to the acceleration to calculate a force of a predetermined part; a force of the predetermined part calculated by the force calculation part; and a disturbance estimated value by the disturbance subtraction unit A second deviation calculation unit that calculates a deviation of the force reference value, a low-pass filter unit that performs a low-pass filter process on the deviation calculated by the second deviation calculation unit, and calculates the estimated disturbance value; , May be included.
この一態様において、前記外乱推定値算出手段と前記外乱減算手段とを接続状態及び非接続状態に切替える切替手段を更に備えていてもよい。これにより、ロボットの特異姿勢において、外乱推定値が安定性を損なうことを防止することができる。 In this aspect, the apparatus may further include a switching unit that switches the disturbance estimated value calculation unit and the disturbance subtraction unit between a connected state and a disconnected state. Thereby, it is possible to prevent the estimated disturbance value from deteriorating the stability in the robot's unique posture.
この一態様において、前記力参照値算出手段は、前記第1偏差算出手段により算出された前記偏差に所定の制御ゲイン及び慣性行列を積算して前記力参照値を算出してもよい。 In this aspect, the force reference value calculating means may calculate the force reference value by adding a predetermined control gain and inertia matrix to the deviation calculated by the first deviation calculating means.
この一態様において、前記関節角度算出手段は、前記力参照値算出手段により算出された前記力参照値に前記転置ヤコビ行列及び前記関節のイナーシャの逆数を積算し、該積算結果を積分することで、前記各関節角速度及び各関節角度を算出してもよい。これにより、ロボット制御における収束演算の高速化と安定性を両立させた調整が可能となる。 In this one aspect, the joint angle calculation means integrates the transposed Jacobian matrix and the reciprocal of the joint inertia to the force reference value calculated by the force reference value calculation means, and integrates the integration result. Each joint angular velocity and each joint angle may be calculated. As a result, it is possible to perform adjustment that achieves both high-speed convergence calculation and stability in robot control.
この一態様において、前記関節のイナーシャは、ノミナル値又は慣性行列の対角成分のうち前記関節に該当する成分であってもよい。 In this aspect, the inertia of the joint may be a component corresponding to the joint among diagonal components of a nominal value or an inertia matrix.
他方、上記目的を達成するための本発明の一態様は、ロボットの所定部の位置指令値を生成するステップと、前記生成された位置指令値と前記所定部の制御位置との偏差を算出するステップと、前記算出された偏差に基づいて、前記所定部に生じる力の参照値である力参照値を算出するステップと、前記算出された力参照値と転置ヤコビ行列とに基づいて各関節トルクを算出し、該算出した各関節トルクに基づいて、各関節角度を算出するステップと、前記算出された各関節角度に基づいて、順運動学演算を行い前記所定部の制御位置を算出するステップと、を含む、ことを特徴とするロボット制御装置の制御方法であってもよい。 On the other hand, according to one aspect of the present invention for achieving the above object, a step of generating a position command value of a predetermined part of a robot and a deviation between the generated position command value and a control position of the predetermined part are calculated. Each joint torque based on the step, a step of calculating a force reference value that is a reference value of the force generated in the predetermined portion based on the calculated deviation, and the calculated force reference value and the transposed Jacobian matrix And calculating each joint angle based on each calculated joint torque, and calculating a control position of the predetermined unit by performing forward kinematics calculation based on each calculated joint angle And a control method for a robot control apparatus characterized by comprising:
さらに、上記目的を達成するための本発明の一態様は、ロボットの所定部の位置指令値を生成する処理と、前記生成された位置指令値と前記所定部の制御位置との偏差を算出する処理と、前記算出された偏差に基づいて、前記所定部に生じる力の参照値である力参照値を算出する処理と、前記算出された力参照値と転置ヤコビ行列とに基づいて各関節トルクを算出し、該算出した各関節トルクに基づいて、各関節角度を算出する処理と、前記算出された各関節角度に基づいて、順運動学演算を行い前記所定部の制御位置を算出する処理と、をコンピュータに実行させる、ことを特徴とするロボット制御装置の制御プログラムであってもよい。 Further, according to one aspect of the present invention for achieving the above object, a process for generating a position command value of a predetermined part of a robot and a deviation between the generated position command value and a control position of the predetermined part are calculated. Each joint torque based on the process, a process of calculating a force reference value that is a reference value of the force generated in the predetermined part based on the calculated deviation, and the calculated force reference value and the transposed Jacobian matrix Processing for calculating each joint angle based on each calculated joint torque, and processing for calculating a control position of the predetermined unit by performing forward kinematics calculation based on each calculated joint angle And a control program for a robot control device that causes a computer to execute.
本発明によれば、高速かつ安定にロボット制御の収束演算を行うことができる、ロボット制御装置、その制御方法及び制御プログラムを提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, the robot control apparatus which can perform the convergence calculation of robot control stably stably at high speed, its control method, and a control program can be provided.
実施の形態1.
以下、図面を参照して本発明の実施の形態について説明する。図1は、本発明の実施の形態1に係るロボット制御装置の概略的なシステム構成を示すブロック図である。図2は、本実施の形態1に係るロボット制御装置の制御ブロック図である。本実施の形態に係るロボット制御装置1は、例えば、複数のリンクを夫々連結する複数の関節を有するヒューマノイドロボットなどのロボットの姿勢を制御するものである。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a schematic system configuration of the robot control apparatus according to the first embodiment of the present invention. FIG. 2 is a control block diagram of the robot control apparatus according to the first embodiment. The
ロボット制御装置1は、指令値生成部2と、第1偏差算出部3と、力参照値算出部4と、外乱減算部5と、関節角度算出部6と、順運動学演算部7と、外乱推定値算出部8と、を備えている。なお、ロボット制御装置1は、例えば、制御処理や演算処理等と行うCPU(Central Processing Unit)と、CPUによって実行される制御プログラムや演算プログラム等が記憶されたROM(Read Only Memory)と、処理データ等を一時的に記憶するRAM(Random Access Memory)と、を有するマイクロコンピュータを中心にして、ハードウェア構成されている。また、これらCPU、ROM、及びRAMは、データバスによって相互に接続されている。
The
指令値生成部2は、指令値生成手段の一具体例であり、例えば、ヒューマノイドロボットなどの所定部である手先に対する位置指令値xplanを生成する。指令生成部2には第1偏差算出部3が接続されており、指令値生成部2は、生成した位置指令値xplanを第1偏差算出部3に対して出力する。
The command
第1偏差算出部3は、第1偏差算出手段の一具体例であり、指令値生成部2により生成された手先の位置指令値xplanと、手先が実際に制御される制御位置xとの偏差(xplan−x)を算出する。第1偏差算出部3には力参照値算出部4が接続されており、第1偏差算出部3は算出した偏差を力参照値算出部4に対して出力する。
The first
力参照値算出部4は、力参照値算出手段の一具体例であり、第1偏差算出部3により算出された偏差に基づいて、手先に生じる力の参照値である力参照値frefを算出する。例えば、力参照値算出部4は、第1偏差算出部3により算出された偏差に所定の制御ゲインKpを積算して手先の加速度の参照値を算出し、算出した加速度の参照値に慣性行列M(ロボットの姿勢によって決定される行列)を積算して力参照値frefを算出する。力参照値算出部4には外乱減算部5が接続されており、力参照値算出部4は、算出した力参照値frefを外乱減算部5に対して出力する。
The force reference
外乱減算部5は、外乱減算手段の一具体例であり、力参照値算出部4により算出された力参照値frefから、後述する外乱推定値算出部8により算出された外乱推定値fdを、減算する。外乱減算部5には関節角度算出部6及び外乱推定値算出部8が接続されており、外乱減算部5は算出した偏差を関節角度算出部6及び外乱推定値算出部8に対して出力する。
The
関節角度算出部6は、関節角度算出手段の一具体例であり、力参照値算出部4により算出された力参照値frefと転置ヤコビ行列JTとに基づいて各関節トルクτを算出し、算出した各関節トルクτに基づいて各関節角度θを算出する。
The joint
例えば、関節角度算出部6は、外乱減算部5により外乱推定値が減算された力参照値に転置ヤコビ行列JTを積算して各関節トルクτを算出し、算出した各関節トルクτに各関節のイナーシャIの逆数1/Iを積算して各関節角加速度を算出し、算出した各関節角加速度を1階積分(1/s)して各関節速度を算出し、算出した各関節速度を更に1階積分(1/s)して各関節角度θを算出する。ここで、各関節のイナーシャIは、例えば、ノミナル値(一定値)であるが、慣性行列Mの対角成分のうち各関節に該当する成分であってもよい。
For example, the joint
なお、従来の最急降下法では、ステップ幅の調整などで収束演算の高速化を図っている。一方、本実施の形態1に係るロボット制御装置1によれば、上記演算を行うことで、物理量の概念に置き換えて考えることができるため、既存の制御理論の枠組みやツールを利用して容易に調整でき、ロボット制御における収束演算の高速化と安定性を両立させた調整が可能となる。
In the conventional steepest descent method, the convergence calculation is speeded up by adjusting the step width. On the other hand, according to the
関節角度算出部6には、外乱推定値算出部8及び順運動学演算部7が接続されており、関節角度算出部6は、算出した各関節角速度を外乱推定値算出部8に対して出力し、算出した各関節角度θを順運動学演算部7に対して出力する。また、関節角度算出部6は、算出した各関節角度θを、例えば各関節に設けられたサーボモータに対して出力する。各サーボモータは、関節角度算出部6からの各関節角度θとなるように、各関節を回転駆動する。
The joint
順運動学演算部7は、順運動学演算手段の一具体例であり、関節角度算出部6により算出された各関節角度θに基づいて、順運動学演算(DK:Direct Kinemathics)を行い手先の制御位置xを算出する。順運動学演算部7は、算出した各関節角度θを第1偏差算出部3に対してフィードバックする。
The forward
外乱推定値算出部8は、外乱推定値算出手段の一具体例であり、関節角度算出部6により算出された関節角速度に基づいて、手先に生じる力に関する外乱の推定値である外乱推定値fdを算出する。
The disturbance estimated
外乱推定値算出部8は、関節角度算出部6により算出された関節角速度にヤコビ行列Jを積算して手先の速度を算出し、算出した手先の速度を微分sして手先の加速度を算出し、算出した手先の加速度に慣性行列Mを積算して手先の力を算出する力算出部81と、力算出部81により算出された手先の力と外乱減算部82により外乱推定値が減算された力参照値と、の偏差を算出する第2偏差算出部82と、第2偏差算出部82により算出された偏差に対してローパスフィルタ処理LPFを行い、外乱推定値fdを算出するローパスフィルタ部83と、を有している。
The disturbance estimated
ローパスフィルタ部83は、算出した外乱推定値fdを外乱減算部5にフィードバックする。このように外乱推定値算出部8により算出された外乱推定値fdをフィードバックすることで、量子化誤差や積分・差分による誤差を低減することができるため、収束演算時に生じる発散を抑えることができる。
The low-
なお、外乱推定値算出部8は、ローパスフィルタ部83を有しない構成であってよい。但し、ローパスフィルタ部83を有することがで、解の発散をより確実に抑えることができ、安定性が増す。
The disturbance estimated
図3は、本実施の形態1に係るロボット制御装置による制御方法の制御処理フローの一例を示すフローチャートである。 FIG. 3 is a flowchart showing an example of a control processing flow of the control method by the robot control apparatus according to the first embodiment.
まず、指令値生成部2は、手先に対する位置指令値xplanを生成し(ステップS101)、生成した位置指令値xplanを第1偏差算出部3に対して出力する。
First, the command
次に、第1偏差算出部3は、指令値生成部2により生成された手先の位置指令値xplanと、順運動学演算部7からの手先の制御位置xと、の偏差(xplan−x)を算出し(ステップS102)、算出した偏差を力参照値算出部4に対して出力する。
Next, the first
力参照値算出部4は、第1偏差算出部3により算出された偏差に基づいて、手先の力参照値frefを算出し(ステップS103)、算出した力参照値frefを外乱減算部5に対して出力する。
The force reference
外乱減算部5は、力参照値算出部4により算出された力参照値frefから、外乱推定値算出部8により算出された外乱推定値fdを減算し(ステップS104)、外乱推定値を減算した力参照値を関節角度算出部6及び外乱推定値算出部8に対して出力する。
The
関節角度算出部6は、外乱減算部5により外乱推定値が減算された力参照値に転置ヤコビ行列JT、及び各関節のイナーシャIの逆数1/Iを積算し積分1/sを行い、各関節角速度及び各関節角度を算出し(ステップS105)、算出した各関節角速度を外乱推定値算出部8に対して出力し、及び算出した各関節角度θを順運動学演算部7に対して出力する。
The joint
順運動学演算部7は、関節角度算出部6により算出された各関節角度θに基づいて、順運動学演算を行い、手先の制御位置xを算出し(ステップS106)、算出した手先の制御位置xを第1偏差算出部3にフィードバックする。
The forward
外乱推定値算出部8は、関節角度算出部6により算出された関節角速度にヤコビ行列Jを積算し、微分sを行い、慣性行列Mを積算して手先の力を算出し、算出した手先の力と外乱減算部5により外乱推定値が減算された力参照値との偏差を算出し、ローパスフィルタ処理LPFを行い、外乱推定値fdを算出し(ステップS107)、算出した外乱推定値fdを外乱減算部5にフィードバックする。
The disturbance estimated
図4は、本実施の形態1に係るロボット制御装置による収束演算と、従来の最急降下法による収束演算と、を比較したシミュレーション結果である。なお、本シミュレーションにおいて、制御対象となるロボットは2つの関節を有するマニピュレータであり、x座標及びy座標から夫々0.1m離れた位置からの収束の状態を比較している。図4に示すように、本実施の形態1に係るロボット制御装置1の方(1)が、従来の最急降下法(2)より2倍程度、収束演算が速いことが分かる。
FIG. 4 is a simulation result comparing the convergence calculation by the robot control apparatus according to the first embodiment and the convergence calculation by the conventional steepest descent method. In this simulation, the robot to be controlled is a manipulator having two joints, and the states of convergence from a position 0.1 m away from the x coordinate and the y coordinate are compared. As shown in FIG. 4, it can be seen that the
以上、本実施の形態1に係るロボット制御装置1において、手先の位置指令値とフィードバックさせた手先の制御位置との偏差に基づいて力参照値を算出し、算出した力参照値と転置ヤコビ行列とに基づいて各関節トルクを算出し、算出した各関節トルクに基づいて各関節角度を算出する。これにより、高速かつ安定にロボット制御の収束演算を行うことができる。また、外乱推定値算出部8により算出された外乱推定値fdをフィードバックすることで、収束演算時に生じる発散を効果的に抑えることができる。すなわち、ロボットの特異姿勢においても数値的に安定させつつ、ロボット制御の収束演算を高速かつ安定的に行うことができる。
As described above, in the
実施の形態2.
図5は、本発明の実施の形態2に係るロボット制御装置の制御ブロック図である。本実施の形態2に係るロボット制御装置20は、上記実施の形態1に係るロボット制御装置の構成に加えて、外乱推定値算出部8のローパスフィルタ部83と外乱減算部5との間を段階的もしくは連続的に接続状態及び非接続状態に切替えるスイッチ(切替手段)9を更に備えることを特徴とする。
FIG. 5 is a control block diagram of the robot control apparatus according to the second embodiment of the present invention. In addition to the configuration of the robot control device according to the first embodiment, the robot control device 20 according to the second embodiment performs a step between the low-
例えば、ヒューマノイドロボットなどの特異姿勢において、力参照値frefに見合う手先の力(図5の(b))が発生できなくなることで、外乱推定値fdが徐々に大きくなり、数値的な安定性を損ない振動的になる状態が想定される。このスイッチ9を設けることで、そのような状態を確実に防止することが出来る。
For example, in a singular posture such as a humanoid robot, the estimated force f d gradually increases as the hand force corresponding to the force reference value f ref ((b) in FIG. 5) cannot be generated. It is assumed that the vibration is lost. By providing this
力参照値算出部4により算出された力参照値frefに、x軸、y軸、z軸などの複数の成分が存在する場合、スイッチ9はこれら各成分ごとに接続状態及び非接続状態に切替る。
When the force reference value f ref calculated by the force reference
また、スイッチ9は、例えば、外乱推定値算出部8から出力される外乱推定値fdの絶対値が所定の閾値を超えた場合、あるいは、外乱減算部5から出力された偏差(a)と外乱推定値算出部8の力算出部81から出力された手先の力(b)との比((a)/(b))が所定の閾値を超えた場合、非接続状態に切替る。なお、上記スイッチ9の切替え方法は一例であり、これに限らず任意の方法を適用することができる。
Further, the
本実施の形態2に係るロボット制御装置20において、他の構成は上記実施の形態1に係るロボット制御装置1と略同一であることから、同一部分には同一符号を付して詳細な説明は省略する。
In the robot control device 20 according to the second embodiment, since the other configuration is substantially the same as the
本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。 The present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention.
上記実施の形態において、ロボットの所定部として、手先が適用されているが、これに限らず、例えば、足先などの任意の部分或いは重心位置や姿勢などに適用してもよい。例えば、ロボットの重心位置を制御する場合は、重心ヤコビアンを用いることで下記(1)式に基づいて、上記実施の形態1と同様の制御を行うことができる。
上記実施の形態において、外乱減算部5及び外乱推定値算出部8を有しない構成であってもよい。この場合、力参照値算出部4は、算出した力参照値frefを関節角度算出部6に対して出力し、関節角度算出部6は、力参照値算出部4により算出された力参照値frefに転置ヤコビ行列JTを積算して各関節トルクτを算出し、算出した各関節トルクτに各関節のイナーシャIの逆数1/Iを積算して各関節角加速度を算出し、算出した各関節角加速度を1階積分して各関節速度を算出し、算出した各関節速度を1階積分して各関節角度θを算出する。
In the above-described embodiment, a configuration without the
上記実施の形態において、例えば、右手先の位置指令値、左手先の位置指令値、右足先の位置指令値、左足先の位置指令値などの複数の所定部を同時に満足するように制御してもよい。この場合、各所定部に対するヤコビ行列を部分行列として持つ転置行列を用いることとなる。 In the above embodiment, for example, control is performed so as to satisfy a plurality of predetermined portions such as a right hand position command value, a left hand position command value, a right foot position command value, and a left foot tip position command value simultaneously. Also good. In this case, a transposed matrix having a Jacobian matrix for each predetermined part as a partial matrix is used.
また、上述の実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、例えば、図3に示す処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。 In the above-described embodiments, the present invention has been described as a hardware configuration, but the present invention is not limited to this. In the present invention, for example, the processing shown in FIG. 3 can be realized by causing a CPU to execute a computer program.
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。 The program may be stored using various types of non-transitory computer readable media and supplied to a computer. Non-transitory computer readable media include various types of tangible storage media. Examples of non-transitory computer readable media are magnetic recording media (eg flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (eg magneto-optical disks), CD-ROM, CD-R, CD-R / W. Semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM).
また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。 The program may also be supplied to the computer by various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. The temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.
1 ロボット制御装置
2 指令値生成部
3 第1偏差算出部
4 力参照値算出部
5 外乱減算部
6 関節角度算出部
7 順運動学演算部
8 外乱推定値算出部
9 スイッチ
DESCRIPTION OF
Claims (9)
前記指令値生成手段により生成された前記位置指令値と前記所定部の制御位置との偏差を算出する第1偏差算出手段と、
前記第1偏差算出手段により算出された前記偏差に基づいて、前記所定部に生じる力の参照値である力参照値を算出する力参照値算出手段と、
前記力参照値算出手段により算出された前記力参照値と転置ヤコビ行列とに基づいて各関節トルクを算出し、該算出した各関節トルクに基づいて、各関節角度を算出する関節角度算出手段と、
前記関節角度算出手段により算出された前記各関節角度に基づいて、順運動学演算を行い前記所定部の制御位置を算出する順運動学演算手段と、
を備える、ことを特徴とするロボット制御装置。 Command value generating means for generating a position command value of a predetermined part of the robot;
First deviation calculating means for calculating a deviation between the position command value generated by the command value generating means and the control position of the predetermined portion;
Force reference value calculating means for calculating a force reference value, which is a reference value of force generated in the predetermined portion, based on the deviation calculated by the first deviation calculating means;
Joint angle calculating means for calculating each joint torque based on the force reference value calculated by the force reference value calculating means and the transposed Jacobian matrix, and calculating each joint angle based on the calculated joint torque; ,
Based on each joint angle calculated by the joint angle calculation means, forward kinematics calculation means for performing a forward kinematic calculation and calculating a control position of the predetermined unit;
A robot control device comprising:
前記所定部に生じる力に関する外乱の推定値である外乱推定値を算出する外乱推定値算出手段と、
前記力参照値算出手段により算出された力参照値から、前記外乱推定値算出手段により算出された前記外乱推定値を、減算する外乱減算手段と、
を更に備え、
前記外乱推定値算出手段は、前記関節角度算出手段により算出された関節角速度と、前記外乱減算手段により減算された力参照値と、に基づいて、前記外乱推定値を算出する、ことを特徴とするロボット制御装置。 The robot control device according to claim 1,
Disturbance estimated value calculation means for calculating a disturbance estimated value that is an estimated value of disturbance related to the force generated in the predetermined portion;
Disturbance subtraction means for subtracting the disturbance estimated value calculated by the disturbance estimated value calculating means from the force reference value calculated by the force reference value calculating means;
Further comprising
The disturbance estimated value calculating means calculates the disturbance estimated value based on the joint angular velocity calculated by the joint angle calculating means and the force reference value subtracted by the disturbance subtracting means. Robot control device.
前記外乱推定値算出手段は、
前記関節角度算出手段により算出された関節角速度にヤコビ行列を積算して前記所定部の速度を算出し、該速度を微分して前記所定部の加速度を算出し、該加速度に慣性行列を積算して所定部の力を算出する力算出部と、
前記力算出部により算出された所定部の力と、前記外乱減算手段により外乱推定値が減算された力参照値と、の偏差を算出する第2偏差算出部と、
前記第2偏差算出部により算出された偏差に対してローパスフィルタ処理を行い、前記外乱推定値を算出するローパスフィルタ部と、
を有する、ことを特徴とするロボット制御装置。 The robot control device according to claim 2,
The disturbance estimated value calculating means includes:
The speed of the predetermined part is calculated by adding the Jacobian matrix to the joint angular speed calculated by the joint angle calculating means, the acceleration of the predetermined part is calculated by differentiating the speed, and the inertia matrix is added to the acceleration. A force calculator for calculating the force of the predetermined part,
A second deviation calculating unit that calculates a deviation between the force of the predetermined unit calculated by the force calculating unit and the force reference value obtained by subtracting the estimated disturbance value by the disturbance subtracting unit;
A low-pass filter that performs low-pass filter processing on the deviation calculated by the second deviation calculator, and calculates the disturbance estimated value;
A robot controller characterized by comprising:
前記外乱推定値算出手段と前記外乱減算手段とを接続状態及び非接続状態に切替える切替手段を更に備える、ことを特徴とするロボット制御装置。 The robot control device according to claim 2 or 3,
A robot control apparatus, further comprising: a switching unit that switches the disturbance estimated value calculation unit and the disturbance subtraction unit between a connected state and a disconnected state.
前記力参照値算出手段は、前記第1偏差算出手段により算出された前記偏差に所定の制御ゲイン及び慣性行列を積算して前記力参照値を算出する、ことを特徴とするロボット制御装置。 The robot control device according to any one of claims 1 to 4,
The robot control apparatus, wherein the force reference value calculating unit calculates the force reference value by adding a predetermined control gain and an inertia matrix to the deviation calculated by the first deviation calculating unit.
前記関節角度算出手段は、前記力参照値算出手段により算出された前記力参照値に前記転置ヤコビ行列及び前記関節のイナーシャの逆数を積算し、該積算結果を積分することで、前記各関節角速度及び各関節角度を算出する、ことを特徴とするロボット制御装置。 The robot control device according to any one of claims 1 to 5,
The joint angle calculation means integrates the transposed Jacobian matrix and the reciprocal of the inertia of the joint to the force reference value calculated by the force reference value calculation means, and integrates the integration result to obtain each joint angular velocity. And a robot controller characterized by calculating each joint angle.
前記関節のイナーシャは、ノミナル値又は慣性行列の対角成分のうち前記関節に該当する成分である、ことを特徴とするロボット制御装置。 The robot control device according to claim 6,
The joint inertia is a component corresponding to the joint among diagonal components of a nominal value or an inertia matrix.
前記生成された位置指令値と前記所定部の制御位置との偏差を算出するステップと、
前記算出された偏差に基づいて、前記所定部に生じる力の参照値である力参照値を算出するステップと、
前記算出された力参照値と転置ヤコビ行列とに基づいて各関節トルクを算出し、該算出した各関節トルクに基づいて、各関節角度を算出するステップと、
前記算出された各関節角度に基づいて、順運動学演算を行い前記所定部の制御位置を算出するステップと、
を含む、ことを特徴とするロボット制御装置の制御方法。 Generating a position command value for a predetermined part of the robot;
Calculating a deviation between the generated position command value and the control position of the predetermined part;
Calculating a force reference value, which is a reference value of the force generated in the predetermined portion, based on the calculated deviation;
Calculating each joint torque based on the calculated force reference value and the transposed Jacobian matrix, and calculating each joint angle based on the calculated joint torque;
Calculating a control position of the predetermined unit by performing a forward kinematics calculation based on the calculated joint angles;
A control method for a robot control apparatus, comprising:
前記生成された位置指令値と前記所定部の制御位置との偏差を算出する処理と、
前記算出された偏差に基づいて、前記所定部に生じる力の参照値である力参照値を算出する処理と、
前記算出された力参照値と転置ヤコビ行列とに基づいて各関節トルクを算出し、該算出した各関節トルクに基づいて、各関節角度を算出する処理と、
前記算出された各関節角度に基づいて、順運動学演算を行い前記所定部の制御位置を算出する処理と、
をコンピュータに実行させる、ことを特徴とするロボット制御装置の制御プログラム。 Processing for generating a position command value of a predetermined part of the robot;
A process of calculating a deviation between the generated position command value and the control position of the predetermined unit;
A process of calculating a force reference value, which is a reference value of a force generated in the predetermined portion, based on the calculated deviation;
Calculating each joint torque based on the calculated force reference value and the transposed Jacobian matrix, and calculating each joint angle based on each calculated joint torque;
Based on the calculated joint angles, a process for calculating a control position of the predetermined unit by performing forward kinematics calculation;
A control program for a robot control apparatus, characterized in that a computer is executed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011131961A JP2013000816A (en) | 2011-06-14 | 2011-06-14 | Robot control device, and method and program for controlling the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011131961A JP2013000816A (en) | 2011-06-14 | 2011-06-14 | Robot control device, and method and program for controlling the same |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013000816A true JP2013000816A (en) | 2013-01-07 |
Family
ID=47669942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011131961A Withdrawn JP2013000816A (en) | 2011-06-14 | 2011-06-14 | Robot control device, and method and program for controlling the same |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013000816A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022191448A1 (en) * | 2021-03-12 | 2022-09-15 | 재단법인대구경북과학기술원 | Control system for flexible joint robot |
-
2011
- 2011-06-14 JP JP2011131961A patent/JP2013000816A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022191448A1 (en) * | 2021-03-12 | 2022-09-15 | 재단법인대구경북과학기술원 | Control system for flexible joint robot |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hashtrudi‐Zaad et al. | Bilateral parallel force/position teleoperation control | |
JP4267027B2 (en) | Robot controller | |
CN107263484A (en) | The method for planning track of robotic joint space point-to-point motion | |
US20150045954A1 (en) | Robot apparatus and robot controlling method | |
Salehian et al. | A dynamical-system-based approach for controlling robotic manipulators during noncontact/contact transitions | |
JP6472214B2 (en) | Robot apparatus control method and robot apparatus | |
EP4235328A3 (en) | System and method for manufacturing and control thereof | |
JP2008188722A (en) | Robot controller | |
JP2007265028A (en) | Control device and control method of drive | |
JP2008307634A (en) | Fitting device | |
WO2006040867A1 (en) | Controller of leg type moving robot | |
US9829876B2 (en) | Numerical controller having corner path generation function in consideration of post-interpolation acceleration/deceleration | |
Zhang et al. | Time-optimal path tracking for robots under dynamics constraints based on convex optimization | |
Lange et al. | Path-accurate online trajectory generation for jerk-limited industrial robots | |
JP2018075679A (en) | Robot system having cooperation operation region | |
JP5897645B2 (en) | Servo control device that reduces the deflection of the machine tip | |
TW201740232A (en) | Machine tool collision detecting apparatus equipped with collision stress releasing device | |
JP5371882B2 (en) | Force control device | |
JP2013000816A (en) | Robot control device, and method and program for controlling the same | |
US20210387334A1 (en) | Direct force feedback control method, and controller and robot using the same | |
WO2017212685A1 (en) | Servo control device | |
JP2003216243A (en) | Robot controller | |
TW201524665A (en) | Apparatus and method for providing feedback force and machine tool system | |
JP2012139789A (en) | Device for controlling robot that performs roughly copying control | |
Park et al. | Robust and adaptive teleoperation for compliant motion tasks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140902 |