JP5152694B2 - NETWORK TYPE CONTROL SYSTEM, ITS DEVICE, ITS METHOD, AND ITS PROGRAM - Google Patents
NETWORK TYPE CONTROL SYSTEM, ITS DEVICE, ITS METHOD, AND ITS PROGRAM Download PDFInfo
- Publication number
- JP5152694B2 JP5152694B2 JP2008030439A JP2008030439A JP5152694B2 JP 5152694 B2 JP5152694 B2 JP 5152694B2 JP 2008030439 A JP2008030439 A JP 2008030439A JP 2008030439 A JP2008030439 A JP 2008030439A JP 5152694 B2 JP5152694 B2 JP 5152694B2
- Authority
- JP
- Japan
- Prior art keywords
- script
- command
- unexecuted
- commands
- control
- 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.)
- Active
Links
Images
Description
本発明は、ネットワークによって接続された複数の計算機または処理装置の間で行う遠隔制御の最適化方法およびこれを用いたネットワーク型制御システム、ネットワーク型制御方法及びネットワーク型制御プログラムに関する。 The present invention relates to a method for optimizing remote control performed between a plurality of computers or processing apparatuses connected by a network, a network type control system using the same, a network type control method, and a network type control program.
端末から、コンピュータネットワークを介して接続された電子機器や計算機を制御する分散型の計算機システムが広く用いられている。 Distributed computer systems that control electronic devices and computers connected via a computer network from terminals are widely used.
例えば、アクチュエータを備え、撮像する方向を制御可能なアクティブ型のWebカメラを遠隔地から制御可能なシステムが、ビルなどの監視用途、商品の在庫管理、観光地の情報提供、といった用途で用いられている。 For example, a system that can remotely control an active web camera that has an actuator and can control the direction of imaging is used for monitoring purposes such as buildings, inventory management of goods, and providing information on sightseeing spots. ing.
これらのシステムでは、複数の端末から遠隔制御可能な機器に対して、所望の動作をさせるためのコマンドやコマンドシーケンスが送信される(例えば特許文献1参照)。
この点、上述した分散型の遠隔制御システムには、以下の問題点があった。 In this regard, the above-described distributed remote control system has the following problems.
上述した分散型の遠隔制御システムの問題点は、複数の端末からの動作制御要求が時間的に短い間隔で発行されている場合や、あるいは未実行の動作制御要求が溜まっている場合であって、更に動作制御要求が発行された場合は、時間的に後に発生した動作制御要求の実行が遅れてしまうことである。 The problem with the distributed remote control system described above is when operation control requests from a plurality of terminals are issued at short time intervals or when unexecuted operation control requests are accumulated. Further, when an operation control request is issued, the execution of the operation control request generated later in time is delayed.
その理由は、上述した分散型の遠隔制御システムは、単一のホストコンピュータからの動作制御要求のみしか受け付けないような設計がなされている場合があるためである。また、複数のホストコンピュータからの動作制御要求を受け付けるように設計されている場合であったとしても、要求のあった順番に取りこぼすことなく実行するような設計しかなされていないためである。 This is because the distributed remote control system described above may be designed to accept only operation control requests from a single host computer. In addition, even if it is designed to accept operation control requests from a plurality of host computers, it is only designed to be executed without losing the requested order.
上述の問題点に鑑みて、単一のクライアントからの一連の遠隔手続き群をまとめて新たな遠隔手続きとすることにより、複数回の遠隔手続きによる通信を1回に低減するという技術がある。しかし、この技術は単一のクライアントからの要求についてのみ考慮されている技術であり、複数のクライアントからの要求については考慮されていない。 In view of the above-described problems, there is a technique of reducing communication by a plurality of remote procedures to one time by combining a series of remote procedures from a single client into a new remote procedure. However, this technique is a technique in which only requests from a single client are considered, and requests from a plurality of clients are not considered.
そこで、本発明は、複数の端末からの動作制御要求が同時に発生している場合、または未実行の動作制御要求が溜まっている場合において、時間的に後に発生した要求の実行までの待ち時間を短縮することが可能なネットワーク型制御システム、ネットワーク型制御方法及びネットワーク型制御プログラムを提供することを目的とする。 Therefore, the present invention provides a waiting time until execution of a request that occurs later in time when operation control requests from a plurality of terminals are generated simultaneously or when unexecuted operation control requests are accumulated. It is an object to provide a network type control system, a network type control method, and a network type control program that can be shortened.
更に、本発明は、複数の端末からの動作制御要求が同時に発生している場合、または未実行の動作制御要求が溜まっている場合において、コマンド実行の効率的な処理が可能な
ネットワーク型制御システム、ネットワーク型制御方法及びネットワーク型制御プログラムを提供することを他の目的とする。
Furthermore, the present invention provides a network type control system capable of efficiently executing command execution when operation control requests from a plurality of terminals are simultaneously generated or when unexecuted operation control requests are accumulated. Another object is to provide a network type control method and a network type control program.
本発明の第1の観点によれば、装置としてスクリプトの処理を行う制御装置であって、実行するように要求された複数のスクリプトが未実行の状態の場合に、前記複数の未実行のスクリプトに含まれるコマンドのうちいずれかのコマンドの発行時刻を基準として所定の時間範囲内に発行された未実行のコマンドを抽出し、前記抽出された未実行のコマンドのうち前記未実行のコマンドに付随する制御対象を制御するためのパラメータ値が予め設定された所定条件を満たすコマンドを、実行時に共通化することが可能な候補として抽出するスクリプト分析手段と、前記共通化することが可能な前記候補に基づいて前記複数のコマンドの全てまたは一部のコマンドを統合化するスクリプト統合手段と、を備えることを特徴とする制御装置が提供される。 According to a first aspect of the present invention, a control device that processes a script as a device, and when the plurality of scripts requested to be executed are in an unexecuted state, the plurality of unexecuted scripts An unexecuted command issued within a predetermined time range is extracted with reference to an issue time of any command among commands included in the command, and attached to the unexecuted command among the extracted unexecuted commands Script analysis means for extracting, as a candidate that can be shared at the time of execution , a command that satisfies a predetermined condition in which a parameter value for controlling a control target is preset, and the candidate that can be shared controller provided is characterized in that it comprises, and script integration means all or a part of the command to integrate the plurality of commands on the basis of That.
本発明の第2の観点によれば、方法としてスクリプトの処理を行う制御方法であって、実行するように要求された複数のスクリプトが未実行の状態の場合に、分析手段が、前記複数の未実行のスクリプトに含まれるコマンドのうちいずれかのコマンドの発行時刻を基準として所定の時間範囲内に発行された未実行のコマンドを抽出し、前記抽出された未実行のコマンドのうち前記未実行のコマンドに付随する制御対象を制御するためのパラメータ値が予め設定された所定条件を満たすコマンドを、実行時に共通化することが可能な候補として抽出するスクリプト分析ステップと、統合手段が、前記共通化することが可能な前記候補に基づいて前記複数のコマンドの全てまたは一部のコマンドを統合化するスクリプト統合ステップと、を備えることを特徴とする制御方法が提供される。 According to a second aspect of the present invention, there is provided a control method for processing a script as a method, and when a plurality of scripts requested to be executed are in an unexecuted state, the analysis means includes the plurality of scripts . An unexecuted command issued within a predetermined time range is extracted with reference to an issue time of any command among commands included in an unexecuted script, and the unexecuted command among the extracted unexecuted commands A script analysis step for extracting, as a candidate that can be shared at the time of execution , a command that satisfies a predetermined condition in which a parameter value for controlling a control object associated with the command is set in advance, and an integration unit, based on the candidate that can be of and a script integration step of integrating all or some of the commands of the plurality of commands Control wherein the door is provided.
本発明の第3の観点によれば、プログラムとしてスクリプトの処理を行う制御プログラムであって、実行するように要求された複数のスクリプトが未実行の状態の場合に、前記複数の未実行のスクリプトに含まれるコマンドのうちいずれかのコマンドの発行時刻を基準として所定の時間範囲内に発行された未実行のコマンドを抽出し、前記抽出された未実行のコマンドのうち前記未実行のコマンドに付随する制御対象を制御するためのパラメータ値が予め設定された所定条件を満たすコマンドを、実行時に共通化することが可能な候補として抽出するスクリプト分析機能と、前記共通化することが可能な前記候補に基づいて前記複数のコマンドの全てまたは一部のコマンドを統合化するスクリプト統合機能と、をコンピュータに実現させることを特徴とする制御プログラムが提供される。 According to a third aspect of the present invention, there is provided a control program for processing a script as a program, and when the plurality of scripts requested to be executed are in an unexecuted state, the plurality of unexecuted scripts An unexecuted command issued within a predetermined time range is extracted with reference to an issue time of any command among commands included in the command, and attached to the unexecuted command among the extracted unexecuted commands the predetermined condition is satisfied command parameter value for controlling the control target is set in advance to, and scripts analyzing function of extracting a candidate that can be shared at runtime, the candidate capable of the common this to realize, and script integration capabilities to integrate all or part of the command of the plurality of commands into the computer on the basis of the Control program is provided, wherein.
本発明によれば、統合化可能なコマンドやスクリプトに関して統合の可否を判断するルールを記述するだけで、複数の端末がネットワークを介して接続された機器を制御するシステムにおける実行速度を向上することが可能となる。 According to the present invention, it is possible to improve the execution speed in a system in which a plurality of terminals control devices connected via a network only by describing a rule for determining whether or not integration is possible for commands and scripts that can be integrated. Is possible.
その理由は、未実行のコマンドが滞留している状況において、スクリプト分析手段とスクリプト統合手段によって、コマンド実行による効果あるいは結果が近い複数のコマンドを抽出し、これらを1つのコマンドに代替することで、実行するコマンドの数を低減できるためである。 The reason for this is that, in a situation where unexecuted commands remain, the script analysis means and script integration means extract multiple commands that have similar effects or results from command execution and replace them with one command. This is because the number of commands to be executed can be reduced.
次に、本発明の実施の形態について図面を参照して詳細に説明する。 Next, embodiments of the present invention will be described in detail with reference to the drawings.
図1を参照すると、本発明の第1の実施形態は、端末装置1と、コンピュータネットワーク2と、計算機装置3を有する。
Referring to FIG. 1, the first embodiment of the present invention includes a
端末装置1は例えば、個人向け計算機(Personal Computer)や個人向け携帯端末(Personal Digital Assistant)、車載ナビゲーションシステム等の端末装置である。コンピュータネットワーク2は、コマンドやデータ等を通信するネットワークであり端末装置1と、計算機装置3を接続している。計算機装置3は、ロボットやWebカメラ等の出力機能を有する装置である。
The
図2は本発明における計算機装置3の代表的な構成を示すブロック図である。図2を参照すると、計算機装置3は、スクリプト受信部31と、スクリプト記憶部32と、スクリプト分析部34と、スクリプト分析ルール格納部33と、スクリプト統合部35と、スクリプト実行部36と、出力機能制御部37と、出力装置38を有している。
FIG. 2 is a block diagram showing a typical configuration of the
スクリプト受信部31は、コンピュータネットワーク2を介して接続された端末装置1からスクリプトデータを解釈して受信する。本実施形態におけるスクリプトデータは、例えばHTTP(Hyper Text Transfer Protocol)等の通信規約に準拠した方式で送られるXML(Extended Markup Language)形式等の言語で記述された、処理の手続きを示すデータである。
The
スクリプト記憶部32は、前記スクリプトデータと共に、該スクリプトデータの関連情報を記憶する。スクリプト記憶部32の記憶するデータの一例を図3を参照して説明する。
The
本実施形態における例では、一つのスクリプトデータとこのスクリプトデータの関連情報(以降、スクリプトデータの関連情報を「スクリプトデータ関連情報」と記述する。)は、要求番号321と、クライアント識別ID322と、要求スクリプト本体323と、要求時刻324を有している。ここで、スクリプトデータの関連情報はあくまで本実施形態での例であって、他の情報に置き換えても構わない。また、その他の関連情報を含むようにしても構わない。
In the example of this embodiment, one piece of script data and related information of the script data (hereinafter, the related information of the script data is described as “script data related information”) includes a
要求番号321は、スクリプトデータと、スクリプトデータ関連情報の各セットに対応してつけられる番号である。以降、スクリプトデータとスクリプトデータ関連情報を合わせてセットとしたデータを「スクリプトデータセット」と呼ぶこととする。
The
クライアント識別ID322は、例えば端末のネットワーク上の識別IDであるIP(Internet Protocol)アドレスであり、送信元である端末毎に独立して割り振られているおり、送信元である端末を特定するためのものである。
The
要求スクリプト本体323は、端末装置1から送られてきた処理の手続きであるスクリプトデータそのものであるか、あるいはスクリプトデータが格納されるファイルへのリンクであっても構わない。
The request script
要求時刻324は、端末装置1から処理の手続きであるスクリプトデータを送った時刻を表すものである。要求時刻324は、端末装置1側で該スクリプトデータに時刻データを付与して送信し、スクリプト受信部31を経由してスクリプト記憶部でデコードされ、時刻データとして格納されるようにしてもよい。
The
また、別の場合として、要求時刻324は、端末装置1からは処理の手続きであるスクリプトデータを送るのみとしてもよい。このようにした場合は、スクリプト受信部31またはスクリプト記憶部32のいずれかにおいて、該スクリプトデータを受信した時刻を時刻データとする。
In another case, the
これら2つの要求時刻324の与え方は、コンピュータネットワーク2におけるデータの送信時間のばらつきが大きい場合は前者の方法が望ましい。一方、コンピュータネットワーク2におけるデータの送信時間のばらつきが大きくない場合はいずれの方法であっても構わない。
The method of giving these two
また、スクリプト記憶部32は、スクリプト統合部35からの命令によって、格納しているスクリプトデータセットの集合を再構成する。具体的な詳細動作については後述するが、スクリプト統合部35において統合されるスクリプトデータの対象となるスクリプトデータセットは削除される。
Further, the
スクリプト分析部34は、スクリプト記憶部32に格納されている全てのスクリプトデータセットに対して、スクリプト分析ルール格納部33に格納されたスクリプト分析ルールを適用し、ルールに適合するスクリプトデータセットを抽出する。
The
スクリプト分析ルール格納部33は、スクリプト分析ルールが格納されている部分である。
The script analysis
スクリプト実行部36はスクリプトを実行する機能を有する。スクリプト実行部36の実行結果はネットワーク2を通じて外部に出力されるか、あるいは、出力機能制御部37に伝達される。出力機能制御部37では、伝達された情報の出力に関しての制御を行う機能を有する。そして、スクリプトの実行結果は、出力機能制御部37の制御のもと、出力装置38から出力される。
The
次に、図2のブロック図及び図4のフローチャートを参照して本実施の形態の動作の詳細について説明する。 Next, details of the operation of the present embodiment will be described with reference to the block diagram of FIG. 2 and the flowchart of FIG.
端末装置1からコンピュータネットワーク2を通信路として送られてきたスクリプトデータを含むデータは、スクリプト受信部31に受け取られる。スクリプト受信部31は、送信元である端末装置1を特定するIDと、スクリプトが送信あるいは受信された時刻と、スクリプトデータを分離した形で取り出して、スクリプト記憶部32に受け渡す。スクリプト記憶部32は、既に記憶済みのスクリプトデータセットと区別することが可能な形式で、受け渡されたスクリプトデータとスクリプトデータ関連情報を格納する。区別するために最も一般的と考えられる形式は、スクリプト記憶部32が受信した時刻の古い順から昇順に整数の番号をつける形式である。もっとも、スクリプトデータとスクリプトデータ関連情報のセットが互いに区別できるのであれば、他の形式を用いてもよい。
Data including script data transmitted from the
スクリプト分析部34は、スクリプト記憶部32に格納されているスクリプトデータセットに対して、予め設定した時間間隔で以下の処理を行う。この処理について図4を用いて説明する。
The
まず、スクリプト記憶部32に格納されている全てのスクリプトデータセットに対して、スクリプト分析ルールに適合するか否かを判断する処理を行ったかを調べる(ステップA1)。ステップA1で調べた結果、全てのスクリプトデータセットに対して判断処理を行っている場合には、終了ステップに分岐する(ステップA1のYES)。一方、ステップA1で調べた結果、未処理のスクリプトデータセットがある場合には、ステップA2に進む(ステップA1のNO)。
First, it is checked whether or not processing for determining whether or not all script data sets stored in the
次に、未処理のスクリプトデータセットのうち、要求番号の最も小さいものを取り出し、スクリプト分析ルール格納部33に格納されたスクリプト分析ルールの代替可能コマンドテーブルに定義された代替可能コマンドを含むか否かを調べる(ステップA2)。
Next, the unprocessed script data set having the smallest request number is taken out, and whether or not a replaceable command defined in the replaceable command table of the script analysis rule stored in the script analysis
ステップA2で調べた結果、代替可能コマンドがあると判断された場合はステップA4に進む(ステップA3のYES)。一方、代替可能コマンドがないと判断された場合は終了ステップに分岐する(ステップA3のNO)。 If it is determined in step A2 that there is a replaceable command, the process proceeds to step A4 (YES in step A3). On the other hand, if it is determined that there is no replaceable command, the process branches to an end step (NO in step A3).
次に、代替可能コマンドの識別IDと、代替可能コマンドを含む要求スクリプトの要求番号を記憶する(ステップA4)。そして未処理のスクリプトデータセットのうち、要求番号がステップA4で記憶した要求番号の次に小さいものを取り出し、スクリプト分析ルール格納部33に格納されたスクリプト分析ルールの代替可能コマンドテーブルに定義された代替可能コマンドを含むか否かを調べる(ステップA5)。含んでいる場合は、再度ステップA1から処理を行う(ステップA5のYES)。一方含んでいない場合はステップA6に進む(ステップA5のNO)。
Next, the identification ID of the replaceable command and the request number of the request script including the replaceable command are stored (step A4). Of the unprocessed script data sets, the request number having the next smallest request number stored in step A4 is taken out and defined in the script analysis rule substitutable command table stored in the script analysis
次に、未処理の代替可能コマンドがあるか否かを判断する。未処理の代替可能コマンドがある場合は、ステップA7に進む(ステップA6のYES)。一方未処理の代替可能コマンドがない場合は、終了ステップに分岐する(ステップA6のNO)。 Next, it is determined whether there is an unprocessed replaceable command. If there is an unprocessed replaceable command, the process proceeds to step A7 (YES in step A6). On the other hand, if there is no unprocessable replaceable command, the process branches to an end step (NO in step A6).
次に、同一の識別IDを持つ代替可能コマンドのうち、要求時刻の最も早いコマンドから予め与えた時間閾値以内のコマンドを抽出する(ステップA7)。 Next, out of the replaceable commands having the same identification ID, a command within the time threshold given in advance is extracted from the command with the earliest request time (step A7).
ステップA7において、時間閾値以内のコマンドが抽出された場合はステップA9に進む(ステップA7のYES)一方、時間閾値以内のコマンドが抽出されなかった場合は、ステップA6に進む(ステップA8のNO)。 In step A7, if a command within the time threshold is extracted, the process proceeds to step A9 (YES in step A7). On the other hand, if a command within the time threshold is not extracted, the process proceeds to step A6 (NO in step A8). .
次に、ステップA7において抽出されたコマンドの中から代替に用いるコマンドを算出する。以後のステップでは、この算出されたコマンドのパラメータを用いて代替がされることとなる(ステップA9)。 Next, a command used as an alternative is calculated from the commands extracted in step A7. Subsequent steps are replaced by using the calculated command parameters (step A9).
ステップA9で算出されたコマンドのパラメータから予め与えた条件を満たすパラメータを持つコマンドを抽出する(ステップA10)。 A command having a parameter satisfying a predetermined condition is extracted from the command parameters calculated in step A9 (step A10).
ステップA10で抽出されたコマンドのうち、記憶した時刻の最も早いコマンドのみをステップA7において抽出された代替に用いるコマンドのパラメータに置換する。そして、ステップA10で抽出されたコマンドのうち置換したコマンド以外の残りのコマンドを記憶領域から削除する(ステップA11)。 Of the commands extracted in step A10, only the command with the earliest stored time is replaced with the parameter of the command used for substitution extracted in step A7. Then, the remaining commands other than the replaced command among the commands extracted in step A10 are deleted from the storage area (step A11).
図5にスクリプト分析ルールの一例を示す。図5を用いてスクリプト分析ルールについて説明する。 FIG. 5 shows an example of the script analysis rule. The script analysis rule will be described with reference to FIG.
”カメラ方向設定”というタグ名は遠隔制御可能なCCD(Charge Coupled Devices)カメラやCMOS(Complementary Metal Oxide Semiconductor)カメラなどの撮影方向を規定するための動作位置を制御するコマンドを示す。ここで、動作位置とは例えば、カメラの撮影方向を変えるアクチュエータとセットで設置されたエンコーダの数値情報として表現される。”カメラ方向設定”というタグで規定されるデータセットの子要素である”時間閾値”は、”カメラ方向設定”というコマンドに関して、異なる時刻に発行された複数のコマンドについて、時間的に近接しており統合可能候補として判断するための尺度として用いられる。例えば、2つのコマンドについて、両者の発行された時刻の差の絶対値が”時間閾値”要素の値である30秒より小さい場合には、これら2つのコマンドは統合可能候補と判断されることになる。 The tag name “camera direction setting” indicates a command for controlling an operation position for defining a photographing direction of a remotely controlled CCD (Charge Coupled Devices) camera, a CMOS (Complementary Metal Oxide Semiconductor) camera, or the like. Here, the operation position is expressed, for example, as numerical information of an encoder installed as a set with an actuator that changes the shooting direction of the camera. The “time threshold”, which is a child element of the data set defined by the tag “camera direction setting”, is related to the command “camera direction setting” in a time-sequential manner for a plurality of commands issued at different times. It is used as a scale for judging as a candidate that can be integrated. For example, if the absolute value of the time difference between the two commands is less than 30 seconds, which is the value of the “time threshold” element, these two commands are determined as candidates for integration. Become.
また、”カメラ方向設定”というタグで規定されるデータセットの子要素である”x方向下限値”と”x方向上限値”は、”カメラ方向設定”というコマンドに関して、異なる時刻に発行された複数のコマンドについて、x方向の位置に関して近接しており統合可能候補として判断するための尺度として用いられる。すなわち、あるコマンド”カメラ方向設定”について、このコマンドに付随するパラメータ”x方向値”の値が、”x方向下限値”と”x方向上限値”の間の範囲を満たす場合は、統合可能な候補コマンドと判断される。同様に、”y方向下限値”と”y方向上限値”“は、”カメラ方向設定”というコマンドに関して、異なる時刻に発行された複数のコマンドについて、y方向の位置に関して近接しており統合可能候補として判断するための尺度として用いられる。すなわち、あるコマンド”カメラ方向設定”について、このコマンドに付随するパラメータ”y方向値”の値が、”y方向下限値”と”y方向上限値”の間の範囲を満たす場合は、統合可能な候補コマンドと判断される。ここで、”x方向下限値”と”x方向上限値”の間の範囲、”y方向下限値”と”y方向上限値”の間の範囲の規定においては、境界値である下限値および上限値については、それぞれの境界値を条件を満たすと判断する場合と、条件を満たさないと判断する場合があるが、いずれの判断方式であっても構わない。例えば図5の例であれば、”x方向下限値”が15度であり、”x方向値”が15度であった場合に条件を満たすと判断するという判断方式を用いてもよく、条件を満たさないと判断するという判断方式を用いてもよい。 Also, “x direction lower limit value” and “x direction upper limit value” which are child elements of the data set defined by the tag “camera direction setting” were issued at different times with respect to the command “camera direction setting”. A plurality of commands are close to each other in the x direction, and are used as a scale for determining as a integrable candidate. That is, for a certain command “camera direction setting”, if the value of the parameter “x direction value” accompanying this command satisfies the range between “x direction lower limit value” and “x direction upper limit value”, integration is possible. Is judged as a candidate command. Similarly, “y direction lower limit value” and “y direction upper limit value” are related to the command “camera direction setting”, and a plurality of commands issued at different times are close to each other in the y direction position and can be integrated. In other words, for a certain command “camera direction setting”, the parameter “y direction value” associated with this command is set to “y direction lower limit value” and “y direction upper limit value”. If the range between is satisfied, it is determined that the command can be integrated, where “x direction lower limit value” and “x direction upper limit value” range, “y direction lower limit value” and “y direction”. In the definition of the range between the “upper limit value”, the lower limit value and the upper limit value, which are boundary values, may be determined to satisfy the respective boundary values, or may not be satisfied. For example, in the example of Fig. 5, it is determined that the condition is satisfied when the "x direction lower limit value" is 15 degrees and the "x direction value" is 15 degrees. A determination method of determining whether or not the condition is satisfied may be used.
スクリプト分析部34は、例えば図5のスクリプト分析ルールにおいて、最も早い時刻に発行された未実行の”カメラ方向設定”コマンドの発行時刻、x方向位置、y方向位置を基準として、”時間閾値”、”x方向下限値”、”x方向上限値”、”y方向下限値”、”y方向下限値”の全ての条件を満たす一つあるいは複数の”カメラ方向設定”コマンドについて、基準として用いた最も早い時刻に発行された未実行の”カメラ方向設定”コマンドも含む全てのコマンドを、<置換方法>というタグで記述された方法で算出されたコマンドに統合化する。本実施形態での例では、置換方法として中間値を用いる。具体的には、統合化したコマンドとして、前記の該当する全てのコマンドのx方向位置、y方向位置の数値を値の大きい方から順番に並べて値の大きい方から数えた場合のちょうど中間の順番に相当する値をそれぞれ、x方向位置、y方向位置として採用する。
For example, in the script analysis rule of FIG. 5, the
ここで説明した例では、統合候補と判断するコマンドは、コマンド名が同一であり、コマンドの持つパラメータが近い値を持つというものである。もっとも、統合候補と判断するか否かの本質的な基準は、コマンド名の同一性やパラメータの値が近似するかどうかということではなく、コマンドやコマンドシーケンスの実行による効果が近いことである。この点、図6に示す、図5とは異なるスクリプトルールを用いてコマンドやコマンドシーケンスの実行による効果が近いという判断処理について説明する。 In the example described here, commands that are determined to be integration candidates have the same command name, and the parameters of the command have similar values. However, an essential criterion for determining whether or not to be an integration candidate is not the identity of the command name or whether the parameter values are approximate, but the effect of executing the command or command sequence is close. In this regard, a description will be given of a determination process shown in FIG. 6 in which the effect of executing a command or command sequence is close using script rules different from those in FIG.
図6の例では、図5のルールに加えて、物体Aを撮影するという内容を持つコマンドとして、物体撮影というコマンドとこのコマンドのパラメータとして、対象物として物体Aを与えたものを判断ルールとして定義されている。ここで、物体Aを撮影するという内容を持つ指示と”カメラ方向設定”とを比較する。前者はコマンドというよりはむしろカメラを対象物に向けて撮影するというコマンドの複合体に相当するマクロやライブラリである。一方、後者は単なるコマンドである。このように、記述レベルや動作内容において両者は異なるものである。しかしながら、仮に物体Aを撮影するという内容を持つ指示において、その動作の一部である物体Aの方向にカメラを向ける動作は”カメラ方向設定”と類似の実行結果を導くものであるなら、これら2つのコマンドは統合可能である。 In the example of FIG. 6, in addition to the rule of FIG. 5, as a command having the content of photographing the object A, a command of photographing an object and a parameter given with the object A as a target are given as judgment rules. Is defined. Here, the instruction having the content of photographing the object A is compared with “camera direction setting”. The former is not a command but a macro or library corresponding to a complex of commands for shooting a camera toward an object. On the other hand, the latter is just a command. Thus, the two differ in description level and operation content. However, in the instruction having the content of photographing the object A, if the operation of pointing the camera in the direction of the object A that is a part of the operation leads to an execution result similar to “camera direction setting”, these The two commands can be integrated.
図6のルールはこのように、物体Aを撮影するという内容を持つ指示が”カメラ方向設定”と類似の効果をもたらすという判断のもとで、スクリプト分析ルールに加えられた例である。すなわち、この例のように、同一のコマンド名でパラメータが近似のもののみならず、異なるコマンド名、マクロ名、ライブラリ名であったとしても、実行時に同等あるいは類似の効果が期待出来るものについては、スクリプト分析ルールに定義して統合することが出来る。 The rule in FIG. 6 is an example added to the script analysis rule based on the determination that the instruction having the content of photographing the object A has an effect similar to “camera direction setting”. That is, as in this example, not only the parameters with the same command name but approximate parameters, even if different command names, macro names, and library names can be expected to have the same or similar effect at runtime Can be defined and integrated into script analysis rules.
また、これまでの説明は、ある時点において未実行のコマンドを対象として統合可能か否かを判断するものであった。この点、ある時点において未実行のコマンドのうち、実行の結果として期待される効果が当該時点の状態と同一あるいは近似の状態であると解釈出来るコマンドについては、実行する必要が無い。これは、前述の説明ではある時点で未実行のコマンドを対象に統合候補の判断処理を行っていたのに対して、ある時点での状態に導く既に実行済みのコマンドと未実行のコマンドを併せて対象とし統合候補の判断処理を行うように変更することで実現可能である。この場合、当該時点で実行済みのコマンドと未実行のコマンドを統合した結果として、実行済みのコマンドが統合コマンドとして選択されるということになる。 Further, the description so far has been made as to whether or not the unexecuted command can be integrated at a certain point in time. In this regard, among commands that are not executed at a certain point in time, it is not necessary to execute a command that can be interpreted that the effect expected as a result of execution is the same as or similar to the state at that point. This is because, in the above description, the integration candidate determination process is performed for an unexecuted command at a certain point in time, whereas an already executed command and an unexecuted command that lead to a state at a certain point are combined. This can be realized by changing the processing to determine the integration candidate as a target. In this case, as a result of integrating the command that has been executed and the command that has not been executed at that time, the executed command is selected as the integrated command.
図7は、具体的なスクリプトデータセットに対して、スクリプト分析部34の処理において、時間閾値に関する処理を行った結果の一例である。この例では、スクリプト記憶部に格納された未実行のコマンドである要求番号1から9のコマンドについて、時間閾値に関する処理を行った結果として、”Script_A1.xml”、”Script_A2.xml”、”Script_A3.xml”、”Script_A4.xml”及び”Script_A5.xml”の5つのコマンドが統合可能なコマンドの候補として抽出されている。
FIG. 7 is an example of a result obtained by performing processing related to the time threshold in the processing of the
図8は、スクリプト分析部34の処理において、図7に示す処理に引き続いて行われる処理の処理結果を示す。この例では、前述した図7の示す処理結果である”Script_A1.xml”、”Script_A2.xml”、”Script_A3.xml”、”Script_A4.xml”及び”Script_A5.xml”の5つのコマンドが統合可能なコマンドの候補について、図7のスクリプトルールに従って、統合コマンドとして、中間値である”Script_A2.xml”を採用している。
FIG. 8 shows a processing result of a process performed subsequent to the process shown in FIG. 7 in the process of the
図9は、スクリプト統合部35でいくつか(この図では5つの)のスクリプトデータセットを統合する場合における、統合の前と後のスクリプト記憶部の状態を表す。この例では、統合の前の状態では、未実行のコマンドとして要求番号1から9のコマンドが格納されているが、統合によって、”Script_A1.xml”、”Script_A2.xml”、”Script_A3.xml”、”Script_A4.xml”、”Script_A5.xml”の5つのコマンドが1つのコマンド”Script_A2.xml”に統合されて、統合の後の状態では、未実行のコマンドとして要求番号1から5のコマンドが格納される状態に変化していることを示す。
FIG. 9 shows the state of the script storage unit before and after the integration when several (five in this figure) script data sets are integrated by the
[発明の他の実施の形態]
次に、本発明の第2の実施の形態について図面を参照して詳細に説明する。
[Other Embodiments of the Invention]
Next, a second embodiment of the present invention will be described in detail with reference to the drawings.
図10を参照すると、本発明の第2の実施の形態は、スクリプト統合UI確認部39が、図2に示された第1の実施の形態におけるスクリプト分析部34とスクリプト統合部36の間に加えられている点で異なる。スクリプト統合UI確認部39は、スクリプト分析部34によって分析された統合処理の内容の実行の可否について、実行前に、統合の対象となるスクリプトを送信した端末あるいは端末の操作者に問い合わせる。
Referring to FIG. 10, in the second embodiment of the present invention, the script integration
具体的な問い合わせ方法の1つの例としては、操作者が端末を介して送信した要求スクリプトとスクリプト分析部が判断した変更内容をそれぞれ、計算機の画面上の別ウィンドウ上にテキスト表示しつつ、変更をしてもよいかを質問する方法がある。質問の方法としては、計算機の画面上に質問内容をテキスト表示する、あるいはスピーカーを介して音声合成機能を用いて音声出力によって質問する方法などがある。また、操作者からの回答を得る方法としては、キーボードから”Yes”、”No”などの入力をさせる方法、または画面上に表示した”Yes”、”No”のボタン表示をポインティングデバイスなどによって選択してもらう方法、または操作者に”Yes”、”No”の意味に相当する音声を発してもらい、計算機に内蔵した音声認識機能によって入力する方法、などがある。 One example of a specific inquiry method is to change the request script sent by the operator via the terminal and the change determined by the script analysis unit while displaying the text on a separate window on the computer screen. There is a way to ask if you can. As a method for asking a question, there are a method of displaying the contents of a question as text on a computer screen, or asking a question by voice output using a voice synthesis function via a speaker. In addition, as a method of obtaining an answer from the operator, a method of inputting “Yes” or “No” from the keyboard, or a button display of “Yes” or “No” displayed on the screen by a pointing device or the like. There is a method of having a user select, or a method in which an operator utters a voice corresponding to the meanings of “Yes” and “No” and inputs the voice using a voice recognition function built in the computer.
以上説明した本発明の実施形態を実施することにより、統合化可能なコマンドやスクリプトに関して統合の可否を判断するルールを記述するだけで、複数の端末がネットワークを介して接続された機器を制御するシステムにおける実行速度を向上することが可能となる。 By implementing the embodiment of the present invention described above, it is possible to control a device in which a plurality of terminals are connected via a network simply by describing a rule for determining whether or not integration is possible for commands and scripts that can be integrated. It becomes possible to improve the execution speed in the system.
また、発明の他の実施の形態のように実施形態を変形することによりユーザの意図に沿わないスクリプト統合を行ってしまうことを避けることが可能となる。 In addition, it is possible to avoid performing script integration that does not conform to the user's intention by modifying the embodiment as in other embodiments of the invention.
なお、本発明の実施形態であるネットワーク型制御システム及び計算機装置は、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。 Note that the network type control system and the computer apparatus according to the embodiment of the present invention can be realized by hardware, software, or a combination thereof.
1 端末機器
2 計算機ネットワーク
3 制御機器
31 スクリプト受信部
32 スクリプト記憶部
33 スクリプト分析ルール格納部
34 スクリプト分析部
35 スクリプト統合部
36 スクリプト実行部
37 出力機能制御部
38 出力装置
39 スクリプト統合可否確認UI部
71 スクリプト記憶部格納データ
72 スクリプト分析ルールデータ
73 スクリプト分析部出力データ
81 スクリプト統合部出力データ
321 スクリプト記憶データ要素ID(要求番号)
322 クライアント識別ID
323 要求スクリプト本体
324 要求時刻
DESCRIPTION OF
322 Client ID
323
Claims (15)
実行するように要求された複数のスクリプトが未実行の状態の場合に、前記複数の未実行のスクリプトに含まれるコマンドのうちいずれかのコマンドの発行時刻を基準として所定の時間範囲内に発行された未実行のコマンドを抽出し、前記抽出された未実行のコマンドのうち前記未実行のコマンドに付随する制御対象を制御するためのパラメータ値が予め設定された所定条件を満たすコマンドを、実行時に共通化することが可能な候補として抽出するスクリプト分析手段と、
前記共通化することが可能な前記候補に基づいて前記複数のコマンドの全てまたは一部のコマンドを統合化するスクリプト統合手段と、
を備えることを特徴とする制御装置。 A control device for processing a script,
When a plurality of scripts requested to be executed are in an unexecuted state, the command is issued within a predetermined time range based on the issue time of any command among the commands included in the plurality of unexecuted scripts. A command that satisfies a predetermined condition in which a parameter value for controlling a control target associated with the unexecuted command among the extracted unexecuted commands is set at the time of execution. Script analysis means for extracting as candidates that can be shared,
Script integration means for integrating all or some of the plurality of commands based on the candidates that can be shared;
A control device comprising:
実行するように要求された複数のスクリプトが未実行の状態の場合に、前記複数の未実行のスクリプトに含まれるコマンドのうちいずれかのコマンドの発行時刻を基準として所定の時間範囲内に発行された未実行のコマンドを抽出し、前記抽出された未実行のコマンドのうち同一あるいは類似の実行結果に到達することが期待されるコマンドを、実行時に共通化することが可能な候補として抽出するスクリプト分析手段と、
前記共通化することが可能な前記候補に基づいて前記複数のコマンドの全てまたは一部のコマンドを統合化するスクリプト統合手段と、
を備えることを特徴とする制御装置。 A control device for processing a script,
When a plurality of scripts requested to be executed are in an unexecuted state, the command is issued within a predetermined time range based on the issue time of any command among the commands included in the plurality of unexecuted scripts. was extracted unexecuted command script to extract the commands to be expected to reach the same or similar execution result of unexecuted commands the extracted candidates that can be shared at runtime Analytical means;
Script integration means for integrating all or some of the plurality of commands based on the candidates that can be shared;
A control device comprising:
実行するように要求された複数のスクリプトが未実行の状態の場合に、分析手段が、前記複数の未実行のスクリプトに含まれるコマンドのうちいずれかのコマンドの発行時刻を基準として所定の時間範囲内に発行された未実行のコマンドを抽出し、前記抽出された未実行のコマンドのうち前記未実行のコマンドに付随する制御対象を制御するためのパラメータ値が予め設定された所定条件を満たすコマンドを、実行時に共通化することが可能な候補として抽出するスクリプト分析ステップと、
統合手段が、前記共通化することが可能な前記候補に基づいて前記複数のコマンドの全てまたは一部のコマンドを統合化するスクリプト統合ステップと、
を備えることを特徴とする制御方法。 A control method for processing a script,
When a plurality of scripts requested to be executed are in an unexecuted state, the analysis means has a predetermined time range based on the issue time of one of the commands included in the plurality of unexecuted scripts. A command that satisfies a predetermined condition in which a parameter value for controlling a control target associated with the unexecuted command is extracted from the extracted unexecuted commands. and a script analysis step of extracting as a candidate that can be shared during execution,
A script integration step in which integration means integrates all or some of the plurality of commands based on the candidates that can be shared; and
A control method comprising:
実行するように要求された複数のスクリプトが未実行の状態の場合に、分析手段が、前記複数の未実行のスクリプトに含まれるコマンドのうちいずれかのコマンドの発行時刻を基準として所定の時間範囲内に発行された未実行のコマンドを抽出し、前記抽出された未実行のコマンドのうち同一あるいは類似の実行結果に到達することが期待されるコマンドを、実行時に共通化することが可能な候補として抽出するスクリプト分析ステップと、
統合手段が、前記共通化することが可能な前記候補に基づいて前記複数のコマンドの全てまたは一部のコマンドを統合化するスクリプト統合ステップと、
を備えることを特徴とする制御方法。 A control method for processing a script,
When a plurality of scripts requested to be executed are in an unexecuted state, the analysis means has a predetermined time range based on the issue time of one of the commands included in the plurality of unexecuted scripts. Candidates that can extract unexecuted commands issued in the command and can share commands that are expected to reach the same or similar execution results among the extracted unexecuted commands Script analysis step to extract as
A script integration step in which integration means integrates all or some of the plurality of commands based on the candidates that can be shared; and
A control method comprising:
前記制御装置が、前記スクリプト分析ステップによって導出されたスクリプト統合の結果を用いてスクリプトの統合を行うことの可否について、統合に使用されたスクリプト要求を行った端末に確認することを特徴とする制御方法。 A control method in a control system, comprising: at least one terminal that makes a script execution request; and a control device that performs the control method according to any one of claims 6 to 9 connected to the terminal via a network. There,
Control that the control device confirms whether or not script integration is possible using the script integration result derived in the script analysis step with the terminal that has made the script request used for integration Method.
実行するように要求された複数のスクリプトが未実行の状態の場合に、前記複数の未実行のスクリプトに含まれるコマンドのうちいずれかのコマンドの発行時刻を基準として所定の時間範囲内に発行された未実行のコマンドを抽出し、前記抽出された未実行のコマンドのうち前記未実行のコマンドに付随する制御対象を制御するためのパラメータ値が予め設定された所定条件を満たすコマンドを、実行時に共通化することが可能な候補として抽出するスクリプト分析機能と、
前記共通化することが可能な前記候補に基づいて前記複数のコマンドの全てまたは一部のコマンドを統合化するスクリプト統合機能と、
をコンピュータに実現させることを特徴とする制御プログラム。 A control program for processing a script,
When a plurality of scripts requested to be executed are in an unexecuted state, the command is issued within a predetermined time range based on the issue time of any command among the commands included in the plurality of unexecuted scripts. A command that satisfies a predetermined condition in which a parameter value for controlling a control target associated with the unexecuted command among the extracted unexecuted commands is set at the time of execution. Script analysis function to extract as candidates that can be shared,
A script integration function for integrating all or some of the plurality of commands based on the candidates that can be shared;
A control program for causing a computer to realize the above.
実行するように要求された複数のスクリプトが未実行の状態の場合に、前記複数の未実行のスクリプトに含まれるコマンドのうちいずれかのコマンドの発行時刻を基準として所定の時間範囲内に発行された未実行のコマンドを抽出し、前記抽出された未実行のコマンドのうち同一あるいは類似の実行結果に到達することが期待されるコマンドを、実行時に共通化することが可能な候補として抽出するスクリプト分析機能と、
前記共通化することが可能な前記候補に基づいて前記複数のコマンドの全てまたは一部のコマンドを統合化するスクリプト統合機能と、
をコンピュータに実現させることを特徴とする制御プログラム。 A control program for processing a script,
When a plurality of scripts requested to be executed are in an unexecuted state, the command is issued within a predetermined time range based on the issue time of any command among the commands included in the plurality of unexecuted scripts. was extracted unexecuted command script to extract the commands to be expected to reach the same or similar execution result of unexecuted commands the extracted candidates that can be shared at runtime Analysis function,
A script integration function for integrating all or some of the plurality of commands based on the candidates that can be shared;
A control program for causing a computer to realize the above.
前記制御装置に、前記スクリプト分析機能によって導出されたスクリプト統合の結果を用いてスクリプトの統合を行うことの可否について、統合に使用されたスクリプト要求を行った端末に確認する機能を更にコンピュータに実現させることを特徴とする制御プログラム。 15. A control program in a control system, comprising: at least one terminal that makes a script execution request; and a control device incorporating the control program according to claim 11 connected to the terminal via a network. Because
The computer further has a function of confirming with the terminal that made the script request used for the integration whether the script can be integrated using the script integration result derived by the script analysis function in the control device. A control program characterized by causing
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008030439A JP5152694B2 (en) | 2008-02-12 | 2008-02-12 | NETWORK TYPE CONTROL SYSTEM, ITS DEVICE, ITS METHOD, AND ITS PROGRAM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008030439A JP5152694B2 (en) | 2008-02-12 | 2008-02-12 | NETWORK TYPE CONTROL SYSTEM, ITS DEVICE, ITS METHOD, AND ITS PROGRAM |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009193123A JP2009193123A (en) | 2009-08-27 |
JP5152694B2 true JP5152694B2 (en) | 2013-02-27 |
Family
ID=41075106
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008030439A Active JP5152694B2 (en) | 2008-02-12 | 2008-02-12 | NETWORK TYPE CONTROL SYSTEM, ITS DEVICE, ITS METHOD, AND ITS PROGRAM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5152694B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5594290B2 (en) | 2009-08-24 | 2014-09-24 | 日本電気株式会社 | Image dynamic range compression system, method and program |
US20200327890A1 (en) * | 2017-11-28 | 2020-10-15 | Sony Corporation | Information processing device and information processing method |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07262123A (en) * | 1994-03-23 | 1995-10-13 | Canon Inc | Device control code compressing device |
JP4186301B2 (en) * | 1999-03-25 | 2008-11-26 | ソニー株式会社 | Data processing apparatus and recording medium |
-
2008
- 2008-02-12 JP JP2008030439A patent/JP5152694B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2009193123A (en) | 2009-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4712678B2 (en) | Robot server for robot control, content providing system including the same, and method thereof | |
JP6916167B2 (en) | Interactive control methods and devices for voice and video calls | |
JP6802305B2 (en) | Interactive server, display device and its control method | |
KR102322773B1 (en) | Method and apparatus for detecting burrs of electrode pieces | |
KR101792492B1 (en) | Remote support apparatus, electronic apparatus, remote support method, and storage medium | |
JP2011154478A (en) | Screen sharing apparatus, control method thereof, program and screen sharing system | |
US20140019427A1 (en) | Framework for context-aware systems and methods | |
KR102067770B1 (en) | Apparatus and method for intergratedly controlling multiple heterogeneous robots | |
WO2016170618A1 (en) | Automatic testing device | |
CN109202908B (en) | Robot control method, device, equipment, system and storage medium | |
US11949980B1 (en) | Operating system integrated image capture guidance | |
JP5152694B2 (en) | NETWORK TYPE CONTROL SYSTEM, ITS DEVICE, ITS METHOD, AND ITS PROGRAM | |
KR20160091258A (en) | Relay apparatus and data communication system | |
CN104954611A (en) | Information processing apparatus and method for controlling same | |
CN114360554A (en) | Vehicle remote control method, device, equipment and storage medium | |
CN113158195B (en) | Distributed vulnerability scanning method and system based on POC script | |
KR20070052641A (en) | Robot server, content providing system and method comprising the same | |
JP4807018B2 (en) | Information processing system and information processing program | |
KR101745330B1 (en) | Computer input automation system | |
US20190349420A1 (en) | Electronic communication device | |
WO2022070353A1 (en) | Information processing system, information processing method, and program | |
JP5014040B2 (en) | Gateway device, gateway method of gateway device, and gateway program | |
JP6006737B2 (en) | Display control method, display control apparatus, display control terminal, and display control program | |
KR20220017057A (en) | Electronic device for controlling target electronic device in iot environment and method thereof | |
EP3796239A1 (en) | Method and device for generating a building automation project |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100811 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100811 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120308 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120507 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121112 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151214 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5152694 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121125 |