(57)【特許請求の範囲】
【請求項１】
異なる２以上の通信規格のＲＦタグを読み取り可能なＲＦタグ読み取り装置であって、
２以上の通信規格のＲＦタグの読み取り処理プログラムを記憶する記憶手段と、
ＲＦタグを読み取るための複数の通信規格のそれぞれに対応する読み取り処理プログラムを保持するサーバから、前記記憶手段に記憶できる数の読み取り処理プログラムを一括して取得して前記記憶手段に記憶する受信手段と、
前記記憶手段に記憶した前記読み取り処理プログラムを実行して、ＲＦタグの読み取り処理を行う読み取り手段と、
を備えることを特徴とするＲＦタグ読み取り装置。
【請求項２】
前記読み取り処理を実行する順序を取得する優先順取得手段を備え、
前記受信手段は、前記優先順取得手段で取得した実行する順序の早いものから順に、前記記憶手段に記憶できる数の前記読み取り処理プログラムを一括して受信し、
前記読み取り手段は、前記実行する順序に従って、順次読み取り処理を行う
ことを特徴とする請求項１に記載のＲＦタグ読み取り装置。
【請求項３】
前記読み取り処理を実行する順序は、前記複数の通信規格の読み取り処理プログラムのうち同じ周波数帯の通信規格の前記読み取り処理プログラムが、少なくとも部分的に連続するように配置されることを特徴とする請求項２に記載のＲＦタグ読み取り装置。
【請求項４】
前記読み取り手段が実行した読み取り処理で応答信号を受信できた履歴に基づいて、前記読み取り処理を実行する順序を決定する学習手段を備えることを特徴とする請求項２又は３に記載のＲＦタグ読み取り装置。
【請求項５】
前記読み取り処理を実行する順序は、前記複数の通信規格の異なる周波数帯にまたがる１つの順序であることを特徴とする請求項２乃至４のいずれか１項に記載のＲＦタグ読み取り装置。
【請求項６】
前記読み取り処理を実行する順序は、前記複数の通信規格の周波数帯ごとに設定された順序であることを特徴とする請求項２乃至４のいずれか１項に記載のＲＦタグ読み取り装置。
【請求項７】
前記優先順取得手段は、前記読み取り装置に対応して設定された前記実行する順序を取得することを特徴とする請求項２乃至６のいずれか１項に記載のＲＦタグ読み取り装置。
【請求項８】
ＲＦタグを読み取るための複数の通信規格のそれぞれに対応する読み取り処理プログラムを保持する保持手段と、
異なる２以上の通信規格のＲＦタグを読み取り可能なＲＦタグ読み取り装置に、前記保持手段に保持する前記読み取り処理プログラムのうち、該ＲＦタグ読み取り装置が記憶できる数の読み取り処理プログラムを一括して送信する送信手段と、
を備えることを特徴とするサーバ。
【請求項９】
前記ＲＦタグ読み取り装置が前記読み取り処理プログラムを実行する順序を取得する優先順取得手段を備え、
前記送信手段は、前記優先順取得手段で取得した実行する順序の早いものから順に、前記ＲＦタグ読み取り装置が記憶できる数の前記読み取り処理プログラムを一括して送信する
ことを特徴とする請求項８に記載のサーバ。
【請求項１０】
前記優先順取得手段は、前記ＲＦタグ読み取り装置ごとに設定された実行する順序を取得することを特徴とする請求項８又は９に記載のサーバ。
【請求項１１】
請求項１乃至７のいずれか１項に記載のＲＦタグ読み取り装置と、
請求項８乃至１０のいずれか１項に記載のサーバと、
前記ＲＦタグ読み取り装置と前記サーバとを通信可能に接続する通信ネットワークと、
を備えることを特徴とするＲＦタグ読み取りシステム。
【請求項１２】
異なる２以上の通信規格のＲＦタグの読み取り操作を実行するプログラムを記憶できるＲＦタグ読み取り装置のＲＦタグ読み取り方法であって、
複数の読み取り処理プログラムを保持するサーバから、前記ＲＦタグ読み取り装置に記憶できる数の前記読み取り処理プログラムを一括して取得して記憶する受信ステップと、
前記受信ステップで記憶した前記読み取り処理プログラムを実行して、ＲＦタグの読み取り処理を行う読み取りステップと、
を備えることを特徴とするＲＦタグ読み取り方法。
【請求項１３】
コンピュータを、
２以上の通信規格のＲＦタグの読み取り処理プログラムを記憶する記憶手段と、
ＲＦタグを読み取るための複数の通信規格のそれぞれに対応する前記読み取り処理プログラムを保持するサーバから、前記記憶手段に記憶できる数の前記読み取り処理プログラムを一括して取得して前記記憶手段に記憶する受信手段と、
前記記憶手段に記憶した前記読み取り処理プログラムを実行して、ＲＦタグの読み取り処理を行う読み取り手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多種類のＲＦタグを読み取るＲＦタグ読み取り装置、ＲＦタグ読み取り方法、サーバ、ＲＦタグ読み取りシステム及びプログラムに関する。
【背景技術】
【０００２】
現在、家庭や小規模店舗等で取り扱う商品等には、多種類のＲＦタグ（以下、特に言及しない場合には、ＲＦＩＤタグ（Radio Frequency Identification tag）のことをいう）が使用されており、今後も増加していくことが見込まれる。家庭や小規模店舗等で使用するＲＦタグリーダライタ装置は、多種類のＲＦタグに対応し、使用できるＲＦタグの種類を容易に追加でき、一度に多くの種類のＲＦタグに読み書きする必要がある。
【０００３】
関連する技術として、ＲＦタグのリーダライタの構成を簡素化する方法が、特許文献１に記載されている。特許文献１の技術では、ＲＦＩＤ記録媒体の指示情報を出力するホスト装置に接続された無線通信装置は、ＲＦＩＤ記録媒体に対する送信信号及びＲＦＩＤ記録媒体からの受信信号を送受信する複数のアンテナ機構がＲＦＩＤ記録媒体の通信仕様ごとに設けられている。この無線通信装置に、当該指示情報が示す通信仕様に基づき送信信号の生成及び受信信号の解析を実行する信号処理手段と、送信信号を送出すべきアンテナ機構及び受信信号を受信すべきアンテナ機構の選定を行うアンテナ切替手段とを有する制御機構とを備える。
【０００４】
特許文献２には、一連の運用処理時間を短縮し、効率良くアンテナの切替えを行う無線情報処理装置について記載されている。特許文献２の技術は、リーダライタ装置（Ｒ／Ｗ）の電源ＯＮ時、ホストからのアンテナ指定コマンドを受信し、Ｒ／Ｗは、メモリにアンテナ制御情報を格納する。Ｒ／Ｗは、電力供給コマンドを受信すると、メモリに記憶されたアンテナ制御情報で最初に動作すると指定されたアンテナから電磁波を出力する。次にカードリードコマンドを受信すると、メモリのアンテナ制御情報に基づき、１番目のアンテナが動作するか判定し、動作する設定の場合、１番目のアンテナから無線カードに対するリードコマンドを出力する。同様に、２番、３番目のアンテナが動作するか判定し、動作する設定の場合、２番、３番目のアンテナからリードコマンドを出力する。
【０００５】
特許文献３には、ＲＦタグからの応答が途切れた場合にもＲＦタグを認識可能なＲＦタグ信号受信装置が記載されている。特許文献３のＲＦタグ信号受信装置は、ベースバンド信号を通信プロトコルに従って復調する復調部と、復調できなかった信号以降の入力信号を記憶する残信号メモリと、通信プロトコルから次データを推論するデータ判定部と、通信プロトコルにおける基本波形の波形パターンを記憶する信号パターン記憶部と、残信号メモリの信号の波形パターンに一致する基本波形を信号パターン記憶部から検索する信号比較部を備える。さらに、データ判定部が推論したデータと信号比較部が検索した基本波形のデータが一致するかを判断するデータ判断部と、データ判断部の判断結果に基づいて残信号メモリに格納される当該信号の先頭部分から、当該基本波形の信号長と同じ長さの元信号を読み取り、当該元信号を復調部へ再送する信号減算部とを備える。
【０００６】
特許文献４には、複数の無線タグや複数の上位機器の更新・変更等に、容易に対応することができる通信装置が記載されている。特許文献４の通信装置は、有線又は無線で外部機器と通信を行う複数の通信モジュールが互いに伝送路で接続されている。そして、複数の通信モジュールは、それぞれ、自身の識別情報と通信に関する機能情報とを保持している。さらに、少なくともいずれか１つの通信モジュールは、他の複数の通信モジュールに関する識別情報と機能情報とを取得し、それらに基づいて、外部機器と通信を行う通信モジュールを選択する。
【０００７】
特許文献５には、多様な利用が可能な情報記憶媒体及びアクセス装置が記載されている。特許文献５に記載の技術は、まず、携帯型リーダライタは、３種類の周波数帯域による搬送波により電波としてアクセス要求命令を出力する。無線ＩＣタグは、いずれか１の搬送波によりアクセス要求命令を受け取り、タグタイプ送信命令を生成して出力する。携帯型リーダライタは、受信したタグタイプに基づいて、周波数帯域とプロトコルとを決定し、決定した周波数帯域とプロトコルとに基づいて、携帯型リーダライタと無線ＩＣタグとの間で、フリーアクセスプロトコル、双方向認証プロトコル又は片方向認証プロトコルによる処理を行う。携帯型リーダライタは入出力応答を出力する。
【特許文献１】特開２００６−１５７５９３号公報
【特許文献２】特開２００１−２７３４６７号公報
【特許文献３】特開２００６−３１９７３０号公報
【特許文献４】特開２００８−００３８２２号公報
【特許文献５】特開２００１−２９１０７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
図１８に、特許文献１に記載されている関連する技術のＲＦ通信システムの構成を示す。特許文献１のＲＦ通信システムは、ホストコンピュータ１００と、リーダライタ１０１と、ＲＦタグ１０５と、仕様サーバ１０７とを備える。ホストコンピュータ１００では、検出対象となるＲＦタグ１０５に対してデータの読み書きを指示するアプリケーションプログラムが動作する。リーダライタ１０１は、ホストコンピュータ１００からの指示に従ってＲＦタグ１０５にデータを読み書きする無線通信装置である。仕様サーバ１０７は、ＲＦタグ１０５とリーダライタ１０１との間の無線通信の制御手段を記載しているプログラム１０８を記憶している。
【０００９】
リーダライタ１０１は、コマンドインタプリタ１０２と、タグドライバインタプリタ１０３と、アンテナユニット１０４と、仕様ダウンロード部１０６とを備える。コマンドインタプリタ１０２は、ホストコンピュータ１００からの指示を解釈し、実行結果を応答する。タグドライバインタプリタ１０３は、コマンドインタプリタ１０２の解釈に基づいて、プログラム１０８の取得やアンテナモジュール１０４の制御等を行う。仕様ダウンロード部１０６は、タグドライバインタプリタ１０３からの要求を受けて仕様サーバ１０７からプログラム１０８を取得する。アンテナユニット１０４は、各周波数帯で無線通信を行うためのアンテナ等を備える。
【００１０】
タグドライバインタプリタ１０３は、プログラムメモリ１０９と、ＤＳＰ（digital signal processor）１１０と、アンテナ切替部１１１とを備える。プログラムメモリ１０９は、プログラム１０８を格納する。ＤＳＰ１１０は、コマンドインタプリタ１０２からの指示に従って、仕様ダウンロード部１０６へのプログラム１０８の取得要求や、プログラム１０８を実行する。アンテナ切替部１１１は、アンテナモジュールの切り替えを制御する。
【００１１】
無線通信を行う際には、ダウンロードされたプログラム１０８をプログラムメモリ１０９にロードするたびに無線通信で使用するアンテナモジュール１０４Ａ及び１０４Ｂ等を切り替えるＯＮ／ＯＦＦの制御を実施するため、アンテナモジュールが安定動作状態になり、通信開始可能となるまでの待ち時間が発生する。多種類のＲＦタグに対応するためにプログラムの数が増加すると、その種類数に比例して待ち時間が増加して、目的のタグを検出するまでの時間が長くなり、タグ読み取り効率の低下が顕著になる。また、仕様サーバ１０７からのプログラムのダウンロードとプログラムメモリ１０９へのロードを繰り返すことになり、仕様サーバ１０７とリーダライタ１０１との間の通信に伴う通信確立等の待ち時間も発生し、タグ読み取り効率を低下させる原因となる。
【００１２】
一般的なＲＦタグリーダライタシステムでは、対応するＲＦタグの種類を追加するために、プログラムをダウンロードして、アンテナモジュール等の切り替えを制御していた。１つのプログラムを実行するたびにアンテナモジュールをＯＮ／ＯＦＦ制御するために、実行するプログラムが多くなると、アンテナモジュールを切り替えて通信をするための待ち時間が増大する問題があった。
【００１３】
また、プログラムを変更して実行するたびにダウンロードするため、プログラムの数を増加させると、プログラムをダウンロードするための通信のオーバーヘッド時間が増加して、ＲＦタグを検出するまでの時間が長くなり、一度に検出できるＲＦタグの種類に限度を設ける必要があった。
【００１４】
本発明は、上述した事情に鑑みてなされたものであり、多種類のＲＦタグに対応するために必要な多数の無線を制御するプログラムを効率よく実行させることで、ＲＦタグの種類が増加した場合でも、ＲＦタグ検出時間が長くなることを抑制するＲＦタグ読み取り装置、ＲＦタグ読み取り方法、ＲＦタグ読み取りプログラム、サーバ及びＲＦタグ読み取りシステムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明の第１の観点に係るＲＦタグ読み取り装置は、
異なる２以上の通信規格のＲＦタグを読み取り可能なＲＦタグ読み取り装置であって、
２以上の通信規格のＲＦタグの読み取り処理プログラムを記憶する記憶手段と、
ＲＦタグを読み取るための複数の通信規格のそれぞれに対応する前記読み取り処理プログラムを保持するサーバから、前記記憶手段に記憶できる数の前記読み取り処理プログラムを一括して取得して前記記憶手段に記憶する受信手段と、
前記記憶手段に記憶した前記読み取り処理プログラムを実行して、ＲＦタグの読み取り処理を行う読み取り手段と、
を備えることを特徴とする。
【００１６】
本発明の第２の観点に係るサーバは、
ＲＦタグを読み取るための複数の通信規格のそれぞれに対応する読み取り処理プログラムを保持する保持手段と、
異なる２以上の通信規格のＲＦタグを読み取り可能なＲＦタグ読み取り装置に、前記保持手段に保持する前記読み取り処理プログラムのうち、該ＲＦタグ読み取り装置が記憶できる数の前記読み取り処理プログラムを一括して送信する送信手段と、
を備えることを特徴とする。
【００１７】
本発明の第３の観点に係るＲＦタグ読み取りシステムは、
本発明の第１の観点に係るＲＦタグ読み取り装置と、
本発明の第２の観点に係るサーバと、
前記ＲＦタグ読み取り装置と前記サーバとを通信可能に接続する通信ネットワークと、
を備えることを特徴とする。
【００１８】
本発明の第４の観点に係るＲＦタグ読み取り方法は、
異なる２以上の通信規格のＲＦタグの読み取り操作を実行するプログラムを記憶できるＲＦタグ読み取り装置のＲＦタグ読み取り方法であって、
複数の読み取り処理プログラムを保持するサーバから、前記ＲＦタグ読み取り装置に記憶できる数の読み取り処理プログラムを一括して取得して記憶する受信ステップと、
前記受信ステップで記憶した前記読み取り処理プログラムを実行して、ＲＦタグの読み取り処理を行う読み取りステップと、
を備えることを特徴とする。
【００１９】
本発明の第５の観点に係るプログラムは、
コンピュータを、
２以上の通信規格のＲＦタグの読み取り処理プログラムを記憶する記憶手段と、
ＲＦタグを読み取るための複数の通信規格のそれぞれに対応する前記読み取り処理プログラムを保持するサーバから、前記記憶手段に記憶できる数の前記読み取り処理プログラムを一括して取得して前記記憶手段に記憶する受信手段と、
前記記憶手段に記憶した前記読み取り処理プログラムを実行して、ＲＦタグの読み取り処理を行う読み取り手段、
として機能させることを特徴とする。
【発明の効果】
【００２０】
本発明のＲＦタグ読み取り装置、ＲＦタグ読み取り方法、ＲＦタグ読み取りプログラム、サーバ及びＲＦタグ読み取りシステムによれば、多種類のＲＦタグに対応するために必要な多数のプログラムを効率よく実行させることで、ＲＦタグの種類が増加した場合でも、ＲＦタグ検出時間が長くなることを抑制することができる。
【発明を実施するための最良の形態】
【００２１】
以下、この発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一又は相当部分には同一符号を付し、その説明は繰り返さない。なお、実施の形態では、ＲＦタグ読み書きシステムについて説明するが、本発明はＲＦタグを読み取る機能のみの装置にも適用できる。なお、ＲＦタグに情報を書き込む際には、書き込む前の情報や書き込んだ情報を確認するために読み取り処理を行うことが多い。
【００２２】
（実施の形態１）
図１は、本発明の実施の形態１に係るＲＦタグ読み書きシステム全体の構成例を示すブロック図である。ＲＦタグ読み書きシステムは、ホストコンピュータ１と、リーダライタ２と、ＲＦタグ３と、仕様サーバ４とを備える。リーダライタ２は、コントローラ６と、アンテナユニット７とを備える。コントローラ６は、仕様ダウンロード部８と、コマンドインタプリタ９と、タグドライバインタプリタ１０とを備える。アンテナユニット７は、複数の周波数帯のＲＦタグ３Ａ、３Ｂ等に対応するアンテナモジュール７Ａ、７Ｂ等を備える。仕様サーバ４は、リーダライタ２がＲＦタグ３を検出して無線通信を行う手順を記載した多数のプログラムを有する。仕様サーバ４は、プログラム群５と、優先順位情報取得部１１とを備える。仕様サーバ４が有する多数のプログラムをプログラム群５という。なお、以下の説明で、プログラムの機能について特に言及しない場合には、ＲＦタグ３との無線通信を制御するプログラムのことを単にプログラムという。
【００２３】
ホストコンピュータ１は、ＲＦタグ３にデータを読み書きするアプリケーションプログラムによって動作し、ＲＦタグ読み書きシステム全体を制御する。ホストコンピュータ１は、ＷＡＮ（Wide Area Network）、ＬＡＮ（Local Area Network）、通信回線等のネットワークを介して、リーダライタ２にＲＦタグ３からデータを読み取り、ＲＦタグ３にデータを書き込む指示を出す。ホストコンピュータ１は、例えば、ＲＦタグ専用のコンピュータ、パソコン、携帯端末、携帯電話等のアプリケーションプログラムを実行でき、リーダライタ２とデータの送受信を行える情報処理装置もしくは、リーダライタ２を含む１つの情報処理装置であればよい。  
【００２４】
リーダライタ２は、ホストコンピュータ１の指示に基づき、仕様サーバ４から各種のＲＦタグ３に対応する無線通信を制御するプログラムを取得し、各種のＲＦタグ３からデータを読み取り、ＲＦタグ３にデータを書き込む。リーダライタ２は、コントローラ６と、アンテナユニット７とを備える。
【００２５】
図２は、実施の形態１に係るコントローラの構成例を示すブロック図である。コントローラ６は、リーダライタ２を制御する。コントローラ６は、仕様ダウンロード部８と、コマンドインタプリタ９と、タグドライバインタプリタ１０とを備える。コントローラ６は、ホストコンピュータ１からの指示により、仕様サーバ４から対象となるＲＦタグ３のプログラム２５をダウンロードして、アンテナユニット７を対象となるＲＦタグ３と無線通信を行える周波数のアンテナモジュールに切り替えて、ＲＦタグ３からデータを読み取り、ＲＦタグ３にデータを書き込む。
【００２６】
仕様ダウンロード部８は、仕様サーバ４からＲＦタグ３との無線通信を行う制御手順を記述したプログラム２５を受信して、記憶する。仕様ダウンロード部８は、ダウンロードテーブル２０と、プログラム群記憶部２１とを備える。ダウンロードテーブル２０は、仕様サーバ４が記憶しているプログラム群５から使用するプログラム２５を選択するための情報を保持する。プログラム群記憶部２１は、選択したプログラム２５を一括してダウンロードして記憶する。プログラム群記憶部２１が記憶するプログラム２５の数を５つとしているが、記憶するプログラム数は特に限定しない。
【００２７】
図３は、プログラムの構成の一例を示す。プログラム２５は、プログラム本体３１と、周波数帯種別３２と、優先順位３３とを備える。プログラム本体３１は、ＤＳＰ２３が実行する無線通信を行う制御手順を記載している。周波数帯種別３２は、プログラム本体３１を実行する際に使用するアンテナモジュール７Ａ、７Ｂ等の種類を識別する情報である。優先順位３３は、各プログラムを実行する順序を表す。優先順位３３は、０が高く（先に実行され）、値が大きくなるにつれて低く（実行順序があとに）なる。図４は、プログラム群記憶部２１が記憶しているプログラム群の構成の一例を示す。プログラム群４１は、プログラム２５の集合体である。各プログラム２５には、プログラム群４１内での優先順位を付している。
【００２８】
図５は、ダウンロードテーブルの構成の一例を示す。ダウンロードテーブル２０は、ダウンロード可能数５１と、対応周波数帯一覧５２とを有する。ダウンロード可能数５１は、プログラム群記憶部２１が記憶できるプログラム２５の個数情報であり、プログラム群記憶部２１のメモリ追加に応じて、更新可能である。ダウンロード可能数５１は、記憶容量（キロバイトなど）で表現されてもよい。対応周波数帯一覧５２は、アンテナユニット７が対応することができる周波数帯を一覧した情報であり、リーダライタ２が実行するプログラムの周波数帯の優先順位の情報も合わせて保持している。また対応周波数帯一覧５２の情報は、アンテナモジュール等の追加に応じて、更新可能である。
【００２９】
図２を参照する。コマンドインタプリタ９は、ホストコンピュータ１からの指示を解釈し、リーダライタ２の実行結果を応答する。コマンドインタプリタ９は、ホストコンピュータ１からの指示を解釈し、タグドライバインタプリタ１０、特にＤＳＰ２３に指示を伝える。また、コマンドインタプリタ９は、指示を解釈した内容からＲＦタグ３に書き込むデータを取り出して、ＤＳＰ２３へ伝える。また、コマンドインタプリタ９は、ＤＳＰ２３がＲＦタグ３から読み取った情報や、ＤＳＰ２３がＲＦタグ３と通信した実行結果等をホストコンピュータ１へ応答する。
【００３０】
タグドライバインタプリタ１０は、アンテナユニット７を制御して、使用するアンテナモジュールを切り替えて、アンテナを駆動する。タグドライバインタプリタ１０は、プログラムロードテーブル２２と、ＤＳＰ２３と、プログラムメモリ２４と、アンテナ切替部２８とを備える。タグドライバインタプリタ１０は、コマンドインタプリタ９の指示に従って、仕様ダウンロード部８に仕様サーバ４からプログラム２５をプログラム群記憶部２１へ一括してダウンロードする指示を出す。タグドライバインタプリタ１０は、プログラム群記憶部２１からプログラム２５をプログラムメモリ２４へロードする。また、タグドライバインタプリタ１０は、ＤＳＰ２３がプログラムメモリ２４に記憶しているプログラム２６の実行を終えた場合に、実行したプログラム２６を消去して、プログラム群記憶部２１から新たなプログラム２５をプログラムメモリ２４に記憶する。さらに、タグドライバインタプリタ１０は、ＲＦタグ３の検出に使用したプログラム２５の情報と検出結果の情報とを仕様サーバ４へ伝える。
【００３１】
プログラムロードテーブル２２は、タグドライバインタプリタ１０がプログラム群記憶部２１からプログラム２５をロードする順序を記憶する。図６は、プログラムロードテーブルの構成の一例を示す図である。プログラムロードテーブル２２は、リーダライタ２が実行するプログラムの周波数別の優先順位を記述した周波数帯優先順位６１を有する。タグドライバインタプリタ１０は、プログラム群記憶部２１からプログラムをロードする際に、周波数帯優先順位６１の情報に基づいて、実行するプログラムの優先順位を変更する場合がある。なお、周波数帯優先順位の内容は、固定する必要はなく、リーダライタ２の使用状況や機能拡張等により任意に変更することができる。
【００３２】
ＤＳＰ２３は、コマンドインタプリタ９の指示に従って、プログラムメモリ２４からプログラム２６をロードして、実行する。ＤＳＰ２３は、プログラム２６に従って、アンテナ切替部２８に使用するアンテナモジュールに切り替える指示を出し、アンテナユニット７を介して、ＲＦタグ３と通信して、ＲＦタグ３の情報を読み取り、ＲＦタグ３に情報を書き込む。ＤＳＰ２３は、ＲＦタグ３から読み取った情報やＲＦ３と通信した実行結果をコマンドインタプリタ９へ送り、リーダライタ２内の記憶装置へ履歴として記録する。
【００３３】
プログラムメモリ２４は、タグドライバインタプリタ１０がプログラム群記憶部２１からロードした複数のプログラム２５を記憶する。なお、タグドライバインタプリタ１０は、プログラムロードテーブル２２の周波数帯優先順位６１の情報を基に、ロードするプログラム２６の優先順位を変更してもよい。ＤＳＰ２３は、優先順位に従って、プログラムメモリ２４からプログラム２６を順番に読み出し実行する。なお、プログラムメモリ２４が記憶するプログラム２６の数を５つとしているが、記憶するプログラム数は特に限定しない。
【００３４】
アンテナ切替部２８は、ＤＳＰ２３が実行するプログラム２６に従って、アンテナユニット７を使用するアンテナモジュールに切り替える。また、アンテナユニット７の各アンテナモジュール７Ａ、７Ｂ等がＲＦタグ３Ａ，３Ｂ等と送受信する電波の信号をＤＳＰ２３に伝える。
【００３５】
アンテナユニット７は、各周波数帯のタグと無線通信を行うアンテナモジュール７Ａ、７Ｂ等と、信号変換機能の装置等とを備える。アンテナユニット７は、各周波数帯に対応するアンテナモジュール７Ａ、７Ｂ等を備える。アンテナモジュール７Ａ、７Ｂ等は、それぞれに決まった周波数帯、例えば１３．５６ＭＨｚ帯、９５３ＭＨｚ帯、２．４５ＧＨｚ帯、ＵＨＦ帯等の搬送波の周波数帯の電波を送受信する。また、アンテナユニット７は、発信回路と、フィルタ回路と、変調・復調回路と、符号化・復号回路と、Ａ−Ｄ変換器（Analog to Digital Converter）／Ｄ−Ａ変換器（Digital to Analog Converter）等の信号伝送に必要な変換機能を備える。アンテナユニット７は、ＲＦタグ３から受信する電波信号をＤＳＰ２３で処理するためにデジタル信号に変換し、ＤＳＰ２３で処理した信号を電波で伝送するためにアナログ信号に変換する。
【００３６】
仕様サーバ４は、プログラム群５と、優先順位情報取得部１１とを備える。仕様サーバ４が記憶するプログラム群５は、リーダライタ２が各種のＲＦタグ３と無線通信の制御を行う手順を記載した多数のプログラムである。仕様サーバ４は、仕様ダウンロード部８からの要求に基づいて、リーダライタ２が対応可能な周波数帯のプログラムを、優先順位が高い方から受け取り可能な数だけ一括して供給する。その際に優先順位情報取得部１１は、個々のリーダライタ２ごとに優先順位の情報を受け取り、プログラムをダウンロードする順番を変更してもよい。また、プログラム群５の優先順位自体を更新・変更してもよい。仕様サーバ４は、リーダライタ２とＷＡＮ、ＬＡＮ、通信回線等のネットワークを介してデータを送受信する。
【００３７】
仕様サーバ４は、記憶しているプログラムに優先順位を付し、優先順位を変更することができる。優先順位として、例えば、プログラムの中で使用確率が高い順、アンテナ切り替え時のオーバーヘッドの時間を短くするために周波数帯を連続させることを考慮した順としてもよい。また、時期や地域を考慮して、市場に出回っているＲＦタグ３の種類の変化に合わせて優先順位を変更してもよい。さらに、リーダライタ２に対応して、応答信号を受信できて通信可能なＲＦタグ３の種類を履歴として記憶しておき、優先順位を変更する際に考慮してもよい。なお、プログラムの優先順位は、実施の形態１では、複数の通信規格の異なる周波数帯域にまたがる順番を付し、実施の形態２では、各周波数帯域ごとに順番を付す。
【００３８】
図７Ａは、プログラムを全周波数にまたがる優先順位の順番に並び替えた場合を示す。図７Ａ（ａ）は、仕様サーバ４が、記憶しているプログラム群５の例であり、周波数帯種別と、優先順位の情報とを合わせて保持している。図７Ａ（ｂ）は、図７Ａ（ａ）からリーダライタ２が対応していない１２５ｋＨｚを除いた例である。図７Ａ（ｃ）は、図７Ａ（ｂ）のプログラム群５を優先順位が高い順に並べた場合の例である。
【００３９】
図７Ｂは、図７Ａ（ｃ）を基に、優先順位と周波数切替等のオーバーヘッド時間を考慮してプログラムの周波数帯が連続するよう優先順位を付け直して並び替えた場合を示す。図７Ｂでは、（ｄ）（ｅ）（ｆ）の順に、オーバーヘッドの時間が大きいことを想定して、元の優先順位よりも周波数帯の連続性を考慮して優先順位を決めている。アンテナ切替部２８は、送受信する周波数帯域が変わるごとにアンテナモジュールを切り替える。アンテナモジュールを切り替える回数は、図７Ａ（ｃ）では１０回、図７Ｂ（ｄ）では５回、図７Ｂ（ｅ）では４回、図７Ｂ（ｆ）では３回となる。
【００４０】
図８Ａは、使用履歴に基づきプログラムの優先順位を変更した場合を示す。図８Ａ（ａ）は、仕様サーバ４が記憶しているプログラム群５の例であり、周波数帯種別と、優先順位の情報を合わせて保持している。図８Ａ（ｂ）は、図８Ａ（ａ）の優先順位を更新した例である。優先順位を決定する方法として、リーダライタ２がある地域におけるＲＦタグ３の種別ごとの流通量、リーダライタ２がＲＦタグ３を検出する時点での流通量、リーダライタ２が検出できたＲＦタグ３の種類等の情報を考慮することなどが考えられる。優先順位には、読み取り装置群共通の優先順位と、読み取り装置ごとの優先順位の場合とがあり得る。図８Ａ（ｃ）は、図８Ａ（ｂ）からリーダライタ２が対応していない１２５ｋＨｚを除いた例である。
【００４１】
図８Ｂは、優先順位を更新した後に、周波数切替等のオーバーヘッド時間を考慮してプログラムの周波数帯が連続するよう優先順位を付け直して並び替えた場合を示す。図８Ｂ（ｄ）は、図８Ａ（ｃ）のプログラム群５を優先順位が高い順に並べた場合の例である。図８Ｂ（ｅ）（ｆ）は、図８Ｂ（ｄ）のプログラム群５の情報を基に、オーバーヘッドの時間を考慮して、周波数帯が連続するように並び替えて、優先順位を付した例である。図８（ｅ）（ｆ）の順に、オーバーヘッドの時間が大きいことを想定して、元の優先順位よりも周波数帯の連続性を考慮して優先順位を付け直している。アンテナモジュールを切り替える回数は、図８Ｂ（ｄ）では９回、図８Ｂ（ｅ）では６回、図８Ｂ（ｆ）では４回となる。実際には、例えば、アンテナモジュールの切替時間などのオーバーヘッドと、プログラム（ＲＦタグの規格）ごとのヒット率を考慮して、読み取り処理を開始してからＲＦタグ３を読み取るまでの時間の期待値が最小になるように優先順位を決定する。
【００４２】
図９は、ＲＦタグ読み書きシステムの動作の一例を示すフローチャートである。図１０は、プログラム群を実行する動作の一例を示すフローチャートであり、図９に記載のフローチャートのステップＳ７に該当する。タグドライバインタプリタ１０は、コマンドインタプリタ９からのタグ検出要求を受信した場合には、仕様ダウンロード部８に対してプログラム取得要求を送信する。仕様ダウンロード部８は、タグドライバインタプリタ１０からのプログラム取得要求を受信した場合には、仕様サーバ４に対してプログラム取得要求と、ダウンロードテーブル２０が保持しているダウンロード可能数５１と、対応周波数帯一覧５２とを送信する(ステップＳ１)。
【００４３】
仕様サーバ４は、プログラム群５を検索して、受信した対応周波数帯一覧５２に含まれる周波数帯種別３２に該当するプログラムを検出する（ステップＳ２）。仕様サーバ４は、プログラム群５を検索した結果から、対応周波数帯のプログラムが存在するかを判断する（ステップＳ３）。対応周波数のプログラムがない場合には（ステップＳ３；ＮＯ）、処理を終了する。
【００４４】
対応周波数帯のプログラムがある場合には（ステップＳ３；ＹＥＳ）、検索したプログラムを優先順位が高い順に並べ替える（ステップＳ４）。仕様サーバ４は、優先順位が高い方から順番にして、受信したダウンロード可能数５１の数で区切り、区切られたプログラムをまとめてプログラム群４１として、仕様ダウンロード部８に一括してダウンロードする（ステップＳ５）。ダウンロード可能数５１が記憶容量で表されている場合、プログラム群４１に含まれるプログラムのデータ容量の和が、それ以下で最大の数になるようにプログラム群４１に区切って、プログラム群４１ごとに一括してダウンロードする。
【００４５】
仕様ダウンロード部８は、一括してダウンロードしたプログラム群４１をプログラム群記憶部２１に記憶する（ステップＳ６）。タグドライバインタプリタ１０は、プログラム群記憶部２１に記憶しているプログラム２５をプログラムメモリ２４にロードして、ＲＦタグ３の検出を実施する（ステップＳ７）。なお、ステップＳ７は、図１０を使って詳細に後述する。タグドライバインタプリタ１０は、ＤＳＰ２３でプログラム２６を順次実行して、タグ検出に成功したかを判断する（ステップＳ８）。タグ検出に成功した場合には（ステップＳ８；ＹＥＳ）、タグ検出処理を終了する。
【００４６】
タグ検出に失敗した場合には（ステップＳ８；ＮＯ）、タグドライバインタプリタ１０は、仕様ダウンロード部８を介して次順位のプログラム群４１の有無を問い合わせる（ステップＳ９）。仕様サーバ４に次順位のプログラム群４１がない場合には（ステップＳ９；ＮＯ）、タグ未検出のままタグ検出処理を終了する。仕様サーバ４に次順位のプログラム群４１がある場合には（ステップＳ９；ＹＥＳ）、仕様サーバ４は、次順位のプログラム群４１を仕様ダウンロード部８に一括してダウンロードして、ステップＳ６以降の処理を繰り返す。
【００４７】
図１０は、無線制御プログラム群の動作の一例を示すフローチャートである。ＤＳＰ２３は、個々のリーダライタ２ごとの状況に合わせて、プログラム群記憶部２１のプログラム２５を優先順位の順に並び替える（ステップＳ１１）。その際に、ＤＳＰ２３は、プログラムロードテーブル２２の周波数帯優先順位６１を参照して優先順位を並べ替えてもよい。但し、仕様ダウンロード部８が仕様サーバ４からダウンロードする順序がリーダライタ２に適した優先順位になっている場合には、この処理をしなくてもよい。
【００４８】
ＤＳＰ２３は、プログラム２５を実行形式に変換して、プログラムメモリ２４にプログラム２６をロードする（ステップＳ１２）。ＤＳＰ２３は、実行するプログラム２６を順次ロードして、実行するプログラム２６の周波数帯種別３２と、アンテナユニット７に設定されている周波数帯種別とが不一致かを判断する（ステップＳ１３）。
【００４９】
不一致の場合には（ステップＳ１３；ＹＥＳ）、ＤＳＰ２３は、アンテナ切替部２８に指示を出して、アンテナユニット７のアンテナモジュール７Ａ、７Ｂ等を一致する周波数帯のアンテナモジュールに切り替える（ステップＳ１４）。周波数帯が一致する場合（ステップＳ１３；ＮＯ）、もしくはアンテナモジュールの切り替え処理（ステップＳ１４）を実施したのちに、ＤＳＰ２３は、プログラム２６を実行する（ステップＳ１５）。
【００５０】
ＤＳＰ２３は、プログラム２６を実行した結果、タグを検出に成功したかを判断する（ステップＳ１６）。タグ検出に失敗した場合には（ステップＳ１６；ＮＯ）、ＤＳＰ２３は、プログラムメモリ２４に未実行のプログラム２６があるかを判断する（ステップＳ１７）。未実行のプログラム２６がある場合には（ステップＳ１７；ＹＥＳ）、ステップＳ１３の処理に戻り、ＤＳＰ２３は、アンテナの切り替えが必要かを判断する。
【００５１】
タグ検出に成功した場合（ステップＳ１６；ＹＥＳ）、もしくは未実行のプログラム２６がない場合（ステップＳ１７；ＮＯ）には、ＤＳＰ２３は、アンテナモジュールの作動を停止させる設定を実施して（ステップＳ１８）、処理を終了する。
【００５２】
以上説明したように本実施の形態１に係るＲＦタグ読み書きシステムによれば、優先順位の高いプログラム２６から一括して送信して、順次タグ検出処理をする。プログラム２６を一括して送信することで、プログラムを送信する際の通信確立等の送信時間を削減できる。また、優先順位の高いプログラム２６から実行するので、ＲＦタグを読み取るまでの平均時間を短くできる。さらに、同じ周波数帯のプログラム２６を連続させることで、アンテナユニット７の切り替え回数を削減でき、アンテナ切替などのオーバーヘッド時間を加味した読み取り平均時間を短縮できる。従って、検出対象となるＲＦタグ３の種類が増えても、種類数の増加に応じてＲＦタグ３を検出する時間が比例的に長くなることを防止でき、ＲＦタグ読み書きシステム全体としてのＲＦタグ３を検出する時間を短くすることができる。
【００５３】
また、プログラム２６を実行する優先順位を、リーダライタ２がある地域におけるＲＦタグ３の種別ごとの流通量、リーダライタ２がＲＦタグ３を検出する時点での流通量、リーダライタ２が検出できたＲＦタグ３の種類等の情報を考慮するなどの方法で決めることにより、機動的にリーダライタ２がＲＦタグ３を検出する時間を短くできる。その際に、ＲＦタグ検出時間期待値（ＲＦタグの検出率と検出するまでの時間の積の総和）が最小になるように優先順位を決めてもよい。
【００５４】
さらに、リーダライタ２が実行できる周波数帯の情報を更新可能とすることで、アンテナユニット７に異なる周波数帯のアンテナモジュールを実装した場合にも対応することができるので、機能の拡張が容易である。
【００５５】
（実施の形態１の変形例）
実施の形態１の変形例は、仕様サーバ４に優先順位更新部２７を設け、リーダライタ２の実行結果を学習して優先順位を更新する機能を備える。その他の構成は、実施の形態１と同様である。図１１は、実施の形態１の変形例の構成の一例を示す。
【００５６】
優先順位更新部２７は、リーダライタ２がＲＦタグ３の検出に成功したプログラムの情報を受信して、その成功したプログラムの優先順位を高くする。個別のリーダライタ２の情報に基づいて更新して、個々のリーダライタ２ごとに優先順位が異なるようにプログラム群５を決めてもよい。また、ある地域や業種や家庭環境等リーダライタ２を設置しているグループごとに情報を集計して、プログラム群５の優先順位を更新してもよい。さらに、個々のリーダライタ２がダウンロードする際に、優先順位情報取得部１１が取得する個々のリーダライタ２ごとの優先順位の情報も考慮して、個々のリーダライタ２ごとに対応した優先順位の情報を更新・変更してもよい。
【００５７】
図１２は、優先順位変更処理を含むＲＦタグ読み書きシステムの動作の一例を示すフローチャートである。図９のフローチャートに、優先順位更新（ステップＳ２１）の処理を追加した部分が異なる。
【００５８】
図１３は、優先順位更新処理の動作の一例を示すフローチャートである。優先順位更新部２７は、リーダライタ２からＲＦタグ３の検出に成功したプログラムの情報を受信する（ステップＳ３１）。優先順位更新部２７は、プログラム群５から受信情報の検出に成功したプログラムを検索して優先順位を確認する。検出成功プログラムの優先順位の値が０（最上位）と等しいかを判断する（ステップＳ３２）。優先順位が０より大きい場合には（ステップＳ３２；＞０）、検出成功プログラムの優先順位を上げる（ステップＳ３３）。すなわち、優先順位更新部２７は、検出成功プログラムの優先順位を１減算する。
【００５９】
優先順位が０（最上位）の場合（ステップＳ３２；＝０）、又は検出成功プログラムの優先順位を上げる処理（ステップＳ３３）をしたのちに、優先順位更新部２７は、プログラム群５内に検出成功プログラムの新しい優先順位と同じ優先順位のプログラムがあるかを判断する（ステップＳ３４）。同じ優先順位のプログラムがない場合には（ステップＳ３４；無）、処理を終了する。同じ優先順位のプログラムがある場合には（ステップＳ３４；有）、優先順位更新部２７は、同じ優先順位のプログラムの優先順位を下げる（ステップＳ３５）。すなわち、優先順位更新部２７は、優先順位を下げるプログラムの優先順位に１を加える。
【００６０】
以上説明したように本実施の形態１の変形例に係るＲＦタグ読み書きシステムによれば、リーダライタ２の使用状況に対応して即座に優先順位を変更することができ、タグ検出時間を短くすることができる。また、上記説明では、リーダライタ２と仕様サーバ４とが１対１で対応する場合について説明したが、リーダライタ２を設置するグループごとの情報を集計して優先順位を決めてもよい。
【００６１】
実施の形態１の変形例では、ＲＦタグ３の検出に成功したプログラムの優先順位を上げる方法の一例について説明したが、リーダライタ２を使用する時間帯や、ＲＦタグ３を検出するまでの時間等も考慮して優先順位を更新してもよい。また、仕様サーバ４は、個々のリーダライタ２がＲＦタグ３を読み取った結果のみならず、他のリーダライタ２の読み取り結果を集計したり、ＲＦタグ３を付した商品の販売数量等の流通量等も考慮して優先順位を更新してもよい。さらにまた、検出率が変化するのに合わせて、ＲＦタグ検出時間期待値が最小になるように優先順位を更新してもよい。
【００６２】
なお、優先順位の情報をリーダライタ２が保持して、仕様サーバ４にプログラムを要求するときに、優先順位の情報を仕様サーバ４に送信する構成とすることもできる。すなわち、対応周波数帯一覧５２に代えて、または対応周波数帯一覧５２に加えて、優先順位の情報を仕様サーバ４に送信する。その場合、仕様サーバ４は、優先順位情報取得部１１でリーダライタ２から優先順位の情報を取得し、その順序に合わせてプログラム群４１を選択して、ダウンロード可能数５１ずつ一括してダウンロードする。
【００６３】
（実施の形態２）
実施の形態２は、周波数帯ごとに優先順位を割り振ったプログラム２６を用いてＲＦタグ３を検出する場合である。実施の形態２では、周波数帯ごとに優先順位を割り振ることで、実施の形態１と同じ構成の場合には、リーダライタ２で周波数帯ごとの優先順位を変更することができる。また、１つのＲＦタグ３に対して同時に複数の周波数帯で無線通信を行いＲＦタグ３を検出する構成の場合には、周波数帯ごとに最も効率よい順序でＲＦタグ３の検出処理を行える。
【００６４】
実施の形態２の構成は、実施の形態１と同様の構成とすることができる。また、ＤＳＰ２３等を複数備え、アンテナモジュールを複数同時に使用して同時に複数の周波数帯で無線通信できる構成とすることもできる。図１４は、複数周波数帯同時実行可能なタグドライバインタプリタ１０の構成の一例を示す図である。図１４のタグドライバインタプリタ１０は、実施の形態１と異なり、ＤＳＰ２３Ａ、２３Ｂ、２３Ｃを備えている。図１４のタグドライバインタプリタ１０は、異なる周波数帯のアンテナモジュールに接続して独立に動作する複数のＤＳＰを備えているので、１つのＲＦタグ３に対して同時に３つの周波数帯で無線通信を行いＲＦタグ３を検出することができる。
【００６５】
図１５は、仕様サーバでプログラムを選択した場合の一例を示す図表である。図１５（ａ）の例では、周波数帯ごとに０から最大５までの優先順位がつけられている。プログラム群５は、１５個のプログラムを記憶しており、各々のプログラムは１２５ｋＨｚ、１３ＭＨｚ、９５３ＭＨｚ、２．４ＧＨｚの４種類の周波数帯種別と、周波数帯ごとの優先順位の情報を有する。
【００６６】
実施の形態２は、実施の形態１とはリーダライタ２の構成もしくはプログラムの優先順位を付与する方法が異なるが、基本的には、図９のＲＦタグ読み書きシステムの動作及び図１０の無線制御プログラム群の動作と同様の処理を行うので、これらを参照して説明する。なお、実施の形態１と重複する部分は簡略に説明する。
【００６７】
タグドライバインタプリタ１０は、仕様ダウンロード部８に対してプログラム取得要求を送信する。仕様ダウンロード部８は、仕様サーバ４に対してプログラム取得要求と、ダウンロード可能数５１と、対応周波数帯一覧５２とを送信する(ステップＳ１)。仕様サーバ４は、プログラム群５を検索して、対応周波数帯一覧５２と、周波数帯種別３２とが一致するプログラムを検出する（ステップＳ２）。例えば、図１５の例では、仕様サーバ４が記憶している１５個のプログラムを検索して、非対応の１２５ｋＨｚを除き、１３個のプログラムを検出する。
【００６８】
仕様サーバ４は、プログラム群５の検索から、対応周波数帯のプログラムが存在するかを判断する（ステップＳ３）。対応周波数のプログラムがない場合には（ステップＳ３；ＮＯ）、処理を終了する。対応周波数帯のプログラムがある場合には（ステップＳ３；ＹＥＳ）、検索したプログラムを優先順位が高い順に並べ替える（ステップＳ４）。例えば、図１５（ｂ）は、リーダライタ２が使用可能なプログラムを優先順位が高い順に並べた場合の一例を示す図表である。図１５（ｂ）は、ステップＳ２で選んだ１３個のプログラムを優先順位が高い方から並べている。
【００６９】
仕様サーバ４は、優先順位が高い方から順番にして、所定の数ごとに区切ってまとめたプログラム群４１を、仕様ダウンロード部８に一括してダウンロードする（ステップＳ５）。図１５（ｃ）は、リーダライタ２が使用可能なプログラム群を優先順位が高い方からまとめて一括してダウンロードする場合の一例を示す図表である。図１５（ｃ）は、図１５（ｂ）のプログラム群を優先順位が高い方から５個づつまとめて一括してダウンロードする場合の例である。仕様ダウンロード部８は、一括してダウンロードしたプログラム群４１をプログラム群記憶部２１に記憶する（ステップＳ６）。タグドライバインタプリタ１０は、プログラム群記憶部２１に記憶しているプログラム２５をプログラムメモリ２４にロードして、ＲＦタグ３の検出を実施する（ステップＳ７）。
【００７０】
ＤＳＰ２３は、プログラム群記憶部２１のプログラム２５を並び替える（ステップＳ１１）。図１６は、プログラムを１つの周波数帯ずつ順次実行する場合に、周波数が連続するようにプログラムを並べた場合の一例を示す図表である。図１６は、プログラムメモリ２４が記憶しているプログラム２６（図１５（ｃ））をプログラムロードテーブル２２の周波数帯優先順位６１に従って、周波数が連続するように並べている。
【００７１】
プログラム２６を１つの周波数帯ずつ順次実行するリーダライタ２の場合には、ステップＳ１２以降の処理は、実施の形態１の説明と同様なので、説明を省略する。
【００７２】
プログラム２６を１つの周波数帯ずつ順次実行するリーダライタ２では、リーダライタ２でプログラムの並べ替えをしない図１５（ｃ）の順序のままの場合には、アンテナモジュールの切り替えを１２回実施しなければならないが、並べ替えを実施する図１６の順序の場合には８回の実施で済み、ＲＦタグ３を検出する時間を短くできる。
【００７３】
プログラム２６を３つ同時並行して実行するリーダライタ２の場合には、ステップＳ１２以降の処理は、各ＤＳＰ２３Ａ、２３Ｂ、２３Ｃが各周波数帯別に同時並行して処理を行う。例えば、図１５（ｃ）の第１転送用のデータでは、ＤＳＰ２３Ａが２．４ＧＨｚのプログラム２６を実行し、ＤＳＰ２３Ｂが９５３ＭＨｚのプログラム２６を実行し、ＤＳＰ２３Ｃが１３ＭＨｚのプログラム２６を実施する。その他の処理は、実施の形態１の説明と同様なので、説明を省略する。
【００７４】
図１７は、プログラムを同時並行して実行するリーダライタ２の動作の一例を示す図表である。１つのＲＦタグ３を検出するために、各周波数帯ごとに無線を制御するプログラムを並行して実施することで、アンテナ切り替え等のオーバーヘッドの時間が不要となり、ＲＦタグ３を読み取る処理の時間を短くできる。そして、周波数帯ごとに優先順位の高い方からプログラムをダウンロードして、読み書き処理を並行して実行するので、読み取りまでの時間を大幅に短縮できる。
【００７５】
以上説明したように本実施の形態２に係るＲＦタグ読み書きシステムによれば、周波数帯ごとにプログラムの優先順位をつけるので、仕様サーバ４における優先順位の付与と更新が周波数帯ごとに簡単に行える。そして、複数のプログラムを周波数帯が連続するように並び替えて実行することによって、コントローラ６とアンテナユニット７とのアクセス回数を削減して、ＲＦタグ３を検出する時間を短くすることができる。
【００７６】
なお、実施の形態２のＲＦタグ読み書きシステムにおいても、仕様サーバ４から複数のプログラムを一括してダウンロードすることで、リーダライタ２と仕様サーバ４とのアクセス回数を削減して、ＲＦタグ３を検出する時間を短くできる。実施の形態１と同様、リーダライタ２が実行できる周波数帯の情報を更新可能とすることで、アンテナユニット７に異なる周波数帯のアンテナモジュールを実装した場合にも対応することができるので、機能の拡張が容易で、互換性を高くすることができる。
【００７７】
また、仕様サーバ４のみならず、リーダライタ２が実行するプログラムの順番を変更できるので、仕様サーバ４の負荷を減らし、個々のリーダライタ２ごとに最適化を図ることができる。
【００７８】
さらに、複数の周波数帯のプログラムを並行して実施できるリーダライタ２では、アンテナ切り替え処理が不要である上に、周波数帯ごとに優先順位の高い方からプログラムをダウンロードして、読み書き処理を並行して実行するので、読み取りまでの時間を大幅に短縮できる。
【００７９】
（実施の形態２の変形例）
さらに、実施の形態２も実施の形態１と同様に仕様サーバ４に優先順位更新部２７を設けて、適時プログラムの優先順位を変更する変形例が考えられる。実施の形態２の変形例は、優先順位を周波数帯ごとに付したプログラム群５とする以外は、実施の形態１の変形例と同様の仕様サーバ４と、同様のフローチャートで実現できる。
【００８０】
本実施の形態２の変形例に係るＲＦタグ読み書きシステムによれば、リーダライタ２の使用状況に対応して即座に周波数帯ごとの優先順位を変更することができ、タグ検出時間を短くすることができる。また、ＲＦタグ読み書きシステムは、リーダライタ２と仕様サーバ４とが１対１で対応する場合のみならず、リーダライタ２を設置するグループごとの情報を集計して優先順位を決めてもよい。
【００８１】
なお、実施の形態２の変形例では、実施の形態１の変形例と同様に、ＲＦタグ３の検出に成功したプログラムの優先順位を上げる方法以外に、リーダライタ２を使用する時間帯や、ＲＦタグ３を検出するまでの時間等も考慮して優先順位を更新してもよい。また、仕様サーバ４は、個々のリーダライタ２がＲＦタグ３を読み取った結果以外に、他のリーダライタ２の読み取り結果をも集計したり、ＲＦタグ３を付した商品の販売数量等の流通量等も考慮して優先順位を更新してもよい。
【００８２】
以上説明したように、リーダライタ２は、仕様サーバ４からＲＦタグ３との無線通信を行う制御手順を記述したプログラム２５を一括して受信し、記憶する仕様ダウンロード部８を備えて、仕様ダウンロード部８のプログラム群記憶部２１が記憶しているプログラム２５を実行してＲＦタグ３の読み取り処理を行う。プログラムを一括してダウンロードし、一括して取得することができるので、個々のプログラムをダウンロードするたびに通信網の確立等の処理を行う必要がなく、全体としてＲＦタグ３を読み取る時間を短くすることができる。
【００８３】
リーダライタ２が、読み取り処理を実行する順序を取得する優先順取得手段を備えることで、一括して受信したプログラムのなかから優先順位が高い順にプログラムを実行することができる。リーダライタ２が優先順位が高い方から順にプログラムを実行するので、全体としてＲＦタグ３を読み取る時間が短くなる。なお、優先順取得手段は、仕様サーバ４の優先順位情報取得部１１や優先順位更新部２７等が優先順位を付し、その順にリーダライタ２がダウンロードした場合には、ダウンロードした順番をそのままプログラムの優先順位とする場合がある。また、優先順取得手段は、プログラムロードテーブル２２の周波数帯優先順位６１の順番等に従って、ダウンロードしたプログラムを実行する順番を変更して優先順位とする場合がある。
【００８４】
リーダライタ２が実行するプログラムの優先順位は、複数の通信規格のうち同じ周波数帯の通信規格の読み取り処理プログラムが、少なくとも部分的に連続するように配置するのが好ましい。実行するプログラムの周波数帯が連続することにより、実行する周波数帯を変更することに伴うアンテナモジュールの切り替え処理等のオーバーヘッドの時間を削減することができる。
【００８５】
リーダライタ２がプログラムを実行してＲＦタグ３の応答信号を受信できた履歴を保存して、優先順位を変更する手段を備える構成とすることができる。リーダライタ２は、プログラムロードテーブル２２の周波数帯優先順位６１の順番を履歴に基づいて変更してもよい。また、リーダライタ２は、リーダライタ２ごとに実行するプログラムの優先順位の情報を保持しておき、履歴に基づき仕様サーバ４が保持するプログラムの優先順位を変更して、定期的もしくは、ダウンロードする際に更新した優先順位の情報を仕様サーバ４の優先順位情報取得部１１に送信してもよい。
【００８６】
履歴により順序を学習する別のＲＦタグ読み書きシステムとして、仕様サーバ４がリーダライタ２からＲＦタグ３検出の成否を受信して、履歴を作成・保存し、優先順位を変更するように構成することもできる。仕様サーバ４の優先順位更新部２７は、個々のリーダライタ２ごとの履歴に基づきプログラムの優先順位を更新してもよい。また、優先順位更新部２７は、リーダライタ２を設置する地域、リーダライタ２を使用する時間帯等の履歴情報を基に、所定の地域や時間帯の全てのリーダライタ２に共通する優先順位を付して、変更してもよい。
【００８７】
履歴により順序を学習するリーダライタ２によって、個別のリーダライタ２ごとの優先順位を更新する場合には、個別のリーダライタ２ごとにＲＦタグ３を検出する時間の期待値を短くすることができる。また、所定の地域や時間帯ごとに全てのリーダライタ２に共通する優先順位を付し・更新する場合には、所定の地域や時間帯の全体としてのリーダライタ２がＲＦタグ３を検出する時間の期待値を短くすることができる。
【００８８】
リーダライタ２が実行する順序を複数の通信規格の異なる周波数帯にまたがる１つの順序にすることによって、周波数帯の切り替え、使用頻度、検出成功の履歴、流通量等を考慮してプログラムを実行できるので、ＲＦタグ３を検出する時間を短くする。
【００８９】
リーダライタ２が実行する順序を複数の通信規格の周波数帯ごとに設定された順序にすることによって、周波数帯ごとに優先順位が高い順にプログラムを実行できる。特に、複数の周波数帯の電波を同時に使用してＲＦタグ３を検出できるリーダライタ２では、ＲＦタグ３を検出する時間を短くすることができる。
【００９０】
リーダライタ２の構成に読み取り処理を実行する順序を取得する優先順取得手段を備えることにより、該リーダライタ２ごとに優先順位の情報を保持することができる。個々のリーダライタ２ごとにプログラムを実行する優先順位を最適化することができるので、個々のリーダライタ２がＲＦタグ３を検出する時間を短くすることができる。
【００９１】
仕様サーバ４は、保持する複数のプログラム２５をリーダライタ２が受信可能な範囲で一括して送信する手段を備える。複数のプログラム２５を一括して送信することができるので、プログラム２５を１つ１つ送信する際に必要な通信網の確立等の処理を行う必要がなく、全体としてＲＦタグ３を読み取る時間を短くすることができる。
【００９２】
仕様サーバ４は、リーダライタ２がプログラムを実行する順序の優先順取得手段を備えることで、一括して送信するプログラムを優先順位が高い順に送信することができるので、全体としてＲＦタグ３を読み取るまでの時間を短くすることができる。
【００９３】
仕様サーバ４の優先順取得手段が個々のリーダライタ２ごとの優先順位の情報を取得することで、個々のリーダライタ２ごとに最適な優先順位を付し、プログラムを一括して送信することができる。個々のリーダライタ２ごとに優先順位が最適化しているので、リーダライタ２がＲＦタグ３を検出する時間を短くすることができる。
【００９４】
その他、本発明の好適な変形として、以下の構成が含まれる。
【００９５】
本発明の第１の観点に係るＲＲＦタグ読み取り装置について、
好ましくは、前記読み取り処理を実行する順序を取得する優先順取得手段を備え、
前記受信手段は、前記優先順取得手段で取得した実行する順序の早いものから順に、前記記憶手段に記憶できる数の前記読み取り処理プログラムを一括して受信し、
前記読み取り手段は、前記実行する順序に従って、順次読み取り処理を行う
ことを特徴とする。
【００９６】
好ましくは、前記読み取り処理を実行する順序は、前記複数の通信規格の読み取り処理プログラムのうち同じ周波数帯の通信規格の前記読み取り処理プログラムが、少なくとも部分的に連続するように配置されることを特徴とする。
【００９７】
好ましくは、前記読み取り手段が実行した読み取り処理で応答信号を受信できた履歴に基づいて、前記読み取り処理を実行する順序を決定する学習手段を備えることを特徴とする。
【００９８】
好ましくは、前記読み取り処理を実行する順序は、前記複数の通信規格の異なる周波数帯にまたがる１つの順序であることを特徴とする。
【００９９】
好ましくは、前記読み取り処理を実行する順序は、前記複数の通信規格の周波数帯ごとに設定された順序であることを特徴とする。
【０１００】
好ましくは、前記優先順取得手段は、前記読み取り装置に対応して設定された前記実行する順序を取得することを特徴とする。
【０１０１】
本発明の第２の観点に係るサーバについて、
好ましくは、前記ＲＦタグ読み取り装置が前記読み取り処理プログラムを実行する順序を取得する優先順取得手段を備え、
前記送信手段は、前記優先順取得手段で取得した実行する順序の早いものから順に、前記ＲＦタグ読み取り装置が記憶できる数の前記読み取り処理プログラムを一括して送信する
ことを特徴とする。
【０１０２】
好ましくは、前記優先順取得手段は、前記ＲＦタグ読み取り装置ごとに設定された実行する順序を取得することを特徴とする。
【０１０３】
その他、前記のハードウエア構成やフローチャートは一例であり、任意に変更及び修正が可能である。
【０１０４】
ホストコンピュータ１、仕様サーバ４、コントローラ６等から構成されるＲＦタグの読み書き処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。たとえば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読みとり可能な記録媒体（フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等）に格納して配布し、当該コンピュータプログラムをコンピュータにインストールすることにより、前記の処理を実行するＲＦタグ読み書きシステムを構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロード等することでＲＦタグ読み書きシステムを構成してもよい。
【０１０５】
また、ＲＦタグ読み書きシステムを、ＯＳ（オペレーティングシステム）とアプリケーションプログラムの分担、又はＯＳとアプリケーションプログラムとの協働により実現する場合等には、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
【０１０６】
また、搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板(BBS, Bulletin Board System)に前記コンピュータプログラムを掲示し、ネットワークを介して前記コンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、ＯＳの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。
【図面の簡単な説明】
【０１０７】
【図１】本発明の実施の形態１に係るＲＦタグ読み書きシステム全体の構成例を示すブロック図である。
【図２】実施の形態１に係るコントローラの構成例を示すブロック図である。
【図３】プログラムの構成の一例を示す図である。
【図４】プログラム群の構成の一例を示す図である。
【図５】ダウンロードテーブルの構成の一例を示す図である。
【図６】プログラムロードテーブルの構成の一例を示す図である。
【図７Ａ】プログラムを全周波数にまたがる優先順位の順番に並び替えた場合の一例を示す図表である。
【図７Ｂ】プログラムの周波数帯が連続するよう優先順位を付け直して並び替えた場合の一例の図表である。
【図８Ａ】使用履歴に基づきプログラムの優先順位を変更した場合の一例を示す図表である。
【図８Ｂ】使用履歴更新後に、プログラムの周波数帯が連続するよう優先順位を付け直して並び替えた場合の一例の図表である。
【図９】実施の形態１に係るＲＦタグ読み書きシステムの動作の一例を示すフローチャートである。
【図１０】実施の形態１に係るプログラム群を実行する動作の一例を示すフローチャートである。
【図１１】実施の形態１の変形例の構成の一例を示す図である。
【図１２】実施の形態１の変形例に係る優先順位変更処理を含むＲＦタグ読み書きシステムの動作の一例を示すフローチャートである。
【図１３】実施の形態１の変形例に係る優先順位更新処理の動作の一例を示すフローチャートである。
【図１４】複数周波数帯同時実行可能なタグドライバインタプリタの構成の一例を示す図である。
【図１５】仕様サーバでプログラムを選択した場合の一例を示す図表である。
【図１６】ＤＳＰでプログラムを並べ替えた場合の一例を示す図表である。
【図１７】プログラムを同時並行して実行するリーダライタの動作の一例を示す図表である。
【図１８】関連する技術のＲＦ通信システムの構成を示す図である。
【符号の説明】
【０１０８】
１    ホストコンピュータ
２    リーダライタ
３、３Ａ、３Ｂ  ＲＦタグ
４    仕様サーバ
５    プログラム群
６    コントローラ
７    アンテナユニット
７Ａ、７Ｂ  アンテナモジュール
８    仕様ダウンロード部
９    コマンドインタプリタ
１０    タグドライバインタプリタ
１１    優先順位情報取得部
２０    ダウンロードテーブル
２１    プログラム群記憶部
２２    プログラムロードテーブル
２３、２３Ａ、２３Ｂ、２３Ｃ  ＤＳＰ
２４    プログラムメモリ
２５、２６    プログラム
２７    優先順位更新部
２８    アンテナ切替部
３１    プログラム本体
３２    周波数帯種別
３３    優先順位
４１    プログラム群
５１    ダウンロード可能数
５２    対応周波数帯一覧
６１    周波数帯優先順位
【図１】
0005135547.tif 000002
【図２】
0005135547.tif 000003
【図３】
0005135547.tif 000004
【図４】
0005135547.tif 000005
【図５】
0005135547.tif 000006
【図６】
0005135547.tif 000007
【図７Ａ】
0005135547.tif 000008
【図７Ｂ】
0005135547.tif 000009
【図８Ａ】
0005135547.tif 000010
【図８Ｂ】
0005135547.tif 000011
【図９】
0005135547.tif 000012
【図１０】
0005135547.tif 000013
【図１１】
0005135547.tif 000014
【図１２】
0005135547.tif 000015
【図１３】
0005135547.tif 000016
【図１４】
0005135547.tif 000017
【図１５】
0005135547.tif 000018
【図１６】
0005135547.tif 000019
【図１７】
0005135547.tif 000020
【図１８】
0005135547.tif 000021