(57)【特許請求の範囲】
【請求項１】
移動ロボットに設けられ、当該移動ロボットが移動する床面を検出する床面検出システムであって、
前記床面までの距離に応じた距離画像データを生成する距離画像センサと、
前記移動ロボットの姿勢角データを生成する姿勢角センサと、
前記距離画像センサにより生成された距離画像データと、前記姿勢角センサにより生成された姿勢角データに基づいて、床面に対する前記距離画像センサの角度を求めるデータ処理部とを備え、
前記データ処理部は、
前記姿勢角センサの検出した姿勢角データに基づいて複数のセンサ角度候補を設定するセンサ角度候補設定手段と、
前記複数のセンサ角度候補のそれぞれについて前記距離画像データに基づいて床検出を行う床検出手段と、
前記複数のセンサ角度候補のうち、最も多く床検出された候補を、当該床面に対する距離画像センサの角度として選択する候補選択手段とを有する床面検出システム。
【請求項２】
前記センサ角度候補設定手段は、
前記姿勢角センサの検出した姿勢角データに基づいてセンサ基準角を設定するセンサ基準角設定手段と、
前記センサ基準角設定手段により設定されたセンサ基準角より所定値だけ減算及び加算することによって複数のセンサ角度候補を算出するセンサ角度候補算出手段を有することを特徴とする請求項１記載の床面検出システム。
【請求項３】
前記床検出手段は、
センサ角度候補について床面までの理想距離を計算する理想距離計算手段と、
前記理想距離計算手段により計算された理想距離と、前記距離画像センサにより生成された距離画像データにおける床面までの距離の差分を求め、差分が閾値以下である場合に床面が検出されたものと判定する床面判定手段を有することを特徴とする請求項１又は２記載の床面検出システム。
【請求項４】
自身が移動する床面を検出する移動ロボットであって、
前記床面までの距離に応じた距離画像データを生成する距離画像センサと、
前記移動ロボットの姿勢角データを生成する姿勢角センサと、
前記距離画像センサにより生成された距離画像データと、前記姿勢角センサにより生成された姿勢角データに基づいて、床面に対する前記距離画像センサの角度を求めるデータ処理部とを備え、
前記データ処理部は、
前記姿勢角センサの検出した姿勢角データに基づいて複数のセンサ角度候補を設定するセンサ角度候補設定手段と、
前記複数のセンサ角度候補のそれぞれについて前記距離画像データに基づいて床検出を行う床検出手段と、
前記複数のセンサ角度候補のうち、最も多く床検出された候補を、当該床面に対する距離画像センサの角度として選択する候補選択手段とを有する移動ロボット。
【請求項５】
前記センサ角度候補設定手段は、
前記姿勢角センサの検出した姿勢角データに基づいてセンサ基準角を設定するセンサ基準角設定手段と、
前記センサ基準角設定手段により設定されたセンサ基準角より所定値だけ減算及び加算することによって複数のセンサ角度候補を算出するセンサ角度候補算出手段を有することを特徴とする請求項４記載の移動ロボット。
【請求項６】
前記床検出手段は、
センサ角度候補について床面までの理想距離を計算する理想距離計算手段と、
前記理想距離計算手段により計算された理想距離と、前記距離画像センサにより生成された距離画像データにおける床面までの距離の差分を求め、差分が閾値以下である場合に床面が検出されたものと判定する床面判定手段を有することを特徴とする請求項４又は５記載の移動ロボット。
【請求項７】
前記候補選択手段によって選択されたセンサ角度候補に対応した距離画像データに基づいて歩容データを生成することを特徴とする請求項４〜６いずれかに記載の移動ロボット。
【請求項８】
同軸二輪式の移動ロボットであることを特徴とする請求項４〜７いずれかに記載の移動ロボット。
【請求項９】
二足歩行型の移動ロボットであることを特徴とする請求項４〜７いずれかに記載の移動ロボット。
【請求項１０】
移動ロボットが移動する床面を検出する床面検出方法であって、
距離画像センサにより生成された当該距離画像センサから前記床面までの距離に応じた距離画像データと、姿勢角センサにより生成された前記移動ロボットの姿勢角データに基づいて、前記床面に対する前記距離画像センサの角度を求めるデータ処理ステップを備え、
前記データ処理ステップは、
前記姿勢角センサの検出した姿勢角データに基づいて複数のセンサ角度候補を設定するセンサ角度候補設定ステップと、
前記複数のセンサ角度候補のそれぞれについて前記距離画像データに基づいて床検出を行う床検出ステップと、
前記複数のセンサ角度候補のうち、最も多く床検出された候補を、当該床面に対する距離画像センサの角度として選択する候補選択ステップとを備えた床面検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は床面検出システムに関し、特に移動ロボットに取り付けられた床面検出システムに関する。
【背景技術】
【０００２】
歩行や移動動作を行う移動ロボットは、床面状態が変化する場所においても安定した歩行や移動動作を行うために、床面の状態を検出する床面検出システムを備える場合がある（例えば、特許文献１、２、３、４参照）。特許文献１に記載された移動ロボットは、腰部に設けたセンサで床面を検知し、床面までの距離や床面形状の計測を常に安定的に行っている。また、特許文献２には、路面状況判別部と姿勢判別部により歩行路面状況と現在の姿勢とに基づいて歩容信号を生成して安定走行を行うロボットについて開示されている。さらに、特許文献３には、距離画像生成部により生成された距離画像に基づいて平面パラメータを検出し、これを用いて床面に載っている点を選択し、この点に基づき障害物を認識する技術が開示されている。また、特許文献４には、姿勢角速度の推定値と角速度センサによる姿勢角速度検出値との偏差に応じて決定した角速度センサのドリフト補正値により所定部位の姿勢角の推定値を求める技術が開示されている。
【０００３】
移動ロボットにおいて、距離画像センサを用いて床面を検出するためには、床面から距離画像センサまでの高さと、距離画像センサの傾きに関する情報を取得する必要がある。ここで、移動ロボットは、移動中に姿勢角が変化するため、当該距離画像センサの傾きを得るために、姿勢角センサによって移動ロボットの姿勢角を測定している。そして、姿勢角センサによって測定されて得られた姿勢角データは、床面検出処理を実行する計算機に送信される。
【０００４】
【特許文献１】特開２００２−１４４２７８号公報
【特許文献２】特開２００６−２５５７９８号公報
【特許文献３】特開２００３−２６９９３７号公報
【特許文献４】再公表特許公報ＷＯ２００３／０９０９８１
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、姿勢角センサによって測定して得られた姿勢角データは、床面検出処理を行う計算機に送信される際に、通信遅れが発生する。そのため、計算機において床面検出処理する際に、現在の姿勢角データよりも前の姿勢角データを用いる場合が発生し、床検出の失敗を生じさせる場合がある。
【０００６】
この点について、図２を用いてさらに詳細に説明する。図２には、模式的に、床面１００上の移動ロボット１の状態を示している。移動ロボット１は、ロボット本体１０の下部に車輪１１を備え、さらに、その上方に距離画像センサ１２及び姿勢角センサ１３を備えている。図２（ａ）に示す、現在よりもｔ[ｍｓ]前の状態においては、例えば、姿勢角センサ１３が傾き角ｘ[ｄｅｇ]を検出しているものとする。また、図２（ｂ）に示す、現在の状態においては、移動ロボット１の傾き角が０であるため、距離画像センサ１２の取り付け角度θに対して当該傾き角の０を加算することによって得られる距離画像センサ１２の傾き角（θ＋０）に基づき床検出処理を実行すべきである。しかしながら、上述のような通信遅れの発生によって、図２（ａ）に示す、現在よりもｔ[ｍｓ]前の状態において検出した傾き角ｘを姿勢角センサ１３の取り付け角度θに対して加算することによって得られる距離画像センサ１２の傾き角（θ＋ｘ）に基づき床検出処理を実行してしまうので、床検出に失敗する。図２の画像１２０は、床検出に失敗した結果を示すものであり、斜線領域が床検出できた領域である。
【０００７】
本発明は、かかる課題を解決するためになされたものであり、正確に床検出を行うことが可能な床面検出システム、移動ロボット及び床面検出方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明にかかる床面検出システムは、移動ロボットに設けられ、当該移動ロボットが移動する床面を検出する床面検出システムであって、前記床面までの距離に応じた距離画像データを生成する距離画像センサと、前記移動ロボットの姿勢角データを生成する姿勢角センサと、前記距離画像センサにより生成された距離画像データと、前記姿勢角センサにより生成された姿勢角データに基づいて、床面に対する前記距離画像センサの角度を求めるデータ処理部とを備え、前記データ処理部は、前記姿勢角センサの検出した姿勢角データに基づいて複数のセンサ角度候補を設定するセンサ角度候補設定手段と、前記複数のセンサ角度候補のそれぞれについて前記距離画像データに基づいて床検出を行う床検出手段と、前記複数のセンサ角度候補のうち、最も多く床検出された候補を、当該床面に対する距離画像センサの角度として選択する候補選択手段とを有するものである。
【０００９】
ここで、前記センサ角度候補設定手段は、前記姿勢角センサの検出した姿勢角データに基づいてセンサ基準角を設定するセンサ基準角設定手段と、前記センサ基準角設定手段により設定されたセンサ基準角より所定値だけ減算及び加算することによって複数のセンサ角度候補を算出するセンサ角度候補算出手段を有するものである。
【００１０】
また、前記床検出手段は、センサ角度候補について床面までの理想距離を計算する理想距離計算手段と、前記理想距離計算手段により計算された理想距離と、前記距離画像センサにより生成された距離画像データにおける床面までの距離の差分を求め、差分が閾値以下である場合に床面が検出されたものと判定する床面判定手段を有することが望ましい。
【００１１】
本発明にかかる移動ロボットは、自身が移動する床面を検出する移動ロボットであって、前記床面までの距離に応じた距離画像データを生成する距離画像センサと、前記移動ロボットの姿勢角データを生成する姿勢角センサと、前記距離画像センサにより生成された距離画像データと、前記姿勢角センサにより生成された姿勢角データに基づいて、床面に対する前記距離画像センサの角度を求めるデータ処理部とを備え、前記データ処理部は、前記姿勢角センサの検出した姿勢角データに基づいて複数のセンサ角度候補を設定するセンサ角度候補設定手段と、前記複数のセンサ角度候補のそれぞれについて前記距離画像データに基づいて床検出を行う床検出手段と、前記複数のセンサ角度候補のうち、最も多く床検出された候補を、当該床面に対する距離画像センサの角度として選択する候補選択手段とを有するものである。
【００１２】
ここで、前記センサ角度候補設定手段は、前記姿勢角センサの検出した姿勢角データに基づいてセンサ基準角を設定するセンサ基準角設定手段と、前記センサ基準角設定手段により設定されたセンサ基準角より所定値だけ減算及び加算することによって複数のセンサ角度候補を算出するセンサ角度候補算出手段を有するものである。
【００１３】
また、前記床検出手段は、センサ角度候補について床面までの理想距離を計算する理想距離計算手段と、前記理想距離計算手段により計算された理想距離と、前記距離画像センサにより生成された距離画像データにおける床面までの距離の差分を求め、差分が閾値以下である場合に床面が検出されたものと判定する床面判定手段を有することが望ましい。
【００１４】
さらに、前記候補選択手段によって選択されたセンサ角度候補に対応した距離画像データに基づいて歩容データを生成することが好ましい。
【００１５】
ここで、移動ロボットとしては、同軸二輪式の移動ロボットであってもよく、二足歩行型の移動ロボットであってもよい。
【００１６】
本発明にかかる床面検出方法は、移動ロボットが移動する床面を検出する床面検出方法であって、姿勢角データに基づいて、複数の距離画像センサに関するセンサ角度候補を設定するステップと、複数のセンサ角度候補のそれぞれについて前記距離画像センサにより生成された距離画像データに基づいて床検出を行うステップと、前記複数のセンサ角度候補のうち、最も多く床検出された候補を、当該床面に対する距離画像センサの角度として選択するステップとを備えたものである。
【発明の効果】
【００１７】
本発明によれば、正確に床検出を行うことが可能な床面検出システム及び移動ロボットを提供することができる。
【発明を実施するための最良の形態】
【００１８】
まず、図１を用いて、本発明の実施の形態にかかる床面検出システムの概略構成について説明する。当該床面検出システムは、移動に伴って姿勢が変化する移動ロボット１に設けられている。本例に示す移動ロボット１は、自律移動式の同軸二輪型ロボットであるが、これに限らず、二足歩行型ロボット、四足歩行型ロボット等にも適用できる。さらに、人搭乗型ロボットに対しても適用可能である。当該移動ロボット１は、ロボット本体１０に、図示しない駆動ユニットにより回転駆動される車輪１１を備えている。移動ロボット１は、車輪１１の回転軸を中心に前後方向に傾斜する。
【００１９】
移動ロボット１のロボット本体１０には、距離画像センサ１２が設けられている。距離画像センサ１２は、例えば、ＴＯＦ（Time Of Flight）方式のセンサである。ここで、ＴＯＦ方式には、位相ＴＯＦ方式と、パルスＴＯＦ方式とがある。位相ＴＯＦ方式では、強度変調された測定光線を測定対象に照射して、対象物からの反射光を検出して、光電子変換を行い、変換された光電子を複数の蓄積手段のいずれかに時間的にずらして蓄積するようにしている。この方式によれば、測定対象が遠くにあればあるほど、複数の蓄積手段のうち時間的に後のタイミングで蓄積するようにした蓄積手段に、より多くの光電子が蓄積されることになる。つまり、測定対象までの距離に応じて、複数の蓄積手段のそれぞれに蓄積される光電子数の相対的な比率や差分が決定される。この比率や差分を求めることによって測定対象までの距離を求めることができる。パルスＴＯＦ方式は、パルス状の測定光線を測定対象物に照射して、測定対象物からの反射光と測定光線との位相差から距離を求める方式であって、測定光線を２次元的に走査し、各点で距離を測定して三次元の形状を測定するものである。
【００２０】
距離画像センサ１２は、ロボット本体１０に対して、移動ロボット１の前方の床面を検出するように、傾斜して設けられている。本例では、ロボット本体１０が床面に対して垂直に位置した状態において、その垂直方向（つまり、鉛直方向）に対する角度を取り付け角θ（ｄｅｇ）として表す。
【００２１】
移動ロボット１のロボット本体１０には、姿勢角センサ１３が設けられている。姿勢角センサ１３は、ロボット本体１０、すなわち移動ロボット１の傾斜角を測定するセンサであり、例えば、ロボット本体１０の角速度を検知するジャイロセンサと、鉛直方向を検知するための加速度センサによって構成される。
【００２２】
図３のブロック図に示されるように、距離画像センサ１２によって測定され、生成された距離画像データと、姿勢角センサ１３によって測定され、生成された姿勢角データは、データ処理部１４に出力される。
【００２３】
データ処理部１４は、ＲＯＭ、ＲＡＭに格納された制御プログラムや制御パラメータ、さらには距離画像センサ１２より入力した距離画像データや姿勢角センサ１３より入力した姿勢角データに基づいて、移動ロボット１の全体動作及び処理を実現するための制御を行うＣＰＵを備えている。本例にかかるデータ処理部１４は、距離画像センサ１２より入力した距離画像データに加えて、姿勢角センサ１３によって検出された姿勢角データに基づいて床面検出処理を実行する。
【００２４】
続いて、本実施の形態にかかる床面検出システムにおける床面検出処理について、図４に示すフローチャートを用いて説明する。
【００２５】
データ処理部１４は、まず、姿勢角センサ１３より姿勢角データを入力する。処理対象となる姿勢角データは、発明が解決しようとする課題の欄で詳述したように、姿勢角センサ１３とデータ処理部１４の間の通信遅れによって、ｔ[ｍｓ]前のものである。データ処理部１４は、入力した姿勢角データに基づき、センサ基準角を設定する（Ｓ１０１）。センサ基準角は、姿勢角データにより特定される姿勢角ｘ[ｄｅｇ]に、距離画像センサ１２の取り付け角θを加算した角度である。例えば、ｘ＝５、θ＝２０の場合に、センサ基準角は、ｘ＋θ＝２５[ｄｅｇ]である。
【００２６】
次に、データ処理部１４は、センサ基準角に基づいて、センサ角度候補を設定する（Ｓ１０２）。センサ角度候補は、センサ基準角を基準に、予め定められた複数の値だけ減算し、かつ加算することによって得られた角度である。好適には、センサ角度候補は、センサ基準角ｓからａ１，ａ２，ａ３・・・・ａｎだけそれぞれ減算した値、センサ基準角ｓ、センサ基準角ｓに対してａ１，ａ２，ａ３・・・・ａｎだけそれぞれ加算した値である。即ち、ｓ−ａｎ，・・・ｓ−ａ３，ｓ−ａ２，ｓ−ａ１，ｓ，ｓ＋ａ１，ｓ＋ａ２，ｓ＋ａ３・・・・ｓ＋ａｎ[ｄｅｇ]の２ｎ＋１個がセンサ角度候補となる。より具体的には、ｓ−ｍ，・・・ｓ−３，ｓ−２，ｓ−１，ｓ，ｓ＋１，ｓ＋２，ｓ＋３・・・・ｓ＋ｍ[ｄｅｇ]である。この例では、１[ｄｅｇ]ずつ減算及び加算した値としたが、これに限らず、任意の値であってもよく、その値は固定でなくとも変動してもよい。例えば、センサ基準角の値に近い範囲では１[ｄｅｇ]ずつ減算及び加算し、遠い範囲では２[ｄｅｇ]ずつ減算及び加算するようにしてもよい。
【００２７】
データ処理部１４は、設定されたセンサ角度候補のうち、任意の角度候補Ａについて床面までの理想距離を計算する（Ｓ１０３）。初期値としては、例えば、最も値が小さいセンサ角度候補ｓ−ａｎ[ｄｅｇ]が選ばれる。床面までの理想距離は、選択された任意の角度候補Ａに基づき、距離画像センサ１２から床面までの距離を幾何学的に算出することによって求められる。また、床面までの理想距離は、距離画像センサ１２によって取得される領域の全範囲に亘って、すなわち全ピクセルについて計算される。
【００２８】
さらに、データ処理部１４は、距離画像センサ１２から距離画像データを入力し、距離画像データに含まれるピクセルｉにおける床面までの距離と、ピクセルｉと同じ位置における理想距離との差分を計算して求める（Ｓ１０４）。
データ処理部１４は、ステップＳ１０４によって算出された差分値が、予め定められた閾値以下かどうかを判定する（Ｓ１０５）。データ処理部１４は、当該差分値が閾値よりも大きいと判定した場合には、ステップＳ１０７に移行する。
【００２９】
他方、データ処理部１４は、当該差分値が閾値以下と判定した場合には、床面が検出されたものと判断し、床検出カウント数の値を１だけ増加させる（Ｓ１０６）。
【００３０】
ステップＳ１０５において差分値が閾値よりも大きいと判定した場合及びステップＳ１０６において床検出カウント数の値を１だけ増加させる処理を行った場合に、データ処理部１４は、距離画像データに含まれるすべてのピクセルについて走査を行い、計算を行ったかについて判定する（Ｓ１０７）。データ処理部１４が未だすべてのピクセルについては計算を行っていないと判定した場合には、ｉ＝ｉ＋１として、次のピクセルについてステップＳ１０４の処理を実行する。
【００３１】
他方、データ処理部１４がすべてのピクセルについて走査を行い、計算を行ったと判定した場合には、さらに、すべてのセンサ角度候補について計算を行ったかどうかを判定する（Ｓ１０８）。データ処理部１４は、未だすべてのセンサ角度候補について計算していないと判定した場合には、Ａ＝Ａ＋１として次のセンサ角度候補についてステップＳ１０３の処理を実行する。
【００３２】
他方、データ処理部１４がすべてのセンサ角度候補について計算を行ったと判定した場合には、床検出カウント数の多い、センサ角度候補を選択し、このセンサ角度候補に対応した距離画像データを床面形状データとして採用する（Ｓ１０９）。そして、データ処理部１４は、採用された距離画像データに基づいて歩容データを生成する。移動ロボット１は、当該歩容データに基づいて走行或いは歩行動作を実行する。
【００３３】
続いて、図５を用いて、床面検出処理の例について説明する。この例では、姿勢角センサ１３によって検出された姿勢角ｘ＝５[ｄｅｇ]であり、距離画像センサ１２の取り付け角θ＝１５[ｄｅｇ]である。従って、センサ基準角ｓ＝５＋１５＝２０[ｄｅｇ]である。このセンサ基準角ｓである２０[ｄｅｇ]より１〜５[ｄｅｇ]だけ加算若しくは減算した値１５〜２５[ｄｅｇ]をセンサ角度候補とした。図５の左上及び右上にそれぞれ示す領域のうち斜線部分が、図４のステップＳ１０５において差分値が閾値以下と判定され、床面が検出されたものと判断されたピクセルに相当する領域を示している。
【００３４】
図５に示されるように、センサ角度候補が２０°の場合は、センサ角度候補が２５°の場合に比べて、床面が検出された領域が広く、床検出カウント数も多い。そして、すべてのセンサ角度候補の中でも、２０°の場合が最も床検出カウント数が多いため、この２０°現在のセンサ傾き角度として判定する。
【００３５】
なお、図４に示すフローチャートでは、ステップＳ１０４において距離画像データに含まれるピクセルｉにおける床面までの距離と、ピクセルｉと同じ位置における理想距離との差分を計算して求め、ステップＳ１０５においてその差分値を閾値と比較処理を行ったが、これに限らず、距離画像データに含まれるピクセルｉにおける床面までの距離と、ピクセルｉと同じ位置における理想距離を比較して、その比較結果に基づいて、実質的に両者の差分に応じた値を求めて、この値を閾値と比較するようにしてもよい。
【図面の簡単な説明】
【００３６】
【図１】本発明にかかる床面検出システムの概略構成図である。
【図２】本発明及び従来の床面検出システムの処理を説明するための説明図である。
【図３】本発明にかかる床面検出システムの構成を示すブロック図である。
【図４】本発明にかかる床面検出システムにおける処理の流れを示すフローチャートである。
【図５】本発明にかかる床面検出システムの処理結果例を示す説明図である。
【符号の説明】
【００３７】
１  ロボット
１０  ロボット本体
１１  車輪
１２  距離画像センサ
１３  姿勢角センサ
１４  データ処理部
１００  床面
１２０  処理結果
【図１】
0004985420.tif 000002
【図２】
0004985420.tif 000003
【図３】
0004985420.tif 000004
【図４】
0004985420.tif 000005
【図５】
0004985420.tif 000006