(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-08
(45)【発行日】2022-06-16
(54)【発明の名称】ロボットの再測位方法
(51)【国際特許分類】
G05D 1/02 20200101AFI20220609BHJP
【FI】
G05D1/02 J
(21)【出願番号】P 2020550731
(86)(22)【出願日】2019-01-10
(86)【国際出願番号】 CN2018120198
(87)【国際公開番号】W WO2019179176
(87)【国際公開日】2019-09-26
【審査請求日】2020-09-29
(31)【優先権主張番号】201810226498.1
(32)【優先日】2018-03-19
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】520347351
【氏名又は名称】珠海一微半導体股▲ふん▼有限公司
【氏名又は名称原語表記】AMICRO SEMICONDUCTOR CO.,LTD.
【住所又は居所原語表記】Room 2706,3000 Huandao East Road,Hengqin New District,Zhuhai,Guangdong 519000(CN)
(74)【代理人】
【識別番号】110002734
【氏名又は名称】特許業務法人藤本パートナーズ
(72)【発明者】
【氏名】李 永勇
(72)【発明者】
【氏名】肖 剛軍
【審査官】黒田 暁子
(56)【参考文献】
【文献】特開2008-077670(JP,A)
【文献】特開2012-194860(JP,A)
【文献】特開2005-326944(JP,A)
【文献】特開2017-102705(JP,A)
【文献】特開2010-061293(JP,A)
【文献】特開2004-275468(JP,A)
【文献】特開2007-323402(JP,A)
【文献】欧州特許出願公開第03184013(EP,A1)
【文献】中国特許出願公開第107041718(CN,A)
【文献】中国特許出願公開第107037806(CN,A)
【文献】特開2018-022215(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/02
(57)【特許請求の範囲】
【請求項1】
ロボットが障害物を検出して、ステップS2に進むステップS1と、
前記障害物のエッジに沿って走行するとともに、前記障害物のエッジに沿う走行経路が、前記障害物を孤立物体と決定する条件を満たすか否かを判断し、そうでない場合、ステップS3に進み、そうである場合、ステップS4に進むステップS2と、
走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS2に戻るステップS3と、
前記障害物を孤立物体と決定し、前記孤立物体のエッジに沿って走行するエッジ経路を記録し、現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似しているか否かを判断し、そうでない場合、ステップS5に進み、そうである場合、S6に進むステップS4と、
記録した、前記孤立物体のエッジに沿って走行するエッジ経路を記憶済みのエッジ経路とし、ステップS3に戻るステップS5と、
現在記録したエッジ経路に類似する過去に記憶済みのエッジ経路を参照測位経路とし、現在のエッジ経路が位置する第1ローカルマップ及び参照測位経路が位置する第2ローカルマップを決定し、形状及び大きさが同じ第1ローカルマップと第2ローカルマップとを重ね、第1ローカルマップの現在のエッジ経路のうち、第2ローカルマップの参照測位経路と重なる部分に対応するグリッドセルを測位セルとして決定し、ロボットが前記測位セルに現在位置するときに検出したグリッド座標を、対応する参照測位経路中のグリッドセルのグリッド座標に置き換えるステップS6とを含み、
前記第1ローカルマップは、グリッドマップのうち、前記現在のエッジ経路を含むマップの一部分であり、前記第2ローカルマップは、前記グリッドマップのうち、前記参照測位経路を含むマップの一部分であることを特徴とするロボットの再測位方法。
【請求項2】
ステップS1の後、且つ、ステップS2の前に、さらに、
ロボットが障害物を検出したときの対応するグリッド座標を決定するステップS11と、
ロボットが現在時刻から過去への所定の時間内に既に記憶したエッジ経路を決定するステップS12と、
ステップS11で決定したグリッド座標とステップS12で決定したエッジ経路に対応するグリッド座標とが同じであるか否か又は隣接しているか否かを判断し、そうである場合、ステップS14に進み、そうでない場合、ステップS2に進むステップS13と、
走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻るステップS14とを含み、
ただし、ステップS13で説明した隣接とは、2つのグリッド座標に対応するグリッドセル同士が共通の一辺又は一角点を有することを指すことを特徴とする請求項1に記載の方法。
【請求項3】
ステップS2で、前記障害物のエッジに沿って走行するとともに、前記障害物のエッジに沿う走行経路が、前記障害物を孤立物体と決定する条件を満たすか否かを判断することは、
前記障害物のエッジに沿って走行するとともに、開始位置点の開始情報を記録するステップS21と、
ロボットが前記開始位置点から始まって検出した角度変化量が360°に達するか否かを判断し、そうである場合、ステップS23に進み、そうでなければ、ロボットが前記開始位置点から始まって検出した角度変化量が360°に達するまで、前記障害物のエッジに沿って走行し続け、ステップS23に進むステップS22と、
ロボットがステップS21での開始位置点に戻ったか否かを判断し、そうである場合、前記障害物のエッジに沿うロボットの走行経路は、前記障害物を孤立物体と決定する条件を満たすと決定し、そうでなければ、ステップS24に進むステップS23と、
前記障害物のエッジに沿って走行し続け、ロボットがステップS21での開始位置点に戻ったか否かを判断し、且つ、ロボットが前記開始位置点から始まって検出した角度変化量が450°に達するか否かを判断し、ロボットが前記開始位置点に戻ったが前記角度変化量が450°に達していないと、前記障害物のエッジに沿うロボットの走行経路は、前記障害物を孤立物体と決定する条件を満たすと決定し、ロボットが前記開始位置点に戻り且つ前記角度変化量が450°を超えるか、又は、ロボットが前記開始位置点に戻らず且つ前記角度変化量が450°を超えると、前記障害物のエッジに沿うロボットの走行経路は、前記障害物を孤立物体と決定する条件を満たさないと決定するステップS24とを含むことを特徴とする請求項2に記載の方法。
【請求項4】
ステップS21の後、且つ、ステップS22の前に、さらに、
ロボットが前記開始位置点から前記障害物のエッジに沿って走行した距離及び角度変化量を検出するステップS211と、
ロボットが前記開始位置点から走行した距離が1.5メートルに達するか否かを判断し、そうである場合、ステップS213に進み、そうでない場合、ロボットは、走行した距離が1.5メートルに達するまで走行し続け、ステップS213に進むステップS212と、
ロボットが前記開始位置点から走行した角度変化量が90°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS214に進むステップS213と、
ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した距離が3メートルに達するか否かを判断し、そうである場合、ステップS215に進み、そうでない場合、ロボットは、走行した距離が3メートルに達するまで走行し続け、ステップS215に進むステップS214と、
ロボットが前記開始位置点から走行した角度変化量が180°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS216に進むステップS215と、
ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した距離が4.5メートルに達するか否かを判断し、そうである場合、ステップS217に進み、そうでない場合、ロボットは、走行した距離が4.5メートルに達するまで走行し続け、ステップS217に進むステップS216と、
ロボットが前記開始位置点から走行した角度変化量が270°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS22に進むステップS217とを含むことを特徴とする請求項3に記載の方法。
【請求項5】
ステップS21の後、且つ、ステップS22の前に、さらに、
ロボットが前記開始位置点から前記障害物のエッジに沿って走行した時間及び角度変化量を検出するステップS211と、
ロボットが前記開始位置点から走行した時間が1分に達するか否かを判断し、そうである場合、ステップS213に進み、そうでない場合、ロボットは、走行した時間が1分に達するまで走行し続け、ステップS213に進むステップS212と、
ロボットが前記開始位置点から走行した角度変化量が90°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS214に進むステップS213と、
ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した時間が2分に達するか否かを判断し、そうである場合、ステップS215に進み、そうでない場合、ロボットは、走行した時間が2分に達するまで走行し続け、ステップS215に進むステップS214と、
ロボットが前記開始位置点から走行した角度変化量が180°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS216に進むステップS215と、
ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した時間が3分に達するか否かを判断し、そうである場合、ステップS217に進み、そうでない場合、ロボットは、走行した時間が3分に達するまで走行し続け、ステップS217に進むステップS216と、
ロボットが前記開始位置点から走行した角度変化量が270°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS218に進むステップS217と、
ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した時間が4分に達するか否かを判断し、そうである場合、ステップS22に進み、そうでない場合、ロボットは、走行した時間が4分に達するまで走行し続け、ステップS22に進むステップS218とを含むことを特徴とする請求項3に記載の方法。
【請求項6】
ステップS23でロボットがステップS21での開始位置点に戻ったと判断した後且つ前記障害物のエッジに沿うロボットの走行経路が前記障害物を孤立物体と決定する条件を満たすと決定する前に、又は、ステップS24でロボットが前記開始位置点に戻ったが前記角度変化量が450°に達していない後且つ前記障害物のエッジに沿うロボットの走行経路が前記障害物を孤立物体と決定する条件を満たすと決定する前に、さらに、
ロボットが前記障害物に沿って一周走行して囲んだ面積が0.3平方メートルより大きいか否かを判断し、そうである場合、前記障害物のエッジに沿うロボットの走行経路が前記障害物を孤立物体と決定する条件を満たすと決定するステップに進み、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻るステップを含むことを特徴とする請求項3に記載の方法。
【請求項7】
ステップS4で、前記孤立物体のエッジに沿って走行するエッジ経路を記録し、現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似しているか否かを判断することは、
現在の前記エッジ経路に対応するグリッドセルのグリッド座標を記録し、現在の前記エッジ経路で囲んだ領域のグリッド面積を記録し、現在の前記エッジ経路で囲んだ領域の中心グリッドセルのグリッド座標を記録するステップS41と、
現在のエッジ経路で囲んだ領域の中心グリッドセルのグリッド座標と、記憶済みのエッジ経路で囲んだ領域の中心グリッドセルのグリッド座標との座標差が所定の第1座標差より大きいか否かを判断し、そうである場合、現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似していないと決定し、そうでない場合、ステップS43に進むステップS42と、
現在のグリッド面積と、記憶済みのエッジ経路に対応する領域のグリッド面積との差が所定の面積差より大きいか否かを判断し、そうである場合、現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似していないと決定し、そうでない場合、ステップS44に進むステップS43と、
現在のエッジ経路が位置する第1ローカルマップ及び記憶済みのエッジ経路が位置する第2ローカルマップを基に、形状及び大きさが同じ第1ローカルマップと第2ローカルマップとを重ね、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断し、そうである場合、現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似すると決定し、そうでない場合、ステップS45に進むステップS44と、
現在のエッジ経路を、記憶済みのエッジ経路に対して上、下、左、右の4方向へそれぞれN個のグリッドセルの距離だけ平行移動させ、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断し、そうである場合、現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似すると決定し、そうでない場合、現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似していないと決定するステップS45とを含み、
ただし、前記Nは自然数であり、且つ1≦N≦3であることを特徴とする請求項1に記載の方法。
【請求項8】
ステップS44又はステップS45で、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断することは、
現在のエッジ経路が位置する第1ローカルマップ及び記憶済みのエッジ経路が位置する第2ローカルマップを基に、現在のエッジ経路及び記憶済みのエッジ経路に対応するグリッドセルを共に1とマークし、その他のグリッドセルを0とマークするステップと、
前記第1ローカルマップ及び前記第2ローカルマップにおける対応するグリッドセルについてAND演算を行うステップと、
AND演算後、得られた1とマークされたグリッドセルの数の、記憶済みのエッジ経路に対応するグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断するステップとを含むことを特徴とする請求項7に記載の方法。
【請求項9】
ステップS6で、ロボットが前記測位セルに現在位置するときに検出したグリッド座標を、対応する参照測位経路中のグリッドセルのグリッド座標に置き換えることは、
前記測位セルに直列に連なったM個のグリッドセルが存在するか否か、且つ、ロボットが現在記録した当該直列に連なったM個のグリッドセルのグリッド座標と前記参照測位経路の対応するグリッドセルのグリッド座標との差が所定の第2座標差未満であるかを判断し、そうである場合、ステップS62に進み、そうでない場合、ステップS3に戻るステップS61と、
ロボットが前記直列に連なったM個のグリッドセルのうちいずれか1つのグリッドセルまで走行して、ステップS63に進むステップS62と、
現在検出したグリッド座標を対応する参照測位経路中のグリッドセルのグリッド座標に置き換えるステップS63とを含み、
ただし、前記Mは自然数であり、且つ2≦M≦3であることを特徴とする請求項7又は請求項8に記載の方法。
【請求項10】
ステップS62で、ロボットが前記直列に連なったM個のグリッドセルのうちいずれか1つのグリッドセルまで走行することは、
前記直列に連なったM個のグリッドセルは1組しかないか否かを判断し、そうである場合、前記直列に連なったM個のグリッドセルのうちいずれか1つのグリッドセルまで直接走行して、ステップS63に進み、そうでない場合、ステップS622に進むステップS621と、
記録時間が最も早い1組の前記直列に連なったM個のグリッドセルを決定し、ロボットがそのうちの記録時間が最も早い1つのグリッドセルまで走行して、ステップS63に進むステップS622とを含むことを特徴とする請求項9に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットの分野に関し、具体的には、ロボットの再測位方法に関する。
【背景技術】
【0002】
現在、床面清掃ロボットは、ジャイロスコープやコードディスク等のデバイス自体の欠陥又は床の滑り等が原因で、掃除中に走行誤差が発生し、且つ、当該誤差が徐々に蓄積され、長期間にわたって蓄積された誤差によりロボットが構築したマップにも大きな誤差が発生する。このような誤差を解決する既存の方法において、カメラを組み込んで視覚的に測位するか、又はレーザレーダで距離を測定して測位するのが効果的な方法であるが、これらの方法を採用するには、高いハードウェアコストを必要とするため、床面清掃ロボットの適用を普及するのに適さない。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明は、カメラ又はレーザレーダ等の高価なデバイスの使用を必要とせず、ロボットの位置を再決定できるため、ロボットの走行誤差の過度な蓄積により測位が不正確になる問題を防止し、ロボット測位の正確性を向上させたロボットの再測位方法を提供する。
【課題を解決するための手段】
【0004】
本発明の具体的な技術的解決手段は以下のとおりである。
【0005】
ロボットの再測位方法は、ロボットが障害物を検出して、ステップS2に進むステップS1と、前記障害物のエッジに沿って走行するとともに、前記障害物のエッジに沿う走行経路が、前記障害物を孤立物体と決定する条件を満たすか否かを判断し、そうでない場合、ステップS3に進み、そうである場合、ステップS4に進むステップS2と、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS2に戻るステップS3と、前記障害物を孤立物体と決定し、前記孤立物体のエッジに沿って走行するエッジ経路を記録し、現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似しているか否かを判断し、そうでない場合、ステップS5に進み、そうである場合、S6に進むステップS4と、記録した、前記孤立物体のエッジに沿って走行するエッジ経路を記憶済みのエッジ経路とし、ステップS3に戻るステップS5と、現在記録したエッジ経路に類似する過去に記憶済みのエッジ経路を参照測位経路とし、現在のエッジ経路が位置する第1ローカルマップ及び参照測位経路が位置する第2ローカルマップを決定し、形状及び大きさが同じ第1ローカルマップと第2ローカルマップとを重ね、第1ローカルマップの現在のエッジ経路のうち、第2ローカルマップの参照測位経路と重なる部分に対応するグリッドセルを測位セルとして決定し、ロボットが前記測位セルに現在位置するときに検出したグリッド座標を、対応する参照測位経路中のグリッドセルのグリッド座標に置き換えるステップS6とを含む。
【0006】
さらに、ステップS1の後、且つ、ステップS2の前に、さらに、ロボットが障害物を検出したときの対応するグリッド座標を決定するステップS11と、ロボットが現在時刻から過去への所定の時間内に既に記憶したエッジ経路を決定するステップS12と、ステップS11で決定したグリッド座標とステップS12で決定したエッジ経路に対応するグリッド座標とが同じであるか否か又は隣接しているか否かを判断し、そうである場合、ステップS14に進み、そうでない場合、ステップS2に進むステップS13と、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻るステップS14とを含む。ただし、ステップS13で説明した隣接とは、2つのグリッド座標に対応するグリッドセル同士が共通の一辺又は一角点を有することを指す。
【0007】
さらに、ステップS2で、前記障害物のエッジに沿って走行するとともに、前記障害物のエッジに沿う走行経路が、前記障害物を孤立物体と決定する条件を満たすか否かを判断することは、前記障害物のエッジに沿って走行するとともに、開始位置点の開始情報を記録するステップS21と、ロボットが前記開始位置点から始まって検出した角度変化量が360°に達するか否かを判断し、そうである場合、ステップS23に進み、そうでなければ、ロボットが前記開始位置点から始まって検出した角度変化量が360°に達するまで、前記障害物のエッジに沿って走行し続け、ステップS23に進むステップS22と、ロボットがステップS21での開始位置点に戻ったか否かを判断し、そうである場合、前記障害物のエッジに沿うロボットの走行経路は、前記障害物を孤立物体と決定する条件を満たすと決定し、そうでなければ、ステップS24に進むステップS23と、前記障害物のエッジに沿って走行し続け、ロボットがステップS21での開始位置点に戻ったか否かを判断し、且つ、ロボットが前記開始位置点から始まって検出した角度変化量が450°に達するか否かを判断し、ロボットが前記開始位置点に戻ったが前記角度変化量が450°に達していないと、前記障害物のエッジに沿うロボットの走行経路は、前記障害物を孤立物体と決定する条件を満たすと決定し、ロボットが前記開始位置点に戻り且つ前記角度変化量が450°を超えるか、又は、ロボットが前記開始位置点に戻らず且つ前記角度変化量が450°を超えると、前記障害物のエッジに沿うロボットの走行経路は、前記障害物を孤立物体と決定する条件を満たさないと決定するステップS24とを含む。
【0008】
さらに、ステップS21の後、且つ、ステップS22の前に、さらに、ロボットが前記開始位置点から前記障害物のエッジに沿って走行した距離及び角度変化量を検出するステップS211と、ロボットが前記開始位置点から走行した距離が1.5メートルに達するか否かを判断し、そうである場合、ステップS213に進み、そうでない場合、ロボットは、走行した距離が1.5メートルに達するまで走行し続け、ステップS213に進むステップS212と、ロボットが前記開始位置点から走行した角度変化量が90°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS214に進むステップS213と、ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した距離が3メートルに達するか否かを判断し、そうである場合、ステップS215に進み、そうでない場合、ロボットは、走行した距離が3メートルに達するまで走行し続け、ステップS215に進むステップS214と、ロボットが前記開始位置点から走行した角度変化量が180°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS216に進むステップS215と、ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した距離が4.5メートルに達するか否かを判断し、そうである場合、ステップS217に進み、そうでない場合、ロボットは、走行した距離が4.5メートルに達するまで走行し続け、ステップS217に進むステップS216と、ロボットが前記開始位置点から走行した角度変化量が270°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS22に進むステップS217とを含む。
【0009】
さらに、ステップS21の後、且つ、ステップS22の前に、さらに、ロボットが前記開始位置点から前記障害物のエッジに沿って走行した時間及び角度変化量を検出するステップS211と、ロボットが前記開始位置点から走行した時間が1分に達するか否かを判断し、そうである場合、ステップS213に進み、そうでない場合、ロボットは、走行した時間が1分に達するまで走行し続け、ステップS213に進むステップS212と、ロボットが前記開始位置点から走行した角度変化量が90°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS214に進むステップS213と、ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した時間が2分に達するか否かを判断し、そうである場合、ステップS215に進み、そうでない場合、ロボットは、走行した時間が2分に達するまで走行し続け、ステップS215に進むステップS214と、ロボットが前記開始位置点から走行した角度変化量が180°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS216に進むステップS215と、ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した時間が3分に達するか否かを判断し、そうである場合、ステップS217に進み、そうでない場合、ロボットは、走行した時間が3分に達するまで走行し続け、ステップS217に進むステップS216と、ロボットが前記開始位置点から走行した角度変化量が270°に達するか否かを判断し、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、そうである場合、ステップS218に進むステップS217と、ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した時間が4分に達するか否かを判断し、そうである場合、ステップS22に進み、そうでない場合、ロボットは、走行した時間が4分に達するまで走行し続け、ステップS22に進むステップS218とを含む。
【0010】
さらに、ステップS23でロボットがステップS21での開始位置点に戻ったと判断した後且つ前記障害物のエッジに沿うロボットの走行経路が前記障害物を孤立物体と決定する条件を満たすと決定する前に、又は、ステップS24でロボットが前記開始位置点に戻ったが前記角度変化量が450°に達していない後且つ前記障害物のエッジに沿うロボットの走行経路が前記障害物を孤立物体と決定する条件を満たすと決定する前に、さらに、ロボットが前記障害物に沿って一周走行して囲んだ面積が0.3平方メートルより大きいか否かを判断し、そうである場合、前記障害物のエッジに沿うロボットの走行経路が前記障害物を孤立物体と決定する条件を満たすと決定するステップに進み、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻るステップを含む。
【0011】
さらに、ステップS4で、前記孤立物体のエッジに沿って走行するエッジ経路を記録し、現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似しているか否かを判断することは、現在の前記エッジ経路に対応するグリッドセルのグリッド座標を記録し、現在の前記エッジ経路で囲んだ領域のグリッド面積を記録し、現在の前記エッジ経路で囲んだ領域の中心グリッドセルのグリッド座標を記録するステップS41と、現在のエッジ経路で囲んだ領域の中心グリッドセルのグリッド座標と、記憶済みのエッジ経路で囲んだ領域の中心グリッドセルのグリッド座標との座標差が所定の第1座標差より大きいか否かを判断し、そうである場合、現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似していないと決定し、そうでない場合、ステップS43に進むステップS42と、現在のグリッド面積と、記憶済みのエッジ経路に対応する領域のグリッド面積との差が所定の面積差より大きいか否かを判断し、そうである場合、現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似していないと決定し、そうでない場合、ステップS44に進むステップS43と、現在のエッジ経路が位置する第1ローカルマップ及び記憶済みのエッジ経路が位置する第2ローカルマップを基に、形状及び大きさが同じ第1ローカルマップと第2ローカルマップとを重ね、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断し、そうである場合、現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似すると決定し、そうでない場合、ステップS45に進むステップS44と、現在のエッジ経路を、記憶済みのエッジ経路に対して上、下、左、右の4方向へそれぞれN個のグリッドセルの距離だけ平行移動させ、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断し、そうである場合、現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似すると決定し、そうでない場合、現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似していないと決定するステップS45とを含む。ただし、前記Nは自然数であり、且つ1≦N≦3である。
【0012】
さらに、ステップS44又はステップS45で、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断することは、現在のエッジ経路が位置する第1ローカルマップ及び記憶済みのエッジ経路が位置する第2ローカルマップを基に、現在のエッジ経路及び記憶済みのエッジ経路に対応するグリッドセルを共に1とマークし、その他のグリッドセルを0とマークするステップと、前記第1ローカルマップ及び前記第2ローカルマップにおける対応するグリッドセルについてAND演算を行うステップと、AND演算後、得られた1とマークされたグリッドセルの数の、記憶済みのエッジ経路に対応するグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断するステップとを含む。
【0013】
さらに、ステップS6で、ロボットが前記測位セルに現在位置するときに検出したグリッド座標を、対応する参照測位経路中のグリッドセルのグリッド座標に置き換えることは、前記測位セルに直列に連なったM個のグリッドセルが存在するか否か、且つ、ロボットが現在記録した当該直列に連なったM個のグリッドセルのグリッド座標と前記参照測位経路の対応するグリッドセルのグリッド座標との差が所定の第2座標差未満であるかを判断し、そうである場合、ステップS62に進み、そうでない場合、ステップS3に戻るステップS61と、ロボットが前記直列に連なったM個のグリッドセルのうちいずれか1つのグリッドセルまで走行して、ステップS63に進むステップS62と、現在検出したグリッド座標を対応する参照測位経路中のグリッドセルのグリッド座標に置き換えるステップS63とを含む。ただし、前記Mは自然数であり、且つ2≦M≦3である。
【0014】
さらに、ステップS62で、ロボットが前記直列に連なったM個のグリッドセルのうちいずれか1つのグリッドセルまで走行することは、前記直列に連なったM個のグリッドセルは1組しかないか否かを判断し、そうである場合、前記直列に連なったM個のグリッドセルのうちいずれか1つのグリッドセルまで直接走行して、ステップS63に進み、そうでない場合、ステップS622に進むステップS621と、記録時間が最も早い1組の前記直列に連なったM個のグリッドセルを決定し、ロボットがそのうちの記録時間が最も早い1つのグリッドセルまで走行して、ステップS63に進むステップS622とを含む。
【0015】
さらに、ステップS6の後、さらに、ステップS6での、ロボットが前記測位セルに現在位置するときに検出したグリッド座標が(X1、Y1)であることを決定して、ステップS72に進むステップS71と、ステップS6での、対応する参照測位経路中のグリッドセルのグリッド座標が(X2、Y2)であることを決定して、ステップS73に進むステップS72と、グリッドセルの辺の長さがLであることを決定して、ステップS74に進むステップS73と、ロボットが現在位置点で検出した座標値(x1、y1)を(x2、y2)に置き換え、x2=x1-(X1-X2)*L、y2=y1-(Y1-Y2)*LであるステップS74とを含む。
【0016】
さらに、ステップS6の後に、さらに、ステップS6での、ロボットが前記測位セルの中心点に現在位置するときに検出した座標値が(x1、y1)であることを決定するステップS71と、ステップS6での、対応する参照測位経路中のグリッドセルの中心点の座標値が(x2、y2)であることを決定するステップS72と、ロボットが現在検出した座標値((x1、y1))を(x2、y2)に置き換えるステップS73とを含む。
【発明の効果】
【0017】
本発明の有益な効果は、ロボットが孤立物体のエッジに沿って走行する経路を参照として用いることにより、ロボットの走行誤差の過度な蓄積による位置ずれを補正することができ、再測位が実現され、それにより、後続でナビゲーション・走行する際のロボットの測位の正確性及び走行効率を向上させる。
【図面の簡単な説明】
【0018】
【
図1】本発明によるロボットの再測位方法の概略フローチャートである。
【
図2】第1ローカルマップと第2ローカルマップとを重ねた後の模式図の1である。
【
図3】第1ローカルマップと第2ローカルマップとを重ねた後の模式図の2である。
【
図4】第1ローカルマップと第2ローカルマップとを重ねた後の模式図の3である。
【発明を実施するための形態】
【0019】
以下、本発明の実施例の図面を参照しながら、本発明の実施例の技術的解決手段について詳細に説明する。以下に説明する具体的な実施例は、本発明を説明するものにすぎず、本発明を限定するものではないことを理解されたい。
【0020】
本発明によるロボットは、スマート掃除ロボット(例えば、床面清掃ロボット又は床拭きロボット)であり、下記の実施例によるロボットは、いずれもスマート掃除ロボットを指す。これらのロボットは、一定の人工知能により、ある状況では自動的に走行する。ロボットの機体には、走行距離、走行角度(即ち、進行方向)、機体状態及び障害物等を検出できる様々なセンサが設けられ、例えば壁や他の障害物に当たったら、自律的にカーブするとともに、異なる設定に応じて、異なるルートを取って、計画的に走行し、また、走行中に検出した様々なデータに基づいてグリッドマップを構築し、例えば、障害物が検出されたときの対応するグリッドセルを障害セルとしてマークすること、断崖が検出されたときの対応するグリッドセルを断崖セルとマークすること、及び正常に走行して通過したグリッドセルを通過済セルとしてマークすること等である。本発明によるロボットは、左駆動輪と右駆動輪とを備えた自律走行可能なロボット機体と、機体に設けられたマン・マシン・インタフェースと、機体に設けられた障害検出ユニットとを含む構造である。機体内部には、加速度計やジャイロスコープ等を含む慣性センサが設けられ、2つの駆動輪は、両方ともに駆動輪の走行距離を検出するための走行距離計(一般的にはコードディスク)が設けられ、さらに、関連センサのパラメータを処理でき、且つ、制御信号を実行部材に出力できる制御モジュールが設けられている。
【0021】
図1に示すように、ロボットの再測位方法は、以下のステップS1~ステップS6を含む。ステップS1では、ロボットは、走行しながら、走行データの検出を行い、ロボットの先端のタッチセンサ又は赤外線センサによって障害物が検出されると、ステップS2に進む。ステップS2に入った後、ロボットは、前記障害物のエッジに沿って走行するとともに、前記障害物のエッジに沿う走行経路が、前記障害物を孤立物体と決定する条件を満たすか否かを判断し、ただし、障害物を孤立物体と決定する具体的な条件を、異なる設計ニーズに基づいて適宜に設定することができ、例えば、ロボットが障害物のエッジに沿う走行を開始する開始位置点と障害物のエッジに沿う走行を終了する終了位置点との関係で判断しても、一定の時間内の回転角度の変化量で判断しても、回転角度とグリッド位置との関係で判断してもよいし、また、これらの要因を組み合わせて総合的に判断してもよい等である。ロボットが、前記障害物のエッジに沿う走行経路が前記条件を満たさないと決定する場合、前記障害物が孤立物体ではないことが分かり、当該障害物に基づいて再測位することができず、当該障害物に関連するデータを測位の参照とすることもできないため、ステップS3に進み、ロボットは、走行角度を調整して、障害物から遠ざかる方向へ走行し、前記障害物から離れる。続いて、ロボットは、システムによって計画された経路や方法にしたがって走行し続け、ロボットの先端のタッチセンサ又は赤外線センサによって障害物を再度検出すると、ステップS2に戻って、当該障害物が孤立物体であるか否かを判断し続ける。ステップS2では、前記障害物のエッジに沿う走行経路が、前記障害物を孤立物体と決定する条件を満たすと、ロボットが決定する場合、ステップS4に進み、ロボットは、前記障害物を孤立物体と決定するとともに、前記孤立物体のエッジに沿って走行するエッジ経路を記録し、記録した情報を具体的な設計ニーズに基づいて適宜に設定することができ、例えば、エッジ経路に対応するグリッド座標を記録し、ロボットがエッジ経路に対応するグリッドセルを走行する際にジャイロスコープで検出した角度を記録し、ロボットがエッジ経路の始点にいるときの時間及びエッジ経路の終点にいるときの時間を記録する等ができる。次に、ロボットが現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似しているか否かを判断し、判断の方法も異なる設計ニーズに基づいて適宜に設定することができ、例えば、現在記録したエッジ経路に対応するグリッドセルのグリッド座標と過去に記憶済みのエッジ経路に対応するグリッドセルのグリッド座標とを比較することにより、少数のいくつかのグリッド座標のみが異なる場合、2本のエッジ経路が類似すると見なすことができ、現在記録したエッジ経路に対応するグリッドセル全体の配列方位と過去に記憶済みのエッジ経路に対応するグリッドセル全体の配列方位との違いによっても判断でき、少数のいくつかの点のみの配列方位が違う場合、2本のエッジ経路が類似すると考えられることができ、さらに、ロボットがエッジに沿って走行中の単位時間内の角度変化率、エッジ経路の長さ及びエッジに沿って走行した総時間によっても判断でき、このいくつかのパラメータが全部同じである場合、2本のエッジ経路が類似すると考えられることができ、当然のことながら、前記のこれらの要因を組み合わせて総合的に判断することもできる。判断で現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似していないという結論を取得した場合、ロボットが現在検出した孤立物体は、過去に当たったことのないものであることを表し、再測位の参照として、当該孤立物体のエッジに沿って走行する関連記録データがないので、当該孤立物体を利用して再測位することができないため、ステップS5に入り、記録した前記孤立物体のエッジに沿って走行するエッジ経路を記憶済みのエッジ経路とすることで、後続でロボットが当該孤立物体に再び当たったときに、再測位することが容易になり、続いてステップS3に戻る。判断で現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似するという結論を取得した場合、ロボットが現在検出した孤立物体は、過去に当たったことがあるものであり、且つ、当該孤立物体のエッジに沿って走行したエッジ経路の関連記録データが記憶されていることを表し、当該孤立物体を利用して再測位することができるため、ステップS6に進み、過去に記憶しておいた当該孤立物体のエッジに沿って走行するエッジ経路を参照測位経路とし、次に、現在のエッジ経路が位置する第1ローカルマップ及び参照測位経路が位置する第2ローカルマップを決定し、即ち、グリッドマップのうち、現在のエッジ経路を含むマップの一部分を囲んで第1ローカルマップとし、参照測位経路を含むマップの一部分を囲んで第2ローカルマップとし、前記第1ローカルマップと前記第2ローカルマップとの大きさ及び形状は同じであるが、具体的な大きさ及び形状を具体的な設計ニーズに基づいて適宜に設定することができ、例えば、形状を円心、正方形又は長方形に設定し、ローカルマップの最大グリッド座標をエッジ経路中の最大グリッド座標より4グリッドセル大きく設定し、ローカルマップの最小グリッド座標をエッジ経路中の最小グリッド座標より4グリッドセル小さく設定する等ができる。そして、形状及び大きさが同じ第1ローカルマップと第2ローカルマップとを重ね、現在のエッジ経路と参照測位経路とが類似するため、両者は、主にグリッド座標が異なるが、経路の全体的な形状はほぼ同じであり、違う点は少ししかなく、したがって、第1ローカルマップと第2ローカルマップとを重ねることで、現在のエッジ経路と参照測位経路とが互いに重なる部分を取得することができ、これらの重なる部分はロボットが孤立物体のこの区間のエッジに沿って走行する際に誤差が発生していないことを表し、この区間のエッジに対応するグリッド座標を使用して再測位することができ、また、一部の重なっていない部分や点は、対応するエッジ区間又はエッジ点においてロボットに走行誤差が発生したことを表し、再測位の参照として適さない。したがって、最後に、第1ローカルマップの現在のエッジ経路のうち、第2ローカルマップの参照測位経路と重なる部分に対応するグリッドセルを測位セルとして決定し、ロボットが前記測位セルに現在位置するときに検出したグリッド座標を、対応する参照測位経路中のグリッドセルのグリッド座標に置き換え、それによりロボットの再測位が実現される。
図2に示すように、
図2は、第1ローカルマップと第2ローカルマップとを重ねた後の模式図であり、図中の各マス目は1つのグリッドセルを示し、文字Pがマークされているマス目が連なった経路が前記現在のエッジ経路であり、文字Bがマークされているマス目が連なった経路が前記参照測位経路であり、1つのマス目に文字Pと文字Bとがともにマークされていると、これは、前記現在のエッジ経路と前記参照測位経路とが重なる部分であることを示す。
図2から分かるように、この2本のエッジ経路は、左上隅の2つ又は3つの点だけに違いがあり、大部分の経路が重なるため、この2本の経路は類似する結論を取得するとともに、ロボットは、BとPを同時に含むいずれか1つのマス目に対応する位置で、現在検出したグリッド座標を、対応するBマス目に記憶したグリッド座標に置き換えることにより、ロボットの再測位が実現できる。本実施例で説明した方法は、ロボットが孤立物体のエッジに沿って走行する経路を参照として用いることにより、ロボットの走行誤差の過度な蓄積による位置ずれを補正することができ、再測位が実現され、それにより、後続でナビゲーション・走行する際のロボットの測位の正確性及び走行効率を向上させる。
【0022】
そのうちの一実施形態として、ステップS1の後、且つ、ステップS2の前に、以下のステップS11~ステップS14をさらに含む。ステップS11では、まず、ロボットのジャイロスコープ及び走行距離計で検出したデータにより、ロボットが障害物を検出するときに位置するグリッドセル及び当該グリッドセルに対応するグリッド座標を決定する。続いてステップS12に入り、現在時刻から過去への所定の時間内でロボットが記憶したエッジ経路を決定し、ただし、前記所定の時間を具体的な設計ニーズに基づいて適宜に設定することができ、好ましくは、10分から30分のうちいずれか1つの値に設定することができ、本実施例は20分に設定し、即ち、現在時刻から過去へ20分間推算し、ロボットは、この20分間にロボットが記憶したエッジ経路がどれであるかを、メモリ内のデータから検索し、関連データを決定した後、ステップS13に進む。ステップS13では、ロボットは、ステップS11で決定したグリッド座標とステップS12で決定したエッジ経路に対応するグリッド座標とを1つずつ比較分析し、比較した2つのグリッド座標が同じであるか又は隣接することが判明すると、現在の障害物は20分以内で当たったことがあり、且つ、すでにそのエッジに沿って走行したことがあると考えられ、ロボットが同じ障害物のエッジの周りを短時間で頻繁に走行すると、ロボットの走行効率が低下するとともに、短時間の間に、ロボットが蓄積する誤差がそれほど大きくないため、再測位の必要がなく、頻繁な再測位もロボットの走行効率の低下につながるので、ロボットの走行効率を最適にするため、ステップS13で、ステップS11で決定したグリッド座標とステップS12で決定したエッジ経路に対応するグリッド座標とが同じであるか又は隣接するかを決定すると、ステップS14に進み、ロボットは、走行角度を調整して、障害物から遠ざかる方向へ走行し、前記障害物から離れる。続いて、ロボットは、システムによって計画された経路や方法にしたがって走行し続け、ロボットの先端のタッチセンサ又は赤外線センサによって障害物を再度検出すると、ステップS11に戻り、再度検出した障害物が関連要件を満たすか否かの判断を再開する。グリッド座標の比較分析中、比較する2つのグリッド座標が同じではない又は隣接していないことが判明する場合、過去の20分間でロボットは当該障害物に当たったことがなく、且つ、ロボットはすでに長時間走行して、蓄積した誤差も大きいと考えられるため、次に、ステップS2に進み、当該障害物はロボットの再測位条件を満たすか否かをさらに判断する。ただし、ステップS13で説明した隣接とは、2つのグリッド座標に対応するグリッドセル同士が共通の一辺又は一角点を有することを指す。本実施例で説明した方法は、ロボットが所定の時間内で検出した障害物の状況により、ロボットがこの障害物のエッジに沿って走行する必要があるか否かを判断し、それによりロボットの走行効率を向上させ、ロボットの行動の盲目性及び反復性を回避した。
【0023】
そのうちの一実施形態として、ステップS2で説明した、前記障害物のエッジに沿って走行するとともに、前記障害物のエッジに沿う走行経路が、前記障害物を孤立物体と決定する条件を満たすか否かを判断することは、以下のステップS21~ステップS24を含む。ステップS21では、ロボットが、前記障害物のエッジに沿って走行するとともに、ジャイロスコープ及び走行距離計で検出したデータを基に、ロボットがエッジに沿って走行し始めたときの開始位置点の開始情報を記録し、前記開始情報は、開始位置点の点座標値、開始位置点に対応するグリッドセルのグリッド座標、走行方向及び走行開始時間等の情報を含み得る。開始情報の記録は、後続で障害物が孤立物体であるか否かを判断するために参照データを提供でき、後続で当該障害物の探すときにナビゲーションを提供することもできる。開始情報の記録が済んだ後、ステップS22に進み、ジャイロスコープで検出したデータを基に、ロボットが前記開始位置点から障害物のエッジに沿って走行し始め、機体回転の角度変化量が360°に達するか否かを判断し、これにより、ロボットが一周走行したか否かを予備判断でき、すでに一周走行したと予備判断する場合、直接ステップS23に進んで、さらなる確認を行う。また一周走行していないと予備判断する場合、ロボットの前記開始位置点から始まって検出した角度変化量が360°に達するまで、前記障害物のエッジに沿って走行し続けてから、ステップS23に進んで、さらに確認する。ステップS23では、ロボットは、まずステップS21での開始位置点に戻るか否かを判断し、判断方法は、点座標値が同じであるか否かを判断する方法を使用でき、現在位置点の点座標値と開始位置点の点座標値が同じであることが検出されると、ロボットが開始位置点に戻ったと考えられ、それによりロボットが前記障害物のエッジに沿って一周走行したと決定でき、エッジに沿って走行した経路により前記障害物が孤立物体であるという結論を取得し、即ち、前記障害物を孤立物体と決定する条件を満たし、続いてステップS4に入って、次の操作をすることができる。ロボットの走行誤差の影響のため、ジャイロスコープで機体が360°回転したことを検出したときに、ロボットはまだ障害物のエッジを一周完走しておらず、且つ開始位置点に戻っていない可能性がある。ロボットの開始位置点から始まって検出した角度変化量が360°に達すると判断したが、ロボットが開始位置点にまだ戻っていない場合、ステップS24に進み、前記障害物のエッジに沿って走行し続け、ロボットがステップS21での開始位置点に戻ったか否かを判断し、且つ、ロボットの前記開始位置点から始まって検出した角度変化量が450°に達するか否かを判断する。ロボットが前記開始位置点に戻り且つ前記角度変化量が450°に達していない場合、ロボットは今まで確かに誤差の影響を受けたことを表し、450°範囲内で開始位置点に戻ることができれば、発生した誤差が容認可能な範囲にあることを表し、前記障害物が孤立物体であることを決定でき、即ち、前記障害物を孤立物体と決定する条件を満たす。ロボットが前記開始位置点に戻ったが、前記角度変化量が450°を超えるか、又は、ロボットが前記開始位置点に戻らず、前記角度変化量が450°を超えると、前記障害物が孤立物体でないことを表し、前記障害物のエッジに沿うロボットの走行経路は、前記障害物を孤立物体と決定する条件を満たさないと決定する。本実施例で説明した方法は、座標値とロボットの回転角度を組み合わせることで、ロボットが障害物の周りを一周完走することができるか否かを正確に判断し、さらに、前記障害物のエッジに沿うロボットの走行経路が、前記障害物を孤立物体と決定する条件を満たすか否かの結論を正確に取得することができ、後続のロボットの再測位のために有効な参照データを提供できる。
【0024】
そのうちの一実施形態として、ステップS21の後、且つ、ステップS22の前に、以下のステップS211~ステップS217をさらに含む。ステップS211では、走行距離計及びジャイロスコープを基に、ロボットが前記開始位置点から前記障害物のエッジに沿って走行した距離及び角度変化量を検出する。続いてステップS212に進み、ロボットが前記開始位置点から走行した距離が1.5メートルに達するか否かを判断し、そうである場合、ステップS213に進み、そうでない場合、ロボットは、走行した距離が1.5メートルに達するまで走行し続け、ステップS213に進む。ステップS213では、ロボットが前記開始位置点から走行した角度変化量が90°に達するか否かを判断し、そうでない場合、前記障害物は占有面積が大きく、エッジ路線が長いことを表し、再測位の参照物体としては適さないため、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、判断を再開する。ロボットが1.5メートルだけ走行し、且つ回転した角度が90°に達すると、当該障害物が占有面積の大きさが適切であると予備判断することができ、ステップS214に進んで、さらなる判断をする必要がある。ステップS214では、ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した距離が3メートルに達するか否かを判断し、そうである場合、ステップS215に進み、そうでない場合、ロボットは、走行した距離が3メートルに達するまで走行し続け、ステップS215に進む。ステップS215では、ロボットが前記開始位置点から走行した角度変化量が180°に達するか否かを判断し、そうでない場合、前記障害物の始めの1.5メートルのエッジ路線の延伸角度がより適切であり、1.5メートルから3メートルまでの区間のエッジ路線の延伸角度が大きく、それに伴って障害物が占有面積も大きくなる可能性が大きいことを表し、再測位の参照物体としては適さないため、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、判断を再開する。ロボットが3メートルだけ走行し、且つ回転した角度が180°に達すると、当該障害物が占有面積の大きさが適切であるという結論を概ね取得するが、障害物形状の不確実性のために、さらに、ステップS216に進んで、最後の確認をする必要がある。ステップS216では、ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した距離が4.5メートルに達するか否かを判断し、そうである場合、ステップS217に進み、そうでない場合、ロボットは、走行した距離が4.5メートルに達するまで走行し続け、ステップS217に進む。ステップS217では、ロボットが前記開始位置点から走行した角度変化量が270°に達するか否かを判断し、そうでない場合、前記障害物の始めの3メートルのエッジ路線の延伸角度が適切であり、3メートルから4.5メートルまでの区間のエッジ路線の延伸角度が大きいことを表し、それに伴って障害物は占有面積が大きくなる可能性が高く、再測位の参照物体としては適さないため、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、判断を再開する。ロボットが4.5メートルだけ走行し、且つ回転した角度が270°に達すると、当該障害物が占有面積の大きさが適切であるという結論を概ね取得し、残りのエッジ路線の変化が大きくても、変化範囲は90°しかないため、障害物全体の大きさへの影響が大きくなく、したがって、最終的に当該障害物が占有面積の大きさが適切であることを確認でき、ロボットの再測位に最適な参照物体である。本実施例で説明した方法は、障害物のエッジに沿う走行経路の距離と角度変化との関係を組み合わせることにより、前記障害物の占有面積の大きさの状況を正確に判断でき、それにより当該障害物がロボットの再測位の参照物体として適しているか否かを有効に決定し、さらに、後続のロボットの再測位のために正確な参照データを提供することができる。
【0025】
そのうちの一実施形態として、ステップS21の後、且つ、ステップS22の前に、以下のステップS211~ステップS217をさらに含む。ステップS211では、ロボット内のRTCクロックタイマモジュール及びジャイロスコープを基に、ロボットが前記開始位置点から前記障害物のエッジに沿って走行した時間及び角度変化量を検出し、続いてステップS212に進む。ステップS212では、ロボットは、前記開始位置点から走行した時間が1分に達するか否かを判断し、そうである場合、ロボットが障害物のエッジに沿って一定の距離を走行したことを表し、ステップS213に進み、そうでない場合、ロボットは、走行した時間が1分に達するまで走行し続け、ステップS213に進む。ステップS213では、ロボットが前記開始位置点から走行した角度変化量が90°に達するか否かを判断し、そうでない場合、ロボットが障害物のエッジに沿って走行した軌跡の変化に対応する障害物の占有面積が大きいことを表し、再測位の参照物体として適さないため、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、判断を再開する。ロボットがすでに1分間走行し、且つ、回転した角度変化量が90°に達すると、当該障害物が占有面積の大きさが適切であると予備判断することができ、ステップS214に進んで、さらなる判断を行う必要がある。ステップS214では、ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した時間が2分に達するか否かを判断し、そうである場合、ロボットがより長い距離を走行したことを表し、ステップS215に進み、そうでない場合、ロボットは、走行した時間が2分に達するまで走行し続け、ステップS215に進む。ステップS215では、ロボットが前記開始位置点から走行した角度変化量が180°に達するか否かを判断し、そうでない場合、前記ロボットが始めの1分間に障害物のエッジに沿って走行したエッジ路線の延伸角度が適切であり、次の1分間に障害物のエッジに沿って走行したエッジ路線の延伸角度は大きく、それに伴って障害物が占有面積も大きくなる可能性が高く、再測位の参照物体として適さないため、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、判断を再開する。ロボットが2分間走行し、且つ回転した角度が180°に達すると、当該障害物が占有面積の大きさが適切であるという結論を概ね取得するが、障害物形状の不確実性のために、ステップS216に進んで、さらなる確認をする必要がある。ステップS216では、ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した時間が3分に達するか否かを判断し、そうである場合、ステップS217に進み、そうでない場合、ロボットは、走行した時間が3分になるまで走行し続けてから、ステップS217に進む。ステップS217では、ロボットが前記開始位置点から走行した角度変化量が270°に達するか否かを判断し、そうでない場合、前記ロボットが始めの1分目及び2分目に障害物のエッジに沿って走行したエッジ路線の延伸角度が適切であり、3分目の1分間に障害物のエッジに沿って走行したエッジ路線の延伸角度は大きく、それに伴って障害物が占有面積も大きくなる可能性が高く、再測位の参照物体として適さないため、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、判断を再開する。ロボットが3分間走行し、且つ回転した角度が270°に達すると、ロボットが前の3分間に障害物のエッジに沿って走行したエッジ路線の延伸角度が合理的であることを表し、ステップS218に進み、ロボットが前記障害物のエッジに沿って走行し続けるとともに、ロボットが前記開始位置点から走行した時間が4分に達するか否かを判断し、そうである場合、ステップS22に進み、ロボットが前記開始位置点から始まって検出した角度変化量が360°に達するか否かを判断し、これからロボットが障害物のエッジに沿って360°走行したか否かを判断し、エッジに沿って一周走行することを実現する。そうでない場合、ロボットは、走行した時間が4分に達するまで走行し続けてから、ステップS22に進んで、360°の判断を行う。本実施例で説明した方法は、時間帯毎のロボットの角度変化量を1つずつ解析することにより、前記障害物の占有面積の大きさの状況を正確に判断することができ、それにより当該障害物がロボットの再測位の参照物体として適すか否かを有効に決定し、さらに、後続のロボットの再測位に正確な参照データを提供することができる。
【0026】
そのうちの一実施形態として、ステップS23でロボットがステップS21での開始位置点に戻ったと判断した後且つ前記障害物のエッジに沿うロボットの走行経路が前記障害物を孤立物体と決定する条件を満たすと決定する前に、又は、ステップS24でロボットが前記開始位置点に戻ったが前記角度変化量が450°に達していない後且つ前記障害物のエッジに沿うロボットの走行経路が前記障害物を孤立物体と決定する条件を満たすと決定する前に、以下のステップをさらに含む。ロボットが前記障害物に沿って一周走行して囲んだ面積が0.3平方メートルより大きいか否かを判断し、そうである場合、前記障害物が占有面積の大きさが適切であることを表し、ロボットの再測位の参照物体として考慮することができ、続いて前記障害物のエッジに沿うロボットの走行経路が前記障害物を孤立物体と決定する条件を満たすと決定するステップに進み、そうでない場合、ロボットは、走行角度を調整して、前記障害物から離れ、走行し続けて、障害物を再度検出すると、ステップS11に戻り、判断を再開する。ロボットの測位参照とする物体は、大きすぎると、測位に時間がかかり、効率が低下し、小さすぎると、測位が不正確になり、効果が理想的ではないため、大きすぎても小さすぎてもいけない。したがって、本実施例で説明した方法は、0.3平方メートルより大きい面積を占めることを制限条件とすることにより、後続でロボットの再測位又は新しい測位パラメータの記憶を行う参照として非常に理想的な孤立物体を選択することができる。
【0027】
そのうちの一実施形態として、ステップS4で、前記孤立物体のエッジに沿って走行するエッジ経路を記録し、現在記録したエッジ経路が過去に記憶済みのエッジ経路に類似しているか否かを判断することは、以下のステップS41~ステップS45を含む。ステップS41では、ロボットのジャイロスコープ及び走行距離計で検出したデータを基に、現在の前記エッジ経路に対応するグリッドセルのグリッド座標を記録し、現在の前記エッジ経路で囲んだ領域のグリッド面積を記録し、現在の前記エッジ経路で囲んだ領域の中心グリッドセルのグリッド座標を記録し、ただし、前記グリッド座標は位置点の座標値によって換算でき、前記グリッド面積はグリッドセルの数によって計算できる。中心グリッドセルのグリッド座標は、当該領域内の上、下、左、右の極値グリッド座標によって計算でき、例えば、当該領域の最上端のグリッド座標が(20,30)で、最下端のグリッド座標が(8,10)で、最左端のグリッド座標が(6,12)で、最右端のグリッド座標が(28、22)であると、計算で中心グリッドセルのグリッド座標が(6+(28-6)/2、10+(30-10)/2)=(17,20)であることを得る。前記の中心は、規則的な形状での中央を指すだけではなく、領域の形状が不規則である場合、同様の方法で計算することにより得たグリッド座標も、当該領域の中心グリッドセルのグリッド座標とすることができる。関連データを記録した後、ステップS42に進み、現在のエッジ経路で囲んだ領域の中心グリッドセルのグリッド座標と、記憶済みのエッジ経路で囲んだ領域の中心グリッドセルのグリッド座標との座標差が所定の第1座標差より大きいか否かを判断し、前記所定の第1座標差は、具体的な設計ニーズに基づいて適宜に設定することができ、(2,2)又は(3,3)に設定することができ、即ち、比較するグリッド座標のうちのX値が2又は3より大きいか否かを、Y値が2又は3より大きいか否かを判断し、両方とも大きい場合、所定の第1座標差より大きいと決定し、そうでなければ、所定の第1座標差より大きくないと決定する。現在のエッジ経路で囲んだ領域の中心グリッドセルのグリッド座標と、記憶済みのエッジ経路で囲んだ領域の中心グリッドセルのグリッド座標との座標差が所定の第1座標差より大きいと判断した場合、比較する2本のエッジ経路で囲んだ領域の上、下、左、右の極値のグリッド座標の違いが大きいことを表し、即ち、2本のエッジ経路の形状には大きい違いがあるため、現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似していないと決定できる。現在のエッジ経路で囲んだ領域の中心グリッドセルのグリッド座標と、記憶済みのエッジ経路で囲んだ領域の中心グリッドセルのグリッド座標との座標差が所定の第1座標差以下であると判断した場合、必ずしもこの2本のグリッド経路が類似することを表すのではなく、ステップS43に進んで、さらなる判断をする必要がある。ステップS43では、現在のグリッド面積と、記憶済みのエッジ経路に対応する領域のグリッド面積との差が所定の面積差より大きいか否かを判断し、前記所定の面積差は、具体的な設計ニーズに基づいて適宜に設定することができ、1個から5個のグリッドセルの面積に設定することができ、走行誤差の影響のため、設定した値が小さすぎると、マッチングする対象を見つかりにくく、設定した値が大きすぎると、見つかった対象の正確性が低いため、本実施例では、3個のグリッドセルの面積に設定し、このようにすると、最適マッチング効果に達成できる。グリッド面積は、エッジ経路に対応するグリッドセルのグリッド座標値を基に、各行のグリッドセルの数又は各列のグリッドセルの数を合わせてから、各グリッドセルの面積を乗算すると、前記グリッド面積が得られる。現在のグリッド面積と、記憶済みのエッジ経路に対応する領域のグリッド面積との差が所定の面積差より大きいと判断した場合、2つの領域の形状が大きく違い、2本のエッジ経路の形状も大きく違うことを表し、したがって、現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似していないと決定できる。現在のグリッド面積と、記憶済みのエッジ経路に対応する領域のグリッド面積との差が所定の面積差以下であると判断した場合、必ずしもこの2本のグリッド経路が類似することを表すのではなく、ステップS44に進んで、さらなる判断をする必要がある。ステップS44では、現在のエッジ経路が位置する第1ローカルマップ及び記憶済みのエッジ経路が位置する第2ローカルマップを基に、形状及び大きさが同じ第1ローカルマップと第2ローカルマップとを重ね、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断し、前記所定の比率値は具体的な設計ニーズに基づいて適宜に設定することができ、本実施例では90%に設定した。
図3に示すように、
図3は、第1ローカルマップと第2ローカルマップとを重ねた後の模式図であり、選択された第1ローカルマップ及び第2ローカルマップは、いずれもグリッドマップのうち長さが15個のグリッドセルの距離であり、幅が13個のグリッドセルの距離である矩形のローカルマップであり、この2つのローカルマップは、いずれもエッジ経路に対応するグリッドセルを含んでいる。図中の各マス目は、1つのグリッドセルを表し、文字Hがマークされているマス目が連なった経路が前記の現在のエッジ経路であり、文字Qがマークされているマス目が連なった経路が過去に記憶済みのエッジ経路であり、1つのマス目に文字Hと文字Qとがともにマークされていると、前記の現在のエッジ経路と、記憶済みのエッジ経路とが重なる部分であることを表す。
図3から分かるように、重なるグリッドセルは29個で、Qがマークされているグリッドセルは32個で、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率は90.6%であり、所定の比率値90%より大きい。これは、この2本のエッジ経路の大部分の経路は重なり、右上隅の3つの点だけが違うことを表す。したがって、総合的な判断を経て、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値より大きい場合、最終的に現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似すると決定できる。現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値以下である場合、ステップS45に進んで、さらなる判断をする必要がある。ステップS45では、現在のエッジ経路を、記憶済みのエッジ経路に対して上、下、左、右の4方向へそれぞれN個のグリッドセルの距離だけ平行移動させ、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断する。
図4に示すように、
図4は、第1ローカルマップと第2ローカルマップとを重ねた後の別の模式図であり、図中の各マス目は、1つのグリッドセルを表し、文字Hがマークされているマス目が連なった経路は前記の現在のエッジ経路であり、文字Qがマークされているマス目が連なった経路が過去に記憶済みのエッジ経路であり、1つのマス目に文字Hと文字Qとがともにマークされている場合、前記の現在のエッジ経路と、記憶済みのエッジ経路とが重なる部分であることを表す。図面から分かるように、重なるグリッドセルは16個だけで、記憶済みのエッジ経路中のグリッドセルの数に対する比率は50%であり、所定の比率値90%よりはるかに小さい。このとき、Hがマークされているエッジ経路全体を1個のグリッドセルの距離だけ上へ平行移動させる必要があり、
図3に示す重なる効果を取得し、上記のような
図3に対する分析により、最終的に現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似すると決定できる。1個のグリッドセルの距離だけ上へ平行移動させた比率は依然として所定の比率値より小さいと仮定すると、N個のグリッドセルの距離だけ平行移動させるまで、1個のグリッドセルの距離だけ上へ平行移動させ続けて、得られた比率と所定の比率値との関係を再度分析判断しても、前記比率値が所定の比率値より大きいという結果になることができない場合、
図4に示す元の状態に戻り、N個のグリッドセルの距離だけ順次下へ平行移動させても、依然として前記比率値が所定の比率値より大きいという結果になることができない場合、再び
図4に示す元の状態に戻り、類推して、それぞれN個のグリッドセルの距離だけ順次左と右とへ平行移動させ、最終的に前記比率値が所定の比率値より大きいという結果になることができない場合、現在記録したエッジ経路と、過去に記憶済みのエッジ経路とが類似していないと決定できる。上述した平行移動中に、前記比率値が所定の比率値より大きいという結果を取得した計算が1回でもあれば、現在記録したエッジ経路と過去に記憶済みのエッジ経路とが類似すると決定できる。ただし、前記Nは具体的な設計ニーズに基づいて適宜に設定してもよく、設定された値が小さすぎると、マッチングする対象を得にくく、設定された値が大きすぎると、得られた対象に大きい誤差が存在する可能性があり、ロボットの再測位の対象としては適さない。好ましくは、Nは自然数であり、1≦N≦3であり、本実施例ではN=2に設定した。本実施例で説明した方法は、グリッドセルが重なる方法により、現在記録したエッジ経路が過去に記憶済みのエッジ経路に類似しているか否かを判断することを実現し、比較的正確な判断結果を得ることができ、後続のロボットの再測位の正確性の向上に有利である。
【0028】
そのうちの一実施形態として、ステップS44又はステップS45で、現在のエッジ経路と、記憶済みのエッジ経路とが互いに重なったグリッドセルの数の、記憶済みのエッジ経路中のグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断することは、次のステップを含む。現在のエッジ経路が位置する第1ローカルマップ及び記憶済みのエッジ経路が位置する第2ローカルマップを基に、現在のエッジ経路及び記憶済みのエッジ経路に対応するグリッドセルを共に1とマークし、その他のグリッドセルを0とマークする。前記第1ローカルマップ及び前記第2ローカルマップにおける対応するグリッドセルについてAND演算を行い、即ち、1と1の結果は1で、1と0の結果は0で、0と0の結果も0である。AND演算後、得られた1とマークされたグリッドセルの数の、記憶済みのエッジ経路に対応するグリッドセルの数に対する比率が所定の比率値より大きいか否かを判断する。本実施例で説明した方法は、グリッドセルを2値化してから、AND演算によって分析し、2本のエッジ経路の互いに重なったグリッドセルの数を素早く正確に取得することができ、それにより前記重なったグリッドセルの数の、記憶済みのエッジ経路に対応するグリッドセルの数に対する比率が所定の比率値より大きいか否かの結果を迅速且つ正確に取得することができ、後続のロボットの測位に正確な参照データをより効率的に提供する。ただし、前記所定の比率値と関連計算方法は前記実施例と同じであるため、ここでは詳細な説明を省略する。
【0029】
そのうちの一実施形態として、ステップS6で、ロボットが前記測位セルに現在位置するときに検出したグリッド座標を、対応する参照測位経路中のグリッドセルのグリッド座標に置き換えることは、以下のステップS61~ステップS63を含む。ステップS61では、前記測位セルに直列に連なったM個のグリッドセルが存在するか否か、且つ、ロボットが現在記録した当該直列に連なったM個のグリッドセルのグリッド座標と前記参照測位経路の対応するグリッドセルのグリッド座標との差が所定の第2座標差未満であるかを判断する。ただし、前記Mの値は具体的な設計ニーズに基づいて適宜に設定することができ、Mは自然数であり、2≦M≦3であり、本実施例では3に設定した。前記所定の第2座標差も具体的な設計ニーズ基づいて適宜に設定することができ、本実施例では(2,2)に設定した。ロボットが記録する連続で検出された3個のグリッドセルのグリッド座標値と前記参照測位経路の対応するグリッドセルのグリッド座標との差がいずれも所定の第2座標差(2,2)より小さく、即ち、記録するグリッドセルのグリッド座標のX値と参照測位経路の対応するグリッドセルのグリッド座標のX値との間の差は2より小さく、且つ、Y値間の差も2より小さい場合、比較される2本の経路間の位置の違いはそれほど大きくなく、同じ方位の物体であることを表し、ステップS62に進んで、後続の測位補正を行うことができる。そうでなければ、比較される2本の経路間の位置の違いが大きく、同じ方位の物体ではない可能性があり、この物体を測位参照とすることができず、ステップS3に戻る必要があり、現在の障害物から離れて、次の参照とすることができる物体を探す。ステップS62では、上記の連続する3個のグリッドセルの誤差が小さいため、ロボットが直列に連なった当該3個のグリッドセルのうちいずれか1つのグリッドセルまで走行すると、ステップS63に進み、現在検出したグリッド座標を対応する参照測位経路中のグリッドセルのグリッド座標に置き換えることにより、ロボットの再測位が実現される。ロボットは、前記のステップでは、主にエッジ経路が類似しているか否かを判断するため、家庭環境で占有面積及び形状が同じ物体が2つある場合、ロボットがエッジ経路の類似さのみによって測位データを補正すると、間違ってしまう可能性が大きい。したがって、本実施例で説明した方法は、検出・記録するエッジ経路のグリッド座標と参照測位経路中のグリッド座標との差により、現在の物体と参照測位経路に対応する物体とが同じ位置にあるか否かをさらに判断し、それにより、より正確な測位データを取得し、ロボットの測位補正がより正確になる。
【0030】
そのうちの一実施形態として、ステップS62で、ロボットが前記直列に連なったM個のグリッドセルのうちいずれか1つのグリッドセルまで走行することは、以下のS621~ステップS622を含む。ステップS621では、前記直列に連なったM個のグリッドセルは1組しかないか否かを判断する。現在の物体と参照物体との位置が同じで形状が近似していると、同じか又は近似しているグリッド座標の数が多くなるため、一般的に、前記直列に連なったM個のグリッドセルは複数組あるか、又は、1組しかないが、当該組のグリッドセルが非常に多い。1組しかない場合、前記直列に連なったM個のグリッドセルのうちいずれか1つのグリッドセルまで直接走行して、ステップS63に進み、現在検出したグリッド座標を対応する参照測位経路中のグリッドセルのグリッド座標に置き換え、それによりロボットの再測位が実現される。複数組がある場合、ステップS622に進み、記録時間が最も早い1組の前記直列に連なったM個のグリッドセルを決定し、ロボットがそのうちの記録時間が最も早い1つのグリッドセルまで走行して、ステップS63に進み、現在検出したグリッド座標を対応する参照測位経路中のグリッドセルのグリッド座標に置き換え、それによりロボットの再測位が実現される。ロボットが走行した時間が長ければ長いほど、発生する誤差が大きいため、記録が早いほど、データがより正確である。本実施例で説明した方法は、ロボットが測位する際に、時間が最も早いグリッドセルを選択して測位データを補正し、さらに測位データの正確性をより保証し、ロボットの測位の正確性をより確保した。
【0031】
そのうちの一実施形態として、ステップS6の後に、以下のステップS71~ステップS74をさらに含む。ステップS71では、ステップS6で説明したロボットが前記測位セルに現在位置するときに検出したグリッド座標が(X1、Y1)であることを決定して、ステップS72に進む。ステップS72では、ステップS6で説明した対応する参照測位経路中のグリッドセルのグリッド座標が(X2、Y2)であることを決定して、ステップS73に進む。ステップS73では、グリッドセルの一辺の長さがLであることを決定して、ステップS74に進む。ステップS74では、ロボットが現在位置点で検出した座標値(x1、y1)を(x2、y2)に置き換え、x2=x1-(X1-X2)*L、y2=y1-(Y1-Y2)*Lである。(X1=10、Y1=20)、(X2=12、Y2=21)、L=20cmと仮定すると、ロボットは現在位置点の座標値が(x1=208、y1=412)であることを検出し、(x2=248、y2=432)を得、置き換え後にロボットの現在位置点の座標値は(248,432)になる。ロボットがナビゲーション・走行する際に、先にグリッド経路を検索し、続いてグリッド経路に沿って、位置点を1つずつ走行する。したがって、本実施例で説明した方法は、ロボットがグリッド座標の測位補正をした後、また、具体的な位置点の座標値の補正をさらに行う必要があり、ロボットがナビゲーション・走行する正確性と高効率性を保証できる。
【0032】
そのうちの一実施形態として、ステップS6の後に、以下のステップS71~ステップS73をさらに含む。ステップS71では、ジャイロスコープ及び走行距離計で検出したデータを基に、ステップS6での、ロボットが前記測位セルの中心点に現在位置するときに検出した座標値が(x1、y1)であることを決定して、ステップS72に進む。ステップS72では、保存されている記憶済みの経路の対応するデータを基に、ステップS6での、対応する参照測位経路中のグリッドセルの中心点の座標値が(x2、y2)であることを決定して、ステップS73に進む。ステップS73では、ロボットが現在検出した座標値((x1、y1))を(x2、y2)に置き換える。記憶したデータで直接置き換える方法により、具体的な位置点の座標値の補正をより効率的に行い、ロボットがナビゲーション・走行する正確性と高効率性を保証できる。
【0033】
以上の実施例で説明したグリッドセルは、辺の長さが20センチメートルの仮想マス目を指し、グリッドマップは、多くのグリッドセルが連続して配列されて形成した一定の長さと幅を有する、地理環境情報を表すためのマップである。グリッドマップに基づいて、ロボットは、走行しながら検出されたデータから現在位置するグリッドセルの位置を知ることができ、グリッドセルの状態をリアルタイムに更新することもでき、例えば、順調に通過したグリッドセルの状態を通過済とマークし、障害物に当たったグリッドセルの状態を障害物とマークし、断崖が検出されたグリッドセルの状態を断崖とマークし、行ったこのないグリッドセルの状態を未知とマークする等である。また、以上の実施例で説明した孤立物体とは、壁又は壁にもたれる物体に近接していない独立物体を指し、ロボットは当該独立物体のエッジに沿って一周走行できる。ただし、独立物体は、単一の物体だけでなく、互いに近接して連続の面積を占める複数の物体も、前記独立物体に属する。また、以上の実施例で説明した過去に記憶済みのエッジ経路とは、ロボットシステム中でメモリに記憶されている、一定の条件を満たす他の孤立物体のエッジに沿って走行するときのエッジ経路を指し、エッジ経路に対応するグリッドセルのグリッド座標、エッジに沿う開始位置点に対応するグリッドセルのグリッド座標、エッジに沿う終了位置点に対応するグリッドセルのグリッド座標、エッジに沿って開始する時間、エッジに沿って終了する時間等を記憶することを含む。これらのメモリに記憶されるデータは任意に削除することができず、ロボットの再測位の参照データとして使用することができる。前記現在記録したエッジ経路とは、ロボットシステム中でバッファ領域に一時的に保存されている、現在の障害物のエッジに沿って走行したエッジ経路を指し、エッジ経路に対応するグリッドセルのグリッド座標、エッジに沿う開始位置点に対応するグリッドセルのグリッド座標、エッジに沿う終了位置点に対応するグリッドセルのグリッド座標、エッジに沿って開始する時間、エッジに沿って終了する時間等を保存することを含む。これらのバッファ領域に保存されているデータがロボットの再測位の参照データとする要件を満たす場合、メモリに記憶され、上記の記憶済みのエッジ経路になり、要件を満たさない場合、後続の新しく記録したデータにより上書きされる。
【0034】
当業者であれば、前記した各方法の実施例のステップの全部又は一部は、プログラムコマンドに関連するハードウェアによって実現され得ることを理解することができる。これらのプログラムは、コンピュータ可読記憶媒体(例えばROM、RAM、磁気ディスクもしくは光ディスク等の様々なプロクラムコードを記憶できる媒体)に記憶されることができる。当該プログラムが実行されると、前記した各方法の実施例のステップを実行する。
【0035】
最後に、本明細書において、各実施例に対して段階的な説明方法を採用し、各実施例の、他の実施例との異なる点について主に説明し、各実施例間の同じ又は類似する部分については、互いに参照すればよく、各実施例間の技術的解決手段は互いに組み合わせることができることを理解されたい。以上の各実施例は、本発明の技術的解決手段を制限するものではなく、説明するためのものであり、前記した各実施例を参照しながら、本発明について詳細に説明したが、当分野の一般技術者は、依然として前記各実施例で説明した技術的解決手段を修正すること、又はそのうちの一部分又は全部の技術的特徴を等価置換することができ、これらの修正又は置換により、対応する技術的解決手段の本質が本発明の各実施例の技術的解決手段の範囲から逸脱することはない。