(57)【特許請求の範囲】
【請求項１】
ネットワークを介してホストコンピュータと接続されるプリンタ装置であって、
データ受信の中断が始まってからの経過時間を監視し、タイムアウト時間に達しているか判別する判別手段と、
前記判別手段によりタイムアウト時間に達していると判別された場合、ホストコンピュータにデータを転送し、プリンタ装置に戻るまでの時間を測定することによりネットワークの負荷を測定する測定手段と、
前記測定手段によるネットワークの負荷の測定結果に基づき、ネットワークの負荷が大きいと判別された場合、タイムアウト時間を延長し、ネットワークの負荷が大きくない判別された場合、データの受信処理を中断する処理手段とを有することを特徴とするプリンタ装置。
【請求項２】
ネットワークを介してホストコンピュータと接続されるプリンタ装置の制御方法であって、
データ受信の中断が始まってからの経過時間を監視し、タイムアウト時間に達しているか判別する判別ステップと、
前記判別ステップによりタイムアウト時間に達していると判別された場合、ホストコンピュータにデータを転送し、プリンタ装置に戻るまでの時間を測定することによりネットワークの負荷を測定する測定ステップと、
前記測定ステップによるネットワークの負荷の測定結果に基づき、ネットワークの負荷が大きいと判別された場合、タイムアウト時間を延長し、ネットワークの負荷が大きくない判別された場合、データの受信処理を中断する処理ステップとを有することを特徴とするプリンタ装置の制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はプリンタ装置、該装置の制御方法、及び、プリンタシステムに関し、特に、例えば、ネットワークを介するプリンタ装置、該装置の制御方法、及び、プリンタシステムに関する。
【０００２】
【従来の技術】
従来よりプリンタなどの出力装置はホストコンピュータ（以下、ホストという）などと、例えば、イーサネットなどのＬＡＮによって接続され情報処理システムを構成している。このＬＡＮには、１つのホストのみならず、複数のホストや複数のプリンタ、複数のスキャナ、さらには、外部装置とのデータ通信を行なうためのファクシミリ装置や通信制御装置などが接続され、データ伝送路を共有した大規模なＬＡＮシステムを構成していることがある。
【０００３】
このようなＬＡＮシステムでは、システムを構成する情報処理機器が効率的にデータ伝送路を使用するために、常に１つ１つの構成機器がデータ伝送路のビジー状態を監視している。そして、ある構成機器が他の構成機器と通信を試みた場合に、或いは、通信中に、データ伝送路の負荷が高く、所定時間以上、通信ができないときには一度その通信を打ち切るように制御している（これをタイムアウト処理という）。
【０００４】
さらにこのようなＬＡＮシステムには同じ種類（同じ性能、同じ形式、同じ動作環境設定が同じ手順で可能）の装置を複数台接続することも可能であるが、その接続に当たっては、１台１台にそれぞれＬＡＮシステムで動作するための環境設定を行なう必要があった。
【０００５】
【発明が解決しようとする課題】
しかしながら上記従来例では、複数のホストや周辺機器が接続されるので、一度に大量のデータがデータ伝送路に流入し、データ伝送路の負荷が高くなって一時的に通信が中断した場合に、その通信の中断が、その通信を行なっている通信相手の装置の故障やその装置がセションを終了させたものによるものであるのか、或いは、単にデータ伝送路の負荷が増したことによる通信の遅れによるものであるのか判別できず、通信の中断時点より所定の時間が経過したときに無条件にタイムアウト処理を行なってしまうという問題があった。
【０００６】
例えば、プリンタがホストからのデータ受信中にデータの送信が途切れた場合に、それがデータ送信元のホストがデータ送信を中断したものか、或いは、データ伝送路の負荷が増したため、データの送信に遅れが発生しているのか判断できず、意図せずにタイムアウト処理してしまうことがある。
【０００７】
また、同じ種類の複数のプリンタをＬＡＮシステムに接続する場合、ほとんど同じような環境設定を繰り返して何度も行なわねばならないので、その設定は非常にやっかいなものであった。一方、特定の情報（例えば、装置識別子）は各プリンタに対して、固有の環境設定を行なわねばならず、装置利用者にとってはその設定に当たり非常な注意深さが求められた。従って、このような環境設定の作業はやっかいで注意深さが求められるにもかかわらず、設定を誤りやすいという問題もあった。
【０００８】
本発明は上記従来例に鑑みてなされたもので、容易な環境設定が可能で、かつ、動作環境を踏まえて適切な処理を行なうことができるプリンタ装置、該装置の制御方法、及び、プリンタシステムを提供することを目的としている。
【０００９】
【課題を解決するための手段】
上記目的を達成するために本発明のプリンタ装置は、
ネットワークを介してホストコンピュータと接続されるプリンタ装置であって、
データ受信の中断が始まってからの経過時間を監視し、タイムアウト時間に達しているか判別する判別手段と、
前記判別手段によりタイムアウト時間に達していると判別された場合、ホストコンピュータにデータを転送し、プリンタ装置に戻るまでの時間を測定することによりネットワークの負荷を測定する測定手段と、
前記測定手段によるネットワークの負荷の測定結果に基づき、ネットワークの負荷が大きいと判別された場合、タイムアウト時間を延長し、ネットワークの負荷が大きくない判別された場合、データの受信処理を中断する処理手段とを有することを特徴とする。
【００１０】
また、本発明のプリンタ装置の制御方法は、
ネットワークを介してホストコンピュータと接続されるプリンタ装置の制御方法であって、
データ受信の中断が始まってからの経過時間を監視し、タイムアウト時間に達しているか判別する判別ステップと、
前記判別ステップによりタイムアウト時間に達していると判別された場合、ホストコンピュータにデータを転送し、プリンタ装置に戻るまでの時間を測定することによりネットワークの負荷を測定する測定ステップと、
前記測定ステップによるネットワークの負荷の測定結果に基づき、ネットワークの負荷が大きいと判別された場合、タイムアウト時間を延長し、ネットワークの負荷が大きくない判別された場合、データの受信処理を中断する処理ステップとを有することを特徴とする。
【００１４】
【発明の実施の形態】
以下添付図面を参照して本発明の好適な実施の形態を詳細に説明する。
【００１５】
図１は本発明の代表的な実施の形態であるプリンタ装置の構成を示すブロック図である。図１に示すこの装置のプリンタエンジン１００は、電子写真方式に従って画像形成を行なうもの（レーザビームプリンタ）でも良いし、インクジェット方式に従って画像形成でも行なうもの（インクジェットプリンタ）でも良いし、或いは、その他の方式に従って画像形成を行なうものでも良い。
【００１６】
また、このプリンタ装置は、複数台、ＬＡＮに接続され、そのＬＡＮを介してホストコンピュータ（以下、ホストという）から画像データを受信して画像出力を行なうことができる。
【００１７】
図１において、１はネットワークに接続されないホストとの間での通信を行う為のホストインタフェース、２はホストとの通信データが転送される伝送路、３はホストからホストインタフェース１を介して受信した少なくとも記録用紙１頁分のコードデータ形式の文字データ、図形形成情報、及び、画像データ、その他制御情報を格納する容量をもつページメモリ、４は文字コードデータに対応してその文字パターンデータを格納しているフォントメモリ、５は装置全体を制御するＣＰＵ、６はページメモリ３に格納されている文字コードデータや図形形成情報、或いは、画像データを基に展開された少なくとも記録用紙１ページ分のドットパターンを格納するドットパターンメモリである。
【００１８】
また、７は装置全体の制御を行うための制御プログラム（後述するフローチャートに係るプログラムも含む）を格納するＲＯＭ、８はＣＰＵ５がＲＯＭ７に格納されている制御プログラムを読みだして装置全体の制御処理を実行する際に、その処理を実行するうえで利用する一時的な各種のデータを入出力する作業領域として用いられるＲＡＭ、９はドットパターンメモリ６からドットパターンデータを入力して一時的に格納しＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）方式に従って出力するＦＩＦＯメモリ、
１０はＦＩＦＯメモリ９から画像データ（ドットパターンデータ）を入力しプリンタエンジン１００に出力する画像形成部インタフェースである。そして、プリンタエンジン１００ではその出力された画像データに基づいて、プリント出力を行う。
【００１９】
さらに、１１は装置利用者によるホストインタフェース１、拡張Ｉ／Ｆ１７のオンライン／オフライン状態の設定等の各種動作条件を設定のための入力を行うキーボード、ＬＣＤ、ＬＥＤ等を備えた操作パネル、１２は操作パネル１１から入力された各種指示に基づいて発生した信号をＣＰＵ５に出力するための操作パネルインタフェース、１３は操作パネル１１、或いは、ホストインタフェース１、拡張Ｉ／Ｆ１７を介してホストからも設定可能な装置の各種動作環境設定値を保存するメモリ（環境設定用メモリ）、１６はＣＰＵ５にクロック信号（ＣＬＫ）を供給するクロック発生回路１６である。さらにまた、１４と１５は夫々、上記の装置構成要素を互いに接続するデータバス、アドレスバスである。１７はネットワーク対応ボードが装着される拡張Ｉ／Ｆ１７であり、１８はネットワークとの通信データが転送される伝送路である。
【００２０】
以上の構成から明らかなように、この装置の各種動作条件は操作パネル１１のみならず、ホストインタフェース１、拡張Ｉ／Ｆ１７を介してホストからも設定できる。
【００２１】
さて、以上のような構成の装置において、ＣＰＵ５はホストインタフェース１、拡張Ｉ／Ｆ１７を介して受信したデータをページメモリ３に格納するよう制御するとともに、ＲＯＭ７に格納されているインタプリタ等の処理プログラムを実行し、ページメモリ３に格納されている受信文字コードを解析してフォントメモリ４をアクセスし、対応するフォントパターンを読みだしたり、或いは、受信した図形形成情報を解析してドットパターンを発生させ、これらをドットパターンメモリ６にパターン展開する。
【００２２】
次に、以上の構成の装置が複数台、ＬＡＮを介してホストに接続されている環境における、装置の環境設定について説明する。
【００２３】
図２は、図１で示した構成の２台（一方を装置Ａ、他方を装置Ｂとする）のプリンタ装置がＬＡＮを介してホストに接続されているネットワーク環境を示す図である。
【００２４】
図２において、３００はホスト、１１Ａは装置Ａの操作パネル、１１Ｂは装置Ｂの操作パネル、３０１Ａは操作パネル１１ＡのＬＣＤ、３０１Ｂは操作パネル１１ＢのＬＣＤ、３０２Ａと３０２Ｂは夫々装置Ａと装置Ｂのプッシュ式のスイッチ“Ａ”、３０３Ａと３０３Ｂは夫々装置Ａと装置Ｂのプッシュ式のスイッチ“Ｂ”、３０４Ａと３０４Ｂは夫々装置Ａと装置Ｂのプッシュ式のスイッチ“Ｃ”である。スイッチ“Ａ”、スイッチ“Ｂ”、スイッチ“Ｃ”は、装置Ａと装置Ｂにおいて夫々、同じ機能を果たす。
【００２５】
ここで、スイッチ３０２Ａが押下されたときの動作を説明する。
【００２６】
スイッチ３０２Ａが押下されると、その押下に従って所定の情報が装置Ａから伝送路２を経てホスト３００に送られる。一方、ホスト３００はそのホストが常駐するプログラムを実行して、装置Ａから受信した情報を伝送路２を介して装置Ｂにコマンドデータとして送信する。そして、装置Ｂはそのコマンドを解析し、装置Ｂ上に設けられたスイッチ３０２Ｂを押下したのと同じ状態に、装置Ｂの動作条件を設定する。
【００２７】
この装置は、既に説明したように、所定の通信プロトコルに従って通信を行なうＬＡＮを介して、ホストと通信を行なってデータを受信するが、その通信プロトコルに定められた通信終了手順を経ることなく、或いは、ホストから所定のプリント処理終了命令が受信されることなく、ホストからのデータ受信が途切れてしまった場合には、次のような処理を行なう。
【００２８】
即ち、環境設定用メモリ１３や、ＲＡＭ８に一時的に設定された各種動作条件の値に基づいて、一定の時間、ホストからのデータ送信を待った後、データの続きの受信のない場合、強制的にデータ受信待ち状態を終了し、それまでに受信されたデータに基づいた強制出力処理を実行するか、或いは、受信済みのデータを廃棄する等の処理を実行して、次のデータの入力待ち状態に移行する（以下、この処理をタイムアウト処理という）。
【００２９】
次に上記構成の装置を用いて、ＬＡＮを介してホストからデータを受信しながら実行するプリント出力処理について図３に示すフローチャートを参照して説明する。ここで、図３に示すフローチャートに示す処理を実行する処理プログラムは、図１に示す装置のＲＯＭ７に格納されており、ＣＰＵ５がそのプログラムを実行する。
【００３０】
まず、ステップＳ２０１では、ホストインタフェース１を介してホストよりデータを受信しているかどうかを調べる。ここで、データ受信があると判断されると処理はステップＳ２０３に進み、一方、データ受信がないと判断された場合には処理はステップＳ２０２に進み、伝送路２の負荷を調べ、その後、再びステップＳ２０１に戻る。
【００３１】
ステップＳ２０２における負荷測定は、本実施の形態では次のようにして行なう。即ち、ネットワーク上の指定されたアドレスの特定のホスト（不図示、以下ホストＸとする）に、当該プリンタから、図１の伝送路２を通して、指定されたサイズ（例：１０バイト）のパケットを複数回（例：１０回）送信し、ホストＸはその受信データを伝送路２を通して、発信元のプリンタ装置に送り返すようにあらかじめ取り決めておく。そして、プリンタ装置からホストＸに対して複数回データを送信後、その全データが発信元のプリンタ装置に戻って来るまでに要する時間（ＴＲ）を測定し、ネットワークの負荷の測定を行うこととする。（既存のＵｎｉｘ  ＯＳにおける“ｐｉｎｇ”コマンドで、この測定手段は実施されている）この測定した時間（ＴＲ）は図１のＲＡＭ８に記憶する。
【００３２】
この測定時間（ＴＲ）が伝送路２の負荷状態を知る指標となる。時間が経過し、ステップＳ２０２における２回目以降の負荷測定処理を実行したときには、その得られる測定時間で、以前の負荷測定において得られた測定時間を更新し、ＲＡＭ８には常に最新の伝送路２の負荷状態を知らせる指標が記憶されているようにする。
【００３３】
次に、ステップＳ２０３ではデータ受信が続行しているかどうかを調べる。ここで、データ受信の続行が判別されると処理はステップＳ２０４に進み、データ受信が終了したかどうかを確認し、未だデータ受信中であれば処理はステップＳ２０３に戻り、データ受信終了の場合は処理はステップＳ２０８に進み、受信データの解析、ビットパターン展開、プリンタエンジン１００へのビットパターン出力など一連の出力処理を行う。なお、ステップＳ２０４におけるデータ受信終了の確認は、ホストからのデータ送信終了通知の受信や受信データの最後に付加されているＥＯＦ（Ｅｎｄ  Ｏｆ  Ｆｉｌｅ）の検出等によって行なわれる。
【００３４】
一方、ステップＳ２０３において、データ受信の中断が判別されると処理はステップＳ２０５に進み、データ受信の中断が始まってからの経過時間（Ｔ）を監視し、その経過時間（Ｔ）が所定のタイムアウト時間（ＴＯ）に達しているかどうかをチェックする。ここで、Ｔ＜ＴＯであれば、処理はステップＳ２０３に戻る。
【００３５】
これに対して、Ｔ≧ＴＯであれば、処理はステップＳ２０６に進み、伝送路２の負荷の程度を判断する。この判断は、本実施の形態では次のようにして行なう。即ち、通常のＬＡＮの伝送路負荷に関し、過去における負荷測定から経験的に知られる測定時間（ＴＲ）の平均時間（ＭＴＲ）を予め、ＲＯＭ７、或いは、環境設定用メモリ１３に設定しておき、ステップ２０２で得られた測定時間（ＴＲ）と平均時間（ＭＴＲ）とを比較し、ＴＲ＞ＭＴＲであれば伝送路２の負荷は大と判断し、一方、ＴＲ≦ＭＴＲならその負荷は小と判断する。
【００３６】
さて、ステップＳ２０６にて、ＴＲ＞ＭＴＲであれば処理はステップＳ２０７に進み、タイムアウト時間を所定時間（ΔＴ）延長して（ＴＯ←ＴＯ＋ΔＴ）、さらに処理はステップＳ２０３の直前に戻る。これに対して、ＴＲ≦ＭＴＲなら処理はステップＳ２０８に進み、出力処理を行って処理を終了する。
【００３７】
従って本実施の形態に従えば、伝送路の負荷を測定しておき、たとえ、データ受信が中断しタイムアウトとなる時刻に達しても、その負荷が高い場合にはタイムアウト時間を延長し、引き続きデータ受信を待つように制御することができる。
【００３８】
なお、上述した本発明の実施形態では伝送路の負荷の測定を行うのを、プリンタの待ち状態（非データ受信状態）でおこない、その時間をそのまま用いて負荷の大小を判別したが、本発明はこれによって限定されるものではない。これについて図４、図５に示すフローチャートを参照して説明する。
【００３９】
図４はステップ４０９において、タイムアウト時間になったあとに再度ネットワークの負荷を測定している以外は図３と同じ構成である。ステップ４０９で負荷測定をすることにより、データのタイムアウト発生時点での最新のデータ伝送路の状態が分かる。
【００４０】
また、ステップ２０２、ステップ４０９におけるネットワークの負荷の測定時の動作として、図５に示すフローチャートのように、ステップ５０１でプリンタ装置からホストＸに対して複数回データを送信後、その全データが発信元のプリンタ装置に戻ってくるまでに要する時間（ＴＲ）を測定した後に、ステップ５０２でプリンタが接続しているネットワークの種類に応じた値（ＴＲＮ）をＴＲに加算する。高速なネットワークならＴＲＮは小さく（例えば０秒）にして低速なネットワークなら大きく（例えば３０秒）する。またステップ５０３でデータの種類に応じた値（ＴＲＤ）を加算する。転送すべきデータサイズの少ないテキストデータならＴＲＤは小さく（例えば０秒）データサイズの大きいイメージデータなら、ＴＲＤは大きく（例えば３０秒）させる。こうすることによって、よりネットワークの状態とデータに応じたＴＲの値が求められ、より適切なネットワーク負荷の大小の判断が可能になる。
【００４１】
なお本実施の形態では、伝送路の負荷の判断を、測定時間（ＴＲ）と所定の平均時間（ＭＴＲ）との比較結果に基づいて行なったが本発明はこれによって限定されるものではない。例えば、ステップＳ２０２での負荷測定から得られる測定時間（ＴＲ）の値を２つ以上のレベルに分け、それぞれのレベルに応じた複数のタイムアウト時間（例えば、１０秒、６０秒、１２０秒、……）を用いて伝送路の負荷の大小の判断を行なうようにしても良い。
【００４２】
また本実施の形態では、プッシュ式のスイッチ３０２Ａを押下する例で説明したが、スイッチ操作は押下するだけに限られるものではなく、操作パネルに形態に応じて、タッチ式、或いは、回転式のスイッチを設けても良いし、スイッチ３０２Ａの１つのみならず、複数のスイッチを同時に操作して、その操作情報をホスト３００に送信しても良い。
【００４３】
さらに、ＬＡＮに３台以上の同型式のプリンタ装置が接続されていて、それぞれに対し、ホストからのコマンドにより、上記実施の形態で説明した装置Ｂと全く同様な装置動作条件の設定ができるようにしても良いことは言うまでもない。
【００４４】
さらにまた、ホストからのデータ受信が中断し、その原因が伝送路の過大な通信負荷であると判断したときに、本実施の形態のようにタイムアウト時間を延長するのではなく、続くデータが受信されるまで装置全体の処理を一時的に停止し、ホストからの受信データ待ちの処理を行なう以外の不必要な装置各部への電源供給を停止して（スリープモード）、消費電力の節減を図るようにしても良い。
【００４５】
さらにまた、ホストからのデータ受信が中断したときに、プリンタ装置がデータ送信元であるホストの種類を識別しその識別されたホストの処理能力に基づいて、或いは、プリンタ装置のホストインタフェースの通信処理能力（データ最大転送速度）に基づいて、タイムアウト時間を変更（延長）するように制御しても良い。
【００４６】
さらに、ネットワークの負荷測定を行なわずともタイムアウト時間を設定する発明の実施の形態を図６を用いて説明する。図６において図３のＳ２０６の判断をＳ６０６に置き換え、ただ単純にプリンタ装置上にネットワーク対応ボードが装着されているか否か判別し、装着されている場合、タイムアウト時間を延長し（Ｓ２０７）、装着されていない場合、通常のタイムアウト時間で出力処理（Ｓ２０３）を行う。またＳ６０６の判断をプリンタ装置上のネットワーク用のインターフェースのポート（例：Ｅｔｈｅｒｎｅｔ）が有効（データ受信可能）になっており、データを受信したポートがネットワークインターフェースのものであるか否かという判断に置き換え、ネットワークからデータを受信した場合、そのプリンタがネットワークに接続されていると判断し、タイムアウト時間を変更（延長）し（Ｓ２０７）、ネットワークを介さないホストからデータを受信した場合、通常のタイムアウト時間で出力処理（Ｓ２０３）を行う、というように制御しても良い。
【００４７】
尚、本発明は、複数の機器から構成されるシステムに適用しても良いし、１つの機器から成る装置に適用しても良い。また、本発明はシステム或は装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。この場合、本発明に係るプログラムを格納した記憶媒体が本発明を構成することになる。そして、該記憶媒体からそのプログラムをシステム或は装置に読み出すことによって、そのシステム或は装置が、予め定められた仕方で動作する。
【００４８】
【発明の効果】
以上説明したように本発明によれば、ネットワークの使用負荷または、ネットワークに接続されているか否かに従って、データの待ち時間が設定されるので、予期しえない負荷の増大によってその受信が遅れたときにも適切な制御が行なわれるという効果がある。これによって、例えば、待ち合わせ時間が所定の時間を越えたときに、自動的にその受信処理が強制的に終了させられてしまうという不都合が防止される。
【００４９】
また他の発明によれば、複数の同じ構成のプリンタ装置を接続したシステムにおいて、１つの装置に動作条件を設定すれば、ネットワークとホストを介して他の装置の同じ動作条件を設定することができるという効果がある。これによってシステムの環境設定が容易にかつ確実に行なうことができる。
【図面の簡単な説明】
【図１】本発明の代表的な実施の形態であるプリンタ装置の構成を示すブロック図である。
【図２】図１で示した構成の２台プリンタ装置がＬＡＮを介してホストに接続されているネットワーク環境を示す図である。
【図３】ＬＡＮを介してホストからデータを受信しながら実行するプリント出力処理を示すフローチャートである。
【図４】第２のプリント出力処理を示すフローチャートである。
【図５】ネットワークの負荷を測定する処理を示すフローチャートである。
【図６】第３のプリント出力処理を示すフローチャートである。
【符号の説明】
１  ホストインタフェース
２  ＬＡＮデータ伝送路
３  ページメモリ
４  フォントメモリ
５  ＣＰＵ
６  ドットパターンメモリ
７  ＲＯＭ
８  ＲＡＭ
９  ＦＩＦＯメモリ
１０  画像形成部インタフェース
１１、１１Ａ、１１Ｂ  操作パネル
１２  操作パネルインタフェース
１３  環境設定用メモリ
１４  データバス
１５  アドレスバス
１６  クロック発生回路
１７  拡張Ｉ／Ｆ部分
１８  ネットワークへの信号線
１００  プリンタエンジン
３００  ホストコンピュータ
３０２Ａ、３０２Ｂ  スイッチ“Ａ”
３０３Ａ、３０３Ｂ  スイッチ“Ｂ”
３０４Ａ、３０４Ｂ  スイッチ“Ｃ”
【図１】
0003768599.tif 000002
【図２】
0003768599.tif 000003
【図３】
0003768599.tif 000004
【図４】
0003768599.tif 000005
【図５】
0003768599.tif 000006
【図６】
0003768599.tif 000007