テープライト
LEDテープライトとは、細長いテープ状の基板にLEDが並んで配置された照明。柔軟性があり、カットや曲げが可能なため、家具、天井、看板、車などさまざまな場所の装飾や間接照明に使われる。電源はUSBやACアダプター、DC12V/24Vなどがあり、調光やRGBカラー変更が可能なタイプがある。

DMXとは

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

ノード説明
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を点灯させることができた。
出力結果




その他