JP3754930B2 - Printer and printer system - Google Patents

Printer and printer system Download PDF

Info

Publication number
JP3754930B2
JP3754930B2 JP2002078890A JP2002078890A JP3754930B2 JP 3754930 B2 JP3754930 B2 JP 3754930B2 JP 2002078890 A JP2002078890 A JP 2002078890A JP 2002078890 A JP2002078890 A JP 2002078890A JP 3754930 B2 JP3754930 B2 JP 3754930B2
Authority
JP
Japan
Prior art keywords
printer
usb
address
host
group
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
JP2002078890A
Other languages
Japanese (ja)
Other versions
JP2003280829A (en
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2002078890A priority Critical patent/JP3754930B2/en
Publication of JP2003280829A publication Critical patent/JP2003280829A/en
Application granted granted Critical
Publication of JP3754930B2 publication Critical patent/JP3754930B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Systems (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、USBインターフェイスを備えたプリンタ及びこのプリンタを備えたプリンタシステムに関する。
【0002】
【従来の技術】
ネットワーク技術の進歩や処理高速化のニーズにより、負荷分散や並列処理による高速化を主目的として、複数のプリンタを相互接続してひとつのプリンタシステムを構築し、特定のホストPC(パーソナルコンピュータ)やサーバから制御を行なうようにしたプリンタシステムが利用されている。
【0003】
一方、ホストPCと周辺機器とを接続するインターフェイス(以下、単に「I/F」という)については、USB(Universal Serial BUS)規格が多用されるようになってきている。このUSBは、パーソナルコンピュータと周辺機器との通信I/Fとして制定された規格である。USBでは、データ転送はホストPC主導で行なわれ、周辺機器はホストPCからの要求に応じる形でデータの送受信を行なう。
【0004】
USBを使用した複数プリンタによるプリンタシステムについては、特開2001-075764公報などに提案されている。
【0005】
また、特開2000-155654公報には、複数部数の印刷を指示されたときに、接続されたプリンタ群に分散印刷を行なわせる技術が開示されている。
【0006】
【発明が解決しようとする課題】
しかしながら、ホストPCとプリンタとをUSBインターフェイスを介して接続する場合、プリンタシステムの各プリンタと1台のホストPCを、ハブ経由でUSBにより繋いで制御することも可能ではあるが、ハブのポート数には限りがあり、またプリンタと直接接続できるUSBケーブルの長さにも制限があり、システム構成が複雑化して実際的ではない。
【0007】
そこで、ホストPCから各プリンタにデータを転送するのではなく、直接プリンタ間でデータを転送できるようにしたいが、特開2001-075764公報に開示の技術では、ホストPCが主導的にデータ転送を制御する必要があり、プリンタ間でデータを転送するには不向きであるという不具合がある。
【0008】
また、特開2000-155654公報に開示の技術では、各プリンタをUSBプリンタとしてホストコンピュータから印刷制御することはできないという不具合がある。
【0009】
この発明の目的は、USBの機能をプリンタシステム内の全てのプリンタが備えていなくても、USBの機能を持たない複数のプリンタをUSBプリンタとしてホストコンピュータから印刷制御することを、簡易なシステム構成、ホストコンピュータ側の簡易な制御により実現することである。
【0010】
この発明の別の目的は、複数プリンタの構成を動的に再構成して柔軟なプリンタシステム利用を可能にできるようにすることである。
【0011】
【課題を解決するための手段】
請求項1に記載の発明は、USB(Universal Serial BUS)インターフェイスを備えていて、ホストコンピュータと通信可能に接続できるプリンタにおいて、本プリンタと接続されている他のプリンタについてUSBのシステム上でのアドレスと実際のアドレスとを対応付けて登録している第1のテーブルと、前記ホストコンピュータから前記他のプリンタに対して前記USBのシステム上でのアドレスを指定して出力された要求を受付ける受付手段と、前記ホストコンピュータから前記他のプリンタに対して前記USBのシステム上でのアドレスを指定して印刷要求があったときは、前記第1のテーブルを参照して当該USBのシステム上でのアドレスを実際のアドレスに変換し当該アドレスが示す前記他のプリンタに前記印刷要求を実行させる印刷手段と、を備えていることを特徴とするプリンタである。
【0012】
したがって、本プリンタと他のプリンタとを接続し、これにホストコンピュータを接続したプリンタシステムを構築した場合に、他のプリンタがUSBの機能を備えていなくても、本プリンタが他のプリンタに代わってホストコンピュータに応答し、ホストコンピュータからUSBのシステム上でのアドレスで他のプリンタに印刷要求がされても本プリンタが当該他のプリンタの実際のアドレスを判別して印刷要求を行なうので、他のプリンタをUSBプリンタとしてホストコンピュータから印刷制御することを、簡易なシステム構成、ホストコンピュータ側の簡易な制御により実現することができる。
【0013】
請求項2に記載の発明は、請求項1に記載のプリンタにおいて、前記第1のテーブルに代えて、USBのシステム上でのアドレスと、本プリンタと接続されUSBインターフェイスを備えていない複数の他のプリンタをグループ化して当該各グループを識別するプリンタグループとを対応付けて登録している第2のテーブルと、前記各プリンタグループと当該プリンタグループが識別する前記各グループに所属する前記他のプリンタにおける実際のアドレスとを対応付けて登録している第3のテーブルと、を備えていて、前記印刷手段は、前記ホストコンピュータから前記他のプリンタに対して前記USBのシステム上でのアドレスを指定して印刷要求があったときは、前記第2及び第3のテーブルを参照して、当該USBのシステム上でのアドレスに対応しているグループに所属する前記他のプリンタに前記印刷要求を実行させること、を特徴とする。
【0014】
したがって、各プリンタをグループ化して、各グループに属するプリンタをそれぞれ単一のUSBデバイスと見立ててホストコンピュータ側から操作することができるので、柔軟なプリンタシステムの利用を可能とすることができる。
【0015】
請求項3に記載の発明は、請求項2に記載のプリンタにおいて、前記印刷手段は、前記ホストコンピュータから前記他のプリンタに対して前記USBのシステム上でのアドレスを指定して印刷要求があったときは、前記第2及び第3のテーブルを参照して、当該USBのシステム上でのアドレスに対応しているグループに所属する他のプリンタに印刷の実行が可能か否か問い合わせ、印刷可能な他のプリンタに対して前記印刷要求を実行させること、を特徴とする。
【0016】
したがって、指定されたグループに属するプリンタのうち印刷可能なプリンタに印刷を実行させて、柔軟なプリンタシステムの利用を可能とすることができる。
【0017】
請求項4に記載の発明は、請求項3に記載のプリンタにおいて、前記印刷可能な他のプリンタに対して前記印刷要求を実行させるときは、実際にどのプリンタに前記印刷要求を実行させたかを前記ホストコンピュータに通知する通知手段を備えていること、を特徴とする。
【0018】
したがって、印刷要求したユーザは印刷出力がどのプリンタからなされるのかを知ることができる。
【0019】
請求項5に記載の発明は、請求項2又は3に記載のプリンタにおいて、前記ホストコンピュータから前記グループの構成の変更要求を受付けて、その要求にしたがって前記第2及び第3のテーブルの登録の内容を変更する変更手段を備えていること、を特徴とする。
【0020】
したがって、グループ構成の登録を動的に再編成することを可能として、柔軟なプリンタシステムの利用を可能とすることができる。
【0021】
請求項6に記載の発明は、互いに接続された複数台のプリンタとホストコンピュータとを接続して構成されるプリンタシステムにおいて、前記複数台のプリンタのうち少なくとも一台は請求項1〜5の何れかの一に記載のプリンタであること、を特徴とするプリンタシステムである。
【0022】
したがって、請求項1〜5の何れかの一に記載の発明と同様の作用、効果を奏する。
【0023】
【発明の実施の形態】
この発明の一実施の形態について説明する。
【0024】
[USBについて]
まず、USB規格について説明する。
【0025】
USB規格のRevision1.1では、LS(Low-Speed 1.5Mbps)およびFS(Full-Speed 12Mbps)の2種の通信速度を規定し、Revision2.0では、HS(High-Speed 480Mbps)が新たに規定された。
【0026】
転送モードについては、周辺機器の情報をホストPCに通知し、あるいは構成変更を受信するための「コントロール転送」、転送の誤り制御は行なわないが転送バンド幅を保証する「アイソクロナス転送」、転送バンド幅は保証しないが誤り制御を行なう「バルク転送」、及び低速で少量なデータを一定間隔で転送する「割り込み転送」の4つがある。
【0027】
USBでは、ハブを介してホストPCとツリー状にバス接続された複数の周辺機器は、ハブを含めてそれぞれにUSBアドレスがホストPCにより付与される。USBの仕様ではアドレスは0から127まで認識可能で、アドレス0は起動時の初期状態での特殊アドレスである。
【0028】
また、各周辺機器は、複数の「エンドポイント」と呼ばれるUSBのシステムでの通信の端点を持つ。このうち、エンドポイント0はホストPCにデバイスの情報(「ディスクリプタ」とよばれる)を通知し、あるいはホストPCからのディスクリプタ変更を受信するため(コントロール転送用)の特殊端点であり、全てのデバイスが必ず持っている。それ以外のエンドポイントの構成は機器により異なる。例えば、USBプリンタであれば、ホストPCから印刷データを受信するためのエンドポイントとステータスを返すためのエンドポイントを別個にもつ。USBでは「デバイスクラス」と呼ばれるデバイスの種類に応じたエンドポイント構成やディスクリプタの内容を規定しており、同一デバイスの種類をホストPCが統一的に扱うことができるよう配慮されている。
【0029】
USBの動作概要について、図1の通信シーケンス図に沿って説明する。図1では、詳細なハンドシェーク(ACK/NAK等)は省略して、転送の概略のみ示している。ホストPCがUSBを介して接続されたデバイスを認識し、アドレスを付与してデバイスを稼働状態にするまでの過程を「エナミュレーション」と呼ぶ。ホストPCはバスの信号状態によりデバイスの接続を検出すると、バスをリセットしてエナミュレーションの開始をデバイスに通知する。続いて、デバイスの情報を得るためのコントロール転送が開始する。具体的には「Get_Descriptor」リクエストをデバイスに送信して、デバイスは指定されたディスクリプタをホストPCに返信する。これにより、ホストPCは接続されたデバイスの素性がわかるので、対応するデバイスドライバの起動が可能になる。ホストPCは、「Set_Address」により、このデバイスに空いているアドレスを付与し、今後、このデバイスとはこのアドレスを介して通信する。
【0030】
この他、「Set_Descriptor」や「Set_Configuration」といったホストPCからのコマンドによりデバイスが実際に稼働状態になる。
【0031】
USB機器の数の拡張については、USBはハブを介してツリー状にバスを拡張することを特徴とする。ハブはホストPC側からのパケットをデバイス側ポートに接続された複数のデバイスにブロードキャストし、デバイスからのパケットを、ホストPC側ポートを介してホストPCに通知する。
【0032】
次に、図2の通信シーケンス図に沿って、ハブとハブに接続されたデバイスが認識される流れについて説明する。
【0033】
ハブもホストPCから見てUSBデバイスのひとつとして扱われる。ハブに複数デバイスが接続されたシステムでは、まずハブに対するエナミュレーションが実行され、ハブとしての機能が有効になった後で接続されたデバイスのエナミュレーションが順次実行される。具体的には、ハブが持つ各デバイス側ポートについて、デバイスが接続されていた場合にポートステータスを変更し、ホストPCから定期的に発行されるステータス要求に対してこのポートステータスを返す、デバイスの転送速度はハブとデバイス間で接続時に確定する。ホストPCはポートステータスが変化したのを検出して、デバイスの新規接続であれば新たにエナミュレーションを実施し、デバイスの取り外しであれば当該デバイスを無効化する。エナミュレーション以降、ハブに接続されたデバイスとホストPC間のデータはハブ内をスルーする。
【0034】
[発明の実施の形態1]
一実施の形態を発明の実施の形態1として説明する。
【0035】
図3は、このプリンタシステム1の全体構成を示すブロック図である。図3に示すように、このプリンタシステム1は、複数台のプリンタ2が、プリンタ間インターフェイス(I/F)3を介して、プリンタ間I/Fバス4により接続されている。プリンタ2群のうち一台のプリンタ2は、USBI/F5によりホストコンピュータであるホストPC6と、USBケーブル7を介して接続されている。プリンタ間I/F3で接続された各プリンタ2は、それぞれが一意のアドレスを持っており、プリンタ2間の通信は、このアドレスにより所定の宛先にデータ転送ができることを前提としている。
【0036】
各プリンタ2は、図4に示すように、プリンタ間I/F3等の各種I/F11を備え、各種I/F5の制御や画像処理を主機能とするコントローラ12とコントローラ12からの画像データを印刷出力するプロッタ13とを備えている。
【0037】
図5は、コントローラ12の内部の電気的な接続を示すブロック図である。コントローラ12は、I/F制御や画像処理機能をソフトウェアとハードウェアにより行なう。コントローラ12は、各種演算を行いプリンタ2の各部を集中制御するプロセッサ21と、ROM22と、RAM23とを備えている。また、各種I/F11を制御する為にそれぞれに対応したI/Fコントローラ24を備え、I/Fからのデータを、プロセッサ21を介さずにRAM23に転送処理するためにDMAコントローラ(DMAC)25を備えている。
【0038】
画像処理部26は、RAM−to−RAMで画像データを加工し、符号化や伸張処理などの処理を行なう。プロセッサ21側、RAM23側、プロッタ13(のプロッタI/F26)側にも、それぞれのI/Fを制御するI/Fコントローラ27〜29を備え、ソフトウェアでI/Fコントローラ24やDMAC25の内部レジスタを制御できるように、プロセッサバスコントローラ27の先にはPIOコントローラ30を備えている。各種I/F11は、ユーザによって必要であったり不要であったりする場合があるので、オプションとしてモジュール毎の着脱が可能である。
【0039】
プリンタ2による印刷の流れとしては、各種I/F11から受け取った印刷データをDMAC25経由でRAM23にライトし、RAM−to−RAMの画像処理などをおこなった後に、再びDMAC25により、プロッタI/F26に渡して印刷出力を行なう。プリンタ間I/F3を介して、プリンタ2間でのコマンド・ステータスの授受や印刷データの転送も可能である。
【0040】
図6は、I/Fコントローラ24であり、USBI/F5を制御するUSBI/Fコントローラ31の電気的な接続を示すブロック図である。
【0041】
USBのデータ線は、D+/D−のシリアル差動信号であり、USB物理層32は、この信号を受信時はシリアルデータからパラレル変換し、送信時は逆にパラレルデータからシリアル変換して出力する。接続速度に関する処理もUSB物理層32で行なう。USB物理層32に接続されているプロトコル処理部33では、USBプロトコルのハンドシェークを行なう(例えば、要求に対するACKハンドシェークやNAKハンドシェーク、あるいはデータの再送など)。ホストPC6からの転送アドレス、エンドポイントの検出も、プロトコル処理部33でおこなわれ、自身のUSBアドレス宛の要求にのみ応答し、対応するエンドポイントのデータを送出または受信する。プロトコル処理部33には、送信用と受信用の内部バッファ34,35が接続され、ホストPC6からの要求に応じて、ホストPC6からのデータは受信用の内部バッファ34に格納され、ホストPC6へのデータは送信用の内部バッファ35に格納される。
【0042】
これらの内部バッファ34,35は、プリンタ間I/F制御部36、DMACI/F制御部37及びプロセッサI/F制御部38に接続されており、他のプリンタ2へのデータ配信及び他のプリンタ2からのデータ受信が、これらのバッファ内部34,35を介しておこなわれる。また、他のプリンタ2側のソフトウェアが、DMAC25との間のI/FであるDMACI/F39や、プロセッサ21との間のI/FであるプロセッサI/F40を介して、内部バッファ34,35にアクセスすることも可能である。プロセッサI/F制御部38には、コントロールステータスを記憶するコントロールステータスレジスタ45が接続されている。
【0043】
第1のテーブルであるUSBアドレスプリンタアドレス変換テーブル41は、USBのシステム上での各プリンタ2のアドレスと、各プリンタ2の実際のプリンタシステム1でのアドレスと対応付けて記憶し、USBのシステム上でのプリンタ2のアドレスをプリンタ2の実際のプリンタシステム1でのアドレスに変換するRAM等で構成されるテーブルである。USBのシステム上でのアドレス割り当ては、プリンタ2以外のホストPC6に接続されたデバイスも関与して毎回一義的に決まらないため、システム起動毎にUSBアドレスと各プリンタ2のアドレスを対応づける必要がある。
【0044】
プリンタシステム1の初期状態としては、USBI/F5を備えたプリンタ2(以下、USBI/F5を備えたプリンタ2を他のプリンタ2特別して、プリンタ2aという)はホストPC6と接続されていない状態である。そこで、まず電源が投入されているプリンタシステム1内のプリンタ2aをホストPC6に接続してエナミュレーションを実行し、デバイスとして認識させるまでの流れを、図7の通信シーケンス図と図6のブロック図とを参照して説明する。なお、速度確定からエナミュレーションまでの概略は、図1を参照して前記したとおりである。
【0045】
まず、ホストPC6側ではUSB仕様で規定されている電気的特性によりケーブルの接続を検出する。その後、デバイス側とのネゴシエーションにより転送速度(LS/FS/HS)が確定する。
【0046】
続いて、ホストPC6はUSBデバイスの素性が記述されたデバイスディスクリプタを出力するようプリンタ2a側に要求する。
【0047】
プリンタ2a側では、これに応答してプリンタ機器としてのディスクリプタをホストPC6に返信するが(USBI/Fコントローラ31で、送信用の内部バッファ34にDMACI/F39もしくはプロセッサI/F40を介してディスクリプタを記録しておくことで、ホストPC6が要求したときにプロトコル処理部33がこれに応えて内部バッファ34からデータを読み出し、USB物理層32に渡してUSBケーブル7に出力する)、このホストPC6との接続を担うプリンタ2aは、プリンタシステム1の他のプリンタ2群をあたかもUSBデバイスとして見えるようにするため、プリンタ機器のディスクリプタに先立ち、USBハブとしてのディスクリプタを返信する。
【0048】
この処理はプロトコル処理部33で自動的に実行する。そして,まずホストPC6にUSBハブと認識されたあと、プリンタ機器が繋がっているようにホストPC6に見せるため、プロトコル処理部33は、デバイスが接続されたというステータスをハブの機能としてホストPC6に通知する。
【0049】
デバイス接続通知の流れは、図2を参照して前記したとおりである。ホストPC6では、ハブに新規デバイスが接続されたと解釈して、このデバイスに対するエナミュレーションを試み、ディスクリプタの要求を行なう。この要求に対してプリンタ2aは、今度はプリンタ機器としてのディスクリプタで応答し、これにより、ハブとそれに繋がったプリンタ機器として、ホストPC6に認識される。この状態では、USBプリンタが一台だけなので、ホストPC6が印刷を行なう場合、USBで接続されたプリンタ2aだけが印刷データを受け取り、印刷を実行する。
【0050】
以下では、プリンタシステム1の他のプリンタ2をUSBデバイスのようにホストPC6に見せて、このプリンタ2により印刷させるまでの流れを説明する。
【0051】
すなわち、ホストPC6とUSB接続されたプリンタ2aが、上述の動作に引き続き、ハブとしての動作で新たなデバイスの接続があったというステータスをホストPC6に通知して、ホストPC6からのディスクリプタ要求に対して、プリンタ機器としてのディスクリプタを返す、という動作をプリンタシステム1における他のプリンタ2の台数分繰り返すことで(かかるホストPC6とプリンタ2aの通信のやりとりは、図7のとおり)、プリンタシステム1の他のプリンタ2がUSBで接続されたプリンタとして、ホストPC6からUSBのデバイスアドレスを割り当てられて認識される。
【0052】
USBI/Fコントローラでは、プリンタ2aを含めてプリンタ2に新たにUSBアドレスが割り振られる度に、USBアドレスプリンタアドレス変換テーブル41の対応付けを更新する(例えば、プリンタ2aはUSBアドレス2、他のプリンタ2のうちの一台にはUSBアドレス5、など)。
【0053】
印刷の際は、ホストPC6からUSB接続されたプリンタ2aに印刷データが送信される。プリンタ2aは内部バッファ35で受付ける。プリンタ2aでは、この印刷データの宛先のUSBデバイスアドレスにより、プリンタシステム1内のどのプリンタ2宛のデータかを、USBアドレスプリンタアドレス変換テーブル41をルックアップして判定し、プリンタ2a宛のデータでなければ、所定のプリンタアドレスに向けてプリンタ間I/F3を介して転送する。そして、プリンタ間I/F3を介して印刷データを受け取ったプリンタ2が印刷を実行する。かかる処理により、受付手段、印刷手段を実現している。
【0054】
印刷データを転送する前には、プリンタ2aから宛先プリンタ2が印刷可能であるかを問い合わせる。印刷可能であれば、上述のように印刷データを宛先プリンタ2に転送するが、もし既に印刷実行中もしくはトラブルにより印刷可能でない状態であれば、他の印刷可能なプリンタ2に対してデータを転送し、振替印刷を実行する。
【0055】
印刷動作は、通常、印刷データ転送の後に、プリンタ2a側からホストPC6側へのステータスの返信がおこなわれる。実際の印刷を実行したプリンタ2は、プリンタ2aに対して、印刷実行結果を正常、異常問わずにプリンタ間I/F3を介して返信する。この間、ホストPC6からプリンタ2aに対してステータス返信の催促がUSB上でおこなわれる(具体的にはIN転送要求)が、印刷実行したプリンタ2からのステータスが返ってくるまでは、プリンタ2aはホストPC6に対してNAK応答(まだ転送準備ができていないことを示す)を行ない、ステータスが返ってきたら、USBを介してステータスデータをホストPC6に返信する。ホストPC6が要求しているプリンタ2で印刷できずに、前述のように振替印刷を行った場合は、ステータス情報に実際に印刷動作をおこなったプリンタ2の情報を含めることで、ホストPC6のプリンタアプリケーションがユーザに対して結果通知を行なうことができる。
【0056】
プリンタ2aは、入り交じる複数のプリンタ2宛の印刷データとステータス要求を正しく処理するため、送受信用の内部バッファ34,35(RAM等で構成される)を各プリンタ2用に分離し、排他的に使用する。
【0057】
なお、USBアドレスプリンタアドレス変換テーブル41は、プロセッサI/F40を介して書き換えが可能であり(USBアドレス部分を除く)、既に割り当てられたUSBアドレスに対応するプリンタ2を、別のプリンタ2に切り替えることができる(例えばUSBアドレス5のプリンタ2を別のプリンタ2に切り替えるなど)。
【0058】
[発明の実施の形態2]
別の実施の形態を発明の実施の形態2として説明する。
【0059】
以下では、実施の形態1の場合と相違する点を中心に説明し、発明の実施の形態1と同様の回路要素等には同一符号を用い、詳細な説明は省略する。
【0060】
実施の形態1では、USBアドレスと実際のプリンタ2が1対1で対応していたが、この実施の形態2では、複数のプリンタ2をあたかも一台のプリンタのようにホストPC6に見せて、印刷動作を行なわせる。
【0061】
図8は、この実施の形態2のプリンタ2aで使用するUSBI/Fコントローラ31の電気的な接続を示すブロック図である。
【0062】
このUSBI/Fコントローラ31は、実施の形態1におけるUSBI/Fコントローラ31の構成に加え、第2のテーブルであるプリンタグループテーブル42を備えている。このプリンタグループテーブル42は、グループ番号と各プリンタ2のアドレス群が対応づけされて登録されている。実際は、RAM等を使用してグループ番号とプリンタ2のアドレスのリストが列挙される形式(例えば、グループ1は、アドレス2及びアドレス3のプリンタ2、グループ2は、プリンタ2a及びアドレス2のプリンタ2など)となり、プロセッサI/F40を介してプリンタ2側の組み込みソフトウェアが設定可能である。また、USBアドレスプリンタアドレス変換テーブル41に代えて、USBアドレスとプリンタグループ番号とを対応付けて登録している第3のテーブルであるUSBアドレスプリンタグループ変換テーブル43が用意されている。
【0063】
そして、まず、ホストPC6にプリンタシステム1を認識させる流れは基本的に実施の形態1の場合と同様であるが、USBデバイスとしては、プリンタ2の数ではなくグループの数だけホストPC6に接続通知する。
【0064】
これにより、ホストPC6からの印刷データはプリンタグループ宛の印刷データとなるので、USBI/Fコントローラ31は、USBアドレスプリンタグループ変換テーブル43により、USBアドレスをプリンタグループに変換し、プリンタグループの各プリンタ2に印刷可能かどうかを、プリンタ間I/F3を介して問い合わせ、印刷可能なプリンタ2に対して印刷データを転送する。これにより印刷手段を実現している。
【0065】
ステータスには、実際にどのプリンタ2に出力されたかという情報を付加して、ホストPC6のプリンタアプリケーションが印刷出力のされたプリンタ2の別をユーザに通知できるようにする。これにより通知手段を実現している。
【0066】
[発明の実施の形態3]
別の実施の形態を発明の実施の形態3として説明する。
【0067】
以下では、実施の形態2の場合と相違する点を中心に説明し、発明の実施の形態1と同様の回路要素等には同一符号を用い、詳細な説明は省略する。
【0068】
実施の形態2のプリンタシステム1における複数のプリンタ2群をUSBシステム上でひとつのUSB機器に見せるUSBI/Fコントローラ31に対し、この実施の形態3では、ホストPC6側から動的にプリンタグループ構成の変更が可能である。
【0069】
図9は、この実施の形態2のプリンタ2aで使用するUSBI/Fコントローラ31の電気的な接続を示すブロック図である。
【0070】
この実施の形態3でも、プリンタシステム1の初期状態をホストPC6に認識させるまでの流れと印刷動作は、実施の形態2のプリンタシステム1と同様である。図9のUSBI/Fコントローラ31では、図8のUSBI/Fコントローラ31の構成に加えて、グループ構成変更用の内部バッファ44を備えている。USBシステム上で、ホストPC6からのデータ受信用として新たなエンドポイントを定義し、この内部バッファ44で新たなエンドポイント向けデータを受信する。要求を受付けるUSBアドレスは最初に付与されるUSBハブとしてのアドレスで受付けることとする。印刷データとこの新たな受信データの区別は、プロトコル処理部33で行なわれる。
【0071】
ホストPC6のプリンタアプリケーションは、プリンタ2aに対してこのエンドポイントを介して、現在のプリンタグループ構成の問い合わせ要求もしくは新たなグループ構成定義(削除、追加も含む)要求を送信する。これら要求は上述の受信用の内部バッファ44に記憶し、プリンタ2a側のプロセッサ21に対してプロセッサI/F制御部38を介して割り込みを発生して、プリンタ2a側のソフトウェアにより要求内容の解釈を行い、要求に従った処理を実行する。
【0072】
この場合に実行する処理のフローチャートを、図10に示す。すなわち、前述のように、ホストPC6の要求を受信用の内部バッファ44に記憶し、割り込みを発生すると(ステップS1)、プロセッサ21は、受信用の内部バッファ44の読み出しを行い(ステップS2)、そのコマンドを解析して(ステップS3)、以下のような処理を行なう。
【0073】
すなわち、現在のグループ構成の問い合わせであれば(ステップS4のN)、プリンタグループとプリンタアドレスの一覧を送信用の内部バッファ34に書き込み(ステップS5)、ホストPC6からのIN転送要求で、その内容を返信し(ステップS6)、ホストPC6側のプリンタアプリケーションにおいて、グループ構成の情報を取得できるようにする。
【0074】
また、新規グループの追加の場合は(ステップS4のY,S7のY)、新規のグループとプリンタアドレスを内部バッファ44から読み出し(ステップS8)、プリンタグループテーブル42及びUSBアドレスプリンタグループ変換テーブル43に追加する(ステップS9)。必要であれば、そのステータス(成功もしくはエラー)を、送信用バッファを介してホストPC6に通知する。
【0075】
もし、グループ構成の変更によりグループの増減が発生した場合は、USBシステム上でデバイスが追加もしくは削除されたように見せるため、プリンタ2aはホストPC6に対してUSBハブとして、デバイス追加又は削除のポートステータスを通知する(ステップS10)。この後、ホストPC6から新規のプリンタ2のグループに対してエナミュレーションを実行し、プロトコル処理部33が自動応答する。そして、新規のプリンタ2のグループをホストPC6から新規のUSBプリンタトして認識する。
【0076】
また、既存グループの削除要求の場合は(ステップS4のY,S7のN)、プリンタグループテーブル42から当該グループのエントリを削除し(ステップS11)、ステップS10と同様の処理を行なう(ステップS12)。ステップS7〜S12により変更手段を実現している。この後、ホストPC6が、デバイスの削除を検出し、当該デバイス(グループ)を無効化する。
【0077】
【発明の効果】
請求項1に記載の発明は、本プリンタと他のプリンタとを接続し、これにホストコンピュータを接続したプリンタシステムを構築した場合に、他のプリンタをUSBプリンタとしてホストコンピュータから印刷制御することを、簡易なシステム構成、ホストコンピュータ側の簡易な制御により実現することができる。
【0078】
請求項2に記載の発明は、請求項1に記載のプリンタにおいて、各プリンタをグループ化して、柔軟なプリンタシステムの利用を可能とすることができる。
【0079】
請求項3に記載の発明は、請求項2に記載のプリンタにおいて、指定されたグループに属するプリンタのうち印刷可能なプリンタに印刷を実行させて、柔軟なプリンタシステムの利用を可能とすることができる。
【0080】
請求項4に記載の発明は、請求項3に記載のプリンタにおいて、印刷要求したユーザは印刷出力がどのプリンタからなされるのかを知ることができる。
【0081】
請求項5に記載の発明は、請求項2又は3に記載のプリンタにおいて、グループ構成の登録を動的に再編成することを可能として、柔軟なプリンタシステムの利用を可能とすることができる。
【0082】
請求項6に記載の発明は、請求項1〜5の何れかの一に記載の発明と同様の効果を奏する。
【図面の簡単な説明】
【図1】USBのシステムが行なう処理について説明する通信シーケンス図である。
【図2】USBのシステムが行なう処理について説明する通信シーケンス図である。
【図3】実施の形態1であるプリンタシステムの全体構成を示すブロック図である。
【図4】プリンタシステムのプリンタの全体構成を示すブロック図である。
【図5】プリンタのコントローラの電気的な接続を示すブロック図である。
【図6】プリンタのUSBI/Fコントローラの電気的な接続を示すブロック図である。
【図7】プリンタとホストPCとの間の通信シーケンス図である。
【図8】実施の形態2のプリンタのUSBI/Fコントローラの電気的な接続を示すブロック図である。
【図9】実施の形態3のプリンタのUSBI/Fコントローラの電気的な接続を示すブロック図である。
【図10】プリンタのUSBI/Fコントローラが行なう処理のフローチャートである。
【符号の説明】
1 プリンタシステム
2,2a プリンタ
5 USBI/F
6 ホストコンピュータ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a printer including a USB interface and a printer system including the printer.
[0002]
[Prior art]
Due to advances in network technology and the need for higher processing speeds, a single printer system is built by interconnecting multiple printers, with the primary purpose of speeding up load distribution and parallel processing, and a specific host PC (personal computer) A printer system that is controlled from a server is used.
[0003]
On the other hand, the USB (Universal Serial BUS) standard is frequently used for an interface (hereinafter simply referred to as “I / F”) for connecting a host PC and peripheral devices. This USB is a standard established as a communication I / F between a personal computer and peripheral devices. In USB, data transfer is performed under the initiative of the host PC, and peripheral devices transmit and receive data in response to requests from the host PC.
[0004]
A printer system using a plurality of printers using USB is proposed in Japanese Patent Laid-Open No. 2001-075764.
[0005]
Japanese Patent Laid-Open No. 2000-155654 discloses a technique for causing a connected printer group to perform distributed printing when printing of a plurality of copies is instructed.
[0006]
[Problems to be solved by the invention]
However, when the host PC and printer are connected via the USB interface, it is possible to control each printer of the printer system and one host PC by connecting them via USB via a hub. In addition, the length of the USB cable that can be directly connected to the printer is limited, and the system configuration is complicated, which is not practical.
[0007]
Therefore, instead of transferring data from the host PC to each printer, it is desired to be able to transfer data directly between printers. However, in the technology disclosed in Japanese Patent Laid-Open No. 2001-075764, the host PC takes the lead in data transfer. There is a problem that it is necessary to control and is not suitable for transferring data between printers.
[0008]
In addition, the technique disclosed in Japanese Patent Laid-Open No. 2000-155654 has a problem that each printer cannot be controlled as a USB printer from a host computer.
[0009]
An object of the present invention is to provide a simple system configuration for performing print control from a host computer as a USB printer for a plurality of printers having no USB function even if not all printers in the printer system have a USB function. This is realized by simple control on the host computer side.
[0010]
Another object of the present invention is to dynamically reconfigure the configuration of a plurality of printers so that a flexible printer system can be used.
[0011]
[Means for Solving the Problems]
The invention described in claim 1 is a printer having a USB (Universal Serial BUS) interface that can be communicably connected to a host computer, and addresses on the USB system for other printers connected to the printer. And a first table that registers the actual address in association with each other, and a reception unit that receives a request output from the host computer to the other printer by designating an address on the USB system And when there is a print request by designating an address on the USB system to the other printer from the host computer, the address on the USB system is referred to by referring to the first table. Is converted into an actual address, and the other printer indicated by the address is made to execute the print request. A printer characterized in that it comprises a printing means.
[0012]
Therefore, when a printer system is constructed in which this printer is connected to another printer and a host computer is connected to this printer, this printer replaces the other printer even if the other printer does not have a USB function. The printer responds to the host computer, and even if a print request is made from the host computer to another printer with an address on the USB system, the printer determines the actual address of the other printer and makes a print request. Printing control from a host computer as a USB printer can be realized by a simple system configuration and simple control on the host computer side.
[0013]
According to a second aspect of the present invention, in the printer according to the first aspect, instead of the first table, an address on the USB system and a plurality of other devices connected to the printer and not equipped with a USB interface are provided. A second table in which printers are grouped and printer groups that identify the groups are associated and registered, and the other printers belonging to the groups identified by the printer groups and the printer groups A third table that registers and associates actual addresses with the printer, and the printing means designates addresses on the USB system from the host computer to the other printers. When there is a print request, refer to the second and third tables, and on the USB system. Thereby executing the print request to the other printers in the group that corresponds to the address, characterized by.
[0014]
Therefore, since each printer can be grouped and the printers belonging to each group can be operated from the host computer side as if they were each a single USB device, a flexible printer system can be used.
[0015]
According to a third aspect of the present invention, in the printer according to the second aspect, the printing unit makes a print request by designating an address on the USB system from the host computer to the other printer. When the second and third tables are referred, an inquiry is made as to whether other printers belonging to the group corresponding to the address on the USB system can execute printing, and printing is possible. The print request is executed to another printer.
[0016]
Therefore, a flexible printer system can be used by causing a printable printer among the printers belonging to the specified group to execute printing.
[0017]
According to a fourth aspect of the present invention, in the printer according to the third aspect, when the print request is executed with respect to the other printable printer, it is determined which printer has actually executed the print request. It has a notification means for notifying the host computer.
[0018]
Accordingly, the user who has requested printing can know from which printer the print output is made.
[0019]
According to a fifth aspect of the present invention, in the printer according to the second or third aspect, the group configuration change request is received from the host computer and the second and third tables are registered in accordance with the request. It is characterized by comprising changing means for changing the contents.
[0020]
Therefore, the registration of the group configuration can be dynamically reorganized, so that a flexible printer system can be used.
[0021]
According to a sixth aspect of the present invention, in a printer system configured by connecting a plurality of printers connected to each other and a host computer, at least one of the plurality of printers is any one of the first to fifth aspects. A printer system according to claim 1.
[0022]
Therefore, there exists an effect | action similar to the invention as described in any one of Claims 1-5, and an effect.
[0023]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described.
[0024]
[About USB]
First, the USB standard will be described.
[0025]
Revision 1.1 of the USB standard defines two communication speeds, LS (Low-Speed 1.5 Mbps) and FS (Full-Speed 12 Mbps), and Revision 2.0 newly defines HS (High-Speed 480 Mbps). It was done.
[0026]
As for the transfer mode, information on peripheral devices is notified to the host PC or “control transfer” for receiving a configuration change, “isochronous transfer” that does not perform transfer error control but guarantees the transfer bandwidth, transfer band There are four types: “bulk transfer” that does not guarantee the width but performs error control, and “interrupt transfer” that transfers a small amount of data at a low speed at regular intervals.
[0027]
In USB, a plurality of peripheral devices bus-connected to a host PC via a hub are given a USB address to each including the hub by the host PC. In the USB specification, addresses from 0 to 127 can be recognized, and address 0 is a special address in the initial state at the time of activation.
[0028]
Each peripheral device has a plurality of communication endpoints in the USB system called “end points”. Of these, the endpoint 0 is a special endpoint for notifying the host PC of device information (called “descriptor”) or receiving a descriptor change from the host PC (for control transfer). Always have. Other endpoint configurations differ depending on the device. For example, in the case of a USB printer, an end point for receiving print data from the host PC and an end point for returning a status are separately provided. In USB, an endpoint configuration and descriptor contents corresponding to a device type called “device class” are defined, and consideration is given so that the host PC can handle the same device type uniformly.
[0029]
An outline of USB operation will be described with reference to the communication sequence diagram of FIG. In FIG. 1, detailed handshaking (ACK / NAK etc.) is omitted, and only an outline of transfer is shown. The process in which the host PC recognizes a device connected via USB, assigns an address, and puts the device into an operating state is called “enumeration”. When the host PC detects the connection of the device based on the signal state of the bus, the host PC resets the bus and notifies the device of the start of enumeration. Subsequently, control transfer for obtaining device information starts. Specifically, a “Get_Descriptor” request is transmitted to the device, and the device returns the specified descriptor to the host PC. As a result, the host PC knows the identity of the connected device, so that the corresponding device driver can be activated. The host PC gives a free address to this device by “Set_Address”, and will communicate with this device through this address in the future.
[0030]
In addition, the device is actually put into operation by a command from the host PC such as “Set_Descriptor” or “Set_Configuration”.
[0031]
Regarding the expansion of the number of USB devices, the USB is characterized in that the bus is expanded in a tree shape via a hub. The hub broadcasts a packet from the host PC side to a plurality of devices connected to the device side port, and notifies the host PC of the packet from the device via the host PC side port.
[0032]
Next, a flow of recognizing a hub and devices connected to the hub will be described with reference to the communication sequence diagram of FIG.
[0033]
The hub is also treated as one of the USB devices when viewed from the host PC. In a system in which a plurality of devices are connected to a hub, enumeration for the hub is first executed, and enumeration of the connected devices is sequentially executed after the function as the hub is enabled. Specifically, for each device-side port of the hub, the port status is changed when the device is connected, and this port status is returned in response to a status request periodically issued from the host PC. The transfer speed is determined at the time of connection between the hub and the device. The host PC detects that the port status has changed, and performs new enumeration if the device is newly connected, and invalidates the device if the device is removed. After enumeration, data between the device connected to the hub and the host PC passes through the hub.
[0034]
Embodiment 1 of the Invention
One embodiment will be described as a first embodiment of the invention.
[0035]
FIG. 3 is a block diagram showing the overall configuration of the printer system 1. As shown in FIG. 3, in the printer system 1, a plurality of printers 2 are connected by an inter-printer I / F bus 4 via an inter-printer interface (I / F) 3. One printer 2 in the printer 2 group is connected to a host PC 6 which is a host computer via a USB cable 7 via a USB I / F 5. Each printer 2 connected by the inter-printer I / F 3 has a unique address, and communication between the printers 2 is based on the premise that data can be transferred to a predetermined destination using this address.
[0036]
As shown in FIG. 4, each printer 2 includes various I / Fs 11 such as an inter-printer I / F 3, and controls the various I / Fs 5 and the image data from the controller 12. And a plotter 13 for printing out.
[0037]
FIG. 5 is a block diagram showing electrical connections inside the controller 12. The controller 12 performs I / F control and image processing functions by software and hardware. The controller 12 includes a processor 21 that performs various calculations and centrally controls each unit of the printer 2, a ROM 22, and a RAM 23. Further, in order to control various I / Fs 11, I / F controllers 24 corresponding to the respective I / Fs 11 are provided, and a DMA controller (DMAC) 25 is used to transfer data from the I / Fs to the RAM 23 without going through the processor 21. It has.
[0038]
The image processing unit 26 processes image data in RAM-to-RAM and performs processing such as encoding and expansion processing. The processor 21 side, the RAM 23 side, and the plotter 13 (its plotter I / F 26) side are also provided with I / F controllers 27 to 29 for controlling respective I / Fs, and internal registers of the I / F controller 24 and the DMAC 25 by software. A PIO controller 30 is provided at the tip of the processor bus controller 27. Various I / Fs 11 may or may not be necessary depending on the user, so that each module can be attached and detached as an option.
[0039]
As a flow of printing by the printer 2, print data received from various I / Fs 11 is written to the RAM 23 via the DMAC 25, subjected to RAM-to-RAM image processing, etc., and then again to the plotter I / F 26 by the DMAC 25. And print it out. It is also possible to exchange commands and status between the printers 2 and transfer print data via the inter-printer I / F 3.
[0040]
FIG. 6 is a block diagram showing an electrical connection of the USB I / F controller 31 that controls the USB I / F 5 as the I / F controller 24.
[0041]
The USB data line is a D + / D− serial differential signal. The USB physical layer 32 converts this signal from serial data to parallel when receiving, and conversely converts parallel data from serial to output when transmitting. To do. Processing related to the connection speed is also performed by the USB physical layer 32. The protocol processing unit 33 connected to the USB physical layer 32 performs USB protocol handshaking (for example, ACK handshaking or NAK handshaking for a request, or retransmission of data). The transfer address and end point from the host PC 6 are also detected by the protocol processing unit 33, responding only to a request addressed to its own USB address, and sending or receiving the data of the corresponding end point. The protocol processing unit 33 is connected to internal buffers 34 and 35 for transmission and reception. In response to a request from the host PC 6, data from the host PC 6 is stored in the internal buffer 34 for reception and sent to the host PC 6. Are stored in the internal buffer 35 for transmission.
[0042]
These internal buffers 34 and 35 are connected to an inter-printer I / F control unit 36, a DMACI / F control unit 37, and a processor I / F control unit 38, and distribute data to other printers 2 and other printers. Data reception from 2 is performed via these buffer internals 34 and 35. Further, the software on the other printer 2 side receives the internal buffers 34 and 35 via the DMACI / F 39 that is an I / F with the DMAC 25 and the processor I / F 40 that is an I / F with the processor 21. It is also possible to access. A control status register 45 that stores a control status is connected to the processor I / F control unit 38.
[0043]
The first table, the USB address printer address conversion table 41, stores the address of each printer 2 on the USB system in association with the address of the actual printer system 1 of each printer 2, and stores the USB system. It is a table composed of a RAM or the like that converts the address of the printer 2 above into an address in the actual printer system 1 of the printer 2. Since address assignment on the USB system is not uniquely determined every time due to a device connected to the host PC 6 other than the printer 2 being involved, it is necessary to associate the USB address with the address of each printer 2 every time the system is activated. is there.
[0044]
The initial state of the printer system 1 is a state in which the printer 2 having the USB I / F 5 (hereinafter, the printer 2 having the USB I / F 5 is referred to as another printer 2 and is referred to as a printer 2a) is not connected to the host PC 6. It is. First, the flow from connecting the printer 2a in the printer system 1 to which power is turned on to the host PC 6 to execute enumeration and recognizing it as a device is shown in the communication sequence diagram of FIG. 7 and the block of FIG. This will be described with reference to the drawings. The outline from speed determination to enumeration is as described above with reference to FIG.
[0045]
First, on the host PC 6 side, the cable connection is detected based on the electrical characteristics defined by the USB specification. Thereafter, the transfer rate (LS / FS / HS) is determined by negotiation with the device side.
[0046]
Subsequently, the host PC 6 requests the printer 2a to output a device descriptor describing the features of the USB device.
[0047]
In response to this, the printer 2a returns a descriptor as a printer device to the host PC 6 (the USB I / F controller 31 sends the descriptor to the internal buffer 34 for transmission via the DMACI / F 39 or the processor I / F 40). By recording, when the host PC 6 makes a request, the protocol processing unit 33 reads the data from the internal buffer 34 in response to this, passes it to the USB physical layer 32, and outputs it to the USB cable 7). In order to make the other printers 2 group of the printer system 1 appear as USB devices, the printer 2a responsible for the connection of the printer returns a descriptor as a USB hub prior to the descriptor of the printer device.
[0048]
This processing is automatically executed by the protocol processing unit 33. First, after the host PC 6 is recognized as a USB hub, the protocol processing unit 33 notifies the host PC 6 of the status that the device is connected as a function of the hub so that the host PC 6 can be seen as if the printer device is connected. To do.
[0049]
The flow of device connection notification is as described above with reference to FIG. The host PC 6 interprets that a new device is connected to the hub, attempts to enumerate this device, and requests a descriptor. In response to this request, the printer 2a responds with a descriptor as a printer device, which is recognized by the host PC 6 as a hub and a printer device connected thereto. In this state, since there is only one USB printer, when the host PC 6 performs printing, only the printer 2a connected via USB receives print data and executes printing.
[0050]
In the following, the flow from when the other printer 2 of the printer system 1 is shown to the host PC 6 like a USB device and printed by this printer 2 will be described.
[0051]
That is, the printer 2a connected to the host PC 6 by USB notifies the host PC 6 of the status that a new device has been connected by the operation as the hub following the above-described operation, and responds to the descriptor request from the host PC 6. Then, the operation of returning the descriptor as the printer device is repeated for the number of other printers 2 in the printer system 1 (the communication exchange between the host PC 6 and the printer 2a is as shown in FIG. 7). The other printer 2 is recognized by being assigned a USB device address from the host PC 6 as a printer connected by USB.
[0052]
In the USB I / F controller, every time a new USB address is assigned to the printer 2 including the printer 2a, the association in the USB address printer address conversion table 41 is updated (for example, the printer 2a has the USB address 2 and other printers). One of the two has a USB address 5, etc.).
[0053]
At the time of printing, print data is transmitted from the host PC 6 to the printer 2a connected by USB. The printer 2a accepts it with the internal buffer 35. The printer 2a determines which printer 2 in the printer system 1 is the data addressed to the USB device address of the print data by looking up the USB address printer address conversion table 41, and uses the data addressed to the printer 2a. If not, the data is transferred to the predetermined printer address via the inter-printer I / F 3. The printer 2 that has received the print data via the inter-printer I / F 3 executes printing. With this process, a receiving unit and a printing unit are realized.
[0054]
Before transferring the print data, the printer 2a inquires whether the destination printer 2 can print. If printing is possible, the print data is transferred to the destination printer 2 as described above. However, if printing is already being performed or printing is not possible due to a trouble, the data is transferred to another printable printer 2. Then, transfer printing is executed.
[0055]
In the printing operation, normally, after the print data is transferred, a status is returned from the printer 2a side to the host PC 6 side. The printer 2 that has actually performed printing returns a print execution result to the printer 2a via the inter-printer I / F 3 regardless of whether the printing is normal or abnormal. During this time, the host PC 6 urges the printer 2a to return a status on the USB (specifically, an IN transfer request). However, until the status is returned from the printer 2 that has executed printing, the printer 2a does not return to the host PC 6a. A NAK response (indicating that transfer is not ready yet) is made, and when the status is returned, status data is returned to the host PC 6 via the USB. If the printer 2 requested by the host PC 6 cannot perform printing and transfer printing is performed as described above, the status information includes the information of the printer 2 that actually performed the printing operation, so that the printer of the host PC 6 The application can notify the result to the user.
[0056]
The printer 2a separates the internal buffers 34 and 35 for transmission / reception (configured by a RAM or the like) for each printer 2 in order to correctly process print data and status requests addressed to a plurality of printers 2 that come and go. Used for.
[0057]
The USB address printer address conversion table 41 can be rewritten via the processor I / F 40 (excluding the USB address portion), and the printer 2 corresponding to the already assigned USB address is switched to another printer 2. (For example, the printer 2 with the USB address 5 is switched to another printer 2).
[0058]
[Embodiment 2 of the Invention]
Another embodiment will be described as a second embodiment of the invention.
[0059]
In the following, the description will focus on the differences from the case of the first embodiment, the same reference numerals are used for the circuit elements and the like similar to those of the first embodiment of the invention, and the detailed description is omitted.
[0060]
In the first embodiment, there is a one-to-one correspondence between the USB address and the actual printer 2, but in this second embodiment, a plurality of printers 2 are shown to the host PC 6 as if they were one printer. Causes a printing operation to be performed.
[0061]
FIG. 8 is a block diagram showing an electrical connection of the USB I / F controller 31 used in the printer 2a of the second embodiment.
[0062]
The USB I / F controller 31 includes a printer group table 42 as a second table in addition to the configuration of the USB I / F controller 31 in the first embodiment. In the printer group table 42, a group number and an address group of each printer 2 are registered in association with each other. Actually, a list in which a group number and a list of addresses of the printer 2 are enumerated using a RAM or the like (for example, the group 1 is the printer 2 of the address 2 and the address 3, the group 2 is the printer 2 a and the printer 2 of the address 2 is used The embedded software on the printer 2 side can be set via the processor I / F 40. Instead of the USB address printer address conversion table 41, a USB address printer group conversion table 43, which is a third table in which USB addresses and printer group numbers are registered in association with each other, is prepared.
[0063]
First, the flow of causing the host PC 6 to recognize the printer system 1 is basically the same as that in the first embodiment. However, as a USB device, connection notification is made to the host PC 6 by the number of groups instead of the number of printers 2. To do.
[0064]
Accordingly, since the print data from the host PC 6 becomes print data addressed to the printer group, the USB I / F controller 31 converts the USB address into the printer group by the USB address printer group conversion table 43, and each printer in the printer group. 2 is inquired through the inter-printer I / F 3 whether or not printing is possible, and print data is transferred to the printable printer 2. This implements a printing means.
[0065]
Information indicating which printer 2 is actually output is added to the status so that the printer application of the host PC 6 can notify the user of the printer 2 that has been printed out. This realizes the notification means.
[0066]
Embodiment 3 of the Invention
Another embodiment will be described as a third embodiment of the invention.
[0067]
In the following description, differences from the case of the second embodiment will be mainly described, and the same reference numerals will be used for circuit elements and the like similar to those of the first embodiment of the invention, and detailed description thereof will be omitted.
[0068]
In contrast to the USB I / F controller 31 that allows a plurality of printers 2 in the printer system 1 of the second embodiment to be viewed as one USB device on the USB system, in this third embodiment, a printer group configuration is dynamically configured from the host PC 6 side. Can be changed.
[0069]
FIG. 9 is a block diagram showing an electrical connection of the USB I / F controller 31 used in the printer 2a of the second embodiment.
[0070]
Also in the third embodiment, the flow until the host PC 6 recognizes the initial state of the printer system 1 and the printing operation are the same as those of the printer system 1 of the second embodiment. The USB I / F controller 31 of FIG. 9 includes an internal buffer 44 for changing the group configuration in addition to the configuration of the USB I / F controller 31 of FIG. On the USB system, a new endpoint is defined for receiving data from the host PC 6, and data for the new endpoint is received by the internal buffer 44. The USB address for accepting the request is assumed to be the address assigned as the USB hub that is given first. The protocol processing unit 33 distinguishes between the print data and the newly received data.
[0071]
The printer application of the host PC 6 sends an inquiry request for the current printer group configuration or a new group configuration definition (including deletion and addition) request to the printer 2a via this endpoint. These requests are stored in the internal buffer 44 for reception described above, an interrupt is generated via the processor I / F control unit 38 for the processor 21 on the printer 2a side, and the request contents are interpreted by software on the printer 2a side. And execute the process according to the request.
[0072]
FIG. 10 shows a flowchart of processing executed in this case. That is, as described above, the request from the host PC 6 is stored in the reception internal buffer 44, and when an interrupt is generated (step S1), the processor 21 reads the reception internal buffer 44 (step S2). The command is analyzed (step S3), and the following processing is performed.
[0073]
That is, if it is an inquiry about the current group configuration (N in step S4), a list of printer groups and printer addresses is written in the internal buffer 34 for transmission (step S5), and the contents are received by an IN transfer request from the host PC 6 (Step S6) so that the group application information can be acquired in the printer application on the host PC 6 side.
[0074]
If a new group is to be added (Y in step S4, Y in S7), the new group and printer address are read from the internal buffer 44 (step S8), and the printer group table 42 and USB address printer group conversion table 43 are read. It adds (step S9). If necessary, the status (success or error) is notified to the host PC 6 via the transmission buffer.
[0075]
If the number of groups increases or decreases due to a change in the group configuration, the printer 2a acts as a USB hub to the host PC 6 so that the device can be added or deleted on the USB system. The status is notified (step S10). Thereafter, enumeration is executed from the host PC 6 to the new printer 2 group, and the protocol processing unit 33 automatically responds. Then, the group of the new printer 2 is recognized as a new USB printer from the host PC 6.
[0076]
In the case of an existing group deletion request (Y in step S4, N in S7), the entry of the group is deleted from the printer group table 42 (step S11), and the same processing as in step S10 is performed (step S12). . The changing means is realized by steps S7 to S12. Thereafter, the host PC 6 detects the deletion of the device and invalidates the device (group).
[0077]
【The invention's effect】
According to the first aspect of the present invention, when a printer system is constructed in which the present printer is connected to another printer and a host computer is connected to the printer, the other printer is controlled as a USB printer from the host computer. It can be realized by a simple system configuration and simple control on the host computer side.
[0078]
According to the second aspect of the present invention, in the printer according to the first aspect, the printers can be grouped so that a flexible printer system can be used.
[0079]
According to a third aspect of the present invention, in the printer according to the second aspect, the printer capable of printing among the printers belonging to the specified group can execute printing, thereby enabling a flexible printer system to be used. it can.
[0080]
According to a fourth aspect of the present invention, in the printer according to the third aspect, the user who has requested printing can know from which printer the print output is made.
[0081]
According to the fifth aspect of the present invention, in the printer according to the second or third aspect, the registration of the group configuration can be dynamically reorganized, and a flexible printer system can be used.
[0082]
The invention according to claim 6 has the same effect as the invention according to any one of claims 1 to 5.
[Brief description of the drawings]
FIG. 1 is a communication sequence diagram illustrating processing performed by a USB system.
FIG. 2 is a communication sequence diagram illustrating processing performed by a USB system.
FIG. 3 is a block diagram illustrating an overall configuration of a printer system according to a first embodiment.
FIG. 4 is a block diagram illustrating an overall configuration of a printer of the printer system.
FIG. 5 is a block diagram showing electrical connections of a printer controller.
FIG. 6 is a block diagram illustrating an electrical connection of a USB I / F controller of a printer.
FIG. 7 is a communication sequence diagram between the printer and the host PC.
FIG. 8 is a block diagram illustrating electrical connection of a USB I / F controller of a printer according to a second embodiment.
FIG. 9 is a block diagram illustrating electrical connection of a USB I / F controller of a printer according to a third embodiment.
FIG. 10 is a flowchart of processing performed by a USB I / F controller of a printer.
[Explanation of symbols]
1 Printer system
2,2a printer
5 USB I / F
6 Host computer

Claims (6)

USB(Universal Serial BUS)インターフェイスを備えていて、ホストコンピュータと通信可能に接続できるプリンタにおいて、
本プリンタと接続されている他のプリンタについてUSBのシステム上でのアドレスと実際のアドレスとを対応付けて登録している第1のテーブルと、
前記ホストコンピュータから前記他のプリンタに対して前記USBのシステム上でのアドレスを指定して行なわれた印刷要求を受付ける受付手段と、
この印刷要求があったときは、前記第1のテーブルを参照して当該USBのシステム上でのアドレスを実際のアドレスに変換し当該アドレスが示す前記他のプリンタに前記印刷要求を実行させる印刷手段と、
を備えていることを特徴とするプリンタ。
In a printer that has a USB (Universal Serial BUS) interface and can be connected to a host computer,
A first table in which addresses on the USB system and actual addresses are registered in association with other printers connected to the printer;
Accepting means for accepting a print request made by designating an address on the USB system from the host computer to the other printer;
When there is a print request, a printing unit that refers to the first table, converts an address on the USB system into an actual address, and causes the other printer indicated by the address to execute the print request When,
A printer characterized by comprising:
前記第1のテーブルに代えて、
USBのシステム上でのアドレスと、本プリンタと接続されUSBインターフェイスを備えていない複数の他のプリンタをグループ化して当該各グループを識別するプリンタグループとを対応付けて登録している第2のテーブルと、
前記各プリンタグループと当該プリンタグループが識別する前記各グループに所属する前記他のプリンタにおける実際のアドレスとを対応付けて登録している第3のテーブルと、
を備えていて、
前記印刷手段は、前記ホストコンピュータから前記他のプリンタに対して前記USBのシステム上でのアドレスを指定して印刷要求があったときは、前記第2及び第3のテーブルを参照して、当該USBのシステム上でのアドレスに対応しているグループに所属する前記他のプリンタに前記印刷要求を実行させること、を特徴とする請求項1に記載のプリンタ。
Instead of the first table,
A second table in which addresses on the USB system and a plurality of other printers that are connected to the printer and do not have a USB interface are grouped and a printer group that identifies each group is associated and registered. When,
A third table in which each printer group is registered in association with an actual address in the other printer belonging to each group identified by the printer group;
With
When there is a print request from the host computer to the other printer by specifying an address on the USB system, the printing unit refers to the second and third tables, and The printer according to claim 1, wherein the other printer belonging to a group corresponding to an address on a USB system is caused to execute the print request.
前記印刷手段は、前記ホストコンピュータから前記他のプリンタに対して前記USBのシステム上でのアドレスを指定して印刷要求があったときは、前記第2及び第3のテーブルを参照して、当該USBのシステム上でのアドレスに対応しているグループに所属する他のプリンタに印刷の実行が可能か否か問い合わせ、印刷可能な他のプリンタに対して前記印刷要求を実行させること、
を特徴とする請求項2に記載のプリンタ。
When there is a print request from the host computer to the other printer by specifying an address on the USB system, the printing unit refers to the second and third tables, and Inquiring whether other printers belonging to the group corresponding to the address on the USB system can execute printing, and causing the other printers capable of printing to execute the print request;
The printer according to claim 2.
前記印刷可能な他のプリンタに対して前記印刷要求を実行させるときは、実際にどのプリンタに前記印刷要求を実行させたかを前記ホストコンピュータに通知する通知手段を備えていること、
を特徴とする請求項3に記載のプリンタ。
A notification means for notifying the host computer which printer has actually executed the print request when the print request is executed for the other printer capable of printing;
The printer according to claim 3.
前記ホストコンピュータから前記グループの構成の変更要求を受付けて、その要求にしたがって前記第2及び第3のテーブルの登録の内容を変更する変更手段を備えていること、
を特徴とする請求項2又は3に記載のプリンタ。
Receiving a group configuration change request from the host computer, and changing means for changing the registration contents of the second and third tables according to the request;
The printer according to claim 2 or 3, characterized by the above.
互いに接続された複数台のプリンタとホストコンピュータとを接続して構成されるプリンタシステムにおいて、
前記複数台のプリンタのうち少なくとも一台は請求項1〜5の何れかの一に記載のプリンタであること、
を特徴とするプリンタシステム。
In a printer system configured by connecting a plurality of printers connected to each other and a host computer,
At least one of the plurality of printers is the printer according to any one of claims 1 to 5,
A printer system characterized by this.
JP2002078890A 2002-03-20 2002-03-20 Printer and printer system Expired - Fee Related JP3754930B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002078890A JP3754930B2 (en) 2002-03-20 2002-03-20 Printer and printer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002078890A JP3754930B2 (en) 2002-03-20 2002-03-20 Printer and printer system

Publications (2)

Publication Number Publication Date
JP2003280829A JP2003280829A (en) 2003-10-02
JP3754930B2 true JP3754930B2 (en) 2006-03-15

Family

ID=29228595

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002078890A Expired - Fee Related JP3754930B2 (en) 2002-03-20 2002-03-20 Printer and printer system

Country Status (1)

Country Link
JP (1) JP3754930B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005254770A (en) * 2004-03-15 2005-09-22 Ricoh Co Ltd Image processing device, image processing method and recording medium capable of reading computer which has recorded program making computer execute image processing method

Also Published As

Publication number Publication date
JP2003280829A (en) 2003-10-02

Similar Documents

Publication Publication Date Title
JP3711432B2 (en) Peripheral processing apparatus and control method thereof
AU2007278728B2 (en) Method and apparatus for distributing usb hub functions across a network
JP3927647B2 (en) Information processing apparatus, information processing method, and information processing system
JP4377603B2 (en) Bus communication system and communication control method thereof
US7162566B2 (en) USB-based host-to-host networking method
US20070067551A1 (en) Information processor
US7853748B2 (en) Method and apparatus to obtain code data for USB device
JP2004005541A (en) Data transfer device, data transfer method, program and recording medium
JP4432385B2 (en) Data relay system
JP2003316712A5 (en)
EP1516261B1 (en) Bus system, station for use in a bus system, and bus interface
JP2001094613A (en) Communication controller, method and recording medium
JP3754930B2 (en) Printer and printer system
JP5030538B2 (en) Data communication system, unit and data communication method
JP2581468B2 (en) Non-SCSI device access method
JP3846089B2 (en) Interface device, control method thereof, and information recording medium
JP2006331088A (en) Storage medium processor
JP3579884B2 (en) Data communication method and apparatus, printer and control method therefor
JP2658931B2 (en) Printer controller
KR100763039B1 (en) A device including means for transferring information indicating whether or not the device supports DMA
JPH11327817A (en) System and method for communication and storage medium
JP2003242103A (en) Serial bus communication system, and serial bus communication method
JP2001256168A (en) Usb device
JP3071607U (en) Computer peripheral device and printer device
JPH11327841A (en) Communication equipment, method therefor and storage medium

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040924

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050609

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051205

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: 20051213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051219

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: 20081222

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20091222

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101222

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111222

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121222

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131222

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees