JP4323876B2 - データ処理装置、その制御方法、及び制御プログラム - Google Patents

データ処理装置、その制御方法、及び制御プログラム Download PDF

Info

Publication number
JP4323876B2
JP4323876B2 JP2003177053A JP2003177053A JP4323876B2 JP 4323876 B2 JP4323876 B2 JP 4323876B2 JP 2003177053 A JP2003177053 A JP 2003177053A JP 2003177053 A JP2003177053 A JP 2003177053A JP 4323876 B2 JP4323876 B2 JP 4323876B2
Authority
JP
Japan
Prior art keywords
printer
processing apparatus
information
information processing
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003177053A
Other languages
English (en)
Other versions
JP2005011246A5 (ja
JP2005011246A (ja
Inventor
耕司 福長
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2003177053A priority Critical patent/JP4323876B2/ja
Publication of JP2005011246A publication Critical patent/JP2005011246A/ja
Publication of JP2005011246A5 publication Critical patent/JP2005011246A5/ja
Application granted granted Critical
Publication of JP4323876B2 publication Critical patent/JP4323876B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、プリンタ等のデバイスとUSBなどのローカルインターフェースで接続され、外部の情報処理装置と例えば有線及び無線のインターフェースで接続されたデータ処理装置及びその制御方法、並びに前記制御方法を実現するための制御プログラムに関する。
【0002】
【従来の技術】
従来より、有線または無線、あるいはその両者のインターフェースを備え、且つ外部プリンタとはUSB(Universal Serial Bus)などのローカルインターフェースと接続されたプリンタアダプタが知られている。このプリンタアダプタは、無線あるいは有線ネットワーク経由で複数のホストコンピュータから印刷指示を受けて、外部プリンタを使用して印刷処理を行う機能を有している。
【0003】
プリンタは、PCとUSBなどのローカルインターフェースで一対一の接続が一般的であったが、家庭などでも複数のPCから印刷するようなニーズに応えられるネットワークへの要望が増している。現在のプリンタは、ローカルインターフェース(例えばUSB)を使ってPC(パーソナルコンピュータ)から印刷を行うものが多く、これらのプリンタを有線及び無線インターフェースで利用しようとする場合は、有線及び無線インターフェースを備えたプリンタアダプタを接続することで実現することができる。すなわち、プリンタアダプタをローカルインターフェースを介して既存のプリンタへ接続することで、有線、無線インターフェース経由で複数のホストPCからプリンタに容易に接続して印刷することができる(例えば、特許文献1)。
【0004】
また、現在のUSBのようなローカルインターフェースでPCと接続されるプリンタでは、プリンタのインターフェース状況やプリンタの状態情報を表示するソフトウェア(ステータスモニタ)を利用して、インクの残量やエラーの状況などをユーザに知らせることが一般的に行われている。
【0005】
【特許文献1】
特開2002−123373号公報
【0006】
【発明が解決しようとする課題】
しかしながら、プリンタがプリンタアダプタを介して複数のホストPCに共有されるシステムにおいては、複数のホストPCから同時期に印刷指示が発行されるような状況が発生するようになった。
【0007】
その一方で、プリンタとプリンタアダプタとはローカルインタフェースを介して接続されるため、プリンタ側からすると、プリンタアダプタを経由してプリンタに送信される印刷指示(または印刷ジョブ、印刷データ)は1台のPCのみから発行されていると認識する。
【0008】
従って、プリンタは、プリンタアダプタを介して接続されている複数のPCに対しては、印刷処理を実行しりているPCに対しても、印刷処理を実行していないPCに対しても、同様な情報を提供してしまう。
【0009】
さらに、ローカルインターフェースでPCと接続されたプリンタ(第1タイプのプリンタ)では、1台のPCから利用されることを前提に各種ソフトウェアが作成されているため、複数のPCからの印刷指示が同時期に発行されることに対応していない。一例として、このようなプリンタに対するステータスモニタは、印刷処理を実行しているPC(ユーザ)においては印刷の状況や情報(ステータス)を表示することはできるが、それ以外のPC(ユーザ)においてはステータスの表示を行うことができない。或いは、印刷処理を実行していないPCが強制的にステータスをこのようなプリンタから取得しようとすると、現在行われている印刷処理に影響を与えてしまう可能性がある。
【0010】
その一方で、複数のPCからの印刷指示が同時期に行われることに対応して、印刷処理を実行しているPC以外のPCに対してもステータスを提供可能なプリンタ(第2タイプのプリンタ)も存在する。
【0011】
したがって、ローカルインターフェースでプリンタに接続され且つ有線、無線インターフェース経由で複数のホストPCに接続されるプリンタアダプタは、どちらのタイプのプリンタに接続されうるか分からないため、第1タイプのプリンタに合わせて設計されることになる。しかし、この場合、プリンタアダプタは第2タイプのプリンタと接続されているにもかかわらず、印刷を行っていないPCから発せられた状況確認のためのリクエストに応えることができない。
【0012】
本発明は、上記問題点に鑑み、1台のデバイスを複数の情報処理装置で共有できるようにする一方で複数の情報処理装置のぞれぞれに対して適切なデバイス情報を提供できるとともに、異なるタイプのデバイスのそれぞれに関して適切なデバイス情報を提供できるデータ処理装置、その制御方法、及び制御プログラムを提供することを目的とする。
【0013】
【課題を解決するための手段】
上記目的を達成するために、本発明のデータ処理装置は、デバイスと第1のインターフェースを介して接続されると共に、前記第1のインターフェースとは異なる第2のインターフェースを介して複数の情報処理装置と接続されたデータ処理装置において、前記複数の情報処理装置のいずれかから送られてきたリクエストに従って、前記デバイスの状況を示すデバイス情報を前記デバイスから取得する取得手段と、 前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一であるか否かを判断する判断手段と、前記取得手段取得したデバイス情報の内容を、前記判断手段による判断の結果に従って変更する変更手段と、前記変更手段により内容が変更されたデバイス情報を、前記リクエストを送った情報処理装置へ送信する送信手段と、を備え、前記変更手段は、前記取得手段が取得したデバイス情報が、前記デバイスが現在使用可能であることを示している場合であって、且つ、前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一でないと判断された場合に、前記取得手段が取得したデバイス情報を、前記デバイスが現在使用可能でないことを示すように変更することを特徴とする。
【0014】
本発明のデータ処理装置の制御方法は、デバイスと第1のインターフェースを介して接続されると共に、前記第1のインターフェースとは異なる第2のインターフェースを介して複数の情報処理装置と接続されたデータ処理装置の制御方法において、前記複数の情報処理装置のいずれかから送られてきたリクエストを受信するステップと、前記リクエストに従って、前記デバイスの状況を示すデバイス情報を前記デバイスから取得する取得ステップと、前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一であるか否かを判断する判断ステップと、前記デバイスから取得したデバイス情報の内容を、前記判断ステップによる判断の結果に従って変更する変更ステップと、前記変更ステップにより変更されたデバイス情報を、前記リクエストを送った情報処理装置へ送信するステップとを有し、前記変更ステップは、前記取得ステップで取得したデバイス情報が、前記デバイスが現在使用可能であることを示している場合であって、且つ、前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一でないと判断された場合に、前記取得ステップで取得したデバイス情報を、前記デバイスが現在使用可能でないことを示すように変更することを特徴とする。
【0015】
本発明の制御プログラムは、デバイスと第1のインターフェースを介して接続されると共に、前記第1のインターフェースとは異なる第2のインターフェースを介して複数の情報処理装置と接続されたデータ処理装置を制御するためのコンピュータで読み取り可能な制御プログラムであって、前記複数の情報処理装置のいずれかから送られてきたリクエストに従って、前記デバイスの状況を示すデバイス情報を前記デバイスから取得する取得ステップと、前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一であるか否かを判断する判断ステップと、前記取得ステップ取得したデバイス情報の内容を、前記判断ステップによる判断の結果に従って変更する変更ステップと、前記変更ステップにより内容が変更されたデバイス情報を、前記リクエストを送った情報処理装置へ送信する送信ステップとを有し、前記変更ステップは、前記取得ステップが取得したデバイス情報が、前記デバイスが現在使用可能であることを示している場合であって、且つ、前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一でないと判断された場合に、前記取得ステップが取得したデバイス情報を、前記デバイスが現在使用可能でないことを示すように変更することを特徴とする。
【0016】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
【0017】
<システム構成>
図1は、本発明の実施の一形態に係るデータ処理装置を有する印刷システムの一構成例を示すブロック図である。
【0018】
図中のノートPC11,12,13は、無線LANとしてPCMCIAカードタイプの無線LANカード18を装着することができる構成となっている。プリンタ14は、インクジェット方式によるカラー印刷が可能なプリンタであって、有線ローカルインターフェースとしてUSBとIEEE1284の両者を備える。有線ローカルインターフェースUSBは、プリンタアダプタ16とUSBケーブルで接続する。
【0019】
プリンタアダプタ16は、無線LANとして、PCMCIAカードタイプの無線LANカード18を装着し、また有線LANを有する。アクセスポイント15は無線LANのアクセスポイントであって、無線機器同士のデータ転送を行う仲介の役割を果たし、PCMCIAカードタイプの無線LANカード18を装着することができる。
【0020】
各PC11〜13は、無線LANを用いてアクセスポイント15を経由して、プリンタアダプタ16のローカルインターフェース(USB)で接続されたプリンタ14へ印刷データを送ることが可能である。無線LANには、アクセスポイントを経由して複数の無線LAN機器と接続可能なモード(インフラストラクチャモード)がある。インフラストラクチャモードでは、アクセスポイントに設定されたID(SSID)と同じIDを無線LAN機器にも設定することで、複数の無線LAN機器からアクセスポイントを経由してLANを構成することができる。
【0021】
無線LANとしてプリンタアダプタを使用する場合、プリンタアダプタがアクセスポイントに接続できるように設定する必要がある。本実施形態では、各PC11〜13並びにプリンタアダプタ16はアクセスポイント15との間での設定は既になされていて、インフラストラクチャモードでアクセスポイントと通信できる状態になっているものとする。
【0022】
一般的にPCでは何らかのOSが動作していて、そのOS環境で印刷を行うためには印刷用ソフト(プリンタドライバ)が必要となる。プリンタドライバは、OSメーカーあるいはプリンタメーカーから提供され、予めPCにインストールされていたり、CDなどの形式で提供される。プリンタで印刷を行うためには何らかの形でプリンタドライバをインストールする必要がある。また、無線LANを使って印刷を行うような場合には、プリンタ内の無線LANの設定を行いアクセスポイントと接続できる状態にした上、PCでは無線LANでの印刷を可能とするソフトウェアをインストールしてプリンタアダプタに適した設定にしておく必要がある。
【0023】
このような環境を構築することで、無線LANを用いて複数のPCから1台のプリンタへの印刷処理を行うことができるようになる。プリンタとプリンタアダプタとの間でのみケーブルが使われ、他の機器はケーブルで接続する必要がないため自由な配置を行うことができる。
【0024】
<プリンタアダプタの外観>
図2(a),(b)は、図1のプリンタアダプタ16の外観を示した図であり、同図(a)は上方からの外観、同図(b)に背面からの外観を示している。
【0025】
図2(a)に示すように、プリンタアダプタ16の上面側は、PCMCIAカードタイプの無線LANカード18が装着される構成となっており、さらにユーザが各種設定を行うためのキースイッチ22と、プリンタアダプタ16の動作状況を示すLED21を複数個配置している。LED21は、電源のON/OFFや、データの転送状況、エラーなどをユーザに知らしめるために用いられる。キースイッチ22は、プリンタアダプタ16をリセットしたり動作モードを設定したりすることに用いられる。キースイッチ22を押下することで、プリンタアダプタ16に設定されている情報をプリンタ14へ送信して印刷するような機能も考えられる。
【0026】
また、プリンタアダプタ16の背面側は、図2(b)に示すように、無線LANカード18が装着されているほか、有線LANコネクタ24とUSBペリフェラルコネクタ25とUSBホストコネクタ26を装備している。有線LANコネクタ24は、有線LANで接続を行うためにケーブルを接続するためのコネクタであり、一般的はカテゴリー5のケーブルを接続する。
【0027】
USBペリフェラルコネクタ25は、ホストPCを接続するためのコネクタであって、プリンタアダプタ16はコネクタ25によってホストPCからUSBで接続された場合にUSBデバイスとして機能する。この機能の1つとしては、プリンタアダプタの各種設定(無線LAN設定、有線LAN設定など)を行う。また別の機能としては、プリンタアダプタに接続されるプリンタへPCからUSB経由で印刷を行うことができるように、プリンタアダプタがプリンタとしてPCから認識されるように動作する。この場合、PCからUSBで送られてきた印刷データはプリンタアダプタ16を経由してプリンタ14へ送られて、印刷が実行される。これは、プリンタアダプタ16に送られてきた印刷データをそのままUSBで接続されたプリンタ14へ引き渡す処理を行う。
【0028】
USBホストコネクタ26は、プリンタ14へUSBで接続するためのコネクタであり、PC側からUSBで送られてくる印刷データと無線・有線LAN経由で送られてくる印刷データをプリンタ14へ送るために使われる。
【0029】
<プリンタアダプタ16の電気的構成>
図3は、プリンタアダプタ16の電気的構成を示すブロック図である。
【0030】
図中のCPU31は、セントラルプロセッサであって、ROM32に保存されているプログラムを読み出して実行する。ROM32は、CPU31で実行されるプログラムを保持する読み出し専用のメモリである。
【0031】
RAM33は、各種情報、データを保持するメモリであって、電源が消えることで失われるDRAM(Dynamic RAM)と電源が消えても失われないSRAM(Static RAM)とを含んでいる。DRAMには印刷データのような一時的に必要なデータなどが保存され、SRAMには各種設定などの継続的に使われる情報が保存される。
【0032】
LED/コントローラ34は、図2で示したLED21と該LED21を制御するコントローラとから成り、コントローラは、CPU31からの指示によりLED21の点灯/消灯などの制御を行う。KEY/コントローラ34は図2で示したキースイッチ22と該キースイッチ22を制御するコントローラとから成り、キースイッチ22が押下されることにより、コントローラは押下されたキースイッチ22の種類や状況をCPU31へ知らせることができる。
【0033】
カードコントローラ36は、接続されている無線LANカード18の制御を行うコントローラである。LANコントローラ38は、有線LANの制御を行うためのコントローラであって図2のコネクタ24に接続された有線LANの制御を行う。USB・HOSTコントローラ39は、プリンタアダプタ16がプリンタ14を制御するためにUSBホスト機能を実現するコントローラであって、図2のコネクタ26に接続されたプリンタ14で印刷ができるような制御を行うほか、プリンタ14からのUSBで情報を受取ることにも使われる。
【0034】
USB・PHRIPHERALコントローラ310は、プリンタアダプタ16がホストPCと接続されUSBデバイスとして機能するための制御を行うコントローラであって、PCと接続された場合にプリンタアダプタ16に接続されたプリンタ14の代わりとしてPCから認識されるように動作する。
【0035】
BUS311はシステムバスであって、該BUS311に接続された各デバイスのデータ/アドレスをやり取りするバスである。CPU31は、ROM32に保存されたプログラムに従い各デバイス・コントローラ34、35、36、38、39、310を制御し各機能を実現する。
【0036】
<接続可能な全ての組み合わせ>
図4は、本実施形態で接続可能な全ての組み合わせで構成した印刷システムのシステム構成図である。
【0037】
図1の構成において、IEEE1284インターフェースでプリンタ14に接続されるノートPC41と、プリンタアダプタ16のUSBペリフェラルコネクタ25に接続されるノートPC42と、プリンタアダプタ16の有線LANコネクタに接続されるイーサネット(登録商標)ハブ45と、ハブ45に接続されるノートPC43と、ノートPC44とが追加されている。
【0038】
イーサネット(登録商標)ハブ45は、有線LANの分岐を行い複数の機器を接続するために用いられる。追加された各PCでも各インターフェースを通してプリンタ14で印刷を行うことができ、PC41以外のPCはプリンタアダプタ16を経由して印刷を行うことになる。
【0039】
ノートPC41とプリンタ14との関係は従来からのPCとプリンタの関係と同じである。しかし、プリンタ14はあくまで1台であり、ある時点で印刷を実行できるのはどれか1つのPCからになる。後に説明するが1台のPCで印刷中にそれ以外のPCで印刷が実行された場合は、既に印刷が行われていてプリンタ14が使われている状態であるので、直ちに印刷を実行することはできない。印刷が実行できる状態、すなわちそれ以前に印刷を実行していたPCの印刷が終わるまで、後から印刷を指示したPCは待つことになる。後で詳細に説明するが各PCでは印刷状況を知らしめるためのソフトウェア(ステータスモニタ)を印刷実行の際に起動することで、印刷の状況やプリンタの状態をユーザに知らせることができる。現在行われている一般的な印刷でもステータスモニタを表示してプリンタ14の状況を表示している。
【0040】
<ステータスモニタの表示画面>
図5は、印刷実行中におけるステータスモニタの表示内容を示す画面図であり、印刷が行われているPCでの状態を表している。
【0041】
図中の51はステータスモニタの表示領域を示しており、そのうちの領域52に印刷状況を表すメッセージ情報が表示される。図5の例では、正常に印刷が行われているPCでの状況を示すため、“印刷中”のメッセージが表示されている。「紙なし」などのエラーが発生した場合は、このメッセージ領域に対応したエラーメッセージが表示される。
【0042】
58は印刷を行っているホストの名前を示す領域であり、59は印刷しているドキュメントの名前を表示する領域であり、510は印刷実行中のページ番号とトータルの印刷ページ番号を示す領域であり、印刷ページが進むにつれて更新される。
【0043】
54、55、56、57は、プリンタ14に装着されている各インクの残量を表していて、C(シアン)、M(マゼンダ)、Y(イエロー)、K(ブラック)の各色の残量を個別に示す領域である。これらの情報は、プリンタ14またはプリンタアダプタ16から得られた情報を基に、ユーザに知らせるための表示がなされる。ユーザはステータスモニタに表示された情報を見ることでインクの有無やエラーの状況を知ることができる。
【0044】
図6は、他のインターフェースで印刷実行中におけるステータスモニタの表示内容を示した画面図であり、異なるインターフェース間で印刷の指示がなされた場合に、後から印刷が指示され印刷が実行されずに待たされているPCでのステータスモニタの表示を表している。
【0045】
これは、図4のPC4とプリンタアダプタ16との間で、あるいは有線・無線LANで印刷を行うPC1、2、6、7とプリンタアダプタ16のUSBインターフェースを使って印刷を行うPC5との間で起こる場合があり、どちらかのPCが先に印刷を行っている状態で別のインターフェースに属するPCからの印刷が実行されたケースである。
【0046】
どちらかのインターフェースが使用されている場合、他方のインターフェースではプリンタ14の情報を取ることができないため図6に示したように各詳細情報は表示することができず、メッセージ領域52に“他のインターフェース使用中”が表示されるだけとなる。この場合、プリンタ14の詳しい情報をユーザに知らせることはできない。
【0047】
図7は、他のPCで印刷実行中におけるステータスモニタの表示内容を示した画面図であり、同種類のインターフェース間で印刷の指示がなされた場合に後から印刷が指示され印刷が実行されずに待たされているPCでのステータスモニタの表示を表している。
【0048】
これは、図4の有線・無線LANで印刷を行うPC1、2、6、7との間で起こる場合があり、どちらかのPCが先に印刷を行っている状態で同じインターフェースに属する他のPCからの印刷が実行されたケースである。既に印刷は行われているため印刷は待たされることになるが、プリンタ14の詳細情報を取ることができるため図7に示したように各情報は表示することができき、メッセージ領域72に“他のホスト使用中”が表示される。
【0049】
別のPCが現在印刷を行っていることとプリンタ14の詳しい情報とをユーザに知らせることはできる。実際に印刷を行っているPCのホスト名やドキュメント名を知ることができ(図7中の58,59)、さらに現在の印刷ページとトータルページ数を知ることができる(図7中の510)。
【0050】
これにより、従来印刷を行っていたPCでしか分からなかった情報を他の印刷していないPCでも知ることが可能になる。エラーの情報も表示することができるので別のPCでもエラーに対する対応ができるようになる。例えば、印刷中に紙なしエラーになった場合、印刷を指示した以外のPCでも同じ紙なしのメッセージが得られるため、印刷ユーザ以外の人が紙を補給する必要性を認知して紙を補給することができるようになる。
【0051】
<コマンドとパラメータ等のデータ類>
以下、コマンド等について説明する。これらのコマンド等はLANで印刷を行う場合に使用する、コマンド、パラメータ及び戻り値を示したもので、有線・無線LANで共通に使われる。
【0052】
「(1)SessionStart (2)HOSTNAME:PC1;DOCUMENTNAME:TEXT1;TOTALPAGE:4;SESSION−NO:1;」((1)及び(2)は説明のためのものである)は、PCで発行されるSessionStartのコマンドである。
【0053】
(1)に示すものは、印刷データを転送するためにセッションの確立をリクエストするためのコマンドであり、プリンタアダプタ16は既にセッションが成立していない状態でセッションを成立できる場合には、成功の戻り値を返し、既にセッションが成立していてセッションが確立できない場合には、失敗(既にセッション有り)を戻り値とする。(1)のSessionStartのパラメータとして(2)に示した値が付加される。パラメータは、指定する内容を示す固定の文字列プラス「:」と、それに対応する値との区切れを表す「;」を用いて構成され、複数の指定内容を「;」で区切って列記することができる。
【0054】
(2)の例では、「HOSTNAME」、「DOCUMENTNAME」、「TOTALPAGE」、「SESSION−NO」が指定される内容を示す文字列であり、この後「;」までにそれぞれに対応した値が存在する。「HOSTNAME」は印刷実行中のPCのホスト名であり、「HOSTNAME:」に続く「PC1」がそのホスト名となる。「DOCUMENTNAME」は、印刷するドキュメントの名前、「TOTALPAGE:」はトータルページ数を表しており、図7の58,59,510に表示される情報である。
【0055】
PCはセッション成立をリクエストする際にプリンタアダプタ16へこれらの情報を通知している。「SESSION−NO:」はセッションを特定するための番号であり、コマンドによってこのセッション番号を指定する際に使用される。SessionStartでは0以外の任意の値を指定する。セッションが成立した場合、SESSION−NOで指定した値がこの後印刷を行うためのセッションを特定する値となる。
【0056】
「(3)SessionEnd (4)SESSION−NO:1;」((3)及び(4)は説明のためのものである)は、PCで発行されるSessionEndのコマンドである。
【0057】
このコマンドは、セッションを終了するコマンドであり、(2)で指定したSESSION−NOと同じ番号をパラメータとして指定する。SessionEndをリクエストすることで印刷を終了することができる。
【0058】
「(5)GetDeviceID (6)SESSION−NO:n; n>=0」((5)及び(6)は説明のためのものである)は、PCで発行されるGetDeviceIDのコマンドである。
【0059】
このコマンドはDeviceIDを取得するためのコマンドであって、パラメータとしてSESSION−NOを指定する。セッションが成立している場合、(2)で指定したSESSION−NOを用い、セッションが成立していない場合にはSESSION−NOに0を指定する。このパラメータの違いによりプリンタアダプタ16は返信するDeviceIDの内容を変更することができる。
【0060】
図8(a)〜(e)は、PCで発行されるGetDeviceIDのコマンドで得られるDeviceIDを示した図であり、GetDeviceIDのコマンドで返送されるDeviceIDの内容を表している。
【0061】
同図(a)、(b)は、ネットワークに対応していない従来型のプリンタでのDeviceIDを示し、同図(c)、(d)、(e)はネットワークに対応しているプリンタでのDeviceIDを示している。ここで、戻されるDeviceIDの内容は、IEEE1284で決められているDeviceIDと同様のものに、拡張された情報を加えて構成されている。
【0062】
図8(a)、(b)において、「MFG:ABCDE;CMD:TEXT;MDL:BJ−1000;CLS:PRINTER;」までは、IEEE1284でのDeviceIDと同じ内容である。MFGはマニュファクチャを示し、CMDはコマンド、MDLはモデル、CLSはクラスを表している。これらの情報は、プリンタのベンダー・コマンド・モデル名・機器分類を知るために用いられる。
【0063】
図8(c),(d),(e)では、CMDにネットワーク対応であることを示すNWが追加されている。プリンタアダプタ16は、CMDにあるNWを見つけることでネットワーク対応のプリンタであるかないかを判定することができる。「STA:」以降が拡張されたもので、プリンタアダプタ16のインターフェース使用状況を表すステータスになっている。
【0064】
図8(a)、(d)に示す「STA:NORMAL」は、まだ印刷が行われていない状態で印刷を指示できる状況である場合、あるいは既にセッションが成立しているPCでGetDeviceIDを実行した場合に戻されるインターフェースのステータスになり、図5で示したステータスが表示される。セッションを確立する以前の状態でSTAがNORMALであれば、セッションを確立し印刷データを送ることができる状況であることが分かる。
【0065】
図8(b)、(d)に示す「STA:IFBUSY」は別のインターフェースが使用中で印刷ができず、プリンタ14の情報も得られない状態であることを示している。これは、図6のメッセージ領域52に表示されるインターフェースの状況である。この場合には、セッションを確立することができないので、IFBUSYでなくなるまで待つことになる。
【0066】
図8(e)に示す「STA:HOSTBUSY」は同一・同種インターフェースが使用中で印刷ができないが、プリンタ14の情報は得られる状態であることを示している。これは図7のメッセージ領域52に表示されるインターフェースの状況である。この場合には、セッションを確立することができないので、HOSTBUSYでなくなるまで待つことになるが、プリンタ14のステータスを表示することはできる。
【0067】
「(7)GetStatus」((7)は説明のためのものである)は、PCで発行されるGetStatusのコマンドを示した図である。
【0068】
このコマンドは、プリンタ14の詳細情報(例えばインク残量など)を取得するためのコマンドであり、図5及び図7のインク残量54〜57、ホスト名58などを表示するために用いられる。
【0069】
「(8)HOSTNAME:PC1;DOCUMENTNAME:TEXT1;TOTALPAGE:4;PRINTPAGE:2;C−INK:75;M−INK:50;Y−INK:50;K−INK:100;」((8)は説明のためのものである)は、PCで発行されるGetSatusのコマンドで得られるステータスであり、GetStatusコマンドに対して戻される情報を表したものである。
【0070】
HOSTNAME、DOCUMENTNAME、TOTALPAGE、PRINTPAGE、C−INK、M−INK、Y−INK、K−INKに関する情報が含まれている。HOSTNAME、DOCUMENTNAME、TOTALPAGEは、SessionStartコマンドで説明した内容と同じであり、PRINTPAGEは現在の印刷ページ番号を示している。(8)の例では2ページ目を印刷中であるということが分かる。この情報は、図5及び図7で510の印刷ページの情報を表示することに使用される。
【0071】
C−INKはシアンインクの残量を示す情報であり、各インクの情報は0〜100までの値を取り、インク残量をパーセンテージで表している。(8)の例では75の値が戻されていて75%のインクが残っていることを表している。この情報は、図5及び図7で54のシアンインクの残量情報を表示することに使用される。
【0072】
同様に、M−INKはマゼンダインクの残量、Y−INKはイエローインクの残量、K−INKはブラックインクの残量情報をそれぞれ示している。それぞれの残量に合わせた表示(55,56,57)がステータスモニタで行われ、ユーザはインク残量を視覚的に知ることができる。
【0073】
「(9)WriteDate」((9)は説明のためのものである)は、PCで発行されるWriteDataのコマンドである。
【0074】
このコマンドは、印刷データ転送のためのコマンドであり、印刷データがコマンドに続き送られる。
【0075】
<ホストPCで印刷を行うための処理>
図9〜図11は、ホストPCで印刷を行うための処理を示したフローチャートである。これらのフローチャートに従ったプログラムをPC内の記憶装置に格納し動作することにより、以下の制御方法を実現させることが可能となる。
【0076】
I.印刷ジョブ
図9は、PCで実行される印刷ジョブ転送処理を示したフローチャートであり、ネットワークで印刷する場合とUSBで印刷する場合のフローとなっている。
【0077】
まずステップS1500で、DeviceIDの取得を行う。ネットワークの場合は、(5)及び(6)で示したコマンドを用いて行う。USBの場合はプリンタクラスで規定されているDeviceID取得方法で行う。DeviceID取得の結果として、ネットワーク、USB共に図8で示したDeviceIDの情報が取得できる。
【0078】
次のステップS1501では、取得したDeviceID情報内のSTAの値に設定されている内容をチェックし、値としてIFBUSYが設定されているかどうかをチェックする。他のインターフェース使用中を示すIFBUSYが設定されていた場合は、ステップS1502へ進み、図6で示したステータスを表示する。他のインターフェース使用中だけの情報しか得ることができないので、その他のインク残量情報などを表示することはできないため、図6に示した画面表示になる。
【0079】
続いてステップS1503へ進み数秒程度ウェイトし、ステップS1500へ戻る。ステップS1503でウェイトするのは、頻繁にDeviceIDの取得を行わないようにするためであり、ある程度間隔を置いてDeviceIDの取得を行うようにする。
【0080】
前記ステップS1501で他のインターフェース使用中でない場合は、ステップS1504へ進みGetStatusを実行する。GetStatusは、ネットワークの場合には、(7)で示したGetStatusのコマンドを使用して行われ、USBの場合には、プリンタアダプタ16からUSB規格で規定されているデータ取得方法(データ読み出し用EndpointへのBulk In)で行われる。GetStatus取得の結果として、ネットワーク、USB共に(8)で示したステータスの情報が取得できる。
【0081】
次のステップS1505では、取得したDeviceIDのSTA情報で値として他のホスト使用中が設定されているかどうかをチェックする。他のホスト使用中を示すHOSTBUSYが設定されていた場合は、ステップS1506へ進み図7に示したステータスを表示する。この場合、ステップS1504でステータス情報を取得しているので(8)に示した情報が得られていて、図7で示したステータスを表示することができる。しかしこの場合、実際には他のPCが印刷中であるためこのPCからの印刷処理は実行できないので、ステップS1507へ進みウェイトを行いステップS1500へ戻る。
【0082】
ステップS1507は、ステップS1503と同様の処理で現在印刷中のPCからの印刷が終了し印刷できるようになるまで待つための処理になる。ステップS1505で他のホスト使用中でない場合、すなわちSTAが図8(a)、(d)で示したNORMALであった場合にはステップS1508へ進む。
【0083】
ステップS1508では、図5に示したステータスの表示を行い、印刷が実行可能なのでステップS1509で進み印刷データの転送処理を行う。印刷データ転送処理は図10及び図11のフローチャートで説明を行う。そしてステップS1510において、ジョブの完了かどうかをチェックし、完了であれば戻りとなり、完了でなければステップS1500へ戻る。
【0084】
II.ネットワークでのデータ転送
図10は、図9のステップS1509におけるネットワーク印刷データ転送処理を示したフローチャートである。
【0085】
まずステップS1600において、セッションを成立するためにSessionStartコマンドを送信する。SessionStartコマンドは、(1)及び(2)で説明したコマンドであり、印刷データを送るためにセッションの成立をリクエストするコマンドである。
【0086】
次にステップS1601へ進みSessionStartコマンドが成功したかどうかをチェックする。何らかの理由によりセッションが確立できない場合は、SessionStartの戻りとして失敗が戻される。この場合、データ転送処理を終了して戻りとなる。
【0087】
ステップS1601でSessionStartが成功した場合は、ステップS1602へ進み印刷データを転送するコマンドWriteDataを実行する。WriteDataは、(9)で説明したが、印刷データをプリンタアダプタ16へ送信するためのコマンドであり、同時に印刷データが送信される。
【0088】
次にステップS1603へ進み印刷データが全て転送されたかどうかをチェックする。全てのデータが転送されていない場合は、ステップS1604へ進み次のデータを準備してステップS1602へ戻る。
【0089】
ステップS1602では、WriteDataのコマンドはある限られた量のデータを1回のコマンドで送ることができ、1回のWriteDataで送りきれないデータ量の場合、複数回のWriteDataコマンドに分けて転送を繰り返し行う。ステップS1603で全ての印刷データが転送された場合はステップS1605へ進みジョブの完了を戻り値とする。
【0090】
III.USBでのデータ転送
図11は、図9のステップS1509におけるUSB印刷データ転送処理を示したフローチャートである。
【0091】
まずステップS1700では、印刷データを転送するためにUSB規格で規定されているデータ書き込み方法(データ書き込みEndpointへのBulkOut)を用いて印刷データの転送を行う。次にステップS1701へ進みBulk Outが成功したかどうかをチェックする。これは、Bulk Outに対するACK、NACKの判定で行われる。NACKが戻された場合は、ステップS1700へ戻り、再度データの転送を試みる。ステップS1701でNACKでない場合は、次のステップS1702へ進み印刷データが全て転送されたかどうかをチェックする。全てのデータが転送されていない場合はステップS1703へ進み次のデータを準備しステップS1700へ戻る。
【0092】
Bulk Outでは、ある限られた量のデータを1回で送ることができ、1回のBulk Outで送りきれないデータ量の場合は、複数回のBulk Outに分けて転送を繰り返し行う。ステップS1702で全ての印刷データが転送された場合はステップS1704へ進みジョブの完了を戻り値とする。
【0093】
以上、図5〜図11を用いて説明したように、プリンタアダプタ16にネットワーク(有線・無線インターフェース)で接続されたPCと、USBで接続されたPC、またプリンタ14へ直接IEEE1284などのローカルインターフェースで接続されたPCにおいて、プリンタアダプタ16またはプリンタ14から戻されるDeviceIDの情報に従って現在のインターフェースの使用状況をステータスとして表示することができる。すなわち、DeviceIDの情報に従ってプリンタの詳細情報を得ることができる場合とできない場合とが判別され、詳細情報を得ることができる場合は詳細のステータス情報を得て、それら情報を反映したステータスをユーザに知らしめるための表示を行う。また、印刷データの転送が可能であることが判断された場合は印刷データの転送を開始することができる。
【0094】
ユーザはステータスモニタで印刷中の状況を知ることができると共に、他のユーザが使用中で印刷が待たされている状態であることと、現在行われている印刷とプリンタの状態に関する情報を知ることができる。また同時に情報を取得できないインターフェースを使用して印刷が行われている場合にもその状況を知ることができる。
【0095】
<プリンタアダプタ16側の処理>
図13〜図19は、図5〜図11で説明したホストPCでの印刷処理を実現するためのプリンタアダプタ16側での処理を説明するためのフローチャートである。これらのフローチャートに従ったプログラムをプリンタアダプタ16内のROM32に格納し動作することにより、以下の制御方法を実現させることが可能となる。
【0096】
I.コマンド等のデータ類
「(10)USBGetDeviceID」((10)は説明のためのものである)は、プリンタアダプタ16で発行されるUSBGetDeviceIDのコマンドである。
【0097】
このコマンドは、プリンタアダプタ16からUSBで接続されたプリンタ14へDeviceIDを取得するために送られるコマンドであり、実際にはUSBプリンタクラスで規定されているDeviceID取得方法を実行し、プリンタ14からDeviceIDを取得するものである。
【0098】
図12(a)〜(d)は、プリンタアダプタ16でのUSBGetDeviceIDのコマンドで得られるDeviceIDを示した図であり、(10)で示したUSBGetDeviceIDのコマンドで返送されるDeviceIDの内容を表している。
【0099】
同図(a)、(b)は、ネットワークに対応していない従来型のプリンタでのDeviceIDを示し、同図(c)、(d)はネットワークに対応しているプリンタでのDeviceIDを示している。
【0100】
ここで、戻されるDeviceIDの内容は、IEEE1284で決められているDeviceIDと同様のものに、拡張された情報を加えて構成されている。
【0101】
図12(a)、(b)、(c)、(d)において、「MFG:ABCDE;CMD:TEXT;MDL:BJ−1000;CLS:PRINTER;」までは、IEEE1284でのDeviceIDと同じ内容である。「STA:」以降が拡張されたもので、プリンタ14のインターフェース使用状況を表すステータスになっている。内容に関しては図8で説明した内容と同様である。
【0102】
図12(a)、(c)の「STA:NORMAL」は、まだ印刷が行われていない状態で印刷を指示できる状況を示し、図12(b)、(d)の「STA:IFBUSY」は他のインターフェースが使用中で印刷ができず、プリンタの情報も得られない状態であることを示している。これは、図4でノートPC41からプリンタ14への印刷が既に行われている状況下で、プリンタアダプタ16からUSBでDeviceIDを取得した場合か、逆にプリンタアダプタ16に接続されたいずれかのPCから印刷が行われ、印刷データをUSBで転送中にノートPC41からIEEE1284経由でDeviceIDを取得した場合に戻される。
【0103】
プリンタアダプタ16では、図12(b)、(d)のIFBUSYが戻された場合、現在プリンタ14が使用中で印刷が実行できない状態にあることを知ることができる。
【0104】
「(11)USBGetStatus」((11)は説明のためのものである)は、プリンタアダプタ16で発行されるUSBGetStatusのコマンドである。
【0105】
このコマンドは、プリンタアダプタ16からUSBで接続されたプリンタ14へステータスを取得するために送られるコマンドであり、実際にはUSBの規格で規定されているデータ取得方法(データを読み出すためのEndpointへのBulk In)で行われる。USBGetStatus取得の結果として(12)で示したステータスの情報が取得できる。
【0106】
「(12)PRINTPAGE:2;C−INK:75;M−INK:50;Y−INK:50;K−INK:100;」((12)は説明のためのものである)は、プリンタアダプタで発行されるUSBGetStatusのコマンドで得られるステータスである。
【0107】
このステータスには、PRINTPAGE、C−INK、M−INK、Y−INK、K−INKに関する情報が含まれている。PRINTPAGEは現在の印刷ページ番号を示している。(12)の例では2ページ目を印刷中となる。C−INKはシアンインクの残量を示す情報で0〜100までの値を採り、インク残量をパーセンテージで表している。(12)の例では75の値が戻されていて75%のインクが残っていることを表している。同様にM−INKはマゼンダインクの残量、Y−INKはイエローインクの残量、K−INKはブラックインクの残量情報をそれぞれ示している。(12)の例では、マゼンダインクが残量50%、イエローインクが残量50%、ブラックインクが残量100%であることが示されている。
【0108】
以降フローチャートに従いプリンタアダプタ16での印刷処理を詳細に説明する。
【0109】
II.プリンタアダプタ16側の印刷処理全体フロー
図13は、プリンタアダプタ16側の印刷処理の全体フローを示すフローチャートである。
【0110】
まずステップS2200では、USBからの印刷リクエストがあるかどうかをチェックする。このチェックは、図4でノートPC42がプリンタアダプタ16とUSBインターフェースで接続されてノートPC42からの印刷データ転送が行われているかどうかの判断となる。USBでの印刷データの転送はUSB規格で規定されているデータ書き込み方法(データ書き込みEndpointへのBulk Out)を用いて行われ、このデータ書き込みが開始されたことがUSBでの印刷リクエストがあったことになる。
【0111】
ステップS2200でUSBインターフェースからの印刷リクエストがあった場合はステップS2201へ進み、USBでの印刷動作実行中を示すUSB使用中フラグをオンとする。
【0112】
次のステップS2202では、USBの印刷処理を実行し印刷を行う。USBの印刷処理については図15のフローチャートで説明する。USBでの印刷処理が終了すると、ステップS2203へ進みステップS2201でオンにしたUSB使用中フラグをオフにし、ステップS2200へ戻り、次の印刷指示がなされるのを待つ状態になる。
【0113】
ステップS2200でUSBのリクエストがない場合は、ステップS2204へ進みネットワークからの印刷リクエストがあるかどうかをチェックする。このチェックは、図4で無線LANあるいは有線LANでプリンタアダプタ16と接続されているノートPC11、PC12、PC43、PC44から印刷データの転送を開始するために、データ転送のセッションを成立させるコマンドが着いたかどうかで判断する。具体的には(1)及び(2)で説明したSessionStartコマンドが送信されてきたかどうかで行われる。
【0114】
前記ステップS2204でネットワークからの印刷リクエストでない場合は、リクエスト待ちとなり、ステップS2200へ戻る。ステップS2204でネットワークからのリクエストであった場合は、ステップS2205へ進みネットワークでの印刷動作実行中を示すネットワーク使用中フラグをオンとする。
【0115】
次のステップS2206では、ネットワークの印刷処理を実行し印刷を行う。ネットワークの印刷処理については図14のフローチャートで説明する。ネットワークでの印刷処理が終了すると、ステップS2207へ進みステップS2205でオンにしたネットワーク使用中フラグをオフにし、ステップS2200へ戻り次の印刷指示がなされるのを待つ状態になる。
【0116】
III.ネットワーク印刷処理の詳細
図14は、図13のステップS2206に示したネットワーク印刷処理を詳細に説明するフローチャートである。
【0117】
まずステップS2300では、ネットワークで送られてきたコマンドの取得を行う。本実施形態では、(1)、(2)、(3)、(4)、(5)、(6)、(7)及び(9)で説明したネットワークのコマンドがあり、これらのコマンドがPCから送られて印刷が実行される。次にステップS2301へ進み、コマンドがGetDeviceIDのコマンドであるかどうかをチェックする。GetDeviceIDのコマンドは(5)及び(6)で説明したコマンドであり、プリンタアダプタ16からDeviceIDを取得するコマンドとなる。
【0118】
ステップS2301においてGetDeviceIDのコマンドであると判定された場合は、ステップS2302へ進み、プリンタアダプタ16から戻されるDeviceIDの基になるDeviceIDをプリンタ14から取得し、リクエストのあったPCへDeviceIDを返送する処理(ネットワークGetDeviceID処理)になる。処理の詳細は図16のフローチャートで説明を行う。このネットワークGetDeviceID処理では、USBでプリンタ14へDeviceID取得を行い、プリンタ14から受取ったDeviceIDにプリンタアダプタ16でのインターフェース状況を加味してPCへ返送する処理を行う。図8で説明したDeviceIDの情報がPCへ戻される。
【0119】
次にステップS2300へ戻り次のコマンドを受取る状態となる。ステップS2301でGetDeviceIDのコマンドでなかった場合は、ステップS2303へ進みGetStatusのコマンドかどうかのチェックを行う。GetStatusのコマンドは(7)で説明したコマンドであり、プリンタアダプタ16からステータスを取得するコマンドとなる。
【0120】
ステップS2303でGetStatusのコマンドであると判定された場合はステップS2304へ進み、プリンタアダプタ16から戻されるステータスの基になるステータスをプリンタ14から取得し、リクエストのあったPCへステータスを返送する処理(ネットワークGetStatus処理)になる。処理の詳細は図18のフローチャートで説明を行う。このネットワークGetStatus処理では、USBでプリンタ14へステータス取得を行いプリンタ14から受取ったステータスにプリンタアダプタ16でのステータス状況を加味してPCへ返送する処理を行う。(8)で説明したステータスの情報がPCへ戻される。
【0121】
次にステップS2300へ戻り次のコマンドを受取る状態となる。前記ステップS2303でGetStatusのコマンドでなかった場合はステップS2305へ進み、WriteDataのコマンドかどうかのチェックを行う。ステップS2305でWriteDataのコマンドであると判定された場合は、ステップS2306へ進み、セッションが確立されているかどうかのチェックを行う。これはSessionフラグがオンになっているかどうかで判定される。
【0122】
ステップS2306でSessionフラグがオンでない場合、まだ印刷データを受信できる状態ではないため、受取ったWriteDataのコマンドは無効なコマンドとなり、次にステップS2300へ戻り次のコマンドを受取る状態となる。
【0123】
ステップS2306でSessionフラグがオンでセッションが確立されている場合は、ステップS2307へ進む。ステップS2307ではWriteDataで受取った印刷データをUSBでプリンタ14へ転送するために、USB規格で規定されているデータ書き込み方法(データ書き込み用EndpointへのBulk Out)を用いて印刷データの転送を行う。これでネットワークから受取った印刷データをUSBで接続されたプリンタ14へ転送することができる。
【0124】
次にステップS2300へ戻り次のコマンドを受取る状態となる。ステップS2305でWriteDataコマンドでなかった場合は、ステップS2308へ進み、SessionStartのコマンドかどうかのチェックを行う。ステップS2308でSessionStartのコマンドであると判定された場合は、ステップS2309へ進み、USBで使用中でないかどうかをチェックする。これは図13ステップS2201でオンにされるUSB使用中フラグによって判定される。USB使用中フラグがオンの場合はUSBでの印刷が行われていることを示しているので、SessionStartのコマンドが実行できなかったことを意味する。ステップS2309でUSB使用中でない場合は、ステップS2310へ進み、ネットワークでのセッションが確立できるのでセッションが成立していることを示すセッションフラグをオンとする。
【0125】
次のステップS2311では、SessionStartコマンドのパラメータとして添付された情報((2))を保存する。この保存された情報は、GetStatusコマンドでプリンタアダプタ16からPCへステータスを戻す際にプリンタ14からのステータス情報に付加することに使用される。
【0126】
次にステップS2312へ進みSessionStartコマンドが成功したことをPCへ返信する。ステップS2309でUSB使用中であった場合は、ステップS2313へ進みSessionStartコマンドが失敗したことをPCへ返信し、処理終了の戻りとなる。
【0127】
ステップS2308でSessionStartコマンドでなかった場合は、ステップS2314へ進み、SessionEndのコマンドかどうかのチェックを行う。SessionEndのコマンドであった場合は、ステップS2316へ進む。ステップS2314でSessionEndのコマンドでなかった場合は、ステップS2315へ進みセッションが成立しているかどうかをチェックする。セッションが成立していた場合は、ステップS2300へ戻りコマンド取得処理を繰り返し行う。ステップS2315でセッションがオンでない場合は、ステップS2316へ進む。ステップS2316では、セッションフラグをオフにして処理終了の戻りとなる。
【0128】
IV.USB印刷処理の詳細
図15は、図13のステップS2202に示したUSB印刷処理を詳細に説明するフローチャートである。
【0129】
まずステップS2400において、GetDeviceIDのリクエストであるかどうかをチェックする。ステップS2400でGetDeviceIDのコマンドであると判定された場合は、ステップS2401へ進み、プリンタアダプタ16でDeviceIDをプリンタ14から取得しリクエストのあったPCへDeviceIDを返送する処理(USBGetDeviceID処理)になる。処理の詳細は図17のフローチャートで説明を行う。
【0130】
USBGetDeviceID処理では、USBでプリンタ14へDeviceID取得を行い、プリンタ14から受取ったDeviceIDにプリンタアダプタ16でのネットワークインターフェース状況を加味してPCへ返送する処理を行う。図8(a)、(b)、(c)、(d)で説明したDeviceIDの情報がPCへ戻される。USBでは複数のホストPCを接続することができないので図8(e)が戻されることはない。
【0131】
次にステップS2400へ戻り次のリクエストを受取る状態となる。ステップS2400でGetDeviceIDのコマンドでなかった場合は、ステップS2402へ進み、Bulk Inのリクエストかどうかのチェックを行う。Bulk Inのリクエストは、プリンタアダプタ16からステータスを取得するリクエストとなる。ステップS2402でBulk Inのリクエストであると判定された場合は、ステップS2403へ進み、プリンタアダプタ16でのステータスをプリンタ14から取得しリクエストのあったPCへステータスを返送する処理(USBGetStatus処理)になる。処理の詳細は図19のフローチャートで説明を行う。USBGetStatus処理では、USBでプリンタ14へステータス所得を行いPCへ返送する処理を行う。(12)で説明したステータスの情報がPCへ戻される。
【0132】
次にステップS2400へ戻り次のコマンドを受取る状態となる。ステップS2402でBulk Inのリクエストでなかった場合は、ステップS2404へ進み、Bulk Outのリクエストかどうかのチェックを行う。ステップS2404でBulk Outのリクエストであると判定された場合は、ステップS2405へ進み、ネットワークで印刷が行われているかどうかのチェックを行う。これは、図13のステップS2205でオンにされるネットワーク使用中フラグがオンになっているかどうかで判定される。
【0133】
前記ステップS2405でネットワーク使用中フラグがオンでない場合は、USBでの印刷を行うことができる状態であり、ステップS2406では、Bulk Outで受取った印刷データをUSBでプリンタ14へ転送するために、USB規格で規定されているデータ書き込み方法(データ書き込み用EndpointへのBulk Out)を用いて印刷データの転送を行う。これでUSBから受取った印刷データをUSBで接続されたプリンタ14へ転送することができる。
【0134】
次にステップS2400へ戻り次のリクエストを受取る状態となる。ステップS2405においてネットワーク使用中フラグがオンでネットワークからの印刷実行中であった場合は、ステップS2407へ進み、Bulk Outに対してNACKを返送し処理終了の戻りとなる。ステップS2404でBulk Outのリクエストでなかった場合は、ステップS2408へ進み、Bulk Outで転送されるデータがないかどうかをチェックする。USBで印刷を行うような場合には引き続きBulk Outで印刷データが送られてくるため、ステップS2408のチェックで印刷データが存在することになり、ステップS2400への戻りとなり、次のリクエストを受取る状態となる。ステップS2408のチェックで印刷データがない場合は戻りとなり処理が終了する。
【0135】
V.ネットワークGetDeviceID処理の詳細
図16は、図14のステップS2302で説明したネットワークGetDeviceID処理の詳細フローチャートである。
【0136】
まずステップS2500において、USBで接続されたプリンタ14へDeviceIDの取得を行うためのリクエストを行う。このリクエストは、USBのプリンタクラスで規定されているコントロールデータ取得方法(コントロール用Endpointへのデータ取得リクエスト)で行われる。
【0137】
次にステップS2501で、DeviceIDのデータを受取るためにコントロール用Endpointからの読み込みリクエストを行い、DeviceIDをプリンタ14から取得する。図12にプリンタ14から受取ったDeviceIDの詳細を示す。
【0138】
続くステップS2502では、DeviceIDのSTAがIFBUSYであるかどうかをチェックする。プリンタ14から受取ったDeviceIDでSTAがIFBUSYであった場合は、プリンタ14に接続されている他のインターフェースからの印刷が既に行われていることを表していて、ネットワークからの印刷は受け付けられない状態であることを示している。つまり、図4でノートPC41からの印刷が行われていて、プリンタアダプタ16を介した印刷は受け付けられない状態であることを示している。
【0139】
前記ステップS2502でSTAがIFBUSYであった場合は、ステップS2503へ進み、STAはそのままIFBUSYを設定し、ステップS2511へ進む。すなわちプリンタ14から受取ったDeviceIDのSTAがIFBUSYであった場合には、プリンタアダプタ16はSTAの内容を変更することなしにリクエストのあったPCへ返送することになる。
【0140】
前記ステップS2502でSTAがIFBUSYでなかった場合は、ステップS2504へ進み、セッションが成立しているかどうかをチェックする。セッションが成立しているかどうかは、図14のステップS2310でオンにされるセッションフラグがオンかどうかで判断でき、ネットワークで印刷データを送るためにSessionStartコマンドが成功しているかどうかの判定となる。セッションが成立していない場合は新たに印刷を行うためにセッションを成立することが可能であることを示している。
【0141】
前記ステップS2504でセッションがオンの場合は、ステップS2505へ進み、GetDeviceIDで指定されたSESSION−NOとSessionStartで指定されたSESSION−NOとが一致するかどうかをチェックする。それぞれ(1)、(2)、(6)で示している。セッションが成立している場合には、GetDeviceIDで指定されるSESSOIN−NOとSessionStartで指定されるSESSION−NOとは同一の値となる。SESSION−NOの比較によって、セッションが成立しているPCからのGetDeviceIDコマンドであるか、セッションが成立していないPCからのGetDeviceIDコマンドであるかを判定することができる。
【0142】
前記ステップS2505でSESSION−NOが一致した場合は、ステップS2506へ進み、STAはそのままNORMALを設定し、ステップS2511へ進む。すなわちプリンタ14から受取ったDeviceIDのSTAがNORMAL(USB以外のインターフェースの印刷が行われていない)で、且つ印刷を実行中のPCから行われたGetDeiveIDリクエストの場合には、プリンタアダプタ16はSTAの内容を変更することなしにリクエストのあったPCへ返送することになる。
【0143】
前記ステップS2505でSESSION−NOが一致しない場合は、ステップS2507へ進み、CMDがネットワーク対応であるかどうかのチェックを行う。これは、CMDにNWが含まれるかどうかで行われる。ステップS2507でネットワーク対応でない場合は、ステップS2508へ進み、従来型のネットワーク対応プリンタでないことが分かり、STAにはIFBUSYを設定し、ステップS2511へ進む。ネットワーク対応でないプリンタに対してネットワークから、あるPCが印字している場合は、印字している以外のPCではステータスを取得することができないことになる。
【0144】
前記ステップS2507でネットワーク対応であると判定された場合は、ステップS2509へ進みSTAにHOSTBUSYを設定してステップS2511へ進む。SESSION−NOが一致しないPCからのDeviceIDコマンドが来た場合に、ネットワーク対応プリンタであれば、他のホストが印刷中であることを示すHOSTBUSYをリクエストしたPCへ返送することができる。
【0145】
前記ステップS2504でセッションがオンでない場合は、ステップS2510へ進み、STAはそのままNORMALを設定し、ステップS2511へ進む。ステップS2511では、変更されたSTAを、プリンタアダプタ16からのDeviceIDとしてコマンドのリクエストがあったPCへ返送して、処理を終了する。
【0146】
これにより、プリンタ14からのSTAが「NORMAL」である場合でも、Sessionオンでありかつプリンタ14がネットワーク対応でない場合には「STA=IFBUSY」としてDeviceIDを返信し、Sessionオンでありかつプリンタ14がネットワーク対応である場合には「STA=HOSTBUSY」としてDeviceIDを返信する。つまり、他のPCからの印刷データに基づいて印刷が行われていることを通知する場合でも、さらにプリンタの種類に従って通知内容を変更する。
【0147】
VI.USBGetDeviceID処理の詳細
図17は、図15のステップS2401で説明したUSBGetDeviceID処理の詳細フローチャートである。
【0148】
まずステップS2600では、USBで接続されたプリンタ14へDeviceIDの取得を行うためのリクエストを行う。このリクエストは、USBのプリンタクラスで規定されているコントロールデータ取得方法(コントロール用Endpointへのデータ取得リクエスト)で行われる。次のステップS2601では、DeviceIDのデータを受取るためにコントロール用Endpointからのデータ読み込みリクエストを行い、DeviceIDをプリンタ14から取得する。図12(a)、(b)にプリンタ14から受取ったDeviceIDの詳細を示す。
【0149】
続くステップS2602では、DeviceIDのSTAがIFBUSYであるかどうかをチェックする。プリンタ14から受取ったDeviceIDにおいてSTAがIFBUSYであった場合、プリンタ14に接続されている他のインターフェースからの印刷が既に行われていることを表していて、プリンタアダプタ16のUSBからの印刷は受け付けられない状態であることを示している。図4でノートPC41からの印刷が行われていて、プリンタアダプタ16にUSBで接続されたノートPC42からの印刷は受け付けられない状態であることを示している。
【0150】
前記ステップS2602においてSTAがIFBUSYであった場合は、ステップS2604へ進み、STAはそのままIFBUSYを設定し、ステップS2606へ進む。すなわちプリンタ14から受取ったDeviceIDのSTAがIFBUSYであった場合にはプリンタアダプタ16はSTAの内容を変更することなしにリクエストのあったPCへ返送することになる。
【0151】
ステップS2602でSTAがIFBUSYでなかった場合は、ステップS2503へ進み、セッションが成立しているかどうかをチェックする。セッションが成立しているかどうかは図14のステップS2310でオンにされるセッションフラグがオンかどうかで判断でき、既にネットワークで印刷データを送るためにSessionStartコマンドが成功しているかどうかの判定となる。セッションが成立していない場合は新たにUSBでの印刷を行うことが可能であることを示している。
【0152】
ステップS2603でセッションがオンの場合は、ステップS2604へ進み、STAにIFBUSYを設定し、ステップS2606へ進む。この場合は、プリンタアダプタ16にネットワークで接続されたPCから既に印刷が行われていることを示していて、プリンタアダプタ16にUSBで接続されたPCからの印刷は行えず、且つステータスを取得することができないことを示している。ステップS2603でセッションがオンでなければ、ステップS2605へ進みSTAにNORMALを設定し、ステップS2606へ進む。プリンタ14から戻されたSTAがNORMAL(USB以外のインターフェースでの印刷が行われていない)でネットワークからの印刷が行われていない場合は、STAにNORMALを戻し、プリンタアダプタ16にUSBで接続されているPCからの印刷が行える。
【0153】
ステップS2606では、変更されたSTAを、プリンタアダプタ16からのDeviceIDとしてコマンドのリクエストがあったPCへ返送して、処理を終了する。
【0154】
VII.ネットワークGetStatus処理の詳細
図18は、図14に示したステップS2304のネットワークGetStatus処理の詳細フローチャートである。
【0155】
まずステップS2700では、USBで接続されたプリンタ14からステータス情報を取得するためにUSB規格で規定されているデータ取得方法(データ読み込み用のEndpointへのBulk In)が行われ、ステップS2701でプリンタ14からステータス情報を受取ることができる。(12)はプリンタ14から受取るステータス情報を示している。
【0156】
次にステップS2702へ進み、ステップS2701で受取ったステータス情報にネットワークでセッションが成立する際にSessionStartコマンドのパラメータとして受取った情報((2))を追加する。(8)に追加された後のステータス情報が示されている。
【0157】
次のステップS2703では、ステップS2702で追加されたステータス情報を、GetStatusコマンドをリクエストしたPCへ返送し、処理を終了する。
【0158】
VIII.USBGetStatus処理の詳細
図19は、図15ステップS2403のUSBGetStatus処理の詳細フローチャートである。
【0159】
まずステップS2800では、USBで接続されたプリンタ14からステータス情報を取得するためにUSB規格で規定されているデータ取得方法(データ読み込み用のEndpointへのBulk In)が行われ、続くステップS2801では、プリンタ14からステータス情報を受取ることができる。(12)にプリンタ14から受取るステータス情報が示されている。
【0160】
次にステップS2802へ進み、ステップS2701で受取ったステータス情報がBulk InをリクエストしたPCへ返送して、処理を終了する。プリンタ14のステータスがそのままの送り返されることになる。
【0161】
以上、図13〜図19を用いて説明したように、本実施形態によれば、プリンタアダプタ16は、USBで接続されいるプリンタ14から取得したDeviceIDとプリンタアダプタ16自身が持つインターフェースの使用状態とを考慮して追加・変更したDeviceIDを、リクエストのあったPCへ戻すことができる。さらに、USBで接続されいるプリンタ14から取得したステータスとプリンタアダプタ16自身が管理するステータス情報とを考慮して追加・変更したステータスを、リクエストのあったPCへ戻すことができる。
【0162】
したがって、複数のネットワークで接続されたPCに対して、印刷中であるかどうかの情報やプリンタ14の状況等を、印刷しているPCに限らず知らせることができ、プリンタ14が複数のインターフェースを有する場合でも、プリンタアダプタ16と接続されていないインターフェースでの使用状況をPCへ知らせることができる。これにより、ユーザは、1台のプリンタを共有する環境でも、PCにローカルインターフェースで直接接続されたプリンタと同様の使い勝手を提供することができる。
【0163】
また、プリンタ14がネットワークに対応したプリンタであるかどうかを判定して異なる情報をPCへ戻すようにしたので、ネットワークに対応していないプリンタでは、誤動作なく従来通りの動作をすることができ、ネットワーク対応したプリンタでは、より使い勝手の良い印刷環境を実現することができる。
【0164】
また本実施形態では、プリンタ14とプリンタアダプタ16をUSBインターフェースを用いて接続したが、USBインターフェースと同様な機能を実現できるものであればこの限りではない。さらに、無線LANとして802.11bを使用したが、無線LANを実現するものであればこの限りではない。
【0165】
なお、上述した図9〜図11のフローチャートに従ったプログラムをPC内の記憶装置に格納し動作することにより、上述の制御方法を実現させることが可能となる。
【0166】
本発明は、上述した実施形態の装置に限定されず、複数の機器から構成されるシステムに適用しても、1つの機器から成る装置に適用してもよい。前述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体をシステムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、完成されることは言うまでもない。
【0167】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMを用いることができる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0168】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、次のプログラムコードの指示に基づき、その拡張機能を拡張ボードや拡張ユニットに備わるCPUなどが処理を行って実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0169】
【発明の効果】
以上詳細に説明したように、本願発明によれば、1台のデバイスを複数の情報処理装置で共有する環境においても、複数の情報処理装置のぞれぞれに対して適切なデバイス情報を提供するとともに、異なるタイプのデバイスのそれぞれに関して適切なデバイス情報を提供できる。
【0170】
また、発明によれば、1台のデバイスを複数の情報処理装置で共有する環境においても、デバイスを使用していない情報処理装置から送られたリクエストに応えて、適切なデバイス情報を送信することが可能になる。
【0171】
また、発明によれば、ネットワークに対応していないデバイスでは従来通り不具合なく動作させることができ、ネットワーク対応型のデバイスでは、リクエストを行った情報処理装置に対して適切なデバイス情報を送信することができる。
【図面の簡単な説明】
【図1】本発明の実施の一形態に係るデータ処理装置を有する印刷システムの一構成例を示すブロック図である。
【図2】図1のプリンタアダプタ16の外観を示した図である。
【図3】プリンタアダプタ16の内部ブロック構成を示した図である。
【図4】実施形態で接続可能な全ての組み合わせで構成した印刷システムのシステム構成図である。
【図5】印刷実行中におけるステータスモニタの表示内容を示す画面図である。
【図6】他のインターフェースで印刷実行中におけるステータスモニタの表示内容を示した画面図である。
【図7】他のPCで印刷実行中におけるステータスモニタの表示内容を示した画面図である。
【図8】GetDeviceIDのコマンドで得られるDeviceIDを示した図である。
【図9】PCで実行される印刷ジョブを説明するフローチャートである。
【図10】PCで実行されるネットワーク印刷データ転送処理を説明するフローチャートである。
【図11】PCで実行されるUSB印刷データ転送処理を説明するフローチャートである。
【図12】プリンタアダプタで発行されるUSBGetDeviceIDのコマンドで得られるDeviceIDを示した図である。
【図13】プリンタアダプタ側の印刷処理の全体フローを示すフローチャートである。
【図14】プリンタアダプタ側のネットワーク印刷処理を説明するフローチャートである。
【図15】プリンタアダプタ側のUSB印刷処理を説明するフローチャートを示した図である。
【図16】プリンタアダプタ側のネットワークUSBGetDeviceID処理を説明するフローチャートである。
【図17】プリンタアダプタ側のUSBGetDeviceID処理を説明するフローチャートである。
【図18】プリンタアダプタ側のネットワークGetStatus処理を説明するフローチャートである。
【図19】プリンタアダプタ側のUSBGetStatus処理を説明するフローチャートである。
【符号の説明】
11,12,13,41,42 ノートPC
14 プリンタ
15 アクセスポイント
16 プリンタアダプタ
18 無線LANカード

Claims (5)

  1. デバイスと第1のインターフェースを介して接続されると共に、前記第1のインターフェースとは異なる第2のインターフェースを介して複数の情報処理装置と接続されたデータ処理装置において、
    前記複数の情報処理装置のいずれかから送られてきたリクエストに従って、前記デバイスの状況を示すデバイス情報を前記デバイスから取得する取得手段と、
    前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一であるか否かを判断する判断手段と、
    前記取得手段取得したデバイス情報の内容を、前記判断手段による判断の結果に従って変更する変更手段と、
    前記変更手段により内容が変更されたデバイス情報を、前記リクエストを送った情報処理装置へ送信する送信手段と、を備え、
    前記変更手段は、前記取得手段が取得したデバイス情報が、前記デバイスが現在使用可能であることを示している場合であって、且つ、前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一でないと判断された場合に、前記取得手段が取得したデバイス情報を、前記デバイスが現在使用可能でないことを示すように変更することを特徴とするデータ処理装置。
  2. 前記デバイスがネットワーク対応型のデバイスであるか否かを判定する判定手段を有し、
    前記変更手段は、更に、前記判定手段による判定結果に基づいて、前記デバイス情報の内容を異ならせることを特徴とする請求項1に記載のデータ処理装置。
  3. 前記取得手段が取得したデバイス情報が、前記デバイスが現在使用可能でないことを示している場合は、前記変更手段による前記デバイス情報の変更を行うことなく、前記送信手段が前記リクエストを送った情報処理装置へ送信することを特徴とする請求項1または2に記載のデータ処理装置。
  4. デバイスと第1のインターフェースを介して接続されると共に、前記第1のインターフェースとは異なる第2のインターフェースを介して複数の情報処理装置と接続されたデータ処理装置の制御方法において、
    前記複数の情報処理装置のいずれかから送られてきたリクエストを受信するステップと、
    前記リクエストに従って、前記デバイスの状況を示すデバイス情報を前記デバイスから取得する取得ステップと、
    前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一であるか否かを判断する判断ステップと、
    前記デバイスから取得したデバイス情報の内容を、前記判断ステップによる判断の結果に従って変更する変更ステップと、
    前記変更ステップにより変更されたデバイス情報を、前記リクエストを送った情報処理装置へ送信するステップとを有し、
    前記変更ステップは、前記取得ステップで取得したデバイス情報が、前記デバイスが現在使用可能であることを示している場合であって、且つ、前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一でないと判断された場合に、前記取得ステップで取得したデバイス情報を、前記デバイスが現在使用可能でないことを示すように変更することを特徴とするデータ処理装置の制御方法。
  5. デバイスと第1のインターフェースを介して接続されると共に、前記第1のインターフェースとは異なる第2のインターフェースを介して複数の情報処理装置と接続されたデータ処理装置を制御するためのコンピュータで読み取り可能な制御プログラムであって、
    前記複数の情報処理装置のいずれかから送られてきたリクエストに従って、前記デバイスの状況を示すデバイス情報を前記デバイスから取得する取得ステップと、
    前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一であるか否かを判断する判断ステップと、
    前記取得ステップ取得したデバイス情報の内容を、前記判断ステップによる判断の結果に従って変更する変更ステップと、
    前記変更ステップにより内容が変更されたデバイス情報を、前記リクエストを送った情報処理装置へ送信する送信ステップとを有し、
    前記変更ステップは、前記取得ステップが取得したデバイス情報が、前記デバイスが現在使用可能であることを示している場合であって、且つ、前記リクエストを送った情報処理装置と、前記デバイスと現在通信中の情報処理装置とが同一でないと判断された場合に、前記取得ステップが取得したデバイス情報を、前記デバイスが現在使用可能でないことを示すように変更することを特徴とする制御プロクラム。
JP2003177053A 2003-06-20 2003-06-20 データ処理装置、その制御方法、及び制御プログラム Expired - Fee Related JP4323876B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003177053A JP4323876B2 (ja) 2003-06-20 2003-06-20 データ処理装置、その制御方法、及び制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003177053A JP4323876B2 (ja) 2003-06-20 2003-06-20 データ処理装置、その制御方法、及び制御プログラム

Publications (3)

Publication Number Publication Date
JP2005011246A JP2005011246A (ja) 2005-01-13
JP2005011246A5 JP2005011246A5 (ja) 2006-08-03
JP4323876B2 true JP4323876B2 (ja) 2009-09-02

Family

ID=34099750

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003177053A Expired - Fee Related JP4323876B2 (ja) 2003-06-20 2003-06-20 データ処理装置、その制御方法、及び制御プログラム

Country Status (1)

Country Link
JP (1) JP4323876B2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006209170A (ja) * 2005-01-25 2006-08-10 Canon Inc 中継装置及びその制御方法並びに印刷システム
JP4367941B2 (ja) * 2005-01-25 2009-11-18 キヤノン株式会社 中継装置、画像供給装置及び印刷システムとその制御方法
JP4356997B2 (ja) 2005-03-15 2009-11-04 キヤノン株式会社 通信装置及びその通信方法
JP4502389B2 (ja) 2005-03-15 2010-07-14 キヤノン株式会社 通信装置及びその制御方法
JP4366323B2 (ja) 2005-03-15 2009-11-18 キヤノン株式会社 通信装置およびその制御方法
JP4683629B2 (ja) * 2005-07-04 2011-05-18 キヤノン株式会社 プロトコル変換装置及びその制御方法
JP4944050B2 (ja) * 2008-02-05 2012-05-30 京セラミタ株式会社 画像形成装置に対する拡張ui対応確認方法並びにこの方法が用いられる拡張ui装置及び画像形成システム
JP5495638B2 (ja) * 2009-07-03 2014-05-21 キヤノン株式会社 情報処理装置、情報処理方法、制御プログラム
JP5845142B2 (ja) * 2012-06-06 2016-01-20 日本電信電話株式会社 郵便物回収システム
JP6011167B2 (ja) 2012-09-03 2016-10-19 ブラザー工業株式会社 通信中継プログラム、及び、通信中継装置
JP6167502B2 (ja) * 2012-10-31 2017-07-26 ブラザー工業株式会社 通信中継プログラム、通信中継装置、及び、画像処理装置
CN112764695B (zh) * 2021-01-18 2024-04-19 内蒙古恒鼎计算机系统有限公司 一种打印机适配器主机及系统

Also Published As

Publication number Publication date
JP2005011246A (ja) 2005-01-13

Similar Documents

Publication Publication Date Title
JP4323876B2 (ja) データ処理装置、その制御方法、及び制御プログラム
CN101459563B (zh) 无线通信系统、以及无线通信装置和控制方法
US7826085B2 (en) Image-forming system and image-forming apparatus used in the image-forming system
JP4827445B2 (ja) 周辺装置制御システム及びその制御方法及び情報処理装置、並びに、コンピュータプログラム
JP5247834B2 (ja) 無線通信装置及びその制御方法及びコンピュータプログラム
CA2229472A1 (en) Data communication apparatus and method
JP4075885B2 (ja) 通信装置及びプログラム並びに通信装置の設定方法
JP2011040043A (ja) 画像形成装置、画像形成システムおよび画像形成方法
JP2004078359A (ja) ネットワーク装置、及びデバイスの共有方法
CN103402191A (zh) 主机、主机和设备的通信方法、可读介质和无线连接系统
CN105848191A (zh) 通信装置及控制方法
EP1755031A2 (en) Information processing method and apparatus
JP2006054577A (ja) 無線ネットワークシステム、無線通信装置、及び接続設定方法
JP2002077211A (ja) 情報処理装置およびその方法、並びに、記録媒体
JP2008097226A (ja) 情報処理装置及び情報処理方法
JP2006065681A (ja) 情報処理装置、情報処理システム及び情報処理方法
JP4183271B2 (ja) 無線通信装置及びその制御方法及びコンピュータプログラム
JP5008619B2 (ja) 無線通信装置及びその制御方法及びコンピュータプログラム
WO2005096163A1 (en) Image processing apparatus and image processing system and its control method
JP5797218B2 (ja) 通信装置及びその制御方法及びコンピュータプログラム
JP2005318537A (ja) 画像処理装置及び画像処理システムとその制御方法
JP2006113968A (ja) プリンタドライバ供給ユニット
JP4183265B2 (ja) 無線通信システム、無線通信装置、及びそれらの通信方法、並びにコンピュータプログラム
JP5088181B2 (ja) 印刷システムおよび補助記憶装置およびプリンタ
KR100851117B1 (ko) 정보 처리 방법 및 장치

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060417

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060615

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060615

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20070626

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090420

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090519

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090605

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120612

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120612

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130612

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees