メインコンテンツまでスキップ

基本ノード

PlantPulse Edge カテゴリ以外に、バニラ Node-RED がデフォルトで提供するノードの中で、IIoT フローの核心となるものです。使用頻度の高い順に整理しています。


1. inject — トリガー / スケジューラー​

フローの開始点。ボタンで一度だけトリガーするか、一定の周期や時刻に自動トリガーします。

オプション説明
Repeat: intervalN秒/分/時間ごとに発火 (例: 1秒ごとにポーリング)
Repeat: interval between times特定の時間帯のみ発火 (例: 09–18時)
Repeat: at a specific time毎日決められた時刻 (例: 毎日 07:00)
Repeat: cron-likecrontab 形式 (例: 0 7 * * * — 毎日 07:00)
Inject once afterDeploy 直後に一度だけ発火させるか + 遅延時間

msg.payload と msg.topic も注入できるため、ノード一つが「スケジュール + 入力データ」の役割を同時に担います。


2. debug — サイドバーログ​

msg または msg.payload を右サイドバーの debug タブに出力します。出力対象を「全 msg オブジェクト」に変更すると、見えていなかったフィールドまで全て確認できるため、デバッグに必須です。


3. function — 自由な JavaScript​

JavaScript コードを記述します。msg を変形して return msg; すると、次のノードへ渡されます。

// 예: payload 가 숫자라면 100배 해서 출력
msg.payload = parseFloat(msg.payload) * 100;
return msg;

複数の出力に分岐させるには、ノード設定で Outputs: 2 などに増やし、配列を返却します return [a, b];。


4. change — フィールド設定/コピー/削除 (コードなし)​

msg.topic = "abc", msg.payload = msg.payload.value のような 簡単な 変換は、関数ノードを使わずに change 一回で完了します。set / change / move / delete の4つの動作が可能です。


5. switch — 条件分岐​

msg.payload または任意のフィールドを確認し、出力ポートを使い分けます。checking all rules または stop after first match オプションがあります。

┌─ ≥ 80 ─▶ Slack 알림
read ──▶ switch ─┤
└─ < 80 ─▶ 정상 라인

6. join — 複数メッセージの集約​

並列に動作する複数のノード(태그값 읽기 ×3 など)の結果を 一つの配列/オブジェクト にまとめます。mode manual, count N, key msg.topic。


7. delay — 遅延 / レートリミット​

  • Pause: N秒/分の間メッセージを保持 (例: アラーム後5分間は再送しない)
  • Rate Limit: 「秒間1件」のように処理速度を制限 — 外部 API ポーリングや MQTT 送信時の保護用

8. trigger — 状態/タイマー結合​

「メッセージが入れば開始メッセージを出し、N秒後に更新がなければ終了メッセージを出す」といったパターン — データ断線検知 用に頻繁に使用されます。


9. http request / http in / http response​

ノード用途
http request外部 REST API 呼び出し (例: 外部気象 API, 社内 ERP)
http in + http responseNode-RED 自体に新しい HTTP エンドポイントを作成 (例: /myreport POST 受信)

10. file / file in​

  • file (write/append): ディスクにファイルとして保存 (CSV ロギングなど)
  • file in (read): ファイル内容の読み取り

11. csv / json / xml​

文字列 ↔ オブジェクト変換。csv はヘッダーや区切り文字のオプションが豊富です。


12. template​

mustache 構文でテンプレートを出力します。メールや Slack メッセージ、レポート本文を作成する際に非常に便利です。

🔥 [경보] {{tag_id}} = {{value}}{{unit}} (한도 {{threshold}})

同じワークスペース内での「仮想ジャンプ」。ワイヤーが複雑に絡み合うのを整理する際に使用します。


14. catch / status / complete​

フローのどこかでエラーが発生した際に catch がキャッチし、ノードの状態(例: mqtt 接続됨/끊김)を status が通知します。運用の安定化に必須です。


次のステップ​