万華鏡インフィニティミラー
コンポーネントと消耗品
> |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
必要なツールとマシン
> |
| |||
| ||||
| ||||
|
アプリとオンラインサービス
> |
|
このプロジェクトについて
万華鏡とインフィニティミラーのクロス!ミラーの回転を変更すると、それに応じてライトが変更されます。このプロジェクトは、既製のミラーと額縁、およびその他のいくつかのコンポーネントを使用して構築されています。 Arduino 101開発ボードには、角度の検知と光の表示の制御に使用できる位置検知が組み込まれています。
注:このプロジェクトでは、と同じ電子機器のセットアップを使用します ホリデーシャドウシアター、 基本的には、Arduino101、LEDストリップ、およびバッテリーパックのみです。同じバッテリーパックでLEDとArduino101の両方に電力を供給できるように、4ドルの電圧レギュレーターを使用しています。または、9Vバッテリーを使用してArduinoに電力を供給し、レギュレーターをスキップすることもできます。
パート1:ミラーを構築する
ステップ1:
鋭利なカッターナイフまたはホビーナイフを使用して、12 "x 12"の正方形のフォームコアを切り、鉛筆で中央に印を付けます。額縁の裏段ボールを参考にしてください。
<図>ステップ2:
円描画ツールまたは文字列と鉛筆を使用して、12 x12の中心に半径5.25インチの完全な円を描画します。定規を使用して12x12の端から0.75インチのマークを付け、それを開始基準点。
ステップ3:
新しい刃のカッターナイフまたはホビーナイフを使用して、慎重に円を切り取ります。 このカットは最終製品に表示されるので、できるだけきれいにカットしてください。
<図>ステップ4:
穴を開けたら、見栄えの良い面を選び、きれいな作業台に裏返しにして置きます。
ステップ5:
長さ約36インチのフォームコアの別の½インチストリップをカットします。これは、必要に応じてテープで短いセグメントからつなぎ合わせることができます。定規を使用して、サイズをできるだけ均一な0.5インチに近づけます。
<図>ステップ6:
完成したストリップをテーブルの上に水平に置き、縦のスコアでさえ、全長に沿って2インチごとに一番上の紙に切り取ります。
<図>ステップ7:
ストリップを裏返し、ホットグルーを使用して、Foamcoreストリップの長さに沿ってLEDストリングを取り付けます。
<図>ステップ8:
Foamcoreの背面で切り取ったスコアを曲げポイントとして使用して、完成したストリップを大まかな円に曲げます。
<図>ステップ9:
12x12 "フォームコアの正方形の穴の上にLEDストリップをリング状に配置します。完全なLEDストリップは長すぎます。LED円のサイズを穴より少し大きくし、余分なLED(約6個のLED)を切り取ります。これらのスペアLEDは、後で別のプロジェクトに引き続き使用できます。
<図>ステップ10:
LEDストリップを12x12 "の正方形の上面(悪い側)のリングに配置し、円の穴の端にホットグルーで固定します。LEDリングの背面が少なくとも0.25"の位置にあることを確認してください。 12 x 12インチの正方形の端から。(そうしないと、フレームの黒いプラスチックスペーサーがその周りに収まりません。
<図><図>
<図>
ステップ11:
セミミラーフィルムを使用する場合は、シャドウボックスフレームのガラスを取り出し、製造元の指示に従ってフィルムをガラスに貼り付けます。これが最も厄介なステップであることがわかりました。必ず最初にガラスをきれいにし、気泡を取り除きやすくするために水(または石鹸液)を使用してください。ミラーフィルムを使用すると、はるかに強い錯覚が生じ、LEDが隠されますが、100%必要というわけではありません(必要に応じて後で追加できます)。フィルムを使用する場合は、フィルム側を上に向けてガラスをフレームに戻します。フレームに入れます。
ステップ12:
フレームを下に向け、ガラスをきれいにした状態で、フォームをガラスの上に置き、良い面を下にしてLEDリングを上にします。フレームに付属しているスペーサーを2つ追加してから、12x12インチのミラーを下向きに追加します。 LEDワイヤーは、フレームの後ろからミラーを越えて出ているはずです。ミラーのはめあいがワイヤーに対してきつすぎる場合は、ボックスカッターまたはホビーナイフを使用して、フレームの端にワイヤーの切り込みを慎重に刻む必要があります。
<図><図>
スペースがある場合は、段ボールのフレームバッカーを追加します。そうでない場合は、フレームのタブでミラーを所定の位置に保持します。これで完了です。さて、エレクトロニクスの魔法のために。
パート2:電子機器のセットアップ
ステップ1
前に端を切り取った余分な6-LEDを見つけます。ハーネスを端から集め、ライトから約1cm切り取ります。ワイヤーの端をはがします。
<図> <図>ステップ2
電圧レギュレータに付属している曲がったヘッダーピンを分解し、そのうちの2つを緑と黄色のワイヤの端にはんだ付けします。これにより、Arduino101のピンに簡単に接続できます。
<図>ステップ3
次に、赤いワイヤーを電圧レギュレーターのVIN端子にはんだ付けし、図のように2つのストレートヘッダーをGNDピンとVOUTピンにはんだ付けします。
<図>ステップ4
次に、バレルジャックアダプタを接続します。まず、バッテリーケースから出ているワイヤーの端をはがし、次にオスバレルジャックの端子に取り付け、ドライバーで締めます。赤は(+)端子に、黒は(-)端子に接続します。
<図>次に、メスのバレルジャックアダプターを、LEDストリップの最初から来る(ミラーの後ろから来る)緩いワイヤーに接続します。このストリップでは、黄色は(-)端子に、赤は(+ 。
ステップ5
次に、ハーネスをArduino 101に接続します。緑のワイヤーはピン6に接続し、黄色のワイヤーは#13の近くのGNDピンに接続します。
電圧レギュレータの2つのヘッダーピンを使用すると、GNDはGNDに接続され、VOUTはArduino101の「Vin」ピンに接続されます。これを誤解しないでください。後ろ向きに差し込むと、においややけどの原因になります。私はこれを知っています。
<図><図>
ステップ6: Arduino 101のワイヤーハーネスとLEDストリップを一緒に接続してから、バッテリーパックのバレルジャックをLEDストリップのバレルジャックに接続すると、すべて配線されます!
ステップ7:
電子機器が完成したので、Arduino 101をミラーの背面に配置し、その向きをミラーのいずれかの側に平行にします。ベルクロ、両面テープ、またはホットグルーで貼り付けます。バッテリーパックを近くに取り付け、緩んだワイヤーをテープまたは接着剤で固定します。
コンピューター、USBケーブル、ArduinoIDEを使用してサンプルコードをアップロードします。
または、Arduino WebベースのIDEを使用して、サンプルコードにアクセス、編集、アップロードすることもできます。
試してみてください!
<図>サンプルコードは、Intel Cure Compute Moduleの加速度計から読み取られるように、ミラーの角度に基づいてLEDの色を変更します。現在、1つの位置ですべてのライトがオフになり、1つの角度で、最後に使用された色で追跡ライト効果が作成されます。気軽にコードに飛び込んで、クレイジーな照明効果を作成してください!優れたAdafruitNeoPixel Uberguideは、始めるのに最適な場所です。
重要! このミラーを恒久的に設置したい場合は、バッテリーパックの代わりにプラグイン電源を使用できますが、3.5v〜5vを出力していることを確認してください。より高い電圧(9V四角電池など)は、LEDストリップに過負荷をかける可能性があります。
コード
- Arduino101インフィニティミラースケッチ
Arduino101インフィニティミラースケッチ Arduino
内部加速度計からArduino101の角度を読み取り、その角度を使用してNeoPixelLEDストリップの色を制御する簡単なスケッチ。/ * Copyright(c)2016 IntelCorporation。全著作権所有。ファイルの最後にあるライセンス通知を参照してください。 Arduino101「インフィニティミラー」。 Arduino 101の回転角度により、Neopixelストリップのライトが変わります。このコードは、AdafruitNeopixelライブラリを使用しています。ライブラリのインストール手順はこちら:https://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library-installationデスクトップバージョンのArduino IDEを使用している場合は、最新のIntel CurieCoreがインストールされていることを確認してください。詳細については、https://www.arduino.cc/en/Guide/Arduino101*/#include "CurieIMU.h" #include#define PIN 6 ////接続されているNeoPixelsのピンをご覧ください。 to?Adafruit_NeoPixel strip =Adafruit_NeoPixel(54、PIN、NEO_GRB + NEO_KHZ800); ///ストリップの長さは15ピクセルです。これは、個々のストリップのピクセル数に合わせて変更できます。inttr=0; //スムージングのために「color-target」と「color-current」を保持するいくつかの変数... int tg =0; int tb =0; int r =0; int g =0; int b =0; int rawX =0; ///// Curieの加速度計からの値を保持するにはintrawY =0; // int rawZ =0; float angle =0.0; void setup(){//セットアップコードをここに配置して、1回実行します://Serial.begin (9600); //デバッグ用。 CurieIMU.begin(); CurieIMU.setAccelerometerRange(2); //加速度計の範囲を2gに設定します。 strip.begin(); //ネオピクセルストリップを初期化しますstrip.show(); //すべてのピクセルを 'off'に初期化します} void loop(){//メインコードをここに配置して繰り返し実行します://加速度計を読み取ります:int rawX =CurieIMU.readAccelerometer(X_AXIS); int rawY =CurieIMU.readAccelerometer(Y_AXIS); int rawZ =CurieIMU.readAccelerometer(Z_AXIS);角度=atan2(rawX、rawY); //関数atan2()は、x力とy力をラジアン単位の角度に変換します。いいね!出力は-3.14〜3.14 if(abs(angle)> 2.5){//デジタルピンがダウンしている///この位置でライトをオフにするtr =0; tg =0; tb =0; runlights(); } if((angle> 1.5)&&(angle <2.5)){//この位置でライトを白くします(r、g、bに等しい)。色の値は255まで上がる可能性がありますが、100で十分明るいことがわかります。 tr =100; tg =100; tb =100; runlights(); } else if((angle <1.5)&&(angle> 0.5)){//この位置でライトを赤にするtr =100; tg =0; tb =0; runlights(); } else if((angle <0.5)&&(angle> -0.5)){//この位置でライトを緑色にするtr =0; tg =100; tb =0; runlights(); } else if((angle <-1.5)&&(angle> -2.5)){//この位置でライトを青色にするtr =0; tg =0; tb =100; runlights(); } else if((angle <-0.5)&&(angle> -1.5)){////何か楽しいもののために1つのコーナー角度を選ぶ!theaterChase(); ///これらの関数はスケッチの下部に書き出されています。 // rainbowCycle(2); } else {////予期しない角度の場合は、ライトをオフにします。 tr =0; tg =0; tb =0; runlights(); }} void runlights(){///カラースムージング。現在の色がターゲットカラーに向かって移動します...ターゲットが現在よりも多い場合は上に移動し、少ない場合は下に移動します。 if(tr> r + 1){r ++; } if(tg> g + 1){g ++; } if(tb> b + 1){b ++; } if(tr にご連絡ください。
製造プロセス