ICタグアクセスプログラム、方法及び装置
【課題】ICタグの記憶容量の違いやデータフォーマットの違いをアプリケーションに対し隠蔽してデータを読み書き可能とする。
【解決手段】マップ管理部16はICタグ24のアクセスパラメータと外部記憶部18のアクセスパラメータを指定したマップ40を、ICタグ24の識別子とスキーマ情報15の項目名に対応して保持する。アクセス管理部14は、アプリケーション10−1から出力されるスキーマ情報15の項目名を含むアクセス要求をキュー28に保持し、リーダライタ22−1で検出したICタグ24の識別子に対応したアクセス要求をキュー28から選択した際に、ICタグの識別子とアクセス要求におけるスキーマ情報15の項目名に対応したマップ40をマップ管理部16より取得し、取得したマップ40のアクセスパラメータに従ってICタグ24及び又は外部記憶部18にアクセスする。
【解決手段】マップ管理部16はICタグ24のアクセスパラメータと外部記憶部18のアクセスパラメータを指定したマップ40を、ICタグ24の識別子とスキーマ情報15の項目名に対応して保持する。アクセス管理部14は、アプリケーション10−1から出力されるスキーマ情報15の項目名を含むアクセス要求をキュー28に保持し、リーダライタ22−1で検出したICタグ24の識別子に対応したアクセス要求をキュー28から選択した際に、ICタグの識別子とアクセス要求におけるスキーマ情報15の項目名に対応したマップ40をマップ管理部16より取得し、取得したマップ40のアクセスパラメータに従ってICタグ24及び又は外部記憶部18にアクセスする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、アプリケーションからの要求によりICタグにアクセスするICタグアクセスプログラム、方法及び装置に関し、特にメモリ容量やフォーマットの異なるICタグとの間でデータを読み書きするICタグアクセスプログラム、方法及び装置に関する。
【背景技術】
【0002】
近年、ICタグは物流における物品識別システム、入退室管理システム、製造におけるプロセス管理システム、図書館やレンタル店での貸出品管理システム、店舗での在庫管理システム、畜産における家畜管理システムなど多数のシステムで利用されている。これらのシステムでは、ICタグが持つ固有のIDとメモリに書き込まれた情報を利用して、物品の判別や物品情報の取得、更新などを行う。
【0003】
例えば特許文献1は、データ構造規定情報を保持した無線タグからデータ構造規定情報を読出し、このデータ構造にしたがってデータ項目を保持した無線タグから目的のデータ項目を取得するようにしている。
【0004】
また特許文献2は、マスターICタグとスレーブICタグをもち、マスターICタグで各スレーブタグのメモリ構成情報を管理するようにしている。
【0005】
更に、特許文献3は、複数のタグを1個のタグとして扱い、メモリ容量の設定を複数のタグのメモリ容量の合計としている。
【0006】
このような従来のICタグの記憶容量は様々であり、メモリを持たないIDを返すだけのものもある。また様々な種類のICタグが集まる物流や店舗などのケースや新規ICタグ導入後などのケースでは異なる記憶容量のICタグを扱わなければならない。
【0007】
従来のICタグへデータを読み書きするシステムには、図18のように、アプリケーション200、リーダライタ202及びICタグ204を備え、ICタグ204のメモリに対してデータを読み書きするものがある。
【0008】
また図19のように、ICタグ204としてメモリを持たない場合には、ICタグ204からはリーダライタ202によりIDのみをアプリケーション200で取得し、アプリケーション200はキャッシュ装置206及びIDレゾルバ208を介してデータベース210との間でデータをタグIDに結び付けて読み書きするものもある。
【特許文献1】特開2004−21776号公報
【特許文献2】特開2004−201129号公報
【特許文献3】特開2002−288598号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
しかしながら、図18のメモリ付きのICタグを想定したシステムは、ICタグに設けたメモリのアドレスを指定してデータを読み書きするため、メモリを持たないICタグやデータを記録するために十分な記憶容量を持たないICタグに対しては、データを読み書きすることができない。またICタグへ記録するデータもシステム独自のデータフォーマットであるため、データフォーマットが異なるICタグに対してはデータの読み書きができない問題がある。
【0010】
図19のメモリを持たないシステムは、ICタグの記憶容量の違いに関わらずデータベースからデータを読み書きすることができるが、常にデータベースへのアクセスが必要となるために、多数のICタグを処理する場合、データベースアクセスによるトラフィックの増加やデータベースシステムの負荷上昇によりICタグ処理速度が低下するという問題がある。
【0011】
この場合、キャッシュ装置によりデータベースアクセスをキャッシングしたり、分散データベースを用いてデータベースアクセスの集中を防ぐことで、ICタグの処理速度低下をある程度軽減することは可能であるが、システムやデータベース間のデータ一貫性の保証や維持、データベース検索処理に関わる遅延が生じるため限界がある。
【0012】
またキャッシングでは、ICタグのデータが更新されるたびに他のシステムのキャッシュにある該当データを無効化しなければならず、また読出し時は常にキャッシュにある該当データの有効性を確認しなければならない。更に、例えば物流のケースのように、ICタグが各システムを一度だけ通過するケースではキャッシュの効果はない。
【0013】
分散データベースでは、一個のICタグのデータが複数のデータベースに分散して存在する場合、データの読み書きのたびにデータベースの検索と各データベースへのアクセスが生じてしまう。例えばある商品の出庫日時と製造番号を読み出そうとした場合、出庫日時データを持つ配送センターのデータベースからの読出しと、製造番号データを持つメーカーのデータベースからの読み出しが必要になり、かえってトラフィックを増やしてしまうことがある。
【0014】
更に、データベースシステムが停止したり、ネットワークが使えない場所などのデータベースへアクセスできない場合、ICタグの処理を行うことができない問題がある。
【0015】
本発明は、ICタグの記憶容量の違いやデータフォーマットの違いをアプリケーションに対し隠蔽し、異なる記憶容量のICタグや異なるデータフォーマットのICタグが混在した場合においても、データを読み書き可能とするICタグアクセスプログラム、方法及び装置を提供することを目的とする。
【課題を解決するための手段】
【0016】
本発明は、ICタグをアクセスするコンピュータにより実行されるプログラムを提供する。本発明のプログラムは、ICタグをアクセスするコンピュータに、
アプリケーションでICタグのアクセス要求が発生した際に、ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得してアプリケーションに提供するデータ構造定義情報提供管理ステップと、
ICタグのアクセスパラメータとICタグの識別子とをデータ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
アプリケーションから出力されるデータ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出したICタグの識別子に対応したアクセス要求を、保持したアクセス要求から選択した際に、ICタグの識別子とアクセス指示の項目名に対応した対応情報を対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従ってICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行させる事を特徴とする。
【0017】
ここで、対応情報管理ステップは、コンピュータに、ICタグのアクセスパラメータと外部記憶部のアクセスパラメータを指定した対応関係情報を、ICタグの識別子と前記スキーマ情報の項目名に対応して保持する処理を実行させる。
【0018】
アクセス管理ステップは、コンピュータに、
リーダライタで検出したICタグの識別子を保持する機器管理ステップと、
アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、機器管理ステップで保持したICタグの識別子に対応したアクセス要求を選択し、アクセス要求にICタグの識別子を付加したアクセス情報を出力するアクセス要求管理ステップと、
アクセス情報に含まれるICタグの識別子に対応した対応情報を取得し、取得した対応情報からと前記項目名に対応したアクセスパラメータを抽出するパラメータ抽出ステップと、
パラメータ抽出ステップにて抽出したパラメータに基づいて外部記憶部にアクセスする外部記憶アクセスステップと、
パラメータ抽出部で抽出したパラメータに基づくアクセス命令をリーダライタに発行して前記ICタグにアクセスする命令生成ステップと、
を実行させる。
【0019】
対応情報管理ステップにより保持されるアクセスパラメータは、ICタグのアクセスアドレス、データ長を格納したヘッダサイズ及び外部記憶部の識別名を含む。
【0020】
対応情報管理ステップにより保持されるのアクセスパラメータは、更に、ICタグのリード及び又はライトのアクセス種別を含む。
【0021】
アクセス管理ステップは、コンピュータに、アクセス要求がデータの書込要求の場合、対応情報のアクセスパラメータに基づいてデータの一部を前記ICタグに書込み、残りのデータを前記外部記憶部に書込む処理を実行させる。
【0022】
アクセス管理ステップは、コンピュータに、アクセス要求がデータの書込要求の場合、マップのアクセスパラメータに基づいてアクセス頻度の高いデータ及び又はアプリケーションの処理に必要な最小限のデータをICタグに書込み、残りのデータを外部記憶部に書込む処理を実行させる。
【0023】
アクセス管理ステップは、コンピュータに、アクセス指示がデータの読出要求の場合、対応情報管理ステップにより保持されたアクセスパラメータに基づいてICタグ及び外部記憶部のそれぞれからデータを読出して再構成してアプリケーションに応答する処理を実行させる。
【0024】
アクセス管理ステップは、コンピュータに、ICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の少なくとも何れかを管理し、リーダライタでICタグを検出した際に得られるICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の何れか又はその組合せを持つアプリケーションから出力されたアクセス要求を選択する処理を実行させる。
【0025】
アクセス管理ステップは、コンピュータに、複数のアクセス要求を保持している場合、受取り順にアクセス要求を選択する処理を実行させる。
【0026】
アクセス管理ステップは、コンピュータに、優先度を指定した複数のアクセス要求を保持している場合、優先度の高い順にアクセス要求を選択する処理を実行させる。
【0027】
アクセス管理ステップは、コンピュータに、ICタグの識別子のビットパターンと対応情報識別子の対応関係を登録したタグ・対応情報対応表を有し、アクセス管理部から指定されたICタグ識別子のビットパターンにより対応表から対応する対応情報を選択する処理を実行させる。
【0028】
アクセス管理ステップは、コンピュータに、ICタグの識別子に対応する対応情報をネットワーク上の対応情報管理部からダウンロードして取得する処理を実行させる。
【0029】
対応情報管理ステップにおいて、
ICタグの識別子と対応情報識別子の対応関係を登録したセット対応表と、
セット対応表のセット識別子毎にロール名と対応情報識別子の対応関係を登録したセットと、
対応情報セットの対応情報識別子に対応して登録された対応情報と、
を有し、
アクセス管理ステップにおいて、ユーザIDとロール名の対応関係を登録したユーザ管理情報を有し、
アクセス管理ステップにおいて、
記アクセス要求情報に含まれたICタグの識別子により前記セット対応表から対応情報識別子を取得し、
取得した対応情報識別子により前記セットからロール名と対応情報識別子の対応関係を取得し、
取得したロール名と対応情報識別子の対応関係の中からユーザ管理情報からユーザIDにより取得したロール名と対応関係を持つ対応情報識別子を取得し、更に、
取得した前記対応情報識別子に対応した対応情報を取得する処理を実行させる。
【0030】
本発明は、ICタグアクセス方法を提供する。本発明のICタグアクセス方法は、ICタグをアクセスするコンピュータが、
アプリケーションでICタグのアクセス要求が発生した際に、ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理ステップと、
ICタグのアクセスパラメータとICタグの識別子とをデータ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
アプリケーションから出力されるデータ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出したICタグの識別子に対応したアクセス要求を、保持したアクセス要求から選択した際に、ICタグの識別子とアクセス指示の項目名に対応した対応情報を対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従ってICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行する事を特徴とする。
【0031】
本発明は、ICタグをアクセスするICタグアクセス装置を提供する。本発明のICタグアクセス装置は、
アプリケーションでICタグのアクセス要求が発生した際に、ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理手段と、
外部記憶部と、
ICタグのアクセスパラメータとICタグの識別子とをデータ構造定義情報の項目名に対応して保持する対応情報管理手段と、
アプリケーションから出力されるデータ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出したICタグの識別子に対応したアクセス要求を、保持したアクセス要求から選択した際に、ICタグの識別子とアクセス指示の項目名に対応した対応情報を対応情報管理部より取得し、取得した対応情報のアクセスパラメータに従ってICタグ及び又は外部記憶部をアクセスするアクセス管理手段と、
を備えた事を特徴とする。
【0032】
なお、本発明によるICタグアクセス方法及び装置の詳細は、本発明のプログラムと基本的に同じになる。
【発明の効果】
【0033】
本発明によれば、記憶容量やデータフォーマットが異なるICタグが混在している場合においても、アプリケーションは同一のインタフェースでそれぞれの記憶容量、データフォーマットに応じたデータの読出し、書き込みが可能となる。
【0034】
また、メモリを持つICタグにおいて、頻繁に読み書きするデータや処理に必要な最小限のデータをICタグのメモリに置くことで、データベースアクセスによる処理速度低下やデータベースアクセス不能による障害を防ぐことが可能となる。
【0035】
またICタグの記憶容量を超えたデータであっても、ICタグと外部記憶部へ分割保持するため、ICタグのアクセス失敗やデータの破損を回避できる。
【発明を実施するための最良の形態】
【0036】
図1は本発明によるICタグアクセス装置の機能構成のブロック図である。図1において、本発明のICタグアクセス装置は、アプリケーション10−1,10−2、スキーマ管理部12、アクセス管理部14、マップ管理部16、ネットワーク20を介して接続した外部記憶部18及びリーダライタ22−1〜22−nで構成され、ICタグ24に対しデータの書込みと読出しを行う。
【0037】
アプリケーション10−1,10−2は、例えば物品識別システムや入退室管理システムなどの業務アプリケーションであり、業務処理の実行に伴いICタグ24に対する書込要求または読出要求を発生する。
【0038】
スキーマ管理部12は、アプリケーション10−1,10−2でICタグ24のアクセス要求、即ち書込要求または読出要求が発生した際に、ICタグ24に依存しない項目名一覧で構成されたスキーマ情報15から対応する項目名を取得してアプリケーション10−1,10−2に提供し、このスキーマ情報15の項目名を使用して、アプリケーション10−1,10−2は、アクセス管理部14に対しICタグに対する書込要求または読出要求を発生する。
【0039】
アプリケーション10−1,10−2がICタグ24に対するアクセス要求を指定するために与えるスキーマ情報の項目名は、ICタグ24の記憶容量やデータフォーマットに依存しない名前であるため、アプリケーション10−1,10−2はICタグ24の記憶容量やデータフォーマッタを一切意識する必要がなく、項目名のみによってICタグ24に対するアクセスを指定できる。このため、異なる記憶容量のICタグ24や異なるデータフォーマットのICタグ24が混在するようなことがあっても、アプリケーション10−1,10−2を一切変更する必要はない。
【0040】
マップ管理部16はタグ・マップ対応表38とマップ40を備える。タグ・マップ対応表38はタグIDとマップ識別子の対応関係を登録している。このためアクセス管理部14からICタグ24の読取りで得られたICタグIDを指定することで、タグ・マップ対応表38から対応するマップ識別子を取得し、取得したマップ識別子によりマップ40の中から対応するマップを取得して返すことができる。マップ40にはICタグ24のアクセスパラメータと外部記憶部18のアクセスパラメータが設定されている。このアクセスパラメータは
(1)ICタグ24のアクセスアドレス
(2)データ長を格納したヘッダサイズ
(3)外部記憶部18の識別名
(4)リード及びまたはライトのアクセス種別
を含んでいる。
【0041】
なお、(4)のアクセス種別は選択的要素であり、必須ではない。このアクセス種別によりICタグの読出しと書込みのそれぞれについて許可するか否かを指定することで、スキーマ情報の特定の項目名について書込みを禁止したりすることができ、ICタグへのアクセス制御をより細かく指定することが可能となる。
【0042】
マップ40は、ICタグIDに対応してスキーマ情報15から得られた複数の項目名につきアクセスパラメータを登録しており、マップ40に含まれる複数の項目名に対応したパラメータの中からアプリケーション10−1,10−2が出力したアクセス要求に含まれる項目名によって対応するアクセスパラメータを抽出することができる。
【0043】
アクセス管理部14は、アプリケーション10−1,10−2から出力されるスキーマ情報15の項目名を含むアクセス要求、即ち書込要求または読出要求をキュー28に保持し、リーダライタ22−1〜22−nで検出したICタグ24のタグIDに対応したアクセス要求をキュー28から選択した際に、ICタグ24のタグIDとアクセス要求の項目名に対応したマップ40をタグ・マップ対応表38を介してマップ管理部16から取得し、取得したマップ40の項目名により抽出されたアクセスパラメータに従ってICタグ24及びまたは外部記憶部18に対するアクセスを実行する。
【0044】
ここでICタグ24と外部記憶部18に対するアクセスは次の3つがある。
(1)ICタグ24と外部記憶部18の両方にアクセス
(2)ICタグ24のみにアクセス
(3)外部記憶部18のみにアクセス
【0045】
このようなアクセス管理部14には、その処理機能として、キュー28を備えたアクセス要求管理部26、機器管理部30、パラメータ抽出部32、データマッピング部34及び命令生成部36が設けられる。
【0046】
機器管理部30は、リーダライタ22−1〜22−n側で検出したICタグのタグID及びリーダライタ識別子を保持する。アクセス要求管理部26は、アプリケーション10−1,10−2から出力されるスキーマ情報15の項目名を含むアクセス要求をキュー28に保持し、機器管理部30で保持したICタグ24のタグIDに対応したアクセス要求をキュー28から選択し、選択したアクセス要求にICタグ24のタグIDを付加したアクセス情報、即ち書込情報または読出情報を出力する。
【0047】
パラメータ抽出部32は、アクセス要求管理部26から出力されたアクセス情報、即ち書込情報または読出情報に含まれるICタグ24のタグIDに対応したマップ40を、タグ・マップ対応表38を介して取得し、取得したマップ40からスキーマ情報の項目名に対応したアクセスパラメータを抽出する。
【0048】
データマッピング部34は、パラメータ抽出部32で抽出したパラメータに基づいて、外部記憶部18にアクセス、即ちデータの書込みまたは読出しを行う。
【0049】
命令生成部36は、パラメータ抽出部32で抽出したICタグ24に関するパラメータに基づき、アクセス命令即ち書込命令または読出命令を、リーダライタ22−1〜22−nの中のICタグ24を検出しているリーダライタ例えばリーダライタ22−1に発行して、ICタグ24にデータの書込みまたはICタグ24からのデータの読出しを行う。
【0050】
図1における本発明のICタグアクセス装置は、例えば図2のようなコンピュータのハードウェア資源により実現される。図2のコンピュータにおいて、MPU100のバス102には、RAM104、ROM106、ハードディスクドライブ108、キーボード112、マウス114、ディスプレイ116を備えた入出力デバイスコントローラ110、更に通信回線120と接続したネットワークアダプタ118が設けられている。
【0051】
本発明のICタグアクセス処理を実行するプログラムはハードディスクドライブ108にローディングされており、コンピュータの起動時に読み出されてRAM104上に展開され、MPU100により実行される。
【0052】
図3は図1のスキーマ管理部12に設けたスキーマ情報15の説明図である。スキーマ情報15はスキーマ名と項目名から構成されており、スキーマ名は例えば物流システム、入退室管理システム、製造管理システムなどのシステム概略で分類されている。
【0053】
スキーマ名のそれぞれに対しては複数の項目名が準備されており、例えば物流システムを例にとると、商品情報、あて先、入庫年月日、送り主、依頼主、商品名などが使用されている。アプリケーション10−1,10−2にあっては、自分の処理するスキーマ名、例えば物流システムの処理においてICタグにアクセス要求をする際には、スキーマ情報15の参照でアクセスに必要な項目名例えば「商品情報」を取得して、書込要求または読出要求を出力することになる。
【0054】
図4は図1のマップ管理部16に設けたタグ・マップ対応表とマップの説明図である。図4(A)はタグ・マップ対応表38であり、タグIDとマップ識別子から構成されている。タグ・マップ対応表38にあっては、図1のパラメータ抽出部32から書込情報または読出情報に含まれるICタグIDの指定を受けると、タグ・マップ対応表38を参照して対応するマップ識別子を取得し、取得したマップ識別子により図4(B)のようなマップ40を参照する。
【0055】
図4(B)のマップ40はマップ識別子をインデックスとして複数準備されている。また1つのマップ識別子を持つマップにあっては、スキーマ情報15から得られた項目名に分けてパラメータ領域42−1,42−2,42−3を持っており、それぞれにICタグ及び外部記憶部のアクセスに必要なパラメータを設定している。
【0056】
図5は図4(B)のマップ40の1つのパラメータ領域を取り出して具体的な構成を示している。図5において、マップ40のパラメータ領域は、タグパラメータ44、外部記憶パラメータ46及びアクセスパラメータ48で構成されている。タグパラメータ44としては、ICタグ24のメモリのアドレスとして「0x00」を格納し、またデータ長を格納したヘッダサイズとして「8B(バイト)」を格納し、更にタグデータサイズとして「24B(バイト)」を格納している。
【0057】
また外部記憶パラメータ46としては、例えばネットワーク20を介して接続していることから「URL−領域名」を設定している。更にアクセスパラメータ48については、リードのみ、リード及びライトのいずれかを設定できる。もちろん、アクセスパラメータ48は必要に応じて選択的に設けられるパラメータである。
【0058】
ここでタグパラメータ44により指定されるICタグ24のメモリに格納するデータとしては、頻繁に読み書きするデータやアプリケーション10−1,10−2の処理に最小限必要なデータとし、残りのデータを外部記憶パラメータ46に格納することが望ましい。このようなデータ分割によって、外部記憶パラメータ46のアクセスによる性能低下を防ぎ、また外部記憶パラメータ46のアクセス不能時でもICタグ24の必要最小限のデータをアクセスしてタグ処理を可能とする。
【0059】
再び図4(B)を参照するに、パラメータ領域42−1はタグパラメータと外部記憶パラメータの両方を登録している。またパラメータ領域42−2は外部パラメータが存在せず、ICタグのみをアクセスするためのパラメータである。更に、パラメータ領域42−3はタグパラメータが存在せず、外部記憶部のみをアクセスするパラメータである。
【0060】
このようにマップ40には、ICタグIDに対応したマップ識別子で特定されるマップ内に、スキーマ情報の項目名で指定される複数種類のICタグと外部記憶部のアクセスパラメータを必要に応じて登録し、これを利用できる。
【0061】
またメモリ容量やフォーマットの異なるICタグの種別は、図4(A)のタグ・マップ対応表38により対応関係が登録され、これによりアプリケーション10−1,10−2は様々なICタグに対し、そのメモリ容量やフォーマットの相違を意識することなくアクセスできる。
【0062】
更に、タグ・マップ対応表38及びマップ40は、アプリケーション10−1,10−が対応しようとするICタグが追加される度に、タグ・マップ対応表38及びマップ40に対し追加ICタグに対応した対応関係が追加更新されることになる。
【0063】
図6は図1におけるアプリケーションのICタグ書込処理における書込要求、タグ検出情報、書込情報、マップ抽出パラメータ及びICタグと外部記憶部への書込みの説明図である。
【0064】
図6(A)は例えばアプリケーション10−1がICタグ24に対し書込要求を発行する際に取得したスキーマ情報15の項目名となる「商品情報」である。図6(B)はスキーマ情報15から取得した「商品情報」を使用した書込要求62のデータ構造である。書込要求62は、先頭に書込指示を格納し、続いてスキーマ情報15から取得した「商品情報」を格納し、その後ろに例えば64バイトのデータを格納している。
【0065】
図6(C)は本発明で使用する他の書込要求64であり、図6(B)の書込要求62に対し使用するリーダライタを指定するための「リーダライタID」を含めている。また図6(D)は本発明で使用する他の書込要求66であり、図6(B)の書込要求62に更に「タグID」を加え、書込要求を行うICタグ24を特定できるようにしている。
【0066】
更に本発明にあっては、後の説明で明らかにするように、図6(C)に使用する「リーダライタID」の代わりに「リーダライタグループID」を使用してもよい。同様に、図6(D)の「タグID」の代わりに「グループタグID」を使用するようにしてもよい。
【0067】
図6(E)は図1の機器管理部30から出力されるタグ検出情報68であり、「リーダライタID」と「タグID」を備えている。
【0068】
図6(F)は図1のアクセス要求管理部26より出力される書込情報70であり、この書込情報70は図6(B)〜(D)の書込要求62,64又は66に、図6(E)のタグ検出情報68を組み合わせた情報であり、「書込指示」、「リーダライタID」、「タグID」、「商品情報」及び64バイトのデータから構成されている。
【0069】
図6(G)はパラメータ抽出部32によりマップ管理部16を参照して取得されたマップ抽出パラメータ72である。マップの取得は図6(F)の書込情報70におけるタグ「ID」を使用して行われ、この「タグID」により取得したマップから書込情報70における「商品情報」を使用して図6(G)のマップ抽出パラメータ72を取得することができる。マップ抽出パラメータ72は例えば図5のマップ40に対応した内容を持っている。
【0070】
図6(H)は、マップ抽出パラメータ72に基づくデータ74のICタグ24と外部記憶部18に対する書込処理の説明図である。この例にあっては、ICタグ24のメモリサイズは24バイトであり、マップ抽出パラメータ72により先頭アドレス「0x00」が指定され、そこからヘッダサイズで指定された8バイトの領域にデータ74のデータ長「64バイト」を格納し、その後ろに分割データ74−1として16バイト分のデータD1を格納している。
【0071】
一方、外部記憶部18については、データ74における前半の24バイトはICタグ24に格納されることから、後半の残り40バイトを分割データ74−2として書き込んでいる。
【0072】
図7は図1のアクセス要求管理部26によるIDグループ及びリーダライタグループのグループ管理の説明図である。図7において、アクセス要求管理部26には、IDグループ名管理部50−1とリーダライタグループ名管理部50−2が設けられ、それぞれIDグループ名管理テーブル52−1とリーダライタグループ名管理テーブル52−2を格納している。
【0073】
IDグループ名管理テーブル52−1は、右側に取り出して示すように、タググループ名54とグループ内ID56−1〜56−mで構成される。またリーダライタグループ名管理テーブル52−2も、右側に取り出して示すように、リーダライタグループ名58とグループ内リーダライタ識別子60−1〜60−nで構成されている。
【0074】
このようなIDグループ名管理テーブル52−1を使用して、ICタグ24から検出したタグIDがどのIDグループに属するかを求めることができる。同様にICタグ24を読み取ったリーダライタについても、リーダライタ識別子によりリーダライタグループ名管理テーブル52−2を参照することで、検出したリーダライタの属するリーダライタグループ名を取得することができる。
【0075】
このようにして取得されたIDグループ名及びリーダライタグループ名は、図6(C)の書込要求64における「リーダライタID」の代わりに「リーダライタグループID」を設定し、また図6(D)の書込要求66にあっては「タグID」の代わりに「タググループID」を設定することになる。
【0076】
ICタグのグループ名またはリーダライタのグループ名をアクセス要求に含めることにより、アクセスするICタグを限定できるため、アクセス対象外のICタグが混在しているときに間違ってアクセスしてしまうことを回避でき、必要以上のアクセスを抑制できるため処理速度を上げる効果がある。また、アクセスするリーダライタを限定できるため、例えばリーダライタの設置場所に応じたアクセスをアプリケーションは指示できるなど利便性が上がる。
【0077】
図8は図1におけるアプリケーションのICタグ読取処理における読出要求、タグ検出情報、読出情報、マップ抽出パラメータ及びICタグと外部記憶部からの読出し再構成の説明図である。
【0078】
図8(A)は、ICタグ24に対し例えばアプリケーション10−1が読出要求を発行する際に、スキーマ情報15から項目名として「商品情報」を取得した場合である。このようにしてスキーマ情報から「商品情報」を取得すると、図8(B)のように読出要求76を発行する。読出要求76は「読出指示」と「商品情報」で構成される。
【0079】
図8(C)は他の読出要求78であり、この読出要求78には、「書込指示」、「商品情報」に加え「リーダライタID」を配置している。この「リーダライタID」の代わりに「リーダライタグループID」を設定してもよい。図8(D)は他の読出要求80であり、「書込指示」及び「商品情報」に加え「タグID」を設定している。この「タグID」の代わりには「タググループID」を設定してもよい。図8(E)はタグ検出情報68であり、「リーダライタID」と「タグID」で構成される。
【0080】
図8(F)は読出情報82であり、図8(B)の読出要求76と図8(E)のタグ検出情報68を組み合わせた情報として、「読出指示」、「リーダライタID」、「タグID」及び「商品情報」で構成されている。
【0081】
図8(G)はパラメータ抽出部32によりマップ管理部16から抽出されたマップ抽出パラメータ72であり、ICタグ24のアドレス「0x00」、データ長となる64バイトを格納するヘッダサイズ「8B(バイト)」、タグデータサイズ「24B(バイト)」及び外部記憶名で構成されている。図8(H)はマップ抽出パラメータ72に基づく読出処理であり、ICタグ24のアドレス「0x00」からアドレス「0x24」までの24バイトを読み出し、一方、外部記憶部18からは40バイトの分割データ74−2を読み出し、読み出した分割データ74−1,74−2を再構成してリードデータ74を生成し、これをアプリケーションに返すようにしている。
【0082】
図9は図1のアプリケーション10−1の処理のフローチャートである。図9において、ステップS1でアプリケーション処理を実行しており、ステップS2でICタグに対する書込要求の発生の有無をチェックし、書込要求が発生するとステップS3に進み、スキーマ管理部12のスキーマ情報15を参照して項目名を取得する。
【0083】
続いてステップS4で、例えば図6(B)の書込要求62に示したデータ構造を持つ書込要求をアクセス管理部14に発行する。この書込要求の発行後は、ステップS5で終了応答を待っており、終了応答を受けると次の処理に進む。
【0084】
一方、ステップS6でICタグに対する読出要求の発生を判別した場合には、ステップS7でスキーマ管理部12のスキーマ情報15から項目名を取得した後、ステップS8で例えば図8(B)の読出要求76に示したデータ構造を持つ読出要求をアクセス管理部14に発行する。続いてステップS9でリード応答を待っており、リード応答があると、ステップS10でリードデータを取り込む。このようなステップS1〜S10の処理を、ステップS11で停止指示があるまで繰り返す。
【0085】
このようなアプリケーション処理にあっては、ICタグの記憶容量やデータフォーマットを考慮することがなく、スキーマ情報から取得した項目名のみによって書込要求または読出要求を行うことができる。
【0086】
図10及び図11は、図1のアクセス管理部14の処理のフローチャートである。図10において、アクセス管理処理は、ステップS1でアプリケーションからアクセス要求が受領されたか否かチェックしており、アクセス要求を受領すると、ステップS2でアクセス要求をキュー28に格納する。
【0087】
続いてステップS3でリーダライタによるICタグの検出が行われたか否かチェックしており、ICタグが検出されると、ステップS4でリーダライタの識別子とタグIDを取得する。続いてステップS5でキュー28にタグIDに合致するアクセス要求が存在するか否かチェックする。このステップS5におけるICタグの検出情報に合致するアクセス要求の判別は、次のようにして行う。
【0088】
まずリーダライタ識別子については、次の場合に書込要求が検出情報に合致したと判断する。
(1)アクセス要求がリーダライタ識別子及びリーダライタグループ名を含まない場合
(2)アクセス要求が検出情報のリーダライタ識別子を含んでいる場合
(3)アクセス要求が検出情報のリーダライタグループ名を含んでいる場合
【0089】
またICタグのタグIDについては、次の場合にアクセス要求が検出情報に合致したと判断する。
(1)アクセス要求がICタグのタグID及びタググループ名を含まない場合
(2)アクセス要求が検出情報のICタグのタグIDを含んでいる場合
(3)アクセス要求が検出情報のICタグのタグIDが属しているタググループ名を含んでいる場合
【0090】
ここで説明を簡単にするため、アプリケーションからのアクセス要求が例えば図6(B)の書込要求62であったとすると、ステップS4で取得したリーダライタ識別子とタグIDに図6(B)の書込要求62が合致すると判断され、図6(F)に示す書込要求62にタグ検出情報68を加えた書込情報70が出力される。
【0091】
この書込情報70を受けて、パラメータ抽出部32はマップ管理部16にタグIDを指定し、タグIDに対応するマップを取得する。続いてステップS7で書込要求か否かチェックし、この場合、書込要求であることから、ステップS8で項目名によりマップからパラメータを取得する。
【0092】
続いてステップS9で、取得したパラメータからメモリ付IDか否かチェックする。具体的には、パラメータの中にタグIDに対するアクセスパラメータがあればメモリ付のICタグと判別し、アクセスパラメータがなければメモリなしのICタグと判別する。メモリ付のICタグであった場合には、ステップS10に進み、データ分割書込みか否かチェックする。
【0093】
データ分割書込みであれば、ステップS11に進み、データをパラメータで指定されたICタグ用と外部記憶部の分割データD1,D2に分割し、ステップS12でデータD1をICタグに書き込み、ステップS13でデータD2を外部記憶部に書き込む。一方、ステップS10でデータが分割書込みでなかった場合には、ステップS14でデータをICタグに書き込む。更にステップS9でメモリなしのICタグであった場合には、ステップS15でデータを外部記憶部に書き込むことになる。これらの書込処理が済むと、ステップS16で書込正常終了をアプリケーションに応答する。
【0094】
続いて図11のステップS17に進み、読出要求か否かチェックする。読出要求であった場合には、ステップS18で図8(F)に示す読出情報82が得られていることから、そのタグIDを指定してマップ管理部からマップを取得した後、ステップS19で項目名によりマップからパラメータを取得する。
【0095】
続いてステップS20でメモリ付のICタグか否かチェックし、メモリ付のICタグであった場合には、ステップS21でデータ分割読出しか否かチェックする。データ分割読出しであれば、ステップS22でデータD1をICタグから読み出し、ステップS23でデータD2を外部記憶部から読み出し、ステップS24で読出データを連結する。
【0096】
またステップS21でデータの分割読出しでなかった場合には、ステップS25でICタグからデータを読み出す。更にステップS20でメモリなしのICタグであった場合には、ステップS26に進み、外部記憶部からデータを読み出す。これらのデータ読出しが済むと、ステップS27で読出データをアプリケーションに応答する。以上の処理を、ステップS28で停止指示があるまで繰り返すことになる。
【0097】
ここで図1のアクセス要求部26に設けたキュー28はアプリケーション10−1,10−2が発行した複数のアクセス要求を複数保持し、タグIC24の検出に応じて非同期に選択出力されることになるが、キュー28に対するアクセス要求の入出力は先入れ先出し(FIFO)を基本とする。
【0098】
即ち、機器管理部30によるICタグ24の検出情報に対し、これに合致するアクセス要求がキュー28に複数存在する場合、格納した順にアクセス要求を選択する。このようなアクセス管理部14のキュー28によりアクセス要求の発行順序に従ってICタグ24に対するアクセスを実行することで、同一のICタグへ複数の書込要求がある場合や書込要求と読出要求が混在している場合、アプリケーションが持つICタグデータと実際に記録されるICタグデータに食い違いが生じることを回避できる。
【0099】
またアクセス管理部14のキュー28はアプリケーション10−1,10−2からの書込要求及び又は読出要求を保持し、ICタグ24を検出する毎に実行することで、同時に複数のアプリケーションからの指示を扱うことが可能となるため、アプリケーション間のリーダライタ22−1〜22−nの使用についての競合を回避できる。
【0100】
またアプリケーション10−1,10−2はリーダライタ22−1〜22−nの使用について他のアプリケーションの振る舞いを知る必要がなくなるため、ICタグ24のアクセスに関し単純となり、アプリケーション10−1,10−2の開発コストをさげることができる。
【0101】
更に、アプリケーション10−1,10−2から発行したアクセス要求に優先度を設定してキュー28に格納することで、ICタグ24の検出情報に該当する複数のアクセス要求が存在する場合には優先度が最も高いアクセス要求を選択ことができる。これによりアプリケーションは、緊急のアクセスや確実に読み出したいデータのアクセスなどにつき、高い優先度を付したアクセス要求を発行することで、他のアクセスによって緊急時の対応が遅れたり、ICタグの通過などによってデータの読み書きに失敗したりすることを回避できる。
【0102】
またアプリケーション10−1,10−2ごとに優先度を定義してキュー28に格納することで、ICタグ24の検出情報に合致するアプリケーション10−1,10−2のアクセス要求が複数存在する場合、優先度の最も高いアプリケーションのアクセス要求を選択する。
【0103】
これによりキュー28に格納したICタグ24に対するアクセス要求の実行順序がアプリケーション10−1,10−2に設定した優先順に従うため、複数のアプリケーションの実行により重要な役割を持つアプリケーションのICタグのアクセス処理が他のアプリケーションのICタグのアクセスのために待たされることがなく、重要なアプリケーションについてICタグのアクセスを高速に処理することができる。
【0104】
次に図1のマップ管理部16で使用するタグ・マップ対応表38の他の実施形態を説明する。図1のタグ・マップ対応表38は、図4(A)に示すようにタグIDとマップ識別子の対応関係を登録するものであったが、マップの選択速度を上げ、またタグ・マップ対応表のサイズを小さくするため、本発明で使用するタグ・マップ対応表の他の実施形態としては、ICタグのタグIDをキーとしてマップの識別子を値とするハッシュ表を使用してもよい。
【0105】
一般にICタグIDの数は莫大であり、移動するICタグへのデータの読み書きなど、素早く読み書きを開始しなければならないケースは多い。ICタグに対応したマップをIDを引数としたハッシュ関数の値から求めることで、マップの検索を高速化できる。
【0106】
また本発明で使用するタグ・マップ対応表の他の実施形態として、図12に示すICタグIDのビットパターンとマップを対応付けたタグ・マップ対応表を使用してもよい。図12のタグ・マップ対応表にあっては、図12(A)のICタグIDビット84を、n−aビット、a−1〜bビット、b1〜0ビットの3つのビット領域に分け、この3つに分けたビット領域に対応して、図12(B)に示すように、ビットテーブル85を先頭にビットテーブル86−1,86−2を配置し、更にビットテーブル86−1についてはビットテーブル88を配置し、最終段のビットテーブルの各ビットに対応してマップ識別子c1〜c5を配置している。
【0107】
ICタグを使用するシステムでは、同一品目を取り扱うなどといったデータフォーマットが共通であるケースが多い。この場合、多数のICタグIDが共通のマップへ対応付けられることになる。多くのICタグIDのビットパターンはISOやEPCglobalなどにより業種や品目種などについて体系化されている。そこでICタグIDから対応するマップを検索する場合、図12のように、タグIDの体系を利用して品目種のビットフィールドだけを調べるなどすることで、マップの検索を高速化することができる。
【0108】
図13は複数のアクセス管理部に対しネットワークを介してマップ管理部を共有した本発明の他の実施形態のブロック図である。図13において、マップ管理部16は、複数のアクセス管理部14−1,14−2,・・・14−nによりネットワーク20を介して共有されている。
【0109】
アクセス管理部14−1は、ICタグの検出情報とアクセス要求の合致によりアクセス情報が得られた際に、アクセス情報の中のタグIDをネットワーク20を介してマップ管理部16に与え、対応するマップをダウンロードすることになる。
【0110】
ICタグを読み書きするアクセス装置14−1〜14−nは複数の場所で利用されるため、それぞれの場所のアクセス管理部14−1〜14−nが同一のマップ管理部16を共有することで同一のマップを取得することができ、間違ったマップを使用したり必要とするマップがないことによる障害を回避できる。
【0111】
またアクセス管理部14−1〜14−nに、マップ管理部16からダウンロードしたマップを一時的に保持するマップ一時記憶部90−1,90−2,・・・90−nを設けてもよい。この場合にはアクセス管理部14−1〜14−nは、それぞれに設けているマップ一時記憶部90−1〜90−nからタグIDの指定で対応するマップを取得することになる。この場合、マップ一時記憶部90−1〜90−nにタグIDに該当するマップが保持されていなければ、マップ管理部16からダウンロードすることになる。
【0112】
アクセス管理部14−1〜14−nにマップ一時記憶部90−1,90−2,・・・90−nを設けることで、アクセス管理部14−1〜14−nに対するマップ管理部16からのマップのダウンロードが一度で済み、ダウンロードによる遅延をなくし、共有されるマップ管理部16の負荷を低減し<ネットワークのトラフィックを低減することで、ICタグのアクセス速度を上げることができる。
【0113】
ここでマップ管理部16は、マップが更新された場合、全てのマップ一時記憶部90−1〜90−nの該当するマップを更新することになる。
【0114】
またマップ一時記憶部90−1〜90−nにダウンロードしたマップに有効か無効かを示すフラグを設けておき、マップ管理部16でマップの更新が行われた際にはマップ一時記憶部90−1〜90−nの該当するマップのフラグも無効とし、アクセス管理部14−1〜14−nで、タグIDでマップ一時記憶部90−1〜90−nを参照して該当するマップを取得した際にフラグが無効であれば、マップ管理部16からダウンロードして置き換えることによりフラグを有効として応答するようにしてもよい。
【0115】
マップ一時記憶部90−1〜90−nが多数ある場合、マップ更新によりマップ管理部16とマップ一時記憶部90−1〜90−nとの間に大きなトラフィックが生じ、マップ管理部16の負荷も高くなる。また、マップのダウンロードと置き換えを行う更新時の処理時間によりマップ一時記憶部90−1〜90−nのそれぞれの間での更新タイミングに大きな開きが起きる。
【0116】
そこで、マップ管理部16によるマップ更新処理として、該当するマップのフラグを無効にするだけにし、該当するマップを使用するマップ一時記憶部だけがフラグの無効を認識して更新したマップのダウンロードを行うことで、トラフィックや負荷を低減することができる。
【0117】
更に本発明でマップ管理部16に設けるマップとしては、指定されたICタグIDに対応するマップが存在しない場合に使用するデフォルトマップを準備しておくことが望ましい。デフォルトマップは例えば外部記憶部のアクセスパラメータだけを定義しておけばよい。
【0118】
これによって記憶容量の不明なICタグであっても確実にデータを書き込むことができるし、それ以降の読出しも可能となる。更に、デフォルトマップは、マップ管理部16側でアクセス対象として使用するICタグに対応したマップが準備できる前の段階で実際にそのICタグの検出が行われた場合に、効果的に対応することができる。
【0119】
図14は図1のマップ管理部16に設けるタグ・マップ対応表、マップセット及びマップの説明図である。図1のマップ管理部16にあっては図4(A)に示したタグ・マップ対応表38を使用しているが、この代わりに図14(A)に示すタグ・マップセット対応表92を使用する。タグ・マップセット対応表92はタグIDとマップセット識別子の対応関係を登録している。
【0120】
タグ・マップセット対応表92に登録されたマップセット識別子のそれぞれに対応して、図14(B)に示すマップセット94を準備する。マップセット94は「マップセット識別子=mapset−1」のマップセットであり、マップセット94にはロール名とマップ識別子の対応関係が登録されている。マップセット94のマップ識別子のそれぞれに対応して図14(C)のマップ95が準備されている。マップ95は「マップ識別子=map−1」のマップを示している。
【0121】
ここで図14(B)のマップセット94にあっては、ロール名として、どのロール名にも一致しない特別なロール名として、例えば「default」を割り当てている。またロール名はアプリケーションを使用しているユーザに割り当てた権限を表わす名前であり、例えばシステム管理者、ICタグ発行者あるいはICタグ利用者などがあり、それぞれのロール名に対応してアクセスパラメータが異なるマップに対応するマップ識別子を登録している。
【0122】
図15はユーザ管理情報からユーザIDに対応して得られたロールにより使用するマップを変更するマップ管理部の説明図である。図15にあっては、アプリケーションのアクセス要求に対応したスキーマ情報15より項目名として「管理者名」と「商品名」を取得しており、更にユーザ管理表96を持ち、ユーザ管理表96にはユーザIDとロール名が登録されている。したがって、アプリケーションを使用しているユーザIDによってユーザ管理表96から対応するロール名を取得することができる。
【0123】
タグ・マップセット対応表92、マップセット94及びマップ95−1,95−2は図14と基本的に同じであり、マップ管理部16に配置されている。タグ・マップセット対応表92は、アクセス管理部からのアクセス情報から得られたICタグのタグIDの指定で、対応するマップセット識別子を得ている。
【0124】
例えばタグIDとして「ID_11」を指定すると、マップセット識別子として「mapset−1」が得られる。このタグ・マップセット対応表92から取得したマップセット識別子「mapset−1」によりマップセット94が選択される。
【0125】
ここでアクセス管理部16に設けているユーザ管理表96に対し、アプリケーションからユーザIDとして「user−1」及び「user−2」が指定され、ロール名として「role−r1」及び「admin」が得られたとすると、それぞれのロール名によるマップセット94の指定で、ロール名「admin」についてはマップ識別子「map−1」が取得され、ロール名「role−r1」についてはマップ識別子「map−2」が取得される。
【0126】
このように、ユーザ管理情報から得られたロール名により、使用するマップをマップ95−1とマップ95−2に使い分けることができる。マップ識別子として「map−1」を持つマップ95−1は、項目名として「管理者名」と「商品名」の両方を登録しており、それぞれについてICタグに対するアクセスパラメータがセットされていることから、ロール名「admin」となるユーザはタグIDに対し「管理者名」と「商品名」の両方を書き込みまたは読み出すことができる。これに対しロール名「role−r1」を持つユーザは、マップ95−2のように「商品名」についてのみICタグに対する書込みまたは読出しを行うことができる。
【0127】
図16(A)は図15のマップ95−1に対応したICタグ24のメモリ内容であり、アドレス「0x00」からヘッダサイズ「1B(バイト)」の部分にタグデータサイズとして「15B(バイト)」を格納し、その後ろの15バイトに「管理者名」を格納している。続いてアドレス「0x10」からヘッダサイズ「4B(バイト)」の領域にタグデータサイズとして「16B(バイト)」を格納し、その後ろの20〜36バイトの領域に「商品名」を格納している。
【0128】
図16(B)は図15のマップ95−2に対応したICタグのメモリ内容であり、アドレス「0x16」以降にヘッダサイズ4B(バイト)でタグデータサイズ「16B(バイト)」を格納し、その後ろに「商品名」を格納している。
【0129】
このように同一ICタグに対してもロール毎に異なるマップを対応付けることで、ロール毎に読み書きできるデータを変えることができ、これによりユーザごとのアクセス制御やICタグメモリの使い分けが可能となる。
【0130】
図17は、ユーザ管理情報からユーザIDに対応して得られたロールにより、使用するICタグのメモリ領域を変更するマップ管理部の説明図である。図17において、スキーマ情報15からアプリケーションは項目名として「情報x」を取得している。またアクセス管理部に設けたユーザ管理表96に対するユーザIDとしてユーザID「user−1」の指定でロール名「role−r1」を得ており、またユーザID「user−n」の指定でロール名「admin」を得ている。
【0131】
タグ・マップセット対応表92、マップセット94、マップ95−1,95−2は、マップ管理部16に配置されており、タグ・マップセット対応表92に対する例えばタグIDとして「ID_11」の指定で、マップセット識別子「mapset−1」を得てマップセット94を取得している。
【0132】
このマップセット94に対しては、ユーザ管理表96から取得したロール名「role−r1」、「role−r2」の指定により、マップ識別子「map−1」、「map−2」によってマップ95−2とマップ95−2を得ている。
【0133】
マップ95−1はICタグ24に示すように、アドレス「0x00」から4B(バイト)のヘッダサイズにタグデータサイズ「16B(バイト)」を格納し、その後ろに「user−1」の「情報x」を書き込んでいる。一方、マップ95−2については、アドレス「0x20}から4バイトのヘッダサイズにタグデータサイズ「16B(バイト)」を格納した後、その後ろに「user−2」の「情報x」を書き込んでいる。
【0134】
このように同じICタグ24に対し異なるロール名を指定することで、メモリ領域を変えてアプリケーションから必要な情報を読み書きすることができ、ユーザごとのアクセス制御やICタグメモリの使い分けが可能となる。
【0135】
また本発明は図1に示したICタグアクセス装置のコンピュータで実行されるプログラムを提供するものであり、このプログラムは図10,図11のフローチャートに示した内容を備える。
【0136】
なお本発明は、その目的と利点を損なうことのない適宜の変形を含み、更に上記の実施形態に示した数値による限定は受けない。
【0137】
ここで本発明の特徴をまとめて列挙すると次の付記のようになる。
(付記)
(付記1)
ICタグをアクセスするコンピュータに、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理ステップと、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行させる事を特徴とするICタグアクセスプログラム。(1)
【0138】
(付記2)
前記コンピュータに、更に、
前記対応情報管理ステップにおいて、前記ICタグのアクセスパラメータと前記外部記憶部のアクセスパラメータを指定した対応関係情報を、前記ICタグの識別子と前記スキーマ情報の項目名に対応して保持する
処理を実行させる事を特徴とする付記1に記載のICタグアクセスプログラム。
【0139】
(付記3)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、
前記リーダライタで検出したICタグの識別子を保持する機器管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、前記機器管理ステップで保持したICタグの識別子に対応したアクセス要求を選択し、前記アクセス要求にICタグの識別子を付加したアクセス情報を出力するアクセス要求管理ステップと、
前記アクセス情報に含まれる前記ICタグの識別子に対応した対応情報を取得し、取得した対応情報からと前記項目名に対応したアクセスパラメータを抽出するパラメータ抽出ステップと、
前記パラメータ抽出ステップにて抽出したパラメータに基づいて外部記憶部にアクセスする外部記憶アクセスステップと、
前記パラメータ抽出部で抽出したパラメータに基づくアクセス命令を前記リーダライタに発行して前記ICタグにアクセスする命令生成ステップと、
を実行させることを特徴とする付記1に記載のICタグアクセスプログラム。(2)
【0140】
(付記4)
前記対応情報管理ステップにより保持されるアクセスパラメータは、ICタグのアクセスアドレス、データ長を格納したヘッダサイズ及び外部記憶部の識別名を含むことを特徴とすることを特徴とする付記1から付記3の何れかに記載のICタグアクセスプログラム。(3)
【0141】
(付記5)
前記対応情報管理ステップにより保持されるのアクセスパラメータは、更に、ICタグのリード及び又はライトのアクセス種別を含むことを特徴とすることを特徴とする付記4に記載のICタグアクセスプログラム。(4)
【0142】
(付記6)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記アクセス要求がデータの書込要求の場合、前記対応情報のアクセスパラメータに基づいて前記データの一部を前記ICタグに書込み、残りのデータを前記外部記憶部に書込む処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。(5)
【0143】
(付記7)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記アクセス要求がデータの書込要求の場合、前記マップのアクセスパラメータに基づいてアクセス頻度の高いデータ及び又は前記アプリケーションの処理に必要な最小限のデータを前記ICタグに書込み、残りのデータを前記外部記憶部に書込む処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。(6)
【0144】
(付記8)
前記コンピュータは、更に、
前記アクセス管理ステップにおいて、前記アクセス指示がデータの読出要求の場合、前記対応情報管理ステップにより保持されたアクセスパラメータに基づいて前記ICタグ及び外部記憶部のそれぞれからデータを読出して再構成して前記アプリケーションに応答する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。(7)
【0145】
(付記9)
前記コンピュータは、更に、
前記アクセス管理ステップにおいて、ICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の少なくとも何れかを管理し、前記リーダライタでICタグを検出した際に得られる前記ICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の何れか又はその組合せを持つ前記アプリケーションから出力されたアクセス要求を選択する処理を実行させることを特徴とする付記1に記載のICタグアクセスプログラム。(8)
【0146】
(付記10)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、複数のアクセス要求を保持している場合、受取り順にアクセス要求を選択する処理を実行させることを特徴とする付記1に記載のICタグアクセスプログラム。
【0147】
(付記11)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、優先度を指定した複数のアクセス要求を保持している場合、前記優先度の高い順にアクセス要求を選択する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。
【0148】
(付記12)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記ICタグの識別子のビットパターンと対応情報識別子の対応関係を登録したタグ・対応情報対応表を有し、前記アクセス管理部から指定された前記ICタグ識別子のビットパターンにより前記対応表から対応する対応情報を選択する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。
【0149】
(付記13)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記ICタグの識別子に対応する対応情報をネットワーク上の対応情報管理部からダウンロードして取得する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。
【0150】
(付記14)
前記コンピュータに、更に、
前記対応情報管理ステップにおいて、
ICタグの識別子と対応情報識別子の対応関係を登録したセット対応表と、
前記セット対応表のセット識別子毎にロール名と対応情報識別子の対応関係を登録したセットと、
前記対応情報セットの対応情報識別子に対応して登録された対応情報と、
を有し、
前記アクセス管理ステップにおいて、ユーザIDとロール名の対応関係を登録したユーザ管理情報を有し、
前記アクセス管理ステップにおいて、
記アクセス要求情報に含まれたICタグの識別子により前記セット対応表から対応情報識別子を取得し、
前記取得した対応情報識別子により前記セットからロール名と対応情報識別子の対応関係を取得し、
前記取得した前記ロール名と対応情報識別子の対応関係の中から前記ユーザ管理情報からユーザIDにより取得したロール名と対応関係を持つ対応情報識別子を取得し、更に、
前記取得した前記対応情報識別子に対応した対応情報を取得する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。
【0151】
(付記15)
ICタグをアクセスするコンピュータが、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理ステップと、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行する事を特徴とするICタグアクセス方法。(9)
【0152】
(付記16)
前記コンピュータは、更に、
前記対応情報管理ステップにおいて、前記ICタグのアクセスパラメータと前記外部記憶部のアクセスパラメータを指定した対応関係情報を、前記ICタグの識別子と前記スキーマ情報の項目名に対応して保持する処理を実行する事を特徴とする付記15に記載のICタグアクセス方法。
【0153】
(付記17)
前記コンピュータは、更に、
前記アクセス管理ステップにおいて、
前記リーダライタで検出したICタグの識別子を保持する機器管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、前記機器管理ステップで保持したICタグの識別子に対応したアクセス要求を選択し、前記アクセス要求にICタグの識別子を付加したアクセス情報を出力するアクセス要求管理ステップと、
前記アクセス情報に含まれる前記ICタグの識別子に対応した対応情報を取得し、取得した対応情報からと前記項目名に対応したアクセスパラメータを抽出するパラメータ抽出ステップと、
前記パラメータ抽出ステップにて抽出したパラメータに基づいて外部記憶部にアクセスする外部記憶アクセスステップと、
前記パラメータ抽出部で抽出したパラメータに基づくアクセス命令を前記リーダライタに発行して前記ICタグにアクセスする命令生成ステップと、
を実行することを特徴とする付記15に記載のICタグアクセス方法。
【0154】
(付記18)
ICタグをアクセスするICタグアクセス装置であって、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理手段と、
外部記憶部と、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理手段と、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理部より取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は前記外部記憶部をアクセスするアクセス管理手段と、
を備えた事を特徴とするICタグアクセス装置。(10)
【0155】
(付記19)
前記対応情報管理手段は、前記ICタグのアクセスパラメータと前記外部記憶部のアクセスパラメータを指定した対応関係情報を、前記ICタグの識別子と前記スキーマ情報の項目名に対応して保持する
処理を実行させる事を特徴とする付記18に記載のICタグアクセス装置。
【図面の簡単な説明】
【0156】
【図1】本発明によるICタグアクセス装置の機能構成のブロック図
【図2】図1の装置が適用されるコンピュータのハードウェア環境の説明図
【図3】図1のスキーマ管理部に設けたスキーマ情報の説明図
【図4】図1のマップ管理部に設けたタグ・マップ対応表とマップの説明図
【図5】図4のマップの具体例の説明図
【図6】図1におけるアプリケーションのICタグ書込処理における書込要求、タグ検出情報、書込情報、マップ抽出パラメータ及びICタグと外部記憶部への書込みの説明図
【図7】図1のアクセス要求管理部によるIDグループ及びリーダライタグループのグループ管理の説明図
【図8】図1におけるアプリケーションのICタグ読出処理における読出要求、タグ検出情報、読出情報、マップ抽出パラメータ及びICタグと外部記憶部からの読出し再構成の説明図
【図9】図1のアプリケーション処理のフローチャート
【図10】図1のアクセス管理部の処理のフローチャート
【図11】図10に続くアクセス管理部の処理のフローチャート
【図12】ICタグIDのビットパターンとマップの対応付けタグ・マップ対応表の説明図
【図13】複数のアクセス管理部に対しネットワークを介してマップ管理部を共用した装置構成のブロック図
【図14】図1のマップ管理部に設けるタグ・マップセット対応表、マップセット及びマップの説明図
【図15】ユーザ管理情報からユーザIDに対応して得られたロールにより使用するマップを変更するマップ管理部の説明図
【図16】図15のロールに対応したマップによるICタグのメモリ配置の説明図
【図17】ユーザ管理情報からユーザIDに対応して得られたロールにより使用するICタグのメモリ領域を変更するマップ管理部の説明図
【図18】メモリ付きICタグを使用した従来のICタグアクセス装置の説明図
【図19】メモリを持たずにIDを返すICタグを使用した従来のICタグアクセス装置の説明図
【符号の説明】
【0157】
10−1,10−2:アプリケーション
12:スキーマ管理部
14,14−1〜14−3:アクセス管理部
15:スキーマ情報
16:マップ管理部
18:外部記憶部
20:ネットワーク
22−1〜22−n:リーダライタ
24:ICタグ
26:アクセス要求管理部
28:キュー
30:機器管理部
32:パラメータ抽出部
34:データマッピング部
36:命令生成部
38:タグ・マップ対応表
40,95,95−1,95−2:マップ
42−1〜42−3:パラメータ領域
44:タグパラメータ
46:外部記憶パラメータ
48:アクセスパラメータ
50−1:IDグループ名管理部
50−2:リーダライタグループ名管理部
52−1:IDグループ名管理テーブル
52−2:リーダライタグループ名管理テーブル
54:タググループ名
56−1〜56−m:グループ内ID
58:リーダライタグループ名
60−1〜60−n:グループ内リーダライタ識別子
62,64,66,70:書込要求
68:タグ検出情報
72:マップ抽出パラメータ
74:データ
74−1,74−2:分割データ
76,78,80,82:読出要求
84:ICタグIDビット
85,86−1,86−2,88:ビットテーブル
90−1〜90−n:マップ一時記憶部
92:タグ・マップセット対応表
94:マップセット
95:マップ
96:ユーザ管理表
【技術分野】
【0001】
本発明は、アプリケーションからの要求によりICタグにアクセスするICタグアクセスプログラム、方法及び装置に関し、特にメモリ容量やフォーマットの異なるICタグとの間でデータを読み書きするICタグアクセスプログラム、方法及び装置に関する。
【背景技術】
【0002】
近年、ICタグは物流における物品識別システム、入退室管理システム、製造におけるプロセス管理システム、図書館やレンタル店での貸出品管理システム、店舗での在庫管理システム、畜産における家畜管理システムなど多数のシステムで利用されている。これらのシステムでは、ICタグが持つ固有のIDとメモリに書き込まれた情報を利用して、物品の判別や物品情報の取得、更新などを行う。
【0003】
例えば特許文献1は、データ構造規定情報を保持した無線タグからデータ構造規定情報を読出し、このデータ構造にしたがってデータ項目を保持した無線タグから目的のデータ項目を取得するようにしている。
【0004】
また特許文献2は、マスターICタグとスレーブICタグをもち、マスターICタグで各スレーブタグのメモリ構成情報を管理するようにしている。
【0005】
更に、特許文献3は、複数のタグを1個のタグとして扱い、メモリ容量の設定を複数のタグのメモリ容量の合計としている。
【0006】
このような従来のICタグの記憶容量は様々であり、メモリを持たないIDを返すだけのものもある。また様々な種類のICタグが集まる物流や店舗などのケースや新規ICタグ導入後などのケースでは異なる記憶容量のICタグを扱わなければならない。
【0007】
従来のICタグへデータを読み書きするシステムには、図18のように、アプリケーション200、リーダライタ202及びICタグ204を備え、ICタグ204のメモリに対してデータを読み書きするものがある。
【0008】
また図19のように、ICタグ204としてメモリを持たない場合には、ICタグ204からはリーダライタ202によりIDのみをアプリケーション200で取得し、アプリケーション200はキャッシュ装置206及びIDレゾルバ208を介してデータベース210との間でデータをタグIDに結び付けて読み書きするものもある。
【特許文献1】特開2004−21776号公報
【特許文献2】特開2004−201129号公報
【特許文献3】特開2002−288598号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
しかしながら、図18のメモリ付きのICタグを想定したシステムは、ICタグに設けたメモリのアドレスを指定してデータを読み書きするため、メモリを持たないICタグやデータを記録するために十分な記憶容量を持たないICタグに対しては、データを読み書きすることができない。またICタグへ記録するデータもシステム独自のデータフォーマットであるため、データフォーマットが異なるICタグに対してはデータの読み書きができない問題がある。
【0010】
図19のメモリを持たないシステムは、ICタグの記憶容量の違いに関わらずデータベースからデータを読み書きすることができるが、常にデータベースへのアクセスが必要となるために、多数のICタグを処理する場合、データベースアクセスによるトラフィックの増加やデータベースシステムの負荷上昇によりICタグ処理速度が低下するという問題がある。
【0011】
この場合、キャッシュ装置によりデータベースアクセスをキャッシングしたり、分散データベースを用いてデータベースアクセスの集中を防ぐことで、ICタグの処理速度低下をある程度軽減することは可能であるが、システムやデータベース間のデータ一貫性の保証や維持、データベース検索処理に関わる遅延が生じるため限界がある。
【0012】
またキャッシングでは、ICタグのデータが更新されるたびに他のシステムのキャッシュにある該当データを無効化しなければならず、また読出し時は常にキャッシュにある該当データの有効性を確認しなければならない。更に、例えば物流のケースのように、ICタグが各システムを一度だけ通過するケースではキャッシュの効果はない。
【0013】
分散データベースでは、一個のICタグのデータが複数のデータベースに分散して存在する場合、データの読み書きのたびにデータベースの検索と各データベースへのアクセスが生じてしまう。例えばある商品の出庫日時と製造番号を読み出そうとした場合、出庫日時データを持つ配送センターのデータベースからの読出しと、製造番号データを持つメーカーのデータベースからの読み出しが必要になり、かえってトラフィックを増やしてしまうことがある。
【0014】
更に、データベースシステムが停止したり、ネットワークが使えない場所などのデータベースへアクセスできない場合、ICタグの処理を行うことができない問題がある。
【0015】
本発明は、ICタグの記憶容量の違いやデータフォーマットの違いをアプリケーションに対し隠蔽し、異なる記憶容量のICタグや異なるデータフォーマットのICタグが混在した場合においても、データを読み書き可能とするICタグアクセスプログラム、方法及び装置を提供することを目的とする。
【課題を解決するための手段】
【0016】
本発明は、ICタグをアクセスするコンピュータにより実行されるプログラムを提供する。本発明のプログラムは、ICタグをアクセスするコンピュータに、
アプリケーションでICタグのアクセス要求が発生した際に、ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得してアプリケーションに提供するデータ構造定義情報提供管理ステップと、
ICタグのアクセスパラメータとICタグの識別子とをデータ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
アプリケーションから出力されるデータ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出したICタグの識別子に対応したアクセス要求を、保持したアクセス要求から選択した際に、ICタグの識別子とアクセス指示の項目名に対応した対応情報を対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従ってICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行させる事を特徴とする。
【0017】
ここで、対応情報管理ステップは、コンピュータに、ICタグのアクセスパラメータと外部記憶部のアクセスパラメータを指定した対応関係情報を、ICタグの識別子と前記スキーマ情報の項目名に対応して保持する処理を実行させる。
【0018】
アクセス管理ステップは、コンピュータに、
リーダライタで検出したICタグの識別子を保持する機器管理ステップと、
アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、機器管理ステップで保持したICタグの識別子に対応したアクセス要求を選択し、アクセス要求にICタグの識別子を付加したアクセス情報を出力するアクセス要求管理ステップと、
アクセス情報に含まれるICタグの識別子に対応した対応情報を取得し、取得した対応情報からと前記項目名に対応したアクセスパラメータを抽出するパラメータ抽出ステップと、
パラメータ抽出ステップにて抽出したパラメータに基づいて外部記憶部にアクセスする外部記憶アクセスステップと、
パラメータ抽出部で抽出したパラメータに基づくアクセス命令をリーダライタに発行して前記ICタグにアクセスする命令生成ステップと、
を実行させる。
【0019】
対応情報管理ステップにより保持されるアクセスパラメータは、ICタグのアクセスアドレス、データ長を格納したヘッダサイズ及び外部記憶部の識別名を含む。
【0020】
対応情報管理ステップにより保持されるのアクセスパラメータは、更に、ICタグのリード及び又はライトのアクセス種別を含む。
【0021】
アクセス管理ステップは、コンピュータに、アクセス要求がデータの書込要求の場合、対応情報のアクセスパラメータに基づいてデータの一部を前記ICタグに書込み、残りのデータを前記外部記憶部に書込む処理を実行させる。
【0022】
アクセス管理ステップは、コンピュータに、アクセス要求がデータの書込要求の場合、マップのアクセスパラメータに基づいてアクセス頻度の高いデータ及び又はアプリケーションの処理に必要な最小限のデータをICタグに書込み、残りのデータを外部記憶部に書込む処理を実行させる。
【0023】
アクセス管理ステップは、コンピュータに、アクセス指示がデータの読出要求の場合、対応情報管理ステップにより保持されたアクセスパラメータに基づいてICタグ及び外部記憶部のそれぞれからデータを読出して再構成してアプリケーションに応答する処理を実行させる。
【0024】
アクセス管理ステップは、コンピュータに、ICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の少なくとも何れかを管理し、リーダライタでICタグを検出した際に得られるICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の何れか又はその組合せを持つアプリケーションから出力されたアクセス要求を選択する処理を実行させる。
【0025】
アクセス管理ステップは、コンピュータに、複数のアクセス要求を保持している場合、受取り順にアクセス要求を選択する処理を実行させる。
【0026】
アクセス管理ステップは、コンピュータに、優先度を指定した複数のアクセス要求を保持している場合、優先度の高い順にアクセス要求を選択する処理を実行させる。
【0027】
アクセス管理ステップは、コンピュータに、ICタグの識別子のビットパターンと対応情報識別子の対応関係を登録したタグ・対応情報対応表を有し、アクセス管理部から指定されたICタグ識別子のビットパターンにより対応表から対応する対応情報を選択する処理を実行させる。
【0028】
アクセス管理ステップは、コンピュータに、ICタグの識別子に対応する対応情報をネットワーク上の対応情報管理部からダウンロードして取得する処理を実行させる。
【0029】
対応情報管理ステップにおいて、
ICタグの識別子と対応情報識別子の対応関係を登録したセット対応表と、
セット対応表のセット識別子毎にロール名と対応情報識別子の対応関係を登録したセットと、
対応情報セットの対応情報識別子に対応して登録された対応情報と、
を有し、
アクセス管理ステップにおいて、ユーザIDとロール名の対応関係を登録したユーザ管理情報を有し、
アクセス管理ステップにおいて、
記アクセス要求情報に含まれたICタグの識別子により前記セット対応表から対応情報識別子を取得し、
取得した対応情報識別子により前記セットからロール名と対応情報識別子の対応関係を取得し、
取得したロール名と対応情報識別子の対応関係の中からユーザ管理情報からユーザIDにより取得したロール名と対応関係を持つ対応情報識別子を取得し、更に、
取得した前記対応情報識別子に対応した対応情報を取得する処理を実行させる。
【0030】
本発明は、ICタグアクセス方法を提供する。本発明のICタグアクセス方法は、ICタグをアクセスするコンピュータが、
アプリケーションでICタグのアクセス要求が発生した際に、ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理ステップと、
ICタグのアクセスパラメータとICタグの識別子とをデータ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
アプリケーションから出力されるデータ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出したICタグの識別子に対応したアクセス要求を、保持したアクセス要求から選択した際に、ICタグの識別子とアクセス指示の項目名に対応した対応情報を対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従ってICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行する事を特徴とする。
【0031】
本発明は、ICタグをアクセスするICタグアクセス装置を提供する。本発明のICタグアクセス装置は、
アプリケーションでICタグのアクセス要求が発生した際に、ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理手段と、
外部記憶部と、
ICタグのアクセスパラメータとICタグの識別子とをデータ構造定義情報の項目名に対応して保持する対応情報管理手段と、
アプリケーションから出力されるデータ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出したICタグの識別子に対応したアクセス要求を、保持したアクセス要求から選択した際に、ICタグの識別子とアクセス指示の項目名に対応した対応情報を対応情報管理部より取得し、取得した対応情報のアクセスパラメータに従ってICタグ及び又は外部記憶部をアクセスするアクセス管理手段と、
を備えた事を特徴とする。
【0032】
なお、本発明によるICタグアクセス方法及び装置の詳細は、本発明のプログラムと基本的に同じになる。
【発明の効果】
【0033】
本発明によれば、記憶容量やデータフォーマットが異なるICタグが混在している場合においても、アプリケーションは同一のインタフェースでそれぞれの記憶容量、データフォーマットに応じたデータの読出し、書き込みが可能となる。
【0034】
また、メモリを持つICタグにおいて、頻繁に読み書きするデータや処理に必要な最小限のデータをICタグのメモリに置くことで、データベースアクセスによる処理速度低下やデータベースアクセス不能による障害を防ぐことが可能となる。
【0035】
またICタグの記憶容量を超えたデータであっても、ICタグと外部記憶部へ分割保持するため、ICタグのアクセス失敗やデータの破損を回避できる。
【発明を実施するための最良の形態】
【0036】
図1は本発明によるICタグアクセス装置の機能構成のブロック図である。図1において、本発明のICタグアクセス装置は、アプリケーション10−1,10−2、スキーマ管理部12、アクセス管理部14、マップ管理部16、ネットワーク20を介して接続した外部記憶部18及びリーダライタ22−1〜22−nで構成され、ICタグ24に対しデータの書込みと読出しを行う。
【0037】
アプリケーション10−1,10−2は、例えば物品識別システムや入退室管理システムなどの業務アプリケーションであり、業務処理の実行に伴いICタグ24に対する書込要求または読出要求を発生する。
【0038】
スキーマ管理部12は、アプリケーション10−1,10−2でICタグ24のアクセス要求、即ち書込要求または読出要求が発生した際に、ICタグ24に依存しない項目名一覧で構成されたスキーマ情報15から対応する項目名を取得してアプリケーション10−1,10−2に提供し、このスキーマ情報15の項目名を使用して、アプリケーション10−1,10−2は、アクセス管理部14に対しICタグに対する書込要求または読出要求を発生する。
【0039】
アプリケーション10−1,10−2がICタグ24に対するアクセス要求を指定するために与えるスキーマ情報の項目名は、ICタグ24の記憶容量やデータフォーマットに依存しない名前であるため、アプリケーション10−1,10−2はICタグ24の記憶容量やデータフォーマッタを一切意識する必要がなく、項目名のみによってICタグ24に対するアクセスを指定できる。このため、異なる記憶容量のICタグ24や異なるデータフォーマットのICタグ24が混在するようなことがあっても、アプリケーション10−1,10−2を一切変更する必要はない。
【0040】
マップ管理部16はタグ・マップ対応表38とマップ40を備える。タグ・マップ対応表38はタグIDとマップ識別子の対応関係を登録している。このためアクセス管理部14からICタグ24の読取りで得られたICタグIDを指定することで、タグ・マップ対応表38から対応するマップ識別子を取得し、取得したマップ識別子によりマップ40の中から対応するマップを取得して返すことができる。マップ40にはICタグ24のアクセスパラメータと外部記憶部18のアクセスパラメータが設定されている。このアクセスパラメータは
(1)ICタグ24のアクセスアドレス
(2)データ長を格納したヘッダサイズ
(3)外部記憶部18の識別名
(4)リード及びまたはライトのアクセス種別
を含んでいる。
【0041】
なお、(4)のアクセス種別は選択的要素であり、必須ではない。このアクセス種別によりICタグの読出しと書込みのそれぞれについて許可するか否かを指定することで、スキーマ情報の特定の項目名について書込みを禁止したりすることができ、ICタグへのアクセス制御をより細かく指定することが可能となる。
【0042】
マップ40は、ICタグIDに対応してスキーマ情報15から得られた複数の項目名につきアクセスパラメータを登録しており、マップ40に含まれる複数の項目名に対応したパラメータの中からアプリケーション10−1,10−2が出力したアクセス要求に含まれる項目名によって対応するアクセスパラメータを抽出することができる。
【0043】
アクセス管理部14は、アプリケーション10−1,10−2から出力されるスキーマ情報15の項目名を含むアクセス要求、即ち書込要求または読出要求をキュー28に保持し、リーダライタ22−1〜22−nで検出したICタグ24のタグIDに対応したアクセス要求をキュー28から選択した際に、ICタグ24のタグIDとアクセス要求の項目名に対応したマップ40をタグ・マップ対応表38を介してマップ管理部16から取得し、取得したマップ40の項目名により抽出されたアクセスパラメータに従ってICタグ24及びまたは外部記憶部18に対するアクセスを実行する。
【0044】
ここでICタグ24と外部記憶部18に対するアクセスは次の3つがある。
(1)ICタグ24と外部記憶部18の両方にアクセス
(2)ICタグ24のみにアクセス
(3)外部記憶部18のみにアクセス
【0045】
このようなアクセス管理部14には、その処理機能として、キュー28を備えたアクセス要求管理部26、機器管理部30、パラメータ抽出部32、データマッピング部34及び命令生成部36が設けられる。
【0046】
機器管理部30は、リーダライタ22−1〜22−n側で検出したICタグのタグID及びリーダライタ識別子を保持する。アクセス要求管理部26は、アプリケーション10−1,10−2から出力されるスキーマ情報15の項目名を含むアクセス要求をキュー28に保持し、機器管理部30で保持したICタグ24のタグIDに対応したアクセス要求をキュー28から選択し、選択したアクセス要求にICタグ24のタグIDを付加したアクセス情報、即ち書込情報または読出情報を出力する。
【0047】
パラメータ抽出部32は、アクセス要求管理部26から出力されたアクセス情報、即ち書込情報または読出情報に含まれるICタグ24のタグIDに対応したマップ40を、タグ・マップ対応表38を介して取得し、取得したマップ40からスキーマ情報の項目名に対応したアクセスパラメータを抽出する。
【0048】
データマッピング部34は、パラメータ抽出部32で抽出したパラメータに基づいて、外部記憶部18にアクセス、即ちデータの書込みまたは読出しを行う。
【0049】
命令生成部36は、パラメータ抽出部32で抽出したICタグ24に関するパラメータに基づき、アクセス命令即ち書込命令または読出命令を、リーダライタ22−1〜22−nの中のICタグ24を検出しているリーダライタ例えばリーダライタ22−1に発行して、ICタグ24にデータの書込みまたはICタグ24からのデータの読出しを行う。
【0050】
図1における本発明のICタグアクセス装置は、例えば図2のようなコンピュータのハードウェア資源により実現される。図2のコンピュータにおいて、MPU100のバス102には、RAM104、ROM106、ハードディスクドライブ108、キーボード112、マウス114、ディスプレイ116を備えた入出力デバイスコントローラ110、更に通信回線120と接続したネットワークアダプタ118が設けられている。
【0051】
本発明のICタグアクセス処理を実行するプログラムはハードディスクドライブ108にローディングされており、コンピュータの起動時に読み出されてRAM104上に展開され、MPU100により実行される。
【0052】
図3は図1のスキーマ管理部12に設けたスキーマ情報15の説明図である。スキーマ情報15はスキーマ名と項目名から構成されており、スキーマ名は例えば物流システム、入退室管理システム、製造管理システムなどのシステム概略で分類されている。
【0053】
スキーマ名のそれぞれに対しては複数の項目名が準備されており、例えば物流システムを例にとると、商品情報、あて先、入庫年月日、送り主、依頼主、商品名などが使用されている。アプリケーション10−1,10−2にあっては、自分の処理するスキーマ名、例えば物流システムの処理においてICタグにアクセス要求をする際には、スキーマ情報15の参照でアクセスに必要な項目名例えば「商品情報」を取得して、書込要求または読出要求を出力することになる。
【0054】
図4は図1のマップ管理部16に設けたタグ・マップ対応表とマップの説明図である。図4(A)はタグ・マップ対応表38であり、タグIDとマップ識別子から構成されている。タグ・マップ対応表38にあっては、図1のパラメータ抽出部32から書込情報または読出情報に含まれるICタグIDの指定を受けると、タグ・マップ対応表38を参照して対応するマップ識別子を取得し、取得したマップ識別子により図4(B)のようなマップ40を参照する。
【0055】
図4(B)のマップ40はマップ識別子をインデックスとして複数準備されている。また1つのマップ識別子を持つマップにあっては、スキーマ情報15から得られた項目名に分けてパラメータ領域42−1,42−2,42−3を持っており、それぞれにICタグ及び外部記憶部のアクセスに必要なパラメータを設定している。
【0056】
図5は図4(B)のマップ40の1つのパラメータ領域を取り出して具体的な構成を示している。図5において、マップ40のパラメータ領域は、タグパラメータ44、外部記憶パラメータ46及びアクセスパラメータ48で構成されている。タグパラメータ44としては、ICタグ24のメモリのアドレスとして「0x00」を格納し、またデータ長を格納したヘッダサイズとして「8B(バイト)」を格納し、更にタグデータサイズとして「24B(バイト)」を格納している。
【0057】
また外部記憶パラメータ46としては、例えばネットワーク20を介して接続していることから「URL−領域名」を設定している。更にアクセスパラメータ48については、リードのみ、リード及びライトのいずれかを設定できる。もちろん、アクセスパラメータ48は必要に応じて選択的に設けられるパラメータである。
【0058】
ここでタグパラメータ44により指定されるICタグ24のメモリに格納するデータとしては、頻繁に読み書きするデータやアプリケーション10−1,10−2の処理に最小限必要なデータとし、残りのデータを外部記憶パラメータ46に格納することが望ましい。このようなデータ分割によって、外部記憶パラメータ46のアクセスによる性能低下を防ぎ、また外部記憶パラメータ46のアクセス不能時でもICタグ24の必要最小限のデータをアクセスしてタグ処理を可能とする。
【0059】
再び図4(B)を参照するに、パラメータ領域42−1はタグパラメータと外部記憶パラメータの両方を登録している。またパラメータ領域42−2は外部パラメータが存在せず、ICタグのみをアクセスするためのパラメータである。更に、パラメータ領域42−3はタグパラメータが存在せず、外部記憶部のみをアクセスするパラメータである。
【0060】
このようにマップ40には、ICタグIDに対応したマップ識別子で特定されるマップ内に、スキーマ情報の項目名で指定される複数種類のICタグと外部記憶部のアクセスパラメータを必要に応じて登録し、これを利用できる。
【0061】
またメモリ容量やフォーマットの異なるICタグの種別は、図4(A)のタグ・マップ対応表38により対応関係が登録され、これによりアプリケーション10−1,10−2は様々なICタグに対し、そのメモリ容量やフォーマットの相違を意識することなくアクセスできる。
【0062】
更に、タグ・マップ対応表38及びマップ40は、アプリケーション10−1,10−が対応しようとするICタグが追加される度に、タグ・マップ対応表38及びマップ40に対し追加ICタグに対応した対応関係が追加更新されることになる。
【0063】
図6は図1におけるアプリケーションのICタグ書込処理における書込要求、タグ検出情報、書込情報、マップ抽出パラメータ及びICタグと外部記憶部への書込みの説明図である。
【0064】
図6(A)は例えばアプリケーション10−1がICタグ24に対し書込要求を発行する際に取得したスキーマ情報15の項目名となる「商品情報」である。図6(B)はスキーマ情報15から取得した「商品情報」を使用した書込要求62のデータ構造である。書込要求62は、先頭に書込指示を格納し、続いてスキーマ情報15から取得した「商品情報」を格納し、その後ろに例えば64バイトのデータを格納している。
【0065】
図6(C)は本発明で使用する他の書込要求64であり、図6(B)の書込要求62に対し使用するリーダライタを指定するための「リーダライタID」を含めている。また図6(D)は本発明で使用する他の書込要求66であり、図6(B)の書込要求62に更に「タグID」を加え、書込要求を行うICタグ24を特定できるようにしている。
【0066】
更に本発明にあっては、後の説明で明らかにするように、図6(C)に使用する「リーダライタID」の代わりに「リーダライタグループID」を使用してもよい。同様に、図6(D)の「タグID」の代わりに「グループタグID」を使用するようにしてもよい。
【0067】
図6(E)は図1の機器管理部30から出力されるタグ検出情報68であり、「リーダライタID」と「タグID」を備えている。
【0068】
図6(F)は図1のアクセス要求管理部26より出力される書込情報70であり、この書込情報70は図6(B)〜(D)の書込要求62,64又は66に、図6(E)のタグ検出情報68を組み合わせた情報であり、「書込指示」、「リーダライタID」、「タグID」、「商品情報」及び64バイトのデータから構成されている。
【0069】
図6(G)はパラメータ抽出部32によりマップ管理部16を参照して取得されたマップ抽出パラメータ72である。マップの取得は図6(F)の書込情報70におけるタグ「ID」を使用して行われ、この「タグID」により取得したマップから書込情報70における「商品情報」を使用して図6(G)のマップ抽出パラメータ72を取得することができる。マップ抽出パラメータ72は例えば図5のマップ40に対応した内容を持っている。
【0070】
図6(H)は、マップ抽出パラメータ72に基づくデータ74のICタグ24と外部記憶部18に対する書込処理の説明図である。この例にあっては、ICタグ24のメモリサイズは24バイトであり、マップ抽出パラメータ72により先頭アドレス「0x00」が指定され、そこからヘッダサイズで指定された8バイトの領域にデータ74のデータ長「64バイト」を格納し、その後ろに分割データ74−1として16バイト分のデータD1を格納している。
【0071】
一方、外部記憶部18については、データ74における前半の24バイトはICタグ24に格納されることから、後半の残り40バイトを分割データ74−2として書き込んでいる。
【0072】
図7は図1のアクセス要求管理部26によるIDグループ及びリーダライタグループのグループ管理の説明図である。図7において、アクセス要求管理部26には、IDグループ名管理部50−1とリーダライタグループ名管理部50−2が設けられ、それぞれIDグループ名管理テーブル52−1とリーダライタグループ名管理テーブル52−2を格納している。
【0073】
IDグループ名管理テーブル52−1は、右側に取り出して示すように、タググループ名54とグループ内ID56−1〜56−mで構成される。またリーダライタグループ名管理テーブル52−2も、右側に取り出して示すように、リーダライタグループ名58とグループ内リーダライタ識別子60−1〜60−nで構成されている。
【0074】
このようなIDグループ名管理テーブル52−1を使用して、ICタグ24から検出したタグIDがどのIDグループに属するかを求めることができる。同様にICタグ24を読み取ったリーダライタについても、リーダライタ識別子によりリーダライタグループ名管理テーブル52−2を参照することで、検出したリーダライタの属するリーダライタグループ名を取得することができる。
【0075】
このようにして取得されたIDグループ名及びリーダライタグループ名は、図6(C)の書込要求64における「リーダライタID」の代わりに「リーダライタグループID」を設定し、また図6(D)の書込要求66にあっては「タグID」の代わりに「タググループID」を設定することになる。
【0076】
ICタグのグループ名またはリーダライタのグループ名をアクセス要求に含めることにより、アクセスするICタグを限定できるため、アクセス対象外のICタグが混在しているときに間違ってアクセスしてしまうことを回避でき、必要以上のアクセスを抑制できるため処理速度を上げる効果がある。また、アクセスするリーダライタを限定できるため、例えばリーダライタの設置場所に応じたアクセスをアプリケーションは指示できるなど利便性が上がる。
【0077】
図8は図1におけるアプリケーションのICタグ読取処理における読出要求、タグ検出情報、読出情報、マップ抽出パラメータ及びICタグと外部記憶部からの読出し再構成の説明図である。
【0078】
図8(A)は、ICタグ24に対し例えばアプリケーション10−1が読出要求を発行する際に、スキーマ情報15から項目名として「商品情報」を取得した場合である。このようにしてスキーマ情報から「商品情報」を取得すると、図8(B)のように読出要求76を発行する。読出要求76は「読出指示」と「商品情報」で構成される。
【0079】
図8(C)は他の読出要求78であり、この読出要求78には、「書込指示」、「商品情報」に加え「リーダライタID」を配置している。この「リーダライタID」の代わりに「リーダライタグループID」を設定してもよい。図8(D)は他の読出要求80であり、「書込指示」及び「商品情報」に加え「タグID」を設定している。この「タグID」の代わりには「タググループID」を設定してもよい。図8(E)はタグ検出情報68であり、「リーダライタID」と「タグID」で構成される。
【0080】
図8(F)は読出情報82であり、図8(B)の読出要求76と図8(E)のタグ検出情報68を組み合わせた情報として、「読出指示」、「リーダライタID」、「タグID」及び「商品情報」で構成されている。
【0081】
図8(G)はパラメータ抽出部32によりマップ管理部16から抽出されたマップ抽出パラメータ72であり、ICタグ24のアドレス「0x00」、データ長となる64バイトを格納するヘッダサイズ「8B(バイト)」、タグデータサイズ「24B(バイト)」及び外部記憶名で構成されている。図8(H)はマップ抽出パラメータ72に基づく読出処理であり、ICタグ24のアドレス「0x00」からアドレス「0x24」までの24バイトを読み出し、一方、外部記憶部18からは40バイトの分割データ74−2を読み出し、読み出した分割データ74−1,74−2を再構成してリードデータ74を生成し、これをアプリケーションに返すようにしている。
【0082】
図9は図1のアプリケーション10−1の処理のフローチャートである。図9において、ステップS1でアプリケーション処理を実行しており、ステップS2でICタグに対する書込要求の発生の有無をチェックし、書込要求が発生するとステップS3に進み、スキーマ管理部12のスキーマ情報15を参照して項目名を取得する。
【0083】
続いてステップS4で、例えば図6(B)の書込要求62に示したデータ構造を持つ書込要求をアクセス管理部14に発行する。この書込要求の発行後は、ステップS5で終了応答を待っており、終了応答を受けると次の処理に進む。
【0084】
一方、ステップS6でICタグに対する読出要求の発生を判別した場合には、ステップS7でスキーマ管理部12のスキーマ情報15から項目名を取得した後、ステップS8で例えば図8(B)の読出要求76に示したデータ構造を持つ読出要求をアクセス管理部14に発行する。続いてステップS9でリード応答を待っており、リード応答があると、ステップS10でリードデータを取り込む。このようなステップS1〜S10の処理を、ステップS11で停止指示があるまで繰り返す。
【0085】
このようなアプリケーション処理にあっては、ICタグの記憶容量やデータフォーマットを考慮することがなく、スキーマ情報から取得した項目名のみによって書込要求または読出要求を行うことができる。
【0086】
図10及び図11は、図1のアクセス管理部14の処理のフローチャートである。図10において、アクセス管理処理は、ステップS1でアプリケーションからアクセス要求が受領されたか否かチェックしており、アクセス要求を受領すると、ステップS2でアクセス要求をキュー28に格納する。
【0087】
続いてステップS3でリーダライタによるICタグの検出が行われたか否かチェックしており、ICタグが検出されると、ステップS4でリーダライタの識別子とタグIDを取得する。続いてステップS5でキュー28にタグIDに合致するアクセス要求が存在するか否かチェックする。このステップS5におけるICタグの検出情報に合致するアクセス要求の判別は、次のようにして行う。
【0088】
まずリーダライタ識別子については、次の場合に書込要求が検出情報に合致したと判断する。
(1)アクセス要求がリーダライタ識別子及びリーダライタグループ名を含まない場合
(2)アクセス要求が検出情報のリーダライタ識別子を含んでいる場合
(3)アクセス要求が検出情報のリーダライタグループ名を含んでいる場合
【0089】
またICタグのタグIDについては、次の場合にアクセス要求が検出情報に合致したと判断する。
(1)アクセス要求がICタグのタグID及びタググループ名を含まない場合
(2)アクセス要求が検出情報のICタグのタグIDを含んでいる場合
(3)アクセス要求が検出情報のICタグのタグIDが属しているタググループ名を含んでいる場合
【0090】
ここで説明を簡単にするため、アプリケーションからのアクセス要求が例えば図6(B)の書込要求62であったとすると、ステップS4で取得したリーダライタ識別子とタグIDに図6(B)の書込要求62が合致すると判断され、図6(F)に示す書込要求62にタグ検出情報68を加えた書込情報70が出力される。
【0091】
この書込情報70を受けて、パラメータ抽出部32はマップ管理部16にタグIDを指定し、タグIDに対応するマップを取得する。続いてステップS7で書込要求か否かチェックし、この場合、書込要求であることから、ステップS8で項目名によりマップからパラメータを取得する。
【0092】
続いてステップS9で、取得したパラメータからメモリ付IDか否かチェックする。具体的には、パラメータの中にタグIDに対するアクセスパラメータがあればメモリ付のICタグと判別し、アクセスパラメータがなければメモリなしのICタグと判別する。メモリ付のICタグであった場合には、ステップS10に進み、データ分割書込みか否かチェックする。
【0093】
データ分割書込みであれば、ステップS11に進み、データをパラメータで指定されたICタグ用と外部記憶部の分割データD1,D2に分割し、ステップS12でデータD1をICタグに書き込み、ステップS13でデータD2を外部記憶部に書き込む。一方、ステップS10でデータが分割書込みでなかった場合には、ステップS14でデータをICタグに書き込む。更にステップS9でメモリなしのICタグであった場合には、ステップS15でデータを外部記憶部に書き込むことになる。これらの書込処理が済むと、ステップS16で書込正常終了をアプリケーションに応答する。
【0094】
続いて図11のステップS17に進み、読出要求か否かチェックする。読出要求であった場合には、ステップS18で図8(F)に示す読出情報82が得られていることから、そのタグIDを指定してマップ管理部からマップを取得した後、ステップS19で項目名によりマップからパラメータを取得する。
【0095】
続いてステップS20でメモリ付のICタグか否かチェックし、メモリ付のICタグであった場合には、ステップS21でデータ分割読出しか否かチェックする。データ分割読出しであれば、ステップS22でデータD1をICタグから読み出し、ステップS23でデータD2を外部記憶部から読み出し、ステップS24で読出データを連結する。
【0096】
またステップS21でデータの分割読出しでなかった場合には、ステップS25でICタグからデータを読み出す。更にステップS20でメモリなしのICタグであった場合には、ステップS26に進み、外部記憶部からデータを読み出す。これらのデータ読出しが済むと、ステップS27で読出データをアプリケーションに応答する。以上の処理を、ステップS28で停止指示があるまで繰り返すことになる。
【0097】
ここで図1のアクセス要求部26に設けたキュー28はアプリケーション10−1,10−2が発行した複数のアクセス要求を複数保持し、タグIC24の検出に応じて非同期に選択出力されることになるが、キュー28に対するアクセス要求の入出力は先入れ先出し(FIFO)を基本とする。
【0098】
即ち、機器管理部30によるICタグ24の検出情報に対し、これに合致するアクセス要求がキュー28に複数存在する場合、格納した順にアクセス要求を選択する。このようなアクセス管理部14のキュー28によりアクセス要求の発行順序に従ってICタグ24に対するアクセスを実行することで、同一のICタグへ複数の書込要求がある場合や書込要求と読出要求が混在している場合、アプリケーションが持つICタグデータと実際に記録されるICタグデータに食い違いが生じることを回避できる。
【0099】
またアクセス管理部14のキュー28はアプリケーション10−1,10−2からの書込要求及び又は読出要求を保持し、ICタグ24を検出する毎に実行することで、同時に複数のアプリケーションからの指示を扱うことが可能となるため、アプリケーション間のリーダライタ22−1〜22−nの使用についての競合を回避できる。
【0100】
またアプリケーション10−1,10−2はリーダライタ22−1〜22−nの使用について他のアプリケーションの振る舞いを知る必要がなくなるため、ICタグ24のアクセスに関し単純となり、アプリケーション10−1,10−2の開発コストをさげることができる。
【0101】
更に、アプリケーション10−1,10−2から発行したアクセス要求に優先度を設定してキュー28に格納することで、ICタグ24の検出情報に該当する複数のアクセス要求が存在する場合には優先度が最も高いアクセス要求を選択ことができる。これによりアプリケーションは、緊急のアクセスや確実に読み出したいデータのアクセスなどにつき、高い優先度を付したアクセス要求を発行することで、他のアクセスによって緊急時の対応が遅れたり、ICタグの通過などによってデータの読み書きに失敗したりすることを回避できる。
【0102】
またアプリケーション10−1,10−2ごとに優先度を定義してキュー28に格納することで、ICタグ24の検出情報に合致するアプリケーション10−1,10−2のアクセス要求が複数存在する場合、優先度の最も高いアプリケーションのアクセス要求を選択する。
【0103】
これによりキュー28に格納したICタグ24に対するアクセス要求の実行順序がアプリケーション10−1,10−2に設定した優先順に従うため、複数のアプリケーションの実行により重要な役割を持つアプリケーションのICタグのアクセス処理が他のアプリケーションのICタグのアクセスのために待たされることがなく、重要なアプリケーションについてICタグのアクセスを高速に処理することができる。
【0104】
次に図1のマップ管理部16で使用するタグ・マップ対応表38の他の実施形態を説明する。図1のタグ・マップ対応表38は、図4(A)に示すようにタグIDとマップ識別子の対応関係を登録するものであったが、マップの選択速度を上げ、またタグ・マップ対応表のサイズを小さくするため、本発明で使用するタグ・マップ対応表の他の実施形態としては、ICタグのタグIDをキーとしてマップの識別子を値とするハッシュ表を使用してもよい。
【0105】
一般にICタグIDの数は莫大であり、移動するICタグへのデータの読み書きなど、素早く読み書きを開始しなければならないケースは多い。ICタグに対応したマップをIDを引数としたハッシュ関数の値から求めることで、マップの検索を高速化できる。
【0106】
また本発明で使用するタグ・マップ対応表の他の実施形態として、図12に示すICタグIDのビットパターンとマップを対応付けたタグ・マップ対応表を使用してもよい。図12のタグ・マップ対応表にあっては、図12(A)のICタグIDビット84を、n−aビット、a−1〜bビット、b1〜0ビットの3つのビット領域に分け、この3つに分けたビット領域に対応して、図12(B)に示すように、ビットテーブル85を先頭にビットテーブル86−1,86−2を配置し、更にビットテーブル86−1についてはビットテーブル88を配置し、最終段のビットテーブルの各ビットに対応してマップ識別子c1〜c5を配置している。
【0107】
ICタグを使用するシステムでは、同一品目を取り扱うなどといったデータフォーマットが共通であるケースが多い。この場合、多数のICタグIDが共通のマップへ対応付けられることになる。多くのICタグIDのビットパターンはISOやEPCglobalなどにより業種や品目種などについて体系化されている。そこでICタグIDから対応するマップを検索する場合、図12のように、タグIDの体系を利用して品目種のビットフィールドだけを調べるなどすることで、マップの検索を高速化することができる。
【0108】
図13は複数のアクセス管理部に対しネットワークを介してマップ管理部を共有した本発明の他の実施形態のブロック図である。図13において、マップ管理部16は、複数のアクセス管理部14−1,14−2,・・・14−nによりネットワーク20を介して共有されている。
【0109】
アクセス管理部14−1は、ICタグの検出情報とアクセス要求の合致によりアクセス情報が得られた際に、アクセス情報の中のタグIDをネットワーク20を介してマップ管理部16に与え、対応するマップをダウンロードすることになる。
【0110】
ICタグを読み書きするアクセス装置14−1〜14−nは複数の場所で利用されるため、それぞれの場所のアクセス管理部14−1〜14−nが同一のマップ管理部16を共有することで同一のマップを取得することができ、間違ったマップを使用したり必要とするマップがないことによる障害を回避できる。
【0111】
またアクセス管理部14−1〜14−nに、マップ管理部16からダウンロードしたマップを一時的に保持するマップ一時記憶部90−1,90−2,・・・90−nを設けてもよい。この場合にはアクセス管理部14−1〜14−nは、それぞれに設けているマップ一時記憶部90−1〜90−nからタグIDの指定で対応するマップを取得することになる。この場合、マップ一時記憶部90−1〜90−nにタグIDに該当するマップが保持されていなければ、マップ管理部16からダウンロードすることになる。
【0112】
アクセス管理部14−1〜14−nにマップ一時記憶部90−1,90−2,・・・90−nを設けることで、アクセス管理部14−1〜14−nに対するマップ管理部16からのマップのダウンロードが一度で済み、ダウンロードによる遅延をなくし、共有されるマップ管理部16の負荷を低減し<ネットワークのトラフィックを低減することで、ICタグのアクセス速度を上げることができる。
【0113】
ここでマップ管理部16は、マップが更新された場合、全てのマップ一時記憶部90−1〜90−nの該当するマップを更新することになる。
【0114】
またマップ一時記憶部90−1〜90−nにダウンロードしたマップに有効か無効かを示すフラグを設けておき、マップ管理部16でマップの更新が行われた際にはマップ一時記憶部90−1〜90−nの該当するマップのフラグも無効とし、アクセス管理部14−1〜14−nで、タグIDでマップ一時記憶部90−1〜90−nを参照して該当するマップを取得した際にフラグが無効であれば、マップ管理部16からダウンロードして置き換えることによりフラグを有効として応答するようにしてもよい。
【0115】
マップ一時記憶部90−1〜90−nが多数ある場合、マップ更新によりマップ管理部16とマップ一時記憶部90−1〜90−nとの間に大きなトラフィックが生じ、マップ管理部16の負荷も高くなる。また、マップのダウンロードと置き換えを行う更新時の処理時間によりマップ一時記憶部90−1〜90−nのそれぞれの間での更新タイミングに大きな開きが起きる。
【0116】
そこで、マップ管理部16によるマップ更新処理として、該当するマップのフラグを無効にするだけにし、該当するマップを使用するマップ一時記憶部だけがフラグの無効を認識して更新したマップのダウンロードを行うことで、トラフィックや負荷を低減することができる。
【0117】
更に本発明でマップ管理部16に設けるマップとしては、指定されたICタグIDに対応するマップが存在しない場合に使用するデフォルトマップを準備しておくことが望ましい。デフォルトマップは例えば外部記憶部のアクセスパラメータだけを定義しておけばよい。
【0118】
これによって記憶容量の不明なICタグであっても確実にデータを書き込むことができるし、それ以降の読出しも可能となる。更に、デフォルトマップは、マップ管理部16側でアクセス対象として使用するICタグに対応したマップが準備できる前の段階で実際にそのICタグの検出が行われた場合に、効果的に対応することができる。
【0119】
図14は図1のマップ管理部16に設けるタグ・マップ対応表、マップセット及びマップの説明図である。図1のマップ管理部16にあっては図4(A)に示したタグ・マップ対応表38を使用しているが、この代わりに図14(A)に示すタグ・マップセット対応表92を使用する。タグ・マップセット対応表92はタグIDとマップセット識別子の対応関係を登録している。
【0120】
タグ・マップセット対応表92に登録されたマップセット識別子のそれぞれに対応して、図14(B)に示すマップセット94を準備する。マップセット94は「マップセット識別子=mapset−1」のマップセットであり、マップセット94にはロール名とマップ識別子の対応関係が登録されている。マップセット94のマップ識別子のそれぞれに対応して図14(C)のマップ95が準備されている。マップ95は「マップ識別子=map−1」のマップを示している。
【0121】
ここで図14(B)のマップセット94にあっては、ロール名として、どのロール名にも一致しない特別なロール名として、例えば「default」を割り当てている。またロール名はアプリケーションを使用しているユーザに割り当てた権限を表わす名前であり、例えばシステム管理者、ICタグ発行者あるいはICタグ利用者などがあり、それぞれのロール名に対応してアクセスパラメータが異なるマップに対応するマップ識別子を登録している。
【0122】
図15はユーザ管理情報からユーザIDに対応して得られたロールにより使用するマップを変更するマップ管理部の説明図である。図15にあっては、アプリケーションのアクセス要求に対応したスキーマ情報15より項目名として「管理者名」と「商品名」を取得しており、更にユーザ管理表96を持ち、ユーザ管理表96にはユーザIDとロール名が登録されている。したがって、アプリケーションを使用しているユーザIDによってユーザ管理表96から対応するロール名を取得することができる。
【0123】
タグ・マップセット対応表92、マップセット94及びマップ95−1,95−2は図14と基本的に同じであり、マップ管理部16に配置されている。タグ・マップセット対応表92は、アクセス管理部からのアクセス情報から得られたICタグのタグIDの指定で、対応するマップセット識別子を得ている。
【0124】
例えばタグIDとして「ID_11」を指定すると、マップセット識別子として「mapset−1」が得られる。このタグ・マップセット対応表92から取得したマップセット識別子「mapset−1」によりマップセット94が選択される。
【0125】
ここでアクセス管理部16に設けているユーザ管理表96に対し、アプリケーションからユーザIDとして「user−1」及び「user−2」が指定され、ロール名として「role−r1」及び「admin」が得られたとすると、それぞれのロール名によるマップセット94の指定で、ロール名「admin」についてはマップ識別子「map−1」が取得され、ロール名「role−r1」についてはマップ識別子「map−2」が取得される。
【0126】
このように、ユーザ管理情報から得られたロール名により、使用するマップをマップ95−1とマップ95−2に使い分けることができる。マップ識別子として「map−1」を持つマップ95−1は、項目名として「管理者名」と「商品名」の両方を登録しており、それぞれについてICタグに対するアクセスパラメータがセットされていることから、ロール名「admin」となるユーザはタグIDに対し「管理者名」と「商品名」の両方を書き込みまたは読み出すことができる。これに対しロール名「role−r1」を持つユーザは、マップ95−2のように「商品名」についてのみICタグに対する書込みまたは読出しを行うことができる。
【0127】
図16(A)は図15のマップ95−1に対応したICタグ24のメモリ内容であり、アドレス「0x00」からヘッダサイズ「1B(バイト)」の部分にタグデータサイズとして「15B(バイト)」を格納し、その後ろの15バイトに「管理者名」を格納している。続いてアドレス「0x10」からヘッダサイズ「4B(バイト)」の領域にタグデータサイズとして「16B(バイト)」を格納し、その後ろの20〜36バイトの領域に「商品名」を格納している。
【0128】
図16(B)は図15のマップ95−2に対応したICタグのメモリ内容であり、アドレス「0x16」以降にヘッダサイズ4B(バイト)でタグデータサイズ「16B(バイト)」を格納し、その後ろに「商品名」を格納している。
【0129】
このように同一ICタグに対してもロール毎に異なるマップを対応付けることで、ロール毎に読み書きできるデータを変えることができ、これによりユーザごとのアクセス制御やICタグメモリの使い分けが可能となる。
【0130】
図17は、ユーザ管理情報からユーザIDに対応して得られたロールにより、使用するICタグのメモリ領域を変更するマップ管理部の説明図である。図17において、スキーマ情報15からアプリケーションは項目名として「情報x」を取得している。またアクセス管理部に設けたユーザ管理表96に対するユーザIDとしてユーザID「user−1」の指定でロール名「role−r1」を得ており、またユーザID「user−n」の指定でロール名「admin」を得ている。
【0131】
タグ・マップセット対応表92、マップセット94、マップ95−1,95−2は、マップ管理部16に配置されており、タグ・マップセット対応表92に対する例えばタグIDとして「ID_11」の指定で、マップセット識別子「mapset−1」を得てマップセット94を取得している。
【0132】
このマップセット94に対しては、ユーザ管理表96から取得したロール名「role−r1」、「role−r2」の指定により、マップ識別子「map−1」、「map−2」によってマップ95−2とマップ95−2を得ている。
【0133】
マップ95−1はICタグ24に示すように、アドレス「0x00」から4B(バイト)のヘッダサイズにタグデータサイズ「16B(バイト)」を格納し、その後ろに「user−1」の「情報x」を書き込んでいる。一方、マップ95−2については、アドレス「0x20}から4バイトのヘッダサイズにタグデータサイズ「16B(バイト)」を格納した後、その後ろに「user−2」の「情報x」を書き込んでいる。
【0134】
このように同じICタグ24に対し異なるロール名を指定することで、メモリ領域を変えてアプリケーションから必要な情報を読み書きすることができ、ユーザごとのアクセス制御やICタグメモリの使い分けが可能となる。
【0135】
また本発明は図1に示したICタグアクセス装置のコンピュータで実行されるプログラムを提供するものであり、このプログラムは図10,図11のフローチャートに示した内容を備える。
【0136】
なお本発明は、その目的と利点を損なうことのない適宜の変形を含み、更に上記の実施形態に示した数値による限定は受けない。
【0137】
ここで本発明の特徴をまとめて列挙すると次の付記のようになる。
(付記)
(付記1)
ICタグをアクセスするコンピュータに、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理ステップと、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行させる事を特徴とするICタグアクセスプログラム。(1)
【0138】
(付記2)
前記コンピュータに、更に、
前記対応情報管理ステップにおいて、前記ICタグのアクセスパラメータと前記外部記憶部のアクセスパラメータを指定した対応関係情報を、前記ICタグの識別子と前記スキーマ情報の項目名に対応して保持する
処理を実行させる事を特徴とする付記1に記載のICタグアクセスプログラム。
【0139】
(付記3)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、
前記リーダライタで検出したICタグの識別子を保持する機器管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、前記機器管理ステップで保持したICタグの識別子に対応したアクセス要求を選択し、前記アクセス要求にICタグの識別子を付加したアクセス情報を出力するアクセス要求管理ステップと、
前記アクセス情報に含まれる前記ICタグの識別子に対応した対応情報を取得し、取得した対応情報からと前記項目名に対応したアクセスパラメータを抽出するパラメータ抽出ステップと、
前記パラメータ抽出ステップにて抽出したパラメータに基づいて外部記憶部にアクセスする外部記憶アクセスステップと、
前記パラメータ抽出部で抽出したパラメータに基づくアクセス命令を前記リーダライタに発行して前記ICタグにアクセスする命令生成ステップと、
を実行させることを特徴とする付記1に記載のICタグアクセスプログラム。(2)
【0140】
(付記4)
前記対応情報管理ステップにより保持されるアクセスパラメータは、ICタグのアクセスアドレス、データ長を格納したヘッダサイズ及び外部記憶部の識別名を含むことを特徴とすることを特徴とする付記1から付記3の何れかに記載のICタグアクセスプログラム。(3)
【0141】
(付記5)
前記対応情報管理ステップにより保持されるのアクセスパラメータは、更に、ICタグのリード及び又はライトのアクセス種別を含むことを特徴とすることを特徴とする付記4に記載のICタグアクセスプログラム。(4)
【0142】
(付記6)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記アクセス要求がデータの書込要求の場合、前記対応情報のアクセスパラメータに基づいて前記データの一部を前記ICタグに書込み、残りのデータを前記外部記憶部に書込む処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。(5)
【0143】
(付記7)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記アクセス要求がデータの書込要求の場合、前記マップのアクセスパラメータに基づいてアクセス頻度の高いデータ及び又は前記アプリケーションの処理に必要な最小限のデータを前記ICタグに書込み、残りのデータを前記外部記憶部に書込む処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。(6)
【0144】
(付記8)
前記コンピュータは、更に、
前記アクセス管理ステップにおいて、前記アクセス指示がデータの読出要求の場合、前記対応情報管理ステップにより保持されたアクセスパラメータに基づいて前記ICタグ及び外部記憶部のそれぞれからデータを読出して再構成して前記アプリケーションに応答する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。(7)
【0145】
(付記9)
前記コンピュータは、更に、
前記アクセス管理ステップにおいて、ICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の少なくとも何れかを管理し、前記リーダライタでICタグを検出した際に得られる前記ICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の何れか又はその組合せを持つ前記アプリケーションから出力されたアクセス要求を選択する処理を実行させることを特徴とする付記1に記載のICタグアクセスプログラム。(8)
【0146】
(付記10)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、複数のアクセス要求を保持している場合、受取り順にアクセス要求を選択する処理を実行させることを特徴とする付記1に記載のICタグアクセスプログラム。
【0147】
(付記11)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、優先度を指定した複数のアクセス要求を保持している場合、前記優先度の高い順にアクセス要求を選択する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。
【0148】
(付記12)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記ICタグの識別子のビットパターンと対応情報識別子の対応関係を登録したタグ・対応情報対応表を有し、前記アクセス管理部から指定された前記ICタグ識別子のビットパターンにより前記対応表から対応する対応情報を選択する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。
【0149】
(付記13)
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記ICタグの識別子に対応する対応情報をネットワーク上の対応情報管理部からダウンロードして取得する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。
【0150】
(付記14)
前記コンピュータに、更に、
前記対応情報管理ステップにおいて、
ICタグの識別子と対応情報識別子の対応関係を登録したセット対応表と、
前記セット対応表のセット識別子毎にロール名と対応情報識別子の対応関係を登録したセットと、
前記対応情報セットの対応情報識別子に対応して登録された対応情報と、
を有し、
前記アクセス管理ステップにおいて、ユーザIDとロール名の対応関係を登録したユーザ管理情報を有し、
前記アクセス管理ステップにおいて、
記アクセス要求情報に含まれたICタグの識別子により前記セット対応表から対応情報識別子を取得し、
前記取得した対応情報識別子により前記セットからロール名と対応情報識別子の対応関係を取得し、
前記取得した前記ロール名と対応情報識別子の対応関係の中から前記ユーザ管理情報からユーザIDにより取得したロール名と対応関係を持つ対応情報識別子を取得し、更に、
前記取得した前記対応情報識別子に対応した対応情報を取得する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。
【0151】
(付記15)
ICタグをアクセスするコンピュータが、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理ステップと、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行する事を特徴とするICタグアクセス方法。(9)
【0152】
(付記16)
前記コンピュータは、更に、
前記対応情報管理ステップにおいて、前記ICタグのアクセスパラメータと前記外部記憶部のアクセスパラメータを指定した対応関係情報を、前記ICタグの識別子と前記スキーマ情報の項目名に対応して保持する処理を実行する事を特徴とする付記15に記載のICタグアクセス方法。
【0153】
(付記17)
前記コンピュータは、更に、
前記アクセス管理ステップにおいて、
前記リーダライタで検出したICタグの識別子を保持する機器管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、前記機器管理ステップで保持したICタグの識別子に対応したアクセス要求を選択し、前記アクセス要求にICタグの識別子を付加したアクセス情報を出力するアクセス要求管理ステップと、
前記アクセス情報に含まれる前記ICタグの識別子に対応した対応情報を取得し、取得した対応情報からと前記項目名に対応したアクセスパラメータを抽出するパラメータ抽出ステップと、
前記パラメータ抽出ステップにて抽出したパラメータに基づいて外部記憶部にアクセスする外部記憶アクセスステップと、
前記パラメータ抽出部で抽出したパラメータに基づくアクセス命令を前記リーダライタに発行して前記ICタグにアクセスする命令生成ステップと、
を実行することを特徴とする付記15に記載のICタグアクセス方法。
【0154】
(付記18)
ICタグをアクセスするICタグアクセス装置であって、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理手段と、
外部記憶部と、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理手段と、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理部より取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は前記外部記憶部をアクセスするアクセス管理手段と、
を備えた事を特徴とするICタグアクセス装置。(10)
【0155】
(付記19)
前記対応情報管理手段は、前記ICタグのアクセスパラメータと前記外部記憶部のアクセスパラメータを指定した対応関係情報を、前記ICタグの識別子と前記スキーマ情報の項目名に対応して保持する
処理を実行させる事を特徴とする付記18に記載のICタグアクセス装置。
【図面の簡単な説明】
【0156】
【図1】本発明によるICタグアクセス装置の機能構成のブロック図
【図2】図1の装置が適用されるコンピュータのハードウェア環境の説明図
【図3】図1のスキーマ管理部に設けたスキーマ情報の説明図
【図4】図1のマップ管理部に設けたタグ・マップ対応表とマップの説明図
【図5】図4のマップの具体例の説明図
【図6】図1におけるアプリケーションのICタグ書込処理における書込要求、タグ検出情報、書込情報、マップ抽出パラメータ及びICタグと外部記憶部への書込みの説明図
【図7】図1のアクセス要求管理部によるIDグループ及びリーダライタグループのグループ管理の説明図
【図8】図1におけるアプリケーションのICタグ読出処理における読出要求、タグ検出情報、読出情報、マップ抽出パラメータ及びICタグと外部記憶部からの読出し再構成の説明図
【図9】図1のアプリケーション処理のフローチャート
【図10】図1のアクセス管理部の処理のフローチャート
【図11】図10に続くアクセス管理部の処理のフローチャート
【図12】ICタグIDのビットパターンとマップの対応付けタグ・マップ対応表の説明図
【図13】複数のアクセス管理部に対しネットワークを介してマップ管理部を共用した装置構成のブロック図
【図14】図1のマップ管理部に設けるタグ・マップセット対応表、マップセット及びマップの説明図
【図15】ユーザ管理情報からユーザIDに対応して得られたロールにより使用するマップを変更するマップ管理部の説明図
【図16】図15のロールに対応したマップによるICタグのメモリ配置の説明図
【図17】ユーザ管理情報からユーザIDに対応して得られたロールにより使用するICタグのメモリ領域を変更するマップ管理部の説明図
【図18】メモリ付きICタグを使用した従来のICタグアクセス装置の説明図
【図19】メモリを持たずにIDを返すICタグを使用した従来のICタグアクセス装置の説明図
【符号の説明】
【0157】
10−1,10−2:アプリケーション
12:スキーマ管理部
14,14−1〜14−3:アクセス管理部
15:スキーマ情報
16:マップ管理部
18:外部記憶部
20:ネットワーク
22−1〜22−n:リーダライタ
24:ICタグ
26:アクセス要求管理部
28:キュー
30:機器管理部
32:パラメータ抽出部
34:データマッピング部
36:命令生成部
38:タグ・マップ対応表
40,95,95−1,95−2:マップ
42−1〜42−3:パラメータ領域
44:タグパラメータ
46:外部記憶パラメータ
48:アクセスパラメータ
50−1:IDグループ名管理部
50−2:リーダライタグループ名管理部
52−1:IDグループ名管理テーブル
52−2:リーダライタグループ名管理テーブル
54:タググループ名
56−1〜56−m:グループ内ID
58:リーダライタグループ名
60−1〜60−n:グループ内リーダライタ識別子
62,64,66,70:書込要求
68:タグ検出情報
72:マップ抽出パラメータ
74:データ
74−1,74−2:分割データ
76,78,80,82:読出要求
84:ICタグIDビット
85,86−1,86−2,88:ビットテーブル
90−1〜90−n:マップ一時記憶部
92:タグ・マップセット対応表
94:マップセット
95:マップ
96:ユーザ管理表
【特許請求の範囲】
【請求項1】
ICタグをアクセスするコンピュータに、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理ステップと、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行させる事を特徴とするICタグアクセスプログラム。
【請求項2】
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、
前記リーダライタで検出したICタグの識別子を保持する機器管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、前記機器管理ステップで保持したICタグの識別子に対応したアクセス要求を選択し、前記アクセス要求にICタグの識別子を付加したアクセス情報を出力するアクセス要求管理ステップと、
前記アクセス情報に含まれる前記ICタグの識別子に対応した対応情報を取得し、取得した対応情報からと前記項目名に対応したアクセスパラメータを抽出するパラメータ抽出ステップと、
前記パラメータ抽出ステップにて抽出したパラメータに基づいて外部記憶部にアクセスする外部記憶アクセスステップと、
前記パラメータ抽出部で抽出したパラメータに基づくアクセス命令を前記リーダライタに発行して前記ICタグにアクセスする命令生成ステップと、
を実行させることを特徴とする請求項1に記載のICタグアクセスプログラム。
【請求項3】
前記対応情報管理ステップにより保持されるアクセスパラメータは、ICタグのアクセスアドレス、データ長を格納したヘッダサイズ及び外部記憶部の識別名を含むことを特徴とすることを特徴とする請求項1又は請求項2の何れかに記載のICタグアクセスプログラム。
【請求項4】
前記対応情報管理ステップにより保持されるのアクセスパラメータは、更に、ICタグのリード及び又はライトのアクセス種別を含むことを特徴とすることを特徴とする請求項3に記載のICタグアクセスプログラム。
【請求項5】
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記アクセス要求がデータの書込要求の場合、前記対応情報のアクセスパラメータに基づいて前記データの一部を前記ICタグに書込み、残りのデータを前記外部記憶部に書込む処理を実行させることを特徴とする請求項1に記載のICタグアクセスプログラム。
【請求項6】
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記アクセス要求がデータの書込要求の場合、前記マップのアクセスパラメータに基づいてアクセス頻度の高いデータ及び又は前記アプリケーションの処理に必要な最小限のデータを前記ICタグに書込み、残りのデータを前記外部記憶部に書込む処理を実行させることを特徴とする請求項1記載のICタグアクセスプログラム。
【請求項7】
前記コンピュータは、更に、
前記アクセス管理ステップにおいて、前記アクセス指示がデータの読出要求の場合、前記対応情報管理ステップにより保持されたアクセスパラメータに基づいて前記ICタグ及び外部記憶部のそれぞれからデータを読出して再構成して前記アプリケーションに応答する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。
【請求項8】
前記コンピュータは、更に、
前記アクセス管理ステップにおいて、ICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の少なくとも何れかを管理し、前記リーダライタでICタグを検出した際に得られる前記ICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の何れか又はその組合せを持つ前記アプリケーションから出力されたアクセス要求を選択する処理を実行させることを特徴とする請求項1に記載のICタグアクセスプログラム。
【請求項9】
ICタグをアクセスするコンピュータが、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理ステップと、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行する事を特徴とするICタグアクセス方法。
【請求項10】
ICタグをアクセスするICタグアクセス装置であって、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理手段と、
外部記憶部と、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理手段と、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理部より取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は前記外部記憶部をアクセスするアクセス管理手段と、
を備えた事を特徴とするICタグアクセス装置。
【請求項1】
ICタグをアクセスするコンピュータに、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理ステップと、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行させる事を特徴とするICタグアクセスプログラム。
【請求項2】
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、
前記リーダライタで検出したICタグの識別子を保持する機器管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、前記機器管理ステップで保持したICタグの識別子に対応したアクセス要求を選択し、前記アクセス要求にICタグの識別子を付加したアクセス情報を出力するアクセス要求管理ステップと、
前記アクセス情報に含まれる前記ICタグの識別子に対応した対応情報を取得し、取得した対応情報からと前記項目名に対応したアクセスパラメータを抽出するパラメータ抽出ステップと、
前記パラメータ抽出ステップにて抽出したパラメータに基づいて外部記憶部にアクセスする外部記憶アクセスステップと、
前記パラメータ抽出部で抽出したパラメータに基づくアクセス命令を前記リーダライタに発行して前記ICタグにアクセスする命令生成ステップと、
を実行させることを特徴とする請求項1に記載のICタグアクセスプログラム。
【請求項3】
前記対応情報管理ステップにより保持されるアクセスパラメータは、ICタグのアクセスアドレス、データ長を格納したヘッダサイズ及び外部記憶部の識別名を含むことを特徴とすることを特徴とする請求項1又は請求項2の何れかに記載のICタグアクセスプログラム。
【請求項4】
前記対応情報管理ステップにより保持されるのアクセスパラメータは、更に、ICタグのリード及び又はライトのアクセス種別を含むことを特徴とすることを特徴とする請求項3に記載のICタグアクセスプログラム。
【請求項5】
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記アクセス要求がデータの書込要求の場合、前記対応情報のアクセスパラメータに基づいて前記データの一部を前記ICタグに書込み、残りのデータを前記外部記憶部に書込む処理を実行させることを特徴とする請求項1に記載のICタグアクセスプログラム。
【請求項6】
前記コンピュータに、更に、
前記アクセス管理ステップにおいて、前記アクセス要求がデータの書込要求の場合、前記マップのアクセスパラメータに基づいてアクセス頻度の高いデータ及び又は前記アプリケーションの処理に必要な最小限のデータを前記ICタグに書込み、残りのデータを前記外部記憶部に書込む処理を実行させることを特徴とする請求項1記載のICタグアクセスプログラム。
【請求項7】
前記コンピュータは、更に、
前記アクセス管理ステップにおいて、前記アクセス指示がデータの読出要求の場合、前記対応情報管理ステップにより保持されたアクセスパラメータに基づいて前記ICタグ及び外部記憶部のそれぞれからデータを読出して再構成して前記アプリケーションに応答する処理を実行させることを特徴とする付記1記載のICタグアクセスプログラム。
【請求項8】
前記コンピュータは、更に、
前記アクセス管理ステップにおいて、ICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の少なくとも何れかを管理し、前記リーダライタでICタグを検出した際に得られる前記ICタグ識別子、ICタググループ識別子、リーダライタ識別子及びリーダライタグループ識別子の何れか又はその組合せを持つ前記アプリケーションから出力されたアクセス要求を選択する処理を実行させることを特徴とする請求項1に記載のICタグアクセスプログラム。
【請求項9】
ICタグをアクセスするコンピュータが、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理ステップと、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理ステップと、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理ステップにて保持された対応情報から取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は外部記憶部をアクセスするアクセス管理ステップと、
を実行する事を特徴とするICタグアクセス方法。
【請求項10】
ICタグをアクセスするICタグアクセス装置であって、
アプリケーションで前記ICタグのアクセス要求が発生した際に、前記ICタグに依存しない項目名一覧で構成されたデータ構造定義情報から対応する項目名を取得して前記アプリケーションに提供するデータ構造定義情報提供管理手段と、
外部記憶部と、
前記ICタグのアクセスパラメータと前記ICタグの識別子とを前記データ構造定義情報の項目名に対応して保持する対応情報管理手段と、
前記アプリケーションから出力される前記データ構造定義情報の項目名を含むアクセス要求を保持し、リーダライタで検出した前記ICタグの識別子に対応したアクセス要求を、該保持したアクセス要求から選択した際に、前記ICタグの識別子と前記アクセス指示の項目名に対応した対応情報を前記対応情報管理部より取得し、取得した対応情報のアクセスパラメータに従って前記ICタグ及び又は前記外部記憶部をアクセスするアクセス管理手段と、
を備えた事を特徴とするICタグアクセス装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【公開番号】特開2006−277484(P2006−277484A)
【公開日】平成18年10月12日(2006.10.12)
【国際特許分類】
【出願番号】特願2005−97458(P2005−97458)
【出願日】平成17年3月30日(2005.3.30)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成18年10月12日(2006.10.12)
【国際特許分類】
【出願日】平成17年3月30日(2005.3.30)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]