説明

無線タグ書込装置、無線タグ読取装置、無線タグ書込方法、無線タグ読取方法及び無線タグ

【課題】無線タグのメモリ内でビット化けが発生した場合、ビット化けしたデータを不当なデータとして判定することのできる無線タグ書込装置、無線タグ読取装置を提供する。
【解決手段】無線タグ書込装置、無線タグ読取装置は無線タグが取付けられるオブジェクトを識別するための識別コードが無線タグのメモリ内でビット化けを起こしていないかを確認するための判定の種別を表す判定種別コードと、前記識別コードをその判定の種別によって生成した結果のチェックコードとを前記識別コードに付加する手段32と、この付加手段で付加された判定種別コード、識別コード及びチェックコードを前記無線タグに送信する手段30とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、無線タグにデータを書込む無線タグ書込装置、無線タグからデータを読出す無線タグ読取装置、無線タグ書込方法、無線タグ読取方法及び無線タグに関する。
【背景技術】
【0002】
ICタグ、あるいはRFID(radio frequency identification)タグと呼ばれる無線タグとの間で無線通信する無線タグ読取装置は、変調無線信号を使用して無線タグへ情報を伝送する。情報の伝送終了後は無変調信号を送信し続け、これに対し、無線タグは、無線タグ読取装置からの無変調信号の反射量を変化させてバックスキャッタ変調を行うことにより、無線タグ読取装置に対して情報を送信する。無線タグ読取装置は、バックスキャッタ変調波を受信して無線タグの情報を読取るようになっている。
【0003】
例えば、EPC global RFID エアインターフェース仕様書(非特許文献1)などが定める無線タグでは、図24(a)に示すように、自身のメモリ内にEPC(Electronic product code)と呼ばれる当該無線タグが取付けられるオブジェクト固有のID(Identification)情報(以下EPCデータという)を持ち、無線タグ読取装置から応答要求があった場合は、図24(b)に示すように、PC(Protocol Control)と呼ばれるデータの長さを示すヘッダ情報、EPCデータ及び通信エラーの検出のためのCRC16(Cyclic Redundancy Check 16)コードからなるデータを返信する。
【0004】
なお、無線タグは、自身が起動された時に、無線タグ内に記憶されているPCで指定された長さのEPCデータに対してCRC16コードを計算し、自身のメモリ内に格納しておき、このCRC16コードをEPCデータとともに出力するようになっている。
【0005】
一方、無線タグ読取装置は図25に示すように、無線タグの応答データのプリアンブルを検出(401)すると、PCの受信(402)、EPCデータの受信(403)及びCRC16コードの受信(404)と順番に受信する。CRC16コードを受信した後、CRC16判定部において、PC及びEPC[0]〜EPC[N−1]のデータに対してCRC16コードを計算し、受信したCRC16コードと比較することによりCRC16エラーチェックを行い(405)、読み取ったデータの正当性を判定する。判定の結果、エラーが無いときは正当なデータとして処理し(406)、エラーが検出されたときは不当なデータとして処理する(407)。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】EPC global RFID エアインターフェース仕様書
【発明の概要】
【発明が解決しようとする課題】
【0007】
無線タグが持つメモリは、主としてフラッシュメモリと呼ばれる不揮発性のメモリが使用される。フラッシュメモリでは、メモリセルの経時劣化が原因と考えられるビット化けが発生する可能性がある。ビット化けとは、メモリ内部のデータの論理0が論理1、あるいはこれとは逆に、論理1が論理0に化けてしまう現象である。
【0008】
従来例では、通信中の外来ノイズなどによりデータの論理が化けてしまった場合は、無線タグ読取装置側でCRC16のエラーチェックを行うことで、データの正当性を判定し、不当なデータを検出することが可能である。しかしながら、無線タグのメモリ内部でビット化けが発生した場合、無線タグは、起動時に、ビット化けした不当なデータに対して、CRC16を計算するため、無線タグ読取装置側ではCRC16のエラーチェックを行っても、ビット化けに対するデータの正当性を判定することはできなかった。
【0009】
本発明の実施形態は、このような問題を解決するためになされたもので、無線タグのメモリ内でビット化けが発生した場合、ビット化けしたデータを不当なデータとして判定することができる無線タグ書込装置、無線タグ読取装置、無線タグ書込方法、無線タグ読取方法及び無線タグを提供することを目的とする。
【課題を解決するための手段】
【0010】
上記課題を解決するために、請求項1記載の無線タグ書込装置は、データを記憶するメモリを備える無線タグと通信を行い、無線タグにデータを書込む無線タグ書込装置において、当該無線タグが取付けられるオブジェクトを識別するための識別コードが前記メモリ内でビット化けを起こしていないかを確認するための判定の種別を表す判定種別コードと、前記識別コードをその判定の種別によって生成した結果のチェックコードとを前記識別コードに付加する手段と、この付加手段で付加された判定種別コード、識別コード及びチェックコードを前記無線タグに送信する手段とを有することを特徴とする。
【0011】
また、請求項4記載の無線タグ読取装置は、データを記憶するメモリを備える無線タグと通信を行い、無線タグからデータを読取る無線タグ読取装置において、無線タグから、当該無線タグが取付けられているオブジェクトを識別するための識別コード、この識別コードが前記メモリ内でビット化けを起こしていないかを確認するための判定の種別を表す判定種別コード及び前記識別コードをその判定の種別によって生成した結果のチェックコードを読出す読出手段と、この読出手段で読出した判定種別コードで表される判定種別に基づいて前記読出手段で読出した識別コードからチェックコードを生成するチェックコード生成手段と、この生成手段で生成したチェックコードと、前記読出手段で読出したチェックコードとを比較することにより識別コードの正当性を判定する判定手段とを有することを特徴とする。
【0012】
さらに請求項7記載の無線タグ書込方法は、データを記憶するメモリを備える無線タグと通信を行い、無線タグにデータを書込む方法であって、無線タグが取付けられるオブジェクトを識別するための識別コードが前記メモリ内でビット化けを起こしていないかを確認するための判定の種別を指定し、指定された判定の種別に基づいて前記識別コードからチェックコードを生成し、前記指定された判定の種別を表す判定種別コードと、前記生成されたチェックコードとを前記識別コードに付加して前記無線タグに送信することを特徴とする。
【0013】
また、請求項8記載の無線タグ読取方法は、データを記憶するメモリを備える無線タグと通信を行い、無線タグからデータを読取る方法であって、無線タグから、当該無線タグが取付けられているオブジェクトを識別するための識別コード、この識別コードが前記メモリ内でビット化けを起こしていないかを確認するための判定の種別を表す判定種別コード及び前記識別コードをその判定の種別によって生成した結果のチェックコードを読出し、この読出した判定種別コードで表される判定種別に基づいて前記読出した識別コードからチェックコードを生成し、この生成したチェックコードと、前記読出したチェックコードとを比較して識別コードの正当性を判定することを特徴とする。
【0014】
さらに、請求項9記載の無線タグは、当該無線タグが取付けられるオブジェクトを識別するための識別コードと、この識別コードがビット化けを起こしていないかを確認するための判定の種別を表す判定種別コードと、前記識別コードをその判定の種別によって生成した結果のチェックコードとを記憶したメモリと、外部からの読出し要求に応答して前記メモリに記憶した識別コード、判定種別コード及びチェックコードを出力する出力手段とを有することを特徴とする。
【図面の簡単な説明】
【0015】
【図1a】第1の実施形態に係る無線タグ読取装置の構成を示す機能ブロック図である。
【図1b】第1の実施形態に係る無線タグ読取装置の構成を示す構成ブロック図である。
【図2a】第1の実施形態に係る全データ単位のパリティチェックのメモリ内のデータ構成を示す図である。
【図2b】第1の実施形態に係る全データ単位のパリティチェックの無線タグへの送信データを示す図である。
【図3】第1の実施形態に係る判定種別を示す図である。
【図4】第1の実施形態に係る全データ単位のパリティチェック(例)を示す図である。
【図5a】第1の実施形態に係る全データ単位のパリティチェックのデータ作成を示すフローチャート図である。
【図5b】第1の実施形態に係る全データ単位のパリティチェックのデータ受信を示すフローチャート図である。
【図6a】第2の実施形態に係る全データ単位のチェックサムチェックのメモリ内のデータ構成を示す図である。
【図6b】第2の実施形態に係る全データ単位のチェックサムチェックの無線タグの応答データを示す図である。
【図7】第2の実施形態に係る全データ単位のチェックサムチェック(例)を示す図である。
【図8a】第2の実施形態に係る全データ単位のチェックサムチェックのデータ作成を示すフローチャート図である。
【図8b】第2の実施形態に係る全データ単位のチェックサムチェックの受信を示すフローチャート図である。
【図9a】第3の実施形態に係る全データ単位のCRC’16チェックのメモリ内のデータ構成を示す図である。
【図9b】第3の実施形態に係る全データ単位のCRC’16チェックの無線タグの応答データを示す図である。
【図10】第3の実施形態に係る全データ単位のCRC’16チェック(例)を示す図である。
【図11a】第3の実施形態に係る全データ単位のCRC’16チェックの受信データの作成を示すフローチャート図である。
【図11b】第3の実施形態に係る全データ単位のCRC’16チェックの受信を示すフローチャート図である。
【図12a】第4の実施形態に係る1ワード(2バイト)単位のパリティチェックのメモリ内のデータ構成を示す図である。
【図12b】第4の実施形態に係る1ワード(2バイト)単位のパリティチェックの無線タグの応答データを示す図である。
【図13】第4の実施形態に係る1ワード(2バイト)単位のパリティチェック(例)を示す図である。
【図14a】第4の実施形態に係る1ワード(2バイト)単位のパリティチェックのデータ作成フローを示す図である。
【図14b】第4の実施形態に係る1ワード(2バイト)単位のパリティチェックの受信フローを示す図である。
【図15a】第5の実施形態に係る1ワード(2バイト)単位のチェックサムチェックのメモリ内のデータ構成を示す図である。
【図15b】第5の実施形態に係る1ワード(2バイト)単位のチェックサムチェックの無線タグの応答データ構成を示す図である。
【図16】第5の実施形態に係る1ワード(2バイト)単位のチェックサムチェック(例)を示す図である。
【図17a】第5の実施形態に係る1ワード(2バイト)単位のチェックサムチェックのデータ作成フローを示す図である。
【図17b】第5の実施形態に係る1ワード(2バイト)単位のチェックサムチェックの受信フローを示す図である。
【図18a】第6の実施形態に係る1ワード(2バイト)単位のCRC’16チェックのメモリ内のデータ構成を示す図である。
【図18b】第6の実施形態に係る1ワード(2バイト)単位のCRC’16チェックの無線タグの応答データを示す図である。
【図19】第6の実施形態に係る1ワード(2バイト)単位のCRC’16チェック(例)を示す図である。
【図20a】第6の実施形態に係る1ワード(2バイト)単位のCRC’16チェックのメモリ内のデータ構成を示す図である。
【図20b】第6の実施形態に係る1ワード(2バイト)単位のCRC’17チェックの受信フロー受信フローを示す図である。
【図21a】第7の実施形態に係るミラーデータチェックのメモリ内のデータ構成を示す図である。
【図21b】第7の実施形態に係るミラーデータチェックの無線タグの応答データを示す図である。
【図22】第7の実施形態に係るミラーデータチェック(例)を示す図である。
【図23a】第7の実施形態に係るミラーデータチェックのデータ作成フローを示す図である。
【図23b】第7の実施形態に係るミラーデータチェックの受信フローを示す図である。
【図24a】タグのメモリ構成と応答のメモリ内のデータ構成を示す図である。
【図24b】タグのメモリ構成と応答の無線タグの応答データを示す図である。
【図25】従来例・読取装置の受信フローを示す図である。
【発明を実施するための形態】
【0016】
以下、実施の形態の無線タグ書込装置、無線タグ読取装置、無線タグ書込方法、無線タグ読取方法及び無線タグを、図面を参照して説明する。
【0017】
(第1の実施形態)
図1は無線タグ書込/読取装置(以下リーダライタという)1と無線タグ2の構成を示すブロック図である。リーダライタ1には装置本体を制御する制御部10、送信部30及び受信部40が設けられている。
【0018】
制御部10は、CPU(Central Processing Unit)やメモリを含んでおり、予め記憶されたプログラムに従って動作するようになっている。
【0019】
また、無線タグ2はデータを記憶するメモリ21、このメモリ21内のデータに基づいて後述するエラーチェックコードを生成したり、リーダライタ1との間でデータを入出力する入出力部22及びリーダライタ1との間で無線通信を行うアンテナ23とで構成されている。
【0020】
リーダライタ1の送信部30は、無線タグ2にデータを送信する際、図2(b)に示すEPC[0]〜EPC[N−1]のNワードのEPCデータ24を用意する。
【0021】
PCヘッダ付加部32ではこのEPCデータ24に対してプリアンブル部25を付加するとともに、EPCデータNワード、後述する指定された判定の種別を示す判定種別コード26を1ワード、及びこの判定の種別に対応した判定方法で生成したチェックコード27を1ワード加算してN+2ワードをデータ長PC28としてEPCデータ24の前に付加する。
【0022】
判定種別ヘッダ付加部33ではEPCデータ24が無線タグ2のメモリ21内でビット化けを起こしていないかを確認するための判定の種別を表す1ワードの判定種別コード26をEPCデータ24の前に付加する。第1の実施形態では判定の種別として全データに対してパリティチェックを行うことによりビット化け発生の有無を判定する例を示している。
【0023】
ビット化け判定用データ付加部34ではPCヘッダ付加部32で付加されたデータ長PC28、判定種別ヘッダ付加部33で付加された判定種別コード26及びEPCデータ24からパリティチェックコード27を生成してEPCデータ24の最終部に付加し、無線タグ2への送信データを作成する。
【0024】
このように作成された送信データは符号化部35で符号化され、変調部36でベースバンドの搬送波を変調する。変調された送信データは増幅部37で増幅され、アンテナ38から無線信号として無線タグ2に送信される。この無線タグ2に送信されるデータ列は図2(b)のようになっている。
【0025】
そして、リーダライタ1からデータを受信した無線タグ2は入出力部22でプリアンブル部25を除いて図2(a)に示すようにメモリ21の10h〜[N+3]Fh番地に記憶させる(hは16進数を表している)。
【0026】
この例では、1ワード(2バイト)単位でデータが記憶されている。無線タグ2はリーダライタ1によって起動されたときデータ長PC28で指定されたワード長のデータに対してCRCチェックコード(以下CRC16という)29を計算し、00h〜0Fh番地に記憶する。このCRC16は無線タグ2からリーダライタ1への通信時のエラーチェックに使用されるものである。
【0027】
また、10h〜1Fh番地には自身を含め、判定種別コード26、EPCデータ24及びパリティチェックコード27までのワード長を示すデータ長情報PC28が記憶される。20h〜2Fh番地にはメモリ21内のデータにビット化け発生の有無を判定する判定の種別を示す判定種別コード26が記憶される。30h番地以降にはEPC[0]〜EPC[N−1]としてNワードのEPCデータ24が記憶され、[N+3]0h〜[N+3]Fh番地には、パリティチェックコード27が記憶される。
【0028】
一方、リーダライタ1から無線タグ2に対してデータの読取コマンドが送られると、無線タグ2は起動された時点でメモリ21内のデータ長PC28からパリティチェックコード27までのデータに対してCRC16を作成してメモリ21の00h〜0Fh番地に記憶する。
【0029】
その後、無線タグ2は図2(b)に示すデータ列の最後にCRC16 29を付加してリーダライタ1に応答信号としてデータを送信する。リーダライタ1の受信部40は、無線タグ2からの応答信号を受信するアンテナ41と、無線タグ2からの応答信号を図示していないローカル信号によってベースバンド信号に復調する復調部42と、復調したベースバンド信号を増幅する増幅部43と、増幅されたベースバンドから無線タグ2の応答データを復号する復号部44とを有する。また受信部40は、無線タグ2からのデータの長さを判定するPCヘッダ判定部45と、無線タグ2から読出したデータ列からビット化け発生の有無を判定するための判定種別コード26を抽出する判定種別抽出部46とを有する。
【0030】
さらに、受信部40には、判定種別抽出部46で抽出された判定種別コード26を用いて、無線タグ2から読み出したデータ列のうち、データ長PC28、判定種別コード26及びEPCデータ24に対してパリティチェックコードを生成し、生成したパリティチェックコードと無線タグ2から読出したパリティチェックコード27とを比較することによりビット化けの判定を行うビット化け判定部47を有する。
【0031】
さらにまた受信部40には、無線タグ2から読出したデータ列のうち、データ長PC28からパリティチェックコード27までのデータに対してCRC16を作成し、無線タグ2から読出したCRC16 29と比較し、データ通信時のエラーチェックを行うCRC判定部48を有する。
【0032】
従来例と本発明の実施形態において、大きく異なるところは、図1において、網掛けで示した部分、すなわち、判定種別ヘッダ付加部33、ビット化け判定用データ付加部34、判定種別抽出部46、及びビット化け判定部47を備えたことである。判定種別ヘッダ付加部33及びビット化け判定部47におけるビット化け発生の有無の判定種別コード26とその判定方法は、例えば、図3に示すように予め決められている。
【0033】
次に、このような構成の作用を説明する。
【0034】
無線タグ2にデータを書き込む場合は、図3に示す判定種別から利用する判定の種別を指定する。この指定された判定の種別に応じて、判定種別コード26を判定種別ヘッダ付加部33でEPCデータ24に付加するとともに、データ長PC28、判定種別コード26及びEPCデータ24に対してその判定の種別によって生成した結果のチェックコード27を付加して無線タグ2に送信し、書き込む。
【0035】
一方、無線タグ2のデータを読取る場合は、無線タグ2から読出したデータ列から判定種別コード26を抽出し、無線タグ2から読出したデータ列のうち、データ長PC28、判定種別コード26及びEPCデータ24に対してその抽出した判定の種別によって生成した結果のチェックコードを生成し、無線タグ2から読出したチェックコード27と比較する。この比較の結果、両方のチェックコードが一致していれば無線タグ2のメモリ内でのビット化けが発生していないことを確認できる。
【0036】
図4に判定の種別としてパリティチェックを指定したときのチェック方法の具体例を示す。
【0037】
図4(a)に、リーダライタ1が無線タグ2にデータを書き込む際のパリティチェックコードの生成方法を示す。送信しようとするデータ、すなわち、データ長PC28、判定種別コード26及びEPCデータ24に対して、値が1であるビットの個数が偶数である場合はパリティチェックコードとして0を、値が1であるビットの個数が奇数である場合はパリティチェックコードとして1を生成する。
【0038】
図4(b)から(d)は、リーダライタ1が無線タグ2からデータを読取る際の、ビット化け発生の有無の判定方法を示している。図4(b)に示すように、ビット化けが発生していない場合は、受信したデータ、すなわち、データ長PC28、判定種別コード26及びEPCデータ24に対して計算したパリティチェックコードと、無線タグ2から読出したパリティチェックコード27とが一致する。
【0039】
一方、受信したデータ、すなわち、データ長PC28、判定種別コード26及びEPCデータ24においてビット化けが発生している場合は、計算したパリティチェックコードと受信したパリティチェックコード27とが一致しないのでビット化けが発生していると判定することができる。
【0040】
図4(c)はEPCデータ24の部分でビット化けが発生した結果、パリティチェックコード27が一致しない場合を示しており、図4(d)はパリティチェックコード27の部分でビット化けが発生した結果、パリティチェックコードが一致しない場合を示している。
図5(a)は、リーダライタ1が無線タグ2に対してデータを書き込む際に書き込むべきデータを作成するフローチャートである。まず、データ長PC28、判定種別コード26及びEPCデータ24に対するワード長を計算し(101)、データ長PC28として付加する(102)。次に図3に示した対応表に従い、ビット化け発生の有無の判定種別となる判定種別コード26を付加する(103)。本実施例では、パリティチェックであるので、判定種別コード26はX”01”である。次にEPCデータ24を付加し(104)、最後にデータ長PC28、判定種別コード26及びEPCデータ24に対して計算したパリティチェックコード27を付加し(105)、書き込むデータの作成が完了する(106)。
【0041】
図5(b)は、リーダライタ1が無線タグ2からの応答データを受信し、ビット化けの発生の有無を判定するフローチャートを示している。
まず、データ長PC28を受信し(112)、無線タグ2から受信するデータのワード長を判定する。次に判定種別コード26を受信し(113)、図3の対応表に従い、ビット化け発生の有無の判定の種別を選択する。次にEPCデータ24を受信した後、データ長PC28、判定種別コード26及びEPCデータ24に対して、パリティチェックコードを計算する(115)。その後、パリティチェックコードの受信(116)、CRC16の受信(117)をした後、CRC16エラーチェックを行う(118)。
【0042】
ここでCRC16エラーが発生した場合は、受信したデータは不当なデータとして処理し(121)、受信を終了する(122)。一方、CRC16エラーがない場合は、計算で求めたパリティチェックコードと受信したパリティチェックコード27とを比較し(119)、一致する場合は、ビット化けが発生していない正当なデータとして処理し(120)、受信を終了する。一方、パリティチェックが一致しない場合は、ビット化けが発生した不当なデータとして処理し(121)、受信を終了する。
【0043】
このように、無線タグへのデータの書き込み時にビット化け発生の有無の判定種別を表すコードと、その判定の種別で生成したチェックコードとをデータに付加して書き込み、無線タグからのデータ読出し時に読出した判定種別コードに基づいてチェックコードを生成し、無線タグから読出したチェックコードと比較することにより無線タグのメモリ内でビット化けが発生しているか否かが判定できるものである。
【0044】
(第2の実施形態)
次に、本発明の第2の実施形態について図6から図8を参照して説明する。第2の実施形態は、全データに対してチェックサムチェックを行うことにより、ビット化け発生の有無を判定する例を示す。
【0045】
図6(a)は、無線タグ2のメモリ21内のデータ構成を示している。この例では、1ワード(2バイト)単位でデータが記録されており、00h-0Fh番地には、無線タグ2が起動時にデータ長PC28で指定されるワード長のデータに対して計算され、通信時のCRC16エラーチェックに使用されるCRC16 29が格納されている。10h-1Fh番地には自身を含め、判定種別コード26EPCデータ24及びチェックサムチェックコード37のワード長を示すデータ長PC28が格納される。20h-2Fh番地には、ビット化け発生の有無を判定する判定方法を示す判定種別コード26が格納されている。30h番地以降には、EPC[0]-EPC[N-1]としてNワードのEPCデータ24が格納されており、[N+3]0h-[N+3]Fh番地には、データ長PC28、判定種別コード26及びEPCデータ24に対して、計算されたチェックサムチェックコード37が格納されている。
このように記憶された無線タグ2は、リーダライタ1の応答要求、例えば、読出しコマンドに対して、図6(b)のように、プリアンブル25に続き、メモリ21内のデータを返す。
【0046】
図7(a)に、リーダライタ1が無線タグ2にデータを書き込む際のチェックサムチェックコード37の生成方法を示す。送信しようとするデータ、すなわち、データ長PC28、判定種別コード26及びEPCデータ24に対して、値が1であるビットの個数を加算し、この値をチェックサムチェックコード37として生成する。
【0047】
図7(b)から(d)は、リーダライタ1が無線タグ2のデータを読み取る際の、ビット化け発生の有無の判定方法を示している。図7(b)に示すように、ビット化けが発生していない場合は、受信したデータ、すなわち、データ長PC28、判定種別コード26及びEPCデータ24に対して計算したチェックサムチェックコードと、受信したチェックサムチェックコード37は一致する。
【0048】
一方、受信したデータ、すなわち、データ長PC28、判定種別コード26及びEPCデータ24においてビット化けが発生している場合は、計算したチェックサムチェックコードと受信したチェックサムチェックコード37とが一致しないのでビット化けが発生していると判定することができる。
【0049】
図7(c)はEPCデータ24の部分でビット化けが発生した結果、計算したチェックサムチェックコードが無線タグ2から受信したチェックサムコード37と一致しない場合を示しており、図7(d)は無線タグ2から受信したチェックサムチェックコード37の部分でビット化けが発生した結果、計算したチェックサムチェックコードと一致しない場合を示している。
【0050】
図8(a)は、リーダライタ1が無線タグ2に対してデータを書き込む際に書き込むべきデータを作成するフローチャートである。
まず、ヘッダ付加部32は、データ長PC28、判定種別コード26、EPCデータ24及びチェックサムチェックコード37に対するワード長を計算し、データ長PC28として付加する(132)。次に図3に示した対応表に従って指定された、ビット化け発生の有無の判定方法となる判定種別コード26を付加する(133)。本実施形態では、判定種別コードはX”02”である。次にEPCデータ24を付加し(134)、最後にデータ長PC28、判定種別コード26及びEPCデータ24に対して計算したチェックサムチェックコード37を付加し(135)、書き込むデータの作成が終了する(136)。
【0051】
図8(b)は、リーダライタ1が無線タグ2からの応答データを受信し、ビット化け発生の有無を判定するフローチャートを示している。
【0052】
まず、リーダライタ1は無線タグ2からデータ長PC28を受信し(142)、無線タグ2が応答しようとするデータのワード長を判定する。次に判定種別コード26を受信し、図3の対応表に従い、ビット化け発生の有無の判定の種別を抽出する(143)。次にEPCデータ24を受信(144)した後、データ長PC28、判定種別コード26及びEPCデータ24に対して、チェックサムチェックコードを計算する(145)。その後、チェックサムチェックコード37の受信(146)、CRC16 29を受信(147)した後、CRC16エラーチェックを行う(148)。ここでCRC16エラーが発生した場合は、受信したデータは不当なデータとして処理し(151)、受信を終了する(152)。
【0053】
一方、CRC16エラーがない場合は、計算で求めたチェックサムチェックコードと受信したチェックサムチェックコード37とを比較し(149)、一致する場合は、ビット化けが発生していない正当なデータとして処理し(150)、受信を終了する。チェックサムチェックコードが一致しない場合は、ビット化けが発生した不当なデータとして処理し(151)、受信を終了する。
【0054】
なお、本実施形態においては、データ長PC28と判定種別コード26を別々のワード(2バイト)としているが、両者を同一ワード内に収めても良い。例えば、データ長PC28内に判定種別コード26を含めてしまい、データ長PC28の上位バイトにワード長を示すレングス情報を、下位バイトに判定種別コード26を収めるようにしてもよい。
【0055】
(第3の実施形態)
次に、本発明の第3の実施形態について図9から図11を参照して説明する。第3の実施形態では、全データに対してCRC’16チェックを行うことにより、ビット化け発生の有無を判定する例を示す。ここでCRC’16は、無線タグ2が起動時に自身のメモリ12内のデータに対して計算するCRC16と区別するためにCRC’16と記述している。
【0056】
図9(a)は、無線タグ2のメモリ21のデータ構成を示している。この例では、1ワード(2バイト)単位でデータが記録されており、00h-0Fh番地には、無線タグ2が起動時にデータ長PC28で指定されるワード長のデータに対して計算され、通信時のCRC16エラーチェックに使用されるCRC16 29が格納されている。10h-1Fh番地には自身を含め、判定種別コード26、EPCデータ24及びCRC‘16 47のワード長を示すデータ長PC28が格納される。20h-2Fh番地には、ビット化け発生の有無を判定する判定方法を示す判定種別コード26が格納されている。30h番地以降には、EPC[0]-EPC[N-1]としてNワードのEPCデータ24が格納されており、[N+3]0h-[N+3]Fh番地には、データ長PC28、判定種別コード26及びEPCデータ24のデータに対して、計算されたCRC’16 47が格納されている。
【0057】
このようなデータ構成の下では、リーダライタ1の応答要求、例えば、読出しコマンドに対して、無線タグ2は、図9 (b)のように、プリアンブル33に続き、メモリ21内のデータを返す。
【0058】
図10(a)に、リーダライタ1が無線タグ2にデータを書き込む際のCRC’16 47の生成方法を示す。送信しようとするデータ、すなわち、データ長PC28、判定種別コード26及び、EPCデータ24に対して、公知の技術を用いてCRC’16を生成する。なお、図10に示されているCRC’16は説明上の架空の値であって、計算されたものではない。
【0059】
図10(b)から(d)は、リーダライタ1が無線タグ2のデータを読み取る際の、ビット化け発生の有無の判定方法を示している。図10(b)に示すように、ビット化けが発生していない場合は、受信したデータ、すなわち、データ長PC28、判定種別コード26及び、EPCデータ24に対して計算したCRC’16と、無線タグ2から受信したCRC’16 47とは一致する。
【0060】
一方、受信したデータ、すなわち、データ長PC28、判定種別コード26及びEPCデータ24においてビット化けが発生している場合は、計算したCRC’16と受信したCRC’16 47とが一致しないのでビット化けが発生していると判定することができる。図10(c)はEPCデータ24の部分でビット化けが発生した結果、CRC’16が一致しない場合を示しており、図10(d)は無線タグ2から受信したCRC’16 47の部分でビット化けが発生した結果、CRC’16が一致しない場合を示している。
【0061】
図11(a)は、リーダライタ1が無線タグ2に対してデータを書き込む際に書き込むべきデータを作成するフローチャートである。
【0062】
まず、データ長PC28、判定種別コード26、EPCデータ24及びCRC’16 47に対するワード長を計算し、データ長PC28として付加する(162)。次に図3に示した対応表から指定された判定の種別に従い、ビット化け発生の有無の判定方法となる判定種別コード26を付加する(163)。本実施形態では、判定種別コード26はX”03”である。次にEPCデータ24を付加し(164)、最後にデータ長PC28、判定種別コード26及びEPCデータ24に対して計算したCRC’16を付加し(165)、書き込むデータの作成が完了する(166)。
【0063】
図11(b)は、リーダライタ1が無線タグ2からの応答データを受信し、ビット化け発生の有無を判定するフローチャートを示している。
【0064】
まず、無線タグ2からデータ長PC28を受信し(172)、無線タグ2が応答しようとするデータのワード長を判定する。次に判定種別コード26を受信し(173)、図3の対応表に従い、ビット化け発生の有無の判定方法を選択する。次にEPCデータ24を受信(174)した後、データ長PC28、判定種別コード26及びEPCデータ24に対して、CRC’16を計算する(175)。
【0065】
その後、CRC‘16 47を受信(176)し、CRC16エラーチェックを行う(177)。ここでCRC16エラーが発生した場合は、受信したデータは不当なデータとして処理する(180)。
【0066】
一方、CRC16エラーがない場合は、計算で求めたCRC’16と受信したCRC’16 47とを比較し(178)、一致する場合は、ビット化けが発生していない正当なデータとして処理し(179)、受信を終了する(181)。CRC’16の比較結果で(178)CRC’16が一致しない場合は、ビット化けが発生した不当なデータとして処理し(179)、受信を終了する(181)。
【0067】
(第4の実施形態)
続いて、本発明の第4の実施形態について図12から図14を参照して説明する。第4の実施形態では、1ワード(2バイト)単位でパリティチェックをおこなうことにより、ビット化け発生の有無を判定する例を示す。
【0068】
図12(a)は、無線タグ2のメモリ21のデータ構成を示している。この例では、1ワード(2バイト)単位でデータが記録されており、00h-0Fh番地には、タグが起動時にデータ長PC28で指定されるワード長のデータに対して計算され、通信時のCRC16エラーチェックに使用されるCRC16 29が格納されている。10h-1Fh番地には自身を含め、判定種別コード26、NワードのEPCデータ24[0]−24[N−1]及び、全てのパリティチェックコード57[0]−57[N−1]のワード長を示すデータ長PC28が格納される。20h-2Fh番地には、ビット化け発生の有無を判定する判定方法を示す判定種別コード26が格納されている。30h-3Fh番地にはEPC[0]データが、40h-4Fh番地にはEPC[0]データに対して計算されたパリティチェックコード57[0]が格納されている。以下同様に、[2N+1]0h-[2N+1]Fh番地にはEPC[N-1]データが、[2N+2]0h-[2N+2]Fh番地にはEPC[N-1]データに対して計算されたパリティチェックコード57[N−1]がそれぞれ格納されている。
【0069】
このようなデータ構成の下では、リーダライタ1の応答要求、例えば、読出しコマンドに対して、無線タグ2は、図12(b)のように、プリアンブル25に続き、メモリ21内のデータを出力する。
【0070】
図13(a)に、リーダライタ1が無線タグ2にデータを書き込む際の偶数パリティチェックコード24の生成方法を示す。送信しようとするEPCデータ24の1ワードに対して、値が1であるビットの個数が偶数である場合はパリティチェックコードとして0を、値が1であるビットの個数が奇数である場合はパリティチェックコードとして1をそれぞれパリティチェックコード57として生成する。
【0071】
図13(b)から(d)は、リーダライタ1が無線タグ2のデータを読み取る際の、ビット化け発生の有無の判定方法を示している。
【0072】
図13(b)に示すように、ビット化けが発生していない場合は、受信したEPCデータ24の1ワードに対して計算したパリティチェックコードと、無線タグ2から受信したパリティチェックコード57は一致する。一方、受信したEPCデータ24の1ワードでビット化けが発生している場合は、計算したパリティチェックコードと無線タグ2から受信したパリティチェックコード57が一致しないのでビット化けが発生していると判定することができる。
【0073】
図13(c)はEPデータ24の部分でビット化けが発生した結果、パリティチェックコード57が一致しない場合を示しており、図13(d)は無線タグ2から受信したパリティチェックコード57の部分でビット化けが発生した結果、パリティチェックコードが一致しない場合を示している。
【0074】
図14(a)は、リーダライタ1が無線タグ2に対してデータを書き込む際に書き込むべきデータを作成するフローチャートである。
【0075】
まず、データ長PC28、判定種別コード26、NワードのEPCデータ24[0]−24[n−1]及びEPCデータの各ワードに対するパリティチェックコード57[0]−57[N−1]のワード長を計算し、データ長PC28として付加する(192)。次に図3に示した対応表から指定された判定方法に従い、ビット化け発生の有無の判定方法となる判定種別コード26を付加する(193)。
【0076】
次にEPCデータ1ワード24[0]を付加し(194)、このEPCデータ1ワード24[0]に対して計算したパリティチェックコード57[0]を付加(195)していく。これをEPCデータの全てのワードに対して繰り返す(196)と、データの作成が完了する(197)。
【0077】
図14(b)は、リーダライタ1が無線タグ2からの応答データを受信し、ビット化け発生の有無を判定するフローチャートを示している。
【0078】
まず、データ長PC28を受信し(202)、無線タグ2が応答しようとするデータのワード長を判定する。次に判定種別コード26を受信し(203)、図3の対応表に従い、ビット化け発生の有無の判定方法を選択する。
【0079】
次にEPCデータの1ワード24[0]を受信(204)した後、このEPCデータ1ワード24[0]に対して、パリティチェックコードを計算する(205)。次にパリティチェックコード57[0]を受信し(206)、先に計算で求めたパリティチェックコードと受信したパリティチェックコード57[0]とを比較し(207)、一致する場合は、ビット化けが発生していない正当なデータとして判定して、次のEPCデータの1ワードを受信する(204)。一方、(207)での比較の結果、パリティチェックコードが一致しない場合は、ビット化けが発生した不当なデータとして処理し(209)、受信を終了する(210)。
【0080】
これを受信すべきEPCデータの全てのワード数に相当する回数だけ繰り返し(208)、最後にCRC16 29を受信(211)した後、CRC16エラーチェックを行う(212)。ここでCRC16エラーが発生した場合は、受信したデータは不当なデータとして処理する(209)。一方、CRC16エラーがない場合は、ビット化けが発生していない正当なデータとして処理し(213)、受信を終了する(210)。
【0081】
なお、本実施形態では1ワード(2バイト)単位でパリティチェックコードを付加しておき、受信時にこれをチェックする例を示しているが、1ワード単位ではなく、数ワード単位で行っても良い。また、1ワードのバイト数も2バイトに限定されない。
【0082】
(第5の実施形態)
続いて、本発明の第5の実施形態について図15から図17を参照して説明する。第5の実施形態は1ワード(2バイト)単位でチェックサムチェックをおこなうことにより、ビット化け発生の有無を判定する例を示す。
【0083】
図15(a)は、無線タグ2のメモリ21のデータ構成を示している。この例では、1ワード(2バイト)単位でデータが記録されており、00h-0Fh番地には、無線タグ2の起動時にデータ長PC28で指定されるワード長のデータに対して計算され、通信時のCRC16エラーチェックに使用されるCRC16が格納されている。10h-1Fh番地には自身を含め、判定種別コード26、全てのEPCデータ24[0]−24[N−1]及び全てのチェックサムチェックコード67[0]−67[N−1]のワード長を示すデータ長PC28が格納される。20h-2Fh番地には、ビット化け発生の有無を判定する判定方法を示す判定種別コード26が格納されている。
【0084】
30h-3Fh番地には1ワード目のEPCデータ24[0]が、40h-4Fh番地には1ワード目のEPCデータ24[0]に対して計算されたチェックサムチェックコード67[0]がそれぞれ格納されている。以下同様に、[2N+1]0h-[2N+1]Fh番地にはNワード目のEPCデータ24[N-1]が、[2N+2]0h-[2N+2]Fh番地にはNワード目のEPCデータ24[N-1]に対して計算されたチェックサムチェックコード67[N-1]がそれぞれ格納されている。
【0085】
このようなデータ構成の下では、リーダライタ1の応答要求、例えば、読出しコマンドに対して、無線タグ2は、図15(b)のように、プリアンブル25に続き、メモリ21内のデータを出力する。
【0086】
図16(a)に、リーダライタ1が無線タグ2にデータを書き込む際のチェックサムチェックコードの生成方法を示す。送信しようとするEPCデータの1ワードに対して、値が1であるビットの個数を加算し、この値をチェックサムチェックコード67[N-1]として生成する。
【0087】
図16(b)から(d)は、リーダライタ1が無線タグ2のデータを読取る際の、ビット化け発生の有無の判定方法を示している。図16(b)に示すように、ビット化けが発生していない場合は、受信したEPCデータ24の1ワードに対して計算したチェックサムチェックコードと、無線タグ2から受信したチェックサムチェックコード67[N-1]は一致する。一方、受信したEPCデータ24の1ワードでビット化けが発生している場合は、計算したチェックサムチェックコードと無線タグ2から受信したチェックサムチェックコード67[N-1]とが一致しないのでビット化けが発生していると判定することができる。
【0088】
図16(c)はEPCデータ24の部分でビット化けが発生した結果、チェックサムチェックコードが一致しない場合を示しており、図16(d)は無線タグ2から受信したチェックサムチェックコード67[N-1]の部分でビット化けが発生した結果、チェックサムチェックが一致しない場合を示している。
【0089】
図17(a)は、リーダライタ1が無線タグ2に対してデータを書き込む際に書き込むべきデータを作成するフローチャートである。
【0090】
まず、データ長PC28、判定種別コード26、全てのEPCデータ24[0]−24[N−1]及びそれぞれのEPCデータ24[0]−24[N−1]に対するチェックサムチェックコード67[0]−67[N−1]のワード長を計算し、データ長PC28として付加する(312)。次に図3に示した対応表から指定された判定種別に従い、ビット化け発生の有無の判定方法となる判定種別コード26を付加する(313)。
【0091】
次にEPCデータの1ワードを付加し(314)、このEPCデータの1ワードに対して計算したチェックサムチェックコードを付加していく(315)。これを全てのワード数に対して繰り返すと(316)、データの作成が完了する(317)。
【0092】
図17(b)は、リーダライタ1が無線タグ2からの応答データを受信し、ビット化けの発生の有無を判定するフローチャートを示している。
【0093】
まず、データ長PC28を無線タグ2から受信し(322)、無線タグ2が応答しようとするデータのワード長を判定する。次に判定種別コード26を受信し(323)、図3の対応表に従い、ビット化け発生の有無の判定方法を選択する。次にEPCデータ24の1ワードを受信(324)した後、このEPCデータ24の1ワードに対して、チェックサムチェックコードを計算する(325)。次に無線タグ2からチェックサムチェックコードを受信し(326)、計算で求めたチェックサムチェックコードと無線タグ2から受信したチェックサムチェックコードとを比較し(327)、一致する場合は、次のEPCデータ24の1ワードを受信する(324)。
【0094】
一方、(327)の比較の結果、チェックサムチェックコードが一致しない場合は、ビット化けが発生した不当なデータとして処理し(328)、受信を終了する(329)。
これを受信すべきEPCデータ全てのワードに相当する回数だけ繰り返し(330)、最後にCRC16を受信(331)した後、CRC16エラーチェックを行う(332)。ここでCRC16エラーが発生した場合は、受信したデータは不当なデータとして処理する(328)。一方、CRC16エラーがない場合は、ビット化けが発生していない正当なデータとして処理し(333)、受信を終了する。
【0095】
なお、本実施形態でも1ワード(2バイト)単位でチェックサムチェックコードを付加しておき、受信時にこれをチェックする例を示しているが、1ワード単位ではなく、数ワード単位で行っても良い。また1ワードのバイト数も2バイトに限定されるものではない。
【0096】
(第6の実施形態)
さらに、本発明の第6の実施形態について図18から図20を参照して説明する。第6の実施形態は、1ワード(2バイト)単位でCRC’16チェックを行うことにより、ビット化け発生の有無を判定する例を示す。
【0097】
ここでCRC’16は、無線タグ2の起動時に自身のメモリ21内のデータに対して計算するCRC16と区別するためにCRC’16と記述している。
【0098】
図18(a)は、無線タグ2のメモリ21のデータ構成を示している。この例では、1ワード(2バイト)単位でデータが記録されており、00h-0Fh番地には、無線タグ2の起動時にデータ長PC28で指定されるワード長のデータに対して計算され、通信時のCRC16エラーチェックに使用されるCRC16 29が格納されている。10h-1Fh番地には自身を含め、判定種別26、EPCデータ24[0]−24[N−1]及び、CRC’16 77[0]−77[N−1]のワード長を示すデータ長PC28が格納される。20h-2Fh番地には、ビット化け発生の有無を判定する判定方法を示す判定種別コード26が格納されている。30h-3Fh番地には1ワード目のEPCデータ[0]が、40h-4Fh番地には1ワード目のEPCデータ[0]に対して計算されたCRC’16 77[0]がそれぞれ格納されている。以下同様に、[2N+1]0h-[2N+1]Fh番地にはNワード目のEPCデータ[N-1]が、[2N+2]0h-[2N+2]Fh番地にはNワード目のEPCデータ[N-1]に対して計算されたCRC’16 77[N-1]が格納されている。
【0099】
このようなデータ構成の下では、リーダライタ1の応答要求、例えば、読出しコマンドに対して、無線タグ2は、図18(b)のように、プリアンブル25に続き、メモリ21内のデータを出力する。
【0100】
図19(a)に、リーダライタ1が無線タグ2にデータを書き込む際のCRC’16の生成方法を示す。送信しようとするEPCデータの1ワードに対して、CRC’16を計算する。
【0101】
図19(b)から(d)は、リーダライタ1が無線タグ2のデータを読み取る際の、ビット化け発生の有無の判定方法を示している。図19(b)に示すように、ビット化けが発生していない場合は、受信したEPCデータの1ワードに対して計算したCRC’16と、受信したCRC’16は一致する。一方、受信したEPCデータの1ワードでビット化けが発生している場合は、計算したCRC’16と受信したCRC’16とが一致しないのでビット化けが発生していると判定することができる。
【0102】
図19(c)はEPCデータの部分でビット化けが発生した結果、CRC’16が一致しない場合を示しており、図19(d)は無線タグ2から受信したCRC’16の部分でビット化けが発生した結果、CRC’16が一致しない場合を示している。
【0103】
図20(a)は、リーダライタ1が無線タグ2に対してデータを書き込む際に書き込むべきデータを作成するフローチャートである。
【0104】
まず、データ長PC28、判定種別コード26、EPCデータ24[0]−24[N−1]及びCRC’16 77[0]−77[N−1]に対するワード長を計算し、データ長PC28として付加する(342)。次に図3に示した対応表から指定された判定種別に従い、ビット化け発生の有無の判定方法となる判定種別コード26を付加する(343)。次にEPCデータの1ワードを付加し(344)、次にこのEPCデータの1ワードに対して計算したCRC’16 を付加していく(345)。これを全てのワード数に対して繰り返す(346)と、データの作成が完了する(347)。
【0105】
図20(b)は、リーダライタ1が無線タグ2からの応答データを受信し、ビット化けの発生の有無を判定するフローチャートを示している。
【0106】
まず、データ長PC28を受信し(352)、無線タグ2が応答しようとするデータのワード長を判定する。次に判定種別コード26を受信し、図3の対応表に従い、ビット化け発生の有無の判定方法を選択する。次にEPCデータの1ワードを受信(354)した後、このEPCデータの1ワードに対して、CRC’16を計算する(355)。
【0107】
次に無線タグ2からCRC’16を受信し、計算で求めたCRC’16と受信したCRC’16とを比較し(357)、一致する場合は、ビット化けが発生していない正当なデータとして判定して、次のEPCデータの1ワードを受信する(354)。一方、(357)の比較の結果、CRC’16が一致しない場合は、ビット化けが発生した不当なデータとして処理し(358)、受信を終了する(359)。
【0108】
これを受信すべき全てのワードに相当する回数だけ繰り返し(360)、最後にCRC16を受信(361)した後、CRC16エラーチェックを行う(362)。ここでCRC16エラーが発生した場合は、受信したデータは不当なデータとして処理する(358)。一方、CRC16エラーがない場合は、ビット化けが発生していない正当なデータとして処理し(363)、受信を終了する(359)。
【0109】
なお、本実施形態では1ワード(2バイト)単位でCRC’16を付加しておき、受信時にこれをチェックする例を示しているが、1ワード単位ではなく、数ワード単位で行っても良い。また、1ワードのバイト数も2バイトに限定されるものではない。
【0110】
(第7の実施形態)
次に、本発明の第7の実施形態について図21から図23を参照して説明する。第7の実施形態は、データをミラーリングし、ミラーデータチェックにより、ビット化け発生の有無を判定する例を示す。
【0111】
図21(a)は、無線タグ2のメモリ21のデータ構成を示している。この例では、1ワード(2バイト)単位でデータが記録されており、00h-0Fh番地には、無線タグ2の起動時にデータ長PC28で指定されるワード長のデータに対して計算され、通信時のCRC16エラーチェックに使用されるCRC16 29が格納されている。10h-1Fh番地には自身を含め、判定種別コード26、全てのEPCデータ24[0]−24[N−1]及び全てのミラーデータ(以下EPC’データという)87[0]−87[N−1]のワード長を示すデータ長PC28が格納される。20h-2Fh番地には、ビット化け発生の有無を判定する判定方法を示す判定種別コード26が格納されている。
【0112】
30h-[N+2]Fh番地にはNワードのEPCデータ24[0]−24[N−1]51が格納されており、[N+3]0h-[2N+2]Fh番地にはEPCデータと同一のデータであるNワードのミラーデータ(EPC’データ)87[0]−87[N−1]が格納されている。
【0113】
このようなデータ構成の下では、リーダライタ1の応答要求、例えば、読出しコマンドに対して、無線タグ2は、図21(b)のように、プリアンブル25に続き、メモリ21内のデータを出力する。
【0114】
図22(a)に、リーダライタ1が無線タグ2にデータを書き込む際のミラーデータの生成方法を示す。送信しようとするNワードのEPCデータに対して、EPCデータと同一のNワードのEPC’データをミラーデータとして生成する。
【0115】
図22(b)から(d)は、リーダライタ1が無線タグ2のデータを読み取る際の、ビット化け発生の有無の判定方法を示している。
【0116】
図22(b)に示すように、ビット化けが発生していない場合は、受信したEPCデータ24と、受信したEPC’データ87とは一致する。一方、受信したEPCデータ24でビット化けが発生している場合は、無線タグ2から受信したEPCデータ23とEPC‘データの両者が一致しないのでビット化けが発生していると判定することができる。
【0117】
図22(c)はEPCデータ24の部分でビット化けが発生した結果、EPCデータ24とEPC‘データ87の両者が一致しない場合を示しており、図22(d)はEPC‘データ87の部分でビット化けが発生した結果、EPCデータ24とEPC‘データ87の両者が一致しない場合を示している。
【0118】
図23(a)は、リーダライタ1が無線タグ2に対してデータを書き込む際に書き込むべきデータを作成するフローチャートである。
【0119】
まず、データ長PC28、判定種別コード26、EPCデータ24及び51とEPC‘データ87に対するワード長を計算し、データ長PC28として付加する(372)。次に図3に示した対応表から指定された判定種別に従い、ビット化け発生の有無の判定方法となる判定種別コード26を付加する(373)。
【0120】
次にEPCデータ24を付加し(374)、続いて、ミラーデータとなるEPC’データ87を付加して(375)データの作成が完了する(376)。
【0121】
図23(b)は、リーダライタ1が無線タグ2からの応答データを受信し、ビット化けの発生の有無を判定するフローチャートを示している。
【0122】
まず、データ長PC28を受信し(382)、無線タグ2が応答しようとするデータのワード長を判定する。次に判定種別コード26を受信し(383)、図3の対応表に従い、ビット化け発生の有無の判定方法を選択する。次にEPCデータ24を受信(384)した後、続いて、ミラーデータであるEPC‘データ87を受信し(385)、最後にCRC16を受信する。(386)
【0123】
無線タグ2からCRC16まで受信すると、CRC16エラーチェックを行う(387)。ここでCRC16エラーが発生した場合は、受信したデータは不当なデータとして処理する(388)。一方、CRC16エラーがない場合は、EPCテータ24とEPC‘データ87の両者を比較し(389)、一致する場合は、ビット化けが発生していない正当なデータとして処理し(390)、受信を終了する(391)。一方、EPCデータ24とEPC‘データ87の両者が一致しない場合は、ビット化けが発生した不当なデータとして処理し(388)、受信を完了する。ここで、上記実施形態においては、データ長PC28と判定種別コード26を別々のワード(2バイト)としているが、両者を同一ワード内に収めても良く、例えば、データ長PC28内に判定種別コード26を含めてしまい、データ長PC28の上位バイトにワード長を示すデータのレングス情報、下位バイトに判定種別コードを収めるようにしてもよい。
【0124】
さらに、判定種別コードとして、X”00”にすれば、ビット化け発生の有無の判定を行わない従来の通信方式とすることも可能である。
【0125】
以上説明した少なくとも一つの実施の形態の無線タグ書込装置、無線タグ読取装置、無線タグ書込方法、無線タグ読取方法及び無線タグによれば、無線タグのメモリでビット化けが発生した場合、ビット化けしたデータを不当なデータとして判定することが可能となる。
【0126】
本発明の実施形態を説明したが、この実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行なうことができる。この実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0127】
1 リーダライタ
2 無線タグ
10 制御部
11 CPU(中央演算処理部)
12 メモリ
20 送信部
21 レングス
22 PCヘッダ付加部
23 判定種別ヘッダ付加部
24 パリティ
25 CRC’16
26 送信部側の増幅部
27 アンテナ
28 プリアンブル
29 Ackコマンド
30 チェックサム
31 ミラーデータ
32 ビット化け判定用データ付加部
33 符号化部
34 変調部
35 EPC’
37 チェックサムチェックコード
40 受信部
41 無線タグからの応答信号を受信するアンテナ
42 復調部
43 受信部側の増幅部
44 ベースバンドから無線タグの応答データを復号部
45 無線タグのデータの長さを判定するPCヘッダ判定部
46 判定種別ヘッダ付加部指定部
47 CRC‘16
48 CRC判定部
49 判定種別ヘッダ付加部ヘッダ判定部
50 ビット化け判定部
51 EPC

【特許請求の範囲】
【請求項1】
データを記憶するメモリを備える無線タグと通信を行い、無線タグにデータを書込む無線タグ書込装置において、
当該無線タグが取付けられるオブジェクトを識別するための識別コードが前記メモリ内でビット化けを起こしていないかを確認するための判定の種別を表す判定種別コードと、前記識別コードをその判定の種別によって生成した結果のチェックコードとを前記識別コードに付加する手段と、
この付加手段で付加された判定種別コード、識別コード及びチェックコードを前記無線タグに送信する手段と、
を有することを特徴とする無線タグ書込装置。
【請求項2】
データを記憶するメモリを備える無線タグと通信を行い、無線タグにデータを書込む無線タグ書込装置において、
当該無線タグが取付けられるオブジェクトを識別するための識別コードが前記メモリ内でビット化けを起こしていないかを確認するための判定の種別を表す判定種別コードと、前記識別コード、前記判定種別コード及びこれらのコードの長さを表す長さ情報を前記判定の種別によって生成した結果のチェックコードとを前記識別コードに付加する手段と、
この付加手段で付加された長さ情報、判定種別コード、識別コード及びチェックコードを前記無線タグに送信する手段と、
を有することを特徴とする無線タグ書込装置。
【請求項3】
前記判定の種別は、パリティチェック、チェックサムチェック、CRCチェック、ミラーデータチェックのいずれかであることを特徴とする請求項1または請求項2記載の無線タグ書込装置。
【請求項4】
データを記憶するメモリを備える無線タグと通信を行い、無線タグからデータを読取る無線タグ読取装置において、
無線タグから、当該無線タグが取付けられているオブジェクトを識別するための識別コード、この識別コードが前記メモリ内でビット化けを起こしていないかを確認するための判定の種別を表す判定種別コード及び前記識別コードをその判定の種別によって生成した結果のチェックコードを読出す読出手段と、
この読出手段で読出した判定種別コードで表される判定種別に基づいて前記読出手段で読出した識別コードからチェックコードを生成するチェックコード生成手段と、
この生成手段で生成したチェックコードと、前記読出手段で読出したチェックコードとを比較することにより識別コードの正当性を判定する判定手段と、
を有することを特徴とする無線タグ読取装置。
【請求項5】
データを記憶するメモリを備える無線タグと通信を行い、無線タグからデータを読取る無線タグ読出装置において、
無線タグから、当該無線タグが取付けられているオブジェクトを識別するための識別コード、この識別コードが前記メモリ内でビット化けを起こしていないかを確認するための判定の種別を表す判定種別コード、前記識別コードをその判定の種別によって生成した結果のチェックコード及びこれらのコードの長さを表す長さ情報を読出す読出手段と、
この読出手段で読出した判定種別コードで表される判定種別に基づいて前記読出手段で読出した識別コード及び長さ情報からチェックコードを生成するチェックコード生成手段と、
この生成手段で生成したチェックコードと、前記読出手段で読出したチェックコードとを比較することにより識別コードの正当性を判定する判定手段と、
を有することを特徴とする無線タグ読取装置。
【請求項6】
前記判定の種別は、パリティチェック、チェックサムチェック、CRCチェック、ミラーデータチェックのいずれかであることを特徴とする請求項4または請求項5記載の無線タグ読取装置。
【請求項7】
データを記憶するメモリを備える無線タグと通信を行い、無線タグにデータを書込む方法であって、
無線タグが取付けられるオブジェクトを識別するための識別コードが前記メモリ内でビット化けを起こしていないかを確認するための判定の種別を指定し、
指定された判定の種別に基づいて前記識別コードからチェックコードを生成し、
前記指定された判定の種別を表す判定種別コードと、前記生成されたチェックコードとを前記識別コードに付加して前記無線タグに送信する
ことを特徴とする無線タグ書込方法。
【請求項8】
データを記憶するメモリを備える無線タグと通信を行い、無線タグからデータを読取る方法であって、
無線タグから、当該無線タグが取付けられているオブジェクトを識別するための識別コード、この識別コードが前記メモリ内でビット化けを起こしていないかを確認するための判定の種別を表す判定種別コード及び前記識別コードをその判定の種別によって生成した結果のチェックコードを読出し、
この読出した判定種別コードで表される判定種別に基づいて前記読出した識別コードからチェックコードを生成し、
この生成したチェックコードと、前記読出したチェックコードとを比較して識別コードの正当性を判定する、
ことを特徴とする無線タグ読取方法。
【請求項9】
当該無線タグが取付けられるオブジェクトを識別するための識別コードと、この識別コードがビット化けを起こしていないかを確認するための判定の種別を表す判定種別コードと、前記識別コードをその判定の種別によって生成した結果のチェックコードとを記憶したメモリと、
外部からの読出し要求に応答して前記メモリに記憶した識別コード、判定種別コード及びチェックコードを出力する出力手段と、
を有することを特徴とする無線タグ。

【図1a】
image rotate

【図1b】
image rotate

【図2a】
image rotate

【図2b】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5a】
image rotate

【図5b】
image rotate

【図6a】
image rotate

【図6b】
image rotate

【図7】
image rotate

【図8a】
image rotate

【図8b】
image rotate

【図9a】
image rotate

【図9b】
image rotate

【図10】
image rotate

【図11a】
image rotate

【図11b】
image rotate

【図12a】
image rotate

【図12b】
image rotate

【図13】
image rotate

【図14a】
image rotate

【図14b】
image rotate

【図15a】
image rotate

【図15b】
image rotate

【図16】
image rotate

【図17a】
image rotate

【図17b】
image rotate

【図18a】
image rotate

【図18b】
image rotate

【図19】
image rotate

【図20a】
image rotate

【図20b】
image rotate

【図21a】
image rotate

【図21b】
image rotate

【図22】
image rotate

【図23a】
image rotate

【図23b】
image rotate

【図24a】
image rotate

【図24b】
image rotate

【図25】
image rotate


【公開番号】特開2012−68769(P2012−68769A)
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願番号】特願2010−211457(P2010−211457)
【出願日】平成22年9月21日(2010.9.21)
【出願人】(000003562)東芝テック株式会社 (5,631)
【Fターム(参考)】