説明

無線タグ通信装置

【課題】 ラダープログラマの作業負担を減らすとともに、ネットワーク全体のアクセス速度の低下を防ぐ。
【解決手段】 無線タグ通信装置100を被制御機器として制御する上位装置300と接続可能に構成されるとともに、上位装置300と共有されるデータであって、上位装置300において無線タグ通信装置100が割り付けられた識別情報によって特定されるデータを記憶するPLC共有メモリ102と、無線タグ200からのレスポンスデータを記憶するタグ共有メモリ104と、識別情報とアクセスすべき無線タグ200のタグアドレスとの対応関係を示す対応情報を記憶するアドレス対応テーブルメモリ103と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、無線タグに非接触でアクセスしてデータの読み取り及び/又は書き込みが可能な無線タグ通信装置に関する。
【背景技術】
【0002】
従来から、FA(Factory
Automation)や物流の分野では、製品識別や製品管理を行うための技術として無線タグが用いられている。無線タグは、RF(Radio Frequency)信号を使用して無線タグ内の半導体メモリのデータにアクセスするもので、一般にRFID(Radio Frequency Identification)と呼ばれている。このような無線タグとRF信号で交信し、無線タグ内のデータにアクセスする装置は一般にリーダーライター或いはRFID装置と呼ばれている。
【0003】
無線タグは、例えばFAの分野では、製造ラインの搬送路上を搬送されてくる製品(以下ワークとする)、又はワークが載置されたパレットに予め取り付けられる。一方で、RFID装置は、その搬送路を構成する製造装置の一部として取り付けられていることが多い。また、無線タグについては複数の種類が存在しているが、FAや物流で使われるものの多くは国際規格ISO(International Organization for Standardization)/IEC15693に準拠している。この国際規格に準拠した無線タグは、内部メモリをブロック単位で管理しているが、1ブロックを構成するメモリのバイト数は規定されておらず、例えば1ブロックが4バイトの無線タグや、1ブロックが8バイトの無線タグなどが存在する。このため、ユーザは、無線タグと交信するためのプログラムを作成する際には、1ブロックあたりのバイト数を考慮しながら記述するのが一般的である。
【0004】
ところで、近年になって、RFID装置を動作させるためにフィールドネットワークを用いる場合が増加している(例えば特許文献1参照)。フィールドネットワークは、主としてFA分野で用いられ、各種センサや工作機械などとPLC(Programmable Logic Controller)間の配線を省力化するネットワークである。フィールドネットワークに接続されたPLCによってRFID装置を動作させるためには、PLCからRFID装置に対して、読み取り(リード)や書き込み(ライト)などのアクセスの区別を示す「コマンド」と、実際にアクセスする無線タグのタグアドレス(データ格納場所)やアクセス容量などを示す「パラメータ」とを送信する。これらのコマンドやパラメータを受信したRFID装置は、RF信号を用いて無線タグと交信し、タグ内のメモリにアクセスしてその結果をPLCにレスポンスとして返す。
【0005】
このように、PLCは、RFID装置に対してコマンドやパラメータを逐次送信することによって、無線タグからのデータの読み取りや無線タグへのデータの書き込みを行うことができる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2009−205369号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、コマンドと共に無線タグのアドレス等をパラメータとして都度RFID装置に送る従来方式では、コマンドやアドレスはアスキーコードとして扱う必要があるなど、PLCの動作を規定するラダープログラムを記述するラダープログラマに対し、煩雑な作業負担(プログラム作成負担)を強いていた。
【0008】
具体的に説明すると、PLCには、RFID装置とデータ共有するためのラダー共有メモリ(例えばDM+00〜DM+10)が設けられている。そして、例えば無線タグの記憶領域のうち0x0000番地〜0x0002番地で示されるタグアドレスのデータを読み取りたい場合、ラダープログラマは、PLCの動作を規定するラダープログラムにおいて、リード(READ)コマンドを意味する“R”及び“D”を表すアスキーコード、「0x52」及び「0x44」をそれぞれDM+00及びDM+01にセットするための記述S1、アクセスしたいタグアドレスの先頭番地である、開始アドレスやアクセスする容量を意味するラダー内部表現形式で表された16進数の数値(開始アドレスは0x0000、アクセス容量は0x0003)をアスキーコードに変換するための記述S2、アスキーコードに変換された開始アドレス“0000”の各桁(0x30,0x30,0x30,0x30)をそれぞれDM+02〜DM+05にセットするための記述S3、アスキーコードに変換されたアクセス容量(0x30,0x30,0x30,0x33)をそれぞれDM+06〜DM+09にセットするための記述S4など、各値をラダー共有メモリ(DM
+00〜DM+09)にセットするために多くの記述が必要になる。(なお、‘0x’は続く数字が16進数であることを表す)
【0009】
特に、製品のトレーサビリティ要求が高まっている近年では、単なる製品識別だけでなく、各工程(例えば数十の工程)の加工開始時点で前工程作業が正常に終了したか否かの確認まで無線タグで行われる場合がある。このような場合には、無線タグのタグアドレスのうち、(不連続な)複数のエリアにアクセスしなければならないことがある。例えば、上述の例を用いて説明すると、無線タグの記憶領域のうち0x0000番地〜0x0002番地で示されるタグアドレスのデータだけでなく、0x0050番地〜0x0052番地で示されるタグアドレスのデータも併せて読み取りたい場合、ラダープログラマは、PLCの動作を規定するラダープログラムにおいて、上述した記述の後ろに、無線タグから読み出された0x0000番地〜0x0002番地で示されるタグアドレスのデータを別の記憶領域に退避させるための記述S5を加え、更に、0x0050番地〜0x0052番地で示されるタグアドレスに関して、上述した記述S1〜記述S4に相当する記述や、退避させた別の記憶領域にアクセスするための記述S6などを加えなければならない。上述した記述S1や記述S2に相当する記述については、サブルーチン等で省略することも可能と考えられるが、上述した記述S3や記述S4に相当する記述については、開始アドレスとアクセス容量を変更していく必要があるため省略することができない。加えて、データの退避に関する記述S5や記述S6が必要になる。その結果、無線タグのタグアドレスのうち、(不連続な)複数のエリアにアクセスしなければならないときには、ラダープログラマに対して多大な作業負担を強いることになる。
【0010】
また、無線タグの記憶領域のうち0x0000番地〜0x0002番地で示されるタグアドレスのデータだけでなく、0x0050番地〜0x0052番地で示されるタグアドレスのデータも併せて読み取る場合には、PLCからRFID装置へリードコマンドが2回送られる。したがって、不連続にアクセスしなければならないタグアドレスが増えるにつれて、フィールドネットワーク上を流れるコマンドが増加し、ネットワーク全体のアクセス速度の低下を招く虞がある。
【0011】
本発明は、以上の点に鑑みてなされたものであり、その目的は、ラダープログラマの作業負担を減らすとともに、ネットワーク全体のアクセス速度を改善することが可能な無線タグ通信装置を提供する。
【課題を解決するための手段】
【0012】
本発明に係る無線タグ通信装置は、無線タグとの間で非接触通信を行うために無線信号を送受信する通信手段と、通信手段を制御する通信制御手段と、を有する無線タグ通信装置であって、無線タグ通信装置を被制御機器として制御する上位装置と接続可能に構成されるとともに、上位装置において無線タグ通信装置が割り付けられた識別情報によって特定されるデータに対応し、上位装置と共有されるデータを記憶する共有データ記憶手段と、通信制御手段によって無線タグとの間で非接触通信を行う際に、無線タグと通信するタグデータを記憶するタグデータ記憶手段と、識別情報とタグデータとの対応関係を示す対応情報を記憶する対応情報記憶手段と、を備える。
【0013】
このような構成によれば、通信制御手段は、対応情報記憶手段の記憶内容を参照することによって、アクセスすべき無線タグのタグアドレスを特定することができるので、上位装置からタグアドレスの指定を行う必要がなくなる。したがって、例えばPLCを動作させるためのラダープログラムに、アスキーコードに変換された開始アドレスの各桁をそれぞれDM+xxにセットするための記述(上述した記述S3)や、アスキーコードに変換されたアクセス容量をそれぞれDM+xxにセットするための記述(上述した記述S4)などが不要になり、ひいてはラダープログラマの作業負担を減らすことができる。
【0014】
特に、本発明によれば、無線タグのタグアドレスのうち不連続な複数のエリアにアクセスしなければならないときでも、上述した記述S3〜記述S6といった記述の繰り返しを不要にすることができるため、ラダープログラマの作業負担を減らすことができる。また、繰り返し記述が不要になれば、無線タグ通信装置に何度もリードコマンドを送信しなくてもよいので、フィールドネットワーク上を流れるコマンドの数を減らすことができ、ひいてはネットワーク全体のアクセス速度の低下を防ぐことができる。
【0015】
また、本発明に係る無線タグ通信装置では、通信制御手段が、共有データ記憶手段に記憶されたデータに基づいて、対応情報記憶手段の記憶内容を参照してアクセスすべき無線タグのタグアドレスを特定し、通信手段を制御するようにしてもよい。これにより、通信制御手段によって、アクセスすべき無線タグのタグアドレスが特定されるので、ラダープログラマのプログラム作成負担を軽減することができる。
【0016】
また、本発明に係る無線タグ通信装置では、対応情報記憶手段には、識別情報とタグアドレスとの対応関係を規定する対応テーブルが記憶されており、対応テーブルの内容を編集する対応テーブル編集手段を備えるような構成としてもよい。これにより、ユーザは、アクセスすべき無線タグのタグアドレスとして所望のタグアドレスを指定することができるので、無線タグ通信装置の利便性を高めることができる。なお、対応テーブル編集手段は、後述するように対応テーブル編集装置からのコマンドに基づいて動作するものであってもよいし、例えば無線タグ通信装置に設けられた操作入力装置(スイッチやボタンなど)に基づいて動作するものであってもよい。
【0017】
また、本発明に係る無線タグ通信装置では、対応テーブル編集手段は、無線タグ通信装置に接続された対応テーブル編集装置からのコマンドに基づいて、対応テーブルの内容を編集するような構成としてもよい。これにより、ユーザは、無線タグ通信装置が設置された場所に足を運ばなくても、所望のタグアドレスを指定することができる。なお、対応テーブル編集装置は、無線タグ通信装置に直接的に接続されるように構成してもよいし、PLCなどの上位装置を介して無線タグ通信装置に間接的に接続されるように構成してもよい。
【0018】
また、対応情報記憶手段は、識別情報とタグアドレスとの対応関係を規定する対応テーブルを複数記憶しており、通信制御手段は、対応情報記憶手段に記憶された複数の対応テーブルのうちいずれかを選択し、アクセスすべき無線タグのタグアドレスを特定し、通信手段を制御するように構成してもよい。これにより、ユーザは、対応テーブルを選択するという簡易な操作だけで、アクセスすべき無線タグのタグアドレスを特定することができ、より利便性の高い無線タグ通信装置を提供することができる。
【発明の効果】
【0019】
以上説明したように、本発明によれば、ラダープログラマの作業負担を減らすとともに、ネットワーク全体のアクセス速度を改善することができる。
【図面の簡単な説明】
【0020】
【図1】本発明の実施の形態に係る無線タグ通信装置を用いた無線タグ通信システムのシステム構成例を示す図である。
【図2】図1に示す無線タグ通信システムの要部についての機能構成を示すブロック図である。
【図3】RFIDコントローラとPLCとの間で行われるメモリの情報共有を説明するための概念図である。
【図4】パーソナルコンピュータの表示部において設定画面例を示す図である。
【図5】本実施形態に係るRFIDコントローラにおける処理を説明するためのフローチャートである。
【図6】本実施形態に係るPLCにおける処理を説明するためのフローチャートである。
【図7】RFID装置が無線タグに送るコマンド及びパラメータのデータ構成を示す図である。
【図8】RFID装置と無線タグの間でやりとりされるデータの例を示す図である。
【図9】不連続なタグアドレスへのアクセスを説明するための説明図である。
【図10】不連続なタグアドレスへのアクセスを説明するための説明図である。
【発明を実施するための形態】
【0021】
以下、本発明の実施の形態に係る無線タグ通信装置を用いた無線タグ通信システムについて、図面に基づいて具体的に説明する。
【0022】
[システム構成]
図1は、無線タグ通信システムのシステム構成例を示す図である。なお、無線タグ通信システムは、ASK(Amplitude Shift Keying)変調されたRF信号を利用して無線タグ200にデータを書き込んだり、無線タグ200内のデータを読み出したりすることによって、搬送ライン上を搬送されるパレットWを管理するシステムである。パレットWの上には、例えば図示されていないワークが載置されている。無線タグ通信システムは、無線タグ200と、無線タグ200と交信する無線タグ通信装置の一例としてRFIDコントローラ100と、上位装置の一例としてPLC300と、パレットWの到着などを検知する光電センサ400と、を有している。なお、光電センサ400については必須ではなく、省略することも可能である。
【0023】
RFIDコントローラ100や光電センサ400とPLC300とは、いわゆるフィールドネットワークで接続されている。なお、ここでいうフィールドネットワークは、例えばCC−Linkを意味する用語として一般的に使われている狭義の意味でのフィールドネットワークに限られず、例えばRS232C、RS422、RS485、イーサネット(登録商標)などの何らかの物理的な配線接続の上で動作し、PLC300とRFIDコントローラ100との間で何らかの情報交換プロトコルに従って、メモリ情報を共有する仕組みを有するもの全てを含んだ意味で使用する。物理的な配線について更に詳述すれば、IEEE1394やUSBなどのシリアル接続、パラレル接続、或いは100BASE−Tなどのネットワーク接続であってもよい。また、例えばIEEE802.1xやOFDMなどの無線LAN,赤外線や光通信などを利用した無線接続も考えられる。光電センサ400と、RFIDコントローラ100と接続は、前述のフィールドネットワークに配線が可能ならば、図1のような配線トポロジーが可能であるが、フィールドネットワークの種類によっては、別系統で配線することも考えられる。どちらの配線でも本発明の本質には影響しない。
【0024】
RFIDコントローラ100は、ISO15693の国際規格に基づく無線タグ通信装置の一例であり、無線タグ200との最適交信距離が数cmから数十cmとなる、いわゆる近傍型の無線タグ通信装置である。RFIDコントローラ100は、ASK変調信号(RF信号)を送信し、無線タグ200からの応答信号を受信する。なお、詳細は図2を用いて後述するが、本実施形態では、アンテナ106が組み込まれたアンテナ一体型のコントローラを考えているが、アンテナ106をRFIDコントローラ100から独立させた構成の場合でも、本発明の本質には影響しない。
【0025】
無線タグ200は、RFIDコントローラ100からのRF信号を受信し、動作に必要な電力を生成するとともに、受信データに含まれる書き込みデータをタグメモリ202(図2)に書き込んだり、受信データに基づいてタグメモリ202からデータを読み出みだしたりする。タグメモリ202内には、無線タグ200を識別するための識別情報として、製造時に割り当てられるUID(Unique ID)が格納されている。具体的には、タグのメーカーコードや製品コード、シリアルナンバーなどがUIDとして格納されている。したがって、無線タグ200からUIDを読み取ることによって、その無線タグ200が取り付けられているパレットW(そのパレットWに載置されたワークなど)を識別することができる。またUIDとは別に、ユーザがあらかじめタグメモリ内に、パレットWに載置されたワークに対応する独自のシリアル番号や、ワークの品番・品種情報を書き込んでおき、それらのデータをタグから読み取ることで、パレットWおよび載置されたワークを識別する使い方も可能で、一般的には後者の方法で識別することが多い。
【0026】
PLC300は、RFIDコントローラ100に無線タグ200との交信開始を指示し、RFIDコントローラ100が無線タグ200から読み取ったデータを収集・蓄積し、加工及び判断を下すことで、外部接続された工作機械(図示せず)に対して、パレットWに載置されたワークに実施すべき加工内容を指示したり、表示器(図示せず)に表示するデータを伝えたりする。例えば、搬送ライン上のパレットWがRFIDコントローラ100の交信エリア内に位置するタイミングで、交信開始を指示する。このタイミングは、例えば、搬送ライン上に複数配置される光電センサ400を用いて検知することができる(説明の便宜上、図1では光電センサ4000は1個しか配置していない)。すなわち、PLC300は、光電センサ400から受信した検知信号に基づいて、RFIDコントローラ100と無線タグ200との交信開始を指示するタイミングを認識することができる。
【0027】
RFIDコントローラ100と無線タグ200との交信開始を指示するためのトリガ信号として、リードコマンドやライトコマンドがPLC300からRFIDコントローラ100へ出力され、RFIDコントローラ100では、これらのコマンドに基づいて無線タグ200に対する要求信号の送信が開始される。この要求信号は、上述したようにASK変調されたRF信号として送出され、無線タグ200からは、対応する応答信号がRF信号で送信される。
【0028】
図2は、図1に示す無線タグ通信システムの要部についての機能構成を示すブロック図であり、特に、PLC300(図の左)、RFIDコントローラ100(図の中央)、無線タグ200(図の右)の機能構成を図示している。
【0029】
RFIDコントローラ100は、制御手段101と、PLC共有メモリ102と、アドレス対応テーブルメモリ103と、タグ共有メモリ104と、通信回路105と、アンテナ106と、を有している。
【0030】
制御手段101は、外部I/F(フィールドネットワーク)を介してPLCの制御手段301から入力されるトリガ信号に基づいて無線タグ200に対する交信を開始する。具体的には、PLC300からのリード/ライトコマンドに基づいて、無線タグ200に対する要求信号を生成し、通信回路105へ出力することで、アンテナ106から無線タグ200へRF信号として送りだされる。一方無線タグ200からの応答信号は、アンテナ106で受信され、通信回路105で復調されて制御手段101に伝えられる。
【0031】
また、制御手段101では、無線タグ200との交信に関するパラメータを自動設定する動作を行う構成にすることも考えられる。具体的には、パーソナルコンピュータ500(図4)を使ってアドレス対応テーブルメモリ103を設定する際に、対象とする無線タグをRFIDコントローラ100と交信させることで、自動的に最適なパラメータを取得し、アドレス対応テーブルメモリ103とセットでRFIDコントローラ100に記憶させる方法が考えられる。テーブルを読み出し、読み出したパラメータテーブルに基づいて受付コマンド(Inventryコマンドとも呼ばれる)を生成し、無線タグ200に対して送信する。この受付コマンドによる無線タグ200からの応答に基づいて、交信パラメータがさらに設定される構成も考えられる。
【0032】
なお、ここでいうパラメータの例としては、ASK変調における変調度、RF信号の送出時の電波強度、1ブロックに含まれるバイト数(アクセスサイズ)などがある。とくにアクセスサイズは本願との関連が深い。タグアドレスを元に無線タグ200に送る要求信号を生成する為には、あらかじめアクセスサイズを知っておく必要があるからである。アクセスサイズを知る為には、受付コマンド(Inventryコマンド)という無線タグ200のUIDコード(メーカーコードや製品コードの情報が含まれる)を取得するコマンドを前述のアドレス対応テーブルメモリ103の設定の際に無線タグ200に要求信号として送り、無線タグ200からのレスポンスを得ておけば良い。無線タグ200のメーカコードや製品コードが判明すれば、あらかじめパーソナルコンピュータ500か、RFIDコントローラ100内に記憶されている対応表から、アクセスサイズを求めれば良い。実際に市場で使われている無線タグの種類はそれほど多くない為、このような対応表を保持させておく(例えば、パーソナルコンピュータ500にインストールするユーティリティソフトに記憶させておき、インストール時にパーソナルコンピュータ500に転送されるようにしておく)ことは現実的である。
【0033】
通信回路105は、発振回路、増幅回路、変調回路、ローパスフィルタ、符号化回路等で構成される送信回路と、減衰器、復調回路、増幅回路、復号化回路などから構成される受信回路と、から構成される。通信回路105は、上述したように、無線タグ200にRF信号を送信する際には、制御手段101から対応する要求信号が入力されるとともに、無線タグ200からRF信号を受信する際には、制御手段101に対して復号された応答信号を出力する。より具体的に説明すると、水晶発振子などから構成され、RF信号を生成する発振回路において、例えば13.56MHzのRF信号が生成され、搬送波として出力される。この搬送波は、増幅回路において電力増幅されるとともに、変調回路においてASK変調が行われる。ASK変調を行う際には、符号化回路において、制御手段101から入力されるデータがパルス位置によって符号化され、ベースバンド信号が生成される。そして、このベースバンド信号に基づいて、変調回路にてASK変調が行われる。変調回路は、種類の異なる無線タグ200であっても交信できるように、例えば変調度100%のASK変調と変調度10%のASK変調とを切り替えることができるようになっている。ASK変調が行われた信号は、ローパスフィルタによって高周波成分が除去され、必要に応じて伝送路の特性インピーダンスに整合させた上で、アンテナ106へ出力される。アンテナ106から出力されたRF信号は、無線タグ200へ送出される。また、無線タグ200からの応答信号は、アンテナ106によって受信された後、復調回路に入れられる。そして、復調回路は、受信信号である搬送波の上に乗っている成分、もしくは副搬送波に乗せられている成分の信号を取り出すことで、復調信号を生成する。この復調信号は、復号化回路において復号化された後に、制御手段101に応答信号として出力される。このように、通信回路105やアンテナ106は、無線タグ200との間で非接触交信を行うために無線信号を送受信する通信手段の一例として機能する。また、制御手段101は、通信回路105を制御する通信制御手段の一例として機能する。
【0034】
なお、PLC共有メモリ102、アドレス対応テーブルメモリ103、タグ共有メモリ104の詳細については、無線タグ200およびPLC300を説明した後で詳細に説明する。
【0035】
無線タグ200は、薄い矩形状の基板の各辺に沿って螺旋状に配線されたアンテナ(アンテナコイル)204と、このアンテナ204に接続され、一般的にはアンテナ204の内側に配置される半導体チップと、から構成される。半導体チップは、アンテナ204とで共振回路を形成するためのコンデンサや受信信号を復調するための復調回路などを有する通信回路203と、受信データを処理するための処理回路などを有する制御手段201と、UIDや書き込み指示を受けたデータを記憶する半導体メモリであるタグメモリ202と、から構成される。応答信号は、RFIDコントローラ100からの要求信号に基づいて生成される。具体的には、受信データに含まれている指示に基づいて半導体メモリにデータを書き込み、または半導体メモリからデータを読み出しし、符号化、変調し、RF信号として生成される。アンテナ106に対応するアンテナ204、通信回路105に対応する通信回路203、制御手段101に対応する201という構成になり、それぞれが同様の働きをすると考えて良いが、通信回路203には通信回路105と若干の違いがある。それは、通信回路203には、電力生成回路が追加されていることと、通信回路105の発振回路が、動作クロック生成回路に置き換わる点である。電力生成回路は、アンテナ204が受けたRF信号より、エネルギーを取り出し、整流・平滑・安定化させることで、無線タグ200内の回路全体に対して、動作に必要なエネルギーを供給する役割を果たす。動作クロック生成回路は、アンテナ204が受けたRF信号の搬送波成分を取り出し、波形整形することで、他の回路が動作するために必要な基準クロック信号を作り出し、他の回路に供給する役割を果たす。なお、タグメモリ202には、不揮発性の半導体メモリを使用し、無線タグ200にはメモリ記憶を維持するためのバッテリーを内蔵する必要が無い様な構成としたものが一般的で、その場合は、無線タグ200内のすべての回路が動作する際のエネルギーは、前述した電力生成回路が作り出したエネルギーで賄われる構成となる。これらの回路の働きにより、RFIDコントローラ200から受けた要求信号をもとに、制御手段201は、タグメモリ202に対して記憶保持すべきデータを送ったり(ライト)、タグメモリ202保持されているデータを取り出したり(リード)する。
【0036】
PLC300は、制御手段301と、ラダープログラムメモリ302と、ラダー共有メモリ303とを有している。制御手段301について更に詳述すると、CPUや制御時に必要なデータが書き込まれるワーキングメモリ、パーソナルコンピュータやメモリカード等の外部記憶装置が接続可能なインターフェース、RFIDコントローラ100の制御手段101や光電センサ・工作機械などと接続可能なインターフェース(フィールドネットワーク・インターフェース)などを有している。(図2では、フィールドネットワークのみを、制御手段301と制御手段101をつなぐ線として示しており、他のインターフェースは図示していない。)
【0037】
制御手段301内のインターフェースを介してパーソナルコンピュータから送られてきたラダープログラムは、制御手段301内のCPUにおいてマシンコードに変換され、ラダープログラムメモリ302に格納される。このラダープログラムメモリ302は、例えばバッテリーバックアップされたRAMや、フラッシュメモリ等の不揮発メモリから構成される。格納されてしまえば、パーソナルコンピュータを常時接続しておく必要はなく、通常運用時はパーソナルコンピュータは切り離しておき、PLC300のラダープログラムの変更など、何らかの設定変更を行うときのみ、パーソナルコンピュータを接続するのが、一般的な使い方である。
【0038】
ここで、無線タグ通信システムにおいては、PLC300内のラダー共有メモリ303と、RFIDコントローラ100のPLC共有メモリ102との間で、情報共有が行われるようになっている。ラダー共有メモリ303は、PLC300に接続される各機器に割り付けられるデバイスによって特定されるデータを記憶する入出力メモリである。なお、本実施形態では、ラダー共有メモリ303を上述したワーキングメモリと別に(別構成で)設けることとしているが、例えばワーキングメモリの一部を上述したラダー共有メモリ303として使用してもよい。
【0039】
デバイスとは、リレー、タイマ、カウンタ、データメモリなど、各機器の動作確認や制御のためにプログラムで用いられる要素であって、命令で使用するデータを与えたり、命令の実行結果を格納したりするために用いられる。デバイスには、入力装置からの入力信号に基づいてオン/オフされるビットデバイス(入力デバイス)や、出力装置の動作を制御するためにオン/オフされるビットデバイス(出力デバイス)、オン/オフではなく数値データを格納することが可能なワードデバイスなどがある。また、デバイスは、ビットデバイスであるかワードデバイスであるかを示すデバイス種別と、同一のデバイス種別を有する複数のデータを管理するためのデバイス番号を有している。
【0040】
制御手段301のCPUは、例えば、入力装置から入力される入力信号に基づいて、ラダープログラムメモリ302に記憶されているラダープログラムを実行することにより、出力装置の動作を制御する。すなわち、入力装置からの入力信号に基づいて、その入力装置が割り付けられたデバイスがオン/オフされ、それに基づいて、CPUが所定の出力装置に割り付けられたデバイスをオン/オフすることにより、出力装置の動作が制御される。ラダープログラムは、リレー回路を記号化したラダー図を用いて作成されるプログラムであって、例えば、パーソナルコンピュータ上で実行されるラダープログラム作成ソフトウェアを用いて、パーソナルコンピュータの表示画面上に梯子(ラダー)状に表示される複数のセル内にデバイスのシンボル(図形)を適宜配置して、視覚的なリレー回路を表すラダー図を構築(記述)することによって作成される。
【0041】
図2では、ラダー共有メモリ303は、例えば図1に示す光電センサ400が割り付けられたデバイスによって特定されるデータを記憶する記憶領域(図中では「機器Aと共有」と示す)と、RFIDコントローラ100が割り付けられたデバイスによって特定されるデータを記憶する領域(図中では「機器Bと共有」と示す)と、工作機械など他の機器が割り付けられたデバイスによって特定されるデータを記憶する領域(図中では「機器Cと共有」と示す)と、を有している。このうち、「機器Bと共有」と示した領域が、RFIDコントローラ100のPLC共有メモリ102内の記憶領域と情報共有される。この情報共有について、図3を用いて詳述する。
【0042】
図3は、RFIDコントローラ100とPLC300との間で行われるメモリの情報共有を説明するための概念図である。
【0043】
図3に示すように、PLC300のラダー共有メモリ303には、デバイスR+00によって特定されるデータ「タグ読み/書きトリガ」と、デバイスR+01によって特定されるデータ「ハンドシェークフラグ」と、デバイスDM+00によって特定される「データA」と、デバイスDM+01によって特定されるデータBと、デバイスDM+02によって特定されるデータCとが記憶されている。なお、ここでRやDMはデバイス種別を示し、Rはビットデバイス、DMはワードデバイスを示している。本実施形態では、Rは入出力用のビットデバイスとして扱っているが、入出力用のビットデバイスを扱えないPLC300であれば、入力用のビットデバイスと出力用のビットデバイスの2個をもって1個のRとして扱ってもよい。また、+00や+01などは、デバイス番号を示している。したがって、デバイスは、デバイス種別とデバイス番号によって識別される。さらには、「タグ読み/書きトリガ」を一つのビットにまとめて、「トリガ」としてビットデバイスに割り当てし、アクセス種別(例えば、「読みだし」か「書き込みか」)は別なワードデバイスに割り当てを行っても良い。
【0044】
一方、RFIDコントローラ100のPLC共有メモリ102にも、デバイスR+00によって特定されるデータ「タグ読み/書きトリガ」と、デバイスR+01によって特定されるデータ「ハンドシェークフラグ」と、デバイスDM+00によって特定される「データA」と、デバイスDM+01によって特定されるデータBと、デバイスDM+02によって特定されるデータCとが記憶されている。このように、ラダー共有メモリ303内のメモリ情報と同じ情報が、RFIDコントローラ100内のPLC共有メモリ102にも反映されることによって、情報共有が実現される。PLC共有メモリ102への反映のさせ方は、如何なる方法であっても構わない。通常この方法は、PLCの製造メーカが規格化し、通信手順(プロトコル)を公開するのが通例である。例えば、制御手段301は、ラダー共有メモリ303のメモリ内容を更新したタイミングで、RFIDコントローラ100内の制御手段101に更新内容を通知し、制御手段101は、通知された更新内容に基づきPLC共有メモリ102の内容を書き換える方法などが考えられる。別な方法としては、制御手段101から制御手段301にリードコマンドを繰り返し送ることでトリガメモリ(R+00)のみを常時センスしておき、トリガの内容が変化したときのみ、制御手段101が他のメモリ(DM+xx等)を読み出しに行く方法である。この方法の優れた点は、普段はトリガメモリしかセンシングしない為、フィールドネットワーク上のトラフィックや、制御手段303への処理負担を抑えつつも、レスポンス速度は犠牲にならないという点である。これは後述の、RFIDコントローラ100内のPLC共有メモリ102に対すうる制御手段101のアクセス内容・手順との相性も非常によい。さらに、トリガ信号を読みだしする時間間隔をユーザが設定可能な構成にしておくことで、トラフィックをできるだけ下げ、同じフィールドネットワークを使用する他の機器への影響を低減できるようにすることもできる。一般にこれらのトラフィック制御は、通信経路における帯域制御とも呼ばれ、PLC製品毎に、あるいは規格化されたフィールドネットワークであれば、その規格内で設定・制御方法が決められていることが多い。たとえば前述したトリガ信号の読み出し時間間隔を、過去の変化実績にもとづいて予測するような学習機能を搭載し、さらに高速レスポンス化とトラフィック低減を図ることは、RFIDコントローラの分野に限らず、フィールドネットワーク機器全般に対して適用できる。なお、PLC300の制御手段301は、外部接続された入力機器から入力される信号をラダー共有メモリ303に取り込み(入力リフレッシュ)、予め登録されたラダープログラムに基づき論理演算を実行し(論理演算)、その実行結果をラダー共有メモリ303に書き込んで出力機器に送り出す(出力リフレッシュ)、という一連の処理をサイクリックに繰り返す(他にも、通信処理などの周辺処理が実行される場合がある)。また、PLC共有メモリ102は、PLC300と共有されるデータであって、PLC300においてRFIDコントローラ100が割り付けられた識別情報(デバイス種別とデバイス番号)によって特定されるデータを記憶する共有データ記憶手段の一例として機能する。
【0045】
図3では、RFIDコントローラ100の制御手段101は、PLC共有メモリ102のR+00を確認することによって、何も実行する必要はないのか、無線タグ200からデータを読み出すのか、或いは、無線タグ200にデータを書き込むのか、といったPLC300からの指示内容を判断することができる。そして、例えば無線タグ200にデータAを書き込む指示であると判断した場合には、制御手段101は、DM+00に対応するタグアドレスを知るために、アドレス対応テーブルメモリ103に記憶されているアドレス対応テーブルを参照し、対応するタグアドレスを認識する。
【0046】
アドレス対応テーブルメモリ103については、図4を用いて詳細に説明する。図4は、RFIDコントローラ100に接続されたパーソナルコンピュータ500において、アドレス対応テーブルを作成する様子を説明するための図である。アドレス対応テーブルは、最初からRFIDコントローラ100内に存在しているわけではなく、ユーザが無線タグ通信システムの運用に先立って、事前に作成(設定)しておく。なお、このアドレス対応テーブルの設定内容は、個々のユーザはもちろん、各製造ラインの製造工程毎によっても異なり、ユーザが設定変更可能となっている。また、図4では、パーソナルコンピュータ500はRFIDコントローラ100に接続されているが、フィールドネットワークのプロトコルに、RFIDコントローラ100固有の設定情報など、機器固有の設定情報を流せる仕組みが構築されている場合には、PLC300を介してパーソナルコンピュータ500をRFIDコントローラ100に接続してもよい。これにより、ユーザはRFIDコントローラ100が設置された(狭い)場所まで足を運ばなくても、PLC300が設置された場所まで足を運べばよく、メンテナンス等でアドレス対応テーブルの設定内容を変更する際の作業性を向上させることができる。
【0047】
パーソナルコンピュータ500には、RFIDコントローラ100に各種設定を行うためのユーティリティソフトがインストールされており、上述したようにパーソナルコンピュータ500を直接(或いはPLC300を介して)RFIDコントローラ100に接続することで、設定内容をRFIDコントローラ100に流し込んで記憶させることができる。また、パーソナルコンピュータ500とRFIDコントローラ100とは、RS232CやUSB、イーサネット(登録商標)で接続することが考えられる。また、アドレス対応テーブルは、1パターンだけでなく、複数パターンを予め設定しておき、どのパターンを使用するかをPLC300の共有メモリ(ラダー共有メモリ303)内の情報で選択指示させる、といったようなことも可能である。
【0048】
図4に示すように、パーソナルコンピュータ500の表示部には設定画面例が示されている。図4に示す設定画面には、ラダー共有メモリ501の欄、タグアドレス502の欄、タグアドレス内容503の欄、タグアドレス504の欄、タグアドレス内容(ラベル)505の欄が表示されている。ラダー共有メモリ501の欄、タグアドレス502の欄、タグアドレス内容503の欄は、PLC共有メモリ102に記憶される内容に関する欄であって、タグアドレス504の欄、タグアドレス内容505の欄は、タグ共有メモリ104に記憶される内容に関する欄である。
【0049】
ユーザは、マウスやキーボードといったパーソナルコンピュータ500の入力部を用いて、まず、タグアドレス505の部分に関して、使用する無線タグ200の種類に対応したタグ品番を選択する(図示せず)。これは、無線タグ200の種類によって、無線タグ200のメモリサイズが異なっているためである。ユーザがこれを選択した結果、図4では、タグアドレス505の欄に示すように、0x0000番地から0x03FF番地まで、すなわち10進数で表すと0番地〜1023番地までが自動的に表示される。
【0050】
次に、ユーザは、タグアドレス内容505の欄を入力する。図4では、仮想的な自動車の生産管理用途で説明している。タグアドレス0x0000番地及び0x0001番地には、それぞれ品番1及び品番2が入力され、これらは例えば車種情報を表している。タグアドレス0x0002番地には、例えば塗装色が1バイトで記憶され、カーナビゲーションやオーディオ機器をはじめとする各種オプション装備情報が、タグアドレス0x0003番地〜0x0006番地に入力されているとする。また、販売予定国や販売地域を表す出荷先1,2,3が、タグアドレス0x0007番地〜0x0009番地に入力されており、使用するエンジンの排気量が、タグアドレス0x0010番地に入力されているとする。
【0051】
このように、タグアドレス内容505の欄にユーザが各種ラベルを入力することによって、ユーザは覚えにくい16進数等の数字の設定間違いに容易に気づくことができ、ひいては設定ミスを防止することができる。なお、図4では図示していないが、タグアドレスが多く、パーソナルコンピュータ500の表示画面に収まりきらない場合には、スクロールバーが表示されるような構成としてもよい。
【0052】
次に、ユーザはラダー共有メモリ501の欄にデバイスを入力する。ここでは、RFIDコントローラ100とPLC300とは、3バイトのDMメモリで情報のやり取りをするように構成している例で説明する。なお、実際のラダー共有メモリ303は2バイト単位で管理されることもあるが、そのような場合には無線タグ200の連続した2バイトのアドレスとラダー共有メモリ303の1アドレスデータが対応している、というように考えればよい。また、本発明を実施するにあたって、必ずしも1バイト単位で設定しなければならないものではなく、1バイトの中をビット単位に分割して細かく設定するように構成してもよいし、逆に複数バイトを一つの単位として扱った構成でも良い。
【0053】
次に、ユーザは、上述したラダー共有メモリ501の欄に入力されたデバイスDM+01〜デバイスDM+02に割り当てたいタグアドレスを、タグアドレス502の欄に入力する。この入力をすると、直ちにタグアドレス内容505の欄に入力された情報を基にして、タグアドレス内容503の欄に対応するタグアドレスの内容が表示される。例えば、ラダー共有メモリ501の欄におけるデバイスDM+00に割り当てたいアドレスとして0x0000を入力すると、タグアドレス内容503の欄に「品番1」が自動的に表示される。これにより、ユーザはタグアドレス502の欄にタグアドレスを入力する際の入力ミスに容易に気づくことができるようになる。なお、右と左の対応関係が図4に示すように分かりやすい線等でリンク表示すれば(図中の線参照)、ユーザは視覚的にも対応関係を把握することができ、さらに利便性が向上する。ここでは線を利用しているが、例えば、タグアドレス内容503の「オプション装備1」が入力された行と、タグアドレス内容505の「オプション装備1」が入力された行とが、所定色でマーキングされたり下線が引かれたり文字の色が変化したりと、図4に示す線以外の方法で対応関係を視覚的にわかりやすく表示してもよい。
【0054】
図2及び図3に戻って、制御手段101は、図4を用いて説明したアドレス対応テーブルを用いて、各デバイスに対応するタグアドレスを認識する。すなわち、アドレス対応テーブルを参照して、アクセスすべき無線タグのタグアドレスを特定する。そして、タグアドレスとアクセス種別(ここではリード)を基にして、無線タグ200に対して必要なコマンド(上述した要求信号)を生成し、無線タグ200へRF信号として送出する。無線タグ200内の制御手段201は、送られてきたコマンド(要求信号)を解釈・実行することで、RFIDコントローラ100の要求がリードであることと、そのリードすべきタグアドレスとを認識し、それに対応する情報を、タグメモリ202から読み出し(取り出し)、同コマンドに対するレスポンス(上述した応答信号)を生成し、RFIDコントローラ100に対して送出する。RFIDコントローラ100の制御手段101は、このレスポンスを受け取って内容を解析することで、求めていたタグアドレスの情報(データA)を得るとともに、その情報をタグ共有メモリ104に記憶(保管)する。
【0055】
次に、RFIDコントローラ100内の制御手段101は、アドレス対応テーブルの内容に従ってアドレス変換し、タグ共有メモリ104の情報に対応するPLC共有メモリ102のアドレスに、必要な情報を反映させる。例えば、図3に示すデータAの一例として図4に示す「品番1」を読み出したときには、「品番1」が格納されていたタグアドレス0x0003に対応するデバイスDM+00が格納される記憶領域(アドレス)に、この「品番1」の値を反映させる。なお、読みだすべきアドレスが連続している場合は、一回のリード要求信号とその応答信号の交信で済むが、不連続な複数のアドレスがリード対象であるときは、この無線タグとの交信を複数回行う必要がある。必要な情報を全てリードし、PLC共有メモリに反映し終えると、RFIDコントローラ100においてR+01のハンドシェークフラグを立てて(「未実行」→「実行済み」に変更する、詳細は図5を用いて詳述する)、PLC300に指示された動作が完了したことを通知する。PLC300では、フィールドネットワークの仕組みによって、RFIDコントローラ100内のPLC共有メモリ102と自身のラダー共有メモリ303とが情報共有されているため、直ちにその結果がPLC300内のラダー共有メモリ303の「機器Bと共有」と示した領域に反映される。PLC300は、ハンドシェークフラグが立ったことを確認した後に、デバイスDM+00などへアクセスすることが可能となる。
【0056】
なお、以上はリード動作のときについての説明であるが、ライト動作のときも、基本的な流れはリード動作のときと同様である。無線タグ200からリードしてラダー共有メモリ303に反映させるのではなく、ラダー共有メモリ303のデバイスDM+00〜に書かれていた内容を無線タグ200のタグメモリ202に書き込みを行うようにすればよい。また、リード動作やライト動作だけではなく、その他にも、デバイスDM+00〜DM+02の内容と、対応する無線タグ200のタグメモリ202の内容を照合し、一致しているか否かをデバイスDM+03にYES/NO結果として反映させる、ベリファイコマンドも考えられるし、或いは、ベリファイとライトとを一度に実施するベリファイライトコマンドなども考えられる。アドレス対応テーブルメモリ103は、識別情報とアクセスすべき無線タグ200のタグアドレスとの対応関係を規定する対応テーブルを記憶しており、対応情報記憶手段の一例として機能する。また、パーソナルコンピュータ500は、対応テーブル編集装置の一例に相当し、制御手段101は、パーソナルコンピュータ500からのコマンドに基づいて、対応テーブルの内容を編集する。
【0057】
図5は、本実施形態に係るRFIDコントローラ100における処理を説明するためのフローチャートである。なお、図5では、リード動作とライト動作のみについて説明するが、上述したベリファイコマンドやベリファイライトコマンドについても同様に考えることができる。
【0058】
図5に示すように、PLC共有メモリ102内のR+00を「指示なし」にするとともに、PLC共有メモリ102内のR+01を「実行済み」にする等の初期化処理が行われた後(ステップS1)、PLC共有メモリ102内のR+01がチェックされ(ステップS2)、その後、PLC共有メモリ102内のR+00がチェックされる(ステップS3)。より具体的には、PLC共有メモリ102内のR+00とR+01は、上述したようにPLC300のラダー共有メモリ303と情報共有が行われている。そして、PLC300の制御手段301によって、ラダー共有メモリ303のR+00の状態が「指示なし」から「指示あり(例えばリード)」に遷移すると、すなわちRFIDコントローラ100に対する指示フラグが立つと、フィールドネットワークを通じて制御手段101によって、RFIDコントローラ100内のPLC共有メモリ102内のR+00の状態も「指示なし」から「指示あり(例えばリード)」に遷移する。その後、PLC300の制御手段301によって、ラダー共有メモリ303のR+01の状態が「実行済み」から「未実行」に遷移すると、すなわちRFIDコントローラ100に対するハンドシェークフラグが立つと、フィールドネットワークを通じて制御手段101によって、RFIDコントローラ100内のPLC共有メモリ102内のR+01の状態も「実行済み」から「未実行」に遷移する。このように、制御手段101は、R+00の状態をチェックすることによってコマンド種別を認識することができ、R+01の状態をチェックすることによって処理タイミングを認識することができる。なお、ステップS2においてR+01の状態が「実行済み」のままである場合(ステップS2:NO)、或いは、ステップS3においてR+00の状態が「指示なし」のままである場合(ステップS3:NO)には、ステップS2又はステップS3の処理が繰り返される。
【0059】
ステップS2においてR+01の状態が「未実行」の場合であって、かつ、ステップS3においてR+00の状態が「指示あり」の場合には、制御手段101は、コマンド種別がリードであるかライトであるかを判断する(ステップS4)。上述したように、説明の便宜上、図5ではリードとライトのみを考えているが、実際は、ベリファイやベリファイライトなど他のコマンドも考慮される。この場合、分岐は2つではなく3つや4つになったりする。
【0060】
制御手段101がリードと判別した場合には(ステップS4:リード)、制御手段101は、アドレス対応テーブルメモリ103にアクセスして、アドレス対応テーブル(図4参照)を基にしてリードコマンド(要求信号)を生成し(ステップS5)、無線タグ200に向けてコマンドを送信する(ステップS6)。その後、無線タグ200からレスポンス(応答信号)を受信し(ステップS7)、これを解析して、読み出したデータについてはタグ共有メモリ104に記憶する(ステップS8)。そして、制御手段101によって、全てのコマンドを送ったか否かが判断され(ステップS9)、全てのコマンドを送っていない場合には(ステップS9:NO)、処理はステップS6に戻る。
【0061】
一方で、全てのコマンドを送った場合には(ステップS9;YES)、制御手段101は、アドレス対応テーブルを基にして、読み出したデータについてタグ共有メモリ104をPLC共有メモリ102に反映させる(ステップS10)。そして、制御手段101は、PLC共有メモリ102内のR+01を「未実行」から「実行済み」へと遷移させる(ステップS11)。その結果、PLC300内のラダー共有メモリ303のR+01も「未実行」から「実行済み」へと遷移し、一連の処理が終了するとともに、ステップS2の処理(指示待機状態)に戻ることになる。
【0062】
以上がリード動作についての説明である。ステップS4において、制御手段101がライトと判別した場合には、(ステップS4:ライト)、制御手段101は、アドレス対応テーブルメモリ103にアクセスして、アドレス対応テーブル(図4参照)を基にして、参照すべきデバイス(DM+xx)の範囲を特定する(ステップS12)。どの範囲を参照すべきかは、パーソナルコンピュータ500を通じてユーザによって予め決められている。例えば、図4に示すように、本実施形態では、デバイスDM+00〜デバイスDM+02が参照すべき範囲である。もちろん、必要に応じて、ユーザはデバイスDM+03以降も参照すべき範囲とすることができる。
【0063】
参照すべきデバイスの範囲が特定されると、制御手段101は、PLC共有メモリ102内のデバイス(DM+xx)の範囲の内容を読み出し、アドレス対応テーブルの情報を使って、対応するタグアドレスを特定し、タグ共有メモリ104に書き写す(ステップS13)。図4の例でいえば、デバイスDM+00〜デバイスDM+02の番地の内容である。次に、ステップS13で作成したタグ共有メモリ104の内容を基にして、無線タグ200の制御手段201に送出するライトコマンド(要求信号)を生成し(ステップS14)、無線タグ200に向けてコマンドを送信する(ステップS15)。その後、無線タグ200からレスポンス(応答信号)を受信し(ステップS16)、これを解析して、正常にライトされたか否かを確認する(ステップS17)。そして、制御手段101によって、全てのコマンドを送ったか否かが判断され(ステップS18)、全てのコマンドを送っていない場合には(ステップS18:NO)、処理はステップS15に戻る。
【0064】
一方で、全てのコマンドを送った場合には(ステップS18;YES)、制御手段101は、PLC共有メモリ102内のR+01を「未実行」から「実行済み」へと遷移させる(ステップS19)。その結果、PLC300内のラダー共有メモリ303のR+01も「未実行」から「実行済み」へと遷移し、一連の処理が終了するとともに、ステップS2の処理(指示待機状態)に戻ることになる。
【0065】
図6は、本実施形態に係るPLC300における処理を説明するためのフローチャートである。
【0066】
図6に示すように、まず、PLC300では、制御手段301のCPUによって、ラダー共有メモリ303内のR+00を「指示なし」にするとともに、ラダー共有メモリ303内のR+01を「実行済み」にする等の初期化処理が行われる(ステップS21)。そして、制御手段301のCPUは、ラダー共有メモリ303内のR+00に対し、例えばリードやライトなど、RFIDコントローラ100に実行させたいアクセス種別をセットする(ステップS22)。その後、制御手段101は、ラダー共有メモリ303内のR+01の状態を「実行済み」から「未実行」に遷移させる(ステップS23)。そうすると、図5のステップS2〜ステップS19を用いて説明したように、RFIDコントローラ100において各種処理が実行される。図5のステップS11及びステップS19に示すように、RFIDコントローラ100のPLC共有メモリ102のR+01が「実行済み」に遷移すると、フィールドネットワークを通じて制御手段301によって、ラダー共有メモリ303内のR+01の状態も「未実行」から「実行済み」に遷移する。制御手段301は、この「未実行」から「実行済み」に遷移するか否かを判断する(ステップS24)。「実行済み」に遷移していない場合には(ステップS24:NO)、「実行済み」に遷移するまで待機する。
【0067】
一方で、「未実行」から「実行済み」に遷移した場合には(ステップS24:YES)、必要領域へのアクセスが行われる(ステップS25)。具体的には、PLC300の制御手段301は、例えばリードだった場合、RFIDコントローラ100のDM+xxの必要領域にアクセスして、所望のデータを読み出すことができる。
【0068】
なお、必要に応じてステップS25の後に他の処理を行う(ステップS26)。また、図6ではリードの例を説明したが、例えばライトの場合には、ステップS23において、ラダー共有メモリ303内のR+01の状態を「実行済み」から「未実行」に遷移させる前に、デバイスDM+xxの必要領域にデータを書き込んでおく必要がある。
【0069】
また、図3〜図6を用いて説明した例では、図3に示すように、データA,データB,データCは、ラダー共有メモリ303上で連続したアドレスに記憶されるとともに、PLC共有メモリ102上でも連続したアドレスに記憶されるようにしていた。しかし、無線タグ200のタグメモリ202内では、必ずしも連続したアドレスに記憶されていなくても構わない。具体的に説明すると、一般に、RFIDコントローラ100内の制御手段101から、無線タグ200内の制御手段201に送信するコマンド(要求信号)や、逆に無線タグ200内の制御手段201から送られてくるレスポンス(応答信号)は、図7に示すような態様(データ構成)となっている。例えば、タグアドレスの0番地から4バイトリードする際に、無線タグ200に送信するコマンドと、無線タグ200から帰ってくるレスポンスは、図8に示すような態様(データ構成)となる。リードの場合、送信コマンドにデータが必要ないので、データが空になっている。また、レスポンスの4データは、開始アドレスから順に4アドレス分、タグメモリ202のデータが返される。なお、図7や図8に示すコマンドフォーマットは、模式的なものであって、例えば実際の送信コマンドには無線タグ200のUIDを指定する欄や、その他さまざまなパラメータの指定が考えられる。レスポンスについても同様である。
【0070】
図8に示すように、連続したタグアドレスへのアクセスは一度のコマンドで済む。しかし、不連続なタグアドレスにアクセスしようとすると、複数回のコマンドが必要になる。例えば図9に示すように、0番地(0x0000番地)〜4番地(0x0004番地)と、50番地(0x0050番地)、53番地(0x0053番地)をアクセスしたい場合には、単純計算で3回に分けてアクセスする必要がある。なお、図9の左欄はアクセス種別、中央欄は開始アドレス、右欄はアクセス容量を示す。
【0071】
ただし、条件によっては、複数のアクセスを一つに纏めた方が全体の交信時間が短くなる場合がある。すなわち、アクセスするデータ数を元に、そのアクセスに要する時間を計算することが可能なので、複数のアクセスを一つに纏める方が、交信時間が短くなるかどうかを自動判定し、最適なコマンドアクセスを実現することも考えられる。例えば図10に示すように、50番地を開始アドレスとしてアクセス容量を3とする。そうすると、50番地から3バイト分リードされ、50番地と52番地のデータを得ることができる。51番地もリードしてしまうことについては、余分な情報のリードになってしまうが、それによる時間のロスよりも、コマンド回数を減らす方が時間短縮になる。
【0072】
しかしながら、同様の考え方を全ての番地に適用した場合には、時間短縮に繋がらない虞がある。具体的に説明すると、例えば0番地を開始アドレスとして54バイト分リードすれば、0番地から5バイト分リードすることも、50番地から1バイト分リードすることも、52番地から1バイト分リードすることも、一度に行うことが可能になる。しかしながら、5番地〜49番地までのリードは無駄なリードとなり、これによる時間のロスは小さくない。
【0073】
このように、従来は、不連続なタグアドレスにアクセスしようとすると、複数回のコマンドが必要になる一方で、仮に一つのコマンドに纏めようとすると、番地が大きく離れている場合に大きな時間のロスが発生してしまっていた。しかし、本実施形態に係るRFIDコントローラ100によれば、制御手段101によって、アクセスすべき無線タグのタグアドレスが特定されるので、番地が大きく離れている場合であっても(図4参照)、大きな時間のロスは発生しない。したがって、無線タグ200との交信時間の短縮化を図ることができる。なお、この自動判定は、前述したパーソナルコンピュータ等を使用してRFIDコントローラに予めアドレス変換テーブル内容を設定する段階で、パーソナルコンピュータ側で計算させ、その結果をRFIDコントローラに流し込んで記憶させておくことが考えられる。RFIDコントローラ内で交信毎に計算判定するよりも、このように設定時に記憶させておく方が、処理速度の観点から効率的である。
【0074】
[実施形態の主な効果]
以上説明したように、RFIDコントローラ100の制御手段101が、アドレス対応テーブルメモリ103の記憶内容を参照することによって、アクセスすべき無線タグのタグアドレスを特定するので、PLC300からタグアドレスの指定を行う必要がない。したがって、PLC300を動作させる際のラダープログラムに、アスキーコードに変換された開始アドレスの各桁をそれぞれDM+xxにセットするための記述や、アスキーコードに変換されたアクセス容量をそれぞれDM+xxにセットするための記述などが不要になり、ひいてはラダープログラマの作業負担を減らすことができる。
【0075】
また、本実施形態に係るRFIDコントローラ100によれば、図9及び図10を用いて説明したように、無線タグ200のタグアドレスのうち不連続な複数のエリアにアクセスしなければならないときでも、多くの繰り返し記述を不要にすることができるため、ラダープログラマの作業負担を減らすことができる。また、繰り返し記述が不要にすることで、PLC300から、RFIDコントローラ100に何度もリードコマンドを送信しなくてもよいので、一連の処理時間の短縮を図ることができる。さらには、フィールドネットワーク上を流れるコマンドの数を減らすことができるので、フィールドネットワークのトラフィックを減らすことで、RFID装置以外の機器とPLC300との通信速度の低下を防止し、ネットワーク全体のアクセス速度の向上も図ることができる。
【0076】
また、図4を用いて説明したように、識別情報とタグアドレスとの対応関係を規定する対応テーブルを編集可能とすることによって、RFIDコントローラ100の利便性を高めることができる。例えば、RFIDコントローラ100のユーザや使用環境が異なれば、識別情報とタグアドレスとの対応関係を変更したい場合がある。また、ユーザや使用環境が異ならなくても、生産ラインを流れてくるワークの種類に応じて、識別情報とタグアドレスとの対応関係を変更したい場合がある。本実施形態に係るRFIDコントローラ100は、制御手段101によって対応テーブルを編集可能に構成しているので、このようなニーズにも対応することができる。加えて、対応テーブルの編集パターンはアドレス対応テーブルメモリ103のメモリ容量が許す限り、何通り(例えば数十通り)でも作成することが可能である。したがって、識別情報とタグアドレスとの対応関係について自由度の高いRFIDコントローラ100を提供することができる。例えば、アドレス対応テーブルメモリ103に、2パターンの対応テーブルを予め記憶させておく。そして、制御手段101が、これら2パターンの対応テーブルのうちいずれか一を選択することによって、アクセスすべき無線タグのタグアドレスを特定するようにする。これにより、ユーザは、PLC300からのコマンド等により、制御手段101に複数の対応テーブルのうちいずれか一を選択させることによって、アクセスしたい無線タグ200のタグアドレスを簡易に特定することができる。
【符号の説明】
【0077】
100 RFIDコントローラ
101 制御手段
102 PLC共有メモリ
103 アドレス対応テーブルメモリ
104 タグ共有メモリ
105 通信回路
106 アンテナ
200 無線タグ
201 制御手段
202 タグメモリ
203 通信回路
204 アンテナ
300 PLC
301 制御手段
302 ラダープログラムメモリ
303 ラダー共有メモリ

【特許請求の範囲】
【請求項1】
無線タグとの間で非接触通信を行うために無線信号を送受信する通信手段と、
前記通信手段を制御する通信制御手段と、を有する無線タグ通信装置であって、
前記無線タグ通信装置を被制御機器として制御する上位装置と接続可能に構成されるとともに、
前記上位装置において前記無線タグ通信装置が割り付けられた識別情報によって特定されるデータに対応し、前記上位装置と共有されるデータを記憶する共有データ記憶手段と、
前記通信制御手段によって前記無線タグとの間で非接触通信を行う際に、前記無線タグと通信するタグデータを記憶するタグデータ記憶手段と、
前記識別情報と前記タグデータとの対応関係を示す対応情報を記憶する対応情報記憶手段と、を備えることを特徴とする無線タグ通信装置。
【請求項2】
前記通信制御手段は、前記対応情報記憶手段に記憶されている情報に基づいて、アクセスすべき前記無線タグのタグアドレスを特定し、前記通信手段を制御することを特徴とする請求項1記載の無線タグ通信装置。
【請求項3】
前記対応情報記憶手段には、前記識別情報と前記タグアドレスとの対応関係を規定する対応テーブルが記憶されており、
当該対応テーブルの内容を編集する対応テーブル編集手段を備えることを特徴とする請求項1又は2記載の無線タグ通信装置。
【請求項4】
前記対応テーブル編集手段は、前記無線タグ通信装置に接続された対応テーブル編集装置からのコマンドに基づいて、前記対応テーブルの内容を編集することを特徴とする請求項3記載の無線タグ通信装置。
【請求項5】
前記対応情報記憶手段は、前記識別情報と前記タグアドレスとの対応関係を規定する対応テーブルを複数記憶しており、
前記通信制御手段は、前記対応情報記憶手段に記憶された複数の対応テーブルのうちいずれかを選択し、アクセスすべき前記無線タグのタグアドレスを特定し、前記通信手段を制御することを特徴とする請求項1から4のいずれか記載の無線タグ通信装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2011−128912(P2011−128912A)
【公開日】平成23年6月30日(2011.6.30)
【国際特許分類】
【出願番号】特願2009−286988(P2009−286988)
【出願日】平成21年12月17日(2009.12.17)
【出願人】(000129253)株式会社キーエンス (681)
【Fターム(参考)】