(57)【要約】【課題】アプリケーションのソースコードを変更することなくＲＦＩＤ機器の変更に柔軟に対応できるＲＦＩＤシステムを提供する。【解決手段】ミドルウェア１２を構成するメインクラス１２１が、アプリケーション１１からのタグデータの取得要求に応じてＲＦＩＤリーダ／ライタ２に接続可能なリーダ／ライタアダプタ１３１を判別し、このリーダ／ライタアダプタ１３１に接続するために予め設けられたユーティリティクラス１２３の継承によってアダプタクラス１２２を生成し、接続先を切り換えることを特徴とする。【選択図】図３
2009157779.tif 000002
【特許請求の範囲】
【請求項１】
複数のＲＦＩＤタグから発信される無線信号からタグデータを取得する異なる種類のＲＦＩＤリーダ／ライタと、
このＲＦＩＤリーダ／ライタに接続され、前記ＲＦＩＤリーダ／ライタの種類に対応して設けられ、前記ＲＦＩＤリーダ／ライタとの通信を仲介する複数のリーダ／ライタアダプタと、
このリーダ／ライタアダプタに接続され、前記リーダ／ライタアダプタを介して前記タグデータを取得し、出力するミドルウェアと、
このミドルウェアに接続され、前記ミドルウェアに前記タグデータの取得要求を行い、この取得要求に応じて前記ミドルウェアから出力される前記タグデータを取得するアプリケーションと、を備え、
前記ミドルウェアが、
前記アプリケーションからの取得要求によって指定された前記ＲＦＩＤリーダ／ライタに接続可能な前記リーダ／ライタアダプタを判別するメインクラスと、
前記判別されたリーダ／ライタアダプタに接続され、前記アプリケーションからの取得要求によって指定された前記ＲＦＩＤリーダ／ライタから取得される前記タグデータを前記アプリケーションに通知するアダプタクラスと、
前記リーダ／ライタアダプタとの接続のため、前記リーダ／ライタアダプタの種類に対応して予め設けられた複数のユーティリティクラスと、からなり、
前記メインクラスが、前記複数のユーティリティクラスの中から前記判別されたリーダ／ライタアダプタとの接続に対応したユーティリティクラスを選択し、これを継承元として前記アダプタクラスを生成し、接続先を切り換えることを特徴とするＲＦＩＤシステム。
【請求項２】
前記アダプタクラスが、前記リーダ／ライタアダプタから取得される前記タグデータに含まれるタグＩＤを記憶領域に格納されている受信済みのタグデータに係るタグＩＤと比較し、初回受信のタグデータのみを前記アプリケーションへの通知対象とすることを特徴とする請求項１記載のＲＦＩＤシステム。
【請求項３】
前記ミドルウェアが、
前記アダプタクラスに接続され、前記アダプタクラスが前記リーダ／ライタアダプタを介して取得した前記ＲＦＩＤリーダ／ライタの稼働情報を監視し、前記アプリケーションへ通知する監視クラスと、
前記アダプタクラスに接続され、前記アダプタクラスで取得されたタグデータを格納するデータクラスと、
前記監視クラスおよび前記データクラスに接続され、前記監視クラスから前記ＲＦＩＤリーダ／ライタの稼働情報、前記データクラスから前記タグデータを取得してログを作成し、前記アプリケーションで指定される出力先に前記ログを出力するログ出力クラスと、
を更に有することを特徴とする請求項１または請求項２記載のＲＦＩＤシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、各種のＲＦＩＤ機器に対応したＲＦＩＤシステムに関する。
【背景技術】
【０００２】
製造工程や商取引において製品に関する情報を識別し、管理するための技術としてＲＦＩＤ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）システムが広く知られている。一般に、ＲＦＩＤシステムは、微小な無線チップを有するＲＦＩＤタグと、このＲＦＩＤタグから送信される無線信号を非接触で受信してタグＩＤを含むタグデータを取得し、識別するＲＦＩＤリーダ／ライタと、このＲＦＩＤリーダ／ライタからタグデータを取得して処理を行うコンピュータから構成されている。ＲＦＩＤリーダ／ライタで受信されたタグデータは、コンピュータ内部のミドルウェアを介して各種アプリケーションで使用可能となる。
【０００３】
例えば、特許文献１では、ミドルウェアに相当する自動ＩＤインフラストラクチャが各種アプリケーションとデバイスコントローラの間を仲介し、ＲＦＩＤ読み取り機が受信するＲＦＩＤタグの情報を監視している。そして、収集した情報をアプリケーションにおいて処理の対象としている。
【特許文献１】特開２００６−２４４４９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のＲＦＩＤシステムにおけるミドルウェアでは、一度に使用するＲＦＩＤのデバイス数が制限されており、サポートするデバイス数を予め多く設定するとミドルウェアとしての処理が重くなる問題があった。
【０００５】
また、ＲＦＩＤ機器は、ゲート式、携帯式など様々な種類があり、そのメーカー数も多い。そのため、ＲＦＩＤ機器によってインターフェースとなるリーダ／ライタアダプタ（ソフトウェア）が異なっており、リーダ／ライタアダプタにおけるＲＦＩＤタグデータの受信コマンド名、処理手順、通信プロトコル（ＲＳ２３２Ｃ、ＴＣＰ／ＩＰ等）などの違いに対応するためにはミドルウェアのみならずアプリケーションのソースコードの変更が必要となり、ＲＦＩＤシステムへ新たなＲＦＩＤ機器を導入するのが難しいという問題があった。
【０００６】
そこで、本発明は、アプリケーションのソースコードを変更することなくＲＦＩＤ機器の変更に柔軟に対応できるＲＦＩＤシステムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係るＲＦＩＤシステムは、複数のＲＦＩＤタグから発信される無線信号からタグデータを取得する異なる種類のＲＦＩＤリーダ／ライタと、このＲＦＩＤリーダ／ライタに接続され、前記ＲＦＩＤリーダ／ライタの種類に対応して設けられ、前記ＲＦＩＤリーダ／ライタとの通信を仲介する複数のリーダ／ライタアダプタと、このリーダ／ライタアダプタに接続され、前記リーダ／ライタアダプタを介して前記タグデータを取得し、出力するミドルウェアと、このミドルウェアに接続され、前記ミドルウェアに前記タグデータの取得要求を行い、この取得要求に応じて前記ミドルウェアから出力される前記タグデータを取得するアプリケーションと、を備え、前記ミドルウェアが、前記アプリケーションからの取得要求によって指定された前記ＲＦＩＤリーダ／ライタに接続可能な前記リーダ／ライタアダプタを判別するメインクラスと、前記判別されたリーダ／ライタアダプタに接続され、前記アプリケーションからの取得要求によって指定された前記ＲＦＩＤリーダ／ライタから取得される前記タグデータを前記アプリケーションに通知するアダプタクラスと、前記リーダ／ライタアダプタとの接続のため、前記リーダ／ライタアダプタの種類に対応して予め設けられた複数のユーティリティクラスと、からなり、前記メインクラスが、前記複数のユーティリティクラスの中から前記判別されたリーダ／ライタアダプタとの接続に対応したユーティリティクラスを選択し、これを継承元として前記アダプタクラスを生成し、接続先を切り換えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、アプリケーションのソースコードを変更することなくＲＦＩＤ機器の変更に柔軟に対応できるＲＦＩＤシステムを提供できる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施形態について図面を用いて説明する。図１は、本発明の一実施形態に係るＲＦＩＤシステムの全体構成例を示す。
【００１０】
ＲＦＩＤシステムは、ＲＦＩＤ管理装置１、ＲＦＩＤリーダ／ライタ２、およびＲＦＩＤタグ３から構成される。
【００１１】
ＲＦＩＤ管理装置１は、内部に記憶されているアプリケーション１１、ミドルウェア１２、およびＲＦＩＤコアエンジン１３によってＲＦＩＤリーダ／ライタ２からＲＦＩＤタグ３のタグデータを取得し、管理するコンピュータ等の処理装置である。
【００１２】
アプリケーション１１は、ＲＦＩＤリーダ／ライタ２から取得されるタグデータに基づいて処理を行う各種のソフトウェアである。例えば、製品の製造、流通、販売を管理する製品管理アプリケーション、企業の有する資産を管理する資産管理アプリケーション、制限区域への入室・退室を管理する入退室管理アプリケーションなどである。
【００１３】
ミドルウェア１２は、アプリケーション１１からの取得要求に応じてＲＦＩＤコアエンジン１３からＲＦＩＤリーダ／ライタ２のステータス情報（稼働情報）およびタグＩＤを含むタグデータを取得し、リード／ライトイベントに関するデータ管理、データロギング、および機器監視などの機能を有するソフトウェアである。
【００１４】
ＲＦＩＤコアエンジン１３は、各種のＲＦＩＤリーダ／ライタ２との接続に対応した複数のリーダ／ライタアダプタ１３１からなり、ＲＦＩＤリーダ／ライタ２から取得したタグＩＤを含むタグデータをミドルウェア１２に通知するＲＦＩＤ共通基盤となるソフトウェアである。
【００１５】
ＲＦＩＤリーダ／ライタ２は、バス４を介してＲＦＩＤ管理装置１（ＲＦＩＤコアエンジン１３）に接続され、微小な無線チップを有する複数のＲＦＩＤタグ３からの無線信号を非接触で受信し、タグＩＤを含むタグデータを取得するＲＦＩＤ機器であり、対象となるＲＦＩＤタグ３に応じてゲート式、携帯式など様々な種類がある。
【００１６】
図２は、図１に示したＲＦＩＤシステムを機能別に、各種のアプリケーション１１を含むアプリ層、ミドルウェア１２を含むイベント管理層、ＲＦＩＤコアエンジン１３、ＲＦＩＤリーダ／ライタ２、およびＲＦＩＤタグ３を含むデバイスアダプタ層の三階層に分類したものである。このように、イベント管理層がアプリ層とデバイスアダプタ層の中間層に位置するので、ミドルウェア１２がＲＦＩＤ機器に依存しない共通のインターフェースとして提供されることにより、アプリケーション１１におけるソースコードの変更を行うことなく機器の変更に対応可能となる。
【００１７】
以下、ミドルウェア１２を図面に基づいて詳説する。図３は、ミドルウェア１２を構成する各クラスの関係を説明するブロック図である。
【００１８】
本実施形態に係るミドルウェア１２は、メインクラス１２１、アダプタクラス１２２、ユーティリティクラス１２３（Ａ〜Ｄ）、監視クラス１２４、データクラス１２５、およびログ出力クラス１２６から構成される。
【００１９】
メインクラス１２１は、アプリケーション１１によってインスタンスが生成され、アダプタクラス１２２、監視クラス１２４、およびログ出力クラス１２６のインスタンスを作成し、各クラスが処理したデータを上位のアプリケーション１１に通知するクラスである。
【００２０】
アダプタクラス１２２は、ＲＦＩＤコアエンジン１３（リーダ／ライタアダプタ１３１）との接続を行うクラスであり、アプリケーション１１からの要求に基づいてメインクラス１２１がユーティリティクラス１２３のいずれかを継承元として選択し、継承によりインスタンスが生成される。また、アダプタクラス１２２は、上位のアプリケーション１１、監視クラス１２４、データクラス１２５に接続し、情報の受け渡しを行うインターフェースとしての機能を有する。
【００２１】
ユーティリティクラス１２３は、アダプタクラス１２２の継承元として予め定義された関数の集まりであって、メインクラス１２１が管理するクラスである。ユーティリティクラス１２３は、複数あるリーダ／ライタアダプタ（ソフトウェア）１３１の各々に対応して備えられている。例えば、図３においてはリーダ／ライタアダプタ１３１が４種類（Ａ〜Ｄ）備えられており、アプリケーション１１においてＲＦＩＤリーダ／ライタＡに係るデータ取得要求がなされた場合には、ＲＦＩＤリーダ／ライタＡとの接続はリーダ／ライタアダプタＡ、リーダ／ライタアダプタＡとの接続はユーティリティクラスＡによって可能となる。尚、ユーティリティクラス１２３の数は、ＲＦＩＤリーダ／ライタ２と同様に制限はない。
【００２２】
監視クラス１２４は、アダプタクラス１２２から通知される情報に基づいて各種のＲＦＩＤリーダ／ライタ２のステータス（稼働状態）を監視するクラスである。また、監視クラス１２４は、アプリケーション１１と接続してＲＦＩＤリーダ／ライタ２のステータス情報を通知する機能を有する。
【００２３】
データクラス１２５は、アダプタクラス１２２によってインスタンスが生成され、アダプタクラス１２２において受信されたタグデータおよびステータス情報などをＲＦＩＤ管理装置１のメモリ内（図示しない）に格納するクラスである。
【００２４】
ログ出力クラス１２６は、データクラス１２５が格納する受信データやＲＦＩＤリーダ／ライタ２のステータス情報を取得してログを作成し、アプリケーション１１から通知されるログ出力パラメータに基づいてファイルや画面などにログを出力するクラスである。ログ出力パラメータの具体例としては、ログファイル名、ログ出力先、ログファイルの最大サイズ、ログファイルの文字コード、ログの作成周期などが挙げられる。
【００２５】
次に、ミドルウェア１２の動作を図４乃至図８に基づいて説明する。図４乃至図７は、ミドルウェア１２内の各クラスの処理の具体例を示すフローチャートである。また、図８は、図４乃至図７における各クラスの処理を説明するブロック図であり、矢印に付された符号は図４乃至図７における各ステップを示す。
【００２６】
図４は、メインクラス１２１における初期処理の具体例を示すフローチャートである。
【００２７】
先ず、アプリケーション１１からの指令によってメインクラス１２１のインスタンスが生成され、ＲＦＩＤリーダ／ライタ２のステータス情報の取得要求およびタグＩＤの取得要求が受信される（ステップＳ４０１）。具体的には、ＲＦＩＤリーダ／ライタ２の名称などがパラメータとして渡される。
【００２８】
次に、メインクラス１２１は、ログ出力クラス１２６のインスタンスを生成する（ステップＳ４０２）。
【００２９】
次に、メインクラス１２１は、受信した取得要求に係るＲＦＩＤリーダ／ライタ２に接続可能なリーダ／ライタアダプタ１３１を判別する（ステップＳ４０３）。
【００３０】
次に、メインクラス１２１は、判別されたリーダ／ライタアダプタ１３１に対応するユーティリティクラス１２３を複数のクラスの中から選び、アダプタクラス１２２の継承元とする（ステップＳ４０４）。
【００３１】
次に、メインクラス１２１は、選択されたユーティティクラス２３の継承によってアダプタクラス１２２のインスタンスを生成する（ステップＳ４０５）。すなわち、アダプタクラス１２２がＲＦＩＤリーダ／ライタ２およびリーダ／ライタアダプタ１３１に対応してアダプタクラス１２２が生成され、リーダ／ライタアダプタ１３１を介して接続するＲＦＩＤリーダ／ライタ２を切り換える。
【００３２】
次に、メインクラス１２１は、監視クラス１２４のインスタンスを生成する（ステップＳ４０６）。
【００３３】
次に、アダプタクラス１２２は、接続するＲＦＩＤコアエンジン１３中のリーダ／ライタアダプタ１３１に対してＲＦＩＤリーダ／ライタ２のステータス情報およびタグデータの通知を要求し（ステップＳ４０７）、初期処理を終了する。
【００３４】
図５は、アダプタクラス１２２における処理の具体例を示すフローチャートである。
【００３５】
先ず、アダプタクラス１２２は、リーダ／ライタアダプタ１３１に対してＲＦＩＤリーダ／ライタ２のステータス情報およびタグデータの通知を要求する(ステップＳ５０１)。
【００３６】
次に、アダプタクラス１２２は、リーダ／ライタアダプタ１３１からの応答結果としてタグＩＤを含むタグデータがＲＦＩＤコアエンジン１３（リーダ／ライタアダプタ１３１）から取得されているか否かを判定する（ステップＳ５０２）。
【００３７】
ここで、タグデータが取得されている場合には、ステップＳ５０３に進む。これに対し、タグデータが取得されていない場合には、ステップＳ５０６へ進む。
【００３８】
ステップＳ５０３においては、アダプタクラス１２２は、リーダ／ライタアダプタ１３１から取得したタグデータに含まれるタグＩＤをデータクラス１２５内に格納されているタグＩＤと比較し、タグデータが初回受信か否かを判定する。
【００３９】
ここで、受信したタグＩＤが格納されているタグＩＤと異なる場合には、アダプタクラス１２２は、初回受信のタグデータであると判定し、タグＩＤを含むタグデータをデータクラス１２５に通知してメモリ内に格納させる（ステップＳ５０４）と共に要求元のアプリケーション１１に通知し（ステップＳ５０５）、ステップＳ５０６へ進む。
【００４０】
また、ステップＳ５０３において、受信したタグＩＤが格納されているタグＩＤと一致する場合には、アダプタクラス１２２は、受信済みのタグデータであると判定し、ステップＳ５０６に進む。
【００４１】
ステップＳ５０６において、アダプタクラス１２２は、ＲＦＩＤリーダ／ライタ２のステータス情報を監視クラス１２４に通知し、処理を終了する。
【００４２】
図６は、監視クラス１２４における処理の具体例を示すフローチャートである。
【００４３】
先ず、監視クラス１２４は、アダプタクラス１２２からＲＦＩＤリーダ／ライタ２のステータス情報を取得する（ステップＳ６０１）。
【００４４】
次に、監視クラス１２４は、取得したステータス情報をログ出力クラス１２６および要求元のアプリケーション１１に通知し（ステップＳ６０２）、処理を終了する。
【００４５】
図７は、ログ出力クラス１２６における処理の具体例を示すフローチャートである。
【００４６】
先ず、ログ出力クラス１２６は、アプリケーション１１から出力方法（ファイル出力、画面表示、システムログ等）および出力先を示すログ出力パラメータを受信しているか否かを判定する（ステップＳ７０１）。
【００４７】
ここで、ログ出力パラメータが受信されている場合には、ログ出力クラス１２６は、ＲＦＩＤリーダ／ライタ２のステータス情報およびデータクラス１２５に格納されているタグデータに基づいてログを作成する(ステップＳ７０２)。
【００４８】
次に、ログ出力クラス１２６は、作成されたログをログ出力パラメータで指定される出力方法で出力し（ステップＳ７０３）、処理を終了する。
【００４９】
上記のようにミドルウェア１２を構築することにより、ＲＦＩＤシステムに新しい種類のＲＦＩＤ機器が追加され、ＲＦＩＤコアエンジン１３に対応するリーダ／ライタアダプタ１３１が追加される場合にも、ミドルウェア１２においてリーダ／ライタアダプタ１３１に対応するユーティリティクラス１２３を追加することでアプリケーション１１のソースコードを変更せずにＲＦＩＤ機器の変更に対応することが可能となる。また、タグＩＤに基づいてアプリケーション１１への通知対象となるタグデータを選別しているので、アプリケーション１１における負荷を軽減することができる。
【００５０】
尚、本発明は上記実施形態に限定されるものではなく、本発明の技術的思想の範囲内で種々変形して実施可能である。
【図面の簡単な説明】
【００５１】
【図１】本発明の一実施形態に係るＲＦＩＤシステムの全体構成例を示す図。
【図２】本発明の一実施形態に係るＲＦＩＤシステムを階層に分類して説明する図。
【図３】本発明の一実施形態に係るミドルウェア１２を構成する各クラスの関係を説明するブロック図。
【図４】本発明の一実施形態に係るメインクラス１２１における処理の具体例を説明するフローチャート。
【図５】本発明の一実施形態に係るアダプタクラス１２２における処理の具体例を説明するフローチャート。
【図６】本発明の一実施形態に係る監視クラス１２４における処理の具体例を説明するフローチャート。
【図７】本発明の一実施形態に係るログ出力クラス１２６における処理の具体例を説明するフローチャート。
【図８】本発明の一実施形態に係るミドルウェア１２における処理の具体例を説明するブロック図。
【符号の説明】
【００５２】
１…ＲＦＩＤ管理装置、２…ＲＦＩＤリーダ／ライタ、
３…ＲＦＩＤタグ、
１１…アプリケーション、１２…ミドルウェア、
１３…ＲＦＩＤコアエンジン、
１２１…メインクラス、１２２…アダプタクラス、
１２３…ユーティリティクラス、１２４…監視クラス、
１２５…データクラス、１２６…ログ出力クラス、
１３１…リーダ／ライタアダプタ。
【図１】
2009157779.tif 000003
【図２】
2009157779.tif 000004
【図３】
2009157779.tif 000005
【図４】
2009157779.tif 000006
【図５】
2009157779.tif 000007
【図６】
2009157779.tif 000008
【図７】
2009157779.tif 000009
【図８】
2009157779.tif 000010