全5181文字
PR

 最近、産業用としてIoTゲートウェイというカテゴリーの製品がよく販売されているのはご存じのことだろう。一般にはLinuxベースのコンピューターで、その中にユーザーカスタムのプログラムをインストールできる製品が多い。しかし意外にも産業用のIoTゲートウェイ製品ではBLE(Bluetooth Low Energy)をサポートしていない製品も多い。またBLEをサポートしていたとしても、アプリケーション開発を考えると、ユーザー企業から見ればハードルが高いと感じるだろう。

 もしJavaScriptで遠隔の任意のBLEデバイスに自由にアクセスできたらどうだろう。Webブラウザーから遠隔の任意のBLEデバイスに簡単にアクセスできたらどうだろう。今回はそういった要望をかなえてくれる製品「obniz BLE/Wi-Fiゲートウェイ Gen2.0」を紹介しよう。

obniz BLE/Wi-Fiゲートウェイ Gen2.0
obniz BLE/Wi-Fiゲートウェイ Gen2.0
[画像のクリックで拡大表示]

obnizとは何か

 obnizといえば、教育やホビーで有名なobniz Boardをイメージする人が多いのではないだろうか。obnizの製品コンセプトは「Make Everything Online」だ。Arduinoなどのマイコンボードでは、私たちが書いたプログラムはコンパイルしたものをボードにインストールして利用する。一方、obniz Boardはすべてのデバイス操作をクラウド経由で行うのが大きな特徴だ。そのため、初心者でも簡単にIoTを体験できると人気を博した製品だ。obniz Boardについては、遅ればせながら、いずれ筆者も試して本コラムでも紹介したいと思う。

 その「Make Everything Online」というコンセプトを引き継ぎ、産業用のIoTゲートウェイとして登場したのがobniz BLEゲートウェイだ。2022年8月にその第2世代が新たに販売開始された。筆者は以前からobniz BLEゲートウェイには興味津々であったが、第2世代販売開始をきっかけに購入してみた。

 デバイスをオンラインにすると言ってもイメージがわかないかもしれない。obnizは「ハードウエアをAPI化」という表現も使っている。Arduinoと比較して説明すると、Arduinoのスケッチ(C/C++のプログラム)に記述する命令の受け口をクラウドのAPIという形でユーザーに提供する。もちろん、Arduinoのスケッチのようにすべてのハードウエア操作がAPI化されるわけではないが、obniz BLEゲートウェイに関しては、BLEに関するほぼすべての操作はAPI化されていると言ってもよいだろう。

 ここまでの説明でお察しの通り、これを実現するためには、obniz BLEゲートウェイはobnizクラウドに常時接続することになる。obniz BLEゲートウェイはWi-Fiをサポートしており、設置場所に用意されたWi-Fiに接続してネット上のobnizクラウドに接続する。

 一方でobnizクラウドがユーザーに提供するAPIは、WebSocketとRESTだ。obnizが提供するJavaScript SDKを使うのであれば、これらの通信プロトコルは意識することはないだろう。もちろん、JavaScript SDKを使わず、直接WebSocketやRESTのAPIを使えば、お好みのプログラミング言語でobnizクラウドにアクセスできる。

ネットワーク構成
ネットワーク構成
[画像のクリックで拡大表示]