(57)【要約】【課題】外部機器と制御装置のコネクションが正常でない状態である可能性がある場合に、速やかに正常な状態へ移行させる処理を実行可能とする。【解決手段】ホストコンピューター１０は、プリンター１２と通信可能に接続されたことを検出する接続検出部２１ａと、接続検出部２１ａによりプリンター１２と通信可能に接続されたことが検出された場合、接続されたプリンター１２に、当該プリンター１２において確立されている全てのコネクションの強制的な切断を伴うリセット処理を実行させるリセット指示部２１ｂと、を備える。【選択図】図１
2012165315.tif 000002
【特許請求の範囲】
【請求項１】
外部機器との間で、コネクション型のプロトコルを用いた通信が可能な制御装置であって、
前記外部機器と通信可能に接続されたことを検出する接続検出部と、
前記接続検出部により前記外部機器と通信可能に接続されたことが検出された場合、接続された前記外部機器に、当該外部機器との間で確立されているコネクションの強制的な切断を伴うリセット処理を実行させるリセット指示部と、を備えることを特徴とする制御装置。
【請求項２】
前記接続検出部は、
前記外部機器との間でコネクションが確立された状態から、前記プロトコルに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、通信可能に接続されたことを検出可能であり、
前記リセット指示部は、
前記接続検出部により、前記外部機器との間でコネクションが確立された状態から、前記プロトコルに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、通信可能に接続されたことが検出された場合、前記外部機器に前記リセット処理を実行させることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記リセット指示部は、
前記外部機器にリセット処理を実行させる前に、前記プロトコルに準拠したコネクションの切断を試行し、前記コネクションの切断を実現できなかった場合に、前記外部機器にリセット処理を実行させることを特徴とする請求項２に記載の制御装置。
【請求項４】
１つの外部機器と、この外部機器との間でコネクション型のプロトコルを用いた通信が可能な複数の制御装置と、を備えた制御システムであって、
複数の前記制御装置のうち、１つの前記制御装置が、排他的に、前記プロトコルを用いた通信により前記外部機器を制御可能であり、
前記制御装置のそれぞれは、
前記外部機器との間でコネクションが確立された状態から、前記プロトコルに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、通信可能に接続されたことを検出する接続検出部と、
前記接続検出部により、前記外部機器との間でコネクションが確立された状態から、前記プロトコルに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、通信可能に接続されたことが検出された場合、接続された前記外部機器に、前記外部機器との間で確立されているコネクションの切断を伴うリセット処理を実行させるリセット指示部と、を備えることを特徴とする制御システム。
【請求項５】
外部機器との間で、コネクション型のプロトコルを用いた通信が可能な制御装置の制御方法であって、
前記外部機器と通信可能に接続されたことを検出し、
前記外部機器と通信可能に接続されたことを検出した場合、接続された前記外部機器に、当該外部機器との間で確立されているコネクションの強制的な切断を伴うリセット処理を実行させることを特徴とする制御装置の制御方法。
【請求項６】
外部機器との間で、コネクション型のプロトコルを用いた通信が可能な制御装置を制御する制御装置を制御する制御部により実行されるプログラムであって、
前記制御部を、
前記外部機器と通信可能に接続されたことを検出する接続検出部と、
前記接続検出部により前記外部機器と通信可能に接続されたことが検出された場合、接続された前記外部機器に、当該外部機器との間で確立されているコネクションの強制的な切断を伴うリセット処理を実行させるリセット指示部と、として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部機器との間で、コネクション型のプロトコルを用いた通信が可能な制御装置、当該制御装置と外部機器とを備える制御システム、当該制御装置の制御方法、及び、当該制御装置を制御するためのプログラムに関する。
【背景技術】
【０００２】
従来、制御装置（ホストコンピューター）と、外部機器（プリンター）との間で、ＴＣＰ等のコネクション型のプロトコルを用いて通信を行うシステムが知られている（例えば、特許文献１参照）。
この種のシステムでは、ＬＡＮ等のネットワークを介して、１の外部機器に対し、複数の制御装置が接続され、外部機器と、複数の制御装置のそれぞれとの間でコネクションが確立されて、上記プロトコルを用いた通信が行われる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−７４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ここで、上述したシステムのように、外部機器と、複数の制御装置のそれぞれとの間でコネクションが確立されて、プロトコルを用いた通信が行われるものでは、一方の制御装置と外部機器とのコネクションが正常でなく、このことが他方の制御装置と外部機器とのコネクションに悪影響を与えることがある。例えば、何らかのエラーの発生に起因して、一方の制御装置と外部機器とのコネクションの切断が行えない状態となり、そのことに起因して、他方の制御装置と外部機器との間で正常にコネクションが確立できない状態となり、また、正常に通信が行えない状態となることがある。これを踏まえ、外部機器と制御装置のコネクションが正常でない状態である可能性がある場合は、速やかに正常な状態へ移行させる処理を実行したいとするニーズがあった。
本発明は、上述した事情に鑑みてなされたものであり、外部機器と制御装置のコネクションが正常でない状態である可能性がある場合に、速やかに正常な状態へ移行させる処理を実行可能とすることを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、外部機器との間で、コネクション型のプロトコルを用いた通信が可能な制御装置であって、前記外部機器と通信可能に接続されたことを検出する接続検出部と、前記接続検出部により前記外部機器と通信可能に接続されたことが検出された場合、接続された前記外部機器に、当該外部機器との間で確立されているコネクションの強制的な切断を伴うリセット処理を実行させるリセット指示部と、を備えることを特徴とする。
ここで、制御装置と外部機器との間でコネクションが確立されている状態で、例えば、制御装置と外部機器とを接続する通信ケーブルが一時的に外される等されて、一旦、外部機器と制御装置との間での接続が遮断された後、再び、外部機器と制御装置とが接続された場合、一時的な接続の遮断に起因して、コネクションが正常でない状態となっている可能性がある。
これを踏まえ、上記構成によれば、接続検出部により外部機器と通信可能に接続されたことが検出された場合、リセット指示部は、外部機器に、当該外部機器において確立されているコネクションの切断を伴うリセット処理を実行させて、外部機器において確立されているコネクションを切断する。このため、上述したように、コネクションが正常でない状態となっている可能性があることが検出された場合に、速やかに、当該コネクションが切断された正常な状態へ移行させることが可能となる。
【０００６】
また、上記発明の制御装置であって、本発明は、前記接続検出部は、前記外部機器との間でコネクションが確立された状態から、前記プロトコルに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、通信可能に接続されたことを検出可能であり、前記リセット指示部は、前記接続検出部により、前記外部機器との間でコネクションが確立された状態から、前記プロトコルに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、通信可能に接続されたことが検出された場合、前記外部機器に前記リセット処理を実行させることを特徴とする。
この構成によれば、外部機器との間でコネクションが確立された状態から、プロトコルに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、外部機器に通信可能に接続され、確立されていたコネクションが正常でない可能性がある場合に、速やかに、当該正常でない可能性があるコネクションを切断し、正常な状態へ移行させることが可能となる。
【０００７】
また、上記発明の制御装置であって、本発明は、前記リセット指示部は、前記外部機器にリセット処理を実行させる前に、前記プロトコルに準拠したコネクションの切断を試行し、前記コネクションの切断を実現できなかった場合に、前記外部機器にリセット処理を実行させることを特徴とする。
ここで、リセット処理は、外部機器において確立されているコネクションの切断を伴う処理であるため、プロトコルに準拠してコネクションを切断する場合と比較して、外部機器における通信に対する影響が大きいと言える。
これを踏まえ、上記構成によれば、プロトコルに準拠したコネクションの切断ができない場合に初めて、リセット処理が行われることとなり、外部機器における通信に対する影響が大きいリセット処理が実行されることをできるだけ防止しつつ、正常な状態への確実な移行を実現可能である。
【０００８】
また、上記目的を達成するために、本発明は、１つの外部機器と、この外部機器との間でコネクション型のプロトコルを用いた通信が可能な複数の制御装置と、を備えた制御システムであって、複数の前記制御装置のうち、１つの前記制御装置が、排他的に、前記プロトコルを用いた通信により前記外部機器を制御可能であり、前記制御装置のそれぞれは、前記外部機器との間でコネクションが確立された状態から、前記プロトコルに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、通信可能に接続されたことを検出する接続検出部と、前記接続検出部により、前記外部機器との間でコネクションが確立された状態から、前記プロトコルに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、通信可能に接続されたことが検出された場合、接続された前記外部機器に、前記外部機器との間で確立されているコネクションの切断を伴うリセット処理を実行させるリセット指示部と、を備えることを特徴とする。
ここで、制御装置と外部機器との間でコネクションが確立されている状態で、例えば、制御装置と外部機器とを接続する通信ケーブルが一時的に外される等されて、一旦、外部機器と制御装置との間での接続が遮断された後、再び、外部機器と制御装置とが接続された場合、一時的な接続の遮断に起因して、コネクションが正常でない状態となっている可能性がある。
これを踏まえ、上記構成によれば、接続検出部により外部機器と通信可能に接続されたことが検出された場合、リセット指示部は、外部機器に、当該外部機器において確立されているコネクションの切断を伴うリセット処理を実行させて、外部機器において確立されているコネクションを切断する。このため、上述したように、コネクションが正常でない状態となっている可能性があることが検出された場合に、速やかに、当該コネクションが切断された正常な状態へ移行させることが可能となる。
【０００９】
また、上記目的を達成するために、本発明は、外部機器との間で、コネクション型のプロトコルを用いた通信が可能な制御装置の制御方法であって、前記外部機器と通信可能に接続されたことを検出し、前記外部機器と通信可能に接続されたことを検出した場合、接続された前記外部機器に、当該外部機器との間で確立されているコネクションの強制的な切断を伴うリセット処理を実行させることを特徴とする。
ここで、制御装置と外部機器との間でコネクションが確立されている状態で、例えば、制御装置と外部機器とを接続する通信ケーブルが一時的に外される等されて、一旦、外部機器と制御装置との間での接続が遮断された後、再び、外部機器と制御装置とが接続された場合、一時的な接続の遮断に起因して、コネクションが正常でない状態となっている可能性がある。
これを踏まえ、上記制御方法によれば、外部機器と通信可能に接続されたことが検出された場合、外部機器に、当該外部機器において確立されているコネクションの切断を伴うリセット処理を実行させて、外部機器において確立されているコネクションを切断する。このため、上述したように、コネクションが正常でない状態となっている可能性があることが検出された場合に、速やかに、当該コネクションが切断された正常な状態へ移行させることが可能となる。
【００１０】
また、上記目的を達成するために、本発明は、外部機器との間で、コネクション型のプロトコルを用いた通信が可能な制御装置を制御する制御装置を制御する制御部により実行されるプログラムであって、前記制御部を、前記外部機器と通信可能に接続されたことを検出する接続検出部と、前記接続検出部により前記外部機器と通信可能に接続されたことが検出された場合、接続された前記外部機器に、当該外部機器との間で確立されているネクションの強制的な切断を伴うリセット処理を実行させるリセット指示部と、として機能させることを特徴とする。
ここで、制御装置と外部機器との間でコネクションが確立されている状態で、例えば、制御装置と外部機器とを接続する通信ケーブルが一時的に外される等されて、一旦、外部機器と制御装置との間での接続が遮断された後、再び、外部機器と制御装置とが接続された場合、一時的な接続の遮断に起因して、コネクションが正常でない状態となっている可能性がある。
これを踏まえ、上記プログラムを実行すれば、接続検出部により外部機器と通信可能に接続されたことが検出された場合、リセット指示部は、外部機器に、当該外部機器において確立されているコネクションの切断を伴うリセット処理を実行させて、外部機器において確立されているコネクションを切断する。このため、上述したように、コネクションが正常でない状態となっている可能性があることが検出された場合に、速やかに、当該コネクションが切断された正常な状態へ移行させることが可能となる。
【発明の効果】
【００１１】
本発明によれば、外部機器と制御装置のコネクションが正常でない状態である可能性がある場合に、速やかに正常な状態へ移行させる処理を実行可能となる。
【図面の簡単な説明】
【００１２】
【図１】本実施形態に係るＰＯＳシステムの機能的構成を示すブロック図である。
【図２】ホストコンピューターの動作を示すフローチャートである。
【図３】図２のフローチャートの説明に用いる図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明の実施形態について説明する。
図１は、本実施形態に係るＰＯＳシステム１（記録システム）の機能的構成を示すブロック図である。
ＰＯＳシステム１は、スーパーマーケットやコンビニエンスストア等の店舗に適用され、店舗に来店した顧客の代金の支払いに応じてレシートを発行することをその機能の１つとするシステムであり、図１に示すように、複数（２台）のホストコンピューター１０ａ、１０ｂ（制御装置）と、ＰＯＳサーバー１１と、１台のプリンター１２（外部機器）とを備えており、これら装置が、例えばイーサネット（登録商標）の規格に準拠した通信ケーブルや、ハブ、ルーター、無線通信機器等のネットワーク機器を介して通信可能に接続され、ＬＡＮが構成されている。なお、ホストコンピューター１０ａ、１０ｂの構成は略同一であり、以下の説明において、これらホストコンピューター１０ａ、１０ｂを特に区別しない場合は、ホストコンピューター１０と称する。
【００１４】
ＰＯＳサーバー１１は、ネットワークを介してホストコンピューター１０に通信可能に接続されており、店舗で販売している商品の商品コードや、名称、金額等のレシートの発行のために必要となる情報を示すデータをデータベースとして記憶する。ホストコンピューター１０は、レシートの発行に際し、適宜、ＰＯＳサーバー１１に記憶されたデータベースを参照し、必要な情報を取得する。
【００１５】
ホストコンピューター１０は、制御部１５と、表示部１６と、入力部１７と、記憶部１８と、ネットワーク通信部１９と、を備えている。
制御部１５は、ホストコンピューター１０の各部を中枢的に制御するものであり、演算実行部としてのＣＰＵや、このＣＰＵに実行される基本制御プログラムや、この基本制御プログラムに係るデータ等を不揮発的に記憶するＲＯＭ、ＣＰＵに実行されるプログラムやこのプログラムに係るデータ等を一時的に記憶するＲＡＭ、その他の周辺回路等を備えている。
図１に示すように、制御部１５は、ＰＯＳアプリケーション実行部２０と、プリンタードライバー実行部２１と、を備えているが、これらについては後述する。
【００１６】
表示部１６は、液晶ディスプレーパネルや、有機ＥＬパネル等の表示パネルを備え、制御部１５の制御の下、表示パネルに各種情報を表示する。
入力部１７は、キーボードや、マウス、バーコードリーダー、カードリーダー等の入力デバイスに接続され、これら入力デバイスの出力信号を制御部１５に出力する。バーコードリーダーは商品の包装紙等に記録されたバーコードの読み取りに利用され、カードリーダーはクレジットカードや、会員カード等に記録された情報の読み取りに利用される。バーコードリーダーやカードリーダー等の入力デバイスを用いて取得した情報は、レシートの発行に係る処理に用いられる。
記憶部１８は、ハードディスクや、ＥＥＰＲＯＭ等の記憶媒体を備え、各種データを書き換え可能に記憶する。
ネットワーク通信部１９は、ホストコンピューター１０に実装されたインターフェイスボードや、ホストコンピューター１０に設けられた拡張スロットに接続されたネットワークカードにより構成され、ＬＡＮを介して他の通信端末との間で所定の規格に準拠した通信を行うものであり、所定の通信規格に準拠して信号処理を行うネットワークコントローラー１９ａと、有線または無線にてＬＡＮに接続される通信インターフェイス１９ｂと、を備えている。本実施形態に係るネットワークコントローラー１９ａは、少なくとも、ＴＣＰ／ＩＰに準拠した信号処理を実行可能である。
【００１７】
プリンター１２は、ロール状に巻かれた感熱ロール紙を、ローラー状のプラテンにより搬送し、この感熱ロール紙の記録面に、発熱素子を備えたラインサーマルヘッドによって熱を与えることにより画像を記録した上で、所定の位置で感熱ロール紙を切断することにより、レシートを発行するサーマルヘッド式プリンターである。
図１に示すように、プリンター１２は、プリンター側制御部２５と、記録部２６と、を備えている。
プリンター側制御部２５は、プリンター１２の各部を中枢的に制御するものであり、ＣＰＵや、ＲＯＭ、ＲＡＭ、その他の周辺回路を備えている。
記録部２６は、プリンター側制御部２５の制御の下、各種センサーの検出値を監視しながら、上述したラインサーマルヘッドのほか、感熱ロール紙を搬送するプラテンローラーを駆動するための搬送モーターや、切断機構が備えるカッターを駆動するためのカッター駆動モーターを動作させて、感熱ロール紙に画像を記録し、画像を記録した感熱ロール紙を切断することによりレシートを発行する。
【００１８】
次いで、ＰＯＳアプリケーション実行部２０及びプリンタードライバー実行部２１の説明を通して、ＰＯＳシステム１がレシートを発行する際の基本的な動作について説明する。
ＰＯＳアプリケーション実行部２０は、ホストコンピューター１０に予めインストールされたＰＯＳアプリケーションを実行することにより、取引毎に、適宜、ＰＯＳサーバー１１にアクセスした上で、取引において購入された商品を示す情報や、商品の単価を示す情報、購入金額を示す情報等のレシートに記載すべき情報を取得し、取得した情報に基づいて、レシートに記録すべき画像に係る記録データを生成し、プリンタードライバー実行部２１に出力する。レシートに記録すべき画像には、商品の名称を示す文字に係る画像や、値段を示す文字に係る画像等の文字に係る画像が含まれている。
プリンタードライバー実行部２１は、ホストコンピューター１０に予めインストールされたプリンタードライバーを実行することにより、ＰＯＳアプリケーション実行部２０から入力された記録データに基づいて、プリンター１２のコマンド仕様に対応した制御コマンドを生成し、プリンター側制御部２５に出力する。この制御コマンドには、搬送機構に感熱ロール紙を搬送させるコマンドや、ラインサーマルヘッドを駆動させるコマンド、切断機構に感熱ロール紙を切断させるコマンド等の、プリンター１２にレシートを発行させるための各種コマンドが含まれている。
制御コマンドが入力されたプリンター側制御部２５は、この制御コマンドに基づいてプリンター１２の各部を制御し、レシートを発行する。
【００１９】
本実施形態に係るＰＯＳシステム１では、ホストコンピューター１０とプリンター１２との間で、少なくともＴＣＰ、及び、ＵＤＰに準拠したデータの送受信が可能である。
ホストコンピューター１０とプリンター１２との間でＴＣＰに準拠した通信を行う場合、周知のように、まず、スリーウェイハンドシェイクにより、これら装置間でのコネクションが確立され、その後、これら装置間でパケットによる各種データの送受信が行われる。また、コネクションが切断（開放）される際は、ホストコンピューター１０とプリンター１２との間でコネクションの切断に係る所定の手続きが行われて、コネクションが切断される。切断に係る所定の手続きでは、ホストコンピューター１０とプリンター１２との間で所定のパケットが所定の手順でやり取りされて、ホストコンピューター１０側のコネクションの切断に対する同意、及び、プリンター１２側のコネクションの切断に対する同意が確定した後、コネクションの完全な切断が実行される。以下の説明では、ＴＣＰの所定の手続きに従ってコネクションが切断されることを「ＴＣＰに準拠したコネクションの切断」と言うものとする。
【００２０】
本実施形態に係るＰＯＳシステム１では、プリンター１２と２つのホストコンピューター１０ａ、１０ｂとの間で同時にコネクションを確立できるものの、コネクションが確立された２つのホストコンピューター１０ａ、１０ｂのうち、プリンター１２に対して上述した制御コマンドを出力することによってプリンター１２を制御可能なホストコンピューター１０は、最初にプリンター１２との間でコネクションを確立したホストコンピューター１０に限られる構成となっている。これにより、ホストコンピューター１０ａ、１０ｂがプリンター１２に出力するジョブの競合が好適に防止されている。
また、プリンター１２の制御ができないホストコンピューター１０は、プリンター１２の制御が可能なホストコンピューター１０とプリンター１２との間におけるコネクションが切断されて初めて、プリンター１２の制御が可能となる。
例えば、プリンター１２とホストコンピューター１０ａ、１０ｂとの間でそれぞれコネクションが確立されており、かつ、最初にプリンター１２との間でコネクションを確立したホストコンピューター１０が、ホストコンピューター１０ａである場合、ホストコンピューター１０ａのみがプリンター１２を制御可能である。そして、ホストコンピューター１０ｂは、ホストコンピューター１０ａとプリンター１２とのコネクションが切断されて初めてプリンター１２を制御可能となる。
【００２１】
ここで、ホストコンピューター１０ａと、プリンター１２との間でコネクションが確立しており、かつ、ホストコンピューター１０ａがプリンター１２を制御可能な状態である場合を想定する。
上記の場合、通常は、ホストコンピューター１０ａがプリンター１２に対して所定の制御コマンドを出力し、一連の制御が終了すると、ホストコンピューター１０ａとプリンター１２との間において、ＴＣＰに準拠したコネクションの切断が実行され、これら装置間でのコネクションが切断される。これにより、コネクションが開放され、ホストコンピューター１０ａ、１０ｂのいずれもが、プリンター１２との間で、新たなコネクションの確立を実行可能な状態となる。
しかしながら、上記の場合において、ホストコンピューター１０ａと、プリンター１２との間における通信ケーブルの抜き差しや、無線通信に係る電波の一時的な不通、遮断、その他通信機器における一時的なエラー等に起因して、ホストコンピューター１０ａがプリンター１２に通信可能に接続されている状態であっても、ホストコンピューター１０ａとプリンター１２とのコネクションの切断が正常に行えない状態となる場合がある。
このような状態となった場合、ホストコンピューター１０ｂがプリンター１２との間で新たにコネクションを確立できない状況を招くほか、ホストコンピューター１０によるプリンター１２の円滑な制御が阻害される結果を招くため、できるだけ早い段階で、当該状態を解消したいとするニーズがある。
以上を踏まえ、本実施形態に係るホストコンピューター１０は、以下の動作を実行する。
【００２２】
図２は、ホストコンピューター１０の動作を示すフローチャートである。
図３は、図２のフローチャートにおけるホストコンピューター１０の動作の説明に利用する図である。
以下の説明において、接続検出部２１ａ、及び、リセット指示部２１ｂの機能は、ＣＰＵがプリンタードライバーを実行する等、ハードウェアとソフトウェアとの協働により実現される。
また、図２は、ホストコンピューター１０ａ、１０ｂのうち、ホストコンピューター１０ａの動作を示すフローチャートであるものとする。
まず、ホストコンピューター１０ａの制御部１５のプリンタードライバー実行部２１の接続検出部２１ａは、予め定められた以下の条件が成立したか否かを監視する（ステップＳＡ１）。
条件とは、ホストコンピューター１０ａと、プリンター１２との間でコネクションが確立されており、かつ、ホストコンピューター１０ａによってプリンター１２を制御可能な状態から、ＴＣＰに準拠したコネクションの切断を経ることなく、一旦、ホストコンピューター１０ａとプリンター１２との間における通信可能な接続が遮断され、再び、通信可能に接続された状態（以下、「条件成立状態」という）となったこと、である。
「通信可能な接続」とは、ホストコンピューター１０ａと、プリンター１２との間でＬＡＮにおけるネットワーク疎通が確立している状態であり、例えば、ＩＰパケットを利用してネットワーク疎通を確認するコマンド（例えばｐｉｎｇ）が正常に実行できる状態のことを言う。
【００２３】
ステップＳＡ１における接続検出部２１ａの動作について詳述すると、接続検出部２１ａは、ホストコンピューター１０ａとプリンター１２との間に、プリンター１２を制御可能な状態で、コネクションが確立しているか否かを、例えばフラグを利用して、管理する。
さらに、接続検出部２１ａは、プリンター１２の制御が可能な状態でコネクションが確立している状態の場合、ホストコンピューター１０ａとプリンター１２との間における通信可能な接続が遮断されたか否かを監視する。当該監視は例えば以下のようにして実行される。例えば、接続検出部２１ａは、ネットワーク疎通確認用のコマンドを間欠的に実行し、正常に実行できる状態から、正常に実行できない状態へ移行したことを検出することによって、通信可能な接続が遮断されたことを検出する。また例えば、接続検出部２１ａは、コネクションレスなプロトコルであるＵＤＰに準拠して、間欠的にプリンター１２に対して応答を要求するコマンドを出力し、当該コマンドの応答の状況によって、通信可能な接続が遮断されたことを検出する。
【００２４】
ホストコンピューター１０ａの状態が、条件成立状態となる場合には、以下のような場合がある。
すなわち、ホストコンピューター１０ａと、プリンター１２との間における通信ケーブルの抜き差しや、無線通信に係る電波の一時的な不通、遮断、その他通信機器における一時的なエラー等に起因して、一旦、これら装置間における通信可能な接続が遮断された状態（図３（Ａ）に示す状態）となった後に、当該遮断を起こした原因が解消され、再び、これら装置が通信可能に接続された状態（図３（Ｂ）に示す状態）となった場合に、ホストコンピューター１０ａの状態が、条件成立状態となる。このようにしてホストコンピューター１０ａが条件成立状態となった場合、一時的な通信の遮断に起因して、ホストコンピューター１０ａとプリンター１２との間でのＴＣＰに準拠した正常な通信が阻害され、ＴＣＰに準拠したコネクションの切断が正常に実行できない状態となっている可能性がある。上述したように、ＴＣＰに準拠したコネクションの切断が正常に実行できない状態となっている場合は、ホストコンピューター１０ｂがプリンター１２との間で新たにコネクションを確立できず、また、ホストコンピューター１０によるプリンター１２の円滑な制御ができない状況となる可能性がある。
【００２５】
さて、前掲図２に戻り、ステップＳＡ１において、ホストコンピューター１０ａの状態が条件成立状態となったものと判別された場合（ステップＳＡ１：ＹＥＳ）、制御部１５は、ＴＣＰに準拠したコネクションの切断を試み（ステップＳＡ２）、ステップＳＡ２におけるＴＣＰに準拠したコネクションの切断が成功したか否かを判別する（ステップＳＡ３）。図２に示すように、制御部１５は、ＴＣＰに準拠したコネクションの切断の試行を、予め定められたｎ回実行し（図３（Ｃ）に示す状態）、ｎ回以内に、切断が成功した場合（ステップＳＡ３：ＹＥＳ）は、その時点で処理を終了し、ｎ回実行しても切断が成功しなかった場合（ステップＳＡ３：ＮＯ）は、処理手順をステップＳＡ４へ移行する。
なお、ＴＣＰに準拠したコネクションの切断が成功した場合、コネクションが開放され、ホストコンピューター１０ａ、１０ｂによって新たにコネクションを確立することができる状態、換言すれば、異常な状態でコネクションが確立されていない、正常な状態となる。
【００２６】
ｎ回実行しても切断が成功しなかった場合（ステップＳＡ３：ＮＯ）、制御部１５のリセット指示部２１ｂは、プリンター１２にリセット処理を実行させる（ステップＳＡ４）。
リセット処理とは、ネットワーク通信部１９のネットワークコントローラー１９ａが備える記憶領域に記憶されたコネクションテーブルや、コネクションの管理に係る各種データの初期化を含む、ネットワーク通信部１９のリセットのことである。当該リセット処理が実行された場合、コネクションテーブルの初期化等により、プリンター１２に確立されていたコネクションの全てが強制的に切断される。
リセット指示部２１ｂは、例えば、コネクションレスなプロトコルであるＵＤＰに準拠した通信により、リセット処理を実行させるコマンドをプリンター１２のプリンター側制御部２５に出力し、プリンター側制御部２５にリセット処理を実行させる。このほか、いわゆるＯＳＩ基本参照モデルにおけるトランスポート層よりも下の層での通信を介して、プリンター側制御部２５にリセット処理を実行させる構成であってもよい。また、プリンター側制御部２５の機能ではなく、ネットワークコントローラー１９ａの機能により、リセット処理が実行される構成であってもよい。
【００２７】
ステップＳＡ４においてリセット処理が実行されることにより、コネクションが強制的に開放され、ホストコンピューター１０ａ、１０ｂによって新たにコネクションを確立することができる状態（図３（Ｄ）に示す状態）となる。
これにより、例えば、ホストコンピューター１０ｂによってプリンター１２を制御すべき状況となった場合、ホストコンピューター１０ｂは、スリーウェイハンドシェイクにより、スムーズに、プリンター１２との間でコネクションを確立した状態（図３（Ｅ）に示す状態）に移行可能である。
以上図２を用いて説明したように、本実施形態では、接続検出部２１ａにより、ホストコンピューター１０ａとプリンター１２と間における通信の状態が条件成立状態となったことが検出された場合、すなわち、ホストコンピューター１０ａとプリンター１２との間におけるコネクションが異常となっている可能性があり、かつ、ＴＣＰに準拠したコネクションの切断によってはコネクションが切断できない状況の場合には、リセット処理が実行され、速やかに、全てのコネクションの切断が実行される。これにより、コネクションが異常となっている状況が長時間継続されることが防止され、例えば、コネクションを確立したいホストコンピューター１０ｂが、不当にコネクションを確立できない、といった状況が現出することが効果的に防止される。
また、図２を用いて説明したように、本実施形態では、制御部１５は、プリンター１２にリセット処理を実行させる前に、ｎ回、ＴＣＰに準拠したコネクションの切断を試みる。ここで、リセット処理は、プリンター１２において確立されている全てのコネクションの切断を伴う処理であるため、ＴＣＰに準拠してコネクションを切断する場合と比較して、プリンター１２における通信に対する影響が大きいと言えるが、リセット処理を実行させる前に、ｎ回、ＴＣＰに準拠したコネクションの切断を試みることにより、ＴＣＰに準拠したコネクションの切断ができない場合に初めて、リセット処理が行われることとなり、プリンター１２における通信に対する影響が大きいリセット処理が実行されることをできるだけ防止しつつ、正常な状態への確実な移行を実現可能である。
【００２８】
以上説明したように、本実施形態に係るＰＯＳシステム１（制御システム）におけるホストコンピューター１０は、外部機器たるプリンター１２と通信可能に接続されたことを検出する接続検出部２１ａと、この接続検出部２１ａによりプリンター１２と通信可能に接続されたことが検出された場合、接続されたプリンター１２に、当該プリンター１２において確立されている全てのコネクションの強制的な切断を伴うリセット処理を実行させるリセット指示部２１ｂと、を備えている。
これによれば、接続検出部２１ａによりプリンター１２と通信可能に接続されたことが検出された場合、リセット指示部２１ｂは、プリンター１２に、当該プリンター１２において確立されているコネクションの切断を伴うリセット処理を実行させて、プリンター１２において確立されているコネクションを切断するため、上述したように、コネクションが正常でない状態となっている可能性があることが検出された場合に、速やかに、当該コネクションが切断された正常な状態へ移行させることが可能となる。
【００２９】
また、本実施形態に係るＰＯＳシステム１（制御システム）におけるホストコンピューター１０の接続検出部２１ａは、プリンター１２との間でコネクションが確立された状態から、ＴＣＰに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、通信可能に接続されたことを検出可能であり、リセット指示部２１ｂは、接続検出部２１ａにより、上記自体が発生したことが検出された場合、プリンター１２にリセット処理を実行させる。
これによれば、プリンター１２との間でコネクションが確立された状態から、ＴＣＰに準拠したコネクションの切断が行われることなく、通信可能な接続が遮断された後、再び、プリンター１２に通信可能に接続され、確立されていたコネクションが正常でない可能性がある場合に、速やかに、当該正常でない可能性があるコネクションを切断し、正常な状態へ移行させることが可能となる。
【００３０】
また、本実施形態では、リセット指示部２１ｂは、プリンター１２にリセット処理を実行させる前に、ＴＣＰに準拠したコネクションの切断を試行し、コネクションの切断を実現できなかった場合に、プリンター１２にリセット処理を実行させる。
ここで、リセット処理は、プリンター１２において確立されている全てのコネクションの切断を伴う処理であるため、ＴＣＰに準拠してコネクションを切断する場合と比較して、プリンター１２における通信に対する影響が大きいと言える。
これを踏まえ、上記構成によれば、ＴＣＰに準拠したコネクションの切断ができない場合に初めて、リセット処理が行われることとなり、プリンター１２における通信に対する影響が大きいリセット処理が実行されることをできるだけ防止しつつ、正常な状態への確実な移行を実現可能である。
【００３１】
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、上述した実施形態では、制御装置として、プリンター１２を制御するホストコンピューター１０を例に挙げて発明を説明したが、制御装置はこれに限らない。すなわち、本発明は、外部機器とコネクション型のプロトコルを用いた通信が可能な制御装置に広く適用可能である。
また、コネクション型のプロトコルとして、ＴＣＰを例に挙げたが、ＴＣＰに限らないことは勿論のことである。
【符号の説明】
【００３２】
１…ＰＯＳシステム（制御システム）、１０、１０ａ、１０ｂ…ホストコンピューター（制御装置）、１２…プリンター（外部機器）、１５…制御部、２１…プリンタードライバー実行部、２１ａ…接続検出部、２１ｂ…リセット指示部。
【図１】
2012165315.tif 000003
【図２】
2012165315.tif 000004
【図３】
2012165315.tif 000005