以下、図面を参照して、本願発明の実施形態の好適な一例を説明する。
図1は複写機、他の画像形成装置、及び、コンピュータを含むシステムブロック図である。本発明の画像形成装置(画像処理装置)の好適な一例である複写機等、情報処理装置(コンピュータ)、および周辺機器との関係を示す。画像形成装置100、200は、リーダ部1と、プリンタ部2と、コントローラ部3、またその中に、モデム通信部4、ネットワーク処理部7、PDL展開部8、コア部10を有する。コンピュータは、ワークステーション、又は、標準的なPCを用いることができる。
リーダ部1は、画像形成装置にセットされた原稿の画像を読み取り、原稿画像に応じた画像データを、コア部10を通じて、プリンタ部2へ出力する。プリンタ部2は、リーダ部1からの画像データに応じた画像を記録紙上に記録する。
コンピュータ11、12は、情報処理装置の一例であり、パーソナルコンピュータまたはワークステーション(PC/WS)である。また、コンピュータ11、12からは、PDLプリントデータを、ネットワーク4、ネットワーク処理部7を通じて、コア部10に流し、PDL展開部8でPDLデータをプリンタ部2で記録できる画像データに展開し、コア部10を通じて、プリンタ部2でプリントする。
14はファックス装置であり、例えばリーダ部1で読み取った原稿画像を、コア部10、モデム通信部4を経由し、公衆回線網15を通じてファックス送信する。あるいは、他のファックス装置12からの画像データを、公衆回線網15、モデム通信部4、コア部10を通じて受信し、プリンタ部2(プリンタエンジン部2)で受信画像をプリントする。
また、本発明の情報処理装置の記憶手段の一例としては、コンピュータ11、12内のハードディスク30、36である。35、37は、コンピュータ11、12の表示装置であり、例えば、LCDディスプレイである。31、38は、コンピュータ11の入力装置であり、キーボードである。なお、図1に示す構成は一例であり、図示の構成に限定されるものではない。
図2は本発明に係る画像形成装置に好適な複写機本体100,200の一例を示す断面図である。なお、画像形成装置の一例としては、プリンタ、スキャナ、Faxがあり、画像形成装置を制御する一例としては、複写機が有するHDD内の所定の記憶領域をボックスとして設け、当該ボックス内の画像データを操作することも考え得る。本発明に係る画像形成装置は、画像形成装置本体(複写装置本体)100、デッキ150、循環式自動原稿送り装置(RDF)180から大略構成されている。
画像形成装置本体100は、プラテンガラス101、スキャナ102、走査ミラー105、106、レンズ108、CCDセンサ(イメージセンサ部)109、感光体ドラム110、1次帯電器112、前露光ランプ114、クリーニング装置116、転写帯電器118、露光制御部120、現像器121、転写ベルト130、上段カセット131、下段カセット132、ピックアップローラ133、134、給紙ローラ135、136、レジストローラ137、吸着帯電器138、転写ベルトローラ170、定着前帯電器139、140、定着器141、排紙ローラ142、排紙フラッパ154、反転パス155、再給紙トレイ156、多重フラッパ157、搬送パス158、給紙ローラ159、経路160、排出ローラ161、第1の送りローラ162、第2の送りローラ162a、反転ローラ163を備えている。上記構成を詳述すると、上記図1におけるリーダ部1は、図2のプラテンガラス101〜CCDセンサ109に対応し、上記図1におけるプリンタ部2は、図2の感光体ドラム110〜反転ローラ163に対応する。
まず、リーダ部1について、詳述する。プラテンガラス101は、原稿載置台である。スキャナ102は、原稿照明ランプ103、走査ミラー104等で構成される。スキャナ102は、不図示のモータにより所定方向に往復走査されることにより、原稿の反射光107を、走査ミラー104〜106を介してレンズ108を透過させてCCDセンサ109に結像する。CCDセンサ109で、電気信号に変換され、CCDセンサ109付近の、図示しないスキャナ画像処理部によって、A/D変換、シェーディング補整が行われ、後述するコア部10のゲートアレイ326を介して、メモリ324に、デジタル画像データとして蓄積される。
次にプリンタ部2について詳述する。露光制御部120は、レーザ、ポリゴンスキャナ等で構成されており、上記コア部10のメモリ324に蓄積されたデジタル出画像データをメモリから読み出し、後述するコア部10のゲートアレイ326が、デジタル画像データからビデオ信号に変換し、I/F325を通じてプリンタ部に送る。そして、そのビデオ信号に基づいて変調されたレーザ光129を、感光体ドラム110に照射する。感光体ドラム110の回りには、1次帯電器112、現像器121、転写帯電器118、クリーニング装置116、前露光ランプ114が装備されている。感光体ドラム110を中心とした画像形成部126において、感光体ドラム110は、不図示のモータにより図中矢印方向に回転しており、1次帯電器112により所望の電位に帯電された後、露光制御部120からのレーザ光129が照射され、静電潜像が形成される。
一方、上段カセット131或いは下段カセット132からピックアップローラ133、134により給紙された転写紙は、給紙ローラ135、136により本体に送られ、レジストローラ137により転写ベルトに給送され、可視化されたトナー像が転写帯電器118により転写紙に転写される。転写後の感光体ドラム110は、クリーニング装置116により残留トナーが清掃され、前露光ランプ114により残留電荷が消去される。転写後の転写紙は、転写ベルト130から分離され、定着前帯電器139、140によりトナーが再帯電され、定着器141に送られ加圧、加熱により定着され、排紙ローラ142により本体100の外に排出される。
吸着帯電器138は、レジストローラ137から送られた転写紙を転写ベルト130に吸着させる。転写ベルトローラ170は、転写ベルト130の回転に用いられると同時に、吸着帯電器138と対になって、転写ベルト130に転写紙を吸着帯電させる。
画像形成装置本体100には、例えば4000枚の転写紙を収納し得るデッキ150が装備されている。デッキ150のリフタ151は、給紙ローラ152に転写紙が常に当接するように転写紙の量に応じて上昇する。また、画像形成装置本体100には、例えば100枚の転写紙を収容し得るマルチ手差し153が装備されている。
排紙フラッパ154は、両面記録側ないし多重記録側と排紙側の経路を切り替える。排紙ローラ142から送り出された転写紙は、この排紙フラッパ154により両面記録側ないし多重記録側に切り替えられる。多重フラッパ157は、両面記録と多重記録の経路を切り替えるものであり、これを左方向に倒すことにより、反転パス155を介さず、直接、搬送パス158に転写紙を導く。給紙ローラ159は、経路160を通じて転写紙を感光体ドラム110側に給紙する。
排出ローラ161は、排紙フラッパ154の近傍に配置されて、この排紙フラッパ154により排出側に切り替えられた転写紙を機外に排出する。両面記録(両面複写)時には、排紙フラッパ154を上方に上げて、多重フラッパ157を右に倒し、記録(複写)済みの転写紙を反転パス155で介した後、多重フラッパ157を左に倒し、搬送パス158を介して裏返した状態で再給紙トレイ156に格納する。また、多重記録(多重複写)時には、排紙フラッパ154を上方に上げて、多重フラッパ157を左に倒し、記録(複写)済みの転写紙を搬送パス158で介した後、再給紙トレイ156に格納する。再給紙トレイ156に格納されている転写紙が、下から1枚ずつ給紙ローラ159により経路160を介して本体のレジストローラ137に導かれる。
本体から転写紙を反転して排出する時には、排紙フラッパ154を上方へ上げ、多重フラッパ157を右方向へ倒し、記録(複写)済みの転写紙を搬送パス155側へ搬送し、転写紙の後端が第1の送りローラ162を通過した後に、反転ローラ163によって第2の送りローラ162a側へ搬送し、排出ローラ161によって転写紙を裏返して機外へ排出する。また、機外へ排出された転写紙は、フィニッシャ190に搬送される。
190はフィニッシャであり、画像形成装置100で印刷された転写紙をスタックするものである。パス193は、画像形成装置100で印刷された転写紙を受け取る経路である。ローラ197は、パス193から搬送された転写紙を、パス195あるいはパス196に送り出すものである。パス195へ送り出すには、排紙フラッパ194を下方に移動し、パス196へ送り出すには、排紙フラッパ194を上方に移動させる。そして、パス196を通った場合は、ローラ198によって、ビン192に排紙される。パス195を取った場合は、そのままビン192に排紙される。例えば、コピーを行った場合は、転写紙をビン191に排紙し、PDLプリントを行った場合は、ビン192に排紙することで、ユーザの利便性が上がる。
図17は本発明に係る画像形成装置のコア部10の構成を示すブロック図である。コア部10は、インターフェース部1701、1706、1707、1708、データ処理部1702、1705、CPU1703(各制御手段)、メモリ1704(記憶手段)を備えている。
上記構成を詳述すると、リーダ部1からの画像データは、I/F1706を介してデータ処理部1702へ転送される。データ処理部1702では、画像の回転処理や変倍処理などの画像処理を行う。また、そして、データ処理部1702へ転送された画像データは、CPU1703を通じて、メモリ1704にデジタル画像データとして蓄積される。また、本発明の表示部の好適な一例である操作部500からの制御コマンドに応じて、CPU1703、データ処理部1705、I/F1708を通じて、プリンタ部2へ転送される。または、インターフェース部1701を介してモデム処理部4、ネットワーク処理部7へ転送される。操作部500は、例えば、液晶パネルを用いて構成され、該液晶パネルは、タッチパッドの機能となっており、指が触れることにより、所定の命令又は設定に対応付けられたキー選択を可能とするものである。
また、ネットワーク処理部7を介して入力された画像を表すコードデータは、1701を介して、CPU1703へ転送され、CPUが、PDLコードであると判定した場合、PDLコードを、I/F1701を通じて、PDL展開部9へ転送されて、そこで、画像ビットマップデータに展開される。この画像ビットマップデータは、I/F1701、CPU1703を通じて、メモリ1704へ蓄積されていく。その後、CPU1703、データ処理部1705、I/F1708を通じて、プリンタ部2へ転送され、プリントする。
モデム処理部4からのファックス画像データは、I/F1701、CPU1703を介して、データ処理部1705へ転送された後、I/F1708を介して、プリンタへ転送される。
CPU1703は、メモリ1704に記憶されている制御プログラム、及び、I/F1707経由で操作部500から受けた制御コマンドに従って、上記のような制御を行う。また、メモリ1704はCPU1703の作業領域としても使われる。このように、本画像形成装置では、画像入出力制御部3のコア部10を中心に、原稿画像の読み取り、画像のプリント、画像の送受信、画像の保存、コンピュータからのデータの入出力などの機能を複合させた処理を行うことが可能である。本発明の入力手段の好適な一例であるインタフェース部(I/F部)1701は、外部ネットワーク上のサーバや他の画像形成装置から、様々なアプリケーションや制御プログラムをダウンロードし、メモリ1704に記憶することが出来る。また、他の入力手段の好適な一例としては、不図示の着脱可能なメモリスロットが考えられる。ネットワークだけからではなく、該メモリスロットに接続されたフレキシブルディスクやICカード、DVDやCD−ROMなどの可搬記憶媒体からもプログラムをダウンロードして、メモリ1704に格納することが出来る。
図3は本発明の画像形成装置の一例である複合機100のコア部10に記憶されたソフトウエア構造図300である。
301は画像形成装置全体を制御する本発明の第1の実行環境の一例であり、一般的には複写機の各種機能をリアルタイムに制御可能なリアルタイムOSの各モジュール、或いは、CPUに、命令してクリティカルに複写機のオプション装置、拡張カードを含む各機能を制御することが可能なライブラリ群である。そして、その上位で動作するアプリケーションに対して、インターフェース・コマンドを提供するモジュール群により実現されるものである。302は第1の実行環境301上で動作するコントローラ制御部であり、リーダ部1、プリンタ部2、モデム通信部4、PDL展開部8など制御するモジュールにより構成されるものとする。
303はアプリケーション・プログラミング・インターフェース(以下API)であり、アプリケーションからの命令の入力の命令列に応答して、このインターフェースでコントローラ制御部302にアクセスするための処理とネットワーク処理部7及びネットワーク4を介して複合機200等に制御コマンドを送る機能を有するものである。304は第1の実行環境301上で動作するアプリケーションであり、API303を使用しコントローラ制御部302に各種処理を依頼するものである。また、ネットワーク処理部7を介してネットワーク4上のコンピュータ(情報処理装置)11,12,20と通信することも可能である。
305は特定のアプリケーションを実行するために最適な第2の実行環境であり、例えば、Java(登録商標)の仮想マシンなどにより実現されるものである。306は本発明の第2の実行環境305上のアプリケーションが第1の実行環境であるリアルタイムOS301上で動作するコントローラ制御部302にアクセスするためのAPIであり、本実施例においてはAPI303を呼び出すための変換モジュールの機能とネットワーク処理部7及びネットワーク4を介して画像形成装置200等に制御コマンドを送る機能を有するものである。
307は第2の実行環境305上のアプリケーションを統括的に制御する機能を有するフレームワークモジュールである。308は本発明の第2の実行環境305上の他のアプリケーションを管理するためのアプリケーションであり、フレームワーク307と協調し、後述のアプリケーション309,310のダウンロード、アップロード、消去、無効化を行うものである。
309,310は第2の実行環境305上で動作するアプリケーションであり、API306を使用しコントローラ制御部302に各種処理を依頼するものである。また、ネットワーク処理部7を介してネットワーク4上の情報処理装置11,12,20と通信することも可能である。
311は本発明の第2の実行環境305が使用する資源を管理するリソース管理部であり、第1の実行環境を実現するリアルタイムOS301上で動作する。リソース管理部311は、第2の実行環境を実現する仮想マシン305自身、API306、フレームワーク307、或いはOS305上の全アプリケーションがメモリ等のリソース資源を使用する際、予め決められた以上の資源が使用できないように制限するものである。
まず、API303について説明する。API303は、第1の実行環境であるリアルタイムOS301によって制御されるコントローラ制御部302にアクセスするための複数の制御コマンドにそれぞれ対応したリアルタイムOS301上のインターフェースの集合である。この制御コマンドに対応した個々のインターフェースでは、制御コマンドを実行する対象の機器を指定するパラメータを持ち、かつ指定の対象として同一機器内のコントローラ制御部302、さらに、ネットワーク4で接続された画像形成装置200のコントローラ制御部302を指定可能である。
図4は、API303のインタフェースの呼び出しの動作を示す図である。API303としては、例えば、従来、画像形成装置にリアルタイムOSを単独で載せている場合には、当該リアルタイムOS上で、画像形成装置の動作をきめ細かく制御可能な印刷プロトコルに従ったインタフェース群なども考えられる。ここでは、API303は、ネットワークプリンティングプロトコルを実現するためのライブラリ群である。
本実施形態では制御コマンドAに対応するインターフェースAが呼び出されたものとする。ここでは、コマンドとインタフェースは一対一対応して呼び出し可能なものと考えているが、シンプルなコマンドを複数組合わせて一つの新しいコマンドとみなし、これをインタフェースAと対応させてもよい。制御アプリケーション304が、API303のインターフェースAを呼び出す(401)。インタフェースAには、処理の対象となる画像形成装置を表す識別子が付加できる。API303は、インタフェースAに付加された識別子を解釈し、識別子が示す機器が、API303が備えられた画像形成装置自身であると判断した場合は、402でコントローラ制御部302に対し、コマンドAを実行して対応する処理を行う。API303は、コマンドの制御対象が機器外(画像形成装置200)と同様の識別情報を用いて判断すれば、403でネットワーク処理部7を介してネットワーク4の当該コマンドに対応したパケット形式のデータを送出する。画像形成装置200のネットワーク処理部7(取得手段)は、前記パケット形式のデータから、コマンドを取得し、404で通信アプリケーション304に当該コマンドAのデータを渡す。通信アプリケーション304は、コマンドAに対応するインタフェースAを認識し、405で機器内のコントローラ制御部302を対象としたAPI303のインターフェースAを呼び出す。
このとき、401で呼び出されたインターフェースAと405で呼び出されたインターフェースAは同一のものとすることができる。API303は、コマンドの対象が機器内であるので、406でコントローラ制御部302に対し当該コマンドAに対応した処理を行う。このとき402のコマンドに対応した処理と406のコマンドに対応した処理は同一のものである。
図5は、API306の動作を示すブロック図である。本実施例では最終的に画像形成装置に命令を行うコマンドAに対応するインタフェースとして、インターフェースAが呼び出されたものとする。501は制御アプリケーション2(304)が、API306のインターフェースAを呼び出すことを示す。図4と異なる部分を詳述する。
API306に含まれる各インタフェースは、本発明の第2形式の命令の、好適な一例である。また、API303に含まれる各インタフェースは、本発明の第1形式の命令の、好適な一例である。
まず、API306について詳述する。API306は、第2の実行環境305上のインターフェースの集合であり、API303が提供するインターフェースを呼び出し可能なインターフェースを含む。また、API306の各コマンドに対応した個々のインターフェースでは、API303と同様に制御コマンドを実行する対象を指定するパラメータを持ち、かつ指定の対象として同一機器内のコントローラ制御部302、およびネットワーク4で接続された画像形成装置200のコントローラ制御部302が指定可能である。
ここでは、第1の実行環境に変換して実行する必要があるインタフェースAが呼び出された場合を考える。まず、呼び出されたインタフェースAが起動する処理の対象が機器内であれば、API306のインタフェースを呼び出す。API306のインタフェースが呼び出されるのに応答して、リアルタイムOS301が解釈可能な、API303のインタフェースが起動され、呼び出される。そして、呼び出されると、APIのインタフェースは、コマンドAに対応する処理を起動する(502)。API303はコントローラ制御部302に対し、コマンドに対応した処理を行う(503)。コマンドの対象が機器外(例えば、画像形成装置200)であれば、ネットワーク処理部7を介してネットワーク4の当該コマンドに対応したパケットを送出する(504)。画像形成装置200のネットワーク処理部7は、送信された前述のパケットを受信し、505で通信アプリケーション304に当該コマンドAに対応するパケットデータを渡す。通信アプリケーション304は、506で機器内のコントローラ制御部302を対象としたAPI303のインターフェースAを呼び出す。このとき、502で呼び出されたインターフェースAと506で呼び出されたインターフェースAは同一である。
このようにして、操作したい機能が、画像形成装置内であるか、他の画像形成装置内であるかの違い、及び、装置のアーキテクチャの違い、及び、OSの差異にそれぞれ依存することが無いインタフェース群であるAPI306を提供することができる。そして、API306を活用することによって、実行環境2のAPI306の体系を学ぶだけで、各種アプリケーションが開発可能となり、さらに、API303をオーバーヘッドが無しに呼び出して活用できる仕組みとなっているので、画像形成装置の様々な機能を、制御するに際し、既に開発資産であるAPI303がある場合には、これを活用できる。
API306は、コマンドの対象が機器内であるので、507でコントローラ制御部302に対し当該コマンドAに対応した処理を行う。このとき503のコマンドに対応した処理と507のコマンドに対応した処理は同一であることは言うまでもない。また、404から406の処理と505から507の処理は同一であり、API303を使用した際の動作とAPI306を使用した際の動作は同一であることもいうまでもない。
図18は、仮想マシン305におけるインタフェース呼び出し処理の一例を示す図である。まず、第2の実行環境である仮想マシン306上で、装置外部からの入力又は、操作部からの指示などにより、アプリケーションが起動され、あるインタフェースが呼び出された場合に、図18の処理が始まる。S1801で、仮想マシン305に呼び出されたインタフェースを読み込んで認識する。そして、S1802で、仮想マシン305は、認識したインタフェースが、第2の実行環境で解釈可能な第2形式の所定の命令の好適な一例である、ネイティブメソッドであるか否かを判断する。ネイティブメソッドとは、本発明の第一形式の命令を呼び出すものであり、第1の実行環境の一例であるリアルタイムOS301で解釈実行可能なメソッドである。そして、仮想マシン305が、が呼び出されたインタフェースがネイティブメソッドではないと判断した場合には、通常メソッドを読み込んだと判断し、通常メソッドを起動して呼び出す。そして、通常メソッドは所定のアプリケーション処理を行い(S1804)、通常メソッドの終了処理を行って(S1805)、処理を終了する。S1802で、S1801で仮想マシン305が認識した命令がネイティブメソッドであると判断した場合には、S1806に進み、仮想マシン305は、ネイティブメソッド起動処理を行って(S1806)、第1形式の命令列の好適な一例であるエンジン制御プログラムを呼び出す(起動して実行する)。ここで、エンジン部を制御可能なエンジン制御プログラムを呼び出すと述べたが、これは、図5のAPI303に含まれるインタフェースを介してプリンタ制御コマンドを呼び出すことを意味し、図5の503の部分に該当する。そして、S1808でプリンタを制御する処理を行い、S1809でネイティブメソッド終了処理を行い、図18の処理は終了する。
ここでは、エンジン部を制御すると述べたが、第1の実行環境で実行される制御プログラムには、エンジン部を制御する各種コントローラをはじめ、ビデオコントローラ部、DCコントローラ部、ネットワークボードが備えられている場合は、ネットワークボード部、また、画像形成装置内のHDD内の、メモリの記憶内容制御する制御命令を含む。
通常メソッド処理を呼び出すアプリケーションとしては、例えば、クリティカルな応答が必要ではないプログラム、例えば、複写機やプリンタの操作パネルのグラフィカルユーザインタフェースをソフトウェアで実現するためのアプリケーションモジュールが考えられる。ネイティブメソッドを呼び出す場合としては、アプリケーションから、複写機やプリンタ等のエンジン制御部(エンジン部)を制御するクリティカルな応答が求められる処理を例えば、Java(登録商標)のネイティブメソッドインタフェースを介してプリンタエンジン制御プログラム呼び出す場合が考えられる。
図6は本発明に係る画像形成装置の操作部500(図1参照)の表示部に表示される画面を示す説明図であり、本発明の第1の実行環境の一例であるリアルタイムOS301上で実行されるアプリケーションを選択、実行するためのものである。尚、この画面はタッチパネルとなっており、それぞれ表示される機能の枠内を触れることにより、その機能が実行される。
コピーモードキー623は、複写動作を行う場合に押すキーである。そして、このコピーモードキー623が押されたときに、図6の630に示すコピーモードの画面を表示する。拡張機能キー601は、このキーを押すことによって両面複写、多重複写、移動、綴じ代の設定、枠消しの設定等のモードに入る。
画像モードキー602は、複写画像に対して網掛け、影付け、トリミング、マスキングを行うための設定モードに入る。
ユーザモードキー603は、モードメモリの登録、標準モード画面の設定が行える。
応用ズームキー604は、原稿のX方向、Y方向を独立に変倍するモード、原稿サイズと複写サイズから変倍率を計算するズームプログラムのモードに入る。M1キー605、M2キー606、M3キー607は、それぞれに登録されたモードメモリを呼び出す際に押すキーである。オプションキー609は、フィルムから直接複写するため、フィルムプロジェクタ等のオプション機能の設定を行うキーである。
ソータキー610は、ソート、ノンソート、グループの設定を行うキーである。原稿混載キー611は、原稿フィーダにA4サイズとA3サイズ、またはB5サイズとB4サイズの原稿を一緒にセットする際に押すキーである。等倍キー612は、複写倍率を100%にする際に押すキーである。用紙選択キー613は、複写用紙の選択を行う際に押すキーである。縮小キー614、拡大キー615は、定型の縮小、拡大を行う際に押すキーである。濃度キー618、620は、キー618を押す毎に濃く複写され、キー620を押す毎に薄く複写される。濃度表示617は、濃度キー518、520を押すと表示が左右に変化する。AEキー619は、新聞のように地肌の濃い原稿を自動濃度調整複写するときに押すキーである。
HiFiキー621は、写真原稿のように中間調の濃度が濃い原稿の複写の際に押すキーである。文字強調キー622は、文字原稿の複写で文字を際だたせたい場合に押すキーである。送信モードキー624は、ファックス送信等を行うときに押すキーである。ボックスモードキー625は、ボックスに格納されたデータを操作するときに押すキーである。上記のコピーモードキー623、送信モードキー624、ボックスモードキー625は、それぞれOS301上で実行されるアプリケーション304を選択する操作に該当する。
拡張モードモードキー626は、本発明のモードキーであり、本発明の第2の実行環境305上で実行されるアプリケーションを選択、実行するための画面(図7)に遷移するものである。本実施例では、他のモードキーの選択と同等に表示しているが、キーの大きさやデザインを変更するなどし、視覚的により認識しやすいように表示してもよい。
640はステータスラインであり、機器の状態や印刷情報を示すメッセージを表示する。図の場合、コピー中であることを示している。650は履歴キーであり、これを押下することで、印刷済みのジョブの履歴情報を表示する。たとえば、印刷ジョブの、終了時刻、ユーザ名、ファイル名、印刷枚数等の情報を表示する。
コピーモード画面630表示時に、図外のStartキーなどにより複写動作の実行が指示された場合、API303に対し処理の開始や各種パラメータの設定などを行うインターフェースが順次呼び出される(401)。通常、複写動作は機器内に対して指示されるためAPI303において、コントローラ制御部302にコマンドを伝え(402)、結果として複写動作が実行される。
図7は図1に示した画像形成装置の操作部500の表示部に表示される画面を示す説明図であり、本発明の第2の実行環境305上で実行されるアプリケーションを選択、実行するためのものである。尚、この画面はタッチパネルとなっており、それぞれ表示される機能の枠内を触れることにより、その機能が実行される。簡易Copyモードキー730は、複写動作を行う場合に押すキーである。そして、この簡易Copyモードキー730が押されたときに、図7の740に示す簡易コピー画面を表示する。
701は現在の設定項目に対応する表示画面である。702は現在の設定項目と各設定項目の内容を一覧表示するものであり、現在の設定項目は強調表示などにより視覚し易い表示が行われる。本実施例では、文字を太くすることにより実現しているが、選択項目が識別し易い方法であれば特に制限するものではない。703は現在のコピー数の設定内容を示すものである。704は現在の用紙の設定内容を示すものである。
705は現在のNupの設定内容を示すものである。706は現在の両面設定の内容を示すものである。707は現在のソートの設定内容を示すものである。708は現在のステイプルの設定内容を示すものである。709は1つ前の設定内容に戻る際に使用するボタンであり、表示画面701が設定項目に対応した内容に再表示される。本実施例では該当する項目が存在しない場合は、ボタン自身を非表示にするようにしてもよい。710は1つ次の設定内容に進む際に使用するボタンであり、表示画面701が設定項目に対応した内容に再表示される。720はステータスラインであり、機器の状態や印刷情報を示すメッセージを表示する。図の場合、コピー中であることを示している。
App2モードキー731、App3モードキー732は、それぞれのアプリケーションを選択するものである。Originalモードキー734は、本発明のモードキーであり、本発明の第1の実行環境の一例であるリアルタイムOS301上で実行されるアプリケーションを選択、実行するための画面(図6)に遷移するものである。本実施例では、他のモードキーの選択と同等に表示しているが、キーの大きさやデザインを変更するなどし、視覚的により認識しやすいように表示してもよい。簡易Copyモード画面730表示時に、図外のStartキーなどにより複写動作の実行が指示された場合、API306に対し処理の開始や各種パラメータの設定などを行うインターフェースが順次呼び出される(501)。通常、複写動作は機器内に対して指示されるためAPI303の対応するインターフェースが呼び出される(502)。API303は、機器内のコントローラ制御部302にコマンドを伝え(503)、結果として複写動作が実行される。
図11は、アプリケーション管理アプリケーションが管理しているアプリケーション情報を示す図であり、後述のアプリケーションをダウンロードする際に各情報が格納され、消去に伴い削除されるものである。1101は現在ダウンロードされているアプリケーション名を示す。
1102はアプリケーションの現在のステイタスを示す。「起動」は現在実行されていることを示し、「停止」は実行されていないことを示す。1103はアプリケーションのバージョンを示す。1104はダウンロードされた日時を示す。1105はダウンロードしたアプリケーションの格納先を示す。1106はアプリケーションのタイプを示し、「一般」は通常に使用されるアプリケーションであることを示し、「システム」は特殊な用途に使用されるアプリケーションであることを示す。
1107はUI即ち操作部に何らかの表示を行なうか否かを示し、「あり」の場合は表示を行うことを示す。1108はアプリケーションを実行するのに必要なフレームワーク307のバージョンを示す。1109はアプリケーションを実行するのに必要なAPI306のバージョンを示す。なお、アプリケーション情報として保持する情報は上記に限定したものではなく、ダウンロード元の情報処理装置の情報などが格納されていてもよい。
図8は、本発明のアプリケーション管理手段の好適な一例であるアプリケーション管理アプリケーション308の操作画面を示す図である。本実施例では、画像形成装置100にはリムーバブルな記憶媒体に直接接続できないため、情報処理装置11,12の記憶装置30,36からダウンロード処理を行うものとする。また、本実施例では、画像形成装置100上の操作部500から操作するように構成しているが、本アプリケーションをネットワーク上の情報処理装置11,12から操作するように構成されてもよい。さらに、本実施例ではOS2上のおいて本発明のアプリケーション管理モジュールが実施された場合に関して解説するが、OS1上においても適応可能であることは言うまでもない。
801は既にダウンロードされているアプリケーションの一覧を表示するものである。本実施例では、ここで表示される一覧は図8のアプリケーションタイプ1106が一般のものだけである。802はアプリケーションの名称を示す項目であり、アプリ名1101の内容が表示される。803はアプリケーションの現在のステイタスを示す項目であり、ステイタス1102の内容が表示される。
804はアプリケーションのバージョンを示す項目であり、バージョン1103の内容が表示される。805はアプリケーションをダウンロードした日時を示す項目であり、日時1104の内容が表示される。806はダウンロードボタンであり、新たにアプリケーションをダウンロードする際に選択する。選択後は後述のダウンロード画面(図9)に遷移する。807はアップロードボタンであり、アプリケーションの一覧で所望のアプリケーションを選択し、このボタンを選択することでダウンロードされているアプリケーションを所定の情報処理装置にアップロードする。選択後は後述のアップロード画面(図10)に遷移する。
808は消去ボタンであり、アプリケーションを消去する際に選択するボタンである。アプリケーションの一覧で所望のアプリケーションを選択し、このボタンを選択することで画像形成装置100からアプリケーションを削除する。809は本発明のアプリケーション起動ボタンであり、フレームワーク307に対し所定のアプリケーションの起動を指示することにより、停止状態のアプリケーションを起動状態にするものである。
810は本発明のアプリケーション停止ボタンであり、FramWork307に対し所定のアプリケーションの停止を指示することにより、起動状態のアプリケーションを停止状態にするものである。
820は本発明のアプリケーション管理アプリケーションを選択するモードキーである。
821は図7で示した簡易Copyモードキーである。822はApp3モードキーである。830はステータスラインであり、機器の状態や印刷情報を示すメッセージを表示する。図の場合、コピー中であることを示している。なお、アプリケーション一覧801に表示される内容に関しては、特に本実施例に限定するものではない。また、表示順や表示方法に関しても特に規定するものではない。
図9は、アプリケーション管理アプリケーションの、アプリケーションダウンロード画面を示す図である。本実施例では、画像形成装置100にはリムーバブルな記憶媒体に直接接続できないため、情報処理装置11,12の記憶装置30,36にアップロード処理を行うものとする。また、本実施例では、画像形成装置100上の操作部500から操作するように構成しているが、本アプリケーションをネットワーク上の情報処理装置11,12から操作するように構成されてもよい。
901はダウンロードするアプリケーションを指定する入力フィールドである。本実施例では、ネットワーク4で接続される情報処理装置11から所定のアプリケーションをダウンロードするものとする。902は本画面の処理を中断し図8の画面に遷移するボタンである。903はダウンロードの開始を指示するボタンであり、後述のフローチャート(図12)の処理が実行される。
なお、ダウンロードするアプリケーションを指定する方法は、特に本実施例の方法に限定するものではない。ネットワーク4上の情報処理装置11,12,20等を視覚的に並べ、かつ各情報処理装置内の記憶装置30,36の内容を視覚的に表示しダウンロードする対象を選択できるように構成されてもよい。
図12は、アプリケーション管理アプリケーションのダウンロード時のフローチャートを示したものである。1201は入力フィールド901に入力されたデータから、情報処理装置11の所定の位置にダウンロードできる情報があるかを判定するステップである。OKであればステップ1202に進みNOであれば本処理を終了する。
1202はダウンロードデータを格納する格納場所を作成するステップであり、メモリ1704の所定の領域に格納される。1203はデータをダウンロードするステップであり、情報処理装置11の所定のデータを1202で作成したフィールドにダウンロードする。なお、ダウンロードするデータは、何らかの手段により圧縮されていてもよいし、複数のファイルであっても構わない。
1204はダウンロードしたデータの一部を解析するステップであり、ダウンロードしたアプリケーションの実行に必要な情報のうちフレームワーク307のバージョンを判定するステップである。OKであればステップ1205に進み、NGであればステップ1207に進む。1205はダウンロードしたデータの一部を解析するステップであり、ダウンロードしたアプリケーションの実行に必要な情報のうちAPI306のバージョンを判定するステップである。OKであればステップ1206に進み、NGであればステップ1207に進む。
1206はダウンロードしたデータが動作可能なアプリケーションとして図11のアプリケーション情報に登録されるステップである。
1207はダウンロードしたデータが動作不可能なアプリケーションとして判定された結果、メモリ1704から削除されるステップである。
図10は、アプリケーション管理アプリケーションの、アプリケーションアップロード画面を示す図である。1001はアップロードするアプリケーションを示すフィールドである。図8で選択されたアプリケーションが表示される。1002はアップロード先の情報処理装置を指定する入力フィールドである。本実施例では、ネットワーク4で接続される情報処理装置12の所定の位置にアプリケーションをアップロードするものとする。
1003は本画面の処理を中断し図8の画面に遷移するボタンである。1004はアップロードの開始を指示するボタンであり、1002で指定されたアップロード先の確認を行った後、図12のダウンロードステップ1203でダウンロードされた全ての内容をアップロードする。
なお、アップロード先の情報処理装置の指定方法に関しては、特に本実施例の方法に限定するものではない。ネットワーク4上の情報処理装置11,12,20等を視覚的に並べ、かつ各情報処理装置内の記憶装置30,36の内容を視覚的に表示しアップロード先を選択できるように構成されてもよい。
図13は本発明のリソース管理手段の好適な一例であるリソース管理部311の処理の一部を示すフローチャートである。
1301はOS305を介して行われるメモリ取得要求か否かを判定するステップであり、YESであればステップ1302に進み、NOであればステップ1304に進む。1302はそれまでOS305を介して行われたメモリ獲得要求の合算と、今回要求のメモリサイズを合わせたサイズが使用可能な予め決められた上限値に達したかを判定するステップであり、上限に達していなければステップ1303に進み、上限に達していればエラーステータスとして本処理を終了する。
1303はそれまでOS305を介して行われたメモリ獲得要求の合算に、今回要求のメモリサイズを加算するステップであり、且つ要求されたメモリ領域の割り当てを行うステップである。1304はメモリ解放要求であるかを判定するステップであり、YESであればステップ1305に進み、NOであればステップ1306に進む。1305はそれまでOS305を介して行われたメモリ獲得要求の合算から、今回解放要求分のメモリサイズを減算するステップであり、且つ割り当ててあったメモリ領域を解放するステップである。
1306はスレッドの生成要求であるかを判定するステップであり、YESであればステップ1307に進み、NOであればステップ1309に進む。1307はそれまでOS305を介して行われたスレッド生成数と、今回の要求を合わせた数が予め決められた使用可能な上限値に達したかを判定するステップであり、上限に達していなければステップ1308に進み、上限に達していればエラーステータスとして本処理を終了する。
1308はそれまでOS305を介して行われたスレッド生成の合算に、今回の要求を加算するステップであり、且つスレッドの生成を行うステップである。
1309はスレッドの解放要求であるかを判定するステップであり、YESであればステップ1310に進み、NOであればステップ1311に進む。1310はそれまでOS305を介して行われたスレッド生成数から、今回解放要求分のスレッド数を減算するステップであり、且つ割り当ててあったスレッドを解放するステップである。1311はその他の処理である。本実施例では、メモリ使用量とスレッドの生成数に関してのみ触れているが、ネットワーク処理部7において通信するために使用するソケット数等のリソースであっても適用可能であることは言うまでもない。
次に図6、図7、図8、図14、図15、図16を用いて本発明の他の実施形態について説明する。
図8のアプリ一覧801に示すように、本発明第1の実施例においてダウンロード、或いは起動可能なアプリケーション数は、図7に示すモードキー730、731、732の数(前述の実施形態では3つであった)よりも多くすることができる。
本発明の第2の実施例は上記の状況に対応するものである。
図14は、図8においてScan(スキャン)アプリケーションを新たに起動した直後の画面を示す図である。拡張モード2モードキー1401は、本発明の選択キーの一例のモードキーであり、本発明の第2の実行環境305上で実行されるアプリケーションを選択、実行するためのもう1つの画面(図15)に遷移するものである。本実施例では、他のモードキーの選択と同等に表示しているが、キーの大きさやデザインを変更するなどし、視覚的により認識しやすいように表示してもよい。
図15は、拡張モード2キー1401が選択された際の画面を示す。Originalモードキー1501は、選択キーの一例のモードキーであり、本発明の第1の実行環境の一例であるリアルタイムOS301上で実行されるアプリケーションを選択、実行するための画面(図6)に遷移するためのものである。本モードキーの機能は前述の実施形態のモードキー734と同じである。本実施例では、他のモードキーの選択と同等に表示しているが、キーの大きさやデザインを変更するなどし、視覚的により認識しやすいように表示してもよい。
なお、図14の操作画面で、Scanアプリケーションを停止、或いは消去した場合、図8のモードキーに戻る。つまり、一画面に遷移用のキーを含めて、4個までの選択キーしか表示しないようにしているため、図8の状態でScanアプリケーションを追加・起動すると、図14のようになり、1401に示す拡張モード2キーが現れる。そして、拡張モードキーを押すと、図15の画面に遷移するのである。図15の状態でさらに他のプログラムを追加していくと、さらに選択キーが、図15の上部(Scanキーの右隣でOriginalキーの左側)に順次現れ、図14と同様の画面となる(図示省略)。
図16は、画像形成装置の表示部に表示される表示画面の遷移シーケンスを示す図である。本発明第2の実施例では1601の遷移を行うものを示したが、1602のように各画面とも前後に移動できるモードキーを設けるようにしてもよく、起動されるアプリケーションの数が増えるに従い、動的に操作画面が増えるのであれば実現手段を特に制限するものではない。
また、本実施例では、OS2側のアプリケーションの数が増加した場合にのみ言及しているが、OS1側のアプリケーションが増加した場合にもOriginalモードキー、Original2モードキーなどにより同様に適応できることは言うまでもない。
図19は、アプリケーションのダウンロード、又は、画像形成装置のメモリへの登録(入力)に応答して起動される、アプリケーションの追加ルーチンの起動後の処理の一例を示す図である。例えば、図8において、OKボタンが押された場合に起動される。ここでは、Scanプログラムが新たに画像形成装置にダウンロードされるものとする。S1901では、リソース管理部は、画像形成装置にプログラムを新たに追加し、さらに、表示画面を新たに記憶するだけの十分な記憶領域が画像形成装置内にあるか否かを判断する。十分なメモリがないと判断した場合には、S1910のエラー処理に進み、処理を終了する。リソース管理部が、十分なメモリがあると判断した場合には、S1902に進む。S1902では、制御アプリケーション9(表示制御手段)は、例えば図8の上部に示される各選択キー(820乃至823)と同様の、新規アプリケーションを選択する機能選択キーを現在の表示画面に追加可能か否かを判断する。現在の表示画面とは、現在使用中の画面、或いは、新しいプログラムを追加した場合に該プログラムを選択指示又は実行指示可能な選択キーを新たに追加しようとする表示画面である。S1902で、現在の表示画面に追加可能と判断された場合には、S1903に進み、続いて表示制御アプリケーション9は、現在の画面に新たな機能選択キーを追加した画面を表示するよう、表示制御情報を画像形成装置内のメモリに登録し、処理を終える。次に、S1902で、制御アプリケーション9は、現在の表示画面に追加可能ではないと判断された場合には、S1904で、現在の表示画面を切り換えて表示する新たな表示画面(図15)を追加可能か否かを判断する。図8では、選択キーは、総計4個以上は表示できないものと設定されていたとすると、図8で図9の画面などを用いてScanプログラムを追加すると、表示制御プログラムは、図14及び図15の画面を関連付けて、画像形成装置内のメモリに呼び出し可能に登録するのである。
S1904で、表示画面に対応付けられるID枯渇や記憶領域がフルで新規の表示画面を用意できないと判断された場合には、S1910でエラー処理を行う。S1904で現在の表示画面を切り換えて表示する新たな表示画面を追加可能であると判断された場合には、S1905で、制御アプリケーション9は、新規表示画面の表示制御情報を生成して、メモリに登録する。そして、S1906で、制御アプリケーション9は、S1902の現在の画面と新規表示画面を相互に呼び出し、遷移可能に関連付ける。さらに、S1907に進む。S1907では、S1902の現在の画面に、新規画面を呼び出す機能選択キー(例えば、1401で示した拡張モードキー2)が新たに表示されるように、表示制御情報(例えば図14を表示する表示制御情報)をメモリに登録する。さらにS1908に進み、S1905で追加された新規表示画面に新規アプリケーションを選択指示する機能選択キーを表意するようメモリに表示制御情報を登録する。さらにS1909に進み、S1902の現在の画面を機能選択キーをこれ以上追加できない追加済み画面として、S1905で追加された新規画面を、現在の画面として更新登録して処理を終了する。
なお、画像形成装置内に搭載された複数の管理アプリケーションにより、リアルタイムOS上のプログラム(第1のアプリケーション)及び、仮想マシン上のプログラム(第2のアプリケーション)は、それぞれのアプリケーションモジュールを、画像形成装置外から画像形成装置内にダウンロード、又は、前記画像形成装置内から前記画像形成装置外にアップロード、又は、消去、又は、無効化する処理を行なうようにしてもよい。
また、管理アプリケーションが仮想マシン上で実行可能なアプリケーションを削除する場合も考えられる。例えば、表示制御プログラム(判断手段・表示制御手段)は、複写機に記憶される複数のプログラムから所望のプログラムを選択指示するための複数の選択キーを含む選択キーを複写機の操作部の表示画面する。複写機内のプログラムを削除するのに応答して、削除するアプリケーションに対応する選択キーと、画像形成装置内に引き続き留まるアプリケーションに対応するキーとが、前記表示部の表示画面に一画面で表示可能となるか否かを判断する。例えば、図14の状態において、1404の消去ボタンを押した場合には、スキャンアプリケーションが削除される。それと共に、図14の表示画面(第1の表示画面)から、拡張モード2ボタンを表示しないようにする。つまり、図14の画面から図15の画面(第2の表示画面)を呼び出すことが不可能な表示情報を表示制御プログラムがメモリに登録する。
また、図5のAPI303及びコントローラ部302において、画像形成装置の制御コマンドの排他的実行を可能とすれば、第1の実行環境からも、第2の実行環境からも、画像形成装置を制御するインタフェースをAPI303を介して呼び出すことにしたので、いずれの実行環境上のアプリケーションモジュールも、画像形成装置の制御モジュールを画像形成装置の機能を順次に使用することができるようになる。これにより、画像形成装置を安定して動作させることができるようになる。
なお、いずれの実行環境においても同等の能力を持つアプリケーションを開発・使用できる。一部の性能重視の制御プログラムは、第1の実行環境にて開発し、実行することも可能である。このように、移植性や応答性などの仕様の要求に応じて、ユーザは開発環境を第1の実行環境、又は、第2の実行環境を選択可能である。さらに、インタフェースに識別子を付加するだけでよく、複合機はこれを判断して自動的に適切な装置でコマンドを実行させるので、ネットワーク環境等の通信環境との親和性が図れる。
アプリケーションモジュールは、画像形成装置の外部インターフェースからダウンロード、アップロード、消去、無効化できるようにすることにより、画像形成装置に操作性を高めることができる。
さらに、アプリケーションの追加に際し、バージョンなどを比較し、条件が一致しない場合アプリケーションのダウンロードができない、あるいはダウンロードが失敗することにより、画像形成装置の信頼性を高めることができる。
(他の実施形態)
本実施形態における、図12、図13、図18、図19などに示す処理は、外部からインストールされるプログラムによって、画像形成装置100及び200それぞれにより遂行される。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を外部コンピュータから供給される場合でも本発明は適用されるものである。
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、又は、外部サーバ(図示省略)からダウンロードすることで、そのシステムあるいは装置の制御部(CPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、たとえば、フロッピィーディスク、ハードディスク、光ディスク、光磁気ディスク、DVD、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM等を用いることができる。
また、CPUが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、画像形成装置上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。さらに、記憶媒体から読み出されたプログラムコードが、画像形成装置に挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。