(57)【要約】【課題】他の機器を介して接続された機器からの入力を、アプリケーションプログラムから容易に利用可能とする。【解決手段】入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置が、入力機器が中継機器から利用可能であるか否かを示す接続情報を、中継機器に対して所定の接続時間間隔で周期的に要求し、入力機器が中継機器から利用可能であることを示す接続情報を取得した場合、データの受信のための中継機器との接続を確立するとともに、データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求し、受信したデータを、キーボードから入力されたテキスト情報として機器制御装置の動作を制御するオペレーティングシステムに出力するよう制御する。【選択図】図１
2020071785.tif 000002
【特許請求の範囲】
【請求項１】
入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置が、
前記入力機器が前記中継機器から利用可能であるか否かを示す接続情報を、前記中継機器に対して所定の接続時間間隔で周期的に要求し、
前記入力機器が前記中継機器から利用可能であることを示す接続情報を取得した場合、前記データの受信のための前記中継機器との接続を確立するとともに、前記データの受信を、前記中継機器に対して所定の受信時間間隔で周期的に要求し、
受信した前記データを、キーボードから入力されたテキスト情報として、前記機器制御装置の動作を制御するオペレーティングシステムに出力する、
ことを含む、機器制御方法。
【請求項２】
前記データの受信の要求に応じてデータを受信しなかった後の前記受信時間間隔は、前記データの受信の要求に応じてデータを受信した後の前記受信時間間隔よりも大きい、請求項１に記載の機器制御方法。
【請求項３】
前記データの受信の要求に応じて連続してデータを受信しなかった回数が所定の閾値を超えた後に前記データの受信の要求に応じてデータを受信しなかった後の前記受信時間間隔は、前記データの受信の要求に応じて連続してデータを受信しなかった回数が所定の閾値を超える前に前記データの受信の要求に応じてデータを受信しなかった後の前記受信時間間隔よりも大きい、請求項２に記載の機器制御方法。
【請求項４】
前記接続時間間隔は、前記受信時間間隔よりも大きい、請求項１ないし３のいずれか一項に記載の機器制御方法。
【請求項５】
前記接続情報の要求において、前記機器制御装置が、ＳＮＭＰ（Simple Network Management Protocol）を用いて前記接続情報を要求する、請求項１ないし４のいずれか一項に記載の機器制御方法。
【請求項６】
入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置に、
前記入力機器が前記中継機器から利用可能であるか否かを示す接続情報を、前記中継機器に対して所定の接続時間間隔で周期的に要求し、
前記入力機器が前記中継機器から利用可能であることを示す接続情報を取得した場合、前記データの受信のための前記中継機器との接続を確立するとともに、前記データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求し、
受信した前記データを、キーボードから入力されたテキスト情報として、前記機器制御装置の動作を制御するオペレーティングシステムに出力する、
ことを実行させる、機器制御プログラム。
【請求項７】
機器制御装置とネットワークを介して接続された中継機器であって、
入力に応じてデータを出力する入力機器が利用可能であるか否かに応じて接続情報を更新する接続情報更新部と、
前記機器制御装置から前記接続情報の要求を受信した場合、前記更新された接続情報に基づいて前記機器制御装置に応答する接続情報応答部と、
接続された前記入力機器から出力されたデータを取得するデータ取得部と、
前記機器制御装置から前記データの要求を受信した場合、前記データ取得部が取得したデータを前記機器制御装置に送信するデータ送信部と、
を備える中継機器。
【請求項８】
入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置であって、
前記入力機器が前記中継機器から利用可能である否かを示す接続情報を、前記中継機器に対して所定の接続時間間隔で周期的に要求する接続情報要求部と、
前記入力機器が前記中継機器から利用可能であることを示す接続情報を取得した場合、前記データの受信のための前記中継機器との接続を確立するとともに、前記データの受信を、前記中継機器に対して所定の受信時間間隔で周期的に要求するデータ要求部と、
受信した前記データを、キーボードから入力されたテキスト情報として前記機器制御装置の動作を制御するオペレーティングシステムに出力する内部出力部と、
を備える機器制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器制御方法、機器制御プログラム、中継機器および機器制御装置に関する。
【背景技術】
【０００２】
近年、店舗での会計用端末として、汎用的な機器制御装置であるタブレット端末等を用いるＰＯＳ（Point of Sale）システムが使用されている。このようなＰＯＳシステムでは、会計用端末としての処理機能は、タブレット端末等で実行されるプログラムにより実現される。そのため、汎用的な機器制御装置を用いたＰＯＳシステムでは、専用機器を用いたＰＯＳシステムと比較して低廉なコストで導入可能な場合がある。
【０００３】
店舗での会計には顧客に渡すレシートの発行が必要であるが、汎用的な機器制御装置は通常印刷機能を有していないので、ＰＯＳシステムはレシートを発行可能なプリンタを有して構成される。プリンタと汎用端末とは、有線ＬＡＮ（Local Area Network）、ＵＳＢ（Universal Serial Bus）といった接続インタフェースを介して接続される。
【０００４】
特許文献１には、タブレット端末に設けられたＩＣタグを印刷装置が読み取ることにより、タブレット端末と印刷装置との通信経路を簡易に確立するＰＯＳシステムが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−１７３７０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
例えば小売店で使用されるＰＯＳレジでは、商品に付されたバーコードを読み取るためのバーコードスキャナが接続される場合がある。また、ＰＯＳレジには、クレジットカード決済のためのクレジットカードリーダおよび非接触型ＩＣカードを読み取るためのＩＣカードリーダといったさまざまな機器が接続され得る。
【０００７】
機器が取得するデータは、情報処理装置に入力され、会計処理に使用される。情報処理装置の接続インタフェースは限られているため、こうした機器は、プリンタに設けられた接続インタフェースを介して情報処理装置に接続されるのが好ましい。
【０００８】
本発明は、他の機器を介して接続された機器からの入力を、アプリケーションプログラムから容易に利用可能とする、機器制御方法、機器制御プログラム、中継機器および機器制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明にかかる機器制御方法は、入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置が、入力機器が中継機器から利用可能であるか否かを示す接続情報を、中継機器に対して所定の接続時間間隔で周期的に要求し、入力機器が中継機器から利用可能であることを示す接続情報を取得した場合、データの受信のための中継機器との接続を確立するとともに、データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求し、受信したデータを、キーボードから入力されたテキスト情報として、機器制御装置の動作を制御するオペレーティングシステムに出力する、ことを含むことを特徴とする。
【００１０】
また、本発明にかかる機器制御方法において、データの受信の要求に応じてデータを受信しなかった後の受信時間間隔は、データの受信の要求に応じてデータを受信した後の受信時間間隔よりも大きいことが好ましい。
【００１１】
また、本発明にかかる機器制御方法において、データの受信の要求に応じて連続してデータを受信しなかった回数が所定の閾値を超えた後にデータの受信の要求に応じてデータを受信しなかった後の受信時間間隔は、データの受信の要求に応じて連続してデータを受信しなかった回数が所定の閾値を超える前にデータの受信の要求に応じてデータを受信しなかった後の受信時間間隔よりも大きいことが好ましい。
【００１２】
また、本発明にかかる機器制御方法において、接続時間間隔は、受信時間間隔よりも大きいことが好ましい。
【００１３】
また、本発明にかかる機器制御方法では、接続情報の要求において、ＳＮＭＰ（Simple Network Management Protocol）を用いて接続情報を要求することが好ましい。
【００１４】
本発明にかかる機器制御プログラムは、入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置に、入力機器が中継機器から利用可能であるか否かを示す接続情報を、中継機器に対して所定の接続時間間隔で周期的に要求し、入力機器が中継機器から利用可能であることを示す接続情報を取得した場合、データの受信のための中継機器との接続を確立するとともに、データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求し、受信したデータを、キーボードから入力されたテキスト情報として、機器制御装置の動作を制御するオペレーティングシステムに出力する、ことを実行させることを特徴とする。
【００１５】
本発明にかかる中継機器は、機器制御装置とネットワークを介して接続された中継機器であって、入力に応じてデータを出力する入力機器が利用可能であるか否かに応じて接続情報を更新する接続情報更新部と、機器制御装置から接続情報の要求を受信した場合、更新された接続情報に基づいて機器制御装置に応答する接続情報応答部と、接続された入力機器から出力されたデータを取得するデータ取得部と、機器制御装置からデータの要求を受信した場合、データ取得部が取得したデータを機器制御装置に送信するデータ送信部と、を備えることを特徴とする。
【００１６】
本発明にかかる機器制御装置は、入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置であって、入力機器が中継機器から利用可能であるか否かを示す接続情報を、中継機器に対して所定の接続時間間隔で周期的に要求する接続情報要求部と、入力機器が中継機器から利用可能であることを示す接続情報を取得した場合、データの受信のための中継機器との接続を確立するとともに、データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求するデータ要求部と、受信したデータを、キーボードから入力されたテキスト情報として機器制御装置の動作を制御するオペレーティングシステムに出力する内部出力部と、を備えることを特徴とする。
【発明の効果】
【００１７】
本発明の機器制御方法、機器制御プログラム、中継機器および機器制御装置によれば、他の機器を介して接続された機器からの入力を、アプリケーションプログラムから容易に利用可能とすることができる。
【図面の簡単な説明】
【００１８】
【図１】機器制御装置の動作概要を説明する図である。
【図２】機器制御装置の概略構成を示す模式図である。
【図３】プリンタの概略構成を示す模式図である。
【図４】機器制御装置の処理フローチャートである。
【図５】機器制御装置の他の処理フローチャートである。
【図６】機器制御装置の他の処理フローチャートである。
【図７】機器制御装置の受信遅延処理のフローチャートである。
【発明を実施するための形態】
【００１９】
以下、図面を参照して機器制御方法、機器制御プログラム、中継機器および機器制御装置について詳細に説明する。ただし、本発明は図面または以下に記載される実施形態に限定されないことを理解されたい。
【００２０】
本発明の機器制御装置は、中継機器とネットワークを介して接続されている。中継機器は、入力に応じてデータを出力する入力機器と接続される。機器制御装置は、中継機器に入力機器が接続されていない場合、入力機器が中継機器に接続されたか否かを示す接続情報を、中継機器に対して所定の接続時間間隔で要求する。機器制御装置は、中継機器に入力機器が接続されたことを示す接続情報を取得した場合、データのための第１装置との接続を確立する。また、機器制御装置は、データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求する。機器制御装置は、受信したデータを、キーボードから入力されたテキスト情報としてオペレーティングシステムに出力する。
【００２１】
本発明の機器制御装置において、データの受信に失敗した後の受信時間間隔は、データの受信に成功した後の受信時間間隔よりも大きい。
【００２２】
これにより、本発明の機器制御装置は、他の機器を介して接続された機器からの入力を情報処理装置のアプリケーションプログラムから容易に利用可能となる。
【００２３】
図１は、機器制御装置の動作概要を説明する図である。
【００２４】
機器制御装置１は、有線ネットワークを介して中継機器であるプリンタ２と接続される。プリンタ２は、ＵＳＢインタフェースを介して入力機器であるバーコードスキャナ３と接続される。
【００２５】
機器制御装置１は、機器制御装置１のハードウェア資源を抽象化して共通的な手続によるアクセスを可能にするインタフェース（ＡＰＩ：Application Programming Interface）をアプリケーションプログラムに提供する、オペレーティングシステムを有する。
【００２６】
機器制御装置１は、バーコードの読み取りに応じてバーコードスキャナ３が出力するデータ「９８７６５４３２１０９８」を、プリンタ２を介して受信する。機器制御装置１は、受信したデータを、キーボードから入力されたテキスト情報としてオペレーティングシステムに出力する。
【００２７】
すなわち、機器制御装置１で動作するアプリケーションプログラムは、プリンタ２を介して接続されたバーコードスキャナ３の入力情報を、キーボードからの入力情報としてオペレーティングシステムから受け取り、利用することができる。
【００２８】
これにより、本発明の機器制御装置１は、プリンタ２を介して接続されたバーコードスキャナ３からの入力を、アプリケーションプログラムから容易に利用可能とする。
【００２９】
また、機器制御装置１は、バーコードスキャナ３がプリンタ２に接続されていない場合、バーコードスキャナ３がプリンタ２に接続されたか否かを示す接続情報を、プリンタ２に対して所定の接続時間間隔で周期的に要求する。プリンタ２は、機器制御装置１からの要求に応じて、接続情報を送信する。
【００３０】
バーコードスキャナ３がプリンタ２に接続されたことを示す接続情報をプリンタ２から取得した場合、機器制御装置１は、まず、データの受信のためのプリンタ２との接続を確立する。そして、機器制御装置１は、データの受信をプリンタ２に対して所定の受信時間間隔で周期的に要求する。
【００３１】
図１の例では、機器制御装置１は、時刻t11にデータ要求を行い、データの受信に成功する。その後、機器制御装置１は、時刻t12にデータ要求を行う。このときの受信時間間隔RI1は、t12-t11で表される。
【００３２】
また、機器制御装置１は、時刻t21にデータ要求を行い、データの受信に失敗する。その後、機器制御装置１は、時刻t22にデータ要求を行う。このときの受信時間間隔RI2は、t22-t21で表される。
【００３３】
データの受信に失敗した後の受信時間間隔RI2は、データの受信に成功した後の受信時間間隔RI1よりも大きい。
【００３４】
通常、バーコードスキャナ３を用いたバーコードの読み取りは、断続的に行われる。すなわち、バーコードスキャナ３がバーコードの読み取り行わない時間が継続的に存在する。このような時間に小さい時間間隔でバーコードスキャナ３のデータ要求を行っても、有効なデータを取得することができない。
【００３５】
したがって、上述のように動作することにより、機器制御装置１は、効率よくデータの読み取りを実行し、消費電力とネットワークのトラフィックを削減することができる。
【００３６】
図２は、機器制御装置の概略構成を示す模式図である。
【００３７】
機器制御装置１は、入力に応じてデータを出力するバーコードスキャナ３が接続されるプリンタ２とネットワークを介して接続し、バーコードスキャナ３が出力するデータをプリンタ２から受信する。そのために、機器制御装置１は、制御通信部１１と、制御記憶部１２と、制御操作部１３と、制御表示部１４と、制御処理部１５とを備える。
【００３８】
本実施形態では、機器制御装置１としてタブレット端末を想定するが、本発明の実施形態はこれに限定されない。機器制御装置１は、例えば、パーソナルコンピュータ（Personal Computer, PC）、多機能携帯電話（いわゆる「スマートフォン」）などの情報処理装置であってよい。
【００３９】
制御通信部１１は、通信インタフェース回路を備え、機器制御装置１をネットワークに接続する。制御通信部１１は、制御処理部１５から供給されたデータを、ネットワークを介してプリンタ２等に送信する。また、制御通信部１１は、ネットワークを介してプリンタ２等から受信したデータを制御処理部１５に供給する。
【００４０】
制御通信部１１が機器制御装置１を接続するネットワークは、例えばＴＣＰ／ＩＰ（Transport Control Protocol / Internet Protocol）による通信が行われるインターネットである。ネットワーク５より通信する機器は、有線または無線によって接続される。
【００４１】
制御記憶部１２は、例えば、半導体メモリ装置を備える。制御記憶部１２は、制御処理部１５での処理に用いられるオペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム、データ等を記憶する。例えば、制御記憶部１２は、ドライバプログラムとして、制御操作部１３を制御する入力デバイスドライバプログラムや、制御表示部１４を制御する出力デバイスドライバプログラム等を記憶する。また、制御記憶部１２は、所定の処理にかかる一時的なデータを一時的に記憶してもよい。
【００４２】
制御操作部１３は、機器制御装置１の操作が可能であればどのようなデバイスでもよく、例えば、タッチパネルやキーボタン等である。ユーザは、制御操作部１３を用いて、文字や数字、記号等を入力することができる。制御操作部１３は、ユーザにより操作されると、その操作に対応する信号を発生する。そして、発生した信号は、ユーザの指示として制御処理部１５に供給される。
【００４３】
制御表示部１４は、映像や画像等の表示が可能であればどのようなデバイスでもよく、例えば、液晶ディスプレイや有機ＥＬ（Electro-Luminescence）ディスプレイ等である。制御表示部１４は、制御処理部１５から供給された映像データに応じた映像や、画像データに応じた画像等を表示する。
【００４４】
制御処理部１５は、１以上のプロセッサおよびその周辺回路を備える。制御処理部１５は、機器制御装置１の全体的な動作を統括的に制御するものであり、例えば、ＣＰＵ（Central Processing Unit）である。制御処理部１５は、機器制御装置１の各種処理が制御記憶部１２に記憶されているプログラムや制御操作部１３への操作等に基づいて適切な手段で実行されるように、制御通信部１１や制御表示部１４等の動作を制御する。制御処理部１５は、制御記憶部１２に記憶されているプログラム（オペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム等）に基づいて処理を実行する。また、制御処理部１５は、複数のプログラム（アプリケーションプログラム等）を並列に実行することができる。
【００４５】
制御処理部１５は、少なくともオペレーティングシステム部１５１、接続情報要求部１５２、データ要求部１５３、内部出力部１５４等を備える。これらの各部は、制御処理部１５が備えるプロセッサで実行されるプログラムにより実現される機能モジュールである。あるいは、これらの各部は、ファームウェアとして機器制御装置１に実装されてもよい。
【００４６】
図３は、プリンタの概略構成を示す模式図である。
【００４７】
プリンタ２は、ネットワークを介して機器制御装置１に接続されている。プリンタ２は、さらにバーコードスキャナ３に接続され、バーコードスキャナ３の出力するデータを機器制御装置１に中継する。そのために、プリンタ２は、中継通信部２１と、中継接続部２２と、中継記憶部２３と、プリンタ部２４と、中継処理部２５とを備える。
【００４８】
中継通信部２１は、通信インタフェース回路を備え、プリンタ２をネットワークに接続する。中継通信部２１は、中継処理部２５から供給されたデータを、ネットワークを介して機器制御装置１に送信する。
【００４９】
中継接続部２２は、ＵＳＢインタフェースを備え、バーコードスキャナ３を接続して制御する。中継接続部２２は、バーコードスキャナ３から受信したデータを中継処理部２５に供給する。
【００５０】
中継記憶部２３は、例えば半導体メモリ装置を備える。中継記憶部２３は、中継処理部２５での処理に用いられるオペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム、データ等を記憶する。例えば、中継記憶部２３は、ドライバプログラムとして、中継通信部２１を制御する通信デバイスドライバプログラム等を記憶する。また、中継記憶部２３は、所定の処理にかかる一時的なデータを一時的に記憶してもよい。
【００５１】
プリンタ部２４は、所定の用紙への印刷を実行する。プリンタ部２４は、感熱紙である用紙の所定の領域を加熱することにより印刷を行うサーマルプリンタ装置である。また、プリンタ部２４は、用紙の所定の領域にインク滴を射出して印刷を行うインクジェットプリンタ装置等であってもよい。
【００５２】
中継処理部２５は、１以上のプロセッサおよびその周辺回路を備える。中継処理部２５は、プリンタ２の全体的な動作を統括的に制御するものであり、例えば、ＣＰＵである。中継処理部２５は、プリンタ２の各種処理が中継記憶部２３に記憶されているプログラム等に基づいて適切な手段で実行されるように、中継通信部２１等の動作を制御する。中継処理部２５は、中継記憶部２３に記憶されているプログラム（オペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム等）に基づいて処理を実行する。
【００５３】
中継処理部２５は、少なくとも接続情報更新部２５１、接続情報応答部２５２、データ取得部２５３、データ送信部２５４等を備える。これらの各部は、中継処理部２５が備えるプロセッサで実行されるプログラムにより実現される機能モジュールである。あるいは、これらの各部は、ファームウェアとして機器制御装置１に実装されてもよい。
【００５４】
接続情報更新部２５１は、バーコードスキャナ３が中継接続部２２に接続されているか否かに応じて、中継記憶部２３に記憶される接続情報を更新する。
【００５５】
接続情報応答部２５２は、機器制御装置１から接続情報の要求を受信した場合、中継記憶部２３に記憶され接続情報更新部２５１に更新された接続情報に基づいて、機器制御装置１に応答する。
【００５６】
データ取得部２５３は、中継接続部２２に接続されたバーコードスキャナ３から出力されたデータを取得し、中継記憶部２３に記憶させる。
【００５７】
データ送信部２５４は、機器制御装置１からデータの要求を受信した場合、データ取得部２５３が取得し中継記憶部２３に記憶されたデータを、機器制御装置１に送信する。
【００５８】
図４は、機器制御装置の処理フローチャートである。
【００５９】
処理フローチャートに示す各処理は、制御記憶部１２に記憶されたプログラムに従って、制御処理部１５が、制御通信部１１、制御記憶部１２といった機器制御装置１の構成要素と協働しながら実行する。
【００６０】
まず、接続情報要求部１５２は、バーコードスキャナ３がプリンタ２から利用可能であるか否かを示す接続情報を、プリンタ２に対して要求する（ステップＳ１０）。
【００６１】
バーコードスキャナ３がプリンタ２に有線または無線により電気的に接続されていない場合、接続情報は、バーコードスキャナ３がプリンタ２から利用可能でないことを示す。また、バーコードスキャナ３がプリンタ２に有線または無線により電気的に接続されていても、例えばバーコードスキャナ３が他の端末から使用されている場合、プリンタ２からは利用可能ではない。このような場合も接続情報はバーコードスキャナ３がプリンタ２から利用可能でないことを示す。
【００６２】
次に、接続情報要求部１５２は、バーコードスキャナ３がプリンタ２から利用可能であることを示す接続情報を取得したか否かを判定する（ステップＳ１１）。
【００６３】
利用可能であることを示す接続情報を取得したと判定された場合（ステップＳ１１：Ｙ）、データ要求部１５３は、データの受信のためのプリンタ２との接続を確立する（ステップＳ１２）。具体的には、データ要求部１５３は、特定の目的でアプリケーションプログラムが通信を行うときのプログラムインタフェースであるソケットの作成を、オペレーティングシステム部１５１に要求する。
【００６４】
オペレーティングシステム部１５１は、機器制御装置１のハードウェア資源を利用するための共通的なインタフェースを、機器制御装置１で動作するアプリケーションプログラムに提供する。データ要求部１５３の要求に基づいてオペレーティングシステム部１５１がソケットを作成することにより、機器制御装置１とプリンタ２との間の接続が確立され、データ要求部１５３はプリンタ２からのデータを取得可能となる。
【００６５】
利用可能であることを示す接続情報を取得したと判定されない場合（ステップＳ１１：Ｎ）、接続情報要求部１５２は、接続時間間隔が経過したか否かを判定する（ステップＳ１３）。接続時間間隔は予め設定された時間間隔であり、例えばl000ミリ秒である。接続時間間隔は、機器制御装置１のユーザが、所定の範囲（例えば1000ミリ秒〜60000ミリ秒）で設定可能である。
【００６６】
接続情報要求部１５２は、接続時間間隔が経過していないと判定した場合（ステップＳ１３：Ｎ）、ステップＳ１３を繰り返して待機する。接続情報要求部１５２は、接続時間間隔が経過したと判定した場合（ステップＳ１３：Ｙ）、ステップＳ１０に戻り、プリンタ２に接続情報の要求を行う。
【００６７】
なお、図示していないが、ステップＳ１２に続いてプリンタ２との接続の確立に失敗したか否かの判定を実行し、失敗したと判定された場合に、ステップＳ１３に遷移して接続時間経過後にプリンタ２に接続情報の要求を行うなどのリトライ処理を実行してもよい。
【００６８】
データ接続を確立した後、データ要求部１５３は、プリンタ２に対してデータの受信を要求する（ステップＳ１４）。そして、データ要求部１５３は、データの受信の要求に応じてデータを受信したか否かを判定する（ステップＳ１５）。
【００６９】
データを受信したと判定された場合（ステップＳ１５：Ｙ）、内部出力部１５４は、受信したデータを、キーボードから入力されたテキスト情報としてオペレーティングシステム部１５１に出力する（ステップＳ１６）。これにより、機器制御装置１で動作するアプリケーションプログラムは、プリンタ２を介して接続されたバーコードスキャナ３から入力されたデータを、キーボードから入力されたテキスト情報としてオペレーティングシステム部１５１から受け取ることができる。
【００７０】
次に、データ要求部１５３は、受信時間間隔t1が経過したか否かを判定する（ステップＳ１７）。受信時間間隔t1は予め設定された時間間隔であり、例えばl00ミリ秒である。受信時間間隔t1は、機器制御装置１のユーザが、所定の範囲（例えば100ミリ秒〜1000ミリ秒）で設定可能である。
【００７１】
データ要求部１５３は、受信時間間隔t1が経過していないと判定した場合（ステップＳ１７：Ｎ）、ステップＳ１７を繰り返して待機する。データ要求部１５３は、受信時間間隔t1が経過したと判定した場合（ステップＳ１７：Ｙ）、ステップＳ１４に戻り、プリンタ２にデータの受信を要求する。
【００７２】
ステップＳ１５においてデータを受信したと判定されない場合（ステップＳ１５：Ｎ）、データ要求部１５３は、受信時間間隔t2が経過したか否かを判定する（ステップＳ１８）。受信時間間隔t2は、受信時間間隔t1よりも大きい予め設定された時間間隔であり、例えば200ミリ秒である。受信時間間隔t2は、機器制御装置１のユーザが、所定の範囲（例えばt1〜1000ミリ秒）で設定可能である。また、受信時間間隔t2は、設定されたt1との関係式（例えばt2=t1×2）に基づいて設定されてもよい。
【００７３】
データ要求部１５３は、受信時間間隔t2が経過していないと判定した場合（ステップＳ１８：Ｎ）、ステップＳ１８を繰り返して待機する。データ要求部１５３は、受信時間間隔t2が経過したと判定した場合（ステップＳ１８：Ｙ）、ステップＳ１４に戻り、プリンタ２にデータの受信を要求する。
【００７４】
ステップＳ１０からステップＳ１８までの一連の処理が、機器制御装置１の起動中に繰り返し実行される。
【００７５】
このような処理を実行することにより、機器制御装置１は、プリンタ２を介して接続されたバーコードスキャナ３からの入力を、アプリケーションプログラムから容易に利用可能とする。
【００７６】
なお、ステップＳ１０における、接続情報要求部１５２による接続情報の要求は、IPネットワーク上の機器を監視するための通信方法としてRFC 3411等に定義されるＳＮＭＰ（Simple Network Management Protocol）に基づいて行なわれてよい。
【００７７】
すなわち、機器制御装置１はＳＮＭＰにおけるマネージャとなり、ＳＮＭＰにおけるエージェントであるプリンタ２に対してリクエストを送信する。プリンタ２は、リクエストに応じてレスポンスを機器制御装置１に送信する。
【００７８】
プリンタ２は、中継記憶部２３に、管理情報ベース（ＭＩＢ、Management Information Base）を記憶する。管理情報ベースには、プリンタ２へのバーコードスキャナ３の接続の有無を含むさまざまな管理情報がツリー構造で記憶される。
【００７９】
機器制御装置１は、プリンタ２へのバーコードスキャナ３の接続の有無を示す管理情報の管理情報ベースにおける位置を示すオブジェクトＩＤを指定したリクエストを送信する。そして、このリクエストに対するプリンタ２のレスポンスを受信することで、接続情報を取得することができる。
【００８０】
図５は、機器制御装置の他の処理フローチャートである。
【００８１】
機器制御装置１は、図４に示す処理フローチャートの他に、図５に示す処理フローチャートに従って一連の処理を実行してもよい。
【００８２】
図５に示す処理フローチャートのうち、ステップＳ２０〜Ｓ２５、Ｓ２７〜Ｓ２９は、図４に示す処理フローチャートにおけるステップＳ１０〜Ｓ１５、Ｓ１６〜Ｓ１８と同様である。図４に示す処理フローチャートと同様の処理ステップの説明は省略する。
【００８３】
ステップＳ２５において、データを受信したと判定された場合（ステップＳ２５：Ｙ）、データ要求部１５３は受信したデータがあるか否かを判定する（ステップＳ２６）。受信したデータがあると判定された場合（ステップＳ２６：Ｙ）、ステップＳ２７に遷移し、内部出力部１５４が受信したデータを内部出力する。一方、ステップＳ２６において、受信したデータがあると判定されない場合（ステップＳ２６：Ｎ）、ステップＳ２９に遷移し、データ要求部１５３は受信時間間隔ｔ2の経過後にステップＳ２４に遷移する。
【００８４】
図５に示す処理フローチャートを実行することにより、機器制御装置１は、受信したデータ量がない、すなわちバーコードの読み取りが行われていない状況でのデータ受信間隔を長くする。このため、機器制御装置１は、プリンタ２およびバーコードスキャナ３の消費電力とネットワークのトラフィックを削減することができる。
【００８５】
図６は、機器制御装置の他の処理フローチャートである。
【００８６】
機器制御装置１は、図４および図５に示す処理フローチャートの他に、図６に示す処理フローチャートに従って一連の処理を実行してもよい。
【００８７】
図６に示す処理フローチャートのうち、ステップＳ３０〜Ｓ３６、Ｓ３８は、図５に示す処理フローチャートにおけるステップＳ２０〜Ｓ２６、Ｓ２８と同様である。図５に示す処理フローチャートと同様の処理ステップの説明は省略する。
【００８８】
ステップＳ３６において受信したデータ量があると判定された場合（ステップＳ３６：Ｙ）、内部出力部１５４は、受信したデータを内部出力するとともに、受信したデータ量がなかった回数の値を初期化する（ステップＳ３７）。受信したデータ量がなかった回数の値については、後述する。
【００８９】
受信したデータ量があると判定されない場合（ステップＳ３６：Ｎ）、データ要求部１５３は、後述する受信遅延処理を実行し（ステップＳ３９）する。そして、データ要求部１５３は、ステップＳ３４に遷移し、プリンタ２にデータの受信を要求する。
【００９０】
図７は、機器制御装置の受信遅延処理のフローチャートである。
【００９１】
機器制御装置１のデータ要求部１５３は、受信時間間隔t2が経過したか否かを判定する（ステップＳ３９１）。データ要求部１５３は、受信時間間隔t2が経過していないと判定した場合（ステップＳ３９１：Ｎ）、ステップＳ３９１を繰り返して待機する。
【００９２】
受信時間間隔t2が経過したと判定した場合（ステップＳ３９１：Ｙ）、データ要求部１５３は、連続して受信したデータ量がなかった回数が所定の閾値ｎよりも小さいか否かを判定する（ステップＳ３９２）。連続して受信したデータ量がなかった回数は、機器制御装置１の処理開始時に、初期値として０が設定されている。
【００９３】
連続して受信したデータ量がなかった回数がｎよりも小さいと判定された場合（ステップＳ３９２：Ｙ）、データ要求部１５３は、連続して受信したデータ量がなかった回数に１加算し（ステップＳ３９３）、受信遅延処理を終了する。
【００９４】
ステップＳ３９１において連続して受信したデータ量がなかった回数がｎよりも小さいと判定されない場合（ステップＳ３９１：Ｎ）、データ要求部１５３は、受信時間間隔t3が経過したか否かを判定する（ステップＳ３９４）。受信時間間隔t3は、予め設定された時間間隔であり、例えば200ミリ秒である。受信時間間隔t3は、機器制御装置１のユーザが、所定の範囲（例えば0〜1000ミリ秒）で設定可能である。受信時間間隔t3は、受信時間間隔t2と同じ時間間隔であってもよく、異なる時間間隔であってもよい。
【００９５】
データ要求部１５３は、受信時間間隔t3が経過していないと判定した場合（ステップＳ３９４：Ｎ）、ステップＳ３９４を繰り返して待機する。データ要求部１５３は、受信時間間隔t3が経過したと判定した場合（ステップＳ３９４：Ｙ）、受信遅延処理を終了する。
【００９６】
図６および図７に示す処理フローチャートを実行することにより、機器制御装置１は、受信したデータ量がない、すなわちバーコードの読み取りが行われていない状況が連続している場合のデータ受信間隔を長くする。このため、機器制御装置１は、プリンタ２およびバーコードスキャナ３の消費電力とネットワークのトラフィックを削減することができる。
【００９７】
当業者は、本発明の精神および範囲から外れることなく、種々の変更、置換および修正をこれに加えることが可能であることを理解されたい。
【符号の説明】
【００９８】
１    機器制御装置
１５２    接続情報要求部
１５３    データ要求部
１５４    内部出力部
２    プリンタ
３    バーコードスキャナ
【図１】
2020071785.tif 000003
【図２】
2020071785.tif 000004
【図３】
2020071785.tif 000005
【図４】
2020071785.tif 000006
【図５】
2020071785.tif 000007
【図６】
2020071785.tif 000008
【図７】
2020071785.tif 000009
【手続補正書】
【提出日】令和1年11月15日(2019.11.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置が、
前記入力機器が前記中継機器から利用可能であるか否かを示す接続情報を、前記中継機器に対して所定の接続時間間隔で周期的に要求し、
前記入力機器が前記中継機器から利用可能であることを示す接続情報を取得した場合、前記データの受信のための前記中継機器との接続を確立するとともに、前記データの受信を、前記中継機器に対して所定の受信時間間隔で周期的に要求し、
受信した前記データを、前記機器制御装置の動作を制御するオペレーティングシステムに出力する、ことを含み、
前記データの受信の要求に応じてデータを受信しなかった後の前記受信時間間隔は、前記データの受信の要求に応じてデータを受信した後の前記受信時間間隔よりも大きい、
機器制御方法。
【請求項２】
前記データの受信の要求に応じて連続してデータを受信しなかった回数が所定の閾値を超えた後に前記データの受信の要求に応じてデータを受信しなかった後の前記受信時間間隔は、前記データの受信の要求に応じて連続してデータを受信しなかった回数が所定の閾値を超える前に前記データの受信の要求に応じてデータを受信しなかった後の前記受信時間間隔よりも大きい、請求項１に記載の機器制御方法。
【請求項３】
入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置に、
前記入力機器が前記中継機器から利用可能であるか否かを示す接続情報を、前記中継機器に対して所定の接続時間間隔で周期的に要求し、
前記入力機器が前記中継機器から利用可能であることを示す接続情報を取得した場合、前記データの受信のための前記中継機器との接続を確立するとともに、前記データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求し、
受信した前記データを、前記機器制御装置の動作を制御するオペレーティングシステムに出力し、
前記データの受信の要求に応じてデータを受信しなかった後の前記受信時間間隔は、前記データの受信の要求に応じてデータを受信した後の前記受信時間間隔よりも大きい、
ことを実行させる、機器制御プログラム。
【請求項４】
入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置であって、
前記入力機器が前記中継機器から利用可能である否かを示す接続情報を、前記中継機器に対して所定の接続時間間隔で周期的に要求する接続情報要求部と、
前記入力機器が前記中継機器から利用可能であることを示す接続情報を取得した場合、前記データの受信のための前記中継機器との接続を確立するとともに、前記データの受信を、前記中継機器に対して所定の受信時間間隔で周期的に要求するデータ要求部と、
受信した前記データを、前記機器制御装置の動作を制御するオペレーティングシステムに出力する内部出力部と、を備え、
前記データの受信の要求に応じてデータを受信しなかった後の前記受信時間間隔は、前記データの受信の要求に応じてデータを受信した後の前記受信時間間隔よりも大きい、
機器制御装置。