JPH0719175B2 - Robot arm trajectory planning and wavefront propagation equipment. - Google Patents

Robot arm trajectory planning and wavefront propagation equipment.

Info

Publication number
JPH0719175B2
JPH0719175B2 JP17528986A JP17528986A JPH0719175B2 JP H0719175 B2 JPH0719175 B2 JP H0719175B2 JP 17528986 A JP17528986 A JP 17528986A JP 17528986 A JP17528986 A JP 17528986A JP H0719175 B2 JPH0719175 B2 JP H0719175B2
Authority
JP
Japan
Prior art keywords
posture
wavefront
space
point
robot
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
JP17528986A
Other languages
Japanese (ja)
Other versions
JPS6330908A (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.)
RIKEN Institute of Physical and Chemical Research
Original Assignee
RIKEN Institute of Physical and Chemical Research
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 RIKEN Institute of Physical and Chemical Research filed Critical RIKEN Institute of Physical and Chemical Research
Priority to JP17528986A priority Critical patent/JPH0719175B2/en
Publication of JPS6330908A publication Critical patent/JPS6330908A/en
Publication of JPH0719175B2 publication Critical patent/JPH0719175B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はロボットのプログラミング・システムにおける
軌道計画、および産業用ロボットや、原子炉等において
点検保守を行う保全ロボット等のリアルタイム障害物回
避に係るものである。
The present invention relates to trajectory planning in a robot programming system, and real-time obstacle avoidance for industrial robots, maintenance robots for inspection and maintenance in nuclear reactors, etc. It is a thing.

〔従来の技術」 従来ロボットの軌道計画は、人工知能の分野で研究さ
れ、大型の汎用計算機、または、Lispなど主に人工知能
研究に用いられる言語を実行する高価な専用計算機で行
われていた。
[Prior Art] Conventionally, trajectory planning of robots has been studied in the field of artificial intelligence, and has been performed by a large-scale general-purpose computer or an expensive dedicated computer that executes a language mainly used for artificial intelligence research such as Lisp. .

ここでは、従来の軌道計画のアルゴリズムの一例を説明
する。
Here, an example of a conventional trajectory planning algorithm will be described.

一般に、N自由度のロボットは、N個の関節を持ち、各
関節を適当に動かすことによってエンド・エフェクタを
移動させる。人間は、三次元直交座標系で、ロボットの
動きを観察し、障害物を認識しているが、ロボットは各
関節の関節角により姿勢を制御しているため、関節角の
直接的表現形式として姿勢空間(Configuration-Spac
e、以下C-Spaceと略す)を考える。N自由度のロボット
のC-SpaceはN次元空間で、各軸に各関節が割り当てて
ある。2自由度のロボットのC-Spaceの一例を第2図に
示す。ロボットの姿勢とC-Space上での一点(第2図の
四角い黒点)が一対一に対応し、ロボットが動くこと
は、C-Space上では点が移動することに相当する。
Generally, a robot having N degrees of freedom has N joints and moves the end effector by appropriately moving each joint. Humans observe the movement of the robot and recognize obstacles in a three-dimensional Cartesian coordinate system, but since the robot controls its posture by the joint angle of each joint, it can be expressed directly as a joint angle. Posture space (Configuration-Spac
e, hereinafter abbreviated as C-Space). The C-Space of a robot with N degrees of freedom is an N-dimensional space, and each joint is assigned to each axis. Fig. 2 shows an example of C-Space for a robot with two degrees of freedom. There is a one-to-one correspondence between the robot's posture and one point on C-Space (square black dots in Fig. 2), and moving the robot corresponds to moving the point on C-Space.

C-Space上で障害物を回避して軌道を計画するために
は、ロボットの作業環境での障害物をC-Spaceへ写像し
なければならない(第2図01−05)。基本的には、ロボ
ットや障害物の幾何モデルなどを利用して、各姿勢に対
して干渉チェックを行うことになる。作業環境内でのロ
ボットのアームのリンクのうちひとつでも障害物と干渉
すれば、その姿勢に対応するC-Space上の位置は「障害
物」になる。C-Space中で「障害物」でない部分(自由
空間:Free-Space)に対応する作業環境の部分ではロボ
ット・アームのどのリンクも障害物と干渉しない、つま
り作業環境内でそのような姿勢をとることができること
を示している。
In order to avoid obstacles on the C-Space and plan trajectories, obstacles in the robot's work environment must be mapped to the C-Space (Fig. 01-05). Basically, a collision check is performed for each posture using a geometric model of a robot or an obstacle. If one of the robot arm links in the work environment interferes with an obstacle, the position on C-Space corresponding to that posture becomes an "obstacle". In the part of the work environment corresponding to the part that is not an "obstacle" in C-Space (free space: Free-Space), no link of the robot arm interferes with the obstacle, that is, such a posture is set in the work environment. It shows that you can take.

このため、軌道計画の問題は、C-Space上では、出発点
における初期姿勢から到着点における最終姿勢まで、自
由空間を通って移動する経路を探索する問題に置き換え
られる。探索の手間を減らすために、まず、自由空間を
なるべく大きな基本的な領域に分割し、少数の領域の集
合に変換する(第2図S1−S10)。次に、第3図に示す
ようにこれらの接続関係を接続グラフとして表現する。
こうすると、軌道計画の問題は、初期姿勢を含む領域S6
から最終姿勢を含む領域S10までの接続グラフ上での経
路の探索問題になる。
Therefore, the problem of trajectory planning can be replaced with the problem of searching a path moving through free space from the initial posture at the starting point to the final posture at the arrival point on C-Space. In order to reduce the time and effort of the search, first, the free space is divided into as large a basic region as possible, and converted into a set of a small number of regions (Fig. 2, S1-S10). Next, as shown in FIG. 3, these connection relationships are expressed as a connection graph.
Thus, the problem of trajectory planning is that the area S6 including the initial attitude is
To the region S10 including the final posture becomes a problem of finding a route on the connection graph.

グラフの探索の様々な手法が研究されているが、単純な
探索戦略を用いると無駄な探索を非常に多く行うことに
なるので、基本的には、より高度な探索戦略を用いて、
無駄のない探索を行おうとするのが一般的である。高度
な探索戦略を用いるためには、必然的に複雑な計算をし
なければならない。そのためには高速汎用計算機が必要
であり、当然そのような大型計算機をロボットに搭載し
てリアルタイムでロボットが軌道計画をすることは到底
できない。
Various methods of graph search have been researched, but if a simple search strategy is used, a large number of unnecessary searches are performed. Therefore, basically, a more advanced search strategy is used.
It is common to try a lean search. In order to use advanced search strategies, inevitably complicated calculations must be performed. For that purpose, a high-speed general-purpose computer is required, and of course it is impossible for the robot to carry out a trajectory planning in real time by mounting such a large-scale computer on the robot.

〔発明が解決しようとする問題点〕[Problems to be solved by the invention]

本発明の目的は、ロボットに搭載できる程度の小型のハ
ードウエアを使用してロボットがリアルタイムで軌道計
画をすることができるようにしたロボットのアームの軌
道計画法とその方法を実施するハードウエアに利用する
波面伝播装置とを提供することにある。
An object of the present invention is to provide a robot arm trajectory planning method that enables a robot to perform trajectory planning in real time using hardware that is small enough to be mounted on a robot, and hardware that implements the method. And a wavefront propagation device to be used.

〔問題点を解決するための手段〕[Means for solving problems]

上記の目的を達成するため本発明では、記憶容量が大き
く高速でアクセスできるメモリを利用し、処理すべき情
報量を大きくし、それに応じて軌道決定のためのアルゴ
リズムを単純化し、それを実行するためのハードウエア
をロボットの搭載できる程度の規模としている。
In order to achieve the above object, the present invention uses a memory having a large storage capacity and capable of being accessed at high speed, increases the amount of information to be processed, and accordingly simplifies the algorithm for trajectory determination and executes it. The hardware for this is of a scale that can be mounted on a robot.

本発明のロボットのアームの軌道計画法によれば、先ず
N個の自由度をもつロボットのアームが動く作業環境の
障害物とアームの初期姿勢と最終姿勢とをマップしたN
次元初期姿勢空間(C-Space)をつくり、この姿勢空間
をサブ空間に分割して障害物のない自由空間をそれらの
サブ空間の集合として表現し、一次元データに変換し
て、記憶容量が大きく高速でアクセスできるメモリに蓄
積する。
According to the robot arm trajectory planning method of the present invention, an obstacle N in a work environment in which the robot arm having N degrees of freedom moves and the initial posture and the final posture of the arm are first mapped.
Dimensional initial pose space (C-Space) is created, this pose space is divided into sub-spaces, and free space without obstacles is expressed as a set of these sub-spaces. It is stored in a memory that can be accessed at a large speed.

次に、このメモリから繰出される一次元データを近傍演
算による膨張距離という形で処理して迷路法の探索戦略
を実施する。すなわち、メモリから繰出される一次元デ
ータについて初期姿勢及び又は最終姿勢近傍のサブ空間
を波面・距離表示し、そして波面表示したサブ空間近傍
のサブ空間を順次波面・距離表示する。これを、波面・
距離表示したサブ空間が相互に近傍に、又は前記の初期
姿勢もしくは最終姿勢近傍に接近するまで繰返して行
う。サブ空間についての波面・距離表示データを蓄積し
ておき、次に波面相互の接近点から初期姿勢と最終姿勢
とに向って、又は液面が接近した初期姿勢から最終姿勢
に向って(もしくは波面が接近した最終姿勢から初期姿
勢に向って)距離の短かくなる方向にサブ空間を辿って
ロボットのアームの軌道を計画する。
Next, the one-dimensional data fetched from this memory is processed in the form of the expansion distance by the neighborhood calculation to implement the search strategy of the maze method. That is, for the one-dimensional data sent from the memory, the sub-space near the initial posture and / or the final posture is displayed in wavefront / distance, and the subspaces near the wavefront-displayed subspace are sequentially displayed in wavefront / distance. This is the wavefront
This is repeated until the sub-spaces displayed as distances come close to each other or close to the above-mentioned initial posture or final posture. The wavefront / distance display data for the sub-space is stored, and then, from the approaching points of the wavefronts toward the initial posture and the final posture, or from the initial posture where the liquid surface approaches to the final posture (or the wavefront). The trajectory of the robot arm is planned by tracing the sub-space in the direction in which the distance becomes shorter (from the final posture in which the robot approaches to the initial posture).

本発明は上記のロボットのアームの軌道計画法を実施す
るため、上記のメモリに2N+1個の出力端子を有する遅
延素子を接続し、これらの出力端子は遅延素子に沿って
展開したサブ空間のうち近傍点となり得るサブ空間が同
時的に存在する位置に配置し、それにより姿勢空間に波
面を伝播させていくようにしている。
In order to implement the above-described robot arm trajectory planning method according to the present invention, a delay element having 2N + 1 output terminals is connected to the above memory, and these output terminals are included in a subspace developed along the delay element. The sub-spaces, which can be neighboring points, are placed at the positions where they exist at the same time, so that the wavefront is propagated to the posture space.

〔実施例〕〔Example〕

第1図を参照して本発明の軌道計画法の一実施例を説明
する。
An embodiment of the trajectory planning method of the present invention will be described with reference to FIG.

第1−(1)図に示すように、本発明では、N次元空間
であるC-Spaceを形状の等しいサブ空間に分割してい
る。自由空間の表現については、従来技術では第2図に
示すように、最小数の形状の簡単な領域に分割し、これ
らの領域の接続関係を明らかにして自由空間を表現して
いたのに対し、本発明では同形状の簡単な領域(サブ空
間)に分割し、これらの領域の集合として自由空間を表
現している。
As shown in FIG. 1- (1), in the present invention, C-Space, which is an N-dimensional space, is divided into sub-spaces having the same shape. Regarding the expression of free space, in the prior art, as shown in FIG. 2, the free space was expressed by dividing the area into the minimum number of simple areas and clarifying the connection relation of these areas. In the present invention, a simple space (subspace) having the same shape is divided, and the free space is expressed as a set of these regions.

各サブ空間をその中心点である格子点に代表させて扱
う。こうすると、経路探索はロボットの初期姿勢、最終
姿勢の格子点から波面を自由空間内で膨張させることに
より行うことができる。
Each subspace is treated as represented by the grid point that is the center of each subspace. By doing so, the route search can be performed by expanding the wavefront in the free space from the lattice points of the initial posture and the final posture of the robot.

概念的には、初期姿勢、最終姿勢の格子点からN次元の
球面波が同時に発生し、2つの波がぶつかった点までの
経路を探索すると考えるのが良い。2自由度のロボット
・アームのC-Spaceならば、ちょうど正方形のプール
に、C-Space中の障害物に相当する島があり、水面の部
分が自由空間になると考えればよい(第1−(1)
図)。この実施例では初期姿勢の格子点20a、最終姿勢
の格子点20bに相当する場所に同時に石を落とし(第1
−(2)図)、水面上の波面を観察していれば(第1−
(3)図)、20cの点で2つの波面がぶつかるのがわか
る(第1−(4)図)。最短経路は、この波面の経路で
ある(第1−(5)、(6)図)。3自由度のロボット
・アームのC-Spaceならば、空間を波面が球面状に伝播
する様子を思い浮かべるとよい。
Conceptually, it may be considered to search a path from the lattice points of the initial posture and the final posture to a point where N-dimensional spherical waves are simultaneously generated and two waves collide. In the case of a C-Space with a two-degree-of-freedom robot arm, it can be considered that a square pool has an island corresponding to an obstacle in the C-Space, and the water surface becomes a free space (No. 1- ( 1)
Figure). In this embodiment, stones are simultaneously dropped at locations corresponding to the grid points 20a in the initial posture and the grid points 20b in the final posture (first
-(2)) If you are observing the wavefront on the water surface (No. 1-
(Fig. (3)), and it can be seen that two wavefronts collide with each other at point 20c (Fig. 1- (4)). The shortest path is the path of this wavefront (Figs. 1- (5) and (6)). With a three-degree-of-freedom robot arm, C-Space, you can imagine the wavefront propagating in a spherical shape in space.

探索のための波面の膨張は、波面が隣接する格子点に移
って行く性質に着目し近傍演算によって行う。すなわ
ち、波面の広がり又は膨張は波面が次々に近傍点に移っ
ていくプロセスと考え、未だ波面が到達していない格子
点が波面になるためにはその格子点の近傍点に波面が来
ていなければならない。換言すれば、着目している格子
点の近傍に波面が到達しており、その近傍格子点が波面
到達の情報を担持していることを前記の着目している格
子点で検知したならば、その格子点に波面到達の情報を
担持させ、これを波源から繰返していけばよい。具体的
には、着目する格子点を中心にその近傍格子点のみ見る
ことができる窓(2次元C-Spaceの場合は着目するサブ
空間と境を接している4つのサブ空間を見ることのでき
る十文字型の開口W(第1−(1)図))を有するテン
プレートでC-Spaceの全面を掃引し、波源(初期姿勢及
び又は最終姿勢の格子点)へ向って順次隣接サブ空間を
拾って着目しているサブ空間が新しい波面になるかどう
かをチェックしていくと、波面を順次に膨張させること
ができる。
The expansion of the wavefront for the search is performed by neighborhood calculation, paying attention to the property that the wavefront moves to the adjacent lattice point. That is, the expansion or expansion of the wavefront is considered to be a process in which the wavefront moves to neighboring points one after another, and in order for a lattice point that the wavefront has not yet reached to become a wavefront, the wavefront must come to the neighboring point of the lattice point. I have to. In other words, if the wave front has reached the vicinity of the grid point of interest, and the neighboring grid point carries the information of arrival of the wave front at the grid point of interest, Information on arrival of the wavefront at the lattice points may be carried, and this may be repeated from the wave source. Specifically, a window that allows you to see only the neighboring grid points around the focused grid point (in the case of two-dimensional C-Space, you can see the four subspaces that are in contact with the focused subspace). Sweep the entire surface of C-Space with a template having a cross-shaped opening W (Fig. 1- (1))), and pick up adjacent subspaces in sequence toward the wave source (lattice points in the initial and / or final postures). The wavefront can be expanded sequentially by checking if the subspace under consideration becomes a new wavefront.

このようなN次元のデータは、N次元そのままの構成で
記憶、処理するのは難しいため、一次元配列とする。N
次元データを一次元データに変換するには、N次元のう
ち先ず一つの軸に着目してこの軸を固定すると、N−1
次元のデータになる(例えば3次元xyz空間ならば、z
軸に着目してこの軸を固定するとxy平面の2次元データ
になる)。このように先ずN次元データはN+1次元デ
ータの集合と考えることができ、これを配列すればN−
1次元データとなる。このN−1次元データを同様の手
法によりN−2次元のデータに変換し、この操作を繰返
して一次元のデータを得る(卑近な例としては画面を横
方向にスキャンして2次元画像データを1次元データと
して扱うTV技術における掃引方法がある。) このような一次元のデータを前記のテンプレートにより
掃引するには近傍点のデータが同時に得られるような回
路構成を採用しなければならない。ところがC-Spaceの
データは長大な一次元配列になっているので、N次元の
空間で近傍点でも、一次元配列上では、かなり離れた位
置にあるデータになってしまう。そこで、本発明では一
次元配列のデータを端から順に流す構成にして、シフト
レジスタなどの遅延素子を用い、上下・左右に隣接する
2N個の格子に相当する位置の情報を取り出し、近傍点の
情報を同時に得られるようにした波面伝播装置を用い
る。
Such N-dimensional data is a one-dimensional array because it is difficult to store and process the N-dimensional data as it is. N
To convert one-dimensional data into one-dimensional data, first focus on one axis of the N dimensions, and fix this axis.
Dimensional data (for example, in the case of three-dimensional xyz space, z
Paying attention to the axis and fixing this axis, it becomes two-dimensional data on the xy plane. Thus, first, N-dimensional data can be considered as a set of N + 1-dimensional data, and if they are arrayed, N-
It becomes one-dimensional data. This N-1 dimensional data is converted into N-2 dimensional data by the same method, and this operation is repeated to obtain one dimensional data (a common example is to scan the screen in the horizontal direction to obtain two dimensional image data. There is a sweeping method in the TV technology that treats as one-dimensional data.) In order to sweep such one-dimensional data with the template, it is necessary to adopt a circuit configuration that can obtain data of neighboring points at the same time. However, since the data of C-Space is a long one-dimensional array, even the neighboring points in the N-dimensional space will be data that are located far apart on the one-dimensional array. Therefore, in the present invention, the one-dimensional array of data is made to flow sequentially from the end, and a delay element such as a shift register is used to vertically and horizontally adjoin.
We use a wavefront propagation device that can extract information on the positions corresponding to 2N gratings and obtain information on neighboring points at the same time.

この波面伝播装置の動作原理を第4図を参照して説明す
る。たとえば第4−(1)図に示した2自由度のロボッ
トのC-Spaceでは上下・左右の4個の近傍点(T1、2、
4、5)の検出が必要である。C-Spaceのデータは横方
向に掃引して一次元のデータに直しているので、左右の
格子点(T2、T4)のデータは、一次元のデータに直して
もやはり前後のデータである。上下の格子点(T1、T5)
のデータは横方向の格子点の数だけ前後に離れた位置に
ある。第4図の例では横方向に30の格子点であるので、
上下の格子点の情報を得るために長さ60の遅延段数を用
意すればよい。このとき第4−(2)図に示すように、
遅延素子の入口と出口の部分に上下の格子点のデータが
あり、遅延素子の中心である30段目に、着目している格
子点(T3)のデータがある。左右の格子点(T2、T4)の
データは29段目、31段目になる。
The operating principle of this wavefront propagation device will be described with reference to FIG. For example, in the 2-DOF robot C-Space shown in Fig. 4- (1), four neighboring points (T1, 2,
It is necessary to detect 4, 5). Since the data of C-Space is swept in the horizontal direction and converted into one-dimensional data, the data of the left and right grid points (T2, T4) are still the front and back data even if they are converted into one-dimensional data. Upper and lower grid points (T1, T5)
The data of is at a position separated by the number of grid points in the horizontal direction. In the example of FIG. 4, since there are 30 grid points in the horizontal direction,
The number of delay stages with a length of 60 may be prepared in order to obtain information on the upper and lower grid points. At this time, as shown in FIG. 4- (2),
There are data on the upper and lower grid points at the entrance and exit of the delay element, and there is data on the grid point (T3) of interest at the 30th stage, which is the center of the delay element. The data of the left and right grid points (T2, T4) are in the 29th and 31st rows.

このようにして抽出した近傍点の情報を次のようにして
処理して波面を膨張させる。
The information on the neighboring points thus extracted is processed as follows to expand the wavefront.

今、仮に各格子点には整数のデータを書込むことがで
き、障害物には−1、自由空間(Free−Space)には
0、初期姿勢の格子点および最終姿勢の格子点に1が書
込まれているとする。また、各波面が初期姿勢、最終姿
勢のどちらから来たものかは別のビットに書込んでお
く。この時膨張処理は、抽出した近傍点の情報に対し
て、第5図に示すようにして行うことができる。
Now, it is possible to write integer data to each grid point, -1 for obstacles, 0 for free space (Free-Space), 1 for grid points of initial posture and grid point of final posture. It is written. In addition, it is written in another bit whether each wavefront comes from the initial posture or the final posture. At this time, the expansion process can be performed on the extracted information of the neighboring points as shown in FIG.

まず着目している格子点が障害物ならば(判断1:Ye
s)、波面の膨張とは無関係でありそのまゝのデータを
出力する(処理2)。また、すでに波面が到達してい
て、波面・距離表示されていれば(判断2:Yes)、改め
て処理する必要はなく、そのまゝのデータを出力する
(処理2)。どの近傍点にも波面が到達していなければ
(判断3:Yes)、新しく着目している格子点を波面・距
離表示することはできないので、そのまゝのデータを出
力する(処理2)。着目している格子点に波面が未到着
で、近傍の格子点が波面・距離表示されていれば(判断
1、2、3すべてNO)、距離を計算して、新しく波面・
距離表示する(処理1)。
First, if the grid point of interest is an obstacle (Judgment 1: Ye
s), the current data is output regardless of the expansion of the wavefront (process 2). If the wavefront has already arrived and the wavefront / distance is displayed (decision 2: Yes), there is no need to process it again, and the current data is output (process 2). If the wavefront has not reached any of the neighboring points (decision 3: Yes), it is not possible to display the wavefront / distance of the newly focused grid point, so that data is output (process 2). If the wavefront has not arrived at the target grid point and the neighboring grid points are displayed as wavefront / distance (judgment 1, 2, 3 are all NO), the distance is calculated and the new wavefront /
The distance is displayed (process 1).

波面がぶつかるかどうかの監視は、近傍に初期姿勢から
来た波面と最終姿勢から来た波面が両方あるかどうかを
検出することで行える。2つの波面がぶつかったところ
で膨張処理を中止し、データを蓄積保存し、次いでこの
衝突点から値の小さい近傍の点へ移って行けば良い。初
期姿勢20aから波面の衝突点20cまでの経路の探索は、波
面の衝突点20cを出発点として以下の処理を行えば良い
(第1−(5)参照)。
Whether or not the wavefronts collide can be monitored by detecting whether or not there are both wavefronts coming from the initial posture and the final posture in the vicinity. When the two wave fronts collide with each other, the expansion process is stopped, the data is accumulated and stored, and then the collision point is moved to a nearby point having a small value. To search for a path from the initial posture 20a to the wavefront collision point 20c, the following processing may be performed with the wavefront collision point 20c as a starting point (see 1- (5)).

・近傍点のうち初期姿勢からの波面の値が書込んである
格子点で、最も値の小さい点を選び、その点へ移る。こ
れを初期姿勢の格子点20aに到達するまで続ける。
-Of the neighboring points, select the point with the smallest value from the lattice points in which the value of the wavefront from the initial posture is written, and move to that point. This is continued until the lattice point 20a in the initial posture is reached.

波面の衝突点20cから最終姿勢20bまでの経路の探索は、
同様に波面の衝突点20cを出発点として以下の処理を行
えば良い。
Search for the path from the collision point 20c on the wavefront to the final attitude 20b
Similarly, the following processing may be performed using the collision point 20c of the wavefront as a starting point.

・近傍点のうち最終姿勢からの波面の値が書込んである
格子点で、最も値の小さい点を選び、その点へ移る。こ
れを最終姿勢の格子点になるまで続ける。
-Of the neighboring points, select the point with the smallest value from the lattice points in which the value of the wavefront from the final posture is written, and move to that point. This is continued until the grid point of the final posture is reached.

この結果を合わせると初期姿勢10aから最終姿勢20bまで
の最短経路が求まる。
If these results are combined, the shortest path from the initial posture 10a to the final posture 20b can be obtained.

上記の実施例は初期姿勢と最終姿勢の格子点を波源とし
ているが、別の実施例として初期姿勢の格子点を波源と
して最終姿勢の格子点に波面が到達するように波面膨張
させることもでき、又この反対に最終姿勢の格子点を波
源として初期姿勢の格子点に波面が到達するように波面
膨張させることもできるが、計算時間の短縮という点で
は上記の実施例が有利である。
In the above embodiment, the lattice points of the initial posture and the final posture are used as the wave sources, but as another example, the lattice points of the initial posture can be used as the wave source to expand the wavefront so that the wavefront reaches the lattice points of the final posture. On the contrary, it is possible to expand the wavefront so that the wavefront reaches the lattice point in the initial posture by using the lattice point in the final posture as the wave source, but the above embodiment is advantageous in terms of shortening the calculation time.

各格子点には、初期姿勢、最終姿勢の格子点からの距離
が書込まれるため、ある程度のビット数が必要である。
メモリ容量などの制約で多くのビット数を確保できない
場合には、自動配線で用いられているコード化の手法を
使うことができる。たとえば、距離を1、2、3に限定
しても3の次に1が書込まれるようにしておけば、波面
がぶつかった点から同じように初期姿勢、最終姿勢の格
子点へ経路をたどることができる。
Since the distances from the lattice points of the initial posture and the final posture are written in each lattice point, a certain number of bits are required.
When a large number of bits cannot be secured due to restrictions such as memory capacity, the coding method used in automatic wiring can be used. For example, if the distance is limited to 1, 2, and 3 and 1 is written next to 3, the path from the point where the wave front hits to the lattice point of the initial posture and the final posture is similarly traced. be able to.

本発明に従って波面伝播装置を利用しロボットのアーム
の軌道を計画する装置の一例を第6図に示す。
FIG. 6 shows an example of an apparatus for planning the trajectory of a robot arm using a wavefront propagation apparatus according to the present invention.

第6図において、1はC-Spaceの情報を保持するメモ
リ、2は遅延素子、3は膨張処理演算装置、4は遅延素
子2と演算装置3とから成る波面膨張モジュール、5は
波面の膨張結果を保持するメモリ、そして6は軌道探索
のための汎用プロセスである。
In FIG. 6, 1 is a memory for holding C-Space information, 2 is a delay element, 3 is an expansion processing arithmetic unit, 4 is a wavefront expansion module composed of a delay element 2 and an arithmetic unit 3, and 5 is an expansion of the wavefront. The result holding memory, and 6 is a general process for trajectory search.

動作については既に上に述べた情報処理の説明と重複す
ることになるので簡単に述べることゝする。メモリ1か
ら繰り出されるC-Spaceの一次元データは遅延素子2に
沿って展開され、2N個の近傍点の情報と着目点の情報と
が同時に2N+1個の出力端子に現われる。これらの情報
を膨張処理演算装置3により第5図のフローチャートに
従って処理し、その結果をメモリ5に保存する。メモリ
1に保存されたデータが波面膨張モジュール4を通過す
ると、C-Space全面にわたって一回掃引したことにな
る。波面衝突までこの掃引を反復する(第1−(2)
図)の波面膨張は2回掃引の結果であり、第1−(3)
図の波面膨張は6回掃引の結果であり、そして第1−
(4)図の波面膨張は波面衝突までの掃引の結果を示
す)。波面衝突までの波面膨張(第1−(4)図)の結
果のデータがメモリ5に保持される。
The operation will be briefly described because it overlaps with the above-described explanation of information processing. The one-dimensional data of C-Space fed from the memory 1 is expanded along the delay element 2 and the information of 2N neighboring points and the information of the point of interest appear at 2N + 1 output terminals at the same time. These pieces of information are processed by the expansion processing arithmetic unit 3 according to the flowchart of FIG. 5, and the result is stored in the memory 5. When the data stored in the memory 1 passes through the wavefront expansion module 4, it means that the entire C-Space has been swept once. This sweep is repeated until the wavefront collision (No. 1- (2))
The wavefront expansion shown in the figure is the result of two sweeps.
The wavefront expansion in the figure is the result of 6 sweeps, and
(4) The wavefront expansion in the figure shows the result of sweeping until the wavefront collision). Data resulting from the wavefront expansion (FIG. 1- (4)) up to the wavefront collision is held in the memory 5.

汎用プロセッサ6がメモリ5のデータを処理して軌道を
探索する。
The general-purpose processor 6 processes the data in the memory 5 to search for a trajectory.

第7図は、本発明に従って波面伝播装置を利用しロボッ
トのアームの軌道を計画する装置の別の例を第7図に示
す。
FIG. 7 shows another example of a device for planning the trajectory of a robot arm using a wavefront propagation device according to the present invention.

第6図の装置との差異は、第6図の装置では、膨張処理
の結果をメモリ5に蓄え、1つの波面膨張モジュール4
を必要回数だけ使用するのに対して、第7図の装置にお
いては、波面膨張モジュール4を多段に直列結合させて
配置し、多段の膨張処理を一度に行わせることにある。
波面膨張モジュール4においては遅延素子2に起因する
処理の時間遅れkが存在する。メモリ1に保持されたC-
Spaceのデータをすべて読み出すのに必要な時間をlと
すると、n・k>lを満たすような整数nが求まる。n
段の波面膨張モジュールをデータが通過するにはn・k
の時間がかかる。この時間経過時には最初の波面膨張モ
ジュール4(1)はメモリ1に保持された情報処理を終
っており、n段目の出力を処理できる状態にある。つま
りn個の波面膨張モジュールをリング状に接続して、膨
張処理をパイプライン方式で高速処理する。このとき波
面の衝突は膨張演算装置3において監視し、衝突が検出
され次第、膨張処理の結果をメモリ5に読み出す。
The difference from the device of FIG. 6 is that in the device of FIG. 6, the result of the expansion process is stored in the memory 5 and one wavefront expansion module 4 is used.
7 is used as many times as necessary, in the apparatus shown in FIG. 7, the wavefront expansion modules 4 are arranged in series and connected in multiple stages so that multistage expansion processing is performed at one time.
In the wavefront expansion module 4, there is a processing time delay k due to the delay element 2. C- held in memory 1
Letting l be the time required to read all the data in Space, an integer n satisfying n · k> l can be obtained. n
N · k for data to pass through the wavefront expansion module in stages
Takes time. When this time elapses, the first wavefront expansion module 4 (1) has finished the information processing held in the memory 1 and is ready to process the output of the nth stage. That is, the n wavefront expansion modules are connected in a ring shape, and the expansion processing is performed at a high speed by a pipeline method. At this time, the collision of the wavefront is monitored by the expansion arithmetic unit 3, and the result of the expansion process is read out to the memory 5 as soon as the collision is detected.

第8図は、本発明に従って波面伝播装置を利用しロボッ
トのアームの軌道を計画する装置の更に別の例を示す。
FIG. 8 shows yet another example of a device for planning the trajectory of a robot arm using a wavefront propagation device according to the present invention.

第7図の装置との差異は、第8図の装置は干渉チェック
モジュール7を各膨張処理モジュールの直後に接続した
ことにある。第7図の装置においては、予めC-Spaceの
障害物の情報を算出し、メモリ1に保持しておかねばな
らなかったのに対し、第8図の装置においてはC-Space
の障害物の検出も、波面の膨張処理と同時に行うことが
できる。多段直列接続の膨張処理モジュール4(1)〜
4(n)の間では一格子点のデータは順次受け渡される
ようになっている。そこで、干渉チェックモジュール7
を設けて、膨張処理演算装置3の出力に現われる一格子
のデータからロボットのアームのその格子点に相当する
関節角を知り、この関節角の姿勢をロボットにとらして
そのとき作業環境内で障害物とロボットが干渉するか否
かを判断し、干渉するとその格子点を障害物として登録
する。波面の膨張と同時にC-Spaceの障害物の算出がで
きるため、予めC-Spaceの障害物を算出しておく必要が
ないという利点がある。
The difference from the device of FIG. 7 is that the device of FIG. 8 has the interference check module 7 connected immediately after each expansion processing module. In the device of FIG. 7, the information of the obstacle of C-Space had to be calculated in advance and held in the memory 1, whereas in the device of FIG.
The obstacle can be detected simultaneously with the wavefront expansion process. Expansion treatment module 4 (1) with multi-stage series connection
During 4 (n), the data of one grid point is sequentially transferred. Therefore, the interference check module 7
Is provided, the joint angle corresponding to the lattice point of the robot arm is known from the data of one lattice appearing in the output of the expansion processing arithmetic unit 3, and the posture of this joint angle is taken by the robot at that time in the working environment. It is determined whether or not the obstacle and the robot interfere, and if they interfere, the lattice point is registered as an obstacle. Since the C-Space obstacle can be calculated simultaneously with the expansion of the wavefront, there is an advantage that it is not necessary to calculate the C-Space obstacle in advance.

〔発明の効果〕〔The invention's effect〕

本発明はこれまで複雑なプログラムを用いて行われてい
たロボットの軌道計画を、膨張処理と言う単純な繰り返
し演算を専用ハードウエアで行うことにより、より高速
に、より小規模の装置で実現することを可能とするもの
であり、ロボットの機能を高めることができるものであ
る。
The present invention realizes a trajectory planning of a robot, which has been performed using a complicated program up to now, at a higher speed and with a smaller device by performing a simple repetitive operation called expansion processing with dedicated hardware. It is possible to improve the function of the robot.

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

第1−(1)、1−(2)、1−(3)、1−(4)、
1−(5)及び1−(6)図は、本発明の基本的動作の
様子を2自由度のロボット・アームの場合について、視
覚的に図示したものである。 第2図は従来の軌道計画法、特に自由空間の表現法を説
明する図である。 第3図は従来の軌道計画法、特に軌道を探索する際の接
続グラフを第2図の場合について示す。 第4−(1)図と第4−(2)図は遅延素子を用いて一
次元データから近傍点を得るための方法を説明する図で
ある。 第5図は膨張処理演算装置における情報処理の手順を示
すフローチャートである。 第6図は本発明の軌道計画法を実施する軌道計画装置の
一例を示すブロック図である。 第7図は軌道計画装置の別の例を示すブロックである。 第8図は軌道計画装置の更に別の例を示すブロック図で
ある。 図中: 1……姿勢空間(Configuration Space)のデータを保
持するメモリ 2……遅延素子 3……膨張処理演算装置 4……膨張処理モジュール 5……膨張処理結果を保持するメモリ 6……汎用プロセッサ 7……干渉チェック・モジュール
1- (1), 1- (2), 1- (3), 1- (4),
1- (5) and 1- (6) are visual illustrations of the basic operation of the present invention in the case of a robot arm having two degrees of freedom. FIG. 2 is a diagram for explaining a conventional trajectory planning method, particularly a free space expression method. FIG. 3 shows a conventional trajectory planning method, particularly a connection graph for searching a trajectory for the case of FIG. FIGS. 4- (1) and 4- (2) are diagrams for explaining a method for obtaining a neighboring point from one-dimensional data using a delay element. FIG. 5 is a flowchart showing the procedure of information processing in the expansion processing arithmetic unit. FIG. 6 is a block diagram showing an example of a trajectory planning device for implementing the trajectory planning method of the present invention. FIG. 7 is a block diagram showing another example of the trajectory planning device. FIG. 8 is a block diagram showing still another example of the trajectory planning device. In the figure: 1 ... Memory for holding data of Configuration Space 2 ... Delay element 3 ... Expansion processing arithmetic unit 4 ... Expansion processing module 5 ... Memory for holding expansion processing result 6 ... General purpose Processor 7: Interference check module

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】N個の自由度をもつロボットのアームが動
く作業環境の障害物とアームの出発点における初期姿勢
と到着点における最終姿勢とをマップした姿勢空間をつ
くり; この姿勢空間をサブ空間に分割し; このように分割した姿勢空間を掃引していき、前記の初
期姿勢及び又は最終姿勢近傍のサブ空間を波面・距離表
示し、そして波面表示したサブ空間近傍のサブ空間を順
次波面・距離表示し; 波面・距離表示したサブ空間が相互に近傍に、又は前記
の初期姿勢もしくは最終姿勢近傍に接近したとき掃引を
停止し; その接近点から前記の初期姿勢及び又は最終姿勢に向っ
て距離の短かくなる方向にサブ空間を辿ってロボットの
アームの軌道を計画することを特徴としたロボットのア
ームの軌道計画法。
1. A posture space in which obstacles in a work environment in which a robot arm having N degrees of freedom moves and an initial posture at a starting point of the arm and a final posture at an arriving point are mapped to form a posture space; Divide into spaces; sweep the posture space divided in this way, display the sub-space near the initial posture and / or the final posture in the wavefront / distance display, and sequentially display the subspaces in the subspace near the wavefront-displayed wavefront.・ Display the distance; stop the sweep when the wave space / distance-displayed subspaces are close to each other or close to the initial posture or the final posture; from the approach point to the initial posture and / or the final posture A trajectory planning method for a robot arm, characterized in that the trajectory of the robot arm is planned by tracing the subspace in the direction in which the distance becomes shorter.
【請求項2】N個の自由度をもつロボットのアームが動
く作業環境の障害物とアームの出発点における初期姿勢
と到着点における最終姿勢をマップし、サブ空間に分割
した姿勢空間の情報を蓄積するメモリ;及び このメモリに接続され、2N+1個の出力端子を有する遅
延素子 を備え、前記の出力端子は遅延素子に沿って展開したサ
ブ空間のうち近傍点となり得るサブ空間が同時的に存在
する位置に配置したことを特徴とした波面伝播装置。
2. Information on a posture space divided into sub-spaces by mapping an obstacle in a work environment in which an arm of a robot having N degrees of freedom moves, an initial posture at a starting point of the arm and a final posture at an arriving point, and dividing the information. A memory for accumulating; and a delay element connected to this memory and having 2N + 1 output terminals, wherein the output terminals simultaneously have subspaces that can be neighboring points among subspaces developed along the delay element A wavefront propagating device characterized in that it is arranged at a position.
JP17528986A 1986-07-25 1986-07-25 Robot arm trajectory planning and wavefront propagation equipment. Expired - Fee Related JPH0719175B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17528986A JPH0719175B2 (en) 1986-07-25 1986-07-25 Robot arm trajectory planning and wavefront propagation equipment.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17528986A JPH0719175B2 (en) 1986-07-25 1986-07-25 Robot arm trajectory planning and wavefront propagation equipment.

Publications (2)

Publication Number Publication Date
JPS6330908A JPS6330908A (en) 1988-02-09
JPH0719175B2 true JPH0719175B2 (en) 1995-03-06

Family

ID=15993512

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17528986A Expired - Fee Related JPH0719175B2 (en) 1986-07-25 1986-07-25 Robot arm trajectory planning and wavefront propagation equipment.

Country Status (1)

Country Link
JP (1) JPH0719175B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6390770B1 (en) 1998-06-17 2002-05-21 Hitachi Construction Machinery Co., Ltd. Fan device and shroud
JP4244443B2 (en) * 1999-05-26 2009-03-25 株式会社安川電機 Robot global motion path planning method and control system
JP2003280710A (en) * 2002-03-20 2003-10-02 Japan Atom Energy Res Inst Generation and control method of working track of robot hand
JP6150386B2 (en) * 2013-04-24 2017-06-21 国立大学法人横浜国立大学 Robot teaching method
CN114523470A (en) * 2021-12-30 2022-05-24 浙江图盛输变电工程有限公司 Robot operation path planning method based on bearing platform linkage

Also Published As

Publication number Publication date
JPS6330908A (en) 1988-02-09

Similar Documents

Publication Publication Date Title
Makhal et al. Reuleaux: Robot base placement by reachability analysis
JP4103057B2 (en) Robot motion path planning method and apparatus
CN110576436B (en) Route planning device, route planning method, and computer-readable recording medium
US5544282A (en) Method and apparatus for planning motions of robot manipulators
US20190321980A1 (en) System and method for trajectory planning for manipulators in robotic finishing applications
CN111552300A (en) Crop picking system based on instance segmentation and path planning
CN115958590A (en) RRT-based mechanical arm deep frame obstacle avoidance motion planning method and device
Sadiq et al. Optimal trajectory planning of 2-DOF robot arm using the integration of PSO based on D* algorithm and cubic polynomial equation
JPH0719175B2 (en) Robot arm trajectory planning and wavefront propagation equipment.
Sadiq et al. Robot arm path planning using modified particle swarm optimization based on D* algorithm
Chandak et al. Path planning for mobile robot navigation using image processing
JP2003029833A (en) Method for generating autonomic traveling path of traveling object
Yamamoto et al. Collision free minimum time trajectory planning for manipulators using global search and gradient method
Jarvis Robot path planning: complexity, flexibility and application scope
Yu et al. An information theoretic approach to viewpoint planning for motion planning of eye-in-hand systems
Cooper et al. Development of a fast inspection system for aerospace composite materials-the IntACom project
Um et al. Simultaneous planning and mapping (spam) for a manipulator by best next move in unknown environments
JP2022092189A (en) Path planning system, path planing method and path planing system for robot arm having joints
Kabanov et al. Self-collision avoidance method for a dual-arm robot
Cha Navigation of a free-ranging mobile robot using heuristic local path-planning algorithm
Du et al. Optimal base placement and motion planning for mobile manipulators
Pollard Planning grasps for a robot hand in the presence of obstacles
Um et al. SPAM for a Manipulator by Best Next Move in Unknown Environments
Wang et al. A Geometric Algorithm for Redundant Inverse Kinematics with Obstacle Avoidance in a Known Environment
Mehrotra et al. Obstacle-free path planning for mobile robots

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees