(57)【要約】【課題】印刷装置において印刷剤残量データの読み書きを頻繁に実行してもスループットを向上させる。  【解決手段】印刷剤を用いて印刷を行う印刷装置において，印刷剤の残量データが記憶される第１メモリと，印刷剤の残量を監視して印刷剤の消費ごとに残量データを更新する印刷剤残量管理タスクと，印刷実行に関するその他タスクと，第１メモリにデータを読み書きするメモリ管理タスクとを切り替えて実行する。また印刷剤残量管理タスクでデータの読み書きが可能な第２メモリに残量データを記憶する。その他タスクで第１メモリにデータの読み書きをする場合は，メモリ管理タスクを実行する。印刷剤残量管理タスクでは第２メモリから残量データを読み出し，第２メモリに更新された残量データを書き込み，かつメモリ管理タスクを実行して第１メモリに更新された残量データを書き込む。【選択図】図４
2008044220.tif 000002
【特許請求の範囲】
【請求項１】
印刷剤を用いて印刷を実行する印刷装置において，
前記印刷剤の残量データが記憶される第１メモリと，
前記印刷剤の残量を監視して印刷剤の消費ごとに前記残量データを更新する印刷剤残量管理タスクと，印刷実行に関するその他タスクと，前記印刷剤残量管理タスク及び前記その他タスクの要求に応じて前記第１メモリにデータを読み書きするメモリ管理タスクとを切り替えて実行するタスク実行手段と，
前記メモリ管理タスクによらずに前記印刷剤残量管理タスクでデータの読み書きが可能な，前記残量データを記憶する第２メモリとを有し，
前記タスク実行手段は，前記その他タスクで前記第１メモリにデータの読み書きをする場合は，前記メモリ管理タスクを実行することにより当該データの読み書きを行い，前記印刷剤残量管理タスクで前記印刷剤の残量監視を行う場合は前記第２メモリから前記残量データを読み出し，前記第２メモリに更新された残量データを書き込み，かつ前記メモリ管理タスクを実行して前記第１メモリに当該更新された残量データを書き込むことを特徴とする印刷装置。
【請求項２】
請求項１において，
前記残量データは印刷剤の色ごとに記憶され，
前記タスク実行手段は，前記印刷剤の色ごとに前記第２メモリから前記残量データを読み出し，前記メモリ管理タスクを実行して前記印刷剤の色ごとに前記第１メモリへ更新された残量データを書き込むことを特徴とする印刷装置。
【請求項３】
印刷剤を用いて印刷を実行し，前記印刷剤の残量データが記憶される第１メモリを備える印刷装置の制御方法において，
前記印刷剤の残量を監視して印刷剤の消費ごとに前記残量データを更新する印刷剤残量管理工程と，
印刷実行に関するその他工程と，
前記印刷剤残量管理工程及び前記その他工程の要求に応じて前記第１メモリにデータを読み書きするメモリ管理工程とを切り替えて実行し，
前記その他工程で前記第１メモリにデータの読み書きをする場合は，前記メモリ管理工程を実行することにより当該データの読み書きを行い，
前記印刷剤残量管理工程で前記印刷剤の残量監視を行う場合は，前記メモリ管理工程によらずに前記印刷剤残量管理工程でデータの読み書きが可能な，前記残量データを記憶する第２メモリから前記残量データを読み出し，前記第２メモリに更新された残量データを書き込み，かつ前記メモリ管理工程により前記第１メモリに当該更新された残量データを書き込むことを特徴とする印刷装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，印刷剤の残量データをメモリに記憶する印刷装置及びその制御方法に関し，特に，印刷剤の残量データの読み書きを行うタスクと，メモリへのデータの読み書きを行うタスクと，その他のタスクとを交互に切り替えて実行する印刷装置及びその制御方法に関する。
【背景技術】
【０００２】
インクなどの印刷剤を吐出して印刷用紙に印刷を行うインクジェット式印刷装置では，インクカートリッジ内のインク終了時期を検出してインクカートリッジの交換をユーザに促すために，インク残量の変化を監視することが求められる。そのための方法として，インクが充填されたインクカートリッジが装着された時点からインクカートリッジ内のインク残量をメモリなどに記憶しておき，インク消費ごとにインク滴の吐出を積算してインク消費量を求め，インク消費前のインク残量からインク消費量を減算することによりインク残量データを逐次更新してメモリに記憶するインク残量の管理方法が提案されている。
【０００３】
上記のような方法でインク残量を管理するインクジェット式印刷装置では，インクジェット式印刷装置の電源がオフにされた場合でもインク残量データが保持される必要があるので，ＥＥＰＲＯＭ（Electronically Erasable and Programmable Read Only Memory）などの不揮発性メモリにインク残量データが記憶される。例えば，インク残量データが記憶されるＥＥＰＲＯＭをインクカートリッジに設けたインクジェット式印刷装置の例が特許文献１に記載されている。
【０００４】
かかるインクジェット式印刷装置では，インク終了時期を適時に検出してユーザに通知できるように，印刷の実行中においてもインク残量がインク終了閾値を下回ったかを監視したり，インクが消費されたときはインク残量データを更新したりする印刷剤残量管理タスクが頻繁に実行される。よって，印刷剤残量管理タスクがインク残量データの読出しや更新を行うために，ＥＥＰＲＯＭ，あるいはその記憶内容の複製を記憶（ミラーリング）するミラーメモリに対し，頻繁にインク残量データの読み書きが発生する。
【特許文献１】特開２００１−３１５３２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで，インクジェット式印刷装置においては，印刷実行に際し画像処理タスクや印刷タスクといった印刷剤管理タスク以外の種々のタスクが交互に切り替えて実行される。そして，これらのタスクの実行に必要な各種情報，例えばインク滴を吐出するインクジェットヘッドのノズルのハード特性を補正する情報や，電源がオフされたときの紙詰まりの有無といった直前の動作状況などがＥＥＰＲＯＭに記憶される。よって，こうした種々のデータの書き込みにＥＥＰＲＯＭの領域を割り当て，データの不整合が生じないようにするために，ＥＥＰＲＯＭへのデータの読み書き，またはミラーメモリへの読み書きはメモリ管理専用のタスク（メモリ管理タスク）により一元的に行われる。
【０００６】
すると，上記のように印刷剤残量管理タスクから頻繁にＥＥＰＲＯＭやミラーメモリへの読み書きが発生すると，その度に印刷剤残量管理タスクからメモリ管理タスクにタスク切り替えがなされてメモリ管理タスクによりデータの読み書きが実行される。このように，印刷ジョブの最中であっても，タスク間でＣＰＵ資源の割り当ての切り替えが発生するため，タスク切り替え時間が生じ，印刷装置のスループットが低下するという問題が生じていた。
【０００７】
そこで，本発明の目的は，インクなどの印刷剤の残量データを頻繁に読み書きしてもスループットを向上させることができる印刷装置及びその制御方法を提供することにある。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために，本発明の第１の側面によれば，印刷剤を用いて印刷を実行する印刷装置において，前記印刷剤の残量データが記憶される第１メモリと，前記印刷剤の残量を監視して印刷剤の消費ごとに前記残量データを更新する印刷剤残量管理タスクと，印刷実行に関するその他タスクと，前記印刷剤残量管理タスク及び前記その他タスクの要求に応じて前記第１メモリにデータを読み書きするメモリ管理タスクとを切り替えて実行するタスク実行手段と，前記メモリ管理タスクによらずに前記印刷剤残量管理タスクでデータの読み書きが可能な，前記残量データを記憶する第２メモリとを有し，前記タスク実行手段は，前記その他タスクで前記第１メモリにデータの読み書きをする場合は，前記メモリ管理タスクを実行することにより当該データの読み書きを行い，前記印刷剤残量管理タスクで前記印刷剤の残量監視を行う場合は前記第２メモリから前記残量データを読み出し，前記第２メモリに更新された残量データを書き込み，かつ前記メモリ管理タスクを実行して前記第１メモリに当該更新された残量データを書き込むことを特徴とする。
【０００９】
上記側面によれば，タスク実行手段はメモリ管理タスクを実行することなく印刷剤残量管理タスクで第２メモリから印刷剤の残量データを読み出すので，残量データの読出しにかかる印刷剤残量管理タスクとメモリ管理タスクとの切り替え時間が削減でき，印刷装置のスループットを向上させることが可能となる。  上記側面の好ましい態様によれば，前記残量データは印刷剤の色ごとに記憶され，前記タスク実行手段は，前記印刷剤の色ごとに前記第２メモリから前記残量データを読み出し，前記メモリ管理タスクを実行して前記印刷剤の色ごとに前記第１メモリへ更新された残量データを書き込むことを特徴とする。よって，第２メモリに記憶される残量データと更新されるべき残量データとが同じである印刷剤の色については更新された残量データが第１メモリへ書き込まれないので，その分更新された残量データの書き込みにかかる印刷剤残量管理タスクとメモリ管理タスクとの切り替え時間が削減でき，さらにスループットを向上させることが可能となる。
【発明を実施するための最良の形態】
【００１０】
以下，図面にしたがって本発明の実施の形態について説明する。但し，本発明の技術的範囲はこれらの実施の形態に限定されず，特許請求の範囲に記載された事項とその均等物まで及ぶものである。
【００１１】
図１は，本実施形態における印刷装置の構成図である。この印刷装置は例えば印刷剤としてインクを用いるインクジェット式印刷装置である。このインクジェット式印刷装置は，紙送りモータ１４０により回転駆動して印刷用紙１６０を搬送する紙送りローラ１３０と，駆動ベルト１２２によりキャリッジモータ１２０と接続され，キャリッジモータ１２０の回転駆動力により印刷用紙１６０の搬送方向と直角の方向へ摺動軸１５０に沿って往復動作するキャリッジ８５とを有する。
【００１２】
キャリッジ８５にはノズル開口からインク滴の吐出を行うインクジェットヘッド７０と，インクジェットヘッド７０へインクを供給するインクカートリッジ８０とが搭載される。インクカートリッジ８０は，Ｃ（シアン），Ｍ（マゼンタ），Ｙ（イエロー），Ｋ（ブラック），ｌｃ（ライトシアン），ｌｍ（ライトマゼンタ）のインク色ごとに設けられる６個のインクカートリッジからなる。これらインク色ごとのインクカートリッジはインク終了にともない交換可能なようにインクジェットヘッド７０に着脱可能に設けられる。
【００１３】
制御部１０は制御プログラムを格納するＲＯＭ１４と，ＲＯＭ１４の制御プログラムに従って第２のＲＡＭ１９を作業領域として用い後述する各種のタスクを実行するＣＰＵ１２とを有する。よってＣＰＵ１２は「タスク実行手段」に対応する。ＣＰＵ１２による各種のタスク実行に必要なデータ，及びインクカートリッジ８０のインク残量のデータはＥＥＰＲＯＭ１８に記憶される。そしてＣＰＵ１２は後述するように第１のＲＡＭ１６をミラーメモリとして用い，第１のＲＡＭ１６を介してＥＥＰＲＯＭ１８にデータの読み書きを行う。また制御部１０は，パーソナルコンピュータなどのホストコンピュータから印刷データ１９を受信するインターフェース２０，ユーザに対するインク終了などの各種通知を表示させる表示部６２，電源の供給状態を監視する電源監視部６１，及び印刷装置各部へ駆動信号を送出する駆動制御部５０を有する。
【００１４】
ＣＰＵ１２は後述の各種タスクを実行してホストコンピュータから受信する印刷データ１９を処理して駆動制御部５０に画像等の印刷実行を指示する。駆動制御部５０はこれに応答して駆動信号をキャリッジモータドライバ５０ａ，紙送りモータドライバ５０ｂ，及びインクジェットヘッドドライバ３０に入力し，これに対応してキャリッジモータドライバ５０ａはキャリッジモータ１２０を，紙送りモータドライバ５０ｂは紙送りモータ１４０を，インクジェットヘッドドライバ３０はインクジェットヘッド７０をそれぞれ駆動する。その結果として，紙送りローラ１３０が印刷用紙１６０を搬送しながら，その搬送方向と直角方向にインクジェットヘッド７０が印刷用紙１６０を走査しつつ印刷すべき画像の画素に対応したインク滴をノズル開口から印刷用紙１６０に吐出して，印刷ジョブが実行される。
【００１５】
また，インクジェットヘッド７０のインク滴の吐出は，増粘したインクによるノズル開口の目詰まりを防止するために，駆動制御部５０からの駆動信号により印刷とは関係なくある一定の頻度で行われる（フラッシング）。また，同じくノズル開口の目詰まりを防止するために，駆動制御部５０からの駆動信号に対応してポンプモータドライバ５０ｃから与えられる駆動信号によりポンプ７５が駆動され，ポンプ７５に連通するキャップ７６によりノズル開口の増粘したインクの吸引（クリーニング）が行われる。
【００１６】
図２はタスク実行手段であるＣＰＵ１２により実行されるタスクを模式的に説明する図である。ＣＰＵ１２では，ジョブ制御タスク１２ｂ，画像処理タスク１２ａ，印刷タスク１２ｃ，印刷剤残量管理タスク１２ｄ，及びメモリ管理タスク１２ｅなどの各種タスクがオペレーティングシステム１２ｆにより交互に切り替えられて実行される。各タスクはＣＰＵ１２の割り当てを得て次に説明するような処理を実行し，その結果として駆動制御部５０から駆動信号が送出されて，インクジェット式印刷装置が動作する。なお，これらの代表的なタスクの他にも，ＣＰＵ１２では図示されない種々のタスクが実行される。
【００１７】
ジョブ制御タスク１２ｂは，インターフェース２０により受信されるホストコンピュータからの印刷データ１９から印刷コマンド２０ｂを取り出し，印刷コマンド２０ｂに基づいて画像処理タスク１２ａ，印刷タスク１２ｃ，印刷剤残量管理タスク１２ｄにそれぞれの処理の実行・中止などを指示し，各タスクの処理手順を制御する。
【００１８】
画像処理タスク１２ａは，印刷データ１９から画像データ２０ａを取り出し，画像データ２０ａの画素をインクジェットヘッド７０のノズル開口の配列により印刷可能なように並び変え，画素が並び替えられた画像データを印刷タスク１２ｃへ渡す。
【００１９】
印刷タスク１２ｃは，駆動制御部５０を制御することによりキャリッジモータドライバ５０ａ，紙送りモータドライバ５０ｂを駆動制御し，その結果上述した印刷用紙１６０の搬送動作，キャリッジ８５の往復動作が実行される。また印刷タスク１２ｃは，駆動制御部５０を制御することによりインクジェットヘッドドライバ３０を駆動制御して画像処理タスク１２ａから受け取った画像データの画素に対応するインク吐出をインクジェットヘッド７０に実行させたり，インクジェットヘッド７０のノズル開口の目詰まりを解消するためのインク吐出，つまりフラッシングをインクジェットヘッド７０に実行させたりする。また印刷タスク１２ｃは，駆動制御部５０を制御することによりポンプモータドライバ５０ｃを駆動制御してポンプ７５にクリーニングを実行させる。さらに印刷タスク１２ｃは，駆動制御部５０がインクジェットヘッドドライバ３０へ送出する駆動信号に対応してＣ，Ｍ，Ｙ，Ｋ，ｌｃ，ｌｍのインク色ごとにインク滴の吐出をカウントし，カウント値を第２のＲＡＭ１９に記憶する。
【００２０】
上記のジョブ制御タスク１２ｂ，画像処理タスク１２ａ，及び印刷タスク１２ｃは本実施形態の「その他タスク」に対応する。また，「その他タスク」には，これら代表的なタスク以外の図示されない種々のタスクが含まれてもよい。
【００２１】
印刷剤残量管理タスク１２ｄは，インク消費のたびにインク消費量の計算を行う。例えば，印刷用紙１６０に対してインクジェットヘッド７０による一方向への移動動作，つまり１パス分の移動動作における印刷が実行される度，または１ページ分の印刷開始時や不図示のタイマによる一定周期の割り込みなどのタイミングでフラッシングやクリーニングが実行される度に，インク消費量が計算される。そして印刷剤残量管理タスク１２ｄは，計算されたインク消費量に基づいて後述するようにＥＥＰＲＯＭ１８に格納されるインク残量データの更新を行う。
【００２２】
また印刷剤残量管理タスク１２ｄは，インク残量データの更新後やタイマによる一定周期ごと，あるいはホストコンピュータのプリンタドライバからインク残量通知要求を受けた場合などに，それぞれのインク色ごとにＥＥＰＲＯＭ１８から読み出されるインク残量とインク終了閾値を比較してインク終了判定を行う。そして印刷剤残量管理タスク１２ｄは，インク残量がインク終了閾値を下回ったインク色について，表示部６２にその色のインク終了を通知する表示を行わせ，ユーザにインクカートリッジの交換を促す。このように，印刷剤残量管理タスク１２ｄはインク残量の監視とインク残量データの更新を含むインク残量管理を行う。
【００２３】
メモリ管理タスク１２ｅは，上記ジョブ制御タスク１２ｂ，画像処理タスク１２ａ，印刷タスク１２ｃ，印刷剤残量管理タスク１２ｄなどのタスクの要求に応じてＥＥＰＲＯＭ１８へのデータの読み書きを行う。不揮発性メモリであるＥＥＰＲＯＭ１８には，インクジェット式印刷装置が印刷動作を実行するために必要な，電源がオフになっても保持される必要があるデータが記憶される。かかるデータには，インクジェット式印刷装置の機種情報，インクジェット式印刷装置各部の動作状況，インクジェットヘッド７０のノズルの補正情報，そしてＣ，Ｍ，Ｙ，Ｋ，ｌｃ，ｌｍのインク色ごとのインクカートリッジ８０内のインク残量と各インク色のインク終了閾値などのデータが含まれる。
【００２４】
メモリ管理タスク１２ｅは，ＥＥＰＲＯＭ１８へのデータ読み書きに際し，ＥＥＰＲＯＭ１８よりアクセス速度の速い第１のＲＡＭ１６の一部をミラーメモリとして用いる。すなわち，インクジェット式印刷装置の電源がオンになると，メモリ管理タスク１２ｅは，ＥＥＰＲＯＭ１８に記憶されるデータの複製を第１のＲＡＭ１６のミラーメモリ領域１７へ書き込む（ミラーリング）。その際，第１のＲＡＭ１６のミラーメモリ領域１７は，画像処理タスク用データ領域１７ａ，ジョブ制御タスク用データ領域１７ｂ，印刷タスク用データ領域１７ｃ，及び印刷剤残量管理タスク用データ領域１７ｄに区分され，それぞれのデータ領域には対応する画像処理タスク１２ａ，ジョブ制御タスク１２ｂ，印刷タスク１２ｃ，印刷剤残量管理タスク１２ｄの各タスク用のデータが記憶される。
【００２５】
そして，メモリ管理タスク１２ｅはそれぞれのタスクの要求に応じて第１のＲＡＭ１６のミラーメモリ領域１７に対し目的のデータの読み書きを行う。さらに，インクジェット式印刷装置の電源がオフにされたことを電源監視部６１が検知してＣＰＵ１２のＮＭＩ（マスク不能割り込み）端子６３に検知信号が送られると，メモリ管理タスク１２ｅは第１のＲＡＭ１６のミラーメモリ領域１７に記憶されたデータをＥＥＲＰＲＯＭ１８に書き込み，これによりＥＥＰＲＯＭ１８の記憶内容が更新される。このように，本実施形態では，第１のＲＡＭ１６のミラーメモリ領域１７が「第１メモリ」に対応する。
【００２６】
次に，各タスクからのＲＡＭ１６のミラーメモリ領域１７に対するデータの読み書きについて説明する。ジョブ制御タスク１２ｂは，電源オフ時の紙詰まりの有無や，印刷用紙の装填状態を第１のＲＡＭ１６のジョブ制御タスク用データ領域１７ｂに書き込むべくメモリ管理タスク１２ｅに要求し，メモリ管理タスク１２ｅにＣＰＵ１２が割り当てられ，メモリ管理タスク１２ｅが第１のＲＡＭ１６のジョブ制御タスク用データ領域１７ｂへこれらの情報の書き込みを行う。そして，電源がオンになるとメモリ管理タスク１２ｅによりこれらの情報が読み出され，ジョブ制御タスク１２ｂにより表示部６２に紙詰まりの有無などの状況が表示されユーザへの通知がなされる。
【００２７】
画像処理タスク１２ａは，画像処理に際し第１のＲＡＭ１６の画像処理タスク用データ領域１７ａにＥＥＰＲＯＭ１８からミラーリングされるインクジェット式印刷装置の機種情報，例えば印刷可能な印刷用紙サイズなどの読み出しをメモリ管理タスク１２ｅに要求し，メモリ管理タスク１２ｅにＣＰＵ１２が割り当てられ，メモリ管理タスク１２ｅが第１のＲＡＭ１６の画像処理タスク用データ領域１７ａからこれらの情報を読み出す。そして画像処理タスク１２ａは，その情報に基づきホストコンピュータから送られる印刷データに基づく画像が印刷用紙１６０に印刷可能な範囲の画像であるかを判断し，印刷不可能な場合は所定のエラー処理を実行する。
【００２８】
また，印刷タスク１２ｃは，印刷動作の実行に際し，第１のＲＡＭ１６の印刷タスク用データ領域１７ｃにＥＥＰＲＯＭ１８からミラーリングされるインクジェットヘッド７０のノズルの補正情報の読み出しをメモリ管理タスク１２ｅに要求し，メモリ管理タスク１２ｅにＣＰＵ１２が割り当てられ，メモリ管理タスク１２ｅが第１のＲＡＭ１６の印刷タスク用データ領域１７ｃからこれらの情報を読み出す。そして，印刷タスク１２ｃはこれらの情報に基づき，ノズル開口の位置や方向といったハード特性を補正する処理を実行する。
【００２９】
上記のようなジョブ制御タスク１２ｂ，画像処理タスク１２ａ，印刷タスク１２ｃなどの「その他タスク」からメモリ管理タスク１２ｅへの切り替えによって行われる第１のＲＡＭ１６のミラーメモリ領域１７からのデータ読出しは，インクジェット式印刷装置の電源オンから電源オフまでの間に通常１回行われる。しかしながら，印刷剤残量管理タスク１２ｄからのメモリ管理タスク１２ｅへの切り替えとこれに伴うメモリ管理タスク１２ｅによる第１のＲＡＭ１６のミラーメモリ領域１７へのデータの読出し・書き込みは，従来のインク残量管理動作において極めて頻繁に行われていた。ここで，従来のインク残量管理動作の手順について図３（Ａ）を参照しつつ説明する。
【００３０】
印刷剤残量管理タスク１２ｄは，タイマによる一定周期ごとにインク終了判定を行う場合やホストコンピュータのプリンタドライバからインク残量通知要求を受けた場合，あるいはインク消費後にインク残量データの更新を行う場合に，図３（Ａ）に示すようにインク残量読み出し処理Ｓ１００を行う。すなわち印刷剤残量管理タスク１２ｄは第１のＲＡＭ１６の印刷剤残量管理タスク用のデータ領域１７ｄにＥＥＰＲＯＭ１８からミラーリングされるインク残量データの読み出し要求をメモリ管理タスク１２ｅに送る（Ｓ１１０）。そして，データ読出し要求が送られる度にメモリ管理タスク１２ｅにタスク切り替えが行われ，メモリ管理タスク１２ｅがインク残量データを第１のＲＡＭ１６の印刷剤残量管理タスク用のデータ領域１７ｄから読出し，読み出されたインク残量データが印刷剤残量管理タスク１２ｄにより受け取られる（Ｓ１１１）。ここで，インク残量データは図２の符号１８ａに示されるようにＣ，Ｍ，Ｙ，Ｋ，ｌｃ，ｌｍ各インク色ごとのインクカートリッジ８０内のインク残量データが含まれる。よって，前記の一連の処理は各インク色ごとに，つまり６色分の６サイクル実行される。
【００３１】
そして印刷剤残量管理タスク１２ｄはインク残量データを更新する場合にはインク残量計算処理Ｓ１２０において，印刷タスク１２ｃにより第２のＲＡＭ１９に記憶された１パス分のインク滴のカウント値を読出し，これに所定のパラメータを乗算してそのパスの印刷に消費されたインクの消費量を求める。あるいはフラッシングが行われた場合はフラッシングで吐出したインク滴に所定のパラメータを乗算してインク消費量を計算し，クリーニングが行われた場合はポンプ７６により吸引される所定量のインク消費量を求める。そして，読み出されたインク残量から求めたインク消費量を減算して更新されたインク残量データを求める。
【００３２】
そして印刷剤残量管理タスク１２ｄはインク残量書込み処理Ｓ１４０において，更新されたインク残量データの書き込み要求をインク色ごとにメモリ管理タスク１２ｅに送り（Ｓ１５０），データ書き込み要求が送られる度にメモリ管理タスク１２ｅにタスク切り替えが行われ，メモリ管理タスク１２ｅにより第１のＲＡＭ１６の印刷剤残量管理タスク用のデータ領域１７ｄにインク残量データの書き込みが行われる。そして，メモリ管理タスク１２ｅからの書き込み完了通知を印刷剤残量管理タスク１２ｄで受け取る（Ｓ１５１）。これら一連の処理も，各インク色ごとに，つまり６サイクル実行される。
【００３３】
さらに印刷剤残量管理タスク１２ｄで更新後のインク残量に基づくインク終了判定を行う場合は，インク残量読み出し処理Ｓ１６０でメモリ管理タスク１２ｅに対しインク残量データの読み出し要求を送り（Ｓ１７０），要求の度にメモリ管理タスク１２ｅに切り替えが行われてメモリ管理タスク１２ｅがインク残量データの読出しを行い，読み出されたインク残量データを印刷残量タスク１２ｄが受け取る（Ｓ１７１）。そして，第１のＲＡＭ１６から読み出されるインク残量データとインク終了の閾値と比較して，インク残量がインク終了閾値を下回った場合は，表示部６２にその色のインク終了を通知する表示を行わせる。これら一連の処理も，各インク色ごとに，６サイクル実行される。
【００３４】
このように従来の手順では，印刷剤残量管理タスク１２ｄはインク終了判定やインク残量データ更新に際し，Ｃ，Ｍ，Ｙ，Ｋ，ｌｃ，ｌｍの各インク色ごとにインク残量データの読み出しをメモリ管理タスク１２ｅに要求し，その都度ＣＰＵ１２の資源の割当てが印刷剤残量管理タスク１２ｄとメモリ管理タスク１２ｅとの間で行われ，タスク切り替え時間が生じていた。なおかつ，こうしたタスク切り替えは，１パスの分の印刷やタイマによる一定周期のたびに極めて頻繁に行われるため，インクジェット式印刷装置のスループットが悪化するという問題が生じていた。
【００３５】
そこで，本実施形態においては，図３（Ｂ）に示すように，印刷剤残量管理タスク１２ｄにおいて，印刷剤残量管理タスク１２ｄの実行に割り当てられる第２のＲＡＭ１９の領域にタスク内変数Ｐを設け，タスク内変数ＰにＣ，Ｍ，Ｙ，Ｋ，ｌｃ，ｌｍの各インク色のインク残量データ１８ａを格納する。このタスク内変数Ｐは単なる参照用の変数ではなく，印刷剤残量管理タスク１２ｄが起動されたときにメモリ管理タスク１２ｅを介してインク色ごとのインク残量データを第１のＲＡＭ１６から読み込むモジュールであり，このタスク内変数Ｐによって印刷剤残量管理タスク１２ｄ内で一種のキャッシュ機能が実現される。
【００３６】
このようなタスク内変数Ｐを設けることにより，印刷剤残量管理タスク１２ｄはインク残量読み出し処理Ｓ１００でメモリ管理タスク１２ｅへ各インク色ごとにインク残量データの読み出し要求をすることなく，タスク内変数Ｐを直接参照することによりＣ，Ｍ，Ｙ，Ｋ，ｌｃ，ｌｍ各インク色ごとのインク残量データを読み出すことができる（Ｓ２１０）。そして，インク残量計算処理Ｓ１２０の後インク残量書込み処理Ｓ１４０においてタスク内変数Ｐに格納されるインク残量を書き換える（Ｓ２２０）とともに，メモリ管理タスク１２ｅに対してＥＥＰＲＯＭ１８のインク残量データの書き込みを要求し（Ｓ２３０），メモリ管理タスク１２ｅによるインク残量データ書き込みの後にメモリ管理タスク１２ｅから書き込み完了通知を受け取る（Ｓ２３１）。そして，インク残量データ更新後にインク終了判定を行うためのインク残量読み出し処理Ｓ１６０でも，メモリ管理タスク１２ｅに対し各インク色ごとにインク残量データの読み出し要求を送ることなく，タスク内変数Ｐを直接参照して各インク色の更新されたインク残量データを読み出す（Ｓ２５０）ことができる。
【００３７】
このように，本実施形態では印刷剤残量管理タスク１２ｄからメモリ管理タスク１２ｅへの読み出し要求の回数を削減でき，よって印刷剤残量管理タスク１２ｄからメモリ管理タスク１２ｅへのタスク切り替え時間を削減できるので，インクジェット式印刷装置のスループットが向上する。さらに，インク残量データが更新されるときにはメモリ管理タスク１２ｅにより第１のＲＡＭ１６の印刷剤残量管理タスク用データ領域１７ｄに更新されたインク残量データが書き込まれ，電源がオフになるとそのデータがＥＥＰＲＯＭ１８に書き込まれる。これによりＥＥＰＲＯＭ１８のインク残量データが更新され，ＥＥＰＲＯＭ１８に記憶される残量管理データは最新のデータに維持される。
【００３８】
次に，上述した本実施形態におけるインクジェット式印刷装置のインク残量管理手順を図４と図５を用いて具体的に説明する。
【００３９】
図４は，本実施形態のインクジェット式印刷装置におけるインク残量データの読み出し手順を具体的に説明するチャート図である。まず，インクジェット式印刷装置の電源がオンになったときは，メモリ管理タスク１２ｅによりＥＥＲＰＲＯＭ１８からインク残量データを含むデータが読み出され，読み出されたデータが第１のＲＡＭ１６のミラーメモリ領域１７へ書き込まれる（Ｓ１０）。ここで，インク残量データは，Ｃ，Ｍ，Ｙ，Ｋ，ｌｃ，ｌｍのインク色ごとに，Ｃのインク残量，Ｍのインク残量，Ｙのインク残量，Ｋのインク残量，ｌｃのインク残量，ｌｍのインク残量が第１のＲＡＭ１６の印刷剤残量管理タスク用データ領域１７ｄへ書き込まれる。
【００４０】
次に，印刷剤残量管理タスク１２ｄが，例えばホストコンピュータのドライバプログラムからインク残量通知要求されたときやタイマによる一定周期でのインク終了判定を行うためにインク残量データを読み出すときは，まずタスク内変数Ｐの読み出しを行い，印刷剤残量管理タスク１２ｄにＣＰＵ１２が割り当てられた直後でタスク内変数Ｐにインク残量データが格納されておらずタスク内変数Ｐからインク残量を読み出せない場合は（Ｓ１１）メモリ管理タスク１２ｅへインク残量データの読み出し要求を送る（Ｓ１２）。メモリ管理タスク１２ｅはインク残量データ読出し要求に応答し，その度に第１のＲＡＭ１６の印刷剤残量管理タスク用データ領域１７ｄからインク残量データを読み出し（Ｓ１５），タスク内変数Ｐは読み出されたインク残量データを自身に格納する（Ｓ１６）。そして，印刷剤残量管理タスク１２ｄは，タスク内変数Ｐに格納されたインク残量データを読み出す（Ｓ１８）。そして，タスク内変数Ｐにインク残量データが格納された後は，印刷剤残量管理タスク１２ｄはインク終了判定などで各インク色のインク残量データをタスク内変数Ｐから読み出す（Ｓ２０）。これら手順Ｓ１１〜Ｓ２０は，Ｃ，Ｍ，Ｙ，Ｋ，ｌｃ，ｌｍの各インク色ごとに実行される。その結果，従来の手順ではメモリ管理タスク１２ｅへ６色分の読み出し要求を送り，そのたびに読み出されたデータを受け取っていたところ，一旦インク残量データがタスク内変数Ｐに格納された後は直接タスク内変数Ｐからインク残量データを読み出すことで印刷剤残量管理タスク１２ｄとメモリ管理タスク１２ｅとのタスク切り替え時間が削減される。
【００４１】
図５は，本実施形態のインクジェット式印刷装置におけるインク残量データの書き込み手順を具体的に説明するチャート図である。まず，印刷剤残量管理タスク１２ｄはインクが消費された場合にインク残量データを更新すべく，タスク内変数Ｐからインク残量データを読み出す（Ｓ２２）。そして印刷剤残量管理タスク１２ｄは第１のＲＡＭ１６の作業領域に一時的に記憶されたインク滴の吐出カウント値に基づいてインク消費量を計算し，読み出したインク残量データから計算したインク消費量を減算して更新されたインク残量データを求める（Ｓ２４）。フラッシングやクリーニングが行われた場合も，同様にして更新されたインク残量データが求められる。そして，印刷剤残量管理タスク１２ｄは，更新されたインク残量データと，更新前のインク残量データとを比較し，インク残量データの書き込みを行うかを判断する（Ｓ２６）。ここで，Ｃ，Ｍ，Ｙ，Ｋ，ｌｃ，ｌｍの６色すべてのインクが消費されていれば，各インク色のインク残量データは更新されるので更新前後でインク残量データは異なる。しかし，印刷する画像の色によっては必ずしもすべての色のインクが消費されるわけではないので，消費されないインク色のインク残量データは更新前後で同じとなる。
【００４２】
そこで，印刷剤残量管理タスク１２ｄは更新されたインク残量データが更新前のインク残量データと異なる場合は，更新されたインク残量データをタスク内変数Ｐに書き込み（Ｓ２８），かつメモリ管理タスク１２ｅに更新されたインク残量データの書き込みを要求する（Ｓ３０）。すると，メモリ管理タスク１２ｅはこれに応答して第１のＲＡＭ１６の印刷剤残量管理タスク用データ領域１７ｄに更新されたインク残量データを書き込んで（Ｓ３２），第１のＲＡＭ１６にミラーリングされたインク残量データを更新する。そして，メモリ管理タスク１２ｅからは書き込み完了通知が返される（Ｓ３３）。一方，更新前のインク残量データと更新後のインク残量データが同じである場合は，タスク内変数Ｐも第１のＲＡＭ１６にミラーリングされたインク残量データも変更する必要はないので，タスク内変数Ｐの更新もメモリ管理タスク１２ｅへの書き込み要求も行わない。このようにして，タスク内変数Ｐに格納されるインク残量データと第１のＲＡＭ１６の印刷剤残量管理タスク用データ領域１７ｄに格納されるインク残量データとの整合性が保たれる。
【００４３】
このように，上記の手順Ｓ２２〜Ｓ３３もＣ，Ｍ，Ｙ，Ｋ，ｌｃ，ｌｍの各インク色ごとに６サイクル実行される。したがって，インク残量データが更新前後で異なるインク色とインク残量データが更新前後で同じインク色とが存在する場合は，印刷剤残量管理タスク１２ｄは更新前後で異なるインク色の更新後のインク残量データのみを上記手順でタスク内変数Ｐと第１のＲＡＭ１６に書き込み，更新前後で同じインク色については書き込みを行わない。そうすることで，更新前後で同じインク残量データを書き込むためのメモリ管理タスク１２ｅへの不必要な要求を回避でき，タスク切り替え時間をさらに削減することが可能となる。
【００４４】
また，印刷剤残量管理タスク１２ｄの起動直後でタスク内変数Ｐにインク残量が格納されておらず，更新前のインク残量データが無効であり，そのため手順Ｓ２６で更新前のインク残量と更新後のインク残量とが異なる場合には，タスク内変数Ｐにインク残量が格納されていないことを確認し，図４の手順Ｓ１２〜Ｓ１６を実行する。そして，インク残量データをタスク内変数Ｐから読出して（Ｓ２２）インク残量を更新し（Ｓ２４），更新されたインク残量データをタスク内変数Ｐと第１のＲＡＭ１６の印刷剤残量管理タスク用データ領域１７ｄに書き込む（Ｓ２６，Ｓ２８，Ｓ３０，Ｓ３２）。そうすることにより，タスク内変数Ｐに格納されるインク残量データと第１のＲＡＭ１６の印刷剤残量管理タスク用データ領域１７ｄに格納されるインク残量データとの整合性が保たれる。
【００４５】
そして，インク残量データ更新後のタイミングでインク終了判定を行うために印刷剤残量管理タスク１２ｄがインク残量データを読み出す場合には，印刷剤残量管理タスク１２ｄは各インク色の更新されたインク残量データをタスク内変数Ｐから読み出す（Ｓ３４）。このようにして，更新されたインク残量データの読み出し要求をメモリ管理タスク１２ｅへ送ることなくタスク内変数Ｐから読み出すことができ，タスク切り替え時間が削減できる。
【００４６】
そして，インクジェット式印刷装置の電源オフが検知されると，メモリ管理タスク１２ｅにより第１のＲＡＭ１６のミラーメモリ領域１７に書き込まれた更新後のインク残量データを含む各種データがＥＥＰＲＯＭ１８に書き込まれ（Ｓ３６），ＥＥＰＲＯＭ１８の記憶内容が更新される。
【００４７】
なお，上述の説明においては，は第１のＲＡＭ１６のミラーメモリ領域１７を「第１メモリ」として説明したが，メモリ管理タスク１２ｅはミラーメモリを用いずに各タスクからの要求のたびにＥＥＰＲＯＭ１８へデータの読み書きを行う構成とすることも可能であり，その場合はＥＥＰＲＯＭ１８が「第１メモリ」に対応する。また，第２のＲＡＭ１９を「第２メモリ」として第２のＲＡＭ１９にタスク内変数Ｐが設けられたが，第１のＲＡＭ１６のミラーメモリ領域１７以外の領域を印刷剤残量管理タスク１２ｄの実行に割り当て，その領域にタスク内変数Ｐを設けてもよい。その場合は，第１のＲＡＭ１６の印刷剤残量管理タスク１２ｄの実行に割り当てられる領域が「第２メモリ」に対応する。
【００４８】
また上述の説明においては，印刷剤残量管理タスク１２ｄはインク消費前のインク残量からインク消費量を減算することにより更新されたインク残量を求め，インク残量がインク終了閾値を下回る時期を検出することによりインク終了時期を検出する。しかし，インク残量の代わりにインク消費量を第１メモリに記憶しておき，インク消費ごとにインク消費量を加算し，インク消費量が一定の閾値を上回ることでインク終了時期を検出する構成としてもよい。その場合は，第１メモリには各インク色のインク消費量データが記憶され，印刷剤残量管理タスク１２ｄのタスク内変数Ｐに対応する第２メモリにも第１メモリから読み出されるインク消費量データを格納する。そして，印刷剤残量管理タスク１２ｄはインク消費のたびにインク滴の吐出カウントに基づくインク消費量を加算して，更新されたインク消費量データをタスク内変数Ｐ（第２メモリ），および第１メモリに書き込む手順とすることも可能である。
【００４９】
さらに以上の説明ではインクを印刷剤として用いるインクジェット式印刷装置を例としているが，トナーなどインク以外の印刷剤であっても，印刷剤の残量データをメモリに記憶し，監視するタスクを実行する印刷装置に本実施の形態は適用できる。
【００５０】
以上説明したように，本実施形態によれば，頻繁にインク残量データの更新をしてもタスク切り替え時間を削減でき，印刷ジョブのスループットを向上させることができる。  
【図面の簡単な説明】
【００５１】
【図１】本実施形態における印刷装置の構成図である。
【図２】ＣＰＵ１２により実行されるタスクを模式的に説明する図である。
【図３】印刷剤残量管理タスク１２ｄによるインク残量管理動作の手順について説明する図である。
【図４】本実施形態のインクジェット式印刷装置におけるインク残量データの読み出し手順を具体的に説明するチャート図である。
【図５】本実施形態のインクジェット式印刷装置におけるインク残量データの書き込み手順を具体的に説明するチャート図である。
【符号の説明】
【００５２】
１２：ＣＰＵ         １６：  第１のＲＡＭ        １８：  ＥＥＰＲＯＭ
１９：第２のＲＡＭ   １２ｅ：メモリ管理タスク    １２ｄ：印刷剤残量管理タスク
【図１】
2008044220.tif 000003
【図２】
2008044220.tif 000004
【図３】
2008044220.tif 000005
【図４】
2008044220.tif 000006
【図５】
2008044220.tif 000007