フルカラーLEDテープでイルミネーションを作ってみた

最近は、フルカラーLEDが安価に、簡単に扱えるようになってきました。

Worldsemi 深圳市华彩威科技有限公司の WS2812Bは、3線式のドライバIC内蔵フルカラーLEDです。

たくさんのLEDを3本の配線で数珠なぎできます。電源2本と、マイコンのデジタル出力1本で制御します。

AdafruitsからNeoPixelというライブラリが用意されており、Arduinoから簡単にプログラムできます。

このLEDフルカラーテープ WS2812B x 30灯/50Cm/防水チューブ付 を送料別1500円で頒布いたします。 頒布ご希望の方は、こちらの申し込み方法でお願いいたします

今回は、Arduino互換機から制御してみました。

LEDテープのDinピンをArduinoのD2ポートに、スライドボリュームを3つの中点をarduinoのA6/A4/A3ポートに、CDSをプルアップしたA5ポートに接続して、イルミネーションを表示しています。

ledillumination1s

なのぼ~どの基板を流用して、LEDテープコネクタ、スライダーを2つ追加しています。

Arduino部分は、ちびでぃ~のPro V1.1 (Mega8L 8MHz)と同じ構成です。

ソフトウエアはScratchのようなブロックプログラミングができるArdublockの最新版を使いました。

ブロックで作ったプログラムをアップロードすると、Arduinoのスケッチに変換/コンパイルされ、ボードにアップロードされます。

このバージョンでは、フルカラーLEDテープや並列プログラミングがサポートされており、今回のイルミネーションにぴったりです♪

Scratch2.0ベースのScratchbotでも、Arduino経由でフルカラーLEDテープを制御できます。

・フルカラーLEDを多数点灯すると遅くなる。

・ArduinoはMega328が必要で高価になる。

・動作中はパソコンつけっぱなしになる。

という事で今回は見送りましたが、Scratchでロボット制御に最適であり、近いうちに紹介したいと思います。

一方、ArdublockではプログラムはArduinoボード上で独立して動作しますので、パソコンはソフト開発の時だけ必要で、イルミネーションを点灯する夜中にずっとパソコンをつけておく必要はありません。

以下のプログラムで、LED1個をフルカラー点灯します。

setcolor1

フルカラーLEDブロックは、赤いAdafruitsブロックメニューにあります。

以下の順序でブロックを並べると、フルカラーLEDを点灯します。

・初期化ブロックで、Arduinoピン番号と最大のLED数 を設定

・色設定ブロックで、何番目か、LEDの赤緑青レベル(0~255) を設定

・明るさ設定ブロックで、明るさを設定

・転送ブロックで、LEDに点灯データを反映

このプログラムでは、3つのスライダーの値を赤/緑/青に割り当てています。

スライダー値は、0~1023まで変化するので、4で割って0~255の範囲にしています。

3つのスライダーで、256*256*256色のフルカラー点灯を確認できます。

このArdublockプログラムは、以下のArduinoスケッチに変換、コンパイル、ボードアップロードされます。

Ardublockの各ブロックが、arduinoスケッチの行に対応している事がわかります。

このようにブロック言語とテキスト言語を見渡せる事で、テキスト言語への橋渡しとして役立つと思われます。

ColorLEDsetColor1

このフルカラーLEDテープを使って、イルミネーションを作るワークショップをOtomoで開催します。

ワークショップでは、いくつかの基本的な光り方を試してから、自分だけのイルミネーションを作ります。

・LED1個で一色だけ光る/ つけたり消したり  / 2個を交互に光る / 5個でいろいろな光

・ピカピカ・ふわふわな光 / いろんな光り方を組合わせる /

・スライダー3個でフルカラー / 色と明るさを数字で制御? / レインボーカラー

・自分だけのイルミネーション製作と共有

__________________________________________________

Leave a comment