Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Caleidoscope Infinity Mirror

Componenten en benodigdheden

Arduino 101
× 1
1m adresseerbare onverzegelde LED's (60)
Deze Sparkfun-versie is handig bedraad voor dit project, maar je kunt NeoPixels of iets dergelijks van Adafruit gebruiken.
× 1
Korte sectie van massieve draad of jumperpinnen
Dit is om gevlochten draad Arduino pin-compatibel te maken.
× 1
krimpkous
Optioneel als je zin hebt.
× 1
barrel jack vrouwelijke connector met schroefaansluitingen
× 1
barrel jack mannelijke connector met schroefaansluitingen
× 1
3x AA-batterijhouder met schakelaar
× 1
Pololu Valtage Step-Up Regulator
Met deze regelaar van $ 4 kan het hele project worden gevoed vanuit één batterijpakket met 3 AA-batterijen. Als alternatief kun je dit deel overslaan en een 9v-batterij gebruiken om de Arduino 101 van stroom te voorzien. Als je die route volgt, heb je nog steeds het 3 AA-pakket nodig om de lichten van stroom te voorzien. https://learn.adafruit.com/adafruit-neopixel-uberguide/power
× 1
AA-batterijen
× 1
12" vierkante "schaduwdoos" fotolijst
De diepte en grootte van dit frame is perfect!
× 1
12" vierkante spiegel
Dit past achter in de fotolijst.
× 1
11" foto-ezel
Om het eindproduct weer te geven
× 1
Gespiegelde privacy-tint
(optioneel – verbetert het effect aanzienlijk, maar niet 100% vereist)
× 1
FoamCore
Standaard 3/16" of 1/4" FoamCore. Ik heb wit gebruikt, maar zwart zou ook mooi kunnen staan. Je hebt genoeg nodig om één stuk van 12" x 12" te maken, plus genoeg om een ​​strook van 1 m lang en 05 "breed aan elkaar te plakken.
× 1

Benodigde gereedschappen en machines

Soldeerbout (algemeen)
doossnijder met vers mes
Hot lijmpistool (algemeen)
draadstrippers

Apps en online services

Arduino IDE
Je hebt de Adafruit NeoPixel-bibliotheek nodig voor dit project. https://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library-installationAls de Arduino 101 nieuw voor u is, moet u ook de Curie Core installeren om toegang te krijgen tot de positiesensoren. https://www.arduino.cc/en/Guide/Arduino101

Over dit project

Een kruising tussen een Caleidoscoop en een Infinity Mirror! Als u de rotatie van de spiegel verandert, veranderen de lichten als reactie. Dit project is gebouwd met een kant-en-klare spiegel en fotolijst en een paar andere componenten. Het Arduino 101-ontwikkelbord heeft een ingebouwde positionele detectie die we kunnen gebruiken om de hoek te detecteren en de lichtweergave te regelen.

Opmerking:dit project gebruikt dezelfde elektronica-opstelling als de Holiday Shadow Theater, eigenlijk gewoon een Arduino101, een LED-strip en een batterijpakket. Ik gebruik een spanningsregelaar van $ 4, zodat hetzelfde batterijpakket zowel de LED's als de Arduino 101 kan voeden. Je kunt ook een 9v-batterij gebruiken om de Arduino van stroom te voorzien en de regelaar over te slaan.

Deel één:bouw de spiegel

Stap 1:

Snijd met een scherpe stanleymes of hobbymes een vierkant van 30 x 30 cm van Foamcore en markeer het midden met een potlood. Je kunt het achterste karton van de fotolijst als referentie gebruiken.

Stap 2:

Teken met een cirkeltekengereedschap of een touwtje en potlood een perfecte cirkel met een straal van 5,25 "gecentreerd in de 12 x 12. U kunt een liniaal gebruiken om een ​​markering op 0,75" van de rand van de 12x12 te plaatsen en die als een startreferentiepunt.

Stap 3:

Gebruik een stanleymes of hobbymes met een nieuw mes om de cirkel voorzichtig uit te snijden. Deze snede zal zichtbaar zijn in het eindproduct, dus snijd zo schoon als je kunt.

Stap 4:

Zodra het gat is uitgesneden, kiest u de mooiste kant en plaatst u deze met de goede kant naar beneden op een schoon werkoppervlak.

Stap 5:

Snijd een aparte strook van ongeveer 30 cm van Foamcore van ongeveer 30 cm. Deze kan indien nodig met plakband uit kortere segmenten worden samengevoegd. Gebruik een liniaal en houd de maat zo dicht mogelijk bij een uniforme 0,5 cm.

Stap 6:

Leg de voltooide strook horizontaal op een tafel en snijd om de 2 "over de totale lengte zelfs verticale inkepingen door het bovenste vel papier.

Stap 7:

Draai de strip om en bevestig met behulp van hete lijm de LED-string langs de lengte van de Foamcore-strip.

Stap 8:

Buig de voltooide strook in een ruwe cirkel met behulp van de inkepingen die u in de achterkant van de Foamcore hebt gesneden als buigpunten.

Stap 9:

Leg de LED-strip in een ring over het gat in je 12x12" foamcore-vierkant. De volledige LED-strip zal te lang zijn. Maak je LED-cirkel net groter dan het gat en knip de extra LED's af (ongeveer 6 LED's). Je kunt deze reserve-LED's later nog voor een ander project gebruiken.

Stap 10:

Plaats de LED-strip in een ring op het bovenste oppervlak (slechte kant) van uw vierkant van 12x12 "en hot-lijm op zijn plaats net aan de rand van het cirkelgat. Zorg ervoor dat de achterkant van de LED-ring ten minste 0,25" in is vanaf de rand van het vierkant van 12 x 12". (Anders passen de zwarte plastic afstandhouders van het frame er niet omheen.

Stap 11:

Als u de semi-spiegelfilm gebruikt, haalt u het glas eruit voor uw schaduwboxframe en brengt u de film op het glas aan volgens de instructies van de fabrikant. Ik vond dit de meest onhandige stap. Reinig eerst het glas en gebruik water (of zeepoplossing) om de luchtbellen gemakkelijker te verwijderen. Het gebruik van de spiegelfilm creëert een veel sterkere illusie en verbergt de LED's, maar het is niet 100% nodig (en je kunt het later toevoegen indien gewenst!) Als je film gebruikt, plaats het glas dan terug in het frame met de filmzijde naar boven / in het frame.

Stap 12:

Plaats het schuim met het frame naar beneden en het glas schoon op het glas, met de goede kant naar beneden en de LED-ring naar boven. Voeg twee van de afstandhouders toe die in het frame zijn geleverd en voeg vervolgens uw 12x12 "spiegel met de voorkant naar beneden toe. De LED-draden moeten aan de achterkant van het frame voorbij de spiegel komen. Als de spiegelpassing te strak is voor de draden, moet u mogelijk voorzichtig een inkeping maken voor de draden in de rand van het frame met behulp van een stanleymes of hobbymes.

Als er ruimte is, voeg dan de kartonnen framesteun toe, of houd de spiegel gewoon op zijn plaats met de lipjes van het frame. Dat is klaar! Nu voor de magie van elektronica.

Deel twee:de elektronica instellen

Stap 1

Zoek de extra 6-LED's die u eerder aan het uiteinde hebt afgesneden. Verzamel het harnas vanaf het uiteinde en knip ongeveer 1 cm van de lichten af. Strip de draadeinden.

Stap 2

Breek de gebogen header-pinnen die bij uw spanningsregelaar zijn geleverd uit elkaar en soldeer er twee aan de uiteinden van de groene en gele draden. Hierdoor kunt u ze gemakkelijk in de pinnen van de Arduino 101 steken.

Stap 3

Soldeer vervolgens de rode draad aan de VIN-aansluiting op de spanningsregelaar en soldeer twee rechte headers in de GND- en VOUT-pinnen zoals weergegeven.

Stap 4

Sluit nu de barrel jack-adapters aan. Strip eerst de uiteinden van de draden die uit uw batterijhouder komen, monteer ze vervolgens in de klemmen van de mannelijke cilinderaansluiting en draai ze vast met een schroevendraaier. ROOD gaat naar de (+) terminal, ZWART gaat naar de (-) terminal.

Sluit vervolgens de vrouwelijke barrel jack-adapter aan op de losse draden die uit het begin van de LED-strip komen (van de achterkant van uw spiegel). Op deze strip gaat GEEL naar de (-) aansluiting en ROOD gaat naar de (+ ).

Stap 5

Sluit nu uw kabelboom aan op de Arduino 101. De GROENE draad gaat naar PIN 6, de GELE draad gaat naar de GND-pin bij #13.

Met de twee header-pinnen op de spanningsregelaar gaat GND naar GND en VOUT gaat naar de "Vin" -pin op de Arduino 101. Begrijp dit niet verkeerd! Achterwaarts aansluiten leidt tot geurtjes en brandwonden. Ik weet dit.

Stap 6: Verbind de kabelbomen op de Arduino 101 en de LED-strip met elkaar, verbind vervolgens de barrel-jack van het batterijpakket met de barrel-jack van de LED-strip en je bent helemaal bedraad!

Stap 7:

Nu je elektronica klaar is, plaats je de Arduino 101 op de achterkant van de spiegel met zijn oriëntatie evenwijdig aan elke kant van de spiegel. Bevestig het met klittenband, dubbelzijdig plakband of hete lijm. Monteer de accu in de buurt en zet eventuele losse draden vast met tape of lijm.

Upload de voorbeeldcode met behulp van een computer, een USB-kabel en de Arduino IDE.

Als alternatief kunt u de voorbeeldcode openen, bewerken en uploaden met behulp van de Arduino-webgebaseerde IDE.

Probeer het uit!

De voorbeeldcode verandert de kleuren van de LED's op basis van de hoek van de spiegel, zoals afgelezen van de versnellingsmeter op de Intel Cure Compute Module. Momenteel schakelt één positie alle lichten uit en creëert één hoek een achtervolgend lichteffect met de laatst gebruikte kleur. Duik gerust in de code en maak gekke lichteffecten! De uitstekende Adafruit NeoPixel Uberguide is een geweldige plek om te beginnen.

BELANGRIJK! Als u deze spiegel permanent wilt installeren, kunt u een plug-in voeding gebruiken in plaats van de batterij, maar zorg ervoor dat deze 3,5v - 5v levert! Elke hogere spanning (zoals een 9v vierkante batterij) kan de LED-strip overbelasten.

Code

  • Arduino 101 Infinity Mirror Sketch
Arduino 101 Infinity Mirror SketchArduino
Eenvoudige schets die de hoek van de Arduino 101 afleest van de interne versnellingsmeter en de hoek gebruikt om de kleuren van een NeoPixel LED-strip te regelen.
/* Copyright (c) 2016 Intel Corporation. Alle rechten voorbehouden. Zie licentiekennisgeving aan het einde van het bestand. Arduino 101 "Oneindige spiegel." De rotatiehoek van de Arduino 101 verandert de lichten in een Neopixel-strip. Deze code maakt gebruik van de Adafruit Neopixel-bibliotheek. Installatie-instructies voor de bibliotheek hier:https://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library-installation Als u de desktopversie van de Arduino IDE gebruikt, moet u ervoor zorgen dat de nieuwste Intel Curie Core is geïnstalleerd. Ga voor meer informatie naar https://www.arduino.cc/en/Guide/Arduino101*/#include "CurieIMU.h"#include #define PIN 6 //// welke pin zijn de NeoPixels aangesloten naar?Adafruit_NeoPixel strip =Adafruit_NeoPixel(54, PIN, NEO_GRB + NEO_KHZ800); /// de strip is 15 pixels lang. U kunt dit wijzigen voor het aantal pixels in uw individuele strip.int tr =0; //Sommige variabelen om "kleurdoel" en "kleurstroom" vast te houden voor afvlakking ... int tg =0;int tb =0;int r =0;int g =0;int b =0;int rawX =0; ///// om waarden vast te houden van de accelerometer van de Curieint rawY =0;//int rawZ =0;float angle =0.0;void setup() {// plaats hier je setup-code, om een ​​keer uit te voeren://Serial.begin (9600); // voor debuggen. CurieIMU.begin(); CurieIMU.setVersnellingsmeterBereik(2); // Stel het acceleratiebereik in op 2g. strip.begin(); // initialiseer neopixel strip strip.show(); // Initialiseer alle pixels op 'off'}void loop() { // plaats hier je hoofdcode, om herhaaldelijk uit te voeren:// read accelerometer:int rawX =CurieIMU.readAccelerometer(X_AXIS); int rawY =CurieIMU.readAccelerometer(Y_AXIS); int rawZ =CurieIMU.readAccelerometer(Z_AXIS); hoek =atan2(rawX, rawY); // de functie atan2() zet x- en y-krachten om in een hoek in radialen. koel! De uitvoer is -3,14 tot 3,14 als (abs (hoek)> 2,5) {// digitale pinnen zijn niet beschikbaar /// schakel de lichten uit in deze positie tr =0; tg =0; tb =0; looplichten(); } if ((hoek> 1.5) &&(hoek <2.5)) { // maak lichten wit in deze positie (gelijk aan r, g en b.) Kleurwaarden kunnen oplopen tot 255, maar ik vind dat het helder genoeg is bij 100. tr =100; tg =100; tb =100; looplichten(); } else if ((hoek <1.5) &&(hoek> 0.5)) { // licht rood op in deze positie tr =100; tg =0; tb =0; looplichten(); } else if ((hoek <0,5) &&(hoek> -0,5)) { // licht groen op in deze positie tr =0; tg =100; tb =0; looplichten(); } else if ((hoek <-1,5) &&(hoek> -2,5)) { // licht blauw op in deze positie tr =0; tg =0; tb =100; looplichten(); } else if ((hoek <-0.5) &&(hoek> -1.5)) { //// kies een hoek voor iets leuks! theaterChase(); /// deze functies staan ​​onderaan de schets uitgeschreven. //regenboogcyclus (2); } else { //// in het geval van een onverwachte hoek, doe de lichten uit. tr =0; tg =0; tb =0; looplichten(); }}void runlights() { /// kleurvereffening. De huidige kleur beweegt naar de doelkleur... Als het doel meer dan de huidige kleur is, gaat u omhoog, als het minder is, gaat u omlaag. als (tr> r + 1) { r++; } if (tg> g + 1) { g++; } if (tb> b + 1) { b++; } als (tr   

Productieproces

  1. Caleidoscoop
  2. Spiegel
  3. Infinity Gears
  4. Arduino Spybot
  5. FlickMote
  6. Zelfgemaakte tv B-Gone
  7. Arduino gekoelde spiegelhygrometer
  8. Hoofdklok
  9. Vind mij
  10. Arduino Power
  11. Infinity spiegelklok