JP3068577B2 - Control device for articulated robot - Google Patents

Control device for articulated robot

Info

Publication number
JP3068577B2
JP3068577B2 JP34697898A JP34697898A JP3068577B2 JP 3068577 B2 JP3068577 B2 JP 3068577B2 JP 34697898 A JP34697898 A JP 34697898A JP 34697898 A JP34697898 A JP 34697898A JP 3068577 B2 JP3068577 B2 JP 3068577B2
Authority
JP
Japan
Prior art keywords
joint
angle
joints
nth
manipulator
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
JP34697898A
Other languages
Japanese (ja)
Other versions
JP2000167789A (en
Inventor
成敏 塩谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Heavy Industries Ltd
Original Assignee
Mitsubishi Heavy Industries Ltd
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 Mitsubishi Heavy Industries Ltd filed Critical Mitsubishi Heavy Industries Ltd
Priority to JP34697898A priority Critical patent/JP3068577B2/en
Publication of JP2000167789A publication Critical patent/JP2000167789A/en
Application granted granted Critical
Publication of JP3068577B2 publication Critical patent/JP3068577B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Manipulator (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、多関節ロボットの
制御装置に係り、特に、冗長な自由度を持つ多関節ロボ
ットの関節角度を算出する制御装置に関する。
The present invention relates to a control device for an articulated robot, and more particularly to a control device for calculating a joint angle of an articulated robot having redundant degrees of freedom.

【0002】[0002]

【従来の技術】図1は、一般的な冗長な自由度を持つ多
関節ロボット(多関節マニピュレータ)1cを示す。こ
こでは、ロボットとマニピュレータは同じ意味で用い
る。この多関節マニピュレータ1cは、各関節1a,1
p,1q,1r・・・1dが多数個のリンク1bで連結
され、各関節1a,1p,1q,1r・・・1dは、そ
れぞれ関節の回転させるためのモータ(図示せず)を内
臓している。多関節マニピュレータ1cは、架台1eに
根元関節である第1関節1aが固定され、電源1fによ
り駆動するコントローラ1gから各関節1a,1p,1
q,1r・・・1dへの目標位置指令が通信インターフ
ェイス1hを通して各関節内のモータに伝達され駆動さ
れるようになっている。
2. Description of the Related Art FIG. 1 shows a general articulated robot (articulated manipulator) 1c having redundant redundancy. Here, the terms robot and manipulator are used interchangeably. This multi-joint manipulator 1c includes the joints 1a, 1
1d are connected by a number of links 1b, and each joint 1a, 1p, 1q, 1r... 1d includes a motor (not shown) for rotating the joint. ing. In the multi-joint manipulator 1c, a first joint 1a as a base joint is fixed to a gantry 1e, and each joint 1a, 1p, 1 is controlled by a controller 1g driven by a power supply 1f.
The target position command to q, 1r... 1d is transmitted to and driven by the motor in each joint through the communication interface 1h.

【0003】このような構造の多関節マニピュレータ1
cにおいて、先端関節1dの位置を制御するとき、関節
数が7個以上の場合は、従来は、「コロナ社 ロボット
制御基礎理論 吉川恒夫著、p57−58、p22
2」、「多関節マニピュレータの冗長性分解制御、広瀬
茂男著、自動計測学会論文集Vol.24, No.9,p
954−p959,1988」等に示されているよう
に、一般的には疑似ヤコビ行列を使って式1によりマニ
ピュレータ1cを構成する全ての目標関節位置を計算
し、式2により求めた目標関節位置から各関節の目標関
節角度を計算するようにしていた。具体的には以下の通
りである。 q=Jv + v + (I-J v + J v )k (q=[q1,q2, ・・・・・・, q N ]) (式1) q= ∫q dt (式2) 但し、qは第1から第N関節の移動速度行列であり、J
v + は疑似ヤコビ逆行列であり、J v はヤコビ逆行列で
あり、Iは単位行列であり、kは任意の定数ベクトル行
列であり、vは先端の関節の移動速度行列であり、qは
第1から第N関節の位置行列である。
[0003] The articulated manipulator 1 having such a structure.
c, when controlling the position of the tip joint 1d, if the number of joints is 7 or more, the conventional method is described in "Corona Robot Fundamental Theory of Robot Control Tsuneo Yoshikawa, p57-58, p22
2 "," Redundancy Decomposition Control of Articulated Manipulators, Shigeo Hirose, Transactions of the Society of Automatic Measurement Engineers, Vol. 24, No. 9, p.
954-p959, 1988 ", generally, all target joint positions constituting the manipulator 1c are calculated by Equation 1 using a pseudo Jacobian matrix, and the target joint positions obtained by Equation 2 are calculated. Calculates the target joint angle of each joint from. Specifically, it is as follows. q = J v + v + (IJ v + J v ) k (q = [q 1, q 2, ... , q N ]) (Equation 1) q = ∫q dt (Equation 2) , Q are the moving speed matrices of the first to Nth joints,
v + is a pseudo-Jacobi inverse matrix, J v is a Jacobian inverse matrix, I is an identity matrix, k is an arbitrary constant vector matrix, v is a moving velocity matrix of a tip joint, and q is It is a position matrix of the 1st to Nth joints.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、上述の
従来の方法において、疑似ヤコビ行列は、ロボットの関
節数が増えるほど行列のマトリックスが大きくなり、実
時間で計算するには高速の計算機を必要とする。また、
図2に示すような狭隘部である管2aにマニピュレータ
2bを挿入する場合、先端の関節2cを管2aの中心に
沿って動かすことになるが、この場合、疑似ヤコビ行列
を用いた従来の方法を用いると、マニピュレータ2bの
一部の関節2dが管2aと接触し挿入できなくなること
がある。これは、管内挿入ではマニピュレータの関節が
動く範囲が制限されるので、管との接触を考慮して関節
の角度を補正するなどの処理が必要となるからである。
しかしながら、この補正処理を上述の式1に追加するよ
うな提案はこれまでなされておらず、問題であった。
However, in the above-mentioned conventional method, the pseudo Jacobi matrix becomes larger as the number of joints of the robot increases, and a high-speed computer is required to calculate in real time. I do. Also,
When the manipulator 2b is inserted into a narrow tube 2a as shown in FIG. 2, the joint 2c at the distal end is moved along the center of the tube 2a. In this case, a conventional method using a pseudo Jacobian matrix is used. Is used, some joints 2d of the manipulator 2b may come into contact with the tube 2a and become unable to be inserted. This is because the insertion range of the manipulator in the insertion into the pipe is limited, so that it is necessary to perform processing such as correcting the angle of the joint in consideration of the contact with the pipe.
However, no proposal has been made so far to add this correction processing to the above-described equation 1, which has been a problem.

【0005】そこで本発明は、従来からの問題点を解決
するためになされたものであり、関節角度を計算する際
の計算量を大幅に低減させることができると共に狭隘部
内にも挿入可能な多関節ロボットの制御装置を提供する
ことを目的としている。
SUMMARY OF THE INVENTION The present invention has been made to solve the conventional problems, and can greatly reduce the amount of calculation when calculating the joint angle and can be inserted into a narrow part. An object of the present invention is to provide a control device for a joint robot.

【0006】[0006]

【課題を解決するための手段】上記の目的を達成するた
めに本発明は、モータを内臓したN個の各関節をリンク
を介して連結した多関節ロボットの制御装置であって、
この制御装置が、根元関節である第1関節を他の関節は
固定した状態で所定の微少角度Δθ1 だけ回転させると
き、先端関節である第N関節の目標位置をD(D1、2、
3 )とし、第1関節を回転させる前の第N関節の現在
位置をP(P1、2、3 )とし、第1関節をθ回転させ
たときの第N関節の位置の変化量をΔP(ΔP1、ΔP2、
ΔP3 )とし、第1関節をθ回転させたときの第N関節
の位置と目標位置までの距離の2乗値をEとし、ΔP1
=f1 (θ)、ΔP2 =f2 (θ)、ΔP3 =f
3 (θ)とし、E=(D1 −P1 −f1 (θ))2
(D2 −P2 −f2 (θ))2 +(D3 −P3 −f
3 (θ))2 を最少とする第1関節の回転量θを最小2
乗法により求めて微少角度Δθ1 とする第1関節の角度
演算手段と、第1関節に隣り合う第2関節から第N関節
の各々において、各関節を他の関節を固定した状態で所
定の微少角度Δθだけ回転させ、この微少角度Δθを上
記の第1関節の回転角度演算手段と同様に最小2乗法に
より求めて微少角度Δθとする第2関節乃至第N関節の
角度演算手段と、を有し、Eの値が所定のしきい値以下
となるまで第1関節乃至第N関節の角度演算手段が演算
を繰り返して行い、各関節の回転角度を算出することを
特徴としている。このように、本発明によれば、ロボッ
トの先端関節が目標位置に距離的に近づくような関節角
度を最小2乗法により1軸づつ求め、求めた目標角度と
現在の関節角度の差に比例した量を1軸づつ関節を回転
させることによって、最終的に先端の関節が目標位置に
達するようにしている。このため、関節角度を計算する
時の掛け算数(計算)量は、従来の逆ヤコビ行列を用い
た方法ではロボットを構成する関節数の2乗で増えるの
に対し、本発明では、関節数に比例して増えるため、計
算量が著しく減少する。この結果、本発明によれば、ロ
ボットを構成する関節数が多くなればなるほど、従来の
方法と比較してより大きく関節角度の計算量が減少する
ことになる。
In order to achieve the above object, the present invention provides a control device for a multi-joint robot in which N joints each including a motor are connected via a link,
When the control device rotates the first joint, which is the root joint, by a predetermined minute angle Δθ 1 with the other joints fixed, the target position of the N-th joint, which is the distal joint, is set to D (D 1, D 2). ,
D 3 ), the current position of the N-th joint before rotating the first joint is P (P 1, P 2, P 3 ), and the change in the position of the N-th joint when the first joint is rotated θ The amount is ΔP (ΔP1 , ΔP2 ,
ΔP 3 ), and the square value of the distance between the position of the Nth joint and the target position when the first joint is rotated by θ is E, and ΔP 1
= F 1 (θ), ΔP 2 = f 2 (θ), ΔP 3 = f
3 (θ) and E = (D 1 −P 1 −f 1 (θ)) 2 +
(D 2 −P 2 −f 2 (θ)) 2 + (D 3 −P 3 −f
3 (theta)) 2 the minimum rotation amount theta of the first joint to a minimum 2
A first joint angle computing means to minute angle [Delta] [theta] 1 and obtained by multiplication in each of the N joint from the second joint adjacent to the first joint, the predetermined minute in a state where the joints were fixed other joints And a second to Nth joint angle calculation means for obtaining the minute angle Δθ by the least square method in the same manner as the first joint rotation angle calculation means. The angle calculation means of the first to Nth joints repeatedly performs the calculation until the value of E becomes equal to or less than a predetermined threshold value, and calculates the rotation angle of each joint. As described above, according to the present invention, the joint angle at which the distal end joint of the robot approaches the target position in a distance is obtained by the least squares method for each axis, and is proportional to the difference between the obtained target angle and the current joint angle. By rotating the joint by one axis at a time, the joint at the distal end finally reaches the target position. Therefore, the multiplication (calculation) amount when calculating the joint angle increases by the square of the number of joints constituting the robot in the conventional method using the inverse Jacobian matrix, whereas in the present invention, the number of joints Since it increases in proportion, the amount of calculation is significantly reduced. As a result, according to the present invention, as the number of joints constituting the robot increases, the amount of calculation of the joint angle decreases more as compared with the conventional method.

【0007】また、本発明においては、さらに、各関節
の表面に設けられた接触センサと、接触センサがその関
節に接続されたリンク部が周囲の障害物に接触したこと
を検知した場合、その関節の回転角度を接触を回避する
方向に所定の微小角度だけ駆動させる接触回避手段とを
有することが好ましい。これにより、ロボットの駆動中
に、マニピュレータの関節の一部が周囲の障害物に接触
したら、その関節を接触を回避する方向に少しづつ回す
簡単な障害物回避ロジックを容易に組み込め、そのこと
により、結果的に障害物の多い管内にもマニピュレータ
を挿入できる。これに対し、従来のヤコビ行列ではマニ
ピュレータの先端位置が目標位置に近づくよう全関節の
目標角度を一括して求めてしまうため、障害物との回避
ロジックを容易に組み込むことができず、障害物の多い
管内にもマニピュレータを挿入するのが難しい。
Further, in the present invention, when a contact sensor provided on the surface of each joint and the contact sensor detects that a link portion connected to the joint has contacted a surrounding obstacle, It is preferable to have contact avoidance means for driving the rotation angle of the joint by a predetermined minute angle in a direction to avoid contact. This makes it easy to incorporate simple obstacle avoidance logic that turns the joint little by little in the direction to avoid contact if a part of the manipulator's joint comes into contact with surrounding obstacles while driving the robot. As a result, the manipulator can be inserted into a pipe having many obstacles. In contrast, in the conventional Jacobian matrix, the target angles of all the joints are collectively determined so that the tip position of the manipulator approaches the target position. It is difficult to insert a manipulator even in a pipe with many parts.

【0008】[0008]

【発明の実施の形態】次に、図1、図3及び図4によ
り、本発明の第1実施形態を説明する。図1は、本発明
が適用可能な一般的な多数個の関節を連結したN自由度
のマニピュレータを示す概略図であり、図3は、本発明
の第1実施形態による関節の回転角度を算出するための
制御用フローチャートであり、図4は、本発明の第1実
施形態を8自由度のマニピュレータに適用したときの関
節の動作状況を示す概略図である。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, a first embodiment of the present invention will be described with reference to FIGS. FIG. 1 is a schematic diagram showing an N-degree-of-freedom manipulator connecting a large number of general joints to which the present invention can be applied, and FIG. 3 calculates a joint rotation angle according to the first embodiment of the present invention. FIG. 4 is a schematic diagram showing a joint operation state when the first embodiment of the present invention is applied to a manipulator having eight degrees of freedom.

【0009】図3の制御用フローチャートより、本発明
の第1実施形態による関節の目標角度を決定するための
関節角度算出方法(アルゴリズム)を、図1に示すN自
由度の多関節マニピュレータを例にして説明する。図3
に示すように、関節の目標角度を決定する際には、オペ
レータが、マニピュレータ先端の関節1dの目標位置を
指定した後、根元の関節1aから先端の関節1dまで順
に1関節づつ、先端の関節1dの位置が目標位置に距離
的に近づくように個々の関節を少しずつ回転させ、目標
位置との誤差があるしきい値以下になるまで前述の処理
を繰り返すようにしている。以下、具体的に説明する。
先ず、図3のステップS1において、オペレータがコン
トローラ1gを使って、マニピュレータ1cの先端関節
1dの目標位置D(D1 、D2 、D3 )を入力する。こ
こで、D1 、D2 、D3 は、それぞれ目標位置Dのx,
y,z方向成分である。
A joint angle calculation method (algorithm) for determining a target angle of a joint according to the first embodiment of the present invention will be described with reference to the control flowchart of FIG. 3 by using an articulated manipulator having N degrees of freedom shown in FIG. This will be explained. FIG.
As shown in the figure, when the target angle of the joint is determined, the operator specifies the target position of the joint 1d at the tip of the manipulator, and then, one joint at a time from the joint 1a at the root to the joint 1d at the tip. The individual joints are rotated little by little so that the position 1d approaches the target position in terms of distance, and the above-described processing is repeated until the error from the target position becomes equal to or less than a certain threshold value. Hereinafter, a specific description will be given.
First, in step S1 of FIG. 3, the operator using the controller 1g, inputs the target position D of the tip joint 1d of the manipulator 1c (D 1, D 2, D 3). Here, D 1 , D 2 , and D 3 are x, at the target position D, respectively.
These are y and z direction components.

【0010】次に、ステップS2において、他の関節を
固定したまま、第1関節1a(最も根元の関節)だけを
微少角度Δθ1 だけ回転させる。この微少角度Δθ1
計算は以下のように行う。 (1) 第1関節をθ(<<1)回転させたときの第N関節
の位置の変化量をΔP(ΔP1、ΔP2、ΔP3 )とする。
ΔPは従来のx,y,z軸まわりの回転行列(多関節ロ
ボットの順キネマティクス)を使って求める。第1関節
を回転させる前の第N関節の現在位置をP(P1、2、
3 )とする。 (2) 第1関節をθ回転させたときの第N関節の位置と目
標位置までの距離の2乗値をEとすると、 E=(D1 −P1 −ΔP1 2 +(D2 −P2 −Δ
2 2 +(D3 −P3 −ΔP3 2 を最小にする第1関節の回転量θを最小2乗法で求め
る。この式中のΔP1、ΔP2、ΔP3 はθの関数であり、
ΔP1 =f1 (θ)、ΔP2 =f2 (θ)、ΔP 3 =f
3 (θ)と記述できる。これらを代入して上式を書き換
えると、 E=(D1 −P1 −f1 (θ))2 +(D2 −P2 −f
2 (θ))2 +(D3−P3 −f3 (θ))2 と表され
る。 (3) cosθ=1,sinθ=θの近似をして上式を単
純化し、θで偏微分した値を0とするθを求める。第1
関節の回転量Δθ1 は、このようにして求めたθに定数
K(K<1)を乗じた値、即ち、Δθ1 =Kθで求ま
る。次に、ステップS3において、他の関節を固定した
まま、第1関節1aに隣り合う第2関節1pを微少角度
Δθ2 だけ微少に回転させる。微少角度Δθ2 の計算方
法は、ステップS2と同様の要領で行う。以後、第3関
節1q、第4関節1rと先端関節である第N関節1dま
で同様の要領で回転させる。ステップS4は、第N関節
1dについての処理である。さらに、ステップS5にお
いて、先端の関節の現在位置と目標位置までの距離Eを
計算し、しきい値E0 以下か否かを判定し、以下でない
場合には、ステップS2に戻り、EがE0 以下となるま
で、ステップS2からステップS4の処理を繰り返す。
このようにして、最終的な各関節の目標回転角度が算出
される。
Next, in step S2, another joint is
While fixed, only the first joint 1a (the joint at the root)
Small angle Δθ1Just rotate. This small angle Δθ1of
The calculation is performed as follows. (1) Nth joint when the first joint is rotated by θ (<< 1)
ΔP (ΔP1,ΔP2,ΔPThree).
ΔP is the conventional rotation matrix around the x, y, and z axes (multi-joint ro
Bot's forward kinematics). 1st joint
Is the current position of the Nth joint before rotating1,P2,P
Three). (2) Position and eye of the Nth joint when the first joint is rotated by θ
Assuming that the square value of the distance to the target position is E, E = (D1−P1−ΔP1)Two+ (DTwo−PTwo−Δ
PTwo)Two+ (DThree−PThree−ΔPThree)Two Of the rotation of the first joint that minimizes
You. ΔP in this equation1,ΔP2,ΔPThreeIs a function of θ,
ΔP1= F1(Θ), ΔPTwo= FTwo(Θ), ΔP Three= F
Three(Θ). Rewrite the above equation by substituting these
E = (D1−P1−f1(Θ))Two+ (DTwo−PTwo−f
Two(Θ))Two+ (DThree−PThree−fThree(Θ))TwoIs represented
You. (3) By approximating cos θ = 1 and sin θ = θ,
Purify and obtain θ assuming that a value partially differentiated by θ is 0. First
Joint rotation amount Δθ1Is a constant to θ obtained in this way.
K (K <1), that is, Δθ1= Kθ
You. Next, in step S3, another joint was fixed.
While keeping the second joint 1p adjacent to the first joint 1a at a small angle
ΔθTwoRotate only slightly. Small angle ΔθTwoHow to calculate
The method is performed in the same manner as in step S2. Since then, the third Seki
The joint 1q, the fourth joint 1r, and the N-th joint 1d, which is the distal joint.
And rotate in the same way. Step S4 is the Nth joint
This is the process for 1d. Further, in step S5
And the distance E between the current position of the tip joint and the target position
Calculate and threshold E0Judge whether or not it is less than
In this case, the process returns to step S2, and0Until
Then, the processing from step S2 to step S4 is repeated.
In this way, the final target rotation angle of each joint is calculated
Is done.

【0011】図4は、8個全てピッチ軸(y軸まわりの
回転軸)で構成されたマニピュレータに対して、図4の
(4a)に示す状態で先端関節4hを目標位置4iに近
づけるときの、マニピュレータの動作状況を示したもの
であり、状態(4e)に示すように最終的に全関節を使
い先端関節4hの目標位置4iに移動できることがわか
る。関節4fはマニピュレータの根元関節であり、図3
の制御用フローチャートに示す処理により、関節4fか
ら関節4gと順に関節4hまで繰り返し関節が駆動され
る。
FIG. 4 shows a state in which the distal end joint 4h is brought closer to the target position 4i in the state shown in FIG. 4 (4a) for a manipulator composed of all eight pitch axes (rotation axes around the y axis). , The operation state of the manipulator, and it can be seen that as shown in the state (4e), all the joints can be finally used to move to the target position 4i of the distal joint 4h. The joint 4f is the base joint of the manipulator, and is shown in FIG.
By the processing shown in the control flowchart, the joint is repeatedly driven from the joint 4f to the joint 4g to the joint 4h in order.

【0012】本発明は、後述するように、自由度Nが大
きいほど従来方法に比べて計算量が小さくなる点で従来
法に比べて極めて有効である。以下、本発明と上述の式
1と式2で示される従来方法の計算量を比較する。 (比較時の前提条件)N個の関節を持つマニピュレータ
の先端関節を目標位置に移動させる場合の各関節角度の
計算量について比較する。算出時の計算は、ほとんどが
行列演算であるため、演算量は総掛け数で比較する。掛
け数は、マトリックスの成分を1個の文字で置き換えて
算出する。
As will be described later, the present invention is more effective than the conventional method in that the larger the degree of freedom N, the smaller the amount of calculation compared to the conventional method. Hereinafter, the amount of calculation between the present invention and the conventional methods represented by the above-described equations 1 and 2 will be compared. (Prerequisites for Comparison) The amount of calculation of each joint angle when the tip joint of a manipulator having N joints is moved to a target position will be compared. Most of the calculation at the time of calculation is a matrix operation, and the amount of calculation is compared by the total multiplier. The multiplier is calculated by replacing the components of the matrix with one character.

【0013】(従来方法と本発明との計算量の比較) (1) 従来の方法(コロナ社、ロボット制御基礎理論、吉
川恒夫著、p57−58,p222) 上述の式1中の行列間の計算(掛け算を有する部分)
は、下線部を引いた処理a(J v + v )と処理b( Jv
+ J v )の部分である。さらに、その計算に関連する掛
け算回数を示す。 q=Jv + v + (I-Jv + J v )k (q=[q1,q2, ・・・・・・, q N ]) (式1) 但し、qは第1関節1aから第N関節1dの移動速度行
列(N×1行列)であり、J v + は疑似ヤコビ逆行列
(3×N行列)であり、J v はヤコビ逆行列(N×3行
列)であり、vは先端の関節の移動速度行列(3×1行
列)であり、qは第1関節1aから第N関節1dの位置
行列(N×1行列)である。式1中のマトリクス間演算
の掛け算回数は、以下の通りとなる。 処理a:3N2 回(=N×1×3×N) 処理b:9N2 回(=3×N×N×3) マトリックス部分の合計回数:12N2
(Comparison of calculation amount between conventional method and the present invention) (1) Conventional method (Corona Corporation, Basic Robot Control Theory, Tsuneo Yoshikawa, pp. 57-58, p222) Calculation (part with multiplication)
Are the processing a (J v + v) and the processing b (J v
+ J v ). Further, the number of multiplications related to the calculation is shown. q = J v + v + ( I- J v + J v) k (q = [q 1, q 2, ······, q N]) ( Equation 1) where, q is the first joint 1a To the moving speed matrix (N × 1 matrix) of the Nth joint 1d, J v + is a pseudo Jacobian inverse matrix (3 × N matrix), J v is a Jacobian inverse matrix (N × 3 matrix), v is a moving speed matrix (3 × 1 matrix) of the distal end joint, and q is a position matrix (N × 1 matrix) of the first joint 1a to the Nth joint 1d. The number of multiplications of the inter-matrix operation in Equation 1 is as follows. Process a: 3N 2 times (= N × 1 × 3 × N) Process b: 9N 2 times (= 3 × N × N × 3) Total number of matrix portions: 12N 2 times

【0014】(2) 本発明 行列間の演算は、図3に示す制御用フローチャートのス
テップS2からステップS4に行われるものであり、ス
テップS2の項目(1) で具体的に記載したものにあた
る。図3のステップS2における処理をマトリクスRN
を使った式で記述すると以下の式3になり、計算の主要
部分であるマトリクスの掛け算の部分は、式3中の下線
部の処理c(R N ( ωN )RN-1N-1)・・ R33) R2
2)R11+Δθ1))と処理d(R11+Δθ1))の部分
である。処理cでは、N個のマトリクスを掛け合わせて
3×3行列をつくり、処理dでは処理cで求めた3×3
行列と位置行列P1 と掛け算処理である。さらに、処理
c及び処理dにおける掛け算回数を示す。 PN = R N ( ωN )RN-1N-1)・・ R33) R22)R11+Δθ1)P1(式3) 但し、P1 は第1関節1aの現在位置行列(3×1行
列)であり、RN N) は第N関節(先端の関節1
d)についての回転行列(3×3行列)でり、ωNは第
N関節(先端の関節1d)の現在の関節角度であり、Δ
θ1 は第1関節1a(本処理で回転させる軸)の回転角
度である。式3中のマトリクス間演算の掛け算回数は、
以下の通りとなる。 処理c:9N〔=(3×3)×N〕 処理d:9(=3×3) マトリックス部分の合計回数:9(N+1)
(2) The present invention The operation between the matrices is performed from step S2 to step S4 in the control flowchart shown in FIG. 3, and corresponds to the specific description of item (1) of step S2. The processing in step S2 of FIG. 3 matrix R N
Is described by the following equation (3), and the multiplication part of the matrix, which is the main part of the calculation, is the processing c (R NN ) R N-1N -1 ) ・ ・ R 33 ) R 2
2 ) R 11 + Δθ 1 )) and processing d (R 11 + Δθ 1 )). In process c, a 3 × 3 matrix is created by multiplying the N matrices, and in process d, the 3 × 3 matrix obtained in process c is obtained.
Matrix and is a position matrix P 1 multiplied process. Further, the number of multiplications in the processing c and the processing d is shown. P N = R NN ) R N-1N-1 ) ··· R 33 ) R 22 ) R 11 + Δθ 1 ) P 1 (Equation 3) P 1 is the current position matrix (3 × 1 matrix) of the first joint 1a, and R NN ) is the N-th joint (joint 1 at the tip).
d) is a rotation matrix (3 × 3 matrix), where ω N is the current joint angle of the Nth joint (joint 1d at the tip), Δ
theta 1 is a rotation angle of (axis rotating in the process) the first joint 1a. The number of multiplications of the inter-matrix operation in Equation 3 is
It is as follows. Process c: 9N [= (3 × 3) × N] Process d: 9 (= 3 × 3) Total number of matrix portions: 9 (N + 1)

【0015】次に図3のステップS3における処理は、
マトリクスRN を使った式で記述すると式4で表せ、掛
け算が生じるのは下線部の処理e(R N ( ωN )RN-1
N-1)・・ R33) R22+Δθ2))及び処理f( R22+
Δθ2))の部分である。 PN = R N ( ωN )RN-1N-1)・・ R33) R22+Δθ2)P2 (式4) ここで、R N ( ωN )RN-1N-1)・・ R33)は、(式
3)の計算結果が流用できるので新たな計算は生じな
い。さらに、処理e及び処理fにおける掛け算回数を示
す。但し、P1 は第2関節1pの現在位置行列(3×1
行列)であり、RN N) は第N関節(先端の関節1
d)についての回転行列(3×3行列)であり、ω N
第N関節(先端の関節1d)の現在の関節角度であり、
Δθ2 は第2関節(本処理で回転させる軸)の回転角度
である。式4中のマトリクス間演算の掛け算回数は、以
下の通りとなる。 処理e:0〔第1関節の場合の計算結果を使う〕 処理f:9(=3×3) マトリックス部分の合計回数:9
Next, the processing in step S3 in FIG.
Matrix RNIf it is described by an expression using
The calculation occurs in the underlined processing e (RNN) RN-1
N-1) ・ ・ RThreeThree) RTwoTwo+ ΔθTwo)) And processing f (RTwoTwo+
ΔθTwo)). PN=R NN ) R N-1N-1 ) R 33 ) R 22 + Δθ 2 )PTwo (Equation 4) where RNN) RN-1N-1) ・ ・ RThreeThree) Is the (expression
No new calculation occurs because the calculation result of 3) can be used.
No. Further, the number of multiplications in processing e and processing f is shown.
You. Where P1Is the current position matrix of the second joint 1p (3 × 1
Matrix) and RN (ωN) Is the Nth joint (joint 1 at the tip)
d) is a rotation matrix (3 × 3 matrix) for ω NIs
The current joint angle of the Nth joint (the joint 1d at the tip)
ΔθTwoIs the rotation angle of the second joint (the axis to be rotated in this process)
It is. The number of multiplications of the inter-matrix operation in Equation 4 is
It is as follows. Process e: 0 [use the calculation result for the first joint] Process f: 9 (= 3 × 3) Total number of matrix parts: 9

【0016】次に図3のステップS3における処理は、
マトリクスRN を使った式で記述すると式5で表せ、掛
け算が生じる部分は式5中の下線部の処理gの部分であ
る。さらに、処理gにおける掛け算回数を示す。 PN = R N ( ωN + ΔθN )PN (式5) 但し、PN は、第N関節(先端の関節1d)の現在位置
行列(3×1行列)であり、RN N ) は、第N関節
(先端の関節1d)についての回転行列(3×3行列で
あり、ωN は、第N関節(先端の関節1d)の現在の関
節角度であり、ΔθN は、第2関節1p(本処理で回転
させる軸)の回転角度である。式5中のマトリクス間演
算の掛け算回数は、以下の通りとなる。 処理g:9(=3×3) マトリックス部分の合計回数:9
Next, the processing in step S3 in FIG.
By writing formula using matrix R N expressed by Equation 5, the portion multiplication occurs a portion of the processing g underlined in Formula 5. Further, the number of multiplications in the processing g is shown. P N = R NN + Δθ N ) P N (Equation 5) where P N is the current position matrix (3 × 1 matrix) of the Nth joint (the joint 1d at the tip), and R NN ) is a rotation matrix (3 × 3 matrix) for the N-th joint (tip joint 1d), ω N is the current joint angle of the N-th joint (tip joint 1d), and Δθ N is This is the rotation angle of the second joint 1p (the axis to be rotated in this process) The number of times of multiplication between the matrices in Expression 5 is as follows: Process g: 9 (= 3 × 3) Total of matrix portions Number of times: 9

【0017】(3) 従来方法と本発明の計算量の比較 以上、従来方法と本発明を用いた処理におけるマトリク
ス間演算の掛け算回数を比較したが、その合計回数は以
下のようになる。 従来の方法:12N2 回 本発明 :18N回(=9(N+1)+9(N−1)
回) このように、自由度Nが大きいほど、本発明によれば、
従来方法に比べて計算量が著しく小さくなる。
(3) Comparison of the amount of calculation between the conventional method and the present invention As described above, the number of multiplications of the inter-matrix operation in the processing using the conventional method and the present invention was compared. The total number of times is as follows. Conventional method: 12N 2 times The present invention: 18N times (= 9 (N + 1) +9 (N-1)
Thus, as the degree of freedom N increases, according to the present invention,
The calculation amount is significantly smaller than that of the conventional method.

【0018】以上説明したように、本発明の第1実施形
態においては、マニピュレータ先端の関節が目標位置に
距離的に近づくような関節角度を最小2乗法により1軸
づつ求め、求めた目標角度と現在の関節角度の差に比例
した量を1軸づつ関節を回転させることによって、最終
的に先端の関節が目標位置に達するようにしている。関
節角度を計算する時の掛け算数(計算)量は、従来の逆
ヤコビ行列を用いた方法ではマニピュレータを構成する
関節数の2乗で増えるのに対し、本発明の第1実施形態
では、関節数に比例して増えるため、計算量が著しく減
少する。この結果、本発明の第1実施形態によれば、マ
ニピュレータを構成する関節数が多くなればなるほど、
従来の方法と比較してより大きく関節角度の計算量が減
少することになる。
As described above, in the first embodiment of the present invention, the joint angle at which the joint at the tip of the manipulator approaches the target position in terms of distance is obtained by the least squares method one axis at a time. By rotating the joint one axis at a time in an amount proportional to the difference between the current joint angles, the joint at the end finally reaches the target position. The amount of multiplication (calculation) when calculating the joint angle increases by the square of the number of joints forming the manipulator in the conventional method using the inverse Jacobian matrix, whereas in the first embodiment of the present invention, the number of joints increases. Since the number increases in proportion to the number, the amount of calculation is significantly reduced. As a result, according to the first embodiment of the present invention, as the number of joints configuring the manipulator increases,
The calculation amount of the joint angle is greatly reduced as compared with the conventional method.

【0019】次に、図1、図5乃至図7により、本発明
の第2実施形態を説明する。図5及び図6は、狭隘部に
挿入する多関節マニピュレータの例を示しており、図7
は、本発明の第2実施形態による制御用フローチャート
を示している。以下、第2実施形態によるN自由度を有
するマニピュレータを図5や図6に示す狭隘部に挿入さ
せる場合の関節角度算出法を説明する。この実施形態に
おいては、図1に示すマニピュレータ1cの全関節の表
面に接触センサ(図示せず)を取り付けている。図5
は、原子力発電プラントに設けられた原子炉の上部炉心
構造物5aの管群中に、先端にカメラ(図示せず)を取
り付けその根元が本体5bに取り付けられたマニピュレ
ータ5cを挿入する状態を示している。このとき、マニ
ピュレータ5cが管群と干渉しないように挿入するため
のマニピュレータ5cの関節角度決定が問題となる。図
6は、ガイドワイヤ6hの先端にマニピュレータ6bを
取り付け、マニピュレータ6bの先端に取り付けられた
カメラ6cを見ながらオペレータが操作器6fを使って
遠隔操作し、屈曲する管6a内中にマニピュレータ6b
を挿入していき、マニピュレータ6b自体は、ガイドワ
イヤー送り器6gで管6a内に押し込まれていく状態を
示している。この図6に示す場合も、図5の場合と同様
に、マニピュレータ6bが管6aと干渉しないように挿
入するためのマニピュレータ6bの関節角度決定が問題
となる。
Next, a second embodiment of the present invention will be described with reference to FIGS. 5 and 6 show examples of the articulated manipulator to be inserted into a narrow part.
9 shows a control flowchart according to the second embodiment of the present invention. Hereinafter, a method of calculating a joint angle when a manipulator having N degrees of freedom according to the second embodiment is inserted into a narrow portion shown in FIGS. 5 and 6 will be described. In this embodiment, a contact sensor (not shown) is attached to the surface of all the joints of the manipulator 1c shown in FIG. FIG.
Shows a state in which a manipulator 5c having a camera (not shown) attached at the tip and a root thereof attached to the main body 5b is inserted into the tube bundle of the upper core structure 5a of the nuclear reactor provided in the nuclear power plant. ing. At this time, determining the joint angle of the manipulator 5c for inserting the manipulator 5c so as not to interfere with the tube group becomes a problem. FIG. 6 shows a state in which the manipulator 6b is attached to the distal end of the guide wire 6h, and the operator remotely operates the manipulator 6f while watching the camera 6c attached to the distal end of the manipulator 6b.
Are inserted, and the manipulator 6b itself is pushed into the pipe 6a by the guide wire feeder 6g. In the case shown in FIG. 6, as in the case of FIG. 5, the determination of the joint angle of the manipulator 6b for inserting the manipulator 6b so as not to interfere with the tube 6a becomes a problem.

【0020】図7に示す制御用フローチャートにおいて
は、図3に示す第1実施形態の制御用フローチャート
と、ステップS11、S12、S15、S18、S19
が同様であり、ステップS13、S14、S16、S1
7が追加されている。図5及び図6に示すようなマニピ
ュレータを狭隘部に挿入させる場合、図7に示す処理で
マニピュレータの関節角度の決定を行うと、以下のよう
になる。即ち、ステップS13において、第1関節をΔ
θ1 回転させることで、第1関節と第2関節のリンク部
が物体に接触するか否かを判定する。接触しない場合に
は、ステップS15に進み、接触する場合には、ステッ
プS14に進み、ΔΔθ 1 =−Kθ1 (K<1)とし物
体と回避方向に第1関節を微少に駆動する。さらに、第
2関節においても、ステップS16、S17において、
同様な処理を行う。この実施形態においては、ステップ
S12、S15、S18で、マニピュレータの先端位置
が目標位置に近づくように関節角度が算出されるが、管
にマニピュレータが接触することが十分考えられる。こ
の場合、マニピュレータの一部が管に引っかかりマニピ
ュレータの先端を目標位置に近づけられないほか、マニ
ピュレータを破損させることになる。管との接触有無
は、マニピュレータの全関節の表面に設置した接触セン
サにより検知できる。そこで、上述したように、ステッ
プS13、S14、S16、S17では、管に接触する
関節は、接触を回避する方向に少しだけ回転させるよう
にしている。こうすることで、管と接触していない関節
を動かしマニピュレータの先端が目標位置近づくように
回転させ、管と接触している関節は接触を回避する方向
に回転させ、全体として管との干渉を回避しながらマニ
ピュレータの先端を目標位置に近づけることができる。
In the control flowchart shown in FIG.
Is a control flowchart of the first embodiment shown in FIG.
And steps S11, S12, S15, S18, S19
Are the same, and steps S13, S14, S16, S1
7 has been added. Manipulator as shown in FIGS. 5 and 6
In the case of inserting a heat exchanger into a narrow part, the processing shown in FIG.
When the joint angle of the manipulator is determined,
become. That is, in step S13, the first joint is set to Δ
θ1By rotating, the link between the first joint and the second joint
It is determined whether or not touches the object. When not touching
Proceeds to step S15.
Proceed to step S14, and 1= -Kθ1(K <1)
The first joint is slightly driven in the body and avoiding direction. In addition,
Also in two joints, in steps S16 and S17,
A similar process is performed. In this embodiment, the steps
In S12, S15 and S18, the tip position of the manipulator
Is calculated so that the robot approaches the target position.
It is conceivable that the manipulator comes into contact with the surface. This
In the case of, a part of the manipulator
Of the manipulator cannot be brought close to the target position.
This will damage the purifier. Contact with tube
Is a contact sensor installed on the surface of all joints of the manipulator.
Can be detected by Therefore, as mentioned above,
In steps S13, S14, S16 and S17, the pipe contacts
Rotate the joint slightly in a direction to avoid contact
I have to. In this way, joints that are not in contact with the tube
So that the tip of the manipulator approaches the target position.
Rotate the joints in contact with the tube to avoid contact
To avoid interference with the pipe as a whole
The tip of the purator can be brought closer to the target position.

【0021】本発明の第2実施形態においては、1個の
関節について最小2乗法を使い先端の関節が目標位置に
近づくような目標関節角度を求め、求めた目標関節角度
と現在の関節角度との差に比例した角度だけ関節を回
し、次に隣接する関節について同様に目標角度を求めて
関節を動かすといった逐次的な動作でマニピュレータを
動かしている。このため、マニピュレータの駆動中に、
マニピュレータの関節の一部が周囲の障害物に接触した
ら、その関節を接触を回避する方向に少しづつ回す簡単
な障害物回避ロジックを容易に組み込め、そのことによ
り、結果的に障害物の多い管内にもマニピュレータを挿
入できるようにしている。これに対し、従来のヤコビ行
列ではマニピュレータの先端位置が目標位置に近づくよ
う全関節の目標角度を一括して求めてしまうため、障害
物との回避ロジックを容易に組み込むことができず、障
害物の多い管内にもマニピュレータを挿入するのが難し
い。
In the second embodiment of the present invention, a least joint method is used for one joint to determine a target joint angle such that the joint at the distal end approaches the target position. The manipulator is moved by a sequential operation such that the joint is turned by an angle proportional to the difference between the joints, and then the target angle is similarly obtained for the adjacent joint and the joint is moved. For this reason, during the operation of the manipulator,
When a part of the manipulator's joint comes into contact with an obstacle around it, simple obstacle avoidance logic that turns the joint little by little in a direction to avoid contact can be easily incorporated, which results in a pipe with many obstacles. The manipulator can also be inserted. In contrast, in the conventional Jacobian matrix, the target angles of all the joints are collectively determined so that the tip position of the manipulator approaches the target position. It is difficult to insert a manipulator even in a pipe with many parts.

【0022】次に、図8乃至図12により、本発明の第
3実施形態を説明する。この第3実施実施形態は、第2
実施形態を4本足歩行ロボットに適用したものである。
図8は本発明の第3実施形態が適用された4本足歩行ロ
ボットを示す全体構成図であり、図9は第3実施形態に
よる4本足歩行ロボットが形状の異なる段差を移動して
いる様子を示す斜視図であり、図10及び図11は第3
実施形態の4本足歩行ロボットの歩行の際の関節の角度
を算出するための制御用フローチャートであり、図12
は第3実施形態による4本足歩行ロボットの歩行中の姿
勢を示す斜視図である。図8に示すように、4本足歩行
ロボット8aは、脚8bの1本あたりN軸の関節を持
ち、その全関節には接触センサ(図示せず)が取り付け
られている。4本の脚は、固定治具8cで連結されてい
る。ここで、関節8dは根元関節である第1関節を示
し、関節8eは先端関節である第N関節を示している。
この4本足歩行ロボット8aへの動作指令は、コントロ
ーラ8fから通信インターフェイス8gを介してケーブ
ル8jから送られる。これらのコントローラ8fと通信
インターフェイス8gは電源8hと接続されている。
Next, a third embodiment of the present invention will be described with reference to FIGS. This third embodiment is similar to the second embodiment.
The embodiment is applied to a four-legged walking robot.
FIG. 8 is an overall configuration diagram showing a four-legged walking robot to which the third embodiment of the present invention is applied, and FIG. 9 shows a four-legged walking robot according to the third embodiment moving on a step having a different shape. FIG. 10 is a perspective view showing the situation, and FIGS.
12 is a control flowchart for calculating an angle of a joint when the four-legged walking robot according to the embodiment is walking.
FIG. 11 is a perspective view illustrating a posture of a four-legged walking robot during walking according to a third embodiment. As shown in FIG. 8, the four-legged walking robot 8a has N-axis joints for each leg 8b, and contact sensors (not shown) are attached to all the joints. The four legs are connected by a fixing jig 8c. Here, the joint 8d indicates a first joint that is a root joint, and the joint 8e indicates an N-th joint that is a distal joint.
The operation command to the four-legged walking robot 8a is sent from the controller 8f to the cable 8j via the communication interface 8g. The controller 8f and the communication interface 8g are connected to a power supply 8h.

【0023】図9に示すように、4本足歩行ロボット8
aは、接触センサからの情報を基にして、形状が異なる
階段9a(図9(a)参照)及び高さの異なる段差9
b,9c(図9(b)(c)参照)を乗り越えながら移
動することができる。次に、図10乃至図12により、
第3実施形態による4本足歩行ロボットの歩行の際の関
節の角度を算出するための制御内容を説明する。先ず、
ステップT1において、4本足歩行ロボット8aの移動
方向をオペレータが入力する。次に、ステップT2にお
いて、従来手法である静歩行パターンに従って、1本の
移動させる脚11a(遊脚)と3本の4本足歩行ロボッ
トを支える脚11b(支持脚)を選択する。次に、ステ
ップT3において、支持脚の3接地点から構成される三
角形11c内に4本足歩行ロボットの重心が入るように
その中心11dを移動させる。次に、ステップT4にお
いて、遊脚11aの先端関節11eを垂直にA1 (m
m)だけ持ち上がるように、根元関節11f(第1関
節)から先端関節11e(第N関節)までを1軸づつ順
番にΔθi だけ回転させる。ここで、Δθiは、図7の
ステップS12,S15,S18におけるΔθ1,Δθ
2 ,ΔθN と同様な処理により求める。
As shown in FIG. 9, a four-legged walking robot 8
a is a step 9a having a different shape (see FIG. 9A) and a step 9 having a different height based on information from the contact sensor.
b, 9c (see FIGS. 9B and 9C). Next, according to FIGS. 10 to 12,
Control contents for calculating the angle of the joint when the four-legged walking robot walks according to the third embodiment will be described. First,
In step T1, the operator inputs the moving direction of the four-legged walking robot 8a. Next, in step T2, a leg 11a (a free leg) to be moved and a leg 11b (a supporting leg) that supports three four-legged walking robots are selected according to a static walking pattern that is a conventional method. Next, in step T3, the center 11d of the four-legged walking robot is moved so that the center of gravity of the four-legged walking robot falls within the triangle 11c formed by the three grounding points of the supporting legs. Next, in step T4, the tip joint 11e of the free leg 11a is vertically moved to A 1 (m
m), the root joint 11f (first joint) to the distal joint 11e (Nth joint) are rotated by Δθ i in order, one axis at a time. Here, Δθi is Δθ 1 , Δθ in steps S12, S15, and S18 in FIG.
2, determined by the same processing as [Delta] [theta] N.

【0024】次に、ステップT5において、第1乃至第
N関節を回転中に遊脚の先端関節11eが段差に接触す
るか否かを接触センサにより判定する。接触する場合に
は、ステップT6に進み、遊脚の先端関節11eが更に
垂直にΔA1 (mm)だけ持ち上がるように、ステップ
T4及びステップT5と同様な処理を繰り返して実行す
る。次に、ステップT7に進み、第1乃至第N関節を回
転中に遊脚の先端以外の関節が段差に接触するか否か又
は可動範囲をオーバするか否かを判定する。ステップT
5において接触しないと判定された場合も同様にステッ
プT7に進む。ステップT7において、抵触するか又は
可動範囲をオーバする場合には、ステップT8に進み、
現在回転中の関節を−kΔθi(但し、k<1)だけ回
転させ、接触及び可動範囲オーバを回避する。その後、
ステップT9に進む。また、ステップT7で接触もせず
又は可動範囲もオーバしてない場合にも、ステップT9
に進む。次に、ステップT9において、先端関節11e
がA1 (mm)だけ垂直に持ち上げることが終了したか
否かを判定する。終了していない場合には、ステップT
4に戻り持ち上げが終了するまで同様な処理を繰り返し
て行う。
Next, in step T5, it is determined by the contact sensor whether or not the tip joint 11e of the free leg contacts the step while the first to Nth joints are rotating. In the case of contact, the process proceeds to step T6, and the same processing as steps T4 and T5 is repeatedly executed so that the distal end joint 11e of the free leg is further lifted vertically by ΔA 1 (mm). Next, the process proceeds to step T7, and it is determined whether or not any joint other than the tip of the free leg contacts the step or exceeds the movable range while rotating the first to Nth joints. Step T
When it is determined in step 5 that no contact occurs, the process similarly proceeds to step T7. In step T7, in the case of a collision or exceeding the movable range, the process proceeds to step T8,
The currently rotating joint is rotated by −kΔθi (where k <1) to avoid the contact and the movement range over. afterwards,
Proceed to step T9. Also, if no contact is made or the movable range is not exceeded in step T7, step T9
Proceed to. Next, in step T9, the distal joint 11e
It is determined whether or not has finished lifting vertically by A 1 (mm). If not, step T
4 and the same process is repeated until the lifting is completed.

【0025】次に、ステップT10において、遊脚11
aの先端関節11eが水平移動して一定歩幅A2 (m
m)先の目標位置に近づくように、根元関節11f(第
1関節)から先端関節11e(第N関節)までを1軸づ
つ順番にΔθi だけ回転させる。ここで、Δθiは、図
7のステップS12,S15,S18におけるΔθ1
Δθ2 ,ΔθN と同様な処理により求める。このステッ
プT10においては、更に、ステップT5〜T8を実行
しながら、遊脚の先端関節11eがA2 (mm)の水平
移動を終了するまで、このステップにおける処理を繰り
返して行う。次に、ステップT11において、ステップ
T4とは逆に、遊脚の先端関節11eをΔA1 (mm)
だけ垂直に下げる。この処理を、遊脚の先端関節11e
が段差面に接触するまで、繰り返して実行する。次に、
ステップT11に進み、オペレータからの停止命令があ
るか否かを判定し、あれば、終了し、無ければ、ステッ
プT13に進む。ステップT13では、別の脚を遊脚と
して、同様の処理を実行する。具体的には、この別の脚
に関して、ステップT2に戻り、同様な処理をオペレー
タからの停止命令があるまで繰り返しておこなう。
Next, in step T10, the free leg 11
The tip joint 11e of a moves horizontally and the fixed stride A 2 (m
m) The root joint 11f (the first joint) to the distal joint 11e (the Nth joint) are rotated one axis at a time by Δθ i so as to approach the preceding target position. Here, Δθi is Δθ 1 in steps S12, S15, and S18 in FIG.
It is obtained by the same processing as Δθ 2 and Δθ N. In step T10, the processes in this step are repeated until the tip joint 11e of the free leg completes the horizontal movement of A 2 (mm) while executing steps T5 to T8. Next, in step T11, contrary to step T4, the tip joint 11e of the free leg is set to ΔA 1 (mm).
Just lower vertically. This processing is performed by the tip joint 11e of the swing leg.
Is repeatedly executed until contacts the step surface. next,
The process proceeds to step T11, where it is determined whether or not there is a stop command from the operator. If there is, the process ends, and if not, the process proceeds to step T13. In step T13, similar processing is executed with another leg as a free leg. Specifically, the process returns to step T2 for this other leg, and the same processing is repeated until a stop command is issued from the operator.

【0026】この4本足歩行ロボットに適用された本発
明の第3実施形態においては、N軸ある関節の全てを使
用して先端関節を目標位置に移動させることができるた
め、脚の可動範囲を広げることができる。各関節の関節
表面に取り付けた接触センサ(図示せず)からの情報を
基に各関節の回転量を調整しているため、移動対象であ
る段差の高さや幅のサイズが変化した場合でも、アルゴ
リズムを修正することなく乗り越え移動が可能となる。
また、段差障害物のために脚を構成する関節の一部が可
動範囲をオーバして脚姿勢がきつくなる状況が発生した
場合は、可動範囲を超えた関節を逆向きに回転させて可
能範囲内に戻すと共に別の関節の回転量を調節すること
により、結果的に脚の先端関節を目標位置に近づけ、歩
行による段差移動を可能にしている。従来の4本足歩行
ロボット(第4回日本ロボット学会学術講演会予稿集、
1986、p381 〜p386 )の多くが3〜4自由度を持つ脚
で構成されているが、本発明の第3実施形態は、それ以
上の自由度を持つ脚で構成されている4本足歩行ロボッ
トの移動時の関節角度算出に関して特に有効である。
In the third embodiment of the present invention applied to this four-legged walking robot, the distal joint can be moved to the target position by using all of the N-axis joints. Can be expanded. Since the amount of rotation of each joint is adjusted based on information from a contact sensor (not shown) attached to the joint surface of each joint, even if the height or width of the step to be moved changes, It is possible to move over without modifying the algorithm.
If a part of the joints that make up the legs exceeds the movable range due to a stepped obstacle and the leg posture becomes tight, the joint beyond the movable range is rotated in the opposite direction to allow the leg to move. By returning the joint to the inside and adjusting the amount of rotation of another joint, the joint at the tip of the leg is consequently brought closer to the target position, thereby enabling the stepping movement by walking. Conventional 4-legged walking robot (Proceedings of the 4th Annual Conference of the Robotics Society of Japan,
1986, p381-p386) are mostly composed of legs having 3-4 degrees of freedom, but the third embodiment of the present invention is a four-legged walking composed of legs having more degrees of freedom. This is particularly effective for calculating the joint angle when the robot moves.

【0027】本発明の第3実施形態による4本足歩行ロ
ボットの脚運びと歩幅(先端関節の移動軌跡)は、従来
の4本足歩行ロボットと同じであるが、本実施形態によ
れば、脚先を目標位置に移動させる際に、遊脚の段差接
触や関節の可動範囲オーバに対する回避を逐次実行して
いるので、従来のものとは異なり、予め段差の場所と形
状(ロボット用の移動マップ)がわかっていなくても、
移動方向だけをオペレータが指示するだけで、接触セン
サにより段差の位置と形状を検知し自動的に階段等を移
動することが可能となる。このように、本実施形態は、
従来から提案されている移動マップをベースとした制御
方法とは異なり、4本足歩行ロボットの正確な自己位置
測定も不要となり、そのため、適用範囲も広範囲とな
る。さらに、1本当り4軸を超える脚を持つ4本足歩行
ロボットの制御はこれまで実施されておらず、本実施形
態の4本足歩行ロボットにおいては、従来の先端関節を
絶えず接地させて移動する歩行とは異なり、膝関節(例
えば第N−1関節)を接地させた歩行も合わせて行うこ
とにより、従来のものよりも高い段差を乗り越えること
が可能となる。
Although the four-legged walking robot according to the third embodiment of the present invention has the same leg movement and step length (movement trajectory of the tip joint) as the conventional four-legged walking robot, according to the present embodiment, When the leg tip is moved to the target position, avoidance of step contact of the free leg and over-movement of the joint are performed sequentially, so the position and shape of the step (robot for robot Map),
By simply instructing only the moving direction by the operator, the position and shape of the step can be detected by the contact sensor and the stairs can be automatically moved. Thus, the present embodiment is
Unlike the conventionally proposed control method based on the movement map, accurate self-position measurement of the four-legged walking robot is not required, and therefore, the applicable range is wide. Furthermore, the control of a four-legged walking robot having more than four axes per leg has not been implemented so far, and in the four-legged walking robot of the present embodiment, the conventional tip joint is constantly contacted and moved. Unlike walking, in which the knee joint (for example, the (N-1) th joint) is also grounded, it is possible to get over a step that is higher than the conventional one.

【0028】[0028]

【発明の効果】以上説明したように本発明によれば、関
節角度を計算する際の計算量を大幅に低減させることが
できると共に狭隘部内にも挿入可能な多関節ロボットの
制御装置を提供することができる。さらに、本発明は、
4本足歩行ロボットにも適用可能である。
As described above, according to the present invention, there is provided a control apparatus for an articulated robot which can greatly reduce the amount of calculation for calculating a joint angle and can be inserted into a narrow portion. be able to. Further, the present invention provides
The present invention is also applicable to a four-legged walking robot.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 一般的な冗長な自由度を持つ多関節ロボット
(多関節マニピュレータ)を示す概略図
FIG. 1 is a schematic diagram showing a general articulated robot (articulated manipulator) having redundant degrees of freedom;

【図2】 狭隘部である管内に図1の多関節ロボット
(多関節マニピュレータ)を挿入する場合を示す概略図
FIG. 2 is a schematic diagram showing a case where the articulated robot (articulated manipulator) of FIG. 1 is inserted into a narrow tube.

【図3】 本発明の第1実施形態による関節の回転角度
を算出するための制御用フローチャート
FIG. 3 is a control flowchart for calculating a joint rotation angle according to the first embodiment of the present invention;

【図4】 本発明の第1実施形態を8自由度のマニピュ
レータに適用したときの関節の動作状況を示す概略図
FIG. 4 is a schematic diagram showing a joint operation state when the first embodiment of the present invention is applied to an eight-degree-of-freedom manipulator;

【図5】 原子力発電プラントに設けられた原子炉の上
部炉心構造物の管群内に挿入された本発明の第2実施形
態が適用可能な多関節マニピュレータを示す概略図
FIG. 5 is a schematic diagram showing an articulated manipulator to which the second embodiment of the present invention is applicable, inserted in a tube bank of an upper core structure of a nuclear reactor provided in a nuclear power plant.

【図6】 屈曲する管内に挿入された本発明の第2実施
形態が適用可能な多関節マニピュレータを示す概略図
FIG. 6 is a schematic diagram showing an articulated manipulator to which a second embodiment of the present invention is applicable, inserted in a bending tube;

【図7】 本発明の第2実施形態による関節の回転角度
を算出するための制御用フローチャート
FIG. 7 is a control flowchart for calculating a joint rotation angle according to a second embodiment of the present invention;

【図8】 本発明の第3実施形態が適用された4本足歩
行ロボットを示す全体構成図
FIG. 8 is an overall configuration diagram showing a four-legged walking robot to which a third embodiment of the present invention is applied;

【図9】 本発明の第3実施形態による4本足歩行ロボ
ットが形状の異なる段差を移動している様子を示す斜視
FIG. 9 is a perspective view showing a state in which a four-legged walking robot according to a third embodiment of the present invention is moving on steps having different shapes.

【図10】 本発明の第3実施形態の4本足歩行ロボッ
トの歩行の際の関節の角度を算出するための制御用フロ
ーチャート
FIG. 10 is a control flowchart for calculating joint angles during walking of a four-legged walking robot according to a third embodiment of the present invention.

【図11】 本発明の第3実施形態の4本足歩行ロボッ
トの歩行の際の関節の角度を算出するための制御用フロ
ーチャート
FIG. 11 is a control flowchart for calculating an angle of a joint during walking of a four-legged walking robot according to a third embodiment of the present invention.

【図12】 本発明の第3実施形態による4本足歩行ロ
ボットの歩行中の姿勢を示す斜視図である。
FIG. 12 is a perspective view showing a posture during walking of a four-legged walking robot according to a third embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1c 多関節ロボット(多関節マニピュレータ) 1a,1p,1r,1d 関節 1b リンク 1e 架台 1f 電源 1g コントローラ 1h 通信インターフェイス 4f,4g,4h 関節 4i 目標位置 5a 原子炉の上部炉心構造物 5c マニピュレータ 6a 管 6b マニピュレータ 6f 操作器 6d 電源 6e コントローラ 8a 4本足歩行ロボット 8b 脚 8c 固定治具 8d 根元関節(第1関節) 8e 先端関節(第N関節) 8f コントローラ 8g 通信インターフェイス 8j ケーブル 11a,11b 脚 11d 中心 11f 根元関節 11e 先端関節 1c Articulated robot (articulated manipulator) 1a, 1p, 1r, 1d Joint 1b Link 1e Mount 1f Power supply 1g Controller 1h Communication interface 4f, 4g, 4h Joint 4i Target position 5a Upper core structure of reactor 5c Manipulator 6a Tube 6b Manipulator 6f Operating device 6d Power supply 6e Controller 8a Four-legged walking robot 8b Leg 8c Fixing jig 8d Root joint (first joint) 8e Tip joint (Nth joint) 8f Controller 8g Communication interface 8j Cable 11a, 11b Leg 11d Center 11f Root joint 11e Tip joint

───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) B25J 9/10 B25J 5/00 B25J 9/06 JICSTファイル(JOIS)──────────────────────────────────────────────────続 き Continued on the front page (58) Fields surveyed (Int. Cl. 7 , DB name) B25J 9/10 B25J 5/00 B25J 9/06 JICST file (JOIS)

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 モータを内臓したN個の各関節をリンク
を介して連結した多関節ロボットの制御装置であって、
この制御装置が、 根元関節である第1関節を他の関節は固定した状態で所
定の微少角度Δθ1 だけ回転させるとき、先端関節であ
る第N関節の目標位置をD(D1、2、3 )とし、第1
関節を回転させる前の第N関節の現在位置をP(P1、
2、3 )とし、第1関節をθ回転させたときの第N関節
の位置の変化量をΔP(ΔP1、ΔP2、ΔP3 )とし、第
1関節をθ回転させたときの第N関節の位置と目標位置
までの距離の2乗値をEとし、ΔP1 =f1 (θ)、Δ
2 =f2 (θ)、ΔP3 =f3(θ)とし、E=(D
1 −P1 −f1 (θ))2 +(D2 −P2 −f
2 (θ)) 2 +(D3 −P3 −f3 (θ))2 を最少と
する第1関節の回転量θを最小2乗法により求めて上記
微少角度Δθ1 とする第1関節の角度演算手段と、 第1関節に隣り合う第2関節から第N関節の各々におい
て、各関節を他の関節を固定した状態で所定の微少角度
Δθだけ回転させ、この微少角度Δθを上記の第1関節
の回転角度演算手段と同様に最小2乗法により求めて上
記微少角度Δθとする第2関節乃至第N関節の角度演算
手段と、を有し、 上記Eの値が所定のしきい値以下となるまで上記第1関
節乃至第N関節の角度演算手段が演算を繰り返して行
い、各関節の回転角度を算出することを特徴とする多関
節ロボットの制御装置。
1. Linking each of N joints including a motor
A control device of the articulated robot connected via
This control device is configured such that the first joint, which is the base joint, is fixed while the other joints are fixed.
Fixed small angle Δθ1Only rotate the tip joint.
The target position of the Nth joint is1,D2,DThree) And the first
The current position of the Nth joint before rotating the joint is represented by P (P1,P
2,PThree), And the Nth joint when the first joint is rotated by θ.
ΔP (ΔP1,ΔP2,ΔPThree) And
Position of Nth joint and target position when one joint is rotated θ
E is the square value of the distance to1= F1(Θ), Δ
PTwo= FTwo(Θ), ΔPThree= FThree(Θ) and E = (D
1−P1−f1(Θ))Two+ (DTwo−PTwo−f
Two(Θ)) Two+ (DThree−PThree−fThree(Θ))TwoThe least
Is obtained by the least squares method,
Small angle Δθ1Angle calculation means for the first joint, and the second joint to the N-th joint adjacent to the first joint.
Each joint with the other joints fixed at a predetermined minute angle.
Rotate by Δθ, and add this small angle Δθ to the first joint
Calculated by the least-squares method in the same way as
Calculate the angle of the second to Nth joints with the small angle Δθ
Means, the first function being performed until the value of E becomes equal to or less than a predetermined threshold value.
The angle calculating means of the joint to the Nth joint repeats the calculation
Multi-rotation angle calculation for each joint
Control device for joint robot.
【請求項2】 さらに、各関節の表面に設けられた接触
センサと、接触センサがその関節に接続されたリンク部
が周囲の障害物に接触したことを検知した場合、その関
節の回転角度を接触を回避する方向に所定の微小角度だ
け駆動させる接触回避手段とを有することを特徴とする
請求項1記載の多関節ロボットの制御装置。
Further, when a contact sensor provided on the surface of each joint and the contact sensor detects that a link portion connected to the joint has contacted a surrounding obstacle, the rotation angle of the joint is determined. 2. The control device for an articulated robot according to claim 1, further comprising a contact avoiding unit that drives the contact by a predetermined minute angle in a direction in which the contact is avoided.
JP34697898A 1998-12-07 1998-12-07 Control device for articulated robot Expired - Fee Related JP3068577B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34697898A JP3068577B2 (en) 1998-12-07 1998-12-07 Control device for articulated robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34697898A JP3068577B2 (en) 1998-12-07 1998-12-07 Control device for articulated robot

Publications (2)

Publication Number Publication Date
JP2000167789A JP2000167789A (en) 2000-06-20
JP3068577B2 true JP3068577B2 (en) 2000-07-24

Family

ID=18387105

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34697898A Expired - Fee Related JP3068577B2 (en) 1998-12-07 1998-12-07 Control device for articulated robot

Country Status (1)

Country Link
JP (1) JP3068577B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8219246B2 (en) 2001-06-13 2012-07-10 Oliver Crispin Robotics Limited System and method for controlling a robotic arm
WO2010001107A2 (en) * 2008-06-30 2010-01-07 Oliver Crispin Robotics Limited Method of controlling a robotic arm

Also Published As

Publication number Publication date
JP2000167789A (en) 2000-06-20

Similar Documents

Publication Publication Date Title
JP3207728B2 (en) Control method of redundant manipulator
US11358282B2 (en) System and method for constraint management of one or more robots
US5430643A (en) Configuration control of seven degree of freedom arms
US11433541B2 (en) Automated calibration system and method for a workpiece coordinate frame of a robot
JP5114019B2 (en) Method for controlling the trajectory of an effector
KR101479233B1 (en) Robot and method for controlling cooperative task of the same
CN110682286B (en) Real-time obstacle avoidance method for cooperative robot
JP5025641B2 (en) Kinematic singularity compensation system and method
JP2895672B2 (en) Multiple robot control method
US8606402B2 (en) Manipulator and control method thereof
TWI704039B (en) Mechanical arm singular point control method and system
KR102261469B1 (en) Robot control apparatus, and method and program for obtaining angle of joint of robot
US20130013113A1 (en) Manipulator and path generation method thereof
CN110561419B (en) Arm-shaped line constraint flexible robot track planning method and device
Sanchez et al. Four-arm collaboration: Two dual-arm robots work together to manipulate tethered tools
JP3068577B2 (en) Control device for articulated robot
CA3103283A1 (en) System and method for natural tasking of one or more robots
JP2703767B2 (en) Robot teaching data creation method
JP3884928B2 (en) Posture calculation method and posture calculation apparatus for articulated robot
JP2000112510A (en) Robot teaching method and its device
JP2003091304A (en) Motion path setting method and setting device of articulated robot
JP3146463B2 (en) Elbow movement control device for redundant axis manipulator
JP4000307B2 (en) Teaching data creation method for articulated robots
Raafat et al. Introduction to Robotics-Mathematical Issues
JPH0355182A (en) Multi-joint robot

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000417

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

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

LAPS Cancellation because of no payment of annual fees