JP5569953B2 - Robot control system, robot control method, robot control apparatus, and program applied to high-speed and high-precision contact work - Google Patents

Robot control system, robot control method, robot control apparatus, and program applied to high-speed and high-precision contact work Download PDF

Info

Publication number
JP5569953B2
JP5569953B2 JP2009219150A JP2009219150A JP5569953B2 JP 5569953 B2 JP5569953 B2 JP 5569953B2 JP 2009219150 A JP2009219150 A JP 2009219150A JP 2009219150 A JP2009219150 A JP 2009219150A JP 5569953 B2 JP5569953 B2 JP 5569953B2
Authority
JP
Japan
Prior art keywords
control
force
moment
robot
posture
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
Application number
JP2009219150A
Other languages
Japanese (ja)
Other versions
JP2011067884A (en
Inventor
慶九 黄
Original Assignee
学校法人 工学院大学
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 学校法人 工学院大学 filed Critical 学校法人 工学院大学
Priority to JP2009219150A priority Critical patent/JP5569953B2/en
Publication of JP2011067884A publication Critical patent/JP2011067884A/en
Application granted granted Critical
Publication of JP5569953B2 publication Critical patent/JP5569953B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、ロボット制御技術に関し、より詳細には、物体との接触状態にあるロボットを制御する技術に関する。   The present invention relates to robot control technology, and more particularly to technology for controlling a robot in contact with an object.

従来、ロボットアームなどの関節を含むロボットの力制御システムは、ロボットの手先や足先といた先端部の位置と、力とを制御し、運動を緩衝するためにインピーダンス制御を導入するか、または位置および力を同時に制御するハイブリッド制御のいずれかを使用している。インピーダンス制御は、ロボット手先と、物体との間の接触剛性、粘性、またはロボットアーム自体の慣性を制御パラメータとして、ステップモータやサーボモータの運動をコントロールすることにより、摩擦力などロボットアームに加えられる外力と、速度との関係を制御する方式である。   Conventionally, a robot force control system including a joint such as a robot arm introduces impedance control to control the position and force of the tip of the robot's hand or toe, and buffer the movement, or One of the hybrid controls that control the position and force simultaneously is used. Impedance control is applied to the robot arm, such as friction force, by controlling the motion of the step motor or servo motor using the contact stiffness, viscosity, or inertia of the robot arm itself as a control parameter. This is a method for controlling the relationship between external force and speed.

一方、位置および力のハイブリッド制御は、拘束空間で力制御、自由空間において位置制御を行い、ロボット手先の座標軸方向に、力および位置をフィードバックすることによって、所望する接触力およびロボット手先の運動制御を実現する方式である。   On the other hand, hybrid control of position and force performs force control in the constrained space and position control in the free space, and feeds back the force and position in the coordinate axis direction of the robot hand, thereby controlling the desired contact force and robot hand motion. It is a method to realize.

上述した二つの制御方式を利用してロボットアームを充分に制御することは可能である。しかしながら、摩擦力や慣性力など、ロボットアームの運動に抗して作用する外力による慣性系への外乱の存在下で、ロボットアームの手先に加えられる力や位置を制御する際に、自由空間における制御変数と拘束空間における制御変数との分離性が充分ではなかった。   It is possible to sufficiently control the robot arm using the two control methods described above. However, when controlling the force and position applied to the hand of the robot arm in the presence of disturbance to the inertial system due to external forces acting against the robot arm motion, such as frictional force and inertial force, in free space The separation between the control variable and the control variable in the constrained space was not sufficient.

このため、ロボットアームの運動が高速化すると、滑り摩擦力が大きくなった一方,自由空間における制御入力・運動と拘束空間における制御入力・運動との干渉が非常に大きくなって、制御系の安定性が保ってなくなり、動作が不安定になるという問題があり、ロボットアームの高速動作制御に問題があった。以下、本明細書においては、工具とワークの間の滑り摩擦の除去、自由空間と拘束空間における制御入力と運動の非干渉化として参照する。   For this reason, when the motion of the robot arm increases, the sliding friction force increases. On the other hand, the interference between the control input / motion in the free space and the control input / motion in the constrained space becomes very large, which stabilizes the control system. There is a problem that high speed motion control of the robot arm is problematic. Hereinafter, in this specification, it is referred to as removal of sliding friction between the tool and the workpiece, and control input and motion non-interference in free space and constrained space.

さらに、近年、作業の高速化および低コスト化などの観点から、産業ロボットによる加工が適用される工程も広範囲化し、研磨、研削、バリ取り、組み立てなど、点接触や線接触や面接触などロボットアームの手先環境が変化する状態で接触作業を行うことも必要とされている。このため、ロボットアームの手先に加わる外力が予測不能に変化する可能性がある場合にでも、高速にかつ充分な精度で手先の位置、姿勢、力およびモーメントを制御することが必要とされてきている。この状況下で、従来の制御方式を適用すると、手先の位置と力しか制御できない、点接触作業に対応できるが、線接触や面接触産業に対応できない。   Furthermore, in recent years, from the standpoint of speeding up work and reducing costs, the process to which machining by industrial robots is applied has become widespread, and robots such as point contact, line contact, and surface contact such as polishing, grinding, deburring, and assembly. It is also necessary to perform the contact work in a state where the hand environment of the arm changes. For this reason, even when the external force applied to the hand of the robot arm may change unpredictably, it is necessary to control the position, posture, force and moment of the hand at high speed and with sufficient accuracy. Yes. Under this circumstance, when the conventional control method is applied, only the position and force of the hand can be controlled and it can cope with the point contact work, but it cannot cope with the line contact and surface contact industries.

従来、ロボットアームの制御を行う技術は知られており、例えば、特開2008−302496号公報(特許文献1)では、ロボットアームの制御装置であって、人接近検知手段が人の接近を検知した時に、人運動検出手段の検出した人の運動に基づいてロボットアームの各関節部ごとに個別にインピーダンスを設定することで、人とロボットアームの衝突に対応する衝突対応動作御手段で制御する、制御装置が記載されている。また、特開2005−238421号公報(特許文献2)では、腕の不自然な動きや滑り落ちを防止して動作を補助できるようなロボットおよびインピーダンス制御ロボットシステムが記載されている。   Conventionally, a technique for controlling a robot arm is known. For example, in Japanese Patent Application Laid-Open No. 2008-30296 (Patent Document 1), a robot arm control device, in which a human approach detection unit detects the approach of a person. Then, by setting the impedance individually for each joint part of the robot arm based on the human motion detected by the human motion detection means, control is performed by the collision handling operation control means corresponding to the collision between the human and the robot arm. A control device is described. Japanese Patent Application Laid-Open No. 2005-238421 (Patent Document 2) describes a robot and an impedance control robot system that can assist an operation by preventing unnatural movement and slipping of an arm.

また、特開2001−038664号公報(特許文献3)では、外力計測用センサ情報から各関節に加わるトルクを分離する手段によりトルクを分離し、設定された関節部仮想インピーダンスからアーム関節部の逃げ量を算出する関節変位算出部と、外力計測用センサ情報から手先部に加わる力を分離し、設定された手先部仮想インピーダンスからアーム手先部の逃げ量を算出する手先変位算出部を有し、両部の変位算出量を加算装置で加算してアームの逃げ量を算出し、サーボコントローラによりモータを駆動制御するインピーダンス制御装置が記載されている。   In Japanese Patent Laid-Open No. 2001-038664 (Patent Document 3), the torque is separated by means for separating the torque applied to each joint from the sensor information for external force measurement, and the arm joint portion escapes from the set joint virtual impedance. A joint displacement calculator that calculates the amount, and a hand displacement calculator that separates the force applied to the hand from the sensor information for external force measurement and calculates the amount of relief of the arm hand from the set hand virtual impedance, An impedance control device is described in which displacement calculation amounts of both portions are added by an adding device to calculate an arm escape amount, and a motor is driven and controlled by a servo controller.

さらに、本発明者は、特開2008−036742号公報(特許文献4)において、ロボットアームの姿勢計算において高い収束性を与え、ひいてはロボットアームの位置制御性を改善する新規な逆運動学計算方法を提案している。   Furthermore, the present inventor disclosed in Japanese Patent Application Laid-Open No. 2008-036742 (Patent Document 4) a new inverse kinematic calculation method that gives high convergence in the posture calculation of the robot arm and thus improves the position controllability of the robot arm. Has proposed.

さらに、M. H. Raibert and J. J. Craig: Hybrid Position/Force Control of Robot Manipulators, ASME Journal of Dynamic
Systems, Measurement and Control, Vol.103, No.2, pp.126-133, 1981.(非特許文献1)では、位置制御と力制御とを同一のアルゴリズムを使用し、位置制御を行う場合と、力制御を行う場合の変数を切り換えるためのスイッチング行列を導入するハイブリッド制御方式が提案されている。また、H. Hogan: Impedance Control; An Approach to Manipulator, Parts I-III, ASME Journal
of Dynamic Systems, Measurement, and Control, Vol.107, No.1, pp.1-24, 1985(非特許文献2)には、マニュピレータの制御にインピーダンス状態Zs(*)およびアドミッタンス状態Ys(*)を導入し、位置zおよび力fの関数としてインピーダンスを加味するマニュピュレータ制御が記載されている。
In addition, MH Raibert and JJ Craig: Hybrid Position / Force Control of Robot Manipulators, ASME Journal of Dynamic
In Systems, Measurement and Control, Vol.103, No.2, pp.126-133, 1981. (non-patent document 1), the same algorithm is used for position control and force control. There has been proposed a hybrid control system that introduces a switching matrix for switching variables when force control is performed. H. Hogan: Impedance Control; An Approach to Manipulator, Parts I-III, ASME Journal
of Dynamic Systems, Measurement, and Control, Vol.107, No.1, pp.1-24, 1985 (Non-Patent Document 2), an impedance state Zs (*) and an admittance state Ys (*) are used for manipulator control. And manipulator control is described that takes impedance into account as a function of position z and force f.

特開2008−302496号公報JP 2008-30296 A 特開2005−238421号公報JP-A-2005-238421 特開2001−038664号公報JP 2001-038664 A 特開2008−036742号公報JP 2008-036742 A

M. H. Raibert and J. J. Craig:Hybrid Position/Force Control of Robot Manipulators, ASME Journal of Dynamic Systems,Measurement and Control, Vol.103, No.2, pp.126-133, 1981M. H. Raibert and J. J. Craig: Hybrid Position / Force Control of Robot Manipulators, ASME Journal of Dynamic Systems, Measurement and Control, Vol.103, No.2, pp.126-133, 1981 H. Hogan: Impedance Control;An Approach to Manipulator, Parts I-III, ASME Journal of Dynamic Systems,Measurement, and Control, Vol.107, No.1, pp.1-24, 1985H. Hogan: Impedance Control; An Approach to Manipulator, Parts I-III, ASME Journal of Dynamic Systems, Measurement, and Control, Vol.107, No.1, pp.1-24, 1985

以上のように、自由空間における外力検出を拘束空間における制御に反映する際に、ハイブリッド制御またはインピーダンス制御を併用する方式は、これまで知られている。しかしながら、従来技術は、自由空間における力・位置認識を拘束空間における制御に反映させる際に、自由空間と拘束空間との間の干渉性、特に制御入力や運動の間の非干渉性を改善することを解決課題とするものではない。さらに従来技術は、位置、姿勢、力およびモーメントという4つの制御変数を同時に考慮してロボットアームの制御を高速化、ひいてはロボットアームの高速高精度動作を改善することを課題とするものではない。   As described above, a method of using hybrid control or impedance control together when external force detection in free space is reflected in control in constrained space has been known. However, the conventional technique improves the coherence between the free space and the constrained space, especially the non-interference between the control input and the motion, when the force / position recognition in the free space is reflected in the control in the constrained space. This is not a problem to be solved. Furthermore, the prior art is not intended to speed up the control of the robot arm by simultaneously considering four control variables of position, posture, force and moment, and to improve the high-speed and high-precision operation of the robot arm.

すなわち、本発明は、上記従来技術の問題点に着目してなされたものであり、本発明は、産業ロボットなどのロボットアームに対し、点接触、線接触、または面接触といったすべての接触状態に対応して柔軟に対応した制御を行うことを可能とするロボットアームの制御技術を提供することを課題とする。さらに本発明は、滑り摩擦や慣性力などの外力の影響を除去し、自由空間と、拘束空間との間の非干渉化を行うことで、高速高精度なロボットアーム接触作業に適用する位置、姿勢、力及びモーメントの制御技術を提供することを目的とする。   That is, the present invention has been made paying attention to the above-mentioned problems of the prior art, and the present invention is in a contact state such as point contact, line contact, or surface contact with respect to a robot arm such as an industrial robot. It is an object of the present invention to provide a control technology for a robot arm that can flexibly perform corresponding control. Furthermore, the present invention eliminates the influence of external forces such as sliding friction and inertial force, and performs non-interference between the free space and the constraining space, so that it can be applied to high-speed and high-precision robot arm contact work, The purpose is to provide attitude, force and moment control technology.

本発明は、上記従来技術の問題点に鑑みてなされたものであり、本発明によれば、
複数の関節を含むロボットの運動を制御するロボット制御システムであって、
前記ロボットのワークの位置、姿勢、力制御値、およびモーメント制御値についての目標値を取得する手段と、
取得した目標位置および目標姿勢を読出し、前記目標位置に対して切換え行列を適用して力を反映させた仮想目標位置を取得すると共に、前記目標姿勢に対して切換え行列を適用し、姿勢の直交座標成分ごとに分離してモーメントを反映させた仮想目標姿勢を取得する手段と、
取得した前記力制御値および前記モーメント制御値を読出し、設定された制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御する手段と、
前記仮想目標位置および前記仮想目標姿勢から逆運動学計算により計算された前記関節の角度変化および前記力・モーメントの変化量に基づいて前記ロボットに対する制御信号を生成する手段と、
前記ロボットの関節角、前記力および前記モーメントの変化量を前記仮想目標位置、前記仮想目標姿勢、力、およびモーメントの計算に対し線形的にフィードバックする手段と
を含むロボット制御システムが提供される。
The present invention has been made in view of the above problems of the prior art, and according to the present invention,
A robot control system for controlling the motion of a robot including a plurality of joints,
Means for obtaining a target value for the position, posture, force control value, and moment control value of the robot workpiece;
Read the acquired target position and target posture, apply a switching matrix to the target position to obtain a virtual target position reflecting force, apply a switching matrix to the target posture, and orthogonalize the posture Means for acquiring a virtual target posture that reflects moments separately for each coordinate component;
The acquired force control value and moment control value are read, and based on the set control policy, recursive calculation between force / moment and position / posture is eliminated, and force / moment is controlled based on hybrid control. Means,
Means for generating a control signal for the robot based on an angular change of the joint and an amount of change of the force / moment calculated by inverse kinematics calculation from the virtual target position and the virtual target posture;
Means for linearly feeding back the joint angle of the robot, the amount of change of the force and the moment to the calculation of the virtual target position, the virtual target posture, the force and the moment is provided.

本発明の前記力・モーメントを制御する手段は、前記ロボットの位置、姿勢、力、モーメント制御を前記ロボットのワークの加速度値を使用して前記ロボットのワークの運動を制御するための力およびモーメントを生成する手段を含むことができる。   The means for controlling the force / moment of the present invention includes: a force and a moment for controlling the movement of the robot work by using the acceleration value of the robot work to control the position, posture, force and moment of the robot. Means may be included.

本発明の前記力およびモーメントを生成する手段は、前記制御ポリシーに応じて、力・モーメントと位置・姿勢との間の非線形性に基づく再帰計算による干渉を排除するように、前記ハイブリッド制御の演算項目を切換えることができる。   According to the control policy, the means for generating the force and moment of the present invention is configured to calculate the hybrid control so as to eliminate interference caused by recursive calculation based on nonlinearity between force / moment and position / posture. You can switch items.

本発明の前記力・モーメントを制御する手段は、外部センサからの摩擦力を前記ハイブリッド制御に反映することができる。   The means for controlling the force / moment of the present invention can reflect the frictional force from an external sensor in the hybrid control.

さらに本発明は、上記機能を提供するロボット制御方法、ロボット制御装置、およびプログラムを提供することができる。   Furthermore, the present invention can provide a robot control method, a robot control device, and a program that provide the above functions.

本発明によれば、高速高精度な接触作業に適し、産業用ロボットの作業性を著しく改善する産業用ロボットが提供できる。また、本発明は、ロボットアームばかりではなく、脚式ロボットの脚と、地面との接触制御にも適用でき、福祉ロボット、レスキュー用ロボット、農作業ロボット、閉鎖空間内のメンテナンス用ロボットなどの多分野における適用が可能なロボット制御システム、ロボット制御方法およびプログラムを提供することができる。   According to the present invention, it is possible to provide an industrial robot that is suitable for high-speed and high-precision contact work and significantly improves the workability of the industrial robot. Further, the present invention can be applied not only to the robot arm but also to contact control between the leg of the legged robot and the ground, and can be applied to various fields such as a welfare robot, a rescue robot, an agricultural robot, and a maintenance robot in a closed space. It is possible to provide a robot control system, a robot control method, and a program that can be applied to the above.

本実施形態のロボットアーム100の構成を示した図。The figure which showed the structure of the robot arm 100 of this embodiment. ロボット運動学における逆運動学計算の定式化を説明した図。The figure explaining formulation of inverse kinematics calculation in robot kinematics. 拘束空間での各姿勢成分の分離のために使用する変数分離関係を示した図。The figure which showed the variable separation relationship used for isolation | separation of each attitude | position component in a constrained space. 本実施形態で、上記式(9)から再帰演算を伴わずにロボットアーム100についての力制御を行うために除外する演算項目を決定する制御ポリシーを示した図。The figure which showed the control policy which determines the calculation item excluded in order to perform force control about the robot arm 100 without recursive calculation from said Formula (9) in this embodiment. 本実施形態のロボット制御を行うための制御装置500の実施形態を示した図。The figure which showed embodiment of the control apparatus 500 for performing the robot control of this embodiment. 本実施形態のロボット制御システム600の実施形態を示した図。The figure which showed embodiment of the robot control system 600 of this embodiment. 本実施形態のロボット制御方法のフローチャートを示した図。The figure which showed the flowchart of the robot control method of this embodiment. 本実施形態のロボット制御方法により動作制御されたロボットアーム800の動作特性を示した図。The figure which showed the operation | movement characteristic of the robot arm 800 by which operation control was carried out by the robot control method of this embodiment. 従来のハイブリッド制御を使用したロボット制御方法により動作制御されたロボットアーム900の動作特性を示した図。The figure which showed the operation | movement characteristic of the robot arm 900 controlled by the robot control method using the conventional hybrid control.

図1には、一例とする本実施形態のRPY型ロボットアーム100の構成を示してあるが、本発明はRPY型以外のすべて構造のロボットアームにも適用できるという高い汎用性を持っている。図1(a)は、6自由度のロボットアーム100の機械的構成を示した図であり、図1(b)は、ロボットアーム100の関節構成を抽象化して示した関節モデル図である。図1(a)に示すように、ロボットアーム100は、RPY型の6自由度ロボットアームとして構成されており、固定部112の上に第1関節114を介して設置されている。第1関節114からは、アーム128が第2関節116へと延びている。第2関節116からは、アーム130が第3関節118まで延びている。   FIG. 1 shows a configuration of an RPY type robot arm 100 of the present embodiment as an example, but the present invention has high versatility that it can be applied to robot arms of all structures other than the RPY type. FIG. 1A is a diagram illustrating a mechanical configuration of a robot arm 100 having six degrees of freedom, and FIG. 1B is a joint model diagram abstractly illustrating a joint configuration of the robot arm 100. As shown in FIG. 1A, the robot arm 100 is configured as an RPY type six-degree-of-freedom robot arm, and is installed on the fixed portion 112 via the first joint 114. An arm 128 extends from the first joint 114 to the second joint 116. An arm 130 extends from the second joint 116 to the third joint 118.

さらに第3関節118からアーム132を介して第4関節120まで延びている。そして、第2関節116および第3関節118は、アーム128、130の軸に直交する方向に回転軸を有する曲げ関節リンクとされており、第1関節114および第4関節120は、アーム132の軸を中心とする回転軸を有する、捻り関節リンクとして形成されている。第4関節120からは、さらにアーム134が第5関節122まで延びており、第5関節122からアーム136が第6関節124まで延びている。第6関節124の先端には、アーム138を介して手先126が配設されていて、ロボットアーム100による種々の処理を可能としている。   Further, the third joint 118 extends to the fourth joint 120 via the arm 132. The second joint 116 and the third joint 118 are bending joint links having a rotation axis in a direction orthogonal to the axes of the arms 128 and 130, and the first joint 114 and the fourth joint 120 are It is formed as a twisted joint link having a rotational axis about the axis. From the fourth joint 120, the arm 134 further extends to the fifth joint 122, and the arm 136 extends from the fifth joint 122 to the sixth joint 124. At the tip of the sixth joint 124, a hand 126 is disposed via an arm 138, and various processes by the robot arm 100 are possible.

ロボットアーム100の先端部に配設された手先126は、本実施形態においては物体に接触する機能を有するという意味において、ワークとして参照される機能を有しており、以下、本実施形態では、物体に接触するように制御されるという観点から用語「手先」として参照する。手先126は、本実施形態にしたがい自由空間において、物体に対して所定の位置および姿勢を有するようにロボット制御システム(図示せず)により制御され、物体と接触して各種動作を行う。   The hand 126 disposed at the tip of the robot arm 100 has a function referred to as a work in the sense that it has a function of contacting an object in the present embodiment. It is referred to as the term “hand” from the viewpoint of being controlled to contact an object. In accordance with this embodiment, the hand 126 is controlled by a robot control system (not shown) so as to have a predetermined position and posture with respect to the object, and performs various operations in contact with the object.

本実施形態において、自由空間とは、ロボットアーム100が設置される実験室系の座標軸セットにより記述される。また拘束空間とは、ロボットアーム100上に定義される座標軸系によって定義される空間であり、本実施形態では、制御目的の観点から、ロボットアーム100の手先126の適切な位置を原点とする直交座標系で記述される。自由空間と、拘束空間の間の座標軸変換は、姿勢行列Rで定義され、Rは、以下の関係で、自由空間の座標軸に関する位置(X,Y,Z)、回転θa(a=x,y,z)、拘束空間の座標軸に関する位置(X,Y,Z)、回転θa(a=x,y,z)とは、下記式(1)で与えられる関係で変換される。 In this embodiment, the free space is described by a coordinate axis set of a laboratory system in which the robot arm 100 is installed. The constraint space is a space defined by a coordinate axis system defined on the robot arm 100. In the present embodiment, from the viewpoint of control purposes, an orthogonal position with the appropriate position of the hand 126 of the robot arm 100 as the origin is used. Described in a coordinate system. The coordinate axis conversion between the free space and the constraint space is defined by an attitude matrix R, where R is a position (X f , Y f , Z f ) and rotation θa f (a = X, y, z), position (X p , Y p , Z p ) with respect to the coordinate axis of the constraint space, and rotation θa (a = x, y, z) are converted by the relationship given by the following equation (1). Is done.

図1(a)に示したロボットアーム100は、図1(b)に示すように各関節リンクの運動を、円柱座標で記述することができ、手先の位置および姿勢を、ロール(roll)角、ピッチ(pitch)角、ヨー(yaw)角の変数を使用して定義されている。なお、図1に示したロボットアーム100は、PUMA型のロボットアームに比較して面接触作業に対して効率的に運動する機構となっている。   The robot arm 100 shown in FIG. 1 (a) can describe the motion of each joint link in cylindrical coordinates as shown in FIG. 1 (b), and the position and posture of the hand can be determined by a roll angle. , Pitch angle and yaw angle variables. Note that the robot arm 100 shown in FIG. 1 is a mechanism that moves more efficiently with respect to surface contact work than a PUMA type robot arm.

なお、図1(b)では、各関節の回転軸周りの回転角を、θ(i=1、...、6)として示している。また、上記式(1)で与えられた手先126について定義される拘束空間として参照する手先固定系について定義された座標軸系の基底ベクトルX、Y、Zおよび基底ベクトル回りの回転角の定義を示す。 In FIG. 1B, the rotation angle around the rotation axis of each joint is shown as θ i (i = 1,..., 6). Further, the basis vectors X p , Y p , Z p of the coordinate axis system defined for the hand fixed system referred to as the constraint space defined for the hand 126 given by the above equation (1) and the rotation angle around the basis vector Indicates the definition.

上記定義に基づき、手先126と、物体との間の位置および姿勢制御は、自由空間において定義される変数系を使用して実行され、手先126と物体との間の力およびモーメント制御は、拘束空間において定義された変数系を使用して実行される。なお、図1に示すRPY型のロボットアーム100と、PUMA型の6自由度ロボットアームとは、第4関節120、第5関節122および第6関節124が、円柱座標系で記述される点で相違するが、変数型を適切に定義することにより、本実施形態の制御を適用することができることはいうまでもない。   Based on the above definition, position and orientation control between the hand 126 and the object is performed using a variable system defined in free space, and force and moment control between the hand 126 and the object is constrained. It is executed using a variable system defined in space. The RPY type robot arm 100 and the PUMA type 6-DOF robot arm shown in FIG. 1 are such that the fourth joint 120, the fifth joint 122, and the sixth joint 124 are described in a cylindrical coordinate system. Although different, it goes without saying that the control of this embodiment can be applied by appropriately defining the variable type.

以下、図1に示したロボットアーム100の運動制御における数値解析上の定式化を行う。まず、RPY型ロボットアームの3次元空間内における位置および配置を下記式(2)および下記式(3)で定式化する。   Hereinafter, formulation for numerical analysis in motion control of the robot arm 100 shown in FIG. 1 is performed. First, the position and arrangement of the RPY type robot arm in the three-dimensional space are formulated by the following formula (2) and the following formula (3).

上記式(2)および(3)中、P,P,Pは、自由空間で定義される手先位置であり、φ,φ,φは、手先の目標姿勢であり、ロボットアーム100の手先の位置および姿勢は、ベクトル(P,P,P,φ,φ,φ)で与えられる。また、Λθは、手先の慣性行列、Λθ −1は、慣性行列の逆行列であり、θ(i=1,...,6)は、関節角である。また、図2は、上記式(2)および(3)の行列計算をベクトル成分および行列成分として表現した図である。 In the above formulas (2) and (3), P x , P y , and P z are hand positions defined in free space, φ x , φ y , and φ z are target positions of the hand, and the robot The position and orientation of the hand of the arm 100 are given by vectors ( Px , Py , Pz , [phi] x , [phi] y , [phi] z ). Λ θ is the hand inertia matrix, Λ θ −1 is the inverse of the inertia matrix, and θ i (i = 1,..., 6) is the joint angle. FIG. 2 is a diagram representing the matrix calculation of the above equations (2) and (3) as a vector component and a matrix component.

ロボットアーム100の制御装置は、手先の目標姿勢が入力または設定されると、ロボットアーム100の制御装置は、関節を回動させる値を計算し、ロボットアーム100のステップモータまたはサーボモータを目標とする速度および変化量で駆動するための制御信号を各駆動要素へと伝送して駆動することにより、ロボットアーム100の手先126を、目標位置および目標姿勢に移動させる。   When the target posture of the hand is input or set, the control device of the robot arm 100 calculates a value for rotating the joint, and targets the step motor or servo motor of the robot arm 100 as a target. By transmitting a control signal for driving at a speed and an amount of change to each driving element and driving it, the hand 126 of the robot arm 100 is moved to the target position and target posture.

この目的のため、ロボットアーム100の目標姿勢および目標位置が自由空間の座標および姿勢として設定された場合、当該目標姿勢および目標位置を与えるための関節角θを計算することが必要となる。このような計算は、いわゆる逆運動学として知られており、逆運動学では、上記式(2)として定式化した関係で与えられるベクトル(P,P,P,φ,φ)から、関節角のベクトル(θ123456)を求める問題に帰着される。すなわち、逆運動学は、一般的には、ロボットアーム100の手先の慣性行列Λθの逆行列(Λθ−1を数値的に求め、Newton-Raphson法により連立微分方程式を解く問題に帰着される。なお、逆運動学において関節角をスケーラビリティを保証しながら効率的に計算する方法は、特許文献4に記載されているのでこれ以上詳細には説明しない。 For this purpose, when the target posture and target position of the robot arm 100 are set as coordinates and postures in free space, it is necessary to calculate the joint angle θ i for giving the target posture and target position. Such calculation is known as so-called inverse kinematics. In inverse kinematics, vectors (P x , P y , P z , φ x , φ y ) given by the relationship formulated as the above equation (2) are used. , Φ z ) results in the problem of obtaining the joint angle vectors (θ 1 , θ 2 , θ 3 , θ 4 , θ 5 , θ 6 ). That is, the inverse kinematics generally results in a problem that numerically calculates the inverse matrix (Λ θ ) −1 of the inertia matrix Λ θ of the hand of the robot arm 100 and solves the simultaneous differential equations by the Newton-Raphson method. Is done. Note that a method for efficiently calculating joint angles while guaranteeing scalability in inverse kinematics is described in Patent Document 4 and will not be described in further detail.

なお、上記式(2)および(3)中、P,P,P,φ、φ,φは、いずれも自由空間で定義された変数であり、手先126を物体に対して力/モーメント制御する際には、手先126に拘束された拘束空間で定義される変数系を使用する。このため、上記式(2)および(3)で示された行列式を解く場合、自由空間および拘束空間で定義される変数が計算処理において相互に非線形的関係で干渉し、計算処理が複雑化する。図2には、逆運動学計算を行う場合の定式化を示す。さらに、ハイブリッド制御を導入し、姿勢および力を統合したアルゴリズムで処理しようとする場合、自由空間および拘束空間での姿勢を与える変数および力を与える変数が相互に干渉することになり、処理の高速化・高精度化がさらに困難となる。 In the above formulas (2) and (3), P x , P y , P z , φ x , φ y , and φ z are all variables defined in free space, and the hand 126 is attached to the object. When the force / moment control is performed, a variable system defined by a constrained space constrained by the hand 126 is used. For this reason, when solving the determinants expressed by the above equations (2) and (3), variables defined in the free space and the constraint space interfere with each other in a non-linear relationship in the calculation processing, and the calculation processing becomes complicated. To do. FIG. 2 shows a formulation for performing inverse kinematics calculations. Furthermore, when hybrid control is introduced and processing is performed with an algorithm that integrates posture and force, the variables that give posture and the force that give force in free space and constrained space interfere with each other. And higher accuracy become more difficult.

そこで、本実施形態では、図2および上記式(2)および(3)で示された関係に対して、位置と力、姿勢とモーメントのそれぞれの演算を分離するための切換え行列S、S、S、Sを導入する。各切換え行列は、X,Y,Z軸に対応する対角要素を1を有する単位ベクトルを要素行列とする3×3行列であり、計算の対象とするべき値を切換えて演算するために利用する。各切換え行列S、S、S、Sを導入することに対応して、位置および姿勢に対してそれぞれ力およびモーメントが影響を与える項目を分離することで、下記式(4)および(5)の仮想目標位置および仮想目標姿勢を定義する。 Therefore, in the present embodiment, the switching matrices S p and S for separating the calculation of the position and force, the posture and the moment with respect to the relationship shown in FIG. 2 and the above equations (2) and (3). o , S f and S m are introduced. Each switching matrix is a 3 × 3 matrix whose element matrix is a unit vector having diagonal elements corresponding to X, Y, and Z axes, and is used for switching and calculating values to be calculated. To do. Corresponding to the introduction of each switching matrix S p , S o , S f , S m , by separating the items that the force and moment affect the position and orientation, respectively, the following equation (4) and The virtual target position and the virtual target posture of (5) are defined.

上記式(4)および(5)中、hatrefhatφrefは、仮想目標位置および仮想目標姿勢であり、prefおよびφrefは、目標位置および目標姿勢の演算項目であり、pおよびφは、それぞれ位置および姿勢の変化量であり、力およびモーメントに影響を与える演算項目である。さらに、S、S、S、Sがそれぞれ位置、力、姿勢、モーメントの切換行列である。上記式(4)および(5)を使用して位置、姿勢、力、モーメントの相互干渉をそれぞれ対応する形式で分離して制御可能に定式化する。 In the above equations (4) and (5), hat p ref and hat φ ref are the virtual target position and virtual target attitude, and p ref and φ ref are the calculation items of the target position and target attitude, and p and φ is the amount of change in position and orientation, respectively, and is a calculation item that affects force and moment. Further, S p , S f , S o , and S m are position, force, posture, and moment switching matrices, respectively. Using the above equations (4) and (5), the mutual interference of position, posture, force, and moment is formulated in a corresponding manner so as to be controllable.

上記式(5)の定式化に出現するΓ(φref)およびΓ(φ)は、位置、姿勢、力、モーメントの影響を分離するために、位置変化および角度変化の小さいものとして姿勢成分を、それぞれの座標軸成分に分離して姿勢を計算し、姿勢ベクトルとして統合し、逆運動学計算に投入する。拘束空間での各姿勢成分の分離は、具体的には、図3で示される関係で与えられ、力およびモーメント計算は姿勢成分ごとに分離して実行される。以下、この処理を、姿勢成分分離処理として参照する。姿勢成分分離処理は、仮想目標姿勢について自由空間に固定された座標軸系から手先126に固定された座標軸系にそれぞれの成分に対応付けながら変換し、逆運動学による関節角の計算を可能としている。なお、図3中、RおよびRrefは、それぞれ位置pおよび姿勢φについて適用されると同一の意味を有する。 Γ (φ ref ) and Γ (φ) appearing in the formulation of the above equation (5) are assumed to have a posture component with a small position change and angle change in order to separate the influence of the position, posture, force, and moment. The posture is calculated separately for each coordinate axis component, integrated as a posture vector, and input to the inverse kinematics calculation. Specifically, the separation of each posture component in the constrained space is given by the relationship shown in FIG. 3, and the force and moment calculations are executed separately for each posture component. Hereinafter, this process is referred to as a posture component separation process. Posture component separation processing converts a virtual target posture from a coordinate axis system fixed in a free space to a coordinate axis system fixed to a hand 126 while associating each component with each other, and enables calculation of a joint angle by inverse kinematics. . In FIG. 3, R and R ref have the same meaning when applied to the position p and the posture φ, respectively.

仮想目標位置および仮想目標姿勢を計算した後、仮想目標位置ベクトルおよび仮想目標姿勢ベクトルを結合して図2および下記式(6)で示されるように、逆運動学による関節角の計算を実行する。   After calculating the virtual target position and the virtual target posture, the virtual target position vector and the virtual target posture vector are combined to calculate the joint angle by inverse kinematics as shown in FIG. 2 and the following equation (6). .

以下、本実施形態によるハイブリッド制御を定式化する。下記式(7)は、ハイブリッド制御の本質的な定式化を示す。   Hereinafter, the hybrid control according to the present embodiment is formulated. Equation (7) below shows the essential formulation of hybrid control.

上記式(7)を参照すれば、ハイブリッド制御においては、同一式内に、制御入力:直交座標(拘束空間)および位置・姿勢といった運動:直交座標(自由空間)の演算項目を含み、これらは相互に異なる座標軸系に帰属される変数系でありながら非線形的に関連する。本実施形態では、自由空間および拘束空間における相互の変数が再帰的に影響を与えることを干渉として参照し、自由空間および拘束空間における相互の変数の間の干渉を最小化するように、ロボットアーム100のハイブリッド運動方程式および機械系の運動方程式を確立することを、自由空間と拘束空間との非緩衝化として参照する。   Referring to the above equation (7), in hybrid control, calculation items of control input: Cartesian coordinates (constraint space) and movement: Cartesian coordinates (free space) such as position and orientation are included in the same equation, Although they are variable systems belonging to mutually different coordinate axis systems, they are nonlinearly related. In this embodiment, the robot arm is referred to as the interference that the mutual variables in the free space and the constrained space recursively affect, and the interference between the mutual variables in the free space and the constrained space is minimized. Establishing the 100 hybrid equations of motion and the equations of motion of the mechanical system is referred to as unbuffering of free space and constrained space.

またロボットアーム100の運動は、コリオリ力Hや非復元性の力である摩擦力Fを含む運動方程式(8)で記述することができる。 The motion of the robot arm 100 can be described by the equation of motion including a frictional force F d is a Coriolis force H and a non-resilient force (8).

上記式(8)において、摩擦力が、常時同一の値であると仮定できる用途の場合には、制御定数として以後の制御演算から除外することもできるが、ワーク、すなわち手先と物体の接触に柔軟に対応させるためには、摩擦力などをセンサ入力する必要があるため、制御定数として除外することは適切ではない。   In the above equation (8), in the case where the frictional force can always be assumed to be the same value, it can be excluded from the subsequent control calculation as a control constant. In order to respond flexibly, it is necessary to input a frictional force or the like, so it is not appropriate to exclude it as a control constant.

上述した定式化の下で、ハイブリッド制御を行うため、上記式(8)を上記式(7)に代入すると、下記式(9)が得られる。   In order to perform hybrid control under the above-described formulation, the following formula (9) is obtained by substituting the above formula (8) into the above formula (7).

上記式(9)は、自由空間および拘束空間の両変数を共に含む定式化であり、目標とする力制御値と現在の力との差分にスイッチング行列を乗算したタームと、手先の加速度値に慣性行列を乗じたタームとを含むように定式化する。一方、逆運動学を計算する場合の行列式の逆行列計算は、6×6の行列計算を含み、Newton-Raphson法を使用する反復計算であることから、ハイブリッド制御として上記式(9)をそのまま逆運動学計算に導入すると、さらに計算時間の増大や、収束性のスケーラビリティが低下し、その結果、動作安定性自体が低下したり、運動速度増加に伴いフィードバック制御との関係でワークに振動が生じたりする。   The above formula (9) is a formulation including both free space and constraint space variables, and a term obtained by multiplying the difference between the target force control value and the current force by the switching matrix and the acceleration value of the hand. It is formulated to include terms multiplied by the inertia matrix. On the other hand, the inverse matrix calculation of the determinant when calculating inverse kinematics includes 6 × 6 matrix calculation and is an iterative calculation using the Newton-Raphson method. If introduced directly into inverse kinematics calculation, the calculation time will increase and the scalability of the convergence will decrease.As a result, the operation stability itself will decrease, and the workpiece will vibrate in relation to feedback control as the motion speed increases. May occur.

そこで、本実施形態では、自由空間および拘束空間の両方について双方向の再帰演算を除き、ハイブリッド制御演算を、自由空間←→拘束空間のいずれか一方向への演算だけに制限することにより、逆運動学に投入するべき数値変数の非線形演算を高速でスケーラビリティのある演算に置き換えて、ロボットアーム100の運動制御を行う。   Therefore, in the present embodiment, by excluding bidirectional recursive computation for both free space and constrained space, the hybrid control computation is limited to computation in only one direction of free space ← → constraint space. The motion control of the robot arm 100 is performed by replacing the non-linear operation of the numerical variable to be input to the kinematics with a fast and scalable operation.

図4は、本実施形態で、上記式(9)から再帰演算を伴わずにロボットアーム100についての力制御を行うために除外する演算項目を決定する制御ポリシーを示す。図4には、制御ポリシー400およびロボットアーム100の変数定義空間である自由空間と拘束空間との間の再帰演算の関係ダイアグラム410を示している。以下、図4を使用して再帰演算を除くことによる非干渉化の具体的な処理を概略的に説明する。ハイブリッド制御を行う観点では、再帰演算するべき数値変数は、位置および姿勢に関連する座標値などで指定される運動および力・モーメント制御のための制御入力があり、それぞれ自由空間と拘束空間との間で非線形関係にあるため、再帰的な計算が必要とされる。   FIG. 4 shows a control policy for determining calculation items to be excluded in order to perform force control on the robot arm 100 without recursive calculation from the above equation (9) in the present embodiment. FIG. 4 shows a relationship diagram 410 of the recursive operation between the control policy 400 and the free space that is the variable definition space of the robot arm 100 and the constraint space. Hereinafter, a specific process of decoupling by removing the recursive operation will be schematically described with reference to FIG. From the viewpoint of performing hybrid control, the numerical variables that should be recursively calculated include the control inputs for motion and force / moment control specified by coordinate values related to position and orientation, etc. Because there is a non-linear relationship between them, recursive calculations are required.

自由空間と拘束空間との間の変数間の関係を完全に除外することは、ハイブリッド制御の効果を得ることはできないので、上記式(9)を運動および力・モーメントそれぞれについて、再帰演算を不要とするように一方の空間の変数セットから他方の空間の変数セットを生成するだけで上記式(9)を近似できるように制御ポリシー400を分類することが必要である。上述したいずれか一方の関係を保存しながら近似する観点では、運動の干渉、制御入力の干渉の双方向の影響について、いずれか一方のみに限定することで、図4の制御ポリシー400で示される制御ポリシーに関する4制御ケースが与えられる。   Since it is not possible to obtain the effect of hybrid control by completely excluding the relationship between the variables between the free space and the constrained space, the above equation (9) is not required for the motion and force / moment. As described above, it is necessary to classify the control policy 400 so that the above equation (9) can be approximated only by generating the variable set of the other space from the variable set of the one space. From the viewpoint of approximation while preserving any one of the above-described relationships, the bidirectional effect of motion interference and control input interference is limited to only one of them, and is shown by the control policy 400 in FIG. Four control cases for the control policy are given.

これらの4制御ケースは、上記式(9)に基づいて下記式(10)のように導出することができる。   These four control cases can be derived as the following formula (10) based on the above formula (9).

上記式(10)で与えられる制御ポリシーは、ロボットアーム100またはさらにロボットシステムのコントローラにおいて、切換え設定可能な関数として登録され、ロボットアーム100、ロボットなどの動作およびユーザ要求に対応して適宜外部設定または自動的に関数を切換えて制御に反映することができる。   The control policy given by the above formula (10) is registered as a switchable function in the robot arm 100 or further in the controller of the robot system, and is appropriately set in accordance with the operation of the robot arm 100, the robot, etc. and the user request. Alternatively, the function can be automatically switched and reflected in the control.

図5は、本実施形態のロボット制御を行うための制御装置500の実施形態を示す。本実施形態の制御装置500は、特定の用途に対応した大規模集積回路(LSI)としても実装することができるし、パーソナルコンピュータなどの中央処理装置(CPU)が、アセンブラ、C、C++などのプログラミング言語を実行して、図5の機能を提供する機能処理部を情報処理上に構成させ、各種インタフェースおよびモータドライバを介して時間依存の関節角、力、モーメントの出力を行わせている。図5に示した制御装置500をLSIとして実装する場合、図5中、破線で示した領域内の機能モジュールを半導体素子から構成することが好ましい。   FIG. 5 shows an embodiment of a control device 500 for performing robot control according to this embodiment. The control device 500 of this embodiment can be implemented as a large-scale integrated circuit (LSI) corresponding to a specific application, and a central processing unit (CPU) such as a personal computer is used for an assembler, C, C ++, or the like. A function processing unit that executes the programming language and provides the functions of FIG. 5 is configured on information processing, and outputs time-dependent joint angles, forces, and moments through various interfaces and motor drivers. When the control device 500 shown in FIG. 5 is mounted as an LSI, it is preferable that the functional module in the region indicated by the broken line in FIG.

より詳細に制御装置500の構成を説明すると、制御装置500は、適切なインタフェース(図示せず)を介して目標位置pref、目標姿勢φref、fref、mrefを取得する。目標位置prefは、加減算部502において関節角制御のフィードバックと減算処理された後、切換え行列設定部504に送付されて、切替え行列が乗算され、さらに加算部522に送られて、位置の変化分pが加算されhatrefが生成される。生成されたhatrefは、逆運動学計算部524に送付される。なお、添え字「hat」は、仮想目標位置または仮想目標姿勢を文章上で表現するために使用する。 The configuration of the control device 500 will be described in more detail. The control device 500 acquires the target position p ref , the target posture φ ref , f ref , and m ref via an appropriate interface (not shown). The target position p ref is subtracted from the feedback of the joint angle control in the addition / subtraction unit 502, then sent to the switching matrix setting unit 504, multiplied by the switching matrix, and further sent to the adding unit 522 to change the position. The minute p is added to generate hat p ref . The generated hat p ref is sent to the inverse kinematics calculation unit 524. The subscript “hat” is used to express the virtual target position or the virtual target posture on the sentence.

一方、目標姿勢φrefは、姿勢成分分離部506に送られて手先に固定された座標軸系での姿勢成分が姿勢成分に分解された後、加減算部508に送られて姿勢成分分離部534からのフィードバック成分が減算された後、切換え行列設定部510に送られて切換え行列が乗算され、乗算結果に対して姿勢成分分離部534からの変化量φが加算部512において加算されて、hatφrefが生成される。生成されたhatφrefは、姿勢統合部530に入力されて分離された成分ごとの処理結果を統合して自由空間で定義された仮想目標姿勢ベクトルとされて、逆運動学計算部524に入力される。 On the other hand, the target posture φ ref is sent to the posture component separation unit 506 and the posture component in the coordinate axis system fixed to the hand is decomposed into posture components and then sent to the addition / subtraction unit 508 and sent from the posture component separation unit 534. Is fed to the switching matrix setting unit 510 and multiplied by the switching matrix, and the change amount φ from the posture component separation unit 534 is added to the multiplication result in the adding unit 512, and hat φ ref is generated. The generated hat φ ref is input to the posture integration unit 530, and the processing result for each component separated is integrated into a virtual target posture vector defined in free space, and input to the inverse kinematics calculation unit 524 Is done.

逆運動学計算部524は、仮想目標位置ベクトルと仮想目標姿勢ベクトルとを統合して逆運動学計算を実行し、関節角の値を計算する。なお、本実施形態では、逆運動学の計算を実行する際に、特許文献4で記載したように3×3の部分行列に分解して位置および姿勢を独立に計算させてもよい。計算された関節角の値は、位置/姿勢制御部532に送付されて、単位時間あたりの移動量に変換された後、加算部536に送付される。   The inverse kinematics calculation unit 524 performs the inverse kinematics calculation by integrating the virtual target position vector and the virtual target posture vector, and calculates the value of the joint angle. In this embodiment, when inverse kinematics calculation is performed, the position and orientation may be calculated independently by decomposing into 3 × 3 partial matrices as described in Patent Document 4. The calculated value of the joint angle is sent to the position / posture control unit 532, converted into a movement amount per unit time, and then sent to the adding unit 536.

さらに、力・モーメント制御入力について説明する。目標とする力の大きさfrefは、加減算部514に入力され、力出力値mと減算された後、切換え行列設定部516に入力されSが乗算された後、力制御部540に入力される。力制御部540は、本実施形態により、制御ポリシーにしたがって力制御を行い、その出力を力変化量変換部542に入力する。また、目標とするモーメントは、加減算部518に入力され、モーメント出力値mが減算された後、切換え行列設定部520に入力され切換え行列が乗算され、乗算結果がモーメント変化量制御部544に入力される。 Further, force / moment control input will be described. The size f ref of the force target is inputted to the subtraction unit 514, after being subtracted the force output value m t, after the S f is inputted to the switching matrix setting unit 516 is multiplied to the force control unit 540 Entered. According to this embodiment, the force control unit 540 performs force control according to the control policy, and inputs the output to the force change amount conversion unit 542. Further, the target moment is input to the addition / subtraction unit 518, the moment output value mf is subtracted, and then input to the switching matrix setting unit 520, multiplied by the switching matrix, and the multiplication result is input to the moment change amount control unit 544. Entered.

各変化量変換部542、546の出力は、加算器536に入力され、モータを実回転させるための駆動パルスに変換された後、ロボットアーム100のモータ制御部538に送られ、モータ駆動を介して関節角の制御およびそれに対応する力・モーメント制御が実行される。ロボットアーム100の各出力値は、それぞれ対応する加減算部502、508、514、518にフィードバック制御されて目標位置・目標姿勢に収束する位置・姿勢・力制御が可能とされている。なお、図5の破線のブロックは、LSIとして実装することができる機能ブロックを示す。なお、図5の制御装置をLSIとして実装する場合、特定の目的に応じてさらに複数の集積回路として構成することができる。   The outputs of the change amount conversion units 542 and 546 are input to the adder 536, converted into drive pulses for actual rotation of the motor, and then sent to the motor control unit 538 of the robot arm 100, via the motor drive. Thus, joint angle control and corresponding force / moment control are executed. Each output value of the robot arm 100 is feedback-controlled by the corresponding addition / subtraction units 502, 508, 514, and 518, and position / posture / force control that converges to the target position / target posture is possible. Note that the broken-line blocks in FIG. 5 indicate functional blocks that can be implemented as LSIs. When the control device of FIG. 5 is implemented as an LSI, it can be further configured as a plurality of integrated circuits depending on a specific purpose.

図6は、本実施形態のロボット制御システム600の実施形態を示す。図6に示したロボット制御システム600は、パーソナルコンピュータやワークステーションといった制御装置620と、モータドライバ640と、ロボット650とを含んで構成されている。制御装置620は、説明する実施形態では、パーソナルコンピュータとして実装されており、PCI、CompactPCI、PCI-Expressなどのインタフェー部638を介してモータドライバ列640に制御装置620が生成した位置・姿勢・力制御信号を送付している。モータドライバ640は、受領した制御信号を受領して駆動パルス列を生成し、ロボット650の各関節のパルスモータまたはサーボモータを駆動している。   FIG. 6 shows an embodiment of the robot control system 600 of the present embodiment. A robot control system 600 shown in FIG. 6 includes a control device 620 such as a personal computer or a workstation, a motor driver 640, and a robot 650. In the embodiment to be described, the control device 620 is implemented as a personal computer, and the position / posture / force generated by the control device 620 in the motor driver row 640 via an interface unit 638 such as PCI, CompactPCI, PCI-Express, or the like. Sending control signals. The motor driver 640 receives the received control signal, generates a drive pulse train, and drives the pulse motor or servo motor of each joint of the robot 650.

制御装置620は、図示する実施形態では、外部接続されたディスプレイ装置610、キーボード612、マウス614などの入出力装置を使用して各種条件の設定および動作開始・終了が制御されている。なお、他の実施形態で、ロボット650が、ロボットアーム100のように固定式でなく、車両、歩行ロボットなど自己移動式の場合、制御装置620のインタフェース部638は、IEEE802.x、BLUETOOTH(登録商標)、ワイヤレスUSB、その他の無線周波数帯域を利用するワイヤレス通信を介してモータドライバ640およびロボット650に接続されてもよい。   In the illustrated embodiment, the control device 620 uses an externally connected input / output device such as a display device 610, a keyboard 612, and a mouse 614 to control setting of various conditions and operation start / end. In another embodiment, when the robot 650 is not a fixed type like the robot arm 100 but is a self-moving type such as a vehicle or a walking robot, the interface unit 638 of the control device 620 includes IEEE802.x, BLUETOOTH (registered). The motor driver 640 and the robot 650 may be connected via wireless communication using a trademark (trademark), wireless USB, or other radio frequency band.

さらに他の実施形態では、制御装置620を、図5に説明した機能を有するLSIを搭載するモバイル装置として実装し、モータドライバ640とともにロボット650に搭載することも可能である。制御装置620を、パーソナルコンピュータとして実装する場合、パーソナルコンピュータは、PENTIUM(登録商標)、XEON(登録商標)、CELERON(登録商標)、PENTIUM(登録商標)互換チップなど、CISCアーキテクチャのマイクロプロセッサ、または、POWERPC(登録商標)などのRISCアーキテクチャのマイクロプロセッサを、シングルコアまたはマルチコアの形態で実装することができる。   In still another embodiment, the control device 620 can be mounted as a mobile device on which an LSI having the function described in FIG. 5 is mounted and mounted on the robot 650 together with the motor driver 640. When the control device 620 is implemented as a personal computer, the personal computer may be a microprocessor of CISC architecture, such as a PENTIUM (registered trademark), XEON (registered trademark), CELERON (registered trademark), PENTIUM (registered trademark) compatible chip, or the like. , POWERPC (registered trademark) and other RISC architecture microprocessors can be implemented in single-core or multi-core form.

また、制御装置620は、WINDOWS(登録商標)、UNIX(登録商標)、LINUX(登録商標)などのオペレーティング・システムにより制御することができ、適宜アセンブラ、C、C++、JAVA(登録商標)、PERL、RUBYなどのプログラミング言語を使用して記述される制御プログラムをRAMなどの実行空間に展開してプログラムの実行により、本実施形態のハイブリッド制御を行うための各機能処理部をソフトウェア的に構成させている。また、本実施形態のハイブリッド制御を行う制御装置がLSIとして構成される場合、当該LSIに対して制御情報を送付する上位コンピュータとしての機能処理部を提供する。   The control device 620 can be controlled by an operating system such as WINDOWS (registered trademark), UNIX (registered trademark), LINUX (registered trademark), and the like, and is appropriately assembled with assembler, C, C ++, JAVA (registered trademark), PERL. By developing a control program written using a programming language such as RUBY in an execution space such as RAM and executing the program, each functional processing unit for performing hybrid control of this embodiment is configured in software. ing. In addition, when the control device that performs hybrid control according to the present embodiment is configured as an LSI, a function processing unit as a host computer that sends control information to the LSI is provided.

制御装置620は、必要に応じて適宜Internet Explorer(登録商標)、Mozilla(登録商標)、Opera(登録商標)、FireFox(登録商標)などのブラウザ・ソフトウェアを実装し、ネットワークを介した外部通信が可能とされている。   The control device 620 is equipped with browser software such as Internet Explorer (registered trademark), Mozilla (registered trademark), Opera (registered trademark), and FireFox (registered trademark) as necessary, and can perform external communication via a network. It is possible.

以下、制御装置620の機能処理部について説明する。制御装置620は、内部バスにより各機能部が相互接続されていて、データおよびコマンドの送受信を行っている。制御装置620は、より詳細には、入出力インタフェース622と、切換え行列計算部部624と、目標値格納部626を含んで構成されている。入出力インタフェース部622は、USB(Universal Serial Buss)、VGA、ワイヤレスUSBなどのバスおよびバスインタフェースを含む入出力インタフェースとして構成され、キーボード612、マウス614、ディスプレイ装置610を介して設定された制御ポリシー、目標位置、目標姿勢、目標力・モーメントを受領して、制御装置620への設定を可能としている。   Hereinafter, the function processing unit of the control device 620 will be described. In the control device 620, each functional unit is interconnected by an internal bus, and transmits and receives data and commands. More specifically, the control device 620 includes an input / output interface 622, a switching matrix calculation unit 624, and a target value storage unit 626. The input / output interface unit 622 is configured as an input / output interface including buses and bus interfaces such as USB (Universal Serial Bus), VGA, and wireless USB, and a control policy set via the keyboard 612, the mouse 614, and the display device 610. The target position, target posture, target force / moment are received, and the setting to the control device 620 is possible.

目標値格納部626は、設定された目標位置、目標姿勢、目標力・モーメントを格納し、切換え行列計算部624に各目標値を渡す。切換え行列計算部624は、切換え行列の乗算およびハイブリッド制御のための切換え行列の要素設定を行い、各値を、位置姿勢制御部628、力・モーメント制御部630に渡して処理を指令する。   The target value storage unit 626 stores the set target position, target posture, target force / moment, and passes each target value to the switching matrix calculation unit 624. The switching matrix calculation unit 624 performs switching matrix multiplication and element setting of the switching matrix for hybrid control, and passes each value to the position and orientation control unit 628 and the force / moment control unit 630 to instruct processing.

また、ポリシー選択部632は、オペレータの指令により指定された制御ポリシーを入出力インタフェース部622を介して受領し、位置姿勢制御部628、力・モーメント制御部630による制御処理を管理する。位置姿勢制御部628は、本実施形態にしたがい仮想目標位置および仮想目標姿勢の計算を実行し、その出力を制御出力統合部634に渡す。また、力・モーメント制御部630は、本実施形態にしたがい改善されたハイブリッド制御方法を適用して力・モーメントの制御値を計算し、計算結果を制御出力統合部634に送付する。   The policy selection unit 632 receives a control policy designated by an operator command via the input / output interface unit 622 and manages control processing by the position / orientation control unit 628 and the force / moment control unit 630. The position / orientation control unit 628 calculates the virtual target position and the virtual target orientation according to the present embodiment, and passes the output to the control output integration unit 634. Further, the force / moment control unit 630 calculates the control value of the force / moment by applying the hybrid control method improved according to the present embodiment, and sends the calculation result to the control output integration unit 634.

制御出力統合部634は、位置姿勢制御部628および力・モーメント制御部630の演算出力結果を受領し、位置、姿勢、力、モーメントを生成するための単位時間あたりの制御量を与える制御信号を生成する。制御信号は、インタフェース部638を介してモータドライバ列640に送付され、関節を構成するサーボモータなどに送付するべき駆動パルスとしてロボット650の関節を駆動させている。   The control output integration unit 634 receives the calculation output results of the position / orientation control unit 628 and the force / moment control unit 630 and outputs a control signal that gives a control amount per unit time for generating the position, orientation, force, and moment. Generate. The control signal is sent to the motor driver train 640 via the interface unit 638, and the joint of the robot 650 is driven as a drive pulse to be sent to a servo motor or the like constituting the joint.

また、インタフェース部638は、例えば、ロボット650が搭載するロータリエンコーダ、摩擦センサ、加速度センサなどの各センサ出力をフィードバックとして受領して、制御装置620に対してロボット650の現在の状態を通知し、フィードバック制御を可能とする。また、インタフェース部638は、ロボット650をPCIデバイスとして認識し、ロボット650の現在の状態や、力出力状態、モーメント発生状態などを、例えばディスプレイ装置610に標示させることもできる。なお、図6中、破線の矩形枠550で示された各機能部は、図5に説明した機能部を有するASIC(Application Specified Integrated Circuit)としても実装することができる。また、上述したように、制御装置620、モータドライバ640はロボット650が搭載することもできるし、制御装置620とモータドライバ640との間を無線制御とすることもできる。   In addition, the interface unit 638 receives, as feedback, sensor outputs of, for example, a rotary encoder, a friction sensor, and an acceleration sensor mounted on the robot 650, and notifies the control device 620 of the current state of the robot 650. Enable feedback control. Further, the interface unit 638 can recognize the robot 650 as a PCI device, and can cause the display device 610 to indicate the current state, the force output state, the moment generation state, and the like of the robot 650, for example. In FIG. 6, each functional unit indicated by a broken-line rectangular frame 550 can be implemented as an ASIC (Application Specified Integrated Circuit) having the functional unit described in FIG. 5. Further, as described above, the control device 620 and the motor driver 640 can be mounted on the robot 650, and the control device 620 and the motor driver 640 can be wirelessly controlled.

図7は、本実施形態のロボット制御方法のフローチャートを示す。図7の処理は、ステップS700で開始し、ステップS701でオペレータによる入力に基づいて手先の目標位置および目標姿勢を取得する。ステップS702では、手先の力およびモーメントの目標値を取得する。ステップS703では、制御ポリシーを取得し、切換え行列S、S、S、Sを設定し、仮想目標位置、仮想目標姿勢を計算する。 FIG. 7 shows a flowchart of the robot control method of the present embodiment. The process of FIG. 7 starts in step S700, and in step S701, the target position and target posture of the hand are acquired based on the input by the operator. In step S702, target values of hand force and moment are acquired. In step S703, a control policy is acquired, a switching matrix S p , S o , S f , S m is set, and a virtual target position and a virtual target attitude are calculated.

その後、ステップS704では、仮想目標位置および仮想目標姿勢を合成し、逆運動学手法により各関節角の値を計算する。ステップS705では、ハイブリッド制御に使用するスイッチング行列を切換え行列に対応する要素を設定しながら、設定した制御ポリシーで与えられる計算式の関数を呼び出しながら力およびモーメントを計算し、位置、姿勢、力、モーメントの変化量として制御出力統合部634に渡して制御信号を生成し、目的の関節角となるようにモータドライバ640に送付して、モータを制御する。   Thereafter, in step S704, the virtual target position and the virtual target posture are synthesized, and the value of each joint angle is calculated by an inverse kinematic method. In step S705, a force and a moment are calculated while calling a function of a calculation formula given by the set control policy while setting an element corresponding to the switching matrix as a switching matrix used for hybrid control, and the position, posture, force, A control signal is generated as a moment change amount by passing it to the control output integration unit 634, and sent to the motor driver 640 so as to obtain a target joint angle, thereby controlling the motor.

ステップS706では、現在の手先位置、姿勢、力、モーメントを、それぞれ位置、姿勢、力、モーメントの計算にフィードバックさせ、ステップS707では、ロボットアーム100の手先位置および手先姿勢が、目標位置に達したか否かを判断する。目的位置・目的姿勢に達していない場合(no)、処理をステップS702に戻して、制御を反復させる。また、目標位置・目標姿勢に達したと判断した場合(yes)、制御をステップS708に渡し、制御終了か否かを判断し、手先の位置、姿勢、力、モーメントを制御しながら、ステップS707までの処理を反復させる。   In step S706, the current hand position, posture, force, and moment are fed back to the calculation of position, posture, force, and moment. In step S707, the hand position and hand posture of the robot arm 100 have reached the target position. Determine whether or not. If the target position / posture has not been reached (no), the process returns to step S702 to repeat the control. If it is determined that the target position / target posture has been reached (yes), control is passed to step S708, whether or not the control is finished, and the position, posture, force, and moment of the hand are controlled while step S707 is performed. The process up to is repeated.

ステップS708における制御終了の判断は、ロボット制御の目的に応じて、目標位置および目標姿勢に達したこと、目標位置および目標姿勢を順次更新して所定回数または所定時間の運動を生成させたこと、または外部からの明示的な終了指令があったことなどに基づいて判断することができる。ステップS708で制御終了と判断した場合(yes)、ステップS709でロボット制御処理を終了する。また、ステップS708で制御終了と判断しない場合(no)処理をステップS701に戻し、新たな制御目標に向かってロボット制御を開始する。   In step S708, the end of the control is determined according to the purpose of the robot control, that the target position and the target posture have been reached, the target position and the target posture are sequentially updated, and a motion of a predetermined number of times or a predetermined time is generated. Alternatively, the determination can be made based on the fact that there has been an explicit termination command from the outside. If it is determined in step S708 that the control is terminated (yes), the robot control process is terminated in step S709. If it is not determined in step S708 that the control has ended (no), the process returns to step S701, and robot control is started toward a new control target.

以上の処理により、ロボットアーム100は、目標とする位置および姿勢へと設定された力およびモーメントで運動するように制御される。本実施形態のロボット制御方法では、位置および姿勢といった自由空間で定義されるべき変数について力およびモーメントに関連するタームを姿勢成分分離手法を導入して分離し、さらに、ハイブリッド制御における位置、姿勢、力、モーメントの計算において自由空間と拘束空間との間の再帰的計算を制御ポリシーに基づいてそれぞれ一方向だけに限定することにより、ハイブリッド計算における冗長計算を効率的に分離することを可能とする。この結果、ハイブリッド制御演算の力およびモーメント演算の結果が、より高速に位置および姿勢制御に反映でき、より高速高精度のロボット制御が可能となる。   Through the above processing, the robot arm 100 is controlled to move with the force and moment set to the target position and posture. In the robot control method of this embodiment, terms related to forces and moments are separated from variables to be defined in free space such as position and posture by introducing a posture component separation method, and further, the position, posture, By limiting recursive calculation between free space and constrained space to only one direction based on the control policy in the calculation of force and moment, it is possible to efficiently separate redundant calculation in hybrid calculation . As a result, the result of the hybrid control calculation force and moment calculation can be reflected in the position and orientation control at a higher speed, and the robot control with higher speed and accuracy can be realized.

図8および図9を使用して本実施形態のロボット制御方法により動作制御されたロボットアームの動作特性を説明する。図8は、本実施形態のロボット制御方法により動作制御されたロボットアーム800の動作特性を示した図である。なお、図8および図9とも、制御入力の変動およびモーメントの変動については手先の慣性主軸M、M、M方向の値に分解して示している。また、制御ポリシーとしては、図4のケース1を使用した。 The operation characteristics of the robot arm whose operation is controlled by the robot control method of this embodiment will be described with reference to FIGS. FIG. 8 is a diagram illustrating operation characteristics of the robot arm 800 that is operation-controlled by the robot control method of the present embodiment. 8 and 9, the fluctuation of the control input and the fluctuation of the moment are shown by being decomposed into values in the directions of the principal spindles M x , M y , and M z of the hand. Further, Case 1 in FIG. 4 was used as the control policy.

図8(a)は、図8(c)に示した構成を有するロボットアーム800を動作制御した場合の制御入力の時間的変動を示し、図8(b)は、モーメントの時間的変動を示したものである。ロボットアーム800は、図8(c)に示すように、6関節のRPY型ロボットアームとして構成されており、手先にホワイトボード消し820を装着して、ホワイトボード810の文字を、ホワイトボード810の面にホワイトボード消しを密着させながらホワイトボード810の法線方向に直交する向きになぞる動作を行う。ホワイトボード810とホワイトボード消し820との間の摩擦力については、接触面が変動しない実施例のため、予めセンサにて測定し、一定の値に固定してロボット制御を行った。   FIG. 8A shows the temporal variation of the control input when the robot arm 800 having the configuration shown in FIG. 8C is controlled, and FIG. 8B shows the temporal variation of the moment. It is a thing. As shown in FIG. 8C, the robot arm 800 is configured as a 6-joint RPY type robot arm. A whiteboard eraser 820 is attached to the hand, and the characters on the whiteboard 810 are displayed on the whiteboard 810. An operation of tracing in the direction orthogonal to the normal direction of the whiteboard 810 is performed while bringing the whiteboard eraser into close contact with the surface. The frictional force between the whiteboard 810 and the whiteboard eraser 820 is an example in which the contact surface does not fluctuate, and thus was measured with a sensor in advance and fixed to a constant value to perform robot control.

図8(a)および図8(b)に示すように、本実施形態のロボット制御方法によれば、横移動速度を0.2m/sとした場合にでも、制御入力に対する異常なフィードバックが発生せず、この結果としてモーメントについても充分に安定して制御されていることが示されている。さらに、図8の実施例において横移動速度を1m/sまで増加させて制御/応答における異常振動の発生をシミュレーションしたところ、制御入力に対する異常なフィードバックは生成されず、その結果、モーメントも安定して制御されることがわかった。すなわち、図8に示した本実施形態のロボットアーム800は、アクチュエータの入出力制限がなければ速度の増加にかかわらず、安定した動作制御を行うことができる。   As shown in FIGS. 8 (a) and 8 (b), according to the robot control method of the present embodiment, even when the lateral movement speed is set to 0.2 m / s, abnormal feedback to the control input occurs. As a result, it is shown that the moment is controlled sufficiently stably. Furthermore, in the embodiment of FIG. 8, when the lateral movement speed was increased to 1 m / s and the occurrence of abnormal vibration in the control / response was simulated, abnormal feedback to the control input was not generated, and as a result, the moment became stable. It was found that it was controlled. That is, the robot arm 800 of this embodiment shown in FIG. 8 can perform stable operation control regardless of the increase in speed if there is no input / output limitation of the actuator.

図9は、従来のハイブリッド制御方法を使用して図8と同様の動作を行わせた場合の、動作特性を示す。図8と同様に、図9(a)は、制御入力の時間的変化を示し、図9(b)はモーメントの時間的変化を示し、図9(c)に、ロボットアーム900のホワイトボード消し920と、ホワイトボード910との位置関係を示す。図9に示す実施形態では、図8で良好な動作を示した横移動速度0.2m/sまで横移動速度を増加させると、図9(a)に示すように制御入力への異常なフィードバックが発生し、これに対応して図9(b)に示すようにモーメントも不安定に振動することが見出された。   FIG. 9 shows operation characteristics when the same operation as that of FIG. 8 is performed using the conventional hybrid control method. As in FIG. 8, FIG. 9A shows a temporal change in control input, FIG. 9B shows a temporal change in moment, and FIG. 9C shows the whiteboard erase of the robot arm 900. The positional relationship between 920 and the whiteboard 910 is shown. In the embodiment shown in FIG. 9, when the lateral movement speed is increased to the lateral movement speed of 0.2 m / s, which showed good operation in FIG. 8, abnormal feedback to the control input as shown in FIG. 9 (a). Corresponding to this, it was found that the moment also oscillates unstablely as shown in FIG.

図9(a)および図9(b)に示した制御入力における振動が発生すると、ワークとして機能するホワイトボード消し920は、ホワイトボード910の面に密着せず、図9(c)のようにホワイトボード910の面に対して角度δの角度となるように振動する。この結果、ホワイトボード消し920には、制御不能な力が加えられてしまい、良好な動作が得られなくなった。図8および図9に示した実施例の結果を下記表1にまとめる。   When vibration is generated at the control input shown in FIGS. 9A and 9B, the whiteboard eraser 920 functioning as a workpiece does not adhere to the surface of the whiteboard 910, as shown in FIG. 9C. It vibrates at an angle δ with respect to the surface of the whiteboard 910. As a result, an uncontrollable force is applied to the whiteboard eraser 920 and a good operation cannot be obtained. The results of the examples shown in FIGS. 8 and 9 are summarized in Table 1 below.

すなわち、本発明では、ロボット手先と環境の接触剛性,粘性また慣性を制御することによって接触力と速度の関係を示すインピーダンス制御方式、拘束空間の力・モーメントの制御と自由空間の位置・姿勢の制御を軸方向に振り分けることによって所望の接触力やモーメントと動きを制御するハイブリッド制御方式に加え、滑り摩擦力による外乱に対応でき、さらに自由空間に定義される変数系と拘束空間に定義される変数系とにまたがる制御演算の再帰性を制限することにより自由空間の制御力・運動と拘束空間の制御力・運動とを非干渉化させることが可能となり、ハイブリッド制御の有効性を最大限に利用しながら、点接触、線接触、面接触のすべての接触作業に対応でき、さらに動作速度および外力の変動などに柔軟に対応可能な高速高精度なロボットの接触作業の制御技術を提供することが可能となる。   In other words, in the present invention, an impedance control system that shows the relationship between contact force and speed by controlling the contact stiffness, viscosity, and inertia of the robot hand and the environment, control of the force / moment of the constrained space, and the position / posture of the free space. In addition to the hybrid control system that controls the desired contact force, moment, and movement by distributing the control in the axial direction, it can respond to disturbances caused by sliding friction force, and is further defined in the variable system and constraint space defined in free space By limiting the recursiveness of control operations across variable systems, it becomes possible to decouple the control force / motion of free space and the control force / motion of constrained space, thereby maximizing the effectiveness of hybrid control. Can be used for all contact operations such as point contact, line contact, and surface contact while being used, and can flexibly respond to fluctuations in operating speed and external force. Providing a fast high-precision control techniques contact working robot becomes possible.

本発明によれば、特に産業用ロボットに対して高速高精度な接触作業を実現できるので作業効率を大幅にアップでき、産業用ロボットの作業性を著しく改善することができる。また、本発明は、ロボットアームばかりではなく、脚式ロボットの脚と、地面との接触制御にも適用できるため、福祉ロボット、レスキュー用ロボット、農作業ロボット、閉鎖空間内のメンテナンス用ロボットなどの多分野における適用が可能である。   According to the present invention, it is possible to realize a high-speed and high-precision contact operation especially for an industrial robot, so that the work efficiency can be greatly increased, and the workability of the industrial robot can be remarkably improved. Further, the present invention can be applied not only to the robot arm but also to contact control between the leg of the legged robot and the ground, so that there are many such as a welfare robot, a rescue robot, an agricultural robot, and a maintenance robot in a closed space. Application in the field is possible.

100…ロボットアーム、112…固定部、114…第1関節、116…第2関節、118…第3関節、120…第4関節、122…第5関節、124…第6関節、126…手先、128、130、132、134、136、138…アーム、400…制御ポリシー、410…関係ダイアグラム、500…制御装置、502…加減算部、504…切換え行列設定部、506…姿勢成分分離部、508…加減算部、…510…行列設定部、512…加算部、514…加減算部、516…切換え行列設定部、518…加減算部、520…切換え行列設定部、522…加算部、524…逆運動学計算部、530…姿勢統合部、532…位置/姿勢制御部、534…姿勢成分分離部、536…加算部、538…モータ制御部、540…力制御部、542…力変化量変換部、544…モーメント変化量制御部、546…モーメント変化量変換部、600…ロボット制御システム、610…ディスプレイ装置、612…キーボード、614…マウス、620…制御装置、622…入出力インタフェース、624…切換え行列計算部、626…目標値格納部、628…位置姿勢制御部、630…力・モーメント制御部、632…ポリシー選択部、634…制御出力統合部、638…インタフェース部、640…モータドライバ列、650…ロボット DESCRIPTION OF SYMBOLS 100 ... Robot arm, 112 ... Fixed part, 114 ... 1st joint, 116 ... 2nd joint, 118 ... 3rd joint, 120 ... 4th joint, 122 ... 5th joint, 124 ... 6th joint, 126 ... Hand tip, 128, 130, 132, 134, 136, 138 ... arm, 400 ... control policy, 410 ... relation diagram, 500 ... control device, 502 ... addition / subtraction unit, 504 ... switching matrix setting unit, 506 ... posture component separation unit, 508 ... Addition / subtraction unit, 510 ... matrix setting unit, 512 ... addition unit, 514 ... addition / subtraction unit, 516 ... switching matrix setting unit, 518 ... addition / subtraction unit, 520 ... switching matrix setting unit, 522 ... addition unit, 524 ... inverse kinematic calculation , 530 ... posture integration unit, 532 ... position / posture control unit, 534 ... posture component separation unit, 536 ... addition unit, 538 ... motor control unit, 540 ... force control unit, 54 ... Force change amount conversion unit, 544 ... Moment change amount control unit, 546 ... Moment change amount conversion unit, 600 ... Robot control system, 610 ... Display device, 612 ... Keyboard, 614 ... Mouse, 620 ... Control device, 622 ... On Output interface, 624 ... switching matrix calculation unit, 626 ... target value storage unit, 628 ... position and orientation control unit, 630 ... force / moment control unit, 632 ... policy selection unit, 634 ... control output integration unit, 638 ... interface unit, 640 ... Motor driver train, 650 ... Robot

Claims (15)

複数の関節を含むロボットの運動を制御するロボット制御システムであって、
前記ロボットの先端の位置、姿勢、力制御値、およびモーメント制御値についての目標値を取得する手段と、
取得した目標位置および目標姿勢を読出し、前記目標位置に対して切換え行列を適用して力を反映させた仮想目標位置を取得すると共に、前記目標姿勢に対して切換え行列を適用し、姿勢の直交座標成分ごとに分離してモーメントを反映させた仮想目標姿勢を取得する手段と、
取得した前記力制御値および前記モーメント制御値を読出し、運動の干渉および制御入力の干渉を自由空間と拘束空間との間の行列要素に関して、運動の干渉を排除する制御ケース、制御入力の干渉を排除する制御ケースとして構成した制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御する手段と、
前記仮想目標位置および前記仮想目標姿勢から逆運動学計算により計算された前記関節の角度変化および前記力・モーメントの変化量に基づいて前記ロボットに対する制御信号を生成する手段と、
前記ロボットの関節角、前記力および前記モーメントの変化量をフィードバックして前記仮想目標位置、前記仮想目標姿勢の生成を線形計算に帰着させる手段と
を含むロボット制御システム。
A robot control system for controlling the motion of a robot including a plurality of joints,
Means for obtaining a target value for the position, posture, force control value, and moment control value of the tip of the robot;
Read the acquired target position and target posture, apply a switching matrix to the target position to obtain a virtual target position reflecting force, apply a switching matrix to the target posture, and orthogonalize the posture Means for acquiring a virtual target posture that reflects moments separately for each coordinate component;
The obtained force control value and the moment control value are read out, and the interference of the motion and the interference of the control input regarding the matrix element between the free space and the constrained space are controlled to eliminate the interference of the motion and the interference of the control input. Means for controlling force / moment based on hybrid control by eliminating recursive calculation between force / moment and position / posture based on control policy configured as a control case to be excluded;
Means for generating a control signal for the robot based on an angular change of the joint and an amount of change of the force / moment calculated by inverse kinematics calculation from the virtual target position and the virtual target posture;
Means for feeding back the generation of the virtual target position and the virtual target attitude to linear calculation by feeding back the joint angle of the robot, the force and the amount of change of the moment.
前記力・モーメントを制御する手段は、前記ロボットの位置、姿勢、力、モーメント制御を前記ロボットの先端の加速度値を使用して前記ロボットの先端の運動を制御するための力およびモーメントを生成する手段を含む、請求項1に記載のロボット制御システム。   The means for controlling the force / moment generates a force and a moment for controlling the movement of the tip of the robot by using the acceleration value of the tip of the robot for controlling the position, posture, force and moment of the robot. The robot control system according to claim 1, comprising means. 前記力およびモーメントを生成する手段は、前記制御ポリシーに応じて、力・モーメントと位置・姿勢との間の非線形性に基づく再帰計算による干渉を排除するように、前記ハイブリッド制御の演算項目を切換える、請求項1または2に記載のロボット制御システム。   The means for generating the force and moment switches the calculation items of the hybrid control in accordance with the control policy so as to eliminate interference caused by recursive calculation based on nonlinearity between the force / moment and the position / posture. The robot control system according to claim 1 or 2. 前記力・モーメントを制御する手段は、外部センサからの摩擦力を前記ハイブリッド制御に反映する、請求項1〜3のいずれか1項に記載のロボット制御システム。   The robot control system according to claim 1, wherein the means for controlling the force / moment reflects a frictional force from an external sensor in the hybrid control. 複数の関節を含むロボットの運動を制御するロボット制御方法であって、
前記ロボットの先端の位置、姿勢、力制御値、およびモーメント制御値についての目標値を設定するステップと、
設定された目標位置および目標姿勢を読出し、前記目標位置に対して切換え行列を適用して力を反映させた仮想目標位置を取得すると共に、前記目標姿勢に対して切換え行列を適用し、姿勢の直交座標成分ごとに分離してモーメントを反映させた仮想目標姿勢を取得するステップと、
取得した前記力制御値および前記モーメント制御値を読出し、運動の干渉および制御入力の干渉を自由空間と拘束空間との間の行列要素に関して、運動の干渉を排除する制御ケース、制御入力の干渉を排除する制御ケースとした制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御するステップと、
前記仮想目標位置および前記仮想目標姿勢から逆運動学計算により計算された前記関節の角度変化および前記力・モーメントの変化量に基づいて前記ロボットに対する制御信号を生成するステップと、
前記ロボットの関節角、前記力および前記モーメントの変化量をフィードバックして前記仮想目標位置、前記仮想目標姿勢の生成を線形計算に帰着させるステップと
を含むロボット制御方法。
A robot control method for controlling movement of a robot including a plurality of joints,
Setting a target value for the position, posture, force control value, and moment control value of the tip of the robot;
Read the set target position and target posture, apply a switching matrix to the target position to obtain a virtual target position reflecting force, apply a switching matrix to the target posture, Obtaining a virtual target posture that reflects each moment by separating each orthogonal coordinate component;
The obtained force control value and the moment control value are read out, and the interference of the motion and the interference of the control input regarding the matrix element between the free space and the constrained space are controlled to eliminate the interference of the motion and the interference of the control input. A step of controlling force / moment based on hybrid control by eliminating recursive calculation between force / moment and position / posture based on the control policy to be excluded; and
Generating a control signal for the robot based on the angle change of the joint and the amount of change of the force / moment calculated by inverse kinematics calculation from the virtual target position and the virtual target posture;
Feedback the amount of change of the joint angle, the force, and the moment of the robot to reduce the generation of the virtual target position and the virtual target posture to a linear calculation.
前記力・モーメントを制御するステップは、前記ロボットの位置、姿勢、力、モーメント制御を前記ロボットの先端の加速度値を使用して前記ロボットの先端の運動を制御するための力およびモーメントを生成するステップを含む、請求項5に記載のロボット制御方法。 The step of controlling the force / moment generates a force and a moment for controlling the movement of the tip of the robot by using the acceleration value of the tip of the robot to control the position, posture, force and moment of the robot. The robot control method according to claim 5 , comprising steps. 前記力およびモーメントを生成するステップは、前記制御ポリシーに応じて、力・モーメントと位置・姿勢との間の非線形性に基づく再帰計算による干渉を排除するように、前記ハイブリッド制御の演算項目を異ならせるステップを含む、請求項5または6に記載のロボット制御方法。   In the step of generating the force and moment, the calculation items of the hybrid control are different according to the control policy so as to eliminate interference caused by recursive calculation based on nonlinearity between the force / moment and the position / posture. The robot control method according to claim 5, further comprising the step of: 前記力・モーメントを制御するステップは、外部センサからの摩擦力を前記ハイブリッド制御に反映して前記力およびモーメントを生成するステップを含む、請求項5〜7のいずれか1項に記載のロボット制御方法。   The robot control according to claim 5, wherein the step of controlling the force / moment includes a step of generating the force and the moment by reflecting a frictional force from an external sensor in the hybrid control. Method. 複数の関節を含むロボットの運動を制御するための制御装置であって、
ロボットの先端の位置、姿勢、力制御値、およびモーメント制御値についての目標値を取得して格納する目標値格納部と、
前記目標値格納部から目標位置および目標姿勢を読出し、前記目標位置に対して切換え行列を適用して力を反映させた仮想目標位置を取得すると共に、前記目標姿勢に対して切換え行列を適用し、姿勢の直交座標成分ごとに分離してモーメントを反映させた仮想目標姿勢を取得する位置姿勢制御部と、
前記目標値格納部から前記力制御値および前記モーメント制御値を読出し、運動の干渉および制御入力の干渉を自由空間と拘束空間との間の行列要素に関して、運動の干渉を排除する制御ケース、制御入力の干渉を排除する制御ケースとした制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御する力・モーメント制御部と、
前記仮想目標位置および前記仮想目標姿勢から逆運動学計算により計算された前記関節の角度変化および前記力・モーメントの変化量に基づいて前記ロボットに対する制御信号を生成する制御出力統合部と
を含む、制御装置。
A control device for controlling the motion of a robot including a plurality of joints,
A target value storage unit for acquiring and storing target values for the position, posture, force control value, and moment control value of the tip of the robot;
A target position and a target posture are read from the target value storage unit, a virtual target position reflecting force is applied by applying a switching matrix to the target position, and a switching matrix is applied to the target posture. A position / orientation control unit that acquires a virtual target attitude that reflects moment by separating each orthogonal coordinate component of the attitude;
A control case and control for reading out the force control value and the moment control value from the target value storage unit, and eliminating the interference of motion with respect to the matrix elements between the free space and the constrained space as interference of motion and interference of the control input A force / moment control unit that controls force / moment based on hybrid control by eliminating recursive calculation between force / moment and position / posture based on a control policy that eliminates input interference, and
A control output integration unit that generates a control signal for the robot based on an angle change of the joint and a change amount of the force / moment calculated by inverse kinematics calculation from the virtual target position and the virtual target posture; Control device.
さらに、前記ロボットの関節角、前記力および前記モーメントの変化量をフィードバックして前記仮想目標位置、前記仮想目標姿勢、力、およびモーメントの生成を線形計算に帰着させるインタフェース部を含む、請求項9に記載の制御装置。   The system further includes an interface unit that feeds back a change amount of the joint angle, the force, and the moment of the robot to reduce the generation of the virtual target position, the virtual target posture, the force, and the moment to a linear calculation. The control device described in 1. 前記力・モーメント制御部は、前記ロボットの位置、姿勢、力、モーメント制御を前記ロボットの先端の加速度値を使用して前記ロボットの先端の運動を制御するための力およびモーメントを生成する、請求項9または10に記載のロボット制御システム。   The force / moment control unit generates a force and a moment for controlling the movement of the tip of the robot by using the acceleration value of the tip of the robot for controlling the position, posture, force, and moment of the robot. Item 11. The robot control system according to Item 9 or 10. 前記力・モーメント制御部は、前記制御ポリシーに応じて、力・モーメントと位置・姿勢との間の非線形性に基づく再帰計算による干渉を排除するように、前記ハイブリッド制御の演算項目が異なるアルゴリズムを管理する、請求項9〜11のいずれか1項に記載の制御装置。   In accordance with the control policy, the force / moment control unit uses an algorithm with different calculation items of the hybrid control so as to eliminate recursive calculation interference based on nonlinearity between force / moment and position / posture. The control device according to any one of claims 9 to 11, which is managed. 前記力・モーメントを制御する手段は、外部センサからの摩擦力を前記ハイブリッド制御に反映する、請求項9〜12のいずれか1項に記載の制御装置。   The control device according to claim 9, wherein the means for controlling the force / moment reflects a frictional force from an external sensor in the hybrid control. 前記制御装置は、前記ロボットに対する制御信号を生成する情報処理装置または集積回路である、請求項9〜13のいずれか1項に記載の制御装置。   The control device according to claim 9, wherein the control device is an information processing device or an integrated circuit that generates a control signal for the robot. 複数の関節を含むロボットの運動を制御するための制御装置が実行する装置実行可能なプログラムであって、前記プログラムは、前記制御装置を、
ロボットの先端の位置、姿勢、力制御値、およびモーメント制御値についての目標値を取得して格納する目標値格納手段、
前記目標値格納手段から目標位置および目標姿勢を読出し、前記目標位置に対して切換え行列を適用して力を反映させた仮想目標位置を取得すると共に、前記目標姿勢に対して切換え行列を適用し、姿勢の直交座標成分ごとに分離してモーメントを反映させた仮想目標姿勢を取得する位置姿勢制御手段、
前記目標値格納手段から前記力制御値および前記モーメント制御値を読出し、運動の干渉および制御入力の干渉を自由空間と拘束空間との間で、運動の干渉を排除する制御ケース、制御入力の干渉を排除する制御ケースとした制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御する手段と、
運動の干渉および制御入力の干渉の方向を分離した制御ケースとして構成した制御ポリシーに基づいて力・モーメントと位置・姿勢との間における再帰的計算を排除してハイブリッド制御に基づき力・モーメントを制御する力モーメント制御手段、
前記仮想目標位置および前記仮想目標姿勢から逆運動学計算により計算された前記関節の角度変化および前記力・モーメントの変化量に基づいて前記ロボットに対する制御信号を生成する制御出力統合手段
として機能させ、
前記力・モーメント制御手段は、前記ロボットの位置、姿勢、力、モーメント制御を前記ロボットの先端の加速度値を使用して前記ロボットの先端の運動を制御するための力およびモーメントを生成する、プログラム。
A device executable program executed by a control device for controlling the motion of a robot including a plurality of joints, the program comprising:
Target value storage means for acquiring and storing target values for the position, posture, force control value, and moment control value of the tip of the robot;
A target position and a target posture are read from the target value storage means, a switching matrix is applied to the target position to obtain a virtual target position reflecting force, and a switching matrix is applied to the target posture. , A position and orientation control means for acquiring a virtual target posture that is separated for each orthogonal coordinate component of the posture and reflects the moment,
A control case that reads out the force control value and the moment control value from the target value storage means , eliminates the interference of motion between the free space and the constraint space, and the interference of the control input. Means for controlling force / moment based on hybrid control by eliminating recursive calculation between force / moment and position / posture based on control policy as control case to eliminate
Control force / moment based on hybrid control by eliminating recursive calculation between force / moment and position / posture based on control policy configured as a control case that separates the direction of motion interference and control input interference Force moment control means,
Functioning as a control output integration means for generating a control signal for the robot based on the angle change of the joint and the amount of change of the force / moment calculated by inverse kinematics calculation from the virtual target position and the virtual target posture;
The force / moment control means generates a force and a moment for controlling the movement of the tip of the robot by using the acceleration value of the tip of the robot for controlling the position, posture, force and moment of the robot. .
JP2009219150A 2009-09-24 2009-09-24 Robot control system, robot control method, robot control apparatus, and program applied to high-speed and high-precision contact work Expired - Fee Related JP5569953B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009219150A JP5569953B2 (en) 2009-09-24 2009-09-24 Robot control system, robot control method, robot control apparatus, and program applied to high-speed and high-precision contact work

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009219150A JP5569953B2 (en) 2009-09-24 2009-09-24 Robot control system, robot control method, robot control apparatus, and program applied to high-speed and high-precision contact work

Publications (2)

Publication Number Publication Date
JP2011067884A JP2011067884A (en) 2011-04-07
JP5569953B2 true JP5569953B2 (en) 2014-08-13

Family

ID=44013693

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009219150A Expired - Fee Related JP5569953B2 (en) 2009-09-24 2009-09-24 Robot control system, robot control method, robot control apparatus, and program applied to high-speed and high-precision contact work

Country Status (1)

Country Link
JP (1) JP5569953B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5266412B2 (en) * 2011-08-10 2013-08-21 ファナック株式会社 Numerical controller system with multi-core processor
CN102914998B (en) * 2012-11-20 2018-03-09 常州数控技术研究所 The axle digital control system in open type of built-in small four
CN104626163B (en) * 2013-11-14 2016-08-31 沈阳新松机器人自动化股份有限公司 The overall system control of orthopaedics manipulator
CN116985145B (en) * 2023-09-26 2023-12-29 西北工业大学太仓长三角研究院 Redundant bias mechanical arm tail end compliant control method based on force-position hybrid control

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2819456B2 (en) * 1995-10-09 1998-10-30 セイコー精機株式会社 General purpose polishing equipment

Also Published As

Publication number Publication date
JP2011067884A (en) 2011-04-07

Similar Documents

Publication Publication Date Title
JP4595727B2 (en) External force estimation system, external force estimation method, and computer program
CN106945043B (en) Multi-arm cooperative control system of master-slave teleoperation surgical robot
EP2895305B1 (en) Constraining robotic manipulators with redundant degrees of freedom
US8977392B2 (en) Robot control device, robot control method, robot control program, and robot system
US8140189B2 (en) Apparatus and method for computing operational-space physical quantity
KR102003216B1 (en) Motor control and / or adjustment for the robot
JP5011525B2 (en) Inverse kinematics of 6-degree-of-freedom robot arm by sequential search method, and robot system, control method, and program using the same
KR102312368B1 (en) System, method for controlling redundant robot, and a recording medium having computer readable program for executing the method
KR20180059888A (en) Robot teaching method and robot arm control device
US10335946B2 (en) Compositional impedance programming for robots
JP7124440B2 (en) Robot controller and robot system
CN110774280A (en) Robot system
JP5569953B2 (en) Robot control system, robot control method, robot control apparatus, and program applied to high-speed and high-precision contact work
CN112672857A (en) Route generation device, route generation method, and route generation program
US20210402596A1 (en) Control Method for Robot and Robot System
Parga et al. Tele-manipulation of robot arm with smartphone
KR101227092B1 (en) Motion Control System and Method for Robot
Parga et al. Smartphone-based human machine interface with application to remote control of robot arm
JP2008200763A (en) Control device for manipulator for working
Gienger et al. Exploiting task intervals for whole body robot control
JP2016221653A (en) Robot control device and robot system
Mortimer et al. Searching Baxter's URDF robot joint and link tree for active serial chains
WO2017026045A1 (en) Hand-force measurement device, hand-force measurement method, and hand-force measurement program
CN113474130A (en) Method and system for executing preset task by using robot
KR102643316B1 (en) Detecting device and method for calculating amount of impact of robot manipulator

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130806

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20130919

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20130919

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20130919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140217

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140610

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140619

R150 Certificate of patent or registration of utility model

Ref document number: 5569953

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees