(57)【要約】【課題】コンテンツの再生とロボットの動作の実行タイミングを容易に合わせること。【解決手段】ロボットと、ロボットの動作を制御する情報処理装置とからなり、情報処理装置が、コンテンツを再生するコンテンツ再生部と、前記コンテンツと、コンテンツを再生する時に発生するイベントとロボットの動作を制御するための制御コマンドを対応付けたイベント情報を記憶した記憶部と、イベントが発生した場合に、そのイベントに対応付けられている制御コマンドを含むイベント情報を生成するイベント実行部と、取得されたイベント情報に含まれる制御コマンドから、ロボットが理解可能な制御内容を有する送信情報を生成するロボット制御処理部と、送信情報をロボットに送信する通信部とを備え、ロボットが、受信した送信情報に含まれる制御内容に基づいて所定の動作を実行する動作実行部を備える。【選択図】図４
2018207400.tif 000002
【特許請求の範囲】
【請求項１】
ロボットと、ロボットの動作を制御する情報処理装置とからなるロボット制御システムであって、
前記情報処理装置が、
コンテンツを再生するコンテンツ再生部と、
前記コンテンツと、前記コンテンツを再生する時に発生するイベントと前記ロボットの動作を制御するための制御コマンドを対応付けたイベント情報を記憶した記憶部と、
イベントが発生した場合に、そのイベントに対応付けられている制御コマンドを含むイベント情報を生成するイベント実行部と、
前記生成されたイベント情報を取得し、前記イベント情報に含まれる制御コマンドから、前記ロボットが理解可能な制御内容を有する送信情報を生成するロボット制御処理部と、
前記送信情報を前記ロボットに送信する第１通信部とを備え、
前記ロボットが、
前記送信情報を受信する第２通信部と、
受信した前記送信情報に含まれる制御内容に基づいて、所定の動作を実行する動作実行部とを備えたことを特徴とするロボット制御システム。
【請求項２】
前記情報処理装置から前記ロボットに送信される前記送信情報に、ロボットに発話させる発話文字列と、ロボットに動作させる身体動作を設定した動作情報が含まれ、
前記ロボットの動作実行部が、
受信した前記送信情報に含まれる発話文字列を、合成音声によって出力する音声出力部と、
前記送信情報に含まれる動作情報に対応した身振り動作をさせる身体駆動部とを備えたことを特徴とする請求項１に記載のロボット制御システム。
【請求項３】
前記情報処理装置が、前記記憶部に、所定の情報を前記ロボットが理解可能な情報に変換する規則であるプロトコル情報を予め記憶し、
前記取得したイベント情報に含まれる制御コマンドが前記ロボットが理解できない情報の場合、前記制御コマンドを、前記プロトコル情報を利用して、前記ロボットが理解可能な制御内容に変換する情報変換部をさらに備え、
前記第１通信部が、前記変換された制御内容を有する送信情報を前記ロボットに送信することを特徴とする請求項１に記載のロボット制御システム。
【請求項４】
前記制御コマンドには、制御するロボットを特定する制御対象と、ロボットに与える指示を示した制御内容とが含まれることを特徴とする請求項１から３のいずれかに記載のロボット制御システム。
【請求項５】
前記制御コマンドに含まれるロボットに与える指示を示した制御内容には、ロボットに発話させる発話文字列を示した発話情報と、ロボットの身体を動作させるための動作情報とが含まれることを特徴とする請求項４に記載のロボット制御システム。
【請求項６】
前記制御内容に含まれる発話情報に、所定の記号または文字によって発話内容を表現した指定変数を利用することを特徴とする請求項５に記載のロボット制御システム。
【請求項７】
前記制御コマンドには、ロボットに接続された外部制御機器を特定する制御対象と、その外部制御機器に対する制御内容とが含まれることを特徴とする請求項１から３のいずれかに記載のロボット制御システム。
【請求項８】
前記イベントには、操作担当者によって所定の選択入力がされる入力操作イベントと、所定の文字列が表示される表示イベントと、所定のタイマー設定時間が経過したことによるタイマーイベントが含まれることを特徴とする請求項１から７のいずれかに記載のロボット制御システム。
【請求項９】
ロボットの動作を制御するロボット制御システムの情報処理装置であって、
コンテンツを再生するコンテンツ再生部と、
前記コンテンツと、前記コンテンツを再生する時に発生するイベントと前記ロボットの動作を制御するための制御コマンドを対応付けたイベント情報を記憶した記憶部と、
イベントが発生した場合に、そのイベントに対応付けられている制御コマンドを含むイベント情報を生成するイベント実行部と、
前記生成されたイベント情報を取得し、前記イベント情報に含まれる制御コマンドから、前記ロボットが理解可能な制御内容を有する送信情報を生成するロボット制御処理部と、
前記送信情報を前記ロボットに送信する通信部とを備えたことを特徴とする情報処理装置。
【請求項１０】
ロボットと、ロボットの動作を制御する情報処理装置とからなるロボット制御システムの制御方法であって、
前記情報処理装置が、
コンテンツを再生するコンテンツ再生ステップと、
前記コンテンツを再生中において、イベントが発生した場合に、そのイベントに対応付けられている制御コマンドを含むイベント情報を生成するイベント実行ステップと、
前記生成されたイベント情報を取得し、前記イベント情報に含まれる制御コマンドから、前記ロボットが理解可能な制御内容を有する送信情報を生成するロボット制御処理ステップと、
前記送信情報を前記ロボットに送信する送信ステップとを備え、
前記ロボットが、
前記送信情報を受信する受信ステップと、
受信した前記送信情報に含まれる制御内容に基づいて、所定の動作を実行する動作実行ステップとを備えたことを特徴とするロボット制御システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ロボット制御システムに関し、特に、予め作成された書面や画像データなどからなるコンテンツを再生させてプレゼンテーション等を行う場合に、再生させるコンテンツ内容に同期させて、ロボットに、コンテンツ内容に対応した発話などの動作を実行させることのできるロボット制御システムに関する。
【背景技術】
【０００２】
従来から、担当者が、パソコン等の情報処理装置で、文書、図面、画像などを含むコンテンツを作成し、設定された順序どおりに、そのコンテンツを表示再生させるプレゼンテーションシステムが利用されている。また、ユーザの携帯端末で作成されたコンテンツを、ネットワークを介して、サイネージ装置に配信し、そのコンテンツを表示再生させるデジタルサイネージシステムも利用されている。
【０００３】
また、ユーザの携帯端末からの操作で、サイネージ装置に表示されている所望のコンテンツを選択することによって、選択されたコンテンツの詳細データを、ユーザの携帯端末に表示させる情報提供装置も提案されている、
さらに、人間に似せた身体を持つロボットと連携し、再生させるコンテンツの順序に対応させて、ロボットに所定の発話や動作をさせるようにしたプレゼンテーションシステムも利用されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−９０６００号公報
【特許文献２】特開２０１５−１６２１４９号公報
【非特許文献】
【０００５】
【非特許文献１】「ロボピッチ取扱い説明書」、[online]、[平成２９年４月３日検索]、インターネット[URL:http://www.robo-pitch.com/download/manual.pdf]
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、設定された順序どおりに、コンテンツを表示再生させるためには、担当者がコンテンツ内容とともに、コンテンツに含まれる情報を再生させる順序や再生間隔時間なども詳細に予め決めてコンテンツを作成する必要があった。
また、ユーザの携帯端末からの操作で、サイネージ装置に表示させるコンテンツを作成したり、サイネージ装置に表示されるコンテンツの詳細データを携帯端末に表示させたりする場合には、ユーザは、その都度、所定の面倒な操作をする必要があった。
【０００７】
また、担当者が、予め作成された文書などを含むコンテンツを、設定された順序どおりに、表示再生させながらプレゼンテーションを行い、担当者が自ら入力操作をして、ロボットに、そのコンテンツの順序に同期した所定の発話や動作をさせることは、熟練を要し、円滑な進行ができない場合があった。
たとえば、コンテンツの表示再生処理と、ロボットの制御処理とが連携していない場合は、プレゼンテーションをしている担当者（以下、操作担当者とも呼ぶ）が、所定のコンテンツを表示している状態で、ロボットに所定の発話等を行わせるためには、その都度、ロボットに対して、発話をさせる文字列などの指示内容を入力する必要があり、操作担当者の手間と操作負担が大きく、円滑なプレゼンテーションが難しい。
【０００８】
あるいは、操作担当者が、プレゼンテーションで利用するコンテンツの順序と、表示された各コンテンツを説明するのにかかる予想時間等を予め設定し、その設定内容に対応するように、ロボットが実行する発話や動作の内容と順序とその実行のタイミングとを、ロボットに予め設定しておけば、コンテンツの表示とロボットの動作とを同期させることが可能になる。しかし、実際にプレゼンテーションを実行する場合には、プレゼンテーションの開始と同時に、ロボットも起動させ、操作担当者は、設定された時間どおりに、プレゼンテーションでの説明を進行させる必要があり、進行時間がずれた場合には、コンテンツの表示とロボットの動作とが、同期しなくなることがあり、また、同期がずれないようにするためには、操作担当者がロボットの動作を一時停止させる必要があった。
【０００９】
すなわち、人間が行うプレゼンテーションで想定されるコンテンツの再生時間間隔に会わせて、ロボットが実行する一連の動作の実行タイミングを予め設定しておく必要があるが、実際のプレゼンテーションでは、操作担当者が、予め想定された時間間隔でコンテンツの説明ができない場合があるので、コンテンツの再生および説明と、ロボットの動作とを同期させるのは難しい。
【００１０】
逆に、プレゼンテーションをする操作担当者が、ロボットに設定した実行タイミングに、コンテンツの再生や説明を合わせる必要があり、プレゼンテーションをする前に、何度も、プレゼンテーションの練習を行ったり、説明内容の見直しや、ロボットの動作の実行タイミングの時間調整を行ったりすることが必要であり、プレゼンテーションの事前準備段階における操作担当者の負担が大きい。
【００１１】
また、プレゼンテーションで利用するコンテンツの再生および説明とロボットの動作を同期させるためには、操作担当者の説明内容や再生コンテンツの内容から、プレゼンテーションの進行状況を監視し、さらに、その進行状況に対応させてロボットの動作を制御するような特別な専用アプリケーションプログラムを開発する必要があり、その開発に多くの時間とコストがかかる。
【００１２】
そこで、この発明は、以上のような事情を考慮してなされたものであり、ロボットに与える指示内容を、コンテンツの作成者が予めコンテンツに記述し、ユーザによる特定のイベント発生時に、所定の指示内容をロボットに与えることにより、プレゼンテーション等で利用するコンテンツの再生と、ロボットの動作の実行タイミングとを容易に合わせることを可能としたロボット制御システムを提供することを課題とする。
【課題を解決するための手段】
【００１３】
この発明は、ロボットと、ロボットの動作を制御する情報処理装置とからなるロボット制御システムであって、前記情報処理装置が、コンテンツを再生するコンテンツ再生部と、前記コンテンツと、前記コンテンツを再生する時に発生するイベントと前記ロボットの動作を制御するための制御コマンドを対応付けたイベント情報を記憶した記憶部と、イベントが発生した場合に、そのイベントに対応付けられている制御コマンドを含むイベント情報を生成するイベント実行部と、前記生成されたイベント情報を取得し、前記イベント情報に含まれる制御コマンドから、前記ロボットが理解可能な制御内容を有する送信情報を生成するロボット制御処理部と、前記送信情報を前記ロボットに送信する第１通信部とを備え、前記ロボットが、前記送信情報を受信する第２通信部と、受信した前記送信情報に含まれる制御内容に基づいて、所定の動作を実行する動作実行部とを備えたことを特徴とするロボット制御システムを提供するものである。
【００１４】
また、前記情報処理装置から前記ロボットに送信される前記送信情報に、ロボットに発話させる発話文字列と、ロボットに動作させる身体動作を設定した動作情報が含まれ、前記ロボットの動作実行部が、受信した前記送信情報に含まれる発話文字列を、合成音声によって出力する音声出力部と、前記送信情報に含まれる動作情報に対応した身振り動作をさせる身体駆動部とを備えたことを特徴とする。
【００１５】
また、前記情報処理装置が、前記記憶部に、所定の情報を前記ロボットが理解可能な情報に変換する規則であるプロトコル情報を予め記憶し、前記取得したイベント情報に含まれる制御コマンドが前記ロボットが理解できない情報の場合、前記制御コマンドを、前記プロトコル情報を利用して、前記ロボットが理解可能な制御内容に変換する情報変換部をさらに備え、前記第１通信部が、前記変換された制御内容を有する送信情報を前記ロボットに送信することを特徴とする。
【００１６】
また、前記制御コマンドには、制御するロボットを特定する制御対象と、ロボットに与える指示を示した制御内容とが含まれることを特徴とする。
また、前記制御コマンドに含まれるロボットに与える指示を示した制御内容には、ロボットに発話させる発話文字列を示した発話情報と、ロボットの身体を動作させるための動作情報とが含まれることを特徴とする。
また、前記制御内容に含まれる発話情報に、所定の記号または文字によって発話内容を表現した指定変数を利用することを特徴とする。
【００１７】
また、前記制御コマンドには、ロボットに接続された外部制御機器を特定する制御対象と、その外部制御機器に対する制御内容とが含まれることを特徴とする。
また、前記イベントには、操作担当者によって所定の選択入力がされる入力操作イベントと、所定の文字列が表示される表示イベントと、所定のタイマー設定時間が経過したことによるタイマーイベントが含まれることを特徴とする。
【００１８】
また、この発明は、ロボットの動作を制御するロボット制御システムの情報処理装置であって、コンテンツを再生するコンテンツ再生部と、前記コンテンツと、前記コンテンツを再生する時に発生するイベントと前記ロボットの動作を制御するための制御コマンドを対応付けたイベント情報を記憶した記憶部と、イベントが発生した場合に、そのイベントに対応付けられている制御コマンドを含むイベント情報を生成するイベント実行部と、前記生成されたイベント情報を取得し、前記イベント情報に含まれる制御コマンドから、前記ロボットが理解可能な制御内容を有する送信情報を生成するロボット制御処理部と、前記送信情報を前記ロボットに送信する通信部とを備えたことを特徴とする情報処理装置を提供するものである。
【００１９】
また、この発明は、ロボットと、ロボットの動作を制御する情報処理装置とからなるロボット制御システムの制御方法であって、前記情報処理装置が、コンテンツを再生するコンテンツ再生ステップと、前記コンテンツを再生中において、イベントが発生した場合に、そのイベントに対応付けられている制御コマンドを含むイベント情報を生成するイベント実行ステップと、前記生成されたイベント情報を取得し、前記イベント情報に含まれる制御コマンドから、前記ロボットが理解可能な制御内容を有する送信情報を生成するロボット制御処理ステップと、前記送信情報を前記ロボットに送信する送信ステップとを備え、前記ロボットが、前記送信情報を受信する受信ステップと、受信した前記送信情報に含まれる制御内容に基づいて、所定の動作を実行する動作実行ステップとを備えたことを特徴とするロボット制御システムの制御方法を提供するものである。
【発明の効果】
【００２０】
この発明によれば、情報処理装置において、コンテンツと、コンテンツを再生する時に発生するイベントとロボットの動作を制御するための制御コマンドを対応付けたイベント情報を記憶しておき、たとえば、コンテンツの再生中において、イベントが発生した場合に、そのイベントに対応付けて設定情報に記憶されている制御コマンドを含むイベント情報を取得し、イベント情報に含まれる制御コマンドから、ロボットが理解可能な制御内容を有する送信情報を生成し、その送信情報をロボットに送信するので、コンテンツの再生と、ロボットに動作をさせるタイミングとを、操作担当者の意図したタイミングで、容易に同期させることができ、ロボットに実行させる動作の順序やタイミングを予め設定する必要がないので、再生コンテンツ情報を作成する操作担当者の負担を軽減することができる。
【図面の簡単な説明】
【００２１】
【図１】この発明のロボット制御システムの一実施例の構成ブロック図である。
【図２】この発明の情報処理装置の記憶部に記憶される情報の一実施例の説明図である。
【図３】この発明の情報処理装置の記憶部に記憶される制御コマンドの一実施例の説明図である。
【図４】この発明の情報処理装置の記憶部に記憶される制御コマンドの一実施例の説明図である。
【図５】この発明のロボットを制御する送信情報の送信処理などの一実施例の概略シーケンス図である。
【図６】この発明のロボットを制御する送信情報の送信処理などの一実施例の概略シーケンス図である。
【図７】この発明のロボットを制御する送信情報の送信処理などの一実施例の概略シーケンス図である。
【図８】この発明のロボットに接続された外部制御機器を制御する送信情報の送信処理などの一実施例の概略シーケンス図である。
【図９】この発明の情報処理装置における送信情報の送信処理などの一実施例のフローチャートである。
【図１０】この発明のロボットにおける送信情報を受信した後の動作の一実施例のフローチャートである。
【発明を実施するための形態】
【００２２】
以下、図面を使用して本発明の実施の形態を説明する。なお、以下の実施例の記載によって、この発明が限定されるものではない。
＜ロボット制御システムの構成＞
図１に、この発明のロボット制御システムの一実施例の構成ブロック図を示す。
図１において、この発明のロボット制御システムは、主として、ネットワーク３に接続された情報処理装置１と、ロボット２とから構成される。
【００２３】
ここで、情報処理装置１（以下、PCとも呼ぶ）は、予め生成したコンテンツを再生し、ロボット２の動作を制御する装置であり、特に、プレゼンテーション等で、所定のコンテンツを表示しているときに、ユーザの入力操作等によって、ロボット２に所定の指示内容を与えるためのイベントを発生させる装置である。
ロボット２に与える指示内容には、たとえば、ロボット２に発話させる内容を示す文字列（発話情報）や、ロボットの口、目、手足などの身体的部位を動かすための動作情報などが含まれる。
ロボット２（以下、RBとも呼ぶ）は、情報処理装置１から与えられた発話情報や動作情報などからなる指示内容に基づいて、その指示内容に対応した発話と身体動作を行う自律装置である。
【００２４】
ネットワーク３としては、既存のいずれかのネットワークを用いればよく、たとえば、インターネットのような広域ネットワークや、所定の構内だけで用いられるLANを用いてもよい。通信方式は、有線通信と無線通信のいずれを用いてもよいが、ロボット２は自律的に動作する装置なので、無線通信でネットワークに接続されることが好ましい。
【００２５】
ただし、情報処理装置１とロボット２との接続形態は、図１のように、ネットワーク３を介したものに限るものではない。
たとえば、情報処理装置１とロボット２とは、ネットワーク３を介さずに、直接、通信ケーブルを接続して有線通信により、相互にデータ通信を行ってもよい。または、所定の無線信号を用いた無線通信により、相互にデータ通信を行ってもよい。
【００２６】
また、ネットワーク３に接続されたサーバを利用し、サーバを介して、情報処理装置１とロボット２とが、データ通信を行うような接続形態でもよい。
この場合には、情報処理装置１で入力された指示内容には、制御するロボット２を特定する情報が含まれ、指示内容が情報処理装置１からサーバに送信された後、サーバから、制御するロボット２に対して、指示内容が送信される。サーバを介して指示内容を送信する場合は、サーバから、複数のロボット２に対して、異なる指示内容をそれぞれ配信するか、あるいは、同じ指示内容を、同時に配信することも可能である。
【００２７】
＜情報処理装置の構成＞
情報処理装置１は、情報の入力機能と通信機能を有する装置であり、たとえば、既存のパソコンや、携帯電話などの携帯端末を用いればよい。
図１に示すように、情報処理装置１は、主として、制御部１１、通信部１２、情報入力部１３、表示部１４、コンテンツ再生部１５、イベント実行部１６、ロボット制御処理部１７、イベント監視部１８、制御コマンド取得部１９、送信情報生成部２０、情報変換部２１、記憶部３０を備える。
【００２８】
制御部１１は、通信部などの各構成要素の動作を制御する部分であり、主として、ＣＰＵ、ＲＯＭ、ＲＡＭ、Ｉ／Ｏコントローラ、タイマー等からなるマイクロコンピュータによって実現される。
ＣＰＵは、ＲＯＭ等に予め格納された制御プログラムに基づいて、各種ハードウェアを有機的に動作させて、この発明のロボット制御機能、通信機能などを実行する。
特に、この発明では、制御部１１は、コンテンツを再生するためのプログラム（プレゼンテーション用プログラムとも呼ぶ）や、ユーザの指示入力や所定のタイミングで発生するイベントを監視して、そのイベントに対応させてロボットを制御するためのロボット利用プログラム（以下、ロボットドライバとも呼ぶ）を動作させて、ロボット制御機能等を実行する。
【００２９】
通信部１２は、ネットワーク３に接続し、ロボット２とデータ通信をする部分であり、上記した第１通信部に相当する。
たとえば、ロボット制御処理部１７によって生成された送信情報を、ロボット２に送信する。送信情報は、後述するように、取得された制御コマンドに相当する情報、あるいは、制御コマンドをロボットが理解できる情報に変換した後の情報である。
ネットワーク３への接続形態は、有線でも無線でもよく、既存のいずれかの通信手順を利用すればよい。
【００３０】
情報入力部１３は、ユーザが、文字などの情報の入力や、機能の選択入力などをする部分であり、この発明では、特に、ロボットに発話させる発話文字列の入力、再生コンテンツを作成するための情報（たとえば、文章、図面、画像データ）の入力、ロボットおよび外部制御機器を制御するための制御コマンドの入力などを行う部分である。
情報入力部１３としては、たとえば、キーボード、マウス、タッチパネルなどが用いられる。
ロボットに発話させたい内容は、文字で表されるので、ユーザは、たとえば、キーボードを用いて、発話内容に相当する文字列（発話文字列）を入力する。
また、発話内容に相当する文字列などの情報を、予めＵＳＢメモリなどの外部の記憶媒体に記憶しておき、その記憶媒体を接続して、記憶媒体に記憶されている情報を、情報処理装置１に入力してもよい。あるいは、ユーザが、発話内容を音声データとして入力し、音声認識することにより、発話内容に相当する文字列（発話文字列）を入力してもよい。
【００３１】
あるいは、ロボットに発話させることを予定した複数の文字列情報を、予め記憶部２０に記憶しておき、記憶されている複数の文字列情報を読み出して表示部１４に表示させ、表示された情報のうち、ロボットに発話させたい所望の情報を選択することにより、発話内容に相当する文字列（発話文字列）として入力してもよい。
また、ロボットに発話させたい文字列を記載した用紙を予め作成し、用紙に記載された文字列を、スキャナやカメラで画像データとして読み取り、文字認識した後、発話内容に相当する文字列（発話文字列）として入力してもよい。
【００３２】
表示部１４は、情報を表示する部分であり、入力された文字列、各機能の実行に必要な情報、機能の実行の結果などを、表示する。表示部１４としては、たとえば、LCD、有機ELディスプレイなどが用いられ、情報入力部１３としてタッチパネルが用いられる場合は、表示部とタッチパネルとが重ね合わせて配置される。
【００３３】
コンテンツ再生部１５は、コンテンツを再生する部分である。
たとえば、記憶部３０に予め記憶された複数のスライド画像からなるコンテンツを読み出して、所定の順序で、コンテンツを再生する。
再生するコンテンツは、記憶部３０に予め記憶された情報でもよく、あるいは、USBメモリや他の可搬タイプの記憶媒体に予め記憶された情報でもよい。
また、再生するコンテンツに関する情報（再生コンテンツ情報）を作成する再生コンテンツ作成部を備えてもよい。
【００３４】
図示しない再生コンテンツ作成部は、再生コンテンツ情報を作成する部分であるが、再生コンテンツ情報には、再生するコンテンツが含まれる。
再生するコンテンツは、他の人に開示し、再生することを目的とする情報であり、たとえば、プレゼンテーションで用いる情報であり、ユーザが、情報入力部１３を利用して作成した複数枚のスライド画像である。
また、再生コンテンツ情報には、再生するコンテンツに加え、コンテンツを再生する時に発生するイベントと、ロボットの動作を制御するための制御コマンドとを対応付けた設定情報を含む。
作成されたコンテンツと設定情報とは、記憶部３０に予め記憶される。
【００３５】
以下の実施例では、コンテンツは、複数のスライド画像からなる情報を意味するものとして説明する。各スライド画像は、書面、図面、画像データ、音声データ、制御コマンドなどを含む情報である。画像データには、静止画像と動画が含まれる。
制御コマンドは、後述するように、ロボットおよびロボットに接続された外部制御機器のいずれかの動作を制御するための情報である。
【００３６】
イベント実行部１６は、ユーザ（プレゼンテーションの操作担当者など）の入力操作等によって発生したイベントに対応した動作を実行する部分である。
たとえば、プレゼンテーション用プログラムが起動中に、ユーザの所定の選択入力操作に対応したイベントが発生した場合は、そのイベントに予め対応づけられているスライド画像の切替え、動画再生の開始、ロボットに対する制御などの処理を実行する。
特に、ロボット制御に関連したイベントが発生した場合に、そのイベントに対応付けて上記設定情報に記憶されている制御コマンドを含むイベント情報を生成する。
生成されたイベント情報は、主として、ロボット制御処理部１７に与えられる。
【００３７】
後述するように、プレゼンテーション用プログラムによって、特定のスライド画像を表示しているときに、ユーザが、マウスを用いて、所定の表示領域をクリックする入力操作をした場合、クリックに相当するイベントが発生する。
現在表示されているスライド画像に、クリックに相当するイベントと、ロボットに与える指示を示した制御コマンドとが予め対応づけられて記憶されていた場合は、発生したクリックに相当するイベントに対応付けられた制御コマンドを、ロボットに送信する。
【００３８】
詳細には、プレゼンテーション用プログラムが、主として、イベント実行部１６に相当し、クリックに相当するイベントが発生すると、制御コマンドを含むイベント情報を、ロボット制御処理部１７に与える。
その後、ロボット制御処理部１７の送信情報生成部２０が、受け取った制御コマンドを利用して、ロボットに送信する送信情報を生成し、通信部１２によって、生成された送信情報をロボット２に送信する。
【００３９】
ロボット制御処理部１７は、ロボットを制御するための送信情報を生成する部分である。
上記したように、イベント実行部１６が制御コマンドを含むイベント情報を生成すると、その生成されたイベント情報を取得し、このイベント情報に含まれる制御コマンドから、ロボットが理解可能な制御内容を有する送信情報を生成する。
また、ロボットに外部制御機器が接続されている場合において、イベント情報に含まれる制御コマンドが、ロボットに接続された外部制御機器を制御するものである場合は、外部制御機器を制御するための送信情報を生成する。
【００４０】
ロボット制御処理部１７は、ロボットドライバに相当し、主として、イベント監視部１８、制御コマンド取得部１９、送信情報生成部２０、情報変換部２１からなる。
イベント監視部１８は、イベント実行部１６からイベント情報が与えられるのを監視する部分である。
イベント実行部１６が出力するイベント情報には、ロボットの制御に関係が無い情報と、ロボットの制御に関係がある情報とがあり、ロボットの制御に関係があるイベント情報には、制御コマンドが必ず含まれるものとする。
そこで、イベント監視部１８は、ロボットの制御に関係があるイベント情報が与えられるか否かを監視する。
【００４１】
制御コマンド取得部１９は、与えられたイベント情報から、そのイベント情報に含まれる制御コマンドを抽出して取得する部分である。
イベント監視部１８によって、ロボットの制御に関係があるイベント情報、すなわち、制御コマンドが含まれたイベント情報が与えられたことを検出した場合は、制御コマンド取得部１９が、その制御コマンドを取得し、記憶部３０に、一時記憶する。
【００４２】
送信情報生成部２０は、記憶部３０に一時記憶された制御コマンドを利用して、ロボット２に送信する送信情報を生成する部分である。
たとえば、制御コマンドそのものが、送信先のロボットが理解できる形式の情報である場合は、制御コマンドそのものを送信情報としてもよい。
制御コマンドそのものが、送信先のロボットが理解できる形式の情報でない場合は、制御コマンドを、情報変換部２１によって、送信先のロボットが理解できる形式の情報に変換し、この変換後の情報を、送信情報として生成する。
【００４３】
情報処理装置からロボットに送信される送信情報には、後述するように、主として、送信先のロボットを特定する情報である制御対象と、そのロボットに実行させる内容を示した制御内容とを含む。また、制御内容には、ロボットに発話させる発話文字列と、ロボットに動作させる身体動作を設定した動作情報などが含まれる。
【００４４】
情報変換部２１は、記憶部３０に一時記憶された制御コマンドを、送信先のロボットが理解できる形式の情報に変換する部分である。
この情報変換には、記憶部３０に予め記憶されたプロトコル情報３５を用いる。
プロトコル情報３５は、所定の情報を、ロボットが理解可能な情報に変換する規則である。
上記のように、取得したイベント情報に含まれる制御コマンドが、ロボットが理解できない情報の場合、この制御コマンドを、プロトコル情報３５を利用して、ロボットが理解可能な制御内容に変換する。
変換された制御内容を有する送信情報が、通信部１２によって、ロボットに送信される。
【００４５】
ロボットが理解できる形式が複数ある場合は、制御コマンドをそのすべての形式の情報に変換できるようにするために、あらゆる変換規則に対応したプロトコル情報３５を記憶しておくことが好ましい。
制御コマンドが、すでに、送信先のロボットが理解できる形式の情報である場合は、この情報変換を行う必要はない。
送信先のロボットが複数存在する場合は、ロボットごとに、制御コマンドをそのロボットが理解できる形式に変換するためのプロトコル情報３５を、複数個、予め記憶しておくことが好ましい。
【００４６】
記憶部３０は、この発明の情報処理装置の各機能を実行するために必要な情報やプログラムを記憶する部分であり、ＲＯＭ、ＲＡＭ、フラッシュメモリなどの半導体記憶素子、ＨＤＤ、ＳＳＤなどの記憶装置、その他の記憶媒体が用いられる。
記憶部３０には、たとえば、再生コンテンツ情報３１、イベント情報３２、制御コマンド３３、送信情報３４、プロトコル情報３５などが記憶される。
図２に、この発明の情報処理装置の記憶部に記憶される情報の一実施例の説明図を示す。
【００４７】
再生コンテンツ情報３１は、プレゼンテーションや掲示板などで利用される書面、図面、画像、音声などからなる情報であり、表示装置やスクリーンに情報を表示等することにより、コンテンツが再生される。たとえば、プレゼンテーションをする場合は、複数のスライド画像が、再生コンテンツ情報に相当し、プレゼンテーションをする操作担当者が、複数のスライド画像を順番に表示させるか、表示するスライド画像を選択しながら、スライド画像の内容を説明する。
スライド画像には、静止画像だけでなく、書面、図面、動画、音声などのマルチメディア情報が含まれる。
【００４８】
図２（a）に、再生コンテンツ情報３１の一実施例の説明図を示す。
ここでは、プレゼンテーションをする場合において、複数のスライド画像からなる再生コンテンツ情報を示している。たとえば、コンテンツCN01は、５つのスライド画像（SL01〜SL05）からなり、同様に、コンテンツCN02、CN03も、複数のスライド画像からなることを示している。
【００４９】
また、コンテンツの再生をしている状態において、ロボットに、発話や手足等の身振り動作をさせる場合は、再生するスライド画像と、ロボットを制御するための情報とを予め対応づけておく必要がある。
ロボットを制御するための情報は、後述する制御コマンドであり、スライド画像とは別に、いくつかの制御コマンドを作成して、記憶部３０に予め記憶しておく。
制御コマンドには、ロボットに実行させる動作内容が、所定の記載様式で、設定される。
たとえば、ロボットに発話させる場合は、制御コマンドに、指示動作として発話が設定され、発話文字列が設定される。
【００５０】
また、プレゼンテーションをする操作担当者が、プレゼンテーションで利用するスライド画像と、ロボットに実行させる動作を設定した制御コマンドとを予め対応づける設定をするときに、制御コマンドをロボットに送信するタイミングを決めるための入力操作等のイベントを、制御コマンドに対応づける設定も行う。
このとき、コンテンツを再生するときに発生するイベントと、ロボットの動作を制御するための制御コマンドとを対応付けた設定情報が作成される。
【００５１】
たとえば、操作担当者が、スライド画像の所定の表示領域をマウス等でクリックする入力操作をした場合に、制御コマンドをロボットに送信するようにする場合は、その制御コマンドに、クリックという入力操作を対応づける設定をする。
この制御コマンドをロボットに送信するタイミングを決めるための入力操作を、イベントと呼ぶ。たとえば、クリックという入力操作を、クリックイベントと呼ぶ。
一般的に、クリックイベントのように予め決められたイベントが発生した場合、イベント情報（イベントメッセージとも呼ぶ）が生成されるが、この発明では、制御コマンドと、イベントとを対応づける設定を行っておくことにより、生成するイベント情報の中に、制御コマンドを含めるようにする。
【００５２】
たとえば、スライド画像と、ロボットに発話をさせる制御コマンドと、クリックイベントとを対応づける設定を予めしておくことにより、そのスライド画像を再生中に、操作担当者が所定の表示領域をクリックする入力操作をして、クリックイベントが発生した場合、クリックイベントに予め対応付けられた制御コマンドを含むイベント情報が生成され、そのイベント情報に含まれる制御コマンドに対応した送信情報が、ロボットに送信される。
ロボットでは、送信情報を受信すると、送信情報に対応する制御コマンドに設定された発話を実行する。
【００５３】
コンテンツを再生する時に発生するイベントには、たとえば、操作担当者によって所定の選択入力がされる入力操作イベントと、表示部に所定の文字列が表示される表示イベントと、所定のタイマー設定時間が経過したことによるタイマーイベントなどが含まれる。
クリックイベントは、操作担当者による入力操作イベントの１つである。
【００５４】
図２（b）に、再生コンテンツ情報３１のコンテンツCN01について、対応づけられたスライド画像と、イベントと、制御コマンドの一実施例の説明図を示す。
ここで、コンテンツCN01は、５つのスライド画像（SL01〜SL05）からなり、各スライド画像は、それぞれ表示ファイル（g1〜g5）として記憶されているものとする。
たとえば、スライド画像SL01は、文字や図表が記載された書面であり、このスライド画像SL01を再生するときは、表示ファイルg1が読み出され、表示部１４に表示される。
また、スライド画像SL03は、動画であり、このスライド画像SL03を再生するときは、表示ファイルg3が読み出され、表示部１４にその動画が表示される。
【００５５】
図２（b）では、各スライド画像に対して、イベント内容と制御コマンドとを対応づけた設定情報を、記憶するものとする。
制御コマンドは、スライド画像に対応づけられたロボットの実行動作を示す情報であり、イベント内容は、制御コマンドをロボットに送信するきっかけとなる原因事象（イベント）を意味する。
表示ファイルが読み出されスライド画像が再生されている場合に、そのスライド画像に対応づけられたイベント内容に設定された原因事象（イベント）が発生したとき、対応づけられた制御コマンドによって、ロボットに実行すべき動作内容が送信される。
【００５６】
たとえば、スライド画像SL01には、イベント内容として、クリックイベントEV01が設定され、制御コマンドとして、ロボットに発話をさせる情報CMD01が予め設定されていることを示す。
この対応付けにより、スライド画像SL01の表示ファイルg1の再生状態において、操作担当者が所定の表示領域をクリックする入力操作をしたことを示すクリックイベントEV01が発生した場合に、ロボットに発話をさせる制御コマンドCMD01が、ロボットに送信されることを示している。
【００５７】
また、スライド画像SL02には、イベント内容として、タイマーイベントEV02が設定され、制御コマンドとして、ロボットに身振り動作をさせる情報CMD02が予め設定されていることを示す。
この場合は、スライド画像SL02の表示ファイルg2（静止画）の再生状態において、たとえば、静止画を表示開始後、タイマーを起動させ、そのタイマーに予め設定された時間が経過したとき、タイマーイベントEV02が発生したと判断し、ロボットに身振り動作をさせる制御コマンドCMD02が、ロボットに送信されることを示している。
【００５８】
また、スライド画像SL03には、イベント内容として、クリックイベントEV03が設定され、制御コマンドとして、ロボットに発話と身振り動作をさせる情報CMD03が予め設定されていることを示す。
この場合は、スライド画像SL03の表示ファイルg3（動画）の再生状態において、操作担当者が所定の表示領域をクリックする入力操作をしたことを示すクリックイベントEV03が発生した場合に、ロボットに発話と身振り動作をさせる制御コマンドCMD03が、ロボットに送信されることを示している。
【００５９】
また、スライド画像SL04には、イベント内容として、表示イベントEV04が設定され、制御コマンドとして、ロボットに身振り動作をさせる情報CMD04が予め設定されていることを示す。
この場合は、スライド画像SL04の表示ファイルg4（書面）の再生状態において、所定の文字列が表示されたとき、表示イベントEV04が発生したと判断し、ロボットに身振り動作をさせる制御コマンドCMD04が、ロボットに送信されることを示している。
【００６０】
また、スライド画像SL05には、イベント内容として、クリックイベントEV05が設定されているが、ロボットを制御する制御コマンドとしては、何も設定されていないことを示す。
この場合は、スライド画像SL05の表示ファイルg4（静止画）の再生状態において、操作担当者が所定の表示領域をクリックする入力操作をしたことを示すクリックイベントEV05が発生した場合に、ロボットに対する処理以外の所定の処理を実行するが、制御コマンドとして何も設定されていないので、ロボットに対する処理は実行しないことを意味する。
【００６１】
なお、図２（b）では、各スライド画像に対して、１つの制御コマンドを対応づけた例を示したが、これに限るものではない。
たとえば、１つのスライド画像に対して、複数の制御コマンドを対応づけて設定してもよい。
この場合は、スライド画像に対応づけられたイベント内容が発生したとき、対応づけられた複数の制御コマンドを、設定された順に起動させ、ロボットに、複数の制御コマンドに対応した動作を順次行わせるようにしてもよい。
【００６２】
また、１つのスライド画像に対して、複数のイベント内容と制御コマンドとを対応づけて設定してもよい。この場合は、複数の制御コマンドのうち、いずれかの制御コマンドに予め対応づけられたイベント内容が発生したときに、その制御コマンドをロボットに送信し、制御コマンドに設定された動作を実行させる。
【００６３】
図２（b）では、各スライド画像に対応付けて、１つのイベント内容と制御コマンドを設定する例を示したが、１つのイベント内容と制御コマンドからなる設定情報を、スライド画像に対応付けずに設定してもよい。
たとえば、コンテンツのスライド画像とは別に、図２（b）に示したイベント内容と制御コマンドとからなる部分の情報を予め設定しておく。
すなわち、ロボットに動作させたい内容を記載した制御コマンドと、その制御コマンドをロボットに送信するきっかけとなるイベントとを対応付ける設定をし、設定情報として予め記憶部３０に記憶する。
【００６４】
この場合は、再生中のスライド画像とは関係無く、予め設定された所望の制御コマンドに対応する動作を、ロボットに実行させることができる。
たとえば、ロボットに何らかの動作をさせたい場合、予め対応付けて設定した複数のイベント内容と制御コマンドからなるリストを表示部に表示させ、操作担当者が、そのリストから、所望の制御コマンドを選択する操作をする。その後、選択された制御コマンドに対応付けられたイベントが発生した場合に、その制御コマンドをロボットに送信することにより、ロボットに所望の動作をさせる。
これにより、任意のスライド画像の再生中において、担当者が、所望の制御コマンドを選択する操作をすることによって、ロボットに対する所望の指示内容を、ロボットに与えることができ、プレゼンテーションに利用するスライド画像の再生と、ロボットの動作の実行タイミングを、容易に合わせることができる。
【００６５】
イベント情報３２は、所定のイベントが発生した場合に、イベント実行部１６によって生成される情報であり、上記したように、制御コマンドを含むイベント情報３２が、イベント実行部１６から、ロボット制御処理部１７に与えられる。
【００６６】
図２（c）に、イベント情報３２の一実施例の説明図を示す。
ここでは、イベント情報３２として、イベント内容と、制御コマンドとを含むものを示している。
図２（b）に示すような情報が予め設定されている場合、たとえば、スライド画像SL01が再生されている状態において、担当者がクリック操作をすることによって、クリックイベントEV01が発生した場合、図２（b）に示す情報から、クリックイベントEV01に対応する制御コマンドCMD01が検出され、発生したクリックイベントEV01と、検出された制御コマンドCMD01とからなるイベント情報３２が生成される。
【００６７】
また、図２（b）に示すスライド画像SL02が再生されている状態において、所定のタイマーイベントEV02が発生した場合、図２（b）に示す情報から、タイマーイベントEV02に対応する制御コマンドCMD02が検出され、発生したクリックイベントEV02と、検出された制御コマンドCMD02とからなるイベント情報３２が生成される。
イベント実行部１６によって生成されたイベント情報３２は、ロボット制御処理部１７に与えられる。
【００６８】
ただし、イベント情報３２は、図２（c）に示したものに限るものではなく、種々の情報が生成される。ロボットを制御するためのイベント情報としては、上記したように、制御コマンドを含むイベント情報が生成されるが、ロボットを制御しないイベントの場合は、制御コマンドを含まないイベント情報が生成される。
【００６９】
図２（d）に、ロボット制御に用いるイベントの一実施例の説明図を示す。
ここでは、「クリック」、「アニメ」、「表示」、「タイマー」という４つのイベントを例示しているが、これに限るものではない。
図２（d）では、イベントごとに、イベント名と、略称と、そのイベントの簡単な説明を示している。
たとえば、「クリックCL」というクリックイベントは、ユーザが所定の選択入力操作をした場合、その選択入力操作によって、所定の動作を起動させる指示がされたことを意味するイベントである。
【００７０】
また、「アニメAM」というアニメーションイベントは、ユーザが所定の選択入力操作をした場合、その選択入力操作によって、所定のアニメーションを起動させる指示がされたことを意味するイベントである。
また、「表示DS」という表示イベントは、表示部に所定の文字列が表示された場合、その表示をきっかけとして、所定の動作を起動させる指示がされたことを意味するイベントである。
また、「タイマーTM」というタイマーイベントは、起動されたタイマーに設定された時間が経過した場合に、その時間経過をきっかけとして、所定の動作を起動させる指示がされたことを意味するイベントである。
【００７１】
制御コマンド３３は、ロボットを制御するための情報であり、たとえば、プレゼンテーションの操作担当者によって、予め作成され、記憶部３０に記憶される。
制御コマンド３３には、少なくとも、制御対象３３ａと、制御内容３３ｂとが含まれる。
図３と図４に、この発明の情報処理装置の記憶部に記憶される制御コマンドの一実施例の説明図を示す。
制御対象３３ａは、制御コマンドを送信する制御ロボットを特定する情報であり、たとえば、ロボットごとに予め設定された識別番号（ロボット番号RBID)である。
【００７２】
制御内容３３ｂは、ロボットに与える指示を示した情報であり、たとえば、指定動作、動作情報、発話情報からなる。
指定動作は、ロボットに実行させる動作を識別する情報であり、たとえば、発話、身体動作、画像撮影、音声認識、機器制御などを特定する情報である、
動作情報は、ロボットの身体を動作させるための情報であり、指定動作で特定された動作の意味内容を設定した情報である。
【００７３】
発話情報は、ロボットに発話させる発話文字列を示した情報であり、さらに、人間が発声した音声の中でロボットに認識させる文字列を設定した情報でもある。
制御内容３３ｂに含まれる発話情報としては、後述するように、所定の記号または文字などによって発話内容を表現した指定変数を利用してもよい。
【００７４】
また、制御コマンド３３には、制御対象３３ａとして、ロボット以外に、ロボットに接続された外部制御機器８０を設定し、その外部制御機器８０に対する制御内容３３ｂを含めてもよい。外部制御機器８０に関係する制御コマンド３３が、ロボットに送信された場合は、ロボットに接続された外部制御機器８０の動作が制御される。
【００７５】
図３（a）に、制御コマンドに含まれる情報の一実施例を示す。
図３（a）では、制御対象３３ａであるロボット番号RBIDとして、robo01が設定され、制御内容３３ｂである指定動作として、発話を意味するspが設定され、動作情報として、予め決められた基本動作をすることを意味する１が設定され、発話情報として、「おはよう」という発話文字列が設定されている。
この制御コマンドが、ロボット番号がrobo01のロボットに送信されると、そのロボットは、「おはよう」という合成音声を出力し、予め設定されている身振りなどの基本動作を実行する。
【００７６】
図３（b）に、制御コマンドの記載形式の一実施例を示す。
図３（a）に示した情報を制御コマンドに含めるために、図３（b）に示したような記載形式を用いる。この記載形式は一実施例であって、これに限るものではない。
図３（b）において、制御コマンドは、[制御対象：指定動作]制御動作内容という形式で記載される。
図３（b）では、２つの制御コマンドを例示している。
制御コマンドCMD01は、[robo01：sp]  １，「おはよう」からなる情報であり、これは図３（a）に示した制御コマンドを、記載したものである。
【００７７】
また、制御コマンドCMD02は、[robo02：qa]  「おはよう」、「元気ですか」からなる情報であり、制御対象であるrobo02のロボットに与える情報であり、qaは、以下に記載した文字列を音声認識し、さらに記載した文字列をロボットに発話させることを意味する指示動作である。
ここでは、最初に記載された文字列である「おはよう」が認識文字列であり、２番目に記載された文字列である「元気ですか」が発話文字列に相当する。
この制御コマンドCMD02が、ロボット番号がrobo02のロボットに送信されると、そのロボットは、「おはよう」という音声が入力されるか否かを認識し、「おはよう」という音声が入力されたことを認識した場合は、「元気ですか」という合成音声を出力する。
【００７８】
このような図３（b）の記載形式の制御コマンドが、ロボットが理解できる形式のデータである場合は、この記載形式の制御コマンドをそのままロボットに送信すればよく、制御コマンドを受信したロボットは、制御コマンドの内容を解釈して、制御コマンドに対応する動作をすぐに実行することができる。
【００７９】
ただし、図３（b）の記載形式の制御コマンドが、ロボットが理解できない形式のデータである場合は、この記載形式の制御コマンドをそのままロボットに送信しても、所望の動作をさせることができない。そこで、上記したように、情報変換部２１によって、図３（b）の記載形式の制御コマンドを、ロボットが理解できる形式の送信情報に変換した後、
変換した後の送信情報を、ロボットに送信するようにする。
この情報変換には、記憶部３０に予め記憶されたプロトコル情報３５を用いる。
【００８０】
図３（c）に、いくつかの制御コマンドの記載例を示す。
図３（c）には、６つの制御コマンドの記載例と、その記載例の説明を示している。
たとえば、制御コマンドCMD01は、[robo01：sp]  ０，「おはよう」からなる情報であり、これは、制御対象が、robo01というロボットであり、指定動作が発話であり、発話情報が、「おはよう」であることを意味している。また、動作情報として、０が設定されていり、これは、ロボットに実行させる身振り動作がないことを意味するものとする。
したがって、robo01というロボットが、この制御コマンドCMD01を受信すると、身振り動作をせずに、「おはよう」という文字列の音声を出力する。
【００８１】
制御コマンドCMD02は、[robo02：sp]  １，「おはよう」からなる情報であり、これは、制御対象が、robo02というロボットであり、指定動作が発話と身振り動作であり、発話情報が、「おはよう」であり、動作情報として、予め設定された基本動作１を実行することを意味している。
したがって、robo02というロボットが、この制御コマンドCMD02を受信すると、基本動作１に相当する身振り動作を実行しながら、「おはよう」という文字列に対応した音声を出力する。
【００８２】
制御コマンドCMD03は、[robo03：qa]  「aaa」、「bbb」からなる情報であり、これは、制御対象が、robo03というロボットであり、指定動作が文字認識と発話であり、認識文字列が「aaa」であって、発話文字列が、「bbb」であることを意味している。
したがって、robo03というロボットが、この制御コマンドCMD03を受信すると、認識文字列「aaa」の音声を認識した場合に、「bbb」という文字列の音声を出力する。
【００８３】
制御コマンドCMD04は、[robo04：cam]  からなる情報であり、これは、制御対象が、robo04というロボットであり、指定動作がカメラ撮影であることを意味している。
したがって、robo04というロボットが、この制御コマンドCMD04を受信すると、ロボットに接続されているカメラによって、画像を撮影する。
【００８４】
制御コマンドCMD05は、[dev01：on]  からなる情報であり、これは、制御対象が、ロボットに接続された外部制御機器dev01であり、指定動作が、その外部制御機器dev01の電源を投入し、起動させることを意味している。
したがって、外部制御機器dev01が接続されたロボットが、この制御コマンドCMD05を受信すると、ロボットに接続されている外部制御機器dev01の電源を投入し、起動させる。
なお、制御するロボットが複数ある場合は、制御対象として、外部制御機器が接続されたロボットを指定する情報と、外部制御機器を指定する情報とを設定する。
【００８５】
制御コマンドCMD06は、[dev02：off]  からなる情報であり、これは、制御対象が、ロボットに接続された外部制御機器dev02であり、指定動作が、その外部制御機器dev02の電源を切断し、動作を停止させることを意味している。
したがって、外部制御機器dev02が接続されたロボットが、この制御コマンドCMD06を受信すると、ロボットに接続されている外部制御機器dev02の電源を切断し、動作を停止させる。
図３（c）に示した制御コマンド以外にも、種々の制御コマンドを定義してもよい。
【００８６】
図４に、制御コマンドに含まれる４つの項目の情報（制御対象、指定動作、動作情報、発話情報）の一実施例を示す。
図４（a）に、制御コマンドに含まれる制御対象３３ａの一実施例を示す。
制御対象３３ａは、制御コマンドで制御できる装置を特定する情報であり、たとえば、ロボット（robo）や、ロボットに接続された外部接続機器（dev）がある。
制御するロボットを識別するために、たとえば、robo01のようなロボット識別番号が利用される。
ロボットに接続された外部接続機器を識別するために、たとえば、dev01のような機器識別番号が利用される。
ただし、制御できる装置は、上記に限定するものではなく、情報処理装置１と直接通信でき、制御コマンドを理解して、所定の動作が可能な電子機器であればよく、物理的にロボットに接続されていない機器でもよい。
【００８７】
図４（b）に、制御コマンドに含まれる指定動作の一実施例を示す。
指定動作は、ロボットおよびロボットに接続された外部接続機器に実行させる動作を特定する情報である。
ロボットに対しては、ロボットが実行可能な機能を特定する情報である。たとえば、ロボットが、発話機能（音声出力機能）、手足等の身体動作機能、音声認識機能、画像撮影機能、文字認識機能、顔等の画像認識機能、自律走行機能、投影機能、表示機能、アプリケーションの実行機能などを有する場合、どの機能を実行させるかを指定する情報である。
【００８８】
図４（b）には、ロボットに実行させる指定動作として、４つの動作を示している。
指定動作として、spを記載した場合は、ロボットに発話機能を実行することを指示する。ロボットに発話させる文字列が、図３（b）に示した制御コマンドの制御動作内容の部分に記載される。
【００８９】
指定動作として、qaを記載した場合は、ロボットに音声認識と発話機能を実行することを指示する。ロボットが認識すべき音声と、ロボットが認識すべき音声を認識した場合にロボットに発話させる文字列が、図３（b）に示した制御コマンドの制御動作内容の部分に記載される。
【００９０】
指定動作として、selを記載した場合は、ロボットに複数の音声認識と発話機能を実行することを指示する。ロボットが認識すべき複数の音声と、ロボットが認識すべき音声を認識した場合にロボットに発話させる複数の文字列が、図３（b）に示した制御コマンドの制御動作内容の部分に記載される。認識した音声に対して、特定の文字列が発話されるように、複数の認識音声と発話文字列は、それぞれ対応付けて記載される。
【００９１】
指定動作として、camを記載した場合は、ロボットに接続されたカメラで、画像を撮影する機能を実行することを指示する。
制御コマンドの制御動作内容の部分には、情報を記載しなくてもよい。
ただし、撮影する画像として、静止画あるいは動画を指定する場合は、制御コマンドの制御動作内容の部分に、静止画あるいは動画の区別を記載してもよい。
また、撮影した画像に人物が含まれる場合に、その人物の顔認識をする場合は、制御コマンドの制御動作内容の部分に、人物の顔認識すべきことを記載してもよい。あるいは、顔認識した結果を、所定の音声で発話すべきことを記載してもよい。
【００９２】
図４（b）には、ロボットに接続された外部接続機器に実行させる指定動作として、２つの動作を示している。
たとえば、指定動作として、onを記載した場合は、外部接続機器の電源を投入し、起動させることを指示する。
また、指定動作として、offを記載した場合は、外部接続機器の電源を切断し、停止させることを指示する。
ロボットに接続された外部接続機器としては、たとえば、照明器具、表示装置、スピーカ、マイク、家電製品（テレビ、エアコン、時計など）、車などがある。
図４（b）に示した指定動作は、これらに限るものではなく、この他の動作を設定してもよい。
【００９３】
図４（c）に、制御コマンドに含まれる動作情報の一実施例を示す。
動作情報は、ロボットに実行させる身振り動作を指定する情報であり、たとえば、発話と同時に行うロボットの手足等の身振り動作を指定する。
図４（c）では、３種類の発話時の動作内容を示しており、発話時の動作情報として、制御コマンドの制御動作内容の部分に、３種類の動作内容のいずれかに対応する番号を記載する。
【００９４】
たとえば、発話時の動作情報として０を記載した場合は、発話と同時に身振り動作は実行しないことを意味する。
発話時の動作情報として１を記載した場合は、発話と同時に、予め設定された基本動作を実行することを意味する。
発話時の動作情報として２を記載した場合は、発話と同時に、予め設定された指定番号に対応する動作を実行することを意味する。
ただし、制御コマンドに含まれる動作情報は、図４（c）に示したものに限るものではない。
【００９５】
図４（d）に、制御コマンドに含まれる発話情報の一実施例を示す。
発話情報は、ロボットに音声で発話させる内容を示したものである。
発話情報としては、主として、発話させる内容そのものを意味する文字列を記載するが、図４（d）に示すように、所定の記号や文字を利用した指定変数で、時刻を示す情報や、定型文字列などを指定してもよい。
図４（d）には、５つの時刻を示す情報の指定変数を示している。
【００９６】
たとえば、（day）という指定変数を、制御コマンドの制御動作内容の部分に記載した場合は、ロボットに、現在の年月日を発話させることを意味する。
また、（dayofweek）という指定変数を、制御コマンドの制御動作内容の部分に記載した場合は、ロボットに、今日の曜日を発話させることを意味する。
また、（hour）という指定変数を、制御コマンドの制御動作内容の部分に記載した場合は、ロボットに、現在の時間を発話させることを意味する。
また、（minute）という指定変数を、制御コマンドの制御動作内容の部分に記載した場合は、ロボットに、現在の分を発話させることを意味する。
また、（second）という指定変数を、制御コマンドの制御動作内容の部分に記載した場合は、ロボットに、現在の秒を発話させることを意味する。
【００９７】
送信情報３４は、上記したように、送信情報生成部２０によって生成される情報であり、ロボットに送信される情報である。
送信情報３４には、制御コマンドと同様に、少なくとも、制御対象３４ａと、制御内容３４ｂが含まれる。
図３に示したような記載形式の制御コマンドが、ロボットが理解でき、制御コマンドに基づいて所定の発話や動作ができる場合は、取得した制御コマンド３３をそのままロボットに送信する。この場合は、送信情報３４は、制御コマンド３３と同じデータである。
ただし、制御コマンドが、ロボットが理解できない形式で記載されている場合は、上記したように、制御コマンド３３を、ロボットが理解できる所定の形式に変えて送信する必要がある。この場合は、制御コマンド３３をプロトコル情報３５によって変換した後の情報が、送信情報３４となる。
【００９８】
プロトコル情報３５は、制御コマンド３３を、ロボットが理解できる所定の形式に変換するための変換規則を規定した情報である。
たとえば、ロボットを制御するためのデータとして標準化仕様が設定されている場合において、送信先のロボットがこの標準化仕様に対応したデータを理解できる場合は、プロトコル情報３５として、制御コマンド３３を、標準化仕様に対応したデータに変換するための変換規則が記憶される。
【００９９】
上記したように、情報変換部２１が、制御コマンド３３の内容を、プロトコル情報３５を用いて、その標準化仕様に適合した形式のデータに変換する。標準化仕様に適合した形式のデータが、送信情報３４となり、ロボットRBに送信される。
なお、ロボットRBにプロトコル情報３５を予め記憶しておき、ロボットが理解できない制御コマンド３３を、情報処理装置PCからロボットRBに送信し、ロボットRBが、受信した制御コマンド３３を、記憶されているプロトコル情報３５を用いて、ロボット自らが理解できる情報に変換してもよい。
【０１００】
以上が、情報処理装置１の構成であるが、ロボット制御システムとして、サーバを利用する場合は、たとえば、上記した情報処理装置１の構成のうち、送信情報生成部２０と情報変換部２１の機能を、サーバに備え、情報処理装置１から、サーバに、制御コマンドと、送信先であるロボットを特定する情報を、送信してもよい。
この場合は、サーバにおいて、受信した制御コマンドから、ロボットが理解できる形式の送信情報を生成し、その送信情報をロボットに送信すればよい。
【０１０１】
＜ロボットの構成＞
ロボット２は、図１に示すように、主として、制御部５１、通信部５２、出力音声生成部５３、出力動作決定部５４、動作実行部５５、音声出力部５６、身体駆動部５７、音声入力部５８、画像入力部５９、機器制御部６０、記憶部７０を備える。
【０１０２】
制御部５１は、通信部などの各構成要素の動作を制御する部分であり、主として、ＣＰＵ、ＲＯＭ、ＲＡＭ、Ｉ／Ｏコントローラ、タイマー等からなるマイクロコンピュータによって実現される。
ＣＰＵは、ＲＯＭ等に予め格納された制御プログラムに基づいて、各種ハードウェアを有機的に動作させて、この発明の音声出力機能、通信機能などを実行する。
【０１０３】
通信部５２は、ネットワーク３に接続し、情報処理装置１とデータ通信をする部分であり、上記した第２通信部に相当する。
たとえば、上記したように、情報処理装置１で生成された送信情報３４を、受信する。
受信された送信情報３４は、受信情報７１として、記憶部７０に記憶される。
ネットワーク３への接続形態は、有線および無線のどちらでもよいが、自律走行するようなロボットの場合は、無線を利用することが好ましく、既存のいずれかの通信手順を利用すればよい。
なお、サーバを介して、ロボットを制御する情報を受信する場合は、サーバとデータ通信をする。
【０１０４】
出力音声生成部５３は、音声出力部５６であるスピーカから出力する音声データを生成する部分である。情報処理装置１から送信されてくる送信情報に基づいて、出力する発話内容が決定される。
送信情報３４に含まれる発話文字列が、音声として実際に出力される発話内容となり、発話内容の合成音声が生成される。
生成された合成音声は、出力音声情報７２として、記憶部７０に記憶される。
【０１０５】
出力動作決定部５４は、情報処理装置１から送信されてくる送信情報３４に基づいて、ロボットの手足等を用いた身振り動作を、決定する部分である。
たとえば、予め記憶部７０に記憶された基本動作の情報などを利用して、受信した送信情報３４に含まれる発話内容の意味と動作情報とに関連した身振り動作を決定する。
決定された身振り動作は、出力動作情報７３として、記憶部７０に記憶される。
【０１０６】
動作実行部５５は、受信した送信情報３４に含まれる制御内容に基づいて、所定の動作を実行する部分であり、主として、音声出力部５６と、身体駆動部５７とからなる。
音声出力部５６は、出力音声生成部５３によって生成された合成音声を出力する部分であり、スピーカに相当する。たとえば、受信した送信情報３４に含まれる発話文字列を、合成音声によって出力する。
【０１０７】
身体駆動部５７は、出力動作決定部５４によって決定された身振り動作を実行する部分である。たとえば、受信した送信情報３４に含まれる動作情報に対応した身振り動作をさせる。
ロボットが人間に似た身体を持つ場合は、ロボットの顔の表情を変化させたり、首、腕、手足、胴体などを動作させたりする。
【０１０８】
音声入力部５８は、音声を入力するマイクである。ロボットが音声認識機能を有する場合は、マイクによって入力された音声を認識し、文字への変換や、音声の意味内容を理解する。
画像入力部５９は、画像を入力するカメラであり、静止画または動画を撮影する。ロボットが画像認識機能を有する場合は、カメラで撮影された物体を認識し、たとえば、人物の顔を認識する。
【０１０９】
機器制御部６０は、外部制御機器８０を制御する部分である。
外部制御機器８０は、遠隔制御を受け入れる機能を有する装置であり、たとえば、照明器具、表示装置、家電製品（テレビ、エアコン、時計など）、車などが該当する。
受信した送信情報３４に、機器制御を意味する制御情報が含まれている場合は、その制御情報に基づいて、外部制御機器８０に対して、所定の制御信号を送信する。
たとえば、照明器具や表示装置などの外部制御機器８０に対して、電源を投入する制御信号を送信したり、電源を切断する制御信号を送信したりする。
なお、音声入力部５８、画像入力部５９、機器制御部６０は、必須の構成としなくてもよく、必要に応じて、オプション機能として、追加できるようにしてもよい。
【０１１０】
記憶部７０は、この発明のロボットの各機能を実行するために必要な情報やプログラムを記憶する部分であり、ＲＯＭ、ＲＡＭ、フラッシュメモリなどの半導体記憶素子、ＨＤＤ、ＳＳＤなどの記憶装置、その他の記憶媒体が用いられる。
記憶部７０には、たとえば、受信情報７１、出力音声情報７２、出力動作情報７３などが記憶される。
【０１１１】
受信情報７１は、ここでは、情報処理装置１から送られてくる送信情報３４を意味する。
したがって、受信情報７１には、少なくとも、制御対象７１ａと、制御内容７１ｂとが含まれる。
受信情報７１を利用して、出力音声生成部５３が、合成音声を生成し、出力動作決定部５４が、身振り動作を決定する。
【０１１２】
出力音声情報６２は、出力音声生成部５３によって生成される合成音声である。
出力動作情報６３は、出力動作決定部５４によって生成される情報であり、手足、口、目などロボットに備えられた身体的部位の動きを設定した情報である。
【０１１３】
＜ロボット制御システムにおけるロボット制御の実施例の説明＞
ここでは、主として、情報処理装置PCにおいて、担当者が、再生コンテンツ情報と、ロボットRBに対する指示内容を示す制御コマンドを予め作成しておき、プレゼンテーションをしている状態で、操作担当者が、ロボットRBに指示を与えるための入力操作等をして、ロボットに発話を含む所定の動作をさせる一連の処理の実施例を示す。
【０１１４】
操作担当者は、ロボットに実行させたい発話や身体動作を設定した、図３のような記載形式を持つ複数の制御コマンドを予め作成する。また、作成した複数の制御コマンドそれぞれについて、制御コマンドをロボットに与える原因事象（イベント内容）と、その制御コマンドとを対応づける設定をして、記憶部３０に予め記憶しておく。あるいは、図２（ｂ）に示したように、イベント内容と制御コマンドとを対応づけた設定情報と、コンテンツを構成する各スライド画像とを対応付ける設定をして、再生コンテンツ情報３１として、記憶部３０に予め記憶しておく。
【０１１５】
操作担当者が、実際にプレゼンテーションをする場合、プレゼンテーションを実行するアプリケーションプログラム（プレゼンテーション用プログラム）を起動させる。
また、担当者が、プレゼンテーションに使用する再生コンテンツ情報や、イベント内容と制御コマンドとを対応づけた設定情報を指定する入力操作をすると、プレゼンテーション用プログラムが、コンテンツの再生を開始し、たとえば、コンテンツの最初のスライド画像を表示部１４に表示して、プレゼンテーションができる状態となる。
プレゼンテーション用プログラムによって再生されるコンテンツが、ロボットを制御するものである場合は、情報処理装置PCとロボットRBとを接続する処理をした後、ロボットを制御するロボット制御処理部１７に相当するロボット利用プログラム（ロボットドライバ）を起動させる。
【０１１６】
（第１実施例）
図５に、この発明のロボットを制御する送信情報の送信処理などの一実施例の概略シーケンス図を示す。
第１実施例では、１台の情報処理装置PCと、１台のロボットRBとを接続し、プレゼンテーションをする操作担当者が、そのPCを利用して、プレゼンテーションを開始し、プレゼンテーションの実施中に、操作担当者が、ロボットを制御するためのイベント入力に相当するクリック操作をした場合について説明する。
【０１１７】
図５においては、すでに、情報処理装置PCとロボットRBとを接続する処理を完了し、プレゼンテーション用プログラムと、ロボット制御処理部１７に相当するロボット利用プログラム（ロボットドライバ）が起動されているものとする。
【０１１８】
図５のステップA1において、操作担当者が、PCの情報入力部１３によって、プレゼンテーションに使用する再生コンテンツ情報や、イベント内容と制御コマンドとを対応づけた設定情報を指定して、コンテンツの再生開始を意味する入力操作をしたとする。
【０１１９】
ステップP1において、PCの制御部１１が、コンテンツの再生開始を意味する入力がされたことを確認すると、指定された再生コンテンツ情報３１を記憶部３０から読み出し、コンテンツの再生を開始する。たとえば、読み出されたコンテンツに含まれる最初のスライド画像を、表示部１４に、表示させる。このコンテンツの再生開始は、プレゼンテーション用プログラムによって行われる。
その後、操作担当者は、表示されたスライド画像を利用しながら、予め準備していた資料に基づいて、プレゼンテーションを実施する。
【０１２０】
次に、ステップA2において、プレゼンテーションを実施している途中で、操作担当者が、ロボットに所定の動作をさせるために、クリック操作をしたとする。
このクリック操作は、ロボットの制御に関連したイベント入力であるものとする。たとえば、プレゼンテーションで現在表示されているスライド画像の中に、ロボットと対応づけられた表示領域がある場合に、操作担当者が、この表示領域にカーソルを合わせ、マウスでクリック操作をする。
【０１２１】
ステップP2において、PCの制御部１１は、このクリック操作を確認すると、ロボットの制御に関連したイベント入力（クリックイベント）が発生したことを検出する。このクリックイベントの検出により、イベント実行部１６に相当するプレゼンテーション用プログラムが、再生コンテンツ情報のイベント内容と制御コマンドとを対応づけた設定情報を利用して、発生したイベント内容と、そのイベント内容に対応付けられた制御コマンドとを含むイベント情報３２を生成し、ロボット制御処理部１７に相当するロボット利用プログラム（ロボットドライバ）に与える。
【０１２２】
たとえば、図２（b）に示すように、再生コンテンツ情報３１のコンテンツCN01に含まれるスライド画像SL01を表示している場合に、クリックイベントEV01が発生したとすると、図２（c）に示すように、発生したイベント内容EV01と、クリックイベントEV01に対応付けられている制御コマンドCMD01とを含むイベント情報３２が生成される。
制御コマンドCMD01として、たとえば、図３（c）に示したように、[robo01：sp]  ０，「おはよう」が設定されていた場合は、[robo01：sp]  ０，「おはよう」が、イベント情報３２に含まれる。
【０１２３】
ステップP3において、ロボット制御処理部１７のイベント監視部１８が、イベント情報３２を監視し、イベント情報３２が与えられたことを検出した場合、イベント情報３２を取得する。
さらに、ステップP4において、ロボット制御処理部１７の制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
イベント情報３２に、上記の制御コマンドCMD01が含まれている場合は、[robo01：sp]  ０，「おはよう」が、制御コマンド３３として取得される。
【０１２４】
ステップP5において、送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成する。取得した制御コマンド３３が、ロボットが理解できる情報である場合は、その制御コマンドそのものが、送信情報３４となる。
取得した制御コマンド３３が、ロボットが理解できない情報である場合は、情報変換部２１によって、その制御コマンド３３を、ロボットが理解できる形式の情報に変換した後、変換した後の情報を、送信情報３４として生成する。
【０１２５】
ステップP6において、通信部１２によって、生成された送信情報３４を、ロボットRBに送信する。
【０１２６】
ステップR1において、ロボットRBの通信部５２が、送信情報３４を受信し、受信情報７１として記憶部７０に記憶する。
ステップR2において、ロボットRBの制御部５１が、受信情報７１の内容を解析し、実行すべき動作を判定する。
【０１２７】
ステップR3において、実行すべき動作が発話の場合は、出力音声生成部５３が、受信情報７１に含まれる発話文字列を抽出し、発話すべき合成音声を生成し、出力音声情報７２として記憶する。
また、実行すべき動作がロボットの身体動作である場合は、出力動作決定部５４が、手足等の身体動作の内容を決定し、出力動作情報７３として記憶する。
【０１２８】
ステップR4において、PCから要求された動作を実行する。
たとえば、音声出力部５６が、出力音声情報７２に基づいて、合成音声を出力する。
また、身体駆動部５７が、出力動作情報７３に基づいて、決定された手足等の身体動作を実行する。
合成音声の出力と手足等の身体動作とは、異なるタイミングで行ってもよいが、発話と身体動作が関連する場合には、合成音声の出力と手足等の身体動作を、ほぼ同じタイミングで行うことが好ましい。
【０１２９】
以上の処理により、操作担当者がプレゼンテーション中に、ロボットに所定の動作をさせようとする場合、操作担当者が、その所定の動作を記載した制御コマンドに予め対応付けたイベント入力（たとえば、クリックイベント）をするだけで、ロボットに、所定の動作をさせることができる。
【０１３０】
ロボットに所定の動作を実行させるタイミングは、たとえばクリックという操作担当者の入力操作によって設定されるので、プレゼンテーションの進行状況が予定よりも早くても、あるいは予定よりも遅くなったとしても、操作担当者自らの入力操作によって、最も適切なタイミングでロボットに所定の動作を実行させることができ、プレゼンテーションで利用するコンテンツの再生と、ロボットに所定の動作を実行させるタイミングとを、容易に、同期させることができる。
【０１３１】
なお、この発明では、コンテンツの再生とロボットに実行させる動作とを同期させるために、コンテンツの再生を制御するプレゼンテーション用プログラムに、コンテンツの再生の処理に加えて、ロボットに実行させる所定の動作の内容を、その所定の動作を実行させる順序やタイミングと共に予め設定する必要はない。
上記のように、操作担当者が、プレゼンテーションの進行状況に応じて、ロボットに実行させる動作のタイミングを決められるように、プレゼンテーション用プログラムにおいて、図２と図３に示したようにイベント内容と制御コマンドとを対応づけたロボット制御用の情報を設定し記憶しておくだけでよいので、ロボットに実行させる動作を作成するときの操作担当者の負担を軽減させることができる。
【０１３２】
（第２実施例）
図６に、この発明のロボットを制御する送信情報の送信処理などの一実施例の概略シーケンス図を示す。
この第２実施例では、１台の情報処理装置PCと、複数のロボットRBとを接続し、プレゼンテーションをする操作担当者が、そのPCを利用して、プレゼンテーションを開始し、プレゼンテーションの実施中に、操作担当者が、複数のロボットをそれぞれ制御するためのイベント入力に相当するクリック操作をした場合について説明する。
図６では、３台のロボットRBを示しているが、２台または４台以上のロボットRBを接続する構成でもよい。
【０１３３】
また、図６に示すように、イベント内容と制御コマンドとを対応付けた３つの設定情報が、再生コンテンツ情報に、予め記憶されているものとし、３つの設定情報の記載順序に従って、イベントが発生し、そのイベントに対応付けられた制御コマンドに相当する送信情報がロボットに送信されるものとする。
説明を容易にするために、３つの設定情報のイベント内容は、いずれも操作担当者が行うクリック操作とする。
【０１３４】
図６において、すでに、情報処理装置PCと各ロボットRBとを接続する処理を完了し、プレゼンテーション用プログラムと、ロボット制御処理部１７に相当するロボット利用プログラム（ロボットドライバ）が起動されているものとする。
なお、PCおよびRBにおいて、図５に示したステップP2からP6の処理と、ステップR1からR4までの処理と同様の処理をするので、ステップおよび説明の一部を省略している。
【０１３５】
図６のステップP11において、操作担当者によってコンテンツの再生開始を意味する入力操作がされ、コンテンツが記憶部から読み出され、コンテンツの再生が開始されたとする。
たとえば、読み出されたコンテンツに含まれる最初のスライド画像を、表示部１４に、表示させる。その後、操作担当者は、表示されたスライド画像を利用しながら、予め準備していた資料に基づいて、プレゼンテーションを実施する。
【０１３６】
次に、ステップA11において、プレゼンテーションを実施している途中で、操作担当者が、ロボットに所定の動作をさせるために、クリック操作をしたとする。
このクリック操作は、第１実施例の図５に示したクリック操作と同じ入力操作とする。
【０１３７】
この後、図６では省略しているが、PCでは、このクリック操作を確認すると、図５に示したように、イベント入力（クリックイベント）が発生したことを検出し、イベント情報３２を生成し、ロボット制御処理部１７に与え、ロボット制御処理部１７のイベント監視部１８が、イベント情報３２を取得する。
【０１３８】
さらに、ステップP12において、制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
上記したように、図６のイベント内容と制御コマンドとを対応付けた３つの設定情報において、３つの設定情報の記載順序に従ってイベントが発生するように設定されていたとすると、１回目のクリック操作が行われた場合、最初に記載されたクリック０１に対応付けられた制御コマンド（[robo01:sp]1,文字列01）を含むイベント情報３２が生成されるので、制御コマンド（[robo01:sp]1,文字列01）が取得される。この制御コマンドの制御対象は、robo01なので、ロボットrobo01に、送信情報が送信される。
【０１３９】
送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成し、ステップP13において、通信部１２によって、生成された送信情報３４を、ロボットrobo01に送信する。
ここでは、制御コマンド（[robo01:sp]1,文字列01）に相当する送信情報が、ロボットrobo01に送信される。
上記したように、取得した制御コマンド３３が、ロボットrobo01が理解できる情報である場合は、その制御コマンドそのものが、送信情報３４となり、ロボットrobo01が理解できない情報である場合は、情報変換部２１によって制御コマンド３３をロボットrobo01が理解できる形式の情報に変換した後、変換した後の情報が、送信情報３４となる。
【０１４０】
ステップR11において、ロボットrobo01の通信部５２が、送信情報３４を受信し、受信情報７１として記憶部７０に記憶する。
その後、受信情報７１の内容を解析し、実行すべき動作を判定する。
受信情報７１として、[robo01:sp]1,文字列01が受信された場合は、実行すべき動作は、発話と、設定基本動作１であると判定される。
また、出力音声生成部５３が、受信情報７１に含まれる文字列01を抽出し、この文字列01から発話すべき合成音声を生成し、出力音声情報７２として記憶する。さらに、ロボットが実行すべき身体動作として、設定基本動作１の内容が、出力動作情報７３として記憶される。
【０１４１】
ステップR12において、音声出力部５６が、出力音声情報７２に基づいて、文字列01の合成音声を出力する。また、身体駆動部５７が、出力動作情報７３に基づいて、設定基本動作１に相当する手足等の身体動作を実行する。
合成音声の出力と、身体動作の実行は、同時に並行して実施してもよい。
【０１４２】
まず、ここまでの処理で、操作担当者がコンテンツを再生し、たとえば所定のスライド画像を表示している状態で、操作担当者が、所望のタイミングで、１回目のクリック操作をすることによって、１回目のクリック操作に予め対応づけられていた最初の制御コマンドに相当する送信情報が、その制御コマンドに設定されていた制御対象のロボットrobo01に送信され、意図していたタイミングで、意図していた動作をロボットrobo01にさせることができる。
【０１４３】
その後、操作担当者は、予め準備しておいた他のスライド画像などを表示させながら、プレゼンテーションを続行する。
そして、プレゼンテーション中において、操作担当者が、ロボットに所定の動作をさせるタイミングがきたと判断したとする。
このとき、ステップA12において、操作担当者は、ロボットに所定の動作をさせるために、２回目のクリック操作をする。
【０１４４】
この後、PCでは、この２回目のクリック操作を確認した場合、１回目のクリック操作を確認したときと同様に、イベント入力（クリックイベント）が発生したことを検出し、イベント情報３２を生成してロボット制御処理部１７に与え、ロボット制御処理部１７のイベント監視部１８がイベント情報３２を取得する。
【０１４５】
さらに、ステップP14において、制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
上記したように、図６の３つの設定情報の記載順序に従ってイベントが発生するように設定されていたとすると、２回目のクリック操作が行われた場合、２番目に記載されたクリック０２に対応付けられた制御コマンド（[robo02:sp]２,文字列02）を含むイベント情報３２が生成されるので、制御コマンド（[robo02:sp]２,文字列02）が取得される。この制御コマンドの制御対象は、robo02なので、ロボットrobo02に、送信情報が送信される。
【０１４６】
送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成し、ステップP15において、通信部１２によって、生成された送信情報３４を、ロボットrobo02に送信する。
ここでは、制御コマンド（[robo02:sp]２,文字列02）に相当する送信情報が、ロボットrobo02に送信される。
【０１４７】
ステップR21において、ロボットrobo02の通信部５２が、送信情報３４を受信し、受信情報７１として記憶部７０に記憶し、受信情報７１の内容を解析し、実行すべき動作を判定する。
受信情報７１として、[robo02:sp]２,文字列02が受信された場合は、実行すべき動作は、発話と、指定番号動作２であると判定される。
また、出力音声生成部５３が、受信情報７１に含まれる文字列02を抽出し、この文字列02から発話すべき合成音声を生成し、出力音声情報７２として記憶する。さらに、ロボットが実行すべき身体動作として、指定番号動作２の内容が、出力動作情報７３として記憶される。
【０１４８】
ステップR22において、音声出力部５６が、出力音声情報７２に基づいて、文字列02の合成音声を出力する。また、身体駆動部５７が、出力動作情報７３に基づいて、指定番号動作２に相当する手足等の身体動作を実行する。
【０１４９】
ここまでの処理によって、たとえば所定のスライド画像を表示している状態で、操作担当者が、所望のタイミングで、２回目のクリック操作をすることによって、２回目のクリック操作に予め対応づけられていた２番目の制御コマンドに相当する送信情報が、その制御コマンドに設定されていた制御対象のロボットrobo02に送信され、意図していたタイミングで、意図していた動作をロボットrobo02にさせることができる。
【０１５０】
さらに、操作担当者は、予め準備しておいた他のスライド画像などを表示させながら、プレゼンテーションを続行する。
そして、プレゼンテーション中において、操作担当者が、ロボットに所定の動作をさせるタイミングがきたと判断した場合、ステップA13において、操作担当者は、ロボットに所定の動作をさせるために、３回目のクリック操作をする。
【０１５１】
この後、PCでは、この３回目のクリック操作を確認した場合、前回のクリック操作を確認したときと同様に、イベント入力（クリックイベント）が発生したことを検出し、イベント情報３２を生成してロボット制御処理部１７に与え、ロボット制御処理部１７のイベント監視部１８がイベント情報３２を取得する。
【０１５２】
さらに、ステップP16において、制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
上記したように、図６の３つの設定情報の記載順序に従ってイベントが発生するように設定されていたとすると、３回目のクリック操作が行われた場合、３番目に記載されたクリック０３に対応付けられた制御コマンド（[robo03:sp]０,文字列03）を含むイベント情報３２が生成されるので、制御コマンド（[robo03:sp]０,文字列03）が取得される。この制御コマンドの制御対象は、robo03なので、ロボットrobo03に、送信情報が送信される。
【０１５３】
送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成し、ステップP17において、通信部１２によって、生成された送信情報３４を、ロボットrobo03に送信する。
ここでは、制御コマンド（[robo03:sp]０,文字列03）に相当する送信情報が、ロボットrobo03に送信される。
【０１５４】
ステップR31において、ロボットrobo03の通信部５２が、送信情報３４を受信し、受信情報７１として記憶部７０に記憶し、受信情報７１の内容を解析し、実行すべき動作を判定する。
受信情報７１として、[robo03:sp]０,文字列03が受信された場合は、実行すべき動作は、発話のみであり、身体動作はしないと判定される。
また、出力音声生成部５３が、受信情報７１に含まれる文字列03を抽出し、この文字列03から発話すべき合成音声を生成し、出力音声情報７２として記憶する。なお、ロボットが実行すべき身体動作はなく、出力動作情報７３には何も記憶されない。
【０１５５】
ステップR32において、音声出力部５６が、出力音声情報７２に基づいて、文字列03の合成音声を出力する。
【０１５６】
ここまでの処理によって、たとえば所定のスライド画像を表示している状態で、操作担当者が、所望のタイミングで、３回目のクリック操作をすることによって、３回目のクリック操作に予め対応づけられていた３番目の制御コマンドに相当する送信情報が、その制御コマンドに設定されていた制御対象のロボットrobo03に送信され、意図していたタイミングで、意図していた発話をロボットrobo03にさせることができる。
【０１５７】
また、この実施例では、イベント内容と制御コマンドとを対応付けた３つの設定情報において、３つの設定情報の記載順序に従ってイベントが発生するように設定されているとしたので、操作担当者は、クリック操作をする前にロボットに実行させる動作をその都度選択する入力操作をすることなく、クリックという容易な入力操作をするだけで、予め設定された順序で、複数のロボットに所望の動作をさせることができる。
【０１５８】
（第３実施例）
図７に、この発明のロボットを制御する送信情報の送信処理などの一実施例の概略シーケンス図を示す。
この第３実施例では、第２実施例と同様に、１台の情報処理装置PCと、複数のロボットRBとを接続し、プレゼンテーションをする操作担当者が、そのPCを利用して、プレゼンテーションを開始し、プレゼンテーションの実施中に、操作担当者が、複数のロボットをそれぞれ制御するためのイベント入力に相当するクリック操作をした場合について説明する。図７では、３台のロボットRBを示している。
【０１５９】
また、図７に示すように、イベント内容と制御コマンドとを対応付けた３つの設定情報が、再生コンテンツ情報に、予め記憶されているものとする。それぞれのイベント内容と対応する制御コマンドは、図６の第２実施例に示したものと同じものとする。
【０１６０】
ただし、図６の第２実施例と異なり、イベント内容と制御コマンドとを対応付けた３つの設定情報の記載順序と、イベントの発生順序とは一致しないものとし、操作担当者が、ロボットに所定の動作をさせたい場合は、その動作に対応した制御コマンドを選択する操作をした後、クリック操作をするものとする。
すなわち、この第３実施例では、イベント内容と制御コマンドとを対応付けた設定情報の記載順序にかかわらず、操作担当者が、ロボットに実行させたい所望の動作を、いつでも、何回でも、操作担当者が意図した任意のタイミングで、実行させることができる。
【０１６１】
図７においても、すでに、情報処理装置PCと各ロボットRBとを接続する処理を完了し、プレゼンテーション用プログラムと、ロボット制御処理部１７に相当するロボット利用プログラム（ロボットドライバ）が起動されているものとする。
なお、PCおよびRBにおいて、図５に示したステップP2からP6の処理と、ステップR1からR4までの処理と同様の処理をするので、ステップおよび説明の一部を省略している。
【０１６２】
図７のステップP21において、操作担当者によってコンテンツの再生開始を意味する入力操作がされ、コンテンツが記憶部３０から読み出され、コンテンツの再生が開始されたとする。
たとえば、読み出されたコンテンツに含まれる最初のスライド画像を、表示部１４に、表示させる。その後、操作担当者は、表示されたスライド画像を利用しながら、予め準備していた資料に基づいて、プレゼンテーションを実施する。
【０１６３】
次に、ステップA21において、プレゼンテーションを実施している途中で、操作担当者が、ロボットに所定の動作をさせるために、その動作に対応する制御コマンドを選択する操作をした後、クリック操作をしたとする。
ここで、まず、図７に示したようなイベント内容と制御コマンドとを対応付けた３つの設定情報を、表示部１４に表示させ、操作担当者が、表示された制御コマンドのうち、ロボットにさせたい動作に対応する制御コマンドを選択する操作をすればよい。
【０１６４】
ステップA21では、表示部１４に表示されたイベント内容と制御コマンドとを対応付けた３つの設定情報のうち、クリック０３に対応した制御コマンドを選択する操作をしたとする。
なお、制御コマンドを選択する操作と、クリック操作を別にするのではなく、制御コマンドを選択する操作にクリック操作が含まれるものとし、制御コマンドを選択する操作をしただけで、クリックイベントが発生したとみなしてもよい。
【０１６５】
この後、PCでは、このクリック操作を確認すると、図５に示したのと同様に、イベント入力（クリックイベント）が発生したことを検出し、イベント情報３２を生成し、ロボット制御処理部１７に与え、ロボット制御処理部１７のイベント監視部１８が、イベント情報３２を取得する。
【０１６６】
さらに、ステップP22において、制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
上記したように、図７のイベント内容と制御コマンドとを対応付けた３つの設定情報において、クリック０３に対応した制御コマンドを選択する操作がされたとすると、クリック０３に対応付けられた制御コマンド（[robo03:sp]０,文字列03）を含むイベント情報３２が生成され、制御コマンド（[robo03:sp]０,文字列03）が取得される。この制御コマンドの制御対象は、robo03なので、ロボットrobo03に、送信情報が送信される。
【０１６７】
送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成し、ステップP23において、通信部１２によって、生成された送信情報３４を、ロボットrobo03に送信する。
ここでは、制御コマンド（[robo03:sp]０,文字列03）に相当する送信情報が、ロボットrobo03に送信される。
【０１６８】
ステップR33およびステップR34において、図６のステップR31およびステップR32と同じ処理を行う。
すなわち、ステップR33において、ロボットrobo03の通信部５２が、送信情報３４を受信し、受信情報７１として記憶部７０に記憶し、受信情報７１の内容を解析し、実行すべき動作を判定する。
受信情報７１として、[robo03:sp]０,文字列03が受信された場合は、実行すべき動作は、発話のみであり、身体動作はしないと判定される。
【０１６９】
また、出力音声生成部５３が、受信情報７１に含まれる文字列03を抽出し、この文字列03から発話すべき合成音声を生成し、出力音声情報７２として記憶する。なお、ロボットが実行すべき身体動作はなく、出力動作情報７３には何も記憶されない。
ステップR32において、音声出力部５６が、出力音声情報７２に基づいて、文字列03の合成音声を出力する。
【０１７０】
その後、操作担当者は、予め準備しておいた他のスライド画像などを表示させながら、プレゼンテーションを続行し、プレゼンテーション中において、操作担当者が、ロボットに所定の動作をさせるタイミングがきたと判断したとする。
【０１７１】
このとき、ステップA22において、図７に示したようなイベント内容と制御コマンドとを対応付けた３つの設定情報を、表示部１４に表示させ、操作担当者が、表示された３つの設定情報のうち、クリック０１に対応した制御コマンドを選択する操作をした後、クリック操作をしたとする。
【０１７２】
この後、PCでは、このクリック操作を確認すると、図５に示したのと同様に、イベント入力（クリックイベント）が発生したことを検出し、イベント情報３２を生成し、ロボット制御処理部１７に与え、ロボット制御処理部１７のイベント監視部１８が、イベント情報３２を取得する。
【０１７３】
さらに、ステップP24において、制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
上記したように、クリック０１に対応した制御コマンドを選択する操作がされたとすると、クリック０１に対応付けられた制御コマンド（[robo01:sp]１,文字列01）を含むイベント情報３２が生成され、制御コマンド（[robo01:sp]１,文字列01）が取得される。この制御コマンドの制御対象は、robo01なので、ロボットrobo01に、送信情報が送信される。
【０１７４】
送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成し、ステップP25において、通信部１２によって、生成された送信情報３４を、ロボットrobo01に送信する。
ここでは、制御コマンド（[robo01:sp]１,文字列01）に相当する送信情報が、ロボットrobo01に送信される。
【０１７５】
ステップR13およびステップR14において、図６のステップR11およびステップR12と同じ処理を行う。
すなわち、ステップR13において、ロボットrobo01の通信部５２が、送信情報３４を受信し、受信情報７１として記憶部７０に記憶し、受信情報７１の内容を解析し、実行すべき動作を判定する。
受信情報７１として、[robo01:sp]1,文字列01が受信された場合は、実行すべき動作は、発話と、設定基本動作１であると判定される。
【０１７６】
また、ロボットrobo01の出力音声生成部５３が、受信情報７１に含まれる文字列01を抽出し、この文字列01から発話すべき合成音声を生成し、出力音声情報７２として記憶する。さらに、ロボットが実行すべき身体動作として、設定基本動作１の内容が、出力動作情報７３として記憶される。
【０１７７】
ステップR14において、ロボットrobo01の音声出力部５６が、出力音声情報７２に基づいて、文字列01の合成音声を出力する。また、ロボットrobo01の身体駆動部５７が、出力動作情報７３に基づいて、設定基本動作１に相当する手足等の身体動作を実行する。
合成音声の出力と、身体動作の実行は、同時に並行して実施してもよい。
【０１７８】
その後、操作担当者は、同様に、予め準備しておいた他のスライド画像などを表示させながら、プレゼンテーションをさらに続行し、プレゼンテーション中において、操作担当者が、ロボットに所定の動作をさせるタイミングがきたと判断したとする。
【０１７９】
このとき、ステップA23において、図７に示したようなイベント内容と制御コマンドとを対応付けた３つの設定情報を、表示部１４に表示させ、操作担当者が、表示された３つの設定情報のうち、クリック０２に対応した制御コマンドを選択する操作をした後、クリック操作をしたとする。
【０１８０】
この後、PCでは、このクリック操作を確認すると、図５に示したのと同様に、イベント入力（クリックイベント）が発生したことを検出し、イベント情報３２を生成し、ロボット制御処理部１７に与え、ロボット制御処理部１７のイベント監視部１８が、イベント情報３２を取得する。
【０１８１】
さらに、ステップP26において、制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
上記したように、クリック０２に対応した制御コマンドを選択する操作がされたとすると、クリック０２に対応付けられた制御コマンド（[robo02:sp]２,文字列02）を含むイベント情報３２が生成され、制御コマンド（[robo02:sp]２,文字列02）が取得される。
【０１８２】
送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成し、ステップP27において、通信部１２によって、生成された送信情報３４を、ロボットrobo02に送信する。
ここでは、制御コマンド（[robo02:sp]２,文字列02）に相当する送信情報が、ロボットrobo02に送信される。
【０１８３】
ステップR23およびステップR24において、図６のステップR21およびステップR22と同じ処理を行う。
すなわち、ステップR23において、ロボットrobo02の通信部５２が、送信情報３４を受信し、受信情報７１として記憶部７０に記憶し、受信情報７１の内容を解析し、実行すべき動作を判定する。
受信情報７１として、[robo02:sp]２,文字列02が受信された場合は、実行すべき動作は、発話と、指定番号動作２であると判定される。
また、出力音声生成部５３が、受信情報７１に含まれる文字列02を抽出し、この文字列02から発話すべき合成音声を生成し、出力音声情報７２として記憶する。さらに、ロボットが実行すべき身体動作として、指定番号動作２の内容が、出力動作情報７３として記憶される。
【０１８４】
ステップR24において、音声出力部５６が、出力音声情報７２に基づいて、文字列02の合成音声を出力する。また、身体駆動部５７が、出力動作情報７３に基づいて、指定番号動作２に相当する手足等の身体動作を実行する。
【０１８５】
また、この後のプレゼンテーションにおいて、たとえば、クリック０１に対応した動作を実行させたい場合は、ステップA22と同様に、操作担当者が、図７に示したようなイベント内容と制御コマンドとを対応付けた３つの設定情報を、表示部１４に表示させ、表示された３つの設定情報のうち、クリック０１に対応した制御コマンドを選択する操作をした後、クリック操作をすればよい。
これにより、ロボットrobo01に、再度、クリック０１に対応付けられた動作をさせることができる。
【０１８６】
この第３実施例では、イベント内容と制御コマンドとを対応付けた設定情報を、表示部１４に表示させ、表示された設定情報のうち、所望の制御コマンドを選択する操作をした後に、クリック操作をするので、操作担当者が、ロボットに実行させたい所望の動作を、いつでも、何回でも、操作担当者が意図した任意のタイミングで、実行させることができる。
【０１８７】
（第４実施例）
図８に、この発明のロボットに接続された外部制御機器を制御する送信情報の送信処理などの一実施例の概略シーケンス図を示す。
この第４実施例では、第１実施例と同様に、１台の情報処理装置PCと、１台のロボットrobo01とを接続し、プレゼンテーションをする操作担当者が、そのPCを利用して、プレゼンテーションを開始し、プレゼンテーションの実施中に、操作担当者が、ロボットを制御するためのイベント入力に相当するクリック操作と、ロボットrobo01に接続された外部制御機器dev01を制御するためのイベント入力に相当するクリック操作をした場合について説明する。
【０１８８】
図８では、ロボットrobo01と外部制御機器dev01とが、予め接続されているものとし、ロボットrobo01から送信される制御信号によって、外部制御機器dev01の動作が制御されるものとする。また、PCに接続されたロボットは、１台なので、PCから送信される送信情報は、すべてロボットrobo01に送信されるものとする。
【０１８９】
図８に示すように、イベント内容と制御コマンドとを対応付けた３つの設定情報が、再生コンテンツ情報に、予め記憶されているものとする。
ここでは、イベント内容であるクリック０１に対応付けられた制御コマンドが、ロボットに対する動作を設定した情報であり、クリック０２とクリック０３に対応付けられた制御コマンドが、外部制御機器に対する動作を設定した情報であるものとする。
【０１９０】
図８においても、図７の第３実施例と同様に、イベント内容と制御コマンドとを対応付けた３つの設定情報の記載順序と、イベントの発生順序とは一致しないものとし、操作担当者が、ロボットに所定の動作をさせたい場合は、その動作に対応した制御コマンドを選択する操作をした後、クリック操作をするものとする。
ただし、第２実施例と同様に、３つの設定情報の記載順序に従って、イベントが発生し、そのイベントに対応付けられた制御コマンドに相当する送信情報を送信するようにしてもよい。
【０１９１】
また、図８においても、すでに、情報処理装置PCとロボットRBとを接続する処理を完了し、プレゼンテーション用プログラムと、ロボット制御処理部１７に相当するロボット利用プログラム（ロボットドライバ）が起動されているものとする。
なお、PCおよびRBにおいて、図５に示したステップP2からP6の処理と、ステップR1からR4までの処理と同様の処理をするので、ステップおよび説明の一部を省略している。
【０１９２】
図８のステップP31において、操作担当者によってコンテンツの再生開始を意味する入力操作がされ、コンテンツが記憶部３０から読み出され、コンテンツの再生が開始されたとする。
たとえば、読み出されたコンテンツに含まれる最初のスライド画像を、表示部１４に、表示させる。その後、操作担当者は、表示されたスライド画像を利用しながら、予め準備していた資料に基づいて、プレゼンテーションを実施する。
【０１９３】
次に、ステップA31において、プレゼンテーションを実施している途中で、ロボットに所定の動作をさせるために、図８に示したようなイベント内容と制御コマンドとを対応付けた３つの設定情報を、表示部１４に表示させ、操作担当者が、表示された制御コマンドのうち、クリック０１に対応した制御コマンドを選択する操作をした後、クリック操作をしたとする。
【０１９４】
この後、PCでは、このクリック操作を確認すると、図５に示したのと同様に、イベント入力（クリックイベント）が発生したことを検出し、イベント情報３２を生成し、ロボット制御処理部１７に与え、ロボット制御処理部１７のイベント監視部１８が、イベント情報３２を取得する。
【０１９５】
さらに、ステップP32において、制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
上記したように、クリック０１に対応した制御コマンドを選択する操作がされたとすると、クリック０１に対応付けられた制御コマンド（[robo01:sp]１,文字列01）を含むイベント情報３２が生成され、制御コマンド（[robo01:sp]１,文字列01）が取得される。
【０１９６】
送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成し、ステップP33において、通信部１２によって、生成された送信情報３４を、ロボットrobo01に送信する。
ここでは、制御コマンド（[robo01:sp]１,文字列01）に相当する送信情報が、ロボットrobo01に送信される。
【０１９７】
ステップR51およびステップR52において、図６のステップR11およびステップR12と同じ処理を行う。
すなわち、ステップR51において、ロボットrobo01の通信部５２が、送信情報３４を受信し、受信情報７１として記憶部７０に記憶し、受信情報７１の内容を解析し、実行すべき動作を判定する。
受信情報７１として、[robo01:sp]1,文字列01が受信された場合は、実行すべき動作は、発話と、設定基本動作１であると判定される。
【０１９８】
また、ロボットrobo01の出力音声生成部５３が、受信情報７１に含まれる文字列01を抽出し、この文字列01から発話すべき合成音声を生成し、出力音声情報７２として記憶する。さらに、ロボットが実行すべき身体動作として、設定基本動作１の内容が、出力動作情報７３として記憶される。
【０１９９】
ステップR52において、ロボットrobo01の音声出力部５６が、出力音声情報７２に基づいて、文字列01の合成音声を出力する。また、ロボットrobo01の身体駆動部５７が、出力動作情報７３に基づいて、設定基本動作１に相当する手足等の身体動作を実行する。
合成音声の出力と、身体動作の実行は、同時に並行して実施してもよい。
【０２００】
その後、操作担当者は、予め準備しておいた他のスライド画像などを表示させながら、プレゼンテーションを続行し、プレゼンテーション中において、操作担当者が、ロボットrobo01に接続された外部制御機器dev01の動作を制御させるタイミングがきたと判断したとする。
まず、外部制御機器dev01の電源を投入し、起動させるものとする。
【０２０１】
この場合、ステップA32において、外部制御機器dev01の電源を投入するために、図８に示したようなイベント内容と制御コマンドとを対応付けた３つの設定情報を、表示部１４に表示させ、操作担当者が、表示された制御コマンドのうち、クリック０２に対応した制御コマンドを選択する操作をした後、クリック操作をする。
【０２０２】
この後、PCでは、このクリック操作を確認すると、イベント入力（クリックイベント）が発生したことを検出し、イベント情報３２を生成し、ロボット制御処理部１７に与え、ロボット制御処理部１７のイベント監視部１８が、イベント情報３２を取得する。
【０２０３】
さらに、ステップP34において、制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
上記したように、クリック０２に対応した制御コマンドを選択する操作がされたとすると、クリック０２に対応付けられた制御コマンド[dev01:on]を含むイベント情報３２が生成され、制御コマンド[dev01:on]が取得される。
【０２０４】
送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成し、ステップP35において、通信部１２によって、生成された送信情報３４を、ロボットrobo01に送信する。
ここでは、制御コマンド[dev01:on]に相当する送信情報が、ロボットrobo01に送信される。
【０２０５】
ステップR53において、ロボットrobo01の通信部５２が、送信情報３４を受信し、受信情報７１として記憶部７０に記憶し、受信情報７１の内容を解析し、実行すべき動作を判定する。
受信情報７１として、[dev01:on]が受信された場合は、制御対象が、ロボットrobo01に接続された外部制御機器dev01であり、外部制御機器dev01に対して実行すべき動作は、電源の投入であると判定される。
【０２０６】
ステップR54において、ロボットrobo01の機器制御部６０が、外部制御機器dev01に対して、電源の投入を意味する制御信号（起動信号）を、送信する。
ステップD01において、外部制御機器dev01が、この電源の投入を意味する制御信号（起動信号）を受信すると、自ら電源を投入する処理を実行し、所定の動作を起動させる。
【０２０７】
その後、操作担当者は、さらにプレゼンテーションを続行し、プレゼンテーション中において、ロボットrobo01に接続された外部制御機器dev01の電源を切断し動作を停止させるタイミングがきたと判断したとする。
【０２０８】
この場合、ステップA33において、外部制御機器dev01の電源を切断するために、図８に示したようなイベント内容と制御コマンドとを対応付けた３つの設定情報を、表示部１４に表示させ、操作担当者が、表示された制御コマンドのうち、クリック０３に対応した制御コマンドを選択する操作をした後、クリック操作をする。
【０２０９】
この後、PCでは、このクリック操作を確認すると、イベント入力（クリックイベント）が発生したことを検出し、イベント情報３２を生成し、ロボット制御処理部１７に与え、ロボット制御処理部１７のイベント監視部１８が、イベント情報３２を取得する。
【０２１０】
さらに、ステップP36において、制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
上記したように、クリック０３に対応した制御コマンドを選択する操作がされたとすると、クリック０３に対応付けられた制御コマンド[dev01:off]を含むイベント情報３２が生成され、制御コマンド[dev01:off]が取得される。
【０２１１】
送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成し、ステップP37において、通信部１２によって、生成された送信情報３４を、ロボットrobo01に送信する。
ここでは、制御コマンド[dev01:off]に相当する送信情報が、ロボットrobo01に送信される。
【０２１２】
ステップR55において、ロボットrobo01の通信部５２が、送信情報３４を受信し、受信情報７１として記憶部７０に記憶し、受信情報７１の内容を解析し、実行すべき動作を判定する。
受信情報７１として、[dev01:off]が受信された場合は、制御対象が、ロボットrobo01に接続された外部制御機器dev01であり、外部制御機器dev01に対して実行すべき動作は、電源の切断であると判定される。
【０２１３】
ステップR56において、ロボットrobo01の機器制御部６０が、外部制御機器dev01に対して、電源の切断を意味する制御信号（停止信号）を、送信する。
ステップD02において、外部制御機器dev01が、この電源の切断を意味する制御信号（停止信号）を受信すると、電源を切断する処理を実行し、所定の動作を停止させる。
【０２１４】
この第４実施例では、イベント内容と制御コマンドとを対応付けた設定情報の中に、ロボットに接続された外部制御機器の動作を制御させる情報を記載しておき、操作担当者は、イベント内容と制御コマンドとを対応付けた設定情報を、表示部１４に表示させ、表示された情報のうち、外部制御機器の動作を制御させる制御コマンドを選択する操作をした後に、クリック操作をすることにより、ロボットの動作を制御する操作と同様の操作をするだけで、容易に、ロボットを介して、外部制御機器の動作を制御することができる。
すなわち、外部制御機器の動作を制御するために、異なる種類の入力操作を覚える必要がなく、外部制御機器の動作を制御するための操作担当者の操作負担を軽減できる。
【０２１５】
＜ロボット制御システムにおける情報処理装置の処理フローの説明＞
図９に、この発明の情報処理装置における送信情報の送信処理などの一実施例のフローチャートを示す。
情報処理装置PCにおいて、上記したような再生コンテンツ情報３１と制御コマンド３３が作成されて記憶部３０に記憶され、制御コマンドとその制御コマンドをロボットに送信するタイミングを規定するイベント内容とを対応付けた設定情報が、記憶部３０に記憶されているものとする。このフローは、図５に示したシーケンスのうち、情報処理装置PCのステップP1からP6にほぼ対応する。
【０２１６】
図９のステップS1において、ロボット制御処理部１７に相当するロボット利用プログラム（ロボットドライバ）を起動させる。
ステップS2において、情報処理装置PCとロボットRBとを接続する処理を行う。
PCの通信部とRBの通信部によって、接続のための所定の通信手順に基づいて、所定の情報を互いに通信することによって、双方が通信可能な状態であることを確認する。
【０２１７】
ステップS3において、イベント実行部１６に相当するプレゼンテーション用プログラムを起動させ、記憶部３０に記憶されている再生コンテンツ情報３１の中から、プレゼンテーションで利用する再生コンテンツを読み出す。
【０２１８】
ステップS4において、読み出した再生コンテンツの再生を開始する。たとえば、コンテンツに含まれる最初のスライド画像を、表示部１４に表示させる。
この後、操作担当者が、表示された画像や書面を用いて、プレゼンテーションを行う。
プレゼンテーションをしているときに、操作担当者が、たとえば、表示されているスライド画像の特定の表示領域をクリックする入力操作をすると、クリックイベントが発生する。あるいは、スライド画像に、所定の文字列が表示されたときに、表示イベントが発生する。
ここでは、クリックイベントの発生や表示イベントの発生など、所定のイベントの発生を、イベント入力と呼ぶ。
【０２１９】
ステップS5において、イベント入力があるか否かをチェックする。
ステップS6において、イベント入力があったことが検出されると、ステップS8へ進み、そうでなければ、ステップS7へ進む。
ステップS7において、再生コンテンツの再生処理をそのまま継続し、ステップS5に戻る。する。たとえば、複数のスライド画像がある場合において、別のスライド画像を表示させたい場合は、操作担当者が、スライド画像を切り替える操作をし、プレゼンテーションを進行する。
【０２２０】
イベント入力があったことが検出された場合、ステップS8において、プレゼンテーション用プログラムが、イベント情報３２を生成する。
記憶部３０に予め記憶されているイベント内容と制御コマンドとを対応付けた設定情報の中に、発生したイベントの内容と対応付けられた制御コマンドがある場合は、その制御コマンドを含むイベント情報３２が生成される。
【０２２１】
ステップS9において、ロボット制御処理部１７のイベント監視部１８が、イベント情報３２が生成されるのを監視し、イベント情報３２を取得する。
ステップS10において、取得したイベント情報３２の中に、ロボットに対する制御コマンドが含まれているか否かをチェックする。
ステップS11において、制御コマンドが含まれている場合は、ステップS12に進み、そうでない場合は、ステップS７に進む。
【０２２２】
ステップS12において、制御コマンド取得部１９が、イベント情報３２に含まれる制御コマンド３３を取得する。
ステップS13において、送信情報生成部２０が、取得した制御コマンド３３を利用して、送信情報３４を生成する。
【０２２３】
上記したように、制御コマンド３３が、ロボットが理解できる情報である場合は、制御コマンド３３をそのまま送信情報３４とすればよい。あるいは、制御コマンド３３が、ロボットが理解できない情報である場合は、情報変換部２１が、プロトコル情報３５を利用して、制御コマンド３３をロボットが理解できる情報に変換し、変換後の情報を送信情報３４とすればよい。
ステップS14において、通信部１２によって、生成した送信情報３４を、ロボットに送信する。その後、ステップS5に戻り、上記した処理を繰り返す。
【０２２４】
＜ロボット制御システムにおけるロボットの処理フローの説明＞
図１０に、この発明のロボットにおける送信情報を受信した後の動作などの一実施例のフローチャートを示す。
以下には、ロボットRBに外部制御機器が接続されている場合の処理を示すが、ロボットRBに外部制御機器が接続されていない場合は、ステップS55、S61、S62は必要ない。
【０２２５】
図１０のステップS51において、ロボットRBと情報処理装置PCとを接続する処理を行う。
ステップS52において、情報処理装置PCから送信されたデータの受信チェックを行う。
ステップS53において、情報処理装置PCから送信された送信情報が受信された場合は、ステップS54に進み、そうでない場合は、ステップS52に戻る。
【０２２６】
ステップS54において、受信した送信情報を受信情報７１として記憶し、受信情報７１を解析して、受信情報７１に含まれる制御コマンドから制御対象を特定し、制御コマンドの制御内容から、実行すべき動作を判定する。
ステップS55において、判定した動作が、外部制御機器の制御である場合は、ステップS61に進み、そうでない場合は、ステップS56に進む。
【０２２７】
ステップS61において、制御コマンドの制御内容に基づいて、外部制御機器を制御するための制御信号を生成する。
ステップS62において、外部制御機器８０に、生成した制御信号を送信する。
その後、ステップS52に戻る。
【０２２８】
ステップS56において、判定した動作が発話である場合は、受信情報から、発話文字列を取得する。
ステップS57において、出力音声生成部５３が、取得した発話文字列から、発話すべき合成音声を生成し、出力音声情報７２として記憶する。
ステップS58において、出力動作決定部５３が、制御コマンドの制御内容から、手足等の身体動作の内容を決定し、出力動作情報７３として記憶する。
【０２２９】
ステップS59において、音声出力部５６が、出力音声情報７２を利用して、合成音声を出力する。
ステップS60において、身体駆動部５７が、出力動作情報７３を利用して、ロボットの身体の各部位を駆動させ、所定の身振り動作を実行する。
ステップS59の音声出力と、S60の身振り動作は、この順に実行するのではなく、両者を連動させ、ほぼ同じタイミングで実行してもよい。
その後、ステップS52に戻る。
【符号の説明】
【０２３０】
１  情報処理装置、
２  ロボット、
３  ネットワーク、
１１  制御部、
１２  通信部、
１３  情報入力部、
１４  表示部、
１５  コンテンツ再生部、
１６  イベント実行部、
１７  ロボット制御処理部、
１８  イベント監視部、
１９  制御コマンド取得部、
２０  送信情報生成部、
２１  情報変換部、
３０  記憶部、
３１  再生コンテンツ情報、
３２  イベント情報、
３３  制御コマンド、
３３ａ  制御対象、
３３ｂ  制御内容、
３４  送信情報、
３４ａ  制御対象、
３４ｂ  制御内容、
３５  プロトコル情報、
５１  制御部、
５２  通信部、
５３  出力音声生成部、
５４  出力動作決定部、
５５  動作実行部、
５６  音声出力部、
５７  身体駆動部、
５８  音声入力部、
５９  画像入力部、
６０  機器制御部、
７０  記憶部、
７１  受信情報、
７１ａ  制御対象、
７１ｂ  制御内容、
７２  出力音声情報、
７３  出力動作情報、
８０  外部制御機器
【図１】
2018207400.tif 000003
【図２】
2018207400.tif 000004
【図３】
2018207400.tif 000005
【図４】
2018207400.tif 000006
【図５】
2018207400.tif 000007
【図６】
2018207400.tif 000008
【図７】
2018207400.tif 000009
【図８】
2018207400.tif 000010
【図９】
2018207400.tif 000011
【図１０】
2018207400.tif 000012