Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Node-REDを活用した社内向けIoTプロトタイピング基盤

Takeshi Ueno
December 16, 2021

 Node-REDを活用した社内向けIoTプロトタイピング基盤

2021年12月16日開催の、
Node-RED UG Enterprise「企業でのNode-RED事例紹介」
https://node-red.connpass.com/event/227767/
で用いた資料。

Takeshi Ueno

December 16, 2021
Tweet

More Decks by Takeshi Ueno

Other Decks in Programming

Transcript

  1. 2 自己紹介 ▪所属 パナソニック株式会社 エレクトリックワークス社 ソリューション開発本部 システムソリューション開発センター 1990年、松下電工株式会社(当時) 入社。 社内IT部門、新事業企画部門を経て

    2004年より、住設機器向けIoT・クラウド基盤の企画/開発/運用、 Web/スマホアプリの設計開発に従事。 近年はIoTクラウドサービス用 プロトタイピングサービスの社内提供や技術者研修を推進。 システム・アーキテクチャ設計部門 全社技術サブリーダー ▪略歴 Node-RED UG Japan Osaka 世話役 https://node-red-osaka.connpass.com/
  2. 4 当社概要 ▪当社カンパニー体制 ※2022年4月1日予定 パナソニック ホールディングス株式会社 パ ナ ソ ニ

    ッ ク エ ナ ジ ー ( 株 ) パ ナ ソ ニ ッ ク イ ン ダ ス ト リ ー ( 株 ) パ ナ ソ ニ ッ ク コ ネ ク ト ( 株 ) パ ナ ソ ニ ッ ク エ ン タ ー テ イ ン メ ン ト & コ ミ ュ ニ ケ ー シ ョ ン ( 株 ) パ ナ ソ ニ ッ ク オ ー ト モ ー テ ィ ブ シ ス テ ム ズ ( 株 ) パ ナ ソ ニ ッ ク ハ ウ ジ ン グ ソ リ ュ ー シ ョ ン ズ ( 株 ) パ ナ ソ ニ ッ ク オ ペ レ ー シ ョ ナ ル エ ク セ レ ン ス ( 株 ) そ の 他 グ ル ー プ 会 社 パナソニック株式会社 エ レ ク ト リ ッ ク ワ ー ク ス 社 コ ー ル ド チ ェ ー ン ソ リ ュ ー シ ョ ン ズ 社 空 質 空 調 社 く ら し ア プ ラ イ ア ン ス 社 中 国 ・ 北 東 ア ジ ア 社
  3. 9 課題と解決 ・Webブラウザだけで開発実行 WebブラウザでFlowEditorに アクセスすることで開発を開始。 ・IBMが開発したWebIoT開発環境 ライセンスは「Apache 2.0 License」 Node

    Flow 機能モジュールである「Node」を並べ、接続することで処理の「Flow」を定義。 ブラウザ上の「Deploy」でそのままサーバにデプロイ。 そのまま実行できる。 ・ビジュアルプログラミング環境 FBP: Flow Based Programing を行える「Node-RED」の採用 「技術の壁」への対応
  4. 10 課題と解決 「環境の壁」への対応 作りたいと思ったときにいつでも試せる環境 クラウドサービス「Playground環境」の提供 ・Node-RED導入済みのサーバを オンデマンドで構築・提供 ・サーバサービス構成要素を準備: ドメイン、証明書。 機器/サービス/UIをあらかじめ準備

    ・社内標準技術をサポート: 社内IoT基盤 / ECHONETLiteをすぐ使える ・すぐ試せる: Webで環境を自分で構築でき、サーバ運用不要 ※当社社員には原則無料でアカウント提供 ※社内利用限定 サーバもロジックも 自分で構築
  5. 11 提供サービス ▪Node-RED 仮想サーバ(BOX) ・Node-REDが稼動する仮想サーバ(コンテナ)を提供するサービス Node-REDのフローエディタ、フロー実行ランタイムを Google Kubernetes Engineで仮想コンテナ(Docker)として提供。 Node-REDのFlowを用いて

    ・httpsサーバ証明書(ワイルドカード) を用いた https/WebSocketサービス構築 ・外部サービスへのhttp/httpsアクセス ・email/Teamsへ送信、社内標準基盤・プロトコルの活用 などができる ・Playground環境の管理をおこなうWebサービス ▪Playground管理サービス Playground環境のユーザ管理 (追加/複製/削除/パスワード変更) BOXの管理 (URI/証明書発行/再起動等)が ユーザ自身で実施できる。
  6. 13 システム構成 VPC SNI Proxy IoT機器 スマートフォン Flowエディタ ユーザ https

    REST/Websocket イントラネット 社内外連携サービス BOX BOX http/https ストレージ サーバ Docker Registry Google Kubernetes Engine ▪システム構成図
  7. 14 Playground環境の機能 ▪クラウドインフラの機能 ・共有ファイル(Flowや静的コンテンツ、DBなどを永続化) ▪関連サービス連携機能 ・Raspberry Pi等エッジデバイスの管理機能 ・デバイス向け証明書、Flow配信 ・稼働監視 ・ファイル送受信

    ・リモートログイン ▪Node-REDの機能 ・BOX冗長設定(グローバルコンテキストを複数のBOXで共有して冗長化) ・ダッシュボード/Viewer(スマートフォンアプリ試作用) ▪Playground管理サービスの機能 ・BOX(仮想サーバ)の作成/再起動/Flowロールバック/複製/削除 ・BOXユーザ編集(仮想サーバを複数ユーザで共有する) ・クライアント証明書管理(端末のアクセス制限) ・サービスURI機能(サーバに依存しないURLをアサインした冗長構成)
  8. 15 • PoC/試作の開発・評価中 • PoC/試作で目的を達成して終了 • PoC/試作したが目的を達成できなくて中断 • PoC/試作して成果を基に次ステップの検討中 •

    PoC/試作して成果を基に商品・サービスを実現 5 15 2 10 4 運用状況について ▪提供規模 ・ユーザ数:約250名 ・稼働サーバ数:約350BOX (2021年11月末 現在) ▪活用実態 42%(15件)が目標達成、 11%(4件)が商品・サービスの発売に結びつけた 2020年10月実施のユーザアンケートより
  9. 16 ユースケース ▪活用ユースケース ・クラウドサービスのPoC、社内実証実験 ・センサー、アクチュエータのIoT化試作 ・APIモックアップ、機器/アプリのシミュレータ ・DevOps/ChatOps ・他社サービスの評価 スケール試験、サービス開始後の運用に対応 Playground環境自身の運用にも活用

    APIクライアント、WebHookサーバとして活用 Raspberry Pi等を活用し、数時間で開発 5分でサーバ構築、半日でサービスイン ・教育・研修 新人技術者向け研修、ITベテラン向けプロトタイピング実習、他分野技術者向け体験
  10. 17 事例 ▪事例(1):オフィス空気質測定、改善活動 要件:オフィスの空気質(IAQ)を測定、改善活動に役立てる センサー データ 取得 Playground環境 CSV IAQ

    表示画面 Q制御 Kiosk Chrome (RaspberryPi) iPad 創風機Q (気流制御) IAQセンサー (PM2.5/CO2/VOC/温湿度/照度) 測定データの 分析
  11. 18 事例 ▪事例(2):地震計による住宅耐震診断システムプロトタイピング DB (PostgreSQL) BOX (データ受信・変換) BOX (クラウドトリガ) BOX(UI)

    計測データ アップロード 計測データ アップロード 計測データ アップロード クラウドトリガ ポーリング ローカルトリガ 地震計N 地震計1 地震計0 展示場端末(iPad) 展示場端末(iPad) Playground環境 データ作成・設定用端末(PC) データ ダウンロード 診断結果(PDF) アップロード ローカルトリガ 要件:地震発生後に、住宅構造に影響があったかどうかを診断する
  12. 20 事例 ▪事例(3-1):システム開発支援(機器スタブ) ECHONETLite 抽象化サービス 社内IoT基盤 アプリフロント APIサービス スマートフォン AiSEG

    ECHONETLite機器 WebAPI WebAPI Pub/Sub WebAPI Pub/Sub ECHONETLite ECHONETLiteスタブ×数万台 要件:正式版の組み込み機器の開発が完了する前に、 機器をシミュレートするフローで アプリ開発、動作試験、負荷試験を実施する 機器制御標準プロトコル「ECHONETLite」 のAPIスタックをNode-REDで実装 機器エミュレータ(Raspberry Pi) →クラウドサービススケール試験、 本番サービス用監視システムにも活用
  13. 21 事例 ▪事例(3-2):システム開発支援(アプリスタブ) ECHONETLite 抽象化サービス 社内IoT基盤 アプリフロント APIサービス スマートフォン AiSEG

    ECHONETLite機器 WebAPI WebAPI Pub/Sub WebAPI Pub/Sub ECHONETLite HTML5 UI アプリフロント シミュレータ 要件:スマートフォンアプリの開発が完了する前に アプリをシミュレートするUIで機器の試験を実施。
  14. 29