"ロボットプラグイン中継システムであって、ロボットで実行されるアプリケーションを構成する各種機能を遂行し、通信網を介して他のロボット遠隔プラグインと通信を行って前記機能の遂行のためのデータを送/受信するロボット遠隔プラグインと、前記ロボット遠隔プラグインと通信網で接続され、前記ロボット遠隔プラグイン間の相互通信を中継するロボットプラグインフレームワークエンジンとを含むロボットプラグイン中継システム。前記ロボットプラグインフレームワークエンジンは、前記ロボット遠隔プラグイン間の相互通信を中継して前記ロボット遠隔プラグインから特定関数の呼び出し要請時に前記呼び出しの要請を前記他のロボット遠隔プラグインに伝送し、前記他のロボット遠隔プラグインから前記呼び出しの要請に応答した前記関数の結果値の伝送を受け、前記ロボット遠隔プラグインに伝送することを特徴とする請求項1に記載のロボットプラグイン中継システム。前記ロボット遠隔プラグイン間の通信は、テキスト基盤のプロトコルを通じて行われることを特徴とする請求項1に記載のロボットプラグイン中継システム。前記プロトコルを通じて送信又は受信されるパケットは、ヘッダ部とボディ部とを含むことを特徴とする請求項3に記載のロボットプラグイン中継システム。前記ヘッダ部は、プロトコル名、バージョン、パケットID、データタイプ又は長さのうちの1つ以上の情報を含むことを特徴とする請求項4に記載のロボットプラグイン中継システム。前記ボディ部は、タグ部とデータ部とを含むことを特徴とする請求項4に記載のロボットプラグイン中継システム。前記タグ部は、要請、応答又はエラーのうちのいずれか1つを含むことを特徴とする請求項6に記載のロボットプラグイン中継システム。前記データ部は、実際に伝送されるデータを含むことを特徴とする請求項6に記載のロボットプラグイン中継システム。ロボットプラグイン中継方法であって、通信網を介して多数のロボット遠隔プラグインと接続されるロボットプラグインフレームワークエンジンで1つのロボット遠隔プラグインからの遠隔実行要請を受信する段階と、前記ロボットプラグインフレームワークエンジンから前記実行要請を行うターゲットロボット遠隔プラグインに前記実行要請を伝送する段階と、前記ロボットプラグインフレームワークエンジンで前記ターゲットロボット遠隔プラグインから前記実行要請の実行に伴う結果値を受信する段階と、前記ロボットプラグインフレームワークエンジンから前記結果値を、前記実行要請を送信した前記ロボット遠隔プラグインに伝送する段階とを含むロボットプラグイン中継方法。前記ロボット遠隔プラグイン間の通信は、テキスト基盤のプロトコルを通じて行われることを特徴とする請求項9に記載のロボットプラグイン中継方法。前記プロトコルを通じて送/受信されるパケットは、ヘッダ部とボディ部とを含むことを特徴とする請求項10に記載のロボットプラグイン中継方法。前記ヘッダ部は、プロトコル名、バージョン、パケットID、データタイプ又は長さのうちの1つ以上の情報を含むことを特徴とする請求項11に記載のロボットプラグイン中継方法。前記ボディ部は、タグ部とデータ部とを含むことを特徴とする請求項11に記載のロボットプラグイン中継方法。前記タグ部は、要請、応答又はエラーのうちのいずれか1つを含むことを特徴とする請求項13に記載のロボットプラグイン中継方法。前記データ部は、実際に伝送されるデータを含むことを特徴とする請求項13に記載のロボットプラグイン中継方法。そこで、本発明は上記事情に鑑みてなされたものであって、その目的は、分散環境下で2つのロボットプラグイン間の相互作用に関するプロトコルを定義し、ロボットプラグインフレームワークエンジンが2つのロボットプラグイン間の通信を中継するように実現してロボットプラグイン間の関数呼び出し、シンボル参照及びフレームワークエンジンとの相互作用を通じたイベント、タイマーなどの遠隔実行が可能にするロボットプラグインの遠隔実行のためのロボットプラグイン中継システム及び方法を提供することにある。上述した本発明は、ロボットプラグイン中継システムであって、ロボットで実行されるアプリケーションを構成する各種機能を遂行し、通信網を介して他のロボット遠隔プラグインと通信を行って前記機能の遂行のためのデータを送/受信するロボット遠隔プラグインと、前記ロボット遠隔プラグインと通信網で接続され、前記ロボット遠隔プラグイン間の相互通信を中継するロボットプラグインフレームワークエンジンとを含む。また、前記ロボットプラグインフレームワークエンジンは、前記ロボット遠隔プラグイン間の相互通信を中継して前記ロボット遠隔プラグインから特定関数の呼び出し要請時に前記呼び出しの要請を前記他のロボット遠隔プラグインに伝送し、前記他のロボット遠隔プラグインから前記呼び出しの要請に応答した前記関数の結果値の伝送を受け、前記ロボット遠隔プラグインに伝送することを特徴とする。さらに、前記ロボット遠隔プラグイン間の通信は、テキスト基盤のプロトコルを通じて行われることを特徴とする。また、前記プロトコルを通じて送信又は受信されるパケットは、ヘッダ部とボディ部とを含むことを特徴とする。さらに、前記ヘッダ部は、プロトコル名、バージョン、パケットID、データタイプ又は長さのうちの1つ以上の情報を含むことを特徴とする。また、前記ボディ部は、タグ部とデータ部とを含むことを特徴とする。さらに、前記タグ部は、要請、応答又はエラーのうちのいずれか1つを含むことを特徴とする。また、前記データ部は、実際に伝送されるデータを含むことを特徴とする。さらに、本発明はロボットプラグイン中継方法であって、通信網を介して多数のロボット遠隔プラグインと接続されるロボットプラグインフレームワークエンジンで1つのロボット遠隔プラグインからの遠隔実行要請を受信する段階と、前記ロボットプラグインフレームワークエンジンから前記実行要請を行うターゲットロボット遠隔プラグインに前記実行要請を伝送する段階と、前記ロボットプラグインフレームワークエンジンで前記ターゲットロボット遠隔プラグインから前記実行要請の実行に伴う結果値を受信する段階と、前記ロボットプラグインフレームワークエンジンから前記結果値を、前記実行要請を送信した前記ロボット遠隔プラグインに伝送する段階とを含む。また、前記ロボット遠隔プラグイン間の通信は、テキスト基盤のプロトコルを通じて行われることを特徴とする。さらに、前記プロトコルを通じて送/受信されるパケットは、ヘッダ部とボディ部とを含むことを特徴とする。また、前記ヘッダ部は、プロトコル名、バージョン、パケットID、データタイプ又は長さのうちの1つ以上の情報を含むことを特徴とする。さらに、前記ボディ部は、タグ部とデータ部とを含むことを特徴とする。また、前記タグ部は、要請、応答又はエラーのうちのいずれか1つを含むことを特徴とする。さらに、前記データ部は、実際に伝送されるデータを含むことを特徴とする。本発明によれば、ロボットプラグイン中継システム及び方法において、分散環境下で2つのロボットプラグイン間の相互作用に関するプロトコルを定義し、ロボットプラグインフレームワークエンジンが2つのロボットプラグイン間の通信を中継するように実現してロボットプラグイン間の関数呼び出し、シンボル参照及びフレームワークエンジンとの相互作用を通じたイベント、タイマーなどの遠隔実行が可能にすることによって、ロボットプラグイン間の互換性を確保できるという効果を奏する。本発明の利点及び特徴、そしてそれらを達成する方法は、添付する図面と共に詳細に後述されている実施形態を参照すれば明確になる。しかし、本発明は以下で開示される実施形態に限定されるものではなく、互いに異なる多様な形態で実現でき、但し、本実施形態は本発明の開示が完全なようにし、本発明の属する技術分野において通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものであり、本発明は請求の範囲の範疇により定義されるだけである。明細書全体に渡って同一参照符号は同一構成要素を示す。本発明の実施形態を説明するにおいて公知となった機能又は構成についての具体的な説明が本発明の要旨を不要に曖昧にするおそれがあると判断される場合にはその詳細な説明を省略し、後述する用語は、本発明の実施形態での機能を考慮して定義された用語であって、これはユーザ、運用者の意図又は慣例などによって変わり得る。従って、その定義は本明細書全般に渡る内容に基づいてなされるべきである。添付するブロック図の各ブロックとフローチャートの各段階の組み合わせは、コンピュータプログラムインストラクション実行エンジンにより行われることもでき、これらのコンピュータプログラムインストラクションは、汎用コンピュータ、特殊コンピュータ又はその他プログラム可能なデータプロセシング装備のプロセッサに搭載され得るので、コンピュータ又はその他プログラム可能なデータプロセシング装備のプロセッサを通じて行われるそのインストラクションがブロック図の各ブロック又はフローチャートの各段階で説明された機能を行う手段を生成する。これらのコンピュータプログラムインストラクションは、特定方式で機能を実現するためにコンピュータ又はその他プログラム可能なデータプロセシング装備を指向できるコンピュータ利用可能又はコンピュータ読み取り可能メモリに格納されることも可能であるので、そのコンピュータ利用可能又はコンピュータ読み取り可能メモリに格納されているインストラクションは、ブロック図の各ブロック又はフローチャートの各段階で説明された機能を行うインストラクション手段を含む製造品目を生産することも可能である。そして、コンピュータプログラムインストラクションは、コンピュータ又はその他プログラム可能なデータプロセシング装備上に搭載されることも可能であるので、コンピュータ又はその他プログラム可能なデータプロセシング装備上で一連の動作段階が行われ、コンピュータで実行されるプロセスを生成し、コンピュータ又はその他プログラム可能なデータプロセシング装備を行うインストラクションは、ブロック図の各ブロック及びフローチャートの各段階で説明される機能を実行するための段階を提供することも可能である。また、各ブロック又は各段階は、特定された論理的機能を実行するための1つ以上の実行可能なインストラクションを含むモジュール、セグメント又はコードの一部を表すことができ、複数の代替実施形態ではブロック又は段階で言及された機能が順序から外れて発生することも可能であることに注目しなければならない。例えば、相次いで示されている2つのブロック又は段階は実際に実質的に同時に行われてもよく、また、そのブロック又は段階が必要に応じて該当する機能の逆順に行われてもよい。以下、添付する図面を参照して本発明の好適な実施形態について詳細に説明する。図1は、本発明の実施形態によるロボットプラグイン中継システムの構成を示す。図1を参照すれば、ロボットプラグインフレームワークエンジンpluginframeworkengine102は、第1ロボット遠隔プラグイン100と第2ロボット遠隔プラグイン104及びロボットローカルプラグイン106間の相互作用を中継し、イベント及びタイマーサービスtimerserviceを提供する機能をする。第1ロボット遠隔プラグイン100は、ロボットプラグインフレームワークエンジン102が搭載されたコンピューティングノードcomputingnodeとは異なる所に搭載されることができ、インターネットを介してロボットプラグインフレームワークエンジン102の中継を通じて遠隔地にある他の第2ロボット遠隔プラグイン104と相互作用する。ロボットローカルプラグイン106は、ロボットプラグインフレームワークエンジン102と同じコンピューティングノードに存在し、ロボットプラグインフレームワークエンジン102により搭載される。第1ロボット遠隔プラグイン100と第2ロボット遠隔プラグイン104間の相互作用は、ロボットプラグインフレームワークエンジン102の中継を通じて行われる。第1、第2ロボット遠隔プラグイン100、104間、又は第1、第2ロボット遠隔プラグイン100、104とロボットプラグインフレームワークエンジン102間には関数呼び出し、シンボル参照、イベント及びタイマー機能と各種制御のための相互作用が行われる。図2は、本発明の実施形態によるロボットプラグイン中継システムにおけるプロトコルパケットprotocolpacketのフォーマット図である。本発明のプロトコルは、テキスト基盤プロトコルtextbasedprotocolであり、テキストtextを基盤とするため、エンコーディングencodingとデコーディングdecodingが容易である。図2を参照すれば、1つのパケットはヘッダ部headerとボディ部bodyで構成される。ヘッダ部はプロトコル名protocolname、バージョンversion、パケットIDpacketID、データタイプdatatype、長さlengthが入る計24バイトbyteで構成される。プロトコル名はRPPに固定され、バージョンはプロトコルの現在のバージョンが2xのような3バイトの文字列で構成される。パケットIDはパケットに付与される通し番号であって、1つのプラグインで生成される各パケットは固有のIDを有さなければならない。データタイプはボディのデータ部にあるデータのタイプを示し、S或いはL値を有し、それぞれ文字列型データ又はリスト型データを示す。長さはボディ部の全長を示す。図2で見られるように、ボディはタグ部とデータ部からなる。タグ部はrequest、reply、error文字列の1つである。requestは要請する時に指定され、この要請に対する応答がある場合、reply又はerrorを利用する。データ部は実際の要請や応答の内容を記述する部分であって、それぞれについては後述する。ボディ部の各項目は、空白文字で区分する。下記の[表1]は、第1、第2ロボット遠隔プラグイン100、104においてロボットプラグインフレームワークエンジン102でシンボルsymbolを登録解除する時に用いられるシンボル登録解除メッセージに対するボディ部の構成を示す。タグとしては[request]を指定し、命令部はシンボルを登録するか又は解除するかによって命令コードが変わり、[表2]の命令コード表を参照する。シンボル名の項目には処理しようとするシンボルの名称を指定する。下記の[表3]は、第1、第2ロボット遠隔プラグイン100、104においてロボットプラグインフレームワークエンジン102でオブジェクトobjectを登録解除する時に用いられるオブジェクト登録解除メッセージに対するボディ部の構成を示す。タグとしては[request]を指定し、命令コードはオブジェクトを登録するか又は解除するかによって命令コードが変わり、[表2]の命令コード表を参照する。オブジェクト名の項目には処理しようとするオブジェクトの名称を指定する。下記の[表4]は、第1、第2ロボット遠隔プラグイン100、104においてロボットプラグインフレームワークエンジン102で関数を登録解除する時に用いられる関数登録解除メッセージに対するボディ部の構成を示す。タグとしては[request]を指定し、命令コードは関数を登録するか又は解除するかによって命令コードが変わり、[表2]の命令コード表を参照する。関数名の項目には処理しようとする関数の名称を指定する。下記の[表5]は、第1、第2ロボット遠隔プラグイン100、104の特定シンボル値を参照しようとする時に用いるシンボル値参照命令に対するデータ部を記述する。この命令は特定シンボルの値を参照するものであるので、この要請に対する成否を応答しなければならない。この要請を受けたロボットプラグインフレームワークエンジン102は、要請の処理に対する成否を要請した例えば、第1ロボット遠隔プラグイン100に伝達する。シンボル値参照命令の要請時には命令コード項目、シンボル名項目を有する。命令コードはシンボル値参照命令に該当するコードを有し、シンボル名値は設定しようとするシンボルの名称を指定する。シンボル値参照命令の成功時にはreplyタグと共にシンボル値を伝達し、失敗時にはerrorと共にエラーメッセージを送る下記の[表6]は、第1、第2ロボット遠隔プラグイン100、104の特定シンボル値を変更しようとする時に用いるシンボル値変更命令に対するデータ部を記述する。シンボル変更命令は特定シンボルの値を変更するものであるので、この要請に対する成否を応答しなければならない。この要請を受けたロボットプラグインフレームワークエンジン102は、要請の処理に対する成否を要請した第1ロボット遠隔プラグイン100又は第2ロボット遠隔プラグイン104に伝達する。シンボル値変更の要請時にはタグ、命令コード、シンボル名部、そしてシンボル値部を有する。命令コードはシンボル値の変更に該当する命令コード値を有し、シンボル名値は設定しようとするシンボルの名称を指定する。シンボル値はバリュー型の値を有するが、このタイプは整数型、実数型、文字列、イメージ、サウンド、リスト型データを入れることができる。下記の[表7]は、第1、第2ロボット遠隔プラグイン100、104の特定関数を呼び出そうとする時に用いる命令に対するメッセージフォーマットを示す。関数呼び出しの要請時にはタグとして[request]を有し、命令コードとしては関数呼び出しに該当する命令コードを指定する。関数名の項目は呼び出そうとする関数名を指定し、パラメータparameter項目は関数呼び出しに伝達されるパラメータを指定する。このとき、パラメータはリスト型listtypeであり,バリュー型valuetypeデータの羅列である。関数呼び出しに成功すれば,ロボットプラグインフレームワークエンジン102は[reply]タグと共に返還値を返還し、失敗時には[error]タグと共にエラーメッセージを伝達する。下記の[表8]は、ロボットプラグインフレームワークエンジン102にイベントを登録する時に用いられるメッセージを示す。タグ項目は[request]と指定し、命令コードは[表2]の命令コード表を参照する。イベント名の項目には通知要請を登録する対象イベントの名称を指定する。下記の[表9]は、ロボットプラグインフレームワークエンジン102又は第1、第2ロボット遠隔プラグイン100、104で発生したイベントをロボットプラグインフレームワークエンジン102又は第1、第2ロボット遠隔プラグイン100、104に伝達する時に用いられるメッセージを示す。タグ項目は[request]と指定し、命令コードは[表2]の命令コード表を参照する。イベント名の項目には発生したイベントの名称を指定する。下記の[表10]は、第1、第2ロボット遠隔プラグイン100、104で一定周期で特定機能を行おうとする時、又はロボットプラグインフレームワークエンジン102に特定周期でイベントを発生してくれるよう要請する時に用いられる命令に対するメッセージフォーマットである。タグ項目は[request]と指定し、命令コードは[表2]の命令コード表を参照する。イベント名の項目には発生したイベントの名称を指定する。周期項目はイベントを発生させる周期を指定し、オブジェクト名はこのメッセージを送るオブジェクトの名称を指定する。図3は、本発明の実施形態によるロボットプラグイン中継システムにおいて第1、第2ロボット遠隔プラグイン100、104間の遠隔実行、例えば、関数呼び出しのための信号処理の流れを示す図である。以下、図1及び図3を参照して本発明の実施形態を詳細に説明する。まず、第1ロボット遠隔プラグイン100内にAというオブジェクトがロボットプラグインフレームワークエンジン102で第2ロボット遠隔プラグイン104内のBというオブジェクトが有している特定関数の呼び出しを要請するフレームワークエンジンに遠隔実行を要請ステップS300。これにより、ロボットプラグインフレームワークエンジン102は、第1ロボット遠隔プラグイン100からの関数呼び出しの要請を該当関数を有している第2ロボット遠隔プラグイン104に伝送する該当要請を実行するプラグインに遠隔実行の要請を伝送ステップS302。そうすると、第2ロボット遠隔プラグイン104は、第1ロボット遠隔プラグイン100から要請を受けた関数を呼び出す。このとき、例えば、第2ロボット遠隔プラグイン104内のBというオブジェクトが有するsum関数が呼び出されると仮定し、また、sum関数は2つの整数を受けてこれを合算した後、その結果を返還する関数と仮定する。次に、第2ロボット遠隔プラグイン104は該当sum関数を呼び出しステップS304、関数値を計算した後、このような関数値を関数呼び出しに対する結果値としてロボットプラグインフレームワークエンジン102に伝送するフレームワークエンジンに実行結果を伝送ステップS308。これにより、ロボットプラグインフレームワークエンジン102は、第2ロボット遠隔プラグイン104から伝送を受けた結果値を第1ロボット遠隔プラグイン100に伝送する実行要請を伝送したプラグインに実行結果を伝送ステップS310。図4は、前記図3の過程で送/受信されるプロトコルパケットの一例を示す図である。図4を参照すれば、図4の1は第1ロボット遠隔プラグインからロボットプラグインフレームワークエンジンに伝送する関数呼び出し要請のパケットの構成を示すものであり、2はロボットプラグインフレームワークエンジンから第2ロボット遠隔プラグインに伝送する関数呼び出し要請のパケットの構成を示すものである。図4の3は第2ロボット遠隔プラグインからロボットプラグインフレームワークエンジンに伝送する結果値のパケット構成を示すものであり、4はロボットプラグインフレームワークエンジンから第1ロボット遠隔プラグインに伝送する結果値のパケット構成を示すものである。前述した通り、本発明ではロボットプラグイン中継システム及び方法において、分散環境下で2つのロボットプラグイン間の相互作用に関するプロトコルを定義し、ロボットプラグインフレームワークエンジンが2つのロボットプラグイン間の通信を中継するように実現してロボットプラグイン間の関数呼び出し、シンボル参照及びフレームワークエンジンとの相互作用を通じたイベント、タイマーなどの遠隔実行が可能にすることによって、ロボットプラグイン間の互換性を確保できる。一方、上述した本発明の説明では具体的な実施形態について説明したが、様々な変形が本発明の範囲から逸脱せず、実施され得る。従って、発明の範囲は説明した実施形態によって定めるのではなく、特許請求の範囲により定められなければならない。"