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. Node-RED活用の 社内向けIoTプロトタイピング基盤 Node-RED UG Enterprise 「企業でのNode-RED事例紹介」 2021年12月16日 パナソニック株式会社 エレクトリックワークス社 システムソリューション開発センター

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

    2004年より、住設機器向けIoT・クラウド基盤の企画/開発/運用、 Web/スマホアプリの設計開発に従事。 近年はIoTクラウドサービス用 プロトタイピングサービスの社内提供や技術者研修を推進。 システム・アーキテクチャ設計部門 全社技術サブリーダー ▪略歴 Node-RED UG Japan Osaka 世話役 https://node-red-osaka.connpass.com/
  3. 私たちPanasonicは、より良いくらしを創造し、世界中の人々のしあわせと、 社会の発展、そして地球の未来に貢献しつづけることをお約束します。 住宅、社会、ビジネス、旅、自動車など多様な空間・領域で、様々なパートナーと お客様一人ひとりにとっての“より良いくらし”を追求し、拡げていくと共に、 地球環境への貢献をはじめ、グローバルに“より良い世界”の実現に貢献してまいります。 ブランドスローガン 当社概要

  4. 4 当社概要 ▪当社カンパニー体制 ※2022年4月1日予定 パナソニック ホールディングス株式会社 パ ナ ソ ニ

    ッ ク エ ナ ジ ー ( 株 ) パ ナ ソ ニ ッ ク イ ン ダ ス ト リ ー ( 株 ) パ ナ ソ ニ ッ ク コ ネ ク ト ( 株 ) パ ナ ソ ニ ッ ク エ ン タ ー テ イ ン メ ン ト & コ ミ ュ ニ ケ ー シ ョ ン ( 株 ) パ ナ ソ ニ ッ ク オ ー ト モ ー テ ィ ブ シ ス テ ム ズ ( 株 ) パ ナ ソ ニ ッ ク ハ ウ ジ ン グ ソ リ ュ ー シ ョ ン ズ ( 株 ) パ ナ ソ ニ ッ ク オ ペ レ ー シ ョ ナ ル エ ク セ レ ン ス ( 株 ) そ の 他 グ ル ー プ 会 社 パナソニック株式会社 エ レ ク ト リ ッ ク ワ ー ク ス 社 コ ー ル ド チ ェ ー ン ソ リ ュ ー シ ョ ン ズ 社 空 質 空 調 社 く ら し ア プ ラ イ ア ン ス 社 中 国 ・ 北 東 ア ジ ア 社
  5. 5 当社概要 ▪エレクトリックワークス社の事業紹介 エレクトリックワークス社は 電気設備の分野で 住宅、オフィス、ホテル、 商業施設、スポーツ施設など 社会を構成するあらゆる “くらしの空間” で事業を展開しています。

    https://panasonic.co.jp/ew/company/index.html
  6. 6 Playground環境開発の背景 いい商品・サービスをつくるには トライアル&エラーが必要 要件を決めきれない 本当に役に立つサービスかどうかは 試しにつくって提供してみないと判断できない トレンドはどんどん変化する IoT・クラウドサービスのトレンドは数ヶ月単位で変化 →半年かけて作っていると時代遅れになる

  7. 7 Playground環境開発の背景 「さっと作ってさっと試す」 「たくさん作ってたくさん失敗する」 IoT・クラウドサービスでも ラピッドプロトタイピングを たくさん実践したい

  8. 8 Playground環境開発の背景 「技術の壁」 IoT・クラウドサービスのプロトタイピングに対する障壁 社内に開発スキルがなく、外注してしまう → 開発コストがかかり「失敗できない」 資産化が必要で「捨てられない」 「環境の壁」 社内ルールに適合したクラウド環境(構築・運用)が必要

    →構築・維持に時間やコストがかかる。
  9. 9 課題と解決 ・Webブラウザだけで開発実行 WebブラウザでFlowEditorに アクセスすることで開発を開始。 ・IBMが開発したWebIoT開発環境 ライセンスは「Apache 2.0 License」 Node

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

    ・社内標準技術をサポート: 社内IoT基盤 / ECHONETLiteをすぐ使える ・すぐ試せる: Webで環境を自分で構築でき、サーバ運用不要 ※当社社員には原則無料でアカウント提供 ※社内利用限定 サーバもロジックも 自分で構築
  11. 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/証明書発行/再起動等)が ユーザ自身で実施できる。
  12. 12 実際にPlayground環境でサービス構築 ▪デモムービー

  13. 13 システム構成 VPC SNI Proxy IoT機器 スマートフォン Flowエディタ ユーザ https

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

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

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

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

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

    計測データ アップロード 計測データ アップロード 計測データ アップロード クラウドトリガ ポーリング ローカルトリガ 地震計N 地震計1 地震計0 展示場端末(iPad) 展示場端末(iPad) Playground環境 データ作成・設定用端末(PC) データ ダウンロード 診断結果(PDF) アップロード ローカルトリガ 要件:地震発生後に、住宅構造に影響があったかどうかを診断する
  19. 19 事例 ▪事例(2):地震計による住宅耐震診断システムプロトタイピング

  20. 20 事例 ▪事例(3-1):システム開発支援(機器スタブ) ECHONETLite 抽象化サービス 社内IoT基盤 アプリフロント APIサービス スマートフォン AiSEG

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

    ECHONETLite機器 WebAPI WebAPI Pub/Sub WebAPI Pub/Sub ECHONETLite HTML5 UI アプリフロント シミュレータ 要件:スマートフォンアプリの開発が完了する前に アプリをシミュレートするUIで機器の試験を実施。
  22. 22 事例 ▪事例(4):B2BサービスのAPI開発 B2B連携は連携先組織ごとに要件が異なり個別対応が必要。 (連携方向、認証方式、データ形式、引数順など) 基本部分は部品化して準備しておき、先方のニーズにしたがって flowを組み替えて対応する A社 B社 C社

    当社サービス Playground環境 ポーリング WebHook 双方向 APIクライアントのサンプル実装として、 Node-REDのFlowを先方開発者に提供している事例もある
  23. 23 事例 ▪事例(5):教育・研修 社内研修 3日間コース・技術系新入社員向け/非ITエンジニア向け

  24. 24 コミュニティサポート ▪Microsoft Teamsでの社内コミュニティサポート

  25. 25 プロトタイピング事例デモ ▪プロトタイピング事例のデモ スマートフォンの加速度センサーをつかったIoT PoC [プレゼン時限定ページ]

  26. 26 プロトタイピング事例デモ ▪プロトタイピング事例のデモ 参加者のスマホセンサー情報が統合され、ダッシュボードに表示されます このくらいの規模のフローで、実現できています↑

  27. 27 今後 ▪Playground環境の今後 教育/研修、活用事例のさらなる充実 運用品質、スケール対応の向上、維持コスト削減 商用サービス移行への標準化 Node-REDでかんたんIoT、といっても「難しい」と言われる 導入障壁を下げたい →非ITエンジニアでも活用できるように BOXの24/365運用、高スケール対応のBOX提供などに

    チャレンジして、適用可能事例を増やしたい Playground環境でのプロトタイピングから 商用サービスへの移行をスムーズにするため 商用品質サーバでの再構築を標準化したい
  28. 28 ・本資料に掲載されている会社名、サービス/製品名は、一般的に各社の商標登録または商標です。 ・本資料に掲載されている内容、サービス/製品の価格、仕様、お問い合わせ先、 その他の情報は、資料作成時点の情報です。その後予告なしに変更となる場合があります。 ・本資料の作成には注意を払っておりますが、掲載された情報の内容の正確性については 一切保証しません。また、当資料に掲載された情報・資料を利用、使用、ダウンロードする などの行為に関連して生じたあらゆる損害等についても、理由の如何に関わらず、 発表者及び所属組織は一切責任を負いません。 本資料に関する免責 免責

  29. 29