(57)【要約】【課題】印字データの受信中に発生した障害を解析して通信不具合の原因を解消すること。【解決手段】ホストコンピュータから印字データを受信するＩ／Ｆ手段、各Ｉ／Ｆ回路にデータ格納用のバッファを備え、各Ｉ／Ｆからの印刷要求を調停する手段、データの送受信が一定時間無い場合に復旧を行う手段、および受信データの履歴をメモリにセーブしておく手段、前記履歴データより通信不具合の原因を解析する手段を備えた印刷装置。【選択図】        図１
2004181808.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータと複数のＩ／Ｆ手段により印字データを受信する手段、印刷装置の各ホストＩ／Ｆ部にデータ受信用のＢｕｆｆｅｒを備える手段、複数のホストＩ／Ｆから印刷要求があったときに各要求を先着優先にて調停を行い印字処理をする手段、ホストコンピュータからのデータ送信が中断して一定時間経過しても応答が無い場合にタイムアウト処理をする手段、印刷装置側でホストコンピュータのＩ／Ｆ  Ｌｏｇｉｃを初期化する手段、データ送受信時に通信障害が生じると受信データの履歴をメモリにセーブしておく手段、および前記障害の内容を解析する手段を備えたことを特徴とする印刷装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のホストコンピュータからの印字情報を受信する複数のＩ／Ｆを備え、各Ｉ／Ｆから受信した印字情報を独立に処理して印字を行う印刷装置に関するものである。
【０００２】
【従来の技術】
従来はホストコンピュータから印字情報を受信するときにはＩ／Ｆ  Ｌｏｇｉｃが受信データ格納用にデータＢｕｆｆｅｒを備え、ホストコンピュータをデータ転送から少しでも早く開放させるようにしていた。
【０００３】
印刷装置は複数のホストコンピュータから印字データを受け取ると先着優先で印字処理を順次行っていた。１つのホストＩ／Ｆから印字データを受信中に通信エラーが発生すると、印刷制御部がデータ通信のタイムアウトと判断して受信を放棄し、ホストコンピュータＩ／Ｆ  Ｌｏｇｉｃにもソフトリセットを発行して通信状態を初期化させていた。
【０００４】
一方、印刷装置側の故障でデータ受信エラーが発生した場合はホストコンピュータがその印刷ジョブを強制的にキャンセルし、別のホストＩ／Ｆにてデータの送信を試みていた。
【０００５】
【発明が解決しようとする課題】
しかしながら上記従来例においては、印字データ受信中の通信エラーが発生した場合は、印刷装置側で制御部がソフトタイマーの起動をかけてタイムアウトによるソフトリセットを行ったり、あるいはプリントサーバー側がデータ送信を放棄してプリントジョブをキャンセルしていた。
【０００６】
このような障害が発生した場合では、途中ページまで印字処理が正常に行われている場合でも、そのＩ／Ｆの通信が正常に復帰すると再度先頭のページから印刷データの送信を行っていた。
【０００７】
またネットワーク経由で接続されているプリンタにおいてはごくまれにネットワークの障害が原因で通信エラーが発生することがある。このような場合、あらかじめ通信の障害を予知してプリントサーバー側で各プリンタが処理した印字処理の履歴を全て管理しておくのは、サーバー側のメモリ資源が無限にはないことを考えれば現実的でないのは明らかである。
【０００８】
【課題を解決するための手段】
上記目的を達成する本発明の出力装置は以下に示す構成を備える。
【０００９】
ホストコンピュータと複数のＩ／Ｆ手段により印字データを受信する手段、印刷装置の各ホストＩ／Ｆ部にデータ受信用のＢｕｆｆｅｒを備える手段、複数のホストＩ／Ｆから印刷要求があったときに各要求を先着優先にて調停を行い印字処理をする手段、ホストコンピュータからのデータ送信が中断して一定時間経過しても応答が無い場合にタイムアウト処理をする手段、印刷装置側でホストコンピュータのＩ／Ｆ  Ｌｏｇｉｃを初期化する手段、通信障害が生じたときに受信データの履歴をメモリにセーブしておく手段、および前記障害の内容を解析する手段を備えたことを特徴とする印刷装置。
【００１０】
（作用）
かかる構成において、本発明は前記のような印字データの送信あるいは受信の障害が発生した場合に、印刷制御部内の空きメモリ領域に通信エラーが発生する前の状態をセーブしておくことにより、ホストコンピュータあるいはプリントサーバーが通信障害の原因を解析する際に役立てることができる。
【００１１】
【発明の実施の形態】
本実施例の構成を説明する前に、本実施例を適用するに好適なレーザビームプリンタおよびインクジェットプリンタの構成について図１〜図３を参照しながら説明する。なお、本実施例を適用するプリンタは、レーザビームプリンタおよびインクジェットプリンタに限られるものではなく、他のプリント方式のプリンタでも良いことは言うまでもない。
【００１２】
図１は本発明を適用可能な第１の出力装置の構成を示す断面図であり、例えばレーザビームプリンタ（ＬＢＰ）の場合を示す。
【００１３】
図において、１５００はＬＢＰ本体であり、外部に接続されているホストコンピュータから供給される印字情報（文字コード等）やフォーム情報あるいはマクロ命令等を入力して記憶するとともに、それらの情報に従って対応する文字パターンやフォームパータン等を作成し、記録媒体である記録紙等に像を形成する。１５０１は操作のためのスイッチおよびＬＥＤ表示器等が配されている操作パネル、１０００はＬＢＰ本体１５００全体の制御およびホストコンピュータから供給される文字情報等を解析するプリンタ制御ユニットである。このプリンタ制御ユニット１０００は、主に文字情報を対応する文字パターンのビデオ信号に変換してレーザドライバ１５０２に出力する。レーザドライバ１５０２は半導体レーザ１５０３を駆動するための回路であり、入力されたビデオ信号に応じて半導体レーザ１５０３から発射されるレーザ光１５０４をオン・オフ切り換えする。レーザ光１５０４は回転多面鏡１５０５で左右方向に振らされて静電ドラム１５０６上を走査露光する。これにより、静電ドラム１５０６上には文字パターンの静電潜像が形成されることになる。この潜像は、静電ドラム１５０６周囲に配設された現像ユニット１５０７により現像された後、記録紙に転写される。この記録紙にはカットシートを用い、カットシート記録紙はＬＢＰ１５００に装着した用紙カセット１５０８に収納され給紙ローラ１５０９および搬送ローラ１５１０と搬送ローラ１５１１とにより、装置内に取り込まれて静電ドラム１５０６に供給される。また、ＬＢＰ本体１５００には、図示しないカードスロットを少なくとも１個以上備え、内蔵フォントに加えてオプションフォントカード、言語系の異なる制御カード（エミュレーションカード）を接続できるように構成されている。
【００１４】
図２は本発明を適用可能な第２の出力装置の構成を示す外観図であり、例えばインクジェット記録装置（ＩＪＲＡ）の場合を示す。
【００１５】
図において、駆動モータ５０１３の正逆回転に連動して駆動力伝達ギア５０１１，５００９を介して回転するリードスクリュー５００５の螺旋溝５００４に対して係合するキャリッジＨＣはピン（図示しない）を有し、矢印ａ，ｂ方向に往復移動される。このキャリッジＨＣには、インクジェットカートリッジＩＪＣが搭載されている。５００２は紙押え板であり、キャリッジ移動方向にわたって紙をプラテン５０００に対して押圧する。５００７，５００８はフォトカプラで、キャリッジのレバー５００６のこの城での存在を確認して、モータ５０１３の回転方向切り換え等を行うためのホームポジション検知手段として機能する。５０１６は記録ヘッドの全面をキャップするキャップ部材５０２２を指示する部材、５０１５はこのキャップ内を吸引する吸引手段でキャップ内開口５０２３を介して記録ヘッドの吸引回復を行う。５０１７はクリーニングブレードで、部材５０１９により前後方向に移動可能となる。５０１８は本体支持板で、上記５０１７，５０１９を支持する。５０１２は、吸引回復の吸引を開始するためのレバーで、キャリッジと係合するカム５０２０の移動に伴って移動し、駆動モータからの駆動力がクラッチ切り換え等の公知の伝達手段で移動制御される。
【００１６】
これらのキャッピング，クリーニング，吸引回復は、キャリッジがホームポジション側領域にきたときにリードスクリュー５００５の作用によってそれらの対応位置での所望の処理が行えるように構成されているが、周知のタイミングで所望動作を行うように構成されていればよい。
【００１７】
図３は、図２に示した第２の出力装置の制御構成を説明するブロック図である。
【００１８】
図において、１７００は記録信号を入力するインタフェース、１７０１はＭＰＵ、１７０２は前記ＭＰＵ１７０１が実行する制御プログラムやホスト印刷情報等を格納するＲＯＭ、１７０３はＤＲＡＭで、各種データ（上記記録信号やヘッドに供給される記録データ等）を保存しておく。１７０４は記録ヘッド１７０８に対する出力データの供給制御を行うゲートアレイで、インタフェース１７００、ＭＰＵ１７０１、ＤＲＡＭ１７０３間のデータの転送制御も行う。１７１０は前記記録ヘッド１７０８を搬送するためのキャリアモータ、１７０９は記録用紙搬送のための搬送モータ、１７０５は前記記録ヘッドを駆動するヘッドドライバ、１７０６は前記搬送モータ１７０９を駆動するモータドライバ、１７０７は前記キャリアモータ１７１０を駆動するモータドライバである。
【００１９】
このように構成された上記記録装置において、インタフェース１７００を介して後述するホストコンピュータ１００より入力情報が入力されると、ゲートアレイ１７０４とＭＰＵ１７０１との間で入力情報がプリント用の出力情報に変換される。そして、モータドライバ１７０６，１７０７が駆動されるとともにヘッドドライバ１７０５に送られた出力情報に従って記録ヘッドが駆動され印字が実行される。
【００２０】
なお、ＭＰＵ１７０１はインタフェース１７００を介して後述するホストコンピュータ１００との通信処理が可能となっており、ＤＲＡＭ１７０３に関するメモリ情報および資源データ等やＲＯＭ１７０２内のホスト印刷情報を後述するホストコンピュータ１００に通知可能に構成され、データ受信中に通信エラーが発生した場合でも、プリンタ制御部が自動的にタイムアウトであると判断して通信障害からの回復処理を実行可能なように構成されている。
【００２１】
図４は本発明の実施例を示すプリンタ制御システムの構成を説明するブロック図である。ここではレーザビームプリンタ（図１）を例にして説明する。なお、本発明の機能が実行されるのであれば単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ等のネットワークを介して処理が行われるシステムであっても本発明を適用できることは言うまでもない。
【００２２】
図において、３０００はホストコンピュータで、ＲＯＭ３のプログラム用ＲＯＭに記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ１を備え、システムデバイス４に接続される各デバイスをＣＰＵ１が総括的に制御する。
【００２３】
また、このＲＯＭ３のプログラム用ＲＯＭには、図６のフローチャートで示されるようなＣＰＵ１の制御プログラム等を記憶し、ＲＯＭ３のフォント用ＲＯＭには上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ３のデータ用ＲＯＭは上記文書処理等を行う際に使用する各種データ（例えば、フォームオーバーレイ用の書式データや各種書体データを圧縮したフォントデータなどがある。）を記憶する。２はＲＡＭで、ＣＰＵ１の主メモリ、ワークエリア等として機能する。５はキーボードコントローラ（ＫＢＣ）で、キーボード９や不図示のポインティングデバイスからのキー入力を制御する。６はＣＲＴコントローラ（ＣＲＴＣ）で、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。７はディスクコントローラ（ＤＫＣ）で、ブートプログラム、種々のアプリケーション、フォントデータ、ユーザファイル、編集ファイル等を記憶するハードディスク（ＨＤ）、フロッピー（登録商標）ディスク（ＦＤ）等の外部メモリ１１とのアクセスを制御する。８はプリンタコントローラ（ＰＲＴＣ）で、所定の双方向性インタフェース（インタフェース）２１を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。なお、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（スラタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。
【００２４】
また、ＣＰＵ１は、ＣＲＴ１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。
【００２５】
プリンタ１５００において、１２はプリンタＣＰＵで、ＲＯＭ１３のプログラム用ＲＯＭに記憶された制御プログラム等或いは外部メモリ１４に記憶された制御プログラム等に基づいてシステムバス１５に接続される各種のデバイスとのアクセスを総括的に制御し、印刷部インタフェース１６を介して接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、このＲＯＭ１３のプログラムＲＯＭには、図６のフローチャートで示されるようなＣＰＵ１２の制御プログラム等を記憶する。ＲＯＭ１３のフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデータ等を記憶し、ＲＯＭ１３のデータ用ＲＯＭにはハードディスク等の外部メモリ１４が無いプリンタの場合には、ホストコンピュータ上で利用される情報等を記憶している。ＣＰＵ１２は入力部１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ３０００に通知可能に構成されている。１９はＣＰＵ１２の主メモリ、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ１４は、ディスクコントローラ（ＤＫＣ）２０によりアクセスを制御される。外部メモリ１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、１８は前述した操作パネルで操作のためのスイッチおよびＬＥＤ表示器等が配されている。
【００２６】
また、前述した外部メモリは１個に限らず、少なくとも１個以上備え、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていても良い。さらに、図示しないＮＶＲＡＭを有し、操作パネル１５０１からのプリンタモード設定情報を記憶するようにしても良い。
【００２７】
このように構成されたプリンタ制御システムにおいて、本発明は印字データの送信あるいは受信の障害が発生した場合に、印刷制御部内の空きメモリ領域に通信エラーが発生する前の状態をセーブする手段を備えることを特徴とする。前記データを元にしてホストコンピュータあるいはプリントサーバーが通信障害の原因の解析を行うことができる。
【００２８】
（第１実施例）
図５は本発明を実現する印刷装置の構成を示す図である。
【００２９】
同図において５０１〜５０３は図示していないホストコンピュータとのデータのやり取りを行うＨｏｓｔ  Ｉ／Ｆ回路であり、５０４は前記の各Ｉ／Ｆからの印字要求を調停する回路、５０５は印刷制御部の各種設定情報を格納する不揮発性メモリ、５０６は印字処理や描画データ作成に使用されるＲＡＭ、５０７はＨａｒｄ  Ｄｉｓｋ装置、５０８はＣＰＵ、５０９は本制御部のプログラムやフォントデータを格納しているＲＯＭ、５１０は操作パネルＩ／Ｆ回路であり、５１１は操作パネルである。５１２はプリンタエンジンへデータ転送用のＤｏｕｂｌｅ  Ｂｕｆｆｅｒ、５１３はｗｏｒｄ単位で読み出した描画データをシリアルデータへ変換する回路、５１４はプリンタエンジンとのＩ／Ｆ回路、５１５はプリンタエンジン本体である。
【００３０】
図６に本発明の処理の流れを示すフローチャートを示す。
【００３１】
以下に順を追って各処理について説明をする。プリンタの電源が投入されて印字可能になると（ステップ６０１、６０２）、プリンタはホストからの印字要求待ち状態になる（スデップ６０３）。ホストからの印字要求を図５の３つのＩ／Ｆの内１つが受信すると、ステップ６０４で印字データを前記Ｉ／Ｆ回路内の受信Ｂｕｆｆｅｒに格納する。
【００３２】
図７に各Ｉ／Ｆ回路を介して印字要求が来た時のシーケンスを示す。
【００３３】
調停の論理は先着優先であり、ＣＨ１処理中の印刷ジョブ中に別のＩ／Ｆ（ＣＨ３）から印刷要求（ｎＰＲＥＱ２）が来た場合にはその要求は待ち行列に登録され（Ｔ１）、ＣＨ１の印字処理が終了した時点（Ｔ２）で待ち状態を解除して印字処理を行う。
【００３４】
さて図６のステップ６０５で転送データ単位毎（例えば３２ｂｉｔのｗｏｒｄ）にＲｅｑｕｅｓｔ／Ａｃｋのハンドシェイクエラーが無いかを調べる。エラーが発生しない場合は、ステップ６０６にて印字データの解析を行い、ステップ６０７で図のＲＡＭ（５０６）へ描画データの展開を行う。そして、バンド単位で印字処理をする印刷装置の場合には、１バンド分のデータが用意できるとステップ６０８でＰｒｉｎｔｅｒ  Ｅｎｇｉｎｅへデータを送出する。この処理を最終バンドまで繰り返して行う。一方でステップ６０５でハンドシェイクエラーが発生した時には、ステップ６１０で該当するデータの再送要求（Ｒｅｔｒｙ）をホストコンピュータへ出す。一定時間経過後ホストコンピュータからの応答が有れば、再度ステップ６０６以下の印字処理を実行する。応答が無ければ、ステップ６１１でＴｉｍｅ  Ｏｕｔと判断し、ステップ６１２で図５のホストＩ／Ｆ回路内の受信Ｂｕｆｆｅｒに現在までに格納された印字データを別のホストＩ／Ｆ回路内の受信Ｂｕｆｆｅｒに退避させる。そしてステップ６１３で格納された印字データを元にして、どの印字データの後で通信障害が発生したのかを解析する。
【００３５】
通信の障害の原因としては、伝送線路の波形歪みによるデータの不整合と上記例にあるデータハンドシェクエラーのような通信プロトコルのエラーの２つに大別できる。本発明は、後期の通信プロトコルのエラーの解析を目的とするものである。
【００３６】
障害発生後の解析方法として例えば以下のような方法がある。通常ホストコンピュータからの印字データは図８に示すように転送要求信号（Ｄａｔａ  Ｔｒａｎｓｆｅｒ  Ｒｅｑｕｅｓｔ）と共にＤａｔａ（例えば３２ｂｉｔ）が送信され、印刷装置側はそのＤａｔａの誤り制御用のパリティ整合を確認し、そのデータを受信Ｂｕｆｆｅｒに格納した後にＡｃｋ（応答）信号を送出し、これを受けてホストコンピュータは次のデータを送信する。障害発生した時には印刷制御部がこのデータのやり取りをトレースすることにより、印刷装置からのＡｃｋ未応答が原因なのかホストコンピュータからの次のデータの転送要求の未送出が原因なのか、あるいはＩ／Ｆ回路の受信Ｂｕｆｆｅｒがオーバーフローを起こして例外処理の割り込みとホストコンピュータからのコマンド送出が重なって印刷制御部が不正な処理を行ったのかを判断することが出来る。
【００３７】
（第２実施例）
前記実施例においては通信障害が発生した時に該当Ｉ／Ｆの受信Ｂｕｆｆｅｒ内のデータを、図５のＲＡＭ（５０６）の空き領域に退避させることも可能である。さらに現在のネットワークの通信速度は高速化の一途をたどっており（例：１００Ｍｂｐｓなど）、一度に受信するデータのサイズも大きくなってきている。このような状況ではより多くのメモリをもつＨａｒｄ  Ｄｉｓｋ装置（図５の５０７）に通信データのｌｏｇをとっておくことも有効である。
【００３８】
【発明の効果】
以上述べたように本発明によれば、印字データの送信あるいは受信の障害が発生した場合に、印刷制御部内の空きメモリ領域に通信エラーが発生する前の状態をセーブしておくことにより、ホストコンピュータあるいはプリントサーバーが通信障害の原因を解析する際に役立てることができるという効果がある。
【図面の簡単な説明】
【図１】本発明を適用可能な第１の出力装置の構成を示す断面図である。
【図２】本発明を適用可能な第２の出力装置の構成を示す外観図である。
【図３】図２に示した第２の出力装置の制御構成を説明するブロック図である。
【図４】本発明の一実施例を示すプリンタ制御システムの構成を説明するブロック図（その１）である。
【図５】本発明の一実施例を示すプリンタ制御システムの構成を説明するブロック図（その２）である。
【図６】本発明の処理の流れを示すフローチャートである。
【図７】本発明のデータ要求受付を示すタイミングチャートである。
【図８】本発明にある受信データのハンドシェークの例を示すタイミングチャートである。
【図９】本発明の一実施例を示すプリンタ制御システムの構成を説明するブロック図（その３）である。
【図１０】本発明にある受信障害が発生してタイムアウトしたときのタイミングチャートである。
【符号の説明】
１  ＣＰＵ
２  ＲＡＭ
３  ＲＯＭ
４  システムバス
１２  ＣＰＵ
１３  ＲＯＭ
１９  ＲＡＭ
３０００  ホストコンピュータ
１５００  プリンタ
【図１】
2004181808.tif 000003
【図２】
2004181808.tif 000004
【図３】
2004181808.tif 000005
【図４】
2004181808.tif 000006
【図５】
2004181808.tif 000007
【図６】
2004181808.tif 000008
【図７】
2004181808.tif 000009
【図８】
2004181808.tif 000010
【図９】
2004181808.tif 000011
【図１０】
2004181808.tif 000012