JP4621073B2 - ロボット制御装置 - Google Patents

ロボット制御装置 Download PDF

Info

Publication number
JP4621073B2
JP4621073B2 JP2005149993A JP2005149993A JP4621073B2 JP 4621073 B2 JP4621073 B2 JP 4621073B2 JP 2005149993 A JP2005149993 A JP 2005149993A JP 2005149993 A JP2005149993 A JP 2005149993A JP 4621073 B2 JP4621073 B2 JP 4621073B2
Authority
JP
Japan
Prior art keywords
robot
task
cost
plan
movement plan
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.)
Expired - Fee Related
Application number
JP2005149993A
Other languages
English (en)
Other versions
JP2006326703A (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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor 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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2005149993A priority Critical patent/JP4621073B2/ja
Priority to US11/416,066 priority patent/US7463948B2/en
Publication of JP2006326703A publication Critical patent/JP2006326703A/ja
Application granted granted Critical
Publication of JP4621073B2 publication Critical patent/JP4621073B2/ja
Expired - Fee Related 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 or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0217Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0251Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0255Control of position or course in two dimensions specially adapted to land vehicles using acoustic signals, e.g. ultra-sonic singals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/0278Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS

Description

本発明は、複数の自律移動ロボットを制御するロボット制御装置に関し、詳しくは、複数の自律移動ロボットを、互いに衝突することのないように移動させるロボット制御装置に関する。
自律移動可能な複数のロボット(以下、ロボットという)と、これらのロボットに荷物の運搬業務、受付業務、そして案内業務などの各種の作業(以下、タスクという)を実行させるロボット制御装置とを備えるロボット制御システムがある。このようなタスクは、例えばオフィスや家庭などのタスク実行エリアで実行されることが想定されている。1つのタスク実行エリアで複数のロボットが移動する場合、オフィスや家庭のような場所ではロボットが障害物に出会う場合がある。特に、障害物が他のロボットの場合、ロボット同士が衝突する虞が生じる。そのため、従来、ロボット同士の衝突を防止する方法が知られている(例えば、特許文献1,特許文献2参照)。
特許文献1に開示されたロボットシステムでは、ロボットは走行路に設けられたノードを検出しつつ、検出したノードを目標として移動する。このロボットは、検出したノードを占有して走行するための予約をロボット制御装置に対して要求する。これに対して、ロボット制御装置は、先に予約がなされていないかどうかによって、この予約を許可するか否かを判定し、この予約を許可した場合に、ロボットが予約許可されたノードを目標として移動する。
特許文献2に開示されたロボットは、ロボット同士の相互通信によって、他のロボットとの衝突を防止するように構成されている。
特開平5−66831号公報(段落0008〜0014、図4) 特開平8−63229号公報(段落0012〜0027、図3)
しかしながら、特許文献1に開示されたロボットシステムでは、例えばあるノードに対して、優先順位の低いタスクを実行するロボットの予約が先に行われた場合、優先順位の高いタスクを実行するロボットが、同じノードの予約を行えずに移動できない虞れがある。つまり、複数のロボットが最適な移動をすることができない。また、ロボットが移動するためにはノードを予約する必要があるため、ロボットとロボット制御装置との間の通信処理が煩雑になる。
また、特許文献2に開示されたロボットは、タスクの優先順位の変化に対応できず、衝突防止動作の最適化が行われていない。また、他のロボットとの衝突を防止する動作は、予め設定された定型動作によるため、この動作をロボットの移動領域の地形に応じた最適なものにすることができない。
そこで、本発明では、前記した従来の問題を解決し、障害物との出会いに起因したコストを考慮しつつ複数のロボットに全体として最小コストでタスクを実行させることにより、複数のロボットの行動を最適化することが可能なロボット制御装置を提供することを目的としている。
本発明は、前記目的を達成するために創案されたものであり、本発明のうち請求項1に記載の発明は、現在位置を検出する位置情報検出手段を有して所定のタスクを実行する複数の移動ロボットを制御するロボット制御装置であって、前記位置情報検出手段で検出された現在位置を記憶するロボット情報記憶手段と、各移動ロボットが実行すべきタスクの実行位置及び優先度を記憶するタスク情報記憶手段と、前記優先度に基づいて、各タスクを実行する任意の複数の移動ロボットの組み合わせを決定し、前記移動計画情報に基づいて、前記決定された移動ロボット毎に、前記ロボット情報記憶手段に記憶された現在位置から、前記タスク情報記憶手段に記憶されたタスクの実行位置までの複数の経路の移動計画を示す移動計画情報をコスト別に算出するタスク管理手段と、前記決定された複数の移動ロボットが前記タスクを最小コストで実行できるように前記移動ロボットの行動を最適化する命令を生成する行動最適化制御手段とを備え、前記行動最適化制御手段は、前記タスク管理手段により前記移動ロボット毎に算出された前記移動計画情報を取得し、当該移動ロボットの移動計画情報をコストの低い順序で整列する移動計画探索手段と、この移動計画探索手段で前記移動ロボット毎に整列された移動計画情報を組み合わせ、この組み合わせにおいてコストの整列順序の和の値を小さい順に選択すると共に、前記選択された整列順序の和の値が等しくなるような移動計画の組み合わせをすべて選択する移動計画選択手段と、この移動計画選択手段でそれぞれ選択された移動計画の組み合わせにおいて、前記複数の移動ロボットに要するコストの和である移動計画実行コストを算出して記憶手段に記憶する移動計画実行コスト算出手段と、前記移動計画選択手段でそれぞれ選択された移動計画の組み合わせを前記各移動ロボットが実行するときのそれぞれのタスク実行位置までの移動経路において、当該移動ロボットと予め位置が特定された障害物との間の距離を位置毎または時刻別に算出する距離算出手段と、前記選択された移動計画のそれぞれにおいて前記距離算出手段で算出された距離のいずれかが所定値以下であるか否かを判定すると共に、前記所定値以下である場合に当該移動計画を実行する移動ロボット対して前記障害物と出会う可能性があると判定する出会可能性判定手段と、この出会可能性判定手段で前記障害物と出会う可能性があると判定された場合に、当該移動ロボットが前記移動経路の中で一時停止する場合のコストおよび前記障害物とすれ違って移動する場合のコストをそれぞれ算出し、算出したコストのうち小さい方を、出会いに起因するコストである出会起因コストとして、当該移動計画の前記移動計画実行コストに加算して前記記憶手段に記憶する出会起因コスト算出手段と、前記記憶手段に記憶した組み合わせ毎のコストのうち最小コストとなる移動計画の組み合わせを選択する最適経路選択手段と、前記複数の移動ロボット、前記最適経路選択手段で選択された移動計画に誘導する命令である計画変更誘導命令を生成する計画変更誘導命令生成手段と、を有することを特徴とするロボット制御装置である。
かかる構成によれば、ロボット制御装置は、移動計画選択手段でそれぞれ選択された移動計画の組み合わせにおいて、移動計画実行コスト算出手段によって、移動ロボットが、タスクを実行するために選択すべき移動計画を切り替えたときに、複数の移動ロボットに要するコストである移動計画実行コストを算出すると共に、切り替えられた移動計画において、移動ロボットが障害物と出会う可能性がある場合に、出会起因コスト算出手段によって、出会いに起因するコストである出会起因コストを算出する。そして、ロボット制御装置は、最適経路選択手段によって、移動計画実行コスト及び出会起因コストに基づいて、タスクを最小コストで実行できる移動計画を決定する。したがって、障害物との出会いに起因したコストを考慮しつつ複数のロボットに全体として最小コストでタスクを実行させることにより、複数のロボットの行動を最適化することができる。
ここで、移動計画は、例えば、移動ロボットが現在位置からタスクの実行位置までの経路において、現在位置からの累計距離と位置との組み合わせや、どの時刻にどこにいるかを示す時刻と位置の組み合わせから構成される。
また、計画変更誘導命令としては、切り替えられた移動計画及び出会起因コストに応じて、移動ロボットに移動計画を変更させるものとして様々なものが生成される。移動計画の変更とは、移動ロボットが、障害物と出会うことを容認するものと、障害物と出会うことを容認しないものとを含んでいる。なお、ロボット制御装置が、移動ロボットが障害物と出会う可能性があると判定するための基準である所定値によっては、移動ロボットと障害物とが衝突する場合も想定される。この場合には、障害物と出会うことを容認するとは、移動ロボットの通行路を切り替えることなく障害物との衝突を避ける行動をとることを意味し、障害物と出会うことを容認しないとは、移動ロボットの通行路を切り替えることにより障害物との衝突を避けることを意味する。したがって、移動ロボットと障害物とが衝突することを想定した場合には、計画変更誘導命令は、このような行動を移動ロボットに指示する命令となる。
また、コストとは、例えば、タスクを実行するためのタスク実行コスト、タスクを実行しているときに移動するためのタスク移動コスト、タスクを実行する位置に移動するまでの移動コスト、あるいは、それらの組み合わせである。これらのコストは、時間や、バッテリなどのエネルギーに換算して計算される。
請求項2に記載の発明は、請求項1に記載のロボット制御装置であって、前記障害物は、前記移動ロボットであり、前記出会起因コスト算出手段は、優先順位の低いタスクを実行する移動ロボットが、進路上において一時停止する地点である一時停止位置において、優先順位の高いタスクを実行する移動ロボットが通過するまで待機するときに要するコストを算出する一時停止コスト算出手段を含み、前記計画変更誘導命令生成手段は、この一時停止コスト算出手段で算出されたコストと、前記出会可能性判定手段で前記障害物と出会う可能性があると判定された前記複数の移動ロボットのそれぞれの移動計画に要するコストとの和が、最小コストである場合に、優先順位の低いタスクを実行する移動ロボットに対して前記一時停止位置で停止する命令を生成することを特徴とする。
請求項2に記載の発明によれば、ロボット制御装置は、タスクの優先順位の異なる複数の移動ロボットが互いに出会う可能性があり、かつ、一時停止コスト算出手段によって算出された一時停止コストと互いに出会う可能性があると判定された複数の移動ロボットのそれぞれの移動計画に要するコストとの和が、最小コストである場合に、計画変更誘導命令生成手段によって、優先順位の低いタスクを実行する移動ロボットに対して、進路上の一時停止位置において、優先順位の高いタスクを実行する移動ロボットが通過するまで待機する命令を生成する。したがって、タスクの優先順位が反映され、例えば、高い優先順位のタスクを実行する移動ロボットを一時停止させて、低い優先順位のタスクを実行する移動ロボットが通過するのを待つような事態を避けることができる。
請求項3に記載の発明は、請求項1または請求項2に記載のロボット制御装置であって、前記障害物は、前記移動ロボットであり、優先順位の高いタスクを実行する移動ロボットを、選択された移動計画情報に基づく経路から、優先順位の低い移動ロボットとのすれ違いを可能とする回避経路に移動させる回避命令を生成する回避命令生成手段と、前記優先順位の低いタスクを実行する移動ロボットを、選択された移動計画情報に基づく経路から、前記優先順位の高い移動ロボットの通り抜けを可能とする退避位置に移動させる退避命令を生成する退避命令生成手段と、前記移動ロボットを、前記回避経路または前記退避位置から、選択された移動計画情報に基づく経路に復帰させる復帰命令を生成する復帰命令生成手段と、を有する回避制御手段をさらに備え、前記出会起因コスト算出手段は、前記優先順位の高いタスクを実行する移動ロボットが前記回避経路に移動するために生じるコストと、前記優先順位の低いタスクを実行する移動ロボットが前記退避位置に移動するために生じるコストとを合算したコストと、両移動ロボットが前記経路を変更しないときに生じるコストとの差を算出する回避コスト算出手段をさらに含み、前記計画変更誘導命令生成手段は、この回避コスト算出手段で算出されたコストと、前記出会可能性判定手段で前記障害物と出会う可能性があると判定された前記複数の移動ロボットのそれぞれの移動計画に要するコストとの和が最小コストである場合に、前記回避制御手段に対して前記回避命令、退避命令及び復帰命令を生成するように指示することを特徴とする。
請求項3に記載の発明によれば、ロボット制御装置は、タスクの優先順位の異なる複数の移動ロボットが互いに出会う可能性があり、かつ、回避コスト算出手段によって算出されたコストの差と互いに出会う可能性があると判定された複数の移動ロボットのそれぞれの移動計画に要するコストとの和が、最小コストである場合に、計画変更誘導命令生成手段によって、回避制御手段に対して回避命令、退避命令及び復帰命令を生成するように指示する。これによって、回避制御手段が各命令を対象とする移動ロボットに送信する。その結果、対象とする複数の移動ロボットは、衝突することなくすれ違って移動することができる。この場合、タスクの優先順位を反映したタイミングで復帰命令を生成することにより、優先順位の低いタスクを実行する移動ロボットよりも、優先順位の高いタスクを実行する移動ロボットの方が早く元の経路に復帰することができる。
請求項4に記載の発明は、請求項1乃至請求項3のいずれか一項に記載のロボット制御装置であって、前記移動ロボットから移動計画の変更を要求するための計画切替要求信号が入力された場合に、前記行動最適化制御手段は、前記移動計画情報の中から現時点とは異なる他の移動計画を示す移動計画情報に基づいて、当該移動ロボットの行動を最適化する命令を生成することを特徴とする。
請求項4に記載の発明によれば、ロボット制御装置は、移動ロボットから計画切替要求信号が入力されたときに、行動最適化制御手段によって、現時点とは異なる他の移動計画を示す移動計画情報により移動計画実行コスト及び出会起因コストが算出される。そして、現時点における移動計画を現時点とは異なる他の移動計画に切り替えるように指示する計画変更誘導命令を生成することにより当該移動ロボットの行動を最適化する。したがって、移動ロボットが移動できない状況のときに計画切替要求信号をロボット制御装置に送信するように設定しておけば、最小のコストで、所定のタスクを実行するために当初と別の道順で移動することができる。そのため、例えば、移動ロボットが地図データに登録されていない通行止めなどの静的障害物に遭遇したとしても、最適化された迂回路によりタスクを速やかに実行することができるようになる。
本発明によれば、移動ロボットと障害物との出会いに起因したコストを考慮しつつ複数のロボットに全体として最小コストでタスクを実行させることにより、複数のロボットの行動を最適化することができる。例えば、任意の複数の移動ロボットが接近することが予め分かっていれば、対象とする複数の移動ロボットに関する移動計画実行コスト及び出会起因コストに基づいて、移動計画の変更を指示する命令を生成するので、各移動ロボットの衝突を未然に防止しながら、最適な経路で複数のタスクを効率良く実行させることができる。
以下、本発明の実施形態について、適宜図面を参照しながら説明する。
図1は、本発明に係るロボット制御装置を備えたロボット制御システムのシステム構成図である。
(ロボット制御システムの構成)
はじめに、本発明の実施形態におけるロボット制御装置が組み込まれたロボット制御システムついて説明する。
図1に示すように、このロボット制御システムAは、移動機能を備えた複数のロボットRA,RB,RC(ただし、ロボットを特定しない場合は、単にロボットRという)を有しており、各ロボットRは、ロボット制御装置3においてロボットR毎に予め設定されたタスクの実行計画(タスクスケジュール)に従って、タスクを実行する。そして、このロボット制御システムAでは、複数のロボットR同士が出会うことに起因したコストを考慮して、複数のロボットRで複数のタスクを効率良く実行するように構成されている。
図1に示すように、ロボット制御システムAは、複数のロボットRと、これらロボットRと無線通信によって接続された基地局1と、この基地局1とルーター2を介して接続されたロボット制御装置3と、ロボット制御装置3にネットワーク4を介して接続された端末5とを含んで構成される。
ロボットRは、ロボット制御装置3から入力されたタスク実行命令に従ってタスクを実行するものであり、ロボットRがタスクを実行する領域として予め設定されたタスク実行エリアE内に、少なくとも2台配置されている。
ここで、図1には、来訪者を会議室などの所定の場所に案内するという内容のタスク(案内タスク)を実行中のロボットRAと、荷物をある人に渡すという内容のタスク(運搬タスク)を実行中のロボットRBと、新たなタスクが割り当てられるのを待つという内容のタスク(待機タスク)を実行中のロボットRCとが、例示されている。
基地局1は、ロボットRとロボット制御装置3との間のデータ交換を仲介するものである。
具体的には、基地局1は、ロボット制御装置3から出力されたタスク実行命令をロボットRに送信すると共に、ロボットRから送信されたロボットRの状態に関するデータ(ステータス情報)やロボットRがタスク実行命令を受信したことを示す信号(受信報告信号)を受信して、ロボット制御装置3に出力するものである。
基地局1は、ロボットRとロボット制御装置3との間のデータ交換を確実に行えるようにするために、タスク実行エリアE内に少なくとも一つ設けられている。
なお、タスク実行エリアEが建物の数フロアに亘って設定されている場合には、フロア毎に設けられていることが好ましく、一つの基地局1では総てのタスク実行エリアEをカバーできない場合には、複数の基地局1がタスク実行エリアE内に設けられていることが好ましい。
ロボット制御装置3は、ロボットRに実行させるタスクの実行計画(タスクスケジュール)を、ロボットR毎に設定すると共に、複数のロボットRに全体として最小コストでタスクを実行できるように、ロボットRの行動(移動または待機)を制御するものである。
端末5は、ロボットRに実行させるタスクの登録や、ロボット制御装置3において設定されるタスクスケジュールの変更や、ロボットRの動作命令の入力などを行うものである。
以下、ロボットR及びロボット制御装置3の構成についてそれぞれ詳細に説明する。
[ロボット]
本実施形態のロボット(移動ロボット)Rは、自律移動型の2足歩行ロボットである。
このロボットRは、主として、ロボット制御装置3から送信されたタスク実行命令に基づいて、タスクを実行するものである。
図1に示すように、このロボットRは、胴部の周囲に、頭部R1、腕部R2、脚部R3を有しており、頭部R1、腕部R2、脚部R3は、それぞれアクチュエータにより駆動され、自律移動制御部50(図2参照)により2足歩行の制御がなされる。この2足歩行についての詳細は、例えば特開2001−62760号公報に開示されている。
図2は、ロボットRのブロック構成図である。図2に示すように、ロボットRは、前記した頭部R1、腕部R2、脚部R3に加えて、カメラC,C、スピーカS、マイクMC,MC、画像処理部10、音声処理部20、主制御部40、自律移動制御部50、無線通信部60、バッテリ70、障害物検知部80を有している。さらに、ロボットRの現在位置に関する現在位置情報を検出する位置情報検出手段として、ジャイロセンサSR1やGPS受信器SR2を有している。
[カメラ]
カメラC,Cは、映像をデジタルデータとして取り込むことができるものであり、例えばカラーCCD(Charge-Coupled Device)カメラが使用される。カメラC,Cは、左右に平行に並んで配置され、撮影した画像は画像処理部10に出力される。このカメラC,Cと、スピーカS及びマイクMC,MCとは、いずれも頭部R1の内部に配設されている。
[画像処理部]
画像処理部10は、カメラC,Cが撮影した画像を処理して、撮影された画像からロボットRの周囲の状況を把握するため、周囲の障害物や人物の認識を行う部分である。この画像処理部10は、ステレオ処理部11a、移動体抽出部11b、及び顔認識部11cを含んで構成される。
ステレオ処理部11aは、左右のカメラC,Cが撮影した2枚の画像の一方を基準としてパターンマッチングを行い、左右の画像中の対応する各画素の視差を計算して視差画像を生成し、生成した視差画像及び元の画像を移動体抽出部11bに出力する。なお、この視差は、ロボットRから撮影された物体までの距離を表すものである。
移動体抽出部11bは、ステレオ処理部11aから出力されたデータに基づき、撮影した画像中の移動体を抽出するものである。移動する物体(移動体)を抽出するのは、移動する物体は人物であると推定して、人物の認識をするためである。
移動体の抽出をするために、移動体抽出部11bは、過去の数フレーム(コマ)の画像を記憶しており、最も新しいフレーム(画像)と、過去のフレーム(画像)を比較して、パターンマッチングを行い、各画素の移動量を計算し、移動量画像を生成する。そして、移動体抽出部11bは、視差画像と、移動量画像とから、カメラC,Cから所定の距離範囲内で、移動量の多い画素がある場合に、その位置に人物がいると推定し、その所定距離範囲のみの視差画像として、移動体を抽出し、顔認識部11cへ移動体の画像を出力する。
顔認識部11cは、抽出した移動体から肌色の部分を抽出して、その大きさ、形状などから顔の位置を認識する。なお、同様にして、肌色の領域と、大きさ、形状などから手の位置も認識される。認識された顔の位置は、ロボットRが移動するときの情報として、また、その人とのコミュニケーションを取るため、主制御部40に出力されると共に、無線通信部60に出力されて、基地局1を介して、ロボット制御装置3に送信される。
[音声処理部]
音声処理部20は、音声合成部21aと、音声認識部21bとを有している。
音声合成部21aは、主制御部40が決定し、出力してきた発話行動の指令に基づき、文字情報から音声データを生成し、スピーカSに音声を出力する部分である。音声データの生成には、予め記憶している文字情報と音声データとの対応関係を利用する。
音声認識部21bは、マイクMC,MCから音声データが入力され、予め記憶している音声データと文字情報との対応関係に基づき、音声データから文字情報を生成し、主制御部40に出力するものである。
[主制御部]
主制御部40は、後記するロボット制御装置3に出力する信号を生成すると共に、ロボット制御装置3から出力されたタスク実行命令に基づいて、ロボットRの各部(画像処理部10、音声処理部20、自律移動制御部50、無線通信部60、及び障害物検知部80)を制御するものである。
具体的には、主制御部40は、ロボット制御装置3から出力されたタスク実行命令を受信すると、当該タスク実行命令を受信したことを示す信号(受信報告信号)を生成し、受信報告信号を無線通信部60を介してロボット制御装置3に出力する。
さらに、主制御部40は、タスク実行命令において規定されるタスクを実行するために、ロボットRの各部(画像処理部10、音声処理部20、自律移動制御部50、無線通信部60、及び障害物検知部80)を制御する制御信号を生成し、生成した制御信号を、必要に応じてロボットRの各部に出力する。
また、主制御部40は、ロボットRの状態に関するデータ(ステータス情報)を、所定時間間隔毎に生成し、生成したステータス情報を無線通信部60を介してロボット制御装置3に出力する。
ここで、ステータス情報とは、後記するロボット制御装置3において、任意の2つのロボットRが出会う可能性があるかどうかを判断する際に用いられるものである。
本実施形態の場合、このステータス情報には、ロボットRの現在位置を示す座標データ(現在位置情報)と、ロボットRに搭載されたバッテリ70の残量を示すバッテリ残量情報と、ロボットRが現在実行中のタスクの内容を示すタスクIDとその進行状況とを示すデータ(タスク情報)とが含まれている。
本実施形態では、主制御部40がステータス情報を、(1)定期的に生成し、送信する態様となっているが、(2)バッテリ残量が所定値以下となった場合や、(3)ロボット制御装置3から送信された、ステータス情報の送信を要求する信号(データ要求信号)を受信した場合に、主制御部40がステータス情報を生成し、送信する態様としても良い。もちろん、これら(1)〜(3)の態様を任意に組み合わせた態様とすることも可能である。
[自律移動制御部]
自律移動制御部50は、頭部制御部51a、腕部制御部51b、脚部制御部51cを有している。
頭部制御部51aは、主制御部40から入力される制御信号の指示に従い頭部R1を駆動し、腕部制御部51bは、主制御部40から入力される制御信号の指示に従い腕部R2を駆動し、脚部制御部51cは、主制御部40から入力される制御信号の指示に従い脚部R3を駆動する。
なお、この自律移動制御部50と、頭部R1、腕部R2及び脚部R3とにより、自律移動装置が構成されている。
[無線通信部]
無線通信部60は、ロボット制御装置3とデータの送受信を行う通信装置である。無線通信部60は、公衆回線通信装置61a及び無線通信装置61bを有している。
公衆回線通信装置61aは、携帯電話回線やPHS(Personal Handyphone System)回線などの公衆回線を利用した無線通信手段である。一方、無線通信装置61bは、IEEE802.11b規格に準拠する無線LANなどの、近距離無線通信による無線通信手段である。
無線通信部60は、ロボット制御装置3からの接続要求に従い、公衆回線通信装置61a又は無線通信装置61bを選択してロボット制御装置3とデータ通信を行う。
バッテリ70は、ロボットRの各部の動作や処理に必要な電力の供給源である。
ジャイロセンサSR1及びGPS受信器SR2は、ロボットRの現在位置を示す座標データを定期的に生成し、生成した座標データを主制御部40に出力する。この座標データは、ロボットRの行動を決定するのに利用されると共に、前記したステータス情報の生成に用いられる。
障害物検知部80は、ロボットRの周囲の障害物を検知するためのものであり、例えば超音波センサが出力した障害物検知連絡信号と、超音波センサの配置方向を記憶したテーブルと、に基づいて、ロボットRの所定距離内のどの方向に障害物があるのかを判定し、障害物の方向データを生成する。この障害物の方向データは、主制御部40に出力される。超音波センサが発生する超音波は透明な物質でも反射するので、障害物検知部80は、画像処理部10では検知できないガラスなどの透明な障害物も検知することができる。
[ロボット制御装置]
図1におけるロボット制御装置3は、主として、ロボットRに実行させるタスクの実行計画(タスクスケジュール)を、ロボットR毎に設定すると共に、ロボットRがタスク実行のために移動中のロボットR間の距離に基づいて、ロボットR同士が出会う可能性を検出し、出会う可能性が検出された場合に、出会いに起因したコストを算出して、複数のロボットRが全体として最小コストでタスクを実行できるように制御を行うものである。
図3に示すように、ロボット制御装置3は、入出力手段100と、記憶手段200と、制御手段300とを主要部として含んで構成される。
[入出力手段]
入出力手段100は、基地局1やネットワーク4を介して、ロボットRや端末5との間でデータ交換を行うためのインタフェースである。
本実施形態の場合、ロボットRから送信されるステータス情報及び受信報告信号、端末5から送信されるタスクの登録や更新を要求する信号(タスク要請信号)、後記するタスク実行命令生成手段340で生成されるタスク実行命令、後記する行動最適化制御手段400で生成されるプラン遂行命令及び一時停止命令等、そして後記する回避制御手段500で生成される回避制御命令等が、この入出力手段100を介して、やり取りされる。
入出力手段100は、外部から入力されるステータス情報とタスク要請信号と受信報告信号とをデータベース管理手段310に出力する。
[記憶手段]
記憶手段200は、ロボットRの制御に必要な情報を記憶するものであり、この記憶手段200には、地図情報データベース210と、タスク情報データベース220と、タスクスケジュールデータベース230と、ロボット情報データベース240と、が少なくとも記憶されている。
<地図情報データベース>
地図情報データベース210は、ロボットRがタスクを実行する領域(タスク実行エリアE)の地図情報(グローバルマップ)を格納するデータベースである。
この地図情報データベース210では、タスク実行エリアE内に存在するもの、例えば、通路(通行路)、階段、エレベータ、部屋などの情報が、タスク実行エリアE内における位置を示す座標データ(ノード情報等)と関連づけて登録されている。
したがって、本実施形態の場合、ロボットR自身の現在位置をもとに地図情報データベース210を参照することで、タスク実行エリアE内に配置されたロボットRと、タスク実行エリアE内の特定物(目標)との位置関係を知ることができる。例示すると、ロボットRから目標までの距離や、目標がロボットRの正面を基準として、どの方向に位置するかなどが判ることになる。
よって、この位置関係に基づいて、ロボットRの自律移動やタスクの実行を命令する信号(タスク実行命令)をロボット制御装置3において生成することで、ロボットRを、タスク実行エリアE内の所望の位置(例えば、タスクの開始位置)に、最短かつ最適の経路を経て、移動させることができるので、ロボットRの自律移動やロボットRによるタスクの実行が可能となる。
なお、本実施形態の場合、地図情報データベース210に記憶される地図情報の更新は、オペレータが操作する端末5からデータを入力することで、データベース管理手段310が行うように設定されている。
<タスク情報データベース>
タスク情報データベース(タスク情報記憶手段)220は、ロボットRに実行させるタスクに関する情報(タスクデータ)を記憶するデータベースである。
このタスク情報データベースには、情報項目として、タスク毎に割り当てられた固有の識別子であるタスクID、タスクを優先的に実行すべき度合いを示す優先度、タスクの重要度、タスクを実行させるロボットの識別子であるロボットID、案内や運搬などのタスクの内容、タスク実行エリアE内におけるタスクを開始する位置(開始位置)、タスク実行エリアE内におけるタスクを終了する位置(終了位置)、タスクの実行に要する時間(所要時間)、そして、タスクの進行状況として、タスクの開始予定時刻(開始時刻)、タスクの終了予定時刻(終了時刻)、タスクの状態(完了、実行中、未処理)などが、含まれている。
<タスクスケジュールデータベース>
タスクスケジュールデータベース230は、ロボットRに実行させるタスクの実行順位、タスク情報データベース220に登録されたタスクを特定するためのタスクID、タスクの優先度、タスクの内容、そしてタスクの状態を情報項目として記憶するデータベースである。
このタスクスケジュールデータベース230では、これら情報項目が、タスク実行エリアE内に配置されたロボットR毎に整理されており、どの様なタスクが、どのような順番で各ロボットRに割り当てられているのかを把握できるようになっている。
このタスクスケジュールデータベース230は、タスク情報データベース220に登録されたタスクのうちの未処理のタスクの各ロボットRへの割り当てと、各ロボットRにおけるタスクの実行順序を規定する。
<ロボット情報データベース>
ロボット情報データベース(ロボット情報記憶手段)240は、ロボットRの状態に関するデータ(ステータス情報)を格納するデータベースである。
ロボット情報データベース240には、前記した現在位置情報、タスク情報、バッテリ残量情報、そしてロボットRの駆動系異常の有無などに関する情報(データ)などが情報項目として含まれており、これら情報項目はロボットID(識別情報)に関連付けて整理されている。また、タスク実行位置までの位置情報(ノード情報等)が時刻別に所定数格納されている。
このロボット情報データベース240に記憶される各情報項目の内容の更新は、ロボットRから送信されたステータス情報に基づいて、後記する制御手段300のデータベース管理手段310により行われる。
[制御手段]
制御手段300は、図3に示すように、データベース管理手段310と、優先度データ生成手段320と、タスク管理手段330と、タスク実行命令生成手段340と、行動最適化制御手段400と、回避制御手段500とを含んで構成される。
<データベース管理手段>
データベース管理手段310は、記憶手段200に記憶された各データベース210〜240へのデータの登録や、各データベース210〜240に登録されたデータの更新などを行うものである。
例えば、データベース管理手段310は、ロボットRの状態を示すステータス情報が、入出力手段100を介して入力されると、ステータス情報に含まれるロボットIDに基づいて、ロボット情報データベース240を参照し、ロボットIDにより特定されるロボットRに関する情報項目の内容(データ)を、ステータス情報から取得した情報項目の内容(データ)に更新する。
また、データベース管理手段310は、ステータス情報に含まれるタスク情報が、ロボットRがタスクの実行を完了していることを示している場合は、ロボットRに割り当てられた次のタスクを当該ロボットRに実行させるために、タスクの実行をロボットRに命令するタスク実行命令の生成をタスク実行命令生成手段340に要求する信号(実行命令要求信号)を生成し、生成した実行命令要求信号をタスク実行命令生成手段340に出力する。
さらに、データベース管理手段310は、端末5において入力された新規タスクの登録やタスクの変更を要求する信号(タスク要請信号)が、入出力手段100を介して入力されると、タスク情報データベース220の更新(情報項目の内容の更新)を行い、タスク情報データベース220の更新が行われたことを示す信号(タスク更新信号)を生成し、生成したタスク更新信号を優先度データ生成手段320に出力する。
<優先度データ生成手段>
優先度データ生成手段320は、ロボットRに実行させるタスクの優先度を決定するものである。
具体的には、この優先度データ生成手段320は、データベース管理手段310から、タスク更新信号が入力された場合、タスク情報データベース220に登録されているタスクであって、未処理(未実行)のタスクの優先度を決定する。
そして、タスク情報データベース220に登録されたタスクの中で、未実行のタスクについてのスケジューリングを行うことを要求する信号(スケジュール要求信号)を生成し、タスク管理手段330に出力する。
本実施形態の場合、タスクの優先度の決定は、タスク情報データベース220にタスクを登録する際に設定されたタスクの重要度、タスクの開始位置から最も近い位置にいるロボットRと当該タスクの開始位置との離間距離、現在の時刻からタスクの開始時刻や終了時刻までの時間的余裕、を加味した上で行われる。
具体的には、優先度データ生成手段320が、各タスクの優先度Qを下記式(1)に基づいて算出することで、タスクの優先度が決定される。
Q=(Tpri+n(Tsp))・f(Terr) …(1)
ここで、「Tpri」は、タスク情報データベース220にタスクを登録する際に任意に決定されたタスクの重要度である。
本実施形態では、このタスクの重要度を示す値は、1.0から5.0の間で、0.5刻みで設定されており、重要度の最も小さいタスクは1.0で、重要度が最も大きいタスクは5.0で、それぞれ示されている。
また、「Tsp」は、タスクの開始位置に最も近い位置にいるロボットRが、当該タスクの開始位置まで移動するのに要する時間であり、「n(Tsp)」は、タスクの開始位置の近くにロボットRが存在する場合に、当該ロボットRにタスクを優先させて実行させるための距離依存重要度である。
「n(Tsp)」の値は、ロボットRがタスクの開始位置の近くに位置するほど、大きくなるように設定されており、本実施形態では、「Tsp」が所定の閾値以下となる場合にのみ、「n(Tsp)」が所定の正の値をとるように設定されており、「Tsp」が所定の閾値よりも大きい場合には、「n(Tsp)」の値は「0」となるように設定されている。
さらに、「f(Terr)」は、現在の時刻からタスクの開始時刻や終了時刻までの時間的余裕に基づいて、タスクを優先させて実行させるための時間依存重要度である。
本実施形態の場合、「f(Terr)」は、0〜1までの値となるように設定されており、その値は、タスク開始時刻が近づくに従って急激に増加して「0」から「1」に近づき、基準時刻(タスク開始時刻よりもタスクの実行に要する時間分だけ前の時刻)からタスク終了時刻までの間は最大値である「1」となり、タスク終了時刻が経過すると、徐々に減少して「0」となるように設定されている。
より具体的に説明すると、本実施形態の場合、現在時刻が基準時刻よりも前である場合は下記式(2)で、現在時刻が基準時刻以降であってタスク終了時刻が経過する前である場合は下記式(3)で、現在時刻がタスク終了時刻以降である場合は下記式(4)で、時間依存重要度f(Terr)が算出される。
f(Terr)=exp(−K((Terr−Ttime)/Ttime)) …(2)
f(Terr)=1 …(3)
f(Terr)=(1+cos((π/Ttime)(Terr/Cobli)))/2 …(4)
ここで、Terrは、現在時刻とタスク開始時刻との間の時間間隔であり、タスク開始時刻の前では正の値となり、タスク開始時刻の後では負の値となる。また、Ttimeは、タスクの実行に要する時間(タスク所要時間)であり、Cobliは、忘却係数であり、Terr=−Cobli・Ttimeとなった場合に、f(Terr)=0となるように設定された係数である。
このように、タスクを登録する際に設定されたタスクの重要度、タスクの開始位置から最も近い位置にいるロボットRと当該タスクの開始位置との離間距離、現在の時刻からタスクの開始時刻や終了時刻までの時間的余裕、を加味した上で、各タスクの優先度Qが算出されるので、タスクの優先度として好適な値を得ることができる。
<タスク管理手段>
タスク管理手段330は、ロボットRに実行させるタスクの実行計画(タスクスケジュール)をロボットR毎に設定するものである。
タスク管理手段330は、タスク毎に決定された優先度に基づいて、各タスクを実行するロボットRを決定すると共に、ロボットRに割り当てられたタスクの実行順序を、ロボットR毎に設定するものである。
すなわち、タスク管理手段330は、各ロボットRに実行させるタスクの実行計画(タスクスケジュール)を設定するものである。
具体的には、タスク管理手段330は、優先度データ生成手段320からスケジュール要求信号が入力されると、タスク情報データベース220に登録されているタスクの中から、未実行(未処理)のタスクに関するデータ(タスクデータ)を取得する。そして、タスク管理手段330は、タスクデータに含まれる優先度に基づいて、タスクをグループ分けする。
ここで、タスクの優先度の値が、2未満の場合はグループ「C」にグループ分けし、2以上〜4未満の場合はグループ「B」にグループ分けし、4以上の場合はグループ「A」にグループ分けすることが決められている場合であって、図4に示すように、タスクID=10〜タスクID=15のタスクが未実行であり、優先度データ生成手段320で決定されたタスクの優先度の値が、それぞれ図4中において示す値である場合を例に挙げて説明する。この場合、タスク管理手段330は、タスクIDが「11」のタスクと、タスクIDが「13」のタスクとをグループ「C」に振り分け、タスクIDが「10」のタスクと、タスクIDが「15」のタスクとをグループ「B」に振り分け、タスクIDが「12」のタスクと、タスクIDが「14」のタスクとをグループ「A」に振り分ける。
続いて、タスク管理手段330は、3つ存在するグループ(グループ「A」〜グループ「C」)の中から、優先度の高いタスクから構成されるグループ(この場合、グループ「A」)のタスクについて、スケジューリングを行う。
具体的には、タスク管理手段330は、タスク実行エリアE内に配置されたロボットRの各々に、どのタスクを割り当て、かつ割り当てたタスクをどの順番で行わせるのかを規定する組合せをすべて挙げる。そして、タスク管理手段330は、各組み合わせにおいて規定されるタスクのロボットRへの割当て及びタスクの実行順序に従ってすべてのタスクを実行した場合に必要とされる全体コストを組合せごとに求め、求めた全体コストが最小となる組み合わせを検索する。
ここで、タスク実行エリアE内に配置されたロボットRが2台(RA,RB)であり、前記したグループ「A」に含まれるタスクが、タスクIDが「12」のタスクと、タスクIDが「14」のタスクである場合を例に挙げて説明をする。
この場合、ロボットRAとRBに対して行われるタスクの割り当てと実行順序の組み合わせは、実行順序を含めれば、両方のタスクを1台のロボットRA(RB)で行う場合(4通り)と、2台のロボットRA,RBで行う場合(2通り)の合計6通り存在することになる。
よって、この場合、タスク管理手段330は、6個の各組合せに規定されるタスクスケジュールに従って、すべてのタスクを、タスク実行エリアE内に配置されたロボットR(RA,RB)で実行した場合に必要となる全体コストを算出する。
本実施形態の場合、全体コスト(CTotal)は、下記式(5)を用いて算出される。
total=w・Call+(1−w)・Call complete …(5)
前記式(5)において、「Call」は、総てのタスクを終了するまでに、ロボット制御システムAに含まれるすべてのロボットRが消費するバッテリの総量(動作コスト)であり、「Call complete」は、すべてのタスクを終了するまでに、各ロボットに割り当てられた全タスクのうちの、一番最初に行われるタスクの開始予定時刻から一番最後に行われるタスクの終了予定時刻までの時間(時間コスト)である。
さらに、「w」は、動作コストと時間コストのどちらに重点を置くかを決める「重み値」であり、0≦w≦1の範囲内で任意に設定される値である。ここで、「w」値が大きいと、全体コスト(Ctotal)において、バッテリ消費量を重視する傾向が大きくなり、小さいと、すべてのタスク遂行するまでに要する時間(所要時間)を重視する傾向が大きくなる。
具体的に説明すると、ロボットRAはタスクIDが「12」のタスクを実行し、ロボットRBはタスクIDが「14」のタスクを実行する場合、「Call」は、ロボットRAが「12」のタスクを実行する際に消費するバッテリ量と、ロボットRBが「14」のタスクを実行する際に消費するバッテリ量とを加算した値である。
また、「Call complete」は、ロボットRAが「12」のタスクを開始する時刻と、ロボットRBが「14」のタスクを開始する時刻のうちの早いほうの時刻から、ロボットRAが「12」のタスクを終了する時刻と、ロボットRBが「14」のタスクを終了する時刻のうちの遅いほうの時刻までの時間である。
また、ロボットRBが「14」のタスクの次に、「12」のタスクを実行する場合、「Call」は、ロボットRBが「14」のタスクを開始してから「12」のタスクを終了するまでに消費するバッテリ量の値であり、「Call complete」は、ロボットRBが「14」のタスクを開始する時刻から、ロボットRBが「12」のタスクを終了する時刻までの時間である。
よって、本実施形態の場合、タスク管理手段330は、組合せ毎に全体コスト(Ctotal)を求め、求めた全体コスト(Ctotal)の値が、最も小さくなる組合せにおいて規定されるタスクの割り当て、及びタスクの実行順序を、タスクスケジュールとして決定する。
タスク管理手段330は、同様の操作を、残りのグループ(グループ「B」及びグループ「C」)について、優先度の高いグループから順に行って、タスク情報データベース220に登録されているタスクのうちの未処理のタスクについて、実行するロボットRを決定すると共に、ロボットRに割り当てられたタスクの実行順序を、ロボットR毎に設定する。
このタスク管理手段330は、ロボットRが各タスクを実行する際に利用される、下記式(6)に示される移動計画(以下、プランという)PR={PRi(i=1〜m)}を示す移動計画情報をコスト別に算出し、コストの低い順に各プランPRiを整列し、最小コストとなるプランに基づいて、タスク実行命令を生成するように指示する。
R={PR1,…,PRm}≡{PRi(i=1〜m)} …(6)
ここで、mはプランの個数である。また、プランPR1のコストをCR1、以下同様にして、プランPRmのコストをCRmと表記すると、CR1<…<CRmの関係が成立している。
前記した移動計画情報は、例えばダイキストラ法により計算される。また、移動計画情報は、例えば、ロボットRが現在位置からタスク実行位置までの経路において、現在位置からの累計距離と位置情報との組み合わせにより構成される。なお、移動計画情報は、どの時刻にどこにいるかを示す時刻情報と位置情報の組み合わせにより構成するようにしてもよい。
<タスク実行命令生成手段>
図3に示したタスク実行命令生成手段340は、ロボットRにタスクを実行させるためのタスク実行命令(データ)を生成するものである。
タスク実行命令生成手段340は、タスク実行命令の生成を要求する信号(実行命令要求信号)が、データベース管理手段310やタスク管理手段330から入力された場合に、受信した実行命令要求信号に含まれるロボットIDをもとに、タスクスケジュールデータベース230を参照し、当該タスクスケジュールデータベース230に登録されたタスクを確認する。
そして、タスク実行命令生成手段340は、ロボットIDにより特定されるロボットRに割り当てられた未実行のタスクが存在する場合、当該タスクをロボットRに実行させるためのタスク実行命令(データ)を、タスク情報データベース220の各情報項目のデータを参照して生成し、生成したタスク実行命令を、入出力手段100を介して、ロボットIDにより特定されるロボットRに向けて出力する。
<行動最適化制御手段>
行動最適化制御手段400は、ロボットRの現在位置から、タスクの実行位置までの経路の移動計画を示す移動計画情報に基づいて、複数のロボットRがタスクを最小コストで実行できるように複数のロボットRの行動を最適化する命令を生成するものである。
また、行動最適化制御手段400は、ロボットRがタスク実行のために移動中のロボットR間の距離に基づいて、ロボットR同士が出会う可能性があるか否かを検出し、出会う可能性が検出された場合に衝突を未然に防止するための命令(プラン遂行命令、一時停止命令、回避指示信号)などを生成する。
この行動最適化制御手段400は、図5に示すように、移動計画探索手段410と、移動計画選択手段420と、ロボット間距離算出手段430と、出会可能性判定手段440と、出会起因コスト算出手段450と、移動計画実行コスト算出手段460と、最適経路選択手段470と、計画変更誘導命令生成手段480とを含んで構成される。
移動計画探索手段410は、任意の複数(以下2台として説明する)のロボットR(RA,RB)について、タスク管理手段330で算出されたタスク実行のためのプランPRA,PRBを示す移動計画情報を取得し、下記式(7)及び下記式(8)に示すように、ロボットR毎の各プランPAi,PBjのコストCAi,PBjに基づいて、コストの低い順に各プランPAi,PBjを整列するものである。
RA={PA1,…,PAm}≡{PAi(i=1〜m)} …(7)
RB={PB1,…,PBn}≡{PBj(j=1〜n)} …(8)
ただし、m,nはロボットRA,RBのタスク実行のためのプランの数をそれぞれ示し、CA1<…<CAm,CB1<…<CBnとする。
以下の説明では、ロボットRAを、優先度Q(優先順位)の低いタスクを実行するロボット(非優先ロボット)、ロボットRBを、優先度Qの高いタスクを実行するロボット(優先ロボット)とする。
移動計画選択手段420は、前記式(7)及び式(8)に基づいて、ロボットR毎の各プランPAi,PBjからiとjの組み合わせを適宜選択するものである。この移動計画選択手段420は、選択した各プランPAi,PBjの組み合わせを、ロボット間距離算出手段430と移動計画実行コスト算出手段460とに出力する。
ロボット間距離算出手段(距離算出手段)430は、移動計画情報に基づいて、ロボットRAがプランPAiを実行し、かつ、ロボットRBがプランPBjを実行するときのそれぞれのタスク実行位置までの移動経路におけるロボット間距離を位置毎または時刻別に算出するものである。
出会可能性判定手段440は、ロボット間距離算出手段430で算出されたロボット間距離のいずれかが予め定められている値α(所定値)以下であるか否かを判定すると共に、所定値α以下である場合にロボットRA,RBに対して出会う可能性があると判定するものである。この値αとしては、出会いが起こりうるレベルを予め求めて設定してある。この出会可能性判定手段440は、α以下となるロボット間距離があると判定した場合、出会う可能性があることを示す信号を移動計画選択手段420に出力する。
出会起因コスト算出手段450は、衝突を防止するために、ロボットRが通行路の中で一時停止をしたり、壁面に近づいたりする行動をするときに、ロボットRA,RBに要するコストである出会起因コストChを算出するものである。出会起因コスト算出手段450は、図5に示すように、回避コスト算出手段451と、一時停止コスト算出手段452と、出会起因コスト決定手段453とを含んで構成される。
回避コスト算出手段451は、ロボットRA,RBがすれ違う場合を想定したときに、優先ロボットRBが後記する回避経路に移動するために生じるコストと、非優先ロボットRAが後記する退避位置に移動するために生じるコストとを合算したコストと、両ロボットRA,RBが経路を変更しないときに生じるコストとの差である回避コストCa(Ca:Cost Active)を算出するものである。
一時停止コスト算出手段452は、非優先ロボットRAが、進路上において一時停止する地点である一時停止位置において、優先ロボットRBが通過するまで待機するときに要するコストを示す一時停止コストCp(Cp:Cost Passive)を算出するものである。
出会起因コスト決定手段453は、回避コストCaと一時停止コストCpとを比較し、下記式(9)及び(10)に基づいて、出会起因コストChを決定するものである。
h=Ca (Ca<Cpの場合)…(9)
h=Cp (Ca≧Cpの場合)…(10)
移動計画実行コスト算出手段460は、移動計画選択手段420から出力されるプランPAi,PBjのデータに基づいて、プランPAiに要するコストCAiと、プランPBjに要するコストCBjとの和であるプランコスト(移動計画実行コスト)を算出し、記憶手段200に記憶するものである。
最適経路選択手段470は、記憶手段200に記憶した組み合わせ毎のコストのうち最小コストとなるプランの組み合わせを選択し、計画変更誘導命令生成手段480に出力するものである。
計画変更誘導命令生成手段480は、最適経路選択手段470で選択されたプランの組み合わせに基づいて、以下の命令または信号(総称して計画変更誘導命令)を生成するものである。例えば、計画変更誘導命令生成手段480は、プラン遂行命令を生成する。このプラン遂行命令は、各ロボットRに対して、選択されたプランを遂行するように指示するものである。このプラン遂行命令は、所定時刻に、入出力手段100を介して対象とするロボットRに送信される。
また、計画変更誘導命令生成手段480は、一時停止命令を生成する。この一時停止命令は、非優先ロボットRAに対して、優先ロボットRBが通過するまで所定位置で一時停止するように指示するものである。この一時停止命令は、所定時刻に、入出力手段100を介して非優先ロボットRAに送信される。なお、計画変更誘導命令生成手段480は、非優先ロボットRAに対して一時停止命令を解除して元のプランへの復帰を指示する解除命令も生成する。
また、計画変更誘導命令生成手段480は、両ロボットRに回避行動をさせる命令を生成するよう指示する回避指示信号を生成し、回避制御手段500に出力する。
<回避制御手段>
回避制御手段500は、行動最適化制御手段400の指示により、ロボットRA,RBが互いに進行方向に向かって積極的に進みながら避けあう(すれ違う)ように、ロボットRA,RBに行動させる命令(回避命令、退避命令及び復帰命令)を生成するものである。この行動を回避行動と呼ぶ。回避行動は、後記するように、優先ロボットRBによる「回避」と、非優先ロボットRAによる「退避」とを含む。
この回避制御手段500は、図5に示すように、回避命令生成手段510と、退避命令生成手段520と、復帰命令生成手段530とを含んで構成される。
回避命令生成手段510は、行動最適化制御手段400の計画変更誘導命令生成手段480から出力される回避指示信号に基づいて、後記する回避命令を生成するものである。この回避命令は、所定時刻に、優先ロボットRBに入出力手段100を介して送信される。
退避命令生成手段520は、行動最適化制御手段400の計画変更誘導命令生成手段480から出力される回避指示信号に基づいて、後記する退避命令を生成するものである。この退避命令は、所定時刻に、非優先ロボットRAに入出力手段100を介して送信される。
復帰命令生成手段530は、ロボットRA,RBの現在位置に基づいて、回避命令及び退避命令を解除し、ロボットRA,RBを最小コストのプランPA1,PB1に復帰させるために、後記する復帰命令(復帰命令A,B)を生成するものである。
次に、回避命令生成手段510で生成される回避命令と、退避命令生成手段520で生成される退避命令と、復帰命令生成手段530で生成される復帰命令について図6を参照して具体的に説明する。
図6に示した例では、ロボットRA,RBの移動する通行路が所定幅W1を有し、この通行路の幅方向中央に所定距離W2だけ離間した所定地点X01,X02が設定されている。また、所定地点X01,X02の垂直二等分線上に所定地点X03,X04(以下、退避位置、回避位置という)が所定距離d1だけ離間し、かつ、通行路の壁から所定距離d2だけ離間して対称な位置に設定されている。なお、所定地点X01から所定地点X04を経由して所定地点X02に至る経路を回避経路という。ここで、所定距離d1,d2は、ロボットRが障害物検知をしながら移動する際に、その妨げとならないように予め決定されており、それぞれの値が同一であってもよい。なお、所定地点X01〜X04は、例えば地図情報データベース210(図3参照)に記憶された地図情報(例えばノード、ノードより細かい区間、位置座標等)に基づいて設定されている。
ここで、回避行動開始状態として、非優先ロボットRAが所定地点X01に位置し、優先ロボットRBが所定地点X02に位置しているものとする。また、非優先ロボットRAは所定地点X02に向かい、優先ロボットRBが所定地点X01に向かうことを前提とする。
回避命令生成手段510は、回避行動開始状態、またはそれ以前に、回避命令を優先ロボットRBに送信する。この回避命令は、優先ロボットRBに対して、非優先ロボットRAが退避位置X03への移動を終了するまで所定地点X02で待機してから、所定地点X02から回避位置X04に移動して、そこで待機するように指示するものである。
退避命令生成手段520は、回避行動開始状態、またはそれ以前に、退避命令を非優先ロボットRAに送信する。この退避命令は、非優先ロボットRAに対して、所定地点X01から退避位置X03に移動して、そこで待機するように指示するものである。
復帰命令生成手段530は、優先ロボットRBが所定地点X01に移動したことを確認してから、復帰命令Aを非優先ロボットRAに送信すると共に、優先ロボットRBが回避位置X04に移動したことを確認してから、復帰命令Bを優先ロボットRBに送信する。
復帰命令Aは、非優先ロボットRAに対して、退避位置X03から所定地点X02に移動して、そこから元のプランに復帰するように指示するものである。
復帰命令Bは、優先ロボットRBに、回避位置X04から所定地点X01に移動して、そこから元のプランに復帰するように指示するものである。
ここで、前記した回避命令、退避命令及び復帰命令A,Bによる時間コストの例を説明する。例えば、ロボットRA,RBが所定地点X01と所定地点X02との間(W2)を回避行動をとらずに直進したときの時間コストをそれぞれ例えば「1」とすると、全体(2台)の時間コストは「2」となる。そして、ロボットRA,RBが回避行動開始状態から退避位置X03または回避位置X04まで直進したときの時間コスト、あるいは、そのときの待機による時間コストを、それぞれ例えば「0.5」とする。
この場合、退避命令によるロボットRAの行動は、例えば「移動(時間コスト「0.5」)」及び「待機(時間コスト「1.0」)」となる。また、回避命令によるロボットRBの行動は、例えば「待機(時間コスト「0.5」)」及び「移動(時間コスト「0.5」)」となる。また、復帰命令A,BによるロボットRA,RBの行動は、それぞれ例えば「移動(時間コスト「0.5」)」となる。
これらをまとめると、ロボットRA,RBが所定地点X01と所定地点X02との間(W2)で回避行動をとって移動したときの時間コストは、それぞれ「2」及び「1.5」となるので、全体(2台)の時間コストはその合計の「3.5」となる。したがって、回避行動をとらずに直進したときの全体の時間コスト「2」と比較すると、回避行動によって全体として、「3.5−2=1.5」の時間コストが余分に消費されることとなる。
ここで説明した余分なコストが、前記した回避コスト算出手段451で回避コストCaとして算出される。なお、この回避コストCaを、様々なパターンで計算した値を記憶手段200(図3参照)に予め格納しておき、必要に応じて、回避コスト算出手段451がそれを参照するように構成してもよい。
(ロボット制御システムの動作)
はじめに、タスク情報が端末5(図1参照)において入力され、端末5にネットワーク4を介して接続されたロボット制御装置3に出力される。ロボット制御装置3は、端末5から入出力手段100(図3参照)を介して入力されたタスク情報を、データベース管理手段310によって、タスク情報データベース220に登録する。そして、端末5における入力が完了した後、各ロボットR(例えばRA,RB)は、それぞれ所定の位置(ホームポジション)で待機する。
ロボットRの主制御部40(図2参照)は、無線通信部60を介してロボット制御装置3から取得したタスク実行命令に基づいて、タスクを実行する。すなわち、各ロボットRは、スケジュールに従って、ロボットRの現在位置(ホームポジション)からタスク実行位置までの経路探索(例えばノード間の経路を探索)及び移動、タスクの実行、タスク終了位置からホームポジションまでの経路探索及び移動の各行動を順次実行する。このロボットRは、移動に際しては、地図情報データベース210(図3参照)に記憶された地図データを取得参照し、障害物検知部80(図2参照)によって、障害物を回避しながら、最短距離で目的地に到達することができる。
ロボットRA,RBは、それぞれ、主制御部40によって、ロボットRA,RBの状態に関するデータ(ステータス情報)を、所定時間間隔毎に生成し、生成したステータス情報を無線通信部60を介してロボット制御装置3に出力する。ここで、ステータス情報には、現在位置情報と、バッテリ残量情報と、ロボットIDとが含まれている。そして、ロボット制御装置3は、入出力手段100を介して入力されたステータス情報を、データベース管理手段310によって、ロボット情報データベース240に登録する。
[ロボット制御装置3における処理]
次に、図7を参照(適宜図5参照)して、2つのロボットR(RA,RB)が、それぞれ予め定められたタスクを実行する際の、ロボット制御装置3において行われる処理について説明する。図7は、ロボット制御装置の行動最適化制御手段の処理を示すフローチャートである。
ロボット制御装置3は、図7に示すように、行動最適化制御手段400によって、以下の処理を実行する。
あらかじめ、行動最適化制御手段400は、移動計画探索手段410によって、2つのロボットRA,RBのタスク実行のための移動計画(プラン)を探索し、各プランのコストを計算し、前記式(7)及び(8)に示すように、コストの低い順に整列しておく。
行動最適化制御手段400は、移動計画選択手段420によって、変数k(初期値1)に「1」を加算する(ステップS1)。このステップS1で加算された結果の変数kは、ロボットRAのプランの添字iとロボットRBのプランの添字jの和(最小値2,最大値m+n)である。そして、行動最適化制御手段400は、移動計画選択手段420によって、kがmとnの和に等しい(k=m+n)かどうかを判定する(ステップS2)。
k≠m+nの場合(ステップS2:No)、すなわち、ロボットRA,RBについてのすべてのプランの組み合わせを選択していない場合、行動最適化制御手段400は、移動計画選択手段420によって、k=i+jとなるすべてのプランPAiとPBjとを組み合わせ、移動計画実行コスト算出手段460によって、組み合わせたプランを実行するためのコストの和(プランコスト)を算出し、算出したそれぞれのプランコストを記憶手段200に記憶する(ステップS3)。
例えば、k=2の場合、行動最適化制御手段400は、移動計画選択手段420によって、i=1かつj=1のプランを選択する。すなわち、ロボットRAに対してはプランPA1を選択し、かつ、ロボットRBに対してはプランPB1を選択する。以下同様に、例えば、k=3の場合、行動最適化制御手段400は、移動計画選択手段420によって、i=1かつj=2のプランと、i=2かつj=1のプランとを選択することになる。
行動最適化制御手段400は、ロボット間距離算出手段430によって、ロボットRAがプランPAiを実行し、かつ、ロボットRBがプランPBjを実行しているときの位置毎(所定時刻)におけるロボット間距離をそれぞれ算出する。そして、行動最適化制御手段400は、算出されたそれぞれのロボット間距離と予め定められている値αとを、出会可能性判定手段440によって比較し、α以下となるロボット間距離があるかどうか、すなわちロボットRA,RBが出会う可能性があるかどうかを判定する。これにより、行動最適化制御手段400は、出会可能性判定手段440によって、k=i+jとなるすべてのプランPAi,PBjの組み合わせで出会う可能性がないかどうかを判定する(ステップS4)。例えば、k=3の場合、行動最適化制御手段400は、出会可能性判定手段440によって、i=1かつj=2のプランと、i=2かつj=1のプランで出会う可能性がないかどうかを判定することになる。
すべての組み合わせで出会う可能性がない場合(ステップS4:Yes)、行動最適化制御手段400は、最適経路選択手段470によって、記憶手段200に記憶した組み合わせ毎のコストのうち最小コストとなるプランの組み合わせを選択する(ステップS5)。そして、行動最適化制御手段400は、計画変更誘導命令生成手段480によって、選択したプランに応じた命令を生成する(ステップS6)。
すなわち、出会う可能性がない組み合わせのプランが最小コストである場合、行動最適化制御手段400は、計画変更誘導命令生成手段480によって、プラン遂行命令を生成する。このプラン遂行命令は、所定時刻に、入出力手段100を介して対象とするロボットRに送信される。プラン遂行命令を受信したロボットRは、指示されたプランで移動して目的のタスクを実行する。
また、出会う可能性があって、一時停止コストCpを含む組み合わせのプランが最小コストである場合、行動最適化制御手段400は、計画変更誘導命令生成手段480によって、一時停止命令を生成する。この一時停止命令は、所定時刻に、入出力手段100を介して非優先ロボットRAに送信される。一時停止命令を受信した非優先ロボットRAは、所定位置で一時停止する。なお、ロボット制御装置3は優先ロボットRBがこの所定位置を通過したことを確認した後、非優先ロボットRAに対して一時停止命令を解除してプランへの復帰を指示する。
さらに、出会う可能性があって、回避コストCaを含む組み合わせのプランが最小コストである場合、行動最適化制御手段400は、計画変更誘導命令生成手段480によって、回避指示信号を生成し、回避制御手段500に出力する。この回避指示信号に基づいて、回避制御手段500は、回避命令生成手段510によって回避命令を生成すると共に、退避命令生成手段520によって退避命令を生成し、所定時刻にロボットRA,RBに入出力手段100を介してそれぞれ送信する。これにより、ロボットRA,RBは回避行動を行う。
一方、k=i+jとなるいずれかの組み合わせで出会う可能性がある場合(ステップS4:No)、行動最適化制御手段400は、出会う可能性がある組み合わせについて、後記する出会起因コスト(Ch)算出処理を実行し(ステップS7)、出会起因コストChを算出する。そして、行動最適化制御手段400は、出会起因コスト決定手段453によって、出会う可能性がある組み合わせについて、記憶手段200に記憶されているプランコストに出会起因コストChを加算して記憶し(ステップS8)、ステップS1に戻る。
なお、前記したステップS4で一度もYesとならない特殊な場合には、k=m+nとなり(ステップS2:Yes)、ロボットRA,RBについてのすべてのプランの組み合わせを選択することになるので、行動最適化制御手段400は、ステップS5に進む。しかしながら、実際上は、ロボットRが行動するエリアのノード数によって、組み合わせの数が数万規模になることがあり、このような場合、ロボットRA,RBについてのすべてのプランの組み合わせを選択し終わる前に、前記したステップS4でYesとなる場合が生じる。そのため、ステップS4の判定処理を実行することにより、行動最適化制御手段400における演算処理の負荷を大幅に低減することができる。
ちなみに、前記したステップS4でYesとなった場合の変数kを、k′(k′≠m+n)とすると、行動最適化制御手段400において、このk′を特定するまでに演算に要したi,jの組み合わせの数Zは下記式(11)を用いて算出される。
Figure 0004621073
次に、図7に示したステップS7の出会起因コスト(Ch)算出処理について図8を参照(適宜図5参照)して説明する。図8は、図7に示した出会起因コスト(Ch)算出処理を示すフローチャートである。
行動最適化制御手段400は、出会起因コスト算出手段450によって、以下の処理を実行する。すなわち、出会起因コスト算出手段450は、回避コスト算出手段451によって、ロボットRA,RBが回避行動をとったときに余分に生じるコストである回避コストCaを算出する(ステップS21)。また、出会起因コスト算出手段450は、一時停止コスト算出手段452によって、非優先ロボットRAが一時停止するときのコストである一時停止コストCpを算出する(ステップS22)。なお、ステップS21及びステップS22の処理は逆の順序で行ってもよいし、並行して行ってもよい。
ステップS22に続けて、出会起因コスト算出手段450は、出会起因コスト決定手段453によって、ステップS21で算出した回避コストCaがステップS22で算出した一時停止コストCpよりも小さい(Ca<Cp)かどうかを判定する(ステップS23)。そして、Ca<Cpの場合(ステップS23:Yes)、出会起因コスト決定手段453は、出会起因コストChを前記式(9)により算出する(ステップS24)。一方、Ca≧Cpの場合(ステップS23:No)、出会起因コスト決定手段453は、出会起因コストChを前記式(10)により算出する(ステップS25)。
次に、各プランの組み合わせによるプランコスト及び出会起因コストについて具体例を用いて説明する。図9は、ロボット制御装置3の地図情報データベース210に記憶された地図情報を説明するための説明図である。この例では、図9に示すように、非優先ロボットRAと、優先ロボットRBとが移動する通行路上に、ノードN(N1〜N15)が設定されている。ロボットRA,RBがノードN間を移動するためのコストを同等とし、簡便のため時間コストのみを考慮することとする。
ロボットRAは、ノードN10に現在位置しており、ロボットRAのタスク実行位置GAがノードN1に設定されているものとする。このとき、ロボットRAは、現在地からタスク実行位置GAまで移動するための最小コストCA1に基づいて、最短経路rA0を移動するプランPA1を実行しようとしている。ここで、最短経路rA0は、「N10→N9→N4→N3→N2→N1」であり、コストCA1は「5」とする。
ロボットRBは、ノード6に現在位置しており、ロボットRBのタスク実行位置GBがノードN5に設定されているものとする。このとき、ロボットRBは、現在地からタスク実行位置GBまで移動するための最小コストCB1に基づいて、最短経路rB0を移動するプランPB1を実行しようとしている。ここで、最短経路rB0は、「N6→N2→N3→N4→N5」であり、コストCB1は「4」とする。すなわち、ロボットRA,RB全体のプランコストは「9」となる。
仮に、ロボットRA,RBが同時にそれぞれのタスク実行位置に等速で移動するようにスケジュールされている場合、ロボット制御装置3の行動最適化制御手段400は、ロボットRA,RBがノードN3とノードN4の間で衝突することを予測し、衝突を避けることに起因するコスト(出会起因コストCh)を算出する。
なお、図9に示した例では、非優先ロボットRAがタスクを実行するための他のプラン、例えば、プランPA2として、移動経路が「N10→N9→N8→N7→N6→N2→N1」となるものがある。この場合のコストCA2は「6」である。したがって、非優先ロボットRAのプランをプランPA2に変更した場合に、ロボットRA,RB全体のプランコストは「10」となる。この場合には、ロボットRA,RBは衝突することはないので、出会起因コストChは算出されない。
ロボットRAがプランPA1を実行し、ロボットRBがプランPB1を実行することにより発生する衝突を避ける1つの方法は、非優先ロボットRAをノードN9において、優先ロボットRBがノードN2からノードN5まで移動するまで、一時停止させることである。この場合に要する待機時間に相当するコストは「3」となる。従って、一時停止コストCpは「3」となる。
ロボットRAがプランPA1を実行し、ロボットRBがプランPB1を実行することにより発生する衝突を避ける別の方法は、例えばノードN3とノードN4の間で、ロボットRA,RBに回避行動をとらせることである。通常、ノードN3とノードN4の間をロボットRA,RBは最小全体コスト「2」で移動することが可能であるが、回避行動をとる場合には、例えば図6を参照して説明したように「3.5」のコストを要する。したがって、回避コストCaは「1.5」となる。
この場合、回避コストCaは一時停止コストCpよりも小さいので、出会起因コストChとして回避コストCaが採用される。出会起因コストCh「1.5」は、ロボットRAがプランPA1を実行し、ロボットRBがプランPB1を実行する際のロボットRA,RB全体のプランコスト「9」に加算される。最終的に、ロボットRA,RBがタスクを実行する際の全体のコストは「10.5」となる。
本実施形態によれば、ロボット制御装置3は、ロボットRA,RBの現在位置とタスク実行位置とに基づいて、出会起因コストChを考慮した組み合わせと、考慮していない組み合わせを含めて最小コストとなるプランの組み合わせを選択し、それに応じた命令を生成するので、ロボットRA,RBは、タスクを実行する際に最適な行動をとることができる。
以上、本発明の好ましい実施形態について説明したが、本発明は前記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で適宜設計変更可能である。例えば、本実施形態では、2台のロボットRA,RBの場合で説明したが、ロボットRの台数は3台以上であってもよい。また、ロボットRが出会う対象は、他のロボットRに限定されず、例えば静的な障害物であってもよく、予め位置が分かっていればよい。
また、本実施形態では、各プランの組み合わせによるプランコスト及び出会起因コストについて具体例を、時間コストの算術和で説明したが、これに限定されるものではなく、種々の観点を導入することができる。例えば、全体としてタスクを一刻も早く終了させるようにしてもよい。この場合のプラン遂行命令について、図9を参照して説明する。
前記したように、例えば、プランPA2として、移動経路が「N10→N9→N8→N7→N6→N2→N1」となるものがあり、この場合のコストCA2は「6」である。そして、プランPB1のコストCB1「4」との和は、「10」であった。したがって、すべてのタスクの終了時刻は、非優先ロボットRAのコストCA2である「6」に依存することになる。
そこで、行動最適化制御手段400は、ロボットRA,RB全体のプランコストを「10」に保ちつつ、すべてのタスクの終了時刻をできるだけ早めるように、ロボットRA,RBのプランを探索する。具体的には、行動最適化制御手段400は、優先ロボットRBのプランをプランPB2に変更し、優先ロボットRBの移動経路を変更するためのプラン遂行命令を生成する。このとき、優先ロボットRBの移動経路は「N6→N7→N8→N9→N4→N5」であり、コストCB2は「5」である。
すなわち、全体の移動コストの内訳は、非優先ロボットRAのコストCA1が「5」であり、優先ロボットRBのコストCB2が「5」である。したがって、すべてのタスクの終了時刻は、両コストCA1,CB2である「5」によって決定される。その結果、前記した非優先ロボットRAのプランを変更した場合よりもすべてのタスクの終了時刻を早めることが可能になる。
また、本実施形態におけるプランコスト及び出会起因コストは、時間に関するものに限定されるものではなく、エネルギーコストでもよく、また、それらを組み合わせてもよい。なお、エネルギーコストとは、例えばバッテリ消費電力のことであり、エネルギーコストの場合の最小コストは全体としてバッテリ消費電力を少しでも節約するようにしたものである。また、組み合わせた場合には、時間とエネルギーのそれぞれに所定の重み付けを行う。
また、本実施形態では、ロボット制御装置3の行動最適化制御手段400は、出会可能性判定手段440によって、ロボットRA,RB同士の出会う可能性を時系列的に変化するロボットRA,RB間の距離に基づいて判定するものとした。このように出会う可能性があると判定した場合に、例えば、その出会う可能性がある地点(ノード等)の道幅(地図情報等)に基づいて、回避行動が可能かどうかを判定するようにしてもよい。さらに、その出会う可能性がある地点(ノード等)の道のつながり方(地図情報等)に基づいて、非優先ロボットRAによる一時停止が可能かどうかを判定するようにしてもよい。このようにした場合、例えば図10の(a)に示すような状況でも迅速に出会起因コストを算出できるようになる。
この例では、図10の(a)に示すように、正方形の各頂点X1,X2,X3,X4を順番に結び、1台のロボットRだけが通行可能な通行路を想定する。そして、ロボットRAは、頂点X1を現在位置ASTARTとして、頂点X3にあるタスク実行位置(終点)AGOALに向けて経路「X1→X2→X3」を進行するプランPA1を実行するようにスケジュールされているものとする。また、ロボットRBは、頂点X3を現在位置BSTARTとして、頂点X1にあるタスク実行位置(終点)BGOALに向けて経路「X3→X2→X1」を進行するプランPB1を実行するようにスケジュールされているものとする。つまり、この例では、非優先ロボットRAによる一時停止では衝突が避けられない状態にある。
この場合には、頂点X2においてロボットRA,RBが出会う可能性があると判定され、さらに、回避行動及び一時停止ができないと判定される。そして、出会起因コストChを無限大とする。そして、最小コストとして他のプランの組み合わせが選択されることとなる。この場合のプラン遂行命令は、例えば、非優先ロボットRAに対して、移動経路を「X1→X4→X3」とするプランPA2を実行するように指示するものである。このようにすることで、事前に実行できないと判定された行動についてのコストを算出する処理を省略することで、処理負荷を低減できるようになる。
前記した実施形態においては、プランを、1つのタスク実行位置までの移動経路として説明したが、本発明は、これに限定されるものではない。この場合の処理を図10の(b)を参照して説明する。
図10の(b)に示すように、正三角形の各頂点X10,X11,X12を順番に結んだ通行路と、正三角形の各頂点X20,X21,X22を順番に結んだ通行路とを想定する。なお、2つの正三角形は対称に配されており、重なる領域がある。ここで、ロボットRA,RBには、同等なタスクT1〜T4のうち2つずつ実行するよう割り当てられている。
そして、ロボットRAは、頂点X10を現在位置ASTARTとして、頂点X11にてタスクT1を実行した後、頂点X12にてタスクT2を実行し、始点でもある終点AGOALに向けて経路「X10→X11→X12→X10」を進行するプランPA1を実行するようにスケジュールされているものとする。また、ロボットRBは、頂点X20を現在位置BSTARTとして、頂点X21にてタスクT3を実行した後、頂点X22にてタスクT4を実行し、始点でもある終点BGOALに向けて経路「X20→X21→X22→X20」を進行するプランPB1を実行するようにスケジュールされているものとする。つまり、ロボットRAは、タスクT1を実行した後、タスクT2を実行し、ロボットRBは、タスクT3を実行した後、タスクT4を実行するようにスケジュールされている。
この場合には、同様の最小コストでロボットRA,RBを行動させることができる。すなわち、例えば、非優先ロボットRAに対して、移動経路を「X10→X12→X11→X10」とするプランPA2を実行するように指示する。つまり、ロボットRAは、タスクT2を実行した後、タスクT1を実行するようにタスクの実行順序が変更されることになる。この場合、行動最適化制御手段400は、タスクスケジュールデータベース230に格納されているタスク別のスケジュールを変更するように、タスク管理手段330に指示する。
また、本実施形態のロボット制御装置3の行動最適化制御手段400を以下のように適用してもよい。すなわち、ロボットRが進路に障害物を検出して一時停止したときに、プラン(通行路)の変更を要求するための計画変更要求信号を、ロボット制御装置3に送信するようにしてもよい。なお、ロボットRは、所定時間間隔毎に、障害物検出動作を繰り返し、この障害物検出動作を所定回数繰り返し後に、同じ場所で障害物を検出したときに、前記した計画切替要求信号を生成する。
この場合には、ロボット制御装置3の行動最適化制御手段400は、移動計画選択手段420によって、現時点のプランとは異なる他のプランに基づいて、該当するロボットRの行動を最適化する命令を生成する。そして、行動最適化制御手段400は、計画変更誘導命令生成手段480によって、該当するロボットRに対して、別プランに誘導するための計画変更誘導命令を生成することになる。
これによれば、ロボットRが一時停止するような突発的な外乱が生じた場合、例えば、ロボットRの移動する通行路上で通行止めがあったり、通行路に面したドアが開けっぱなしになった状態であったりした場合であっても、安全な迂回路を通ることにより、所定のタスクを確実に実行することが可能になる。なお、この場合にバッテリ残量などのエネルギーコストを考慮するとさらに好適なものとなる。
本発明の実施形態に係るロボット制御システムAのシステム構成図である。 ロボットのブロック図である。 ロボット制御装置のブロック構成図である。 ロボット制御装置のタスク管理手段で行われる処理を説明するための説明図である。 ロボット制御装置の行動最適化制御手段のブロック構成図である。 ロボット制御装置の回避制御手段を説明するための説明図である。 ロボット制御装置の行動最適化制御手段の処理を示すフローチャートである。 図7に示した出会起因コスト算出処理を示すフローチャートである。 ロボット制御装置の地図情報データベースに記憶された地図情報を説明するための説明図である。 ロボット制御装置の行動最適化制御手段の処理を説明するための説明図であり、(a)は本実施形態、(b)は他の実施形態を示している。
符号の説明
1 基地局
2 ルーター
3 ロボット制御装置
4 ネットワーク
5 端末
100 入出力手段
200 記憶手段
210 地図情報データベース
220 タスク情報データベース(タスク情報記憶手段)
230 タスクスケジュールデータベース
240 ロボット情報データベース(ロボット情報記憶手段)
300 制御手段
310 データベース管理手段
320 優先度データ生成手段
330 タスク管理手段
340 タスク実行命令生成手段
400 行動最適化制御手段
410 移動計画探索手段
420 移動計画選択手段
430 ロボット間距離算出手段
440 出会可能性判定手段
450 出会起因コスト算出手段
451 回避コスト算出手段
452 一時停止コスト算出手段
453 出会起因コスト決定手段
460 移動計画実行コスト算出手段
470 最適経路選択手段
480 計画変更誘導命令生成手段
500 回避制御手段
510 回避命令生成手段
520 退避命令生成手段
530 復帰命令生成手段
R ロボット

Claims (4)

  1. 現在位置を検出する位置情報検出手段を有して所定のタスクを実行する複数の移動ロボットを制御するロボット制御装置であって、
    前記位置情報検出手段で検出された現在位置を記憶するロボット情報記憶手段と、
    各移動ロボットが実行すべきタスクの実行位置及び優先度を記憶するタスク情報記憶手段と、
    前記優先度に基づいて、各タスクを実行する任意の複数の移動ロボットの組み合わせを決定し、前記決定された移動ロボット毎に、前記ロボット情報記憶手段に記憶された現在位置から、前記タスク情報記憶手段に記憶されたタスクの実行位置までの複数の経路の移動計画を示す移動計画情報をコスト別に算出するタスク管理手段と、
    前記移動計画情報に基づいて、前記決定された複数の移動ロボットが前記タスクを最小コストで実行できるように前記移動ロボットの行動を最適化する命令を生成する行動最適化制御手段とを備え、
    前記行動最適化制御手段は、
    前記タスク管理手段により前記移動ロボット毎に算出された前記移動計画情報を取得し、当該移動ロボットの移動計画情報をコストの低い順序で整列する移動計画探索手段と、
    この移動計画探索手段で前記移動ロボット毎に整列された移動計画情報を組み合わせ、この組み合わせにおいてコストの整列順序の和の値を小さい順に選択すると共に、前記選択された整列順序の和の値が等しくなるような移動計画の組み合わせをすべて選択する移動計画選択手段と、
    この移動計画選択手段でそれぞれ選択された移動計画の組み合わせにおいて、前記複数の移動ロボットに要するコストの和である移動計画実行コストを算出して記憶手段に記憶する移動計画実行コスト算出手段と、
    前記移動計画選択手段でそれぞれ選択された移動計画の組み合わせを前記各移動ロボットが実行するときのそれぞれのタスク実行位置までの移動経路において、当該移動ロボットと予め位置が特定された障害物との間の距離を位置毎または時刻別に算出する距離算出手段と、
    前記選択された移動計画のそれぞれにおいて前記距離算出手段で算出された距離のいずれかが所定値以下であるか否かを判定すると共に、前記所定値以下である場合に当該移動計画を実行する移動ロボット対して前記障害物と出会う可能性があると判定する出会可能性判定手段と、
    この出会可能性判定手段で前記障害物と出会う可能性があると判定された場合に、当該移動ロボットが前記移動経路の中で一時停止する場合のコストおよび前記障害物とすれ違って移動する場合のコストをそれぞれ算出し、算出したコストのうち小さい方を、出会いに起因するコストである出会起因コストとして、当該移動計画の前記移動計画実行コストに加算して前記記憶手段に記憶する出会起因コスト算出手段と、
    前記記憶手段に記憶した組み合わせ毎のコストのうち最小コストとなる移動計画の組み合わせを選択する最適経路選択手段と、
    前記複数の移動ロボット、前記最適経路選択手段で選択された移動計画に誘導する命令である計画変更誘導命令を生成する計画変更誘導命令生成手段と、
    を有することを特徴とするロボット制御装置。
  2. 前記障害物は、前記移動ロボットであり、
    前記出会起因コスト算出手段は、
    優先順位の低いタスクを実行する移動ロボットが、進路上において一時停止する地点である一時停止位置において、優先順位の高いタスクを実行する移動ロボットが通過するまで待機するときに要するコストを算出する一時停止コスト算出手段を含み、
    前記計画変更誘導命令生成手段は、
    この一時停止コスト算出手段で算出されたコストと、前記出会可能性判定手段で前記障害物と出会う可能性があると判定された前記複数の移動ロボットのそれぞれの移動計画に要するコストとの和が、最小コストである場合に、優先順位の低いタスクを実行する移動ロボットに対して前記一時停止位置で停止する命令を生成する、
    ことを特徴とする請求項1に記載のロボット制御装置。
  3. 前記障害物は、前記移動ロボットであり、
    優先順位の高いタスクを実行する移動ロボットを、選択された移動計画情報に基づく経路から、優先順位の低い移動ロボットとのすれ違いを可能とする回避経路に移動させる回避命令を生成する回避命令生成手段と、
    前記優先順位の低いタスクを実行する移動ロボットを、選択された移動計画情報に基づく経路から、前記優先順位の高い移動ロボットの通り抜けを可能とする退避位置に移動させる退避命令を生成する退避命令生成手段と、
    前記移動ロボットを、前記回避経路または前記退避位置から、選択された移動計画情報に基づく経路に復帰させる復帰命令を生成する復帰命令生成手段と、
    を有する回避制御手段をさらに備え、
    前記出会起因コスト算出手段は、
    前記優先順位の高いタスクを実行する移動ロボットが前記回避経路に移動するために生じるコストと、前記優先順位の低いタスクを実行する移動ロボットが前記退避位置に移動するために生じるコストとを合算したコストと、両移動ロボットが前記経路を変更しないときに生じるコストとの差を算出する回避コスト算出手段をさらに含み、
    前記計画変更誘導命令生成手段は、
    この回避コスト算出手段で算出されたコストと、前記出会可能性判定手段で前記障害物と出会う可能性があると判定された前記複数の移動ロボットのそれぞれの移動計画に要するコストとの和が最小コストである場合に、前記回避制御手段に対して前記回避命令、退避命令及び復帰命令を生成するように指示する、
    ことを特徴とする請求項1または請求項2に記載のロボット制御装置。
  4. 前記移動ロボットから移動計画の変更を要求するための計画切替要求信号が入力された場合に、
    前記行動最適化制御手段は、
    前記移動計画情報の中から現時点とは異なる他の移動計画を示す移動計画情報に基づいて、当該移動ロボットの行動を最適化する命令を生成する、
    ことを特徴とする請求項1乃至請求項3のいずれか一項に記載のロボット制御装置。
JP2005149993A 2005-05-23 2005-05-23 ロボット制御装置 Expired - Fee Related JP4621073B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005149993A JP4621073B2 (ja) 2005-05-23 2005-05-23 ロボット制御装置
US11/416,066 US7463948B2 (en) 2005-05-23 2006-05-03 Robot control apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005149993A JP4621073B2 (ja) 2005-05-23 2005-05-23 ロボット制御装置

Publications (2)

Publication Number Publication Date
JP2006326703A JP2006326703A (ja) 2006-12-07
JP4621073B2 true JP4621073B2 (ja) 2011-01-26

Family

ID=37449373

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005149993A Expired - Fee Related JP4621073B2 (ja) 2005-05-23 2005-05-23 ロボット制御装置

Country Status (2)

Country Link
US (1) US7463948B2 (ja)
JP (1) JP4621073B2 (ja)

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080004749A1 (en) * 2006-06-30 2008-01-03 Honeywell International, Inc. System and method for generating instructions for a robot
JP4481291B2 (ja) * 2006-12-01 2010-06-16 本田技研工業株式会社 ロボット、ならびにその制御方法および制御プログラム
KR100846447B1 (ko) * 2006-12-07 2008-07-16 한국전자통신연구원 가정용 모바일 로봇의 청소 및 홈 모니터링 예약 서비스 방법
TW200827957A (en) * 2006-12-21 2008-07-01 Ind Tech Res Inst Method for information transmission with backbone network and a position monitoring system for multiple robotic devices
EP1974869A1 (en) * 2007-03-26 2008-10-01 Honda Research Institute Europe GmbH Apparatus and method for generating and controlling the motion of a robot
US20080320087A1 (en) * 2007-06-22 2008-12-25 Microsoft Corporation Swarm sensing and actuating
JP4839487B2 (ja) 2007-12-04 2011-12-21 本田技研工業株式会社 ロボット及びタスク実行システム
DE102008005124A1 (de) * 2008-01-18 2009-07-23 Kuka Roboter Gmbh Computersystem, Steuerungsvorrichtung für eine Maschine, insbesondere für einen Industrieroboter, und Industrieroboter
US20090291764A1 (en) * 2008-05-21 2009-11-26 George Francis Kirkman System and apparatus for a controlled toy to interact with a computer game
JP5337408B2 (ja) * 2008-05-28 2013-11-06 村田機械株式会社 自律移動体及びその移動制御方法
CN101959653B (zh) * 2008-07-09 2012-10-24 松下电器产业株式会社 路径危险性评价装置
JP5473477B2 (ja) * 2009-08-20 2014-04-16 東芝エレベータ株式会社 無人搬送車対応エレベータ装置及び該エレベータ装置の異常検出方法
US20110172887A1 (en) * 2009-11-30 2011-07-14 Reeve David R Vehicle assembly control method for collaborative behavior
JP5803054B2 (ja) * 2009-12-02 2015-11-04 村田機械株式会社 自律移動装置
US9305263B2 (en) 2010-06-30 2016-04-05 Microsoft Technology Licensing, Llc Combining human and machine intelligence to solve tasks with crowd sourcing
BR112013001647A2 (pt) 2010-07-23 2016-05-24 Beckman Coulter Inc sistema e método contendo unidades analíticas
US8532860B2 (en) 2011-02-25 2013-09-10 Intellibot Robotics Llc Methods and systems for automatically yielding to high-priority traffic
KR20140036178A (ko) 2011-05-13 2014-03-25 베크만 컬터, 인코포레이티드 실험실 제품 이송 요소 및 경로 배열 구조체
US9248982B2 (en) 2011-05-13 2016-02-02 Beckman Coulter, Inc. System and method including laboratory product transport element
ES2729283T3 (es) 2011-11-07 2019-10-31 Beckman Coulter Inc Sistema de centrífuga y flujo de trabajo
KR20140091032A (ko) 2011-11-07 2014-07-18 베크만 컬터, 인코포레이티드 검체 수송 시스템의 자기 감쇠
WO2013070756A2 (en) 2011-11-07 2013-05-16 Beckman Coulter, Inc. System and method for processing samples
BR112014011048A2 (pt) 2011-11-07 2017-05-02 Beckman Coulter Inc braço robótico
EP2776844B1 (en) 2011-11-07 2020-09-30 Beckman Coulter, Inc. Specimen container detection
WO2013070740A1 (en) 2011-11-07 2013-05-16 Beckman Coulter, Inc. Aliquotter system and workflow
US8775337B2 (en) 2011-12-19 2014-07-08 Microsoft Corporation Virtual sensor development
ES2812568T3 (es) 2012-01-25 2021-03-17 Omron Tateisi Electronics Co Robot móvil autónomo para ejecutar asignaciones de trabajo en un entorno físico en el que hay obstáculos estacionarios y no estacionarios
SG11201400963SA (en) * 2012-02-08 2014-04-28 Adept Technology Inc Job management sytem for a fleet of autonomous mobile robots
KR101441187B1 (ko) * 2012-07-19 2014-09-18 고려대학교 산학협력단 자율 보행 로봇 경로 계획 방법
KR101540554B1 (ko) 2012-09-14 2015-07-29 베크만 컬터, 인코포레이티드 모세관 운반부를 갖는 분석 시스템
US11334069B1 (en) 2013-04-22 2022-05-17 National Technology & Engineering Solutions Of Sandia, Llc Systems, methods and computer program products for collaborative agent control
US10168674B1 (en) * 2013-04-22 2019-01-01 National Technology & Engineering Solutions Of Sandia, Llc System and method for operator control of heterogeneous unmanned system teams
US10977589B2 (en) 2013-10-25 2021-04-13 Koninklijke Philips N.V. Task assignment method, computer program product and task assignment system
CN111114377A (zh) * 2013-11-28 2020-05-08 松下电器(美国)知识产权公司 信息输出方法、信息提示装置以及信息输出系统
US9802309B2 (en) 2014-07-24 2017-10-31 X Development Llc Methods and systems for generating instructions for a robotic system to carry out a task
US9358684B1 (en) * 2015-02-18 2016-06-07 Merry Electronics Co., Ltd. Wireless transmission device and robot arm using the same
US20160307561A1 (en) * 2015-04-17 2016-10-20 Lakdas Nanayakkara System for Providing Assistance to the Visually Impaired
US10032137B2 (en) * 2015-08-31 2018-07-24 Avaya Inc. Communication systems for multi-source robot control
JP6666695B2 (ja) * 2015-11-16 2020-03-18 シャープ株式会社 自走式電子機器および自走式電子機器の走行方法
US9987745B1 (en) * 2016-04-01 2018-06-05 Boston Dynamics, Inc. Execution of robotic tasks
US9637310B1 (en) * 2016-08-02 2017-05-02 Amazon Technologies, Inc. Mobile robot group for moving an item
CN106483943B (zh) * 2016-10-13 2019-05-03 北京京东尚科信息技术有限公司 机器人的调度方法、装置以及计算机可读存储介质
CN106625660A (zh) * 2016-12-02 2017-05-10 南宁学院 一种工业机器人行进路径分配方法
US10427162B2 (en) 2016-12-21 2019-10-01 Quandx Inc. Systems and methods for molecular diagnostics
KR20180075176A (ko) * 2016-12-26 2018-07-04 엘지전자 주식회사 이동 로봇 및 그 제어방법
JP6948632B2 (ja) * 2017-02-10 2021-10-13 株式会社リコー 情報処理装置、情報処理システム、移動経路決定方法及びプログラム
CN106843228B (zh) * 2017-03-23 2020-01-03 汕头大学 基于移动终端划线设定智能小车行走路径的方法及系统
CN110520259B (zh) 2017-04-04 2021-09-21 牧今科技 控制装置、拾取系统、物流系统、存储介质以及控制方法
CN110621451B (zh) 2017-04-04 2021-07-06 牧今科技 信息处理装置、拾取系统、物流系统、程序以及信息处理方法
DE112017007392B4 (de) 2017-04-04 2021-11-04 Mujin, Inc. Steuervorrichtung, Greifsystem, Verteilersystem, Programm, Steuerverfahren und Herstellungsverfahren
WO2018185855A1 (ja) 2017-04-04 2018-10-11 株式会社Mujin 制御装置、ピッキングシステム、物流システム、プログラム、制御方法、及び、生産方法
DE112017007399B4 (de) 2017-04-04 2021-09-23 Mujin, Inc. Steuervorrichtung, Greifsystem, Verteilersystem, Programm, Steuerverfahren und Herstellungsverfahren
CN110325328A (zh) * 2017-04-06 2019-10-11 惠普发展公司,有限责任合伙企业 机器人
US10913604B2 (en) * 2017-06-21 2021-02-09 Locus Robotics Corp. System and method for queuing robots destined for one or more processing stations
US10012996B1 (en) * 2017-09-15 2018-07-03 Savioke, Inc. Route planning for a mobile robot using configuration-based preferences
JP2021081758A (ja) * 2018-03-15 2021-05-27 ソニーグループ株式会社 制御装置、制御方法及びプログラム
EP3604193B1 (en) * 2018-08-03 2024-03-13 KONE Corporation Generation of a control signal to a conveyor
JP7092304B2 (ja) 2018-09-21 2022-06-28 株式会社デンソー 経路推定システム、経路推定方法、及び経路推定プログラム
KR20200102295A (ko) 2019-02-21 2020-08-31 삼성전자주식회사 멀티 태스크 관리 방법 및 이를 위한 전자 장치
CN111724015B (zh) * 2019-03-21 2023-08-08 北京京东乾石科技有限公司 一种搬运任务切换方法、装置、设备和存储介质
CN109940621B (zh) * 2019-04-18 2022-05-31 深圳市三宝创新智能有限公司 一种酒店机器人的服务方法和系统及其装置
CN110045739A (zh) * 2019-05-10 2019-07-23 湖北汽车工业学院 一种智能仓储物料机器人、控制系统及控制方法
CN112388624B (zh) * 2019-08-15 2022-07-12 纳恩博(北京)科技有限公司 机器人的控制方法和装置、存储介质及电子装置
CN110673594A (zh) * 2019-08-27 2020-01-10 广州蓝胖子机器人有限公司 一种用于amr集群的调度和寻路方法及系统
WO2021117123A1 (ja) * 2019-12-10 2021-06-17 三菱電機株式会社 通行管理装置および通行管理システム
US20230063370A1 (en) 2021-08-30 2023-03-02 Rapyuta Robotics Co., Ltd. Multi-robot route planning
WO2023058517A1 (en) * 2021-10-07 2023-04-13 Nec Corporation Vehicle scheduling apparatus, control method, and non-transitory computer-readable storage medium
US20230195123A1 (en) * 2021-12-22 2023-06-22 Ford Global Technologies, Llc Systems and methods for controlling autonomous mobile robots in a manufacturing environment
CN115796553B (zh) * 2023-01-10 2023-04-28 广东利元亨智能装备股份有限公司 Agv任务调度方法、装置及agv调度系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08208183A (ja) * 1995-02-03 1996-08-13 Sumitomo Metal Ind Ltd 搬送機器の制御方法とその装置
JPH10301626A (ja) * 1997-02-28 1998-11-13 Shinko Electric Co Ltd 無人車の衝突防止制御装置
JP2003345435A (ja) * 2002-05-24 2003-12-05 Mitsubishi Heavy Ind Ltd ロボットおよびロボットシステム
JP2004280213A (ja) * 2003-03-13 2004-10-07 Japan Science & Technology Agency 分散型経路計画装置及び方法、分散型経路計画プログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH650738A5 (de) * 1980-11-14 1985-08-15 Inventio Ag Einrichtung zur abstandhaltung von spurgebundenen fahrzeugen.
EP0213938B1 (en) * 1985-08-30 1992-08-05 Texas Instruments Incorporated Failsafe brake for a multi-wheel vehicle with motor controlled steering
US5280431A (en) * 1985-08-30 1994-01-18 Texas Instruments Incorporated Method for controlling the movements of a mobile robot in a multiple node factory
US4780817A (en) * 1986-09-19 1988-10-25 Ndc Technologies, Inc. Method and apparatus for providing destination and vehicle function information to an automatic guided vehicle
US4802096A (en) * 1987-05-14 1989-01-31 Bell & Howell Company Controlled direction non-contact detection system for automatic guided vehicles
DE3730105A1 (de) * 1987-09-08 1989-03-16 Pietzsch Ibp Gmbh Verfahren und einrichtung zum sichern eines im raum beweglichen fahrzeugs oder geraets
JP2636403B2 (ja) * 1989-03-08 1997-07-30 株式会社豊田自動織機製作所 無人車の運行制御装置
US5179329A (en) * 1989-04-25 1993-01-12 Shinko Electric Co., Ltd. Travel control method, travel control device, and mobile robot for mobile robot systems
JP2679346B2 (ja) * 1990-03-28 1997-11-19 神鋼電機株式会社 移動ロボットシステムにおける充電制御方式
JP3036109B2 (ja) 1991-04-30 2000-04-24 神鋼電機株式会社 移動ロボットシステムにおける走行制御方法
US5434490A (en) * 1992-07-31 1995-07-18 Daifuku Co., Ltd. Article transport system
US5548511A (en) * 1992-10-29 1996-08-20 White Consolidated Industries, Inc. Method for controlling self-running cleaning apparatus
JP3296105B2 (ja) 1994-08-26 2002-06-24 ミノルタ株式会社 自律移動ロボット
JP4279416B2 (ja) 1999-08-30 2009-06-17 本田技研工業株式会社 2足歩行ロボット
US7362258B2 (en) * 2004-03-31 2008-04-22 Honda Motor Co., Ltd. Transponder detection system using radio and light wave signals

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08208183A (ja) * 1995-02-03 1996-08-13 Sumitomo Metal Ind Ltd 搬送機器の制御方法とその装置
JPH10301626A (ja) * 1997-02-28 1998-11-13 Shinko Electric Co Ltd 無人車の衝突防止制御装置
JP2003345435A (ja) * 2002-05-24 2003-12-05 Mitsubishi Heavy Ind Ltd ロボットおよびロボットシステム
JP2004280213A (ja) * 2003-03-13 2004-10-07 Japan Science & Technology Agency 分散型経路計画装置及び方法、分散型経路計画プログラム

Also Published As

Publication number Publication date
US7463948B2 (en) 2008-12-09
US20060265103A1 (en) 2006-11-23
JP2006326703A (ja) 2006-12-07

Similar Documents

Publication Publication Date Title
JP4621073B2 (ja) ロボット制御装置
JP4348276B2 (ja) ロボット制御装置
US8027750B2 (en) Robot control apparatus
JP4616664B2 (ja) ロボット制御装置、ロボット制御方法およびロボット制御プログラム、ならびに移動ロボット
JP7228420B2 (ja) 情報処理装置、情報処理方法、情報処理システム及びコンピュータプログラム
JP4241673B2 (ja) 移動体の経路生成装置
KR20190008709A (ko) 자율주행 로봇 장치 및 자율 주행 방법
US11554487B2 (en) Robot navigating through waypoints based on obstacle avoidance and method of robot's navigation
KR20210017981A (ko) 로봇을 이용한 서빙 시스템 및 그 작동방법
JP2009205652A (ja) 移動体制御システム及び移動体制御方法
JP4329667B2 (ja) 自律移動システム
WO2008032673A1 (fr) Dispositif mobile
JP2012130986A (ja) 移動体
JP6922978B2 (ja) 自律移動体の業務計画装置
JP2021071891A (ja) 走行制御装置、走行制御方法、及びコンピュータプログラム
JP2018147359A (ja) サービス提供システムおよび要求受付ロボット
KR20170134165A (ko) 이동 로봇 제어 방법
JP4093245B2 (ja) 自律移動装置
JP2017220122A (ja) 移動ロボット
JP2019049937A (ja) ロボット管理装置及びロボット管理システム
JP7317436B2 (ja) ロボット、ロボット制御プログラムおよびロボット制御方法
JP2020004182A (ja) ロボット、ロボット制御プログラムおよびロボット制御方法
JP7074155B2 (ja) 自律移動体の業務計画装置
KR20120012285A (ko) 동적 환경에서 분산 로봇의 경로 탐색 방법
Subramanian et al. A Study on seamless information sharing between robots in identifying the optimal path: An agent based approach

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100803

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100922

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: 20101026

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101029

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4621073

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees