🎯 Node-RED 初心者向け図解ガイド

ビジュアルプログラミングで始めるIoT開発

💡 Node-REDとは?

Node-REDは、ブラウザ上で動作するビジュアルプログラミングツールです。 「ノード」と呼ばれる部品を線でつなぐだけで、複雑なプログラムを簡単に作成できます。

🖱️
ドラッグ&ドロップ

マウス操作だけでプログラミング。コードを書く必要はほとんどありません。

🔌
IoTに最適

センサーやデバイスとの連携が簡単。Raspberry Piとの相性も抜群です。

🌐
API連携

WebサービスやクラウドAPIとの接続も簡単に実現できます。

リアルタイム

変更したらすぐにデプロイ。動作確認がスピーディに行えます。

🖥️ エディタ画面の構成

Node-REDのエディタは主に4つのエリアで構成されています。実際の画面を見てみましょう。

Node-REDエディタ画面

画面構成の詳細説明

① パレット(左側)

使用可能なノードが一覧表示されます。

  • 検索バー: ノードを名前で検索
  • 共通カテゴリ: inject(入力)、debug(デバッグ)など
  • 機能カテゴリ: function(関数)、switch(分岐)など
  • 色分け: ノードの種類ごとに色が違う

② ワークスペース(中央)

フローを作成するメインの作業エリアです。

  • グリッド背景: ノードを整列しやすい
  • タブ表示: 複数のフローを切り替え可能
  • ドラッグ&ドロップ: パレットからノードを配置
  • 接続: ノード間を線でつなぐ

③ デバッグパネル(右側)

debugノードの出力を表示するエリアです。

  • リアルタイム表示: データの流れを確認
  • フィルター機能: 特定のフローのみ表示
  • メッセージ詳細: JSONデータの構造を確認
  • クリアボタン: 表示内容をリセット

④ デプロイボタン(右上)

作成したフローを実行するためのボタンです。

  • デプロイ: 変更を反映して実行開始
  • 変更検知: 未保存の変更があると色が変わる
  • 部分デプロイ: 変更箇所のみ更新も可能
  • ショートカット: Ctrl+D(Windows)/ Cmd+D(Mac)

🔄 基本的なフローの作り方

1

ノードを配置

パレットからドラッグ

2

ノードを接続

線でつなぐ

3

設定を編集

ダブルクリック

4

デプロイ

実行開始!

最もシンプルなフロー例

inject
(入力)
function
(処理)
debug
(出力)

入力 → 処理 → 出力 の流れでデータが流れます

🧩 主なノードの種類

ノードは機能によって色分けされています。

入力系(グレー)

inject, http in, mqtt in

処理系(青)

function, change, switch

出力系(緑)

debug, http response

変換系(オレンジ)

json, csv, template

📦 メッセージ(msg)オブジェクト

Node-REDでは、ノード間を「msg」というオブジェクトがデータを運びます。 郵便物のようなイメージです。

msg オブジェクトの構造
{
  payload: "データ本体",
  topic: "トピック名",
  _msgid: "一意のID"
}

💡 ポイント

  • msg.payload が最も重要
  • 自由にプロパティを追加可能
  • debugノードで中身を確認

🚀 Node-REDの活用例

🌡️ センサーデータ収集

🌡️
温度センサー
🔴
Node-RED
📊
ダッシュボード
  • 🌡️ Raspberry Piで温湿度を取得
  • ☁️ AWS IoT Core や HTTP API への送信
  • 📈 リアルタイムダッシュボード表示
  • 🔔 しきい値を超えたら通知(LINE、Slackなど)

🏭 工場の設備監視

⚙️
PLC/設備
🔴
Node-RED
📱
管理画面
  • ⚙️ Modbus/OPC-UAでデータ取得
  • 📊 稼働状況のリアルタイム監視
  • ⚠️ 異常検知とアラート通知
  • 📝 データのログ記録

まとめ

Node-REDの3つの強み:

  • 視覚的で直感的 - コードを書かずに開発できる
  • 🚀 すぐに試せる - デプロイが瞬時、デバッグも簡単
  • 🔌 豊富な連携 - IoTデバイスからクラウドまで幅広く対応
📚 全ガイド一覧へ

📚 参考リンク:

Node-RED日本ユーザ会

🏠