JP2019118992A - Robot device control system - Google Patents

Robot device control system Download PDF

Info

Publication number
JP2019118992A
JP2019118992A JP2017255013A JP2017255013A JP2019118992A JP 2019118992 A JP2019118992 A JP 2019118992A JP 2017255013 A JP2017255013 A JP 2017255013A JP 2017255013 A JP2017255013 A JP 2017255013A JP 2019118992 A JP2019118992 A JP 2019118992A
Authority
JP
Japan
Prior art keywords
scenario
module
unit
data
template
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.)
Pending
Application number
JP2017255013A
Other languages
Japanese (ja)
Inventor
長範 細川
Naganori Hosokawa
長範 細川
康宏 増田
Yasuhiro Masuda
康宏 増田
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.)
Hitachi Building Systems Co Ltd
Original Assignee
Hitachi Building Systems Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Building Systems Co Ltd filed Critical Hitachi Building Systems Co Ltd
Priority to JP2017255013A priority Critical patent/JP2019118992A/en
Publication of JP2019118992A publication Critical patent/JP2019118992A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

To make it possible to suitably edit a scenario.SOLUTION: A robot device control system creates a scenario which includes plural modules including an order for operating a robot device, and controls the robot device based on the created scenario. The robot device control system is provided with: a module reception part which receives selection of a module from the plural modules including the order for operating the robot device; a scenario creation part which creates a ready scenario in such a manner that the module selected in the module reception part is incorporated into a scenario template in which common processing is regulated; and an output part which outputs the scenario created by the scenario creation part.SELECTED DRAWING: Figure 1

Description

本発明はロボット装置制御システムに関し、例えばシナリオに基づいてロボットを制御するロボット装置制御システムに適用して好適なものである。   The present invention relates to a robot device control system, and is suitably applied to, for example, a robot device control system that controls a robot based on a scenario.

ロボットの制御に係るシナリオを作成する際、ロボットが持つ機能に対応している有効なプログラムまたはデータであるか否かを判定し、有効なプログラムまたはデータであった場合にのみ、シナリオへの追加、変更、削除ができるようにする技術が開示されている(特許文献1参照)。   When creating a scenario relating to control of a robot, it is determined whether or not it is a valid program or data corresponding to the function possessed by the robot, and addition to the scenario is made only if it is a valid program or data Patent Document 1 discloses a technique for enabling change, deletion, and the like.

また、複数のシナリオをロボットに送信し、ロボットは、複数のシナリオの中から最適なシナリオを選択して実行する技術が開示されている(特許文献2参照)。   Further, a technology is disclosed that transmits a plurality of scenarios to a robot and the robot selects and executes an optimal scenario from the plurality of scenarios (see Patent Document 2).

特開2005−074601号公報JP, 2005-074601, A 特開2002−301675号公報Japanese Patent Application Publication No. 2002-301675

ロボットの動作は複雑化しつつあり、上記特許文献1および特許文献2に記載の技術を用いたとしても、シナリオが多岐にわたるため、シナリオの作成工数の作業量が大きくなってしまうという問題がある。   The operation of the robot is becoming more complicated, and even if the techniques described in Patent Document 1 and Patent Document 2 are used, there is a problem that the amount of work for creating the scenario becomes large because the scenario is diverse.

また、商業施設、公共交通機関、観光地など、ロボットが用いられる現場は多様であり、ロボットによるサービスを一定水準以上で提供することが困難となっている。   In addition, there are various sites where robots are used, such as commercial facilities, public transportation facilities, and sightseeing spots, and it is difficult to provide robot services at a certain level or higher.

本発明は以上の点を考慮してなされたもので、シナリオを適切に編集し得るロボット装置制御システムを提案しようとするものである。   The present invention has been made in consideration of the above points, and an object thereof is to propose a robot device control system capable of appropriately editing a scenario.

かかる課題を解決するため本発明においては、ロボット装置を動作させる命令を含む複数のモジュールを含んで構成されるシナリオを作成し、作成したシナリオに基づいてロボット装置を制御するロボット装置制御システムであって、ロボット装置を動作させる命令を含む複数のモジュールからモジュールの選択を受け付けるモジュール受付部と、共通処理が規定されたシナリオテンプレートに前記モジュール受付部で選択されたモジュールを組み込んで実行可能なシナリオを作成するシナリオ作成部と、前記シナリオ作成部で作成されたシナリオを出力する出力部と、を設けるようにした。   In order to solve such problems, the present invention is a robot device control system that creates a scenario including a plurality of modules including an instruction to operate the robot device, and controls the robot device based on the created scenario. A module reception unit for receiving a selection of a module from a plurality of modules including an instruction to operate the robot apparatus, and an executable scenario in which the module selected by the module reception unit is incorporated in a scenario template in which common processing is defined. A scenario creating unit to create and an output unit to output the scenario created by the scenario creating unit are provided.

上記構成によれば、予め設けられた複数のモジュールから選択されたモジュールをシナリオテンプレートに組み込むことにより、例えば、シナリオの作成工数を低減することができるようになり、かつ、一定水準以上のサービスを提供できるようになる。   According to the above configuration, by incorporating modules selected from a plurality of modules provided in advance into the scenario template, for example, it becomes possible to reduce the number of creation steps of the scenario, and services of a certain level or more can be realized. Will be able to offer.

本発明によれば、シナリオを適切に編集することができる。   According to the present invention, a scenario can be appropriately edited.

第1の実施の形態によるロボット装置制御システムの構成の一例を示す図である。FIG. 1 is a diagram showing an example of a configuration of a robot device control system according to a first embodiment. 第1の実施の形態によるモジュールDBの一例を示す図である。It is a figure showing an example of module DB by a 1st embodiment. 第1の実施の形態によるパラメタDBの一例を示す図である。It is a figure which shows an example of parameter DB by 1st embodiment. 第1の実施の形態によるシナリオテンプレートDBの一例を示す図である。It is a figure showing an example of scenario template DB by a 1st embodiment. 第1の実施の形態によるテストテーブルの一例を示す図である。It is a figure which shows an example of the test table by 1st Embodiment. 第1の実施の形態によるシナリオテンプレートファイルの一例を示す図である。It is a figure which shows an example of the scenario template file by 1st embodiment. 第1の実施の形態によるシナリオ編集処理に係る処理手順の一例を示す図である。It is a figure which shows an example of the process sequence which concerns on the scenario edit process by 1st Embodiment. 第1の実施の形態によるモジュール受付処理に係る処理手順の一例を示す図である。It is a figure which shows an example of the process sequence which concerns on the module reception process by 1st Embodiment. 第1の実施の形態によるテストモジュール登録処理に係る処理手順の一例を示す図である。It is a figure which shows an example of the process sequence which concerns on the test module registration process by 1st Embodiment. 第1の実施の形態によるシナリオ作成処理に係る処理手順の一例を示す図である。It is a figure showing an example of the processing procedure concerning the scenario creation processing by a 1st embodiment. 第1の実施の形態による出力処理に係る処理手順の一例を示す図である。It is a figure showing an example of the processing procedure concerning the output processing by a 1st embodiment. 第1の実施の形態によるシナリオタスク処理に係る処理手順の一例を示す図である。It is a figure showing an example of the processing procedure concerning the scenario task processing by a 1st embodiment. 第1の実施の形態による制御種別毎処理に係る処理手順の一例を示す図である。It is a figure showing an example of a processing procedure concerning processing for every control classification by a 1st embodiment. 第1の実施の形態による号機管理DBの一例を示す図である。It is a figure which shows an example of the machine management DB by 1st embodiment. 第1の実施の形態による出力データテーブルの一例を示す図である。It is a figure which shows an example of the output data table by 1st Embodiment. 第1の実施の形態によるシナリオテンプレート実行処理に係る処理手順の一例を示す図である。It is a figure showing an example of the processing procedure concerning the scenario template execution processing by a 1st embodiment.

以下図面について、本発明の一実施の形態を詳述する。   An embodiment of the present invention will now be described in detail with reference to the drawings.

(1)第1の実施の形態
行動、発話などのロボットの動作をモジュール単位で組み合わせてシナリオを作成するシステムにおいて、ロボットの動作は複雑化しつつあり、シナリオが多岐にわたるため、シナリオの作成工数の作業量が大きくなってしまうという問題がある。また、商業施設、公共交通機関、観光地など、ロボットが用いられる現場は多様であり、ロボットによるサービスを一定水準以上で提供することが困難となっている。
(1) First Embodiment In a system for creating a scenario by combining actions of a robot such as an action and an utterance on a module basis, the action of the robot is becoming complicated and the scenario is diverse, so There is a problem that the amount of work becomes large. In addition, there are various sites where robots are used, such as commercial facilities, public transportation facilities, and sightseeing spots, and it is difficult to provide robot services at a certain level or higher.

また、モジュールの組合せは正しいが期待したシナリオ通りにロボットが動作しないということがある。そのため、テストデータを入力して事前にシナリオ通りに動作するかを検証する必要がある。しかしながら、従来の技術では、シナリオをロボットに送付して実行することが可能であるが、変更後のシナリオに対して動作検証が事前にできない。また、従来の技術では、プログラムやデータをモジュール単位にて事前に繋ぎ合わせることが可能であるか否かの事前判断はできるが、シナリオ内の変更を行った結果、シナリオ通りに動作するかを事前に検証できない。   Also, the combination of modules may be correct but the robot does not operate according to the expected scenario. Therefore, it is necessary to input test data and verify in advance whether it works according to the scenario. However, in the prior art, although it is possible to send a scenario to a robot and execute it, operation verification can not be performed in advance for the changed scenario. Moreover, in the prior art, although it can be determined in advance whether it is possible to connect programs and data in module units in advance, it is possible to operate according to the scenario as a result of making a change in the scenario. It can not be verified in advance.

そこで、本実施の形態では、ロボット装置制御システムの保守性を高めるために、シナリオを適切に編集可能な構成(方法)について説明する。また、ロボット装置制御システムの保守性を高めるために、編集したシナリオに対して事前に検証可能な構成(方法)について説明する。   Therefore, in the present embodiment, a configuration (method) capable of appropriately editing a scenario will be described in order to improve the maintainability of the robot device control system. Also, in order to improve the maintainability of the robot device control system, a configuration (method) that can be verified in advance with respect to the edited scenario will be described.

図1において、1000は全体として第1の実施の形態によるロボット装置制御システムを示す。ロボット装置制御システム1000は、シナリオ作成装置1、データ変換装置2、シナリオ表示端末装置3、シナリオ処理装置4、ロボット装置5、および検索エンジン6を備え、これらは、ネットワーク7を介して通信可能に接続されている。   In FIG. 1, reference numeral 1000 generally indicates a robot apparatus control system according to the first embodiment. The robot device control system 1000 includes a scenario creation device 1, a data conversion device 2, a scenario display terminal device 3, a scenario processing device 4, a robot device 5 and a search engine 6, which can be communicated via the network 7. It is connected.

シナリオ作成装置1は、ロボット装置5を動作させるためのモジュールを組み合わせてシナリオを作成する装置であって、ノートパソコン、サーバ装置等であり、図示は省略するCPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、NIC(Network Interface Card)などを含んで構成される。   The scenario creating device 1 is a device that creates a scenario by combining modules for operating the robot device 5 and is a notebook computer, a server device, etc., and a CPU (Central Processing Unit), RAM (Random Access Memory, ROM (Read Only Memory), HDD (Hard Disk Drive), NIC (Network Interface Card), etc. are comprised.

シナリオ作成装置1の機能(モジュール受付部101、テストモジュール登録部102、シナリオ作成部103、出力部104など)は、例えば、CPUがROMに格納されたプログラムをRAMに読み出して実行すること(ソフトウェア)により実現されてもよいし、専用の回路などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。また、シナリオ作成装置1の機能の一部は、シナリオ作成装置1と通信可能な他のコンピュータ(シナリオ処理装置4等であってもよい。)により実現されてもよい。   The functions of the scenario creation device 1 (the module reception unit 101, the test module registration unit 102, the scenario creation unit 103, the output unit 104, and the like) are, for example, that the CPU reads a program stored in the ROM to the RAM and executes it (software Or may be realized by hardware such as a dedicated circuit, or may be realized by combining software and hardware. In addition, a part of the functions of the scenario creation device 1 may be realized by another computer (which may be the scenario processing device 4 or the like) that can communicate with the scenario creation device 1.

また、シナリオ作成装置1は、通信部10Bを備える。通信部10Bは、例えば、NICから構成され、シナリオ処理装置4等との通信時におけるプロトコル制御を行う。   The scenario creation device 1 further includes a communication unit 10B. The communication unit 10B includes, for example, an NIC and performs protocol control at the time of communication with the scenario processing device 4 or the like.

シナリオ作成装置1は、シナリオ管理DB11と、モジュールDB12と、パラメタDB13と、シナリオテンプレートDB14と、テストモジュールDB15と、テストテーブル16と、モジュールファイル17と、シナリオテンプレートファイル18と、テストモジュールファイル19とをHDDなどの記憶装置に記憶(格納)する。   The scenario creating device 1 includes a scenario management DB 11, a module DB 12, a parameter DB 13, a scenario template DB 14, a test module DB 15, a test table 16, a module file 17, a scenario template file 18, a test module file 19, and Are stored in a storage device such as an HDD.

なお、シナリオ作成装置1の詳細については図2〜図13を用いて後述する。   The details of the scenario creation device 1 will be described later with reference to FIGS.

データ変換装置2は、シナリオ作成装置1と同様、CPU等を含むノートパソコン、サーバ装置等であり、概念DB21と、音声DB22と、映像DB23と、音声ファイル24と、映像ファイル25と、データ変換部26と、通信部27とを備える。   The data conversion device 2 is, like the scenario creation device 1, a notebook computer including a CPU, a server device, etc., and the concept DB 21, audio DB 22, video DB 23, audio file 24, video file 25, data conversion A unit 26 and a communication unit 27 are provided.

概念DB21は、シナリオの実施時に想定される概念を扱うDBであり、概念DB21には、DB内でユニークとなる概念IDと概念データとの情報が対応付けられて格納されている。概念データは、箇条書きのテキスト形式のデータであってもよいし、機械的に解釈できる文法に従いバイナリ化されたデータであってもよい。   The concept DB 21 is a DB handling a concept assumed at the time of implementation of a scenario, and the concept DB 21 stores information of concept ID and concept data that are unique in the DB in association with each other. The conceptual data may be itemized text data or may be binary data according to a machine-interpretable grammar.

音声DB22は、概念データと対になる音声が管理されたDBであり、音声DB22には、DB内でユニークとなる音声IDと、概念DB21の概念IDを示す概念IDと、音声ファイル名との情報が対応付けられて格納されている。音声ファイル名の音声ファイルは、音声ファイル24として格納されている。   The voice DB 22 is a DB in which voice paired with concept data is managed, and the voice DB 22 includes a voice ID that is unique in the DB, a concept ID indicating a concept ID of the concept DB 21, and a voice file name. Information is associated and stored. The audio file having the audio file name is stored as the audio file 24.

映像DB23は、概念データと対になる映像が管理されたDBであり、映像DB23には、DB内でユニークとなる映像IDと、概念DB21の概念IDを示す概念IDと、映像ファイル名との情報が対応付けられて格納されている。映像ファイル名の映像ファイルは、映像ファイル25として格納されている。   The video DB 23 is a DB in which a video to be paired with concept data is managed, and the video DB 23 includes a video ID unique in the DB, a concept ID indicating a concept ID of the concept DB 21, and a video file name. Information is associated and stored. The video file having the video file name is stored as the video file 25.

データ変換装置2は、音声データから概念データ、映像データから概念データ、概念データから音声データ、概念データから映像データへのそれぞれデータ変換を行う。また、データ変換装置2は、音声データから概念データ、映像データから概念データに変換した際に、概念DB21に変換した概念データに近いデータが無い場合には、検索エンジン6より概念データと対になる音声データ、映像データを取得してそれぞれ概念DB21、音声DB22、映像DB23にレコードを追加する。   The data conversion device 2 performs data conversion from audio data to concept data, from video data to concept data, from concept data to audio data, and from concept data to video data. In addition, when the data conversion device 2 converts audio data to concept data and video data to concept data, if there is no data close to the concept data converted to the concept DB 21, the data conversion device 2 is paired with the concept data from the search engine 6 The audio data and the video data are acquired, and the records are added to the concept DB 21, the audio DB 22 and the video DB 23, respectively.

より具体的には、データ変換装置2は、シナリオ作成装置1またはシナリオ処理装置4からの受信待ちを行う。なお、シナリオ作成装置1またはシナリオ処理装置4からの受信データは、変換前データと、変換前データ型と、変換後データ型との3つで構成される。   More specifically, the data conversion device 2 waits for reception from the scenario creation device 1 or the scenario processing device 4. The received data from the scenario creating device 1 or the scenario processing device 4 is composed of three data before conversion, a data type before conversion, and a data type after conversion.

続いて、データ変換装置2は、変換前データ型が概念データ型であるか否かを判定する。続いて、データ変換装置2は、変換前データ型が概念データ型であると判定した場合、変換後データ型は音声データ型であるか否かを判定する。続いて、データ変換装置2は、変換後データ型が音声データ型であると判定した場合、音声DB22を検索し、該当の音声ファイル24のデータを応答データにセットし、変換後データ型が音声データ型でないと判定した場合、映像DB23を検索し、該当の映像ファイル25を応答データにセットする。   Subsequently, the data conversion apparatus 2 determines whether the pre-conversion data type is a conceptual data type. Subsequently, when the data conversion device 2 determines that the pre-conversion data type is a conceptual data type, the data conversion device 2 determines whether the post-conversion data type is an audio data type. Subsequently, when it is determined that the data type after conversion is the voice data type, the data conversion device 2 searches the voice DB 22 and sets data of the corresponding voice file 24 as response data, and the data type after conversion is voice. If it is determined that the data type is not the data type, the video DB 23 is searched, and the corresponding video file 25 is set as the response data.

データ変換装置2は、変換前データ型が概念データ型でないと判定した場合、変換前データ型が音声データ型であるか否かを判定する。データ変換装置2は、変換前データ型が音声データ型であると判定した場合、音声データを概念データに変換し、変換前データ型が音声データでないと判定した場合、映像データを概念データに変換する。   If the data conversion device 2 determines that the pre-conversion data type is not a conceptual data type, the data conversion device 2 determines whether the pre-conversion data type is an audio data type. If the data conversion device 2 determines that the pre-conversion data type is an audio data type, it converts the audio data to conceptual data, and if it determines that the pre-conversion data type is not audio data, converts the video data to conceptual data Do.

また、データ変換装置2は、概念DB21より、近似の概念データを持つレコードを検索し、近似の概念データがあるか否かの判定を行う。データ変換装置2は、近似の概念IDがあると判定した場合、応答データに検索したレコードの概念IDをセットする。データ変換装置2は、近似の概念IDがなかったと判定した場合、検索エンジン6に概念データを入力し、音声データと映像データとを取得し、概念DB21に変換後の概念データを追加し、音声DB22に取得した音声データと追加(新規に採番)した概念IDをセットにして追加し、音声データをファイル化して音声ファイル24に追加し、映像DB23に取得した音声データと新規に採番した概念IDをセットにして追加し、映像データをファイル化して映像ファイル25に追加し、応答データに新規に採番した概念IDをセットする。   Further, the data conversion apparatus 2 searches the concept DB 21 for a record having approximate concept data, and determines whether there is approximate concept data. If it is determined that there is an approximate concept ID, the data conversion apparatus 2 sets the concept ID of the retrieved record in the response data. If the data conversion device 2 determines that there is no approximate concept ID, it inputs conceptual data to the search engine 6, acquires audio data and video data, adds the converted conceptual data to the conceptual DB 21, and then generates audio The voice data acquired in the DB 22 and the added (newly numbered) concept ID are added as a set, and the voice data is filed and added to the audio file 24, and the voice data acquired in the video DB 23 is newly numbered The concept ID is added as a set, the video data is filed and added to the video file 25, and the newly assigned concept ID is set in the response data.

以上のように、データ変換装置2は、変換後データをセットし、変換後データをシナリオ作成装置1またはシナリオ処理装置4に送信する。例えば、シナリオ作成装置1とデータ変換装置2とは、シナリオ作成装置1が出力部104でシナリオのテスト中に、音声または映像を概念に変換する際、概念から音声または映像に変換する際に通信を行う。   As described above, the data conversion device 2 sets data after conversion, and transmits the data after conversion to the scenario creation device 1 or the scenario processing device 4. For example, the scenario creating device 1 and the data conversion device 2 communicate when the scenario creating device 1 converts audio or video into a concept during test of a scenario with the output unit 104 and converts the concept into audio or video. I do.

シナリオ表示端末装置3は、シナリオ作成装置1と同様、CPU等を含むノートパソコン、クライアント装置等であり、シナリオ表示部31と、通信部32とを備える。   The scenario display terminal device 3 is a notebook computer including a CPU or the like, a client device or the like, as in the scenario creating device 1, and includes a scenario display unit 31 and a communication unit 32.

シナリオ表示部31は、例えば、シナリオ作成装置1のシナリオ編集部10Aを介して、シナリオ管理DB11、モジュールDB12、パラメタDB13、シナリオテンプレートDB14、テストモジュールDB15等の編集、その編集に係る表示を行う。   The scenario display unit 31 edits the scenario management DB 11, the module DB 12, the parameter DB 13, the scenario template DB 14, the test module DB 15 and the like via the scenario editing unit 10A of the scenario creating device 1, for example, and displays the editing.

通信部32は、例えば、シナリオ表示部31によりシナリオの編集が行われる際に、シナリオ作成装置1の通信部10Bと通信を行う。   The communication unit 32 communicates with the communication unit 10B of the scenario creation device 1 when, for example, the scenario display unit 31 edits a scenario.

シナリオ処理装置4は、シナリオ作成装置1と同様、CPU等を含むノートパソコン、サーバ装置等であり、号機管理DB41と、出力データテーブル42と、シナリオテンプレートファイル43と、シナリオ処理部44と、通信部45とを備える。   The scenario processing device 4 is, like the scenario creating device 1, a notebook computer including a CPU, a server device, etc., and a device management DB 41, an output data table 42, a scenario template file 43, a scenario processing unit 44, and communication And a unit 45.

通信部45は、シナリオ作成装置1の通信部10Bと、データ変換装置2の通信部27と、ロボット装置5の通信部56と通信を行う。通信部45は、例えば、シナリオ作成装置1がシナリオ処理装置4のシナリオテンプレートファイル43を変更するときにシナリオ作成装置1と通信を行う。また、例えば、通信部45は、シナリオ処理装置4がシナリオ処理部44でシナリオの実行中に、音声または映像を概念に変換する際、概念から音声または映像に変換する際にデータ変換装置2と通信を行う。   The communication unit 45 communicates with the communication unit 10 B of the scenario creation device 1, the communication unit 27 of the data conversion device 2, and the communication unit 56 of the robot device 5. The communication unit 45 communicates with the scenario creation device 1 when, for example, the scenario creation device 1 changes the scenario template file 43 of the scenario processing device 4. Also, for example, when the scenario processing unit 4 converts voice or video into a concept while the scenario processing unit 4 is executing a scenario, for example, the communication unit 45 converts the concept into voice or video when converting the concept into voice or video. Communicate.

また、シナリオ処理装置4は、ロボット装置5の動作、動作条件が規定されたシナリオを処理する装置であり、ロボット装置5で収集された音声、画像などに基づいてロボット装置5に対して制御指令を送信する。かかる制御により、ロボット装置5では、施設案内、商品紹介、受付対応、顧客呼び込み等のサービスが提供される。   The scenario processing device 4 is a device that processes a scenario in which the operation and operating conditions of the robot device 5 are defined, and the control command to the robot device 5 based on the voices and images collected by the robot device 5. Send By such control, the robot apparatus 5 provides services such as facility guidance, product introduction, reception response, customer call-in, and the like.

なお、シナリオ処理装置4の詳細については図14〜図16を用いて後述する。   The details of the scenario processing device 4 will be described later with reference to FIGS. 14 to 16.

ロボット装置5は、号機部51と、ハードウェア入力部52と、ハードウェア出力部53と、データ記録部54と、制御部55と、通信部56とを備える。   The robot apparatus 5 includes a elevator unit 51, a hardware input unit 52, a hardware output unit 53, a data recording unit 54, a control unit 55, and a communication unit 56.

ロボット装置5の号機部51には、号機と、シナリオ処理装置4との通信に必要なIPアドレスとが含まれている。   The machine unit 51 of the robot apparatus 5 includes the machine and an IP address necessary for communication with the scenario processing apparatus 4.

ハードウェア入力部52は、ロボット装置5内での入力を扱うものであり、カメラ部、マイク部、センサ部などを含んで構成される。   The hardware input unit 52 handles input in the robot device 5 and includes a camera unit, a microphone unit, a sensor unit, and the like.

ハードウェア出力部53は、ロボット装置5内での出力を扱うものであり、アーム部、回転モータ部、ローラ部、スピーカ部、ディスプレイ部などを含んで構成される。   The hardware output unit 53 handles output in the robot apparatus 5 and includes an arm unit, a rotary motor unit, a roller unit, a speaker unit, a display unit, and the like.

データ記録部54は、通信、制御情報をリアルタイムに保存しているメモリ等であり、メモリが満杯の場合には古い順にデータが消去されるようになっている。   The data recording unit 54 is a memory or the like that stores communication and control information in real time, and when the memory is full, data is erased in order from the oldest.

制御部55は、ロボット装置5の動作を制御する。   The control unit 55 controls the operation of the robot apparatus 5.

より具体的には、ロボット装置5が起動すると、制御部55は、カメラ部の入力タスク起動し、マイク部の入力タスク起動し、センサ部の入力タスク起動し、アーム部の出力タスク起動し、回転モータ部の出力タスク起動し、ローラ部の出力タスク起動し、スピーカ部の出力タスク起動し、ディスプレイ部の入力タスク起動し、入力データ送信タスク起動し、出力データ受信タスク起動する。なお、それぞれのタスクについては、独立して動作できるようになっている。   More specifically, when the robot device 5 is activated, the control unit 55 activates the input task of the camera unit, activates the input task of the microphone unit, activates the input task of the sensor unit, and activates the output task of the arm unit, The output task of the rotary motor unit is activated, the output task of the roller unit is activated, the output task of the speaker unit is activated, the input task of the display unit is activated, the input data transmission task is activated, and the output data reception task is activated. Each task can be operated independently.

ハードウェアの入力タスクに係る処理では、制御部55は、ハードウェアからの入力データを取得し、データ記憶部が満杯であるか否かを判定し、データ記憶部が満杯であると判定した場合、一番古い同一ハードウェアの入力データを削除し、データ記憶部に入力データを保存する。   In the process related to the hardware input task, the control unit 55 acquires input data from the hardware, determines whether the data storage unit is full, and determines that the data storage unit is full. Delete the input data of the oldest same hardware, and save the input data in the data storage unit.

ハードウェアの出力タスクに係る処理では、制御部55は、データ記憶部にハードウェアに制御出力要求があるか否かを判定し、ハードウェアへの制御出力要求があると判定した場合、ハードウェアに制御出力し、データ記憶部から制御出力要求をクリアする。   In the processing related to the hardware output task, the control unit 55 determines whether the hardware has a control output request in the data storage unit, and determines that the hardware has a control output request. Control output, and clear the control output request from the data storage unit.

入力受信タスクに係る処理では、制御部55は、シナリオ処理装置4からのデータ取得要求があるか否かを判定し、データ取得要求があると判定した場合、データ記録部54からデータを取り出し、取り出したデータをシナリオ処理装置4に送信する。   In the process related to the input reception task, the control unit 55 determines whether there is a data acquisition request from the scenario processing device 4 and, if it is determined that there is a data acquisition request, extracts data from the data recording unit 54, The taken out data is transmitted to the scenario processing device 4.

出力受信タスクに係る処理では、制御部55は、シナリオ処理装置4からの出力要求があるか否かを判定し、出力要求があると判定した場合、データ記憶部に制御出力データを書き込み、シナリオ処理装置4に受け付け完了の応答を送信する。   In the process related to the output reception task, the control unit 55 determines whether or not there is an output request from the scenario processing device 4, and when it is determined that there is an output request, writes control output data in the data storage unit. A response of acceptance completion is transmitted to the processing device 4.

ロボット装置5は、シナリオ処理装置4からの入力要求、出力要求に応答するのみでロボット装置5の通信部56は、シナリオ処理装置4の通信部45とのみ通信を行う。   The robot device 5 communicates with the communication unit 45 of the scenario processing device 4 only by responding to an input request and an output request from the scenario processing device 4.

ロボット装置5は、シナリオ処理装置4からの入力制御、出力制御のみを制御部55にて付ける構成となっていて、シナリオの進行は、シナリオ処理装置4側のシナリオ処理部44で全て実行されているため、シナリオの変更時においてロボット装置5の制御部55は、影響を受けない構成となっている。   The robot apparatus 5 is configured to attach only input control and output control from the scenario processing apparatus 4 by the control unit 55, and the progress of the scenario is all executed by the scenario processing unit 44 on the scenario processing apparatus 4 side. Therefore, the control unit 55 of the robot device 5 is not affected when the scenario is changed.

(シナリオ作成装置が備えるデータについて)
シナリオ管理DB11には、DB内でユニークとなる管理IDと、シナリオIDと、シナリオ名と、シナリオテンプレートファイル名と、動作モードとの情報が対応付けられて格納されている。シナリオテンプレートファイル名のファイルは、シナリオテンプレートファイル18として格納されている。動作モードの種別としては、「本番」および「テスト」の2種類が設けられている。なお、シナリオ管理DB11の例については、図示を省略する。
(About the data provided in the scenario creation device)
The scenario management DB 11 stores information of a management ID which is unique in the DB, a scenario ID, a scenario name, a scenario template file name, and an operation mode in association with one another. A file of scenario template file name is stored as a scenario template file 18. There are two types of operation modes, "production" and "test". The illustration of the scenario management DB 11 is omitted.

図2は、モジュールDB12の一例を示す図である。モジュールDB12には、DB内でユニークとなるモジュールID121と、モジュール名122と、制御種別123と、制御の対象になる箇所の情報の対象124と、モジュールの実行時の入力のパラメタ型125と、モジュールの実行時に出力されるデータ型の実行出力時データ型126と、モジュールファイル名127との情報が対応付けられて格納されている。例えば、モジュールは、発話する、移動する、手を振るなどの行動、立ち止まりを検知する、対面を検知するなどの画像解析、音声認識、意図解析などの音声解析のような処理単位で設けられる。   FIG. 2 is a diagram showing an example of the module DB 12. The module DB 12 includes a module ID 121 which is unique in the DB, a module name 122, a control type 123, a target 124 of information of a portion to be controlled, and a parameter type 125 of input upon execution of the module. Information of an execution output data type 126 of a data type output at the time of execution of a module and a module file name 127 are stored in association with each other. For example, the modules are provided in processing units such as speech analysis such as speech analysis, speech recognition, intention analysis and the like, speech detection, behavior such as moving and waving, and detection of stop.

ここで、制御種別123、対象124、パラメタ型125、および実行出力時データ型126は、個々のモジュールの定義情報である。   Here, the control type 123, the object 124, the parameter type 125, and the execution output data type 126 are definition information of individual modules.

制御種別123は、「入力」、「出力」、「解析」、「データ変換」、「フロー」の5種類に分かれている。パラメタ型125は、「パラメタ無し」、「テキスト型」、シナリオの実行時に別のモジュールから出力されたデータである「オブジェクト型」の3種類に分かれている。   The control type 123 is divided into five types of “input”, “output”, “analysis”, “data conversion”, and “flow”. The parameter type 125 is divided into three types: "no parameter", "text type", and "object type" which is data output from another module at the time of execution of a scenario.

制御種別123の「入力」とは、ロボット装置5などの外部からの入力データを受信する制御を示す。制御種別123の「出力」とは、ロボット装置5などの外部へ出力データを送信する制御を示す。制御種別123の「解析」とは、目的のデータであるか否かを解析する制御を示す。制御種別123の「データ変換」とは、データを別のデータ型に変換する制御を示す。制御種別123の「フロー」とは、シナリオのフロー制御を示す。シナリオは、1または複数のモジュールを含んで構成される。   The “input” of the control type 123 indicates control for receiving input data from the outside of the robot device 5 or the like. The “output” of the control type 123 indicates control for transmitting output data to the outside of the robot device 5 or the like. “Analysis” of the control type 123 indicates control for analyzing whether or not it is target data. The “data conversion” of the control type 123 indicates control for converting data into another data type. The “flow” of the control type 123 indicates flow control of a scenario. The scenario is configured to include one or more modules.

モジュールファイル名127のファイルは、モジュールファイル17として格納されている。モジュールファイル17は、モジュール(機能)に対応する実行可能なファイルである。   The file of module file name 127 is stored as a module file 17. The module file 17 is an executable file corresponding to a module (function).

図3は、パラメタDB13の一例を示す図である。パラメタDB13には、DB内でユニークとなるパラメタID131と、モジュールDB12上のモジュールID121を示すモジュールID132と、パラメタデータ133との情報が対応付けられて格納されている。なお、例えば、パラメタをテキスト型として定義しているモジュール(モジュールID「4」、「5」、「6」のモジュールなど)において、取り得るパラメタは決められているため、当該モジュールを特定するためのモジュールID132が必要となっている。   FIG. 3 is a diagram showing an example of the parameter DB 13. The parameter DB 13 stores information such as a parameter ID 131 which is unique in the DB, a module ID 132 indicating the module ID 121 on the module DB 12, and parameter data 133 in association with each other. In addition, for example, since a parameter that can be taken is determined in a module (module ID “4”, “5”, “6”, etc.) that defines parameters as text type, the module is specified. Module ID 132 is required.

図4は、シナリオテンプレートDB14の一例を示す図である。シナリオテンプレートDB14には、DB内でユニークとなるシナリオテンプレートID141と、シナリオ管理DB11のシナリオIDを示すシナリオID142と、シナリオの開始終了を定義する開始終了143と、モジュールDB12のモジュールID121を示すモジュールID144と、パラメタDB13のパラメタID131を示すパラメタID145と、別のシナリオテンプレートID141で実行されたモジュールから出力されたデータをパラメタとすることを示すパラメタシナリオテンプレートID146と、モジュールを実行した際の戻り値が成功であった場合に次に実行するシナリオテンプレートID141を示す成功時次回シナリオテンプレートID147との情報が対応付けられて格納されている。   FIG. 4 is a diagram showing an example of the scenario template DB 14. The scenario template DB 14 includes a scenario template ID 141 unique in the DB, a scenario ID 142 indicating the scenario ID of the scenario management DB 11, a start / end 143 defining the start / end of the scenario, and a module ID 144 indicating the module ID 121 of the module DB 12. , Parameter ID 145 indicating parameter ID 131 of parameter DB 13, parameter scenario template ID 146 indicating that the data output from the module executed with another scenario template ID 141 is the parameter, and return value when the module is executed are Information indicating a scenario template ID 141 to be executed next in the case of success and at the time of success next scenario template ID 147 is stored in association with each other.

なお、本実施の形態では、エラー時の処理についてはその説明を省略する。付言するならば、例えば、シナリオテンプレートDB14には、モジュールを実行した際の戻り値が失敗であった場合に次に実行するシナリオテンプレートID141を示す失敗時次回シナリオテンプレートIDの情報が対応付けられて格納されていてもよい。   In the present embodiment, the description of the process at the time of error will be omitted. To add it, for example, the scenario template DB 14 is associated with information on the next scenario template ID at the time of failure indicating the scenario template ID 141 to be executed next when the return value when the module is executed is a failure. It may be stored.

また、テストモジュールDB15には、DB内でユニークとなるテストモジュールIDと、モジュールDB12のモジュールID121を示すモジュールIDと、テストモジュールファイル名と、モジュールDB12のパラメタ型125を示すデータ型との情報が対応付けられて格納されている。テストモジュールファイル名のファイルは、テストモジュールファイル19として格納されている。データ型としては、「音声オブジェクト型(音声データ型)」、「映像オブジェクト型(映像データ型)」、「概念オブジェクト型(概念データ型)」、「センサーオブジェクト型(センサーの出力値を示すデータのデータ型)」、「テキスト型(選択言語)」、「テキスト型(次回実行シナリオテンプレートID)」等が設けられている。ここで、概念オブジェクト型は、概念データのデータ型であり、概念データは、音声データと映像データとを紐づけるための中間的なデータであることから、処理済中間データ型とも言い得る。なお、テストモジュールDB15の例については図示を省略する。   In addition, the test module DB 15 includes information of a test module ID unique in the DB, a module ID indicating a module ID 121 of the module DB 12, a test module file name, and a data type indicating a parameter type 125 of the module DB 12. It is associated and stored. The test module file name file is stored as a test module file 19. As data types, "audio object type (audio data type)", "video object type (video data type)", "concept object type (concept data type)", "sensor object type (data indicating output value of sensor)" Data types), "text type (selected language)", "text type (next execution scenario template ID)" and the like are provided. Here, since the conceptual object type is a data type of conceptual data, and the conceptual data is intermediate data for linking audio data and video data, it can also be referred to as a processed intermediate data type. The illustration of the test module DB 15 is omitted.

図5は、テストテーブル16の一例を示す図である。テストテーブル16は、シナリオ編集部10Aにてシナリオの編集が行われる際に更新されるテーブルである。テストテーブル16は、シナリオ作成装置1でシナリオのテストを行うために必要なテーブルであり、シナリオを実行するシナリオ処理装置4が持つ出力データテーブル42と同一のテーブル構成になっている。   FIG. 5 is a diagram showing an example of the test table 16. The test table 16 is a table updated when scenario editing is performed in the scenario editing unit 10A. The test table 16 is a table necessary to test a scenario in the scenario creating device 1 and has the same table configuration as the output data table 42 of the scenario processing device 4 that executes the scenario.

テストテーブル16には、号機161と、シナリオ管理DB11のシナリオIDを示すシナリオID162と、シナリオテンプレートDB14のシナリオテンプレートID141を示すシナリオテンプレートID163と、出力データポインタアドレス164と、データ型165との情報が対応付けられて格納されている。   The test table 16 includes information of a machine 161, a scenario ID 162 indicating a scenario ID of the scenario management DB 11, a scenario template ID 163 indicating a scenario template ID 141 of the scenario template DB 14, an output data pointer address 164, and a data type 165. It is associated and stored.

図6は、シナリオテンプレートファイル18の一例を示す図である。シナリオテンプレートファイル18は、シナリオ表示端末装置3よりシナリオ作成装置1のシナリオ編集部10Aを介して、シナリオ作成装置1内のシナリオ管理DB11、モジュールDB12、パラメタDB13、シナリオテンプレートDB14、モジュールファイル17のいずれかが変更された場合に更新される。   FIG. 6 is a diagram showing an example of the scenario template file 18. The scenario template file 18 is any of the scenario management DB 11, the module DB 12, the parameter DB 13, the scenario template DB 14, and the module file 17 in the scenario creating device 1 from the scenario display terminal device 3 via the scenario editing unit 10A of the scenario creating device 1. It is updated when a change is made.

図6では、シナリオテンプレートファイル18の中で本番用のシナリオIDが「1」である本番用シナリオID1シナリオテンプレートファイルの構成要素の一例を示している。   FIG. 6 shows an example of the components of the production scenario ID 1 scenario template file whose production scenario ID is “1” in the scenario template file 18.

なお、図6では、本番用シナリオID1シナリオテンプレートファイルの例を示したが、テスト用シナリオID1シナリオテンプレートファイルも同様であり、同一シナリオIDの本番用とテスト用との差異は、シナリオ1シナリオ管理DB181のシナリオテンプレートファイル名および動作モードのみである。   Although FIG. 6 shows an example of the scenario ID1 scenario template file for production, the scenario ID1 scenario template file for test is the same, and the difference between the production and test for the same scenario ID is scenario 1 scenario management. It is only the scenario template file name and operation mode of DB181.

(シナリオ作成装置が作成するシナリオについて)
従来、発話、行動等の個別要素を繋いでサービス(シナリオ)の流れが構成されている。しかしながら、シナリオが多岐にわたるため、シナリオを個別に作成すると、シナリオの作成工数の作業量が大きくなってしまったり、良質なサービスを均一に提供することが困難となってしまったりする。
(About the scenario created by the scenario creation device)
Conventionally, flows of services (scenarios) are configured by connecting individual elements such as speech and behavior. However, since there are various scenarios, if the scenarios are individually created, the amount of work for creating the scenarios becomes large, and it becomes difficult to uniformly provide good service.

そこで、ロボット装置制御システム1000では、シナリオを共通処理(開始処理、終了処理など)と個別処理とに分類して全体を1つの標準シナリオとして構築し、複数の個別処理(例えば、モジュール)を予め用意し、個別処理のテンプレート(シナリオテンプレート)を作成し、サービスに合わせて必要な個別処理がユーザにより選択されることでシナリオが作成される構成を採用する。なお、シナリオテンプレートに規定される共通処理については図示を省略する。   Therefore, in the robot device control system 1000, the scenario is classified into common processing (start processing, end processing, etc.) and individual processing, and the whole is constructed as one standard scenario, and a plurality of individual processing (for example, modules) are made in advance. Prepare a template for individual processing (scenario template), and adopt a configuration in which a scenario is generated by the user selecting the necessary individual processing according to the service. The illustration of the common processing defined in the scenario template is omitted.

ここで、開始処理としては、ロボット装置5がホームポジションから顧客のもとまで移動する処理が挙げられる。例えば、開始処理では、ロボット装置5は、初期ポジションにて起動を行い、顧客を待つ顧客待ちの状態に遷移し、顧客待ちの状態において音声、映像による顧客の立止りを検知すると、顧客のもとに移動して対面待ちの状態に遷移し、顧客の対面を検知すると、対話状態に遷移する。また、個別処理としては、サービスに応じて対話(発話、行動、表示など)する処理が挙げられる。また、終了処理としては、対話が終了すると、ロボット装置5がホームポジションに戻る処理が挙げられる。   Here, examples of the start process include a process in which the robot device 5 moves from the home position to the customer. For example, in the start process, the robot device 5 starts at an initial position, transitions to a customer waiting state for waiting for a customer, and detects a customer stopping by voice or video in a customer waiting state. And move to a state of waiting for a meeting, and when detecting a customer's face-to-face transition to a state of interaction. Further, as the individual processing, processing to interact (utter, act, display, etc.) according to the service may be mentioned. Further, as the end process, there is a process in which the robot device 5 returns to the home position when the dialogue ends.

つまり、従来は、要件定義、シナリオ設計、発話内容決定、ソフト設計の工程を行い、それに応じた試験工程を実施していたが、個別処理の選択方式によれば、事前のシナリオをベースとすることで要件定義の工数が削減され、シナリオ設計からシナリオの選択に変わるため、シナリオ設計の工数が不要になり、ソフト設計の工程も不要となる。   That is, conventionally, the process of requirements definition, scenario design, utterance content determination, software design was performed, and the test process corresponding to it was performed, but according to the selection method of individual processing, it is based on the scenario in advance. As a result, the number of process steps for requirement definition is reduced, and the scenario design is changed to the selection of a scenario, which eliminates the need for the scenario design process and the process of software design.

また、ロボット装置制御システム1000では、少なくとも1つの命令を含むモジュールを格納するモジュールDB12から、モジュールが選択され、実行順序、実行条件、繰り返し回数などのオプション情報が追加され、シナリオが作成される。また、各モジュールに対応したテストモジュールがテストモジュールDB15から読み出され、作成されたシナリオに対応するテストパターンが自動生成されて自動実行されることで、テストの省力化が図られる。   Further, in the robot device control system 1000, a module is selected from the module DB 12 storing a module including at least one instruction, option information such as execution order, execution condition, number of repetitions is added, and a scenario is created. Further, a test module corresponding to each module is read from the test module DB 15, and a test pattern corresponding to the created scenario is automatically generated and automatically executed, thereby saving the labor of the test.

シナリオのテスト(テストパターンの自動生成および自動実行)については、シナリオの作成時とシナリオの変更時とで基本的な処理(モジュールを受け付け、テストモジュールを登録し、シナリオを作成し、出力する処理)は同様であるので、以下では、シナリオが変更されたケースを例に挙げて、テストパターンの自動生成および自動実行について説明する。   For scenario testing (automatic generation and execution of test patterns), basic processing at the time of creating a scenario and at the time of changing a scenario (accepting a module, registering a test module, creating a scenario, and outputting it) Since the same is true, in the following, automatic generation and execution of test patterns will be described by taking a case in which a scenario is changed as an example.

(シナリオ作成装置が実施するシナリオのテストについて)
図7は、シナリオ編集部10Aが実行するシナリオ編集処理に係る処理手順の一例を示す図である。シナリオ表示端末装置3のシナリオ表示部31からの指示に基づいて、シナリオ作成装置1のシナリオ編集処理が実行される。
(About the test of the scenario performed by the scenario creation device)
FIG. 7 is a diagram showing an example of a processing procedure related to the scenario editing process performed by the scenario editing unit 10A. The scenario editing process of the scenario creating device 1 is executed based on an instruction from the scenario display unit 31 of the scenario display terminal device 3.

シナリオ編集部10Aは、シナリオ表示部31を介して選択された号機(例えば「1号機」)をセットする(ステップS701)。   The scenario editing unit 10A sets the selected machine (for example, "No. 1") via the scenario display unit 31 (step S701).

続いて、シナリオ編集部10Aは、シナリオ管理DB11から、変更を行うシナリオのシナリオIDを選択し、動作モードが「本番」と「テスト」との2レコードを取得する(ステップS702)。以下では、シナリオ表示部31を介してシナリオID「1」(管理ID「1」および「2」)が選択されたとして適宜に説明する。   Subsequently, the scenario editing unit 10A selects, from the scenario management DB 11, the scenario ID of the scenario to be changed, and acquires two records whose operation mode is “production” and “test” (step S702). In the following, it will be appropriately described that scenario ID “1” (management ID “1” and “2”) is selected via the scenario display unit 31.

続いて、シナリオ編集部10Aは、シナリオテンプレートID14から、選択したシナリオIDと同じシナリオID142を持つレコードを取得する(ステップS703)。例えば、シナリオ編集部10Aは、シナリオID142「1」を持つシナリオテンプレートID141「1」〜「17」のレコードを取得する。   Then, the scenario editing unit 10A acquires a record having the same scenario ID 142 as the selected scenario ID from the scenario template ID 14 (step S703). For example, the scenario editing unit 10A acquires records of scenario template IDs 141 “1” to “17” having the scenario ID 142 “1”.

続いて、シナリオ編集部10Aは、シナリオテンプレートID14から取得したレコードから、シナリオ表示部31を介して変更を行うレコードを1つ選択し、選択したレコードのシナリオテンプレートID141を記憶する(ステップS704)。   Subsequently, the scenario editing unit 10A selects one record to be changed through the scenario display unit 31 from the records acquired from the scenario template ID 14, and stores the scenario template ID 141 of the selected record (step S704).

続いて、シナリオ編集部10Aは、モジュール受付処理を実行する(ステップS705)。モジュール受付処理では、例えば、ロボット装置5を動作させる命令を含む複数のモジュールからモジュールの選択が受け付けられる。モジュール受付処理の詳細については、図8を用いて説明する。   Subsequently, the scenario editing unit 10A executes a module reception process (step S705). In the module reception process, for example, selection of a module from a plurality of modules including an instruction to operate the robot device 5 is received. The details of the module reception process will be described with reference to FIG.

続いて、シナリオ編集部10Aは、テストモジュール登録処理を実行する(ステップS706)。テストモジュール登録処理では、例えば、受け付けられたモジュールに対応するテストモジュールがテストモジュールDB15から選択され、テストテーブル16に登録される。テストモジュール登録処理の詳細については、図9を用いて説明する。   Subsequently, the scenario editing unit 10A executes a test module registration process (step S706). In the test module registration process, for example, a test module corresponding to the accepted module is selected from the test module DB 15 and registered in the test table 16. The details of the test module registration process will be described with reference to FIG.

続いて、シナリオ編集部10Aは、シナリオ作成処理を実行する(ステップS707)。シナリオ作成処理では、例えば、開始処理と終了処理とが規定されたシナリオテンプレートに、選択されたモジュールが組み込まれて実行可能なシナリオが作成される。シナリオ作成処理の詳細については、図10を用いて説明する。   Subsequently, the scenario editing unit 10A executes a scenario creation process (step S707). In the scenario creation process, for example, the selected module is included in a scenario template in which the start process and the end process are defined, and an executable scenario is created. The details of the scenario creation process will be described with reference to FIG.

続いて、シナリオ編集部10Aは、出力処理を実行する(ステップS708)。出力処理では、作成されたシナリオが出力される。出力処理の詳細については、図11を用いて説明する。   Subsequently, the scenario editing unit 10A executes an output process (step S708). In the output process, the created scenario is output. The details of the output processing will be described with reference to FIG.

図8は、モジュール受付部101が実行するモジュール受付処理に係る処理手順の一例を示す図である。   FIG. 8 is a diagram illustrating an example of a processing procedure related to a module reception process performed by the module reception unit 101.

モジュール受付部101は、ステップS704で取得されたシナリオテンプレートID141を取得する(ステップS801)。   The module receiving unit 101 acquires the scenario template ID 141 acquired in step S704 (step S801).

続いて、モジュール受付部101は、シナリオ表示部31を介してモジュールDB12からモジュールを選択(ユーザが変更すると指定したモジュールを選択)する(ステップS802)。   Subsequently, the module receiving unit 101 selects a module from the module DB 12 via the scenario display unit 31 (selects a module designated to be changed by the user) (step S802).

続いて、モジュール受付部101は、シナリオテンプレートDB14のモジュールID144を更新する(ステップS803)。より具体的には、モジュール受付部101は、ステップS801で取得したシナリオテンプレートID141のレコードのモジュールID144にステップS802で選択したモジュールのモジュールID121をセットする。   Subsequently, the module receiving unit 101 updates the module ID 144 of the scenario template DB 14 (step S803). More specifically, the module receiving unit 101 sets the module ID 121 of the module selected in step S802 to the module ID 144 of the record of the scenario template ID 141 acquired in step S801.

続いて、モジュール受付部101は、モジュールDB12を参照して選択したモジュールのパラメタ型125を取得し、当該パラメタ型125が「パラメタ無し」(引数無し)であるか否かを判定する(ステップS804)。モジュール受付部101は、引数無しであると判定した場合、ステップS815に処理を移し、引数有りであると判定した場合、ステップS805に処理を移す。   Subsequently, the module receiving unit 101 refers to the module DB 12 to acquire the parameter type 125 of the selected module, and determines whether the parameter type 125 is “no parameter” (no argument) (step S804). ). If the module receiving unit 101 determines that there is no argument, the process proceeds to step S815. If it is determined that there is an argument, the process proceeds to step S805.

ステップS805では、モジュール受付部101は、当該パラメタ型125がテキスト型であるか否かを判定する。モジュール受付部101は、テキスト型であると判定した場合、ステップS806に処理を移し、テキスト型でないと判定した場合、ステップS809に処理を移す。   In step S805, the module receiving unit 101 determines whether the parameter type 125 is a text type. If the module receiving unit 101 determines that the type is the text type, the process proceeds to step S806, and if it is determined that the type is not the text type, the process proceeds to step S809.

ステップS806では、モジュール受付部101は、パラメタDB13から、選択したモジュールのモジュールID121を持つレコードのパラメタID131を取得する。例えば、モジュール受付部101は、モジュールID121が「5」である場合、モジュールID132が「5」であるパラメタID131として「4」、「5」、「6」を取得する。   In step S806, the module receiving unit 101 acquires, from the parameter DB 13, the parameter ID 131 of the record having the module ID 121 of the selected module. For example, when the module ID 121 is “5”, the module reception unit 101 acquires “4”, “5”, and “6” as the parameter ID 131 whose module ID 132 is “5”.

続いて、モジュール受付部101は、シナリオ表示部31を介して、ステップS806で取得したパラメタID131の中からパラメタID131を1つ選択(ユーザが用いると指定したパラメタのパラメタID131を選択)する(ステップS807)。   Subsequently, the module receiving unit 101 selects one parameter ID 131 from the parameter IDs 131 acquired in step S 806 (selects the parameter ID 131 of the parameter designated to be used by the user) through the scenario display unit 31 (step S807).

続いて、モジュール受付部101は、シナリオテンプレートDB14のパラメタID145を更新し(ステップS808)、ステップS815に処理を移す。より具体的には、モジュール受付部101は、ステップS801で取得したシナリオテンプレートID141のレコードのパラメタID145にステップS807で選択したパラメタID131をセットする。   Subsequently, the module receiving unit 101 updates the parameter ID 145 of the scenario template DB 14 (step S808), and the process proceeds to step S815. More specifically, the module receiving unit 101 sets the parameter ID 131 selected in step S 807 in the parameter ID 145 of the record of the scenario template ID 141 acquired in step S 801.

ステップS809では、モジュール受付部101は、当該パラメタ型125がオブジェクト型であるか否かを判定する。モジュール受付部101は、オブジェクト型であると判定した場合、ステップS810に処理を移し、オブジェクト型でないと判定した場合、ステップS815に処理を移す。   In step S809, the module receiving unit 101 determines whether the parameter type 125 is an object type. If the module receiving unit 101 determines that the type is an object type, the process proceeds to step S810. If it is determined that the type is not an object type, the process proceeds to step S815.

ステップS810では、モジュール受付部101は、シナリオテンプレートDB14から、ステップS801で取得したシナリオテンプレートID141と同じシナリオID142を持つレコードを取得する。   In step S810, the module receiving unit 101 acquires, from the scenario template DB 14, a record having the same scenario ID 142 as the scenario template ID 141 acquired in step S801.

続いて、モジュール受付部101は、ステップS810で取得したレコードのモジュールID144を取り出し、モジュールDB12より同じモジュールID121を持つレコードを取得し、実行出力時データ型126を取得する(ステップS811)。   Subsequently, the module receiving unit 101 takes out the module ID 144 of the record acquired in step S810, acquires the record having the same module ID 121 from the module DB 12, and acquires the data type for execution output 126 (step S811).

続いて、モジュール受付部101は、モジュールが連結可能であるか否かのチェックを行うため、ステップS810のレコードとステップS811のデータ型とを突き合わせ、ステップS810で取得したシナリオテンプレートDB14のレコードの中から、選択したモジュールのモジュールID144を持つレコードのパラメタ型と同じ実行出力時データ型126を持つモジュールID121を持つレコードを取得する(ステップS812)。   Subsequently, in order to check whether or not the module can be connected, the module reception unit 101 matches the record of step S810 with the data type of step S811, and among the records of the scenario template DB 14 acquired in step S810. From the above, the record having the module ID 121 having the same execution output data type 126 as the parameter type of the record having the module ID 144 of the selected module is acquired (step S812).

続いて、モジュール受付部101は、ステップS812で取得したレコードの中から、シナリオ表示部31を介して、連結させるためのシナリオテンプレートID141を選択(ユーザが連結すると指定したシナリオテンプレートのシナリオテンプレートID141を選択)する(ステップS813)。   Subsequently, the module receiving unit 101 selects a scenario template ID 141 to be linked from the records acquired in step S 812 via the scenario display unit 31 (the scenario template ID 141 of the scenario template designated to be linked by the user). Selection is performed (step S813).

続いて、モジュール受付部101は、シナリオテンプレートDB14のパラメタシナリオテンプレートID146を更新する(ステップS814)。より具体的には、モジュール受付部101は、ステップS801で取得したシナリオテンプレートID141のレコードのパラメタシナリオテンプレートID146にステップS813で選択したシナリオテンプレートID141をセットする。   Subsequently, the module receiving unit 101 updates the parameter scenario template ID 146 of the scenario template DB 14 (step S 814). More specifically, the module receiving unit 101 sets the scenario template ID 141 selected in step S813 in the parameter scenario template ID 146 of the record of the scenario template ID 141 acquired in step S801.

ステップS815では、モジュール受付部101は、開始モジュールの設定を行う。より具体的には、ユーザは、ステップS801で取得されたシナリオテンプレートID141のレコードをシナリオの実行時の開始に変更したい場合にはシナリオ表示部31を介して開始を選択し、モジュール受付部101は、ステップS703で取得したレコードの中から開始終了143が「START」のレコードを空白にセットし、ステップS801で取得したシナリオテンプレートID141のレコードの開始終了143を「START」にセットする。   In step S815, the module receiving unit 101 sets the start module. More specifically, when the user wants to change the record of the scenario template ID 141 acquired in step S 801 to the start at the time of executing the scenario, the user selects the start via the scenario display unit 31, and the module reception unit 101 Among the records acquired in step S703, the record of start / end 143 sets “START” to blank, and the start / end 143 of the record of scenario template ID 141 acquired in step S801 is set to “START”.

レコードの開始終了143の「START」を持つシナリオテンプレートのレコードのモジュールID144のモジュールが実行されると、シナリオテンプレートに係る処理が開始するため、開始終了143「START」が対応付けられたモジュールがシナリオテンプレートに係る処理の実行時の開始モジュールとなる。   When the module of module ID 144 of the record of the scenario template having "START" of the start and end 143 of the record is executed, the process related to the scenario template starts, so the module associated with the start and end 143 "START" is the scenario It becomes a start module at the time of execution of processing concerning the template.

続いて、モジュール受付部101は、終了モジュールの設定を行う(ステップS816)。より具体的には、ユーザは、ステップS801で取得されたシナリオテンプレートID141のレコードをシナリオの実行時の終了に変更したい場合にはシナリオ表示部31を介して終了を選択し、モジュール受付部101は、ステップS703で取得したレコードの中から開始終了143が「END」のレコードを空白にセットし、ステップS801で取得したシナリオテンプレートID141のレコードの開始終了143を「END」にセットする。   Subsequently, the module receiving unit 101 sets an end module (step S816). More specifically, when the user wants to change the record of the scenario template ID 141 acquired in step S 801 to the end upon execution of the scenario, the user selects the end via the scenario display unit 31, and the module reception unit 101 Among the records acquired in step S703, the record whose start / end 143 is "END" is set to blank, and the start / end 143 of the record of the scenario template ID 141 acquired in step S801 is set to "END".

レコードの開始終了143の「END」を持つシナリオテンプレートのレコードのモジュールID144のモジュールが実行されると、シナリオテンプレートに係る処理が終了するため、開始終了143「END」が対応付けられたモジュールがシナリオテンプレートに係る処理の実行時の終了モジュールとなる。   When the module of the module ID 144 of the record of the scenario template having “END” of the start and end 143 of the record is executed, the process related to the scenario template is completed, so the module associated with the start and end 143 “END” is the scenario It is an end module at the time of execution of processing related to the template.

続いて、モジュール受付部101は、ステップS801で取得したシナリオテンプレートID141のレコードの開始終了143を「END」にセットしたか否かを判定する(ステップS817)。モジュール受付部101は、「END」にセットしたと判定した場合、モジュール受付処理を終了し、「END」にセットしていないと判定した場合、ステップS818に処理を移す。   Subsequently, the module receiving unit 101 determines whether the start / end 143 of the record of the scenario template ID 141 acquired in step S801 is set to “END” (step S817). If the module receiving unit 101 determines that "END" is set, the module receiving process ends, and if it is determined that "END" is not set, the process proceeds to step S818.

ステップS818では、モジュール受付部101は、成功時のモジュールの設定を行う。より具体的には、ユーザはシナリオ表示部31を介して、ステップS703で取得されたレコードの中から成功した際に実行するシナリオテンプレートID141を選択し、モジュール受付部101は、ステップS801で取得したシナリオテンプレートID141のレコードの成功時次回シナリオテンプレートID147にセットする。   In step S 818, the module receiving unit 101 sets a module at the time of success. More specifically, the user selects a scenario template ID 141 to be executed upon success from the records acquired in step S 703 via the scenario display unit 31, and the module reception unit 101 acquires the scenario template ID 141 in step S 801. On success of the record of scenario template ID 141 The next scenario template ID 147 is set.

モジュール受付部101は、ステップS818の処理を行うと、モジュール受付処理を終了する。なお、ステップS818に続いて、モジュール受付部101は、失敗時のモジュール設定を行ってもよいが、失敗時の処理については省略する。   After performing the process of step S 818, the module reception unit 101 ends the module reception process. Although the module receiving unit 101 may perform module setting at the time of failure following step S 818, the process at the time of failure is omitted.

図9は、テストモジュール登録部102が実行するテストモジュール登録処理に係る処理手順の一例を示す図である。   FIG. 9 is a diagram illustrating an example of a processing procedure related to a test module registration process performed by the test module registration unit 102.

テストモジュール登録部102は、シナリオ管理DB11から、ステップS702で取得した動作モードが「テスト」のレコードのシナリオIDを取得する(ステップS901)。   The test module registration unit 102 acquires, from the scenario management DB 11, the scenario ID of the record whose operation mode is “test” acquired in step S702 (step S901).

続いて、テストモジュール登録部102は、シナリオテンプレートDB14から、取得したシナリオIDと同じシナリオID142を持つレコードを取得し、取得したレコードのリストを作成する(ステップS902)。   Subsequently, the test module registration unit 102 acquires a record having the same scenario ID 142 as the acquired scenario ID from the scenario template DB 14, and creates a list of the acquired records (step S902).

続いて、テストモジュール登録部102は、リストからすべて要素(レコード)を取り出したか否かを判定する(ステップS903)。テストモジュール登録部102は、取り出したと判定した場合、テストモジュール登録処理を終了し、取り出していないと判定した場合、ステップS904に処理を移す。   Subsequently, the test module registration unit 102 determines whether all elements (records) have been extracted from the list (step S903). If it is determined that the test module registration unit 102 has taken out, the test module registration processing ends, and if it is determined that the test module registration processing has not been taken out, the process proceeds to step S904.

ステップS904では、テストモジュール登録部102は、リストから要素を1件取り出す。   In step S904, the test module registration unit 102 extracts one element from the list.

続いて、テストモジュール登録部102は、テストモジュールDB15から、取り出したレコード中のモジュールID144を持つレコードを検索し、レコードがある場合は、テストモジュールファイル名とデータ型とを取得する(ステップS905)。   Subsequently, the test module registration unit 102 searches the test module DB 15 for a record having the module ID 144 in the extracted record, and when there is a record, acquires the test module file name and data type (step S905). .

続いて、テストモジュール登録部102は、レコードがあるか否かを判定する(ステップS906)。テストモジュール登録部102は、レコードがあると判定した場合、ステップS907に処理を移し、レコードがないと判定した場合、ステップS903に処理を移す。   Subsequently, the test module registration unit 102 determines whether there is a record (step S906). If the test module registration unit 102 determines that there is a record, the process proceeds to step S 907. If it is determined that there is no record, the process proceeds to step S 903.

ステップS907では、テストモジュール登録部102は、取得したテストモジュールファイル名を持つファイルをテストモジュールファイル19より取得し、ファイルのデータをメモリ上に展開し、メモリ上の先頭のポインタを出力データポインタとして取得する。   In step S 907, the test module registration unit 102 acquires a file having the acquired test module file name from the test module file 19, expands data of the file on the memory, and uses the first pointer on the memory as the output data pointer. get.

続いて、テストモジュール登録部102は、テストテーブル16にレコードを格納する(ステップS908)。より具体的には、テストモジュール登録部102は、ステップS701でセットされた号機、ステップS702で選択されたシナリオID、ステップS904で取り出したレコード中のシナリオテンプレートID141、ステップS906で取得した出力データポインタアドレス、ステップS905で取得したデータ型を持つレコードをテストテーブル16に格納する。   Subsequently, the test module registration unit 102 stores the record in the test table 16 (step S 908). More specifically, the test module registration unit 102 sets the machine set in step S701, the scenario ID selected in step S702, the scenario template ID 141 in the record extracted in step S904, and the output data pointer acquired in step S906. The record having the address and the data type acquired in step S 905 is stored in the test table 16.

ここで、人間は、耳で聞いたもの、目で見たもの等を「入力」とし、何を聞いたか、何を見たかを理解(認識)する。そして、聞いたもの、見たものの内容に応じて、動作(判断)する。この判断がロボット装置5におけるシナリオに対応する。   Here, human beings "hear" what you hear with your ears, what you see with your eyes, etc., and understand (recognize) what you heard and what you saw. Then, it operates (determines) according to the contents of what has been heard and what has been seen. This determination corresponds to the scenario in the robot apparatus 5.

しかしながら、ロボット装置5(シナリオ処理装置4)は、人間が話したことを100%理解できるものではなく、発音とかによって理解できない場合がある。そこで、上述の処理では、100%理解できるデータが読み込まれるようにしている。   However, the robot apparatus 5 (the scenario processing apparatus 4) may not understand 100% of what a human has spoken, and may not understand it by pronunciation. Therefore, in the above processing, data that can be understood 100% is read.

換言するならば、一般に音声認識の精度、画像認識の精度等の問題があるので、テストをスムーズに行うために音声データ、画像データ等を予め登録し、テストのときには予め格納されているデータが読み込まれてモジュールが実行されるように、テストデータを格納している。なお、本番では、実際にマイク部から読み込んだデータ、カメラ部から読み込んだデータが使われる。   In other words, there are generally problems such as the accuracy of voice recognition and the accuracy of image recognition, so voice data, image data, etc. are registered in advance in order to conduct a test smoothly, and data stored in advance at the time of test It stores test data so that the module can be read and executed. In production, data actually read from the microphone unit and data read from the camera unit are used.

図10は、シナリオ作成部103が実行するシナリオ作成処理に係る処理手順の一例を示す図である。   FIG. 10 is a diagram illustrating an example of a processing procedure related to scenario creation processing executed by the scenario creation unit 103.

シナリオ作成部103は、本番用シナリオID1シナリオテンプレートファイルとして、シナリオID1シナリオ管理DB181と、シナリオID1シナリオテンプレートDB182と、シナリオID1モジュールDB183と、シナリオID1パラメタDB185とを作成する(ステップS1001)。   The scenario creating unit 103 creates a scenario ID 1 scenario management DB 181, a scenario ID 1 scenario template DB 182, a scenario ID 1 module DB 183, and a scenario ID 1 parameter DB 185 as the scenario ID 1 scenario template file for production (step S1001).

続いて、シナリオ作成部103は、ステップS702で取得したレコードの中から、動作モードが「本番」のレコードをシナリオID1シナリオ管理DB181に格納する(ステップS1002)。   Subsequently, the scenario creating unit 103 stores a record whose operation mode is “production” in the scenario ID 1 scenario management DB 181 out of the records acquired in step S 702 (step S 1002).

続いて、シナリオ作成部103は、ステップS703で取得したレコードをシナリオID1シナリオテンプレートDB182に格納する(ステップS1003)。   Subsequently, the scenario creating unit 103 stores the record acquired in step S703 in the scenario ID 1 scenario template DB 182 (step S1003).

続いて、シナリオ作成部103は、ステップS1003のレコードの中からモジュールID144を重複なく取り出し、モジュールDB12より同一のモジュールID121を持つレコードのリストを作成し、リストをシナリオID1モジュールDB183に格納する(ステップS1004)。   Subsequently, the scenario creating unit 103 takes out the module ID 144 without duplication from the record in step S1003, creates a list of records having the same module ID 121 from the module DB 12, and stores the list in the scenario ID 1 module DB 183 (step S1004).

続いて、シナリオ作成部103は、シナリオID1モジュールDB183からモジュールファイル名127を重複なく取り出し、モジュールファイル17より同一のファイル名を持つファイルをシナリオID1モジュールファイル184に格納する(ステップS1005)。   Subsequently, the scenario creating unit 103 extracts the module file name 127 from the scenario ID 1 module DB 183 without duplication, and stores a file having the same file name from the module file 17 in the scenario ID 1 module file 184 (step S1005).

続いて、シナリオ作成部103は、ステップS1003のレコードの中からパラメタIDを重複なく取り出し、パラメタDB13より同一のパラメタID145を持つレコードのリストを作成し、リストをシナリオID1パラメタDB185に格納する(ステップS1006)。   Subsequently, the scenario creating unit 103 takes out the parameter ID from the record in step S1003 without duplication, creates a list of records having the same parameter ID 145 from the parameter DB 13, and stores the list in the scenario ID 1 parameter DB 185 (step S1006).

続いて、シナリオ作成部103は、シナリオID1シナリオ管理DB181のシナリオテンプレートファイル名と同じファイル名で本番用シナリオID1シナリオテンプレートファイルとしてシナリオテンプレートファイル18に上書き保存する(ステップS1007)。   Subsequently, the scenario creating unit 103 overwrites and saves the scenario template file 18 as a production scenario ID 1 scenario template file with the same file name as the scenario template file name of the scenario ID 1 scenario management DB 181 (step S 1007).

続いて、シナリオ作成部103は、テスト用シナリオID1シナリオテンプレートファイルとして、シナリオID1シナリオ管理DB181と、シナリオID1シナリオテンプレートDB182と、シナリオID1モジュールDB183と、シナリオID1パラメタDB185とを作成する(ステップS1008)。   Subsequently, the scenario creating unit 103 creates the scenario ID 1 scenario management DB 181, the scenario ID 1 scenario template DB 182, the scenario ID 1 module DB 183, and the scenario ID 1 parameter DB 185 as the test scenario ID 1 scenario template file (step S1008). .

続いて、シナリオ作成部103は、ステップS702で取得したレコードの中から、動作モードが「テスト」のレコードをシナリオID1シナリオ管理DB181に格納する(ステップS1009)。   Subsequently, the scenario creating unit 103 stores a record whose operation mode is “test” in the scenario ID 1 scenario management DB 181 out of the records acquired in step S 702 (step S 1009).

続いて、シナリオ作成部103は、本番用シナリオID1シナリオテンプレートファイルのシナリオID1シナリオテンプレートDB182のレコードをテスト用シナリオID1シナリオテンプレートファイルのシナリオID1シナリオテンプレートDB182にコピーする(ステップS1010)。   Subsequently, the scenario creating unit 103 copies the record of the scenario ID 1 scenario template DB 182 of the production scenario ID 1 scenario template file to the scenario ID 1 scenario template DB 182 of the test scenario ID 1 scenario template file (step S 1010).

続いて、シナリオ作成部103は、本番用シナリオID1シナリオテンプレートファイルのシナリオID1モジュールDB183のレコードをテスト用シナリオID1シナリオテンプレートファイルのシナリオID1モジュールDB183にコピーする(ステップS1011)。   Subsequently, the scenario creating unit 103 copies the record of the scenario ID 1 module DB 183 of the scenario ID 1 scenario template file for production to the scenario ID 1 module DB 183 of the scenario ID 1 scenario template file (step S1011).

続いて、シナリオ作成部103は、本番用シナリオID1シナリオテンプレートファイルのシナリオID1モジュールファイル184をテスト用シナリオID1シナリオテンプレートファイルのシナリオID1モジュールファイル184にコピーする(ステップS1012)。   Subsequently, the scenario creating unit 103 copies the scenario ID1 module file 184 of the production scenario ID1 scenario template file to the scenario ID1 module file 184 of the test scenario ID1 scenario template file (step S1012).

続いて、シナリオ作成部103は、本番用シナリオID1シナリオテンプレートファイルのシナリオID1パラメタDB185のレコードをテスト用シナリオID1シナリオテンプレートファイルのシナリオID1パラメタDB185にコピーする(ステップS1013)。   Subsequently, the scenario creating unit 103 copies the record of the scenario ID 1 parameter DB 185 of the scenario ID 1 scenario template file for production to the scenario ID 1 parameter DB 185 of the scenario ID 1 scenario template file (step S 1013).

続いて、シナリオ作成部103は、シナリオID1シナリオ管理DB181のシナリオテンプレートファイル名と同じファイル名でテスト用シナリオID1シナリオテンプレートファイルとしてシナリオテンプレートファイル18に上書き保存する(ステップS1014)。   Subsequently, the scenario creating unit 103 overwrites and saves the scenario template file 18 as a test scenario ID 1 scenario template file with the same file name as the scenario template file name of the scenario ID 1 scenario management DB 181 (step S1014).

シナリオ作成部103は、ステップS1014の処理を行うと、シナリオ作成処理を終了する。   After performing the process of step S1014, the scenario creation unit 103 ends the scenario creation process.

ここで、シナリオを構成するモジュール間のインタフェースの一致の確認だけでは、シナリオ全体が動作するかの確認はできていないため、シナリオの変更の際にはシナリオ全体としてテストして事前検証することが望ましい。この点、上述した処理によれば、一のモジュールを変更した際には、当該モジュールを含むシナリオ全体の動作確認が可能な一連のテスト用シナリオ(テストパターン)が登録される。   Here, since it is not possible to confirm whether the whole scenario works only by confirming the interface coincidence between modules making up the scenario, it is possible to test and preverify the whole scenario when changing the scenario. desirable. In this regard, according to the process described above, when one module is changed, a series of test scenarios (test patterns) capable of confirming the operation of the entire scenario including the module are registered.

図11は、出力部104が実行する出力処理に係る処理手順の一例を示す図である。   FIG. 11 is a diagram illustrating an example of a processing procedure related to the output processing performed by the output unit 104.

出力部104は、ステップS1014で作成したテスト用シナリオID1シナリオテンプレートファイルを読込む(ステップS1101)。   The output unit 104 reads the test scenario ID 1 scenario template file created in step S1014 (step S1101).

続いて、出力部104は、読込んだファイルのデータからシナリオタスクを起動する(シナリオタスク処理を行う)(ステップS1102)。シナリオタスク処理では、シナリオに従ってモジュールが実行される。シナリオタスク処理の詳細については、図12を用いて説明する。   Subsequently, the output unit 104 activates a scenario task from the data of the read file (performs scenario task processing) (step S1102). In scenario task processing, modules are executed according to a scenario. The details of the scenario task processing will be described using FIG.

続いて、出力部104は、テストテーブル16をファイル化してからクリアする(ステップS1103)。   Subsequently, the output unit 104 converts the test table 16 into a file and clears the file (step S1103).

続いて、出力部104は、出力結果の確認待ちを行う(ステップS1104)。例えば、出力部104は、シナリオ表示部31を介して、問題なくテストが終了したか否か(確認OKであるか否か)を示す情報を取得する。   Subsequently, the output unit 104 waits for confirmation of the output result (step S1104). For example, the output unit 104 obtains, via the scenario display unit 31, information indicating whether the test has been completed without any problem (whether confirmation is OK).

続いて、出力部104は、確認OKであるか否かを判定する(ステップS1105)。出力部104は、確認OKであると判定した場合、ステップS1106に処理を移し、出力部104は、確認OKでないと判定した場合、出力処理を終了する。   Subsequently, the output unit 104 determines whether the confirmation is OK (step S1105). If the output unit 104 determines that the confirmation is OK, the process proceeds to step S1106. If the output unit 104 determines that the confirmation is not OK, the output process ends.

ステップS1106では、出力部104は、本番用シナリオID1シナリオテンプレートファイルをシナリオ処理装置4に送信し、出力処理を終了する。   In step S1106, the output unit 104 transmits the scenario ID 1 scenario template file for production to the scenario processing device 4 and ends the output processing.

なお、上述した処理では、人間が出力結果(テスト結果)を確認するケースを例に挙げて説明したが、これに限られるものではない。例えば、出力結果については、出力部104が確認するようにしてもよい。   In the process described above, although the case where a human confirms the output result (test result) has been described as an example, the present invention is not limited to this. For example, the output unit 104 may check the output result.

上述した処理によれば、自動的にシナリオがテストされて事前検証が行われた後に、シナリオがシナリオ処理装置4に送付される。   According to the process described above, the scenario is sent to the scenario processing device 4 after the scenario is automatically tested and pre-verified.

図12は、出力部104が実行するシナリオタスク処理に係る処理手順の一例を示す図である。ここでは、出力部104は、シナリオID1シナリオテンプレートファイルを実行したとして説明する。   FIG. 12 is a diagram illustrating an example of a processing procedure according to scenario task processing executed by the output unit 104. Here, the output unit 104 is described as executing the scenario ID 1 scenario template file.

出力部104は、シナリオID1用シナリオテンプレートDB182から、開始終了が「START」のレコードを抽出し、シナリオテンプレートIDを次回実行シナリオテンプレートIDとしてメモリ上に保存する(ステップS1201)。   The output unit 104 extracts a record whose start / end is "START" from the scenario template DB 182 for scenario ID 1, and saves the scenario template ID in the memory as the next execution scenario template ID (step S1201).

続いて、出力部104は、開始終了が「END」のシナリオテンプレートIDを実行済みであるか否かを判定する(ステップS1202)。出力部104は、実行済みであると判定した場合、シナリオタスク処理を終了し、実行済みでないと判定した場合、ステップS1203に処理を移す。   Subsequently, the output unit 104 determines whether or not the scenario template ID whose start / end is “END” has been executed (step S1202). If the output unit 104 determines that the process has been executed, the scenario task process ends. If the output unit 104 determines that the process has not been executed, the process proceeds to step S1203.

ステップS1203では、出力部104は、メモリ上の次回実行シナリオテンプレートIDを読み出す。   In step S1203, the output unit 104 reads the next execution scenario template ID on the memory.

続いて、出力部104は、シナリオID1用シナリオテンプレートDB182から、メモリ上より読み出した次回実行シナリオテンプレートIDと同じシナリオテンプレートIDを持つレコードを読み出す(ステップS1204)。   Subsequently, the output unit 104 reads a record having the same scenario template ID as the next execution scenario template ID read from the memory from the scenario template DB 182 for scenario ID 1 (step S1204).

続いて、出力部104は、シナリオID1用モジュールDB183から、ステップS1204で読み出したレコードのモジュールIDと同じモジュールIDを持つレコードを読み込む(ステップS1205)。   Subsequently, the output unit 104 reads a record having the same module ID as the module ID of the record read in step S1204 from the scenario ID 1 module DB 183 (step S1205).

続いて、出力部104は、制御種別毎処理を行い(ステップS1206)、ステップS1202に処理を移す。制御種別毎処理では、制御種別に対応した処理が行われる。制御種別毎処理の詳細については、図13を用いて説明する。   Subsequently, the output unit 104 performs processing for each control type (step S1206), and shifts the processing to step S1202. In the process for each control type, a process corresponding to the control type is performed. The details of the process for each control type will be described with reference to FIG.

図13は、出力部104が実行する制御種別毎処理に係る処理手順の一例を示す図である。   FIG. 13 is a diagram illustrating an example of a processing procedure related to processing for each control type that the output unit 104 executes.

出力部104は、モジュールの制御種別が「入力」であるか否かを判定する(ステップS1301)。出力部104は、「入力」であると判定した場合、ステップS1302に処理を移し、「入力」でないと判定した場合、ステップS1303に処理を移す。   The output unit 104 determines whether the control type of the module is "input" (step S1301). If the output unit 104 determines that the input is "input", the process proceeds to step S1302, and if it is determined that the input is not "input", the process proceeds to step S1303.

ステップS1302では、出力部104は、制御種別入力処理を行い、制御種別毎処理を終了する。制御種別入力処理では、ロボット装置5などの外部からの入力データが取得される。   In step S1302, the output unit 104 performs control type input processing, and ends the processing for each control type. In the control type input process, input data from the outside of the robot device 5 or the like is acquired.

より詳細には、出力部104は、ステップS1205で取得したレコードのモジュール名と同じシナリオID1用モジュールファイル184を実行(入力モジュール処理を実行)する。入力モジュール処理では、動作モードに応じて入力に係る処理が行われる。   More specifically, the output unit 104 executes the module file 184 for scenario ID 1 which is the same as the module name of the record acquired in step S 1205 (executes input module processing). In the input module processing, processing related to input is performed according to the operation mode.

更に詳細には、出力部104は、シナリオ1シナリオ管理DB181の動作モードが「テスト」であるか否かを判定する。   More specifically, the output unit 104 determines whether the operation mode of the scenario 1 scenario management DB 181 is “test”.

出力部104は、「テスト」であると判定した場合、出力部104は、図9のテストモジュール登録処理にて既にテストテーブル16にはテストデータが格納されているため、号機、シナリオID、シナリオテンプレートIDをキーにしてテストテーブル16からレコードを取得し、戻り値をレコード中の出力データポインタアドレスにセットし、入力モジュール処理を終了する。   If the output unit 104 determines that the test is "test", the test unit 16 has already stored test data in the test table 16 in the test module registration process of FIG. The record is acquired from the test table 16 using the template ID as a key, the return value is set to the output data pointer address in the record, and the input module processing is ended.

出力部104は、「テスト」でない(本番である)と判定した場合、シナリオ処理部44は、該当号機のロボット装置5への入力の内容を送信する。続いて、本番であるのでシナリオ処理部44は、該当号機のロボット装置5からの受信データをメモリ上へ保存する。続いて、本番であるのでシナリオ処理部44は、戻り値を受信データのメモリ上のポインタにセットし、入力モジュール処理を終了する。   If the output unit 104 determines that the test is not “test” (is real), the scenario processing unit 44 transmits the content of the input to the robot device 5 of the corresponding machine. Subsequently, since it is a production, the scenario processing unit 44 stores the received data from the robot device 5 of the corresponding machine in the memory. Subsequently, since it is production, the scenario processing unit 44 sets the return value to the pointer on the memory of the received data, and ends the input module processing.

入力モジュール処理後、出力部104は、シナリオ1シナリオ管理DB181の動作モードが「本番」であるか否かを判定する。   After the input module processing, the output unit 104 determines whether the operation mode of the scenario 1 scenario management DB 181 is “production”.

「本番」であると判定された場合、シナリオ処理部44は、実行結果の出力データ(号機とシナリオIDとシナリオテンプレートIDと出力データのポインタアドレスとデータ型と)を出力データテーブル42に格納する。   If it is determined to be "production", the scenario processing unit 44 stores the output data of the execution result (the machine number, scenario ID, scenario template ID, pointer address of output data and data type) in the output data table 42. .

「本番」でないと判定した場合、出力部104は、実行結果の出力データ(号機とシナリオIDとシナリオテンプレートIDと出力データのポインタアドレスとデータ型と)をテストテーブル16に格納する。   If it is determined that the output data is not "production", the output unit 104 stores the output data of the execution result (the machine number, the scenario ID, the scenario template ID, the pointer address of the output data, and the data type) in the test table 16.

実行結果の出力データの格納後、出力部104は、ステップS1204で取得したレコードの成功時次回シナリオテンプレートIDを次回実行シナリオテンプレートIDとしてメモリ上に保存し、制御種別入力処理を終了する。   After storing the output data of the execution result, the output unit 104 stores the next-following scenario template ID at the success of the record acquired in step S 1204 as the next execution scenario template ID on the memory, and ends the control type input process.

ステップS1303では、出力部104は、モジュールの制御種別が「出力」であるか否かを判定する。出力部104は、「出力」であると判定した場合、ステップS1304に処理を移し、「出力」でないと判定した場合、ステップS1305に処理を移す。   In step S1303, the output unit 104 determines whether the control type of the module is "output". If the output unit 104 determines that the "output" is set, the process proceeds to step S1304, and if it is determined that the "output" is not performed, the process proceeds to step S1305.

ステップS1304では、出力部104は、制御種別出力処理を行い、制御種別毎処理を終了する。制御種別出力処理では、ロボット装置5などの外部に出力データが出力される。   In step S1304, the output unit 104 performs control type output processing, and ends the processing for each control type. In the control type output process, output data is output to the outside of the robot device 5 or the like.

より詳細には、出力部104は、シナリオID1用パラメタDB185から、ステップS1204で取得したレコードのパラメタIDと同じレコードを取得し、パラメタを取得する。   More specifically, the output unit 104 acquires, from the scenario ID 1 parameter DB 185, the same record as the parameter ID of the record acquired in step S 1204, and acquires the parameter.

続いて、出力部104は、取得したパラメタを用いて、ステップS1205で取得したレコードのモジュール名と同じシナリオID1用モジュールファイル184を実行する。   Subsequently, the output unit 104 executes the module file 184 for scenario ID 1 which is the same as the module name of the record acquired in step S 1205 using the acquired parameter.

より具体的には、出力部104は、シナリオ1シナリオ管理DB181の動作モードが「テスト」であるか否かを判定し、「テスト」であると判定した場合、戻り値を「成功」にセットし、「テスト」でないと判定した場合、本番であるのでシナリオ処理部44が該当号機のロボット装置5に出力の内容を送信し、ロボット装置5からの応答受信に応じて戻り値を「成功」または「失敗」にセットする。なお、失敗時の処理については説明を省略する。   More specifically, the output unit 104 determines whether the operation mode of the scenario 1 scenario management DB 181 is "test", and when it is determined that the operation mode is "test", the return value is set to "success". If it is determined that the test is not "test", the scenario processing unit 44 transmits the contents of the output to the robot device 5 of the corresponding machine because it is a production, and "success" in return value in response to the response reception from the robot device 5. Or set it to "failed". The description of the process at the time of failure will be omitted.

続いて、出力部104は、ステップS1204で取得したレコードの成功時次回シナリオテンプレートIDを次回実行シナリオテンプレートIDとしてメモリ上に保存し、制御種別出力処理を終了する。   Subsequently, the output unit 104 stores the on success next scenario template ID of the record acquired in step S 1204 as a next execution scenario template ID on the memory, and ends the control type output process.

ステップS1305では、出力部104は、モジュールの制御種別が「解析」であるか否かを判定する。出力部104は、「解析」であると判定した場合、ステップS1306に処理を移し、「解析」でないと判定した場合、ステップS1307に処理を移す。   In step S1305, the output unit 104 determines whether the control type of the module is "analysis". If the output unit 104 determines that "analysis" is performed, the process proceeds to step S1306, and if it is determined not to be "analysis", the process proceeds to step S1307.

ステップS1306では、出力部104は、制御種別解析処理を行い、制御種別毎処理を終了する。制御種別解析処理では、目的のデータであるか否かが解析される。   In step S1306, the output unit 104 performs control type analysis processing, and ends the processing for each control type. In the control type analysis process, it is analyzed whether it is target data.

より詳細には、出力部104は、テストテーブル16から、同一の該当号機とステップS1204で取得したレコードのパラメタシナリオテンプレートIDとを持つレコードを取得する。なお、本番の場合は、シナリオ処理部44が出力データテーブル42から当該レコードを取得する。   More specifically, the output unit 104 acquires, from the test table 16, a record having the same applicable device and the parameter scenario template ID of the record acquired in step S1204. In the case of production, the scenario processing unit 44 acquires the record from the output data table 42.

続いて、出力部104は、取得したレコードの出力データポインタアドレスからデータをメモリ上にコピーしたデータをパラメタにしてステップS1205で取得したレコードのモジュール名と同じシナリオID1用モジュールファイル184を実行する。   Subsequently, the output unit 104 executes the scenario ID 1 module file 184 which is the same as the module name of the record acquired in step S 1205, using data obtained by copying data on the memory from the output data pointer address of the acquired record as a parameter.

より具体的には、出力部104は、パラメタとして渡されたデータの解析を行い、目的の期待通りの解析結果であるか否かを判定し、期待通りの解析結果であると判定した場合、戻り値を「成功」にセットし、期待通りの解析結果でないと判定した場合、戻り値を「失敗」にセットする。なお、失敗時の処理については説明を省略する。   More specifically, the output unit 104 analyzes the data passed as a parameter, determines whether or not the analysis result is as expected, and if it is determined that the analysis result is as expected, If the return value is set to "success" and it is determined that the analysis result is not as expected, the return value is set to "failure". The description of the process at the time of failure will be omitted.

続いて、出力部104は、ステップS1204で取得したレコードの成功時次回シナリオテンプレートIDを次回実行シナリオテンプレートIDとしてメモリ上に保存し、制御種別解析処理を終了する。   Subsequently, the output unit 104 stores the on success next scenario template ID of the record acquired in step S 1204 as a next execution scenario template ID on the memory, and ends the control type analysis process.

ステップS1307では、出力部104は、モジュールの制御種別が「データ変換」であるか否かを判定する。出力部104は、「データ変換」であると判定した場合、ステップS1308に処理を移し、「データ変換」でないと判定した場合、ステップS1309に処理を移す。   In step S1307, the output unit 104 determines whether the control type of the module is "data conversion". If the output unit 104 determines that "data conversion" is performed, the process proceeds to step S1308, and if it is determined that "data conversion" is not performed, the process proceeds to step S1309.

ステップS1308では、出力部104は、制御種別データ変換処理を行い、制御種別毎処理を終了する。制御種別データ変換処理では、データのデータ型が別のデータ型に変換される。   In step S1308, the output unit 104 performs control type data conversion processing, and ends the processing for each control type. In the control type data conversion process, the data type of data is converted to another data type.

より詳細には、出力部104は、テストテーブル16から、同一の該当号機とステップS1204で取得したレコードのパラメタシナリオテンプレートIDとを持つレコードを取得する。なお、本番の場合は、シナリオ処理部44が出力データテーブル42から当該レコードを取得する。   More specifically, the output unit 104 acquires, from the test table 16, a record having the same applicable device and the parameter scenario template ID of the record acquired in step S1204. In the case of production, the scenario processing unit 44 acquires the record from the output data table 42.

続いて、出力部104は、取得したレコードの出力データポインタアドレスからデータをメモリ上にコピーしたデータをパラメタにしてステップS1205で取得したレコードのモジュール名と同じシナリオID1用モジュールファイル184を実行する。   Subsequently, the output unit 104 executes the scenario ID 1 module file 184 which is the same as the module name of the record acquired in step S 1205, using data obtained by copying data on the memory from the output data pointer address of the acquired record as a parameter.

より具体的には、出力部104は、変換前のデータであるパラメタのデータと変換後の実行出力時データの型との2つをデータ変換装置2に送信し、データ変換装置2から結果を受信し、データ変換に成功したか否かを判定し、データ変換に成功した場合には変換後のデータをメモリ上に保存して戻り値を変換データのポインタにセットし、データ変換に失敗した場合には戻り値をNULLにセットする。なお、失敗時の処理については説明を省略する。   More specifically, the output unit 104 transmits two of the parameter data which is data before conversion and the type of data at the time of execution output after conversion to the data conversion device 2, and the result from the data conversion device 2 Received, it is judged whether the data conversion succeeded, and if the data conversion succeeded, the converted data is stored on the memory, the return value is set in the conversion data pointer, and the data conversion failed If so, set the return value to NULL. The description of the process at the time of failure will be omitted.

データ変換のモジュール処理後、出力部104は、シナリオ1シナリオ管理DB181の動作モードが「本番」であるか否かを判定する。   After module processing of data conversion, the output unit 104 determines whether the operation mode of the scenario 1 scenario management DB 181 is “production”.

「本番」であると判定された場合、シナリオ処理部44は、実行結果の出力データ(号機とシナリオIDとシナリオテンプレートIDと出力データのポインタアドレスとデータ型と)を出力データテーブル42に格納する。   If it is determined to be "production", the scenario processing unit 44 stores the output data of the execution result (the machine number, scenario ID, scenario template ID, pointer address of output data and data type) in the output data table 42. .

「本番」でないと判定した場合、出力部104は、実行結果の出力データ(号機とシナリオIDとシナリオテンプレートIDと出力データのポインタアドレスとデータ型と)をテストテーブル16に格納する。   If it is determined that the output data is not "production", the output unit 104 stores the output data of the execution result (the machine number, the scenario ID, the scenario template ID, the pointer address of the output data, and the data type) in the test table 16.

実行結果の出力データの格納後、出力部104は、ステップS1204で取得したレコードの成功時次回シナリオテンプレートIDを次回実行シナリオテンプレートIDとしてメモリ上に保存し、制御種別データ変換処理を終了する。   After storing the output data of the execution result, the output unit 104 stores the next-following scenario template ID at the success of the record acquired in step S 1204 as the next execution scenario template ID on the memory, and ends the control type data conversion process.

ステップS1309では、出力部104は、モジュールの制御種別が「フロー」であるか否かを判定する。出力部104は、「フロー」であると判定した場合、ステップS1310に処理を移し、「フロー」でないと判定した場合、制御種別毎処理を終了する。   In step S1309, the output unit 104 determines whether the control type of the module is "flow". If the output unit 104 determines that the processing is "flow", the process proceeds to step S1310. If the output unit 104 determines that the processing is not "flow", the processing for each control type ends.

ステップS1310では、出力部104は、制御種別フロー処理を行い、制御種別毎処理を終了する。制御種別フロー処理では、シナリオのフロー制御が行われる。   In step S1310, the output unit 104 performs control type flow processing, and ends the processing for each control type. In the control type flow process, flow control of a scenario is performed.

より詳細には、出力部104は、シナリオID1用パラメタDB185から、ステップS1204で取得したレコードのパラメタIDと同じレコードを取得し、パラメタを取得する。   More specifically, the output unit 104 acquires, from the scenario ID 1 parameter DB 185, the same record as the parameter ID of the record acquired in step S 1204, and acquires the parameter.

続いて、出力部104は、取得したパラメタを用いて、ステップS1205で取得したレコードのモジュール名と同じシナリオID1用モジュールファイル184を実行する。   Subsequently, the output unit 104 executes the module file 184 for scenario ID 1 which is the same as the module name of the record acquired in step S 1205 using the acquired parameter.

より具体的には、出力部104は、シナリオテンプレートファイル18内のパラメタDB185より同じパラメタIDを持つデータを取得し、シナリオテンプレートファイル18内のシナリオテンプレートDB182から、条件に該当するシナリオテンプレートIDを検索し、戻り値を検索したシナリオテンプレートIDにセットする。付言するならば、バイナリ化されたシナリオテンプレートファイル18内に存在するデータのみで制御される。   More specifically, the output unit 104 acquires data having the same parameter ID from the parameter DB 185 in the scenario template file 18, and searches the scenario template ID corresponding to the condition from the scenario template DB 182 in the scenario template file 18. And set the return value to the retrieved scenario template ID. In addition, only data existing in the binarized scenario template file 18 is controlled.

続いて、出力部104は、実行した戻り値を次回実行シナリオテンプレートIDとしてメモリ上に保存し、制御種別フロー処理を終了する。   Subsequently, the output unit 104 stores the executed return value on the memory as the next execution scenario template ID, and ends the control type flow process.

以上のように処理することにより、シナリオ作成装置1内でシナリオテンプレートファイル18の事前動作検証を行った上でシナリオ処理装置4のシナリオテンプレートファイル43を更新でき、ロボット装置5を動作させる前にシナリオの動作検証が可能となる。   By performing the above-described processing, the scenario template file 43 of the scenario processing device 4 can be updated after performing the preliminary operation verification of the scenario template file 18 in the scenario creating device 1, and the scenario before operating the robot device 5 It is possible to verify the operation of

また、例えば、シナリオID1に対し、シナリオ途中で音声データのみの出力から音声データと映像データとの両方の出力に変更する場合、シナリオテンプレートDB14のシナリオテンプレートID141の「14」、「15」の変更と、「31」、「32」が追加となる。シナリオテンプレートID141が「14」のレコードについては、成功時次回シナリオテンプレートID147の「15」を「31」に変更し、シナリオテンプレートID141が「15」レコードについては、成功時次回シナリオテンプレートID147の「16」を「32」に変更する。また、シナリオテンプレートID141が「31」のレコードについては、シナリオID142を「1」、モジュールIDを「16」、パラメタシナリオテンプレートID146を「13」、成功時次回シナリオテンプレートID147を「15」とする。シナリオテンプレートID141が「32」のレコードについては、シナリオID142を「1」、モジュールIDを「8」、パラメタシナリオテンプレートID146を「31」、成功時次回シナリオテンプレートID147を「16」とする。   Also, for example, when changing from outputting only audio data to outputting both audio data and video data in the middle of a scenario for scenario ID 1, change “14” and “15” of scenario template ID 141 of scenario template DB 14 And "31" and "32" will be added. For records with scenario template ID 141 “14”, change “15” of next time scenario template ID 147 to “31” at success, and for scenario template ID 141 “15” records, change “16” at next success scenario template ID 147 Change "" to "32". Further, for a record whose scenario template ID 141 is “31”, the scenario ID 142 is “1”, the module ID is “16”, the parameter scenario template ID 146 is “13”, and the next successful scenario template ID 147 is “15”. For a record whose scenario template ID 141 is “32”, the scenario ID 142 is “1”, the module ID is “8”, the parameter scenario template ID 146 is “31”, and the next successful scenario template ID 147 is “16”.

この場合でも、ステップS1103でファイル化されたテストテーブル16の内容を確認することにより、変更した内容が正しいことを確認できる。   Even in this case, it is possible to confirm that the changed contents are correct by confirming the contents of the test table 16 filed in step S1103.

なお、ロボット装置制御システム1000では、概念DB21、音声DB22、映像DB23が部分的に更新されたときには、過去に行ったテストが行われ、ロボット装置制御システム1000の信頼性の向上が図られる。   In addition, in the robot apparatus control system 1000, when the concept DB 21, the audio DB 22, and the video DB 23 are partially updated, a test performed in the past is performed to improve the reliability of the robot apparatus control system 1000.

(シナリオテンプレートの実行について)
シナリオ処理装置4のシナリオ処理部44にて、シナリオテンプレートの実行を行う。以下、その概要を説明する。
(About execution of scenario template)
The scenario processing unit 44 of the scenario processing device 4 executes the scenario template. The outline will be described below.

図14は、号機管理DB41の一例を示す図である。号機管理DB41には、DB内でユニークとなる号機管理ID411と、号機412と、ロボット装置5のIPアドレスを示すIPアドレス413と、シナリオID414と、シナリオテンプレートファイル名415と動作モード416との情報が対応付けられて格納されている。   FIG. 14 is a diagram showing an example of the car management DB 41. As shown in FIG. In the machine management DB 41, information of a machine management ID 411 which is unique in the DB, a machine 412, an IP address 413 indicating an IP address of the robot apparatus 5, a scenario ID 414, a scenario template file name 415 and an operation mode 416 Are stored in association with each other.

図15は、出力データテーブル42の一例を示す図である。出力データテーブル42は、号機421と、シナリオID422と、シナリオテンプレートID423と、出力データポインタアドレス424と、データ型425との情報が対応付けられて格納されている。   FIG. 15 shows an example of the output data table 42. As shown in FIG. The output data table 42 stores information of a car 421, a scenario ID 422, a scenario template ID 423, an output data pointer address 424, and a data type 425 in association with one another.

図16は、シナリオ処理部44が実行するシナリオテンプレート実行処理に係る処理手順の一例を示す図である。なお、シナリオの共通処理(開始処理、終了処理等)については、図示および説明を省略している。   FIG. 16 is a diagram showing an example of a processing procedure related to scenario template execution processing that the scenario processing unit 44 executes. In addition, illustration and description are abbreviate | omitted about the common process (start process, finish process, etc.) of a scenario.

シナリオ処理部44は、号機管理DB41からレコードを取得する(ステップS1601)。   The scenario processing unit 44 acquires a record from the device management DB 41 (step S1601).

続いて、シナリオ処理部44は、取得したレコードの持つシナリオテンプレートファイル名よりシナリオテンプレートファイル43を取得する(ステップS1602)。   Subsequently, the scenario processing unit 44 acquires the scenario template file 43 from the scenario template file name of the acquired record (step S1602).

続いて、シナリオ処理部44は、シナリオの実行中にシナリオテンプレートファイル43が更新されている場合を考慮し、シナリオテンプレートファイル43が更新されているかをファイルサイズ、ファイル更新日付などでチェックを行う(ステップS1603)。シナリオ処理部44は、更新されていると判定した場合、ステップS1604に処理を移し、更新されていないと判定した場合、ステップS1605に処理を移す。   Subsequently, the scenario processing unit 44 checks whether the scenario template file 43 has been updated, based on the file size, the file update date, etc., in consideration of the case where the scenario template file 43 has been updated during execution of the scenario. Step S1603). If it is determined that the scenario processing unit 44 has been updated, the process proceeds to step S1604. If it is determined that the scenario processing unit 44 has not been updated, the process proceeds to step S1605.

ステップS1604では、シナリオ処理部44は、シナリオテンプレートファイル43を再読み込みし、ステップS1605に処理を移す。   In step S1604, the scenario processing unit 44 rereads the scenario template file 43, and the process proceeds to step S1605.

ステップS1605では、シナリオ処理部44は、ステップS1601で取得した号機管理DB41のレコードを1件読み込む。   In step S1605, the scenario processing unit 44 reads one record of the machine management DB 41 acquired in step S1601.

続いて、シナリオ処理部44は、レコード中の該当号機のシナリオタスク処理が終了しているかを判定する(ステップS1606)。シナリオ処理部44は、終了していると判定した場合、ステップS1607に処理を移し、終了していないと判定した場合、ステップS1603に処理を移す。   Subsequently, the scenario processing unit 44 determines whether the scenario task processing of the corresponding car in the record is completed (step S1606). If the scenario processing unit 44 determines that the process has been completed, the process proceeds to step S1607. If it is determined that the process is not completed, the process proceeds to step S1603.

ステップS1607では、シナリオ処理部44は、該当号機の出力データテーブル42の出力データポインタアドレスのメモリ上のデータをクリアし、該当号機の出力データテーブル42のレコードもクリアする。   In step S1607, the scenario processing unit 44 clears the data on the memory of the output data pointer address of the output data table 42 of the corresponding machine, and also clears the record of the output data table 42 of the corresponding machine.

続いて、シナリオ処理部44は、シナリオタスク処理を行う(ステップS1608)。なお、シナリオタスク処理については、図12の処理と同様であるので説明を省略する。   Subsequently, the scenario processing unit 44 performs scenario task processing (step S1608). The scenario task processing is the same as the processing in FIG.

続いて、シナリオ処理部44は、ステップS1601で取得したレコードのうち未処理のレコードがまだあるか否かを判定する(ステップS1609)。シナリオ処理部44は、未処理のレコードがあると判定した場合、ステップS1603に処理を移し、未処理のレコードがないと判定した場合、ステップS1601に処理を移す。   Subsequently, the scenario processing unit 44 determines whether there are still unprocessed records among the records acquired in step S1601 (step S1609). If the scenario processing unit 44 determines that there is an unprocessed record, the process proceeds to step S1603, and if it is determined that there is no unprocessed record, the process proceeds to step S1601.

以上のように、シナリオの実行中であっても変更したシナリオテンプレートファイル43を入替え可能である。   As described above, the scenario template file 43 which has been changed can be replaced even while the scenario is being executed.

本実施の形態によれば、シナリオを適切に編集することができるので、保守性の高いロボット装置制御システムを提供することができる。   According to the present embodiment, since the scenario can be appropriately edited, a highly maintainable robot device control system can be provided.

(2)他の実施の形態
なお上述の実施の形態においては、本発明をロボット装置制御システム1000に適用するようにした場合について述べたが、本発明はこれに限らず、この他種々のロボット装置制御システムに広く適用することができる。
(2) Other Embodiments In the above embodiment, the present invention is applied to the robot apparatus control system 1000. However, the present invention is not limited to this, and various other robots may be used. It can be widely applied to device control systems.

また上述の実施の形態においては、シナリオ作成装置1とデータ変換装置2とシナリオ処理装置4とロボット装置5とが別々に設けられている場合について述べたが、本発明はこれに限らず、ロボット装置5内にシナリオ処理装置4を配置してもよいし、シナリオ処理装置4内にデータ変換装置2を配置してもよいし、その他の組み合わせの装置構成としてもよい。   In the above-mentioned embodiment, although the case where scenario creation device 1, data conversion device 2, scenario processing device 4 and robot device 5 were separately provided was described, the present invention is not limited to this, and a robot The scenario processing device 4 may be disposed in the device 5, the data conversion device 2 may be disposed in the scenario processing device 4, or any other combination of device configurations may be employed.

また上述の実施の形態においては、説明の便宜上、XXXテーブル、XXXファイルを用いて各種のデータを説明したが、データ構造は限定されるものではなく、XXX情報などと表現してもよい。   Further, in the above embodiment, for convenience of explanation, various data are described using the XXX table and the XXX file, but the data structure is not limited and may be expressed as XXX information or the like.

また、上記の説明において各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記憶装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。   In the above description, information such as programs, tables, and files for realizing each function is a memory, a hard disk, a storage device such as a solid state drive (SSD), or a recording medium such as an IC card, an SD card, or a DVD. Can be put on.

また上述した構成については、本発明の要旨を超えない範囲において、適宜に、変更したり、組み替えたり、組み合わせたり、省略したりしてもよい。   Moreover, about the structure mentioned above, in the range which does not exceed the summary of this invention, you may change suitably, rearrange, combine or abbreviate | omit.

1……シナリオ作成装置、2……データ変換装置、3……シナリオ表示端末装置、4……シナリオ処理装置、5……ロボット装置、6……検索エンジン、101……モジュール受付部、102……テストモジュール登録部、103……シナリオ作成部、104……出力部、1000……ロボット装置制御システム。   DESCRIPTION OF SYMBOLS 1 ... scenario preparation apparatus, 2 ... data conversion apparatus, 3 ... scenario display terminal apparatus, 4 ... scenario processing apparatus, 5 ... robot apparatus, 6 ... search engine, 101 ... module reception unit, 102 ... ... test module registration unit, 103 ... scenario creation unit, 104 ... output unit, 1000 ... robot device control system.

Claims (5)

ロボット装置を動作させる命令を含む複数のモジュールを含んで構成されるシナリオを作成し、作成したシナリオに基づいてロボット装置を制御するロボット装置制御システムであって、
ロボット装置を動作させる命令を含む複数のモジュールからモジュールの選択を受け付けるモジュール受付部と、
共通処理が規定されたシナリオテンプレートに前記モジュール受付部で選択されたモジュールを組み込んで実行可能なシナリオを作成するシナリオ作成部と、
前記シナリオ作成部で作成されたシナリオを出力する出力部と、
を備えることを特徴とするロボット装置制御システム。
A robot device control system for creating a scenario including a plurality of modules including an instruction to operate the robot device, and controlling the robot device based on the created scenario,
A module receiving unit that receives a selection of a module from a plurality of modules including an instruction to operate the robot apparatus;
A scenario creation unit for creating an executable scenario by incorporating the module selected by the module reception unit into a scenario template in which common processing is defined;
An output unit that outputs the scenario created by the scenario creation unit;
A robot apparatus control system comprising:
前記複数のモジュールには、ロボット装置の移動を指示する命令を含むモジュールと、ロボット装置の発話を指示する命令を含むモジュールとの両方または一方が含まれる、
ことを特徴とする請求項1に記載のロボット装置制御システム。
The plurality of modules include one or more of a module including an instruction instructing movement of the robot apparatus and a module including an instruction instructing speech of the robot apparatus.
The robot apparatus control system according to claim 1, characterized in that:
前記複数のモジュールの各々に対応したテストモジュールを格納するテストモジュールDBを備え、
前記モジュール受付部で受け付けられたモジュールに対応するテストモジュールを前記テストモジュールDBから選択し、テストテーブルに登録するテストモジュール登録部を備える、
ことを特徴とする請求項1に記載のロボット装置制御システム。
A test module DB storing a test module corresponding to each of the plurality of modules;
A test module registration unit configured to select a test module corresponding to the module received by the module reception unit from the test module DB and register the selected test module in a test table;
The robot apparatus control system according to claim 1, characterized in that:
前記モジュール受付部は、モジュールの指定を受け付けるときに、前記モジュールの動作を指定するパラメタを受け取り、
前記シナリオ作成部は、前記モジュール受付部で選択されたモジュールに受け取られたパラメタを指定してシナリオテンプレートに組み込んで実行可能なシナリオを作成する、
ことを特徴とする請求項1に記載のロボット装置制御システム。
When the module accepting unit accepts specification of a module, the module accepting unit receives a parameter specifying an operation of the module;
The scenario creating unit designates the received parameter in the module selected by the module receiving unit and incorporates it into a scenario template to create an executable scenario.
The robot apparatus control system according to claim 1, characterized in that:
前記モジュール受付部が受け取るパラメタには、ロボット装置の発話内容が含まれる、
ことを特徴とする請求項4に記載のロボット装置制御システム。
The parameters received by the module reception unit include the speech contents of the robot apparatus.
The robot apparatus control system according to claim 4, characterized in that:
JP2017255013A 2017-12-28 2017-12-28 Robot device control system Pending JP2019118992A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017255013A JP2019118992A (en) 2017-12-28 2017-12-28 Robot device control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017255013A JP2019118992A (en) 2017-12-28 2017-12-28 Robot device control system

Publications (1)

Publication Number Publication Date
JP2019118992A true JP2019118992A (en) 2019-07-22

Family

ID=67307556

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017255013A Pending JP2019118992A (en) 2017-12-28 2017-12-28 Robot device control system

Country Status (1)

Country Link
JP (1) JP2019118992A (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001353678A (en) * 2000-06-12 2001-12-25 Sony Corp Authoring system and method and storage medium
JP2002127061A (en) * 2000-10-24 2002-05-08 Nippon Telegraph & Telephone East Corp Agent-robot cooperative control system
JP2006334780A (en) * 2001-01-30 2006-12-14 Nec Corp Robot, robot control system, and its program
JP2012532390A (en) * 2009-07-10 2012-12-13 オルドウバラン、ロボティクス エス、ア System and method for generating contextual motion of a mobile robot
JP2014144523A (en) * 2013-01-30 2014-08-14 Fanuc Ltd Operating program creation device
JP2014210332A (en) * 2013-04-02 2014-11-13 トヨタ自動車株式会社 Work change apparatus, work change method, and work change program
JP2015136762A (en) * 2014-01-23 2015-07-30 セイコーエプソン株式会社 Processor, robot, robot system and processing method

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001353678A (en) * 2000-06-12 2001-12-25 Sony Corp Authoring system and method and storage medium
JP2002127061A (en) * 2000-10-24 2002-05-08 Nippon Telegraph & Telephone East Corp Agent-robot cooperative control system
JP2006334780A (en) * 2001-01-30 2006-12-14 Nec Corp Robot, robot control system, and its program
JP2012532390A (en) * 2009-07-10 2012-12-13 オルドウバラン、ロボティクス エス、ア System and method for generating contextual motion of a mobile robot
JP2014144523A (en) * 2013-01-30 2014-08-14 Fanuc Ltd Operating program creation device
JP2014210332A (en) * 2013-04-02 2014-11-13 トヨタ自動車株式会社 Work change apparatus, work change method, and work change program
JP2015136762A (en) * 2014-01-23 2015-07-30 セイコーエプソン株式会社 Processor, robot, robot system and processing method

Similar Documents

Publication Publication Date Title
JP6767046B2 (en) Voice dialogue system, voice dialogue device, user terminal, and voice dialogue method
JP6054283B2 (en) Speech recognition terminal, server, server control method, speech recognition system, speech recognition terminal control program, server control program, and speech recognition terminal control method
JP2006208696A (en) Device, method, program, and recording medium for remotely controlling application for presentation
JP2019535044A (en) Hybrid speech recognition complex performance automatic evaluation system
JP7106827B2 (en) Information processing device, program and control method
JP2021144218A (en) Voice interaction reconstitution method and device
JP2011232619A (en) Voice recognition device and voice recognition method
JP2018072560A (en) Information processing system, information processor, and information processing method
JP6447689B1 (en) Information processing apparatus and program
JP2000231427A (en) Multi-modal information analyzing device
JP2018120203A (en) Information processing method and program
KR20200017272A (en) Method for executing function based on voice and electronic device for supporting the same
JP2006155086A (en) User interface design device, and its control method
JP2019118992A (en) Robot device control system
CN116450202A (en) Page configuration method, page configuration device, computer equipment and computer readable storage medium
JP6642630B2 (en) Information processing device and program
KR102474690B1 (en) Apparatus for taking minutes and method thereof
KR102530669B1 (en) Method, system, and computer readable record medium to write memo for audio file through linkage between app and web
US11710476B2 (en) System and method for automatic testing of conversational assistance
KR20200053242A (en) Voice recognition system for vehicle and method of controlling the same
KR102446300B1 (en) Method, system, and computer readable record medium to improve speech recognition rate for speech-to-text recording
KR20180099163A (en) Apparatus for expressing interactions corresponding to a user's situation based on internet and method for the same
KR102499873B1 (en) Video Cut-editing online server according to category based on reflection of the purpose of video production and operating method of the online server
JP2014016402A (en) Speech input device
KR102195925B1 (en) Method and apparatus for collecting voice data

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210302

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210914