Impinj社のリーダーを使って、RFID検知、トレースシステムを作成した

Impinj社のリーダーを使ったシステムの構築依頼

ある日、弊社のお客様と商談していた際にSPEEDWAY REVOLUTION (IPJ-REV-R420-JP2)を使ってRFIDの検知ができないか?という相談が出ました。調べてみるとOctaneSDKと呼ばれるImpinj社公式のSDKがリリースされているようですし、リーダーをLLRPから制御したという情報も確認できましたので、ベストエフォートで作業させていただきました。

想定より使いやすいSDK群で特に障壁なく作業が進んだ

事前にサンプルプログラムで学習などしていましたが、実際に作業をするとImpinjReader のインスタンスを生成してリーダーに向けてconnectし、startすればタグの検出が始まる、というシンプルなSDKでした。タグ検出のイベントハンドラもOnTagsReportedですし、 引数として TagReport がわたってくるので、foreach で Tag 情報から EPCなどを読みだすことができます。

公式ドキュメントが少ない

OctaneSDKは使いやすいSDKではあるのですが、オンラインマニュアルがなく、例えばTagからとれる情報としてEPCのほかにCRCやRSSI、ほかにもアンテナのポート番号、情報として含まれているのであれば GPS Coordinate や EPC PC Bits のデータが存在するかどうかの確認もできます。これらは、OctaneSDKの旧バージョンのダウンロード(最新バージョンはnugetのみでの提供となっているので)を行い、SDKに含まれるドキュメントを確認することで使用方法などを知ることができます。

日本語での解説サイトが少ない

公式ドキュメントを読んだうえで、例えば SupportsQt による QT featureのサポート有無やその使用、PhaseAngleInRadians がどのようにアルゴリズムに組み込めるかなど、専門的な知識が必要となるAPIがたくさんあるのですが、それらについて日本語で解説したサイトがほぼないです。(英語でも少ないです)そのため凝ったことをやろうとすると途端に情報量が少なく、弊社でもシステム構築時に情報を集めるのが最も苦労した点でした。