(57)【要約】【課題】  ＰＣ或いはメモリーカードから印刷中に、ＰＣからメモリーカードにデータアクセスをされた場合に、ＰＣをハングアップさせずに、印刷品位を劣化させない機能を提供することを目的とする。また、メモリーカードからの印刷中にＰＣから書き込み処理を行われたときに印刷を正常に終了する機能を提供することも目的としている。【解決手段】  記憶媒体、撮像装置に格納された画像データ或いはホストコンピュータからの印刷データを記録メディアに印刷する機能と、ホストコンピュータから前記記憶媒体にアクセスする機能を有する構成とする。【選択図】  図１
2005161591.tif 000002
【特許請求の範囲】
【請求項１】
記憶媒体、撮像装置に格納された画像データ或いはホストコンピュータからの印刷データを記録メディアに印刷する機能と、ホストコンピュータから前記記憶媒体にアクセスする機能を有する印刷装置において、
前記画像データを格納する前記記録媒体を装着する装着部と、前記記憶媒体へのデータの読み書きを制御する記憶媒体制御部と、前記記録媒体に格納された前記画像データの情報を管理する画像データ管理部と、撮像装置を接続する撮像装置接続部と、前記撮像装置とデータの読み書きを制御する撮像装置制御部と、前記撮像装置に格納された前記画像データの情報を管理する撮像装置画像データ管理部と、ユーザにより操作されて印刷に関する設定入力する印刷設定部と、前記画像データ情報および印刷設定を表示する表示部と、前記印刷設定に応じて前記画像データを印刷データに変換するデータ変換部と、前記ホストコンピュータと前記画像データ情報に関してのデータ、および前記記録媒体に格納された前記画像データを送受信する第一のインターフェース部と、前記ホストコンピュータと印刷に関してのデータを送受信する第二のインターフェース部と、前記第一、第二のインターフェース部の制御をおこなうインターフェース制御部と、前記第二のインターフェース部を介して受信した前記ホストコンピュータからの印刷データを格納するための受信バッファと、前記受信バッファに格納された前記印刷データおよび前記データ変換部で変換された前記印刷データを前記記録メディアに印刷する印刷制御部と、
を具備することを特徴とする印刷装置。
【請求項２】
前記インターフェース制御部が前記印刷装置の状態に応じて、前記ホストコンピュータからの前記記憶媒体への書き込みを禁止することを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記印刷装置が前記記憶媒体に格納された前記画像データを前記記録メディアに印刷中は、前記ホストコンピュータからの前記記録媒体への前記データの書き込みを禁止することを特徴とする請求項１に記載の印刷装置。
【請求項４】
前記記憶媒体制御部が前記印刷装置の状態に応じて、前記記憶媒体に読み書きする前記データのサイズを動的に切り替えることを特徴とする請求項１に記載の印刷装置。
【請求項５】
前記印刷装置が前記記憶媒体に格納された前記画像データ或いは前記ホストコンピュータからの前記印刷データを前記記録メディアに印刷中に、前記ホストコンピュータが前記記録媒体に前記データの読み書き込み処理を実行した場合には、前記記憶媒体制御部が一定周期で前記記憶媒体に前記データを読み書きすることを特徴とする請求項１に記載の印刷装置。
【請求項６】
前記印刷装置が前記記憶媒体に格納された前記画像データ或いは前記ホストコンピュータからの前記印刷データを前記記録メディアに印刷中に、前記ホストコンピュータが前記第一のインターフェース部を介して前記記録媒体に前記データの読み書き込み処理を実行した場合には、前記記憶媒体制御部が前記記憶媒体に読み書きする前記データのサイズを前記第一のインターフェース部の最大パケットサイズに切り替えることを特徴とする請求項１に記載の印刷装置。
【請求項７】
前記第一のインターフェース部がUSB(Universal Serial Bus)のMass Storageクラスに準拠していることを特徴とする請求項１に記載の印刷装置。
【請求項８】
前記第二のインターフェース部がUSB(Universal Serial Bus)のプリンタクラスに準拠していることを特徴とする請求項１に記載の印刷装置。
【請求項９】
前記最大パケットサイズがUSBのEndpoint  Descriptorで設定された最大パケットサイズであることを特徴とする請求項１に記載の印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストコンピュータデジタルカメラなどの撮像装置、ホストコンピュータ或いはメモリカード等から画像データを入力して記録媒体に記録し、ホストコンピュータからメモリーカードにアクセスが可能であるフォトダイレクトプリンタ装置及びその制御方法に関するものである。
【背景技術】
【０００２】
近年、簡単な操作で画像を撮影してデジタル画像データに変換できるデジタルカメラ（撮像装置）、所謂、デジカメが広く使用されるようになってきている。このようなカメラで撮影した画像を印刷して写真として使用する場合には、通常、一旦、その撮影されたデジタル画像データを、デジタルカメラからＰＣ（コンピュータ）に取り込み、そのＰＣで画像処理を行った後、そのＰＣからカラープリンタに出力して印刷するのが一般的である。
【０００３】
これに対して最近は、ＰＣを介することなく、直接、デジタルカメラからカラープリンタにデジタル画像データを伝送して印刷することができるカラープリントシステムや、デジタルカメラに搭載され、撮像した画像を記憶しているメモリカードを、直接、カラープリンタに装着し、そのメモリカードに記憶されている、撮影された画像を印刷できる、所謂フォトダイレクト（ＰＤ）プリンタ等も開発されている。また、フォトダイレクトプリンタ装置の中にはＰＣに接続することにより、メモリーカードの内容をリムーバルディスクとして、ＰＣからアクセスする機能を装備している製品もある。また、現在では製品間の価格競争が激しいため、性能が低いＣＰＵや容量の少ないＲＡＭを使用している。
【特許文献１】特開２００３−１２７４７２号公報。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このようなフォトダイレクトプリンタではＰＣ或いはメモリーカードから印刷中に、ＰＣからメモリーカードにデータを読み書きすると、印刷処理とメモリーカードアクセス処理が同時に発生するため、性能の低いＣＰＵの処理速度ではいくつかの問題が発生する。例えば、印刷処理を優先して実行した場合は、ＰＣに対する応答が遅くなり、ＰＣがハングアップする危険性がある。また、ＰＣからのメモリカードアクセスを優先して実行した場合は、印刷メディアへの印刷処理が停止もしくは遅くなり、色むらといった印刷品位の劣化につながる。また、メモリーカードから印刷中に、ＰＣからのメモリーカードへの書き込み処理を有効にすると、印刷中の画像データが消されるなどの危険性があり、印刷処理が正常に終了しない危険性がある。
【０００５】
本発明は上記従来例に鑑みてなされたもので、ＰＣ或いはメモリーカードから印刷中に、ＰＣからメモリーカードにデータアクセスをされた場合に、ＰＣをハングアップさせずに、印刷品位を劣化させない機能を提供することを目的とする。また、メモリーカードからの印刷中にＰＣから書き込み処理を行われたときに印刷を正常に終了する機能を提供することも目的としている。
【課題を解決するための手段】
【０００６】
記憶媒体に格納された画像データ或いはホストコンピュータからの印刷データを記録メディアに印刷する印刷装置において、前記画像データを格納する前記記録媒体を装着する装着部と、前記記憶媒体へのデータの読み書きを制御する記憶媒体制御部と、前記記録媒体に格納された前記画像データの情報を管理する画像データ管理部と、ユーザにより操作されて印刷に関する設定入力する印刷設定部と、前記画像データ情報および印刷設定を表示する表示部と、前記印刷設定に応じて前記画像データを印刷データに変換するデータ変換部と、前記ホストコンピュータと前記画像データ情報に関してのデータ、および前記記録媒体に格納された前記画像データを送受信する第一のインターフェース部と、前記ホストコンピュータと印刷に関してのデータを送受信する第二のインターフェース部と、前記第一、第二のインターフェース部の制御をおこなうインターフェース制御部と、前記第二のインターフェース部を介して受信した前記ホストコンピュータからの印刷データを格納するための受信バッファと、前記受信バッファに格納された前記印刷データおよび前記データ変換部で変換された前記印刷データを前記記録メディアに印刷する印刷制御部と、を具備することを特徴とする印刷装置。
【発明の効果】
【０００７】
以上説明してきたように、本発明によると、ＰＣからリムーバルディスクとしてメモリーカードをアクセス可能な機能を有するフォトダイレクトプリンタにおいて、ＰＣ印刷或いはメモリーカードからの印刷中に、ＰＣからメモリーカードにアクセスをされた場合に、メモリーカードへのアクセスサイズを小さくすることで、印刷処理が遅れることはなく、色むら等の印刷品位の劣化を防ぐことができる。また、一定間隔でメモリーカードのデータをホストコンピュータに送信するため、ホストコンピュータがタイムアウトを起こすことはなく、ハングアップするといった危険性を回避することが可能となる。また、印刷中以外は一定間隔待つことはないので、ホストコンピュータのメモリーカードアクセスを高速に行うことが可能である。また、メモリーカードに保存されている画像データをダイレクト印刷している最中に、ホストコンピュータからの書き込みを禁止することにより、正常に印刷を終了することが可能である。
【発明を実施するための最良の形態】
【０００８】
以下、添付図面を参照して本発明の好適な実施の形態を詳細に説明する。
【０００９】
図１は、本発明の実施の形態に係るフォトダイレクトプリンタ装置１０００の概観斜視図である。このフォトダイレクトプリンタは、ホストコンピュータ（ＰＣ）からデータを受信して印刷する、通常のＰＣプリンタとしての機能と、メモリカードなどの記憶媒体に記憶されている画像データを直接読取って印刷したり、或いはデジタルカメラからの画像データを受信して印刷する機能を備えている。
【００１０】
図１において、本実施の形態に係るフォトダイレクトプリンタ装置１０００の外殻をなす本体は、ケースＭ１００１、上ケース１００２、アクセスカバー１００３及び排出トレイ１００４の外装部材を有している。また、下ケース１００１は、装置１０００の略下半部を、上ケース１００２は本体の略上半部をそれぞれ形成しており、両ケースの組合せによって内部に後述の各機構を収納する収納空間を有する中空体構造をなし、その上面部及び前面部にはそれぞれ開口部が形成されている。さらに、排出トレイ１００４は、その一端部が下ケース１００１に回転自在に保持され、その回転によって下ケース１００１の前面部に形成される開口部を開閉させ得るようになっている。このため、記録動作を実行させる際には、排出トレイ１００４を前面側へと回転させて開口部を開成させることにより、ここから記録シートが排出可能となると共に、排出された記録シートを順次積載し得るようになっている。また、排紙トレイ１００４には、２枚の補助トレイ１００４ａ，１００４ｂが収納されており、必要に応じて各トレイを手前に引き出すことにより、用紙の支持面積を３段階に拡大、縮小させ得るようになっている。
【００１１】
アクセスカバー１００３は、その一端部が上ケース１００２に回転自在に保持され、上面に形成される開口部を開閉し得るようになっており、このアクセスカバー１００３を開くことによって本体内部に収納されている記録ヘッドカートリッジ（不図示）あるいはインクタンク（不図示）等の交換が可能となる。なお、ここでは特に図示しないが、アクセスカバー１００３を開閉させると、その裏面に形成された突起がカバー開閉レバーを回転させるようになっており、そのレバーの回転位置をマイクロスイッチなどで検出することにより、アクセスカバーの開閉状態を検出し得るようになっている。
【００１２】
また、上ケース１００２の上面には、電源キー１００５が押下可能に設けられている。また、上ケース１００２の右側には、液晶表示部１００６や各種キースイッチ等を備える操作パネル１０１０が設けられている。この操作パネル１０１０の構造は、図２を参照して詳しく後述する。１００７は自動給送部で、記録シートを装置本体内へと自動的に給送する。１００８は紙間選択レバーで、プリントヘッドと記録シートとの間隔を調整するためのレバーである。１００９はカードスロットで、ここにメモリカードを装着可能なアダプタが挿入され、このアダプタを介してメモリカードに記憶されている画像データを直接取り込んで印刷することができる。このメモリカード（ＰＣ）としては、例えばコンパクトフラッシュ（登録商標）メモリ、スマートメディア、メモリスティック等がある。１０１２はデジタルカメラを接続するための端子、１０１３は、パーソナルコンピュータ（ＰＣ）を接続するためのＵＳＢバスコネクタを示す。
【００１３】
図２は、本実施の形態に係る操作パネル１０１０の概観図である。
【００１４】
図において、液晶表示部１００６には、その左右に印刷されている項目に関するデータを各種設定するためのメニュー項目が表示される。ここでに表示される項目としては、印刷したい範囲の先頭写真番号、指定コマ番号（開始／−指定）、印刷を終了した範囲の最後の写真番号（終了）、印刷部数（部数）、印刷に使用する用紙（記録シート）の種類（用紙種類）、１枚の用紙に印刷する写真の枚数設定（レイアウト）、印刷の品位の指定（品位）、撮影した日付を印刷するかどうかの指定（日付印刷）、写真を補正して印刷するかどうかの指定（画像補正）、印刷に必要な用紙枚数の表示（用紙枚数）等がある。これら各項目は、カーソルキー２００１を用いて選択、或いは指定される。２００２はモードキーで、このキーを押下する毎に、印刷の種類（インデックス印刷、全コマ印刷、１コマ印刷等）を切り替えることができ、これに応じてＬＥＤ２００３の対応するＬＥＤが点灯される。２００４はメンテナンスキーで、プリントヘッドのクリーニング等、プリンタのメンテナンスを行わせるためのキーである。２００５は印刷開始キーで、印刷の開始を指示する時、或いはメンテナンスの設定を確立する際に押下される。２００６は印刷中止キーで、印刷を中止させる時や、メンテナンスの中止を指示する際に押下される。
【００１５】
次に図３を参照して、本実施の形態に係るフォトダイレクトプリンタ装置の制御に係る主要部の構成を説明する。図１は、本発明の第一の実施例に係わるプリンタ装置の制御構成を表わすブロック図である。
【００１６】
図３において、３０１はホストコンピュータである。３０２はマイクロプロセッサであり、本実施例のフォトダイレクトプリンタ装置全体の制御を司る。
【００１７】
また、３０３はUSB部であり、HUBにMass Storageクラス、Printerクラスが接続されている。また、USB部（３０３）はHUBを介さずにMass StorageクラスとPrinterクラスのインターフェースを有するデバイスとしてもよい。USB部（３０３）は、ホストとなるコンピュータのような外部機器と本プリンタ装置との接続を司り、ホストコンピュータが送信したデータおよび制御コマンドは、USB部（３０３）によって受信され、インターフェース通信制御部（３０４）を介して、マイクロプロセッサ（３０２）、受信バッファ（３０５）に転送される。メモリーカード制御部（３１４）はメモリーカード（３１５）の読み込み、書き込みの制御を行い、ホストコンピュータ（３０１）からUSB部（３０３）のMass Storageクラスを介してのアクセス、マイクロプロセッサ（３０２）からのアクセスを可能とする。カードバッファ（３１６）はメモリーカードにアクセスする場合の一時格納バッファである。印字バッファ（３１０）は、一回の印字に必要となる量の印字データを格納するための受信バッファであり、マイクロプロセッサ（３０２）によって受信バッファ（３０５）から読み出された受信データ、或いはメモリーカード（３１５）に格納されている画像データ印字データに変換されて、順次格納されていく。印字制御部（３１１）は、記録ヘッド（３１２）への印字データの転送を司り、マイクロプロセッサ（３０２）からの印字制御信号に応じ、印字バッファ（３１０）から印字データを読み出し、所定の駆動タイミングに則って記録ヘッドに転送する。
【００１８】
以上の構成において、マイクロプロセッサ（３０２）は、記録ヘッドによる印字、およびCR（キャリッジ）モータ、LF（搬送）モータの回転を制御し、記録媒体上に印字データに応じた画像を形成していく。操作パネル（３１３）はユーザが印刷したい画像データ、印刷用紙などを選択することを可能としている。
【００１９】
次に図４を参照して、本実施の形態に係るホストコンピュータがメモリーカードに対して画像ファイルの読み書きをする方法に関して説明する。
【００２０】
本発明ではUSBのMass Storageクラスに準拠したインターフェースを搭載しており、ホストコンピュータからのMass Storageクラスコマンドにプリンタ装置が応答することにより、ホストコンピュータからのメモリーカードアクセスを可能にしている。なお、図４に示すホストコンピュータから送信されるMass Storageクラスコマンドの送信シーケンス、そのMass Storageクラスコマンドに対するプリンタ装置の応答は一例であり、これに限定されるわけではない。
【００２１】
ホストコンピュータはプリンタ装置が接続され、ネゴシエーションの結果Mass Storageクラスと認識した場合、Test Unit Readyコマンドを送信する（Ｓ４０００）。プリンタはメモリーカードが装着されていれば、返送データのStatusを成功とし（Ｓ４００３）、メモリーカードが装着されていなければ、返送データのStatusを失敗（Ｓ４００２）としてホストコンピュータに送信する。ホストコンピュータはプリンタにメモリーカードが装着されていなければ、その後定期的にTest Unit Readyコマンドを送信して、メモリーカードの装着有無を確認する。プリンタにメモリーカードが装着されている場合は、Read Capacityコマンドを送信する（Ｓ４００４）。プリンタはRead Capacityコマンドを受信すると、返送データとしてメモリーカードの最大ロジカルアドレスと１ロジカルブロックのバイト数を送信する（Ｓ４００５）。ホストコンピュータはRead Capacityコマンドに対する返送データをもとに、メモリーカードの任意のアドレスに対してアクセスを行う。ホストコンピュータはメモリーカード内のデータを読み出したい場合は、Readコマンドを送信する（Ｓ４００６）。図５にRead、Writeコマンドの詳細を示す。ここでは複数あるReadコマンド、WriteコマンドのうちRead10コマンド、Write10について説明する。Read10コマンド、Write10コマンド共に、３〜６バイト目がロジカルブロックアドレス、８〜９バイト目が転送ブロック数を表す。プリンタはReadコマンドを受信すると、Readコマンドで指定されたロジカルブロックアドレスから転送ブロック数だけメモリーカードからカードバッファに読み出し（Ｓ４００７）、USBのEndpoint DescriptorのwMaxPacketSizeで設定されているバイト数のパケットに分割して、ホストコンピュータに送信する（Ｓ４００８）。ホストコンピュータに送信したデータ数がデータブロック数に達するまで（Ｓ４００９）、メモリーカードからカードバッファに読み出して、ホストコンピュータに送信するというシーケンスが複数回行われる。次に、ホストコンピュータはメモリーカード内にデータを書き込みたい場合は、Writeコマンドを送信する（Ｓ４０１０）。プリンタはWriteコマンドを受信すると、ホストコンピュータからカードバッファサイズ分だけデータを受信して（Ｓ４０１１）、Writeコマンドで指定されたロジカルブロックアドレスからメモリーカードに書き込む（Ｓ４０１２）。ホストコンピュータから受信したデータ数がデータブロック数に達するまで（Ｓ４０１３）、ホストコンピュータからカードバッファにデータを受信して、メモリーカードに書き込むというシーケンスが複数回行われる。
【００２２】
以下に図６を用いて本実施例の詳細な説明を記述する。
【００２３】
図６は、本発明における、Readコマンド受信時のシーケンスである。プリンタ装置はReadコマンドを受信すると（Ｓ６０００）、プリンタが印刷状態かどうかをチェックする（Ｓ６００１）。プリンタが印刷中の場合は、メモリーカードからカードバッファに読み出すデータ数を最小値に設定する（Ｓ６００２）。ここで、最小値は１回のバルク転送で送れる最大パケットサイズとし、この値はプリンタで使用しているハードウェアに依存する。なお、USBの仕様では最大パケットサイズは８／１６／３２／６４バイトのいずれかと規定されている。本実施例では最大パケットサイズを６４バイトとするが、これに限定するわけではない。メモリーカードから６４バイトをカードバッファに読み出し（Ｓ６００３）、ホストコンピュータに送信する（Ｓ６００４）。送信したデータ数がReadコマンドで指定されたデータ転送数に満たない場合には（Ｓ６００５）、一定期間待った後で（Ｓ６００６）、再びメモリーカードから６４バイトをカードバッファに読み出し、ホストコンピュータに送信する。ここで、メモリーカードへのアクセスを一定期間待つことにより、プリンタの印刷処理が優先的に行え、印刷処理の遅れによる色むら等の印刷品位の劣化を防ぐことができる。なお、ここで待つ期間はホストコンピュータがタイムアウトしない時間とし、本特許では特に時間は規定しない。このシーケンスをReadコマンドで指定されたデータ転送数を満たすまで繰り返して処理を行う。
【００２４】
プリンタが印刷状態でない場合は、メモリーカードからカードバッファに読み出すデータ数をカードバッファサイズに設定する（Ｓ６００７）。メモリーカードからカードバッファサイズをカードバッファに読み出し（Ｓ６００８）、ホストコンピュータに送信する（Ｓ６００９）。送信したデータ数がReadコマンドで指定されたデータ転送数に満たない場合には（Ｓ６０１０）、一定期間待つことはなく、再びメモリーカードからカードバッファサイズをカードバッファに読み出し、ホストコンピュータに送信する。
【００２５】
以下に図７を用いて本実施例の詳細な説明を記述する。
【００２６】
図７は、本発明における、Writeコマンド受信時のシーケンスである。プリンタ装置はWriteコマンドを受信すると（Ｓ７０００）、プリンタが印刷状態かどうかをチェックする（Ｓ７００１）。プリンタが印刷中の場合は、ホストコンピュータからの印刷かメモリーカードからのダイレクト印刷かを判断する（Ｓ７００２）。ホストコンピュータからの印刷の場合は、メモリーカードに書き込むデータ数を最小値に設定する（Ｓ７００３）。ここで、最小値は１回のバルク転送で送れる最大パケットサイズとし、この値はプリンタで使用しているハードウェアに依存する。なお、USBの仕様では最大パケットサイズは８／１６／３２／６４バイトのいずれかと規定されている。本実施例では最大パケットサイズを６４バイトとするが、これに限定するわけではない。ホストコンピュータからカードバッファに６４バイトだけデータを受信し（Ｓ７００４）、カードバッファからメモリーカードに６４バイトだけデータを書き込む（Ｓ７００５）。受信したデータ数がWriteコマンドで指定されたデータ転送数に満たない場合には（Ｓ７００６）、一定期間待った後で（Ｓ７００７）、再びホストコンピュータから６４バイトのデータをカードバッファに受信して、メモリーカードに書き込む。ここで、メモリーカードへのアクセスを一定期間待つことにより、プリンタの印刷処理が優先的に行え、印刷処理の遅れによる色むら等の印刷品位の劣化を防ぐことができる。なお、ここで待つ期間はホストコンピュータがタイムアウトしない時間とし、本特許では特に時間は規定しない。このシーケンスをWriteコマンドで指定されたデータ転送数を満たすまで繰り返して処理を行う。プリンタがカードからのダイレクト印刷を行っている場合には、ストール処理を行い、ホストコンピュータに現在メモリーカードに書き込みできないことを通知する（Ｓ７００８）。
【００２７】
プリンタが印刷状態でない場合は、メモリーカードに書き込むデータ数をカードバッファサイズに設定する（Ｓ７００９）。ホストコンピュータからカードバッファサイズを受信して（Ｓ７０１０）、メモリーカードに書き込む（Ｓ７０１１）。受信したデータ数がWriteコマンドで指定されたデータ転送数に満たない場合には（Ｓ７０１２）、一定期間待つことはなく、ホストコンピュータから再びカードバッファサイズをカードバッファに受信して、メモリーカードに書き込む。
【図面の簡単な説明】
【００２８】
【図１】本発明の実施の形態に係るＰＤプリンタ装置の概観斜視図である。
【図２】本実施の形態に係るＰＤプリンタ装置の操作パネルの概観図である。
【図３】本実施の形態に係るＰＤプリンタ装置の制御に係る主要部の構成を示すブロック図である。
【図４】ホストコンピュータからメモリーカードに格納されている画像ファイルにアクセス方法に関するフローチャートである。
【図５】Mass Storageクラスで規定されているRead、Writeコマンドの詳細である。
【図６】本発明のReadコマンド受信時のシーケンスに関するフローチャートである。
【図７】本発明のWriteコマンド受信時のシーケンスに関するフローチャートである。
【図１】
2005161591.tif 000003
【図２】
2005161591.tif 000004
【図３】
2005161591.tif 000005
【図４】
2005161591.tif 000006
【図５】
2005161591.tif 000007
【図６】
2005161591.tif 000008
【図７】
2005161591.tif 000009