(57)【特許請求の範囲】
【請求項１】
障害物を回避しながら目標位置まで自律的に移動する、平面視で長軸と短軸とを備えた自律移動体であって、
水平面内での並進と鉛直軸回りの回転とが可能な移動機構を備えた台車と、
予め定める方位角毎に前記自律移動体から障害物までの距離情報を出力する障害物センサと、
前記長軸方向の両端に弧を備え、弧と弧の間を前記長軸方向に沿った線分で接続し、さらに前記自律移動体を内部に包含する異方性モデルを記憶するモデル記憶部と、
前記障害物センサからの距離情報と障害物に対する自律移動体の向き、及びモデル記憶部の異方性モデルとに基づき、自律移動体の並進に関するポテンシャルと、回転に関するポテンシャルとを生成するポテンシャル生成部と、
前記並進に関するポテンシャルに基づく並進と、前記回転に関するポテンシャルに基づく回転とを組み合わせて、障害物に前記モデルが干渉しないように、前記移動機構を駆動する駆動部、とを設けたことを特徴とする、自律移動体。
【請求項２】
前記並進に関するポテンシャルは自律移動体が並進する方位角に対するポテンシャルであり、前記回転に関するポテンシャルは自律移動体が回転する方位角に対するポテンシャルであることを特徴とする、請求項１の自律移動体。
【請求項３】
前記障害物センサは、複数の高さ位置で予め定める方位角毎に自律移動体から障害物までの距離情報を出力し、
前記モデル生成部は、高さ位置に応じて前記モデルを複数記憶することを特徴とする、請求項１または２の自律移動体。
【請求項４】
自律移動体は、台車と、台車により支持されかつ可動部を備えた上部とを備え、
前記モデル記憶部は、前記上部の変形に対応して、上部に対応する高さ位置で、前記異方性モデルを変更することを特徴とする、請求項３の自律移動体。
【請求項５】
前記移動機構は、車軸と平行な方向への回転が自在なローラを外周に備えた駆動輪を３輪以上備え、かつ前記３輪以上の駆動輪は前記車軸の方向が異なるものを含んでいることを特徴とする、請求項１〜４のいずれかの自律移動体。
【請求項６】
障害物を回避しながら目標位置まで自律的に移動するように、平面視で長軸と短軸とを備えた自律移動体を制御する方法であって、
前記移動体は、水平面内での並進と鉛直軸回りの回転とが可能な移動機構を備え、
障害物センサにより予め定める方位角毎に障害物までの距離を求め、
モデル記憶部に記憶された、前記長軸方向の両端に弧を備え、弧と弧の間を前記長軸方向に沿った線分で接続し、さらに前記自律移動体を内部に包含する異方性モデルを読み出し、
ポテンシャル生成部により、前記障害物センサからの距離情報と障害物に対する自律移動体の向き、及びモデル記憶部の異方性モデルとに基づき、自律移動体の並進に関するポテンシャルと、回転に関するポテンシャルとを生成し、
駆動部により、前記並進に関するポテンシャルに基づく並進と、前記回転に関するポテンシャルに基づく回転とを組合せ、障害物に前記モデルが干渉しないように、前記移動機構を駆動する、ことを特徴とする、自律移動体の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット及び無人搬送車等の自律移動体とその移動制御に関する。
【背景技術】
【０００２】
オフィス及び工場等の人間の存在する実環境において様々なサービスを提供するロボット等の移動体の開発が行われているが、このようなロボット開発の前提として障害物を回避しながら目的地へ自律的に移動できること要求されている。障害物の回避について非特許文献１は仮想ポテンシャル法を開示する。仮想ポテンシャル法では、目的地に対する引力ポテンシャルと、回避すべき障害物に対する斥力ポテンシャルを生成し、これらのポテンシャルを重ね合わせた力場の勾配により制御量を発生させる。この制御量に従って走行モータが駆動され、移動体は障害物を回避しながら目的地へ到達できる。  
【０００３】
移動体は、障害物を回避する際、大回りせずに円滑に回避することが好ましい。障害物は、壁や柱を除く、通路等の移動体の通過可能領域に発生するが、その領域が十分に広いとは限らない。そこで円滑に障害物を回避すること、即ち、移動体が、姿勢を変更して通過できる隙間が有れば狭い隙間でも通過し、かつ回避運動が滑らかであることが、好ましい。しかしながら現在までの研究では、移動体を円に近似したモデルを利用して移動経路を探索することが殆どであったため、移動体の姿勢変更について何ら考慮されていなかった。つまり移動体を円モデルに近似する既存の手法では、移動体が平面視で長尺体の場合であっても、その長手方向長さを完全に包含する円モデルが設定されるので、移動体の短手側を進行方向に向けた姿勢であれば通過できる隙間であっても通過できない隙間と判定されてしまい、結果として大きく迂回して回避することになる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Ｏ．Ｋｈａｔｉｂ：“Ｒｅａｌ−Ｔｉｍｅ  Ｏｂｓｔａｃｌｅ  Ａｖｏｉｄａｎｃｅ  ｆｏｒ  Ｍａｎｉｐｕｌａｔｏｒｓ  ａｎｄ  Ｍｏｂｉｌｅ  Ｒｏｂｏｔｓ，“  Ｉｎｔ．  Ｊ．  ｏｆ  Ｒｏｂｏｔｉｃｓ  Ｒｅｓｅａｒｃｈ，  ｖｏｌ．５，  ｎｏ．  １，  ｐｐ．９０−９８，  １９８６．
【発明の概要】
【発明が解決しようとする課題】
【０００５】
この発明の課題は、自律移動体が障害物を円滑に回避できるようにすることにある。
【課題を解決するための手段】
【０００６】
この発明の自律移動体は、
障害物を回避しながら目標位置まで自律的に移動する、平面視で長軸と短軸とを備えた自律移動体であって、
水平面内での並進と鉛直軸回りの回転とが可能な移動機構を備えた台車と、
予め定める方位角毎に前記自律移動体から障害物までの距離情報を出力する障害物センサと、
前記長軸方向の両端に弧を備え、弧と弧の間を前記長軸方向に沿った線分で接続し、さらに前記自律移動体を内部に包含する異方性モデルを記憶するモデル記憶部と、
前記障害物センサからの距離情報と障害物に対する自律移動体の向き、及びモデル記憶部の異方性モデルとに基づき、自律移動体の並進に関するポテンシャルと、回転に関するポテンシャルとを生成するポテンシャル生成部と、
前記並進に関するポテンシャルに基づく並進と、前記回転に関するポテンシャルに基づく回転とを組み合わせて、障害物に前記モデルが干渉しないように、前記移動機構を駆動する駆動部、とを設けたことを特徴とする。
【０００７】
この発明の自律移動体の制御方法は、障害物を回避しながら目標位置まで自律的に移動するように、平面視で長軸と短軸とを備えた自律移動体を制御する方法であって、
前記移動体は、水平面内での並進と鉛直軸回りの回転とが可能な移動機構を備え、
障害物センサにより予め定める方位角毎に障害物までの距離を求め、
モデル記憶部に記憶された、前記長軸方向の両端に弧を備え、弧と弧の間を前記長軸方向に沿った線分で接続し、さらに前記自律移動体を内部に包含する異方性モデルを読み出し、
ポテンシャル生成部により、前記障害物センサからの距離情報と障害物に対する自律移動体の向き、及びモデル記憶部の異方性モデルとに基づき、自律移動体の並進に関するポテンシャルと、回転に関するポテンシャルとを生成し、
駆動部により、前記並進に関するポテンシャルに基づく並進と、前記回転に関するポテンシャルに基づく回転とを組合せ、障害物に前記モデルが干渉しないように、前記移動機構を駆動する、ことを特徴とする。
【０００８】
この発明では、自律移動体を円モデルで近似せず、長軸と短軸とを備えた異方性のある異方性モデルとして扱う。そしてこの発明の異方性モデルを利用して、自律移動体の姿勢角を変化させながら並進して障害物を回避する。
【０００９】
好ましくは、前記並進に関するポテンシャルは自律移動体が並進する方位角に対するポテンシャルであり、前記回転に関するポテンシャルは自律移動体が回転する方位角に対するポテンシャルである。
【００１０】
この発明では、並進と回転のポテンシャルを用いて、これらの自由度を活かし、障害物を回避できる。
【００１１】
また好ましくは、前記障害物センサは、複数の高さ位置で予め定める方位角毎に自律移動体から障害物までの距離情報を出力し、前記モデル記憶部は、高さ位置に応じて前記異方性モデルを複数記憶する。このようにすると、高さ方向に沿ってロボットの表面が一様でなく、また障害物の表面が高さ方向に沿って変化しても、容易に障害物を回避できる。
【００１２】
好ましくは、自律移動体は、台車と、台車により支持されかつ可動部を備えた上部とを備え、前記モデル記憶部は、前記上部の変形に対応して、上部に対応する高さ位置で、前記異方性モデルを変更する。このようにすると、上部の形状、向き、姿勢等が変化しても、障害物を回避できる。
【００１３】
好ましくは、前記移動機構は、車軸と平行な方向への回転が自在なローラを外周に備えた駆動輪を３輪以上備え、かつ前記３輪以上の駆動輪は前記車軸の方向が異なるものを含んでいる。
【００１４】
このようにすると、旋回半径０で任意の方向へ並進と回転とができるので、移動体の向きを変えながら、小さな隙間でも障害物を回避できる。
【図面の簡単な説明】
【００１５】
【図１】実施例の自律移動ロボットの側面図
【図２】実施例の自律移動ロボットの底面図
【図３】実施例の自律移動ロボットとでの移動制御系を示すブロック図
【図４】図４でのモーションコントロール部のブロック図
【図５】実施例でのカプセル枠モデルとＰＭＦ生成用の角度とを説明する平面図
【図６】実施例のカプセル枠とロボットの走行車輪との関係を示す図
【図７】実施例での並進制御アルゴリズムを示すフローチャート
【図８】実施例での回転制御アルゴリズムを示すフローチャート
【図９】実施例でのＰＭＦへの高さの取り込みを示すフローチャート
【図１０】実施例でのＰＭＦへのアームの伸縮等の取り込みを示すフローチャート
【図１１】並進に対する障害物のＰＭＦの例を示す図
【図１２】並進に対するゴールのＰＭＦの例を示す図
【図１３】並進に対する障害物とゴールの合成ＰＭＦの例を示す図
【図１４】回転に対する障害物とゴール及び合成ＰＭＦの例を示す図
【図１５】実施例でのロボットの軌跡を示す図
【図１６】実施例でのロボットの方位角の推移を示す図
【図１７】従来例でのロボットの方位角の推移を示す図
【図１８】障害物の間隔を狭めてロボットが通過できなくした際の、実施例でのロボットの軌跡を示す図
【図１９】障害物の間隔を狭めてロボットが通過できなくした際の、実施例でのロボットの方位角の推移を示す図
【図２０】カプセル枠モデルの変形例を示す平面図
【図２１】カプセル枠モデルの第２の変形例を示す平面図
【図２２】カプセル枠モデルの第３変形例を示す平面図
【発明を実施するための最良の形態】
【００１６】
以下に本発明を実施するための最適実施例を示す。この発明の範囲は、特許請求の範囲の記載に基づき、明細書とこの分野の周知技術を参酌し、当業者の理解に従って定められるべきである。
【実施例】
【００１７】
図１〜図２２に、実施例の自律移動ロボット１０とその制御とを示す。図１を参照して、ロボット１０は全方位移動機構を備えた台車１３を備え、かかる台車１３が上半身としての上部１２を支持している。上部１２は、取り付け高さの異なる例えば一対のレーザーレンジファインダ１４、１４を備える。レーザーレンジファインダ１４に代えて、ステレオカメラ、空間コード化用の光源とカメラなどの立体視装置を備えても良い。以上の構成で、ロボット１０はいくつかの高さ位置において、ロボットと障害物との間の距離情報を予め定める方位角毎に取得し出力する。またロボット１０は、図示しないＧＰＳ等を備えて現在位置及び向きを認識しても良く、あるいはレーザーレンジファインダ１４もしくは立体視装置等で検出した通路壁までの距離情報等と予め準備した環境地図とに従って現在位置及び向きを認識することもできる。上部１２は制御部１５と作業用のアーム１６とを備えている。なお上部１２を、台車１３に対して鉛直軸回りに回転するようにしても良い。
【００１８】
実施例の台車１３の全方位移動機構は、周方向に９０°の間隔で並べて配置された４個の全方位車輪２１と、全方位車輪２１を駆動する４個のモータ２２とを備える。なお、台車１３は、３又は６組の全方位車輪２１とモータ２２を設けた構成であってもよい。２３はホイール駆動ユニットで、ホイール駆動ユニット２３は支持フレーム２４と、支持フレーム２４に固定されたモータ２２とを備え、支持フレーム２４はブラケット２５により台車１３に固定されている。台車１３はＸＹ方向に自由に移動でき、また鉛直軸回りに自由に自転できる。なお全方位移動機構の種類は任意であるが、実施例では旋回半径がほぼ０で任意の向きに並進と回転とができることが要求される。以下に、全方位移動機構を説明する。  
【００１９】
モータ２２はハウジング２６を備え、モータ２２の出力軸２７は支持フレーム２４から外側へ突出し、全方位車輪２１を回転させる。全方位車輪２１は、その回転軸（車軸）がロボット１０の正面１１に対してなす角が４５°又は１３５°となるように配置されている。図２，図６に示すように、ロボット１０は、平面視において、正面１１方向の幅Ｗが奥行きＬに比べて大きく、ほぼ長方形形状を有している。  
【００２０】
全方位車輪２１は、モータ２２の出力軸２７により駆動される駆動車輪３１と、駆動車輪３１の外周に沿って環状に配置された複数のフリーローラ３２とを備えている。いずれかのフリーローラ３２の外周面が床面に常に接触し、フリーローラ３２の回転軸線は駆動車輪の回転軸線に対して垂直である。モータ２２が駆動車輪を回転させると、フリーローラ３２により駆動力を床面に伝達する。またフリーローラ３２は回転軸線を中心として自由に回転可能であるから、全方位車輪２１は駆動車輪の回転軸に平行な方向にも移動できる。なおフリーローラ３２に代えて、金属ボールなどを用いても良い。  
【００２１】
図３に実施例の移動制御部１５を示す。３４は主制御で、ＣＰＵ、ＲＯＭ及びＲＡＭなどから成る。３５は入力部で、オペレータは入力部３５からロボット１０の目的位置、後述する異方性モデル（カプセル枠モデル）の各種パラメータ、ロボット１０の最大・最小並進速度、及びロボット１０の最大・最小角速度などを入力する。３６はマップ記憶部で、ロボット１０が移動し得る環境の環境地図を記憶している。３７は経路作成部で、目的地までの移動経路を、環境地図を参照して作成する。４０はモーションコントローラで、並進に関する制御指令と、回転に関する制御指令を発生し、これらの制御指令を図２の各モータ２２への速度指令（各速度指令）として出力する。
【００２２】
図４にモーションコントローラ４０の概念ブロック図を示し、入力としてレーザーレンジファインダ１４などのセンサからの方位角毎の距離情報があり、これに基づいて己の現在位置並びに自機の正面が向く方位角と、自機の周囲の障害物とに関する情報を取得する。壁や柱などの既設障害物を除く、机やキャビネット等の移設障害物や人等の移動障害物（以下、総称して一時障害物）は一般に環境地図に記載されておらず、ロボット１０側からすると、通路等の移動環境のどの位置に一時障害物があるかは、センサからの距離情報が入力されて始めて認識できることになる。４１は情報処理部で、障害物及び目的地などに関する環境情報処理部４２と、自機の現在位置、向き及び速度などの自機状態に関する自機情報処理部４３とを備え、自機情報処理部４３は入力されたパラメータから後述のカプセル枠モデルを生成し記憶する。
【００２３】
カプセル枠モデルは後述のように、３つのパラメータＣａ，ＣＲ，ＣＬにより定義され得るので、これらのパラメータを記憶するか、カプセル枠モデル自体を記憶する。また高さ方向に沿って自律移動体の形状が異なること、あるいは障害物の形状が高さ方向に沿って異なることを考慮する場合には、高さ位置に応じた複数のパラメータから成る組を複数組記憶し、複数のカプセル枠モデルを出力し記憶する。さらに自律移動体の上半身の形状が、台車もしくは脚部に対し異なる場合、高さ位置に応じて前記のパラメータを変更し、上半身に対するカプセル枠モデルを変更する。
【００２４】
図４を参照して、情報処理部４１の後段に、並列に並進制御部４４と回転制御部４５とがあり、これらからの制御量を駆動指令生成部４８で統合して、各モータ２２への速度制御量とする。並進制御部４４と回転制御部４５は、情報処理部４１での障害物などの位置とそのサイズ、目的地並びに自機の現在位置と向きなどに応じて、並進制御に対するポテンシャルメンバーシップファンクション（ＰＭＦ）と、回転制御に関するポテンシャルメンバーシップファンクション（ＰＭＦ）とを生成する。なお、ＰＭＦは障害物及び目的地毎に生成され、これらをファジィ処理部４６，４７で合成する。
【００２５】
合成されたポテンシャルメンバーシップファンクション（ＰＭＦ）から、ファジィ処理部４６で並進の向き並びに並進速度を決定し、ファジィ処理部４７で台車１３の姿勢をどれだけ変化させるかのデータ、つまり回転の方向と角速度とを決定する。これらによって、台車の並進の向きと並進速度、回転すべき方向と角速度とが定まり、これを４個のモータへの制御量として駆動指令生成部４８で変換する。
【００２６】
ロボットの形状は、一般的に言って、そのデザインや機能に応じて高さ方向に沿って均一ではない。さらには、アームが上部から突き出している、さらにロボットの上部が台車に対して体を捻る、あるいはアームを伸縮させるなどにより、ロボットの形状は時間的に変化する。また障害物も高さ方向に沿って一様であるとは限らない。そこで好ましくはポテンシャルメンバーシップファンクション（ＰＭＦ）を高さ位置に沿って複数準備する。
【００２７】
図５，図６にロボットに対するカプセル枠モデルを示す。カプセル枠５０は、対向距離２Ｃａ離れて平行に配列される一対の線分の端部同士を、その両端部において、半径Ｃａの半円で接続したものである。ＰＬ，ＰＲは各半円の中心、Ｐｏは台車の中心で、ＣＬ，ＣＲは台車中心から点ＰＬ，ＰＲまでの距離である。通常の場合ＣＬ＝ＣＲとして設定されるが、アームの伸縮などロボット１０の形状変動に応じてＣＬとＣＲが異なることもある。Ｃａは例えばロボットの奥行きの１／２よりやや大きい量であるが、アームの伸縮、ワゴンなどの牽引などにより、通常値よりも増大することがある。図５では例えば、障害物Ｏ（その中心をＯ０とする）をそれが完全に内包される円で近似し、その半径をｒｏとする。ｄｓは安全距離であって、ロボット１０と障害物との距離を保ち安全を確保するための導入されるパラメータである。
【００２８】
図５のψｒｏは、台車中心から障害物を見た際の、台車正面に対する障害物の方位である。ψＬは、ＰＬとＯ０を結ぶ線分に平行で中心Ｐ０を通る線分と、Ｐ０とＯ０とを結ぶ線分とが成す角である。ψＲは、ＰＲとＯ０を結ぶ線分に平行で中心Ｐ０を結ぶ線分と、Ｐ０とＯ０とを結ぶ線分とが成す角である。ψＬ’は、ＰＬとＯ０を結ぶ線分に平行で中心Ｐ０を通る線分と、ＰＬを中心とする円弧と障害物の安全確保円との両者に接する線分に平行で中心Ｐ０を通る線分とが成す角である。ψＲ’は、ＰＲとＯ０を結ぶ線分に平行で中心Ｐ０を通る線分と、ＰＲを中心とする円弧と障害物の安全確保円との両者に接する線分に平行で中心Ｐ０を通る線分とが成す角である。さらに図６のψｏｕｔは、台車の正面方向からの台車の並進の方位角である。
【００２９】
ここでカプセル枠５０について説明する。図６に示すように、カプセル枠５０はロボット１３を完全に内包し、両端に弧を有し、弧と弧の間を線分で接続した図形である。カプセル枠５０には長軸と短軸とがあり、異方性のあるロボットが平面視で占めるエリアに対応する。カプセル枠５０では、ロボットの長手方向を線分で表し、この線分の移動でロボットの移動を表現する。線分の両端を半円で接続しているのは、ロボットが入り込める位置であれば、任意の位置で回転の自由度を残すためである。
【００３０】
図７〜図１０にロボットの制御を示す。図７に並進制御のアルゴリズムを示し、ステップ１で障害物までの距離を方位角毎に測定する。方位角を変数として自機から障害物までの距離を測定すると、障害物のロボット１３から見える側の表面を円、壁、立方体などと近似できる。そして円の場合には図５のように安全距離ｄｓを定め、壁の場合には壁の前面にだけ安全距離ｄｓを定める。立方体の場合、辺に平行に安全距離ｄｓを定め、頂点の周囲を半径ｄｓの円弧で近似する。ステップ２で障害物に対するポテンシャルメンバーシップファンクション（ＰＭＦ）を、自機から障害物までの距離並びに障害物に対する自機の向きに基づいて作成する。ステップ３では自機から目的地（ゴール）までの距離と向きとに基づき、ゴールに対するＰＭＦを作成する。なお、ここで言うゴールは、ロボット１３が最終的に到達するべき目的地のみならず、ロボット１３が経由すべき経由地（サブゴール）も含む概念である。
【００３１】
ステップ４で障害物に対するＰＭＦとゴールに対するＰＭＦを合成し、障害物が複数ある場合、複数の障害物に対する全てのＰＭＦとゴールに対するＰＭＦとを合成する。合成では、例えば各方位角に対してＰＭＦの低い側の値を採用する。なおこの明細書で、並進のポテンシャルが高いとは、斥力が小さい安定な状態を意味し、ロボットはＰＭＦが最大となる方位へ並進する。またロボットの速度はＰＭＦにより制限され、最大速度と最小速度との間の速度をとり、ＰＭＦが高いほど速度が大きくなる。最小速度は例えば０で、最大速度ｖｍａｘと最小速度ｖｍｉｎとの差をΔｖ、ＰＭＦの値をｆとし、ｆの値を０以上１以下とすると、並進速度ｖは  ｖ＝Δｖ×ｆ＋ｖｍｉｎ  となる。これらのことをまとめると、ロボットは障害物を回避するように並進の方向を決定し、障害物の付近で減速する（ステップ５）。
【００３２】
図８に回転の制御を示し、図７のステップ１，２で、障害物までの距離と障害物に対する自機の向きに関する情報は既に取得済みである。図７のステップ３と同様にして、図８のステップ１１で、方位角毎の自機から障害物までの距離と自機の向き（正面方向）とに基づき、回転に関するＰＭＦを作成する。回転に関するＰＭＦは、ロボットがどの向きを向くかにより、障害物からの斥力（ポテンシャルの値）がどのように変化するかを表す。ステップ１２で、ゴールに対するＰＭＦを作成し、例えばゴールにロボットが正面を向いて到着することが好ましいとすると、ＰＭＦはゴールがロボットの正面となる向きで最低で、これからずれるに従って増大する。なお並進と回転とで、ＰＭＦの値の解釈が逆なので、注意が必要である。ステップ１３で障害物に対するＰＭＦとゴールに対するＰＭＦを合成し、障害物が複数ある場合、複数の障害物に対する全てのＰＭＦとゴールに対するＰＭＦを合成する。そしてＰＭＦが最小となる向きに、ＰＭＦに従った角速度で回転する（ステップ１４）。最小の角速度ωｍｉｎは例えば０で、最大の角速度ωｍａｘと最小速度ωｍｉｎとの差をΔω、ＰＭＦの値をｆとし、ｆの値を０以上１以下とすると、角速度ωは  ω＝Δω×（１−ｆ）＋ωｍｉｎ  となる。
【００３３】
図９に高さの処理を示し、これは障害物の表面が高さ方向に沿って一様ではない、あるいはロボットの表面が高さ方向に沿って一様ではない際の処理である。例えば図１で複数の高さにレーザーレンジファインダ１４を設け、これによって高さ毎のＰＭＦを生成する（ステップ２１）。そして例えば図７，図８でのＰＭＦの合成と同様にして、高さ毎に合成し、単一のＰＭＦとするか、高さ位置に応じた複数のＰＭＦのままとする。
【００３４】
図１０にアームの伸縮などの影響の処理を示す。ロボットがアームを伸縮させる、あるいは上体を傾かせるなどすると、これに応じて適用すべきカプセル枠モデルを変更する。カプセル枠モデルの変更は、パラメータＣａ，ＣＲ，ＣＬの変更で処理でき、ＰＭＦはその都度リアルタイムに生成させているので、新たなカプセル枠モデルに基づき、ＰＭＦを生成すればよい。図９、図１０の処理により、ロボットの姿勢が変化し、またロボットの表面が高さ方向に沿って均一ではなく、障害物も高さ方向に沿って均一ではない場合も、効率的な回避ができる。さらにロボットがワゴンを牽引する場合は、例えばロボットの正面から見た長軸と短軸の向きを変更し、パラメータＣａ，ＣＲ，ＣＬを変更すると良い。
【００３５】
図１１〜図１３に、図５に示す障害物とロボット１３の位置関係における並進に関するＰＭＦの一例を示す。図１１は障害物に対するＰＭＦを示し、縦軸は優先度で並進方向としての好ましさを示し、横軸は並進の方位角を表し、方位角０でロボットは正面に向けて前進する。ａは０と１との間の値をとるパラメータで、障害物の影響がない場合ａは０で、障害物の影響が大きくなるとａは１に近づき、それに伴って図１１中央の谷が深くなる。図１１で谷は垂直であるが、より滑らかな谷でも良い。障害物のロボット中心に対する距離||ｒr,o||が半径αを下回ると、変数ａを(1)式のように定義する。ここにＤは、図５のパラメータＣａ，ｒo、ｄｓにより、(2)式で定義される。
ａ＝（α−||ｒr,o||）／（α−Ｄ）  if  ||ｒr,o||＜α    (1)
Ｄ＝Ｃａ＋ｒo＋ｄｓ                                  (2)
以上のように、障害物の影響を受けない位置で、縦軸の優先度μｏは１で、障害物の影響を受ける位置では、影響を受ける方位角についてａだけ低下する。図１１では中央の谷で、ロボットは障害物の影響を受け、その外側のエリアでロボットは前進する。
【００３６】
図１２はゴールに対するＰＭＦを示し、ゴールから充分遠い場合、ＰＭＦの値は１に固定され、これはゴールの影響がないことを示している。ゴールの影響を受ける範囲に接近すると、ゴールに対して好ましい向きψｒｇで優先度はｇａ例えば１となり、好ましくない向きでｇｂとなる。ゴールのＰＭＦを近距離場として、ゴールへ経路作成部で作成した経路に沿って接近するか、ゴールのＰＭＦを遠距離場として、経路のあらゆる位置でゴールへ誘導するかは任意である。
【００３７】
複数のＰＭＦを、低い側の値を取り出すように合成すると、図１３のＰＭＦが得られる。この中でＰＭＦが最大となる方位が、ロボットにとって都合の良い方位であり、並進速度はその方位角での優先度で定まる。即ち優先度が高い場合、許される速度が大きく、優先度が低いと速度が小さくなる。図１３の場合、ψｏｕｔの方位角でほぼ最高速度に等しい速度で並進運動する。
【００３８】
図１４は回転に対するＰＭＦを示し、並進へのＰＭＦでは最も高いＰＭＦの方位へ進行するようにしたが、回転ではＰＭＦが最も低くなる向きを向くようにした。これはＰＭＦに関する約束事の問題である。障害物に対するＰＭＦをμｅｒとし、自機の向きに関するＰＭＦをμｃｒとする。そしてこれらの差をμｏｒとし、これが障害物に関する合成後のＰＭＦである。μｅｒは自機から見てどの向きで障害物の影響が大きくなるかを表し、μｅｒは超音波センサやレーザーレンジファインダなどの測距センサから得られる距離情報を基に生成され、ロボット中心から周囲全方向に対する障害物までの距離を測距センサで計測に使用する最大距離で除した値である。μｃｒはどの向きを向くと障害物の影響を受けやすい向きとなるかを表し、具体的にはカプセル枠の中心点Ｐoからその外郭までの長さを、測距センサで計測に使用する最大距離で除した値で表される。またゴールに対するＰＭＦをμｇｒとする。μｏｒとμｇｒの小さい方を選んだものが図１４の実線で、これが合成後のＰＭＦとなる。そこでこのＰＭＦを例えば平滑化し、ＰＭＦが最小となる向きを回転すべき向きψｏｒｉとし、回転の角速度はψｏｒｉでの優先度が低いほど大きく、高いほど小さくなる。
【００３９】
並進の制御量と回転の制御量が得られても、全方位移動機構は並進と回転とを別個に実行するのではない。そこでこれらの制御量を合成し、並進に対する制御量（並進すべき方位と速度）と、回転に関する制御量（回転の向きと角速度）とを、駆動指令生成部で加算し、モータへの制御量とする。並進に付いて速度の絶対値をｖout，その方位をψout，角速度をωとする。ｘ軸方向の並進速度は  ｖrx=ｖout・cosψout、ｙ軸方向の並進速度は ｖrｙ=ｖout・sinψout  となる。
【００４０】
図６のように定数Ｒ，δを定めると、４個の駆動輪の目標速度（制御量）ｖ１ω，ｖ２ω，ｖ３ω，ｖ４ωは(3)〜(6)式で与えられる。
ｖ１ω＝  cosδ・ｖrx＋sinδ・ｖrｙ＋Ｒ・ω              (3)
ｖ２ω＝  cosδ・ｖrx−sinδ・ｖrｙ−Ｒ・ω              (4)
ｖ３ω＝−cosδ・ｖrx−sinδ・ｖrｙ＋Ｒ・ω              (5)
ｖ４ω＝−cosδ・ｖrx＋sinδ・ｖrｙ−Ｒ・ω              (6)
【００４１】
図１５〜図１９に、ロボット１０に対するシミュレーション結果を示し、障害物の隙間を通って目的地に達することを課題とした。図１５において、ロボットは幅Ｗ＝  １．０ｍ  ，奥行きＬ＝  ０．４ｍ  とし、Ｃａ＝０．３ｍ  ，ＣＬ＝０．３ｍ  ，ＣＲ＝０．３ｍ  のカプセル枠に内包させる。障害物は半径０．３ｍ  の円と仮定し、２次元平面でのシミュレーションとする。ｒｏ，ｄｓ  は共に０．３ｍ  とし、したがって  Ｄ  ＝  ０．９ｍ  となる。ｖｍａｘ，ｖｍｉｎ  はそれぞれ０．５ｍ／ｓ，  ０．０ｍ／ｓ，ωｍａｘ，ωｍｉｎ  はそれぞれ１．０  ｒａｄ／ｓ，  ０．０ｒａｄ／ｓ  とした。ここで、半径０．３ｍ  の障害物を点（４．０ｍ，−２．０ｍ）  ，  点（４．０ｍ，−１．４ｍ）  ，  点（４．０ｍ，１．０ｍ）  ，点（４．０ｍ，１．６ｍ）  ，点（４．０ｍ，２．２ｍ）  に、図１５のように配置した。この環境で、点（０．０ｍ，  −２．０ｍ）を出発地点とし、点（１１．０ｍ，  ２．０ｍ）  へ移動させた。
【００４２】
ロボットを半径０．６ｍの円と仮定して障害物を回避する従来法での軌跡（図１７）と、実施例でのロボットの軌跡（図１５）とを比較する。なおロボット位置を１  秒ごとにプロットした。ロボットを一つの円と仮定して回避行動をさせた場合、図１７に示すように、点（４．０ｍ，−１．４ｍ）  と点（４．０ｍ，１．０ｍ）と  の間を通過できず、大回りに回避して目標位置に到達した。これに対して実施例では、図１５に示すように、方位角をリアルタイムに変更し、それぞれの障害物との距離を保ちつつ障害物間を通過し、目標位置に到達した。到着時間はロボットを円と見なした従来例で４２．２ｓ、実施例で３１．８ｓであった。実施例のロボットの姿勢角（ロボット正面のｘ方向からの方位角）の履歴を図１６に示す。
【００４３】
実施例のロボットに対し、どの姿勢でも障害物との距離ｄｓ＝０．３ｍ  を保った上で通過できない状況を想定し、障害物を点（４．０ｍ，−２．０ｍ）  ，点（４．０ｍ，−１．４ｍ）  ，点（４．０ｍ，０．４ｍ）  ，点（４．０ｍ，１．０ｍ）  ，点（４．０ｍ，１．６ｍ）  に配置した。図１８に示すように、ロボットは通過できないことを自律的に判断して、大回りに目標位置へ向かい、障害物間の隙間を無理に通過するような経路を採用しなかった。そのときの姿勢角の履歴を図１９に示す。
【００４４】
図２０〜図２２を参照し、カプセル枠モデルの意味を再度説明する。図２０で、自律移動ロボット６０に対し、カプセル枠６２を設け、ロボット６０の長軸方向両端に円弧６３，６４があり、その中心ＰＲ，ＰＬはロボット６０左右両端にある。
【００４５】
図２１の自律移動ロボット７０は平面視で右側が左側よりも大きく、カプセル枠７２はこれに応じて変形し、右側の円弧の半径は左側の円弧の半径よりも大きい。図２２のカプセル枠７４では、円弧７５，７６の中心がロボット６０の内側にある。これらは皆カプセル枠である。
【００４６】
実施例では以下の効果が得られる。
１）  ロボットを円等で近似せず、長軸と短軸とを備えた異方性のあるものとして扱う。そして障害物との関係について、方位角毎のポテンシャルを生成し、並進の他に回転の自由度があるので、並進と回転の各々に付いてポテンシャルを生成する。各ポテンシャルに基づいて、並進と回転の制御量を発生させ、これらに基づいて移動機構を駆動すると、障害物を回避できる。例えばどの方向に並進しても行き詰まる場合、ロボットは停止あるいは減速等を行い、この間に回転して障害物を回避する。従って小さな隙間を通過して障害物を円滑に回避できる。
２）  ファジィポテンシャル法でのポテンシャルメンバーシップファンクションは、比較的簡単に生成でき、リアルタイムでの処理に適している。
３）  制御量生成部は、ポテンシャルメンバーシップファンクションの値に基づいて、最高並進速度と最低並進速度との間で並進速度を決定すると共に、最高角速度と最低角速度との間で角速度を決定する。このため、並進速度と角速度を簡単に決定でき、しかも障害物との干渉を避けるように、ロボットは減速して慎重に障害物を回避する。
【００４７】
４）  複数の障害物の各々に対して、各々並進及び回転のポテンシャルメンバーシップファンクションを発生させると共に、目的地へ自律ロボットを誘導するためのポテンシャルメンバーシップファンクションを発生させて、これらを合成する。従って、複数の障害物との干渉の回避と目的地への誘導とを、並進と回転毎に各１個のポテンシャルメンバーシップファンクションで処理できる。
５）  複数のポテンシャルメンバーシップファンクションの値の最高値もしくは最小値を、方位角毎に求めることにより、簡単にポテンシャルメンバーシップファンクションを合成できる。
６）  並進と回転の相互作用を無視して、簡単に各々の制御量を発生する。すると並進が困難な場合、ロボットは減速ないし停止し、回転して脱出する。回転が不要な場合、並進のみを行う。このため、並進と回転とで協調動作を行っているのに等しい運動ができる。
７）  並進に関する制御量と回転に関する制御量とを加算し、制御量を合成する。このため簡単に移動機構を駆動できる。
８）  実施例の台車は、旋回半径０で任意の方向へ並進と回転とができる。
【００４８】
９）  カプセル枠モデルにより、任意の位置で回転と並進の双方の自由度を保つことができ、このため、ロボットの姿勢を変化させながら障害物を回避することが容易である。
１０）  高さ方向に沿ってロボットの表面が一様でなく、また障害物の表面が高さ方向に沿って変化しても、高さ毎のポテンシャルメンバーシップファンクションの合成で対応できる。
１１）  搭載した荷物がはみ出した、アームを伸縮した、ロボットが上体を傾けたなどにより、ロボットの形状が変化しても、カプセル枠モデルの変更で対応できる。
【００４９】
実施例では自律移動ロボット１０を例としたが、地上走行でスライドフォーク、スカラアーム、ターンテーブル等を搭載した無人搬送車等でも、本発明を実施できる。また車輪で移動するロボットの他に、歩行型のロボット、工作機械、搬送装置など、２方向への並進と回転の合計３以上の自由度を備えたロボットでも同様に実施できる。
【符号の説明】
【００５０】
１０        自律移動ロボット
１１        正面
１２        上部
１３        台車
１４        レーザーレンジファインダ
１５        移動制御部
１６        アーム
２１        全方位車輪
２２        モータ
２３        ホイール駆動ユニット
２４        支持フレーム
２５        ブラケット
２６        ハウジング
２７        出力軸
３１        駆動車輪
３２        フリーローラ
３４        主制御
３５        通信部
３６        マップ記憶部
３７        経路作成部
４０        モーションコントローラ
４１        情報処理部
４２        環境情報処理部
４３        自機情報処理部
４４        並進制御部
４５        回転制御部
４６，４７  ファジィ処理部
４８        駆動指令生成部
５０        カプセル枠
６０，７０  自律移動ロボット
６２，７２，７４  カプセル枠
６３，６４  円弧
６５，６６  線分
８０，８２  障害物
ＰＭＦ      ポテンシャルメンバーシップファンクション
Ｗ          台車幅
Ｌ          台車の奥行き
Ｃａ          カプセル枠の幅の１／２
ＣＲ          台車中心からカプセル枠の線分右端までの距離
ＣＬ          台車中心からカプセル枠の線分左端までの距離
Ｐｏ          台車中心
ＰＲ，ＰＬ    カプセル枠の線分の端点
ｒｏ          障害物半径
ｄｓ          相互作用距離
ω            角速度
ψ            方位角
ψｒｏ        台車正面に対する障害物の方位
ψｏｕｔ      台車の並進方位角            
ψＬ          端点ＰＬと台車中心Ｐｏとからの障害物中心への方位角の差
ψＲ          端点ＰＲと台車中心Ｐｏとからの障害物中心への方位角の差
ψＬ’        直角に対するψＬの補角
ψＲ’        直角に対するψＲの補角
【図１】
0005398488.tif 000002
【図２】
0005398488.tif 000003
【図３】
0005398488.tif 000004
【図６】
0005398488.tif 000005
【図７】
0005398488.tif 000006
【図８】
0005398488.tif 000007
【図９】
0005398488.tif 000008
【図１０】
0005398488.tif 000009
【図１５】
0005398488.tif 000010
【図１６】
0005398488.tif 000011
【図１７】
0005398488.tif 000012
【図１８】
0005398488.tif 000013
【図１９】
0005398488.tif 000014
【図２０】
0005398488.tif 000015
【図２１】
0005398488.tif 000016
【図２２】
0005398488.tif 000017
【図４】
0005398488.tif 000018
【図５】
0005398488.tif 000019
【図１１】
0005398488.tif 000020
【図１２】
0005398488.tif 000021
【図１３】
0005398488.tif 000022
【図１４】
0005398488.tif 000023