Node-REDとは
一言でいうと、Node-REDはプログラミングが簡単にできるツールです。ビジュアルプログラミングの一種で、視覚的にわかりやすくなっています。
▼百聞は一見に如かず。画面はこんな感じです。ブラウザで編集できます。
様々な機能をもった「ノード」を線で繋ぐようにしてプログラムします。種類が豊富で、サードパーティー製のものが充実しています。HTTP通信、MQTT通信、ファイル出力、LINE API、Googleスプレッドシートなどなど。
プログラミングの最大の関門は、環境構築だと思います。「enebular」というサービスを利用すると、すでに用意された環境でNode-REDを試すことができます。基本的に無料です。
▼enebularのページはこちら
▼enebularで起動したフローの画面はこんな感じ。
もちろん、ご自身のPCにNode-REDをインストールすることもできます。
▼こちらにインストール方法が書かれたGetting Startedのページがあります。
https://nodered.jp/docs/getting-started
▼私はよくRaspberry Pi 400にインストールしたNode-REDで実行しています。
『はじめてのNode-RED』
これからNode-REDを使ってみたい!という方にお勧めの本です。基本的な事項から、活用事例まで紹介されています。
Node-REDはIoTに強く、AzureやAWS、Bluemixとの連携、データベースの構築などもできます。その他、LINEやTwitterを活用した事例も紹介されています。
簡単に始めるなら、先述したenebularで試すのがお勧めです。
『はじめてのNode-RED MCU Edition』
2023年4月に出版された書籍です。
サポートページにて、バージョンアップデート後の環境構築について記載されています!
これから環境を構築する際はご確認ください。
はじめてのNode-RED MCU Edition ビジュアルプログラミングでマイコンを動かそう! (kohgakusha.co.jp)
※バージョンのアップデートに合わせて、補足書も出版されています。私も執筆させて頂きました。
2023/5/20版:https://techbookfest.org/product/b3T2EQ7Sw4BGzjwvv1ak1K?productVariantID=6KyS0CyiTvYmyBZDtLb4Uh
2023/11/11版:https://techbookfest.org/product/wwADMShyx2RuB9zjnrUaz0?productVariantID=6v5hDHmdjF9Qv0t8H2KgUj
2024/5/12版:https://techbookfest.org/product/46zXPBxGAEdcF5zcxK5MD1?productVariantID=14UkjETKEr6L0Y1PvCdV66
Node-RED MCUというプラグインを使うことで、Node-REDで作成したプログラムをマイコンに書き込むことができます。マイコン用のノードが用意されています。
元々Web系に強かったNode-REDが、マイコンというハードの領域まで広がってきたという素晴らしい技術です。IoTにピッタリという感じです。
▼実際のノードはこんな感じ。センサーの値を取得しつつ、Lチカをしつつという、マルチスレッド的な処理も可能です。
特にESP系のマイコンに対応していて、M5Stackも使えます。M5Stackは電子部品がすでに詰め込まれているので、電子工作初心者の方でもプログラミングを楽しむことができます。
▼タッチパネルのフローはこんな感じ。ノードを並べるだけで、簡単にプログラムできます。
▼ちなみに、Node-RED MCUの元となっているModdable SDKについては、数年前に書籍が出ています。著者はModdableの代表の方です。Moddable SDKはスタックチャンというコミュニケーションロボットにも使われています。
Node-RED MCUの実行例
▼Makerでもらった、M5Stackのネコミミを光らせています。Node-RED MCUの、Neo Pixel用のノードを使っています。
▼こちらはMQTT通信を使ってネコミミを光らせています。データが一度外部のMQTTブローカーに送られています。
▼こちらはNode-RED MCUで書き込んだ、text inputノードのダッシュボードでの画面操作です。M5Stack CORE2はタッチディスプレイなので、相性が良いですね。
▼Protopediaにも投稿しています。