Contents
システム全体の概念
センサを使った機器では、センサデータを取り扱う電子回路の部位から、リアルタイムでその制御機器に直接データが送られ制御されることが基本です。今回我々は、その概念を拡張し、従来のリアルタイム系のデータ転送系に加えて、IoT系のデータ転送を下記の図のように定義し、研究開発を行いました。概念図を図1に示します。
システム全体がユーザーのニーズに合うように、いつでも簡単に再構築(追加・削除・変更)が出来ることを念頭に置き、R-CPS, Reconstructable basic system for CPS(Cyber Physical System)と命名しました。
図1.R-CPSデータフロー全体の概念図
実空間を考えた機器配置
機器のネットワークを考える際には、論理的な接続はもちろんのこと、どのような機能の機器を、どこにどのように設置するか、物理的な配置が重要ポイントになります。下記の図2のように、工程1、2、3がそれぞれ別の部屋(空間)に分かれている場合には、それらを物理的にどのように接続してネットワークを構築するのか予め考えておかなければなりません。空間的な距離や遮蔽物の有無、また、電源の確保など実空間での機器配置は重要な要素です。
図2. 実空間での機器配置
図2の例では、それぞれの部屋には中継器を配し、中継器はバックボーンである施設内のLANに接続されています。センサのデータは、中継器を介して収集されます。センサ部は測定したいその位置(あるいは近傍)に設置する必要があり、中継器との距離が離れる場合があり、この間の通信方法についても予め考えておく必要があります。
R-CPSでは、センサのデータを集めるだけでなく、制御することも視野に入れてシステム構築しています。つまり、クラウド側からのフィードバック信号を扱えるように、双方向通信する機能を持たせることが必要となります。そのため、センサ部MSM(Multi-Sensor Module)の開発においては、センサ信号の取得と制御信号の出力が行えるよう機能設計しました。
次に、中継器は単に信号を物理的に中継するだけではなく、その場で必要なデータ処理する機能を持たせています。そのため、中継器のことをPDH(Physical Data Hub)と命名しました。PDHの主な機能は、IoT系に送るデータに対して、単位を付ける、名称を付ける、打刻する、位置情報を付加するといったデータの前処理を行います。これにより、クラウド側でのデータを理解し易くしています。また、PDHでは、同時に接続されているセンサ系の機器の状態を監視することで、計測系の異常検出を行う機能も持たせています。
PDHのハードとしては、RaspberryPI-4 を採用しました。超小型のパソコンと考えてください。もちろん、ウインドウス系のパソコンも使えます。その方法は後述します。PDHを接続するバックボーン(ネットワーク)に有線LANを使用する際には、PoE(Power over Ethernet)が便利です。お勧めします。
PDHが1台に対して複数のMSMを接続することができ、エッジサーバー(フロアマネージャー)1台に対して複数のPDHを配置(接続)することができます。つまり、MSM:PDH=複数:1、PDH:エッジサーバー=複数:1、と言う関係が成り立ち、部分的に変更(追加削除)が容易にできるシステムです。
最初は、MSM、PDHそれぞれ1台で、エッジサバ―を設置せず、直接クラウドへ接続するところから導入を開始し、徐々にシステムを拡張することが簡単です。接続機器が増えてきたら、社内(組織内)にフロアマネージャー(エッジサーバー)を設置し、インターネット(クラウド)側との接続は、フロアーマネージャー1台に限定する方が、セキュリティ対策としても良いと考えます。
本稿では、R-CPS, MSM, PDHと言う単語が良く出てきますので、それらの関係をご理解願います。システム全体を以下、図3に示し(エッジサーバーは省略)ます。
図3. システム全体図
時刻の考え方
センサ部(MSM)には、時計(RTC, Real Time Clock)を搭載していません。図1に示す通り、制御機器にリアルタイム系でフィードバックする際には、出来るだけ高速でフィードバック(通信)すれば良く、あえて時刻を追加する必要はありません。また、IoT系では、時刻はPDHにデータが送られてきた時点で、PDHの時刻をデータに打刻することで十分です。PDHはシステム上位の機器をタイムサーバーとして同期させます。
PDHよりデータを、例えば、クラウド(サーバー)に送る場合、センサ(MSM)からのデータを逐次送る場合と、一旦PDH内でファイルに固めて送る場合の二通りが考えられます。そのため、MSMから送るデータにはマイコンがONした時点からの時間経過をデータのヘッダーとしてあらかじめ付け加えています。なので、MSMから送られてきたデータをそのまま1つのファイルのまとめても、それぞれのデータの時間間隔を簡単に知ることができます。まとめた、ファイルの名称の一部としてPDHの時刻を付けることで、複数のファイル間でのデータ全体の時刻関係を知ることができます。
Node-RED(データハンドリングのミドルウエア)
PDHとローカルに設置したサーバー(図3では省略)やクラウド側に構築したシステムには、Node-REDと呼ばれるGUI形式で記述されるミドルウェアを使用しています。システム構築の際には、何らかのプログラミングをすることは避けて通れませんが、専門家ではなくてもできる限りユーザー自身が使え、自らの手で保守出来ることを目指しています。
初等教育の現場では、GUI形式のプログラミング教育が行われていることも考慮し、同じGUI形式であるNode-REDを採用しました。ワープロソフト、表計算ソフト、と同様GUI形式のプログラミングも一般的なIT技術となると考えています。Node-REDについては、実施例に即して、具体的に後述します。
PDHやサーバーでデータを扱う際には、データをJSON(JavaScript Object Notation)と言うオブジェクト形式で扱っています。前述したように、データには、単位・時刻・位置情報が付加されています。図4。JSONで記述したオブジェクト形式のデータは、付加された情報と共に”一塊”としてNode-REDで取り扱うことが可能です。
reconstractable(再配置)が簡単に自由にできることは、反面、システム変更の際には単位の打ち間違いなどのミスを起こす可能性が高くなります。それを防止するためには、データ源の近くでデータを一塊(JSON)にすることは有効な手段です。
MSMは既にJSONで記述されてたデータをPDHに送ってきますが、MSM以外の機器をPDHに接続した場合、PDH内でJSON形式にデータ加工することが必要になります。
図4. データの形式
データの送受(MQTT)
ご自身のシステムが進化し、複雑になるとデータ転送が課題になります。多:多の通信を容易に行えるように、データ転送にはMQTT(Message Queueing Telemetry Transport )と言う仲介機能を用いています。MQTTを使うことで、データの発信側、受信側それぞれが、相手側を気にすることなく、データの送信・停止が行え、また、システム自体の更新もそれぞれで任意に独立して行うことが可能です。
クラウド上で構築したシステムのデータベースとのやり取りを容易にするためAPI(Application Programming Interface)を明示しています。APIを明示することで、異なる事業者間でのデータの送受を容易にしています。
探査と管理
IoTを始めるにしても、そのセンシングを考えると、探査と管理の2つの状態があります。IoTへの投資とその効果を考えると、探査の状況においては、R-CPSは、簡単で安価ですのでIoT入門には効果を発揮すると考えてています。
図5. センシング2つの状態
周辺要素技術
周辺技術の取得も重要な要素です。電子回路と機械、プログラミング、システム設計、についても学べるように必要な要素技術を、実用事例を基に紹介します。
評価キットの提供
実証実験を行う際に、必要な資材として評価キットを作成しました。MSMを1個、PDHを1個、ブルートゥースで接続できるようにした状態で、実証実験にご協力いただける方に配布して、フィードバックいただいています。
図6. 評価キット
オープンな環境整備
特に中小企業や個人経営の比較的規模の小さい事業者においては、ICT(IoT)のためだけにリソースを割り当てることは困難です。と言って、全て外注すればそのコストは大きなものになるばかりか、外注先一社に頼ることになり、システムの自由度が下がります。
研究開発には、既存のハード(汎用部品)とソフト(OS、ミドルウエア)を使っています。いわば、組み合わせ技術です。
この度の成果、仕様を公開することで、ハードや基本ソフトは共通の物を使う事で価格を下げ、誰でもがサプライヤーとして参入し易くします。その結果、ユーザーは安価で自分の求めるICT環境を整備することを実現します。建物で言うと、共通なハードやシステムを一階部分として、二階部分では、ユーザーそれぞれ独自のレシピやロジックを盛り込み、他者と差別化します。
このように、二階建ての考えかたで、ユーザーが個別に求めるものを具現化できるICT環境構築が可能です。
謝辞
本研究は、内閣府「戦略的イノベーション創造プログラム(SIP)第2期/フィジカル空間デジタルデータ処理基盤」の研究活動の一環として行いました。
本研究では、実証実験として数多くの事業者様にご協力いただきました。実験室で我々自ら行った実用例と合わせて、実際の現場において行った実証実験の結果も合わせて紹介します。