IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ カシオ計算機株式会社の特許一覧

特開2024-135755印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム
<>
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図1
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図2
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図3
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図4
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図5
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図6
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図7
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図8
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図9
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図10
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図11
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図12
  • 特開-印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024135755
(43)【公開日】2024-10-04
(54)【発明の名称】印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システム
(51)【国際特許分類】
   G06F 3/12 20060101AFI20240927BHJP
   B41J 29/00 20060101ALI20240927BHJP
   B41J 29/38 20060101ALI20240927BHJP
   H04L 47/36 20220101ALI20240927BHJP
【FI】
G06F3/12 362
B41J29/00 E
B41J29/38 401
G06F3/12 303
H04L47/36
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2023046607
(22)【出願日】2023-03-23
(71)【出願人】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】110004185
【氏名又は名称】インフォート弁理士法人
(74)【代理人】
【識別番号】100121083
【弁理士】
【氏名又は名称】青木 宏義
(74)【代理人】
【識別番号】100138391
【弁理士】
【氏名又は名称】天田 昌行
(74)【代理人】
【識別番号】100074099
【弁理士】
【氏名又は名称】大菅 義之
(74)【代理人】
【識別番号】100182936
【弁理士】
【氏名又は名称】矢野 直樹
(72)【発明者】
【氏名】河原 利尚
【テーマコード(参考)】
2C061
5K030
【Fターム(参考)】
2C061AP01
2C061AQ04
2C061AQ05
2C061AS08
2C061CG15
2C061HJ08
2C061HK03
2C061HK11
2C061HN05
2C061HN08
2C061HN15
2C061HP00
5K030GA03
5K030HA08
5K030HB04
5K030HB28
5K030JL01
5K030LE13
(57)【要約】
【課題】外部装置と印刷装置との間での無線通信によるデータの送受信の効率を向上させる。
【解決手段】外部装置としての印刷制御装置(4)は、印刷装置(2)と無線通信を行う無線通信部(400)と、印刷装置が行う複数の別個の処理の各々と関連付けられる複数の別個のデータであって、無線通信部を介して印刷装置に送信される複数の別個のデータを、無線通信におけるデータの送信単位の最大サイズに基づいて1つの送信単位内に集約した集約データ(720)を生成する制御部(400)と、を備える。印刷制御装置(4)は、プログラム(ラベル作成アプリ411)を実行するスマートフォン、タブレット型コンピュータ等であり得る。
【選択図】図10
【特許請求の範囲】
【請求項1】
印刷装置と無線通信を行う無線通信部と、
前記印刷装置が行う複数の別個の処理の各々と関連付けられる複数の別個のデータであって、前記無線通信部を介して前記印刷装置に送信される前記複数の別個のデータを、前記無線通信におけるデータの送信単位の最大サイズに基づいて1つの送信単位内に集約した集約データを生成する制御部と、
を備える印刷制御装置。
【請求項2】
前記制御部は、前記複数の別個のデータの各々の種類を判定し、判定結果に基づいて前記1つの送信単位内にデータを集約する、請求項1に記載の印刷制御装置。
【請求項3】
前記制御部は、前記複数の別個のデータの各々のサイズと、前記印刷装置が前記複数の別個のデータの各々に基づいて行う処理の順序と、に基づいて、前記1つの送信単位内に集約可能な最大数のデータを集約する、請求項1に記載の印刷制御装置。
【請求項4】
前記制御部は、前記1つの送信単位内に集約するデータの数と、前記印刷装置が前記複数の別個のデータの各々に基づいて行う処理の順序と、に基づいて、前記1つの送信単位内にデータを集約する、請求項1に記載の印刷制御装置。
【請求項5】
前記制御部は、前記1つの送信単位内の未使用領域のサイズと、前記複数の別個のデータの各々のサイズと、に基づいて、前記1つの送信単位内の未使用領域に追加のデータを格納可能であるか否かを判定する、請求項1に記載の印刷制御装置。
【請求項6】
前記制御部が生成した前記集約データに集約された複数の別個のデータを識別する集約情報を記憶する記憶部、を更に備え、
前記制御部は、前記集約データを受信した前記印刷装置が前記集約データに含まれる複数の別個のデータの各々に基づいて実行した処理の結果を含む応答データを受信したときに、前記記憶部の前記集約情報を参照して、前記印刷装置における前記処理が正常に行われたか否かを判定する、
請求項1に記載の印刷制御装置。
【請求項7】
前記集約データに集約された複数の別個のデータの各々は、前記印刷装置との無線通信に使用するデータ送信フォーマットに従う構成である、請求項1に記載の印刷制御装置。
【請求項8】
前記データの送信単位は、パケットである、請求項1に記載の印刷制御装置。
【請求項9】
印刷装置と無線通信により接続される印刷制御装置が、
前記無線通信におけるデータの送信単位の最大サイズを設定することと、
前記印刷装置が行う複数の別個の処理の各々と関連付けられる複数の別個のデータであって、前記無線通信部を介して前記印刷装置に送信される前記複数の別個のデータを、前記無線通信におけるデータの送信単位の最大サイズに基づいて1つの送信単位内に集約した集約データを生成することと、
を実行する印刷制御方法。
【請求項10】
印刷装置と無線通信により接続される印刷制御装置のコンピュータに、
前記無線通信におけるデータの送信単位の最大サイズを設定することと、
前記印刷装置が行う複数の別個の処理の各々と関連付けられる複数の別個のデータであって、前記無線通信部を介して前記印刷装置に送信される前記複数の別個のデータを、前記無線通信におけるデータの送信単位の最大サイズに基づいて1つの送信単位内に集約した集約データを生成することと、
を実行させるプログラム。
【請求項11】
請求項1~8のいずれか一項の印刷制御装置と無線通信を行い、前記印刷制御装置が送信したデータを受信する無線通信部と、
受信した前記データが前記集約データである場合に、前記複数の別個のデータの各々に基づく処理を行い、前記処理の結果を前記無線通信におけるデータの送信単位の最大サイズに基づいて1つの送信単位内に格納した応答データを生成する制御部と、
を備える印刷装置。
【請求項12】
印刷装置と、前記印刷装置の動作を制御する印刷制御装置と、を含み、
前記印刷制御装置は、
前記印刷装置と無線通信を行う無線通信部と、
前記印刷装置が行う複数の別個の処理の各々と関連付けられる複数の別個のデータであって、前記無線通信部を介して前記印刷装置に送信される前記複数の別個のデータを、前記無線通信におけるデータの送信単位の最大サイズに基づいて1つの送信単位内に集約した集約データを生成する制御部と、を備え、
前記印刷装置は、
前記印刷制御装置と無線通信を行い、前記印刷制御装置が送信したデータを受信する無線通信部と、
受信した前記データが前記集約データである場合に、前記複数の別個のデータの各々に基づく処理を行い、前記処理の結果を前記無線通信におけるデータの送信単位の最大サイズに基づいて1つの送信単位内に格納した応答データを生成する制御部と、を備える、
印刷システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システムに関する。
【背景技術】
【0002】
テープ状の被印刷媒体に印刷を行う印刷装置には、パーソナルコンピュータやスマートフォン等の外部装置から取得した印刷データに基づいて印刷を行うものがある。この種の印刷装置には、外部装置との間で所定の無線通信規格に従う無線通信を行うことにより、外部装置から印刷データを取得するものがある(例えば、特許文献1を参照)。印刷装置は、外部装置から送信された印刷データを含む種々のデータを受信し、受信したデータに基づいて印刷処理等を行う。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2016-173792号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、外部装置と印刷装置との間で行われる無線通信では、データの送信単位(例えば、1パケット)のサイズと比べて実際に送信するデータのサイズが小さく、送信データにおける未使用の領域のサイズが大きくなることがある。
【0005】
本発明の一側面に係る目的は、外部装置と印刷装置との間での無線通信によるデータの送受信の効率を向上させることが可能な技術を提供することである。
【課題を解決するための手段】
【0006】
本発明の一態様に係る印刷制御装置は、印刷装置と無線通信を行う無線通信部と、前記印刷装置が行う複数の別個の処理の各々と関連付けられる複数の別個のデータであって、前記無線通信部を介して前記印刷装置に送信される前記複数の別個のデータを、前記無線通信におけるデータの送信単位の最大サイズに基づいて1つの送信単位内に集約した集約データを生成する制御部と、を備える。
【発明の効果】
【0007】
上記の態様によれば、外部装置と印刷装置との間での無線通信によるデータの送受信の効率を向上させることができる。
【図面の簡単な説明】
【0008】
図1】一実施形態に係る印刷システムの構成例を説明する図である。
図2】情報処理装置及び印刷装置の機能構成例を示すブロック図である。
図3】コンピュータのハードウェア構成例を示すブロック図である。
図4】情報処理装置と印刷装置との無線通信におけるMTUサイズを設定する処理の一例を説明するシーケンス図である。
図5】MTUサイズの設定後に情報処理装置と印刷装置との間で行われる処理の従来例を説明するシーケンス図である。
図6図5の処理において情報処理装置から印刷装置に向けて送信されるデータの例を示す図である。
図7】一実施形態に係る印刷システムで情報処理装置から印刷装置に向けて送信されるデータの例を説明する図である。
図8】集約データを作成したときに情報処理装置が保持する集約情報の例を示す図である。
図9】一実施形態に係る情報処理装置が行う集約データ作成処理の一例を説明するフローチャートである。
図10】一実施形態に係る印刷システムでMTUサイズの設定後に情報処理装置と印刷装置との間で行われる処理の例を説明するシーケンス図である。
図11】印刷装置が行うコマンド群処理の例を説明するフローチャートである。
図12】コマンド群処理中に印刷装置が確保するメモリ領域の例を示す図である。
図13】一実施形態に係る印刷システムで印刷装置から情報処理装置に向けて送信される応答データの例を説明する図である。
【発明を実施するための形態】
【0009】
以下、図面を参照して、本発明の実施形態を説明する。
【0010】
図1は、一実施形態に係る印刷システムの構成例を説明する図である。図1に例示した印刷システム1は、印刷装置2と、印刷制御装置としての情報処理装置4とを含む。
【0011】
印刷装置2は、印刷データに基づいてテープ状の被印刷媒体3に印刷を行ってラベルを作成すること、及び所定の無線通信規格に従う無線通信を外部装置と行うことが可能な装置である。無線通信規格は、例えば、Wi-Fi(登録商標)、Bluetooth(登録商標)、BLE(Bluetooth Low Energy(登録商標))等であり得る。印刷装置2は、無線通信に加えて、例えば、USB(Universal Serial Bus)ケーブル等の伝送ケーブルにより接続された外部装置と伝送ケーブルを介して通信を行うことが可能であってもよい。
【0012】
情報処理装置4は、印刷装置2の動作を制御する印刷制御装置として情報処理装置4を機能させるラベル作成アプリケーションを実行可能であり、かつ印刷装置2との間で少なくとも無線通信が可能な装置である。情報処理装置4は、例えば、スマートフォン、タブレット型コンピュータ、ノートブック型コンピュータ等であり得る。
【0013】
図1に例示した情報処理装置4は、表示装置の表示領域上に入力装置としての位置検出装置(例えば、デジタイザ)が配置されたタッチパネルディスプレイ490を有する。ラベル作成アプリケーションを実行している情報処理装置4は、オブジェクト(テキストボックス、表、及びその他の図形等)の挿入、文字等の入力、フォントの設定等の編集操作に応じて、印刷イメージ495を作成してタッチパネルディスプレイ490に表示することができる。情報処理装置4に対して印刷(ラベルの作成)を実行するための操作が行われると、情報処理装置4は、印刷イメージ495と対応した画像データを含む印刷データを作成して印刷装置2に向けて送信する。印刷データを受信した印刷装置2は、印刷データに基づいて被印刷媒体3への印刷を行い、被印刷媒体3のうちの印刷が行われた部分を印刷装置2の外部に排出する。このように情報処理装置4を利用して作成された印刷データを印刷装置2に送信して被印刷媒体3を行うことを可能にすることにより、例えば、複数の情報処理装置4の各々により1つの印刷装置2の印刷動作を制御することができる。このため、1つの印刷装置2を複数の利用者で共有する場合の利便性を向上させることができる。
【0014】
図2は、情報処理装置及び印刷装置の機能構成例を示すブロック図である。
【0015】
情報処理装置4は、機能構成の観点では、図2に例示したように、制御部400と、記憶部410と、入力部420と、表示部430と、無線通信部440とを含む。
【0016】
情報処理装置4の制御部400は、OS(Operating System)のプログラムを含む各種のプログラムを実行し、情報処理装置4の動作を制御する。情報処理装置4は、記憶部410に記憶させたラベル作成アプリ411のプログラムを制御部400が実行することにより、印刷制御装置として機能する。ラベル作成アプリ411は、情報処理装置4を利用した、被印刷媒体3に印刷する文字や図形等のオブジェクトの編集、印刷イメージ495の表示、印刷データの作成及び印刷装置2への送信等の、ラベルの作成に関連した各種の機能を提供するソフトウェアの例である。ラベル作成アプリ411は、情報処理装置4が実行するプログラムと、プログラムを実行する情報処理装置4が利用可能なオブジェクト等のデータとを含む。本実施形態に係る情報処理装置4の制御部400は、印刷装置2が行う複数の別個の処理の各々と関連付けられる複数の別個のデータを、無線通信におけるデータの送信単位の最大サイズに基づいて1つの送信単位内に集約した集約データを生成する。
【0017】
情報処理装置4の記憶部410は、制御部400が実行する各種のプログラム、プログラムを実行している制御部400が参照する各種のデータを記憶する。印刷制御装置として機能する情報処理装置4の記憶部410は、ラベル作成アプリ411、印刷データ412、及び集約情報413等を記憶する。ラベル作成アプリ411は、印刷装置2に送信する印刷データ412を作成して印刷装置2に送信するためのプログラム及び各種のデータを含む。集約情報413は、図8を参照して後述するように、無線通信における1つのパケットに収まるように集約された、印刷装置2で連続して行われる複数の別個の処理のそれぞれと対応付けられる複数の別個のデータを示す情報である。集約されたデータに含まれる複数の別個のデータは、コマンド、命令等と呼ばれてもよい。また、本明細書では、無線通信におけるデータの送信単位をパケットとするが、データの送信単位は、パケットに限定されない。
【0018】
情報処理装置4の入力部420は、情報処理装置4に対する各種の情報の入力を受け付ける。情報処理装置4の表示部430は、各種の情報を可視化して表示する。表示部430は、例えば、液晶ディスプレイ等のドットマトリクス型のフラットパネルディスプレイを含む。情報処理装置4の入力部420は、例えば、表示部430の表示領域に重ねて配置された位置検出装置を含んでもよい。
【0019】
情報処理装置4の無線通信部440は、少なくとも、印刷装置2がサポートする所定の無線通信規格に従う無線通信を行う。無線通信部440は、例えば、Wi-Fi、BLE等の近距離無線通信規格に従って、印刷装置2と無線通信を行う。
【0020】
印刷装置2は、機能構成の観点では、図2に例示したように、制御部200と、記憶部210と、入力部220と、表示部230と、無線通信部240と、検出部250と、搬送部260と、印字部270と、切断部280と、を含む。
【0021】
印刷装置2の制御部200は、OSのプログラムを含む各種のプログラムを実行し、印刷装置2の動作を制御する。印刷装置2の記憶部210は、制御部200が実行する各種のプログラム、プログラムを実行している制御部200が参照する各種のデータ等を記憶する。印刷装置2の記憶部210は、MTU(Maximum Transmission Unit)設定値211、及び印刷データ212等を記憶する。MTU設定値211は、情報処理装置4との無線通信におけるデータの送信単位(1つのパケット)の最大サイズであるMTUサイズの設定値である。印刷データ212は、情報処理装置4から印刷装置2に転送された印刷データ412、又は印刷装置2を利用して作成された印刷データである。
【0022】
印刷装置2の入力部220は、印刷装置2に対する各種の情報の入力を受け付ける。入力部220は、例えば、電源のオン・オフを切り替えるスイッチ、無線通信の設定を切り替えるスイッチ、印刷装置2の設定を初期化するスイッチ等を含む。入力部220は、例えば、印刷データ212の作成に利用可能なキーボード装置を含んでもよい。印刷装置2の表示部230は、各種の情報を可視化して表示する。表示部230は、例えば、印刷装置2の動作状態を提示するパイロットランプを含む。表示部230は、例えば、印刷データ212等の表示に利用可能な、液晶ディスプレイ等のドットマトリクス型の表示装置を含んでもよい。液晶ディスプレイ等の表示装置を備えた印刷装置2の入力部220は、表示装置の表示領域に重ねて配置された位置検出装置を含んでもよい。
【0023】
印刷装置2の無線通信部240は、所定の無線通信規格に従い、情報処理装置4を含む外部装置との無線通信を行う。無線通信部240は、例えば、Wi-Fi、BLE等の近距離無線通信規格に従って外部装置との無線通信を行う。無線通信部240は、単一の無線通信規格による無線通信のみが可能であってもよいし、無線通信規格が異なる複数種類の無線通信を同時に、又は選択的に行うことが可能であってもよい。
【0024】
印刷装置2の検出部250は、被印刷媒体3に関する各種の情報を検出する。検出部250は、例えば、被印刷媒体3を供給するカートリッジが印刷装置2に装着されているか否かを検出するセンサ、及び印刷装置2に装着されたカートリッジから供給される被印刷媒体3の種類(例えば、幅や色など)を検出するセンサを含む。検出部250は、例えば、印刷装置2における被印刷媒体3の搬送経路上の所定位置に被印刷媒体3が存在するか否かを検出するセンサ等を含んでもよい。被印刷媒体3を供給するカートリッジは、例えば、被印刷媒体3への印字に利用されるインクリボンを備えたものであってもよい。被印刷媒体3を供給するカートリッジは、例えば、アダプタと呼ばれることがある、開閉可能な蓋部を有し、被印刷媒体3の詰め替え、異なる種類の被印刷媒体3への交換等が可能なものであってもよい。
【0025】
印刷装置2の搬送部260は、制御部200からの制御信号に基づいて、カートリッジから供給される被印刷媒体3を搬送経路に沿って搬送する。印刷装置2の印字部270は、制御部200からの制御信号に基づいて、被印刷媒体3への印字を行う。印字部270は、例えば、サーマルヘッドを含み、サーマルヘッドから被印刷媒体3又はインクリボンに熱を印加することにより、被印刷媒体3への印字を行う。印字部270は、その他の印字方式、例えば、インクジェット方式により被印刷媒体3への印字を行うものであってもよい。切断部280は、制御部200からの制御信号に基づいて、被印刷媒体3を切断する。切断部280は、例えば、被印刷媒体3の全体を切断して被印刷媒体3を2つに分離するフルカットと呼ばれることがある切断と、被印刷媒体3を分離しないよう部分的に切断するハーフカットと呼ばれることがある切断と、を選択的に行うことが可能な構成であってもよい。
【0026】
図2を参照して上述した情報処理装置4は、各機能を提供するための専用の装置によって実現されてもよいし、プログラムを実行するコンピュータにより実現されてもよい。また、印刷装置2における制御部200、入力部220、表示部230、及び無線通信部240は、各機能を提供するための専用の装置によって実現されてもよいし、プログラムを実行するコンピュータにより実現されてもよい。
【0027】
図3は、コンピュータのハードウェア構成例を示すブロック図である。図3には、情報処理装置4として利用可能なコンピュータ5のハードウェア構成例を示している。コンピュータ5は、プロセッサ501、メモリ502、補助記憶装置503、入力装置504、表示装置505、無線通信装置506、及び入出力インタフェース507を含む。コンピュータ5におけるこれらのハードウェア構成要素501~507は、バス508により相互に接続されている。なお、図3に例示したコンピュータ5において1つのブロックで示されるハードウェア構成要素は、単一のハードウェアに限らず、2つ以上の別個のハードウェアを含んでもよい。
【0028】
プロセッサ501は、OSのプログラム、ラベル作成アプリ411等のアプリケーションプログラムを実行し、種々の機能を提供する。プログラムを実行するプロセッサ501は、図2を参照して上述した情報処理装置4の制御部400として機能する。プロセッサ501は、例えば、CPU(Central Processing Unit)であり得る。プロセッサ501は、例えば、CPUに加え、DSP(Digital Signal Processor)又はGPU(Graphic Processing Unit)のいずれか一方、又は両方を含んでもよい。
【0029】
メモリ502及び補助記憶装置503は、プロセッサ501が実行するプログラム、プロセッサ301がプログラムを実行する際に必要となるデータ、プロセッサ501が生成したデータ等を記憶する。メモリ502は、主記憶装置、メインメモリ、一次記憶装置、内部記憶装置等と呼ばれることがあり、ROM(Read Only Memory)及びRAM(Random Access Memory)を含む。メモリ502としてのROM及びRAMの一部又は全部は、プロセッサ501と一体化されていてもよい。補助記憶装置503は、二次記憶装置、外部記憶装置等と呼ばれることがあり、HDD(Hard Disk Drive)又はSSD(Solid State Drive)等であり得る。
【0030】
図3に例示した補助記憶装置503内のラベル作成アプリ411は、プロセッサ501により実行されたときに、印刷データを作成して印刷装置2に送信するための各種の処理をコンピュータ5に実施させるプログラムである。コンピュータ5においてラベル作成アプリ411を実行する場合、ラベル作成アプリ411に含まれるプログラムの一部または全部が補助記憶装置503からメモリ502のRAMにロードされる。メモリ502及び補助記憶装置503は、ラベル作成アプリ411のプログラムを格納する非一時的なコンピュータ可読記録媒体の例であり得る。
【0031】
入力装置504は、コンピュータ5に対する入力操作を受け付ける。入力装置504は、上述したタッチパネルディスプレイ490の位置検出装置を含むことができる。入力装置504は、位置検出装置とは別の1つ以上のハードウェア(例えば、ボタンスイッチ、スライドスイッチ、キーボード、マウス等)を含むことができる。表示装置505は、各種情報を可視化して表示する。表示装置505は、例えば、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ等のフラットパネルディスプレイであり得る。
【0032】
無線通信装置506は、少なくとも印刷装置2との無線通信を行うことが可能な通信装置である。例えば、無線通信装置506は、Wi-Fi、Bluetooth、及びBLE等の近距離無線通信規格のうちの少なくとも1つに従って、印刷装置2と無線通信を行う装置であり得る。無線通信装置506は、例えば、インターネット等の通信ネットワークを介して、外部装置(例えば、サーバ装置)からラベル作成アプリ411をダウンロードすることに利用されてもよい。
【0033】
入出力インタフェース507は、コンピュータ5に周辺機器を接続するハードウェアインタフェースである。入出力インタフェース507は、例えば、USBポートを含む。印刷装置2の種類によっては、例えば、付加的に、一端がコンピュータ5の入出力インタフェース507のUSBポートに接続され、他端が印刷装置2のUSBポートに接続されたUSBケーブルにより、コンピュータ5と印刷装置2と通信可能に接続されてもよい。
【0034】
なお、コンピュータ5は、図3を参照して上述したハードウェア構成要素とは別のハードウェア構成要素を含んでもよい。例えば、コンピュータ5は、メモリカードと呼ばれることもあるカード型記憶装置の記憶領域にアクセスして情報の読み出し、書き込み等を行うためのスロット(媒体アクセス装置)を含んでもよい。また、コンピュータ5は、例えば、入出力インタフェース507が省略されたものであってもよい。更に、図3に例示したコンピュータ5において2つ以上のブロックで示している複数のハードウェア構成要素は、単一のハードウェアに統合されていてもよい。例えば、コンピュータ5の複数のハードウェア構成要素は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、SoC(System on Chip)等により提供されてもよい。
【0035】
また、詳細な説明は省略するが、図2を参照して上述した印刷装置2における制御部200、記憶部210、入力部220、表示部230、及び無線通信部240が、プログラムを実行するコンピュータにより実現されてもよい。
【0036】
上述した情報処理装置4から印刷装置2に印刷データを送信し、印刷装置2に印刷データに基づく被印刷媒体3への印刷を行わせるときには、まず、情報処理装置4と印刷装置2との無線通信におけるMTUサイズが設定される。
【0037】
図4は、情報処理装置と印刷装置との無線通信におけるMTUサイズを設定する処理の一例を説明するシーケンス図である。図4には、周知の印刷システムにおいて行われるMTUサイズを設定する処理を概略的に示している。MTUサイズを設定する処理は、特定の処理に限定されない。そのため、本明細書では、具体的な処理の説明を省略し、概略的な説明のみをする。MTUサイズを設定する処理及びその他の処理における情報処理装置4と印刷装置2との無線通信は、例えば、UDP(User Datagram Protocol)により行われる。
【0038】
印刷装置2は、情報処理装置4からの印刷データを受信可能な状態であるときには、無線通信部240によりアドバタイズと呼ばれるブロードキャスト通信を行っている。無線通信部240は、例えば、Wi-FiにおけるSSID(Service Set Identifier)、Bluetooth及びBLEにおけるビーコン等を、アドバタイズとして定期的に発信している。
【0039】
例えば、情報処理装置4においてラベル作成アプリ411のプログラムが実行されたとき、情報処理装置4は、印刷装置2からのアドバタイズを受信したか否かに基づいて、無線通信可能な印刷装置2を検索する。情報処理装置4は、印刷装置2からのアドバタイズを受信すると、受信したアドバタイズに基づいて、無線通信による接続(以下「無線接続」と記載する)が可能な印刷装置2を識別する情報を保持する(ステップS1)。複数の印刷装置2からアドバタイズを受信した場合、情報処理装置4は、複数の印刷装置2を識別する複数の情報を保持する。
【0040】
情報処理装置4は、その後の所定のタイミングで、印刷装置2との無線接続を試みる。印刷装置2との無線接続を試みる処理は、ラベル作成アプリ411のプログラムを実行する情報処理装置4が自動的に行ってもよいし、情報処理装置4の利用者による所定の操作を契機として行われてもよい。
【0041】
印刷装置2との無線接続を試みるとき、情報処理装置4は、印刷装置2に対して接続要求を送信する(ステップS2)。無線接続可能な印刷装置2が1つの場合、情報処理装置4は、その1つの印刷装置2に対して接続要求を送信する。無線接続可能な印刷装置2が複数の場合、情報処理装置4は、複数の印刷装置2のうちの1つの印刷装置2に対して接続要求を送信する。接続要求を送信する印刷装置2は、情報処理装置4の利用者による所定の操作により選択されてもよいし、ラベル作成アプリ411のプログラムを実行する情報処理装置4が所定の選択ルールに基づいて自動的に選択してもよい。
【0042】
接続要求を受信した印刷装置2は、その接続要求を送信した情報処理装置4との無線接続が可能である場合、接続要求を送信した情報処理装置4に対して接続完了の通知をする(ステップS3)。情報処理装置4が印刷装置2からの接続完了の通知を受信すると、情報処理装置4と印刷装置2とが無線接続される。
【0043】
情報処理装置4と印刷装置2とが無線接続されると、情報処理装置4は、印刷装置2との無線通信におけるMTUサイズの設定要求を印刷装置2に送信する(ステップS4)。情報処理装置4は、例えば、OSの種類やバージョン、無線通信部440の仕様等に基づいて、MTUサイズを設定する。印刷装置2は、MTUサイズの設定要求を受信すると、受信した設定要求に応じたMTUサイズを設定し、設定完了の通知を情報処理装置4に送信する(ステップS5)。その後、印刷装置2は、設定したMTUサイズを記憶部210に保存する(ステップS6)。
【0044】
情報処理装置4と印刷装置2との無線通信におけるMTUサイズが設定された後、情報処理装置4は、印刷装置2に印刷データを送信し、印刷データに基づく被印刷媒体3への印刷を印刷装置2に行わせることができる。本実施形態の印刷システム1におけるMTUサイズの設定後に情報処理装置4と印刷装置2との間で行われる処理を説明する前に、図5を参照して、MTUサイズの設定後に情報処理装置と印刷装置との間で行われる処理の従来例を説明する。
【0045】
図5は、MTUサイズの設定後に情報処理装置と印刷装置との間で行われる処理の従来例を説明するシーケンス図である。図5には、情報処理装置4Aから印刷装置2Aに印刷データを送信し、印刷データに基づく被印刷媒体3への印刷を印刷装置2Aに行わせるときに、情報処理装置4Aと印刷装置2Aとの間で行われる処理(印刷シーケンス)の従来例を示している。情報処理装置4A及び印刷装置2Aは、それぞれ、本実施形態に係る情報処理装置4及び印刷装置2と類似の構成のものであり得るが、後述する集約データを利用できない点で本実施形態に係る情報処理装置4及び印刷装置2と異なる。
【0046】
図5の印刷シーケンスでは、情報処理装置4Aから印刷装置2Aに印刷データを送信する前に、被印刷媒体3への印刷に関する複数のコマンドが情報処理装置4Aから印刷装置2Aに送信される。図5の従来例では、「START」、「ID COMP」、「Tape Paper Confirm」、「RESET Confirm」、「Print Speed Confirm」、「Format Confirm」、「TapeCut Confirm」、「Battery Confirm」の8つのコマンドが情報処理装置4Aから印刷装置2Aに送信される。「START」は、印刷シーケンスの開始を通知(指示)するコマンドである。「ID COMP」は、例えば、印刷装置2Aの機種を確認するコマンドである。「Tape Paper Confirm」は、例えば、被印刷媒体3に関する評価をするためのコマンドである。「RESET Confirm」は、例えば、リセットに関するコマンドである。「Print Speed Confirm」は、例えば、印刷時の被印刷媒体3の搬送速度に関するコマンドである。「Format Confirm」は、例えば、印刷データの展開方法に関するコマンドである。「TapeCut Confirm」は、例えば、切断部280による被印刷媒体3の切断に関するコマンドである。「Battery Confirm」は、印刷装置2Aの電源電圧の評価に関するコマンドである。なお、印刷データを送信する前に情報処理装置4Aから印刷装置2Aに送信するコマンドは、上記8つのコマンドに限定されない。「START」を除く他の7つのコマンドのうちの1つ以上が省略されてもよいし、上記8つのコマンドとは別のコマンドが含まれてもよい。
【0047】
図5の従来例では、上記8つのコマンドが、1つずつ別個に、情報処理装置4Aから印刷装置2Aに送信される。印刷装置2Aは、1つのコマンドを受信するごとに、受信した1つのコマンドに基づく処理を実行し、処理結果(ACK応答)を情報処理装置4Aに送信する。図5の従来例では、すべての処理結果を「ACK応答」としているが、コマンドに対する処理結果として印刷装置2Aから情報処理装置4Aに送信されるデータは、特定の形式のデータに限定されない。情報処理装置4Aは、送信した1つのコマンドに対する印刷装置2Aからの処理結果(ACK応答)を受信し、処理結果に問題がないことを確認すると、次の1つのコマンドを印刷装置2Aに送信する。例えば、情報処理装置4Aは、「START」を印刷装置2Aに送信した場合(ステップS21)、印刷装置2Aから「START」に対するACK応答を受信し(ステップS22)、処理結果に問題がないことを確認すると、「ID COMP」を印刷装置2Aに送信する(ステップS23)。そして、上記8つのコマンドの各々に対する印刷装置2Aからの処理結果(ACK応答)を受信すると(ステップS21~S36が完了すると)、情報処理装置4Aは、印刷データを印刷装置2Aに送信する(ステップS37)。印刷データの送信には、例えば、「Print Image Confirm」というコマンドが用いられる。印刷装置2Aは、「Print Image Confirm」により送信された印刷データを記憶部210に保存する(ステップS38)。
【0048】
情報処理装置4Aは、印刷データの送信が完了すると、印刷装置2Aに印字要求のコマンド(例えば「Print Request」)を送信する(ステップS39)。印字要求のコマンドを受信した印刷装置2Aは、情報処理装置4Aからのコマンドによる指示及び印刷データに基づいて被印刷媒体3への印刷を行い、その処理結果(ACK応答)を情報処理装置4Aに送信する(ステップS40)。情報処理装置4Aは、印字要求のコマンドに対する印刷装置2AからのACK応答を受信し、処理結果に問題がないことを確認すると、印刷シーケンスの終了を通知(指示)するコマンド(例えば「END」)を印刷装置2Aに送信する(ステップS41)。情報処理装置4Aが、送信したコマンド(「END」)に対する印刷装置2AからのACK応答を受信すると(ステップS42)、印刷シーケンスが終了する。
【0049】
図6は、図5の処理において情報処理装置から印刷装置に向けて送信されるデータの例を示す図である。図6の最上部に示した1つのパケット7は、設定されたMTUサイズのパケット内の構造とサイズとの関係を模式的に示している。1つのパケット7は、ヘッダー、パケットID、サイズ(パケットのデータ長)、及びデータ部を含む。MTUサイズは、例えば、情報処理装置4Aから印刷装置2Aに送信する印刷データのサイズに基づいて設定される。MTUサイズは、例えば、1つの印刷データのすべてが1つのパケット7のデータ部内に収まるようなサイズに設定される。そのため、情報処理装置4Aから印刷装置2Aに送信するパケットは、図6に例示したパケット708のように、データ部の未使用領域が非常に小さくなる、又は0になる。
【0050】
これに対し、図5に例示した印刷シーケンスにおいて情報処理装置4Aから印刷装置2Aに送信される「START」、「ID COMP」等のコマンドのサイズは、印刷データのサイズと比べて非常に小さい。このため、8つのコマンドの各々を、個別に情報処理装置4Aから印刷装置2Aに送信する場合、各コマンドを送信する各パケットは、図6に例示したパケット700、701、・・・、707のようになり、データ部の未使用領域が非常に大きくなる。図示を省略するが、印刷装置2Aから情報処理装置4Aに送信される各コマンドに対する処理結果(ACK応答)の各パケットも、データ部の未使用領域が非常に大きくなる。このような未使用領域の大きいパケットを情報処理装置4Aと印刷装置2Aとの間で複数回送信することは、印刷シーケンスにおいて不必要な通信時間の増大を招き、情報処理装置4Aと印刷装置2Aとの間でのデータの送受信の効率を低下させる。また、不必要な通信時間の増大は、情報処理装置4A及び印刷装置2Aにおける消費電力量の増大を招く。
【0051】
本実施形態の印刷システム1では、印刷シーケンスにおける不必要な通信時間の増大を防ぐために、印刷装置2が行う異なる処理の各々に対応付けられる複数のデータ(コマンド、ACK応答等)を1つのパケットに集約して送信する。
【0052】
図7は、一実施形態に係る印刷システムで情報処理装置から印刷装置に向けて送信されるデータの例を説明する図である。図7には、図5を参照して上述した8つのコマンド(「START」、「ID COMP」、「Tape Paper Confirm」、「RESET Confirm」、「Print Speed Confirm」、「Format Confirm」、「TapeCut Confirm」、「Battery Confirm」)を1つのパケット720に集約して送信する例を示している。また、図7には、比較のために、1つのコマンド(「START」)のみを送信する1つのパケット700も示している。
【0053】
本実施形態の印刷システム1では、図7に例示したパケット720のように、従来例における複数のパケット(図6を参照)の各々からデータ部の未使用領域を除いた部分(以下「必要最小部分」と記載する)を抽出して1つのパケット720に集約する。図7のパケット720における「Pakcet0」、「Packet1」、・・・、「Packet7」は、それぞれ、図6に例示した「START」、「ID COMP」、・・・、「Battery Confirm」の各コマンドを送信するパケット700、701、・・・、707の必要最小部分である。これらの必要最小部分の各々は、図5を参照して上述した印刷シーケンスにおいて情報処理装置4Aと印刷装置2Aとの間で送受信される1つのパケットと同じ送信フォーマットになっている。例えば、パケット720における「Packet0」は、ヘッダー、パケットID、サイズ、及び「START」を含んでおり、データ部の未使用領域を含まない点を除き、図6に例示した「START」を送信するパケット701と同じ構成になっている。
【0054】
パケット720に集約した複数の必要最小部分は、各必要最小部分の前側(図面では左側)に付された識別用付加情報「Tag0」、「Tag1」、・・・、「Tag7」により識別される。更に、パケット720は、集約した必要最小部分の数を示すカウント情報「TAG CNT」を先頭部分に含む。このように、情報処理装置4から印刷装置2に送信する複数のデータの各々における必要最小部分のみを1つのパケット720に集約することにより、送信する1つのパケット720における未使用領域を小さくすることができる。また、図5の従来例では8つのパケットにより8回に分けて情報処理装置4Aから印刷装置2Aに送信された8つのコマンドを、1つのパケット720により1回で送信することができる。しかも、1つのパケット720のサイズは、図5の従来例における1つのパケットと同じMTUサイズであるため、本実施形態の印刷システム1では、8つのコマンドを送信するのに必要な通信時間が大幅に短縮する。
【0055】
パケット720のように複数の必要最小部分を集約した集約データを作成して印刷装置2に送信する場合、情報処理装置4は、集約した複数の必要最小部分の各々がどのデータ(コマンド)と対応した必要最小部分であるかを識別する集約情報413を保持する。
【0056】
図8は、集約データを作成したときに情報処理装置が保持する集約情報の例を示す図である。図8には、印刷装置2に送信する集約データとして図7に例示した1つのパケット720を作成した場合に情報処理装置4が保持する集約情報413を模式的に示している。
【0057】
図8に例示した集約情報413には、1つのパケット720に含まれる8個のデータ(コマンド)を識別する識別用付加情報「Tag n(nは0~7のいずれか)」とTag nにより識別される必要最小部分「Packet n」に含まれるコマンドを示す情報が関連付けられて格納される。本明細書では、「Tag」及び「Packet」に続く数値を変数nで表す場合、nが変数であることを明確にするために、間にスペースを挿入する。また、集約情報413には、集約されたデータの数を示すカウント情報「TAG CNT」が格納される。集約情報413内にこれらの情報を格納するときの各情報の並べ方等の形式は、特定の形式に限定されない。
【0058】
パケット720のような複数の必要最小部分を集約した集約データの作成方法は、特定の方法に限定されない。例えば、1つのパケット720におけるデータ部のサイズが、印刷シーケンスにおいて印刷データ送信前に印刷装置2に送信するすべてのコマンドについての必要最小部分を集約可能な十分に大きいサイズであれば、自動的にすべての必要最小部分を1つのパケット720に集約してもよい。また、集約データは、例えば、1つのパケット720におけるデータ部のサイズと、印刷シーケンスにおいて印刷データ送信前に印刷装置2に送信するすべてのコマンドについての必要最小部分のサイズとの関係に応じて、集約する必要最小部分の数が変更されてもよい。
【0059】
図9は、一実施形態に係る情報処理装置が行う集約データ作成処理の一例を説明するフローチャートである。図9に例示したフローチャートに沿った処理は、ラベル作成アプリ411を実行する情報処理装置4の制御部400が行う。
【0060】
情報処理装置4は、集約データ作成処理を開始すると、まず、集約データ用の1つのパケットにおける集約可能サイズQを取得し(ステップS101)、集約するデータ(コマンド)の数をカウントする変数nの初期値及び最大値を決定する(ステップS102)。ステップS101で取得する集約可能サイズQは、未使用領域のサイズであり、例えば、MTUサイズから上述した「TAG CNT」を格納する領域のサイズを減算したサイズであり得る。ステップS102において、変数nの初期値及び最大値は、例えば、印刷データ送信前に印刷装置2に送信するすべてのコマンドの数に基づいて設定する。変数nが整数値の変数であり、印刷データ送信前に8つのコマンドを印刷装置2に送信する必要がある場合、例えば、変数nの初期値を0に設定し、最大値を7に設定する。なお、ステップS101及びS102の処理は、順序が逆であってもよいし、並列に行われてもよい。
【0061】
次に、情報処理装置4は、識別用付加情報「Tag n」が付される必要最小部分「Packet n」を生成し、そのサイズQnを導出する(ステップS103)。ステップS103において、情報処理装置4は、複数のコマンドのうちの送信順(印刷装置2での処理順)がn番目のコマンドについてのパケットにおける必要最小部分を生成する。具体的には、従来例でn番目のコマンドのみを送信するときに生成するパケット(図6を参照)におけるヘッダー、パケットID、及びサイズと、n番目のコマンドとして印刷装置2に送信するデータとを結合した、未使用領域を含まないデータを生成する。また、ステップS103において、情報処理装置4は、サイズQnとして、例えば、識別用付加情報「Tag n」と生成した必要最小部分「Packet n」とを格納する領域のサイズを導出する。
【0062】
次に、情報処理装置4は、ステップS3で導出したサイズQnと集約可能サイズQとを比較し、Q≧Qnであるか否かを判定する(ステップS104)。Q<Qnの場合、直前のステップS103で生成した必要最小部分「Packet n」を、集約データ用の1つのパケットにおける未使用領域に格納することができない。そのため、Q<Qnの場合(ステップS104;NO)、情報処理装置4は、その時点における集約情報413に基づいて、印刷装置2に送信する集約データ(1つのパケット)を作成し(ステップS108)、集約データ作成処理を終了する。この場合、情報処理装置4の記憶部410における集約情報413には、直前のステップS103で生成した必要最小部分「Packet n」が格納されていない。このため、ステップS104の判定が「NO」になってステップS108が行われるとき、情報処理装置4が作成する集約データは、識別用付加情報「Tag n」及び生成した必要最小部分「Packet n」を含まないデータである。従って、ステップS104の判定が「NO」になってステップS108が行われるとき、情報処理装置4は、その時点での変数nの値に基づいて、集約データに集約されるデータの数を示す「TAG CNT」の値をn-1に設定し、印刷装置2に送信する1つのパケットにおける先頭部分に格納する。また、情報処理装置4は、「Tag n」及び「Packet n」を、変数nの値が小さい順に、パケットの未使用領域内に前詰めで(言い換えると、未使用領域内で先頭となるビットから)格納する。ステップS108では、集約情報413の「TAG CNT」にも同じ値(n-1)が格納される。
【0063】
Q≧Qnの場合(ステップS104;YES)、情報処理装置4は、次に、「Tag n」及び「Packet n」を集約情報413に格納する(ステップS105)。
【0064】
ステップS105の後、情報処理装置4は、変数nが最大値以上であるか否かを判定する(ステップS106)。変数nが最大値以上である場合(ステップS106;YES)、情報処理装置4は、その時点における集約情報413に基づいて印刷装置2に送信する集約データを作成し(ステップS108)、集約データ作成処理を終了する。ステップS106の判定が「YES」になってステップS108が行われるとき、情報処理装置4は、その時点での変数nの値に基づいて、集約データに集約されるデータの数を示す「TAG CNT」の値をnに設定する。
【0065】
変数nが最大値未満である場合(ステップS106;NO)、情報処理装置4は、Q=Q-Qnの演算により集約可能サイズQを更新し(ステップS107)、ステップS103以降の処理を行う。そして、ステップS104の判定が「NO」になるか、ステップS106の判定が「YES」になると、情報処理装置4は、その時点における集約情報413に基づいて印刷装置2に送信する集約データを作成し(ステップS108)、集約データ作成処理を終了する。
【0066】
図10は、一実施形態に係る印刷システムでMTUサイズの設定後に情報処理装置と印刷装置との間で行われる処理の例を説明するシーケンス図である。
【0067】
本実施形態の印刷システム1における情報処理装置4は、MTUサイズの設定後に、図9を参照して上述した集約データ作成処理を行い、作成した集約データを印刷装置2に送信する。このため、図5の従来例と対応する、本実施形態の印刷システム1における印刷シーケンスは、図10に示したようになる。すなわち、情報処理装置4は、「Print Image Confirm」により印刷データを印刷装置2に送信する前に、8つのコマンドを含む第1の集約データ(1つのパケット720)を印刷装置2に送信する(S61)。第1の集約データを受信した印刷装置2は、第1の集約データに含まれる必要最小部分「Packet n(nは0~7のいずれか)」を抽出し、抽出した「Packet n」に含まれるコマンドに基づく処理を実行するコマンド群処理を行う(ステップS62)。ステップS62のコマンド群処理の具体例は、図11を参照して後述する。その後、印刷装置2は、第1の集約データに含まれる複数のコマンドの各々に基づく処理の結果(ACK応答)を情報処理装置4に送信する(ステップS63)。
【0068】
第1の集約データに対するACK応答を受信した情報処理装置4は、受信したACK応答において問題がないことを確認すると、「Print Image Confirm」により印刷データを印刷装置2に送信する(ステップS64)。印刷装置2は、「Print Image Confirm」により送信された印刷データを記憶部210に保存する(ステップS65)。
【0069】
情報処理装置4は、印刷データの送信が完了すると、例えば、図9に示した集約データ作成処理を再度行う。このとき、情報処理装置4は、印字要求のコマンド(例えば「Print Request」)についての必要最小部分「Packet 0」と、印刷シーケンスの終了を通知(指示)するコマンド(例えば「END」)についての必要最小部分「Packet 1」とを含む第2の集約データを作成し、印刷装置2に送信する(ステップS66)。印刷装置2は、第2の集約データに含まれる必要最小部分「Packet n」を抽出し、抽出した「Packet n」に含まれるコマンドに基づく処理を実行するコマンド群処理を行う(ステップS67)。ステップS67のコマンド群処理の具体例は、図11を参照して後述される。その後、印刷装置2は、第2の集約データに含まれる複数のコマンドの各々に基づく処理の結果(ACK応答)を情報処理装置4に送信する(ステップS68)。情報処理装置4は、第2の集約データに対する印刷装置2からのACK応答を受信すると、印刷シーケンスが終了する。
【0070】
このように、本実施形態の印刷システム1では、情報処理装置4からの集約データを受信した印刷装置2が、受信した集約データに含まれる複数のコマンドの各々に基づく処理(コマンド群処理)を実行する。コマンド群処理を実行した印刷装置2は、複数のコマンドの各々に対する処理の結果を1つのパケット(ACK応答)で返信することができる。
【0071】
図11は、印刷装置が行うコマンド群処理の例を説明するフローチャートである。図12は、コマンド群処理中に印刷装置が確保するメモリ領域の例を示す図である。図11に例示したフローチャートに沿った処理は、印刷装置2の制御部200が行う。
【0072】
印刷装置2は、コマンド群処理を開始すると、まず、受信した集約データに含まれるデータ(コマンド)を識別する変数nを初期化する(ステップS201)。ステップS201において、変数nは、例えば、0にされる。
【0073】
次に、印刷装置2は、受信した集約データから集約されたデータの数を示す「TAG CNT」を取得し、応答用のメモリ領域を確保する(ステップS202)。ステップS202において、印刷装置2は、例えば、図12に示したようなメモリ領域215を確保する。図12に例示したメモリ領域215には、1つの集約データに含まれるn個のデータ(コマンド)を識別する識別用付加情報「Tag n」とTag nにより識別される必要最小部分「Packet n」のコマンドに基づく処理結果を示す情報とが関連付けられて格納される。また、メモリ領域215には、集約されたデータの数を示すカウント情報「TAG CNT」が格納される。メモリ領域215内にこれらの情報を格納するときの各情報の並べ方等の形式は、特定の形式に限定されない。
【0074】
応答用のメモリ領域215を確保した後、印刷装置2は、識別用付加情報「Tag n」が付された必要最小部分「Packet n」を検索し(ステップS203)、Packet n内のデータ(コマンド)を抽出する(ステップS204)。続けて、印刷装置2は、抽出したコマンドに応じた処理を実行する(ステップS205)。
【0075】
ステップS205の後、印刷装置2は、ステップS205において処理が正常に行われたか否かを判定する(ステップS206)。処理が正常に行われた場合(ステップS206;YES)、印刷装置2は、処理が正常に行われたことを示す情報を、処理結果としてTag nと関連付けてメモリ領域215に格納する(ステップS208)。処理が正常に行われなかった場合(ステップS206;NO)、印刷装置2は、コマンド処理エラーが発生したと認識し(ステップS207)、処理中にエラーが発生したことを示す情報を、処理結果としてTag nと関連付けてメモリ領域215に格納する(ステップS208)。
【0076】
ステップS208の後、印刷装置2は、Packet nから抽出したデータ(コマンド)に応じた処理がコマンド処理エラーであったか否かを判定する(ステップS209)。コマンド処理エラーであった場合(ステップS209;YES)、印刷装置2は、その時点でメモリ領域215に格納されている処理結果を含む1つのパケット(応答データ)を生成し(ステップS212)、コマンド群処理を終了する。コマンド群処理終了後、印刷装置2は、生成したパケット(応答データ)を情報処理装置4に送信する。
【0077】
Packet nから抽出したデータ(コマンド)に応じた処理が正常に行われた場合(ステップS209;NO)、印刷装置2は、変数nとTAG CNTとを比較し、n≧TAG CNTであるか否かを判定する(ステップS210)。n<TAG CNTの場合(ステップS210:NO)、印刷装置2は、n=n+1の演算により変数nを更新し(ステップS211)、ステップS203以降の処理を行う。そして、ステップS209の判定が「YES」になるか、ステップS210の判定が「YES」になると、印刷装置2は、その時点でメモリ領域215に格納されている処理結果を含む1つのパケット(応答データ)を生成し(ステップS212)、コマンド群処理を終了する。コマンド群処理終了後、印刷装置2は、生成したパケット(応答データ)を情報処理装置4に送信する。
【0078】
図13は、一実施形態に係る印刷システムで印刷装置から情報処理装置に向けて送信される応答データの例を説明する図である。図13には、図10に例示した第1の集約データ(パケット720)を受信した印刷装置2が、図11を参照して上述したコマンド群処理を行ったときに、印刷装置2から情報処理装置4に送信される応答データを示している。図13には、コマンド群処理においてすべてのコマンドの各々に基づく処理が正常に行われた場合の応答データ750と、Packet1のコマンドに基づく処理で処理エラーとなった場合の応答データ751とを示している。
【0079】
第1の集約データに含まれる8つのコマンドの各々に基づく処理のすべてが正常に行われた場合、メモリ領域215には、Tag0~Tag7の各々と関連付けられた処理結果が格納されている。このため、印刷装置2は、図13に示した応答データ750のように、メモリ領域215に格納されている「TAG CNT」と、8つのコマンドの各々に基づく処理の結果を含むACK応答を情報処理装置4に送信する。応答データ750における「Packet nのコマンドの処理結果(nは0~7のいずれか)」は、印刷シーケンスにおいて情報処理装置4と印刷装置2との間で送受信される1つのパケットと同じ送信フォーマットになっている。例えば、応答データ750における「Packet0のコマンドの処理結果」は、ヘッダー、パケットID、サイズ、及び「START」に応じて印刷装置2が行った処理の結果(例えば「OK」)を含む。応答データ750を受信した情報処理装置4は、Tag0~Tag7の各々に関連付けられた処理結果が、すべて正常に行われたことを示す情報であることを確認すると、印刷データを送信する。
【0080】
図13に例示した応答データ751は、上述のように、Packet1のコマンドの処理結果が処理エラーとなった場合であり得る。応答データ751を受信した情報処理装置4は、Tag1と関連付けられたPacket1のコマンドの処理結果が処理エラーになったことを確認すると、印刷データの送信を中止する。このとき、情報処理装置4は、例えば、Packet1のコマンド(例えば「ID COMP」)を変更した第1の集約データを印刷装置2に再送してもよいし、表示部430(タッチパネルディスプレイ490)にエラー表示をして印刷シーケンスを終了してもよい。
【0081】
印刷装置2から情報処理装置4に送信する応答データもまた、集約データと同様、設定されたMTUサイズのパケットである。このため、図5の従来例のようにコマンドごとにACK応答を行う場合、ACK応答のパケットには大きな未使用領域がある。
【0082】
これに対し、本実施形態の印刷システム1において印刷装置2から情報処理装置4に送信する応答データは、複数のコマンドの各々に対する処理の結果を含むことができる。このため、印刷シーケンスにおける不必要な通信時間の増大を防ぐことができる。
【0083】
なお、図13に例示した応答データ750における「Packet nのコマンドの処理結果」に含まれる処理の結果を示す情報は、「OK」や「NG」等の情報に限らず、数字、記号、文字等で表されるパラメータ値を含んでもよいし、パラメータ値のみであってもよい。
【0084】
以上説明したように、本実施形態の印刷システム1の情報処理装置4は、印刷装置2が実行する複数の処理の各々と関連付けられる複数のデータを1つのパケットに集約して印刷装置2に送信する。このため、印刷制御装置としての情報処理装置4と印刷装置2との無線通信によりデータ(コマンド)を送受信するのに必要な通信時間を大幅に短縮することができる。また、印刷装置2が、1つのパケット(集約データ)に集約された複数のデータの各々と関連付けられる複数の処理の結果を、1つのパケット(応答データ)に集約して情報処理装置4に送信することにより、通信時間を更に短縮することができる。
【0085】
また、印刷装置2が実行する複数の処理の各々と関連付けられる複数のデータを1つのパケットに集約して印刷装置2に送信することにより、情報処理装置4と印刷装置2との間でのデータの送受信の回数を低減させることができる。すなわち、本実施形態の印刷システム1は、無線通信によるデータの送受信に必要となる通信時間の短縮、及びデータの送受信の回数の低減により、情報処理装置4と印刷装置2との間でのデータの送受信の効率を向上させることができる。
【0086】
また、無線通信によりデータを送受信するのに必要な通信時間を大幅に短縮することができるので、例えば、情報処理装置4の無線通信部440及び印刷装置2の無線通信部240のそれぞれにおけるデータの送受信による消費電力量を低減させることができる。
【0087】
上述した実施形態は、発明の理解を容易にするための例示に過ぎない。すなわち、本発明に係る印刷制御装置、印刷制御方法、プログラム、印刷装置、及び印刷システムは、上述した実施形態に限定されるものではなく、特許請求の範囲の記載を逸脱しない範囲において、様々な変形、変更が可能である。
【0088】
例えば、情報処理装置4から印刷装置2に送信する1つのパケットに集約するデータの数は、特定の数に限定されない。また、集約するデータの数は、MTUサイズに依存しない固定された数あってもよいし、MTUサイズに依存して変動してもよい。例えば、図10を参照して上述した印刷シーケンスでは、第1の集約データが8つのコマンドのすべてを含んでいる。しかしながら、本発明に係る印刷システム1では、1つのパケットに8未満の特定の数(例えば、4つ)のコマンドを集約した集約データを作成して印刷装置2に送信してもよい。この場合、例えば、図9に例示したフローチャートにおけるステップS104、S106の判定等を省略することができ、情報処理装置4の処理負荷が軽減される。また、図9を参照して上述した集約データ作成処理では、例えば、1つのパケットに集約するデータの数を、集約の対象となるデータの各々のサイズと、印刷装置2がデータの各々に基づいて行う処理の順序と、に基づいて、1つの集約データ内に集約可能な最大数のデータを集約することができる。このため、例えば、印刷装置2に送信すべきデータ(コマンド)のいくつかが格納されていない集約データを印刷装置2に送信してしまうことによる処理エラーを防ぐことができる。更に、図9を参照して上述した集約データ作成処理では、集約の対象となるデータの各々のサイズQnと集約可能サイズQとの比較による判定に限らず、例えば、集約の対象となるデータの種類(例えば、コマンド名)に基づいて、集約データ用のパケット(集約情報413)に格納するか否かを判定してもよい。このような判定をすることにより、例えば、集約データ内に不適切なデータが集約されることによる印刷装置2での処理エラーの発生を防ぐことができる。
【0089】
また、例えば、印刷装置2が情報処理装置4に送信する応答データ(ACK応答)は、図13に例示した応答データ750及び751のような、Packet nのコマンドの処理結果を集約した形式に限定されない。印刷装置2は、例えば、1つの集約データに含まれる複数のコマンドの各々に対する処理がすべて正常に行われたときには、すべての処理が正常に行われたことを示す情報、及び情報処理装置4に通知すべきその他の情報を含む応答データを情報処理装置4に送信してもよい。また、印刷装置2は、例えば、1つの集約データに含まれる複数のコマンドの各々に基づく処理のうちの正常に行われなかった処理と関連付けられるコマンドを示す情報のみを含む応答データを生成して情報処理装置4に送信してもよい。具体的には、図13に例示した応答データ751の代わりに、Tag1と関連付けられたPacket1のコマンドの処理でエラーが発生したことを示す情報のみを含む応答データを生成して情報処理装置4に送信してもよい。
【0090】
上述の実施形態で例示した情報処理装置4は、無線通信による印刷装置2との接続に加え、USBケーブル等の伝送ケーブルによる印刷装置2との接続が可能なものあってもよい。この種の情報処理装置4を印刷制御装置として用いる場合、例えば、印刷装置2との接続方式が無線であるか有線であるかに応じて、複数のデータ(例えば、コマンド)を印刷装置2に送信するときの送信方法を切り替え可能であってもよい。具体的には、情報処理装置4が無線通信により印刷装置2と接続される場合には、図7図10を参照して説明した集約データを生成して印刷装置2に送信し、情報処理装置4が伝送ケーブルにより(有線で)印刷装置2と接続される場合には、図5図6を参照して説明した従来例のような手順で各データを印刷装置2に送信してもよい。この場合、印刷装置2は、情報処理装置4との接続方式が無線であるか有線であるかに応じて応答データを生成し、情報処理装置4に送信する。
【0091】
上述の実施形態で例示した情報処理装置4と印刷装置2との無線接続は、複数の無線通信規格の中から選択、切り替え可能であってもよい。このため、情報処理装置4は、例えば、複数の無線通信規格のうちの第1の規格(例えば、通信速度が比較的遅い規格)により印刷装置2と無線接続される場合には、図7図10を参照して説明した集約データを生成して印刷装置2に送信し、第2の規格(例えば、第1の規格と比べて通信速度が高速な規格)により印刷装置2と接続される場合には、図5図6を参照して説明した従来例のような手順で各データを印刷装置2に送信してもよい。
【0092】
また、例えば、上述の実施形態で例示した情報処理装置4は、無線通信により印刷装置2の印刷動作を制御することが可能な印刷制御装置の例示に過ぎない。本発明に係る印刷システム1における印刷制御装置は、スマートフォン、又はその他の汎用コンピュータであり得る情報処理装置4に限らず、印刷装置2と組み合わせて使用するものとして設計、製造された専用の装置であってもよい。
【符号の説明】
【0093】
1 印刷システム
2 印刷装置
3 被印刷媒体
4 情報処理装置
5 コンピュータ
200、400 制御部
210、410 記憶部
220、420 入力部
230、430 表示部
240、440 無線通信部
250 検出部
260 搬送部
270 印字部
280 切断部
411 ラベル作成アプリ
211 MTU設定値
212、412 印刷データ
413 集約情報
501 プロセッサ
502 メモリ
503 補助記憶装置
504 入力装置
505 表示装置
506 通信装置
507 入出力インタフェース
508 バス
7、700、701、707、708、720 パケット
750、751 応答データ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13