JP6717164B2 - Operation route planning method - Google Patents

Operation route planning method Download PDF

Info

Publication number
JP6717164B2
JP6717164B2 JP2016216217A JP2016216217A JP6717164B2 JP 6717164 B2 JP6717164 B2 JP 6717164B2 JP 2016216217 A JP2016216217 A JP 2016216217A JP 2016216217 A JP2016216217 A JP 2016216217A JP 6717164 B2 JP6717164 B2 JP 6717164B2
Authority
JP
Japan
Prior art keywords
path
route
smoothing
function
point
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.)
Active
Application number
JP2016216217A
Other languages
Japanese (ja)
Other versions
JP2018069428A (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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2016216217A priority Critical patent/JP6717164B2/en
Publication of JP2018069428A publication Critical patent/JP2018069428A/en
Application granted granted Critical
Publication of JP6717164B2 publication Critical patent/JP6717164B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ロボットの動作経路を計画する動作経路計画方法に関する。 The present invention relates to a motion path planning method for planning a motion path of a robot.

ロボットの動作経路のスタート位置とゴール位置との間には、障害部を回避するように複数の中継点が設定され、隣接する中継点間に中間点が設定され、隣接する中間点を結ぶ経路を平滑化する動作経路計画方法が知られている(特許文献1参照)。例えば、1つ目の中継点と2つ目の中継点との間に位置する中間点と、2つ目の中継点と3つ目の中継点との間に位置する中間点と、を結んだ線を所定関数を用いて曲線にすることで平滑化を行っている。 A plurality of relay points are set between the start position and the goal position of the robot motion path so as to avoid obstacles, intermediate points are set between adjacent relay points, and a route connecting adjacent intermediate points. An operation path planning method for smoothing is known (see Patent Document 1). For example, a midpoint located between the first relay point and the second relay point and a midpoint located between the second relay point and the third relay point are connected. Smoothing is performed by making the curved line a curved line using a predetermined function.

特開2005−309990号公報JP 2005-309990 A

上記動作経路計画方法において、例えば、中継点間で中間点をずらしつつ、その中間点を結び平滑化した経路が障害物に干渉しないように経路を計画する。このため、滑らかで障害物に干渉しない最適な中間点を見つけ出すのに、その計算負荷が高くなる虞がある。 In the above-mentioned operation route planning method, for example, the route is planned so that the intermediate point is shifted between the relay points and the route obtained by connecting the intermediate points and smoothing does not interfere with the obstacle. Therefore, there is a risk that the calculation load will be high in finding the optimum intermediate point that is smooth and does not interfere with the obstacle.

本発明は、かかる課題を解決するためになされたものであり、計算負荷を軽くしつつ、障害物を干渉することなく滑らかに動作できる経路を計画する動作経路計画方法を提供することを主たる目的とする。 The present invention has been made to solve the above problems, and a main object of the present invention is to provide an operation path planning method for planning a path that can smoothly operate without interfering with an obstacle while reducing the calculation load. And

上記目的を達成するための本発明の一態様は、
ロボットの動作経路を計画する動作経路計画方法であって、
前記ロボットの動作環境内の障害物の位置及び形状を含む環境地図情報に基づいて、予め設定された始端点と終端点との間に前記ロボットが前記障害物と干渉しない経路となるように複数のノードを設定するステップと、
隣接するノード間に中間点をそれぞれ設定し、隣接した2つの該中間点の区間と所定関数との合成積を計算することで、該区間に対する平滑化関数の経路を算出するステップと、
該算出した平滑化関数の経路が前記障害物と干渉しない場合、該平滑化関数の経路を新たな経路として生成し、該算出した平滑化関数の経路が前記障害物と干渉する場合、前記中間点と前記ノードとの間を所定比率で分割する分割点を再設定し、該再設定した分割点と前記中間点との間の前記平滑化関数の経路を算出し、該平滑化関数の経路が障害物と干渉するか否かを判定して、前記新たな経路を生成するステップと、
を含む、
ことを特徴する動作経路計画方法
である。
One aspect of the present invention for achieving the above object is
A motion path planning method for planning a motion path of a robot, comprising:
Based on the environment map information including the position and shape of the obstacle in the operating environment of the robot, a plurality of routes are provided between the preset start point and end point so that the robot does not interfere with the obstacle. Configuring the nodes of
Calculating a path of a smoothing function for the section by setting a midpoint between adjacent nodes and calculating a composite product of a section of two adjacent midpoints and a predetermined function;
If the path of the calculated smoothing function does not interfere with the obstacle, the path of the smoothing function is generated as a new path, and if the path of the calculated smoothing function interferes with the obstacle, the intermediate A division point that divides the point and the node at a predetermined ratio is reset, a path of the smoothing function between the reset division point and the intermediate point is calculated, and a path of the smoothing function is calculated. Determine whether or not to interfere with an obstacle to generate the new route,
including,
This is a motion path planning method characterized by the following.

本発明によれば、計算負荷を軽くしつつ、障害物を干渉することなく滑らかに動作できる経路を計画する動作経路計画方法を提供することができる。 Advantageous Effects of Invention According to the present invention, it is possible to provide an operation route planning method for planning a route that can smoothly operate without interfering with an obstacle while reducing the calculation load.

本発明の一実施形態に係るロボットの概略的構成を示す図である。It is a figure which shows schematic structure of the robot which concerns on one Embodiment of this invention. 本発明の一実施形態に係る動作経路計画装置の概略的なシステム構成を示すブロック図である。It is a block diagram showing a schematic system configuration of an operation route planning device concerning one embodiment of the present invention. ロボットの関節部の関節角度と関節ベクトルの距離とのグラフを示す図である。It is a figure which shows the graph of the joint angle of the joint part of a robot, and the distance of a joint vector. 平坦化の一例を説明するための図である。It is a figure for explaining an example of flattening. 平滑化を説明するための図である。It is a figure for demonstrating smoothing. 軟化関数の区間を示す図である。It is a figure which shows the area of a softening function. 軟化関数T(x)の一例をグラフ表示した図である。It is the figure which displayed an example of the softening function T(x) by the graph. 図8に示す軟化関数の生成方法を説明するための図である。It is a figure for demonstrating the generation method of the softening function shown in FIG. 経路平滑化部による平滑化処理のフローを示すフローチャートである。It is a flowchart which shows the flow of the smoothing process by a route smoothing part. 1つのアーム部を有するロボットの概略的構成を示す図である。It is a figure which shows schematic structure of the robot which has one arm part.

以下、図面を参照して本発明の実施形態について説明する。
本発明の一実施形態に係る動作経路計画装置は、ロボットの動作経路を計画する。
図1は、本発明の一実施形態に係るロボットの概略的構成を示す図である。ロボット100は、例えば、人型のロボットであり、頭部101と、胴体部102と、一対のアーム部103と、移動機構104と、制御装置105と、を有している。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
An operation path planning device according to an embodiment of the present invention plans an operation path of a robot.
FIG. 1 is a diagram showing a schematic configuration of a robot according to an embodiment of the present invention. The robot 100 is, for example, a humanoid robot, and has a head 101, a body 102, a pair of arms 103, a moving mechanism 104, and a controller 105.

頭部101にはカメラなどの距離センサが設けられている。胴体部102には、複数の関節部C1〜C5が設けられている。アーム部103は、複数の関節部R1〜R4、L1〜L4と、ハンドR5、L5と、を有している。各関節部R1〜R4、L1〜L4には、各関節部R1〜R4、L1〜L4を回転あるいはスライドさせるサーボモータなどのアクチュエータが設けらている。各関節部R1〜R4、L1〜L4には、各関節部R1〜R4、L1〜L4の回転あるいはスライドを検出するセンサが設けられている。 The head 101 is provided with a distance sensor such as a camera. The body portion 102 is provided with a plurality of joint portions C1 to C5. The arm 103 has a plurality of joints R1 to R4 and L1 to L4 and hands R5 and L5. The joints R1 to R4 and L1 to L4 are provided with actuators such as servo motors that rotate or slide the joints R1 to R4 and L1 to L4. Each of the joints R1 to R4 and L1 to L4 is provided with a sensor that detects rotation or slide of each of the joints R1 to R4 and L1 to L4.

移動機構104は、車輪あるいは脚部を有し、これらを駆動してロボット100を移動させる。制御装置105は、各関節部R1〜R4、L1〜L4のアクチュエータ及び移動機構104を制御して、ロボット100を移動させる。 The moving mechanism 104 has wheels or legs and drives them to move the robot 100. The control device 105 controls the actuators of the joints R1 to R4 and L1 to L4 and the moving mechanism 104 to move the robot 100.

制御装置105は、例えば、環境地図の位置を示す環境地図ベクトル(X、Y)とロボット100の位置(ロボット100の重心位置や中心位置など)を示すロボット地図ベクトル(x、y)とを対応付けて、ロボット100の移動を制御する。なお、上記ロボット100の構成は一例であり、これに限定されない。 The control device 105 associates, for example, an environment map vector (X, Y) indicating the position of the environment map with a robot map vector (x, y) indicating the position of the robot 100 (such as the center of gravity or the center position of the robot 100). In addition, the movement of the robot 100 is controlled. The configuration of the robot 100 is an example, and the present invention is not limited to this.

本実施形態に係る動作経路計画装置1は、ロボット100の各関節部R1〜R4、L1〜L4の位置を示す各関節部R1〜R4、L1〜L4の関節ベクトル、及び、ロボット100の位置(x、y)を示すロボット地図ベクトル、のうちの少なくとも一方の動作経路(以下、動作経路)を計画する。 The motion path planning apparatus 1 according to the present embodiment includes joint vectors R1 to R4 and L1 to L4 indicating the positions of the joints R1 to R4 and L1 to L4 of the robot 100, and the position of the robot 100 ( A motion route (hereinafter, motion route) of at least one of the robot map vectors indicating x, y) is planned.

図2は、本実施形態に係る動作経路計画装置の概略的なシステム構成を示すブロック図である。本実施形態に係る動作経路計画装置1は、外部情報取得部2と、経路生成部3と、経路平坦化部4と、経路平滑化部5と、経路出力部6と、を備えている。 FIG. 2 is a block diagram showing a schematic system configuration of the operation route planning apparatus according to the present embodiment. The operation route planning apparatus 1 according to the present embodiment includes an external information acquisition unit 2, a route generation unit 3, a route flattening unit 4, a route smoothing unit 5, and a route output unit 6.

動作経路計画装置1は、例えば、制御処理、演算処理等と行うCPU(Central Processing Unit)、CPUによって実行される演算プログラム、制御プログラム等が記憶されたROM(Read Only Memory)やRAM(Random Access Memory)からなるメモリ、外部と信号の入出力を行うインターフェイス部(I/F)、などからなるマイクロコンピュータを中心にして、それぞれ、ハードウェア構成されている。CPU、メモリ、及びインターフェイス部は、データバスなどを介して相互に接続されている。 The operation path planning device 1 includes, for example, a CPU (Central Processing Unit) that performs control processing, arithmetic processing, and the like, a ROM (Read Only Memory) and a RAM (Random Access) that store arithmetic programs executed by the CPU, control programs, and the like. Each of the hardware components is mainly composed of a microcomputer including a memory including a memory) and an interface unit (I/F) that inputs and outputs signals to and from the outside. The CPU, memory, and interface section are connected to each other via a data bus or the like.

外部情報取得部2は、頭部のカメラなどの距離センサを用いて、外部環境内の障害物の位置や形状などの外部情報を取得する。外部情報取得部2により取得された外部情報は、環境地図情報としてメモリなどに記憶する。 The external information acquisition unit 2 uses a distance sensor such as a head camera to acquire external information such as the position and shape of an obstacle in the external environment. The external information acquired by the external information acquisition unit 2 is stored in a memory or the like as environment map information.

経路生成部3は、例えば、予め設定されたスタート位置(始端点)及びゴール位置(終端点)と、メモリに記憶されている環境地図情報と、に基づいて、ロボット100と環境地図情報の障害物とが干渉しない、ロボット本体や関節部R1〜R4、L1〜L4の動作経路を生成する。経路生成部3は、例えば、障害物が込み入った環境であっても動作経路の探索が可能な確率的な探索手法を用いて、動作経路を生成する。 The route generation unit 3 may, for example, based on the preset start position (start end point) and goal position (end point) and the environment map information stored in the memory, obstruct the robot 100 and the environment map information. An operation path of the robot body and joints R1 to R4 and L1 to L4 that does not interfere with objects is generated. The route generation unit 3 generates an action route by using a probabilistic search method capable of searching the action route even in an environment in which obstacles are complicated.

なお、この確率的な探索手法の詳細は、例えば、非特許文献:LaValle Steven K, Kuffner Jr. James J.(2001). “Randomized kinodynamic planning”. The International Journal of Robotics Research (IJRR)20(5).に開示されており、これを援用できるものとする。また、上述した動作経路の生成方法は一例であり、これに限定されない。 The details of the probabilistic search method are described in, for example, Non-Patent Document: LaValle Steven K, Kuffner Jr. James J. (2001). “Randomized kinodynamic planning”. The International Journal of Robotics Research (IJRR)20(5 )., which can be incorporated by reference. Further, the method of generating the operation path described above is an example, and the present invention is not limited to this.

経路生成部3は、例えば、図3に示す如く、ロボット100の関節部R1〜R4、L1〜L4の関節ベクトルの動作経路を生成する。図3において、縦軸は関節部R1〜R4、L1〜L4の角度θ(θ(0)、θ(1)、θ(2)、・・・、θ(k))であり、横軸は、関節ベクトルの距離Sである。関節ベクトルは、例えば、以下のように表現される。
θ=(θ、θ、θ、・・・、θ
[θ(0)=(θ(0)、θ(0)、θ(0)、・・・、θ(0))、θi(1)=(θ(1)、θ(1)、θ(1)、・・・、θ(1))、・・・、θi(k)=(θ(k)、θ(k)、θ(k)、・・・、θ(k))]
The path generation unit 3, for example, as illustrated in FIG. 3, generates an operation path of joint vectors of the joints R1 to R4 and L1 to L4 of the robot 100. In FIG. 3, the vertical axis represents the angles θ ii (0), θ i (1), θ i (2),..., θ i (k)) of the joints R1 to R4 and L1 to L4. Yes, the horizontal axis is the distance S of the joint vector. The joint vector is expressed as follows, for example.
θ=(θ 1 , θ 2 , θ 3 ,..., θ n )
i (0)=(θ 1 (0), θ 2 (0), θ 3 (0),..., θ n (0)), θ i (1)=(θ 1 (1), θ 2 (1), θ 3 (1),..., θ n (1)),..., θ i (k)=(θ 1 (k), θ 2 (k), θ 3 (k), ..., θ n (k))]

関節ベクトルの距離Sは、各関節ベクトル間の距離である。なお、経路生成部3は、図3と同様に、縦軸をy座標、横軸をx座標としたロボット地図ベクトル(x、y)の動作経路を生成してもよい。 The joint vector distance S is the distance between the joint vectors. Note that the route generation unit 3 may generate the motion route of the robot map vector (x, y) with the vertical axis at the y coordinate and the horizontal axis at the x coordinate, as in FIG.

上記生成方法によって生成された動作経路のスタート位置とゴール位置との間には、ロボット100が障害物と干渉しない経路となるように複数の中継点が設定される。経路生成部3は、スタート位置とゴール位置の間のこれら中継点を結んだジグザグの動作経路を生成する。 A plurality of relay points are set between the start position and the goal position of the operation route generated by the above generation method so that the robot 100 does not interfere with the obstacle. The route generation unit 3 generates a zigzag motion route connecting these relay points between the start position and the goal position.

経路平坦化部4は、経路生成部3により生成された動作経路を平坦化する。ここで、平坦化とは、上述したように設定された中継点の中から省略可能な中継点を抽出し、抽出された中継点を削除することである。平坦化することで、動作経路が単純化されることになり、ロボット100の無駄な動作が低減(あるいは解消)される。 The route flattening unit 4 flattens the operation route generated by the route generation unit 3. Here, the flattening is to extract an optional relay point from the relay points set as described above and delete the extracted relay point. By flattening, the movement path is simplified, and unnecessary movement of the robot 100 is reduced (or eliminated).

図4は、上記平坦化の一例を説明するための図である。例えば、図4において、p1はスタート点、p2〜p5は中継点、p6はゴール点とする。まず、経路平坦化部4は、スタート点p1から何点先(2点以上先から端点までの間)までの平坦化を検討するか指定する。この指定は、ユーザによって経路平坦化部4に入力されても良いし、経路平坦化部4が予め設定されたデフォルト値を用いるようにしても良い。ここでは、3点先(p4)までと指定された場合を例にして説明する。このとき、経路平坦化部4は、p1とp4とを線分で結び、メモリの環境地図情報に基づいて、この線分上のある一定間隔毎の点が障害物と干渉するか否かを検証する。経路平坦化部4は、検証の結果、障害物との干渉がない場合は、p1とp4とを結んだ経路を新経路とする。 FIG. 4 is a diagram for explaining an example of the flattening. For example, in FIG. 4, p1 is a start point, p2 to p5 are relay points, and p6 is a goal point. First, the path flattening unit 4 specifies how many points (from two points or more to the end point) to be considered for flattening from the start point p1. This designation may be input to the route flattening unit 4 by the user, or the route flattening unit 4 may use a preset default value. Here, description will be made by taking as an example the case where three points ahead (p4) are designated. At this time, the route flattening unit 4 connects p1 and p4 with a line segment, and determines whether points on the line segment at a certain fixed interval interfere with the obstacle based on the environment map information in the memory. Verify. As a result of the verification, if there is no interference with the obstacle, the route flattening unit 4 sets the route connecting p1 and p4 as the new route.

一方、経路平坦化部4は、検証の結果、障害物と干渉する場合は、p1とp3とを結んだ経路について同様の検証を行い障害物との干渉がない場合、p1とp3とを結んだ経路を新経路とする。p1とp3とを結んだ経路が障害物と干渉する場合、経路平坦化部4は、この区間での平坦化を行わない。そして、経路平坦化部4は、平坦化後の終点から再度次の平坦化を行う。例えば、経路平坦化部4は、p1とp4とを結んだ経路を新経路とした場合、p4をスタート点として次の平坦化処理を実行する。このようにして、経路平坦化部4は、順次、経路の平坦化を行い、動作経路のスタート位置からゴール位置までの全てに関して平坦化を行う。なお、上述した平坦化の方法は、一例でありこれに限定されない。 On the other hand, if the result of the verification is that the path flattening unit 4 interferes with the obstacle, the path flattening unit 4 performs the same verification for the path connecting p1 and p3, and if there is no interference with the obstacle, it connects p1 and p3. The new route is defined as the new route. When the route connecting p1 and p3 interferes with an obstacle, the route flattening unit 4 does not perform flattening in this section. Then, the path flattening unit 4 performs the next flattening again from the end point after the flattening. For example, when the route connecting p1 and p4 is the new route, the route flattening unit 4 executes the next flattening process with p4 as the start point. In this way, the path flattening unit 4 sequentially flattens the paths and flattens all the movement paths from the start position to the goal position. The above-described flattening method is an example, and the present invention is not limited to this.

経路平滑化部5は、経路平坦化部4により平坦化されたジグザグの動作経路を平滑化する。ここで、平滑化とは、上述したように設定された経路を滑らかな曲線にすることを指す。平坦化が終了した時点での動作経路は、各中継点において急激に方向が変わる、所謂ジグザグの経路となっている。これを滑らかな曲線とすることで、ロボット100の動作が滑らかとなる。ここでは、平滑化後の経路が無限回微分可能な関数によって近似されるため、経路自体の滑らかさに加えて、その経路上の移動速度及び加速度の滑らかさも保証される。平滑化に際して、滑らかにした動作経路が障害物と干渉するか検証し、干渉する場合はその干渉が回避されるまで平滑化が再履行される。 The path smoothing unit 5 smoothes the zigzag operation path flattened by the path flattening unit 4. Here, smoothing refers to making the route set as described above into a smooth curve. The operation path at the time when the flattening is completed is a so-called zigzag path in which the direction changes abruptly at each relay point. By making this a smooth curve, the operation of the robot 100 becomes smooth. Here, since the smoothed path is approximated by an infinitely differentiable function, smoothness of the moving speed and acceleration on the path is guaranteed in addition to the smoothness of the path itself. During smoothing, it is verified whether the smoothed movement path interferes with the obstacle, and if it does, the smoothing is re-implemented until the interference is avoided.

ところで、従来の動作経路計画装置において、例えば、中継点間で中間点をずらしつつ、その中間点を結び平滑化した経路が障害物に干渉しないように経路を計画する。このため、滑らかで障害物に干渉しない最適な中間点を見つけ出すのに、その計算負荷が高くなる虞がある。 By the way, in a conventional operation route planning apparatus, for example, a route is planned so that the intermediate point is shifted between relay points and the smoothed route is connected to the intermediate point so as not to interfere with an obstacle. Therefore, there is a risk that the calculation load will be high in finding the optimum intermediate point that is smooth and does not interfere with the obstacle.

これに対し、本実施形態に係る動作経路計画装置において、経路平滑化部5は、隣接するノード間に中間点をそれぞれ設定し、隣接した2つの該中間点の区間と軟化関数との合成積を計算することで、該区間に対する平滑化関数の経路を算出する。そして、経路平滑化部5は、該算出した平滑化関数の経路が障害物と干渉しない場合、該平滑化関数の経路を新たな経路として生成、該算出した平滑化関数の経路が障害物と干渉する場合、中間点とノードとの間を所定比率で分割する分割点を再設定し、該再設定した分割点と中間点との間の平滑化関数の経路を算出し、該平滑化関数の経路が障害物と干渉するか否かを判定して、新たな経路を生成する。 On the other hand, in the operation route planning apparatus according to the present embodiment, the route smoothing unit 5 sets intermediate points between adjacent nodes, respectively, and synthesizes a product of the two adjacent intermediate points and the softening function. By calculating, the path of the smoothing function for the section is calculated. When the calculated smoothing function path does not interfere with the obstacle, the path smoothing unit 5 generates the smoothing function path as a new path, and the calculated smoothing function path is an obstacle. In the case of interference, a dividing point that divides the intermediate point and the node at a predetermined ratio is reset, a path of the smoothing function between the reset dividing point and the intermediate point is calculated, and the smoothing function is calculated. A new route is generated by determining whether or not the route of 1 interferes with the obstacle.

これにより、各ノード間に中間点及び分割点を自動的に設定し、設定した中間点及び分割点に対して平滑化関数を算出して障害物の干渉を判定できるため、滑らかで障害物に干渉しない最適な中間点及び分割点を自動的に設定できる。したがって、計算負荷を軽くしつつ、障害物を干渉することなく滑らかに動作できる経路を計画できる。 With this, it is possible to automatically set the intermediate points and the dividing points between each node, calculate the smoothing function for the set intermediate points and the dividing points, and determine the interference of the obstacles. Optimal midpoints and division points that do not interfere can be set automatically. Therefore, it is possible to plan a route that can smoothly operate without interfering with an obstacle while reducing the calculation load.

経路平滑化部5は、例えば、経路平坦化部4により平坦化された動作経路と、多項式の軟化関数(所定関数)と、の合成積を行うことにより、その動作経路を平滑化する。 The path smoothing unit 5 smoothes the operation path by, for example, performing a composite product of the operation path flattened by the path flattening unit 4 and the softening function (predetermined function) of the polynomial.

図5は、上記平滑化を説明するための図である。図5において、n0〜n4は、上述のように設定された動作経路の中継点であり、ノードである。sn_0〜sn4は、ノードn0〜n4に対応する関節ベクトルの距離である。m1〜m4は、動作経路の隣接するノード間の中間点である。s_1〜s_4は、中間点m1〜m4に対応する関節ベクトルの距離である。m11〜m31は、動作経路の中間点と隣接するノード間を所定比率(例えば、1:1、や2:3など)で分割する分割点である。所定比率は、例えば、ロボット100の体格や環境状態(障害物の数、大きさ、など)を考慮して実験的に求めた最適値がメモリなどに予め設定されている。sm_11〜sm_31は、分割点m11〜m31に対応する関節ベクトルの距離である。 FIG. 5 is a diagram for explaining the smoothing. In FIG. 5, n0 to n4 are relay points and nodes of the operation route set as described above. sn_0 to sn4 are joint vector distances corresponding to the nodes n0 to n4. m1 to m4 are intermediate points between adjacent nodes in the operation path. s_1 to s_4 are joint vector distances corresponding to the intermediate points m1 to m4. m11 to m31 are division points that divide the intermediate point of the operation path and the adjacent nodes at a predetermined ratio (for example, 1:1 or 2:3). As the predetermined ratio, for example, an optimum value experimentally obtained in consideration of the physique of the robot 100 and the environmental condition (number of obstacles, size, etc.) is preset in a memory or the like. sm_11 to sm_31 are joint vector distances corresponding to the division points m11 to m31.

経路平滑化部5は、例えば、図5に示す如く、まずノードn1近傍での平滑化を行う。
経路平滑化部5は、動作経路(実線(1))の中間点m1、m2の区間[s_1、s_2]と、図6に示す軟化関数の区間[−a/2、a/2]と、を合せる。例えば、経路平滑化部5は、中間点m1とノードn1との区間[s_1、sn_1]の距離と、ノードn1と中間点m2の区間[sn_1、s_2]の距離と、のうち短い方(この場合、区間[s_1、sn_1])を選択する。経路平滑化部5は、選択した区間[s_1、sn_1]を2倍したものと、区間[−a/2、a/2]の間隔が等しくなるように、aを設定することで、区間[s_1、s_2]と、区間[−a/2、a/2]と、を合せる(s_1=−a/2、s_2=a/2)。そして、経路平滑化部5は、区間[s_1、s_2]と、区間[−a/2、a/2]と、の合成績を計算し、平滑化関数(点線(2))を生成する。
The route smoothing unit 5 first performs smoothing in the vicinity of the node n1, as shown in FIG. 5, for example.
The route smoothing unit 5, the midpoint m1, m2 section of the movement path (solid line (1)) [s_1, s_2 ] and the interval of the softening function shown in FIG. 6 [-a n / 2, a n / 2] And, For example, the route smoothing unit 5 selects the shorter one of the distance [s_1, sn_1] between the intermediate point m1 and the node n1 and the distance [sn_1, s_2] between the node n1 and the intermediate point m2. In this case, the section [s_1, sn_1]) is selected. The route smoothing unit 5, the selected interval [s_1, sn_1] to that doubled, so that the distance interval [-a n / 2, a n / 2] are equal, by setting the a n , The section [s_1, s_2] and the section [-a n /2, a n /2] are combined (s_1 = -a n /2, s_2 = a n /2). Then, the route smoothing unit 5, generates the interval [s_1, s_2] a, and the interval [-a n / 2, a n / 2], the focus score was calculated for the smoothing function (dotted line (2)) To do.

経路平滑化部5は、メモリの環境地図情報に基づいて、生成した平滑化関数の経路が障害物と干渉するか否かを確認する。この場合、平滑化関数の経路が障害物と干渉するので、経路平滑化部5は、生成した平滑化関数を破棄する。 The route smoothing unit 5 confirms whether the route of the generated smoothing function interferes with an obstacle based on the environment map information in the memory. In this case, since the path of the smoothing function interferes with the obstacle, the path smoothing unit 5 discards the generated smoothing function.

ここで、分割点m11とノードn1間の距離が所定距離εよりも大きい場合、経路平滑化部5は、次の平滑化処理を継続する。所定距離εは、例えば、ロボット100の体格や環境状態(障害物の数、大きさ、など)を考慮して実験的に求めた最適値がメモリなどに予め設定されている。経路平滑化部5は、動作経路の分割点m11、m2の区間[s_11、s_2]と、軟化関数の区間[−a/2、a/2]と、を合せて(s_11=−a/2、s_2=a/2)、合成績を計算し、平滑化関数(実線(3))を生成する。この場合、平滑化関数が障害物と干渉しないので、経路平滑化部5は、その平滑化関数を新たな動作経路とする。一方で、分割点m11とノードn1間の距離が所定距離ε以下の場合、経路平滑化部5は、平滑化処理を中止し、動作経路の中間点m1、m2の区間[s_1、s_2]を、そのまま、ジグザグ状態で残す。この場合、動作経路はm1、n1、m2となる。 Here, when the distance between the division point m11 and the node n1 is larger than the predetermined distance ε, the route smoothing unit 5 continues the next smoothing process. For the predetermined distance ε, for example, an optimum value experimentally obtained in consideration of the physique of the robot 100 and the environmental state (number of obstacles, size, etc.) is preset in a memory or the like. The route smoothing unit 5, the dividing point of the motion path m11, m @ 2 section of [s_11, s_2] and the interval of the softening function [-a n / 2, a n / 2] and, the combined (s_11 = -a n /2, s_2 = a n /2), the result is calculated, and a smoothing function (solid line (3)) is generated. In this case, since the smoothing function does not interfere with the obstacle, the path smoothing unit 5 sets the smoothing function as a new operation path. On the other hand, when the distance between the division point m11 and the node n1 is less than or equal to the predetermined distance ε, the route smoothing unit 5 stops the smoothing process and sets the section [s_1, s_2] of the intermediate points m1, m2 of the operation route. , Leave the zigzag condition as it is. In this case, the operation paths are m1, n1 and m2.

同様にして、経路平滑化部5は、動作経路の区間[s_2、s_3]、及び[s_3、s_4]についても、平滑化を行い、新たな動作経路を生成する。 Similarly, the path smoothing unit 5 also performs smoothing on the sections [s_2, s_3] and [s_3, s_4] of the operation path to generate a new operation path.

ここで、上述した軟化関数について、説明する。
図7(a)〜(d)は、軟化関数T(x)の一例をグラフ表示した図である。
軟化関数は、例えば、テナリー多項式(Ternary Polynomial)関数である。テナリー多項式関数は、は、関数値の増加領域、一定領域、減少領域の三領域を有し、一定領域を挟んで増加領域と減少領域が対称に表される多項式関数である。なお、テナリー多項式の詳細については、本出願人が既に提出した特開2009−053926号公報に開示されており、これを援用できるものする。
Here, the softening function described above will be described.
7A to 7D are graphs showing an example of the softening function T(x).
The softening function is, for example, a Ternary Polynomial function. The tenary polynomial function is a polynomial function that has three areas, that is, an increase area, a constant area, and a decrease area of the function value, and the increase area and the decrease area are symmetric with respect to the constant area. The details of the tenary polynomial are disclosed in Japanese Patent Application Laid-Open No. 2009-053926 already filed by the present applicant, which can be incorporated by reference.

この軟化関数T(x)は、例えば次の式(1)により表される。

Figure 0006717164
式(1) The softening function T(x) is represented by the following equation (1), for example.
Figure 0006717164
Formula (1)

この式(1)において、次数0のT(x)は、T(x)=C(−a/2<x<a/2)、T(x)=0(x≦−a/2、x≧a/2)である。C、aは定数である。iは0又は正の整数である。 In this formula (1), T 0 (x) of degree 0 is T 0 (x)=C(−a 0 /2<x<a 0 /2), T 0 (x)=0 (x≦−) a 0 /2, x≧a 0 /2). C and a 0 are constants. i is 0 or a positive integer.

図7(a)は、軟化関数の次数0のT(x)を示したものであり、矩形波状のプロファイルとなっている。図7(b)は、軟化関数の次数1のT(x)を示したものであり、台形状のプロファイルとなっている。図7(c)は、軟化関数の次数2のT(x)を示したものであり、滑らかに変化する台形状のプロファイルとなっている。図7(d)は、軟化関数の次数3のT(x)を示したものであり、滑らかに変化する台形状のプロファイルとなっている。 FIG. 7A shows T 0 (x) of order 0 of the softening function, which has a rectangular wave profile. FIG. 7B shows T 1 (x) of degree 1 of the softening function, which has a trapezoidal profile. FIG. 7C shows T 2 (x) of degree 2 of the softening function, and has a trapezoidal profile that smoothly changes. FIG. 7D shows T 3 (x) of degree 3 of the softening function, which has a trapezoidal profile that smoothly changes.

図8に示すように、軟化関数T(x)は、T(x)−xの座標系においてT(x)の波形を原点を中心に点対称に振り分けてT′i+1(x)を生成し、このT′i+1(x)を積分することによって、一つ次数の高いTi+1(x)を生成することができる。 As shown in FIG. 8, the softening function T i (x) is, T i (x) the waveform of the T i (x) in the coordinate system of -x by distributing in point symmetry around the origin T 'i + 1 (x) Is generated and T′ i+1 (x) is integrated, it is possible to generate T i+1 (x) having a higher order.

例えば、T(x)からT(x)を生成する場合、T(x)を対称分割(対称振分け)し積分してT(x)を生成し、T(x)を対称分割し積分してT(x)を生成してもよいし、T(x)を対称分割した後、さらに対称分割してT″(x)を生成し、T″(x)を二回積分してT(x)を生成してもよい。 For example, T 0 when generating T 2 (x) is from (x), T 0 (x) is symmetrical division (symmetrical distribution) integrated to generate the T 1 (x), symmetrical T 1 (x) divided may generate the T 2 (x) by integrating, T 0 (x) is after symmetrical division, "generates a 2 (x), T" further symmetrically divide and T 2 (x) May be integrated twice to generate T 2 (x).

軟化関数T(x)におけるC、aなどの定数は、ロボット100の移動部分における動作の制限値(上限値、下限値)に応じて設定すればよい。例えば、軟化関数T(x)を用いて移動部分の速度プロファイルを生成する場合、図8において、T(x)を速度プロファイルとして設定すると、T′(x)は加速度状態を示し、T″(x)がジャーク状態を示すこととなる。 The constants such as C and a 0 in the softening function T(x) may be set according to the limit values (upper limit value and lower limit value) of the motion in the moving part of the robot 100. For example, when the velocity profile of the moving part is generated using the softening function T(x), if T 2 (x) is set as the velocity profile in FIG. 8, T 2 ′(x) indicates the acceleration state, and T 2 ′(x) indicates the acceleration state. 2 ″(x) indicates a jerk state.

このため、T″(x)の制限値C、−Cとして移動部分のジャーク上限値、下限値を設定し、T′(x)の制限値C・a、−C・aとして移動部分の加速度上限値、下限値を設定し、T(x)の制限値C・(a−a)・aとして移動部分の速度制限値を設定することにより、一義的に定数C、a、aの値が決まる。 Therefore, limit value C of the T 2 "(x), jerk upper limit value of the moving portion as -C, set the lower limit value, T 2 'limit value C · a 0 for (x), as -C · a 0 By setting the upper and lower limits of the acceleration of the moving part and setting the speed limit value of the moving part as the limit value C·(a 1 −a 0 )·a 0 of T 2 (x), a constant is uniquely set. The values of C, a 0 , and a 1 are determined.

このような軟化関数T(x)は、速度、加速度、ジャークなどの微分係数の制限を満たす演算が迅速に行える。このため、軟化関数T(x)を用いて動作経路の演算を行うことにより、速度などの所定の制限を満たす移動経路を迅速に演算することができる。 Such a softening function T(x) can quickly perform an operation satisfying the limitation of differential coefficients such as velocity, acceleration and jerk. Therefore, by calculating the motion path using the softening function T(x), it is possible to quickly calculate the movement path that satisfies a predetermined limit such as speed.

次に、動作経路と多項式の軟化関数との合成積の演算方法について詳細に説明する。
経路平滑化部5は、経路生成部3により生成された動作経路f(y)と、上述した多項式の軟化関数T(x)と、に基づいて、下記式(2)を用いて合成積f(x)を行う。

Figure 0006717164
式(2) Next, the method of calculating the composite product of the motion path and the polynomial softening function will be described in detail.
The route smoothing unit 5 uses the following equation (2) to synthesize a product based on the motion route f(y) generated by the route generation unit 3 and the above-described polynomial softening function T n (x). Perform f d (x).
Figure 0006717164
Formula (2)

軟化関数T(x)は、n−1回微分可能な関数であり、パラメータa、a、・・・・、a、及びCを有する。d=(a、a、・・・・、a、C)と定義する。Cは、軟化関数の積分値が1となるように調整されている。f(x)はn−1回微分可能な関数で、f→fに一様に収束する。 The softening function T n (x) is a function that can be differentiated n−1 times, and has parameters a 0 , a 1 ,..., An , and C. It is defined as d=(a 0 , a 1 ,..., An , C). C is adjusted so that the integral value of the softening function becomes 1. f d (x) is a function that can be differentiated n−1 times, and converges uniformly as f d →f.

経路出力部6は、経路平滑化部5により平滑化した動作経路を出力する。例えば、経路出力部6は、図5に示すような関節角度と関節ベクトルの距離との関係を示すグラフデータを平滑化した動作経路として、ロボット100の関節ベクトルの成分毎に出力する。また、経路出力部6は、ロボット地図ベクトル(x、y)の軌道を、平滑化した動作経路として出力する。経路出力部6は、平滑化した動作経路を、ロボット100を制御する制御装置105や上記グラフデータを表示する表示部に出力する。 The route output unit 6 outputs the operation route smoothed by the route smoothing unit 5. For example, the route output unit 6 outputs, for each component of the joint vector of the robot 100, as a smoothed movement route, graph data showing the relationship between the joint angle and the distance of the joint vector as shown in FIG. Further, the route output unit 6 outputs the trajectory of the robot map vector (x, y) as a smoothed movement route. The path output unit 6 outputs the smoothed operation path to the control device 105 that controls the robot 100 and the display unit that displays the graph data.

次に、本実施形態に係る動作経路計画方法について、詳細に説明する。図9は、動作経路計画方法のフローを示すフローチャートである。経路生成部3は、メモリの環境地図情報に基づいて、予め設定された始端点と終端点との間にロボット100が障害物と干渉しない動作経路となるようにノードnを設定する。経路平坦化部4は、経路生成部3により設定された動作経路のノードnの平坦化を行う。 Next, the operation route planning method according to this embodiment will be described in detail. FIG. 9 is a flowchart showing the flow of the operation route planning method. The path generation unit 3 sets the nodes n i based on the environment map information in the memory so that the robot 100 has an operation path that does not interfere with an obstacle between the preset start point and end point. The route flattening unit 4 flattens the node n i of the operation route set by the route generation unit 3.

続いて、経路平滑化部5は、経路平坦化部4により平坦化された動作経路のノードnの平滑化を行う。経路平滑化部5は、動作経路のノードnの平滑化を行う場合、中間点mとノードn間の距離および中間点mi+1とノードn間の距離が所定距離εより大きいか否かを判定する(ステップS101)。iは自然数とする。 Subsequently, the route smoothing unit 5 smoothes the node n i of the operation route flattened by the route flattening unit 4. When smoothing the node n i of the motion path, the route smoothing unit 5 determines whether the distance between the intermediate point m i and the node n i and the distance between the intermediate point m i+1 and the node n i are larger than the predetermined distance ε. It is determined whether or not (step S101). i is a natural number.

経路平滑化部5は、中間点mとノードn間の距離および中間点mi+1とノードn間の距離のうち一方が所定距離ε以下であると判定すると(ステップS101のNO)、次のノードni+1の平滑化を行う。この場合、動作経路は、中間点m、ノードn、及び中間点mi+1を結んだジグザグの経路となる。 When the route smoothing unit 5 determines that one of the distance between the intermediate point m i and the node n i and the distance between the intermediate point m i+1 and the node n i is equal to or less than the predetermined distance ε (NO in step S101), Smooth the next node n i+1 . In this case, the operation path is a zigzag path that connects the midpoint m i , the node n i , and the midpoint m i+1 .

一方、経路平滑化部5は、中間点mとノードn間の距離および中間点mi+1とノードn間の距離が所定距離εより大きいと判定すると(ステップS101のYES)、中間点mと中間点mi+1との間の区間と、対応する軟化関数Tと、を合せて、合成績f(x)を計算し、平滑化関数を生成する(ステップS102)。そして、経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉するか否かを判定する(ステップS103)。 On the other hand, when the route smoothing unit 5 determines that the distance between the intermediate point m i and the node n i and the distance between the intermediate point m i+1 and the node n i are larger than the predetermined distance ε (YES in step S101), the intermediate point is determined. The section between m i and the intermediate point m i+1 and the corresponding softening function T n are combined to calculate the result f d (x), and the smoothing function is generated (step S102). Then, the route smoothing unit 5 determines whether the route of the generated smoothing function interferes with the obstacle (step S103).

経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉しないと判定したとき(ステップS103のNO)、その平滑化関数の経路を新たな経路とし、次のノードni+1の平滑化を行う。一方で、経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉すると判定したとき(ステップS103のYES)、p=1とし、ノードnと中間点mとの間の分割点mipと、ノードnと、の間の距離が所定距離εより大きいか否かを判定する(ステップS104)。 When the route smoothing unit 5 determines that the route of the generated smoothing function does not interfere with the obstacle (NO in step S103), the route of the smoothing function is set as a new route, and the smoothing of the next node n i+1 is performed. To convert. On the other hand, when the path smoothing unit 5 determines that the path of the generated smoothing function interferes with the obstacle (YES in step S103), p=1 is set, and the path between the node ni and the intermediate point mi is set. It is determined whether or not the distance between the division point m ip and the node n i is larger than the predetermined distance ε (step S104).

経路平滑化部5は、分割点mipとノードnとの間の距離が所定距離ε以下であると判定すると(ステップS104のNO)、元のジグザグの経路m1、n1、m2を動作経路とし次のノードni+1の平滑化を行う。一方、経路平滑化部5は、分割点mipとノードn間の距離が所定距離εより大きいと判定すると(ステップS104のYES)、分割点mipと中間点mi+1との区間と、対応する軟化関数Tと、を合せて、合成績f(x)を計算し、平滑化関数を生成する(ステップS105)。経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉するか否かを判定する(ステップS106)。 When the path smoothing unit 5 determines that the distance between the division point m ip and the node n i is equal to or less than the predetermined distance ε (NO in step S104), the original zigzag paths m1, n1, and m2 are set as the operation paths. Then, the next node n i+1 is smoothed. On the other hand, when the route smoothing unit 5 determines that the distance between the division point m ip and the node n i is larger than the predetermined distance ε (YES in step S104), the section between the division point m ip and the intermediate point m i+1 , The corresponding softening function T n and the corresponding softening function T n are combined to calculate the result f d (x) to generate a smoothing function (step S105). The route smoothing unit 5 determines whether the route of the generated smoothing function interferes with an obstacle (step S106).

経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉しないと判定したとき(ステップS106のNO)、その平滑化関数の経路を新たな経路とし、次のノードni+1の平滑化を行う。一方で、経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉すると判定したとき(ステップS106のYES)、p=1、q=1とし、ノードnと中間点mとの間の分割点mi+1qと、ノードnと、の間の距離が所定距離εより大きいか否かを判定する(ステップS107)。 When the route smoothing unit 5 determines that the route of the generated smoothing function does not interfere with the obstacle (NO in step S106), the route of the smoothing function is set as a new route, and the smoothing of the next node n i+1 is performed. To convert. On the other hand, when the route smoothing unit 5 determines that the route of the generated smoothing function interferes with the obstacle (YES in step S106), p=1 and q=1 are set, and the node n i and the intermediate point m 2 are set. It is determined whether or not the distance between the division point m i+1q between and and the node n i is greater than the predetermined distance ε (step S107).

経路平滑化部5は、分割点mi+1qとノードnとの間の距離が所定距離ε以下であると判定すると(ステップS107のNO)、元のジグザグの経路m1、n1、m2を動作経路とし、次のノードni+1の平滑化を行う。一方、経路平滑化部5は、分割点mi+1qとノードnとの間の距離が所定距離εより大きいと判定すると(ステップS107のYES)、分割点mipと分割点mi+1qとの区間と、対応する軟化関数Tと、を合せて、合成績f(x)を計算し、平滑化関数を生成する(ステップS108)。そして、経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉するか否かを判定する(ステップS109) When the path smoothing unit 5 determines that the distance between the division point m i+1q and the node n i is equal to or smaller than the predetermined distance ε (NO in step S107), the original zigzag paths m1, n1, and m2 are set as the operation paths. Then, the next node n i+1 is smoothed. On the other hand, when the route smoothing unit 5 determines that the distance between the division point m i+1q and the node n i is larger than the predetermined distance ε (YES in step S107), the section between the division point m ip and the division point m i+1q. And the corresponding softening function T n are combined to calculate a result f d (x), and a smoothing function is generated (step S108). Then, the route smoothing unit 5 determines whether or not the route of the generated smoothing function interferes with the obstacle (step S109).

経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉しないと判定したとき(ステップS109のNO)、その平滑化関数の経路を新たな経路とし、次のノードni+1の平滑化を行う。一方で、経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉すると判定したとき(ステップS109のYES)、分割点mipとノードnとの間を所定比率で分割した分割点とノードnの間の距離が所定距離εより大きいか否かを判定する(ステップS110)。 When the route smoothing unit 5 determines that the route of the generated smoothing function does not interfere with the obstacle (NO in step S109), the route of the smoothing function is set as a new route, and the smoothing of the next node n i+1 is performed. To convert. On the other hand, when the route smoothing unit 5 determines that the route of the generated smoothing function interferes with the obstacle (YES in step S109), it divides the dividing point m ip and the node n i at a predetermined ratio. It is determined whether or not the distance between the division point and the node n i is larger than the predetermined distance ε (step S110).

経路平滑化部5は、分割点とノードnとの間の距離が所定距離ε以下であると判定すると(ステップS110のNO)、元のジグザグの経路m1、n1、m2を動作経路とし、次のノードni+1の平滑化を行う。一方、経路平滑化部5は、分割点とノードnとの間の距離が所定距離εより大きいと判定すると(ステップS110のYES)、p=p+1、q=q+1(ステップS111)とし、上記(ステップS108)に戻る。 When the path smoothing unit 5 determines that the distance between the division point and the node n i is equal to or less than the predetermined distance ε (NO in step S110), the original zigzag paths m1, n1, and m2 are set as operation paths, Smooth the next node n i+1 . On the other hand, when the route smoothing unit 5 determines that the distance between the division point and the node n i is larger than the predetermined distance ε (YES in step S110), it sets p=p+1 and q=q+1 (step S111), and It returns to (step S108).

以上、本実施形態において、経路生成部3は、ロボット100の動作環境内の障害物の位置及び形状を含む環境地図情報に基づいて、予め設定された始端点と終端点との間でロボット100が障害物と干渉しない経路となるように複数のノードを設定する。経路平滑化部5は、隣接するノード間に中間点をそれぞれ設定し、隣接した2つの該中間点の区間と軟化関数との合成積を計算することで、該区間に対する平滑化関数の経路を算出する。さらに、経路平滑化部5は、該算出した平滑化関数の経路が障害物と干渉しない場合、該平滑化関数の経路を新たな経路として生成、該算出した平滑化関数の経路が障害物と干渉する場合、中間点とノードとの間を所定比率で分割する分割点を再設定し、該再設定した分割点と中間点との間の平滑化関数の経路を算出し、該平滑化関数の経路が障害物と干渉するか否かを判定して、新たな経路を生成する。
これにより、各ノード間に中間点及び分割点を自動的に設定し、設定した中間点及び分割点に対して平滑化関数を算出して障害物の干渉を判定することができ、滑らかで障害物に干渉しない最適な中間点及び分割点を自動的に設定できる。したがって、計算負荷を軽くしつつ、障害物を干渉することなく滑らかに動作できる経路を計画できる。
As described above, in the present embodiment, the route generation unit 3 uses the environment map information including the position and shape of the obstacle in the operating environment of the robot 100 to set the robot 100 between the preset start point and end point. Set multiple nodes so that the route does not interfere with the obstacle. The path smoothing unit 5 sets a midpoint between adjacent nodes and calculates a composite product of a softening function and a section of two adjacent midpoints, thereby determining a path of the smoothing function for the section. calculate. Further, when the calculated smoothing function path does not interfere with the obstacle, the path smoothing unit 5 generates the smoothing function path as a new path, and the calculated smoothing function path is an obstacle. In the case of interference, a dividing point that divides the intermediate point and the node at a predetermined ratio is reset, a path of the smoothing function between the reset dividing point and the intermediate point is calculated, and the smoothing function is calculated. A new route is generated by determining whether or not the route of 1 interferes with the obstacle.
With this, it is possible to automatically set the intermediate points and the dividing points between the respective nodes, calculate the smoothing function for the set intermediate points and the dividing points, and judge the interference of the obstacles. Optimal midpoints and division points that do not interfere with objects can be set automatically. Therefore, it is possible to plan a route that can smoothly operate without interfering with an obstacle while reducing the calculation load.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
上記実施形態において、動作経路計画装置1は、経路平坦化部4を備えない構成であってもよい。この場合、経路平滑化部5は、経路生成部3により生成された動作経路を平滑化する。
上記実施形態において、ロボット100は、例えば、1つのアーム部103を有する片腕ロボットとして構成されてもよく(図10)、アーム部103のみを有するアーム型ロボットであってもよい。さらに、ロボット100は、自律型の車両などの移動体であってもよい。
The present invention is not limited to the above-mentioned embodiment, but can be modified as appropriate without departing from the spirit of the present invention.
In the above embodiment, the operation route planning device 1 may be configured without the route flattening unit 4. In this case, the route smoothing unit 5 smoothes the operation route generated by the route generation unit 3.
In the above embodiment, the robot 100 may be configured as a one-arm robot having one arm unit 103 (FIG. 10) or may be an arm-type robot having only the arm unit 103. Furthermore, the robot 100 may be a mobile body such as an autonomous vehicle.

本発明は、例えば、図9に示す処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。 The present invention can also be realized by causing the CPU to execute a computer program, for example, the processing shown in FIG. 9.

プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。 The program can be stored using various types of non-transitory computer readable media and supplied to the computer. Non-transitory computer readable media include various types of tangible storage media. Examples of the non-transitory computer-readable medium include a magnetic recording medium (for example, flexible disk, magnetic tape, hard disk drive), magneto-optical recording medium (for example, magneto-optical disk), CD-ROM (Read Only Memory), CD-R, It includes a CD-R/W and a semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (random access memory)).

プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。 The program may be supplied to the computer by various types of transitory computer readable media. Examples of transitory computer-readable media include electrical signals, optical signals, and electromagnetic waves. The transitory computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.

1 動作経路計画装置、2 外部情報取得部、3 経路生成部、4 経路平坦化部、5経路平滑化部、6 経路出力部 1 operation route planning device, 2 external information acquisition unit, 3 route generation unit, 4 route flattening unit, 5 route smoothing unit, 6 route output unit

Claims (1)

ロボットの動作経路を計画する動作経路計画方法であって、
前記ロボットの動作環境内の障害物の位置及び形状を含む環境地図情報に基づいて、予め設定された始端点と終端点との間で前記ロボットが前記障害物と干渉しない経路となるように複数のノードを設定するステップと、
隣接するノード間に中間点をそれぞれ設定し、前記ノードに隣接した2つの一方及び他方の該中間点の区間と所定関数との合成積を計算することで、該区間に対する平滑化関数の経路を算出するステップと、
該算出した平滑化関数の経路が前記障害物と干渉しない場合、該平滑化関数の経路を新たな経路として生成し、該算出した平滑化関数の経路が前記障害物と干渉する場合、前記一方の中間点と前記一方及び他方の中間点に隣接したノードとの間を所定比率で分割する分割点を再設定し、該再設定した分割点と前記他方の中間点との間の前記平滑化関数の経路を算出し、該平滑化関数の経路が前記障害物と干渉するか否かを判定して、前記新たな経路を生成するステップと、
を含む、
ことを特徴する動作経路計画方法。
A motion path planning method for planning a motion path of a robot, comprising:
Based on environment map information including the position and shape of obstacles in the operating environment of the robot, a plurality of routes are set between the preset start point and end point so that the robot does not interfere with the obstacles. Configuring the nodes of
The midpoint set respectively between adjacent nodes, by calculating the convolution of the two one and interval and a predetermined function of the other intermediate point adjacent to the node, the path of the smoothing function for inter-compartment A step of calculating,
If the path of the calculated smoothing function does not interfere with the obstacle, the path of the smoothing function is generated as a new path, and if the path of the calculated smoothing function interferes with the obstacle, the one of the an intermediate point of said one and reconfigure the other and a node adjacent to the intermediate point, the division points for dividing between a predetermined ratio, wherein between the middle point of the other and divided point as該再set Calculating a path of the smoothing function, determining whether the path of the smoothing function interferes with the obstacle, and generating the new path;
including,
A motion path planning method characterized by the above.
JP2016216217A 2016-11-04 2016-11-04 Operation route planning method Active JP6717164B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016216217A JP6717164B2 (en) 2016-11-04 2016-11-04 Operation route planning method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016216217A JP6717164B2 (en) 2016-11-04 2016-11-04 Operation route planning method

Publications (2)

Publication Number Publication Date
JP2018069428A JP2018069428A (en) 2018-05-10
JP6717164B2 true JP6717164B2 (en) 2020-07-01

Family

ID=62112345

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016216217A Active JP6717164B2 (en) 2016-11-04 2016-11-04 Operation route planning method

Country Status (1)

Country Link
JP (1) JP6717164B2 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2018014250A (en) 2017-11-21 2019-08-16 Tti Macao Commercial Offshore Ltd Cold fogger.
JP7067289B2 (en) * 2018-06-08 2022-05-16 トヨタ自動車株式会社 Motion planning device and motion planning method
CN108972549B (en) * 2018-07-03 2021-02-19 华南理工大学 Industrial mechanical arm real-time obstacle avoidance planning and grabbing system based on Kinect depth camera
CN109541997B (en) * 2018-11-08 2020-06-02 东南大学 Spraying robot rapid intelligent programming method for plane/approximate plane workpiece
JP7028196B2 (en) * 2019-01-15 2022-03-02 オムロン株式会社 Robot control device, robot control method, and robot control program
JP6792184B1 (en) * 2019-11-27 2020-11-25 株式会社安川電機 Simulation systems, simulation methods, simulation programs, robot manufacturing methods, and robot systems
KR102300752B1 (en) * 2020-01-29 2021-09-10 한국과학기술원 Method and Apparatus for Collision-Free Trajectory Optimization of Redundant Manipulator given an End-Effector Path
CN111890154B (en) * 2020-07-31 2021-08-31 广东博智林机器人有限公司 Polishing method
CN113758484A (en) * 2020-11-30 2021-12-07 北京京东乾石科技有限公司 Path planning method and device
JP7142803B1 (en) * 2021-09-03 2022-09-27 三菱電機株式会社 Robot control system, robot control device, motion planning device, robot control program and motion planning program
CN114200931B (en) * 2021-12-01 2023-06-13 浙江大学 Mobile robot path smoothing method based on B spline curve optimization

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH067848A (en) * 1992-04-20 1994-01-18 Toshiba Corp Device and method for straightening
JPH0756605B2 (en) * 1993-04-19 1995-06-14 株式会社日立製作所 Robot with broken line path interpolation function
JP3513100B2 (en) * 2000-10-26 2004-03-31 ファナック株式会社 Control device
EP1235126B1 (en) * 2001-02-26 2006-09-27 Hitachi, Ltd. Numerically controlled curved surface machining unit
JP4667764B2 (en) * 2004-04-23 2011-04-13 トヨタ自動車株式会社 Route setting method

Also Published As

Publication number Publication date
JP2018069428A (en) 2018-05-10

Similar Documents

Publication Publication Date Title
JP6717164B2 (en) Operation route planning method
US8280574B2 (en) Path planning device and method, cost evaluation device, and moving body
CN112099493B (en) Autonomous mobile robot trajectory planning method, system and equipment
JP5724919B2 (en) Orbit generation device, moving body, orbit generation method and program
JP5886502B2 (en) MOBILE BODY CONTROL DEVICE, MOBILE BODY CONTROL METHOD, AND CONTROL PROGRAM
CN105353725B (en) Auxiliary magnet configuration space circular interpolation method is crossed for industrial robot
JP7067289B2 (en) Motion planning device and motion planning method
JP2020179466A (en) Trajectory planning device and trajectory planning method and program
KR101732902B1 (en) Path planning apparatus of robot and method thereof
WO2018019111A1 (en) Robot and joint motion control method and device therefor
JP2014073550A (en) Path searching method, path searching device, robot control device, robot, and program
US11292132B2 (en) Robot path planning method with static and dynamic collision avoidance in an uncertain environment
JP5555838B2 (en) Trajectory generation method and trajectory generation device
JP2009053926A (en) Route-planning device and route-planning method
JP5926358B1 (en) Tool path curving method and curving device for ensuring shape error
CN112975992A (en) Error-controllable robot track synchronous optimization method
WO2021242215A1 (en) A robot path planning method with static and dynamic collision avoidance in an uncertain environment
JP6672702B2 (en) Control device, machine tool, control method, and computer program
JP4667764B2 (en) Route setting method
CN111283683B (en) Servo tracking accelerated convergence method for robot visual feature planning track
JP2014161917A (en) Robot control system, robot, robot control method, and program
JP2012128585A (en) Mobile device, robot, and control system for the same
JP2014161918A (en) Robot control system, robot, robot control method, and program
JPWO2020179798A1 (en) Machining program conversion device, numerical control device, machining program conversion method and machine learning device
CN113650011B (en) Method and device for planning splicing path of mechanical arm

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191008

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191206

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200512

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200525

R151 Written notification of patent or utility model registration

Ref document number: 6717164

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151