RFID の情報を読み取る機器は色々ある。それらの機器を利用する場合、大抵シリアル通信が必要となる。FileMaker でシリアル通信するためには、プラグインが必要だ。
#シリアル通信ができる代表的なプラグイン
MBS FileMaker Plugin
Troi Serial Plug-in
FileMaker Go でソリューションを考えた場合、プラグインが使えないので諦める人が多いようだ。
今回は、FileMaker Go でも RFID を扱う方法の一つを紹介したいと思う。
富士通フロンテックのTFU-RW732A
富士通フロンテックの TFU-RW732A の特徴は、ネットワーク経由で RFID の情報を取得できるところ。
具体的には URL から挿入スクリプトステップで、TFU-RW732A とやりとり可能です。
FileMaker で RFID を読み取ってみる
# RFID を読み取る流れ
# TFU-RW732A の IP アドレスは 192.168.100.99 に設定してある。
# 1. OPEN
# 2. 読み取る
# 3. CloseURL から挿入 [ 選択 ; ダイアログあり: オフ ; $Result ; "http://192.168.100.99/cmdif/F5FVL2_RWFJIF.asp?cmd=Connect&ConnectName=Session1" ]URL から挿入 [ 選択 ; ダイアログあり: オフ ; RFID::Result ; "http://192.168.100.99/cmdif/F5FVL2_RWFJIF.asp?cmd=Inventory&Wait=0&AntennaType=1&Filter=0" ]URL から挿入 [ 選択 ; ダイアログあり: オフ ; $Result ; "http://192.168.100.99/cmdif/F5FVL2_RWFJIF.asp?cmd=CloseConnection" ]
# エラー処理は省略
上記のスクリプト結果は以下のように得られる。
<?xml version="1.0" encoding="UTF-8"?><Response><Command>Inventory</Command><Result>00000000</Result><ResultDetail><ErrorCode>00000000</ErrorCode><DeviceErrorCode>0000000000</DeviceErrorCode></ResultDetail><TagResultCount>5</TagResultCount><TagResult id="01"><TagID>E20000173904026520004933</TagID><PC>3000</PC><CRC>19A1</CRC><TagResultCode>00000000</TagResultCode><TagResultDetail>00000000</TagResultDetail><RFDeviceInfomation>0000</RFDeviceInfomation><StatusWord>9000</StatusWord><EPCTagErrorCode>00</EPCTagErrorCode><AntennaNumber>1</AntennaNumber><FirstReadTime>112B863A</FirstReadTime><LastReadTime>112B863A</LastReadTime><ReadCount>1</ReadCount><RSSI>E12C</RSSI><DataSize>0</DataSize></TagResult><TagResult id="02"><TagID>E20000173904027120004922</TagID><PC>3000</PC><CRC>96ED</CRC><TagResultCode>00000000</TagResultCode><TagResultDetail>00000000</TagResultDetail><RFDeviceInfomation>0000</RFDeviceInfomation><StatusWord>9000</StatusWord><EPCTagErrorCode>00</EPCTagErrorCode><AntennaNumber>1</AntennaNumber><FirstReadTime>112B863A</FirstReadTime><LastReadTime>112B863A</LastReadTime><ReadCount>1</ReadCount><RSSI>E246</RSSI><DataSize>0</DataSize></TagResult><TagResult id="03"><TagID>E20000173904023320004973</TagID><PC>3000</PC><CRC>89D2</CRC><TagResultCode>00000000</TagResultCode><TagResultDetail>00000000</TagResultDetail><RFDeviceInfomation>0000</RFDeviceInfomation><StatusWord>9000</StatusWord><EPCTagErrorCode>00</EPCTagErrorCode><AntennaNumber>1</AntennaNumber><FirstReadTime>112B863A</FirstReadTime><LastReadTime>112B863A</LastReadTime><ReadCount>1</ReadCount><RSSI>DFB4</RSSI><DataSize>0</DataSize></TagResult><TagResult id="04"><TagID>E2000017390402262000498C</TagID><PC>3000</PC><CRC>B02F</CRC><TagResultCode>00000000</TagResultCode><TagResultDetail>00000000</TagResultDetail><RFDeviceInfomation>0000</RFDeviceInfomation><StatusWord>9000</StatusWord><EPCTagErrorCode>00</EPCTagErrorCode><AntennaNumber>1</AntennaNumber><FirstReadTime>112B863A</FirstReadTime><LastReadTime>112B863A</LastReadTime><ReadCount>1</ReadCount><RSSI>E31B</RSSI><DataSize>0</DataSize></TagResult><TagResult id="05"><TagID>E20000173904023920004962</TagID><PC>3000</PC><CRC>CD6C</CRC><TagResultCode>00000000</TagResultCode><TagResultDetail>00000000</TagResultDetail><RFDeviceInfomation>0000</RFDeviceInfomation><StatusWord>9000</StatusWord><EPCTagErrorCode>00</EPCTagErrorCode><AntennaNumber>1</AntennaNumber><FirstReadTime>112B863A</FirstReadTime><LastReadTime>112B863A</LastReadTime><ReadCount>1</ReadCount><RSSI>DFFF</RSSI><DataSize>0</DataSize></TagResult></Response>
この XML の中の <TagID> が RFID の ID である。
URL から挿入スクリプトステップで RFID の ID が取得できるので、FileMaker Go でも扱うことができる。
速度を測定してみたところ、約 250 ミリ秒ほどで、結果を取得できることがわかった。
問題点
やや価格が高い ( 約数十万円 ) ので、買う前にデモ機を借りて、検証した方が良い。
Special thanks
ジェネコム様