JP6732092B1 - 機器制御方法、機器制御プログラム、および機器制御装置 - Google Patents

機器制御方法、機器制御プログラム、および機器制御装置 Download PDF

Info

Publication number
JP6732092B1
JP6732092B1 JP2019224493A JP2019224493A JP6732092B1 JP 6732092 B1 JP6732092 B1 JP 6732092B1 JP 2019224493 A JP2019224493 A JP 2019224493A JP 2019224493 A JP2019224493 A JP 2019224493A JP 6732092 B1 JP6732092 B1 JP 6732092B1
Authority
JP
Japan
Prior art keywords
data
device control
input
relay
time interval
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.)
Active
Application number
JP2019224493A
Other languages
English (en)
Other versions
JP2021093068A (ja
Inventor
俊行 川上
俊行 川上
保明 入澤
保明 入澤
悟 樋口
悟 樋口
康博 影山
康博 影山
章弘 小関
章弘 小関
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.)
Citizen Systems Japan Co Ltd
Citizen Watch Co Ltd
Original Assignee
Citizen Systems Japan Co Ltd
Citizen Watch Co Ltd
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 Citizen Systems Japan Co Ltd, Citizen Watch Co Ltd filed Critical Citizen Systems Japan Co Ltd
Priority to JP2019224493A priority Critical patent/JP6732092B1/ja
Application granted granted Critical
Publication of JP6732092B1 publication Critical patent/JP6732092B1/ja
Publication of JP2021093068A publication Critical patent/JP2021093068A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Telephonic Communication Services (AREA)

Abstract

【課題】他の機器を介して接続された機器からの入力を、アプリケーションプログラムから容易に利用可能とする。【解決手段】入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置が、入力機器が中継機器から利用可能であるか否かを示す接続情報を、中継機器に対して所定の接続時間間隔で周期的に要求し、入力機器が中継機器から利用可能であることを示す接続情報を取得した場合、データの受信のための中継機器との接続を確立するとともに、データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求し、受信したデータを、機器制御装置内のアプリケーションプログラムが認識可能なデータ形式の情報として機器制御装置の動作を制御するオペレーティングシステムに出力するよう制御する。【選択図】図1

Description

本発明は、機器制御方法、機器制御プログラム、および機器制御装置に関する。
近年、店舗での会計用端末として、汎用的な機器制御装置であるタブレット端末等を用いるPOS(Point of Sale)システムが使用されている。このようなPOSシステムでは、会計用端末としての処理機能は、タブレット端末等で実行されるプログラムにより実現される。そのため、汎用的な機器制御装置を用いたPOSシステムでは、専用機器を用いたPOSシステムと比較して低廉なコストで導入可能な場合がある。
店舗での会計には顧客に渡すレシートの発行が必要であるが、汎用的な機器制御装置は通常印刷機能を有していないので、POSシステムはレシートを発行可能なプリンタを有して構成される。プリンタと汎用端末とは、有線LAN(Local Area Network)、USB(Universal Serial Bus)といった接続インタフェースを介して接続される。
特許文献1には、タブレット端末に設けられたICタグを印刷装置が読み取ることにより、タブレット端末と印刷装置との通信経路を簡易に確立するPOSシステムが記載されている。
特開2016−173705号公報
例えば小売店で使用されるPOSレジでは、商品に付されたバーコードを読み取るためのバーコードスキャナが接続される場合がある。また、POSレジには、クレジットカード決済のためのクレジットカードリーダおよび非接触型ICカードを読み取るためのICカードリーダといったさまざまな機器が接続され得る。
機器が取得するデータは、情報処理装置に入力され、会計処理に使用される。情報処理装置の接続インタフェースは限られているため、こうした機器は、プリンタに設けられた接続インタフェースを介して情報処理装置に接続されるのが好ましい。しかしながら、このような機器を、プリンタを介して動作させるような情報処理装置の構成に変更し、各機器のデータ形式で情報を取り込むだけではなく、情報処理装置内のPOSレジ用のアプリケーションプログラムも、各機器のデータ形式を認識可能に変更する必要がある。そして、POSレジに各機器を追加する際、アプリケーションプログラムも大幅な変更となる。
本発明は、他の機器を介して接続された機器からの入力を、アプリケーションプログラムから容易に利用可能とする、機器制御方法、機器制御プログラム、中継機器および機器制御装置を提供することを目的とする。
本発明にかかる機器制御方法は、入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置が、入力機器が中継機器から利用可能であるか否かを示す接続情報を、中継機器に対して所定の接続時間間隔で周期的に要求し、入力機器が中継機器から利用可能であることを示す接続情報を取得した場合、データの受信のための中継機器との接続を確立するとともに、データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求し、受信したデータを、前記機器制御装置内のアプリケーションプログラムが認識可能なデータ形式の情報として、機器制御装置の動作を制御するオペレーティングシステムに出力する、ことを含むことを特徴とする。
また、本発明にかかる機器制御方法において、機器制御装置は、当該機器制御装置が有するドライバソフトウエアが、接続情報の要求と、データの受信の要求と、受信したデータのオペレーティングシステムへの出力とを担うことが好ましい。
また、本発明にかかる機器制御方法において、機器制御装置内のアプリケーションプログラムが認識可能なデータ形式の情報とは、機器制御装置がキーボードから入力されたと認識可能なテキスト情報を言うことが好ましい。
また、本発明にかかる機器制御方法において、データの受信の要求に応じて連続してデータを受信しなかった回数が所定の閾値を超えた後にデータの受信の要求に応じてデータを受信しなかった後の受信時間間隔は、データの受信の要求に応じて連続してデータを受信しなかった回数が所定の閾値を超える前にデータの受信の要求に応じてデータを受信しなかった後の受信時間間隔よりも大きいことが好ましい。
また、本発明にかかる機器制御方法において、接続時間間隔は、受信時間間隔よりも大きいことが好ましい。
また、本発明にかかる機器制御方法では、接続情報の要求において、SNMP(Simple Network Management Protocol)を用いて接続情報を要求することが好ましい。
本発明にかかる機器制御プログラムは、入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置に、入力機器が中継機器から利用可能であるか否かを示す接続情報を、中継機器に対して所定の接続時間間隔で周期的に要求し、入力機器が中継機器から利用可能であることを示す接続情報を取得した場合、データの受信のための中継機器との接続を確立するとともに、データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求し、受信したデータを、機器制御装置内のアプリケーションプログラムが認識可能なデータ形式の情報として、機器制御装置の動作を制御するオペレーティングシステムに出力する、ことを実行させることを特徴とする。
本発明にかかる機器制御装置は、入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置であって、入力機器が中継機器から利用可能であるか否かを示す接続情報を、中継機器に対して所定の接続時間間隔で周期的に要求する接続情報要求部と、入力機器が中継機器から利用可能であることを示す接続情報を取得した場合、データの受信のための中継機器との接続を確立するとともに、データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求するデータ要求部と、受信したデータを、機器制御装置内のアプリケーションプログラムが認識可能なデータ形式の情報として、機器制御装置の動作を制御するオペレーティングシステムに出力する内部出力部と、を備えることを特徴とする。
本発明の機器制御方法、機器制御プログラム、および機器制御装置によれば、中継機器を介しても、アプリケーションプログラムから容易に利用可能で簡単な構成にすることができる。
本発明の機器制御方法、機器制御プログラム、および機器制御装置によれば、他の機器を介して接続された機器からの入力を、アプリケーションプログラムから容易に利用可能とすることができる。
機器制御装置1の動作概要を説明する図である。 機器制御装置1の概略構成を示す模式図である。 プリンタ2の概略構成を示す模式図である。 機器制御装置1の処理フローチャートである。 機器制御装置1の他の処理フローチャートである。 機器制御装置1の他の処理フローチャートである。 機器制御装置1の受信遅延処理のフローチャートである。 機器制御装置100の動作概要を説明する図である。 機器制御装置100の概略構成を示す模式図である。
以下、図面を参照して機器制御方法、機器制御プログラム、および機器制御装置について詳細に説明する。ただし、本発明は図面または以下に記載される実施形態に限定されないことを理解されたい。
図1は、機器制御装置1の動作概要を説明する図である。
機器制御装置1は、有線及び/又は無線ネットワーク5を介して中継機器であるプリンタ2と接続される。プリンタ2は、USBインタフェースを介して入力機器であるバーコードスキャナ3と接続される。
機器制御装置1は、機器制御装置1のハードウェア資源を抽象化して共通的な手続によるアクセスを可能にするインタフェース(API:Application Programming Interface)をアプリケーションプログラムに提供する、オペレーティングシステムを有する。
機器制御装置1は、バーコードの読み取りに応じてバーコードスキャナ3が出力するデータ「987654321098」を、プリンタ2を介して受信する。機器制御装置1は、受信したデータを、機器制御装置1内のアプリケーションプログラムが認識可能な、例えば、キーボードから入力されたテキスト情報としてオペレーティングシステムに出力する。なお、バーコードスキャナ3は、一次元バーコードのみではなく、2次元バーコード等を読み取れるような機器であっても良い。
すなわち、機器制御装置1で動作するアプリケーションプログラムは、プリンタ2を介して接続されたバーコードスキャナ3の入力情報を、キーボードからの入力情報としてオペレーティングシステムから受け取り、利用することができる。更に、機器制御装置1で動作するアプリケーションプログラムは、バーコードスキャナ3の入力情報を、キーボードからの入力情報であるかのように、受け取ることができる。
これにより、本発明の機器制御装置1は、プリンタ2を介して接続されたバーコードスキャナ3からの入力を、アプリケーションプログラムから容易に利用可能とする。
また、機器制御装置1は、バーコードスキャナ3がプリンタ2に接続されていない場合、バーコードスキャナ3がプリンタ2に接続されたか否かを示す接続情報を、プリンタ2に対して所定の接続時間間隔で周期的に要求する。プリンタ2は、機器制御装置1からの要求に応じて、接続情報を送信する。
バーコードスキャナ3がプリンタ2に接続されたことを示す接続情報をプリンタ2から取得した場合、機器制御装置1は、まず、データの受信のためのプリンタ2との接続を確立する。そして、機器制御装置1は、データの受信をプリンタ2に対して所定の受信時間間隔で周期的に要求する。
図1の例では、機器制御装置1は、時刻t11にデータ要求を行い、データの受信に成功する。その後、機器制御装置1は、時刻t12にデータ要求を行う。このときの受信時間間隔RI1は、t12-t11で表される。
また、機器制御装置1は、時刻t21にデータ要求を行い、データの受信に失敗する。その後、機器制御装置1は、時刻t22にデータ要求を行う。このときの受信時間間隔RI2は、t22-t21で表される。
データの受信に失敗した後の受信時間間隔RI2は、データの受信に成功した後の受信時間間隔RI1よりも大きい。
通常、バーコードスキャナ3を用いたバーコードの読み取りは、断続的に行われる。すなわち、バーコードスキャナ3がバーコードの読み取り行わない時間が継続的に存在する。このような時間に小さい時間間隔でバーコードスキャナ3のデータ要求を行っても、機器制御装置1によるデータ要求の頻度に対してバーコードデータを取得することができる割合が少なくなる場合がある。
したがって、上述のように動作することにより、機器制御装置1は、効率よくデータの読み取りを実行し、消費電力とネットワークのトラフィックを削減することができる。
しかしながら、消費電力とネットワークのトラフィックが、機器制御装置1の仕様や利用環境に応じて無視できる場合には、データの受信に失敗した後の受信時間間隔RI2を、データの受信に成功した後の受信時間間隔RI1と同じ長さとしても良い。逆に、バーコードデータの取得タイミングに遅延を生じさせたくない場合には、データの受信に失敗した直後の受信時間間隔RI2のまま、データ要求を繰り返した方が良い。例えば、機器制御装置1の利用頻度が少ない場合や、機器制御装置1の電源として、大容量の内蔵電池や商用電源が供給されている場合には、消費電力を考慮するまでもない。また、大量のデータを高速で送受信可能なネットワークを利用する場合や、そのネットワークを利用する他の機器が少ない環境であれば、ネットワークのトラフィックに伴う問題は生じない。消費電力及びネットワークのトラフィックには依存せずに、より簡単な構成で、中継機器を介して接続された入力器からの入力を情報処理装置のアプリケーションプログラムから容易に利用可能となることに変わりはない。
図2は、機器制御装置1の概略構成を示す模式図である。
機器制御装置1は、入力に応じてデータを出力するバーコードスキャナ3が接続されるプリンタ2とネットワークを介して接続し、バーコードスキャナ3が出力するデータをプリンタ2から受信する。そのために、機器制御装置1は、制御通信部11と、制御記憶部12と、制御操作部13と、制御表示部14と、制御処理部15とを備える。
本実施形態では、機器制御装置1としてタブレット端末を想定するが、本発明の実施形態はこれに限定されない。機器制御装置1は、例えば、パーソナルコンピュータ(Personal Computer, PC)、多機能携帯電話(いわゆる「スマートフォン」)などの情報処理装置であってよい。
制御通信部11は、通信インタフェース回路を備え、機器制御装置1をネットワーク5に接続する。制御通信部11は、制御処理部15から供給されたデータを、ネットワーク5を介してプリンタ2等に送信する。また、制御通信部11は、ネットワーク5を介してプリンタ2等から受信したデータを制御処理部15に供給する。
制御通信部11が機器制御装置1を接続するネットワーク5は、例えばTCP/IP(Transport Control Protocol / Internet Protocol)による通信が行われるインターネットである。また、ネットワーク5の他の例として、機器制御装置1が無線LANにより所定のアクセスポイントを経由して、当該アクセスポイントとLANケーブルによってプリンタ2と接続される様にしても良い。この様に、ネットワーク5より通信する機器は、有線または無線によって接続される。
制御記憶部12は、例えば、半導体メモリ装置を備える。制御記憶部12は、制御処理部15での処理に用いられるオペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム、データ等を記憶する。例えば、制御記憶部12は、ドライバプログラムとして、制御操作部13を制御する入力デバイスドライバプログラムや、制御表示部14を制御する出力デバイスドライバプログラム等を記憶する。また、制御記憶部12は、所定の処理にかかる一時的なデータを一時的に記憶してもよい。
制御操作部13は、機器制御装置1の操作が可能であればどのようなデバイスでもよく、例えば、タッチパネルやキーボタン等である。ユーザは、制御操作部13を用いて、文字や数字、記号等を入力することができる。制御操作部13は、ユーザにより操作されると、その操作に対応する信号を発生する。そして、発生した信号は、ユーザの指示として制御処理部15に供給される。
制御表示部14は、映像や画像等の表示が可能であればどのようなデバイスでもよく、例えば、液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ等である。制御表示部14は、制御処理部15から供給された映像データに応じた映像や、画像データに応じた画像等を表示する。
制御処理部15は、1以上のプロセッサおよびその周辺回路を備える。制御処理部15は、機器制御装置1の全体的な動作を統括的に制御するものであり、例えば、CPU(Central Processing Unit)である。制御処理部15は、機器制御装置1の各種処理が制御記憶部12に記憶されているプログラムや制御操作部13への操作等に基づいて適切な手段で実行されるように、制御通信部11や制御表示部14等の動作を制御する。制御処理部15は、制御記憶部12に記憶されているプログラム(オペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム等)に基づいて処理を実行する。また、制御処理部15は、複数のプログラム(アプリケーションプログラム等)を並列に実行することができる。
制御処理部15は、少なくともオペレーティングシステム部151、接続情報要求部152、データ要求部153、内部出力部154等を備える。これらの各部は、制御処理部15が備えるプロセッサで実行されるプログラムにより実現される機能モジュールである。あるいは、これらの各部は、ファームウェアとして機器制御装置1に実装されてもよい。
図3は、プリンタ2の概略構成を示す模式図である。
プリンタ2は、ネットワークを介して機器制御装置1に接続されている。プリンタ2は、さらにバーコードスキャナ3に接続され、バーコードスキャナ3の出力するデータを機器制御装置1に中継する中継機器として機能する。そのために、プリンタ2は、中継通信部21と、中継接続部22と、中継記憶部23と、プリンタ部24と、中継処理部25とを備える。
中継通信部21は、通信インタフェース回路を備え、プリンタ2をネットワークに接続する。中継通信部21は、中継処理部25から供給されたデータを、ネットワークを介して機器制御装置1に送信する。
中継接続部22は、USBインタフェースを備え、バーコードスキャナ3を接続して制御する。中継接続部22は、バーコードスキャナ3から受信したデータを中継処理部25に供給する。
中継記憶部23は、例えば半導体メモリ装置を備える。中継記憶部23は、中継処理部25での処理に用いられるオペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム、データ等を記憶する。例えば、中継記憶部23は、ドライバプログラムとして、中継通信部21を制御する通信デバイスドライバプログラム等を記憶する。また、中継記憶部23は、所定の処理にかかる一時的なデータを一時的に記憶してもよい。
プリンタ部24は、所定の用紙への印刷を実行する。プリンタ部24は、感熱紙である用紙の所定の領域を加熱することにより印刷を行うサーマルプリンタ装置である。また、プリンタ部24は、用紙の所定の領域にインク滴を射出して印刷を行うインクジェットプリンタ装置等であってもよい。
中継処理部25は、1以上のプロセッサおよびその周辺回路を備える。中継処理部25は、プリンタ2の全体的な動作を統括的に制御するものであり、例えば、CPUである。中継処理部25は、プリンタ2の各種処理が中継記憶部23に記憶されているプログラム等に基づいて適切な手段で実行されるように、中継通信部21等の動作を制御する。中継処理部25は、中継記憶部23に記憶されているプログラム(オペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム等)に基づいて処理を実行する。
中継処理部25は、少なくとも接続情報更新部251、接続情報応答部252、データ取得部253、データ送信部254等を備える。これらの各部は、中継処理部25が備えるプロセッサで実行されるプログラムにより実現される機能モジュールである。あるいは、これらの各部は、ファームウェアとして機器制御装置1に実装されてもよい。
接続情報更新部251は、バーコードスキャナ3が中継接続部22に接続されているか否かに応じて、中継記憶部23に記憶される接続情報を更新する。
接続情報応答部252は、機器制御装置1から接続情報の要求を受信した場合、中継記憶部23に記憶され接続情報更新部251に更新された接続情報に基づいて、機器制御装置1に応答する。
データ取得部253は、中継接続部22に接続されたバーコードスキャナ3から出力されたデータを取得し、中継記憶部23に記憶させる。
データ送信部254は、機器制御装置1からデータの要求を受信した場合、データ取得部253が取得し中継記憶部23に記憶されたデータを、機器制御装置1に送信する。
図4は、機器制御装置1の処理フローチャートである。
処理フローチャートに示す各処理は、制御記憶部12に記憶されたプログラムに従って、制御処理部15が、制御通信部11、制御記憶部12といった機器制御装置1の構成要素と協働しながら実行する。
まず、接続情報要求部152は、バーコードスキャナ3がプリンタ2から利用可能であるか否かを示す接続情報を、プリンタ2に対して要求する(ステップS10)。
バーコードスキャナ3がプリンタ2に有線または無線により電気的に接続されていない場合、接続情報は、バーコードスキャナ3がプリンタ2から利用可能でないことを示す。また、バーコードスキャナ3がプリンタ2に有線または無線により電気的に接続されていても、例えばバーコードスキャナ3が他の端末から使用されている場合、プリンタ2からは利用可能ではない。このような場合も接続情報はバーコードスキャナ3がプリンタ2から利用可能でないことを示す。
次に、接続情報要求部152は、バーコードスキャナ3がプリンタ2から利用可能であることを示す接続情報を取得したか否かを判定する(ステップS11)。
利用可能であることを示す接続情報を取得したと判定された場合(ステップS11:Y)、データ要求部153は、データの受信のためのプリンタ2との接続を確立する(ステップS12)。具体的には、データ要求部153は、特定の目的でアプリケーションプログラムが通信を行うときのプログラムインタフェースであるソケットの作成を、オペレーティングシステム部151に要求する。
オペレーティングシステム部151は、機器制御装置1のハードウェア資源を利用するための共通的なインタフェースを、機器制御装置1で動作するアプリケーションプログラムに提供する。データ要求部153の要求に基づいてオペレーティングシステム部151がソケットを作成することにより、機器制御装置1とプリンタ2との間の接続が確立され、データ要求部153はプリンタ2からのデータを取得可能となる。
利用可能であることを示す接続情報を取得したと判定されない場合(ステップS11:N)、接続情報要求部152は、接続時間間隔が経過したか否かを判定する(ステップS13)。接続時間間隔は予め設定された時間間隔であり、例えばl000ミリ秒である。接続時間間隔は、機器制御装置1のユーザが、所定の範囲(例えば1000ミリ秒〜60000ミリ秒)で設定可能である。
接続情報要求部152は、接続時間間隔が経過していないと判定した場合(ステップS13:N)、ステップS13を繰り返して待機する。接続情報要求部152は、接続時間間隔が経過したと判定した場合(ステップS13:Y)、ステップS10に戻り、プリンタ2に接続情報の要求を行う。
なお、図示していないが、ステップS12に続いてプリンタ2との接続の確立に失敗したか否かの判定を実行し、失敗したと判定された場合に、ステップS13に遷移して接続時間経過後にプリンタ2に接続情報の要求を行うなどのリトライ処理を実行してもよい。
データ接続を確立した後、データ要求部153は、プリンタ2に対してデータの受信を要求する(ステップS14)。そして、データ要求部153は、データの受信の要求に応じてデータを受信したか否かを判定する(ステップS15)。
データを受信したと判定された場合(ステップS15:Y)、内部出力部154は、受信したデータを、キーボードから入力されたテキスト情報としてオペレーティングシステム部151に出力する(ステップS16)。これにより、機器制御装置1で動作するアプリケーションプログラムは、プリンタ2を介して接続されたバーコードスキャナ3から入力されたデータを、キーボードから入力されたテキスト情報としてオペレーティングシステム部151から受け取ることができる。
次に、データ要求部153は、受信時間間隔t1が経過したか否かを判定する(ステップS17)。受信時間間隔t1は予め設定された時間間隔であり、例えばl00ミリ秒である。受信時間間隔t1は、機器制御装置1のユーザが、所定の範囲(例えば100ミリ秒〜1000ミリ秒)で設定可能である。
データ要求部153は、受信時間間隔t1が経過していないと判定した場合(ステップS17:N)、ステップS17を繰り返して待機する。データ要求部153は、受信時間間隔t1が経過したと判定した場合(ステップS17:Y)、ステップS14に戻り、プリンタ2にデータの受信を要求する。
ステップS15においてデータを受信したと判定されない場合(ステップS15:N)、データ要求部153は、受信時間間隔t2が経過したか否かを判定する(ステップS18)。受信時間間隔t2は、受信時間間隔t1よりも大きい予め設定された時間間隔であり、例えば200ミリ秒である。受信時間間隔t2は、機器制御装置1のユーザが、所定の範囲(例えばt1〜1000ミリ秒)で設定可能である。また、受信時間間隔t2は、設定されたt1との関係式(例えばt2=t1×2)に基づいて設定されてもよい。
データ要求部153は、受信時間間隔t2が経過していないと判定した場合(ステップS18:N)、ステップS18を繰り返して待機する。データ要求部153は、受信時間間隔t2が経過したと判定した場合(ステップS18:Y)、ステップS14に戻り、プリンタ2にデータの受信を要求する。
ステップS10からステップS18までの一連の処理が、機器制御装置1の起動中に繰り返し実行される。
このような処理を実行することにより、機器制御装置1は、プリンタ2を介して接続されたバーコードスキャナ3からの入力を、アプリケーションプログラムから容易に利用可能とする。
なお、ステップS10における、接続情報要求部152による接続情報の要求は、IPネットワーク上の機器を監視するための通信方法としてRFC 3411等に定義されるSNMP(Simple Network Management Protocol)に基づいて行なわれてよい。
すなわち、機器制御装置1はSNMPにおけるマネージャとなり、SNMPにおけるエージェントであるプリンタ2に対してリクエストを送信する。プリンタ2は、リクエストに応じてレスポンスを機器制御装置1に送信する。
プリンタ2は、中継記憶部23に、管理情報ベース(MIB、Management Information Base)を記憶する。管理情報ベースには、プリンタ2へのバーコードスキャナ3の接続の有無を含むさまざまな管理情報がツリー構造で記憶される。
機器制御装置1は、プリンタ2へのバーコードスキャナ3の接続の有無を示す管理情報の管理情報ベースにおける位置を示すオブジェクトIDを指定したリクエストを送信する。そして、このリクエストに対するプリンタ2のレスポンスを受信することで、接続情報を取得することができる。
図5は、機器制御装置1の他の処理フローチャートである。
機器制御装置1は、図4に示す処理フローチャートの他に、図5に示す処理フローチャートに従って一連の処理を実行してもよい。
図5に示す処理フローチャートのうち、ステップS20〜S25、S27〜S29は、図4に示す処理フローチャートにおけるステップS10〜S15、S16〜S18と同様である。図4に示す処理フローチャートと同様の処理ステップの説明は省略する。
ステップS25において、データを受信したと判定された場合(ステップS25:Y)、データ要求部153は受信したデータがあるか否かを判定する(ステップS26)。受信したデータがあると判定された場合(ステップS26:Y)、ステップS27に遷移し、内部出力部154が受信したデータを内部出力する。一方、ステップS26において、受信したデータがあると判定されない場合(ステップS26:N)、ステップS29に遷移し、データ要求部153は受信時間間隔t2の経過後にステップS24に遷移する。
図5に示す処理フローチャートを実行することにより、機器制御装置1は、受信したデータ量がない、すなわちバーコードの読み取りが行われていない状況でのデータ受信間隔を長くする。このため、機器制御装置1は、プリンタ2およびバーコードスキャナ3の消費電力とネットワークのトラフィックを削減することができる。
図6は、機器制御装置1の他の処理フローチャートである。
機器制御装置1は、図4および図5に示す処理フローチャートの他に、図6に示す処理フローチャートに従って一連の処理を実行してもよい。
図6に示す処理フローチャートのうち、ステップS30〜S36、S38は、図5に示す処理フローチャートにおけるステップS20〜S26、S28と同様である。図5に示す処理フローチャートと同様の処理ステップの説明は省略する。
ステップS36において受信したデータ量があると判定された場合(ステップS36:Y)、内部出力部154は、受信したデータを内部出力するとともに、受信したデータ量がなかった回数の値を初期化する(ステップS37)。受信したデータ量がなかった回数の値については、後述する。
受信したデータ量があると判定されない場合(ステップS36:N)、データ要求部153は、後述する受信遅延処理を実行し(ステップS39)する。そして、データ要求部153は、ステップS34に遷移し、プリンタ2にデータの受信を要求する。
図7は、機器制御装置1の受信遅延処理のフローチャートである。
機器制御装置1のデータ要求部153は、受信時間間隔t2が経過したか否かを判定する(ステップS391)。データ要求部153は、受信時間間隔t2が経過していないと判定した場合(ステップS391:N)、ステップS391を繰り返して待機する。
受信時間間隔t2が経過したと判定した場合(ステップS391:Y)、データ要求部153は、連続して受信したデータ量がなかった回数が所定の閾値nよりも小さいか否かを判定する(ステップS392)。連続して受信したデータ量がなかった回数は、機器制御装置1の処理開始時に、初期値として0が設定されている。
連続して受信したデータ量がなかった回数がnよりも小さいと判定された場合(ステップS392:Y)、データ要求部153は、連続して受信したデータ量がなかった回数に1加算し(ステップS393)、受信遅延処理を終了する。
ステップS391において連続して受信したデータ量がなかった回数がnよりも小さいと判定されない場合(ステップS391:N)、データ要求部153は、受信時間間隔t3が経過したか否かを判定する(ステップS394)。受信時間間隔t3は、予め設定された時間間隔であり、例えば200ミリ秒である。受信時間間隔t3は、機器制御装置1のユーザが、所定の範囲(例えば0〜1000ミリ秒)で設定可能である。受信時間間隔t3は、受信時間間隔t2と同じ時間間隔であってもよく、異なる時間間隔であってもよい。
データ要求部153は、受信時間間隔t3が経過していないと判定した場合(ステップS394:N)、ステップS394を繰り返して待機する。データ要求部153は、受信時間間隔t3が経過したと判定した場合(ステップS394:Y)、受信遅延処理を終了する。
図6および図7に示す処理フローチャートを実行することにより、機器制御装置1は、受信したデータ量がない、すなわちバーコードの読み取りが行われていない状況が連続している場合のデータ受信間隔を長くする。このため、機器制御装置1は、プリンタ2およびバーコードスキャナ3の消費電力とネットワークのトラフィックを削減することができる。
図9は、機器制御装置100の動作概要を説明するための図である。
機器制御装置100は、図1に示す機器制御装置1と同様に、有線及び/又は無線ネットワーク5を介して中継機器であるプリンタ2と接続される。プリンタ2は、USBインタフェースを介して入力機器であるバーコードスキャナ3と接続される。プリンタ2及びバーコードスキャナ3の構成は、図1等で説明した構成と同様であるので、それらの説明を省略する。
機器制御装置100は、機器制御装置100の全体制御を司るオペレーティングシステム(OS)102、OS102上で動作可能なPOS動作等を可能とするアプリケーションプログラム(AP)101、及び、スキャナドライバ103を有する。スキャナドライバ103は、機器制御装置100にインストールされ且つ入力機器であるバーコードスキャナ3との間のデータの送受信の制御を行うドライバソフトウエアである。スキャナドライバ103の動作については後述する。なお、スキャナドライバ103は、プリンタ2により印刷するためのドライバを兼用してもよいし、または、兼用せずに、プリンタ2に専用のドライバを別途設けても良い。
スキャナドライバ103は、バーコードの読み取りに応じてバーコードスキャナ3が出力するデータ「987654321098」を、プリンタ2を介して受信する。スキャナドライバ103は、受信したデータを、AP101が認識可能なデータ形式の情報としてOS102に出力する。AP101が認識可能なデータ形式の情報とは、例えば、キーボードから入力されたテキスト情報である。なお、AP101が認識可能なデータ形式の情報が、バイナリ形式の場合は、スキャナドライバ103がBase64エンコード又はURLエンコード等を用いてテキスト形式に変換してから、OS102へデータを渡すようにしても良い。
すなわち、機器制御装置100で動作するAP101は、プリンタ2を介して接続されたバーコードスキャナ3の入力情報を、スキャナドライバ3を介してキーボードからの入力情報としてOS102から受け取り、利用することができる。その際、AP101及びOS102は、スキャナドライバ103の存在を気にすることなく動作可能となる。したがって、スキャナドライバ103を機器制御装置100にインストールさえすれば、プリンタ2を介しても、AP101から容易に利用可能で簡単な構成にすることができる。例えば、バーコードスキャナ3を追加する前に、予め、キーボード入力用に対応したAP101が機器制御装置100にインストールされている場合には、スキャナドライバ103をインストールするだけでバーコードスキャナ3に対応することができ、バーコードスキャナ3との接続のためにAP101を変更する必要がない。
これにより、本発明の機器制御装置100では、プリンタ2を介して接続されたバーコードスキャナ3からの入力を、AP101で容易に利用可能である。
また、スキャナドライバ103は、バーコードスキャナ3がプリンタ2に接続されていない場合、バーコードスキャナ3がプリンタ2に接続されたか否かを示す接続情報を、プリンタ2に対して所定の接続時間間隔で周期的に要求する。プリンタ2は、スキャナドライバ103からの要求に応じて、接続情報を送信する。
バーコードスキャナ3がプリンタ2に接続されたことを示す接続情報をプリンタ2から取得した場合、スキャナドライバ103は、まず、データの受信のためのプリンタ2との接続を確立する。そして、スキャナドライバ103は、データの受信をプリンタ2に対して所定の受信時間間隔で周期的に要求する。
図8の例では、スキャナドライバ103は、時刻t11にデータ要求を行い、データの受信に成功する。その後、スキャナドライバ103は、時刻t12にデータ要求を行う。このときの受信時間間隔RI1は、t12-t11で表される。
また、スキャナドライバ103は、時刻t21にデータ要求を行い、データの受信に失敗したとする。その後、スキャナドライバ103は、時刻t22にデータ要求を行う。このときの受信時間間隔RI2は、t22-t21で表される。
データの受信に失敗した後の受信時間間隔RI2は、データの受信に成功した後の受信時間間隔RI1よりも大きい。
これにより、バーコードデータの取得効率や、消費電力とネットワークのトラフィックの削減の効果が得られるが、あくまでも、機器制御装置100の仕様や利用環境に応じた、選択的な事項であることは、図1等に示す機器制御装置1と同様である。
図9は、機器制御装置100の概略構成を示す模式図である。
機器制御装置100は、入力に応じてデータを出力するバーコードスキャナ3が接続されるプリンタ2とネットワークを介して接続し、バーコードスキャナ3が出力するデータをプリンタ2から受信する。そのために、機器制御装置1は、制御通信部11と、制御記憶部12と、制御操作部13と、制御表示部14と、制御処理部15とを備える。
本実施形態では、機器制御装置100としてタブレット端末を想定するが、本発明の実施形態はこれに限定されない。機器制御装置100は、例えば、パーソナルコンピュータ(Personal Computer, PC)、多機能携帯電話(いわゆる「スマートフォン」)などの情報処理装置であってよい。
制御通信部11は、通信インタフェース回路を備え、機器制御装置100をネットワーク5に接続する。制御通信部11は、制御処理部15から供給されたデータを、ネットワーク5を介してプリンタ2等に送信する。また、制御通信部11は、ネットワーク5を介してプリンタ2等から受信したデータを制御処理部15に供給する。
制御通信部11が機器制御装置100を接続するネットワーク5は、例えばTCP/IP(Transport Control Protocol / Internet Protocol)による通信が行われるインターネットである。また、ネットワーク5の他の例として、機器制御装置1が無線LANにより所定のアクセスポイントを経由して、当該アクセスポイントとLANケーブルによってプリンタ2と接続される様にしても良い。この様に、ネットワーク5より通信する機器は、有線または無線によって接続される。
機器制御装置100が備える制御記憶部12は、例えば、半導体メモリ装置を備える。制御記憶部12は、制御処理部15での処理に用いられる、AP101、OS102、スキャナドライバ103、その他のプログラム、及び、データ等を記憶する。例えば、制御記憶部12は、制御操作部13を制御する入力デバイスドライバプログラムや、制御表示部14を制御する出力デバイスドライバプログラム等を記憶する。また、制御記憶部12は、所定の処理にかかる一時的なデータを一時的に記憶してもよい。
機器制御装置100が備える制御操作部13、及び、制御表示部14は、図2で説明したものと同様であるので、説明を省略する。
機器制御装置100が備える制御処理部15は、1以上のプロセッサおよびその周辺回路を備える。制御処理部15は、機器制御装置1の全体的な動作を統括的に制御するものであり、例えば、CPU(Central Processing Unit)である。制御処理部15は、機器制御装置1の各種処理が制御記憶部12に記憶されているプログラムや制御操作部13への操作等に基づいて適切な手段で実行されるように、制御通信部11や制御表示部14等の動作を制御する。制御処理部15は、制御記憶部12に記憶されているプログラム(AP101、OS102、スキャナドライバ103、その他のプログラム)に基づいて処理を実行する。また、制御処理部15は、複数のプログラム(アプリケーションプログラム等)を並列に実行することができる。
機器制御装置100との間でデータの送受信を行うプリンタ2は、図3に示したものと同様であるので、その説明を省略する。
以下、機器制御装置100の処理フローについて説明する。
図4〜図7に示す処理フローチャートに示す各処理は、機器制御装置100においても、そのまま利用することができる。すなわち、図4〜図7に示す処理フローチャートに示す各処理は、制御記憶部12に記憶されたスキャナドライバ103によって、制御処理部15が、制御通信部11、制御記憶部12といった機器制御装置100の構成要素と協働しながら実行する。
なお、機器制御装置100における図4〜図7に示す処理フローチャートに示す各処理では、図4〜図7の説明において、接続情報要求部152、データ要求部153、及び内部出力部154としたものは、全てスキャナドライバ103が処理を代行することとなる。更に、機器制御装置100の処理フローの場合、図4のステップS16、図5のステップS27、図6のステップS37において、内部出力部154がデータを出力する先は、OS102となる。これにより、機器制御装置100で動作するAP101は、プリンタ2を介して接続されたバーコードスキャナ3から入力されたデータを、機器制御装置100が認識可能な、例えばキーボードから入力されたテキスト情報としてOS102から受け取ることができる。
上記の構成により、機器制御装置100は、プリンタ2を介しても、AP101から容易に利用可能で簡単な構成にすることができる。例えば、バーコードスキャナ3を追加する前に、予め、キーボード入力用に対応したAP101が機器制御装置100にインストールされている場合には、スキャナドライバ103をインストールするだけでバーコードスキャナ3に対応することができ、AP101を変更せずに、スキャナドライバ103を利用して、プリンタ2を介してバーコードスキャナ3を利用することが可能となる。すなわち、機器制御装置100自体にバーコードスキャナ3を接続するための新たなポートを必要とせず、AP101を変更しないで、バーコードスキャナ3を利用することか可能となる。なお、機器制御装置100が無線LANを主に利用するような機器である場合、有線で入力機器を接続すると機器制御装置100の操作性が低下する場合には、特に有用である。
上記の説明では、中継機器を介して機器制御装置とデータの送受信を行う入力機器としてバーコードスキャナ3を用いて説明したが、入力機器はこれに限定されるものではなく、キーボードやマウスなどの端末の入力装置として利用可能なデバイス、及びHID(Human Interface Device)等であっても良い。
当業者は、本発明の精神および範囲から外れることなく、種々の変更、置換および修正をこれに加えることが可能であることを理解されたい。
1、100 機器制御装置
101 アプリケーションプログラム(AP)
102 オペレーションプログラム(OS)
103 スキャナドライバ
152 接続情報要求部
153 データ要求部
154 内部出力部
2 プリンタ
3 バーコードスキャナ

Claims (8)

  1. 入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置が、
    前記入力機器が前記中継機器から利用可能であるか否かを示す接続情報を、前記中継機器に対して所定の接続時間間隔で周期的に要求し、
    前記入力機器が前記中継機器から利用可能であることを示す接続情報を取得した場合、前記データの受信のための前記中継機器との接続を確立するとともに、前記データの受信を、前記中継機器に対して所定の受信時間間隔で周期的に要求し、
    受信した前記データを、前記機器制御装置内のアプリケーションプログラムが認識可能なデータ形式の情報として、前記機器制御装置の動作を制御するオペレーティングシステムに出力する、
    ことを含む、機器制御方法。
  2. 前記機器制御装置は、当該機器制御装置が有するドライバソフトウエアが、前記接続情報の要求と、前記データの受信の要求と、受信した前記データの前記オペレーティングシステムへの出力とを担う、請求項1に記載の機器制御方法。
  3. 前記機器制御装置内のアプリケーションプログラムが認識可能なデータ形式の情報とは、前記機器制御装置がキーボードから入力されたと認識可能なテキスト情報を言う、請求項1又は2に記載の機器制御方法。
  4. 前記データの受信の要求に応じて連続してデータを受信しなかった回数が所定の閾値を超えた後に前記データの受信の要求に応じてデータを受信しなかった後の前記受信時間間隔は、前記データの受信の要求に応じて連続してデータを受信しなかった回数が所定の閾値を超える前に前記データの受信の要求に応じてデータを受信しなかった後の前記受信時間間隔よりも大きい、請求項1ないし3のいずれか一項に記載の機器制御方法。
  5. 前記接続時間間隔は、前記受信時間間隔よりも大きい、請求項1ないし4のいずれか一項に記載の機器制御方法。
  6. 前記接続情報の要求において、前記機器制御装置が、SNMP(Simple Network Management Protocol)を用いて前記接続情報を要求する、請求項1ないし5のいずれか一項に記載の機器制御方法。
  7. 入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置に、
    前記入力機器が前記中継機器から利用可能であるか否かを示す接続情報を、前記中継機器に対して所定の接続時間間隔で周期的に要求し、
    前記入力機器が前記中継機器から利用可能であることを示す接続情報を取得した場合、前記データの受信のための前記中継機器との接続を確立するとともに、前記データの受信を、中継機器に対して所定の受信時間間隔で周期的に要求し、
    受信した前記データを、前記機器制御装置内のアプリケーションプログラムが認識可能なデータ形式の情報として、前記機器制御装置の動作を制御するオペレーティングシステムに出力する、
    ことを実行させる、機器制御プログラム。
  8. 入力に応じてデータを出力する入力機器が接続される中継機器とネットワークを介して接続された機器制御装置であって、
    前記入力機器が前記中継機器から利用可能である否かを示す接続情報を、前記中継機器に対して所定の接続時間間隔で周期的に要求する接続情報要求部と、
    前記入力機器が前記中継機器から利用可能であることを示す接続情報を取得した場合、前記データの受信のための前記中継機器との接続を確立するとともに、前記データの受信を、前記中継機器に対して所定の受信時間間隔で周期的に要求するデータ要求部と、
    受信した前記データを、前記機器制御装置内のアプリケーションプログラムが認識可能なデータ形式の情報として、前記機器制御装置の動作を制御するオペレーティングシステムに出力する内部出力部と、
    を備える機器制御装置。
JP2019224493A 2019-12-12 2019-12-12 機器制御方法、機器制御プログラム、および機器制御装置 Active JP6732092B1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019224493A JP6732092B1 (ja) 2019-12-12 2019-12-12 機器制御方法、機器制御プログラム、および機器制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019224493A JP6732092B1 (ja) 2019-12-12 2019-12-12 機器制御方法、機器制御プログラム、および機器制御装置

Publications (2)

Publication Number Publication Date
JP6732092B1 true JP6732092B1 (ja) 2020-07-29
JP2021093068A JP2021093068A (ja) 2021-06-17

Family

ID=71738582

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019224493A Active JP6732092B1 (ja) 2019-12-12 2019-12-12 機器制御方法、機器制御プログラム、および機器制御装置

Country Status (1)

Country Link
JP (1) JP6732092B1 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006060541A (ja) * 2004-08-20 2006-03-02 Ricoh Co Ltd 通信システム
JP2011066491A (ja) * 2009-09-15 2011-03-31 Nec Corp ネットワーク監視システム及び方法
JP6028416B2 (ja) * 2012-06-28 2016-11-16 セイコーエプソン株式会社 データ処理装置、及び、posシステム
US9280305B2 (en) * 2013-01-02 2016-03-08 Seiko Epson Corporation Client device using a markup language to control a periphery device via a printer

Also Published As

Publication number Publication date
JP2021093068A (ja) 2021-06-17

Similar Documents

Publication Publication Date Title
US9866992B2 (en) Communication device
EP2699024B1 (en) Near Field Communication Device
US9191073B2 (en) Application search system and method for easy operation
US9554000B2 (en) Server and communication system including the same
EP2699023B1 (en) Near Field Communication Device
US20150160897A1 (en) Print control appratus and print control program
JP6036214B2 (ja) プリンター、プリンターシステム、及びプリンターの設定方法
US20110013223A1 (en) Communication Control Method and Control Program
US11570830B2 (en) Communication system, non-transitory computer-readable recording medium storing connection application for terminal, and communication device for establishing wireless connection between pair of devices
JP5986016B2 (ja) 情報処理装置及びプログラム
JP2012168637A (ja) ネットワークシステムおよびネットワークシステムの印刷制御方法
JP2016045575A (ja) 印刷システム、情報処理装置、情報処理装置の制御方法、及びプログラム
JP6732092B1 (ja) 機器制御方法、機器制御プログラム、および機器制御装置
JP6639614B1 (ja) 機器制御方法、機器制御プログラム、中継機器および機器制御装置
JP2018132881A (ja) 通信システム、印刷仲介サーバ、及び、端末装置のためのコンピュータプログラム
JP6191385B2 (ja) 送信システム、ホスト装置、及び、データ送信方法
JP6380505B2 (ja) プリンター、プリンターシステム、及びプリンターの設定方法
JP7368140B2 (ja) データ更新システム、プリンタ及び制御プログラム
JP2022061285A (ja) 端末装置制御方法、端末装置、及びプログラム
JP6209257B2 (ja) 情報処理装置及びプログラム
JP2020095382A (ja) プリンターシステム、プリンター設定方法、プリンター、プリンターの制御プログラム、プリンター設定装置およびプリンター設定装置の制御プログラム
JP6206083B2 (ja) 送信システム、送信装置、及び、データ送信方法
JP2021096689A (ja) 画像形成装置、印刷システムの制御方法及びプログラム
JP2014194709A (ja) 情報処理装置、情報処理システム、情報処理装置の制御方法、及び、プログラム
JP2007293599A (ja) 情報処理装置及びネットワーク機器

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20200109

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200311

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200311

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200325

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: 20200609

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200707

R150 Certificate of patent or registration of utility model

Ref document number: 6732092

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250