JP6836100B2 - 移動体 - Google Patents

移動体 Download PDF

Info

Publication number
JP6836100B2
JP6836100B2 JP2016006972A JP2016006972A JP6836100B2 JP 6836100 B2 JP6836100 B2 JP 6836100B2 JP 2016006972 A JP2016006972 A JP 2016006972A JP 2016006972 A JP2016006972 A JP 2016006972A JP 6836100 B2 JP6836100 B2 JP 6836100B2
Authority
JP
Japan
Prior art keywords
user
moving body
obstacle
memory
avoidance
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.)
Active
Application number
JP2016006972A
Other languages
English (en)
Other versions
JP2017129909A (ja
Inventor
和宏 久野
和宏 久野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Equos Research Co Ltd
Original Assignee
Equos Research Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Equos Research Co Ltd filed Critical Equos Research Co Ltd
Priority to JP2016006972A priority Critical patent/JP6836100B2/ja
Publication of JP2017129909A publication Critical patent/JP2017129909A/ja
Application granted granted Critical
Publication of JP6836100B2 publication Critical patent/JP6836100B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/656Interaction with payloads or external entities
    • G05D1/686Maintaining a relative position with respect to moving targets, e.g. following animals or humans
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/243Means capturing signals occurring naturally from the environment, e.g. ambient optical, acoustic, gravitational or magnetic signals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/617Safety or protection, e.g. defining protection zones around obstacles or avoiding hazards
    • G05D1/622Obstacle avoidance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2109/00Types of controlled vehicles
    • G05D2109/10Land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2111/00Details of signals used for control of position, course, altitude or attitude of land, water, air or space vehicles
    • G05D2111/10Optical signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Description

本発明は、移動体に関し、特に、障害物に遭遇した場合にも、ユーザの前方にて、ユーザの邪魔にならないように、ユーザに追従できる移動体に関するものである。
特許文献1には、周囲環境に基づいて、ユーザとの位置関係を決定し、その決定した位置関係に基づいて、ユーザのそばについて自律的に移動する自律移動装置が開示されている。この自律移動装置によれば、ユーザの追尾に加えて、追尾以外の移動形態をとることが可能となるので、ユーザの前方にて、ユーザに追従しつつ移動することができる。
特開2007−316924号公報
しかしながら、特許文献1の自律移動装置では、ユーザの前方にてユーザに追従する場合、例えば、ユーザが行き止まり等の障害物に近づいていくと、当該移動装置は、ユーザに先駆けて障害物に近づくので、ユーザと障害物との間に挟まって、却ってユーザの動きを邪魔してしまうという問題点があった。
本発明は、上述した問題点を解決するためになされたものであり、障害物に遭遇した場合にも、ユーザの前方にて、ユーザの邪魔にならないように、ユーザに追従できる移動体を提供することを目的としている。
この目的を達成するために本発明の移動体は、ユーザの前方において、ユーザに追従するものであって、当該移動体を移動させる移動手段と、ユーザを検知するユーザ検知手段と、前記ユーザ検知手段により検知されたユーザの情報に基づいて、前記移動手段を制御して、当該移動体を移動させる移動制御手段と、周辺の環境を認識する周辺環境認識手段と、前記ユーザ検知手段により検知されたユーザの情報に基づくユーザの位置および向きから算出されたユーザの進路に前記周辺環境認識手段により認識された障害物があると判断した場合、その障害物を回避した回避経路であって前記ユーザの位置を始点とした円弧状の回避経路を算出する経路算出手段とを備え、前記移動制御手段は、前記経路算出手段によって回避経路が算出され、当該移動体がその回避経路上に位置する場合、その回避経路を空けるように当該移動体を移動させるものである。
本発明の別の移動体は、ユーザの前方において、ユーザに追従するものであって、当該移動体を移動させる移動手段と、ユーザを検知するユーザ検知手段と、前記ユーザ検知手段により検知されたユーザの情報に基づいて、前記移動手段を制御して、当該移動体を移動させる移動制御手段と、周辺の環境を認識する周辺環境認識手段と、前記ユーザ検知手段により検知されたユーザの情報に基づくユーザの位置および向きから算出されたユーザの進路に前記周辺環境認識手段により認識された障害物があると判断した場合、その障害物を回避した回避経路であって前記ユーザの位置を始点とした円弧状の回避経路を算出する経路算出手段とを備え、前記移動制御手段は、前記経路算出手段によって円弧状のものとして算出された前記回避経路の半径が第2所定値以下である場合であって、その回避経路をユーザが移動する場合には、ユーザの移動に合わせ、ユーザと当該移動体との所定の相対角度を保つように当該移動体をその場で回転させることで、当該移動体をユーザに追従させるものである。
請求項1の移動体によれば、移動制御手段は、ユーザ検知手段により検知されたユーザの情報に基づくユーザの位置および向きから算出されたユーザの進路に、周辺環境認識手段により認識された障害物があると判断した場合、その障害物を回避した回避経路であって、ユーザの位置を始点とした円弧状の回避経路が算出され、当該移動体がその回避経路上に位置する場合、その回避経路を空けるように当該移動体を移動させる。即ち、ユーザの進路に障害物があると判断した場合、当該移動体はユーザの位置および障害物の位置に応じた回避経路を塞がないように移動する。よって、ユーザが、例えば行き止まり等の障害物に近づいた後、その障害物を回避した回避経路を進もうとした場合、当該移動体はかかる回避経路を塞がないように移動する。従って、当該移動体は、障害物に遭遇した場合にも、ユーザの前方にて、ユーザの邪魔にならないように、ユーザに追従できるという効果がある。また、回避経路が円弧状に形成されることで、複雑な曲線や直線の組合せで構成する場合に比べて容易に算出できると共に、ユーザにとって自然で且つスムーズな経路となるので、回避経路を進行するユーザの負担を軽減できるという効果もある。
請求項2の移動体によれば、請求項の奏する効果に加え、次の効果を奏する。経路算出手段は、円弧状のものとして算出された経路のうち、その半径が最も大きいものを、障害物の回避経路とする。よって、ユーザにとって移動方向の変化が最も緩やかな経路を回避経路とできるので、その分、ユーザによる障害物の回避動作に伴う動作負担を軽減できるという効果がある。
請求項3の移動体によれば、請求項1又は2の奏する効果に加え、次の効果を奏する。移動制御手段は、障害物の回避経路を空けるように当該移動体を移動させる場合に、当該移動体を障害物から第1所定値以上離れた位置に停止させる。よって、ユーザが、例えば行き止まり等の障害物に遭遇した場合にも、障害物と当該移動体との間には第1所定値以上の間隔が保たれるので、障害物の回避経路を、ユーザにとって十分に確保できるという効果がある。なお、第1所定値としては、ユーザの通過に支障を来さない長さであり、例えばユーザの肩幅または胴体の厚さに若干のマージン(例えば50cm)を加えた長さを例示できる。
請求項4の移動体によれば、請求項1から3のいずれかの奏する効果に加え、次の効果を奏する。円弧状のものとして算出された回避経路の半径が第2所定値以下である場合には、回避経路は当該移動体の位置を中心とした円弧に形成される。よって、移動制御手段は、その回避経路をユーザが移動する場合、ユーザの移動に合わせ、ユーザと当該移動体との所定の相対角度を保つように当該移動体をその場で回転させることで、当該移動体をユーザに追従させる。これにより、周囲に障害物が迫った状況下においても、回避経路を塞ぐことなく、当該移動体をユーザに追従させることができるという効果がある。この際、当該移動体がユーザと当該移動体との所定の相対角度を保つように回転するので、ユーザに対して、当該移動体が自身に対し追従移動していることを確認させることができるという効果がある。なお、第2所定値としては、例えば1.0mを例示できる。或いは、第2所定値として、例えばユーザの肩幅または胴体の厚さに若干のマージン(例えば50cm)を加えた長さを例示することもできる。
請求項5の移動体によれば、請求項1からのいずれかの奏する効果に加え、次の効果を奏する。移動制御手段は、当該移動体と周辺環境認識手段により認識された障害物との間隔が第2所定値以下の第3所定値未満である場合には、当該移動体によるユーザの追従制御を停止する。当該移動体と障害物との間隔が第3所定値未満であれば、その間をユーザが通過しようとすると、ユーザが当該移動体や障害物に接触したり、或いはユーザに追従しようとする当該移動体がユーザや障害物に衝突したりして支障を来す。よって、かかる場合に、移動制御手段は、当該移動体によるユーザの追従制御を停止するので、当該移動体による無理なユーザ追従を防止できるという効果がある。なお、第3所定値としては、ユーザが移動する場合に最低限必要となる間隔を例示できる。具体的には、ユーザの肩幅や胴体の厚さを例示できる。
請求項6の移動体によれば、請求項1からのいずれかの奏する効果に加え、次の効果を奏する。一般に、人が移動する場合、その経路には、肩幅または胴体の厚み等の一定の幅が必要となる。ここで、移動制御手段は、ユーザの進路および回避経路が所定幅を有するものとして当該移動体の移動制御を行うので、ユーザが障害物や当該移動体と接触することなく移動できる進路や回避経路を確保できるという効果がある。なお、所定幅としては、例えばユーザの肩幅または胴体の厚さに若干のマージン(例えば50cm)を加えた長さを例示できる。
請求項7の移動体によれば、移動制御手段は、ユーザ検知手段により検知されたユーザの情報に基づくユーザの位置および向きから算出されたユーザの進路に、周辺環境認識手段により認識された障害物があると判断した場合、その障害物を回避した回避経路であって、ユーザの位置を始点とした円弧状の回避経路が算出され、その回避経路の半径が第2所定値以下である場合には、回避経路は当該移動体の位置を中心とした円弧に形成される。よって、移動制御手段は、その回避経路をユーザが移動する場合、ユーザの移動に合わせ、ユーザと当該移動体との所定の相対角度を保つように当該移動体をその場で回転させることで、当該移動体をユーザに追従させる。これにより、周囲に障害物が迫った状況下においても、回避経路を塞ぐことなく、当該移動体をユーザに追従させることができるという効果がある。この際、当該移動体がユーザと当該移動体との所定の相対角度を保つように回転するので、ユーザに対して、当該移動体が自身に対し追従移動していることを確認させることができるという効果がある。また、回避経路が円弧状に形成されることで、複雑な曲線や直線の組合せで構成する場合に比べて容易に算出できると共に、ユーザにとって自然で且つスムーズな経路となるので、回避経路を進行するユーザの負担を軽減できるという効果もある。なお、第2所定値としては、例えば1.0mを例示できる。或いは、第2所定値として、例えばユーザの肩幅または胴体の厚さに若干のマージン(例えば50cm)を加えた長さを例示することもできる。
本発明の一実施形態における移動体およびユーザの外観図である。 移動体の電気的構成を示すブロック図である。 メイン処理のフローチャートである。 (a)はユーザの進行経路と回避経路とを示す図であり、(b)はユーザの進行経路と左右の回避経路とを示す図である。 (a)は移動体の制御モードが「前方追従モード」における、ユーザの回避経路と移動体の動きとを示す図であり、(b)は移動体の制御モードが「ターンモード」における、ユーザの回避経路と移動体の動きとを示す図である。 (a)は移動体の制御モードが「ターンモード」に設定された直後における、移動体とユーザとの位置関係を示す図であり、(b)は移動体の制御モードが「ターンモード」に移行し、ユーザが移動体の周囲を歩行している場合における、移動体とユーザとの位置関係を示す図である。 移動体の制御モードが「被補助モード」における、移動体とユーザとの位置関係を示す図である。
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。まず、図1を参照して、本実施形態における移動体1の構成について説明する。図1は、移動体1およびユーザ2の外観図である。移動体1は、ユーザ2の前方にて、ユーザ2に対し適切な位置に移動して、ユーザ2に追従できる装置として機能する。なお、移動体1の移動範囲である「ユーザ2の前方」とは、例えばユーザ2の前方であって、ユーザ2を中心とする180度の範囲である。或いは、ユーザ2の視界の範囲内としてもよい。
図1に示すように、移動体1は、本体部11と、制御部12と、ユーザ認識センサ13と、周辺認識センサ14と、車輪15と、表示部16とを有して構成されている。本体部11は、略直方体状に形成され、本体部11内には制御部12が格納される。
制御部12は、移動体1の各部を制御するための装置であり、ユーザ認識センサ13と、周辺認識センサ14とから取得した情報をもとに、移動体1の移動速度および移動方向を決定し、それに基づく移動指示を駆動部25(図2参照)を介して、各車輪15に対して行うものである。
ユーザ認識センサ13は、ユーザ2の画像を取得するカメラで構成され、本体部11の側面に設けられる。図1における2点鎖線で描いた三角形のエリアが、ユーザ認識センサ13の検出範囲である。なお、ユーザ認識センサ13の上下位置は、必ずしも固定ではなく、例えば、表示部16と本体部11との間で変更可能に構成して、ユーザ2の身長によらず、ユーザ2全体の画像が適切に取得できるようにしてもよい。
ユーザ認識センサ13は、ユーザ2の画像を取得すると、これを制御部12へ送信する。制御部12は、ユーザ認識センサ13で取得された画像を解析し、ユーザ2の位置とユーザ2が向いている方向とを算出する。このユーザ2の位置およびユーザ2が向いている方向は、移動体1の中心Cを原点(0,0)とした座標系で示す値とされる(以下「移動体座標系」と称す)。なお、ユーザ認識センサ13の水平方向の位置は、移動体1の中心Cからズレているので、制御部12は、その距離差を補正した上でユーザ2の位置を算出する。また、制御部12は、ユーザ認識センサ13で取得された画像を解析してユーザ2の両肩を検出し、その両肩間の距離、即ち肩幅を算出する。
周辺認識センサ14は、移動体1の周辺画像を取得するものであり、複数のカメラで構成され(本実施形態では16個のカメラ)、本体部11の周囲に等間隔に設置される。制御部12は、周辺認識センサ14により取得された移動体1の周辺画像から、ユーザ2の進行経路up(図4参照)上に存在する障害物を検出し、その位置を算出する。
車輪15は、全方位への移動が可能な全方位車輪で構成され、移動体1の下部に設置される。これにより、移動体1は、全方位への移動をスムーズに行うことができる。車輪15は、駆動部25のモータ(図示せず)によって回転し、移動体1を移動させる。本実施形態では、3つの車輪15が設けられるが、車輪15の数は、必ずしも3つに限られず、適宜の数を採用できる。
表示部16は、LCDなどのディスプレイを有し、ディスプレイへの表示によって情報をユーザ2に伝達する装置であり、移動体1の上部に設けられる。図1に示す通り、表示部16のディスプレイは、ユーザ2に対向する面に設けられる。即ち、表示部16のディスプレイは、ユーザ認識センサ13と同方向に向けて配設される。また表示部16のディスプレイは、タッチパネルとして構成され、ユーザ2による操作を入力可能に構成される。表示部16は、HMI部26(図2参照)を介して、ユーザ2からの指示を移動体1に入力し、また移動体1の状態や移動経路などをディスプレイに表示する。
図2を参照して、移動体1の電気的構成について説明する。図2は、移動体1の電気的構成を示すブロック図である。制御部12は、移動体1の各部を制御するための装置であり、図2に示す通り、CPU20、ROM21及びRAM22を備え、これらがバスライン23を介して入出力ポート24にそれぞれ接続されている。また、入出力ポート24には、ユーザ認識センサ13、周辺認識センサ14、駆動部25、HMI部26がそれぞれ接続されている。
CPU20は、バスライン23により接続された各部を制御する演算装置である。ROM21は、CPU20により実行される制御プログラム(例えば、図3のメイン処理)や固定値データ等を格納した書き換え不能な不揮発性メモリである。
RAM22は、CPU20が制御プログラム実行時に各種のワークデータやフラグ等を書き換え可能に記憶するためのメモリであり、ユーザ位置情報メモリ22aと、移動体位置情報メモリ22bと、障害物位置情報メモリ22cと、ユーザ幅メモリ22dと、ユーザ進行経路メモリ22eと、回避経路半径メモリ22fと、制御モードメモリ22gと、周辺環境情報メモリ22hとがそれぞれ設けられる。
ユーザ位置情報メモリ22aは、移動体1の移動制御で用いられるユーザ2の位置を記憶するメモリであり、X座標メモリ22a1とY座標メモリ22a2と方向メモリ22a3とを有する。X座標メモリ22a1、Y座標メモリ22a2、方向メモリ22a3の座標系は、いずれも前述した移動体座標系である。制御部12の電源投入時には、X座標メモリ22a1、Y座標メモリ22a2、方向メモリ22a3の値は、それぞれ「0」クリアされる。
ユーザ認識センサ13によってユーザ2の画像の取得が行われると、制御部12によってその画像が解析され、ユーザ2の位置およびユーザの向いている向きが算出される。X座標メモリ22a1にはユーザ2の位置のX座標が格納され、Y座標メモリ22a2にはユーザ2の位置のY座標が格納される。方向メモリ22a3には、ユーザ2が向いている方向(単位:ラジアン)が格納される。その後、X座標メモリ22a1、Y座標メモリ22a2及び方向メモリ22a3の各値は、必要に応じてユーザ2の位置を原点(0,0)とした座標系(以下「ユーザ座標系」と称す)に変換され(図3のS10)、移動体1の移動制御に用いられる。
移動体位置情報メモリ22bは、移動体1の移動制御で用いられる移動体1の位置を記憶するメモリであり、X座標メモリ22b1とY座標メモリ22b2とを有する。X座標メモリ22b1、Y座標メモリ22b2の座標系は、いずれも前述した移動体座標系である。制御部12の電源投入時には、X座標メモリ22b1、Y座標メモリ22b2の値は、それぞれ「0」クリアされる。また、後述する図3のメイン処理の開始時(S1)に、X座標メモリ22b1とY座標メモリ22b2の値とに、それぞれ「0」が格納される。その後、X座標メモリ22b1及びY座標メモリ22b2の値は、必要に応じてユーザ2の位置を原点(0,0)としたユーザ座標系に変換され(図3のS10)、移動体1の移動制御に用いられる。
障害物位置情報メモリ22cは、ユーザ進行経路メモリ22eに記憶される4つの頂点で示される帯状の領域(進行経路up(図4参照))に存在する、障害物の位置を記憶するメモリであり、X座標メモリ22c1とY座標メモリ22c2とを有する。X座標メモリ22c1、Y座標メモリ22c2の座標系は、いずれも前述した移動体座標系である。制御部12の電源投入時には、X座標メモリ22c1、Y座標メモリ22c2の値は、それぞれ「0」クリアされる。
周辺認識センサ14により移動体1の周辺画像の取得が行われると、制御部12はその移動体1の周辺画像から、ユーザ進行経路メモリ22eに記憶される4つの頂点で示される帯状の領域(進行経路up)に存在する障害物の位置を算出する。障害物が複数検出された場合は、それら障害物の位置と、ユーザ位置情報メモリ22aの値との距離が最も小さな障害物を選択する。X座標メモリ22c1には、その障害物の位置のX座標が格納され、Y座標メモリ22c2には、その障害物の位置のY座標が格納される。
本実施形態においては、障害物の検出を行う前にX座標メモリ22c1、Y座標メモリ22c2の値に、それぞれ「0」が設定される(メイン処理(図3)のS2)。これにより障害物位置情報メモリ22cの各値は、移動体1の位置を記憶する移動体位置情報メモリ22bの各値と同じ値となる。よって、障害物の検出が行われた後に、X座標メモリ22c1、Y座標メモリ22c2の値が共に「0」である場合は、制御部12は、障害物が検出されていないと判断する。なお、X座標メモリ22c1及びY座標メモリ22c2の値は、その後、必要に応じてユーザ2の位置を原点(0,0)としたユーザ座標系に変換され(図3のS10)、移動体1の移動制御に用いられる。
ユーザ幅メモリ22dは、ユーザ2の肩幅を記憶するメモリである。制御部12の電源投入時には、ユーザ幅メモリ22dの値は「0」クリアされる。ユーザ認識センサ13によってユーザ2の画像が取得されると、制御部12によって、その画像が解析され、ユーザ2の両肩が検出される。そして、両肩間の長さが算出され、その値がユーザ幅メモリ22dに格納される。ユーザ幅メモリ22dの値は、ユーザ2の進行経路upや回避経路apの幅wpとして使用される(図4参照)。
ユーザ進行経路メモリ22eは、ユーザ2の進行経路upの帯状の領域を示す4つの頂点(Uplu,Upru,Upfl,Upfr)の座標(図4参照)を記憶するメモリである。制御部12の電源投入時に、ユーザ進行経路メモリ22eの4つの頂点の座標には「0」が設定され、ユーザ2の進行経路upの領域が未だ算出されていないことを示す。ユーザ認識センサ13より、ユーザ2の位置がユーザ位置情報メモリ22aに格納され、ユーザ2の肩幅がユーザ幅メモリ22dに格納された後、制御部12によって、ユーザ位置情報メモリ22aの値とユーザ幅メモリ22dの値とから、ユーザ2の進行経路upの領域が算出される。その算出されたユーザ2の進行経路upの帯状の領域を示す4つの頂点の座標(Uplu,Upru,Upfl,Upfr)が、ユーザ進行経路メモリ22eに格納される。
回避経路半径メモリ22fは、ユーザ2の進行経路up上に存在する、障害物を回避するための回避経路apの半径を記憶するメモリである。本実施形態では、回避経路apは円弧状の経路して算出される。制御部12の電源投入時には、回避経路半径メモリ22fの値は「0」クリアされる。障害物位置情報メモリ22cの値から、ユーザ2の進行経路up上に障害物が存在すると判断された場合、制御部12は、その障害物位置情報メモリ22cの値と、ユーザ位置情報メモリ22aの値と、ユーザ幅メモリ22dの値とから、円弧状の回避経路apを算出する。その円弧の半径が回避経路半径メモリ22fへ格納される。なお、回避経路apの半径は、回避経路apが右回転の円弧状の場合に正の値として記憶され、左回転の円弧状の場合に負の値として記憶される。
制御モードメモリ22gは、移動体1の制御モードを記憶するためのメモリである。移動体1の制御モードには「前方追従モード」、「ターンモード」、「被補助モード」が設けられている。制御部12の電源投入時には、制御モードメモリ22gの値に「被補助モード」が設定される。
「前方追従モード」は、移動体1がユーザ2の前方にて、ユーザ2に対して適切な位置に移動して、ユーザ2に追従するモードである。ユーザ2の進行経路up上に障害物が存在しない場合や、回避経路半径メモリ22fの値が第2所定値より大きい場合は、制御モードメモリ22gに「前方追従モード」が設定される。
「ターンモード」は、移動体1とユーザ2との相対角度を保ったまま、移動体1をその場で回転移動させて、ユーザ2に追従させるモードである。回避経路半径メモリ22fの値が第2所定値以下で、かつ移動体位置情報メモリ22bの値と、障害物位置情報メモリ22cとの距離の値が第3所定値以上の場合、制御モードメモリ22gに「ターンモード」が設定される。
「被補助モード」は、移動体1を停止させた後に、ユーザ2の手動操作などによって、移動体1を移動させるモードである。移動体位置情報メモリ22bの値と、障害物位置情報メモリ22cの値との距離が第3所定値未満である場合、即ち、移動体1と障害物とが余りに接近した状態である場合に、制御モードメモリ22gに「被補助モード」が設定される。
なお、第2所定値および第3所定値としては、例えばいずれも1.0mを例示できる。かかる場合、回避経路apの半径(回避経路半径メモリ22fの値)が、1.0mより大きければ「前方追従モード」とされ、回避経路apの半径が1.0mであれば「ターンモード」とされ、更に回避経路apの半径が1.0m未満であれば「被補助モード」とされる。
また、これら第2所定値、第3所定値の各値は、必ずしもこれに限られるものではなく、例えばユーザ2の肩幅(ユーザ幅メモリ22dの値)に応じて変化する値としても良い。具体的には、ユーザ2の肩幅に、ある程度のマージン(例えば40〜50cm)を加えたものを第2所定値とし、ユーザ2の肩幅に小さめのマージン(例えば20〜50cm)を加えたものを第3所定値とするようにしても良い。更に、第2所定値と第3所定値とは、「第2所定値≧第3所定値」の関係を維持していれば、本実施例のように同じ値であっても良いし、異なる値であっても良い。第2所定値と第3所定値とが異なる値で構成されれば、「ターンモード」へ移行する範囲が大きくなる。
周辺環境情報メモリ22hは、周辺認識センサ14によって取得された、移動体1の周辺画像を記憶するメモリ領域である。制御部12の電源投入時には、周辺環境情報メモリ22hの全領域に「無効画像(具体的には「0」)」が設定される。周辺認識センサ14によって移動体1の周辺画像が取得されると、その周辺画像が周辺環境情報メモリ22hに記憶される。
駆動部25は、移動体1を移動させるための装置であり、車輪15および車輪15の駆動源となるモータ(図示せず)などから構成される。制御部12から移動信号が駆動部25へ入力されると、入力された信号に基づいてモータが回転し、当該モータの回転が動力となって車輪15が駆動し、移動体1を動作させる。
HMI部26は、ユーザ2へ情報を出力すると共に、ユーザ2による移動体1への指示を入力するためのインタフェイスである。前述した通り、ディスプレイとタッチパネルとを有した表示部16で構成される。HMI部26は、制御部12から入力された制御信号に応じて表示部16のディスプレイに情報を出力して表示する。一方、ユーザ2から表示部16のタッチパネルを経由してHMI部26に指示が入力されると、HMI部26は、当該入力に応じた制御信号を制御部12に出力する。移動体1が「被補助モード」にある場合に、ユーザ2はタッチパネルを介して移動体1を所望の位置に移動させる。
なお、ディスプレイ及びタッチパネルと共に、或いはこれらに代えて、音声を出力するスピーカや音声を入力するマイクをHMI部26に設けるようにしてもよい。この場合には、ディスプレイへの表示と共に或いはディスプレイへの表示に代えて、スピーカから出力される音声によって移動体1の情報がユーザ2に出力され、またタッチパネルへの入力と共に或いはタッチパネルへの入力に代えて、ユーザ2が発する音声をマイクから入力することによって移動体1への指示を行うことができる。
次に、図3から図7を参照して、制御部12のCPU20で実行される処理について説明する。図3は、メイン処理のフローチャートである。メイン処理により、移動体1は、ユーザ2の進行経路upや、移動体1と障害物との距離、ユーザ2の回避経路apなどを算出し、それらに基づいて制御モードを設定する。制御モードが設定されると、移動体1は、その設定された制御モードに基づいて、移動体1の移動制御を行う。なお、メイン処理は100ms毎のインターバル割り込み処理により繰り返し実行される。
メイン処理では、まず移動体位置情報メモリ22bのX座標メモリ22b1と、Y座標メモリ22b2とにそれぞれ「0」を設定し(S1)、障害物位置情報メモリ22cのX座標メモリ22c1と、Y座標メモリ22c2とにそれぞれ「0」を設定する(S2)。
次に、ユーザ認識センサ13からユーザ2の位置を取得し、そのX座標をユーザ位置情報メモリ22aのX座標メモリ22a1に、Y座標をY座標メモリ22a2に、ユーザ2が向いている方向を方向メモリ22a3に、それぞれ保存する(S3)。具体的には、ユーザ認識センサ13から、ユーザ2を含む画像を取得する。制御部12は、その画像をエッジ抽出およびパターン認識によってユーザ2を認識し、その位置と、ユーザ2が向いている方向とを取得する。このように取得されたユーザ2の位置をユーザ位置情報メモリ22aのX座標メモリ22a1、Y座標メモリ22a2に、ユーザ2が向いている方向を方向メモリ22a3にそれぞれ保存する。
次に、ユーザ認識センサ13からユーザ2の肩幅を取得し、ユーザ幅メモリ22dへ保存する(S4)。具体的には、ユーザ認識センサ13から、ユーザ2を含む画像を取得する。制御部12は、その画像をエッジ抽出およびパターン認識によって、ユーザ2の両肩を認識し、その両肩間の距離、即ちユーザ2の肩幅を算出する。算出された肩幅をユーザ幅メモリ22dへ保存する。なお、肩幅は、ユーザ位置情報メモリ22aの方向メモリ22a3の値に応じて、適宜補正した上で、ユーザ幅メモリ22dへ保存するようにしてもよい。
その後、周辺認識センサ14から移動体1の周辺画像を取得し、周辺環境情報メモリ22hへ保存する(S5)。また、ユーザ位置情報メモリ22aの値とユーザ幅メモリ22dの値とから、ユーザ2の進行経路upを算出し、ユーザ進行経路メモリ22eへ保存する(S6)。
ここで、図4(a)を参照して、ユーザ2の進行経路upの算出およびユーザ進行経路メモリ22eへの値の保存(4座標の保存)について説明する。図4(a)は、ユーザ2の進行経路upと回避経路apとを示す図である。図4(a)において、ユーザ2の位置をPu(Xu,Yu)と表し、移動体1の位置をPm(Xm,Ym)と表す。図4(a)は、移動体1と、ユーザ2とが、三方を壁に囲まれた領域を移動している状態である。
進行経路upは、経路の始点が位置Puで、幅wp、長さlpの矩形の領域として算出される。進行経路upの幅wpは、ユーザ幅メモリ22dに記憶されるユーザ2の肩幅とされる。この幅は、位置Puを中心に左右それぞれwp/2ずつ設けられる。進行経路upの方向は、ユーザ2が向いている方向、即ちユーザ位置情報メモリ22aの方向メモリ22a3の値の方向とされる。更に、進行経路upの長さlpとしては第4所定値が設定される。
なお、本実施形態において、第4所定値としては例えば2.0mを例示できる。しかし、必ずしもこれに限られるものではなく、第4所定値をユーザ2の歩行速度に応じて変化する値としても良い。具体的には、ユーザ2の歩行速度が速い場合には第4所定値を大きく、歩行速度が遅い場合には第4所定値を小さくしても良い。また、ユーザ2の歩行速度にある係数を乗じた値を第4所定値としても良い。更に、HMI部26を介して任意に設定した値を、第4所定値としてもよい。
このように進行経路upは、位置Pu(ユーザ位置情報メモリ22aのX座標メモリ22a1、Y座標メモリ22a2の値)と、幅wp(ユーザ幅メモリ22dの値)と、ユーザ2が向いている方向(ユーザ位置情報メモリ22aの方向メモリ22a3)とによって算出される。これは、ユーザ2が、現在のユーザ2の向いている方向のまま移動した場合の、ユーザ2の進行経路upである。このように算出された、進行経路upの帯状の領域の4つの頂点(Uplu,Upru,Upfl,Upfr)の座標(4座標)が、ユーザ進行経路メモリ22eに保存される。
図3に戻る。S6の処理後、ユーザ位置情報メモリ22aの値とユーザ進行経路メモリ22eの値と周辺環境情報メモリ22hの値とから、ユーザ2の進行経路up上に存在する、ユーザ2に最も近い障害物を検索し、その障害物の位置を障害物位置情報メモリ22cへ保存する(S7)。
ここで、図4(a)を参照して、障害物の位置の取得について説明する。図4(a)においては、ユーザ2の進行方向に壁が存在する。この壁の一部は、ユーザ2の進行経路upの領域内に存在している。そのため、ユーザ2が、現在のユーザ2の向いている方向のまま歩行すると、やがてこの壁に衝突する。即ち、この壁がユーザ2の歩行に対する障害物となる。従って、この場合、進行経路upの領域内に含まれている、壁の面に存在する全ての座標が障害物の位置の候補となる。
このように障害物の位置の候補が複数存在する場合は、障害物の位置とユーザ2の位置Puとの距離が最も小さいものが、障害物の位置とされる。即ち、現在のユーザ2の向いている方向のまま歩行して、最も早くユーザ2と接触する位置の座標が、障害物の位置とされる。図4(a)においては、進行経路upの領域内に存在する壁の面のうち、右端の位置Po(Xo,Yo)が障害物の位置となる。この障害物の位置のX座標が障害物位置情報メモリ22cのX座標メモリ22c1に、Y座標が障害物位置情報メモリ22cのY座標メモリ22c2にそれぞれ保存される。
一方、進行経路upの領域内に障害物が存在しない場合は、障害物位置情報メモリ22cのX座標メモリ22c1及びY座標メモリ22c2には座標が保存されないため、X座標メモリ22c1、Y座標メモリ22c2の値はそれぞれ、図3のS2の処理で設定された「0」のままとなる。
このように本実施形態では、ユーザ2の進行経路upの領域内でのみ、障害物の検索を行う。よって、ユーザ2の移動に対して、不要な領域への障害物の検索を行うことがないので、障害物検索の制御部12の処理負荷を小さくできる。
図3に戻る。S7の処理後、障害物位置情報メモリ22cの値が有効かを確認する(S8)。本実施形態において、制御部12は、障害物位置情報メモリ22cのX座標メモリ22c1、Y座標メモリ22c2のいずれかの値が「0」以外である場合、即ち障害物の位置が取得された場合には、有効であると判断する。
S8において、障害物位置情報メモリ22cの値が無効であると判断された場合(S8:No)、即ち障害物位置情報メモリ22cのX座標メモリ22c1、Y座標メモリ22c2の双方の値が「0」である場合には、ユーザ2の進行経路up上には何ら障害物が無いので、ユーザ2および移動体1の移動に支障はない。よって、かかる場合には、制御モードメモリ22gに「前方追従モード」を設定する(S9)。
一方、障害物位置情報メモリ22cの値が有効と判断された場合は(S8:Yes)、ユーザ位置情報メモリ22a、移動体位置情報メモリ22b、障害物位置情報メモリ22c、ユーザ進行経路メモリ22eの各値をそれぞれユーザ座標系に変換する(S10)。ユーザ座標系は、前述した通り、ユーザ2の位置Pu(Xu,Yu)を原点(0,0)とした座標系である。ユーザ座標系に変換するのは、後のS12の処理で行うユーザ2の回避経路apの算出を、ユーザ2の位置を中心として行うためである。
S10の処理後、移動体位置情報メモリ22bの値と、障害物位置情報メモリ22cの値との距離が、前述した第3所定値以上か確認する(S11)。かかる距離が第3所定値以上の場合は(S11:Yes)、ユーザ位置情報メモリ22aの値と、障害物位置情報メモリ22cの値と、ユーザ幅メモリ22dの値とから、円弧状のユーザ2の回避経路apを複数算出する。そして、算出された円弧の半径が最も大きな回避経路apの半径を、回避経路半径メモリ22fへ保存する(S12)。
ここで、図4を参照して、S12の処理における、ユーザ2の回避経路apの算出について説明する。図4(a)の回避経路apは、ユーザ2が進行経路upに存在する障害物Poを回避して移動するための経路である。回避経路apは、経路の始点が位置Puで、幅wp、経路の中心部の円弧の長さがlp、円弧の中心が位置Oap、半径Rの円弧状に形成される。幅wpの大きさは、進行経路upと同じく、ユーザ幅メモリ22dの値、即ちユーザ2の肩幅である。この幅wpは、位置Puを中心に左右それぞれwp/2ずつ設けられる。また、長さlpの大きさも、進行経路upと同じく、前述の第4所定値とされる。制御部12は、回避経路apの半径Rを、障害物位置情報メモリ22cの値と、ユーザ位置情報メモリ22aの値と、ユーザ幅メモリ22dの値とから算出し、回避経路半径メモリ22fへ保存する。
回避経路apの半径Rの算出方法について説明する。まず、回避経路apの円弧の中心位置Oapを、位置Puから経路の中心部の円弧の長さがlp、かつ幅がwpの回避経路apが作成できる位置まで、ユーザ座標系のX軸上を正の方向(図4(a)では右方向)へ移動させ、その位置で回避経路apの領域を暫定的に作成する。
暫定的に作成された回避経路apの中心部の円弧と、障害物の位置Poとの最短距離dpを算出する。算出された最短距離dpが、ユーザ幅メモリ22dの値の1/2以上、即ちユーザ2の肩幅の1/2以上である場合は、その暫定的な回避経路apは障害物から十分に離れているので、もっと障害物に近づけた回避経路apを作成できる。即ち、かかる場合には、もっと半径の大きな、もっと進行方向の変化が緩やかな回避経路apを作成できる。回避経路apの半径が大きいほど、ユーザ2の進行方向の変化を小さくできるので、ユーザ2の移動負担を軽減できる。よって、かかる場合には、円弧の中心位置Oapをユーザ座標系のX軸上に更に正方向に移動させた上で、再び回避経路apの領域を暫定的に作成する。
再度、暫定的に作成された回避経路apの中心部の円弧と、障害物の位置Poとの最短距離dpを算出し、その最短距離dpがユーザ2の肩幅の1/2以上である場合は、更に円弧の中心位置Oapをユーザ座標系のX軸上に正方向に移動させる。以下、この処理を繰り返す。
最短距離dpがユーザ2の肩幅の1/2となった場合は、それを正規の回避経路apとする。よって、その時点の円弧の中心位置Oapと位置Puとの距離を、回避経路apの半径Rとして、回避経路半径メモリ22fへ保存する。図4(a)の回避経路apは、円弧の中心位置Oapがユーザ座標系のX軸上の正方向にあり、回避経路apが右回転の円弧状に形成されるので、その半径Rは、回避経路半径メモリ22fへ正の値として保存される。
一方、再度、暫定的に作成された回避経路apの最短距離dpがユーザ2の肩幅の1/2以下となった場合は、一つ前の処理で求めた回避経路apを、正規の回避経路apとする。よって、その場合には、一つ前の処理で求めた円弧の中心位置Oapと位置Puとの距離を、半径Rとして、回避経路半径メモリ22fへ保存する。これにより、円弧状の回避経路apのうち、最も大きな半径の回避経路apを算出できる。
図4(a)では、ユーザ2の右側の回避経路apを算出する例を挙げたが、ユーザ2の左側に対しても同様に回避経路apの半径Rを算出する。これについて、図4(b)を参照して説明する。図4(b)は、ユーザ2の進行経路upと左右の回避経路apl,aprとを示す図である。ユーザ2の前方の障害物の位置Poに対して、ユーザ2の右側の回避経路aprは、円弧の中心位置Oapr、半径Rrであり、回避経路aprの中心部の円弧と位置Poとの最短距離がdprである。同様に、ユーザ2の左側の回避経路aplは、円弧の中心位置Oapl、半径Rlであり、回避経路aplの中心部の円弧と位置Poとの最短距離がdplである。
半径Rr,Rlの算出方法は、前述した通りであるが、右側の回避経路aprを再計算する場合には、円弧の中心位置Oaprをユーザ座標系のX軸上の正方向(図4(b)の右方向)に移動していく。一方、左側の回避経路aplを再計算する場合には、円弧の中心位置Oaplをユーザ座標系のX軸上の負方向(図4(b)の左方向)に移動していく。なお、左側の回避経路aplは、円弧の中心位置Oaplがユーザ座標系のX軸上の負方向にあり、左回転の円弧状に形成されるので、その半径Rlは、回避経路半径メモリ22fへ負の値として保存される。また半径Rrの算出処理と、半径Rlの算出処理とは、同時に行ってもよいし、どちらか一方を先に行い、他方を後に行ってもよい。
最終的に算出された、半径Rrと、半径Rlとの大きさを比較し、大きい方を半径Rとし、回避経路半径メモリ22fへ保存する。即ち、算出され得る半径Rのうち、最も大きな半径が回避経路半径メモリ22fへ保存される。半径Rrと、半径Rlとの大きさが同じであった場合は、右側または左側の回避経路apのうち、どちらを選択するかを、制御部12にあらかじめ設定しておいてもよい。また、その回避経路apに至るまでの進行状況から、右側または左側の回避経路apのいずれかを選択するようにしても良い。
このように回避経路apの算出に当たっては、回避経路apの円弧の中心位置Oapを、ユーザ2の位置Puから遠ざけながら、回避経路apの領域を暫定的に作成していく。よって、最終的に算出された、回避経路apにおける中心部の半径Rは、回避経路apの中で最も大きな半径となる。これにより、ユーザ2にとって移動方向の変化が最も緩やかな経路を回避経路apとできるので、その分、ユーザ2による障害物の回避動作に伴う動作負担を軽減できる。
図3に戻る。S12の処理後、回避経路半径メモリ22fの値が第2所定値以下か確認する(S13)。回避経路半径メモリ22fの値が第2所定値以下の場合には(S13:Yes)、移動体1と障害物との距離が狭く「前方追従モード」を維持できないので、制御モードメモリ22gに「ターンモード」を設定する(S14)。一方、回避経路半径メモリ22fの値が第2所定値より大きい場合には(S13:No)、回避経路apを算出したものの、移動体1と障害物との間の距離は十分に確保されており、「前方追従モード」を維持できる。よって、かかる場合には制御モードメモリ22gに「前方追従モード」を設定する(S9)。
また、S11の処理において、移動体位置情報メモリ22bの値と、障害物位置情報メモリ22cの値との距離が、第3所定値未満の場合は(S11:No)、移動体1と障害物との距離は極めて狭く、移動体1の追従移動(自律移動)を継続していては、移動体1が障害物やユーザ2に接触したり衝突しかねない。よって、かかる場合には、制御モードメモリ22gに「被補助モード」を設定して(S15)、移動体1の追従移動(自律移動)を停止する。S9、S14及びS15の処理後、制御モードメモリ22gの値に応じた移動体1に移動制御を行う(S16)。
なお、S15の処理で、移動体1の制御モードとして「被補助モード」を設定する場合には、移動体1をその位置で停止させて「被補助モード」とするものの他、移動体1を障害物から十分に離れた位置まで移動させた後に停止させて「被補助モード」とするようにしても良い。なお、障害物から十分に離れた位置としては、移動体1と障害物との間をユーザ2が余裕をもって通過できる位置(距離)であり、ユーザ2の肩幅または胴体の厚さに若干のマージン(例えば50cm)を加えた距離を例示できる。
次に、図5から図7を参照して、制御モードメモリ22gの値に応じた移動体1の移動制御について説明する。図5(a)は、移動体1の制御モードが「前方追従モード」における、ユーザ2の回避経路apと移動体1の動きとを示す図であり、図5(b)は、移動体1の制御モードが「ターンモード」における、ユーザ2の回避経路apと移動体1の動きとを示す図である。
図5(a)において、回避経路apは、半径R1、中心位置Oap1の円弧で形成され、障害物の位置Poと移動体1との距離はdomである。ここで、距離domは前述した第3所定値以上で、半径R1は前述した第2所定値よりも大きい。即ち、移動体1と障害物との距離がユーザ2の通過に十分なだけ確保され(第3所定値以上)、回避経路apの半径が大きい(第2所定値以上)と判断される場合は(図3中、S11:Yes、S13:No)、制御部12は制御モードメモリ22gに「前方追従モード」を設定する(図3中、S9)。制御モードメモリ22gの値が「前方追従モード」の場合は、移動体1はユーザ2の前方にて、ユーザ2に対し適切な位置に移動して、ユーザ2の追従移動を行う(図3中、S16)。
勿論、ユーザ2の進行経路up上に障害物が存在しない場合、即ち、図3のS8において障害物位置情報メモリ22cの値が有効でない場合も(図3中、S8:No)、制御部12は制御モードメモリ22gに「前方追従モード」を設定し(図3中、S9)、ユーザ2の前方において、ユーザ2の追従移動を行う。
図5(b)において、回避経路apは、半径R2、中心位置Oap2の円弧で形成される。ここで、距離domは第3所定値以上で、半径R2は第2所定値以下である。即ち、移動体1と障害物との距離はユーザ2の通過に十分なだけ確保される一方、回避経路apの半径R2が小さいと判断される。よって、その場合は(図3中、S11:Yes、S13:Yes)、制御部12は制御モードメモリ22gに「ターンモード」を設定する(図3中、S14)。
制御モードメモリ22gの値が「ターンモード」の場合は、移動体1は、その位置で回転移動を行う(図3中、S16)。即ち、移動体の位置Pmと、円弧の中心位置Oap2とが同じ位置になる。これにより、制御モードが「ターンモード」に設定された移動体1は、ユーザ2の回避経路apの移動に伴って、その場で回転しつつ、ユーザ2に対する追従移動を行う。
図6を参照して、移動体1の制御モードが「ターンモード」に設定された場合の、移動体1の回転移動について説明する。図6(a)は、移動体1の制御モードが「ターンモード」に設定された直後における、移動体1とユーザ2との位置関係を示す図であり、図6(b)は、移動体1の制御モードが「ターンモード」で、ユーザ2が移動体1の周囲を歩行している場合における、移動体1とユーザ2との位置関係を示す図である。制御モードが「ターンモード」の移動体1は、移動体1とユーザ2との相対角度を保つように、回転移動を行う。図6(a)において、移動体1とユーザ2との相対角度は、θumである。ここで、θumは、前述のユーザ座標系で算出された値である。
図6(b)において、位置Pu’は、図6(a)の時点におけるユーザ2の位置であり、位置Puは、位置Pu’から移動したある時点のユーザ2の位置である。ユーザ2の位置Pu’から位置Puへの移動に合わせて、移動体1は回転移動を行う。その結果、位置Puとユーザ2との相対角度は、図6(a)の時点と同じθumを維持する。つまり、制御モードが「ターンモード」に設定された場合、移動体1は、ユーザ2との相対角度θumを保ったまま、回転移動を行う。これにより、ユーザ2に対し移動体1の一部が常に対面するように回転移動することとなり、移動体1がX,Y座標に移動しなくても、ユーザ2は、移動体1が自身に対し追従移動していることを確認できる。
次に、図7を参照して、制御モードメモリ22gの値が「被補助モード」に設定された場合の移動体1の移動制御について説明する。図7は、移動体1の制御モードが「被補助モード」における、移動体1とユーザ2との位置関係を示す図である。
図7においては、移動体1と障害物との距離domは第3所定値未満である。即ち、移動体1と障害物との間隔が極めて狭く、ユーザ2がその間を通過できないと判断される。かかる場合は(図3中、S11:No)、制御部12は制御モードメモリ22gに「被補助モード」を設定する(図3中、S15)。すると、移動体1はユーザ2との追従移動(回転移動を含む)を停止し(図3中、S16)、ユーザ2による手動操作を受け付ける状態となる。かかる状態において、ユーザ2からHMI部26を介して、移動体1の移動指示が行われると、移動体1はその指示に応じて動作(移動)する。移動体1が障害物と極めて近い位置にある場合などは、かかるユーザ2による手動操作によって、移動体1を周囲に障害物のない、ユーザ2に対する追従制御が可能な位置まで移動することにより、再度、移動体1の追従移動(自律移動)が可能となる。
以上説明した通り、本実施形態の移動体1によれば、ユーザ認識センサ13により取得した、移動中のユーザ2の位置およびユーザ2が向いている方向から、ユーザ2の進行経路upを算出する。そして、周辺認識センサ14により取得した移動体1の周辺画像から、ユーザ2の進行経路up上に存在する障害物を検知した場合は、ユーザ2の位置を始点とした円弧状の、障害物を回避した回避経路apを算出する。回避経路apを円弧状に形成することにより、ユーザ2にとって自然で且つスムーズな移動経路となるので、回避経路apを進行するユーザ2の負担を軽減できる。また、回避経路apは円弧状に形成されるので、その円弧の中央部の半径を求めることで回避経路apを算出できる。よって、回避経路apを複雑な曲線や直線の組合せで構成する場合に比べ、容易に算出でき、制御部12の処理負荷を低くすることができる。
回避経路apの中央部の円弧と、ユーザ2の進行経路up上の障害物との最短距離は、ユーザ2の肩幅の1/2以上とされる。これにより、ユーザ2が回避経路apを移動する際、ユーザ2は障害物に接触することがない。
移動体と障害物との距離が、第3所定値未満の場合(即ちユーザ2の歩行スペースがない場合)は、移動体1によるユーザ2の追従移動を停止し、ユーザ2が移動体1の移動を指示する「被補助モード」に移行する。「被補助モード」において、ユーザ2が移動体1を障害物から離れた位置へ移動させることにより、移動体1と障害物との狭い間をユーザ2が移動する必要がなくなる。また「被補助モード」に移行することによって、移動体1による無理なユーザ追従を防止できる。よって、ユーザ2が移動体1や障害物に近づくことで起きうる、接触あるいは転倒を防ぐことができる。
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
本実施形態におけるユーザ2の幅は肩幅とした。しかし、必ずしもこれに限られるものではなく、例えば、ユーザ2の胴体の厚さや、そのほかの値を用いても良い。また、これを、どんなユーザ2に対しても適応される固定値(例えば120cm)としてもよい。固定値とした場合には、制御部12の制御負担を大幅に軽減できる。
ユーザ2の進行経路upの帯状の領域を示す値(ユーザ進行経路メモリ22eに記憶される値)としては、帯状の領域の4つの頂点座標とした。しかし、必ずしもこれに限られるものではなく、例えば、ユーザ2の進行経路upの領域の境界線を表す関数のパラメータを格納してもよい。
また移動体1と障害物との間隔が狭い場合に、必ずしも「被補助モード」や「ターンモード」とする必要は無く、かかる場合に、移動体1を障害物から十分に離れた位置まで移動させるように構成しても良い。なお、障害物から十分に離れた位置(距離)としては、移動体1と障害物との間をユーザ2が余裕をもって通過できる距離であり、ユーザ2の肩幅または胴体の厚さに若干のマージン(例えば50cm)を加えた距離を例示できる。
1 移動体
2 ユーザ
13 ユーザ認識センサ(ユーザ検知手段)
14 周辺認識センサ(周辺環境認識手段)
20 CPU(移動制御手段)
25 駆動部(移動手段)
ap 回避経路
up 進行経路

Claims (7)

  1. ユーザの前方において、ユーザに追従する移動体であって、
    当該移動体を移動させる移動手段と、
    ユーザを検知するユーザ検知手段と、
    前記ユーザ検知手段により検知されたユーザの情報に基づいて、前記移動手段を制御して、当該移動体を移動させる移動制御手段と、
    周辺の環境を認識する周辺環境認識手段と
    前記ユーザ検知手段により検知されたユーザの情報に基づくユーザの位置および向きから算出されたユーザの進路に前記周辺環境認識手段により認識された障害物があると判断した場合、その障害物を回避した回避経路であって前記ユーザの位置を始点とした円弧状の回避経路を算出する経路算出手段とを備え、
    前記移動制御手段は、前記経路算出手段によって回避経路が算出され、当該移動体がその回避経路上に位置する場合、その回避経路を空けるように当該移動体を移動させるものであることを特徴とする移動体。
  2. 前記経路算出手段は、円弧状のものとして算出された経路のうち、その半径が最も大きいものを、前記回避経路とするものであることを特徴とする請求項記載の移動体。
  3. 前記移動制御手段は、前記経路算出手段によって算出された回避経路を空けるように当該移動体を移動させる場合に、当該移動体を前記障害物から第1所定値以上離れた位置に停止させるものであることを特徴とする請求項1又は2に記載の移動体。
  4. 前記移動制御手段は、前記経路算出手段によって円弧状のものとして算出された回避経路の半径が第2所定値以下である場合であって、その回避経路をユーザが移動する場合には、ユーザの移動に合わせ、ユーザと当該移動体との所定の相対角度を保つように当該移動体をその場で回転させることで、当該移動体をユーザに追従させるものであることを特徴とする請求項1から3のいずれかに記載の移動体。
  5. 前記移動制御手段は、当該移動体と前記周辺環境認識手段により認識された障害物との間隔が第2所定値以下の第3所定値未満である場合には、当該移動体による前記ユーザの追従制御を停止するものであることを特徴とする請求項1からのいずれかに記載の移動体。
  6. 前記移動制御手段は、前記ユーザの進路および前記回避経路が所定幅を有するものとして当該移動体の移動制御を行うものであることを特徴とする請求項1からのいずれかに記載の移動体。
  7. ユーザの前方において、ユーザに追従する移動体であって、
    当該移動体を移動させる移動手段と、
    ユーザを検知するユーザ検知手段と、
    前記ユーザ検知手段により検知されたユーザの情報に基づいて、前記移動手段を制御して、当該移動体を移動させる移動制御手段と、
    周辺の環境を認識する周辺環境認識手段と、
    前記ユーザ検知手段により検知されたユーザの情報に基づくユーザの位置および向きから算出されたユーザの進路に前記周辺環境認識手段により認識された障害物があると判断した場合、その障害物を回避した回避経路であって前記ユーザの位置を始点とした円弧状の回避経路を算出する経路算出手段とを備え、
    前記移動制御手段は、前記経路算出手段によって円弧状のものとして算出された前記回避経路の半径が第2所定値以下である場合であって、その回避経路をユーザが移動する場合には、ユーザの移動に合わせ、ユーザと当該移動体との所定の相対角度を保つように当該移動体をその場で回転させることで、当該移動体をユーザに追従させるものであることを特徴とする移動体。
JP2016006972A 2016-01-18 2016-01-18 移動体 Active JP6836100B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016006972A JP6836100B2 (ja) 2016-01-18 2016-01-18 移動体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016006972A JP6836100B2 (ja) 2016-01-18 2016-01-18 移動体

Publications (2)

Publication Number Publication Date
JP2017129909A JP2017129909A (ja) 2017-07-27
JP6836100B2 true JP6836100B2 (ja) 2021-02-24

Family

ID=59394792

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016006972A Active JP6836100B2 (ja) 2016-01-18 2016-01-18 移動体

Country Status (1)

Country Link
JP (1) JP6836100B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020050494A1 (en) 2018-09-06 2020-03-12 Lg Electronics Inc. A robot cleaner and a controlling method for the same
KR102252033B1 (ko) * 2018-09-06 2021-05-14 엘지전자 주식회사 이동 로봇 및 그 제어방법
US11432697B2 (en) 2018-09-06 2022-09-06 Lg Electronics Inc. Robot cleaner and a controlling method for the same
JP7281720B2 (ja) * 2019-06-06 2023-05-26 パナソニックIpマネジメント株式会社 自律移動装置およびその制御方法
JP7450481B2 (ja) 2020-07-14 2024-03-15 本田技研工業株式会社 移動体制御装置、移動体、移動体制御方法、およびプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4440174B2 (ja) * 2004-07-07 2010-03-24 パナソニック株式会社 移動体の対象者同行方法及び移動体用対象者同行装置
JP4682973B2 (ja) * 2006-12-19 2011-05-11 トヨタ自動車株式会社 移動経路作成方法、自律移動体および自律移動体制御システム
JP4715787B2 (ja) * 2007-03-22 2011-07-06 トヨタ自動車株式会社 移動ロボット及びロボット移動制御方法
JP4697164B2 (ja) * 2007-03-22 2011-06-08 トヨタ自動車株式会社 移動ロボット及びロボット移動制御方法
JP2009151382A (ja) * 2007-12-18 2009-07-09 Toyota Motor Corp 移動体
JP4717105B2 (ja) * 2008-08-29 2011-07-06 株式会社日立製作所 自律移動ロボット装置及びかかる装置における飛び出し衝突回避方法
JP2011059905A (ja) * 2009-09-08 2011-03-24 Hiroshima Univ ロボット、制御プログラム、及び記録媒体
JP5633166B2 (ja) * 2010-03-23 2014-12-03 トヨタ自動車株式会社 ロボット、及びその制御方法

Also Published As

Publication number Publication date
JP2017129909A (ja) 2017-07-27

Similar Documents

Publication Publication Date Title
JP6836100B2 (ja) 移動体
JP6661745B2 (ja) 時系列グラフィック表示を用いた船舶衝突回避案内システム
JP4682973B2 (ja) 移動経路作成方法、自律移動体および自律移動体制御システム
JP2007316799A (ja) 学習機能をもつ自律移動ロボット
JP6604546B2 (ja) 移動体
JP2007310698A (ja) 無人車両
JP6104715B2 (ja) 経路生成方法と装置
JP6448804B2 (ja) 表示制御装置、表示装置および表示制御方法
JP2017120495A (ja) 移動体
JP2008059218A (ja) 自律走行ロボットの自己位置回復方法
US20140297066A1 (en) Remote control system
US11642791B2 (en) Autonomous mobile robot and control program for autonomous mobile robot
JP2006113687A (ja) 自律移動システム
JP2007328486A (ja) 移動ロボット
JP6025814B2 (ja) 操作装置および自律移動システム
JP6540917B1 (ja) 自走装置、自走装置の走行制御方法及び走行制御プログラム
JP5314788B2 (ja) 自律移動装置
Mujahed et al. Safe Gap based (SG) reactive navigation for mobile robots
CN113885506A (zh) 机器人避障方法、装置、电子设备及存储介质
JP4697164B2 (ja) 移動ロボット及びロボット移動制御方法
JP5321214B2 (ja) 移動体及びその制御方法
JP2017124659A (ja) 駐車支援システム、駐車支援方法及びプログラム
US11531344B2 (en) Autonomous running device, running control method for autonomous running device, and running control program of autonomous running device
JP5540888B2 (ja) 狭路走行支援装置、狭路走行支援方法
WO2023127337A1 (ja) 情報処理装置、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200413

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200714

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201014

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20201014

C11 Written invitation by the commissioner to file amendments

Free format text: JAPANESE INTERMEDIATE CODE: C11

Effective date: 20201027

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20201201

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20201208

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210119

R150 Certificate of patent or registration of utility model

Ref document number: 6836100

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150