清水理史の「イニシャルB」

USB給電でどこでも使えるセンサーデバイス プラネックス「どこでもセンサー」のAPIを試す

 機能はシンプルでいいから、使い勝手のいいセンサーデバイスを探しているなら、プラネックスコミュニケーションズ株式会社の「どこでもセンサー」は、1つの選択肢になるかもしれない。工夫次第では、気温、湿度、気圧、人感センサーがいろいろなサービスから扱えるようになる。

USB給電で動作するセンサーデバイス

 Amazon.co.jpの評価が思ったよりも厳しめなので、どうしようか迷ったのだが、後日と予定されていたAPIが無事に公開されたようなので、結局、購入してみたのが、今回取り上げるプラネックスの「どこでもセンサー」だ。

 気温、温度、気圧の各データを測定できる「どこでも環境センサー(WS-USB01-THP)」と、人体の検知が可能な「どこでも人感センサー(WS-USB02-PIR)」の2モデルをラインアップするシリーズで、USB給電で動作し、Wi-Fi経由でデータをクラウドへ送るシンプルなセンサーデバイスだ。

プラネックスの「どこでも環境センサー(WS-USB01-THP)」(左)と、「どこでも人感センサー(WS-USB02-PIR)」(右)

 同様のセンサーは、IoT機器向けのリモコンデバイスやネットワークカメラなどにも搭載されたものがある。すでにこうした機器を持っているのであれば、それを利用する手もあるが、本製品は、前述した通り、USBバスパワーで動作する点が最大の特徴だ。

モバイルバッテリーでも動作可能

 USB ACアダプターに装着してコンセントに直結しても、Wi-FiルーターのUSBポートなどに装着してもいいし、モバイルバッテリーに装着すれば、文字通り「どこでも」設置することができる。

 もちろん、通信環境は必要になるので、設置場所はWi-Fiの電波の届く範囲内になるが、モバイルルーターを利用すれば、場合によっては屋外に持ち出すことも不可能ではない(雨などに注意は必要だが……)。

 税込価格は、温度、湿度、気圧が計測できる「WS-USB01-THP」がAmazon.co.jpが4242円、人感センサーの「WS-USB02-PIR」が4202円(いずれも2019年5月30日調べ)となっており、正直な感想としては少々高い。

 センサーデバイスは、複数をいろいろなところに設置したいので、安ければ安いほど助かるのだが、USB給電による汎用性の高さと携帯性の高さを考えると、致し方ないところだろうか。

Wi-Fiにつなぐだけで動作、クラウドから管理可能

 使い方は簡単だ。USBポートに接続して起動すると、出荷直後の状態では自身がアクセスポイントとして動作する。

 PCから「WS-USN01-THP_xxxxxx」などのSSIDへ、取扱説明書に記載されたパスワードで接続し、ウェブブラウザーで「http://192.168.1.1」にアクセスすると、Wi-Fi接続設定画面が表示される。ここで既設のWi-FiアクセスポイントのSSIDとパスワードを入力すればいい。

出荷直後の状態ではアクセスポイントとして動作するので、PCから接続後、設定ページを開いて接続先を設定する

 その後、同社が運営する「Planex Cloud Serice」上に、デバイスのシリアルとMACアドレスを登録することで、クラウドからの管理が可能となる

シリアルとMACアドレスを、プラネックスが運営する「Planex Cloud Serice」へ登録する

スマホアプリはないが、ウェブブラウザーで十分に利用可能クラウド連携のメール通知も便利

 クラウド上で管理できるのは、各センサーのWi-Fi接続状況やIPアドレス、ファームウェアバージョン、現在の温度や湿度などの値、過去に計測された値のグラフなどだ。

アプリは提供されず、ウェブブラウザーでクラウド上の情報を確認する

 スマートフォン向けアプリは提供されないため、基本的にはウェブブラウザー上でデータを参照するか、CSVで過去のログをダウンロードするか、あるいは後述するAPIを使うことになる。

センサーからのログは、グラフとしても表示可能

 最近はスマホ向けのアプリがない方が珍しいだろうが、コストが上がってしまうなら不要で、現状のままで構わないというのが個人的な意見だ。

 特に本製品の場合、単体で利用するよりは、センサーの値を別のシステムから参照して、ほかの機器を制御するための基準として使うことが想定される。もちろん、単体で温度などを記録したいというニーズもあるとは思うが、それでもログさえ取得できれば、スマホアプリはなくても問題ないだろう。

 クラウドサービス側の機能もある程度は用意されている。温度、湿度、気圧が一定のしきい値を超えたり、人感センサーが対象を検知したりしたときに、メールで通知するよう設定ができる。

しきい値を設定してメール通知を行う機能も備える

 同社製品の「スマソケ」や「スマカメ」との連携も可能で、例えば温度が一定以上になったら、スマソケで電源を制御して扇風機をオンにするといった使い方もできる。製品との組み合わせ次第で、より利便性は高まりそうだ。

公開されたAPIは2つのみ

 さて、本命とも言えるAPIだが、公開されたAPIは2つだ。いずれも、センサーによって記録されたデータを日時の範囲を指定して取得するというシンプルなものだ。

 もともと、センサー自体の機能がシンプルなので、よく考えれば妥当なのだが、APIというと「ちょっと読み込むのがめんどくさいと思えるようなもの」という固定概念があったので、あまりのシンプルさに面食らった感じだ。

公開されたAPI。「&to="22019-01-31 22:33:44"」の部分は「22019」→「2019」のタイプミスだと思われる

 欲を言えば、せめて「&from="2019-01-01 11:22:33"&to="2019-01-31 22:33:44"」という日付指定を省略した場合には、最新データだけ取り出すとか、現在の値を返すくらいはして欲しかったところだが、取得したJSONを加工すれば済む話でもあるので、贅沢は言わないことにしよう。

POSTMANを使ってAPIをテスト日時がUTCで扱われ、日付だけ指定すると返値が膨大に

 というわけで、POSTMANを使って、APIをテストしてみたが、注意すべきは日時がUTCで扱われる点だ。

POSTMANを使ってテスト

 クラウドサービス上ではグラフなどが日本時間で表示されるので、ついうっかりしてしまいがちだが、例えば、5月22日の朝8時に、以下のように5月21日から5月22日のデータを指定して取得しても、5月21日の23時までのデータしか取得できない。最初は「あれ?」と思ったのだが、「UTCである」という記載を見逃していた。

https://svcipp.planex.co.jp/api/get_data.php?type="WS-USB01-THP"&mac="xx:xx:xx:xx:xx:xx"&from="2019-05-21"&to="2019-05-22"&token="xxxxxxxxxxxxxxxxxxxxxxxxxxx"
データが足りないと思ったら、UTCで出力される仕様だった

 基本的には、クラウドに記録されたデータを参照するためのAPIなので、リアルタイムのデータを取得するものではない。例えば、直近の値を取得したいなら、現在時刻を「&to」に指定して、「&from」を1分前とか30秒前くらいにすればいい。

 環境センサーの「WS-USB01-THP」の場合、正確なルールは分からないが、だいたい20秒おきにデータが記録されるようで、前述のような日付で指定すると、膨大な返値に面食らう。しかし、1分程度の範囲で指定すれば、2~3レコードを取得できる。

 ほかのシステムと連携させることを考えると、前述したように、確実に1レコードだけ取得できる方がありがたいが、取得した最初のデータでも1分前なので、これを現在の値として使うという手もあるだろう。

人感センサーでトイレに人がいるかを判断できる

 一方、人感センサーの方は、検知されたタイミングでのみデータが記録される。

 このため、環境センサーと同様に日付を指定すれば過去の履歴をごっそり取得することもできるが、個人的には、もう少しリアルタイムな使い方ができた方がありがたい。例えば、トイレに設置し、現在個室が埋まっているかどうかを判断したいような場合だ。

 カメラに見間違われそうなので、実際の設置する場所の判断は難しいが、人感センサーの場合、次のように直近の1分ほどのデータを取得することで、人がいるかどうかが判断できる。

トイレのコンセントに直結してみた。これで人が入っていることを検知できる
https://svcipp.planex.co.jp/api/get_data.php?type="WS-USB02-PIR"&mac="xx:xx:xx:xx:xx:xx"&from="2019-05-21 1分前時刻"&to="2019-05-21 現在時刻"&token="xxxxxxxxxxxxxxxxxxxxxxxx"

 値として次のようなJSON形式のデータが戻ってくれば使用中であり、値が何も返ってこなければ人がいないので、使用可と判断ができる。

[
    [
        "2019-05-21 22:19:48",
        "24"
    ]
]

 時刻の処理がめんどくさいので、現在の値を真偽で返して欲しいが、まあ、これも工夫次第で何とかなりそうだ。

 いや、もちろんAPIを使わなくていい、もしくはIFTTTとかFLOWで連携させるなら、メール通知機能を活用する手もあるのだが、APIがもう少し増えてくれるとありがたい印象だ。

工夫次第でいろいろ活用できそう

 というわけで、今回は、プラネックスから発売されている「どこでもセンサー」を、公開されたAPIで使ってみた。工夫次第では、いろいろな活用ができそうな製品だ。何より、USB給電というのが手軽でいい。

 ちなみに、USBバッテリーでどれくらい稼働するかだが、10000mAhのモバイルバッテリーと環境センサーのWS-USB01-THPで稼働させてみたところ、4日と11時間(107時間)ほど気温などを記録し続けることができた。

 どこでもセンサーの消費電力は最大0.9Wだが、フルに消費するわけではなさそうなので、利用するモバイルバッテリーによっては、数日間の稼働は問題なくできそうだ。通信手段さえ確保できる場所なら、モバイルバッテリーでの利用も現実的だろう。

清水 理史

製品レビューなど幅広く執筆しているが、実際に大手企業でネットワーク管理者をしていたこともあり、Windowsのネットワーク全般が得意ジャンル。最新刊「できる Windows 10 活用編」ほか多数の著書がある。