説明

RFID用リーダライタおよびRFID用リーダライタの交信制御方法

【課題】リーダライタを上位機器から独立して動作させて、交信領域におけるタグの動きを監視しながら各コマンドの送信タイミングを制御する。
【解決手段】交信領域100に入ったRFIDタグ10に、ID読出コマンドを複数回送信し、毎時のタグ10からの応答信号が示す識別コードが同一であることを確認しながら、毎時の応答信号の受信レベルの変化を検出する。ここで応答信号の受信レベルが連続して増加している状態を確認すると、リードコマンドを送信する(a2,b2)。この後は、再び、ID読出コマンドを複数回送信し、毎時の応答信号が示す識別コードが同一で、応答信号の受信レベルが連続して減少する状態を確認して、ライトコマンドを送信する(a3,b3)。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、半導体メモリを内蔵するRFID(Radio Frequency Identification)タグと非接触の交信を行って、当該RFIDタグに情報の読み出しや情報の書き込みを行う装置に関する。
【背景技術】
【0002】
RFID用の読み書き処理装置は、アンテナコイルを含む送受信回路とコンピュータによる制御部とを具備するもので、一般に「リーダライタ」と呼ばれる。従来のリーダライタには、送受信回路と制御部とが同じ筐体内に収容された一体型タイプのものや、制御部を含むコントローラとアンテナ部とに分離したタイプのものがある。
【0003】
いずれのタイプの装置も、一般に、制御部をパーソナルコンピュータやプログラマブル・ロジック・コントローラなどの上位機器に接続した状態で使用される。制御部は、上位機器からの指令に基づき、送受信回路の動作を制御しつつ、RFIDタグに所定のコマンドを送信する処理と、コマンドに対するRFIDタグからの応答信号を受信して応答内容を復号する処理と、復号されたデータを上位機器に送信する処理とを実行する。
【0004】
また、一般に、交信対象のRFIDタグ(以下、単に「タグ」という場合もある。)の内部メモリには固有の識別コードが登録されており、制御部は、交信領域に入ったタグに対する最初の交信で、識別コードや基本的なデータを読み取る処理を行った後に、読み取った識別コードにより交信対象を特定して、本格的な交信を開始する(特許文献1参照)。
【0005】
特許文献1には、交信処理が終了する前にタグが交信領域から出てしまった場合に対応するために、交信開始から所定の制限時間を経過しても交信に成功しなかった場合には、交信処理を打ち切って上位機器にNG信号を送信することが記載されている(段落0069〜0075,図4参照。)。さらに別の実施例として、交信に失敗したとき、再度、タグの識別コードを取得し、その識別コードが前回と異なるものであれば、そのタグに対する交信を打ち切って上位機器にNG信号を送信することが記載されている(段落0076〜0087、図5,6参照。)。
【0006】
【特許文献1】特開2003−187196号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
従来のリーダライタは、上位機器からの指示に応じてコマンドを送信し、交信結果を上位機器に出力する受け身型の装置である。このため、上位機器からのコマンドとRFIDタグが交信領域に入るタイミングとがずれて、タグに対するコマンド送信を適切なタイミングで行うのが困難になることがある。上記の特許文献1に記載された発明は、このようなコマンドの送信タイミングのずれにより交信に失敗した場合に、後続のタグとの交信に支障が生じないようにすることを課題とするが、コマンドの送信タイミングがずれないようにする、という技術思想は開示されていない。
【0008】
この発明は上記の点に着目し、リーダライタを上位機器から独立して動作させて、交信領域におけるタグの動きを監視しながら各コマンドの送信タイミングを制御することにより、タグの動きに合わせてコマンドを安定して送信できるようにすることを課題とする。
【課題を解決するための手段】
【0009】
この発明によるRFID用リーダライタは、交信領域内のRFIDタグから受信した信号のレベルを検出する受信レベル検出手段と、RFIDタグが交信領域に入ったことを検出し、この検出に応じて受信レベル検出手段により検出された受信信号のレベルの変化を追跡する処理を開始し、この受信レベルの変化が特定の条件を満足したことに応じて交信対象のRFIDタグに読み書き処理用のコマンドを送信する交信制御手段と、読み書き処理用のコマンドに対するRFIDタグからの応答信号を受信して、その受信内容を表す交信結果データを出力する受信結果出力手段とを、具備する。
【0010】
上記の構成によれば、交信領域に入ったRFIDタグから受信した信号の変化に基づき、このRFIDタグが特定の方向に動いているとき、または交信領域内に停止しているときに、読み書き処理に関するコマンドを送信することができる。
【0011】
上記のリーダライタの好ましい一態様では、RFIDタグにその内部メモリに格納されている識別コードの送信を指示するID読出コマンドを送信して、このコマンドに対する交信領域内のRFIDタグからの応答信号により識別コードを認識する識別コード認識手段を、さらに具備する。また、受信レベル検出手段は、ID読出コマンドに対してRFIDタグから送信された応答信号の受信レベルを検出する。また、交信制御手段は、識別コード認識手段にID読出コマンドの送信および識別コードを認識する処理を複数回実行させ、同一の識別コードを連続して所定回数認識し、かつこれらの認識の間に受信レベル検出手段により検出された受信レベルの変化が特定の条件を満足したとき、認識した識別コードにより交信対象のRFIDタグを特定して読み書き処理用のコマンドを送信する。
【0012】
上記の構成によれば、複数回のID読出コマンドに対する応答信号の内容および受信した信号のレベルの変化に基づき、交信対象のRFIDタグが特定の方向に動いているとき、または交信領域内に停止しているときに、読み書き処理に関するコマンドを送信することができる。
【0013】
上記のリーダライタの他の好ましい態様では、交信制御手段は、受信レベル検出手段により検出された受信レベルが増加する方向に変化する状態が所定時間続いたとき、読み書き処理に関する第1のコマンドを送信する第1コマンド送信手段と、受信レベル検出手段により検出された受信レベルが減少する方向に変化する状態が所定時間続いたとき、読み書き処理に関する第2のコマンドを送信する第2コマンド送信手段とを、具備する。
【0014】
上記の態様によれば、交信領域に入ったRFIDタグが、リーダライタのアンテナ部に近づいていくのに合わせて第1のコマンドを送信し、その後、RFIDタグがアンテナ部から遠ざかるのに合わせて第2のコマンドを送信することができる。
【0015】
他の好ましい態様にかかるリーダライタでは、交信制御手段は、受信レベル検出手段により検出された受信レベルが増加する方向に変化する状態が所定時間続いたき、読み書き処理に関する第1のコマンドを送信する第1コマンド送信手段と、受信レベル検出手段により検出された受信レベルの変化量が所定の基準値以下になる状態が所定時間続いたとき、読み書き処理に関する第2のコマンドを送信する第2コマンド送信手段と、受信レベル検出手段により検出された受信レベルが減少する方向に変化する状態が所定時間続いたとき、読み書き処理に関する第3のコマンドを送信する第3コマンド送信手段とを、具備する。
【0016】
上記の態様によれば、交信領域に入ったRFIDタグが、リーダライタのアンテナ部に近づいていくのに合わせて第1のコマンドを送信し、この後にRFIDタグが所定の場所に停止したときに第2のコマンドを送信し、さらにRFIDタグが再び移動を開始してアンテナ部から遠ざかっていくときに、第3のコマンドを送信することができる。
【0017】
さらに、他の好ましい態様のリーダライタでは、交信制御手段は、受信レベル検出手段により検出された受信レベルが減少する方向に変化する状態が所定時間続いたことに応じてコマンドの送信を行うとき、検出された毎時の受信レベルの変化量から所定時間経過後の受信レベルを推定するレベル推定手段と、推定した受信レベルが所定のしきい値を下回るとき、送信対象のコマンドの送信を中止する送信中止手段とを具備する。また交信結果出力手段は、上記のコマンドの送信が中止されたとき、その旨を示すエラー情報を出力する。
【0018】
受信レベルが減少する方向に変化していることを条件にコマンドを送信する場合には、コマンドの送信が終了する前にタグが交信領域から出る可能性に留意する必要がある。たとえば、書き換えを指示するコマンドを送信している間にタグが交信領域から離れてしまうと、情報が中途半端に書き換えられてしまい、元の情報を復元するなどの対応をとることが困難になるからである。
【0019】
この点につき上記の態様では、コマンドを送信する前に、所定時間経過後にタグから受信できる信号のレベルを推定し、このレベルがしきい値を下回る場合には、コマンドの送信を中止するので、交信が終了する前にタグが交信領域から出る可能性がある場合のコマンド送信を中止することができ、コマンドが中途半端に実行されるのを回避することができる。さらに、コマンドの送信が中止された旨を示すエラー情報を上位機器などに出力するので、ユーザは、コマンドが実行されなかったことを容易に認識することができる。
【0020】
さらに、他の好ましい態様のリーダライタは、交信制御手段が交信対象のRFIDタグに送信するコマンドを登録するためのコマンド登録手段を具備する。この態様によれば、あらかじめ、タグに送信すべきコマンドをコマンド登録手段に登録しておくことにより、上位機器を全く関与させずにタグとの交信を行うことが可能になる。
【0021】
つぎに、この発明によるRFID用リーダライタの交信制御方法は、以下の第1、第2、第3のステップを実行するものである。
第1ステップでは、RFIDタグにその内部メモリに格納されている識別コードの送信を指示するID読出コマンドを送信する処理と、このコマンドに対する交信領域内のRFIDタグからの応答信号により前記識別コードを認識する処理とによって、交信領域内に入った新規のRFIDタグを検出する。
【0022】
第2ステップでは、新規のRFIDタグの検出に応じて、ID読出コマンドの送信および識別コードを認識する処理をさらに複数回繰り返すとともに、毎時の識別コードの認識に用いた応答信号の受信レベルの変化を追跡し、前記第1ステップで認識した識別コードと同じコードを所定回数連続して認識し、かつこれらの認識に用いられた応答信号の受信レベルの変化が特定の条件を満足したことに応じて、認識した識別コードにより交信対象のRFIDタグを特定して読み書き処理用のコマンドを送信する。
第3ステップでは、読み書き処理用のコマンドに対するRFIDタグからの応答信号を受信して、その受信内容を表す交信結果データを出力する。
【0023】
上記の方法によれば、固有の識別コードが付与されたRFIDタグが交信領域に入ってから特定の方向に沿って動いているとき、または交信領域内に停止していることを判別して、読み書き処理に関するコマンドを送信することが可能になる。
【0024】
第2ステップについて、好ましい一態様では、ID読出コマンドの送信および識別コードの認識を繰り返し実行し、応答信号の受信レベルが増加する方向に変化している間に前記第1ステップで認識した識別コードと同じコードを所定回数連続して認識したことを条件として、読み書き処理に関する第1のコマンドを送信する。さらに、第1のコマンドの送信後に、再びID読出コマンドの送信および識別コードの認識を繰り返し実行し、応答信号の受信レベルが減少する方向に変化している間に第1ステップで認識した識別コードと同じコードを所定回数連続して認識したことを条件として、読み書き処理に関する第2のコマンドを送信する。
【0025】
他の好ましい態様では、ID読出コマンドの送信および識別コードの認識を繰り返し実行し、応答信号の受信レベルが増加する方向に変化している間に前記第1ステップで認識した識別コードと同じコードを所定回数連続して認識したことを条件として、読み書き処理に関する第1のコマンドを送信する。また、第1のコマンドの送信後に、再びID読出コマンドの送信および識別コードの認識を繰り返し実行し、応答信号の受信レベルの変化量が所定の基準値以下になる状態が維持されている間に第1ステップで認識した識別コードと同じコードを所定回数連続して認識したことを条件として、読み書き処理に関する第2のコマンドを送信する。さらに、第2のコマンドの送信後に、再びID読出コマンドの送信および識別コードの認識を繰り返し実行し、応答信号の受信レベルが減少する方向に変化している間に第1ステップで認識した識別コードと同じコードを所定回数連続して認識したことを条件として、読み書き処理に関する第3のコマンドを送信する。
【0026】
上記の各態様によれば、読み書き処理に関する複数種のコマンドを、それぞれ交信領域におけるRFIDタグの動きに応じて順に送信するので、上位機器からの指令がなくとも、各コマンドの送信タイミングを制御することが可能になる。
【発明の効果】
【0027】
上記構成のリーダライタによれば、交信領域に入ったRFIDタグから受信した信号のレベル変化に基づき、タグの動きを判別してコマンドを送信するタイミングを制御するので、タグの動きに合わせてコマンドを送信することが容易になり、交信の成功率を高めることができる。
【発明を実施するための最良の形態】
【0028】
図1は、この発明が適用されたRFID用のリーダライタ1の構成を示す。
このリーダライタ1は、電池を内蔵しないRFIDタグ10(図4に示す。)と交信して情報の読み書きを行わせるためのもので、アンテナコイル20を含むアンテナ部2と、コンピュータによる制御部7を具備する交信制御装置3とにより構成される。ただし、この構成は一例にすぎず、アンテナ部2と交信制御装置3とを一体にしてもよい。
【0029】
交信制御装置3には、制御部7のほかに、送信回路4、受信回路5、受信レベル検出回路6、設定用のスイッチ8、表示部9などが含まれる。
【0030】
送信回路4は、ドライブ回路41、変調回路42、乗算回路43、増幅回路45、増幅回路を挟む一対のZ変換回路44,46などにより構成される。受信回路5は、バンドパスフィルタ(BPF)回路51、検波回路52、ローパスフィルタ(LPF)回路53、増幅回路54、コンパレータ55などにより構成される。受信レベル検出回路6は、検波回路61およびA/D変換回路62により構成される。
【0031】
制御部7には、CPUおよびメモリのほか、キャリア信号となる高周波パルスを出力する発振回路や、図示しない上位機器と通信をするための通信用インターフェースが含まれる。
【0032】
上記構成において、制御部7は、キャリア信号を出力しながら、適宜、所定ビット数のコマンド信号を出力する。キャリア信号は、ドライブ回路により搬送波に変換された後に、Z変換回路44,46によるインピーダンスの整合処理や増幅回路45による増幅処理を経て、アンテナコイル20に供給され、電磁波として送出される。また変調回路42および乗算回路43がコマンド信号に基づき搬送波を振幅変調することによって、コマンド信号が搬送波に重畳される。
【0033】
上記の処理によりアンテナコイル20から電磁波が送出されると、この電磁波により交信領域内のRFIDタグ10に誘導起電力が生じ、タグ10側の制御部が起動する。この状態下でアンテナコイル20からコマンド信号が送信されると、タグ10側の制御部は、コマンド信号が表すコマンドを解読して指示された処理を実行した後に、所定の応答データを表す信号(応答信号)を生成し、リーダライタ1に返送する。
【0034】
受信回路5では、バンドパスフィルタ回路51によりノイズを除去した後に、検波回路52により応答信号を含む搬送波を抽出する。さらに、ローパスフィルタ回路53により搬送波からタグ10の応答信号を抽出し、これを増幅回路54で増幅した後に、コンパレータ55により矩形信号に変換する。制御部7は、コンパレータ55から入力された信号を用いてタグ10の応答内容を解読し、この解読データを含む交信結果データを上位機器に送信する。
【0035】
受信レベル検出回路6の検波回路61は、コンパレータ55に入力されるのと同一の応答信号の入力を受け、図2に示すように、応答信号の各ピークのレベル変化を表す包絡線信号を生成する。A/D変換回路62はこの包絡線信号をディジタル変換する。制御部7は、この変換により生じたディジタルデータを応答信号の受信レベルとして入力し、後記するコマンドの送信タイミングを判別する処理に使用する。
【0036】
この実施例のリーダライタ1は、上位機器からコマンドの送信指示を受けてタグ10との交信を行う従前の装置とは異なり、送信するコマンドの種類や送信のタイミングを自ら管理する機能を具備する。図3は、この機能の詳細な内容を示す。
【0037】
図3において、コマンド登録部70は制御部7内のメモリに設定されるものである。このコマンド登録部70には、タグ10に実行させるべき読み書き処理について、複数種のコマンドが登録されている。これらのコマンドは、あらかじめ上位機器で作成された後に、制御部に送信されて登録される。
【0038】
符号71〜74で示す各種処理部の実体は、当該処理部に応じたプログラムを実行するCPUである。
ID認識処理部72は、識別コードの送信を求めるコマンド(以下、「ID読出コマンド」という。)を交信対象を特定せずに送信し、このコマンドに対するタグ10の応答信号から識別コードを復号し、認識する。レベル変化検出部71は、ID読出コマンドに対する応答信号の信号レベルを受信レベル検出回路6から取り込んで、これらの信号のレベルの変化を検出する。
【0039】
交信制御部73は、コマンド登録部70に登録された各コマンドを、あらかじめ定められた順序で送信する。またいずれのコマンドの送信においても、ID認識処理部72に識別コードを取得する処理を繰り返し実行させながら、その間にレベル変化検出部71が検出した受信レベルの変化やID認識処理部72が認識した識別コードを取り込み、これらに基づき送信のタイミングを判別する。さらに交信制御部73は、登録された各コマンドをそれぞれ判別されたタイミングに従って送信する。また送信したコマンドに対するタグ10からの応答信号を受信すると、応答データを復号して認識し、その認識結果を交信結果出力部74に渡す。交信結果出力部74は、応答データの内容をタグ10毎にまとめた交信結果データを作成し、これを上位機器に送信する。
【0040】
以下、交信領域に入ったタグ10に、情報の読み出し命令(リードコマンド)を送信した後に情報の書き込み命令(ライトコマンド)を送信する場合を例に、上記のリーダライタ1により実行される交信処理の詳細を説明する。
【0041】
図4は、上記2種類のコマンドを、アンテナ部2の交信領域におけるタグ10の動きに応じて送信する具体例を、2例示す。
各例は、いずれもアンテナ部2およびタグ10の移動経路を上方から見たもので、タグ10に所定レベル以上の電力を発生させる強さの電磁波が届く範囲を点線で表している。 この図示によれば、アンテナ部2の正面に広がる領域100でタグ10との交信が可能になるほか、この領域100の両側にも、所定広さの交信可能領域101,102が形成される。いずれの領域100〜102も、高さ方向にも広がりを持つ3次元領域である。
【0042】
この実施例では、上記の領域100〜102のうち、アンテナ部2の正面に広がる領域100が交信領域となるようにタグ10の移動経路を定めて、交信処理を行うようにしている。なお、図中のCは、交信領域100の幅方向における中心位置を表す仮想直線である。
【0043】
図4(A)の例では、交信領域100の幅方向に沿ってタグ10を移動させながら、交信領域100に入ったタグ10をID読出コマンドにより認識し(a1)、交信領域100の端縁部から中央部に向かってタグ10が移動する間に、リードコマンドを送信する(a2)。さらに、タグ10が交信領域100の中心部を通過して反対側の端縁部に向かう間に、ライトコマンドを送信する(a3)。
【0044】
図4(B)の例では、交信領域100の中央部でタグ10を前後方向に沿って往復動させながら、交信領域100に入ったタグ10をID読出コマンドにより認識し(b1)、タグ10がアンテナ部2に近づいている間にリードコマンドを送信する(b2)。さらに、タグ10が後退を始めて交信領域100を抜けるまでの間にライトコマンドを送信する(b3)。
【0045】
図5は、上記のコマンドを送信する条件となるRFIDタグ10の動きを、リーダライタ1がタグ10から受信する応答信号の変化に置き換えて示す。各コマンドの送信とタグ10の動きとの関係は、図4(A)(B)の2例に限定されるものではなく、タグ10が交信領域外から交信領域内に入って再び交信領域外に移動する間に、タグ10から受信する信号のレベルに図5(1)(2)に示すような変化が生じる場合には、これらの変化に応じて各コマンドを送信することができる。
【0046】
図5(1)は、リードコマンドの送信条件に対応し、図5(2)は、ライトコマンドの送信条件に対応する。また、各図の右側の棒グラフは、複数回のID読出コマンドに対するタグ10からの応答信号の受信レベルの変化を示す。
【0047】
上記図5および前出の図2に示すように、応答信号には、振幅の異なる2種類の波形の信号が含まれている。このうちの振幅の大きな方の信号は、タグ10側で内部回路のインピーダンスを周期的に切り替えることにより生じたものである。この実施例では、振幅の大きな方の信号に対応するピークレベルを受信レベル検出回路6により検出した後、これらのピークレベルの平均値を算出し、これを応答信号の受信レベルとする。図5の各例の棒グラフは、この演算により算出された受信レベルの変化を表すものである。
【0048】
タグ10がアンテナ部2に次第に近づくように移動している間は、誘導起電力が次第に高まるので、タグ10のインピーダンスの変化に伴う信号の変化量も次第に増加する。よって図5(1)に示すように、応答信号の振幅は次第に大きくなり、これに伴い、受信レベルが連続的に増加するようになる。
【0049】
上記に対し、タグ10がアンテナ部2から次第に遠ざかるように移動している間は、誘導起電力が次第に弱くなるので、タグ10のインピーダンスの変化に伴う信号の変化量も次第に減少する。よって図5(2)に示すように、応答信号の振幅は次第に小さくなり、これに伴い、受信レベルが連続的に減少するようになる。
【0050】
上記の現象に着目して、この実施例では、タグ10にその内部メモリに格納されている識別コードの送信を指示するID読出コマンドを複数回送信し、毎時のコマンドに対する応答信号が同一の識別コードを表すものであることを確認しながら、これらの応答信号の受信レベルの変化の方向により、タグ10がアンテナ部2に近づいている状態とタグ10がアンテナ部2から遠ざかっている状態とを判別する。具体的には、まず図5(1)のような信号変化を判別したことに応じてリードコマンドを送信した後に、図5(2)のような信号変化を判別したことに応じてライトコマンドを送信する。
【0051】
図6および図7は、リーダライタ1が実行する交信処理の手順を示す。図4の(A)(B)に示した各事例および後記する図9の事例は、いずれもこの交信処理を行うことによって実現するものである。
【0052】
以下、図6,7の各ステップ符号を参照しながら説明する。まず、初期段階では、交信対象のタグ10が交信領域100に入って応答信号が得られるまで、ID読出コマンドを送信する処理を繰り返し実行する(ST1,2)。所定の時点でID読出コマンドに対するタグ10からの応答信号を受信すると(ST2の判定が「YES」)、受信回数nに初期値の0をセットする(ST3)。また、受信した応答信号から識別コードを認識し、作業用メモリ(RAM)に保存する(ST4)。
【0053】
つぎに、上記の応答信号の受信レベルPを算出する(ST5)。具体的には、当該応答信号につき受信レベル検出回路6により検出された複数のピークレベルの中から所定のしきい値を上回るものを抽出し、抽出された各値の平均値を算出する。
【0054】
この後は、再びID読出コマンドを送信し(n=0のときは、ST7,8をスキップしてST9を実行する。)、タグ10からの応答信号の受信に応じて識別コードを認識する(ST10,12)。ここで、認識した識別コードがメモリに保存しているものと同一であれば(ST13の判定が「YES」)、受信回数nをインクリメントして(ST14)、ST5に戻り、直近の応答信号の受信レベルPを算出する。この後は、受信レベルPnと1段階前の受信レベルPn−1との差を求め、その差の値を変化量Dとする(ST6〜7)。
【0055】
以下、nの値が所定の上限値Nに達するまで、ID読出コマンドを用いてタグ10の識別コードを認識する処理(ST9〜13)と、応答信号の受信レベルPおよびその変化量Dを求める処理(ST5〜7)を繰り返し実行する。ここでnが上限値Nに達すると(ST8の判定が「YES」)、毎時の変化量D(n=1,・・・N)を用いて、各応答信号の受信レベルの変化の方向を解析する(ST15)。
【0056】
上記の解析により、受信レベルが連続して増加していると判断した場合(ST16の判定が「YES」)には、毎時の受信レベルの中の最小値を特定し、その最小値を所定のしきい値Sと比較する(ST17)。ここで受信レベルの最小値がSより大きい場合(ST17の判定が「YES」)には、メモリに保存されている識別コードを含むリードコマンドを送信する(ST18)。さらに、このリードコマンドに対するタグ10からの応答信号を受けると(ST19の判定が「YES」)、ライトコマンドの送信に関する処理に移行する。
【0057】
ここまでに説明した処理を整理すると、交信対象のタグ10がはじめて交信領域100に入った時点を起点にID読出コマンドの送信を(N+1)回実行し、これらのコマンドに対し、毎回、同じ識別コードを表す応答信号を受信し、かつ応答信号の受信レベルが連続して増加していることが確認されたことを条件に、リードコマンドを送信することになる。
【0058】
なお、上記の処理によれば、タグ10が交信領域100に入った直後の交信が不安定な時期や、突発的なノイズが生じたときなどに、応答信号が一時的に得られない状態になる可能性があるが、この場合には、受信回数nをゼロリセットしてからID読出コマンドを再送信する(ST9、10,11)。したがって、この場合には、再び応答信号を受信できる状態になったときから、処理がやり直しされることになる。
【0059】
また、何らかの原因で、受信回数nがNに達する前に交信対象のタグ10が交信領域100から抜け、他のタグ10が交信領域100に入った場合には、ST13の判定が「NO」となり、エラー処理に進む。なお、この場合には、新たに交信領域100に入ったタグ10を対象に、ST3から処理を開始する。
【0060】
また、同一の識別コードを表す応答信号を(N+1)回受信した場合でも、応答信号の受信レベルが連続して増加していることが認められなかった場合(ST16の判定が「NO」)、最小の受信レベルがしきい値S以下であった場合(ST17の判定が「NO」)、ならびにリードコマンドの送信後にタグ10からの応答信号を得られなかった場合(ST19の判定が「NO」)にも、エラー処理を実行する。
【0061】
つぎに、リードコマンドに関する処理を終了してライトコマンドに関する処理に移行すると、受信回数nをゼロリセット(ST20)した後に、再び、ID読出コマンドを送信してタグ10からの応答信号を受信し、識別コードを認識する処理と、応答信号の受信レベルPおよびその変化量Dを算出する処理とを繰り返す(ST21〜29)。この場合にも、途中でタグ10からの応答信号が得られない状態になったとき(ST22の判定が「NO」)には、受信回数nをゼロリセットして、最初から処理をやり直す。
【0062】
また、ST21〜29のループの実行中に、保存されているのとは異なる識別コードを取得した場合(ST25の判定が「NO」)には、エラー処理に移行する。この場合にも先のST13の判定のときと同様に、新たに認識されたタグ10に対し、ST3から処理をやり直すことになる。
【0063】
ST21〜29のループによりリードコマンドの送信前に得たのと同一の識別コードを連続して(N+1)回取得すると(ST29の判定が「YES」)、毎時の変化量Dの変化の方向を解析する(ST30)。この解析処理により、応答信号の受信レベルが連続して減少していることを確認すると(ST31の判定が「YES」)、その中の最後の応答信号の受信レベルPおよび毎時の変化量Dを用いて、所定時間tが経過したときの受信レベルPminを推定する(ST32)。さらに、このPminの値をしきい値Sと比較し、Pminがしきい値Sより大きいければ(ST33の判定が「YES」)、メモリに保存されている識別コードを含むライトコマンドを送信する。
【0064】
なお、受信レベルの変化量Dの解析によって、毎時の受信レベルが連続して減少していると認められなかったとき(ST31の判定が「NO」)や、推定した受信レベルPminがしきい値S以下である場合(ST33の判定が「NO」)には、エラー処理を実行する。
【0065】
上記の説明を整理すると、リードコマンドの送信後には、再びID読出コマンドを送信しながら、タグ10の応答信号から識別コードを認識するとともに、毎時の応答信号の受信レベルの変化をチェックする。そして、リードコマンドの送信前に得たのと同一の識別コードを表す応答信号を連続して(N+1)回受信し、かつこれらの応答信号の受信レベルが次第に減少していることを条件として、ライトコマンドを送信する。
【0066】
ライトコマンドの送信後は、タグ10からの応答信号を受信し、その受信内容に先のリードコマンドによりタグ10から読み出した情報を組み合わせた交信結果データを作成する(ST36)。そして、交信結果データを上位機器に送信し(ST37)、処理を終了する。なお、ライトコマンドに対するタグ10からの応答信号を得られなかった場合(ST35の判定が「NO」の場合)には、エラー処理に移行する。
【0067】
つぎに、リードコマンドの送信前に最小の受信レベルをチェックするステップ(ST17)で使用されるしきい値Sは、タグ10との交信が可能な最低のレベルに所定の余裕度を加味した値に設定するのが望ましい。このようにすれば、交信領域内のタグ10がアンテナ部2に近づく方向に移動していても、受信信号の余裕度が小さいために交信に失敗するおそれがある場合には、リードコマンドが送信されずに、エラー処理が実行される。
【0068】
また、ライトコマンドの送信前に受信レベルを推定するステップ(ST32)においては、図8に示すように、受信レベルが減少する方向に変化した期間内の各受信レベルを時系列に並べて、これらの減少の度合を表す近似直線または近似曲線を求める。そして、最後の応答信号を受信した時点からライトコマンドの送信が終了するまでにかかる時間をtとして、上記の近似直線または近似曲線におけるt時間後の対応点の値Pminを算出する。さらにつぎのステップのST33では、算出されたPminをST17で用いたのと同様のしきい値Sと比較し、このしきい値SよりPminの方が大きいことを条件としてライトコマンドを送信する。このようにすれば、受信レベルが次第に減少する状態下でライトコマンドを送信しても、コマンドの送信が終了する前にタグ10との交信が不可能になるような状況下でコマンドが送信されるのを防止することができる。よって、タグ10の情報が中途半端に書き換えられるのを防止することができる。
【0069】
図6,7に示した交信処理によれば、RFIDタグ10が交信領域に入った直後から処理を開始して、以後、タグ10がアンテナ部2に近づいている状態とアンテナ部2から遠ざかっていく状態とを判別し、これらの判別に応じてリードコマンドおよびライトコマンドを送信することができる。
【0070】
つぎに、上記の交信処理に失敗したときのエラー処理について簡単に説明すると、この実施例では、交信対象のタグ10の識別コード(エラーの発生時点にメモリに保存されているもの)に、エラーの具体的内容を表すコード情報を対応づけた交信結果データを作成して、上位機器に送信するようにしている。したがって、リーダライタ1が交信の途中で上位機器との通信を行わなくとも、交信の対象となったすべてのタグ10の交信結果データを上位機器に送信することができる。また交信に失敗したタグ10については、その交信結果データに基づき、適切な処置をとることができる。
【0071】
図9は、入退室の管理に上記の交信処理を適用した例を示す。
この実施例では、カード型のRFIDタグ10Aをユーザが手持ちして、タグ10Aをアンテナ部2に近づけた後に遠ざけることにより、情報の読み書きを行うようにしている。具体的には、タグ10Aがアンテナ部2に近づく間に、リードコマンドによりユーザコードなどの情報をタグ10から読み取った後に、タグ10Aがアンテナ部2から遠ざかる間に現在時刻を取得して、この時刻データをライトコマンドによりタグ10Aに書き込む。さらに、図9には示していないが、タグ10との交信が終了すると、タグ10から読み出したユーザコードとタグ10に書き込んだ時刻データとを対応づけた交信結果データを作成し、これを上位機器に送信する。
【0072】
つぎに、図4および図9に示した事例では、いずれも、交信領域100内でのタグ10の停止を考慮していないが、タグ10を交信領域内で所定時間停止させる場合には、タグ10が停止位置まで移動する間にリードコマンドを送信し、その後に応答信号の受信レベルが一定の状態で維持されている間にライトコマンドを送信してもよい。
【0073】
また、タグ10に送信するコマンドはリードコマンドおよびライトコマンドの組み合わせに限定されるものではなく、たとえば、リードコマンドおよびライトコマンドの一方のみを送信してもよい。この場合には、タグ10が交信領域100の端縁部からアンテナ部2に近づいている間にコマンドを送信するのが望ましい。
【0074】
また、タグ10を交信領域内で停止させる場合には、応答信号の受信レベルの変化の状態に基づき、タグ10がアンテナ部2に近づいている状態、タグ10が停止している状態、およびタグ10がアンテナ部2から遠ざかっている状態を、それぞれ判別し、各状態においてそれぞれコマンドを送信してもよい。このような送信処理の一例を図10に示す。
【0075】
図10の実施例では、ライトプロテクトが設定されたタグ10を交信対象として、このタグ10を交信領域の幅方向に沿って移動させながら、以下の処理を実行する。
【0076】
まず交信領域100を入ったタグ10をID読出コマンドにより認識する(c1)。さらに、引き続きID読出コマンドを送信しながら、毎時の応答信号の受信レベルが連続して増加していることを判別し、ライトプロテクトの解除を指示するコマンドを送信する(c2)。
【0077】
つぎに、再びID読出コマンドを繰り返し送信しながら、毎時の応答信号の受信レベルが所定値以上であり、かつその変化量が所定のしきい値以下に維持されていることを判別し、ライトコマンドを送信する(c3)。この後は、再びID読出コマンドを繰り返し送信しながら、毎時の応答信号の受信レベルが連続して減少していることを判別し、ライトプロテクトを再設定するコマンドを送信する(c4)。
【0078】
なお、(c1)(c2)(c3)の各処理は、いうまでもなく、毎時のID読出コマンドに対して同一の識別コードを取得していることを前提とする。ただし、識別コードの取得回数を統一することは必須ではなく、コマンドによって取得回数が異なってもよい。
【0079】
上記の各実施例では、ID読出コマンドを送信する処理と、このコマンドに対するRFIDタグ10からの応答信号により識別コードを認識する処理とにより、交信領域100内に新規のタグ10が入ったことや、交信領域100におけるタグ10の動きを判別するようにしたが、交信領域100に複数のタグ10が同時に入る虞がなければ、これらの判別処理を別の方法により行ってもよい。たとえば、タグ10が起動したときに、タグ10からリーダライタ1に特定の形式による信号を自主的に送信するようにしておき、この信号により新規のタグ10を検出したリーダライタ1が、引き続き同様の形式の信号を繰り返し送信する旨を指示するコマンドを送信し、タグ10から送信される信号の受信レベルの変化を追跡してもよい。または、タグ10が交信領域100に入ったことを検出する場合のみID読出コマンドを使用し、以後は、タグから特定の形式の信号を繰り返し送信させるようにしてもよい。
【0080】
最後に、上記実施例のリーダライタ1では、あらかじめタグ10に送信するコマンドを登録しているが、適宜、上位機器によるコマンドの登録の変更処理を受け付けてもよい。また、コマンドを登録せずに、タグ10が交信領域100に入る前に、上位機器から複数のコマンドの送信を受け、これらのコマンドを用いて図6,7に示した交信処理を実行してもよい。
【図面の簡単な説明】
【0081】
【図1】RFID用リーダライタの構成例を示すブロック図である。
【図2】応答信号の受信レベルの検出方法を示す図である。
【図3】制御部に設定される機能を表す機能ブロック図である。
【図4】アンテナ部の交信領域におけるタグの動きに応じて2種類のコマンドを送信する具体例を示す図である。
【図5】リードコマンドおよびライトコマンドの送信条件に対応する受信信号の変化を示す図である。
【図6】交信処理の前半部を示すフローチャートである。
【図7】交信処理の後半部を示すフローチャートである。
【図8】応答信号の受信後の受信レベルを推定する方法を説明する図である。
【図9】図7,8の交信処理を適用した情報処理を説明する図である。
【図10】アンテナ部の交信領域におけるタグの動きに応じて3種類のコマンドを送信する具体例を示す図である。
【符号の説明】
【0082】
1 リーダライタ
2 アンテナ部
3 交信制御装置
4 送信回路
5 受信回路
6 受信レベル検出回路
7 制御部
10 RFIDタグ
70 コマンド登録部
71 レベル変化検出部
72 ID認識処理部
73 交信制御部
74 交信結果出力部
100 交信領域

【特許請求の範囲】
【請求項1】
RFIDタグと非接触交信を行って当該RFIDタグに情報の読み書きを行わせる装置であって、
交信領域内のRFIDタグから受信した信号のレベルを検出する受信レベル検出手段と、
RFIDタグが交信領域に入ったことを検出し、この検出に応じて前記受信レベル検出手段により検出された受信信号のレベルの変化を追跡する処理を開始し、この受信レベルの変化が特定の条件を満足したことに応じて交信対象のRFIDタグに読み書き処理用のコマンドを送信する交信制御手段と、
前記読み書き処理用のコマンドに対するRFIDタグからの応答信号を受信して、その受信内容を表す交信結果データを出力する交信結果出力手段とを、
具備するRFID用リーダライタ。
【請求項2】
請求項1に記載されたRFID用リーダライタにおいて、
前記RFIDタグにその内部メモリに格納されている識別コードの送信を指示するID読出コマンドを送信して、このコマンドに対する交信領域内のRFIDタグからの応答信号により前記識別コードを認識する識別コード認識手段を、さらに具備し、
前記受信レベル検出手段は、前記ID読出コマンドに対してRFIDタグから送信された応答信号の受信レベルを検出し、
前記交信制御手段は、前記識別コード認識手段にID読出コマンドの送信および識別コードを認識する処理を複数回実行させ、同一の識別コードを連続して所定回数認識し、かつこれらの認識の間に前記受信レベル検出手段により検出された受信レベルの変化が特定の条件を満足したとき、前記認識した識別コードにより交信対象のRFIDタグを特定して読み書き処理用のコマンドを送信するRFID用リーダライタ。
【請求項3】
前記交信制御手段は、
前記受信レベル検出手段により検出された受信レベルが増加する方向に変化する状態が所定時間続いたとき、読み書き処理に関する第1のコマンドを送信する第1コマンド送信手段と、
前記受信レベル検出手段により検出された受信レベルが減少する方向に変化する状態が所定時間続いたとき、読み書き処理に関する第2のコマンドを送信する第2コマンド送信手段とを、具備する、請求項1または2に記載されたRFID用リーダライタ。
【請求項4】
前記交信制御手段は、
前記受信レベル検出手段により検出された受信レベルが増加する方向に変化する状態が所定時間続いたとき、読み書き処理に関する第1のコマンドを送信する第1コマンド送信手段と、
前記受信レベル検出手段により検出された受信レベルの変化量が所定の基準値以下になる状態が所定時間続いたとき、読み書き処理に関する第2のコマンドを送信する第2コマンド送信手段と、
前記受信レベル検出手段により検出された受信レベルが減少する方向に変化する状態が所定時間続いたとき、読み書き処理に関する第3のコマンドを送信する第3コマンド送信手段とを、具備する、請求項1または2に記載されたRFID用リーダライタ。
【請求項5】
前記交信制御手段は、前記受信レベル検出手段により検出された受信レベルが減少する方向に変化する状態が所定時間続いたことに応じてコマンドの送信を行うとき、検出された毎時の受信レベルの変化量から所定時間経過後の受信レベルを推定するレベル推定手段と、推定した受信レベルが所定のしきい値を下回るとき、前記送信対象のコマンドの送信を中止する送信中止手段とを具備し、
前記交信結果出力手段は、前記コマンドの送信が中止されたとき、その旨を示すエラー情報を出力する、請求項3または4のいずれかに記載されたRFID用リーダライタ。
【請求項6】
前記交信制御手段が交信対象のRFIDタグに送信するコマンドを登録するためのコマンド登録手段を、さらに具備して成る請求項1〜5のいずれかに記載されたRFID用リーダライタ。
【請求項7】
RFIDタグと非接触交信を行って当該RFIDタグに情報の読み書きを行わせるRFID用リーダライタにおいて実行される交信制御方法であって、
RFIDタグにその内部メモリに格納されている識別コードの送信を指示するID読出コマンドを送信する処理と、このコマンドに対する交信領域内のRFIDタグからの応答信号により前記識別コードを認識する処理とによって、交信領域内に入った新規のRFIDタグを検出する第1ステップと、
前記新規のRFIDタグの検出に応じて、前記ID読出コマンドの送信および識別コードを認識する処理をさらに複数回繰り返すとともに、毎時の識別コードの認識に用いた応答信号の受信レベルの変化を追跡し、前記第1ステップで認識した識別コードと同じコードを所定回数連続して認識し、かつこれらの認識に用いられた応答信号の受信レベルの変化が特定の条件を満足したことに応じて、認識した識別コードにより交信対象のRFIDタグを特定して読み書き処理用のコマンドを送信する第2ステップと、
前記読み書き処理用のコマンドに対するRFIDタグからの応答信号を受信して、その受信内容を表す交信結果データを出力する第3ステップとを、実行する、
ことを特徴とするRFID用リーダライタの交信制御方法。
【請求項8】
前記第2ステップでは、
前記ID読出コマンドの送信および識別コードの認識を繰り返し実行し、応答信号の受信レベルが増加する方向に変化している間に前記第1ステップで認識した識別コードと同じコードを所定回数連続して認識したことを条件として、読み書き処理に関する第1のコマンドを送信し、
第1のコマンドの送信後に、再び前記ID読出コマンドの送信および識別コードの認識を繰り返し実行し、応答信号の受信レベルが減少する方向に変化している間に前記第1ステップで認識した識別コードと同じコードを所定回数連続して認識したことを条件として、読み書き処理に関する第2のコマンドを送信する、
請求項7に記載されたRFID用リーダライタの交信制御方法。
【請求項9】
前記第2ステップでは、
前記ID読出コマンドの送信および識別コードの認識を繰り返し実行し、応答信号の受信レベルが増加する方向に変化している間に前記第1ステップで認識した識別コードと同じコードを所定回数連続して認識したことを条件として、読み書き処理に関する第1のコマンドを送信し、
第1のコマンドの送信後に、再び前記ID読出コマンドの送信および識別コードの認識を繰り返し実行し、応答信号の受信レベルの変化量が所定の基準値以下になる状態が維持されている間に前記第1ステップで認識した識別コードと同じコードを所定回数連続して認識したことを条件として、読み書き処理に関する第2のコマンドを送信し、
第2のコマンドの送信後に、再び前記ID読出コマンドの送信および識別コードの認識を繰り返し実行し、応答信号の受信レベルが減少する方向に変化している間に前記第1ステップで認識した識別コードと同じコードを所定回数連続して認識したことを条件として、読み書き処理に関する第3のコマンドを送信する、
請求項7に記載されたRFID用リーダライタの交信制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2010−55254(P2010−55254A)
【公開日】平成22年3月11日(2010.3.11)
【国際特許分類】
【出願番号】特願2008−217891(P2008−217891)
【出願日】平成20年8月27日(2008.8.27)
【出願人】(000002945)オムロン株式会社 (3,542)
【Fターム(参考)】