(57)【要約】【課題】  サーバからのタスク実行依頼に基づきロボットがタスクを実行する上で、良好にサーバとロボット間の通信を行い、確実かつ円滑にタスクの実行処理を行うことを目的とする。【解決手段】  通信機能を有するロボット１０が、ネットワークを介したサーバ４０からのタスク実行要求に基づきタスクを実行する方法において、前記サーバ４０が、要求タスク情報と、ネットワーク３０を介して前記ロボット１０から取得した該ロボットのプロファイル情報とを比較して、要求タスクの実行可否の判定を行なう第１の判定ステップと、第１の判定ステップにより実行可能であると判定された場合に、ロボット１０が前記サーバ４０より要求タスク情報を受信して、該ロボット１０のステイタス情報に基づき前記タスクの実行可否を判定する第２の判定ステップと、これらの判定結果を含む見積り情報をサーバに通知する見積り情報通知ステップと、を備えた。【選択図】      図１
2006007341.tif 000002
【特許請求の範囲】
【請求項１】
通信機能を有するロボットと、通信ネットワークを介して前記ロボットにタスク実行要求を行なうサーバとがデータ通信を行なう通信方法において、
前記サーバから前記ロボットへ伝送された要求タスク情報に対して、該ロボットが、前記要求タスク情報に対する実行可否情報を含む見積り情報を前記サーバに送信することを特徴とする通信方法。
【請求項２】
前記サーバが要求タスク情報を伝送する前に、前記ロボットに対して送信先ロボット識別情報を送信して認証を依頼し、該認証依頼の応答に際して前記ロボットが自身のプロファイル情報を前記サーバに送信して接続を確立することを特徴とする請求項１記載の通信方法。
【請求項３】
前記ロボットが前記サーバから伝送された要求タスク情報に基づくタスクを実行した後に、前記サーバに対してタスク完了を通知することを特徴とする請求項１若しくは２記載の通信方法。
【請求項４】
通信機能を有するロボットが、ネットワークを介して接続されるサーバからのタスク実行要求に基づきタスクを実行する方法において、
前記サーバが、要求タスク情報と、前記ネットワークを介して前記ロボットから取得した該ロボットのプロファイル情報とを比較して、前記ロボットによる要求タスクの実行可否を判定する第１の判定ステップと、
前記第１の判定ステップにより実行可能であると判定された場合に、前記ロボットが前記サーバより前記要求タスク情報を受信して、該ロボットのステイタス情報に基づき前記タスクの実行可否を判定する第２の判定ステップと、
前記第２のステップによる判定結果を含む見積り情報を前記サーバに通知する見積り情報通知ステップと、を備えたことを特徴とするロボットのタスク実行方法。
【請求項５】
前記第２の判定ステップにて前記ロボットが前記要求タスクを実行可能であると判定されたら該ロボットは前記要求タスクに対応するタスク実行機能を起動し、前記要求タスクの実行が完了した時にタスクの実行完了を前記サーバに通知することを特徴とする請求項４記載のロボットのタスク実行方法。
【請求項６】
前記ロボットのプロファイル情報が格納されたロボットプロファイルリストデータベースが前記ネットワークを介して前記サーバに接続され、
前記第１の判定ステップの判定結果、前記第２のステップの判定結果、及び前記ロボットによるタスク実行履歴のうち少なくとも何れかを前記ロボットプロファイルリストデータベースに登録し、
前記サーバにて前記ロボットにタスク実行要求を行なう際に、前記ロボットプロファイルリストデータベースを参照することを特徴とする請求項４記載のロボットのタスク実行方法。
【請求項７】
複数のロボットが前記ネットワークを介して前記サーバに接続された請求項４記載のロボットのタスク実行方法であって、
前記第１の判定ステップ若しくは前記第２の判定ステップにて、前記ロボットが前記要求タスクを実行不能であると判定された場合、前記要求タスクを複数のタスクに分割し、複数のロボットにより該分割タスクを実行するようにしたことを特徴とするロボットのタスク実行方法。
【請求項８】
前記要求タスク情報に、その属性情報としてタスクの緊急度に応じたタスクレベルを付加し、前記第２のステップにて前記ロボットが複数の要求タスク情報を受信した場合に、前記タスクレベルに基づき実行優先順位を決定することを特徴とする請求項４記載のロボットのタスク実行方法。
【請求項９】
通信機能を有するロボットと、該ロボットにタスク実行要求を行なうサーバとがネットワークを介して接続されたロボットのタスク実行システムにおいて、
前記サーバが、要求タスク情報と、前記ネットワークを介して前記ロボットから取得した該ロボットのプロファイル情報とを比較して、前記ロボットによる前記要求タスクの実行可否を判定する第１の判定手段を有するとともに、
前記ロボットが、前記第１の判定手段により実行可能であると判定された場合に、前記サーバより前記要求タスク情報を受信して、該ロボットのステイタス情報に基づき前記要求タスクの実行可否を判定する第２の判定手段と、該判定結果を含む見積り情報を前記サーバに通知する見積り情報通知手段と、を備えたことを特徴とするロボットのタスク実行システム。
【請求項１０】
前記ネットワークを介して前記サーバに接続され、前記ロボットのプロファイル情報が格納されたロボットプロファイルリストデータベースを設け、
該ロボットプロファイルリストデータベースには、前記第１の判定手段の判定結果、前記第２の判定手段の判定結果、及び前記ロボットによるタスク実行履歴のうち少なくとも何れかが登録されていることを特徴とする請求項９記載のロボットのタスク実行システム。
【請求項１１】
複数のロボットが前記ネットワークを介して前記サーバに接続された請求項９記載のロボットのタスク実行システムであって、
前記第１の判定手段若しくは前記第２の判定手段にて、前記ロボットが前記要求タスクを実行不能であると判定された場合、前記要求タスクを複数のタスクに分割するタスク分割手段を設けたことを特徴とするロボットのタスク実行システム。
【請求項１２】
前記要求タスク情報に、その属性情報としてタスクの緊急度に応じたタスクレベルを付加し、前記第２の判定手段にて前記ロボットが複数の要求タスク情報を受信した場合に、前記タスクレベルに基づき実行優先順位を決定することを特徴とする請求項９記載のロボットのタスク実行システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般家庭、各種施設等にて自律移動して各種サービスを提供するロボットに係り、特にネットワークを介してサーバと接続し、該サーバからロボットを遠隔的に制御してロボットにタスクを実行させるためのサーバとロボット間の通信方法、並びにロボットのタスク実行方法及び該システムに関する。
【背景技術】
【０００２】
従来より、自律的に行動するロボットに関する技術は種々提案されており、またこのようなロボットは産業用として各種工業に広く利用されているが、近年、一般家庭、各種施設等の室内・室外環境下においてもロボットの導入が要望されている。このようなロボットの用途は、人と共存すること、即ち、人と一緒に暮らし、人の役に立つサービスや娯楽をサポートするサービスを提供することにある。
ロボットを介してユーザに幅広くサービスを提供する際に、ロボット内に予め組込まれたプログラムのみでサービスを行なうことは限界がある。そこで、近年はインターネット等の通信ネットワークを介して外部のサービス提供業者と連携してサービスを提供するシステムが提案されている。
【０００３】
ネットワークを利用したシステムとして、特許文献１（特開２００４−５４１２号公報）には、遠隔地から通信ネットワークを介してロボットを制御し、化学研究を行なう遠隔研究システムが開示されている。これは、化学研究試験を行なう研究ロボットと、該研究ロボットを制御するワークステーションとが中央処理装置にリンクされ、遠隔地にいるユーザがネットワークを介して前記中央処理装置にアクセスして前記研究ロボットを制御し、化学研究試験に参加できるようなっている。
このシステムは遠隔研究という特殊な分野ではあるが、このシステムのようにネットワーク網を利用することによりロボットの活用範囲が画期的に広がることとなる。
この他にも、ロボットに無線ＬＡＮ機能を内蔵してインターネット等のネットワーク網に接続可能な環境下におくことにより、様々なサービスを提供することが可能となる。
【０００４】
一般に、ロボットはユーザから与えられた命令（コマンド）に従った動作を行なうように設計されている。ロボットへのコマンド入力、またはその他のデータ入力は、ロボット本体が具備する操作パネル若しくは各種センサ（マイク、カメラを含む）により直接的に行なう方法と、有線又は無線通信機能を利用したデータ伝送による遠隔制御方法があるが、ユーザがその場に居なくてもロボットを活用することができる遠隔制御方法が極めて有効である。
例えば、特許文献２（特開２００２−２５４３７３号公報）には、広域ネットワークを利用して遠隔から操作するロボット遠隔制御システムが開示されている。これは、サーバが、ユーザ端末から送信された操作情報を第１のネットワークを介して受信し、前記操作情報に基づいてロボットに対応した制御コマンドを発生し、この制御コマンドを第２のネットワークを介してロボットに出力して該ロボットの動作制御を行なうものである。前記第１のネットワークと第２のネットワークは、インターネット等の広域ネットワーク（ＷＡＮ）若しくは域内ネットワーク（ＬＡＮ）の何れかである。
【０００５】
【特許文献１】特開２００１−５４１２号公報
【特許文献２】特開２００２−２５４３７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記したように、従来よりサーバが遠隔地よりネットワークを介してロボットを制御し、タスクを実行させる技術が提案されているが、ユーザから要求されるタスクには、ロボットの有する機能やロボットの現在状態により実行困難である場合が多々考えられる。しかし、従来の技術ではこれらを考慮に入れていないため、遠隔制御によるロボットのタスク達成率は非常に低いか、または、数種類の限定されたタスク処理のみしか実行できないのが実状である。
また、サーバによるロボットの制御範囲内に複数のロボットが存在する場合、どのロボットを選択してよいかがサーバ側では判断出来ないことがあった。
従って、本発明は上記従来技術の問題点に鑑み、サーバからのタスク実行依頼に基づきロボットがタスクを実行する上で、良好にサーバとロボット間の通信を行い、確実かつ円滑にタスクの実行処理を行うことが可能な通信方法、並びにロボットのタスク実行方法及び該システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
そこで、本発明はかかる課題を解決するために、
通信機能を有するロボットと、通信ネットワークを介して前記ロボットにタスク実行要求を行なうサーバとがデータ通信を行なう通信方法において、
前記サーバから前記ロボットへ伝送された要求タスク情報に対して、該ロボットが、前記要求タスク情報に対する実行可否情報を含む見積り情報を前記サーバに送信することを特徴とする。
本発明によれば、前記サーバからの要求タスク情報に対して前記ロボットが見積もり情報を送信する構成としたため、タスクを実行する上で良好な双方向通信を行なうことが可能となる。即ち、前記ロボットがタスクを実行できない場合には、前記見積り情報を前記サーバに送信することで、該サーバは他のタスク実行可能なロボットを探索したり、ユーザに実行不能であることを通知したりすることができ、前記サーバ側でロボットのタスク対応を逐次把握でき、タスク実行処理の流れを円滑かつ速やかに行なうことが可能となる。尚、前記タスクとはある作業を行なう上でのひとまとまりの仕事を意味している。
【０００８】
また、前記サーバが要求タスク情報を伝送する前に、前記ロボットに対して送信先ロボット識別情報を送信して認証を依頼し、該認証依頼の応答に際して前記ロボットが自身のプロファイル情報を前記サーバに送信して接続を確立することを特徴とする。
このように、前記ロボットの個体認証を行うとともに、前記サーバが該ロボットのプロファイル情報を取得することにより、サーバ側にてタスクを処理する上で必要とする情報、即ちタスク実行依頼先のロボットのタスク実行機能等を取得することができ、効率の良い通信を行なうことができる。
さらに、前記ロボットが前記サーバから伝送された要求タスク情報に基づくタスクを実行した後に、前記サーバに対してタスクの完了を通知することを特徴とする。
これにより、サーバ側で要求タスクの実行状況を把握することができ、タスク実行処理を円滑に行なうことが可能となる。
【０００９】
また、通信機能を有するロボットが、ネットワークを介して接続されるサーバからのタスク実行要求に基づきタスクを実行する方法において、
前記サーバが、要求タスク情報と、前記ネットワークを介して前記ロボットから取得した該ロボットのプロファイル情報とを比較して、前記ロボットによる要求タスクの実行可否を判定する第１の判定ステップと、
前記第１の判定ステップにより実行可能であると判定された場合に、前記ロボットが前記サーバより前記要求タスク情報を受信して、該ロボットのステイタス情報に基づき前記タスクの実行可否を判定する第２の判定ステップと、
前記第２のステップによる判定結果を含む見積り情報を前記サーバに通知する見積り情報通知ステップと、を備えたことを特徴とする。
また、前記第２の判定ステップにて前記ロボットが前記要求タスクを実行可能であると判定されたら該ロボットは前記要求タスクに対応するタスク実行機能を起動し、前記要求タスクの実行が完了した時にタスクの実行完了を前記サーバに通知することを特徴とする。
【００１０】
本発明では、前記第１の判定ステップにて前記ロボットの具備する機能が前記要求タスクを実行する条件を満たすか否かを判定し、前記第２の判定ステップにて、前記ロボットが作業を実行できる状態にあるか否か等のステイタス情報に基づき要求タスクの実行可否を判定する構成となっている。このように２段階の判定ステップを備えることにより前記要求タスクを確実に実行することができるロボットにタスク実行依頼を行なうことができる。また、前記サーバによるロボット制御範囲内に複数のロボットが存在する場合には、前記要求タスクに最適なロボットを選択することができる。
【００１１】
さらに、前記見積り情報通知ステップを備えたり、前記要求タスクの実行が完了した時にタスクの実行完了を前記サーバに通知することにより、前記サーバ側でロボットのタスク対応を逐次把握でき、タスク実行処理の流れを円滑かつ速やかに行なうことが可能となる。
さらにまた、前記ロボットのプロファイル情報が格納されたロボットプロファイルリストデータベースが前記ネットワークを介して前記サーバに接続され、
前記第１の判定ステップの判定結果、前記第２のステップの判定結果、及び前記ロボットによるタスク実行履歴のうち少なくとも何れかを前記ロボットプロファイルリストデータベースに登録し、
前記サーバにて前記ロボットにタスク実行要求を行なう際に、前記ロボットプロファイルリストデータベースを参照することを特徴とする。
このように、ロボットプロファイルリストデータベースを設けることにより、前記サーバが要求タスクを実行するに上で最も適したロボットを簡単に選択することができるようになる。
【００１２】
また、複数のロボットが前記ネットワークを介して前記サーバに接続された前記ロボットのタスク実行方法であって、
前記第１の判定ステップ若しくは前記第２の判定ステップにて、前記ロボットが前記要求タスクを実行不能であると判定された場合、前記要求タスクを複数のタスクに分割し、複数のロボットにより該分割タスクを実行するようにしたことを特徴とする。
これにより、一のロボットで要求タスクを達成できない場合であっても前記要求タスクを分割することにより確実に要求タスクを達成することができるようになる。
また、前記要求タスク情報に、その属性情報としてタスクの緊急度に応じたタスクレベルを付加し、前記第２のステップにて前記ロボットが複数の要求タスク情報を受信した場合に、前記タスクレベルに基づき実行優先順位を決定することを特徴とする。これは、例えば緊急度の高いタスクは割り込み実行させるなど、タスクレベルに基づく処理を行うことにより、ユーザの要望に応じた柔軟なタスク実行処理を行うことが可能となる。
【００１３】
またシステムの発明として、通信機能を有するロボットと、該ロボットにタスク実行要求を行なうサーバとがネットワークを介して接続されたロボットのタスク実行システムにおいて、
前記サーバが、要求タスク情報と、前記ネットワークを介して前記ロボットから取得した該ロボットのプロファイル情報とを比較して、前記ロボットによる前記要求タスクの実行可否を判定する第１の判定手段を有するとともに、
前記ロボットが、前記第１の判定手段により実行可能であると判定された場合に、前記サーバより前記要求タスク情報を受信して、該ロボットのステイタス情報に基づき前記要求タスクの実行可否を判定する第２の判定手段と、該判定結果を含む見積り情報を前記サーバに通知する見積り情報通知手段と、を備えたことを特徴とする。
【００１４】
また、前記ネットワークを介して前記サーバに接続され、前記ロボットのプロファイル情報が格納されたロボットプロファイルリストデータベースを設け、
該ロボットプロファイルリストデータベースには、前記第１の判定手段の判定結果、前記第２の判定手段の判定結果、及び前記ロボットによるタスク実行履歴のうち少なくとも何れかが登録されていることを特徴とする。
【００１５】
さらに、複数のロボットが前記ネットワークを介して前記サーバに接続された前記ロボットのタスク実行システムであって、
前記第１の判定手段若しくは前記第２の判定手段にて、前記ロボットが前記要求タスクを実行不能であると判定された場合、前記要求タスクを複数のタスクに分割するタスク分割手段を設けたことを特徴とする。
さらにまた、前記要求タスク情報に、その属性情報としてタスクの緊急度に応じたタスクレベルを付加し、前記第２の判定手段にて前記ロボットが複数の要求タスク情報を受信した場合に、前記タスクレベルに基づき実行優先順位を決定することを特徴とする。
【発明の効果】
【００１６】
以上記載のごとく本発明によれば、サーバからの要求タスク情報に対してロボットが見積もり情報を送信する構成としたため、タスクを実行する上で良好な双方向通信を行なうことができ、かつタスク実行処理の流れを円滑かつ速やかに行なうことが可能となる。
また、第１の判定ステップ（手段）と第２の判定ステップ（手段）とを設けることにより、前記要求タスクを確実に実行することができるロボットにタスク実行依頼を行なうことができる。また、前記サーバによるロボット制御範囲内に複数のロボットが存在する場合には、前記要求タスクに最適なロボットを選択することができる。
また、前記ロボットのプロファイル情報を蓄積したロボットプロファイルリストデータベースを備えることにより、前記要求タスクを実行する最適なロボットを簡単に選択することができる。
さらに、前記要求タスクを分割処理することにより、ロボットのタスク達成率を向上させることができる。
さらにまた、前記タスクが緊急度に応じたタスクレベルを有するようにしたため、前記ロボットが柔軟なタスク実行処理を行うことが可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照して本発明の好適な実施例を例示的に詳しく説明する。但しこの実施例に記載されている構成部品の寸法、材質、形状、その相対的配置等は特に特定的な記載がない限りは、この発明の範囲をそれに限定する趣旨ではなく、単なる説明例に過ぎない。
本実施例に係るロボットの走行環境としては、一般家庭、各種施設内等が挙げられるが、特に前記ロボットは一般家庭内にてユーザの生活を補助、支援、介護する等の各種サービスを提供するロボットであることが好適であり、本実施例では一例として一般家庭内を走行環境とした場合につき説明する。
【００１８】
図２に本発明の一実施形態に係るタスク実行システムの全体構成図を示す。本実施例は、少なくとも一台のロボット１０（１０Ａ、１０Ｂ）が有線又は無線による通信によりインターネット等のネットワーク３０に接続され、さらに該ネットワーク３０にはサーバ４０が接続される。前記ロボット１０と前記サーバ４０はネットワーク３０を介して双方向通信できる。また、前記ロボット１０Ａ、１０Ｂ、…のプロファイル情報が格納されたロボットプロファイルリストデータベース５０が同様に前記ネットワークに接続される。さらにまた、前記ネットワーク３０を介して、或いは無線又は有線通信により直接、前記サーバ４０にサービスコマンドを送信するユーザ端末６０が設けられており、これらによりネットワークシステムが構築される。尚、本実施例においては、前記ロボットプロファイルリストデータベース５０を前記ネットワーク４０に接続しているが、直接、無線などを用いて前記サーバ３０に接続しても構わない。
また、前記サーバ４０の設置場所はロボットのいる建屋内（ユーザ宅内にいわゆるホームサーバとして設置）でも良いし、サービス業者などが別の場所に設置・管理しても同様の効果を得ることができる。
【００１９】
前記ロボット１０は、前記サーバによる遠隔制御領域内に一台若しくは複数台存在し、複数台存在する場合には同一種類であっても異なる種類であっても構わない。
前記ロボットは、例えば、頭部、胴部、脚部（駆動輪）、腕部からなる本体に、カメラ、マイク、スイッチ等の視覚的、聴覚的、触覚的なセンサ、赤外線センサ、超音波センサ、スピーカ、モニタ、及びＣＰＵ（制御部）、電源等の各種機器を必要に応じて具備する構成とする。
また前記ロボット１０（１０Ａ）は、前記ネットワーク３０に接続してデータ通信を行なう無線ＬＡＮ等の通信機能１１と、前記各種機器を駆動してタスクを実行するプログラムを有するタスク実行機能１２と、自身の現在ステイタス情報と要求タスクとを比較してタスク実行可否を判定する第２タスク判定部１３と、該第２タスク判定部１３に基づく判定結果を含む見積り情報を作成する見積り情報作成部１４と、自身の型番、メーカー名や、自身が有するタスク実行機能からなるプロファイル情報を蓄積するプロファイル蓄積部１５と、前記サーバより受信した要求タスクのタスクレベルを検出するタスクレベル検出部１６と、を備えている。
【００２０】
前記サーバ４０は、前記ユーザ端末６０から送信されるサービスコマンドを受信するコマンド受信部４１と、前記ロボット１０に制御コマンドを送信するコマンド送信部４２と、前記サービスコマンドで表される要求タスクに対して、前記ロボットプロファイルリストデータベース５０を参照して最適なロボットを選択するロボット選択部４３と、前記ロボット１０より受信したプロファイル情報と前記要求タスクとを比較してタスク実行可否を判定する第１タスク判定部４４と、前記要求タスクを必要に応じて分割処理するタスク分割部４５と、前記第１判定部４４及び前記第２タスク判定部１３の判定結果を含む履歴情報を前記ロボットプロファイルリストデータベース５０に登録するデータベース登録部４６と、を備えている。
【００２１】
前記ロボットプロファイルリストデータベース５０には、例えば、ロボット１０の身長等の外的特徴や、具備するセンサ等の機能的特徴、充電中や待機中等のステイタス情報などが各ロボット毎に登録されており、随時更新可能な構成となっている。また、前記ロボットプロファイルリストデータベース５０は、各ロボット１０が過去に実行したタスク情報、例えばタスク内容、成功／不成功、実行場所、時間などを履歴として管理・保存することが好適である。
これにより、前記サーバ４０は要求タスクに適したロボットを選択する場合、前記ロボットプロファイルリストデータベース５０の履歴情報を参照し、的確な判断が下せるようになる。
前記ユーザ端末６０は、ユーザからキー入力または音声入力等によりサービスコマンドを発生し、前記ネットワーク３０、若しくは有線又は無線通信により直接前記サーバ４０に送信するサービスコマンド送信部６１を備えている。
【００２２】
図３に本発明に係る一実施形態のシステム概念図を示す。図に示すように、前記ロボット１０を操作したいユーザは、前記ユーザ端末６０から該ロボット１０に対してサービスコマンドを送信する。このコマンドは、ネットワーク３０を介して前記サーバ４０に届き、該サーバ４０にてタスク発生に基づく処理が行われ、前記ネットワーク３０を経由してロボット１０へ送信される。
尚、前記コマンドは、必要に応じてルータ等の通信中継機器２０を経由し、ネットワーク３０を介してサーバ４０に送信しても良い。
図４は本発明に係るロボット遠隔制御の一例を示すイメージ図である。図を参照して、要求タスクが「火元確認」の場合のタスク実行処理を説明する。まず、外出中のユーザ１は携帯電話等のユーザ端末６０から、自宅のロボット１０に対して火元確認のコマンドを送信し、タスク実行依頼を行なう。このとき、操作するユーザ１の視点ではこの処理はユーザ１が直接ロボット１０を制御しているようにみられるが、実際は前記ユーザ端末６０からのタスク実行依頼は、前記ネットワーク３０を介してサーバ４０に伝送され、該サーバにより要求タスクの識別、ロボット１０の認証、ロボット１０の実行可否判断が行なわれた後に、前記サーバ４０により選択されたロボット１０に前記コマンドが送信され、ロボット１０が火元を確認するようになっている。
【００２３】
また、本実施形態において、図３に示すように複数のロボット１０Ａ、１０Ｂ、…が存在する場合に、以下に示す通信形態を利用することもできる。
前記サーバ４０が選択したロボット１０Ｂが、電波到達領域より外れた場所等の通信不良の環境下に位置しており、サーバ４０との通信途絶が発生した場合に、周辺にいるロボット１０Ａを中継して、サーバ４０とサーバ４０が選択したロボット１０Ｂとの通信不良状態を解消する構成とする。
まず、サーバ４０は要求タスクを実行するのに適したロボット１０Ｂを選択し、該サーバ４０はネットワーク３０を介して通信を開始する。しかし、ここで前記ロボット１０Ｂと通信が確立できない場合には、前記サーバ４０は前記中継機器２０の近くで通信が良好な状態にあるロボット１０Ａを探索し、該ロボット１０Ａに対してタスクの実行を依頼する。このとき、該ロボット１０Ａは要求タスクを実行する機能を有していなくても良い。
前記ロボット１０Ａは前記要求タスクをサーバ４０から受信した後、該サーバ４０からの要求タスク情報をロボット１０Ｂに対して中継して送信する。前記ロボット１０Ａと前記ロボット１０Ｂとの通信は、例えば無線に限らず赤外線通信等により行なうことも可能である。
このようにロボット間通信を行なう機能を設けることにより、サーバ４０が実行しようとするタスクに対して適切なロボットと良好に通信を行なえるようになる。
【実施例１】
【００２４】
図１は本実施例１に係るロボットのタスク実行方法に関し、該ロボット１０とサーバ４０間の通信の確立方法を含む基本処理フローを示す。
前記サーバ４０は要求タスクに対して、ロボットプロファイルリストデータベース５０を参照し、該要求タスクを実行できるロボット１０を選択する（１００）。サーバ４０は選択したロボットＩＤ等のロボット識別情報をネットワーク経由で対象となるロボット１０に送信する。前記ロボット１０はＩＤを受信し（１０１）、該ＩＤが自身のＩＤと一致していればサーバ４０に対して応答するとともに、自身のロボットプロファイルデータをサーバ４０に送信する。前記ロボットプロファイルデータは、例えばメーカ、型式、タスク実行のための各種機能等である。
前記サーバ４０では、前記第１タスク判定手段４４（図２参照）によりタスク内容と前記ロボットプロファイルの比較を行い（１０２）、該要求タスクが達成可能か否かの初期判断を下す（１０３）。
【００２５】
前記ロボット１０がタスクを達成可能であると判定された場合には、前記要求タスクの情報を前記ロボット１０に送信して、該要求タスクを実行できるまでの所要時間に関する見積もり依頼を送信する。
前記ロボット１０は、前記サーバ４０からの前記要求タスクに関する見積もり依頼を受けると、現在実行中のタスクの残り時間、受付タスク実行の所要時間、実行待ちタスク処理の所要時間から、前記要求タスクの実行終了までの所要時間に関する見積もりを演算して推定し、該推定した所要時間に対して該ロボット１０が実行できるか否かを判定し（１０４）、実行可能である場合、或いは条件付きで実行可能である場合には該ロボット１０はタスクを実行する（１０５）。一方、実行不可能である場合には、前記ロボット１０は、実行の可否を含む見積もり内容データを前記サーバ４０に送信する。
このように、前記ロボット１０は前記サーバ４０からタスクの見積もり依頼を受けた後、そのタスクに関し、前記第２判定手段１３により実行“可”或いは“条件付可”と判断して実行できる状態となった場合、サーバに対して，実行“可”あるいは“条件付可”をメッセージコンファメーションとして送信し、タスクを実行する。
【００２６】
前記サーバ４０では、前記ロボット１０から受信した前記見積り内容データに基づき、前記要求タスクに対して前記ロボット１０が要求タスクを実行可能であるかを判定し（１０８）、実行可能である場合には作業が完了するまで“待ち”の状態となる。
前記ロボット１０は前記要求タスクを実行し（１０５）、該要求タスクに応じた作業を完了したか否かを判定して（１０６）必要に応じて前記サーバ４０に作業の実行状態を通知し、作業が完了したら（１０７）、完了したことを前記サーバ４０に通知する。
前記サーバ４０は、前記完了の通知をロボットから受信したらタスク実行処理を終了する（１１０）。
一方、前記サーバ４０では、前記ロボット１０から受信したタスク内容とプロファイルの比較により要求タスクを実行不可能であると判断した場合（１０３）、及び前記ロボット１０から受信した見積り内容データが実行不可能であると判断した場合には（１０８）、前記要求タスクに対して前記ロボット１０は現在のステイタス、プロファイルでは実行不可能であることを、前記ロボットプロファイルリストデータベース５０に登録する（１１１）。
そして、再度前記ロボットプロファイルリストデータベース５０より別ロボットを探索し（１１２）、別ロボットを発見したらネットワーク経由で前記別ロボットにＩＤを送信し（１００）、上記した処理を繰り返し行なう。別ロボットが見付からない場合には、実行不可としてユーザに回答する（１１３）。
【００２７】
本実施例に係るタスク実行処理により、前記サーバからの要求タスク情報に対して前記ロボットが見積もり情報を送信する構成としたため、タスクを実行する上で良好な双方向通信を行なうことができ、かつタスク実行処理の流れを円滑かつ速やかに行なうことが可能となる。
また、第１の判定手段４４と第２の判定手段１３とを設けることにより、前記要求タスクを確実に実行することができるロボット１０にタスク実行依頼を行なうことができる。また、前記サーバ４０によるロボット制御範囲内に複数のロボット１０Ａ、１０Ｂ、…が存在する場合には、前記要求タスクに最適なロボットを選択することができる。
また、前記ロボット１０のプロファイル情報を蓄積したロボットプロファイルリストデータベース５０を備えることにより、前記要求タスクを実行する最適なロボットを簡単に選択することができる。
【００２８】
また、本実施例における基本処理フローに、ロボットの機能追加、故障に対する情報更新を行なう処理を付加しても良い。
これは、図１において、前記ロボット１０の一部の機能が故障する等して本来の機能を発揮できない場合、それまで実行できていた作業でも実行可？（１０４）の判断で前記サーバ４０に実行不可の回答を返す場合がある。この場合、サーバ側では元から持っていたプロファイルデータと不整合が生じていることが検知できるので、ロボット側に再度不具合箇所のプロファイルの送信要求を行う。ロボット側ではユーザが予めデータ提供の判断基準を設定していればそれに従って、設定していなければユーザに問い合わせて、プロファイルデータの送信可不可を判断し、可であればサーバに詳細プロファイルを送信し、詳細プロファイルデータを入手したサーバ側はロボットプロファイルリストデータベース５０を更新する。
【００２９】
また、パーツ交換などでロボット１０の機能が向上した場合、ロボット１０はユーザの意向を確認してユーザの許可があれば、ロボットプロファイルリストデータベース５０に自らのプロファイルデータを送信する。これにより、それまで受けられなかったサービスも受けられるようになる。
さらにまた、サービス業者が、ロボットプロファイルリストデータベース５０の参照権限を持っていれば、ロボット１０の修理・交換の提案や、新しく受けられる様になったサービスを提案することもできる。
【実施例２】
【００３０】
次に、図１の別の実施形態として、図５に本実施例２に係るタスク分割処理を含めたタスク実行方法のフローを示す。本実施例２におけるタスク分割処理は、要求タスクの実行機能を有するロボットが存在しない場合に適用される。また、本実施例２において前記見積り作業手順を詳細に説明する。
図５に示すように本実施例２において、要求タスクの発生を起因とした前記サーバ４０と前記ロボット１０のロボットＩＤの送受信、及びロボットプロファイルの送受信については上記した実施例１の基本処理フローと同様である（１００、１０１）。
前記サーバ４０は、前記ロボット１０より受信したロボットプロファイルと前記要求タスクとの比較を行い（１０２）、該要求タスクが達成可能か否かの初期判断を下す（１０３）。
前記ロボット１０が達成可能である場合には、前記要求タスクに対して、該要求タスクの情報を前記ロボット１０に送信して、該要求タスクを実行できるまでの所要時間に関する見積り依頼を送信する。
【００３１】
前記ロボット１０は、サーバ４０からの前記要求タスクに関する見積り依頼を受信すると、図６に示す手順で該要求タスク実行までの所要時間に関する見積りを行なう。
図６を参照して、具体的な見積り作業手順の一例につき以下に説明する。
前記ロボット１０では、作業内容の見積りを開始（１３１）する際に、まず送信されてきた前記タスクレベル検出部１６により前記要求タスクレベルを取得する（１３１）。本実施例ではサーバ４０からの要求タスクレベルをＸとする。前記タスクレベルとは、タスク実行の緊急度を示すレベルであり、サーバ４０が依頼する要求タスクに関して特徴付けられたものである。即ち、例えば、レベルＡ；危険情報などの最重要タスク、レベルＢ；日常的な一般タスク、レベルＣ；一時的な簡便なタスク、というようにレベル分けが行なわれ、ロボット１０が実行順位を決定するための指標として用いる。本実施例では前記タスクレベルを３階層に分類したが、この階層数は判断のきめ細かさに応じて任意に設定できる。
【００３２】
そして、現在、前記ロボット１０が別タスクを実行中か否かを判断し（１３２）、実行中でない場合には見積もり作業を開始する（１３６）。
前記別タスクを実行中である場合には、該別タスクのタスクレベルを取得する（１３３）。本実施例では別タスクのタスクレベルをＹとする。さらに、前記要求タスクレベルＸと現状の前記別タスクレベルＹとを比較し（１３４）、前記別タスクレベルＹが前記要求タスクレベルＸより優先順位が高い場合には、現在実行中の別タスクを中断し（１３５）、要求タスクの見積りタスクを開始する（１３６）。前記別タスクレベルＹが前記要求タスクレベルＸより優先順位が低い場合には、そのまま見積り作業に入る（１３６）。
前記見積り作業では、「現在実行中のタスクの残り時間（充電時間を含む）」（１３７）、「受付タスク実行の所要時間」（１３８）、「実行待ちタスク処理の所要時間」（１３９）を演算し、これらから要求タスクを実行するまでの所要時間を推定する（１４０）。
【００３３】
ここで、図７を参照して、受付タスクの所要時間（１３８）の推定方法をメール読み上げを例に説明する。まず、前記ロボット１０がメールを読み上げるユーザの位置まで移動するための移動時間を、移動距離と走行速度から計算する（１４７）。読み上げるメールの量と前記ロボット１０の発話速度から読み上げ時間を計算し（１４８）、これらの時間の総和を所要時間の推定値とする（１４９）。
図６に戻り、前記推定した所要時間に対して、時間０＜Ｔ１＜Ｔ２を定義し、前記推定所要時間がＴ１時間未満か否かを判断し（１４１）、Ｔ１時間未満にタスクを実行できる場合にはサーバ４０に対して“可”を送信する（１４２）。
次に、前記推定所要時間がＴ１時間以上でかつＴ２時間未満か否かを判断し（１４３）、Ｔ１時間以上でかつＴ２時間未満でタスクを実行できる場合には、サーバ４０に対して“条件付可”を送信する（１４４）。
さらに、前記推定所要時間がＴ２時間以上か否かを判断し（１４５）、タスクを実行する際にＴ２時間以上かかる場合には、前記サーバ４０に対して“不可”を送信するとともに（１４６）、中断した作業があれば該作業を復帰する。
以上の手順により、前記ロボット１０から前記サーバ４０に送信されてきた見積り内容データ（可、条件付可、不可）に基づき、図５に示すように、前記サーバ４０では前記要求タスクに対して前記ロボット１０が実行可能かどうかを判断する（１０８）。
ここで、前記ロボット１０が一台のロボット１０で前記要求タスクを実行可能な場合には、上記した実施例１の基本処理フローと同様の処理を行う。
【００３４】
一方、前記サーバ４０からの要求タスクを満たすロボット１０が存在しない場合、即ち、タスク内容とロボットプロファイルとを比較した時に（１０２）、タスク達成不可能と判断された場合（１０３）、前記サーバ４０はこの結果を前記ロボットプロファイルリストデータベース５０に登録（１１１）した後、別ロボットの探索を行なう（１１２）。前記ロボットプロファイルリストデータベース５０に前記要求タスクを実行可能な別ロボットが存在する場合には、図５のＡに戻り、ロボット選択（１００）からタスク実行終了（１１０）までの基本処理フローを行なう。
このとき、前記ロボットの探索（１１２）において、別ロボットが存在しない場合には、前記タスク分割部４５によりタスク分割処理を実行する（１２６）。
【００３５】
前記タスク分割処理手順のフローを図８に示す。
前記タスク分割（１２６）では、前記要求タスクを作業の性質、例えば移動、メール読み上げ、ハンドを使った作業、片付け、留守番等、に応じて分割する。
その後、タスク分割内容に応じて前記ロボットプロファイルリストデータベース５０と照合して、分割した各タスクに対応可能なロボットを探索する（１５０）。例えば、前記要求タスクを分割した結果、タスクＩ、タスクII、タスクIIIに分割されたと仮定する。
このとき、前記ロボット探索（１５０）にて、分割したタスクＩ〜IIIのうち一つでも該当するロボットが存在しない場合には、タスク実行は不可能であると判断し（１５９）、前記サーバ４０はタスク実行不能として探索作業を終了する（１６０）。
前記タスクＩ〜IIIの全てにおいて各タスクを実行するタスクが発見できるかどうかを判断し（１５１、１５２、１５３）、発見できた場合には前記分割タスクＩ〜IIIについて、図５のＡからの処理フローを実行する。
【００３６】
前記分割タスクにおける図５の処理フローで、Ｅまで流れた場合は、flg*(*；Ｉ〜III)=0とし（１５４）、Ｃまで流れた場合は、flg*(*；Ｉ〜III)=1とする（１５５）。この結果を受け、タスク分割処理ではフラグチェックを行う（１５６）本実施例では、該フラグチェックでは全分割タスクにおけるflg*の積をとり、該flgが1であれば分割タスクを別々のロボットで実行可能（１５７）と判断してＤに進み、実行待ち状態となっているロボットに対して実行指示を送信する（１２１）。
前記積flgが0であれば、実行不能と判断して処理を終了する（１５８）。
このようにして、前記要求タスクを一のロボットで実行不能の場合には、タスク分割を行うことにより、確実に要求タスクを達成することができるようになる。
【実施例３】
【００３７】
図９に、本実施例３に係るタスク実行方法のフローを示す。本実施例３では、前記要求タスクを実行するロボット１０が宅内に一台のみの場合のタスク実行方法であり、上記した実施例１の基本処理フローと略同様の手順を有するため、同様の箇所については概略のみ説明する。
前記サーバ４０にユーザからタスクの実行要求があると、該サーバ４０は前記ロボットプロファイルリストデータベース５０から前記ロボット１０を選択し（１００）、選択したロボットＩＤを前記ロボット１０に送信する。該ロボット１０は、前記ＩＤを受信すると（１０１）、自身のプロファイルを前記サーバ４０に送信する。
前記サーバ４０は、タスク内容と前記プロファイルを比較し（１０２）、タスク達成可能かどうかを初期判断する（１０３）。
【００３８】
前記ロボット１０が前記要求タスクを達成可能である場合には、前記サーバ４０から前記ロボット１０に対して要求タスクの情報及び見積り依頼を送信し、該ロボット１０は該要求タスクを実行可能であるか否かを判断し（１０４）、実行可能である場合、或いは条件付きで実行可能である場合には、上記した実施例２に記載のごとく見積り内容データを作成し、前記サーバ４０に送信するとともに、タスクを実行し（１０５）、必要に応じて完了したか否かを判断して（１０６）、作業状態を前記サーバ４０に送信し、作業が完了したら（１０７）、完了通知を送信する。
一方、実行不可能である場合には、前記ロボット１０は、実行の可否を含む見積もり内容データを前記サーバ４０に送信する。
【００３９】
前記サーバ４０では、前記ロボット１０から受信した前記見積り内容データに基づき、前記要求タスクに対して前記ロボット１０が要求タスクを実行可能であるかを判定し（１０８）、実行可能である場合には作業が完了するまで“待ち”の状態となる（１０９）。
前記サーバ４０は、前記完了の通知をロボットから受信したらタスク実行処理を終了する（１１０）。
前記サーバ４０では、前記ロボット１０から受信したタスク内容とプロファイルの比較により要求タスクを実行不可能であると判断した場合（１０３）、及び前記ロボット１０から受信した見積り内容データが実行不可能であると判断した場合には（１０８）、前記要求タスクに対して前記ロボット１０は現在のステイタス、プロファイルでは実行不可能であることを、前記ロボットプロファイルリストデータベース５０に登録し（１１１）、実行不能であることをユーザに通知する。
【００４０】
また、本実施例に付加することができる処理として、相互認証処理がある。前記ロボット１０と前記サーバ４０間での通信開始時に、身元を偽証し、意図的になりすましたロボット１０、或いはサーバ４０が接続すると、正規のロボット１０のプロファイルやロボット１０が保有するユーザの個人情報を、偽証したサーバ４０を利用して盗まれる危険や、逆に正規のサーバ４０に存在するユーザの個人情報等を、偽証したロボット１０を使用して盗まれる危険がある。
これらのロボット１０やサーバ４０の「なりすまし（偽証）」対策として、図９に示すように、通信確立後に相手の認証を行なう手順を追加することが好ましく、これにより悪意をもった偽証に対処可能である。具体的な相互認証の方法は、周知のインターネットウェブサイトで利用されている暗号鍵等の認証技術を利用することができる。
【００４１】
さらに、本実施例のタスク実行処理において、図１０に示される作業予約処理を付加することもできる。前記ロボット１０は、例えば“カーテンを開ける−カーテンを閉める”、“電気を点ける−電気を消す”等のように、対になる作業が関連付けられたタスクにより構成される対語データベースを有する。
前記作業予約処理手順は次のようになる。前記ロボット１０にユーザから作業指示があったら（１７０）、該ロボット１０は、前記指示の主旨を解釈し（１７１）、必要に応じて復唱する（１７２）。このとき、必要性は主旨解釈の属性として与えられることが好ましい。即ち、ユーザからの指示を解釈する際に参照するデータベースに事前に登録された内容に応じてその有無を決定すると良い。
そして、前記主旨を前記対語データベースで検索し（１７３）、該主旨が対語データベースのキーワードに存在するか否かを判断し（１７４）、存在しない場合には指示された作業のみを実行する（１７５）。
【００４２】
前記対語データベースに前記主旨に対応するキーワードが存在する場合には、対応する対語の作業をいつ行なえば良いかをユーザに問い返す（１７７、１８１）。この問い返す行為を、指示を受けた直後に行なうか、指示された作業を完了した後に行なうかは、その作業の付帯情報として前記対語データベースに設定される。この設定に基づき、問返しが事前か否かを判断し（１７６）、事前に設定されている場合には、ユーザに対の作業をいつ行なうか問い合せ（１７７）した後、指示された作業を実行し（１７８）、事前に設定されていない場合には、指示された作業を実行（１８０）した後に、ユーザに対の作業をいつ行なうか問い合せを行なう（１８１）。そして、指示された時刻になったら、作業をしても良いかユーザに確認してから実行する（１７９）。
また、ユーザは外出先からユーザ端末経由で指示することも、屋内で直接前記ロボットに指示することも可能である。
【００４３】
前記作業予約手順に基づいた処理の一例として、例えば、ユーザから「カーテンを開けて」という指令を受けた場合、「カーテンを開けます」と復唱し、カーテンを開けるだけではなく、ユーザに「いつ頃カーテンを閉めますか」と問い返す。また、指示された時刻になったらロボットは「指示された時刻になりました。カーテンを閉めますか？」と発声または表示等して確認し、ユーザの許可を得た上でカーテンを閉める。
また、ユーザから「こっちに来て」と指示があれば、しばらく経ってから「もう(待機位置に)戻っても良いですか」とロボットに尋ねさせることも可能である。
これらの機能を追加することにより、前記ロボット１０がユーザのタスク要求に対してより柔軟なタスク実行処理を行うことができるようになる。
【図面の簡単な説明】
【００４４】
【図１】本発明の実施例１に係るタスク実行処理のフロー図である。
【図２】本発明の一実施形態に係るタスク実行システムの全体構成図である。
【図３】本発明に係る一実施形態のシステム概念図である。
【図４】本発明に係るロボット遠隔制御のイメージ図である。
【図５】本発明の実施例２に係るタスク分割処理を含むタスク実行処理のフロー図である。
【図６】ロボットのタスク見積り手順を示すフロー図である。
【図７】タスク実行所要時間の推定手順を示すフロー図である。
【図８】図５の分割タスクの実行可否判断処理手順を示すフロー図である。
【図９】本発明の実施例３に係る一のロボットのみによるタスク実行処理のフロー図である。
【図１０】タスク予約処理手順を示すフロー図である。
【符号の説明】
【００４５】
１０、１０Ａ、１０Ｂ  ロボット
１１    通信機能
１２    タスク実行機能
１３    第２タスク判定部
１４    見積り情報作成部
２０    通信中継機器
３０    ネットワーク
４０    サーバ
４３    ロボット選択部
４４    第１タスク判定部
４５    タスク分割部
５０    ロボットプロファイルリストデータベース
６０    ユーザ端末
【図１】
2006007341.tif 000003
【図２】
2006007341.tif 000004
【図３】
2006007341.tif 000005
【図４】
2006007341.tif 000006
【図５】
2006007341.tif 000007
【図６】
2006007341.tif 000008
【図７】
2006007341.tif 000009
【図８】
2006007341.tif 000010
【図９】
2006007341.tif 000011
【図１０】
2006007341.tif 000012