(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023141042
(43)【公開日】2023-10-05
(54)【発明の名称】印刷システム、制御方法、プログラム、および印刷装置
(51)【国際特許分類】
G06F 3/12 20060101AFI20230928BHJP
B41J 29/38 20060101ALI20230928BHJP
【FI】
G06F3/12 331
B41J29/38 501
B41J29/38 401
G06F3/12 311
G06F3/12 329
G06F3/12 332
G06F3/12 392
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022047165
(22)【出願日】2022-03-23
(71)【出願人】
【識別番号】000002325
【氏名又は名称】セイコーインスツル株式会社
(74)【代理人】
【識別番号】100142837
【弁理士】
【氏名又は名称】内野 則彰
(74)【代理人】
【識別番号】100166305
【弁理士】
【氏名又は名称】谷川 徹
(74)【代理人】
【識別番号】100171251
【弁理士】
【氏名又は名称】篠田 拓也
(72)【発明者】
【氏名】吉田 大輔
(72)【発明者】
【氏名】吉木 裕一
(72)【発明者】
【氏名】近藤 啓彬
(72)【発明者】
【氏名】北村 義雄
(72)【発明者】
【氏名】畠山 耕一
(72)【発明者】
【氏名】吉田 康輝
(72)【発明者】
【氏名】仲 遼太
【テーマコード(参考)】
2C061
【Fターム(参考)】
2C061AP01
2C061HJ08
2C061HK05
2C061HN05
2C061HN27
(57)【要約】
【課題】コストをかけることなく印刷速度の高速化が可能な技術を提供する。
【解決手段】端末から印刷が要求される印刷装置であって、前記印刷装置の仕様を示す仕様情報を前記端末に送信する仕様情報送信部と、前記印刷装置の状態を示す状態情報を前記端末に送信する状態情報送信部と、前記端末から、印刷する画像を示す印刷画像データと、前記印刷画像データの印刷を行うために前記端末によって導出された印刷制御データとを受信する印刷制御データ受信部と、前記印刷画像データと前記印刷制御データとにもとづき印刷を行う印刷部と、を備えた印刷装置。
【選択図】
図11
【特許請求の範囲】
【請求項1】
印刷装置と、前記印刷装置に印刷を要求する端末とを含む印刷システムであって、
前記印刷装置は、
前記印刷装置の仕様を示す仕様情報を前記端末に送信する仕様情報送信部と、
前記印刷装置の状態を示す状態情報を前記端末に送信する状態情報送信部と、
前記端末から、印刷する画像を示す印刷画像データと、前記印刷画像データの印刷を行うために前記端末によって導出された印刷制御データとを受信する印刷制御データ受信部と、
前記印刷画像データと前記印刷制御データとにもとづき印刷を行う印刷部と、
を備え、
前記端末は、
前記仕様情報を受信する仕様情報受信部と、
前記状態情報を受信する状態情報受信部と、
前記仕様情報と、前記状態情報と、前記印刷画像データとにもとづき、前記印刷制御データを導出する導出部と、
前記印刷画像データと前記印刷制御データとを前記印刷装置に送信するデータ送信部と、
を備えた印刷システム。
【請求項2】
前記端末は、前記仕様情報およびユーザの設定にもとづき定まる特定処理を行うための特定制御内容を示す特定制御データを送信する特定制御データ送信部を備え、
前記印刷装置は、前記特定制御データを受信する特定制御データ受信部を備え、
前記印刷部は、前記特定制御データにもとづき前記特定処理を行う請求項1に記載の印刷システム。
【請求項3】
前記状態情報送信部は、印刷前の前記印刷装置の状態と、印刷中の前記印刷装置の状態とを送信する請求項1または請求項2に記載の印刷システム。
【請求項4】
前記印刷装置は、前記印刷画像データと前記印刷制御データとをリングバッファに記憶する請求項1から請求項3のいずれか1項に記載の印刷システム。
【請求項5】
印刷装置と、前記印刷装置に印刷を要求する端末とを含む印刷システムの制御方法であって、
前記印刷装置は、
前記印刷装置の仕様を示す仕様情報を前記端末に送信し、
前記印刷装置の状態を示す状態情報を前記端末に送信し、
前記端末から、印刷する画像を示す印刷画像データと、前記印刷画像データの印刷を行うために前記端末によって導出された印刷制御データとを受信し、
前記印刷画像データと前記印刷制御データとにもとづき印刷を行い、
前記端末は、
前記仕様情報を受信し、
前記状態情報を受信し、
前記仕様情報と、前記状態情報と、前記印刷画像データとにもとづき、前記印刷制御データを導出し、
前記印刷画像データと前記印刷制御データとを前記印刷装置に送信する、制御方法。
【請求項6】
印刷装置と、前記印刷装置に印刷を要求する端末とを含む印刷システムにおいて前記印刷装置を第1コンピュータとして機能させ、前記端末を第2コンピュータとして機能させるためのプログラムであって、
前記第1コンピュータを、
前記印刷装置の仕様を示す仕様情報を前記端末に送信する仕様情報送信部と、
前記印刷装置の状態を示す状態情報を前記端末に送信する状態情報送信部と、
前記端末から、印刷する画像を示す印刷画像データと、前記印刷画像データの印刷を行うために前記端末によって導出された印刷制御データとを受信する印刷制御データ受信部と、
前記印刷画像データと前記印刷制御データとにもとづき印刷を行う印刷部と、
して機能させ、
前記第2コンピュータを、
前記仕様情報を受信する仕様情報受信部と、
前記状態情報を受信する状態情報受信部と、
前記仕様情報と、前記状態情報と、前記印刷画像データとにもとづき、前記印刷制御データを導出する導出部と、
前記印刷画像データと前記印刷制御データとを前記印刷装置に送信するデータ送信部と、
して機能させるためのプログラム。
【請求項7】
端末から印刷が要求される印刷装置であって、
前記印刷装置の仕様を示す仕様情報を前記端末に送信する仕様情報送信部と、
前記印刷装置の状態を示す状態情報を前記端末に送信する状態情報送信部と、
前記端末から、印刷する画像を示す印刷画像データと、前記印刷画像データの印刷を行うために前記端末によって導出された印刷制御データとを受信する印刷制御データ受信部と、
前記印刷画像データと前記印刷制御データとにもとづき印刷を行う印刷部と、
を備えた印刷装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷システム、制御方法、プログラム、および印刷装置に関する。
【背景技術】
【0002】
サーマルプリンタなどの印刷装置における印刷処理では、印刷を要求するホスト端末上のアプリケーション(以下、「アプリ」と表現することがある)から印刷データが送信される。印刷装置が印刷データを受信すると、印刷装置のファームウェア(以下、「FW」と表現することがある)が、印刷データや印刷装置の状態に合わせて、印刷時の制御内容(モータ加減速制御、ヘッド通電制御など)を導出する。導出された制御内容にもとづき印刷処理が行われる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
このように印刷時の制御内容は、印刷装置のFWにより導出されるが、印刷速度の高速化の要請に伴い、制御内容の導出に要する時間を短くする必要がある。また、モータ加減速制御で導出されるモータ速度や、ヘッド通電制御における通電パルスの計算が複雑化している。これらに対応するためには、処理性能の高い高価なCPU(Central Processing Unit)を使用する必要があるため、大幅なコストアップの原因となる。
【0005】
また、サーマルプリンタは、そもそもハードウェア資源が非常に乏しいという背景がある。例えば、CPUの動作周波数は100メガHz程度で、RAM(Random Access Memory)のサイズも2メガバイト程度である。
【0006】
こうした事情から、適切なコスト内でサーマルプリンタの処理性能の向上を図ってもたかが知れており、十分な処理性能を得ることが困難であった。
【0007】
上記事情に鑑み、本発明は、コストをかけることなく印刷速度の高速化が可能な技術を提供することを目的としている。
【課題を解決するための手段】
【0008】
(1)上述の課題に鑑み、本発明の一態様に係る印刷システムは、印刷装置と、前記印刷装置に印刷を要求する端末とを含む印刷システムであって、前記印刷装置は、前記印刷装置の仕様を示す仕様情報を前記端末に送信する仕様情報送信部と、前記印刷装置の状態を示す状態情報を前記端末に送信する状態情報送信部と、前記端末から、印刷する画像を示す印刷画像データと、前記印刷画像データの印刷を行うために前記端末によって導出された印刷制御データとを受信する印刷制御データ受信部と、前記印刷画像データと前記印刷制御データとにもとづき印刷を行う印刷部と、を備え、前記端末は、前記仕様情報を受信する仕様情報受信部と、前記状態情報を受信する状態情報受信部と、前記仕様情報と、前記状態情報と、前記印刷画像データとにもとづき、前記印刷制御データを導出する導出部と、前記印刷画像データと前記印刷制御データとを前記印刷装置に送信するデータ送信部と、を備えた。
【0009】
(2)本発明の一態様に係る印刷システムにおいて、前記端末は、前記仕様情報およびユーザの設定にもとづき定まる特定処理を行うための特定制御内容を示す特定制御データを送信する特定制御データ送信部を備え、前記印刷装置は、前記特定制御データを受信する特定制御データ受信部を備え、前記印刷部は、前記特定制御データにもとづき前記特定処理を行う。
【0010】
(3)本発明の一態様に係る印刷システムにおいて、前記状態情報送信部は、印刷前の前記印刷装置の状態と、印刷中の前記印刷装置の状態とを送信する。
【0011】
(4)本発明の一態様に係る印刷システムにおいて、前記印刷装置は、前記印刷画像データと前記印刷制御データとをリングバッファに記憶する。
【0012】
(5)上述の課題に鑑み、本発明の一態様に係る制御方法は、印刷装置と、前記印刷装置に印刷を要求する端末とを含む印刷システムの制御方法であって、前記印刷装置は、前記印刷装置の仕様を示す仕様情報を前記端末に送信し、前記印刷装置の状態を示す状態情報を前記端末に送信し、前記端末から、印刷する画像を示す印刷画像データと、前記印刷画像データの印刷を行うために前記端末によって導出された印刷制御データとを受信し、前記印刷画像データと前記印刷制御データとにもとづき印刷を行い、前記端末は、前記仕様情報を受信し、前記状態情報を受信し、前記仕様情報と、前記状態情報と、前記印刷画像データとにもとづき、前記印刷制御データを導出し、前記印刷画像データと前記印刷制御データとを前記印刷装置に送信する。
【0013】
(6)上述の課題に鑑み、本発明の一態様に係るプログラムは、印刷装置と、前記印刷装置に印刷を要求する端末とを含む印刷システムにおいて前記印刷装置を第1コンピュータとして機能させ、前記端末を第2コンピュータとして機能させるためのプログラムであって、前記第1コンピュータを、前記印刷装置の仕様を示す仕様情報を前記端末に送信する仕様情報送信部と、前記印刷装置の状態を示す状態情報を前記端末に送信する状態情報送信部と、前記端末から、印刷する画像を示す印刷画像データと、前記印刷画像データの印刷を行うために前記端末によって導出された印刷制御データとを受信する印刷制御データ受信部と、前記印刷画像データと前記印刷制御データとにもとづき印刷を行う印刷部と、して機能させ、前記第2コンピュータを、前記仕様情報を受信する仕様情報受信部と、前記状態情報を受信する状態情報受信部と、前記仕様情報と、前記状態情報と、前記印刷画像データとにもとづき、前記印刷制御データを導出する導出部と、前記印刷画像データと前記印刷制御データとを前記印刷装置に送信するデータ送信部と、して機能させるためのプログラム。
【0014】
(7)上述の課題に鑑み、本発明の一態様に係る印刷装置は、端末から印刷が要求される印刷装置であって、前記印刷装置の仕様を示す仕様情報を前記端末に送信する仕様情報送信部と、前記印刷装置の状態を示す状態情報を前記端末に送信する状態情報送信部と、前記端末から、印刷する画像を示す印刷画像データと、前記印刷画像データの印刷を行うために前記端末によって導出された印刷制御データとを受信する印刷制御データ受信部と、前記印刷画像データと前記印刷制御データとにもとづき印刷を行う印刷部と、を備えた。
【図面の簡単な説明】
【0015】
【
図3】印刷装置の機能構成を表す機能ブロック図である。
【
図5】プリンタスペックデータの構造例を示す図である。
【
図6】規定メカ動作設定データの構造例を示す図である。
【
図7】印刷前プリンタ状態データの構造例を示す図である。
【
図8】印刷中プリンタ状態データの構造例を示す図である。
【
図9】各制御パラメータデータの構造例を示す図である。
【
図10】3ドットライン分の各制御パラメータデータの構造例を示す図である。
【
図11】印刷装置の処理の流れを示すフローチャートである。
【
図12】FW起動処理の流れを示すフローチャートである。
【
図13】受信処理の流れを示すフローチャートである。
【
図14】印刷処理の流れを示すフローチャートである。
【
図15】端末の処理の流れを示すフローチャートである。
【
図16】印刷アプリ起動処理の流れを示すフローチャートである。
【
図17】送信処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0016】
以下、本発明の具体的な構成例について、図面を参照しながら説明する。
図1は、本実施形態に係る印刷システム10の構成例を示す図である。印刷システム10は、印刷装置100と、印刷装置に印刷を要求する端末200とを含む。
図1では、端末200の一例として、スマートフォンを用いているが、印刷装置に印刷を要求可能な端末(例えばPC(Personal Computer)など)であればよい。
【0017】
次に、端末200、印刷装置100の機能構成について説明する。
図2は、端末200の機能構成を示すブロック図である。
図3は、印刷装置100の機能構成を示すブロックである。
図4は、
図2、
図3で説明される各種データの内容を示す図である。以下、
図4を参照しながら、端末200、印刷装置100のブロック図について説明する。なお、以下の説明において、「アプリケーション」を単に「アプリ」と表現することがある。また、以下の説明で用いられる「プリンタ」は、印刷装置と同義とする。さらに、「印刷」と「印字」も同義である。
【0018】
図2において、端末200は、UI(ユーザインタフェース)210、ユーザアプリケーション220、プリンタ制御アプリケーション230、およびデータ送受信部240で構成される。ユーザアプリケーション220、プリンタ制御アプリケーション230は、演算装置、記憶装置、表示装置、および操作装置などソフトウェアにより実現される。演算装置は、CPU(Central Processing Unit)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等のハードウェアである。記憶装置は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリなど、揮発性記憶装置や不揮発性記憶装置である。UI210は、液晶や有機EL(Electro-Luminescence)ディスプレイなどである。操作装置は、タッチパネルや、ハードキーである。ユーザアプリケーション220、およびプリンタ制御アプリケーション230をまとめて「印刷アプリ」と表現することがある。
【0019】
データ送受信部240は、本実施形態では印刷装置100との通信を行う。通信には、Bluetooth(登録商標)やWifi(登録商標)など各種プロトコルが用いられる。UI210は、上記タッチパネルなどによりユーザの操作を受け付けたり、ディスプレイによりユーザに各種情報を表示する。本実施形態において、UI210は、メカ制御設定を行う操作や、印刷内容指定を行う操作や、印刷指示などの各操作を受け付ける。このうちの印刷内容指定は、印刷装置100に印刷を要求する画像の指定である。印刷指示は、印刷内容指定により指定された画像の印刷の開始の指示である。メカ制御設定により設定されるメカ制御設定データは、
図4に示されるように、ユーザが印刷処理に対して行う設定データ群である。メカ制御設定データとして、印字濃度、印字速度、感熱紙設定などが挙げられる。なお、メカ制御設定データとして、罫線印刷部のみ濃度増加、ラダーバーコード印刷部のみの低速印刷、イメージ印刷部のみ部分諧調印刷など、個別設定を設けてもよい。
【0020】
ユーザアプリケーション220は、ユーザアプリ起動制御部221、印刷画像作成部222、および印刷開始制御部223で構成される。ユーザアプリ起動制御部221は、UI210からメカ制御設定を受信し、プリンタ制御アプリケーション230に送信する。印刷画像作成部222は、印刷内容指定により指定された、印刷装置100に印刷を要求する画像を示す印刷画像データを作成し、印刷開始制御部223に通知する。印刷開始制御部223は、印刷指示を受信すると、印刷情報をプリンタ制御アプリケーション230に送信する。印刷情報は、印刷の指示が受け付けられたことや、印刷画像データを特定する情報などを含む。
【0021】
プリンタ制御アプリケーション230は、プリンタアプリ起動制御部231、および印刷データ送信制御部232で構成される。プリンタアプリ起動制御部231は、プリンタスペックデータを印刷装置100から受信し、それを保持するとともに、印刷データ送信制御部232に送信する。このプリンタスペックデータは、印刷装置の仕様を示す仕様情報の一例である。プリンタスペックデータは、
図3に示されるように、印刷装置100における印刷を制御するためのデータである各種パラメータの算出に必要なスペックを示すデータ群である。プリンタスペックデータとして、機種名、モータ相制御、モータステップ制御、最高印字速度、加速テーブル、減速方法、エネルギー制御の各パラメータ、電源スペック、ヘッド温度上昇特性、エラー時制御方法、およびデータ展開用バッファ情報などが挙げられる。
【0022】
プリンタアプリ起動制御部231は、上述したメカ制御設定データを受信し、メカ制御設定データを保持するとともに、印刷データ送信制御部232に送信する。さらに、プリンタアプリ起動制御部231は、規定メカ動作設定データを作成し、作成した規定メカ動作設定データを印刷装置100に送信する。規定メカ動作設定データは、あらかじめ指定可能な処理の動作方法を示すデータ群であり、プリンタスペックデータおよびメカ制御設定データにもとづき定まる特定処理を行うための特定制御内容を示す特定制御データの一例である。規定メカ動作設定データとして、エラー発生時の動作方法(減速方法、エラー解除再印刷の有無など)、フィード動作方法、バックラッシュ吸収ステップなどが挙げられる。これにより印刷装置100は、エラー発生時は各制御パラメータを使ったメカ制御から、エラー発生時の動作に切り替える。なお、印刷装置100は、フィードやバックラッシュなど、メカ制御のパラメータをあらかじめ指定可能な動作については、規定メカ動作設定に従って動作するようにしてもよい。
【0023】
印刷データ送信制御部232は、ユーザアプリケーション220から印刷情報を受信し、受信した印刷画像データを保持する。また、印刷データ送信制御部232は、プリンタスペックデータと、後述する印刷前プリンタ状態データと、メカ制御設定データと、印刷画像データとにもとづき、各制御パラメータデータを導出し、印刷装置100に送信する。各制御パラメータデータは、1帳票分のメカ制御パラメータデータ群であり、印刷制御データの一例である。各制御パラメータデータは、1ドットライン毎の以下のパラメータから構成される。パラメータとして、モータパルス幅、分割方法、ヘッドパルス幅(分割毎)、制御方法(履歴制御、諧調制御、パルスチョッピング指定)などが挙げられる。
【0024】
印刷データ送信制御部232は、印刷装置100から印刷前プリンタ状態データを受信し、印刷前プリンタ状態データを保持する。印刷前プリンタ状態データは、印字開始時のプリンタの状態を示すデータ群であり、印刷装置の状態で変化する状態情報の一例である。印刷前プリンタ状態データとして、電源電圧、ヘッド温度、環境温度、前回印字終了時からの経過時間などが挙げられる。印刷前プリンタ状態データは、上述した各制御パラメータデータの導出において、プリンタ動作開始時の初期値として使用される。初期値以外の印字中の各制御パラメータは、印刷データ送信制御部232がシミュレーションを行い導出する。
【0025】
印刷データ送信制御部232は、プリンタ印刷データを保持する。このプリンタ印刷データは、上記印刷画像データと上記各制御パラメータとをまとめて1つにしたデータであり、印刷装置100に送信される。印刷データ送信制御部232は、印刷装置100から印刷中プリンタ状態データを受信し、印刷中プリンタ状態データを保持する。印刷中プリンタ状態データは、印刷中のプリンタの状態を示すデータ群である。プリンタ状態データとして、電源電圧、ヘッド温度、およびエラー発生有無の情報などが挙げられる。印刷中プリンタ状態データは、保持しているプリンタスペックデータの補正などに用いてもよい。
【0026】
上記プリンタアプリ起動制御部231は、仕様情報受信部の一例である。印刷データ送信制御部232は、状態情報受信部、導出部、およびデータ送信部の一例である。
【0027】
引き続き
図3を用いて印刷装置100の機能構成について説明する。
図3において、印刷装置100は、データ送受信部110、記憶部120、FW(ファームウェア)130、およびプリンタメカニズム140で構成される。データ送受信部110、およびFW130は、演算装置などハードウェアにより実現される。演算装置は、CPU、ASIC、FPGA等のハードウェアである。
【0028】
データ送受信部110は、本実施形態では端末200との通信を行う。通信には、上述したようにBluetoothやWifiなど各種プロトコルが用いられる。記憶部120は、フラッシュメモリ121、SDRAM(Synchronous Dynamic Random Access Memory)122で構成される。フラッシュメモリ121は、FW121により、FW内プリンタスペックデータが記憶され、また更新される。FW内プリンタスペックデータは、上述したプリンタスペックデータの元となるFW130が印刷装置100において管理するデータである。SDRAM122には、FW130により、規定メカ動作設定データおよびプリンタ印刷データが記憶される。
【0029】
FW130は、起動処理部131、プリンタ状態取得送信処理部132、コマンド解析部133、および印刷実行処理部134で構成される。起動処理部131は、端末200から規定メカ動作設定データを受信し、SDRAM122に規定メカ動作設定データを記憶する。起動処理部131は、フラッシュメモリ121に記憶されたFW内プリンタスペックデータを読み取り、プリンタスペックデータとして端末200に送信する。
【0030】
プリンタ状態取得送信処理部132は、プリンタメカニズム140から印刷前プリンタ状態データを取得して、印刷前プリンタ状態データとして端末200に送信する。また、プリンタ状態取得送信処理部132は、プリンタメカニズム140から印刷中プリンタ状態データを取得して、印刷中プリンタ状態データとして端末200に送信する。
【0031】
コマンド解析部133は、端末200からプリンタ印刷データを受信し、SDRAM122にプリンタ印刷データを記憶する。また、コマンド解析部133は、プリンタ印刷データを受信すると、印刷実行処理部134に印刷処理の起動を要求する。印刷実行処理部134は、コマンド解析部133から印刷処理の起動が要求されると、SDRAM122に記憶されたプリンタ印刷データおよび規定メカ動作設定データを読み取り、プリンタメカニズム140を制御する。プリンタメカニズム140は、感熱紙に印刷するサーマルヘッドや、感熱紙を搬送するステッピングモータなど、印刷を行うための各種メカで構成される。
【0032】
上述したように、印刷実行処理部134は、SDRAM122に記憶されたプリンタ印刷データおよび規定メカ動作設定データを読み取り、プリンタ印刷データに含まれる各制御パラメータに応じて印刷制御を行えばよい。したがって、各制御パラメータを導出する必要がないため、高性能なCPUは必要なく、また導出時間は不要となることから、コストをかけることなく印刷速度の高速化が可能となる。
【0033】
次に、上述したいくつかのデータの構造例を説明する。
図5は、プリンタスペックデータの構造例を示す図である。なお、
図5の例では、XML(Extensible Markup Language)形式を用いた例を示している。
【0034】
図5に示されるように、プリンタスペックデータには、機種名、モータに関するデータ、サーマルヘッドに関するデータ、電源に関するデータ、および制御に関するデータが含まれる。このうちのモータに関するデータとして、モータ相制御、モータステップ制御、最高速、加速テーブル、および減速制御を示すデータが含まれる。サーマルヘッドに関するデータとして、印字エネルギー(E0、dE)、ヘッド抵抗値、および温度情報を示すデータが含まれる。電源に関する情報として、電源電圧、最大電流、およびピーク電流を示すデータが含まれる。制御に関するデータとして、デフォルトエラー制御、バッファサイズ、およびバッファ枚数を示すデータが含まれる。
【0035】
図6は、規定メカ動作設定データの構造例を示す図である。なお、
図6の例では、XML形式を用いた例を示している。
図6に示されるように、規定メカ動作設定データには、エラー時、フィード時、およびバックラッシュにおける制御内容を示すデータが含まれる。
図6の場合、エラー時、フィード時、およびバックラッシュでは、いずれもディフォルト制御とすることを示すデータとなっている。
【0036】
図7は、印刷前プリンタ状態データの構造例を示す図である。なお、
図7の例では、XML形式を用いた例を示している。
図7に示されるように、印刷前プリンタ状態データには、電源電圧、ヘッド温度、環境温度、前回印刷からの経過時間を示すデータが含まれる。
【0037】
図8は、印刷中プリンタ状態データの構造例を示す図である。なお、
図8の例では、XML形式を用いた例を示している。
図8に示されるように、印刷中プリンタ状態データには、1ドットライン目から変化のあったヘッドラインにおける、電源電圧、ヘッド温度、環境温度、および前回印刷からの経過時間を示すデータが含まれる。
【0038】
図9は、各制御パラメータデータの構造例を示す図である。
図9に示される各制御パラメータデータは、1ドットライン毎のパラメータデータを印刷するドットライン数分、文字列形式で送信する場合のデータを示している。
図9に示される各制御パラメータデータには、モータパルス幅、制御方法、分割回数、ヘッドデータ終了位置(分割1)、ヘッドパルス幅、ヘッドデータ終了位置(分割2)、ヘッドパルス幅が含まれる。
図9の場合、サーマルヘッドの1ラインを2分割して印加するため、1つめの分割の終了位置とヘッドパルス幅と、2つめの分割の終了位置とヘッドパルス幅とが含まれる。
【0039】
図10は、3ドットライン分の各制御パラメータデータの構造例を示す図である。文字列データは"3707,n,2,28,320,72,345,2291,n,3,18,260,39,254,72,277,1769,n,1,72,241"は、1ドットラインごとに分割すると、以下のようになる。なお、「n」は制御方法がノーマル(履歴、諧調、パルスチョッピング無しとする制御)であることを示す。
"3707,n,2,28,320,72,345"
"2291,n,3,18,260,39,254,72,277"
"1769,n,1,72,241"
【0040】
図10の各制御パラメータでは、1ドットラインから3ドットラインまでのモータパルス幅は、3707us、2291us、1769usであることを示している。1ドットラインから3ドットラインまでの制御方法は、3ドットラインともノーマルであることを示している。1ドットラインから3ドットラインまでの分割回数は、2回、3回、1回であることを示している。1ドットライン目のヘッドパルス幅は、320us、345usであることを示している。2ドットライン目のヘッドパルス幅は、260us、254us、277usであることを示している。3ドットライン目のヘッドパルス幅は、241usであることを示している。
【0041】
次に、フローチャートを用いて、印刷装置100および端末200の処理の流れについて説明する。
図11は、印刷装置100の処理の流れを示すフローチャートである。
図11において、印刷装置100は、電源投入やリセット復帰時などの起動時において、まずFW起動処理を行い(ステップS101)、次いで受信処理を行い(ステップS102)、印刷処理を(ステップS103)、再び受信処理を行う(ステップS102)。このようにFW起動処理以降は、受信して印刷する処理を繰り返す処理の流れとなる。
【0042】
図12は、FW起動処理(ステップS101)の流れを示すフローチャートである。
図12において、印刷装置100は、フラッシュメモリ121からFW内プリンタスペックデータを読み取ること、または自己診断機能等により、プリンタスペックデータを取得する(ステップS201)。次いで、印刷装置100は、端末200との接続待ちとなる(ステップS202)。端末200が接続されると(ステップS202:YES)、印刷装置100は、プリンタスペックデータを端末200に送信する(ステップS203)。
【0043】
次いで、印刷装置100は、端末200からの送信される規定メカ動作設定データの受信待ちとなる(ステップS204)。規定メカ動作設定データが受信されると(ステップS204:YES)、印刷装置100は、受信した規定メカ動作設定データをSDRAM122に記憶して(ステップS205)、処理を終了する。
【0044】
図13は、受信処理(ステップS102)の流れを示すフローチャートである。
図13において、印刷装置100は、端末200からの送信される印刷前プリンタ状態データを要求する印刷前プリンタ状態要求の受信待ちとなる(ステップS301)。印刷前プリンタ状態要求が受信されると(ステップS301:YES)、印刷装置100は、プリンタメカニズム140から印刷前プリンタ状態データを取得して、端末200に送信する(ステップS302)。
【0045】
次いで、印刷装置100は、端末200からの送信されるプリンタ印刷データの受信待ちとなる(ステップS303)。プリンタ印刷データが受信されると(ステップS303:YES)、印刷装置100は、受信したプリンタ印刷データをSDRAM122に記憶して(ステップS304)、処理を終了する。このとき、印刷実行処理部134に印刷処理の起動が要求される。なお、SDRAM122にリングバッファを用意しておき、プリンタ印刷データをリングバッファに記憶してもよい。すなわち、印刷画像データと印刷制御データとをリングバッファに記憶してもよい。リングバッファとすることで、バッファの管理が容易になり、また過去の印刷データは上書きされるので、限られたリソースの範囲内でバッファを設けることができる。
【0046】
図14は、印刷処理(ステップS103)の流れを示すフローチャートである。
図14において、印刷装置100は、上記ステップS304で記憶されたプリンタ印刷データに応じて、1ドットライン分の印刷制御を行う(ステップS401)。例えば、
図10に示した各制御パラメータデータでは、まず"3707,n,2,28,320,72,345"に応じて制御される。上述したように、各制御パラメータデータは、端末200が導出したものである。したがって、印刷装置100は、印刷制御を行えばよい。よって、各制御パラメータを導出する必要がないため、導出時間は不要となることから、コストをかけることなく印刷速度の高速化が可能となる。
【0047】
印刷装置100は、プリンタメカニズム140から印刷中プリンタ状態データを取得する(ステップS402)。印刷装置100は、印刷が完了したか否かを判定する(ステップS402)。印刷が完了していない場合には(ステップS403:NO)、印刷装置100は、次の1ドットライン分の印刷制御を行うために、ステップS401に戻る。
【0048】
印刷が完了した場合には(ステップS403:YES)、印刷装置100は、端末200から送信される、印刷中プリンタ状態データを要求する印刷中プリンタ状態要求を受信したか否かを判定する(ステップS404)。印刷中プリンタ状態要求を受信しなかった場合には(ステップS404:NO)、印刷装置100は、処理を終了する。印刷中プリンタ状態要求を受信した場合には(ステップS404:YES)、印刷装置100は、ステップS402で取得した印刷中プリンタ状態データを端末200に送信し(ステップS405)、処理を終了する。
【0049】
次に、端末200の処理の流れについて説明する。
図15は、端末200の処理の流れを示すフローチャートである。
図15において、端末200は、端末200の起動時や、印刷アプリの起動時などの起動時において、まず印刷アプリ起動処理を行い(ステップS501)、次いでユーザの操作に応じて送信処理を行い(ステップS502)、再びユーザの操作に応じて送信処理を行う(ステップS502)。このように印刷アプリ起動処理以降は、ユーザの操作に応じて送信処理を繰り返す処理の流れとなる。
【0050】
図16は、印刷アプリ起動処理(ステップS501)の流れを示すフローチャートである。
図16において、端末200は、メカ制御設定データを取得する(ステップS601)。ここでは上述したように、UI210によりユーザがメカ制御設定を行う操作により取得されたり、以前行った操作により設定され、保持されているメカ制御設定データが取得される。
【0051】
端末200は、印刷装置100との接続待ちとなる(ステップS602)。印刷装置100が接続されると(ステップS602:YES)、端末200は、プリンタスペックデータの受信待ちとなる(ステップS603)。端末200は、プリンタスペックデータを受信すると(ステップS603:YES)、受信したプリンタスペックデータを保持する(ステップS604)。端末200は、プリンタスペックデータおよびメカ制御設定データにもとづき規定メカ動作設定データを作成する(ステップS605)。端末200は、作成した規定メカ動作設定データを印刷装置100に送信し(ステップS606)、処理を終了する。
【0052】
図17は、送信処理(ステップS502)の流れを示すフローチャートである。
図17において、端末200は、印刷装置100に印刷を要求する画像を示す印刷画像データを作成する(ステップS701)。端末200は、印刷前プリンタ状態要求を送信する(ステップS702)。端末200は、印刷前プリンタ状態データの受信待ちとなる(ステップS703)。印刷前プリンタ状態データを受信すると(ステップS703:YES)、端末200は、プリンタスペックデータと、印刷前プリンタ状態データと、メカ制御設定データと、印刷画像データとにもとづき、各制御パラメータを導出する(ステップS704)。
【0053】
端末200は、印刷装置100に印刷制御データを送信する(ステップS705)。その後、端末200は、印刷中プリンタ状態要求を送信する(ステップS706)。この印刷中プリンタ状態要求は必ずしも送信しなくてもよく、例えば、送信処理を複数回行ったうちの1回あたりの頻度で送信してもよい。端末200は、印刷中プリンタ状態データの受信待ちとなる(ステップS707)。印刷中プリンタ状態データを受信すると(ステップS707:YES)、端末200は、印刷中プリンタ状態データにもとづき、プリンタスペックデータを更新し(ステップS708)、処理を終了する。
【0054】
上述した実施形態により、コストをかけることなく印刷速度の高速化が可能となる。また、規定メカ動作設定データとして、エラー発生時の動作方法(減速方法、エラー解除再印刷の有無など)、フィード動作方法、バックラッシュ吸収ステップを印刷装置100が記憶しておくことで、印刷装置100は、端末200に問い合わせることなく、エラー発生時は各制御パラメータを使ったメカ制御から、エラー発生時の動作に切り替えることができる。なお、印刷装置100は、エラー停止時に、どの位置でどのようなエラーで停止したかなどのデータをログデータとしてプリンタ制御アプリケーション230に通知してもよい。この場合、プリンタ制御アプリケーション230は、ログデータに応じて再印刷時にエラーを回避するように活用できるようにしてもよい。また、プリンタ制御アプリケーション230は、ユーザアプリケーション220において、ユーザにより入力された濃度やカスレに関する情報を受け付けて、パラメータを調整する仕組みを設けてもよい。
【0055】
さらに、印刷装置100は、印刷前の印刷装置100の状態(印刷前プリンタ状態データ)と、印刷中の印刷装置100の状態(印刷中プリンタ状態データ)とを送信することで、印刷装置100の動的な状態変動に対応することができる。さらに、印刷装置100のSDKとして、プリンタ制御アプリケーション230を提供しておき、サードパーティでユーザアプリケーションを作成する場合がある。この場合、印刷装置100の制御パラメータは全てプリンタ制御アプリケーション230が導出するため、サードパーティ側で印刷装置100の制御パラメータを意識せずにユーザアプリケーションを作成できる。
【0056】
以上説明した実施形態において、プリンタスペックデータを印刷装置100の機種名など印刷装置100を特定可能なデータのみとしてもよい。この場合、端末200は、例えば予め印刷装置100の機種名ごとに、プリンタスペックデータを記憶しておき、その中からプリンタスペックデータを取得してもよい。または、クラウド上に、機種名ごとにプリンタスペックデータを記憶しておき、端末200がクラウドから取得してもよい。
【0057】
上述した印刷装置100の処理を実行させるためのプログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク、SSD(Solid State Drive)等の記憶装置である。画像処理プログラムは、電気通信回線を介して送信されてもよい。
【0058】
上述した実施形態における印刷装置100の機能をコンピュータで実現するようにしても良い。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【0059】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0060】
10 印刷システム
100 印刷装置
110 データ送受信部
120 記憶部
121 フラッシュメモリ
131 起動処理部
132 プリンタ状態取得送信処理部
133 コマンド解析部
134 印刷実行処理部
134 および印刷実行処理部
140 プリンタメカニズム
200 端末
221 ユーザアプリ起動制御部
222 印刷画像作成部
223 印刷開始制御部
223 および印刷開始制御部
230 プリンタ制御アプリケーション
231 プリンタアプリ起動制御部
232 印刷データ送信制御部
240 データ送受信部