Node-REDをはじめてつかってみる

Web

この記事の内容

この記事では、以下について解説します。

  • Node-REDの概要
  • Node-REDの環境構築
  • Node-REDの要素
  • Node-REDの簡単な使い方

この記事をみて、Node-REDを使いたいと思っていただけると幸いです。

Node-REDの概要

NodeREDはNode.js上で動作する、アプリケーションです。

OSSで公開されており、アプリケーションでブロック(ノード)をブラウザ上でつなぎ合わせたり、プロパティを設定することにより、プログラミングを行うことができます。

これにより、ローコードで作成することができます。Scratchと似てます。

Node-REDの環境構築

Node-REDの環境構築方法は簡単で、Node.jsをインストールし、npmでNode-REDをインストールするのが基本的な形になります。

Docker上で動作させたり、ラズパイで動作させたりできます。

詳しくは以下の公式ページを見れば構築できるかと思います。

Getting Started : Node-RED日本ユーザ会

Node-REDの要素

ここでは、Node-REDの重要な要素を解説します。

ノード

ノードは後述するフローに配置できる、ブロック要素です。

ノードは基本的に1つの入力ポートと、ノードに応じて複数の出力ポートを持ちます。

例えば、injectノードは手動もしくは一定間隔でメッセージをフローに流すことができたり、debugノードでは受け取ったメッセージをデバッグタブに表示することができます。

 

各ノードはワイヤーでつなぎ、どのノードからどのノードへメッセージを流すのかを指定します。

 

また、Node-REDのノードは、JavaScriptで自作ノードを作成することもできます。

フロー

フローは、ノードをつなげた一つの単位を言います。

フロータブには複数のフローを配置することができます。

メッセージ

メッセージはノード間で受け渡されるデータです。 メッセージはJavaScriptオブジェクトで、任意のプロパティセットを保持することができます。 msgで参照することができ、もっともよく使うのは、msg.payloadです。

Node-REDの簡単な使い方

ここでは、デバッグタブにHello Worldを出力する単純なフローを作成して、実行する方法を紹介します。

 

まず、以下の様にノード配置し、ワイヤーで配線します。

※ 白のノードは、コメントで配置するノードの種類を記載してます(配置しなくても大丈夫です)

 

templateノードをダブルクリックして、以下の様にメッセージを設定し、完了ボタンを押下します。

画面右上の、デプロイボタンを押下して、Node-REDサーバにデプロイします。

これで、準備は整いましたので、injectノードの左端のボタンを押すと、手動実行することができます。

出力した結果が、デバッグタブに表示されます。

ここでは、templateノードに設定した、メッセージがデバッグタブに表示されていることがわかります。

基本的な使い方は以上です。

さいごに

Node-REDを使うことで、ローコード、コーディングレスでプログラムを作成することができます。

TCPの通信や、HTTPのエンドポイントの作成などもできますので、テスト用のプログラムを作ったりできます。

また、ラズパイでGPIOを制御することもできるため、LEDの制御やサーボの制御などもNode-REDを使ってできます。

また、GUIを作成することもできるので、IoTの見える化に使うなど、用途は様々です。

今後、Node-REDについての記事を追加していきます。

コメント