2018年4月13日金曜日

Alienリーダをノンプログラミングでクラウド連携

昨今、センサーなどのIoT機器をクラウドに連携してさまざまなサービスを提供することが当たり前のように行われています。また、UHF帯のRFIDリーダであるAlienリーダにも標準で様々な機能が搭載されているのですが、いまいち使いこなせていません。そこで、Alienリーダの機能*1の調査の一環として、ノンプログラミング(Alienリーダの標準設定だけ)で、どこまでクラウド連携できるのか、そこで見えてきた課題などについてまとめてみます。

ノンプログラミングなので、さっくり行きます。AlienリーダのIPアドレスをブラウザで開きます。(今回はALR-9900+JP3を使っています。新しいALR-F800でも画面の構成は違いますが、ほぼ同様に設定可能と思います)



赤い四角で囲んだ「AutoMode」のリンクを開きます。その際、IDとPasswordを求められたら、入力します。(デフォルトはalien/password)

お使いの環境によって、設定値は異なりますが、デフォルトならこんな感じになっています。あ、あとNetworkの設定もお使いの環境に合わせて適宜行ってくださいね。



下記の項目を変更します。
AutoMode ⇒ ON
NotifyMode ⇒ ON
NotifyAddress ⇒ http://aliendump.azurewebsites.net/api/AlienRFIDTagList
NotifyFormat ⇒ XML
NotifyHeader ⇒ OFF
NotifyTrigger ⇒ Change
こんな感じです。


設定したら、ページの上か下にある「Save Changes to Flash」にチェックを入れて、「Submit Changes」ボタンを押してください。これだけで、Alienリーダの設定完了です。クラウドに読み取ったデータをPOSTしてくれます。

では、実際にPOSTされたデータを見てみましょう。下記のページ*2を開いてください。
http://aliendump.azurewebsites.net/api/AlienRFIDTagList


こんな感じのえらく殺風景なページが表示されたと思います。Alienリーダで読み取ったタグIDと時間などを表示しています。リロードすると表示が変わるのが分かると思います。

今回はAlienリーダを使ってノンプログラミングでクラウドに連携する方法を見てきました。ブラウザから設定するだけで、簡単に連携できることがお判りいただけたかと思います。一方で課題もわかりました。一つがhttpしか使えないことです。業務で使うとしたらhttpsが欲しいところですね。Alienからのファームウェアの更新に期待です。もう一つは認証の問題です。上記のページは接続してきたAlienからのデータを無制限に受け入れています。なんらか認証の仕組みが欲しいところです。(が、今回Alienだけで実現する方法が思いつきませんでした)何か方法あれば教えてください。

*1: 設定ページのタイトルを抜き出しただけでもこれだけあります。

  • General
  • Network
  • Time
  • TagList
  • Acquire
  • I/O
  • AutoMode
  • NotifyMode
  • Program
*2ノンプログラミングと銘打っていますが、クラウド側はAzure上にPOSTされたXMLを受信して、JSONで表示するアプリを置いています。

0 件のコメント:

コメントを投稿