PikaPikaLight

主に光モノ工作の忘備録

立方体万華鏡 CUMOS をガラスミラーで作ってみた

初めに

立方体万華鏡 CUMOSに関してはまずこちらの記事を参照ください。 pikapikalight.hatenadiary.com この記事では100円ショップのアクリルミラーを6枚使用して作成していますが、ちょっとした問題があります。それは、
・100円ショップでこのアクリルミラーを6枚も置いてないことが多い。
・6枚同時に買い占める事の若干の罪悪感と気恥ずかしさ。
・裏側に貼ってあるマグネットテープを剥がすのが何気に面倒(傷つけないよう注意してやらないといけない

これらの問題から、何か他にいい素材はないかと街を練り歩いていたところ、見つけました。

材料

CAINZのウォールミラー スクエアー4枚入り 398円
www.cainz.com f:id:PikaPikaLight:20210617204009j:plain サイズ 縦150×横150×厚み2mm
6面必要なので、これを最低2個は購入する必要あります。この際、3個買って3×4=12枚で2台分確保することをお勧めします。 値段も1枚あたり100円だし、4枚セットなので3個くらい買っても罪悪感なしです。在庫も豊富と思われます。

ガラスを切る

立方体万華鏡はのぞき穴が必要です。アクリルミラーの場合は角をカッターでカットしましたが、このミラーはガラスなので簡単にはいきません。ガラスをカットするという難易度の高い工作が必要です。
ガラスを切るために必須の工具がその名もガラスカッターです。普通にホームセンターで売ってます。もちろんCAINZでも。
f:id:PikaPikaLight:20210617201920j:plain 一番安いの買いました。1000円弱くらい。 いいやつはオイル式らしいのですが、これは単なるカッターです。
このカッターでガラスに線傷をつけてガラスを割ります。怖いので新聞紙に厳重にくるんで割りました。ドキドキです。 2枚はなんとかうまく割れましたが、3枚目で失敗しました。 f:id:PikaPikaLight:20210617203205j:plain 説明書きをよく読むと、傷をつけるのは一回だけで、何回もこすってはいけませんと書いてあります。これを完全に見落としていて念入りに何回も傷つけていたら、、、割れました。説明書はちゃんと読まないとだめです。
説明書に従って1回だけ傷をつけます。非常に薄い傷です。こんなので割れるのかと疑心暗鬼で新聞にくるんで割ってみると、ちゃんと割れました。

ガラスカッターの使い方については検索すれば情報豊富にありますのでご確認することをお勧めします^^;

割ったところはのぞき穴になるのでテープを貼って厳重に防御します。 f:id:PikaPikaLight:20210617203855j:plain

模様を作る

アクリルミラーでやったのと同じようにガラスミラーでも裏側にカッターで線傷をつけることで模様を刻むことができます。 f:id:PikaPikaLight:20210617205004j:plain この傷にマジック等で色を付ければ通常のCUMOS完成です。

LEDでピカピカさせる

前回作成時は箱に直接LEDテープを貼りつけました。 f:id:PikaPikaLight:20210617205602j:plain この方法はLEDテープをカットしてワイヤーをはんだ付けするという面倒な作業が必要です。 今回は半田付けを極力しない方法を考えてみました。

方法その1

段ボールで3面を作って、そこにLEDテープをらせん状に貼りつけてみました。

方法その2

LEDマトリクスボードを購入しました。8x8のやつを3枚。それを段ボールに貼りつけます。 f:id:PikaPikaLight:20210617211206j:plain そこに箱の乗っけることでピカピカシステム完成です。 f:id:PikaPikaLight:20210617211227j:plain pikapikalight.hatenadiary.com f:id:PikaPikaLight:20210617213747j:plain

LEDテープで光るフラワーを作ってみた

初めに

GeekMomProjectsさんのとても素敵な作品を見つけました。

LEDテープにこんな使い方があったのかと感動しました。
作り方をYouTubeで解説したものも載せてくれています。アクリルをレーザーカッターで加工して作っているようです。 レーザーカッターはいずれ挑戦してみたい工具ですが、まずは手作りで再現してみました。

材料

LEDテープとマイコン以外は100円ショップで入手できるものを使います。 今回全てダイソーで買えるものを使用しました。
・すっきり書類収納ファイル(A4)
・PPシート乳白色 両面光沢タイプ
・EVAクラフトボード A3サイズ 厚さ5㎜
・両面テープ
f:id:PikaPikaLight:20210613165640p:plain

LEDテープは毎度おなじみWS2812BのテープでLEDの間隔が広いものを使用します。 マイコンM5AtomLite。電源は100円ショップの電池式USB充電器を使用しました。

作成工程

まずLEDテープを箱の大きさに合わせて形を作り、必要分だけテープをカットします。今回は16個のLEDを使いました。
セロテープを使ってLEDテープを貼り合わせ形を整えます。 f:id:PikaPikaLight:20210613170530j:plain 葉っぱや花びらはクラフトボードをカットして作りました。このクラフトボードはスポンジのような柔らかい素材で曲げることが可能で、厚さ5㎜あるので遮光性も十分でした。
これを直接、書類ファイルに貼りつけていってもいいのですが、今回はPPシートに貼っていくことにしました。ファイルだけでは光の拡散が足りないかなと思ったことと、うまくいったら別のカッコいい額縁に入れなおすこともできるなと思いまして。
PPシートをファイルのサイズにカットし、それにクラフトボードを両面テープを使って貼りつけていきます。 f:id:PikaPikaLight:20210613171148j:plain やっていく中で問題が発生。全部のLEDを活かしたかったのに、花の付け根のところのLEDがスペース的に葉っぱをつけられない。諦めてそこのLEDは使わないことにしました。ソフト的にそこのLED点けないことは可能ですが、念のため黒テープで巻いてLED完全に隠しました。 f:id:PikaPikaLight:20210613172241j:plain

プログラム

M5Atomを使ったのでFastLEDライブラリを使って点灯パターンをプログラムしました。まずは単純に花の部分のみ虹色に変化するパターンにしました。
コードは雑に作ったので載せるのはやめておきます。もし、リクエストあればキレイにして載せたいと思います。

完成

パパっと作った割にはそれっぽく出来ました。光量もまぁまぁで明るいところにおいても見えました。 f:id:PikaPikaLight:20210613173525p:plain

書類ファイルに収めたのでカバンで持ち運びすることも簡単です。 f:id:PikaPikaLight:20210613174407j:plain

動画

感想

GeekMomProjectsさんの作品をなんのひねりもなく真似して作ってみました。
真似とはいえ、材料は簡単に手に入るものを使って、なるべく簡単に作るためにはどうしたらいいかを考えての工作です。
「こんなのこうすればできる」と頭だけで考えることと、実際に手を動かして作ってみることは全然違います。
頭の中では両面テープを5mm幅にカットすることも一瞬で何の乱れなくできますが、実際に5mm幅にカットしてみるとその難しさと面倒くささに気付きます。こういった経験の積み重ねが想像力を鍛えていくのだと、改めて思った、いい工作でした。

立方体万華鏡を3D CADでデザインしてみた

f:id:PikaPikaLight:20210530194351p:plain

はじめに

立方体万華鏡の説明と作り方はこちらの過去記事を参照ください。 pikapikalight.hatenadiary.com

違う模様のものを作りたいと思ったのですが、模様は鏡の裏面を削ることで作るので簡単に試すことができません。 そこで3D CADを使って簡単にシミュレーションすることを考えました。

3D CAD

今回使用したのはRSのDesignSpark Mechanicalです。 www.rs-online.com 3D CADに詳しいわけではないですが、このCADは自分が使ってるごく普通のノートPCでも軽々動いて、オペレーションも直感的なので愛用しています。

ポイント

DesignSpark Mechanicalの基本的な操作方法はクイックガイドに従って練習すれば簡単に習得できると思います。
立方体万華鏡をデザインするにあたってのポイントのみ解説します。

正方形の面に図柄を書く

f:id:PikaPikaLight:20210530200935p:plain

面をコピーして3面合わせる

3Dモードにすると書いた図柄は一つの面(Surface)になります。これをコピーして実際の配置に合わせます。 f:id:PikaPikaLight:20210530202741p:plain

3つの面を1つのコンポーネントにする

3つの面を選択して右クリック→新規コンポーネントに移動 とすると1つのコンポーネントとして扱うことができます。 f:id:PikaPikaLight:20210530203043p:plain こうすることで簡単にコピーできるようになります。

コンポーネントをコピーして1ブロックを作成する

コピーして移動して回転してを繰り返してこのような図形を作成します。 f:id:PikaPikaLight:20210530203720p:plain

コンポーネント8個をコンポーネントにしてさらにコピー

複数のコンポーネントをさらに1つのコンポーネントにすることができます。 f:id:PikaPikaLight:20210530204202p:plain
これをコピーして移動してを繰り返してこのようにします。 f:id:PikaPikaLight:20210530204404p:plain
これをCAD上でグリングリンすることで実際の万華鏡をシミュレーションすることができます。

新しいデザインを考える

CADを使うことでデザインをシミュレーションできるようになりました。
誰もやっていなそうなデザインを考えて実際に作ってみました。

【プチ100均分解】ダイソーの光る忍者刀を分解してみた

初めに

分解のススメをつい最近知って、バックナンバー動画を見ているのですが、これがとても面白い。 特にThousanDIYさんの「100円ショップのガジェットを分解してみる」が好きです。
note.com 今回、100均のおもちゃを改造するために分解してみたのですが、単純なものなのに色々面白かったので記事にしてみました。

ダイソーの光る忍者刀

f:id:PikaPikaLight:20210525202118p:plain

  • 200円(税別)

  • スイッチ入れると赤と緑に刀身が光る(LED4個)

  • 刀を振ると音が鳴る。「ポキーン」、「プイーン」の2種類。
    (自分の感覚で文字化するとこんな音)

これを改造して得意のLEDテープを仕込んで色変わりの刀に改造しようと購入しました。

それはそれでこのようにできたのですが、この時はLEDテープを仕込むことだけ考えて、音が出る機能を完全に無視して、早々にスピーカーを外してしまいました。

これの2本目の改造品を作るにあたり、音が出る機能を活かしたいと思ったのですが、改めていじってみるとこれがなかなかに不思議な仕組みで、軽く振っただけでは音はならず、ある程度の衝撃を与えないと音がでないという、えっ?これどうやってんだろ?な代物だったのです。

本体の分解

f:id:PikaPikaLight:20210525204728p:plain ネジはこの6点です。刀のつばを上にずらすと隠された2つのネジがあります
あけるとこうなってます。 f:id:PikaPikaLight:20210525205231p:plain

振動センサ

まず一番の謎だった振動センサを調べました。 f:id:PikaPikaLight:20210525205700p:plain これが正体でした。筒の中にもう一つの筒があってこれが接触することで導通するというメカニカルなセンサでした。
これが、軽く振っても反応せず、強い衝撃時のみ反応する仕組みだったのです。
自分的に初めてこのようなセンサを見て、軽く感動しました。これだけで200円の価値はあると思いました。

LED

LEDはこのような針金に直接はんだ付けされているという大胆な構造でした。 f:id:PikaPikaLight:20210525210454p:plain ただよくよく見ると、針金がわざと段差をつけて切断されています。アノード側は長く、カソード側は短くなるように切断されていました。こうすることでワイヤーをはんだ付けするときにどちらに付けるか判別できるようになっているのだと思います。ちょっとした生産技術なのでしょうが、こうした技術に触れることは新鮮で、分解の楽しさを感じました。

回路図

せっかくなので回路図にしてみました。 f:id:PikaPikaLight:20210525211553j:plain 電源ラインにはちゃんとポリスイッチ(多分)入ってます。LEDの針金配線の危険性を加味した設計でしょうか。
振動センサにパラで入っている0.1uFはチャタリング対策でしょうか。
単純な回路ですが、面白いです。「分解とは設計者との対話である」という言葉を実感します。

次回予告

分解して回路が分かったので、音が出る仕組みを活かしてこんなの作ってみました。 次回はこれの作り方を解説したいと思います。

Adafruit_NeoPixelとFastLEDライブラリのサンプルを撮ってみた<LEDテープ編>

WS2812B LEDテープを愛用している私。
ArduinoだとAdafruit_NeoPixelとFastLEDライブラリが基本と思います。
LEDテープの点灯パターンの参考になりそうなサンプルスケッチを片っ端から動作させてみて動画記録してみました。

環境

WS2812B 32個
Seeeduino XIAO
Adafruit_NeoPixel Ver.1.8.0
FastLED Ver.3.4.0

LEDを撮影するのは難しく、なるべく色変化がわかりやすいように透明プラ板を横に置いて反射させてみました。
BRIGHTNESSの設定は20くらいに下げています。 f:id:PikaPikaLight:20210516103521p:plain

目次

Adafruit_NeoPixel

FastLED

Adafruit_NeoPixel

RGBW用なのでWS2812ではちゃんと動かない?

FastLED

【作品まとめ】M5Stackでかめはめ波

ホログラム で面白いことできないかなと思っていた時にこれを見ました。 www.youtube.com

こんな凄いことは簡単にはできないけど、M5Stackを使ってそれっぽいことはできるんじゃないかと思って作った作品。


f:id:PikaPikaLight:20210513210929p:plain

LEDテープでメビウスの輪を作った

1メートルのRGB LEDテープを点灯させて遊んでいたら、ふと思いついた。
「これでメビウスの輪を作ったら面白そう。」
作ってみました。

材料

LEDテープをメビウスの輪の形にする

まず最初にLEDテープについているごっついコネクタケーブルを外して、M5Atomに簡単に接続できるGroveケーブルに付けなおします。
f:id:PikaPikaLight:20210512201015p:plain まっすぐ半田付けすると切れやすいので、あえて逆方向につけて折り返すという小技を使っています。

メビウスの輪にするなら裏表にLEDが配置されるようにしないと意味ないので、テープを半分の長さで折り曲げます。最初は単純に折り曲げてしまおうと思ったのですが、このLEDテープはちょうど半分のところではんだ付けされていました。
f:id:PikaPikaLight:20210512201029p:plain
72個分のLEDがのっている基板を2枚つないで作られています。冷静に考えると、こんな長い基板どうやって作ってどうやって部品実装しているのだろう??

ハンダをいったん外して裏表にしてはんだ付けしなおします。基板の裏側にもランドがあるので、簡単でした。 両面テープで貼りつけましたが、シリコンチューブだと粘着が弱いので、ところどころセロテープでぐるぐる巻いてみました。 これをひとひねりしてメビウスの輪になるように端と端をつなぎます。セロテープだけでつなぐのは無理だったので、プラバンを補強板にしてセロテープで巻きました。
f:id:PikaPikaLight:20210512201048p:plain f:id:PikaPikaLight:20210512201105p:plain

点灯プログラム

メビウスの輪なのでLED1灯がエンドレスでぐるぐる回るような動きをさせたい。単色では味気ないので、レインボウカラーに変化しながら。
これをM5AtomLiteでプログラムするわけですが、、、
前から気付いていました、M5Stack(ESP32)でAdafruit_NeoPixelライブラリは完璧には動かない事を。 LEDの数が少ない場合はまぁまぁ動きますが、LEDの数が多いと誤動作が目立ちます。
これまでLEDの数が多い場合は別のマイコン(XIAOとか)を使うなどしてしのいでいましたが、この機に向き合うことにしました。

ネット情報からESP32ではFastLEDライブラリを使うといいらしい。 https://github.com/FastLED/FastLED
とりあえずこのライブラリをインストールし、スケッチ例を適当に開いて、ピン番号とLED数だけ変えてM5Atomで動かしてみると、ちゃんとそれらしい動きでLEDが点灯しました
スケッチ例のCylonを動かすとレインボウに変化する点灯動作をしたので、色の変化はこれをマネすれば行けそうです。 あとは1灯を順番に点灯させていくだけですが、メビウスの輪になっているので単純に0~143をつければいいわけではありません。 図に書いて見るとこんな感じになります。 f:id:PikaPikaLight:20210512201649p:plain この変則的な並びをいったん配列に入れておいて、loop()はなるべくシンプルになるようにしてみました。

#include <FastLED.h>

#define NUM_LEDS 144
#define DATA_PIN 26

#define DELAYVAL 20
#define BRIGHTNESS  200
CRGB leds[NUM_LEDS];

uint16_t array_conv[NUM_LEDS] ;

void setup() {

  LEDS.addLeds<WS2812, DATA_PIN, RGB>(leds, NUM_LEDS);
  LEDS.setBrightness(BRIGHTNESS);

  uint16_t j = 0;

  for (int i = 0; i < NUM_LEDS / 2; i++) {
    array_conv[j] = i;
    j++;
  }
  for (int i = NUM_LEDS - 1 ; i > NUM_LEDS / 2 - 1; i--) {
    array_conv[j] = i;
    j++;
  }
}

void loop() {
  static uint8_t hue = 0;
  for (int i = 0; i < NUM_LEDS; i++) {
    FastLED.clear();
    leds[array_conv[i]] = CHSV(hue++, 255, 255);
    FastLED.show();
    delay(DELAYVAL);
  }
}

虹色を作っているのは CHSV(hue++, 255, 255)
これでどうやってレインボウカラーの変化になるのか理解してません ^^;
FastLEDに関してはこれからじっくり触っていきたいと思います。 f:id:PikaPikaLight:20210512202836p:plain