Sadržaj:
- Korak 1: Pjenasta ploča, baterija i prekidač za uključivanje/isključivanje
- Korak 2: Mikrokontroler i krug
- Korak 3: Svjetla od optičkih vlakana
- Korak 4: Programiranje
- Korak 5: Završni proizvod
Video: Optičko svjetlo u ispisu na platnu: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:34
Ovaj projekt dodaje jedinstveni spin standardnom ispisu na platnu. Programirao sam u 4 različita načina osvjetljenja, ali možete jednostavno dodati još. Način se mijenja svaki put kada ga isključite i ponovo uključite umjesto da imate zasebnu tipku za smanjenje oštećenja okvira. Baterije bi trebale izdržati više od 50 sati korištenja - nisam baš siguran, ali napravio sam sličan projekt za prijatelja koji je koristio 5x više svjetala i trajao je 20+ sati na jednom kompletu baterija.
Materijali
- Tisak na platnu s radnim prostorom - ja sam svoj naručio sa https://www.easycanvasprints.com jer su imale dobre cijene i otvorena leđa. Deblji okvir od 1,5 "bio je savršen i dao mi je puno prostora za savijanje niti optičkih vlakana. Osim toga, želite sliku koja vam daje 3" po 8 "radnog prostora za bateriju, mikrokontroler i LED trake
- Svjetla sa LED trakama - Koristio sam adresabilne LED trake WS2812. Nemojte se plašiti, stvarno su jednostavni za korištenje s knjižnicama FastLED ili Neopixel! Također možete koristiti bilo koju standardnu LED traku, jednostavno nećete moći kontrolirati svaki dio svjetla zasebno bez puno više ožičenja.
- Mikrokontroler - Koristio sam Arduino Uno, ali za ovaj projekt možete koristiti gotovo sve.
- Baterija - ovo sam naručio s eBay -a (iz Kine) i naslovio se "Držač baterija za baterije 6 x 1,5 V AA 2A CELL"
- Optički vlakni - još jednom, naručeno iz Kine na eBayu - "PMMA plastični kabel od optičkih vlakana koji raste uz LED rasvjetu" ili "PMMA završni svjetlovodni kabel za komplet stropnih svjetiljki". Koristio sam veličine 1 mm i 1,5 mm, zapravo preporučujem da koristite manje od toga.
- Prekidač za uključivanje/isključivanje - "Minijaturni prekidači za uključivanje/isključivanje 2 položaja SPDT"
- Kvačice za organizaciju žice - Oni pomažu da vlakna optičkih vlakana budu lijepa i uredna.
- Pjenasta ploča, žica za spajanje pune jezgre, toplinski skupljajuće cijevi
Alati
- Dremel - koristi se za umetanje prekidača za uključivanje/isključivanje u okvir za sliku. To bi se možda moglo postići bušilicom i jako velikim komadom, ali to ne preporučujem.
- Lemilica - pričvršćivanje žica na LED traku
- Pištolj za vruće ljepilo - doslovno svaki korak ovog projekta
- Velika igla za šivanje - za probijanje rupa kroz platno i pjenu za svjetla
Korak 1: Pjenasta ploča, baterija i prekidač za uključivanje/isključivanje
Prije svega, trebate pričvrstiti komad pjenaste ploče na stražnju stranu platna. To nam daje lijepu čvrstu površinu za pričvršćivanje svega ostalog i pomaže u držanju niti optičkih vlakana na mjestu. Samo upotrijebite egzaktni nož ili rezač kutija da izrežete komad pjenaste ploče odgovarajuće veličine i vruće ga zalijepite na mnogo mjesta. Preporučujem korištenje ploče od crne pjene tako da ne dopušta prodor toliko svjetlosti.
Koristio sam dremel bit koji izgleda kao normalna bušilica, ali je zapravo odličan za uklanjanje materijala. To je jedan od dijelova koji bi trebao doći s bilo kojim dremelom. Pomoću limenke komprimiranog zraka uklonite svu piljevinu iz dremela.
Vruće ljepilo sve na mjestu. Uvjerite se da je baterija dobro pričvršćena jer za umetanje/vađenje baterije potrebna je dobra snaga, a ne želite da držač baterije ide bilo gdje.
Korak 2: Mikrokontroler i krug
Prekidač za napajanje postavio sam ispred Arduino UNO -a tako da kada prebacite prekidač ništa ne troši energiju iz baterija. To bi trebalo pomoći da baterije traju što je dulje moguće ako projekt nije uključen. Arduino ploče notorno loše upravljaju napajanjem - troše puno struje ako su uključene čak i ako ne rade ništa aktivno.
Priključite pozitivni kraj baterije u VIN (ulaz napona) mikrokontrolera tako da koristi ugrađeni regulator napona kontrolera kako bi smanjio napon na 5V koji mu je potreban. Da smo napajali više svjetala, možda bismo za njih trebali koristiti vlastiti regulator napona, ali UNO bi trebao moći rukovati s 5 LED dioda.
Koristio sam otpornik između izlaza podataka i LED trake za uglađivanje signala - bez otpornika biste mogli dobiti slučajno bljeskanje piksela. Veličina otpornika zapravo nije bitna, trebalo bi raditi između 50Ω i 400Ω.
Korak 3: Svjetla od optičkih vlakana
Nakon pokušaja i pogrešaka, na kraju sam pronašao dobar način da provučem vlaknasta vlakna kroz platno.
- Upotrijebite najveću iglu za šivanje koju morate probiti kroz prednju stranu platna i pjenu. Preporučujem da na samom početku probušite svaku rupu koju želite kako biste je mogli preokrenuti i vidjeti gdje možete/ne možete staviti isječke za kabelsku organizaciju
- Uzmite par kliješta s iglastim nosem i uhvatite vlakno optičke niti manje od centimetra od kraja
- Provucite vlakno optičkog vlakna kroz rupu koju ste napravili iglom
- Provucite pramen kroz razne plastične kopče tamo gdje je nešto dulji nego što je potrebno - kasnije ćemo ga izrezati
- S vašim pištoljem za vruće ljepilo na NISKOJ postavci temperature (ako ima tu mogućnost) stavite kapljicu vrućeg ljepila na vlakno od optičkih vlakana gdje probija kroz ploču od pjene. Alternativno, možete koristiti te plave ljepljive stvari. Vruće ljepilo pomalo deformira niti, ali čini se da se ne petlja previše u optičke kvalitete
- Odrežite pramen malo dalje od platna pomoću rezača žice.
Da biste ubrzali proces, možete probadati kroz mnoga vlakna uzastopno prije nego što napravite vruće ljepilo. Općenito bi trebali sami ostati na mjestu.
Pazite da ne slomite niti zgnječite niti optičkih vlakana na stolu - oni će se slomiti, a ako žicu učini prekratkom, bit ćete tužni i morat ćete je ponoviti. Koristite bateriju kao protutežu kako biste okvir slike imali manje od polovice na stolu.
Budući da sam koristio bijelu pjenastu ploču umjesto crne, puno je svjetla sijalo dok su LED diode bile uključene. Kao popravak zalijepio sam aluminijsku foliju između svjetala i platna.
Upotrijebite termoskupljajuće cijevi da svaki snop optičkih vlakana držite zajedno.
- Izrežite niti za snop na približno istu duljinu
- Provucite dio kroz termoskupljajuće cijevi
- Za skupljanje upotrijebite toplinski pištolj ili lemilicu. Ako koristite lemilicu, samo dopustite da strana glačala lagano dodirne cijev i ona će se smanjiti. Cijev se ne bi trebala otopiti jer je dizajnirana za malo topline.
Na kraju sam vrućim ljepilom pričvrstila kraj snopa na svako LED svjetlo. Koristio sam puno vrućeg ljepila tako da su vlakna zapravo dobila svjetlost od svake crvene/zelene/plave diode na svjetlu - kada su vlakna jako blizu svjetlosti, "bijele" boje (koja je zapravo crvena, zelena i plava) tada će neka vlakna biti samo crvena, a neka zelena, umjesto da su sva bijela. To bi se moglo poboljšati korištenjem papira ili nečeg drugog za njegovo širenje, ali vruće ljepilo mi je djelovalo dovoljno dobro.
Korak 4: Programiranje
U programiranju sam koristio tri biblioteke
FastLED - izvrsna biblioteka za upravljanje LED trakama WS2812 (i mnogim drugim adresabilnim LED trakama) -
Arduino Low Power - Ne znam koliko se time zapravo štedi, ali bilo je super jednostavno za implementaciju i trebalo bi pomoći uštedjeti mali dio energije na funkciji koja je samo bijela svjetla, a zatim zauvijek odgađa.
EEPROM - koristi se za čitanje/pohranjivanje trenutnog načina rada projekta. To omogućuje projektu da poveća način rada u boji svaki put kada ga isključite i ponovo uključite, što eliminira potrebu za posebnim gumbom za promjenu načina rada. Knjižnica EEPROM instalira se kad god instalirate Arduino IDE.
Također sam koristio skicu za treperenje svjetla koja je netko drugi postavio. Nasumično osvjetljava piksel od osnovne boje do boje vrha, a zatim se vraća prema dolje. https://gist.github.com/kriegsman/88954aae22b03a66… (koristi i biblioteku FastLED)
Također sam koristio dodatak vMicro za Visual Studio - ovo je pojačana verzija Arduino IDE -a. Ima hrpu korisnih funkcija automatskog dovršavanja i ističe probleme u vašem kodu bez potrebe za njegovim sastavljanjem. Košta 15 USD, ali vrijedi ako ćete napraviti više od jednog Arduino projekta, a to će vas natjerati da naučite o Visual Studiju koji je super moćan program.
(Prilažem i kôd.ino datoteku jer Instructable hosting Github Gista uništava mnogo praznih mjesta u datoteci)
Arduino kôd koji pokreće 4 načina rada u boji na Arduino UNO -u za neka LED svjetla WS2812B pomoću FastLED knjižnice
#uključi |
#uključi |
#uključi |
// FastLED postavljanje |
#defineNUM_LEDS4 |
#definePIN3 // Podatkovni pin za LED traku |
CRGB LED diode [NUM_LEDS]; |
// Twinkle postavljanje |
#defineBASE_COLORCRGB (2, 2, 2) // Osnovna boja pozadine |
#definePEAK_COLORCRGB (255, 255, 255) // Vrhunska boja do svjetlucanja do |
// Iznos za povećanje boje za svaku petlju kako postaje svjetlija: |
#defineDELTA_COLOR_UPCRGB (4, 4, 4) |
// Iznos za smanjenje boje za svaku petlju kako postaje tamnija: |
#defineDELTA_COLOR_DOWNCRGB (4, 4, 4) |
// Šansa da se svaki piksel počne svijetliti. |
// 1 ili 2 = nekoliko piksela za posvjetljivanje odjednom. |
// 10 = puno piksela koji se posvjetljuju odjednom. |
#defineCHANCE_OF_TWINKLE2 |
enum {SteadyDim, GettingBrighter, GettingDimmerAgain}; |
uint8_t PixelState [NUM_LEDS]; |
bajt runMode; |
bajt globalBright = 150; |
bajt globalDelay = 20; // Brzina odgode za treperenje |
adresa bajta = 35; // Adresa za spremanje načina rada |
voidsetup () |
{ |
FastLED.addLeds (LED diode, NUM_LEDS); |
FastLED.setCorrection (TypicalLEDStrip); |
//FastLED.setMaxPowerInVoltsAndMilliamps(5, maxMilliamps); |
FastLED.setBrightness (globalBright); |
// Pokretanje načina rada |
runMode = EEPROM.čitano (adresa); |
// Povećajte način rada za 1 |
EEPROM.write (adresa, način rada + 1); |
} |
voidloop () |
{ |
prekidač (runMode) |
{ |
// Čvrsta bijela |
case1: fill_solid (LED diode, NUM_LEDS, CRGB:: Bijelo); |
FastLED.show (); |
DelayForever (); |
pauza; |
// Svijetliti nekako sporo |
case2: FastLED.setBrightness (255); |
globalDelay = 10; |
TwinkleMapPixels (); |
pauza; |
// Brzo svjetluca |
case3: FastLED.setBrightness (150); |
globalDelay = 2; |
TwinkleMapPixels (); |
pauza; |
//Duga |
slučaj 4: |
RunRainbow (); |
pauza; |
// Indeks je izvan raspona, vratite ga na 2, a zatim pokrenite način 1. |
// Kad se arduino ponovno pokrene, pokrenut će način 2, ali za sada pokrenuti način 1 |
zadano: |
EEPROM.write (adresa, 2); |
runMode = 1; |
pauza; |
} |
} |
voidRunRainbow () |
{ |
bajt *c; |
uint16_t i, j; |
dok (istina) |
{ |
za (j = 0; j <256; j ++) {// 1 ciklus svih boja na kotaču |
za (i = 0; i <NUM_LEDS; i ++) { |
c = Kotač (((i * 256 / NUM_LEDS) + j) & 255); |
setPixel (i, *c, *(c + 1), *(c + 2)); |
} |
FastLED.show (); |
kašnjenje (globalDelay); |
} |
} |
} |
byte * Kotač (byte WheelPos) { |
statički bajt c [3]; |
if (WheelPos <85) { |
c [0] = WheelPos * 3; |
c [1] = 255 - Kotači * 3; |
c [2] = 0; |
} |
elseif (Kotači <170) { |
WheelPos -= 85; |
c [0] = 255 - Kotači * 3; |
c [1] = 0; |
c [2] = WheelPos * 3; |
} |
drugo { |
WheelPos -= 170; |
c [0] = 0; |
c [1] = WheelPos * 3; |
c [2] = 255 - Kotači * 3; |
} |
return c; |
} |
voidTwinkleMapPixels () |
{ |
InitPixelStates (); |
dok (istina) |
{ |
za (uint16_t i = 0; i <NUM_LEDS; i ++) { |
if (PixelState == SteadyDim) { |
// ovi pikseli su trenutno: SteadyDim |
// pa nasumično razmatramo da postane svjetliji |
if (random8 () <CHANCE_OF_TWINKLE) { |
PixelState = GettingBrighter; |
} |
} |
elseif (PixelState == GettingBrighter) { |
// ovi pikseli su trenutno: GettingBrighter |
// pa ako ima najveću boju, ponovno ga prebacite u prigušivanje |
if (LED diode > = PEAK_COLOR) { |
PixelState = GettingDimmerAgain; |
} |
drugo { |
// u suprotnom, samo ga pojačavajte: |
LED diode += DELTA_COLOR_UP; |
} |
} |
else {// ponovno postaje slabiji |
// ovi pikseli su trenutno: GettingDimmerAgain |
// pa ako se vrati na osnovnu boju, prebacite je na stalnu zatamnjenost |
if (LED diode <= BASE_COLOR) { |
LED diode = BASE_COLOR; // resetiramo na točnu osnovnu boju, u slučaju da smo pretjerali |
PixelState = SteadyDim; |
} |
drugo { |
// u suprotnom, samo nastavite smanjivati: |
LED diode -= DELTA_COLOR_DOWN; |
} |
} |
} |
FastLED.show (); |
FastLED.delay (globalDelay); |
} |
} |
voidInitPixelStates () |
{ |
memset (PixelState, sizeof (PixelState), SteadyDim); // inicijalizira sve piksele u SteadyDim. |
fill_solid (LED diode, NUM_LEDS, BASE_COLOR); |
} |
voidDelayForever () |
{ |
dok (istina) |
{ |
kašnjenje (100); |
LowPower.powerDown (SLEEP_FOREVER, ADC_OFF, BOD_OFF); |
} |
} |
voidshowStrip () { |
FastLED.show (); |
} |
voidsetPixel (int Pixel, byte red, byte green, byte blue) { |
// FastLED |
LED diode [Pixel].r = crveno; |
LED diode [Pixel].g = zelena; |
LED diode [Pixel].b = plava; |
} |
pogledajte rawFiberOptic_ClemsonPic.ino hosted with ❤ by GitHub
Korak 5: Završni proizvod
Ta-da! Nadam se da će ovaj Instructable inspirirati nekoga drugog da napravi svoj vlastiti sličan projekt. To doista nije bilo teško učiniti i bio sam iznenađen što to nitko nije učinio i napisao je temeljite upute o tome.
Preporučeni:
Cw ključ s dvostrukim veslom u 3D ispisu (566 gr.): 21 korak (sa slikama)
Cw ključ s dvostrukim veslom s 3D printom (566 gr.): Do sada je točan, mekan i težak ključ s dva vesla značio trošenje mnogo novca. Moja je namjera prilikom projektiranja ovog ključa bila veslanje: a)- Jeftino --- Napravljeno je od plastike sa standardnim 3D pisačemb)- Izdržljivo --- Koristio sam loptu
Optičko vlakno Snoot!: 8 koraka (sa slikama)
Optičko vlakno Snoot !: U podvodnoj fotografiji svjetlo je vrlo važno, često mali bljeskovi koji se nalaze na kamerama za snimanje i snimanju nisu dovoljni. Na dubini boje mogu izgledati isprane i plave, za suzbijanje ovog problema obično se koriste strobofoni izvan kamere. Ove snage
Optičko vlakno za promjenu boje: 10 koraka (sa slikama)
Tkanina od optičkih vlakana koja mijenja boju: Po cijeni od oko 150 USD po dvorištu i s mnogo ograničenja rezanja, vlaknasta vlakna na tržištu nisu najpristupačniji materijal. No, s vlastitom optičkom niti, tilom i LED diodama, možete stvoriti vlastitu u bilo kojem obliku za djelić
RGB LED optičko stablo (poznato i kao Project Sparkle): 6 koraka
RGB LED optičko stablo (poznato i kao Project Sparkle): Smatrate li da je vaša soba previše dosadna? Želite li tome dodati malo sjaja? Ovdje pročitajte kako uzeti RGB LED, dodati malo optičke žice i učiniti da zasja! Osnovni cilj projekta Project Sparkle je uzimanje super svijetle LED diode s dodatnim svjetlovodnim kabelom s krajnjim sjajem
Optičko svjetlo i LED mini vrtno svjetlo: 10 koraka (sa slikama)
Optička i LED mini vrtna svjetla: Ovaj projekt koristi LED diode i optička vlakna za osvjetljavanje malenog vrta punog cvijeća, lišća i trave. Kutija je izrađena od akrilnog lima, radi na bateriji od 9 V i ima klizna vrata na dnu za lakši pristup bateriji. Prikupio sam