(57)【要約】【課題】プリンタへ印刷データを送信して障害発生時の原因解析を容易かつ正確に行えるようにする。【解決手段】ホストコンピュータからＬＡＮ３１を介してパケットデータを受信すると、通信制御部２０１は、印刷データを抽出し、受信バッファ２０３に書き込み、印刷制御部２０２に印刷データを受信した旨を通知する。印刷制御部２０２は、データ処理部２０４に印刷データ受信を通知する。データ処理部２０４は、通知を受け取ると受信バッファ２０３から印刷データをコマンド単位で読み込んでデータ解釈部２０５で解釈し、ＨＤＤ２３に保存する。印刷データの解釈結果により送信元に受信データの応答を返す場合は、応答内容を送信バッファ２０７に書き込み、ＨＤＤ２３に保存する。印刷制御部２０２は、送信データの書き込み通知を受信すると、通信制御部２０１へ通知し、通信制御部２０１が送信バッファ２０７から送信データを読み込み、送信元に送信する。【選択図】        図２
2008165605.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して情報処理装置と接続され、該情報処理装置から送信されるパケットデータを受信する受信手段と、
受信したパケットデータの中から印刷データを抽出する抽出手段と、
抽出した印刷データを記憶する印刷データ記憶手段と、
前記印刷データ記憶手段から印刷データを読み込んで解釈するデータ処理手段と、
印刷データを解釈して前記情報処理装置へ受信データの応答を返す必要がある場合に、該応答内容を記憶する応答記憶手段と、
前記印刷データと前記応答内容とをコマンド単位で保存し、管理するデータ保存管理手段と、
前記応答記憶手段に記憶された応答内容を前記情報処理装置に送信する送信手段と
を備えたことを特徴とするプリンタ装置。
【請求項２】
前記データ保存管理手段により前記印刷データと前記応答内容を保存するタイミングは、前記データ処理手段が前記印刷データ記憶手段から印刷データを読み込むタイミングで行うことを特徴とする請求項１に記載のプリンタ装置。
【請求項３】
前記印刷データは、ジョブ制御言語であることを特徴とする請求項１または２に記載のプリンタ装置。
【請求項４】
前記印刷データは、ページ記述言語であることを特徴とする請求項１または２に記載のプリンタ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタ装置に関し、詳細には、ネットワークを介して情報処理装置から送信された印刷データの解析を行うプリンタ装置に関するものである。
【背景技術】
【０００２】
従来、プリンタ装置にネットワークを介してホストコンピュータから印刷データを送信した結果、文字化けやオートジョブキャンセル等の問題が発生することがあった。そこで、問題の原因がプリンタ機器側にあるのか、送信された印刷データにあるのかを判別するため、ネットワークパケットを取得し、そこから印刷データを抽出することにより解析が行われている。なお、印刷データの解析には、カードセーブやヘキサダンプといった方法を用いることもある。
【０００３】
例えば、従来のネットワークプリンタでは、機器が送受信するパケットデータを印刷ジョブ単位で保存し、正常終了の場合には保存したパケットデータを削除することにより、パケットデータの保存を効率よく行なえるようにした構成が開示されている（特許文献１参照）。
【特許文献１】特開２００４−３６２３８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１にあっては、パケットデータをそのまま保存しているため、パケットデータの中のＩＰ（Internet Protocol）ヘッダ情報といった印刷に直接関連のないデータも含まれている。そのため、印刷データそのものを解析したい場合に、無駄な情報が含まれていることから、解析効率が悪くなるという課題があった。
【０００５】
また、上記特許文献１は、保存したパケットデータを用いて不具合を再現する際に、不具合発生時と同様に送受信したパケットデータを保存すると、不具合の発生した時と順番がずれることがあり、不具合の再現を正確に行うことができないという課題があった。この不具合発生時に順番がずれてしまう状況は、印刷データの送信側と受信側とで双方向にやりとりしながら印刷を行なう主に基幹系システムなどで発生し易い。これを図８〜図１１を用いてさらに具体的に説明する。
【０００６】
図８は、プリンタとホストコンピュータとの間で双方向にやりとりするデータの保存タイミングを示す従来のタイミングチャートであり、図９は、ホストコンピュータの代わりにパーソナルコンピュータを使ってプリンタを解析する場合の従来のタイミングチャートであり、図１０は、障害発生時に保存した従来の送受信データと印刷データとを示す図であり、図１１は、印刷データの保存処理を行う場合の従来のタイミングチャートである。
【０００７】
図８において、プリンタからホストに返している応答は、バックチャネル応答である。図８のシステムにおいて、不具合が発生した場合に、従来技術を用いてパケットデータを保存すると、図１０の左側に示すＨＤＤ２３内のように保存される。この保存されたパケットデータを用いて不具合を再現させたい場合は、その中からプリンタが受信したパケットデータ、つまりホストコンピュータがプリンタに対して送信したパケットデータ（図８の印刷データ）を取り出す。次に、そのパケットデータから不要な情報(ＩＰヘッダなど)を除去することで印刷データのみを抽出し、それをプリンタに送信すればよい。
【０００８】
しかし、常に顧客の環境をそのまま使って解析が行なえるわけではないため、一般的に使われているパーソナルコンピュータ（ＰＣ）をホストコンピュータ代わりに使って解析せざるを得ない場合もある。その場合、データ受信側からの応答を待ってから次の印刷データを送信するというホストコンピュータの動作をＰＣ側で実現することは困難である。これは、ＰＣ側ではバックチャネル応答を受信しても、それがバックチャネル応答であるかどうかが判断できないため、ホストコンピュータのように小出しに印刷データをプリンタへ送信しても意味がない(タイミングが合わせられない)からである。
【０００９】
このため、ＰＣを用いて不具合の再現を試みる場合は、ＰＣ側からは一気に印刷データを送信することになる（図９の印刷データａｂｃ参照）。これにより、図１０における「Ｂ．障害発生時に保存した印刷データ（パケット）」に示すように、不具合を再現させた場合に保存される送受信データの順番が、不具合発生時の順番を示した図１０の「Ａ．障害発生時に保存した送受信データ（パケット）」と異なることになる。
【００１０】
本発明は、上記課題に鑑みてなされたものであり、プリンタへ印刷データを送信して障害が発生した場合に、その原因解析を容易かつ正確に行うことが可能なプリンタ装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記した課題を解決し、目的を達成するために、本発明は、ネットワークを介して情報処理装置と接続され、該情報処理装置から送信されるパケットデータを受信する受信手段と、受信したパケットデータの中から印刷データを抽出する抽出手段と、抽出した印刷データを記憶する印刷データ記憶手段と、前記印刷データ記憶手段から印刷データを読み込んで解釈するデータ処理手段と、印刷データを解釈して前記情報処理装置へ受信データの応答を返す必要がある場合に、該応答内容を記憶する応答記憶手段と、前記印刷データと前記応答内容とをコマンド単位で保存し、管理するデータ保存管理手段と、前記応答記憶手段に記憶された応答内容を前記情報処理装置に送信する送信手段とを備えたことを特徴とする。
【００１２】
また、本発明の好ましい態様によれば、前記データ保存管理手段により前記印刷データと前記応答内容を保存するタイミングは、前記データ処理手段が前記印刷データ記憶手段から印刷データを読み込むタイミングで行うことが望ましい。
【００１３】
また、本発明の好ましい態様によれば、前記印刷データは、ジョブ制御言語であることが望ましい。
【００１４】
また、本発明の好ましい態様によれば、前記印刷データは、ページ記述言語であることが望ましい。
【発明の効果】
【００１５】
本発明によれば、ネットワークを介して情報処理装置から送信されるパケットデータを受信手段で受信し、抽出手段によって受信したパケットデータの中から印刷データを抽出し、抽出した印刷データを印刷データ記憶手段に記憶させ、データ処理手段が印刷データ記憶手段から印刷データを読み込んで解釈し、情報処理装置へ受信データの応答を返す必要がある場合は応答記憶手段に応答内容を記憶させ、データ保存管理手段により印刷データと応答内容とをコマンド単位で保存して管理し、送信手段により応答記憶手段に記憶された応答内容を情報処理装置に送信する。このように、受信したパケットデータの中から解析に必要な印刷データを抽出するため、解析効率を向上させることができるという効果を奏する。また、保存したパケットデータを用いて不具合を再現する際に、印刷データと応答内容とをデータ保存管理手段によりコマンド単位で保存管理するため、再現性の高いデータを得ることができ、不具合の解析効率を向上させることができるという効果を奏する。
【発明を実施するための最良の形態】
【００１６】
以下に、本発明にかかるプリンタ装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１７】
（実施の形態）
図１は、本発明の実施の形態にかかるプリンタ装置１０の概略構成を説明するブロック図であり、図２は、図１のコントローラ２０内の機能ブロック図である。
【００１８】
図１に示すプリンタ装置１０は、情報処理装置としてのホストコンピュータ３０とネットワークを介して接続され、コントローラ２０を中心に構成されている。コントローラ２０には、操作パネル１１とプリンタエンジン１２が接続されると共に、ＬＡＮ（ローカルエリアネットワーク）やインターネットなどの通信回線を介して外部のホストコンピュータ３０と接続されている。
【００１９】
コントローラ２０は、ホストインターフェース（Ｉ／Ｆ）２１、ＲＯＭ２２、ＨＤＤ２３、パネルＩ／Ｆ２４、ＣＰＵ２５、ＲＡＭ２６、ＮＶ−ＲＡＭ２７、エンジンＩ／Ｆ２８およびオプションＲＡＭ２９などの各構成部（モジュール）を備えている。
【００２０】
ホストＩ／Ｆ２１は、ホストコンピュータ３０からプリンタ装置１０への制御信号、印刷データ、ならびにプリンタ装置１０からホストコンピュータ３０へのステータス信号の授受を可能とするインターフェースである。
【００２１】
ＲＯＭ２２は、コントローラ２内でのデータの管理や、周辺モジュールを制御するためのプログラムが格納される記憶手段である。
【００２２】
ＨＤＤ２３は、各種データが記憶可能な大容量記憶部であり、ここでは、解釈された印刷データやホストコンピュータ３０に応答を返す必要がある場合のバックチャネル応答などを保存するものである。
【００２３】
パネルＩ／Ｆ２４は、プリンタ装置１０の状態、モード、フォント等の切替えを行うための制御信号の授受を可能にする中継手段である。
【００２４】
ＣＰＵ２５は、ＲＯＭ２２に格納されたプログラムに基づいてホストコンピュータ３０からのデータ(印刷データ、制御データ)などを処理するものである。
【００２５】
ＲＡＭ２６は、例えばＣＰＵ２５が処理する際のワークメモリとして、ホストコンピュータ３０からの受信した印刷データをコマンド単位で管理し、一時記憶する受信バッファ、あるいは、後述するバックチャネル応答を一時記憶する送信バッファ、印刷データを実際の印字パターンに変換したビデオデータを記憶するためのビットマップメモリなどに使用される。
【００２６】
ＮＶ−ＲＡＭ２７は、電源が切断されても保持しておきたいデータを格納しておくための不揮発性ＲＡＭである。
【００２７】
エンジンＩ／Ｆ２８は、コントローラ２０からプリンタエンジン１２への制御信号や、プリンタ装置１０からコントローラ２０へのステータス信号の授受を可能にする中継手段である。
【００２８】
オプションＲＡＭ２９は、ＲＡＭ２２を補完する目的で使用される補助的な記憶手段である。
【００２９】
また、コントローラ２０の外部に位置するプリンタエンジン１２は、コントローラ２からのビデオ信号および制御信号に基づいて所定の画像を形成する。
【００３０】
また、プリンタエンジン１２と同様にコントローラ２０の外部に位置する操作パネル１１は、プリンタ装置１０の状態を示す表示部や、プリンタ装置のモード、フォント等を切替えるスイッチ部等を具備し、ユーザに対して必要な情報を提供する情報提供手段、および、ユーザからの入力情報をプリンタ装置に反映させるための情報入力手段として機能する。
【００３１】
プリンタ装置１０全体の機能を司るコントローラ２０は、任意の時点で設定されている制御モード、あるいはホストコンピュータ３０から指示された制御コードに基づいてホストコンピュータ３０から出力された印刷データをビデオデータに変換し、プリンタエンジン１２へ出力するための出力制御機能を備えている。
【００３２】
次に、図１に示したプリンタ装置１０のコントローラ２０の機能について、図２の機能ブロック図を用いて説明する。図２に示すコントローラ２０は、図示省略したホストコンピュータとＬＡＮ３１を介して接続されており、通信制御部２０１、印刷制御部２０２、受信バッファ２０３、データ処理部２０４、送信バッファ２０７、データ保存管理部２０８およびＨＤＤ２３などで構成されている。さらに、データ処理部２０４は、データ解釈部２０５と描画部２０６とを備えている。
【００３３】
通信制御部２０１は、ホストコンピュータから送信されるパケットデータを受信する受信手段、受信したパケットデータの中から印刷データを抽出する抽出手段、および、ホストコンピュータに対し受信したパケットデータのバックチャネル応答を送信する送信手段を兼用している。
【００３４】
印刷制御部２０２は、通信制御部２０１とデータ処理部２０４のデータ解釈部２０５との間の調停を行うものである。
【００３５】
受信バッファ２０３は、通信制御部２０１で受信したパケットデータから抽出した印刷データを一時的に記憶する印刷データ記憶手段である。
【００３６】
データ処理部２０４は、受信バッファ２０３から印刷データを読み込み、その印刷データをデータ解釈部２０５で解釈するものである。このデータ処理部２０４の特徴は、受信バッファ２０３に記憶されている印字データを一気に全て読み込むのではなく、コマンド単位で読み込むことが可能である。また、データ処理部２０４の描画部２０６では、データ解釈部２０５で解釈された印刷データを画像展開する。
【００３７】
送信バッファ２０７は、データ処理部２０４における印刷データの解釈結果により、ホストコンピュータに受信データの応答内容を返す必要がある場合、その応答内容であるバックチャネル応答を書き込む応答記憶手段である。
【００３８】
データ保存管理部２０８は、ＨＤＤ２３に対しデータ処理部２０４からの印刷データおよびバックチャネル応答をコマンド単位で書き込んで保存管理するデータ保存管理手段である。
【００３９】
本実施の形態にかかるプリンタ装置は、上記のように構成されており、以下プリンタ装置の動作について説明する。
【００４０】
図３は、本実施の形態にかかるプリンタ装置とホストコンピュータとの間で双方向にやりとりするデータの保存タイミングを示すタイミングチャートであり、図４は、本実施の形態においてホストコンピュータの代わりにパーソナルコンピュータを使ってプリンタを解析する場合のタイミングチャートであり、図５は、データ処理部への印刷データの読み込みとデータ処理部から送信バッファあるいはＨＤＤに対するデータの書き込み動作を説明する図であり、図６は、データ処理部で解釈された印刷データをＨＤＤに保存する処理を説明するタイミングチャートであり、図７は、本実施の形態にかかるプリンタ装置との動作を説明するフローチャートである。
【００４１】
まず、本実施の形態にかかるプリンタ装置の特徴は、図２のデータ処理部２０４のモジュールが、図５に示すように、受信バッファ２０３に連続した印刷データ（受信データ）が存在していても、一気に読み込まずに、データ処理部２０４がデータを読み込むタイミングと、書き込むタイミングで保存を行うため、不具合発生時であっても同じ順番で印刷データを保存することができる。すなわち、再現性の高いデータを保存できることから、不具合の解析効率を向上させることができる。
【００４２】
本実施の形態例を示す図５では、ＨＤＤ２３内に保存された送受信データの順番は、障害発生時の送受信データの順番と一致しているが、従来例を示す図１０では、ＨＤＤ２３内に保存された送受信データの順番が障害発生時の送受信データの順番と異なっていることがわかる。
【００４３】
また、図３に示す本実施の形態例では、プリンタ１０側のデータ処理部２０４で行う処理ａ，ｂ，ｃのデータ読み込み時とデータ書き込み時にデータを保存するため、不具合再現時に、不具合発生時と同じ順番で印刷データを保存することができる。しかし、従来例を示す図８では、データ処理部での処理とは関係なく、印刷データとバックチャネル応答の送受信時にデータの保存処理が行われる。このため、ホストコンピュータに代えてＰＣで不具合解析を行うと、図９に示すように、送受信データが一気に送信され、その順番でデータが保存されると送受信データの順番が不具合発生時と異なることになる。
【００４４】
そこで、プリンタ装置１０は、ネットワーク接続されたホストコンピュータ３０からパケットデータを受け取ると、図２の通信制御部２０１において、受信したパケットデータの中から印刷データを抽出して、これを受信バッファ２０３に書き込む。
【００４５】
ここで、通信制御部２０１は、印刷制御部２０２に対して、印刷データを受信した旨を通知する（図７のステップＳ１００）。この印刷データは、ジョブ全体を制御する言語(ジョブ制御言語)、例えばＰＪＬ（Printer Job Language）であっても、また、PostScriptなどのＰＤＬ（Page Description Language、ページ記述言語）であってもよく、特に印刷データは特定のデータに限定されない。
【００４６】
続いて、印刷制御部２０２では、通信制御部２０１からの印刷データ受信通知を受け取ると、データ処理部２０４に対して印刷データを受信したことを伝える（ステップＳ１００）。通常、データ処理部は、１つのプリンタ装置に複数種類搭載されているので、印刷制御部２０２は、通信制御部２０１とデータ解釈部２０５との調停を行なっている。
【００４７】
データ処理部２０４は、印刷制御部２０２からの印刷データ受信通知を受け取ると、受信バッファ２０３から印刷データを読み込み（ステップＳ１０１）、データ解釈部２０５で印刷データを解釈する。このとき、受信バッファ２０３から読み込んだ印刷データをＨＤＤ２３に記録する（ステップＳ１０２）。また、データ処理部２０４は、受信バッファ２０３から印刷データを読み込む際に、受信バッファに記録されている印刷データを一気に全て読み込むわけではない。例えば、印刷データがジョブ制御言語のＰＪＬであれば、@PJL CMD <CR><LF>というような形式で記述されているため、受信バッファ２０３に連続して印刷データが書かれていても、コマンド単位で読み込むことが可能である。
【００４８】
そして、データ処理部２０４のデータ解釈部２０５では、印刷データを解釈し（ステップＳ１０３）、描画部２０６で画像を展開する（ステップＳ１０４）。印刷データの解釈結果によって印刷データの送信元のホストコンピュータ３０に受信データに対する応答(バックチャネル応答)を返す必要があると判断した場合は（ステップＳ１０５）、バックチャネル応答を送信バッファ２０７に書き込み（ステップＳ１０６）、そのバックチャネル応答をＨＤＤ２３に保存する（ステップＳ１０７）。
【００４９】
その後、データ処理部２０４は、印刷制御部２０２に対して送信バッファ２０７に送信データを書き込んだ旨を通知する（ステップＳ１０８）。上記ステップＳ１０５において、バックチャネル応答を返す必要があるかどうかの判断は、例えば、バックチャネル応答をする必要のあるコマンドを受信したかどうか、あるいは、バックチャネル応答をするというコマンドを受信したかどうかで判断しても良い。また、特定のＰＤＬや通信プロトコルを使う場合には、必ずバックチャネル応答を返すようにするという判断で行っても良い。
【００５０】
印刷制御部２０２は、データ処理部２０４から送信バッファ２０７に送信データを書き込んだ旨の通知を受け取ると、さらに通信制御部２０１に対して送信データを送信バッファ２０７に書き込んだ旨を通知する。通信制御部２０１では、この通知を受け取った後、送信バッファ２０７から送信すべきデータを読み込み、印刷データの送信元であるホストコンピュータ３０へ送信する。
【００５１】
以上の処理（図６中の４以降の処理)は、受信した印刷データを全て読み込んで処理が終わるまで続けられ（ステップＳ１０９）、受信した印刷データが残っていない場合は処理を終了する。なお、図７のステップＳ１０５において、バックチャネル応答が不要な場合は、送信バッファに何も書き込まれないため、図６に示す「８.印刷データの書き込み」処理以降は行なわれない。
【００５２】
ここで、従来のタイミングチャートを示す図１１では、データ保存処理を行うモジュールが通信制御部２０１であり、保存のタイミングはパケットデータの送受信時であることから、データ処理部２０４での処理順序と一致しない場合が出てくる。しかし、本実施の形態のタイミングチャートを示す図６では、データ保存管理部２０８に対してデータ保存処理を行うモジュールがデータ処理部２０４であり、保存のタイミングはデータ処理部２０４のデータ読み込み時と書き込み時であることから、不具合発生時であっても再現性の高いデータを保存することができる。
【００５３】
以上説明したように、本実施の形態にかかるプリンタ装置は、プリンタへ印刷データを送信して障害が発生した場合でも、その原因解析を容易かつ正確に行うことができる。
【００５４】
なお、データ保存管理部２０８に保存された印刷データ(受信した印刷データとバックチャネル応答)は、ネットワークに接続されたＰＣ４０からプリンタ装置１０にアクセス（例えば、ＦＴＰサーバ等を利用）することにより取得できる。
【産業上の利用可能性】
【００５５】
本発明に係るプリンタ装置は、ネットワークに接続されたプリンタ、複写機、ファクシミリ、デジタル複合機（ＭＦＰ）等に広く利用することが可能である。
【図面の簡単な説明】
【００５６】
【図１】本発明の実施の形態にかかるプリンタ装置の概略構成を説明するブロック図である。
【図２】図１のコントローラ内の機能ブロック図である。
【図３】本実施の形態にかかるプリンタ装置とホストコンピュータとの間で双方向にやりとりするデータの保存タイミングを示すタイミングチャートである。
【図４】本実施の形態においてホストコンピュータの代わりにパーソナルコンピュータを使ってプリンタを解析する場合のタイミングチャートである。
【図５】データ処理部への印刷データの読み込みとデータ処理部から送信バッファあるいはＨＤＤに対するデータの書き込み動作を説明する図である。
【図６】データ処理部で解釈された印刷データをＨＤＤに保存する処理を説明するタイミングチャートである。
【図７】本実施の形態にかかるプリンタ装置との動作を説明するフローチャートである。
【図８】プリンタとホストコンピュータとの間で双方向にやりとりするデータの保存タイミングを示す従来のタイミングチャートである。
【図９】ホストコンピュータの代わりにパーソナルコンピュータを使ってプリンタを解析する場合の従来のタイミングチャートである。
【図１０】障害発生時に保存した従来の送受信データと印刷データとを示す図である。
【図１１】印刷データの保存処理を行う場合の従来のタイミングチャートである。
【符号の説明】
【００５７】
１０  プリンタ装置
１１  操作パネル
１２  プリンタエンジン
２０  コントローラ
２０１  通信制御部
２０２  印刷制御部
２０３  受信バッファ
２０４  データ処理部
２０５  データ解釈部
２０６  描画部
２０７  送信バッファ
２０８  データ保存管理部
２１  ホストＩ／Ｆ
２２  ＲＯＭ
２３  ＨＤＤ
２４  パネルＩ／Ｆ
２５  ＣＰＵ
２６  ＲＡＭ
２７  ＮＶ−ＲＡＭ
２８  エンジンＩ／Ｆ
２９  オプションＲＡＭ
３０  ホストコンピュータ
３１  ＬＡＮ
【図１】
2008165605.tif 000003
【図２】
2008165605.tif 000004
【図３】
2008165605.tif 000005
【図４】
2008165605.tif 000006
【図５】
2008165605.tif 000007
【図６】
2008165605.tif 000008
【図７】
2008165605.tif 000009
【図８】
2008165605.tif 000010
【図９】
2008165605.tif 000011
【図１０】
2008165605.tif 000012
【図１１】
2008165605.tif 000013