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

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

▶ 村田機械株式会社の特許一覧

特開2023-183529自律走行体システム、及び、位置表示方法
<>
  • 特開-自律走行体システム、及び、位置表示方法 図1
  • 特開-自律走行体システム、及び、位置表示方法 図2
  • 特開-自律走行体システム、及び、位置表示方法 図3
  • 特開-自律走行体システム、及び、位置表示方法 図4
  • 特開-自律走行体システム、及び、位置表示方法 図5
  • 特開-自律走行体システム、及び、位置表示方法 図6
  • 特開-自律走行体システム、及び、位置表示方法 図7
  • 特開-自律走行体システム、及び、位置表示方法 図8
  • 特開-自律走行体システム、及び、位置表示方法 図9
  • 特開-自律走行体システム、及び、位置表示方法 図10
  • 特開-自律走行体システム、及び、位置表示方法 図11
  • 特開-自律走行体システム、及び、位置表示方法 図12
  • 特開-自律走行体システム、及び、位置表示方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023183529
(43)【公開日】2023-12-28
(54)【発明の名称】自律走行体システム、及び、位置表示方法
(51)【国際特許分類】
   G05D 1/02 20200101AFI20231221BHJP
【FI】
G05D1/02 H
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022097092
(22)【出願日】2022-06-16
(71)【出願人】
【識別番号】000006297
【氏名又は名称】村田機械株式会社
(74)【代理人】
【識別番号】110000202
【氏名又は名称】弁理士法人新樹グローバル・アイピー
(72)【発明者】
【氏名】谷阪 喜昭
【テーマコード(参考)】
5H301
【Fターム(参考)】
5H301AA01
5H301AA10
5H301BB05
5H301BB14
5H301CC03
5H301CC06
5H301CC10
5H301DD01
5H301DD06
5H301DD07
5H301DD15
5H301GG08
5H301GG09
5H301HH01
5H301HH02
5H301LL01
5H301LL02
5H301LL03
5H301LL06
(57)【要約】
【課題】自律走行体の位置を、自己位置推定に用いた地図を定める座標系とは異なる座標系に定められた地図上に適切に表示する。
【解決手段】自律走行体システム100は、自律走行体1と、コンピュータ2と、を備える。自律走行体1は、移動領域A内を走行する。コンピュータ2は、環境地図データM1における第1座標点p11~p14と、表示対象地図データM3において第1座標点p11~p14に対応する第2座標点P21~P24と、を決定し、第1座標点p11~p14と第2座標点P21~P24に基づいて、第1座標系から第2座標系への座標変換を行う変換行列MXを算出し、変換行列MXを用いて、環境地図データM1に基づいて推定された自律走行体1の自己位置を、第2座標系上の座標点に変換し、第2座標系上の座標点に変換された自己位置を、表示対象地図データM3上に表示する。
【選択図】図8
【特許請求の範囲】
【請求項1】
所定の領域内を走行する自律走行体と、前記自律走行体に関する情報処理を実行するコンピュータと、を備え、
前記コンピュータは、
第1座標系上に定められ前記所定の領域を表す環境地図における第1座標点と、前記第1座標系とは異なる第2座標系上に定められた表示対象地図において前記第1座標点に対応する第2座標点と、を決定し、
前記第1座標点と前記第2座標点に基づいて、前記第1座標系から前記第2座標系への座標変換を行う変換行列を算出し、
前記変換行列を用いて、前記環境地図に基づいて推定された前記所定の領域内における前記自律走行体の自己位置を前記第2座標系上の座標点に変換し、
前記第2座標系上の座標点に変換された前記自己位置を、前記表示対象地図上に表示する、
自律走行体システム。
【請求項2】
前記環境地図は複数の第1領域に分割され、前記表示対象地図は複数の第1領域に対応するよう複数の第2領域に分割され、
前記コンピュータは、
各第1領域と当該第1領域に対応する第2領域との各組に対して変換行列を算出し、
複数の第1領域のうち前記自己位置を含む第1領域とこれに対応する第2領域との組に対して算出された変換行列を選択し、
選択された変換座標を用いて、前記自己位置を、当該自己位置を含む第1領域に対応する第2領域内の座標点に変換し、
前記第2領域内の座標点に変換された自己位置を、当該自己位置を含む第1領域に対応する第2領域上に表示する、
請求項1に記載の自律走行体システム。
【請求項3】
前記コンピュータは、
前記自律走行体の走行経路を前記環境地図上に計画し、
前記変換行列を用いて、前記走行経路を前記第2座標系における経路に変換し、
前記第2座標系における経路に変換した走行経路を前記表示対象地図上に表示する、
請求項1に記載の自律走行体システム。
【請求項4】
前記コンピュータは、
前記環境地図を更新し、
更新された環境地図に基づいて新たな変換行列を算出する、
請求項1に記載の自律走行体システム。
【請求項5】
所定の領域内を走行する自律走行体の位置を表示対象地図に表示する位置表示方法であって、
第1座標系上に定められ前記所定の領域を表す環境地図における第1座標点と、前記第1座標系とは異なる第2座標系上に定められた前記表示対象地図において前記第1座標点に対応する第2座標点と、を決定するステップと、
前記第1座標点と前記第2座標点に基づいて、前記第1座標系から前記第2座標系への座標変換を行う変換行列を算出するステップと、
前記環境地図に基づいて、前記所定の領域内における前記自律走行体の自己位置を推定するステップと、
前記変換行列を用いて、推定された前記自己位置を前記第2座標系上の座標点に変換するステップと、
前記第2座標系上の座標点に変換された自己位置を、前記表示対象地図上に表示するステップと、
を備える、位置表示方法。
【請求項6】
前記環境地図は複数の第1領域に分割され、前記表示対象地図は複数の第1領域に対応するよう複数の第2領域に分割され、
前記変換行列を算出するステップは、各第1領域と当該第1領域に対応する第2領域との各組に対して前記変換行列を算出するステップを含み、
前記自己位置を前記第2座標系上の座標点に変換するステップは、複数の第1領域のうち前記自己位置を含む第1領域とこれに対応する第2領域との組に対して算出された変換行列を選択するステップと、選択された変換座標を用いて、前記自己位置を、当該自己位置を含む第1領域に対応する第2領域内の座標点に変換するステップと、を含み、
前記自己位置を前記表示対象地図上に表示するステップは、第2領域内の座標点に変換された自己位置を、当該自己位置を含む第1領域に対応する第2領域上に表示するステップを含む、
請求項5に記載の位置表示方法。
【請求項7】
前記自律走行体の走行経路を前記環境地図上に計画するステップと、
前記変換行列を用いて、前記走行経路を前記第2座標系における経路に変換するステップと、
前記第2座標系における経路に変換した走行経路を前記表示対象地図上に表示するステップと、
をさらに備える、請求項5に記載の位置表示方法。
【請求項8】
前記環境地図を更新するステップと、
更新された環境地図に基づいて新たな変換行列を算出するステップと、
をさらに備える、請求項5に記載の位置表示方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、所定の領域内を走行する自律走行体と自律走行体に関する情報処理を実行するコンピュータとを備える自律走行体システム、及び、当該自律走行体の位置を任意の地図に表示する位置表示方法に関する。
【背景技術】
【0002】
自律走行体の一種として、コンビニエンスストアやスーパーマーケットに代表される店舗の商品陳列棚を監視する棚チェックロボットが知られている(例えば、特許文献1を参照)。棚チェックロボットが商品陳列棚を監視することで商品の陳列状態における異常の有無を確認し、異常がある場合には、作業者が、商品の陳列状態の異常を解消して商品整頓作業や補充作業を実施する。自律走行体は、店舗等を移動するための車輪を有している。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2020-98617号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、自律走行体が自律移動する所定の領域における自律走行体の位置を、当該所定の領域を表す任意の地図(例えば、所定の領域の間取り図、所定の領域のイラスト図など)に表示したい要望がある。
【0005】
その一方で、所定の領域内における自律走行体の位置(自己位置と呼ぶ)は、所定の領域における物体(例えば、壁、商品陳列棚、商品等)の位置を表す地図(環境地図と呼ぶ)を用いて推定されている。つまり、自己位置推定に用いられる環境地図と、自律走行体の位置を表示させたい地図(表示対象地図と呼ぶ)とは異なる地図であり、一般的には、異なる座標系上に定められる。このため、環境地図を用いて推定された自己位置を、表示対象地図に表示した場合に、当該自己位置が表示対象地図の適切な位置に表示されないことがある。
【0006】
本発明の目的は、自律走行体の位置を、自己位置推定に用いた地図(環境地図)を定める座標系とは異なる座標系に定められた地図(表示対象地図)上に適切に表示することにある。
【課題を解決するための手段】
【0007】
以下に、課題を解決するための手段として複数の態様を説明する。これら態様は、必要に応じて任意に組み合せることができる。
本発明の一態様に係る自律走行体システムは、自律走行体と、コンピュータと、を備える。自律走行体は、所定の領域内を走行する。コンピュータは、自律走行体に関する情報処理を実行する。コンピュータは、以下の処理を実行する。
◎環境地図における第1座標点と、表示対象地図において第1座標点に対応する第2座標点と、を決定する。環境地図は、第1座標系上に定められた所定の領域を表す。表示対象地図は、第1座標系とは異なる第2座標系上に定められた地図である。
◎第1座標点と第2座標点に基づいて、第1座標系から第2座標系への座標変換を行う変換行列を算出する。
◎変換行列を用いて、環境地図に基づいて推定された所定の領域内における自律走行体の自己位置を、第2座標系上の座標点に変換する。
◎第2座標系上の座標点に変換された自己位置を、表示対象地図上に表示する。
【0008】
上記の自律走行体システムでは、所定の領域内における自律走行体の自己位置は、環境地図に基づいて推定される。すなわち、自己位置は、環境地図を定める第1座標系上の位置である。そのため、コンピュータが、環境地図を定める第1座標系から自己位置を表示させる表示対象地図を定める第2座標系への座標変換を行う変換行列を算出し、当該変換行列を用いて推定された自己位置を第2座標系上の座標点に変換し、変換された自己位置を表示対象地図上に表示している。
【0009】
このように、第1座標系から第2座標系への変換行列を算出し、環境地図に基づいて推定された自己位置を変換行列により第2座標系上の座標点に変換することで、第1座標系とは異なる第2座標系に定められた任意の表示対象地図上の適切な位置に自己位置を表示できる。
【0010】
上記の自律走行体システムにおいて、環境地図は複数の第1領域に分割され、表示対象地図は複数の第1領域に対応するよう複数の第2領域に分割されてもよい。この場合、コンピュータは、以下を実行してもよい。
◎各第1領域と当該第1領域に対応する第2領域との各組に対して変換行列を算出する。
◎複数の第1領域のうち自己位置を含む第1領域とこれに対応する第2領域との組に対して算出された変換行列を選択する。
◎選択された変換座標を用いて、自己位置を、当該自己位置を含む第1領域に対応する第2領域内の座標点に変換する。
◎第2領域内の座標点に変換された自己位置を、当該自己位置を含む第1領域に対応する第2領域上に表示する。
【0011】
このように、環境地図を分割して得られた1つの第1領域と、表示対象地図を分割して得られた対応する1つの第2領域と、の組毎に変換行列を算出することで、表示対象地図上に自律走行体の自己位置をより正確に表示できる。
【0012】
上記の自律走行体システムにおいて、コンピュータは、自律走行体の走行経路を環境地図上に計画し、変換行列を用いて走行経路を第2座標系における経路に変換し、第2座標系における経路に変換した走行経路を表示対象地図上に表示してもよい。このように、自律走行体が走行予定の走行経路も表示対象地図に表示することで、自律走行体の走行予測や自律走行の進捗率を把握しやすくなる。
【0013】
上記の自律走行体システムにおいて、コンピュータは、環境地図を更新し、更新された環境地図に基づいて新たな変換行列を算出してもよい。これにより、更新された環境地図に応じた適切な変換行列を算出できる。この結果、環境地図が更新されても、自律走行体の自己位置を表示対象地図上に正確に表示できる。
【0014】
本発明の他の態様に係る位置表示方法は、所定の領域内を走行する自律走行体の位置を表示対象地図に表示する位置表示方法である。位置表示方法は、以下のステップを備える。
◎第1座標系上に定められた環境地図における第1座標点と、第2座標系上に定められた表示対象地図において第1座標点に対応する第2座標点と、を決定するステップ。
◎第1座標点と第2座標点に基づいて、第1座標系から第2座標系への座標変換を行う変換行列を算出するステップ。
◎環境地図に基づいて、所定の領域内における前記自律走行体の自己位置を推定するステップ。
◎変換行列を用いて、推定された自己位置を第2座標系上の座標点に変換するステップ。
◎第2座標系上の座標点に変換された自己位置を、表示対象地図上に表示するステップ。
【0015】
上記の位置表示方法では、所定の領域内における自律走行体の自己位置は、環境地図に基づいて推定される。すなわち、自己位置は、環境地図を定める第1座標系上の位置である。そのため、位置表示方法では、環境地図を定める第1座標系から自己位置を表示させる表示対象地図を定める第2座標系への座標変換を行う変換行列を算出し、当該変換行列を用いて推定された自己位置を第2座標系上の座標点に変換し、変換された自己位置を表示対象地図上に表示している。
【0016】
このように、第1座標系から第2座標系への変換行列を算出し、環境地図に基づいて推定された自己位置を変換行列により第2座標系上の座標点に変換することで、第1座標系とは異なる第2座標系に定められた任意の表示対象地図上の適切な位置に自己位置を表示できる。
【0017】
上記の位置表示方法において、環境地図は、複数の第1領域に分割され、表示対象地図は、複数の第1領域に対応するよう複数の第2領域に分割されてもよい。この場合、変換行列を算出するステップは、各第1領域と当該第1領域に対応する第2領域との各組に対して変換行列を算出するステップを含んでもよい。また、自己位置を第2座標系上の座標点に変換するステップは、複数の第1領域のうち自己位置を含む第1領域とこれに対応する第2領域との組に対して算出された変換行列を選択するステップと、選択された変換座標を用いて、自己位置を、当該自己位置を含む第1領域に対応する第2領域内の座標点に変換するステップと、を含んでもよい。さらに、自己位置を表示対象地図上に表示するステップは、第2領域内の座標点に変換された自己位置を、当該自己位置を含む第1領域に対応する第2領域上に表示するステップを含んでもよい。
【0018】
このように、環境地図を分割して得られた1つの第1領域と、表示対象地図を分割して得られた対応する1つの第2領域と、の組毎に変換行列を算出することで、表示対象地図上に自律走行体の自己位置をより正確に表示できる。
【0019】
上記の位置表示方法は、以下のステップをさらに備えてもよい。
◎自律走行体の走行経路を環境地図上に計画するステップ。
◎変換行列を用いて、走行経路を第2座標系における経路に変換するステップ。
◎第2座標系における経路に変換した走行経路を表示対象地図上に表示するステップ。
【0020】
このように、自律走行体が走行予定の走行経路も表示対象地図に表示することで、自律走行体の走行予測や自律走行の進捗率を把握しやすくなる。
【0021】
上記の位置表示方法は、環境地図を更新するステップと、更新された環境地図に基づいて新たな変換行列を算出するステップと、をさらに備えてもよい。これにより、更新された環境地図に応じた適切な変換行列を算出できる。この結果、環境地図が更新されても、自律走行体の自己位置を表示対象地図上に正確に表示できる。
【発明の効果】
【0022】
自律走行体の自己位置を、環境地図を定める第1座標系とは異なる第2座標系に定められた表示対象地図上に適切に表示できる。
【図面の簡単な説明】
【0023】
図1】移動領域のレイアウトの一例を示す図。
図2】自律走行体システムの構成を示す図。
図3】自律走行体の斜視図(その1)。
図4】自律走行体の斜視図(その2)。
図5】自律走行体の模式的側面図。
図6】自律走行体の制御構成を示す図。
図7】コンピュータの構成を示す図。
図8】自律走行体システムの動作を示すフローチャート。
図9】第1座標点と第2座標点の設定の一例を示す図。
図10】自律走行動作を示すフローチャート。
図11】環境地図データ上の走行スケジュールと自己位置データの一例を示す図である。
図12】表示対象地図データ上に走行スケジュールと自己位置データを表示した表示例を示す図である。
図13】地図データの分割の一例を示す図。
【発明を実施するための形態】
【0024】
1.第1実施形態
(1)移動領域
以下、自律走行体1を含む自律走行体システム100を説明する。自律走行体1は、所定の領域(以下、移動領域Aと呼ぶ)内に定められた所定の経路に沿って自律走行する。移動領域Aは、例えば、コンビニエンスストアやスーパーマーケットに代表される小売店舗の内部であり、図1に示すようなレイアウトを有する。図1は、移動領域のレイアウトの一例を示す図である。
【0025】
移動領域Aは、壁Wと、商品陳列棚SHと、を有する。壁Wは、移動領域Aを他の領域と隔てる。商品陳列棚SHは、移動領域A内に並んで配置され、商品等を載置する。また、移動領域Aにおいて、2つの商品陳列棚SHの間の領域(すなわち、自律走行体1が走行する領域)に、商品ワゴンなどの障害物OBが配置されることがある。移動領域Aには、自律走行体1を充電する充電ステーションSTが設けられる。
【0026】
(2)自律走行体システムの構成
以下、図2を用いて、自律走行体システム100の構成を説明する。図2は、自律走行体システムの構成を示す図である。自律走行体システム100は、自律走行体1と、コンピュータ2と、を備える。
【0027】
自律走行体1は、上記にて説明した移動領域A内に定められた所定の経路に沿って自律走行する。自律走行体1は、移動領域A内の障害物OBを回避しつつ商品陳列棚SHに沿って自律走行しながら、商品陳列棚SHの状態を監視する。このような自律走行体1は、棚チェックロボットとも呼ばれる。
【0028】
コンピュータ2は、CPU、記憶装置(例えば、RAM、ROM、SSD、ハードディスクなど)、ネットワークインタフェース、各種入出力インタフェース等により構成され、自律走行体1に関する情報処理を実行するコンピュータシステムである。
【0029】
コンピュータ2は、自律走行体1と通信可能となっている。コンピュータ2と自律走行体1との間の通信は、無線通信、及び/又は、有線通信にて実現できる。無線通信は、例えば、無線LANによる通信である。その他、ブルートゥース(登録商標)などの近距離無線通信による通信であってもよい。有線通信は、例えば、有線LANによる通信である。
【0030】
コンピュータ2は、例えば、自律走行体システム100を管理するサーバである。その他、コンピュータ2は、パーソナルコンピュータ、タブレット端末、スマートフォンなどの各種コンピュータ端末であってもよい。
【0031】
(3)自律走行体の構成
(3-1)自律走行体の基本構成
次に、図3図6を用いて、自律走行体システム100に備わる自律走行体1の構成を説明する。図3及び図4は、自律走行体の斜視図である。図5は、自律走行体の模式的側面図である。図6は、自律走行体1の制御構成を示す図である。なお、図において白抜き矢印は自律走行体1の移動方向を示している。自律走行体1は、車体3と、走行部5と、障害物検知部7と、複数のカメラ9と、制御装置13と、物体検出センサ15と、を有している。
【0032】
車体3は、自律走行体1の本体を構成する。車体3は、高さ方向長さが走行方向長さに対して3倍以上あり、比較的背が高い。
【0033】
走行部5は、車体3を走行させる。走行部5は、駆動輪51と、前側従動輪53と、後側従動輪55と、駆動輪支持構造57と、を有している。駆動輪51は、車体3の下部に設けられている。駆動輪51は、車体3の下部の走行方向中央部分において、車体3の左右に一対設けられる。各駆動輪51は、モータ59、図示しない減速機構によって駆動される。一例として、モータ及び減速機構は、各駆動輪51に直接連結されている。
【0034】
前側従動輪53及び後側従動輪55は、車体3の下部に設けられている。前側従動輪53は、駆動輪51より走行方向前側において、車体3の左右に一対設けられている。後側従動輪55は、駆動輪51より走行方向後側において、車体3の左右に一対設けられている。駆動輪支持構造57は、駆動輪51を所定上下範囲でサスペンションによって可動可能に支持する構造である。
【0035】
障害物検知部7は、車体3の走行方向前側の比較的高い位置に設けられる。障害物検知部7は、車体3の周囲に存在する物体を検知する。障害物検知部7により検知される物体は、移動領域Aに存在する障害物OB、壁W、商品陳列棚SH、商品陳列棚SHに載置される商品などである。障害物検知部7は、障害物検知部7と物体との間の距離、及び、障害物検知部7から見た物体の存在方向と、を検知した物体に関する情報として取得する。障害物検知部7は、例えば、TOF(Time of Flight)カメラである。
【0036】
複数のカメラ9は、車体3の高さ方向に所定の間隔を空けて取り付けられ、商品陳列棚SHを撮影する。具体的には、複数のカメラ9は、車体3の一側面に設けられており、水平方向を向いている。撮影画像は制御部によって画像処理される。この結果、制御部は、POP(Point of Purchase)広告の期限、売価、品切れ等をチェックできる。自律走行体1は、車体3の最下部において走行方向前後にバンパスイッチ11を有する。
【0037】
制御装置13は、CPU、記憶装置(例えば、RAM、ROM、SSD、ハードディスクなど)、ネットワークインタフェース、各種入出力インタフェース等により構成され、自律走行体1を制御するコンピュータシステムである。なお、制御装置13の一部又は全部は、SoC(System on Chip)で構成されていてもよい。制御装置13は、車体3の内部に配置される。
【0038】
物体検出センサ15は、車体3の下部に設けられる。物体検出センサ15により検知される物体は、移動領域Aに存在する障害物OB、壁W、商品陳列棚SH、商品陳列棚SHに載置される商品などである。
【0039】
物体検出センサ15は、物体の検知結果として、車体3の周囲に存在する物体を表す点群を取得する。車体3の周囲に存在する物体を表す点群は、車体3の周囲に存在する物体の配置位置を表す地図情報(局所地図データM2と呼ぶ)となる。物体を表す点群の各点は、例えば、物体検出センサ15から当該点までの距離と、当該点が存在する角度と、により表される。その他、各点は、座標値として表されてもよい。物体検出センサ15は、例えば、レーザレンジファインダである。
【0040】
上記の自律走行体1において、車体3の周囲に存在する物体の検知は、障害物検知部7による物体の検知結果と、物体検出センサ15による物体の検知結果とを合算することで実現される。具体的には、比較的高い位置にある物体(例えば、天井から下方向に延びる物体)を主として障害物検知部7により検知し、比較的低い位置にある物体(例えば、床面に置かれた背の低い物体)を主として物体検出センサ15により検知する。
【0041】
(3-2)制御装置の構成
図6を用いて、制御装置13の具体的構成を説明する。制御装置13は、制御部131と、記憶部133と、を有する。制御部131は、制御装置13を構成するCPU、ネットワークインタフェース、各種入出力インタフェース等により構成され、自律走行体1における各種情報処理を行う。制御部131は、当該情報処理を、記憶部133に記憶されたコンピュータプログラムを実行することにより実現する。
【0042】
具体的には、制御部131は、障害物検知部7及び/又は物体検出センサ15にて得られた車体3の周囲に存在する物体に関する情報に基づいて、地図情報(環境地図データM1、局所地図データM2)の作成、自律走行体1の移動領域Aにおける存在位置と当該位置における自律走行体1の姿勢角(上記の存在位置と姿勢角を含めて自己位置と呼ぶ)の推定等を行う。
【0043】
また、制御部131は、自律走行体1の自己位置、モータ59の出力回転軸の回転数(すなわち、駆動輪51の回転数)に基づいて、モータ59(駆動輪51)の回転を制御し、自律走行体1の走行を制御する。なお、モータ59の回転数は、モータ59の出力回転軸に設けられたエンコーダ61により計数できる。
【0044】
記憶部133は、制御装置13の記憶装置により構成され、自律走行体1の制御に必要な各種データを記憶する。具体的には、記憶部133は、環境地図データM1と、走行スケジュールSCと、局所地図データM2と、自己位置データPDと、を記憶する。
【0045】
環境地図データM1は、移動領域Aにおける物体の存在位置を示す地図情報である。環境地図データM1は、自律走行体1の自己位置を推定する際に使用される。最初の環境地図データM1は、例えば、自律走行体1の据付時に作成される。環境地図データM1は、第1座標系上に定められている。具体的には、環境地図データM1は、第1座標系の対応する座標位置に移動領域Aの物体を配置した地図データである。
【0046】
後述するように、自律走行体1の自己位置は、環境地図データM1と局所地図データM2との比較に基づいて行われる。従って、局所地図データM2、及び、自律走行体1の自己位置は、ともに第1座標系に定められる。
【0047】
走行スケジュールSCは、移動領域Aにおいて自律走行体1に自律走行させたい経路(自律走行経路と呼ぶ)を表すデータである。後述するように、自律走行経路は、移動領域Aの移動開始位置から移動終了位置まで障害物OBを安全に回避しながら自律走行できる経路として計画される。
【0048】
自律走行体1においては、推定された自己位置が、走行スケジュールSCに示された通過点(サブゴールと呼ぶ)を通過したか否かにより、自律走行の制御が行われる。従って、走行スケジュールSCは、環境地図データM1に基づいて計画される。すなわち、走行スケジュールSCは、第1座標系上に定められる。
【0049】
局所地図データM2は、自律走行体1の周囲に存在する物体の位置を表す地図情報である。局所地図データM2は、環境地図データM1とともに、自律走行体1の自己位置の推定の際に用いられる。このため、局所地図データM2は、自律走行体1が自律走行中に自己位置を推定する毎に取得される。すなわち、自律走行体1が自律走行中に推定された複数の自己位置に対応するよう、複数の局所地図データM2が記憶部133に記憶される。自律走行中の自己位置推定の際に取得された複数の局所地図データM2は、新たな環境地図データM1を作成する際に用いられる。なお、上記にて説明したとおり、局所地図データM2も、第1座標系上に定められる地図データである。
【0050】
自己位置データPDは、自律走行体1の自律走行中に推定された自己位置を記憶する。自己位置データPDは、所定の座標点に変換された後に、表示対象地図データM3上にプロットされる。自己位置データPDは自律走行体1が走行した経路を表すので、表示対象地図データM3上に自己位置データPDをプロットすることで、表示対象地図データM3上に自律走行体1が走行した経路を視覚的に表示させることができる。
【0051】
(4)コンピュータの構成
図7を用いて、自律走行体システム100に備わるコンピュータ2の構成を説明する。図7は、コンピュータ2の構成を示す図である。コンピュータ2は、処理部21と、記憶部23と、を有する。処理部21は、コンピュータ2を構成するCPU、ネットワークインタフェース、各種入出力インタフェース等により構成され、自律走行体1に関する各種情報処理を行う。処理部21は、当該情報処理を、記憶部23に記憶されたコンピュータプログラムを実行することにより実現する。
【0052】
具体的には、処理部21は、移動領域Aにおける自律走行体1の自己位置を自律走行体1から受信し、この自己位置を、後述する表示対象地図データM3上に表示する。また、処理部21は、自己位置を表示対象地図データM3に表示するための前処理を実行する。その他、処理部21は、自律走行体システム100の管理に関する情報処理、自律走行体1に関する各種設定を行うための処理を実行してもよい。
【0053】
記憶部23は、コンピュータ2の記憶装置により構成され、コンピュータ2において実行される各種情報処理のために必要な各種データ及び/又はパラメータを記憶する。具体的には、記憶部23は、表示対象地図データM3と、変換行列MXと、を記憶する。
【0054】
表示対象地図データM3は、自律走行体1の自己位置を表示するための地図データである。表示対象地図データM3は、上記の環境地図データM1とは個別に作成され、例えば、移動領域Aを表す間取り図、イラスト等である。
【0055】
例えば、間取り図である表示対象地図データM3は、環境地図データM1が作成された高さ基準位置(物体検出センサ15の取付位置とほぼ同じ位置)とは異なる高さ基準位置で作成される。このため、間取り図である表示対象地図データM3は、環境地図データM1には含まれていない物体を含んでいたり、環境地図データM1にも含まれる物体の位置、形状、大きさ等が環境地図データM1と一致しなかったりすることがある。また、イラストである表示対象地図データM3は、地図の見やすさ等を考慮して、実際の移動領域A及び環境地図データM1とは縮尺を異ならせて作成されることがある。
【0056】
このように、表示対象地図データM3と環境地図データM1とは、移動領域Aを表すという点で外見上は類似しているが、寸法上は完全一致していない。このため、表示対象地図データM3は、環境地図データM1とは異なる座標系上に定められていると言える。表示対象地図データM3を定める座標系を、第2座標系と呼ぶ。
【0057】
変換行列MXは、環境地図データM1を定める第1座標系を、表示対象地図データM3を定める第2座標系に変換するための行列である。上記のように、自律走行体1においては、自己位置は、第1座標系上の座標点として推定される。変換行列MXは、第1座標系上の自己位置を、第2座標系上の座標点に変換するために用いられる。
【0058】
処理部21は、表示部25に接続される。表示部25は、コンピュータ2に関する各種情報を表示する。表示部25は、例えば、表示対象地図データM3上に、自律走行体1の自己位置を表示する。表示部25は、例えば、液晶ディスプレイ、有機ELディスプレイなどの表示装置である。
【0059】
(5)自律走行体システムの動作
図8を用いて、自律走行体システム100の動作を説明する。図8は、自律走行体システムの動作を示すフローチャートである。以下では、自律走行体システム100において、自律走行体1を自律走行させ、自律走行中に推定された自律走行体1の自己位置を、表示対象地図データM3上に表示する動作を説明する。
【0060】
まず、自律走行体システム100の初期動作が実行される。具体的には、自律走行体1においては、自律走行体1を自律走行させる前に、環境地図データM1と走行スケジュールSCを作成し、記憶部133に記憶する。環境地図データM1は、例えば、以下のようにして作成される。
【0061】
まず、ユーザの操作により自律走行体1を移動領域A内にて移動させつつ、制御部131が、所定の周期で局所地図データM2を取得し、自律走行体1の自己位置を推定する。次に、制御部131が、取得した各局所地図データM2を、当該局所地図データM2を取得したときに推定された自己位置に配置することで、移動領域Aにおける物体の存在位置を表す環境地図データM1を作成する。その他、環境地図データM1は、例えば、移動領域Aのレイアウトを表すCADデータから作成されてもよい。
【0062】
走行スケジュールSCは、以下のようにして作成される。走行スケジュールSCは、環境地図データM1上(すなわち、第1座標系上)に計画される。詳細には、まず、記憶部133に記憶された環境地図データM1において、走行スケジュールSCの移動開始位置と移動終了位置とを定める。
【0063】
次に、環境地図データM1において、定められた移動開始位置から移動終了位置までに存在する障害物OBを、自律走行体1に急激なターンをさせることなく回避する経路が計画される。その後、計画された経路上に複数のサブゴール点を設定し、当該複数のサブゴール点の座標値を走行スケジュールSCに記憶する。さらに、走行スケジュールSCに記憶された各サブゴール点に、当該サブゴール点における車体3の姿勢角を関連付ける。車体3の姿勢角は、自律走行体1の進行方向を表す。
【0064】
なお、走行スケジュールSCに記録する情報は、上記のみに限られない、例えば、走行スケジュールSCにおいて、各サブゴール点に到達する時刻を関連付けて記憶してもよい。その他、各サブゴール点を通過するときの速度を関連付けて記憶してもよい。
【0065】
また、走行スケジュールSCは、移動領域Aにおいて自律走行させたい経路に沿って自律走行体1をユーザの操作により走行させつつ、所定の周期で自律走行体1の自己位置を推定し、推定された自己位置を自律走行経路のサブゴール点として記録することで作成されてもよい。ユーザの操作により自律走行体1を走行させて走行スケジュールSCを作成する際に、上記にて説明した方法で環境地図データM1を作成してもよい。
【0066】
一方、コンピュータ2においては、変換行列MXが算出され、記憶部23に記憶される。詳細には、以下のようにして算出される。まず、環境地図データM1上の所定の座標点を第1座標点と決定し、表示対象地図データM3上の第1座標点に対応する第2座標点と、を決定する(ステップS1)。なお、以下の説明では、第1座標系上の座標点を(x,y)と表し、第2座標系上の座標点を(X,Y)と表す。
【0067】
本実施形態において、環境地図データM1と表示対象地図データM3との形状の違いを台形補正することを考慮して、変換行列MXを3×3(3行3列)の行列として定義する。すなわち、変換行列MXは、9つの成分を有する行列である。9つの成分のうち、3行3列の成分は、定数(例えば、1)とする。従って、この段階での変換行列MXは、8つの未知の成分を含む。8つの未知の成分を算出するために、4つの第1座標点と、この4つの第1座標点に対応する4つの第2座標点を決定する。これにより、8つの未知の成分を算出するための8つの連立方程式を作成できる。
【0068】
第1座標点及び第2座標点は、自律走行体1の物体検出センサ15により特徴的な物体が検出され、かつ、表示対象地図データM3にも当該物体が表示されている座標点とすることが好ましい。また、第1座標点及び第2座標点は、環境地図データM1及び/又は表示対象地図データM3の四隅(あるいは、環境地図データM1において自己位置が推定された部分領域の四隅)に近い箇所の座標点とすることが好ましい。これにより、必要な範囲において正確な変換行列MXを算出できる。
【0069】
例えば、図9に示すように、環境地図データM1上の四隅に近い位置に、p11(座標値を(x1,y1)とする)、p12(座標値を(x2,y2)とする)、p13(座標値を(x3,y3)とする)、p14(座標値を(x4,y4)とする)との第1座標点を設定できる。一方、表示対象地図データM3においては、環境地図データM1上のp11に対応するP21(座標値を(X1,Y1)とする)、環境地図データM1上のp12に対応するP22(座標値を(X2,Y2)とする)、環境地図データM1上のp13に対応するP23(座標値を(X3,Y3)とする)、環境地図データM1上のp14に対応するP24(座標値を(X4,Y4)とする)との第2座標点を設定できる。図9は、第1座標点と第2座標点の設定の一例を示す図である。
【0070】
第1座標点と第2座標点とを決定後、処理部21は、決定した第1座標点と第2座標点に基づいて、変換行列MXを算出して記憶部23に記憶する(ステップS2)。詳細には、以下のようにして変換行列MXが算出される。まず、8つの未知数を含む変換行列MXの各未知数を算出するために、第1座標点と第2座標点とを用いて、8つの連立方程式を作成する。
【0071】
8つの連立方程式は、ある特定の第1座標点を変換行列MXにより座標変換すると、この第1座標点に対応する第2座標点が算出されることに基づいて作成できる。詳細には、第1座標点p11を変換行列MXにより座標変換すると、第2座標点P21が算出されることに基づいて、(X1,Y1,1)=[M](x1,y1,1)([M]:変換行列MX)との式を作成する。この式から、2つの方程式を作成できる。第1座標点p12を変換行列MXにより座標変換すると、第2座標点P22が算出されることに基づいて、(X2,Y2,1)=[M](x2,y2,1)との式を作成する。この式から、2つの方程式を作成できる。第1座標点p13を変換行列MXにより座標変換すると、第2座標点P23が算出されることに基づいて、(X3,Y3,1)=[M](x3,y3,1)との式を作成する。この式から、2つの方程式を作成できる。第1座標点p14を変換行列MXにより座標変換すると、第2座標点P24が算出されることに基づいて、(X4,Y4,1)=[M](x4,y4,1)との式を作成する。この式から、2つの方程式を作成できる。このようにして合計8つの連立方程式を作成できる。
【0072】
次に、上記のように作成された8つの連立方程式を解くことにより、変換行列MXに含まれていた8つの未知数について具体的な数値が算出される。すなわち、変換行列MXが具体的に算出される。
【0073】
なお、変換行列MXが算出され記憶部23に記憶された後、移動領域Aにおける物体の配置状態が変化したなどの理由により環境地図データM1が更新された場合には、更新された環境地図データM1に基づいて、上記と同様の方法で新たな変換行列MXが算出される。これにより、更新された環境地図データM1に応じた適切な変換行列MXを算出できる。この結果、環境地図データM1が更新されても、自律走行体1の自己位置を表示対象地図データM3上に正確に表示できる。
【0074】
環境地図データM1の更新は、例えば、記憶部133に記憶された各局所地図データM2を、当該局所地図データM2を取得したときに推定された自己位置に対応する位置に配置することで、新たな環境地図データM1を作成し、記憶部133に記憶された環境地図データM1を新たな環境地図データM1に置き換えることで実現できる。
【0075】
自律走行体システム100において、上記の初期動作を実行後、自律走行体1を走行スケジュールSCに従って自律走行させる(ステップS3)。自律走行は、図10に示すフローチャートに従って実行される。図10は、自律走行動作を示すフローチャートである。
【0076】
まず、制御部131が、物体検出センサ15から、現在の車体3の周囲に存在する物体の配置位置を表す局所地図データM2を取得する(ステップS11)。
【0077】
次に、制御部131が、自律走行体1の現在の自己位置を推定する(ステップS12)。現在の自己位置は、前回の自己位置推定実行時から現在までの駆動輪51の回転量と、環境地図データM1と、ステップS11で取得された局所地図データM2と、に基づいて、環境地図データM1を定義する座標系の座標値として推定される。詳細には、以下のようにして自己位置が推定される。
【0078】
まず、制御部131が、駆動輪51の回転量に基づいて自律走行体1の現在位置を推定する。また、前回の自己位置推定で推定された車体3の姿勢角と、駆動輪51の回転量と、に基づいて、現在の車体3の姿勢角を推定する。車体3の姿勢角は、現在の車体3の進行方向と所定の基準軸とのなす角度である。
【0079】
次に、制御部131は、環境地図データM1上において、駆動輪51の回転量に基づいて推定された位置の周囲の複数の候補位置に、ステップS11で取得した局所地図データM2を配置する。また、各候補位置において、駆動輪51の回転量に基づいて推定された姿勢角の近傍に設定された複数の候補角度だけ局所地図データM2を回転させる。
【0080】
その後、各候補位置に配置し回転した局所地図データM2と環境地図データM1との一致度を評価する。複数の候補位置のうち、環境地図データM1との一致度が最も高い局所地図データM2が配置された候補位置を現在の存在位置と推定する。また、複数の候補角度のうち、回転後の局所地図データが環境地図データM1と最も一致するときの候補角度(すなわち、局所地図データの回転角度)を、現在の車体3の姿勢角と推定する。
【0081】
自己位置を推定後、制御部131は、ステップS12で推定した自己位置を、自己位置データPDとして記憶部133に記憶する(ステップS13)。ステップS12の自己位置の推定は、所定の周期で実行される。従って、自己位置データPDには、自律走行中に所定の周期で推定された自己位置が逐次記憶される。
【0082】
また、制御部131は、ステップS12の自己位置の推定に用いた局所地図データM2を、記憶部133に記憶する(ステップS14)。局所地図データM2は、自己位置の推定毎に作成される。従って、局所地図データM2は、自己位置データPDに含まれる自己位置に対応して、記憶部133に逐次記憶される。局所地図データM2は、現在実行中の自律走行時における物体の最新の配置状態を示している。従って、局所地図データM2は、環境地図データM1に示された物体の配置状態が変化したと判断された場合に、新たな環境地図データM1を作成する際に用いられる。
【0083】
その後、制御部131は、ステップS12で推定した自己位置と、走行スケジュールSCに含まれる次の目標到達点であるサブゴールと、に基づいて走行部5を制御する(ステップS15)。具体的には、制御部131は、現在の自己位置から走行スケジュールSCの次の目標到達点まで自律走行体1を走行させる走行指令を算出し、当該走行指令に基づいてモータ59を制御する。
【0084】
なお、自律走行の実行時に障害物検知部7及び物体検出センサ15の少なくとも一方が障害物OB等の物体を検知した場合、制御部131は、検知した物体を回避する回避経路を計画し、当該回避経路を走行して物体を回避した後に自律走行経路へと戻る。
【0085】
上記のステップS11~S15を実行中に、制御部131は、自律走行が終了したか否かを判断する(ステップS16)。自律走行は、例えば、自律走行体1が走行スケジュールSCに含まれる最後のサブゴール(すなわち、移動終了位置)に到達した場合、ユーザ操作等により指令された場合、物体を安全に回避できないと判断された場合、に終了する。
【0086】
自律走行を継続すると判断した場合(ステップS16で「No」)、上記のステップS11~S16が繰り返し実行される。一方、自律走行を終了すると判断した場合(ステップS16で「Yes」)、制御部131は、自律走行を終了する。
【0087】
図8のフローチャートに示す動作の説明に戻る。自律走行を終了後、処理部21は、上記のステップS3で生成され自律走行体1の記憶部133に記憶された自己位置データPDを取得する。
【0088】
処理部21は、記憶部23に記憶された変換行列MXを用いて、自律走行体1から取得した自己位置データPDの座標変換を行う(ステップS4)。詳細には、自己位置データPDに含まれ第1座標系上の座標点として算出された複数の自己位置のそれぞれを、変換行列MXを用いて、第2座標系上の座標点に変換する。より詳細には、自己位置を(xp,yp)とし、変換後の座標点を(Xp,Yp)とすると、(Xp,Yp,1)=[M](xp,yp,1)([M]:変換行列MX)との式から、Xp、Ypの具体的な値を算出できる。この第2座標系上の座標点の算出を、自己位置データPDに含まれる複数の自己位置のそれぞれに対して実行することで、座標変換された自己位置データPDを作成できる。
【0089】
また、処理部21は、記憶部23に記憶された変換行列MXを用いて、走行スケジュールSCを第2座標系における経路に変換する。詳細には、処理部21は、走行スケジュールSCに含まれる各サブゴールに対して上記と同様の演算を行うことで、これを実現する。
【0090】
上記のようにして座標変換された自己位置データPDと走行スケジュールSCを作成後、処理部21は、座標変換された自己位置データPDに含まれる、第2座標系上の座標点に変換された各自己位置を表示対象地図データM3上にプロットし、表示対象地図データM3と自己位置データPDとを表示部25に表示する(ステップS5)。また、処理部21は、座標変換された走行スケジュールSCに含まれる、第2座標系上の座標点に変換された各サブゴールを結んだ直線を、表示対象地図データM3上に表示する。
【0091】
例えば、環境地図データM1(第1座標系)上において、図11に示すような走行スケジュールSC(図11にて破線で示す)が計画され、この走行スケジュールSCに従って自律走行した結果、図11に示すような自己位置データPD(図11にて白丸で示す)が得られたとすると、処理部21は、図12に示すような、表示対象地図データM3、走行スケジュールSC、自己位置データPDを表示部25に表示する。図11は、環境地図データ上の走行スケジュールと自己位置データの一例を示す図である。図12は、表示対象地図データ上に走行スケジュールと自己位置データを表示した表示例を示す図である。
【0092】
このように、自律走行体システム100では、環境地図データM1を定める第1座標系から表示対象地図データM3を定める第2座標系への変換行列MXを算出し、環境地図データM1に基づいて推定された(すなわち、第1座標系上の)自己位置データPD(及び走行スケジュールSC)を変換行列MXにより第2座標系上の座標点に変換している。これにより、第1座標系とは異なる第2座標系に定められた任意の表示対象地図データM3上の適切な位置に自己位置データPD(及び走行スケジュールSC)を表示できる。
【0093】
2.第2実施形態
上記の第1実施形態においては、環境地図データM1と表示対象地図データM3とを1つの大きな領域として扱い、第1座標系を第2座標系に座標変換する変換行列MXが1つ算出されていた。しかし、これに限られない。環境地図データM1を複数の第1領域に分割し、表示対象地図データM3を第1領域に対応するよう複数の第2領域に分割し、各領域が独自の座標系を有するとしてもよい。例えば、図13に示すように、環境地図データM1を8つの第1領域A1~A8に分割し、表示対象地図データM3を対応する8つの第2領域A1’~A8’と分割してもよい。図13は、地図データの分割の一例を示す図である。
【0094】
この場合、8つの第1領域A1~A8がそれぞれ独自の座標系を有し、対応する8つの第2領域A1’~A8’がそれぞれ独自の座標系を有する。従って、処理部21は、第1領域A1とそれに対応する第2領域A1’との組に対して変換行列MX1を算出し、第1領域A2とそれに対応する第2領域A2’との組に対して変換行列MX2を算出し、第1領域A3とそれに対応する第2領域A3’との組に対して変換行列MX3を算出し、第1領域A4とそれに対応する第2領域A4’との組に対して変換行列MX4を算出し、第1領域A5とそれに対応する第2領域A5’との組に対して変換行列MX5を算出し、第1領域A6とそれに対応する第2領域A6’との組に対して変換行列MX6を算出し、第1領域A7とそれに対応する第2領域A7’との組に対して変換行列MX7を算出し、第1領域A8とそれに対応する第2領域A8’との組に対して変換行列MX8を算出する。これは、1つの第1領域A1~A8とそれに対応する第2領域A1’~A8’との組のそれぞれについて、上記のステップS1と同様の処理を実行することで実現できる。
【0095】
1つの第1領域と1つの第2領域の組のそれぞれに対して変換行列MX1~MX8を算出後、処理部21は、表示対象地図データM3上に表示したい自己位置が、環境地図データM1の複数の第1領域A1~A8のうちどの第1領域に含まれるかを判断し、当該自己位置に適用する変換行列MX1~MX8を選択する。例えば、表示対象地図データM3上に表示したい自己位置が第1領域A3に存在する場合には、第1領域A3と第2領域A3’の組に対して算出された変換行列MX3が選択される。
【0096】
その後、処理部21は、選択した変換行列MX1~MX8(上記の例では変換行列MX3)を用いて、表示対象地図データM3上に表示したい自己位置を、当該自己位置を含む第1領域(上記の例では第1領域A3)に対応する第2領域(上記の例では第2領域A3’)内の座標点に変換する。
【0097】
さらに、処理部21は、表示部25において、第2領域(上記の例では第2領域A3’)内の座標点に変換した自己位置を、当該自己位置を含む第1領域(上記の例では第1領域A3)に対応する第2領域(上記の例では第2領域A3’)上に表示させる。
【0098】
上記のように、環境地図データM1を分割して得られた1つの第1領域A1~A8と、表示対象地図データM3を分割して得られた対応する1つの第2領域A1’~A8’と、の組毎に変換行列MX1~MX8を算出することで、表示対象地図データM3上に自律走行体1の自己位置をより正確に表示できる。
【0099】
なお、第2実施形態の自律走行体システム100は、上記の第1実施形態の自律走行体システム100が有する機能を同様に有していてもよい。具体的には、コンピュータ2は、自律走行体1の走行経路を走行スケジュールSCとして環境地図データM1上に計画し、変換行列MX1~MX8を用いて、走行経路(走行スケジュールSC)を第2座標系における経路に変換し、第2座標系における経路に変換した走行経路を表示対象地図データM3上に表示してもよい。
【0100】
また、コンピュータ2は、移動領域Aにおける物体の配置状態が変化したなどの理由により環境地図データM1が更新された場合には、当該環境地図データM1を更新し、更新された環境地図データM1に基づいて新たな変換行列を算出してもよい。この場合、コンピュータ2は、環境地図データM1の一部を更新したい場合には、当該一部を含む領域の環境地図データM1のみを更新し、この領域の座標変換に用いる変換行列のみを更新してもよい。
【0101】
2.実施形態の特徴
上記第1実施形態~第2実施形態は、下記の特徴を有している。
(1)自律走行体システム(例えば、自律走行体システム100)は、自律走行体(例えば、自律走行体1)と、コンピュータ(例えば、コンピュータ2)と、を備える。自律走行体は、所定の領域(例えば、移動領域A)内を走行する。コンピュータは、自律走行体に関する情報処理を実行する。コンピュータは、以下の処理を実行する。
◎環境地図(例えば、環境地図データM1)における第1座標点(例えば、第1座標点p11~p14)と、表示対象地図(例えば、表示対象地図データM3)において第1座標点に対応する第2座標点(例えば、第2座標点P21~P24)と、を決定する。環境地図は、第1座標系上に定められ所定の領域を表す。表示対象地図は、第1座標系とは異なる第2座標系上に定められた地図である。
◎第1座標点と第2座標点に基づいて、第1座標系から第2座標系への座標変換を行う変換行列(例えば、変換行列MX、変換行列MX1~MX8)を算出する。
◎変換行列を用いて、環境地図に基づいて推定された所定の領域内における自律走行体の自己位置を、第2座標系上の座標点に変換する。
◎第2座標系上の座標点に変換された自己位置を、表示対象地図上に表示する。
【0102】
上記の自律走行体システムでは、所定の領域内における自律走行体の自己位置は、環境地図に基づいて推定される。すなわち、自己位置は、環境地図を定める第1座標系上の位置である。そのため、コンピュータが、環境地図を定める第1座標系から自己位置を表示させる表示対象地図を定める第2座標系への座標変換を行う変換行列を算出し、当該変換行列を用いて推定された自己位置を第2座標系上の座標点に変換し、変換された自己位置を表示対象地図上に表示している。
【0103】
このように、第1座標系から第2座標系への変換行列を算出し、環境地図に基づいて推定された自己位置を変換行列により第2座標系上の座標点に変換することで、第1座標系とは異なる第2座標系に定められた任意の表示対象地図上の適切な位置に自己位置を表示できる。
【0104】
(2)上記(1)の自律走行体システムにおいて、環境地図は複数の第1領域(例えば、第1領域A1~A8)に分割され、表示対象地図は複数の第1領域に対応するよう複数の第2領域(例えば、第2領域A1’~A8’)に分割されてもよい。この場合、コンピュータは、以下を実行してもよい。
◎各第1領域と当該第1領域に対応する第2領域との各組に対して変換行列を算出する。
◎複数の第1領域のうち自己位置を含む第1領域とこれに対応する第2領域との組に対して算出された変換行列を選択する。
◎選択された変換座標を用いて、自己位置を、当該自己位置を含む第1領域に対応する第2領域内の座標点に変換する。
◎第2領域内の座標点に変換された自己位置を、当該自己位置を含む第1領域に対応する第2領域上に表示する。
【0105】
このように、環境地図を分割して得られた1つの第1領域と、表示対象地図を分割して得られた対応する1つの第2領域と、の組毎に変換行列を算出することで、表示対象地図上に自律走行体の自己位置をより正確に表示できる。
【0106】
(3)上記(1)~(2)の自律走行体システムにおいて、コンピュータは、自律走行体の走行経路(例えば、走行スケジュールSC)を環境地図上に計画し、変換行列を用いて走行経路を第2座標系における経路に変換し、第2座標系における経路に変換した走行経路を表示対象地図上に表示してもよい。このように、自律走行体が走行予定の走行経路も表示対象地図に表示することで、自律走行体の走行予測や自律走行の進捗率を把握しやすくなる。
【0107】
(4)上記(1)~(3)の自律走行体システムにおいて、コンピュータは、環境地図を更新し、更新された環境地図に基づいて新たな変換行列を算出してもよい。これにより、更新された環境地図に応じた適切な変換行列を算出できる。この結果、環境地図が更新されても、自律走行体の自己位置を表示対象地図上に正確に表示できる。
【0108】
(5)本発明の他の態様に係る位置表示方法は、所定の領域内を走行する自律走行体の位置を表示対象地図に表示する位置表示方法である。位置表示方法は、以下のステップを備える。
◎第1座標系上に定められた環境地図における第1座標点と、第2座標系上に定められた表示対象地図において第1座標点に対応する第2座標点と、を決定するステップ(例えば、ステップS1)。
◎第1座標点と第2座標点に基づいて、第1座標系から第2座標系への座標変換を行う変換行列を算出するステップ(例えば、ステップS2)。
◎環境地図に基づいて、所定の領域内における前記自律走行体の自己位置を推定するステップ(例えば、ステップS12~S13)。
◎変換行列を用いて、推定された自己位置を第2座標系上の座標点に変換するステップ(例えば、ステップS4)。
◎第2座標系上の座標点に変換された自己位置を、表示対象地図上に表示するステップ(例えば、ステップS5)。
【0109】
上記の位置表示方法では、所定の領域内における自律走行体の自己位置は、環境地図に基づいて推定される。すなわち、自己位置は、環境地図を定める第1座標系上の位置である。そのため、位置表示方法では、環境地図を定める第1座標系から自己位置を表示させる表示対象地図を定める第2座標系への座標変換を行う変換行列を算出し、当該変換行列を用いて推定された自己位置を第2座標系上の座標点に変換し、変換された自己位置を表示対象地図上に表示している。
【0110】
このように、第1座標系から第2座標系への変換行列を算出し、環境地図に基づいて推定された自己位置を変換行列により第2座標系上の座標点に変換することで、第1座標系とは異なる第2座標系に定められた任意の表示対象地図上の適切な位置に自己位置を表示できる。
【0111】
(6)上記(5)の位置表示方法において、環境地図は、複数の第1領域に分割され、表示対象地図は、複数の第1領域に対応するよう複数の第2領域に分割されてもよい。この場合、変換行列を算出するステップは、各第1領域と当該第1領域に対応する第2領域との各組に対して変換行列を算出するステップを含んでもよい。また、自己位置を第2座標系上の座標点に変換するステップは、複数の第1領域のうち自己位置を含む第1領域とこれに対応する第2領域との組に対して算出された変換行列を選択するステップと、選択された変換座標を用いて、自己位置を、当該自己位置を含む第1領域に対応する第2領域内の座標点に変換するステップと、を含んでもよい。さらに、自己位置を表示対象地図上に表示するステップは、第2領域内の座標点に変換された自己位置を、当該自己位置を含む第1領域に対応する第2領域上に表示するステップを含んでもよい。
【0112】
このように、環境地図を分割して得られた1つの第1領域と、表示対象地図を分割して得られた対応する1つの第2領域と、の組毎に変換行列を算出することで、表示対象地図上に自律走行体の自己位置をより正確に表示できる。
【0113】
(7)上記(5)~(6)の位置表示方法は、以下のステップをさらに備えてもよい。
◎自律走行体の走行経路を環境地図上に計画するステップ。
◎変換行列を用いて、走行経路を第2座標系における経路に変換するステップ。
◎第2座標系における経路に変換した走行経路を表示対象地図上に表示するステップ。
【0114】
このように、自律走行体が走行予定の走行経路も表示対象地図に表示することで、自律走行体の走行予測や自律走行の進捗率を把握しやすくなる。
【0115】
(8)上記(5)~(7)の位置表示方法は、環境地図を更新するステップと、更新された環境地図に基づいて新たな変換行列を算出するステップと、をさらに備えてもよい。これにより、更新された環境地図に応じた適切な変換行列を算出できる。この結果、環境地図が更新されても、自律走行体の自己位置を表示対象地図上に正確に表示できる。
【0116】
3.他の実施形態
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
(A)図8及び図10に示すフローチャートの各ステップの処理内容、及び/又は、フローチャートにおける各ステップの処理順は、発明の要旨を逸脱しない範囲で適宜変更できる。
【0117】
(B)上記のコンピュータ2にて実現される機能の一部又は全部が、制御装置13において実現されてもよい。コンピュータ2にて実現される機能の全部を制御装置13により実現する場合には、コンピュータ2と制御装置13とを同一の装置としてもよい。
【0118】
(C)例えば、環境地図データM1(第1座標系)と表示対象地図データM3(第2座標系)との間で台形補正が必要でない場合などにおいては、変換行列MXを2×2(2行2列)の行列としてもよい。この場合、ステップS1において、第1座標点と第2座標点は、それぞれ、少なくとも2つ選択すればよい。
【0119】
(D)自律走行体1の制御装置13は、走行中に推定された自己位置を、自己位置を推定する毎にコンピュータ2に送信してもよい。また、コンピュータ2は、自律走行体1から自己位置を受信する毎に、受信した自己位置を表示対象地図データM3上に表示してもよい。これにより、自律走行体1の走行の状態を、表示対象地図データM3上にリアルタイムに表示できる。
【産業上の利用可能性】
【0120】
本発明は、所定の領域内を走行する自律走行体と自律走行体に関する情報処理を実行するコンピュータとを備える自律走行体システム、及び、自律走行体の位置を任意の地図に表示する位置表示方法に広く適用できる。
【符号の説明】
【0121】
100 :自律走行体システム
1 :自律走行体
2 :コンピュータ
21 :処理部
23 :記憶部
25 :表示部
3 :車体
5 :走行部
7 :障害物検知部
9 :カメラ
11 :バンパスイッチ
13 :制御装置
131 :制御部
133 :記憶部
15 :物体検出センサ
51 :駆動輪
53 :前側従動輪
55 :後側従動輪
57 :駆動輪支持構造
59 :モータ
61 :エンコーダ
A :移動領域
SH :商品陳列棚
ST :充電ステーション
W :壁
M1 :環境地図データ
M2 :局所地図データ
M3 :表示対象地図データ
A1~A8 :第1領域
A1’~A8’ :第2領域
MX、MX1~MX8 :変換行列
p11~p14 :第1座標点
P21~P24 :第2座標点
PD :自己位置データ
SC :走行スケジュール
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13