JP2018069428A - Operation path planning method - Google Patents

Operation path planning method Download PDF

Info

Publication number
JP2018069428A
JP2018069428A JP2016216217A JP2016216217A JP2018069428A JP 2018069428 A JP2018069428 A JP 2018069428A JP 2016216217 A JP2016216217 A JP 2016216217A JP 2016216217 A JP2016216217 A JP 2016216217A JP 2018069428 A JP2018069428 A JP 2018069428A
Authority
JP
Japan
Prior art keywords
path
obstacle
smoothing
function
route
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.)
Granted
Application number
JP2016216217A
Other languages
Japanese (ja)
Other versions
JP6717164B2 (en
Inventor
真太郎 吉澤
Shintaro Yoshizawa
真太郎 吉澤
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

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

PROBLEM TO BE SOLVED: To plan a path for allowing a smooth operation without being interfered with an obstacle while alleviating a calculation load.SOLUTION: An operation path planning method includes the steps of: setting a plurality of nodes so as to obtain a path in which a robot does not interfere with an obstacle between a starting endpoint and a terminal endpoint; setting intermediate points between the adjacent nodes, and calculating a path of a smoothening function with respect to zones by calculating a composite product of the zones between the adjacent two intermediate points and a prescribed function; and creating the path of the smoothening function as a new path when the calculated path of the smoothening function does not interfere with the obstacle, resetting a division point at which a clearance between the intermediate point and the node is divided at a prescribed ratio when the calculated path of the smoothening function interferes with the obstacle, calculating the path of the smoothening function between the reset division point and the intermediate point, determining whether or not the path of the smoothening function interferes with the obstacle, and creating a new path.SELECTED DRAWING: Figure 9

Description

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

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

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

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

本発明は、かかる課題を解決するためになされたものであり、計算負荷を軽くしつつ、障害物を干渉することなく滑らかに動作できる経路を計画する動作経路計画方法を提供することを主たる目的とする。   The present invention has been made to solve such a problem, 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 a calculation load. And

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

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

本発明の一実施形態に係るロボットの概略的構成を示す図である。1 is a diagram illustrating a schematic configuration of a robot according to an embodiment of the present invention. 本発明の一実施形態に係る動作経路計画装置の概略的なシステム構成を示すブロック図である。1 is a block diagram showing a schematic system configuration of an operation route planning apparatus according to an 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 demonstrating an example of planarization. 平滑化を説明するための図である。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 the graph of an example of the softening function T (x). 図8に示す軟化関数の生成方法を説明するための図である。It is a figure for demonstrating the production | generation method of the softening function shown in FIG. 経路平滑化部による平滑化処理のフローを示すフローチャートである。It is a flowchart which shows the flow of the smoothing process by a path | 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 route planning apparatus according to an embodiment of the present invention plans an operation route 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 includes a head 101, a body part 102, a pair of arm parts 103, a moving mechanism 104, and a control device 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 portion 103 has a plurality of joint portions R1 to R4, L1 to L4, and hands R5 and L5. Each joint part R1-R4, L1-L4 is provided with an actuator such as a servo motor that rotates or slides each joint part R1-R4, L1-L4. Each joint part R1-R4, L1-L4 is provided with a sensor that detects the rotation or slide of each joint part R1-R4, L1-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 moves the robot 100 by controlling the actuators and movement mechanisms 104 of the joint portions R1 to R4 and L1 to L4.

制御装置105は、例えば、環境地図の位置を示す環境地図ベクトル(X、Y)とロボット100の位置(ロボット100の重心位置や中心位置など)を示すロボット地図ベクトル(x、y)とを対応付けて、ロボット100の移動を制御する。なお、上記ロボット100の構成は一例であり、これに限定されない。   For example, the control device 105 corresponds to an environment map vector (X, Y) indicating the position of the environment map and a robot map vector (x, y) indicating the position of the robot 100 (the center of gravity position, the center position, etc. 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 device 1 according to the present embodiment includes the joint vectors of the joint portions R1 to R4 and L1 to L4 indicating the positions of the joint portions R1 to R4 and L1 to L4 of the robot 100, and the position of the robot 100 ( Plan an operation path (hereinafter, operation path) of at least one of the robot map vectors indicating x, y).

図2は、本実施形態に係る動作経路計画装置の概略的なシステム構成を示すブロック図である。本実施形態に係る動作経路計画装置1は、外部情報取得部2と、経路生成部3と、経路平坦化部4と、経路平滑化部5と、経路出力部6と、を備えている。   FIG. 2 is a block diagram showing a schematic system configuration of the motion route planning apparatus according to the present embodiment. The motion 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) or a RAM (Random Access) that stores arithmetic programs executed by the CPU, control programs, and the like. Hardware is composed mainly of a microcomputer composed of a memory composed of a memory and an interface unit (I / F) for inputting / outputting signals to / from the outside. The CPU, memory, and interface unit are connected to each other via a data bus or the like.

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

経路生成部3は、例えば、予め設定されたスタート位置(始端点)及びゴール位置(終端点)と、メモリに記憶されている環境地図情報と、に基づいて、ロボット100と環境地図情報の障害物とが干渉しない、ロボット本体や関節部R1〜R4、L1〜L4の動作経路を生成する。経路生成部3は、例えば、障害物が込み入った環境であっても動作経路の探索が可能な確率的な探索手法を用いて、動作経路を生成する。   For example, the route generation unit 3 may check the failure of the robot 100 and the environmental map information based on the preset start position (start point) and goal position (end point) and the environmental map information stored in the memory. An operation path of the robot main body and the joint portions R1 to R4 and L1 to L4 that does not interfere with an object is generated. For example, the path generation unit 3 generates an operation path by using a probabilistic search method capable of searching for an operation path even in an environment where 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 this probabilistic search method are, for example, non-patent literature: LaValle Steven K, Kuffner Jr. James J. (2001). “Randomized kinodynamic planning”. The International Journal of Robotics Research (IJRR) 20 (5 ). Is incorporated herein by reference. Further, the above-described operation path generation method 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))]
For example, as illustrated in FIG. 3, the path generation unit 3 generates the motion paths of the joint vectors of the joint parts 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 joint portions R1 to R4 and L1 to L4. Yes, the horizontal axis represents the distance S of the joint vectors. 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 a distance between the joint vectors. Note that the path generation unit 3 may generate an operation path of the robot map vector (x, y) with the y-axis on the vertical axis and the x-coordinate on the horizontal axis, as in FIG.

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

経路平坦化部4は、経路生成部3により生成された動作経路を平坦化する。ここで、平坦化とは、上述したように設定された中継点の中から省略可能な中継点を抽出し、抽出された中継点を削除することである。平坦化することで、動作経路が単純化されることになり、ロボット100の無駄な動作が低減(あるいは解消)される。   The path flattening unit 4 flattens the operation path generated by the path generating unit 3. Here, flattening refers to extracting an optional relay point from relay points set as described above and deleting the extracted relay point. By flattening, the operation path is simplified, and useless operations of the robot 100 are 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 designates how many points ahead (between two or more points and end points) from the start point p1 should be considered. 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, a case where up to three points (p4) is designated will be described as an example. At this time, the path flattening unit 4 connects p1 and p4 with a line segment, and determines whether or not points at certain intervals on the line segment interfere with an obstacle based on the environmental map information in the memory. Validate. If there is no interference with the obstacle as a result of the verification, the route flattening unit 4 sets a route connecting p1 and p4 as a new route.

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

経路平滑化部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 a path set as described above into a smooth curve. The operation path at the time when the planarization is completed is a so-called zigzag path in which the direction suddenly changes at each relay point. By making this a smooth curve, the operation of the robot 100 becomes smooth. Here, since the route after smoothing is approximated by a function that can be differentiated infinitely, in addition to the smoothness of the route itself, the smoothness of the moving speed and acceleration on the route is also guaranteed. At the time of smoothing, it is verified whether or not the smoothed operation path interferes with an obstacle. If there is interference, smoothing is performed again until the interference is avoided.

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

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

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

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

図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 of the operation path set as described above and are nodes. sn_0 to sn4 are distances of joint vectors 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 distances of joint vectors 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, 2: 3, etc.). As the predetermined ratio, for example, an optimum value experimentally determined 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. sm — 11 to sm — 31 are distances of joint vectors corresponding to the dividing 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))を生成する。
For example, as shown in FIG. 5, the path smoothing unit 5 first performs smoothing in the vicinity of the node n1.
The path smoothing unit 5 includes sections [s_1, s_2] between the intermediate points m1 and m2 of the motion path (solid line (1)) and sections [−a n / 2, a n / 2] of the softening function shown in FIG. And match. For example, the path smoothing unit 5 selects the shorter one of the distance between the section [s_1, sn_1] between the intermediate point m1 and the node n1 and the distance between the node n1 and the intermediate point m2 [sn_1, s_2] (this 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 interval [s_1, s_2] a, and the interval [-a n / 2, a n / 2], aligning the (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 or not the route of the generated smoothing function interferes with an obstacle based on the environmental 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 dividing point m11 and the node n1 is larger than the predetermined distance ε, the path smoothing unit 5 continues the next smoothing process. For the predetermined distance ε, for example, an optimum value obtained experimentally 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 path smoothing unit 5 combines the sections [s_11, s_2] of the dividing points m11 and m2 of the motion path and the sections [−a n / 2, a n / 2] of the softening function (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 dividing point m11 and the node n1 is equal to or less than the predetermined distance ε, the path smoothing unit 5 stops the smoothing process and sets the section [s_1, s_2] between the midpoints m1 and m2 of the operation path. Leave it in a zigzag state. In this case, the operation path is m1, n1, and m2.

同様にして、経路平滑化部5は、動作経路の区間[s_2、s_3]、及び[s_3、s_4]についても、平滑化を行い、新たな動作経路を生成する。   Similarly, the path smoothing unit 5 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.
FIGS. 7A to 7D are graphs showing an example of the softening function T (x).
The softening function is, for example, a tenary polynomial function. The tenary polynomial function is a polynomial function that has three regions of a function value increase region, a constant region, and a decrease region, and the increase region and the decrease region are expressed symmetrically across the constant region. 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 used.

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

Figure 2018069428
式(1) This softening function T (x) is expressed by the following equation (1), for example.
Figure 2018069428
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, T 0 (x) = C (-a 0/2 <x <a 0/2), T 0 (x) = 0 (x ≦ - a 0/2, x ≧ a 0/2) a. 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 the degree 0 of the softening function, which is a rectangular wave profile. FIG. 7B shows the T 1 (x) of the degree 1 of the softening function, which is a trapezoidal profile. FIG. 7C shows the T 2 (x) of the degree 2 of the softening function, and has a trapezoidal profile that changes smoothly. FIG. 7D shows T 3 (x) of the degree 3 of the softening function, and has a trapezoidal profile that changes smoothly.

図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) , And integrating T ′ i + 1 (x), it is possible to generate T i + 1 (x) having a high degree.

例えば、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) T 2 (x) may be generated by dividing and integrating, or after T 0 (x) is symmetrically divided, T ″ 2 (x) is generated by further symmetrically dividing 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)がジャーク状態を示すこととなる。 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 operation in the moving part of the robot 100. For example, when generating the velocity profile of the moving part 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 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 acceleration upper limit value and lower limit value 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 calculations that satisfy the limitations of differential coefficients such as speed, acceleration, jerk, and the like. For this reason, by calculating the operation path using the softening function T (x), it is possible to quickly calculate a movement path that satisfies a predetermined restriction such as speed.

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

Figure 2018069428
式(2) Next, a method for calculating the product of the motion path and the polynomial softening function will be described in detail.
The path smoothing unit 5 uses the following equation (2) based on the motion path f (y) generated by the path generation unit 3 and the above-described polynomial softening function T n (x). Perform f d (x).
Figure 2018069428
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 ,..., A n , and C. It is defined as d = (a 0 , a 1 ,..., a n , C). C is adjusted so that the integrated value of the softening function is 1. f d (x) is a function that can be differentiated n−1 times, and converges uniformly to f d → f.

経路出力部6は、経路平滑化部5により平滑化した動作経路を出力する。例えば、経路出力部6は、図5に示すような関節角度と関節ベクトルの距離との関係を示すグラフデータを平滑化した動作経路として、ロボット100の関節ベクトルの成分毎に出力する。また、経路出力部6は、ロボット地図ベクトル(x、y)の軌道を、平滑化した動作経路として出力する。経路出力部6は、平滑化した動作経路を、ロボット100を制御する制御装置105や上記グラフデータを表示する表示部に出力する。   The path output unit 6 outputs the operation path smoothed by the path smoothing unit 5. For example, the path output unit 6 outputs the graph data indicating the relationship between the joint angle and the distance between the joint vectors as shown in FIG. The path output unit 6 outputs the trajectory of the robot map vector (x, y) as a smoothed operation path. The route output unit 6 outputs the smoothed operation route 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 the present embodiment will be described in detail. FIG. 9 is a flowchart showing the flow of the operation path planning method. Route generating unit 3, based on the environment map information memory, and sets the node n i as the robot 100 is in an operating path which does not interfere with the obstacle between the preset starting point and end point. Route flattening unit 4, is flattened at the node n i of the set movement path by the path generating portion 3.

続いて、経路平滑化部5は、経路平坦化部4により平坦化された動作経路のノードnの平滑化を行う。経路平滑化部5は、動作経路のノードnの平滑化を行う場合、中間点mとノードn間の距離および中間点mi+1とノードn間の距離が所定距離εより大きいか否かを判定する(ステップS101)。iは自然数とする。 Subsequently, the route smoothing unit 5 performs a smoothing of the nodes n i of the flattened motion path by the path flattening unit 4. The route smoothing unit 5, if the smoothing of the nodes n i operation path, or the distance between the midpoint m i and node n distance between i and midpoint m i + 1 and node n i is greater 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を結んだジグザグの経路となる。 The route smoothing unit 5, when one of the distance between the midpoint m i and node n i distance and the midpoint between the m i + 1 and node n i is determined to be equal to or less than a predetermined distance epsilon (NO in step S101), The next node n i + 1 is smoothed. In this case, the operation path is a zigzag path connecting the intermediate point mi , the node ni , and the intermediate point mi + 1 .

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

経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉しないと判定したとき(ステップS103のNO)、その平滑化関数の経路を新たな経路とし、次のノードni+1の平滑化を行う。一方で、経路平滑化部5は、生成した平滑化関数の経路が障害物に干渉すると判定したとき(ステップS103のYES)、p=1とし、ノードnと中間点mとの間の分割点mipと、ノードnと、の間の距離が所定距離εより大きいか否かを判定する(ステップS104)。 When the path smoothing unit 5 determines that the generated smoothing function path does not interfere with the obstacle (NO in step S103), the path smoothing function 5 sets the smoothing function path as a new path, and smoothes the next node n i + 1 . To do. On the other hand, the route smoothing unit 5, when the generated route smoothing function is determined to interfere with an obstacle (YES in step S103), and p = 1, between the nodes n i and midpoint m i determining a dividing point m ip, and node n i, the whether is greater than a predetermined distance ε distance between (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)。 The route smoothing unit 5, the distance between the dividing point m ip and node n i is determined to be equal to or less than a predetermined distance epsilon (NO in step S104), and operation route paths m1, n1, m @ 2 of the original zigzag Then, the next node n i + 1 is smoothed. Meanwhile, the route smoothing unit 5, the distance between the dividing point m ip and node n i is determined to greater than the predetermined distance epsilon (YES in step S104), and the division point m ip and section between the midpoint m i + 1, Together with the corresponding softening function T n , the result f d (x) is calculated to generate a smoothing function (step S105). The path smoothing unit 5 determines whether the path 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 path smoothing unit 5 determines that the generated smoothing function path does not interfere with the obstacle (NO in step S106), the path smoothing function 5 sets the smoothing function path as a new path, and smoothes the next node n i + 1 . To do. On the other hand, when the path smoothing unit 5 determines that the path of the generated smoothing function interferes with an obstacle (YES in step S106), p = 1 and q = 1, and the node ni 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 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) If the path smoothing unit 5 determines that the distance between the dividing point m i + 1q and the node n i is equal to or less than the predetermined distance ε (NO in step S107), the path zigzag path m1, n1, m2 is used as the operation path. Then, the next node n i + 1 is smoothed. On the other hand, when the path smoothing unit 5 determines that the distance between the dividing point m i + 1q and the node n i is larger than the predetermined distance ε (YES in step S107), the section between the dividing point m ip and the dividing point m i + 1q. And the corresponding softening function T n are combined to calculate the result f d (x) to generate a smoothing function (step S108). Then, the path smoothing unit 5 determines whether the path of the generated smoothing function interferes with an obstacle (Step S109).

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

経路平滑化部5は、分割点とノードnとの間の距離が所定距離ε以下であると判定すると(ステップS110のNO)、元のジグザグの経路m1、n1、m2を動作経路とし、次のノードni+1の平滑化を行う。一方、経路平滑化部5は、分割点とノードnとの間の距離が所定距離εより大きいと判定すると(ステップS110のYES)、p=p+1、q=q+1(ステップS111)とし、上記(ステップS108)に戻る。 The route smoothing unit 5, the distance between the dividing point and the node n i is determined to be equal to or less than a predetermined distance epsilon (NO in step S110), the operation path of the path m1, n1, m @ 2 of the original zigzag, The next node n i + 1 is smoothed. Meanwhile, the route smoothing unit 5, and the distance between the dividing point and the node n i is determined to greater than the predetermined distance ε with (YES in step S110), p = p + 1 , q = q + 1 ( step S 111), the Return to (Step S108).

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

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

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

プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(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 may be stored using various types of non-transitory computer readable media and supplied to a computer. Non-transitory computer readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (for example, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (for example, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / W and semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (random access memory)) are included.

プログラムは、様々なタイプの一時的なコンピュータ可読媒体(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 temporary 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 経路出力部   DESCRIPTION OF SYMBOLS 1 Action route planning apparatus, 2 External information acquisition part, 3 Path | route production | generation part, 4 Path | route flattening part, 5 Path | route smoothing part, 6 Path | route output part

Claims (1)

ロボットの動作経路を計画する動作経路計画方法であって、
前記ロボットの動作環境内の障害物の位置及び形状を含む環境地図情報に基づいて、予め設定された始端点と終端点との間で前記ロボットが前記障害物と干渉しない経路となるように複数のノードを設定するステップと、
隣接するノード間に中間点をそれぞれ設定し、隣接した2つの該中間点の区間と所定関数との合成積を計算することで、該区間に対する平滑化関数の経路を算出するステップと、
該算出した平滑化関数の経路が前記障害物と干渉しない場合、該平滑化関数の経路を新たな経路として生成し、該算出した平滑化関数の経路が前記障害物と干渉する場合、前記中間点と前記ノードとの間を所定比率で分割する分割点を再設定し、該再設定した分割点と前記中間点との間の前記平滑化関数の経路を算出し、該平滑化関数の経路が前記障害物と干渉するか否かを判定して、前記新たな経路を生成するステップと、
を含む、
ことを特徴する動作経路計画方法。
An operation path planning method for planning an operation path of a robot,
Based on environmental map information including the position and shape of obstacles in the operating environment of the robot, a plurality of paths are provided between the preset start and end points so that the robot does not interfere with the obstacles. Setting the nodes of
Calculating a smoothing function path for the interval by setting an intermediate point between adjacent nodes and calculating a composite product of the interval between two adjacent intermediate points and a predetermined function;
When the calculated smoothing function path does not interfere with the obstacle, the smoothing function path is generated as a new path, and when the calculated smoothing function path interferes with the obstacle, the intermediate Resetting a dividing point for dividing a point and the node at a predetermined ratio, calculating a path of the smoothing function between the reset dividing point and the intermediate point, and passing the smoothing function path Determining whether to interfere with the obstacle and generating the new route;
including,
An action path planning method characterized by that.
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 true JP2018069428A (en) 2018-05-10
JP6717164B2 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)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108972549A (en) * 2018-07-03 2018-12-11 华南理工大学 Industrial machinery arm Real Time Obstacle Avoiding based on Kinect depth camera plans grasping system
CN109541997A (en) * 2018-11-08 2019-03-29 东南大学 It is a kind of towards the quick, intelligent programmed method of plane/almost plane workpiece spray robot
JP2019209457A (en) * 2018-06-08 2019-12-12 トヨタ自動車株式会社 Motion plan apparatus and motion plan method
WO2020149020A1 (en) * 2019-01-15 2020-07-23 オムロン株式会社 Robot control device, robot control method, and robot control program
CN111890154A (en) * 2020-07-31 2020-11-06 广东博智林机器人有限公司 Polishing method
US20210154846A1 (en) * 2019-11-27 2021-05-27 Kabushiki Kaisha Yaskawa Denki Simulated robot trajectory
KR20210096842A (en) * 2020-01-29 2021-08-06 한국과학기술원 Method and Apparatus for Collision-Free Trajectory Optimization of Redundant Manipulator given an End-Effector Path
CN113758484A (en) * 2020-11-30 2021-12-07 北京京东乾石科技有限公司 Path planning method and device
CN114200931A (en) * 2021-12-01 2022-03-18 浙江大学 Mobile robot path smoothing method based on B-spline curve optimization
US11340045B2 (en) 2017-11-21 2022-05-24 Techtronic Outdoor Products Technology Limited Cold fogger
JP7142803B1 (en) * 2021-09-03 2022-09-27 三菱電機株式会社 Robot control system, robot control device, motion planning device, robot control program and motion planning program
CN113758484B (en) * 2020-11-30 2024-07-16 北京京东乾石科技有限公司 Path planning method and device

Citations (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
JPH0695726A (en) * 1993-04-19 1994-04-08 Hitachi Ltd Route interpolating method for robot hand
JP2002132317A (en) * 2000-10-26 2002-05-10 Fanuc Ltd Controller
EP1235126A1 (en) * 2001-02-26 2002-08-28 Hitachi, Ltd. Numerically controlled curved surface machining unit
JP2005309990A (en) * 2004-04-23 2005-11-04 Toyota Motor Corp Path setting method

Patent Citations (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
JPH0695726A (en) * 1993-04-19 1994-04-08 Hitachi Ltd Route interpolating method for robot hand
JP2002132317A (en) * 2000-10-26 2002-05-10 Fanuc Ltd Controller
EP1235126A1 (en) * 2001-02-26 2002-08-28 Hitachi, Ltd. Numerically controlled curved surface machining unit
JP2005309990A (en) * 2004-04-23 2005-11-04 Toyota Motor Corp Path setting method

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11340045B2 (en) 2017-11-21 2022-05-24 Techtronic Outdoor Products Technology Limited Cold fogger
US11167418B2 (en) 2018-06-08 2021-11-09 Toyota Jidosha Kabushiki Kaisha Operation planning apparatus and operation planning method
JP2019209457A (en) * 2018-06-08 2019-12-12 トヨタ自動車株式会社 Motion plan apparatus and motion plan method
CN110576437A (en) * 2018-06-08 2019-12-17 丰田自动车株式会社 Action planning device and action planning method
JP7067289B2 (en) 2018-06-08 2022-05-16 トヨタ自動車株式会社 Motion planning device and motion planning method
CN108972549A (en) * 2018-07-03 2018-12-11 华南理工大学 Industrial machinery arm Real Time Obstacle Avoiding based on Kinect depth camera plans grasping system
CN109541997A (en) * 2018-11-08 2019-03-29 东南大学 It is a kind of towards the quick, intelligent programmed method of plane/almost plane workpiece spray robot
WO2020149020A1 (en) * 2019-01-15 2020-07-23 オムロン株式会社 Robot control device, robot control method, and robot control program
JP2020110884A (en) * 2019-01-15 2020-07-27 オムロン株式会社 Robot control device, robot control method, and robot control program
CN112703090A (en) * 2019-01-15 2021-04-23 欧姆龙株式会社 Robot control device, robot control method, and robot control program
JP7028196B2 (en) 2019-01-15 2022-03-02 オムロン株式会社 Robot control device, robot control method, and robot control program
JP2021084175A (en) * 2019-11-27 2021-06-03 株式会社安川電機 Simulation system, simulation method, simulation program, robot manufacturing method and robot system
EP3827935A1 (en) * 2019-11-27 2021-06-02 Kabushiki Kaisha Yaskawa Denki Simulated robot trajectory
US20210154846A1 (en) * 2019-11-27 2021-05-27 Kabushiki Kaisha Yaskawa Denki Simulated robot trajectory
KR102300752B1 (en) 2020-01-29 2021-09-10 한국과학기술원 Method and Apparatus for Collision-Free Trajectory Optimization of Redundant Manipulator given an End-Effector Path
KR20210096842A (en) * 2020-01-29 2021-08-06 한국과학기술원 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
CN111890154A (en) * 2020-07-31 2020-11-06 广东博智林机器人有限公司 Polishing method
CN113758484A (en) * 2020-11-30 2021-12-07 北京京东乾石科技有限公司 Path planning method and device
CN113758484B (en) * 2020-11-30 2024-07-16 北京京东乾石科技有限公司 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
CN114200931A (en) * 2021-12-01 2022-03-18 浙江大学 Mobile robot path smoothing method based on B-spline curve optimization
CN114200931B (en) * 2021-12-01 2023-06-13 浙江大学 Mobile robot path smoothing method based on B spline curve optimization

Also Published As

Publication number Publication date
JP6717164B2 (en) 2020-07-01

Similar Documents

Publication Publication Date Title
JP2018069428A (en) Operation path planning method
CN110576437B (en) Operation planning device and operation planning method
JP5886502B2 (en) MOBILE BODY CONTROL DEVICE, MOBILE BODY CONTROL METHOD, AND CONTROL PROGRAM
CN112099493B (en) Autonomous mobile robot trajectory planning method, system and equipment
TWI604287B (en) Method and control system for controlling operation of processing machine, and processing machine
CN110471429A (en) Grass-removing robot Real-time Obstacle Avoidance Method based on modified embedded-atom method
WO2017113416A1 (en) Smooth transition method for processing trajectories and processing device
JP2013513149A (en) Method and control device for determining cut locus of curve section of roadway
TW201417926A (en) Method for controlling machines according to pattern of contours and laser cutting machine
JP6672702B2 (en) Control device, machine tool, control method, and computer program
JP5555838B2 (en) Trajectory generation method and trajectory generation device
KR20150121931A (en) UGV(Unmanned Ground Vehicle) Control System by using Hybrid Path Planning Method
CN110162029A (en) A kind of motion control method and device, robot based on planning path
JP2013184233A (en) Robot and method of generating trajectory thereof
CN112975992A (en) Error-controllable robot track synchronous optimization method
WO2020179798A1 (en) Machining program conversion device, numerical control device, machining program conversion method, and machine-learning device
CN111283683B (en) Servo tracking accelerated convergence method for robot visual feature planning track
JP2014161917A (en) Robot control system, robot, robot control method, and program
US10095810B2 (en) Seam modification for 3D CAD models
JP2008129695A (en) Path generation system and method for traveling object
KR101743795B1 (en) Curve interpolation method in positioning control system
WO2019049664A1 (en) Self-propelled device, and travelling control method and travelling control program of self-propelled device
CN108279644B (en) Linear interpolation control method based on superposition instruction
CN116009552A (en) Path planning method, device, equipment and storage medium
TWI708130B (en) Path tracing system

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 Request for written amendment filed

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