(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-02-27
(45)【発行日】2025-03-07
(54)【発明の名称】マップ作成システム及び自動走行システム
(51)【国際特許分類】
G09B 29/00 20060101AFI20250228BHJP
G05D 1/246 20240101ALI20250228BHJP
G05D 1/43 20240101ALI20250228BHJP
G01S 17/89 20200101ALI20250228BHJP
【FI】
G09B29/00 Z
G05D1/246
G05D1/43
G01S17/89
(21)【出願番号】P 2024048728
(22)【出願日】2024-03-25
【審査請求日】2024-10-16
【新規性喪失の例外の表示】特許法第30条第2項適用 展示会名: CEATEC 2023 開催場所: 幕張メッセ (千葉県千葉市美浜区中瀬2-1) 公開日 : 令和5年10月17日~10月20日
【早期審査対象出願】
(73)【特許権者】
【識別番号】517103784
【氏名又は名称】Haloworld株式会社
(73)【特許権者】
【識別番号】000001373
【氏名又は名称】鹿島建設株式会社
(73)【特許権者】
【識別番号】506209422
【氏名又は名称】地方独立行政法人東京都立産業技術研究センター
(74)【代理人】
【識別番号】110002468
【氏名又は名称】弁理士法人後藤特許事務所
(72)【発明者】
【氏名】品田 昌寛
(72)【発明者】
【氏名】日高 洋士
(72)【発明者】
【氏名】土岐 亮太
(72)【発明者】
【氏名】岡 尚人
(72)【発明者】
【氏名】木内 仁紀
(72)【発明者】
【氏名】諸橋 俊大
(72)【発明者】
【氏名】中村 佳雅
【審査官】嶋田 行志
(56)【参考文献】
【文献】特開2022-098432(JP,A)
【文献】特開2024-022888(JP,A)
【文献】特開2023-112670(JP,A)
【文献】特開2007-041657(JP,A)
【文献】特開2016-028311(JP,A)
【文献】特開2023-112659(JP,A)
【文献】国際公開第2023/112515(WO,A1)
【文献】国際公開第2023/139793(WO,A1)
【文献】国際公開第2023/276187(WO,A1)
【文献】米国特許出願公開第2021/0000006(US,A1)
【文献】米国特許出願公開第2013/0325244(US,A1)
【文献】米国特許出願公開第2020/0109954(US,A1)
【文献】米国特許出願公開第2020/0029488(US,A1)
【文献】米国特許出願公開第2020/0394410(US,A1)
【文献】米国特許出願公開第2019/0370691(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G09B 29/00
G05D 1/00-G05D 1/87
G01S 17/00-G01S 17/95
G08G 1/00-G08G 99/00
G01C 21/00-G01C 21/36
B25J 1/00-B25J 13/08
A01B 69/00-A01B 69/08
B60W 30/00-B60W 60/00
A47L 11/00-A47L 13/62
JSTPlus/JST7580/JSTChina(JDreamIII)
AgriKnowledge
(57)【特許請求の範囲】
【請求項1】
周囲を計測して三次元点群データを取得する第1三次元点群データ取得部と、
前記第1三次元点群データ取得部によって取得された三次元点群データのうち、
水平方向の任意の一平面に高さ方向における所定の範囲内の三次元点群データを
前記高さ方向に投影して二次元の広域マップを作成する広域マップ作成部と、を備えたマップ作成システム。
【請求項2】
目的地まで自動走行する自動走行体と、
請求項1に記載されたマップ作成システムによって得られた前記広域マップを記憶する記憶部と、
前記自動走行体に搭載され、前記自動走行体の周囲を計測して所定の水平面上の二次元点群データを取得する二次元点群データ取得部と、
前記記憶部に記憶された前記広域マップと前記二次元点群データ取得部によって取得された二次元点群データとに基づいて、前記自動走行体の走行動作を制御する制御部と、を備え、
前記広域マップ作成部は、前記二次元点群データ取得部によって計測する前記水平面を含む所定の範囲内の三次元点群データから前記広域マップを作成する自動走行システム。
【請求項3】
目的地まで自動走行する自動走行体と、
請求項1に記載されたマップ作成システムによって得られた前記広域マップを記憶する記憶部と、
前記自動走行体に搭載され、前記自動走行体の周囲を計測して三次元点群データを取得する第2三次元点群データ取得部と、
前記第2三次元点群データ取得部によって取得された三次元点群データのうち、
水平方向の任意の一平面に前記高さ方向における所定の範囲内の三次元点群データを
前記高さ方向に投影して前記自動走行体の周辺の二次元の周辺マップを作成する周辺マップ作成部と、
前記記憶部に記憶された前記広域マップと前記周辺マップ作成部によって作成した前記周辺マップとに基づいて、前記自動走行体の走行動作を制御する制御部と、を備えた自動走行システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マップ作成システム及び自動走行システムに関する。
【背景技術】
【0002】
特許文献1には、車輪を有する移動体が自律走行する移動体制御装置の発明が開示されている。
【0003】
特許文献1に記載された移動体制御装置では、移動体が自律走行する前に、走行エリア内を移動体を走行させて環境マップ(広域マップ)をSLAM(Simultaneous Localization and Mapping)技術に基づいて作成している。そして、移動体は、環境マップと移動体に搭載された二次元LiDAR(Light Detection And Ranging)によって認識した周囲の状況(二次元点群データ)とに基づいて自律走行する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
二次元LiDARは、周囲の状況を二次元(平面)で認識する。特許文献1に記載された発明は、環境マップと二次元LiDARによって認識した周囲の状況とを比較するものであるため、二次元LiDARの測定位置に合わせた環境マップを予め用意する必要がある。
【0006】
ところで、特許文献1に記載されるような発明において、同じ空間において複数の移動体を走行させたいという要望がある。この場合に、移動体に搭載された二次元LiDARの設置位置(高さ)が移動体によって異なっていると、それぞれの移動体に搭載された二次元LiDARの設置位置(高さ)に合わせた環境マップ(広域マップ)が必要となる。この場合には、各移動体が自律走行する前に、それぞれの設置位置(高さ)に応じた環境マップ(広域マップ)を作成する必要があるため、過度の労力と時間を要する。
【0007】
本発明は、様々な高さの広域マップを容易に作成することができるマップ作成システムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明は、周囲を計測して三次元点群データを取得する第1三次元点群データ取得部と、第1三次元点群データ取得部によって取得された三次元点群データのうち、水平方向の任意の一平面に高さ方向における所定の範囲内の三次元点群データを高さ方向に投影して二次元の広域マップを作成する広域マップ作成部と、を備える。
【発明の効果】
【0009】
本発明によれば、様々な高さの広域マップを容易に作成することができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、本発明の実施形態に係るマップ作成システム及び自動走行システムのブロック図である。
【
図2】
図2は、本発明の実施形態に係るマップ作成システムに係る台車の側面図である。
【
図3】
図3は、本発明の実施形態に係るマップ作成システムに係る台車の上面図である。
【
図4】
図4は、建設現場の所定の区画Rを示す図である。
【
図5】
図5は、本発明の実施形態に係る自動走行体の側面図である。
【
図6】
図6は、本発明の実施形態に係る広域マップを作成するためのフローを示すフローチャートである。
【
図7】
図7(A)は、三次元点群データを一平面で抽出した場合のデータの一部を示す図であり、
図7(B)は、三次元点群データを所定の範囲で抽出して圧縮した場合のデータの一部を示す図である。
【
図8】
図8は、本発明の実施形態に係る自動走行体を自動走行させるときのフローを示すフローチャートである。
【
図9】
図9は、変形例に係る自動走行体の側面図、及び計測した三次元点群データの抽出範囲を説明するための図である。
【
図10】
図10は、変形例に係る広域マップを作成するためのフローを示すフローチャートである。
【
図11】
図11は、変形例に係る自動走行体を自動走行させるときのフローを示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、図面を参照して、本発明の実施形態に係るマップ作成システム10及び自動走行システム100について説明する。
【0012】
本実施形態の自動走行システム100は、例えば、建設現場、物流現場、生産工場、飲食店、あるいは医療現場などにおいて使用される自動走行体1の自動走行を制御するために用いられる。自動走行システム100は、マップ作成システム10と、自動走行体1と、を備える。自動走行システム100は、マップ作成システム10によって作成される広域マップM1と、自動走行体1に搭載されたコントローラ20によって作成される周辺マップM2と、を用いて、自動走行体1を自動走行させる。なお、以下の実施例では、マップ作成システム10及び自動走行システム100を建設現場において用いる場合について説明する。
【0013】
まず、
図1から
図4を参照しながら、マップ作成システム10について説明する。なお、
図1は、自動走行システム100のブロック図である。
【0014】
本実施形態のマップ作成システム10は、建設現場において、自動走行体1を目的地まで自動で走行させるために必要な広域マップM1を作成する。
【0015】
図1に示すように、マップ作成システム10は、第1三次元点群データ取得部11と、コンピューターCと、を備える。コンピューターCは、広域マップ作成部12と、記憶部13と、傾斜補正部14と、を有する。第1三次元点群データ取得部11及びコンピューターCは、台車15(移動体)(
図2及び
図3参照)に搭載される。なお、広域マップ作成部12及び傾斜補正部14は、コンピューターCにおける機能を仮想的なユニットとしたものであり、物理的な存在を意味するものではない。
【0016】
本実施形態では、広域マップ作成部12、記憶部13及び傾斜補正部14は、台車15に搭載される1つのコンピューターCの内部に設けられるが、これらは、同じコンピューター内に設けられていなくてもよい。つまり、コンピューターCは、1つのコンピューターによって構成されているものに限らず、複数のコンピューターによって構成されていてもよい。また、広域マップ作成部12、記憶部13及び傾斜補正部14の一部あるいは全部が、台車15とは異なる場所に設置されたコンピューターに設けられていてもよい。
【0017】
第1三次元点群データ取得部11は、三次元LiDARによって構成され、台車15に搭載される(
図2参照)。なお、以下では、三次元LiDARについても、第1三次元点群データ取得部11と同じ付番「11」を付して説明する。
【0018】
図2及び
図3に示すように、三次元LiDAR11は、台車15の周囲を計測して三次元点群データを取得する。具体的には、三次元LiDAR11は、レーザ光を走査しながら対象物に照射し、その反射光を測定することで対象物(壁や柱など)までの距離及び高さを計測する。なお、三次元LiDAR11によって取得されるデータは、三次元の点の集合体となる(以下では、三次元LiDAR11によって取得されるデータの集合体を「三次元点群データD1」という。)。本実施形態の三次元LiDAR11は、計測距離が数十メートルから200m程度のものが使用される。また、三次元LiDAR11は、
図2や
図3に示すように、三次元LiDAR11を中心として、上下方向及び水平方向における所定の角度の範囲内の計測を行う。
【0019】
マップ作成システム10を用いて、広域マップM1を作成する際には、例えば、作業員が、
図4に示すような建設現場の自動走行体1を自動走行させる区画R内を台車15を押しながら隈なく移動する。その間、三次元LiDAR11は、常時台車15の周囲を計測して三次元点群データD1を取得する。
【0020】
広域マップ作成部12は、三次元LiDAR11によって計測された三次元点群データD1に基づいて、広域マップM1を作成する。本実施形態では、SLAM(Simultaneous Localization and Mapping)技術に基づいて広域マップM1を作成する。なお、本実施形態における広域マップM1とは、柱、壁、及び障害物などを含む区画R全体の二次元の地図を意味する。広域マップM1の具体的な作成方法については、後で詳しく説明する。
【0021】
記憶部13は、三次元LiDAR11によって計測された三次元点群データD1、及び広域マップ作成部12によって作成された広域マップM1などを記憶する。記憶部13は、コンピューターCに搭載されるハードディスク等の各種記憶装置、あるいは、コンピューターCに接続可能なメモリーカード、USBメモリーなどの記憶媒体によって構成される。記憶部13は、台車15に搭載されていてもよく、台車15とは別の場所に設置されたコンピューター等に設けられていてもよい。
【0022】
傾斜補正部14は、三次元LiDAR11によって計測した三次元点群データD1の中から、水平方向の基準となるもの(例えば、床面や天井)の点群データを抽出し、この抽出した点群データの傾斜を算出して、三次元点群データD1の傾きを水平になるように補正する。なお、これに代えて、台車15に傾斜角センサ(図示せず)を設け、この傾斜角センサによって台車15の傾斜角及び傾斜方向を検出し、検出した傾斜角及び傾斜方向に基づいて、計測した三次元点群データD1の傾きを補正してもよい。
【0023】
次に、自動走行体1について説明する。
【0024】
本実施形態の自動走行体1は、例えば、自律走行搬送台車である。
図5に示すように、自動走行体1は、車体2と、車体2の前後左右に配置された4つの車輪3と、車輪3を駆動するモータ(図示せず)に電力を供給するバッテリ4と、二次元点群データ取得部5と、自動走行体1の走行を制御するコントローラ20と、を備える。車体2上には、荷物が置かれる荷台6が設置される。なお、自動走行体1は、必ずしも搬送機能を有する自動走行体でなくてもよい。
【0025】
図1に示すように、コントローラ20は、周辺マップ作成部21と、記憶部22と、制御部23と、送受信部24と、を有する。なお、周辺マップ作成部21及び制御部23は、コントローラ20における機能を仮想的なユニットとしたものであり、物理的な存在を意味するものではない。
【0026】
本実施形態では、二次元点群データ取得部5は、二次元LiDARによって構成され、自動走行体1に搭載される。なお、以下では、自動走行体1に搭載される二次元LiDARについては、二次元点群データ取得部5と同じ付番「5」を付して説明する。二次元LiDAR5は、自動走行体1の周囲を計測して二次元点群データD2を取得する。
【0027】
周辺マップ作成部21は、二次元LiDAR5によって取得された二次元点群データD2に基づいて、自動走行体1の周辺のマップ(以下では、「周辺マップM2」という。)を作成する。周辺マップM2の具体的な作成方法については、後で詳しく説明する。
【0028】
記憶部22は、読み書き可能なハードディスクやSSDなどの記憶媒体によって構成される。記憶部22には、二次元LiDAR5によって計測された二次元点群データD2及びマップ作成システム10によって作成された広域マップM1が記憶されるとともに、自動走行体1の走行動作を制御するための各種プログラムが記憶される。さらに、記憶部22には、自動走行体1の目的地、及び目的地までのルートなど各種データが記憶される。
【0029】
なお、記憶部22をコントローラ20に対して着脱可能な記憶媒体(例えば、メモリーカード)によって構成してもよい。あるいは、記憶部22をコントローラ20とは異なる場所に設置された記憶媒体によって構成してもよい。さらには、これらを併用してもよい。
【0030】
制御部23は、記憶部22に記憶された広域マップM1と周辺マップ作成部21によって作成された周辺マップM2とに基づいて、自動走行体1の走行動作を制御する。具体的には、自動走行体1に目的地が入力されると、制御部23は、障害物の回避など考慮しつつ目的地までのルートを算出する。その後、制御部23は、自動走行体1の走行中に随時作成される周辺マップM2と、記憶部22に記憶された広域マップM1と、に基づいて、自動走行体1の現在位置を推定しつつ、図示しないモータによって車輪3を駆動して、自動走行体1を目的地まで自動で走行させる。
【0031】
送受信部24は、コントローラ20と外部のコンピューターとの間でデータ通信を行う。コントローラ20は、送受信部24を通じて、例えば、外部のコンピューターに、自動走行体1の現在位置情報や、走行ルートなどの情報を送信することができるとともに、外部のコンピューターから広域マップM1や目的地情報などを受信することができる。
【0032】
このように、自動走行システム100では、マップ作成システム10によって作成した広域マップM1と、自動走行体1の二次元LiDAR5によって取得された二次元点群データD2に基づいて作成された周辺マップM2と、に基づいて、自動走行体1を目的地まで自動で走行させることができる。
【0033】
ところで、自動走行体1の二次元LiDAR5によって取得された二次元点群データD2は、二次元(水平面上)の点群データとなる。これに対し、マップ作成システム10における三次元LiDAR11によって計測された三次元点群データD1は、三次元(立体)の点群データである。しかしながら、三次元点群データD1は、疎らな点のデータの集合体である。このため、例えば、二次元点群データD2と比較するために、三次元点群データD1の中から二次元点群データD2と同じ高さの平面のデータのみを抽出すると、
図7(A)に示すように、疎らな点によって構成されたマップ、言い換えると、情報量が少ない(精度の低い)マップとなってしまう。このようなマップを用いて自動走行体1を自動走行させると、例えば、自動走行体1の自己位置を推定できなくなってしまうおそれがある。
【0034】
また、自動走行システム100を使用する際には、区画R内において複数の自動走行体1を走行させることがある。この場合に、自動走行体1に搭載された二次元LiDAR5の設置位置(
図5の高さH)が自動走行体1によって異なっていると、それぞれの自動走行体1に搭載された二次元LiDARの設置位置(高さH)に合わせた広域マップM1が必要となる。このため、各自動走行体1を自動走行させる前に、それぞれの二次元LiDAR5の設置位置(高さH)に応じた広域マップM1を作成する必要が生じ、その分、労力と時間を要してしまう。
【0035】
そこで、本実施形態のマップ作成システム10では、三次元LiDAR11によって計測された三次元点群データD1を用いて、簡単に二次元LiDAR5の設置位置(高さ)に対応でき、かつ精度の高い広域マップM1の作成方法を採用する。以下に、
図6に示すフローチャートを参照しながら、広域マップM1の具体的な作成方法について説明する。
【0036】
ステップS11では、三次元点群データD1を取得する。具体的には、台車15を移動させている間、三次元LiDAR11によって台車15の周囲を計測して三次元点群データD1を取得する。
【0037】
ステップS12では、傾き補正を行う。具体的には、三次元LiDAR11によって計測した三次元点群データD1の中から、水平方向の基準となるもの(例えば、床面や天井)の点群データを抽出し、この抽出した点群データの傾斜を算出して、三次元点群データD1の傾きを水平になるように補正する。なお、傾き補正が必要ない場合には、ステップS13の処理を省略してもよい。
【0038】
ステップS13では、自動走行体1に搭載されている二次元LiDAR5の設置位置の高さ(高さH)を入力する。具体的には、自動走行体1に搭載されている二次元LiDAR5が計測する二次元点群データD2の床面からの高さHをコンピューターCに入力する。
【0039】
ステップS14では、所定の範囲Hrの三次元点群データD1aを抽出する。具体的には、コンピューターC(広域マップ作成部12)は、三次元LiDAR11によって取得された三次元点群データD1のうち、高さ方向における所定の範囲Hr内の三次元点群データD1aを抽出する。本実施形態では、範囲Hrは、自動走行体1に搭載される二次元LiDAR5によって計測する平面(二次元LiDAR5の設置位置)の高さHを中心として、例えば、±20cm程度までの範囲に設定される(
図2参照)。
【0040】
ステップS15では、三次元点群データD1aを圧縮する。具体的には、コンピューターC(広域マップ作成部12)は、範囲Hr内にある三次元点群データD1aを水平方向の平面に投影して広域マップM1を作成する、別の言い方をすると、範囲Hr内にある点群データを1つの平面上に重ね合わせて、二次元の広域マップM1を作成する。これにより、三次元点群データD1のある一平面のデータのみを抽出した場合(
図7(A)参照)に比べ、データ間の隙間が小さくなる(
図7(B)参照)。この結果、データの密度が高くなるので、精度の高い広域マップM1を作成することができる。
【0041】
また、二次元LiDAR5の設置位置の高さHの異なる自動走行体1を自動走行させる場合には、それぞれの自動走行体1の二次元LiDAR5の設置位置の高さに応じて、上記ステップS12における二次元LiDAR5の設置位置の高さHの入力を変更するだけで、自動走行体1に応じた広域マップM1を容易に作成することができる。
【0042】
次に、自動走行システム100における自動走行体1の走行制御について、
図8に示すフローチャートを参照しながら説明する。
図8のフローチャートに示す処理は、コントローラ20の記憶部22に予め記憶されたプログラムに基づいて実行される。コントローラ20は、
図8に示す処理を毎秒当たり数回繰り返し行う。
【0043】
なお、
図8に示す処理は、コントローラ20に自動走行体1の目的地までのルートが設定されて、自動走行体1が自動走行している間に行われる処理である。
【0044】
ステップS21では、二次元点群データD2を取得する。具体的には、自動走行体1に搭載された二次元LiDAR5によって自動走行体1の周囲の二次元点群データD2を取得する。
【0045】
ステップS22では、自己位置を推定する。具体的には、コントローラ20(周辺マップ作成部21)は、二次元LiDAR5によって取得した二次元点群データD2から、自動走行体1の周囲の周辺マップM2を作成する。次いで、コントローラ20(制御部23)は、予め記憶部22に記憶された広域マップM1と作成した周辺マップM2とを比較して、自動走行体1の現在位置(自己位置)を推定する。
【0046】
ステップS23では、障害物の有無を判断する。具体的には、コントローラ20(制御部23)は、ステップS22において作成した周辺マップM2あるいは、二次元点群データD2に基づいて、設定された目的地までのルート上に障害物が出現していないか否かを判断する。例えば、建設現場では、広域マップM1を作成した段階では、存在しなかった資材や装置が、自動走行体1が走行する段階で設定されたルート上に置かれていることがある。コントローラ20(制御部23)は、このように自動走行体1が走行する段階で出現した障害物を検知する。設定された目的地までのルート上に障害物が検知されなければ、ステップS24に進み、設定された目的地までのルート上に障害物が検知された場合には、ステップS25に進む。なお、障害物の検知は、広域マップM1と周辺マップM2とを比較することによって行ってもよい。
【0047】
ステップS24では、目的地に到達したか否かを判断する。具体的には、コントローラ20(制御部23)は、ステップS22で推定した自動走行体1の現在位置が、目的地であるか否かを判断する。自動走行体1が目的地に到達していれば、制御(自動走行)を終了する。これに対し、自動走行体1が目的地に到達していなければ、ステップS21に戻る。
【0048】
続いて、ステップS25について説明する。上述のように、ステップS23において、設定された目的地までのルート上に障害物が存在していると判断された場合には、ステップS25に進む。ステップS25では、ルートを再設定する。具体的には、コントローラ20(制御部23)は、設定されたルート上に障害物を検知した場合には、自動走行体1の障害物を回避しつつ、目的地に到達するルートを検索し、ルートを再設定する。そして、ステップS21に戻って、再びステップS21以降の処理を実行する。
【0049】
上述のように、本実施形態のマップ作成システム10では、所定の高さの範囲Hr内にある三次元点群データD1aを水平方向の平面に投影して広域マップM1を作成しているので、精度の高い広域マップM1を作成することができる。そして、本実施形態の自動走行システム100では、自動走行体1を自動走行させる際に、精度の高い広域マップM1を用いているので、自動走行体1の自己位置の推定精度を向上させることができ、自動走行の精度も向上させることができる。
【0050】
さらに、マップ作成システム10では、二次元LiDAR5の設置位置の高さHの入力を変更するだけで、簡単に、自動走行体1の二次元LiDAR5の設置位置の高さHに応じた広域マップM1を作成することができる。つまり、マップ作成システム10を使用することにより、様々な高さの広域マップM1を容易に作成することができるので、二次元LiDAR5の設置位置の異なる自動走行体1を使用する際に、広域マップM1を作り直す労力や時間を大幅に低減することができる。
【0051】
次に、自動走行システム100の変形例について説明する。自動走行システム100では、自動走行体1に二次元LiDAR5が搭載されていたが、変形例に係る自動走行システム100では、自動走行体1に三次元LiDAR50(第2三次元点群データ取得部)が搭載される(
図9参照)点で、相違する。また、自動走行システム100では、二次元LiDAR5の設置位置の高さHに合わせて広域マップM1を作成しているが、変形例に係る自動走行システム100では、任意の高さで広域マップM11を作成できる点で、相違する。なお、以下では、同じ構成や、同じ処理については、同一の付番を付して適宜説明を省略する。
【0052】
まず、変形例における広域マップM11の作成方法について、
図10に示すフローチャートを参照しながら説明する。なお、ここでは、
図6に示すフローチャートと相違するステップS113、S114、及びS115についてのみ説明する。
【0053】
この変形例においても、台車15に搭載された三次元LiDAR11によって計測された三次元点群データD1を用いる。ステップS113では、高さH1(
図9参照)を入力する。具体的には、床面からの高さH1をコンピューターCに入力する。高さH1は、任意の高さであり、自動走行体1に搭載される三次元LiDAR50の設置位置に対応させる必要はない。本変形例では、例えば、高さH1を2m程度に設定する(
図9参照)。
【0054】
そして、ステップS114において、所定の範囲Hrの三次元点群データD1bを抽出する。具体的には、コンピューターC(広域マップ作成部12)は、三次元LiDAR11によって取得された三次元点群データD1のうち、高さ方向における所定の範囲Hr1内の三次元点群データD1bを抽出する。本変形例では、三次元点群データD1を抽出する所定の範囲Hr1を、例えば、高さH1±50cm程度の範囲とする(
図9参照)。
【0055】
建設現場などでは、資材や装置を一時的に床面に仮置きしておくことがある(
図9参照)。この状態で広域マップM11を作成すると、当然資材や装置が広域マップM11に反映されることになる。しかしながら、自動走行体1を自動走行させるときに、床面に置かれていた資材や装置が移動してしまっていることがある。この場合には、予め作成した広域マップM11と自動走行体1が自動走行中に取得した周辺マップM2との間に相違が出てしまい、コントローラ20(制御部23)が自動走行体1の現在位置を推定できなくなるおそれがある。
【0056】
このため、本変形例のように、三次元点群データD1の抽出範囲の高さH1を2m程度(範囲Hr1を高さ1.5mから2.5m程度)とすることで、床面に仮置きされた資材や装置が含まない範囲の点群データを使用して広域マップM11を作成することができる。つまり、資材や装置の影響を受けないで広域マップM11を作成することができる。
【0057】
ステップS115では、三次元点群データD1bを圧縮する。具体的な方法は、ステップS15と同様であるので、説明を省略する。
【0058】
次に、本変形例における自動走行体1の走行制御について、
図11に示すフローチャートを参照しながら説明する。なお、
図11のフローチャートに示す処理は、コントローラ20の記憶部22に予め記憶されたプログラムに基づいて実行される。コントローラ20は、
図11に示す処理を毎秒当たり数回繰り返し行う。
【0059】
本変形例では、自動走行体1に搭載される三次元LiDAR50によって計測された三次元点群データD3に基づいて作成される周辺マップM12は、広域マップM11と同じ方法(
図10のフローチャート)で作成する。図示はしないが、簡単に説明すると、三次元LiDAR50によって取得された三次元点群データD3のうち、高さ方向における所定の範囲内Hr1を、三次元点群データD1の抽出範囲(高さH1±50cm程度)と同じにする。なお、周辺マップM12を作成する際には、
図10のステップS112における高さH1の入力を一度行えば、以降は高さH1の入力(ステップS112)を不要とする。
【0060】
このように、広域マップM11と周辺マップM12を作成する条件を同じとすることで、自己位置の推定精度を向上させることができる。このため、最適には、自動走行体1に搭載される三次元LiDAR50は、台車15に搭載される三次元LiDAR11と同じ機種であることが望ましい。
【0061】
また、本変形例の自動走行システム100においても、三次元点群データD1,D3のデータの抽出範囲、すなわち、作成する広域マップM11と周辺マップM12の高さを適宜変更することができる。例えば、床面に置かれる資材や装置の高さや工事の進捗に応じて、三次元点群データD1,D3のデータの抽出範囲(高さH、H1)を換えることで、適宜、これらの影響を受けない範囲の広域マップM11及び周辺マップM12を作成することができる。これにより、自動走行体1の自己位置の推定精度を向上させることができ、自動走行の精度も向上させることができる。
【0062】
以上のマップ作成システム10及び自動走行システム100によれば、以下の効果を奏する。
【0063】
マップ作成システム10では、三次元LiDAR11によって取得された三次元点群データD1のうち、高さ方向における所定の範囲Hr内の三次元点群データD1aを抽出し、この三次元点群データD1aを圧縮して、二次元の広域マップM1を作成している。これにより、三次元点群データD1を用いた場合でも、精度の高い二次元の広域マップM1を作成することができる。
【0064】
また、マップ作成システム10では、範囲Hr(高さHの入力)を適宜変更するだけで、簡単に高さの異なる二次元の広域マップM1を作成することができる。つまり、マップ作成システム10を使用することにより、様々な高さの二次元の広域マップM1を容易に作成することができるので、例えば、二次元LiDAR5の設置位置の異なる自動走行体1を複数使用する際に、それぞれの自動走行体1に対応する広域マップM1を作るための労力や時間を大幅に低減することができる。
【0065】
さらに、本実施形態の自動走行システム100では、自動走行体1を自動走行させる際に、マップ作成システム10によって作成した精度の高い広域マップM1を用いることにより、自動走行体1の自己位置の推定精度を向上させることができ、自動走行の精度も向上させることができる。
【0066】
また、自動走行体1に三次元LiDAR50を搭載した場合には、床面に置かれる資材や装置の高さや工事の進捗に応じて、三次元点群データD1,D3のデータの抽出範囲(高さH、H1)を変えることで、適宜、これらの影響を受けない範囲の広域マップM11及び周辺マップM12を作成することができる。これにより、自動走行体1の自己位置の推定精度をより向上させることができ、自動走行の精度もより向上させることができる。
【0067】
以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。
【0068】
上記実施形態では、三次元点群データを取得する方法として、三次元LiDAR11、50を用いる場合を説明したが、三次元点群データを取得する方法は、これに限らない。例えば、カメラなど撮像装置を用いたVisualSLAM技術から三次元点群データを取得する、あるいは、二次元LiDARを三次元的に動かして三次元点群データを取得してもよい。
【0069】
また、上記実施形態では、二次元点群データD2から周辺マップM2を作成して処理を進めるものとしたが、二次元点群データD2をそのまま使用するものとしてもよい。
【0070】
上記実施形態では、作業員によって押される台車15に搭載された三次元LiDAR11によって三次元点群データD1を取得する場合を例に説明したが、これに限らない。例えば、三次元LiDAR11をリモートコントロール可能な台車に搭載し、この台車を遠隔操作して三次元点群データD1を取得してもよい。また、作業員が三次元LiDAR11を手に持って移動してもよく、あるいは、三次元LiDAR11をヘルメットに搭載したり、腕に付けたりして、区画R内を歩くことにより三次元点群データD1を取得してもよい。
【0071】
さらに、上記実施形態では、三次元LiDAR11を移動させながら三次元点群データD1を取得する場合を例に説明をしたが、三次元点群データD1は、必ずしも三次元LiDAR11を移動させながら取得する必要はない。例えば、複数の地点で取得した三次元点群データD1を重ね合わせて、この重ね合わせた三次元点群データD1に基づいて広域マップM1を作成してもよい。また、カメラなど撮像装置によって定点で撮像した画像を用いて三次元点群データを取得してもよい。
【符号の説明】
【0072】
100 自動走行システム
10 マップ作成システム
1 自動走行体
5 二次元LiDAR(二次元点群データ取得部)
11 三次元LiDAR(第1三次元点群データ取得部)
12 広域マップ作成部
13 記憶部
14 傾斜補正部
15 台車(移動体)
20 コントローラ
21 周辺マップ作成部
22 記憶部
23 制御部
50 三次元LiDAR(第2三次元点群データ取得部)
C コンピューター
【要約】
【課題】様々な高さの広域マップを容易に作成することができるマップ作成システムを提供する。
【解決手段】マップ作成システム10は、周囲を計測して三次元点群データD1を取得する第1三次元点群データ取得部11と、第1三次元点群データ取得部11によって取得された三次元点群データD1のうち、高さ方向における所定の範囲Hr内の三次元点群データD1aを水平方向の平面に投影して二次元の広域マップM1を作成する広域マップ作成部12と、を備える。
【選択図】
図1