説明

画像形成装置及びプログラム

【課題】コマンドの送信元である外部装置がコマンドの送信制御エラーを生じていると推定される場合に、警告を通知することができる画像形成装置及びプログラムを提供する。
【解決手段】サーマルプリンタ1のコントローラ11が、コマンドの種類毎に予め決められた単位時間あたりのコマンドの実行回数を監視する監視し、当該予め決められた単位時間あたりのコマンドの実行回数が閾値以上である場合に、コマンドの送信元であるホスト装置にアラームを通知する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置及びプログラムに関する。
【背景技術】
【0002】
従来より、コマンドを監視する画像形成装置が知られている(例えば、特許文献1参照)。
【0003】
画像形成装置としてのサーマルプリンタは、レシートや控え(ジャーナル)用途に使用される。また、サーマルプリンタには、印字設定や印字実行のために各種のコマンドが用意されている。この種のサーマルプリンタでは、ホスト装置(例えば、キャッシュレジスタ、ATM、又はハンディターミナルなど)が印字毎に又は一定周期毎にコマンドを発行し、サーマルプリンタを制御する。そして、サーマルプリンタは、コマンドを受信すると、受信順にコマンドを実行している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平05−110728号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、サーマルプリンタがホスト装置からコマンドを受信し、そのコマンドが実行される周期が適切でない場合、サーマルプリンタの寿命が低下するおそれがある。例えば、ホスト装置から大量のコマンドが短期間にサーマルプリンタのフラッシュメモリに書き込まれると、フラッシュメモリの書き込み回数がフラッシュメモリの書き込み耐用回数を超えて、フラッシュメモリが故障する。その結果、サーマルプリンタの寿命が短くなる。
【0006】
本発明の目的は、コマンドの送信元である外部装置がコマンドの送信制御エラーを生じていると推定される場合に、警告を通知することができる画像形成装置及びプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するため、画像形成装置は、コマンドの種類毎に予め決められた単位時間あたりのコマンドの実行回数を監視する監視手段と、当該予め決められた単位時間あたりのコマンドの実行回数が閾値以上である場合に、コマンドの送信元である外部装置にアラームを通知する通知手段とを備えていることを特徴とする。かかる構成によれば、コマンドの送信元である外部装置がコマンドの送信制御エラーを生じていると推定される場合に、警告を外部装置に通知することができる。
【0008】
好ましくは、画像形成装置は、前記予め決められた単位時間あたりのコマンドの実行回数が閾値以上である場合に、実行すべきコマンドを無視する無視手段を備えていることを特徴とする。かかる構成によれば、誤ったタイミングで外部装置から送信されたコマンドの実行タイミングを補正することができ、画像形成装置の寿命の低下を回避することができる。
【0009】
より好ましくは、画像形成装置は、前記予め決められた単位時間あたりのコマンドの実行回数が閾値以上であり、且つ実行すべきコマンドを無視しない場合に、実行すべきコマンドをバッファリングし、コマンド毎に規定された実行可能な周期の経過後に当該バッファリングされたコマンドを実行する遅延実行手段を備えていることを特徴とする。かかる構成によれば、誤ったタイミングで外部装置から送信されたコマンドの実行タイミングを補正することができ、画像形成装置の寿命の低下を回避することができる。
【0010】
さらに好ましくは、画像形成装置は、コマンドの種類毎に、前記通知手段のオン/オフ、前記無視手段のオン/オフ及び前記遅延実行手段のオン/オフの少なくとも1つを設定する設定手段を備えることを特徴とする。かかる構成によれば、コマンドの種類毎に、外部装置にアラームを通知するか否かの設定、実行すべきコマンドを無視するか否かの設定、実行すべきコマンドを遅延して実行するか否かの設定の少なくとも1つを実行することができる。
【0011】
好ましくは、画像形成装置は、前記閾値をコマンドの種類毎に設定する設定手段をさらに備えることを特徴とする。かかる構成によれば、コマンドの種類毎に閾値を変更することができる。
【0012】
好ましくは、画像形成装置は、サーマルプリンタであることを特徴とする。
【0013】
上記目的を達成するため、プログラムは、コンピュータを、コマンドの種類毎に予め決められた単位時間あたりのコマンドの実行回数を監視する監視手段、及び当該予め決められた単位時間あたりのコマンドの実行回数が閾値以上である場合に、コマンドの送信元である外部装置にアラームを通知する通知手段として機能させることを特徴とする。かかる構成によれば、コマンドの送信元である外部装置がコマンドの送信制御エラーを生じていると推定される場合に、警告を外部装置に通知することができる。
【発明の効果】
【0014】
本発明によれば、画像形成装置の寿命の低下を回避することができる。
【図面の簡単な説明】
【0015】
【図1】本実施の形態に係るサーマルプリンタとホスト装置の構成を示すブロック図である。
【図2】(A)は、不揮発性メモリの構造を示す図であり、図2(B)はSRAMの構造を示す図である。
【図3】(A)は、アラーム通知対象のコマンド、無視対象のコマンド及び遅延対象のコマンドの関係を示すテーブル情報である。(B)は、コマンドの構造を示す図である。
【図4】コントローラで実行される処理を示すフローチャートである。
【発明を実施するための形態】
【0016】
以下、図面を参照しながら本発明の実施の形態を説明する。
【0017】
図1は、本実施の形態に係るサーマルプリンタとホスト装置の構成を示すブロック図である。
【0018】
図1において、画像形成装置としてサーマルプリンタ1は、コントローラ11(監視手段、通知手段、無視手段、遅延実行手段、設定手段)、駆動部12、印刷部13、センサ14、不揮発性メモリ15、SRAM(Static Random Access Memory)16、フラッシュメモリ17、インターフェース18及び入力部19(設定手段)を備えている。尚、サーマルプリンタ1は、入力部19を備えていなくてもよい。ホスト装置2は、例えば、キャッシュレジスタ、ATM(Automated Teller Machine)、又はハンディターミナルなどであり、CPU(Central Processing Unit)21、メモリ22、インターフェース23、表示部24及び入力部25を備えている。
【0019】
コントローラ11は、サーマルプリンタ1の全体の動作を制御する。また、コントローラ11は、ホスト装置2から受信したコマンドを実行する。コマンドが実行された場合、例えば、コマンドに含まれる外字データやグラフィックイメージが後述するフラッシュメモリ17に登録される。駆動部12は、例えば、ステッピングモータで構成されており、サーマルプリンタ1で使用される用紙の搬送に使用される。印刷部13は、例えば、サーマルヘッドで構成されており、用紙に文字や図形を印字する際に使用される。センサ14は、例えば、用紙の有無を検出するセンサやカバーの開閉を検出するスイッチ等で構成されている。コントローラ11は、ホスト装置2から印刷コマンドを受信すると、駆動部12に駆動信号を出力し、印刷部13に画像データを出力する。また、コントローラ11は、用紙無しを示す信号をセンサ14から受信すると、ホスト装置2の表示部24に用紙交換を示す情報を出力する。これにより、ユーザは表示部24を介して用紙交換が必要であることを認識する。コントローラ11は、カバーが開いていることを示す信号をセンサ14から受信すると、ホスト装置2の表示部24にカバーが開いていることを示す情報を出力する。
【0020】
不揮発性メモリ15は、各種の設定情報及び後述するテーブル情報を格納する。SRAM16は、ホスト装置2から受信した各種のコマンドを保存する。フラッシュメモリ17は、SRAM16で展開されたコマンドを保存したり、コマンドから展開されたデータを保存する。インターフェース18は、例えば、USB(Universal Serial Bus)、IrDA(Infrared Data Association)、Bluetooth、RS−232C等のインターフェースであり、ホスト装置2から各種のコマンドを受信する際に使用される。
【0021】
入力部19は、液晶表示部などを含むユーザインターフェースであり、コントローラ11で参照される、ホスト装置2へアラームを通知するか否かの設定、ホスト装置2から受信されたコマンドを無視するか否かの設定、及びコントローラ11がコマンドを遅延して実行するか否かの設定を入力する。コントローラ11は、入力部19からの設定情報を不揮発性メモリ15に設定する。また、ユーザは、これらの設定情報をコマンドの種類毎に入力部19又はホスト装置2から変更又は編集可能である。例えば、ユーザは、入力部19又はホスト装置2で、あるコマンドの無視の設定を指示すると、コントローラ11がコマンドを無視するか否かの設定情報を不揮発性メモリ15から読み出し、入力部19又はホスト装置2からの指示に従って当該コマンドに対応する設定情報の内容を変更する。
【0022】
ホスト装置2のCPU21は、ホスト装置2の全体の動作を制御する。メモリ22は、各種のプログラムやデータを格納する。インターフェース23は、例えば、USB(Universal Serial Bus)、IrDA(Infrared Data Association)、Bluetooth、RS−232C等のインターフェースであり、インターフェース18にケーブルを介して接続される。また、インターフェース23は、ホスト装置2からのコマンドをサーマルプリンタ1に送信する。表示部24は、各種のデータや情報を表示する。入力部25は、キーボードやマウスなどで構成され、ホスト装置2に各種のデータや情報を入力する際に使用される。また、入力部25は、上述した不揮発性メモリ15に格納される設定情報を変更する場合に使用される。
【0023】
図2(A)は、不揮発性メモリ15の構造を示す図であり、図2(B)はSRAM16の構造を示す図である。
【0024】
図2(A)に示すように、不揮発性メモリ15は、設定情報格納領域151及びテーブル情報格納領域152を備えている。設定情報格納領域151には、ホスト装置2へアラームを通知するか否かの設定情報、ホスト装置2から受信されたコマンドを無視するか否かの設定情報、及びコントローラ11がコマンドを遅延して実行するか否かの設定情報が格納される。コマンド情報格納領域152には、後述する図3に示す、テーブル情報が格納される。設定情報格納領域151に格納される複数の設定情報、及びコマンド情報格納領域152に格納されるテーブル情報は、入力部19又はホスト装置2からの指示に従って変更可能である。例えば、ユーザは、入力部19又はホスト装置2を使って、コマンドの種類毎に、ホスト装置2へアラームを通知しない設定をホスト装置2へアラームを通知する設定に変更することができる。
【0025】
図2(B)に示すように、SRAM16は、コマンド展開領域161、コマンド保存領域162、及び最終時刻保存領域163を備えている。コマンド展開領域161は、コントローラ11がホスト装置2から受信したコマンドを展開し、展開されたコマンドに応じた処理を実行する領域である。コマンド保存領域162は、ホスト装置2から受信したコマンドを一時保存する領域である。最終時刻保存領域163は、コントローラ11が最後にコマンドを実行した時刻を保存する領域である。コントローラ11は、最終時刻保存領域163に格納された最終時刻を確認することによって、最終時刻からの経過時間を把握することができる。
【0026】
図3(A)は、アラーム通知対象のコマンド、無視対象のコマンド及び遅延対象のコマンドの関係を示すテーブル情報である。図3(B)は、コマンドの構造を示す図である。
【0027】
図3(A)に示すように、アラーム通知対象のコマンドは、例えば、外字をSRAM16に登録するための外字登録コマンド、及びサーマルプリンタ1をリセットするためのリセットコマンドを含む。単位時間あたり(例えば10分間)のアラーム通知対象のコマンドの実行回数が予め決められた閾値以上の場合に、コントローラ11はホスト装置2へアラームを通知する。尚、コントローラ11はアラーム通知対象のコマンドを受信した場合、当該コマンドを実行する。
【0028】
また、無視対象のコマンドは、例えば、ロゴマークのようなグラフィックイメージをフラッシュメモリ17に登録するグラフィック登録コマンド、及び外字をフラッシュメモリ17に登録するための外字登録コマンドを含む。単位時間あたり(例えば10分間)の無視対象のコマンドの実行回数が予め決められた閾値以上の場合に、コントローラ11は当該コマンドを無視して、当該コマンドを実行しない。この場合、コントローラ11はホスト装置2へアラームを通知してもよい。
【0029】
また、遅延対象のコマンドは、例えば、用紙のカットを指示するための用紙カットコマンドを含む。単位時間あたり(例えば10分間)の遅延対象のコマンドの実行回数が予め決められた閾値以上の場合に、コントローラ11は、所定時間(例えば、単位時間)待機した後、遅延対象のコマンドを実行する。尚、図3のテーブル情報は一例であり、これに限定されるものではない。例えば、用紙カットコマンドは、無視対象のコマンドに含まれていてもよい。
【0030】
尚、無視対象のコマンドや遅延対象のコマンドは、頻繁に実行されるとサーマルプリンタ1の寿命や印字品質に悪影響を発生するコマンドである。例えば、ホスト装置2から大量の無視対象のコマンドや遅延対象のコマンドが短期間にサーマルプリンタ1のフラッシュメモリ17に書き込まれると、フラッシュメモリ17の書き込み回数がフラッシュメモリ17の書き込み耐用回数を超えて、フラッシュメモリ17が故障し、サーマルプリンタ1の寿命が短くなる。また、無視対象のコマンドや遅延対象のコマンドが頻繁に実行されると、印字が途中で中断され、その後再開されると、印字濃度にばらつきが生じ、サーマルプリンタ1の印字品質が低下する。
【0031】
図3(A)では、アラーム通知対象のコマンド、無視対象のコマンド及び遅延対象のコマンドを説明したが、コマンドはこれらに限定されるものではない。例えば、レシートでは、レシートの先頭に印刷されるロゴマークのようなグラフィックイメージの他に、買い物内容を示すデータが含まれる。この買い物内容を示すデータを含む印字コマンドは、単位時間あたりのコマンドの実行回数が予め決められた閾値以上の場合でも、問題のないコマンドである。
【0032】
図3(B)に示すように、各コマンドは、ヘッダ31とデータ部32を備えている。ヘッダ31は、例えば、コマンドの種類を特定する4ビットで構成されている。例えば、ヘッダ31が「0000」の場合は、当該コマンドは、グラフィック登録コマンドを示す。ヘッダ31が「0001」の場合は、当該コマンドは、外字をSRAM16に登録するための外字登録コマンドを示す。コントローラ11は、各コマンドのヘッダ31を確認することで、ホスト装置2から受信したコマンドの種類を判断することができる。データ部32は、実データを示す。例えば、グラフィック登録コマンドの場合、データ部32は、ロゴマークのようなグラフィックイメージである。外字登録コマンドの場合、データ部32は、外字のデータである。
【0033】
図4は、コントローラ11で実行される処理を示すフローチャートである。
【0034】
まず、コントローラ11は、コマンドの種類毎に予め決められた単位時間(例えば10分間)あたりのコマンドの実行回数を取得する(ステップS1)。ここでは、コントローラ11は、コマンドの種類毎に単位時間あたりのコマンドの実行回数を監視している。コントローラ11は、不図示のタイマーを備え、時間を測定しているものとする。
【0035】
コントローラ11は、予め決められた単位時間あたりのコマンドの実行回数が予め決められた閾値以上であるか否かを判別する(ステップS2)。ここでは、コントローラ11は、コマンドの送信元であるホスト装置2がコマンドの送信制御エラーを生じているか否かを判断している。この閾値は、入力部19又はホスト装置2を介して予め不揮発性メモリ15又はSRAM16に設定されている。このため、ユーザは入力部19又はホスト装置2を介してコマンドの種類毎に閾値を変更することができる。
【0036】
ステップS2の判別の結果がNOである場合には、コントローラ11は、ホスト装置2からコマンドを取得し(ステップS3)、SRAM16上でコマンドを展開し、コマンドに応じた処理を実行する(ステップS4)。コントローラ11は、処理が実行されたデータをフラッシュメモリ17に書き込む(ステップS5)。その後、コントローラ11は、コマンドの実行回数を1インクリメントし、最後にコマンドを実行した時刻をSRAM16の最終時刻保存領域155に保存する(ステップS6)。それから、手順はステップS1に戻る。
【0037】
ステップS2の判別の結果がYESである場合には、コントローラ11は、ホスト装置2から取得するコマンドがアラーム通知対象のコマンドであり、且つ設定情報格納領域151に格納されている設定情報がホスト装置2へアラームを通知する設定であるか否かを判別する(ステップS7)。
【0038】
ステップS7の判別の結果がYESである場合には、コントローラ11は、ホスト装置2へアラームを通知する(ステップS8)。これにより、ホスト装置2がコマンドの送信制御エラーを生じていると推定される場合に、警告をホスト装置2に通知することができる。その後、ホスト装置2が、コントローラ11へのコマンドの送信間隔を調整する(即ち、コマンドの送信間隔を長くする)ことで、フラッシュメモリ17への書き込み頻度が減少する。その結果、サーマルプリンタ1の寿命の低下を回避することができる。
【0039】
ステップS7の判別の結果がNOである場合には、コントローラ11は、ホスト装置2から取得したコマンドが無視対象のコマンドであり、且つ設定情報格納領域151に格納されている設定情報がホスト装置2から受信されたコマンドを無視する設定であるか否かを判別する(ステップS9)。
【0040】
ステップS9の判別の結果がYESである場合には、コントローラ11は、ホスト装置2から取得したコマンドを無視する(ステップS10)。このとき、コントローラ11はホスト装置2へアラームを通知してもよい。ステップS10によれば、誤ったタイミングで外部装置から送信されたコマンドの実行タイミングを補正することができ、サーマルプリンタ1の寿命や印字品質の低下を回避することができる。
【0041】
ステップS9の判別の結果がNOである場合には、コントローラ11は、最後にコマンドを処理した時刻を最終時刻保存領域155から読み出し、当該コマンドの実行可能な周期が経過しているか否かを判別する(ステップS11)。ここでは、コントローラ11はコマンドを遅延して実行できるか否かを判断している。尚、コマンドの実行可能な周期は、コマンドの種類毎に予め決められている。ステップS11の判別の結果がNOである場合には、コントローラ11は、当該コマンドをコマンド保存領域162に格納し(ステップS12)、ステップS11の判別を繰り返す。ステップS11の判別の結果がYESである場合には、ステップS3に進み、コントローラ11は、当該コマンドをコマンド保存領域162から取得する。その後、ステップS4で、コントローラ11は、コマンド展開領域161上でコマンドを展開し、コマンドに応じた処理を実行する。コントローラ11がコマンドを遅延して実行する場合、誤ったタイミングで外部装置から送信されたコマンドの実行タイミングを補正することができ、サーマルプリンタ1の寿命や印字品質の低下を回避することができる。
【0042】
サーマルプリンタ1の機能を実現するためのソフトウェアのプログラムが記録されている記録媒体を、コントローラ11に供給し、コントローラ11が記憶媒体に格納されたプログラムを読み出し実行することによっても、上記実施の形態と同様の効果を奏する。プログラムを供給するための記憶媒体としては、例えば、CD−ROM、DVD、又はSDカードなどがある。
【0043】
また、コントローラ11が、サーマルプリンタ1の機能を実現するためのソフトウェアのプログラムを実行することによっても、上記実施の形態と同様の効果を奏する。
【0044】
尚、本発明は、上述した実施の形態に限定されるものではなく、その要旨を逸脱しない範囲内で種々変形して実施することが可能である。
【符号の説明】
【0045】
1 サーマルプリンタ
2 ホスト装置
11 コントローラ
12 駆動部
13 印刷部
14 センサ
15 不揮発性メモリ
16 SRAM
17 フラッシュメモリ
18 インターフェース
19 入力部
21 CPU
22 メモリ
23 インターフェース
24 表示部
25 入力部

【特許請求の範囲】
【請求項1】
コマンドの種類毎に予め決められた単位時間あたりのコマンドの実行回数を監視する監視手段と、
当該予め決められた単位時間あたりのコマンドの実行回数が閾値以上である場合に、コマンドの送信元である外部装置にアラームを通知する通知手段と
を備えていることを特徴とする画像形成装置。
【請求項2】
前記予め決められた単位時間あたりのコマンドの実行回数が閾値以上である場合に、実行すべきコマンドを無視する無視手段を備えていることを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記予め決められた単位時間あたりのコマンドの実行回数が閾値以上であり、且つ実行すべきコマンドを無視しない場合に、実行すべきコマンドをバッファリングし、コマンド毎に規定された実行可能な周期の経過後に当該バッファリングされたコマンドを実行する遅延実行手段を備えていることを特徴とする請求項2に記載の画像形成装置。
【請求項4】
コマンドの種類毎に、前記通知手段のオン/オフ、前記無視手段のオン/オフ及び前記遅延実行手段のオン/オフの少なくとも1つを設定する設定手段を備えることを特徴とする請求項3に記載の画像形成装置。
【請求項5】
前記閾値をコマンドの種類毎に設定する設定手段をさらに備えることを特徴とする請求項1乃至3のいずれか1項に記載の画像形成装置。
【請求項6】
前記画像形成装置は、サーマルプリンタであることを特徴とする請求項1乃至5のいずれか1項に記載の画像形成装置。
【請求項7】
コンピュータを、
コマンドの種類毎に予め決められた単位時間あたりのコマンドの実行回数を監視する監視手段、及び
当該予め決められた単位時間あたりのコマンドの実行回数が閾値以上である場合に、コマンドの送信元である外部装置にアラームを通知する通知手段
として機能させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2012−11636(P2012−11636A)
【公開日】平成24年1月19日(2012.1.19)
【国際特許分類】
【出願番号】特願2010−149472(P2010−149472)
【出願日】平成22年6月30日(2010.6.30)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(501398606)富士通コンポーネント株式会社 (848)
【Fターム(参考)】