(57)【特許請求の範囲】
【請求項１】
交信装置および上位機器を含むシステムであって、
前記交信装置は、
ＲＦタグと非接触で交信する交信部と、
前記上位機器との間でデータを遣り取りする通信部と、
前記交信部および前記通信部を制御する制御部とを備え、
前記制御部は、
前記交信部の近傍にある交信可能領域を一定間隔毎または不定間隔毎に通過するＲＦタグから前記交信部によって読み取られたデータが前回読み取られたデータとは異なるたびに、前記通信部によって前記上位機器と遣り取りされる第１のデータを当該読み取られたデータを含むように更新するとともに、
前記第１のデータが更新されたタイミングに対応付けて、前記通信部によって前記上位機器と遣り取りされる第２のデータをそれ以前の値とは異なる値に更新し、
前記上位機器は、前記第２のデータの値が更新されることに応答して、前記第１のデータを取得する、システム。
【請求項２】
前記制御部は、前記第２のデータの更新値として、第１の状態値と第２の状態値とを交互に設定する、請求項１に記載のシステム。
【請求項３】
前記制御部は、前記第１のデータが更新されたタイミングに対応付けて、前記第２のデータの値をインクリメントする、請求項１に記載のシステム。
【請求項４】
前記制御部は、同一のタイミングで、前記第１のデータおよび前記第２のデータを更新する、請求項１〜３のいずれか１項に記載のシステム。
【請求項５】
前記制御部は、前記第１のデータをさらに更新するまで、前記第２のデータを更新後の値に維持する、請求項１〜４のいずれか１項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＲＦ（Radio Frequency）タグと非接触で交信する交信装置およびその交信装置を含むシステムに関する。
【背景技術】
【０００２】
従来から、非接触でデータを遣り取りする近距離無線通信技術が各種の分野で利用されている。典型的には、ＲＦＩＤ（Radio Frequency IDentification）と称される近距離無線通信技術が普及している。一般的なＲＦＩＤを用いたシステムは、管理対象の物品またはその物品を支持もしくは収容する物体（パレット、コンテナなど）に取付けられたＲＦタグと、当該ＲＦタグとの間でデータを遣り取りする交信装置（以下、「リーダライタ」とも称す。）と、リーダライタを制御する上位機器とを含む（例えば、特開２０１４−１８３４３７号公報（特許文献１）など参照）。
【０００３】
生産現場や物流現場などでは、生産効率を高めるために、ＲＦＩＤシステムにおける処理の高速化などが要求されている。例えば、特開２０１０−２５０５８４号公報（特許文献２）は、リーダ／ライタ部とコントローラ（ＰＬＣ）との間でデータを遣り取りする構成として、シリアル通信接続ではなく、共有バスおよび共有メモリを採用したプログラマブル／ロジック＆ＲＦＩＤコントローラを開示する。なお、特許文献２に開示される構成において、コントローラは、上位機器に相当し得る。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１８３４３７号公報
【特許文献２】特開２０１０−２５０５８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した特許文献２に開示される構成においては、リーダ／ライタ部とコントローラとの間での同時並行処理を実現できるとされているが、リーダ／ライタ部においてＲＦＩＤ発行データが復号される毎に、ＲＦＩＤ発行データをＰＬＣ機能部へ送信する必要があり、遣り取りの手続きが複雑化する。
【０００６】
また、ＰＬＣ機能部がビジーであれば、ＲＦＩＤ発行データを送信できず、処理時間のロスが発生し得る。一方で、交信装置がＲＦタグと交信可能な領域（以下、「交信可能領域」とも称す。）に対象のＲＦタグが到来する時間間隔は、一定とは限らず、様々な外部要因によっても変動し得る。そのため、リーダ／ライタ部およびＰＬＣ機能部における処理タイミングなどを適切に調整し、リーダ／ライタ部からＰＬＣ機能部へＲＦＩＤ発行データが送信されるタイミングと、ＰＬＣ機能部がビジーである期間とが重ならないようにする必要がある。
【０００７】
以上のような背景から、交信装置と上位機器との間でのデータの遣り取りをより簡単にセットアップできる構成が要望されている。
【課題を解決するための手段】
【０００８】
本発明のある局面に従う交信装置は、ＲＦタグと非接触で交信する交信部と、上位機器との間でデータを遣り取りする通信部と、交信部および通信部を制御する制御部とを含む。制御部は、交信部の近傍にある交信可能領域を一定間隔毎または不定間隔毎に通過するＲＦタグから交信部によってデータが順次読み取られるたびに、通信部によって上位機器と遣り取りされる第１のデータを当該読み取られたデータを含むように更新するとともに、第１のデータが更新されたタイミングに対応付けて、通信部によって上位機器と遣り取りされる第２のデータをそれ以前の値とは異なる値に更新する。
【０００９】
好ましくは、制御部は、第２のデータの更新値として、第１の状態値と第２の状態値とを交互に設定する。
【００１０】
あるいは好ましくは、制御部は、第１のデータが更新されたタイミングに対応付けて、第２のデータの値をインクリメントする。
【００１１】
好ましくは、制御部は、同一のタイミングで、第１のデータおよび第２のデータを更新する。
【００１２】
好ましくは、制御部は、第１のデータをさらに更新するまで、第２のデータを更新後の値に維持する。
【００１３】
本発明の別の局面に従うシステムは、交信装置および上位機器を含む。交信装置は、ＲＦタグと非接触で交信する交信部と、上位機器との間でデータを遣り取りする通信部と、交信部および通信部を制御する制御部とを含む。制御部は、交信部の近傍にある交信可能領域を一定間隔毎または不定間隔毎に通過するＲＦタグから交信部によってデータが順次読み取られるたびに、通信部によって上位機器と遣り取りされる第１のデータを当該読み取られたデータを含むように更新するとともに、第１のデータが更新されたタイミングに対応付けて、通信部によって上位機器と遣り取りされる第２のデータをそれ以前の値とは異なる値に更新し、上位機器は、第２のデータの値が更新されることに応答して、第１のデータを取得する。
【発明の効果】
【００１４】
本実施の形態によれば、交信装置と上位機器との間でのデータの遣り取りをより簡単にセットアップできる。
【図面の簡単な説明】
【００１５】
【図１】本実施の形態のＲＦＩＤシステムの使用形態の一例を示す模式図である。
【図２】本実施の形態のリーダライタのハードウェア構成の一例を示すブロック図である。
【図３】本実施の形態の上位機器のハードウェア構成の一例を示すブロック図である。
【図４】本実施の形態のＲＦＩＤシステムが解決する課題を説明するためのタイムチャートである。
【図５】関連技術のハンドシェイク型のインターフェイスを説明するためのタイムチャートである。
【図６】関連技術のホールド型のインターフェイス（その１）を説明するためのタイムチャートである。
【図７】関連技術のホールド型のインターフェイス（その２）を説明するためのタイムチャートである。
【図８】本実施の形態のＲＦＩＤシステムにおけるリーダライタ（交信装置）と上位機器との間のインターフェイスを説明するためのタイムチャートである。
【図９】本実施の形態のリーダライタにおいて実行される処理手順を示すフローチャートである。
【図１０】本実施の形態の上位機器において実行されるプログラムの一例を示すラダー図である。
【図１１】本実施の形態の第１の変形例におけるリーダライタ（交信装置）と上位機器との間のインターフェイスを説明するためのタイムチャートである。
【図１２】本実施の形態の第２の変形例におけるリーダライタ（交信装置）と上位機器との間のインターフェイスを説明するためのタイムチャートである。
【発明を実施するための形態】
【００１６】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
【００１７】
以下では、近距離無線通信を行なう交信装置を含むシステムの典型例として、ＲＦＩＤシステムについて説明する。一般的なＲＦＩＤシステムにおいて、交信装置は、その機能に着目して「リーダライタ」と称されることが多いので、以下の説明においても、交信装置を「リーダライタ」と称する。但し、交信装置において、ＲＦ（Radio Frequency）タグからデータを読み出す機能（リーダ機能）、および、ＲＦタグへデータを書き込む機能（ライタ機能）の両方が備わっていることは必須ではなく、一方の機能のみが備わっているものであってもよい。
【００１８】
ＲＦタグは、ＩＣ（Integrated Circuit）タグやＲＦＩＤタグと称されることもあるが、説明の便宜上、以下では「ＲＦタグ」という用語を用いる。
【００１９】
近距離無線通信の典型例として、ＲＦＩＤについて説明するが、これに限定されるものではなく、例えば、将来的にＲＦＩＤの技術をベースとして改良された新たな方式などであっても、本件発明の技術的範囲に包含され得る。
【００２０】
＜Ａ．ＲＦＩＤシステムの概要＞
図１は、本実施の形態のＲＦＩＤシステムの使用形態の一例を示す模式図である。図１には、パレット４の上に配置されたワーク６がベルトコンベア２によって順次搬送される搬送ラインに向けられたＲＦＩＤシステム１を示す。より具体的には、先行のパレット４＿１の上にはワーク６＿１が配置されており、それに引き続くパレット４＿２の上にはワーク６＿２が配置されている。パレット４＿１および４＿２には、それぞれＲＦタグ８＿１および８＿２が装着されている。
【００２１】
ベルトコンベア２の周囲には、リーダライタ１０が配置されている。リーダライタ１０がＲＦタグ８と交信可能な領域（以下、「交信可能領域ＡＲ」とも称す。）内にパレット４が入ると、リーダライタ１０とＲＦタグ８との間で交信が開始される。すなわち、ＲＦＩＤシステム１は、リーダライタ１０とＲＦタグ８とが繰り返し交信するアプリケーションに向けられるものであり、ＲＦタグ８をリーダライタ１０の近傍を順次通過させることで交信処理が繰り返される。リーダライタ１０は、ＲＦタグ８が交信可能領域ＡＲ内に入ることで交信を開始し、交信によって取得された結果（以下、「交信結果」とも称す。）を上位機器へ順次応答する。なお、「交信結果」としては、ＲＦタグ８から読み取られたデータそのものに加えて各種の付加情報（例えば、読み取り時の状態を示す状態値など）が付加されてもよいし、ＲＦタグ８からのデータ読み取りが失敗した場合には、そのデータ読み取りが失敗したことを示す情報のみを「交信結果」としてもよい。
【００２２】
上位機器は、リーダライタ１０から交信結果を受信する機能を有するものであればどのような装置であってもよいが、典型的には、各種のコントローラやパーソナルコンピュータなどが想定される。
【００２３】
本実施の形態のリーダライタ１０、ならびに、リーダライタ１０および上位機器を含むＲＦＩＤシステム１は、少なくとも、リーダライタ１０がＲＦタグ８と繰り返し交信して、その交信結果を上位機器へ順次応答するための、通信インターフェイスに新規な構成を有している。その新規な通信インターフェイスの構成について、以下詳述する。
【００２４】
＜Ｂ．リーダライタ１０のハードウェア構成＞
まず、リーダライタ１０のハードウェア構成について説明する。リーダライタ１０は、主として、ＲＦタグ８と交信する機能、および、ＲＦタグ８との交信によって取得された交信結果を上位機器へ応答する機能とを含む。
【００２５】
図２は、本実施の形態のリーダライタ１０のハードウェア構成の一例を示すブロック図である。図２を参照して、リーダライタ１０は、制御部１００を含む交信制御部１２と、アンテナコイル１４０を含むアンテナ部２０とからなる。なお、図２には、アンテナ部２０が交信制御部１２と別体になっている構成例を示すが、これらを一体化してもよい。
【００２６】
交信制御部１２は、制御部１００に加えて、送信部１４と、受信部１６と、受信レベル検出部１８と、通信インターフェイス（Ｉ／Ｆ）１０２と、記憶部１０４、計時部１０６と、表示部１０８と、発振回路１３６とを含む。
【００２７】
制御部１００は、リーダライタ１０での各種処理を制御する演算処理部であり、典型的には、ＣＰＵ（Central Processing Unit）等のプロセッサがプログラムを実行することで実現される。あるいは、その全部または一部をＡＳＩＣ（Application Specific Integrated Circuit）といったハードウェアを用いて実現してもよい。
【００２８】
通信インターフェイス１０２は、上位機器３０との間でデータを遣り取りする通信部に相当する。ＲＦＩＤシステム１においては、少なくとも、リーダライタ１０から上位機器３０へデータを応答できればよい。そのため、通信インターフェイス１０２としては、イーサネット（登録商標）、シリアル通信、ＵＳＢ（Universal Serial Bus）通信、パラレル通信、各種フィールドバスといった任意の通信手段を採用することができる。
【００２９】
記憶部１０４は、制御部１００で実行される各種プログラムや、ＲＦタグ８から取得された交信結果などを格納する。計時部１０６は、クロックまたはタイマであり、制御部１００に対して計時データを出力する。表示部１０８は、制御部１００からの指示に従って各種情報を表示する。
【００３０】
発振回路１３６は、搬送波を生成するための基準のパルス信号を発生する。
送信部１４および受信部１６は、ＲＦタグ８と非接触で交信する交信部に相当する。すなわち、送信部１４は、ＲＦタグ８からデータを読み取るために電磁波を生成し、受信部１６は、ＲＦタグ８からの応答信号をデコードしてそのデコード結果を出力する。
【００３１】
より具体的には、送信部１４は、主たる構成要素として、ドライブ回路１１０と、変調回路１１２と、乗算回路１１４と、増幅回路１１８と、増幅回路１１８を挟む一対のＺ変換回路１１６，１２０とを含む。また、受信部１６は、主たる構成要素として、バンドパスフィルタ（ＢＰＦ）１２２と、検波回路１２４と、ローパスフィルタ（ＬＰＦ）１２６と、増幅回路１２８と、コンパレータ１３０とを含む。
【００３２】
受信レベル検出部１８は、ＲＦタグ８からの応答信号の受信レベルを検出する。受信レベル検出部１８は、主たる構成要素として、検波回路１３２とＡ／Ｄ（Analog to Digital）変換回路１３４とを含む。
【００３３】
リーダライタ１０とＲＦタグ８との間の交信処理を実現するための各部の動作について説明する。なお、制御部１００は、交信部に相当する送信部１４および受信部１６、ならびに、通信部に相当する通信インターフェイス１０２を制御する。
【００３４】
まず、制御部１００は、所定条件が満たされると、発振回路１３６からのパルス信号を用いて、搬送波の元となる高周波パルス（以下、「キャリア信号」とも称す。）の出力を開始する。ドライブ回路１１０は、キャリア信号を搬送波に変換する。ドライブ回路１１０から出力された搬送波は、Ｚ変換回路１１６，１２０によるインピーダンスの整合処理、および、増幅回路１１８による増幅処理を経て、アンテナコイル１４０に供給され、電磁波として送出される。
【００３５】
併せて、制御部１００は、所定ビット数のコマンド信号を出力する。コマンド信号は、ＲＦタグ８に対する指示であり、搬送波に重畳されてＲＦタグ８へ供給される。より具体的には、変調回路１１２および乗算回路１１４が制御部１００からのコマンド信号に従って搬送波を振幅変調することで、搬送波にコマンド信号が重畳される。
【００３６】
交信可能領域ＡＲ内にあるＲＦタグ８は、アンテナコイル１４０から送出された電磁波を受信することができる。ＲＦタグ８では、受信した電磁波により内部に誘導起電力が生じ、その誘導起電力によって内部の制御部（図示せず）が活性化する。この状態において、搬送波に重畳されたコマンド信号を受信すると、ＲＦタグ８の制御部は、その受信したコマンド信号をデコードし、デコードによって取得されたコマンドに従って処理を実行し、その処理結果を含む応答信号を生成し、最終的にリーダライタ１０へ応答する。
【００３７】
ＲＦタグ８からの応答信号は、アンテナコイル１４０によって受信されて、バンドパスフィルタ１２２に入力される。受信された応答信号は、バンドパスフィルタ１２２によってそれに含まれるノイズが除去される。検波回路１２４は、応答信号に含まれる搬送波を検波し、ローパスフィルタ１２６は、応答信号から搬送波成分を除去して、ＲＦタグ８からの応答信号を抽出する。ローパスフィルタ１２６によって抽出された応答信号は、増幅回路１２８による増幅処理、および、コンパレータ１３０による矩形化処理を経て、矩形信号として出力される。制御部１００は、コンパレータ１３０からの矩形信号をデコードしてＲＦタグ８からの応答内容を出力する。さらに、制御部１００は、デコードして取得された応答内容を含む交信結果を通信インターフェイス１０２へ出力する。
【００３８】
受信レベル検出部１８の検波回路１３２は、コンパレータ１３０に入力されるのと同一の応答信号の入力を受け、応答信号の各ピークのレベル変化を表す包絡線信号を生成する。Ａ／Ｄ変換回路１３４は、生成された包絡線信号をデジタル変換する。制御部１００は、デジタル変換の結果を応答信号の受信レベルとして受信する。
【００３９】
通信インターフェイス１０２は、制御部１００からの交信結果を上位機器３０へ応答する。この交信結果の上位機器３０への送信処理については、以下詳述する。
【００４０】
＜Ｃ．上位機器３０のハードウェア構成＞
次に、上位機器３０のハードウェア構成について説明する。上位機器３０の典型例として、以下の説明では、ＰＬＣ（Programmable Logic Controller）と称される制御装置を例にして説明する。
【００４１】
図３は、本実施の形態の上位機器３０のハードウェア構成の一例を示すブロック図である。図３を参照して、上位機器３０は、ＣＰＵ（Central Processing Unit）やＭＰＵ（Micro-Processing Unit）などのプロセッサ３０２と、チップセット３０４と、メインメモリ３０６と、フラッシュメモリ３０８と、通信インターフェイス３１６と、メモリカードインターフェイス３１８と、内部バスコントローラ３２２と、フィールドバスコントローラ３２４とを含む。
【００４２】
プロセッサ３０２は、フラッシュメモリ３０８に格納されたシステムプログラム３１０およびユーザプログラム３１２を読み出して、メインメモリ３０６に展開して実行することで、制御対象に対する制御を実現する。チップセット３０４は、各コンポーネントを制御することで、ＰＬＣ全体としての処理を実現する。
【００４３】
内部バスコントローラ３２２は、ＰＬＣと内部バスを通じて連結されるＩ／Ｏ（Input/Output）ユニット３２６とデータを遣り取りする。フィールドバスコントローラ３２４は、ＰＬＣとフィールドバスを通じて連結されるＩ／Ｏユニット３２８とデータを遣り取りする。通信インターフェイス３１６は、リーダライタ１０を含む各種の外部装置との間で、各種の有線／無線ネットワークを通じてデータを遣り取りする。メモリカードインターフェイス３１８は、メモリカード３２０を着脱可能に構成されており、メモリカード３２０に対してデータを書き込み、メモリカード３２０からデータを読み出すことが可能になっている。
【００４４】
プロセッサ３０２がプログラムを実行することで提供される機能の一部または全部を専用のハードウェア回路として実装してもよい。
【００４５】
＜Ｄ．関連技術およびその課題＞
次に、本実施の形態のＲＦＩＤシステム１が解決する課題について関連技術とともに説明する。図４は、本実施の形態のＲＦＩＤシステム１が解決する課題を説明するためのタイムチャートである。図４には、パレット４の上に配置されたワーク６がベルトコンベア２によって順次搬送される場合のタイムチャートを示す。
【００４６】
ＰＬＣのような上位機器３０がリーダライタ１０に対してリピート交信コマンドを送信することで、リーダライタ１０では、ＲＦタグ８との間で繰り返し交信を行なうようになる（（ａ）上位機器→リーダライタ、および、（ｃ）リーダライタを参照）。
【００４７】
リーダライタ１０は、交信可能領域ＡＲ内にあるＲＦタグ８との間で交信するので、リーダライタ１０の交信処理中では、ＲＦタグ８が交信可能領域ＡＲ内に入るまで待機しており（ＲＦタグ待ち）、ＲＦタグ８の交信可能領域ＡＲ内への到来をトリガーとして、対象のＲＦタグ８との間の実質的な交信処理が開始される（（ｄ）ＲＦタグの動きを参照）。そして、ＲＦタグ８との交信によって取得された交信結果は、リーダライタ１０から上位機器３０へ応答される（（ｂ）上位機器←リーダライタを参照）。
【００４８】
一般的に、リーダライタ１０の前を通過するＲＦタグ８の間隔は一定にはならない。そのため、リーダライタ１０から上位機器３０へ交信結果を応答するタイミングは、不定間隔となる。ＲＦタグ８との交信処理、および、交信結果の応答処理は、並列的に実行する必要があるが、いずれもある程度の時間を要するため、リーダライタ１０と上位機器３０との間の交信結果を遣り取りするタイミングの制御または調整が難しい。すなわち、先行のＲＦタグ８との交信処理が終了してから、次のＲＦタグ８との交信処理が開始されるまでの間に、先行のＲＦタグ８から取得した交信結果を上位機器３０へ確実に伝送する必要があるが、ＲＦタグ８の到来タイミングが不定間隔であるので、タイミングの制御または調整が困難になる。そのため、リーダライタ１０と上位機器３０との間でタイミングを制御する（同期をとる）ためのインターフェイスが必要となる。
【００４９】
このような、リーダライタ１０と上位機器３０との間の関連技術に従うインターフェイスについて説明する。リーダライタ１０と上位機器３０との間のインターフェイスとしては、典型的には、ハンドシェイク型およびホールド型が知られている。
【００５０】
ハンドシェイク型のインターフェイスは、リーダライタ１０が上位機器３０へ交信結果を送信し、上位機器３０は交信結果を受信すると、その受信完了を応答するという双方向の遣り取りである。一方、ホールド型のインターフェイスは、リーダライタ１０がＲＦタグ８との交信を繰り返すとともに、各交信によって取得された交信結果を一定期間にわたって保持（ホールド）するとともに、上位機器３０はその保持されている期間に交信結果を取得する。
【００５１】
（ｄ１：関連技術のインターフェイス（ハンドシェイク型））
図５は、関連技術のハンドシェイク型のインターフェイスを説明するためのタイムチャートである。図５に示すハンドシェイク型のインターフェイスでは、リーダライタ１０と上位機器３０との間の双方向のデータ送信が可能になっている。より具体的には、リーダライタ１０から上位機器３０に対しては、ＲＦタグ８から取得した交信結果が順次送信される（（ｂ）上位機器←リーダライタ（交信結果送信）を参照）とともに、上位機器３０からリーダライタ１０に対しては、送信された交信結果の受信が完了（成功）したことが通知される（（ｃ）上位機器→リーダライタ（受信応答））。すると、リーダライタ１０は、それに引き続くＲＦタグ８が交信可能領域ＡＲ内に入るまで待機することになる。すなわち、リーダライタ１０では、上位機器３０からの受信応答を受けてはじめて、引き続くＲＦタグ８との間の交信処理を行なうことができる。
【００５２】
このような、リーダライタ１０と上位機器３０との間で、交信結果および交信結果の受信完了が交互に遣り取りされることで、リーダライタ１０から上位機器３０への交信結果の伝送を確実に行なうことができる。
【００５３】
一方で、ハンドシェイク型のインターフェイスには、以下のような課題が存在し得る。
すなわち、上位機器３０においてハンドシェイクの処理を実装する必要があり、上位機器３０のプログラム実装などにコストを要するという課題がある。具体的には、上位機器３０は、リーダライタ１０から変換結果が送信されたことが検出されると、受信応答のフラグをオンに変化させ、所定期間にわたって維持した後に、そのフラグをオフに戻す。単一の上位機器３０が複数のリーダライタ１０に接続されることも多く、そのような場合には、上位機器３０に実装されるプログラムが複雑化する。
【００５４】
また、先行のＲＦタグ８との交信処理が終了してからハンドシェイクの処理が完了するまでの間は、ＲＦタグ８との交信処理は行なわれないので、その期間内にＲＦタグ８が交信可能領域ＡＲを通過してしまった場合には、交信の取りこぼしが発生し得る。すなわち、通常の経路を搬送されるＲＦタグ８であっても、検出漏れ生じる可能性があり、例えば、トレーサビリティ上の問題となり得る。
【００５５】
（ｄ２：関連技術のインターフェイス（ホールド型その１））
図６は、関連技術のホールド型のインターフェイス（その１）を説明するためのタイムチャートである。図６に示すホールド型のインターフェイスでは、リーダライタ１０および上位機器３０のいずれもがアクセス可能なメモリ領域（共有メモリ）が設けられており、リーダライタ１０は、ＲＦタグ８から取得した交信結果を共有メモリに順次書き込む。リーダライタ１０は、共有メモリに書き込まれた交信結果を少なくとも予め定められたホールド期間ＨＴだけ保持する（（ｂ）共有メモリを参照）。
【００５６】
一方、上位機器３０は、ホールド期間ＨＴより十分に短い周期で、共有メモリ上のデータにアクセス（ポーリング監視）することで、リーダライタ１０が取得した交信結果を取得できる。
【００５７】
図６に示すホールド型のインターフェイスでは、ホールド期間ＨＴは、ＲＦタグ８が到来する最小の時間間隔より長くすることはできず、また、上位機器３０がポーリング監視する周期はホールド期間ＨＴより十分に短くする必要もある。そのため、ホールド期間ＨＴおよびポーリング監視の周期を調整するのが難しい場合がある。
【００５８】
（ｄ３：関連技術のインターフェイス（ホールド型その２））
図７は、関連技術のホールド型のインターフェイス（その２）を説明するためのタイムチャートである。図７に示すホールド型のインターフェイスでは、リーダライタ１０および上位機器３０のいずれもがアクセス可能なメモリ領域（共有メモリ）が設けられており、リーダライタ１０は、ＲＦタグ８から取得した交信結果を共有メモリに順次書き込む（（ｂ）共有メモリ（交信結果）を参照）。その際、リーダライタ１０は、共有メモリの更新フラグを１スキャン分だけオンに変化させることで、交信結果を共有メモリに書き込んだことを通知する（（ｃ）共有メモリ（更新フラグ）を参照）。
【００５９】
上位機器３０は、共有メモリ上の更新フラグがオフからオンに変化したことをトリガーとして、共有メモリから交信結果を読み出す。
【００６０】
図７に示すホールド型のインターフェイスは、共有メモリの更新フラグを１スキャン分だけオンに変化させるので、共有メモリなどを用いて実装する場合には取りこぼしを生じないが、イーサネットなどのリアルタイム性（同期性）が保証されない通信手段では実装が難しい。
【００６１】
＜Ｅ．解決手段＞
本実施の形態のリーダライタ１０（交信装置）、およびリーダライタ１０を含むＲＦＩＤシステム１は、リーダライタ１０（交信装置）と上位機器３０との間でのデータの遣り取りをより簡単にセットアップできる構成を実現する。それに加えて、リーダライタ１０（交信装置）と上位機器３０との間がイーサネットなどのリアルタイム性（同期性）が保証されない通信手段を介して接続されているような場合であっても、交信結果を確実に上位機器３０へ伝送可能な構成を実現する。
【００６２】
図８は、本実施の形態のＲＦＩＤシステム１におけるリーダライタ１０（交信装置）と上位機器３０との間のインターフェイスを説明するためのタイムチャートである。図８には、リーダライタ１０の交信部（送信部１４および受信部１６）の近傍にある交信可能領域ＡＲ（図１など参照）を一定間隔毎または不定間隔毎に通過するＲＦタグ８から交信部によって順次読み取られたデータが上位機器３０へ出力される場合のタイムチャートを示す。
【００６３】
本実施の形態のＲＦＩＤシステム１においては、リーダライタ１０は、新たなＲＦタグ８から取得された交信結果を出力すると、その新たな交信結果の出力、すなわち交信結果の更新（切り替わり）を通知する信号を併せて出力する。そして、あるＲＦタグ８から取得された交信結果の出力（更新）が完了すると、リーダライタ１０は、次のＲＦタグ８に対する交信処理をいつでも開始できるように待機する。
【００６４】
すなわち、リーダライタ１０の制御部１００（図２）は、交信可能領域ＡＲを通過するＲＦタグ８からデータが順次読み取られるたびに、通信インターフェイス１０２（通信部）によって上位機器３０と遣り取りされる交信結果（第１のデータ）を当該読み取られたデータを含むように更新する（（ｂ）リーダライタ出力（交信結果）を参照）とともに、交信結果（第１のデータ）が更新されたタイミングに対応付けて、通信インターフェイス１０２（通信部）によって上位機器３０と遣り取りされる更新フラグ（第２のデータ）をそれ以前の値とは異なる値に更新する（（ｃ）リーダライタ出力（更新フラグ）を参照）。
【００６５】
図８に示すタイムチャートにおいては、更新フラグ（第２のデータ）をそれ以前の値とは異なる値に更新する具体例として、トグル信号（あるいは、フリッカ信号）を採用する。すなわち、リーダライタ１０の制御部１００（図２）は、更新フラグ（第２のデータ）の更新値として、オン（第１の状態値）とオフ（第２の状態値）とを交互に設定する。
【００６６】
すなわち、ＲＦタグＡが交信可能領域ＡＲに入ると、ＲＦタグＡとの間で交信処理が実行され、その結果取得された交信結果Ａがリーダライタ１０から出力される。すなわち、リーダライタ１０と上位機器３０と遣り取りされるデータは、交信結果Ａが含まれるように更新される。このとき、リーダライタ１０は、更新フラグをオフからオンに変化させる（図８のタイミングＴＧＡ）。上位機器３０は、更新フラグがオフからオンに変化したことに応答して、遣り取りされるデータにアクセスして交信結果Ａを読み出す。その後、後続のＲＦタグＢが交信可能領域ＡＲに入ると、同様に、ＲＦタグＢとの間で交信処理が実行され、その結果取得された交信結果Ｂがリーダライタ１０から出力される。すなわち、リーダライタ１０と上位機器３０と遣り取りされるデータは、交信結果Ｂが含まれるように更新される。このとき、リーダライタ１０は、更新フラグをオンからオフに変化させる（図８のタイミングＴＧＢ）。上位機器３０は、更新フラグがオフからオンに変化したことに応答して、遣り取りされるデータにアクセスして交信結果Ｂを読み出す。以下同様にして、新たなＲＦタグＣが交信可能領域ＡＲに入ると、交信処理、取得された交信結果Ｃの出力処理、更新フラグの更新処理などが実行される。これに併せて、上位機器３０は、更新フラグ（第２のデータ）の値が更新されることに応答して、交信結果（第１のデータ）を取得する。
【００６７】
図８のタイミングＴＧＡ，ＴＧＢ，ＴＧＣに示されるように、同一のタイミングで、交信結果（第１のデータ）および更新フラグ（第２のデータ）を更新することが好ましいが、厳密に同一のタイミングで両データを更新する必要はない。例えば、交信結果を出力した後に、更新フラグの値を更新（反転）するようにしてもよい。
【００６８】
なお、リーダライタ１０は、取得した交信結果の出力が完了すると、後続のＲＦタグ８との間の交信処理を待機する状態（ＲＦタグ待ち）に移行する。そのため、先行のＲＦタグ８との間の交信処理が終了した後、後続のＲＦタグ８との間で交信処理を行なうことができるようになるまでの切り替え時間はわずかであり、交信の取りこぼしの可能性を極めて低くできる。
【００６９】
また、リーダライタ１０と上位機器３０との間でデータを遣り取りする通信インターフェイス１０２（通信部）としては、任意の通信手段（イーサネット、シリアル通信、ＵＳＢ通信、パラレル通信、各種フィールドバスなど）を採用することができる。また、リーダライタ１０と上位機器３０とが一対一で接続されるネットワーク構成であってもよいし、単一の上位機器３０に複数のリーダライタ１０が接続される一対Ｎのネットワーク構成であってもよい。
【００７０】
図８に示されるように、交信結果（第１のデータ）がさらに更新されるまで、更新フラグ（第２のデータ）は更新後の値に維持されることが好ましい。上位機器３０が交信結果を読み出す条件としては、更新フラグの値が前回値から変化しているという条件を採用でき、この条件下においては、更新フラグの値の変化をリアルタイムで監視しておく必要がない。言い換えれば、上述の図７に示すような１スキャン分だけオンされる更新フラグの値の変化を監視するようなことは必要なく、ある交信結果が維持される期間内に更新フラグを少なくとも１回スキャンできればよい。そのため、イーサネットなどのリアルタイム性（同期性）が保証されない通信手段であっても、図８に示すインターフェイスを実現できる。また、通信ケーブルを介した接続だけではなく、共有メモリや共有バスを設けて、リーダライタ１０と上位機器３０との間でデータを遣り取りするようにしてもよい。
【００７１】
さらに、上位機器３０では、更新フラグ（第２のデータ）が切り替わるのに要する時間（例えば、更新フラグがオンからオフに切り替わってから、再度オンに切り替わるまでに要する時間）をタイマ監視することで、ＲＦタグ８の読み取り終了やＲＦタグ８の読み取りエラーなどを判断するためのタイムアウト処理を容易に実装することもできる。
【００７２】
交信結果としては、ＲＦタグ８から読み取られたデータそのものに加えて各種の付加情報（例えば、ＲＦタグ８からの応答信号の受信レベルなど）が付加されてもよいし、ＲＦタグ８との交信の適否（交信成功または交信エラー）を示す状態値が付加されてもよい。なお、ＲＦタグ８からデータを読み取ることができなかった場合には、交信エラーのみを交信結果として出力してもよい。
【００７３】
＜Ｆ．リーダライタ１０での処理手順＞
次に、図８に示されるＲＦタグ８からの交信結果の取得および上位機器３０への交信結果の応答に係る処理手順について説明する。
【００７４】
図９は、本実施の形態のリーダライタ１０において実行される処理手順を示すフローチャートである。図９に示す各ステップは、典型的には、リーダライタ１０の制御部１００によって実行される。
【００７５】
図９を参照して、まず、リーダライタ１０の制御部１００は、上位機器３０からのリピート交信コマンドが有効化されているか否かを判断する（ステップＳ２）。すなわち、制御部１００は、上位機器３０からＲＦタグ８に対して繰り返して交信を行なうように指示されているか否かを判断する。上位機器３０からのリピート交信コマンドが有効化されていなければ（ステップＳ２においてＮＯ）、処理は終了する。
【００７６】
上位機器３０からのリピート交信コマンドが有効化されていれば（ステップＳ２においてＹＥＳ）、制御部１００は、交信可能領域ＡＲ内に何らかのＲＦタグ８が存在しているか否かを判断する（ステップＳ４）。具体的には、制御部１００は、送信部１４（図２）で発生させた電磁波をアンテナコイル１４０から送出するとともに、その電磁波に対してＲＦタグ８から何らかの応答を受信部１６が受信するか否かを判断する。典型的な実装例によれば、制御部１００は、ＲＦタグ８を認識するための「inventoryコマンド」を重畳した搬送波を送出し、ＲＦタグ８からの応答の有無を判断する。交信可能領域ＡＲ内に何らのＲＦタグ８も存在していなければ（ステップＳ４においてＮＯ）、ステップＳ２以下の処理が繰り返される。
【００７７】
これに対して、交信可能領域ＡＲ内に何らのＲＦタグ８も存在していれば（ステップＳ４においてＹＥＳ）、制御部１００は、交信可能領域ＡＲ内に存在するＲＦタグ８が前回の交信処理において応答を受信したＲＦタグ８と同一であるか否かを判断する（ステップＳ６）。すなわち、交信結果を取得しているＲＦタグ８から重複して交信結果を取得することを回避するための処理を実行する。典型的な実装例によれば、「inventoryコマンド」を重畳した搬送波を送出した際のＲＦタグ８からの応答には、当該ＲＦタグ８固有の識別情報（ＵＩＤ）が含まれており、制御部１００は、この識別情報が先の交信処理によって取得された識別情報と同一であるか否かに基づいて、ＲＦタグ８の同一性を判断する。交信可能領域ＡＲ内に存在するＲＦタグ８が前回の交信処理において応答を受信したＲＦタグ８と同一であれば（ステップＳ６においてＹＥＳ）、ステップＳ２以下の処理が繰り返される。
【００７８】
これに対して、交信可能領域ＡＲ内に存在するＲＦタグ８が前回の交信処理において応答を受信したＲＦタグ８と同一でなければ（ステップＳ６においてＮＯ）、制御部１００は、ＲＦタグ８との交信によって交信結果を取得する（ステップＳ８）。
【００７９】
続いて、制御部１００は、ＲＦタグ８との交信によって取得した交信結果を出力するとともに、更新フラグの値を反転する（ステップＳ１０）。すなわち、制御部１００は、通信インターフェイス１０２によって上位機器３０と遣り取りされる交信結果をＲＦタグ８から読み取られたデータを含むように更新する。なお、ＲＦタグ８からデータを読み取ることができなかった場合には、交信エラーのみを交信結果として出力してもよい。併せて、制御部１００は、交信結果が更新されたタイミングに対応付けて、通信インターフェイス１０２によって上位機器３０と遣り取りされる更新フラグをそれ以前の値とは異なる値に更新する。
【００８０】
その後、制御部１００は、今回の交信処理によって取得されたＲＦタグ８固有の識別情報（ＵＩＤ）を格納する（ステップＳ１２）。この格納される識別情報（ＵＩＤ）は、次回以降のステップＳ６の判断処理に用いられる。そして、ステップＳ２以下の処理が繰り返される。
【００８１】
＜Ｇ．上位機器３０におけるプログラム例＞
次に、図８および図９に示すリーダライタ１０と上位機器３０との間のインターフェイスに向けられた上位機器３０におけるプログラムの一例を説明する。
【００８２】
図１０は、本実施の形態の上位機器３０において実行されるプログラムの一例を示すラダー図である。図１０には、上位機器３０の典型例であるＰＬＣで実行されるシーケンスプログラムをラダー形式で示す。但し、プログラムの表現形式は、これに限られず、任意のものを採用できる。
【００８３】
図１０を参照して、ラダープログラム４００では、立ち上がり微分要素４０２および立ち下がり微分要素４０４の論理和（ＯＲ）出力が、ファンクションブロック４０６の実行開始条件として定義されている。立ち上がり微分要素４０２および立ち下がり微分要素４０４は、いずれも更新フラグ（図８の（ｃ）を参照）を入力とするものである。つまり、更新フラグの値がオフからオンに変化すると、立ち上がり微分要素４０２がオンし、更新フラグの値がオンからオフに変化すると、立ち下がり微分要素４０４がオンするので、更新フラグの値がいずれの方向に変化しても、ファンクションブロック４０６が実行されることになる。
【００８４】
ファンクションブロック４０６は、リーダライタ１０から出力される交信結果（Ｄ０００１）を内部のメモリ（Ｍ０００１）にコピーするという処理を含む。この処理によって、上位機器３０は、リーダライタ１０から出力された交信結果を取得できる。
【００８５】
図１０に示すように、本実施の形態のＲＦＩＤシステム１では、上位機器３０に実装されるリーダライタ１０から交信結果を取得するためのプログラムを簡素化できる。
【００８６】
＜Ｈ．その他の形態＞
上述の実施の形態の変形例として、以下のような形態を採用することもできる。
【００８７】
（ｈ１：更新カウンタの採用）
例えば、図８に示すインターフェイスでは、通信インターフェイス１０２（通信部）によって上位機器３０と遣り取りされる更新フラグ（第２のデータ）をそれ以前の値とは異なる値に更新する一例として、トグル信号（あるいは、フリッカ信号）を採用する実装について説明したが、別の実装を採用してもよい。
【００８８】
例えば、ＲＦタグ８から取得されたデータを含むように交信結果を更新したときに、何らかのカウンタ値を変化させることで、その更新を通知するようにしてもよい。カウンタ値を変化させる具体例としては、カウンタ値を所定値ずつ増加させる（インクリメントする）、または、減少させる（デクリメントする）方法を採用することができる。あるいは、カウンタ値をランダムに変化させるようにしてもよい。いずれの方法であっても、ＲＦタグ８からの交信結果が更新された前後で、その値が変化してさえすればよい。
【００８９】
図１１は、本実施の形態の第１の変形例におけるリーダライタ１０（交信装置）と上位機器３０との間のインターフェイスを説明するためのタイムチャートである。図１１に示すタイムチャートは、図８に示すタイムチャートに比較して、更新フラグではなく、更新カウンタが採用されており（（ｃ）リーダライタ出力（更新カウンタ）を参照）、交信結果が更新されるたびに、この更新カウンタがインクリメントされる。上位機器３０は、この更新カウンタのインクリメントを検出して、更新後の交信結果を取得する。
【００９０】
すなわち、リーダライタ１０の制御部１００（図２）は、交信可能領域ＡＲを通過するＲＦタグ８からデータが順次読み取られるたびに、通信インターフェイス１０２（通信部）によって上位機器３０と遣り取りされる交信結果（第１のデータ）を当該読み取られたデータを含むように更新する（（ｂ）リーダライタ出力（交信結果）を参照）とともに、交信結果（第１のデータ）が更新されたタイミングに対応付けて、通信インターフェイス１０２（通信部）によって上位機器３０と遣り取りされる更新カウンタ（第２のデータ）をインクリメントする（（ｃ）リーダライタ出力（更新カウンタ）を参照）。
【００９１】
（ｈ２：複数の交信結果の保持）
例えば、図８に示すインターフェイスでは、通信インターフェイス１０２（通信部）によって上位機器３０と遣り取りされる交信結果（第１のデータ）をＲＦタグ８から読み取られたデータを含むように更新する一例として、読み取られたデータのみを出力する実装について説明したが、過去の複数のデータを出力するようにしてもよい。
【００９２】
図１２は、本実施の形態の第２の変形例におけるリーダライタ１０（交信装置）と上位機器３０との間のインターフェイスを説明するためのタイムチャートである。図１２に示すタイムチャートにおいては、リーダライタ１０は、何らかのＲＦタグ８から読み取られたデータ（交信結果）を含む複数（例えば、８個）の過去のデータ（交信結果）を出力する。このとき、取得された時間順に対応付けてそれぞれの交信結果が順序付けされて出力される。上位機器３０は、出力される交信結果の順序に応じて、最新の交信結果を取得するとともに、必要に応じて過去の交信結果も取得することができる。
【００９３】
このように、複数の交信結果を出力することで、上位機器３０での処理遅延などによって、リーダライタ１０からの交信結果を取得できなかったような場合であっても、リカバリすることができる。また、取得された交信結果が時間順に配置されることで、上位機器３０側にて、交信結果の整合性などを都度確認できる。
【００９４】
（ｈ３：書き込みへの適用）
上述した実施の形態においては、ＲＦタグ８からデータを読み取る場合の処理について説明したが、ＲＦタグ８に対してデータを書き込む場合にも応用が可能である。例えば、管理対象の物品に互いに異なる識別情報を順次付与するようなアプリケーションにも適用可能である。
【００９５】
＜Ｉ．利点＞
以上のとおり、本実施の形態のＲＦＩＤシステム１においては、リーダライタ１０（交信装置）は、ＲＦタグ８からデータを読み取るたびに、その読み取ったデータを含む交信結果を出力するとともに、更新フラグまたは更新カウンタの値を変化させるだけでよく、上位機器３０は、更新フラグまたは更新カウンタの値を監視しておき、その値が変化したことに応答して、交信結果を取得すればよい。
【００９６】
そのため、リーダライタ１０側の設定、および、上位機器３０に実装されるプログラムのいずれについても簡素化でき、ＲＦＩＤシステム１のセットアップに係る手間およびコストを削減できる。
【００９７】
また、本実施の形態のＲＦＩＤシステム１においては、リーダライタ１０がＲＦタグ８と交信処理を行なって取得した交信結果を出力するまでの手順が簡素化されているので、先行のＲＦタグ８との間で交信処理が完了した後、後続のＲＦタグ８との間で交信処理を行なう準備ができる状態になるまでの時間を極めて短くできるので、交信の取りこぼしが発生する可能性をより低減できる。
【００９８】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００９９】
１  システム、２  ベルトコンベア、４，４＿１，４＿２  パレット、６，６＿１，６＿２  ワーク、８，８＿１，８＿２  ＲＦタグ、１０  リーダライタ、１２  交信制御部、１４  送信部、１６  受信部、１８  受信レベル検出部、２０  アンテナ部、３０  上位機器、１００  制御部、１０２，３１６  通信インターフェイス、１０４  記憶部、１０６  計時部、１０８  表示部、１１０  ドライブ回路、１１２  変調回路、１１４  乗算回路、１１６，１２０  Ｚ変換回路、１１８，１２８  増幅回路、１２２  バンドパスフィルタ、１２４，１３２  検波回路、１２６  ローパスフィルタ、１３０  コンパレータ、１３４  変換回路、１３６  発振回路、１４０  アンテナコイル、３０２  プロセッサ、３０４  チップセット、３０６  メインメモリ、３０８  フラッシュメモリ、３１０  システムプログラム、３１２  ユーザプログラム、３１８  メモリカードインターフェイス、３２０  メモリカード、３２２  内部バスコントローラ、３２４  フィールドバスコントローラ、３２６，３２８  Ｉ／Ｏユニット。
【図１】
0006464757.tif 000002
【図２】
0006464757.tif 000003
【図３】
0006464757.tif 000004
【図４】
0006464757.tif 000005
【図５】
0006464757.tif 000006
【図６】
0006464757.tif 000007
【図７】
0006464757.tif 000008
【図８】
0006464757.tif 000009
【図９】
0006464757.tif 000010
【図１０】
0006464757.tif 000011
【図１１】
0006464757.tif 000012
【図１２】
0006464757.tif 000013