JP2010286935A - System and method for writing data to ic tag - Google Patents

System and method for writing data to ic tag Download PDF

Info

Publication number
JP2010286935A
JP2010286935A JP2009138776A JP2009138776A JP2010286935A JP 2010286935 A JP2010286935 A JP 2010286935A JP 2009138776 A JP2009138776 A JP 2009138776A JP 2009138776 A JP2009138776 A JP 2009138776A JP 2010286935 A JP2010286935 A JP 2010286935A
Authority
JP
Japan
Prior art keywords
data
tag
business
area
write
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009138776A
Other languages
Japanese (ja)
Other versions
JP5271816B2 (en
Inventor
Dan Yamamoto
暖 山本
Etsuo Kaneda
悦雄 金田
Tadashi Kaji
忠司 鍛
Kyoko Igai
恭子 五十井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2009138776A priority Critical patent/JP5271816B2/en
Publication of JP2010286935A publication Critical patent/JP2010286935A/en
Application granted granted Critical
Publication of JP5271816B2 publication Critical patent/JP5271816B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a system and method for speeding up data write processing to an IC tag which includes a limit in computing capability and memory capacity while suppressing a repair frequency of business application accompanying a specification change of the IC tag and an update frequency of information shared between the business applications. <P>SOLUTION: The total execution frequency of a write request command is reduced by taking a difference between last data read from the IC tag and next data to be written before issuing a data write command to the IC tag, and then issuing a write request command only for data to which rewriting has occurred. Also, write request data is obtained by a single continuous area write command (a BlockWrite equivalent command of ISO18000-6Type C) by splitting a storage area in the IC tag into two areas, a prime area and a postscript area, and allowing writing to the tail of postscript area after adding an identification code to writing target data when newly writing data. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は,ICタグに対するデータの書込処理に関する。   The present invention relates to a data writing process for an IC tag.

近年,物流分野をはじめとする種々の業界において,ICタグを利用した効率的な業務処理システムや物品管理システムの導入が検討されている。ICタグは,データが書き込まれたICチップとアンテナで構成されており,UHF帯などの電波を利用して,接触することなくデータの送受信が可能である。バーコードよりも多くの情報を表現することが可能であり,かつ離れた位置から情報を読み取ることが可能であるため,物流業界などでは,従来のバーコードに代わる管理手段として検討が進められている。また,ICカードに比べて低価格での生産が可能であるため,電車の乗車券や娯楽施設の入場券など,使い捨て可能なチケットへの利用可能性も検討されている。   In recent years, introduction of an efficient business processing system and article management system using an IC tag has been examined in various industries including the physical distribution field. An IC tag is composed of an IC chip and an antenna in which data is written, and can transmit and receive data without contact using radio waves such as a UHF band. Since it is possible to express more information than a barcode and it is possible to read the information from a distant location, the logistics industry has been studying as a management means to replace the conventional barcode. Yes. In addition, since it can be produced at a lower price than an IC card, the possibility of using it for a disposable ticket such as a train ticket or an admission ticket for an amusement facility is also being studied.

こうした業務での利用においては,改札機などの業務アプリケーションが,ICタグから読み込んだデータの一部を変更し,変更後のデータをICタグへ書き込む処理が多く発生すると想定される。例えば,ICタグを電車の乗車券に利用する場合,乗客の入場時には,自動改札機がICタグ内のデータを読み込み,乗車券の有効性を確認した後に,入場駅の情報等を格納したデータでタグ内のメモリを更新する。また,乗客の出場時には,自動改札機がICタグ内のデータを読み込み,乗客が有効な入場駅,入場時刻から入場済みであることを確認した後,出場情報を書き込んだデータでタグ内のメモリを更新する。   In such business use, it is assumed that business applications such as ticket gates often change a part of data read from an IC tag and write the changed data to the IC tag. For example, when an IC tag is used for a train ticket, when the passenger enters, the automatic ticket checker reads the data in the IC tag and checks the validity of the ticket, and then stores information such as information on the entry station. To update the memory in the tag. Also, when passengers enter, the automatic ticket gate reads the data in the IC tag, confirms that the passenger has entered from the valid entry station and entry time, and then enters the entry information into the memory in the tag. Update.

ところで,ICタグへデータを書き込む場合には,ICタグに対してデータの書き込みを要求する特定のコマンドを送信する必要がある。ICタグの仕様を定めるISO18000−6 Type Cでは,データの書込を指示する手段として,2バイトのデータを指定のアドレスへ書き込むためのWriteコマンドと,連続したデータを指定のアドレスへ書き込むためのBlockWriteコマンドの2つが規定されているが,当該コマンドの使用には,以下に述べる制限が加えられている。Writeコマンドを用いてデータを書き込む場合には,一度のコマンド/レスポンスで2バイトしか書き込むことができない。また,BlockWriteコマンドは2バイト以上のデータを書き込むことが可能だが,一度のコマンド/レスポンスでは,メモリ上で連続したデータしか書き込むことができない。したがって,メモリ上で分散配置されたデータを書き込む場合,複数回のコマンド/レスポンスが発生し,処理の完遂までに長い時間を要することが懸念される。   By the way, when writing data to the IC tag, it is necessary to send a specific command for requesting data writing to the IC tag. In ISO 18000-6 Type C, which defines the specifications of IC tags, as a means for instructing data writing, a Write command for writing 2-byte data to a specified address and a command for writing continuous data to a specified address Two BlockWrite commands are defined, but the following restrictions are added to the use of the commands. When writing data using the Write command, only 2 bytes can be written in one command / response. The BlockWrite command can write data of 2 bytes or more, but can write only continuous data on the memory with a single command / response. Therefore, when writing data distributed in the memory, there is a concern that a plurality of commands / responses may occur and it takes a long time to complete the processing.

また,ICタグはそれ自体に駆動電源を持たず,リーダ/ライタによる電磁誘導によって電力を供給されて駆動する。そのため,ICチップ内のメモリとしてはEEPROM(Electrically Erasable and Programmable ROM)等の不揮発性メモリが用いられる。この種の不揮発性メモリは,一般に消去処理や書込処理に時間がかかることが知られている。   Further, the IC tag does not have a driving power supply itself, and is driven by being supplied with electric power by electromagnetic induction by a reader / writer. Therefore, a nonvolatile memory such as an EEPROM (Electrically Erasable and Programmable ROM) is used as the memory in the IC chip. It is known that this type of nonvolatile memory generally takes time for erasure processing and writing processing.

上述した業務処理では,高速な処理が要求されることが多い。例えば,ICタグを電車の乗車券として用いた場合,自動改札機で乗客を混雑させないために,数百ミリ秒での高速処理が要求される。また,ライン上を流れる物品に貼り付けられたタグへ,完了した処理の情報を追記していく場合にも,同様の高速性が要求される。したがって,ICタグに対する書込処理の長さは,ICタグを利用した業務処理や物品管理などに支障を及ぼす可能性がある。   In the business processing described above, high-speed processing is often required. For example, when an IC tag is used as a train ticket, high-speed processing in a few hundred milliseconds is required so as not to crowd passengers with an automatic ticket gate. The same high speed is required when information on completed processing is added to a tag attached to an article flowing on the line. Therefore, the length of the writing process with respect to the IC tag may interfere with business processing and article management using the IC tag.

ICタグへの書込処理を高速化するために,業務アプリケーションが,書き換えが必要なデータに限って書込処理を要求することで,書込コマンド(Write コマンドやBlockWriteコマンドなど)の実行回数を減らし,処理完遂に要するコマンド/レスポンスの回数を削減する方法が知られている。   In order to speed up the writing process to the IC tag, the business application requests the writing process only for the data that needs to be rewritten, thereby reducing the number of executions of the write command (Write command, BlockWrite command, etc.). There is a known method for reducing the number of commands / responses required to complete the processing.

また,メモリへの書き込み時間を短縮するために,メモリの書込特性を利用する方法が知られている(例えば,特許文献1参照)。EEPROMなどの不揮発性メモリは,複数バイトからなるページ単位ならば,消去書き込み動作を一括して行うことが可能である,という特性をもつ。特許文献1では,メモリ上で分散配置されたデータに対して書込要求が発生した場合に,メモリ上のデータ配置を並び換えることで,可能な限りページ単位でデータを書き込み,処理の回数を削減する技術が提案されている。当該技術では,書込要求を受けたアドレス(論理アドレス)と,メモリ上の実際のアドレス(実アドレス)の対応表を管理することで,書込の度にデータの配置を変更することを可能としている。   In addition, in order to shorten the writing time to the memory, a method using the writing characteristic of the memory is known (for example, see Patent Document 1). A nonvolatile memory such as an EEPROM has a characteristic that an erasing / writing operation can be performed collectively in a unit of a page composed of a plurality of bytes. In Patent Document 1, when a write request is generated for data distributed in memory, data is written in page units as much as possible by rearranging the data arrangement on the memory, and the number of times of processing is set. Techniques to reduce have been proposed. With this technology, it is possible to change the data arrangement at each writing by managing the correspondence table of the address (logical address) that received the write request and the actual address (real address) on the memory. It is said.

特開2006−107379JP 2006-107379 A

業務アプリケーションが,書き換えが必要なデータに限って書込処理を要求する場合には,書込データの位置や範囲を指定するために,ICタグ内のメモリに,データがどのように配置されているかを把握している必要がある。このため,ICタグの仕様が変更され,メモリのデータ配置が変更された場合に業務アプリケーションの改修を要し,システム全体の管理に係る負担が増大する可能性がある。   When a business application requests a write process only for data that needs to be rewritten, how the data is arranged in the memory in the IC tag to specify the position and range of the write data It is necessary to know whether or not For this reason, when the specification of the IC tag is changed and the data arrangement of the memory is changed, it is necessary to modify the business application, and there is a possibility that the burden on management of the entire system increases.

また,特許文献1に記載の技術では,ICタグ毎に論理アドレスと実アドレスを対応付けるためのリンク・テーブルと呼ばれる対応表が無ければ,ICタグ内のデータを正しく読み書きすることができない。リンク・テーブルの管理をタグ自体に行わせることは,ICカードに比べて計算能力やメモリ容量に制限のあるICタグの場合には困難である。一方,リンク・テーブルを業務アプリケーションで管理する場合,各タグのリンク・テーブルを,そのタグを処理する可能性のある全ての業務アプリケーションで共有しなければならない。また,ICタグのメモリ内データ配置が変更される度に,共有されている当該タグのリンク・テー
ブル全てを更新する必要が発生する,という課題がある。
In the technique described in Patent Document 1, data in an IC tag cannot be read and written correctly without a correspondence table called a link table for associating a logical address with a real address for each IC tag. It is difficult for the tag itself to manage the link table in the case of an IC tag that has a limited calculation capability and memory capacity compared to an IC card. On the other hand, when the link table is managed by a business application, the link table of each tag must be shared by all business applications that may process the tag. In addition, there is a problem that it is necessary to update all the link tables of the shared tags every time the data arrangement of the IC tags in the memory is changed.

本発明は,上記の事情を鑑みてなされたものであり,ICタグの仕様変更に伴う業務アプリケーションの改修頻度や,業務アプリケーション間で共有する情報の更新頻度を抑えながら,計算能力やメモリ容量に制限のあるICタグに対して,データ書込処理を高速化するための装置,方法,プログラムを提供する。   The present invention has been made in view of the above circumstances, and it is possible to reduce the calculation frequency and memory capacity of the business application while suppressing the frequency of revising the business application accompanying the change in the IC tag specifications and the frequency of updating the information shared between business applications. An apparatus, method, and program for speeding up data writing processing are provided for limited IC tags.

具体的には,ICタグに対するデータ書込コマンドを発行する前に,直前にICタグから読み込んだデータと,これから書き込もうとするデータの差分を取り,書き換えの発生したデータに限定して書込要求コマンドを発行することで,書込要求コマンドの総実行回数を削減する。   Specifically, before issuing the data write command for the IC tag, the difference between the data read from the IC tag immediately before and the data to be written is taken, and the write request is limited to the data that has been rewritten. Issuing commands reduces the total number of write request commands executed.

そして,ICタグ内の記憶領域を,各データの初期値を格納する基本領域と,新たに書き換えられたデータを格納する追記領域の2つに分割し,新たにデータを書き込む際には,書き込み対象のデータそれぞれに識別のための識別符号を付加した後,メモリ上で連続するように追記領域の末尾へ書込を行うことで,書込要求データを一回の連続領域書込コマンド(ISO18000−6 Type CのBlockWrite相当のコマンド)で実現。   Then, the storage area in the IC tag is divided into two areas: a basic area for storing the initial value of each data and an additional recording area for storing newly rewritten data. After adding an identification code for identification to each target data, writing is performed to the end of the additional write area so as to be continuous on the memory, whereby the write request data is sent to a single continuous area write command (ISO 18000). -6 Realized with Type C BlockWrite command).

ここで,ICタグ内の追記領域に格納された実データと,業務データとの対応付けを管理するために,本発明では,ICタグ内に格納する識別符号と,各ミドルウェア装置間で共有する対応管理テーブルと符号管理テーブルの組み合わせを利用する。   Here, in order to manage the association between the actual data stored in the additional write area in the IC tag and the business data, in the present invention, the identification code stored in the IC tag and each middleware device are shared. A combination of correspondence management table and code management table is used.

本発明によれば,ICタグの仕様変更に伴う業務アプリケーションの改修頻度や,業務アプリケーション間で共有する情報の更新頻度を抑えることができ,データ書込処理を高速化できる。   According to the present invention, it is possible to suppress the frequency of revising business applications accompanying changes in IC tag specifications and the frequency of updating information shared between business applications, thereby speeding up the data writing process.

RFIDシステムの概略図。1 is a schematic diagram of an RFID system. RFIDシステムを構成する装置群の概略図。1 is a schematic diagram of a group of devices that constitute an RFID system. 業務データ書込バッファの概略図。Schematic diagram of business data write buffer. 対応管理テーブルの概略図。Schematic diagram of the correspondence management table. 符号管理テーブルの概略図。The schematic diagram of a code management table. 装置のハードウェア構成図。The hardware block diagram of an apparatus. 初期化処理のシーケンス図。The sequence diagram of initialization processing. ミドルウェア装置が初期化処理を実行する際のフローチャート。The flowchart at the time of a middleware apparatus performing the initialization process. 読込処理および更新処理のシーケンス図。The sequence diagram of a read process and an update process. ミドルウェア装置が読込処理を実行する際のフローチャート。The flowchart at the time of a middleware apparatus performing a reading process. ミドルウェア装置が読込処理を実行する際のフローチャート。The flowchart at the time of a middleware apparatus performing a reading process. ミドルウェア装置が書込処理を実行する際のフローチャート。The flowchart at the time of a middleware apparatus performing a writing process. ICタグを乗車券として利用する場合のシステムの一例を示した図。The figure which showed an example of the system in the case of using an IC tag as a boarding ticket. 対応管理テーブルおよび符号管理テーブルの一例を示した図。The figure which showed an example of the correspondence management table and the code | symbol management table. データ記憶部の一例を示した図。The figure which showed an example of the data storage part. 業務データ読込バッファ,業務データ書込バッファ,業務データ差分バッファの一例を示した図。The figure which showed an example of the business data read buffer, the business data write buffer, and the business data difference buffer. データ記憶部の一例を示した図。The figure which showed an example of the data storage part. データ記憶部の一例を示した図。The figure which showed an example of the data storage part. データ記憶部の一例を示した図。The figure which showed an example of the data storage part.

以下,図面を用いて本発明の実施の形態について説明する。なお,これにより本発明が限定されるものではない。   Embodiments of the present invention will be described below with reference to the drawings. Note that the present invention is not limited thereby.

図1は,本発明の一実施形態であるRFIDシステム10の概略図である。   FIG. 1 is a schematic diagram of an RFID system 10 according to an embodiment of the present invention.

図示するように,RFIDシステム10は,業務アプリケーション装置1−1〜1−n(nは1以上の自然数)と,ミドルウェア装置2−1〜2−nと,リーダ/ライタ装置3−1〜3−nと,ICタグ4と,を備える。リーダライタ装置3−i(iは1以上n以下の自然数)とICタグ4は,UHF 帯などの無線を用いて相互に通信を行う。また,ミドルウェア装置2−iとリーダライタ装置3−iは,USBやネットワークを介して相互に通信を行う。また,業務アプリケーション装置1−iとミドルウェア装置2−iは,USBやネットワークを介して相互に通信を行って良い。また,ミドルウェア装置2−iがソフトウェアとして業務アプリケーション装置1−iの内部に含まれる場合には,装置内部の信号線を用いて相互に通信を行っても良い。   As illustrated, the RFID system 10 includes business application devices 1-1 to 1-n (n is a natural number of 1 or more), middleware devices 2-1 to 2-n, and reader / writer devices 3-1 to 3-1. -N and the IC tag 4 are provided. The reader / writer device 3-i (i is a natural number between 1 and n) and the IC tag 4 communicate with each other using radio waves such as UHF band. The middleware device 2-i and the reader / writer device 3-i communicate with each other via a USB or a network. Further, the business application apparatus 1-i and the middleware apparatus 2-i may communicate with each other via a USB or a network. When the middleware device 2-i is included as software in the business application device 1-i, the middleware device 2-i may communicate with each other using a signal line inside the device.

図2は,業務アプリケーション装置1と,ミドルウェア装置2と,リーダライタ装置3と,ICタグ4と,の機能構成の例を示す概略図である。ここで,業務アプリケーション装置1と,ミドルウェア装置2と,リーダライタ装置3と,は,それぞれ業務アプリケーション装置1−1〜1−nと,ミドルウェア装置2−1〜2−nと,リーダライタ装置3−1〜3−nに共通する構造を記している。   FIG. 2 is a schematic diagram illustrating an example of the functional configuration of the business application device 1, the middleware device 2, the reader / writer device 3, and the IC tag 4. Here, the business application device 1, the middleware device 2, and the reader / writer device 3 are respectively the business application devices 1-1 to 1-n, the middleware devices 2-1 to 2-n, and the reader / writer device 3. Structures common to -1 to 3-n are shown.

図示するように,業務アプリケーション装置1は,業務処理部101と,ミドルウェア通信部102と,を備える。   As illustrated, the business application apparatus 1 includes a business processing unit 101 and a middleware communication unit 102.

業務処理部101は,業務アプリケーションの担当する業務を処理する。例えば,自動改札機では,ICタグから読み取った乗車券データの検証や,改札時の時刻,設置される駅などの情報に基づいて,データの上書きを指示する,といった処理が考えられる。   The business processing unit 101 processes a business in charge of a business application. For example, in an automatic ticket gate, processing such as verification of ticket data read from an IC tag and instructing overwriting of data based on information such as the time at the ticket gate and the installed station can be considered.

ミドルウェア通信部102は,ミドルウェア装置2との間でのデータの送受信を制御する。例えば,ミドルウェア通信部102としては,TCP/IP通信を可能とするプロトコルスタックや,プロセス間通信を可能とするモジュールなどが考えられる。   The middleware communication unit 102 controls data transmission / reception with the middleware device 2. For example, the middleware communication unit 102 may be a protocol stack that enables TCP / IP communication, a module that enables interprocess communication, or the like.

ミドルウェア装置2は,アプリケーション通信部201と,アプリケーションコマンド処理部202と,データ変換部203と,差分計算部204と,追記領域末尾ポインタ205と,業務データ差分バッファ2061と,業務データ書込バッファ2062と,業務データ読込バッファ2063と,基本領域書込バッファ2064と,基本領域読込バッファ2065と,追記領域書込バッファ2066と,追記領域読込バッファ2067と,対応管理テーブル207と,符号管理テーブル208と,ICタグコマンド処理部209と,リーダライタ通信部210と,を備える。   The middleware device 2 includes an application communication unit 201, an application command processing unit 202, a data conversion unit 203, a difference calculation unit 204, an additional write area end pointer 205, a business data difference buffer 2061, and a business data write buffer 2062. Business data read buffer 2063, basic area write buffer 2064, basic area read buffer 2065, additional write area write buffer 2066, additional write area read buffer 2067, correspondence management table 207, code management table 208 The IC tag command processing unit 209 and the reader / writer communication unit 210 are provided.

アプリケーション通信部201は,業務アプリケーション装置1との間でのデータの送受信を制御する。例えば,アプリケーション通信部201としては,TCP/IP通信を可能とするプロトコルスタックや,プロセス間通信を可能とするモジュールなどが考えられる。   The application communication unit 201 controls data transmission / reception with the business application apparatus 1. For example, the application communication unit 201 may be a protocol stack that enables TCP / IP communication, a module that enables inter-process communication, or the like.

アプリケーションコマンド処理部202は,業務アプリケーション装置1からアプリケーション通信部201を介して受信したアプリケーションコマンドのデコード処理や,業務アプリケーション装置1へ送信するアプリケーションレスポンスのエンコード処理を実行する。アプリケーションコマンドは,業務アプリケーション装置1がICタグ4に対してデータの読み書き等を指示するために用いるコマンドで,アプリケーションレスポンスは,アプリケーションコマンドの実行結果や,ICタグから読み取ったデータの内容を含み,業務アプリケーション装置1に対して送信されるメッセージである。   The application command processing unit 202 executes a decoding process of an application command received from the business application device 1 via the application communication unit 201 and an encoding process of an application response transmitted to the business application device 1. The application command is a command used by the business application apparatus 1 to instruct the IC tag 4 to read and write data. The application response includes the execution result of the application command and the content of the data read from the IC tag. This is a message transmitted to the business application apparatus 1.

データ変換部203は,アプリケーションコマンド処理部202によってデコードされたアプリケーションコマンドの内容に応じて,各種のバッファ2061〜2067に対するデータの読み書きや,対応管理テーブル207および符号管理テーブル208からのデータ取得や,差分計算部204に対する差分計算の実行要求などを行った後,ICタグコマンド処理部209に対してICタグコマンドの実行を要求し,ICタグ4に対するデータの読み書きを実行する。   The data conversion unit 203 reads / writes data from / to various buffers 2061 to 2067 according to the contents of the application command decoded by the application command processing unit 202, acquires data from the correspondence management table 207 and the code management table 208, After making a difference calculation execution request to the difference calculation unit 204, the IC tag command processing unit 209 is requested to execute an IC tag command, and data is read from and written to the IC tag 4.

また,データ変換部203は,ICタグコマンド処理部209から,リーダライタ3経由でICタグ4からの応答が受信されたことを通知されると,応答の内容に応じて各種のバッファ2061〜2067に対するデータの読み書きや,対応管理テーブル207および符号管理テーブル208からのデータ取得などを行った後,アプリケーション通信部201を介して,業務アプリケーション装置1に対してアプリケーションレスポンスを送信する。   When the data conversion unit 203 is notified from the IC tag command processing unit 209 that a response from the IC tag 4 has been received via the reader / writer 3, the data conversion unit 203 performs various buffers 2061 to 2067 according to the content of the response. After reading / writing data to / from the server and obtaining data from the correspondence management table 207 and code management table 208, an application response is transmitted to the business application apparatus 1 via the application communication unit 201.

差分計算部204は,業務データ書込バッファ2062に格納されたデータと,業務データ読込バッファ2063に格納されたデータと,の差分(異なっているデータの抽出)を計算し,結果を業務データ差分バッファ2061へ格納する。   The difference calculation unit 204 calculates a difference (extraction of different data) between the data stored in the business data write buffer 2062 and the data stored in the business data read buffer 2063, and the result is calculated as a business data difference. Store in buffer 2061.

追記領域末尾ポインタ205は,ICタグ4内の追記領域4032の末尾のアドレスを含み,ICタグ毎にその値を対応付けて格納する。   The additional write area end pointer 205 includes the end address of the additional write area 4032 in the IC tag 4 and stores the value in association with each IC tag.

業務データ差分バッファ2061は,上述したように,差分計算部204によって計算された差分データを格納するための記憶領域である。バッファの構造は後述する業務データ書込バッファ2062と同様であるため,説明を省略する。   The business data difference buffer 2061 is a storage area for storing the difference data calculated by the difference calculation unit 204 as described above. Since the structure of the buffer is the same as that of a business data write buffer 2062, which will be described later, description thereof is omitted.

業務データ書込バッファ2062は,業務アプリケーション装置1から受信した書込アプリケーションコマンドに含まれる書込対象業務データを一時的に格納するための記憶領域である。業務データ書込バッファ2062の一例について,図3を用いて説明する。   The business data write buffer 2062 is a storage area for temporarily storing write target business data included in the write application command received from the business application device 1. An example of the business data write buffer 2062 will be described with reference to FIG.

図3は,業務データ書込バッファ2062の一例を示した図である。図3に示すように,業務データ書込バッファ2062はテーブル型のデータ構造を取る。各レコード(行)には,「データ名」フィールド2062−1と,「データ」フィールド2062−2が定義されている。「データ名」フィールド2062−1には,業務アプリケーション装置1から受信した書込対象業務データの名前を含み,「データ」フィールド2062−2には,当該業務データの内容が格納される。なお,以後,業務データ書込バッファ2062内で「データ名」フィールド2062−1に値Xを持つ行を,業務データ書込バッファ2062のX行,と呼ぶこととする。   FIG. 3 is a diagram showing an example of the business data write buffer 2062. As shown in FIG. 3, the business data write buffer 2062 has a table type data structure. In each record (row), a “data name” field 2062-1 and a “data” field 2062-2 are defined. The “data name” field 2062-1 includes the name of the business data to be written received from the business application apparatus 1, and the “data” field 2062-2 stores the contents of the business data. Hereinafter, the line having the value X in the “data name” field 2062-1 in the business data write buffer 2062 is referred to as the X line of the business data write buffer 2062.

業務データ読込バッファ2063は,読込アプリケーションコマンドを実行した後,業務アプリケーション装置1へレスポンスとして返却する業務データを,一時的に格納するための記憶領域である。業務データ読込バッファ2063のデータ構造は,業務データ書込バッファ2062と同様のため,説明を省略する。   The business data reading buffer 2063 is a storage area for temporarily storing business data to be returned as a response to the business application apparatus 1 after executing a read application command. Since the business data read buffer 2063 has the same data structure as that of the business data write buffer 2062, the description thereof is omitted.

基本領域書込バッファ2064は,ICタグ4のデータ記憶部403内の基本領域4031へ書き込む予定のデータを一時的に格納するための記憶領域である。   The basic area write buffer 2064 is a storage area for temporarily storing data to be written to the basic area 4031 in the data storage unit 403 of the IC tag 4.

基本領域読込バッファ2065は,ICタグ4のデータ記憶部403内の基本領域4031から読み込んだデータを一時的に格納するための記憶領域である。   The basic area reading buffer 2065 is a storage area for temporarily storing data read from the basic area 4031 in the data storage unit 403 of the IC tag 4.

追記領域書込バッファ2066は,ICタグ4のデータ記憶部403内の追記領域4032へ書き込む予定のデータを一時的に格納するための記憶領域である。   The additional write area write buffer 2066 is a storage area for temporarily storing data to be written to the additional write area 4032 in the data storage unit 403 of the IC tag 4.

追記領域読込バッファ2067は,ICタグ4のデータ記憶部403内の追記領域4032から読み込んだデータを一時的に格納するための記憶領域である。   The additional write area reading buffer 2067 is a storage area for temporarily storing data read from the additional write area 4032 in the data storage unit 403 of the IC tag 4.

各バッファ2061〜2067に格納されるデータの値は,後述する処理フローを実施する中で,ミドルウェア装置2−1〜2−nそれぞれによって異なるも
のとなる。
The value of data stored in each of the buffers 2061 to 2067 differs depending on the middleware devices 2-1 to 2-n during execution of the processing flow described later.

対応管理テーブル207は,業務アプリケーション装置1が扱う業務データと,その業務データが基本領域4031上のどの位置に記載されるかを示すオフセットと,その業務データのサイズ,の3つの値を対応付けるテーブルである。対応管理テーブル207に含まれる値は,ミドルウェア装置2−1〜2−n間で同じものを,RFIDシステム10の運用開始前に共有しておく。対応管理テーブル207の一例について,図4を用いて説明する。   The correspondence management table 207 is a table for associating three values: business data handled by the business application apparatus 1, an offset indicating where the business data is written in the basic area 4031, and the size of the business data. It is. The values included in the correspondence management table 207 are the same among the middleware devices 2-1 to 2-n before the RFID system 10 starts operation. An example of the correspondence management table 207 will be described with reference to FIG.

図4は,対応管理テーブル207の一例を示した図である。対応管理テーブル207は,各レコード(行)に対して,「データ名」フィールド207−1と,「オフセット」フィールド207−2と,「データ長」フィールド207−3と,が定義されている。「データ名」フィールド207−1には,業務アプリケーション装置1が扱う業務データの名前が格納され,同じレコード(行)内の「オフセット」フィールド207−2には,当該業務データが基本領域4031内のどの位置に格納されるかを示す物理アドレス値が格納される。また,同じレコード内の「データ長」フィールド208−3には,当該業務データがデータ記憶部403内で占めるデータサイズが格納される。   FIG. 4 is a diagram illustrating an example of the correspondence management table 207. In the correspondence management table 207, a “data name” field 207-1, an “offset” field 207-2, and a “data length” field 207-3 are defined for each record (row). The “data name” field 207-1 stores the name of the business data handled by the business application apparatus 1, and the “offset” field 207-2 in the same record (row) stores the business data in the basic area 4031. A physical address value indicating in which position is stored is stored. In the “data length” field 208-3 in the same record, the data size occupied by the business data in the data storage unit 403 is stored.

符号管理テーブル208は,業務アプリケーション装置1が扱う業務データと,その業務データのデータ長と,追記領域4032へ当該業務データを書き込む際に利用する識別符号と,の組を対応付けるテーブルである。符号管理テーブル208に含まれる値は,ミドルウェア装置2−1〜2−n間で同じものを,RFIDシステム10の運用開始前に共有しておく。符号管理テーブル208の一例について,図5を用いて説明する。   The code management table 208 is a table that associates a set of business data handled by the business application apparatus 1, a data length of the business data, and an identification code used when writing the business data in the additional recording area 4032. The values included in the code management table 208 are shared by the middleware apparatuses 2-1 to 2-n before the operation of the RFID system 10 is started. An example of the code management table 208 will be described with reference to FIG.

図5は,符号管理テーブル208の一例を示した図である。符号管理テーブル208は,各レコード(行)に対して,「データ名」フィールド208−1と「識別符号」フィールド208−2と,が定義されている。「データ名」フィールド208−1には,業務アプリケーション装置1が扱う業務データの名前が格納され,同じレコード(行)内の「識別符号」フィールド208−2には,当該業務データがICタグ4の追記領域4032内に書き込まれる際,当該業務データとともに書き込まれる識別のための符号が格納される。「データ名」NULLに対応する「識別符号」c0は,追記領域内でのデータの終端を示すために使用する特別な識別符号である。   FIG. 5 is a diagram showing an example of the code management table 208. In the code management table 208, a “data name” field 208-1 and an “identification code” field 208-2 are defined for each record (row). The “data name” field 208-1 stores the name of the business data handled by the business application apparatus 1. The “identification code” field 208-2 in the same record (row) stores the business data in the IC tag 4. When the data is written in the additional recording area 4032, a code for identification written together with the business data is stored. An “identification code” c0 corresponding to “data name” NULL is a special identification code used to indicate the end of data in the additional recording area.

本実施例では,識別符号として用いる符号の種類について制限を加えない。固定長の符号と可変長の符号のどちらを用いてもよいが,個々のデータの書き換え頻度がある程度正確に予測できている場合には,書き換え頻度に基づいたハフマン符号などの可変長符号を利用することで,符号がデータ記憶部403内に占める割合を減らすことができ,有効となる可能性がある。   In this embodiment, no limitation is imposed on the type of code used as the identification code. Either a fixed-length code or a variable-length code can be used, but if the rewrite frequency of each data can be predicted to a certain degree of accuracy, a variable-length code such as a Huffman code based on the rewrite frequency is used. By doing so, the proportion of the code in the data storage unit 403 can be reduced, which may be effective.

ICタグコマンド処理部209は,データ変換部203から要求を受けたICタグコマンドを実行するために,リーダライタ通信部210を介してリーダライタ装置3へICタグコマンドを送信する。また,リーダライタ通信部210を介して受信したICタグレスポンスを,データ変換部203へ通知する。ICタグコマンドは,リーダライタ装置3がICタグ4に対してデータの読み書き等を指示するために用いるコマンドで,ICタグレスポンスは,ICタグコマンドの実行結果や,ICタグから読み取ったデータの内容を含むメッセージである。   The IC tag command processing unit 209 transmits the IC tag command to the reader / writer device 3 via the reader / writer communication unit 210 in order to execute the IC tag command received from the data conversion unit 203. Further, the IC tag response received via the reader / writer communication unit 210 is notified to the data conversion unit 203. The IC tag command is a command used by the reader / writer device 3 to instruct the IC tag 4 to read and write data. The IC tag response is the execution result of the IC tag command and the content of the data read from the IC tag. This message contains

リーダライタ通信部210は,リーダライタ装置3との間でのデータの送受信を制御する。例えば,USBデバイスを制御するデバイスドライバや,TCP/IP通信を可能とするプロトコルスタックなどが考えられる。   The reader / writer communication unit 210 controls transmission / reception of data to / from the reader / writer device 3. For example, a device driver that controls a USB device, a protocol stack that enables TCP / IP communication, and the like are conceivable.

リーダライタ装置3は,ミドルウェア通信部301と,ICタグ通信部302と,を備える。   The reader / writer device 3 includes a middleware communication unit 301 and an IC tag communication unit 302.

ミドルウェア通信部301は,ミドルウェア装置2との間でのデータの送受信を制御する。例えば,USBデバイスを制御するデバイスドライバや,TCP/IP通信を可能とするプロトコルスタックなどが考えられる。   The middleware communication unit 301 controls data transmission / reception with the middleware device 2. For example, a device driver that controls a USB device, a protocol stack that enables TCP / IP communication, and the like are conceivable.

ICタグ通信部302は,ICタグ4との間でのデータの送受信を制御する。例えば,通信に使う周波数の変更や,アンテナの出力制御や,変調によるICタグコマンドの送信制御や,ICタグレスポンスの受信制御などを行う。   The IC tag communication unit 302 controls data transmission / reception with the IC tag 4. For example, the frequency used for communication is changed, antenna output control, IC tag command transmission control by modulation, IC tag response reception control, and the like are performed.

ICタグ4は,リーダライタ通信部401と,コマンド処理部402と,データ記憶部403と,を備える。   The IC tag 4 includes a reader / writer communication unit 401, a command processing unit 402, and a data storage unit 403.

リーダライタ通信部401は,リーダライタ装置3との間でのデータの送受信を制御する。例えば,通信に使う周波数の変更や,アンテナの出力制御や,変調によるICタグレスポンスの送信制御や,ICタグコマンドの受信制御などを行う。   The reader / writer communication unit 401 controls data transmission / reception with the reader / writer device 3. For example, the frequency used for communication is changed, antenna output control, IC tag response transmission control by modulation, IC tag command reception control, and the like are performed.

コマンド処理部402は,リーダライタ装置3からリーダライタ通信部401を介して受信したICタグコマンドのデコード処理や,リーダライタ装置3へ送信するICタグレスポンスのエンコード処理を実行する。   The command processing unit 402 executes decoding processing of an IC tag command received from the reader / writer device 3 via the reader / writer communication unit 401 and encoding processing of an IC tag response transmitted to the reader / writer device 3.

データ記憶部403は,ICタグ4固有のデータを格納し,コマンド処理部402によってデコードされたコマンドの内容によって,データの書込と,消去と,読込と,等を制御する。データ記憶部403は,基本領域4031と追記領域4032とで構成される。   The data storage unit 403 stores data unique to the IC tag 4 and controls data writing, erasing, reading, and the like according to the content of the command decoded by the command processing unit 402. The data storage unit 403 includes a basic area 4031 and a write-once area 4032.

ここで,ミドルウェア装置2のICタグコマンド処理部209は,データ記憶部403に対して読み書きされるデータが,基本領域4031と追記領域4032のどちらに属するデータであるかを判別可能であるとする。このことは例えば,基本領域4031と追記領域4032のそれぞれがデータ記憶部403中に占める割合や,そのメモリ上の位置に関する情報を,各ミドルウェア装置2間で事前共有することで実現できる。   Here, it is assumed that the IC tag command processing unit 209 of the middleware apparatus 2 can determine whether the data read / written to / from the data storage unit 403 belongs to the basic area 4031 or the additional recording area 4032. . This can be realized by, for example, pre-sharing between the middleware devices 2 the ratio of the basic area 4031 and the additional recording area 4032 occupying the data storage unit 403 and the information on the position in the memory.

基本領域4031は,ICタグ4の初期化時にデータを書き込まれる領域である。   The basic area 4031 is an area in which data is written when the IC tag 4 is initialized.

また,追記領域4032は,ICタグ4の初期化後,データの書き換えが発生した際に,データを書き込まれる領域である。基本領域4031と追記領域4032とは,データ記憶部内で異なるメモリを用いて実現されていても良いし,連続した領域を仮想的に切り離したものでも良い。   The additional recording area 4032 is an area in which data is written when data is rewritten after the IC tag 4 is initialized. The basic area 4031 and the additional recording area 4032 may be realized by using different memories in the data storage unit, or may be obtained by virtually separating continuous areas.

以上に記載した業務アプリケーション装置1と,ミドルウェア装置2と,リーダライタ装置3とは,例えば,図6(コンピュータ9の概略図)に示すような,CPU(Central Processing Unit)901と,メモリ902と,HDD(Hard Disk Drive)等の外部記憶装置903と,CD−ROM(Compact Disk Read Only Memory)やDVD−ROM(Digital Versatile Disk Read Only Memory)などの可搬性を有する記憶媒体904から情報を読み出す読取装置905と,キーボードやマウス等の入力装置906と,ディスプレイなどの出力装置907と,通信ネットワークに接続するためのNIC(Network Interface Card)などの送受信装置908と,を備えた一般的なコンピュータ9で実現できる。例えば,各種バッファ2061〜2067やデータ記憶部403は,CPU901がメモリ902又は外部記憶装置903を利用することにより実現可能である。また,業務処理部101やデータ変換部203等,特定の処理や制御を行う機能については,外部記憶装置903に記憶されている所定のプログラムをメモリ902にロードしてCPU901で実行することで実現可能である。また,リーダライタ通信部210等,通信制御を行う機能については,CPU901が送受信装置908を利用することで実現可能である。この所定のプログラムは,読取装置905を介して記憶媒体904から,あるいは,送受信装置908を介してネットワークから,外部記憶装置903にダウンロードされ,それから,メモリ902上にロードされてCPU901により実行されるようにしてもよい。また,読取装置905を介して記憶媒体904から,あるいは,送受信装置908を介してネットワークから,メモリ902上に直接ロードされ,CPU901により実行されるようにしてもよい。   The business application device 1, middleware device 2, and reader / writer device 3 described above are, for example, a CPU (Central Processing Unit) 901, a memory 902, as shown in FIG. 6 (schematic diagram of the computer 9). , HDD (Hard Disk Drive) and other external storage devices 903, and CD-ROM (Compact Disk Read Only Memory) and DVD-ROM (Digital Versatile Disk Read Only Memory) such as a portable storage medium 90 having readability. A reader 905, an input device 906 such as a keyboard and a mouse, an output device 907 such as a display, and a NIC (Network Interface) for connection to a communication network ace Card) and other transmission / reception devices 908. For example, the various buffers 2061 to 2067 and the data storage unit 403 can be realized by the CPU 901 using the memory 902 or the external storage device 903. Further, functions such as the business processing unit 101 and the data conversion unit 203 that perform specific processing and control are realized by loading a predetermined program stored in the external storage device 903 into the memory 902 and executing it by the CPU 901. Is possible. Further, functions for performing communication control such as the reader / writer communication unit 210 can be realized by the CPU 901 using the transmission / reception device 908. The predetermined program is downloaded from the storage medium 904 via the reading device 905 or from the network via the transmission / reception device 908 to the external storage device 903, and then loaded onto the memory 902 and executed by the CPU 901. You may do it. Alternatively, the program may be directly loaded on the memory 902 from the storage medium 904 via the reading device 905 or from the network via the transmission / reception device 908 and executed by the CPU 901.

次に,図7から図12を用いて,業務アプリケーション装置1−1により初期化されたICタグ4が,別の業務アプリケーション装置1−2によってデータを読み書きされる場合のシーケンスについて説明する。   Next, a sequence when the IC tag 4 initialized by the business application apparatus 1-1 is read / written by another business application apparatus 1-2 will be described with reference to FIGS.

図7は,業務アプリケーション装置1−1がICタグ4の初期化を行う場合のシーケンスを記載した図である。   FIG. 7 is a diagram describing a sequence in a case where the business application apparatus 1-1 initializes the IC tag 4.

ICタグを乗車券として利用する場合,当該シーケンスは,発券機(業務アプリケーション装置)による発券シーケンスに対応する。すなわち,データが書き込まれていない,発券前の乗車券ICタグに対して,その発券機が設置された駅の情報や,発券時刻や,当該乗車券の有効範囲,有効期限などを,ICタグ内のデータ記憶領域に書き込むシーケンスに対応する。   When the IC tag is used as a ticket, the sequence corresponds to a ticket issuing sequence by a ticket issuing machine (business application device). That is, with respect to a ticket IC tag before ticketing in which data is not written, information on the station where the ticketing machine is installed, ticketing time, valid range of the ticket, expiration date, etc. Corresponds to the sequence of writing in the data storage area.

業務アプリケーション装置1−1は,ユーザから入出力装置を介して初期化要求操作を受け付けると,ミドルウェア通信部102が,ミドルウェア装置2−1に対して初期化要求アプリケーションコマンドを送信する(S101)。当該コマンドには,パラメータとして,当該業務アプリケーション装置1−1に関連する設定情報が含まれる。乗車券の発券業務の場合,当該パラメータには,業務アプリケーション装置が設置された駅の情報や,発券時刻や,当該乗車券の有効範囲,有効期限などが含まれる。   When the business application apparatus 1-1 receives an initialization request operation from the user via the input / output device, the middleware communication unit 102 transmits an initialization request application command to the middleware apparatus 2-1 (S101). The command includes setting information related to the business application apparatus 1-1 as a parameter. In the case of a ticketing service for a ticket, the parameters include information on the station where the business application device is installed, the ticketing time, the valid range of the ticket, the expiration date, and the like.

ミドルウェア装置2−1は,装置内のアプリケーション通信部201が,業務アプリケーション装置1−1から送信された初期化要求アプリケーションコマンドを受信すると,受け取ったパラメータ内の業務データを,ICタグへ書き込むための処理を実行する(初期化前処理,S102)。   When the application communication unit 201 in the device receives the initialization request application command transmitted from the business application device 1-1, the middleware device 2-1 writes the business data in the received parameter to the IC tag. Processing is executed (pre-initialization processing, S102).

以下,当該処理S102の詳細について,図8を用いて説明する。   Hereinafter, details of the processing S102 will be described with reference to FIG.

図8は,ミドルウェア装置2による初期化処理の詳細を表したフローチャートである。   FIG. 8 is a flowchart showing details of the initialization process by the middleware device 2.

ミドルウェア装置2−1内では,アプリケーション通信部201が,業務アプリケーション装置1−1から送信された初期化要求アプリケーションコマンドを受信すると(S102−1), アプリケーションコマンド処理部202が,当該コマンドをデコードし,当該コマンドに含まれるパラメータ(業務データ)を取得しデータ変換部203へ受け渡す(S102−2)。   In the middleware device 2-1, when the application communication unit 201 receives the initialization request application command transmitted from the business application device 1-1 (S102-1), the application command processing unit 202 decodes the command. The parameter (business data) included in the command is acquired and transferred to the data conversion unit 203 (S102-2).

データ変換部203は,まず,業務データ書込バッファ2062と,基本領域書込バッファ2064と,を空にする(S102−3)。   The data conversion unit 203 first empties the business data write buffer 2062 and the basic area write buffer 2064 (S102-3).

次に,データ変換部203は,取得した業務データを,業務データ書込バッファ2062へ格納する(S102−4)。   Next, the data conversion unit 203 stores the acquired business data in the business data write buffer 2062 (S102-4).

続いて,データ変換部203は,CPU901内のレジスタまたはメモリ902または外部記憶装置903上に,4つの変数M,NAME,OFFSET,DATA用の領域を確保し,それぞれ値0で初期化する(S102−5)。   Subsequently, the data conversion unit 203 secures four variable M, NAME, OFFSET, and DATA areas on a register in the CPU 901, the memory 902, or the external storage device 903, and initializes them with a value of 0 (S102). -5).

次に,データ変換部203は,対応管理テーブル207を参照し,当該テーブルのM行目に値が存在するか否かを判定する(S102−6)。   Next, the data conversion unit 203 refers to the correspondence management table 207 and determines whether a value exists in the Mth row of the table (S102-6).

当該判定の結果,当該テーブルのM行目に値が存在する場合(S102−6でYES),データ変換部203は,対応管理テーブル207のM行目から,「データ名」フィールド207−1と「オフセット」フィールド207−2の値を取得し,それぞれの値で変数NAMEと変数OFFSETの値を上書きする(S102−7)。   As a result of the determination, if a value exists in the Mth row of the table (YES in S102-6), the data conversion unit 203 starts with the “data name” field 207-1 from the Mth row of the correspondence management table 207. The value of the “offset” field 207-2 is acquired, and the values of the variable NAME and the variable OFFSET are overwritten with each value (S102-7).

例として,対応管理テーブル207が,図4のような値が書き込まれた状態であった場合を考える。このとき,Mの値が2であったとすると,当該テーブルの2行目にはデータが格納されているため,変数NAMEにはデータ名「d2」が代入され,変数OFFSETにはオフセット値「(k,10)」が代入される。   As an example, let us consider a case where the correspondence management table 207 is in a state where values as shown in FIG. 4 are written. At this time, if the value of M is 2, since the data is stored in the second row of the table, the data name “d2” is substituted for the variable NAME, and the offset value “( k, 10) "is substituted.

続いて,データ変換部203は,業務データ書込バッファ2062のNAME行から,「データ」フィールド2062−2の値を取得し,当該データの値で変数DATAを上書きする(S102−8)。   Subsequently, the data conversion unit 203 acquires the value of the “data” field 2062-2 from the NAME line of the business data write buffer 2062, and overwrites the variable DATA with the value of the data (S102-8).

次に,データ変換部203は,基本領域書込バッファ2064内の,変数OFFSETで指定される番地へ,変数DATA内のデータを格納する(S102−9)。   Next, the data conversion unit 203 stores the data in the variable DATA at the address specified by the variable OFFSET in the basic area write buffer 2064 (S102-9).

続いて,データ変換部203は,変数Mの値をインクリメントし(S102−10),対応管理テーブル207のM行目に値が存在するか否かを判定する処理(S102−6)へ処理を戻す。   Subsequently, the data conversion unit 203 increments the value of the variable M (S102-10), and proceeds to a process of determining whether or not a value exists in the Mth row of the correspondence management table 207 (S102-6). return.

処理S102−6にて,対応管理テーブル207のM行目に値が存在しない,すなわち,対応管理テーブル207内の全ての行に対する走査が完了すると,データ変換部203は,基本領域書込バッファ2064内のデータをICタグ4の基本領域4031へ書き込むよう,リーダライタ装置3−1に対してデータ書込要求メッセージを送信し(S102−11),リーダライタ装置3−1からの返信を待ち受ける状態へ遷移する(S102−12)。当該データ書込要求メッセージはパラメータを含み,当該パラメータによって書込位置と書き込むデータの内容を指示するものとする。ここでは書込位置として基本領域4031の先頭を指定し,書き込むデータの内容として基本領域書込バッファ2064内のデータを指定する。   In process S102-6, when the value does not exist in the Mth row of the correspondence management table 207, that is, when scanning for all the rows in the correspondence management table 207 is completed, the data conversion unit 203 completes the basic area write buffer 2064. A state in which a data write request message is transmitted to the reader / writer device 3-1 so as to write data in the basic area 4031 of the IC tag 4 (S102-11), and a reply from the reader / writer device 3-1 is awaited. (S102-12). The data write request message includes a parameter, and the write position and the content of data to be written are designated by the parameter. Here, the head of the basic area 4031 is designated as the write position, and the data in the basic area write buffer 2064 is designated as the contents of the data to be written.

以上が,ミドルウェア装置2−1による,初期化前処理S102の詳細である。   The above is the details of the pre-initialization process S102 by the middleware device 2-1.

図7に戻り,上述の初期化前処理S102の結果,ミドルウェア装置2−1がリーダライタ装置3−1へデータ書込要求メッセージを送信すると(S103),リーダライタ装置3−1は当該書込要求に従ってICタグ4内の基本領域4031先頭へ指定されたデータの書込を実行する(S104)。   Returning to FIG. 7, when the middleware device 2-1 transmits a data write request message to the reader / writer device 3-1 as a result of the above-described pre-initialization process S102 (S103), the reader / writer device 3-1 performs the writing. According to the request, the designated data is written to the head of the basic area 4031 in the IC tag 4 (S104).

ICタグ4内への書込が成功すると(S105),リーダライタ装置3−1はミドルウェア装置2−1に対して基本領域4031への書込に成功した旨を通知する(S106)。   When writing into the IC tag 4 is successful (S105), the reader / writer device 3-1 notifies the middleware device 2-1 that writing into the basic area 4031 is successful (S106).

ミドルウェア装置2−1は,リーダライタ装置3−1から,基本領域4031への書込に成功した旨を通知されると,追記領域4032を初期化するための
処理に移る(初期化中処理,S107)。
When the middleware device 2-1 is notified from the reader / writer device 3-1 that the writing to the basic area 4031 is successful, the middleware apparatus 2-1 proceeds to a process for initializing the additional recording area 4032 (processing during initialization, S107).

以下,当該処理S107の詳細について,再び図8を用いて説明する。   Hereinafter, details of the processing S107 will be described with reference to FIG.

ミドルウェア装置2−1内では,リーダライタ通信部210がリーダライタ装置3−1からメッセージを受信すると,ICタグコマンド処理部209が,当該メッセージをデコードし,当該メッセージが,基本領域4031への書込に成功したことを意味するメッセージであると解釈する(S102−12でYES)。   In the middleware device 2-1, when the reader / writer communication unit 210 receives a message from the reader / writer device 3-1, the IC tag command processing unit 209 decodes the message, and the message is written to the basic area 4031. This message is interpreted as a message indicating that the message has been successfully loaded (YES in S102-12).

すると,ミドルウェア装置2−1内のデータ変換部203は,追記領域の末尾を示す識別符号c0をICタグ4の追記領域4032へ書き込むよう,リーダライタ装置3−1に対してデータ書込要求メッセージを送信し(S107−1),リーダライタ装置3−1からの返信を待ち受ける状態へ遷移する(S107−2)。当該データ書込要求メッセージはパラメータを含み,当該パラメータによって書込位置と書き込むデータの内容を指示するものとする。ここでは書込位置として追記領域4032の先頭を指定し,書き込むデータの内容として識別符号c0を指定する。   Then, the data conversion unit 203 in the middleware device 2-1 sends a data write request message to the reader / writer device 3-1 so as to write the identification code c0 indicating the end of the additional write area to the additional write area 4032 of the IC tag 4. Is transmitted (S107-1), and a transition is made to a state of waiting for a reply from the reader / writer device 3-1 (S107-2). The data write request message includes a parameter, and the write position and the content of data to be written are designated by the parameter. Here, the head of the additional recording area 4032 is designated as the writing position, and the identification code c0 is designated as the content of the data to be written.

以上が,ミドルウェア装置2−1による,初期化中処理S107の詳細である。   The above is the details of the initialization process S107 performed by the middleware device 2-1.

図7に戻り,上述の初期化中処理S107の結果,ミドルウェア装置2−1がリーダライタ装置3−1へデータ書込要求メッセージを送信すると(S108),リーダライタ装置3−1は当該書込要求に従ってICタグ4内の追記領域4032先頭へ指定されたデータの書込を実行する(S109)。   Returning to FIG. 7, when the middleware device 2-1 transmits a data write request message to the reader / writer device 3-1 as a result of the above-described initialization process S107 (S108), the reader / writer device 3-1 performs the writing. According to the request, the designated data is written to the head of the additional recording area 4032 in the IC tag 4 (S109).

ICタグ4内への書込が成功すると(S110),リーダライタ装置3−1はミドルウェア装置2−1に対して追記領域4032への書込に成功した旨を通知する(S111)。   When writing into the IC tag 4 is successful (S110), the reader / writer device 3-1 notifies the middleware device 2-1 that writing into the additional write area 4032 is successful (S111).

ミドルウェア装置2−1は,リーダライタ装置3−1から,追記領域4032への書込に成功した旨を通知されると,初期化処理が成功したことを業務アプリケーション装置1−1へ通知するための処理に移る(初期化後処理,S112)。   When the middleware device 2-1 is notified by the reader / writer device 3-1 that the writing to the additional write area 4032 has been successful, the middleware device 2-1 notifies the business application device 1-1 that the initialization process has been successful. The process proceeds to (post-initialization process, S112).

以下,当該処理S112の詳細について,再び図8を用いて説明する。   Hereinafter, details of the processing S112 will be described with reference to FIG.

ミドルウェア装置2−1内では,リーダライタ通信部210がリーダライタ装置3−1からメッセージを受信すると,ICタグコマンド処理部209が,当該メッセージをデコードし,当該メッセージが,追記領域4032への書込に成功したことを意味するメッセージであると解釈する(S107−2でYES)。   In the middleware device 2-1, when the reader / writer communication unit 210 receives a message from the reader / writer device 3-1, the IC tag command processing unit 209 decodes the message, and the message is written to the additional write area 4032. This message is interpreted as a message indicating that the data has been successfully loaded (YES in S107-2).

すると,ミドルウェア装置2−1内のアプリケーションコマンド処理部202が,初期化要求アプリケーションコマンドの実行が成功したことを示す初期化要求アプリケーション成功応答を生成し,アプリケーション通信部201を介して,業務アプリケーション装置1−1へ送信する(S112−1)。   Then, the application command processing unit 202 in the middleware device 2-1 generates an initialization request application success response indicating that the initialization request application command has been successfully executed, and the business application device 201 passes through the application communication unit 201. The data is transmitted to 1-1 (S112-1).

以上が,ミドルウェア装置2−1による,初期化後処理S112の詳細である。   The above is the details of the post-initialization process S112 by the middleware device 2-1.

図7に戻り,上述の初期化後処理S112の結果,ミドルウェア装置2−1が業務アプリケーション装置1−1へ初期化要求アプリケーション成功応答を送信し(S113),ICタグ4に対する初期化処理は正常に完了する。   Returning to FIG. 7, as a result of the above-described post-initialization process S112, the middleware apparatus 2-1 transmits an initialization request application success response to the business application apparatus 1-1 (S113), and the initialization process for the IC tag 4 is normal. To complete.

一方,図8において,S102−12またはS107−2で,ミドルウェア装置2−1が,リーダライタ装置3−1から何らかのエラーメッセージを受信した場合には(S102−12またはS107−2でNO),ミドルウェア装置2−1内のアプリケーションコマンド処理部202が,初期化要求アプリケーションコマンドの実行に失敗したことを示す初期化要求アプリケーション失敗応答を生成し,アプリケーション通信部201を介して,業務アプリケーション装置1−1へ送信する(S107−3)。   On the other hand, in FIG. 8, when the middleware device 2-1 receives any error message from the reader / writer device 3-1 in S102-12 or S107-2 (NO in S102-12 or S107-2), The application command processing unit 202 in the middleware device 2-1 generates an initialization request application failure response indicating that the execution of the initialization request application command has failed, and the business application device 1- 1 (S107-3).

図9は,業務アプリケーション装置1−2がICタグ4からデータを読み込み,業務処理を行った後,データの更新を行う場合のシーケンスを記載した図である。   FIG. 9 is a diagram describing a sequence in which the business application apparatus 1-2 reads data from the IC tag 4 and performs business processing, and then updates the data.

ICタグを乗車券として利用する場合,当該シーケンスは,自動改札機(業務アプリケーション装置)による入出場シーケンスに対応する。すなわち,乗車券データが書き込まれた,入場前もしくは出場前の乗車券ICタグに対して,その乗車券が発券された駅の情報や,発券時刻や,当該乗車券の有効範囲,有効期限などを,ICタグ内のデータ記憶領域から読み込み,有効な乗車券であることを確認した後,入場済もしくは出場済であることを示すデータでタグ内のデータを更新するシーケンスに対応する。   When an IC tag is used as a ticket, the sequence corresponds to an entrance / exit sequence by an automatic ticket gate (business application device). That is, with respect to the ticket IC tag before entry or departure where the ticket data is written, information on the station where the ticket was issued, ticketing time, valid range of the ticket, expiration date, etc. Is read from the data storage area in the IC tag, and after confirming that it is a valid boarding ticket, it corresponds to a sequence in which the data in the tag is updated with data indicating that the ticket has been entered or entered.

業務アプリケーション装置1−2は,ユーザから入出力装置を介して初期化要求操作を受け付けると,ミドルウェア通信部102が,ミドルウェア装置2−2に対して読込要求アプリケーションコマンドを送信する(S201)。   When the business application apparatus 1-2 receives an initialization request operation from the user via the input / output device, the middleware communication unit 102 transmits a read request application command to the middleware apparatus 2-2 (S201).

ミドルウェア装置2−1は,装置内のアプリケーション通信部201が,業務アプリケーション装置1−1から送信された読込要求アプリケーションコマンドを受信すると,受け取ったパラメータ内の業務データを,ICタグへ書き込むための処理を実行する(読込前処理,S202)。   When the application communication unit 201 in the device receives the read request application command transmitted from the business application device 1-1, the middleware device 2-1 performs processing for writing the business data in the received parameter to the IC tag. Is executed (pre-reading process, S202).

以下,当該処理S202の詳細について,図10を用いて説明する。   Hereinafter, details of the processing S202 will be described with reference to FIG.

図10は,ミドルウェア装置2による読込処理の前半部を表したフローチャートである。   FIG. 10 is a flowchart showing the first half of the reading process by the middleware device 2.

ミドルウェア装置2−2内では,アプリケーション通信部201が,業務アプリケーション装置1−2から送信された読込要求アプリケーションコマンドを受信すると,アプリケーションコマンド処理部202が当該コマンドをデコードし,データ変換部203へ受け渡す(S202−1)。   In the middleware device 2-2, when the application communication unit 201 receives the read request application command transmitted from the business application device 1-2, the application command processing unit 202 decodes the command and receives it to the data conversion unit 203. Pass (S202-1).

データ変換部203は,まず,業務データ読込バッファ2063と,基本領域読込バッファ2065と,追記領域読込バッファ2067を空にする(S202−3)。   The data conversion unit 203 first empties the business data reading buffer 2063, the basic area reading buffer 2065, and the additional writing area reading buffer 2067 (S202-3).

次に,データ変換部203は,ICタグ4の基本領域4031および追記領域4032に格納されたデータを読み込むよう,リーダライタ装置3−2に対してデータ読込要求メッセージを送信し(S202−3),リーダライタ装置3−2からの返信を待ち受ける状態へ遷移する(S202−4)。   Next, the data conversion unit 203 transmits a data read request message to the reader / writer device 3-2 so as to read the data stored in the basic area 4031 and the additional write area 4032 of the IC tag 4 (S202-3). Then, a transition is made to a state of waiting for a reply from the reader / writer device 3-2 (S202-4).

以上が,ミドルウェア装置2−2による,読込前処理S202の詳細である。   The above is the details of the pre-read process S202 by the middleware device 2-2.

図9に戻り,上述の読込前処理S202の結果,ミドルウェア装置2−2がリーダライタ装置3−2へデータ読込要求メッセージを送信すると(S203),リーダライタ装置3−2は当該読込要求に従ってICタグ4内の基本領域4031および追記領域4032に格納されたデータの読込を実行する(S204)。   Returning to FIG. 9, when the middleware device 2-2 transmits a data read request message to the reader / writer device 3-2 as a result of the above-described read preprocessing S202 (S203), the reader / writer device 3-2 performs the IC according to the read request. The data stored in the basic area 4031 and the additional recording area 4032 in the tag 4 is read (S204).

ICタグ4からの読込が成功すると(S205),リーダライタ装置3−2はミドルウェア装置2−2に対して基本領域4031および追記領域4032から読み込んだデータを送信する(S206)。   When reading from the IC tag 4 is successful (S205), the reader / writer device 3-2 transmits the data read from the basic area 4031 and the additional recording area 4032 to the middleware apparatus 2-2 (S206).

ミドルウェア装置2−2は,リーダライタ装置3−2から,基本領域4031および追記領域4032から読み込んだデータを受信すると,読込データを業務アプリケーション装置1−2へ提供するための処理に移る(読込後処理,S207)。   When the middleware apparatus 2-2 receives the data read from the basic area 4031 and the additional recording area 4032 from the reader / writer apparatus 3-2, the middleware apparatus 2-2 proceeds to processing for providing the read data to the business application apparatus 1-2 (after reading). Processing, S207).

以下,当該処理S207の詳細について,再び図10を用いて説明する。   Hereinafter, details of the processing S207 will be described with reference to FIG. 10 again.

ミドルウェア装置2−2内では,リーダライタ通信部210がリーダライタ装置3−2からメッセージを受信すると,ICタグコマンド処理部209が,当該メッセージをデコードし,当該メッセージに含まれるパラメータ(基本領域4031および追記領域4032から読み込んだデータ)を取得する。   In the middleware device 2-2, when the reader / writer communication unit 210 receives a message from the reader / writer device 3-2, the IC tag command processing unit 209 decodes the message, and includes parameters (basic area 4031) included in the message. And data read from the additional recording area 4032).

ここで,正常にデータが取得できなかった場合,もしくは一定時間,一定回数のリトライを経てもリーダライタ装置3−2から応答が無かった場合は(S202−4でNO),ミドルウェア装置2−2内のアプリケーションコマンド処理部202が,読込要求アプリケーションコマンドの実行に失敗したことを示す読込要求アプリケーション失敗応答を生成し,アプリケーション通信部201を介して,業務アプリケーション装置1−2へ送信する(S202−5)。   Here, if data cannot be acquired normally, or if there is no response from the reader / writer device 3-2 after a certain number of retries for a certain time (NO in S202-4), the middleware device 2-2. Application command processing unit 202 generates a read request application failure response indicating that the execution of the read request application command has failed, and transmits the response to the business application apparatus 1-2 via the application communication unit 201 (S202-). 5).

一方,正常にデータが取得できた場合(S202−4でYES),ICタグコマンド処理部209は,当該データをデータ変換部203へ受け渡す。データ変換部203は,受け取ったデータの内,基本領域4031から読み込まれたデータを基本領域読込バッファ2065へ格納し(S207−1),追記領域4032から読み込まれたデータを追記領域読込バッファ2067へ格納する(S207−2)。   On the other hand, when the data can be normally acquired (YES in S202-4), the IC tag command processing unit 209 transfers the data to the data conversion unit 203. The data conversion unit 203 stores the data read from the basic area 4031 among the received data in the basic area reading buffer 2065 (S207-1), and the data read from the additional writing area 4032 to the additional writing area reading buffer 2067. Store (S207-2).

まず,データ変換部203は,基本領域読込バッファ2065内のデータ変換処理を開始する。データ変換部203は,CPU901内のレジスタまたはメモリ902または外部記憶装置903上に,5つの変数M,NAME,OFFSET,LEN,DATA用の領域を確保し,それぞれ値0で初期化する(S207−3)。   First, the data conversion unit 203 starts data conversion processing in the basic area read buffer 2065. The data conversion unit 203 secures areas for five variables M, NAME, OFFSET, LEN, and DATA on a register in the CPU 901, the memory 902, or the external storage device 903, and initializes each with a value of 0 (S207- 3).

次に,データ変換部203は,対応管理テーブル207を参照し,当該テーブルのM行目に値が存在するか否かを判定する(S207−4)。   Next, the data conversion unit 203 refers to the correspondence management table 207 and determines whether or not a value exists in the Mth row of the table (S207-4).

当該判定の結果,当該テーブルのM行目に値が存在する場合,データ変換部203は,対応管理テーブル207のM行目から,「データ名」フィールド207−1と,「オフセット」フィールド207−2と,「データ長」フィールド207−3と,の値を取得し,それぞれの値で変数NAMEと変数OFFSETと変数LENの値を上書きする(S207−5)。   As a result of the determination, if there is a value in the Mth row of the table, the data conversion unit 203 starts from the Mth row of the correspondence management table 207 with a “data name” field 207-1 and an “offset” field 207- 2 and the “data length” field 207-3 are acquired, and the values of the variable NAME, the variable OFFSET, and the variable LEN are overwritten with the values (S207-5).

例として,対応管理テーブル207が,図4のような値が書き込まれた状態であった場合を考える。このとき,Mの値が2であったとすると,当該テーブルの2行目にはデータが格納されているため,変数NAMEにはデータ名「d2」が代入され,変数OFFSETにはオフセット値「(k,10)」が代入され,変数LENにはデータ長「6」が代入される。   As an example, let us consider a case where the correspondence management table 207 is in a state where values as shown in FIG. 4 are written. At this time, if the value of M is 2, since the data is stored in the second row of the table, the data name “d2” is substituted for the variable NAME, and the offset value “( k, 10) "is substituted, and the data length" 6 "is substituted for the variable LEN.

続いて,データ変換部203は,基本領域読込バッファ2065から,OFFSET番地を始点として長さLENの領域に格納されたデータを取得し,変数DATAへ代入する(S207−6)。   Subsequently, the data conversion unit 203 acquires the data stored in the area of the length LEN starting from the OFFSET address from the basic area reading buffer 2065, and substitutes it into the variable DATA (S207-6).

次に,データ変換部203は,業務データ読込バッファ2063のNAME行へ,変数DATA内のデータを格納する(S207−7)。   Next, the data conversion unit 203 stores the data in the variable DATA in the NAME row of the business data read buffer 2063 (S207-7).

続いて,データ変換部203は,変数Mの値をインクリメントし(S207−8),対応管理テーブル207のM行目に値が存在するか否かを判定する処理(S207−4)へ戻る。   Subsequently, the data conversion unit 203 increments the value of the variable M (S207-8), and returns to the process of determining whether a value exists in the Mth row of the correspondence management table 207 (S207-4).

処理S207−4にて,対応管理テーブル207のM行目に値が存在しない,すなわち,対応管理テーブル207内の全ての行に対する走査が完了すると,データ変換部203は,追記領域読込バッファ2067内のデータ変換処理に移る(S207−9)。以下,当該処理の詳細について,図11を用いて説明する。   In process S207-4, when the value does not exist in the Mth row of the correspondence management table 207, that is, when scanning for all the rows in the correspondence management table 207 is completed, the data conversion unit 203 stores in the additional write area reading buffer 2067. The data conversion process is shifted to (S207-9). Hereinafter, details of the processing will be described with reference to FIG.

図11は,ミドルウェア装置2による読込処理の後半部を表したフローチャートである。   FIG. 11 is a flowchart showing the latter half of the reading process by the middleware device 2.

ミドルウェア装置2−2内のデータ変換部203は,まず,変数Mの値を0にリセットするとともに,CPU901内のレジスタまたはメモリ902または外部記憶装置903上に,変数CODE用の領域を確保し,値0で初期化する(S207−10)。   The data conversion unit 203 in the middleware device 2-2 first resets the value of the variable M to 0, and secures an area for the variable CODE on the register in the CPU 901, the memory 902, or the external storage device 903, Initialization is performed with a value of 0 (S207-10).

次に,データ変換部203は,変数Mの値が,追記領域4032の最大サイズを示すMAX_APPENDを超えているか否かを確認する(S207−11)。Mの値がMAX_APPENDを超えている場合(S207−11でYES),MにMAX_APPENDと同じ値を代入し(S207−20),読込終了処理(S207−21,S207−22)に移る。当該処理(S207−21,S207−22)については後述する。   Next, the data conversion unit 203 checks whether or not the value of the variable M exceeds MAX_APPEND indicating the maximum size of the additional recording area 4032 (S207-11). If the value of M exceeds MAX_APPEND (YES in S207-11), the same value as MAX_APPEND is substituted for M (S207-20), and the process proceeds to reading end processing (S207-21, S207-22). The processing (S207-21, S207-22) will be described later.

一方,Mの値がMAX_APPEND以下であった場合(S207−11でNO),データ変換部203は,追記領域読込バッファ2067のM番地からデータ(識別符号)を取得し,変数CODEへ代入する(S207−12)。ここで,取得するCODEのデータ長は識別符号として使用する符号の種類に依存する。例えば,識別符号として固定長の符号を用いる場合は,常にその符号長のデータを取得しても良いし,可変長の符号を用いる場合には,符号が決定されるまでデータを読み込むこととしても良い。   On the other hand, when the value of M is equal to or less than MAX_APPEND (NO in S207-11), the data conversion unit 203 acquires data (identification code) from the M address of the additional write area read buffer 2067 and substitutes it into the variable CODE ( S207-12). Here, the data length of the acquired CODE depends on the type of code used as the identification code. For example, when a fixed-length code is used as an identification code, data of that code length may always be obtained. When a variable-length code is used, data may be read until the code is determined. good.

続いて,データ変換部203は,変数CODEの値が,追記領域の終端を示す識別符号c0と一致するか否かを確認する(S207−13)。CODEの値がc0と一致する場合(S207−13でYES),読込終了処理(S207−20,S207−21)に移る。当該処理(S207−20,S207−21)については後述する。   Subsequently, the data conversion unit 203 checks whether or not the value of the variable CODE matches the identification code c0 indicating the end of the additional write area (S207-13). When the value of CODE coincides with c0 (YES in S207-13), the process proceeds to reading end processing (S207-20, S207-21). The processing (S207-20, S207-21) will be described later.

一方,CODEの値がc0以外であった場合(S207−13でNO)には,まず,変数Mの値をCODEの長さ分増加させる(S207−14)。続いて,データ変換部203が,符号管理テーブル208内で「識別符号」フィールド208−2が変数CODEと同じ値を持つ行を選択し,当該行の「データ名」フィールド208−1の値を変数NAMEへ代入する(S207−15)。   On the other hand, if the value of CODE is other than c0 (NO in S207-13), first, the value of variable M is increased by the length of CODE (S207-14). Subsequently, the data conversion unit 203 selects a row in which the “identification code” field 208-2 has the same value as the variable CODE in the code management table 208, and sets the value of the “data name” field 208-1 in the row. Substitute into the variable NAME (S207-15).

次に,データ変換部203は,対応管理テーブル207内で「データ名」フィールド207−1が変数NAMEと同じ値を持つ行を選択し,当該行の「オフセット」フィールド207−2と,「データ長」フィールド207−3の値をそれぞれ変数OFFSETとLENへ代入する(S207−16)。   Next, the data conversion unit 203 selects a line in which the “data name” field 207-1 has the same value as the variable NAME in the correspondence management table 207, the “offset” field 207-2 of the line, The value of the “length” field 207-3 is assigned to the variables OFFSET and LEN, respectively (S207-16).

続いて,データ変換部203は,追記領域読込バッファ2067内の,M番地から長さLENの範囲でデータを取得し,変数DATAへ代入する(S207−17)。   Subsequently, the data conversion unit 203 acquires data in the range from the address M to the length LEN in the additional write area reading buffer 2067, and substitutes it into the variable DATA (S207-17).

次に,データ変換部203は,業務データ読込バッファ2063のNAME行へ,変数DATAの値を格納する(S207−18)。このとき,当該業務データ読込バッファ2063の当該位置(NAME行)へ既にデータが書き込まれている場合には,既存データを上書きすることで新データを格納することとする。   Next, the data conversion unit 203 stores the value of the variable DATA in the NAME line of the business data read buffer 2063 (S207-18). At this time, if data has already been written in the corresponding position (NAME line) of the business data read buffer 2063, new data is stored by overwriting the existing data.

続いて,データ変換部203は,変数Mの値を,MにLENの値を加えた値へ更新し(S207−19),Mの値がMAX_APPENDを超えているか否かを判定する処理(S207−11)へ戻る。   Subsequently, the data conversion unit 203 updates the value of the variable M to a value obtained by adding the value of LEN to M (S207-19), and determines whether or not the value of M exceeds MAX_APPEND (S207). Return to -11).

上述した通り,処理S207−11またはS207−13でそれぞれ条件が満たされた場合(S207−11またはS207−13でYES),読込終了処理(S207−21,S207−22)に移る。   As described above, if the conditions are satisfied in the processing S207-11 or S207-13 (YES in S207-11 or S207-13), the process proceeds to reading end processing (S207-21, S207-22).

まず,データ変換部203は,変数Mの値を追記領域末尾ポインタ205へ格納する(S207−21)。追記領域末尾ポインタ205への格納は,タグを一意に識別するための識別子(タグID)との組として実行する。   First, the data conversion unit 203 stores the value of the variable M in the additional write area end pointer 205 (S207-21). The storage in the additional write area end pointer 205 is executed as a pair with an identifier (tag ID) for uniquely identifying the tag.

次に,ミドルウェア装置2−2内のアプリケーションコマンド処理部202が,読込要求アプリケーションコマンドに対する応答として,業務データ読込バッファ2063内のデータをパラメータとして含む読込要求アプリケーション成功応答を生成し,アプリケーション通信部201を介して,業務アプリケーション装置1−2へ送信する(S207−22)。   Next, the application command processing unit 202 in the middleware apparatus 2-2 generates a read request application success response including the data in the business data read buffer 2063 as a parameter as a response to the read request application command, and the application communication unit 201 Is sent to the business application apparatus 1-2 (S207-22).

以上が,ミドルウェア装置2−2による,読込後処理S207の詳細である。   The above is the details of the post-read process S207 by the middleware device 2-2.

追記領域読込バッファ2067に格納されるデータは、データ名(NAME)が同じ場合、基本領域読込バッファ2065に格納されるデータよりも新しいデータとなることを利用して、上に記述した読込後処理S207のフローの代わりに以下の順序で処理を実行することで、読込処理の高速化を実現することが可能である。まず、S207−1,S207−2の処理を実行する。続いて、追記領域読込バッファ2067から読み込んだデータを業務データ読込バッファ2063へ格納する処理(S207−10からS207−21までの一連の処理)を実行する。ここで、業務データ読込バッファ2063へ格納されたデータ名(NAME)を「更新済データ種別」として記憶する。次に、基本領域読込バッファ2065から読み込んだデータを業務データ読込バッファ2063へ格納する処理(S207−3からS207−9までの一連の処理)を実行するが、ここで、処理S207−5と処理S207−6の間に、データ名(NAME)が「更新済データ種別」に含まれるデータに関しては、基本領域読込バッファ2065からの読込処理(S207−6,S207−7)をスキップする。最後に、処理S207−22を実行し、読込後処理S207を終了する。 図9に戻り,上述の読込後処理S207の結果,ミドルウェア装置2−2が業務アプリケーション装置1−2へ読込要求アプリケーション成功応答を送信する。当該成功応答には,ICタグ4から読み取ったデータが,業務データ名とその値の組として含まれている(S208)。   When the data name (NAME) is the same, the data stored in the additional write area read buffer 2067 is newer than the data stored in the basic area read buffer 2065. By executing the processing in the following order instead of the flow of S207, it is possible to increase the speed of the reading processing. First, the processing of S207-1 and S207-2 is executed. Subsequently, a process of storing data read from the additional write area reading buffer 2067 in the business data reading buffer 2063 (a series of processes from S207-10 to S207-21) is executed. Here, the data name (NAME) stored in the business data read buffer 2063 is stored as “updated data type”. Next, a process (a series of processes from S207-3 to S207-9) for storing the data read from the basic area read buffer 2065 in the business data read buffer 2063 is executed. Here, the process S207-5 and the process are performed. During S207-6, for the data whose data name (NAME) is included in the “updated data type”, the reading process (S207-6, S207-7) from the basic area reading buffer 2065 is skipped. Finally, process S207-22 is executed, and post-read process S207 is terminated. Returning to FIG. 9, as a result of the above-described post-read processing S207, the middleware device 2-2 transmits a read request application success response to the business application device 1-2. The success response includes data read from the IC tag 4 as a set of business data name and value (S208).

業務アプリケーション装置1−2は,ミドルウェア通信部102がミドルウェア装置2−2からデータを受信すると,業務処理部101が当該データを用いて業務処理を実行し,データの一部書き換え等の処理を行う(S209)。   In the business application device 1-2, when the middleware communication unit 102 receives data from the middleware device 2-2, the business processing unit 101 executes business processing using the data and performs processing such as partial rewriting of data. (S209).

続いて,業務アプリケーション装置1−2は,業務処理部101がミドルウェア通信部102を介して,書き換えられたデータの更新要求メッセージを,ミドルウェア装置2−2へ送信する(S210)。当該メッセージには,書き換えられたデータに限らず,業務データ全体が含まれていても良い。   Subsequently, in the business application apparatus 1-2, the business processing unit 101 transmits a renewed data update request message to the middleware apparatus 2-2 via the middleware communication unit 102 (S210). The message may include not only the rewritten data but the entire business data.

ミドルウェア装置2−2は,装置内のアプリケーション通信部201が,業務アプリケーション装置1−2から送信された更新要求アプリケーションコマンドを受信すると,受け取ったパラメータ内の業務データを,ICタグへ書き込むための処理を実行する(書込前処理,S211)。   When the application communication unit 201 in the apparatus receives the update request application command transmitted from the business application apparatus 1-2, the middleware apparatus 2-2 performs a process for writing the business data in the received parameter to the IC tag. Is executed (processing before writing, S211).

以下,当該処理S211の詳細について,図12を用いて説明する。   Details of the processing S211 will be described below with reference to FIG.

図12は,ミドルウェア装置2による書込処理の詳細を表したフローチャートである。   FIG. 12 is a flowchart showing details of the writing process by the middleware device 2.

ミドルウェア装置2−2内では,アプリケーション通信部201が,業務アプリケーション装置1−2から送信された更新要求アプリケーションコマンドを受信すると(S211−1),アプリケーションコマンド処理部202が,当該コマンドをデコードし,当該コマンドに含まれるパラメータ(業務データ)を取得しデータ変換部203へ受け渡す(S211−2)。   In the middleware device 2-2, when the application communication unit 201 receives the update request application command transmitted from the business application device 1-2 (S211-1), the application command processing unit 202 decodes the command, The parameter (business data) included in the command is acquired and transferred to the data conversion unit 203 (S211-2).

データ変換部203は,まず,業務データ書込バッファ2062と,業務データ差分バッファ2061と,追記領域書込バッファ2066と,を空にする(S211−3)。   The data conversion unit 203 first empties the business data write buffer 2062, the business data difference buffer 2061, and the additional write area write buffer 2066 (S211-3).

次に,データ変換部203は,取得した業務データを,業務データ書込バッファ2062へ格納する(S211−4)。   Next, the data conversion unit 203 stores the acquired business data in the business data write buffer 2062 (S211-4).

続いて,差分計算部204が,業務データ書込バッファに格納された値と,業務データ読込バッファに格納された値と,を比較し,値が異っているデータだけを抽出し,業務データ差分バッファへ格納する(S211−5)。   Subsequently, the difference calculation unit 204 compares the value stored in the business data write buffer with the value stored in the business data read buffer, extracts only the data having different values, and extracts the business data Store in the difference buffer (S211-5).

次に,データ変換部203は,CPU901内のレジスタまたはメモリ902または外部記憶装置903上に,4つの変数M,NAME,CODE,DATA用の領域を確保し,それぞれ値0で初期化する(S211−6)。   Next, the data conversion unit 203 secures areas for four variables M, NAME, CODE, and DATA on a register in the CPU 901, the memory 902, or the external storage device 903, and initializes them with values 0 (S211). -6).

続いて,データ変換部203は,業務データ差分バッファにデータが存在するか否かを判定する(S211−7)。   Subsequently, the data conversion unit 203 determines whether data exists in the business data difference buffer (S211-7).

当該判定の結果,当該バッファにデータが存在する場合(S211−7でYES),データ変換部203は,業務データ差分バッファ2061から「データ名」フィールド2061−1と「データ」フィールド2061−2の値を取得し,それぞれの値で変数NAMEと変数DATAの値を上書きする。また値の取得後には,取得した値を含む行のデータを,業務データ差分バッファ2061から削除し,同じ値が二度以上取得されないようにする(S211−8)。   As a result of the determination, if data exists in the buffer (YES in S211-7), the data conversion unit 203 reads the “data name” field 2061-1 and the “data” field 2061-2 from the business data difference buffer 2061. The value is acquired, and the values of the variable NAME and the variable DATA are overwritten with each value. After the value is acquired, the data of the row including the acquired value is deleted from the business data difference buffer 2061 so that the same value is not acquired more than once (S211-8).

次に,データ変換部203は,符号管理テーブル208内で「データ名」フィールド208−1が変数NAMEと同じ値を持つ行を選択し,当該行の「識別符号」フィールド208−2 の値を変数CODEへ代入する(S211−9)。   Next, the data conversion unit 203 selects a line in which the “data name” field 208-1 has the same value as the variable NAME in the code management table 208, and sets the value of the “identification code” field 208-2 of the line Substitute into the variable CODE (S211-9).

続いて,データ変換部203は,変数CODEと変数DATAに含まれる値を,CODE,DATAの順で結合し,結合後のデータを追記領域書込バッファ2066の末尾へ追加する(S211−10)。追加後,データ変換部203は,業務データ差分バッファ2061にまだデータが残っているかどうかを確認する処理(S211−7)に戻る。   Subsequently, the data conversion unit 203 combines the variable CODE and the value included in the variable DATA in the order of CODE and DATA, and adds the combined data to the end of the additional write area write buffer 2066 (S211-10). . After the addition, the data conversion unit 203 returns to the process (S211-7) for confirming whether data still remains in the business data difference buffer 2061.

処理S211−7にて,業務データ差分バッファ2061にデータが残っていない,すなわち,書き換える必要のある全ての業務データに対して,追記領域書込バッファ2066への追記が完了すると(S211−7でNO),データ変換部203は,追記領域書込バッファ2066の末尾へ識別符号c0を書き込む(S211−11)。   In processing S211-7, when no data remains in the business data difference buffer 2061, that is, when all the business data that needs to be rewritten has been added to the additional write area write buffer 2066 (in S211-7) NO), the data conversion unit 203 writes the identification code c0 at the end of the additional write area write buffer 2066 (S211-11).

次に,データ変換部203は,追記領域末尾ポインタ205から,書込対象の電子タグ4のタグIDに一致する行を検索し,追記領域4032の末尾アドレスを取得し,変数Mへ格納する(S211−12)。   Next, the data conversion unit 203 searches the additional writing area end pointer 205 for a line that matches the tag ID of the electronic tag 4 to be written, acquires the end address of the additional writing area 4032, and stores it in the variable M ( S211-12).

続いて,データ変換部203は,追記領域書込バッファ2066内のデータを,ICタグ4の追記領域4032内,変数Mで指定される番地へ書き込むよう,リーダライタ装置3−2に対してデータ書込要求メッセージを送信し(S211−13),リーダライタ装置3−2からの返信を待ち受ける状態へ遷移する(S211−14)。当該データ書込要求メッセージはパラメータを含み,当該パラメータによって書込位置と書き込むデータの内容を指示するものとする。ここでは書込位置として追記領域4032のM番地を指定し,書き込むデータの内容として追記領域書込バッファ2066内のデータを指定する。   Subsequently, the data conversion unit 203 sends data to the reader / writer device 3-2 so as to write the data in the additional write area write buffer 2066 to the address specified by the variable M in the additional write area 4032 of the IC tag 4. A write request message is transmitted (S211-13), and a transition is made to a state of waiting for a reply from the reader / writer device 3-2 (S211-14). The data write request message includes a parameter, and the write position and the content of data to be written are designated by the parameter. Here, the address M of the additional write area 4032 is specified as the write position, and the data in the additional write area write buffer 2066 is specified as the content of the data to be written.

以上が,ミドルウェア装置2−2による,書込前処理S211の詳細である。   The above is the details of the pre-write processing S211 performed by the middleware device 2-2.

図9に戻り,上述の書込前処理S211の結果,ミドルウェア装置2−2がリーダライタ装置3−2へデータ書込要求メッセージを送信すると(S212),リーダライタ装置3−2は当該書込要求に従い,ICタグ4内の追記領域4032におけるM番地へ,指定されたデータの書込を実行する(S213)。   Returning to FIG. 9, when the middleware apparatus 2-2 transmits a data write request message to the reader / writer apparatus 3-2 as a result of the above-described pre-writing process S211 (S212), the reader / writer apparatus 3-2 performs the write operation. In accordance with the request, the designated data is written to the address M in the additional recording area 4032 in the IC tag 4 (S213).

ICタグ4内への書込が成功すると(S214),リーダライタ装置3−2はミドルウェア装置2−2に対して追記領域4032への書込に成功した旨を通知する(S215)。   When the writing into the IC tag 4 is successful (S214), the reader / writer device 3-2 notifies the middleware device 2-2 that the writing into the additional recording area 4032 is successful (S215).

ミドルウェア装置2−2は,リーダライタ装置3−2から,追記領域4032への書込に成功した旨を通知されると,書込の成功を業務アプリケーション装置1−2へ通知するための処理に移る(書込後処理,S216)。   When the middleware device 2-2 is notified from the reader / writer device 3-2 that the writing to the additional writing area 4032 is successful, the middleware device 2-2 performs processing for notifying the business application device 1-2 of the writing success. Move (post-write processing, S216).

以下,当該処理S216の詳細について,再び図12を用いて説明する。   Hereinafter, details of the processing S216 will be described with reference to FIG.

ミドルウェア装置2−2内では,リーダライタ通信部210がリーダライタ装置3−2からメッセージを受信すると,ICタグコマンド処理部209が,当該メッセージをデコードし,当該メッセージが,追記領域4032への書込に成功したことを意味するメッセージであると解釈する(S211−14でYES)。   In the middleware device 2-2, when the reader / writer communication unit 210 receives a message from the reader / writer device 3-2, the IC tag command processing unit 209 decodes the message, and the message is written to the additional write area 4032. This message is interpreted as a message indicating that the data has been successfully loaded (YES in S211-14).

すると,ミドルウェア装置2−2内のアプリケーションコマンド処理部202が,更新要求アプリケーションコマンドの実行が成功したことを示す更新要求アプリケーション成功応答を生成し,アプリケーション通信部201を介して,業務アプリケーション装置1−2へ送信する(S216−1)。   Then, the application command processing unit 202 in the middleware device 2-2 generates an update request application success response indicating that the execution of the update request application command is successful, and the business application device 1- 2 (S216-1).

一方,S211−14において,ミドルウェア装置2−2が,リーダライタ装置3−2から何らかのエラーメッセージを受信した場合や,一定時間,一定回数のリトライを経てもリーダライタ装置3−2から応答が無かった場合は(S211−14でNO),ミドルウェア装置2−2のアプリケーションコマンド処理部202が,更新要求アプリケーションコマンドの実行に失敗したことを示す更新要求アプリケーション失敗応答を生成し,アプリケーション通信部201を介して,業務アプリケーション装置1−2へ送信する(S216−2)。   On the other hand, when the middleware device 2-2 receives any error message from the reader / writer device 3-2 in S211-14, or no response is received from the reader / writer device 3-2 even after a predetermined number of retries. If the application command processing unit 202 of the middleware apparatus 2-2 generates an update request application failure response indicating that the execution of the update request application command has failed, the application communication unit 201 Then, it is transmitted to the business application apparatus 1-2 (S216-2).

以上が,ミドルウェア装置2−1による,書込後処理S216の詳細である。   The above is the details of the post-write processing S216 by the middleware device 2-1.

図9に戻り,上述の書込後処理S216の結果,ミドルウェア装置2−2が業務アプリケーション装置1−2へ更新要求アプリケーション成功応答を送信すると(S217),ICタグ4に対するデータ更新処理は正常に完了する。   Returning to FIG. 9, when the middleware device 2-2 transmits an update request application success response to the business application device 1-2 as a result of the above-described post-write processing S216 (S217), the data update processing for the IC tag 4 is normally performed. Complete.

なお,ここでは説明のために,ICタグ4に対して初期化処理を行った業務アプリケーション装置と,初期化後のICタグ4に対して読込処理と書込処理を行う業務アプリケーション装置を異なるものとして記載したが,両者は必ずしも異なるものでなくとも良い。   Here, for the sake of explanation, the business application device that has performed initialization processing on the IC tag 4 is different from the business application device that performs read processing and writing processing on the IC tag 4 after initialization. However, the two are not necessarily different.

また,追記領域4032の空き容量が小さくなった場合には,以下の手順により,追記領域4032のクリーニングを行うことで,空き容量を最大化することが可能である。まず,業務アプリケーション装置1は,ミドルウェア装置2に対して読込要求メッセージを送信し,ICタグ4から最新の業務データを取得する。続いて,当該取得したデータをパラメータとする初期化要求メッセージを,ミドルウェア装置2に対して送信することで,ICタグ4内の基本領域4031のデータが最新のデータに更新され,追記領域4032には識別符号c0だけが格納されることとなる。   Further, when the free space in the additional write area 4032 becomes small, the free space can be maximized by cleaning the additional write area 4032 according to the following procedure. First, the business application apparatus 1 transmits a read request message to the middleware apparatus 2 and acquires the latest business data from the IC tag 4. Subsequently, by transmitting an initialization request message using the acquired data as a parameter to the middleware device 2, the data in the basic area 4031 in the IC tag 4 is updated to the latest data, and the additional recording area 4032 is updated. Only the identification code c0 is stored.

ここで,追記領域4032のクリーニングを行うまでは,それまでにICタグ4に対して行われた全ての更新内容が,追記領域内のデータという形で残されているため,当該領域内の以前のデータを参照し,最新のデータとして再度書き込みを行うことで,処理のやり直し(アンドゥ操作)を実現することが可能である。   Here, until the additional recording area 4032 is cleaned, all the update contents that have been performed on the IC tag 4 so far remain in the form of data in the additional recording area. By referring to this data and writing it again as the latest data, it is possible to realize processing re-execution (undo operation).

以上の実施形態に基づき,ICタグを乗車券として利用した場合を例に取って,ICタグ(乗車券)へのデータの書込が行われる過程をより具体的に説明する。   Based on the above embodiment, taking the case where the IC tag is used as a boarding ticket as an example, the process of writing data to the IC tag (boarding ticket) will be described more specifically.

図13は,本実施例のシステム構成の概略図である。   FIG. 13 is a schematic diagram of a system configuration of the present embodiment.

図示するように,本実施例では,業務アプリケーション装置として,発券装置1−1と,入場管理装置1−2と,出場管理装置1−3と,精算装置1−4と,の4つを備える。当該装置はそれぞれミドルウェア装置2−1〜2−4と相互に通信を行い,各ミドルウェア装置はそれぞれリーダライタ装置3−1〜3−4と相互に通信を行う。ICタグ4は乗車券として利用される。   As shown in the figure, in the present embodiment, there are four business application devices: a ticket issuing device 1-1, an entrance management device 1-2, an exit management device 1-3, and a checkout device 1-4. . The devices communicate with the middleware devices 2-1 to 2-4, respectively, and the middleware devices communicate with the reader / writer devices 3-1 to 3-4, respectively. The IC tag 4 is used as a boarding ticket.

また,図14は,本実施例において,各ミドルウェア装置2−1〜2−4に格納される対応管理テーブル207と符号管理テーブル208の一例を示した図である。例えば対応管理テーブル207においては,データ名として「乗車駅」を持つデータは,ICタグ4上の基本領域4031ではオフセット(k+2,10)で指定される箇所に書き込まれ,その長さは8であることが示されている。また,符号管理テーブル208においては,データ名として「乗車駅」を持つデータは,ICタグ4上の追記領域4032へ書き込まれる際には,識別符号c9と結合された状態で書き込まれることが示されている。   FIG. 14 is a diagram showing an example of the correspondence management table 207 and the code management table 208 stored in each of the middleware devices 2-1 to 2-4 in the present embodiment. For example, in the correspondence management table 207, data having the “boarding station” as the data name is written in the location specified by the offset (k + 2, 10) in the basic area 4031 on the IC tag 4, and the length is 8. It is shown that there is. Further, in the code management table 208, it is shown that data having “boarding station” as the data name is written in a state of being combined with the identification code c9 when written in the additional recording area 4032 on the IC tag 4. Has been.

乗車客が駅構内に設置された発券装置1−1(例えば券売機)に対して運賃の投入や行き先の範囲選択などを指示すると,発券装置1−1はミドルウェア装置2−1に対し,図7および図8で示したような初期化処理の実行要求を送信する。図7に示すシーケンスおよび図8に示すフローが滞りなく完了すると,ICタグ4のデータ記憶部403には図15のようにデータが書き込まれる。   When the passenger instructs the ticket issuing device 1-1 (for example, a ticket vending machine) installed in the station premises to enter a fare, select a destination range, etc., the ticket issuing device 1-1 instructs the middleware device 2-1. 7 and the execution request for the initialization process as shown in FIG. When the sequence shown in FIG. 7 and the flow shown in FIG. 8 are completed without delay, data is written in the data storage unit 403 of the IC tag 4 as shown in FIG.

図15は,発券装置1−1による発券処理が完了した後の,ICタグ4(乗車券)内のデータ記憶部403の一例を示した図である。発券駅,種別,改札通過日時,有効期間,有効区間,入出場情報(図15では「入出」と記載),発券日時,乗車駅,といったデータが基本領域4031に書き込まれる。追記領域4032には,先頭に識別符号c0のみが書き込まれる。   FIG. 15 is a diagram illustrating an example of the data storage unit 403 in the IC tag 4 (passage ticket) after the ticketing process by the ticketing device 1-1 is completed. Data such as ticketing station, type, ticket gate passage date / time, valid period, valid section, entry / exit information (described as “entrance / exit” in FIG. 15), ticketing date / time, boarding station are written in the basic area 4031. In the additional recording area 4032, only the identification code c0 is written at the beginning.

続いて乗車客が,発券されたICタグ4を入場管理装置1−2(例えば自動改札機)へ挿入すると,当該入場管理装置1−2はミドルウェア装置2−2に対し,図9〜図12で示したような読込処理および更新処理の実行要求を送信する。   Subsequently, when the passenger inserts the issued IC tag 4 into the admission management device 1-2 (for example, an automatic ticket gate), the admission management device 1-2 in FIG. 9 to FIG. The execution request for the reading process and the updating process as shown in (1) is transmitted.

まず,図9のS201〜S207までの処理が滞りなく完了すると,ICタグ4のデータ記憶部403から読み出されたデータがミドルウェア装置2−2内の業務データ読込バッファ2063へ格納される。当該データが格納された直後の業務データ読込バッファ2063の一例を図16の左上部へ示す。図示するように,各業務データ名(発券駅,改札通過日時など)に対応した値が読み取られ,バッファに格納される。   First, when the processing from S201 to S207 in FIG. 9 is completed without delay, the data read from the data storage unit 403 of the IC tag 4 is stored in the business data reading buffer 2063 in the middleware device 2-2. An example of the business data read buffer 2063 immediately after the data is stored is shown in the upper left part of FIG. As shown in the figure, a value corresponding to each business data name (ticketing station, ticket gate passage date and time) is read and stored in a buffer.

入場管理装置1−2は,ミドルウェア装置2−2から,業務データ読込バッファ2063内のデータを受信すると,図9の業務処理S209に相当する処理として,例えば,発券駅や発券時刻,有効区間などを確認し,入場の可否を判定する。入場可能と判定した場合には,業務データを書き換えた後,図9のS210で示すような更新要求メッセージを送信する。このとき,書き換え後のデータは当該更新要求メッセージのパラメータとして渡され,当該パラメータは,図12のS211−1〜S211−4に従い,業務データ書込バッファ2062へ格納される。当該データが格納された直後の業務データ書込バッファ2062の一例を図16の右上部へ示す。   When the entrance management device 1-2 receives the data in the business data reading buffer 2063 from the middleware device 2-2, the processing corresponding to the business processing S209 in FIG. 9 includes, for example, a ticketing station, a ticketing time, an effective section, and the like. Confirm whether or not to enter. If it is determined that the admission is possible, after rewriting the business data, an update request message as shown in S210 in FIG. At this time, the rewritten data is passed as a parameter of the update request message, and the parameter is stored in the business data write buffer 2062 in accordance with S21-1 to S211-4 of FIG. An example of the business data write buffer 2062 immediately after the data is stored is shown in the upper right part of FIG.

続いて,ミドルウェア装置2−2は,図12のS211−5に従い,業務データ書込バッファ2062と業務データ読込バッファ2063の差分を計算し,業務データ差分バッファ2061へ格納する。当該差分データが格納された直後の,業務データ差分バッファ2061の一例を,図16の下部へ示す。   Subsequently, the middleware device 2-2 calculates the difference between the business data write buffer 2062 and the business data read buffer 2063 in accordance with S211-5 of FIG. An example of the business data difference buffer 2061 immediately after the difference data is stored is shown in the lower part of FIG.

以上に示したように,本実施例では,書き換え前の業務データと,書き換え後の業務データの差分を計算することにより,更新が必要なデータの範囲を特定し,後に実行する,ICタグに対するデータ書込処理の回数を削減し,書込速度の向上が実現されている。   As described above, in this embodiment, by calculating the difference between the business data before rewriting and the business data after rewriting, the range of data that needs to be updated is specified, and the IC tag to be executed later is processed. The number of data writing processes is reduced and the writing speed is improved.

ミドルウェア装置2−2は,図12のS211−7〜S211−10に従い,業務データ差分バッファ2061内の各業務データを追記領域書込バッファ2066へ書き込んだ後,当該バッファの末尾へ識別符号c0を付加し,追記領域の末尾へ追記する。当該追記が完了した直後の,ICタグ4内データ記憶部403の一例を,図17に示す。   The middleware apparatus 2-2 writes each business data in the business data difference buffer 2061 to the additional write area write buffer 2066 according to S211-7 to S211-10 in FIG. 12, and then sets an identification code c0 at the end of the buffer. Append and append to the end of the appending area. An example of the data storage unit 403 in the IC tag 4 immediately after the additional writing is completed is shown in FIG.

更新処理においては,基本領域4031内のデータには変更を加えず,追記領域4032に,識別符号と当該識別符号に対応する更新後のデータとを連ねて追記する。図17では,追記領域4032内に改札通過日時,入出場情報,乗車駅情報を追記している。(図17中,*の記号は更新後のデータであることを示す)
以上に示したように,本実施例では,書き換え対象のデータが連続するように追記を行う。そのため,ISO18000−6TypeC仕様のBlockWriteコマンドに対応したICタグのように,メモリ上で連続したデータを1度のコマンドで書き込むことのできるICタグに対して,1度のコマンドで更新処理が済み,書込処理の高速化が実現されている。
In the update process, the data in the basic area 4031 is not changed, and the identification code and the updated data corresponding to the identification code are additionally written in the additional recording area 4032. In FIG. 17, the ticket entry passage date / time, entry / exit information, and boarding station information are additionally written in the additional recording area 4032. (In FIG. 17, the symbol * indicates that the data has been updated.)
As described above, in this embodiment, additional writing is performed so that data to be rewritten is continuous. Therefore, for an IC tag that can write continuous data in memory with a single command, such as an IC tag that supports the BlockWrite command of the ISO 18000-6 Type C specification, update processing has been completed with a single command. High-speed writing processing is realized.

続いて乗車客が電車へ乗り,所望の駅に到着後,出場するために,入場管理装置1−2を通した後のICタグ4を,出場管理装置1−3(例えば自動改札機)へ挿入すると,当該出場管理装置1−3は,ミドルウェア装置2−3に対し,図9〜図12で示したような読込処理および更新処理の実行要求を送信する。   Subsequently, in order for the passenger to get on the train, arrive at the desired station and enter, the IC tag 4 after passing through the entrance management device 1-2 is transferred to the entrance management device 1-3 (for example, an automatic ticket gate). When inserted, the participation management device 1-3 transmits execution requests for reading processing and updating processing as shown in FIGS. 9 to 12 to the middleware device 2-3.

ここで,出場管理装置1−3による読込処理は,追記領域4032内にデータが格納されている点で,先述した入場管理装置1−2による読込処理の場合と異なる。特に,図11のS207−14〜S207−19の処理が,追記領域4032に格納されているデータの分だけ実行される。例えばICタグ4内のデータ記憶部403が,図17に示したような状態を取る場合,図11の処理S207−13で追記領域読込バッファ先頭のデータがc0と比較されるが,当該バッファ先頭には識別符号c2が格納されているため,S207−14以降へ処理を進めることとなる。   Here, the reading process by the entry management apparatus 1-3 is different from the reading process by the admission management apparatus 1-2 described above in that data is stored in the additional recording area 4032. In particular, the processing of S207-14 to S207-19 in FIG. 11 is executed for the data stored in the additional write area 4032. For example, when the data storage unit 403 in the IC tag 4 takes a state as shown in FIG. 17, the data at the head of the additional write area reading buffer is compared with c0 in the process S207-13 of FIG. Since the identification code c2 is stored, the processing proceeds to S207-14 and thereafter.

まず,Mの値を識別符号c2の長さだけ増加させた後(S207−14),図14に記載した符号管理テーブル208を参照し,識別符号としてc2を含む行を探し,当該行の「データ名」フィールドに含まれる「改札通過日時」を取得し,変数NAMEへ代入する(S207−15)。   First, after the value of M is increased by the length of the identification code c2 (S207-14), the code management table 208 described in FIG. 14 is referred to search for a line including c2 as the identification code. “Ticket passage date and time” included in the “data name” field is acquired and substituted into the variable NAME (S207-15).

次に,対応管理テーブル207を参照し,データ名として変数NAMEすなわち「改札通過日時」を含む行を探し,当該行の「オフセット」フィールドと「データ長」フィールドの値をそれぞれ変数OFFSETおよび変数LENへ代入する。ここでは図14に記載の対応管理テーブル207に基づき,OFFSETには(k,10)が,LENには6が,それぞれ代入される(S207−16)。   Next, the correspondence management table 207 is looked up for a line including the variable NAME, that is, “ticket gate passage date” as the data name, and the values of the “offset” field and “data length” field of the line are respectively set to the variable OFFSET and the variable LEN Assign to. Here, based on the correspondence management table 207 shown in FIG. 14, (k, 10) is substituted for OFFSET, and 6 is substituted for LEN (S207-16).

続いて,追記領域読込バッファ2067内,M番地(識別符号c2を読み込んだ直後の位置)から,長さLENだけの範囲に存在するデータを読み込み,変数DATAへ代入する。ここでは,ICタグ4内のデータ記憶部403が図17に示したような構造を取るため,改札通過日時の更新後の値が取得される(S207−17)。取得した値は,業務データ読込バッファ2063の「改札通過日時」行へ格納され,基本領域4031から読み込んだ値が追記領域4032から読み込んだ値で上書きされる。   Subsequently, data existing in the range of only the length LEN is read from address M (position immediately after reading the identification code c2) in the additional write area reading buffer 2067, and is substituted into the variable DATA. Here, since the data storage unit 403 in the IC tag 4 has the structure shown in FIG. 17, the updated value of the ticket gate passage date and time is acquired (S207-17). The acquired value is stored in the “ticket gate passage date and time” line of the business data reading buffer 2063, and the value read from the basic area 4031 is overwritten with the value read from the additional writing area 4032.

以上に示したような処理が,追記領域4032内の残りのデータに対しても行われ,最終的に業務データ読込バッファ2063内には,最新の追記データが古いデータを上書きした状態で,業務アプリケーション(ここでは出場管理装置1−3)へ提供される。   The processing as described above is also performed on the remaining data in the additional write area 4032. Finally, the business data read buffer 2063 is overwritten with old data by the latest additional write data. It is provided to the application (here, the participation management device 1-3).

本実施例では,ICタグ内でのデータ配置方法を識別符号のみで表現し,データ長やデータ名は各ミドルウェア装置に保存することで,ICタグ内のメモリを有効利用することを可能にしている。   In this embodiment, the data arrangement method in the IC tag is expressed only by the identification code, and the data length and data name are stored in each middleware device, so that the memory in the IC tag can be used effectively. Yes.

出場管理装置1−3は,ICタグ4の有効性を確認すると,業務データの改札通過日時を書き換え,ミドルウェア装置2−3へ更新を要求し,更新の完了後,乗車券を回収し,改札の扉を乗車客のために開放する。改札通過日時が書き換えられた直後のICタグ4について,データ記憶部403の一例を図18に示す。図示するように,追記領域4032の末尾には,識別符号c2と,改札通過日時の二度目の更新データ(「改札通過日時**」として表記)と,追記領域の末尾を示す識別符号c0と,が追記されている。   Upon confirming the validity of the IC tag 4, the participation management device 1-3 rewrites the ticket data passing date and time of the business data, requests the middleware device 2-3 to update, collects the ticket after completion of the update, Open the door for passengers. FIG. 18 shows an example of the data storage unit 403 for the IC tag 4 immediately after the ticket gate passage date and time is rewritten. As shown in the drawing, at the end of the additional writing area 4032, an identification code c2, update data of the second ticket gate passage date and time (denoted as “ticket gate passage date and time **”), and an identification code c0 indicating the end of the additional writing area, , Is added.

精算装置1−4による精算時など,ICタグ4とミドルウェア装置2とが通信可能な時間が比較的長く確保されている場合には,追記領域4032の空き容量を拡大するために,以下のような処理を実行しても良い。まず,精算装置1−4は,ミドルウェア装置2−4に対して読込要求メッセージを送信し,ICタグ4から最新の業務データを取得する。続いて,当該取得したデータをパラメータとする初期化要求メッセージを,ミドルウェア装置2−4に対して送信することで,ICタグ4内の基本領域4031のデータが最新のデータに更新され,追記領域4032には識別符号c0だけが格納されることとなる。   When the IC tag 4 and the middleware device 2 can communicate with each other for a relatively long time, such as during the settlement by the settlement apparatus 1-4, in order to increase the free space in the additional recording area 4032, the following is performed. Various processes may be executed. First, the settlement apparatus 1-4 transmits a read request message to the middleware apparatus 2-4, and acquires the latest business data from the IC tag 4. Subsequently, by transmitting an initialization request message using the acquired data as a parameter to the middleware device 2-4, the data in the basic area 4031 in the IC tag 4 is updated to the latest data, and the additional recording area Only the identification code c0 is stored in 4032.

図19は,図18で示したICタグ4に対して,上記の処理を実行した結果,追記領域4032の空き容量が最大化された例を図示したものである。   FIG. 19 shows an example in which the free space in the additional write area 4032 is maximized as a result of executing the above processing on the IC tag 4 shown in FIG.

1−1〜1−n:業務アプリケーション装置,2−1〜2−n:ミドルウェア装置,3−1〜3−n:リーダライタ装置,4:ICタグ,9:コンピュータ,10:RFIDシステム 1-1 to 1-n: business application device, 2-1 to 2-n: middleware device, 3-1 to 3-n: reader / writer device, 4: IC tag, 9: computer, 10: RFID system

Claims (5)

ICタグへのデータ書き込みシステムにおいて、
前記ICタグのデータ記憶部は、予め複数の種類のデータが格納された基本領域と追記領域とを有し、
ICタグへ書き込むデータと前記ICタグのデータ記憶部に格納されたデータとを比較し、変更が生じたデータを抽出するミドルウェア装置と、
前記抽出された変更が生じたデータを、当該データの種類に応じた識別符号と共に前記追記領域に格納するリーダライタ装置と、
を有することを特徴とするデータ書き込みシステム。
In the system for writing data to IC tags,
The data storage unit of the IC tag has a basic area in which a plurality of types of data are stored in advance and an additional recording area,
A middleware device that compares data to be written to the IC tag with data stored in the data storage unit of the IC tag and extracts data that has changed,
A reader / writer device that stores the extracted change data in the additional write area together with an identification code according to the type of the data;
A data writing system comprising:
請求項1に記載のデータ書き込みシステムにおいて、
前記リーダライタ装置は、前記追記領域に格納する複数のデータを連続して位置するように書き込むことを特徴とするデータ書き込みシステム。
The data writing system according to claim 1, wherein
The data writing system, wherein the reader / writer device writes a plurality of data to be stored in the additional recording area so as to be continuously located.
請求項1または2に記載のデータ書き込みシステムにおいて、
前記ミドルウェア装置は、
前記ICタグ内に格納する前記識別符号と、前記ミドルウェア装置間で共有する前記対応管理テーブルと前記符号管理テーブルの組み合わせと、を利用し識別符号を付加することを特徴とする、データ書き込みシステム。
The data writing system according to claim 1 or 2,
The middleware device is:
An identification code is added by using the identification code stored in the IC tag and the combination of the correspondence management table and the code management table shared between the middleware devices.
ICタグへのデータ書き込み方法において、
前記ICタグのデータ記憶部は、予め複数の種類のデータが格納された基本領域と追記領域とを有しており、
ミドルウェア装置により、ICタグへ書き込むデータと前記ICタグのデータ記憶部に格納されたデータとを比較し、変更が生じたデータを抽出するステップと、
リーダライタ装置により、前記抽出された変更が生じたデータを、当該データの種類に応じた識別符号と共に前記追記領域に格納するステップと、
を有することを特徴とするデータ書き込み方法。
In the method of writing data to the IC tag,
The data storage unit of the IC tag has a basic area in which a plurality of types of data are stored in advance and an additional recording area,
The middleware device compares the data to be written to the IC tag with the data stored in the data storage unit of the IC tag, and extracts the changed data;
A step of storing the extracted data with the reader / writer device in the additional recording area together with an identification code corresponding to the type of the data;
A data writing method comprising:
請求項4に記載のデータ書き込み方法において、
前記リーダライタ装置により前記追記領域に格納するステップは、前記追記領域に格納する複数のデータを書き込む場合、当該複数のデータを連続した位置に格納されるように書き込むことを特徴とするデータ書き込み方法。
The data writing method according to claim 4, wherein
The step of storing in the write-once area by the reader / writer device, when writing a plurality of data to be stored in the write-once area, writes the plurality of data so as to be stored in consecutive positions. .
JP2009138776A 2009-06-10 2009-06-10 System and method for writing data to IC tag Active JP5271816B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009138776A JP5271816B2 (en) 2009-06-10 2009-06-10 System and method for writing data to IC tag

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009138776A JP5271816B2 (en) 2009-06-10 2009-06-10 System and method for writing data to IC tag

Publications (2)

Publication Number Publication Date
JP2010286935A true JP2010286935A (en) 2010-12-24
JP5271816B2 JP5271816B2 (en) 2013-08-21

Family

ID=43542606

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009138776A Active JP5271816B2 (en) 2009-06-10 2009-06-10 System and method for writing data to IC tag

Country Status (1)

Country Link
JP (1) JP5271816B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123581A (en) * 2014-07-17 2014-10-29 唐肖近 RFID (Radio Frequency Identification Devices) technology based electronic ticketing system structure
CN110024087A (en) * 2016-12-02 2019-07-16 应用材料公司 The certification of RFID part and the tracking of processing component
US10360415B2 (en) 2017-07-28 2019-07-23 Fujitsu Semiconductor Limited Semiconductor memory having radio communication function and application control method
US10740225B2 (en) 2017-07-28 2020-08-11 Fujitsu Semiconductor Limited Semiconductor memory having radio communication function and write control method
JP7567171B2 (en) 2020-02-27 2024-10-16 マツダ株式会社 Vehicle-mounted device control device and vehicle control system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63228323A (en) * 1987-03-18 1988-09-22 Mitsubishi Electric Corp System for recording draw type memory card
JP2004178101A (en) * 2002-11-25 2004-06-24 Oki Electric Ind Co Ltd Ic card reader

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63228323A (en) * 1987-03-18 1988-09-22 Mitsubishi Electric Corp System for recording draw type memory card
JP2004178101A (en) * 2002-11-25 2004-06-24 Oki Electric Ind Co Ltd Ic card reader

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123581A (en) * 2014-07-17 2014-10-29 唐肖近 RFID (Radio Frequency Identification Devices) technology based electronic ticketing system structure
CN110024087A (en) * 2016-12-02 2019-07-16 应用材料公司 The certification of RFID part and the tracking of processing component
JP2020512681A (en) * 2016-12-02 2020-04-23 アプライド マテリアルズ インコーポレイテッドApplied Materials,Incorporated RFID component authentication and tracking of processing components
CN112908842A (en) * 2016-12-02 2021-06-04 应用材料公司 RFID part authentication and tracking of processing components
JP7079249B2 (en) 2016-12-02 2022-06-01 アプライド マテリアルズ インコーポレイテッド RFID component certification and tracking of processing components
KR20230026520A (en) * 2016-12-02 2023-02-24 어플라이드 머티어리얼스, 인코포레이티드 Rfid part authentication and tracking of processing components
CN110024087B (en) * 2016-12-02 2023-08-08 应用材料公司 Tracking of RFID part authentication and processing components
US11848220B2 (en) 2016-12-02 2023-12-19 Applied Materials, Inc. RFID part authentication and tracking of processing components
KR102698477B1 (en) * 2016-12-02 2024-08-22 어플라이드 머티어리얼스, 인코포레이티드 Rfid part authentication and tracking of processing components
US10360415B2 (en) 2017-07-28 2019-07-23 Fujitsu Semiconductor Limited Semiconductor memory having radio communication function and application control method
US10740225B2 (en) 2017-07-28 2020-08-11 Fujitsu Semiconductor Limited Semiconductor memory having radio communication function and write control method
JP7567171B2 (en) 2020-02-27 2024-10-16 マツダ株式会社 Vehicle-mounted device control device and vehicle control system

Also Published As

Publication number Publication date
JP5271816B2 (en) 2013-08-21

Similar Documents

Publication Publication Date Title
JP5271816B2 (en) System and method for writing data to IC tag
EP1469419A1 (en) Proximity communication system, proximity communication method, data managing apparatus, data managing method, recording medium, and computer program
US8341361B2 (en) Method for storing data as well as a transponder, a read/write-device, a computer readable medium including a program element and such a program element adapted to perform this method
CN110716727B (en) Software upgrading method and system
JP5329884B2 (en) Portable electronic device and data processing method in portable electronic device
CN102713826A (en) Methods and apparatuses to allocate file storage via tree representations of a bitmap
US20070046431A1 (en) System and method for combining RFID tag memory
US7076800B2 (en) IC card terminal unit and IC card duplication method
US20090012975A1 (en) Portable electronic device and file management method for use in portable electronic device
EP2102748B1 (en) System and method for recovery of memory transactions
JP2009009602A (en) Ic card and ic card program
JP7415349B2 (en) Electronic devices, management systems, and display methods
JP6140034B2 (en) Automatic ticket gate and station service system
JP5464066B2 (en) Communication device and communication method
JP4318494B2 (en) IC card and IC card program
JP5742976B2 (en) Communication device, communication method, and wireless tag
KR101346778B1 (en) Method for approving card transactions and method for managing card transaction approval informaion
US7346730B2 (en) Mobile electronic device
JP7386291B1 (en) Information processing device, information processing system, program, and information processing method
US20240346549A1 (en) Advertising effect prediction device
JP7333187B2 (en) CARD PROCESSING DEVICE, CARD PROCESSING SYSTEM, CARD PROCESSING METHOD AND PROGRAM
JPH0746376B2 (en) IC card
JP2003162740A (en) Non-contact ic card system
JP2835159B2 (en) Portable storage media
JP2007193493A (en) Settlement system, terminal and settlement method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110915

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130225

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130416

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130513

R151 Written notification of patent or utility model registration

Ref document number: 5271816

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151