構成
- マイコン部 マイコンにはM5StampS3を使用し、球体内部にバッテリーと共に収納。 バッテリーはCR123Ax2から出た7.4VをDCDCコンバータ TPS63020 で5V化して入力。
- 表示部
- 表示にはWS2812を使用して一面8x8=64個のLEDマトリクスを6面(合計64x6=384個)を今回はすべてシリアルで接続しました。
- センサ部 センサにはBNO055を使用し、9軸のデータを得ています。 このセンサ値をもとに毎フレームすべてのLEDを回転させます。最初は画像を回転させようと思っていたのですが、入力画像が正距円筒図法といういわゆるパノラマ画像になっているため、非線形な変形になってしまうのでした。このあたりは苦労した点ですね。 http://qcganime.web.fc2.com/BLENDER/Misc01.html 実はBNO08xも試してみたんですが、
https://learn.adafruit.com/adafruit-9-dof-orientation-imu-fusion-breakout-bno085/arduino ライブラリの特性上取得したいデータを切り替えることができず、こちらに落ち着きました。
- プログラム部 今回M5StampにはSDカードなどが無いため画像はメモリに直書きです。このおかげでメモリを圧迫していて、どうにかしたいところですね。 画像とはいっても今回収納しているのは色ではなくマスク(0 or 1)で上下半分としているので、マスクが1のピクセル(下半分)は色をグラデーションが変えたりいろいろやってます。 すべてのLEDの3次元上の空間座標を計算し、その座標値を画像のUVマップに転写したときにそこのピクセルが何色なのか、を抽出してLEDで表示するという方式です。
私のこの作品➡ https://protopedia.net/prototype/4036 とコラボしてみたい感じの作品です‼
POVディスプレイを使ったときの問題が何なのかによりますが、もしかしたら相性はいいかもです・・・
POVの問題は問題が起きた時にPOVなのか表示なのかわからなくなりそうだったので、切り分けた感じですね
180面体の記事は見ています。いいですね!応援してます!
https://youtu.be/XmYEYDNQFKM?feature=shared