JP2013063489A - Interaction system, interactive system and program - Google Patents

Interaction system, interactive system and program Download PDF

Info

Publication number
JP2013063489A
JP2013063489A JP2011203792A JP2011203792A JP2013063489A JP 2013063489 A JP2013063489 A JP 2013063489A JP 2011203792 A JP2011203792 A JP 2011203792A JP 2011203792 A JP2011203792 A JP 2011203792A JP 2013063489 A JP2013063489 A JP 2013063489A
Authority
JP
Japan
Prior art keywords
definition
information
event
operation information
periodic
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.)
Granted
Application number
JP2011203792A
Other languages
Japanese (ja)
Other versions
JP5834677B2 (en
Inventor
Takeshi Imai
岳 今井
Toshitomo Kaneoka
利知 金岡
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011203792A priority Critical patent/JP5834677B2/en
Publication of JP2013063489A publication Critical patent/JP2013063489A/en
Application granted granted Critical
Publication of JP5834677B2 publication Critical patent/JP5834677B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To change execution contents of cyclic operation processing and asynchronous event processing so as to maintain consistency of interaction in an interaction system, an interactive system and a program.SOLUTION: The interaction system is configured to be provided with: a receiving unit for receiving asynchronous event information on a state of an interactive device; an acceptance unit for accepting a cyclic operation processing definition for defining cyclic operation processing that is cyclically executed and outputs an action instruction for instructing an action of the interactive device, an event processing definition for updating operation information describing contents of interaction in detail according to the event information and an operation information definition for defining the operation information; and an update processing unit for collectively updating the cyclic operation processing definition, the event processing definition and the operation information definition.

Description

本発明は、インタラクションシステム、インタラクティブシステム及びプログラムに関する。   The present invention relates to an interaction system, an interactive system, and a program.

ユーザとインタラクション(Interaction)を行うコミュニケーションロボットの振る舞い(又は、挙動)を生成するシステムにおいて、ユーザの生活習慣やロボットの置かれた状況に合わせた様々なインタラクションの内容をネットワーク配信又はコンテンツ配信により提供することで、癒しや見守り等のサービスを提供することが提案されている。図1は、この提案されたシステムの一例を示す機能ブロック図である。   In a system that generates the behavior (or behavior) of a communication robot that interacts with the user, the content of various interactions according to the lifestyle of the user and the situation where the robot is placed is provided by network distribution or content distribution By doing so, it is proposed to provide services such as healing and watching. FIG. 1 is a functional block diagram showing an example of the proposed system.

図1に示すシステム1は、サーバ2、インタラクションシステム3、及びロボット4を有する。サーバ2とインタラクションシステム3は、有線又は無線ネットワークを介して接続される。インタラクションシステム3とロボット4は、有線又は無線ネットワークを介して接続される。インタラクションシステム3は、イベント受信部11、動作情報管理部12、及び周期処理部13を有する。動作情報管理部12には、イベント処理12−1及び動作情報12−2が含まれる。又、周期処理部13には、周期動作処理13−1が含まれる。   A system 1 illustrated in FIG. 1 includes a server 2, an interaction system 3, and a robot 4. The server 2 and the interaction system 3 are connected via a wired or wireless network. The interaction system 3 and the robot 4 are connected via a wired or wireless network. The interaction system 3 includes an event reception unit 11, an operation information management unit 12, and a cycle processing unit 13. The operation information management unit 12 includes event processing 12-1 and operation information 12-2. The periodic processing unit 13 includes a periodic operation process 13-1.

インタラクションシステム3では、イベント受信部11がロボット4内のセンサ(図示せず)から非同期に出力されるセンシング情報等をイベントとして受信する。動作情報管理部12のイベント処理12−1は、イベント受信部11が受信したイベントを呼び出して、イベントを解釈した結果に応じて動作情報12−2を更新する。周期処理部13の周期動作処理13−1は、周期的に実行されてロボット4の振る舞い(又は、アクション)を指示するアクション指示を出力する。周期動作処理13−1は、各周期での振る舞いを動作情報12−2を参照することで決定する。周期動作処理13−1の実行中は動作情報12−2が変更されないように、周期動作処理13−1とイベント処理12−1の排他制御を行うか、或いは、周期動作処理13−1の直前に必要に応じてイベント処理12−1が非同期で更新する動作情報12−2と周期動作処理13−1が変更する動作情報の同期を取る。   In the interaction system 3, the event receiving unit 11 receives sensing information or the like output asynchronously from a sensor (not shown) in the robot 4 as an event. The event process 12-1 of the operation information management unit 12 calls the event received by the event reception unit 11, and updates the operation information 12-2 according to the result of interpreting the event. The periodic operation process 13-1 of the periodic processing unit 13 is periodically executed and outputs an action instruction that instructs the behavior (or action) of the robot 4. The periodic operation process 13-1 determines the behavior in each period by referring to the operation information 12-2. During the execution of the periodic operation process 13-1, exclusive control of the periodic operation process 13-1 and the event process 12-1 is performed so that the operation information 12-2 is not changed, or immediately before the periodic operation process 13-1. If necessary, the operation information 12-2 updated asynchronously by the event processing 12-1 and the operation information changed by the periodic operation processing 13-1 are synchronized.

周期動作処理13−1は、ロボット4のモータやスピーカ等(図示せず)への指示を含むアクション指示を変更してロボット4の振る舞いを変更する。ここで、周期動作処理13−1がロボット4の振る舞いを決定するため、ロボット4の振る舞いを変更するためには周期動作処理13−1で用いるパラメータを変更する。生き物のような動きをするロボット4は、イベントの発生をトリガとして初めて動作するのではなく、イベントの発生の有無にかかわらず自律動作を行う。又、このようなロボット4は、イベントに対しても複数のイベントや、イベントの時系列の組み合わせに等によって異なる動作を行えることが望ましい。   The periodic operation process 13-1 changes the behavior of the robot 4 by changing an action instruction including an instruction to a motor, a speaker, etc. (not shown) of the robot 4. Here, since the periodic motion process 13-1 determines the behavior of the robot 4, the parameters used in the periodic motion process 13-1 are changed to change the behavior of the robot 4. The robot 4 that moves like a creature does not operate for the first time triggered by the occurrence of an event, but performs an autonomous operation regardless of whether or not an event has occurred. In addition, it is desirable that such a robot 4 can perform different operations depending on a plurality of events or combinations of time series of events.

一方、コミュニケーションロボットで実現したいインタラクションは多様である。ロボット4の多様なインタラクションをネットワークから入れ替える(又は、切り替える)ためには、周期動作処理13−1のみではなく、イベント受信部11がロボット4から受信したイベントを解釈する非同期のイベント処理12−1も入れ替える必要がある。これは、インタラクションの内容によっては、同じイベントが別の意味として解釈され得るからである。このため、周期動作処理13−1がユーザとシステム1とのインタラクションを実行している場合、状況に応じて周期動作処理13−1の実行内容及び非同期のイベント処理12−1の実行内容を変更する必要がある。このような場合、周期動作処理13−1の実行内容の変更前にイベント受信部11が受信したイベントに対するイベント処理12−1の実行内容を適切に行えない可能性がある。その結果、インタラクションの整合性を保つように周期動作処理13−1及びイベント処理12−1の実行内容を変更することはできない可能性がある。   On the other hand, there are a variety of interactions that we want to achieve with communication robots. In order to replace (or switch) various interactions of the robot 4 from the network, not only the periodic operation process 13-1 but also an asynchronous event process 12-1 that interprets an event received from the robot 4 by the event receiving unit 11. Also need to be replaced. This is because the same event can be interpreted differently depending on the content of the interaction. For this reason, when the periodic operation process 13-1 is executing an interaction between the user and the system 1, the execution contents of the periodic operation process 13-1 and the execution contents of the asynchronous event process 12-1 are changed according to the situation. There is a need to. In such a case, there is a possibility that the execution content of the event process 12-1 for the event received by the event receiving unit 11 before the change of the execution content of the periodic operation process 13-1 cannot be appropriately performed. As a result, there is a possibility that the execution contents of the periodic operation process 13-1 and the event process 12-1 cannot be changed so as to maintain the consistency of interaction.

特開2002−178282号公報JP 2002-178282 A 特開2005−199402号公報JP 2005-199402 A

従来のロボットでは、インタラクションの整合性を保つように周期動作処理及び非同期イベント処理の実行内容を変更することは難しいという問題があった。   The conventional robot has a problem that it is difficult to change the execution contents of the periodic operation process and the asynchronous event process so as to maintain the consistency of the interaction.

そこで、本発明は、インタラクションの整合性を保つように周期動作処理及び非同期イベント処理の実行内容を変更することが可能なインタラクションシステム、インタラクティブシステム及びプログラムを提供することを目的とする。   Accordingly, an object of the present invention is to provide an interaction system, an interactive system, and a program capable of changing the execution contents of the periodic operation process and the asynchronous event process so as to maintain the consistency of the interaction.

本発明の一観点によれば、インタラクティブ装置の状態に関する非同期のイベント情報を受信する受信部と、周期的に実行されて前記インタラクティブ装置のアクションを指示するアクション指示を出力する周期動作処理を定義する周期動作処理定義、前記イベント情報に応じて前記インタラクションの内容の詳細に表す動作情報を更新するイベント処理定義、及び前記動作情報を定義する動作情報定義を受け付ける受付部と、前記周期動作処理定義、前記イベント処理定義、及び前記動作情報定義を一括で更新する更新処理部を備えたことを特徴とするインタラクションシステムが提供される。   According to one aspect of the present invention, a receiving unit that receives asynchronous event information related to a state of an interactive device and a periodic operation process that is periodically executed to output an action instruction that instructs an action of the interactive device are defined. A periodic operation process definition, an event process definition that updates operation information represented in detail of the content of the interaction according to the event information, and a reception unit that receives an operation information definition that defines the operation information, the periodic operation process definition, An interaction system is provided that includes an update processing unit that updates the event processing definition and the operation information definition at once.

本発明の一観点によれば、インタラクティブ装置と、サーバ及び前記インタラクティブ装置と通信可能であり前記インタラクティブ装置のアクションを指示するアクション指示を出力するインタラクションシステムとを備え、前記インタラクションシステムは、前記インタラクティブ装置の状態に関する非同期のイベント情報を受信する受信部と、前記サーバから配信される、周期的に実行されて前記インタラクティブ装置のアクションを指示するアクション指示を出力する周期動作処理を定義する周期動作処理定義、前記イベント情報に応じて前記インタラクションの内容の詳細に表す動作情報を更新するイベント処理定義、及び前記動作情報を定義する動作情報定義を受け付ける受付部と、前記周期動作処理定義、前記イベント処理定義、及び前記動作情報定義を一括で更新する更新処理部を備えたことを特徴とするインタラクティブシステムが提供される。   According to an aspect of the present invention, an interactive device includes: an interactive device that can communicate with a server and the interactive device, and outputs an action instruction that instructs an action of the interactive device. The interaction system includes the interactive device. And a periodic operation process definition for defining a periodic operation process that is delivered from the server and outputs an action instruction that is periodically executed and instructs an action of the interactive device. An event process definition for updating operation information represented in detail of the content of the interaction according to the event information, a reception unit for receiving an operation information definition for defining the operation information, the periodic operation process definition, and the event process definition And interactive system comprising the update processing unit that updates collectively the operation information definitions are provided.

本発明の一観点によれば、コンピュータに、インタラクティブ装置のアクションを指示するアクション指示を出力して前記インタラクティブ装置のインタラクションを制御するインタラクション制御処理を実行させるプログラムであって、前記インタラクティブ装置の状態に関する非同期のイベント情報を受信する受信手順と、周期的に実行されて前記インタラクティブ装置のアクションを指示するアクション指示を出力する周期動作処理を定義する周期動作処理定義、前記イベント情報に応じて前記インタラクションの内容の詳細に表す動作情報を更新するイベント処理定義、及び前記動作情報を定義する動作情報定義を受け付ける受付手順と、前記周期動作処理定義、前記イベント処理定義、及び前記動作情報定義を一括で更新する更新処理手順を前記コンピュータに実行させることを特徴とするプログラムが提供される。   According to one aspect of the present invention, there is provided a program that causes an computer to execute an action control process for controlling an interaction of the interactive device by outputting an action instruction that instructs an action of the interactive device, and relates to a state of the interactive device. A reception procedure for receiving asynchronous event information, a periodic operation process definition for defining a periodic operation process that is periodically executed and outputs an action instruction for instructing an action of the interactive device, and the interaction information according to the event information The event process definition for updating the operation information expressed in detail, the reception procedure for receiving the operation information definition for defining the operation information, and the periodic operation process definition, the event process definition, and the operation information definition are updated at once. Update to A program characterized by executing the management procedure to the computer is provided.

開示のインタラクションシステム、インタラクティブシステム及びプログラムによれば、インタラクションの整合性を保つように周期動作処理及び非同期イベント処理の実行内容を変更することが可能となる。   According to the disclosed interaction system, interactive system, and program, it is possible to change the execution contents of the periodic operation process and the asynchronous event process so as to maintain the consistency of the interaction.

提案されたシステムの一例を示す機能ブロック図である。It is a functional block diagram which shows an example of the proposed system. 本発明の第1実施例におけるシステムの一例を示す機能ブロック図である。It is a functional block diagram which shows an example of the system in 1st Example of this invention. 動作情報定義、イベント処理定義、及び周期動作処理定義を説明する図である。It is a figure explaining an operation information definition, an event process definition, and a periodic operation process definition. 第1実施例における処理の一例を説明するフローチャートである。It is a flowchart explaining an example of the process in 1st Example. 比較例の処理の一例を説明する図である。It is a figure explaining an example of processing of a comparative example. 第1実施例における処理の一例を説明する図である。It is a figure explaining an example of the process in 1st Example. 本発明の第2実施例における処理の一例を説明するフローチャートである。It is a flowchart explaining an example of the process in 2nd Example of this invention. 動作定義更新部の更新処理の一例を説明するフローチャートである。It is a flowchart explaining an example of the update process of an action definition update part. 本発明の第3実施例における処理の一例を説明するフローチャートである。It is a flowchart explaining an example of the process in 3rd Example of this invention. 本発明の第4実施例におけるシステムの一例を示す機能ブロック図である。It is a functional block diagram which shows an example of the system in 4th Example of this invention. 第4実施例におけるデータの流れを説明する図である。It is a figure explaining the flow of the data in 4th Example. 第4実施例における処理の一例を説明するフローチャートである。It is a flowchart explaining an example of the process in 4th Example. インタラクションシステムの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of an interaction system. ロボットの構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of a robot.

開示のインタラクションシステム、インタラクティブシステム及びプログラムでは、インタラクションの整合性を保つように周期動作処理及び非同期イベント処理の実行内容を変更する。具体的には、インタラクションの内容を記述した具体的なデータである周期動作処理定義、イベント処理定義、及び動作情報定義を一括で、又は、同時に更新する。   In the disclosed interaction system, interactive system, and program, the execution contents of the periodic operation process and the asynchronous event process are changed so as to maintain the consistency of the interaction. Specifically, the periodic action process definition, the event process definition, and the action information definition, which are specific data describing the content of the interaction, are updated in a batch or simultaneously.

以下に、開示のインタラクションシステム、インタラクティブシステム及びプログラムの各実施例を図面と共に説明する。   Hereinafter, embodiments of the disclosed interaction system, interactive system, and program will be described with reference to the drawings.

(第1実施例)
コミュニケーションロボットで実現したいインタラクションは、以下のように多様である。コミュニケーションロボットが実現したいインタラクションには、例えばユーザからの働きかけに対するリアルタイム反応、複数の異なるイベントの解釈に応じた振る舞いの変化、イベントの時系列の判断による振る舞いの変化、ロボット動作とイベントの時系列の判断による振る舞いの変化等が含まれる。ユーザからの働きかけに対するリアルタイム反応は、例えばロボットが触られたらロボットに反射的に動作をさせる、ロボットを動くものに注目させる、といった反応である。複数の異なるイベントの解釈に応じた振る舞いの変化は、例えばロボットが抱っこされている時にロボットの頭をなでられたらロボットに気持ちよさそうに動作させる、ロボットがユーザと目を合わせているときにユーザの笑顔を見つけると微笑みを返させる、といった変化である。イベントの時系列の判断による振る舞いの変化は、例えばユーザの笑顔が減ってきたらロボットに笑う動作を行わせる、ロボットの同じ個所を連続して長時間触られているとロボットに嫌がる動作を行わせる、といった変化である。ロボット動作とイベントの時系列の判断による振る舞いの変化は、例えばロボットの発話に対してユーザから返答の発話かうなづきがあればロボットに会話を進めさせる、ロボットが手を振った後にユーザが手を振り返すとロボットに喜ぶ動作を行わせる、といった変化である。
(First embodiment)
There are a variety of interactions that we want to achieve with communication robots. Interactions that the communication robot wants to realize include, for example, real-time response to user interaction, behavior changes according to the interpretation of multiple different events, behavior changes due to event time-series judgments, robot behavior and event time-series Changes in behavior due to judgment are included. The real-time reaction to the action from the user is, for example, a reaction that causes the robot to perform a reflex action when the robot is touched, or to focus attention on something that moves the robot. The behavior changes according to the interpretation of multiple different events, for example, when the robot is being held, if the robot's head is stroked, the robot will behave comfortably. It is a change that returns a smile when it finds a smile. The change in behavior based on the judgment of the time series of events, for example, causes the robot to laugh when the user's smile is reduced, or causes the robot to hate if the same part of the robot is touched continuously for a long time. , And so on. For example, if there is a response from the user to the utterance of the robot, the robot changes the behavior due to the determination of the robot movement and the time series of the event. It is a change that makes the robot perform an operation that makes the robot happy.

このように多様なインタラクションに対応するには、ロボットで実現したいインタラクションの内容(又は、コンテンツ)に応じて様々な非同期イベント処理が必要となる。又、未知のインタラクションに対応する場合、ネットワーク上からネットワーク配信又はコンテンツ配信により配信されるインタラクションの内容は事前にわからないこともある。そこで、本発明の第1実施例では、どのような非同期イベントに基づきどのような動作情報を生成して、その動作情報に基づきどのような内容のインタラクションをロボットに行わせるか(即ち、ロボットにどのような振る舞い、或いは、挙動、或いは、動作を行わせるか)を汎用的に切り替える。具体的には、インタラクションの内容を記述した具体的なデータである周期動作処理定義、イベント処理定義、及び動作情報定義を一括で、又は、同時に更新する。これにより、インタラクションの内容の多様性及び汎用性を向上することができる。周期動作に関するインタラクションを周期動作処理で実現し、ロボットの振る舞い(又は、アクション)を指示するアクション指示を非同期の指示とすることで、ユーザ又は状況に対するロボットの応答性、即ち、インタラクションのリアルタイム性を向上することができる。アクション指示は、例えば後述する図2に示すロボット24の各可動部を駆動するモータの制御、発話の制御、表示機器への表示の制御等を含む。   In order to cope with such various interactions, various asynchronous event processes are required depending on the content (or content) of the interaction desired to be realized by the robot. When dealing with an unknown interaction, the contents of the interaction distributed from the network by network distribution or content distribution may not be known in advance. Therefore, in the first embodiment of the present invention, what kind of motion information is generated based on what kind of asynchronous event, and what kind of interaction is caused to be performed by the robot based on that kind of motion information (ie, the robot General purpose switching of behavior, behavior, or operation). Specifically, the periodic action process definition, the event process definition, and the action information definition, which are specific data describing the content of the interaction, are updated in a batch or simultaneously. Thereby, the diversity and versatility of the content of interaction can be improved. By realizing the interaction related to the periodic motion by the periodic motion processing and making the action instruction indicating the behavior (or action) of the robot as an asynchronous instruction, the response of the robot to the user or the situation, that is, the real-time property of the interaction is achieved. Can be improved. The action instruction includes, for example, control of a motor that drives each movable part of the robot 24 shown in FIG. 2 described later, control of speech, control of display on a display device, and the like.

周期動作処理定義とは、動作情報に基づきロボット24のアクションを決定して指示する周期動作処理を定義するデータである。イベント処理定義とは、ロボット24内のセンサ(図示せず)から非同期に出力されるセンシング情報等のイベントに応じて動作情報を更新するイベント処理を定義するデータである。動作情報定義とは、インタラクションの内容であるロボット24の動作を定義するデータである。これに対し、動作情報とは、動作情報定義で定義されるロボット24の動作の成否又は動作を表す式等の具体的な値であり、インタラクションの内容を詳細に表す詳細情報である。従って、周期処理部33による周期動作処理は、イベント処理により更新される動作情報に基づき、ロボット24のアクション(何も行わない場合も含む)を決定して指示する。以下の説明では、周期動作処理定義、イベント処理定義、及び動作情報定義を総称して動作定義とも言う。   The periodic motion process definition is data defining a periodic motion process that determines and instructs an action of the robot 24 based on motion information. The event processing definition is data defining event processing for updating operation information in response to an event such as sensing information output asynchronously from a sensor (not shown) in the robot 24. The motion information definition is data that defines the motion of the robot 24 that is the content of the interaction. On the other hand, the motion information is a specific value such as an expression representing the success or failure of the motion of the robot 24 or the motion defined by the motion information definition, and is detailed information representing details of the interaction. Therefore, the periodic motion processing by the periodic processing unit 33 determines and instructs the action of the robot 24 (including the case where nothing is performed) based on the motion information updated by the event processing. In the following description, the periodic operation process definition, the event process definition, and the operation information definition are collectively referred to as an operation definition.

図2は、本発明の第1実施例におけるシステムの一例を示す機能ブロック図である。図2中、動作定義情報の流れは太い実線の矢印で示し、イベント情報の流れは細い実線で示し、処理の呼び出しは太い破線の矢印で示し、処理の流れは細い破線の矢印で示す。図2に示すシステム21は、サーバ22、インタラクションシステム23、ロボット24、及びその他のシステム25を有する。サーバ22とインタラクションシステム23は、有線又は無線ネットワークを介して接続される。インタラクションシステム23とロボット24及びその他のシステム25は、有線又は無線ネットワークを介して接続される。ロボット24は例えばコミュニケーションロボットである。   FIG. 2 is a functional block diagram showing an example of a system in the first embodiment of the present invention. In FIG. 2, the flow of action definition information is indicated by thick solid arrows, the flow of event information is indicated by thin solid lines, the process call is indicated by thick broken arrows, and the flow of processing is indicated by thin broken arrows. A system 21 illustrated in FIG. 2 includes a server 22, an interaction system 23, a robot 24, and other systems 25. The server 22 and the interaction system 23 are connected via a wired or wireless network. The interaction system 23, the robot 24, and the other system 25 are connected via a wired or wireless network. The robot 24 is a communication robot, for example.

サーバ22は、例えばインターネット上のウェブサーバ(Web Server)等の汎用のコンピュータシステムで形成可能である。この場合、インタラクションシステム23は、インターネットに接続してWebサーバをアクセス可能な汎用のコンピュータシステムと同様のハードウェアで形成可能であり、ロボット24及び他のシステム25を制御するコントロールセンタとして機能しても良い。インタラクションシステム23及びロボット24は、ロボットシステムの一例を形成する。ロボット24は、インタラクティブ(Interactive)装置の一例であり、ロボットシステムは、インタラクションシステム及びインタラクティブ装置を有するインタラクティブシステムの一例である。   The server 22 can be formed by a general-purpose computer system such as a web server on the Internet. In this case, the interaction system 23 can be formed with the same hardware as a general-purpose computer system that can access the Web server by connecting to the Internet, and functions as a control center for controlling the robot 24 and other systems 25. Also good. The interaction system 23 and the robot 24 form an example of a robot system. The robot 24 is an example of an interactive device, and the robot system is an example of an interactive system including an interaction system and an interactive device.

インタラクションシステム23は、イベント受信部31、動作情報管理部32、周期処理部33、動作定義受付部34、動作定義更新部35、動作定義更新判定部36、及びイベントキュー37を有する。その他のシステム25は、例えばロボット25以外の他のロボットを含む。インタラクションシステム23及びロボット24のハードウェア構成の一例については後述する。   The interaction system 23 includes an event reception unit 31, an operation information management unit 32, a periodic processing unit 33, an operation definition reception unit 34, an operation definition update unit 35, an operation definition update determination unit 36, and an event queue 37. The other system 25 includes a robot other than the robot 25, for example. An example of the hardware configuration of the interaction system 23 and the robot 24 will be described later.

イベント受信部31は、ロボット24内のセンサ(図示せず)から非同期に出力されるセンシング情報等をイベント情報として受信し、受信した非同期イベント情報が呼び出されると動作情報管理部32に渡す。センサは、ロボット24の外部状態(又は、環境)を検知してその外部状態を示すセンシング情報を出力する外的センサであっても、ロボット24の内部状態を検知してその内部状態を示すセンシング情報を出力する内的センサであっても良い。外的センサは、ロボット24の周囲の環境を検知するものであれば特に限定されない。外的センサは、例えばロボット24の周囲にある家電(例えば、照明、テレビジョン等)の動作状況等を検知する。一方、内的センサは、ロボット24のイベントを検知するものであれば特に限定されない。内的センサは、例えばセンサイベントを検知するタッチセンサ、加速度センサ等で形成されていても良い。又、内的センサは、画像処理結果イベント(例えば、人、笑顔、動き、ジェスチャ等)、音声処理結果イベント(例えば、発話、生活音、音声認識等)、ロボット24の内部状態イベント(例えば、感情状態、モータの状態等)等を検知するカメラ、マイクロホン、センサ等で形成されていても良い。   The event receiving unit 31 receives sensing information and the like output asynchronously from a sensor (not shown) in the robot 24 as event information, and passes it to the operation information management unit 32 when the received asynchronous event information is called. Even if the sensor is an external sensor that detects the external state (or environment) of the robot 24 and outputs sensing information indicating the external state, the sensor detects the internal state of the robot 24 and indicates the internal state. It may be an internal sensor that outputs information. The external sensor is not particularly limited as long as it detects the environment around the robot 24. The external sensor detects, for example, the operating status of home appliances (for example, lighting, television, etc.) around the robot 24. On the other hand, the internal sensor is not particularly limited as long as it detects an event of the robot 24. The internal sensor may be formed of, for example, a touch sensor that detects a sensor event, an acceleration sensor, or the like. In addition, the internal sensor includes an image processing result event (for example, a person, a smile, a movement, a gesture, etc.), a voice processing result event (for example, speech, life sound, voice recognition, etc.), an internal state event of the robot 24 (for example, It may be formed by a camera, a microphone, a sensor, or the like that detects an emotional state, a motor state, etc.).

動作情報管理部32は、動作情報32−3を管理して保持すると共に、動作情報定義32−2とイベント処理定義32−1を保持する。動作情報管理部32は、イベント受信部31で受信したイベント情報を受け取り、イベント情報に応じたイベント処理を適用して動作情報32−3を更新すると同時に、イベント情報をイベントキュー37に格納する。イベントキュー37は、加工していないイベント情報をキューに保持する。動作情報管理部32は、周期処理部33からの動作情報同期処理のリクエストに応答してその時点での動作情報をリクエストソースである周期処理部33に返し、その際にイベントキュー37をクリアする。動作情報管理部32は、動作定義更新部36(動作定義更新処理)から新たな動作定義を渡されると、動作定義を更新すると共に、イベントキュー37から全イベント情報を取得して順に各イベント情報のイベント処理を行う。動作情報管理部32のこれら3つ処理、即ち、イベント処理、動作情報をリクエストソースである周期処理部33に返す処理、及び動作定義更新処理は、夫々動作情報管理部32により排他制御される。   The motion information management unit 32 manages and holds the motion information 32-3, and holds the motion information definition 32-2 and the event processing definition 32-1. The operation information management unit 32 receives the event information received by the event reception unit 31, updates the operation information 32-3 by applying event processing according to the event information, and stores the event information in the event queue 37. The event queue 37 holds unprocessed event information in the queue. In response to the request for the operation information synchronization processing from the period processing unit 33, the operation information management unit 32 returns the operation information at that time to the period processing unit 33 as the request source, and clears the event queue 37 at that time. . When a new operation definition is passed from the operation definition update unit 36 (operation definition update processing), the operation information management unit 32 updates the operation definition, acquires all event information from the event queue 37, and sequentially sets each event information. Process the event. These three processes of the operation information management unit 32, that is, the event process, the process of returning the operation information to the periodic processing unit 33 as the request source, and the operation definition update process are exclusively controlled by the operation information management unit 32, respectively.

周期処理部33は、周期動作処理の実行前に、動作情報管理部32の動作情報32−3を呼び出して、動作情報32−3のコピーである動作情報33−3を管理して保持することで最新の動作情報を保持する。又、周期処理部33は、周期動作処理定義33−2と動作情報定義33−1を保持する。周期処理部33は、周期的(又は、定期的)に周期動作処理を実行する。周期処理部33が周期動作処理を実行するとは、イベント処理により更新される動作情報に基づき、ロボット24に周期動作を行わせるアクション指示を出力することを意味する。動作情報定義33−1は、動作定義更新部35(動作定義更新処理)により更新される。   The periodic processing unit 33 calls the operation information 32-3 of the operation information management unit 32 and manages and holds the operation information 33-3, which is a copy of the operation information 32-3, before executing the periodic operation processing. Keep the latest operation information. Further, the periodic processing unit 33 holds a periodic operation process definition 33-2 and an operation information definition 33-1. The periodic processing unit 33 performs periodic operation processing periodically (or periodically). The periodic processing unit 33 executing the periodic operation process means that an action instruction for causing the robot 24 to perform a periodic operation is output based on the operation information updated by the event process. The action information definition 33-1 is updated by the action definition update unit 35 (action definition update process).

動作定義更新判断部36は、周期動作の周期毎に、動作定義を更新するか否かを判定する。動作定義には、動作情報定義32−2,33−1、イベント処理定義32−1、及び周期動作処理定義33−2が含まれる。判定方法は特に限定されないが、例えば、新たな動作定義がサーバ22から配信されているか否かを確認する方法、例えば周期動作処理により生成される情報等を元に判断して次の動作定義をサーバ22にリクエストする方法、そのような情報と共に毎回サーバ22に問い合わせてサーバ22が判断する方法等を用いても良い。   The action definition update determination unit 36 determines whether or not to update the action definition for each period of the periodic action. The operation definition includes operation information definitions 32-2 and 33-1, an event process definition 32-1, and a periodic operation process definition 33-2. Although the determination method is not particularly limited, for example, a method for confirming whether or not a new motion definition is distributed from the server 22, for example, based on information generated by the periodic motion processing and the like, the next motion definition is determined. A method of making a request to the server 22, a method of making an inquiry to the server 22 every time together with such information, and the like, may be used.

動作定義受付部34は、サーバ22から配信されるロボット24の周期動作に関するインタラクションの内容、即ち、動作定義(周期動作処理定義、イベント処理定義、及び動作情報定義)を受信する。サーバ22からの動作定義の受信方法は、特に限定されない。動作定義更新部35は、動作定義更新判断部36で動作定義を更新すると判断された場合に呼び出され、動作定義受付部34が受信した更新対象の動作定義を動作情報管理部32に渡して動作情報管理部32における動作定義更新処理を実行すると共に、この更新対象の動作定義を周期処理部33に渡して周期処理部33における動作定義更新処理を実行する。尚、前回の動作定義の後処理や、新たな動作定義の前処理等を行う構成であっても良い。   The action definition receiving unit 34 receives the content of the interaction related to the periodic action of the robot 24 distributed from the server 22, that is, the action definition (periodic action process definition, event process definition, and action information definition). The method for receiving the operation definition from the server 22 is not particularly limited. The operation definition update unit 35 is called when the operation definition update determination unit 36 determines to update the operation definition, passes the operation definition to be updated received by the operation definition reception unit 34 to the operation information management unit 32, and operates. The operation definition update process in the information management unit 32 is executed, and the operation definition to be updated is passed to the cycle process unit 33 to execute the operation definition update process in the cycle process unit 33. Note that a configuration in which post-processing of the previous motion definition, pre-processing of a new motion definition, or the like may be performed.

動作定義更新部35及び動作定義更新判断部36は、周期動作処理を定義する周期動作処理定義、イベント情報に応じてインタラクションの内容の詳細に表す動作情報を更新するイベント処理定義、及び動作情報を定義する動作情報定義を一括で、又は、同時に更新する更新処理部の一例を形成する。言い換えると、この更新処理部は、周期動作処理及び非同期イベント処理の実行内容を変更してロボット24の動作を切り替える切替処理部としても機能する。   The action definition update unit 35 and the action definition update determination unit 36 include a periodic action process definition that defines a periodic action process, an event process definition that updates action information represented in detail of the content of an interaction according to event information, and action information. An example of an update processing unit that updates operation information definitions to be defined in a batch or simultaneously is formed. In other words, the update processing unit also functions as a switching processing unit that switches the operation of the robot 24 by changing the execution contents of the periodic operation processing and the asynchronous event processing.

図3は、動作情報定義、イベント処理定義、及び周期動作処理定義を説明する図である。この例では、イベント処理定義32−1はイベント処理X,Y,Z,...を定義しており、動作情報定義32−2,33−1は動作A,B,C,...を定義しており、動作情報32−3,33−3は動作A,B,C,...の成否又は値を含み、周期動作処理定義33−2はロボット24に周期動作を行わせるアクションP,...を定義している。   FIG. 3 is a diagram for explaining operation information definition, event process definition, and periodic operation process definition. In this example, the event processing definition 32-1 defines event processing X, Y, Z,..., And the operation information definitions 32-2 and 33-1 include operations A, B, C,. The motion information 32-3, 33-3 includes success or failure or values of the motions A, B, C,..., And the periodic motion processing definition 33-2 is an action P that causes the robot 24 to perform a periodic motion. , ... are defined.

サーバ22とインタラクションシステム23との間の通信には、例えばHTTP(Hyper Test Transfer Protocol)を用いても良い。この場合、HTTP通信によりXML(eXtensible Markup Language)等のコンテンツをサーバ22とインタラクションシステム23間で交換することができ、HTTPによる疑似プッシュ(Push)、或いは、コンテンツに含まれる周期動作内の何等かのトリガにより、インタラクションシステム23から次のコンテンツをリクエストすることで次のコンテンツがサーバ22からインタラクションシステム23に配信される。このように、サーバ22とインタラクションシステム23との間の通信にHTTPを用いることで、インタラクションの内容は例えばXML(登録商標)+JavaScript(登録商標)で記述することもでき、既存のWebアプリケーションのフレームワークを利用することでユーザの要求に柔軟に対応した各種サービスをより容易に提供することができる。   For communication between the server 22 and the interaction system 23, for example, HTTP (Hyper Test Transfer Protocol) may be used. In this case, content such as XML (eXtensible Markup Language) can be exchanged between the server 22 and the interaction system 23 by HTTP communication, and pseudo push (Push) by HTTP or something in the periodic operation included in the content By requesting the next content from the interaction system 23, the next content is delivered from the server 22 to the interaction system 23. As described above, by using HTTP for communication between the server 22 and the interaction system 23, the content of the interaction can be described in, for example, XML (registered trademark) + JavaScript (registered trademark), and the frame of the existing Web application. By using the work, it is possible to more easily provide various services that flexibly respond to user requests.

動作定義更新部35による動作定義更新処理では、実行するべきイベント処理の内容も更新されるため、イベント情報をイベントキュー37に保持しておくことで、更新時にさかのぼってイベント処理を行うことが可能となる。又、動作情報管理部32は、イベント情報が反映された動作情報が周期処理部33の周期動作処理で利用されて初めて、その時の動作情報に反映済みのイベント情報を破棄するようにイベントキュー37をクリアする。   In the action definition update process by the action definition update unit 35, the contents of the event process to be executed are also updated. Therefore, by holding the event information in the event queue 37, the event process can be performed retroactively. It becomes. In addition, the operation information management unit 32 does not wait until the operation information reflecting the event information is used in the periodic operation processing of the period processing unit 33 so as to discard the event information already reflected in the operation information at that time. To clear.

非同期のイベント情報が反映された動作情報が周期動作処理で利用されて初めて、その時の動作情報に反映済みのイベント情報を破棄することで、イベント情報を確実に処理することができ、非同期処理の部分も含めて動的にインタラクションの内容を変更することができる。これにより、非同期処理による計算時間の短縮と、インタラクションの内容を切り替える際のイベント処理の完全性を両立することができる。イベント処理の完全性とは、対象となるイベント処理の全てが行われることが保証されることを言う。   Only when the operation information that reflects asynchronous event information is used in periodic operation processing, event information that has already been reflected in the operation information at that time can be discarded to ensure that event information is processed. The content of the interaction can be changed dynamically including the part. As a result, it is possible to achieve both reduction in calculation time by asynchronous processing and completeness of event processing when switching the content of interaction. Event process integrity means that all target event processes are guaranteed to be performed.

図4は、第1実施例における処理の一例を説明するフローチャートである。図4において、ステップS1は、動作定義更新判断部36で動作定義の更新の有無を判断し、ステップS2は、更新が有るか否かを判定する。ステップS2の判定結果がYESであると、ステップS3は、動作定義更新判断部36から動作定義更新部35に動作定義の更新をリクエストする。ステップS4は、動作定義更新部35で動作定義受付部34から動作定義を取得する。ステップS5は、周期処理部33の動作定義更新処理を実行して周期処理部33における動作定義を更新する。ステップS6は、動作情報管理部32の動作定義更新処理を実行して動作情報管理部32における動作定義を更新し、イベントキュー37のイベントに新たなイベント処理を一括適用する。   FIG. 4 is a flowchart for explaining an example of processing in the first embodiment. In FIG. 4, step S1 determines whether or not the operation definition is updated by the operation definition update determination unit 36, and step S2 determines whether or not there is an update. If the decision result in the step S2 is YES, a step S3 requests the action definition update unit 35 to update the action definition from the action definition update determination unit 36. In step S <b> 4, the operation definition update unit 35 acquires the operation definition from the operation definition accepting unit 34. In step S <b> 5, the operation definition update process of the periodic processor 33 is executed to update the operation definition in the periodic processor 33. In step S6, the operation definition update process of the operation information management unit 32 is executed to update the operation definition in the operation information management unit 32, and new event processes are collectively applied to events in the event queue 37.

ステップS6の後、或いは、ステップS2の判定結果がNOであると、ステップS7は、周期処理部33で動作情報管理部32に動作情報同期処理をリクエストする。ステップS8は、このリクエストに応答して、動作情報管理部32でイベントキュー37をクリアし、周期動作処理が利用する最新の動作情報を周期処理部33に返す。ステップS9は、周期処理部33で動作情報管理部32から取得した動作情報を利用して周期動作処理を実行し、処理はステップS1へ戻る。   After step S6 or if the determination result in step S2 is NO, step S7 requests the motion information management unit 32 to perform motion information synchronization processing in the cycle processing unit 33. In step S8, in response to this request, the event information 37 is cleared by the operation information management unit 32, and the latest operation information used by the periodic operation processing is returned to the periodic processing unit 33. In step S9, the periodic operation process is executed by using the operation information acquired from the operation information management unit 32 by the periodic processing unit 33, and the process returns to step S1.

次に、非同期イベントのパイプライン的な処理を、図5及び図6と共に説明する。図5は、比較例の処理の一例を説明する図であり、図6は、第1実施例における処理の一例を説明する図である。図5及び図6において、(a)は処理のパイプラインを示し、(b)の左側は入力されるデータを縦の時間軸で示すと共に(a)の各処理に対応してデータの処理状況を示す。   Next, pipeline processing of asynchronous events will be described with reference to FIGS. FIG. 5 is a diagram for explaining an example of processing in the comparative example, and FIG. 6 is a diagram for explaining an example of processing in the first embodiment. 5 and 6, (a) shows a processing pipeline, and the left side of (b) shows input data on a vertical time axis, and the data processing status corresponding to each processing of (a). Indicates.

図5(a)及び図6(a)の処理のパイプラインは同じであり、入力に対して動作情報管理部32における処理A(イベント処理)、動作情報管理部32における中間データ(動作情報)の管理及び保持、動作情報管理部32と周期処理部33間の動作情報の処理C(コピー)、周期処理部33における中間データ(動作情報)の管理及び保持、及び周期処理部33における処理B(周期動作処理)を経て出力(アクション指示)が得られる。   The processing pipelines of FIGS. 5A and 6A are the same, and processing A (event processing) in the operation information management unit 32 and intermediate data (operation information) in the operation information management unit 32 with respect to the input. Management and retention, operation information processing C (copy) between the operation information management unit 32 and the periodic processing unit 33, management and retention of intermediate data (operation information) in the periodic processing unit 33, and processing B in the periodic processing unit 33 An output (action instruction) is obtained through (periodic operation processing).

図5(b)では、P1で囲んで示すように、時間軸上で上から3番目の粗いクロスハッチングで示すデータD1に対する処理Aが完了しているが、処理Bが完了していない状態で、処理A,B及び中間データの入れ替えを行うと、P2で囲んで示すようにデータD1のイベントが失われてしまうことがわかる。   In FIG. 5B, as indicated by being surrounded by P1, the process A for the data D1 indicated by the third coarse cross-hatching from the top on the time axis has been completed, but the process B has not been completed. When the processes A and B and the intermediate data are exchanged, it can be seen that the event of the data D1 is lost as shown by P2.

これに対し、図6(b)では、処理A,B及中間データの入れ替えを行っても、P3で囲んで示すように、イベントキュー37に新規の処理Aを適用して処理Cが実行されてから(即ち、完了してから)イベントキュー37をクリアすることで、P4で囲んで示すように上記比較例のようにデータD1のイベントが失われることはないことがわかる。つまり、イベント情報が反映された動作情報が、周期動作処理で利用されて初めて、その時の動作情報に反映済みのイベント情報を破棄するようにイベントキュー37をクリアする。   On the other hand, in FIG. 6B, even if the processes A and B and the intermediate data are replaced, the process C is executed by applying the new process A to the event queue 37 as shown by P3. By clearing the event queue 37 later (that is, after completion), it is understood that the event of the data D1 is not lost as in the comparative example as shown by P4. In other words, the event queue 37 is cleared so that event information reflected in the operation information at that time is discarded only when the operation information reflecting the event information is used in the periodic operation processing.

(第2実施例)
本発明の第2実施例におけるシステムの一例を示す機能ブロック図は、図2と同様であるため、その図示及び説明は省略する。
(Second embodiment)
A functional block diagram showing an example of a system in the second embodiment of the present invention is the same as that in FIG.

動作情報の更新時にインタラクションシステム23がネットワークを介して動作情報をリクエストしてサーバ22から取得する場合、リクエストした動作情報の取得時間が比較的長くなる可能性がある。この場合、動作情報を取得するまでの間ロボット24の動作が止まると不自然である。又、動作定義更新判断部36から動作定義更新部35への動作定義更新処理は非同期で行われ、動作定義更新処理が完了するまで旧動作定義で周期動作処理が継続される。   When the interaction system 23 requests the operation information via the network and acquires it from the server 22 when updating the operation information, the acquisition time of the requested operation information may be relatively long. In this case, it is unnatural if the operation of the robot 24 stops until the operation information is acquired. Further, the operation definition update process from the operation definition update determination unit 36 to the operation definition update unit 35 is performed asynchronously, and the cyclic operation process is continued with the old operation definition until the operation definition update process is completed.

そこで、本実施例では、インタラクションの内容の切り替え時のロボット24の動作の連続性を確保するために、以下の如き処理を行う。先ず、インタラクションの内容を切り替える際に、ロボット24の動作が途切れないように、動作定義(周期動作処理定義、イベント処理定義、及び動作情報定義)が更新される前の周期処理部33による周期動作処理を、周期動作処理定義、イベント処理定義、及び動作情報定義を一括で、又は、同時に更新する更新処理、或いは、インタラクションの内容を切り替える切り替え処理と並行して実行する。又、動作定義更新処理中は、動作情報同期処理でイベントキュー37のクリアは行わず、動作定義更新処理の中でイベントキュー37のクリア処理を行う。非同期の動作定義更新処理中は、新旧の動作情報が同時に存在する。又、非同期の動作定義更新処理が終了した後の周期動作処理の直前に、再度イベントの一括処理を行い、更新したイベント処理及び周期動作処理を実行する。これにより、イベント処理の完全性を保つことができる。   Therefore, in the present embodiment, the following processing is performed in order to ensure the continuity of the operation of the robot 24 at the time of switching the content of the interaction. First, the periodic operation by the periodic processing unit 33 before the operation definition (periodic operation process definition, event process definition, and operation information definition) is updated so that the operation of the robot 24 is not interrupted when switching the content of the interaction. The process is executed in parallel with the update process for updating the periodic action process definition, the event process definition, and the action information definition at the same time or simultaneously, or the switching process for switching the content of the interaction. Also, during the action definition update process, the event queue 37 is not cleared by the action information synchronization process, but the event queue 37 is cleared during the action definition update process. During asynchronous operation definition update processing, old and new operation information exists simultaneously. Also, immediately before the cyclic operation processing after the asynchronous operation definition update processing is completed, the event batch processing is performed again, and the updated event processing and cyclic operation processing are executed. Thereby, the integrity of event processing can be maintained.

図7は、本発明の第2実施例における処理の一例を説明するフローチャートである。図7において、ステップS11は、動作定義更新判断部36で動作定義を更新中又は更新終了であるかを判断し、ステップS12は、動作定義を更新中であるか否かを判定する。ステップS12の判定結果がNOであると、ステップS13は、動作定義の更新終了であるか否かを判定し、ステップS13の判定結果がNOであると、ステップS14は、動作定義更新判定部36で動作定義の更新中であるか否かを判断し、ステップS15は、動作定義の更新中であるか否かを判定する。ステップS15の判定結果がYESであると、処理は後述するステップS21へ進み、判定結果がNOであると、処理は後述するステップS18へ進む。一方、ステップS12の判定結果がYESであると、処理は後述するステップS23へ進み、ステップS13の判定結果がYESであると、処理は後述するステップS16へ進む。   FIG. 7 is a flowchart for explaining an example of processing in the second embodiment of the present invention. In FIG. 7, step S11 determines whether the operation definition update determination unit 36 is updating the operation definition or the update is finished, and step S12 determines whether the operation definition is being updated. If the decision result in the step S12 is NO, a step S13 decides whether or not the operation definition has been updated, and if the decision result in the step S13 is NO, the step S14 is an operation definition update determining unit 36. In step S15, it is determined whether or not the operation definition is being updated. If the determination result in step S15 is YES, the process proceeds to step S21 described later, and if the determination result is NO, the process proceeds to step S18 described later. On the other hand, if the determination result in step S12 is YES, the process proceeds to step S23 described later, and if the determination result in step S13 is YES, the process proceeds to step S16 described later.

ステップS16,S17は更新処理終了処理ST1を実行する。ステップS18〜S20は通常処理ST2を実行する。又、ステップS21,S22は更新開始処理ST3を実行し、ステップS23〜S25は更新処理ST4を実行する。   Steps S16 and S17 execute an update process end process ST1. Steps S18 to S20 execute a normal process ST2. Steps S21 and S22 execute update start processing ST3, and steps S23 to S25 execute update processing ST4.

更新開始処理ST3において、ステップS21は、動作定義更新判断部36で動作定義更新部35に動作更新処理をリクエストする。ステップS22は、動作定義更新部35で動作情報管理部32に動作定義の更新開始を通知し、処理は更新処理ST4へ進む。   In the update start process ST3, in step S21, the operation definition update determination unit 36 requests the operation definition update unit 35 for the operation update process. In step S22, the operation definition update unit 35 notifies the operation information management unit 32 of the start of update of the operation definition, and the process proceeds to the update process ST4.

更新処理ST4では、イベントキューをクリアしない。更新処理ST4において、ステップS23は、周期処理部33で動作情報管理部32に動作情報同期処理をリクエストする。ステップS24は、リクエストに応答して、動作情報管理部32で周期動作処理が利用する最新の動作情報を周期処理部33に返す。ステップS25は、周期処理部33で取得した動作情報を利用して周期動作処理を実行し、処理はステップS11へ戻る。   In the update process ST4, the event queue is not cleared. In the update process ST4, in step S23, the cycle processing unit 33 requests the operation information management unit 32 to perform operation information synchronization processing. In step S24, in response to the request, the latest operation information used by the periodic operation processing in the operation information management unit 32 is returned to the periodic processing unit 33. In step S25, the periodic operation process is executed using the operation information acquired by the periodic processing unit 33, and the process returns to step S11.

更新終了処理ST1において、ステップS16は、動作定義更新部35で動作情報管理部32に動作定義の更新終了を通知し、残りのイベントの一括処理後に動作情報管理部32に新たな動作情報を適用する。ステップS17は、動作情報管理部32で周期処理部33に新たな動作情報を適用し、処理は通常処理ST2へ進む。   In the update end process ST1, in step S16, the operation definition update unit 35 notifies the operation information management unit 32 of the end of the update of the operation definition, and new operation information is applied to the operation information management unit 32 after batch processing of the remaining events. To do. In step S17, the motion information management unit 32 applies new motion information to the periodic processing unit 33, and the process proceeds to the normal process ST2.

通常処理ST2において、ステップS18は、周期処理部33で動作情報管理部32に動作情報同期処理をリクエストする。ステップS19は、リクエストに応答して、動作情報管理部32でイベントキュー37をクリアし、周期動作処理が利用する最新の動作情報を周期処理部33に返す。ステップS20は、周期処理部33で取得した動作情報を利用して周期動作処理を実行し、処理はステップS11へ戻る。   In the normal process ST2, in step S18, the periodic processing unit 33 requests the operation information management unit 32 to perform operation information synchronization processing. In step S19, in response to the request, the event information 37 is cleared by the motion information management unit 32, and the latest motion information used by the periodic motion processing is returned to the periodic processing unit 33. In step S20, the periodic operation process is executed using the operation information acquired by the periodic processor 33, and the process returns to step S11.

図8は、動作定義更新部の更新処理の一例を説明するフローチャートである。図8において、ステップS31は、動作定義更新部35で動作定義受付部34から動作定義を取得する。ステップS32は、動作定義更新部35で周期処理部33の動作定義更新処理を実行して動作定義を周期処理部33に配布する。ステップS33は、動作定義更新部35で動作情報管理部32の動作定義更新処理を実行して新たな動作定義を動作情報管理部32に配布し、イベントキュー37のイベントに新たなイベント処理を一括適用し、新たなイベント処理を適用したイベントをイベントキュー37から削除する。ステップS34は、動作定義更新部35で動作定義更新判断部36に動作定義の更新終了を通知し、処理は終了する。   FIG. 8 is a flowchart for explaining an example of the update process of the action definition update unit. In FIG. 8, in step S <b> 31, the operation definition update unit 35 acquires the operation definition from the operation definition reception unit 34. In step S <b> 32, the operation definition update unit 35 executes the operation definition update process of the periodic processing unit 33 and distributes the operation definition to the periodic processing unit 33. In step S33, the operation definition update unit 35 executes the operation definition update process of the operation information management unit 32, distributes a new operation definition to the operation information management unit 32, and batches new event processes for events in the event queue 37. The event to which the new event processing is applied is deleted from the event queue 37. In step S34, the action definition update unit 35 notifies the action definition update determination unit 36 of the update completion of the action definition, and the process ends.

本実施例では、動作情報管理部32にイベント処理、動作情報同期処理、及び動作定義の更新開始処理ST3が実装され、これらの処理は動作情報管理部32により排他制御される。   In this embodiment, an event process, an operation information synchronization process, and an operation definition update start process ST3 are implemented in the operation information management unit 32, and these processes are exclusively controlled by the operation information management unit 32.

動作定義の更新開始処理ST3は、図7に示すステップS22において動作情報管理部32に動作定義の更新開始を通知する。動作情報管理部32では、動作定義の更新開始の通知に応答して、動作情報が更新中であることを示すフラグをセット(例えば、オン)すれば良い。   The operation definition update start process ST3 notifies the operation information management unit 32 of the start of operation definition update in step S22 shown in FIG. The motion information management unit 32 may set (for example, turn on) a flag indicating that the motion information is being updated in response to the notification of the update start of the motion definition.

動作定義の更新処理ST4は、図8に示すステップS33において、動作情報管理部32で動作定義更新処理を実行して新たな動作定義を周期処理部33に配布し、イベントキュー37のイベントに新たなイベント処理を一括適用し、イベント処理を適用したイベントをイベントキュー37から削除する。動作定義更新の終了処理ST1は、図7に示すステップS16において、動作定義更新部35で動作情報管理部32に動作定義の更新終了を通知し、残りのイベントの一括処理後に動作情報管理部32に新たな動作情報を適用する。動作情報管理部32では、動作定義の更新終了の通知に応答して、動作情報が更新中であることを示すフラグをリセット(例えば、オフ)すれば良く、イベントキュー37のイベントに新たなイベント処理を一括適用し、適用したイベントをイベントキュー37から削除するが、イベントキュー37の内容は削除しない。   In step S33 shown in FIG. 8, the action definition update process ST4 executes the action definition update process in the action information management unit 32, distributes a new action definition to the periodic process unit 33, and adds a new event definition to the event queue 37. Event processing is applied in a batch, and the event to which the event processing is applied is deleted from the event queue 37. In step S16 shown in FIG. 7, in the operation definition update end process ST1, the action definition update unit 35 notifies the action information management unit 32 of the update of the action definition, and the action information management unit 32 performs batch processing of the remaining events. Apply new motion information to The motion information management unit 32 may reset (for example, turn off) a flag indicating that the motion information is being updated in response to the notification of the update completion of the motion definition. The processing is collectively applied and the applied event is deleted from the event queue 37, but the contents of the event queue 37 are not deleted.

この例では、動作定義の更新開始処理ST3はイベントを操作しないため排他制御する必要はないが、動作情報とイベントキュー37を更新する箇所のみを排他制御するようにしても良い。   In this example, the operation definition update start process ST3 does not operate an event and therefore does not require exclusive control. However, the operation information and the event queue 37 may be exclusively controlled.

(第3実施例)
本発明の第3実施例におけるシステムの一例を示す機能ブロック図は、図2と同様であるため、その図示及び説明は省略する。
(Third embodiment)
The functional block diagram showing an example of the system in the third embodiment of the present invention is the same as that shown in FIG.

インタラクションの内容の切り替え直後は、ロボット24が古いイベントに対する誤った反応をする可能性がある。そこで、本実施例では、動作情報として管理する情報に生存期間(例えば、永続、インタラクションの内容の切り替えまで、周期動作処理まで)の属性を持たせることにより、属性に応じた(或いは、適した)周期動作処理を行う。これにより、インタラクションの内容の切り替え直後は、リアルタイム性を要するアクション指示を抑制することで、ロボット24の古いイベントに対する誤った反応を防止することができる。   Immediately after switching the content of the interaction, the robot 24 may react erroneously to an old event. Therefore, in the present embodiment, the information managed as the operation information is given the attribute of the lifetime (for example, until the change of the content of the persistence and the interaction, until the cyclic operation processing), and thus according to the attribute (or suitable). ) Perform periodic operation processing. Thereby, immediately after switching the content of the interaction, it is possible to prevent an erroneous reaction to an old event of the robot 24 by suppressing an action instruction that requires real-time characteristics.

多様なインタラクションを記述するために、この例では動作情報に属性として永続動作情報、動作定義情報、及びリアルタイム情報のいずれかを付加する。永続動作情報は、動作定義が更新されても保持される情報であり、システム21に対して予め定義されているか、或いは、インタラクションシステム23の記憶部内のシステム領域に名前と対応付けて保存されており名前をキーに参照可能である。動作定義情報は、動作定義が更新される時(又は、インタラクションの内容の切り替え時)に破棄される情報である。リアルタイム情報は、動作情報が一度周期動作処理(即ち、周期動作)で利用されると破棄される情報である。   In order to describe various interactions, in this example, any one of permanent action information, action definition information, and real-time information is added to the action information as an attribute. The permanent action information is information that is retained even when the action definition is updated, and is defined in advance for the system 21 or stored in the system area in the storage unit of the interaction system 23 in association with the name. It is possible to refer to the cage name as a key. The action definition information is information discarded when the action definition is updated (or when the content of the interaction is switched). Real-time information is information that is discarded once the operation information is used in a periodic operation process (that is, a periodic operation).

図9は、本発明の第3実施例における処理の一例を説明するフローチャートである。図9において、ステップS40は、動作定義更新判断部36で動作定義の更新の有無を判断し、ステップS41は、動作定義を更新中であるか否かを判定する。ステップS41の判定結果がYESであると、ステップS42は、動作定義更新判断部36から動作定義更新部35に動作定義の更新をリクエストする。ステップS43は、動作定義更新部35で動作定義受付部34から動作定義を取得する。ステップS44は、周期処理部33で動作定義更新処理を実行して動作定義を更新する。ステップS45は、動作定義更新部35で動作情報管理部32の動作定義更新処理を実行して動作定義を更新し、イベントキュー37のイベントに新たなイベント処理を一括適用する。ステップS46は、動作情報管理部32で動作情報のリアルタイム情報をクリア(即ち、初期化)する。   FIG. 9 is a flowchart for explaining an example of processing in the third embodiment of the present invention. In FIG. 9, step S40 determines whether or not the operation definition is updated by the operation definition update determination unit 36, and step S41 determines whether or not the operation definition is being updated. If the decision result in the step S41 is YES, a step S42 requests the action definition update unit 35 to update the action definition from the action definition update determination unit 36. In step S <b> 43, the operation definition update unit 35 acquires the operation definition from the operation definition accepting unit 34. In step S44, the operation definition is updated by executing the operation definition update process in the cycle processing unit 33. In step S45, the operation definition update unit 35 executes the operation definition update process of the operation information management unit 32 to update the operation definition, and the new event process is collectively applied to the events in the event queue 37. In step S46, the operation information management unit 32 clears (that is, initializes) the real-time information of the operation information.

ステップS46の後、或いは、ステップS41の判定結果がNOであると、ステップS47は、周期処理部33で動作情報管理部32に動作情報同期処理をリクエストする。ステップS48は、リクエストに応答して動作情報管理部32でイベントキュー37をクリアし、周期動作処理が利用する最新の動作情報を周期処理部33に返す。ステップS49は、周期処理部33で取得した動作情報を利用して周期動作処理を実行し、処理はステップS40へ戻る。   After step S46 or if the determination result in step S41 is NO, step S47 requests the operation information management unit 32 to perform operation information synchronization processing in the cycle processing unit 33. In step S48, the event information 37 is cleared by the motion information management unit 32 in response to the request, and the latest motion information used by the periodic motion processing is returned to the periodic processing unit 33. In step S49, the periodic operation process is executed using the operation information acquired by the periodic processor 33, and the process returns to step S40.

永続動作情報は、例えば「A:カーテンが開いているか」といった情報である。動作定義情報は、例えば「B:眠いかどうか/C:既に挨拶したか」、「D:既に挨拶されたか/E:インタラクション回数」といった情報である。リアルタイム情報は、例えば「F:声をかけられた/G:触られた」といった情報である。   The permanent motion information is information such as “A: is the curtain open?”, For example. The action definition information is, for example, information such as “B: Are you sleepy / C: Have you already greeted”, “D: Have you already been greeted / E: Number of interactions”. The real-time information is information such as “F: Called / G: Touched”.

又、イベント処理は、例えば「カーテン開閉イベント→Aを更新」、「タッチセンサイベント→Gを更新/Eをインクリメント」、「発話検知イベント→Fを更新/Eをインクリメント」、「挨拶検知イベント→Dを更新/Eをインクリメント」等を処理を含む。   In addition, the event processing includes, for example, “curtain opening / closing event → update A”, “touch sensor event → update G / increment E”, “utterance detection event → update F / increment E”, “greeting detection event → This includes processing such as “Update D / Increment E”.

この場合、周期動作処理は、例えば次のような処理を含む。
・(!A && B && !C && !D && !F && !G)
→眠そうな動作をランダムで実行する。
・(A && B && !C && !D && !F && !G)
→眩しそうな動作をランダムで実行する。
・(!A && B && !C && !D && (F || G))
→びっくりした動作をランダムで実行する。
・(A && B && !C && D && !F && !G)
→挨拶する、Cを更新する。
・(A && B && C && !D && !F && !G)
→長時間返事がないと寂しそうな動作をランダムで実行する。
・ (A && B && C && D && (F || G))
→嬉しそうな動作をランダムで実行する。
・(!A && !B && C && D && !F && !G)
→窓を開けて欲しい動作をランダムで実行する。
・(A && !B && C && D && !F && !G)
→気持ちよさそうな動作をランダムで実行する。
In this case, the periodic operation process includes the following process, for example.
・ (! A && B &&! C &&! D &&! F &&! G)
→ Randomly perform sleepy actions.
・ (A && B &&! C &&! D &&! F &&! G)
→ Randomly perform dazzling actions.
・ (! A && B &&! C &&! D && (F || G))
→ Randomly perform surprising actions.
・ (A && B &&! C && D &&! F &&! G)
→ Say hello, update C.
・ (A && B && C &&! D &&! F &&! G)
→ Randomly perform actions that seem lonely if there is no response for a long time.
・ (A && B && C && D && (F || G))
→ Perform random actions.
・ (! A &&! B && C && D &&! F &&! G)
→ Randomly perform the action you want to open the window.
・ (A &&! B && C && D &&! F &&! G)
→ Randomly perform actions that seem comfortable.

又、ロボット24の起床時のインタラクションは、例えば次のような振る舞いを含む。
・眠そうな動作をする。
・ユーザの顔を見つけたら挨拶をする。
・眠い時にユーザの顔を見つける前に声をかけられたり触られたりしたら驚く。
・挨拶のやり取りがあれば喜ぶ。
・ある程度インタラクションを重ねると目が覚めてきてしゃきっとしてくる。
・挨拶が済んだらカーテンを開けて欲しがる。
・日の光を浴びると気持ちよさそうにする。
The interaction when the robot 24 wakes up includes, for example, the following behavior.
・ Does sleepy.
-Say a greeting when you find the user's face.
・ When you are sleepy, you will be surprised if you can speak or touch it before finding your face.
・ We are pleased if there is an exchange of greetings.
・ After a certain amount of interaction, you will wake up and be sure to come.
・ After greeting, I want you to open the curtain.
・ Looks comfortable when exposed to sunlight.

(第4実施例)
図10は、第4実施例におけるシステムの一例を示す機能ブロック図である。図10中、図2と同一部分には同一符号を付し、その説明は省略する。図10中、実線、破線等の矢印の意味は、図4の場合と同様である。
(Fourth embodiment)
FIG. 10 is a functional block diagram showing an example of a system in the fourth embodiment. In FIG. 10, the same parts as those in FIG. In FIG. 10, the meanings of arrows such as solid lines and broken lines are the same as in FIG.

複数イベントから動作情報を生成する場合や、前回の周期動作と今回の周期動作との差分情報等を求める場合、イベント毎に判断して動作情報を更新するのでは効率的な処理の実行は難しい。そこで、本実施例では、動作情報同期処理で動作情報を取り出す時に動作情報を更新する。具体的には、動作情報更新処理定義32−4を動作情報管理部32における動作定義に追加し、動作情報管理部32が動作情報同期処理を行うタイミングで動作情報を更新することで、更に多様なインタラクションの定義が可能となる。   When generating motion information from multiple events, or when obtaining difference information between the previous periodic motion and the current periodic motion, it is difficult to perform efficient processing by updating the motion information by judging each event. . Therefore, in this embodiment, the operation information is updated when the operation information is extracted in the operation information synchronization process. Specifically, the operation information update processing definition 32-4 is added to the operation definition in the operation information management unit 32, and the operation information is updated at the timing when the operation information management unit 32 performs the operation information synchronization processing. Interaction can be defined.

図12は、第4実施例におけるデータの流れを説明する図であり、動作情報定義、イベント処理定義、及び周期動作処理定義を示す。この例では、イベント処理定義32−1はイベント処理X(a, b, ...)を定義しており、動作情報定義32−2,33−1は動作情報A,B,C,...を定義しており、動作情報更新処理定義32−4は動作情報C,A,B,...を定義している。動作情報32−3,33−3は動作情報A,B,C,...の値を含み、周期動作処理定義33−2はロボット24に周期動作を行わせるアクションP,...のアクション指示を定義している。   FIG. 12 is a diagram for explaining the flow of data in the fourth embodiment, and shows an operation information definition, an event process definition, and a periodic operation process definition. In this example, the event processing definition 32-1 defines event processing X (a, b,...), And the operation information definitions 32-2 and 33-1 include operation information A, B, C,. . And the operation information update process definition 32-4 defines operation information C, A, B,. The motion information 32-3, 33-3 includes the values of the motion information A, B, C,..., And the periodic motion process definition 33-2 is an action P,. An instruction is defined.

図13は、第4実施例における処理の一例を説明するフローチャートである。図13に示す動作情報同期処理は、動作情報管理部32により実行される。図13において、ステップS51は、イベント処理の排他制御を行う。ステップS52は、動作情報更新処理定義32−4が追加された動作情報を取り出す時に動作情報を更新する動作情報の更新処理を実行する。ステップS53は、更新処理で更新された動作情報のコピーを作成し、ステップS54は、動作情報のリアルタイム情報をクリア(即ち、初期化)する。ステップS55は、イベントキュー37をクリアし、ステップS56は、イベント処理の排他制御を解除する。ステップS57は、ステップS53で作成した動作情報のコピーをリクエスト元の周期処理部33に返し、処理は終了する。   FIG. 13 is a flowchart for explaining an example of processing in the fourth embodiment. The motion information synchronization process shown in FIG. 13 is executed by the motion information management unit 32. In FIG. 13, step S51 performs exclusive control of event processing. A step S52 executes an operation information update process for updating the operation information when the operation information to which the operation information update process definition 32-4 is added is taken out. Step S53 creates a copy of the operation information updated in the update process, and step S54 clears (ie, initializes) the real-time information of the operation information. Step S55 clears the event queue 37, and step S56 releases the exclusive control of the event process. In step S57, a copy of the operation information created in step S53 is returned to the requesting periodic processing unit 33, and the process ends.

上記の各実施例によれば、多様なインタラクションの内容をサーバからインタラクションシステムを介してロボットにネットワーク配信し、スムーズにインタラクションの内容を切り替えることが可能となる。生活リズム、生活シーン、個人の嗜好等に合わせた内容のインタラクションの提供が可能となり、ユーザと一緒に生活しながらユーザを見守る共生型ロボットによりサービスを提供する場合等に好適である。更に、インタラクションの整合性を保つように周期動作処理及び非同期イベント処理の実行内容を変更するので、コミュニケーションロボットやその他のインタラクティブ装置(又は、ネットワーク機器)が動的に動作を変更して環境又はリクエストに適応するようなアプリケーションを容易に構築可能となる。   According to each of the embodiments described above, various interaction contents can be distributed from the server to the robot via the interaction system, and the interaction contents can be switched smoothly. It is possible to provide an interaction with contents that match the life rhythm, life scene, personal preference, etc., and this is suitable when a service is provided by a symbiotic robot that watches the user while living with the user. Furthermore, since the execution contents of the periodic operation processing and asynchronous event processing are changed so as to maintain the consistency of interaction, the communication robot or other interactive device (or network device) dynamically changes the operation to change the environment or request. It is possible to easily construct an application that adapts to.

図14は、インタラクションシステムの構成の一例を示すブロック図である。図14に示すインタラクションシステム23は、汎用のコンピュータシステムと同様の構成を有する。インタラクションシステム23は、図14に示す如く接続されたプロセッサの一例であるCPU(Central Processing Unit)501、記憶部502、テンキー等を含む入力部503、表示部504、及び通信部505を有する。この例では、記憶部502、入力部503、表示部504、及び通信部505がバス507を介してCPU501に接続されているが、バス507を用いることなく記憶部502、入力部503、表示部504、及び通信部505を夫々直接CPU501に接続した構成であっても良い。バス507を介さずに直接CPU501と信号の送受信を行う場合、バス507上のトラフィックの問題が軽減できる。   FIG. 14 is a block diagram showing an example of the configuration of the interaction system. The interaction system 23 shown in FIG. 14 has the same configuration as a general-purpose computer system. The interaction system 23 includes a CPU (Central Processing Unit) 501, which is an example of a processor connected as shown in FIG. 14, a storage unit 502, an input unit 503 including a numeric keypad, a display unit 504, and a communication unit 505. In this example, the storage unit 502, the input unit 503, the display unit 504, and the communication unit 505 are connected to the CPU 501 via the bus 507, but the storage unit 502, the input unit 503, and the display unit are not used without using the bus 507. 504 and the communication unit 505 may be directly connected to the CPU 501. When signals are directly transmitted to and received from the CPU 501 without going through the bus 507, the problem of traffic on the bus 507 can be reduced.

CPU501は、インタラクションシステム23全体の制御を司り、ロボット24のアクションを指示するアクション指示を出力してロボット24のインタラクションを制御するインタラクション制御プログラムを含む各種プログラムを実行することでインタラクションシステム23の各機能を実現できる。記憶部502は、CPU501が実行するプログラム、及びCPU501が実行する算出処理等の中間データ、イベントキュー37、イベント処理定義32−1、動作情報定義32−2,33−1、動作情報32−3,33−3、同期動作処理定義33−2等を含む各種データを格納する。記憶部502は、例えばRAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)等で形成可能である。入力部502は、インタラクションシステム23にコマンドやデータを入力する際にユーザにより操作される。表示部503は、入力部502からの入力情報、ユーザへのメッセージ、各種操作メニュー等を表示する。通信部505は、送信機及び受信機を有し、サーバ22、ロボット24、及び他のシステム25等と有線又は無線ネットワークを介した通信を行う。   The CPU 501 controls the entire interaction system 23 and outputs various action programs including an interaction control program for controlling the interaction of the robot 24 by outputting an action instruction for instructing the action of the robot 24. Can be realized. The storage unit 502 includes a program executed by the CPU 501 and intermediate data such as a calculation process executed by the CPU 501, an event queue 37, an event processing definition 32-1, operation information definitions 32-2 and 33-1, and operation information 32-3. , 33-3, synchronous operation processing definition 33-2, and the like. The storage unit 502 can be formed by, for example, a RAM (Random Access Memory), a ROM (Read Only Memory), an HDD (Hard Disk Drive), or the like. The input unit 502 is operated by the user when inputting commands and data to the interaction system 23. A display unit 503 displays input information from the input unit 502, a message to the user, various operation menus, and the like. The communication unit 505 includes a transmitter and a receiver, and performs communication with the server 22, the robot 24, the other system 25, and the like via a wired or wireless network.

インタラクションシステム23に少なくともインタラクション制御機能を持たせるプログラム(インタラクション制御プログラム)は、CPU501にインタラクション制御処理を実行させる。プログラムは、コンピュータ読み取り可能な記憶媒体に格納されていても良い。コンピュータ読み取り可能な記憶媒体は、例えばIC(Integrated Circuit)カードメモリ等の半導体記憶装置、フロッピー(登録商標)ディスク等の磁気ディスク、光磁気ディスク、CD−ROM等の可搬型記録媒体に限定されるものではなく、CPU501でアクセス可能な各種記録媒体を含む。又、コンピュータ読み取り可能な記憶媒体は、例えば記憶部502で形成されても良い。   A program for causing the interaction system 23 to have at least an interaction control function (interaction control program) causes the CPU 501 to execute an interaction control process. The program may be stored in a computer-readable storage medium. The computer-readable storage medium is limited to, for example, a semiconductor storage device such as an IC (Integrated Circuit) card memory, a magnetic disk such as a floppy (registered trademark) disk, a magneto-optical disk, and a portable recording medium such as a CD-ROM. It includes various recording media that can be accessed by the CPU 501. Further, a computer-readable storage medium may be formed by the storage unit 502, for example.

図15は、ロボットの構成の一例を示すブロック図である。図15に示すロボット24は、汎用のコンピュータシステムと同様の構成を含む。ロボット24は、図15に示す如く接続されたプロセッサの一例であるCPU601、記憶部602、テンキー等を含む入力部603、表示部(発光素子等の表示機器を含む)やスピーカ等を含む出力部604、通信部605、及びカメラ、マイクロホン、GPS(Global Positioning System)センサ等の外的センサ及びモータ回転角度センサ等の内部センサを含むセンサ部606を有する。マイクロホンは、入力部603に含まれていても良い。この例では、記憶部602、入力部603、出力部604、通信部605、及びセンサ部606がバス607を介してCPU601に接続されているが、バス607を用いることなく記憶部602、入力部603、出力部604、通信部605、及びセンサ部606を夫々直接CPU601に接続した構成であっても良い。バス607を介さずに直接CPU601と信号の送受信を行う場合、バス607上のトラフィックの問題が軽減できる。尚、ロボット24の可動部、可動部を駆動するモータ等の図示は省略する。図15に示す如きハードウェア構成を有するロボット24自体は周知である。   FIG. 15 is a block diagram illustrating an example of the configuration of the robot. The robot 24 shown in FIG. 15 includes the same configuration as that of a general-purpose computer system. The robot 24 is an example of a processor connected as shown in FIG. 15, a CPU 601, a storage unit 602, an input unit 603 including a numeric keypad, an output unit including a display unit (including a display device such as a light emitting element), a speaker, and the like. 604, a communication unit 605, and a sensor unit 606 including an external sensor such as a camera, a microphone, a GPS (Global Positioning System) sensor, and an internal sensor such as a motor rotation angle sensor. The microphone may be included in the input unit 603. In this example, the storage unit 602, the input unit 603, the output unit 604, the communication unit 605, and the sensor unit 606 are connected to the CPU 601 via the bus 607, but the storage unit 602 and the input unit are not used without using the bus 607. 603, the output part 604, the communication part 605, and the sensor part 606 may each be directly connected to the CPU 601. When signals are directly transmitted to and received from the CPU 601 without going through the bus 607, the problem of traffic on the bus 607 can be reduced. In addition, illustration of the movable part of the robot 24, the motor that drives the movable part, and the like is omitted. The robot 24 itself having a hardware configuration as shown in FIG. 15 is well known.

CPU601は、ロボット24全体の制御を司り、アクション指示に基づいてロボット24のアクションを制御するアクション制御プログラムを含む各種プログラムを実行することでロボット24の各機能を実現できる。記憶部602は、CPU601が実行するプログラム、及びCPU601が実行する算出処理等の中間データ等を含む各種データを格納する。記憶部602は、例えばRAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)等で形成可能である。入力部602は、ロボット24にコマンドやデータを入力するのに用いられる。出力部603は、ユーザへのメッセージ等を出力する。通信部605は、送信機及び受信機を有し、インタラクションシステム23と有線又は無線ネットワークを介した通信を行う。通信部605は、例えばインタラクションシステム23と有線通信を行い、他のシステム25とは無線通信を行うようにしても良い。   The CPU 601 controls the entire robot 24 and can implement each function of the robot 24 by executing various programs including an action control program for controlling the action of the robot 24 based on an action instruction. The storage unit 602 stores various data including a program executed by the CPU 601 and intermediate data such as a calculation process executed by the CPU 601. The storage unit 602 can be formed by, for example, a RAM (Random Access Memory), a ROM (Read Only Memory), an HDD (Hard Disk Drive), or the like. The input unit 602 is used to input commands and data to the robot 24. The output unit 603 outputs a message to the user. The communication unit 605 includes a transmitter and a receiver, and performs communication with the interaction system 23 via a wired or wireless network. The communication unit 605 may perform wired communication with the interaction system 23 and perform wireless communication with the other system 25, for example.

ロボット24に少なくともアクション制御機能を持たせるプログラム(アクション制御プログラム)は、CPU601にアクション制御処理を実行させる。プログラムは、コンピュータ読み取り可能な記憶媒体に格納されていても良い。コンピュータ読み取り可能な記憶媒体は、例えばIC(Integrated Circuit)カードメモリ等の半導体記憶装置、フロッピー(登録商標)ディスク等の磁気ディスク、光磁気ディスク、CD−ROM等の可搬型記録媒体に限定されるものではなく、CPU601でアクセス可能な各種記録媒体を含む。又、コンピュータ読み取り可能な記憶媒体は、例えば記憶部602で形成されても良い。   A program for causing the robot 24 to have at least an action control function (action control program) causes the CPU 601 to execute an action control process. The program may be stored in a computer-readable storage medium. The computer-readable storage medium is limited to, for example, a semiconductor storage device such as an IC (Integrated Circuit) card memory, a magnetic disk such as a floppy (registered trademark) disk, a magneto-optical disk, and a portable recording medium such as a CD-ROM. It includes various recording media that can be accessed by the CPU 601 instead of those. Further, a computer-readable storage medium may be formed by the storage unit 602, for example.

言うまでもなく、CPU601は、アクション制御機能に加え、各種プログラムを実行することでロボット24の会話機能、位置推定機能等の各種機能を更に実現しても良い。   Needless to say, the CPU 601 may further realize various functions such as a conversation function and a position estimation function of the robot 24 by executing various programs in addition to the action control function.

上記の各実施例において、ロボットはインタラクティブ装置の一例であり、開示のインタラクションシステムはロボット以外のインタラクティブ装置のインタラクションを制御するものであっても良い。この場合、インタラクティブ装置は、スマートホン(Smartphone)等の携帯端末を含み、スマートホンは本体部に装着されてロボットを形成するものであっても良い。従って、インタラクションシステム及びこのようなスマートホンと本体部の組み合わせを有するロボットシステムも、インタラクティブシステムの一例である。   In each of the above embodiments, the robot is an example of an interactive device, and the disclosed interaction system may control the interaction of an interactive device other than the robot. In this case, the interactive device may include a portable terminal such as a smart phone, and the smart phone may be attached to the main body to form a robot. Therefore, an interaction system and a robot system having such a combination of a smart phone and a main body are also examples of interactive systems.

又、必要に応じて上記の第1乃至第4実施例のうち2以上の実施例を適宜組み合わせても良い。   Further, two or more of the first to fourth embodiments described above may be appropriately combined as necessary.

以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
(付記1)
インタラクティブ装置の状態に関する非同期のイベント情報を受信する受信部と、
周期的に実行されて前記インタラクティブ装置のアクションを指示するアクション指示を出力する周期動作処理を定義する周期動作処理定義、前記イベント情報に応じて前記インタラクションの内容の詳細に表す動作情報を更新するイベント処理定義、及び前記動作情報を定義する動作情報定義を受け付ける受付部と、
前記周期動作処理定義、前記イベント処理定義、及び前記動作情報定義を一括で更新する更新処理部
を備えたことを特徴とする、インタラクションシステム。
(付記2)
前記イベント情報に応じたイベント処理を適用して前記動作情報定義を更新すると同時に前記イベント情報をイベントキューに格納する第1の処理と、動作情報同期処理のリクエストに応答してその時点での前記動作情報を前記リクエストのソースに返すと共に前記イベントキューをクリアする第2の処理と、新たな動作定義を渡されると前記動作定義を更新すると共に前記イベントキューから全イベント情報を取得して順に各イベント情報のイベント処理を行う第3の処理を行う動作情報管理部を更に備え、前記第1、第2、及び第3の処理は夫々前記動作情報管理部により排他制御されることを特徴とする、付記1記載のインタラクションシステム。
(付記3)
前記動作情報管理部は、前記イベント情報が反映された動作情報が、前記イベント処理により更新される動作情報に基づき前記インタラクティブ装置のアクションを決定して指示する周期動作処理で利用されるとその時の動作情報に反映済みのイベント情報を破棄することを特徴とする、付記2記載のインタラクションシステム。
(付記4)
前記周期動作定義、前記イベント処理定義、及び動作情報定義が更新される前の周期動作処理を、前記更新処理部による更新と並行して行う周期処理部を更に備えたことを特徴とする、付記3記載のインタラクションシステム。
(付記5)
前記動作情報は、生存期間の属性として永続動作情報、動作定義情報、及びリアルタイム情報のいずれかが付加されており、
前記永続動作情報は動作定義が更新されても保持される情報であり、前記動作定義情報は動作定義が更新される時に破棄される情報であり、前記リアルタイム情報は動作情報が一度周期動作処理で利用されると破棄される情報であり、
前記周期処理部は、前記動作情報に付加された属性に応じた周期動作を前記インタラクティブ装置に行わせるアクション指示を前記周期動作処理により出力することを特徴とする、付記3又は4記載のインタラクションシステム。
(付記6)
前記動作情報管理部は、動作情報更新処理定義を前記動作定義に追加し、前記動作情報同期処理を行うタイミングで前記動作情報を更新することを特徴とする、付記2乃至5のいずれか1項記載のインタラクションシステム。
(付記7)
インタラクティブ装置と、
サーバ及び前記インタラクティブ装置と通信可能であり前記インタラクティブ装置のアクションを指示するアクション指示を出力するインタラクションシステムとを備え、
前記インタラクションシステムは、
前記インタラクティブ装置の状態に関する非同期のイベント情報を受信する受信部と、
前記サーバから配信される、周期的に実行されて前記インタラクティブ装置のアクションを指示するアクション指示を出力する周期動作処理を定義する周期動作処理定義、前記イベント情報に応じて前記インタラクションの内容の詳細に表す動作情報を更新するイベント処理定義、及び前記動作情報を定義する動作情報定義を受け付ける受付部と、
前記周期動作処理定義、前記イベント処理定義、及び前記動作情報定義を一括で更新する更新処理部
を備えたことを特徴とする、インタラクティブシステム。
(付記8)
前記インタラクションシステムは、前記イベント情報に応じたイベント処理を適用して前記動作情報定義を更新すると同時に前記イベント情報をイベントキューに格納する第1の処理と、動作情報同期処理のリクエストに応答してその時点での前記動作情報を前記リクエストのソースに返すと共に前記イベントキューをクリアする第2の処理と、新たな動作定義を渡されると前記動作定義を更新すると共に前記イベントキューから全イベント情報を取得して順に各イベント情報のイベント処理を行う第3の処理を行う動作情報管理部を更に備え、前記第1、第2、及び第3の処理は夫々前記動作情報管理部により排他制御されることを特徴とする、付記7記載のインタラクティブシステム。
(付記9)
前記動作情報管理部は、前記イベント情報が反映された動作情報が、前記イベント処理により更新される動作情報に基づき前記インタラクティブ装置のアクションを決定して指示する周期動作処理で利用されるとその時の動作情報に反映済みのイベント情報を破棄することを特徴とする、付記8記載のインタラクティブシステム。
(付記10)
前記インタラクションシステムは、前記周期動作定義、前記イベント処理定義、及び動作情報定義が更新される前の周期動作処理を、前記更新処理部による更新と並行して行う周期処理部を更に備えたことを特徴とする、付記9記載のインタラクティブシステム。
(付記11)
前記動作情報は、生存期間の属性として永続動作情報、動作定義情報、及びリアルタイム情報のいずれかが付加されており、
前記永続動作情報は動作定義が更新されても保持される情報であり、前記動作定義情報は動作定義が更新される時に破棄される情報であり、前記リアルタイム情報は動作情報が一度周期動作処理で利用されると破棄される情報であり、
前記周期処理部は、前記動作情報に付加された属性に応じた周期動作を前記インタラクティブ装置に行わせるアクション指示を前記周期動作処理により出力することを特徴とする、付記9又は10記載のインタラクティブシステム。
(付記12)
前記動作情報管理部は、動作情報更新処理定義を前記動作定義に追加し、前記動作情報同期処理を行うタイミングで前記動作情報を更新することを特徴とする、付記8乃至11のいずれか1項記載のインタラクティブシステム。
(付記13)
コンピュータに、インタラクティブ装置のアクションを指示するアクション指示を出力して前記インタラクティブ装置のインタラクションを制御するインタラクション制御処理を実行させるプログラムであって、
前記インタラクティブ装置の状態に関する非同期のイベント情報を受信する受信手順と、
周期的に実行されて前記インタラクティブ装置のアクションを指示するアクション指示を出力する周期動作処理を定義する周期動作処理定義、前記イベント情報に応じて前記インタラクションの内容の詳細に表す動作情報を更新するイベント処理定義、及び前記動作情報を定義する動作情報定義を受け付ける受付手順と、
前記周期動作処理定義、前記イベント処理定義、及び前記動作情報定義を一括で更新する更新処理手順
を前記コンピュータに実行させることを特徴とする、プログラム。
(付記14)
前記イベント情報に応じたイベント処理を適用して前記動作情報定義を更新すると同時に前記イベント情報をイベントキューに格納する第1の処理と、動作情報同期処理のリクエストに応答してその時点での前記動作情報を前記リクエストのソースに返すと共に前記イベントキューをクリアする第2の処理と、新たな動作定義を渡されると前記動作定義を更新すると共に前記イベントキューから全イベント情報を取得して順に各イベント情報のイベント処理を行う第3の処理を行う管理手順
を前記コンピュータに更に実行させ、
前記第1、第2、及び第3の処理は夫々前記管理手順により排他制御されることを特徴とする、付記13記載のプログラム。
(付記15)
前記管理手順は、前記イベント情報が反映された動作情報が、前記イベント処理により更新される動作情報に基づき前記インタラクティブ装置のアクションを決定して指示する周期動作処理で利用されるとその時の動作情報に反映済みのイベント情報を破棄することを特徴とする、付記14記載のプログラム。
(付記16)
前記周期動作定義、前記イベント処理定義、及び動作情報定義が更新される前の周期動作処理を、前記更新処理手順による更新と並行して行う周期処理手順
を前記コンピュータに更に実行させることを特徴とする、付記15記載のプログラム。
(付記17)
前記動作情報は、生存期間の属性として永続動作情報、動作定義情報、及びリアルタイム情報のいずれかが付加されており、
前記永続動作情報は動作定義が更新されても保持される情報であり、前記動作定義情報は動作定義が更新される時に破棄される情報であり、前記リアルタイム情報は動作情報が一度周期動作処理で利用されると破棄される情報であり、
前記周期処理手順は、前記動作情報に付加された属性に応じた周期動作を前記インタラクティブ装置に行わせるアクション指示を前記周期動作処理により出力することを特徴とする、付記15又は16記載のプログラム。
(付記18)
前記管理手順は、動作情報更新処理定義を前記動作定義に追加し、前記動作情報同期処理を行うタイミングで前記動作情報を更新することを特徴とする、付記14乃至17のいずれか1項記載のプログラム。
(付記19)
サーバにインタラクションの内容の配信をリクエストする手順
を前記コンピュータに更に実行させることを特徴とする、付記13乃至18のいずれか1項記載のプログラム。
(付記20)
前記サーバと前記コンピュータとの間の通信にHTTP(Hyper Test Transfer Protocol)を用いることを特徴とする、付記19記載のプログラム。
The following additional notes are further disclosed with respect to the embodiment including the above examples.
(Appendix 1)
A receiver for receiving asynchronous event information related to the state of the interactive device;
A periodic operation process definition that defines a periodic operation process that periodically executes and outputs an action instruction that instructs an action of the interactive device, and an event that updates operation information expressed in detail of the content of the interaction according to the event information A reception unit that receives a process definition and an operation information definition that defines the operation information;
An interaction system, comprising: an update processing unit that collectively updates the periodic operation process definition, the event process definition, and the operation information definition.
(Appendix 2)
A first process for updating the operation information definition by applying an event process according to the event information and storing the event information in an event queue at the same time, and in response to a request for the operation information synchronization process, A second process for returning the operation information to the source of the request and clearing the event queue, and when a new operation definition is passed, the operation definition is updated and all event information is acquired from the event queue in order. An operation information management unit that performs a third process that performs event processing of event information is further provided, and the first, second, and third processes are exclusively controlled by the operation information management unit, respectively. The interaction system according to appendix 1.
(Appendix 3)
When the operation information reflecting the event information is used in a periodic operation process that determines and instructs an action of the interactive device based on the operation information updated by the event process, the operation information management unit The interaction system according to appendix 2, wherein the event information already reflected in the operation information is discarded.
(Appendix 4)
The system further includes a periodic processing unit that performs the periodic operation processing before the update of the periodic operation definition, the event processing definition, and the operation information definition in parallel with the update by the update processing unit. 3. The interaction system according to 3.
(Appendix 5)
In the operation information, any one of permanent operation information, operation definition information, and real-time information is added as an attribute of the lifetime.
The permanent motion information is information that is retained even when the motion definition is updated, the motion definition information is information that is discarded when the motion definition is updated, and the real-time information is the motion information once in a periodic motion process. Information that is discarded when used,
The interaction system according to claim 3 or 4, wherein the periodic processing unit outputs an action instruction for causing the interactive device to perform a periodic operation according to an attribute added to the operation information, by the periodic operation process. .
(Appendix 6)
The operation information management unit adds an operation information update process definition to the operation definition, and updates the operation information at a timing when the operation information synchronization process is performed. The described interaction system.
(Appendix 7)
An interactive device,
An interaction system capable of communicating with a server and the interactive device and outputting an action instruction for instructing an action of the interactive device;
The interaction system is:
A receiver for receiving asynchronous event information related to the state of the interactive device;
A periodic operation process definition that defines a periodic operation process that outputs an action instruction that is periodically executed and instructs an action of the interactive device, distributed from the server, and details of the content of the interaction according to the event information An event process definition for updating the operation information to be represented, and a reception unit for receiving the operation information definition for defining the operation information;
An interactive system, comprising: an update processing unit that updates the periodic operation process definition, the event process definition, and the operation information definition in a batch.
(Appendix 8)
The interaction system applies an event process corresponding to the event information to update the operation information definition and simultaneously stores the event information in an event queue, and in response to a request for the operation information synchronization process A second process for returning the operation information at that time to the source of the request and clearing the event queue; when a new operation definition is passed, the operation definition is updated and all event information from the event queue is updated. An operation information management unit that performs a third process for performing event processing of each event information in order after acquisition is further provided, and the first, second, and third processes are exclusively controlled by the operation information management unit, respectively. The interactive system according to appendix 7, wherein
(Appendix 9)
When the operation information reflecting the event information is used in a periodic operation process that determines and instructs an action of the interactive device based on the operation information updated by the event process, the operation information management unit 9. The interactive system according to appendix 8, wherein event information already reflected in the operation information is discarded.
(Appendix 10)
The interaction system further includes a periodic processing unit that performs periodic operation processing before the periodic operation definition, the event processing definition, and the operation information definition are updated in parallel with the update by the update processing unit. The interactive system according to appendix 9, which is characterized.
(Appendix 11)
In the operation information, any one of permanent operation information, operation definition information, and real-time information is added as an attribute of the lifetime.
The permanent motion information is information that is retained even when the motion definition is updated, the motion definition information is information that is discarded when the motion definition is updated, and the real-time information is the motion information once in a periodic motion process. Information that is discarded when used,
The interactive system according to claim 9 or 10, wherein the periodic processing unit outputs an action instruction for causing the interactive device to perform a periodic operation according to an attribute added to the operation information, by the periodic operation process. .
(Appendix 12)
The operation information management unit adds an operation information update process definition to the operation definition and updates the operation information at a timing when the operation information synchronization process is performed. The interactive system described.
(Appendix 13)
A program for causing a computer to execute an action control process for controlling an interaction of the interactive apparatus by outputting an action instruction for instructing an action of the interactive apparatus,
A receiving procedure for receiving asynchronous event information regarding the state of the interactive device;
A periodic operation process definition that defines a periodic operation process that periodically executes and outputs an action instruction that instructs an action of the interactive device, and an event that updates operation information expressed in detail of the content of the interaction according to the event information A reception procedure for receiving a process definition and an operation information definition for defining the operation information;
A program causing the computer to execute an update processing procedure for updating the periodic operation process definition, the event process definition, and the operation information definition in a batch.
(Appendix 14)
A first process for updating the operation information definition by applying an event process according to the event information and storing the event information in an event queue at the same time, and in response to a request for the operation information synchronization process, A second process for returning the operation information to the source of the request and clearing the event queue, and when a new operation definition is passed, the operation definition is updated and all event information is acquired from the event queue in order. Further causing the computer to execute a management procedure for performing a third process of performing event processing of event information;
The program according to appendix 13, wherein the first, second, and third processes are exclusively controlled by the management procedure.
(Appendix 15)
When the operation information reflecting the event information is used in a periodic operation process in which an action of the interactive device is determined and instructed based on the operation information updated by the event process, the management procedure is the operation information at that time 15. The program according to appendix 14, characterized in that event information already reflected in is discarded.
(Appendix 16)
Causing the computer to further execute a periodic processing procedure in which the periodic motion processing before the periodic motion definition, the event processing definition, and the motion information definition are updated is performed in parallel with the update by the update processing procedure. The program according to appendix 15.
(Appendix 17)
In the operation information, any one of permanent operation information, operation definition information, and real-time information is added as an attribute of the lifetime.
The permanent motion information is information that is retained even when the motion definition is updated, the motion definition information is information that is discarded when the motion definition is updated, and the real-time information is the motion information once in a periodic motion process. Information that is discarded when used,
The program according to claim 15 or 16, wherein the periodic processing procedure outputs an action instruction for causing the interactive apparatus to perform a periodic operation according to an attribute added to the operation information, by the periodic operation process.
(Appendix 18)
18. The management procedure according to any one of appendices 14 to 17, wherein the management procedure adds a motion information update process definition to the motion definition and updates the motion information at a timing of performing the motion information synchronization process. program.
(Appendix 19)
The program according to any one of appendices 13 to 18, further causing the computer to execute a procedure for requesting the server to distribute the content of the interaction.
(Appendix 20)
The program according to appendix 19, wherein HTTP (Hyper Test Transfer Protocol) is used for communication between the server and the computer.

以上、開示のインタラクションシステム、インタラクティブシステム及びプログラムを実施例により説明したが、本発明は上記実施例に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能であることは言うまでもない。   Although the disclosed interaction system, interactive system, and program have been described above by way of the embodiments, the present invention is not limited to the above embodiments, and various modifications and improvements can be made within the scope of the present invention. Needless to say.

21 システム
22 サーバ
23 インタラクションシステム
24 ロボット
31 イベント受信部
32 動作情報管理部
33 周期処理部
34 動作定義受付部
35 動作定義更新部
36 動作定義更新判定部
37 イベントキュー
501,601 CPU
502,602 記憶部
21 System 22 Server 23 Interaction System 24 Robot 31 Event Receiving Unit 32 Operation Information Management Unit 33 Periodic Processing Unit 34 Operation Definition Accepting Unit 35 Operation Definition Update Unit 36 Operation Definition Update Determination Unit 37 Event Queues 501 and 601 CPU
502,602 storage unit

Claims (7)

インタラクティブ装置の状態に関する非同期のイベント情報を受信する受信部と、
周期的に実行されて前記インタラクティブ装置のアクションを指示するアクション指示を出力する周期動作処理を定義する周期動作処理定義、前記イベント情報に応じて前記インタラクションの内容の詳細に表す動作情報を更新するイベント処理定義、及び前記動作情報を定義する動作情報定義を受け付ける受付部と、
前記周期動作処理定義、前記イベント処理定義、及び前記動作情報定義を一括で更新する更新処理部
を備えたことを特徴とする、インタラクションシステム。
A receiver for receiving asynchronous event information related to the state of the interactive device;
A periodic operation process definition that defines a periodic operation process that periodically executes and outputs an action instruction that instructs an action of the interactive device, and an event that updates operation information expressed in detail of the content of the interaction according to the event information A reception unit that receives a process definition and an operation information definition that defines the operation information;
An interaction system, comprising: an update processing unit that collectively updates the periodic operation process definition, the event process definition, and the operation information definition.
前記イベント情報に応じたイベント処理を適用して前記動作情報定義を更新すると同時に前記イベント情報をイベントキューに格納する第1の処理と、動作情報同期処理のリクエストに応答してその時点での前記動作情報を前記リクエストのソースに返すと共に前記イベントキューをクリアする第2の処理と、新たな動作定義を渡されると前記動作定義を更新すると共に前記イベントキューから全イベント情報を取得して順に各イベント情報のイベント処理を行う第3の処理を行う動作情報管理部を更に備え、前記第1、第2、及び第3の処理は夫々前記動作情報管理部により排他制御されることを特徴とする、請求項1記載のインタラクションシステム。   A first process for updating the operation information definition by applying an event process according to the event information and storing the event information in an event queue at the same time, and in response to a request for the operation information synchronization process, A second process for returning the operation information to the source of the request and clearing the event queue, and when a new operation definition is passed, the operation definition is updated and all event information is acquired from the event queue in order. An operation information management unit that performs a third process that performs event processing of event information is further provided, and the first, second, and third processes are exclusively controlled by the operation information management unit, respectively. The interaction system according to claim 1. 前記動作情報管理部は、前記イベント情報が反映された動作情報が、前記イベント処理により更新される動作情報に基づき前記インタラクティブ装置のアクションを決定して指示する周期動作処理で利用されるとその時の動作情報に反映済みのイベント情報を破棄することを特徴とする、請求項2記載のインタラクションシステム。   When the operation information reflecting the event information is used in a periodic operation process that determines and instructs an action of the interactive device based on the operation information updated by the event process, the operation information management unit The interaction system according to claim 2, wherein event information reflected in the operation information is discarded. 前記周期動作定義、前記イベント処理定義、及び動作情報定義が更新される前の周期動作処理を、前記更新処理部による更新と並行して行う周期処理部を更に備えたことを特徴とする、請求項3記載のインタラクションシステム。   The apparatus further comprises a periodic processing unit that performs periodic operation processing before the update of the periodic operation definition, the event processing definition, and the operation information definition in parallel with the update by the update processing unit. Item 4. The interaction system according to item 3. 前記動作情報は、生存期間の属性として永続動作情報、動作定義情報、及びリアルタイム情報のいずれかが付加されており、
前記永続動作情報は動作定義が更新されても保持される情報であり、前記動作定義情報は動作定義が更新される時に破棄される情報であり、前記リアルタイム情報は動作情報が一度周期動作処理で利用されると破棄される情報であり、
前記周期処理部は、前記動作情報に付加された属性に応じた周期動作を前記インタラクティブ装置に行わせるアクション指示を前記周期動作処理により出力することを特徴とする、請求項3又は4記載のインタラクションシステム。
In the operation information, any one of permanent operation information, operation definition information, and real-time information is added as an attribute of the lifetime.
The permanent motion information is information that is retained even when the motion definition is updated. The motion definition information is information that is discarded when the motion definition is updated. Information that is discarded when used,
5. The interaction according to claim 3, wherein the periodic processing unit outputs an action instruction for causing the interactive apparatus to perform a periodic operation according to an attribute added to the operation information, by the periodic operation process. 6. system.
インタラクティブ装置と、
サーバ及び前記インタラクティブ装置と通信可能であり前記インタラクティブ装置のアクションを指示するアクション指示を出力するインタラクションシステムとを備え、
前記インタラクションシステムは、
前記インタラクティブ装置の状態に関する非同期のイベント情報を受信する受信部と、
前記サーバから配信される、周期的に実行されて前記インタラクティブ装置のアクションを指示するアクション指示を出力する周期動作処理を定義する周期動作処理定義、前記イベント情報に応じて前記インタラクションの内容の詳細に表す動作情報を更新するイベント処理定義、及び前記動作情報を定義する動作情報定義を受け付ける受付部と、
前記周期動作処理定義、前記イベント処理定義、及び前記動作情報定義を一括で更新する更新処理部
を備えたことを特徴とする、インタラクティブシステム。
An interactive device,
An interaction system capable of communicating with a server and the interactive device and outputting an action instruction for instructing an action of the interactive device;
The interaction system is:
A receiver for receiving asynchronous event information related to the state of the interactive device;
A periodic operation process definition that defines a periodic operation process that outputs an action instruction that is periodically executed and instructs an action of the interactive device, distributed from the server, and details of the content of the interaction according to the event information An event process definition for updating the operation information to be represented, and a reception unit for receiving the operation information definition for defining the operation information;
An interactive system, comprising: an update processing unit that updates the periodic operation process definition, the event process definition, and the operation information definition in a batch.
コンピュータに、インタラクティブ装置のアクションを指示するアクション指示を出力して前記インタラクティブ装置のインタラクションを制御するインタラクション制御処理を実行させるプログラムであって、
前記インタラクティブ装置の状態に関する非同期のイベント情報を受信する受信手順と、
周期的に実行されて前記インタラクティブ装置のアクションを指示するアクション指示を出力する周期動作処理を定義する周期動作処理定義、前記イベント情報に応じて前記インタラクションの内容の詳細に表す動作情報を更新するイベント処理定義、及び前記動作情報を定義する動作情報定義を受け付ける受付手順と、
前記周期動作処理定義、前記イベント処理定義、及び前記動作情報定義を一括で更新する更新処理手順
を前記コンピュータに実行させることを特徴とする、プログラム。
A program for causing a computer to execute an action control process for controlling an interaction of the interactive apparatus by outputting an action instruction for instructing an action of the interactive apparatus,
A receiving procedure for receiving asynchronous event information regarding the state of the interactive device;
A periodic operation process definition that defines a periodic operation process that periodically executes and outputs an action instruction that instructs an action of the interactive device, and an event that updates operation information expressed in detail of the content of the interaction according to the event information A reception procedure for receiving a process definition and an operation information definition for defining the operation information;
A program causing the computer to execute an update processing procedure for updating the periodic operation process definition, the event process definition, and the operation information definition in a batch.
JP2011203792A 2011-09-16 2011-09-16 Interaction system, interactive system and program Active JP5834677B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011203792A JP5834677B2 (en) 2011-09-16 2011-09-16 Interaction system, interactive system and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011203792A JP5834677B2 (en) 2011-09-16 2011-09-16 Interaction system, interactive system and program

Publications (2)

Publication Number Publication Date
JP2013063489A true JP2013063489A (en) 2013-04-11
JP5834677B2 JP5834677B2 (en) 2015-12-24

Family

ID=48187493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011203792A Active JP5834677B2 (en) 2011-09-16 2011-09-16 Interaction system, interactive system and program

Country Status (1)

Country Link
JP (1) JP5834677B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002301675A (en) * 2001-01-30 2002-10-15 Nec Corp Robot, robot control system and its program
JP2004078905A (en) * 2002-06-21 2004-03-11 Nec Corp Device for supporting creation of operation program, manufacturing system of robot operation program and robot control system
JP2005246591A (en) * 2004-03-08 2005-09-15 Nec Corp Robot or method for renewing action in robot, and program for controlling method for renewing action in robot
JP2009262279A (en) * 2008-04-25 2009-11-12 Nec Corp Robot, robot program sharing system, robot program sharing method, and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002301675A (en) * 2001-01-30 2002-10-15 Nec Corp Robot, robot control system and its program
JP2004078905A (en) * 2002-06-21 2004-03-11 Nec Corp Device for supporting creation of operation program, manufacturing system of robot operation program and robot control system
JP2005246591A (en) * 2004-03-08 2005-09-15 Nec Corp Robot or method for renewing action in robot, and program for controlling method for renewing action in robot
JP2009262279A (en) * 2008-04-25 2009-11-12 Nec Corp Robot, robot program sharing system, robot program sharing method, and program

Also Published As

Publication number Publication date
JP5834677B2 (en) 2015-12-24

Similar Documents

Publication Publication Date Title
CN108076224B (en) Application program control method and device, storage medium and mobile terminal
KR20190082270A (en) Understanding and creating scenes using neural networks
US10403272B1 (en) Facilitating participation in a virtual meeting using an intelligent assistant
WO2015194386A1 (en) Display control device, display control method, and computer program
JP2010541481A (en) Active in-use search via mobile device
US11948023B2 (en) Automatic application program interface (API) selector for unsupervised natural language processing (NLP) intent classification
WO2019056947A1 (en) Method and system for mobile robot task scheduling
US20190266237A1 (en) Method to learn personalized intents
JP7278037B2 (en) Coding and rendering system for haptic effects
CN112825013A (en) Control method and device of terminal equipment
KR20200094732A (en) Method and system for classifying time series data
KR20210033873A (en) Speech recognition control method, apparatus, electronic device and readable storage medium
CN115148197A (en) Voice wake-up method, device, storage medium and system
US20220245401A1 (en) Method and apparatus for training model
WO2018139036A1 (en) Information processing device, information processing method, and program
JP5445312B2 (en) Operation control method, interactive device, and program
JP5834677B2 (en) Interaction system, interactive system and program
JPH11288342A (en) Device and method for interfacing multimodal input/ output device
JP4483428B2 (en) Speech recognition / synthesis system, synchronization control method, synchronization control program, and synchronization control apparatus
CN110543290A (en) Multimodal response
RU2638003C1 (en) Method of tasks distribution between servicing robots and means of cyberphysical intelligent space with multimodal user service
Grgurić et al. Introducing gesture interaction in the Ambient Assisted Living platform universaal
WO2018135301A1 (en) Information processing device and information processing method
KR20140100353A (en) Method and apparatus for percepting human information
US11367429B2 (en) Road map for audio presentation of communications

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140508

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150324

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150501

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151019

R150 Certificate of patent or registration of utility model

Ref document number: 5834677

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150