(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024163511
(43)【公開日】2024-11-22
(54)【発明の名称】サーバのためのコンピュータプログラム、サーバ、及び、サーバを制御するための方法
(51)【国際特許分類】
G06F 3/12 20060101AFI20241115BHJP
B41J 29/38 20060101ALI20241115BHJP
G03G 21/00 20060101ALI20241115BHJP
【FI】
G06F3/12 335
G06F3/12 310
G06F3/12 329
G06F3/12 385
B41J29/38 204
G03G21/00 396
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023079199
(22)【出願日】2023-05-12
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000110
【氏名又は名称】弁理士法人 快友国際特許事務所
(72)【発明者】
【氏名】加藤 修平
【テーマコード(参考)】
2C061
2H270
【Fターム(参考)】
2C061AP01
2C061AQ05
2C061AQ06
2C061BB10
2C061BB11
2C061CF05
2C061CG02
2C061CQ40
2C061HH03
2C061HJ10
2C061HK03
2C061HK11
2C061HQ01
2H270KA59
2H270KA62
2H270LA60
2H270LA70
2H270LA87
2H270LA90
2H270LA97
2H270LA99
2H270LD08
2H270MF17
2H270NC02
2H270NC07
2H270NC14
2H270NC22
2H270ND13
2H270ND21
2H270ND22
2H270ND31
2H270ND33
2H270QB03
2H270RA10
2H270RC03
2H270ZD03
(57)【要約】
【課題】色材カートリッジ内の色材の残量に関連する予測処理を正確に実行し得る技術を提供すること。
【解決手段】サーバのためのコンピュータプログラムは、サーバのコンピュータを、以下の各部、即ち、複数個の残量情報を取得する取得部と、少なくともM1個の残量情報と、M1個の日時情報と、に基づいて、M2個の変化率を算出する第1の算出部と、色材カートリッジ内の色材の残量とM2個の変化率との間の推定される関係を表わす第1の推定関数を算出する第2の算出部と、特定の色材カートリッジ内の色材の残量を示す情報を含む特定の残量情報が取得される場合に、第1の推定関数と特定の残量情報とに基づいて、特定の色材カートリッジ内の色材の残量に関連する予測処理を実行して予測情報を算出する第3の算出部と、予測情報を利用した出力処理を実行する出力制御部と、として機能させてもよい。
【選択図】
図4
【特許請求の範囲】
【請求項1】
サーバのためのコンピュータプログラムであって、
前記サーバのコンピュータを、以下の各部、即ち、
複数個の残量情報を取得する取得部であって、前記複数個の残量情報のそれぞれは、1個以上のプリンタのそれぞれに装着済みの色材カートリッジ内の色材の残量を示す情報を含む、前記取得部と、
前記複数個の残量情報のうちの少なくともM1個(前記M1は2以上の整数)の残量情報と、前記M1個の残量情報のそれぞれの取得日時に関連するM1個の日時情報と、に基づいて、M2個(前記M2は2以上の整数)の変化率を算出する第1の算出部であって、前記変化率は、単位残量あたりの前記色材の消費時間を示す、前記第1の算出部と、
色材カートリッジ内の色材の残量と前記M2個の変化率との間の推定される関係を表わす第1の推定関数を算出する第2の算出部と、
特定の色材カートリッジ内の色材の残量を示す情報を含む特定の残量情報が取得される場合に、前記第1の推定関数と前記特定の残量情報とに基づいて、前記特定の色材カートリッジ内の色材の残量に関連する予測処理を実行して予測情報を算出する第3の算出部と、
算出済みの前記予測情報を利用した出力処理を実行する出力制御部と、
として機能させる、コンピュータプログラム。
【請求項2】
前記第1の推定関数は、定数関数ではない、請求項1に記載のコンピュータプログラム。
【請求項3】
前記1個以上のプリンタのそれぞれは、
当該プリンタに装着済みの色材カートリッジ内の色材の残量が第1の残量範囲である場合に、第1の測定方法を利用して、当該色材カートリッジ内の色材の残量を測定し、
当該プリンタに装着済みの色材カートリッジ内の色材の残量が前記第1の残量範囲とは異なる第2の残量範囲である場合に、前記第1の測定方法とは異なる第2の測定方法を利用して、当該色材カートリッジ内の色材の残量を測定する、
請求項1に記載のコンピュータプログラム。
【請求項4】
前記複数個の残量情報のそれぞれは、第1のモデル名を有する1個以上のプリンタのそれぞれに装着済みの色材カートリッジ内の色材の残量を示す情報を含む前記M1個の残量情報と、前記第1のモデル名とは異なる第2のモデル名を有する1個以上のプリンタのそれぞれに装着済みの色材カートリッジ内の色材の残量を示す情報を含むN1個(前記N1は2以上の整数)の残量情報と、を含み、
前記第1の算出部は、さらに、前記複数個の残量情報のうちの前記N1個の残量情報と、前記N1個の残量情報のそれぞれ取得日時に関連するN1個の日時情報と、に基づいて、N2個(前記N2は2以上の整数)の変化率を算出し、
前記第2の算出部は、さらに、色材カートリッジ内の色材の残量と前記N2個の変化率との間の第2の推定関数を算出し、
前記第3の算出部は、
前記第1のモデル名を有するプリンタに装着済みの前記特定の色材カートリッジ内の色材の残量を示す情報を含む前記特定の残量情報が取得される場合に、前記第1の推定関数と前記特定の残量情報とに基づいて前記予測情報を算出し、
前記第2のモデル名を有するプリンタに装着済みの前記特定の色材カートリッジ内の色材の残量を示す情報を含む前記特定の残量情報が取得される場合に、前記第2の推定関数と前記特定の残量情報とに基づいて前記予測情報を算出する、
請求項1に記載のコンピュータプログラム。
【請求項5】
前記複数個の残量情報のそれぞれは、1個以上のプリンタのそれぞれに装着済みの第1のカートリッジ名を有する色材カートリッジ内の色材の残量を示す情報を含む前記M1個の残量情報と、1個以上のプリンタのそれぞれに装着済みの第2のカートリッジ名を有する色材カートリッジ内の色材の残量を示す情報を含むK1個(前記K1は2以上の整数)の残量情報と、を含み、
前記第1の算出部は、さらに、前記複数個の残量情報のうちの前記K1個の残量情報と、前記K1個の残量情報のそれぞれの取得日時に関連するK1個の日時情報と、に基づいて、K2個(前記K2は2以上の整数)の変化率を算出し、
前記第2の算出部は、さらに、色材カートリッジ内の色材の残量と前記K2個の変化率との間の第3の推定関数を算出し、
前記第3の算出部は、
前記第1のカートリッジ名を有する前記特定の色材カートリッジ内の色材の残量を示す情報を含む前記特定の残量情報が取得される場合に、前記第1の推定関数と前記特定の残量情報とに基づいて前記予測情報を算出し、
前記第2のカートリッジ名を有する前記特定の色材カートリッジ内の色材の残量を示す情報を含む前記特定の残量情報が取得される場合に、前記第3の推定関数と前記特定の残量情報とに基づいて前記予測情報を算出する、
請求項1に記載のコンピュータプログラム。
【請求項6】
前記予測情報は、前記特定の色材カートリッジ内の前記色材の残量が所定値になるまでの予測時間である、請求項1に記載のコンピュータプログラム。
【請求項7】
前記第3の算出部は、取得済みの前記特定の残量情報によって示される残量と前記所定値との間の区間で、前記第1の推定関数を積分することによって、前記予測情報を算出する、請求項6に記載のコンピュータプログラム。
【請求項8】
前記出力処理は、新たな色材カートリッジの発送に関連する処理を含み、
前記出力制御部は、前記予測時間が閾値以下である場合に前記出力処理を実行し、前記予測時間が前記閾値より大きい場合に前記出力処理を実行しない、請求項6に記載のコンピュータプログラム。
【請求項9】
サーバであって、
複数個の残量情報を取得する取得部であって、前記複数個の残量情報のそれぞれは、1個以上のプリンタのそれぞれに装着済みの色材カートリッジ内の色材の残量を示す情報を含む、前記取得部と、
前記複数個の残量情報のうちの少なくともM1個(前記M1は2以上の整数)の残量情報と、前記M1個の残量情報のそれぞれの取得日時に関連するM1個の日時情報と、に基づいて、M2個(前記M2は2以上の整数)の変化率を算出する第1の算出部であって、前記変化率は、単位残量あたりの前記色材の消費時間を示す、前記第1の算出部と、
色材カートリッジ内の色材の残量と前記M2個の変化率との間の推定される関係を表わす第1の推定関数を算出する第2の算出部と、
特定の色材カートリッジ内の色材の残量を示す情報を含む特定の残量情報が取得される場合に、前記第1の推定関数と前記特定の残量情報とに基づいて、前記特定の色材カートリッジ内の色材の残量に関連する予測処理を実行して予測情報を算出する第3の算出部と、
算出済みの前記予測情報を利用した出力処理を実行する出力制御部と、
を備える、サーバ。
【請求項10】
サーバを制御するための方法であって、
複数個の残量情報を取得する取得工程であって、前記複数個の残量情報のそれぞれは、1個以上のプリンタのそれぞれに装着済みの色材カートリッジ内の色材の残量を示す情報を含む、前記取得工程と、
前記複数個の残量情報のうちの少なくともM1個(前記M1は2以上の整数)の残量情報と、前記M1個の残量情報のそれぞれの取得日時に関連するM1個の日時情報と、に基づいて、M2個(前記M2は2以上の整数)の変化率を算出する第1の算出工程であって、前記変化率は、単位残量あたりの前記色材の消費時間を示す、前記第1の算出工程と、
色材カートリッジ内の色材の残量と前記M2個の変化率との間の推定される関係を表わす第1の推定関数を算出する第2の算出工程と、
特定の色材カートリッジ内の色材の残量を示す情報を含む特定の残量情報が取得される場合に、前記第1の推定関数と前記特定の残量情報とに基づいて、前記特定の色材カートリッジ内の色材の残量に関連する予測処理を実行して予測情報を算出する第3の算出工程と、
算出済みの前記予測情報を利用した出力処理を実行する出力制御工程と、
を備える、方法。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、色材カートリッジ内の色材の残量に関連する予測処理を実行する技術に関する。
【背景技術】
【0002】
特許文献1には、画像形成装置の消耗品の交換時期を予測する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
本明細書では、色材カートリッジ内の色材の残量に関連する予測処理を正確に実行し得る技術を提供する。
【課題を解決するための手段】
【0005】
本明細書は、サーバのためのコンピュータプログラムを開示する。コンピュータプログラムは、前記サーバのコンピュータを、以下の各部、即ち、複数個の残量情報を取得する取得部であって、前記複数個の残量情報のそれぞれは、1個以上のプリンタのそれぞれに装着済みの色材カートリッジ内の色材の残量を示す情報を含む、前記取得部と、前記複数個の残量情報のうちの少なくともM1個(前記M1は2以上の整数)の残量情報と、前記M1個の残量情報のそれぞれの取得日時に関連するM1個の日時情報と、に基づいて、M2個(前記M2は2以上の整数)の変化率を算出する第1の算出部であって、前記変化率は、単位残量あたりの前記色材の消費時間を示す、前記第1の算出部と、色材カートリッジ内の色材の残量と前記M2個の変化率との間の推定される関係を表わす第1の推定関数を算出する第2の算出部と、特定の色材カートリッジ内の色材の残量を示す情報を含む特定の残量情報が取得される場合に、前記第1の推定関数と前記特定の残量情報とに基づいて、前記特定の色材カートリッジ内の色材の残量に関連する予測処理を実行して予測情報を算出する第3の算出部と、算出済みの前記予測情報を利用した出力処理を実行する出力制御部と、として機能させてもよい。
【0006】
上記の構成によると、サーバは、M1個の残量情報とM1個の日時情報とに基づいてM2個の変化率を算出する。ここで、変化率は、単位残量あたりの色材の消費時間を示す。そして、サーバは、M2個の変化率に基づいて第1の推定関数を算出し、第1の推定関数と特定の残量情報とに基づいて予測処理を実行する。このように、サーバは、上記の変化率に基づいて予測処理を実行するので、予測処理を正確に実行し得る。
【0007】
上記のコンピュータプログラムを記憶するコンピュータ可読記録媒体、コンピュータプログラムによって実現されるサーバそのもの、及び、サーバを制御するための方法も、新規で有用である。
【図面の簡単な説明】
【0008】
【
図2】推定関数の算出方法の概略を説明するための図である。
【
図3】推定関数の算出方法を説明するための図である。
【
図4】推定関数の算出方法を説明するための図である。
【
図5】推定関数に基づいて予測時間を算出する方法を説明するための図である。
【発明を実施するための形態】
【0009】
(通信システム2の構成;
図1)
図1に示されるように、通信システム2は、管理サーバ10と、複数個のプリンタ100A~100Dと、を備える。管理サーバ10及び複数個のプリンタ100A~100Dのそれぞれは、インターネット6に接続されている。各装置10,100A~100Dは、インターネット6を介して、相互に通信可能である。
【0010】
(プリンタ100Aの構成)
プリンタ100は、少なくとも印刷機能を実行可能な装置である。本実施例のプリンタ100Aは、インクジェットプリンタであり、プリンタ100Aに対して着脱可能なインクカートリッジ内のインクを利用して印刷を実行する。以下では、カートリッジのことを「CTG」と記載する。変形例では、プリンタ100Aは、トナーを利用して印刷を実行するレーザプリンタであってもよい。プリンタ100Aは、モデル名MN1を有する。プリンタ100Aには、シリアル番号SNAが割り当てられている。プリンタ100Aには、CTG名C1を有するインクCTGが装着されている。
【0011】
プリンタ100Aは、プリンタ100Aに現在装着されているインクCTG内の色材の残量を示す現在残量RAをメモリに記憶する。新しいインクCTGが装着されると、メモリ内の現在残量RAは100%を示す。そして、プリンタ100Aは、印刷を実行する毎に、現在残量RAを更新する。
【0012】
具体的には、プリンタ100Aは、ドットカウント方式と光学式との2種類の測定方法のどちらかを利用して現在残量RAを測定可能である。ドットカウント方式は、インク滴を吐出した回数をカウントして、当該回数に応じて現在残量RAを推定する方式である。光学式は、インクCTG内に光を入射して、反射光に基づいて現在残量RAを検出する方式である。どちらの測定方法が利用されるのかは、プリンタ100Aに現在装着されているインクCTG内の色材の残量に応じて決定される。プリンタ100Aは、インクCTG内のインクの残量が比較的多い場合(例えば50%~100%)に、ドットカウント方式を利用して現在残量RAを測定する。プリンタ100Aは、インクCTG内のインクの残量が比較的少ない場合(例えば0%~50%)に、光学式を利用して現在残量RAを測定する。
【0013】
ドットカウント方式では、インクCTG内のインク残量が比較的少ない場合には、測定誤差が大きくなり得る。一方、光学式では、インクCTG内のインク残量が比較的多い場合には、反射光が弱くなるので、測定誤差が大きくなり得る。このため、本実施例では、プリンタ100Aは、インク残量が比較的多い場合にはドットカウント方式を利用してインク残量を測定し、インク残量が比較的少ない場合には光学式を利用してインク残量を測定する。これにより、プリンタ100Aは、現在残量RAの測定を精度よく実行し得る。
【0014】
(プリンタ100Bの構成)
プリンタ100Bは、シリアル番号SNBが割り当てられる点、及び、現在残量RBを記憶する点を除くと、プリンタ100Aの構成と同様である。
【0015】
(プリンタ100Cの構成)
プリンタ100Cは、シリアル番号SNCが割り当てられる点、CTG名C2を有するインクCTGが装着される点、及び、現在残量RCを記憶する点を除くと、プリンタ100Aの構成と同様である。
【0016】
(プリンタ100Dの構成)
プリンタ100Dは、モデル名MN2を有するモデルのプリンタである。即ち、プリンタ100Dは、プリンタ100A~100Cとは異なるモデルのプリンタである。プリンタ100Dには、シリアル番号SNDが割り当てられる。プリンタ100Dには、CTG名C1を有するインクCTGが装着されている。プリンタ100Dは、現在残量RDを記憶する。プリンタ100Dも、ドットカウント方式と光学式との2種類の測定方法を利用して、現在残量RDを測定する。
【0017】
(管理サーバ10の構成)
管理サーバ10は、プリンタ100A~100Dを含む複数個のプリンタ(以下、「管理対象プリンタ」と記載することがある)を管理するためのサーバである。管理サーバ10は、例えば、プリンタ100A~100Dのベンダによってインターネット6上に設置される。
【0018】
管理サーバ10は、通信インターフェース12と制御部20とを備える。各部12,20は、バス線に接続されている。以下では、インターフェースのことを「I/F」と記載する。通信I/F12は、インターネット6に接続されている。
【0019】
制御部20は、CPU22と揮発性メモリ24Aと不揮発性メモリ24Bとを備える。CPU22は、不揮発性メモリ24Bに記憶されているプログラム26に従って、様々な処理を実行する。具体的には、CPU22は、不揮発性メモリ24Bから揮発性メモリ24Aにプログラム26をロードして、当該プログラム26を実行することによって、上記の様々な処理を実行する。揮発性メモリ24Aは、例えばRAMである。不揮発性メモリ24Bは、例えば、Hard Disk Drive(HDD)、ROM等を含む。変形例では、HDDに代えて、Solid State Drive(SSD)、フラッシュメモリ等が利用されてもよい。不揮発性メモリ24Bは、さらに、残量情報テーブル28と、推定関数リスト30と、を記憶する。
【0020】
残量情報テーブル28は、シリアル番号とモデル名とCTG名と残量と日時とを関連付けて記憶する。残量情報テーブル28内の各行の情報は、複数個の管理対象プリンタのそれぞれから受信された情報を示す。例えば、
図1の残量情報テーブル28の2行目の情報は、シリアル番号SNAが割り当てられたプリンタ100Aから受信された情報を示す。複数個の管理対象プリンタのそれぞれは、所定のタイミング(例えば1時間毎)で、シリアル番号とモデル名とCTG名と現在残量と日時とを含む残量情報を管理サーバ10に送信する。管理サーバ10は、管理対象プリンタから残量情報を受信すると、当該残量情報に含まれる各情報を残量情報テーブル28内に記憶する。
【0021】
推定関数リスト30は、1以上の推定関数を記憶する。推定関数リスト30は、モデル名及びCTG名の組合せ毎に推定関数を記憶する。例えば、推定関数リスト30は、モデル名「MN1」及びCTG名「C1」の組合せ「MN1-C1」に関連付けて、推定関数f(x)を記憶する。同様に、推定関数リスト30は、組合せ「MN1-C2」、組合せ「MN2-C1」に関連付けて、それぞれ、推定関数g(x)、h(x)を記憶する。従って、管理サーバ10は、モデル名及びCTG名の組合せに応じた推定関数を利用して、後述の予測時間を算出することができる。モデル名及びCTG名の組合せ毎に、インクCTG内のインクの減り方の傾向が異なり得る。本実施例では、管理サーバ10は、モデル名及びCTG名の組合せに応じた推定関数を利用するので、予測時間を正確に算出することができる。
【0022】
(推定関数の算出の概略;
図2)
続いて、
図2を参照して、残量情報テーブル28内の各情報を利用して、推定関数の算出方法の概略を説明する。
【0023】
上記の通り、本実施例の管理サーバ10は、モデル名及びCTG名の組合せ毎に推定関数を記憶する。これを実現するために、管理サーバ10は、まず、残量情報テーブル28内の各残量情報をモデル名及びCTG名の組合せ毎にグルーピングする。本実施例では、
図2の左側の表に示されるように、3個のグループ(即ち組合せ「MN1-C1」、「MN1-C2」、「MN2-C1」)に分けられる。
【0024】
管理サーバ10は、上記のグルーピングを実行した後に、グループ毎に以下の処理を実行する。各グループについて実行される処理は同様であるので、以下では、組合せ「MN1-C1」のグループ(以下、「対象グループ」と記載する)について実行される処理を説明する。
【0025】
まず、管理サーバ10は、対象グループに含まれる1個のシリアル番号(例えばSNA)を特定し、特定済みのシリアル番号を含む複数個の残量情報を日時順にソートする。管理サーバ10は、対象グループが他のシリアル番号(例えばSNB)を含む場合には、当該他のシリアル番号をさらに特定し、特定済みのシリアル番号を含む複数個の残量情報を日時順にソートする。これにより、左上のテーブルに示されるように、各シリアル番号SNA,SNBについて、複数個の残量情報が日時順にソートされる。
【0026】
その後、管理サーバ10は、対象グループのソート済みの複数個の残量情報のうちの1行目の残量情報及び2行目の残量情報を利用して、残量変化「RA1 to RA2」と時間変化「TA2-TA1」との組合せを算出する。残量変化「RA1 to RA2」は、残量RA1と残量RA2との差分である。時間変化「TA2-TA1」は、日時TA1と日時TA2との差分である。これにより、管理サーバ10は、右上のテーブルに示されるように、シリアル番号SNAとモデル名MN1とCTG名C1とに関連付けて、残量変化「RA1 to RA2」と時間変化「TA2-TA1」との組合せが記憶される。
【0027】
次いで、管理サーバ10は、対象グループのソート済みの複数個の残量情報のうちの2行目の残量情報及び3行目の残量情報を利用して、残量変化と時間変化との組合せを算出する。同様に、管理サーバ10は、同じシリアル番号を含む隣接する2個の行の残量情報を利用して、残量変化と時間変化との組合せを算出する。例えば、対象グループがシリアル番号SNAを含むM個の残量情報を含む場合には、(M-1)個の組合せが算出される。なお、変形例では、隣接する2個の行の残量情報だけでなく、例えば任意の2個の行の残量情報を利用して、残量変化と時間変化との組合せを算出してもよい。
【0028】
残量変化及び時間変化は、推定関数を算出するために利用される。具体的には、時間変化を残量変化で除した値(例えば(TA2-TA1)/(RA1-RA2))である変化率が推定関数を算出するために利用される。ここで、変化率は、単位残量(例えば1%)あたりのインクの消費時間を示す値である。
【0029】
管理サーバ10は、対象グループに含まれる他のシリアル番号についても上記と同様の処理を実行して、残量変化と時間変化との組合せを算出する。これにより、右上のテーブルに示されるように、シリアル番号SNAについて、残量変化と時間変化との複数個の組合せが算出され、シリアル番号SNBについて、残量変化と時間変化との複数個の組合せが算出される。
【0030】
次いで、管理サーバ10は、残量変化と時間変化との組合せから得られる変化率を利用して、推定関数f(x)を算出する。推定関数f(x)の具体的な算出方法は後述する。そして、管理サーバ10は、組合せ「MN1-C1」に関連付けて、算出済みの推定関数f(x)を推定関数リスト30に記憶する。
【0031】
他のグループについても上記と同様の処理が実行されて、推定関数g(x)、h(x)が順次算出される。管理サーバ10は、組合せ「MN1-C2」に関連付けて推定関数g(x)を推定関数リスト30に記憶し、組合せ「MN2-C1」に関連付けて推定関数h(x)を推定関数リスト30に記憶する。
【0032】
(推定関数の算出方法;
図3及び
図4)
続いて、
図3及び
図4を参照して、推定関数の算出方法について説明する。各推定関数の算出方法は同様であるので、以下では、対象グループに対応する推定関数f(x)の算出方法を説明する。特に、推定関数を算出する方法として、横軸が残量であると共に縦軸が変化率である直交座標平面上の複数個の点を通る近似的な曲線を算出する方法を説明する。
【0033】
まず、管理サーバ10は、残量変化と時間変化との1個の組合せを特定する。ここでは、残量変化「RA1 to RA2」と時間変化「TA2-TA1」との組合せが特定される場合を例として説明する。管理サーバ10は、時間変化「TA2-TA1」を残量変化「RA1-RA2」で除して、変化率「(TA2-TA1)/(RA1-RA2)」を算出する。管理サーバ10は、
図3に示されるように、残量「RA1」と残量「RA2」との間の中点と、変化率「(TA2-TA1)/(RA1-RA2)」と、によって示される座標を直交座標平面にプロットする。管理サーバ10は、対象グループに含まれる全ての組合せについて上記の処理を実行して、複数個の座標を直交座標平面にプロットする。この結果、
図3の直交座標平面が得られる。
【0034】
その後、管理サーバ10は、
図4に示されるように、プロット済みの複数個の座標の近似曲線を算出することによって、推定関数f(x)を算出する。近似曲線を算出するための手法は、特に限定されないが、例えば回帰分析、内挿等である。
【0035】
図4に示されるように、推定関数f(x)は定数関数ではない。推定関数が定数関数でないことは、インクCTG内のインク残量の範囲に応じて変化率が異なることを意味する。この事象の原因としては、インクCTG内のインク残量の範囲に応じて、インク残量の測定方法が異なることが考えられる。
【0036】
即ち、上述の通り、モデル名MN1を有するプリンタ(例えばプリンタ100A)は、インクCTG内のインク残量が比較的多い場合(例えば50%~100%)には、ドットカウント方式でインク残量を測定し、インクCTG内のインク残量が比較的少ない場合(例えば0%~50%)には、光学式でインク残量を測定する。このように測定方法が異なると、測定されるインク残量と実際のインク残量との誤差が異なり得る。
【0037】
プリンタにおいて同じペースで印刷が継続して実行される状況を想定する。このような状況では、測定に誤差がないと、変化率は一定である。即ち、真の変化率は一定である。しかしながら、測定方法に応じて誤差が異なると、プリンタにおいて同じペースで印刷が継続して実行されたとしても、変化率が一定でなくなる。これにより、推定関数が定数関数でなくなる。このように、本実施例の推定関数は、インクCTG内のインク残量の測定方法に応じた誤差の違いの情報も含んでいると言える。このため、管理サーバ10は、後述の予測時間を正確に算出することができる。
【0038】
(予測時間の算出方法;
図5)
続いて、
図5を参照して、予測時間を算出する方法について説明する。ここでは、推定関数f(x)が算出された後に、プリンタ100Aから残量「80%」を含む残量情報が受信されるケースについて説明する。
【0039】
管理サーバ10は、プリンタ100Aから、シリアル番号SNAと、モデル名MN1と、CTG名C1と、残量「80%」と、日時と、を含む残量情報を受信する。この場合、管理サーバ10は、残量情報に含まれる各情報を残量情報テーブル28に記憶すると共に、残量情報に含まれるモデル名MN1とCTG名C1との組合せ「MN1-C1」を特定する。そして、管理サーバ10は、推定関数リスト30において、特定済みの組合せ「MN1-C1」に関連付けられている推定関数f(x)を特定する。
【0040】
次いで、管理サーバ10は、受信済みの残量情報に含まれる残量「80%」と0%との間の区間で推定関数f(x)を積分する。即ち、管理サーバ10は、
図5の斜線部分で示される領域の面積を算出する。この面積は、プリンタ100Aに現在装着されているインクCTGが現在の残量(即ち80%)から0%(即ちエンプティ)になるまでの予測時間である。これにより、管理サーバ10は、プリンタ100Aに現在装着されているインクCTG内のインクがなくなるまでの予測時間を算出することができる。
【0041】
なお、プリンタ100Bから残量情報が受信される場合には、管理サーバ10は、プリンタ100Aの場合と同様に、推定関数f(x)を利用して予測時間を算出する。プリンタ100Bから受信される残量情報も、モデル名NM1とCTG名C1とを含むからである。また、プリンタ100Cから残量情報が受信される場合には、管理サーバ10は、推定関数g(x)を利用して予測時間を算出する。プリンタ100Dから残量情報が受信される場合には、管理サーバ10は、推定関数h(x)を利用して予測時間を算出する。このように、管理サーバ10は、プリンタのモデル名及び当該プリンタに装着されているインクCTGのCTG名に応じた推定関数を利用して、予測時間を正確に算出することができる。
【0042】
また、上記の通り、管理サーバ10は、プリンタ100Aから残量「80%」を含む残量情報を受信すると、残量情報に含まれる各情報を残量情報テーブル28に記憶する。管理サーバ10は、推定関数f(x)の算出後に記憶された残量情報を利用して、推定関数f(x)を更新することもできる。これにより、管理サーバ10は、更新後の推定関数f(x)を利用して、予測時間を正確に算出することができる。
【0043】
管理サーバ10は、算出済みの予測時間が閾値(例えば10日)以下であるのか否かを判断する。管理サーバ10は、予測時間が閾値以下であると判断する場合に、CTG名C1を有する新たなインクCTGをプリンタ100Aのユーザに発送するための処理を実行する。例えば、管理サーバ10は、発送指示を図示省略の発送サーバに送信する。この結果、新たなインクCTGがプリンタ100Aのユーザに発送される。このために、プリンタ100Aに現在装着されているインクCTG内のインクがなくなる前に、新たなインクCTGをユーザに提供することができる。なお、管理サーバ10は、算出済みの予測時間が閾値よりも大きいと判断する場合に、新たなインクCTGをユーザに発送するための処理を実行しない。このような状況では、ユーザにとって新たなインクCTGは不要であるからである。
【0044】
(実施例の効果)
上記の構成によると、管理サーバ10は、複数個の残量と日時とに基づいて、複数個の変化率を算出する。管理サーバ10は、ここで、変化率は、単位残量あたりのインクの消費時間を示す。そして、管理サーバ10は、複数個の変化率に基づいて推定関数f(x)を算出し(
図3及び
図4参照)、推定関数f(x)と残量情報とに基づいて、プリンタ100Aに現在装着されているインクCTGの残量がなくなるまでの予測時間を算出する。上記の通り、推定関数f(x)は、インクCTG内のインク残量の測定方法に応じた誤差の違いの情報も含んでいる。従って、管理サーバ10は、予測時間をより正確に算出することができる。
【0045】
(対応関係)
管理サーバ10が、「サーバ」の一例である。プリンタ100A~100Dが、「1個以上のプリンタ」の一例である。インクCTGが、「色材カートリッジ」の一例である。50%~100%の残量範囲、0%~50%の残量範囲が、それぞれ、「第1の残量範囲」、「第2の残量範囲」の一例である。ドットカウント方式、光学式が、それぞれ、「第1の測定方法」、「第2の測定方法」の一例である。モデル名MN1,MN2が、それぞれ、「第1のモデル名」、「第2のモデル名」の一例である。CTG名C1,C2が、それぞれ、「第1のカートリッジ名」、「第2のカートリッジ名」の一例である。
図5においてプリンタ100Aから受信される残量「80%」を含む残量情報、当該残量情報の送信元のプリンタ100Aに装着されているインクCTGが、それぞれ、「特定の残量情報」、「特定の色材カートリッジ」の一例である。各プリンタ100A~100Dから受信される残量情報が、「複数個の残量情報」の一例である。残量情報に含まれる現在残量が、「装着済みの色材カートリッジ内の色材の残量を示す情報」の一例である。特に、プリンタ100A及びプリンタ100Bから受信される残量情報、プリンタ100Dから受信される残量情報、プリンタ100Cから受信される残量情報が、それぞれ、「M1個の残量情報」、「N1個の残量情報」、「K1個の残量情報」の一例である。管理サーバ10が各プリンタから残量情報を受信した日時が、「取得日時」の一例である。プリンタ100A及びプリンタ100Bから受信される残量情報内の日時、プリンタ100Dから受信される残量情報内の日時、プリンタ100Cから受信される残量情報内の日時が、それぞれ、「取得日時に関連するM1個の日時情報」、「取得日時に関連するN1個の日時情報」、「取得日時に関連するK1個の日時情報」の一例である。組合せ「MN1-C1」のグループについての残量変化と時間変化との組合せから算出される変化率が、「M2個の変化率」の一例である。組合せ「MN2-C1」のグループについての残量変化と時間変化との組合せから算出される変化率が、「N2個の変化率」の一例である。組合せ「MN1-C2」のグループについての残量変化と時間変化との組合せから算出される変化率が、「K2個の変化率」の一例である。推定関数f(x)、h(x)、g(x)が、それぞれ、「第1の推定関数」、「第2の推定関数」、「第3の推定関数」の一例である。0%が、「所定値」の一例である。予測時間が、「予測情報(及び予測時間)」の一例である。10日が、「閾値」の一例である。発送指示を発送サーバに送信する処理が、「出力処理」の一例である。
【0046】
管理対象プリンタから残量情報を受信する処理が、「取得部」によって実行される処理の一例である。
図2の左のテーブルから右のテーブルを算出して変化率を算出する処理が、「第1の算出部」によって実行される処理の一例である。
図3及び
図4を参照して説明した推定関数を算出する処理が、「第2の算出部」によって実行される処理の一例である。
図5の予測時間を算出する処理が、「第3の算出部」によって実行される処理の一例である。発送指示を発送サーバに送信する処理が、「出力制御部」によって実行される処理の一例である。
【0047】
以上、本明細書が開示する技術の具体例を詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【0048】
(変形例1)上記の実施例では、残量情報は、現在残量(即ちプリンタに現在装着されているインクCTG内のインク残量)を示す情報を含む。これに代えて、残量情報は、プリンタに過去に装着されていたインクCTG内のインク残量を示す情報を含んでもよい。例えば、プリンタに装着されているインクCTG内にインクが残存している状況で当該インクCTGが交換された後に所定タイミングが到来する場合に、当該プリンタは、交換前のインクCTG内のインク残量を示す情報を含む残量情報を管理サーバ10に送信してもよい。本変形例では、交換前のインクCTG内のインク残量を示す情報が、「装着済みの色材カートリッジ内の色材の残量を示す情報」の一例である。
【0049】
(変形例2)上記の実施例では、管理サーバ10は、複数個のプリンタのそれぞれから直接的に残量情報を受信する。これに代えて、複数個のプリンタのそれぞれから残量情報を受信する端末装置が設けられてもよい。この場合、管理サーバ10は、端末装置から各プリンタの残量情報を受信する。本変形例では、端末装置から残量情報を受信する処理が、「取得部」によって実行される処理の一例である。
【0050】
(変形例3)複数個のプリンタのそれぞれは、日時を含まない残量情報を管理サーバ10に送信してもよい。この場合、管理サーバ10は、残量情報に含まれる各情報と、当該残量情報を受信した日時と、を関連付けて残量情報テーブル28に記憶してもよい。本変形例では、管理サーバ10が残量情報を受信した日時が、「取得日時」及び「取得日時に関連する(M1個の)日時情報」の一例である。
【0051】
(変形例4)管理サーバ10は、プリンタに装着されているインクCTG内のインク残量が任意の値になるまでの予測時間を算出することも可能である。例えば、インクCTG内のインク残量が「10%」になるまでの予測時間を算出することが望まれる状況を想定する。このような状況で、管理サーバ10は、プリンタ100Aから残量「80%」を含む残量情報が受信されるケースを想定する。この場合、管理サーバ10は、受信済みの残量情報に含まれる残量「80%」と10%との間の区間で推定関数f(x)を積分することによって、インクCTG内のインク残量が「10%」になるまでの予測時間を算出することができる。本変形例では、10%が「所定値」の一例である。
【0052】
(変形例5)管理サーバ10は、予測時間の算出に代えて、推定関数に基づいて補正後のインク残量を算出してもよい。以下では、プリンタ100Aから残量「80%」を含む残量情報が受信されるケースを説明する。管理サーバ10は、まず、100%と0%との区間で推定関数f(x)を積分して第1の値を算出する。次いで、管理サーバ10は、受信済みの残量情報に含まれる残量「80%」と0%との区間で推定関数f(x)を積分して第2の値を算出する。そして、管理サーバ10は、第2の値を第1の値で除した値である比率を算出する。最後に、管理サーバ10は、100%に、算出済みの比率を乗じた値(即ち補正後のインク残量)を算出する。この値は、インクCTG内のインク残量の測定方法に応じた誤差の違いの情報を加味して得られる値である。本変形例では、補正後のインク残量が、「予測情報」の一例である。
【0053】
(変形例6)管理サーバ10は、新たなインクCTGを発送するための処理に代えて、算出済みの予測時間(即ちインクCTG内のインク残量が0%になるまでの予測される時間)をユーザに通知する通知処理を実行してもよい。通知処理は、例えば、ユーザのメールアドレス宛に予測時間を送信する処理であってもよいし、ユーザの携帯端末のアプリケーション宛に予測時間を送信する処理であってもよい。本変形例では、当該通知処理が、「出力処理」の一例である。また、別の変形例では、管理サーバ10は、新たなインクCTGを発送するための処理に代えて、上記の変形例5で説明した補正後のインク残量をユーザに通知する通知処理を実行してもよい。本変形例では、当該通知処理が、「出力処理」の一例である。
【0054】
(変形例7)管理サーバ10によって算出される推定関数f(x)は定数関数であってもよい。この場合でも、上記の実施例と同様にして、予測時間を正確に算出することができる。
【0055】
(変形例8)各プリンタ100A~100Dのいずれかは、単一の測定方法(例えばドットカウント方式のみ、光学式のみ)を利用してインクCTG内のインクの残量を測定するように構成されていてもよい。また、別の変形例では、各プリンタ100A~100Dのいずれかは、ドットカウント方式、光学式、その他の測定方法を組み合わせた、2以上の測定方法を利用して、インク残量を測定してもよい。
【0056】
(変形例9)上記の実施例では、管理サーバ10は、残量情報テーブル28内の各残量情報をモデル名及びCTG名の組合せ毎にグルーピングする。これに代えて、管理サーバ10は、以下の変形例9-1~変形例9-3のような処理を実行してもよい。
【0057】
(変形例9-1)管理サーバ10は、残量情報テーブル28内の各残量情報をグルーピングすることなく、残量変化と時間変化との組合せ及び変化率を算出してもよい。この場合、管理サーバ10は、推定関数リスト30を記憶しなくてもよい。本変形例では、「第1の算出部」は、「N2個の変化率」及び「K2個の変化率」を算出しなくてもよい。また、「第2の算出部」は、「第2の推定関数」及び「第3の推定関数」を算出しなくてもよい。
【0058】
(変形例9-2)管理サーバ10は、残量情報テーブル28内の各残量情報を、モデル名毎にグルーピングしてもよい。即ち、管理サーバ10は、各残量情報に含まれるCTG名が同じであるのか異なるのかに関わらず、同じモデル名を含む残量情報を同一のグループに分けてもよい。例えば、上記の実施例と同様の状況では、各残量情報は、モデル名「MN1」のグループと、モデル名「MN2」のグループと、の2個のグループに分けられる。本変形例では、「第1の算出部」は、「K2個の変化率」を算出しなくてもよい。また、「第2の算出部」は、「第3の推定関数」を算出しなくてもよい。
【0059】
(変形例9-3)管理サーバ10は、残量情報テーブル28内の各残量情報を、CTG名毎にグルーピングしてもよい。即ち、管理サーバ10は、各残量情報に含まれるモデル名が同じであるのか異なるのかに関わらず、同じCTG名を含む残量情報を同一のグループに分けてもよい。例えば、上記の実施例と同様の状況では、各残量情報は、CTG名「C1」のグループと、CTG名「C2」のグループと、の2個のグループに分けられる。本変形例では、「第1の算出部」は、「N2個の変化率」を算出しなくてもよい。また、「第2の算出部」は、「第2の推定関数」を算出しなくてもよい。
【0060】
(変形例10)上記の実施例では、管理サーバ10、各プリンタ100A~100D等の各装置によって実行される処理がソフトウェア(例えば、プログラム26)によって実現されるが、これらの各処理の少なくとも一つが、論理回路等のハードウェアによって実現されてもよい。
【0061】
本明細書または図面に説明した技術要素は、単独で、あるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成し得るものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【0062】
本特許出願時の特許請求の範囲において、各請求項が一部の請求項のみに従属している場合であっても、各請求項が当該一部の請求項のみに従属可能であることに限定されない。技術的に矛盾しない範囲において、各請求項は、出願時に従属していない他の請求項にも従属可能である。即ち、各請求項の技術は以下のように様々に組み合わせることができる。
(項目1)
サーバのためのコンピュータプログラムであって、
前記サーバのコンピュータを、以下の各部、即ち、
複数個の残量情報を取得する取得部であって、前記複数個の残量情報のそれぞれは、1個以上のプリンタのそれぞれに装着済みの色材カートリッジ内の色材の残量を示す情報を含む、前記取得部と、
前記複数個の残量情報のうちの少なくともM1個(前記M1は2以上の整数)の残量情報と、前記M1個の残量情報のそれぞれの取得日時に関連するM1個の日時情報と、に基づいて、M2個(前記M2は2以上の整数)の変化率を算出する第1の算出部であって、前記変化率は、単位残量あたりの前記色材の消費時間を示す、前記第1の算出部と、
色材カートリッジ内の色材の残量と前記M2個の変化率との間の推定される関係を表わす第1の推定関数を算出する第2の算出部と、
特定の色材カートリッジ内の色材の残量を示す情報を含む特定の残量情報が取得される場合に、前記第1の推定関数と前記特定の残量情報とに基づいて、前記特定の色材カートリッジ内の色材の残量に関連する予測処理を実行して予測情報を算出する第3の算出部と、
算出済みの前記予測情報を利用した出力処理を実行する出力制御部と、
として機能させる、コンピュータプログラム。
(項目2)
前記第1の推定関数は、定数関数ではない、項目1に記載のコンピュータプログラム。
(項目3)
前記1個以上のプリンタのそれぞれは、
当該プリンタに装着済みの色材カートリッジ内の色材の残量が第1の残量範囲である場合に、第1の測定方法を利用して、当該色材カートリッジ内の色材の残量を測定し、
当該プリンタに装着済みの色材カートリッジ内の色材の残量が前記第1の残量範囲とは異なる第2の残量範囲である場合に、前記第1の測定方法とは異なる第2の測定方法を利用して、当該色材カートリッジ内の色材の残量を測定する、
項目1又は2に記載のコンピュータプログラム。
(項目4)
前記複数個の残量情報のそれぞれは、第1のモデル名を有する1個以上のプリンタのそれぞれに装着済みの色材カートリッジ内の色材の残量を示す情報を含む前記M1個の残量情報と、前記第1のモデル名とは異なる第2のモデル名を有する1個以上のプリンタのそれぞれに装着済みの色材カートリッジ内の色材の残量を示す情報を含むN1個(前記N1は2以上の整数)の残量情報と、を含み、
前記第1の算出部は、さらに、前記複数個の残量情報のうちの前記N1個の残量情報と、前記N1個の残量情報のそれぞれの取得日時に関連するN1個の日時情報と、に基づいて、N2個(前記N2は2以上の整数)の変化率を算出し、
前記第2の算出部は、さらに、色材カートリッジ内の色材の残量と前記N2個の変化率との間の第2の推定関数を算出し、
前記第3の算出部は、
前記第1のモデル名を有するプリンタに装着済みの前記特定の色材カートリッジ内の色材の残量を示す情報を含む前記特定の残量情報が取得される場合に、前記第1の推定関数と前記特定の残量情報とに基づいて前記予測情報を算出し、
前記第2のモデル名を有するプリンタに装着済みの前記特定の色材カートリッジ内の色材の残量を示す情報を含む前記特定の残量情報が取得される場合に、前記第2の推定関数と前記特定の残量情報とに基づいて前記予測情報を算出する、
項目1から3のいずれか一項に記載のコンピュータプログラム。
(項目5)
前記複数個の残量情報のそれぞれは、1個以上のプリンタのそれぞれに装着済みの第1のカートリッジ名を有する色材カートリッジ内の色材の残量を示す情報を含む前記M1個の残量情報と、1個以上のプリンタのそれぞれに装着済みの第2のカートリッジ名を有する色材カートリッジ内の色材の残量を示す情報を含むK1個(前記K1は2以上の整数)の残量情報と、を含み、
前記第1の算出部は、さらに、前記複数個の残量情報のうちの前記K1個の残量情報と、前記K1個の残量情報のそれぞれの取得日時に関連するK1個の日時情報と、に基づいて、K2個(前記K2は2以上の整数)の変化率を算出し、
前記第2の算出部は、さらに、色材カートリッジ内の色材の残量と前記K2個の変化率との間の第3の推定関数を算出し、
前記第3の算出部は、
前記第1のカートリッジ名を有する前記特定の色材カートリッジ内の色材の残量を示す情報を含む前記特定の残量情報が取得される場合に、前記第1の推定関数と前記特定の残量情報とに基づいて前記予測情報を算出し、
前記第2のカートリッジ名を有する前記特定の色材カートリッジ内の色材の残量を示す情報を含む前記特定の残量情報が取得される場合に、前記第3の推定関数と前記特定の残量情報とに基づいて前記予測情報を算出する、
項目1から4のいずれか一項に記載のコンピュータプログラム。
(項目6)
前記予測情報は、前記特定の色材カートリッジ内の前記色材の残量が所定値になるまでの予測時間である、項目1から5のいずれか一項に記載のコンピュータプログラム。
(項目7)
前記第3の算出部は、取得済みの前記特定の残量情報によって示される残量と前記所定値との間の区間で、前記第1の推定関数を積分することによって、前記予測情報を算出する、項目6に記載のコンピュータプログラム。
(項目8)
前記出力処理は、新たな色材カートリッジの発送に関連する処理を含み、
前記出力制御部は、前記予測時間が閾値以下である場合に前記出力処理を実行し、前記予測時間が前記閾値より大きい場合に、前記出力処理を実行しない、項目6又は7に記載のコンピュータプログラム。
【符号の説明】
【0063】
2:通信システム、6:インターネット、10:管理サーバ、12:通信I/F、20:制御部、22:CPU、24A:揮発性メモリ、24B:不揮発性メモリ、26:プログラム、28:残量情報テーブル、30:推定関数リスト、100A~100D:プリンタ