5分でI/O! 2個のラズベリー・パイを イーサネットでつなぐ基礎実験

第7章
防災,
防犯,
介護…カメラ&センサ ラピッド
電子工作
付きコンピュータを全室完備!
Part 6
5 分で I/O!
2 個のラズベリー・パイを
イーサネットでつなぐ基礎実験
桑野 雅彦
ブラウザで動く Node−RED の真骨頂は,LAN や
インターネットを経由して,遠く離れたコンピュー
タを操作できるところにあります.
本 章 で は, パ ソ コ ン か ら ラ ズ ベ リ ー・ パ イ の
LED を点灯 / 消灯させたり,ラズベリー・パイに付
けたスイッチの状態をパソコンから読み取ったりす
る方法について解説します(図 1).
〈編集部〉
LEDのON/
OFFを制御
スイッチの
状態を表示
Masahiko Kuwano
ネットワーク経由でデータ
のやりとりを行う
スイッチ
ラズベリ
ー・パイ
でも良い
LED
ON
OFF
LEDの指示
スイ
ON
OFF
LED
ッチ
スイッチの状態
LAN
LAN
Node − RED 同士は LAN 経由の
データのやりとりが簡単!
パソコン
ルータ
ラズベリー・パイ
● 通信方法が用意されているので面倒なし!
図 1 Node−RED が動いているパソコンとラズベリー・パイの
間を LAN で繋いで L チカをしてみる
パソコンと外部機器の通信方法に,古くから RS
双方向に通信できるので,ラズベリー・パイのスイッチの状態をパソコ
−232C があります.それに比べると LAN を使ってデ
ータをやり取りするのはいろいろと約束事が多く,ど
んなプログラミング言語を使っても,面倒極まりあり
ません.
ところが Node−RED はその面倒さが全くなく,単
ンで読み取ることもできる
純な GPIO アクセスと同じ感覚で「メッセージをソケ
ット・ノードに送る」
「ソケット・ノードから出力さ
れたメッセージを受け取る」というだけで簡単に
LAN 経由の通信を利用できます.
特別な通信アダプタも不要で,家や実験室内などは
はもちろん,通信相手を直接指定するグローバル IP
を持つことができれば,世界中のどこにあっても自由
にデータ通信ができます.LAN ならではの利点と言
えるでしょう.
Node−RED によって LAN の利用は非常に手軽にな
ります.マイコン工作も一段と活用範囲を広げられる
でしょう.
● Node−RED 同士は Websocket を使って通信する
Websocket
(単にソケットと呼ぶこともある)は,も
ともと Web サーバとブラウザの間で双方向のデータ
通信を行うことを主な目的とした通信規格です.
通常の Web ブラウズのとき,Web サーバとブラウ
ザの関係は一時的なものです.ブラウザがサーバにア
106
クセスしてデータ(HTML)を受け取り,受け取りが
終わったら接続を切り離します.
これに対してソケットは,1 回接続したら,そこに
固定した通信路ができたような状態を保ちます.これ
を利用すると,いつでも自由に双方向のデータ伝送が
行えます.
このソケットの仕組みは,Web サーバとブラウザ
の間だけでしか使えないものではありません.ソケッ
ト通信の仕組みを持った者同士の間で,手軽なデータ
伝送用に使うこともできます.
通信路は LAN を利用しているので,新たな通信イ
ンターフェース・アダプタや無線モジュールなどを用
意しなくても,既存の LAN を利用して接続できます.
● Node−RED には Websocket を使う仕組みが用意
されている
Node−RED には Websocket 入出力ノードが用意さ
れていています.Node−RED を Web サーバやクライ
アントとして使うだけでなく,Node−RED が動いて
いる装置同士をソケットで接続してデータのやり取り
ができます.
2016 年 6 月号