(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-26
(45)【発行日】2022-11-04
(54)【発明の名称】ロボットの動きにおけるカーペットによるドリフトの制御方法、プログラムおよび掃除ロボット
(51)【国際特許分類】
G05D 1/02 20200101AFI20221027BHJP
A47L 9/28 20060101ALI20221027BHJP
【FI】
G05D1/02 W
G05D1/02 L
A47L9/28 E
(21)【出願番号】P 2021521798
(86)(22)【出願日】2018-12-19
(86)【国際出願番号】 CN2018121963
(87)【国際公開番号】W WO2020082552
(87)【国際公開日】2020-04-30
【審査請求日】2021-04-21
(31)【優先権主張番号】201811240370.7
(32)【優先日】2018-10-23
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】520347351
【氏名又は名称】珠海一微半導体股▲ふん▼有限公司
【氏名又は名称原語表記】AMICRO SEMICONDUCTOR CO.,LTD.
【住所又は居所原語表記】Room 2706,3000 Huandao East Road,Hengqin New District,Zhuhai,Guangdong 519000(CN)
(74)【代理人】
【識別番号】110002066
【氏名又は名称】弁理士法人筒井国際特許事務所
(72)【発明者】
【氏名】ダイ,ジエンフェン
【審査官】今井 貞雄
(56)【参考文献】
【文献】特開平05-184489(JP,A)
【文献】特表2018-500624(JP,A)
【文献】特表2017-536871(JP,A)
【文献】特開2008-059218(JP,A)
【文献】特開2005-141636(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/02
(57)【特許請求の範囲】
【請求項1】
ロボットの動きにおけるカーペットによるドリフトの制御方法であって、ロボットがカーペットの表面で初期位置から直線的に移動し始め、ロボットが感知した座標はすべてグローバル座標系に変換する必要があり、当該制御方法は、
ロボットがカーペットの表面を直線的に移動するためのプリセットの方向を決定し、同時に、ロボットの初期位置座標と初期時刻を記録し、ステップS2に進む、ステップであって、当該プリセットの方向は、グローバル座標系のプリセットの座標軸の正の方向である、ステップS1と、
第1プリセットの時間間隔ごとに、オプティカルフローセンサによって感知されたデータと、同時にコードディスクによって感知されたデータとを融合計算し、ロボットの現在位置座標を取得し、カーペット上でロボットの駆動輪が前進した実際のルートに対応して、ステップS3に進む、ステップS2と、
ロボットの現在位置座標と初期位置座標の相対位置関係にしたがって、前記プリセットの方向に対するロボットの現在移動方向のドリフト量を計算し、累積してドリフト統計値を取得し、ステップS4に進む、ステップであって、前記ドリフト量は、ロボットの現在位置と、前記プリセットの方向が配置されている直線との垂直距離である、ステップS3と、
記録して得られた現在時刻と前記初期時刻との差が第2プリセットの時間より大きいかどうかを判断し、大きい場合は、ステップS5に進み、そうでない場合は、ステップS2に戻る、ステップS4と、
第1プリセットの時間のセンシングデータの時間間隔に基づいて、第2プリセットの時間内のロボットの位置座標の収集回数を計算してから、前記ドリフト統計値に対して収集回数を使用して平均演算し、ドリフト平均値を取得して、カーペットによるドリフト量として使用するステップであって、前記ドリフト平均値の正または負は、ロボットが前記グローバル座標系上で逸脱する座標軸方向に関連し、前記ドリフト平均値の大きさは、ロボットの現在移動方向が前記プリセットの方向から逸脱する程度を決定し、その後ステップS6に進む、ステップS5と、
前記ドリフト平均値の絶対値に対応する偏差の大きさにしたがって、対応するPID比例係数を設定してロボットの左右側の駆動輪の速度を同期的に調整することにより、ロボットが現在移動方向から前記プリセットの方向に補正されて直線的に移動し続けるようにする、ステップS6と、を含み、
前記ドリフト量、前記ドリフト統計値および前記収集回数は、すべて前記初期時刻にゼロに初期化され、第1プリセットの時間は、各融合計算の時間であり、第2プリセットの時間は、ロボットにおけるカーペットによるドリフトを決定するための検出時間であり、ロボットの初期位置と現在位置座標は、すべてグローバル座標であることを特徴とする、制御方法。
【請求項2】
前記制御方法は、ロボットがジャイロスコープの角度変化にしたがってカーペットの表面でのロボットのドリフト角度および方向、即ち、前記現在位置座標と前記初期位置座標との間で測定された角度差を判断するステップをさらに含むことを特徴とする、
請求項1に記載の制御方法。
【請求項3】
ステップS1の前に、ロボットの左側の駆動輪の速度は、右側の駆動輪の速度と等しいことを特徴とする、
請求項1に記載の制御方法。
【請求項4】
前記ステップS2において、前記融合計算のプロセスは、
オプティカルフローセンサのセンシングデータが信頼できる場合、
まず、各前記第1プリセットの時間内にオプティカルフローセンサによって取得された画像変位量を、コードディスクと同じ次元の変位量に変換し、次に、時間次元でオプティカルフローセンサのセンシングデータを累積積分して、開始位置に対するオプティカルフローセンサのオプティカルフロードリフト位置座標を取得し、
次に、オプティカルフローセンサとロボットの中心との剛接合関係にしたがって、オプティカルフロードリフトの位置座標の平行移動を換算して、現在位置での機器の中心座標、即ち、ロボットの現在位置座標を取得し、カーペット上でロボットの駆動輪が前進した実際のルートに対応し、
オプティカルフローセンサのセンシングデータが信頼できない場合、
各前記第1プリセットの時間内にコードディスクによって感知されたパルスデータを時間次元で積分計算し、計算結果で前記機器の中心座標を更新し、ロボットの現在位置座標を取得し、カーペット上でロボットの駆動輪が前進した実際のルートに対応し、
同時に、オプティカルフローセンサとロボットの中心との剛接合関係にしたがって、前記機器の中心座標の平行移動を換算し、平行移動により換算された座標で前記オプティカルフロードリフト位置座標を更新し、
オプティカルフローセンサのセンシングデータの信頼性は、オプティカルフローセンサに内蔵した駆動信号によって判断され、オプティカルフローセンサによって出力される中断信号が高レベルである場合、オプティカルフローセンサのセンシングデータは信頼でき、オプティカルフローセンサによって出力される中断信号が低レベルである場合、オプティカルフローセンサのセンシングデータは信頼できないことを特徴とする、
請求項1に記載の制御方法。
【請求項5】
前記剛接合関係は、オプティカルフローセンサのオプティカルフロー座標系とロボットの中心の機器座標系との相対位置関係であり、オプティカルフローセンサの位置とロボットの中心位置との距離の大きさ、およびオプティカルフローセンサの位置とロボットの中心位置との接続線と、機器座標系のプリセットの座標軸との角度を含み、
機器座標系のプリセットの座標軸の正の方向は、ロボットの現在移動方向であり、
機器座標系のプリセットの座標軸の正の方向と、グローバル座標系のプリセットの座標軸の正の方向との角度は、ジャイロスコープによって検出された数値に基づいて計算されて、前記プリセットの方向に対するロボットの現在位置の偏角として使用することを特徴とする、
請求項4に記載の制御方法。
【請求項6】
前記ステップS5において、前記収集回数は、前記第2プリセットの時間と前記第1プリセットの時間との比であることを特徴とする、
請求項1に記載の制御方法。
【請求項7】
前記ドリフト平均値が正の数である場合、前記ロボットの左右側の駆動輪の速度を同期的に調整する方法は、
前記ドリフト平均値が徐々に0に向かって減少し、ロボットの現在移動方向が前記プリセットの方向と徐々に重ね合い、ロボットの左側の駆動輪の速度が右側の駆動輪の速度と再び等しくなるまで、ロボットの左側の駆動輪の速度に前記ドリフト平均値の絶対値を加えるように制御し、ロボットの右側の駆動輪の速度に前記ドリフト平均値の絶対値を同期的に減算するように制御し、同時に、ロボットが前記
制御方法を実行するように制御する、ステップを含み、
前記ドリフト平均値が負の数である場合、前記ロボットの左右側の駆動輪の速度を同期的に調整する方法は、
前記ドリフト平均値が徐々に0に向かって減少し、ロボットの現在移動方向が前記プリセットの方向と徐々に重ね合い、ロボットの左側の駆動輪の速度が右側の駆動輪の速度と再び等しくなるまで、ロボットの左側の駆動輪の速度に前記ドリフト平均値の絶対値を減算するように制御し、ロボットの右側の駆動輪の速度に前記ドリフト平均値の絶対値を同期的に加えるように制御し、同時に、ロボットが前記
制御方法を実行するように制御する、ステップを含むことを特徴とする、
請求項1ないし6のいずれか1項に記載の制御方法。
【請求項8】
ロボットが請求項1ないし7のいずれか1項に記載の制御方法を実行するように制御することを特徴とする、プログラム。
【請求項9】
カーペットの表面を掃除するための掃除ロボットであって、請求項8に記載のプログラムを実行する、掃除ロボット。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットの検出および制御の分野に関し、具体的に、ロボットの動きにおけるカーペットによるドリフトの方向および幅の認識、カーペットによるドリフトの補償の制御方法、チップおよび掃除ロボットに関する。
【背景技術】
【0002】
慣性ナビゲーションに基づくロボットが充電ステーションに戻るとき、すべてグローバルグリッドマップに基づいて行い、このような方法は、グローバルマップがより正確であることを前提としているが、多くの従来の自律型ロボットは、ロボットの位置および/または姿勢を適当にまたは正確に決定しなく、さらにロボットの移動が適当に制御されていないため、ロボットが特定のルートに留まったり、指定された位置および/または姿勢に達したりすることが保証できず、ロボットの位置の計算結果にエラーが発生する。例えば、自律型洗浄機器が、カーペットのテクスチャの影響により、軌跡が乱れる場合がある。対象の動きに対するカーペットのテクスチャの作用は、カーペットによるドリフトと呼ばれることができる。カーペットによるドリフトは、幅と方向の両方のカーペットによるドリフトベクトルで表すことができる。カーペットによるドリフトベクトルは、カーペットの属性である可能性がある。
【0003】
ロボットがカーペット敷きの環境で移動しているとき、ロボットの動きは、摩擦力によって駆動されるだけでなくカーペットによりロボットに加えられる作用力の影響も受ける。カーペットのテクスチャに対するロボットの動きに基づいて、ロボットの駆動輪は、カーペットの繊維を立てたり、倒したりすることができる。特に、繊維がカーペットのテクスチャに沿って倒れているとき、カーペットは、ロボットをカーペットのテクスチャの方向に押したり、ガイドしたりすることができる。
【0004】
図3に示すように、左側のロボット1が矢印方向Cに移動するプロセスで、ロボット1の駆動輪Aが摩擦力f11で押され、カーペット繊維は、ロボット1の駆動輪Aに内向きの作用力F11を加えるため、ロボット1が摩擦力f11と内向きの作用力F11の合力F12により、移動中に矢印方向Cから外れる。
図3に示すように、右側のロボット2が矢印方向Cに移動するプロセスで、ロボット2の駆動輪Bが摩擦力f21で押され、カーペット繊維は、ロボット2の駆動輪Bに外向きの作用力F21を加えるため、ロボット2が摩擦力f21と外向きの作用力F21の合力F22により、移動中に矢印方向Cから外れる。したがって、ロボットがカーペットを通過するとき、位置推定エラーが時間の経過とともに累積され、ロボットが正確な環境マップを確立できないか、環境内で効果的、正確および/または安全にナビゲートできない可能性があり、それにより、真空ダストの除去などのタスクを実行するために使用されることはできない。
【0005】
一般的に、業界は、カーペットの影響を排除するためにオプティカルフローセンサの使用を検討する。オプティカルフローセンサはロボットの位置の正確度を保証するが、ロボットの動きの規則性を保証することはできず、カーペットの方向異方性の影響を排除することができない。
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記の課題を解決するために、本発明は、ロボットの動きにおけるカーペットによるドリフト方向と幅の認識、カーペットによるドリフトの補正の制御方法、チップおよび掃除ロボットを提供する。その技術案は、次の通りである。
【課題を解決するための手段】
【0007】
ロボットの動きにおけるカーペットによるドリフトの制御方法であって、ロボットがカーペットの表面で初期位置から直線的に移動し始め、ここで、ロボットが感知した座標はすべてグローバル座標系に変換する必要があり、当該制御方法は、ロボットがカーペットの表面を直線的に移動するためのプリセットの方向を決定し、同時に、ロボットの初期位置座標と初期時刻を記録し、ステップS2に進む、ステップであって、当該プリセットの方向は、グローバル座標系のプリセットの座標軸の正の方向である、ステップS1と、第1プリセットの時間間隔ごとに、オプティカルフローセンサによって感知されたデータと、同時にコードディスクによって感知されたデータとを融合計算し、ロボットの現在位置座標を取得し、カーペット上でロボットの駆動輪が前進した実際のルートに対応して、ステップS3に進む、ステップS2と、ロボットの現在位置座標と初期位置座標の相対位置関係にしたがって、前記プリセットの方向に対するロボットの現在移動方向のドリフト量を計算し、累積してドリフト統計値を取得し、ステップS4に進む、ステップであって、ここで、ドリフト量は、ロボットの現在位置と、前記プリセットの方向が配置されている直線との垂直距離である、ステップS3と、記録して得られた現在時刻と前記初期時刻との差が第2プリセットの時間より大きいかどうかを判断し、大きい場合は、ステップS5に進み、そうでない場合は、ステップS2に戻る、ステップS4と、第1プリセットの時間のセンシングデータの時間間隔に基づいて、第2プリセットの時間内のロボットの位置座標の収集回数を計算してから、前記ドリフト統計値に対して収集回数を使用して平均演算し、ドリフト平均値を取得して、カーペットによるドリフト量として使用する、ステップであって、ここで、前記ドリフト平均値の正または負は、ロボットが前記グローバル座標系上で逸脱する座標軸方向に関連し、前記ドリフト平均値の大きさは、ロボットの現在移動方向が前記プリセットの方向から逸脱する程度を決定し、その後ステップS6に進む、ステップS5と、前記ドリフト平均値の絶対値に対応する偏差の大きさにしたがって、対応するPID比例係数を設定してロボットの左右側の駆動輪の速度を同期的に調整することにより、ロボットが現在移動方向から前記プリセットの方向に補正されて直線的に移動し続けるようにする、ステップS6と、を含み、ここで、前記ドリフト量、前記ドリフト統計値および前記収集回数は、すべて前記初期時刻にゼロに初期化され、第1プリセットの時間は、各融合計算の時間であり、第2プリセットの時間は、ロボットにおけるカーペットによるドリフトを決定するための検出時間であり、ロボットの初期位置と現在位置座標は、すべてグローバル座標である。
【0008】
さらに、ロボットがジャイロスコープの角度変化にしたがってカーペットの表面でのロボットのドリフト角度および方向、即ち、前記現在位置座標と前記初期位置座標との間で測定された角度差を判断するステップをさらに含む。
【0009】
さらに、ステップS1の前に、ロボットの左側の駆動輪の速度は、右側の駆動輪の速度と等しい。
【0010】
さらに、前記ステップS2において、前記融合計算のプロセスは、オプティカルフローセンサのセンシングデータが信頼できる場合、まず、各前記第1プリセットの時間内にオプティカルフローセンサによって取得された画像変位量を、コードディスクと同じ次元の変位量に変換し、次に、時間次元でオプティカルフローセンサのセンシングデータを累積積分して、開始位置に対するオプティカルフローセンサのオプティカルフロードリフト位置座標を取得し、次に、オプティカルフローセンサとロボットの中心との剛接合関係にしたがって、オプティカルフロードリフトの位置座標の平行移動を換算して、現在位置での機器の中心座標、即ち、ロボットの現在位置座標を取得し、カーペット上でロボットの駆動輪が前進した実際のルートに対応し、オプティカルフローセンサのセンシングデータが信頼できない場合、各前記第1プリセットの時間内にコードディスクによって感知されたパルスデータを時間次元で積分計算し、計算結果で前記機器の中心座標を更新し、ロボットの現在位置座標を取得し、カーペット上でロボットの駆動輪が前進した実際のルートに対応し、同時に、オプティカルフローセンサとロボットの中心との剛接合関係にしたがって、前記機器の中心座標の平行移動を換算し、平行移動により換算された座標で前記オプティカルフロードリフト位置座標を更新し、ここで、オプティカルフローセンサのセンシングデータの信頼性は、オプティカルフローセンサに内蔵した駆動信号によって判断され、オプティカルフローセンサによって出力される中断信号が高レベルである場合、オプティカルフローセンサのセンシングデータは信頼でき、オプティカルフローセンサによって出力される中断信号が低レベルである場合、オプティカルフローセンサのセンシングデータは信頼できない。
【0011】
さらに、前記剛接合関係は、オプティカルフローセンサのオプティカルフロー座標系とロボットの中心の機器座標系との相対位置関係であり、オプティカルフローセンサの位置とロボットの中心位置との距離の大きさ、およびオプティカルフローセンサの位置とロボットの中心位置との接続線と、機器座標系のプリセットの座標軸との角度を含み、ここで、機器座標系のプリセットの座標軸の正の方向は、ロボットの現在移動方向であり、機器座標系のプリセットの座標軸の正の方向と、グローバル座標系のプリセットの座標軸の正の方向との角度は、ジャイロスコープによって検出された数値に基づいて計算されて、前記プリセットの方向に対するロボットの現在位置の偏角として使用する。
【0012】
さらに、前記ステップS5において、前記収集回数は、前記第2プリセットの時間と前記第1プリセットの時間との比である。
【0013】
さらに、前記ドリフト平均値が正の数である場合、前記ロボットの左右側の駆動輪の速度を同期的に調整する方法は、前記ドリフト平均値が徐々に0に向かって減少し、ロボットの現在移動方向が前記プリセットの方向と徐々に重ね合い、ロボットの左側の駆動輪の速度が右側の駆動輪の速度と再び等しくなるまで、ロボットの左側の駆動輪の速度に前記ドリフト平均値の絶対値を加えるように制御し、ロボットの右側の駆動輪の速度に前記ドリフト平均値の絶対値を同期的に減算するように制御し、同時に、ロボットが前記認識方法を実行するように制御する、ステップを含み、前記ドリフト平均値が負の数である場合、前記ロボットの左右側の駆動輪の速度を同期的に調整する方法は、前記ドリフト平均値が徐々に0に向かって減少し、ロボットの現在移動方向が前記プリセットの方向と徐々に重ね合い、ロボットの左側の駆動輪の速度が右側の駆動輪の速度と再び等しくなるまで、ロボットの左側の駆動輪の速度に前記ドリフト平均値の絶対値を減算するように制御し、ロボットの右側の駆動輪の速度に前記ドリフト平均値の絶対値を同期的に加えるように制御し、同時に、ロボットが前記認識方法を実行するように制御する、ステップを含む。
【0014】
プログラムを格納するためのチップであって、前記プログラムは、ロボットが上記のロボットの動きにおけるカーペットによるドリフトの制御方法を実行するように制御するように構成される。
【0015】
前記チップを内蔵する、カーペットの表面を掃除するための掃除ロボット。
【発明の効果】
【0016】
先行技術に比べて、本発明が提供する技術案では、ロボットのセンサセンシングデータの正確度を向上させるために、座標系変換を介して、コードディスクからのセンシングデータとオプティカルフローセンサからのセンシングデータを融合積分計算し、同時に、事前設定の時間間隔内にドリフト量を累積して平均値を求めることにより、カーペットによるドリフトの認識プロセスを完了し、ロボットの動き姿勢を調整するために使用され、それにより、ロボットがカーペットの表面を事前設定のルートにしたがって直線的に移動することを実現する。
【図面の簡単な説明】
【0017】
【
図1】本発明の実施例におけるロボットの構造モデルの概略図である。
【
図2】本発明の実施例における現在位置でのロボット座標系、オプティカルフロー座標系およびグローバル座標系の分布概略図である。
【
図3】発明の実施例におけるカーペット上のロボットのホイールの力分析の概略的な平面図である。
【
図4】本発明の実施例におけるロボット座標系とオプティカルフロー座標系との変換の概略図である。
【
図5】本発明の実施例によって提供されるロボットの動きにおけるカーペットによるドリフトの制御方法のフローチャートである。
【
図6】本発明の実施例によって提供されるオプティカルフローセンサとコードディスクとのセンシングデータの融合計算方法のフローチャートである。
【発明を実施するための形態】
【0018】
本発明の実施例における図面と併せて、本発明の実施例における技術案を詳細に説明する。以下に記載される具体的な実施例は、本発明を説明するためにのみ使用され、本発明を限定するものではないことを理解されたい。
【0019】
本発明の説明において、理解できるのは、「中心」、「縦方向」、「横方向」、「上」、「下」、「前」、「後」、「左」、「右」、「垂直」、「水平」、「頂」、「底」、「内」、「外」という用語などで示される向きまたは位置関係は、図面に示される向きまたは位置関係に基づいており、示した装置または要素が特定の方向を有し、特定の方向で構築および操作されなければならず、本発明を説明し、説明を簡略化するためにのみ使用されるため、本発明に対する制限として理解することはできない。
【0020】
本明細書で、第1、第2などの関係用語は、1つのエンティティまたは操作を別のエンティティまたは操作から区別するためにのみ使用され、これらのエンティティまたは操作間に任意のこのような実際の関係または順序が存在することを必ずしも要求または暗示するものではないことを理解されたい。
【0021】
カーペットによるドリフトなどのドリフトを推定する方法とシステムについて説明します。本発明の実施例は、掃引ロボットが経過するカーペットによるドリフトを推定するためのシステムまたは方法の背景で例示的な実施形態を説明するが、前記例示的な実施形態は、カーペットの表面を通過できる移動ロボット機器など、他のタイプの機器に適用可能である。「カーペット」という用語は、テクスチャまたは綿毛を有する可能性のあるマットおよび他の床の敷物を含むことが理解される。移動対象に作用するカーペットのテクスチャによるカーペットの方向依存力は、対象の動きに影響を及ぼす可能性がある。
【0022】
本発明の実施例によって提供されるロボットキャリアには、回転角を検出するためのジャイロスコープと、移動距離を検出するための走行距離計とを備え、さらに、壁面までの距離を検出することができるセンサを備えている。
【0023】
壁面からの距離を検出するセンサは、超音波距離センサ、赤外線強度検出センサ、赤外線距離センサ、物理スイッチ検出衝突センサ、静電容量または抵抗変化の検出センサなどであり得る。前記ロボットキャリアには、さらに、ロボットの相対変位座標を検出するためのオプティカルフローセンサが装備されている。
【0024】
本発明の移動ロボットは、
図1に示す通りであり、
図1は、本発明のロボットの実際の構造および外観を表すのではなく、本発明の一概略図を表すだけである。オプティカルフローセンサは、ロボットのベース(ベース上の任意の位置であり得る)に配置される。
【0025】
図1において、移動ロボットのベース4は、ロボットの前進方向を制御する左側の駆動輪11と右側の駆動輪12を固定して配置するために使用される。ジャイロスコープ3は、ロボットの制御メインボード2内の任意の位置に配置でき、制御メインボード2内は、ロボットの回転を感知するために使用される、1つまたは複数のジャイロスコープを備えることができ、制御メインボード2は、関連するセンサのパラメータを処理し、制御信号をロボットの実行部材に出力することができる。オプティカルフローモジュール7は、移動ロボットのベース4上の任意の位置に配置されることもでき、前記移動ロボットはさらに、ユニバーサルホイール6を有する。
【0026】
ここで、左側の駆動輪11と右側の駆動輪12は両方とも、対応するホイールの回転速度を検出するための、コードディスクを備えており、オプティカルフローモジュール7に取り付けられたオプティカルフローセンサのレンズは、地面に対して平行に面し、オプティカルフローモジュール7には、さらに、環境光の明るさに応じて発光LEDを自動的にオフ/オンにすることができる、発光LEDを備え、地面の明るさが比較的に低い場合、LEDライトをオンにし、環境光の明るさが比較的に高い場合、LEDライトをオフにする。
【0027】
ロボットがカーペットのテクスチャの方向に移動するとき、ロボットは、駆動輪に取り付けられたコードディスクの回転に基づいて決定された距離よりも長い距離を移動することができることを理解されたい。一方、ロボットがカーペットのテクスチャに逆らって、直立した繊維上を移動するとき、ロボットは、駆動輪に取り付けられたコードディスクの回転に基づいて決定された距離よりも短い距離を移動することができる。このような2つの場合、ロボットが移動した実際の距離は、コードディスクによって測定された距離と異なる可能性がある。ロボットの駆動輪がカーペット上で移動する際に滑りの影響が大きいため、オプションの慣性センサであるコードディスクを必ずしも取り付ける必要がない。したがって、ロボットがカーペットを通過する際に、位置推定エラーが時間の経過とともに累積される可能性がある。したがって、ロボットが正確な環境マップを確立できないか、環境内で効果的、正確および/または安全にナビゲートできない可能性があり、それにより、真空ダストの除去などのタスクを実行するために使用されることはできない。
【0028】
図5に示すように、本発明の実施例は、カーペットの表面でのロボットの移動プロセスに適用される、ロボットの動きにおけるカーペットによるドリフトの制御方法を提供し、当該制御方法は、次のようなステップを含む。
【0029】
ステップS501において、制御メインボード2は、ロボットがカーペットの表面上を移動していることを検出した後、ロボットがカーペットの表面をプリセットの方向に直線的に移動するように制御し、ここで、プリセットの方向は、グローバル座標系YOXのX軸またはY軸の正の方向であり、記録時間、ロボットの位置座標を同時に開始して、ロボットの初期位置座標と初期時刻を取得する。本発明の実施例において、ロボットがグローバル座標系YOXのX軸の正の方向に直線的に移動するように制御し、X軸の正の方向は、ロボットの予想変位方向である。移動中、カーペットのテクスチャ方向などの作用力によるカーペットによるドリフト現象のため、位置座標と記録された時間変数を継続的に更新する必要があり、ステップS502に進む。
【0030】
なお、注意する必要があることとして、ロボットの偏角は、ジャイロスコープで検出された角度に基づいて計算されたロボットの現在位置と初期位置との角度差である。ロボットが前記ステップS501を実行する前に、ロボットの左側の駆動輪の速度は、右側の駆動輪の速度と等しい。理論的には、ロボットが直線的に移動しようとする場合、2つの駆動輪に出力された制御速度は同じである必要があるが、カーペットによって加えられる作用力によって引き起こされるカーペットによるドリフトは、ロボットの左側の駆動輪と右側の駆動輪の実際の移動速度がずれ、それにより、ロボットが移動する直線の側にずれる。
【0031】
ステップS502において、第1プリセットの時間内のセンサの融合計算にしたがってロボットの現在位置座標を取得し、第1プリセットの時間間隔ごとに、オプティカルフローセンサによって感知されたデータと、同時にコードディスクによって感知されたデータとを融合計算して、ロボットの現在位置座標、即ち、ロボットの中心座標を取得し、カーペット上でロボットの駆動輪が前進した実際のルートに対応し、ステップS503に進む。本発明の実施例において、好ましくは、前記第1プリセットの時間は10msに設定して、センサが各データを感知する時間間隔として使用する。
【0032】
具体的には、ロボットがX軸の正の方向に沿ったカーペットの表面上での移動中に、各10ms内のオプティカルフローセンサのセンシングデータを時間次元で積分計算してから、オプティカルフロー座標系を機器座標系に変換して、ロボットの中心座標を取得し、ロボットの中心が配置されているグローバル座標位置ROに対応し、各10ms内のコードディスクのセンシングデータを時間次元で積分計算しから、機器座標系をオプティカルフロー座標系に変換して、オプティカルフロードリフト位置座標、即ち、オプティカルフローセンサのドリフトの座標を取得する。
【0033】
説明する必要があることとして、ロボットの初期姿勢、環境およびターゲットが既知であり、ナビゲーション問題はグローバルパスプランニング問題に変換されるため、ロボットのコードディスクとオプティカルフローセンサによって感知された座標をすべてグローバル座標系に変換してから融合計算する必要があり、さらに、最終的に取得されたロボットの現在位置座標は、グローバル座標系の位置座標である。
【0034】
具体的には、ロボット座標系、オプティカルフロー座標系およびグローバル座標系の例示的な分布図は、
図2に示す通りである。ロボットの座標系は、現在位置のロボットの中心ROを原点として、現在位置のロボットの前進方向がR_X軸の正の方向である座標系であり、ロボット座標系はさらに、R_X軸方向に垂直なR_Y軸を含み、ロボット座標系中心R0は、ロボットの中心に配置された制御メインボード2の中心位置のジャイロスコープ3に対応する。グローバル座標系は、ロボットの初期位置を原点とし、ロボットが初期位置から出発した前進方向をX軸の正の方向、X軸に垂直な方向をY軸とする座標系である。
【0035】
オプティカルフロー座標系は、ロボット座標系とグローバル座標系との単位が異なるピクセル座標系であり、オプティカルフローモジュール7の中心位置POを原点とし、相互に垂直なP_X軸とP_Y軸を座標軸とする座標系である。上述したした3つの座標系はいずれも右手の法則にしたがう。ここで、ロボット座標系とオプティカルフロー座標系は、両方とも相対座標系であり、それらの原点は、ロボットの現在位置の変化によって変わる。前記グローバル座標系では、Y軸の左側が第1象限、反時計回りの回転が第2象限、第3象限、第4象限の順になる。ここで、前記ロボットの移動方向が前記プリセットの方向から外れる角度の絶対値をθ1に設定する。
【0036】
具体的には、オプティカルフローモジュール7のオプティカルフローセンサは、物体の表面画像一定の速度で連続的に収集し、生成された画像ピクセルをロボットの制御メインボード2によって分析される。隣接する2つの画像は常に同じ特徴を持っているため、これらの特徴点の位置変化情報を比較することにより、物体の表面特徴の平均的な動きを判断できる。
【0037】
次に、同じピクセルのグレースケールの不変性の原理および同じ画像領域内のピクセル速度の同じ原理にしたがって、オプティカルフローフィールド方程式を確立して解き、ピクセルの移動速度を取得する。次に、積分計算し、それにより、前記オプティカルフローセンサによって取得された画像特徴情報を使用して、前記第1プリセットの時間内にロボットが取得した画像変位量を積分計算するが、画像変位量は、オプティカルフロー座標系の数値であり、その単位は、マイレージ距離単位に変換する必要があるため、画像変位量をコードディスクと同じ次元の変位量に変換する。
【0038】
本発明の実施例として、オプティカルフローセンサとロボットの中心との剛接合関係は、オプティカルフローセンサのオプティカルフロー座標系とロボットの中心の機器座標系との相対位置関係であり、オプティカルフローセンサの位置とロボットの中心位置との距離の大きさ、およびオプティカルフローセンサの位置とロボットの中心位置との接続線と、機器座標系のプリセットの座標軸との角度を含み、ここで、機器座標系のプリセットの座標軸の正の方向は、ロボットの現在移動方向であり、機器座標系のプリセットの座標軸の正の方向と、グローバル座標系のプリセットの座標軸の正の方向との角度は、ジャイロスコープによって検出された数値に基づいて計算されて、前記プリセットの方向に対するロボットの現在位置の偏角として使用する。
【0039】
図2および
図4に示すように、ロボット座標系の原点ROとオプティカルフロー座標系の原点POとの相対位置関係は、前記オプティカルフローセンサと前記慣性センサ間の剛接合関係であり、ロボット座標系の原点ROとオプティカルフロー座標系の原点POとの距離L、およびラインセグメントPOROとロボット座標系のR_X軸が配置された直線との角度の絶対値θを含み、前記剛接合関係を形成するように、ロボット座標系とオプティカルフロー座標系の相対位置関係は、ロボットの移動中に不変である。ロボット座標系の原点ROの実際の位置は、ロボットの中心位置に配置されたジャイロスコープ3に対応し、オプティカルフロー座標系の原点POの実際の位置は、オプティカルフローモジュール7に対応する。
【0040】
図4に示すように、上述した剛接合関係の座標系変換方法は、ロボットの中心位置R0はグローバル座標系の第4象限内にあり、オプティカルフローモジュール7のオプティカルフローセンサはオプティカルフロー座標系での座標を感知し、それをグローバル座標系に変換して、前記第1予測位置座標PO(xp4,yp4)を取得し、グローバル座標系の第4象限内に配置され、即ち、X軸の正の方向からY軸の負の方向へのロボットの現在移動方向の角度はθ1である。当該角度は、カーペットの作用力によって引き起こされるロボットの固定ドリフト角度であり、ロボット回転角θ1は、ジャイロスコープ3によって感知することができる。
【0041】
三角関数の関係式にしたがって、前記剛接合関係に応じて前記第1予測位置座標を平行移動し、換算して、ロボットの中心の位置で第2予測位置座標を取得し、即ち、グローバル座標系でのロボットの中心の現在位置座標RO(xr4,yr4)は、第4象限の例示的な式、即ち、以下の式で近似に表すことができる。
【0042】
【0043】
上述した式が適用される具体的な実施例は、ジャイロスコープ3がロボットの中心に配置され、オプティカルフローモジュール7がロボットの中心の右下に配置されることである。オプティカルフローセンサで測定して取得したオプティカルフロー座標ドリフト量は、前述の座標系変換方法を経て取得したグローバル座標系でのロボットの中心の現在位置座標はRO(xr4,yr4)であり、その機械の重心が動きの予想の位置(xr4,0)から外れる角度はθ1である。
【0044】
注意する必要があることとして、ロボットの中心位置には、さらに、グローバル座標系における第1象限、第2象限および第3象限の実施例を含む。これらの実施例において、ジャイロスコープ3はロボットの中心に配置され、オプティカルフローモジュール7は、ロボットの中心の右下に配置され、ロボットの予想の変位方向は、X軸の正の方向であり、即ち、前記プリセットの方向はX軸の正の方向である。
【0045】
ロボットの中心位置R1がグローバル座標系の第1象限内にある実施例:前記第1予測位置座標P1(xp1,yp1)は、三角関数の関係式にしたがって、前記剛接合関係に応じて、前記第1予測位置座標を平行移動し、換算して、ロボットの中心の位置で取得された第2予測位置座標、即ち、グローバル座標系でのロボットの中心の第1象限内の現在位置座標R1(xr1,yr1)を取得し、前記第4象限の基で、三角関数の関係式、即ち、以下の式で近似に表すことができる。
【0046】
【0047】
ロボットの中心位置R2がグローバル座標系の第2象限内にある実施例:前記第1予測位置座標P2(xp2,yp2)は、三角関数の関係式にしたがって、前記剛接合関係に応じて、前記第1予測位置座標を平行移動し、換算して、ロボットの中心の位置で取得された第2予測位置座標、即ち、グローバル座標系でのロボットの中心の第2象限内の現在位置座標R2(xr2,yr2)を取得し、以下の例示的な式で近似に表すことができる。
【0048】
【0049】
ロボットの中心位置R3がグローバル座標系の第3象限内にある実施例:前記第1予測位置座標P3(xp3,yp3)は、三角関数の関係式にしたがって、前記剛接合関係に応じて、前記第1予測位置座標を平行移動し、換算して、ロボットの中心の位置で取得された第2予測位置座標、即ち、グローバル座標系でのロボットの中心の第3象限内の現在位置座標R3(xr3,yr3)を取得し、以下の例示的な式で近似に表すことができる。
【0050】
【0051】
なお、ロボットの予想変位方向がX軸の正の方向ではない場合、即ち、前記プリセットの方向がX軸の正の方向ではない場合、または、オプティカルフローモジュール7がロボットの中心の右下に配置されていない場合、第4象限の例示的な公式の思考に応じて、対応する三角関数関係に組み合わせて、ロボットの中心位置座標を計算する。それらの座標系変換方法の発明概念は同じであるため、ここでは上述した予想変位方向とオプティカルフローモジュール7の位置の他の実施例を繰り返して説明しない。
【0052】
本発明の実施例として、オプティカルフローセンサがロボットの位置の正確度を向上させるが、オプティカルフローセンサのセンシングデータは必ずしも信頼できるとは限らないので、コードディスクデータを用いて前記融合計算を実行する必要がある。具体的には、オプティカルフローセンサによって出力される中断信号が高レベルである場合、オプティカルフローセンサのセンシングデータは信頼でき、オプティカルフローセンサによって出力される中断信号が低レベルである場合、オプティカルフローセンサのセンシングデータは信頼できない。ここで、前記中断信号は、オプティカルフローセンサにアルゴリズム処理センシングデータを内蔵することにより得られた結果であり、前記内蔵アルゴリズムは、先行技術においてカーペットの表面上の画像データを処理するための一般的なアルゴリズムであり、したがって繰り返されることはない。
【0053】
図6に示すように、前記ステップS502における融合計算は、次のステップを含む。
【0054】
ステップS601において、コードディスクがパルスデータを感知し、同時に、オプティカルフローセンサは、オプティカルフローデータを感知し、次にステップS602に進む。
【0055】
ステップS602において、オプティカルフローセンサのセンシングデータが信頼できるかどうかを判断し、信頼できる場合、ステップS603に進み、そうでない場合、ステップS606に進む。
【0056】
ステップS603において、各前記第1プリセットの時間内にオプティカルフローセンサによって獲得された画像変位量を、コードディスクと同じ次元の変位量に変換し、具体的には、前記オプティカルフローデータを使用してマップ座標を更新する場合、前記コードディスクの単一のパルス周期内で測定された距離数値と、同じパルス周期内の前記オプティカルフローセンサの相対座標のドリフト量の数値との比を単位換算係数として使用し、前記オプティカルフローデータに当該単位換算係数が乗算されて、単位が統合された数値を取得する。次に、前記第1プリセットの時間内のオプティカルフローセンサの各センシングデータを累積して時間次元での積分計算を実現し、それにより、開始位置に対するオプティカルフローセンサのオプティカルフロードリフト位置座標を取得し、即ち、オプティカルフローセンサの現在出力された測定結果に対応する。その後ステップS604に進む。
【0057】
ステップS604において、オプティカルフローセンサとロボットの中心との剛接合関係にしたがって開示された前記例示的な公式、即ち、ロボット座標系とオプティカルフロー座標系との距離および角度関係にしたがって構築された三角形の幾何学的関係によって、前述座標系変換方法に応じて前記オプティカルフロードリフト位置座標を平行移動して換算し、ロボット位置座標を取得し、カーペット上でロボットの駆動輪が前進した実際のルートに対応し、その後ステップS605に進む。
【0058】
ステップS605において、ステップS604で取得したロボット位置座標で、コードディスクの現在出力されている座標データを更新する。次に、ステップS601に戻る。融合処理前にコードディスクによって出力された測定結果に対して、当該ステップで融合計算した結果は、より信頼性が高く、安定している。
【0059】
ステップS606において、コードディスクによって感知されたパルスデータに対して時間次元で積分を実行し、それにより、前記ロボットの中心座標を取得し、当該座標データは、次回にステップS605に進んだときに前記ロボットの位置座標によって更新される。その後、ステップS607に進む。コードディスクは、1秒当たりに生成されるパルスの数でロボットの移動速度を記録するため、前記第1プリセットの時間内にコードディスクによって感知された各パルスデータは、時間次元で積分計算し、ロボットの現在位置座標を取得し、カーペット上でロボットの駆動輪が前進した実際のルートに対応する。
【0060】
ステップS607において、ステップS606での前記積分計算の結果でコードディスクの現在出力された座標データを更新する。その後ステップS608に進む。ステップS604での前記機器の中心座標を更新する前に、ステップS604での前記機器の中心座標は、オプティカルフローセンサのセンシングデータが信頼できる段階でのセンシングデータの積分変換の結果(センシングデータが信頼できるステップでオプティカルフローセンサによって出力された測定結果)であるため、前記の更新操作により、測定されたロボットの位置座標の正確度が保証される。
【0061】
同時に、オプティカルフローセンサとロボットの中心との剛接合関係が開示した前述の例示的な式の逆計算式にしたがって、即ち、ロボット座標系とオプティカルフロー座標系との距離角度関係が構築した三角形の幾何学的関係にしたがって、前記機器の中心座標を前述の座標系変換方法に応じて逆変換し、オプティカルフローセンサの現在のドリフト位置座標を取得する。
【0062】
ステップS608において、ステップS607で取得されたオプティカルフローセンサのドリフトの座標で、オプティカルフローセンサの現在出力された座標データを更新する。次に、ステップS601に戻る。前記オプティカルフロードリフト位置座標がオプティカルフローセンサのセンシングデータを累積して時間次元上で積分計算結果を実現したが、オプティカルフローセンサのセンシングデータが信頼できない状況が存在するため、ステップS606でのコードディスクによって感知されたパルスデータを積分して取得した前記機器の中心座標を平行移動して換算し、平行移動して換算した結果で、ステップS603で計算して取得した前記オプティカルフロードリフト位置座標に更新し、オプティカルフローセンサのセンシングデータが信頼できる場合、オプティカルフローセンサのセンシングデータの積分演算の正確度を向上させる。
【0063】
本発明の実施例は、内蔵したオプティカルフローセンサとコードディスクによってリアルタイムで感知されたデータに対して信頼性の判断を実行し、次に、センサの信頼性の判断結果にしたがって、センサのセンシングデータの1つをオプティカルフロー座標系に変換して、積分計算を実行することにより、より正確なカーペット上でロボットの駆動輪が前進した実際のルートを取得し、カーペットによるドリフトによって引き起こされる作用力の効果のエラーを減らすことができる。
【0064】
ステップS503において、ロボットの現在位置座標と初期位置座標の相対位置関係にしたがって、前記プリセットの方向に対するロボットの現在移動方向のドリフト量を計算し、累積してドリフト統計値を取得し、次に、ステップS504に進む。ここで、ドリフト量は、ロボットの現在位置と、前記プリセットの方向が配置されている直線との垂直距離である。
図4に示すように、カーペットの作用力によってロボットが回転するため、ロボットの実際の変位方向OR0は、予想変位方向OMから外れ、予想されるX軸の正の方向に対する現在位置座標のドリフト量はyr-y0である。次に、上述した計算して得られた複数のドリフト量を累積してドリフト統計値を取得する。
【0065】
ステップS504において、記録して得られた現在時刻と前記初期時刻との差が第2プリセットの時間より大きいかどうかを判断し、大きい場合は、ステップS505に進み、そうでない場合、ステップS502に戻る。本発明の実施例において、好ましくは、第2プリセットの時間を500msに設定して、ロボットがカーペットによるドリフトの発生を検出することに消費された時間として使用される。前記第2プリセットの時間内に、ロボットの左側の駆動輪11と右側の駆動輪12は、カーペットの表面で受けられた作用力の方向が、カーペットのテクスチャの作用によって変わることができて、カーペットによるドリフトの方向は、前記第2プリセットの時間内で継続的に変化し、前記ドリフト量は、正の値または負の値の間で変化するため、複数のドリフト量を収集し、累積して和を求め、前記第2プリセットの時間内ロボットの正確なカーペットによるドリフト方向を判断する。ここで、前記第2プリセットの時間は、ロボットがカーペットによるドリフトの発生を決定する検出時間である。
【0066】
ステップS505において、前記第2プリセットの時間にしたがって前記第1プリセットの時間内のロボットの位置座標の収集回数を計算し、次に、前記ドリフト統計値に対して収集回数を使用して平均演算し、ドリフト平均値を取得し、カーペットによるドリフト量として使用し、ステップS506に進む。
【0067】
本発明の実施例において、好ましくは、前記第2プリセットの時間を500msに設定し、好ましくは、前記第1プリセットの時間を10msに設定するため、前記第2プリセットの時間内のロボットの位置座標の収集回数は、50回である。次に、50回の累積によって得られた前記ドリフト統計値の平均値を求めて、それにより、ドリフト平均値を取得して、カーペットによるドリフト量として使用する。
【0068】
機器がカーペットの表面上のドリフト方向と幅が不安定であるため、本発明の実施例は、10msの時間間隔内に取得された位置座標を50回サンプリングし、累積して500ms内の決定されたカーペットによるドリフト量を取得する。それにより、前記認識方法のロバスト性を向上し、さらに、カーペットによるドリフト量を求めることに、前記オプティカルフローセンサのオプティカルフロー座標データおよび50回の統計値を用いているため、誤差変数の干渉が生じる可能性がある。
【0069】
そのため、前記認識方法の検出精度を向上させるためには、前記ドリフト統計値に対してさらに平均値を求める。データ全体の演算処理は簡単であり、正確なカーペットによるドリフト量を取得しやすい。具体的には、前記ドリフト平均値にしたがってロボットの現在移動方向が前記プリセットの方向から外れた程度、それに対応して、前記ドリフト平均値の正または負は、ロボットが前記グローバル座標系上で逸脱する座標軸方向に関連し、前記ドリフト平均値の数値は、ロボットの現在移動方向が前記プリセットの方向から逸脱程度を決定する。
【0070】
さらに、前記ドリフト量、前記ドリフト統計値および前記収集回数を前記初期時刻にすべてゼロに初期化する。第1プリセットの時間は、1回の融合計算を完了するための更新時間であり、第2プリセットの時間は、ロボットにおけるカーペットによるドリフトを決定するための検出時間であり、ロボットの初期位置と現在位置座標は、すべてグローバル座標である。
【0071】
ステップS506において、前記ドリフト平均値の絶対値に対応する偏差の大きさにしたがって、対応するPID比例係数を設定してロボットの左右側の駆動輪の速度を同期的に調整することにより、ロボットが現在移動方向から前記プリセットの方向に補正され直線的に移動し続ける。
【0072】
具体的には、ロボットの現在移動方向が前記プリセットの方向からずれていると判断した後、次のステップを実施するように制御する。前記ドリフト平均値
が正の数である場合、制御メインボード2は、ロボットがグローバル座標系のY軸の正の方向にドリフトすることを決定し、ドリフトの幅の大きさが前記ドリフト平均値である場合、制御メインボード2は、前記ドリフト平均値を、内蔵したPID調整システムに入力し、次に、前記ドリフト平均値によって生成された偏差の大きさにしたがって、対応するPID比例係数P1を設定して、ロボットの左右側の駆動輪の速度を同期的に調整し、同時に、ジャイロスコープの検出角度に基づいて別のPID比例係数P2を設定して、ロボットの偏角を減らし、ロボットが現在移動方向から前記プリセットの方向に補正されて直線的に移動し続け、補正プロセスで偏差の累積を減少させて、ロボットのターンの速度を変更する。
【0073】
前記ドリフト平均値
が負の数である場合、制御メインボード2は、ロボットがグローバル座標系のY軸の負の方向にドリフトされたと決定し、ドリフトの幅の大きさは、前記ドリフト平均値の絶対値である場合、制御メインボード2は、前記ドリフト平均値を、内蔵したPID調整システムに入力し、次に、前記ドリフト平均値にyって生成された偏差の大きさにしたがって、対応するPID比例係数P1を設定して、ロボットの左右側の駆動輪の速度を同期的に調整し、同時に、ジャイロスコープ検出角度θに基づいて別のPID比例係数P2を設定して、ロボットの偏角を減らし、ロボットがカーペット作用力によるドリフト量を克服するようにし、且つ前記プリセットの方向で直線的に移動し続けて、補正プロセス中に偏差の累積を減らし、ロボットのターンの速度を変更する。
【0074】
実施例として、ロボットは、さらに、ジャイロスコープの角度変化、即ち、ロボットの前記現在位置座標と前記初期位置座標とのジャイロスコープによって測定された角度差にしたがって、カーペットの表面上でのドリフト角度および方向を判断する。
【0075】
本発明の実施例において、
図3に示すように、前記ドリフト平均値が正の数である場合、ロボットがグローバル座標系のY軸の正の方向にドリフトされていると判断され、ドリフトの幅の大きさは、前記ドリフト平均値であり、ジャイロスコープによって測定された角度変化と結合すると、グローバル座標系のY軸の正の方向に対するロボットのドリフトの角度を知ることができ、それにより、ロボットが受けるカーペットの作用力の合力ベクトル値を決定する。
【0076】
前記ドリフト平均値が負の数である場合、ロボットがグローバル座標系のY軸の負の方向にドリフトされていると判断され、ドリフトの幅の大きさは、前記ドリフト平均値の絶対値であり、ジャイロスコープによって測定された角度変化に結合すると、ロボットのドリフトが、グローバル座標系のY軸の負の方向にドリフトされた角度を知ることができ、それにより、ロボットが受けるカーペットの作用力の合力ベクトル値を決定する。前記予想変位方向が前記グローバル座標系のX軸の正の方向である場合、前記ドリフト平均値の正または負は、ロボットが前記グローバル座標系上で逸脱する座標軸方向に関連する。
【0077】
本発明の実施例の1つとして、前記ドリフト平均値
が正の数である場合、ロボットが決定した前記予想変位方向が前記グローバル座標系のX軸の正の方向である場合、ロボットの現在移動方向は、グローバル座標系のY軸の正の方向にドリフトされたと決定することができる。
【0078】
前記ロボットの左右側の駆動輪の速度を同期的に調整する方法は、ロボットの左側の駆動輪の速度Vlに前記ドリフト平均値の絶対値
を加えるように制御し、且つロボットの右側の駆動輪の速度Vrに前記ドリフト平均値の絶対値
を同期的に減算するように制御し、そのため、左側の駆動輪によって生成された速度が右側の駆動輪によって生成された速度より大きく、ロボットがグローバル座標系のY軸の負の方向にターンし、ロボットの現在移動方向が前記プリセットの方向に徐々に近づく。
【0079】
ジャイロスコープ検出角度θと組み合わせて、ロボットによって生成された偏差が
であると決定でき、ロボットは前記認識方法を実行する。左右側の駆動輪の速度差により、ロボットがグローバル座標系のY軸の負の方向にターンする場合、前記ドリフト平均値が徐々に0に向かって減少し、ロボットの現在移動方向が前記プリセットの方向と徐々に重ね合い、ロボットの左側の駆動輪の速度が右側の駆動輪の速度と再び等しくなり、それにより、ロボットによって生成された偏差の累積を減らす。
【0080】
本発明の別の実施例として、前記ドリフト平均値
が負の数である場合、ロボットが決定した前記予想変位方向が前記グローバル座標系のX軸の正の方向である場合、ロボットの現在移動方向が、グローバル座標系のY軸の負の方向にドリフトされていると決定できる。
【0081】
前記ロボットの左右側の駆動輪の速度を同期的に調整する方法は、ロボットの左側の駆動輪の速度Vlに前記ドリフト平均値の絶対値
を減算するように制御し、且つロボットの右側の駆動輪の速度Vrに前記ドリフト平均値の絶対値
を同期的に加えるように制御し、そのため、左側の駆動輪生成された速度が右側の駆動輪生成された速度より大きく、ロボットがグローバル座標系のY軸の正の方向にターンして、ロボットの現在移動方向は徐々に前記プリセットの方向に近づく。
【0082】
ジャイロスコープ検出角度θに組み合わせて、ロボットによって生成された偏差は、
であると決定し、同時に、ロボットが前記認識方法を実行するように制御する。ロボットが左右側の駆動輪の速度差により、グローバル座標系のY軸の正の方向にターンする場合、前記ドリフト平均値は、徐々に0に向かって減少し、ロボットの現在移動方向が前記プリセットの方向と徐々に重ね合い、ロボットの左側の駆動輪の速度が右側の駆動輪の速度と再び等しくなり、それにより、ロボットによって生成された偏差の累積を減らす。
【0083】
ロボットが右側の駆動輪の速度を調整しようとする場合、右側の駆動輪のモータに異なるPWM駆動信号を入力する必要がある。
【0084】
したがって、PID制御アルゴリズムに基づいて、より良い調整効果を実現するために、現在時刻と隣接する現在時刻の前の2つの時刻のロボットの右側の駆動輪の制御速度とサンプリング速度を事前に取得する必要がある。
【0085】
例えば、現在時刻と現在時刻の1秒前および現在時刻2秒前の制御速度とサンプリング速度を取得する。ここで、制御速度は、システム出力データであるが、サンプリング速度はコードディスクを介して検出されたデータである。外界環境の影響のため、実際のサンプリング速度は、システム出力の制御速度と偏差がある。
【0086】
したがって、異なる時刻における2つのエラーデータを決定した後、PIDの数値と組み合わせると、右側の駆動輪の速度を調整するために、右側の駆動輪に出力した電圧値を正確に得ることができる。ここで、P、IおよびDの値は、ロボットに対して限られた回数の実験、テストおよび要約を通じて取得され、それぞれが定数である。本実施例に記載の方法は、PID制御アルゴリズムにより、右側の駆動輪に出力したモータの電圧値を正確に求めることができ、制御精度が高く、制御効果が良好である。
【0087】
プログラムを格納するチップであって、前記プログラムは、ロボットを制御して前記制御方法を実施し、カーペットの表面上でのロボットインテリジェントなクリーニングを実現し、クリーニング効率效率を向上させる。前記チップは、オプティカルフローセンサ、ジャイロスコープおよびコードディスクを介して、移動の直線的な初期位置情報(X1,Y1,θ1)と、ロボットの移動プロセス中に具体的な現在位置情報(X2,Y2,θ2)を決定し、初期位置情報における角度θ1と現在位置情報中の角度θ2的差および現在位置の前記プリセットの方向が配置された直線的垂直距離によって、ロボットの移動が前記直線を外れたかを判断する。外れた場合、調整ロボットの駆動輪の速度を調整することにより、ロボットを前記直線に戻す。
【0088】
掃除ロボットであって、当該掃除ロボットは、カーペットの表面を掃除するために使用されるロボットである。本発明の実施例において、カーペット上を移動するロボットは、掃引ロボットであり得る。掃引ロボットは、前記認識方法にしたがって、カーペット上のロボットの動作パラメータを動的に調整することができ、それにより、カーペットの表面またはカーペットの端にあるさまざまな材料の掃除距離を調整するのに役立ち、さらに、掃引ロボットに内蔵したPID調整システムを介して、カーペットによるドリフトが発生された掃引ロボットを直線移動に補正して、エッジクリーニングを完了する。
【0089】
前記方法は、オプティカルフローセンサ、ジャイロスコープおよびコードディスクを介して、移動予定の直線の初期位置情報(X1,Y1,θ1)とロボット移動プロセスにおける具体的な現在位置情報(X2,Y2,θ2)を決定し、初期位置情報における角度θ1と現在位置情報における角度θ2との差および現在位置が移動予定の直線から外れた垂直距離によって、ロボットの移動が移動要諦の直線から外れているかどうかを判断する。
【0090】
外れがある場合、ロボットの駆動輪の速度を調整することにより、ロボットを前記予想変位方向に戻す。このようなロボットの直線移動の制御方法は、オプティカルフローセンサとコードディスクの検出データを介してデータを融合するだけで、ロボットがカーペット上の移動が予想変位方向から外れているかどうかを判断することができ、偏差の数値にしたがってロボットの補正偏差を効果的に制御することができる。それにより、より良い直線移動効果を維持でき、コストも比較的に低い。同時に、偏差の検出と補正に関連するデータが正確で、データ演算処理も比較的に簡単であり、高性能のプロセッサを必要としないため、システムコンピューティングリソースとプロセッサのハードウェアのコストがさらに削減される。
【0091】
制御チップとして、前記チップを組み立てた掃除ロボットは、オプティカルフローセンサとコードディスクの検出データのみに基づいて、ロボットの移動に偏差があるかどうかを判断し、偏差の数値にしたがってロボットを制御して偏差を補正することができる。それにより、より良い直線移動効果を維持し、コストも比較的に低い。同時に、偏差の検出と補正に関連するデータが比較的に簡潔であり、データ演算処理も比較的に単純であり、高性能のプロセッサを必要としないため、システムコンピューティングリソースとロボットのハードウェアのコストがさらに削減される。
【0092】
以上、各実施例は本発明の技術案を説明するためにのみ使用され、それらを限定するものではない。前述した各実施例を参照して本発明を詳細に説明したが、当業者は、依然として前述した各実施例に記載された技術案を変更するか、その中の技術的特徴の一部または全部に対して均等な置き換えを実行できるが、これらの変更または置き換えは、対応する技術案の本質を本発明の各実施例における技術案の範囲から逸脱することを引き起こさないことを理解されたい。