(57)【要約】【課題】第１液室を有するカートリッジが交換されてから、液面センサが、第２液室内の液面が境界位置以上となる信号を出力する前に、報知機の作動を解除することができる手段を提供する。【解決手段】当該装置は、カウント値Ｎが閾値Ｎｔｈに達したことに応じて、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示し、交換されたインクカートリッジ５０のＩＣチップ６６から液体量Ｖｃを読み出し、読み出された液体量Ｖｃに基づいて、インクカートリッジ５０からサブタンク１００へ期間Δｔに流出する液体の流出量Ｑｃを算出し、算出された流出量Ｑｃが閾値Ｑｔｈ１以上であることに応じて、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去する。【選択図】図１７
2020055164.tif 000002
【特許請求の範囲】
【請求項１】
タンクと、
カートリッジが装着される装着ケースと、
上記タンクと連通されたヘッドと、
液面センサと、
装着センサと、
報知機と、
インタフェースと、
コントローラと、を備える液体排出装置であって、
上記カートリッジは、
液体を貯留する第１液室を有しており、
上記タンクは、
上記液体を貯留する第２液室と、
上記第２液室と連通する液体流路及び気体流路と、
上記第２液室を外部と連通する大気連通路と、を有しており、
上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有しており、
上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有しており、
上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、
上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、
上記第２液室は、上記第３開口よりも下方に位置する部分を有しており、
上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えており、
上記コントローラは、
上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第１信号を、上記液面センサから受信し、
上記第２液室内の液面の位置が上記境界位置未満であることに応じて上記液面センサが出力する第２信号を、上記第１信号の受信後に、上記液面センサから受信し、
上記第２信号の受信後に、上記ヘッドを通じて液体を排出させる排出指示を受け付け、上記排出指示で排出が指示された液体の量に相当する値でカウント値を閾値に近づく向きに更新し、
上記カウント値が上記閾値に達したことに応じて、上記報知機を作動させ、
上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第３信号を、上記装着センサから受信し、
上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第４信号を、上記第３信号を受信した後に、上記装着センサから受信し、
上記第３信号を受信した後に、上記第４信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、
読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ期間Δｔに流出する液体の流出量Ｑｃを算出し、
算出された上記流出量Ｑｃが第１閾値以上であること及び上記報知機を作動させていることに応じて、上記報知機の作動を解除する液体排出装置。
【請求項２】
上記コントローラは、
上記報知機を作動させている間であって且つ上記第３信号を受信した後に、上記第４信号を上記装着センサから受信したことに応じて、第１時間の計測を開始し、
算出した上記流出量Ｑｃが第１閾値未満、かつ第１閾値より小さな第２閾値以上であることに応じて、計測が開始された上記第１時間が待機時間Ｔ１に到達したかを判断し、
計測された上記第１時間が上記待機時間Ｔ１に到達したと判断したことに応じて、上記報知機の作動を解除する請求項１に記載の液体排出装置。
【請求項３】
上記コントローラは、
算出された上記流出量Ｑｃに基づいて、上記第１液室から上記第２液室へ所定の液量が流出する時間に相当する上記待機時間Ｔ１を算出する請求項２に記載の液体排出装置。
【請求項４】
上記第１閾値は、上記ヘッドから上記期間Δｔにおける最大量の液体が排出されるときの液体の排出量である請求項１から３のいずれかに記載の液体排出装置。
【請求項５】
上記コントローラは、
上記報知機の作動を解除した状態において、上記装着センサから上記第３信号を受信し、
上記報知機の作動を解除した状態且つ上記第３信号を受信した後に、上記装着センサから上記第４信号を受信したことに応じて、第２時間の計測を開始し、
上記第２時間の計測を開始してから、上記第２時間が待機時間Ｔ２に到達するまでの間に、上記液面センサから出力される上記第１信号を受信したかを判断し、
上記第２時間の計測を開始してから、上記第２時間が上記待機時間Ｔ２に到達するまでの間に、上記第１信号を  受信していないと判断したことに応じて、上記報知機を再作動する請求項１から４のいずれかに記載の液体排出装置。
【請求項６】
装置メモリを更に備えており、
上記コントローラは、
上記報知機の作動を解除したことに応じて、上記カウント値を上記装置メモリ及び上記カートリッジメモリのいずれかに記憶させてから、上記カウント値をリセットし、
上記報知機を再作動したことに応じて、上記装置メモリ及び上記カートリッジメモリのいずれかに記憶されたカウント値を上記カウント値として設定する請求項５に記載の液体排出装置。
【請求項７】
上記コントローラは、
上記報知機を作動させている間に上記第２信号を受信し、
上記報知機を作動させている間であって且つ上記第２信号を受信した後に、上記第１信号を受信し且つ上記流出量Ｑｃが第２閾値未満であることに応じて、上記報知機の作動を解除する請求項２又は３に記載の液体排出装置。
【請求項８】
上記コントローラは、上記報知機の作動を開始するとともに、上記ヘッドを通じて液体の排出を禁止する請求項１から７のいずれかに記載の液体排出装置。
【請求項９】
上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリを更に具備しており、
上記コントローラは、
液体を排出する排出指示を受け付け、
上記排出指示に従って上記ヘッドに液体を排出させ、
上記排出指示に示される液体の排出量Ｄｈを算出し、
上記ヘッドを通じた液体の排出中の期間Δｔの間に上記第２液室から上記ヘッドに向けて流出する液体の流出量Ｑａを、算出した上記排出量Ｄｈに基づいて算出し、
上記ヘッドを通じた液体の排出中の上記期間Δｔの間に上記第１液室から上記第２液室へ流出する液体の流出量Ｑｃを、上記液体流路の抵抗である流路抵抗Ｒｎに基づいて算出し、
上記装置メモリから上記液体量Ｖｃ、Ｖｓを読み出し、
読み出した上記液体量Ｖｃから上記流出量Ｑｃを減じて、上記期間Δｔが経過した後の上記液体量Ｖｃを算出し、
読み出した上記液体量Ｖｓから上記流出量Ｑａを減じ且つ上記流出量Ｑｃを加えて、上記期間Δｔが経過した後の上記液体量Ｖｓを算出し、
算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させる請求項１から８のいずれかに記載の液体排出装置。
【請求項１０】
上記コントローラは、上記流路抵抗Ｒｎが大きいほど小さくなる上記流出量Ｑｃを算出する請求項９に記載の液体排出装置。
【請求項１１】
カートリッジと、
タンクと、
上記カートリッジが装着される装着ケースと、
上記タンクと連通されたヘッドと、
液面センサと、
装着センサと、
報知機と、
インタフェースと、
コントローラと、を備える液体排出装置であって、
上記カートリッジは、
液体を貯留する第１液室を有しており、
上記タンクは、
上記液体を貯留する第２液室と、
上記第２液室と連通する液体流路及び気体流路と、
上記第２液室を外部と連通する大気連通路と、を有しており、
上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有しており、
上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有しており、
上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、
上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、
上記第２液室は、上記第３開口よりも下方に位置する部分を有しており、
上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えており、
上記コントローラは、
上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第１信号を、上記液面センサから受信し、
上記第２液室内の液面の位置が上記境界位置未満であることに応じて上記液面センサが出力する第２信号を、上記第１信号の受信後に、上記液面センサから受信し、
上記第２信号の受信後に、上記ヘッドを通じて液体を排出させる排出指示を受け付け、上記排出指示で排出が指示された液体の量に相当する値でカウント値を閾値に近づく向きに更新し、
上記カウント値が上記閾値に達したことに応じて、上記報知機を作動させ、
上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第３信号を、上記装着センサから受信し、
上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第４信号を、上記第３信号を受信した後に、上記装着センサから受信し、
上記第３信号を受信した後に、上記第４信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、
読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ期間Δｔに流出する液体の流出量Ｑｃを算出し、
算出された上記流出量Ｑｃが第１閾値以上であること及び上記報知機を作動させていることに応じて、上記報知機の作動を解除する液体排出装置。
【請求項１２】
タンクと、
カートリッジが装着される装着ケースと、
上記タンクと連通されたヘッドと、
装着センサと、
報知機と、
インタフェースと、
コントローラと、を備える液体排出装置であって、
上記カートリッジは、
液体を貯留する第１液室を有しており、
上記タンクは、
上記液体を貯留する第２液室と、
上記第２液室と連通する液体流路及び気体流路と、
上記第２液室を外部と連通する大気連通路と、を有しており、
上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有しており、
上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有しており、
上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、
上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、
上記第２液室は、上記第３開口よりも下方に位置する部分を有しており、
上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えており、
上記コントローラは、
上記第２液室内の液面の位置が境界位置以上であると判定した後に、上記第２液室内の液面の位置が境界位置未満であると判定したことに応じて、上記報知機に第１報知を報知させ、
上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を、上記装着センサから受信し、
上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に、上記装着センサから受信し、
上記報知機に上記第１報知を報知させている間であって且つ上記第１信号を受信した後に上記第２信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、
読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、
算出した上記流出量Ｖｃｓが閾値以上であること及び上記報知機に上記第１報知をさせていることに応じて、上記報知機に報知させている上記第１報知を解除する液体排出装置。
【請求項１３】
液面センサを更に備えており、
上記コントローラは、
上記第２液室内の液面の位置が上記境界位置以上であることに応じて、上記液面センサが出力する第３信号を受信したことに応じて、上記第２液室内の液面の位置が上記境界位置以上であると判定し、
上記第２液室内の液面の位置が上記境界位置未満であることに応じて、上記液面センサが出力する第４信号を受信したことに応じて、上記第２液室内の液面の位置が上記境界位置未満であると判定する請求項１２に記載の液体排出装置。
【請求項１４】
上記境界位置は、上記カートリッジが上記装着ケースに装着された状態で、上記気体流路の上記第３開口を含んで水平方向に延びる仮想線以下の位置である請求項１３に記載の液体排出装置。
【請求項１５】
上記コントローラは、
上記報知機に報知させている上記第１報知を解除した状態において、上記装着センサから上記第１信号を受信し、
上記第１信号を受信した後に、上記装着センサから上記第２信号を受信したことに応じて、時間の計測を開始し、
上記時間の計測を開始してから、上記時間が待機時間Ｔに到達するまでの間に、上記液面センサから出力される上記第３信号を受信したかを判断し、
上記時間の計測を開始してから、上記時間が上記待機時間Ｔに到達するまでの間に、上記液面センサから上記第３信号を受信していないと判断したこと且つ上記報知機に報知させていた上記第１報知を解除していることに応じて、上記報知機に第１報知を再報知させる請求項１３又は１４に記載の液体排出装置。
【請求項１６】
上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリを更に具備しており、
上記コントローラは、
液体を排出する排出指示を受け付け、
上記排出指示に従って上記ヘッドに液体を排出させ、
上記排出指示に示される液体の排出量Ｄｈを算出し、
上記ヘッドを通じた液体の排出中の期間Δｔの間に上記第２液室から上記ヘッドに向けて流出する液体の流出量Ｑａを、算出した上記排出量Ｄｈに基づいて算出し、
上記ヘッドを通じた液体の排出中の上記期間Δｔの間に上記第１液室から上記第２液室へ流出する液体の流出量Ｑｃを、上記液体流路の流路抵抗Ｒｎに基づいて算出し、
上記装置メモリから上記液体量Ｖｃ、Ｖｓを読み出し、
読み出した上記液体量Ｖｃから上記流出量Ｑｃを減じて、上記期間Δｔが経過した後の上記液体量Ｖｃを算出し、
読み出した上記液体量Ｖｓから上記流出量Ｑａを減じ且つ上記流出量Ｑｃを加えて、上記期間Δｔが経過した後の上記液体量Ｖｓを算出し、
算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させる請求項１２から１５のいずれかに記載の液体排出装置。
【請求項１７】
上記コントローラは、上記流路抵抗Ｒｎが大きいほど小さくなる上記流出量Ｑｃを算出する請求項１６に記載の液体排出装置。
【請求項１８】
液面センサを更に備えており、
上記コントローラは、
上記第２液室内の液面の位置が上記境界位置以上であることに応じて、上記液面センサが出力する第３信号を受信しことに応じて、上記第２液室内の液面の位置が上記境界位置以上であると判定し、
上記第２液室内の液面の位置が上記境界位置未満であることに応じて、上記液面センサが出力する第４信号を受信したことに応じて、上記第２液室内の液面の位置が上記境界位置未満であると判定し、
上記液面センサから上記第３信号を受信し、
上記第３信号を受信した後に、上記液面センサから上記第４信号を受信したことに応じて、上記液体量Ｖｃ及び上記液体量Ｖｓをそれぞれ予め定められた値に更新する請求項１６又は１７に記載の液体排出装置。
【請求項１９】
上記コントローラは、
上記報知機に報知させている上記第１報知を解除した状態において、上記装着センサから上記第１信号を受信し、
上記第１信号を受信した後に、上記装着センサから上記第２信号を受信したことに応じて、時間の計測を開始し、
上記時間の計測を開始してから、上記時間が待機時間Ｔに到達するまでの間に、上記液面センサから出力される上記第３信号を受信したかを判断し、
上記時間の計測を開始してから、上記時間が待機時間Ｔに到達するまでの間に、上記液面センサから上記第３信号を受信していないと判断したことに応じて、上記液体量Ｖｓが不定であることを示す第２報知を上記報知機に報知させる請求項１８に記載の液体排出装置。
【請求項２０】
カートリッジと、
タンクと、
上記カートリッジが装着される装着ケースと、
上記タンクと連通されたヘッドと、
装着センサと、
報知機と、
インタフェースと、
コントローラと、を備える液体排出装置であって、
上記カートリッジは、
液体を貯留する第１液室を有しており、
上記タンクは、
上記液体を貯留する第２液室と、
上記第２液室と連通する液体流路及び気体流路と、
上記第２液室を外部と連通する大気連通路と、を有しており、
上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有しており、
上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有しており、
上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、
上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、
上記第２液室は、上記第３開口よりも下方に位置する部分を有しており、
上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えており、
上記コントローラは、
上記第２液室内の液面の位置が境界位置以上であると判定した後に、上記第２液室内の液面の位置が境界位置未満であると判定したことに応じて、上記報知機に第１報知を報知させ、
上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を、上記装着センサから受信し、
上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に、上記装着センサから受信し、
上記報知機に上記第１報知を報知させている間であって且つ上記第１信号を受信した後に上記第２信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、
読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、
算出した上記流出量Ｖｃｓが閾値以上であること及び上記報知機に上記第１報知をさせていることに応じて、上記報知機に報知させている上記第１報知を解除する液体排出装置。
【請求項２１】
液体を貯留する第２液室を有するタンクと、
液体を貯留する第１液室を有するカートリッジが装着される装着ケースと、
上記タンクと連通されたヘッドと、
液面センサと、
装着センサと、
上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリと、
報知機と、
インタフェースと、
コントローラと、を備える液体排出装置であって、
上記タンクは、
上記第２液室と連通する液体流路及び気体流路と、
上記第２液室を外部と連通する大気連通路と、を有しており、
上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有しており、
上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有しており、
上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、
上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、
上記第２液室は、上記第３開口よりも下方に位置する部分を有しており、
上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えており、
上記コントローラは、
上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第３信号を受信し、
上記第２液室内の液面の位置が上記境界位置未満であることに応じて上記液面センサが出力する第４信号を、上記第３信号を受信した後に、上記装着センサから受信したことに応じて、上記液体量Ｖｃ及び上記液体量Ｖｓをそれぞれ予め定められた値に更新し、更に、上記報知機に第１報知を報知させ、
液体を排出する排出指示を受け付け、
上記排出指示に従って上記ヘッドに液体を排出させ、
上記排出指示に示される液体の排出量Ｄｈを算出し、
上記排出量Ｄｈに基づいて、上記第１液室に貯留されている上記液体量Ｖｃ、及び上記第２液室に貯留されている上記液体量Ｖｓを算出し、
算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させ、
算出した上記液体量Ｖｃを上記カートリッジメモリに記憶させ、
上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を上記装着センサから受信し、
上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に上記装着センサから受信したことに応じて、上記液体量Ｖｃを上記カートリッジメモリから読み出し、
読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、
算出した上記流出量Ｖｃｓが閾値未満であること及び上記装着センサから上記第４信号を受信していることに応じて、上記液体量Ｖｓが不定であることを示す第２報知を上記報知機に報知させる液体排出装置。
【請求項２２】
上記コントローラは、上記液面センサから上記第３信号を受信し、上記第３信号を受信した後に、上記液面センサから上記第４信号を受信したことに応じて、上記液体量Ｖｃ及び上記液体量Ｖｓをそれぞれ予め定められた値に更新して、上記第２報知を解除する請求項２１に記載の液体排出装置。
【請求項２３】
上記コントローラは、算出した上記流出量Ｖｃｓが閾値未満であること及び上記報知機に上記第１報知を報知させていることに応じて、上記第２報知を上記報知機に報知させる請求項２１又は２２に記載の液体排出装置。
【請求項２４】
上記コントローラは、
上記報知機に上記第２報知を報知させている状態において、上記装着センサから上記第１信号を受信し、
上記報知機に上記第２報知を報知させている状態且つ上記第１信号を受信した後に、上記装着センサから上記第２信号を受信したことに応じて、時間の計測を開始し、
上記時間の計測を開始してから、上記時間が待機時間Ｔに到達するまでの間に、上記液面センサから出力される上記第３信号を受信したかを判断し、
上記時間の計測を開始してから、上記時間が上記待機時間Ｔに到達するまでの間に、上記液面センサから上記第３信号を受信したことに応じて、上記報知機の第１報知を解除する請求項２１に記載の液体排出装置。
【請求項２５】
上記境界位置は、上記気体流路の上記第３開口を通過して水平方向に延びる仮想線以下の位置である請求項２１から２４のいずれかに記載の液体排出装置。
【請求項２６】
上記コントローラは、
上記ヘッドを通じた液体の排出中の期間Δｔの間に上記第２液室から上記ヘッドに向けて流出する液体の流出量Ｑａを、算出した上記排出量Ｄｈに基づいて算出し、
上記ヘッドを通じた液体の排出中の上記期間Δｔの間に上記第１液室から上記第２液室へ流出する液体の流出量Ｑｃを、上記液体流路の流路抵抗Ｒｎに基づいて算出し、
上記装置メモリから上記液体量Ｖｃ、Ｖｓを読み出し、
読み出した上記液体量Ｖｃから上記流出量Ｑｃを減じて、上記期間Δｔが経過した後の上記液体量Ｖｃを算出し、
読み出した上記液体量Ｖｓから上記流出量Ｑａを減じ且つ上記流出量Ｑｃを加えて、上記期間Δｔが経過した後の上記液体量Ｖｓを算出する請求項２１から２５のいずれかに記載の液体排出装置。
【請求項２７】
上記コントローラは、上記流路抵抗Ｒｎが大きいほど小さくなる上記流出量Ｑｃを算出する請求項２６に記載の液体排出装置。
【請求項２８】
液体を貯留する第２液室を有するタンクと、
液体を貯留する第１液室を有するカートリッジが装着される装着ケースと、
上記タンクと連通されたヘッドと、
装着センサと、
上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリと、
報知機と、
インタフェースと、
コントローラと、を備える液体排出装置であって、
上記タンクは、
上記第２液室と連通する液体流路及び気体流路と、
上記第２液室を外部と連通する大気連通路と、を有しており、
上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有しており、
上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有しており、
上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、
上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、
上記第２液室は、上記第３開口よりも下方に位置する部分を有しており、
上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えており、
上記コントローラは、
上記第２液室内の液面の位置が境界位置以上であると判定した後に、上記第２液室内の液面の位置が境界位置未満であると判定したことに応じて、上記報知機に第１報知を報知させ、
上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を、上記装着センサから受信し、
上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に、上記装着センサから受信し、
上記第１信号を受信した後に上記第２信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、
読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、
算出された上記流出量Ｖｃｓが閾値未満であること及び上記第２液室内の液面の位置が上記境界位置未満であると判定されていることに応じて、上記カートリッジの再交換を促す報知を上記報知機に報知させる液体排出装置。
【請求項２９】
液面センサを更に備えており、
上記コントローラは、
上記第２液室内の液面の位置が上記境界位置以上であることに応じて、上記液面センサが出力する第３信号を受信したことに応じて、上記第２液室内の液面の位置が上記境界位置以上であると判定し、
上記第２液室内の液面の位置が上記境界位置未満であることに応じて、上記液面センサが出力する第４信号を受信したことに応じて、上記第２液室内の液面の位置が上記境界位置未満であると判定する請求項２８に記載の液体排出装置。
【請求項３０】
液体を貯留する第１液室を有するカートリッジと、
液体を貯留する第２液室を有するタンクと、
上記カートリッジが装着される装着ケースと、
上記タンクと連通されたヘッドと、
液面センサと、
装着センサと、
上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリと、
報知機と、
インタフェースと、
コントローラと、を備える液体排出装置であって、
上記タンクは、
上記第２液室と連通する液体流路及び気体流路と、
上記第２液室を外部と連通する大気連通路と、を有しており、
上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有しており、
上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有しており、
上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、
上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、
上記第２液室は、上記第３開口よりも下方に位置する部分を有しており、
上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えており、
上記コントローラは、
上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第３信号を受信し、
上記第２液室内の液面の位置が上記境界位置未満であることに応じて上記液面センサが出力する第４信号を、上記第３信号を受信した後に、上記装着センサから受信したことに応じて、上記液体量Ｖｃ及び上記液体量Ｖｓをそれぞれ予め定められた値に更新し、更に、上記報知機に第１報知を報知させ、
液体を排出する排出指示を受け付け、
上記排出指示に従って上記ヘッドに液体を排出させ、
上記排出指示に示される液体の排出量Ｄｈを算出し、
上記排出量Ｄｈに基づいて、上記第１液室に貯留されている上記液体量Ｖｃ、及び上記第２液室に貯留されている上記液体量Ｖｓを算出し、
算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させ、
算出した上記液体量Ｖｃを上記カートリッジメモリに記憶させ、
上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を上記装着センサから受信し、
上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に上記装着センサから受信したことに応じて、上記液体量Ｖｃを上記カートリッジメモリから読み出し、
読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、
算出した上記流出量Ｖｃｓが閾値未満であること及び上記装着センサから上記第４信号を受信していることに応じて、上記液体量Ｖｓが不定であることを示す第２報知を上記報知機に報知させる液体排出装置。
【請求項３１】
液体を貯留する第１液室を有するカートリッジと、
液体を貯留する第２液室を有するタンクと、
上記カートリッジが装着される装着ケースと、
上記タンクと連通されたヘッドと、
装着センサと、
上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリと、
報知機と、
インタフェースと、
コントローラと、を備える液体排出装置であって、
上記タンクは、
上記第２液室と連通する液体流路及び気体流路と、
上記第２液室を外部と連通する大気連通路と、を有しており、
上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有しており、
上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有しており、
上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、
上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、
上記第２液室は、上記第３開口よりも下方に位置する部分を有しており、
上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えており、
上記コントローラは、
上記第２液室内の液面の位置が境界位置以上であると判定した後に、上記第２液室内の液面の位置が境界位置未満であると判定したことに応じて、上記報知機に第１報知を報知させ、
上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を、上記装着センサから受信し、
上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に、上記装着センサから受信し、
上記第１信号を受信した後に上記第２信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、
読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、
算出された上記流出量Ｖｃｓが閾値未満であること及び上記第２液室内の液面の位置が上記境界位置未満であると判定されていることに応じて、上記カートリッジの再交換を促す報知を上記報知機に報知させる液体排出装置。
【請求項３２】
液体を貯留する第２液室を有するタンクと、
液体を貯留する第１液室を有するカートリッジが装着される装着ケースと、
上記タンクと連通されたヘッドと、
装着センサと、
上記第１液室及び上記第２液室に貯留されている液体の量を特定するための液体量Ｖを記憶する装置メモリと、
液面センサと、
コントローラと、を備える液体排出装置であって、
上記タンクは、
上記第２液室と連通する液体流路及び気体流路と、
上記第２液室を外部と連通する大気連通路と、を有しており、
上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有しており、
上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有しており、
上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、
上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、
上記第２液室は、上記第３開口よりも下方に位置する部分を有しており、
上記コントローラは、
上記ヘッドを通じて液体を排出させる第１排出指示を受け付け、
受け付けた上記第１排出指示に従って、上記ヘッドを通じて液体を排出させ、
上記第１排出指示で排出が指示された液体の量に相当する値で、上記装置メモリに記憶された上記液体量Ｖを更新し、
更新した上記液体量Ｖが閾値量以上であるかを判断し、
上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第１信号或いは上記境界位置未満であることに応じて上記液面センサが出力する第２信号を、上記第１排出指示に従った液体の排出後に上記液面センサから受信し、
更新した上記液体量Ｖが上記閾値量以上であると判断し、且つ上記液面センサから上記第２信号を受信したことに応じて、上記装置メモリに記憶された上記液体量Ｖを所定値に更新し、
更新した上記液体量Ｖが上記閾値量未満であると判断し、且つ上記液面センサから上記第１信号を受信したことに応じて、上記ヘッドを通じた液体の排出を禁止する液体排出装置。
【請求項３３】
上記液体量Ｖは、上記第２液室に貯留されている液体量Ｖｓであり、
上記所定値は、上記第２液室のうち、上記境界位置より下方の部分の容積に相当し、
上記閾値量は、上記所定値未満の値である請求項３２に記載の液体排出装置。
【請求項３４】
上記コントローラは、
上記液体量Ｖを上記所定値に更新した後に、上記ヘッドを通じて液体を排出させる第２排出指示を受け付け、
受け付けた上記第２排出指示に従って上記ヘッドを通じて液体を排出させ、
上記第２排出指示で排出が指示された液体の量に相当する値で、カウント値を閾値に近づく向きに更新し、
上記カウント値が上記閾値に達したかを判断し、
上記カウント値が上記閾値に達したと判断したことに応じて、上記ヘッドを通じた液体の排出を禁止する請求項３２又は３３に記載の液体排出装置。
【請求項３５】
該液体排出装置は、ディスプレイを備えており、
上記コントローラは、算出した上記液体量Ｖに関連する情報を上記ディスプレイに表示させる請求項３２から３４のいずれかに記載の液体排出装置。
【請求項３６】
上記液体量Ｖは、上記第１液室に貯留されている液体量Ｖｃをさらに含み、
上記コントローラは、
上記第１排出指示に示される液体の排出量Ｄｈを算出し、
上記ヘッドを通じた液体の排出中の期間Δｔの間に上記第２液室から上記ヘッドに向けて流出する液体の流出量Ｑａを、算出した上記排出量Ｄｈに基づいて算出し、
上記ヘッドによる液体の排出中の上記期間Δｔの間に上記第１液室から上記第２液室へ流出する液体の流出量Ｑｃを、上記液体流路の流路抵抗Ｒｎに基づいて算出し、
上記装置メモリから上記液体量Ｖｃ、Ｖｓを読み出し、
読み出した上記液体量Ｖｃから上記流出量Ｑｃを減じて、上記期間Δｔが経過した後の上記液体量Ｖｃを算出し、
読み出した上記液体量Ｖｓから上記流出量Ｑａを減じ且つ上記流出量Ｑｃを加えて、上記期間Δｔが経過した後の上記液体量Ｖｓを算出し、
算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させる請求項３２から３５のいずれかに記載の液体排出装置。
【請求項３７】
上記カートリッジが上記装着ケースに装着された状態において、上記第１液室の一部と上記第２液室の一部とは、水平方向から見て互いに重なり、
上記コントローラは、基準位置から上記第１液室の液面までの高さＨｃが大きいほど、大きくなる上記流出量Ｑｃを算出する請求項３６に記載の液体排出装置。
【請求項３８】
該液体排出装置は、装着センサと、インタフェースとを備えており、
上記カートリッジは、当該カートリッジが上記装着ケースに装着された状態で上記インタフェースと導通可能であり、且つ上記液体量Ｖｃを記憶するカートリッジメモリを備えており、
上記コントローラは、
上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第３信号を、上記装着センサから受信し、
上記装着ケースに上記カートリッジが装着されたことに応じて上記装着センサが出力する第４信号を、上記第３信号を受信した後に上記装着センサから受信し、
上記第４信号を受信したことに応じて、上記カートリッジメモリから上記液体量Ｖｃを読み出し、
読み出した上記液体量Ｖｃを上記装置メモリに記憶させる請求項３６又は３７に記載の液体排出装置。
【請求項３９】
上記コントローラは、
上記流出量Ｑａ、Ｑｃ及び上記液体量Ｖｃ、Ｖｓを算出し且つ算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させ、
上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させてから上記期間Δｔが経過するまで待機し、
上記期間Δｔが経過したことに応じて、再び、上記流出量Ｑａ、Ｑｃ及び上記液体量Ｖｃ、Ｖｓを算出し且つ算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させる請求項３６から３８のいずれかに記載の液体排出装置。
【請求項４０】
上記コントローラは、
上記流出量Ｑａ、Ｑｃ及び上記液体量Ｖｃ、Ｖｓを算出し且つ算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させたことに応じて、上記高さＨｃ、Ｈｓの差が閾値高さ未満か否かを判断し、
上記高さＨｃ、Ｈｓの差が上記閾値高さ以上だと判断したことに応じて、上記期間Δｔが経過するまで待機する請求項３９に記載の液体排出装置。
【請求項４１】
上記コントローラは、上記高さＨｃ、Ｈｓの差が上記閾値高さ未満だと判断したことに応じて、上記流出量Ｑａ、Ｑｃ及び上記液体量Ｖｃ、Ｖｓを算出し且つ算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させる処理を停止する請求項４０に記載の液体排出装置。
【請求項４２】
上記境界位置は、上記気体流路の上記第３開口を通過して水平方向に延びる仮想線以下の位置である請求項３２から４１のいずれかに記載の液体排出装置。
【請求項４３】
上記液体量Ｖは、上記第１液室に貯留された液体量Ｖｃと、上記第２液室に貯留された液体量Ｖｓとを含み、
上記閾値量は、上記液体量Ｖｃが０になってからの上記液体量Ｖｓの変化量を示し、
上記所定値は、上記第２液室のうち、上記境界位置より下方の部分の容積に相当する請求項３２に記載の液体排出装置。
【請求項４４】
上記液体量Ｖは、上記第１液室及び上記第２液室に貯留されている液体の総量である請求項３２に記載の液体排出装置。
【請求項４５】
液体を貯留する第２液室を有するタンクと、
液体を貯留する第１液室を有するカートリッジが装着される装着ケースと、
上記タンクと連通されたヘッドと、
装着センサと、
上記第１液室及び上記第２液室に貯留されている液体の量を特定するための液体量Ｖを記憶する装置メモリと、
液面センサと、
コントローラと、を備える液体排出装置であって、
上記タンクは、
上記第２液室と連通する液体流路及び気体流路と、
上記第２液室を外部と連通する大気連通路と、を有しており、
上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有しており、
上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有しており、
上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、
上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、
上記第２液室は、上記第３開口よりも下方に位置する部分を有しており、
上記コントローラは、
上記ヘッドを通じて液体を排出させる第１排出指示を受け付け、
受け付けた上記第１排出指示に従って、上記ヘッドを通じて液体を排出させ、
上記第１排出指示で排出が指示された液体の量に相当する値で、上記装置メモリに記憶された上記液体量Ｖを更新し、
更新した上記液体量Ｖが閾値量以上であるかを判断し、
上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第１信号或いは上記境界位置未満であることに応じて上記液面センサが出力する第２信号を、上記第１排出指示に従った液体の排出後に上記液面センサから受信し、
更新した上記液体量Ｖが上記閾値量以上であると判断し、且つ上記液面センサから上記第２信号を受信したことに応じて、上記装置メモリに記憶された上記液体量Ｖを所定値に更新し、
更新した上記液体量Ｖが上記閾値量未満であると判断し、且つ上記液面センサから上記第１信号を受信したことに応じて、上記ヘッドを通じた液体の排出を禁止する液体排出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、液体を排出する液体排出装置に関する。
【背景技術】
【０００２】
従来より、着脱可能なメインタンクと、装着されたメインタンクから供給されたインクを貯留するサブタンクと、サブタンクに貯留されたインクを吐出して画像を記録する画像記録ユニットとを備えるインクジェットプリンタが知られている（例えば、特許文献１）。また、上記インクジェットプリンタは、メインタンク及びサブタンクの内部空間が大気に開放されている。そのため、メインタンクをインクジェットプリンタに装着すると、メインタンクの内部空間の水頭及びサブタンクの内部空間の水頭の差（以下、「水頭差」と標記する。）によって、メインタンク及びサブタンクの液面が同一高さに揃うように、水頭圧によってインクが移動する。そして、上記インクジェットプリンタは、残量検出センサで検出したインクの残量が閾値未満になったことに応じて、ディスプレイにエンプティを表示したり、画像記録ユニットによるインクの吐出を禁止したりする。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２１３１６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記インクジェットプリンタでは、画像記録ユニットによるインクの吐出を禁止する際には、サブタンクから画像記録ユニットに至るインクの流路に空気が進入しない程度に、サブタンクにインクが貯留されている。これにより、上記インクジェットプリンタでは、当該流路に空気が進入する所謂エアインが抑制できる。一方、上記インクジェットプリンタにおいては、メインタンクが貯留するインクが完全に消費されても、サブタンクには未だインクが貯留されている。したがって、メインタンクのインクが消費された後も、エアインが生じる液面高さまでは、インクの吐出を禁止せずに、サブタンクに貯留されたインクを使用することが可能である。エアインが生じる高さまでインクを使用可能とすることにより、メインタンクを交換するタイミングに時間的な余裕が生じる。すなわち、メインタンクのインクが消費された後も、サブタンクからエアインが生じるまで画像記録が可能となる。そして、サブタンクにおけるインクの液面がエアインのおそれがある高さとなれば、画像記録ユニットによるインクの吐出が禁止される。
【０００５】
メインタンクが交換されると、メインタンクからサブタンクへインクが流出する。仮に、サブタンクにも残量検出センサが設けられていれば、メインタンクからサブタンクへインクが流れ込み、やがて、残量検出センサの検知信号が変化する。残量検出センサの検知信号が変化すると、ディスプレイにおけるエンプティの表示を消去したり、インクの吐出の禁止を解除したりすることができる。しかしながら、メインタンクからサブタンクへインクが流出して、残量検出センサが出力する信号が変化するまでに時間を要すると、メインタンクを交換したユーザは、ディスプレイにおけるエンプティの表示か消えないことから、装置の故障やメインタンクの交換の不備を想定するおそれがある。また、メインタンクを交換した後、画像記録を行うまでユーザを待たせるという不都合が生じるおそれがある。
【０００６】
また、残量検出センサが故障してしまうと、上記インクジェットプリンタは、インク残量を適切に把握できなくなる。この場合、上記インクジェットプリンタは、実際のインク残量が閾値未満となっているにも拘わらず、画像記録ユニットによるインクの吐出を継続してしまう可能性がある。すると、サブタンクから画像記録ユニットに至るインクの流路に空気が混入（所謂、「エアイン」）して、画像記録品質が低下するという課題がある。
【０００７】
本発明は、前述された事情に鑑みてなされたものであり、その目的は、第１液室を有するカートリッジが交換されてから、液面センサが、第２液室内の液面が境界位置以上となる信号を出力する前に、報知機の作動を解除することができる手段を提供することにある。
【０００８】
また、本発明の他の目的は、カートリッジが交換されてから速やかに報知機の報知を解除できる手段を提供することにある。
【０００９】
また、本発明の他の目的は、カートリッジが交換されてから速やかに、交換されたカートリッジに十分な量の液体が貯留されていないことをユーザに報知できる手段を提供することにある。
【００１０】
また、本発明の他の目的は、液体を貯留する第１液室を有するカートリッジが装着される液体排出装置であって、第２液室を備える液体排出装置においてエアインを有効に抑制することができる技術を提供することにある。
【課題を解決するための手段】
【００１１】
(1)  本発明に係る液体排出装置は、タンクと、カートリッジが装着される装着ケースと、上記タンクと連通されたヘッドと、液面センサと、装着センサと、報知機と、インタフェースと、コントローラと、を備える。上記カートリッジは、液体を貯留する第１液室を有している。上記タンクは、上記液体を貯留する第２液室と、上記第２液室と連通する液体流路及び気体流路と、上記第２液室を外部と連通する大気連通路と、を有している。上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有している。上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有している。上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、上記第２液室は、上記第３開口よりも下方に位置する部分を有している。上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えている。上記コントローラは、上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第１信号を、上記液面センサから受信し、上記第２液室内の液面の位置が上記境界位置未満であることに応じて上記液面センサが出力する第２信号を、上記第１信号の受信後に、上記液面センサから受信し、上記第２信号の受信後に、上記ヘッドを通じて液体を排出させる排出指示を受け付け、上記排出指示で排出が指示された液体の量に相当する値でカウント値を閾値に近づく向きに更新し、上記カウント値が上記閾値に達したことに応じて、上記報知機を作動させ、上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第３信号を、上記装着センサから受信し、上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第４信号を、上記第３信号を受信した後に、上記装着センサから受信し、上記第３信号を受信した後に、上記第４信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ期間Δｔに流出する液体の流出量Ｑｃを算出し、算出された上記流出量Ｑｃが第１閾値以上であること及び上記報知機を作動させていることに応じて、上記報知機の作動を解除する。
【００１２】
上記構成によれば、報知機が作動された状態において、カートリッジが交換されてから、液面センサが、第２液室の液面が境界位置以上となる信号を出力する前に、報知機の作動を解除することができる。
【００１３】
(2)  好ましくは、上記コントローラは、上記報知機を作動させている間であって且つ上記第３信号を受信した後に、上記第４信号を上記装着センサから受信したことに応じて、第１時間の計測を開始し、算出した上記流出量Ｑｃが第１閾値未満、かつ第１閾値より小さな第２閾値以上であることに応じて、計測が開始された上記第１時間が待機時間Ｔ１に到達したかを判断し、計測された上記第１時間が上記待機時間Ｔ１に到達したと判断したことに応じて、上記報知機の作動を解除する。
【００１４】
上記構成によれば、流出量Ｑｃが第１閾値未満であっても、報知機が作動された状態において、カートリッジが交換されてからの第１時間が待機時間Ｔ１に到達するまで待機して、液面センサが、第２液室の液面が境界位置以上となる信号を出力する前に、報知機の作動を解除することができる。
【００１５】
(3)  好ましくは、上記コントローラは、算出された上記流出量Ｑｃに基づいて、上記第１液室から上記第２液室へ所定の液量が流出する時間に相当する上記待機時間Ｔ１を算出する。
【００１６】
上記構成によれば、流出量Ｑｃに応じた待機時間Ｔ１を設定することができる。
【００１７】
(4)  好ましくは、上記第１閾値は、上記ヘッドから上記期間Δｔにおける最大量の液体が排出されるときの液体の排出量である。
【００１８】
上記構成によれば、報知機の作動が解除されてから、ヘッドから最大量の液体が排出されても、第２液室から第２流出部に空気が進入することを抑制できる。
【００１９】
(5)  好ましくは、上記コントローラは、上記報知機の作動を解除した状態において、上記装着センサから上記第３信号を受信し、上記報知機の作動を解除した状態且つ上記第３信号を受信した後に、上記装着センサから上記第４信号を受信したことに応じて、第２時間の計測を開始し、上記第２時間の計測を開始してから、上記第２時間が待機時間Ｔ２に到達するまでの間に、上記液面センサから出力される上記第１信号を受信したかを判断し、上記第２時間の計測を開始してから、上記第２時間が上記待機時間Ｔ２に到達するまでの間に、上記第１信号を受信していないと判断したことに応じて、上記報知機を再作動する。
【００２０】
上記構成によれば、仮にカートリッジメモリに書き込まれた液体量Ｖｃが正確でなく、第１液室に液体が殆ど貯留されていない状態であり、第１液室から第２液室へ液体が殆ど流出しないときには、報知機を再作動させることができる。
【００２１】
(6)  上記液体排出装置は、装置メモリを更に備えており、上記コントローラは、上記報知機の作動を解除したことに応じて、上記カウント値を上記装置メモリ及び上記カートリッジメモリのいずれかに記憶させてから、上記カウント値をリセットし、上記報知機を再作動したことに応じて、上記装置メモリ及び上記カートリッジメモリのいずれかに記憶されたカウント値を上記カウント値として設定する。
【００２２】
上記構成によれば、前述したように、カートリッジ交換後に第１液室から第２液室へ液体が殆ど流出しないときには、リセット前のカウント値を復帰することができる。
【００２３】
(7)  好ましくは、上記コントローラは、上記報知機を作動させている間に上記第２信号を受信し、上記報知機を作動させている間であって且つ上記第２信号を受信した後に、上記第１信号を受信し且つ上記流出量Ｑｃが第２閾値未満であることに応じて、上記報知機の作動を解除する。
【００２４】
上記構成によれば、流出量Ｑｃが第２閾値未満であるときには、液面センサの信号に基づいて報知機の作動を解除することができる。
【００２５】
(8)  好ましくは、上記コントローラは、上記報知機の作動を開始するとともに、上記ヘッドを通じて液体の排出を禁止する。
【００２６】
上記構成によれば、上記第２液室に貯留される液体が少ないときに、記録ヘッドから液体が排出されないので、第２液室から第２流出部へ空気が進入することを抑制できる。
【００２７】
(9)  好ましくは、上記液体排出装置は、上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリを更に具備しており、上記コントローラは、液体を排出する排出指示を受け付け、上記排出指示に従って上記ヘッドに液体を排出させ、上記排出指示に示される液体の排出量Ｄｈを算出し、上記ヘッドを通じた液体の排出中の期間Δｔの間に上記第２液室から上記ヘッドに向けて流出する液体の流出量Ｑａを、算出した上記排出量Ｄｈに基づいて算出し、上記ヘッドを通じた液体の排出中の上記期間Δｔの間に上記第１液室から上記第２液室へ流出する液体の流出量Ｑｃを、上記液体流路の抵抗である流路抵抗Ｒｎに基づいて算出し、上記装置メモリから上記液体量Ｖｃ、Ｖｓを読み出し、読み出した上記液体量Ｖｃから上記流出量Ｑｃを減じて、上記期間Δｔが経過した後の上記液体量Ｖｃを算出し、読み出した上記液体量Ｖｓから上記流出量Ｑａを減じ且つ上記流出量Ｑｃを加えて、上記期間Δｔが経過した後の上記液体量Ｖｓを算出し、算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させる。
【００２８】
上記構成によれば、ヘッドに液体を排出させたことに伴って第１液室の液面が第３開口より下降したとしても、第１液室及び第２液室それぞれに貯留された液体量Ｖｃ、Ｖｓを個別に算出することができる。また、算出した液体量Ｖｃがカートリッジメモリに記憶されるので、カートリッジが交換されても、交換されたカートリッジの液体量Ｖｃをカートリッジメモリから読み出すことができる。
【００２９】
(10)  好ましくは、上記コントローラは、上記流路抵抗Ｒｎが大きいほど小さくなる上記流出量Ｑｃを算出する。
【００３０】
(11)  本発明に係る液体排出装置は、カートリッジと、タンクと、上記カートリッジが装着される装着ケースと、上記タンクと連通されたヘッドと、液面センサと、装着センサと、報知機と、インタフェースと、コントローラと、を備える。上記カートリッジは、液体を貯留する第１液室を有している。上記タンクは、上記液体を貯留する第２液室と、上記第２液室と連通する液体流路及び気体流路と、上記第２液室を外部と連通する大気連通路と、を有している。上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有している。上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有している。上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、上記第２液室は、上記第３開口よりも下方に位置する部分を有している。上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えている。上記コントローラは、上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第１信号を、上記液面センサから受信し、上記第２液室内の液面の位置が上記境界位置未満であることに応じて上記液面センサが出力する第２信号を、上記第１信号の受信後に、上記液面センサから受信し、上記第２信号の受信後に、上記ヘッドを通じて液体を排出させる排出指示を受け付け、上記排出指示で排出が指示された液体の量に相当する値でカウント値を閾値に近づく向きに更新し、上記カウント値が上記閾値に達したことに応じて、上記報知機を作動させ、上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第３信号を、上記装着センサから受信し、上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第４信号を、上記第３信号を受信した後に、上記装着センサから受信し、上記第３信号を受信した後に、上記第４信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ期間Δｔに流出する液体の流出量Ｑｃを算出し、算出された上記流出量Ｑｃが第１閾値以上であること及び上記報知機を作動させていることに応じて、上記報知機の作動を解除する。
【００３１】
(12)  本発明にかかる液体排出装置は、タンクと、カートリッジが装着される装着ケースと、上記タンクと連通されたヘッドと、装着センサと、報知機と、インタフェースと、コントローラと、を備える。上記カートリッジは、液体を貯留する第１液室を有している。上記タンクは、上記液体を貯留する第２液室と、上記第２液室と連通する液体流路及び気体流路と、上記第２液室を外部と連通する大気連通路と、を有している。上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有している。上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有している。上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、上記第２液室は、上記第３開口よりも下方に位置する部分を有している。上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えている。上記コントローラは、上記第２液室内の液面の位置が境界位置以上であると判定した後に、上記第２液室内の液面の位置が境界位置未満であると判定したことに応じて、上記報知機に第１報知を報知させ、上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を、上記装着センサから受信し、上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に、上記装着センサから受信し、上記報知機に上記第１報知を報知させている間であって且つ上記第１信号を受信した後に上記第２信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、算出した上記流出量Ｖｃｓが閾値以上であること及び上記報知機に上記第１報知をさせていることに応じて、上記報知機に報知させている上記第１報知を解除する。
【００３２】
上記構成によれば、報知機が第１報知を報知している状態において、カートリッジが交換されてから、コントローラが第２液室の液体の液面が境界位置より高いと判定する前に、第１報知を解除することができる。
【００３３】
(13)  好ましくは、上記液体排出装置は、液面センサを更に備えており、上記コントローラは、上記第２液室内の液面の位置が上記境界位置以上であることに応じて、上記液面センサが出力する第３信号を受信したことに応じて、上記第２液室内の液面の位置が上記境界位置以上であると判定し、上記第２液室内の液面の位置が上記境界位置未満であることに応じて、上記液面センサが出力する第４信号を受信したことに応じて、上記第２液室内の液面の位置が上記境界位置未満であると判定する。
【００３４】
上記構成によれば、第２液室の液体の液面が境界位置未満であるか否かを正確に判定できる。
【００３５】
(14)  好ましくは、上記境界位置は、上記カートリッジが上記装着ケースに装着された状態で、上記気体流路の上記第３開口を含んで水平方向に延びる仮想線以下の位置である。
【００３６】
上記構成によれば、液面センサから第３信号を受信した後、第４信号を受信したことに応じて、第１液室から第２液室へ液体が流出しない状態であると判定できる。
【００３７】
(15)  好ましくは、上記コントローラは、上記報知機に報知させている上記第１報知を解除した状態において、上記装着センサから上記第１信号を受信し、上記第１信号を受信した後に、上記装着センサから上記第２信号を受信したことに応じて、時間の計測を開始し、上記時間の計測を開始してから、上記時間が待機時間Ｔに到達するまでの間に、上記液面センサから出力される上記第３信号を受信したかを判断し、上記時間の計測を開始してから、上記時間が上記待機時間Ｔに到達するまでの間に、上記液面センサから上記第３信号を受信していないと判断したこと且つ上記報知機に報知させていた上記第１報知を解除していることに応じて、上記報知機に第１報知を再報知させる。
【００３８】
上記構成によれば、仮にカートリッジメモリに書き込まれた液体量Ｖｃが正確でなく、第１液室に液体が殆ど貯留されていない状態であり、第１液室から第２液室へ液体が殆ど流出しないときには、報知機に第１報知を再報知させることができる。
【００３９】
(16)  好ましくは、上記液体排出装置は、上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリを更に具備しており、上記コントローラは、液体を排出する排出指示を受け付け、上記排出指示に従って上記ヘッドに液体を排出させ、上記排出指示に示される液体の排出量Ｄｈを算出し、上記ヘッドを通じた液体の排出中の期間Δｔの間に上記第２液室から上記ヘッドに向けて流出する液体の流出量Ｑａを、算出した上記排出量Ｄｈに基づいて算出し、上記ヘッドを通じた液体の排出中の上記期間Δｔの間に上記第１液室から上記第２液室へ流出する液体の流出量Ｑｃを、上記液体流路の流路抵抗Ｒｎに基づいて算出し、上記装置メモリから上記液体量Ｖｃ、Ｖｓを読み出し、読み出した上記液体量Ｖｃから上記流出量Ｑｃを減じて、上記期間Δｔが経過した後の上記液体量Ｖｃを算出し、読み出した上記液体量Ｖｓから上記流出量Ｑａを減じ且つ上記流出量Ｑｃを加えて、上記期間Δｔが経過した後の上記液体量Ｖｓを算出し、算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させる。
【００４０】
上記構成によれば、ヘッドに液体を排出させたことに伴って第２液室の液面の高さが第３開口より下降したとしても、第１液室及び第２液室それぞれに貯留された液体量Ｖｃ、Ｖｓを個別に算出することができる。
【００４１】
(17)  好ましくは、上記コントローラは、上記流路抵抗Ｒｎが大きいほど小さくなる上記流出量Ｑｃを算出する。
【００４２】
(18)  好ましくは、上記液体排出装置は、液面センサを更に備えており、上記コントローラは、上記第２液室内の液面の位置が上記境界位置以上であることに応じて、上記液面センサが出力する第３信号を受信しことに応じて、上記第２液室内の液面の位置が上記境界位置以上であると判定し、上記第２液室内の液面の位置が上記境界位置未満であることに応じて、上記液面センサが出力する第４信号を受信したことに応じて、上記第２液室内の液面の位置が上記境界位置未満であると判定し、上記液面センサから上記第１信号を受信し、上記第３信号を受信した後に、上記液面センサから上記第４信号を受信したことに応じて、上記液体量Ｖｃ及び上記液体量Ｖｓをそれぞれ予め定められた値に更新する請求項１６又は１７に記載の液体排出装置。
【００４３】
上記構成によれば、算出された液体量Ｖｃ及び液体量Ｖｓが、実際に第１液室及び第２液室にそれぞれ貯留された液体の各液体量に対して誤差を含むものであったとしても、液面センサの信号が変化したタイミングにおいて、誤差を含む液体量Ｖｃ及び液体量Ｖｓを修正できる。
【００４４】
(19)  好ましくは、上記コントローラは、上記報知機に報知させている上記第１報知を解除した状態において、上記装着センサから上記第１信号を受信し、上記第１信号を受信した後に、上記装着センサから上記第２信号を受信したことに応じて、時間の計測を開始し、上記時間の計測を開始してから、上記時間が待機時間Ｔに到達するまでの間に、上記液面センサから出力される上記第３信号を受信したかを判断し、上記時間の計測を開始してから、上記時間が待機時間Ｔに到達するまでの間に、上記液面センサから上記第３信号を受信していないと判断したことに応じて、上記液体量Ｖｓが不定であることを示す第２報知を上記報知機に報知させる。
【００４５】
上記構成によれば、カートリッジが交換されても、液面センサの出力が変化するに十分な量の液体が第１液室から第２液室へ流出しないときには、液体量Ｖｓが正確に算出されず不定であることをユーザに報知できる。
【００４６】
(20)  本発明にかかる液体排出装置は、カートリッジと、タンクと、上記カートリッジが装着される装着ケースと、上記タンクと連通されたヘッドと、装着センサと、報知機と、インタフェースと、コントローラと、を備える。上記カートリッジは、液体を貯留する第１液室を有している。上記タンクは、上記液体を貯留する第２液室と、上記第２液室と連通する液体流路及び気体流路と、上記第２液室を外部と連通する大気連通路と、を有している。上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有している。上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有している。上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、上記第２液室は、上記第３開口よりも下方に位置する部分を有している。上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えている。上記コントローラは、上記第２液室内の液面の位置が境界位置以上であると判定した後に、上記第２液室内の液面の位置が境界位置未満であると判定したことに応じて、上記報知機に第１報知を報知させ、上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を、上記装着センサから受信し、上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に、上記装着センサから受信し、上記報知機に上記第１報知を報知させている間であって且つ上記第１信号を受信した後に上記第２信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、算出した上記流出量Ｖｃｓが閾値以上であること及び上記報知機に上記第１報知をさせていることに応じて、上記報知機に報知させている上記第１報知を解除する。
【００４７】
(21)  本発明に係る液体排出装置は、液体を貯留する第２液室を有するタンクと、液体を貯留する第１液室を有するカートリッジが装着される装着ケースと、上記タンクと連通されたヘッドと、液面センサと、装着センサと、上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリと、報知機と、インタフェースと、コントローラと、を備える。上記タンクは、上記第２液室と連通する液体流路及び気体流路と、上記第２液室を外部と連通する大気連通路と、を有している。上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有している。上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有している。上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、上記第２液室は、上記第３開口よりも下方に位置する部分を有している。上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えている。上記コントローラは、上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第３信号を受信し、上記第２液室内の液面の位置が上記境界位置未満であることに応じて上記液面センサが出力する第４信号を、上記第３信号を受信した後に、上記装着センサから受信したことに応じて、上記液体量Ｖｃ及び上記液体量Ｖｓをそれぞれ予め定められた値に更新し、更に、上記報知機に第１報知を報知させ、液体を排出する排出指示を受け付け、上記排出指示に従って上記ヘッドに液体を排出させ、上記排出指示に示される液体の排出量Ｄｈを算出し、上記排出量Ｄｈに基づいて、上記第１液室に貯留されている上記液体量Ｖｃ、及び上記第２液室に貯留されている上記液体量Ｖｓを算出し、算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させ、算出した上記液体量Ｖｃを上記カートリッジメモリに記憶させ、上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を上記装着センサから受信し、上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に上記装着センサから受信したことに応じて、上記液体量Ｖｃを上記カートリッジメモリから読み出し、読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、算出した上記流出量Ｖｃｓが閾値未満であること及び上記装着センサから上記第４信号を受信していることに応じて、上記液体量Ｖｓが不定であることを示す第２報知を上記報知機に報知させる。
【００４８】
上記構成によれば、カートリッジが交換されても、液面センサの出力が変化するに十分な量の液体が第１液室から第２液室へ流出しないときには、液体量Ｖｓが正確に算出されず不定であることをユーザに報知できる。
【００４９】
(22)  好ましくは、上記コントローラは、上記液面センサから上記第３信号を受信し、上記第３信号を受信した後に、上記液面センサから上記第４信号を受信したことに応じて、上記液体量Ｖｃ及び上記液体量Ｖｓをそれぞれ予め定められた値に更新して、上記第２報知を解除する。
【００５０】
上記構成によれば、算出された液体量Ｖｃ及び液体量Ｖｓが、実際に第１液室及び第２液室にそれぞれ貯留された液体の各液体量に対して誤差を含むものであったとしても、液面センサの信号が変化したタイミングにおいて、誤差を含む液体量Ｖｃ及び液体量Ｖｓを修正して、第２報知を解除できる。
【００５１】
(23)  好ましくは、上記コントローラは、算出した上記流出量Ｖｃｓが閾値未満であること及び上記報知機に上記第１報知を報知させていることに応じて、上記第２報知を上記報知機に報知させる。
【００５２】
(24)  好ましくは、上記コントローラは、上記報知機に上記第２報知を報知させている状態において、上記装着センサから上記第１信号を受信し、上記報知機に上記第２報知を報知させている状態且つ上記第１信号を受信した後に、上記装着センサから上記第２信号を受信したことに応じて、時間の計測を開始し、上記時間の計測を開始してから、上記時間が待機時間Ｔに到達するまでの間に、上記液面センサから出力される上記第３信号を受信したかを判断し、上記時間の計測を開始してから、上記時間が上記待機時間Ｔに到達するまでの間に、上記液面センサから上記第３信号を受信したことに応じて、上記報知機の第１報知を解除する。
【００５３】
上記構成によれば、仮にカートリッジメモリに書き込まれた液体量Ｖｃが正確でなく、第１液室に十分な量の液体が貯留されている状態であり、第１液室から第２液室へ液体が流出して液面センサの信号が変化したときには、報知機の第１報知を解除できる。
【００５４】
(25)  好ましくは、上記境界位置は、上記気体流路の上記第３開口を通過して水平方向に延びる仮想線以下の位置である。
【００５５】
上記構成によれば、液面センサの信号が第３信号から第４信号に変化したときに、第１液室から第２液室へ液体が流出しない状態であると判定できる。
【００５６】
(26)  好ましくは、上記コントローラは、上記ヘッドを通じた液体の排出中の期間Δｔの間に上記第２液室から上記ヘッドに向けて流出する液体の流出量Ｑａを、算出した上記排出量Ｄｈに基づいて算出し、上記ヘッドを通じた液体の排出中の上記期間Δｔの間に上記第１液室から上記第２液室へ流出する液体の流出量Ｑｃを、上記液体流路の流路抵抗Ｒｎに基づいて算出し、上記装置メモリから上記液体量Ｖｃ、Ｖｓを読み出し、読み出した上記液体量Ｖｃから上記流出量Ｑｃを減じて、上記期間Δｔが経過した後の上記液体量Ｖｃを算出し、読み出した上記液体量Ｖｓから上記流出量Ｑａを減じ且つ上記流出量Ｑｃを加えて、上記期間Δｔが経過した後の上記液体量Ｖｓを算出する。
【００５７】
(27)  好ましくは、上記コントローラは、上記流路抵抗Ｒｎが大きいほど小さくなる上記流出量Ｑｃを算出する。
【００５８】
(28)  本発明にかかる液体排出装置は、液体を貯留する第２液室を有するタンクと、液体を貯留する第１液室を有するカートリッジが装着される装着ケースと、上記タンクと連通されたヘッドと、装着センサと、上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリと、報知機と、インタフェースと、コントローラと、を備える。上記タンクは、上記第２液室と連通する液体流路及び気体流路と、上記第２液室を外部と連通する大気連通路と、を有している。上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有している。上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有している。上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、上記第２液室は、上記第３開口よりも下方に位置する部分を有している。上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えている。上記コントローラは、上記第２液室内の液面の位置が境界位置以上であると判定した後に、上記第２液室内の液面の位置が境界位置未満であると判定したことに応じて、上記報知機に第１報知を報知させ、上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を、上記装着センサから受信し、上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に、上記装着センサから受信し、上記第１信号を受信した後に上記第２信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、算出された上記流出量Ｖｃｓが閾値未満であること及び上記第２液室内の液面の位置が上記境界位置未満であると判定されていることに応じて、上記カートリッジの再交換を促す報知を上記報知機に報知させる。
【００５９】
上記構成によれば、カートリッジが交換されても、コントローラが第２液室の液体の液面が境界位置より高いと判定するに十分な量の液体が第１液室から第２液室へ流出しないときには、カートリッジの再交換をユーザに報知できる。
【００６０】
(29)  好ましくは、上記液体排出装置は、液面センサを更に備えており、上記コントローラは、上記第２液室内の液面の位置が上記境界位置以上であることに応じて、上記液面センサが出力する第３信号を受信したことに応じて、上記第２液室内の液面の位置が上記境界位置以上であると判定し、上記第２液室内の液面の位置が上記境界位置未満であることに応じて、上記液面センサが出力する第４信号を受信したことに応じて、上記第２液室内の液面の位置が上記境界位置未満であると判定する。
【００６１】
上記構成によれば、第２液室の液体の液面が境界位置以下であるか否かを正確に判定できる。
【００６２】
(30)  本発明にかかる液体排出装置は、液体を貯留する第１液室を有するカートリッジと、液体を貯留する第２液室を有するタンクと、上記カートリッジが装着される装着ケースと、上記タンクと連通されたヘッドと、液面センサと、装着センサと、上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリと、報知機と、インタフェースと、コントローラと、を備える。上記タンクは、上記第２液室と連通する液体流路及び気体流路と、上記第２液室を外部と連通する大気連通路と、を有している。上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有している。上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有している。上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、上記第２液室は、上記第３開口よりも下方に位置する部分を有している。上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えている。上記コントローラは、上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第３信号を受信し、上記第２液室内の液面の位置が上記境界位置未満であることに応じて上記液面センサが出力する第４信号を、上記第３信号を受信した後に、上記装着センサから受信したことに応じて、上記液体量Ｖｃ及び上記液体量Ｖｓをそれぞれ予め定められた値に更新し、更に、上記報知機に第１報知を報知させ、液体を排出する排出指示を受け付け、上記排出指示に従って上記ヘッドに液体を排出させ、上記排出指示に示される液体の排出量Ｄｈを算出し、上記排出量Ｄｈに基づいて、上記第１液室に貯留されている上記液体量Ｖｃ、及び上記第２液室に貯留されている上記液体量Ｖｓを算出し、算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させ、算出した上記液体量Ｖｃを上記カートリッジメモリに記憶させ、上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を上記装着センサから受信し、上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に上記装着センサから受信したことに応じて、上記液体量Ｖｃを上記カートリッジメモリから読み出し、読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、算出した上記流出量Ｖｃｓが閾値未満であること及び上記装着センサから上記第４信号を受信していることに応じて、上記液体量Ｖｓが不定であることを示す第２報知を上記報知機に報知させる。
【００６３】
(31)  本発明にかかる液体排出装置は、液体を貯留する第１液室を有するカートリッジと、液体を貯留する第２液室を有するタンクと、上記カートリッジが装着される装着ケースと、上記タンクと連通されたヘッドと、装着センサと、上記第１液室に貯留されている液体量Ｖｃ、及び上記第２液室に貯留されている液体量Ｖｓを記憶する装置メモリと、報知機と、インタフェースと、コントローラと、を備える。上記タンクは、上記第２液室と連通する液体流路及び気体流路と、上記第２液室を外部と連通する大気連通路と、を有している。上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有している。上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有している。上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、上記第２液室は、上記第３開口よりも下方に位置する部分を有している。上記カートリッジは、上記カートリッジが上記装着状態で上記インタフェースと導通可能なカートリッジメモリを備えている。上記コントローラは、上記第２液室内の液面の位置が境界位置以上であると判定した後に、上記第２液室内の液面の位置が境界位置未満であると判定したことに応じて、上記報知機に第１報知を報知させ、上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第１信号を、上記装着センサから受信し、上記装着ケースに上記カートリッジが装着されていることに応じて上記装着センサが出力する第２信号を、上記第１信号を受信した後に、上記装着センサから受信し、上記第１信号を受信した後に上記第２信号を上記装着センサから受信したことに応じて、上記第１液室に貯留されている液体量Ｖｃを上記カートリッジメモリから読み出し、読み出された上記液体量Ｖｃに基づいて、上記第１液室から上記第２液室へ流出する液体の流出量Ｖｃｓを算出し、算出された上記流出量Ｖｃｓが閾値未満であること及び上記第２液室内の液面の位置が上記境界位置未満であると判定されていることに応じて、上記カートリッジの再交換を促す報知を上記報知機に報知させる。
【００６４】
(32)  本発明にかかる液体排出装置は、液体を貯留する第２液室を有するタンクと、液体を貯留する第１液室を有するカートリッジが装着される装着ケースと、上記タンクと連通されたヘッドと、装着センサと、上記第１液室及び上記第２液室に貯留されている液体の量を特定するための液体量Ｖを記憶する装置メモリと、液面センサと、コントローラと、を備える。上記タンクは、上記第２液室と連通する液体流路及び気体流路と、上記第２液室を外部と連通する大気連通路と、を有している。上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有している。上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有している。上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、上記第２液室は、上記第３開口よりも下方に位置する部分を有している。上記コントローラは、上記ヘッドを通じて液体を排出させる第１排出指示を受け付け、受け付けた上記第１排出指示に従って、上記ヘッドを通じて液体を排出させ、上記第１排出指示で排出が指示された液体の量に相当する値で、上記装置メモリに記憶された上記液体量Ｖを更新し、更新した上記液体量Ｖが閾値量以上であるかを判断し、上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第１信号或いは上記境界位置未満であることに応じて上記液面センサが出力する第２信号を、上記第１排出指示に従った液体の排出後に上記液面センサから受信し、更新した上記液体量Ｖが上記閾値量以上であると判断し、且つ上記液面センサから上記第２信号を受信したことに応じて、上記装置メモリに記憶された上記液体量Ｖを所定値に更新し、更新した上記液体量Ｖが上記閾値量未満であると判断し、且つ上記液面センサから上記第１信号を受信したことに応じて、上記ヘッドを通じた液体の排出を禁止する。
【００６５】
上記構成によれば、液体排出装置は、液面センサから出力される信号が第１信号から第２信号に変化する前に液体量Ｖが閾値量未満になったことに応じて、その後のヘッドを通じた液体の排出が禁止される。上記構成の液体排出装置においては、液面センサから出力される信号が第１信号から第２信号に変化する前に液体量Ｖが閾値量未満になった場合には、液面センサが故障していたと考えられる。すなわち、上記構成によれば、液面センサが故障していたとしても、エアインを有効に抑制することができる。
【００６６】
(33)  好ましくは、上記液体量Ｖは、上記第２液室に貯留されている液体量Ｖｓであり、上記所定値は、上記第２液室のうち、上記境界位置より下方の部分の容積に相当し、上記閾値量は、上記所定値未満の値である。
【００６７】
(34)  好ましくは、上記コントローラは、上記液体量Ｖを上記所定値に更新した後に、上記ヘッドを通じて液体を排出させる第２排出指示を受け付け、受け付けた上記第２排出指示に従って上記ヘッドを通じて液体を排出させ、上記第２排出指示で排出が指示された液体の量に相当する値で、カウント値を閾値に近づく向きに更新し、上記カウント値が上記閾値に達したかを判断し、上記カウント値が上記閾値に達したと判断したことに応じて、上記ヘッドを通じた液体の排出を禁止する。
【００６８】
液体量Ｖが閾値量未満になっても液面センサから第１信号が出力されている場合は、液体量Ｖが閾値量未満になった時点で液体の排出が禁止される。一方、液体量Ｖが閾値量以上のときに液面センサから第２信号を受信した場合は、カウント値が閾値に達するまで液体の排出が可能になる。そこで、カウント値の初期値及び閾値の差を、正常な液面センサが第２信号を出力する際の液体量Ｖ及び閾値量の差より大きく設定すれば、液面センサが正常に作動している場合に、液面センサが故障した場合と比較して、より多くの液体がヘッドを通じて排出可能になる。すなわち、カートリッジ内の液体を無駄なく排出することと、エアインを抑制することとを両立させることができる。
【００６９】
(35)  好ましくは、上記液体排出装置は、ディスプレイを備えており、上記コントローラは、算出した上記液体量Ｖに関連する情報を上記ディスプレイに表示させる。
【００７０】
液面センサから出力される信号が第１信号から第２信号に変化する度に液体量Ｖｓが所定値に更新されるので、算出された液体量Ｖｓに累積された誤差がリセットされる。そこで上記構成によれば、誤差の少ない液体量Ｖｓをユーザに報知することができる。
【００７１】
(36)  好ましくは、上記液体量Ｖは、上記第１液室に貯留されている液体量Ｖｃをさらに含み、上記コントローラは、上記第１排出指示に示される液体の排出量Ｄｈを算出し、上記ヘッドを通じた液体の排出中の期間Δｔの間に上記第２液室から上記ヘッドに向けて流出する液体の流出量Ｑａを、算出した上記排出量Ｄｈに基づいて算出し、上記ヘッドによる液体の排出中の上記期間Δｔの間に上記第１液室から上記第２液室へ流出する液体の流出量Ｑｃを、上記液体流路の流路抵抗Ｒｎに基づいて算出し、上記装置メモリから上記液体量Ｖｃ、Ｖｓを読み出し、読み出した上記液体量Ｖｃから上記流出量Ｑｃを減じて、上記期間Δｔが経過した後の上記液体量Ｖｃを算出し、読み出した上記液体量Ｖｓから上記流出量Ｑａを減じ且つ上記流出量Ｑｃを加えて、上記期間Δｔが経過した後の上記液体量Ｖｓを算出し、算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させる。
【００７２】
(37)  好ましくは、上記カートリッジが上記装着ケースに装着された状態において、上記第１液室の一部と上記第２液室の一部とは、水平方向から見て互いに重なり、上記コントローラは、基準位置から上記第１液室の液面までの高さＨｃが大きいほど、大きくなる上記流出量Ｑｃを算出する。
【００７３】
上記構成によれば、第１液室及び第２液室の液体量Ｖｃ、Ｖｓを適切に算出することができる。
【００７４】
(38)  好ましくは、上記液体排出装置は、装着センサと、インタフェースとを備えており、上記カートリッジは、当該カートリッジが上記装着ケースに装着された状態で上記インタフェースと導通可能であり、且つ上記液体量Ｖｃを記憶するカートリッジメモリを備えており、上記コントローラは、上記装着ケースに上記カートリッジが装着されていないことに応じて上記装着センサが出力する第３信号を、上記装着センサから受信し、上記装着ケースに上記カートリッジが装着されたことに応じて上記装着センサが出力する第４信号を、上記第３信号を受信した後に上記装着センサから受信し、上記第４信号を受信したことに応じて、上記カートリッジメモリから上記液体量Ｖｃを読み出し、読み出した上記液体量Ｖｃを上記装置メモリに記憶させる。
【００７５】
上記構成によれば、第１液室の容量がカートリッジ毎に異なる場合、或いは他の液体排出装置から脱抜されたカートリッジであっても、液体量Ｖｃ、Ｖｓを適切に更新することができる。
【００７６】
(39)  好ましくは、上記コントローラは、上記流出量Ｑａ、Ｑｃ及び上記液体量Ｖｃ、Ｖｓを算出し且つ算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させ、上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させてから上記期間Δｔが経過するまで待機し、上記期間Δｔが経過したことに応じて、再び、上記流出量Ｑａ、Ｑｃ及び上記液体量Ｖｃ、Ｖｓを算出し且つ算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させる。
【００７７】
(40)  好ましくは、上記コントローラは、上記流出量Ｑａ、Ｑｃ及び上記液体量Ｖｃ、Ｖｓを算出し且つ算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させたことに応じて、上記高さＨｃ、Ｈｓの差が閾値高さ未満か否かを判断し、上記高さＨｃ、Ｈｓの差が上記閾値高さ以上だと判断したことに応じて、上記期間Δｔが経過するまで待機する。
【００７８】
(41)  好ましくは、上記コントローラは、上記高さＨｃ、Ｈｓの差が上記閾値高さ未満だと判断したことに応じて、上記流出量Ｑａ、Ｑｃ及び上記液体量Ｖｃ、Ｖｓを算出し且つ算出した上記液体量Ｖｃ、Ｖｓを上記装置メモリに記憶させる処理を停止する。
【００７９】
上記構成によれば、第１液室及び第２液室の液面が揃うまでの期間中において、液体量Ｖｃ、Ｖｓをリアルタイムに把握することができる。
【００８０】
(42)  好ましくは、上記境界位置は、上記気体流路の上記第３開口を通過して水平方向に延びる仮想線以下の位置である。
【００８１】
(43)  好ましくは、上記液体量Ｖは、上記第１液室に貯留された液体量Ｖｃと、上記第２液室に貯留された液体量Ｖｓとを含み、上記閾値量は、上記液体量Ｖｃが０になってからの上記液体量Ｖｓの変化量を示し、上記所定値は、上記第２液室のうち、上記境界位置より下方の部分の容積に相当する。
【００８２】
(44)  好ましくは、上記液体量Ｖは、上記第１液室及び上記第２液室に貯留されている液体の総量である。
【００８３】
(45)  本発明に係る液体排出装置は、液体を貯留する第２液室を有するタンクと、液体を貯留する第１液室を有するカートリッジが装着される装着ケースと、上記タンクと連通されたヘッドと、装着センサと、上記第１液室及び上記第２液室に貯留されている液体の量を特定するための液体量Ｖを記憶する装置メモリと、液面センサと、コントローラと、を備える。上記タンクは、上記第２液室と連通する液体流路及び気体流路と、上記第２液室を外部と連通する大気連通路と、を有している。上記液体流路は、上記第２液室に連通する一端側に形成された第１開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第２開口と、を有している。上記気体流路は、上記第２液室に連通する一端側に形成された第３開口と、当該一端側とは反対の他端側に形成され且つ外部に開口する第４開口と、を有している。上記カートリッジが上記装着ケースに装着されて、上記カートリッジの上記第１液室と、上記タンクの上記液体流路の上記第２開口及び上記気体流路の上記第４開口と、が連通する状態で接続される装着状態において、上記第１液室は、上記第２開口よりも上方に位置する部分を有しており、上記第２液室は、上記第３開口よりも下方に位置する部分を有している。上記コントローラは、上記ヘッドを通じて液体を排出させる第１排出指示を受け付け、受け付けた上記第１排出指示に従って、上記ヘッドを通じて液体を排出させ、上記第１排出指示で排出が指示された液体の量に相当する値で、上記装置メモリに記憶された上記液体量Ｖを更新し、更新した上記液体量Ｖが閾値量以上であるかを判断し、上記第２液室内の液面の位置が境界位置以上であることに応じて上記液面センサが出力する第１信号或いは上記境界位置未満であることに応じて上記液面センサが出力する第２信号を、上記第１排出指示に従った液体の排出後に上記液面センサから受信し、更新した上記液体量Ｖが上記閾値量以上であると判断し、且つ上記液面センサから上記第２信号を受信したことに応じて、上記装置メモリに記憶された上記液体量Ｖを所定値に更新し、更新した上記液体量Ｖが上記閾値量未満であると判断し、且つ上記液面センサから上記第１信号を受信したことに応じて、上記ヘッドを通じた液体の排出を禁止する。
【発明の効果】
【００８４】
本発明によれば、カートリッジが交換されてから、液面センサが、第２液室内の液面が境界位置以上となる信号を出力する前に、報知機の作動を解除することができる。
【００８５】
また、本発明によれば、カートリッジが交換されてから速やかに報知機の報知を解除できる。
【００８６】
また、本発明によれば、カートリッジが交換されてから速やかに、交換されたカートリッジに十分な量の液体が貯留されていないことをユーザに報知できる。
【００８７】
また、本発明によれば、液面センサから出力される信号が第１信号から第２信号に変化する前に液体量Ｖが閾値量未満になったことに応じて、その後のヘッドを通じた液体の排出が禁止されるので、液面センサが故障していたとしても、エアインを有効に抑制することができる。
【図面の簡単な説明】
【００８８】
【図１】図１は、第１実施形態に係る複合機１０の外観斜視図であって、（Ａ）はカバー４８が閉塞位置にある状態、（Ｂ）はカバー４８が開放位置にある状態を示す。
【図２】図２は、プリンタ部１１の内部構造を模式的に示す縦断面図である。
【図３】図３は、キャリッジ２３及びインク供給装置１５の配置を示す平面図である。
【図４】図４は、インク供給装置１５を左前方から視た斜視図である。
【図５】図５は、図４のＶ−Ｖ矢視断面図である。
【図６】図６は、インクカートリッジ５０が取り外された状態における図４のＶ−Ｖ矢視断面図である。
【図７】図７は、サブタンク１００の周辺部を示す図４のＶ−Ｖ矢視断面図である。
【図８】図８は、図４のＶＩＩＩ−ＶＩＩＩ矢視断面図である。
【図９】図９は、図４のＩＸ−ＩＸ矢視断面図である。
【図１０】図１０は、サブタンク１００の周辺部を示す図４のＩＸ−ＩＸ矢視断面図である。
【図１１】図１１は、サブタンク１００及びバッファタンク９０の左前方から視た斜視図である。
【図１２】図１２（Ａ）は、図１０のＸＩＩＡ−ＸＩＩＡ矢視断面図であり、図１２（Ｂ）は、図１１のＸＩＩＢ−ＸＩＩＢ矢視断面図である。
【図１３】図１３は、複合機１０のブロック図である。
【図１４】図１４は、画像記録処理のフローチャートである。
【図１５】図１５は、残量更新処理のフローチャートである。
【図１６】図１６は、カウント処理のフローチャートである。
【図１７】図１７は、Ｅｍｐｔｙ解除処理のフローチャートである。
【図１８】図１８は、サブタンク１００及びインクカートリッジ５０が連通された状態の模式図であって、（Ａ）はインクが貯留されていないサブタンク１００に新品のインクカートリッジ５０が連通された状態を、（Ｂ）は、その後の平衡状態を示す。
【図１９】図１９は、サブタンク１００及びインクカートリッジ５０が連通された状態の模式図であって、（Ａ）はカートリッジエンプティ状態を、（Ｂ）はサブタンク１００及びインクカートリッジ５０が共にエンプティである状態を示す。
【図２０】図２０は、第１実施形態の変形例に係る残量更新処理のフローチャートである。
【図２１】図２１は、第２実施形態に係るカウント処理のフローチャートである。
【図２２】図２２は、第２実施形態に係るＥｍｐｔｙ解除処理のフローチャートである。
【図２３】図２３は、第３実施形態に係るＥｍｐｔｙ解除処理のフローチャートである。
【図２４】図２４は、第４実施形態に係る画像記録処理のフローチャートである。
【図２５】図２５は、第４実施形態に係る残量更新処理のフローチャートである。
【図２６】図２６は、第４実施形態に係るカウント処理のフローチャートである。
【発明を実施するための形態】
【００８９】
以下、本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。また、複合機１０及び複合機１０に取り付けられたインクカートリッジ５０が使用可能に水平面に設置された姿勢（図１の姿勢であって、「使用姿勢」と表記することがある。）を基準として上下方向７が定義され、複合機１０の開口１３が設けられている面を前面として前後方向８が定義され、複合機１０を前面から見て左右方向９が定義される。本実施形態では、使用姿勢において、上下方向７が鉛直方向に相当し、前後方向８及び左右方向９が水平方向に相当する。
【００９０】
［第１実施形態］
以下、第１実施形態に係る複合機１０及びインク供給装置１５が説明される。
【００９１】
［複合機１０の全体構成］
図１に示されるように、複合機１０（液体排出装置の一例）は、概ね直方体形状である。複合機１０は、プリンタ部１１、スキャナ部１２、及び操作パネル２２を有している。プリンタ部１１は、複合機１０の下部に位置し、インクジェット記録方式で用紙２８（図２参照）に画像を記録する。スキャナ部１２は、スキャン機能を有する装置であり、プリンタ部１１の上方に位置する。プリンタ部１１は、前方に開口する開口１３を有する筐体１４と、筐体１４の内部において開口１３の右方に位置するインク供給装置１５と、を備えている。
【００９２】
操作パネル２２は、スキャナ部１２の前方に位置している。操作パネル２２は、プリンタ部１１による画像記録やスキャナ部１２による画像読取りを複合機１０に実行させるために、ユーザが操作するものである。操作パネル２２は、ディスプレイ１７を有する。ディスプレイ１７は、液晶ディスプレイ、有機ＥＬディスプレイ等であり、各種情報を表示する表示面を備える。ディスプレイ１７は、報知機の一例である。但し、報知機の具体例はディスプレイ１７に限定されず、スピーカ、ＬＥＤランプ、或いはこれらの組み合わせでもよい。操作パネル２２は、ユーザによる操作に応じた操作信号をコントローラ２３０に出力する。操作パネル２２は、例えば、押ボタンを有していてもよいし、ディスプレイに重畳されたタッチセンサを有していてもよい。
【００９３】
図２に示されるように、筐体１４の内部には、給送部１６と、給送トレイ２０と、排出トレイ２１と、搬送ローラ対４５と、記録部２４と、排出ローラ対４６と、プラテン４２と、が配置されている。
【００９４】
［給送トレイ２０、排出トレイ２１］
図１に示されるように、給送トレイ２０は、開口１３を通じて前後方向８に沿って筐体１４に対して挿抜可能である。開口１３は、複合機１０の前面で且つ左右方向９の中央部に位置する。図２に示されるように、給送トレイ２０は、積層された複数の用紙２８を支持可能である。排出トレイ２１は、給送トレイ２０の上方に配置されており、給送トレイ２０と共に前後方向８に沿って挿抜される。排出トレイ２１は、排出ローラ対４６によって排出された用紙２８を支持する。
【００９５】
［給送部１６］
給送部１６は、給送トレイ２０に支持された用紙２８を搬送経路３８へ給送する。図２に示されるように、給送部１６は、給送ローラ２５と、給送アーム２６と、軸２７とを備える。給送ローラ２５は、給送アーム２６の先端に回転可能に支持されている。給送ローラ２５は、不図示の給送用モータから駆動が伝達される。給送アーム２６は、プリンタ部１１のフレームに支持された軸２７に回動可能に支持されている。給送アーム２６は、自重或いはバネ等による弾性力によって給送トレイ２０に向かって回動付勢されている。
【００９６】
以下、用紙２８の搬送に関わる給送ローラ２５、搬送ローラ３４、及び排出ローラ３６が、用紙２８を搬送向き３８Ａに搬送する向きに回転することを、「正回転」と表記する。
【００９７】
［搬送経路３８］
図２に示されるように、搬送経路３８は、その一部がプリンタ部１１の内部において、所定間隔で対向する外側ガイド部材１８及び内側ガイド部材１９などによって形成される空間を指す。搬送経路３８は、給送トレイ２０の後端部から後方に延びる経路である。搬送経路３８は、プリンタ部１１の後部において上方に延びつつ前方にＵターンし、記録部２４とプラテン４２との間の空間を経て排出トレイ２１に至る経路である。図２及び図３に示されるように、搬送ローラ対４５及び排出ローラ対４６の間における搬送経路３８は、左右方向９における複合機１０の概ね中央に設けられており、且つ前後方向８に延びている。搬送経路３８における用紙２８の搬送向き３８Ａは、図２において矢印で示されている。
【００９８】
［搬送ローラ対４５］
図２に示されるように、搬送ローラ対４５は、記録部２４より搬送向き３８Ａの上流に位置する。搬送ローラ対４５は、互いに対向する搬送ローラ３４及びピンチローラ３５を有する。搬送ローラ３４は、不図示の搬送用モータから駆動伝達されて正回転又は逆回転する。ピンチローラ３５は、搬送ローラ３４の回転に伴って連れ回る。用紙２８は、正回転する搬送ローラ３４及びピンチローラ３５に挟持されて搬送向き３８Ａに搬送される。
【００９９】
［排出ローラ対４６］
図２に示されるように、排出ローラ対４６は、記録部２４より搬送向き３８Ａの下流に配置されている。排出ローラ対４６は、互いに対向する排出ローラ３６及び拍車３７を有する。排出ローラ３６は、不図示の搬送用モータから駆動伝達されて正回転又は逆回転する。拍車３７は、排出ローラ３６の回転に伴って連れ回る。用紙２８は、正回転する排出ローラ３６及び拍車３７に挟持されて搬送向き３８Ａに搬送される。
【０１００】
［記録部２４］
図２に示されるように、記録部２４は、搬送向き３８Ａにおける搬送ローラ対４５及び排出ローラ対４６の間に位置する。記録部２４は、搬送経路３８を挟んでプラテン４２と上下方向７に対向している。記録部２４は、キャリッジ２３と、キャリッジ２３に搭載された記録ヘッド３９とを備えている。
【０１０１】
図３に示されるように、キャリッジ２３は、前後方向８に離間しており、各々が左右方向９に延びるガイドレール４３、４４に支持されている。ガイドレール４３、４４は、不図示のフレームに支持されている。キャリッジ２３は、ガイドレール４４に設けられた公知のベルト機構に連結されている。ベルト機構は、不図示のキャリッジ駆動用モータから駆動伝達されて回動する。キャリッジ２３は、ベルト機構の回動に伴って、ガイドレール４３，４４により案内されて左右方向９に往復移動する。キャリッジ２３の移動範囲は、図３の一点鎖線で示されるように、搬送経路３８の幅３８Ｂよりも右方及び左方にまで及ぶ。
【０１０２】
記録ヘッド３９と、インク供給装置１５に設けられた４つのサブタンク１００とは、４本のインクチューブ３２によって接続されている。記録ヘッド３９は、フレキシブルフラットケーブル３３によって、不図示の制御基板と接続されている。
【０１０３】
４つのサブタンク１００は、マゼンタサブタンク１００Ｍ、シアンサブタンク１００Ｃ、イエローサブタンク１００Ｙ、及びブラックサブタンク１００Ｂである。マゼンタサブタンク１００Ｍ、シアンサブタンク１００Ｃ、イエローサブタンク１００Ｙ、及びブラックサブタンク１００Ｂは、本明細書において特に区別する必要がない場合、サブタンク１００と総称される。
【０１０４】
４本のインクチューブ３２は、イエローインクチューブ３２Ｙ、シアンインクチューブ３２Ｃ、マゼンタインクチューブ３２Ｍ、及びブラックインクチューブ３２Ｂからなっている。イエローインクチューブ３２Ｙ、シアンインクチューブ３２Ｃ、マゼンタインクチューブ３２Ｍ、及びブラックインクチューブ３２Ｂは、本明細書において特に区別する必要がない場合、インクチューブ３２と総称される。４本のインクチューブ３２は、一体に束ねられている。
【０１０５】
フレキシブルフラットケーブル３３は、制御部が実装された制御基板及び記録ヘッド３９を電気的に接続するものである。フレキシブルフラットケーブル３３は、制御部から出力される制御信号を記録ヘッド３９に伝達する。
【０１０６】
図２に示されるように、記録ヘッド３９の下面には、複数のノズル４０が配置されている。複数のノズル４０の先端は、記録ヘッド３９の下面から露出している。記録ヘッド３９は、ノズル４０からインクを微小なインク滴として吐出する。キャリッジ２３が移動する過程において、プラテン４２に支持されている用紙２８に向けて記録ヘッド３９がインク滴を吐出する。これにより、用紙２８に画像が記録される。また、これにより、４つのサブタンク１００に貯留されたインクが消費される。
【０１０７】
［プラテン４２］
図２及び図３に示されるように、プラテン４２は、搬送経路３８における搬送ローラ対４５及び排出ローラ対４６の間に配置されている。プラテン４２は、搬送経路３８を挟んで記録部２４と上下方向７に対向配置されている。プラテン４２は、搬送ローラ対４５によって搬送される用紙２８を下方から支持する。
【０１０８】
［カバー４８］
図１（Ｂ）に示されるように、筐体１４の右前部には、開口４７が形成されている。筐体１４にはインク供給装置１５が収納されており、インク供給装置１５の前面が開口４７から露出している。筐体１４には、開口４７を開閉可能なカバー４８が取り付けられている。カバー４８の下端部は、開口４７の下方において、左右方向９の軸周りに回転可能に筐体１４に支持されている。カバー４８は、開口４７を閉鎖する閉鎖位置（図１（Ａ）に示される位置）と、開口４７を開放する開放位置（図１（Ｂ）に示される位置）との間を、回転可能である。
【０１０９】
図１（Ａ）に示されるように、カバー４８は、透光部４９を有している。透光部４９は、カバー４８の外側から内部の構成を視認可能な透光性を有する。カバー４８が閉鎖位置にあるときに、透光部４９から、インク供給装置１５に取り付けられたインクカートリッジ５０の前面が視認可能である。
【０１１０】
［カバーセンサ８８］
複合機１０は、カバーセンサ８８（図１３参照）を有する。カバーセンサ８８は、例えば、カバー４８が接離するスイッチ等の機械式センサであってもよいし、カバー４８の位置によって光が遮断或いは透過される光学式センサであってもよい。カバーセンサ８８は、カバー４８の位置に応じた信号をコントローラ２３０に出力する。より詳細には、カバーセンサ８８は、カバー４８が閉鎖位置に位置していることに応じて、ローレベル信号をコントローラ２３０へ出力する。一方、カバーセンサ８８は、カバー４８が閉鎖位置と異なる位置に位置していることに応じて、ローレベル信号より信号強度の高いハイレベル信号をコントローラ２３０へ出力する。換言すれば、カバーセンサ８８は、カバー４８が開放位置に位置していることに応じて、ハイレベル信号をコントローラ２３０へ出力する。
【０１１１】
［インク供給装置１５］
図４に示されるように、インク供給装置１５は、４つのインクカートリッジ５０と、装着ケース７１と、４つのサブタンク１００と、大気連通部７０（図５、図１１参照）と、を備えている。
【０１１２】
［インクカートリッジ５０］
図１、図３に示されるように、４つのインクカートリッジ５０（カートリッジの一例）は、マゼンタインクカートリッジ５０Ｍ、シアンインクカートリッジ５０Ｃ、イエローインクカートリッジ５０Ｙ、及びブラックインクカートリッジ５０Ｂからなっている。マゼンタインクカートリッジ５０Ｍ、シアンインクカートリッジ５０Ｃ、イエローインクカートリッジ５０Ｙ、及びブラックインクカートリッジ５０Ｂは、本明細書において特に区別される必要がない場合、インクカートリッジ５０と総称される。
【０１１３】
図４は、４つのインクカートリッジ５０のうち、左右方向９の最も左側に位置するマゼンタインクカートリッジ５０Ｍのみが装着ケース７１に収納された状態を示している。
【０１１４】
図５、図６に示されるように、インクカートリッジ５０は、カートリッジ本体５１と、ジョイント受部５２と、を備えている。カートリッジ本体５１は、インク（液体の一例）を貯留する第１貯留室５３（第１液室の一例）を有する。
【０１１５】
カートリッジ本体５１は、概ね直方体状の箱形状を有している。カートリッジ本体５１は、上下方向７及び前後方向８から視て概ね長方形状である。カートリッジ本体５１は、カートリッジ本体５１の前端部に下方に突出する凸部６５を有している。カートリッジ本体５１は、上壁５４、サブ下壁５５、右壁５６（図４参照）、左壁５７（図４参照）、後壁５８、前壁５９、下壁６０を有している。下壁６０は、カートリッジ本体５１の前部かつ下端部に位置しており、サブ下壁５５よりも下方に位置している。サブ下壁５５は、下壁６０よりも後方に位置している。カートリッジ本体５１は、凸部６５において、後方（水平方向の一例）に開口する連通口６１を有している。連通口６１は、サブ下壁５５、下壁６０、右壁５６、及び左壁５７によって画定された開口である。
【０１１６】
上壁５４には、前後方向８の中央部に上方に突出する当接部６４が設けられている。当接部６４は、装着ケース７１のロックレバー７９（後述）と当接する部分である。
【０１１７】
当接部６４の上面にはＩＣチップ６６（カートリッジメモリの一例）が位置している。ＩＣチップ６６には、ＩＣチップ６６が形成されている。また、ＩＣチップ６６は、不図示のメモリを備える。ＩＣチップ６６は、ＩＣチップ６６の上記メモリと電気的に接続されている。ＩＣチップ６６は、ＩＣチップ６６の上面において、接点１５２と導通可能に露出されている。すなわち、インクカートリッジ５０が装着ケース７１に装着された状態において、ＩＣチップ６６は、接点１５２と電気的に導通する。コントローラ２３０は、接点１５２及びＩＣチップ６６を通じてＩＣチップ６６のメモリから情報を読み出し、接点１５２及びＩＣチップ６６を通じてＩＣチップ６６のメモリに情報を書き込むことができる。
【０１１８】
ＩＣチップ６６のメモリは、最大インク量Ｖｃ０と、粘度ρと、後述するインク量Ｖｃ、高さＨｃ、及び関数Ｆｃとを記憶する。ＩＣチップ６６のメモリはカートリッジメモリの一例である。最大インク量Ｖｃ０は、インクカートリッジ５０に貯留可能なインクの最大量を示す最大液体量の一例である。換言すれば、インク量Ｖｃ０は、新品のインクカートリッジ５０に貯留されているインクの量を示す。粘度ρは、インクカートリッジ５０に貯留されているインクの粘度を示す。以下、ＩＣチップ６６のメモリに記憶されている情報を総称して、「ＣＴＧ情報」と表記することがある。また、「新品」とは、インクカートリッジ５０から、インクカートリッジ５０内のインクが一度も流出していない状態を示す。
【０１１９】
ＩＣチップ６６のメモリの記憶領域は、例えば、第１領域と、第２領域と、第３領域とを含む。第１領域、第２領域、及び第３領域は、互いに異なるメモリ領域である。第１領域及び第３領域は、コントローラ２３０によって情報が上書きされない領域である。一方、第２領域は、コントローラ２３０によって情報が上書き可能な領域である。そして、第１領域に関数Ｆｃが記憶され、第２領域にインク量Ｖｃ及び高さＨｃが記憶され、第３領域に最大液体量Ｖｃ０が記憶される。
【０１２０】
第１貯留室５３の底面を画定するサブ下壁５５の上面は、前後方向８に沿って凸部６５に向かって下方に傾斜している。
【０１２１】
ジョイント受部５２は、カートリッジ本体５１において連通口６１を囲む部分から後方に延びる円筒形状を有している。ジョイント受部５２は、サブタンク１００のジョイント１０２（後述）が挿入される部分である。
【０１２２】
図５は、インクカートリッジ５０がサブタンク１００に装着された装着状態を示している。図６は、インクカートリッジ５０がサブタンク１００から分離された分離状態を示している。装着状態については以下で詳しく説明される。
【０１２３】
ジョイント受部５２には、連通口６１を閉鎖可能な栓部材６２と、栓部材６２を後方に付勢するバネ６３と、が設けられている。図６に示されるように、インクカートリッジ５０に外力が加わらない状態では、栓部材６２は、連通口６１を閉鎖する位置にある。バネ６３は、栓部材６２と前壁５９との間において前後方向８に沿って延びており、前後方向８に圧縮可能である。図５に示されるように、ジョイント１０２によって、バネ６３の弾性力よりも大きな前向きの外力が栓部材６２に加えられると、栓部材６２が前方に移動して連通口６１から離れる。
【０１２４】
［装着ケース７１］
装着ケース７１は、前方が開放された直方体状の箱形状である。装着ケース７１は、上壁７２、下壁７３、右壁７４、左壁７５、後壁７６、及び３つの仕切壁７７を有している。上壁７２、下壁７３、右壁７４、左壁７５、及び後壁７６により、前方が開放された内部空間７８が画定されている。３つの仕切壁７７は、右壁７４及び左壁７５と平行な壁であり、内部空間７８を、４つの空間に区画している。区画された４つの空間のそれぞれに、４つのインクカートリッジ５０のそれぞれが収納される。装着ケース７１は、図５、図６、図７に示されるように、ロックレバー７９と、接点１５２と、装着センサ１５４と、液面センサ１５５と、を備えている。
【０１２５】
［ロックレバー７９］
図４、図５、図６に示されるように、装着ケース７１には、インクカートリッジ５０を内部空間７８内に保持するロックレバー７９が設けられている。ロックレバー７９は、前後方向に延びた板状部材である。ロックレバー７９の中央部は、上壁７２に、左右方向９の軸周りに回転可能に設けられている。ロックレバー７９は、後方に傾いたロック位置と、前方に傾いたアンロック位置との間で回転する。ロックレバー７９は、外力が加わらない状態では、自重により後方に傾いてロック位置となる。ロック位置において、ロックレバー７９の後端部は、内部空間７８にあるインクカートリッジ５０の当接部６４の前面と当接し、インクカートリッジ５０が前後方向８の前方へ移動することを規制する。ロック位置のロックレバー７９の前端部がユーザの指等によって下方に押圧されると、ロックレバー７９はロック位置からアンロック位置に回転する。アンロック位置において、ロックレバー７９の後端部は、当接部６４の前面より上方に位置する。アンロック位置のロックレバー７９は、前後方向８の前方へ移動するインクカートリッジ５０の当接部６４と当接しないので、装着ケース７１からインクカートリッジ５０が取り外し可能となる。
【０１２６】
［接点１５２］
接点１５２（インタフェースの一例）は、装着ケース７１の上壁７２に位置している。接点１５２は、上壁７２から装着ケース７１の内部空間７８へ向けて下方に突出している。接点１５２は、装着ケース７１にインクカートリッジ５０が装着された状態において、インクカートリッジ５０の後述するＩＣチップ６６に接する位置に位置している。接点１５２は、導電性を有しており、さらに上下方向７に沿って弾性的に変形可能である。接点１５２は、コントローラ２３０に電気的に接続されている。
【０１２７】
［装着センサ１５４］
装着センサ１５４は、装着ケース７１の上壁７２に位置している。装着センサ１５４は、インクカートリッジ５０が装着ケース７１に装着されているか否かを検出するためのセンサである。装着センサ１５４は、左右方向９に離間した発光部及び受光部を備える。装着ケース７１にインクカートリッジ５０が装着された状態において、インクカートリッジ５０の図示しない被検知部が、装着センサ１５４の発光部及び受光部の間に位置する。換言すれば、装着センサ１５４の発光部及び受光部は、装着ケース７１に装着されたインクカートリッジ５０の被検知部を挟んで、互いに対向した状態で位置している。
【０１２８】
装着センサ１５４は、発光部から左右方向９に沿って照射された光が受光部で受光されたか否かに応じて、異なる信号（図中では、「装着信号」と表記する。）を出力する。装着センサ１５４は、例えば、受光部で受光された光の受光強度が閾値強度未満であることに応じて、ローレベル信号をコントローラ２３０へ出力する。一方、装着センサ１５４は、受光部で受光された光の受光強度が閾値強度以上であることに応じて、ローレベル信号より信号強度の高いハイレベル信号をコントローラ２３０へ出力する。ハイレベル信号は第３信号の一例であり、ローレベル信号は第４信号の一例である。
【０１２９】
［サブタンク１００］
図４から図１１には、サブタンク１００（タンクの一例）が示されている。サブタンク１００は、装着ケース７１の下壁７３の下方に位置している。
【０１３０】
図７に示されるように、サブタンク１００は、タンク本体１０１と、ジョイント１０２と、を備えている。タンク本体１０１の内部に、インクを貯留する第２貯留室１０５（第２液室の一例）が形成されている。サブタンク１００は、第２貯留室１０５と連通する液体流路１０３及び気体流路１０４を備えている。液体流路１０３及び気体流路１０４は、タンク本体１０１の内部及びジョイント１０２の内部に形成されている。また、サブタンク１００は、第２貯留室１０５を外部に連通する大気連通口１０６（図９、図１０、図１２（Ａ）参照）を備えている。
【０１３１】
［液体流路１０３及び気体流路１０４］
図７に示されるように、液体流路１０３及び気体流路１０４は並列に位置している。
【０１３２】
液体流路１０３は、第１開口１３１と、第２開口１３２と、鉛直部分１３３と、水平部分１３４と、を有している。第１開口１３１は、液体流路１０３の一端側（後端側）に形成され且つ第２貯留室１０５に連通する開口である。第１開口１３１は、上下方向７に沿って開口している。第２開口１３２は、液体流路１０３の一端側とは反対の他端側（前端側）に形成され且つ外部に開口する開口である。第２開口１３２は、前後方向８に沿って開口している。第２開口１３２は、インクカートリッジ５０の装着状態において、インクカートリッジ５０の第１貯留室５３内に位置する。鉛直部分１３３は、液体流路１０３において第１開口１３１から上方に延びる部分である。水平部分１３４は、液体流路１０３において第２開口１３２から後方に延びる部分である。鉛直部分１３３の上端部は水平部分１３４の後端部に接続されている。
【０１３３】
気体流路１０４は、第３開口１４１と、第４開口１４２と、鉛直部分１４３と、水平部分１４４と、を有している。第３開口１４１は、気体流路１０４の一端側（後端側）に形成され且つ第２貯留室１０５に連通する開口である。第３開口１４１は、上下方向７に沿って開口している。第４開口１４２は、気体流路１０４の一端側とは反対の他端側（前端側）に形成され且つ外部に開口する開口である。第４開口１４２は、前後方向８に沿って開口している。第４開口１４２は、インクカートリッジ５０の装着状態において、インクカートリッジ５０の第１貯留室５３に連通する。鉛直部分１４３は、気体流路１０４において第３開口１４１から上方に延びる部分である。水平部分１４４は、気体流路１０４において第４開口１４２から後方に延びる部分である。鉛直部分１４３の上端部は水平部分１４４の後端部に接続されている。
【０１３４】
［タンク本体１０１］
タンク本体１０１は、概ね直方体状の外壁を有している。タンク本体１０１は、上下方向７から視て概ねＴ字形状（図９、図１０参照）であり、前後方向８から視て概ね長方形状（図８参照）であり、左右方向９から視てＬ字形状（図４から図７参照）である。
【０１３５】
図４から図１１に示されるように、タンク本体１０１の外壁は、後側上壁１０７、屈曲上壁１３０、前側上壁１０８、下壁１０９、２つの後側側壁１１０、２つの前側屈曲側壁１１１、後壁１１２、及び前壁１１３を有している。後側上壁１０７は、後端から水平面に対して上方に傾斜しながら前方に延びる壁である。屈曲上壁１３０は、後側上壁１０７の前端から延びる壁であって、前方から上方に向けて屈曲している。前側上壁１０８は、屈曲上壁１３０の上端から、水平面と平行に前方に延びている。下壁１０９は、水平面と平行に前後方向８に延びている。下壁１０９は、上下方向７から視てＴ字形状を有している。後側側壁１１０は、後側上壁１０７と下壁１０９とを上下方向７に接続している。後側側壁１１０は、左右方向９から視て概ね長方形である。図９に示されるように、後側側壁１１０は、隣り合う異なるインクのタンク本体１０１において共用されている。前側屈曲側壁１１１は、屈曲上壁１３０及び前側上壁１０８と、下壁１０９とを上下方向７に接続している。前側屈曲側壁１１１は、左右方向９から視て概ね長方形であり、上下方向７から視て隅部が弧を描くＬ字形状である。後壁１１２は、下壁１０９の後端部から上方に延びており、左右に位置する２つの後側側壁１１０と、後側上壁１０７とに接続されている。前壁１１３は、下壁１０９の前端部から上方に延びており、左右に位置する２つの前側屈曲側壁１１１に接続されている。
【０１３６】
図７、図１１に示されるように、下壁１０９には、第２貯留室１０５に連通する連通口１２９が形成されている。連通口１２９には、インクチューブ３２の一端部が接続されており、インクチューブ３２を介して、第２貯留室１０５と記録ヘッド３９とが連通接続されている。
【０１３７】
タンク本体１０１の前端部かつ上部には、前後方向８に延びる円筒形状の内筒部１１４が設けられている。内筒部１１４の内部は、前壁１１３、左右に位置する２つの前側屈曲側壁１１１、及び前側上壁１０８によって形成された開口に連通している。内筒部１１４には、ジョイント１０２の後端部が取り付け可能である。内筒部１１４にジョイント１０２が取り付けられた装着状態では、内筒部１１４の内部とジョイント１０２の内部が連通する。
【０１３８】
［幅広部１５０及び幅狭部１５１］
図１０に示されるように、タンク本体１０１は、前後方向８に沿って並ぶ幅広部１５０及び幅狭部１５１を有している。幅広部１５０は、タンク本体１０１において前後方向８の後部に位置し、２つの後側側壁１１０及び後壁１１２を含む部分である。幅狭部１５１は、タンク本体１０１において前後方向８の前端部（第１方向の一端部の一例）に位置し、２つの前側屈曲側壁１１１及び前壁１１３を含む部分である。幅狭部１５１の左右方向９（第１方向に直交する第２方向の一例）における幅は、幅広部１５０の左右方向９における幅よりも小さい。第２貯留室１０５は、幅広部１５０及び幅狭部１５１に亘って形成されている。
【０１３９】
図８に示されるように、幅広部１５０の左右方向９における幅は、インクカートリッジ５０の左右方向９における幅に、概ね等しい。したがって、幅狭部１５１の左右方向９における幅は、インクカートリッジ５０の左右方向９における幅よりも小さい。
【０１４０】
［鉛直壁１１５及び水平壁１１６］
図７、図１１に示されるように、タンク本体１０１は、タンク本体１０１の前部且つ上部に、鉛直壁１１５及び水平壁１１６を備えている。
【０１４１】
鉛直壁１１５は、上下方向７に延びる壁であり、前後方向８において前壁１１３と屈曲上壁１３０との間に位置している。鉛直壁１１５は、左右に位置する２つの前側屈曲側壁１１１を接続しており、前壁１１３、前側上壁１０８、２つの前側屈曲側壁１１１に画定される空間を前後に区画している。鉛直壁１１５の下端位置が、液体流路１０３の第１開口１３１の上下方向７における位置であり、且つ、気体流路１０４の第３開口１４１の上下方向７における位置である。鉛直壁１１５の下端位置は、後側上壁１０７の前端の下端位置に等しい。つまり、第２貯留室１０５の上面は、鉛直壁１１５の下端位置を通り水平面と平行な仮想平面と、後側上壁１０７の下面とによって画定されている。
【０１４２】
水平壁１１６は、鉛直壁１１５の上端から前方に延びる壁である。水平壁１１６は、内筒部１１４の内部まで延びている。水平壁１１６は、左右に位置する２つの前側屈曲側壁１１１を接続し、且つ、内筒部１１４の内面を左右方向９において接続している。水平壁１１６は、前側上壁１０８、２つの前側屈曲側壁１１１によって画定される空間と、内筒部１１４によって画定される空間とを、上下に区画している。
【０１４３】
図１０に示されるように、液体流路１０３の鉛直部分１３３は、鉛直壁１１５、前壁１１３、及び２つの前側屈曲側壁１１１によって形成されている。液体流路１０３の鉛直部分１３３において上下方向７と直交する断面の形状は、矩形である。液体流路１０３の鉛直部分１３３は、第２貯留室１０５を区画する２つの前側屈曲側壁１１１と面一に連続している。したがって、液体流路１０３の鉛直部分１３３の左右方向９における幅は、幅狭部１５１によって画定される第２貯留室１０５の左右方向９における幅と、同じである。
【０１４４】
図１０に示されるように、気体流路１０４の鉛直部分１４３は、屈曲上壁１３０、鉛直壁１１５、及び２つの前側屈曲側壁１１１によって形成されている。気体流路１０４の鉛直部分１３３において上下方向７と直交する断面の形状は、矩形である。気体流路１０４の鉛直部分１３３は、第２貯留室１０５を区画する２つの前側屈曲側壁１１１と面一に連続している。したがって、気体流路１０４の鉛直部分１４３の左右方向９における幅は、幅狭部１５１によって画定される第２貯留室１０５の左右方向９における幅と、同じである。
【０１４５】
図１０に示されるように、気体流路１０４の第３開口１４１の前後方向８（水平方向の一例）に沿った長さ１４９は、液体流路１０３の第１開口１３１の前後方向８（水平方向の一例）に沿った長さ１４８よりも、長い。気体流路１０４の第３開口１４１の左右方向９に沿った長さは、液体流路１０３の第１開口１３１の左右方向９に沿った長さに、等しい。そのため、気体流路１０４の第３開口１４１の開口面積は、液体流路１０３の第１開口１３１の開口面積よりも大きい。
【０１４６】
図７に示されるように、気体流路１０４の鉛直部分１４３において、気体流路１０４の開口面積は、気体流路１０４の第３開口１４１に近づくにつれて拡大している。液体流路１０３の鉛直部分１３３では、液体流路１０３の開口面積は、上下方向７において一定である。
【０１４７】
図７に示されるように、タンク本体１０１内における液体流路１０３の水平部分１３４は、前側上壁１０８、水平壁１１６、２つの前側屈曲側壁１１１、及び内筒部１１４によって形成されている。タンク本体１０１内における気体流路１０４の水平部分１４４は、水平壁１１６、２つの前側屈曲側壁１１１、及び内筒部１１４によって形成されている。
【０１４８】
［第１リブ１１７］
図７、図１１に示されるように、タンク本体１０１は、鉛直壁１１５と連続する第１リブ１１７を備えている。第１リブ１１７は、前側屈曲側壁１１１から突出しており、鉛直壁１１５から下方に延びている。第１リブ１１７と下壁１０９との間は離間している。左右に位置する２つの前側屈曲側壁１１１のそれぞれに第１リブ１１７が設けられており、１つの第２貯留室１０５内には、２つの第１リブ１１７が左右方向９に離れて位置している。
【０１４９】
［液面センサ１５５］
図７に示されるように、液面センサ１５５は、タンク本体１０１の第２貯留室１０５の液面が境界位置Ｂ以上であるか否かを検出するためのセンサである。境界位置Ｂは、気体流路１０４の第３開口１４１を通過して水平方向に延びる仮想線Ｌより下方の位置である。液面センサ１５５は、タンク本体１０１の後壁１１２の境界位置Ｂにインクが接触しているか否かによって異なる反射率を有するプリズムを利用して、第２貯留室１０５の境界位置Ｂにおけるインクの液面を光学的に検出するためのセンサである。
【０１５０】
液面センサ１５５は、左右方向９に離間した発光部及び受光部を備える。液面センサ１５５は、発光部から出力された光が受光部で受光されたか否かに応じて異なる信号（図中では、「液面信号」と表記する。）を出力する。本実施形態では、タンク本体１０１の第２貯留室１０５の液面が境界位置Ｂ以上であれば、液面センサ１５５は、ローレベル信号を出力する。タンク本体１０１の第２貯留室１０５の液面が境界位置Ｂ未満であれば、液面センサ１５５は、ハイレベル信号を出力する。ローレベル信号が第１信号の一例である。ハイレベル信号が第２信号の一例である。
【０１５１】
［ジョイント１０２］
図４から図９、図１１に示されるように、ジョイント１０２は、ジョイント本体１１８、内壁１１９、栓部材１２０（図６、図７参照）、及びバネ１２１（図６、図７参照）を備えている。
【０１５２】
［ジョイント本体１１８］
図７に示されるように、ジョイント本体１１８は、ジョイント本体１１８は、後端部に位置する外筒部１２２と、前端部に位置する先端部１２３と、外筒部１２２及び先端部１２３を接続する本体部１２４と、を備えている。外筒部１２２は、円筒形状を有しており、前後方向８に延びている。外筒部１２２は、タンク本体１０１の内筒部１１４に嵌め込まれている。これにより、ジョイント本体１１８がタンク本体１０１に固定されている。先端部１２３は、前後方向８の軸を軸芯とする円板形状を有している。本体部１２４は、円筒形状を有しており、前後方向８に延びている。本体部１２４の前端部には、上方及び下方にそれぞれ開口する上開口部１２５及び下開口部１２６が形成されている。
【０１５３】
［仕切壁１２７及び第２リブ１２８］
図７、図８に示されるように、内壁１１９は、ジョイント本体１１８の内部に位置している。内壁１１９は、先端部１２３から後方に外筒部１２２を超えて延びている。内壁１１９は、仕切壁１２７と、第２リブ１２８とを備えている。図８に示されるように、内壁１１９は、前後方向８から視てＴ字形状を有している。仕切壁１２７の後端面は、タンク本体１０１内の水平壁１１６の前端面に接触している。仕切壁１２７及び水平壁１１６により、ジョイント本体１１８とタンク本体１０１との接続部分の内部空間が、液体流路１０３及び気体流路１０４に区画されている。
【０１５４】
仕切壁１２７は、ジョイント本体１１８の内部において左右方向９に拡がる壁である。仕切壁１２７は、先端部１２３から後方に延びている。ジョイント本体１１８の内部空間は、仕切壁１２７によって上部と下部とに区画されている。
【０１５５】
第２リブ１２８は、仕切壁１２７の左右方向９の中央部から下方に突出している。第２リブ１２８は、先端部１２３から後方に延びている。第２リブ１２８とジョイント本体１１８の内面との間には隙間がある。
【０１５６】
ジョイント１０２内における液体流路１０３の水平部分１３４は、ジョイント本体１１８の内面及び内壁１１９の下面によって形成されている。ジョイント１０２内における液体流路１０３の水平部分１３４の断面は、略半円形状である。より正確には、水平部分１３４の断面は、半円形状の上側部分が第２リブ１２８によって左右に分割されており、半円形状の下側部分が左右に分割されずに繋がっている。ジョイント１０２内における気体流路１０４の水平部分１４４は、ジョイント本体１１８の内面及び内壁１１９の上面によって形成されている。ジョイント１０２内における気体流路１０４の水平部分１４４の断面は、半円形状である。
【０１５７】
［栓部材１２０及びバネ１２１］
栓部材１２０は、円筒状の部材であり、ジョイント本体１１８の本体部１２４の外側に位置している。栓部材１２０は、本体部１２４に沿って前後方向８に移動可能である。バネ１２１は、前端部が栓部材１２０の後端部に固定されており、後端部が大気連通部７０のバッファタンク９０及びジョイント本体１１８の外筒部１２２に当接している。バネ１２１は、栓部材１２０を前方に付勢する。外力が加えられない状態では、栓部材１２０は、ジョイント本体１１８の前端部に位置しており、上開口部１２５及び下開口部１２６を閉鎖している。バネ１２１の弾性力よりも大きな後向きの外力が栓部材１２０に加えられると、栓部材１２０は後方に移動して、上開口部１２５及び下開口部１２６が開放される。インクカートリッジ５０の装着時には、栓部材１２０にインクカートリッジ５０のジョイント受部５２が当接する。インクカートリッジ５０の装着時に加えられる外力により、ジョイント受部５２に当接する栓部材１２０が後方に移動する。
【０１５８】
［インクカートリッジ５０の装着状態］
図５、図７に示されるように、インクカートリッジ５０がサブタンク１００に装着された装着状態では、サブタンク１００のジョイント本体１１８が、前後方向８に沿ってインクカートリッジ５０のジョイント受部５２内に挿入され、さらに連通口６１内に挿入されている。この装着状態では、インクカートリッジ５０の第１貯留室５３に、サブタンク１００の液体流路１０３の第２開口１３２及び気体流路１０４の第４開口１４２が進入している。図４、図５に示されるように、インクカートリッジ５０は、前後方向８に沿ってサブタンク１００に分離及び装着可能である。
【０１５９】
［インクカートリッジ５０及びサブタンク１００のレイアウト］
インクカートリッジ５０及びサブタンク１００のレイアウトが説明される。レイアウトは、インクカートリッジ５０が装着ケース７１に装着され、インクカートリッジ５０及びサブタンク１００が図５に示される使用姿勢であるとして説明がなされる。
【０１６０】
図５に示されるように、インクカートリッジ５０の凸部６５は、上下方向７において、ジョイント１０２と略同じ位置にあるが、インクカートリッジ５０の凸部６５より上方の部分は、ジョイント１０２よりも上方にある。そのため、インクカートリッジ５０の第１貯留室５３の大部分は、第２開口１３２よりも上方に位置している。また、サブタンク１００の上部、すなわち屈曲上壁１３０付近から上方の部分は、ジョイント１０２と略同じ位置にあるが、サブタンク１００の屈曲上壁１３０付近より下方の部分は、ジョイント１０２よりも下方にある。そのため、サブタンク１００の第２貯留室１０５の大部分は、第３開口１４１ジョイント１０２よりも下方にある。
【０１６１】
第１貯留室５３の凸部６５より上方の部分は、液体流路１０３の水平部分１３４及び気体流路１０４の水平部分１４４よりも上方に位置している。第２貯留室１０５は、液体流路１０３の水平部分１３４及び気体流路１０４の水平部分１４４よりも下方に位置している。第１貯留室５３の下側部分と、第２貯留室１０５の上側部分とは、前後方向８の同軸上に並んでいる。第１貯留室５３の容積は、第２貯留室１０５の容積よりも大きい。
【０１６２】
気体流路１０４の水平部分１４４は、液体流路１０３の水平部分１３４よりも上方に位置している。
【０１６３】
図７に示されるように、第１貯留室５３の連通口６１から後方に向けて、液体流路１０３の第１開口１３１、気体流路１０４の第３開口１４１、及び大気連通口１０６が順に位置している。第１貯留室５３の連通口６１の上下方向７の位置が、第１貯留室５３と液体流路１０３とが連通する上下方向７の位置に相当し、その上下方向７の位置において連通口６１から後方に向かう方向が、第１貯留室５３から遠ざかる方向である。
【０１６４】
［大気連通部７０］
図５、図１１、図１２に示されるように、大気連通部７０は、バッファタンク９０と、連通流路１４５と、大気連通路１４７と、を備えている。
【０１６５】
［バッファタンク９０］
図５、図１１に示されるように、バッファタンク９０は、装着ケース７１の下方且つサブタンク１００の上方に位置している。
【０１６６】
図５、図１１に示されるように、バッファタンク９０は、上壁９１、下壁９２、２つの側壁９３、３つの仕切壁９４、後壁９５、及び突出壁９６を備えている。上壁９１は、水平面に対して傾斜した面に沿って拡がる壁である。下壁９２は、後方から水平面と平行に延びながら、前方に向かうにつれて上方に屈曲する壁である。下壁９２の前端部は上壁９１の前端部に接続している。２つの側壁９３は、上壁９１及び下壁９２の左右方向９の両端部をそれぞれ上下方向７に接続する壁である。３つの仕切壁９４は、２つの側壁９３と左右方向９に並列に配置された壁である。後壁９５は、上壁９１及び下壁９２の後端部を接続する壁である。突出壁９６は、上壁９１の後端部から上方に延びる壁である。後壁９５と突出壁９６との間には、前後方向８に隙間が形成されている。
【０１６７】
バッファタンク９０の上壁９１の上方には、装着ケース７１の下壁７３が位置している。バッファタンク９０の上壁９１は、装着ケース７１の下壁７３を支持している。したがって、バッファタンク９０の上壁９１は、装着ケース７１に収納されたインクカートリッジ５０を、装着ケース７１の下壁７３を介して支持可能である。
【０１６８】
［バッファ室９７］
上壁９１、下壁９２、２つの側壁９３、後壁９５によって画定される内部空間は、３つの仕切壁９４により４つのバッファ室９７として区画されている。４つのバッファ室９７は、それぞれ４つのサブタンク１００に連通接続されている。４つのバッファ室９７は、気液置換により第１貯留室５３内のインクが第２貯留室１０５に供給されるに伴って第１貯留室５３に送られる空気を、貯留可能な空間である。４つのバッファ室９７は、記録部２４よりも上方に位置している。
【０１６９】
図５に示されるように、第１貯留室５３の下方にバッファ室９７が位置し、バッファ室９７の下方に第２貯留室１０５が位置している。凸部６５内に形成された第１貯留室５３の一部及びバッファ室９７の一部は、前後方向８（水平方向の一例）の同軸上に並んでいる。さらに、凸部６５の一部、ジョイント１０２の一部、及びバッファタンク９０の一部が、前後方向８（水平方向の一例）の同軸上に並んでいる。また、第１貯留室５３の一部及びバッファ室９７の一部は、上下方向７の同軸上に並んでいる。
【０１７０】
［連通流路１４５］
図１２（Ａ）に示されるように、バッファタンク９０の下壁９２は、バッファ室９７に連通する開口部９８を有している。インク供給装置１５は、タンク本体１０１の大気連通口１０６とバッファタンク９０の開口部９８とを接続する接続管９９を備えている。接続管９９は、円筒形状である。接続管９９の内面によって、第２貯留室１０５とバッファ室９７とを接続する連通流路１４５が形成されている。連通流路１４５は、上下方向７に延びている。
【０１７１】
［大気連通路１４７］
図１２（Ｂ）に示されるように、上壁９１の後端部には、バッファ室９７毎に開口部１４６が形成されている。上壁９１は、突出壁９６の後方に４つの開口部１４６を有している。上壁９１の下面は、前後方向８（水平方向の一例）に沿って開口部９８と反対（後方）に向かって上方に傾斜している。開口部１４６は、上壁９１の下面が上下方向７の最も高い位置において、上壁９１に開口している。ここで、後壁９５の前面と突出壁９６の後面とによって、上下方向７に延びる大気連通路１４７が形成されている。大気連通路１４７は、開口部１４６を介してバッファ室９７から上方に延びており、複合機１０の筐体１４の外部に連通している。
【０１７２】
［本実施形態の動作］
まず、空のサブタンク１００にインクカートリッジ５０が初めて装着された初期導入時におけるインク及び空気の流れが説明される。
【０１７３】
図６に示される初期導入前の状態（前状態）では、インクカートリッジ５０はサブタンク１００から分離されている。前状態では、インクカートリッジ５０の連通口６１は栓部材６２によって閉鎖されており、第１貯留室５３がインクカートリッジ５０によって密閉されている。そのため、第１貯留室５３に満たされたインクは、外部に漏れることはない。一方、前状態では、サブタンク１００の上開口部１２５及び下開口部１２６（図７参照）は、栓部材１２０によって閉鎖されている。そのため、第２貯留室１０５に連通する液体流路１０３の第２開口１３２及び気体流路１０４の第２開口が、外部に対して閉じられている。第２貯留室１０５は、液体流路１０３及び気体流路１０４の他に外部に連通する部位として、大気連通口１０６（図７参照）及び連通口１２９（図７参照）を有している。大気連通口１０６は、バッファ室９７を介して複合機１０の外気と連通している。連通口１２９は、インクチューブ３２を介して記録ヘッド３９に連通しているが、記録ヘッド３９の休止状態ではインクは連通口１２９から流出することはない。ここで、第２貯留室１０５には、インクが満たされておらず、第２貯留室１０５は空の状態である。
【０１７４】
図５、図７に示されるように、インクカートリッジ５０がサブタンク１００に装着されると、連通口６１を閉鎖する栓部材６２がバネ６３の付勢力に逆らって前方に退避し、且つ、上開口部１２５及び下開口部１２６を閉鎖する栓部材１２０がバネ１２１の付勢力に逆らって後方に退避する。この結果、第１貯留室５３が液体流路１０３及び気体流路１０４を介して第２貯留室１０５に連通する。そうすると、インクカートリッジ５０の第１貯留室５３内のインクが、液体流路１０３を介して自然落下して、サブタンク１００の第２貯留室１０５内に導入される。大気連通口１０６が外気に開放されているため、第２貯留室１０５内に導入されたインクの量と同じ体積の空気が、大気連通口１０６及び気体流路１０４を介して第１貯留室５３に導入される。このように、第１貯留室５３内のインクが空気に置換されること（気液置換）により、第１貯留室５３内のインクが第２貯留室１０５に供給される。
【０１７５】
気液置換の進行により、第２貯留室１０５のインクの液面は上昇する。インクの液面が上昇して鉛直壁１１５の下端位置に到達すると、気体流路１０４の第３開口１４１が閉じられる。そうすると、気液置換ができなくなるので、第１貯留室５３から第２貯留室１０５へのインクの供給が停止される。このようにして、初期導入時におけるインクの供給が行われる。
【０１７６】
次に、インクカートリッジ５０の装着状態においてプリンタ部１１による記録動作が実行された場合のインク及び空気の流れが説明される。
【０１７７】
記録動作の実行時に記録ヘッド３９からインクが吐出されると、第２貯留室１０５内のインクが連通口１２９から記録ヘッド３９へと吸引される。インクの減少に伴って第２貯留室１０５内のインクの液面が下降するので、閉じられていた気体流路１０４の第３開口１４１が開放される。気体流路１０４の第３開口１４１が開放されると、上述したように、気液置換が実行されて、第１貯留室５３から第２貯留室１０５にインクが供給される。記録ヘッド３９でのインクの消費を補うように、第１貯留室５３から第２貯留室１０５にインクが供給され、第２貯留室１０５内のインクの液面の高さは、気体流路１０４の第３開口１４１の位置に保たれる。
【０１７８】
第１貯留室５３内のインクが空になった場合、空になったインクカートリッジ５０を、インクに満たされた別のインクカートリッジ５０に交換することにより、複合機１０は継続的に記録動作を実行できる。
【０１７９】
［コントローラ２３０］
コントローラ２３０は、図６に示されるように、ＣＰＵ２３１、ＲＯＭ２３２、ＲＡＭ２３３、ＥＥＰＲＯＭ２３４、及びＡＳＩＣ２３５を備えている。ＲＯＭ２３２には、ＣＰＵ２３１が各種動作を制御するためのプログラムなどが格納されている。ＲＡＭ２３３は、ＣＰＵ２３１が上記プログラムを実行する際に用いるデータや信号等を一時的に記録する記憶領域、或いはデータ処理の作業領域として使用される。ＥＥＰＲＯＭ２３４には、電源オフ後も保持すべき設定情報が格納される。ＲＯＭ２３２、ＲＡＭ２３３、及びＥＥＰＲＯＭ２３４は、装置メモリの一例である。
【０１８０】
ＡＳＩＣ２３５は、給送ローラ２５、搬送ローラ３４、排出ローラ３６、及び記録ヘッド３９を動作させるためのものである。コントローラ２３０は、ＡＳＩＣ２３５を通じて不図示のモータを駆動させることによって、給送ローラ２５、搬送ローラ３４、及び排出ローラ３６を回転させる。また、コントローラ２３０は、ＡＳＩＣ２３５を通じて記録ヘッド３９の駆動素子に駆動信号を出力することによって、記録ヘッド３９にノズル４０を通じてインクを吐出させる。ＡＳＩＣ２３５は、ノズル４０を通じて吐出すべきインクの量に応じて、複数種類の駆動信号を出力可能である。
【０１８１】
また、ＡＳＩＣ２３５には、ディスプレイ１７と、操作パネル２２とが接続されている。
【０１８２】
さらに、ＡＳＩＣ２３５には、接点１５２と、カバーセンサ８８と、装着センサ１５４と、液面センサ１５５とが電気的に接続されている。コントローラ２３０は、装着ケース７１に装着されたインクカートリッジ５０のＩＣチップ６６のメモリに、接点１５２を通じてアクセスする。コントローラ２３０は、カバー４８の位置をカバーセンサ８８を通じて検出する。また、コントローラ２３０は、装着センサ１５４の検出信号に基づいて、装着ケース７１に装着されたインクカートリッジ５０を検出する。さらに、コントローラ２３０は、第２貯留室１０５内のインクの液面が境界位置Ｂ以上か否かを液面センサ１５５を通じて検出する。
【０１８３】
ＥＥＰＲＯＭ２３４は、装着ケース７１に装着される４つのインクカートリッジ５０それぞれに対応付けて、換言すれば、インクカートリッジ５０と連通されるサブタンク１００それぞれに対応付けて、各種情報を記憶している。各種情報とは、例えば、液体量の一例であるインク量Ｖｃ、Ｖｓと、最大インク量Ｖｃ０と、高さＨｃ、Ｈｓと、流路抵抗Ｒｎと、関数Ｆｃ、Ｆｓと、Ｃ＿Ｅｍｐｔｙフラグと、Ｓ＿Ｅｍｐｔｙフラグと、カウント値Ｎと、容積Ｖｔｈとを含む。
【０１８４】
なお、最大インク量Ｖｃ０、インク量Ｖｃ、高さＨｃ、及び関数Ｆｃは、インクカートリッジ５０が装着ケース７１に装着された状態で、接点１５２を通じてＩＣチップ６６のメモリからコントローラ２３０によって読み出される情報である。また、流路抵抗Ｒｎ及び関数Ｆｓは、ＥＥＰＲＯＭ２３４に代えて、ＲＯＭ２３２に記憶されていてもよい。
【０１８５】
インク量Ｖｃは、インクカートリッジ５０の第１貯留室５３に貯留されているインクの量を示す。インク量Ｖｓは、サブタンク１００の第２貯留室１０５に貯留されているインクの量を示す。インク量Ｖｃ、Ｖｓは、例えば、後述する式３、４によって算出される。
【０１８６】
高さＨｃは、インクカートリッジ５０に貯留されているインクの液面と基準位置との上下方向の高さを示す。一例として、基準位置は、仮想線Ｌと同じ位置である。また、基準位置は、境界位置Ｂと同じ位置でもよい。高さＨｓは、サブタンク１００に貯留されているインクの液面と第２貯留室１０５の底面との上下方向の高さを示す。高さＨｃ、Ｈｓは、例えば、式５、６によって算出される。
【０１８７】
流路抵抗Ｒｎは、液体流路１０３の内部空間を通過するインクが受ける抵抗の大きさを示す。
【０１８８】
関数Ｆｃは、インク量Ｖｃ及び高さＨｃの対応関係を示す情報である。インクカートリッジ５０の第１貯留室５３の水平断面積Ｄｃが上下方向７において変化する場合、関数Ｆｃは、インク量Ｖｃ及び高さＨｃを変数として、インクカートリッジ５０の設計時に予め決定される。一方、上下方向７における水平断面積Ｄｃが一定の場合、関数Ｆｃ＝Ｖｃ／Ｄｃとなる。第１対応情報は、関数の形式に限定されず、対応するインク量Ｖｃ及び高さＨｃの複数のセットを含むテーブルの形式であってもよい。
【０１８９】
関数Ｆｓは、インク量Ｖｓ及び高さＨｓの対応関係を示す情報である。サブタンク１００の第２貯留室１０５の水平断面積Ｄｓが上下方向７において変化する場合、関数Ｆｓは、インク量Ｖｓ及び高さＨｓを変数として、サブタンク１００の設計時に予め決定される。一方、上下方向７における水平断面積Ｄｓが一定の場合、関数Ｆｓ＝Ｖｓ／Ｄｓとなる。なお、第２対応情報は、関数の形式に限定されず、対応するインク量Ｖｃ及び高さＨｃの複数のセットを含むテーブルの形式であってもよい。
【０１９０】
カウント値Ｎは、液面センサ１５５から出力される信号がローレベル信号からハイレベル信号に変化した後に、記録ヘッド３９に排出を指示したインク排出量Ｄｈ（すなわち、駆動信号で示されるインク量）に相当する値で、閾値Ｎｔｈに近づく向きに更新される値である。カウント値Ｎは、初期値を“０”としてカウントアップされる値である。また、閾値Ｎｔｈは、連通口１２９の直上と境界位置Ｂとの間の第２貯留室１０５の容積に相当する。但し、カウント値Ｎは、この容積に相当する値を初期値として、カウントダウンされる値でもよい。この場合の閾値Ｎｔｈは、０となる。
【０１９１】
インクカートリッジ５０の第１貯留室５３内にサブタンク１００へ流出可能なインクがあるとき、サブタンク１００の第２貯留室１０５内のインクの液面は、気体流路１０４の第３開口１４１を含む仮想線Ｌの位置となる。この状態が平衡状態と称される。つまり、平衡状態では、第１貯留室５３と第２貯留室１０５との間でのインクの移動が停止する。平衡状態におけるインク量Ｖｓは、第２貯留室１０５の仮想線Ｌから下方の容積Ｖｔｈである。
【０１９２】
Ｃ＿Ｅｍｐｔｙフラグは、インクカートリッジ５０がカートリッジエンプティ状態か否かを示す情報である。Ｃ＿Ｅｍｐｔｙフラグには、カートリッジエンプティ状態であることに対応する値“ＯＮ”、或いはカートリッジエンプティ状態でないことに対応する値“ＯＦＦ”が設定される。カートリッジエンプティ状態とは、インクカートリッジ５０（より詳細には、第１貯留室５３）にインクが実質的に貯留されていない状態である。換言すれば、カートリッジエンプティ状態とは、連通された第１貯留室５３から第２貯留室１０５にインクが移動しない状態である。この状態を液面センサ１５５で検出する場合、カートリッジエンプティ状態とは、当該インクカートリッジ５０に連通されたサブタンク１００の液面が境界位置Ｂ未満の状態である。
【０１９３】
Ｓ＿Ｅｍｐｔｙフラグは、サブタンク１００がインクエンプティ状態か否かを示す情報である。Ｓ＿Ｅｍｐｔｙフラグには、インクエンプティ状態であることに対応する値“ＯＮ”、或いはインクエンプティ状態でないことに対応する値“ＯＦＦ”が設定される。インクエンプティ状態とは、例えば、サブタンク１００（より詳細には、第２貯留室１０５）に貯留されたインクの液面が連通口１２９の直上の位置に達した状態である。換言すれば、インクエンプティ状態とは、カウント値Ｎが閾値Ｎｔｈ以上の状態である。インクエンプティ状態になった後に記録ヘッド３９によるインクの吐出を継続すると、ノズル４０内がインクで満たされず、空気が混入してしまう（所謂、エアイン）可能性がある。すなわち、インクエンプティ状態は、記録ヘッド３９を通じたインクの排出を禁止しなければならない状態である。
【０１９４】
［複合機１０の動作］
図１４〜図１７を参照して、本実施形態に係る複合機１０の動作を説明する。図７〜図１７に示される各処理は、コントローラ２３０のＣＰＵ２３１によって実行される。なお、以下の各処理は、ＲＯＭ２３２に記憶されているプログラムをＣＰＵ２３１が読み出して実行してもよいし、コントローラ２３０に搭載されたハードウェア回路によって実現されてもよい。また、以下の各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。
【０１９５】
［画像記録処理］
コントローラ２３０は、複合機１０に記録指示が入力されたことに応じて、図１４に示される画像記録処理を実行する。記録指示は、画像データで示される画像をシートに記録する記録処理を複合機１０に実行させるための排出指示の一例である。記録指示の取得先は特に限定されないが、例えば、記録指示に対応するユーザ操作を操作パネル２２を通じて受け付けてもよいし、不図示の通信インタフェースを通じて外部装置から受信してもよい。
【０１９６】
まず、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグそれぞれの設定値を判断する（Ｓ１１）。そして、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの少なくとも１つに“ＯＮ”が設定されていると判断したことに応じて（Ｓ１１：ＯＮ）、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させる（Ｓ１２）。Ｓ＿Ｅｍｐｔｙ報知画面は、対応するサブタンク１００がインクエンプティ状態になったことを、ユーザに報知するための画面である。Ｓ＿Ｅｍｐｔｙ報知画面は、例えば、インクエンプティ状態のサブタンク１００に貯留されているインクの色及びインク量Ｖｃ、Ｖｓを示す情報を含んでもよい。なお、ステップＳ１２において、コントローラ２３０は、４つのＣ＿Ｅｍｐｔｙフラグの少なくとも１つに“ＯＮ”が設定されていると判断したことに応じて、Ｃ＿Ｅｍｐｔｙ報知画面を、Ｓ＿Ｅｍｐｔｙ報知画面と合わせてディスプレイ１７に表示させてもよい。
【０１９７】
また、コントローラ２３０は、“ＯＮ”が設定されたＳ＿Ｅｍｐｔｙフラグに対応するインクカートリッジ５０それぞれに対して、Ｓ１３〜Ｓ１７の処理を実行する。すなわち、Ｓ１３〜Ｓ１７の処理は、４つのインクカートリッジ５０のうち、対応するＳ＿Ｅｍｐｔｙフラグに“ＯＮ”が設定されたインクカートリッジ５０それぞれに対して実行される。インクカートリッジ５０毎のＳ１３〜Ｓ１７の処理は共通するので、１つのインクカートリッジ５０に対応するＳ１３〜Ｓ１７の処理のみを説明する。
【０１９８】
まず、コントローラ２３０は、装着センサ１５４が出力する信号を取得する（Ｓ１３）。次に、コントローラ２３０は、装着センサ１５４から取得した信号がハイレベル信号及びローレベル信号のどちらであるかを判断する（Ｓ１４）。そして、コントローラ２３０は、装着センサ１５４が出力する信号が、ローレベル信号からハイレベル信号に変化し、再びハイレベル信号からローレベル信号に変化するまで（Ｓ１４：Ｎｏ）、所定の時間間隔でＳ１３、Ｓ１４の処理を繰り返し実行する。換言すれば、コントローラ２３０は、インクカートリッジ５０が装着ケース７１から抜き出され、新たにインクカートリッジ５０が装着ケース７１に装着されるまで、Ｓ１３、Ｓ１４の処理を繰り返し実行する。
【０１９９】
そして、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得したことに応じて（Ｓ１４：Ｙｅｓ）、時間の計測を開始するとともに、Ｓ１５〜Ｓ１７の処理を実行する。まず、コントローラ２３０は、接点１５２を通じてＩＣチップ６６のメモリからＣＴＧ情報を読み出し、読み出したＣＴＧ情報をＥＥＰＲＯＭ２３４に記憶させる（Ｓ１５）。
【０２００】
また、コントローラ２３０は、Ｅｍｐｔｙ報知解除処理を実行する（Ｓ１６）。Ｅｍｐｔｙ報知解除処理は、ディスプレイ１７に表示されたＣ＿Ｅｍｐｔｙ報知画面及びＳ＿Ｅｍｐｔｙ報知画面を消去する処理である。Ｅｍｐｔｙ報知解除処理の詳細は、図１７を参照して後述する
【０２０１】
また、コントローラ２３０は、Ｅｍｐｔｙ報知解除処理と並行して残量更新処理を実行する（Ｓ１７）。残量更新処理は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｃ、Ｖｓ及び高さＨｃ、Ｈｓを更新する処理である。残量更新処理の詳細は、図１５を参照して後述する。また詳細は後述するが、コントローラ２３０は、Ｅｍｐｔｙ報知解除処理及び残量更新処理と並行して、或いはＥｍｐｔｙ報知解除処理及び残量更新処理が終了したことに応じて、Ｓ１１以降の処理を再び実行する。そして、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されていることに応じて（Ｓ１１：ＯＦＦ）、現時点で４つの液面センサ１５５それぞれから出力されている信号を取得する（Ｓ１８）。さらにＳ１８において、コントローラ２３０は、液面センサ１５５から取得した信号がハイレベル信号及びローレベル信号のどちらかを示す情報を、ＲＡＭ２３３に記憶させる（Ｓ１８）。
【０２０２】
そして、コントローラ２３０は、記録指示に含まれる画像データで示される画像をシートに記録する（Ｓ１９）。より詳細には、コントローラ２３０は、給送トレイ２０上のシートを給送ローラ２５及び搬送ローラ３４に搬送させ、記録ヘッド３９にインクを吐出させ、画像が記録されたシートを排出ローラ３６に排出トレイ２１へ排出させる。すなわち、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されているときに記録ヘッド３９を通じたインクの排出を許可する。一方、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの少なくとも１つに“ＯＮ”が設定されているときに記録ヘッド３９を通じたインクの排出を禁止する。
【０２０３】
次に、コントローラ２３０は、記録指示に従ってシートに画像を記録したことに応じて、現時点で４つの液面センサ１５５それぞれから出力されている信号を取得する（Ｓ２０）。さらに、Ｓ１８と同様に、コントローラ２３０は、液面センサ１５５から取得した信号がハイレベル信号及びローレベル信号のどちらかを示す情報を、ＲＡＭ２３３に記憶させる（Ｓ２０）。そして、コントローラ２３０は、カウント処理を実行する（Ｓ２１）。カウント処理は、Ｓ１８、Ｓ２０で液面センサ１５５から取得した信号に基づいて、カウント値Ｎ、Ｃ＿Ｅｍｐｔｙフラグ、及びＳ＿Ｅｍｐｔｙフラグを更新する処理である。カウント処理の詳細は、図１６を参照して後述する。
【０２０４】
次に、コントローラ２３０は、記録指示で示された全ての画像をシートに記録するまで（Ｓ２２：Ｙｅｓ）、Ｓ１１〜Ｓ２１の処理を繰り返し実行する。そして、コントローラ２３０は、記録指示で示される全ての画像をシートに記録したことに応じて（Ｓ２２：Ｎｏ）、４つのＳ＿Ｅｍｐｔｙフラグそれぞれの設定値及び４つのＣ＿Ｅｍｐｔｙフラグそれぞれの設定値を判断する（Ｓ２３、Ｓ２４）。
【０２０５】
コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの少なくとも１つに“ＯＮ”が設定されていることに応じて（Ｓ２３：ＯＮ）、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させる（Ｓ２５）。また、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されており、且つ４つのＣ＿Ｅｍｐｔｙフラグの少なくとも１つに“ＯＮ”が設定されていることに応じて（Ｓ２３：ＯＦＦ＆Ｓ２４：ＯＮ）、Ｃ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させる（Ｓ２６）。Ｓ２５、Ｓ２６の処理は、報知機を作動させることの一例である。
【０２０６】
Ｓ２５で表示されるＳ＿Ｅｍｐｔｙ報知画面は、Ｓ１２と同様であってもよい。また、Ｃ＿Ｅｍｐｔｙ報知画面は、”ＯＮ”が設定されたＣ＿Ｅｍｐｔｙフラグに対応するインクカートリッジ５０がカートリッジエンプティ状態になったことを、ユーザに報知するための画面である。Ｃ＿Ｅｍｐｔｙ報知画面は、例えば、カートリッジエンプティ状態のインクカートリッジ５０に貯留されているインクの色及びインク量Ｖｃ、Ｖｓを示す情報を含んでもよい。一方、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグ及び４つのＣ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されていることに応じて（Ｓ２４：ＯＦＦ）、Ｓ２５、Ｓ２６の処理を実行せずに、画像記録処理を終了する。
【０２０７】
なお、排出指示の具体例は記録指示に限定されず、ノズル４０のメンテナンスを指示するメンテナンス指示等であってもよい。コントローラ２３０は、例えばメンテナンス指示を取得したことに応じて、図１４と同様の処理を実行する。メンテナンス指示を取得した場合の前述の処理との相違点は、以下の通りである。まず、コントローラ２３０は、Ｓ１９において、不図示のメンテナンス機構を駆動させて、ノズル４０を通じてインクを排出させる。また、コントローラ２３０は、カウント処理を実行した後にＳ２２の処理を実行することなく、Ｓ２３以降の処理を実行する。
【０２０８】
［残量更新処理］
次に図１５を参照して、Ｓ１７でコントローラ２３０が実行する残量更新処理の詳細を説明する。なお、以下の説明では、図１８（Ａ）に示されるように、サブタンク１００内にインクが貯留されていない状態の装着ケース７１に、新品（すなわち、最大インク量Ｖｃ０のインクが貯留された）インクカートリッジ５０が装着された場合を前提とする。また、残量更新処理は、Ｓ１４で新たにインクカートリッジ５０の装着を検出した時刻ｔｋ−１から期間Δｔが経過した時刻ｔｋに実行されるものとする。すなわち、この場合の期間Δｔ＝ｔｋ−ｔｋ−１である。
【０２０９】
コントローラ２３０は、流出量Ｑａ、Ｑｃ、インク量Ｖｃ、Ｖｓ、及び高さＨｃ、Ｈｓを、下記の式１〜式６を用いて算出する（Ｓ３１、Ｓ３２）。
【０２１０】
まず、流出量Ｑａは、連通口１２９を通じて第２貯留室１０５から期間Δｔの間に流出するインクの量を示す。Ｓ１２〜Ｓ１７の実行時点で記録ヘッド３９を通じてインクが排出されていないので、インク排出量Ｄｈ（ｔｋ−１）、Ｄｈ（ｔｋ）は、いずれも０となる。すなわち、コントローラ２３０は、式１を用いて、流出量Ｑａ＝０を算出する（Ｓ３１）。
【０２１１】
【数１】
2020055164.tif 000003
【０２１２】
次に、流出量Ｑｃは液体流路１０３を通じて、期間Δｔの間に第１貯留室５３から第２貯留室１０５に流出するインクの量を示す。コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶された高さＨｃを、時刻ｔｋ−１における高さＨｃ’として読み出す。また、コントローラ２３０は、粘度ρ、流路抵抗ＲｎをＥＥＰＲＯＭ２３４から読み出す。そして、コントローラ２３０は、ＥＥＰＲＯＭ２３４から読み出した情報と、重力加速度ｇと、を式２に代入して、流出量Ｑｃを算出する（Ｓ３１）。
【０２１３】
【数２】
2020055164.tif 000004
【０２１４】
流出量Ｑｃは、式２で示されるように、高さＨｃ’が大きいほど大きくなる。また、流出量Ｑｃは、液体流路１０３の流路抵抗Ｒｎが大きいほど小さくなる。
【０２１５】
なお、第１貯留室５３から第２貯留室１０５にインクが移動すると、気体流路１０４を通じて、第２貯留室１０５から第１貯留室５３に空気が流入する。
【０２１６】
次に、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｃを、時刻ｔｋ−１におけるインク量Ｖｃ’として読み出す。そして、コントローラ２３０は、ＥＥＰＲＯＭ２３４から読み出したインク量Ｖｃ’と、直前に算出した流出量Ｑｃとを式３に代入して、時刻ｔｋにおけるインク量Ｖｃを算出する（Ｓ３２）。すなわち、コントローラ２３０は、時刻ｔｋ−１におけるインク量Ｖｃ’から、期間Δｔの間に第１貯留室５３から第２貯留室１０５に流出したインクの流出量Ｑｃを減じて、時刻ｔｋにおけるインク量Ｖｃを算出する。
【０２１７】
【数３】
2020055164.tif 000005
【０２１８】
またＳ３２において、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｓを、時刻ｔｋ−１におけるインク量Ｖｓ’として読み出す。そして、コントローラ２３０は、ＥＥＰＲＯＭ２３４から読み出したインク量Ｖｓ’と、直前に算出した流出量Ｑａ、Ｑｃとを式４に代入して、時刻ｔｋにおけるインク量Ｖｓを算出する。すなわち、コントローラ２３０は、時刻ｔｋ−１におけるインク量Ｖｓ’に、期間Δｔの間にサブタンク１００から流出したインクの流出量Ｑａを減じ、且つ期間Δｔの間に第１貯留室５３から第２貯留室１０５に流出したインクの流出量Ｑｃを加えて、時刻ｔｋにおけるインク量Ｖｓを算出する。
【０２１９】
【数４】
2020055164.tif 000006
【０２２０】
またＳ３２において、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶された関数Ｆｃを読み出す。そして、コントローラ２３０は、式５で示されるように直前に算出したインク量Ｖｃを関数Ｆｃに代入して、時刻ｔｋにおける高さＨｃを特定する。さらにＳ３２において、ＥＥＰＲＯＭ２３４から関数Ｆｓを読み出す。そして、コントローラ２３０は、式６で示されるように直前に算出したインク量Ｖｓを関数Ｆｓに代入して、時刻ｔｋにおける高さＨｓを特定する（Ｓ３２）。
【０２２１】
【数５】
2020055164.tif 000007
【０２２２】
【数６】
2020055164.tif 000008
【０２２３】
次に、コントローラ２３０は、Ｓ３２で算出したインク量Ｖｃ、Ｖｓ及び高さＨｃ、Ｈｓ（残量情報）をＥＥＰＲＯＭ２３４に記憶させる（Ｓ３３）。より詳細には、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されているインク量Ｖｃ、Ｖｓ及び高さＨｃ、Ｈｓを、直前のＳ３２で算出したインク量Ｖｃ、Ｖｓ及び高さＨｃ、Ｈｓで上書きする。また、コントローラ２３０は、Ｓ３３で算出したインク量Ｖｃ及び高さＨｃ（残量情報）を、接点１５２を通じてＩＣチップ６６のメモリに記憶させる（Ｓ３４）。より詳細には、コントローラ２３０は、ＩＣチップ６６のメモリの第２領域に記憶されているインク量Ｖｃ及び高さＨｃを、直前のＳ３３で算出したインク量Ｖｃ及び高さＨｃで上書きする。
【０２２４】
なお、コントローラ２３０は、Ｓ３４の処理に先立って、装着センサ１５４から出力されている信号を取得し、取得した信号がハイレベル信号かローレベル信号かを判断してもよい。そして、コントローラ２３０は、装着センサ１５４からハイレベル信号を取得したことに応じて、Ｓ３５の処理を実行してもよい。一方、コントローラ２３０は、装着センサ１５４からローレベル信号を取得したことに応じて、Ｓ３４の処理を実行せずに、Ｓ３５以降の処理を実行してもよい。
【０２２５】
次に、コントローラ２３０は、Ｓ３２で算出したインク量Ｖｓと、容積Ｖｔｈとを比較する（Ｓ３５）。図１８（Ｂ）に示されるように、インク量Ｖｓが容積Ｖｔｈになると、サブタンク１００の第２貯留室１０５における液面が仮想線Ｌに到達する。これにより、気体流路１０４の第３開口１４１がインクにより閉塞されて、第１貯留室５３及び第２貯留室１０５の間においてインクが移動しない。第１貯留室５３及び第２貯留室１０５の間において、実質的にインクが移動しない状態を、平衡状態とする。
【０２２６】
次に、コントローラ２３０は、インク量Ｖｓが容積Ｖｔｈ以上だと判断したことに応じて（Ｓ３５：Ｎｏ）、装着センサ１５４が出力する信号を取得する（Ｓ３６）。次に、コントローラ２３０は、装着センサ１５４から取得した信号がハイレベル信号及びローレベル信号のどちらであるかを判断する（Ｓ３７）。そして、コントローラ２３０は、装着センサ１５４が出力する信号がローレベル信号からハイレベル信号に変化するまで（Ｓ３７：Ｙｅｓ）、或いは直前にＳ３１〜Ｓ３４の処理を実行してから期間Δｔが経過するまで（Ｓ３８：Ｙｅｓ）、期間Δｔより短い所定の時間間隔でＳ３６、Ｓ３７の処理を繰り返し実行する。
【０２２７】
次に、コントローラ２３０は、装着センサ１５４の出力が変化しないうちに期間Δｔが経過したことに応じて（Ｓ３７：Ｎｏ＆Ｓ３８：Ｙｅｓ）、Ｓ３１以降の処理を再び実行する。換言すれば、コントローラ２３０は、直前にＳ３１〜Ｓ３４の処理を実行してから期間Δｔが経過するまでの間、次のＳ３１〜Ｓ３４の処理の実行を待機する。Ｓ３１〜Ｓ３８の処理が繰り返し実行されることによって、高さＨｓが仮想線Ｌに近づく。そして、コントローラ２３０は、インク量Ｖｓが容積Ｖｔｈ以上だと判断したことに応じて（Ｓ３５：Ｙｅｓ）、残量更新処理を終了する。すなわち、４つのインクカートリッジ５０それぞれに対応する残量更新処理は、別々のタイミングで終了する可能性がある。
【０２２８】
ここで、コントローラ２３０は、Ｓ３８における期間Δｔを可変にしてもよい。より詳細には、コントローラ２３０は、Ｓ３８における期間Δｔを、直前のＳ３２で算出した高さＨｃが大きいほど短くし、直前のＳ３２で算出した高さＨｃが小さいほど長くしてもよい。すなわち、コントローラ２３０は、繰り返し実行するＳ３１〜Ｓ３４の処理の間隔（換言すれば、インク量Ｖｃ、Ｖｓ及び高さＨｃ、Ｈｓの更新間隔）を、高さＨｃが大きいほど短くし、高さＨｃが小さいほど長くしてもよい。
【０２２９】
一方、コントローラ２３０は、期間Δｔが経過する前に装着センサ１５４の出力がローレベル信号からハイレベル信号に変化したと判断したことに応じて（Ｓ３８：Ｎｏ＆Ｓ３７：Ｙｅｓ）、Ｓ３１〜Ｓ３８の処理に代えて、Ｓ３９〜Ｓ４１の処理を実行する。装着センサ１５４の出力がローレベル信号からハイレベル信号に変化するのは、装着ケース７１からインクカートリッジ５０が抜かれたことに対応する。すなわち、Ｓ３１〜Ｓ３４の処理は、装着ケース７１にインクカートリッジ５０が装着されている間に繰り返し実行され、装着ケース７１からインクカートリッジ５０が抜かれたことに応じて停止される。
【０２３０】
そして、コントローラ２３０は、装着センサ１５４の出力が再びハイレベル信号からローレベル信号に変化するまで（Ｓ４０：Ｎｏ）、装着センサ１５４が出力する信号を所定の時間間隔で繰り返し取得する（Ｓ３９）。そして、コントローラ２３０は、装着センサ１５４の出力がハイレベル信号からローレベル信号に変化したことに応じて（Ｓ４０：Ｙｅｓ）、Ｓ４１の処理を実行すると共に、再びＳ３１以降の処理を実行する。Ｓ３６、Ｓ３７、Ｓ３９、Ｓ４０，Ｓ４１の処理は、図１４のＳ１３、Ｓ１４、Ｓ１５の処理に対応する。
【０２３１】
一例として、コントローラ２３０は、Ｓ１７で開始した残量更新処理が終了したことに応じて、Ｓ１１以降の処理を実行してもよい。この場合は、図１１（Ｂ）に示されるように、第２貯留室１０５の液面が仮想線Ｌに到達した状態で、記録ヘッド３９を通じたインクの排出が開始される。他の例として、コントローラ２３０は、Ｓ１７で開始した残量更新処理と並行して、Ｓ１１以降の処理を実行してもよい。この場合は、第２貯留室１０５の液面が仮想線Ｌ未満の位置にある状態で、記録ヘッド３９を通じたインクの排出が開始される。
【０２３２】
［カウント処理］
次に図１６を参照して、Ｓ２１でコントローラ２３０が実行するカウント処理の詳細を説明する。なお、コントローラ２３０は、４つのインクカートリッジ５０のそれぞれに対して、カウント処理を独立して実行する。インクカートリッジ５０毎のカウント処理は共通するので、１つのインクカートリッジ５０に対応するカウント処理のみを説明する。
【０２３３】
まず、コントローラ２３０は、Ｓ１８、Ｓ２０でＲＡＭ２３３に記憶させた液面センサ１５５の信号を示す情報を比較する（Ｓ５１）。すなわち、コントローラ２３０は、カウント処理（Ｓ２１）を実行する直前のＳ１９の処理を実行する前と後とで、４つの液面センサ１５５それぞれの信号が変化したか否かを判断する。
【０２３４】
コントローラ２３０は、Ｓ１８、Ｓ２０でＲＡＭ２３３に記憶させた情報が共にローレベル信号を示す（すなわち、Ｓ１９の処理の前後で液面センサ１５５の出力が変化していない）ことに応じて（Ｓ５１：Ｌ→Ｌ）、残量更新処理を実行する（Ｓ５２）。一方、Ｓ１７で残量更新処理が開始され且つ平衡状態になる前にＳ１９の処理が実行された場合は、Ｓ１７で開始された残量更新処理が継続して実行されているので、Ｓ５２で改めて残量更新処理を開始する必要がない。Ｓ５２における残量更新処理は、流出量Ｑａ≠０である点で前述の説明と相違する。以下、前述の説明との共通点の詳細な説明を省略し、相違点を中心に説明する。
【０２３５】
まず、コントローラ２３０は、Ｓ１９の開始時刻ｔｋ−１から終了時刻ｔｋまでのインク排出量Ｄｈを式１に代入して、流出量Ｑａを算出する（Ｓ３２）。この場合の期間Δｔは、１枚のシートに画像を記録するのに要する期間に相当する。また、この場合のインク排出量Ｄｈは、１枚のシートに吐出されるべきインクの総排出量に相当する。すなわち、コントローラ２３０は、１枚のシートの画像記録を実行する度に、Ｓ３１〜Ｓ３４の処理を実行すればよい。但し、期間Δｔ及びインク排出量Ｄｈの具体例は、これらに限定されない。
【０２３６】
他の例として、期間Δｔは、１パス分の画像の記録を実行するのに要する期間に相当する。この場合において、時刻ｔｋ−１は、１パス分の画像の記録が開始される時刻である。また、時刻ｔｋは、１パス分の画像の記録が終了した時刻である。また、インク排出量Ｄｈ（ｔｋ−１）は、Ｓ１９の開始から時刻ｔｋ−１までに排出を指示したインク量に相当する。さらに、インク排出量Ｄｈ（ｔｋ）は、Ｓ１９の開始から時刻ｔｋまでに排出を指示したインク量に相当する。すなわち、コントローラ２３０は、１パス分の画像の記録が終了する度に、Ｓ３１〜Ｓ３４の処理を実行してもよい。さらに他の例として、コントローラ２３０は、画像記録の区切りとは関係のない任意のタイミングで、Ｓ３１〜Ｓ３４の処理を実行してもよい。
【０２３７】
また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶された高さＨｃ’、粘度ρ、及び流路抵抗Ｒｎを式２に代入して、流出量Ｑｃを算出する（Ｓ３２）。
【０２３８】
図１６に戻って、コントローラ２３０は、Ｓ１８でＲＡＭ２３３に記憶させた情報がローレベル信号を示し、Ｓ２０でＲＡＭ２３３に記憶させた情報がハイレベル信号を示す（すなわち、Ｓ１９の処理の前後で液面センサ１５５の出力が変化した）ことに応じて（Ｓ５１：Ｌ→Ｈ）、Ｃ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入する（Ｓ５３）。液面センサ１５５の出力がローレベル信号からハイレベル信号に変化するのは、図１９（Ａ）に示されるように、Ｓ１９の処理中に第２貯留室１０５の液面が境界位置Ｂに達したことに対応する。そして、これ以降は、インクカートリッジ５０とサブタンク１００との間でインクが移動しない。
【０２３９】
また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｃを、予め定められた所定値（＝０）で上書きする（Ｓ５４）。同様に、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｓを、予め定められた所定値（＝容積Ｖｔｈ−インク排出量Ｄｈ）で上書きする（Ｓ５４）。残量更新処理で算出されるインク量Ｖｃ、Ｖｓは誤差を含むので、Ｓ３１〜Ｓ３４の処理の繰り返し回数が増えるほど、インク量Ｖｃ、Ｖｓに累積される誤差が大きくなる。そこで、コントローラ２３０は、液面センサ１５５の出力がローレベル信号からハイレベル信号に変化したタイミングで、インク量Ｖｃ、Ｖｓに予め定められた値を代入して、累積した誤差をリセットする。
【０２４０】
なお前述したように、インク排出量Ｄｈは、直前のＳ１９で１枚のシートに吐出されるインク量に相当する。一方、液面センサ１５５の出力が変化するのは、Ｓ１９の処理の途中である。すなわち、Ｓ５４で上書きされたインク量Ｖｓは、液面センサ１５５の出力が変化した瞬間にサブタンク１００に貯留されているインクの量とは僅かにズレを生じている。しかしながら、このズレは僅かなので、Ｓ５４で上書きしたインク量Ｖｓを、液面センサ１５５の出力が変化した時点のインク量Ｖｓとして扱うものとする。
【０２４１】
また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたカウント値Ｎに、インク排出量Ｄｈを代入する（Ｓ５５）。すなわち、コントローラ２３０は、直前のＳ１９で排出を指示したインク量に相当する値で、カウント値Ｎをカウントアップする。換言すれば、コントローラ２３０は、液面センサ１５５の出力がローレベル信号からハイレベル信号に変化したことに応じて、カウント値Ｎの更新を開始する。
【０２４２】
次に、コントローラ２３０は、Ｓ５５で更新したカウント値Ｎと、閾値Ｎｔｈとを比較する（Ｓ５６）。そして、コントローラ２３０は、Ｓ５５で更新したカウント値Ｎが閾値Ｎｔｈ未満だと判断したことに応じて（Ｓ５６：Ｎｏ）、Ｓ５７の処理を実行せずに、カウント処理を終了する。一方、コントローラ２３０は、Ｓ５５で更新したカウント値Ｎが閾値Ｎｔｈ以上だと判断したことに応じて（Ｓ５６：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入する（Ｓ５７）。そして、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”が設定されていることに応じて記録ヘッド３９を通じたインクの排出を禁止して、カウント処理を終了する。
【０２４３】
また、コントローラ２３０は、Ｓ１８、Ｓ２０でＲＡＭ２３３に記憶させた情報が共にハイレベル信号を示すことに応じて（Ｓ５１：Ｈ→Ｈ）、ＥＥＰＲＯＭ２３４に記憶されているカウント値Ｎを読み出す。そして、コントローラ２３０は、読み出したインク量Ｖｓからインク排出量Ｄｈを減算し、また、読み出したカウント値Ｎにインク排出量Ｄｈを加算して、再びＥＥＰＲＯＭ２３４に記憶させる（Ｓ５８）。次に、コントローラ２３０は、Ｓ５８で更新したカウント値Ｎを用いて、前述したＳ５６以降の処理を実行する。
【０２４４】
すなわち、コントローラ２３０は、記録ヘッド３９を通じてインクを排出させる度に、インクカートリッジ５０毎にカウント処理を実行する。例えば、１つのインクカートリッジ５０を対象として見ると、装着ケース７１に装着されてからしばらくの間は残量更新処理が実行され（Ｓ５１：Ｌ→Ｌ）、液面センサ１５５の出力が変化したタイミングでＳ５３〜Ｓ５６の処理が１回だけ実行され（Ｓ５１：Ｌ→Ｈ）、その後はサブタンク１００内のインクがなくなるまでＳ５８、Ｓ５６の処理が実行されることになる（Ｓ５１：Ｈ→Ｈ）。
【０２４５】
［Ｅｍｐｔｙ解除処理］
次に図１４、図１７を参照して、Ｓ１６でコントローラ２３０が実行するＥｍｐｔｙ解除処理の詳細を説明する。なお、コントローラ２３０は、４つのインクカートリッジ５０のそれぞれに対して、Ｓ１３〜Ｓ１７の処理を、独立して実行する。インクカートリッジ５０毎のＥｍｐｔｙ解除処理は共通するので、１つのインクカートリッジ５０に対応するＥｍｐｔｙ解除処理のみを説明する。
【０２４６】
カウント処理において、コントローラ２３０は、Ｓ５５で更新したカウント値Ｎが閾値Ｎｔｈ以上だと判断したことに応じて（Ｓ５６：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入し（Ｓ５７）、記録ヘッド３９を通じたインクの排出を禁止する。画像記録処理において、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”が設定されていると判断したことに応じて（Ｓ１１：ＯＮ）、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させる（Ｓ１２）。
【０２４７】
前述された状態（つまり、コントローラ２３０が記録ヘッド３９を通じたインクの排出を禁止し且つＳ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させている状態）において、図１９（Ｂ）に示されるように、インクカートリッジ５０は、サブタンク１００へインクが流出しない状態、すなわち、Ｖｃ＝０である。また、サブタンク１００は、インクの液面が境界位置Ｂより下方であって、連通口１２９の直上付近の位置に達している。したがって、ユーザは、エンプティになったインクカートリッジ５０を新品の或いは十分にインクが貯留されているインクカートリッジ５０に交換して、記録ヘッド３９を通じたインクの排出の禁止が解除されなければ、画像記録を行うことができない。
【０２４８】
ユーザがインクカートリッジ５０を交換している過程において、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得する（Ｓ１４：Ｙｅｓ）。具体的には、インクカートリッジ５０が装着ケース７１から抜去される過程では、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得する。次に、インクカートリッジ５０が装着ケース７１に挿入される過程では、装着センサ１５４からハイレベル信号を取得し、その後に装着センサ１５４からローレベル信号を取得する。そして、コントローラ２３０は、接点１５２を通じてＩＣチップ６６のメモリからＣＴＧ情報を読み出し、読み出したＣＴＧ情報をＥＥＰＲＯＭ２３４に記憶させる（Ｓ１５）。
【０２４９】
Ｅｍｐｔｙ解除処理において、まず、コントローラ２３０は、Ｓ１５において、接点１５２を通じてＩＣチップ６６のメモリから読み出してＥＥＰＲＯＭ２３４に記憶させたＣＴＧ情報に基づいて、流出量Ｑｃを算出する。流出量Ｑｃの算出は、Ｓ３１における算出と同様である。インクカートリッジ５０が交換された直後において、記録ヘッド３９を通じたインクの排出の禁止は解除されていないので、流出量Ｑａ＝０である。したがって、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶させた高さＨｃ、粘度ρ、流路抵抗Ｒｎ、及び重力加速度ｇと、を式２に代入して、流出量Ｑｃを算出する（Ｓ６１）。
【０２５０】
次に、コントローラ２３０は、Ｓ６１で算出した流出量Ｑｃと、閾値Ｑｔｈ１とを比較する（Ｓ６２）。閾値Ｑｔｈ１は、例えば記録ヘッド３９の、期間Δｔにおいて記録ヘッド３９を通じたインクの排出を指示可能なインクの排出量Ｄｈの最大値に相当する値でもよい。これにより、仮に、記録ヘッド３９を通じたインクの排出が許可されて、期間Δｔにおける排出量Ｄｈの最大値が画像記録において指示されたとしても、第２貯留室１０５に対する所謂エアインが防止される。閾値Ｑｔｈ１は、第１閾値の一例である。
【０２５１】
そして、コントローラ２３０は、Ｓ６１で算出した流出量Ｑｃが閾値Ｑｔｈ１以上だと判断したことに応じて（Ｓ６２：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグにそれぞれ“ＯＦＦ”を代入する（Ｓ６３）。また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されているカウント値Ｎを、ＥＥＰＲＯＭ２３４の別の記憶領域又はＩＣチップ６６のメモリに記憶させ、現在のカウント値Ｎをリセットする（Ｓ６３）。すなわち、コントローラ２３０は、カウント値Ｎを”０”に更新する。そして、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されていることに応じて、記録ヘッド３９を通じたインクの排出を許可する。そして、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙ報知画面及びＣ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去する（Ｓ６４）。
【０２５２】
続いて、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得した後（Ｓ１４）に経過した時間と、時間Ｔ２とを比較する（Ｓ６６）。例えば、時間Ｔ２は、図１８（Ｂ）に示されるように、第２貯留室１０５内のインクの液面が、連通口１２９の直上付近の位置にある状態から、交換されたインクカートリッジ５０からサブタンク１００へインクが流出することによって、仮想線Ｌに到達するのに必要な時間である。また、例えば、時間Ｔ２は、第１貯留室５３内に容積Ｖｔｈに相当するインクが貯留されているときに、容積Ｖｔｈに相当するすべてのインクが第２貯留室１０５へ流出するために要する時間であってもよい。また、例えば、時間Ｔ２は、算出された流出量Ｑｃに基づいて、容積Ｖｔｈに相当するインク量が第２貯留室１０５に流入するために要する時間として可変に算出されてもよい。
【０２５３】
そして、コントローラ２３０は、液面センサ１５５の信号を取得する（Ｓ６５）。図１８（Ｂ）に示されるように、第１貯留室５３から第２貯留室１０５へインクが流入して、第２貯留室１０５におけるインクの液面が仮想線Ｌに到達したとする。この過程において、液面センサ１５５の出力が、ハイレベル信号からローレベル信号に変化する。コントローラ２３０は、液面センサ１５５からローレベル信号を取得したことに応じて（Ｓ６５：Ｙｅｓ）、Ｅｍｐｔｙ解除処理を終了する。
【０２５４】
また、コントローラ２３０は、液面センサ１５５からローレベル信号を取得していないことに応じて（Ｓ６５：Ｎｏ）、経過した時間が時間Ｔ２を超えているか否かを判定する（Ｓ６６）。コントローラ２３０は、経過した時間が時間Ｔ２を超えていないと判定したことに応じて（Ｓ６６：Ｎｏ）、Ｓ６５へ戻る。
【０２５５】
コントローラ２３０は、経過した時間が時間Ｔ２を超えていると判定したことに応じて（Ｓ６６：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグにそれぞれ“ＯＮ”を代入する（Ｓ６７）。例えば、インクカートリッジ５０のＩＣチップ６６のメモリに記憶されているインク量Ｖｃと、実際に第１貯留室５３に貯留されているインク量とが合致していないことが想定される。例えば、第１貯留室５３に殆どインクが貯留されていない場合には、経過した時間が時間Ｔ２を超えても、液面センサ１５５の出力はローレベル信号のままである。そのような場合には、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグが再び“ＯＮ”にされる。また、コントローラ２３０は、リセットしたカウント値Ｎを、ＥＥＰＲＯＭ２３４又はＩＣチップ６６のメモリに記憶させていた元のカウント値Ｎに更新する（Ｓ６７）。そして、コントローラ２３０は、ディスプレイ１７にＳ＿Ｅｍｐｔｙ報知画面及びＣ＿Ｅｍｐｔｙ報知画面を表示して（Ｓ６８）、Ｅｍｐｔｙ解除処理を終了する。
【０２５６】
また、コントローラ２３０は、Ｓ６１で算出した流出量Ｑｃが閾値Ｑｔｈ１未満だと判断したことに応じて（Ｓ６２：Ｎｏ）、Ｓ６１で算出した流出量Ｑｃと、閾値Ｑｔｈ２とを比較する（Ｓ６９）。閾値Ｑｔｈ２は、閾値Ｑｔｈ１より小さい値である。閾値Ｑｔｈ２は、第２閾値の一例である。
【０２５７】
そして、コントローラ２３０は、Ｓ６１で算出した流出量Ｑｃが閾値Ｑｔｈ２以上だと判断したことに応じて（Ｓ６９：Ｙｅｓ）、時間Ｔ１を算出する（Ｓ７０）。閾値Ｑｔｈ２は、閾値Ｑｔｈ１より小さい値である。仮に、記録ヘッド３９を通じたインクの排出が許可されて、期間Δｔにおける排出量Ｄｈの最大値が画像記録において指示されると、第２貯留室１０５に対するエアインが生じ得る。時間Ｔ１は、第１貯留室５３から第２貯留室１０５へインクが流出してインク量Ｖｓが増加するための時間である。時間Ｔ１は、時間Ｔ１経過後に期間Δｔにおける排出量Ｄｈの最大値が画像記録において指示されても所謂エアインが生じない時間である。したがって、時間Ｔ１は、算出された流出量Ｑｃが大きければ短くなり、算出された流出量Ｑｃが小さければ長くなる。
【０２５８】
続いて、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得した後（Ｓ１４）に経過した時間と、時間Ｔ１とを比較する（Ｓ７１）。そして、コントローラ２３０は、経過した時間が時間Ｔ１に到達したと判断したことに応じて（Ｓ７１：Ｙｅｓ）、Ｓ６３〜Ｓ６８の処理を実行する。また、コントローラ２３０は、経過した時間が時間Ｔ１に到達していないと判断したことに応じて（Ｓ７１：Ｎｏ）、Ｓ７１を繰り返す。
【０２５９】
また、コントローラ２３０は、Ｓ６１で算出した流出量Ｑｃが閾値Ｑｔｈ２未満だと判断したことに応じて（Ｓ６９：Ｎｏ）、液面センサ１５５の信号を取得する（Ｓ７２）。流出量Ｑｃが閾値Ｑｔｈ２未満であっても、第１貯留室５３から第２貯留室１０５へインクが流入して、第２貯留室１０５内のインクの液面が境界位置Ｂに到達すると、液面センサ１５５の出力が、ハイレベル信号からローレベル信号に変化する。したがって、コントローラ２３０は、液面センサ１５５からローレベル信号を受信したことに応じて（Ｓ７２：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグにそれぞれ“ＯＦＦ”を代入する（Ｓ７３）。また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されているカウント値Ｎをリセットする（Ｓ７３）。すなわち、コントローラ２３０は、カウント値Ｎを”０”に更新する。そして、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されていることに応じて、記録ヘッド３９を通じたインクの排出を許可する。そして、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙ報知画面及びＣ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去して（Ｓ７４）、Ｅｍｐｔｙ解除処理を終了する。
【０２６０】
また、コントローラ２３０は、液面センサ１５５からローレベル信号を受信していないことに応じて（Ｓ７２：Ｎｏ）、Ｓ１４の後の経過時間が、予め設定されたタイムアウト時間を経過したかを判定する（Ｓ７５）。タイムアウト時間は、時間Ｔ１より長い時間が設定されている。コントローラ２３０は、Ｓ１４の後の経過時間がタイムアウト時間を経過していないと判定したことに応じて（Ｓ７５：Ｎｏ）、Ｓ７２に戻る。コントローラ２３０は、Ｓ１４の後の経過時間がタイムアウト時間を経過したと判定したことに応じて（Ｓ７５：Ｙｅｓ）、Ｅｍｐｔｙ解除処理を終了する。
【０２６１】
［第１実施形態の作用効果］
上述の説明によれば、複合機１０は、Ｓ＿Ｅｍｐｔｙ報知画面がディスプレイ１７に表示された状態において、液面センサ１５５の出力が変化する前に、流出量Ｑｃと閾値Ｑｔｈ１との比較に基づいて、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去することができる。
【０２６２】
また、上述の説明によれば、複合機１０は、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去されてから、排出量Ｄｈの最大量のインクが吐出される画像記録が指示されたとしても、第２貯留室１０５においてエアインが生じることを抑制できる。これは、閾値Ｑｔｈ１が、記録ヘッド３９から期間Δｔにおける排出量Ｄｈの最大量であるためである。
【０２６３】
また、上述の説明によれば、複合機１０は、Ｓ＿Ｅｍｐｔｙ報知画面がディスプレイ１７に表示された状態において、インクカートリッジ５０の交換から時間Ｔ１を待機して、液面センサ１５５の出力が変化する前に、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去することができる。複合機１０が、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去する条件は、Ｓ６１で算出された流出量Ｑｃが閾値Ｑｔｈ１未満であり且つ閾値Ｑｔｈ２以上である。また、時間Ｔ１が流出量Ｑｃに応じて算出されることにより、時間Ｔ１を短縮することができる。
【０２６４】
また、上述の説明によれば、複合機１０は、液面センサ１５５の出力がハイレベル信号からローレベル信号となる前に、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去する。その後、インクカートリッジ５０の交換から時間Ｔ２が経過しても、液面センサ１５５の出力が変化しないときには、Ｓ＿Ｅｍｐｔｙ報知画面がディスプレイ１７に表示される。これにより、複合機１０は、仮にインクカートリッジ５０のＩＣチップ６６のメモリに書き込まれた液体量Ｖｃが正確でなく、第１貯留室５３から第２貯留室１０５へインクが殆ど流出しないときには、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に再表示させることができる。また、同様に、複合機１０は、インクカートリッジ５０の交換後に、第１貯留室５３から第２貯留室１０５へインクが殆ど流出しないときには、ＥＥＰＲＯＭ２３４又ＩＣチップ６６に記憶させたリセット前のカウント値Ｎを復帰することができる。
【０２６５】
また、上述の説明によれば、複合機１０は、Ｓ６１で算出された流出量Ｑｃが閾値Ｑｔｈ２未満であるときには、液面センサ１５５の出力が変化したことに基づいて、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去することができる。
【０２６６】
また、上述の説明によれば、複合機１０は、Ｓ＿Ｅｍｐｔｙ報知画面がディスプレイ１７に表示されると共に、記録ヘッド３９からのインクの排出が禁止されるので、第２貯留室１０５サブタンク１００に対するエアインが生ずることを抑制できる。
【０２６７】
また、上述の説明によれば、複合機１０は、記録ヘッド３９にインクを排出させたことに伴って第２貯留室１０５の液面の高さが仮想線Ｌより下降したとしても、式１〜式４に従ってインク量Ｖｃ、Ｖｓを個別に算出することができる。また、複合機１０は、式２で高さＨｃを考慮して流出量Ｑｃを算出するので、流出量Ｑｃを適切に算出することができる。その結果、インク量Ｖｃ、Ｖｓを適切に算出することができる。
【０２６８】
また、上述の説明によれば、装着ケース７１にインクカートリッジ５０が装着された時点から平衡状態になるまでの期間中において、複合機１０は、式１〜式４に従って、インク量Ｖｃ、Ｖｓを個別に算出することができる。但し、装着ケース７１からインクカートリッジ５０が抜かれるとインクの移動もなくなるので、複合機１０は、装着センサ１５４からハイレベル信号が出力されたことに応じて、インク量Ｖｓが容積Ｖｔｈ未満か否かに拘わらず、Ｓ３１〜Ｓ３４の処理を停止するのが望ましい。
【０２６９】
また、上述の説明によれば、複合機１０は、期間Δｔが経過する度にＳ３１〜Ｓ３４の処理を繰り返し実行する。その結果、平衡状態になるまでの期間中において、複合機１０は、インク量Ｖｃ、Ｖｓをリアルタイムに把握することができる。なお、流出量Ｑｃは、高さＨｃが大きいほど大きくなり、高さＨｃが小さいほど小さくなる。そこで上述の説明のように、高さＨｃに応じてＳ３１〜Ｓ３４の実行頻度を変更することによって、リアルタイムなインク量Ｖｃ、Ｖｓの把握と、コントローラ２３０の処理負荷の軽減とを両立させることができる。
【０２７０】
また、上述の説明によれば、複合機１０は、装着ケース７１にインクカートリッジ５０が装着されたタイミングで、最大インク量Ｖｃ０、粘度ρ、関数Ｆｃを、ＩＣチップ６６のメモリから読み出す。そして、複合機１０は、読み出した最大インク量Ｖｃ０、粘度ρ、関数Ｆｃを用いて、流出量Ｑａ、Ｑｃ、インク量Ｖｃ、Ｖｓ、及び高さＨｃ、Ｈｓを算出する。これにより、複合機１０は、ＣＴＧ情報がインクカートリッジ５０毎に異なる場合であっても、Ｓ３２、Ｓ３３で適切な値を算出することができる。
【０２７１】
また、上述の説明によれば、複合機１０は、Ｓ３２で算出したインク量Ｖｃ及び高さＨｃをＩＣチップ６６のメモリに書き込む。これにより、装着ケース７１から抜かれたインクカートリッジ５０が他の複合機１０に装着された場合において、当該他の複合機１０がインクカートリッジ５０に貯留されたインクの量を適切に把握することができる。但し、装着ケース７１からインクカートリッジ５０が抜かれるのは、カバー４８が開放位置に配置されている場合だけである。そこで上述の説明のように、複合機１０は、装着センサ１５４からハイレベル信号が出力されている場合にのみＩＣチップ６６のメモリのインク量Ｖｃ及び高さＨｃを更新する。これによって、ＩＣチップ６６のメモリへのアクセス回数を削減することができる。
【０２７２】
［第１実施形態の変形例］
第１実施形態では、複合機１０は、第２貯留室１０５におけるインクの液面が境界位置Ｂに到達したときにＣ＿Ｅｍｐｔｙ報知画面が報知されるように構成されている。しかし、これに限らない。例えば、複合機１０は、第２貯留室１０５におけるインクの液面が境界位置Ｂより上方、例えば仮想線Ｌ付近に到達したときにＣ＿Ｅｍｐｔｙ報知画面が報知するように構成されてもよい。
【０２７３】
また、第１実施形態では、液体流路１０３の第１開口１３１が境界位置Ｂより上方であるが、第１開口１３１は、境界位置Ｂより下方であって第２貯留室１０５の底面付近にあってもよい。この場合、第１貯留室５３に貯留されたインクと、第２貯留室１０５に貯留されたインクとが液体流路１０３によって連続する。したがって、流量Ｑｃは、第１貯留室５３に貯留されたインクの液面と、第２貯留室１０５に貯留されたインクの液面との差、すなわち水頭差に基づいて算出される。すなわち、時刻ｔｋ−１における高さＨｃ’と、高さＨｓ’と基準位置（仮想線Ｌ）との差Ｈｓｌ’の和、粘度ρ、流路抵抗Ｒｎ、及び重力加速度ｇに基づいて算出される。そして、流出量Ｑｃは、高さＨｃ’と差Ｈｓｌ’の和が大きいほど大きくなる。また、流出量Ｑｃは、液体流路１０３の流路抵抗Ｒｎが大きいほど小さくなる。
【０２７４】
また、第１実施形態の残量更新処理では、流量Ｑａ，Ｑｃが算出されているが、流量Ｑａ，Ｑｃは必ずしも算出されなくてもよい。この場合、コントローラ２３０は、装着ケース７１にインクカートリッジ５０が装着された時点から平衡状態になるまでの期間中において、インク量Ｖｃ、Ｖｓを期間Δｔ毎に算出しない。例えば、図２０に示されるように、コントローラ２３０は、Ｓ１９で記録ヘッド３９から排出されたインク排出量Ｄｈを取得する（Ｓ８１）。なお、Ｓ１６の後の残量更新処理では、インク排出量Ｄｈ＝０である。
【０２７５】
そして、コントローラ２３０は、インク量Ｖｃ，Ｖｓの合計値からインク排出量Ｄｈを差し引いて、総量Ｖｔを算出する（Ｓ８２：Ｖｔ＝（Ｖｃ＋Ｖｓ）−Ｄｈ）。コントローラ２３０は、総量Ｖｔが容積Ｖｔｈより大きければ、インク量Ｖｓを容積Ｖｔｈとし、また、インク量Ｖｃを、総量ＶｔからＶｔｈを差し引いた値（Ｖｃ＝Ｖｔ−Ｖｔｈ）とする。他方、コントローラ２３０は、総量Ｖｔが容積Ｖｔｈより小さければ、インク量Ｖｃをゼロとし、インク量Ｖｓを総量Ｖｔとする。
【０２７６】
次に、コントローラ２３０は、Ｓ８２で決定したインク量Ｖｃ、ＶｓをＥＥＰＲＯＭ２３４に記憶させる（Ｓ８３）。また、コントローラ２３０は、Ｓ８２で算出したインク量Ｖｃを、接点１５２を通じてＩＣチップ６６のメモリに記憶させる（Ｓ８４）。
【０２７７】
［第２実施形態］
以下、第２実施形態が説明される。第２実施形態における複合機１０の構成は、第１実施形態と同様なので、ここでは詳細な説明が省略される。また、複合機１０の動作における、画像記録処理（図１４）及び残量更新処理（図１５）も第１実施形態と同様である。また、第２実施形態では、装着センサ１５４が出力するハイレベル信号は第１信号の一例であり、ローレベル信号は第２信号の一例である。また、第２実施形態では、液面センサ１５５が出力するローレベル信号が第３信号の一例であり、ハイレベル信号が第４信号の一例である。以下、第２実施形態のカウント処理及びエンプティ解除処理が説明される。
【０２７８】
［カウント処理］
図２１を参照して、図１４のＳ２１でコントローラ２３０が実行するカウント処理の詳細を説明する。なお、コントローラ２３０は、４つのインクカートリッジ５０のそれぞれに対して、カウント処理を独立して実行する。インクカートリッジ５０毎のカウント処理は共通するので、１つのインクカートリッジ５０に対応するカウント処理のみを説明する。
【０２７９】
まず、コントローラ２３０は、Ｓ１８、Ｓ２０でＲＡＭ２３３に記憶させた液面センサ１５５の信号を示す情報を比較する（Ｓ９１）。すなわち、コントローラ２３０は、カウント処理（Ｓ２１）を実行する直前のＳ１９の処理を実行する前と後とで、４つの液面センサ１５５それぞれの信号が変化したか否かを判断する。
【０２８０】
コントローラ２３０は、Ｓ１８、Ｓ２０でＲＡＭ２３３に記憶させた情報が共にローレベル信号を示す（すなわち、Ｓ１９の処理の前後で液面センサ１５５の出力が変化していない）ことに応じて（Ｓ９１：Ｌ→Ｌ）、残量更新処理を実行する（Ｓ９２）。一方、Ｓ１７で残量更新処理が開始され且つ平衡状態になる前にＳ１９の処理が実行された場合は、Ｓ１７で開始された残量更新処理が継続して実行されているので、Ｓ９２で改めて残量更新処理を開始する必要がない。Ｓ９２における残量更新処理は、第１実施形態と同様である。
【０２８１】
コントローラ２３０は、Ｓ１８でＲＡＭ２３３に記憶させた情報がローレベル信号を示し、Ｓ２０でＲＡＭ２３３に記憶させた情報がハイレベル信号を示す（すなわち、Ｓ１９の処理の前後で液面センサ１５５の出力が変化した）ことに応じて（Ｓ９１：Ｌ→Ｈ）、Ｃ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入する（Ｓ９３）。液面センサ１５５の出力がローレベル信号からハイレベル信号に変化するのは、Ｓ１９の処理中に第２貯留室１０５の液面が境界位置Ｂに達したことに対応する。そして、これ以降は、インクカートリッジ５０とサブタンク１００との間でインクが移動しない。
【０２８２】
また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｃを、予め定められた所定値（＝０）で上書きする（Ｓ９４）。同様に、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｓを、予め定められた所定値（＝容積Ｖｔｈ−インク排出量Ｄｈ）で上書きする（Ｓ９４）。残量更新処理で算出されるインク量Ｖｃ、Ｖｓは誤差を含むので、Ｓ３１〜Ｓ３４の処理の繰り返し回数が増えるほど、インク量Ｖｃ、Ｖｓに累積される誤差が大きくなる。そこで、コントローラ２３０は、液面センサ１５５の出力がローレベル信号からハイレベル信号に変化したタイミングで、インク量Ｖｃ、Ｖｓに予め定められた値を代入して、累積した誤差をリセットする。
【０２８３】
また、後述されるＥｍｐｔｙ解除処理において、ディスプレイ１７にインク量Ｖｓが不定であることを示す記号「？」が表示されている場合には、コントローラ２３０は、インク量Ｖｓを所定値に上書きしたことに応じて、ディスプレイ１７から記号「？」の表示を消去する（Ｓ９５）。
【０２８４】
なお前述したように、インク排出量Ｄｈは、直前のＳ１９で１枚のシートに吐出されるインク量に相当する。一方、液面センサ１５５の出力が変化するのは、Ｓ１９の処理の途中である。すなわち、Ｓ５４で上書きされたインク量Ｖｓは、液面センサ１５５の出力が変化した瞬間にサブタンク１００に貯留されているインクの量とは僅かにズレを生じている。しかしながら、このズレは僅かなので、Ｓ９４で上書きしたインク量Ｖｓを、液面センサ１５５の出力が変化した時点のインク量Ｖｓとして扱うものとする。
【０２８５】
また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたカウント値Ｎに、インク排出量Ｄｈを代入する（Ｓ９６）。すなわち、コントローラ２３０は、直前のＳ１９で排出を指示したインク量に相当する値で、カウント値Ｎをカウントアップする。換言すれば、コントローラ２３０は、液面センサ１５５の出力がローレベル信号からハイレベル信号に変化したことに応じて、カウント値Ｎの更新を開始する。
【０２８６】
次に、コントローラ２３０は、Ｓ９６で更新したカウント値Ｎと、閾値Ｎｔｈとを比較する（Ｓ９７）。そして、コントローラ２３０は、Ｓ９６で更新したカウント値Ｎが閾値Ｎｔｈ未満だと判断したことに応じて（Ｓ９７：Ｎｏ）、Ｓ９８の処理を実行せずに、カウント処理を終了する。
【０２８７】
また、コントローラ２３０は、Ｓ１８、Ｓ２０でＲＡＭ２３３に記憶させた情報が共にハイレベル信号を示すことに応じて（Ｓ９１：Ｈ→Ｈ）、ＥＥＰＲＯＭ２３４に記憶されているカウント値Ｎを読み出す。そして、コントローラ２３０は、読み出したインク量Ｖｓからインク排出量Ｄｈを減算し、また、読み出したカウント値Ｎにインク排出量Ｄｈを加算して、再びＥＥＰＲＯＭ２３４に記憶させる（Ｓ９９）。次に、コントローラ２３０は、Ｓ９９で更新したカウント値Ｎを用いて、前述したＳ９７以降の処理を実行する。ここで、コントローラ２３０は、Ｓ９９で更新したカウント値Ｎが閾値Ｎｔｈ以上だと判断したことに応じて（Ｓ９７：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入する（Ｓ９８）。そして、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”が設定されていることに応じて記録ヘッド３９を通じたインクの排出を禁止して、カウント処理を終了する。
【０２８８】
すなわち、コントローラ２３０は、記録ヘッド３９を通じてインクを排出させる度に、インクカートリッジ５０毎にカウント処理を実行する。例えば、１つのインクカートリッジ５０を対象として見ると、装着ケース７１に装着されてからしばらくの間は残量更新処理が実行され（Ｓ９１：Ｌ→Ｌ）、液面センサ１５５の出力が変化したタイミングでＳ９３〜Ｓ９７の処理が１回だけ実行され（Ｓ９１：Ｌ→Ｈ）、その後はサブタンク１００内のインクがなくなるまでＳ９９、Ｓ９７〜Ｓ９８の処理が実行されることになる（Ｓ９１：Ｈ→Ｈ）。
【０２８９】
［Ｅｍｐｔｙ解除処理］
次に図２２を参照して、Ｓ１６でコントローラ２３０が実行するＥｍｐｔｙ解除処理の詳細を説明する。なお、コントローラ２３０は、４つのインクカートリッジ５０のそれぞれに対して、Ｓ１３〜Ｓ１７の処理を、独立して実行する。インクカートリッジ５０毎のＥｍｐｔｙ解除処理は共通するので、１つのインクカートリッジ５０に対応するＥｍｐｔｙ解除処理のみを説明する。
【０２９０】
カウント処理において、コントローラ２３０は、Ｓ９７で更新したカウント値Ｎが閾値Ｎｔｈ以上だと判断したことに応じて（Ｓ９７：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入し（Ｓ９８）、記録ヘッド３９を通じたインクの排出を禁止する。画像記録処理において、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”が設定されていると判断したことに応じて（Ｓ１１：ＯＮ）、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させる（Ｓ１２）。
【０２９１】
前述された状態（つまり、コントローラ２３０が記録ヘッド３９を通じたインクの排出を禁止し且つＳ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させている状態）において、図１９（Ｂ）に示されるように、インクカートリッジ５０は、サブタンク１００へインクが流出しない状態、すなわち、Ｖｃ＝０である。また、サブタンク１００は、インクの液面が境界位置Ｂより下方であって、連通口１２９の上端付近の位置に達している。したがって、ユーザは、エンプティになったインクカートリッジ５０を新品の或いは十分にインクが貯留されているインクカートリッジ５０に交換して、記録ヘッド３９を通じたインクの排出の禁止が解除されなければ、画像記録を行うことができない。
【０２９２】
ユーザがインクカートリッジ５０を交換している過程において、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得する（Ｓ１４：Ｙｅｓ）。具体的には、インクカートリッジ５０が装着ケース７１から抜去される過程では、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得する。次に、インクカートリッジ５０が装着ケース７１に挿入される過程では、装着センサ１５４からハイレベル信号を取得し、その後に装着センサ１５４からローレベル信号を取得する。そして、コントローラ２３０は、接点１５２を通じてＩＣチップ６６のメモリからＣＴＧ情報を読み出し、読み出したＣＴＧ情報をＥＥＰＲＯＭ２３４に記憶させる（Ｓ１５）。
【０２９３】
Ｅｍｐｔｙ解除処理において、まず、コントローラ２３０は、Ｓ１５において、接点１５２を通じてＩＣチップ６６のメモリから読み出してＥＥＰＲＯＭ２３４に記憶させたＣＴＧ情報に基づいて、流出量Ｖｃｓを算出する（Ｓ１０１）。流出量Ｖｃｓは、交換されたインクカートリッジ５０の第１貯留室５３からサブタンク１００の第２貯留室１０５へインクが流出して、平衡状態になるまでに、第１貯留室５３から第２貯留室１０５へ流出されるインクの総量である。
【０２９４】
流出量Ｖｃｓは、例えば、次のように算出される。インクカートリッジ５０が交換される前のインクカートリッジ５０の第１貯留室５３のインク量Ｖｃ、及びインクカートリッジ５０が交換される前のサブタンク１００の第２貯留室１０５のインク量Ｖｓは、前述された式３及び式４からそれぞれ算出される。仮に、インクカートリッジ５０が新品に交換されると、インクカートリッジ５０のＩＣチップ６６のメモリから最大インク量Ｖｃ０が読み出される。
【０２９５】
そして、容積Ｖｔｈと、インクカートリッジ５０が交換される直前の第２貯留室１０５のインク量Ｖｓとの差が、インクカートリッジ５０からサブタンク１００へ流出する流出量Ｖｃｓである（Ｖｃｓ＝Ｖｓ−Ｖｔｈ）。
【０２９６】
次に、コントローラ２３０は、Ｓ１０１で算出した流出量Ｖｃｓと、閾値Ｖｔｈとを比較する（Ｓ１０２）。閾値Ｖｔｈは、例えば容積Ｖｔｈと同じ値でもよい。閾値Ｖｔｈは、閾値の一例である。
【０２９７】
そして、コントローラ２３０は、Ｓ１０１で算出した流出量Ｖｃｓが閾値Ｖｔｈ以上だと判断したことに応じて（Ｓ１０２：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグにそれぞれ“ＯＦＦ”を代入する（Ｓ１０３）。また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されているカウント値Ｎを、ＥＥＰＲＯＭ２３４の別の記憶領域又はＩＣチップ６６のメモリに記憶させ、現在のカウント値Ｎをリセットする（Ｓ１０３）。すなわち、コントローラ２３０は、カウント値Ｎを”０”に更新する。そして、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されていることに応じて、記録ヘッド３９を通じたインクの排出を許可する。そして、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙ報知画面及びＣ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去する（Ｓ１０４）。
【０２９８】
続いて、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得した後（Ｓ１４）に経過した時間と、時間Ｔとを比較する（Ｓ１０５）。例えば、時間Ｔは、図１９（Ｂ）に示されるように、第２貯留室１０５におけるインクの液面が、連通口１２９の上端付近の位置にある状態から、交換されたインクカートリッジ５０からサブタンク１００へインクが流出することによって、境界位置Ｂに到達するのに必要な時間である。また、例えば、時間Ｔは、第１貯留室５３に容積Ｖｔｈに相当するインクが貯留されているときに、容積Ｖｔｈに相当するすべてのインクが第２貯留室１０５へ流出するために要する時間として設定されていてもよい。また、例えば、時間Ｔは、ＩＣチップ６６のメモリから読み出されたインク量Ｖｃに基づいて、可変に算出されてもよい。時間Ｔは、待機時間の一例である。
【０２９９】
そして、コントローラ２３０は、経過した時間が時間Ｔを超えていれば（Ｓ１０５：Ｙｅｓ）、液面センサ１５５の信号を取得する（Ｓ１０６）。図１８（Ｂ）に示されるように、第１貯留室５３から第２貯留室１０５へインクが流入して、第２貯留室１０５におけるインクの液面が仮想線Ｌに到達したとする。この過程において、液面センサ１５５の出力が、ハイレベル信号からローレベル信号に変化する。コントローラ２３０は、液面センサ１５５からローレベル信号を取得したことに応じて（Ｓ１０６：Ｙｅｓ）、Ｅｍｐｔｙ解除処理を終了する。
【０３００】
また、コントローラ２３０は、液面センサ１５５からローレベル信号を取得していないことに応じて（Ｓ１０６：Ｎｏ）、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグにそれぞれ“ＯＮ”を代入する（Ｓ１０７）。例えば、インクカートリッジ５０のＩＣチップ６６のメモリに記憶されているインク量Ｖｃと、実際に第１貯留室５３に貯留されているインク量とが合致していないとする。第１貯留室５３に殆どインクが貯留されていない場合には、経過した時間が時間Ｔを超えても、液面センサ１５５の出力はローレベル信号のままである。そのような場合には、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグが再び“ＯＮ”にされる。また、コントローラ２３０は、リセットしたカウント値Ｎを、ＥＥＰＲＯＭ２３４又はＩＣチップ６６のメモリに記憶させていた元のカウント値Ｎに更新する（Ｓ１０７）。そして、コントローラ２３０は、ディスプレイ１７にＳ＿Ｅｍｐｔｙ報知画面及びＣ＿Ｅｍｐｔｙ報知画面を表示する（Ｓ１０８）。また、コントローラ２３０は、ディスプレイ１７に、インク量Ｖｓが不定であることを表示する（Ｓ１０９）。インク量Ｖｓが不定であることは、例えば、ディスプレイ１７に表示されているインク量Ｖｓを示す表示、例えば、数値やインデックスに記号「？」を付加することである。記号「？」は、第２報知の一例である。そして、コントローラ２３０は、Ｅｍｐｔｙ解除処理を終了する。
【０３０１】
また、コントローラ２３０は、Ｓ１０１で算出した流出量Ｖｃｓが閾値Ｖｔｈ未満だと判断したことに応じて（Ｓ１０２：Ｎｏ）、ディスプレイ１７に、インク量Ｖｓが不定であることを表示する（Ｓ１１０）。すなわち、記号「？」を表示する。
【０３０２】
続いて、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得した後（Ｓ１４）に経過した時間と、時間Ｔとを比較する（Ｓ１１１）。そして、コントローラ２３０は、経過した時間が時間Ｔを超えたと判断したことに応じて（Ｓ１１１：Ｙｅｓ）、液面センサ１５５の信号を取得する（Ｓ１１２）。
【０３０３】
流出量Ｖｃｓが閾値Ｖｔｈ未満であっても、第１貯留室５３から第２貯留室１０５へインクが流入して、第２貯留室１０５におけるインクの液面が境界位置Ｂに到達すると、液面センサ１５５の出力が、ハイレベル信号からローレベル信号に変化する。したがって、コントローラ２３０は、液面センサ１５５からローレベル信号を受信したことに応じて（Ｓ１１２：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグにそれぞれ“ＯＦＦ”を代入する（Ｓ１１３）。また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されているカウント値Ｎをリセットする（Ｓ１１３）。すなわち、コントローラ２３０は、カウント値Ｎを”０”に更新する。そして、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されていることに応じて、記録ヘッド３９を通じたインクの排出を許可する。そして、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙ報知画面及びＣ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去して（Ｓ１１４）、Ｅｍｐｔｙ解除処理を終了する。
【０３０４】
［第２実施形態の作用効果］
上述の説明によれば、複合機１０は、インクカートリッジ５０が交換されてから、ＩＣチップ６６に記憶されているインク量Ｖｃに基づいて第１貯留室５３から第２貯留室１０５へ流出する流出量Ｖｃｓを算出する。そして、複合機１０は、算出した流出量Ｖｃｓが閾値Ｖｔｈ以上であることに応じて、Ｃ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去する。これにより、液面センサ１５５の出力がハイレベル信号からローレベル信号になる前に、Ｃ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去できる。
【０３０５】
上述の説明によれば、複合機１０は、Ｃ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去しており、インクカートリッジ５０が交換されてから経過した時間が時間Ｔを超えるかを判定する。そして、複合機１０は、時間Ｔを超えるまでに、液面センサ１５５の出力が変化しないことに応じて、Ｃ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に再表示する。これにより、ＩＣチップ６６のメモリに書き込まれたインク量Ｖｃが正確でなく、第１貯留室５３にインクが殆ど貯留されていない状態であり、第１貯留室５３から第２貯留室１０５へインクが殆ど流出しないときには、Ｃ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に再報知させることができる。
【０３０６】
また、上述の説明によれば、複合機１０は、時間Ｔを超えるまでに、液面センサ１５５の出力が変化しないことに応じて、インク量Ｖｓが不定であることを示す記号「？」を表示する。これにより、インク量Ｖｓが正確でないことをユーザに報知できる。
【０３０７】
また、上述の説明によれば、複合機１０は、液面センサ１５５の出力が変化したことに応じて、インク量Ｖｃ＝０に更新し、またインク量Ｖｓ＝Ｖｔｈ−Ｄｈに更新する。これにより、算出されたインク量Ｖｃ及びインク量Ｖｓが、実際に第１貯留室５３及び第２貯留室１０５にそれぞれ貯留されたインクの各量に対して誤差を含むものであったり、インク量Ｖｓが不定であったりしても、液面センサ１５５が出力する信号が変化したタイミングにおいて、誤差を含むインク量Ｖｃ及びインク量Ｖｓを修正できる。
【０３０８】
また、上述の説明によれば、複合機１０は、記録ヘッド３９にインクを排出させたことに伴って第２貯留室１０５の液面が仮想線Ｌより下降したとしても、式１〜式４に従ってインク量Ｖｃ、Ｖｓを個別に算出することができる。また、複合機１０は、式２で高さＨｃを考慮して流出量Ｑｃを算出するので、排出指示を取得した時点で平衡状態でない場合でも、流出量Ｑｃを適切に算出することができる。その結果、インク量Ｖｃ、Ｖｓを適切に算出することができる。
【０３０９】
また、上述の説明によれば、装着ケース７１にインクカートリッジ５０が装着された時点で、第２貯留室１０５の液面が仮想線Ｌより下方であるとしても、平衡状態となるまでの期間中において、複合機１０は、式１〜式４に従ってインク量Ｖｃ、Ｖｓを個別に算出することができる。但し、装着ケース７１からインクカートリッジ５０が抜かれるとインクの移動もなくなるので、複合機１０は、装着センサ１５４からハイレベル信号が出力されたことに応じて、インク量Ｖｓが容積Ｖｔｈ未満か否かに拘わらず、Ｓ３１〜Ｓ３４の処理を停止するのが望ましい。
【０３１０】
また、上述の説明によれば、複合機１０は、期間Δｔが経過する度にＳ３１〜Ｓ３４の処理を繰り返し実行する。その結果、平衡状態となるまでの期間中において、複合機１０は、インク量Ｖｃ、Ｖｓをリアルタイムに把握することができる。なお、流出量Ｑｃは、高さＨｃが大きいほど大きくなり、高さＨｃが小さいほど小さくなる。そこで上述の説明のように、高さＨｃに応じてＳ３１〜Ｓ３４の実行頻度を変更することによって、リアルタイムなインク量Ｖｃ、Ｖｓの把握と、コントローラ２３０の処理負荷の軽減とを両立させることができる。
【０３１１】
また、上述の説明によれば、複合機１０は、装着ケース７１にインクカートリッジ５０が装着されたタイミングで、最大インク量Ｖｃ０、粘度ρ、関数Ｆｃを、ＩＣチップ６６のメモリから読み出す。そして、複合機１０は、読み出した最大インク量Ｖｃ０、粘度ρ、関数Ｆｃを用いて、流出量Ｑａ、Ｑｃ、インク量Ｖｃ、Ｖｓ、及び高さＨｃ、Ｈｓを算出する。これにより、複合機１０は、ＣＴＧ情報がインクカートリッジ５０毎に異なる場合であっても、Ｓ３２、Ｓ３３で適切な値を算出することができる。
【０３１２】
また、上述の説明によれば、複合機１０は、Ｓ３２で算出したインク量Ｖｃ及び高さＨｃをＩＣチップ６６のメモリに書き込む。これにより、装着ケース７１から抜かれたインクカートリッジ５０が他の複合機１０に装着された場合において、当該他の複合機１０がインクカートリッジ５０に貯留されたインクの量を適切に把握することができる。但し、装着ケース７１からインクカートリッジ５０が抜かれるのは、カバー８７が露出位置に配置されている場合だけである。そこで上述の説明のように、複合機１０は、装着センサ１５４からハイレベル信号が出力されている場合にのみＩＣチップ６６のメモリのインク量Ｖｃ及び高さＨｃを更新する。これによって、ＩＣチップ６６のメモリへのアクセス回数を削減することができる。
【０３１３】
［第２実施形態の変形例］
上述の説明では、Ｃ＿Ｅｍｐｔｙフラグが液面センサ１５５の出力に応じて更新されるが、サブタンク１００には液面センサ１５５が設けられていなくてもよい。例えば、複合機１０は、インクカートリッジ５０の最大量Ｖｃ０からサブタンク１００に最初に流入するインク量Ｖｓが算出できる。したがって、複合機１０は、そのインク量Ｖｓから、記録ヘッド３９が排出するインク量を排出量Ｄｈをカウントダウンしてインク量Ｖｓを更新する。そして、複合機１０は、インク量Ｖｓが閾値Ｖｔｈ未満になったことに応じて、Ｃ＿Ｅｍｐｔｙフラグが”ＯＮ”に更新してもよい。
【０３１４】
また、上述の説明では、Ｓ＿Ｅｍｐｔｙ報知画面がディスプレイ１７に表示され、記録ヘッド３９を通じたインクの排出が禁止されている状態で、インクカートリッジ５０が交換される態様が説明されている。しかし、これに限らない。例えば、Ｓ＿Ｅｍｐｔｙ報知画面がディスプレイ１７に表示されておらず、記録ヘッド３９を通じたインクの排出が許可されている状態で、インクカートリッジ５０が交換されても、前述と同様の作用効果が奏される。
【０３１５】
また、上述の説明では、複合機１０は、第２貯留室１０５におけるインクの液面が境界位置Ｂに到達したときにＣ＿Ｅｍｐｔｙ報知画面が報知されるように構成されている。しかし、これに限らない。例えば、複合機１０は、第２貯留室１０５におけるインクの液面が境界位置Ｂより上方、例えば仮想線Ｌ付近に到達したときにＣ＿Ｅｍｐｔｙ報知画面が報知するように構成されてもよい。
【０３１６】
また、第２実施形態では、液体流路１０３の第１開口１３１が境界位置Ｂより上方であるが、第１開口１３１は、境界位置Ｂより下方であって第２貯留室１０５の底面付近にあってもよい。この場合、第１貯留室５３に貯留されたインクと、第２貯留室１０５に貯留されたインクとが液体流路１０３によって連続する。したがって、流量Ｑｃは、第１貯留室５３に貯留されたインクの液面と、第２貯留室１０５に貯留されたインクの液面との差、すなわち水頭差に基づいて算出される。すなわち、時刻ｔｋ−１における高さＨｃ’と、高さＨｓ’と基準位置（仮想線Ｌ）との差Ｈｓｌ’の和、粘度ρ、流路抵抗Ｒｎ、及び重力加速度ｇに基づいて算出される。そして、流出量Ｑｃは、高さＨｃ’と差Ｈｓｌ’の和が大きいほど大きくなる。また、流出量Ｑｃは、液体流路１０３の流路抵抗Ｒｎが大きいほど小さくなる。
【０３１７】
また、第２実施形態の残量更新処理では、流量Ｑａ，Ｑｃが算出されているが、流量Ｑａ，Ｑｃは必ずしも算出されなくてもよい。この場合、コントローラ２３０は、装着ケース７１にインクカートリッジ５０が装着された時点から平衡状態になるまでの期間中において、インク量Ｖｃ、Ｖｓを期間Δｔ毎に算出しない。例えば、図２０と同様の残量更新処理が実行されてもよい。
【０３１８】
［第３実施形態］
以下、第３実施形態が説明される。第３実施形態における複合機１０の構成は、第１実施形態と同様なので、ここでは詳細な説明が省略される。また、複合機１０の動作における、画像記録処理（図１４）及び残量更新処理（図１５）も第１実施形態と同様である。また、カウント処理（図２１）は第２実施形態と同様である。以下、第３実施形態のエンプティ解除処理が説明される。
【０３１９】
［Ｅｍｐｔｙ解除処理］
図２３を参照して、Ｓ１６でコントローラ２３０が実行するＥｍｐｔｙ解除処理の詳細を説明する。なお、コントローラ２３０は、４つのインクカートリッジ５０のそれぞれに対して、Ｓ１３〜Ｓ１７の処理を、独立して実行する。インクカートリッジ５０毎のＥｍｐｔｙ解除処理は共通するので、１つのインクカートリッジ５０に対応するＥｍｐｔｙ解除処理のみを説明する。
【０３２０】
カウント処理において、コントローラ２３０は、Ｓ９６で更新したカウント値Ｎが閾値Ｎｔｈ以上だと判断したことに応じて（Ｓ９７：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入し（Ｓ９８）、記録ヘッド３９を通じたインクの排出を禁止する。画像記録処理において、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”が設定されていると判断したことに応じて（Ｓ１１：ＯＮ）、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させる（Ｓ１２）。
【０３２１】
前述された状態（つまり、コントローラ２３０が記録ヘッド３９を通じたインクの排出を禁止し且つＳ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させている状態）において、図１８（Ｂ）に示されるように、インクカートリッジ５０は、サブタンク１００へインクが流出しない状態、すなわち、Ｖｃ＝０である。また、サブタンク１００は、インクの液面が境界位置Ｂより下方であって、連通口１２９の上端付近の位置に達している。したがって、ユーザは、エンプティになったインクカートリッジ５０を新品の或いは十分にインクが貯留されているインクカートリッジ５０に交換して、記録ヘッド３９を通じたインクの排出の禁止が解除されなければ、画像記録を行うことができない。
【０３２２】
ユーザがインクカートリッジ５０を交換している過程において、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得する（Ｓ１４：Ｙｅｓ）。具体的には、インクカートリッジ５０が装着ケース７１から抜去される過程では、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得する。次に、インクカートリッジ５０が装着ケース７１に挿入される過程では、装着センサ１５４からハイレベル信号を取得し、その後に装着センサ１５４からローレベル信号を取得する。そして、コントローラ２３０は、接点１５２を通じてＩＣチップ６６のメモリからＣＴＧ情報を読み出し、読み出したＣＴＧ情報をＥＥＰＲＯＭ２３４に記憶させる（Ｓ１５）。
【０３２３】
Ｅｍｐｔｙ解除処理において、まず、コントローラ２３０は、Ｓ１５において、接点１５２を通じてＩＣチップ６６のメモリから読み出してＥＥＰＲＯＭ２３４に記憶させたＣＴＧ情報に基づいて、流出量Ｖｃｓを算出する（Ｓ１２１）。流出量Ｖｃｓは、交換されたインクカートリッジ５０の第１貯留室５３からサブタンク１００の第２貯留室１０５へインクが流出して、平衡状態になるまでに、第１貯留室５３から第２貯留室１０５へ流出されるインクの総量である。
【０３２４】
流出量Ｖｃｓは、例えば、次のように算出される。インクカートリッジ５０が交換される前のインクカートリッジ５０の第１貯留室５３のインク量Ｖｃ、及びインクカートリッジ５０が交換される前の第２貯留室１０５のインク量Ｖｓは、前述された式３及び式４からそれぞれ算出される。仮に、インクカートリッジ５０が新品に交換されると、インクカートリッジ５０のＩＣチップ６６のメモリから最大インク量Ｖｃ０が読み出される。
【０３２５】
そして、容積Ｖｔｈと、インクカートリッジ５０が交換される直前の第２貯留室１０５のインク量Ｖｓとの差が、インクカートリッジ５０からサブタンク１００へ流出する流出量Ｖｃｓである（Ｖｃｓ＝Ｖｓ−Ｖｔｈ）。
【０３２６】
次に、コントローラ２３０は、Ｓ１２１で算出した流出量Ｖｃｓと、閾値Ｖｔｈとを比較する（Ｓ１２２）。閾値Ｖｔｈは、例えば容積Ｖｔｈと同じ値でもよい。閾値Ｖｔｈは、閾値の一例である。
【０３２７】
そして、コントローラ２３０は、Ｓ１２１で算出した流出量Ｖｃｓが閾値Ｖｔｈ以上だと判断したことに応じて（Ｓ１２２：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグにそれぞれ“ＯＦＦ”を代入する（Ｓ１２３）。また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されているカウント値Ｎを、ＥＥＰＲＯＭ２３４の別の記憶領域又はＩＣチップ６６のメモリに記憶させ、現在のカウント値Ｎをリセットする（Ｓ１２３）。すなわち、コントローラ２３０は、カウント値Ｎを”０”に更新する。そして、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されていることに応じて、記録ヘッド３９を通じたインクの排出を許可する。そして、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙ報知画面及びＣ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去する（Ｓ１２４）。また、コントローラ２３０は、ディスプレイ１７に、カートリッジの再交換を促す再交換画面が表示されていれば、再交換画面をディスプレイ１７から消去する（Ｓ１２４）。
【０３２８】
続いて、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得した後（Ｓ１４）に経過した時間と、時間Ｔとを比較する（Ｓ１２５）。例えば、時間Ｔは、図１９（Ｂ）に示されるように、第２貯留室１０５におけるインクの液面が、連通口１２９の上端付近の位置にある状態から、交換されたインクカートリッジ５０からサブタンク１００へインクが流出することによって、境界位置Ｂに到達するのに必要な時間である。また、例えば、時間Ｔは、第１貯留室５３に容積Ｖｔｈに相当するインクが貯留されているときに、容積Ｖｔｈに相当するすべてのインクが第２貯留室１０５へ流出するために要する時間として設定されていてもよい。また、例えば、時間Ｔは、ＩＣチップ６６のメモリから読み出されたインク量Ｖｃに基づいて、可変に算出されてもよい。時間Ｔは、待機時間の一例である。
【０３２９】
そして、コントローラ２３０は、経過した時間が時間Ｔを超えていれば（Ｓ１２５：Ｙｅｓ）、液面センサ１５５の信号を取得する（Ｓ１２６）。図１８（Ｂ）に示されるように、第１貯留室５３から第２貯留室１０５へインクが流入して、第２貯留室１０５におけるインクの液面が仮想線Ｌに到達したとする。この過程において、液面センサ１５５の出力が、ハイレベル信号からローレベル信号に変化する。コントローラ２３０は、液面センサ１５５からローレベル信号を取得したことに応じて（Ｓ１２６：Ｙｅｓ）、Ｅｍｐｔｙ解除処理を終了する。
【０３３０】
また、コントローラ２３０は、液面センサ１５５からローレベル信号を取得していないことに応じて（Ｓ１２６：Ｎｏ）、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグにそれぞれ“ＯＮ”を代入する（Ｓ１２７）。例えば、インクカートリッジ５０のＩＣチップ６６のメモリに記憶されているインク量Ｖｃと、実際に第１貯留室５３に貯留されているインク量とが合致していないとする。第１貯留室５３に殆どインクが貯留されていない場合には、経過した時間が時間Ｔを超えても、液面センサ１５５の出力はローレベル信号のままである。そのような場合には、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグが再び“ＯＮ”にされる。また、コントローラ２３０は、リセットしたカウント値Ｎを、ＥＥＰＲＯＭ２３４又はＩＣチップ６６のメモリに記憶させていた元のカウント値Ｎに更新する（Ｓ１２７）。そして、コントローラ２３０は、ディスプレイ１７にＳ＿Ｅｍｐｔｙ報知画面及びＣ＿Ｅｍｐｔｙ報知画面を表示する（Ｓ１２８）。また、コントローラ２３０は、ディスプレイ１７に、インク量Ｖｓが不定であることを表示する（Ｓ１２９）。インク量Ｖｓが不定であることは、例えば、ディスプレイ１７に表示されているインク量Ｖｓを示す表示、例えば、数値やインデックスに記号「？」を付加することである。記号「？」は、第２報知の一例である。そして、コントローラ２３０は、Ｅｍｐｔｙ解除処理を終了する。
【０３３１】
また、コントローラ２３０は、Ｓ１２１で算出した流出量Ｖｃｓが閾値Ｖｔｈ未満だと判断したことに応じて（Ｓ１２２：Ｎｏ）、ディスプレイ１７に、カートリッジの再交換を促す再交換画面を表示する（Ｓ１３０）。また、コントローラ２３０は、ディスプレイ１７に、インク量Ｖｓが不定であることを表示する（Ｓ１３１）。すなわち、記号「？」を表示する。
【０３３２】
続いて、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得した後（Ｓ１４）に経過した時間と、時間Ｔとを比較する（Ｓ１３１）。そして、コントローラ２３０は、経過した時間が時間Ｔを超えたと判断したことに応じて（Ｓ１３２：Ｙｅｓ）、液面センサ１５５の信号を取得する（Ｓ１３３）。
【０３３３】
流出量Ｖｃｓが閾値Ｖｔｈ未満であっても、第１貯留室５３から第２貯留室１０５へインクが流入して、第２貯留室１０５におけるインクの液面が境界位置Ｂに到達すると、液面センサ１５５の出力が、ハイレベル信号からローレベル信号に変化する。したがって、コントローラ２３０は、液面センサ１５５からローレベル信号を受信したことに応じて（Ｓ１３３：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグ及びＣ＿Ｅｍｐｔｙフラグにそれぞれ“ＯＦＦ”を代入する（Ｓ１３４）。また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されているカウント値Ｎをリセットする（Ｓ１３３）。すなわち、コントローラ２３０は、カウント値Ｎを”０”に更新する。そして、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されていることに応じて、記録ヘッド３９を通じたインクの排出を許可する。そして、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙ報知画面及びＣ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去して（Ｓ１３５）、Ｅｍｐｔｙ解除処理を終了する。
【０３３４】
［第３実施形態の作用効果］
上述の説明によれば、複合機１０は、インクカートリッジ５０が交換されてから、ＩＣチップ６６に記憶されているインク量Ｖｃに基づいてインクカートリッジ５０からサブタンク１００へ流出する流出量Ｖｃｓを算出する。そして、複合機１０は、算出した流出量Ｖｃｓが閾値Ｖｔｈ未満であることに応じて、インク量Ｖｓが不定であることを示す記号「？」がディスプレイ１７に表示する。これにより、インクカートリッジ５０が交換されても、液面センサ１５５の出力が変化するに十分な量のインクがインクカートリッジ５０からサブタンク１００へ流出しないときには、インク量Ｖｓが正確に算出されず不定であることをユーザに報知できる。また、複合機１０は、算出した流出量Ｖｃｓが閾値Ｖｔｈ未満であることに応じて、カートリッジの再交換を促す再交換画面をディスプレイ１７に表示する。これにより、インクカートリッジ５０が交換されても、コントローラ２３０がサブタンク１００のインクの液面が境界位置Ｂより高いと判定するに十分な量のインクがインクカートリッジ５０からサブタンク１００へ流出しないときには、カートリッジの再交換をユーザに報知できる。
【０３３５】
また、上述の説明によれば、複合機１０は、液面センサ１５５の出力がローレベル信号からハイレベル信号に変化したことに応じて、インク量Ｖｃ＝０とし、且つインク量Ｖｓ＝Ｖｔｈ−Ｄｈに更新して、ディスプレイ１７から記号「？」を消去する。仮に、算出されたインク量Ｖｃ及びインク量Ｖｓが、実際にインクカートリッジ５０及びサブタンク１００にそれぞれ貯留されたインク量に対して誤差を含むものであったとする。しかし、複合機１０は、液面センサ１５５の出力が変化したタイミングにおいて、誤差を含むインク量Ｖｃ及びインク量Ｖｓを修正して、ディスプレイ１７から記号「？」を消去する。
【０３３６】
また、上述の説明によれば、複合機１０は、インクカートリッジ５０が交換されてからの経過時間が時間Ｔに到達するまでの間に、液面センサ１５５からローレベル信号を受信したことに応じて、コントローラ２３０がＣ＿Ｅｍｐｔｈｙ報知画面をディスプレイ１７から消去する。仮に、交換されたインクカートリッジ５０のＩＣチップ６６に書き込まれたインク量Ｖｃが正確でなく、交換されたインクカートリッジ５０に十分な量のインクが貯留されている状態であるとする。そのような場合には、複合機１０は、インクカートリッジ５０からサブタンク１００へインクが流出して液面センサ１５５の出力が変化したことに応じて、Ｃ＿Ｅｍｐｔｙ報知画面をディスプレイ１７から消去する。
【０３３７】
また、上述の説明によれば、複合機１０は、記録ヘッド３９にインクを排出させたことに伴って第２貯留室１０５の液面の高さが仮想線Ｌより下降したとしても、式１〜式４に従ってインク量Ｖｃ、Ｖｓを個別に算出することができる。また、複合機１０は、式２で高さＨｃを考慮して流出量Ｑｃを算出するので、排出指示を取得した時点で第２貯留室１０５の液面が仮想線Ｌより下方にある場合でも、流出量Ｑｃを適切に算出することができる。その結果、インク量Ｖｃ、Ｖｓを適切に算出することができる。
【０３３８】
また、上述の説明によれば、装着ケース７１にインクカートリッジ５０が装着された時点で、第２貯留室１０５の液面の高さが仮想線Ｌより下方にあるとしても、第２貯留室１０５の液面が仮想線Ｌに到達するまでの期間中において、複合機１０は、式１〜式４に従ってインク量Ｖｃ、Ｖｓを個別に算出することができる。但し、装着ケース７１からインクカートリッジ５０が抜かれるとインクの移動もなくなるので、複合機１０は、装着センサ１５４からハイレベル信号が出力されたことに応じて、インク量Ｖｓが容積Ｖｔｈ未満か否かに拘わらず、Ｓ３１〜Ｓ３４の処理を停止するのが望ましい。
【０３３９】
また、上述の説明によれば、複合機１０は、期間Δｔが経過する度にＳ３１〜Ｓ３４の処理を繰り返し実行する。その結果、平衡状態となるまでの期間中において、複合機１０は、インク量Ｖｃ、Ｖｓをリアルタイムに把握することができる。なお、流出量Ｑｃは、高さＨｃが大きいほど大きくなり、高さＨｃが小さいほど小さくなる。そこで上述の説明のように、高さＨｃに応じてＳ３１〜Ｓ３４の実行頻度を変更することによって、リアルタイムなインク量Ｖｃ、Ｖｓの把握と、コントローラ２３０の処理負荷の軽減とを両立させることができる。
【０３４０】
また、上述の説明によれば、複合機１０は、装着ケース７１にインクカートリッジ５０が装着されたタイミングで、最大インク量Ｖｃ０、粘度ρ、関数Ｆｃを、ＩＣチップ６６のメモリから読み出す。そして、複合機１０は、読み出した最大インク量Ｖｃ０、粘度ρ、関数Ｆｃを用いて、流出量Ｑａ、Ｑｃ、インク量Ｖｃ、Ｖｓ、及び高さＨｃ、Ｈｓを算出する。これにより、複合機１０は、ＣＴＧ情報がインクカートリッジ５０毎に異なる場合であっても、Ｓ３２、Ｓ３３で適切な値を算出することができる。
【０３４１】
また、上述の説明によれば、複合機１０は、Ｓ３２で算出したインク量Ｖｃ及び高さＨｃをＩＣチップ６６のメモリに書き込む。これにより、装着ケース７１から抜かれたインクカートリッジ５０が他の複合機１０に装着された場合において、当該他の複合機１０がインクカートリッジ５０に貯留されたインクの量を適切に把握することができる。但し、装着ケース７１からインクカートリッジ５０が抜かれるのは、カバー８７が露出位置に配置されている場合だけである。そこで上述の説明のように、複合機１０は、装着センサ１５４からハイレベル信号が出力されている場合にのみＩＣチップ６６のメモリのインク量Ｖｃ及び高さＨｃを更新する。これによって、ＩＣチップ６６のメモリへのアクセス回数を削減することができる。
【０３４２】
［第３実施形態の変形例］
上述の説明では、算出された流出量Ｖｃｓが閾値Ｖｔｈ未満であることに応じて、コントローラ２３０は、インク量Ｖｓが不定であることを示す記号「？」、及びカートリッジの再交換を促す再交換画面をディスプレイ１７に表示する。しかし、これに限らない。例えば、記号「？」及び再交換画面がともにディスプレイ１７に表示される必要はなく、コントローラ２３０が、記号「？」及び再交換画面のいずれか一方のみをディスプレイ１７に表示することとしてもよい。また、コントローラ２３０が再交換画面のみをディスプレイ１７に表示する態様においては、サブタンク１００には液面センサ１５５が設けられていなくてもよい。例えば、インクカートリッジ５０の最大インク量Ｖｃ０からサブタンク１００に最初に流入するインク量Ｖｓが算出できる。複合機１０は、そのインク量Ｖｓから、記録ヘッド３９が排出するインク量をインク排出量Ｄｈをカウントダウンしてインク量Ｖｓを更新し、インク量Ｖｓが閾値Ｖｔｈ未満になったことに応じて、Ｃ＿Ｅｍｐｔｙフラグを”ＯＮ”に更新しもよい。
【０３４３】
また、上述の説明では、Ｓ＿Ｅｍｐｔｙ報知画面がディスプレイ１７に表示され、記録ヘッド３９を通じたインクの排出が禁止されている状態で、インクカートリッジ５０が交換される態様が説明されている。しかし、これに限らない。例えば、Ｓ＿Ｅｍｐｔｙ報知画面がディスプレイ１７に表示されておらず、記録ヘッド３９を通じたインクの排出が許可されている状態で、インクカートリッジ５０が交換されても、前述と同様の作用効果が奏される。
【０３４４】
また、上述の説明では、複合機１０は、第２貯留室１０５におけるインクの液面が境界位置Ｂに到達したときにＣ＿Ｅｍｐｔｙ報知画面が報知されるように構成されている。しかし、これに限らない。例えば、複合機１０は、第２貯留室１０５におけるインクの液面が境界位置Ｂより上方、例えば仮想線Ｌ付近に到達したときにＣ＿Ｅｍｐｔｙ報知画面が報知するように構成されてもよい。
【０３４５】
また、第３実施形態では、液体流路１０３の第１開口１３１が境界位置Ｂより上方であるが、第１開口１３１は、境界位置Ｂより下方であって第２貯留室１０５の底面付近にあってもよい。この場合、第１貯留室５３に貯留されたインクと、第２貯留室１０５に貯留されたインクとが液体流路１０３によって連続する。したがって、流量Ｑｃは、第１貯留室５３に貯留されたインクの液面と、第２貯留室１０５に貯留されたインクの液面との差、すなわち水頭差に基づいて算出される。すなわち、時刻ｔｋ−１における高さＨｃ’と、高さＨｓ’と基準位置（仮想線Ｌ）との差Ｈｓｌ’の和、粘度ρ、流路抵抗Ｒｎ、及び重力加速度ｇに基づいて算出される。そして、流出量Ｑｃは、高さＨｃ’と差Ｈｓｌ’の和が大きいほど大きくなる。また、流出量Ｑｃは、液体流路１０３の流路抵抗Ｒｎが大きいほど小さくなる。
【０３４６】
また、第３実施形態の残量更新処理では、流量Ｑａ，Ｑｃが算出されているが、流量Ｑａ，Ｑｃは必ずしも算出されなくてもよい。この場合、コントローラ２３０は、装着ケース７１にインクカートリッジ５０が装着された時点から平衡状態になるまでの期間中において、インク量Ｖｃ、Ｖｓを期間Δｔ毎に算出しない。例えば、図２０と同様の残量更新処理が実行されてもよい。
【０３４７】
［第４実施形態］
以下、第４実施形態が説明される。第４実施形態における複合機１０の構成は、第１実施形態と同様なので、ここでは詳細な説明が省略される。以下、第４実施形態に係る複合機１０の動作が説明される。
【０３４８】
［複合機１０の動作］
図２４〜図２６を参照して、第４実施形態に係る複合機１０の動作を説明する。図２４〜図２６に示される各処理は、コントローラ２３０のＣＰＵ２３１によって実行される。なお、以下の各処理は、ＲＯＭ２３２に記憶されているプログラムをＣＰＵ２３１が読み出して実行してもよいし、コントローラ２３０に搭載されたハードウェア回路によって実現されてもよい。また、以下の各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。
【０３４９】
［画像記録処理］
コントローラ２３０は、複合機１０に記録指示が入力されたことに応じて、図２４に示される画像記録処理を実行する。記録指示は、画像データで示される画像をシートに記録する記録処理を複合機１０に実行させるための排出指示の一例である。記録指示の取得先は特に限定されないが、例えば、記録指示に対応するユーザ操作を操作パネル２２を通じて受け付けてもよいし、不図示の通信インタフェースを通じて外部装置から受信してもよい。なお、液面センサ１５５からローレベル信号が出力されている状態で取得した排出指示は第１排出指示の一例であり、液面センサ１５５からハイレベル信号が出力されている状態で取得した排出指示は第２排出指示の一例である。
【０３５０】
まず、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグそれぞれの設定値を判断する（Ｓ１４１）。そして、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの少なくとも１つに“ＯＮ”が設定されていると判断したことに応じて（Ｓ１４１：ＯＮ）、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させる（Ｓ１４２）。Ｓ＿Ｅｍｐｔｙ報知画面は、対応するサブタンク１００がインクエンプティ状態になったことを、ユーザに報知するための画面である。Ｓ＿Ｅｍｐｔｙ報知画面は、例えば、インクエンプティ状態のサブタンク１００に貯留されているインクの色及びインク量Ｖｃ、Ｖｓに関連する情報を含んでもよい。
【０３５１】
また、コントローラ２３０は、“ＯＮ”が設定されたＳ＿Ｅｍｐｔｙフラグに対応するインクカートリッジ５０それぞれに対して、Ｓ１４３〜Ｓ１４７の処理を実行する。すなわち、Ｓ１４３〜Ｓ１４７の処理は、４つのインクカートリッジ５０のうち、対応するＳ＿Ｅｍｐｔｙフラグに“ＯＮ”が設定されたインクカートリッジ５０それぞれに対して実行される。インクカートリッジ５０毎のＳ１４３〜Ｓ１４７の処理は共通するので、１つのインクカートリッジ５０に対応するＳ１４３〜Ｓ１４７の処理のみを説明する。
【０３５２】
まず、コントローラ２３０は、装着センサ１５４が出力する信号を取得する（Ｓ１４３）。次に、コントローラ２３０は、装着センサ１５４から取得した信号がハイレベル信号及びローレベル信号のどちらであるかを判断する（Ｓ１４４）。そして、コントローラ２３０は、装着センサ１５４が出力する信号が、ローレベル信号からハイレベル信号に変化し、再びハイレベル信号からローレベル信号に変化するまで（Ｓ１４４：Ｎｏ）、所定の時間間隔でＳ１４３、Ｓ１４４の処理を繰り返し実行する。換言すれば、コントローラ２３０は、インクカートリッジ５０が装着ケース７１から抜き出され、新たにインクカートリッジ５０が装着ケース７１に装着されるまで、Ｓ１４３、Ｓ１４４の処理を繰り返し実行する。
【０３５３】
そして、コントローラ２３０は、装着センサ１５４からローレベル信号を取得し、その後に装着センサ１５４からハイレベル信号を取得し、さらにその後に装着センサ１５４からローレベル信号を取得したことに応じて（Ｓ１４：Ｙｅｓ）、Ｓ１４５〜Ｓ１４７の処理を実行する。まず、コントローラ２３０は、接点１５２を通じてＩＣチップ６６のメモリからＣＴＧ情報を読み出し、読み出したＣＴＧ情報をＥＥＰＲＯＭ２３４に記憶させる（Ｓ１４５）。また、コントローラ２３０は、Ｃ＿Ｅｍｐｔｙフラグに初期値“ＯＦＦ”を代入し、Ｓ＿Ｅｍｐｔｙフラグに初期値“ＯＦＦ”を代入し、カウント値Ｎに初期値“０”を代入する（Ｓ１４６）。
【０３５４】
さらに、コントローラ２３０は、残量更新処理を実行する（Ｓ１４７）。残量更新処理は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｃ、Ｖｓ及び高さＨｃ、Ｈｓを更新する処理である。残量更新処理の詳細は、図２５を参照して後述する。また詳細は後述するが、コントローラ２３０は、残量更新処理と並行して或いは残量更新処理が終了したことに応じて、Ｓ１４１以降の処理を再び実行する。そして、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されていることに応じて（Ｓ１４１：ＯＦＦ）、現時点で４つの液面センサ１５５それぞれから出力されている信号を取得する（Ｓ１４８）。さらにＳ１４８において、コントローラ２３０は、液面センサ１５５から取得した信号がハイレベル信号及びローレベル信号のどちらかを示す情報を、ＲＡＭ２３３に記憶させる。
【０３５５】
そして、コントローラ２３０は、記録指示に含まれる画像データで示される画像をシートに記録する（Ｓ１４９）。より詳細には、コントローラ２３０は、給送トレイ２０上のシートを給送ローラ２５及び搬送ローラ３４に搬送させ、記録ヘッド３９にインクを吐出させ、画像が記録されたシートを排出ローラ３６に排出トレイ２１へ排出させる。すなわち、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されているときにインクの吐出を許可する。一方、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの少なくとも１つに“ＯＮ”が設定されているときにインクの吐出を禁止する。
【０３５６】
次に、コントローラ２３０は、記録指示に従ってシートに画像を記録したことに応じて、現時点で４つの液面センサ１５５それぞれから出力されている信号を取得する（Ｓ１５０）。Ｓ１５０において、Ｓ１４８と同様に、コントローラ２３０は、液面センサ１５５から取得した信号がハイレベル信号及びローレベル信号のどちらかを示す情報を、ＲＡＭ２３３に記憶させる。そして、コントローラ２３０は、カウント処理を実行する（Ｓ１５１）。カウント処理は、Ｓ１４８、Ｓ１５０で液面センサ１５５から取得した信号に基づいて、カウント値Ｎ、Ｃ＿Ｅｍｐｔｙフラグ、及びＳ＿Ｅｍｐｔｙフラグを更新する処理である。カウント処理の詳細は、図２６を参照して後述する。
【０３５７】
次に、コントローラ２３０は、記録指示で示された全ての画像をシートに記録するまで（Ｓ１５２：Ｙｅｓ）、Ｓ１４１〜Ｓ１５１の処理を繰り返し実行する。そして、コントローラ２３０は、記録指示で示される全ての画像をシートに記録したことに応じて（Ｓ１５２：Ｎｏ）、４つのＳ＿Ｅｍｐｔｙフラグそれぞれの設定値及び４つのＣ＿Ｅｍｐｔｙフラグそれぞれの設定値を判断する（Ｓ１５３、Ｓ１５４）。
【０３５８】
コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの少なくとも１つに“ＯＮ”が設定されていることに応じて（Ｓ１５３：ＯＮ）、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させる（Ｓ１５５）。また、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されており、且つ４つのＣ＿Ｅｍｐｔｙフラグの少なくとも１つに“ＯＮ”が設定されていることに応じて（Ｓ１５３：ＯＦＦ＆Ｓ２４：ＯＮ）、Ｃ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させる（Ｓ１５６）。Ｓ１５５、Ｓ１５６の処理は、報知機を作動させることの一例である。
【０３５９】
Ｓ１５５で表示されるＳ＿Ｅｍｐｔｙ報知画面は、Ｓ１４２と同様であってもよい。また、Ｃ＿Ｅｍｐｔｙ報知画面は、“ＯＮ”が設定されたＣ＿Ｅｍｐｔｙフラグに対応するインクカートリッジ５０がカートリッジエンプティ状態になったことを、ユーザに報知するための画面である。Ｃ＿Ｅｍｐｔｙ報知画面は、例えば、カートリッジエンプティ状態のインクカートリッジ５０に貯留されているインクの色及びインク量Ｖｃ、Ｖｓに関連する情報を含んでもよい。一方、コントローラ２３０は、４つのＳ＿Ｅｍｐｔｙフラグ及び４つのＣ＿Ｅｍｐｔｙフラグの全てに“ＯＦＦ”が設定されていることに応じて（Ｓ１５４：ＯＦＦ）、Ｓ１５５、Ｓ１５６の処理を実行せずに、画像記録処理を終了する。
【０３６０】
なお、排出指示の具体例は記録指示に限定されず、ノズル４０のメンテナンスを指示するメンテナンス指示等であってもよい。コントローラ２３０は、例えばメンテナンス指示を取得したことに応じて、図２４と同様の処理を実行する。メンテナンス指示を取得した場合の前述の処理との相違点は、以下の通りである。まず、コントローラ２３０は、Ｓ１４９において、不図示のメンテナンス機構を駆動させて、ノズル４０を通じてインクを排出させる。また、コントローラ２３０は、カウント処理を実行した後にＳ１５２の処理を実行することなく、Ｓ１５３以降の処理を実行する。
【０３６１】
［残量更新処理］
次に図２５を参照して、Ｓ１４７でコントローラ２３０が実行する残量更新処理の詳細を説明する。なお、以下の説明では、図１８（Ａ）に示されるように、サブタンク１００内にインクが貯留されていない状態の装着ケース７１に、新品（すなわち、最大インク量Ｖｃ０のインクが貯留された）インクカートリッジ５０が装着された場合を前提とする。また、残量更新処理は、Ｓ１４４で新たにインクカートリッジ５０の装着を検出した時刻ｔｋ−１から期間Δｔが経過した時刻ｔｋに実行されるものとする。すなわち、この場合の期間Δｔ＝ｔｋ−ｔｋ−１である。
【０３６２】
まず、コントローラ２３０は、対応するＣ＿Ｅｍｐｔｙフラグの設定値を判断する（Ｓ１６１）。Ｓ１４７で実行される残量更新処理の開始時点では、Ｓ１４６でＣ＿Ｅｍｐｔｙフラグに“ＯＦＦ”が設定されている。次に、コントローラ２３０は、Ｃ＿Ｅｍｐｔｙフラグに“ＯＦＦ”が設定されていると判断したことに応じて（Ｓ１６１：ＯＦＦ）、流出量Ｑａ、Ｑｃ、インク量Ｖｃ、Ｖｓ、及び高さＨｃ、Ｈｓを、下記の式１〜式６を用いて算出する（Ｓ１６２、Ｓ１６３）。
【０３６３】
まず、流出量Ｑａは、流出口１７４を通じて第１貯留室５３から期間Δｔの間に流出するインクの量を示す。Ｓ１４２〜Ｓ１４７の実行時点で記録ヘッド３９を通じてインクが排出されていないので、インク排出量Ｄｈ（ｔｋ−１）、Ｄｈ（ｔｋ）は、いずれも０となる。すなわち、コントローラ２３０は、式１を用いて、流出量Ｑａ＝０を算出する（Ｓ３２）。
【０３６４】
【数７】
2020055164.tif 000009
【０３６５】
次に、流出量Ｑｃは液体流路１０３を通じて、期間Δｔの間に第１貯留室５３から第２貯留室１０５に流出するインクの量を示す。コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶された高さＨｃを、時刻ｔｋ−１における高さＨｃ’として読み出す。また、コントローラ２３０は、粘度ρ、流路抵抗ＲｎをＥＥＰＲＯＭ２３４から読み出す。そして、コントローラ２３０は、ＥＥＰＲＯＭ２３４から読み出した情報と、重力加速度ｇと、を式２に代入して、流出量Ｑｃを算出する（Ｓ３１）。
【０３６６】
【数８】
2020055164.tif 000010
【０３６７】
流出量Ｑｃは、式２で示されるように、高さＨｃ’が大きいほど大きくなる。また、流出量Ｑｃは、液体流路１０３の流路抵抗Ｒｎが大きいほど小さくなる。
【０３６８】
なお、第１貯留室５３から第２貯留室１０５にインクが移動すると、気体流路１０４を通じて、第２貯留室１０５から第１貯留室５３に空気が流入する。
【０３６９】
次に、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｃを、時刻ｔｋ−１におけるインク量Ｖｃ’として読み出す。そして、コントローラ２３０は、ＥＥＰＲＯＭ２３４から読み出したインク量Ｖｃ’と、直前に算出した流出量Ｑｃとを式３に代入して、時刻ｔｋにおけるインク量Ｖｃを算出する（Ｓ１６３）。すなわち、コントローラ２３０は、時刻ｔｋ−１におけるインク量Ｖｃ’から、期間Δｔの間に第２貯留室１０５から第１貯留室５３に流出したインクの流出量Ｑｃを減じて、時刻ｔｋにおけるインク量Ｖｃを算出する。
【０３７０】
【数９】
2020055164.tif 000011
【０３７１】
またＳ１６３において、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｓを、時刻ｔｋ−１におけるインク量Ｖｓ’として読み出す。そして、コントローラ２３０は、ＥＥＰＲＯＭ２３４から読み出したインク量Ｖｓ’と、直前に算出した流出量Ｑａ、Ｑｃとを式４に代入して、時刻ｔｋにおけるインク量Ｖｓを算出する。すなわち、コントローラ２３０は、時刻ｔｋ−１におけるインク量Ｖｓ’に、期間Δｔの間にサブタンク１００から流出したインクの流出量Ｑａを減じ、且つ期間Δｔの間に第２貯留室１０５から第１貯留室５３に流出したインクの流出量Ｑｃを加えて、時刻ｔｋにおけるインク量Ｖｓを算出する。
【０３７２】
【数１０】
2020055164.tif 000012
【０３７３】
またＳ１６３において、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶された関数Ｆｃを読み出す。そして、コントローラ２３０は、式５で示されるように直前に算出したインク量Ｖｃを関数Ｆｃに代入して、時刻ｔｋにおける高さＨｃを特定する。さらにＳ１６２において、ＥＥＰＲＯＭ２３４から関数Ｆｓを読み出す。そして、コントローラ２３０は、式６で示されるように直前に算出したインク量Ｖｓを関数Ｆｓに代入して、時刻ｔｋにおける高さＨｓを特定する（Ｓ１６２）。
【０３７４】
【数１１】
2020055164.tif 000013
【０３７５】
【数１２】
2020055164.tif 000014
【０３７６】
次に、コントローラ２３０は、Ｓ１６３で算出したインク量Ｖｃ、Ｖｓ及び高さＨｃ、ＨｓをＥＥＰＲＯＭ２３４に記憶させる（Ｓ１６４）。より詳細には、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されているインク量Ｖｃ、Ｖｓ及び高さＨｃ、Ｈｓを、直前のＳ１６３で算出したインク量Ｖｃ、Ｖｓ及び高さＨｃ、Ｈｓで上書きする。また、コントローラ２３０は、Ｓ１６３で算出したインク量Ｖｃ及び高さＨｃを、接点１５２を通じてＩＣチップ６６のメモリに記憶させる（Ｓ１６５）。より詳細には、コントローラ２３０は、ＩＣチップ６６のメモリの第２領域に記憶されているインク量Ｖｃ及び高さＨｃを、直前のＳ３３で算出したインク量Ｖｃ及び高さＨｃで上書きする。
【０３７７】
なお、コントローラ２３０は、Ｓ１６５の処理に先立って、装着センサ１５４から出力されている信号を取得し、取得した信号がハイレベル信号かローレベル信号かを判断してもよい。そして、コントローラ２３０は、装着センサ１５４からハイレベル信号を取得したことに応じて、Ｓ１６５の処理を実行してもよい。一方、コントローラ２３０は、装着センサ１５４からローレベル信号を取得したことに応じて、Ｓ１６５の処理を実行せずに、Ｓ１６６以降の処理を実行してもよい。
【０３７８】
次に、コントローラ２３０は、Ｓ１６３で算出したインク量Ｖｓと、容積Ｖｔｈ１とを比較する（Ｓ１６６）。図１８（Ｂ）に示されるように、インク量Ｖｓが容積Ｖｔｈ１になると、サブタンク１００の第２貯留室１０５における液面が仮想線Ｌに到達する。これにより、気体流路１０４の第３開口１４１がインクにより閉塞されて、第１貯留室５３及び第２貯留室１０５の間においてインクが移動しない。第１貯留室５３及び第２貯留室１０５の間において、実質的にインクが移動しない状態を、平衡状態とする。
【０３７９】
次に、コントローラ２３０は、インク量Ｖｓが容積Ｖｔｈ１未満だと判断したことに応じて（Ｓ１６６：Ｎｏ）、装着センサ１５４が出力する信号を取得する（Ｓ１６７）。次に、コントローラ２３０は、装着センサ１５４から取得した信号がハイレベル信号及びローレベル信号のどちらであるかを判断する（Ｓ１６８）。そして、コントローラ２３０は、装着センサ１５４が出力する信号がローレベル信号からハイレベル信号に変化するまで（Ｓ１６８：Ｎｏ）、或いは直前にＳ１６２〜Ｓ１６６の処理を実行してから期間Δｔが経過するまで（Ｓ１６９：Ｎｏ）、期間Δｔより短い所定の時間間隔でＳ１６７、Ｓ１６８の処理を繰り返し実行する。
【０３８０】
次に、コントローラ２３０は、装着センサ１５４の出力が変化しないうちに期間Δｔが経過したことに応じて（Ｓ１６８：Ｎｏ＆Ｓ１６９：Ｙｅｓ）、Ｓ１６１以降の処理を再び実行する。換言すれば、コントローラ２３０は、直前にＳ１６２〜Ｓ１６５の処理を実行してから期間Δｔが経過するまでの間、次のＳ１６２〜Ｓ１６５の処理の実行を待機する。Ｓ１６１〜Ｓ１６９の処理が繰り返し実行されることによって、図１８（Ｂ）に示されるように、高さＨｓが徐々に仮想線Ｌに近づく。そして、コントローラ２３０は、インク量Ｖｓが容積Ｖｔｈ１以上だと判断したことに応じて（Ｓ１６６：Ｙｅｓ）、残量更新処理を終了する。すなわち、４つのインクカートリッジ５０それぞれに対応する残量更新処理は、別々のタイミングで終了する可能性がある。
【０３８１】
ここで、コントローラ２３０は、Ｓ１６９における期間Δｔを可変にしてもよい。より詳細には、コントローラ２３０は、Ｓ１６９における期間Δｔを、直前のＳ１６３で算出した高さＨｃが大きいほど短くし、直前のＳ１６３で算出した高さＨｃが小さいほど長くしてもよい。すなわち、コントローラ２３０は、繰り返し実行するＳ１６２〜Ｓ１６５の処理の間隔（換言すれば、インク量Ｖｃ、Ｖｓ及び高さＨｃ、Ｈｓの更新間隔）を、高さＨｃが大きいほど短くし、高さＨｃが小さいほど長くしてもよい。
【０３８２】
一方、コントローラ２３０は、期間Δｔが経過する前に装着センサ１５４の出力がローレベル信号からハイレベル信号に変化したと判断したことに応じて（Ｓ１６９：Ｎｏ＆Ｓ１６８：Ｙｅｓ）、Ｓ１６１〜Ｓ１６９の処理に代えて、Ｓ１７０〜Ｓ１７３の処理を実行する。装着センサ１５４の出力がローレベル信号からハイレベル信号に変化するのは、装着ケース７１からインクカートリッジ５０が抜かれたことに対応する。すなわち、Ｓ１６２〜Ｓ１６５の処理は、装着ケース７１にインクカートリッジ５０が装着されている間に繰り返し実行され、装着ケース７１からインクカートリッジ５０が抜かれたことに応じて停止される。
【０３８３】
そして、コントローラ２３０は、装着センサ１５４の出力が再びハイレベル信号からローレベル信号に変化するまで（Ｓ１７１：Ｎｏ）、装着センサ１５４が出力する信号を所定の時間間隔で繰り返し取得する（Ｓ１７０）。そして、コントローラ２３０は、装着センサ１５４の出力がハイレベル信号からローレベル信号に変化したことに応じて（Ｓ１７１：Ｙｅｓ）、Ｓ１７２〜Ｓ１７３の処理を実行すると共に、再びＳ１６１以降の処理を実行する。Ｓ１６７、Ｓ１６８、Ｓ１７０、Ｓ１７１の処理は、図２４のＳ１４３、Ｓ１４４の処理に対応する。また、Ｓ１７２、Ｓ１７３の処理は、図２４のＳ１４５、Ｓ１４６の処理に対応する。
【０３８４】
一例として、コントローラ２３０は、Ｓ１４７で開始した残量更新処理が終了したことに応じて、Ｓ１４１以降の処理を実行してもよい。この場合は、図１８（Ｂ）に示されるように、第２液室１０５の液面が仮想線Ｌに到達した状態で、記録ヘッド３９を通じたインクの排出が開始される。他の例として、コントローラ２３０は、Ｓ１４７で開始した残量更新処理と並行して、Ｓ１４１以降の処理を実行してもよい。この場合は、第２液室１０５の液面が仮想線Ｌより下降した状態で、記録ヘッド３９を通じたインクの排出が開始される。
【０３８５】
［カウント処理］
次に図２６を参照して、Ｓ１５１でコントローラ２３０が実行するカウント処理の詳細を説明する。なお、コントローラ２３０は、４つのインクカートリッジ５０のそれぞれに対して、カウント処理を独立して実行する。インクカートリッジ５０毎のカウント処理は共通するので、１つのインクカートリッジ５０に対応するカウント処理のみを説明する。
【０３８６】
まず、コントローラ２３０は、Ｓ１４８、Ｓ１５０でＲＡＭ２３３に記憶させた液面センサ１５５の信号を示す情報を比較する（Ｓ１８１）。すなわち、コントローラ２３０は、カウント処理（Ｓ１５１）を実行する直前のＳ１４９の処理を実行する前と後とで、４つの液面センサ１５５それぞれの信号が変化したか否かを判断する。
【０３８７】
コントローラ２３０は、Ｓ１４８、Ｓ１５０でＲＡＭ２３３に記憶させた情報が共にローレベル信号を示す（すなわち、Ｓ１４９の処理の前後で液面センサ１５５の出力が変化していない）ことに応じて（Ｓ１８１：Ｌ→Ｌ）、残量更新処理を実行する（Ｓ１８２）。一方、Ｓ１４７で残量更新処理が開始され且つ平衡状態になる前にＳ１４９の処理が実行された場合は、Ｓ１４７で開始された残量更新処理が継続して実行されているので、Ｓ１８２で改めて残量更新処理を開始する必要がない。Ｓ１８２における残量更新処理は、流出量Ｑａ≠０である点で前述の説明と相違する。以下、前述の説明との共通点の詳細な説明を省略し、相違点を中心に説明する。
【０３８８】
まず、コントローラ２３０は、Ｓ１４９の開始時刻ｔｋ−１から終了時刻ｔｋまでのインク排出量Ｄｈを式１に代入して、流出量Ｑａを算出する（Ｓ１６２）。この場合の期間Δｔは、１枚のシートに画像を記録するのに要する期間に相当する。また、この場合のインク排出量Ｄｈは、１枚のシートに吐出されるべきインクの総排出量に相当する。すなわち、コントローラ２３０は、１枚のシートへの画像の記録が終了する度に、Ｓ１６２〜Ｓ１６５の処理を実行すればよい。但し、期間Δｔ及びインク排出量Ｄｈの具体例は、これらに限定されない。
【０３８９】
他の例として、期間Δｔは、１パス分の画像の記録を実行するのに要する期間に相当する。この場合において、時刻ｔｋ−１は、１パス分の画像の記録が開始される時刻である。また、時刻ｔｋは、１パス分の画像の記録が終了した時刻である。また、インク排出量Ｄｈ（ｔｋ−１）は、Ｓ１４９の開始から時刻ｔｋ−１までに排出を指示したインク量に相当する。さらに、インク排出量Ｄｈ（ｔｋ）は、Ｓ１４９の開始から時刻ｔｋまでに排出を指示したインク量に相当する。すなわち、コントローラ２３０は、１パス分の画像の記録が終了する度に、Ｓ１６２〜Ｓ１６５の処理を実行してもよい。さらに他の例として、コントローラ２３０は、画像記録の区切りとは関係のない任意のタイミングで、Ｓ１６２〜Ｓ１６５の処理を実行してもよい。
【０３９０】
また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶された高さＨｃ’、Ｈｓ’、粘度ρ、及び流路抵抗Ｒｎと、直前に算出した流出量Ｑａとを式２に代入して、流出量Ｑｃを算出する（Ｓ１６２）。
【０３９１】
コントローラ２３０は、ＥＥＰＲＯＭ２３４からインク量Ｖｓを読み出し、読み出したインク量Ｖｓと容積Ｖｔｈ２とを比較する（Ｓ１６３）。容積Ｖｔｈ２は、容積Ｖｔｈ１未満の閾値量の一例である。より詳細には、容積Ｖｔｈ２は、例えば、容積Ｖｔｈ１から吐出誤差と分注誤差の少なくとも一方或いは両方を減じた値である。吐出誤差とは、新品のインクカートリッジ５０が装着ケース７１に装着されてからインクエンプティ状態になるまでの間に、排出指示によって排出が指示されたインク量と、ノズル４０を通じて実際に排出されたインク量との差の想定値である。分注誤差とは、新品のインクカートリッジ５０の第１液室５３に実際に貯留されているインク量と、ＩＣチップ６６のメモリに記憶されている最大インク量Ｖｃ０との差の想定値である。
【０３９２】
そして、コントローラ２３０は、読み出したインク量Ｖｓが容積Ｖｔｈ２未満だと判断したことに応じて（Ｓ１８３：Ｙｅｓ）、Ｃ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入し（Ｓ１８４）、更にＳ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入して（Ｓ１８９）、カウント処理を終了する。一方、コントローラ２３０は、読み出したインク量Ｖｓが容積Ｖｔｈ２以上だと判断したことに応じて（Ｓ１８３：Ｎｏ）、Ｓ１８４、Ｓ１８９の処理を実行せずに、カウント処理を終了する。
【０３９３】
また、コントローラ２３０は、Ｓ１４８でＲＡＭ２３３に記憶させた情報がローレベル信号を示し、Ｓ１５０でＲＡＭ２３３に記憶させた情報がハイレベル信号を示す（すなわち、Ｓ１４９の処理の前後で液面センサ１５５の出力が変化した）ことに応じて（Ｓ１８１：Ｌ→Ｈ）、Ｃ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入する（Ｓ１８５）。液面センサ１５５の出力がローレベル信号からハイレベル信号に変化するのは、図１８（Ｂ）に示されるように、Ｓ１４９の処理中に第２貯留室１０５の液面が境界位置Ｂに達したことに対応する。そして、これ以降は、インクカートリッジ５０とサブタンク１００との間でインクが移動しない。そこで図２５に示されるように、コントローラ２３０は、Ｃ＿Ｅｍｐｔｙフラグに“ＯＮ”が設定されたことに応じて（Ｓ１６１：ＯＮ）、残量更新処理を終了する。
【０３９４】
また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｃを、予め定められた所定値（＝０）で上書きする（Ｓ１８６）。同様に、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｓを、予め定められた所定値（＝容積Ｖｔｈ１−インク排出量Ｄｈ）で上書きする（Ｓ１８６）。残量更新処理で算出されるインク量Ｖｃ、Ｖｓは誤差を含むので、１６３２〜Ｓ１６５の処理の繰り返し回数が増えるほど、インク量Ｖｃ、Ｖｓに累積される誤差が大きくなる。そこで、コントローラ２３０は、液面センサ１５５の出力がローレベル信号からハイレベル信号に変化したタイミングで、インク量Ｖｃ、Ｖｓに予め定められた値を代入して、累積した誤差をリセットする。
【０３９５】
なお前述したように、インク排出量Ｄｈは、直前のＳ１４９で１枚のシートに吐出されるインク量に相当する。一方、液面センサ１５５の出力が変化するのは、Ｓ１４９の処理の途中である。すなわち、Ｓ１８６で上書きされたインク量Ｖｓは、液面センサ１５５の出力が変化した瞬間にサブタンク１００に貯留されているインクの量とは僅かにズレを生じている。しかしながら、このズレは僅かなので、Ｓ１８６で上書きしたインク量Ｖｓを、液面センサ１５５の出力が変化した時点のインク量Ｖｓとして扱うものとする。
【０３９６】
また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されたカウント値Ｎに、インク排出量Ｄｈを代入する（Ｓ１８７）。すなわち、コントローラ２３０は、直前のＳ１４９で排出を指示したインク量に相当する値で、カウント値Ｎをカウントアップする。換言すれば、コントローラ２３０は、液面センサ１５５の出力がローレベル信号からハイレベル信号に変化したことに応じて、カウント値Ｎの更新を開始する。
【０３９７】
次に、コントローラ２３０は、Ｓ１８７で更新したカウント値Ｎと、閾値Ｎｔｈとを比較する（Ｓ８８）。そして、コントローラ２３０は、Ｓ１８７で更新したカウント値Ｎが閾値Ｎｔｈ未満だと判断したことに応じて（Ｓ１８８：Ｎｏ）、Ｓ１８９の処理を実行せずに、カウント処理を終了する。一方、コントローラ２３０は、Ｓ１８７で更新したカウント値Ｎが閾値Ｎｔｈ以上だと判断したことに応じて（Ｓ１８８：Ｙｅｓ）、Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”を代入して（Ｓ１８９）、カウント処理を終了する。
【０３９８】
また、コントローラ２３０は、Ｓ１４８、Ｓ１５０でＲＡＭ２３３に記憶させた情報が共にハイレベル信号を示すことに応じて（Ｓ１８１：Ｈ→Ｈ）、ＥＥＰＲＯＭ２３４に記憶されているインク量Ｖｓを読み出す。そして、コントローラ２３０は、読み出したインク量Ｖｓからインク排出量Ｄｈを減じて、再びＥＥＰＲＯＭ２３４に記憶させる（Ｓ１９０）。また、コントローラ２３０は、ＥＥＰＲＯＭ２３４に記憶されているカウント値Ｎを読み出す。そして、コントローラ２３０は、読み出したカウント値Ｎにインク排出量Ｄｈを加算して、再びＥＥＰＲＯＭ２３４に記憶させる（Ｓ１９１）。すなわち、コントローラ２３０は、直前のＳ１４９で排出を指示したインク排出量Ｄｈで、ＥＥＰＲＯＭ２３４に記憶されたインク量Ｖｓ及びカウント値Ｎを更新する。次に、コントローラ２３０は、Ｓ１９１で更新したカウント値Ｎを用いて、前述したＳ１８８以降の処理を実行する。
【０３９９】
すなわち、コントローラ２３０は、記録ヘッド３９を通じてインクを排出させる度に、インクカートリッジ５０毎にカウント処理を実行する。例えば、１つのインクカートリッジ５０を対象として見ると、装着ケース７１に装着されてからしばらくの間は残量更新処理が実行され（Ｓ１８１：Ｌ→Ｌ）、インク量Ｖｓが容積Ｖｔｈ２に達する前に液面センサ１５５の出力が変化したタイミングでＳ１８５〜Ｓ１８７の処理が１回だけ実行され（Ｓ１８３：Ｎｏ＆Ｓ１８１：Ｌ→Ｈ）、その後はサブタンク１００内のインクがなくなるまでＳ１９０〜Ｓ１９１、Ｓ１８８〜Ｓ１８９の処理が実行されることになる（Ｓ１８１：Ｈ→Ｈ）。一方、液面センサ１５５の出力が変化する前にインク量Ｖｓが容積Ｖｔｈ２に達すると（Ｓ１８１：Ｌ→Ｌ＆Ｓ１８３：Ｙｅｓ）、Ｓ１８５〜Ｓ１８７の処理が実行されずにインクエンプティ状態となり、また、Ｓ１９０〜Ｓ１９１の処理が実行されずに、Ｓ＿Ｅｍｐｔｙフラグが”ＯＮ”となる。
【０４００】
［第４実施形態の作用効果］
上記の第４実施形態に係る複合機１０において、液面センサ１５５の出力がローレベル信号からハイレベル信号に変化する前にインク量Ｖｓが容積Ｖｔｈ２未満になった場合とは、液面センサ１５５が故障していると考えることができる。また、このような課題は、第４実施形態に係る複合機１０のように、サブタンク１００にアクチュエータ１９０が配置されている場合に、交換可能なインクカートリッジ５０にアクチュエータ１９０が配置されている場合と比較して、より顕著になる。
【０４０１】
そこで上述の説明のように、複合機１０は、液面センサ１５５の出力がローレベル信号からハイレベル信号に変化する前にインク量Ｖｓが容積Ｖｔｈ２未満になったことに応じて（Ｓ１８１：Ｌ→Ｌ＆Ｓ１８３：Ｙｅｓ）、その後の記録ヘッド３９を通じたインクの排出を禁止する（Ｓ１８９）。これにより、液面センサ１５５が故障していたとしても、エアインを有効に抑制することができる。
【０４０２】
より詳細には、複合機１０は、インク量Ｖｓが容積Ｖｔｈ２未満になっても液面センサ１５５からローレベル信号が出力されていることに応じて、インク量Ｖｓが容積Ｖｔｈ２未満になった時点でインクの排出を禁止する。一方、複合機１０は、インク量Ｖｓが容積Ｖｔｈ２以上のときに液面センサ１５５の出力がローレベル信号からハイレベル信号に変化したことに応じて、カウント値Ｎが閾値Ｎｔｈに達するまでインクの排出が可能になる。
【０４０３】
そこで、例えば、カウント値Ｎの初期値及び閾値Ｎｔｈの差を、正常な液面センサ１５５がハイレベル信号を出力する際のインク量Ｖｓ（＝Ｖｔｈ１）及び容積Ｖｔｈ２の差より大きく設定すればよい。これにより、液面センサ１５５が正常に作動している場合に、液面センサ１５５が故障した場合と比較して、より多くのインクが記録ヘッド３９を通じて排出可能になる。すなわち、インクカートリッジ５０内のインクを無駄なく排出することと、エアインを抑制することとを両立させることができる。
【０４０４】
また、上述の説明によれば、複合機１０は、液面センサ１５５の出力がローレベル信号からハイレベル信号に変化する度（Ｓ１８１：Ｌ→Ｈ）に、インク量Ｖｃ、Ｖｓに所定値を代入する（Ｓ１８６、Ｓ１８７）。これにより、式３、４を用いて算出したインク量Ｖｃ、Ｖｓに累積された誤差がリセットされる。その結果、誤差の少ないインク量Ｖｃ、Ｖｓに関連する情報を、Ｓ＿Ｅｍｐｔｙ報知画面或いはＣ＿Ｅｍｐｔｙ報知画面等を通じてユーザに報知することができる。なお、インク量Ｖｃ、Ｖｓに関連するとは、例えば、インク量Ｖｃ、Ｖｓそのものでもよいし、インク量Ｖｃ、Ｖｓに相当するインクで画像を記録可能なシートの枚数の推定値でもよい。
【０４０５】
また、上述の説明によれば、複合機１０は、記録ヘッド３９にインクを排出させたことに伴って第２液室１０５の液面の高さが仮想線Ｌより下降したとしても、式１〜式４に従ってインク量Ｖｃ、Ｖｓを個別に算出することができる。また、複合機１０は、式２で高さＨｃを考慮して流出量Ｑｃを算出するので、排出指示を取得した時点で第２液室１０５の液面が仮想線Ｌより下方である場合でも、流出量Ｑｃを適切に算出することができる。その結果、インク量Ｖｃ、Ｖｓを適切に算出することができる。
【０４０６】
また、上述の説明によれば、装着ケース７１にインクカートリッジ５０が装着された時点で、平衡状態でないとしても、平衡状態となるまでの期間中において、複合機１０は、式１〜式４に従って、インク量Ｖｃ、Ｖｓを個別に算出することができる。但し、装着ケース７１からインクカートリッジ５０が抜かれるとインクの移動もなくなるので、複合機１０は、装着センサ１５４からハイレベル信号が出力されたことに応じて、インク量Ｖｓが容積ｔｈ１未満か否かに拘わらず、Ｓ１６２〜Ｓ１６５の処理を停止するのが望ましい。
【０４０７】
また、上述の説明によれば、複合機１０は、期間Δｔが経過する度にＳ１６２〜Ｓ１６５の処理を繰り返し実行する。その結果、平衡状態となるまでの期間中において、複合機１０は、インク量Ｖｃ、Ｖｓをリアルタイムに把握することができる。なお、流出量Ｑｃは、高さＨｃが大きいほど大きくなり、高さＨｃが小さいほど小さくなる。そこで上述の説明のように、高さＨｃに応じてＳ１６２〜Ｓ１６５の実行頻度を変更することによって、リアルタイムなインク量Ｖｃ、Ｖｓの把握と、コントローラ２３０の処理負荷の軽減とを両立させることができる。
【０４０８】
［第４実施形態の変形例］
なお、Ｓ５３で比較するインク量Ｖ及び閾値量の組み合わせは、前述の例に限定されない。他の例として、閾値量は、インク量Ｖｃが０になってからのインク量Ｖｓの変化量を示してもよい。すなわち、コントローラ２３０は、Ｓ３３で算出したインク量Ｖｃが０になった時のインク量Ｖｓを、基準インク量Ｖｓ０としてＥＥＰＲＯＭ２３４に記憶させる。そして、コントローラ２３０は、Ｓ５３において、直前に算出したインク量Ｖｓ及び基準インク量Ｖｓ０の差と閾値量とを比較してもよい。さらに他の例として、インク量Ｖはインク量Ｖｃ、Ｖｓの和である総量Ｖｔであり、閾値量は容積ｔｈ２であってもよい。この場合、インク量Ｖｓは算出されなくてもよい。
【０４０９】
また、上述の説明では、複合機１０は、第２貯留室１０５におけるインクの液面が境界位置Ｂに到達したときにＣ＿Ｅｍｐｔｙ報知画面が報知されるように構成されている。しかし、これに限らない。例えば、複合機１０は、第２貯留室１０５におけるインクの液面が境界位置Ｂより上方、例えば仮想線Ｌ付近に到達したときにＣ＿Ｅｍｐｔｙ報知画面が報知するように構成されてもよい。
【０４１０】
また、第４実施形態では、液体流路１０３の第１開口１３１が境界位置Ｂより上方であるが、第１開口１３１は、境界位置Ｂより下方であって第２貯留室１０５の底面付近にあってもよい。この場合、第１貯留室５３に貯留されたインクと、第２貯留室１０５に貯留されたインクとが液体流路１０３によって連続する。したがって、流量Ｑｃは、第１貯留室５３に貯留されたインクの液面と、第２貯留室１０５に貯留されたインクの液面との差、すなわち水頭差に基づいて算出される。すなわち、時刻ｔｋ−１における高さＨｃ’と、高さＨｓ’と基準位置（仮想線Ｌ）との差Ｈｓｌ’の和、粘度ρ、流路抵抗Ｒｎ、及び重力加速度ｇに基づいて算出される。そして、流出量Ｑｃは、高さＨｃ’と差Ｈｓｌ’の和が大きいほど大きくなる。また、流出量Ｑｃは、液体流路１０３の流路抵抗Ｒｎが大きいほど小さくなる。
【０４１１】
また、第３実施形態の残量更新処理では、流量Ｑａ，Ｑｃが算出されているが、流量Ｑａ，Ｑｃは必ずしも算出されなくてもよい。この場合、コントローラ２３０は、装着ケース７１にインクカートリッジ５０が装着された時点から平衡状態になるまでの期間中において、インク量Ｖｃ、Ｖｓを期間Δｔ毎に算出しない。例えば、図２０と同様の残量更新処理が実行されてもよい。
【０４１２】
［その他の変形例］
上記各実施形態では、液面センサ１５５は、第２貯留室１０５の後壁１１２にインクが接触しているか否かによって異なる反射率を有するプリズムを利用して、第２貯留室１０５におけるインクの液面を光学的に検出するためのセンサであるが、第２貯留室１０５におけるインクの液面が検出できれば、液面センサ１５５の構成は特に限定されない。例えば、第２貯留室１０５内に設けられて、第２貯留室１０５の液面が境界位置Ｂ未満であるか否かにより回動するアクチュエータの被検出部が、検出位置に位置しているか否かを液面センサ１５５が検出する構成であってもよい。また、第２貯留室１０５のインクの液面が電極によって検出される構成であってもよい。また、液面センサ１５５は、サブタンク１００の第２貯留室１０５の液面によって異なる信号を出力するものに代えて、インクカートリッジ５０の第１貯留室５３の液面によって異なる信号を出力するものであってもよい。
【０４１３】
上記各実施形態では、コントローラ２３０が、装着センサ１５４からローレベル信号を受信し、その後に装着センサ１５４からハイレベル信号を受信し、さらにその後に装着センサ１５４からローレベル信号を受信したことに応じて、Ｓ１５、Ｓ１４５に示す処理を実行した。コントローラ２３０がＳ１５，Ｓ１４５に示す処理を実行するのは、装着ケース７１内にインクカートリッジ５０が存在しない装着ケース７１内に、インクカートリッジ５０が装着されたことを契機としている。つまり、コントローラ２３０は、装着ケース７１内にインクカートリッジ５０が装着されたと判定したことに応じて、Ｓ１５，Ｓ１４５に示す処理を実行すればよい。なお、コントローラ２３０が、装着センサ１５４からローレベル信号を受信し、その後に装着センサ１５４からハイレベル信号を受信し、さらにその後に装着センサ１５４からローレベル信号を受信したことは、コントローラ２３０が、装着ケース７１内にカートリッジが装着されたと判定したことの一例である。コントローラ２３０が、装着ケース７１内にインクカートリッジ５０が装着されたと判定する、他の例を以下に説明する。
【０４１４】
例えば、コントローラ２３０が、カバーセンサ８８からハイレベル信号を受信した後にローレベル信号を受信する。そして、コントローラ２３０は、ＩＣチップ６６のメモリから識別情報を読み出して、ＥＥＰＲＯＭ２３４に記憶された交換前のインクカートリッジ５０の識別情報と比較する。ＩＣチップ６６のメモリから読み出した識別情報と、ＥＥＰＲＯＭ２３４に記憶された識別情報とが異なると判定したことに応じて、コントローラ２３０は、Ｓ１５，Ｓ１４５に示す処理を実行してもよい。つまり、「コントローラ２３０は、ＩＣチップ６６のメモリから識別情報を読み出して、ＥＥＰＲＯＭ２３４に記憶された交換前のインクカートリッジ５０の識別情報と比較する。その結果、ＩＣチップ６６のメモリから読み出した識別情報と、ＥＥＰＲＯＭ２３４に記憶された識別情報とが異なると判定した」ことが、コントローラ２３０が、装着ケース７１内にインクカートリッジ５０が装着されたと判定することの一例である。
【０４１５】
また、例えば、コントローラ２３０が、カバーセンサ８８からハイレベル信号を受信した後にローレベル信号を受信する。そして、コントローラ２３０は、ディスプレイ１７を通じてユーザに、装着ケース７１内に新たなインクカートリッジ５０の装着をしたか、を示す確認画面を表示させる。コントローラ２３０は、ディスプレイ１７に確認画面を表示させている一方で、操作パネル２２を通じて、当該確認画面に対応する、入力を受信する。受信した当該入力が、装着ケース７１内に新たなインクカートリッジ５０の装着した、ことに対応していることに応じて、コントローラ２３０は、Ｓ１５，Ｓ１４５に示す処理を実行する。つまり、「コントローラ２３０が、カバーセンサ８８からハイレベル信号を受信した後にローレベル信号を受信する。そして、コントローラ２３０は、ディスプレイ１７を通じてユーザに、装着ケース７１内に新たなインクカートリッジ５０の装着をしたか、を示す確認画面を表示させる。コントローラ２３０は、ディスプレイ１７に確認画面を表示させている一方で、操作パネル２２を通じて、当該確認画面に対応する、入力を受信する。受信した当該入力が、装着ケース７１内に新たなインクカートリッジ５０の装着した、ことに対応している」ことが、コントローラ２３０が、装着ケース７１内にインクカートリッジ５０が装着されたと判定することの一例である。
【０４１６】
また、上各記実施形態では、４つのＳ＿Ｅｍｐｔｙフラグの少なくとも１つに“ＯＮ”が設定されているときに、４つのサブタンク１００全てについて記録ヘッド３９を通じたインクの排出を禁止する例が説明された。Ｓ＿Ｅｍｐｔｙフラグに“ＯＮ”が設定されているサブタンク１００についてのみ、記録ヘッド３９を通じたインクの排出が禁止されてもよい。また、マゼンタ、シアン、及びイエローに係るＳ＿Ｅｍｐｔｙフラグの少なくとも一つに“ＯＮ”が設定され、ブラックに係るＳ＿Ｅｍｐｔｙフラグに“ＯＦＦ”が設定されている場合に、マゼンタ、シアン、及びイエローのインクの排出が禁止され、ブラックのインクの排出が許可されてもよい。
【０４１７】
また、上記各実施形態では、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙフラグが”ＯＮ”であれば、記録ヘッド３９を通じたインクの排出を禁止するが、記録ヘッド３９を通じたインクの排出は必ずしも禁止される必要はなく、コントローラ２３０は、Ｓ＿Ｅｍｐｔｙフラグが”ＯＮ”であれば、Ｓ＿Ｅｍｐｔｙ報知画面をディスプレイ１７に表示させるのみであってもよい。
【０４１８】
また、ＩＣチップ６６は、接点１５２と接触して導通されるが、これにかえて、ＮＦＣ（near field communication）やＲＦＩＤ（radio frequency identification）のような電波を用いて非接触でデータを読み書きする情報媒体とインタフェースとが採用されてもよい。
【０４１９】
また、上記各実施形態では、インクが液体の一例として説明されているが、液体は、例えば、画像記録時にインクに先立って用紙などに吐出される前処理液でもよいし、記録ヘッド３９を洗浄するための水でもよい。
【符号の説明】
【０４２０】
１０・・・複合機（液体排出装置）
１７・・・ディスプレイ（報知機）
３９・・・記録ヘッド
５３・・・第１貯留室（第１液室）
６６・・・ＩＣチップ（カートリッジメモリ）
７１・・・装着ケース
８８・・・カバーセンサ
１００・・・サブタンク
１０３・・・液体流路
１０４・・・気体流路
１０５・・・第２貯留室（第２液室）
１０６・・・大気連通口
１３１・・・第１開口
１３２・・・第２開口
１４１・・・第３開口
１４２・・・第４開口
１４７・・・大気連通路
１５２・・・接点（インタフェース）
１５４・・・装着センサ
１５５・・・液面センサ
２３０・・・コントローラ
２３４・・・ＥＥＰＲＯＭ（装置メモリ）
【図１】
2020055164.tif 000015
【図２】
2020055164.tif 000016
【図３】
2020055164.tif 000017
【図４】
2020055164.tif 000018
【図５】
2020055164.tif 000019
【図６】
2020055164.tif 000020
【図７】
2020055164.tif 000021
【図８】
2020055164.tif 000022
【図９】
2020055164.tif 000023
【図１０】
2020055164.tif 000024
【図１１】
2020055164.tif 000025
【図１２】
2020055164.tif 000026
【図１３】
2020055164.tif 000027
【図１４】
2020055164.tif 000028
【図１５】
2020055164.tif 000029
【図１６】
2020055164.tif 000030
【図１７】
2020055164.tif 000031
【図１８】
2020055164.tif 000032
【図１９】
2020055164.tif 000033
【図２０】
2020055164.tif 000034
【図２１】
2020055164.tif 000035
【図２２】
2020055164.tif 000036
【図２３】
2020055164.tif 000037
【図２４】
2020055164.tif 000038
【図２５】
2020055164.tif 000039
【図２６】
2020055164.tif 000040