はじめに
上記にて作成した、Node-RED上のオブジェクトをMindSphere上のVisualFlowCreatorに移植して、動くかどうか試してみました。
CO2濃度と温度データについて
1日分の折れ線グラフ
最大値、最小値、平均値、ヒストグラム
散布図
をMindSphere上のVisualFlowCreatorで表示させることが今回の目標となります。
※MindSphereは、Siemens社がグローバル展開する「クラウドベースのオープンIoTオペレーティングシステム」です。
Node-REDからFlowを書き出し(Export)してみます
当方環境はNode-RED ver2.2.2をWindows上で動かしております。
フローの全体は以下となります。大きく、「CSVファイル読込」、「折れ線グラフ」、「平均・最大:最小・ヒストグラム」、「散布図」の4つに分かれております。 右上のボタンを押し、「書き出し」を選択します。
「フローを書き出し」でダウンロードを選択します。flow.jsonファイルが作成されます。※今回はflows(10).jsonといった名前で作成しています
MindSphere VisualFlowCreatorでImportします
まず、MindSphereへログインします。今回はFree環境を利用します。
LaunchPadでVisualFlowCreatorを選びます。
次に、VisualFlowCreatorにてImportを実施します。
select a file to importを選択し、flows(10).jsonを選択し、開くを押します。
jsonファイルが読み込まれましたので、importボタンを押します。
エラーが2つ出ております。この後、エラー部分を調整していきます。
VisualFlowCreatorにて調整作業を実施します。
ImportしたFlowの全体を見ると、計4か所について、ノードの背景色が薄くなっていることがわかります。この部分のnodeを別のnodeに差し替えていきます。
調整前にMindSphere環境のAsset MobilePhone の配下に co2-20220105.txt ファイルをアップロードしておきます。
(MindSphereのOperationsInsight、AttachmentsでファイルのUploadが可能です。)
(今回のケースではAsset MobilePhoneを使用しましたが、他のAssetでも全く問題ございません。)
まず、file inノードをread fileノードに置き換えます。MindSphere上では、AssetのAttachmentの中にあるファイルをread fileノードで読み込むことが可能となっています。
read fileノードのNameはreadに変更しました。Assetの右側にあるボタンを押すとselect File画面が出てきますので、AssetsはMobilePhoneを選択し、Filesはco2-20220105.txt を選択します。
次にcaliculatorノードについてです。3つのcaliculatorノードを1つのChangeノード置き換えます
Changeノードは 温度用のChangeノードをCOPYして、3箇所の data_c を data_b に変更し、CO2のデータに対応します。
最後に、Edit dashboard tab node の Accessについて Show in Dashboard Viewer and OI へ変更します。この処理をすることで、VisualFlowCreatorで作成したダッシュボードをMindSphere上のDashboard ViewerやOperationsInsightで参照可能になります。
Dashboard Viewerからダッシュボードを見てみましょう。
Dashboard Viewerから Vegaデータ を選択します
VisualFlowCreatorで処理を実行すると以下が表示されます
なお、OperationsInsightからも参照可能となっています。以下が入口となり、表示結果はDashboard Viewerと同じです。
おわりに
Node-REDからの移植作業を通して、MindSphere上にノードがないケースについては、一部作り直しが発生するケースを体験しました。
MindSphere上でVegaノードを使ってヒストグラムや散布図を表示できたことは、ダッシュボード表示の幅が広がり、大きな収穫と考えております。
今後 取り組んでいきたいテーマとしては
・「箱ひげ図」 の移植
・MindSphereのAssetの時系列データからの今回のグラフ表示
といったところがあります。
なお、MindSphere上のVisualFlowCreatorはNode-REDと比較して、以下のような差異があります。
・カスタムノード
VisualFlowCreatorでは最大5個まで
(移動平均nodeやMindSphereのAssetデータを読み書きできるMindSphere固有のnodeなどが準備されています。)
Node-REDは制限なし
・1フローの最大実行時間
VisualFlowCreatorでは30秒 (電源モードオプションで最大2分)
Node-REDでは制限なし
等々
差異の詳細は英語版の以下マニュアルの15ページに「VisualFlowCreatorとNode-REDの差異」として表形式で記載されています。(2022年3月変更版)
- [Visual Flow Creator System Manual]
https://documentation.mindsphere.io/resources/pdf/visual-flow-creator-en.pdf
※SiemensおよびMindSphereは、Siemensの登録商標または商標です
参考資料
- Node-REDダッシュボードを用いたデータ可視化
- Vega
- Vega-lite
- JSONata
- node-red-node-ui-vegaを使った各種センサーのグラフ表示
- 二酸化炭素濃度モニタリングリモートデモシステムの構築
- Node-Redを利用して基本的なデータ分析をやってみました