Intern

Node-REDでテープライトを光らせる

テープライト

DMXとは

DMX(Digital Multiplex)は、舞台照明や演出機器を制御するための通信プロトコル。DMX512が最も一般的で、最大512のチャンネルを使って、ライトの明るさや色、動きなどをコントロールできる。主にコンサート、劇場、イベント会場などで使用される。今回は、上記のLeDMX4 MAXを使用した。LeDMX4 MAX

Node-RED

赤色LEDの、照度、個数のノード配置

ノード説明

Red_light : 赤色LEDの照度

Red_grain : 赤色LEDの点灯個数

Red Light : 赤色LED全体の構造

sACNノード : DMX接続 テープライトのサーバ、IP設定

ノード設定

buttonノード

・ダッシュボードにボタンを作成

・ダッシュボードに表示したいサイズの設定

text inputノード

・ダッシュボードに表示したいサイズの設定

・ラベルを自由に入力

buttonノードはダッシュボード上の実行のボタン

text inputノードはダッシュボード上の照度や点灯させるLEDの個数を入力する欄

上記は、照度表示と赤色LEDの照度入力欄についてのノードを書いたが、同様に(LEDの点灯)個数表示と色の項目を選ぶためのボタン(RGBWなど)、照度や個数の入力欄を作成する。

functionノード

処理の概要
const ran = flow.get(“number”);
→ flow コンテキストから配列 ran(LEDデータ)を取得
var light = flow.get(“Red_light”);
→ Red_light の値を取得(赤色の明るさを指定)
var grain = flow.get(“Red_grain”);
→ Red_grain の値を取得(LEDの個数を指定)
for (let i = 0; i < grain; i++) { ran.push(light, 0, 0, 0); }
→ ran に (light, 0, 0, 0) を grain 回追加(赤色のLEDを grain 個分設定)
→ flow.set(“number”, ran); で ran を保存(ループ内で毎回保存)
node.send({ topic: “2/1”, payload: ran })
→ 更新された ran を “2/1” トピックで送信

ノード設定(消灯処理)

消灯処理のノード配置

sACNノード

DMXの設定 : LeDMX4 MAXにてserverのIPアドレス値を調べる。

DOWNLOADS IPアドレスを調べるためのアプリケーションをインストール

functionノード

処理の概要
flow.get(“number”); で保存された配列 ran を取得
ran.push(0, 0, 0); を255回繰り返し、配列を更新
flow.set(“number”, ran); で再保存
node.send({ topic: “2/1”, payload: ran });でDMXに送信
このコードは 255個のLEDをすべて消灯(黒色)にするため

Node-REDのダッシュボード

Node-REDのDashboardから外部リンクへ

消灯ボタン、照度、個数の表示
赤、緑、青、白、黄、紫、シアン、ピンク それぞれのボタン
○○_light(○○色の照度)、○○_grain(○○色の点灯個数) 入力欄(今回は照度255,個数128個)

LEDの照度と点灯させたい個数をダッシュボード上に各々に入力して、光らせたい色のボタン(桃色のボタン)を押下すると、それに応じてLEDを点灯させることができた。

出力結果

赤色 R
緑色 G
青色 B
黄色

その他