JP2018022362A - プログラム、制御装置、及び、制御装置の制御方法 - Google Patents

プログラム、制御装置、及び、制御装置の制御方法 Download PDF

Info

Publication number
JP2018022362A
JP2018022362A JP2016153538A JP2016153538A JP2018022362A JP 2018022362 A JP2018022362 A JP 2018022362A JP 2016153538 A JP2016153538 A JP 2016153538A JP 2016153538 A JP2016153538 A JP 2016153538A JP 2018022362 A JP2018022362 A JP 2018022362A
Authority
JP
Japan
Prior art keywords
command
printer
control unit
request command
host
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016153538A
Other languages
English (en)
Other versions
JP6740791B2 (ja
Inventor
俊一 若狭
Shunichi Wakasa
俊一 若狭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2016153538A priority Critical patent/JP6740791B2/ja
Priority to US15/668,270 priority patent/US10209937B2/en
Publication of JP2018022362A publication Critical patent/JP2018022362A/ja
Application granted granted Critical
Publication of JP6740791B2 publication Critical patent/JP6740791B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/123Software or firmware update, e.g. device firmware management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1259Print job monitoring, e.g. job status
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

【課題】送信するコマンドに印刷装置が対応しているか否かを、速やかに判断できるようにすることを目的とする。
【解決手段】プリンター1と接続可能なホスト2のホスト制御部20により実行可能なプリンタードライバー211であって、ホスト制御部20に、プリンター1に新機能設定値の応答を要求する設定値要求コマンドを送信させ、ステータス値の応答を要求するステータス要求コマンドを送信させ、設定要求コマンドによる新機能設定値を、ステータス要求コマンドによるステータス値より先に受信した場合、プリンター1が設定値要求コマンドに対応していると判断させる。
【選択図】図1

Description

本発明は、プログラム、制御装置、及び、制御装置の制御方法に関する。
従来、印刷を実行する印刷装置に接続する制御装置により、印刷装置を制御する技術が知られている(例えば、特許文献1参照)。特許文献1では、印刷装置のファームウェアのバージョンを判別し、判別結果に基づいて印刷装置に最新のファームウェアをダウンロードさせる制御装置としてのホストを開示する。
特開平11−175286号公報
ところで、特許文献1に記載のホストのような制御装置は、印刷装置にコマンドを送信し、コマンドに基づく処理を実行させる。制御装置は、印刷装置を適切に制御するため、送信するコマンドに印刷装置が対応しているか否かを判断する場合がある。この場合、制御装置が、送信するコマンドに印刷装置が対応しているか否かを、速やかに判断したいとするニーズがある。
そこで、本発明は、送信するコマンドに印刷装置が対応しているか否かを、速やかに判断できるようにすることを目的とする。
上記課題を解決するために、本発明は、印刷装置と接続可能な制御装置の制御部により実行可能なプログラムであって、前記制御部に、前記印刷装置に第1所定値の応答を要求する第1コマンドを送信させ、第2所定値の応答を要求する第2コマンドを送信させ、前記第1コマンドによる前記第1所定値を、前記第2コマンドによる前記第2所定値より先に受信した場合、前記印刷装置が前記第1コマンドに対応していると判断させる。
本発明によれば、制御装置は、プログラムの機能により、第1コマンドと第2コマンドとを送信し、第1コマンドによる第1所定値を、第2コマンドによる第2所定値より先に受信した場合、印刷装置が第1コマンドに対応していると判断するため、速やかに、送信するコマンドに印刷装置が対応しているか否かを判断できる。
また、本発明は、前記制御部に、前記第2コマンドによる前記第2所定値を、前記第1コマンドによる前記第1所定値より先に受信した場合、前記第1コマンドによる前記第1所定値の受信を待たず、前記印刷装置が前記第1コマンドに対応していないと判断させる。
本発明によれば、制御装置は、プログラムの機能により、第1コマンドと第2コマンドとを送信し、第2コマンドによる第2所定値を、第1コマンドよる第1所定値より先に受信した場合、第1コマンドによる第1所定値の受信を待たず、印刷装置が第1コマンドに対応していると判断するため、速やかに、送信するコマンドに印刷装置が対応しているか否かを判断できる。
また、本発明は、前記第1コマンドは、前記印刷装置に追加可能な機能によって前記第1所定値の応答を実行させるコマンドであり、前記第2コマンドは、前記印刷装置に実装された機能によって前記第2所定値の応答を実行させるコマンドである。
本発明によれば、第1コマンドが、印刷装置に追加可能な機能によって第1所定値の応答を実行させるコマンドであり、また、第2コマンドが、印刷装置に実行された機能によって第2所定値の応答を実行させるコマンドであるため、制御装置は、プログラムの機能により、印刷装置に機能が追加されたか否かを速やかに判断できる。
また、本発明は、前記第1コマンドは、前記印刷装置にインストールされたファームウェアのバージョンアップにより追加可能な機能によって前記第1所定値の応答を実行させるコマンドであり、前記第2コマンドは、バージョンアップ前の前記ファームウェアに実装された機能によって前記第2所定値の応答を実行させるコマンドである。
本発明によれば、第1コマンドが印刷装置にインストールされたファームウェアのバージョンアップにより追加可能な機能によって第1所定値の応答を実行させるコマンドであり、また、第2コマンドがバージョンアップ前のファームウェアに実行された機能によって第2所定値の応答を実行させるコマンドであるため、制御装置は、プログラムの機能により、ファームウェアのバージョンアップにより機能が追加されたか否かを速やかに判断できる。
また、本発明は、前記第1所定値は、前記印刷装置の設定値であり、前記第2所定値は、前記印刷装置のステータスである。
本発明によれば、制御装置は、プログラムの機能により、印刷装置の設定値を印刷装置のステータスをより先に受信したか、印刷装置のステータスを印刷装置の設定値より先に受信したかに応じて、送信するコマンドに印刷装置が対応しているか否かを、速やかに判断できる。
上記課題を解決するために、本発明は、印刷装置と接続可能な制御装置であって、前記印刷装置に第1所定値の応答を要求する第1コマンドを送信し、第2所定値の応答を要求する第2コマンドを送信し、前記第1コマンドによる前記第1所定値を、前記第2コマンドによる前記第2所定値より先に受信した場合、前記印刷装置が前記第1コマンドに対応していると判断する制御部を備える。
本発明によれば、制御装置は、第1コマンドと第2コマンドとを送信し、第1コマンドによる第1所定値を、第2コマンドによる第2所定値より先に受信した場合、印刷装置が第1コマンドに対応していると判断するため、速やかに、送信するコマンドに印刷装置が対応しているか否かを判断できる。
上記課題を解決するために、本発明は、印刷装置と接続可能な制御装置の制御方法であって、前記印刷装置に第1所定値の応答を要求する第1コマンドを送信するステップと、第2所定値の応答を要求する第2コマンドを送信するステップと、前記第1コマンドによる前記第1所定値を、前記第2コマンドによる前記第2所定値より先に受信した場合、前記印刷装置が前記第1コマンドに対応していると判断するステップと、を備える。
本発明によれば、第1コマンドと第2コマンドとを送信し、第1コマンドによる第1所定値を、第2コマンドによる第2所定値より先に受信した場合、印刷装置が第1コマンドに対応していると判断するため、速やかに、送信するコマンドに印刷装置が対応しているか否かを判断できる。
プリンターとホストとの構成を示す図。 ホストの動作を示すフローチャート。 プリンターの動作を示すフローチャート。
図1は、プリンター1(印刷装置)と、ホスト2(制御装置)との構成を示す図である。
図1に示すように、印刷システム3は、プリンター1とホスト2とを備える。
プリンター1は、印刷ヘッド121を備え、印刷ヘッド121に形成されたノズルからインクを吐出して、印刷媒体にドットを形成するインクジェット式プリンターである。
図1に示すように、プリンター1は、プリンター制御部10と、プリンター記憶部11と、印刷部12と、プリンター入力部13と、プリンター表示部14と、プリンターインターフェース部15と、受信バッファー16とを備える。
プリンター制御部10は、CPUや、ROM、RAM、その他の周辺回路等を備え、プリンター記憶部11に記憶されたファームウェア111を読み出して実行することにより、プリンター1の各部を制御する。
プリンター記憶部11は、EEPROM(Electrically Erasable Programmable ROM)やフラッシュメモリー等の半導体記憶素子、或いは、ハードディスク等の記憶媒体を備え、各種データを書き換え可能に不揮発的に記憶する。また、プリンター記憶部11は、ファームウェア111と、設定ファイル112と、ログファイル113を記憶する。
ファームウェア111は、プリンター1を制御するプログラムである。
設定ファイル112は、印刷濃度や印刷速度等のプリンター1の設定に係る設定項目と、当該設定項目に対応する設定値との組み合わせが記憶される。設定値とは、ファームウェア111の実行に際して利用される設定や、条件等の具体的な値のことであり、例えば、設定項目として印刷速度が存在する場合の印刷速度の値(例えば、高速、中速、及び、低速のうちいずれかを示す値)等である。
ログファイル113は、プリンター1の所定の動作、プリンター1のステータス、及び、プリンター1に発生した所定の事象を、時系列でテキストデータとして記述したファイルである。例えば、ログファイル113は、インク切れが発生した場合、インク切れが発生したことを示す情報と、発生した日時を示す情報が対応付けて記述される。
印刷部12は、印刷媒体にインクを吐出してドットを形成することにより画像や文字等を印刷する印刷ヘッド121や、この印刷ヘッド121を走査させるキャリッジ、印刷媒体を所定の方向に搬送する搬送ローラー等の印刷に係わる装置や機構等を備える。印刷部12は、プリンター制御部10の制御で、印刷に係わる装置や機構等を制御して、印刷媒体に印刷を実行する。
プリンター入力部13は、プリンター1に設けられた各種スイッチに接続され、スイッチに対する操作を検出し、検出結果をプリンター制御部10に出力する。
プリンター表示部14は、プリンター1に設けられたLEDに接続され、プリンター制御部10の制御で、LEDに対して制御信号を出力して、LEDを所定の態様で点灯/消灯させる。なお、プリンター表示部14は、液晶表示パネル等の表示パネルを設け、表示パネルに各種情報を表示する構成としてもよい。
プリンターインターフェース部15は、プリンター制御部10の制御で、ホスト2との間で、所定の規格に準拠した通信を実行する。
受信バッファー16は、RAMと呼ばれる一時記憶領域であり、例えば半導体記憶デバイスで構成される。受信バッファー16は、プリンター制御部10の制御で、外部から受信したコマンドを記憶する。本実施形態において、受信バッファー16は、プリンターインターフェース部15によりホスト2から受信したコマンドを記憶する。
ホスト2は、プリンター1を制御する制御装置である。図1に示すように、ホスト2は、ホスト制御部20(制御部)と、ホスト記憶部21と、ホストインターフェース部22と、ホスト入力部23と、ホスト表示部24とを備える。
ホスト制御部20は、CPUや、ROM、RAM、その他の周辺回路等を備え、ホスト2の各部を制御する。
ホスト記憶部21は、EEPROMやフラッシュメモリー等の半導体記憶素子、或いは、ハードディスク等の記憶媒体を備え、各種データを書き換え可能に不揮発的に記憶する。また、ホスト記憶部21は、プリンタードライバー211(プログラム)を記憶する。プリンタードライバー211は、プリンター1を制御するためのプログラムである。
ホスト2には、プリンタードライバー211が予めインストールされ、プリンター1により印刷媒体に印刷を実行する際、ホスト制御部20は、プリンタードライバー211を読み出して実行することにより、印刷データを生成し、プリンター1に出力する。プリンター1は、印刷データを受信し、印刷部12を制御して、印刷媒体への印刷に係る各種動作を実行する。
また、ホスト制御部20は、プリンタードライバー211を読み出して実行することにより、後述する動作を実行する。
ホストインターフェース部22は、ホスト制御部20の制御で、プリンター1との間で、所定の規格に準拠した通信を実行する。
ホスト入力部23は、各種入力デバイスや、操作スイッチ等の入力手段に接続され、入力手段に対する操作を検出し、ホスト制御部20に出力する。
ホスト表示部24は、表示パネル等の表示装置を備え、ホスト制御部20の制御で、表示装置に各種情報を表示する。
ところで、プリンター1は、インストールされたファームウェア111のバージョンアップが行われる場合がある。ファームウェア111のバージョンアップとは、機能の追加や、プログラムの修正等を目的として行われるファームウェア111の書き換えのことである。プリンター1にインストールされたファームウェア111のバージョンアップが行わると、ホスト2は、プリンタードライバー211の機能により、ファームウェア111のバージョンアップによってプリンター1に新たな機能(以下、「新機能」と表現する)の追加があったか否かの判断を実行する場合がある。これは、プリンター1に新機能の追加がないにも関わらず、新機能の実行を指示するコマンドを、ホスト2が不必要に送信するといった事態の発生を防止する等の、バージョンアップ後のファームウェア111に基づくプリンター1に対する制御を適切に実行するためである。
ここで、プリンター1のファームウェア111のバージョンアップにより、新機能が追加されたか否かを判断する判断方法として、新機能の追加の有無について判断可能なコマンドを、ホスト2がプリンター1に送信する方法が挙げられる。新機能の追加の有無について判断可能なコマンドとは、例えば、新機能を示す設定項目の設定値を要求するコマンドである。この方法では、ホスト2は、プリンター1に当該コマンドを送信し、送信した当該コマンドに対するプリンター1の応答の有無に基づき、ファームウェア111のバージョンアップによってプリンター1に新機能が追加されたか否かを判断する。より詳細に、ホスト2は、新機能の追加の有無について判断可能なコマンドを送信し、当該コマンドに対する応答がプリンター1から有る場合、当該コマンドにプリンター1が対応しているため、ファームウェア111のバージョンアップによってプリンター1に新機能が追加されたと判断する。一方、ホスト2は、応答がない場合、当該コマンドにプリンター1が対応していないため、プリンター1に新機能の追加がないと判断する。この方法では、ホスト2は、新機能の追加の有無について判断可能なコマンドをプリンター1に送信してから、当該コマンドに対する応答が所定の期間内にある場合、新機能の追加があると判断し、所定の期間が経過しても応答がない場合、新機能の追加がないと判断する構成とされる。この構成では、ファームウェア111のバージョンアップによるプリンター1への新機能の追加がない場合、ホスト2は、新機能の追加がないと判断するまで、所定の期間分の時間を要することになる。新機能の追加がないと判断するまでの所定の期間は、当該判断の正確性を確保するためにプリンター1との通信状況やプリンター1のCPUの処理負荷等を考慮すると、長ければ長いほど好ましい。しかしながら、この所定の期間が長ければ長いほど、新機能の追加がないと判断するまでに要する時間が長くなる。
ここで、プリンタードライバー211が、プリンター1のファームウェア111のバージョンと、当該バージョンのファームウェア111を実装するプリンター1に対応するコマンドと、を管理する構成であると、上述した判断が不要である。しかしながら、新機能の追加の有無に係らずファームウェア111がバージョンアップされる度に、バージョンアップしたファームウェア111を実装するプリンター1に対応するコマンドを、プリンタードライバー211に追加等しなければならず、コマンドの管理の面で手間がかかる。
そこで、本実施形態のホスト2のホスト制御部20は、プリンタードライバー211の機能により、以下に示す動作を実行する。
図2は、ホスト2の動作を示すフローチャートである。
以下の説明において、プリンター1のファームウェア111に対して書き換えるためのファームウェア、すなわち、バージョンアップするためのファームウェアを、新ファームウェアと表現する。また、バージョンアップ前のプリンター1のファームウェア111を旧ファーウェアと表現する。
図2のフローチャートの開始時点において、プリンター1のファームウェア111は、旧ファームウェアから新ファームウェアにバージョンアップされたものとする。
また、以下の説明において、新ファームウェアには、旧ファームウェアが有していない新機能が追加されている場合を例示する。また、この新機能は、印刷速度を変更可能な機能であるとする。すなわち、この例では、旧ファーウェアを実装するプリンター1は、印刷速度の変更を実行できず、新ファームウェアを実装するプリンター1は、印刷速度の変更が実行できる。
また、ファームウェア111を旧ファームウェアから新ファームウェアに書き換えることで、新機能を示す設定項目と、当該設定項目に対応する設定値とが、設定ファイル112に追加されるものとする。本実施形態では、旧ファームウェアから新ファームウェアに書き換えることで、印刷速度を示す設定項目(以下、「印刷速度設定項目」と表現する)と、印刷速度設定項目に対応する設定値とが、設定ファイル112に追加されるものとする。
ホスト2のホスト制御部20は、プリンター1に新機能が追加されたか否かの判断の実行のトリガーが発生したか否かを判別する(ステップSA1)。例えば、ホスト制御部20は、ユーザーの、ホスト入力部23が接続する入力手段に対する操作を検出した場合、当該トリガーが発生したと判別する。なお、このトリガーは、ユーザーの入力手段に対する操作の検出に限定されず、ホスト2がプリンター1のファームウェア111のバージョンアップの検出したことをトリガーとしてもよい。また、このトリガーは、ホスト2に対して電源を投入し、プリンター1との通信を確立したことをトリガーとしてもよい。また、このトリガーは、新機能が追加されたか否かを判断の実行を開始するための所定の周期が経過したことをトリガーとしてもよい。
次いで、ホスト制御部20は、プリンター1に新機能が追加されたか否かの判断の実行のトリガーが発生したと判別した場合(ステップSA1:YES)、ホストインターフェース部22により設定値要求コマンド(第1コマンド)を送信する(ステップSA2)。プリンタードライバー211が設定値要求コマンドを送信させる機能を有しており、ホスト制御部20は、プリンタードライバー211を実行することで、設定値要求コマンドを送信する。
本実施形態では、設定値要求コマンドを、新ファームウェアを実装するプリンター1に対応するコマンドである第1コマンドとして例示する。設定値要求コマンドは、新ファームウェアに追加された新機能を示す設定項目の設定値(第1所定値)(以下、「新機能設定値」と表現する)の応答を要求するコマンドである。新機能設定値の応答の要求とは、新機能設定値の送信を要求することを示す。本実施形態では、ファームウェア111を新ファームウェアにバージョンアップすることにより、プリンター1に新機能として印刷速度を変更可能とする機能が追加されるため、設定値要求コマンドは、新機能設定値である、印刷速度設定項目に対応する設定値を要求するコマンドである。このように、設定値要求コマンドは、新機能設定値を要求するコマンドであるため、新機能が追加されていない旧ファームウェアを実装するプリンター1に対応していないコマンドである。換言すると、旧ファームウェアを実装するプリンター1は、設定値要求コマンドに対応していない。一方、設定値要求コマンドは、新機能が追加される新ファームウェアを実装するプリンター1に対応するコマンドである。
図2のフローチャートの説明に戻り、ホスト制御部20は、設定値要求コマンドを送信すると、ホストインターフェース部22によりステータス要求コマンド(第2コマンド)をプリンター1に送信する(ステップSA3)。プリンタードライバー211がステータス要求コマンドを送信させる機能を有しており、ホスト制御部20は、プリンタードライバー211を読み出して実行することにより、ステータス要求コマンドを送信する。
本実施形態では、ステータス要求コマンドを、新ファームウェアを実装するプリンター1、及び、旧ファームウェアを実装するプリンター1に対応するコマンドである第2コマンドとして例示する。ステータス要求コマンドは、プリンター1のステータスを示す値(第2所定値)(以下、「ステータス値」と表現する)の応答を要求するコマンドである。ステータス値の応答の要求とは、プリンター1のステータス値の送信を要求することである。例えば、ステータスがインク切れに関する場合、ステータス要求コマンドは、ステータス値として、インク切れの有無のいずれか示す値の送信を要求するコマンドである。この例の場合、新ファームウェア、及び、旧ファームウェアに係らず、プリンター1は、ステータス要求コマンドを受信することによって、インク切れの有無のいずれかを示す値を送信する。
このように、ホスト制御部20は、プリンター1に新機能が追加されたか否かの判断の実行のトリガーが発生すると、設定値要求コマンド、ステータス要求コマンドの順に、これらコマンドをホストインターフェース部22によりプリンター1へ送信する。つまり、プリンタードライバー211が、設定値要求コマンド、ステータス要求コマンドの順に、これらコマンドを送信させる機能を有しており、ホスト制御部20は、プリンタードライバー211を実行することにより、これらコマンドを上記の順にプリンター1に送信する。この順で、設定値要求コマンド、及び、ステータス要求コマンドを送信することの効果については、後述する。
図3は、プリンター1の動作を示すフローチャートである。
図3のフローチャートBに示すように、プリンター1のプリンター制御部10は、プリンターインターフェース部15により、ホスト2から送信されるコマンドを受信する(ステップSB1)。本実施形態では、ホスト2が設定値要求コマンド、及び、ステータス要求コマンドを送信するため、プリンター制御部10は、設定値要求コマンド、及び、ステータス要求コマンドを受信する(ステップSB1)。前述した通り、ホスト制御部20は、ホストインターフェース部22により、設定値要求コマンド、ステータス要求コマンドの順に、これらコマンドをする。そのため、プリンター制御部10は、設定値要求コマンド、ステータス要求コマンドの順に、これらコマンドを受信する。
次いで、プリンター制御部10は、受信したコマンドを、受信したコマンド順に、受信バッファー16に格納する(ステップSB2)。本実施形態では、プリンター制御部10は、受信した設定値要求コマンド、及び、ステータス要求コマンドを、受信したコマンド順に、すなわち、設定値要求コマンド、ステータス要求コマンドの順に、受信バッファー16に格納する。
次いで、プリンター制御部10は、受信バッファー16に格納した順に、コマンドを読み出す(ステップSB3)。次いで、プリンター制御部10は、読み出したコマンドに基づく処理が実行可能か否かを判別し(ステップSB4)、実行可能でないと判別した場合(ステップSB4:NO)、読み出したコマンドに基づく処理を実行せず、受信バッファー16から当該コマンドを消去する、すなわち、読み捨てる(ステップSB5)。一方、プリンター制御部10は、実行可能であると判別した場合(ステップSB4:YES)、当該コマンドに基づく処理を実行する(ステップSB6)。次いで、プリンター制御部10は、受信バッファー16に、他に読み出すコマンドがあるか否かを判別し(ステップSB7)、あると判別した場合(ステップSB7:YES)、処理をステップSB3に戻し、受信バッファー16からコマンドを読み出す。一方、プリンター制御部10は、他に読み出すコマンドがないと判別した場合(ステップSB7:NO)、処理を終了する。
ここで、ステップSB3〜ステップSB7について、詳述する。詳述するに際し、ファームウェア111が、新ファームウェアである場合と、旧ファームウェアである場合とを例示して説明する。
<新ファームウェアの場合>
本実施形態では、設定値要求コマンド、ステータス要求コマンドの順に受信バッファー16に格納されるため、プリンター制御部10は、ステップSB3において、受信バッファー16から読み出すコマンドとして、先に格納された設定値要求コマンドを読み出す。
次いで、プリンター制御部10は、読み出した設定値要求コマンドに基づく処理が実行可能か否かを判別する(ステップSB4)。
ここで、設定値要求コマンドは、少なくとも、命令コード、及び、パラメーターを有し、パラメーターが指定する新機能を示す設定項目に対応する新機能設定値の応答を要求する。例えば、設定値要求コマンドの命令コードが、設定項目に対応する設定値の要求を示す「命令コードA」であり、パラメーターが、印刷速度設定項目を示す「2」であるとする。
プリンター制御部10は、設定値要求コマンドの命令コードが「命令コードA」を示すと解釈し、設定値要求コマンドが、設定ファイル112の設定項目に対応する設定値の応答の要求であるコマンドと判別する。次いで、プリンター制御部10は、設定値要求コマンドのパラメーターが「2」であると解釈すると、設定ファイル112の設定項目に、「2」に対応する設定項目である印刷速度設定項目の有無を判別する。そして、プリンター制御部10は、設定ファイル112の設定項目に、印刷速度設定項目があると判別した場合、読み出した設定値要求コマンドに基づく処理が実行可能と判別する。
本実施形態では、新ファームウェアにファームウェア111を書き換えることで、設定ファイル112の設定項目として、印刷速度設定項目が追加される。そのため、新ファームウェアを実装するプリンター1の場合、プリンター制御部10は、設定値要求コマンドに基づく処理が実行可能と判別する(ステップSB4:YES)。
プリンター制御部10は、読み出した設定値要求コマンドに基づく処理が実行可能であると判別した場合(ステップSB4:YES)、設定値要求コマンドに基づく処理を実行する(ステップSB6)。すなわち、プリンター制御部10は、設定値要求コマンドのパラメーターが指定する新機能を示す設定項目に対応する新機能設定値をホスト2に送信する(ステップSB6)。本実施形態の場合、プリンター制御部10は、印刷速度設定項目に対応する設定値を、ホスト2に送信する。
次いで、プリンター制御部10は、設定値要求コマンドに基づく処理を実行すると、すなわち、新機能設定値をホスト2に送信すると、受信バッファー16に、他に読み出すコマンドがあるか否かを判別する(ステップSB7)。本実施形態では、設定値要求コマンドの次にステータス要求コマンドが受信バッファー16に格納されるため、プリンター制御部10は、受信バッファー16に、他に読み出すコマンド(ステータス要求コマンド)があると判別する(ステップSB7:YES)。
次いで、プリンター制御部10は、受信バッファー16から、次に読み出すコマンドとして、ステータス要求コマンドを読み出す(ステップSB7)。
次いで、プリンター制御部10は、読み出したステータス要求コマンドに基づく処理が実行可能か否かを判別する(ステップSB4)。本実施形態では、ステータス要求コマンドは、新ファームウェアを実装するプリンター1、及び、旧ファームウェアを実装するプリンター1により実行可能なコマンドである。すなわち、プリンター制御部10は、ファームウェア111が新ファームウェア、及び、旧ファームウェアのいずれかに係らず、ステータス要求コマンドに基づく処理が実行可能である。そのため、プリンター制御部10は、ステータス要求コマンドを読み出すと、ステータス要求コマンドに基づく処理が実行可能と判別する(ステップSB4:YES)
次いで、プリンター制御部10は、ステータス要求コマンドに基づく処理を実行する(ステップSB6)。すなわち、プリンター制御部10は、ログファイル113に記述されたデータを参照して、ステータス要求コマンドのパラメーターが示すステータスについて、プリンターインターフェース部15により、ステータス値をホスト2に送信する(ステップSB6)。
ここで、ステータス要求コマンドは、少なくとも、命令コード、及び、パラメーターを有し、パラメーターが指定するステータスのステータス値の応答を要求する。例えば、設定値要求コマンドの命令コードが、ステータス値の要求を示す「命令コードB」であり、パラメーターが、インク切れの有無を示す「1」であるとする。この場合、プリンター制御部10は、ステータス要求コマンドの命令コードが「命令コードB」を示すと解釈し、ステータス要求コマンドが、ステータス値の応答の要求であるコマンドと判別する。次いで、プリンター制御部10は、ステータス要求コマンドのパラメーターが「1」と解釈すると、送信するステータス値が、インク切れの有無を示すステータス値であると判別する。そして、プリンター制御部10は、ログファイル113を参照し、インク切れの有無のいずれかを示すステータス値を、ホスト2に送信する。
次いで、プリンター制御部10は、ステータス要求コマンドに基づく処理を実行すると、すなわち、ステータス値をホスト2に送信すると、受信バッファー16に、他に読み出すコマンドがあるか否かを判別する(ステップSB7)。本実施形態では、ステータス要求コマンドの次に、受信バッファー16に格納されるコマンドがないため、プリンター制御部10は、受信バッファー16に、他に読み出すコマンドがないと判別する(ステップSB7:NO)。
このように、プリンター1のファームウェア111が新ファームウェアである場合、プリンター制御部10は、設定値要求コマンド、ステータス要求コマンドの順に、コマンドに基づく処理を実行する。つまり、プリンター制御部10は、新機能設定値、ステータス値を、新機能設定値、ステータス値の順に、ホスト2に送信する。
<旧ファームの場合>
次に、プリンター1のファームウェア111が旧ファームウェアの場合を説明する。なお、上述した通り、本実施形態では、プリンター1のファームウェアが新ファームウェアに書き換えられた場合を例示しているが、プリンター制御部10の処理を明確にするために説明する。
本実施形態では、設定値要求コマンド、ステータス要求コマンドの順に受信バッファー16に格納されるため、プリンター制御部10は、ステップSB3において、受信バッファー16から読み出すコマンドとして、先に格納された設定値要求コマンドを読み出す。
次いで、プリンター制御部10は、読み出した設定値要求コマンドに基づく処理が実行可能か否かを判別する(ステップSB4)。
前述した通り、旧ファームウェアには、新機能が追加されていない。そのため、旧ファームウェアを実装するプリンター1の場合、設定ファイル112の設定項目には印刷速度項目が追加されないため、プリンター制御部10は、設定値要求コマンドに基づく処理が実行可能でないと判別する(ステップSB4:NO)。
プリンター制御部10は、読み出した設定値要求コマンドに基づく処理が実行可能でないと判別した場合(ステップSB4:NO)、設定値要求コマンドを実行せず、受信バッファー16から設定値要求コマンドを消去する、すなわち、設定値要求コマンドを読み捨てる(ステップSB5)。つまり、プリンター制御部10は、ホスト2に新機能設定値の送信を実行しない。
次いで、プリンター制御部10は、設定値要求コマンドを読み捨てると、受信バッファー16に、他に読み出すコマンドがあるか否かを判別する(ステップSB7)。本実施形態では、設定値要求コマンドの次にステータス要求コマンドが受信バッファー16に格納されるため、プリンター制御部10は、受信バッファー16に、他に読み出すコマンド(ステータス要求コマンド)があると判別する(ステップSB7:YES)。
次いで、プリンター制御部10は、受信バッファー16から、次に読み出すコマンドとして、ステータス要求コマンドを読み出す(ステップSB3)。
次いで、プリンター制御部10は、読み出したステータス要求コマンドに基づく処理が実行可能か否かを判別する(ステップSB4)。本実施形態では、ステータス要求コマンドは、新ファームウェアを実装するプリンター1、及び、旧ファームウェアを実装するプリンター1により実行可能なコマンドである。すなわち、プリンター制御部10は、ファームウェア111が新ファームウェア、及び、旧ファームウェアのいずれかに係らず、ステータス要求コマンドに基づく処理が実行可能である。そのため、プリンター制御部10は、ステータス要求コマンドを読み出すと、ステータス要求コマンドに基づく処理が実行可能と判別する(ステップSB4:YES)
次いで、プリンター制御部10は、ステータス要求コマンドに基づく処理を実行する(ステップSB6)。すなわち、プリンター制御部10は、ログファイル113に記述されたデータを参照して、ステータス要求コマンドのパラメーターが示すステータスについて、プリンターインターフェース部15により、ステータス値をホスト2に送信する(ステップSB6)。
次いで、プリンター制御部10は、ステータス要求コマンドに基づく処理を実行すると、すなわち、ステータス値をホスト2に送信すると、受信バッファー16に、他に読み出すコマンドがあるか否かを判別する(ステップSB7)。本実施形態では、ステータス要求コマンドの次に、受信バッファー16に格納されるコマンドがないため、プリンター制御部10は、受信バッファー16に、他に読み出すコマンドがないと判別する(ステップSB7:NO)。
このように、プリンター1のファームウェア111が旧ファームウェアである場合、プリンター制御部10は、新機能設定値の送信を実行せず、ステータス値のみをホスト2に送信する。
なお、プリンター1が旧ファームウェアを実装する場合において、プリンター制御部10が、ステータス値のみをホスト2に送信する場合を説明した。しかしながら、仮に、新ファームウェアに新機能が追加されていない場合も、旧ファームウェアを実装するプリンター1と同様に、プリンター制御部10は、新機能設定値を送信せず、ステータス値のみを送信する。これは、新ファームウェアに新機能が追加されないため、プリンター制御部10は、設定値要求コマンドを読み捨てるためである。
図2の説明に戻り、ホスト2のホスト制御部20は、プリンター1から送信される値を受信する(ステップSA4)。
ホスト制御部20は、プリンター1に新ファームウェアが実装される場合、設定値要求コマンドによる新機能設定値、及び、ステータス要求コマンドによるステータス値を受信する(ステップSA4)。また、ホスト制御部20は、プリンター1に旧ファームウェアが実装される場合、新機能設定値を受信せず、ステータス値を受信する(ステップSA4)。
次いで、ホスト制御部20は、ステータス要求コマンドによるステータス値より先に、設定値要求コマンドによる新機能設定値を受信したか否かを判別する(ステップSA5)。プリンタードライバー211が、ステータス値より先に新機能設定値を受信したか否かを判別する機能を有し、ホスト制御部20は、プリンタードライバー211を実行することにより、ステップSA5の処理を実行する。
ホスト制御部20は、ステータス要求コマンドによるステータス値より先に、設定値要求コマンドによる新機能設定値を受信したと判別した場合(ステップSA5:YES)、プリンター1のファームウェア111のバージョンアップにより、新機能が追加されたと判断する(ステップSA6)。プリンタードライバー211が、ステータス値より先に新機能設定値を受信したと判別した場合、プリンター1に新機能が追加されたと判断する機能を有し、ホスト制御部20は、プリンタードライバー211を実行することにより、ステップSA6の処理を実行する。
前述した通り、ホスト制御部20は、設定値要求コマンド、ステータス要求コマンドの順に、これらコマンドをプリンター1に送信する。そして、プリンター制御部10は、受信した順、すなわち、設定値要求コマンド、ステータス要求コマンドの順に、コマンドに対する処理を実行する。ここで、プリンター1のファームウェア111に新機能が追加されている場合、プリンター制御部10は、ステータス要求コマンドより先に、設定値要求コマンドに対して処理を実行するため、ステータス値より先に、新機能設定値をホスト2に送信する。本実施形態では、新ファームウェアに新機能が追加されており、ファームウェア111のバージョンアップにより新ファームウェアがプリンター1に実装される場合を例示するため、プリンター制御部10は、ステータス値より先に、新機能設定値をホスト2に送信する。したがって、プリンター1に新機能が追加されている場合、ホスト制御部20は、ステータス値より先に、新機能設定値を受信することになる。そのため、ホスト制御部20は、ステータス値より先に、新機能設定値を受信したと判別した場合、プリンター1のファームウェア111のバージョンアップにより、プリンター1に新機能が追加されたと判断する。
一方、ホスト制御部20は、ステータス値より先に、新機能設定値を受信してないと判別した場合(ステップSA5:NO)、新機能設定値の受信を待たず、プリンター1のファームウェア111のバージョンアップにより、新機能が追加されていないと判断する(ステップSA7)。プリンタードライバー211が、ステータス値より先に新機能設定値を受信していないと判別した場合、新機能設定値の受信を待たず、新機能が追加されていないと判断する機能を有し、ホスト制御部20は、プリンタードライバー211を実行することにより、ステップSA7の処理を実行する。
ホスト制御部20は、設定値要求コマンド、ステータス要求コマンドの順に、プリンター1に送信するため、プリンター制御部10は、この順で、コマンドに対する処理を実行する。そして、プリンター制御部10は、新機能が追加されていない場合、設定値要求コマンドを読み捨て、ステータス要求コマンドに対する処理を実行する。そのため、プリンター制御部10は、新機能が追加されていない場合、設定値要求コマンドによる設定値を送信することなく、ステータス要求コマンドによるステータス値を送信する。したがって、新機能が追加されていない場合、ホスト制御部20は、設定値要求コマンドによる設定値より先に、ステータス要求コマンドによるステータス値を受信することになる。そのため、ホスト制御部20は、ステータス要求コマンドによるステータス値より先に、設定値要求コマンドによる設定値を受信してないと判別した場合、プリンター1のファームウェア111のバージョンアップにより、新機能が追加されていないと判断する。
このように、ホスト制御部20は、新機能設定値をステータス値より先に受信した場合、ファームウェア111のバージョンアップにより、プリンター1に新機能が追加されたと判断し、新機能設定値より先にステータス値を受信した場合、プリンター1に新機能が追加されていないと判断する。ここで、ホスト制御部20は、設定値要求コマンドのみ送信し、設定値要求コマンドに対する応答が、所定の期間内である場合、新機能が追加されたと判断し、所定の期間が経過しても応答がない場合、新機能の追加がないと判断する構成であるとする。この構成の場合、ホスト制御部20は、プリンター1に新機能の追加がない場合、新機能の追加がないと判断するまで、所定の期間分の時間を要することになる。そこで、本実施形態のホスト制御部20は、プリンタードライバー211の機能により、設定値要求コマンドに対する応答がなくても、ステータス要求コマンドに対する応答があれば、新機能の追加がないと判断する。そのため、ホスト制御部20は、速やかに、プリンター1に新機能が追加されたか否かを判断できる。
なお、このプリンター1に新機能が追加されたか否かは、ホスト2からプリンター1に送信する設定値要求コマンド及びステータス要求コマンドに基づくものである。したがって、新機能の追加がないと判別することは、プリンター1が設定値要求コマンドに対応していないと判別することに相当する。また、新機能の追加があると判別することは、プリンター1が設定値要求コマンドに対応していると判別することに相当する。
また、ホスト制御部20は、プリンタードライバー211の機能により、設定値要求コマンド、ステータス要求コマンドの順に、これらコマンドを送信する。ここで、ホスト制御部20が、この順番で、設定値要求コマンド、及び、ステータス要求コマンドを送信しない場合、プリンター1に新機能が追加されたか否かの判断が速やかに実行できない。詳述すると、プリンター制御部10は、ホスト2から受信したコマンド順に処理を実行する。ここで、ステータス要求コマンド、設定値要求コマンドの順に受信したとすると、プリンター制御部10は、ステータス値、新機能設定値の順にこれら値をホスト2に送信することになる。ファームウェア111のバージョンアップにより新機能が追加されていないと、プリンター制御部10が新機能設定値を送信しない上、新機能設定値の後にステータス値を送信することがない。そのため、ホスト制御部20は、プリンター1に新機能が追加された否かの判断に時間を要することになり、更には判断が実行できないといった事態が発生する。そこで、本実施形態は、設定値要求コマンド、ステータス要求コマンドの順にプリンター1に送信するため、ホスト制御部20は、プリンター1から新機能設定値を受信することがなくても、後に送信したステータス要求コマンドによるステータス値を受信するため、速やかに、プリンター1に新機能が追加されたか否かを判断できる。
上記の説明では、プリンター1に新機能が追加され、設定値要求コマンドにより、新機能を示す設定項目に対応する新機能設定値を送信させる場合を例示した。しかしながら、設定項目に対する設定値を送信する機能自体を、新機能としてもよい。つまり、実装するファームウェア111を新ファームウェアにバージョンアップすることで、プリンター1は、設定項目に対する設定値を送信可能となる。この場合、プリンター制御部10は、ホスト2から送信される設定値要求コマンドの命令コードの解釈を実行し、解釈可能である場合、パラメーターが指定する設定項目の設定値を、ステータス値より先に、ホスト2に送信する。一方、プリンター制御部10は、当該命令コードの解釈が不能である場合、設定値要求コマンドが対応していないと判別し、設定項目の設定値の送信を実行しない。そして、プリンター制御部10は、設定値を送信せず、ステータス値を送信する。このような場合でも、ホスト制御部20は、上述した効果を奏することができる。
以上、説明したように、プリンタードライバー(プログラム)は、プリンター1(印刷装置)と接続可能なホスト2(制御装置)のホスト制御部20(制御部)により実行可能なプログラムである。プリンタードライバー211は、ホスト制御部20に、プリンター1に新機能設定値(第1所定値)の応答を要求する設定値要求コマンド(第1コマンド)を送信させ、ステータス値(第2所定値)の応答を要求するステータス要求コマンド(第2コマンド)を送信させ、設定値要求コマンドによる新機能設定値を、ステータス要求コマンドによるステータス値より先に受信した場合、プリンター1が設定値要求コマンドに対応していると判断させる。
これにより、ホスト制御部20は、プリンタードライバーの機能により、設定値要求コマンドによる新機能設定値を、ステータス要求コマンドによるステータス値より先に受信した場合、プリンター1が設定値要求コマンドに対応していると判断するため、速やかに、ホスト2から送信するコマンドがプリンター1に対応しているか否かを判断できる。コマンドが対応しているとは、プリンター1がコマンドに基づく処理を実行可能であることを示す。そのため、ホスト制御部20は、速やかに、送信するコマンドが、プリンター1によって実行可能なコマンドであるか否かを判断できる。また、プリンタードライバー211が、コマンドを管理する必要がなく、ファームウェア111がバージョンアップされた場合でも、プリンター1に対応するコマンドの管理に手間がかかることがない。
また、プリンタードライバー211は、ホスト制御部20に、ステータス要求コマンドによるステータス値を、設定値要求コマンドによる新機能設定値より先に受信した場合、設定値要求コマンドによる新機能設定値の受信を待たず、プリンター1が設定値要求コマンドに対応していないと判断させる機能を有する。
これにより、ホスト制御部20は、プリンタードライバー211の機能により、ステータス要求コマンドによるステータス値を、設定値要求コマンドよる新機能設定値より先に受信した場合、設定値要求コマンドによる新機能設定値の受信を待たず、プリンター1が設定値要求コマンドに対応していると判断するため、速やかに、送信するコマンドにプリンター1が対応しているか否かを判断できる。
また、設定値要求コマンドは、プリンター1に追加可能な機能によって設定値の応答を実行させるコマンドである。また、ステータス要求コマンドは、プリンター1に実装された機能によってステータス値の応答を実行させるコマンドである。
設定値要求コマンドは、プリンター1に追加可能な機能によって設定値の応答を実行させるコマンドである。また、ステータス要求コマンドは、プリンター1に実行された機能によってステータス値の応答を実行させるコマンドである。そのため、ホスト制御部20は、プリンタードライバー211の機能により、プリンター1に新機能が追加されたか否かを速やかに判断できる。
また、設定値要求コマンドは、プリンター1にインストールされたファームウェア111のバージョンアップにより追加可能な機能によって設定値の応答を実行させるコマンドである。また、ステータス要求コマンドは、バージョンアップ前のファームウェア111に実装された機能によってステータス値の応答を実行させるコマンドである。
設定値要求コマンドは、プリンター1にインストールされたファームウェア111のバージョンアップにより追加可能な機能によって設定値の応答を実行させるコマンドである。また、ステータス要求コマンドは、バージョンアップ前のファームウェア111に実行された機能によってステータス値の応答を実行させるコマンドである。そのため、ホスト制御部20は、プリンタードライバー211の機能により、ファームウェア111のバージョンアップにより新機能が追加されたか否かを速やかに判断できる。
なお、上述した実施形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形及び応用が可能である。
例えば、上述した実施形態では、新ファームウェアに追加される新機能として、印刷速度の変更可能とする機能を例示した。しかしながら、印刷速度の変更可能とする機能に限定されず、例えば、印刷媒体に文字を印刷する際、1行と1行との間を削減可能とする機能でもよく、旧ファームウェアに実装されていない機能であればよい。
また、例えば、上述した実施形態では、第1コマンドとして、新ファームウェアに追加された新機能を示す設定項目の設定値の応答を要求する設定値要求コマンドを例示した。しかしながら、第1コマンドは、設定値要求コマンドに限定されず、新機能に係る所定の値の応答を要求するコマンドであり、旧ファームウェアを実装するプリンター1に対応していないコマンドであればよい。また、上述した実施形態では、第2コマンドとして、ステータス値の応答を要求するコマンドを例示した。しかしながら、第2コマンドは、新ファームウェアを実装するプリンター1、及び、旧ファームウェアを実装するプリンター1に対応するコマンドであり、応答を要求するコマンドでればよい。
また、例えば、ファームウェア111をバージョンアップする際の新ファームウェアの受信の態様は、ホスト2からの受信でもよく、USBメモリー等の記憶媒体を介して受信する構成でもよい。この場合、プリンターインターフェース部15は、記憶媒体が接続可能な構成とされる。
また、例えば、上述したホスト2の制御方法(制御装置の制御方法)が、ホスト2が備えるコンピューターを用いて実現される場合、本発明を、上記制御方法を実現するためにコンピューターが実行するプログラム、このプログラムを前記コンピューターで読み取り可能に記録した記録媒体、或いは、このプログラムを伝送する伝送媒体の態様で構成することも可能である。上記記録媒体としては、磁気的、光学的記録媒体又は半導体メモリーデバイスを用いることができる。具体的には、フレキシブルディスク、HDD(Hard Disk Drive)、CD−ROM(Compact Disk Read Only Memory)、DVD(Digital Versatile Disk)、Blu−ray(登録商標) Disc、光磁気ディスク、フラッシュメモリー、カード型記録媒体等の可搬型の、或いは固定式の記録媒体が挙げられる。また、上記記録媒体は、ホスト2が備える内部記憶装置であるRAM(Random Access Memory)、ROM(Read Only Memory)、HDD等の不揮発性記憶装置であってもよい。
また、例えば、図2の処理単位は、ホスト2の処理を理解容易にするために、主な処理内容に応じて分割したものであり、処理単位の分割の仕方や名称によって、本発明が限定されることはない。ホスト2の処理は、処理内容に応じて、されに多くの処理単位に分割してもよい。また、1つの処理単位がさらに多くの処理を含むように分割してもよい。また、図3の処理単位は、プリンター1の処理を理解容易にするために、主な処理内容に応じて分割したものであり、処理単位の分割の仕方や名称によって、本発明が限定されることはない。プリンター1の処理は、処理内容に応じて、されに多くの処理単位に分割してもよい。また、1つの処理単位がさらに多くの処理を含むように分割してもよい。
また、図1に示した各機能部は機能的構成を示すものであって、具体的な実装形態は特に限定されない。つまり、必ずしも各機能部に個別に対応するハードウェアが実装される必要はなく、一つのプロセッサーがプログラムを実行することで複数の機能部の機能を実現する構成とすることも勿論可能である。また、上述した実施形態においてソフトウェアで実現される機能の一部をハードウェアとしてもよく、或いは、ハードウェアで実現される機能の一部をソフトウェアで実現してもよい。その他、ホスト2、及び、プリンター1の他の各部の具体的な細部構成についても、本発明の趣旨を逸脱しない範囲で任意に変更可能である。
また、例えば、上述した実施形態において、プリンター1をインクジェット式のプリンターとして例示したが、これに限定されない。例えば、サーマルプリンターや、ドットインパクトプリンター、レーザープリンター等の他のプリンターでも本発明を適応できる。
1…プリンター(印刷装置)、2…ホスト(制御装置)、3…印刷システム、10…プリンター制御部、11…プリンター記憶部、12…印刷部、13…プリンター入力部、14…プリンター表示部、15…プリンターインターフェース部、16…受信バッファー、20…ホスト制御部(制御部)、21…ホスト記憶部、22…ホストインターフェース部、23…ホスト入力部、24…ホスト表示部、42…ホスト表示部、111…ファームウェア、112…設定ファイル、113…ログファイル、121…印刷ヘッド、211…プリンタードライバー(プログラム)。

Claims (7)

  1. 印刷装置と接続可能な制御装置の制御部により実行可能なプログラムであって、
    前記制御部に、
    前記印刷装置に第1所定値の応答を要求する第1コマンドを送信させ、第2所定値の応答を要求する第2コマンドを送信させ、前記第1コマンドによる前記第1所定値を、前記第2コマンドによる前記第2所定値より先に受信した場合、前記印刷装置が前記第1コマンドに対応していると判断させる
    プログラム。
  2. 前記制御部に、
    前記第2コマンドによる前記第2所定値を、前記第1コマンドによる前記第1所定値より先に受信した場合、前記第1コマンドによる前記第1所定値の受信を待たず、前記印刷装置が前記第1コマンドに対応していないと判断させる
    請求項1に記載のプログラム。
  3. 前記第1コマンドは、前記印刷装置に追加可能な機能によって前記第1所定値の応答を実行させるコマンドであり、
    前記第2コマンドは、前記印刷装置に実装された機能によって前記第2所定値の応答を実行させるコマンドである
    請求項1又は2に記載のプログラム。
  4. 前記第1コマンドは、前記印刷装置にインストールされたファームウェアのバージョンアップにより追加可能な機能によって前記第1所定値の応答を実行させるコマンドであり、
    前記第2コマンドは、バージョンアップ前の前記ファームウェアに実装された機能によって前記第2所定値の応答を実行させるコマンドである
    請求項3に記載のプログラム。
  5. 前記第1所定値は、前記印刷装置の設定値であり、
    前記第2所定値は、前記印刷装置のステータスである
    請求項1から4のいずれか一項に記載のプログラム。
  6. 印刷装置と接続可能な制御装置であって、
    前記印刷装置に第1所定値の応答を要求する第1コマンドを送信し、第2所定値の応答を要求する第2コマンドを送信し、前記第1コマンドによる前記第1所定値を、前記第2コマンドによる前記第2所定値より先に受信した場合、前記印刷装置が前記第1コマンドに対応していると判断する制御部を備える
    制御装置。
  7. 印刷装置と接続可能な制御装置の制御方法であって、
    前記印刷装置に第1所定値の応答を要求する第1コマンドを送信するステップと、
    第2所定値の応答を要求する第2コマンドを送信するステップと、
    前記第1コマンドによる前記第1所定値を、前記第2コマンドによる前記第2所定値より先に受信した場合、前記印刷装置が前記第1コマンドに対応していると判断するステップと、を備える
    制御装置の制御方法。
JP2016153538A 2016-08-04 2016-08-04 プログラム、制御装置、及び、制御装置の制御方法 Active JP6740791B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016153538A JP6740791B2 (ja) 2016-08-04 2016-08-04 プログラム、制御装置、及び、制御装置の制御方法
US15/668,270 US10209937B2 (en) 2016-08-04 2017-08-03 Control device and control method of control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016153538A JP6740791B2 (ja) 2016-08-04 2016-08-04 プログラム、制御装置、及び、制御装置の制御方法

Publications (2)

Publication Number Publication Date
JP2018022362A true JP2018022362A (ja) 2018-02-08
JP6740791B2 JP6740791B2 (ja) 2020-08-19

Family

ID=61069418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016153538A Active JP6740791B2 (ja) 2016-08-04 2016-08-04 プログラム、制御装置、及び、制御装置の制御方法

Country Status (2)

Country Link
US (1) US10209937B2 (ja)
JP (1) JP6740791B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019155932A1 (ja) 2018-02-09 2019-08-15 キヤノン電子株式会社 ソレノイドバルブ
JP2021071892A (ja) * 2019-10-30 2021-05-06 シチズン時計株式会社 プリンタの制御装置及びプリンタの制御方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7251266B2 (ja) * 2019-03-29 2023-04-04 ブラザー工業株式会社 プログラムの組み合わせおよびプログラム
JP7408931B2 (ja) * 2019-06-28 2024-01-09 株式会社リコー 電子機器、情報処理システム、情報処理方法およびプログラム
JP7380157B2 (ja) * 2019-12-06 2023-11-15 富士フイルムビジネスイノベーション株式会社 情報処理装置およびプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006119957A (ja) * 2004-10-22 2006-05-11 Brother Ind Ltd 情報処理装置及び対応情報追加プログラム
JP2012053510A (ja) * 2010-08-31 2012-03-15 Brother Ind Ltd 情報処理装置、情報処理装置の制御プログラム、情報処理システム
JP2012141880A (ja) * 2011-01-05 2012-07-26 Seiko Epson Corp 制御装置、記録システム、制御装置の制御方法、及び、プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11175286A (ja) 1997-12-15 1999-07-02 Canon Inc 印刷制御システム及び方法、記憶媒体
JP3881145B2 (ja) 2000-01-31 2007-02-14 株式会社リコー 画像形成装置管理システム
JP2009134474A (ja) 2007-11-29 2009-06-18 Brother Ind Ltd ファームウェア書き換え方法、ファームウェア書き換えプログラム、およびファームウェア管理装置
JP6346481B2 (ja) * 2014-03-25 2018-06-20 キヤノン株式会社 送信装置とその制御方法、及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006119957A (ja) * 2004-10-22 2006-05-11 Brother Ind Ltd 情報処理装置及び対応情報追加プログラム
JP2012053510A (ja) * 2010-08-31 2012-03-15 Brother Ind Ltd 情報処理装置、情報処理装置の制御プログラム、情報処理システム
JP2012141880A (ja) * 2011-01-05 2012-07-26 Seiko Epson Corp 制御装置、記録システム、制御装置の制御方法、及び、プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019155932A1 (ja) 2018-02-09 2019-08-15 キヤノン電子株式会社 ソレノイドバルブ
JP2021071892A (ja) * 2019-10-30 2021-05-06 シチズン時計株式会社 プリンタの制御装置及びプリンタの制御方法
JP7339125B2 (ja) 2019-10-30 2023-09-05 シチズン時計株式会社 プリンタの制御装置及びプリンタの制御方法

Also Published As

Publication number Publication date
US20180039461A1 (en) 2018-02-08
US10209937B2 (en) 2019-02-19
JP6740791B2 (ja) 2020-08-19

Similar Documents

Publication Publication Date Title
JP6740791B2 (ja) プログラム、制御装置、及び、制御装置の制御方法
JP2011048503A (ja) 画像形成装置
CN102591163B (zh) 图像形成装置及作业管理方法
US20090241099A1 (en) Image forming apparatus and firmware history information offering method thereof
JP2009025865A (ja) 情報処理装置、情報処理プログラム及び記録媒体
JP2019036170A (ja) 情報処理装置
JP2017010169A (ja) 印刷制御装置、プログラムおよび印刷システム
JP2008262287A (ja) 通信制御装置および通信ログ保存方法
KR101531787B1 (ko) 인쇄 제어 장치, 인쇄 제어 방법, 및, 인쇄 시스템
US9836258B2 (en) Information processing apparatus, control method, and non-transitory computer-readable recording medium
JP2015162210A (ja) 情報処理装置及び情報処理プログラム
JP6987541B2 (ja) 画像形成装置及び画像形成装置の制御方法
US20200150947A1 (en) Information processing apparatus, updating method by information processing apparatus, and recording medium
JP2018001702A (ja) 印刷装置、及び、印刷装置の制御方法
JP6484111B2 (ja) 情報処理装置およびその制御方法、並びにプログラム
US20170160964A1 (en) Electronic device and non-transitory computer readable storage medium
JP2015147306A (ja) 印刷装置、及び、印刷システム
JP2008105321A (ja) 画像形成装置
US20200293243A1 (en) Image forming apparatus
US20220253233A1 (en) Memory control device and method
JP2017130082A (ja) ネットワークシステム、情報処理装置、情報処理装置の制御方法、及び印刷装置
JP2018124611A (ja) 外部メディア処理装置およびプログラム
KR20070075576A (ko) 화상형성시스템 및 화상형성방법
KR101576306B1 (ko) 기록 장치 및 기록 장치의 제어 방법
US10015347B2 (en) Information processing apparatus for acquiring and updating a retention storage for information stored in a processing apparatus, information processing method, and non-transitory storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190620

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200303

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200415

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200623

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200706

R150 Certificate of patent or registration of utility model

Ref document number: 6740791

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150