JH1LHVの雑記帳

和文電信好きなアマチュア無線家の雑記帳

スポンサーリンク

今月の「日経Linux」の記事 Node-RED を試してみた

今、今月の「日経 Linux」の記事で遊んでいたので、

忘れないように備忘録です。

 

詳しくは雑誌をご覧ください。(P.11)

 

「日経Linux」に載っていた Node-RED で Lチカ して遊ぶ

IoT アプリ開発ツールの「Node-RED」で、Raspberry Pi の GPIO を制御して遊んでみました。

 

Node-RED は Raspbian の最新バージョン「RASPBIAN JESSIE」にデフォルトで入っています。

f:id:JH1LHV:20160116191001j:plain

メニューのプログラミングから「Node-RED」を起動します。

(私は Windows から VNC で Raspberry Pi にリモート接続しています。)

 

f:id:JH1LHV:20160116191501j:plain

Node-RED が起動するので、

あとは Windows の Web ブラウザ でアプリ開発画面を開きます。

(http://ラズパイのIP:1880/)

 

f:id:JH1LHV:20160116192315j:plain

ブラウザの左側ペインにはノードのアイコンがずらり。

プログラムはこのノードをドラック&ドロップすることで作成していきます。

(Web ベースのツールです。)

 

f:id:JH1LHV:20160116192642j:plain

Raspberry Pi の GPIO を操作するために必要な「ノード」も最初から用意されています。

 

f:id:JH1LHV:20160116192900j:plain

Lチカするために、GPIO を ON/OFF してみたいと思います。

  1. inject node
  2. function node
  3. rpi-gpio out node
  4. debug node

わたしはこの4つのノードを使いました。

(雑誌では debug node が無い3つのノードで説明されています。)

 

それぞれのノードの設定

ノードをダブルクリックして設定していきます。

 

(inject node)

f:id:JH1LHV:20160116193526j:plain

Lチカのインターバルを1秒に設定します。

 

(function node)

f:id:JH1LHV:20160116193752j:plain

「0」と「1」を交互に繰り返すプログラムを JavaScript で記述します。

(特に意味はありませんが、わたしは雑誌のコードは使いませんでした。)

 

(rpi-gpio out node)

f:id:JH1LHV:20160116193924j:plain

LED は GPIO21(pin 40)に接続しました。

配線はよくある LED を取り付けるものなのでここでは省略します。

 

実行

ノードの設定ができたら、画面右上の「Deploy」ボタンをクリックします。

 

f:id:JH1LHV:20160116195928j:plain f:id:JH1LHV:20160116195931j:plain

Lチカ成功です。

 

この Node-RED を使って効果的にプログラムを作成するには、

まず、画面左側にあるノードが何をするものなのか・・・これをキチンと知る必要があります。

 

この分類分けされたノードの動作さえ把握できれば、

あとは目的とするプログラムをイメージしながらノードを配置して、

必要に応じて関数に JavaScript でコードを記述するだけ。

 

画面上には関係付けられたノードが並ぶだけなので、

フローチャートを見るようにプログラムの全体像も把握できます。

 

ドラック&ドロップしながら GPIO も制御できるので、

特に難しさを感じることなく直感的な操作だけで、動きのあるプログラムが作成できるようになります。

ということで、今後のためにも学ぶ価値は十分にありそうです。 

 

 

この Node-RED でハムらしいプログラムが作れたら・・・

・・・でも、何もアイデアが浮かばない。。。