IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社豊田自動織機の特許一覧

<>
  • 特許-位置推定装置 図1
  • 特許-位置推定装置 図2
  • 特許-位置推定装置 図3
  • 特許-位置推定装置 図4
  • 特許-位置推定装置 図5
  • 特許-位置推定装置 図6
  • 特許-位置推定装置 図7
  • 特許-位置推定装置 図8
  • 特許-位置推定装置 図9
  • 特許-位置推定装置 図10
  • 特許-位置推定装置 図11
  • 特許-位置推定装置 図12
  • 特許-位置推定装置 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-05-10
(45)【発行日】2023-05-18
(54)【発明の名称】位置推定装置
(51)【国際特許分類】
   G05D 1/02 20200101AFI20230511BHJP
   G01S 17/87 20200101ALI20230511BHJP
   G01S 17/89 20200101ALI20230511BHJP
【FI】
G05D1/02 L
G01S17/87
G01S17/89
【請求項の数】 6
(21)【出願番号】P 2019142094
(22)【出願日】2019-08-01
(65)【公開番号】P2021026372
(43)【公開日】2021-02-22
【審査請求日】2021-11-11
(73)【特許権者】
【識別番号】000003218
【氏名又は名称】株式会社豊田自動織機
(74)【代理人】
【識別番号】100088155
【弁理士】
【氏名又は名称】長谷川 芳樹
(74)【代理人】
【識別番号】100113435
【弁理士】
【氏名又は名称】黒木 義樹
(74)【代理人】
【識別番号】100124062
【弁理士】
【氏名又は名称】三上 敬史
(74)【代理人】
【識別番号】100148013
【弁理士】
【氏名又は名称】中山 浩光
(72)【発明者】
【氏名】井上 祐太
【審査官】影山 直洋
(56)【参考文献】
【文献】特開2014-211862(JP,A)
【文献】特開2006-167844(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/02
G01S 17/87
G01S 17/89
(57)【特許請求の範囲】
【請求項1】
移動体の自己位置を推定する位置推定装置において、
前記移動体の周囲にレーザを照射し、前記レーザの反射光を受光することにより、前記移動体の周囲の物体までの距離を検出する距離検出部と、
前記距離検出部の検出データに基づいて、前記移動体の自己位置の推定演算を行う推定演算部と、
前記推定演算部による前記移動体の自己位置の推定精度を検知する推定精度検知部とを備え、
前記推定演算部は、前記推定精度検知部により検知された前記移動体の自己位置の推定精度が低いときは、前記移動体の自己位置の推定精度が高いときに比べて前記距離検出部の検出データの使用距離範囲を広くして、前記移動体の自己位置の推定演算を行い、
前記推定精度検知部は、前記推定演算部による前記移動体の自己位置の推定精度が低下しているかどうかを検知し、
前記推定演算部は、前記移動体の自己位置の推定精度が低下していないときは、前記距離検出部の検出データの使用距離範囲として第1距離範囲を使用して、前記移動体の自己位置の推定演算を行い、前記移動体の自己位置の推定精度が低下しているときは、前記距離検出部の検出データの使用距離範囲として前記第1距離範囲よりも広い第2距離範囲を使用して、前記移動体の自己位置の推定演算を行う位置推定装置。
【請求項2】
前記移動体が移動する路面に設置されたマークを検出するマーク検出部を更に備え、
前記推定演算部は、前記第1距離範囲を使用して前記移動体の自己位置の推定演算を行うことで、前記移動体の自己位置を第1位置推定値として推定し、
前記推定精度検知部は、前記マーク検出部により検出された前記マークに基づいて、前記移動体の自己位置を第2位置推定値として推定し、前記第1位置推定値と前記第2位置推定値とのずれ量が閾値以上であるときに、前記移動体の自己位置の推定精度が低下していると検知する請求項記載の位置推定装置。
【請求項3】
前記移動体の状態を検出する状態検出部を更に備え、
前記推定演算部は、前記第1距離範囲を使用して前記移動体の自己位置の推定演算を行うことで、前記移動体の自己位置を第1位置推定値として推定し、
前記推定精度検知部は、前記状態検出部により検出された前記移動体の状態に基づいて、前記移動体の自己位置を第2位置推定値として推定し、前記第1位置推定値と前記第2位置推定値とのずれ量が閾値以上であるときに、前記移動体の自己位置の推定精度が低下していると検知する請求項記載の位置推定装置。
【請求項4】
前記推定精度検知部は、前記第1位置推定値と前記第2位置推定値とのずれ量が規定時間または規定距離だけ連続して前記閾値以上であるときに、前記移動体の自己位置の推定精度が低下していると検知する請求項または記載の位置推定装置。
【請求項5】
前記推定精度検知部は、前記距離検出部の検出データに基づいて、前記移動体の複数の自己位置候補点の分散値を算出し、前記分散値が閾値以上であるときに、前記移動体の自己位置の推定精度が低下していると検知する請求項記載の位置推定装置。
【請求項6】
前記推定精度検知部は、前記分散値が規定時間または規定距離だけ連続して前記閾値以上であるときに、前記移動体の自己位置の推定精度が低下していると検知する請求項記載の位置推定装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、位置推定装置に関する。
【背景技術】
【0002】
従来の位置推定装置としては、例えば特許文献1に記載されているような技術が知られている。特許文献1に記載の位置推定装置は、レーザを発射し、その反射光を検知して物体までの距離を測定するレーザ距離センサと、無人搬送車が走行する走行エリアの番地と走行エリアに設定されている座標との対応情報を格納するデータメモリと、レーザ距離センサからの計測データと地図データとをマッチングさせて無人搬送車の現在位置を推定する処理部とを備えている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2011-253414号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記従来技術のように、レーザを使用して移動体の自己位置を推定する場合には、レーザを反射させる物体の数が少なくなると、移動体の自己位置の推定精度が低下してしまう。
【0005】
本発明の目的は、移動体の自己位置を高精度に推定することができる位置推定装置を提供することである。
【課題を解決するための手段】
【0006】
本発明の一態様は、移動体の自己位置を推定する位置推定装置において、移動体の周囲にレーザを照射し、レーザの反射光を受光することにより、移動体の周囲の物体までの距離を検出する距離検出部と、距離検出部の検出データに基づいて、移動体の自己位置の推定演算を行う推定演算部と、推定演算部による移動体の自己位置の推定精度を検知する推定精度検知部とを備え、推定演算部は、推定精度検知部により検知された移動体の自己位置の推定精度に応じて距離検出部の検出データの使用距離範囲を変更して、移動体の自己位置の推定演算を行う。
【0007】
このような位置推定装置においては、距離検出部によって、移動体の周囲にレーザを照射することで、移動体の周囲の物体までの距離が検出される。そして、推定演算部によって、距離検出部の検出データに基づいて移動体の自己位置の推定演算が行われる。ここで、推定精度検知部によって、推定演算部による移動体の自己位置の推定精度が検知される。そして、推定演算部では、移動体の自己位置の推定精度に応じて距離検出部の検出データの使用距離範囲を変更して、移動体の自己位置の推定演算が行われる。このとき、移動体の自己位置の推定精度が低いほど、距離検出部の検出データの使用距離範囲を広くする。距離検出部の検出データの使用距離範囲が広くなると、検出データの使用距離範囲内においてレーザを反射させる物体の数が増えやすくなる。これにより、移動体の自己位置を高精度に推定することができる。
【0008】
推定演算部は、移動体の自己位置の推定精度が低いときは、移動体の自己位置の推定精度が高いときに比べて距離検出部の検出データの使用距離範囲を広くして、移動体の自己位置の推定演算を行ってもよい。このような構成では、移動体の自己位置の推定精度が低いときは、距離検出部の検出データの使用距離範囲が広くなるため、検出データの使用距離範囲内においてレーザを反射させる物体の数が確実に増えやすくなる。
【0009】
推定精度検知部は、推定演算部による移動体の自己位置の推定精度が低下しているかどうかを検知し、推定演算部は、移動体の自己位置の推定精度が低下していないときは、距離検出部の検出データの使用距離範囲として第1距離範囲を使用して、移動体の自己位置の推定演算を行い、移動体の自己位置の推定精度が低下しているときは、距離検出部の検出データの使用距離範囲として第1距離範囲よりも広い第2距離範囲を使用して、移動体の自己位置の推定演算を行ってもよい。このような構成では、距離検出部の検出データの使用距離範囲としては、第1距離範囲及び第2距離範囲という2つのみが使用される。従って、推定演算部により実行される演算処理を簡素化することができる。
【0010】
位置推定装置は、移動体が移動する路面に設置されたマークを検出するマーク検出部を更に備え、推定演算部は、第1距離範囲を使用して移動体の自己位置の推定演算を行うことで、移動体の自己位置を第1位置推定値として推定し、推定精度検知部は、マーク検出部により検出されたマークに基づいて、移動体の自己位置を第2位置推定値として推定し、第1位置推定値と第2位置推定値とのずれ量が閾値以上であるときに、移動体の自己位置の推定精度が低下していると検知してもよい。このような構成では、距離検出部の検出データに基づいて得られた第1位置推定値と、路面に設置されたマークに基づいて得られた第2位置推定値とを比較することで、移動体の自己位置の推定精度が低下しているかどうかが検知される。従って、移動体の自己位置の推定精度が低下しているかどうかを正確に検知することができる。
【0011】
位置推定装置は、移動体の状態を検出する状態検出部を更に備え、推定演算部は、第1距離範囲を使用して移動体の自己位置の推定演算を行うことで、移動体の自己位置を第1位置推定値として推定し、推定精度検知部は、状態検出部により検出された移動体の状態に基づいて、移動体の自己位置を第2位置推定値として推定し、第1位置推定値と第2位置推定値とのずれ量が閾値以上であるときに、移動体の自己位置の推定精度が低下していると検知してもよい。このような構成では、距離検出部の検出データに基づいて得られた第1位置推定値と、移動体の状態に基づいて得られた第2位置推定値とを比較することで、移動体の自己位置の推定精度が低下しているかどうかが検知される。従って、移動体の自己位置の推定精度が低下しているかどうかを正確に検知することができる。
【0012】
推定精度検知部は、第1位置推定値と第2位置推定値とのずれ量が規定時間または規定距離だけ連続して閾値以上であるときに、移動体の自己位置の推定精度が低下していると検知してもよい。このような構成では、第1位置推定値と第2位置推定値とのずれ量が瞬間的に閾値以上になる状態が排除されるため、移動体の自己位置の推定精度が低下しているかどうかをより正確に検知することができる。
【0013】
推定精度検知部は、距離検出部の検出データに基づいて、移動体の複数の自己位置候補点の分散値を算出し、分散値が閾値以上であるときに、移動体の自己位置の推定精度が低下していると検知してもよい。このような構成では、距離検出部の検出データに基づいた計算処理によって、移動体の自己位置の推定精度が低下しているかどうかが検知される。従って、簡単な構成で、移動体の自己位置の推定精度が低下しているかどうかを検知することができる。
【0014】
推定精度検知部は、分散値が規定時間または規定距離だけ連続して閾値以上であるときに、移動体の自己位置の推定精度が低下していると検知してもよい。このような構成では、分散値が瞬間的に閾値以上になる状態が排除されるため、移動体の自己位置の推定精度が低下しているかどうかを正確に検知することができる。
【発明の効果】
【0015】
本発明によれば、移動体の自己位置を高精度に推定することができる。
【図面の簡単な説明】
【0016】
図1】本発明の第1実施形態に係る位置推定装置を備えた走行制御装置を示す概略構成図である。
図2図1に示されたレーザセンサによるレーザの照射範囲を路面に設置されたARマーカと共に示す概念図である。
図3図1に示された推定演算部により実行される演算処理手順の詳細を示すフローチャートである。
図4図1に示された推定演算部により移動体の自己位置の推定演算を行う際に作成される移動体の複数の自己位置候補点を示す概念図である。
図5図1に示された推定精度検知部により実行される検知処理手順の詳細を示すフローチャートである。
図6図1に示された推定演算部によりレーザセンサの検出データの使用距離範囲として通常距離範囲または長距離範囲を使用して、移動体の自己位置の推定演算を行う様子を示す概念図である。
図7】本発明の第2実施形態に係る位置推定装置を備えた走行制御装置を示す概略構成図である。
図8図7に示された推定精度検知部により実行される検知処理手順の詳細を示すフローチャートである。
図9】本発明の第3実施形態に係る位置推定装置を備えた走行制御装置を示す概略構成図である。
図10図9に示された推定精度検知部により実行される検知処理手順の詳細を示すフローチャートである。
図11】移動体の自己位置候補点と地図とのマッチ度を計測する様子を示すモデル図である。
図12】移動体の自己位置候補点として地図とのマッチ度が高い自己位置候補点が多い状態を示す概念図である。
図13】移動体の自己位置候補点として地図とのマッチ度が低い自己位置候補点が多い状態を示す概念図である。
【発明を実施するための形態】
【0017】
以下、本発明の実施形態について図面を参照して詳細に説明する。なお、図面において、同一または同等の要素には同じ符号を付し、重複する説明を省略する。
【0018】
図1は、本発明の第1実施形態に係る位置推定装置を備えた走行制御装置を示す概略構成図である。図1において、走行制御装置1は、例えばフォークリフトや無人搬送車等の移動体2(図2参照)を走行経路に沿って目的地まで自動的に走行させる装置である。走行制御装置1は、移動体2に搭載されている。
【0019】
走行制御装置1は、レーザセンサ3と、カメラ4と、駆動部5と、コントローラ6とを備えている。
【0020】
レーザセンサ3は、移動体2の周囲にレーザを照射し、レーザの反射光を受光することにより、移動体2の周囲の物体までの距離を検出する距離検出部を構成している。レーザセンサ3としては、例えばレーザレンジファインダが用いられる。使用するレーザとしては、2Dレーザでもよいし、3Dレーザでもよい。
【0021】
レーザセンサ3は、図2に示されるように、レーザLを扇状に照射する。具体的には、レーザセンサ3は、移動体2の前方直進方向を中心した規定の角度範囲(ここでは270度)にレーザLを照射する。レーザセンサ3から照射されたレーザLは物体7(図6参照)に当たり、その物体7で反射したレーザ(反射光)がレーザセンサ3で受光される。物体7は、壁や柱等といった静止物体であり、地図データに登録されている。
【0022】
カメラ4は、図2に示されるように、移動体2が移動する路面に設置されたマークであるAR(augmentedreality)マーカ8を撮像する。カメラ4は、ARマーカ8を検出するマーク検出部を構成している。
【0023】
駆動部5は、特に図示はしないが、移動体2の走行輪を回転させる走行モータと、移動体2の操舵輪を転舵させる操舵モータとを有している。
【0024】
コントローラ6は、CPU、RAM、ROM及び入出力インターフェース等により構成されている。コントローラ6は、推定演算部11と、推定精度検知部12と、駆動制御部13とを有している。
【0025】
推定演算部11は、レーザセンサ3の検出データに基づいて、移動体2の自己位置の推定演算を行う。推定演算部11は、例えばSLAM(simultaneous localization andmapping)手法を用いて、移動体2の自己位置の推定演算を行う。SLAMは、センサデータ及び地図データを使って自己位置推定を行う自己位置推定技術である。SLAMは、レーザセンサ等を利用して、自己位置推定と環境地図の作成とを同時に行う。
【0026】
具体的には、推定演算部11は、レーザセンサ3により検出された物体7までの距離データと移動体2の周囲環境の地図データとをマッチングさせて、移動体2の自己位置の推定演算を行う。このとき、推定演算部11は、後述する推定精度検知部12により検知された移動体2の自己位置の推定精度に応じてレーザセンサ3の検出データの使用距離範囲を変更して、移動体2の自己位置の推定演算を行う。より詳細には、推定演算部11は、推定精度検知部12により検知された移動体2の自己位置の推定精度が低いときは、推定精度検知部12により検知された移動体2の自己位置の推定精度が高いときに比べてレーザセンサ3の検出データの使用距離範囲を広くして、移動体2の自己位置の推定演算を行う。なお、推定演算部11の具体的な処理については、後で詳述する。
【0027】
推定精度検知部12は、カメラ4により撮像されたARマーカ8の画像データに基づいて、推定演算部11による移動体2の自己位置の推定精度を検知する。具体的には、推定精度検知部12は、ARマーカ8の画像データに基づいて、推定演算部11による移動体2の自己位置の推定精度が低下しているかどうかを検知する。推定精度検知部12の具体的な処理については、後で詳述する。
【0028】
駆動制御部13は、推定演算部11により推定された移動体2の自己位置に基づいて、移動体2を走行経路に沿って目的地まで走行させるように駆動部5を制御する。
【0029】
本実施形態の位置推定装置15は、レーザセンサ3と、カメラ4と、コントローラ6の推定演算部11及び推定精度検知部12とによって構成されている。
【0030】
図3は、推定演算部11により実行される演算処理手順の詳細を示すフローチャートである。本処理は、移動体2の走行の開始が指示されると、実行される。
【0031】
図3において、推定演算部11は、まずレーザセンサ3の検出データを取得する(手順S101)。続いて、推定演算部11は、レーザセンサ3の検出データの使用距離範囲として通常距離範囲P(図6(a),(b)参照)を使用して、移動体2の自己位置の推定演算を行う(手順S102)。
【0032】
通常距離範囲Pは、移動体2が自己位置の推定演算に必要な物体7が移動体2の走行経路の近傍に存在する場所を走行するときに使用される第1距離範囲である。通常距離範囲Pは、予め設定されている。
【0033】
推定演算部11は、レーザセンサ3から照射され物体7に当たって反射されたレーザであるレーザセンサ3の検出データのうち、通常距離範囲P内に配置された物体7に当たって反射されたレーザであるレーザセンサ3の検出データのみを使用して、移動体2の自己位置の推定演算を行う。
【0034】
具体的には、推定演算部11は、図4に示されるように、レーザセンサ3の検出データの通常距離範囲P内における移動体2の周囲の物体7までの距離データと移動体2の周囲環境の地図データとをマッチングさせることで、移動体2の自己位置候補点Sを複数作成する。推定演算部11は、各自己位置候補点Sからレーザを照射したと仮定した場合における地図データとのマッチ度を演算することで、各自己位置候補点Sの重みを算出する。そして、推定演算部11は、重みを持った複数の自己位置候補点Sの加重平均値を移動体2の自己位置に設定する。このとき、推定演算部11は、移動体2の自己位置を第1位置推定値として推定する。なお、移動体2の自己位置は、2次元座標(XY座標)及び向きで表される。
【0035】
続いて、推定演算部11は、第1位置推定値を推定精度検知部12に出力する(手順S103)。続いて、推定演算部11は、推定精度検知部12からの推定精度検知信号(後述)が入力されたかどうかを判断する(手順S104)。
【0036】
推定演算部11は、推定精度検知信号が入力されたと判断したときは、レーザセンサ9の検出データを取得する(手順S105)。そして、推定演算部11は、推定精度検知信号に基づいて、推定演算部11による移動体2の自己位置の推定精度が低下しているかどうかを判断する(手順S106)。
【0037】
推定演算部11は、推定演算部11による移動体2の自己位置の推定精度が低下していないと判断したときは、上記の手順S102と同様に、レーザセンサ3の検出データの使用距離範囲として通常距離範囲Pを使用して、移動体2の自己位置の推定演算を行う(手順S107)。
【0038】
推定演算部11は、推定演算部11による移動体2の自己位置の推定精度が低下していると判断したときは、レーザセンサ3の検出データの使用距離範囲として長距離範囲Q(図6(c)参照)を使用して、移動体2の自己位置の推定演算を行う(手順S108)。
【0039】
長距離範囲Qは、移動体2が自己位置の推定演算に必要な物体7が移動体2の走行経路の近傍において足りない場所を走行するときに使用される第2距離範囲である。長距離範囲Qは、通常距離範囲Pよりも広い使用距離範囲である。長距離範囲Qは、自己位置の推定演算に必要な物体7の数を満たすように予め設定されている。
【0040】
推定演算部11は、レーザセンサ3から照射され物体7に当たって反射されたレーザであるレーザセンサ3の検出データのうち、長距離範囲Q内に配置された物体7に当たって反射されたレーザであるレーザセンサ3の検出データのみを使用して、移動体2の自己位置の推定演算を行う。
【0041】
具体的には、推定演算部11は、レーザセンサ3の検出データの長距離範囲Q内における移動体2の周囲の物体7までの距離データと移動体2の周囲環境の地図データとをマッチングさせることで、移動体2の自己位置候補点Sを複数作成する。推定演算部11は、各自己位置候補点Sからレーザを照射したと仮定した場合における地図データとのマッチ度を演算することで、各自己位置候補点Sの重みを算出する。そして、推定演算部11は、重みを持った複数の自己位置候補点Sの加重平均値を移動体2の自己位置に設定する。
【0042】
続いて、推定演算部11は、手順S107または手順S108で得られた移動体2の自己位置を駆動制御部13に出力する(手順S109)。その後、推定演算部11は、上記の手順S101を再度実行する。
【0043】
なお、推定演算部11は、手順S106において推定演算部11による移動体2の自己位置の推定精度が低下していないと判断したときは、手順S107を実行せずに、手順S102で得られた移動体2の自己位置を駆動制御部13に出力してもよい。
【0044】
図5は、推定精度検知部12により実行される検知処理手順の詳細を示すフローチャートである。本処理も、推定演算部11と同様に、移動体2の走行の開始が指示されると、実行される。
【0045】
図5において、推定精度検知部12は、まずカメラ4により撮像されたARマーカ8の画像データを取得する(手順S111)。そして、推定精度検知部12は、ARマーカ8の画像データに基づいて、移動体2の自己位置を第2位置推定値として推定する(手順S112)。
【0046】
続いて、推定精度検知部12は、推定演算部11からの第1位置推定値が入力されたかどうかを判断する(手順S113)。推定精度検知部12は、第1位置推定値が入力されたと判断したときは、第1位置推定値と第2位置推定値とのずれ量を算出する(手順S114)。
【0047】
そして、推定精度検知部12は、第1位置推定値と第2位置推定値とのずれ量が予め決められた閾値以上であるかどうかを判断する(手順S115)。閾値は、第1位置推定値と第2位置推定値とのX座標のずれ量、Y座標のずれ量及び向きのずれ量について個別に設定されている。
【0048】
推定精度検知部12は、第1位置推定値と第2位置推定値とのずれ量が閾値以上であると判断したときは、第1位置推定値と第2位置推定値とのずれ量が閾値以上である状態が予め決められた規定回数(規定サイクル)連続しているかどうかを判断する(手順S116)。つまり、推定精度検知部12は、第1位置推定値と第2位置推定値とのずれ量が規定時間だけ連続して閾値以上であるかどうかを判断する。このとき、推定精度検知部12は、例えば第1位置推定値と第2位置推定値とのX座標のずれ量、Y座標のずれ量及び向きのずれ量のうちの少なくとも1つが対応する閾値以上であるときは、手順S116を実行する。
【0049】
推定精度検知部12は、第1位置推定値と第2位置推定値とのずれ量が閾値以上である状態が規定回数連続していると判断したときは、推定演算部11による移動体2の自己位置の推定精度が低下していると判定する(手順S117)。このとき、推定精度検知部12は、推定演算部11による移動体2の自己位置の推定精度が予め決められた基準値よりも低いと判定する。
【0050】
推定精度検知部12は、手順S115で第1位置推定値と第2位置推定値とのずれ量が閾値以上でないと判断したとき、または手順S116で第1位置推定値と第2位置推定値とのずれ量が閾値以上である状態が規定回数連続していないと判断したときは、推定演算部11による移動体2の自己位置の推定精度が低下していないと判定する(手順S118)。このとき、推定精度検知部12は、推定演算部11による移動体2の自己位置の推定精度が基準値以上であると判定する。
【0051】
続いて、推定精度検知部12は、手順S117または手順S118で判定された結果を推定精度検知信号として推定演算部11に出力する(手順S119)。その後、推定精度検知部12は、上記の手順S111を再度実行する。
【0052】
以上のように構成された走行制御装置1において、移動体2の走行時、レーザセンサ3によって移動体2の周囲にレーザを照射することで、移動体2の周囲の物体7までの距離が検出される。そして、コントローラ6の推定演算部11によって、レーザセンサ3の検出データに基づいて移動体2の自己位置の推定演算が行われる。そして、コントローラ6の駆動制御部13によって、移動体2の自己位置に基づいて移動体2が目的地に向かって走行するように制御される。
【0053】
ここで、通常は、図6(a)に示されるように、レーザセンサ3の検出データの使用距離範囲として通常距離範囲Pを使用して、移動体2の位置の推定演算が行われる。このとき、レーザセンサ3の検出データの通常距離範囲P内に物体7が数多く存在する場合には、レーザセンサ3から照射されたレーザに物体7が容易に捉えられるため、移動体2の自己位置が正しく推定される。
【0054】
しかし、図6(b)に示されるように、レーザセンサ3の検出データの通常距離範囲P内に存在する物体7の数が少ない場合には、レーザセンサ3から照射されたレーザに物体7が捉えられにくいため、移動体2の自己位置の推定精度が低下する。
【0055】
そこで、コントローラ6の推定精度検知部12によって、推定演算部11による移動体2の自己位置の推定精度が低下しているかどうかが検知される。そして、推定演算部11による移動体2の自己位置の推定精度が低下していると検知されたときは、図6(c)に示されるように、レーザセンサ3の検出データの使用距離範囲として長距離範囲Qを使用して、移動体2の自己位置の推定演算が行われる。すると、レーザセンサ3の検出データの長距離範囲Q内に物体7が数多く存在するようになる。従って、レーザセンサ3から照射されたレーザに物体7が容易に捉えられるため、移動体2の自己位置が正しく推定される。
【0056】
以上のように本実施形態にあっては、レーザセンサ3によって、移動体2の周囲にレーザを照射することで、移動体2の周囲の物体7までの距離が検出される。そして、推定演算部11によって、レーザセンサ3の検出データに基づいて移動体2の自己位置の推定演算が行われる。ここで、推定精度検知部12によって、推定演算部11による移動体2の自己位置の推定精度が検知される。そして、推定演算部11では、移動体2の自己位置の推定精度に応じてレーザセンサ3の検出データの使用距離範囲を変更して、移動体2の自己位置の推定演算が行われる。このとき、移動体2の自己位置の推定精度が低いほど、レーザセンサ3の検出データの使用距離範囲を広くする。レーザセンサ3の検出データの使用距離範囲が広くなると、検出データの使用距離範囲内においてレーザを反射させる物体7の数が増えやすくなる。これにより、移動体2の自己位置を高精度に推定することができる。
【0057】
また、本実施形態では、移動体2の自己位置の推定精度が低いときは、移動体2の自己位置の推定精度が高いときに比べてレーザセンサ3の検出データの使用距離範囲を広くして、移動体2の自己位置の推定演算が行われる。従って、移動体2の自己位置の推定精度が低いときは、レーザセンサ3の検出データの使用距離範囲が広くなるため、検出データの使用距離範囲内においてレーザを反射させる物体7の数が確実に増えやすくなる。
【0058】
また、本実施形態では、推定演算部11による移動体2の自己位置の推定精度が低下しているかどうかが検知され、移動体2の自己位置の推定精度が低下していないときは、レーザセンサ3の検出データの使用距離範囲として通常距離範囲Pを使用して、移動体2の自己位置の推定演算が行われ、移動体2の自己位置の推定精度が低下しているときは、レーザセンサ3の検出データの使用距離範囲として長距離範囲Qを使用して、移動体2の自己位置の推定演算が行われる。このようにレーザセンサ3の検出データの使用距離範囲としては、通常距離範囲P及び長距離範囲Qという2つのみが使用される。従って、推定演算部11により実行される演算処理を簡素化することができる。
【0059】
また、本実施形態では、通常距離範囲Pを使用して推定演算を行うことで、移動体2の自己位置が第1位置推定値として推定されると共に、カメラ4により検出されたARマーカ8に基づいて、移動体2の自己位置が第2位置推定値として推定される。そして、第1位置推定値と第2位置推定値とのずれ量が閾値以上であるときに、移動体2の自己位置の推定精度が低下していると検知される。このようにレーザセンサ3の検出データに基づいて得られた第1位置推定値と、路面に設置されたARマーカ8に基づいて得られた第2位置推定値とを比較することで、移動体2の自己位置の推定精度が低下しているかどうかが検知される。従って、移動体2の自己位置の推定精度が低下しているかどうかを正確に検知することができる。
【0060】
また、本実施形態では、第1位置推定値と第2位置推定値とのずれ量が規定時間だけ連続して閾値以上であるときに、移動体2の自己位置の推定精度が低下していると検知される。従って、第1位置推定値と第2位置推定値とのずれ量が瞬間的に閾値以上になる状態が排除されるため、移動体2の自己位置の推定精度が低下しているかどうかをより正確に検知することができる。
【0061】
また、本実施形態では、移動体2の自己位置の推定精度に応じて、レーザセンサ3の検出データの使用距離範囲が自動的に変更されるので、移動体2の自己位置の推定精度が必要な場所をオペレータ等がいちいち探し出して指定しなくて済む。従って、オペレータ等の負担を軽減することができる。
【0062】
なお、本実施形態では、路面に設置されたARマーカ8がカメラ4により撮像され、ARマーカ8の画像データに基づいて移動体2の自己位置が推定され、その推定結果が推定演算部11による移動体2の自己位置の推定精度が低下しているかどうかの検知に利用されているが、特にその形態には限られない。
【0063】
例えば、路面に設置されるマークとして、バーコードを使用してもよい。この場合には、バーコードリーダによりバーコードが読み込まれ、バーコードの読込データに基づいて移動体2の自己位置が推定され、その推定結果が推定演算部11による移動体2の自己位置の推定精度が低下しているかどうかの検知に利用される。
【0064】
図7は、本発明の第2実施形態に係る位置推定装置を備えた走行制御装置を示す概略構成図である。図7において、本実施形態の位置推定装置15は、上記のカメラ4に代えて、移動体2の状態量を計測する計測器20を備えている。
【0065】
計測器20としては、例えば移動体2の状態量として移動体2の車輪の回転角度を計測するエンコーダ、或いは移動体2の状態量として移動体2の角速度及び加速度を計測する慣性計測ユニット等が用いられる。計測器20は、移動体2の状態を検出する状態検出部を構成している。
【0066】
また、位置推定装置15は、上記の推定精度検知部12に代えて、推定精度検知部12Aを備えている。推定精度検知部12Aは、計測器20により計測された移動体2の状態量に基づいて、推定演算部11による移動体2の自己位置の推定精度を検知する。具体的には、推定精度検知部12Aは、移動体2の状態量に基づいて、推定演算部11による移動体2の自己位置の推定精度が低下しているかどうかを検知する。
【0067】
図8は、推定精度検知部12Aにより実行される検知処理手順の詳細を示すフローチャートであり、図5に対応している。図8において、推定精度検知部12Aは、まず計測器20の計測値を取得する(手順S111A)。そして、推定精度検知部12Aは、計測器20の計測値に基づいて、移動体2の自己位置を第2位置推定値として推定する(手順S112A)。その後、推定精度検知部12Aは、上記の手順S113~S119を順次実行する。
【0068】
このような本実施形態においては、レーザセンサ3の検出データに基づいて得られた第1位置推定値と、移動体2の状態に基づいて得られた第2位置推定値とを比較することで、移動体2の自己位置の推定精度が低下しているかどうかが検知される。従って、移動体2の自己位置の推定精度が低下しているかどうかを正確に検知することができる。
【0069】
図9は、本発明の第3実施形態に係る位置推定装置を備えた走行制御装置を示す概略構成図である。図9において、本実施形態の位置推定装置15は、上記のカメラ4及び計測器20を備えていない。
【0070】
また、位置推定装置15は、上記の推定精度検知部12,12Aに代えて、推定精度検知部12Bを備えている。推定精度検知部12Bは、レーザセンサ3の検出データに基づいて、推定演算部11による移動体2の自己位置の推定精度を検知する。具体的には、推定精度検知部12Bは、レーザセンサ3の検出データに基づいて、推定演算部11による移動体2の自己位置の推定精度が低下しているかどうかを検知する。
【0071】
図10は、推定精度検知部12Bにより実行される検知処理手順の詳細を示すフローチャートであり、図5に対応している。図10において、推定精度検知部12Bは、まずレーザセンサ3の検出データを取得する(手順S121)。
【0072】
続いて、推定精度検知部12Bは、移動体2の複数の自己位置候補点S(図4参照)の分散値を算出する(手順S122)。具体的には、推定精度検知部12Bは、まず複数の自己位置候補点Sの平均値を算出し、各自己位置候補点Sと平均値との差分を標準偏差として算出し、その標準偏差の二乗平均を分散値として算出する。
【0073】
続いて、推定精度検知部12Bは、複数の自己位置候補点Sの分散値が予め決められた閾値以上であるかどうかを判断する(手順S123)。推定精度検知部12Bは、複数の自己位置候補点Sの分散値が閾値以上であると判断したときは、複数の自己位置候補点Sの分散値が閾値以上である状態が規定回数(規定サイクル)連続しているかどうかを判断する(手順S124)。つまり、推定精度検知部12Bは、複数の自己位置候補点Sの分散値が規定時間だけ連続して閾値以上であるかどうかを判断する。
【0074】
推定精度検知部12Bは、複数の自己位置候補点Sの分散値が閾値以上である状態が規定回数連続していると判断したときは、推定演算部11による移動体2の自己位置の推定精度が低下していると判定する(手順S125)。
【0075】
推定精度検知部12Bは、手順S123で複数の自己位置候補点Sの分散値が閾値以上でないと判断したとき、または手順S124で複数の自己位置候補点Sの分散値が閾値以上である状態が規定回数連続していないと判断したときは、推定演算部11による移動体2の自己位置の推定精度が低下していないと判定する(手順S126)。
【0076】
続いて、推定精度検知部12Bは、手順S125または手順S126で判定された結果を推定精度検知信号として推定演算部11に出力する(手順S127)。その後、推定精度検知部12Bは、上記の手順S121を再度実行する。
【0077】
このように複数の自己位置候補点Sの分散値を用いて、推定演算部11による移動体2の自己位置の推定精度を検知する際には、例えば図11に示されるように、自己位置候補点Sから見えているレーザを地図に投影して、自己位置候補点Sと地図とのマッチ度を計測する。図11(a)に示される自己位置候補点S1は、地図とのマッチ度が高い。図11(b)に示される自己位置候補点S2は、地図とのマッチ度が低い。
【0078】
図12に示されるように、地図とのマッチ度が高い自己位置候補点S1が多い場合には、複数の自己位置候補点Sの分散値が小さくなる。このため、推定演算部11による移動体2の自己位置の推定精度が低下していないと検知される。なお、図12中の自己位置候補点S1は、地図とのマッチ度が高い自己位置候補点Sである。図12中の自己位置候補点S2は、地図とのマッチ度が低い自己位置候補点Sである。
【0079】
図13(a)に示されるように、地図とのマッチ度が低い自己位置候補点S2が多い場合には、複数の自己位置候補点Sの分散値が大きくなる。このため、推定演算部11による移動体2の自己位置の推定精度が低下していると検知される。なお、図13中の自己位置候補点S1も、地図とのマッチ度が高い自己位置候補点Sである。図13中の自己位置候補点S2も、地図とのマッチ度が低い自己位置候補点Sである。
【0080】
地図とのマッチ度が低い自己位置候補点S2が多いときは、図13(b)に示されるように、自己位置候補点Sを作成する範囲を広げてもよい。自己位置候補点Sを作成する範囲を広げても、地図とのマッチ度が低い自己位置候補点S2が多い場合に、推定演算部11による移動体2の自己位置の推定精度が低下していると検知してもよい。
【0081】
以上のような本実施形態においては、レーザセンサ3の検出データに基づいて、移動体2の自己位置候補点Sの分散値が算出され、分散値が閾値以上であるときに、移動体2の自己位置の推定精度が低下していると検知される。このようにレーザセンサ3の検出データに基づいた計算処理によって、移動体2の自己位置の推定精度が低下しているかどうかが検知される。従って、上記のカメラ4及び計測器20が不要となるため、簡単な構成で、移動体2の自己位置の推定精度が低下しているかどうかを検知することができる。
【0082】
また、本実施形態では、自己位置候補点Sの分散値が規定時間だけ連続して閾値以上であるときに、移動体2の自己位置の推定精度が低下していると検知される。従って、分散値が瞬間的に閾値以上になる状態が排除されるため、移動体2の自己位置の推定精度が低下しているかどうかを正確に検知することができる。
【0083】
なお、本発明は、上記実施形態には限定されない。例えば上記実施形態では、第1位置推定値と第2位置推定値とのずれ量または移動体2の複数の自己位置候補点Sの分散値が規定時間だけ連続して閾値以上であるときに、移動体2の自己位置の推定精度が低下していると検知されているが、特にその形態には限られない。第1位置推定値と第2位置推定値とのずれ量または移動体2の複数の自己位置候補点Sの分散値が規定距離だけ連続して閾値以上であるときに、移動体2の自己位置の推定精度が低下していると検知してもよい。また、第1位置推定値と第2位置推定値とのずれ量または移動体2の複数の自己位置候補点Sの分散値が閾値以上になった時点で、移動体2の自己位置の推定精度が低下していると検知してもよい。
【0084】
また、上記実施形態では、移動体2の自己位置の推定精度が低下しているか否かが検知され、移動体2の自己位置の推定精度が低下していないときは、レーザセンサ3の検出データの使用距離範囲として通常距離範囲Pが使用され、移動体2の自己位置の推定精度が低下しているときは、レーザセンサ3の検出データの使用距離範囲として長距離範囲Qが使用されているが、特にその形態には限られない。例えば、移動体2の自己位置の推定精度を「高」、「中」、「低」のように3つ以上の範囲で検知し、移動体2の自己位置の推定精度が低くなるほど、レーザセンサ3の検出データの使用距離範囲を3段階以上で広くしてもよい。
【0085】
また、上記実施形態は、移動体2を走行経路に沿って目的地まで走行させる走行制御装置であるが、本発明は、特にそれには限られず、例えば移動体2を対象物に沿って走行させる場合など、移動体2の自己位置を推定する必要がある装置であれば、適用可能である。
【0086】
また、上記実施形態では、自己位置推定技術としてレーザを利用したSLAM手法を用いて移動体2の自己位置が推定されているが、本発明は、特にSLAM手法には限られず、レーザを使用して距離を検出するセンサの検出データに基づいて、移動体2の自己位置を推定する手法であれば、適用可能である。
【符号の説明】
【0087】
2…移動体、3…レーザセンサ(距離検出部)、4…カメラ(マーク検出部)、7…物体、8…ARマーカ(マーク)、11…推定演算部、12,12A,12B…推定精度検知部、15…位置推定装置、20…計測器(状態検出部)、L…レーザ、P…通常距離範囲(第1距離範囲)、Q…長距離範囲(第2距離範囲)、S…自己位置候補点。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13