JP6044511B2 - Robot control method and robot system - Google Patents
Robot control method and robot system Download PDFInfo
- Publication number
- JP6044511B2 JP6044511B2 JP2013229372A JP2013229372A JP6044511B2 JP 6044511 B2 JP6044511 B2 JP 6044511B2 JP 2013229372 A JP2013229372 A JP 2013229372A JP 2013229372 A JP2013229372 A JP 2013229372A JP 6044511 B2 JP6044511 B2 JP 6044511B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- movable part
- joint
- robot
- displacement
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 34
- 238000006073 displacement reaction Methods 0.000 claims description 95
- 238000006243 chemical reaction Methods 0.000 claims description 13
- 238000010586 diagram Methods 0.000 description 12
- 239000013598 vector Substances 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 4
- 238000005259 measurement Methods 0.000 description 3
- 230000003252 repetitive effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000008602 contraction Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Description
本発明は多関節ロボットの制御方法及びロボットシステムに関する。 The present invention relates to an articulated robot control method and a robot system.
近年、手先で物体を把持して移動させるロボットの開発が行われている。このようなロボットが作業を行う場合、ロボットのリンクや関節が外部の物体と接触する場合が有る。このような場合、接触による外力(接触力)の影響を回避するための接触力緩和動作を行う必要が有る。 In recent years, robots that hold and move an object with a hand have been developed. When such a robot performs work, the link or joint of the robot may come into contact with an external object. In such a case, it is necessary to perform a contact force relaxation operation to avoid the influence of external force (contact force) due to contact.
特許文献1には、接触力緩和動作を行うためロボットのインピーダンス制御装置が開示されている。このロボットのインピーダンス制御装置は、接触力から接触による関節トルクを算出し、関節部の接触力緩和動作における逃げ量を算出する。そして、逃げ量を、ロボットの手先の位置及び姿勢を制御するための関節角度に加算する。その結果、ロボットの関節が指定された逃げ量だけ駆動され、接触力緩和動作が行われる。
図6は、特許文献1に開示されたロボットのインピーダンス制御装置の構成を示すブロック図である。図6において、301はアーム、302はアーム手先部に作用する外力を計測する力センサ、303はアーム301等に作用する接触外力の大きさと作用位置を計測する、1個〜複数個設けられた接触センサである。304はアーム301を駆動するモータ、305はモータ304の回転角を検出する回転角検出計、306は手先作用力情報をアーム301の手先位置変位に変換する手先変位算出部、307はアーム部作用接触力を関節外乱トルクに変換する接触外力/関節トルク変換部、308は関節外乱トルクをアーム301の関節角度変位に変換する関節変位算出部、309は無負荷時のアーム301の手先位置を設定する手先釣り合い位置設定部、310は加算装置、311はアーム301の手先位置から関節角度を算出する逆運動学計算部、312は加算装置、313は角度指令に基づきモータ304を制御するサーボコントローラである。
FIG. 6 is a block diagram illustrating a configuration of the impedance control device for the robot disclosed in
次いで、図6に示すロボットのインピーダンス制御装置について説明する。先ず、手元に取付けられた外力計測用センサ(力センサ)302によって、手先作用力が計測される。手先作用力は手先変位算出部306に入力され、環境との接触を伴うマニピュレータの力制御用のインピーダンス制御(又はコンプライアンス制御)に伴う、機械インピーダンス(仮想慣性、仮想粘性、仮想剛性)として設定された手先部仮想インピーダンスの値(Je、de、ke)を用いて、手先変位量に変換される。
Next, the impedance control device for the robot shown in FIG. 6 will be described. First, the hand action force is measured by an external force measurement sensor (force sensor) 302 attached to the hand. The hand action force is input to the hand
この手先変位量は、加算装置310によって手先釣り合い位置設定部309の手先釣り合い位置(接触前の無負荷時のアーム301の手先釣り合い位置)と加算され、手先位置の指令値が算出される。そして算出された手先位置指令は、逆運動学計算部311で各関節の角度指令に変換される。
This hand displacement is added by the
アーム表面に作用する接触外力の大きさと、作用位置を計測する接触センサ303によって計測されたアームの接触外力は、接触外力/関節トルク変換部307においてヤコビアン行列等により関節トルクに変換され、関節変位算出部308に入力する。関節変位算出部308は設定された関節部仮想インピーダンスの値(Jj、dj、kj)から各関節の変位量(変位角を出力)を算出する。
The magnitude of the contact external force acting on the arm surface and the arm contact external force measured by the
各関節の変位量は加算装置312で、逆運動学計算部311からの各関節の角度指令と加算され、サーボコントローラ313に入力する。サーボコントローラ313では、入力した角度指令と回転角検出計305により検出した角度情報との差を比較してモータ304を制御する。なお、アーム表面に作用する接触外力を計測する接触センサ303が、接触外力の大きさのみしか計測できない圧力センサの場合は、関節トルク変換部307は接触外力の大きさと、接触センサ303の検出位置の代表点の情報から関節部外乱トルクを算出する。
The displacement amount of each joint is added to the angle command of each joint from the inverse
この例では、関節部に加わるトルクの計測手段として、アーム表面に取付けた接触センサ303(高感度圧力センサ)を用いたので、従来のトルクセンサによる計測の場合のアームの慣性力の影響、微小な力の計測不能といった問題は改善された。また、センサについては接触センサの他、関節軸に取付けたトルクセンサ、感圧センサ等の各種センサを複合することで検出精度を上げるようにして、関節部トルクの計測を行うことも可能である。但し、関節軸トルクセンサを用いる場合は、先のようなアーム自身の動作による慣性力の影響や、手先作用力の関節部への影響をそれぞれ補正する必要がある。又、各種センサを複合して関節部トルクを計測する場合には、各種センサの干渉部を補正する必要がある。 In this example, since the contact sensor 303 (high-sensitivity pressure sensor) attached to the arm surface is used as a means for measuring the torque applied to the joint, the influence of the inertial force of the arm in the case of measurement by the conventional torque sensor, The problem of inability to measure the force was improved. In addition to the contact sensor, it is also possible to measure the joint torque by increasing the detection accuracy by combining various sensors such as a torque sensor attached to the joint shaft and a pressure sensitive sensor. . However, when the joint axis torque sensor is used, it is necessary to correct the influence of the inertial force due to the movement of the arm itself as described above and the influence of the hand acting force on the joint part. Further, when measuring joint torque by combining various sensors, it is necessary to correct interference portions of various sensors.
以上、特許文献1によれば、各センサからの情報を、各関節に加わるトルクと手先に加わる力に分離し、各々に設定された仮想インピーダンスからアームの逃げ量を算出することにより、アームがどの部分で環境に接触しても適切な回避動作を実現できる。
As described above, according to
特許文献2には、接触力緩和動作を行うためのマニピュレータ制御方法が開示されている。この方法では、接触力による関節トルクを推定し、推定結果から関節部の接触力緩和動作における逃げ量を算出する。そして、ロボットの手先の位置・姿勢を制御するための関節角度に加算する。その結果、ロボットの関節が指定された逃げ量だけ駆動され、接触力緩和動作が行われる。
特許文献3には、接触力緩和動作時の運動を制御するマニピュレータの柔軟制御装置が開示されている。この装置は、外力(接触力)によるトルクを推定し、推定値が閾値以上の場合に、フィードバック補償演算の積分ゲインを小さくする。これにより、接触力緩和動作時のロボットの動作を安定化することができる。
特許文献4には、ロボットが障害物等に接触した場合に、柔軟な動作を行うことができるロボット制御装置が開示されている。
しかし、発明者は、上述の技術には以下に示す問題点が有ることを見出した。一般に、多関節ロボットに接触力が加わった場合、多関節ロボットの各関節を駆動させて接触力緩和動作を行う。一方で、多関節ロボットが作業する上で、手先が所望の位置及び姿勢であることが重要である。つまり、接触力緩和動作により手先の位置及び姿勢の一方又は双方がずれてしまうと、その後の作業に支障を来すことになる。よって、多関節ロボットにおいて、手先の位置及び姿勢を保持しつつ接触力緩和動作を行うことが求められる。 However, the inventor has found that the above-described technique has the following problems. Generally, when a contact force is applied to an articulated robot, the joint force relaxation operation is performed by driving each joint of the articulated robot. On the other hand, when the articulated robot is working, it is important that the hand is in a desired position and posture. That is, if one or both of the position and posture of the hand are shifted due to the contact force relaxation operation, the subsequent work is hindered. Therefore, in an articulated robot, it is required to perform a contact force relaxation operation while maintaining the position and posture of the hand.
これに対し、特許文献1〜4に記載の技術では、ロボットが外部の物体等に接触し、接触力緩和動作を行う際に、手先の位置及び姿勢を保持することを想定していない。そのため、接触力緩和動作を行うと手先の位置及び姿勢の一方又は双方がずれてしまう。
On the other hand, in the techniques described in
本発明の一態様であるロボットの制御方法は、可動部を備えるロボットであり、逆運動学演算により、前記ロボットの位置及び姿勢の両方又は一方を指定する情報から前記可動部の変位である第1の値を算出するロボットの制御方法であり、前記ロボットが出力している力とは異なる力である外力を検知した際には前記外力にならって変移させる制御を備えるロボットの制御方法であって、前記第1の値から前記可動部の変位を指定する指定値を算出する指定値算出ステップと、前記指定値に基づいて前記ロボットの前記可動部を駆動して、前記可動部に生じるトルク又は力である第2の値を計測又は推定する第2の値推定ステップと、逆動力学演算により、前記指定値に対応して前記可動部に生じるべきトルク又は力に対応する値である第3の値を算出する第3の値算出ステップと、前記第2の値から前記第3の値を減算して、外力により前記可動部に加わるトルク又は力を示す第4の値を算出する第4の値算出ステップと、前記第4の値に応じて、接触力緩和動作を行う際の前記可動部の変位速度を示す目標値を算出する目標値算出ステップと、前記目標値を零空間変換して補正目標値を算出する補正目標値算出ステップと、前記補正目標値から補正値を算出する補正値算出ステップと、記補正値に基づき前記第1の値を補正する補正ステップと、を備え、前記指定値算出ステップは、前記補正値が既に算出されている場合には、前記第1の値と前記補正値とに基づき前記指定値を算出するものである。
ものである。
A robot control method according to one aspect of the present invention is a robot including a movable part, and is a displacement of the movable part from information designating both or one of the position and posture of the robot by inverse kinematics calculation. 1 is a robot control method that calculates a value of 1 and includes a control that shifts in accordance with the external force when an external force that is different from the force output by the robot is detected. A specified value calculating step for calculating a specified value for specifying the displacement of the movable part from the first value, and a torque generated in the movable part by driving the movable part of the robot based on the specified value. Or a second value estimating step for measuring or estimating a second value that is a force, and a value corresponding to a torque or a force that should be generated in the movable part corresponding to the specified value by inverse dynamics calculation. A third value calculating step for calculating the value of the second value, and a fourth value for calculating a fourth value indicating the torque or force applied to the movable part by an external force by subtracting the third value from the second value. A target value calculating step of calculating a target value indicating a displacement speed of the movable part when performing a contact force relaxation operation according to the fourth value, and zero-space-converting the target value A correction target value calculating step for calculating a correction target value, a correction value calculating step for calculating a correction value from the correction target value, and a correction step for correcting the first value based on the correction value, The specified value calculating step calculates the specified value based on the first value and the correction value when the correction value has already been calculated.
Is.
上記のロボットの制御方法においては、前記目標値算出ステップは、標準姿勢を示す前記可動部の変位である第5の値と前記指定値との差分から、前記標準姿勢に復帰するための前記可動部の変位速度である第6の値を算出し、前記第4の値に応じて算出した接触力緩和動作を行う際の前記可動部の変位速度を示す値に、前記第6の値を加算して、前記目標値を算出することが望ましい。 In the robot control method, the target value calculation step includes the movable for returning to the standard posture from a difference between a fifth value that is a displacement of the movable portion indicating a standard posture and the specified value. A sixth value, which is a displacement speed of the part, is calculated, and the sixth value is added to a value indicating the displacement speed of the movable part when performing the contact force relaxation operation calculated according to the fourth value. Then, it is desirable to calculate the target value.
上記のロボットの制御方法においては、前記目標値算出ステップは、前記可動部の変位を前記可動部の可動範囲に収めるための変位である第5の値と前記指定値との差分から、前記可動部の変位を前記可動範囲に収めるための前記可動部の変位速度である第6の値を算出し、前記第4の値に応じて算出した接触力緩和動作を行う際の前記可動部の変位速度を示す値に、前記第6の値を加算して、前記目標値を算出することが望ましい。
ことが望ましい。
In the above-described robot control method, the target value calculating step includes calculating the movable value based on a difference between a fifth value that is a displacement for keeping the displacement of the movable part within a movable range of the movable part and the specified value. Displacement of the movable part when calculating the sixth value, which is the displacement speed of the movable part for keeping the displacement of the part in the movable range, and performing the contact force relaxation operation calculated according to the fourth value It is desirable to calculate the target value by adding the sixth value to a value indicating speed.
It is desirable.
上記のロボットの制御方法においては、前記可動部は、回転運動を行う回転関節であり、前記第1の値は、前記回転関節の回転運動の回転角度であり、前記第2の値は、前記回転関節に生じるトルクであり、前記第3の値は、前記指定値に対応して前記回転関節に生じるべきトルクであり、前記第4の値は、外力により前記回転関節に加わるトルクであり、前記可動部の変位速度は、前記回転関節の回転運動の角速度であることが望ましい。 In the robot control method, the movable unit is a rotary joint that performs a rotary motion, the first value is a rotation angle of the rotary motion of the rotary joint, and the second value is the A torque generated in the rotary joint, the third value is a torque to be generated in the rotary joint corresponding to the specified value, and the fourth value is a torque applied to the rotary joint by an external force, It is desirable that the displacement speed of the movable part is an angular speed of the rotational motion of the rotary joint.
上記のロボットの制御方法においては、前記可動部は、回転運動を行う回転関節であり、前記第1の値及び前記第5の値は、前記回転関節の回転運動の回転角度であり、前記第2の値は、前記回転関節に生じるトルクであり、前記第3の値は、前記指定値に対応して前記回転関節に生じるべきトルクであり、前記第4の値は、外力により前記回転関節に加わるトルクであり、前記可動部の変位速度は、前記回転関節の回転運動の角速度であることが望ましい。 In the robot control method, the movable unit is a rotary joint that performs a rotary motion, and the first value and the fifth value are a rotation angle of the rotary motion of the rotary joint, The value of 2 is a torque generated in the rotary joint, the third value is a torque to be generated in the rotary joint corresponding to the specified value, and the fourth value is the torque generated by the external force. Preferably, the displacement speed of the movable part is an angular speed of the rotational motion of the rotary joint.
上記のロボットの制御方法においては、前記可動部は、並進運動を行う直動関節であり、前記第1の値は、前記直動関節の並進運動の変位量であり、前記第2の値は、前記直動関節に生じる力であり、前記第3の値は、前記指定値に対応して前記直動関節に生じる力であり、前記第4の値は、外力により前記直動関節に加わる力であり、前記可動部の変位速度は、前記直動関節の並進運動の速度であることが望ましい。 In the robot control method, the movable portion is a linear joint that performs translational motion, the first value is a displacement amount of the translational motion of the linear motion joint, and the second value is , The force generated in the linear joint, the third value is a force generated in the linear joint corresponding to the specified value, and the fourth value is applied to the linear joint by an external force Preferably, the displacement speed of the movable part is a translational speed of the linear joint.
上記のロボットの制御方法においては、前記可動部は、並進運動を行う直動関節であり、
前記第1の値及び前記第5の値は、前記直動関節の並進運動の変位量であり、前記第2の値は、前記直動関節に生じる力であり、前記第3の値は、前記指定値に対応して前記直動関節に生じる力であり、前記第4の値は、外力により前記直動関節に加わる力であり、前記可動部の変位速度は、前記直動関節の並進運動の速度であることが望ましい。
In the above robot control method, the movable part is a linear joint that performs translational motion,
The first value and the fifth value are displacement amounts of translational motion of the linear motion joint, the second value is a force generated in the linear motion joint, and the third value is The fourth value is a force applied to the linear motion joint by an external force corresponding to the specified value, and the displacement speed of the movable part is the translation of the linear motion joint The speed of movement is desirable.
上記のロボットの制御方法においては、前記目標値算出ステップは、前記目標値を、外力により前記可動部に加わるトルク又は力に基づいたマス・ダンパモデルを用いて算出することが望ましい。 In the robot control method, the target value calculating step preferably calculates the target value using a mass damper model based on torque or force applied to the movable part by external force.
上記のロボットの制御方法においては、前記第2の値は、前記可動部のトルク又力をセンサにより計測した値であることが望ましい。 In the robot control method described above, it is preferable that the second value is a value obtained by measuring a torque or a force of the movable part with a sensor.
本発明の一態様であるロボットシステムは、複数の可動部を有するロボットと、前記ロボットの接触力緩和動作を制御するロボット制御装置と、を備え、前記ロボット制御装置は、 可動部を備えるロボットであり、逆運動学演算により、前記ロボットの位置及び姿勢の両方又は一方を指定する情報から前記可動部の変位である第1の値を算出するロボットの制御方法であり、前記ロボットが出力している力とは異なる力である外力を検知した際には前記外力にならって変移させる制御を備えるロボットの制御方法であって、前記第1の値から前記可動部の変位を指定する指定値を算出する指定値算出ステップと、前記指定値に基づいて前記ロボットの前記可動部を駆動して、前記可動部に生じるトルク又は力である第2の値を計測又は推定する第2の値推定ステップと、逆動力学演算により、前記指定値に対応して前記可動部に生じるべきトルク又は力に対応する値である第3の値を算出する第3の値算出ステップと、前記第2の値から前記第3の値を減算して、外力により前記可動部に加わるトルク又は力を示す第4の値を算出する第4の値算出ステップと、前記第4の値に応じて、接触力緩和動作を行う際の前記可動部の変位速度を示す目標値を算出する目標値算出ステップと、前記目標値を零空間変換して補正目標値を算出する補正目標値算出ステップと、前記補正目標値から補正値を算出する補正値算出ステップと、記補正値に基づき前記第1の値を補正する補正ステップと、を備え、前記指定値算出ステップは、前記補正値が既に算出されている場合には、前記第1の値と前記補正値とに基づき前記指定値を算出するものである。 A robot system according to one aspect of the present invention includes a robot having a plurality of movable parts, and a robot control device that controls a contact force relaxation operation of the robot, and the robot control apparatus is a robot having a movable part. A method of controlling a robot that calculates a first value, which is a displacement of the movable part, from information designating the position and / or orientation of the robot by inverse kinematics calculation, A control method for a robot comprising a control for shifting in accordance with the external force when an external force that is a force different from the force being applied is detected, wherein a designated value for designating a displacement of the movable part is specified from the first value. A designated value calculating step to calculate, and driving or moving the movable part of the robot based on the designated value to measure or estimate a second value that is a torque or a force generated in the movable part A second value estimating step, and a third value calculating step of calculating a third value that is a value corresponding to a torque or a force to be generated in the movable part corresponding to the specified value by inverse dynamics calculation A fourth value calculating step of subtracting the third value from the second value to calculate a fourth value indicating a torque or force applied to the movable part by an external force; and the fourth value A target value calculating step for calculating a target value indicating a displacement speed of the movable part when performing a contact force relaxation operation, and a correction target value calculation for calculating a correction target value by performing zero-space conversion on the target value A correction value calculating step for calculating a correction value from the correction target value, and a correction step for correcting the first value based on the correction value, wherein the specified value calculating step includes: If already calculated, the first value And the specified value is calculated based on the correction value.
上記のロボットシステムにおいては、前記ロボット制御装置は、標準姿勢を示す前記可動部の変位である第5の値と前記指定値との差分から、前記標準姿勢に復帰するための前記可動部の変位速度である第6の値を算出し、前記第4の値に応じて算出した接触力緩和動作を行う際の前記可動部の変位速度を示す値に、前記第6の値を加算して、前記目標値を算出することが望ましい。 In the above robot system, the robot control device is configured such that the displacement of the movable unit for returning to the standard posture from the difference between the fifth value that is the displacement of the movable unit indicating a standard posture and the specified value. A sixth value that is a speed is calculated, and the sixth value is added to a value that indicates the displacement speed of the movable part when performing the contact force relaxation operation calculated according to the fourth value, It is desirable to calculate the target value.
上記のロボットシステムにおいては、前記ロボット制御装置は、前記可動部の変位を前記可動部の可動範囲に収めるための変位である第5の値と前記指定値との差分から、前記可動部の変位を前記可動範囲に収めるための前記可動部の変位速度である第6の値を算出し、前記第4の値に応じて算出した接触力緩和動作を行う際の前記可動部の変位速度を示す値に、前記第6の値を加算して、前記目標値を算出することが望ましい。 In the robot system described above, the robot control device determines the displacement of the movable part from the difference between the fifth value that is a displacement for keeping the displacement of the movable part within the movable range of the movable part and the specified value. 6 is calculated as the displacement speed of the movable part for keeping the movable range within the movable range, and the displacement speed of the movable part when performing the contact force relaxation operation calculated according to the fourth value is shown. It is desirable to calculate the target value by adding the sixth value to the value.
上記のロボットシステムにおいては、前記可動部は、回転運動を行う回転関節であり、前記第1の値は、前記回転関節の回転運動の回転角度であり、前記第2の値は、前記回転関節に生じるトルクであり、前記第3の値は、前記指定値に対応して前記回転関節に生じるべきトルクであり、前記第4の値は、外力により前記回転関節に加わるトルクであり、前記可動部の変位速度は、前記回転関節の回転運動の角速度であることが望ましい。 In the robot system, the movable unit is a rotary joint that performs a rotary motion, the first value is a rotation angle of the rotary motion of the rotary joint, and the second value is the rotary joint. The third value is a torque to be generated in the rotary joint corresponding to the specified value, and the fourth value is a torque applied to the rotary joint by an external force, and the movable The displacement speed of the part is preferably an angular speed of the rotational motion of the rotary joint.
上記のロボットシステムにおいては、前記可動部は、回転運動を行う回転関節であり、前記第1の値及び前記第5の値は、前記回転関節の回転運動の回転角度であり、前記第2の値は、前記回転関節に生じるトルクであり、前記第3の値は、前記指定値に対応して前記回転関節に生じるべきトルクであり、前記第4の値は、外力により前記回転関節に加わるトルクであり、前記可動部の変位速度は、前記回転関節の回転運動の角速度であることが望ましい。 In the robot system, the movable unit is a rotary joint that performs a rotary motion, and the first value and the fifth value are a rotation angle of the rotary motion of the rotary joint, and the second value The value is a torque generated in the rotary joint, the third value is a torque to be generated in the rotary joint corresponding to the specified value, and the fourth value is applied to the rotary joint by an external force. Preferably, the displacement speed of the movable part is an angular speed of the rotational motion of the rotary joint.
上記のロボットシステムにおいては、前記可動部は、並進運動を行う直動関節であり、前記第1の値は、前記直動関節の並進運動の変位量であり、前記第2の値は、前記直動関節に生じる力であり、前記第3の値は、前記指定値に対応して前記直動関節に生じる力であり、前記第4の値は、外力により前記直動関節に加わる力であり、前記可動部の変位速度は、前記直動関節の並進運動の速度であることが望ましい。 In the robot system, the movable portion is a linear joint that performs translational motion, the first value is a displacement amount of translational motion of the linear motion joint, and the second value is The third value is a force generated in the linear motion joint corresponding to the specified value, and the fourth value is a force applied to the linear motion joint by an external force. In addition, it is desirable that the displacement speed of the movable part is a translational speed of the linear motion joint.
上記のロボットシステムにおいては、前記可動部は、並進運動を行う直動関節であり、前記第1の値及び前記第5の値は、前記直動関節の並進運動の変位量であり、前記第2の値は、前記直動関節に生じる力であり、前記第3の値は、前記指定値に対応して前記直動関節に生じる力であり、前記第4の値は、外力により前記直動関節に加わる力であり、前記可動部の変位速度は、前記直動関節の並進運動の速度であることが望ましい。 In the robot system, the movable portion is a linear motion joint that performs translational motion, and the first value and the fifth value are displacement amounts of translational motion of the linear motion joint, The value of 2 is a force generated at the linear motion joint, the third value is a force generated at the linear motion joint corresponding to the specified value, and the fourth value is the force generated by the external force. It is a force applied to the moving joint, and the displacement speed of the movable part is preferably the speed of the translational motion of the linear motion joint.
上記のロボットシステムにおいては、前記目標値は、外力により前記可動部に加わるトルク又は力に基づいたマス・ダンパモデルを用いて算出することが望ましい。 In the robot system, the target value is preferably calculated using a mass damper model based on torque or force applied to the movable part by external force.
上記のロボットシステムにおいては、前記第2の値は、前記可動部のトルク又力をセンサにより計測した値であることが望ましい。 In the robot system described above, the second value is preferably a value obtained by measuring a torque or force of the movable part with a sensor.
本発明によれば、ロボットにおいて手先の位置及び姿勢を保持しつつ接触力緩和動作を行うことができる。 According to the present invention, the contact force relaxation operation can be performed while maintaining the position and posture of the hand in the robot.
実施の形態1
実施の形態1にかかるロボットの接触力緩和動作について説明する。本実施の形態では、多関節ロボットの何処が他の物体と接触して接触部に接触力が加わった場合、多関節ロボットが手先の位置及び姿勢を保持しつつ、接触力による影響を緩和する接触力緩和動作を行う。
The contact force relaxation operation of the robot according to the first embodiment will be described. In this embodiment, when any part of the articulated robot comes into contact with another object and a contact force is applied to the contact part, the articulated robot maintains the position and posture of the hand and reduces the influence of the contact force. Performs contact force relaxation.
本実施の形態にかかるロボットの接触力緩和動作は、冗長性を有するロボットに適用される。例えば、ロボットの手先に把持した物体の位置及び姿勢は6自由度を有する。したがって、本実施の形態にかかるロボットの接触力緩和動作は、典型的には7軸以上のロボットに適用することができる。但し、ロボットの手先に把持した物体の位置及び姿勢のうち、保持すべき自由度が6よりも小さい場合には、6軸以下のロボットに適用できる場合が存在することを排除するものではない。 The contact force relaxation operation of the robot according to the present embodiment is applied to a robot having redundancy. For example, the position and orientation of an object held by the hand of the robot has 6 degrees of freedom. Therefore, the contact force relaxation operation of the robot according to the present embodiment can be typically applied to a robot having seven or more axes. However, if the degree of freedom to be held is less than 6 among the positions and orientations of the object gripped by the hand of the robot, it does not exclude that there is a case where the robot can be applied to 6 or less axes.
本実施の形態では、ロボットの手先の位置及び姿勢がずれないように、ロボットの手先で保持された物体等の位置及び姿勢を維持しつつ、接触力緩和動作を行う。以下で説明する接触力緩和動作は、ロボットの各関節について行われるものである。以下では、例えば7軸ロボットにおいて、それぞれの関節における接触力緩和動作及びその動作を制御する制御装置の構成について、図面を参照して説明する。 In the present embodiment, the contact force relaxation operation is performed while maintaining the position and posture of the object or the like held by the robot hand so that the position and posture of the robot hand are not shifted. The contact force relaxation operation described below is performed for each joint of the robot. Hereinafter, for example, in a seven-axis robot, a contact force relaxation operation at each joint and a configuration of a control device that controls the operation will be described with reference to the drawings.
図1は、実施の形態1にかかるロボットシステム1000の構成を模式的に示す図である。ロボットシステム1000は、ロボット101、トルクセンサ102及びロボット制御装置100を有する。
FIG. 1 is a diagram schematically illustrating a configuration of a
ロボット101は、多関節のロボットである。図1では、一例として、7関節のロボットを模式的に図示している。関節J1、J3、J5及びJ7は、図1紙面に平行な方向を軸として回転する関節である。関節J2、J4及びJ6は、図1紙面に垂直な方向を軸として回転する関節である。HDは、物体の把持部である。
The
トルクセンサ102は、ロボット101が動作している際の各関節のトルクを測定し、ベクトルで示されるトルクτを出力する。以下の説明では、ベクトル及び行列については、太字で表す。
The
ロボット制御装置100は、制御信号CONを与えることで、ロボット101の動作制御を行う。また、ロボット制御装置100は、ロボット101が他の物体と接触して接触部に接触力が加わった場合に、手先の位置及び姿勢を保持しつつ接触力による影響を緩和する接触力緩和動作をロボット101に行わせる。但し、本実施の形態にかかる接触力緩和動作は、必ずしも手先の位置及び姿勢の両方を制御することに限定されるものではない。すなわち、本実施の形態にかかる接触力緩和動作は、手先の位置及び姿勢の一方のみを保持する動作を含む。また、本実施の形態にかかる接触力緩和動作は、手先の位置及び姿勢を示す座標方向成分のうち、1成分のみを保持する、又は2以上の成分を保持する動作を含む。2以上の成分を保持する動作を行う場合、保持する成分の組み合わせは、手先の位置を示す成分の組み合わせ、手先の姿勢を示す成分の組み合わせ、及び、手先の位置を示す成分と手先の姿勢を示す成分との組み合わせのいずれであってもよい。
The
図2は、実施の形態1にかかるロボット制御装置100の構成を模式的に示すブロック図である。ロボット制御装置100は、関節角度算出部1、関節角度制御部2、トルク算出部4、角速度算出部5、零空間変換部6及びゲイン付与部7を有する。なお、図2の関節駆動部3は、ロボット101に含まれるものとする。ロボット制御装置100は、ロボットの計画手先位置Xplanと実測トルクTactとに基づいて、ロボットの各関節を駆動する関節駆動部3へ駆動信号Sdrを出力する。これにより、ロボット制御装置100は、ロボット101の各関節の接触力緩和動作を制御する。実測トルクTactは、関節のトルクセンサ102により、各関節のトルクを実測した値である。
FIG. 2 is a block diagram schematically illustrating a configuration of the
図3は、実施の形態1にかかるロボットの接触力緩和動作を示す制御ブロック図である。本実施の形態における接触力緩和動作は、関節角度算出ステップS1、加算ステップS2、関節角度制御ステップS3、関節駆動ステップS4、トルク算出ステップS5、減算ステップS6、角速度算出ステップS7、零空間変換ステップS8及びゲイン付与ステップS9からなる。 FIG. 3 is a control block diagram illustrating the contact force relaxation operation of the robot according to the first embodiment. The contact force alleviating operation in the present embodiment includes a joint angle calculation step S1, an addition step S2, a joint angle control step S3, a joint drive step S4, a torque calculation step S5, a subtraction step S6, an angular velocity calculation step S7, and a null space conversion step. It consists of S8 and gain provision step S9.
以下、図2及び図3を参照して、ロボット制御装置100の構成及び接触力緩和動作について説明する。
Hereinafter, the configuration of the
一般に、ロボット101の手先座標ベクトルPと、関節角度ベクトルqとの間には、以下の式(1)が成立する。
関節角度算出ステップS1
まず、関節角度算出部1は、ロボット101の計画手先位置Xplanを受けとる。ロボット101の計画手先位置Xplanは、ロボットの動作制御に供する軌道計画により決定される、手先の位置及び姿勢を示す情報であり、例えば、3次元直交座標や3次元極座標などの形式で表される。関節角度算出部1は、計画手先位置Xplanを用いて、例えばニュートン法などの数値的な繰り返し演算を行う逆運動学演算により、ロボット101の関節の回転運動の角度(関節角度)qplanを算出する。数値的な繰り返し演算には、以下の式(2)を用いて行うことができる。
First, the joint
加算ステップS2
関節角度制御部2は、ロボット101の関節角度qplanと、ゲイン付与部7からの補正角度Δqnullと、を加算し、指定角度qrefを算出する。なお、補正角度Δqnullを、補正値とも称する。指定角度qrefを、指定値とも称する。
Addition step S2
The joint
関節角度制御ステップS3
関節角度制御部2は、指定角度qrefに基づいて、駆動信号Sdrを生成する。
Joint angle control step S3
The joint
関節駆動ステップS4
関節駆動部3は、駆動信号Sdrに基づいて、関節を駆動する。同時に、関節駆動部3は、トルクセンサにより節に生じた実測トルクTactを測定し、測定結果を出力する。なお、実測トルクTactを、第2の値とも称する。
Joint drive step S4
The
トルク算出ステップS5
トルク算出部4は、ロボット101の関節角度qplanと、ゲイン付与部7からの補正角度Δqnullと、を加算し、指定角度qrefを算出する。トルク算出部4は、指定角度qrefを用いた逆動力学演算により、関節を指定角度qrefだけ駆動させるのに必要なトルクTcalを算出し、算出結果を出力する。なお、トルクTcalを、第3の値とも称する。
Torque calculation step S5
The
減算ステップS6
角速度算出部5は、実測トルクTactからトルクTcalを減算して、外力によるトルクτを算出する。なお、トルクτを、第4の値とも称する。
Subtraction step S6
The angular
角速度算出ステップS7
角速度算出部5は、外力によるトルクτを用いてマス・ダンパモデルにより演算を行い、関節に加わる外力の影響を回避するための目標角速度ωavoidを算出する。なお、目標角速度ωavoidを、目標値とも称する。
Angular velocity calculation step S7
The angular
零空間変換ステップS8
零空間変換部6は、各関節の目標角速度ωavoidが包含されるベクトル空間を、変換後の各関節の補正角速度ωnullが構成するベクトル空間が零空間となるように変換する。これにより、ロボット101の各関節の補正角速度を指定しても、出力として得られるロボット101の手先の位置及び姿勢を保持することができる。なお、補正角速度ωnullを、補正目標値とも称する。
Zero space conversion step S8
The null
ゲイン付与ステップS9
ゲイン付与部7は、補正角速度ωnullにゲインΔtを乗じ、関節に加わる外力の影響を回避するための補正角度Δqnullを算出する。上述のように、各関節の補正角速度ωnullは、零空間を構成する。各関節の補正角度Δqnullが加算されることで、関節角度制御部2は、出力として得られるロボット101の手先の位置及び姿勢が保持できるように、駆動信号Sdrを生成することができる。
Gain grant step S9
The
一般に、角度のみでロボットの姿勢制御を行うと、移動先の角度のみを指定するため、移動先の座標以外を指定することができない。この場合、例えば、移動先への移動速度を細かく制御して柔軟なロボットの動作を実現することが難しい。また、移動先でロボットの一部が外部の物体と接触し、接触点を一定の力で押し込む場合、座標による姿勢制御では座標のみしか指定できないので、押し付け力を制御することが困難である。また、異なる運動のタスクを重ね合わせる場合、角度を与えるのみでは重ね合わせたタスクの運動を制御することがそもそも困難である。 In general, when controlling the posture of a robot using only an angle, only the angle of the movement destination is specified, so it is not possible to specify other than the coordinates of the movement destination. In this case, for example, it is difficult to realize a flexible robot operation by finely controlling the moving speed to the destination. In addition, when a part of the robot comes into contact with an external object at the movement destination and pushes the contact point with a constant force, it is difficult to control the pressing force because only the coordinates can be specified in the posture control based on the coordinates. Also, when tasks with different movements are overlapped, it is difficult to control the movements of the overlapped tasks simply by giving an angle.
これに対し、本実施の形態では、角速度を用いて外力による影響を緩和する接触力緩和動作を行っている。そのため、ロボットの回避動作を外力の大きさに応じた回避速度で行うことができる。その結果、不必要な高速で動作したり、回避速度が不足してしまうといった事態を防止することができる。また、移動先でロボット101の一部が外部の物体と接触し、接触点を一定の力で押し込む場合、移動先での角速度を指定すれば押し付け力を容易に制御することができる。また、異なる運動のタスクを重ね合わせる場合、各速度を用いれば、重ね合わせたタスクの運動を制御することできる。よって、角度を用いた制御に比べ、より複雑かつ柔軟なロボットの運動を実現できる。
On the other hand, in this Embodiment, the contact force relaxation operation | movement which relieve | moderates the influence by external force using angular velocity is performed. Therefore, the avoidance operation of the robot can be performed at an avoidance speed corresponding to the magnitude of the external force. As a result, it is possible to prevent a situation in which the operation is unnecessary and the avoidance speed is insufficient. In addition, when a part of the
以上より、本実施の形態によれば、手先位置及び姿勢を保持しつつ、ロボットの運動状態を制御しつつ、接触力緩和動作を行うことができる。これにより、より高精度かつ柔軟なロボットの姿勢制御を行うことができる。 As described above, according to the present embodiment, it is possible to perform the contact force relaxation operation while controlling the motion state of the robot while maintaining the hand position and posture. This makes it possible to perform more accurate and flexible posture control of the robot.
実施の形態2
実施の形態2にかかるロボットの接触力緩和動作について説明する。図4は、実施の形態2にかかるロボット制御装置200の構成を模式的に示すブロック図である。ロボット制御装置200は、実施の形態1にかかるロボット制御装置100に、復帰角速度算出部8を追加し、更にロボット制御装置100の角速度算出部5を角速度算出部9に置換した構成を有する。ロボット制御装置200のその他の構成は、ロボット制御装置100と同様であるので、説明を省略する。ロボット制御装置200は、接触力緩和動作を行った際に、例えばロボット101が不安定な姿勢等にならないように、所定の姿勢への復帰動作を更に行うことができる。
The contact force relaxation operation of the robot according to the second embodiment will be described. FIG. 4 is a block diagram schematically illustrating a configuration of the
図5は、実施の形態2にかかるロボットの接触力緩和動作を示す制御ブロック図である。本実施の形態における接触力緩和動作は、図3の実施の形態1にかかるロボットの接触力緩和動作の角速度算出ステップS7を削除し、かつステップS21〜S23を追加したものである。図5のステップS1〜S6、S8及びS9は、図3と同様であるので、説明を省略する。 FIG. 5 is a control block diagram illustrating the contact force relaxation operation of the robot according to the second embodiment. The contact force relaxation operation in the present embodiment is obtained by deleting the angular velocity calculation step S7 of the contact force relaxation operation of the robot according to the first embodiment in FIG. 3 and adding steps S21 to S23. Steps S1 to S6, S8, and S9 in FIG. 5 are the same as those in FIG.
復帰角速度算出ステップS21
復帰角速度算出部8は、標準姿勢を示す関節角度qinitと指定角度qrefとが入力される。復帰角速度算出部8は、標準姿勢を示す関節角度qinitと指定角度qrefとの間の差分から、標準姿勢へ復帰するために必要な復帰角速度ωinitを算出する。なお、標準姿勢を示す関節角度qinitを、第5の値とも称する。復帰角速度ωinitを、第6の値とも称する。
Return angular velocity calculation step S21
The return angular
角速度算出ステップS22
角速度算出部9は、実測トルクTactからトルクTcalを減算して、外力によるトルクτを算出する。角速度算出部5は、外力によるトルクτを用いてマス・ダンパモデルにより演算を行い、関節に加わる外力の影響を回避するための角速度ωavoid1を算出する。ここで、角速度ωavoid1は、実施の形態1における目標角速度ωavoidに相当する。
Angular velocity calculation step S22
The angular
角速度算出ステップS23
角速度算出部9は、角速度ωavoid1と復帰角速度ωinitとを加算し、目標角速度ωavoidを出力する。
Angular velocity calculation step S23
The angular
以上より、本実施の形態において零空間変換部6に入力される目標角速度ωavoidは、関節に加わる外力の影響を回避するための角速度ωavoid1だけでなく、復帰角速度ωinitが反映されている。これにより、接触力緩和動作を行っても、ロボット101が所定の位置及び姿勢に復帰させることが可能となる。
From the above, the target angular velocity ω avoid input to the null
その他の実施の形態
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、例えば、上述の実施の形態にかかる接触力緩和動作は、冗長性を有するならば、7軸以外の数の多関節ロボットに適用できることは言うまでもない。
Other Embodiments The present invention is not limited to the above-described embodiments, and can be appropriately changed without departing from the spirit of the present invention. For example, for example, it is needless to say that the contact force relaxation operation according to the above-described embodiment can be applied to a number of articulated robots other than seven axes as long as it has redundancy.
ロボット制御装置100は、コンピュータなどのハードウェア資源で実現することも可能である。この場合、実施の形態1にかかる接触力緩和動作の手順を規定するプログラムを、ロボット制御装置100に実行させることで、同様に行うことが可能である。
The
上述の実施の形態2では、標準姿勢への復帰について説明したが、これは一例に過ぎない。例えば、標準姿勢に代えて、関節の可動範囲を考慮してもよい。この場合、実施の形態2の関節角度qinitを、関節の可動範囲を示す関節角度に置き換えることで実現することができる。これにより、ロボットを構成する各関節を、可動範囲内に収まるように運動させることが可能である。 In the second embodiment described above, the return to the standard posture has been described, but this is only an example. For example, the movable range of the joint may be considered instead of the standard posture. In this case, it can be realized by replacing the joint angle q init of the second embodiment with a joint angle indicating the movable range of the joint. As a result, each joint constituting the robot can be moved so as to be within the movable range.
上述の実施の形態では、関節として回転関節のみを想定し、関節角度の回転角度、角速度及びトルクに着目したが、これは例示に過ぎない。多関節ロボットは、並進運動(伸縮)が可能な直動関節を有する構成をとることも可能である。この場合、直動関節の運動制御においては、回転関節の関節角度に代えて直動関節の並進運動の変位量、回転関節の角速度に代えて直動関節の並進運動の変位速度、回転関節のトルクに代えて直動関節の並進運動にかかる力に着目することで、上記の方法を用いて同様の接触力緩和動作を実現することができる。 In the above-described embodiment, only a rotary joint is assumed as a joint, and attention is paid to the rotation angle, angular velocity, and torque of the joint angle, but this is merely an example. An articulated robot can also have a configuration having a linear joint capable of translational movement (extension and contraction). In this case, in the motion control of the linear motion joint, the displacement amount of the translational motion of the linear motion joint instead of the joint angle of the rotary joint, the displacement rate of the translational motion of the linear motion joint instead of the angular velocity of the rotational joint, By paying attention to the force applied to the translational motion of the linear motion joint instead of the torque, the same contact force relaxation operation can be realized using the above method.
上述の通り、回転関節及び直動関節を有する多関節ロボットの接触力緩和動作を行うこと可能である。以下、回転関節及び直動関節を可動部と称し、回転関節の関節角度及び直動関節の並進運動の変位量を可動部の変位と称する。また、回転関節の角速度及び直動関節の並進運動の速度を可動部の変位速度と称する。 As described above, it is possible to perform the contact force relaxation operation of an articulated robot having a rotary joint and a linear motion joint. Hereinafter, the rotary joint and the linear motion joint are referred to as a movable part, and the joint angle of the rotary joint and the displacement of the translational motion of the linear motion joint are referred to as the displacement of the movable part. The angular velocity of the rotary joint and the translational velocity of the linear motion joint are referred to as the displacement speed of the movable part.
すなわち、上述の第1の値及び前記第5の値は、回転関節の回転角度と、直動関節の並進運動の変位量と、を包含する。上述の第2の値は、回転関節に生じるトルクと、直動関節に生じる力と、を包含する。上述の第3の値は、指定値に対応して回転関節に生じるべきトルクと、指定値に対応して直動関節に生じる力と、を包含する。上述の第4の値は、外力により回転関節に加わるトルクと、外力により直動関節に加わる力と、を包含する。上述の第6の値は、標準姿勢に復帰するための回転関節の角速度と、標準姿勢に復帰するための直動関節の並進運動の変位速度と、を包含する。更に、上述の第6の値は、回転関節の回転角度を可動範囲に収めるための回転関節の角速度と、直動関節の並進運動の変位を可動範囲に収めるための直動関節の並進運動の変位速度と、を包含する。上述の指定値は、回転関節の指定角度と、直動関節の指定変位と、を包含する。上述の補正値は、回転関節の補正角度と、直動関節の補正変位と、を包含する。述の目標値は、回転関節の目標角速度と、直動関節の並進運動の目標変位速度と、を包含する。述の補正目標値は、回転関節の補正角速度と、直動関節の並進運動の補正変位速度と、を包含する。 That is, the first value and the fifth value described above include the rotation angle of the rotary joint and the amount of translational displacement of the linear motion joint. The second value described above includes the torque generated in the rotary joint and the force generated in the linear motion joint. The third value described above includes the torque that should be generated in the rotary joint corresponding to the specified value, and the force generated in the linear motion joint corresponding to the specified value. The fourth value described above includes a torque applied to the rotary joint by an external force and a force applied to the linear motion joint by an external force. The sixth value described above includes the angular velocity of the rotary joint for returning to the standard posture and the displacement velocity of the translational motion of the linear motion joint for returning to the standard posture. Further, the sixth value described above includes the angular velocity of the rotary joint for keeping the rotation angle of the rotary joint within the movable range and the translational motion of the linear joint for keeping the translational displacement of the linear joint within the movable range. Displacement speed. The above-mentioned specified value includes the specified angle of the rotary joint and the specified displacement of the linear motion joint. The correction value described above includes the correction angle of the rotary joint and the correction displacement of the linear motion joint. The target value described above includes the target angular velocity of the rotary joint and the target displacement velocity of the translational motion of the linear motion joint. The correction target value described above includes the correction angular velocity of the rotary joint and the correction displacement velocity of the translational motion of the linear motion joint.
上述の実施の形態では、トルクセンサでトルクを算出する例について説明したが、これは例示に過ぎない。例えば、トルクの計測に代えて、関節の動作時に測定される、関節の運動を示す他の物理量(例えば、関節を駆動するモータの電流値)から、関節のトルクを推定してもよい。 In the above-described embodiment, the example in which the torque is calculated by the torque sensor has been described, but this is merely an example. For example, instead of measuring the torque, the torque of the joint may be estimated from another physical quantity indicating the motion of the joint (for example, the current value of the motor that drives the joint) measured during the operation of the joint.
1 関節角度算出部
2 関節角度制御部
3 関節駆動部
4 トルク算出部
5 角速度算出部
6 零空間変換部
7 ゲイン付与部
8 復帰角速度算出部
9 角速度算出部
100、200 ロボット制御装置
101 ロボット
102 トルクセンサ
200 ロボット制御装置
301 アーム
302 力センサ
303 接触センサ
304 モータ
305 回転角検出計
306 手先変位算出部
307 関節トルク変換部
308 関節変位算出部
309 位置設定部
310 加算装置
311 逆運動学計算部
312 加算装置
313 サーボコントローラ
1000 ロボットシステム
DESCRIPTION OF
Claims (18)
前記第1の値から前記可動部の変位を指定する指定値を算出する指定値算出ステップと、
前記指定値に基づいて前記ロボットの前記可動部を駆動して、前記可動部に生じるトルク又は力である第2の値を計測又は推定する第2の値推定ステップと、
逆動力学演算により、前記指定値に対応して前記可動部に生じるべきトルク又は力に対応する値である第3の値を算出する第3の値算出ステップと、
前記第2の値から前記第3の値を減算して、外力により前記可動部に加わるトルク又は力を示す第4の値を算出する第4の値算出ステップと、
前記第4の値に応じて、接触力緩和動作を行う際の前記可動部の変位速度を示す目標値を算出する目標値算出ステップと、
前記目標値を零空間変換して補正目標値を算出する補正目標値算出ステップと、
前記補正目標値から補正値を算出する補正値算出ステップと、
前記補正値に基づき前記第1の値を補正する補正ステップと、を備え、
前記指定値算出ステップは、前記補正値が既に算出されている場合には、前記第1の値と前記補正値とに基づき前記指定値を算出する、
ロボットの制御方法。 A robot having a movable part, and a robot control method for calculating a first value that is a displacement of the movable part from information specifying both or one of the position and posture of the robot by inverse kinematics calculation, A control method for a robot comprising a control to change in accordance with the external force when an external force that is different from the force output by the robot is detected,
A designated value calculating step for calculating a designated value for designating a displacement of the movable part from the first value;
A second value estimating step of measuring or estimating a second value that is a torque or a force generated in the movable part by driving the movable part of the robot based on the specified value;
A third value calculating step of calculating a third value that is a value corresponding to a torque or a force to be generated in the movable part corresponding to the specified value by inverse dynamics calculation;
A fourth value calculating step of subtracting the third value from the second value to calculate a fourth value indicating a torque or force applied to the movable part by an external force;
A target value calculating step of calculating a target value indicating a displacement speed of the movable part when performing a contact force relaxation operation according to the fourth value;
A correction target value calculating step of calculating a correction target value by performing zero-space conversion on the target value;
A correction value calculating step of calculating a correction value from the correction target value;
A correction step of correcting the first value based on the correction value,
The specified value calculating step calculates the specified value based on the first value and the correction value when the correction value has already been calculated.
Robot control method.
標準姿勢を示す前記可動部の変位である第5の値と前記指定値との差分から、前記標準姿勢に復帰するための前記可動部の変位速度である第6の値を算出し、
前記第4の値に応じて算出した接触力緩和動作を行う際の前記可動部の変位速度を示す値に、前記第6の値を加算して、前記目標値を算出する、
請求項1に記載のロボットの制御方法。 The target value calculating step includes:
A sixth value that is a displacement speed of the movable portion for returning to the standard posture is calculated from a difference between a fifth value that is a displacement of the movable portion that indicates a standard posture and the specified value,
Adding the sixth value to a value indicating the displacement speed of the movable part when performing the contact force relaxation operation calculated according to the fourth value to calculate the target value;
The robot control method according to claim 1.
前記可動部の変位を前記可動部の可動範囲に収めるための変位である第5の値と前記指定値との差分から、前記可動部の変位を前記可動範囲に収めるための前記可動部の変位速度である第6の値を算出し、
前記第4の値に応じて算出した接触力緩和動作を行う際の前記可動部の変位速度を示す値に、前記第6の値を加算して、前記目標値を算出する、
請求項1に記載のロボットの制御方法。 The target value calculating step includes:
The displacement of the movable part for keeping the displacement of the movable part in the movable range from the difference between the fifth value, which is the displacement for placing the displacement of the movable part in the movable range of the movable part, and the specified value. Calculate the sixth value that is the speed,
Adding the sixth value to a value indicating the displacement speed of the movable part when performing the contact force relaxation operation calculated according to the fourth value to calculate the target value;
The robot control method according to claim 1.
前記第1の値は、前記回転関節の回転運動の回転角度であり、
前記第2の値は、前記回転関節に生じるトルクであり、
前記第3の値は、前記指定値に対応して前記回転関節に生じるべきトルクであり、
前記第4の値は、外力により前記回転関節に加わるトルクであり、
前記可動部の変位速度は、前記回転関節の回転運動の角速度である、
請求項1乃至3のいずれか一項に記載のロボットの制御方法。 The movable part is a rotary joint that performs a rotary motion,
The first value is a rotation angle of the rotational movement of the rotary joint,
The second value is a torque generated in the rotary joint,
The third value is a torque to be generated in the rotary joint corresponding to the specified value,
The fourth value is a torque applied to the rotary joint by an external force,
The displacement speed of the movable part is an angular speed of the rotational motion of the rotary joint.
The robot control method according to any one of claims 1 to 3.
前記第1の値及び前記第5の値は、前記回転関節の回転運動の回転角度であり、
前記第2の値は、前記回転関節に生じるトルクであり、
前記第3の値は、前記指定値に対応して前記回転関節に生じるべきトルクであり、
前記第4の値は、外力により前記回転関節に加わるトルクであり、
前記可動部の変位速度は、前記回転関節の回転運動の角速度である、
請求項2又は3に記載のロボットの制御方法。 The movable part is a rotary joint that performs a rotary motion,
The first value and the fifth value are rotation angles of the rotational motion of the rotary joint,
The second value is a torque generated in the rotary joint,
The third value is a torque to be generated in the rotary joint corresponding to the specified value,
The fourth value is a torque applied to the rotary joint by an external force,
The displacement speed of the movable part is an angular speed of the rotational motion of the rotary joint.
The robot control method according to claim 2 or 3.
前記第1の値は、前記直動関節の並進運動の変位量であり、
前記第2の値は、前記直動関節に生じる力であり、
前記第3の値は、前記指定値に対応して前記直動関節に生じる力であり、
前記第4の値は、外力により前記直動関節に加わる力であり、
前記可動部の変位速度は、前記直動関節の並進運動の速度である、
請求項1乃至3のいずれか一項に記載のロボットの制御方法。 The movable part is a linear motion joint that performs translational motion,
The first value is a translational displacement amount of the linear joint;
The second value is a force generated in the linear joint,
The third value is a force generated in the linear joint corresponding to the specified value,
The fourth value is a force applied to the linear joint by an external force,
The displacement speed of the movable part is the speed of translational motion of the linear motion joint.
The robot control method according to any one of claims 1 to 3.
前記第1の値及び前記第5の値は、前記直動関節の並進運動の変位量であり、
前記第2の値は、前記直動関節に生じる力であり、
前記第3の値は、前記指定値に対応して前記直動関節に生じる力であり、
前記第4の値は、外力により前記直動関節に加わる力であり、
前記可動部の変位速度は、前記直動関節の並進運動の速度である、
請求項2又は3に記載のロボットの制御方法。 The movable part is a linear motion joint that performs translational motion,
The first value and the fifth value are displacement amounts of translational motion of the linear motion joint,
The second value is a force generated in the linear joint,
The third value is a force generated in the linear joint corresponding to the specified value,
The fourth value is a force applied to the linear joint by an external force,
The displacement speed of the movable part is the speed of translational motion of the linear motion joint.
The robot control method according to claim 2 or 3.
請求項1乃至7のいずれか一項に記載のロボットの制御方法。 The target value calculating step calculates the target value using a mass damper model based on torque or force applied to the movable part by external force.
The robot control method according to claim 1.
請求項1乃至8のいずれか一項に記載のロボットの制御方法。 The second value is a value obtained by measuring the torque or force of the movable part with a sensor.
The robot control method according to claim 1.
前記複数の可動部を有するロボットの接触力緩和動作を制御するロボット制御装置と、を備え、
前記ロボット制御装置は、
可動部を備えるロボットであり、逆運動学演算により、前記ロボットの位置及び姿勢の両方又は一方を指定する情報から前記可動部の変位である第1の値を算出するロボットの制御方法であり、前記ロボットが出力している力とは異なる力である外力を検知した際には前記外力にならって変移させる制御を備えるロボットの制御方法であって、
前記第1の値から前記可動部の変位を指定する指定値を算出する指定値算出ステップと、
前記指定値に基づいて前記ロボットの前記可動部を駆動して、前記可動部に生じるトルク又は力である第2の値を計測又は推定する第2の値推定ステップと、
逆動力学演算により、前記指定値に対応して前記可動部に生じるべきトルク又は力に対応する値である第3の値を算出する第3の値算出ステップと、
前記第2の値から前記第3の値を減算して、外力により前記可動部に加わるトルク又は力を示す第4の値を算出する第4の値算出ステップと、
前記第4の値に応じて、接触力緩和動作を行う際の前記可動部の変位速度を示す目標値を算出する目標値算出ステップと、
前記目標値を零空間変換して補正目標値を算出する補正目標値算出ステップと、
前記補正目標値から補正値を算出する補正値算出ステップと、
前記補正値に基づき前記第1の値を補正する補正ステップと、を備え、
前記指定値算出ステップは、前記補正値が既に算出されている場合には、前記第1の値と前記補正値とに基づき前記指定値を算出する、
ロボットシステム。 A robot having a plurality of movable parts;
A robot controller for controlling a contact force relaxation operation of the robot having the plurality of movable parts,
The robot controller is
A robot having a movable part, and a robot control method for calculating a first value that is a displacement of the movable part from information specifying both or one of the position and posture of the robot by inverse kinematics calculation, A control method for a robot comprising a control to change in accordance with the external force when an external force that is different from the force output by the robot is detected,
A designated value calculating step for calculating a designated value for designating a displacement of the movable part from the first value;
A second value estimating step of measuring or estimating a second value that is a torque or a force generated in the movable part by driving the movable part of the robot based on the specified value;
A third value calculating step of calculating a third value that is a value corresponding to a torque or a force to be generated in the movable part corresponding to the specified value by inverse dynamics calculation;
A fourth value calculating step of subtracting the third value from the second value to calculate a fourth value indicating a torque or force applied to the movable part by an external force;
A target value calculating step of calculating a target value indicating a displacement speed of the movable part when performing a contact force relaxation operation according to the fourth value;
A correction target value calculating step of calculating a correction target value by performing zero-space conversion on the target value;
A correction value calculating step of calculating a correction value from the correction target value;
A correction step of correcting the first value based on the correction value,
The specified value calculating step calculates the specified value based on the first value and the correction value when the correction value has already been calculated.
Robot system.
標準姿勢を示す前記可動部の変位である第5の値と前記指定値との差分から、前記標準姿勢に復帰するための前記可動部の変位速度である第6の値を算出し、
前記第4の値に応じて算出した接触力緩和動作を行う際の前記可動部の変位速度を示す値に、前記第6の値を加算して、前記目標値を算出する、
請求項10に記載のロボットシステム。 The robot controller is
A sixth value that is a displacement speed of the movable portion for returning to the standard posture is calculated from a difference between a fifth value that is a displacement of the movable portion that indicates a standard posture and the specified value,
Adding the sixth value to a value indicating the displacement speed of the movable part when performing the contact force relaxation operation calculated according to the fourth value to calculate the target value;
The robot system according to claim 10.
前記可動部の変位を前記可動部の可動範囲に収めるための変位である第5の値と前記指定値との差分から、前記可動部の変位を前記可動範囲に収めるための前記可動部の変位速度である第6の値を算出し、
前記第4の値に応じて算出した接触力緩和動作を行う際の前記可動部の変位速度を示す値に、前記第6の値を加算して、前記目標値を算出する、
請求項10に記載のロボットシステム。 The robot controller is
The displacement of the movable part for keeping the displacement of the movable part in the movable range from the difference between the fifth value, which is the displacement for placing the displacement of the movable part in the movable range of the movable part, and the specified value. Calculate the sixth value that is the speed,
Adding the sixth value to a value indicating the displacement speed of the movable part when performing the contact force relaxation operation calculated according to the fourth value to calculate the target value;
The robot system according to claim 10.
前記第1の値は、前記回転関節の回転運動の回転角度であり、
前記第2の値は、前記回転関節に生じるトルクであり、
前記第3の値は、前記指定値に対応して前記回転関節に生じるべきトルクであり、
前記第4の値は、外力により前記回転関節に加わるトルクであり、
前記可動部の変位速度は、前記回転関節の回転運動の角速度である、
請求項10乃至12のいずれか一項に記載のロボットシステム。 The movable part is a rotary joint that performs a rotary motion,
The first value is a rotation angle of the rotational movement of the rotary joint,
The second value is a torque generated in the rotary joint,
The third value is a torque to be generated in the rotary joint corresponding to the specified value,
The fourth value is a torque applied to the rotary joint by an external force,
The displacement speed of the movable part is an angular speed of the rotational motion of the rotary joint.
The robot system according to any one of claims 10 to 12.
前記第1の値及び前記第5の値は、前記回転関節の回転運動の回転角度であり、
前記第2の値は、前記回転関節に生じるトルクであり、
前記第3の値は、前記指定値に対応して前記回転関節に生じるべきトルクであり、
前記第4の値は、外力により前記回転関節に加わるトルクであり、
前記可動部の変位速度は、前記回転関節の回転運動の角速度である、
請求項11又は12に記載のロボットシステム。 The movable part is a rotary joint that performs a rotary motion,
The first value and the fifth value are rotation angles of the rotational motion of the rotary joint,
The second value is a torque generated in the rotary joint,
The third value is a torque to be generated in the rotary joint corresponding to the specified value,
The fourth value is a torque applied to the rotary joint by an external force,
The displacement speed of the movable part is an angular speed of the rotational motion of the rotary joint.
The robot system according to claim 11 or 12.
前記第1の値は、前記直動関節の並進運動の変位量であり、
前記第2の値は、前記直動関節に生じる力であり、
前記第3の値は、前記指定値に対応して前記直動関節に生じる力であり、
前記第4の値は、外力により前記直動関節に加わる力であり、
前記可動部の変位速度は、前記直動関節の並進運動の速度である、
請求項10乃至12のいずれか一項に記載のロボットシステム。 The movable part is a linear motion joint that performs translational motion,
The first value is a translational displacement amount of the linear joint;
The second value is a force generated in the linear joint,
The third value is a force generated in the linear joint corresponding to the specified value,
The fourth value is a force applied to the linear joint by an external force,
The displacement speed of the movable part is the speed of translational motion of the linear motion joint.
The robot system according to any one of claims 10 to 12.
前記第1の値及び前記第5の値は、前記直動関節の並進運動の変位量であり、
前記第2の値は、前記直動関節に生じる力であり、
前記第3の値は、前記指定値に対応して前記直動関節に生じる力であり、
前記第4の値は、外力により前記直動関節に加わる力であり、
前記可動部の変位速度は、前記直動関節の並進運動の速度である、
請求項11又は12に記載のロボットシステム。 The movable part is a linear motion joint that performs translational motion,
The first value and the fifth value are displacement amounts of translational motion of the linear motion joint,
The second value is a force generated in the linear joint,
The third value is a force generated in the linear joint corresponding to the specified value,
The fourth value is a force applied to the linear joint by an external force,
The displacement speed of the movable part is the speed of translational motion of the linear motion joint.
The robot system according to claim 11 or 12.
請求項10乃至16のいずれか一項に記載のロボットシステム。 The target value is calculated using a mass damper model based on torque or force applied to the movable part by external force.
The robot system according to any one of claims 10 to 16.
請求項10乃至17のいずれか一項に記載のロボットシステム。 The second value is a value obtained by measuring the torque or force of the movable part with a sensor.
The robot system according to any one of claims 10 to 17.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013229372A JP6044511B2 (en) | 2013-11-05 | 2013-11-05 | Robot control method and robot system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013229372A JP6044511B2 (en) | 2013-11-05 | 2013-11-05 | Robot control method and robot system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015089584A JP2015089584A (en) | 2015-05-11 |
JP6044511B2 true JP6044511B2 (en) | 2016-12-14 |
Family
ID=53193358
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013229372A Expired - Fee Related JP6044511B2 (en) | 2013-11-05 | 2013-11-05 | Robot control method and robot system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6044511B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109159151A (en) * | 2018-10-23 | 2019-01-08 | 北京无线电测量研究所 | A kind of mechanical arm space tracking tracking dynamic compensation method and system |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106564049A (en) * | 2016-09-13 | 2017-04-19 | 广东工业大学 | Small Delta robot driven by steering engines |
JP7275488B2 (en) * | 2018-07-24 | 2023-05-18 | セイコーエプソン株式会社 | robot system |
CN109571475B (en) * | 2018-12-06 | 2021-06-15 | 中国科学院长春光学精密机械与物理研究所 | A force touch control system and robot |
CN109262659B (en) * | 2018-12-20 | 2019-04-02 | 中国铁建重工集团有限公司 | A kind of zero adjustment method and apparatus of joint of mechanical arm sensor |
JP7259487B2 (en) * | 2019-03-29 | 2023-04-18 | セイコーエプソン株式会社 | Control method and robot system |
JP2021045816A (en) * | 2019-09-18 | 2021-03-25 | 株式会社東芝 | Device, method and program for supporting operation of redundant degree of freedom robot arm |
CN112571411B (en) * | 2019-09-30 | 2024-03-26 | 中电九天智能科技有限公司 | Dual-purpose mechanical arm for intelligent production line of television |
CN114063490B (en) * | 2021-09-28 | 2024-08-13 | 北京炎凌嘉业智能科技股份有限公司 | Intelligent bionic foot type robot control system and method |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2972278B2 (en) * | 1990-04-26 | 1999-11-08 | 日本原子力研究所 | Joint Angle Control Method for Articulated Manipulator |
JPH05313746A (en) * | 1992-05-11 | 1993-11-26 | Toshiba Corp | Controller for manipulator |
JP3212571B2 (en) * | 1999-03-26 | 2001-09-25 | ファナック株式会社 | Industrial robot |
JP2003058907A (en) * | 2001-08-09 | 2003-02-28 | Univ Tokyo | Method for generating pose and action of tree-structured link system |
JP2005100143A (en) * | 2003-09-25 | 2005-04-14 | Kobe Steel Ltd | Control method and control device for motor-driven device |
JP4498061B2 (en) * | 2004-08-18 | 2010-07-07 | 株式会社ダイヘン | Welding robot controller |
JP5175691B2 (en) * | 2008-11-20 | 2013-04-03 | トヨタ自動車株式会社 | Robot arm teaching system and method |
JP5198514B2 (en) * | 2010-07-22 | 2013-05-15 | 株式会社東芝 | Robot controller |
JP2013132731A (en) * | 2011-12-27 | 2013-07-08 | Seiko Epson Corp | Robot control system, robot system and robot control method |
JP5930754B2 (en) * | 2012-02-13 | 2016-06-08 | キヤノン株式会社 | Robot apparatus control method and robot apparatus |
-
2013
- 2013-11-05 JP JP2013229372A patent/JP6044511B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109159151A (en) * | 2018-10-23 | 2019-01-08 | 北京无线电测量研究所 | A kind of mechanical arm space tracking tracking dynamic compensation method and system |
CN109159151B (en) * | 2018-10-23 | 2021-12-10 | 北京无线电测量研究所 | Mechanical arm space trajectory tracking dynamic compensation method and system |
Also Published As
Publication number | Publication date |
---|---|
JP2015089584A (en) | 2015-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6044511B2 (en) | Robot control method and robot system | |
JP5383911B2 (en) | Robot controller | |
JP5327722B2 (en) | Robot load estimation apparatus and load estimation method | |
JP6484265B2 (en) | Robot system having learning control function and learning control method | |
JP5893666B2 (en) | Robot control device and robot system for robots that move according to force | |
JP6700669B2 (en) | Control method, robot device, program, recording medium, and article manufacturing method | |
JP5946859B2 (en) | Robot control device and robot system for robots that move according to force | |
US10882182B2 (en) | Robot apparatus, control method of robot apparatus, and recording medium | |
CN104589304A (en) | Robot control device and robot | |
KR101713326B1 (en) | Method and apparatus for operating a manipulator | |
US9555548B2 (en) | Robot control device for controlling robot moved according to applied force | |
JP7450744B2 (en) | Method of controlling a robotic device, controller, set of machine-readable instructions, machine-readable medium and robotic device | |
JP6831530B2 (en) | Disturbance observer and robot control device | |
CN104589335A (en) | Robot, control device, and robot system | |
KR20170016631A (en) | System, method for controlling redundant robot, and a recording medium having computer readable program for executing the method | |
US20150051735A1 (en) | Control apparatus of robot, robot, and program thereof | |
JP4054984B2 (en) | Robot control apparatus and control method | |
CN110871456B (en) | Robot | |
JP7068133B2 (en) | Control systems, control methods, and control programs | |
JP2016052699A (en) | Robot control system and robot control method | |
JP2013094947A (en) | Robot arm | |
CN112512758B (en) | Deflection amount estimating device, robot control device, and deflection amount estimating method | |
JP6565622B2 (en) | Robot system and robot control method | |
JPH06332535A (en) | Robot controller | |
WO2017026045A1 (en) | Hand-force measurement device, hand-force measurement method, and hand-force measurement program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20151221 |
|
TRDD | Decision of grant or rejection written | ||
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161013 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161018 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161031 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6044511 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |