センサーの計測結果をwebサイトで表示する仕組み(概要)

目次

概要

皆さんこんにちは。以前投稿したセンサーの計測値をopenHABサイトで表示する投稿は、設定内容などいきなり細かすぎたかなと思います。なので今回は後先前後しますが、改めて概要から説明していきたいと思います。

構成

一般的にセンサーって、どこかに設置して、用途に応じた情報を計測しますよね。市販されているCO2センサーなどは、計測した結果を液晶モニタに表示してくれますよね。あとは、連携設定をしたスマホにデータを送ってくれて、スマホで計測結果を表示してくれるタイプもあると思います。

個人利用や小規模な店舗等であればそれで十分ではないかと思いますが、企業の場合、センシングしたデータを分析したり、自社システムで活用したい!と考える事があるのではないかと思います。ですが、センサーの液晶に表示されている情報を読み取って自社システムに流すとか、簡単にはできませんよね?

岡山大学様と共同研究で開発したCO2センサーと重さセンサーはWi-Fiに接続する事が可能で、同一LAN上の指定マシンに、MQTTと言う軽量プロトコルで計測結果を発信する事ができるようになっています。以下概要です。

概要図の通り、計測結果をMQTTで指定マシンに発信します。

MQTTで送信する際に、「どこ」の「何というセンサー」の「計測値がいくつ」と言うような情報を、「任意」に設定する事ができます。

openHABとは、そのような情報を適切に切り分けて、「どこ」の「何センサー」の計測結果が「いくつだ」と言う事を表示してくれるWebサイトになります。(オープンソースのソフトウェア)

計測結果を見る為のサイトを一から作る必要はなく、当社ではLinuxサーバーのdockerコンテナ上にopenHABサイトを構築しています。その辺りもまた今度解説したいのですが、今は計測結果表示する環境が簡単に構築できる、とだけ思っておいてください。

つまり、
・MQTTは、計測結果を、受け取った側が処理しやすい形で発信する為の物。
・openHABは、MQTTなど、IoTデバイスから送られてくる情報を管理し、画面上に表示する物、
と言えると思います。
openHABはMQTT専用ではないので、それ以外の形式のデータでも扱えますし、表示する為だけのものではありませんが、いきなり全部は難しいので、一旦その部分のみお伝えします。

具体例

上記の概要をもう少し具体的な例で解説します。

建屋として、母屋と離れがあったとします。母屋には1階と2階にAセンサーを設置しています。離れは1階しかなく、同様にAセンサーを設置しています。それぞれのセンサーが計測した結果を、図の形式で定期的に発信します。(例えば1分に1回など。対象・用途により計測・送信タイミングは調整する)

MQTTには受信するサーバーが必要です。

openHABサイトは、MQTT受信サーバーに五月雨て届く値を常時チェックしており、例えば①の母屋の2階のAセンサーの結果を表示する欄では、
「母屋/2階/Aセンサー」の情報が届けば、値の内容を画面上に表示する、と言う仕組みなっています。

MQTTは非常に軽量なプロトコル設計になっており、Arduino、Python、Javascript、C#等のプログラミング言語で利用可能です。コマンドプロンプトやターミナルからでも簡単に発信・受信する事が出来る優れものです。

発信する情報は、トピックとペイロードと言う括りで取り扱っており、上述した「母屋/2階/Aセンサー」と言うどこの何の情報だ、と言う部分がトピックに当り、{値:450}と言う計測値の部分がペイロード、と呼ばれる、実情報を扱う部分になります。

トピックもペイロードも自由に設定する事が出来る為、事例より計測場所やセンサーの種類も沢山であったとしても、それらを適切に切り分ける階層を設定すれば、簡単に情報を切り分けて扱う事ができるようになっています。

どうでしょうか?なんとなく雰囲気は掴めますでしょうか?
このような仕組みを使えば、作業コストを抑えて計測結果をリアルタイムに表示するサイトを構築する事ができます。何でもこの仕組みで動くわけではないのですが、当社のCO2センサーと重さセンサーであれば可能になっております。ではまた!

よかったらシェアお願いします!
  • URLをコピーしました!
  • URLをコピーしました!
目次