JP2019095256A - 自律走行装置 - Google Patents
自律走行装置 Download PDFInfo
- Publication number
- JP2019095256A JP2019095256A JP2017223556A JP2017223556A JP2019095256A JP 2019095256 A JP2019095256 A JP 2019095256A JP 2017223556 A JP2017223556 A JP 2017223556A JP 2017223556 A JP2017223556 A JP 2017223556A JP 2019095256 A JP2019095256 A JP 2019095256A
- Authority
- JP
- Japan
- Prior art keywords
- component
- geomagnetic vector
- measured
- vector
- magnetic field
- 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.)
- Pending
Links
- 239000013598 vector Substances 0.000 claims abstract description 193
- 238000012937 correction Methods 0.000 claims description 32
- 238000006243 chemical reaction Methods 0.000 claims description 19
- 238000005259 measurement Methods 0.000 claims description 19
- 239000011159 matrix material Substances 0.000 description 30
- 238000004364 calculation method Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 19
- 238000000034 method Methods 0.000 description 14
- 238000001514 detection method Methods 0.000 description 10
- 230000007613 environmental effect Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 6
- 230000005389 magnetism Effects 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000005358 geomagnetic field Effects 0.000 description 3
- 230000035699 permeability Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 229910052742 iron Inorganic materials 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
【課題】磁気センサにより方位を推定可能か否かより正確に判定する。
【解決手段】自律走行装置100は、本体1と、磁気センサ4と、方位推定部351と、判定部353と、を備える。磁気センサ4は、本体1に取り付けられる。磁気センサ4は、磁場を磁場ベクトルとして測定する。方位推定部351は、磁気センサ4にて測定された実測地磁気ベクトルVmに基づいて、本体1の方位を推定する。判定部353は、第1成分Imc(xy)と地磁気ベクトルVgmの水平方向成分である第1基準成分Is1との比較結果と、第2成分Imc(z)と地磁気ベクトルVgmの鉛直方向成分である第2基準成分Is2との比較結果と、に基づいて方位推定部351における方位の推定を実行するか否かを判定する。
【選択図】図2
【解決手段】自律走行装置100は、本体1と、磁気センサ4と、方位推定部351と、判定部353と、を備える。磁気センサ4は、本体1に取り付けられる。磁気センサ4は、磁場を磁場ベクトルとして測定する。方位推定部351は、磁気センサ4にて測定された実測地磁気ベクトルVmに基づいて、本体1の方位を推定する。判定部353は、第1成分Imc(xy)と地磁気ベクトルVgmの水平方向成分である第1基準成分Is1との比較結果と、第2成分Imc(z)と地磁気ベクトルVgmの鉛直方向成分である第2基準成分Is2との比較結果と、に基づいて方位推定部351における方位の推定を実行するか否かを判定する。
【選択図】図2
Description
本発明は、磁場を測定するための磁気センサを備え、当該磁気センサによる磁場の測定結果に基づいて方位を推定する自律走行装置に関する。
従来、走行環境を自律的に走行する自律走行装置が知られている。この自律走行装置では、レーザレンジファインダー(LRF)などにより得られた周囲の障害物に関する情報、及び/又は、自律走行装置を走行させる車輪の回転量に基づいて、自律走行装置の位置と方位とを推定している。
その一方で、地磁気を磁気センサにて測定したときの結果に基づいて、車両などの移動体の方位を推定する技術が知られている(例えば、特許文献1)。この方位の推定方法は、周囲に存在する障害物に関する情報や車輪の回転量といった情報を必要とすることなく、方位を推定できる。
地磁気は微弱な磁場であり、磁気を発生させる物体及び/又は透磁率が高い材質にて製造された物体が存在する場合には、地磁気はその影響を受ける。磁気を発生させる物体及び/又は透磁率が高い物体としては、例えば、鉄を主成分とする材料にて製造された配管及び柱(鉄柱)などがある。
磁気センサは、磁気を発生させる物体及び/又は透磁率が高い物体の影響を受けた地磁気による磁場を測定する。そのため、磁気センサにて測定された磁場に基づいて推定された方位と実際の方位との間には誤差が存在することがある。
上記の問題を解決するため、特許文献1では、磁場(外部の影響を受けた地磁気)の鉛直方向成分を測定するセンサを設け、当該センサにて磁場の鉛直方向が検出された場合に、磁気センサによる方位の推定を中止している。この場合、地磁気の鉛直方向における外部の影響は検知できる一方、水平方向の影響は検知できない。磁気センサでは、測定された磁場の水平方向成分から方位を推定するので、地磁気に対して鉛直方向に影響がなくとも、水平方向に影響をうけた場合には、磁気センサの磁場の測定結果に基づいて正確な方位を推定できなくなる。
本発明の目的は、磁気センサによる地磁気の測定結果に基づいて方位を推定する自律走行装置において、磁気センサにより方位を推定可能か否かより正確に判定することにある。
以下に、課題を解決するための手段として複数の態様を説明する。これら態様は、必要に応じて任意に組み合せることができる。
本発明の一見地に係る自律走行装置は、本体と、磁気センサと、方位推定部と、判定部と、を備える。本体は、自律走行装置の本体である。磁気センサは、本体に取り付けられる。磁気センサは、ゼロ磁場を原点とし磁場の各成分強度を表す3次元座標系において定義される磁場ベクトルを測定する。方位推定部は、磁気センサにて測定された地磁気の実測値である実測地磁気ベクトルに基づいて、本体の方位を推定する。
本発明の一見地に係る自律走行装置は、本体と、磁気センサと、方位推定部と、判定部と、を備える。本体は、自律走行装置の本体である。磁気センサは、本体に取り付けられる。磁気センサは、ゼロ磁場を原点とし磁場の各成分強度を表す3次元座標系において定義される磁場ベクトルを測定する。方位推定部は、磁気センサにて測定された地磁気の実測値である実測地磁気ベクトルに基づいて、本体の方位を推定する。
判定部は、第1成分と第1基準成分との比較結果と、第2成分と第2基準成分との比較結果と、に基づいて方位推定部における方位の推定を実行するか否かを判定する。
第1成分は、実測地磁気ベクトルの3次元座標系における水平方向の成分である。第1基準成分は、地磁気ベクトルの3次元座標系における水平方向の成分である。地磁気ベクトルは、3次元座標系において定義され、地磁気の大きさと方向とを表すベクトルである。
第2成分は、実測地磁気ベクトルの3次元座標系における鉛直方向の成分である。第2基準成分は、地磁気ベクトルの3次元座標系における鉛直方向の成分である。
第1成分は、実測地磁気ベクトルの3次元座標系における水平方向の成分である。第1基準成分は、地磁気ベクトルの3次元座標系における水平方向の成分である。地磁気ベクトルは、3次元座標系において定義され、地磁気の大きさと方向とを表すベクトルである。
第2成分は、実測地磁気ベクトルの3次元座標系における鉛直方向の成分である。第2基準成分は、地磁気ベクトルの3次元座標系における鉛直方向の成分である。
上記の自律走行装置では、判定部が、地磁気を磁気センサにて測定したときの実測値の鉛直方向成分と地磁気の鉛直方向成分との比較結果のみでなく、地磁気の実測値の水平方向成分と地磁気の水平方向成分との比較結果も考慮して、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定するか否かを判定している。
これにより、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定するか否かを、より正確に判定できる。
これにより、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定するか否かを、より正確に判定できる。
判定部は、第1成分と第1基準成分との第1差分と、第2成分と第2基準成分との第2差分と、に基づいて方位推定部における方位の推定を実行するか否かを判定してもよい。
これにより、より簡単な計算により、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定するか否かを正確に判定できる。
これにより、より簡単な計算により、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定するか否かを正確に判定できる。
判定部は、第1差分と第2差分との二乗和の平方根が所定の閾値以上であるか否かにより、方位推定部における方位の推定を実行するか否かを判定してもよい。
これにより、簡単な計算により、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定するか否かを正確に判定できる。
これにより、簡単な計算により、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定するか否かを正確に判定できる。
判定部は、第1差分と第2差分との二乗和の平方根が所定の閾値以上である場合に、方位推定部における方位の推定を実行しないと判定してもよい。
これにより、簡単な計算により、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定しないと正確に判定できる。
これにより、簡単な計算により、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定しないと正確に判定できる。
上記の自律走行装置は、補正部をさらに備えてもよい。補正部は、補正式により実測地磁気ベクトルを補正する。補正式は、本体を1回転させる間に測定された複数の実測地磁気ベクトルが3次元座標系において描く軌跡を、真円軌跡に変換する座標変換を表す式である。真円軌跡は、3次元座標系の水平方向と平行な面内において定義され、当該平行な面の原点を中心とする真円形状の軌跡である。この場合、第1基準成分は真円軌跡の半径に対応し、第2基準成分は3次元座標系の原点と真円軌跡の中心との間の距離に対応する。
これにより、実測地磁気ベクトルから自律走行装置が地磁気に及ぼす影響を排除できる。その結果、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定するか否かを正確に判定できる。
これにより、実測地磁気ベクトルから自律走行装置が地磁気に及ぼす影響を排除できる。その結果、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定するか否かを正確に判定できる。
地磁気を磁気センサにて測定したときの実測値の鉛直方向成分と地磁気の鉛直方向成分との比較結果のみでなく、地磁気の実測値の水平方向成分と地磁気の水平方向成分との比較結果も考慮することで、磁気センサにて取得した地磁気の実測値を用いて自律走行装置の方位を推定するか否かを正確に判定できる。
1.第1実施形態
(1)自律走行台車の全体構成
本実施形態の自律走行装置100は、距離センサとマップマッチングを使用したSLAMによる自己位置推定と、磁気センサ4により測定した地磁気の実測値である実測地磁気ベクトルVmに基づく方位推定と、を用いて、走行環境における自律走行装置100の位置と方位(姿勢)を推定しながら走行する。
(1)自律走行台車の全体構成
本実施形態の自律走行装置100は、距離センサとマップマッチングを使用したSLAMによる自己位置推定と、磁気センサ4により測定した地磁気の実測値である実測地磁気ベクトルVmに基づく方位推定と、を用いて、走行環境における自律走行装置100の位置と方位(姿勢)を推定しながら走行する。
以下、図1を用いて、本発明の第1実施形態に係る自律走行装置100の全体構成を説明する。図1は、第1実施形態の自律走行装置の構成を示す図である。自律走行装置100は、本体1を有する。本体1は、自律走行装置100の本体を構成する筐体である。
自律走行装置100は、走行部2を有する。走行部2は、本体1の下部フレームLFに設けられ、自律走行装置100を走行駆動する。本実施形態における走行部2は、二輪差動型の走行部である。
具体的には、走行部2は、それぞれが下部フレームLFの左右に設けられた2つの走行車輪21a、21bを有している。走行部2は、さらに、走行車輪21a、21bにそれぞれ対応して、一対のモータ23a、23bを有している。一対のモータ23a、23bの、出力回転軸には、走行車輪21a、21bが接続されている。これにより、2つの走行車輪21a、21bのそれぞれを独立に回転させることができる。
具体的には、走行部2は、それぞれが下部フレームLFの左右に設けられた2つの走行車輪21a、21bを有している。走行部2は、さらに、走行車輪21a、21bにそれぞれ対応して、一対のモータ23a、23bを有している。一対のモータ23a、23bの、出力回転軸には、走行車輪21a、21bが接続されている。これにより、2つの走行車輪21a、21bのそれぞれを独立に回転させることができる。
二輪差動型の走行部2は、走行車輪21a、21bを同一の回転速度にて回転することにより、自律走行装置100(本体1)を直進させることができる。また、2つの走行車輪21a、21bの回転方向を同一としつつ回転速度を異ならせることにより、自律走行装置100を直進又は後進させながらその方位(姿勢)を変化できる。さらに、2つの走行車輪21a、21bを互いに逆方向に同一の回転速度にて回転させることにより、自律走行装置100をその場で回転させることができる。
モータ23aの出力回転軸及びモータ23bの出力回転軸のそれぞれには、エンコーダ25a、25b(図2)が接続されており、モータ23a、23bの回転位置を検出する。
自律走行装置100は、本体1の中間フレームMFに配置された制御部3を有する。制御部3は、CPU(Central Processing Unit)、ストレージとしての記憶装置(RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)又はSSD(Solid State Drive)などの記憶装置により構成される)、及び各種インターフェースなどを備えるコンピュータである。後述する制御部3の各構成要素の機能の一部又は全部は、上記の記憶装置に記憶された所定のプログラムを実行することで実現されてもよい。
または、制御部3の各構成要素の機能の一部又は全部は、SoC(System on Chip)などのハードウェアにより実現されていてもよい。
または、制御部3の各構成要素の機能の一部又は全部は、SoC(System on Chip)などのハードウェアにより実現されていてもよい。
自律走行装置100は、磁気センサ4を有する。磁気センサ4は、本体1の上部フレームUFに取り付けられた、磁場の3次元方向の各成分強度を測定する三軸磁気センサである。三軸磁気センサである磁気センサ4は、磁場を(Ix,Iy,Iz)(Ix:磁場のx軸方向の強度成分、Iy:磁場のy軸方向の強度成分、Iz:磁場のz軸方向の強度成分)と3次元の座標値として測定できる。
すなわち、ゼロ磁場(すなわち、磁場が存在しない)を原点とし、本体1の幅方向の成分強度をx軸方向、本体1の前後方向の成分強度をy軸方向、本体1の高さ方向の成分強度をz軸方向とする、磁場の各強度成分を表す3次元座標系において、磁気センサ4にて測定される磁場は、当該3次元座標系の原点から座標値(Ix,Iy,Iz)に延びるベクトルとして定義できる。この磁場を表すベクトルを「磁場ベクトル」と呼ぶことにする。
また、磁場ベクトルは、磁場を表す3次元の座標値(Ix,Iy,Iz)として表すことにする。
また、磁場ベクトルは、磁場を表す3次元の座標値(Ix,Iy,Iz)として表すことにする。
このように、3次元の座標値として表される磁場ベクトルを測定することにより、磁気センサ4は、磁場の大きさと方向とを測定することができる。
自律走行装置100は、操作部5を有する。操作部5は、ユーザによる自律走行装置100に関する各種設定の入力を受け付ける、例えばキーボード又はタッチパネルなどの入力インターフェースである。
操作部5は、現在の走行状況に関する情報、その他の各種情報を表示するディスプレイを有してもよい。ディスプレイとしては、例えば、液晶ディスプレイ、有機ELディスプレイなどを用いることができる。また、ディスプレイとタッチパネルは一体となっていてもよい。
操作部5は、現在の走行状況に関する情報、その他の各種情報を表示するディスプレイを有してもよい。ディスプレイとしては、例えば、液晶ディスプレイ、有機ELディスプレイなどを用いることができる。また、ディスプレイとタッチパネルは一体となっていてもよい。
操作部5にて受け付けたユーザによる入力は、適切な信号変換がなされて、制御部3に出力される。
(2)制御部の詳細構成
以下、自律走行装置100に備わる制御部3の詳細構成について図2を用いて説明する。図2は、制御部の詳細構成を示す図である。
制御部3は記憶部31を有する。記憶部31は、制御部3の記憶装置の記憶領域の少なくとも一部に形成された記憶領域である。記憶部31は、自律走行装置100の各種設定値など、自律走行装置100を走行させるために用いられるパラメータなどを記憶する。環境地図復元用データと、環境地図とを記憶する。
以下、自律走行装置100に備わる制御部3の詳細構成について図2を用いて説明する。図2は、制御部の詳細構成を示す図である。
制御部3は記憶部31を有する。記憶部31は、制御部3の記憶装置の記憶領域の少なくとも一部に形成された記憶領域である。記憶部31は、自律走行装置100の各種設定値など、自律走行装置100を走行させるために用いられるパラメータなどを記憶する。環境地図復元用データと、環境地図とを記憶する。
記憶部31は、実測地磁気ベクトルVmを用いて自律走行装置100の方位を推定するか否かを判定する基準値を記憶する。
具体的には、記憶部31は、3次元座標系における地磁気ベクトルの水平方向(3次元座標系のx−y平面と平行な方向)の成分である第1基準成分と、鉛直方向(3次元座標系のz軸方向)の成分である第2基準成分と、を記憶する。
具体的には、記憶部31は、3次元座標系における地磁気ベクトルの水平方向(3次元座標系のx−y平面と平行な方向)の成分である第1基準成分と、鉛直方向(3次元座標系のz軸方向)の成分である第2基準成分と、を記憶する。
後述するように、本実施形態においては、所定の環境において自律走行装置100を水平面内で1回転させる間に取得した実測地磁気ベクトルVmから、地磁気ベクトル(算出地磁気ベクトルVgm')を算出している。従って、本実施形態においては、算出地磁気ベクトルVgm'の水平方向の成分であるIgm'(xy)と、算出地磁気ベクトルVgm'の鉛直方向成分であるIgm'(z)と、が記憶部31に記憶される。
また、記憶部31は、磁気センサ4による地磁気の測定結果(すなわち、地磁気の実測値)である実測地磁気ベクトルVmの補正を行うための補正式を導出するための行列を記憶する。実測地磁気ベクトルVmの補正式については、後ほど詳しく説明する。また、上記のIgm'(xy)及びIgm'(z)は、実測地磁気ベクトルVmの補正式を算出する際に算出できる。
記憶部31は、環境地図データを記憶する。環境地図データは、自律走行装置100が移動する移動領域を表す地図情報である。記憶部31は、さらに、走行スケジュールを記憶している。走行スケジュールは、自律走行装置100が自律的に走行する際の走行経路を示すものである。
制御部3は、SLAM処理部32を有する。SLAM処理部32は、位置推定と環境地図データの作成とを同時に実行可能なSLAM(Simultaneous Localization and Mapping)処理を実行する。
具体的には、SLAM処理部32は、本体1に取り付けられた距離センサ6から得られた、自律走行装置100の周囲に存在する障害物に関する情報(この情報をローカルマップと呼ぶことにする)を用いて、位置推定と環境地図データの作成とを実行する。
具体的には、SLAM処理部32は、本体1に取り付けられた距離センサ6から得られた、自律走行装置100の周囲に存在する障害物に関する情報(この情報をローカルマップと呼ぶことにする)を用いて、位置推定と環境地図データの作成とを実行する。
より具体的には、SLAM処理部32は、自律走行装置100の各通過点にて取得したローカルマップを、対応する通過点に配置することで環境地図データを作成する。
また、SLAM処理部32は、所定の時間において取得されたローカルマップと環境地図データとのマップマッチングによる位置推定結果と、エンコーダ25a、25bから取得した走行車輪21a、21bの回転量に基づいた位置推定結果と、に基づいて、自律走行装置100の移動領域における位置と姿勢(方位)を推定する。
距離センサ6は、自律走行装置100から周囲にある障害物までの距離を二次元的に又は三次元的に取得するためのセンサである。距離センサ6は、二次元的に距離を取得するものとして、具体的には、自律走行装置100の走行方向前後にそれぞれ設けられた前方レーザレンジセンサ及び後方レーザレンジセンサである。
レーザレンジセンサは、例えば、レーザ発振器によりパルス発振されたレーザ光を障害物などの目標物に照射し、目標物から反射した反射光をレーザ受信機により受信することにより、目標物までの距離を算出するレーザレンジファインダ(LRF:Laser Range Finder)である。これらは、照射するレーザ光を回転ミラーを用いて所定の角度で扇状にレーザ光を走査できる。
また、距離センサ6は、三次元的に距離を取得するものとして、ステレオカメラやTOF(Time Of Flight)カメラを採用できる。
また、距離センサ6は、三次元的に距離を取得するものとして、ステレオカメラやTOF(Time Of Flight)カメラを採用できる。
他の実施形態において、自律走行装置100は、例えば本体1に取り付けられたGNSS(Global Navigation Satellite System:全地球航法衛星システム)受信機7を有してもよい。この場合、SLAM処理部32は、GNSS受信機7による位置推定結果に基づいて、自律走行装置100の位置を推定してもよい。
具体的には、GNSS受信機7は、SLAM処理部32へ、測位により求めた現在地の絶対座標(緯度/経度)を出力する。
これにより、例えば、周囲に障害物が存在しないオープンスペースを自律走行装置100が走行中であるか、又は、障害物は存在していてもその配置が単純であるために、上記のマップマッチングによる位置推定の精度が低下する場合に、GNSS受信機7による位置推定結果を用いることができる。
これにより、例えば、周囲に障害物が存在しないオープンスペースを自律走行装置100が走行中であるか、又は、障害物は存在していてもその配置が単純であるために、上記のマップマッチングによる位置推定の精度が低下する場合に、GNSS受信機7による位置推定結果を用いることができる。
上記のように、GNSS受信機7は、現在地の絶対座標を出力できる一方、自律走行装置100(本体1)の方位については、自律走行装置100の移動前後の絶対座標の差分を用いても精度よく算出できない。従って、SLAM法による位置推定の精度が低下する箇所を自律走行装置100が走行中の場合には、上記の磁気センサ4を用いることで、当該箇所における自律走行装置100の方位(姿勢)を精度よく測定できる。
制御部3は、走行制御部33を有する。走行制御部33は、入力される走行指令に基づいて、モータ23a、23bの制御量を生成し、走行部2に出力する。走行制御部33は、例えば、モーションコントローラである。
自律走行装置100が自律的に走行するとき、上記の走行指令は、SLAM処理部32により推定される環境地図上の位置及び姿勢(方位)と走行スケジュールとの比較に基づいて、生成される。
自律走行装置100が自律的に走行するとき、上記の走行指令は、SLAM処理部32により推定される環境地図上の位置及び姿勢(方位)と走行スケジュールとの比較に基づいて、生成される。
制御部3は、モータ駆動部34a、34bを有する。モータ駆動部34a、34bは、それぞれ、走行制御部33から入力される制御量と、対応するエンコーダ25a、25bにより検出されるモータ23a、23bの回転位置とに基づいて、対応するモータ23a、23bをフィードバック制御する。
制御部3は、方位算出部35を有する。方位算出部35は、磁気センサ4にて測定された実測地磁気ベクトルVmが方位の推定に適切な実測値である場合に、実測地磁気ベクトルVmに基づいて、自律走行装置100の方位を算出する。
具体的には、方位算出部35は、方位推定部351を有する。方位推定部351は、磁気センサ4にて測定された実測地磁気ベクトルVmに基づいて、自律走行装置100(本体1)の方位を推定する。実測地磁気ベクトルVm(地磁気ベクトル)に基づく自律走行装置100の方位の推定原理については、後ほど詳しく説明する。
方位算出部35は、判定部353を有する。判定部353は、実測地磁気ベクトルVmの上記の3次元座標系における水平方向の成分である第1成分と記憶部31に記憶されている第1基準成分との比較結果と、実測地磁気ベクトルVmの3次元座標系における鉛直方向の成分である第2成分と記憶部31に記憶されている第2基準成分との比較結果と、に基づいて、方位推定部351における方位の推定を実行するか否かを判定する。
方位算出部35は、補正部355を有する。補正部355は、記憶部31に記憶されている補正式により、実測地磁気ベクトルVmを補正する。
後述するように、上記の補正式は、自律走行装置100の構成要素により影響を受けた地磁気の実測値から、自律走行装置100の構成要素による影響を除去するための式であると言える。従って、補正部355を有することにより、方位算出部35は、自律走行装置100の構成要素による影響を除去した実測地磁気ベクトルVmに基づいて、自律走行装置100の方位を推定できる。
また、判定部353を有することにより、方位算出部35は、(補正後の)実測地磁気ベクトルVmが方位を推定するために適切なものであるか否かを判定できる。その結果、方位算出部35は、例えば、方位を推定するために適切な実測地磁気ベクトルVmを用いて精度よく方位を推定できる。
(3)方位の推定原理
以下、磁気センサ4により測定した実測地磁気ベクトルVmに基づいて、自律走行装置100の方位を推定する原理について説明する。以下の説明では、外部の磁場及び物体による影響を受けていない地磁気を磁気センサ4により測定したとする。後述するように、磁気センサ4にて測定される地磁気も3次元座標系おいて各成分強度を有する、すなわち、地磁気に向きと大きさが存在することとなるので、以後、(外部環境の影響を受けていない)地磁気を「地磁気ベクトルVgm」として、その向きと大きさを表すこととする。
以下、磁気センサ4により測定した実測地磁気ベクトルVmに基づいて、自律走行装置100の方位を推定する原理について説明する。以下の説明では、外部の磁場及び物体による影響を受けていない地磁気を磁気センサ4により測定したとする。後述するように、磁気センサ4にて測定される地磁気も3次元座標系おいて各成分強度を有する、すなわち、地磁気に向きと大きさが存在することとなるので、以後、(外部環境の影響を受けていない)地磁気を「地磁気ベクトルVgm」として、その向きと大きさを表すこととする。
また、以下の説明においては、磁場ベクトルを定義する3次元座標系として、図3に示すように、本体1の幅方向をx軸方向(左方向を正とする)とし、前後方向をy軸方向(前進方向を正とする)とし、高さ方向(高さが高くなる方向を正とする)をz軸方向とする。図3は、磁場ベクトルを定義する3次元座標系の一例を示す図である。
磁気センサ4は、本体1に取り付けられており(固定されており)、x軸方向の磁場強度を測定する磁場検出素子と、y軸方向の磁場強度を測定する磁場検出素子と、z軸方向の磁場強度を測定する磁場検出素子と、を有している。したがって、上記の3次元座標系は、自律走行装置100(本体)の水平方向の姿勢の変化にしたがってz軸周りに回転する。その一方、地磁気ベクトルVgmは、常に北を向いており、一定の強度Igmを有する。
従って、例えば、自律走行装置100の前進方向が地磁気の南を向いた場合(図4A)、地磁気ベクトルVgmはy軸の負方向を向く。この場合、磁気センサ4は、地磁気ベクトルVgmの水平方向成分として(0,−Igm(xy))(Igm(xy):地磁気ベクトルVgmの水平方向の強度)を測定する。すなわち、磁気センサ4のy軸方向の磁場強度を測定する磁場検出素子が、磁場の強度として−Igm(xy)を検出する。
また、例えば、自律走行装置100の前進方向が地磁気の西を向いた場合(図4B)、地磁気ベクトルVgmはx軸の負方向を向く。この場合、磁気センサ4は、地磁気ベクトルVgmの水平方向成分として(−Igm(xy),0)を測定する。すなわち、磁気センサ4のx軸方向の磁場強度を測定する磁場検出素子が、磁場の強度として−Igm(xy)を検出する。
さらに、例えば、自律走行装置100の前進方向が、地磁気の北北東〜東北東のいずれかを向いた場合(図4C)、地磁気ベクトルVgmはx−y座標の第1象限方向に向く。この場合、磁気センサ4は、地磁気ベクトルVgmの水平方向成分として(Igm(x),Igm(y))(Igm(x):地磁気ベクトルVgmのx軸方向の強度、Igm(y):地磁気ベクトルVgmのy軸方向の強度)を測定する。すなわち、磁気センサ4のx軸方向の磁場強度を測定する磁場検出素子がIgm(x)を検出し、y軸方向の磁場強度を測定する磁場検出素子がIgm(y)を検出する。なお、Igm(xy)=sqrt((Igm(x))2+(Igm(y))2)(sqrt():()内の平方根)との関係が成り立つ。さらに、Igm=sqrt((Igm(xy))2+(Igm(z))2)との関係が成り立つ。
また、自律走行装置100の具体的な方位は、前進方向が地磁気の北に向く場合を方位0°とする場合には、tan-1(Igm(x)/Igm(y))との式から算出できる。
また、自律走行装置100の具体的な方位は、前進方向が地磁気の北に向く場合を方位0°とする場合には、tan-1(Igm(x)/Igm(y))との式から算出できる。
図4A〜図4Cは、地磁気ベクトルから方位を推定する方法の一例を示す図である。
このように、磁気センサ4が測定する地磁気ベクトルVgmの水平方向成分の強度と、当該水平方向成分の強度がx−y座標のどの象限に存在するかにより、自律走行装置100の方位を具体的に推定できる。地磁気ベクトルVgmの水平方向成分の強度がx−y座標のどの象限に存在するかは、x軸方向の磁場強度の正負とy軸方向の磁場強度の正負との関係から推定できる。
ただし、地磁気の向きと実際の方角とは一致しない。例えば、日本の場合、方位磁石が示す北(磁北)は、実際の真北よりも西に約7度ずれている。従って、磁気センサ4の出力から実際の方角を推定する際には、例えば、磁気センサ4の出力から推定された方角を、東に約7度ずらす補正を行う。
上記の場合において、本体を1回転させる間の複数の方位のそれぞれにおいて地磁気ベクトルVgmを測定し3次元座標系にプロットすると、当該測定された複数の地磁気ベクトルVgmは、図5に示すような真円軌跡を描く。図5は、真円軌跡の一例を示す図である。
具体的には、上記の真円軌跡は、3次元座標系の原点Oからz軸にIgm(z)(Igm(z):地磁気ベクトルのz軸方向成分の強度)だけ負方向に移動した位置に存在する3次元座標系の水平方向と平行な面(すなわち、z=−Igm(z)との式で表されるx−y平面に平行な平面)内に定義され、当該平行な面の原点(具体的には、(0,0,−Igm(z)))を中心とした半径Igm(xy)の円の軌跡である。
後ほど詳しく説明するように、本実施形態において、上記の真円軌跡の半径Igm(xy)と、3次元座標系の原点Oと上記の真円軌跡の中心との間の距離(Igm(z))は、磁気センサ4において測定された地磁気の実測値である実測地磁気ベクトルVmに基づいて自律走行装置100の方位を推定するか否かを判定するための基準として用いられる。従って、真円軌跡の半径Igm(xy)を「第1基準成分Is1」と呼び、3次元座標系の原点Oと上記の真円軌跡の中心との間の距離(Igm(z))を「第2基準成分Is2」と呼ぶことにする。
(4)算出地磁気ベクトルの算出方法
以下、磁気センサ4にて測定した(外部環境の影響を受けた)地磁気の実測値である実測地磁気ベクトルVmから、外部環境の影響を受けていない地磁気ベクトルを算出する方法について、図6を用いて説明する。図6は、地磁気ベクトルの算出方法を示すフローチャートである。以下においては、実測地磁気ベクトルVmから算出される地磁気ベクトルを「算出地磁気ベクトルVgm’」と定義する。
以下、磁気センサ4にて測定した(外部環境の影響を受けた)地磁気の実測値である実測地磁気ベクトルVmから、外部環境の影響を受けていない地磁気ベクトルを算出する方法について、図6を用いて説明する。図6は、地磁気ベクトルの算出方法を示すフローチャートである。以下においては、実測地磁気ベクトルVmから算出される地磁気ベクトルを「算出地磁気ベクトルVgm’」と定義する。
まず、磁気センサ4を取り付けた本体1(自律走行装置100)を水平面内で1回転させる。本体1を1回転させる間の複数の方位のそれぞれにおいて、磁気センサ4にて実測地磁気ベクトルVmを取得する(ステップS11)。具体的には、各方位において、磁気センサ4が有する3つの磁気検出素子により、実測地磁気ベクトルVmの各強度成分を測定する。
どの程度の数の実測地磁気ベクトルVmを取得するかについては、計算精度と(制御部3の)処理能力などを考慮して、適宜決定できる。
どの程度の数の実測地磁気ベクトルVmを取得するかについては、計算精度と(制御部3の)処理能力などを考慮して、適宜決定できる。
ステップS11における実測地磁気ベクトルVmの取得は、地磁気に対して、自律走行装置100による影響以外の影響がないか、あっても微弱な環境で行うことが好ましい。なぜなら、実測地磁気ベクトルVmから地磁気ベクトルVgmを算出する過程にて算出された座標の変換式は、実際に方位を推定する際に実測地磁気ベクトルVmを補正する際に用いるからである。
ステップS11において得られた複数の実測地磁気ベクトルVmは、自律走行装置100の構成要素の影響を受けて、3次元座標系において、例えば図7Aに示すような軌跡を描く。図7Aは、自律走行装置の影響を受けた地磁気を測定したときの実測地磁気ベクトルが描く軌跡の一例を示す図である。
次に、図7Aに示す複数の実測地磁気ベクトルVmが描く軌跡を回転して、当該軌跡を水平方向(x−y平面)と平行にする(ステップS12)。複数の実測地磁気ベクトルVmが描く軌跡を水平方向と平行にするにあたり、まず、当該複数の実測地磁気ベクトルVmが含まれる3次元座標系における平面を求める。
例えば、複数の実測地磁気ベクトルVmに対して主成分分析を行い、当該主成分分析にて算出された第3主成分を、複数の実測地磁気ベクトルVmが含まれる3次元座標系における平面の法線ベクトルとする。
例えば、複数の実測地磁気ベクトルVmに対して主成分分析を行い、当該主成分分析にて算出された第3主成分を、複数の実測地磁気ベクトルVmが含まれる3次元座標系における平面の法線ベクトルとする。
その後、複数の実測地磁気ベクトルVmが含まれる平面の法線ベクトルをz軸に平行とするような回転を表す行列(行列M1とする)を算出し、当該行列M1と複数の実測地磁気ベクトルVmとを掛け合わせて、複数の実測地磁気ベクトルVmを座標変換(回転)する。算出した行列M1は、記憶部31に記憶される。行列M1により座標変換後の複数の実測地磁気ベクトルVmを、「第1変換地磁気ベクトルVm’」と呼ぶことにする。
第1変換地磁気ベクトルVm’は、例えば図7Bに示すように、水平方向に平行な(x−y平面に平行な)楕円軌跡を描く。図7Bは、第1変換地磁気ベクトルが描く軌跡の一例を示す図である。
第1変換地磁気ベクトルVm’は、例えば図7Bに示すように、水平方向に平行な(x−y平面に平行な)楕円軌跡を描く。図7Bは、第1変換地磁気ベクトルが描く軌跡の一例を示す図である。
また、第1変換地磁気ベクトルVm’のz軸座標値を、算出地磁気ベクトルVgm’が描く真円軌跡の原点と3次元座標系の原点Oとの距離Igm’(z)として、記憶部31に記憶する。当該Igm’(z)は、上記の第2基準成分Is2と所定のオフセット成分とを含む。
上記の座標変換後、以下に説明する演算は、x−y座標系にて実行される。上記の座標変換後、第1変換地磁気ベクトルVm’が描く楕円軌道を表す式を、例えば、楕円の一般式(長軸と短軸がx軸及びy軸と平行でなく、中心が原点でない楕円を表し、変数としてxとyを含む式)と第1変換地磁気ベクトルVm’とのフィッティングにより算出する。
第1変換地磁気ベクトルVm’が描く楕円を表す式を算出後、当該楕円の中心を、x−y座標系の原点、すなわち、座標値(0,0)に平行移動させる座標変換を表す行列(行列M2とする)を算出する。当該行列M2と第1変換地磁気ベクトルVm’とを掛け合わせて、第1変換地磁気ベクトルVm’を座標変換(平行移動)する(ステップS13)。当該座標変換(平行移動)後の第1変換地磁気ベクトルVm’を、「第2変換地磁気ベクトルVm’’」と呼ぶことにする。算出された行列M2は、記憶部31に記憶される。
その結果、第2変換地磁気ベクトルVm’’は、例えば図7Cに示すような、x−y座標系における原点を中心とした楕円軌道を描く。図7Cは、第2変換地磁気ベクトルが描く軌跡の一例を示す図である。
その結果、第2変換地磁気ベクトルVm’’は、例えば図7Cに示すような、x−y座標系における原点を中心とした楕円軌道を描く。図7Cは、第2変換地磁気ベクトルが描く軌跡の一例を示す図である。
x−y座標系における原点を中心とする楕円軌跡を描く第2変換地磁気ベクトルVm’’を算出後、第2変換地磁気ベクトルVm’’が描く楕円軌道を歪み補正して、半径がIgm’(xy)である真円軌道に変換する行列(行列M3とする)を算出し、当該行列M3と第2変換地磁気ベクトルVm’’とを掛け合わせて、第2変換地磁気ベクトルVm’’を座標変換する(ステップS14)。当該座標変換後の第2変換地磁気ベクトルVm’’を、「第3変換地磁気ベクトルVm’’’」と呼ぶことにする。
その結果、第3変換地磁気ベクトルVm’’’は、例えば図7Dに示すような、x−y座標系における原点を中心とした真円軌道を描く。図7Dは、第3変換地磁気ベクトルが描く軌跡の一例を示す図である。
その結果、第3変換地磁気ベクトルVm’’’は、例えば図7Dに示すような、x−y座標系における原点を中心とした真円軌道を描く。図7Dは、第3変換地磁気ベクトルが描く軌跡の一例を示す図である。
算出地磁気ベクトルVgm’の水平方向成分Igm’(xy)である第3変換地磁気ベクトルVm’’’が描く真円軌道の半径は、sqrt((Im’’’(x))2+(Im’’’(y))2)(Im’’’(x):第3変換地磁気ベクトルVm’’’のx軸方向成分、Im’’’(y):第3変換地磁気ベクトルVm’’’のy軸方向成分)と算出できる。このようにして算出されたIgm’(xy)は、記憶部31に記憶される。
行列M3は、例えば、第2変換地磁気ベクトルVm’’が描く楕円の長軸がx軸方向、短軸がy軸方向となるよう第2変換地磁気ベクトルVm’’を回転(当該回転を表す行列をR1とする)し、当該回転後の第2変換地磁気ベクトルVm’’に対してx座標及びy座標の拡大/縮小(当該拡大縮小を表す行列をEとする)を行う。さらに、当該拡大/縮小後の第2変換地磁気ベクトルVm’’を最初の回転とは逆方向に回転(当該回転を表す行列をR2とする)する行列として算出される。具体的には、行列M3は、R2・E・R1(「・」は行列の積を表す)として算出できる。算出された行列M3は、記憶部31に記憶される。
上記のようにして、本体1を1回転させる間に測定された複数の実測地磁気ベクトルVmが3次元座標系において描く楕円軌跡を、3次元座標系の水平方向と平行な面内において定義され当該平行な面の原点を中心とする真円軌跡に変換する座標変換を表す行列を算出できる。すなわち、上記のようにして、実測地磁気ベクトルVmから自律走行装置100が地磁気に及ぼす影響を除去するための補正式に用いる行列を算出できる。
(5)自律走行装置の動作
以下、本実施形態に係る自律走行装置の動作について説明する。以下では、記憶部31に記憶された走行スケジュールに従って自律的に走行する際の自律走行装置100の動作を例にとって説明する。自律走行中の自律走行装置100は、図8に示すフローチャートに従って動作する。
以下、本実施形態に係る自律走行装置の動作について説明する。以下では、記憶部31に記憶された走行スケジュールに従って自律的に走行する際の自律走行装置100の動作を例にとって説明する。自律走行中の自律走行装置100は、図8に示すフローチャートに従って動作する。
具体的には、まず、SLAM処理部32が、距離センサ6から自律走行装置100の周囲に存在する障害物に関する情報を取得する。また、エンコーダ25a、25bから走行車輪21a、21bの回転量を取得する(ステップS1)。
自律走行装置100がGNSS受信機7を有する他の実施形態においては、SLAM処理部32は、GNSS受信機7から測位により求めた現在地の絶対座標を取得してもよい。
次に、SLAM処理部32は、障害物に関する情報及び/又は走行車輪21a、21bの回転量に基づいて、自律走行装置100の位置及び姿勢(方位)を推定する(ステップS2)。
自律走行装置100がGNSS受信機7を有する他の実施形態においては、SLAM処理部32は、障害物に関する情報、走行車輪21a、21bの回転量、及び/又は、測位により求めた現在地の絶対座標に基づいて、自律走行装置100の位置と姿勢を推定してもよい。
SLAM処理部32による位置及び姿勢の推定後、方位算出部35は、磁気センサ4から実測地磁気ベクトルVmを取得する(ステップS3)。具体的には、x軸方向の磁場強度を測定する磁場検出素子から実測地磁気ベクトルVmのx軸方向の強度成分Im(x)を取得する。y軸方向の磁場強度を測定する磁場検出素子からy軸方向の強度成分Im(y)を取得する。z軸方向の磁場強度を測定する磁場検出素子からz軸方向の強度成分Im(z)を取得する。
これにより、実測地磁気ベクトルVmを、(Im(x),Im(y),Im(z))と3次元座標系の原点から延びるベクトルとして表現できる。
実測地磁気ベクトルVmを取得後、補正部355が、取得した実測地磁気ベクトルVmの自律走行装置100による磁場への影響を除去する補正を実行する(ステップS4)。具体的には、まず、M1・Vmとの行列の演算式(「・」は行列の積を表す)により、補正後の実測地磁気ベクトルVmcを算出する。補正後の実測地磁気ベクトルVmcは、(Imc(x),Imc(y),Imc(z))と表される。このとき算出される補正後の実測地磁気ベクトルVmcの鉛直方向(z軸方向)の成分(Imc(z))が第2成分に対応する。
その後、補正後の実測地磁気ベクトルVmcの水平方向成分(Vmc(xy)と呼ぶことにする)、すなわち、(Imc(x),Imc(y))に対して、M3・M2・Vmc(xy)との行列の演算を実行する。M3・M2・Vmc(xy)との演算により算出されるベクトルが第1成分Imc(xy)に対応する。
上記の行列の演算式において、行列M1、及び、行列の演算式M3・M2から算出される行列が、実測地磁気ベクトルVmの自律走行装置100による磁場への影響を除去する補正式に対応する。すなわち、取得した実測地磁気ベクトルVmが自律走行装置100の構成要素による影響のみを受けているか、又は、外部の磁場及び/又は物体による影響が小さい場合には、行列M1、及び、M3・M2(補正式)は、取得した実測地磁気ベクトルVmが描く軌跡を上記の真円軌跡に変換する行列に対応する。
さらに言い換えると、取得した実測地磁気ベクトルVmが自律走行装置100の構成要素による影響のみを受けているか、又は、外部の磁場及び/又は物体による影響が小さい場合には、上記の補正式と実測地磁気ベクトルVmとを用いて算出されるベクトルは、上記の真円軌跡上又はその近傍に配置される。
その後、判定部353は、補正後の実測地磁気ベクトルVmcの水平方向(x−y平面に平行な方向)の成分である第1成分Imc(xy)(=sqrt((Imc(x))2+(Imc(y))2))と第1基準成分Is1である真円軌跡の半径Igm’(xy)との比較結果と、補正後の実測地磁気ベクトルVmcの鉛直方向(z軸方向)の成分である第2成分Imc(z)と記憶部31に記憶されているIgm’(z)との比較結果と、に基づいて、磁気センサ4にて取得した実測地磁気ベクトルVmが、自律走行装置100以外の外部の磁界及び/又は外部の物体による影響を受けているか否かを判定する。
具体的には、第1成分Imc(xy)と真円軌跡の半径Igm’(xy)との第1差分ΔRと、第2成分Imc(z)と記憶部31に記憶されているIgm’(z)との第2差分Δzとの二乗和の平方根(sqrt((ΔR)2+(Δz)2))が所定の閾値以上であるか否かを判定する。
上記のように、Igm’(z)は第2基準成分Is2を含んでいる。従って、第2成分Imc(z)とIgm’(z)との差分として定義される第2差分Δzは、第2成分Imc(z)と第2基準成分Is2との差分(比較結果)を含んでいる。
第1差分ΔRと第2差分Δzとの二乗和の平方根が所定の閾値以上である場合、すなわち、補正後の実測地磁気ベクトルVmが真円軌道から離れた位置に存在すると判定した場合(ステップS5において「Yes」の場合)、判定部353は、実測地磁気ベクトルVmが外部の磁界及び/又は物体による影響を受けていると判定する。この場合、判定部353は、方位推定部351にて補正後の実測地磁気ベクトルVmcに基づいた方位の推定を実行しないと判定する(ステップS6)。
ステップS6において、判定部353は、例えば、SLAM処理部32にて推定された自律走行装置100の姿勢を、自律走行装置100の方位とする。
一方、第1差分ΔRと第2差分Δzとの二乗和の平方根が所定の閾値よりも小さい場合、すなわち、補正後の実測地磁気ベクトルVmcが真円軌道上又はその近傍に存在すると判定した場合(ステップS5において「No」の場合)、判定部353は、実測地磁気ベクトルVmが外部の磁界及び/又は物体による影響を受けていないかその影響が小さいと判定する。この場合、判定部353は、補正後の実測地磁気ベクトルVmcに基づいて方位を推定すると判定する(ステップS7)。
ステップS7において、方位推定部351は、例えば、上記の「(3)方位の推定原理」にて説明したように、tan-1(Imc(x)/Imc(y))の値と、補正後の実測地磁気ベクトルVmcの水平方向成分(Imc(x),Imc(y))がx−y座標系において存在する象限と、に基づいて推定された方位にさらに所定の補正(例えば、推定された方位を東に約7度ずらす補正)を行い、自律走行装置100の実際の方位を推定する。
上記のようにして自律走行装置100の現在の位置及び方位(姿勢)を推定後、走行制御部33が、当該現在の推定位置及び方位(姿勢)と、走行スケジュールに示された自律走行装置100の目標到達位置及び方位(姿勢)と、の差分に基づいて走行指令を算出する。走行制御部33は、算出した走行指令をモータ駆動部34a、34bに出力する。
これにより、走行部2は、現在の推定位置及び方位(姿勢)と、自律走行装置100の目標到達位置及び方位(姿勢)と、に基づいて制御される(ステップS8)。この結果、自律走行装置100は、走行スケジュールに従って自律的に走行できる。
走行部2を制御後、制御部3は、走行スケジュールに示された全ての通過点を通過したか否かを判定する。全ての通過点を通過していない場合(ステップS9において「No」の場合)には、上記のステップS1〜S8を繰り返し実行する。
一方、全ての通過点を通過した場合(ステップS9において「Yes」の場合)には、制御部3は、自律走行のための制御を終了する。
上記のように、本実施形態の自律走行装置100では、判定部353が、地磁気を磁気センサ4にて測定したときの実測値(実測地磁気ベクトルVm)の鉛直方向成分Im(z)と地磁気(算出地磁気ベクトルVgm')の鉛直方向成分Igm'(z)との比較結果のみでなく、実測地磁気ベクトルVmの水平方向成分Im(xy)と算出地磁気ベクトルVgm'の水平方向成分Igm'(xy)との比較結果も考慮して、磁気センサ4にて取得した地磁気の実測値を用いて自律走行装置100の方位を推定するか否かを判定している。
これにより、磁気センサ4にて取得した地磁気の実測値を用いて自律走行装置100の方位を推定するか否かを、より正確に判定できる。なぜなら、本実施形態においては、地磁気の実測値により方位を推定するか否かを判定するときに、自律走行装置100の方位を決定する実測地磁気ベクトルVmの水平方向成分Im(xy)が外部の磁場及び/又は物体の影響を受けているか否かを考慮しているからである。
また、本実施形態においては、判定部353は、第1成分Imc(xy)と算出地磁気ベクトルVgm'の水平方向成分Igm’(xy)(第1基準成分Is1に対応)との第1差分ΔRと、第2成分Imc(z)と算出地磁気ベクトルVgm'の鉛直方向成分Igm'(z)との第2差分Δz(第2成分Imc(z)と第2基準成分Is2との差分を含む)と、の二乗和の平方根sqrt((ΔR)2+(Δz)2)が所定の閾値以上であるか否かにより、方位推定部351における方位の推定を実行するか否かを判定している。
これにより、簡単な計算により、磁気センサ4にて取得した地磁気の実測値を用いて自律走行装置100の方位を推定するか否かを正確に判定できる。
自律走行装置100の外部において存在する磁場の向き及び大きさ、及び、自律走行装置100の周囲に存在する物体と当該物体との距離は、自律走行装置100の移動に伴って変化する。すなわち、自律走行装置100の周囲における外部の磁場及び/又は物体の地磁気への影響は、自律走行装置100の移動に伴って変化する。従って、所定の環境において算出された上記の補正式を用いて実測地磁気ベクトルVmを補正しても、外部の磁場及び/又は物体の地磁気への影響を除去することはできない。
このため、本実施形態において、判定部353は、第1差分ΔRと第2差分Δzとの二乗和の平方根が所定の閾値以上である場合、すなわち、外部の磁場及び/又は物体の地磁気への影響が大きいと判定される場合に、方位推定部351における方位の推定を実行しないと判定している。
また、第1差分ΔRと第2差分Δzとの二乗和の平方根が所定の閾値以上である場合に方位推定部351における方位の推定を実行しないと判定することにより、簡単な計算により、磁気センサ4にて取得した実測地磁気ベクトルVmを用いて自律走行装置100の方位を推定しないと正確に判定できる。
(6)他の実施形態
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
(A)第1実施形態において説明した図6及び/又は図8のフローチャートに示した各処理の順番及び/又は処理は、適宜変更してもよい。例えば、図8に示すフローチャートにおいて、障害物に関する情報と実測地磁気ベクトルVmとを取得後に、自律走行装置100の位置と方位の推定を実行してもよい。すなわち、ステップS1とS3とを最初に実行し、その後、ステップS2とS4を実行してもよい。
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
(A)第1実施形態において説明した図6及び/又は図8のフローチャートに示した各処理の順番及び/又は処理は、適宜変更してもよい。例えば、図8に示すフローチャートにおいて、障害物に関する情報と実測地磁気ベクトルVmとを取得後に、自律走行装置100の位置と方位の推定を実行してもよい。すなわち、ステップS1とS3とを最初に実行し、その後、ステップS2とS4を実行してもよい。
(B)または、図8に示すフローチャートにおいて、最初にステップS3〜S7を実行して実測地磁気ベクトルVmを用いて方位を推定するか否かを決定し、その後、ステップS1及びS2を実行してSLAM処理部32による位置と方位の推定を実行してもよい。
(C)判定部353は、第1差分ΔRと第2差分Δzとの二乗和の平方根以外を用いて、実測地磁気ベクトルVmに基づいて方位を推定するか否かを判定してもよい。例えば、判定部353は、第1差分ΔRの絶対値と第2差分Δzの絶対値との和に基づいて、実測地磁気ベクトルVmに基づいて方位を推定するか否かを判定できる。
(D)判定部353は、第1成分Imc(xy)と第2成分Imc(z)との比(Imc(xy)/Imc(z))と、第1成分Imc(xy)又は第2成分Imc(z)と、に基づいて、実測地磁気ベクトルVmに基づいて方位を推定するか否かを判定してもよい。
例えば、上記の比Imc(xy)/Imc(z)が、第1基準成分Is1と第2基準成分Is2との比(Is1/Is2)を中心とした所定の範囲内の値であり、かつ、第1成分Imc(xy)が第1基準成分Is1を中心とした所定の範囲内の値であるときに、実測地磁気ベクトルVmに基づいて方位を推定すると判定できる。
(E)自律走行装置100は、操作者の操作により走行可能であってもよい。また、操作者の操作を走行スケジュールとして教示可能であってもよい。この場合、自律走行装置100は、例えば、操作部5を操作するか、又は、ジョイスティックなどの外部のコントローラを用いて操作可能となる。
走行スケジュールの教示において、制御部3は、判定部353の判定結果に基づいて、磁気センサ4にて測定した実測地磁気ベクトルVmに基づいた方位の推定値を走行スケジュールに記憶させるか、又は、SLAM処理部32にて推定された姿勢を走行スケジュールに記憶させるかを判断してもよい。
(F)第1実施形態において説明した実測地磁気ベクトルVmに基づいて方位を推定するか否かの判定方法は、自律的に走行する自律走行装置100以外にも、例えば、3軸の磁気センサにより方位を推定する移動体(車両、船舶など)にも適用できる。
本発明は、磁場を測定するための磁気センサを備え、当該磁気センサによる磁場の測定結果に基づいて方位を推定する移動体に広く適用できる。
100 自律走行装置
1 本体
LF 下部フレーム
MF 中間フレーム
UF 上部フレーム
2 走行部
21a、21b 走行車輪
23a、23b モータ
25a、25b エンコーダ
3 制御部
31 記憶部
32 SLAM処理部
33 走行制御部
34a、34b モータ駆動部
35 方位算出部
351 方位推定部
353 判定部
355 補正部
4 磁気センサ
5 操作部
6 距離センサ
7 GNSS受信機
Vgm 地磁気ベクトル
Vgm' 算出地磁気ベクトル
Igm(xy) 地磁気ベクトルの水平方向成分
Igm(z) 地磁気ベクトルの鉛直方向成分
Vm 実測地磁気ベクトル
Im(xy) 実測地磁気ベクトルの水平方向成分
Im(z) 実測地磁気ベクトルの鉛直方向成分
Vmc 補正後の実測地磁気ベクトル
Imc(xy) 第1成分(補正後の実測地磁気ベクトルの水平方向成分)
Imc(z) 第2成分(補正後の実測地磁気ベクトルの鉛直方向成分)
ΔR 第1差分
Δz 第2差分
1 本体
LF 下部フレーム
MF 中間フレーム
UF 上部フレーム
2 走行部
21a、21b 走行車輪
23a、23b モータ
25a、25b エンコーダ
3 制御部
31 記憶部
32 SLAM処理部
33 走行制御部
34a、34b モータ駆動部
35 方位算出部
351 方位推定部
353 判定部
355 補正部
4 磁気センサ
5 操作部
6 距離センサ
7 GNSS受信機
Vgm 地磁気ベクトル
Vgm' 算出地磁気ベクトル
Igm(xy) 地磁気ベクトルの水平方向成分
Igm(z) 地磁気ベクトルの鉛直方向成分
Vm 実測地磁気ベクトル
Im(xy) 実測地磁気ベクトルの水平方向成分
Im(z) 実測地磁気ベクトルの鉛直方向成分
Vmc 補正後の実測地磁気ベクトル
Imc(xy) 第1成分(補正後の実測地磁気ベクトルの水平方向成分)
Imc(z) 第2成分(補正後の実測地磁気ベクトルの鉛直方向成分)
ΔR 第1差分
Δz 第2差分
Claims (5)
- 本体と、
前記本体に取り付けられ、ゼロ磁場を原点とし磁場の各成分強度を表す3次元座標系において定義される磁場ベクトルを測定する磁気センサと、
前記磁気センサにて測定された地磁気の実測値である実測地磁気ベクトルに基づいて前記本体の方位を推定する方位推定部と、
前記実測地磁気ベクトルの前記3次元座標系における水平方向の成分である第1成分と前記3次元座標系において定義され地磁気の大きさと方向とを表す地磁気ベクトルの前記水平方向の成分である第1基準成分との比較結果と、前記実測地磁気ベクトルの前記3次元座標系における鉛直方向の成分である第2成分と前記地磁気ベクトルの前記鉛直方向の成分である第2基準成分との比較結果と、に基づいて、前記方位推定部における方位の推定を実行するか否かを判定する判定部と、
を備える自律走行装置。 - 前記判定部は、前記第1成分と前記第1基準成分との第1差分と、前記第2成分と前記第2基準成分との第2差分と、に基づいて、前記方位推定部における方位の推定を実行するか否かを判定する、請求項1に記載の自律走行装置。
- 前記判定部は、前記第1差分と前記第2差分との二乗和の平方根が所定の閾値以上であるか否かにより、前記方位推定部における方位の推定を実行するか否かを判定する、請求項2に記載の自律走行装置。
- 前記判定部は、前記第1差分と前記第2差分との二乗和の平方根が前記所定の閾値以上である場合に、前記方位推定部における方位の推定を実行しないと判定する、請求項3に記載の自律走行装置。
- 前記本体を1回転させる間に測定された複数の前記実測地磁気ベクトルが前記3次元座標系において描く軌跡を、前記3次元座標系の水平方向と平行な面内において定義され当該平行な面の原点を中心とする真円軌跡に変換する座標変換を表す補正式により前記実測地磁気ベクトルを補正する補正部をさらに備え、
前記第1基準成分は前記真円軌跡の半径に対応し、前記第2基準成分は前記3次元座標系の原点と前記真円軌跡の中心との間の距離に対応する、
請求項1〜4のいずれかに記載の自律走行装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017223556A JP2019095256A (ja) | 2017-11-21 | 2017-11-21 | 自律走行装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017223556A JP2019095256A (ja) | 2017-11-21 | 2017-11-21 | 自律走行装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019095256A true JP2019095256A (ja) | 2019-06-20 |
Family
ID=66971395
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017223556A Pending JP2019095256A (ja) | 2017-11-21 | 2017-11-21 | 自律走行装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019095256A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11885648B2 (en) | 2021-07-20 | 2024-01-30 | Infineon Technologies Ag | Sensor devices and methods for determining a rotation angle of a magnet |
-
2017
- 2017-11-21 JP JP2017223556A patent/JP2019095256A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11885648B2 (en) | 2021-07-20 | 2024-01-30 | Infineon Technologies Ag | Sensor devices and methods for determining a rotation angle of a magnet |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103994763B (zh) | 一种火星车的sins/cns深组合导航系统及其实现方法 | |
Cho et al. | A dead reckoning localization system for mobile robots using inertial sensors and wheel revolution encoding | |
JP2018206004A (ja) | 自律走行台車の走行制御装置、自律走行台車 | |
CN106933223B (zh) | 一种机器人自主导航方法及系统 | |
JP2012173190A (ja) | 測位システム、測位方法 | |
Nemec et al. | Precise localization of the mobile wheeled robot using sensor fusion of odometry, visual artificial landmarks and inertial sensors | |
JP2016126001A (ja) | 慣性航法システム及び慣性航法システムにおける磁気近点離角検出支援を提供する方法 | |
Jin et al. | Fast and accurate initialization for monocular vision/INS/GNSS integrated system on land vehicle | |
Cucci et al. | Position tracking and sensors self-calibration in autonomous mobile robots by gauss-newton optimization | |
CN108759822A (zh) | 一种移动机器人3d定位系统 | |
Skobeleva et al. | Extended Kalman Filter for indoor and outdoor localization of a wheeled mobile robot | |
Bazhenov et al. | Software for the mobile robot spatial orientation system | |
JP2019095256A (ja) | 自律走行装置 | |
Lee et al. | Self-calibration of gyro using monocular SLAM for an indoor mobile robot | |
Guan et al. | An innovative high accuracy autonomous navigation method for the Mars rovers | |
US20240077880A1 (en) | Slope location correction method and apparatus, robot and readable storage medium | |
Jamal et al. | Terrain mapping and pose estimation for polar shadowed regions of the moon | |
CN114397480A (zh) | 声学多普勒测速仪误差估计方法、装置及系统 | |
JP2019114128A (ja) | 移動体 | |
JP2021149229A (ja) | 移動体、及び、位置推定方法 | |
Srinivasan et al. | Multiple sensor fusion in mobile robot localization | |
Ruiz et al. | Real time multi robot 3D localization system using trilateration | |
US9976857B2 (en) | Apparatus for providing an azimuth angle | |
CN114777777B (zh) | 一种捷联化平台式惯导系统及导航方法 | |
CN114394102B (zh) | 姿态传感器的校准方法和行驶装置 |