JP6135289B2 - 自律移動体の移動制御装置、自律移動体、及び自律移動体の制御方法 - Google Patents

自律移動体の移動制御装置、自律移動体、及び自律移動体の制御方法 Download PDF

Info

Publication number
JP6135289B2
JP6135289B2 JP2013097780A JP2013097780A JP6135289B2 JP 6135289 B2 JP6135289 B2 JP 6135289B2 JP 2013097780 A JP2013097780 A JP 2013097780A JP 2013097780 A JP2013097780 A JP 2013097780A JP 6135289 B2 JP6135289 B2 JP 6135289B2
Authority
JP
Japan
Prior art keywords
autonomous mobile
mobile body
travel
unit
obstacle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013097780A
Other languages
English (en)
Other versions
JP2014219799A (ja
Inventor
英生 下本
英生 下本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Murata Machinery Ltd
Original Assignee
Murata Machinery Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Murata Machinery Ltd filed Critical Murata Machinery Ltd
Priority to JP2013097780A priority Critical patent/JP6135289B2/ja
Priority to PCT/JP2014/060716 priority patent/WO2014181647A1/ja
Publication of JP2014219799A publication Critical patent/JP2014219799A/ja
Application granted granted Critical
Publication of JP6135289B2 publication Critical patent/JP6135289B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Electromagnetism (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Description

本発明は、センサにより障害物を検出しながら自律走行する自律移動体、自律移動体の移動制御装置、及び自律移動体の制御方法に関する。
従来、センサにより障害物を検出しながら自律走行する自律移動体が知られている。例えば、特許文献1には、自律移動体を円モデルで近似せず、長軸と短軸とを備えた異方性のある異方性モデルを利用して、自律移動体の姿勢角を変化させながら併進して障害物を回避する自律移動体が開示されている。
特許文献1の自律移動体は、自律移動体の並進に関するポテンシャルと、回転に関するポテンシャルとを用いて、障害物を回避する。
特許文献1における障害物を回避するために用いられるポテンシャル法は、目的地に対する引力ポテンシャルと、回避すべき障害物に対する斥力ポテンシャルとを生成し、これらのポテンシャルを重ね合わせた力場の勾配により制御量を発生させる方法である。
特開2011−108129号公報
特許文献1のポテンシャル法を用いた障害物の回避方法においては、自律移動体が障害物に近づくと大きな斥力ポテンシャルが働く。このため、本来は回避行動をすることなく障害物を回避可能な場合でも、自律移動体は障害物を回避するような動作を行ってしまう。自律移動体がこのような無駄な回避行動を実行した場合、自律移動体が、ユーザにより教示された走行経路を忠実に走行できない場合がある。
本発明の課題は、無駄な障害物の回避行動を行うことなく、ユーザにより教示された走行経路(予定走行経路)を忠実に走行するように自律移動体を制御することにある。
以下に、課題を解決するための手段として複数の態様を説明する。これら態様は、必要に応じて任意に組み合せることができる。
本発明の一見地に係る自律移動体の移動制御装置は、移動部と、障害物を検出する検出部とを備え、予め作成した予定走行経路を再現するように移動する自律移動体の移動制御装置である。
自律移動体の移動制御装置は、演算部と、判断部と、移動制御部と、を備える。演算部は、自律移動体の現在位置と、現在位置から所定の距離を走行した位置である将来位置までの走行経路を表す走行経路情報と、自律移動体を内包した所定の形状を有する自律移動体領域と、に基づいて、現在位置から将来位置までの予想走行軌跡を演算する。判断部は、検出部が検出した障害物と予想走行軌跡とが互いに干渉するか否かを判断する。移動制御部は、判断部において障害物と予想走行軌跡とが干渉しないと判断された場合、演算部により演算された予想走行軌跡を再現するように移動部を制御する移動指令を作成する。
この移動制御装置では、最初に、演算部が、走行経路情報と自律移動体領域とに基づいて、予想走行軌跡を作成する。次に、判断部が、自律移動体の検出部が検出した障害物と予想走行軌跡とが互いに干渉するか否かを判断する。そして、移動制御部が、判断部において障害物と予想走行軌跡とが干渉しないと判断されていれば、予想走行軌跡を再現するように、自律移動体の移動部を制御する移動指令を作成する。
この移動制御装置では、自律移動体と障害物とが衝突するかどうかの判断が、予想走行軌跡と障害物とが互いに干渉するか否かの判断に基づいている。これにより、自律移動体が障害物に対して回避行動を取るかどうかを、より高い確度で判断できる。その結果、自律移動体は、障害物に対して無駄な回避行動を行うことなく、ユーザにより教示された予定走行経路をより忠実に走行できる。
自律移動体領域の、自律移動体の移動平面における形状は異方性を有していてもよい。また、この場合、走行経路情報は、自律移動体の走行経路における位置情報と、走行経路上における自律移動体の姿勢情報とを含んでいてもよい。
これにより、演算部は、自律移動体の形状や姿勢を考慮してより正確な予想走行軌跡を作成できる。その結果、判断部は、障害物と自律移動体とが互いに干渉するかどうかをより確実に判断できる。
自律移動体領域の移動平面における形状は楕円であってもよい。これにより、判断部は、より少ない演算により障害物と自律移動体とが互いに干渉するかどうかを判断できる。
走行経路情報は、自律移動体の走行経路上における時間情報をさらに含んでいてもよい。これにより、移動制御部は、より単純な演算によりに移動指令を作成できる。また、走行経路情報を離散的な情報(配列)として表現できるので、走行経路情報の構造を単純化できる。
演算部は、ベース点生成部と、回転自律移動体領域生成部と、予想走行軌跡生成部と、を備えていてもよい。ベース点生成部は、走行経路情報の位置情報として、走行経路上に複数のベース点を生成する。回転自律移動体領域生成部は、走行経路情報の姿勢情報に基づいて、自律移動体領域を移動平面の法線軸周りに回転することで回転自律移動体領域を生成する。予想走行軌跡生成部は、ベース点生成部にて生成されたベース点のそれぞれに、回転自律移動体領域生成部にて生成された回転自律移動体領域を配置して、予想走行軌跡を生成する。これにより、演算部は、より単純な演算により、予想走行軌跡を作成できる。
予定走行経路は、複数の走行目標点により構成されていてもよい。この場合、ベース点生成部は、目標点抽出部と、目標点選択部と、算出部と、ベース点配置部と、を備えていてもよい。目標点抽出部は、走行目標点のうち、現在位置から、現在位置を中心とする所定の第1半径を有する第1の円の外側に存在する走行目標点のうち、現在位置に最も近く、かつ、現在位置よりも進行方向前方に存在する第1走行目標点までの走行目標点である前方走行目標点を抽出する。目標点選択部は、現在位置を中心とする所定の第2半径を有する第2の円の外側に存在する前方走行目標点のうち、現在位置から最短の距離にある第2走行目標点を抽出する。算出部は、現在位置と第2走行目標点とを結ぶ線と、第2の円の円周との交点である仮想走行目標点を算出する。ベース点配置部は、現在位置と、仮想走行目標点と、第2走行目標点と、第2走行目標点から第1走行目標点までの間の前方走行目標点とを、現在位置に近い順に結んで生成される走行経路上に、ベース点を所定の間隔にて配置する。
これにより、自律移動体が予定走行経路から多少ずれた位置にあっても、自律移動体は、この位置のずれを補正して予定走行経路を忠実に走行できる。
移動制御部は、判断部において障害物と予想走行軌跡とが干渉すると判断された場合、干渉する位置が現在位置から近い距離にあれば、自律移動体を停止してもよい。また、現在位置から遠い距離にあれば、自律移動体を減速するように、移動部を制御してもよい。これにより、自律移動体は、障害物に衝突することなく、より忠実に走行経路を走行できる。
移動制御部は、判断部において障害物と予想走行軌跡とが干渉すると判断された場合、自律移動体を停止するように移動部を制御してもよい。これにより、自律移動体は、障害物に衝突することがなくなる。
本発明の他の見地に係る自律移動体は、移動部と、検出部と、演算部と、判断部と、移動制御部と、を備える。移動部は、自律移動体を移動させる。検出部は、障害物を検出する。演算部は、現在位置と、現在位置から所定の距離を走行した位置である将来位置までの走行経路を表す走行経路情報と、所定の形状を有する自律移動体領域とに基づいて、現在位置から将来位置までの予想走行軌跡を演算する。判断部は、検出部が検出した障害物と予想走行軌跡とが干渉するか否かを判断する。移動制御部は、判断部において障害物と予想走行軌跡とが干渉しないと判断された場合、演算部により演算された予想走行軌跡を再現するように移動部を制御する移動指令を作成する。
この自律移動体では、自律移動体と障害物とが衝突するかどうかの判断が、予想走行軌跡と障害物とが互いに干渉するか否かの判断に基づいている。これにより、自律移動体が障害物に対して回避行動を取るかどうかを、より高い確度で判断できる。その結果、自律移動体は、障害物に対する無駄な回避行動を行うことなく、予定走行経路をより忠実に走行できる。
本発明のさらに他の見地に係る自律移動体の制御方法は、移動部と、障害物を検出する検出部とを備え、予め作成した予定走行経路を再現するように移動する自律移動体の制御方法である。
自律移動体の制御方法は以下のステップを含む。
◎自律移動体の現在位置と、現在位置から所定の距離を走行した位置である将来位置までの走行経路を表す走行経路情報と、自律移動体を内包した所定の形状を有する自律移動体領域と、に基づいて、現在位置から将来位置までの予想走行軌跡を演算するステップ。
◎検出部が検出した障害物と予想走行軌跡とが干渉するか否かを判断するステップ。
◎障害物と予想走行軌跡とが干渉しないと判断された場合、演算された予想走行軌跡を再現するように移動部を制御するステップ。
この自律移動体の制御方法では、自律移動体と障害物とが衝突するかどうかの判断が、予想走行軌跡と障害物とが互いに干渉するか否かの判断に基づいている。これにより、自律移動体が障害物に対して回避行動を取るかどうかを、より高い確度で判断できる。その結果、自律移動体は、障害物に対する無駄な回避行動を行うことなく、予定走行経路を忠実に走行できる。
無駄な障害物の回避行動を行うことなく、予定走行経路を忠実に走行できる。
自律移動体の構成を示す図 操作部の構成を示す図 移動制御装置の全体構成を示す図 走行制御部の構成を示す図 楕円形状の自律移動体領域を示す図 回転自律移動体領域を示す図 演算部の構成を示す図 第1実施形態に係るベース点生成部の構成を示す図 自律移動体の自律走行動作を示すフローチャート 予想走行軌跡の生成方法を示すフローチャート 予想走行軌跡の生成方法において生成される走行経路及びベース点を模式的に示す図 予想走行軌跡の生成方法における回転自律移動体領域の生成を模式的に示す図 予想走行軌跡を示す図 ベース点生成方法を示すフローチャート 自律移動体領域Aの中心Vの現在位置、予定走行経路、及び選択されない走行目標点P0の位置関係を示す図 所定の半径を有する円、第1走行目標点、及び第2走行目標点の位置関係を示す図 線分P1P2と仮想走行目標点VPの位置関係を示す図 走行経路の生成を示す図 走行経路上のベース点の配置を示す図 障害物と予想走行軌跡との干渉の判断方法を示すフローチャート 移動座標上の6つの障害物を示す図 ベース点Bにおける自律移動体領域と6つの障害物の移動座標における配置を示す図 第2移動座標における自律移動体領域と障害物の配置を示す図 第3移動座標における自律移動体領域と障害物の配置を示す図 第4移動座標における自律移動体領域と障害物の配置を示す図 第2実施形態に係るベース点生成部の構成を示す図 第2実施形態に係るベース点生成部におけるベース点生成方法を示すフローチャート 第2実施形態における自律移動体領域Aの中心Vの現在位置、予定走行経路、第1の円、第1走行目標点、及び選択されない走行目標点の位置関係を示す図 第2実施形態における第2の円、及び、第2走行目標点の位置関係を示す図 第2実施形態における仮想走行目標点VPの位置関係を示す図 第2実施形態における走行経路の生成を示す図 第2実施形態におけるベース点の配置を示す図
1.第1実施形態
(1)自律移動体の全体構成
まず、本実施形態に係る自律移動体の全体構成を図1を用いて説明する。図1は、自律移動体の構成を示す図である。本実施形態の自律移動体100は、ユーザにより教示された経路(予定走行経路)を再現しながら、自律して走行可能な移動体である。
自律移動体100は、移動部1と、移動制御装置2と、検出部3と、操作部5と、備える。移動部1は、自律移動体100を移動させる。検出部3は、移動制御装置2に接続されている。そして、検出部3は、障害物S(後述)を検出し、障害物Sの位置情報を移動制御装置2に出力する。操作部5は、自律移動体100の本体7に、取付部材9を介して固定されている。また、操作部5は、移動制御装置2に信号の送受信が可能なように接続されている。操作部5は、ユーザが自律移動体100に予定走行経路を教示する(教示モード)とき、ユーザにより操作される。これにより、自律移動体100の走行モードが教示モードのときに、自律移動体100は、ユーザによる操作部5の操作に基づいて制御される。また、操作部5は、自律移動体100の各種設定を行う。
なお、自律移動体100の前方は、操作部5が取り付けられた側とは反対側であるとする。
移動制御装置2は、移動部1に電気的に接続されている。また、移動制御装置2には、検出部3が接続されている。移動制御装置2は、自律移動体100の走行モードが教示モードのときには、ユーザによる操作部5の操作に基づいて、移動部1を制御する。一方、自律移動体100の走行モードが自律移動するモード(自律移動モード)のときには、移動制御装置2は、自律移動体100の移動指令を作成する。そして、移動制御装置2は、作成された移動指令に基づいて移動部1を制御する。
また、移動制御装置2は、障害物Sの位置情報を把握する。そして、移動制御装置2は、障害物Sの位置情報に基づき、障害物Sと自律移動体100とが干渉するかどうかを判定する。
なお、自律移動体100の移動部1、移動制御装置2、検出部3、及び操作部5の構成の詳細については、後述する。
自律移動体100は、補助輪部8をさらに備える。補助輪部8は、2つの補助車輪8a、8bを有する。2つの補助車輪8aと8bは、それぞれが独立に回転可能なように取り付けられている。補助輪部8を備えることにより、自律移動体100は安定に、かつ、スムーズに移動できる。
なお、移動部1が2以上の車輪を有する場合など、移動部1自体が自律移動体100を安定に走行できる構造を有している場合には、補助輪部8は無くてもよい。
(2)移動部の構成
次に、移動部1の構成について図1を用いて詳細に説明する。移動部1は、2つの主輪11a、11bと、2つのモータ13a、13bと、を有する。本実施形態の移動部1においては、それぞれの主輪11a、11bは独立に回転可能である。このような構成の移動部1においては、主輪11aと11bの回転数に差を生じさせることにより、自律移動体100の姿勢(後述)を変化させる。
主輪11a、11bは、それぞれ、モータ13a、13bの出力回転軸に接続されている。これにより、主輪11aはモータ13aの回転に従って回転し、主輪11bはモータ13bの回転に従って回転する。
モータ13a、13bは、移動制御装置2に電気的に接続されている。モータ13a、13bはそれぞれ、移動制御装置2のモータドライバ25a、25b(図3)により、独立して制御可能となっている。従って、モータ13a、13bは、それぞれ独立に、任意の回転数及びトルクなどを発生できる。その結果、主輪11a、11bは、それぞれ独立に、回転数及びトルクの制御が可能となっている。
モータ13a、13bとしては、サーボモータやブラシレスモータなどの電動モータを用いることができる。
(3)検出部の構成
次に、検出部3の構成を図1を用いて説明する。検出部3は、自律移動体100の走行経路(図11A)周辺の障害物Sを検出し、障害物Sの位置情報を出力する。そのため、検出部3は、前方検出器31と、後方検出器33と、を有する。前方検出器31は、自律移動体100の前方にある障害物Sを検出する。後方検出器33は、自律移動体100の後方にある障害物Sを検出する。また、前方検出器31と後方検出器33は、自律移動体100と障害物Sとの間の距離や、自律移動体100から見た障害物Sが存在する方向に関する情報などを含む信号を出力する。これにより、検出部3は、自律移動体100からみた障害物Sの相対的な位置情報を、移動制御装置2に出力できる。
検出部3の前方検出器31及び後方検出器33としては、例えば、レーザレンジファインダ(Laser Range Finder、LRF)などを用いることができる。
(4)操作部の構成
次に、操作部5の構成を図2を用いて説明する。図2は、操作部5の構成を示した図である。操作部5は、操作ハンドル51a、51bと、設定部53と、表示部55と、インターフェース57と、を備える。
操作ハンドル51a、51bは、それぞれ、操作部5の筐体59の左右に回動可能に取り付けられている。また、操作ハンドル51a、51bは、インターフェース57と接続されている。これにより、操作ハンドル51a、51bの回動量(操作量)は、インターフェース57において電気信号に変換され、移動制御装置2に入力される。
このため、自律移動体100の走行モードが教示モードであるとき、ユーザは、操作ハンドル51a、51bの回動量を適切に調節して、自律移動体100を操作できる。
なお、本実施形態における操作ハンドル51a、51bは、スロットルタイプの操作ハンドルであるがこれに限られない。自律移動体100の用途や操作性などを考慮して、スロットルタイプ以外の操作ハンドル51a、51bを用いることもできる。
設定部53は、インターフェース57に接続されている。設定部53は、自律移動体100の各種設定を行うための信号を、インターフェース57を介して、移動制御装置2に入力する。設定部53は、例えば、自律移動体100の各種設定を行うためのスイッチやキーボードなどにより構成できる。又は、設定部53は、タッチパネルとして構成され、表示部55と一体に形成されていてもよい。
表示部55は、インターフェース57に接続されている。表示部55は、インターフェース57を介して、移動制御装置2から自律移動体100の各種設定や位置情報などの情報を、読み出して表示する。表示部55としては、液晶ディスプレイなどのディスプレイを用いることができる。また、上述のように設定部53と表示部55とを一体に形成する場合は、表示部55(と設定部53)として、タッチパネル機能付きディスプレイを用いることができる。
インターフェース57は、移動制御装置2に接続されている。インターフェース57は、操作ハンドル51a、51bの操作量や、設定部53のスイッチやキー入力などを電気信号に変換し、移動制御装置2へ出力する。また、インターフェース57は、ユーザの指示などに応じて、移動制御装置2から自律移動体100に関する情報を読み出して、表示部55に表示する。
従って、インターフェース57としては、操作ハンドル51a、51bの回動量や設定部53における設定状態を電気信号に変換する信号変換器と、表示部55に情報を表示するための表示部駆動回路と、移動制御装置2と信号を送受信するための通信インターフェースと、などを備えたマイコンボードなどを用いることができる。
(5)移動制御装置の構成
I.移動制御装置の全体構成
次に、移動部1の移動制御装置2の全体構成について図3を用いて説明する。図3は、移動制御装置2の全体構成を示す図である。
なお、移動制御装置2は、CPU(Central Processing Unit)、ハードディスク装置、ROM(Read Only Memory)、RAM(Random Access Memory)、記憶媒体読み出し装置などの記憶装置、信号変換を行うインターフェースなどを備えたマイコンシステムなどにより、実現できる。また、以下に示す移動制御装置2の各部の機能の一部又は全部は、プログラムとして実現されていてもよい。さらに、当該プログラムは、マイコンボードの記憶装置に記憶されていてもよい。又は、移動制御装置2の各部の機能の一部又は全部は、カスタムICなどにより実現されていてもよい。
移動制御装置2は、教示部21と、自己位置推定部22と、記憶部23と、走行制御部24と、モータドライブ部25と、障害物情報取得部26と、を有する。
教示部21は、走行モードが教示モードのときに、ユーザが操作部5を用いて自律移動体100を移動させた際の移動経路を所定の時間間隔にて取得する。そして、教示部21は、取得した移動経路を、自律移動体100が移動する移動平面を表現した座標系(以後、移動座標と呼ぶことにする)上の座標値に変換し、当該座標値と移動経路を取得した時間とを関連付ける。さらに、教示部21は、座標変換された移動経路を記憶部23に記憶する。
ここで、上記のようにして教示部21が生成した移動経路の座標値の集合体を、予定走行経路と呼ぶことにする。そして、座標変換された移動経路のことを、走行目標点と呼ぶことにする。すなわち、予定走行経路は、複数の走行目標点を含む集合体である。そして、走行目標点のそれぞれには、移動経路を取得した時間が関連付けられている。従って、予定走行経路は、時間情報を含む座標値の集合体である。
また、教示部21は、移動経路上を移動中の自律移動体100の姿勢を、移動経路を取得するときに取得してもよい。ここで、自律移動体100の姿勢とは、自律移動体100の前方が向いた方向のことを言う。これにより、予定走行経路は、自律移動体100の姿勢に関する情報(姿勢情報)をさらに含むことができる。また、予定走行経路に含まれた自律移動体100の姿勢情報に基づいて、走行制御部24は予想走行軌跡T(図11C)を生成してもよい。
自己位置推定部22は、移動平面上における自律移動体100の位置を推定する。自己位置推定部22は、例えば、SLAM(Simultaneous Localization And Mapping)法などを用いて、自律移動体100の移動平面上における位置を推定できる。
自己位置推定部22は、検出部3において取得された自律移動体100からみた障害物Sの相対的な位置情報を、移動座標上の座標値へと変換する。そして、検出部3の前方検出器31及び後方検出器33が検出した障害物Sの位置情報に基づいて、自律移動体100の周囲の移動平面の地図情報(ローカルマップと呼ぶことにする)を作成する。また、自己位置推定部22は、移動平面の地図情報(環境地図と呼ぶことにする)を記憶部23に記憶している。そして、自己位置推定部22は、環境地図とローカルマップとを比較して、自律移動体100が移動平面のどの位置に存在するかを推定する。
さらに、自己位置推定部22は、モータ13a、13bの回転数に基づいても、自律移動体100の位置を推定できるようになっていてもよい。
記憶部23は、移動制御装置2がマイコンシステムにより実現されている場合は、マイコンシステムの記憶装置(あるいは、記憶装置の記憶領域の一部)に対応するものである。記憶部23は、自律移動体100の各種設定、予定走行経路、障害物Sの位置情報、走行経路情報T(図11C)、自律移動体領域A(図5)などの情報を記憶する。また、移動制御装置2の各部の機能の一部又は全部がソフトウェアにより実現されているとき、記憶部23は、当該ソフトウェアを記憶してもよい。
走行制御部24は、モータドライブ部25に接続されている。走行制御部24は、走行モードが教示モードのとき、操作部5から入力される操作量に基づいて移動部1のモータ13a及び13bを制御するよう、モータドライブ部25に指令する。
一方、走行モードが自律走行モードのときは、走行制御部24は、移動部1を制御する移動指令を作成する。そして、走行制御部24は、作成された移動指令に基づいて、モータドライブ部25を制御する。
なお、走行制御部24の詳細な構成及び動作については、後述する。
モータドライブ部25は、走行制御部24に接続されている。これにより、モータドライブ部25は、走行制御部24により作成された移動指令に基づいて、モータ13a、13bを制御できる。
本実施形態のモータドライブ部25は、2つのモータドライバ25a、25bを有する。モータドライバ25a、25bは、それぞれ、モータ13a、13bに接続されている。これにより、モータドライバ25a、25bは、走行制御部24により作成された移動指令に基づき、モータ13a、13bを、それぞれ独立に制御する。
モータドライバ25a、25bとしては、モータ13a、13bの種類に応じて、適切なモータ駆動装置を用いることができる。
障害物情報取得部26は、検出部3の前方検出器31と後方検出器33とに接続されている。障害物情報取得部26は、前方検出器31と後方検出器33とから出力される信号に基づき、障害物Sの位置情報を取得する。そして、障害物情報取得部26は、必要に応じて、障害物Sの位置情報を記憶部23に記憶する。このとき、障害物情報取得部26は、自己位置推定部22に障害物Sの位置情報を出力してもよい。そして、自己位置推定部22が、障害物Sの位置情報を移動座標上の座標値に変換して、障害物Sの位置情報を記憶部23に記憶してもよい。
II.走行制御部の構成
次に、走行制御部24の構成について図4を用いて説明する。図4は、走行制御部24の構成を示す図である。走行制御部24は、演算部241と、判断部243と、移動制御部245と、を有する。
演算部241は、自律移動体100の現在位置と、走行経路情報Tと、自律移動体領域Aとに基づいて、予想走行軌跡Tを演算する。ここで、予想走行軌跡Tとは、自律移動体100が自律走行モードにおいて走行するときに、自律移動体領域Aが描くと予想される軌跡のことを言う。
また、走行経路情報Tとは、自律移動体100が、現在位置から所定の距離を走行した位置である将来位置までの走行経路を表す情報である。本実施形態においては、走行経路情報Tは、自律移動体100に教示された予定走行経路に基づいて生成される走行経路を含んでいる。従って、演算部241は、予定走行経路から走行経路を生成する。
さらに、自律移動体領域Aとは、移動平面において定義される平面状の領域である。また、自律移動体領域Aは、自律移動体100を内包した所定の形状を有する。従って、自律移動体領域Aは、自律移動体100の最大平面断面を内包するように定義される。本実施形態においては、自律移動体領域Aは、図5に示すように、自律移動体100の最大平面断面を内包する、短径の長さがW、長径の長さがLの楕円形である。図5に示す楕円形の自律移動体領域Aにおいて、自律移動体領域Aの長径は、自律移動体100の前後方向に平行である。このように、自律移動体100の前後方向に平行である自律移動体領域Aの軸を、自律移動体100の基準軸ということにする。
自律移動体領域Aを楕円により定義することにより、より少ない演算により、障害物Sと自律移動体100とが互いに干渉するかどうかを判断できる。
なお、上記のように、自律移動体領域Aは自律移動体100の形状に基づいて定義される。そのため、本実施形態においては、自律移動体領域Aは予め定義されて、移動制御装置2の記憶部23に記憶されている。
本実施形態における自律移動体領域Aは、図5に示したような楕円のように、異方性をしている。この場合、走行経路情報Tは、走行経路上における自律移動体100の姿勢情報をさらに含んでいる。ここで、自律移動体100の姿勢情報とは、移動平面上において、自律移動体100の前方が向いている方向に対応する情報を言う。本実施形態においては、自律移動体100の姿勢情報は、図6に示すように、自律移動体領域Aを自律移動体領域の中心Vを通る移動座標平面の法線軸まわりに回転したときに、移動座標の水平軸(x軸)と自律移動体領域の基準軸(本実施形態の場合は、楕円の長軸)とがなす角度θで定義される。なお、自律移動体領域Aの中心Vを通る移動座標平面の法線軸まわりに回転した自律移動体領域Aを、回転自律移動体領域と呼ぶことにする。
このように、自律移動体領域Aに異方性を持たせ、走行経路情報Tに自律移動体100の姿勢情報を含めることにより、演算部241は、自律移動体100の形状や姿勢を考慮してより正確な予想走行軌跡を作成できる。
なお、演算部241の構成及び演算部241において行われる具体的な動作の詳細については、後述する。
判断部243は、検出部3が検出した障害物Sと予想走行軌跡Tとが互いに干渉するか否かを判断する。判断部243においては、予想走行軌跡Tの領域中に障害物Sが含まれるかどうか、又は、予想走行軌跡Tの領域と障害物Sとが重複する箇所があるかどうかを判断することにより、障害物Sと予想走行軌跡Tとが互いに干渉するかどうかを判定する。障害物Sと予想走行軌跡Tとが互いに干渉するかどうかの具体的な判定方法は、後述する。
移動制御部245は、移動部1を制御する移動指令を作成する。移動指令とは、モータドライブ部25のモータドライバ25a、25bに対する制御命令を含む指令のことである。従って、移動指令は、例えば、自律移動体100の移動開始を指示する命令、自律移動体100が移動を開始してからの時間、当該時間における自律移動体100の向き(移動方向)、当該時間における移動距離、などの情報を含むものである。また、移動指令は、モータ13a、13bの回転数の制御情報を含んでいてもよい。
移動制御部245においては、判断部243において障害物Sと予想走行軌跡Tとが干渉しないと判断された場合、演算部241により生成された予想走行軌跡Tを再現するような移動指令を作成する。これにより、自律移動体100は、障害物Sを回避するための無駄な動作をすることなく、走行経路を忠実に走行できる。
一方、判断部243において障害物Sと予想走行軌跡とが干渉すると判断された場合、移動制御部245は、障害物Sと自律移動体100との衝突を避ける障害物衝突回避動作を行うための移動指令を作成する。
障害物衝突回避動作を行うための移動指令としては、例えば、障害物Sと予想走行軌跡Tが干渉する位置が自律移動体100の現在位置から近い距離にあれば、自律移動体100を停止し、自律移動体100の現在位置から遠い距離にあれば、自律移動体100を減速するような移動指令がある。
このような移動指令により、自律移動体100は、障害物Sと自律移動体100とが衝突しない範囲にて、できる限り走行経路を走行できる。これにより、自律移動体100は、障害物Sに衝突することなく、より忠実に走行経路を走行できる。
または、障害物衝突回避動作を行うための移動指令は、自律移動体100を停止させるような移動指令であってもよい。このような移動指令を用いることにより、自律移動体100は、障害物に衝突することがなくなる。
その他、移動制御部245は、自律移動体100の用途などに応じて、任意の移動指令を作成できる。
III.演算部の構成
次に、演算部241の構成の詳細について図7を用いて説明する。図7は演算部241の構成を示す図である。演算部241は、ベース点生成部2411と、回転自律移動体領域生成部2413と、予想走行軌跡生成部2415と、を有する。
ベース点生成部2411は、走行経路情報の位置情報として、走行経路上に複数のベース点Bを生成する。ベース点Bは走行経路上に複数個配置されるものであるので、ベース点は、自律移動体100が現在位置から将来位置まで移動するときの、通過目標点であると言える。
ベース点Bは、走行経路を同一の所定の間隔に分割するように配置してもよい。又は、ベース点を配置した結果、2つのベース点間の間隔が異なっていてもよい。ベース点をどのように配置するかは、自律移動体100の用途などに応じて、任意に決定できる。
また、配置したベース点Bには、時間に関する情報を関連付ける。本実施形態においては、配置したベース点Bに、自律移動体100が現在位置から移動を開始してからの経過時間に関する情報を関連付ける。当該経過時間としては、移動制御装置2が自律移動体100を制御する制御周期の倍数を用いる。具体的には、制御周期をTとした場合、自律移動体100の現在位置の時刻を0として、現在位置から近いベース点Bから順に、T、2T、3T・・・nT(n:整数)をベース点Bに時間情報を関連付ける。
配置したベース点Bに時間に関する情報を関連付けることにより、走行制御部24の移動制御部245は、より単純な演算によりに移動指令を作成できる。また、走行経路情報を離散的な情報(配列)として表現できるので、走行経路情報の構造を単純化できる。
なお、ベース点生成部2411の構成及びベース点Bを走行経路上に配置する具体的な方法は、後述する。
回転自律移動体領域生成部2413は、走行経路情報Tの姿勢情報として、自律移動体領域を、移動平面(移動座標平面)の法線軸周りに回転して回転自律移動体領域を生成する。具体的には、回転自律移動体領域生成部2413は、ベース点生成部2411において生成されたそれぞれのベース点Bにおける自律移動体100の姿勢情報θを生成する。
本実施形態においては、ベース点Bにおける自律移動体100の姿勢情報θは、自己位置推定部22が記憶している環境地図とローカルマップとをマッチングさせることにより得られる。つまり、環境地図とローカルマップが一致(マッチング)するために、ローカルマップ、又は、環境地図を回転した回転角から姿勢情報θが得られる。しかし、これに限られず、隣接した2つの第1ベース点と第2ベース点(自律移動体100は、第1ベース点から第2ベース点へと移動するものとする)を結ぶ線と、移動座標のx軸(水平軸)とがなす角度を、第1ベース点における自律移動体100の姿勢情報としてもよい。これにより、より単純な演算で回転自律移動体領域を生成できる。
予想走行軌跡生成部2415は、ベース点生成部2411にて生成されたベース点Bのそれぞれに、回転自律移動体領域生成部2413にて生成された回転自律移動体領域を配置して、予想走行軌跡Tを生成する。具体的には、予想走行軌跡生成部2415は、ベース点生成部2411において生成されたベース点Bに、回転自律移動体領域生成部2413において生成された自律移動体100の姿勢情報θを関連付ける。これにより、より単純な演算により、演算部241は予想走行軌跡Tを作成できる。
IV.ベース点生成部の構成
次に、ベース点生成部2411の構成について図8を用いて説明する。図8はベース点生成部2411の構成を示す図である。ベース点生成部2411は、目標点抽出部2411−1と、目標点選択部2411−3と、算出部2411−5と、ベース点配置部2411−7と、を有する。
目標点抽出部2411−1は、走行目標点のうち、現在位置よりも予定走行経路において前方に存在する所定の数の走行目標点(前方走行目標点という)を抽出する。目標点選択部2411−3は、自律移動体100の現在位置を中心とする所定の半径を有する円C1(図13B)内に含まる前方走行目標点のうち、現在位置から最短の位置にある走行目標点(第1走行目標点P1(図13B)という)と、円C1の外側に存在する前方走行目標点のうち、現在位置から最短の距離にある走行目標点(第2走行目標点P2(図13B)という)を抽出する。
算出部2411−5は、第1走行目標点P1と第2走行目標点P2とを結ぶ線分P1P2(図13C)と、円C1の円周との交点である仮想走行目標点VP(図13C)を算出する。ベース点配置部2411−7は、現在位置と、仮想走行目標点VPと、第2走行目標点P2と、円の外側に存在する他の前方走行目標点とを、現在位置に近い順に結んで走行経路を生成する。そして、生成された走行経路上に、所定の間隔にてベース点Bを配置する。
このような構成を有したベース点生成部2411により、自律移動体100が予定走行経路から多少ずれた位置にあっても、自律移動体100は、この位置のずれを補正して、予定走行経路をより忠実に走行できる。
なお、このような構成を有したベース点生成部2411における、具体的なベース点Bの生成方法については、後述する。
(6)自律移動体の動作
I.自律走行動作
次に、自律移動体100の自律走行動作について図9を用いて説明する。図9は、自律移動体100の自律走行動作を示すフローチャートである。
自律移動体100が自律走行モードによる自律走行を開始すると、まず、検出部3が、障害物Sを検出する(ステップS1)。具体的には、検出部3の前方検出器31及び後方検出器33から出力される信号から、障害物情報取得部26が障害物Sの位置情報を取得する。そして、取得した障害物Sの位置情報を記憶部23に記憶する。
このとき、障害物Sの検出と同時に、障害物Sの位置情報に基づいて、自己位置推定部22が、移動座標上における自律移動体100の現在位置(自律移動体100が自律走行を開始する位置の情報に対応)を取得する。そして、自律移動体100の現在位置を記憶部23に記憶する。
次に、演算部241が、自律移動体100の現在位置と、走行経路情報T、自律移動体領域Aとに基づいて、予想走行軌跡Tを演算する(ステップS2)。ステップS2における、具体的な予想走行軌跡Tの演算方法については、後述する。
予想走行軌跡Tを生成(演算)した後、判断部243が、生成した予想走行軌跡Tと障害物Sとが互いに干渉するか否かを判断する(ステップS3)。予想走行軌跡Tと障害物Sとが干渉するかどうかの具体的な判定方法については、後述する。
そして、障害物Sと予想走行軌跡Tとが互いに干渉しないと判断された場合(ステップS3にて「No」の場合)、移動制御装置2が、予想走行軌跡Tを再現するように移動部1を制御する(ステップS4)。具体的には、移動制御部245が、予想走行軌跡Tを再現するような移動指令を作成する。そして、モータドライブ部25が、移動制御部245において生成された移動指令に基づき、モータ13a、13bを制御する。
これにより、自律移動体100は、障害物Sを回避するための無駄な動作をすることなく、予想走行軌跡T(走行経路)を忠実に走行できる。
一方、判断部243において、障害物Sと予想走行軌跡Tとが互いに干渉すると判断された場合(ステップS3にて「Yes」の場合)、移動制御装置2は、自律移動体100に対して、障害物Sとの衝突を回避するような動作(障害物衝突回避動作)を実行するように指示する(ステップS5)。
この場合、本実施形態の移動制御装置2は、障害物Sと予想走行軌跡Tが干渉する位置が自律移動体100の現在位置から近い距離にあれば、移動を停止し、自律移動体100の現在位置から遠い距離にあれば、減速して走行するように指示する。具体的には、移動制御部245は、障害物Sと衝突しない位置まで、自律移動体100を通常よりも低速に走行させる移動指令を作成する。
このような移動指令により、自律移動体100は、障害物Sと自律移動体100とが衝突しない範囲にて、できる限り走行経路を走行できる。これにより、自律移動体100は、障害物Sに衝突することなく、より忠実に走行経路を走行できる
なお、この場合、ステップS5又はステップS3において、判断部243は、自律移動体領域Aが予想走行軌跡Tのどの位置において障害物Sと干渉するかについての情報を取得する。これにより、走行制御部24は、自律移動体100がどの位置まで障害物Sと衝突することなく移動できるかを把握できる。
または、障害物Sと予想走行軌跡Tとが互いに干渉すると判断された場合、移動制御部245は、自律移動体100に対して移動を停止するよう指示する移動指令を作成してもよい。このような移動指令を用いることにより、自律移動体100は、障害物Sに衝突することがなくなる。
以上に述べたように、自律移動体100の移動制御装置2は、図9のステップS3において、自律移動体100と障害物とが衝突するかどうかを、予想走行軌跡と障害物とが互いに干渉するか否かにより判断することにより、その障害物に対して衝突回避行動を取るべきかどうかを判断している。これにより、自律移動体100が障害物に対して回避行動を取るかどうかを、より高い確度で判断できる。その結果、自律移動体100は、無駄な障害物の回避行動を行うことなく、ユーザにより教示された予定走行経路を忠実に走行できる。
II.予想走行軌跡生成方法
II−1.予想走行軌跡生成方法
次に、自律走行動作を示すフローチャート(図9)のステップS2における、予想走行軌跡Tの生成方法について図10〜図11Cを用いて説明する。図10は、予想走行軌跡Tの生成方法を示すフローチャートである。
予想走行軌跡Tの生成を開始すると、演算部241は、まず、自律移動体100の現在位置、予定走行経路、及び自律移動体領域Aを記憶部23から読み出す(ステップS21〜S23)。
次に、演算部241のベース点生成部2411が、走行経路上に複数のベース点Bを生成する(ステップS24)。ベース点生成部2411における、具体的な走行経路の作成方法及びベース点Bの生成方法は、後述する。
ステップS24において生成される走行経路及びベース点を模式的に示した図を図11Aに示す。図11Aにおいて、太い実線にて示されるのが走行経路である。太い実線にて示された走行経路上に配置された8つの丸点がベース点B1、、・・・Bである。本実施形態においては、一般的なベース点Bは、移動座標上の座標値(x,y)(n:整数)として表現される。
ここで、ベース点Bに、自律移動体100が移動を開始してからの経過時間としてtを関連付ける。そして、経過時間tを関連付けたベース点Bを、走行経路情報T(n=1〜8)とする。従って、走行経路情報Tは、この時点において、時間の情報を含めて、(x,y,t)と3次元的な値として表現できる。
ベース点Bの生成後、回転自律移動体領域生成部2413が、自律移動体領域Aを移動平面の法線軸周りに回転して回転自律移動体領域を生成する(ステップS25)。具体的には、回転自律移動体領域生成部2413は、ベース点生成部2411において生成されたベース点Bにおける自律移動体100の姿勢情報θを生成する。
ステップS25における、回転自律移動体領域の生成を模式的に示した図を図11Bに示す。図11Bに示すように、ベース点Bのそれぞれにおいて、自律移動体領域Aの基準軸(自律移動体領域A中の点線矢印)が、移動座標の水平軸(x軸)に対して傾いた角度θが、ベース点Bにおける姿勢情報として生成されている。
回転自律移動体領域を生成後、予想走行軌跡生成部2415が、ベース点生成部2411にて生成されたベース点Bに、回転自律移動体領域生成部2413にて生成された回転自律移動体領域を配置して、予想走行軌跡T(図11C)を生成する(ステップS26)。
ステップS26における、予想走行軌跡Tの生成を模式的に示した図を図11Cに示す。図11Cに示すように、ベース点Bのそれぞれに、対応する回転自律移動体領域を配置することにより、予想走行軌跡Tが生成される。図11Cに示すように、予想走行軌跡Tは、移動座標上において平面状となっている。なぜなら、自律移動体領域Aが、移動座標上において平面状であるからである。なお、図11Cに示すような平面状の予想走行軌跡Tを、移動座標のx及びyの関数として表現すると非常に複雑な式となってしまう。また、予想走行軌跡Tを移動座標の座標値により表現すると、非常に多くの座標値(データ量)を必要とする。
一方、本実施形態においては、生成された自律移動体100の姿勢情報θを、対応する走行経路情報Tに関連付けて、4次元の走行経路情報Tの集合体を生成している。そして、走行経路情報Tのそれぞれに、予め定義された自律移動体領域Aを関連付けて予想走行軌跡Tを生成している。このような場合、予想走行軌跡Tは、走行経路情報Tと同次元(4次元)の値(x,y,t,θ)の集合体として表現できる。このように、予想走行軌跡Tを4次元程度の低次元の値の集合体として表現することにより、複雑な式や大量のデータ量を必要とすることなく予想走行軌跡Tを表現できる。また、後述するように、4次元程度の低次元の集合体として予想走行軌跡Tを表現することにより、自律移動体領域Aと障害物Sとの干渉を、比較的簡単な計算式により判定できる。
II−2.ベース点生成方法
次に、予想走行軌跡Tの生成におけるベース点Bの生成方法を、図12〜図13Eを用いて説明する。図12は、本実施形態における、ベース点生成ステップ(ステップS24)におけるベース点生成方法を示すフローチャートである。
ここでは、図13Aに示すように、自律移動体100の自律移動体領域Aの中心Vの現在位置が予定走行経路からずれている場合について説明する。
ベース点生成部2411がベース点Bの生成を開始すると、まず、目標点抽出部2411−1が、前方走行目標点を所定の数、抽出する(ステップS241)。ここで、前方走行目標点とは、自律移動体100の現在位置よりも進行方向前方に存在する走行目標点のことである。図13Aにおいては、点線にて示した走行目標点P0以外の走行目標点が抽出される。
次に、目標点選択部2411−3が、自律移動体100の現在位置(図13Aにおいては、自律移動体領域の中心V)を中心とする所定の半径rを有する円C1(図13B)を定義する(ステップS242)。ここで、所定の半径rは、移動座標上において、自律移動体領域Aの中心Vから自律移動体領域Aを定める境界までの距離よりも、十分に小さい値としている。
本実施形態における楕円形の自律移動体領域Aの場合は、所定の半径rは、楕円形の短径Wよりも小さい値とする。所定の半径rを、自律移動体領域Aの中心Vから境界までの距離よりも小さい値とすることにより、自律移動体100が所定の半径rの円C1中の走行目標点を通過したとみなせる。また、自律移動体100は、走行目標点からずれた位置から、より早く走行目標点に復帰できる。これにより、自律移動体100は、走行目標点を忠実に再現した走行経路を忠実に走行できる。
そして、目標点選択部2411−3は、円C1内に含まれる前方走行目標点の中から、自律移動体100の現在位置から最短の位置にある走行目標点(第1走行目標点)を選択する(ステップS243)。図13Bにおいては、走行目標点P1が第1走行目標点となる。
さらに、目標点選択部2411−3は、円C1の外側にある前方走行目標点の中から、自律移動体100の現在位置から最短の距離にある走行目標点(第2走行目標点)を選択する(ステップS244)。図13Bにおいては、走行目標点P2が第2走行目標点となる。
第1走行目標点P1及び第2走行目標点P2を選択した後、算出部2411−5が、第1走行目標点P1と第2走行目標点P2とを結ぶ線分P1P2と、円C1の円周との交点を算出する(ステップS245)。そして、算出部2411−5において算出した交点を、仮想走行目標点VPと定める(図13C)。
次に、ベース点配置部2411−7が、図13Dに示すように、現在位置と仮想走行目標点VPとを結んだ線分R1と、仮想走行目標点VPと第2走行目標点P2とを結んだ線分R2と、第2走行目標点P2と第2走行目標点P2よりも進行方向前方にある前方走行目標点の全てを、現在位置より近い順に結んでできる線R3と、を接続して走行経路とする(ステップS246)。
そして、ベース点配置部2411−7が、ステップS246にて生成した走行経路上に、ベース点Bを所定の間隔にて配置する(ステップS247)。本実施形態においては、図13Eに示すように、自律移動体100の現在位置(自律移動体領域Aの中心V)を含めて、B〜Bまでの8つのベース点Bが走行経路上に配置されている。
上記の方法により、走行経路を定めてからベース点Bを走行経路上に配置することにより、自律移動体100が予定走行経路から多少ずれた位置にあっても、自律移動体100は、この位置のずれを補正して、走行経路をより忠実に走行できる。
III.障害物と予想走行軌跡との干渉の判断方法
次に、上述の自律走行動作における、障害物Sと予想走行軌跡Tとの干渉の判断方法について、図14〜図15Eを用いて説明する。図14は、障害物Sと予想走行軌跡Tとの干渉の判断方法を示したフローチャートである。図14に示す、障害物Sと予想走行軌跡Tとが干渉するかどうかの判断は、走行経路情報Tに表現された位置情報(ベース点Bの座標に対応)において、障害物Sが自律移動体領域Aと重なるかどうか判定することにより行う。判断部243は、障害物Sが自律移動体領域Aと重なっていれば、障害物Sと自律移動体領域Aとが互いに干渉していると判断する。すなわち、判断部243は、その場合に、障害物Sと予想走行軌跡Tとが互いに干渉していると判断する。
一方、判断部243は、全てのベース点Bにおいて障害物Sが自律移動体領域Aと重なっていなければ、障害物Sと自律移動体領域Aとは干渉していないと判断する。すなわち、判断部243は、その場合に、障害物Sと予想走行軌跡Tとは互いに干渉していないと判断する。
具体的には、以下のように、判断部243は、障害物Sと予想走行軌跡Tとが互いに干渉するかどうかを判定する。
まず、判断部243は、移動座標を、ベース点Bに配置された自律移動体領域Aの中心Vが原点となるような座標系に変換する(ステップS31)。変換後の座標系を第2移動座標と呼ぶことにする。
次に、判断部243は、自律移動体領域Aの基準軸が水平軸と重なるように、第2移動座標を回転する(ステップS32)。回転された第2移動座標を第3移動座標と呼ぶことにする。
さらに、判断部243は、自律移動体領域Aの形状が円形となるように、第3移動座標をy軸方向又はx軸方向に、伸張又は圧縮する(ステップS33)。軸方向に伸張又は圧縮された第3移動座標を第4移動座標と呼ぶことにする。
次に、判断部243は、第4移動座標上において、自律移動体領域Aの中心V(第4移動座標の原点)と障害物Sまでの距離dを算出する。そして、判断部243は、距離dが第4移動座標上の自律移動体領域Aを定める円の半径よりも大きいかどうかを判断する(ステップS34)。
距離dが自律移動体領域Aの円の半径よりも大きい場合、すなわち、自律移動体領域Aと障害物Sとが重ならない場合(ステップS34にて「Yes」の場合)には、自律移動体領域Aは障害物Sと干渉しないと判断される。そして、ステップS35に進む。
一方、距離dが自律移動体領域Aの円の半径よりも小さい場合、すなわち、自律移動体領域Aと障害物Sとが重なる場合(ステップS34にて「No」の場合)には、自律移動体領域Aは障害物Sと干渉すると判断される。あるベース点Bにおいて、自律移動体領域Aが障害物Sと干渉すると判断されたら、その時点で、他のベース点における判断を行うことなく。予想走行軌跡Tが障害物Sと干渉すると判断される(ステップS36)。そして、判断部243は、予想走行軌跡Tと障害物Sとの干渉の判定を終了する。
ステップS35においては、判断部243は、全てのベース点Bにおいて、自律移動体領域Aと障害物Sとの干渉が判定されたかどうかを確認する。全てのベース点Bにおいて自律移動体領域Aと障害物Sとの干渉が判定された場合(ステップS35にて「Yes」の場合)であり、全てのベース点Bにおいて、自律移動体領域Aと障害物Sとが干渉しないと判断された場合(ステップS34にて「Yes」の場合)に、予想走行軌跡Tは障害物Sと干渉しないと判断される(ステップS37)。そして、判断部243は、予想走行軌跡Tと障害物Sとの判定を終了する。
なお、このとき、判断部243は、どのベース点Bにて、自律移動体領域Aと障害物Sとが干渉すると判定されたかを記憶部23などに記憶するようにしてもよい。この場合、判断部243は、自律移動体領域Aと障害物Sとが干渉すると判定されたベース点Bの下付き番号nを、記憶部23などに記憶する。ベース点B(走行経路情報T)が配列により表現されている(例えば、B[n]のように表現される)場合には、判断部243は、要素nの数字を記憶部23などに記憶する。
この場合、例えば、自律移動体領域Aと障害物Sとが干渉するベース点Bよりも、自律移動体100の進行方向において後ろのベース点Bm−1までは減速して移動するなどの障害物衝突回避行動を実行できる。その結果、自律移動体100は、障害物Sに衝突することなく、より忠実に走行経路を走行できる。
図14を用いて上記において説明した、予想走行軌跡Tと障害物Sとの干渉の判定方法について、移動座標上の自律移動体領域Aと障害物Sとを模式的に示した図15A〜図15Eを用いて詳細に説明する。
ここで、例として、走行経路情報T(x,y,t,θ)の位置情報にて表現される座標(ベース点Bとも言い換えられる)における、自律移動体領域Aと障害物S〜Sとの干渉の判断方法について述べることにする。ここで、自律走行動作の障害物検出ステップ(図9のステップS1)において、6つの障害物S〜Sが、図15Aに示すような位置において検出されたとする。
なお、他の走行経路情報Tの位置情報にて表現される座標については、以下と同様に説明できるので、省略する。
図15Bに、ベース点Bにおける自律移動体領域Aと、障害物S〜Sとを、移動座標上に配置したときの図を示す。まず、図14のステップS31においては、ベース点Bに配置された自律移動体領域Aの中心Vが、座標の原点となるように移動座標が変換される。この場合、移動座標が水平軸(x軸)方向に−x、垂直軸(y軸)方向に−yだけ平行移動される。
上記のように移動座標が平行移動されると、障害物S〜Sも、移動座標上の座標から、x軸方向に−x、垂直軸(y軸)方向に−yだけ平行移動されて第2移動座標上に配置される。第2移動座標上の自律移動体領域Aと障害物S〜Sの配置を図15Cに示す。
次に、図14のステップS32において、第2移動座標上の自律移動体領域Aの基準軸が、移動座標の水平軸(x軸)と重なるように、第2移動座標が回転される。この場合、第2移動座標は、自律移動体100の姿勢情報θが定義された方向(θが正の値となる方向)とは反対方向(図15Cにおいては、時計回り)に回転される。具体的には、図15Cにおいては、第2移動座標が時計回りに角度θだけ回転される。ここで、回転された第2移動座標を、第3移動座標と呼ぶことにする。
上記のように、第2移動座標が時計回りにθ回転されると、障害物S〜Sも、第2移動座標の原点の中心を通る法線軸周りに、時計回りにθだけ回転されて第3移動座標上に配置される。第3移動座標上における、自律移動体領域Aと障害物S〜Sの配置を図15Dに示す。
次に、図14のステップS33において、自律移動体領域Aが、半径L(自律移動体領域Aの長径)の円となるように、第3移動座標がy軸方向にL/W倍(L/Wを伸張率と呼ぶ)だけ伸張される。y軸方向が伸張された第3移動座標を、第4移動座標と呼ぶことにする。
この場合、第3移動座標上の座標のy座標値は、L/W倍(L/Wを伸張率と呼ぶ)されて第4移動座標上に配置される。これにより、第3移動座標上の障害物S〜Sは、座標値がL/W倍されて、第4移動座標上に配置される。図15Eに、第4移動座標上における、自律移動体領域Aと障害物S〜Sの配置を示す。なお、図15Eにおいて、障害物S〜Sの形状が縦長に変形(図15Dにおいては、円から縦長の楕円に変形)されているが、自律移動体領域Aの中心Vと障害物S〜Sとの位置関係は変わらない。
次に、図14のステップS34において、第4移動座標上において、自律移動体領域Aと障害物S〜Sとが干渉するかどうかが判断される。このとき、図15Eに示すように、第4移動座標において、自律移動体領域の中心V(第4移動座標の原点)と障害物S〜Sのそれぞれまでの距離d〜dが算出される。距離d〜dが、第4移動座標の原点から障害物S〜Sのそれぞれまでの距離として算出するようにすることにより、距離d〜dの計算を単純化できる。
そして、第4移動座標上においては、自律移動体領域Aと障害物S〜Sとの干渉は、距離d〜dが、自律移動体領域Aの長径Lよりも大きいかどうかのみで判断できる。なぜなら、第4移動座標上では、自律移動体領域Aは、異方性を有しない半径Lの円として表現されるからである。これにより、より簡単に自律移動体領域Aと障害物Sとの干渉を判断できる。その結果、予想走行軌跡Tと障害物Sとの干渉の判断時間を短縮できる。
なお、上記で示したような座標の変換は、行列式を用いて、比較的簡単に計算できる。この場合、行列式を用いて、自律移動体領域Aから障害物Sまでの距離dを算出するための算出式を予め計算しておいて、算出式を記憶部23などに記憶するようにしてもよい。そして、この算出式に適切な値を代入して、具体的な数値で表される自律移動体領域Aから障害物Sまでの距離dを算出してもよい。
あるいは、座標の平行移動、回転、及び伸張/圧縮を行う行列式を記憶部23などに記憶しておいてもよい。この場合、記憶された行列式に適切な値を代入して具体的な数値にて表現された行列式を算出する。そして、具体的な数値にて表現された行列式を用いて、移動座標の座標変換を行った後、自律移動体領域Aから障害物Sまでの距離dを算出する。
(7)本実施形態の効果
以下に、本実施形態における効果について述べる。
自律移動体100の移動制御装置2(自律移動体の移動制御装置の一例)は、移動部1(移動部の一例)と、障害物S(障害物の一例)を検出する検出部3(検出部の一例)とを備え、予め作成した予定走行経路(予定走行経路の一例)を再現するように移動する自律移動体100(自律移動体の一例)の移動制御装置である。
自律移動体100の移動制御装置2は、演算部241(演算部の一例)と、判断部243(演算部の一例)と、移動制御部245(移動制御部の一例)と、を備える。演算部241は、自律移動体100の現在位置と、現在位置から所定の距離を走行した位置である将来位置までの走行経路を表す走行経路情報T(走行経路情報の一例)と、自律移動体100を内包した所定の形状を有する自律移動体領域A(自律移動体領域の一例)と、に基づいて、予想走行軌跡T(現在位置から将来位置までの予想走行軌跡の一例)を演算する。判断部243は、検出部3が検出した障害物Sと予想走行軌跡Tとが互いに干渉するか否かを判断する。移動制御部245は、判断部243において障害物Sと予想走行軌跡Tとが干渉しないと判断された場合、演算部241により演算された予想走行軌跡Tを再現するように移動部1を制御する移動指令を作成する。
この移動制御装置2では、最初に、演算部241が、走行経路情報Tと自律移動体領域Aとに基づいて、予想走行軌跡Tを作成する。次に、判断部243が、自律移動体100の検出部3が検出した障害物Sと予想走行軌跡Tとが互いに干渉するか否かを判断する。そして、移動制御部245が、判断部243において障害物Sと予想走行軌跡Tとが干渉しないと判断されていれば、予想走行軌跡Tを再現するように、自律移動体100の移動部1を制御する移動指令を作成する。
この移動制御装置2では、自律移動体100と障害物Sとが衝突するかどうかの判断が、予想走行軌跡Tと障害物Sとが互いに干渉するか否かの判断に基づいている。これにより、自律移動体100が障害物Sに対して回避行動を取るかどうかを、より高い確度で判断できる。その結果、自律移動体100は、障害物Sに対する無駄な回避行動を行うことなく、ユーザにより教示された予定走行経路をより忠実に走行できる。
本実施形態においては、自律移動体領域Aの、自律移動体100の移動平面における形状は異方性を有している。また、走行経路情報Tは、自律移動体100の走行経路における位置情報として、ベース点Bの座標(位置情報の一例)と、走行経路上における自律移動体100の姿勢情報θ(姿勢情報の一例)とを含んでいる。
これにより、演算部241は、自律移動体100の形状や姿勢を考慮してより正確な予想走行軌跡を作成できる。その結果、判断部243は、障害物Sと自律移動体100とが互いに干渉するかどうかをより確実に判断できる。
本実施形態においては、自律移動体領域Aの移動平面における形状は楕円である。これにより、判断部243は、より少ない演算により障害物Sと自律移動体100とが互いに干渉するかどうかを判断できる。
本実施形態において、走行経路情報Tは、自律移動体100の走行経路上における時間情報t(時間情報の一例)をさらに含んでいる。これにより、移動制御部245は、より単純な演算によりに移動指令を作成できる。また、走行経路情報Tを離散的な情報(配列)として表現できるので、走行経路情報Tの構造を単純化できる。
本実施形態において、演算部241は、ベース点生成部2411(ベース点生成部の一例)と、回転自律移動体領域生成部2413(回転自律移動体領域生成部の一例)と、予想走行軌跡生成部2415(予想走行軌跡生成部の一例)と、を備えている。ベース点生成部2411は、走行経路情報Tの位置情報として、走行経路上に複数のベース点B(ベース点の一例)を生成する。回転自律移動体領域生成部2413は、走行経路情報Tの姿勢情報θに基づいて、自律移動体領域Aを、移動平面の法線軸周りに回転して回転自律移動体領域を生成する。予想走行軌跡生成部2415は、ベース点生成部2411にて生成されたベース点Bのそれぞれに、回転自律移動体領域生成部2413にて生成された回転自律移動体領域を配置して、予想走行軌跡Tを生成する。これにより、演算部241は、より単純な演算により、予想走行軌跡Tを作成できる。
本実施形態において、移動制御部245は、判断部243において障害物Sと予想走行軌跡Tとが干渉すると判断された場合、干渉する位置が現在位置から近い距離にあれば、自律移動体100を停止する。また、現在位置から遠い距離にあれば、自律移動体100を減速するように、移動部1を制御する。これにより、自律移動体100は、障害物Sに衝突することなく、より忠実に走行経路を走行できる。
2.第2実施形態
次に、第2実施形態に係る自律移動体200について説明する。なお、ここでは、第2実施形態に係る自律移動体200の構成のうち、第1実施形態に係る自律移動体100と同じものについての説明は省略する。
第2実施形態においては、ベース点生成部2412におけるベース点の生成方法が、第1実施形態に係る自律移動体100のベース点生成部2411における生成方法と異なる。従って、以下に、第2実施形態に係る自律移動体200のベース点生成部2412の構成と、ベース点生成部2412におけるベース点生成方法について述べる。
まず、第2実施形態に係るベース点生成部2412の構成について、図16を用いて説明する。図16は、第2実施形態に係るベース点生成部2412の構成を示す図である。ベース点生成部2412は、図16に示すように、目標点抽出部2412−1と、目標点選択部2412−3と、算出部2412−5と、ベース点配置部2412−7と、を有する。
目標点抽出部2412−1は、前方走行目標点を抽出する。第2実施形態に係る目標点抽出部2412−1における、前方走行目標点は、自律移動体200の現在位置から、現在位置を中心とする第1半径r(図18A)を有する第1の円C3(図18A)の外側に存在する走行目標点のうち、現在位置に最も近く、かつ、現在位置よりも自律移動体200の進行方向前方に存在する第1走行目標点P3(図18A)までの走行目標点である。
目標点選択部2412−3は、第2走行目標点P4(図18B)を選択する。第2実施形態に係る目標点選択部2412−3における第2走行目標点P4は、自律移動体100の現在位置を中心とする第2半径r(図18B)を有する第2の円C4(図18B)の外側に存在する前方走行目標点のうち、現在位置から最短の距離にある前方走行目標点である。
算出部2412−5は、自律移動体100の現在位置と第2走行目標点P4とを結ぶ線分P4−V(図18C)と、円C4の円周との交点である仮想走行目標点VP1(図18C)を算出する。ベース点配置部2412−7は、走行経路上にベース点を所定の間隔にて配置する。走行経路は、現在位置と、仮想走行目標点VP1と、第2走行目標点P4と、第2走行目標点P4から第1走行目標点P3までの間の前方走行目標点と、を現在位置から近い順に結んで生成される。
次に、第2実施形態に係る自律移動体200のベース点生成部2412におけるベース点の生成方法について、図17〜図18Eを用いて説明する。図17は、第2実施形態に係る自律移動体200のベース点生成部2412におけるベース点の生成方法を示すフローチャートである。
最初に、目標点抽出部2412−1が、第1走行目標点P3を設定する(ステップS2411)。このときの第1走行目標点P3の設定方法を、図18Aを用いて説明する。図18Aは、第1走行目標点P3の設定方法を模式的に示した図である。目標点抽出部2412−1は、まず、自律移動体200の現在位置(図18Aにおいて、自律移動体領域Aの中心Vに対応)を中心とした、第1半径rを有する第1の円C3を定義する。このとき、第1半径rは、自律移動体200の走行速度や、検出部3における障害物Sの検出可能距離などに基づいて決定される。
そして、第1の円C3の外にある走行目標点のうち、自律移動体200の現在位置に最も近い走行目標点を選択する。さらに、選択された走行目標点のうち、自律移動体200の進行方向前方にある走行目標点を、第1走行目標点P3とする。
次に、目標点抽出部2412−1が、現在位置よりも進行方向前方に存在する走行目標点であって、自律移動体200の現在位置から、第1走行目標点P3までの間にある走行目標点を、前方走行目標点として抽出する(ステップS2412)。図18Aにおいては、実線で示された走行目標点が、前方走行目標点となる。
前方走行目標点を抽出後、目標点選択部2412−3が、第2走行目標点P4を設定する(ステップS2413)。目標点選択部2412−3における第2走行目標点P4の設定方法を、図18Bを用いて説明する。図18Bは、第2走行目標点P4の設定方法を示す模式図である。まず、目標点選択部2412−3は、自律移動体200の現在位置を中心とした、第2半径rを有する第2の円C4を定義する。
ここで、第2半径rは、自律移動体200と走行目標点とのずれの許容範囲を決定する。また、自律移動体200と走行目標点とのずれを速やかに修正したい場合には、第2半径rは、なるべく小さな値とすることが好ましい。例えば、図18Bに示す例においては、第2半径rは、自律移動体200に最も近い前方走行目標点のみが含まれる程度の半径である。
第2実施形態の自律移動体200においては、自律移動体200と走行目標点とのずれの許容範囲や、どの程度速やかに走行目標点とのずれを修正したいかなどに応じて、適切な第2半径rの値が選択される。
次に、目標点選択部2412−3が、第2の円C4の外側に存在する前方走行目標点のうち、現在位置から最短の距離にある前方走行目標点を選択する。そして、目標点選択部2412−3が、当該選択された走行目標点を第2走行目標点P4として設定する。
第2走行目標点P4を設定後、算出部2412−5が、仮想走行目標点VP1を算出する(ステップS2414)。算出部2412−5は、図18Cに示すように、現在位置と第2走行目標点とを結ぶ線P4−Vと、第2の円C4との交点を求める。そして、当該交点を仮想走行目標点VP1(図18Cにおいては、黒丸にて示した点)として設定する。
次に、ベース点配置部2412−7が、ベース点Bを配置する走行経路を生成する(ステップS2415)。本実施形態のベース点配置部2412−7では、図18Dに示したように、自律移動体200の現在位置とステップS2414において設定された仮想走行目標点VP1とを結ぶ走行経路R4と、仮想走行目標点VP1とステップS2413において設定された第2走行目標点P4とを結ぶ走行経路R5と、第2走行目標点P4から第1走行目標点P3までの間に存在する前方走行目標点の全てを結ぶ走行経路R6と、を結んで走行経路を生成する。
最後に、図18Eに示すように、ベース点配置部2412−7が、ステップS2415において生成された走行経路上に、所定の間隔にてベース点Bを配置する(ステップS2416)。ベース点Bを配置する間隔は、例えば、自律移動体200を制御する周期である制御周期Tに基づいて、決定される。
上記のような方法により、第2実施形態に係る自律移動体200のベース点生成部2412も、第1実施形態に係る自律移動体100のベース点生成部2411と同様に、自律移動体200が予定走行経路から多少ずれた位置にあっても、この位置のずれを補正できる。従って、第2実施形態に係る自律移動体200は、予定走行経路をより忠実に走行できる。
3.他の実施形態
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
(A)自律移動体の構成についての他の実施形態
第1実施形態における自律移動体100の移動部1は、2つの主輪11aと11bを有していた。そして、主輪11a、11bのそれぞれが、モータ13a、13bの出力回転軸に回転可能に接続されていた。しかし、主輪及びモータの数は2に限られない。移動部は、2以上の主輪と、主輪のそれぞれに接続される複数のモータとにより構成されていてもよい。自律移動体の用途や、移動の自由度などに応じて、移動部は任意の数の主輪やモータにより構成できる。
本発明は、センサにより障害物を検出しながら自律走行する自律移動体に、広く適用可能である。
100、200 自律移動体
1 移動部
11a、11b 主輪
13a、13b モータ
2 移動制御装置
21 教示部
22 自己位置推定部
23 記憶部
24 走行制御部
241 演算部
2411、2412 ベース点生成部
2411−1、2412−1 目標点抽出部
2411−3、2412−3 目標点選択部
2411−5、2412−5 算出部
2411−7、2412−7 ベース点配置部
2413 回転自律移動体領域生成部
2415 予想走行軌跡生成部
243 判断部
245 移動制御部
25 モータドライブ部
25a、25b モータドライバ
26 障害物情報取得部
3 検出部
31 前方検出器
33 後方検出器
5 操作部
51a、51b 操作ハンドル
53 設定部
55 表示部
57 インターフェース
59 筐体
7 本体
8 補助輪部
8a、8b 補助車輪
9 取付部材
A 自律移動体領域
V 自律移動体領域の中心
L 楕円形の自律移動体領域の長径
W 楕円形の自律移動体領域の短径
B ベース点
一般的なベース点
ベース点(走行経路情報)のx座標
ベース点(走行経路情報)のy座標
C1 円
C3 第1の円
C4 第2の円
r 円の半径
第1半径
第2半径
P0 選択されない走行目標点
P1、P3 第1走行目標点
P2、P4 第2走行目標点
VP、VP1 仮想走行目標点
P4−V 現在位置と第2走行目標点とを結ぶ線
S 障害物
障害物
d 障害物と自律移動体領域の中心との間の距離
障害物と自律移動体領域の中心との間の距離
T 予想走行軌跡
走行経路情報
時間情報
θ 姿勢情報
θ 姿勢情報
R1、R2、R3、R4、R5、R6 走行経路
m 正の整数
n 正の整数
θ 回転角

Claims (9)

  1. 移動部と、障害物を検出する検出部とを備え、予め作成した予定走行経路を再現するように移動する自律移動体の移動制御装置であって、
    前記自律移動体の現在位置と、前記現在位置から所定の距離を走行した位置である将来位置までの走行経路を表す走行経路情報と、前記自律移動体を内包した所定の形状を有する自律移動体領域と、に基づいて、前記現在位置から前記将来位置までの予想走行軌跡を演算する演算部と、
    前記検出部が検出した前記障害物と前記予想走行軌跡とが互いに干渉するか否かを判断する、判断部と、
    前記判断部において前記障害物と前記予想走行軌跡とが干渉しないと判断された場合、前記演算部により演算された前記予想走行軌跡を再現するように前記移動部を制御する移動指令を作成する移動制御部と、
    を備え、
    前記演算部は、
    前記走行経路情報に含まれる前記自律移動体の前記走行経路における位置情報として、前記走行経路上に複数のベース点を生成するベース点生成部と、
    前記走行経路情報に含まれる前記走行経路上における前記自律移動体の姿勢情報として、前記自律移動体領域を、前記移動平面の法線軸周りに回転して回転自律移動体領域を生成する、回転自律移動体領域生成部と、
    前記ベース点生成部にて生成された前記ベース点のそれぞれに、前記回転自律移動体領域生成部にて生成された前記回転自律移動体領域を配置することで、前記予想走行軌跡を生成する予想走行軌跡生成部と、
    を有する、自律移動体の移動制御装置。
  2. 前記自律移動体領域の、前記自律移動体の移動平面における形状は異方性を有する、請求項1に記載の自律移動体の移動制御装置。
  3. 前記自律移動体領域の前記移動平面における形状は楕円である、請求項に記載の自律移動体の移動制御装置。
  4. 前記走行経路情報は、前記自律移動体の前記走行経路上における時間情報をさらに含む、請求項1〜のいずれかに記載の自律移動体の移動制御装置。
  5. 前記予定走行経路は、複数の走行目標点により構成されており、
    前記ベース点生成部は、
    前記走行目標点のうち、前記現在位置から、前記現在位置を中心とする第1半径を有する第1の円の外側に存在する前記走行目標点のうち、前記現在位置に最も近く、かつ、前記現在位置よりも進行方向前方に存在する第1走行目標点までの前記走行目標点である前方走行目標点を抽出する目標点抽出部と、
    前記現在位置を中心とする第2半径を有する第2の円の外側に存在する前記前方走行目標点のうち、前記現在位置から最短の距離にある第2走行目標点を抽出する目標点選択部と、
    前記現在位置と前記第2走行目標点とを結ぶ線と、前記第2の円の円周との交点である仮想走行目標点を算出する算出部と、
    前記現在位置と、前記仮想走行目標点と、前記第2走行目標点と、前記第2走行目標点から前記第1走行目標点までの間の前記前方走行目標点とを、前記現在位置に近い順に結んで生成される前記走行経路上に、前記ベース点を所定の間隔にて配置するベース点配置部と、
    を備える、請求項1に記載の自律移動体の移動制御装置。
  6. 前記移動制御部は、前記判断部において前記障害物と前記予想走行軌跡とが干渉すると判断された場合、干渉する位置が前記現在位置から近い距離にあれば、前記自律移動体を停止し、前記現在位置から遠い距離にあれば、前記自律移動体を減速するように、前記移動部を制御する、請求項1〜のいずれかに記載の自律移動体の移動制御装置。
  7. 前記移動制御部は、前記判断部において前記障害物と前記予想走行軌跡とが干渉すると判断された場合、前記自律移動体を停止するように前記移動部を制御する、請求項1〜のいずれかに記載の自律移動体の移動制御装置。
  8. 移動部と、
    障害物を検出する検出部と、
    現在位置と、前記現在位置から所定の距離を走行した位置である将来位置までの走行経路を表す走行経路情報と、所定の形状を有する自律移動体領域とに基づいて、前記現在位置から前記将来位置までの予想走行軌跡を演算する演算部と、
    前記検出部が検出した障害物と前記予想走行軌跡とが干渉するか否かを判断する、判断部と、
    前記判断部において前記障害物と前記予想走行軌跡とが干渉しないと判断された場合、前記演算部により演算された前記予想走行軌跡を再現するように前記移動部を制御する移動指令を作成する移動制御部と、
    を備え、
    前記演算部は、
    前記走行経路情報に含まれる前記走行経路における位置情報として、前記走行経路上に複数のベース点を生成するベース点生成部と、
    前記走行経路情報に含まれる前記走行経路上における姿勢情報として、前記自律移動体領域を、前記移動平面の法線軸周りに回転して回転自律移動体領域を生成する、回転自律移動体領域生成部と、
    前記ベース点生成部にて生成された前記ベース点のそれぞれに、前記回転自律移動体領域生成部にて生成された前記回転自律移動体領域を配置することで、前記予想走行軌跡を生成する予想走行軌跡生成部と、
    を有する、自律移動体。
  9. 移動部と、障害物を検出する検出部とを備え、予め作成した予定走行経路を再現するように移動する自律移動体の制御方法であって、
    前記自律移動体の現在位置と、前記現在位置から所定の距離を走行した位置である将来位置までの走行経路を表す走行経路情報と、前記自律移動体を内包した所定の形状を有する自律移動体領域と、に基づいて、前記現在位置から前記将来位置までの予想走行軌跡を演算するステップと、
    前記検出部が検出した前記障害物と前記予想走行軌跡とが互いに干渉するか否かを判断するステップと、
    前記障害物と前記予想走行軌跡とが干渉しないと判断された場合、演算された前記予想走行軌跡を再現するように前記移動部を制御するステップと、
    を含み、
    前記予想走行軌跡を演算するステップは、
    前記走行経路情報に含まれる前記自律移動体の前記走行経路における位置情報として、前記走行経路上に複数のベース点を生成するステップと、
    前記走行経路情報に含まれる前記走行経路上における前記自律移動体の姿勢情報として、前記自律移動体領域を、前記移動平面の法線軸周りに回転して回転自律移動体領域を生成するステップと、
    前記ベース点のそれぞれに前記回転自律移動体領域を配置することで、前記予想走行軌跡を生成するステップと、
    を含む、自律移動体の制御方法。
JP2013097780A 2013-05-07 2013-05-07 自律移動体の移動制御装置、自律移動体、及び自律移動体の制御方法 Active JP6135289B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013097780A JP6135289B2 (ja) 2013-05-07 2013-05-07 自律移動体の移動制御装置、自律移動体、及び自律移動体の制御方法
PCT/JP2014/060716 WO2014181647A1 (ja) 2013-05-07 2014-04-15 自律移動体の移動制御装置、自律移動体、及び自律移動体の制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013097780A JP6135289B2 (ja) 2013-05-07 2013-05-07 自律移動体の移動制御装置、自律移動体、及び自律移動体の制御方法

Publications (2)

Publication Number Publication Date
JP2014219799A JP2014219799A (ja) 2014-11-20
JP6135289B2 true JP6135289B2 (ja) 2017-05-31

Family

ID=51867129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013097780A Active JP6135289B2 (ja) 2013-05-07 2013-05-07 自律移動体の移動制御装置、自律移動体、及び自律移動体の制御方法

Country Status (2)

Country Link
JP (1) JP6135289B2 (ja)
WO (1) WO2014181647A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102079524B1 (ko) * 2015-07-29 2020-02-20 야마하하쓰도키 가부시키가이샤 자동 주행 차량 및 이것을 포함하는 자동 주행 시스템
JP6690904B2 (ja) * 2015-08-07 2020-04-28 ヤマハ発動機株式会社 自動走行車両
JP7176241B2 (ja) * 2018-06-15 2022-11-22 トヨタ自動車株式会社 自律移動体、および自律移動体の制御プログラム
US11054273B2 (en) * 2019-03-27 2021-07-06 Rapyuta Robotics Co., Ltd. Generating a 2D-navigation map for collision-free navigation by multiple robots
DE112020004037T5 (de) * 2019-08-29 2022-09-08 Sony Group Corporation Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren und programm
JP7527950B2 (ja) 2020-12-21 2024-08-05 株式会社東芝 制御装置及びプログラム
JP7234446B1 (ja) * 2022-05-11 2023-03-07 Dmg森精機株式会社 無人搬送システム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3085339B2 (ja) * 1993-03-03 2000-09-04 株式会社牧野フライス製作所 機械加工方法
JP2881683B2 (ja) * 1995-07-07 1999-04-12 東急車輛製造株式会社 自動走行車の障害物検知方法及び装置
JP4978494B2 (ja) * 2008-02-07 2012-07-18 トヨタ自動車株式会社 自律移動体、及びその制御方法
JP5312894B2 (ja) * 2008-10-08 2013-10-09 村田機械株式会社 自律移動体及び自律移動体の移動制御方法
JP2011141663A (ja) * 2010-01-06 2011-07-21 Hitachi Plant Technologies Ltd 無人搬送車、および、その走行制御方法
JP5314788B2 (ja) * 2012-06-11 2013-10-16 パナソニック株式会社 自律移動装置

Also Published As

Publication number Publication date
JP2014219799A (ja) 2014-11-20
WO2014181647A1 (ja) 2014-11-13

Similar Documents

Publication Publication Date Title
JP6135289B2 (ja) 自律移動体の移動制御装置、自律移動体、及び自律移動体の制御方法
JP6610797B2 (ja) 自律走行装置
JP6711138B2 (ja) 自己位置推定装置、及び、自己位置推定方法
JP6340824B2 (ja) 自律走行台車
JP5157803B2 (ja) 自律移動装置
JP4467534B2 (ja) 障害物のある環境下で自律移動する移動ロボットおよび移動ロボットの制御方法。
JP6263970B2 (ja) 自律走行台車、及び、予定走行経路データのデータ構造
JP6340812B2 (ja) 自律走行台車
JP5699670B2 (ja) 走行経路生成装置、及び走行経路生成方法
JP2015111336A (ja) 移動ロボット
JP2007323402A (ja) 自走式機器およびそのプログラム
JP2016103158A (ja) 移動量推定装置、自律移動体、及び移動量の推定方法
JP7445881B2 (ja) 運転支援方法、及び、運転支援装置
JP4467533B2 (ja) 折線追従移動ロボットおよび折線追従移動ロボットの制御方法
JP6402436B2 (ja) 自律走行台車、予定走行経路データの加工方法、及びプログラム
JP6025814B2 (ja) 操作装置および自律移動システム
JP7058761B2 (ja) 移動体制御装置、移動体制御学習装置、及び移動体制御方法
KR101475207B1 (ko) 로봇조종 훈련용 시뮬레이션장치
JP6801243B2 (ja) 移動目標決定装置、及び、移動目標決定方法
TW200921316A (en) Multi-degree-of-freedom stage control apparatus
JP6589578B2 (ja) 移動量推定装置、自律移動体、及び移動量の推定方法
JP2015058493A (ja) 制御装置、ロボットシステム、ロボット、ロボット動作情報生成方法及びプログラム
JP4462212B2 (ja) センサの回転制御方法及び障害物回避方法
JP2023155919A (ja) 走行領域決定方法及び自律走行体
KR20100024631A (ko) 내비게이션 시스템에 특화된 3차원 제어시스템 및 그 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160816

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161011

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170410

R150 Certificate of patent or registration of utility model

Ref document number: 6135289

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