JP2006259999A - Peripheral device control unit - Google Patents

Peripheral device control unit Download PDF

Info

Publication number
JP2006259999A
JP2006259999A JP2005074881A JP2005074881A JP2006259999A JP 2006259999 A JP2006259999 A JP 2006259999A JP 2005074881 A JP2005074881 A JP 2005074881A JP 2005074881 A JP2005074881 A JP 2005074881A JP 2006259999 A JP2006259999 A JP 2006259999A
Authority
JP
Japan
Prior art keywords
function
peripheral device
sequence
scenario
command
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.)
Withdrawn
Application number
JP2005074881A
Other languages
Japanese (ja)
Inventor
Akiyoshi Nishimaki
明美 西巻
Masahiro Iwadate
政宏 岩舘
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2005074881A priority Critical patent/JP2006259999A/en
Publication of JP2006259999A publication Critical patent/JP2006259999A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To dynamically create a control script using a peripheral device control application, thereby producing the effects of (1) reducing man hours for software development when dealing with a new kind, (2) reducing man hours for function enhancement, and (3) increasing the variety of function combinations. <P>SOLUTION: This peripheral controller is connected to a function database that manages peripheral control methods or procedures for each function, so as to dynamically create a control sequence. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、周辺機器装置の制御システムに関し、特に、周辺機器の仕様に適合した制御を行うための制御装置、および、制御方法に関する。   The present invention relates to a control system for a peripheral device, and more particularly, to a control device and a control method for performing control conforming to specifications of a peripheral device.

従来、プリンタやコピー機などの周辺機器制御システムにおいて、機器仕様に適合した制御を行うための方法として、以下のような方法が考案されている。   Conventionally, in a peripheral device control system such as a printer or a copier, the following method has been devised as a method for performing control conforming to device specifications.

特開2000−137593号公報では、周辺機器から取得した機器仕様情報に応じて、周辺機器を制御するための制御プログラムのユーザーインターフェースを自動構成するという方法が記載されている。   Japanese Patent Application Laid-Open No. 2000-137593 describes a method of automatically configuring a user interface of a control program for controlling a peripheral device in accordance with device specification information acquired from the peripheral device.

周辺機器を制御する制御プログラムの一例として、プリンタを制御するプリンタドライバに上述の方法を適用した場合、プリンタが有している機能に応じて、プリンタドライバのユーザーインターフェース上で選択できる機能を切り替えることができるので、プリンタドライバをプリンタの仕様に応じた構成にすることができる。   As an example of a control program for controlling peripheral devices, when the above method is applied to a printer driver that controls a printer, the function that can be selected on the user interface of the printer driver is switched according to the function of the printer. Therefore, the printer driver can be configured according to the printer specifications.

その他の方法として特開平9−73303号では、指定された機能シンボルによって順次シーケンス図を作成し、これをもとに制御装置が実行可能なプログラムを自動生成する方法が記載されている。上記の方法をプリンタドライバに適用した場合、プリンタ制御シーケンス図から自動的にプリンタ制御プログラムを生成することができる。
特開2000−137593号公報 特開平9−73303号公報
As another method, Japanese Patent Application Laid-Open No. 9-73303 describes a method in which a sequence diagram is sequentially created with designated function symbols and a program executable by the control device is automatically generated based on the sequence diagram. When the above method is applied to a printer driver, a printer control program can be automatically generated from a printer control sequence diagram.
JP 2000-137593 A JP-A-9-73303

従来の方法では、周辺機器を制御するための一連の制御手順自体は同じで、制御手順に含まれる制御コマンドのパラメータのみが機器や機器構成によって異なる場合は有効であるが、機器や機器の構成によって一連の制御手順(制御スクリプト)自体が大きく異なる場合は、これだけでは解決できない問題が生じていた。   In the conventional method, the series of control procedures for controlling peripheral devices is the same, and it is effective when only the parameters of the control command included in the control procedure differ depending on the device or device configuration. When a series of control procedures (control scripts) differ greatly depending on the problem, there has been a problem that cannot be solved by this alone.

例えば、制御手順(制御スクリプト)が大きく異なる複数のプリンタに対応したプリンタドライバを作成するような場合、一つのプリンタドライバの中に、対応する機種分の制御手順(制御スクリプト)を盛り込まなければならず、プリンタドライバのプログラムが膨大になってしまうという問題が生じていた。   For example, when creating a printer driver corresponding to a plurality of printers having greatly different control procedures (control scripts), the control procedure (control script) for the corresponding model must be included in one printer driver. However, there has been a problem that the printer driver program becomes enormous.

また、プリンタ側の制御手順が変更された場合、プリンタドライバもこれに追従して更新しなければならなかった。即ち、周辺機器の制御方法変更に伴い、ドライバのソフトウェアの変更が必ず生じていた。   Further, when the control procedure on the printer side is changed, the printer driver has to be updated accordingly. In other words, the driver software must be changed with the change of the peripheral device control method.

そして第2の従来方法は、静的にプログラムを生成するものである。そのため、制御手順の変更に対しては、再度プログラム生成やユーザへの配布形態に生成しなおす必要があり、プログラムを再配布しなければならなかった。   The second conventional method generates a program statically. Therefore, in order to change the control procedure, it is necessary to generate the program again or regenerate the distribution form to the user, and the program must be redistributed.

本発明は上述の問題点を解決するためになされたもので、本発明の第1の目的は、周辺機器の機器仕様に適合した制御スクリプトを動的に生成することが可能な周辺機器制御システムを提供することである。   The present invention was made to solve the above-described problems, and a first object of the present invention is a peripheral device control system capable of dynamically generating a control script that conforms to the device specifications of the peripheral device. Is to provide.

また、本発明の第2の目的は、制御手順の異なる複数の周辺機器を一つの制御装置で制御する際、制御装置側の処理や資源の軽減を可能にすることである。   In addition, a second object of the present invention is to enable reduction of processing and resources on the control device side when a plurality of peripheral devices having different control procedures are controlled by one control device.

上記課題を解決するため、制御シーケンスの動的的な生成を達成する。   In order to solve the above-mentioned problems, a dynamic generation of a control sequence is achieved.

本発明は、機能データベースで保持されるシナリオで定義された制御方法を元に、周辺機器を制御するためのシーケンスを自動生成することを特徴とする。機能データベースから動的に機能実現情報を収集してデバイスを制御するため、機能拡張や機能追加によるプログラムの変更が生じず、機能拡張や機能追加にフレキシブルに対応できる。更に、制御方法が異なる複数の機器を一つの制御装置で対応可能である。   The present invention is characterized in that a sequence for controlling peripheral devices is automatically generated based on a control method defined by a scenario held in a function database. Since the function realization information is dynamically collected from the function database to control the device, there is no program change due to the function expansion or function addition, and the function expansion or function addition can be flexibly handled. Furthermore, a plurality of devices with different control methods can be handled by a single control device.

請求項1に記載の周辺機器制御装置は以下の構成を備える。   The peripheral device control apparatus according to claim 1 has the following configuration.

本発明の原理図(図1)で示す。   The principle of the present invention is shown in FIG.

2は本制御装置の制御対象の周辺機器であり、1は周辺機器制御方法や手順を機能毎に管理する機能データベースを示している。   Reference numeral 2 denotes a peripheral device to be controlled by this control apparatus, and 1 denotes a function database for managing peripheral device control methods and procedures for each function.

本発明は、機能データベースとデータベースで保持されている制御方法によって制御される周辺機器と接続し、周辺機器を制御する周辺機器制御システムである。   The present invention is a peripheral device control system for controlling a peripheral device by connecting to a function database and a peripheral device controlled by a control method held in the database.

周辺機器制御装置は、機能データベースから機能実現方法を取得するシナリオ取得部3、取得したシナリオを保持、管理するシナリオ保持部4、シナリオ保持部に格納されているシナリオを用いて、周辺機器を制御するためのシーケンスを生成するシーケンス生成部5、シーケンス生成部が作成したシーケンスを周辺機器制御コマンドに変換し、前記周辺機器へコマンド送信するシーケンス実行部6から構成されている。   The peripheral device control apparatus controls the peripheral device using the scenario acquisition unit 3 that acquires the function realization method from the function database, the scenario storage unit 4 that stores and manages the acquired scenario, and the scenario stored in the scenario storage unit A sequence generation unit 5 that generates a sequence for performing the operation, and a sequence execution unit 6 that converts the sequence created by the sequence generation unit into a peripheral device control command and transmits the command to the peripheral device.

従来のソフトウェアの構成では、周辺機器の機能に応じて周辺機器の制御方法を変更する場合、ソフトウェアを新たに作成する必要があり、ソフトウェアの変更なしに制御方法をアップグレードすることができなかった。   In the conventional software configuration, when the control method of the peripheral device is changed according to the function of the peripheral device, it is necessary to newly create the software, and the control method cannot be upgraded without changing the software.

本発明では、機能データベースに機能毎の制御方法を格納しておき、それを制御装置が利用することによって、ソフトウェアの変更なしに、周辺機器の機器仕様に適合した制御スクリプトの動的生成を可能とした。更に、制御手順の異なる複数の周辺機器を一つの制御装置で制御する際、制御装置側の処理や資源の軽減が可能である。   In the present invention, the control method for each function is stored in the function database, and the control device uses it to dynamically generate a control script that conforms to the device specifications of the peripheral device without changing the software. It was. Furthermore, when a plurality of peripheral devices having different control procedures are controlled by a single control device, it is possible to reduce processing and resources on the control device side.

(第1の実施形態)
以下、本発明による周辺機器制御装置を適応した実施の形態について説明する。
(First embodiment)
Hereinafter, embodiments to which the peripheral device control apparatus according to the present invention is applied will be described.

図2は実施形態における内部構造を示す。   FIG. 2 shows an internal structure in the embodiment.

図2においてCPU(21)はシステムバス(22)を介して、ROM(23)、RAM(24),入力インターフェース(25)、外部記憶インターフェース(27)に接続され、各部との間でデータを授受する。また、入力インターフェース(25)を介してキーボードなどの入力デバイス(26)の入力情報を受信する。外部記憶インターフェース(27)を介してHDなどの外部記憶デバイス(28)のデータを読み書きする。   In FIG. 2, a CPU (21) is connected to a ROM (23), a RAM (24), an input interface (25), and an external storage interface (27) via a system bus (22). Give and receive. Further, input information of an input device (26) such as a keyboard is received via the input interface (25). Data of the external storage device (28) such as HD is read / written via the external storage interface (27).

ROM(23)はCPU(21)によって実行される制御プログラム、装置の初期化における初期データ、プロトコル仕様テーブルなどを記憶している。RAM(24)は、CPU(21)のワークエリアであり、各種レジスタ、データ領域が用意されている。   The ROM (23) stores a control program executed by the CPU (21), initial data for device initialization, a protocol specification table, and the like. The RAM (24) is a work area of the CPU (21), and various registers and data areas are prepared.

図3は実施形態におけるシステムの構成である。本周辺機器制御装置(31)は制御対象の周辺機器A(32)及び周辺機器B(33)とネットワークで接続されており、TCP/IPやUDP/IPなどのトランスポートレイヤの上位に規定されたアプリケーション層の所定プロトコルによりコマンドを授受する。該プロトコルは機器の機能制御コマンドを有しており、印刷や画像スキャン、ファイル蓄積などの機能を実行させることができる。   FIG. 3 shows a system configuration in the embodiment. The peripheral device control device (31) is connected to the peripheral device A (32) and the peripheral device B (33) to be controlled via a network, and is defined above a transport layer such as TCP / IP or UDP / IP. A command is exchanged by a predetermined protocol of the application layer. The protocol has device function control commands, and can execute functions such as printing, image scanning, and file storage.

周辺機器を制御する際、制御装置(31)は、機能データベース(34)に接続し、該制御コマンドによる機能実現方法を取得して周辺機器制御シーケンスを作成、実行する。   When controlling the peripheral device, the control device (31) connects to the function database (34), acquires a function realization method based on the control command, and creates and executes a peripheral device control sequence.

図4は実施形態における周辺機器制御装置のモジュール構成を示す。   FIG. 4 shows a module configuration of the peripheral device control apparatus according to the embodiment.

本周辺機器制御装置(40)は、シナリオ取得部(43)、シナリオ保持部(44)、シーケンス生成部(45)、シーケンス実行部(46)から構成される。   The peripheral device control device (40) includes a scenario acquisition unit (43), a scenario holding unit (44), a sequence generation unit (45), and a sequence execution unit (46).

シナリオ取得部(43)は、機能データベース(41)から機能の実現方法を記載したシナリオを取得し、シナリオ保持部(44)はシナリオを保持する。   The scenario acquisition unit (43) acquires a scenario describing a function realization method from the function database (41), and the scenario holding unit (44) holds the scenario.

シーケンス生成部(45)はシナリオの内容を解析するシナリオ解析部(451)、機能間の関連を考慮してシーケンス生成方法を決定する機能関連情報反映部(452)、複数シナリオを統合するシナリオ統合部(453)から構成される。   The sequence generation unit (45) includes a scenario analysis unit (451) that analyzes the contents of a scenario, a function related information reflection unit (452) that determines a sequence generation method in consideration of the relationship between functions, and a scenario integration that integrates a plurality of scenarios. Part (453).

シーケンス実行部(46)は、シーケンス生成部(45)が生成したシーケンスを解釈するシーケンス解釈部(461)、解析によって抽出されたコマンドを実行形態に変換するコマンド変換部(462)、周辺機器(42)へ接続してコマンドをパケット送信するコマンド実行部(463)から構成される。   The sequence execution unit (46) includes a sequence interpretation unit (461) that interprets the sequence generated by the sequence generation unit (45), a command conversion unit (462) that converts a command extracted by analysis into an execution form, and peripheral devices ( 42) and a command execution unit (463) that transmits a command packet.

機能選択ユーザインターフェース(47)は、ユーザの機能選択画面で、制御対象の周辺機器の機能を指定するものである。   The function selection user interface (47) is used to specify the function of the peripheral device to be controlled on the user function selection screen.

図5は実施形態における機能データベースのデータ構造図である。   FIG. 5 is a data structure diagram of the function database in the embodiment.

機能データベースは、機能を識別する「ID」、「機能名」、機能を実現するために使用されるコマンドを示す「使用コマンド」、コマンド中に指定される属性を示す「使用属性」、機能間の関連を示す「継承機能」及び「集約機能」、具体的なコマンド発行順番を記述したシナリオファイルを示す「シナリオへのリンク」を保持している。   The function database includes an "ID" that identifies the function, a "function name", a "used command" that indicates the command used to implement the function, an "used attribute" that indicates the attribute specified in the command, and between functions “Inheritance function” and “aggregation function” indicating the relationship between the commands, and “scenario link” indicating the scenario file describing the specific command issue order.

機能間の関連を示す「継承機能」を図6で説明する。   The “inheritance function” indicating the relationship between functions will be described with reference to FIG.

“部数を指定して印刷する”という機能(UC002)は、単純に“印刷する”機能(UC001)に部数指定という付加機能を加えたものである。   A function (UC002) of “designating the number of copies” (UC002) is obtained by simply adding an additional function of designating the number of copies to the “print” function (UC001).

“部数を指定して印刷する”機能(UC002)を実現する場合、使用するコマンドはCreateJob,CreatePage,SetAttributeの3つである。一方、“印刷する”機能(UC001)はCreateJob,CreatePageの2つを使用する。“部数を指定して印刷する”機能(UC002)はUC001を継承し、更にSetAttributeコマンドでコピー部数を指定している。   When realizing the “print by specifying the number of copies” function (UC002), there are three commands to be used: CreateJob, CreatePage, and SetAttribute. On the other hand, the “print” function (UC001) uses CreateJob and CreatePage. The “print by specifying the number of copies” function (UC002) inherits UC001 and further specifies the number of copies by the SetAttribute command.

UC003,UC004も同様にUC001を継承し、UC001にSetAttributeによる属性設定を加えた機能と言える。   Similarly, UC003 and UC004 inherit UC001 and can be said to be a function in which attribute setting by SetAttribute is added to UC001.

ところで、“部数指定し且つ両面印刷を行い、ステイプルを行うジョブを投入する”機能は、UC002,UC003,UC004の組み合わせと捉えることができ、継承元のUC001に対してそれぞれの機能を追加していると言える。   By the way, the “Specify the number of copies, double-sided printing, and submit the job for stapling” function can be regarded as a combination of UC002, UC003, and UC004. I can say that.

図7は「集約機能」の例である。   FIG. 7 shows an example of the “aggregation function”.

“機器内のジョブの状態を取得する”機能(UC210)は、“ジョブハンドルを取得する”機能(UC200)と“ジョブの状態を取得する”機能(UC100)の2機能から構成されている。“機器内のジョブの状態を取得する”機能(UC210)を実現するためには、UC200とUC100と順番に実行すればよい。   The “acquisition of job status in device” function (UC210) is composed of two functions: a “acquisition of job handle” function (UC200) and a “acquisition of job status” function (UC100). In order to realize the function (UC210) of “acquisition of job status in device”, UC200 and UC100 may be executed in order.

図5のデータ構造の「継承機能」は、機能を継承している元の機能IDを示し、「集約機能」は、機能を構成する部品の機能IDを示している。   The “inherit function” in the data structure of FIG. 5 indicates the original function ID that inherits the function, and the “aggregate function” indicates the function ID of the components that constitute the function.

図5のデータ構造の“シナリオへのリンク”は、シナリオをXML記述したファイルへのパスである。このXMLファイルには、機能を実現するためのコマンドの発行順序、機能間の関連情報等が示されている。シナリオのスキーマを図8で示す。   “Link to scenario” in the data structure of FIG. 5 is a path to a file in which the scenario is described in XML. In this XML file, the order of issuing commands for realizing the functions, the related information between the functions, and the like are shown. The scenario schema is shown in FIG.

図の四角はXMLのElementを表現しており、上段の四角はXMLの要素名を下段の四角はXMLの要素属性名を示す。   The squares in the figure represent XML elements. The upper squares indicate XML element names, and the lower squares indicate XML element attribute names.

図8の各要素は次の意味を持つ。   Each element in FIG. 8 has the following meaning.

・Function:機能を示す。機能IDと機能名称を要素属性として保持する。Function要素下には、一つ以上のRelationFunctionまたはCommand、Insertion要素が存在する。   -Function: Indicates a function. Holds function ID and function name as element attributes. Under the Function element, there are one or more RelationFunction or Command and Insertion elements.

・RelationalFunction:関連する機能を示す。関連する機能ID(複数指定可)とその関連の種類(継承または集約)を要素属性として保持する。RelationFunction要素下には、Command要素が存在する場合がある。   -RelationalFunction: Indicates a related function. Relevant function ID (can be specified more than once) and the type of the relationship (inheritance or aggregation) are retained as element attributes. There may be a Command element under the RelationFunction element.

・Command:機能を構成するコマンドを示す。コマンド名称を要素属性として持つ。RelationFunction要素下に配置され、且つ継承関係が成り立つ場合のみCommandの挿入位置属性が有効になる。Command要素下には、Parameter要素が存在する。   Command: Indicates a command that constitutes a function. Has command name as element attribute. The command insertion position attribute is valid only when it is placed under the RelationFunction element and the inheritance relationship is established. A Parameter element exists under the Command element.

・Parameter:コマンドのパラメータを示す。パラメータ名称とパラメータの型を要素属性として持つ。Parameter要素下には、パラメータに代入すべき数値またはパラメータ値域内の値いずれかが代入されることを示す予約語(PARAM_ANY)が記載される。   -Parameter: Indicates a command parameter. It has parameter name and parameter type as element attributes. Under the Parameter element, a reserved word (PARAM_ANY) indicating that either a numerical value to be substituted for the parameter or a value in the parameter range is substituted is described.

・Insertion:コマンドの挿入可能位置を示す。Insertion要素の識別のため、ラベル要素属性が定義される。   ・ Insertion: Indicates the position where the command can be inserted. Label element attributes are defined to identify the Insertion element.

機能の具体的なシナリオの記述例を図9、図10、図11に示す。   A description example of a specific scenario of the function is shown in FIG. 9, FIG. 10, and FIG.

図9は継承元のシナリオ例である。“印刷する”機能を示すFunction要素にコマンド挿入可能位置を定義するInsertion要素とコマンドの実行を示すCommand要素が定義されている。本例では、3つのInsertion要素が定義されているが、それぞれCommand要素の“CreateJob”の前と後、“CreatePage”の後にコマンド挿入可能であることを示している。   FIG. 9 shows an example scenario of the inheritance source. In the Function element indicating the “print” function, an Insertion element that defines a command insertion position and a Command element that indicates execution of the command are defined. In this example, three Insertion elements are defined, which indicates that commands can be inserted before and after “CreateJob” of the Command element and after “CreatePage”.

図10は、継承先のシナリオ例である。RelationFunction要素を用いて継承元の機能を指定し、更に、コマンドの追加をCommand要素によって示している。Command要素には継承元の挿入位置を示すPosition要素属性が設けられ、どのInsertion要素の位置にコマンドを追加すべきかを示している。   FIG. 10 shows an example of the inheritance destination scenario. The function of the inheritance source is specified using the RelationFunction element, and the addition of the command is indicated by the Command element. The Command element has a Position element attribute indicating the insertion position of the inheritance source, and indicates to which Insertion element the command should be added.

図11は、集約のシナリオ例である。RelationFunction要素を用いて、集約の部品となる機能シナリオを列挙している。本例の場合、UC210はUC200とUC100から構成され、UC200, UC100の順番でコマンドが構成されることを示している。   FIG. 11 shows an example of an aggregation scenario. Using the RelationFunction element, function scenarios that are aggregate parts are listed. In the case of this example, UC210 is comprised from UC200 and UC100, and it has shown that a command is comprised in order of UC200 and UC100.

図12は実施形態におけるプリント機能のユーザインターフェースと設定データの例である。   FIG. 12 shows an example of a user interface and setting data of the print function in the embodiment.

周辺機器制御装置のUI画面1(121)では、ネットワークに接続されている周辺機器を列挙する。この画面で制御対象の周辺機器を選択し、OKボタンを押下することによりUI画面2(122)が表示される。UI画面2ではプリンタの複数機能を表示しており、ユーザはこの中から所望の機能を指定してドキュメントの印刷を行うことができる。   On the UI screen 1 (121) of the peripheral device control device, peripheral devices connected to the network are listed. The UI screen 2 (122) is displayed by selecting the peripheral device to be controlled on this screen and pressing the OK button. The UI screen 2 displays a plurality of printer functions, and the user can print a document by designating a desired function.

UI画面2でOKボタンを押下することにより、設定データが確定する。同図12の設定データ(123)は、3部の部数印刷機能と両面印刷機能を選択した場合に内部的に保持するデータを示す。   By pressing the OK button on the UI screen 2, the setting data is confirmed. The setting data (123) in FIG. 12 indicates data stored internally when the three-copy printing function and the duplex printing function are selected.

図13は実施形態におけるシステム全体のフローチャートである。   FIG. 13 is a flowchart of the entire system in the embodiment.

図4の機能選択ユーザインターフェース(47)で設定された複数の機能とそのパラメータを取得し(S131)、シナリオ取得部(43)が選択された機能の機能IDを指定して対応するシナリオを機能データベース(41)から取得する(S132)。   A plurality of functions set by the function selection user interface (47) of FIG. 4 and their parameters are acquired (S131), and the scenario acquisition unit (43) specifies the function ID of the selected function and functions the corresponding scenario. Obtained from the database (41) (S132).

取得した全シナリオをマージしてシーケンスを生成するために、シーケンス生成部(45)は次の処理を行う。シナリオ内に抽象パラメータ(PARAM_ANYで示される予約語)が存在する場合は(S134)、抽象パラメータへユーザインターフェースで指定されたパラメータを代入する(S135)。   In order to merge all acquired scenarios and generate a sequence, the sequence generation unit (45) performs the following processing. When an abstract parameter (reserved word indicated by PARAM_ANY) exists in the scenario (S134), the parameter specified by the user interface is substituted for the abstract parameter (S135).

シナリオ内に他機能との関係を示すRelationFunction要素を検出し(S136)、関連が継承関係だった場合は継承関係処理(S138)を、集約関係だった場合は集約関係処理(S139)、関連がなかった場合は、単一機能処理(S137)を行う。   A RelationFunction element indicating a relationship with another function is detected in the scenario (S136). If the relationship is an inheritance relationship, the inheritance relationship processing (S138) is performed. If the relationship is an aggregation relationship, the aggregation relationship processing (S139) is performed. If not, single function processing (S137) is performed.

全てのシナリオについてS134〜S139の処理を行い(S133)指定機能のシナリオを統合した後、コマンド実行に不要なRelationFunctionやInsertion要素を削除する(S1310)。このようにして作成した複数機能のシナリオを統合したシーケンスをファイルの形式で格納する(S1311)。   The processing of S134 to S139 is performed for all scenarios (S133), and the scenario of the designated function is integrated, and then the RelationFunction and Insertion elements unnecessary for command execution are deleted (S1310). A sequence obtained by integrating the scenarios of multiple functions created in this way is stored in a file format (S1311).

図14は、複数のシナリオを統合してシーケンスを作成した例である。“部数を指定して印刷する”機能(UC002)のシナリオと“両面印刷する”機能(UC003)のシナリオを統合して、“部数指定して両面印刷する”機能のシーケンスを生成している。シーケンスには、コマンド実行時に必要な、コマンド種別やパラメータ内容が記載されている。   FIG. 14 shows an example in which a plurality of scenarios are integrated to create a sequence. The scenario of the function “UC002) for specifying the number of copies” and the scenario of the function “UC003” for “duplex printing” (UC003) are integrated to generate a sequence of the function “duplex printing by specifying the number of copies”. The sequence describes the command type and parameter contents necessary for command execution.

図15、図19、図20は、シーケンス生成処理のフローチャートである。シーケンス生成部(45)のシナリオ解析部(451)がシナリオを解析し、機能関連情報反映部(452)が機能間の関連を検出し、継承関係のあるシナリオ、集約関係のあるシナリオ、他の機能とは関連をもたず単一機能で構成されるシナリオの3種類を識別する。   15, 19, and 20 are flowcharts of the sequence generation process. The scenario analysis unit (451) of the sequence generation unit (45) analyzes the scenario, and the function related information reflection unit (452) detects the relationship between the functions, and the inheritance relationship scenario, the aggregation relationship scenario, Identify three types of scenarios that are not related to functions and consist of a single function.

シナリオ統合部(453)は、単一機能のシナリオ、継承関係を持つシナリオ、集約関係を持つシナリオのそれぞれに対応する処理を行い、複数シナリオを統合し、シーケンスファイルを生成する。   The scenario integration unit (453) performs processing corresponding to each of a single function scenario, a scenario having an inheritance relationship, and a scenario having an aggregation relationship, integrates a plurality of scenarios, and generates a sequence file.

図15に示すように、単一機能のシナリオの場合、シナリオ統合部の保持するテンポラリ領域にシナリオを展開する(S151)。   As shown in FIG. 15, in the case of a single function scenario, the scenario is developed in a temporary area held by the scenario integration unit (S151).

図19に示すように、継承関係を持つシナリオの場合、継承している機能IDをシナリオから検出し(S152)、シナリオ取得部(43)を用いて継承している機能のシナリオを取得する(S153)。テンポラリ領域にシナリオが展開されていない場合は(S154)、継承しているシナリオをテンポラリ領域に展開する(S155)。シナリオからCommand要素を検出し、継承している機能のシナリオへCommand要素を追加する。Command要素の挿入位置属性を取得し(S157)、指定位置にCommand要素を挿入する(S158)。全てのCommand要素についてS157〜S158を行う(S156)。   As shown in FIG. 19, in the case of a scenario having an inheritance relationship, the inherited function ID is detected from the scenario (S152), and the scenario of the inherited function is acquired using the scenario acquisition unit (43) ( S153). If the scenario is not expanded in the temporary area (S154), the inherited scenario is expanded in the temporary area (S155). A Command element is detected from the scenario, and a Command element is added to the scenario of the inherited function. The insertion position attribute of the Command element is acquired (S157), and the Command element is inserted at the designated position (S158). S157 to S158 are performed for all Command elements (S156).

図20に示すように、集約関係を持つシナリオの場合、集約している機能のシナリオを抽出し(S1510)、シナリオ取得部(43)を用いて機能の部品として包含している機能のシナリオを取得する(S1512)。取得したシナリオをテンポラリ領域の終端に展開する(S1513)。全てのシナリオについてS1512〜S1513を行う(S1511)。このようにして、集約している機能の出現順序に従って処理を行い、機能の部品となるシナリオを統合する。   As shown in FIG. 20, in the case of a scenario having an aggregation relationship, the scenario of the aggregated function is extracted (S1510), and the scenario of the function included as a functional component using the scenario acquisition unit (43) is extracted. Obtain (S1512). The acquired scenario is developed at the end of the temporary area (S1513). S1512 to S1513 are performed for all scenarios (S1511). In this way, processing is performed in accordance with the appearance order of the functions that have been aggregated, and the scenarios that are functional components are integrated.

上記の手順で作成したシーケンスをシーケンス実行部(46)で実行する。図16はシーケンス実行処理のフローチャートである。シーケンス実行部(46)は、シーケンス作成部(45)で作成したシーケンスを取得し(S161)、対象機器へネットワーク接続する(S162)。取得したシーケンスからCommand要素を抽出し(S163)、抽出したすべてのCommand要素に対し(S164)、Command要素やその要素下にあるParameter要素をパケットに変換して(S165)パケットを送信する(S166)。全てのCommand要素をパケット送信した後、機器の接続を切り(S167)機能依頼のためのコマンド投入を完了する。   The sequence created by the above procedure is executed by the sequence execution unit (46). FIG. 16 is a flowchart of the sequence execution process. The sequence execution unit (46) acquires the sequence created by the sequence creation unit (45) (S161) and connects to the target device via a network (S162). A Command element is extracted from the acquired sequence (S163), and for all the extracted Command elements (S164), the Command element and the Parameter element under the element are converted into packets (S165), and a packet is transmitted (S166). ). After all the Command elements are transmitted in packets, the device is disconnected (S167), and the command input for the function request is completed.

(第2の実施形態)
実施例1の構成では、機器制御装置がネットワークを介して周辺機器を制御していた。
(Second Embodiment)
In the configuration of the first embodiment, the device control apparatus controls peripheral devices via a network.

実施例2では、機器制御装置が周辺機器と同一のシステム内に配置され、周辺機器をローカルで制御する例を示す。   In the second embodiment, an example in which the device control apparatus is arranged in the same system as the peripheral device and the peripheral device is controlled locally will be described.

図17は実施例2のシステム構成図である。周辺機器(172)内に制御装置(173)が配され、制御装置が周辺機器を制御する際は、ネットワークで接続された機能データベース(171)より機能を実現するための方法が記載されたシナリオを取得する。   FIG. 17 is a system configuration diagram of the second embodiment. When the control device (173) is arranged in the peripheral device (172) and the control device controls the peripheral device, a scenario describing a method for realizing the function from the function database (171) connected via the network To get.

制御装置が周辺機器を制御する際、規定のI/F(API)を用いる。制御装置は周辺機器の持つユーザインターフェースによって機能実行指示を受け、周辺機器に対して図4のシーケンス実行部(46)でAPIコールを行う。   When the control device controls peripheral devices, the specified I / F (API) is used. The control device receives a function execution instruction from the user interface of the peripheral device, and makes an API call to the peripheral device by the sequence execution unit (46) in FIG.

図18はシーケンス実行処理のフローチャートである。シーケンス実行部(46)は、シーケンス作成部(45)で作成したシーケンスを取得する(S181)。取得したシーケンスからCommand要素を抽出し(S182)、抽出したすべてのCommand要素に対し(S183)、Command要素やその要素下にあるParameter要素をAPIに変換して(S184)APIコールする(S185)。全てのCommand要素を実行した後、機能依頼のためのコマンド投入を完了する。   FIG. 18 is a flowchart of the sequence execution process. The sequence execution unit (46) acquires the sequence created by the sequence creation unit (45) (S181). A Command element is extracted from the acquired sequence (S182), and for all the extracted Command elements (S183), the Command element and the Parameter element under the element are converted to API (S184) and an API call is made (S185). . After executing all Command elements, complete command input for function request.

本発明の周辺機器制御装置の原理図である。It is a principle figure of the peripheral device control apparatus of this invention. 本実施形態の周辺機器制御装置の動作構成図である。It is an operation | movement block diagram of the peripheral device control apparatus of this embodiment. 本実施形態1のシステム構成図である。It is a system configuration figure of this Embodiment 1. 本実施形態のモジュール構成図である。It is a module block diagram of this embodiment. 本実施形態の機能データベースのデータ構造図である。It is a data structure figure of the function database of this embodiment. 本実施形態の機能の継承関係例である。It is an example of the inheritance relationship of the function of this embodiment. 本実施形態の機能の集約関係例である。It is an example of the aggregation relation of the function of this embodiment. 本実施形態の機能シナリオスキーマである。It is a functional scenario schema of this embodiment. 本実施形態の機能シナリオのXML記述例1である。It is XML description example 1 of the functional scenario of this embodiment. 本実施形態の機能シナリオのXML記述例2である。It is XML description example 2 of the functional scenario of this embodiment. 本実施形態の機能シナリオのXML記述例3である。It is XML description example 3 of the functional scenario of this embodiment. 本実施形態のユーザインターフェースと設定データである。It is the user interface and setting data of this embodiment. 本実施形態のシステムのフローチャートである。It is a flowchart of the system of this embodiment. 本実施形態のシーケンス生成例である。It is a sequence generation example of this embodiment. 本実施形態のシーケンス生成処理のフローチャートである。It is a flowchart of the sequence generation process of this embodiment. 本実施形態1のシーケンス実行処理のフローチャートである。It is a flowchart of the sequence execution process of the first embodiment. 本実施形態2のシステム構成図である。It is a system configuration figure of this Embodiment 2. 本実施形態2のシーケンス実行処理のフローチャートである。It is a flowchart of the sequence execution process of the second embodiment. シーケンス生成フローチャート。The sequence generation flowchart. シーケンス生成フローチャート。The sequence generation flowchart.

Claims (7)

周辺機器制御方法や手順を機能毎に管理する機能データベースと、
コマンドによって制御される周辺機器と、
前記データベースと前記周辺機器に接続し、前記周辺機器を制御する周辺機器制御システムであって、
前記周辺機器制御システムは、
前記機能データベースから機能実現方法を示すシナリオを取得するシナリオ取得手段、
取得したシナリオを保持、管理するシナリオ保持手段、
前記シナリオ保持手段に格納されているシナリオを用いて、周辺機器を制御するためのシーケンスを生成するシーケンス生成手段、
前記シーケンス生成手段が作成したシーケンスを周辺機器制御コマンドに変換し、前記周辺機器へコマンド送信するシーケンス実行手段から構成され、周辺機器の機能と対応したシーケンスを動的に作成することを特徴とする周辺機器制御システム。
A function database that manages peripheral device control methods and procedures for each function,
Peripherals controlled by commands, and
A peripheral device control system for connecting to the database and the peripheral device and controlling the peripheral device,
The peripheral device control system includes:
Scenario acquisition means for acquiring a scenario indicating a function realization method from the function database;
Scenario holding means to hold and manage the acquired scenario,
Sequence generation means for generating a sequence for controlling peripheral devices using the scenario stored in the scenario holding means;
The sequence generating means is composed of sequence execution means for converting a sequence created by the sequence generation means into a peripheral device control command and transmitting the command to the peripheral device, and dynamically creating a sequence corresponding to the function of the peripheral device. Peripheral device control system.
前記機能データベースは、単一機能毎の機能実現方法の保持とともに、他機能との関係情報を保持しており、機能間の継承関係や集約関係を示す。また、機能データベースに保持される機能は、それぞれ識別子をもち、機能を実現するためのコマンド、コマンドの実行順番と関連しているシナリオが定義される。
継承関係が成り立つ場合、継承先のシナリオは継承元の識別子、追加分の機能に対応するコマンド、追加分のコマンドの挿入を含む。継承元のシナリオには、コマンド挿入可能な位置が定義される。
集約関係が成り立つ場合、複数機能から構成されるシナリオは、集約の部品となる識別子を保持する。
これらシナリオの解析をシーケンス生成手段で行うことを特徴とする請求項1に記載の周辺機器制御システム。
The function database holds a function realization method for each single function and holds relation information with other functions, and indicates an inheritance relation and an aggregation relation between the functions. Each function held in the function database has an identifier, and a command for realizing the function and a scenario related to the execution order of the command are defined.
When the inheritance relationship holds, the inheritance destination scenario includes an inheritance source identifier, a command corresponding to the additional function, and insertion of the additional command. In the inheritance source scenario, a position where a command can be inserted is defined.
When an aggregation relationship is established, a scenario composed of a plurality of functions holds an identifier that is a component of aggregation.
The peripheral device control system according to claim 1, wherein the analysis of these scenarios is performed by a sequence generation unit.
前記シーケンス生成手段は、単一機能を実現するシナリオを複数組み合わせてシーケンスを作成するものであって、シナリオの構成要素を解析するシナリオ解析手段、
機能間の関連情報をシーケンス生成に反映する機能関連情報反映手段、
複数シナリオをマージしてひとつのシーケンスを作成するシナリオ統合手段から構成され、
シーケンス生成手段は、実行すべき機能をシナリオに対応させるステップ、機能間の関連情報を取得し、機能の統合方法を抽出するステップと複数のシナリオをマージするステップを有することを特徴とする請求項1に記載の周辺機器制御システム。
The sequence generation means creates a sequence by combining a plurality of scenarios that realize a single function, and analyzes the constituent elements of the scenario,
Function related information reflecting means for reflecting related information between functions in sequence generation,
It consists of a scenario integration means that creates a single sequence by merging multiple scenarios,
The sequence generation means includes a step of associating a function to be executed with a scenario, a step of acquiring related information between functions, extracting a function integration method, and merging a plurality of scenarios. The peripheral device control system according to 1.
前記シーケンス実行手段は、生成されたシーケンスを解析するシーケンス解析手段、
シーケンスを構成するコマンドを周辺機器へ送信可能なパケット形式やAPIコールの形式に変換するコマンド変換手段、周辺機器に接続し、コマンドを送信またはAPIコールするコマンド実行手段からから構成される。
シーケンスからコマンドを抽出するステップ、コマンドを周辺機器へ通信可能な形式に変換するステップ、周辺機器と通信してシーケンスを実行するステップを有することを特徴とする請求項1に記載の周辺機器制御システム。
The sequence execution means includes sequence analysis means for analyzing the generated sequence,
It comprises command conversion means for converting a command constituting the sequence into a packet format or API call format that can be transmitted to the peripheral device, and a command execution means for connecting to the peripheral device and transmitting a command or making an API call.
2. The peripheral device control system according to claim 1, further comprising a step of extracting a command from the sequence, a step of converting the command into a format communicable with the peripheral device, and a step of executing the sequence by communicating with the peripheral device. .
前記データベースは、ネットワーク上の所定のサーバに格納されていることを特徴とする請求項1に記載の周辺機器制御システム。   The peripheral device control system according to claim 1, wherein the database is stored in a predetermined server on a network. 前記制御装置は、前記周辺機器外に配置され、前記周辺機器をリモートから制御することを特徴とする請求項1から請求項3に記載の周辺機器制御システム。   The peripheral device control system according to claim 1, wherein the control device is arranged outside the peripheral device and controls the peripheral device from a remote location. 前記制御装置は、前記周辺機器内に配置され、前記周辺機器をローカルで制御することを特徴とする請求項1から請求項3に記載の周辺機器制御システム。   The peripheral device control system according to claim 1, wherein the control device is disposed in the peripheral device and controls the peripheral device locally.
JP2005074881A 2005-03-16 2005-03-16 Peripheral device control unit Withdrawn JP2006259999A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005074881A JP2006259999A (en) 2005-03-16 2005-03-16 Peripheral device control unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005074881A JP2006259999A (en) 2005-03-16 2005-03-16 Peripheral device control unit

Publications (1)

Publication Number Publication Date
JP2006259999A true JP2006259999A (en) 2006-09-28

Family

ID=37099204

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005074881A Withdrawn JP2006259999A (en) 2005-03-16 2005-03-16 Peripheral device control unit

Country Status (1)

Country Link
JP (1) JP2006259999A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100916374B1 (en) 2006-10-06 2009-09-07 캐논 가부시끼가이샤 Image processing apparatus, control method of the apparatus, and storage medium storing computer program for implementing the method
CN110688161A (en) * 2018-07-06 2020-01-14 英研智能移动股份有限公司 Peripheral hardware operation method and system
JP2020102699A (en) * 2018-12-20 2020-07-02 株式会社ドヴァ Information processing device, control method, and program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100916374B1 (en) 2006-10-06 2009-09-07 캐논 가부시끼가이샤 Image processing apparatus, control method of the apparatus, and storage medium storing computer program for implementing the method
CN110688161A (en) * 2018-07-06 2020-01-14 英研智能移动股份有限公司 Peripheral hardware operation method and system
JP2020102699A (en) * 2018-12-20 2020-07-02 株式会社ドヴァ Information processing device, control method, and program
JP7104947B2 (en) 2018-12-20 2022-07-22 株式会社ドヴァ Information processing device, control method and program

Similar Documents

Publication Publication Date Title
US8171463B2 (en) Image processing apparatus and control method thereof
JP5441646B2 (en) Printing apparatus, printing method, and printing program
JP5539043B2 (en) Information transmitting apparatus, information transmitting apparatus control method, and computer program
US9355046B2 (en) Information processing apparatus, information processing method, and computer-readable medium
JP6489880B2 (en) Image forming apparatus, image forming apparatus control method, and program
US11487483B2 (en) Information apparatus, controlling method for information apparatus, and storage medium to install and activate software based on obtained information
JP4897863B2 (en) Peripheral device operation parameter setting apparatus and method
JP5924892B2 (en) Information processing apparatus, information processing method, and program
JP2009271926A (en) Job editor interface based on dynamic device capabilities
JP2005292903A (en) Control system, control program, control method, and controller
JP5669460B2 (en) Information processing apparatus, information processing system, information processing apparatus control method, and program
US20150355871A1 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium
JP2006259999A (en) Peripheral device control unit
US20050068560A1 (en) Providing application specific printing with an arbitrary printing device
JP6039216B2 (en) Information processing apparatus, program, and control method
JP2009176290A (en) Method for operating user interface of device controllable from a plurality of access points
JP2006244172A (en) Job management method, job management device, job execution device, job management system and its program
JP2009110050A (en) Information processor, information processing system, display control method, display control program, and recording medium
JP7286325B2 (en) Image forming apparatus and control method
JP2007034702A (en) Peripheral equipment control system
JP5729652B2 (en) Printer driver and printer driver localization method
JP2007256991A (en) Data processor, program and computer readable recording medium
JP2014059776A (en) Information processor, program and recording medium
JP6410974B2 (en) Information processing apparatus, method, and program
JP2010109649A (en) Information processor and image-forming system including the same

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080603