(57)【要約】【課題】残量センサの検出誤差の影響を受けずに、適切なタイミングで報知機を作動させることが可能な液体排出装置を提供する。【解決手段】当該装置は、液体を排出する排出指示に従ってヘッドに液体を排出させ（Ｓ１９）、カートリッジホルダにカートリッジが装着されてから、排出指示で排出が指示された液体の量に相当する値で第１カウント値を閾値Ａに近づく向きに更新し（Ｓ２１）、残量センサが出力した第１信号を取得し（Ｓ１８）、残量センサが出力した第２信号を取得し（Ｓ１９）、第２信号を取得した時点の第１カウント値が閾値αに達しており、且つ第２信号を取得した後にさらに更新した第１カウント値が閾値Ａに達したことに応じて（Ｓ２４：ＯＮ）、報知機を作動させる（Ｓ２６）。閾値Ａは、閾値αより第１カウント値の初期値から遠い値である。【選択図】図６
2018158483.tif 000002
【特許請求の範囲】
【請求項１】
液室に液体が貯留されたカートリッジが装着されるカートリッジホルダと、
残量センサと、
上記カートリッジホルダに装着された上記カートリッジの上記液室に連通されるヘッドと、
報知機と、
コントローラとを備える液体排出装置であって、
上記コントローラは、
液体を排出する排出指示に従って上記ヘッドに液体を排出させ、
上記カートリッジホルダに上記カートリッジが装着されてから、上記排出指示で排出が指示された液体の量に相当する値で第１カウント値を閾値Ａに近づく向きに更新し、
上記カートリッジホルダに装着された上記カートリッジの上記液室内の液面が検出位置以上であることに応じて上記残量センサが出力する第１信号を、上記残量センサから取得し、
上記カートリッジホルダに装着された上記カートリッジの上記液室内の液面が検出位置未満であることに応じて上記残量センサが出力する第２信号を、上記第１信号の取得後に上記残量センサから取得し、
上記第２信号を取得した時点の上記第１カウント値が閾値αに達しており、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させ、
上記閾値Ａは、上記閾値αより上記第１カウント値の初期値から遠い値である液体排出装置。
【請求項２】
上記コントローラは、
上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達し且つ閾値βに達しておらず、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させ、
上記閾値βは、上記閾値αより上記第１カウント値の初期値から遠い値である請求項１に記載の液体排出装置。
【請求項３】
上記コントローラは、
上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達していないことに応じて、或いは上記第２信号を取得した時点の上記第１カウント値が上記閾値βに達していることに応じて、
上記第２信号を取得してから上記排出指示で排出が指示された液体の量に相当する値で、第２カウント値を閾値Ｘに近づく向きに更新し、
更新した上記第２カウント値が上記閾値Ｘに達したことに応じて、上記報知機を作動させる請求項２に記載の液体排出装置。
【請求項４】
該液体排出装置は、第１値及び第２値の一方を記憶可能なメモリを備えており、
上記コントローラは、
上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達し且つ上記閾値βに達していないことに応じて、上記メモリに上記第１値を記憶させ、
上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達していないことに応じて、或いは上記第２信号を取得した時点の上記第１カウント値が上記閾値βに達していることに応じて、上記メモリに上記第２値を記憶させ、
上記メモリに上記第１値が記憶されていることに基づいて、上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させ、
上記メモリに上記第２値が記憶されていることに基づいて、更新した上記第２カウント値が上記閾値Ｘに達したことに応じて、上記報知機を作動させる請求項３に記載の液体排出装置。
【請求項５】
上記第２カウント値の初期値と上記閾値Ｘとの差は、上記第２信号を取得した時点の上記第１カウント値と上記閾値Ａとの差より小さい請求項３又は４に記載の液体排出装置。
【請求項６】
上記コントローラは、
更新した上記第２カウント値が閾値Ｙに達したことに応じて、さらに上記ヘッドからの液体の排出を禁止し、
上記閾値Ｙは、上記閾値Ｘより上記第２カウント値の初期値から遠い値である請求項３から５のいずれかに記載の液体排出装置。
【請求項７】
上記閾値α及び上記閾値βで示される範囲は、上記第２信号を取得した時点で上記カートリッジの上記液室に貯留されているべき液体の量として予め定められた値に対して、上記残量センサの検出誤差を加算及び減算した範囲である請求項２から６のいずれかに記載の液体排出装置。
【請求項８】
上記コントローラは、
更新した上記第１カウント値が閾値Ｂに達したことに応じて、さらに上記ヘッドからの液体の排出を禁止し、
上記閾値Ｂは、上記閾値Ａより上記第１カウント値の初期値から遠い値である請求項１から７のいずれかに記載の液体排出装置。
【請求項９】
上記コントローラは、上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達していることに応じて、
上記第２信号を取得してから上記排出指示で排出が指示された液体の量に相当する値で、第２カウント値を閾値Ｘに近づく向きに更新し、
更新した上記第２カウント値が閾値Ｃに達したことに応じて、上記報知機を作動させると共に、上記ヘッドからの液体の排出を禁止し、
上記第２カウント値の初期値と上記閾値Ｃとの差は、上記第２信号を取得した時点の上記第１カウント値と上記閾値Ａとの差より小さい請求項８に記載の液体排出装置。
【請求項１０】
上記カートリッジは、上記カートリッジホルダに装着された上記カートリッジの上記液室内の液面が上記検出位置以上であることに応じて第１位置に位置し、上記検出位置未満であることに応じて上記第１位置と異なる第２位置に位置する被検出子を有し、
上記残量センサは、上記被検出子が上記第１位置に存在することに応じて上記第１信号を出力し、上記被検出子が上記第２位置に存在することに応じて上記第２信号を出力する請求項１から９のいずれかに記載の液体排出装置。
【請求項１１】
液室に液体が貯留されたカートリッジが装着されるカートリッジホルダと、
残量センサと、
上記カートリッジホルダに装着された上記カートリッジの上記液室に連通されるヘッドと、
報知機と、
コントローラとを備える液体排出装置であって、
上記コントローラは、
液体を排出する排出指示に従って上記ヘッドに液体を排出させ、
上記カートリッジホルダに上記カートリッジが装着されてから、上記排出指示で排出が指示された液体の量に相当する値で、第１カウント値を閾値Ａに近づく向きに更新し、
上記カートリッジホルダに装着された上記カートリッジの上記液室内の液面が検出位置以上であることに応じて上記残量センサが出力する第１信号を、上記残量センサから取得し、
上記カートリッジホルダに装着された上記カートリッジの上記液室内の液面が検出位置未満であることに応じて上記残量センサが出力する第２信号を、上記第１信号の取得後に上記残量センサから取得し、
上記第２信号を取得した時点の上記第１カウント値が閾値βに達しており、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させ、
上記閾値Ａは、上記閾値βより上記第１カウント値の初期値から遠い値である液体排出装置。
【請求項１２】
外部より液体の注入が可能であり、注入された液体を貯留する液室を有するタンクと、
残量センサと、
上記タンクの上記液室に連通されるヘッドと、
報知機と、
コントローラとを備える液体排出装置であって、
上記コントローラは、
液体を排出する排出指示に従って上記ヘッドに液体を排出させ、
上記タンクの上記液室に上記液体が注入されてから、上記排出指示で排出が指示された液体の量に相当する値で第１カウント値を閾値Ａに近づく向きに更新し、
上記タンクの上記液室内の液面が検出位置以上であることに応じて上記残量センサが出力する第１信号を、上記残量センサから取得し、
上記タンクの上記液室内の液面が検出位置未満であることに応じて上記残量センサが出力する第２信号を、上記第１信号の取得後に上記残量センサから取得し、
上記第２信号を取得した時点の上記第１カウント値が閾値αに達しており、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させ、
上記閾値Ａは、上記閾値αより上記第１カウント値の初期値から遠い値である液体排出装置。
【請求項１３】
上記コントローラは、
上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達し且つ閾値βに達しておらず、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させ、
上記閾値βは、上記閾値αより上記第１カウント値の初期値から遠い値である請求項１２に記載の液体排出装置。
【請求項１４】
上記コントローラは、上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達していないことに応じて、或いは上記第２信号を取得した時点の上記第１カウント値が上記閾値βに達していることに応じて、
上記第２信号を取得してから上記排出指示で排出が指示された液体の量に相当する値で、第２カウント値を閾値Ｘに近づく向きに更新し、
更新した上記第２カウント値が上記閾値Ｘに達したことに応じて、上記報知機を作動させる請求項１３に記載の液体排出装置。
【請求項１５】
上記第２カウント値の初期値と上記閾値Ｘとの差は、上記第２信号を取得した時点の上記第１カウント値と上記閾値Ａとの差より小さい請求項１４に記載の液体排出装置。
【請求項１６】
外部より液体の注入が可能であり、注入された液体を貯留する液室を有するタンクと、
残量センサと、
上記タンクの上記液室に連通されるヘッドと、
報知機と、
コントローラとを備える液体排出装置であって、
上記コントローラは、
液体を排出する排出指示に従って上記ヘッドに液体を排出させ、
上記タンクの上記液室に上記液体が注入されてから、上記排出指示で排出が指示された液体の量に相当する値で、第１カウント値を閾値Ａに近づく向きに更新し、
上記タンクの上記液室内の液面が検出位置以上であることに応じて上記残量センサが出力する第１信号を、上記残量センサから取得し、
上記タンクの上記液室内の液面が検出位置未満であることに応じて上記残量センサが出力する第２信号を、上記第１信号の取得後に上記残量センサから取得し、
上記第２信号を取得した時点の上記第１カウント値が閾値βに達しており、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させ、
上記閾値Ａは、上記閾値βより上記第１カウント値の初期値から遠い値である液体排出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カートリッジに貯留された液体を排出する液体排出装置に関する
【背景技術】
【０００２】
従来より、カートリッジに貯留されたインクを吐出して、シートに画像を記録するインクジェットプリント装置が知られている（例えば、特許文献１）。上記カートリッジの中には、当該カートリッジのインク残量が所定量になったことに応じて変化する被検出子を有するものが存在する。さらに上記のインクジェットプリント装置の中には、カートリッジ内の被検出子の変化を光学ユニットで検出したことに応じて、インク吐出量のカウントを開始するものが存在する。そして、このインクジェットプリント装置は、カウント値が所定の値に達したことに応じて、カートリッジ内のインクが無くなったと判定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２６４３５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、光学ユニットによるインク残量の検出には、カートリッジ毎の被検出子の取り付け誤差、光学ユニットの経年劣化等によって誤差が生じることがある。そのため、光学ユニットで所定量を検出した時点において、実際にカートリッジ内に残っているインク残量は、カートリッジ毎にばらつくという課題がある。
【０００５】
より詳細には、光学ユニットで所定量を検出した時点の実際のインク残量が所定量より多い場合、インク吐出量のカウントが設計時のタイミングより早く開始される。そのため、カウント値が所定の値に達した時点において、吐出されずにカートリッジ内に残るインクが多くなる。一方、光学ユニットで所定量を検出した時点の実際のインク残量が所定量より少ないと、インク吐出量のカウントが設計時のタイミングより遅く開始される。そのため、カウント値が所定の値に達する前に、吐出されるインクに空気が混じって画像記録品質を低下させる可能性がある。
【０００６】
本発明は、上記の事情に鑑みてなされたものであり、その目的は、残量センサの検出誤差の影響を受けずに、カートリッジの貯留されている液体の残量に関する報知を適切なタイミングで実行可能な液体排出装置を提供することにある。
【課題を解決するための手段】
【０００７】
(1)  本発明の一形態に係る液体排出装置は、液室に液体が貯留されたカートリッジが装着されるカートリッジホルダと、残量センサと、上記カートリッジホルダに装着された上記カートリッジの上記液室に連通されるヘッドと、報知機と、コントローラとを備える。上記コントローラは、液体を排出する排出指示に従って上記ヘッドに液体を排出させ、上記カートリッジホルダに上記カートリッジが装着されてから、上記排出指示で排出が指示された液体の量に相当する値で第１カウント値を閾値Ａに近づく向きに更新し、上記カートリッジホルダに装着された上記カートリッジの上記液室内の液面が検出位置以上であることに応じて上記残量センサが出力する第１信号を、上記残量センサから取得し、上記カートリッジホルダに装着された上記カートリッジの上記液室内の液面が検出位置未満であることに応じて上記残量センサが出力する第２信号を、上記第１信号の取得後に上記残量センサから、取得し、上記第２信号を取得した時点の上記第１カウント値が閾値αに達しており、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させる。上記閾値Ａは、上記閾値αより上記第１カウント値の初期値から遠い値である。
【０００８】
上記構成によれば、残量センサから第２信号を取得した時点の第１カウント値が閾値αに達しているカートリッジについて、報知機の作動タイミングは、カートリッジホルダにカートリッジが装着されてからの液体の排出量の積算値である第１カウント値を用いて決定される。その結果、液体排出装置は、残量センサの検出誤差の影響を受けずに、適切なタイミングで報知機を作動させることができる。
【０００９】
(2)  好ましくは、上記コントローラは、上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達し且つ閾値βに達しておらず、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させる。上記閾値βは、上記閾値αより上記第１カウント値の初期値から遠い値である。
【００１０】
上記構成によれば、液体消費装置は、残量センサから第２信号を取得した時点の第１カウント値が閾値α、βの範囲内のカートリッジについて、残量センサの検出誤差の影響を受けずに、適切なタイミングで報知機を作動させることができる。
【００１１】
(3)  好ましくは、上記コントローラは、上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達していないことに応じて、或いは上記第２信号を取得した時点の上記第１カウント値が上記閾値βに達していることに応じて、上記第２信号を取得してから上記排出指示で排出が指示された液体の量に相当する値で、第２カウント値を閾値Ｘに近づく向きに更新し、更新した上記第２カウント値が上記閾値Ｘに達したことに応じて、上記報知機を作動させる。
【００１２】
上記構成のように、残量センサから第２信号を取得した時点の第１カウント値が閾値α、βの範囲外のカートリッジは、カートリッジホルダに装着された時点でどの程度の液体が貯留されていたのか不明である。そこで、このようなカートリッジについては、残量センサから第２信号を取得してからの液体の排出量の積算値である第２カウント値を用いて、報知機の作動タイミングが決定されるのが望ましい。
【００１３】
(4)  例えば、該液体排出装置は、第１値及び第２値の一方を記憶可能なメモリを備える。上記コントローラは、上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達し且つ上記閾値βに達していないことに応じて、上記メモリに上記第１値を記憶させ、上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達していないことに応じて、或いは上記第２信号を取得した時点の上記第１カウント値が上記閾値βに達していることに応じて、上記メモリに上記第２値を記憶させ、上記メモリに上記第１値が記憶されていることに基づいて、上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させ、上記メモリに上記第２値が記憶されていることに基づいて、更新した上記第２カウント値が上記閾値Ｘに達したことに応じて、上記報知機を作動させる。
【００１４】
(5)  好ましくは、上記第２カウント値の初期値と上記閾値Ｘとの差は、上記第２信号を取得した時点の上記第１カウント値と上記閾値Ａとの差より小さい。
【００１５】
上記構成によれば、残量センサから第２信号を取得してから報知機が作動するまでに排出可能なインク量は、残量センサの検出誤差の有無に拘わらず、第１タイプのカートリッジが第２タイプのカートリッジより常に多くなる。換言すれば、報知機が作動したタイミングで液室内に残留する液体は、第１タイプのカートリッジが第２タイプのカートリッジより常に多くなる。すなわち、第１タイプのカートリッジの液室内のインクを無駄なく排出することができる。
【００１６】
(6)  好ましくは、上記コントローラは、更新した上記第２カウント値が閾値Ｙに達したことに応じて、さらに上記ヘッドからの液体の排出を禁止する。上記閾値Ｙは、上記閾値Ｘより上記第２カウント値の初期値から遠い値である。
【００１７】
上記構成によれば、第２カウント値が閾値Ｙに到達してヘッドによる液体の排出が禁止される前に、第２カウント値が閾値Ｘに到達した段階で事前に報知機が作動される。その結果、新しいカートリッジを用意する猶予がユーザに与えられるので、液体排出装置の稼働率が向上する。
【００１８】
(7)  例えば、上記閾値α及び上記閾値βで示される範囲は、上記第２信号を取得した時点で上記カートリッジの上記液室に貯留されているべき液体の量として予め定められた値に対して、上記残量センサの検出誤差を加算及び減算した範囲である。
【００１９】
(8)  好ましくは、上記コントローラは、更新した上記第１カウント値が閾値Ｂに達したことに応じて、さらに上記ヘッドからの液体の排出を禁止する。上記閾値Ｂは、上記閾値Ａより上記第１カウント値の初期値から遠い値である。
【００２０】
上記構成によれば、第１カウント値が閾値Ｂに達してヘッドによる液体の排出が禁止される前に、第１カウント値が閾値Ａに達した段階で事前に報知機が作動される。その結果、新しいカートリッジを用意する猶予がユーザに与えられるので、液体排出装置の稼働率が向上する。
【００２１】
(9)  好ましくは、上記コントローラは、上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達していることに応じて、上記第２信号を取得してから上記排出指示で排出が指示された液体の量に相当する値で、第２カウント値を閾値Ｘに近づく向きに更新し、更新した上記第２カウント値が閾値Ｃに達したことに応じて、上記報知機を作動させると共に、上記ヘッドからの液体の排出を禁止する。上記第２カウント値の初期値と上記閾値Ｃとの差は、上記第２信号を取得した時点の上記第１カウント値と上記閾値Ａとの差より小さい。
【００２２】
ソフトウェアによってカウントされる第１カウント値は、例えば、意図しないメモリの上書き等によって、予期せずに初期値に戻される可能性が否定できない。そこで上記構成によれば、第２カウント値が閾値Ｃに達したタイミングで報知機が作動され且つ液体の排出が禁止されるので、第１カウント値を用いた制御が補完される。なお、第１カウント値、第２カウント値、及び閾値Ａ、Ｂの関係が前述のように設定されると、第１カウント値が上書きされる等のトラブルがなければ、第２カウント値が閾値Ｃに達するより早く、第１カウント値が閾値Ａに達する。すなわち、第２カウント値を用いた制御は、フェールセーフとして用いられる。
【００２３】
(10)  例えば、上記カートリッジは、上記カートリッジホルダに装着された上記カートリッジの上記液室内の液面が上記検出位置以上であることに応じて第１位置に位置し、上記検出位置未満であることに応じて上記第１位置と異なる第２位置に位置する被検出子を有する。上記残量センサは、上記被検出子が上記第１位置に存在することに応じて上記第１信号を出力し、上記被検出子が上記第２位置に存在することに応じて上記第２信号を出力する。
【００２４】
被検出子は、例えば、カートリッジ内の液体の量に応じて変化する浮力によって移動するフロートを備えていてもよいし、カートリッジ内の液体の量に応じて光の屈折率が変化するプリズム等であってもよい。また、被検出子は、カートリッジ内に配置されること限定されず、カートリッジホルダ側に設けられていてもよい。
【００２５】
(11)  本発明の他の形態に係る液体排出装置は、液室に液体が貯留されたカートリッジが装着されるカートリッジホルダと、残量センサと、上記カートリッジホルダに装着された上記カートリッジの上記液室に連通されるヘッドと、報知機と、コントローラとを備える。上記コントローラは、液体を排出する排出指示に従って上記ヘッドに液体を排出させ、上記カートリッジホルダに上記カートリッジが装着されてから、上記排出指示で排出が指示された液体の量に相当する値で、第１カウント値を閾値Ａに近づく向きに更新し、上記カートリッジホルダに装着された上記カートリッジの上記液室内の液面が検出位置以上であることに応じて上記残量センサが出力する第１信号を、上記残量センサから取得し、上記カートリッジホルダに装着された上記カートリッジの上記液室内の液面が検出位置未満であることに応じて上記残量センサが出力する第２信号を、上記第１信号の取得後に上記残量センサから取得し、上記第２信号を取得した時点の上記第１カウント値が閾値βに達しており、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させる。上記閾値Ａは、上記閾値βより上記第１カウント値の初期値から遠い値である。
【００２６】
残量センサから第２信号を取得した時点の第１カウント値が閾値βに達しているカートリッジは、カートリッジに最初に貯留されていた液体の量が不明であるばかりでなく、残量センサの信頼性にも疑義が生じる。そこで、このようなカートリッジについては、第１カウント値を用いて報知機の作動タイミングが決定されるのが望ましい。
【００２７】
(12)  本発明の他の形態に係る液体排出装置は、外部より液体の注入が可能であり、注入された液体を貯留する液室を有するタンクと、残量センサと、上記タンクの上記液室に連通されるヘッドと、報知機と、コントローラとを備える。上記コントローラは、液体を排出する排出指示に従って上記ヘッドに液体を排出させ、上記タンクの上記液室に上記液体が注入されてから、上記排出指示で排出が指示された液体の量に相当する値で第１カウント値を閾値Ａに近づく向きに更新し、上記タンクの上記液室内の液面が検出位置以上であることに応じて上記残量センサが出力する第１信号を、上記残量センサから取得し、上記タンクの上記液室内の液面が検出位置未満であることに応じて上記残量センサが出力する第２信号を、上記第１信号の取得後に上記残量センサから取得し、上記第２信号を取得した時点の上記第１カウント値が閾値αに達しており、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させる。上記閾値Ａは、上記閾値αより上記第１カウント値の初期値から遠い値である。
【００２８】
(13)  好ましくは、上記コントローラは、上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達し且つ閾値βに達しておらず、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させる。上記閾値βは、上記閾値αより上記第１カウント値の初期値から遠い値である。
【００２９】
(14)  好ましくは、上記コントローラは、上記第２信号を取得した時点の上記第１カウント値が上記閾値αに達していないことに応じて、或いは上記第２信号を取得した時点の上記第１カウント値が上記閾値βに達していることに応じて、上記第２信号を取得してから上記排出指示で排出が指示された液体の量に相当する値で、第２カウント値を閾値Ｘに近づく向きに更新し、更新した上記第２カウント値が上記閾値Ｘに達したことに応じて、上記報知機を作動させる。
【００３０】
(15)  好ましくは、上記第２カウント値の初期値と上記閾値Ｘとの差は、上記第２信号を取得した時点の上記第１カウント値と上記閾値Ａとの差より小さい。
【００３１】
(16)  本発明の他の形態に係る液体排出装置は、外部より液体の注入が可能であり、注入された液体を貯留する液室を有するタンクと、残量センサと、上記タンクの上記液室に連通されるヘッドと、報知機と、コントローラとを備える。上記コントローラは、液体を排出する排出指示に従って上記ヘッドに液体を排出させ、上記タンクの上記液室に上記液体が注入されてから、上記排出指示で排出が指示された液体の量に相当する値で、第１カウント値を閾値Ａに近づく向きに更新し、上記タンクの上記液室内の液面が検出位置以上であることに応じて上記残量センサが出力する第１信号を、上記残量センサから取得し、上記タンクの上記液室内の液面が検出位置未満であることに応じて上記残量センサが出力する第２信号を、上記第１信号の取得後に上記残量センサから取得し、上記第２信号を取得した時点の上記第１カウント値が閾値βに達しており、且つ上記第２信号を取得した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記報知機を作動させる。上記閾値Ａは、上記閾値βより上記第１カウント値の初期値から遠い値である。
【発明の効果】
【００３２】
本発明によれば、残量センサから第２信号を取得した時点の第１カウント値が閾値αに達しているカートリッジについて、第１カウント値を用いて報知機の作動タイミングが決定されるので、残量センサの検出誤差の影響を受けずに、適切なタイミングで報知機を作動させることができる。
【図面の簡単な説明】
【００３３】
【図１】図１は、実施形態に係るカートリッジホルダ１００を備えたプリンタ１０の内部構造を模式的に示す模式断面図である。
【図２】図２は、カートリッジ３０がカートリッジホルダ１００に装着される前の状態を示す縦断面図である。
【図３】図３は、カートリッジ３０がカートリッジホルダ１００に装着され、且つ被検出子５３が第１位置に配置されている状態を示す縦断面図である。
【図４】図４は、カートリッジ３０がカートリッジホルダ１００に装着され、且つ被検出子５３が第２位置に配置されている状態を示す縦断面図である。
【図５】図５は、プリンタ１０のブロック図である。
【図６】図６は、画像記録処理のフローチャートである。
【図７】図７は、カウント処理のフローチャートである。
【図８】図８（Ａ）は残量チェック処理Ａのフローチャートであり、図８（Ｂ）は残量チェック処理Ｂのフローチャートである。
【図９】図９（Ａ）は閾値Ａ、Ｂ、Ｃ、Ｘ、Ｙ、α、βの関係の例を示し、図９（Ｂ）は閾値Ａ、Ｂ、Ｃ、Ｘ、Ｙの設定値及び吐出可能なインク量の関係の例を示す。
【発明を実施するための形態】
【００３４】
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明が具体化された一例にすぎず、本発明の要旨を変更しない範囲で実施形態を適宜変更できることは言うまでもない。
【００３５】
［プリンタ１０の概要］
本実施形態に係るプリンタ１０は、インクジェット記録方式でシートに画像を記録する液体排出装置の一例である。プリンタ１０は、図１に示されるように、給送トレイ１５と、給送ローラ２３と、搬送ローラ部２５と、複数のノズル２９を有するヘッド２１と、ヘッド２１に対面するプラテン２６と、排出ローラ部２７と、排出トレイ１６と、カートリッジ３０が着脱されるカートリッジホルダ１００と、ヘッド２１及びカートリッジホルダ１００に装着されたカートリッジ３０を連通させるチューブ２０とを主に備える。
【００３６】
プリンタ１０は、給送ローラ２３及び搬送ローラ部２５を駆動させて、給送トレイ１５に支持されたシートをプラテン２６の位置まで搬送する。次に、プリンタ１０は、カートリッジホルダ１００に装着されたカートリッジ３０からチューブ２０を通じて供給されるインクを、ヘッド２１のノズル２９から吐出させる。これにより、プラテンに支持されたシートにインクが着弾することで、シート上に画像が記録される。そして、プリンタ１０は、排出ローラ部２７を駆動させて、画像が記録されたシートを排出トレイ１６に排出する。
【００３７】
［カートリッジホルダ１００］
カートリッジホルダ１００は、カートリッジ３０を収容する内部空間を有する箱形状である。カートリッジホルダ１００の内部空間は、天壁、底壁、奥壁、及び一対の側壁によって画定される。一方、カートリッジホルダ１００の奥壁と対面する位置に、内部空間を外部に露出させる開口１０１が形成されている。カートリッジ３０は、開口１０１を通じてカートリッジホルダ１００の内部空間に挿入され、開口１０１を通じてカートリッジホルダ１００の内部空間から抜去される。
【００３８】
以下、カートリッジホルダ１００にカートリッジ３０が挿入される向きを「挿入向き７」と表記し、カートリッジホルダ１００からカートリッジ３０が抜去される向きを「抜去向き８」と表記する。挿入向き７及び抜去向き８は、水平方向に沿う向きであって、且つ互いに逆向きである。また、挿入向き７及び抜去向き８を総称して「挿抜方向９」と表記し、挿抜方向９に直交する水平方向の方向を「幅方向」と表記する。
【００３９】
カートリッジホルダ１００は、図２に示されるように、ニードル１０２と、残量センサ１０３と、装着センサ１０７とを備えている。なお、カートリッジホルダ１００には、ブラックインク、シアンインク、マゼンタインク、イエローインクを貯留した４つのカートリッジ３０が装着される。そして、ニードル１０２、残量センサ１０３、及び装着センサ１０７は、４つのカートリッジ３０に対応して、４つずつ設けられている。但し、カートリッジホルダ１００に装着可能なカートリッジ３０の数は、４つに限定されず、１つでもよいし、５つ以上でもよい。
【００４０】
［ニードル１０２］
ニードル１０２は、カートリッジホルダ１００の奥壁から抜去向き８に突出している。ニードル１０２は、内部に流路が形成された管である。またニードルは１０２は樹脂で成形されている。ニードル１０２は、カートリッジホルダ１００の内部空間に露出された端部が開口されており、反対側の端部にチューブ２０が接続されている。ニードル１０２は、カートリッジホルダ１００に装着されたカートリッジ３０の後述する液室３１と、チューブ２０とを連通させる。
【００４１】
［残量センサ１０３］
残量センサ１０３は、ニードル１０２より鉛直方向６の上方に配置されている。残量センサ１０３は、幅方向に対向して配置された発光部及び受光部を備える。カートリッジホルダ１００に装着されたカートリッジ３０は、残量センサ１０３の発光部及び受光部の間に配置される。換言すれば、発光部及び受光部は、カートリッジホルダ１００に装着されたカートリッジ３０を挟むように、互いに対向した状態で配置されている。
【００４２】
残量センサ１０３は、発光部から照射された光が受光部で受光されたか否かに応じて、信号レベルの異なる信号（図中では、「残量信号」と表記する。）を出力する。残量センサ１０３は、例えば、受光部で受光された光の受光強度が閾値強度未満であることに応じて、ローレベル信号をコントローラ１３０（図５参照）へ出力する。一方、残量センサ１０３は、受光部で受光された光の受光強度が閾値強度以上であることに応じて、ローレベル信号より信号レベルの高いハイレベル信号をコントローラ１３０へ出力する。
【００４３】
［装着センサ１０７］
装着センサ１０７は、カートリッジホルダ１００にカートリッジ３０が装着されているか否かに応じて、信号レベルの異なる信号（図中では、「装着信号」と表記する。）を出力する。より詳細には、装着センサ１０７は、図３及び図４に示されるように、カートリッジホルダ１００にカートリッジ３０が装着されていることに応じて、ハイレベル信号をコントローラ１３０へ出力する。一方、装着センサ１０７は、図２に示されるように、カートリッジホルダ１００にカートリッジ３０が装着されていないことに応じて、ローレベル信号をコントローラ１３０へ出力する。
【００４４】
［カートリッジ３０］
カートリッジ３０は、図２に示されるように、液体の一例であるインクを内部に貯留可能な液室３１を有する容器である。液室３１は、例えば、樹脂製の壁によって画定されている。カートリッジ３０は、例えば、鉛直方向６及び挿抜方向９の寸法が幅方向より大きい扁平形状である。なお、異なる色のインクが貯留されるカートリッジ３０の外形形状は、同一でもよいし、異なっていてもよい。
【００４５】
図３及び図４に示されるように、カートリッジ３０がカートリッジホルダ１００に装着された状態において、残量センサ１０３に対面するカートリッジ３０の壁は、残量センサ１０３の発光部から出力される光を透過する。また、カートリッジ３０がカートリッジホルダ１００に装着された状態で、装着センサ１０７に対面するカートリッジ３０の壁は発光部から出力される光を遮光する。また、カートリッジ３０は、大気連通口３２と、供給管４０と、センサアーム５０とを備える。
【００４６】
大気連通口３２は、液室３１とカートリッジ３０の外部とを連通させる。大気連通口３２は、供給管４０より上方に形成されている。大気連通口３２は、インクの通過を遮断し且つ気体の通過を許容する半透膜３３によって封止されている。または、カートリッジ３０は、カートリッジ３０がカートリッジホルダ１００に装着されたことに応じて大気連通口３２を開放するバルブを備えてもよい。このバルブは、カートリッジ３０がカートリッジホルダ１００から抜去されたことに応じて大気連通口３２を閉塞させてもよい。
【００４７】
供給管４０は、外形形状が概ね円筒形状であって、カートリッジ３０の下部から挿入向き７に突出する。供給管４０の突出端には、開口４１が形成されている。また、供給管４０の内部空間は、液室３１と連通している。すなわち、液室３１に貯留されたインクは、供給管４０の内部空間、及び開口４１を通じてカートリッジ３０の外部に流出する。また、供給管４０の内部空間には、バルブ４２と、コイルバネ４３とが収容されている。
【００４８】
バルブ４２は、供給管４０の内部空間において、開口４１を閉塞させる閉塞位置（図２参照）と、開口４１を開放する開放位置（図３及び図４参照）との間を、挿抜方向９に沿って移動可能に構成されている。コイルバネ４３は、バルブ４２を閉塞位置へ向けて挿入向き７に付勢している。すなわち、液室３１のインクは、バルブ４２が開放位置に配置されていることに応じて、開口４１を通じてカートリッジ３０の外部に流出する。一方、液室３１のインクは、バルブ４２が閉塞位置に配置されていることに応じて、カートリッジ３０の外部に流出しない。
【００４９】
カートリッジ３０がカートリッジホルダ１００に装着される過程において、ニードル１０２は、開口４１を通じて供給管４０の内部空間に進入する。そして、供給管４０の内部空間に進入したニードル１０２は、コイルバネ４３の付勢力に抗してバルブ４２を閉塞位置から開放位置に移動させる。これにより、供給管４０、ニードル１０２、及びチューブ２０を通じて、カートリッジ３０の液室３１とヘッド２１とが連通される。
【００５０】
［センサアーム５０］
センサアーム５０は、液室３１の内部に配置されている。センサアーム５０は、アーム５１と、フロート５２と、被検出子５３とを備える。アーム５１は、液室３１の内部において、鉛直方向６及び挿抜方向９を含む平面上で回動可能に支持されている。フロート５２は、液室３１に貯留されるインクより比重が小さい材料で形成される。フロート５２は、アーム５１の一端に形成されている。被検出子５３は、残量センサ１０３の発光部から出力される光を遮光する材料又は色で形成されている。被検出子５３は、アーム５１の他端に形成されている。
【００５１】
センサアーム５０は、液室３１の内部において、浮力及び重力が釣り合う姿勢に回動する。すなわち、センサアーム５０は、液室３１に貯留されたインク量の変化に伴って回動する。より詳細には、センサアーム５０は、液室３１のインクの液面が検出位置Ｐ以上であることに応じて、図２及び図３に示されるように、被検出子５３が第１位置に位置する姿勢となる。一方、センサアーム５０は、液室３１のインクの液面が検出位置Ｐ未満であることに応じて、図４に示されるように、被検出子５３が第１位置と異なる第２位置に位置する姿勢となる。
【００５２】
第１位置は、カートリッジ３０がカートリッジホルダ１００に装着されたときに、残量センサ１０３の発光部及び受光部の間の光路と重なる位置である。第２位置は、カートリッジ３０がカートリッジホルダ１００に装着されたときに、残量センサ１０３の発光部及び受光部の間の光路から外れた位置である。検出位置Ｐは、新品のカートリッジ３０の液室３１に貯留されているインク量（例えば、１００）のうち、予め定められた量（例えば、５０）のインクが消費されたときの液面の位置である。
【００５３】
すなわち、残量センサ１０３は、カートリッジホルダ１００に装着されたカートリッジ３０の被検出子５３が第１位置に存在していることに応じて、ローレベル信号をコントローラ１３０へ出力する。換言すれば、残量センサ１０３は、カートリッジホルダ１００に装着されたカートリッジ３０の液面が検出位置Ｐ以上であることに応じて、ローレベル信号をコントローラ１３０へ出力する。ローレベル信号は、第１信号の一例である。一方、残量センサ１０３は、カートリッジホルダ１００に装着されたカートリッジ３０の被検出子５３が第２位置に存在していることに応じて、ハイレベル信号をコントローラ１３０へ出力する。換言すれば、残量センサ１０３は、カートリッジホルダ１００に装着されたカートリッジ３０の液面が検出位置Ｐ未満であることに応じて、ハイレベル信号を出力する。ハイレベル信号は、第２信号の一例である。
【００５４】
［コントローラ１３０］
プリンタ１０は、さらにコントローラ１３０を備える。コントローラ１３０は、図５に示されるように、ＣＰＵ１３１、ＲＯＭ１３２、ＲＡＭ１３３、ＥＥＰＲＯＭ１３４、及びＡＳＩＣ１３５を備えている。ＲＯＭ１３２には、ＣＰＵ１３１が各種動作を制御するためのプログラムなどが格納されている。ＲＡＭ１３３は、ＣＰＵ１３１が上記プログラムを実行する際に用いるデータや信号等を一時的に記録する記憶領域、或いはデータ処理の作業領域として使用される。ＥＥＰＲＯＭ１３４には、電源オフ後も保持すべき設定やフラグ等が格納される。
【００５５】
ＡＳＩＣ１３５には、給送ローラ２３、搬送ローラ部２５、排出ローラ部２７、及びヘッド２１が接続されている。コントローラ１３０は、ＡＳＩＣ１３５を通じて不図示のモータを駆動させることによって、給送ローラ２３、搬送ローラ部２５、及び排出ローラ部２７を回転させる。また、コントローラ１３０は、ＡＳＩＣ１３５を通じて不図示の駆動素子に駆動信号を出力することによって、ヘッド２１のノズル２９からインクを吐出させる。ＡＳＩＣ１３５は、ノズル２９から吐出すべきインクの量に応じて、複数種類の駆動信号を出力可能である。
【００５６】
また、ＡＳＩＣ１３５には、残量センサ１０３、装着センサ１０７、及びディスプレイ１０９が接続されている。すなわち、コントローラ１３０には、残量センサ１０３、装着センサ１０７、及びディスプレイ１０９が接続されている。また、コントローラ１３０は、ＡＳＩＣ１３５を通じてディスプレイ１０９に情報を表示させる。ディスプレイ１０９は、報知機の一例である。但し、報知機の具体例はディスプレイ１０９に限定されず、スピーカ、ＬＥＤランプ、或いはこれらの組み合わせでもよい。
【００５７】
ＥＥＰＲＯＭ１３４は、カートリッジホルダ１００に装着される複数のカートリッジ３０それぞれに対応付けて、換言すれば、各カートリッジ３０に貯留されているインクの色に対応付けて、図９に示される各種情報を記憶している。各種情報とは、閾値α、β、ＡＬＬカウント値、センサカウント値、インクローフラグ、エンプティーフラグ、閾値Ａ、Ｂ、Ｃ、Ｘ、Ｙ、及びＣＴＧタイプ情報を指す。ＡＬＬカウント値は第１カウント値の一例であり、センサカウント値は第２カウント値の一例である。
【００５８】
閾値αは、例えば、残量センサ１０３が出力する信号がローレベル信号からハイレベル信号に変化した時点で、カートリッジ３０に貯留されているべきインクの量として予め定められた設計値（例えば、５０）に対して、残量センサ１０３の検出誤差を減算した値（例えば、４５）である。閾値βは、残量センサ１０３が出力する信号がローレベル信号からハイレベル信号に変化した時点でカートリッジ３０に貯留されているべきインクの量として予め定められた設計値に対して、残量センサ１０３の検出誤差を加算した値（例えば、５５）である。すなわち、閾値βは、閾値αより大きい値である。
【００５９】
残量センサ１０３から出力される信号は、液室３１内のインクの液面が検出位置Ｐを下回ったタイミングで、ローレベル信号からハイレベル信号に変化するように設計されている。しかしながら、現実の使用環境においては、カートリッジ３０の製造ばらつき、センサアーム５０の取り付け誤差、残量センサ１０３の経年劣化などの様々な要因が発生する。これらの要因により、残量センサ１０３の出力がローレベル信号からハイレベル信号に変化した時点では、実際の液面の位置が検出位置Ｐと異なる可能性がある。
【００６０】
すなわち、インクの液面が検出位置Ｐより高いうちに、残量センサ１０３の出力がローレベル信号からハイレベル信号に変化する場合もある。または、インクの液面が検出位置Ｐより低くなってから、残量センサ１０３の出力がローレベル信号からハイレベル信号に変化する場合もある。。以下、残量センサ１０３の出力がローレベル信号からハイレベル信号に変化することを、単に、「残量センサ１０３の出力が変化する」と表記する。
【００６１】
そこで、閾値α、βは、実験或いはシミュレーションによって得られた残量センサ１０３の検出誤差の範囲（例えば、設計値±５）をカバーするように予め決定される。なお、閾値α、βで示される範囲は、残量センサ１０３の検出誤差のみならず、以下が考慮されても良い。例えば、駆動信号で示されるインク量とノズル２９から実際に吐出されるインク量との差（所謂、吐出ばらつき）が考慮されてもよい。また、新品のカートリッジ３０に分注されたインク量のばらつき（所謂、分注ばらつき）が考慮されてもよい。
【００６２】
ＡＬＬカウント値は、例えば、カートリッジ３０がカートリッジホルダ１００に装着されてからのインク排出量の積算値である。ＡＬＬカウント値は、カートリッジ３０がカートリッジホルダ１００に装着されてから、ヘッド２１に排出を指示したインクの量に相当する値で閾値Ａ、Ｂに近づく向きに更新される。センサカウント値は、例えば、残量センサ１０３の出力が変化してからのインク排出量の積算値である。センサカウント値は、残量センサ１０３の出力が変化してからヘッド２１に排出を指示したインクの量に相当する値で閾値Ｃ、Ｘ、Ｙに近づく向きに更新される。なお、本実施形態のＡＬＬカウント値及びセンサカウント値は、初期値を“０”としてカウントアップされる値である。すなわち、ＡＬＬカウント値及びセンサカウント値は、インク排出量を示す。
【００６３】
但し、ＡＬＬカウント値及びセンサカウント値は、カートリッジ３０の最大貯留量“１００”を初期値として、カウントダウンされる値でもよい。この場合、ＡＬＬカウント値及びセンサカウント値は、インク残量を示していても良い。また、この場合の閾値α、β、Ａ、Ｂ、Ｃ、Ｘ、Ｙは、例えば、カートリッジ３０の最大貯留量“１００”から図９に示される設定値を減じた値でもよい。また、「閾値に近づく向きに更新」とは、カウント値の初期値と閾値との関係を示す。すなわち、カウントアップされるＡＬＬカウント値は、閾値Ａ、Ｂに達した後も引き続きカウントアップされる。また、カウントダウンされるＡＬＬカウント値は、閾値Ａ、Ｂに達した後も引き続きカウントダウンされる。センサカウント値についても同様である。
【００６４】
インクローフラグは、対応するカートリッジ３０がインクロー状態か否かを示す情報である。インクローフラグには、インクロー状態であることに対応する値“ＯＮ”、或いはインクロー状態でないことに対応する値“ＯＦＦ”が設定される。エンプティフラグは、対応するカートリッジ３０がエンプティ状態か否かを示す情報である。エンプティフラグには、エンプティ状態であることに対応する値“ＯＮ”、或いはエンプティ状態でないことに対応する値“ＯＦＦ”が設定される。インクローフラグ及びエンプティフラグの初期値は“ＯＦＦ”である。
【００６５】
インクロー状態とは、例えば、対応するカートリッジ３０に未だインクが残っているが、当該カートリッジ３０の交換時期が近い状態を指す。すなわち、インクロー状態では、ヘッド２１によるインクの吐出を継続してもよい。エンプティ状態とは、対応するカートリッジ３０にほとんどインクが残っていない状態である。すなわち、エンプティ状態のカートリッジ３０に貯留されているインクは、インクロー状態のときよりも少ない。エンプティ状態になった後にヘッド２１によるインクの吐出を継続すると、ノズル２９内がインクで満たされず、空気が混入してしまう（所謂、エアイン）可能性がある。すなわち、エンプティ状態は、ヘッド２１によるインクの吐出を禁止しなければならない状態である。
【００６６】
閾値Ａは、例えば、対応するカートリッジ３０に貯留可能な最大貯留量（例えば、１００）より小さく、且つ閾値α（例えば、４５）より大きい値（例えば、８０）である。閾値Ａは、例えば、コントローラ１３０がＡＬＬカウント値と比較することによって、対応するカートリッジ３０がインクロー状態か否かを判断するために用いられる。閾値Ｂは、例えば、対応するカートリッジ３０に貯留可能な最大貯留量より小さく、且つ閾値Ａより大きい値（例えば、９０）である。閾値Ｂは、例えば、コントローラ１３０がＡＬＬカウント値と比較することによって、対応するカートリッジ３０がエンプティ状態か否かを判断するために用いられる。
【００６７】
閾値Ｃは、例えば、閾値α（例えば、４５）を加算すると閾値Ｂ（例えば、９０）以上となり、閾値β（例えば、５５）を加算してもカートリッジ３０の最大貯留量（例えば、１００）以下となる値（例えば、４５）である。例えば、センサカウント値の初期値“０”と閾値Ｃとの差は、残量センサ１０３の出力が変化した時点のＡＬＬカウント値と閾値Ａとの差より小さい。閾値Ｃは、例えば、コントローラ１３０がセンサカウント値と比較することによって、対応するカートリッジ３０がエンプティ状態か否かを判断するために用いられる。但し、対応するＡＬＬカウント値が適切に更新されていれば、センサカウント値が閾値Ｃに達する前にＡＬＬカウント値が閾値Ｂに達するように、閾値Ｃの値が決定される。すなわち、閾値Ｃは、ＥＥＰＲＯＭ１３４の意図しない上書き等によって、ＡＬＬカウント値が初期化された場合等のフェールセーフとして用いられる。
【００６８】
閾値Ｘは、例えば、閾値β（例えば、５５）を加算したときに、閾値Ａ（例えば、８０）と一致する値（例えば、２５）、或いは閾値Ａより僅かに小さい値である。閾値Ｘは、例えば、コントローラ１３０がセンサカウント値と比較することによって、対応するカートリッジ３０がインクロー状態か否かを判断するために用いられる。閾値Ｙは、例えば、閾値β（例えば、５５）を加算したときに、閾値Ｂ（例えば、９０）と一致する値（例えば、３５）、或いは閾値Ｂより僅かに小さい値である。また、閾値Ｙは、閾値Ｘより大きい値である。閾値Ｙは、例えば、コントローラ１３０がセンサカウント値と比較することによって、対応するカートリッジ３０がエンプティ状態か否かを判断するために用いられる。
【００６９】
なお、コントローラ１３０は、対応するカートリッジ３０がカートリッジホルダ１００に装着されたことに応じて、ＡＬＬカウント値のカウントアップが開始する。このため、図９（Ｂ）に示されるように、ＡＬＬカウント値が閾値Ａ、Ｂに達するまでヘッド２１から排出可能なインク量は、同一容量の全てのカートリッジ３０で一定になる。一方、コントローラ１３０は、対応する残量センサ１０３の出力が変化したことに応じて、センサカウント値のカウントアップを開始する。このため、センサ誤差によってカウントアップの開始タイミングがずれるので、図９（Ｂ）に示されるように、センサカウント値が閾値Ｃ、Ｘ、Ｙに達するまでにヘッド２１から排出可能なインク量は、同一容量のカートリッジ３０でもばらつく。
【００７０】
ＣＴＧタイプ情報は、カートリッジホルダ１００に装着されているカートリッジ３０のタイプ（以下、「ＣＴＧタイプ」と表記する。）を示すための情報である。ＣＴＧタイプ情報には、ＣＴＧタイプが第１タイプであることに対応する第１値（例えば、０）、或いはＣＴＧタイプが第２タイプであることに対応する第２値（例えば、１）が代入される。第１タイプは、例えば、残量センサ１０３の検出誤差が閾値α、βの範囲に収まる（すなわち、検出誤差が想定範囲内の）カートリッジ３０を指す。第２タイプは、例えば、残量センサ１０３の検出誤差が閾値α、βの範囲を超える（すなわち、検出誤差が想定範囲外の）カートリッジ３０を指す。
【００７１】
［プリンタ１０の動作］
図６〜図８を参照して、本実施形態に係るプリンタ１０の動作を説明する。図６〜図８に示される各処理は、コントローラ１３０のＣＰＵ１３１によって実行される。なお、以下の各処理は、ＲＯＭ１３２に記憶されているプログラムをＣＰＵ１３１が読み出して実行してもよいし、コントローラ１３０に搭載されたハードウェア回路によって実現されてもよい。また、以下の各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。
【００７２】
［画像記録処理］
コントローラ１３０は、プリンタ１０に記録指示が入力されたことに応じて、図６に示される画像記録処理を実行する。記録指示は、画像データで示される画像をシートに記録する記録処理をプリンタ１０に実行させるため排出指示の一例である。記録指示の取得先は特に限定されないが、例えば、不図示の操作パネルを通じてユーザから取得してもよいし、不図示の通信インタフェースを通じて外部装置から取得してもよい。
【００７３】
まず、コントローラ１３０は、４つエンプティフラグそれぞれの設定値を判断する（Ｓ１１）。そして、コントローラ１３０は、４つのエンプティフラグの少なくとも１つに“ＯＮ”が設定されていると判断したことに応じて（Ｓ１１：ＯＮ）、エンプティ報知画面をディスプレイ１０９に表示させる（Ｓ１２）。エンプティ報知画面は、カートリッジ３０を交換しないと、記録処理を継続できない（すなわち、ヘッド２１にインクを吐出させることができない）ことを、ユーザに報知するための画面である。エンプティ報知画面は、例えば、エンプティ状態のカートリッジ３０に貯留されているインクの色を表す文字を含んでもよい。
【００７４】
次に、コントローラ１３０は、エンプティフラグに“ＯＮ”が設定されたカートリッジ３０に対応する装着センサ１０７が出力する信号を所定の時間間隔毎に繰り返し取得する。そして、コントローラ１３０は、装着センサ１０７から繰り返し取得した信号がローレベル信号からハイレベル信号に変化し、再びローレベル信号に変化するまで、エンプティ報知画面の表示を継続しつつ待機する（Ｓ１３＆Ｓ１４：Ｎｏ）。装着センサ１０７が出力する信号がローレベル信号からハイレベル信号に変化するのは、エンプティ状態のカートリッジ３０がカートリッジホルダ１００から抜去されたことに対応する。また、装着センサ１０７が出力する信号がハイレベル信号からローレベル信号に変化するのは、新たなカートリッジ３０がカートリッジホルダ１００に装着されたことに対応する。すなわち、コントローラ１３０は、カートリッジ３０が交換されるまで待機する。
【００７５】
次に、コントローラ１３０は、装着センサ１０７が出力する信号に基づいて、エンプティ状態のカートリッジ３０の交換を検出したことに応じて（Ｓ１４：Ｙｅｓ）、対応する残量センサ１０３が出力する信号を取得する（Ｓ１５）。コントローラ１３０は、取得した残量センサ１０３の信号がローレベル信号か否かを判断する（Ｓ１６）。
【００７６】
なお、Ｓ１６の具体的な処理は、前述の例に限定されない。他の例として、コントローラ１３０は、Ｓ１５において、カートリッジ３０に搭載された不図示のＩＣチップから、当該カートリッジ３０に貯留されているインク量を示すインク量情報を読み出してもよい。そして、コントローラ１３０は、読み出したインク量情報で示されるインク量が閾値以上であることに応じて、Ｓ１７の処理を実行してもよい。一方、コントローラ１３０は、読み出したインク量情報で示されるインク量が閾値未満であることに応じて、Ｓ１７の処理を実行せずに、Ｓ１１以降の処理を実行してもよい。
【００７７】
次に、コントローラ１３０は、残量センサ１０３が出力する信号がローレベル信号であると判断した（すなわち、新たに装着されたカートリッジ３０にインクが貯留されている）ことに応じて（Ｓ１６：Ｌ）、Ｓ１７に示す処理を実行する。コントローラ１３０は、Ｓ１７において、対応するＡＬＬカウント値、センサカウント値、インクローフラグ、及びエンプティフラグに初期値を代入して（Ｓ１７）、Ｓ１１以降の処理を再び実行する。一方、コントローラ１３０は、残量センサ１０３が出力する信号がハイレベル信号であると判断した（すなわち、新たに装着されたカートリッジ３０にインクが貯留されていない）ことに応じて（Ｓ１６：Ｈ）、Ｓ１７の処理を実行せずに、Ｓ１１以降の処理を再び実行する。
【００７８】
次に、コントローラ１３０は、Ｓ１２以降の処理を実行した後において、４つのエンプティフラグの少なくとも１つに“ＯＮ”が設定されていることに応じて（Ｓ１１：ＯＮ）、Ｓ１２以降の処理を再び実行する。一方、コントローラ１３０は、４つのエンプティフラグの全てに“ＯＦＦ”が設定されていることに応じて（Ｓ１１：ＯＦＦ）、現時点で４つの残量センサ１０３それぞれから出力されている信号を取得し、取得した信号がローレベル信号及びハイレベル信号のどちらかを示す情報を、ＲＡＭ１３３に記憶させる（Ｓ１８）。
【００７９】
そして、コントローラ１３０は、記録指示に含まれる画像データで示される画像をシートに記録する（Ｓ１９）。より詳細には、コントローラ１３０は、給送トレイ１５上のシートを給送ローラ２３及び搬送ローラ部２５に搬送させ、ヘッド２１にインクを吐出させ、シートを排出ローラ部２７に搬送させる。これにより、シートに画像が記録され、画像が記録されたシートが排出トレイ１６上に向けて搬送れる。
【００８０】
以上より、コントローラ１３０は、４つのエンプティフラグの全てに“ＯＦＦ”が設定されているときにインクの吐出を許可する。一方で、コントローラ１３０は、４つのエンプティフラグの少なくとも１つに“ＯＮ”が設定されているときにインクの吐出を禁止する。
【００８１】
次に、コントローラ１３０は、記録指示に従ってシートに画像を記録したことに応じて、現時点で４つの残量センサ１０３信号を取得し、取得した信号がローレベル信号及びハイレベル信号のどちらかを示す情報を、ＲＡＭ１３３に記憶させる（Ｓ２０）。そして、コントローラ１３０は、後述するカウント処理を実行する（Ｓ２１）。次に、コントローラ１３０は、記録指示で示された全ての画像をシートに記録するまで（Ｓ２２：Ｙｅｓ）、Ｓ１１〜Ｓ２１の処理を繰り返し実行する。そして、コントローラ１３０は、記録指示で示される全ての画像をシートに記録したことに応じて（Ｓ２２：Ｎｏ）、エンプティフラグ及びインクローフラグの設定値を判断する（Ｓ２３、Ｓ２４）。
【００８２】
コントローラ１３０は、４つのエンプティフラグの少なくとも１つに“ＯＮ”が設定されていることに応じて（Ｓ２３：ＯＮ）、エンプティ報知画面をディスプレイ１０９に表示させる（Ｓ２５）。また、コントローラ１３０は、４つのエンプティフラグの全てに“ＯＦＦ”が設定されており、且つ４つのインクローフラグの少なくとも１つに“ＯＮ”が設定されていることに応じて（Ｓ２３：ＯＦＦ＆Ｓ２４：ＯＮ）、インクロー報知画面をディスプレイ１０９に表示させる（Ｓ２６）。Ｓ２５、Ｓ２６の処理は、報知機を作動させることの一例である。
【００８３】
Ｓ２５で表示されるエンプティ報知画面は、Ｓ１２と同様であってもよい。また、インクロー報知画面は、カートリッジ３０がインクロー状態になったことを、ユーザに報知するための画面である。インクロー報知画面は、例えば、インクロー状態のカートリッジ３０に貯留されているインクの色を表す文字を含んでもよい。一方、コントローラ１３０は、４つのエンプティフラグ及び４つのインクローフラグの全てに“ＯＦＦ”が設定されていることに応じて（Ｓ２４：ＯＦＦ）、Ｓ２５、Ｓ２６の処理を実行せずに、画像記録処理を終了する。
【００８４】
なお、排出指示の具体例は記録指示に限定されず、ノズル２９のメンテナンスを指示するメンテナンス指示等であってもよい。コントローラ１３０は、例えばメンテナンス指示を取得したことに応じて、図６と同様の処理を実行する。メンテナンス指示を取得した場合の前述の処理との相違点は、以下の通りである。まず、コントローラ１３０は、Ｓ１９において、不図示のメンテナンス機構を駆動させて、ノズル２９を通じてインクを排出させる。また、コントローラ１３０は、カウント処理を実行した後にＳ２２の処理を実行することなく、Ｓ２３以降の処理を実行する。
【００８５】
［カウント処理］
次に図７を参照して、Ｓ２１でコントローラ１３０が実行するカウント処理の詳細を説明する。カウント処理は、記録指示に含まれる画像データ或いはメンテナンス指示等に従って、ヘッド２１を通じた排出を指示したインク量に相当する値で、ＡＬＬカウント値及びセンサカウント値を更新する処理である。
【００８６】
まず、コントローラ１３０は、直前のＳ１９で排出を指示したインク量に相当する値で、対応するＡＬＬカウント値をカウントアップする（Ｓ３１）。すなわち、コントローラ１３０は、ブラックインク、シアンインク、マゼンタインク、イエローインクそれぞれのＡＬＬカウント値を、別々にカウントアップする。また、Ｓ１９でシートに画像を記録した場合において、コントローラ１３０は、１ページ分のインク量に相当する値でＡＬＬカウント値をカウントアップする。
【００８７】
次に、コントローラ１３０は、４つの残量センサ１０３それぞれについて、同一の残量センサ１０３からＳ１８、Ｓ２０でＲＡＭ１３３に記憶した残量センサ１０３の信号を示す情報を比較する（Ｓ３２）。すなわち、コントローラ１３０は、直前のＳ１９の処理を実行する前と後とで、４つの残量センサ１０３それぞれの信号が変化したか否かを判断する。残量センサ１０３の信号が変化したことは、対応するカートリッジ３０の液面が検出位置Ｐを下回った、ということに対応する。
【００８８】
コントローラ１３０は、Ｓ１８、Ｓ２０でＲＡＭ１３３に記憶した情報が共にローレベル信号を示す（すなわち、残量センサ１０３の出力が変化していない）ことに応じて（Ｓ３２：Ｌ）、当該カウント処理を終了する。つまり、コントローラ１３０は、当該カートリッジ３０に対応するＡＬＬカウント値、センサカウント値、及びＣＴＧ情報を用いた後述するＳ３３〜Ｓ４１の処理を実行しない。すなわち、液面が検出位置Ｐ以上のカートリッジ３０に対するカウント処理では、ＡＬＬカウント値のみが更新される。
【００８９】
また、コントローラ１３０は、Ｓ１８でＲＡＭ１３３に記憶した情報がローレベル信号を示し、Ｓ２０でＲＡＭ１３３に記憶した情報がハイレベル信号を示す（すなわち、残量センサ１０３の出力が変化した）ことに応じて（Ｓ３２：Ｌ→Ｈ）、Ｓ３３以降の処理を実行する。すなわち、コントローラ１３０は、液面が検出位置Ｐを下回ったカートリッジ３０に対応するＡＬＬカウント値、センサカウント値、及びＣＴＧタイプ情報を用いて、Ｓ３３〜Ｓ３７の処理を実行する。
【００９０】
コントローラ１３０は、直前のＳ３１で更新したＡＬＬカウント値と閾値α、βとを比較する（Ｓ３３、Ｓ３４）。そして、コントローラ１３０は、ＡＬＬカウント値が閾値α以上で且つ閾値β未満であることに応じて（Ｓ３３：Ｙｅｓ＆Ｓ３４：Ｙｅｓ）、対応するＣＴＧタイプ情報に第１値を代入する（Ｓ３５）。一方、コントローラ１３０は、ＡＬＬカウント値が閾値α未満であること（Ｓ３３：Ｎｏ）、或いはＡＬＬカウント値が閾値β以上であることに応じて（Ｓ３４：Ｎｏ）、対応するＣＴＧタイプ情報に第２値を代入する（Ｓ３６）。また、コントローラ１３０は、直前のＳ１９で排出を指示したインク量に相当する値（すなわち、直前のＳ３１で対応するＡＬＬカウント値に加算した値）で、対応するセンサカウント値をカウントアップする（Ｓ３７）。
【００９１】
すなわち、直前のＳ１９の処理中に残量センサ１０３の出力が変化したカートリッジ３０に対するカウント処理では、ＣＴＧタイプが決定されると共に、センサカウント値のカウントアップが開始される。なお、ＡＬＬカウント値は、Ｓ３１において、直前のＳ１９で排出を指示したインクの総量に相当する値で更新されている。このため、ＡＬＬカウント値は、残量センサ１０３の出力が変化した瞬間のＡＬＬカウント値とは僅かにズレを生じている。しかしながら、このズレは僅かなので、Ｓ３１で更新したＡＬＬカウント値を、残量センサ１０３の出力が変化した時点のＡＬＬカウント値として扱うものとする。
【００９２】
さらに、コントローラ１３０は、Ｓ１８、Ｓ２０でＲＡＭ１３３に記憶した情報が共にハイレベル信号を示すことに応じて（Ｓ３２：Ｈ）、Ｓ３８以降の処理を実行する。すなわち、コントローラ１３０は、理想的な状態において液面が既に検出位置Ｐを下回っているカートリッジ３０に対応するＡＬＬカウント値、センサカウント値、及びＣＴＧタイプ情報を用いて、Ｓ３８〜Ｓ４１の処理を実行する。なお、当該カートリッジ３０に対応するＣＴＧタイプ情報には、過去のカウント処理で既に値が代入されている（Ｓ３５、Ｓ３６）。
【００９３】
コントローラ１３０は、直前のＳ１９で排出を指示したインク量に相当する値（すなわち、直前のＳ３１で対応するＡＬＬカウント値に加算した値）で、対応するセンサカウント値をカウントアップする（Ｓ３８）。そして、コントローラ１３０は、対応するＣＴＧタイプ情報に第１値が設定されていることに応じて（Ｓ３９：第１）、残量チェック処理Ａを実行する（Ｓ４０）。一方、コントローラ１３０は、対応するＣＴＧタイプ情報に第２値が設定されていることに応じて（Ｓ３９：第２）、残量チェック処理Ｂを実行する（Ｓ４１）。
【００９４】
すなわち、カウント処理は、ヘッド２１を通じてインクを排出させる度に、カートリッジ３０毎に実行される。例えば、１つのカートリッジ３０を対象として見ると、カートリッジホルダ１００に装着してからしばらくの間はＡＬＬカウント値のみが更新され（Ｓ３１→Ｓ３２：Ｌ）、残量センサ１０３から出力された信号が変化したタイミングでＳ３３〜Ｓ３７の処理が１回だけ実行され（Ｓ３２：Ｌ→Ｈ）、その後はエンプティ状態になるまでＳ３８〜Ｓ４１の処理が実行されることになる（Ｓ３２：Ｈ）。
【００９５】
［残量チェック処理Ａ］
残量チェック処理Ａは、残量センサ１０３の検出誤差が想定範囲内のカートリッジ３０（すなわち、第１タイプのカートリッジ３０）について、コントローラ１３０が、主にＡＬＬカウント値を用いてインク残量をチェックする処理である。図８（Ａ）を参照して、残量チェック処理Ａの詳細を説明する。
【００９６】
まず、コントローラ１３０は、当該カートリッジ３０に対応するＡＬＬカウント値と、閾値Ａ、Ｂとを比較する（Ｓ５１、Ｓ５２）。換言すれば、コントローラ１３０は、ＡＬＬカウント値を用いて、カートリッジ３０の状態（インクロー状態、エンプティ状態、どちらでもない状態）を判断する。また、コントローラ１３０は、当該カートリッジ３０に対応するセンサカウント値と、閾値Ｃとを比較する（Ｓ５３、Ｓ５６）。 
【００９７】
コントローラ１３０は、ＡＬＬカウント値が閾値Ａ以上で且つ閾値Ｂ未満であり（Ｓ５１：Ｙｅｓ＆Ｓ５２：Ｙｅｓ）、且つセンサカウント値が閾値Ｃ未満であることに応じて（Ｓ５３：Ｎｏ）、対応するインクローフラグに“ＯＮ”を代入する（Ｓ５４）。すなわち、この場合は、ＡＬＬカウント値が適切に更新されていると考えられるため、コントローラ１３０は、適切に更新されたＡＬＬカウント値に基づいて、インクローフラグに“ＯＮ”を代入する。
【００９８】
また、コントローラ１３０は、ＡＬＬカウント値が閾値Ａ以上で且つ閾値Ｂ未満であり（Ｓ５１：Ｙｅｓ＆Ｓ５２：Ｙｅｓ）、且つセンサカウント値が閾値Ｃ以上であることに応じて（Ｓ５３：Ｙｅｓ）、対応するエンプティフラグに“ＯＮ”を代入する（Ｓ５５）。検出誤差が想定範囲内である場合において、ＡＬＬカウント値が閾値Ａ以上で且つ閾値Ｂ未満のときのセンサカウント値は、通常は閾値Ｃに達することはない。しかし、ＡＬＬカウント値が閾値Ａ以上で且つ閾値Ｂ未満である一方で、センサカウント値が閾値Ｃに達する場合は、ＡＬＬカウント値が適切に更新されていないと考えられる。ただし、エアインは防がなければいけない。よってこのケースでは、ノズル２９を通じたインクの排出を禁止するために、コントローラ１３０は、エンプティフラグに“ＯＮ”を代入する。
【００９９】
また、コントローラ１３０は、ＡＬＬカウント値が閾値Ｂ以上であることに応じて（Ｓ５１：Ｙｅｓ＆Ｓ５２：Ｎｏ）、対応するエンプティフラグに“ＯＮ”を代入する（Ｓ５５）。なお、この場合には、エンプティフラグに“ＯＮ”が代入されて、以降のインク排出が禁止されるので、センサカウント値及び閾値Ｃの比較を省略することができる。
【０１００】
また、コントローラ１３０は、ＡＬＬカウント値が閾値Ａ未満であり（Ｓ５１：Ｎｏ）、且つセンサカウント値が閾値Ｃ以上であることに応じて（Ｓ５６：Ｙｅｓ）、対応するエンプティフラグに“ＯＮ”を代入する（Ｓ５５）。検出誤差が想定範囲内である場合において、ＡＬＬカウント値が閾値Ａ未満であるときのセンサカウント値は、通常は閾値Ｃに達することはない。しかし、ＡＬＬカウント値が閾値Ａ未満である一方で、センサカウント値が閾値Ｃに達する場合は、ＡＬＬカウント値が適切に更新されていないと考えられる。ただし、エアインは防がなければいけない。よってこのケースでは、ノズル２９を通じたインクの排出を禁止するために、コントローラ１３０は、エンプティフラグに“ＯＮ”を代入する。
【０１０１】
さらに、コントローラ１３０は、ＡＬＬカウント値が閾値Ａ未満であり（Ｓ５１：Ｎｏ）、且つセンサカウント値が閾値Ｃ未満であることに応じて（Ｓ５６：Ｎｏ）、Ｓ５４、Ｓ５５の処理を実行することなく、残量チェック処理Ａを終了する。上述したように、検出誤差が想定範囲内である場合において、ＡＬＬカウント値が閾値Ａ未満であるときのセンサカウント値は、通常は閾値Ｃに達することはない。よって、この場合は、ＡＬＬカウント値が適切に更新されていると考えられる。
【０１０２】
［残量チェック処理Ｂ］
残量チェック処理Ｂは、残量センサ１０３の検出誤差が想定範囲外のカートリッジ３０（すなわち、第２タイプのカートリッジ３０）について、コントローラ１３０がセンサカウント値を用いてインク残量をチェックする処理である。図８（Ｂ）を参照して、残量チェック処理Ｂの詳細を説明する。
【０１０３】
まず、コントローラ１３０は、当該カートリッジ３０に対応するセンサカウント値と、閾値Ｘ、Ｙとを比較する（Ｓ６１、Ｓ６２）。センサカウント値と閾値Ｘ、Ｙとの大小関係は、カートリッジ３０の状態（インクロー状態、エンプティ状態、どちらでもない状態）に対応する。
【０１０４】
コントローラ１３０は、センサカウント値が閾値Ｘ未満であることに応じて（Ｓ６１：Ｎｏ）、Ｓ６３、Ｓ６４の処理を実行せずに、残量チェック処理Ｂを終了する。センサカウント値が閾値Ｘ未満の場合とは、カートリッジ３０に十分な量のインクが残っていることに対応する。
【０１０５】
また、コントローラ１３０は、センサカウント値が閾値Ｘ以上で且つ閾値Ｙ未満であることに応じて（Ｓ６１：Ｙｅｓ＆Ｓ６２：Ｙｅｓ）、対応するインクローフラグに“ＯＮ”を代入する（Ｓ６３）。センサカウント値が閾値Ｘ以上で且つ閾値Ｙ未満の場合とは、カートリッジ３０がインクロー状態であることに対応する。
【０１０６】
さらに、コントローラ１３０は、センサカウント値が閾値Ｙ以上であることに応じて（Ｓ６２：Ｎｏ）、対応するエンプティフラグに“ＯＮ”を代入する（Ｓ６４）。センサカウント値が閾値Ｙ以上の場合とは、カートリッジ３０がエンプティ状態であることに対応する。
【０１０７】
［本実施形態の作用効果］
上記の実施形態によれば、残量センサ１０３の出力が変化した時点のＡＬＬカウント値が閾値α、βの範囲内のカートリッジ３０について、インクロー報知画面或いはエンプティ報知画面（以下、これらを総称して、「報知画面」と表記する。）の表示タイミングは、ＡＬＬカウント値を用いて決定される。その結果、プリンタ１０は、残量センサ１０３の検出誤差の影響を受けずに、適切なタイミングでカートリッジ３０の状態を報知することができる。
【０１０８】
一方、残量センサ１０３の出力が変化した時点のＡＬＬカウント値が閾値α、βの範囲外のカートリッジ３０は、カートリッジホルダ１００に装着された時点でどの程度のインクが貯留されていたのか不明である。そこで上記の実施形態のように、このようなカートリッジ３０については、センサカウント値を用いて報知画面の表示タイミングを決定するのが望ましい。
【０１０９】
また、センサカウント値の初期値と閾値Ｘとの差を、残量センサ１０３の出力が変化した時点のＡＬＬカウント値と閾値Ａとの差より小さくすると、以下の作用効果を奏する。すなわち、残量センサ１０３の出力が変化してから報知画面が表示されるまでに排出可能なインク量は、残量センサ１０３の検出誤差の有無に拘わらず、第１タイプのカートリッジ３０が第２タイプのカートリッジ３０より常に多くなる。換言すれば、報知画面が表示されたタイミングで液室３１に残留するインクは、第１タイプのカートリッジ３０が第２タイプのカートリッジ３０より常に多くなる。すなわち、第１タイプのカートリッジのインクを無駄なく排出することができる。
【０１１０】
また、上記の実施形態によれば、ＡＬＬカウント値が閾値Ｂに達してヘッド２１によるインクの排出が禁止される前に、ＡＬＬカウント値が閾値Ａに達した段階で事前にインクロー報知画面が表示される。同様に、センサカウント値が閾値Ｙに到達してヘッド２１によるインクの排出が禁止される前に、センサカウント値が閾値Ｘに到達した段階で事前にインクロー報知画面が表示される。その結果、新しいカートリッジ３０を用意する猶予がユーザに与えられるので、プリンタの稼働率が向上する。
【０１１１】
また、ソフトウェアによってカウントされるＡＬＬカウント値は、例えば、意図しないＥＥＰＲＯＭ１３４の上書き等によって、予期せずに初期値に戻される可能性が否定できない。そこで上記の実施形態によれば、センサカウント値が閾値Ｃに達したタイミングでエンプティ報知画面が表示され且つインクの排出が禁止されるので、ＡＬＬカウント値を用いた制御が補完される。
【０１１２】
また、上記の実施形態によれば、液室３１内で回動するセンサアーム５０の被検出子５３を残量センサ１０３で検出するので、カートリッジ３０毎の残量センサ１０３の検出誤差が大きくなりやすい。すなわち、本発明は、センサアーム５０を備えるカートリッジ３０が着脱されるプリンタ１０に適用されることによって、特に有利な効果を生じる。但し、被検出子５３の具体例はこれに限定されず、カートリッジ３０内のインクの量に応じて光の屈折率が変化するプリズム等であってもよい。また、被検出子５３は、カートリッジ３０内に配置されること限定されず、カートリッジホルダ１００側に配置されてもよい。
【０１１３】
また、上記の実施形態では、残量センサ１０３の出力が変化した時点のＡＬＬカウント値と、閾値α、βとを比較して、カートリッジ３０が第１タイプか第２タイプかを判断する例を説明した。しかしながら、Ｓ３３、Ｓ３４の一方は省略されてもよい。コントローラ１３０は、例えばＳ３４を省略して、ＡＬＬカウント値が閾値α以上であることに応じてＣＴＧタイプ情報に第１値を代入し（Ｓ３３：Ｙｅｓ→Ｓ３５）、ＡＬＬカウント値が閾値α未満であることに応じてＣＴＧタイプ情報に第２値を代入してもよい（Ｓ３３：Ｎｏ→Ｓ３５）。残量センサ１０３の出力が変化した時点のＡＬＬカウント値が閾値α未満になるのは、例えば、中古のカートリッジ３０が装着された場合が考えられる。
【０１１４】
また、上記の実施形態では、残量センサ１０３の出力が変化した時点のＡＬＬカウント値が、閾値α未満の場合と閾値β以上の場合とで、以降の処理を共通にする例を説明した。しかしながら、ＡＬＬカウント値が閾値α未満の場合と、ＡＬＬカウントが閾値β以上の場合とで、以降の処理を異ならせてもよい。例えば、コントローラ１３０は、残量センサが変化した時点のＡＬＬカウント値が閾値β以上であることに応じて、ＣＴＧタイプ情報に第１値を代入してもよい。
【０１１５】
残量センサ１０３の出力が変化した時点のＡＬＬカウント値が閾値βに達しているカートリッジ３０は、カートリッジ３０に最初に貯留されていたインクの量が不明であるばかりでなく、センサアーム５０の信頼性にも疑義が生じる。そこで、このようなカートリッジ３０については、ＡＬＬカウント値を用いて報知画面の表示タイミングを決定するのが望ましい。さらに他の例として、コントローラ１３０は、残量センサが変化した時点のＡＬＬカウント値が閾値β以上であることに応じて、エンプティフラグに“ＯＮ”を代入（すなわち、インクの排出を禁止）してもよいし、インク量の不明なカートリッジ３０であることをディスプレイ１０９を通じてユーザに報知してもよいし、これらを組み合わせてもよい。
【０１１６】
また、上記の実施形態では、カートリッジホルダ１００にカートリッジ３０を着脱可能なプリンタ１０を、液体排出装置の一例として説明した。しかしながら、プリンタ１０は、カートリッジホルダ１００に代えて、液体であるインクを貯留するタンクを備えてもよい。タンクは、インクを貯留する液室と、タンクの外部から液室にインクを注入するための注入口とを備える。また、ヘッド２１は、チューブ２０を通じてタンクの液室に連通される。
【０１１７】
そして、コントローラ１３０は、注入口を通じてタンクにインクが注入されてから、排出指示で排出が指示された液体の量に相当する値で、ＡＬＬカウント値を更新すればよい。より詳細には、コントローラ１３０は、Ｓ１３〜Ｓ１６の処理に代えて、注入口を通じてタンクにインクが注入されたことを検出したことに応じて、Ｓ１７の処理を実行すればよい。タンクにインクが注入されたことは、例えば、タンクに設けられた残量センサで検出されてもよいし、不図示の操作パネルを通じてユーザからの入力を受け付けてもよい。
【０１１８】
また、上記の実施形態では、インクを液体の一例として説明した。しかしながら、液体は、例えば、画像記録時にインクに先立って用紙などに吐出される前処理液でもよいし、ヘッド２１を洗浄するための水でもよい。
【０１１９】
また、本発明は、コントローラ１３０が前述の処理を実行する装置としてのみならず、液体排出装置が備えるコントローラが、当該液体吐出装置のカートリッジホルダに装着されたカートリッジ内の液体の量を判定する方法としても捉えることができる。該方法は、上記カートリッジホルダに装着された上記カートリッジの液室に連通されたヘッドに、液体を排出する排出指示に従って液体を排出させ、上記カートリッジホルダに上記カートリッジが装着されてから、上記排出指示で排出が指示された液体の量に対応する値で、第１カウント値を閾値Ａに近づく向きに更新し、上記カートリッジの上記液室内の液面が検出位置未満になったことに応じて変化する信号を残量センサから取得し、取得した上記信号が変化した時点の上記第１カウント値が閾値αに達していることに応じて、上記カートリッジホルダに装着された上記カートリッジを第１タイプだと判断し、上記カートリッジホルダに装着された上記カートリッジが上記第１タイプだと判断したことに基づいて、上記信号が変化した後にさらに更新した上記第１カウント値が上記閾値Ａに達したことに応じて、上記液体吐出装置が備える報知機を作動させる。上記閾値Ａは、上記閾値αより上記第１カウント値の初期値から遠い値である。
【符号の説明】
【０１２０】
１０・・・プリンタ
２１・・・ヘッド
３０・・・カートリッジ
３１・・・液室
５３・・・被検出子
１００・・・カートリッジホルダ
１０３・・・残量センサ
１０９・・・ディスプレイ
１３０・・・コントローラ
１３４・・・ＥＥＰＲＯＭ
【図１】
2018158483.tif 000003
【図２】
2018158483.tif 000004
【図３】
2018158483.tif 000005
【図４】
2018158483.tif 000006
【図５】
2018158483.tif 000007
【図６】
2018158483.tif 000008
【図７】
2018158483.tif 000009
【図８】
2018158483.tif 000010
【図９】
2018158483.tif 000011