JP2010092279A - Autonomous mobile body and movement control method for the autonomous mobile body - Google Patents

Autonomous mobile body and movement control method for the autonomous mobile body Download PDF

Info

Publication number
JP2010092279A
JP2010092279A JP2008261821A JP2008261821A JP2010092279A JP 2010092279 A JP2010092279 A JP 2010092279A JP 2008261821 A JP2008261821 A JP 2008261821A JP 2008261821 A JP2008261821 A JP 2008261821A JP 2010092279 A JP2010092279 A JP 2010092279A
Authority
JP
Japan
Prior art keywords
subgoal
subgoals
robot
current position
unit
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
JP2008261821A
Other languages
Japanese (ja)
Other versions
JP5312894B2 (en
Inventor
Masaki Takahashi
正樹 高橋
Hideo Shimomoto
英生 下本
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.)
Murata Machinery Ltd
Keio University
Original Assignee
Murata Machinery Ltd
Keio University
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 Murata Machinery Ltd, Keio University filed Critical Murata Machinery Ltd
Priority to JP2008261821A priority Critical patent/JP5312894B2/en
Publication of JP2010092279A publication Critical patent/JP2010092279A/en
Application granted granted Critical
Publication of JP5312894B2 publication Critical patent/JP5312894B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an autonomous mobile body smoothly moving to a destination while suppressing a storage area and an amount of calculation. <P>SOLUTION: A robot 11 includes a subgoal storage part, an its own machine information acquisition part, the shortest subgoal search part, a subgoal extraction part, and a virtual moving target arithmetic part. The subgoal storage part stores: a position of a subgoal of each of a plurality of set subgoals in a route to a target position 90 from an initial position; and the order of the subgoals from the initial position. The own machine information acquisition part obtains a present position of its own machine. The shortest subgoal search part searches for the subgoal having a shortest distance from the present position of the subgoals stored by the subgoal storage part. The subgoal extraction part extracts the subgoals including the subgoal 82 having the shortest distance, and positioned in an area circle 100 with the present position as a center. The virtual moving target arithmetic part calculates a virtual moving target 88 based on the position of each subgoal extracted by the subgoal extraction part. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、自律移動体及び当該自律移動体の移動制御方法に関する。詳細には、ある地点から別の地点までの間に複数設定されたサブゴールを参照して移動する自律移動体に関する。   The present invention relates to an autonomous mobile body and a movement control method for the autonomous mobile body. Specifically, the present invention relates to an autonomous moving body that moves by referring to a plurality of subgoals set between a certain point and another point.

近年、オフィス及び工場等、障害物の存在する実環境で様々なサービスを提供するロボットが提案され、開発が行われている。このようなロボットには種々の機能が要求されるが、中でも重要な機能の1つに、目的地への自律的な移動がある。   In recent years, robots that provide various services in real environments where obstacles exist, such as offices and factories, have been proposed and developed. Such a robot is required to have various functions, and one of the important functions is autonomous movement to a destination.

ロボットなどの自律移動体を或る地点から目的地へと移動させる制御方法としては、分岐点、曲がり角、固定障害物の設置状況などから、環境に応じた経由地点(サブゴール)を設定し、当該サブゴールを目標にして移動させる方法が知られている。実際には障害物を回避する行動を行うこと等があるので厳密にサブゴールを辿らない場合もあるが、目的地までの間に何らかの中間的な移動目標が設定されるのが一般的である。このような構成のロボットとしては、例えば特許文献1が開示する移動ロボットがある。特許文献1が開示するのは、サブゴール間を結ぶ線分に追従して移動するロボットである。
特開2007−249631号公報
As a control method for moving an autonomous moving body such as a robot from a certain point to a destination, a route point (subgoal) corresponding to the environment is set from the branching point, turning corner, fixed obstacle installation status, etc. There is known a method of moving with a subgoal as a target. Actually, there is a case where the subgoal is not followed strictly because there is an action for avoiding an obstacle or the like, but some intermediate movement target is generally set between the destination and the destination. As a robot having such a configuration, for example, there is a mobile robot disclosed in Patent Document 1. Patent Document 1 discloses a robot that moves following a line segment connecting subgoals.
JP 2007-249631 A

しかし、上記のようにサブゴールを目標として移動する構成のロボットにおいては、或るサブゴールに辿り着いて移動目標を次のサブゴールに切り替えるときに、移動方向が大きく変化し、滑らかな移動を実現することが困難であった。この点、上記特許文献1では、ロボットが追従する対象とする線分をサブゴールに到達するよりも前に切り替えることで、サブゴールの近くでもロボットを滑らかに移動させることができるとしている。しかし、上記特許文献1の構成であっても、線分同士の角度が急な場合には、追従する線分の切り替え時にロボットに急な方向転換が発生してしまう。このようにロボットに急な方向転換が必要とされると、アクチュエータ(例えばモータ)の容量を大きくせざるを得ず、コストが掛かるとともに消費電力の点でも改善の余地があった。   However, in a robot configured to move with a subgoal as a target as described above, when the movement target is switched to the next subgoal when reaching a certain subgoal, the moving direction is greatly changed to realize smooth movement. It was difficult. In this regard, in Patent Document 1 described above, the robot can be moved smoothly even near the subgoal by switching the line segment that the robot follows to before reaching the subgoal. However, even in the configuration of Patent Document 1, if the angle between the line segments is steep, the robot suddenly changes direction when the following line segments are switched. Thus, when the robot needs to change direction rapidly, the capacity of the actuator (for example, a motor) has to be increased, which increases costs and leaves room for improvement in terms of power consumption.

上記のような問題を解決するため、サブゴールの設置間隔を狭くすることが考えられる。これにより、サブゴールを切り替えるときの移動方向の変化が少なくなり、ロボットの滑らかな移動を実現することができる。しかしながら、サブゴールの間隔を狭くすることにより大量のサブゴール情報をロボットに保持させなければならず、メモリなどの記憶領域を圧迫してしまう。   In order to solve the above problems, it is conceivable to reduce the installation interval of the subgoals. Thereby, the change of the moving direction when switching the subgoal is reduced, and a smooth movement of the robot can be realized. However, by reducing the interval between the subgoals, a large amount of subgoal information must be held by the robot, and the storage area such as a memory is compressed.

また、上記のようにサブゴールを目標として移動させる方法に代えて、例えば人工ポテンシャル場を環境情報として保持させ、引力ポテンシャルと斥力ポテンシャルからロボットの移動方向を演算することによってロボットを移動させる構成も考えられる。しかし、この方法においても人工ポテンシャル場を保存するために大量の記憶領域が必要であり、またポテンシャル場からロボットの移動方向を計算する際の計算負荷も大きい。   Also, instead of the method of moving the subgoal as a target as described above, for example, a configuration in which an artificial potential field is held as environmental information and the robot is moved by calculating the moving direction of the robot from the attractive potential and the repulsive potential is also considered. It is done. However, this method also requires a large storage area to store the artificial potential field, and the calculation load when calculating the moving direction of the robot from the potential field is large.

また、特許文献1は、ロボットが追従する線分を切り替える条件として、以下の2つの条件を開示している。その条件の1つ目は、ロボットが現在向かっているサブゴールと、当該ロボットと、の距離が所定の閾値よりも小さい場合である。また2つ目の条件は、ロボットが現在追従している線分と当該ロボットの位置との誤差よりも、次の線分と当該ロボットとの誤差の方が小さい場合である。   Patent Document 1 discloses the following two conditions as conditions for switching the line segment that the robot follows. The first of the conditions is when the distance between the subgoal that the robot is currently heading and the robot is smaller than a predetermined threshold. The second condition is that the error between the next line segment and the robot is smaller than the error between the line segment currently being followed by the robot and the position of the robot.

しかし、上記の条件では、ロボットが現在向かっているサブゴール上に障害物があると、追従する対象とする線分を切り替えることができず、ロボットが先に進むことができない場合があるという問題があった。即ち、上記1つ目の条件では、半径が前記所定の閾値よりも大きい障害物がサブゴール上に存在していた場合は、当該サブゴールに前記所定の閾値よりも近づくことができないので、サブゴールを切り替えることができない。また、上記2つ目の条件では、前記障害物を小さく回避した場合は、現在追従している線分からロボットの位置が大きく外れることがないので、現在追従している線分との誤差が次の線分との誤差よりも大きくならず、サブゴールを切り替えることができない。   However, under the above conditions, if there is an obstacle on the subgoal that the robot is currently facing, the line segment to be followed cannot be switched, and the robot may not be able to move forward. there were. That is, under the first condition, when an obstacle having a radius larger than the predetermined threshold exists on the subgoal, the subgoal cannot be moved closer than the predetermined threshold, so the subgoal is switched. I can't. In the second condition, if the obstacle is avoided small, the robot position does not deviate greatly from the currently following line segment. It is not larger than the error with the line segment, and the subgoal cannot be switched.

本願発明は以上の事情に鑑みてされたものであり、その主要な目的は、記憶領域と演算量を抑えつつ目的地まで滑らかに移動することが可能な自律移動体を提供することにある。   The present invention has been made in view of the above circumstances, and a main object thereof is to provide an autonomous mobile body capable of smoothly moving to a destination while suppressing a storage area and a calculation amount.

課題を解決するための手段及び効果Means and effects for solving the problems

本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。   The problems to be solved by the present invention are as described above. Next, means for solving the problems and the effects thereof will be described.

本発明の観点によれば、以下の構成の自律移動体が提供される。即ち、この自律移動体は、サブゴール記憶部と、現在位置取得部と、最短サブゴール探索部と、サブゴール抽出部と、仮想移動目標演算部と、を備える。前記サブゴール記憶部は、第1地点から第2地点に至るまでの経路に複数設定されたそれぞれのサブゴールの位置と、前記第1地点又は前記第2地点からの前記サブゴールの順序と、を記憶している。前記現在位置取得部は、自機の現在位置を取得する。前記最短サブゴール探索部は、前記サブゴール記憶部が記憶しているサブゴールの中で、前記現在位置から最短距離にあるサブゴールを探索する。前記サブゴール抽出部は、前記最短距離にあるサブゴールを含み、前記現在位置を中心とした所定領域内に位置するサブゴールを抽出する。前記仮想移動目標演算部は、前記サブゴール抽出部によって抽出された各サブゴールの位置に基づいて自機の仮想的な移動目標を演算する。   According to the viewpoint of this invention, the autonomous mobile body of the following structures is provided. That is, the autonomous mobile body includes a subgoal storage unit, a current position acquisition unit, a shortest subgoal search unit, a subgoal extraction unit, and a virtual movement target calculation unit. The subgoal storage unit stores a plurality of subgoal positions set on a route from the first point to the second point, and the order of the subgoals from the first point or the second point. ing. The current position acquisition unit acquires the current position of the own device. The shortest subgoal search unit searches for a subgoal at the shortest distance from the current position among the subgoals stored in the subgoal storage unit. The subgoal extraction unit extracts a subgoal that includes the subgoal at the shortest distance and is located within a predetermined area centered on the current position. The virtual movement target calculation unit calculates a virtual movement target of the own device based on the position of each subgoal extracted by the subgoal extraction unit.

以上の構成で、移動体の近傍に複数のサブゴールがある場合、当該複数のサブゴールの位置を総合的に考慮して仮想的な移動目標を決定することができる。これにより、1つのサブゴールのみを移動目標として移動する構成と比べて、移動目標が大きく変化することがなくなり、円滑な移動を行うことができる。従って、サブゴールを切り替える際の急な方向転換が発生しにくくなるので、アクチュエータの負荷を抑えることが可能となり、省電力化及びコストダウンを実現することができる。また、移動を円滑にするためにサブゴールを細かい間隔で設定する必要が無いので、サブゴール記憶部の記憶容量等を抑えることができる。また、サブゴールへの到達を目標とするのではなく、サブゴールから求めた仮想的な移動目標に追従するように移動することで、サブゴールに到達することなく第2地点まで移動することが可能である。即ち、必ずしもサブゴールの近傍を経由する必要がないので、サブゴール上に障害物がある場合や、障害物回避により経路から外れた場合であっても、従来の構成のように先に進めなくなることが無く、第2地点に向かって効率的な移動が可能になる。   With the above configuration, when there are a plurality of subgoals in the vicinity of the moving body, it is possible to determine a virtual movement target by comprehensively considering the positions of the plurality of subgoals. Thereby, compared with the structure which moves only one subgoal as a movement target, a movement target does not change a lot and smooth movement can be performed. Therefore, since a sudden change of direction when switching the subgoals is less likely to occur, it is possible to suppress the load on the actuator, and to realize power saving and cost reduction. Further, since it is not necessary to set the subgoals at fine intervals in order to make the movement smooth, the storage capacity of the subgoal storage unit can be suppressed. In addition, it is possible to move to the second point without reaching the subgoal by moving to follow the virtual moving target obtained from the subgoal instead of aiming at reaching the subgoal. . In other words, it is not always necessary to go through the vicinity of the subgoal, so even if there is an obstacle on the subgoal or when it is off the route due to obstacle avoidance, it may not proceed as in the conventional configuration. There is no efficient movement toward the second point.

前記の自律移動体においては、以下のように構成されていることが好ましい。即ち、前記仮想移動目標演算部は、前記サブゴール抽出部によって抽出された前記各サブゴールの位置を、前記現在位置を原点とする相対座標に座標変換する。そして、前記仮想移動目標演算部は、当該相対座標における前記各サブゴールの位置ベクトルを合成した合成ベクトルの方向に基づいて前記仮想的な移動目標を演算する。   The autonomous mobile body is preferably configured as follows. That is, the virtual movement target calculation unit converts the position of each subgoal extracted by the subgoal extraction unit into relative coordinates with the current position as the origin. Then, the virtual movement target calculation unit calculates the virtual movement target based on the direction of a combined vector obtained by combining the position vectors of the subgoals in the relative coordinates.

これにより、複数のサブゴールを考慮しつつ、ベクトルの合成という比較的簡単な演算によって移動体の仮想的な移動目標を決定することができる。   Thereby, the virtual movement target of the moving body can be determined by a relatively simple calculation of vector synthesis while considering a plurality of subgoals.

前記の自律移動体においては、前記サブゴール抽出部は、前記所定領域の外側近傍に位置するサブゴールがある場合は、当該サブゴールの位置を前記所定領域の境界上に置換して追加的に抽出することが好ましい。   In the autonomous mobile body, when there is a subgoal located near the outside of the predetermined area, the subgoal extraction unit additionally extracts the subgoal by replacing the position of the subgoal on the boundary of the predetermined area. Is preferred.

これにより、遠い位置にあるサブゴールを予め考慮に入れておくことができるので、より滑らかに移動することができる。また、所定領域の境界上の位置に置換することにより、相対座標に座標変換したときの位置ベクトルの長さを制限できるので、遠い位置のサブゴールと近い位置のサブゴールをバランス良く考慮して移動することができる。   Thereby, since the subgoal in a far position can be taken into consideration beforehand, it can move more smoothly. In addition, by replacing the position with the position on the boundary of the predetermined area, the length of the position vector when the coordinate is converted into relative coordinates can be limited, so that the subgoal at a position close to the subgoal at a far position is moved in a balanced manner. be able to.

前記の自律移動体においては、前記仮想移動目標演算部は、前記現在位置を中心とした所定領域内に位置するサブゴールのうち、前記最短距離にあるサブゴールよりも前記第1地点側であるサブゴールを除いた残りの各サブゴールの位置に基づいて、自機の仮想的な移動目標を演算することが好ましい。   In the autonomous mobile body, the virtual movement target calculation unit calculates a subgoal that is closer to the first point than a subgoal that is at the shortest distance among subgoals that are located within a predetermined area centered on the current position. It is preferable to calculate the virtual movement target of the own device based on the positions of the remaining subgoals.

これにより、最短距離にあるサブゴールと、それより第2地点側のサブゴールのみを考慮して移動方向を決定できるので、第2地点に対してより効率良く移動することができる。   As a result, since the moving direction can be determined in consideration of only the subgoal that is at the shortest distance and the subgoal on the second point side from that, it is possible to move more efficiently to the second point.

本発明の別の観点によれば、第1地点から第2地点に至るまでの経路に複数設定されたそれぞれのサブゴールの位置と、前記第1地点又は第2地点からの前記サブゴールの順序と、を記憶したサブゴール記憶部を備えた自律移動体の移動制御方法であって、以下のステップを含む移動制御方法が提供される。即ち、この自律移動体の移動制御方法は、現在位置取得ステップと、最短サブゴール探索ステップと、サブゴール抽出ステップと、仮想移動目標演算ステップと、を含んでいる。前記現在位置取得ステップでは、自機の現在位置を取得する。前記最短サブゴール探索ステップでは、前記サブゴール記憶部が記憶しているサブゴールの中で、前記現在位置から最短距離にあるサブゴールを探索する。前記サブゴール抽出ステップでは、前記最短距離にあるサブゴールを含み、前記現在位置を中心とした所定領域内に位置するサブゴールを抽出する。前記仮想移動目標演算ステップでは、前記サブゴール抽出ステップで抽出された各サブゴールの位置に基づいて自機の仮想的な移動目標を演算する。   According to another aspect of the present invention, the position of each subgoal set in a plurality of paths from the first point to the second point, the order of the subgoals from the first point or the second point, There is provided a movement control method for an autonomous mobile body including a subgoal storage unit that stores the following, which includes the following steps. That is, this autonomous mobile body movement control method includes a current position acquisition step, a shortest subgoal search step, a subgoal extraction step, and a virtual movement target calculation step. In the current position acquisition step, the current position of the own device is acquired. In the shortest subgoal search step, a subgoal located at the shortest distance from the current position is searched for among the subgoals stored in the subgoal storage unit. In the subgoal extraction step, a subgoal that includes the subgoal at the shortest distance and is located within a predetermined area centered on the current position is extracted. In the virtual movement target calculation step, the virtual movement target of the own device is calculated based on the position of each subgoal extracted in the subgoal extraction step.

以上の方法で、移動体の近傍に複数のサブゴールがある場合、当該複数のサブゴールの位置を総合的に考慮して仮想的な移動目標を決定することができる。これにより、1つのサブゴールのみを移動目標として移動する構成と比べて、移動目標が大きく変化することがなくなり、円滑な移動を行うことができる。従って、サブゴールを切り替える際の急な方向転換が発生しにくくなるので、アクチュエータの負荷を抑えることが可能となり、省電力化及びコストダウンを実現することができる。また、移動を円滑にするためにサブゴールを細かい間隔で設定する必要が無いので、サブゴール記憶部の記憶容量等を抑えることができる。また、サブゴールへの到達を目標とするのではなく、サブゴールから求めた仮想的な移動目標に追従するように移動することで、サブゴールに到達することなく第2地点まで移動することが可能である。即ち、必ずしもサブゴールの近傍を経由する必要がないので、サブゴール上に障害物がある場合や、障害物回避により経路から外れた場合であっても、従来の構成のように先に進めなくなることが無く、第2地点に向かって効率的な移動が可能になる。   With the above method, when there are a plurality of subgoals in the vicinity of the moving body, it is possible to determine a virtual movement target by comprehensively considering the positions of the plurality of subgoals. Thereby, compared with the structure which moves only one subgoal as a movement target, a movement target does not change a lot and smooth movement can be performed. Therefore, since a sudden change of direction when switching the subgoals is less likely to occur, it is possible to suppress the load on the actuator, and to realize power saving and cost reduction. Further, since it is not necessary to set the subgoals at fine intervals in order to make the movement smooth, the storage capacity of the subgoal storage unit can be suppressed. In addition, it is possible to move to the second point without reaching the subgoal by moving to follow the virtual moving target obtained from the subgoal instead of aiming at reaching the subgoal. . In other words, it is not always necessary to go through the vicinity of the subgoal, so even if there is an obstacle on the subgoal or when it is off the route due to obstacle avoidance, it may not proceed as in the conventional configuration. There is no efficient movement toward the second point.

次に、発明の実施の形態を説明する。図1は本発明の一実施形態に係るロボット11の全体的な構成を模式的に示した側面図である。   Next, embodiments of the invention will be described. FIG. 1 is a side view schematically showing the overall configuration of a robot 11 according to an embodiment of the present invention.

図1に示す自律移動体としてのロボット11は、本体12と、オムニホイール機構(移動部)13と、レーザレンジファインダ(検知部)14と、走行制御コントローラ(移動制御部)15と、を備えている。   A robot 11 as an autonomous mobile body shown in FIG. 1 includes a main body 12, an omni wheel mechanism (moving unit) 13, a laser range finder (detecting unit) 14, and a travel control controller (moving control unit) 15. ing.

前記本体12は縦方向に細長く形成されており、その下端部に、ロボットを自走させるためのオムニホイール機構13が取り付けられている。オムニホイール機構13は、周方向に90°の間隔で並べて配置された4つのオムニホイール21と、このオムニホイール21に対応して設置される4つのモータ22と、を備えている。   The main body 12 is formed in an elongated shape in the vertical direction, and an omni wheel mechanism 13 for allowing the robot to self-run is attached to the lower end portion thereof. The omni wheel mechanism 13 includes four omni wheels 21 arranged side by side at intervals of 90 ° in the circumferential direction, and four motors 22 installed corresponding to the omni wheels 21.

以下、図2を参照して、オムニホイール機構13の構成を具体的に説明する。図2はオムニホイール機構13を示す底面図である。   The configuration of the omni wheel mechanism 13 will be specifically described below with reference to FIG. FIG. 2 is a bottom view showing the omni wheel mechanism 13.

このオムニホイール機構13は図2に示すように、前記本体12の底面に配置された4つのホイール駆動ユニット23を備えている。このホイール駆動ユニット23は、枠組状に形成されたモータ支持フレーム24と、このモータ支持フレーム24に固定されたモータ22と、を備えている。前記モータ支持フレーム24の一端部は、本体12の底面にブラケット25を介して固定されている。   As shown in FIG. 2, the omni wheel mechanism 13 includes four wheel drive units 23 arranged on the bottom surface of the main body 12. The wheel drive unit 23 includes a motor support frame 24 formed in a frame shape, and a motor 22 fixed to the motor support frame 24. One end of the motor support frame 24 is fixed to the bottom surface of the main body 12 via a bracket 25.

モータ22は、図略のロータを回転可能に支持するハウジング26を備え、このハウジング26は前記モータ支持フレーム24の内部に配置されている。モータ22の出力軸27はモータ支持フレーム24から外側へ突出しており、この出力軸27の端部に前記オムニホイール21が取り付けられている。それぞれのホイール駆動ユニット23におけるオムニホイール21は、その回転軸がロボット11の正面方向に対してなす角が45°又は135°となるように配置されている。   The motor 22 includes a housing 26 that rotatably supports a rotor (not shown). The housing 26 is disposed inside the motor support frame 24. An output shaft 27 of the motor 22 protrudes outward from the motor support frame 24, and the omni wheel 21 is attached to an end portion of the output shaft 27. The omni wheel 21 in each wheel drive unit 23 is arranged such that the angle formed by the rotation axis with respect to the front direction of the robot 11 is 45 ° or 135 °.

それぞれのオムニホイール21は、前記モータ22の出力軸27に固定されるローラ状の本体31と、この本体31の外周に並べて配置された複数のフリーローラ32と、を備えている。フリーローラ32は回転可能となるように本体31に支持され、当該フリーローラ32の外周面は床面に接触可能となっている。また、前記フリーローラ32の回転軸は、本体31の回転軸に対して垂直に向けられている。   Each omni wheel 21 includes a roller-shaped main body 31 fixed to the output shaft 27 of the motor 22, and a plurality of free rollers 32 arranged side by side on the outer periphery of the main body 31. The free roller 32 is supported by the main body 31 so as to be rotatable, and the outer peripheral surface of the free roller 32 can contact the floor surface. The rotation axis of the free roller 32 is directed perpendicular to the rotation axis of the main body 31.

この構成で、モータ22が駆動されて本体31が回転することにより、フリーローラ32は本体31と一体的に回転し、その駆動力を床面に伝達する。一方、接地しているフリーローラ32が回転することにより、オムニホイール21は、その本体31の回転軸に平行な方向にも容易に移動することができる。以上の構成により、ロボット11の全方位移動が実現される。   With this configuration, when the motor 22 is driven and the main body 31 rotates, the free roller 32 rotates integrally with the main body 31 and transmits the driving force to the floor surface. On the other hand, when the grounded free roller 32 rotates, the omni wheel 21 can easily move in a direction parallel to the rotation axis of the main body 31. With the above configuration, the omnidirectional movement of the robot 11 is realized.

4つのホイール駆動ユニット23が備えるモータ22は、走行制御コントローラ15からの走行指令(移動指令)に基づき、4つのオムニホイール21の回転方向及び回転速度をそれぞれ独立して制御する。これにより、ロボット11を任意の方向に移動させる制御(全方位移動制御)を実現している。   The motors 22 included in the four wheel drive units 23 independently control the rotation directions and the rotation speeds of the four omni wheels 21 based on a travel command (movement command) from the travel controller 15. Thereby, the control (omnidirectional movement control) for moving the robot 11 in an arbitrary direction is realized.

図1に示すレーザレンジファインダ14は、図略のトランスミッタから照射したレーザを回転ミラーで反射させることで、ロボット11の正面側を平面視で扇状に走査することができる。そして、照射されたレーザが物体で反射して戻ってくるまでの時間を計測することにより、物体までの距離を測定することができる。このレーザレンジファインダ14はロボット11の視覚を実現する手段として使用され、静止又は移動している物体(障害物)の検知等に用いられる。   The laser range finder 14 shown in FIG. 1 can scan the front side of the robot 11 in a fan shape in plan view by reflecting the laser beam emitted from a transmitter (not shown) with a rotating mirror. The distance to the object can be measured by measuring the time until the irradiated laser is reflected by the object and returns. The laser range finder 14 is used as means for realizing the vision of the robot 11 and is used for detecting a stationary or moving object (obstacle).

次に、図3を参照して走行制御コントローラ15について説明する。図3はロボット11の移動制御のための電気的構成を示すブロック図である。   Next, the travel controller 15 will be described with reference to FIG. FIG. 3 is a block diagram showing an electrical configuration for movement control of the robot 11.

走行制御コントローラ15はマイクロコンピュータとして構成されており、図示しないが、演算部としてのCPUと、記憶部としてのROM、RAM等を備えている。また、前記ROMには、ロボット11の自律的な移動を実現するための制御プログラムが記憶されている。   The travel controller 15 is configured as a microcomputer, and includes a CPU as a calculation unit and ROM, RAM, and the like as a storage unit (not shown). The ROM stores a control program for realizing autonomous movement of the robot 11.

図3に示すように、走行制御コントローラ15は、マップ記憶部51と、目標位置記憶部52と、自機情報取得部53と、障害物情報取得部54と、を備えている。また、走行制御コントローラ15は、サブゴール演算部55と、サブゴール記憶部56と、最短サブゴール探索部57と、サブゴール抽出部58と、仮想移動目標演算部59と、走行指令送信部64と、を備えている。これらの各部は、上述したハードウェアとソフトウェアの組合せにより構築されている。   As illustrated in FIG. 3, the travel controller 15 includes a map storage unit 51, a target position storage unit 52, a host device information acquisition unit 53, and an obstacle information acquisition unit 54. The travel controller 15 includes a subgoal calculation unit 55, a subgoal storage unit 56, a shortest subgoal search unit 57, a subgoal extraction unit 58, a virtual movement target calculation unit 59, and a travel command transmission unit 64. ing. Each of these units is constructed by a combination of the hardware and software described above.

マップ記憶部51は、ロボット11の行動範囲における静的障害物を示すマップを記憶可能に構成されている。ここで静的障害物とは、消えたり位置が変化したりすることのない障害物をいい、具体的には壁、柱等の静的構造物及び重量物等である。このマップを作成するには、人間等の動的障害物を全て取り除いた状態で、当該ロボット11を移動させつつ、レーザレンジファインダ14で障害物を走査する。これにより、ロボット11は静的障害物の位置及び形状を認識してマップを自動的に作成し、適宜のメモリに記憶することができる。   The map storage unit 51 is configured to be able to store a map indicating a static obstacle in the action range of the robot 11. Here, the static obstacle refers to an obstacle that does not disappear or change its position, and specifically includes a static structure such as a wall and a pillar, and a heavy object. In order to create this map, the obstacle is scanned with the laser range finder 14 while moving the robot 11 with all the dynamic obstacles such as human beings removed. Thereby, the robot 11 can recognize the position and shape of the static obstacle, automatically create a map, and store it in an appropriate memory.

目標位置記憶部52は、ロボット11を移動させるべき目標位置の情報を記憶可能に構成されている。この目標位置は、オペレータがロボット11を適宜操作することにより指定され、前記マップにおける座標の形で記憶される。   The target position storage unit 52 is configured to be able to store information on a target position where the robot 11 should be moved. This target position is designated by the operator appropriately operating the robot 11 and is stored in the form of coordinates in the map.

自機情報取得部53は、自機の現在位置及び速度を計算して取得する。従って、この自機情報取得部53は現在位置取得部であるといえる。この自機情報は、レーザレンジファインダ14から得られた周囲の障害物の情報と前記マップとを照合した結果と、オムニホイール機構13の各モータ22の出力軸27の回転角度の情報と、を総合的に考慮して決定される。なお、モータ22の出力軸27の回転角度は、当該出力軸27に取り付けられた図略のエンコーダにより取得することができる。   The own device information acquisition unit 53 calculates and acquires the current position and speed of the own device. Therefore, it can be said that the own device information acquisition unit 53 is a current position acquisition unit. The self-machine information includes information on the surrounding obstacle obtained from the laser range finder 14 and the result of collation with the map, and information on the rotation angle of the output shaft 27 of each motor 22 of the omni wheel mechanism 13. Decided by comprehensive consideration. The rotation angle of the output shaft 27 of the motor 22 can be acquired by an unillustrated encoder attached to the output shaft 27.

障害物情報取得部54は、レーザレンジファインダ14から得られた、ロボット動作中にロボットが所有している環境地図上にない静止又は移動している障害物を検出し、その位置及び速度を取得する。   The obstacle information acquisition unit 54 detects a stationary or moving obstacle obtained from the laser range finder 14 that is not on the environmental map owned by the robot during the robot operation, and acquires its position and speed. To do.

サブゴール演算部55は、当該ロボット11がセットされた初期位置(ロボット11の現在位置を含む)と、目標位置記憶部52に記憶された目標位置と、の間を移動するための経路を計画し、当該経路中に経過目標地点としてのサブゴールを複数設定する。なお、サブゴールの設定については後述する。   The subgoal calculation unit 55 plans a route for moving between the initial position (including the current position of the robot 11) where the robot 11 is set and the target position stored in the target position storage unit 52. A plurality of subgoals as elapsed target points are set in the route. The setting of the subgoal will be described later.

サブゴール記憶部56は、サブゴール演算部55が設定した各サブゴールの位置、及び初期位置から目標位置に至るまでの順番を記憶可能に構成されている。   The subgoal storage unit 56 is configured to be able to store the position of each subgoal set by the subgoal calculation unit 55 and the order from the initial position to the target position.

最短サブゴール探索部57は、サブゴール記憶部56が記憶しているサブゴールの中で、自機情報取得部53が取得した現在位置から最も近いサブゴールを探索するように構成されている。   The shortest subgoal search unit 57 is configured to search for a subgoal closest to the current position acquired by the own device information acquisition unit 53 among the subgoals stored in the subgoal storage unit 56.

サブゴール抽出部58は、サブゴール記憶部56が記憶しているサブゴールの中で、自機情報取得部53が取得した現在位置から所定距離内に位置しているサブゴールを抽出するように構成されている。なお、サブゴールの抽出については後述する。   The subgoal extraction unit 58 is configured to extract a subgoal that is located within a predetermined distance from the current position acquired by the own device information acquisition unit 53 among the subgoals stored in the subgoal storage unit 56. . The subgoal extraction will be described later.

仮想移動目標演算部59は、サブゴール抽出部58の抽出結果に基づいて、当該ロボット11の仮想的な移動目標(仮想移動目標)を演算するように構成されている。なお、仮想移動目標の演算については後述する。   The virtual movement target calculation unit 59 is configured to calculate a virtual movement target (virtual movement target) of the robot 11 based on the extraction result of the subgoal extraction unit 58. The calculation of the virtual movement target will be described later.

走行指令送信部64は、仮想移動目標演算部59で得られた仮想移動目標に対してロボット11を移動させるように走行指令を生成し、オムニホイール機構13に対し送信することにより、ロボット11を走行させる。   The travel command transmission unit 64 generates a travel command so as to move the robot 11 with respect to the virtual movement target obtained by the virtual movement target calculation unit 59, and transmits the travel command to the omni wheel mechanism 13. Let it run.

次に、以上のように構成されたロボット11の自律移動の制御方法について、図4を参照して説明する。図4は、本実施形態のロボット11の走行制御コントローラ15が、当該ロボット11の自律移動のために行う制御の流れを示したフローチャートである。なお、このフローの開始時点で、マップ記憶部51にはマップが、目標位置記憶部52には目標位置が、予め記憶されているものとする。   Next, a method of controlling the autonomous movement of the robot 11 configured as described above will be described with reference to FIG. FIG. 4 is a flowchart illustrating a flow of control performed by the travel controller 15 of the robot 11 according to the present embodiment for autonomous movement of the robot 11. It is assumed that a map is stored in the map storage unit 51 and a target position is stored in the target position storage unit 52 in advance at the start of this flow.

まず、オペレータはロボット11を所望の初期位置に配置して所定の操作を行う(S101)。これにより、図5のフローが開始される。   First, the operator places the robot 11 at a desired initial position and performs a predetermined operation (S101). Thereby, the flow of FIG. 5 is started.

次に、サブゴール演算部55によってサブゴールの設定処理(目標位置までの経路計画)が行われる(S102)。以下、このサブゴールの設定処理について具体的に説明する。   Next, the subgoal calculation unit 55 performs subgoal setting processing (route planning to the target position) (S102). The subgoal setting process will be specifically described below.

一例として、図5に示すようなマップがマップ記憶部51に記憶されている場合について説明する。図に示すように、このマップは障害物16が存在する領域と存在しない領域を表した図であって、ロボット11の移動平面における障害物16の位置及びサイズが記憶されている。なお、参考のため、図5のマップの右側にはロボット11の直径を表す円が図示されている。この図5に示すように、マップにおいてロボット11を、その平面視での外形輪郭を含む適宜の大きさの円として表現することにより、制御を簡素化でき、演算負荷を減らすことができる。   As an example, a case where a map as shown in FIG. 5 is stored in the map storage unit 51 will be described. As shown in the figure, this map shows a region where the obstacle 16 exists and a region where the obstacle 16 does not exist, and stores the position and size of the obstacle 16 on the moving plane of the robot 11. For reference, a circle representing the diameter of the robot 11 is shown on the right side of the map in FIG. As shown in FIG. 5, by representing the robot 11 in the map as a circle having an appropriate size including the outer contour in plan view, the control can be simplified and the calculation load can be reduced.

まず、サブゴール演算部55は、マップ記憶部51から前記マップを読み込み、ロボット11と障害物16との領域の和(Minkowski和)を求める。このとき、ロボット11の領域(形状)は、前述したように円形とすることができる。このようにMinkowski和を求めた結果の例が図6に示してある。この図6は、斜線のハッチングが施された領域にロボット11の円の中心点が接触しないように制御する限り、ロボット11が障害物16に接触することを回避できることを表している。これにより、以降の処理ではロボット11を点として取り扱うことができる。   First, the subgoal calculation unit 55 reads the map from the map storage unit 51 and obtains the sum (Minkowski sum) of the regions of the robot 11 and the obstacle 16. At this time, the region (shape) of the robot 11 can be circular as described above. An example of the result of obtaining the Minkowski sum in this way is shown in FIG. FIG. 6 shows that the robot 11 can be prevented from contacting the obstacle 16 as long as the control is performed so that the center point of the circle of the robot 11 does not contact the hatched area. Thereby, the robot 11 can be handled as a point in the subsequent processing.

次に、サブゴール演算部55は、図6に示す斜線のハッチングが施されていない領域(即ち、ロボット11が通過することができる領域)を、公知のHilditchの細線化条件によって細線化する。この細線化の結果の例を図7に示す。このとき細線化によって得られた線のそれぞれは、ロボット11が採り得る大まかな経路として考えることができる。   Next, the subgoal calculation unit 55 thins a region that is not hatched with hatching as shown in FIG. 6 (that is, a region through which the robot 11 can pass) according to a known Hilitch thinning condition. An example of the thinning result is shown in FIG. At this time, each of the lines obtained by thinning can be considered as a rough path that the robot 11 can take.

次に、サブゴール演算部55は、目標位置記憶部52から目標位置の座標を読み込むとともに、自機情報取得部53によってロボット11の現在位置(前記マップ上の座標(絶対座標)で表した位置)の取得を行う。この時点においてはロボット11は未だ移動を開始していないので、このとき取得した現在位置がロボット11の初期位置(移動開始位置)となる。   Next, the subgoal calculation unit 55 reads the coordinates of the target position from the target position storage unit 52, and the current position of the robot 11 (the position represented by the coordinates (absolute coordinates) on the map) by the own machine information acquisition unit 53. Get the. Since the robot 11 has not yet started moving at this time, the current position acquired at this time becomes the initial position (movement start position) of the robot 11.

更に、サブゴール演算部55は、細線化によって得られた経路の各分岐点にサブゴールノード72を配置する。このときの内部的な様子を概念的に例示すると、図8のようになる。例えば、図に示すように、サブゴール演算部55の演算開始時点におけるロボット11の現在位置が符号70の位置であると、その位置が初期位置(第1地点)70として設定される。また、図8には、目標位置記憶部52に記憶されている目標位置(第2地点)71も図示してある。そして、図に示すように、初期位置70と目標位置71との間の経路の各分岐点には、それぞれサブゴールノード72が配置されている。   Further, the subgoal calculation unit 55 arranges a subgoal node 72 at each branch point of the route obtained by thinning. A conceptual example of the internal state at this time is shown in FIG. For example, as shown in the figure, if the current position of the robot 11 at the time when the calculation of the subgoal calculation unit 55 is started is the position of reference numeral 70, that position is set as the initial position (first point) 70. FIG. 8 also shows a target position (second point) 71 stored in the target position storage unit 52. As shown in the figure, subgoal nodes 72 are arranged at the respective branch points of the route between the initial position 70 and the target position 71.

続いて、サブゴール演算部55は、初期位置70から目標位置71までの最短経路を探索する。本実施形態では、公知のA*アルゴリズムを用いて最短経路の探索を行う。このとき、或るサブゴールノード72から目標位置71までの移動コストを表すヒューリスティック関数として、当該サブゴールノード72から目標位置71までのユークリッド距離を用いることにより、演算量を削減することができる。上記の最短経路探索で決定された最短経路の例を、図9に太線で表す。   Subsequently, the subgoal calculation unit 55 searches for the shortest path from the initial position 70 to the target position 71. In the present embodiment, the shortest path is searched using a known A * algorithm. At this time, the amount of calculation can be reduced by using the Euclidean distance from the subgoal node 72 to the target position 71 as a heuristic function representing the movement cost from the subgoal node 72 to the target position 71. An example of the shortest route determined by the shortest route search is represented by a thick line in FIG.

上記のようにして初期位置70から目標位置71までの最短経路を決定した後、サブゴール演算部55は、障害物16と干渉しない範囲で経路の直線化を行う。直線化を行った結果の例を図10に示す。続いて、サブゴール演算部55は、経路の平滑化(障害物16と干渉しない範囲で経路の角を丸めること)を行う。平滑化を行った結果の例を図11に示す。   After determining the shortest path from the initial position 70 to the target position 71 as described above, the subgoal calculation unit 55 linearizes the path within a range that does not interfere with the obstacle 16. An example of the result of linearization is shown in FIG. Subsequently, the subgoal calculation unit 55 smoothes the route (rounds the corner of the route within a range not interfering with the obstacle 16). An example of the result of smoothing is shown in FIG.

以上のようにして、初期位置70から目標位置71までの間に複数のサブゴールノード72が配置されて、ロボット11の移動経路が確定する。最終的に得られた各サブゴールノード72の位置を、ロボット11の自律移動制御に実際に用いるサブゴールの位置とする。そして、上記のようにして得られた各サブゴールの順序と、当該サブゴールの位置(マップ上の絶対座標で表した座標)が、サブゴール記憶部56に記憶される。なお、本実施形態においてサブゴールの順序は、初期位置70に最も近いものが1番目、次に近いのが2番目、・・・というように定められ、この順序を表す数値データがサブゴール記憶部56に記憶される。   As described above, a plurality of subgoal nodes 72 are arranged between the initial position 70 and the target position 71, and the movement path of the robot 11 is determined. The position of each subgoal node 72 finally obtained is set as the position of the subgoal actually used for the autonomous movement control of the robot 11. Then, the order of the subgoals obtained as described above and the position of the subgoals (coordinates represented by absolute coordinates on the map) are stored in the subgoal storage unit 56. In this embodiment, the order of subgoals is determined such that the closest to the initial position 70 is first, the next closest is second,..., And numerical data representing this order is subgoal storage unit 56. Is remembered.

サブゴールが設定されると、走行制御コントローラ15は、ロボット11の自律移動を開始する(図4のS103)。走行制御コントローラ15は、以下に説明する自律制御ループ(図4のS104からS111)を繰り返し実行することにより、目標位置までロボット11の自律移動制御を行う。以下、一例として、サブゴールが図12のように設定されている場合について説明する。図12には、サブゴール記憶部56が記憶している複数のサブゴール81,82,83,84,85の位置を絶対座標系(図中のxy直交座標系)にプロットした様子を概念的に示してある。また、図12には、目標位置記憶部52が記憶している目標位置90と、自機情報取得部53が取得したロボット11の現在位置もプロットして示してある。図に示すように、サブゴールが81,82,83,84,85の順で設定され、最後に目標位置90が設定されている。   When the subgoal is set, the travel controller 15 starts the autonomous movement of the robot 11 (S103 in FIG. 4). The travel controller 15 performs autonomous movement control of the robot 11 to the target position by repeatedly executing an autonomous control loop (S104 to S111 in FIG. 4) described below. Hereinafter, as an example, a case where subgoals are set as shown in FIG. 12 will be described. FIG. 12 conceptually shows a state in which the positions of a plurality of subgoals 81, 82, 83, 84, 85 stored in the subgoal storage unit 56 are plotted in an absolute coordinate system (xy orthogonal coordinate system in the figure). It is. FIG. 12 also plots the target position 90 stored in the target position storage unit 52 and the current position of the robot 11 acquired by the own device information acquisition unit 53. As shown in the figure, subgoals are set in the order of 81, 82, 83, 84, 85, and finally a target position 90 is set.

まず、自機情報取得部53が、ロボット11の現在位置を取得する(現在位置取得ステップ、S104)。   First, the own device information acquisition unit 53 acquires the current position of the robot 11 (current position acquisition step, S104).

そして、取得した現在位置が目標位置に到達していれば(S105の判断)、自律移動の目的を達成しているので、自律制御ループを抜けてフローを終了する。   If the acquired current position has reached the target position (determination in S105), the object of autonomous movement has been achieved, and the flow is terminated through the autonomous control loop.

ロボット11が未だ目標位置に到達していない場合は、現在位置から直線距離で最短距離にあるサブゴールを探索する(最短サブゴール探索ステップ、S106)。図12の場合においては、ロボット11の現在位置から最短距離にあるのはサブゴール82であるから、サブゴール82が選択される。   If the robot 11 has not yet reached the target position, a subgoal that is the shortest distance in a straight line distance from the current position is searched (shortest subgoal search step, S106). In the case of FIG. 12, since the subgoal 82 is the shortest distance from the current position of the robot 11, the subgoal 82 is selected.

続いて、サブゴール抽出部58によって、最短距離にあるサブゴールを含む所定領域内のサブゴールの抽出が行われる(サブゴール抽出ステップ、S107)。以下、この点について具体的に説明する。   Subsequently, the subgoal extraction unit 58 extracts a subgoal within a predetermined area including the subgoal at the shortest distance (subgoal extraction step, S107). Hereinafter, this point will be specifically described.

前記の所定領域としては、例えば図13に示すように、ロボット11を中心とした所定半径の領域円100の内側の領域とすることができる。なお、最短距離のサブゴール82を領域円100内に含ませるために、前記領域円100の半径としては、当該サブゴール82とロボット11との間の距離以上の値を設定するものとする。図13の例では、領域円100の内側にはサブゴール81,82,83があるので、前記サブゴール81,82,83が抽出される。   As the predetermined region, for example, as shown in FIG. 13, a region inside a region circle 100 having a predetermined radius centered on the robot 11 can be used. In order to include the shortest distance subgoal 82 in the area circle 100, the radius of the area circle 100 is set to a value equal to or greater than the distance between the subgoal 82 and the robot 11. In the example of FIG. 13, since there are subgoals 81, 82, 83 inside the area circle 100, the subgoals 81, 82, 83 are extracted.

更に、サブゴール抽出部58は、所定領域の外側に位置するものの前記所定領域に近いサブゴールを領域の外周上にあるものとみなして、サブゴールを追加的に抽出することができる。例えば図13の例では、領域円100の外側近傍にサブゴール84が位置している。このサブゴール84とロボット11とを結んだ直線と前記領域円100との交点(領域円100の外周上)を求め、この交点上にサブゴール84の位置を置き換える(置換サブゴール86)。この置換サブゴール86をロボット11から見た方向は、元のサブゴール84をロボット11から見た方向と一致する。そして、この置換サブゴール86をサブゴールの抽出結果に含めることで、遠い位置にあるサブゴールを予め考慮することにより滑らかな移動を実現することができる。また、遠い位置にあるサブゴールを領域の外周上に置換しているので、ベクトル合成(後述)の際に、遠い位置にある(即ちベクトルが大きい)サブゴールの影響が過大になってしまうことを回避することができる。   Further, the subgoal extracting unit 58 can additionally extract subgoals by regarding a subgoal that is located outside the predetermined area but is close to the predetermined area as being on the outer periphery of the area. For example, in the example of FIG. 13, the subgoal 84 is located near the outside of the area circle 100. An intersection (on the outer periphery of the area circle 100) between the straight line connecting the subgoal 84 and the robot 11 and the area circle 100 is obtained, and the position of the subgoal 84 is replaced on this intersection (replacement subgoal 86). The direction when the replacement subgoal 86 is viewed from the robot 11 matches the direction when the original subgoal 84 is viewed from the robot 11. Then, by including the replacement subgoal 86 in the subgoal extraction result, smooth movement can be realized by considering in advance the subgoals that are far away. In addition, since the subgoal at the far position is replaced on the outer periphery of the region, it is avoided that the influence of the subgoal at the far position (that is, the vector is large) becomes excessive during vector synthesis (described later). can do.

次に、サブゴール抽出部58は、サブゴール記憶部56に記憶されているサブゴールの順番を取得し、現在位置から最短距離にあるサブゴールよりも順序が前(即ち、初期位置70側)のサブゴールを、前記抽出結果から取り除く。図13の例では、抽出されたサブゴールの中で、最短距離のサブゴール82よりも前のサブゴールはサブゴール81であるので、このサブゴール81を取り除く。即ち、ロボット11はサブゴール81を既に通り過ぎていると見なせるので、自律移動の考慮の対象から除外するのである。   Next, the subgoal extraction unit 58 acquires the order of the subgoals stored in the subgoal storage unit 56, and subgoals whose order is earlier than the subgoal that is the shortest distance from the current position (that is, the initial position 70 side) Remove from the extraction result. In the example of FIG. 13, the subgoal 81 before the subgoal 82 with the shortest distance among the extracted subgoals is the subgoal 81, so this subgoal 81 is removed. That is, since the robot 11 can be regarded as having already passed the subgoal 81, the robot 11 is excluded from consideration of autonomous movement.

なお、サブゴールの順序は当初から決まっているので、領域円100の内側のサブゴールを抽出する段階で、最短距離のサブゴール82よりも順序が前のサブゴール81を除いた状態で抽出することもできる。このようにすれば、所定領域内にあるか否かをサブゴール抽出部58で判断しなければならないサブゴールの数が減るので、演算量を削減できる点で有利である。要は、後述の仮想移動目標演算部59による仮想移動目標88の演算の際に、当該サブゴール81の位置を考慮に入れずに計算することができれば良い。   In addition, since the order of the subgoals is determined from the beginning, it is also possible to extract the subgoals in the state where the subgoals 81 preceding the shortest distance subgoals 82 are excluded at the stage of extracting the subgoals inside the area circle 100. This is advantageous in that the amount of calculation can be reduced because the number of subgoals that must be determined by the subgoal extraction unit 58 as to whether or not they are within a predetermined area is reduced. In short, it is only necessary to be able to calculate without considering the position of the subgoal 81 when calculating the virtual movement target 88 by the virtual movement target calculation unit 59 described later.

次に、仮想移動目標演算部59によって、ロボット11の仮想的な移動目標が演算される(仮想移動目標演算ステップ、S108)。以下、この点について具体的に説明する。   Next, the virtual movement target calculation unit 59 calculates a virtual movement target of the robot 11 (virtual movement target calculation step, S108). Hereinafter, this point will be specifically described.

まず、仮想移動目標演算部59は、サブゴール抽出部58によって抽出されたサブゴール(前記の例の場合は、サブゴール82,83及び置換サブゴール86)の座標を、ロボット11の相対座標系(ローカル座標系)に座標変換する。この相対座標系は任意の座標系とすることができるが、例えば図13に示すv軸とw軸による直交座標系のようにロボット11を座標中心(原点)とした直交座標系とすれば、後述のベクトル合成の演算が簡単になるため好適である。抽出されたサブゴールを相対座標系に座標変換してプロットした概念的な様子を図14に示す。   First, the virtual movement target calculation unit 59 uses the relative coordinate system (local coordinate system) of the robot 11 as the coordinates of the subgoals (subgoals 82 and 83 and replacement subgoals 86 in the above example) extracted by the subgoal extraction unit 58. ). The relative coordinate system can be an arbitrary coordinate system. For example, if the robot 11 is an orthogonal coordinate system with the coordinate center (origin) as shown in FIG. This is preferable because the vector composition operation described later is simplified. FIG. 14 shows a conceptual state in which the extracted subgoals are coordinate-transformed into a relative coordinate system and plotted.

続いて、仮想移動目標演算部59は、前記相対座標系において、ロボット11の現在位置から各サブゴールへ向かうベクトルを求め、それぞれのベクトルを合成した合成ベクトルを求める。図14の例では、ロボット11は相対座標系の原点に位置しているので、各サブゴール(サブゴール82,83及び置換サブゴール86)の位置ベクトルを求め、各位置ベクトルを合成することで合成ベクトル87を得る。   Subsequently, the virtual movement target calculation unit 59 obtains a vector from the current position of the robot 11 toward each subgoal in the relative coordinate system, and obtains a combined vector obtained by combining the vectors. In the example of FIG. 14, since the robot 11 is located at the origin of the relative coordinate system, the position vector of each subgoal (subgoals 82 and 83 and replacement subgoal 86) is obtained, and the combined vectors 87 are obtained by combining the position vectors. Get.

そして、仮想移動目標演算部59は、合成ベクトル87と領域円100との交点に、仮想移動目標88を配置する。なお、合成ベクトル87の長さが領域円100の半径よりも短い場合は、合成ベクトル87の延長線と領域円100との交点に仮想移動目標88を配置すれば良い。   Then, the virtual movement target calculation unit 59 places a virtual movement target 88 at the intersection of the composite vector 87 and the area circle 100. When the length of the combined vector 87 is shorter than the radius of the area circle 100, the virtual movement target 88 may be arranged at the intersection of the extension line of the combined vector 87 and the area circle 100.

以上のようにして仮想移動目標88が得られると、走行指令送信部64は、仮想移動目標88の位置を絶対座標系に座標変換する。図15に、仮想移動目標88を絶対座標系にプロットした様子を概念的に示す。そして、走行指令送信部64は、この仮想移動目標88に向かってロボット11を移動するように、オムニホイール機構13に対して走行指令を送信する(図4のS109)。なお、このときのロボット11の移動速度は、前記合成ベクトル87の大きさに関係した速度でも良いし、これとは全く別に決定されても良い。   When the virtual movement target 88 is obtained as described above, the travel command transmission unit 64 converts the position of the virtual movement target 88 into the absolute coordinate system. FIG. 15 conceptually shows the virtual movement target 88 plotted in the absolute coordinate system. Then, the travel command transmission unit 64 transmits a travel command to the omni wheel mechanism 13 so as to move the robot 11 toward the virtual movement target 88 (S109 in FIG. 4). Note that the moving speed of the robot 11 at this time may be a speed related to the size of the composite vector 87 or may be determined completely separately.

ロボット11の移動中においては、障害物情報取得部54がレーザレンジファインダ14から障害物に関する情報を取得する。そして、障害物があった場合(S110の判断)は、走行指令送信部64は、オムニホイール機構13を駆動して、ロボット11を当該障害物から回避させるように移動させる(S111)。   While the robot 11 is moving, the obstacle information acquisition unit 54 acquires information about the obstacle from the laser range finder 14. If there is an obstacle (determination in S110), the travel command transmission unit 64 drives the omni wheel mechanism 13 to move the robot 11 so as to avoid the obstacle (S111).

以上の処理が終了した場合、走行制御コントローラ15はS104のステップまで戻り、ロボット11の制御周期毎に前記処理(S104からS111の処理)を繰り返し実行する。このループ処理により、仮想移動目標88の位置は、ロボット11の移動に伴って常に更新され続ける。従って、ロボット11は、一定距離離れた仮想移動目標88を常に追いかけるようにして移動することになる。これにより、サブゴールの絶対位置を目標として移動する構成に比べ、滑らかな移動目標を生成することが可能となり、ロボット11の滑らかな移動制御を実現することができるのである。また、ロボット11は仮想移動目標88を目標として移動しているので、サブゴール上に障害物があった場合であっても、当該障害物によって進めなくなることがなく、目的地に向かって移動を続けることができる。   When the above processing is completed, the traveling controller 15 returns to the step of S104, and repeatedly executes the above processing (processing from S104 to S111) every control cycle of the robot 11. By this loop processing, the position of the virtual movement target 88 is constantly updated as the robot 11 moves. Therefore, the robot 11 moves so as to always follow the virtual movement target 88 that is a certain distance away. As a result, it is possible to generate a smooth movement target as compared with a configuration in which the absolute position of the subgoal is moved as a target, and smooth movement control of the robot 11 can be realized. In addition, since the robot 11 moves with the virtual movement target 88 as a target, even if there is an obstacle on the subgoal, the robot 11 does not stop moving due to the obstacle and continues to move toward the destination. be able to.

以上で説明したように、本実施形態のロボット11は、サブゴール記憶部56と、自機情報取得部53と、最短サブゴール探索部57と、サブゴール抽出部58と、仮想移動目標演算部59と、を備えている。サブゴール記憶部56は、初期位置から目標位置に至るまでの経路に複数設定されたそれぞれのサブゴールの位置と、初期位置からの前記サブゴールの順序と、を記憶している。自機情報取得部53は、自機の現在位置を取得する。最短サブゴール探索部57は、サブゴール記憶部56が記憶しているサブゴールの中で、現在位置から最短距離にあるサブゴールを探索する。サブゴール抽出部58は、前記最短距離にあるサブゴールを含み、現在位置を中心とした所定領域内に位置するサブゴールを抽出する。仮想移動目標演算部59は、サブゴール抽出部58によって抽出された各サブゴールの位置に基づいて仮想移動目標88を演算する。   As described above, the robot 11 of this embodiment includes the subgoal storage unit 56, the own device information acquisition unit 53, the shortest subgoal search unit 57, the subgoal extraction unit 58, the virtual movement target calculation unit 59, It has. The subgoal storage unit 56 stores a plurality of subgoal positions set in a path from the initial position to the target position, and the order of the subgoals from the initial position. The own device information acquisition unit 53 acquires the current position of the own device. The shortest subgoal search unit 57 searches for a subgoal at the shortest distance from the current position among the subgoals stored in the subgoal storage unit 56. The subgoal extraction unit 58 extracts a subgoal that includes the subgoal at the shortest distance and is located within a predetermined area centered on the current position. The virtual movement target calculation unit 59 calculates a virtual movement target 88 based on the position of each subgoal extracted by the subgoal extraction unit 58.

以上の構成で、ロボット11の近傍に複数のサブゴールがある場合、当該複数のサブゴールの位置を総合的に考慮して仮想移動目標88を決定することができる。これにより、1つのサブゴールのみを移動目標として移動する構成と比べて、移動目標が大きく変化することがなくなり、円滑な移動を行うことができる。従って、サブゴールを切り替える際の急な方向転換が発生しにくくなるので、アクチュエータの負荷を抑えることが可能となり、省電力化及びコストダウンを実現することができる。また、移動を円滑にするためにサブゴールを細かい間隔で設定する必要が無いので、サブゴール記憶部56の記憶容量等を抑えることができる。また、サブゴールへの到達を目標とするのではなく、サブゴールから求めた仮想的な移動目標に追従するように移動することで、サブゴールに到達することなく目標位置まで移動することが可能である。即ち、必ずしもサブゴールの近傍を経由する必要がないので、サブゴール上に障害物がある場合や、障害物回避により経路から外れた場合であっても、従来の構成のように先に進めなくなることが無く、目標位置に向かって効率的な移動が可能になる。   With the above configuration, when there are a plurality of subgoals in the vicinity of the robot 11, the virtual movement target 88 can be determined by comprehensively considering the positions of the plurality of subgoals. Thereby, compared with the structure which moves only one subgoal as a movement target, a movement target does not change a lot and smooth movement can be performed. Therefore, since a sudden change of direction when switching the subgoals is less likely to occur, it is possible to suppress the load on the actuator, and to realize power saving and cost reduction. Further, since it is not necessary to set the subgoals at fine intervals for smooth movement, the storage capacity of the subgoal storage unit 56 can be suppressed. Further, it is possible to move to the target position without reaching the subgoal by moving to follow the virtual moving target obtained from the subgoal instead of aiming at reaching the subgoal. In other words, it is not always necessary to go through the vicinity of the subgoal, so even if there is an obstacle on the subgoal or when it is off the route due to obstacle avoidance, it may not proceed as in the conventional configuration. There is no need to move efficiently toward the target position.

また、本実施形態のロボット11は、以下のように構成されている。即ち、仮想移動目標演算部59は、サブゴール抽出部58によって抽出された各サブゴールの位置を、現在位置を原点とする相対座標に座標変換する。そして、仮想移動目標演算部59は、相対座標における各サブゴールの位置ベクトルを合成した合成ベクトル87の方向に基づいて仮想移動目標88を演算する。   Further, the robot 11 of the present embodiment is configured as follows. In other words, the virtual movement target calculation unit 59 converts the position of each subgoal extracted by the subgoal extraction unit 58 into relative coordinates with the current position as the origin. Then, the virtual movement target calculation unit 59 calculates the virtual movement target 88 based on the direction of the combined vector 87 obtained by combining the position vectors of the subgoals in relative coordinates.

これにより、複数のサブゴールを考慮しつつ、ベクトルの合成という比較的簡単な演算によってロボット11の仮想移動目標88を決定することができる。   Thereby, the virtual movement target 88 of the robot 11 can be determined by a relatively simple calculation such as vector synthesis while considering a plurality of subgoals.

また、本実施形態のロボット11において、サブゴール抽出部58は、前記所定領域の外側近傍に位置するサブゴールがある場合は、当該サブゴールの位置を前記所定領域の境界上に置換して追加的に抽出している。   Further, in the robot 11 of the present embodiment, when there is a subgoal located near the outside of the predetermined area, the subgoal extracting unit 58 additionally extracts the subgoal position by replacing it on the boundary of the predetermined area. is doing.

これにより、遠い位置にあるサブゴールを予め考慮に入れておくことができるので、より滑らかに移動することができる。また、所定領域の境界上の位置に置換することにより、相対座標に座標変換したときの位置ベクトルの長さを制限できるので、遠い位置のサブゴールと近い位置のサブゴールをバランス良く考慮して移動することができる。   Thereby, since the subgoal in a far position can be taken into consideration beforehand, it can move more smoothly. In addition, by replacing the position with the position on the boundary of the predetermined area, the length of the position vector when the coordinate is converted into relative coordinates can be limited, so that the subgoal at a position close to the subgoal at a far position is moved in a balanced manner. be able to.

また、本実施形態のロボット11において、仮想移動目標演算部59は、自機の現在位置を中心とした所定領域内に位置するサブゴールのうち、前記最短距離にあるサブゴールよりも初期位置側であるサブゴールを除いた残りの各サブゴールの位置に基づいて、仮想移動目標88を演算している。   Further, in the robot 11 of the present embodiment, the virtual movement target calculation unit 59 is closer to the initial position than the subgoal that is at the shortest distance among the subgoals that are located within a predetermined area centered on the current position of the own device. Based on the positions of the remaining subgoals excluding the subgoals, the virtual movement target 88 is calculated.

これにより、最短距離にあるサブゴールと、それより目標位置側のサブゴールのみを考慮して移動方向を決定できるので、目標位置に対してより効率良く移動することができる。   As a result, the moving direction can be determined in consideration of only the subgoal at the shortest distance and the subgoal closer to the target position, so that it is possible to move more efficiently with respect to the target position.

また、本実施形態のロボット11の移動制御方法は、現在位置取得ステップ(S104)と、最短サブゴール探索ステップ(S106)と、サブゴール抽出ステップ(S107)と、仮想移動目標演算ステップ(S108)と、を含んでいる。現在位置取得ステップでは、自機の現在位置を取得する。最短サブゴール探索ステップでは、サブゴール記憶部56が記憶しているサブゴールの中で、現在位置から最短距離にあるサブゴールを探索する。サブゴール抽出ステップでは、前記最短距離にあるサブゴールを含み、現在位置を中心とした所定領域内に位置するサブゴールを抽出する。仮想移動目標演算ステップでは、サブゴール抽出ステップで抽出された各サブゴールの位置に基づいて自機の仮想的な移動目標を演算する。   Further, the movement control method of the robot 11 of the present embodiment includes a current position acquisition step (S104), a shortest subgoal search step (S106), a subgoal extraction step (S107), a virtual movement target calculation step (S108), Is included. In the current position acquisition step, the current position of the own device is acquired. In the shortest subgoal search step, a subgoal at the shortest distance from the current position is searched for among the subgoals stored in the subgoal storage unit 56. In the subgoal extraction step, a subgoal that includes the subgoal at the shortest distance and is located within a predetermined area centered on the current position is extracted. In the virtual movement target calculation step, the virtual movement target of the own device is calculated based on the position of each subgoal extracted in the subgoal extraction step.

以上の方法で、ロボット11の近傍に複数のサブゴールがある場合、当該複数のサブゴールの位置を総合的に考慮して仮想移動目標88を決定することができる。これにより、1つのサブゴールのみを移動目標として移動する構成と比べて、移動目標が大きく変化することがなくなり、円滑な移動を行うことができる。従って、サブゴールを切り替える際の急な方向転換が発生しにくくなるので、アクチュエータの負荷を抑えることが可能となり、省電力化及びコストダウンを実現することができる。また、移動を円滑にするためにサブゴールを細かい間隔で設定する必要が無いので、サブゴール記憶部56の記憶容量等を抑えることができる。また、サブゴールへの到達を目標とするのではなく、サブゴールから求めた仮想的な移動目標に追従するように移動することで、サブゴールに到達することなく目標位置まで移動することが可能である。即ち、必ずしもサブゴールの近傍を経由する必要がないので、サブゴール上に障害物がある場合や、障害物回避により経路から外れた場合であっても、従来の構成のように先に進めなくなることが無く、目標位置に向かって効率的な移動が可能になる。   With the above method, when there are a plurality of subgoals in the vicinity of the robot 11, the virtual movement target 88 can be determined by comprehensively considering the positions of the plurality of subgoals. Thereby, compared with the structure which moves only one subgoal as a movement target, a movement target does not change a lot and smooth movement can be performed. Therefore, since a sudden change of direction when switching the subgoals is less likely to occur, it is possible to suppress the load on the actuator, and to realize power saving and cost reduction. Further, since it is not necessary to set the subgoals at fine intervals for smooth movement, the storage capacity of the subgoal storage unit 56 can be suppressed. Further, it is possible to move to the target position without reaching the subgoal by moving to follow the virtual moving target obtained from the subgoal instead of aiming at reaching the subgoal. In other words, it is not always necessary to go through the vicinity of the subgoal, so even if there is an obstacle on the subgoal or when it is off the route due to obstacle avoidance, it may not proceed as in the conventional configuration. There is no need to move efficiently toward the target position.

以上に本発明の好適な実施の形態について説明したが、上記の構成は例えば以下のように変更することができる。   Although the preferred embodiment of the present invention has been described above, the above configuration can be changed as follows, for example.

レーザレンジファインダ14に代えて、又はそれに加えて、ステレオカメラ、単眼カメラ、超音波センサ、赤外線センサ等をロボット11に備え、これらによって障害物を検知する構成に変更することができる。   Instead of or in addition to the laser range finder 14, the robot 11 may be provided with a stereo camera, a monocular camera, an ultrasonic sensor, an infrared sensor, and the like, so that an obstacle can be detected.

サブゴールを設定する方法としては、上記の方法に限られず、適宜の方法を用いることができる。例えば、A*アルゴリズムの代りにダイクストラ法を用いて最短経路を探索しても良い。また例えば、平滑化を行った後で直線化を行っても良い。   The method of setting the subgoal is not limited to the above method, and an appropriate method can be used. For example, the shortest path may be searched using the Dijkstra method instead of the A * algorithm. Further, for example, linearization may be performed after smoothing.

また、経路の平滑化を行う際に、例えばカーブの急なところにはサブゴールを密に配置し、直線状の区間にはサブゴールを広い間隔で配置するように構成することができる。これによれば、カーブの急なところで、ロボット11を更に滑らかに移動させることができる。   Further, when performing the smoothing of the route, for example, the subgoals can be arranged densely at a steep portion of the curve, and the subgoals can be arranged at wide intervals in a straight section. According to this, the robot 11 can be moved more smoothly at a steep curve.

また、サブゴール抽出部58によって所定領域内のサブゴールを抽出する際、当該所定領域の外側近傍にあるサブゴールは考慮しないように構成しても良い。   Further, when the subgoal extraction unit 58 extracts the subgoals in the predetermined area, the subgoals in the vicinity of the outside of the predetermined area may not be considered.

サブゴールの順序は、上記実施形態と逆に、目標位置90に最も近いものが1番目、次に近いのが2番目、・・・というように定めてサブゴール記憶部56に記憶することもできる。   Contrary to the above embodiment, the order of subgoals may be determined such that the closest to the target position 90 is the first, the next closest is the second, and so on, and stored in the subgoal storage unit 56.

サブゴール記憶部56に記憶された各サブゴールには、速度に関する情報を関連付けて記憶しておいても良い。例えば、通路の狭い部分に配置されたサブゴールにはロボット11をゆっくりと移動させるような情報を、広い部分に配置されたサブゴールには速度を上げる情報を関連付けるように構成する。この場合、ロボット11の移動速度を決定する際には、例えば、最短サブゴール探索部57によって選択された最短距離のサブゴールに関連付けられた速度でロボットを移動させるように構成することができる。   Information regarding speed may be associated with each subgoal stored in the subgoal storage unit 56 and stored. For example, information for slowly moving the robot 11 is associated with subgoals arranged in a narrow part of the passage, and information for increasing the speed is associated with subgoals arranged in a wide part. In this case, when the moving speed of the robot 11 is determined, for example, the robot can be configured to move at a speed associated with the shortest distance subgoal selected by the shortest subgoal search unit 57.

仮想移動目標演算部59において、サブゴールを相対座標に座標変換する処理を省略し、絶対座標のままでベクトル演算を行ってもよい。   The virtual movement target calculation unit 59 may omit the process of converting the subgoal into relative coordinates and perform the vector calculation with the absolute coordinates.

領域円100の半径は、状況に応じて随時変更可能とすることができる。この場合、例えば、各サブゴールに通路の幅に関する情報を関連付けて記憶しておき、ロボット11が移動している通路の幅に応じて領域円100の半径を変更する構成とすることができる。即ち、狭い通路では領域円100の半径を小さくすることで、サブゴール抽出部58で抽出されるサブゴールの数を減らし、ロボット11がサブゴール列で表される経路から大きく外れないように制御することができる。また、このように構成する場合は、ロボット11の移動速度を領域円100の半径に関連付けて制御するようにしても良い。   The radius of the area circle 100 can be changed at any time according to the situation. In this case, for example, information regarding the width of the passage may be stored in association with each subgoal, and the radius of the area circle 100 may be changed according to the width of the passage in which the robot 11 is moving. That is, by reducing the radius of the area circle 100 in a narrow path, the number of subgoals extracted by the subgoal extraction unit 58 is reduced, and control is performed so that the robot 11 does not greatly deviate from the path represented by the subgoal sequence. it can. In such a configuration, the moving speed of the robot 11 may be controlled in association with the radius of the area circle 100.

ロボット11を移動させるためのオムニホイール機構13は、オムニホイール21が4つのものに代えて、例えば6つ又は3つ配置される構成に変更することができる。   The omni wheel mechanism 13 for moving the robot 11 can be changed to a configuration in which, for example, six or three omni wheels 21 are arranged instead of four.

また、オムニホイールを備えたロボット以外でも、例えば2足歩行ロボットや4輪の車両型ロボットなど、自律的に移動可能なロボットであれば本発明を適用できる。   In addition to robots equipped with omni wheels, the present invention can be applied to any robot that can move autonomously, such as a biped robot or a four-wheeled vehicle robot.

本発明の一実施形態に係るサービスロボットの全体的な構成を模式的に示した側面図。The side view which showed typically the whole structure of the service robot which concerns on one Embodiment of this invention. オムニホイール機構を示す底面図。The bottom view which shows an omni wheel mechanism. ロボットの移動制御のための電気的構成を示すブロック図。The block diagram which shows the electric structure for the movement control of a robot. ロボットの移動制御の流れを示すフローチャート。The flowchart which shows the flow of the movement control of a robot. マップの例を示した図。The figure which showed the example of the map. Minkowski和をとった結果の例を示した図。The figure which showed the example of the result of having taken Minkowski sum. 細線化を行った結果の例を示した図。The figure which showed the example of the result of having thinned. サブゴールノードを配置した例を示した図。The figure which showed the example which has arrange | positioned the subgoal node. 最短経路探索の結果の例を示した図。The figure which showed the example of the result of the shortest path | route search. 経路を直線化した結果の例を示した図。The figure which showed the example of the result of having linearized the path | route. 経路を平滑化した結果の例を示した図。The figure which showed the example of the result of smoothing a path | route. 絶対座標にプロットしたサブゴールの例を示した図。The figure which showed the example of the subgoal plotted on the absolute coordinate. サブゴール抽出の様子を概念的に示した図。The figure which showed notionally the state of subgoal extraction. 仮想移動目標演算の様子を概念的に示した図。The figure which showed notionally the mode of virtual movement target calculation. ロボットが仮想移動目標に向かって移動する様子を示した図。The figure which showed a mode that the robot moved toward a virtual movement target.

符号の説明Explanation of symbols

11 ロボット(自律移動体)
15 走行制御コントローラ
51 マップ記憶部
52 目標位置記憶部
53 自機情報取得部(現在位置取得部)
54 障害物情報取得部
55 サブゴール演算部
56 サブゴール記憶部
57 最短サブゴール探索部
58 サブゴール抽出部
59 仮想移動目標演算部
64 走行指令送信部
81,82,83,84,85 サブゴール
88 仮想移動目標(仮想的な移動目標)
90 目標位置(第2地点)
100 領域円(所定領域)
11 Robot (autonomous mobile body)
DESCRIPTION OF SYMBOLS 15 Travel controller 51 Map memory | storage part 52 Target position memory | storage part 53 Self-machine information acquisition part (current position acquisition part)
54 Obstacle information acquisition unit 55 Subgoal calculation unit 56 Subgoal storage unit 57 Shortest subgoal search unit 58 Subgoal extraction unit 59 Virtual movement target calculation unit 64 Travel command transmission unit 81, 82, 83, 84, 85 Subgoal 88 Virtual movement target (virtual Moving target)
90 Target position (second point)
100 area circle (predetermined area)

Claims (5)

第1地点から第2地点に至るまでの経路に複数設定されたそれぞれのサブゴールの位置と、前記第1地点又は前記第2地点からの前記サブゴールの順序と、を記憶したサブゴール記憶部と、
自機の現在位置を取得する現在位置取得部と、
前記サブゴール記憶部が記憶しているサブゴールの中で、前記現在位置から最短距離にあるサブゴールを探索する最短サブゴール探索部と、
前記最短距離にあるサブゴールを含み、前記現在位置を中心とした所定領域内に位置するサブゴールを抽出するサブゴール抽出部と、
前記サブゴール抽出部によって抽出された各サブゴールの位置に基づいて自機の仮想的な移動目標を演算する仮想移動目標演算部と、
を備えることを特徴とする自律移動体。
A subgoal storage unit that stores a plurality of subgoal positions set in a route from the first point to the second point, and the order of the subgoals from the first point or the second point;
A current position acquisition unit for acquiring the current position of the aircraft;
Among the subgoals stored in the subgoal storage unit, a shortest subgoal search unit that searches for a subgoal that is at the shortest distance from the current position;
A subgoal extracting unit that includes a subgoal at the shortest distance and extracts a subgoal located in a predetermined area centered on the current position;
A virtual movement target calculation unit that calculates a virtual movement target of the own machine based on the position of each subgoal extracted by the subgoal extraction unit;
An autonomous mobile body characterized by comprising:
請求項1に記載の自律移動体であって、
前記仮想移動目標演算部は、前記サブゴール抽出部によって抽出された前記各サブゴールの位置を、前記現在位置を原点とする相対座標に座標変換するとともに、当該相対座標における前記各サブゴールの位置ベクトルを合成した合成ベクトルの方向に基づいて前記仮想的な移動目標を演算することを特徴とする自律移動体。
The autonomous mobile body according to claim 1,
The virtual movement target calculation unit performs coordinate conversion of the position of each subgoal extracted by the subgoal extraction unit into relative coordinates with the current position as an origin, and synthesizes a position vector of each subgoal in the relative coordinates An autonomous moving body, wherein the virtual moving target is calculated based on the direction of the synthesized vector.
請求項2に記載の自律移動体であって、
前記サブゴール抽出部は、前記所定領域の外側近傍に位置するサブゴールがある場合は、当該サブゴールの位置を前記所定領域の境界上に置換して追加的に抽出することを特徴とする自律移動体。
The autonomous mobile body according to claim 2,
The subgoal extracting unit, when there is a subgoal located near the outside of the predetermined area, substitutes the position of the subgoal on the boundary of the predetermined area and additionally extracts the autonomous moving body.
請求項1から3までの何れか一項に記載の自律移動体であって、
前記仮想移動目標演算部は、前記現在位置を中心とした所定領域内に位置するサブゴールのうち、前記最短距離にあるサブゴールよりも前記第1地点側であるサブゴールを除いた残りの各サブゴールの位置に基づいて、自機の仮想的な移動目標を演算することを特徴とする自律移動体。
The autonomous mobile body according to any one of claims 1 to 3,
The virtual movement target calculation unit is a position of each remaining subgoal excluding a subgoal that is closer to the first point than a subgoal that is at the shortest distance among subgoals that are located within a predetermined area centered on the current position. Based on the above, an autonomous moving body that calculates a virtual movement target of its own machine.
第1地点から第2地点に至るまでの経路に複数設定されたそれぞれのサブゴールの位置と、前記第1地点又は前記第2地点からの前記サブゴールの順序と、を記憶したサブゴール記憶部を備えた自律移動体の移動制御方法において、
自機の現在位置を取得する現在位置取得ステップと、
前記サブゴール記憶部が記憶しているサブゴールの中で、前記現在位置から最短距離にあるサブゴールを探索する最短サブゴール探索ステップと、
前記最短距離にあるサブゴールを含み、前記現在位置を中心とした所定領域内に位置するサブゴールを抽出するサブゴール抽出ステップと、
前記サブゴール抽出ステップで抽出された各サブゴールの位置に基づいて自機の仮想的な移動目標を演算する仮想移動目標演算ステップと、
を含むことを特徴とする自律移動体の移動制御方法。
A subgoal storage unit storing a plurality of subgoal positions set on a route from the first point to the second point and the order of the subgoals from the first point or the second point; In the movement control method of an autonomous mobile body,
A current position acquisition step for acquiring the current position of the aircraft;
Among the subgoals stored in the subgoal storage unit, a shortest subgoal search step for searching for a subgoal that is at the shortest distance from the current position;
A subgoal extraction step for extracting a subgoal that includes the subgoal at the shortest distance and is located within a predetermined area centered on the current position;
A virtual movement target calculation step of calculating a virtual movement target of the own machine based on the position of each subgoal extracted in the subgoal extraction step;
A method for controlling the movement of an autonomous mobile body, comprising:
JP2008261821A 2008-10-08 2008-10-08 Autonomous mobile body and movement control method for autonomous mobile body Active JP5312894B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008261821A JP5312894B2 (en) 2008-10-08 2008-10-08 Autonomous mobile body and movement control method for autonomous mobile body

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008261821A JP5312894B2 (en) 2008-10-08 2008-10-08 Autonomous mobile body and movement control method for autonomous mobile body

Publications (2)

Publication Number Publication Date
JP2010092279A true JP2010092279A (en) 2010-04-22
JP5312894B2 JP5312894B2 (en) 2013-10-09

Family

ID=42254926

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008261821A Active JP5312894B2 (en) 2008-10-08 2008-10-08 Autonomous mobile body and movement control method for autonomous mobile body

Country Status (1)

Country Link
JP (1) JP5312894B2 (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101220542B1 (en) * 2010-08-04 2013-01-10 중앙대학교 산학협력단 Method and apparatus for path planning of autonomous mobile robot
JP2014123200A (en) * 2012-12-20 2014-07-03 Toyota Motor Corp Moving body control apparatus, moving body control method, and control program
WO2014125719A1 (en) * 2013-02-15 2014-08-21 村田機械株式会社 Conveyance trolley, drive control method for conveyance trolley, and drive control program for conveyance trolley
WO2014181647A1 (en) * 2013-05-07 2014-11-13 村田機械株式会社 Autonomous moving body movement control device, autonomous moving body, and autonomous moving body control method
JP2015060388A (en) * 2013-09-18 2015-03-30 村田機械株式会社 Autonomous traveling carriage, planned travel route data processing method, and program
CN110609278A (en) * 2019-09-23 2019-12-24 上海机电工程研究所 Off-axis irradiation method and system with self-adaptive capacity
JP2020152234A (en) * 2019-03-20 2020-09-24 クラリオン株式会社 On-vehicle processing device, and movement support system
CN111714028A (en) * 2019-03-18 2020-09-29 北京奇虎科技有限公司 Method, device and equipment for escaping from restricted zone of cleaning equipment and readable storage medium
WO2020195876A1 (en) * 2019-03-25 2020-10-01 ソニー株式会社 Movable body and control method therefor, and program
JP2021033685A (en) * 2019-08-26 2021-03-01 株式会社デンソー Learning program and learning method
WO2021065241A1 (en) * 2019-09-30 2021-04-08 日本電産株式会社 Route generation device
JP2021131601A (en) * 2020-02-18 2021-09-09 株式会社豊田自動織機 Autonomous moving body
WO2023158075A1 (en) * 2022-02-15 2023-08-24 주식회사 트위니 Autonomous robot capable of moving obstacle avoidance

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007249631A (en) * 2006-03-16 2007-09-27 Fujitsu Ltd Polygonal line following mobile robot, and control method for polygonal line following mobile robot
JP2010061442A (en) * 2008-09-04 2010-03-18 Murata Machinery Ltd Autonomous mobile device
JP2010092147A (en) * 2008-10-06 2010-04-22 Murata Machinery Ltd Autonomous mobile device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007249631A (en) * 2006-03-16 2007-09-27 Fujitsu Ltd Polygonal line following mobile robot, and control method for polygonal line following mobile robot
JP2010061442A (en) * 2008-09-04 2010-03-18 Murata Machinery Ltd Autonomous mobile device
JP2010092147A (en) * 2008-10-06 2010-04-22 Murata Machinery Ltd Autonomous mobile device

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101220542B1 (en) * 2010-08-04 2013-01-10 중앙대학교 산학협력단 Method and apparatus for path planning of autonomous mobile robot
JP2014123200A (en) * 2012-12-20 2014-07-03 Toyota Motor Corp Moving body control apparatus, moving body control method, and control program
WO2014125719A1 (en) * 2013-02-15 2014-08-21 村田機械株式会社 Conveyance trolley, drive control method for conveyance trolley, and drive control program for conveyance trolley
JPWO2014125719A1 (en) * 2013-02-15 2017-02-02 村田機械株式会社 Transport cart, transport cart drive control method, and transport cart drive control program
WO2014181647A1 (en) * 2013-05-07 2014-11-13 村田機械株式会社 Autonomous moving body movement control device, autonomous moving body, and autonomous moving body control method
JP2014219799A (en) * 2013-05-07 2014-11-20 村田機械株式会社 Movement control device of autonomous mobile body, autonomous mobile body, and control method for autonomous mobile body
JP2015060388A (en) * 2013-09-18 2015-03-30 村田機械株式会社 Autonomous traveling carriage, planned travel route data processing method, and program
CN111714028A (en) * 2019-03-18 2020-09-29 北京奇虎科技有限公司 Method, device and equipment for escaping from restricted zone of cleaning equipment and readable storage medium
JP7393128B2 (en) 2019-03-20 2023-12-06 フォルシアクラリオン・エレクトロニクス株式会社 In-vehicle processing equipment, mobility support system
JP2020152234A (en) * 2019-03-20 2020-09-24 クラリオン株式会社 On-vehicle processing device, and movement support system
WO2020195876A1 (en) * 2019-03-25 2020-10-01 ソニー株式会社 Movable body and control method therefor, and program
JP2021033685A (en) * 2019-08-26 2021-03-01 株式会社デンソー Learning program and learning method
US11727308B2 (en) 2019-08-26 2023-08-15 Denso Corporation Learning system and method
CN110609278B (en) * 2019-09-23 2023-06-30 上海机电工程研究所 Off-axis illumination method and system with self-adaption capability
CN110609278A (en) * 2019-09-23 2019-12-24 上海机电工程研究所 Off-axis irradiation method and system with self-adaptive capacity
WO2021065241A1 (en) * 2019-09-30 2021-04-08 日本電産株式会社 Route generation device
CN114450648A (en) * 2019-09-30 2022-05-06 日本电产株式会社 Route generation device
US20220334583A1 (en) * 2019-09-30 2022-10-20 Nidec Corporation Route generation device
JP2021131601A (en) * 2020-02-18 2021-09-09 株式会社豊田自動織機 Autonomous moving body
WO2023158075A1 (en) * 2022-02-15 2023-08-24 주식회사 트위니 Autonomous robot capable of moving obstacle avoidance

Also Published As

Publication number Publication date
JP5312894B2 (en) 2013-10-09

Similar Documents

Publication Publication Date Title
JP5312894B2 (en) Autonomous mobile body and movement control method for autonomous mobile body
JP5337408B2 (en) Autonomous mobile body and its movement control method
JP5086942B2 (en) Route search device, route search method, and route search program
WO2010026710A1 (en) Route planning method, route planning unit, and autonomous mobile device
JP5398489B2 (en) Autonomous mobile object and its control method
JP5560978B2 (en) Autonomous mobile
JP5398488B2 (en) Autonomous mobile object and its control method
JP5287051B2 (en) Autonomous mobile device
JP4682973B2 (en) Travel route creation method, autonomous mobile body, and autonomous mobile body control system
JP4670807B2 (en) Travel route creation method, autonomous mobile body, and autonomous mobile body control system
JP2008158868A (en) Mobile body and control method
JP2016151897A (en) Mobile body control device and mobile body control method
JP2005224265A (en) Self-traveling vacuum cleaner
WO2014048597A1 (en) Autonomous mobile robot and method for operating the same
KR102301758B1 (en) Autonomous Mobile Robot and Method for Driving Control the same
JP2008142841A (en) Mobile robot
JP5287060B2 (en) Route planning device and autonomous mobile device
US20160195875A1 (en) Autonomous mobile robot and method for operating the same
JP6348971B2 (en) Moving body
JP2008129695A (en) Path generation system and method for traveling object
JP2007249631A (en) Polygonal line following mobile robot, and control method for polygonal line following mobile robot
JP2010061355A (en) Route planning method, route planning device, and autonomous mobile device
JP2009053927A (en) Route generation device for autonomous movement and autonomous movement device using the device
WO2016009585A1 (en) Autonomous mobile object and method of controlling same
JP7360792B2 (en) Mobile object, learning device, and learning device manufacturing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110819

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121018

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121206

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: 20130628

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130703

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5312894

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250