Obsah:
- Krok 1: Penová doska, batéria a vypínač
- Krok 2: Mikrokontrolér a obvod
- Krok 3: Svetlá s optickými vláknami
- Krok 4: Programovanie
- Krok 5: Konečný produkt
Video: Svetlá z optických vlákien na plátne: 5 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:57
Tento projekt pridáva jedinečné roztočenie na štandardnej tlači na plátno. Programoval som v 4 rôznych režimoch osvetlenia, ale ďalšie by ste mohli pokojne pridať. Režim sa zmení vždy, keď ho vypnete a znova zapnete, namiesto samostatného tlačidla na minimalizáciu poškodenia rámu. Batérie by mali vydržať 50+ hodín používania - nie som si tým istý, ale urobil som podobný projekt pre priateľa a použil 5x viac svetiel a na jednu sadu batérií vydržal 20+ hodín.
Materiály
- Obraz na plátne s funkčným priestorom - ten svoj som si objednal z https://www.easycanvasprints.com, pretože mali dobré ceny a otvorený chrbát. Hrubší 1,5 "rám bol perfektný a poskytol mi veľa priestoru na ohnutie vlákien z optických vlákien. Okrem toho chcete obrázok, ktorý vám poskytne funkčný priestor 3" x 8 "pre batériu a mikrokontrolér a pásy LED
- LED pásové svetlá - použil som adresovateľné LED pásy WS2812. Nebojte sa, ich použitie v knižniciach FastLED alebo Neopixel je skutočne jednoduché! Môžete použiť aj akýkoľvek štandardný LED pásik, len nebudete môcť ovládať každú svetelnú sekciu jednotlivo bez oveľa väčšieho zapojenia.
- Mikrokontrolér - Použil som Arduino Uno, ale na tento projekt môžete použiť takmer čokoľvek.
- Batéria - tento som si objednal z eBay (z Číny) s názvom „Držiak batérií 6 x 1,5 V AA 2A CELL“
- Vlákna z optických vlákien - opäť objednané z Číny na eBay - „PMMA plastový kábel s optickým vláknom s rastom LED DIY Decor“alebo „PMMA koncový žiarový optický kábel pre súpravu hviezdnych stropných svetiel“. Použil som veľkosti 1 mm a 1,5 mm, v skutočnosti odporúčam použiť menšie.
- Vypínač - „SPDT zapnuté/zapnuté 2polohové miniatúrne prepínače“
- Organizačné spony - pomáhajú udržiavať vlákna a optické vlákna pekné a upratané.
- Penová doska, drôt konektora s pevným jadrom, zmršťovacia trubica
Nástroje
- Dremel - slúži na vnorenie vypínača do rámu obrazu. To by sa dalo dosiahnuť vŕtačkou a skutočne veľkým kusom, ale neodporúčam to.
- Spájkovačka - pripevnenie vodičov k LED pásu
- Horúca lepiaca pištoľ - doslova každý krok tohto projektu
- Veľká šijacia ihla - na prepichnutie otvorov cez plátno a penovú dosku pre svetlá
Krok 1: Penová doska, batéria a vypínač
Predtým než čokoľvek iné, musíte na zadnú stranu plátna pripevniť kus penovej dosky. To nám dáva pekný pevný povrch, na ktorý pripevníte všetko ostatné, a pomôže to udržať vlákna optických vlákien na svojom mieste. Stačí použiť presný nôž alebo rezačku na škatule, aby ste narezali kus penovej dosky na správnu veľkosť a zalepili ho za tepla na mnohých miestach. Odporúčam použiť čiernu penovú dosku, aby neprepúšťala toľko svetla.
Použil som dremel bit, ktorý vyzerá ako normálny vrták, ale v skutočnosti je skvelý na odstraňovanie materiálu. Je to jedna z kúskov, ktoré by mali byť súčasťou každého dremelu. Použite plechovku stlačeného vzduchu, aby ste sa zbavili všetkých pilín z dremelu.
Horúce lepidlo všetko na svojom mieste. Uistite sa, že je batéria veľmi dobre pripevnená, pretože na vloženie/vybratie batérie je potrebná značná sila a nechcete, aby držiak batérie kamkoľvek smeroval.
Krok 2: Mikrokontrolér a obvod
Prepínač napájania som umiestnil pred Arduino UNO, aby keď prepnete prepínač, nič nepoužívalo energiu z batérií. To by malo pomôcť batériám vydržať čo najdlhšie, keď projekt nie je zapnutý. Dosky Arduino sú notoricky zlé v oblasti správy napájania - používajú veľa prúdu, ak sú zapnuté, aj keď aktívne nič nerobia.
Zapojte kladný koniec batérie do VIN (napäťový vstup) mikrokontroléra, aby pomocou vstavaného regulátora napätia ovládača dostal napätie až na 5 V, ktoré potrebuje. Ak by sme napájali viac svetiel, možno by sme na ne museli použiť vlastný regulátor napätia, ale UNO by mal zvládnuť 5 LED diód.
Na vyhladenie signálu som použil odpor medzi dátovým výstupom a pásikom LED - bez rezistora by mohlo dôjsť k náhodnému blikaniu pixelov. Na veľkosti rezistora nezáleží, malo by fungovať čokoľvek medzi 50Ω a 400Ω.
Krok 3: Svetlá s optickými vláknami
Po niekoľkých pokusoch a omyloch som nakoniec našiel dobrý spôsob, ako dostať vlákna z optických vlákien cez plátno.
- Použite najväčšiu šijaciu ihlu, ktorú musíte, a prepichnite dieru v prednej časti plátna a penovej dosky. Odporúčam na začiatku vypichnúť každú dieru, ktorú chcete, aby ste ju mohli prevrátiť a zistiť, kam môžete/nemôžete dávať klipy na organizáciu káblov.
- Vezmite si kliešte s ihlou a uchopte prameň optických vlákien necelý centimeter od konca
- Prostredníctvom otvoru, ktorý ste urobili, prepichnite prameň optických vlákien ihlou
- Prameň veďte rôznymi plastovými sponami tam, kde je o niečo dlhší, ako je potrebné - prestrihneme ho neskôr
- S horúcou lepiacou pištoľou na nastavení NÍZKEJ teploty (ak má túto možnosť) naneste kvapku horúceho lepidla na vlákno z optických vlákien, kde bodne cez penovú dosku. Alternatívne môžete použiť tie modré nevkusné veci. Horúce lepidlo prameň trochu zdeformuje, ale nezdá sa, že by príliš zasahovalo do optických vlastností
- Prameň trochu odstrihnite od plátna pomocou rezačiek drôtu.
Na urýchlenie procesu môžete pred horúcim lepidlom prepichnúť mnoho vlákien za sebou. Spravidla by mali zostať na mieste sami.
Dávajte pozor, aby ste vlákna optických vlákien na stole nepretrhli alebo nemačkali - zlomia sa a ak bude prameň príliš krátky, budete smutní a budete ho musieť zopakovať. Batériu používajte ako protizávažie, aby ste mohli mať rám obrazu na stole menej ako polovicu.
Pretože som namiesto čiernej použil bielu penovú dosku, keď svietili LED diódy, presvitalo veľa svetla. Ako opravu som medzi svetlami a plátnom zalepil hliníkovou fóliou.
Na zmrštenie každého zväzku vlákien z optických vlákien používajte teplom zmrštiteľné hadičky.
- Odrežte pramene pre zväzok približne na rovnakú dĺžku
- Sekciu preveďte zmršťovacou trubicou
- Na jeho zmenšenie použite tepelnú pištoľ alebo spájkovačku. Ak používate spájkovačku, nechajte stranu žehličky, aby sa zľahka dotýkala hadičky, a tak sa zmenší. Hadica by sa nemala roztaviť, pretože je navrhnutá na malé teplo.
Nakoniec som pomocou horúceho lepidla pripevnil koniec zväzku ku každému LED svetlu. Použil som veľa horúceho lepidla, aby vlákna skutočne dostali svetlo z každej červenej/zelenej/modrej diódy vo svetle - keď sú vlákna skutočne blízko svetla, „biela“farba (ktorá je v skutočnosti červená a zelená a modrá) potom budú niektoré vlákna len červené a niektoré zelené, namiesto toho, aby boli všetky biele. Dalo by sa to zlepšiť použitím kúska papiera alebo niečoho iného na jeho rozptýlenie, ale horúce lepidlo mi fungovalo dosť dobre.
Krok 4: Programovanie
Pri programovaní som použil tri knižnice
FastLED - skvelá knižnica na ovládanie LED pásov WS2812 (a mnohých ďalších adresovateľných LED pásikov) -
Arduino Low Power - Neviem, koľko energie to v skutočnosti šetrí, ale implementácia bola veľmi jednoduchá a mala by pomôcť ušetriť trochu energie na funkcii, ktorá je len bielym svetlom a potom navždy zdržaním.
EEPROM - slúži na čítanie/ukladanie aktuálneho režimu projektu. To umožňuje projektu zvýšiť farebný režim pri každom vypnutí a opätovnom zapnutí, čo eliminuje potrebu samostatného tlačidla na zmenu režimu. Knižnica EEPROM je nainštalovaná vždy, keď inštalujete IDE Arduino.
Použil som aj skicu na mihnutie svetiel, ktoré nastavil niekto iný. Náhodne rozsvieti pixel zo základnej farby na špičkovú farbu a potom opäť klesne. https://gist.github.com/kriegsman/88954aae22b03a66… (používa aj knižnicu FastLED)
Tiež som použil doplnok vMicro pre Visual Studio - toto je zosilnená verzia Arduino IDE. Má veľa užitočných funkcií automatického dopĺňania a upozorňuje na problémy vo vašom kóde bez toho, aby ste ho museli kompilovať. Stojí to 15 dolárov, ale stojí to za to, ak sa chystáte vytvoriť viac ako jeden projekt Arduino, a prinúti vás to zoznámiť sa s Visual Studio, čo je super výkonný program.
(Prikladám aj súbor.ino kódu, pretože inštruovateľný hosting Github Gist zničí veľa prázdnych miest v súbore)
Kód Arduino so 4 farebnými režimami na zariadení Arduino UNO pre niektoré svetelné pásy WS2812B LED pomocou knižnice FastLED
#zahrnúť |
#zahrnúť |
#zahrnúť |
// Nastavenie FastLED |
#defineNUM_LEDS4 |
#definePIN3 // Dátový kolík pre LED pás |
LED diódy CRGB [NUM_LEDS]; |
// Nastavenie Twinkle |
#defineBASE_COLORCRGB (2, 2, 2) // Základná farba pozadia |
#definePEAK_COLORCRGB (255, 255, 255) // Špičková farba na odlesky až |
// Suma na zvýšenie farby každou slučkou, keď bude jasnejšia: |
#defineDELTA_COLOR_UPCRGB (4, 4, 4) |
// Suma na zníženie farby každou slučkou, keď sa stmavne: |
#defineDELTA_COLOR_DOWNCRGB (4, 4, 4) |
// Šanca každého pixelu sa začať rozjasňovať. |
// 1 alebo 2 = niekoľko rozjasňujúcich pixelov naraz. |
// 10 = veľa pixelov zjasňujúcich naraz. |
#defineCHANCE_OF_TWINKLE2 |
enum {SteadyDim, GettingBrighter, GettingDimmerAgain}; |
uint8_t PixelState [NUM_LEDS]; |
byte runMode; |
byte globalBright = 150; |
byte globalDelay = 20; // Rýchlosť meškania pre žmurkanie |
adresa bytu = 35; // Adresa na uloženie režimu chodu |
voidsetup () |
{ |
FastLED.addLeds (LED diódy, NUM_LEDS); |
FastLED.setCorrection (TypicalLEDStrip); |
//FastLED.setMaxPowerInVoltsAndMilliamps(5, maxMilliamps); |
FastLED.setBrightness (globalBright); |
// Spustite režim |
runMode = EEPROM.read (adresa); |
// Zvýšte runmode o 1 |
EEPROM.write (adresa, runMode + 1); |
} |
voidloop () |
{ |
prepínač (runMode) |
{ |
// Plne biela |
case1: fill_solid (leds, NUM_LEDS, CRGB:: White); |
FastLED.show (); |
DelayForever (); |
prestávka; |
// Pomaly sa trblietajte |
prípad2: FastLED.setBrightness (255); |
globalDelay = 10; |
TwinkleMapPixels (); |
prestávka; |
// Rýchlo sa mihni |
prípad3: FastLED.setBrightness (150); |
globalDelay = 2; |
TwinkleMapPixels (); |
prestávka; |
// Dúha |
prípad 4: |
RunRainbow (); |
prestávka; |
// Index mimo dosahu, resetujte ho na 2 a potom spustite režim 1. |
// Keď sa arduino reštartuje, spustí režim 2, ale zatiaľ spustite režim 1 |
predvolené: |
EEPROM.write (adresa, 2); |
runMode = 1; |
prestávka; |
} |
} |
voidRunRainbow () |
{ |
bajt *c; |
uint16_t i, j; |
zatiaľ čo (pravda) |
{ |
pre (j = 0; j <256; j ++) {// 1 cyklus všetkých farieb na kolese |
pre (i = 0; i <NUM_LEDS; i ++) { |
c = koleso ((((i * 256 / NUM_LEDS) + j) & 255); |
setPixel (i, *c, *(c + 1), *(c + 2)); |
} |
FastLED.show (); |
oneskorenie (globalDelay); |
} |
} |
} |
byte * Wheel (byte WheelPos) { |
statický bajt c [3]; |
if (WheelPos <85) { |
c [0] = WheelPos * 3; |
c [1] = 255 - WheelPos * 3; |
c [2] = 0; |
} |
elseif (WheelPos <170) { |
WheelPos -= 85; |
c [0] = 255 - WheelPos * 3; |
c [1] = 0; |
c [2] = WheelPos * 3; |
} |
inak { |
WheelPos -= 170; |
c [0] = 0; |
c [1] = WheelPos * 3; |
c [2] = 255 - WheelPos * 3; |
} |
návrat c; |
} |
voidTwinkleMapPixels () |
{ |
InitPixelStates (); |
zatiaľ čo (pravda) |
{ |
pre (uint16_t i = 0; i <NUM_LEDS; i ++) { |
if (PixelState == SteadyDim) { |
// tento počet pixelov je v súčasnej dobe: SteadyDim |
// preto náhodne zvažujeme, že sa začne rozjasňovať |
if (random8 () <CHANCE_OF_TWINKLE) { |
PixelState = GettingBrighter; |
} |
} |
elseif (PixelState == GettingBrighter) { |
// tento počet pixelov je v súčasnej dobe: GettingBrighter |
// ak je teda v špičkových farbách, znova ho prepnite na stmievanie |
if (leds > = PEAK_COLOR) { |
PixelState = GettingDimmerAgain; |
} |
inak { |
// inak to len rozjasnite: |
LED += DELTA_COLOR_UP; |
} |
} |
else {// znova stmieva |
// tento počet pixelov je v súčasnej dobe: GettingDimmerAgain |
// ak je teda späť na základnú farbu, prepnite ju na stlmené |
if (leds <= BASE_COLOR) { |
leds = BASE_COLOR; // reset na presnú základnú farbu, v prípade, že sme prestrelili |
PixelState = SteadyDim; |
} |
inak { |
// inak to len stlmte: |
LED -= DELTA_COLOR_DOWN; |
} |
} |
} |
FastLED.show (); |
FastLED.delay (globalDelay); |
} |
} |
voidInitPixelStates () |
{ |
memset (PixelState, sizeof (PixelState), SteadyDim); // inicializácia všetkých pixelov na SteadyDim. |
fill_solid (leds, NUM_LEDS, BASE_COLOR); |
} |
voidDelayForever () |
{ |
zatiaľ čo (pravda) |
{ |
oneskorenie (100); |
LowPower.powerDown (SLEEP_FOREVER, ADC_OFF, BOD_OFF); |
} |
} |
voidshowStrip () { |
FastLED.show (); |
} |
voidsetPixel (int Pixel, byte red, byte green, byte blue) { |
// FastLED |
LED [Pixel].r = červená; |
LED [Pixel].g = zelená; |
LED [Pixel].b = modrá; |
} |
zobraziť rawFiberOptic_ClemsonPic.ino hostené s ❤ od GitHub
Krok 5: Konečný produkt
Ta-da! Dúfam, že tento Instructable inšpiruje niekoho iného, aby urobil svoj vlastný podobný projekt. Skutočne nebolo ťažké to urobiť a bol som prekvapený, že to ešte nikto neurobil a napísal o tom podrobný návod.
Odporúča:
Anglické krčmové svetlá ohýbaním optických vlákien, osvetlené diódou LED: 4 kroky
Anglické krčmové svetlá ohýbaním optických vlákien, osvetlené diódou LED: Povedzme, že chcete, aby vlákno zodpovedalo tvaru domu a rozsvietilo naň vianočné osvetlenie. Alebo možno chcete prísť k vonkajšej stene a mať k vláknu pravý uhol. Môžete to urobiť veľmi jednoducho
Hudobne reaktívna stropná inštalácia hviezdy z optických vlákien: 11 krokov (s obrázkami)
Hudobne reaktívna inštalácia stropu z optických vlákien: Chcete mať doma kúsok galaxie? Nižšie nájdete informácie o tom, ako sa vyrába! Roky to bol môj vysnený projekt a nakoniec je hotový. Dokončenie trvalo nejaký čas, ale konečný výsledok bol taký uspokojivý, že som si istý, že to stálo za to. Trochu bi
Matica LED „optických vlákien“: 9 krokov (s obrázkami)
Matica LED „Fiber Optic“: V tomto projekte som vytvoril " vláknovú optiku " LED matica pomocou LED pásika WS2801 a lepiacich tyčiniek. Svetelné displeje majú iný vzhľad ako podobné LED kocky a majú niekoľko výhod. Po prvé, na displeji nevidíte skutočné LED diódy, pretože
Krídla z optických vlákien: 24 krokov (s obrázkami)
Krídla z optických vlákien: Už je to nejaký čas, čo som sa rýpala v mäsitom projekte, takže keď ma Joel z Mravencov na melóne požiadal, aby som vyrobil kostým pre uvedenie jeho nových produktov z optických vlákien, s potešením som to prijal. Na vláknovú optiku som použil baterku jeho predchádzajúcej generácie
Lampa na dekoráciu optických vlákien: 11 krokov
Lampa na dekoráciu optických vlákien: vyrobila som túto dekoratívnu lampu z nejakého optického vlákna, ktoré som pred časom kúpil na ebay pre možné budúce projekty, takže sa mi konečne podarilo niečo z nej urobiť