動的LED三角アート: Arduino UNOで作る45個RGB LEDディスプレイ
必要な部品と材料
| 部品 | 数量 | 備考 |
|---|---|---|
| APA-106 プログラマブルRGB LED | 45 | WS2812互換、単体タイプ |
| 22AWG 錫メッキ銅線 | 1巻 | 配線用 (裸線推奨) |
| Arduino UNO | 1 | |
| 合板 (正三角形、一辺12インチ、厚さ1/4インチ) | 1 | LED取り付けベース |
| 3Dプリントケース (任意) | 1 | STLファイル提供 |
必要な工具
- はんだごて
- グルーガン
- ヒートシンククリップ (LEDの熱保護用、推奨)
- ドリル (8mmビット)
プロジェクト概要
45個のAPA-106 RGB LEDを正三角形に配置し、Arduino UNO 1本のデータラインで制御するアートディスプレイです。Adafruit NeoPixelライブラリを使用し、明るさは最大255のうち30に抑えてUSB給電のみで動作可能にしています。過去の5×5×5 LEDキューブとサーボモーターアートの三角形デザインから着想を得た作品です。

ハードウェア構築
1. 基板への穴あけ

一辺12インチ (約30.5cm) の正三角形合板に、LED間隔1インチ (25.4mm) で8mmの穴を45個あけます。きつめのフィット感でLEDが固定されます。
2. LEDリード線の曲げ加工

APA-106の4本リード:
- 最長: GND
- 左から2番目: Data In
- 左から3番目: +5V
- 右端 (平らな側隣): Data Out
図のように曲げ、GNDリードのみ先端をさらに折り曲げて識別しやすくします。
3. 配線パターン (重要: ジグザグチェーン)

データライン (青) は蛇行します:
- 奇数行: 左→右へデータ流れる
- 偶数行: 右→左へデータ流れる
これにより電源レールも行ごとに上下逆転します。推奨: GNDレールを右側、+5Vレールを左側に配置すると、データ線が電源レールを跨ぐ必要がなくなり配線が綺麗になります (筆者は逆で苦労しました)。



4. Arduino取り付けとケース

小さなスペーサーでUNOを基板に固定し、ホットグルーで補強。3Dプリントケース (STL提供) または合板製ケースに収納します。
ソフトウェア設計
Adafruit NeoPixelライブラリの setPixelColor(index, color) と show() を基盤に、独自のカラーパレット (0=黒, 1-42=虹色, 43=白) とLED番号管理システムを実装。
LED番号割り当て
配線はジグザグだが、論理番号は上段から左→右へ 0〜44 で管理。独自の setPixelColor ラッパーで変換しています。
テーブル駆動アニメーション
ほぼ全アニメーションはルックアップテーブルで制御:
- 頂点からのスイープテーブル
- 他2頂点への変換テーブル
- 外側/中間/内側の三角形領域テーブル
すべてプログラムメモリ (PROGMEM) に格納し、RAMを節約。全26種類のアニメーション、約5分のショーを実現しています。
回転ルーチン rotation() の威力
外側24個、中間15個、内側6個のLED群。最大公約数120ステップで360°回転可能。開始パターン、回転方向、速度を変えるだけで多彩なエフェクトを生成できます。
コード構成 (4タブ)
- 宣言、テーブル、
setup() - メインループ (アニメーション呼び出しリスト)
- 各アニメーション実装
- 汎用サブルーチン
ダウンロード
テストルーチン、26アニメーションショー、NeoPixelライブラリ使用説明を含むZIPファイルを提供しています。回路図とケースSTLも同梱。
製造プロセス
- Walabasquiat:Walabot、Raspberry Pi、Androidで実現するインタラクティブ生成アート
- 横形フライス加工の習得:生産効率をブースト
- 動力ポンプと容積式ポンプの違い:原理・性能・選定基準を解説
- 直角三角形の三角法:重要概念と公式
- 三角法マスター:正弦定理と余弦定理で任意の三角形を解く
- プログラマブルロジックコントローラ(PLC):産業システムのための現代的デジタル制御
- G.AL® C330 Dynamic:精密用途向け高強度アルミニウム合金
- G.AL® C210 Dynamic:優れた均質性と低応力のプレミアム中強度アルミニウム板
- C言語 動的メモリ確保: malloc, calloc, realloc, free をマスターする
- C++動的メモリ管理完全解説:スタックとヒープ、new/delete
- FPGA探求: アプリケーション、メリット、VHDLでの始め方