JP4491989B2 - 制御システム - Google Patents
制御システム Download PDFInfo
- Publication number
- JP4491989B2 JP4491989B2 JP2001118769A JP2001118769A JP4491989B2 JP 4491989 B2 JP4491989 B2 JP 4491989B2 JP 2001118769 A JP2001118769 A JP 2001118769A JP 2001118769 A JP2001118769 A JP 2001118769A JP 4491989 B2 JP4491989 B2 JP 4491989B2
- Authority
- JP
- Japan
- Prior art keywords
- interface
- control system
- entry point
- providing
- type
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/12—Cash registers electronically operated
- G07G1/14—Systems including one or more distant stations co-operating with a central processing unit
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Computer Networks & Wireless Communication (AREA)
- Stored Programmes (AREA)
Description
【発明の属する技術分野】
本発明は、ジャババーチャルマシンをプラットフォームとして実行されるオブジェクトソフトウェアを用いた制御システムに関するものである。
【0002】
【従来の技術】
オブジェクト指向プログラミングによるコンポーネントベースのプログラムあるいはソフトウェア(オブジェクト)は、オペレーティングシステム上で稼動する再利用可能なソフトウェアであり、オブジェクトを用いて多種多様なシステムが開発されている。特に、ジャバ(Java)言語(Javaは登録商標)で書かれたプログラム(JavaアプリケーションあるいはJavaアプレット)はジャババーチャルマシン(JVM)さえ存在すれば実行できるので、JVMをサポートするオペレーティングシステム(OS)であれば、OSの種類やバージョンを問わずに実行できる。したがって、マイクロソフト社が提供するOSのウィンドウズ(登録商標)が稼動するシステム上であっても、リナックスがOSとして稼動するシステム上であっても、さらには、専用コンピュータチップにマイクロコードとして埋め込まれていても、Javaアプリケーションは稼動する。このようにJavaアプリケーションは特定のOSに依存しないので、ソフトウェア資産の保護が図れ、システム毎に開発する必要がないので経済的である。また、ユーザにとっては特定のOSに縛られることがないので、選択の幅が大きく広がる。さらに、OSを変えたり、更新された場合であっても既存のソフトウェア資産を継続あるいは承継できる。
【0003】
POSシステムは多種多様な周辺装置により組み立てられるシステムの1つであり、パーソナルコンピュータなどの中心となるホストコンピュータにディスプレイ、プリンタ、スキャナ、ドロワ、カードリーダなど様々な入出力装置が接続されることによりシステムが構築される。このため、ホストコンピュータの仕様に依存しないJavaアプリケーションによるPOSシステムを提供することにより、既存のハードウェアを用いて新しいPOSシステムを導入することが可能となり、また、アプリケーションの開発コストを低減できるのでユーザの負担も小さくできる。それと共に、POSシステムを構築するシステムがフレキシブルに選択できるのでユーザの選択肢が広がり、ユーザの環境に合致したシステムを構築できるなどの多くのメリットを得ることができる。
【0004】
図1に、JavaPOSシステム10の概要を示してある。このPOSシステム10は、各POSメーカが提供するPOSアプリケーションプログラム11と、プリンタ21、スキャナ22あるいはドロワ23などの周辺装置(デバイス)の種類単位(デバイスクラス単位)に供給されるデバイスコントロールオブジェクト(第1のオブジェクト、以降ではDC)12と、周辺装置毎、すなわち、デバイス毎に供給されるサービスオブジェクト(第2のオブジェクト、以降ではDS)13とを備えている。これらのDS13により制御される各デバイス21〜23は、シリアルポート、パラレルポートあるいはUSBポートなどを制御するポートドライバ14を介してパーソナルコンピュータ18などのアプリケーションプログラム11およびオブジェクトプログラムが稼動するホストと接続されている。したがって、POSアプリケーションプログラム11がプリンタ21から出力するときは、データがプリンタのDC12に渡され、さらに、出力するプリンタのメーカおよび機種に対応したDS13に渡され、ポートドライバ14を介してプリンタ21に供給される。
【0005】
図1に示したJavaPOSシステム10では、DC12およびDS13を備えたオブジェクト制御システム19がPOSアプリケーションプログラム11に対して、また、プリンタ21などの周辺機器に対して機種依存性のないインターフェイスを提供する。これらのアプリケーション11、DC12およびDS13はJava言語で作成されたプログラムであり、ジャバ仮想マシン(JVM)で実行可能なようにコンパイラによってJavaバイトコードに変換されたものである。したがって、ホスト18にインストールされているOSに依存せずにユニフォームなサービスを提供することができる。
【0006】
図2に、あるデバイス、たとえばプリンタ21を制御するシステム19を抜き出して示してある。アプリケーション11に対しプリンタとのインターフェイスを提供するDC12は、アプリケーション11が利用できるインターフェイス(第1のインターフェイス)12iを備えている。同様に、DC12に対し、特定のプリンタ21とのインターフェイスを提供するDS13は、DC12が利用できるインターフェイス(第2のインターフェイス)13iを備えている。このDS13は、DC12がデバイス21にアクセスするためにDS13を呼ぶとインスタンスが生成されてオブジェクトとして利用できるようになっている。
【0007】
このため、制御システム19は、DC12に呼び出されて特定のプリンタの名前を指定して接続を確立し切断することができるJCL(jpos config/loader)オブジェクト(第3のオブジェクト、以降ではJCL)31と、このJCL31からの指示によりDS13のインスタンスを生成するファクトリオブジェクト(第4のオブジェクト、以降ではファクトリクラス)34を備えている。さらに、制御システム19は、ファクトリクラス34によりDS13のインスタンスを生成するときの条件および設定などの情報が、XMLなどによって蓄積されたデータベース(以降ではDB)33と、XMLパーサなどからなる、名称の情報のDB33におけるエントリーポイントを取得できる名称解決のためのオブジェクト32を備えている。したがって、JCL31は、DC12がプリンタの名前を指定するために利用できるインターフェイス(第3のインターフェイス)31iを備えており、また、ファクトリクラス34は、JCL31がエントリーポイントを指定することができるインターフェイス(第4のインターフェイス)34iを備えている。
【0008】
【発明が解決しようとする課題】
このように、この制御システム19では、ユニフォームなインターフェイスをアプリケーション11に対して提供するために各々の機能がオブジェクトに分散されており、最小限のプログラムを提供するだけで様々なデバイスが利用できるようになっている。たとえば、デバイス21を提供するメーカは、デバイス21に対応したDS13と、そのインスタンスを生成するファクトリクラス34を提供し、ユーザはそれをホストにインストールすることによりPOSシステムにデバイス21を組み込むことができる。しかしながら、本願の発明者らは、さらにJavaを用いて多数のデバイスを制御できる分散システムを簡易にすることを検討した。そして、DS13をより簡単に精度良く開発および提供できるシステムを検討した。
【0009】
【課題を解決するための手段】
図2に示した制御システム19では、ファクトリクラス34はDS13と共にメーカから提供されることが前提となっており、これは、インスタンスを生成するオブジェクトDS13とファクトリクラス34とのマッチングをメーカに一任するという点で自由度が高く、また、オブジェクト13が稼動するときの設定値などをどのように提供するかという点でも自由度が高い。すなわち、ファクトリクラス34で生成されたインスタンスによるオブジェクトが稼動するために必要な情報を提供しきれるのであればDS13はDB33にアクセスする必要がないし、DS13がDB33にアクセスする必要があるのであればそのエントリーポイントを適当な方法でファクトリクラス34からDS13に提供すればよい。
【0010】
これに対し、本願の発明者らは、DS13にファクトリクラス34からエントリーポイントを取得できるインターフェイスを設けることにより、ファクトリクラス34をDS13に依存しないプログラムとして提供することが可能であり、デバイスメーカはDSだけを提供することによりデバイスをシステムに組み込むことができることを見出した。さらに、ファクトリクラス34とDS13をセットで提供することが前提としてこれらのプログラムが開発されていると、DSでエントリーポイントが必要な場合は、DSにエントリーポイントを取得する関数が用意され、それに合わせてファクトリクラスでDSのクラスの型にキャストしてエントリーポイントがDSに提供される処理が行われやすい。このような方法でエントリーポイントを渡そうとすると、DSとファクトリクラスが1対1に対応している場合は、まだ面倒がないが、ファクトリクラスをDSに共通にしようとすると、全てのDSに共通の親クラスを作成する必要があり、DSの開発効率が大幅に低下する。これに対し、DSにエントリーポイントを取得するインターフェイスを用意することにより、キャストする必要がなくなるので、DSの開発も容易になるというメリットがある。
【0011】
したがって、デバイスサービスにエントリーポイントを取得するインターフェイスを設けることにより、デバイスサービスの開発の自由度が向上すると共に、他のメーカなどのデバイスサービスを容易にロードすることができるファクトリクラスを提供することが可能となり、多数のデバイスを取り扱うJVM上で稼動するシステムをさらに簡易な構成にすることができる。
【0012】
すなわち、本発明の、ジャババーチャルマシン(JVM)をプラットフォームとして稼動する制御システムにおいては、複数種類のデバイスを制御可能なアプリケーションプログラムに対しデバイスの種類毎の第1のインターフェイスを提供する第1のオブジェクトと、デバイスの種類毎の第2のインターフェイスを第1のオブジェクトに対し提供する第2のオブジェクトと、第2のオブジェクトを呼び出して接続および切断する第3のインターフェイスを第1のオブジェクトに対し提供する第3のオブジェクトと、第2のオブジェクトを設定およびロードする情報を蓄積したデータベースと、第2のオブジェクトの情報が蓄積されたデータベースのエントリーポイントを得て、デバイスに対応した第2のオブジェクトを生成する第4のインターフェイスを第3のオブジェクトに対し提供する第4のオブジェクトとを有し、第2のオブジェクトが、さらに、第4のオブジェクトに対し、前記第4のオブジェクトがエントリーポイントを第2のオブジェクトに渡す関数を定義した第5のインターフェイスを提供する。
【0013】
このため、JVMにより実行されることにより、複数種類のデバイスを制御可能なアプリケーションプログラムにデバイスの種類毎の第1のインターフェイスを提供する第1のオブジェクト、すなわち、上記のデバイスコントロール(DC)に対し、デバイスの種類毎の第2のインターフェイスを提供する第2のオブジェクトとして機能するプログラム、すなわち、上記のデバイスサービス(DS)として、この第2のオブジェクトを呼び出して接続および切断するために第3のインターフェイスを第1のオブジェクトに対し提供する第3のオブジェクトから第2のオブジェクトの情報が蓄積されたデータベースのエントリーポイントを得る第4のインターフェイスを備え、デバイスに対応した第2のオブジェクトを生成する第4のオブジェクトに対し、第4のオブジェクトがエントリーポイントを第2のオブジェクトに渡す関数を定義した第5のインターフェイスを提供する命令を有するプログラムを提供する。
【0015】
この本発明の第2のオブジェクト、すなわちDSと、第4のオブジェクト、すなわち、ファクトリクラスとを有する制御システムにおいては、ファクトリクラスが第3のオブジェクト、すなわち、上記のJCLから取得したデータベース、上記のDBのエントリーポイントを、DSに用意されたインターフェイスを利用してDSに与えることができる。したがって、本発明においては、複数の異なるメーカのデバイス用の第2のオブジェクト、すなわちDSを生成可能な第4のオブジェクト、すなわちファクトリクラスを提供することができる。このため、デバイスメーカはDSをユーザに提供するだけで、本発明の制御システム、すなわち、多数のデバイスに対しユニフォームなインターフェイスをアプリケーションに提供する制御システムに、そのメーカのデバイスを組み込むことが可能となる。さらに、各デバイス毎に開発する必要があるDSを、本発明においては、そのDSをロードするファクトリクラスを共通化するために共通のクラスから派生させる必要がなくなる。したがって、全てのメーカに共通の親クラスを設けたりしなくても各メーカにおいて、各デバイス毎に自由にデバイスサービス(DS)を開発することが可能となる。また、DSを変更した場合でも、親クラスに影響が及ぶことはないので、検査も容易であり開発効率の良いシステムとなる。
【0016】
また、本発明の制御システムを構成するための上述したオブジェクトは、上述した処理を実行可能な命令を有するプログラムであり、CD−ROMなどの適当な記録媒体に記録して、あるいはコンピュータネットワークを介して提供することが可能であり、JVMが稼動するコンピュータの適当な記録媒体に記録して使用することができる。
【0017】
デバイスは仮想的なものであっても良いが、本発明では、制御システムを簡素にできると共に、デバイスサービスの開発も容易となるので、プリンタ、スキャナなどメーカや機種によって性能や仕様が異なりデバイスサービスも異なることとなる制御システムに本発明は適している。すなわち、パーソナルコンピュータなどのホストコンピュータの周辺機器をデバイスとして、アプリケーションにユニフォームなインターフェイスを提供可能な制御システムに本発明は好適である。したがって、上述したような、第1のオブジェクトは周辺機器の種類毎に提供されるデバイスコントロールオブジェクトであり、第2のオブジェクトは周辺機器毎に提供されるデバイスサービスオブジェクトである制御システムに本発明は好適であり、その1つとしてアプリケーションプログラムがPOSアプリケーションプログラムである制御システムを挙げることができる。
【0018】
【発明の実施の形態】
以下では、上記にて図1および図2に基づき説明したJavaPOSシステム10に基づき本発明についてさらに説明する。まず、以下に図2に示した制御システム19で、エントリーポイントを渡す関数をインターフェイスで定義せずにデバイスサービス(DS)13に直接組み込むとすると、ファクトリクラス(ファクトリ)34の実装(コード)は次のようになる。
このファクトリクラス34の第1のコードで問題になる個所は(A)の部分であり、データベースのエントリーポイントを渡すのにDS13のインスタンスをいったんDSのクラスの型にキャスト(変換)しなければならない。しかしながら、DSは制御するデバイス毎に作成する。したがって、同一の名称にすることは不可能であり、この方法でDSをロードしてエントリーポイントを渡すためには次の2つの方法しかない。これらの方法では、開発効率が低下し、プログラムの設計において制限が大きい。
【0019】
第1の方法は、各デバイスのDS13のそれぞれにファクトリクラス34を作成することである。すなわち、DS13とファクトリクラス34は常にペアで提供されるようにすることである。図2に示した制御システムでは、この方法が前提として開発されており、その意味では問題はない。しかしながら、ファクトリクラス34は、DS13のインスタンスを生成するのが目的であり、DS13のようにデバイス毎に作成して提供する意味合いはほとんどないことに注目した場合はシステムを簡略化しようとしたときに大きなネックになる。また、DS13の各々に対応してファクトリ34を提供し制御システム19に格納しておくことは、制御システム19で取り扱うデバイスが増加するにつれてオブジェクト数が大幅に増加することになり、分散型システムとしては望ましい方向ではない。さらに、同一のDS13であっても、それを更新したときにファクトリクラス34も更新するのか否かなどの問題もある。したがって、ファクトリクラス34はDS13と独立して機能し、複数のDS13に共通なオブジェクトであることが望ましい。
【0020】
第2の方法は、全てのDS13に共通の親クラスを作成し、この親クラスでデータベース33のエントリーポイントを取得する関数を用意する方法である。この方法であると、ファクトリクラス34は全てのDS13に対し同一の命令によりエントリーポイントを渡すことが可能であり、分散型のシステムとして望ましい。しかしながら、全てのDS13、すなわち、全てのメーカの全てのデバイス、あるいは少なくともある程度の範囲の全てのDS13を作成するときに必ず決まった親クラスを継承しなけらばならないという制限がある。したがって、デバイスの種類毎に親クラスを設けたり、メーカ毎に親クラスを設けたりしないと実現することができず、デバイス毎の設計の自由度が奪われる。さらに、親クラスに含まれる部分を更新しようとしたときに、それに関連する全てのオブジェクトを再検査する必要があるなど、DSの開発を進める上で非常に大きなネックになる可能性がある。
【0021】
図3に、本発明に係る制御システム39の構成を示してある。この制御システム39においては、DS13にエントリーポイントを取得するためのインターフェイス35iを設けることにより、上記の2つの方法の問題を解決している。すなわち、DS13をデバイス単位で自由に開発および設計できると共に、ファクトリクラス34は各DS13に共通に利用できるものとし、機種の異なるデバイスや、他のメーカのデバイス用のDS13であってもロードできるようにしている。
【0022】
図3に示した制御システム39も、あるデバイス、たとえばプリンタ21を制御するシステムであり、各々のプログラムおよびオブジェクトはJVMをプラットフォームとして稼動する。この制御システム39も、アプリケーション11に対しプリンタとのインターフェイスを提供するDC12は、アプリケーション11が利用できる第1のインターフェイス12iを備え、DC12に対し特定のプリンタ21とのインターフェイスを提供するDS13は、DC12が利用できる第2のインターフェイス13iを備えている。また、DC12に呼び出されて特定のプリンタの名前を指定して接続を確立し切断することができるJCL31と、このJCL31からの指示によりDS13のインスタンスを生成するファクトリクラス34も備えており、ファクトリクラス34によりDS13のインスタンスを生成するときの条件および設定などの情報はDB33に格納され、その名前の解決のためのオブジェクト32も備えている。JCL31は、DC12がプリンタの名前を指定するために利用できる第3のインターフェイス31iを備えており、また、ファクトリクラス34は、JCL31がエントリーポイントを指定することができる第4のインターフェイス34iを備えており、さらに、DS13がファクトリクラス34からエントリーポイントを渡すことができる第5のインターフェイス35iを備えている。
【0023】
したがって、この制御システム39において、データベース33のエントリーポイントを渡すファクトリクラス34のコードは次のようになる。
このファクトリクラス34の第2のコードでは、(B)に示したように、DSがSetEntry関数を定義した新しいEpsonJposServiceInstanceインタフェースを実装しているために、上記の第1のコードのようにデータベース33のエントリーポイントを渡すのにDSのクラスの型にキャスト(変換)する必要がなくなる。したがって、ファクトリクラス34は各デバイスのDS13のそれぞれに対応している必要はなくなり、各種のDS13に対し共通したサービスを提供することができるオブジェクトとして提供することができる。また、全てのDS13にSetEntry関数を定義した新しいEpsonJposServiceInstanceインタフェースを実装するだけで、共通の親クラスを継承する必要はなくなり、DSを作成する上で制限も解除することができる。
【0024】
現在のJavaPOSの標準仕様では、JCL31に関連してDSにインターフェイスを用意することが義務づけられているが、そのインターフェイスにはコネクションが切断されたことを示すメソッドが1つ定義されているだけである。すなわち、以下のようなインターフェイスを提供するコードとなる。
したがって、本例の制御システム39では、このJposServiceInstanceを継承すると共にSetEntryをメソッドとして定義した新たなEpson JposServiceInstanceを作成し、そのインターフェイスをDSが提供するようにしている。したがって、本例のDSのインターフェイスを提供するコードは以下のようになる。
以上のように、現状の仕様でも、DS13を実装する上で、DS13の上位層であるDC12がDS13をロードするときに使用するJCL31と、DS13との間のやり取りを定義したJposServiceInstanceインタフェースが規定されている。しかしながら、JposServiceInstanceインターフェイスには、ファクトリクラス34がDS13に対してDS13が使用するデータベース33のエントリーポイントを渡すことは考慮されていない。したがって、DS13でエントリーポイントが必要なときは、各デバイス用のDSで統一がとれておらず、また、DSを実装するメーカ間でも統一が取れる状態にはなっていない。これに対し、上記のように、DS13にデータベース33のエントリーポイントを渡す関数SetEntryを定義した新しいインタフェース(仮称:EpsonJposServiceInstance)を作成し、制御システム39に組み込むDS13はこのインタフェースを実装するルールにすることにより、DSの作成方法に自由度ができ、より良いDSを作成することができる。また、他のメーカのDSや、他のデバイスのDSであっても共通のファクトリクラスによってロードすることができ、JavaをベースとしたPOSシステムをさらにシンプルで低コストで提供可能にすることができる。
【0025】
本例のJavaPOS用の制御システム39を構築するサービスオブジェクト(DS)13およびファクトリクラス34は、上述したインターフェイスを提供する命令、あるいはそのインターフェイスを使用してエントリーポイントを渡す命令を有するJavaアプレットあるいはプログラムであり、これらはCD−ROMあるいはその他のコンピュータに読み取り可能な記録媒体に記録して提供することができる。そして、JVMが稼動するコンピュータであれば、OSなどに依存せずにJVMをプラットフォームとして動作し、上述したような機能を発揮することができる。
【0026】
なお、以上では、多種多様なデバイスを取り扱うPOSシステムに基づき本発明を説明しているが、POSシステムに限定されることはなく、多種多様な機器をJavaをプラットフォームとして統合した制御を行うようなシステム、たとえば、ファクトリーオートメーションシステムやロボット制御システムなどにおいても適用することが可能である。
【0027】
【発明の効果】
以上に説明したように、本発明においては、デバイス毎のインターフェイスを提供するデバイスサービスを実装する上で、デバイスサービスの上位層であるデバイスコントロールがデバイスサービスをJCLを介して接続するときに、デバイスサービスにファクトリクラスからデータベースのエントリーポイントを取得できる第5のインターフェイスを設け、ファクトリクラスがデバイスサービスをロードするときにインターフェイスを用いてエントリーポイントをデバイスサービスに渡せるようにしている。したがって、本発明の第5のインタフェースを実装したデバイスサービスを組み込んだ本発明の制御システムにおいては、他のメーカのデバイスサービスや、他のデバイスのデバイスサービスであっても共通のファクトリクラスによってロードすることができ、Javaをベースとしてアプリケーションに対しユニフォームなインターフェイスを与えるPOSシステムなどに適した制御システムをさらにシンプルにでき、また、低コストで提供できる。
【0028】
さらに、各デバイスサービスは、本発明に係る第5のインターフェイスを実装するだけでデータベースのエントリーポイントをファクトリクラスから取得できるので、各メーカに共通した親クラスを設けてそれを継承するような作成方法を採用しなくても良く、デバイスサービスの作成方法の自由度が向上する。このため、共通のファクトリクラスに対応可能なデバイスサービスであって、アプリケーションから各々のデバイスを取り扱うのにより適した品質の高いデバイスサービスを提供することが可能となる。
【図面の簡単な説明】
【図1】オブジェクトサービスによりPOSシステムの概要を示す図である。
【図2】JVMをプラットフォームとする制御システムの例であり、デバイスサービスがエントリーポイントを取得するインターフェイスを提供しないシステムの概要を示す図である。
【図3】JVMをプラットフォームとする本発明の制御システムの例であり、デバイスサービスがエントリーポイントを取得するインターフェイスを提供するシステムの概要を示す図である。
【符号の説明】
10 POSシステム
11 アプリケーションプログラム
12 デバイスコントロールオブジェクト(第1のオブジェクト)
12i 第2のインターフェイス
13 デバイスサービスオブジェクト(第2のオブジェクト)
13i 第3のインターフェイス
19、39 POS制御システム
31 JCL(第3のオブジェクト)
31i 第3のインターフェイス
33 データベース
34 ファクトリクラス
34i 第4のインターフェイス
35i 第5のインターフェイス
Claims (9)
- ジャババーチャルマシンをプラットフォームとして稼動する制御システムであって、
複数種類のデバイスを制御可能なアプリケーションプログラムに対し前記デバイスの種類毎の第1のインターフェイスを提供する第1のオブジェクトと、
前記デバイスの種類毎の第2のインターフェイスを前記第1のオブジェクトに対し提供する第2のオブジェクトと、
前記第2のオブジェクトを呼び出して接続および切断する第3のインターフェイスを前記第1のオブジェクトに対し提供する第3のオブジェクトと、
前記第2のオブジェクトを設定およびロードする情報を蓄積したデータベースと、
前記第2のオブジェクトの前記情報が蓄積された前記データベースのエントリーポイントを得て、前記デバイスに対応した前記第2のオブジェクトを生成する第4のインターフェイスを前記第3のオブジェクトに対し提供する第4のオブジェクトとを有し、
前記第2のオブジェクトは、さらに、前記第4のオブジェクトに対し、前記第4のオブジェクトが前記エントリーポイントを前記第2のオブジェクトに渡す関数を定義した第5のインターフェイスを提供する制御システム。 - 請求項1において、前記第4のオブジェクトは複数の異なるメーカの前記デバイス用の前記第2のオブジェクトを生成可能である制御システム。
- 請求項1において、前記デバイスはホストコンピュータの周辺機器である制御システム。
- 請求項3において、前記第1のオブジェクトは前記周辺機器の種類毎に提供されるデバイスコントロールオブジェクトであり、前記第2のオブジェクトは前記周辺機器の種類毎に提供されるデバイスサービスオブジェクトである制御システム。
- 請求項3において、前記アプリケーションプログラムはPOSアプリケーションプログラムである制御システム。
- ジャババーチャルマシンにより実行されることにより、複数種類のデバイスを制御可能なアプリケーションプログラムに前記デバイスの種類毎の第1のインターフェイスを提供する第1のオブジェクトに対し、前記デバイスの種類毎の第2のインターフェイスを提供する第2のオブジェクトとして機能するプログラムであって、
前記第2のオブジェクトを呼び出して接続および切断するために第3のインターフェイスを前記第1のオブジェクトに対し提供する第3のオブジェクトから前記第2のオブジェクトの情報が蓄積されたデータベースのエントリーポイントを得る第4のインターフェイスを備え、前記デバイスに対応した前記第2のオブジェクトを生成する第4のオブジェクトに対し、前記第4のオブジェクトが前記エントリーポイントを前記第2のオブジェクトに渡す関数を定義した第5のインターフェイスを提供する命令を有するプログラム。 - 請求項6において、前記デバイスはホストコンピュータの周辺機器であるプログラム。
- 請求項7において、前記第1のオブジェクトは前記周辺機器の種類毎に提供されるデバイスコントロールオブジェクトであり、前記第2のオブジェクトは前記周辺機器の種類毎に提供されるデバイスサービスオブジェクトであるプログラム。
- 請求項7において、前記アプリケーションプログラムはPOSアプリケーションプログラムであるプログラム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001118769A JP4491989B2 (ja) | 2001-04-17 | 2001-04-17 | 制御システム |
EP02008180A EP1251427A3 (en) | 2001-04-17 | 2002-04-16 | Control system |
KR10-2002-0020877A KR100461887B1 (ko) | 2001-04-17 | 2002-04-17 | 제어 시스템 및 프로그램을 기록한 기록 매체 |
US10/124,559 US7330825B2 (en) | 2001-04-17 | 2002-04-17 | Control system |
CNB021231184A CN1294501C (zh) | 2001-04-17 | 2002-04-17 | 控制***中装置的控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001118769A JP4491989B2 (ja) | 2001-04-17 | 2001-04-17 | 制御システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002312301A JP2002312301A (ja) | 2002-10-25 |
JP4491989B2 true JP4491989B2 (ja) | 2010-06-30 |
Family
ID=18969104
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001118769A Expired - Fee Related JP4491989B2 (ja) | 2001-04-17 | 2001-04-17 | 制御システム |
Country Status (5)
Country | Link |
---|---|
US (1) | US7330825B2 (ja) |
EP (1) | EP1251427A3 (ja) |
JP (1) | JP4491989B2 (ja) |
KR (1) | KR100461887B1 (ja) |
CN (1) | CN1294501C (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030133136A1 (en) * | 2001-12-27 | 2003-07-17 | Tsutomu Ohishi | Method for generating and launching application for information processing apparatus and image forming apparatus |
US9135021B2 (en) * | 2003-06-30 | 2015-09-15 | International Business Machines Corporation | Method and system for input and output of data with non-standard I/O devices for web applications |
US20050261969A1 (en) * | 2004-05-10 | 2005-11-24 | International Business Machines Corporation | Layered architecture for POS (point-of sale) systems |
KR100607141B1 (ko) * | 2004-05-12 | 2006-08-01 | 한국생산기술연구원 | 개방형 분산처리구조의 로봇 제어 시스템 |
KR100559251B1 (ko) * | 2004-05-12 | 2006-03-15 | 한국생산기술연구원 | 개방형 인터넷망 기반의 로봇 개발을 위한 분산소프트웨어 통합서비스방법 |
US20090018698A1 (en) * | 2004-11-26 | 2009-01-15 | Electronics And Telecommunications Research Instit | Robot system based on network and execution method of that system |
US20060206442A1 (en) * | 2005-03-08 | 2006-09-14 | Rockwell Automation Technologies, Inc. | Systems and methods for managing control systems through java extensions |
US7873615B2 (en) * | 2005-12-14 | 2011-01-18 | Sap Ag | Control object based report generation using a central class |
JP2008158651A (ja) * | 2006-12-21 | 2008-07-10 | Shinko Electric Ind Co Ltd | Rfidタグのリーダライタのためのミドルウェア |
JP5381009B2 (ja) * | 2008-10-20 | 2014-01-08 | セイコーエプソン株式会社 | デバイス制御システム |
CN102915215B (zh) * | 2011-08-03 | 2015-05-27 | 精工爱普生株式会社 | 控制装置以及控制方法 |
JP5906620B2 (ja) * | 2011-09-08 | 2016-04-20 | セイコーエプソン株式会社 | 制御装置の制御方法 |
CN102800153B (zh) * | 2012-07-17 | 2015-09-23 | 武汉天喻信息产业股份有限公司 | 刷卡终端的业务下载方法及*** |
US20160098994A1 (en) * | 2014-10-03 | 2016-04-07 | Speaktoit, Inc. | Cross-platform dialog system |
CN107590925B (zh) * | 2017-08-10 | 2021-01-26 | 百富计算机技术(深圳)有限公司 | Pos终端控制方法、装置、存储介质和计算机设备 |
CN108665654A (zh) * | 2018-05-18 | 2018-10-16 | 任飞翔 | 收银信息同步方法及收银*** |
US10789048B2 (en) * | 2019-01-30 | 2020-09-29 | Salesforce.Com, Inc. | Namespace and class utilities for managed packages |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5758070A (en) * | 1995-10-06 | 1998-05-26 | Canon Kabushiki Kaisha | System for dynamically determining a network media type of a LAN using frame type identifying value from a configuration table |
US6820255B2 (en) * | 1999-02-17 | 2004-11-16 | Elbrus International | Method for fast execution of translated binary code utilizing database cache for low-level code correspondence |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69621197T2 (de) * | 1995-09-06 | 2002-11-07 | Seiko Epson Corp., Tokio/Tokyo | Peripheriegerätsteuerungssystem mit einer Mehrheit von Objekten |
JPH10187224A (ja) * | 1996-12-25 | 1998-07-14 | Smc Corp | 自動コントロールシステム |
US6201996B1 (en) * | 1998-05-29 | 2001-03-13 | Control Technology Corporationa | Object-oriented programmable industrial controller with distributed interface architecture |
JP2000057081A (ja) * | 1998-08-13 | 2000-02-25 | Toshiba Tec Corp | 情報処理装置 |
US6788980B1 (en) * | 1999-06-11 | 2004-09-07 | Invensys Systems, Inc. | Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network |
EP1956492B1 (en) * | 1999-09-21 | 2018-09-05 | Wyse Technology L.L.C. | Displaying windowing application programs on a terminal |
US6691302B1 (en) * | 2000-05-31 | 2004-02-10 | Siemens Information & Communications Networks, Inc. | Interfacing a service component to a native API |
-
2001
- 2001-04-17 JP JP2001118769A patent/JP4491989B2/ja not_active Expired - Fee Related
-
2002
- 2002-04-16 EP EP02008180A patent/EP1251427A3/en not_active Ceased
- 2002-04-17 CN CNB021231184A patent/CN1294501C/zh not_active Expired - Fee Related
- 2002-04-17 KR KR10-2002-0020877A patent/KR100461887B1/ko not_active IP Right Cessation
- 2002-04-17 US US10/124,559 patent/US7330825B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5758070A (en) * | 1995-10-06 | 1998-05-26 | Canon Kabushiki Kaisha | System for dynamically determining a network media type of a LAN using frame type identifying value from a configuration table |
US6820255B2 (en) * | 1999-02-17 | 2004-11-16 | Elbrus International | Method for fast execution of translated binary code utilizing database cache for low-level code correspondence |
Also Published As
Publication number | Publication date |
---|---|
JP2002312301A (ja) | 2002-10-25 |
EP1251427A3 (en) | 2006-08-23 |
KR20020081141A (ko) | 2002-10-26 |
CN1384440A (zh) | 2002-12-11 |
EP1251427A2 (en) | 2002-10-23 |
US20030061021A1 (en) | 2003-03-27 |
US7330825B2 (en) | 2008-02-12 |
CN1294501C (zh) | 2007-01-10 |
KR100461887B1 (ko) | 2004-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4491989B2 (ja) | 制御システム | |
US6345382B1 (en) | Run-time customization in object-oriented design | |
KR101795844B1 (ko) | 런타임 시스템 | |
US6442753B1 (en) | Apparatus and method for checking dependencies among classes in an object-oriented program | |
US8793676B2 (en) | Version-resilient loader for custom code runtimes | |
US5974428A (en) | Method and apparatus for class version naming and mapping | |
US6292941B1 (en) | Operating system installation | |
US8452950B2 (en) | Component firmware integration in distributed systems | |
JP5294892B2 (ja) | 画像形成装置、装置、制御方法、及びプログラム | |
US20080222160A1 (en) | Method and system for providing a program for execution without requiring installation | |
US20040088397A1 (en) | System and method for management of software applications | |
JPH10283189A (ja) | 内蔵実行可能アプリケーション及びコンピュータ読み取り可能な記憶媒体並びに内蔵実行可能アプリケーションの作成方法及びその作成システム | |
JP2004199672A (ja) | セキュリティ・トークンの一様なフレームワーク | |
US8271622B2 (en) | Method and apparatus for a system management tool to adapt command interface and behavior based on installed features | |
KR20030036736A (ko) | 내장형 오퍼레이팅 시스템을 가진 디바이스를 위한 기능및 사용자 인터페이스를 형성하기 위한 방법 및 장치 | |
US7930708B2 (en) | Device control system, device control method, and device control program | |
US20220147376A1 (en) | Selective substitution of legacy load module programs with classes for execution in a java virtual machine | |
JP2002318703A (ja) | 制御システム | |
JP2005182419A (ja) | コンポーネント処理システム及びコンポーネント処理方法 | |
JP5165234B2 (ja) | ジャバ言語におけるメソッド参照のサポート | |
JP4149624B2 (ja) | オブジェクト計算機システム | |
JP2921480B2 (ja) | 電子計算機システムにおける保守モード立ち上げ方法 | |
JP3767666B2 (ja) | ワークフロー管理システム | |
JP4635341B2 (ja) | 制御システム | |
EP4343540A1 (en) | Updated driver installation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060619 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090407 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090603 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091006 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091109 |
|
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: 20100316 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100329 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130416 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |