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

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

▶ 三菱電機株式会社の特許一覧

特許7696513制御装置、制御方法、及び制御プログラム
<>
  • 特許-制御装置、制御方法、及び制御プログラム 図1
  • 特許-制御装置、制御方法、及び制御プログラム 図2
  • 特許-制御装置、制御方法、及び制御プログラム 図3
  • 特許-制御装置、制御方法、及び制御プログラム 図4
  • 特許-制御装置、制御方法、及び制御プログラム 図5
  • 特許-制御装置、制御方法、及び制御プログラム 図6
  • 特許-制御装置、制御方法、及び制御プログラム 図7
  • 特許-制御装置、制御方法、及び制御プログラム 図8
  • 特許-制御装置、制御方法、及び制御プログラム 図9
  • 特許-制御装置、制御方法、及び制御プログラム 図10
  • 特許-制御装置、制御方法、及び制御プログラム 図11
  • 特許-制御装置、制御方法、及び制御プログラム 図12
  • 特許-制御装置、制御方法、及び制御プログラム 図13
  • 特許-制御装置、制御方法、及び制御プログラム 図14
  • 特許-制御装置、制御方法、及び制御プログラム 図15
  • 特許-制御装置、制御方法、及び制御プログラム 図16
  • 特許-制御装置、制御方法、及び制御プログラム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-06-12
(45)【発行日】2025-06-20
(54)【発明の名称】制御装置、制御方法、及び制御プログラム
(51)【国際特許分類】
   G05D 1/246 20240101AFI20250613BHJP
   G05D 1/242 20240101ALI20250613BHJP
【FI】
G05D1/246
G05D1/242
【請求項の数】 9
(21)【出願番号】P 2024553698
(86)(22)【出願日】2024-02-15
(86)【国際出願番号】 JP2024005177
【審査請求日】2024-09-09
【早期審査対象出願】
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】110002491
【氏名又は名称】弁理士法人クロスボーダー特許事務所
(72)【発明者】
【氏名】長谷川 悠紀
【審査官】渡邊 捷太郎
(56)【参考文献】
【文献】特開2019-185528(JP,A)
【文献】特開2009-175932(JP,A)
【文献】国際公開第2021/187299(WO,A1)
【文献】特表2021-535485(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/246
G05D 1/242
(57)【特許請求の範囲】
【請求項1】
分類対象領域を示す更新対象地図において、第1自律走行体が前記分類対象領域内を走行した際の走行軌道である第1走行軌道と、前記第1自律走行体が前記第1走行軌道を走行した際に前記第1自律走行体が備える第1センサーが前記第1自律走行体の周囲を計測した結果とに基づいて、前記分類対象領域内の一部の領域内の各領域が走行可能領域と走行禁止領域とのいずれかに分類されており、前記分類対象領域内の領域のうち前記走行可能領域と前記走行禁止領域とのいずれにも分類されていない各領域を第1未分類領域としたとき、前記第1未分類領域には、前記第1未分類領域が前記走行可能領域である可能性に対応する指標である信頼度として、前記走行可能領域と前記走行禁止領域とのいずれでもないことを示す値が設定されているとき、
第2自律走行体が前記更新対象地図に基づいて前記分類対象領域内の第2走行軌道を走行したとき、前記第2自律走行体が前記第2走行軌道上の対象地点を走行しているときに前記第2自律走行体が備える第2センサーが前記第2自律走行体の周囲を計測した結果に基づいて発見された各領域であって、前記更新対象地図において前記走行可能領域と前記走行禁止領域とのいずれかに分類されている各領域である対象分類済領域と、前記対象地点との間に存在する領域の少なくとも一部に含まれている各領域であって、前記更新対象地図において前記走行可能領域と前記走行禁止領域とのいずれにも分類されていない各領域である第2未分類領域に対応する信頼度を、前記第2未分類領域と前記対象地点との間の距離に応じた値であって、前記対象分類済領域が前記走行可能領域と前記走行禁止領域とのいずれであるかに応じた値である対象更新値に更新する地図更新部
を備える制御装置であって、
前記地図更新部は、前記第2未分類領域に対して既に設定されている信頼度の値が前記対象更新値よりも高い場合に、前記第2未分類領域に対応する信頼度を更新しない制御装置
【請求項2】
前記地図更新部は、前記第2センサーの計測結果に基づいて障害物が存在する各領域を前記分類対象領域内に発見した場合に、前記更新対象地図において、発見した各領域を前記走行禁止領域に分類する請求項1に記載の制御装置。
【請求項3】
前記更新対象地図において、前記第1センサーによって対応する距離を計測することができなかった各領域が前記走行禁止領域に分類されている請求項1又は2に記載の制御装置。
【請求項4】
前記分類対象領域内の各領域を計測対象領域としたとき、前記第1センサーによって計測された前記計測対象領域の高さが高さ閾値以上である場合に、前記更新対象地図において前記計測対象領域が前記走行禁止領域に分類されている請求項1又は2に記載の制御装置。
【請求項5】
前記第1センサーと前記第2センサーとの各々は、電磁波により計測を行うセンサーであり、
前記分類対象領域内の各領域を計測対象領域としたとき、前記第1センサーが前記計測対象領域に対して電磁波を照射したときの前記計測対象領域に対応する反射強度が、前記第1走行軌道に対応する反射強度であって、前記第1センサーが照射する電磁波に対応する反射強度である基準反射強度と異なる場合に、前記更新対象地図において前記計測対象領域が前記走行禁止領域に分類されている請求項1又は2に記載の制御装置。
【請求項6】
前記第1センサーと前記第2センサーとの各々は3D-LiDAR(Light Detection and Ranging)である請求項に記載の制御装置。
【請求項7】
前記対象地点から前記対象分類済領域までの距離は計測距離以内である請求項1又は2に記載の制御装置。
【請求項8】
分類対象領域を示す更新対象地図において、第1自律走行体が前記分類対象領域内を走行した際の走行軌道である第1走行軌道と、前記第1自律走行体が前記第1走行軌道を走行した際に前記第1自律走行体が備える第1センサーが前記第1自律走行体の周囲を計測した結果とに基づいて、前記分類対象領域内の一部の領域内の各領域が走行可能領域と走行禁止領域とのいずれかに分類されており、前記分類対象領域内の領域のうち前記走行可能領域と前記走行禁止領域とのいずれにも分類されていない各領域を第1未分類領域としたとき、前記第1未分類領域には、前記第1未分類領域が前記走行可能領域である可能性に対応する指標である信頼度として、前記走行可能領域と前記走行禁止領域とのいずれでもないことを示す値が設定されているとき、
コンピューターが、第2自律走行体が前記更新対象地図に基づいて前記分類対象領域内の第2走行軌道を走行したとき、前記第2自律走行体が前記第2走行軌道上の対象地点を走行しているときに前記第2自律走行体が備える第2センサーが前記第2自律走行体の周囲を計測した結果に基づいて発見された各領域であって、前記更新対象地図において前記走行可能領域と前記走行禁止領域とのいずれかに分類されている各領域である対象分類済領域と、前記対象地点との間に存在する領域の少なくとも一部に含まれている各領域であって、前記更新対象地図において前記走行可能領域と前記走行禁止領域とのいずれにも分類されていない各領域である第2未分類領域に対応する信頼度を、前記第2未分類領域と前記対象地点との間の距離に応じた値であって、前記対象分類済領域が前記走行可能領域と前記走行禁止領域とのいずれであるかに応じた値である対象更新値に更新し、
前記コンピューターは、前記第2未分類領域に対して既に設定されている信頼度の値が前記対象更新値よりも高い場合に、前記第2未分類領域に対応する信頼度を更新しない制御方法。
【請求項9】
分類対象領域を示す更新対象地図において、第1自律走行体が前記分類対象領域内を走行した際の走行軌道である第1走行軌道と、前記第1自律走行体が前記第1走行軌道を走行した際に前記第1自律走行体が備える第1センサーが前記第1自律走行体の周囲を計測した結果とに基づいて、前記分類対象領域内の一部の領域内の各領域が走行可能領域と走行禁止領域とのいずれかに分類されており、前記分類対象領域内の領域のうち前記走行可能領域と前記走行禁止領域とのいずれにも分類されていない各領域を第1未分類領域としたとき、前記第1未分類領域には、前記第1未分類領域が前記走行可能領域である可能性に対応する指標である信頼度として、前記走行可能領域と前記走行禁止領域とのいずれでもないことを示す値が設定されているとき、
第2自律走行体が前記更新対象地図に基づいて前記分類対象領域内の第2走行軌道を走行したとき、前記第2自律走行体が前記第2走行軌道上の対象地点を走行しているときに前記第2自律走行体が備える第2センサーが前記第2自律走行体の周囲を計測した結果に基づいて発見された各領域であって、前記更新対象地図において前記走行可能領域と前記走行禁止領域とのいずれかに分類されている各領域である対象分類済領域と、前記対象地点との間に存在する領域の少なくとも一部に含まれている各領域であって、前記更新対象地図において前記走行可能領域と前記走行禁止領域とのいずれにも分類されていない各領域である第2未分類領域に対応する信頼度を、前記第2未分類領域と前記対象地点との間の距離に応じた値であって、前記対象分類済領域が前記走行可能領域と前記走行禁止領域とのいずれであるかに応じた値である対象更新値に更新する地図更新処理
をコンピューターである制御装置に実行させる制御プログラムであって、
前記地図更新処理では、前記第2未分類領域に対して既に設定されている信頼度の値が前記対象更新値よりも高い場合に、前記第2未分類領域に対応する信頼度を更新しない制御プログラム
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、制御装置、制御方法、及び制御プログラムに関する。
【背景技術】
【0002】
特許文献1は、自律走行ロボットの地図を作成する技術を開示している。当該技術において、自律走行時に障害となる物体の位置情報を含むベース地図が作成され、作成されたべース地図に基づいて自律走行ロボットが自律走行を行う。自律走行ロボットは、自律走行中に自律走行ロボットに搭載されているセンサーを使用して自律走行時に障害となる物体を検出する。検出された物体に対応する走行禁止領域は、ベース地図に反映される。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2019-204336号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
自律走行ロボットは、一般的に自律走行ロボット自身の位置を推定するための地図を持つ。その他、侵入禁止領域に入らないように走行可能な領域を示した地図を自律走行ロボットに持たせることにより、不慮の事故を防止することができる。特許文献1が開示している技術は、センサーの種類を限定せずに障害物を検出して走行禁止領域を設定する技術である。当該技術において、センサーを使用して障害物を検出することができるという前提がある。
自律走行ロボットにおいて一般的に使用されるセンサーである電磁波を照射するタイプのセンサーを使用して障害物を検出する場合、センサーにより計測された距離値に基づいて高さ判定を行うことが考えられる。しかしながら、屋外においてセンサーを使用する場合、距離値だけによっては走行可能領域と走行禁止領域とを正確に判別することが困難である。そのため、従来技術には、走行禁止領域が過剰に設定されてしまうという課題がある。具体例として、アスファルトの道路と砂利道と芝生とから成る領域を、距離値だけによって走行可能領域と走行禁止領域とに正確に分類することは困難である。
本開示は、電磁波を照射するタイプのセンサーを使用して自律走行ロボットの地図を作成する技術において、複数の情報を統合して走行可能領域と走行禁止領域とを判別することにより、過剰に設定される走行禁止領域の量を減らすことを目的とする。
【課題を解決するための手段】
【0005】
本開示に係る制御装置は、
分類対象領域を示す更新対象地図において、第1自律走行体が前記分類対象領域内を走行した際の走行軌道である第1走行軌道と、前記第1自律走行体が前記第1走行軌道を走行した際に前記第1自律走行体が備える第1センサーが前記第1自律走行体の周囲を計測した結果とに基づいて、前記分類対象領域内の一部の領域内の各領域が走行可能領域と走行禁止領域とのいずれかに分類されており、前記分類対象領域内の領域のうち前記走行可能領域と前記走行禁止領域とのいずれにも分類されていない各領域を第1未分類領域としたとき、前記第1未分類領域には、前記第1未分類領域が前記走行可能領域である可能性に対応する指標である信頼度として、前記走行可能領域と前記走行禁止領域とのいずれでもないことを示す値が設定されているとき、
第2自律走行体が前記更新対象地図に基づいて前記分類対象領域内の第2走行軌道を走行したとき、前記第2自律走行体が前記第2走行軌道上の対象地点を走行しているときに前記第2自律走行体が備える第2センサーが前記第2自律走行体の周囲を計測した結果に基づいて発見された各領域であって、前記更新対象地図において前記走行可能領域と前記走行禁止領域とのいずれかに分類されている各領域である対象分類済領域と、前記対象地点との間に存在する各領域であって、前記更新対象地図において前記走行可能領域と前記走行禁止領域とのいずれにも分類されていない各領域である第2未分類領域に対応する信頼度を、前記第2未分類領域と前記対象分類済領域との間の距離に応じた値であって、前記対象分類済領域が前記走行可能領域と前記走行禁止領域とのいずれであるかに応じた値である対象更新値に更新する地図更新部
を備える。
【発明の効果】
【0006】
本開示によれば、地図更新部が、第2自律走行体が第2走行軌道上の対象地点を走行しているときの第2センサーの計測結果に基づいて、対象地点と分類済領域地図との間の各領域に対応する信頼度を、各領域と対象分類済領域との間の距離に応じて更新する。ここで、信頼度は走行可能領域である可能性に対応する指標である。第2センサーは電磁波を照射するタイプのセンサーであってもよい。
従って、本開示によれば、電磁波を照射するタイプのセンサーを使用して自律走行ロボットの地図を作成する技術において、複数の情報を統合して走行可能領域と走行禁止領域とを判別することにより、過剰に設定される走行禁止領域の量を減らすことができる。
【図面の簡単な説明】
【0007】
図1】実施の形態1に係る地図生成システム90の構成例を示す図。
図2】実施の形態1に係る地図生成システム90の構成例を示す図。
図3】実施の形態1に係る地図生成システム90の構成例を示す図。
図4】実施の形態1に係る制御装置100のハードウェア構成例を示す図。
図5】実施の形態1に係る制御装置100の動作を示すフローチャート。
図6】実施の形態1に係るデータ収集フェーズの処理を説明する図。
図7】実施の形態1に係る制御装置101の動作を示すフローチャート。
図8】実施の形態1に係る地図作成フェーズの処理を説明する図。
図9】実施の形態1に係る制御装置101の動作を示すフローチャート。
図10】実施の形態1に係る制御装置101の動作を示すフローチャート。
図11】実施の形態1に係る地図作成フェーズの処理を説明する図。
図12】実施の形態1に係る制御装置102の動作を示すフローチャート。
図13】実施の形態1に係る地図更新フェーズの処理を説明する図。
図14】実施の形態1に係る地図更新フェーズの処理を説明する図。
図15】実施の形態1に係る地図更新フェーズの処理を説明する図。
図16】実施の形態1に係る地図更新フェーズの処理を説明する図。
図17】実施の形態1の変形例に係る制御装置100のハードウェア構成例を示す図。
【発明を実施するための形態】
【0008】
実施の形態の説明及び図面において、同じ要素及び対応する要素には同じ符号を付している。同じ符号が付された要素の説明は、適宜に省略又は簡略化する。図中の矢印はデータの流れ又は処理の流れを主に示している。また、「部」を、「回路」、「工程」、「手順」、「処理」又は「サーキットリー」に適宜読み替えてもよい。
【0009】
実施の形態1.
以下、図面を参照しつつ実施の形態1について説明する。実施の形態1において、データ収集フェーズと、地図作成フェーズと、地図更新フェーズとの各々が実現される。
***構成の説明***
<データ収集フェーズ>
図1は、データ収集フェーズを実現する地図生成システム90の構成例に対応するブロック図である。データ収集フェーズでは、走行可能領域を通るようにコントローラー300により自律走行体1を制御しつつ、センサー200から得られるデータを保存することを目的とする。走行可能領域は、自律走行体が走行することができる領域である。各自律走行体は自律走行ロボットであってもよい。
【0010】
自律走行体1は、筐体2と、制御装置100と、センサー200とを備える。自律走行体1は、第1自律走行体に当たり、コントローラー300により制御される。なお、各制御装置は地図作成装置に当たる。
【0011】
筐体2は、駆動輪と動力とを備える。具体例として、駆動輪は4輪であり、動力はバッテリー駆動による動力である。
【0012】
制御装置100は、データ収集機能を持ち、走行制御部10と、手動制御部20と、データ取得部30と、記憶部40とを備える。
【0013】
走行制御部10は、手動制御部20から送られてくる信号に応じて自律走行体1の駆動を制御する。
【0014】
手動制御部20は、コントローラー300から送られてくる信号を監視し、監視結果に基づいて自律走行体1がどのように動くべきか解釈し、解釈した結果を走行制御部10に出力する。
【0015】
データ取得部30は、センサー200から送られてくる信号を解釈して距離値と反射強度との各々を導出し、導出した距離値と反射強度との各々を示す情報を記憶部40に保存する。
【0016】
記憶部40は、各種情報を記憶する機能を有し、ハードディスクなどの記憶装置により実現される。記憶部40は、主にセンサー200から得られる距離値及び反射強度を保存する用途で使用される。
【0017】
センサー200は、各領域に対応する距離値と反射強度とを取得する機能を有する。センサー200は第1センサーに当たる。第1センサーは、電磁波により計測を行うセンサーである。
センサー200は、具体例として3D-LiDAR(Light Detection and Ranging)である。
【0018】
コントローラー300は、自律走行体1の進行方向と、自律走行体1の走行開始及び停止などを制御する機能を有する。コントローラー300は、具体例として、ラジオコントロール用又はTVゲーム用などのコントローラーなどにより実現される。
【0019】
<地図作成フェーズ>
図2は、地図作成フェーズを実現する地図生成システム90の構成例に対応するブロック図である。地図作成フェーズでは、データ収集フェーズにおいて収集されたデータを用いて地図を新規に作成することを目的とする。
【0020】
制御装置101は、地図作成部50と、記憶部41とを備える。制御装置101は、制御装置100を実現するコンピューターと同じコンピューターにより実現されてもよい。
【0021】
地図作成部50は、記憶部41に保存された計測データに基づいて自律走行体向けの地図を作成する。当該地図は、具体例としてSLAM(Simultaneous Localization and Mapping)技術により作成される。
【0022】
記憶部41は、各種情報を記憶する機能を有し、ハードディスクなどの記憶装置により実現される。記憶部41は、地図の元になる計測データと、作成された地図を保存する用途で主に使用される。記憶部41は、記憶部40を実現する記憶装置により実現されてもよい。
【0023】
<地図更新フェーズ>
図3は、地図更新フェーズを実現する地図生成システム90の構成例に対応するブロック図である。
地図更新フェーズでは、作成された地図に基づいて自律走行体3が自己位置を推定しながら環境を走行し、地図の更新が必要であると判断された場合に地図を更新することを目的とする。
【0024】
自律走行体3は、駆動輪及び動力を備えた筐体4と、制御装置102と、センサー201とを備える。自律走行体3は第2自律走行体に当たる。第2自律走行体は第1自律走行体と同一であってもよい。
筐体4は筐体2と同じ筐体により実現されてもよい。
【0025】
センサー201は、各領域に対応する距離値と反射強度とを取得する機能を有する。センサー201は第2センサーに当たる。第2センサーは、電磁波により計測を行うセンサーである。
センサー201は、具体例として3D-LiDARであり、センサー200と同じセンサーにより実現されてもよい。
【0026】
制御装置102は、走行制御部11と、タスク制御部60と、自己位置推定部70と、地図更新部80と、記憶部42とを備える。制御装置102は、制御装置100を実現するコンピューターと同じコンピューターにより実現されていてもよい。
【0027】
走行制御部11は、タスク制御部60の指示に基づいて自律走行体3の駆動を制御する。
【0028】
タスク制御部60は、自律走行体3をどのように動かすかを指示する機能を有する。本実施の形態では、あらかじめ定義されたルートを自律走行するタスクが定義されているものとする。
【0029】
自己位置推定部70は、センサー201から得られた情報と記憶部42に保管されている地図とを比較して、地図上のどこに自律走行体3が位置するのか検索する機能を有する。
【0030】
地図更新部80は、記憶部42に保管されている地図を更新する機能を有する。
具体的には、地図更新部80は、第2自律走行体が更新対象地図に基づいて分類対象領域内の第2走行軌道を走行したとき、第2未分類領域に対応する信頼度を対象更新値に更新する。ここで、更新対象地図において、第1走行軌道と、第1自律走行体が第1走行軌道を走行した際に第1自律走行体が備える第1センサーが第1自律走行体の周囲を計測した結果とに基づいて、分類対象領域内の一部の領域内の各領域が走行可能領域と走行禁止領域とのいずれかに分類されているものとする。また、第1未分類領域には、第1未分類領域が走行可能領域である可能性に対応する指標である信頼度として、走行可能領域と走行禁止領域とのいずれでもないことを示す値が設定されているものとする。走行禁止領域は、自律走行体の走行が禁止されている領域である。対応する信頼度に基づいて各領域が走行可能領域と走行禁止領域とのいずれであるか判定されてもよい。
更新対象地図は分類対象領域を示す地図である。
対象更新値は、第2未分類領域と対象分類済領域との間の距離に応じた値であって、対象分類済領域が走行可能領域と走行禁止領域とのいずれであるかに応じた値である。
第2未分類領域は、対象分類済領域と対象地点との間に存在する各領域であって、更新対象地図において走行可能領域と走行禁止領域とのいずれにも分類されていない各領域である。
対象分類済領域は、第2自律走行体が対象地点を走行しているときに第2自律走行体が備える第2センサーが第2自律走行体の周囲を計測した結果に基づいて発見された各領域であって、更新対象地図において走行可能領域と走行禁止領域とのいずれかに分類されている各領域である。対象地点から対象分類済領域までの距離は計測距離以内であってもよい。計測距離はどのように設定されてもよい。
対象地点は、第2走行軌道上の地点である。対象地点は、走行可能領域内の地点であってもよく、その他領域内の地点であってもよい。その他領域は、走行可能領域と走行禁止領域とのいずれであるか判定されていない領域である。
第1走行軌道は、第1自律走行体が分類対象領域内を走行した際の走行軌道である。
第1未分類領域は、分類対象領域内の領域のうち走行可能領域と走行禁止領域とのいずれにも分類されていない各領域である。
地図更新部80は、第2未分類領域に対して既に設定されている信頼度の値が対象更新値よりも高い場合に、第2未分類領域に対応する信頼度を更新しなくてもよい。地図更新部80は、第2センサーの計測結果に基づいて障害物が存在する各領域を分類対象領域内に発見した場合に、更新対象地図において、発見した各領域を走行禁止領域に分類してもよい。
更新対象地図において、第1センサーによって対応する距離を計測することができなかった各領域が走行禁止領域に分類されていてもよい。分類対象領域内の各領域を計測対象領域としたとき、第1センサーによって計測された計測対象領域の高さが高さ閾値以上である場合に、更新対象地図において計測対象領域が走行禁止領域に分類されていてもよい。第1センサーが計測対象領域に対して電磁波を照射したときの計測対象領域に対応する反射強度が基準反射強度と異なる場合に、更新対象地図において計測対象領域が走行禁止領域に分類されていてもよい。基準反射強度は、第1走行軌道に対応する反射強度であって、第1センサーが照射する電磁波に対応する反射強度である。
【0031】
記憶部42は、各種情報を記憶する機能を有し、ハードディスクなどの記憶装置により実現される。記憶部42は、自己位置推定部70と地図更新部80とにより使用される地図を保存する用途で主に使用される。当該地図は、地図作成部50により作成された地図、又は地図作成部50により作成された地図を更新した地図である。
記憶部42は、記憶部40を実現する記憶装置と同じ記憶装置により実現されてもよい。
【0032】
図4は、本実施の形態に係る制御装置100のハードウェア構成例を示している。制御装置100はコンピューターから成る。制御装置100は複数のコンピューターから成ってもよい。
【0033】
制御装置100は、本図に示すように、プロセッサ91と、メモリ92と、補助記憶装置93と、入出力IF(Interface)94と、通信装置95などのハードウェアを備えるコンピューターである。これらのハードウェアは、信号線99を介して適宜接続されている。
【0034】
プロセッサ91は、演算処理を行うIC(Integrated Circuit)であり、かつ、コンピューターが備えるハードウェアを制御する。プロセッサ91は、具体例として、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、又はGPU(Graphics Processing Unit)である。
制御装置100は、プロセッサ91を代替する複数のプロセッサを備えてもよい。複数のプロセッサはプロセッサ91の役割を分担する。
【0035】
メモリ92は、典型的には揮発性の記憶装置であり、具体例としてRAM(Random Access Memory)である。メモリ92は、主記憶装置又はメインメモリとも呼ばれる。メモリ92に記憶されたデータは、必要に応じて補助記憶装置93に保存される。
【0036】
補助記憶装置93は、典型的には不揮発性の記憶装置であり、具体例として、ROM(Read Only Memory)、HDD(Hard Disk Drive)、又はフラッシュメモリである。補助記憶装置93に記憶されたデータは、必要に応じてメモリ92にロードされる。
メモリ92及び補助記憶装置93は一体的に構成されていてもよい。
【0037】
入出力IF94は、入力装置及び出力装置が接続されるポートである。入出力IF94は、具体例として、USB(Universal Serial Bus)端子である。入力装置は、具体例として、キーボード及びマウスである。出力装置は、具体例として、ディスプレイである。
【0038】
通信装置95は、レシーバ及びトランスミッタである。通信装置95は、具体例として、通信チップ又はNIC(Network Interface Card)である。
【0039】
制御装置100の各部は、他の装置などと通信する際に、入出力IF94及び通信装置95を適宜用いてもよい。
【0040】
補助記憶装置93は制御プログラムを記憶している。制御プログラムは、制御装置100が備える各部の機能をコンピューターに実現させるプログラムである。制御プログラムは、メモリ92にロードされて、プロセッサ91によって実行される。制御装置100が備える各部の機能は、ソフトウェアにより実現される。
【0041】
制御プログラムを実行する際に用いられるデータと、制御プログラムを実行することによって得られるデータなどは、記憶装置に適宜記憶される。制御装置100の各部は記憶装置を適宜利用する。記憶装置は、具体例として、メモリ92と、補助記憶装置93と、プロセッサ91内のレジスタと、プロセッサ91内のキャッシュメモリとの少なくとも1つから成る。なお、データという用語と情報という用語とは同等の意味を有することもある。記憶装置は、コンピューターと独立したものであってもよい。
メモリ92及び補助記憶装置93の機能は、他の記憶装置によって実現されてもよい。
【0042】
制御プログラムは、コンピューターが読み取り可能な不揮発性の記録媒体に記録されていてもよい。不揮発性の記録媒体は、具体例として、光ディスク又はフラッシュメモリである。制御プログラムは、プログラムプロダクトとして提供されてもよい。
他の制御装置のハードウェア構成は、制御装置100のハードウェア構成と同様であってもよい。
【0043】
***動作の説明***
各制御装置の動作手順は制御方法に相当する。また、各制御装置の動作を実現するプログラムは制御プログラムに相当する。
【0044】
以下、各フェーズにおける詳細な動作について具体例を挙げながら説明する。
【0045】
<データ収集フェーズ>
図5は、データ収集フェーズにおいて実施される処理の一例を示すフローチャートである。図5を用いて当該処理を説明する。
【0046】
(ステップS1)
データ取得部30は、センサー200によって計測されたデータを記憶部40に保存する。
【0047】
(ステップS2)
本ステップにおいて、データ収集フェーズの終了可否が判定される。具体例として、センサー200によるデータ収集処理に関して地図の作成対象である環境が網羅されたか否かを人が判定し、当該環境が網羅されたと判定された場合にデータ収集フェーズが終了される。
【0048】
図6は、データ収集フェーズにおいてデータを収集する範囲の具体例を示している。本例において、矢印に沿って自律走行体1を動かしながら当該範囲におけるデータが収集される。
【0049】
<地図作成フェーズ>
図7は、地図作成フェーズにおいて実施される処理の一例を示すフローチャートである。図7を用いて当該処理を説明する。
【0050】
(ステップS3)
地図作成部50は、記憶部41に保存されている計測データを用いて地図を作成する。具体的には、地図作成部50は、記憶部41に保存されている距離値を入力データとしてSLAM技術を用いて地図を作成する。本ステップにおいて作成された地図をベース地図と呼ぶ。ベース地図が示す領域全体を分類対象領域とする。
図8は、本ステップにおいて作成された地図の具体例を示している。なお、本ステップの終了時点において、ベース地図が示す各領域は、走行可能領域と走行禁止領域とのいずれにも分類されていない。
【0051】
(ステップS4)
地図作成部50は、ベース地図において走行可能領域を設定する処理を行う。
図9は、当該処理の一例を示すフローチャートである。図9を用いて当該処理を説明する。
【0052】
(ステップS4-1)
地図作成部50は、ベース地図が示す各領域について、走行軌道上の領域であるか否かを判定する。走行軌道は、データ収集フェーズにおいて自律走行体1が走行した軌道である。即ち、本ステップの処理は、ベース地図上において、データ収集フェーズにおける自律走行体1の移動経路に当たる領域を特定する処理である。この際、地図作成部50は、ベース地図が示す領域をどのように分割して判定対象である各領域を定めてもよい。
具体例として、地図作成部50は、ベース地図が示す各領域について、ベース地図の作成時に使用した距離値に基づいて、分類対象領域を自律走行体1が走行したときの各時点における自律走行体1の自己位置推定を行うことにより走行軌道上の領域であるか否かを判定する。
【0053】
(ステップS4-2)
地図作成部50は、分類対象領域のうち走行軌道上の領域と判定した各領域に対して、走行可能領域であることを示す値を割り当てる。走行可能領域は、具体例として信頼度として100が割り当てられた領域を指す。信頼度は、実際に走行可能領域である可能性に対応する指標であり、具体例として0から100の範囲のある値を取る指標である。本ステップの処理により、各領域が走行可能領域に分類される。
具体例として、地図作成部50は、分類対象領域のうち走行軌道上に当たる各箇所に対して信頼度100を割り当てる。このとき、地図作成部50は、走行軌道上の各点から半径Xm以内の領域全体を走行可能領域とみなしてもよい。Xの値は、具体例として自律走行体1の大きさに基づいて定められる。
【0054】
(ステップS4-3)
地図作成部50は、走行軌道上の各領域について領域判定が終了したか否かを判定する。
当該領域判定が終了してない場合、地図作成部50はステップS4-1に戻る。それ以外の場合、地図作成部50はステップS4の処理を終了する。
【0055】
(ステップS5)
地図作成部50は、ステップS4の処理を行うことにより作成した地図に対して走行禁止領域を設定する処理を行う。
図10は、当該処理の一例を示すフローチャートを示す。図10を用いて当該処理を説明する。
【0056】
(ステップS5-1)
地図作成部50は、分類対象領域内に計測不能領域が存在するか否かを判定する。計測不能領域は、センサー200の持つ特性により対応する距離値を算出することができなかった領域である。具体例として、センサー200として3D LiDARを使用する場合、反射率が低い物体が存在する領域について、当該領域までの距離を計測することができない。そのため、当該領域が計測不能領域となる確率が高い。
分類対象領域内に計測不能領域が存在する場合、地図作成部50はステップS5-4の処理を実施する。
【0057】
(ステップS5-2)
地図作成部50は、分類対象領域内に障害物候補領域が存在するか否かを判定する。障害物候補領域は、対応する高さが閾値以上である領域である。当該閾値はどのように定められてもよい。対応する高さがある高さ以上である領域は障害物に対応する領域である可能性が高い。そこで、本ステップの処理は障害物候補領域を走行禁止領域にするために行われる。
分類対象領域内に障害物候補領域が存在する場合、地図作成部50はステップS5-4の処理を実施する。
【0058】
(ステップS5-3)
地図作成部50は、分類対象領域内に反射相違領域が存在するか否かを判定する。反射相違領域は、走行可能領域に対応する反射強度とは異なる反射強度を有する領域である。反射強度は、電磁波を物体に照射したときに物体に反射して戻ってきた電磁波の割合を示す指標である。そのため、高い反射率を有する物体が存在する領域ほど対応する反射強度の値が高くなる。走行可能領域に対応する反射強度は、基準反射強度に当たる。本実施の形態では、走行可能領域に対応する反射強度とは異なる反射強度を有する領域を自律移動体が走行することができない可能性が高いと判定する。なお、走行可能領域に対応する反射強度は、走行可能領域内の各領域に対応する反射強度の最小値及び最大値に応じて定められた範囲内の反射強度全体を意味してもよい。当該範囲の最小値は、走行可能領域内の各領域に対応する反射強度の最小値を下回ってもよい。当該範囲の最大値は、走行可能領域内の各領域に対応する反射強度の最大値を上回ってもよい。走行可能領域に対応する反射強度がある範囲の反射強度全体であるとき、ある領域が有する反射強度が当該ある範囲に含まれていない場合に、当該ある領域は走行可能領域に対応する反射強度とは異なる反射強度を有するものと判定される。また、地図作成部50は、ある領域に対応する反射強度と走行可能領域に対応する反射強度との差異が一定以上である場合に、当該ある領域を反射相違領域と判定してもよい。
分類対象領域内に反射相違領域が存在する場合、地図作成部50はステップS5-4の処理を実施する。
【0059】
(ステップS5-4)
地図作成部50は、分類対象領域内において、計測不能領域と、障害物候補領域と、反射相違領域とのいずれかに該当する各領域を走行禁止領域に設定する。この際、地図作成部50は、具体例として各領域に対して走行禁止領域を示す値を付与する。走行禁止領域は、具体例として、信頼度として0が割り当てられた領域である。本ステップの処理により、各領域が走行禁止領域に分類される。
地図作成部50は、具体例として、分類対象領域のうち計測不能領域と障害物候補領域と反射相違領域とのいずれかに該当する箇所に対して信頼度0を割り当てる。
【0060】
(ステップS5-5)
地図作成部50は、走行禁止領域の領域判定が終了したか否かを判断する。当該領域判定が終了していない場合、地図作成部50はステップS5-1へ戻る。それ以外の場合、地図作成部50はステップS5の処理を終了する。
【0061】
(ステップS6)
地図作成部50は、分類対象領域内の領域のうち信頼度が割り当てられていない各領域に対して信頼度を割り当てる。この際、地図作成部50は、走行可能領域と走行禁止領域とのどちらにも対応しない値を信頼度として各領域に対して割り当てる。即ち、地図作成部50は、その他領域に対応する仮の信頼度を各領域に対して割り振る。地図作成部50は、具体例として各領域に対して信頼度50を割り当てる。
図11は、地図作成フェーズの処理を実行することにより作成された地図の具体例を示している。
【0062】
<地図更新フェーズ>
自律走行体3は、地図作成フェーズにおいて作成された地図を用いた場合に、走行可能領域という極めて限定的な領域しか移動することができない。ここで、走行禁止領域は、確実に自律走行体3が走行することができない領域である。その他領域は、自律走行体3が走行することができる可能性がある領域である。そこで、実際に地図を利用するフェーズにおいて、自律走行体3は、その他領域を走行しているときに地図を更新する処理を行うことにより、分類対象領域内における走行可能領域を拡大する。具体的には、自律走行体3は、その他領域を走行しているときに速度を落とし、図12に示す処理を実行することにより地図を更新する。
【0063】
図12は、地図更新フェーズの処理の一例を示すフローチャートである。地図更新フェーズでは、自律走行体3が実際のタスクを遂行しながら更新対象地図を更新することを想定している。実際のタスクは、具体例として物を運ぶ作業である。更新対象地図は、地図作成フェーズにおいて作成された地図と、地図更新フェーズにおいて更新された地図との総称である。
自律走行体3がタスク制御部60の指示に従って走行する度に地図更新フェーズの処理が実施されることにより、その他領域に分類されている各領域が走行可能領域であるか否かが明確になる。図12を用いて地図更新フェーズの処理を説明する。
【0064】
(ステップS7)
地図更新部80は、分類対象領域内の領域のうち更新する各領域を判定する。
図13及び図14は判定処理の具体例を示している。これらの図によれば、対応する信頼度が100である領域を自律走行体3が通過する度に、地図更新部80は、対応する信頼度が0である領域と、自律走行体3が走行している領域以外の領域であって対応する信頼度が100である領域とを探索する。地図更新部80は、対応する信頼度が0又は100である領域を発見した場合にステップS8へ進む。発見された各領域は、対象分類済領域に当たる。なお、探索される各領域は、対象地点から半径Xm以内に存在する領域に限定されてもよい。Xの値はどのように設定されてもよい。
【0065】
(ステップS8)
自己位置推定部70は、更新対象地図とセンサー201の計測結果とに基づいて自律走行体3の位置を推定する。
地図更新部80は、推定された自律走行体3の位置と、発見した各領域とに基づいて、その他領域に分類されている各領域に対応する信頼度を更新する。推定された自律走行体3の位置は対象地点に当たる。
具体例として、地図更新部80は、図13に示すように、自律走行体3の位置から対応する信頼度が0である領域までの間に存在する各領域であって、その他領域に対応する各領域について、対応する信頼度が100である領域に近いほど高く、対応する信頼度が0である領域に近いほど低い値にする。この際、地図更新部80は、図14に示すように、ある領域に対して既に割り当てられている信頼度が当該ある領域に対して割り当てようとしている信頼度よりも高い場合に、当該ある領域に信頼度を更新しない。対応する信頼度が更新対象である各領域は、第2未分類領域に当たる。
また、図15及び図16に示すように、その他領域に分類されている領域において障害物が出現した場合において、地図更新部80は、障害物の出現位置に応じてその他領域に分類されている各領域を走行禁止領域に適宜設定する。
【0066】
(ステップS9)
地図更新部80は、地図更新フェーズの処理の終了判定を行う。地図更新部80は、具体例として、自律走行体3の走行が終了した時点において地図更新フェーズの処理を終了する。
【0067】
***実施の形態1の効果の説明***
以上のように、本実施の形態によれば、取得された距離値及び反射強度と、計測データの取得時に自律走行体が走行可能である場所のみを走行したという事実とを利用することにより、走行可能領域と走行禁止領域とを比較的高い精度で判別することができる。そのため、本実施の形態によれば、過剰に設定される走行禁止領域の量を減らすことができる。
また、本実施の形態によれば、自律走行体が走行する度に地図上の各領域の信頼度が適宜更新されるため、環境の変化に対して対応することができる。
【0068】
***他の構成***
<変形例1>
図17は、本変形例に係る制御装置100のハードウェア構成例を示している。
制御装置100は、プロセッサ91、プロセッサ91とメモリ92、プロセッサ91と補助記憶装置93、あるいはプロセッサ91とメモリ92と補助記憶装置93とに代えて、処理回路98を備える。
処理回路98は、制御装置100が備える各部の少なくとも一部を実現するハードウェアである。
処理回路98は、専用のハードウェアであってもよく、また、メモリ92に格納されるプログラムを実行するプロセッサであってもよい。
【0069】
処理回路98が専用のハードウェアである場合、処理回路98は、具体例として、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)又はこれらの組み合わせである。
制御装置100は、処理回路98を代替する複数の処理回路を備えてもよい。複数の処理回路は、処理回路98の役割を分担する。
【0070】
制御装置100において、一部の機能が専用のハードウェアによって実現されて、残りの機能がソフトウェア又はファームウェアによって実現されてもよい。
【0071】
処理回路98は、具体例として、ハードウェア、ソフトウェア、ファームウェア、又はこれらの組み合わせにより実現される。
プロセッサ91とメモリ92と補助記憶装置93と処理回路98とを、総称して「プロセッシングサーキットリー」という。つまり、制御装置100の各機能構成要素の機能は、プロセッシングサーキットリーにより実現される。
他の制御装置のハードウェア構成は、本変形例と同様であってもよい。
【0072】
***他の実施の形態***
実施の形態1について説明したが、本実施の形態のうち、複数の部分を組み合わせて実施しても構わない。あるいは、本実施の形態を部分的に実施しても構わない。その他、本実施の形態は、必要に応じて種々の変更がなされても構わず、全体としてあるいは部分的に、どのように組み合わせて実施されても構わない。
なお、前述した実施の形態は、本質的に好ましい例示であって、本開示と、その適用物と、用途の範囲とを制限することを意図するものではない。フローチャートなどを用いて説明した手順は適宜変更されてもよい。
【符号の説明】
【0073】
1,3 自律走行体、2,4 筐体、10,11 走行制御部、20 手動制御部、30 データ取得部、40,41,42 記憶部、50 地図作成部、60 タスク制御部、70 自己位置推定部、80 地図更新部、90 地図生成システム、91 プロセッサ、92 メモリ、93 補助記憶装置、94 入出力IF、95 通信装置、98 処理回路、99 信号線、100,101,102 制御装置、200,201 センサー、300 コントローラー。
【要約】
制御装置(102)は地図更新部(80)を備える。分類対象領域を示す更新対象地図において、走行可能領域である可能性に対応する指標である信頼度としてその他領域であることを示す値が各領域に設定されているとき、地図更新部(80)は、対象分類済領域と対象地点との間に存在するその他領域に対応する信頼度を対象更新値に更新する。対象分類済領域は、第2自律走行体が第2走行軌道上の対象地点を走行しているときに第2自律走行体が備える第2センサーが第2自律走行体の周囲を計測した結果に基づいて発見された各領域であって、更新対象地図において走行可能領域と走行禁止領域とのいずれかに分類されている各領域である。対象更新値は、その他領域と対象分類済領域との間の距離に応じた値であって、対象分類済領域が走行可能領域と走行禁止領域とのいずれであるかに応じた値である。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17