回転式立体ディスプレイを作ろう①

3Dディスプレイ

今まで球体ディスプレイなど、いわゆる”2.5D”ディスプレイを作ってきたわけですが、やっと真の3次元ディスプレイ(Volumetric Display)を作れる公算ができました。
今回は本当に立体に見えるかの検証になります。

こういうの作りたいんだよってのはこちらを見て下さい↓

部品

64×64 LEDマトリクスディスプレイ

今回のディスプレイのメインになる部品。フルカラーLEDが密に並んでいるディスプレイで液晶よりもドット密度は低いですが、たくさん並べて大型のディスプレイにするために使用します。HUB75というディスプレイ規格で制御します。このHUB75はシンプルな通信ながら常に信号を送り続けないと表示が止まってしまうというもので、制御にクセがありますがその代わりリフレッシュレートが高いという特徴もあります。一昔前はp4~p6(LEDが4~6mm間隔で並んでいる)のが普通でしたが今回p2というものがあり、64個並んでいても一辺128mmという小ささ!
ちなみにこれは正確にはHUB75Eという規格で列指定のABCDピン(4bit)にEを加えて5bit(=32列)で制御するタイプのものです。(仕様表に1/32 Scanって書いてあるのがそれね)

2mmピッチsmd15151564x64ピクセルRGBLED屋内パネルマトリックス2 LED広告ディスプレイ画面pin2dmdと互換性があります - AliExpress 502
Smarter Shopping, Better Living! Aliexpress.com

ESP32マイコン

ある程度高性能でGPIOがたくさん(OUT:14個、IN:1個)あるやつが必要です。OUTの14ピンはLEDディスプレイ用で、INの1ピンは回転速度検出のためのホールセンサ用(今回は使いませんが)です。今回は家に転がっていたESP32-WROOM-32D搭載のSparkFun Thing Plusというマイコンボードを使用しましたがもっと安いやつがあると思います。

ESP32-WROOM-32D搭載 SparkFun Thing Plus
Espressif Systems社のESP32-WROOM-32Dモジュールを搭載し、強力なWiFiとBluetooth MCUを備えた開発プラットフォームThing Plusの新しいバージョンです。Featherボード互換で、Qwiic...

モーター

今回は実験も兼ねてブラシレスモーターを使いました。大きさの割に高いトルクと消費電力の小ささはありましたが、今回のはまだトルク不足だったので次回はもっと高トルクのものにしようと思います。

https://amzn.to/4eFD4Ak
Amazon.co.jp: 【ノーブランド品】/ 3A 5V BEC赤いワット30アンペア30aはsimonkファームウェアブラシレスESC : おもちゃ
Amazon.co.jp: 【ノーブランド品】/ 3A 5V BEC赤いワット30アンペア30aはsimonkファームウェアブラシレスESC : おもちゃ
Amazon.co.jp: KOZEEY 【ノーブランド品】ステアリング ギア テスター サーボ モータ テスター : 産業・研究開発用品
Amazon.co.jp: KOZEEY 【ノーブランド品】ステアリング ギア テスター サーボ モータ テスター : 産業・研究開発用品

フレーム

今回は実験なので剛性があって、簡単に組み立てできる20x20mmのアルミフレームを組み合わせて使用

Amazon | エスユウエス(SUS) SF-20・20 SF9-202 300mm 4本入 (アルミフレーム) | 棒
Amazon公式サイト| エスユウエス(SUS) SF-20・20 SF9-202 300mm 4本入 (アルミフレーム)を通販で早く安く。Amazonプライム会員ならアマゾン配送商品が送料無料。棒をお探しなら豊富な品ぞろえのAmazon....

無線送電モジュール

回転物に電力を送るため、市販の無線送電モジュールを使用します。ずっと回転させておかないならバッテリーでも良いと思いますが、回転部分が重くなるとブレやすくなります。

Amazon | 5V 1A/2A ワイヤレス電源モジュールワイヤレス充電器モジュール送受信機端子回路ボードモジュール diy 電話 (2A) | 基板 | 産業・研究開発用品 通販
5V 1A/2A ワイヤレス電源モジュールワイヤレス充電器モジュール送受信機端子回路ボードモジュール diy 電話 (2A)が基板ストアでいつでもお買い得。当日お急ぎ便対象商品は、当日お届け可能です。アマゾン配送商品は、通常配送無料(一部除...

組み立て

3Dプリンタで、部品を作ります。LEDマトリクスとモーター軸を直結させて、モーターはアルミフレームに固定します。回転軸がぶれないように上側もベアリングで保持します。

プログラム

Arduino IDEで書き込みます。LEDマトリクスの制御にはHUB75-LED-Matrixライブラリを使用しています。ESP32で使えるピンの配置などもあるので、ライブラリのデフォルトのピン設定からいくつかを変更して、きちんとデモサンプルが動くことを確認してから回転表示を試します。
本来はホールセンサで回転時間を測って、それに合わせてLEDの表示タイミングを変えるのですが、今回は簡略化して表示タイミングは固定し、モーターの速度を調整することにします。(delayMicroseconds(500)を入れているので、一列表示が0.5ms、一周240列なので、一周240×0.5=120ms=8.3回転/秒で回すと綺麗に表示できるはずです。)
表示する立体映像は立方体のフレームを計算で表示することにします。イメージとしては立方体を回転軸で積分する感じです。

LEDディスプレイ表示テスト

表示実験

回転数が同期できていないので立方体が回転してしまっていますが、十分3Dに見えます。

ちなみにLEDディスプレイを全点灯して回転するとこんな感じ↓これはこれで円柱が綺麗。

これから

とりあえずLEDディスプレイを回転させれば3Dに見えることが分かったし、LEDディスプレイのリフレッシュスピードも3Dディスプレイに耐えられるということが今回わかりました。

これからの計画としては、
・任意の3Dデータを表示する
・3Dデータを動画表示する
・RaspberryPiで実現可能かの実証(ESP32ではやや処理能力不足なので)
・モーターや構造の検討
・無線送電モジュールではなく、スリップリングに変更する(RaspberryPi使うと無線送電では電力不足なので)
・カッコいいデザイン(重要)

市販でVoxonってのが発表されてしまったので、個人でも(比較的安価に)作れるよ!ということと、純粋に3Dディスプレイを作ってみたいの思いでプロジェクトを進めていきます。

コメント

タイトルとURLをコピーしました