IoTで三密を回避! Fukuoka Growth Next IoTセンサープロジェクト & 三密回避ソリューション実証実験

はじめに

福岡市にあるスタートアップ支援施設「Fukuoka Growth Next」(FGN)では、IoT技術を使って館内の温度、湿度、二酸化炭素(CO2)濃度などを測定し可視化する「IoTセンサープロジェクト」と、さらに人流センサーなどを用いて館内の人数や騒音も測定し、新型コロナウイルスに感染しやすいとされる「三密」(密閉・密集・密接)の状況になっていないかを検査する「三密回避ソリューション実証実験」が行われています。この記事では、本プロジェクトで開発・運用しているシステムについて、関係者に取材した内容をもとに紹介します。話をうかがったのはこちらのお2人です。

  • 上野和昭さん
    合同会社ネクストステップの代表です。本プロジェクトでは、主にIoTを使った環境測定装置の開発を担当しています。
  • 菊地俊介さん
    さくらインターネット研究所の上級研究員です。本プロジェクトでは、収集した情報の可視化やオープンデータ化を担当しています。

取材に応じる上野さん(左上)と菊地さん(下)。右上は筆者

システムの全体構成

システムの全体構成を下図に示します。

システム構成(資料提供:上野さん)

図の右側にある環境モニター(センサー)にて温度や湿度などの情報を取得し、センサーに接続されたマイコンからサーバに情報を送信します。サーバはさくらのVPSを使用しており、サーバ内に設置したデータベース(DB)にデータを蓄積します。さらに、スマートシティ向けのデータ流通基盤であるFIWARE(詳細は後述)にもデータを送っています。

一方、収集したデータの可視化については、FGNではさくらのVPSからデータを取得し、館内のデジタルサイネージに表示しています。FIWAREに送られたデータは、FIWAREのGUIで可視化しています。

このあとは、システムの各部について説明します。

センサー

センサーは、FGNの事務局、シェアオフィス、コワーキングスペース、イベントスペース、バー(Awabar)など館内の12か所に設置しています。測定項目は、温度、湿度、CO2濃度、照度、気圧、騒音、振動です。温度や湿度、CO2濃度などは専用のセンサーがあります。振動は加速度センサーで測っています。騒音はデシベルへの変換が現状では難しいとのことで、マイクで拾った音をアナログのままマイコンに取り込み、音の大きさをレベル判定しています。実際に使用しているセンサーの型番を以下に示します。

計測項目 メーカー 型番
温湿度・気圧 Bosch Sensortec BME280
CO2濃度・TVOC ScioSense CCS811
CO2濃度 Winsen MH-Z19B
照度 ams TSL25911FN
加速度 Analog Devices ADXL345
音声(ノイズ) コンデンサマイク:CUI Devices
OP-AMP:ON Semiconductor
コンデンサマイク:CMEJ-0627-42-P
OP-AMP:LMV358DR2G

このうち、三密回避に特に有効と考えられるのはCO2濃度と騒音です。密閉空間ではCO2濃度が上昇します。また、密接空間では、大声で会話すると騒音が大きくなります。これらをセンサーで検知しようという狙いです。

なお、三密のもう1つである密集の回避については、これらのセンサーとは別に人流カウンターを館内に設置し、部屋の人数を測ることで検知しています。

人流カウンター(資料提供:上野さん)

センサーからのデータ取得

センサーからのデータ取得とサーバへの送信は、ESP32というマイコンを使用しています。センサー類とESP32を接続するための基板は上野さんが制作しました(下図参照)。

最初に制作した1号機は通信手段がWiFiのみでしたが、設置場所によってはWiFiの電波が弱くデータが正常に送られないケースがあったため、2号機ではさくらインターネットが提供するIoTプラットフォーム・sakura.ioのLTE通信も搭載しました。また、1号機は騒音データの取得機能がなく、2号機で実装しました。これらに加えて、さくらのセキュアモバイルコネクトを使って通信する機器も試作中です。

サーバへのデータ送信

マイコンからサーバへのデータ送信は、WiFiを使う場合とsakura.ioを使う場合で通信経路が異なります(下図参照)。

WiFiによるデータ送信

WiFiによるデータ送信は、通常のインターネット経由での通信になります。さくらのVPSにはWebサーバが設置されており、WiFiで接続されたマイコンからWebサーバに向けてHTTPのPOSTメソッドでデータを送ると、Webサーバがデータを受け取ってDBに保存します。DBはMySQLを使用しています。

sakura.ioによるデータ送信

一方、sakura.ioを使ったデータ送信は、LTEの閉域網で通信する仕組みになっています。マイコンから送出されたデータは閉域網を通り、いったんsakura.ioのDBに蓄積されます。その後、sakura.ioからWebhook OutgoingでVPSにデータを送り、VPSのDBに蓄積します。詳しくは上野さんによる下記の記事をご覧ください。

FIWAREへのデータ送信

VPSにはWiFiとsakura.ioの2系統からデータが来るため、VPSのDBにて整合性を取った後、FIWAREにデータを送ります。FIWAREへのデータ送信方法は後述します。

データの可視化

データベースに蓄積された測定データの表示は、FGN館内のデジタルサイネージ、Grafana、FIWAREの3つの方法で行っています。FIWAREにおける表示は後ほど説明することにして、ここではそれ以外の2つを紹介します。

FGNのデジタルサイネージでの可視化

FGNの館内にはデジタルサイネージが設置されており、ここにVPSから取得したデータを見やすく整形して表示しています。画面は上野さんがデザイナーに依頼して独自に作成したものです。

FGNのデジタルサイネージにおける表示。各地点の温度・湿度・CO2濃度を表示している

Grafanaでの可視化

デジタルサイネージによる表示とは別に、OSSのダッシュボードツールであるGrafanaによる可視化も行っています。こちらは上野さんがGrafanaの得意な人と共同で作成したもので、やはりVPSのDBからデータを取得して表示しています。詳細はネクストステップ社のブログをご覧ください。

Grafanaの画面。
数値は、左側最上段が温度、2段目が湿度、3段目がCO2濃度。右側は照度。
グラフは、上段左から、温度、湿度、気圧。下段左から、CO2濃度、TVOC(総揮発性有機化合物/未計測)

FIWAREを使った実装

FIWAREは、スマートシティ向けのデータ流通基盤のOSSであるとともに、それを推進する団体の名称でもあります。FIWAREを使ったデータ流通基盤の実証実験をNECとさくらインターネットで推進しており、菊地さんはそれに携わっています。(プレスリリース)

FIWAREを使ったデータ流通のエコシステム(資料提供:菊地さん)

では、FIWAREを使った実装を見ていきましょう。

FIWAREへのデータ送信

実証実験では、FIWAREのサーバとAPIを用意しています。このAPIを使って、FIWAREのサーバに向けてHTTPでアクセスし、NGSI(Next Generation Service Interface)というメッセージフォーマットを用いてFIWAREにデータを送信します。FIWAREに送られたデータは、FIWARE-Orionというコンテキストブローカー(データ流通基盤におけるハブのようなもの)に蓄積されます。

FIWAREにおけるデータ流通の流れ (出典:FIWAREハンズオン資料)

FIWAREに送られたデータの可視化

さくら・NECで実施しているFIWAREの実証実験基盤では、WireCloudというモジュールを用いてデータを可視化することができます。WireCloudはプログラムを書かずに開発ができるGUIプログラミングツールで、編集画面でさまざまな部品を組み合わせてデータの処理やGUIを作成します(下記動画参照)。グラフ表示や、地図など他のデータソースとの組み合わせなど、多様な機能があります。

今回の例では、ORIONからデータを取得する設定をWireCloudに投入し、取得したデータをFGNのフロアマップと組み合わせて表示したり、イベントスペースが三密になっていないかを見るために、滞在人数(密集)・CO2濃度(密閉)・音レベル(密接)を1つのダッシュボードで表示したりしています。現在の状態もWireCloudのページで見ることができます。WireCloudについての詳細は、実証実験のドキュメントをご参照ください。

FGNイベントスペースモニターの画面

Slackへの通知

FIWAREを使った実装では、CO2濃度が上がったらSlackに通知する機能も実現しています。仕組みとしては、まずFIWAREのコンテキストブローカーに、CO2濃度がしきい値を超えたらメッセージを送信する設定を行います。そして、メッセージの送付先としてAWSのLambdaを指定し、LambdaからSlackのIncoming WebhookのURLに向けてメッセージを送ると、Slackに通知されます。

CO2濃度が高いとSlackに通知される

運用してみてわかったこと

ここからは、実際にシステムを運用してみて、お2人が感じていることを紹介します。

センサーの品質

今回のプロジェクトでは数多くのセンサーを使用していますが、モノによって品質の差が大きいようです。特にCO2センサーで顕著です。センサーの品質が悪いと、測定誤差が大きいとか、測定値が突然大きく変動し安定しないといった問題が発生します。全体的な傾向としては価格と品質は比例しており、安価なセンサーは品質が悪い場合が多いとのことです。センサーの種類によっても価格は大きく異なり、中でもCO2センサーは高価で、使える品質のものは1個1000円ぐらいするそうです。

CO2濃度について

今回測定している項目の中で、CO2濃度はこれまでそれほど意識されてこなかったように思いますが、三密対策という新たな観点が生まれ、FGN関係者もCO2濃度を意識するようになってきました。例えば、冬になると寒くなり窓を閉めるので、CO2濃度は全体的に上昇します。1000ppmを超えることもあります。現在の運用としては、1000ppmを超える値を検知するとデジタルサイネージやWireCloudで目立つように表示され、それに気づいたFGNの職員が窓を開けて換気しています。CO2濃度は温度や湿度と違って体感で意識することが難しく、こうして可視化したことで意識が高まったと言えます。

CO2濃度が高いと黄色や赤で表示される

データは用途が明確になると急激に価値が高まる

菊地さんによると、このプロジェクトで測定したデータは、当初からFIWARE上で利用できるオープンデータとして公開していましたが、まったく反応がありませんでした。また、測定結果もウェブサイトを見に行かないとわからないので、見る人も少なかったそうです。

ところが、国が発表した「寒冷な場面における新型コロナ感染防止等のポイント」の中でCO2濃度の測定と適切な換気が推奨され、それまで測定していたCO2濃度のデータを可視化すれば三密対策に使えることに気がつき、測定結果が関係者の行動変容に結びつくようになりました。

この例が示唆しているのは、データはただ収集しただけでは価値を生み出しませんが、何かの用途に使えることが明確になると急激に価値が高まることです。菊地さんは今回の件でそれを体感したことが大きいとコメントしました。

寒冷な場面における新型コロナ感染防止等のポイント (資料提供:上野さん)

これから取り組みたいこと

最後に、これから取り組みたいことをお2人にうかがいました。

測定地点の拡大

現在はFGN館内と、比較対象としてネクストステップ社の事務所(FGNの近隣にあるマンションの一室)でも測定していますが、福岡市の施設などもっと多くの場所に測定器を設置し、測定データを増やしていきたいと考えています。さくらインターネットのオフィスでも、福岡のみならず東京や大阪でも測定してみたいものです。

タクシーでの測定

これも測定地点の拡大の一環とも言えますが、タクシー車内での測定を実現すべく、準備を進めています。タクシーの車内は比較的狭い空間である上に、基本的に窓を閉めて運行するので、CO2濃度が上がりやすい状況にあります。そこで、車内に測定装置を設置し、結果を見て換気を促すことを狙っています。

もっとも、このケースではデータをクラウドに送るよりもまず車内で結果を表示することが重要で、しかも数値で表示してもわかりにくい(タクシー運転手にCO2濃度の知識がないと判断できない)ので、LEDメーターによる表示システムを試作中です。並行してsakura.ioやセキュアモバイルコネクトによるデータ送信と蓄積も実装したいとのことです。

測定データの活用

そして、測定したデータの活用についても、もっと進めていきたいと考えています。例えば加湿器を自動でON/OFFできるなら、測定した湿度が所定の値を下回ったら自動的に加湿器を作動させることができます。CO2濃度に応じて窓が自動開閉する仕組みを作れたら、FGNの職員が換気に走り回る必要もなくなります。

それから、振動のデータは、FGNが立地する元小学校の敷地にホテルが建つことになり、建築工事の影響で揺れるだろうということで測り始めたものです。これは現時点では単なるデータですが、いずれFGNの建物もリノベーションするときが来るはずで(Wikipediaによると昭和4年(1929年)に建てられた校舎だそうです)、そのときにこのデータが役立つだろうと考えられます。

菊地さんはFIWARE実証実験を進める立場から、こういうデータを集める取り組みをもっといろいろなところでやってほしい、そして多くのデータを収集し、今後のデータ分析に活用していきたいという意向を示しました。

まとめ

福岡市にあるFGNで行われている、IoTを使った環境測定と結果の可視化、そしてコロナ対策につながる三密を検知するシステムについて紹介しました。プログラムの詳細までは解説していませんが、およそどのような仕組みで動いているかはお伝えできたと思いますので、この記事の中で菊地さんも話していたように、多くの場所で同様の取り組みが実施され、データの収集や三密の回避につながればうれしいです。