概要
- 自然界のパターン をコードで再現し、物理オブジェクトに変換した体験談
- Phyllotaxis (ひまわりなどの螺旋模様)をLEDマトリクスに応用
- Voronoi分割と3Dプリント で独自の形状を作成
- オーディオリアクティブ機能 やPCB設計への発展
- 今後の 改良案と課題 についての展望
自然界のパターンをコードで再現
- Phyllotaxis (フィロタキシス)は、ひまわりや多肉植物の中心部に見られる 拡大する二重螺旋 パターン
- 黄金比 を使い、各点を円周上で回転・配置することで、 自然な点群 を生成
- Voronoi分割 を適用することで、 種子のような分割形状 を作成
- Processing で点群データをスケッチし、 物理形状データ としてエクスポート
物理オブジェクトへの変換
- CadQuery (Pythonライブラリ)を使い、 各セルのジオメトリ を生成
- 各セルの中心に LEDを配置するための穴 を作成
- 合計形状を4分割 し、3Dプリンタのベッドサイズに合わせて出力
- FreeCAD で後処理し、 ネジ穴や薄型フェイスプレート を追加
- 和紙のような半透明紙 で光を拡散し、オーガニックな印象を演出
LEDマトリクスの実装と制御
- 89個のLED をはんだ付けし、 STM32 Blackpill ボードで制御
- SPI経由のNeopixelドライバ を自作
- LEDの位置情報 をLUT(ルックアップテーブル)として保持し、 シェーダー風のパターン生成 を実現
- ラジアルパターン や パルス状の輝度変調 など、独自のアニメーションを実装
オーディオリアクティブ機能の追加
- I2Sデジタルマイク(INMP441) を接続し、 リアルタイム音声解析
- ARM CMSISライブラリ でFFTやオートゲイン制御を実装
- 周波数帯域ごとのエネルギー分析 で、音に合わせてLEDが動的に反応
- Jon Hopkinsの楽曲 などで、 生きているような動き を実現
エンクロージャーと基板設計
- 竹製カッティングボード を円形に加工し、 有機的な質感 を強調
- 初期はパフボード で配線しノイズ問題が発生
- PCB設計に挑戦 し、 Blackpill、マイク、ロジックレベルシフタ を一体化
- 組み立てやメンテナンス性 が大幅に向上
第二世代への発展
- New Year’s Party で展示し、好評を得る
- 5分割PCB構成 に設計変更し、 手間と堅牢性 を向上
- Recurse Center でのリトリートで、 ホットエアステーション を使いはんだ付けを効率化
- ESP32 に変更し、 Wi-Fi対応・Rustでファームウェア再構築
- WebAssemblyバックエンド で、 Web経由のスケッチアップロード を実現
今後の改良案と課題
- 手はんだしやすいLED の選定や PCBアセンブリ への移行検討
- アクリルカバー を追加し、 紙の保護と耐久性向上 を模索
- 磁石によるフェイスプレート着脱 など、新しいアタッチ方法の実験
- 制作工程の簡略化と量産性 の改善が今後の課題
- Version 3 に向けて、さらなる実験と改良への意欲
すごくクールだね。PCBの5重対称性を使ってボードの余裕を活かしてるのが特にいい感じ。貧乏なホビイストが早いうちに覚えるトリックは、SMT部品用のパッドをちょっと大きめに作って、はんだを吸い取る場所を確保することなんだ。ネオピクセル(5050 LED)は、パッドがパッケージの側面まで伸びてるから手はんだ付けしやすいけど、ちょっと練習すればQFNもできるよ。大きなビアを使って中央のパッドにアクセスする感じで。