(58)【調査した分野】(Int.Cl.,DB名)
上位装置とデータの送受信を行うインターフェイス部と、非接触IC媒体と非接触通信を行う無線通信部を有し、前記無線通信部からのポーリングにより非接触IC媒体を認識すると、非接触IC媒体から内蔵IC種別情報と応答時間情報とからなる製品特定情報を受信するリーダーライターにおいて、
内蔵IC種別情報と一対一に対応し、非接触IC媒体から受信する応答時間情報とは異なる疑似応答時間情報を複数記憶するテーブルを有し、
非接触IC媒体から受信する製品特定情報に含まれる応答時間情報と、前記テーブルに記憶されている疑似応答時間情報とが同じフォーマットであることを特徴とするリーダーライター装置。
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来のリーダーライター装置では、非接触IC媒体から取得される製造パラメータに基づいて、求められるタイムアウト時間が、このように求められるタイムアウト時間は余裕を多く含む時間として設定されている。コマンドのリトライはこのタイムアウト時間を待って行われるが、タイムアウト時間が必要以上に長いので、リトライの回数が制限されてしまい、従来のリーダーライター装置においては、非接触IC媒体との間の通信のチャンスが減ってしまい、通信の成功率が減少してしまう、という問題があった。
【課題を解決するための手段】
【0007】
このような課題を解決するために、請求項1に係る発明は、上位装置とデータの送受信を行うインターフェイス部と、非接触IC媒体と非接触通信を行う無線通信部を有し、前記無線通信部からのポーリングにより非接触IC媒体を認識すると、非接触IC媒体から内蔵IC種別情報と応答時間情報とからなる製品特定情報を受信するリーダーライターにおいて、内蔵IC種別情報と一対一に対応し、非接触IC媒体から受信する応答時間情報とは異なる疑似応答時間情報を複数記憶するテーブルを有
し、非接触IC媒体から受信する製品特定情報に含まれる応答時間情報と、前記テーブルに記憶されている疑似応答時間情報とが同じフォーマットであることを特徴とする。
【0008】
また、請求項2に係る発明は、請求項1に記載のリーダーライター装置において、製品
特定情報を受信すると、受信した内蔵IC種別情報が前記テーブルに記憶されているか否かを判定し、受信した内蔵IC種別情報が前記テーブルに記憶されていると判定されると、前記テーブルに記憶されている疑似応答時間情報に基づいて、装置が発行するコマンドに対するタイムアウト時間を演算することを特徴とする。
【0009】
また、請求項3に係る発明は、請求項2に記載のリーダーライター装置において、疑似応答時間情報に加えコマンド種別情報にも基づいてタイムアウト時間の演算を行うことを特徴とする。
【0010】
また、請求項4に係る発明は、請求項1乃至
請求項3のいずれか1項に記載のリーダーライター装置において、前記テーブル
に記憶されている疑似応答時間情報が、上位装置から送信される情報に基づいて書き込まれることを特徴とする。
【0011】
また、請求項5に係る発明は、請求項1乃至
請求項3のいずれか1項に記載のリーダーライター装置において、前記テーブル
に記憶されている疑似応答時間情報が、非接触IC媒体から受信する情報に基づいて書き込まれることを特徴とする。
【0012】
また、請求項6に係る発明は、請求項1乃至
請求項5のいずれか1項に記載のリーダーライター装置において、前記テーブル
に記憶されている疑似応答時間情報は、接続される上位装置に応じて変更することを特徴とする。
【0013】
また、請求項7に係る発明は、請求項1乃至
請求項6のいずれか1項に記載のリーダーライター装置において、前記疑似応答時間情報は、装置が発行するコマンド毎に設定されることを特徴とする。
【0014】
また、請求項8に係る発明は、請求項1乃至
請求項7のいずれか1項に記載のリーダーライター装置において、前記テーブルに記憶されている疑似応答時間情報は、装置が発行するコマンドの引数に応じて定義されることを特徴とする。
【0015】
また、請求項9に係る発明は、
請求項8に記載のリーダーライター装置において、コマンドの引数が、当該コマンドでアクセスする非接触IC媒体の記憶エリアの属性に基づくことを特徴とする。
【0016】
また、請求項10に係る発明は、
請求項8又は
請求項9に記載のリーダーライター装置において、コマンドの引数が、当該コマンドでアクセスする非接触IC媒体のブロック数に基づくことを特徴とする。
【0017】
また、請求項11に係る発明は、
請求項8乃至
請求項10のいずれか1項に記載のリーダーライター装置において、前記テーブル
に記憶されている疑似応答時間情報が、上位装置から送信される情報に基づいて書き込まれることを特徴とする。
【0018】
また、請求項12に係る発明は、
請求項8乃至
請求項10のいずれか1項に記載のリーダーライター装置において、前記テーブル
に記憶されている疑似応答時間情報が、非接触IC媒体から受信する情報に基づいて書き込まれることを特徴とする。
【発明の効果】
【0020】
本発明に係るリーダーライター装置では、内蔵IC種別情報と一対一に対応し、非接触IC媒体から受信する応答時間情報とは異なる疑似応答時間情報を複数記憶するテーブルを有しており、このテーブルの疑似応答時間情報に基づいてタイムアウト時間が求められると、より適切な値を求めることができる。このような本発明に係るリーダーライター装置によれば、タイムアウト時間は必要以上には長くない適切な値であるので、リトライの回数を従来より増やすことが可能となり、通信の成功率が向上する。
【発明を実施するための形態】
【0022】
以下、本発明の実施の形態を図面を参照しつつ説明する。
図1は本発明の実施形態に係るリーダーライター装置100の利用形態を説明する図である。
【0023】
図1(A)は上位装置10である改札機にリーダーライター装置100が内蔵され、内蔵されたリーダーライター装置100が、ICカードに含まれる非接触IC媒体200と非接触で無線通信する様子を示しており、
図1(B)はこれに対応するブロック構成を示す図である。
【0024】
リーダーライター装置100と接続される上位装置10として用い得る得るものは、改札機に限らず、券売機、レジスター、パーソナルコンピューターなどを挙げることができる。リーダーライター装置100には、上位装置10との間でデータの送受を可能とするインターフェイス部(
図1には不図示)と、非接触IC媒体200との間で非接触での無
線データ通信を可能とする無線通信部(
図1には不図示)と、CPU、RAM、ROM、不揮発性メモリなどからなるデータ処理部(
図1には不図示)とを有しており、上位装置10からの命令に基づいて、非接触IC媒体200に書き込まれたデータを読み取ったり、非接触IC媒体200に対してデータを書き込んだりする。
【0025】
リーダーライター装置100が非接触IC媒体200に書き込まれたデータを読み取ったり、非接触IC媒体200に対してデータを書き込んだりするにあたっては、リーダーライター装置100から非接触IC媒体200に対して、種々のコマンドが発行され、このコマンドにより指定される処理が、非接触IC媒体200内で実行されるようになっている。
【0026】
非接触IC媒体200は、リーダーライター装置100との間でデータの送受と受電を行うアンテナと、このアンテナから得られる電力に基づき動作するデータ処理部、メモリ部(いずれも不図示)などから構成されている。メモリ部には、リーダーライター装置100から送信されるコマンドに基づいて書き換えることが可能なエリアと、それぞれの非接触IC媒体200に固有のID情報などが書き込まれ、リーダーライター装置100から書き換え不可能なエリアとが存在する。
【0027】
上記のようなリーダーライター装置100及び非接触IC媒体200としては、FeliCa(商標)に代表される非接触通信システムのものを用いることが可能である。
【0028】
ここで、上位装置10、リーダーライター装置100、非接触IC媒体200との間における基本的な一連の動作の流れを
図2に基づいて、説明する。
【0029】
ステップS1で上位装置10からリーダーライター装置100に対してポーリング実行命令が発せられると、リーダーライター装置100で定期的にポーリングを実行する。このようなポーリング(ステップS2)時、通信可能な範囲に非接触IC媒体200が存在する場合には、これに呼応するように非接触IC媒体200はリーダーライター装置100に対してレスポンスデータを返信する(ステップS3)。
【0030】
レスポンスデータを受信したリーダーライター装置100は、非接触IC媒体200からレスポンスがあったことを上位装置10に報告する。これに対応して、上位装置10はリーダーライター装置100に所定のコマンド(この例では、リードコマンド)を発行させるべくコマンド実行命令を発する(ステップS5)。
【0031】
これに応じる形で、リーダーライター装置100は、非接触IC媒体200に対して、リードコマンドを発行する。これを受信した非接触IC媒体200は、所定の処理を行った上で、レスポンスデータを返信する(ステップS7)。このレスポンスについては、リーダーライター装置100から上位装置10に対して、ステップS8で報告される。
【0032】
ここで、従来例に係るリーダーライター装置によるコマンドリトライの動作の流れについて
図3を参照して説明する。
図3においては、ステップS1からステップS5までの流れは
図2のものと同様である。
【0033】
ステップSS6−1で、リーダーライター装置100はコマンド実行命令を受けて、非接触IC媒体200に対してリードコマンドを発行するが、
図3の例では、非接触IC媒体200との通信が行えず、ステップS6−2からステップS6−nまでリトライを行っている。
【0034】
一方、上位装置10は、リーダーライター装置100に対して、ステップS5でリード
実行命令を発した後、リーダーライター装置100からレスポンスの報告がないと、時間Ts経過後にリード中止命令を発し、リーダーライター装置100によるリードコマンドの発行を中止させる。
【0035】
リーダーライター装置100が、コマンドを発行した後、リトライで次のコマンドを発行するまでの時間であるタイムアウト時間Toは、非接触IC媒体200のポーリングに対するレスポンスデータに基づいて決定されるようになっている。
【0036】
図4は非接触IC媒体200のポーリングに対するレスポンスデータの構造を示す図であり、また、
図5は従来のタイムアウト時間To決定方法の概念図である。
【0037】
非接触IC媒体200からポーリングに対するレスポンスデータには、8バイトからなる「製品特定情報」が含まれている。
【0038】
上記「製品特定情報」のうちD8、D9の2バイトは非接触IC媒体200に用いられているIC(CPU、メモリ)に関する情報(内蔵IC種別情報)であり、「製品特定情報」のうちD10、D11、D12、D13、D14、D15の6バイトは、非接触IC媒体200の応答時間に関する情報である。
【0039】
この応答時間情報は、リーダーライター装置100が非接触IC媒体200に対して、コマンドを発行した後、リトライで次のコマンドを発行するまでの時間であるタイムアウト時間Toを規定している。このように、非接触IC媒体200は自らのレスポンス性能に関する情報を、ポーリングに対するレスポンス時にリーダーライター装置100に対して返送するようになっている。
【0040】
なお、リーダーライター装置100が発行するコマンドC
1、C
2に対しては、D10の情報が利用され、リーダーライター装置100が発行するコマンドC
4、C
5に対しては、D11の情報が利用されるように設定されている。すなわち、リーダーライター装置100が発行する複数のコマンドに対応して、1バイト分の情報が割り当てられている。
【0041】
次に、リーダーライター装置100側で、ポーリングに対するレスポンスデータを非接触IC媒体200から受領したときにおけるタイムアウト時間Toを決定する方法について、
図5の機能ブロック図を参照して説明する。
【0042】
製品特定情報取得部110で取得された「製品特定情報」は、タイムアウト時間演算部150に入力される。一方、コマンド情報種別取得部120で取得されたリーダーライター装置100が発行しようとしているコマンドの種別が同じくタイムアウト時間演算部150に入力される。
【0043】
タイムアウト時間演算部150は、入力されたコマンドの種別(例えば、コマンドC
1
)に応じて、「製品特定情報」から演算に必要となる応答時間情報(例えば、D10)を選定して、これに基づいて、所定の演算式によりタイムアウト時間Toを演算する。タイムアウト時間演算部150で演算されたタイムアウト時間Toは、無線通信部160において、コマンドのリトライのために利用される。
【0044】
ところで、このような非接触IC媒体200から受領した応答時間情報に基づいて演算されるタイムアウト時間Toは余裕を多く含む時間として設定されている。
【0045】
一方、上位装置10は、リーダーライター装置100からレスポンスの報告がないと、時間Ts経過後にリード中止命令を発し、リーダーライター装置100によるリードコマ
ンドの発行を中止させるようになっているので、タイムアウト時間Toが長いと、時間Tsの間に発行できるリトライコマンドの回数が制限されてしまうこととなる。このように、従来のリーダーライター装置においては、非接触IC媒体200との間の通信のチャンスが減ってしまい、通信の成功率が減少してしまう、という問題があった。
【0046】
次に、本発明の第1実施形態について説明する。
図6は本発明の第1実施形態に係るリーダーライター装置100におけるタイムアウト時間To決定方法の概念図であり、
図7は本発明の第1実施形態に係るリーダーライター装置100で用いるデータテーブルの構造を説明する図である。
【0047】
本発明に係るリーダーライター装置100においては、基本的にはポーリングに対するレスポンスデータに含まれる正規の応答時間情報を利用せず、これに代わる疑似応答時間情報を利用してタイムアウト時間Toを決定する。この疑似応答時間情報は、非接触IC媒体200から受信する応答時間情報とは異なるものであり、この疑似応答時間情報に基づいて、タイムアウト時間演算部150においてタイムアウト時間Toを演算すると、演算されるタイムアウト時間Toが正規の応答時間情報を利用する場合に比べて、短くなるようなデータが疑似応答時間情報に設定されている。
【0048】
非接触IC媒体200の応答時間は、非接触IC媒体200に用いられているIC(CPU、メモリ)の性能に基づく処理時間によって決まるものであるので、本発明においては、非接触IC媒体200の内蔵IC種別情報と一対一に対応した疑似の応答時間情報を
図7に示すような形式でリーダーライター装置100内の不揮発性メモリ(不図示)にデータテーブルとして保持するようにしている。
【0049】
図7に示すように、データテーブルに記憶される疑似応答時間情報のフォーマットは、非接触IC媒体200から返信される正規の応答時間情報と同様となっている。
【0050】
次に、本発明の第1実施形態に係るリーダーライター装置100が、上記のようなデータテーブルを用いて、タイムアウト時間Toを決定する方法について説明する。
【0051】
製品特定情報取得部110で「製品特定情報」が取得されると、続いて、リーダーライター装置100のデータ処理部(不図示)は
図8に示すフローチャートを実行する。
【0052】
ステップS100で、演算方法の決定処理が開始されると、続いて、ステップS101においては、ポーリングに対するレスポンスデータの製品特定情報から内蔵IC種別情報を取得する(製品特定情報取得部110の機能)。
【0053】
続いて、ステップS102においては、取得した内蔵IC種別情報に基づいて、データテーブル140を検索する。これは、取得された内蔵IC種別情報がデータテーブル140内に存在するか否かを検索するものである(テーブル検索部130の機能)。
【0054】
ステップS103では、ステップS102の検索の結果、取得された内蔵IC種別情報がデータテーブル140に存在するか否かが判定される。
【0055】
ステップS103における判定がYESであると、ステップS104に進み、データテーブル140の疑似応答時間情報を利用しタイムアウト時間Toを演算する(タイムアウト時間演算部150の機能)。なお、疑似応答時間情報に基づく、タイムアウト時間Toの演算については従来と同様の方法を利用することができる。
【0056】
一方、ステップS103における判定がNOであると、ステップS105に進み、非接
触IC媒体200から返信されるレスポンスデータ中の応答時間情報を利用しタイムアウト時間Toを演算する(タイムアウト時間演算部150の機能)。このように、データテーブル140に、非接触IC媒体200の内蔵IC種別情報に対応する疑似応答時間情報が存在しない場合には、従来通りの方法によりタイムアウト時間Toを演算する。
【0058】
データテーブル140に、非接触IC媒体200の内蔵IC種別情報に対応する疑似応答時間情報が存在し、ステップS104に基づく、処理でタイムアウト時間Toが演算された場合には、正規の応答時間情報より短い時間(例えば、To’)となる。本発明により求められるタイムアウト時間To’は、正規の応答時間情報より短いために、上位装置10がリーダーライター装置100に対しコマンド実行命令を発し、同中止命令を発するまでの時間Tsの間に、従来より多くリトライすることが可能である。
図9は本発明のリーダーライター装置100の効果を説明する図である。
図9に示されるように、タイムアウト時間To’となると、例えば従来n回であったコマンド発行が、それより多いm回となる。
【0059】
以上のような本発明に係るリーダーライター装置100では、内蔵IC種別情報と一対一に対応し、非接触IC媒体から受信する応答時間情報とは異なる疑似応答時間情報を複数記憶するデータテーブル140を有しており、このデータテーブル140の疑似応答時間情報に基づいてタイムアウト時間Toが求められると、より適切な値を求めることができる。このような本発明に係るリーダーライター装置100によれば、タイムアウト時間は必要以上には長くない適切な値であるので、リトライの回数を従来より増やすことが可能となり、通信の成功率が向上する。
【0060】
なお、データテーブル140に記憶させる疑似応答時間情報は、リーダーライター装置100が接続される上位装置10に応じて変更すると、上位装置10の利用形態に合わせたコマンドのリトライを行うことが可能であり好適である。
【0061】
例えば、非接触IC媒体200との通信機会が少ない改札機に接続されるリーダーライター装置100のデータテーブル140に記憶させる疑似応答時間情報は、これにより求めたタイムアウト時間が比較的短くなるようにして、リトライ回数を増やすようにする。
【0062】
一方、非接触IC媒体200との通信機会に余裕がある券売機に接続されるリーダーライター装置100のデータテーブル140に記憶させる疑似応答時間情報は、これにより求めたタイムアウト時間が長くなるようにしてもよい。
【0063】
次に、本発明の他の実施形態について説明する。第1実施形態においては、リーダーライター装置100が発行する(C
1、C
2などの)複数のコマンド(群)に対して、1つの疑似応答時間情報が規定されるようになっていたが、第2実施形態においては、1つのコマンド毎に対して1つの疑似応答時間情報が設定されるものである。
【0064】
また、
図10は本発明の第2実施形態に係るリーダーライター装置100で用いるデータテーブルの構造を説明する図である。
図10(A)には、第2実施形態に係るリーダーライター装置100で設定されるデータテーブル140においては、コマンドの種別(C
1、C
2、・・・C
n)に応じて、疑似応答時間情報(D
X1、D
X2、・・・D
Xn)が定めら
れていることが示されている。
図10(B)は、このようなデータテーブル140に基づいて求められるタイムアウト時間Toが示されている。
図10からも、わかるように第2実施形態においては、コマンドの種別に応じて、より適切なタイムアウト時間を求めることができるようになり、よりきめの細かい設定で効率的に通信成功率を向上させることが
可能となる。
【0065】
次に、本発明の他の実施形態について説明する。第2実施形態に係るリーダーライター装置100のデータテーブル140では、コマンドの種別(C
1、C
2、・・・C
n)に応
じて、疑似応答時間情報(D
X1、D
X2、・・・D
Xn)が定められていたが、第3実施形態においては、さらにコマンドの引数に応じて疑似応答時間情報が定められている。
【0066】
図11は本発明の第3実施形態に係るリーダーライター装置100におけるタイムアウト時間To決定方法の概念図である。
図11におけるブロック図で、これまでの実施形態と異なる点は、コマンド引数取得部125で取得される装置が発行しようとしているコマンドの引数が、タイムアウト時間演算部150で参照されることである。
【0067】
図12は本発明の第3実施形態に係るリーダーライター装置100で用いるデータテーブルの構造を説明する図である。コマンドの種別(C
1、C
2、・・・C
n)とコマンドの
引数(P
1、P
2、・・・P
n)とに応じて、疑似応答時間情報が定められている。
【0068】
以上のような第3実施形態によれば、コマンドの種別とさらにその引数に応じて、より適切なタイムアウト時間を求めることができるようになり、よりきめの細かい設定で効率的に通信成功率を向上させることが可能となる。
【0069】
ここで、コマンドの引数についてより具体的に説明する。リーダーライター装置100が非接触IC媒体200に対して発行するコマンドは、非接触IC媒体200の記憶エリアから情報を読み取ったり、或いは記録エリアに対して書き込んだりするためのものである。
【0070】
非接触IC媒体200の記憶エリアには、複数の属性があり、エリアの属性に応じてアクセス時間が異なっている。
図13は非接触IC媒体200の記憶エリアのファイル構造の一例を示す図である。
【0071】
図13に示すように非接触IC媒体200の記憶エリアは、第1属性記憶エリア、第2属性記憶エリア、第3属性記憶エリアに分かれており、さらにそれぞれのエリアの下に、複数の記憶ブロックが設定されている。
【0072】
図14はコマンド引数を算出するテーブルの構造を示す図である。このテーブルで算出されたコマンド引数を
図12に示すテーブルに当てはめて、それによりコマンドの種別、コマンドの引数に応じた疑似応答時間を得ることが可能となる。
【0073】
図14のテーブルでは、コマンドによりアクセスするエリアの属性と、そのコマンドによりアクセするブロックの数に応じたコマンド引数を求めることができるようになっている。
【0074】
このように、コマンドの引数は、コマンドでアクセスする非接触IC媒体200の記憶エリアの属性、ブロックの数に依存している。
【0075】
次に、本発明において、リーダーライター装置100のデータテーブル140において疑似応答時間情報を設定する方法について
図15及び
図16に基づいて説明する。
【0076】
図15はデータテーブル140に書き込む情報を上位装置10から取得する例である。
図15のステップS11で、上位装置10からリーダーライター装置100に対して、テーブルデータの設定命令が発せられ、続いて、テーブルに書き込む疑似応答時間情報が送
られる(ステップS12)。リーダーライター装置100では、これに基づき、データテーブル140を書き込んで、上位装置10に対して、テーブルデータ設定報告を行う(ステップS13)。
【0077】
図15の方法によれば、上位装置10からリーダーライター装置100のインターフェイス部105を介してデータテーブル140の書き込み・設定が行われることとなる。このような設定方法の概念は、
図6及び
図11の(1)に示される。
【0078】
図16はデータテーブル140に書き込む情報を保守用の非接触IC媒体200から取得する例である。
図16のステップS21で、上位装置10からリーダーライター装置100に対して、テーブルデータの設定命令が発せられると、リーダーライター装置100は保守用の非接触IC媒体200に対しテーブルデータを要求し(ステップS22)、これを保守用非接触IC媒体200から受領する(ステップS23)。
【0079】
リーダーライター装置100では、保守用非接触IC媒体200からのデータを、データテーブル140に書き込んで設定が完了すると、上位装置10に対して、テーブルデータ設定報告を行う(ステップS24)。
【0080】
図16の方法によれば、保守用非接触IC媒体200からリーダーライター装置100の無線通信部160を介してデータテーブル140の書き込み・設定が行われることとなる。このような設定方法の概念は、
図6及び
図11の(2)に示される。