(57)【要約】【課題】汎用性を確保しつつ、エラー終了してしまう可能性を低減することができるプリンタ用オプションモジュールを提供する。【解決手段】プリンタに接続した状態で所定の機能を実現するオプションモジュールであって、接続しているプリンタ（以下、「接続プリンタ」と呼ぶ。）に対して、該接続プリンタの利用可能な印刷機能を問い合わせる手段を備え、接続プリンタの利用可能な印刷機能のみを指定して動作し、前記所定の機能を実現する。【選択図】  図４
2004291371.tif 000002
【特許請求の範囲】
【請求項１】
プリンタに接続した状態で所定の機能を実現するオプションモジュールであって、
接続しているプリンタ（以下、「接続プリンタ」と呼ぶ。）に対して、該接続プリンタの利用可能な印刷機能を問い合わせる手段を備え、
接続プリンタの利用可能な印刷機能のみを指定して動作し、前記所定の機能を実現することを特徴とするオプションモジュール。
【請求項２】
前記所定の機能は、プリンタ制御言語で記述されたデータに基づいて印刷イメージを生成する機能であることを特徴とする請求項１記載のオプションモジュール。
【請求項３】
前記印刷機能は、所定の解像度による印刷機能、両面印刷機能、２次記憶装置を利用した印刷機能、所定の給紙又は排紙トレイを使用した印刷機能、メールボックスを使用した印刷機能、部単位印刷機能、カラー印刷機能のうち、少なくともいずれかの印刷機能を含むことを特徴とする請求項１又は２記載のオプションモジュール。
【請求項４】
前記オプションモジュールはプログラムを記憶するメモリ装置であり、プリンタにおいて該プログラムが実行されることにより前記所定の機能が実現されることを特徴とする請求項１乃至３のいずれか１項に記載のオプションモジュール。
【請求項５】
プリンタに接続した状態で所定の機能を実現するオプションモジュールの制御方法であって、
接続しているプリンタ（以下、「接続プリンタ」と呼ぶ。）に対して、該接続プリンタの利用可能な印刷機能を問い合わせる工程と、
接続プリンタの利用可能な印刷機能のみを指定して前記所定の機能を実現する動作を実行する工程と、を備えることを特徴とする制御方法。
【請求項６】
所定の機能を実現するためのプリンタ用オプションプログラムであって、コンピュータを、
該オプションプログラムが組込まれるプリンタに対して、該プリンタの利用可能な印刷機能を問い合わせる手段、
該プリンタの利用可能な印刷機能のみを指定して前記所定の機能を実現する動作を実行する手段、として機能させるためのオプションプログラム。
【請求項７】
請求項１乃至４のいずれか１項に記載のオプションモジュールと、該オプションモジュールと接続可能に構成されるプリンタと、を備えるプリンタシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プリンタに接続した状態で所定の機能を実現するオプションモジュールの動作技術に関する。
【０００２】
【従来の技術】
近年、多くのプリンタでは、種々のオプションモジュールを接続してプリンタの機能を拡張することが可能な構成となっている。例えばポストスクリプトなど所定のプリンタ制御言語で記述されたデータを解析して印刷イメージを生成する機能（ＲＩＰ；Ｒａｓｔｅｒ  Ｉｍａｇｅ  Ｐｒｏｓｅｓｓｏｒ）などは、ＲＩＰ等の機能を実現する専用ハードウェアを組み込んだ装置や、ＲＩＰ等の機能を実現するソフトウェアを格納したＲＯＭモジュール等といった形態で、オプションモジュールとして提供される場合が多い。
【０００３】
【課題を解決するための手段】
従来、ＲＩＰ等のオプションモジュールは、接続先のプリンタが所定の印刷機能（例えば所定の解像度による印刷機能など）を利用できる又は実行できることを前提として、その動作が設計されている場合が多い。
【０００４】
すなわち、従来のオプションモジュールは、接続先のプリンタが実際にどのような印刷機能を利用可能であるかにかかわらず、所定の印刷機能が利用できるものとして動作する構成となっているため、オプションモジュールの動作結果中にプリンタが処理できないデータや指示が含まれてしまう可能性があった。このような場合、プリンタはオプションモジュールの動作結果をエラーと認識して、印刷処理自体をエラー終了してしまう場合が多く、プリンタが正常に印刷を実行できない一つの要因となっていた。
【０００５】
ここで、オプションモジュールを特定のプリンタの専用装置として作成する場合であれば、予めそのプリンタの利用可能な印刷機能を考慮してオプションモジュールの動作を設計できるため、上記問題を回避することは可能である。しかし、この場合、プリンタごとに対応するオプションモジュールを作成しなければならず、オプションモジュールの汎用性が著しく低下し、開発コスト等も嵩んでしまうことになる。
【０００６】
そこで、本発明は、汎用性を確保しつつ、エラー終了してしまう可能性を低減することができるオプションモジュール、及びそれを利用したプリンタシステムを提供することを目的とする。
【０００７】
【課題を解決するための手段】
本発明のオプションモジュールは、プリンタに接続した状態で所定の機能を実現するオプションモジュールであって、接続しているプリンタ（以下、「接続プリンタ」と呼ぶ。）に対して、該接続プリンタの利用可能な印刷機能を問い合わせる手段を備え、接続プリンタの利用可能な印刷機能のみを指定して動作し、前記所定の機能を実現することを特徴とする。前記オプションモジュールはプログラムを記憶するメモリ装置であり、プリンタにおいて該プログラムが実行されることにより前記所定の機能が実現されることが望ましい。かかる構成によれば、オプションモジュールの動作結果にプリンタが利用できない印刷機能が含まれてしまう可能性がなくなり、その結果、プリンタがオプションモジュールの動作結果をエラーと認識して正常に印刷できないという問題を回避することができる。
【０００８】
好適には、前記所定の機能は、プリンタ制御言語で記述されたデータに基づいて印刷イメージを生成する機能であることを特徴とする。かかる構成によれば、オプションモジュールの動作結果、すなわちプリンタ制御言語で記述されたデータの解析結果にプリンタが利用できない印刷機能が含まれてしまう可能性がなくなり、その結果、プリンタがオプションモジュールの動作結果をエラーと認識して正常に印刷できないという問題を回避することができる。
【０００９】
また好適には、前記印刷機能は、所定の解像度による印刷機能、両面印刷機能、２次記憶装置を利用した印刷機能、所定の給紙又は排紙トレイを使用した印刷機能、メールボックスを使用した印刷機能、部単位印刷機能、カラー印刷機能のうち、少なくともいずれかの印刷機能を含むことを特徴とする。かかる構成によれば、オプションモジュールは、上記の種々の印刷機能を任意に備える様々なプリンタに応じて動作することができ、高い汎用性を確保することができる。
【００１０】
本発明の制御方法は、プリンタに接続した状態で所定の機能を実現するオプションモジュールの制御方法であって、接続しているプリンタ（以下、「接続プリンタ」と呼ぶ。）に対して、該接続プリンタの利用可能な印刷機能を問い合わせる工程と、接続プリンタの利用可能な印刷機能のみを指定して前記所定の機能を実現する動作を実行する工程と、を備えることを特徴とする。
【００１１】
本発明のオプションプログラムは、所定の機能を実現するためのプリンタ用オプションプログラムであって、コンピュータを、該オプションプログラムが組込まれるプリンタに対して、該プリンタの利用可能な印刷機能を問い合わせる手段、  該プリンタの利用可能な印刷機能のみを指定して前記所定の機能を実現する動作を実行する手段、として機能させることを特徴とする。本発明のオプションプログラムは、ＣＤ−ＲＯＭ、磁気ディスク、半導体メモリなどの各種の記録媒体を通じて、又は通信ネットワークを介して、コンピュータ（プリンタ）にインストールまたはロードすることができる。
【００１２】
本発明のプリンタシステムは、本発明のオプションモジュールと、該オプションモジュールと接続可能に構成されるプリンタと、を備えることを特徴とする。
【００１３】
なお、本明細書において、「手段」とは、単に物理的手段を意味するものではなく、その「手段」が有する機能をソフトウェアによって実現する場合も含む。また、１つの「手段」が有する機能が２つ以上の物理的手段により実現されても、２つ以上の「手段」の機能が１つの物理的手段により実現されても良い。
【００１４】
【発明の実施の形態】
（第１の実施形態）
図面を参照して本発明の第１の実施形態を説明する。図１は、本実施形態のプリンタ１、オプションモジュール４のハードウェア構成を表すブロック図である。
【００１５】
プリンタ１は、用紙をプリンタ内に供給する給紙機構１０、印字を行う印刷エンジン１１、及び用紙をプリンタ機外に排出する排紙機構１２等により構成される動力機構部２を備える。印刷エンジン１１は、紙送機構、キャリッジ機構、印刷ヘッドなどを含んで構成される。
【００１６】
これら動力機構部２を制御し印刷動作を行わせるのは、ＣＰＵ（プロセッサ）１３、ＲＯＭ１４、ＲＡＭ１５、ＬＣＤパネル及びＬＣＤコントローラ１６、通信インタフェース１７、オプションモジュール４を接続するためのインタフェース１８等からなるプリンタ制御部３である。
【００１７】
ＣＰＵ１３は、内部バスを介して各手段１４〜１８にアクセス可能に構成されており、ホスト装置から通信インタフェース１７を介して送られてくる印刷ジョブに従い、動力機構部２を制御して実際に印刷動作を行なわせる。なお、動力機構部２が独立してＣＰＵを備えていてもよく、その場合は、動力機構部２のＣＰＵが、パラレルインタフェース等を介してＣＰＵ１３と通信を行い、印刷エンジン１１を制御して印刷動作を行わせることになる。
【００１８】
オプションモジュール４は、インタフェース１８を介してプリンタ１に接続した状態で所定の機能を実現するように構成されている。オプションモジュール４は、例えば前記所定の機能を実現するためのオプションプログラムが記憶されたＲＯＭモジュールやプリンタカード等により構成することができ、この場合、ＲＯＭモジュール等をプリンタ１に実装することで該オプションプログラムがプリンタ１に組込まれることになる。
【００１９】
オプションモジュール４の機能は設計に応じて定めることができるが、本実施形態ではその一例として、オプションモジュール４がプリンタ制御言語で記述されたデータに基づいて印刷イメージを生成する機能を実現する場合について説明を行う。
【００２０】
プリンタ１、オプションモジュール４の構成・動作は原則として従来のプリンタ装置やオプションモジュールの構成・動作と同様である。
【００２１】
ただし、本実施形態のオプションモジュール４は、プリンタ１に対して利用可能な印刷機能を問い合わせる手段を備えている点、プリンタ１の利用可能な印刷機能のみを指定して動作する点で、従来と異なっている。
【００２２】
図２に、プリンタ１及びオプションモジュール４における主要な機能構成図を示す。図に示すように、プリンタ１及びオプションモジュール４は、プリンタ制御手段２０、第１のプリンタ制御言語（例えば、ＥＳＣ／Ｐａｇｅ）に対応する第１解析手段２１、印刷制御手段２２、第２のプリンタ制御言語（例えば、ポストスクリプト）に対応する第２解析手段２３等を備えて構成される。
【００２３】
プリンタ制御手段２０、第１解析手段２１、印刷制御手段２２は、ＲＯＭ１４又はＲＡＭ１５に格納されるアプリケーションプログラムをＣＰＵ１３が実行することにより機能的に実現される。また、第２解析手段２３は、オプションモジュール４内に記憶されるオプションプログラムをＣＰＵ１３が実行することにより機能的に実現される。ＣＰＵ１３は、リアルタイムマルチタスクＯＳ上で、各手段を実現するプログラムを実行することが望ましい。
【００２４】
このようにプログラムを実行することにより実現される機能手段は、タスク（又はプロセス）として把握することができる。すなわち、プリンタ制御手段、第１解析手段、印刷制御手段、第２解析手段は、それぞれＣＰＵ１３において実行されるプリンタ制御タスク、第１解析タスク、印刷制御タスク、第２解析タスクとして把握できる。以下、「手段」と「タスク」を特に区別する必要のない限り、「タスク」に統一して記載する。
【００２５】
なお、プリンタ１及びオプションモジュール４は、上記の各タスクのほか、一般的なプリンタが備える画像処理（サイズ変換処理、ノイズ除去処理など）タスクなどを備えることができる。
【００２６】
以下、図３、図４を参照しながら各タスクの動作（処理内容）を説明する。
【００２７】
プリンタ制御タスク２０は、ホスト装置より、ネットワークを介して、第１又は第２のプリンタ制御言語で記述された印刷ジョブ（印刷データ及び制御コマンド）を受信し、これを受信バッファに格納する（Ｓ１００）。
【００２８】
次に、プリンタ制御タスク２０は、印刷ジョブの一部（例えば先頭データ）に基づいて、該印刷ジョブを記述する言語が第１又は第２のいずれのプリンタ制御言語であるかを判断する（Ｓ１０１）。
【００２９】
そして、プリンタ制御タスク２０は、印刷ジョブが第１のプリンタ制御言語により記述されていると判断した場合（図３（ａ）の場合）、第１解析タスク２１に対して該印刷ジョブについての処理開始を指示する（Ｓ１０２）。
【００３０】
第１解析タスク２１は、プリンタ制御タスク２０より処理開始の指示を受け付けた場合、受信バッファから印刷データを順番に読み出して解析し、ラスタ形式の印刷イメージを１バンド分又は１ページ分生成し、イメージバッファに格納する処理や、受信バッファから制御コマンドを順番に読み出し、これを解釈して、印刷制御タスク２２等に対して所定の指示（印字要求、紙送り要求、給紙／排紙要求など）を出力する処理などを実行する（Ｓ１０３）。
【００３１】
一方、プリンタ制御タスク２０は、印刷ジョブが第２のプリンタ制御言語により記述されていると判断した場合（図４の場合）、第２解析タスク２３に対して該印刷ジョブについての処理開始を指示する（Ｓ１０４）。
【００３２】
第２解析タスク２３は、プリンタ制御タスク２０より処理開始の指示を受け付けた場合、プリンタ１が所定の印刷機能を利用することができるかどうかについて、プリンタ制御タスク２０に対して問い合わせを行う（Ｓ１０５）。
【００３３】
ここで、問い合わせる印刷機能としては、例えば、所定の解像度による印刷機能、両面印刷機能、２次記憶装置を利用した印刷機能（２次記憶装置上に印刷イメージを展開して高速に印刷を実行する機能など）、所定の給紙又は排紙トレイを使用した印刷機能、メールボックスを使用した印刷機能（印刷ジョブの送信元別に印刷結果を仕分ける機能など）、部単位印刷機能、カラー印刷機能などを考えることができる。
【００３４】
プリンタ制御タスク２０は、第２解析タスク２３より前記問い合わせを受け付けた場合、各印刷機能について利用可能の是非を第２解析タスク２３に通知する（Ｓ１０６）。
【００３５】
第２解析タスク２３は、プリンタ制御タスク２０より通知を受け付けた後、第１解析タスク２１と同様に、受信バッファから印刷データを順番に読み出して解析し、ラスタ形式の印刷イメージを１バンド分又は１ページ分生成し、イメージバッファに格納する処理や、受信バッファから制御コマンドを順番に読み出し、これを解釈して、印刷制御タスク２２等に対して所定の指示（印字要求、紙送り要求、給紙／排紙要求など）を出力する処理などを実行する（Ｓ１０７）。
【００３６】
このとき、第２解析タスク２３は、前記通知に基づき、プリンタ１の利用可能な印刷機能のみを指定して上記処理を実行する。すなわち、解析結果や制御コマンドが、プリンタ１が利用可能でない印刷機能を指定している場合、これを同種の他の利用可能な印刷機能に置き換えて指定した上で、又はその指定をキャンセルした上で、印刷イメージの生成や印刷制御タスク２２等への指示出力を行うように動作する。
【００３７】
例えば、プリンタ１が３００ｄｐｉの解像度での印刷しかできないケースを考える。かかるケースにおいて、印刷データの解析結果が６００ｄｐｉの解像度での印刷を指定している場合、第２解析タスク２３は、６００ｄｐｉという指定をプリンタ１の利用可能な３００ｄｐｉという指定に置き換えて、印刷イメージを生成する。
【００３８】
また例えば、プリンタ１が第１給紙トレイ、第２給紙トレイのみ備えているケースを考える。かかるケースにおいて、制御コマンドが第３給紙トレイの使用を指定している場合、第２解析タスク２３は、第３給紙トレイという指定をプリンタ１の利用可能な第１給紙トレイ又は第２給紙トレイという指定に置き換えて、印刷制御タスク２２等へ指示を出力する。
【００３９】
また例えば、プリンタ１に２次記憶装置が何ら接続されていないケースを考える。かかるケースにおいて、制御コマンドが２次記憶装置の使用を指定している場合、第２解析タスク２３は、２次記憶装置の使用に置き換えることができる同種の他の印刷機能がないことから、２次記憶装置の使用という指定をキャンセルした上で、印刷制御タスク２２等へ指示を出力する。
【００４０】
印刷制御タスク２２は、第１解析タスク２１又は第２解析タスク２３から指示を受け取った場合、印刷エンジン１１の紙送機構等を制御して印刷開始に必要な状態を整える。そして、前記指示が印字を要求するものであった場合、所定単位分（例えば１パス分）の印刷イメージをイメージバッファから印刷エンジン１１に転送するともに、印刷エンジン１１を制御しながら印刷を実行する（Ｓ１０８）。
【００４１】
このように本実施形態では、オプションモジュール４（第２解析タスク２３）が、接続先のプリンタ１（プリンタ制御タスク２１）に対して該プリンタ１の利用可能な印刷機能を問い合わせた上で、プリンタ１の利用可能な印刷機能のみを指定して動作する構成となっているため、オプションモジュール４の動作結果にプリンタ１が利用できない印刷機能が含まれてしまう可能性がなくなり、その結果、プリンタ１がオプションモジュール４の動作結果をエラーと認識して正常に印刷できないという問題を回避することができる。
【００４２】
特に、接続先のプリンタが利用可能な印刷機能のみを指定して動作することから、多くの印刷機能を利用できるプリンタにオプションモジュール４を接続した場合はそれら豊富な印刷機能を利用して印刷処理を実行することができる一方、少ない印刷機能しか利用できないプリンタにオプションモジュール４を接続した場合でもエラー終了することなく正常に印刷処理を実行することが可能となり、このようにプリンタに応じて動作できる構成となっている点で、オプションモジュール４について高い汎用性を確保することができる。
【００４３】
（変形例）
本発明は上記実施形態に限定されることなく、種々に変形して適用することが可能である。
【００４４】
例えば、第２解析タスク２３が起動されるごとにプリンタ制御タスク２１に対して利用可能な印刷機能の問い合わせを行う必要は必ずしもなく、例えばプリンタ１の電源投入後、第２解析タスク２３の初回起動時に問い合わせを行う構成や、プリンタ１の利用可能な印刷機能が変化した場合に問い合わせを行う構成や、前回の起動からの経過時間に基づいて問い合わせを行うかどうかを判断する構成など、種々の変形例を考えることができる。
【００４５】
また例えば、第２解析タスク２３から問い合わせを行う構成に代えて、プリンタ制御タスク２０から第２解析タスク２３に対してプリンタ１の利用可能な印刷機能を能動的に通知する構成としてもよい。この場合、第２解析タスク２３は、問い合わせ処理を省略して直ちにＲＩＰ処理やコマンド処理に移行することができる。
【００４６】
また例えば、プリンタ１自体が第１解析タスク２１を備えている必要は必ずしもなく、第２解析タスク２３と同様に本発明のオプションモジュールにより第１解析タスク２１を実現する構成や、又はホスト装置が第１解析タスク２１を備える構成としてもよい。
【００４７】
また例えば、上記実施形態では、オプションモジュール４が実現する機能として解析タスクを例に説明しているが、本発明は必ずしもこのような構成に限られず、例えばオプションモジュール４が印刷制御タスク等の機能を実現する構成としてもよい。
【００４８】
また例えば、オプションモジュール４が独立したＣＰＵや専用ハードウェアを備えていてもよい。例えばオプションモジュール４のＣＰＵがオプションプログラムを実行して第２解析タスク２３を実現し、インタフェース１８を介してＣＰＵ１３と通信を行って、プリンタ制御タスク２０に対して問い合わせを行う構成を考えることもできる。逆に、オプションモジュール４を介在させることなく、通信ネットワークを介して直接、本発明のオプションプログラムをプリンタ１のＲＡＭ１５等にダウンロードする構成としてもよい。
【００４９】
最後に、本発明の文字処理技術は、例えばレーザプリンタ、インクジェットプリンタ、ラベルプリンタ等の一般的にプリンタと呼ばれる機器のほか、画像形成機能を備えた種々の情報処理装置（コピー機、ファックス、ハンディターミナルなど）に対しても適用できる。
【図面の簡単な説明】
【図１】第１実施形態におけるプリンタ１及びオプションモジュール４のハードウェア構成を示すブロック図である。
【図２】第１実施形態におけるプリンタ１及びオプションモジュール４の機能構成図を示すブロック図である。
【図３】第１実施形態における各タスクの動作を説明するための図である。
【図４】第１実施形態における各タスクの動作を説明するための図である。
【符号の説明】
１  プリンタ、２  動力機構部、３  プリンタ制御部、１０  給紙機構、１１印刷エンジン、１２  排紙機構、１３  ＣＰＵ、１４  ＲＯＭ、１５  ＲＡＭ、１６  ＬＣＤパネル及びＬＣＤコントローラ、１７  通信インタフェース、１８  オプションモジュールインタフェース、２０  プリンタ制御手段、２１  第１解析手段、２２  印刷制御手段、２３  第２解析手段
【図１】
2004291371.tif 000003
【図２】
2004291371.tif 000004
【図３】
2004291371.tif 000005
【図４】
2004291371.tif 000006