Sisällysluettelo:

RGB LED -kynä valomaalaukseen: 17 vaihetta (kuvien kanssa)
RGB LED -kynä valomaalaukseen: 17 vaihetta (kuvien kanssa)

Video: RGB LED -kynä valomaalaukseen: 17 vaihetta (kuvien kanssa)

Video: RGB LED -kynä valomaalaukseen: 17 vaihetta (kuvien kanssa)
Video: Behind the scenes - Luxray projisoiva LED-valosauva by Fotogeeker & Vectorgear 2024, Marraskuu
Anonim
RGB LED -kynä valomaalaukseen
RGB LED -kynä valomaalaukseen
RGB LED -kynä valomaalaukseen
RGB LED -kynä valomaalaukseen
RGB LED -kynä valomaalaukseen
RGB LED -kynä valomaalaukseen

Tämä on täydellinen rakennusohje kevytmaalaustyökalulle, joka käyttää RGB LED -ohjainta. Käytän tätä ohjainta paljon kehittyneissä työkaluissani ja ajattelin, että dokumentti siitä, miten tämä on rakennettu ja ohjelmoitu, voi auttaa joitain ihmisiä.

Tämä työkalu on modulaarinen RGB -valokynä, joka on tarkoitettu kevyeen kirjoittamiseen, kevyeen piirtämiseen ja graffitin valaistukseen. Sitä on helppo käyttää, koska sinulla on vain kynä kädessäsi ja voit vaihtaa väriä nopeasti.

Työkalu koostuu:

  • 3D -tulostettu kotelo
  • Arduino Micro
  • WS2816B LED
  • kaksi potentiometriä (10K tai 100K)
  • kaksi kytkintä
  • painike
  • ja joitakin kaapeleita.

Arduino Micro on täydellinen tähän, koska se on erittäin pieni ja loistava hallita RGB -LED -valoja. Voit myös käyttää vielä pienempiä mikro -ohjaimia, kuten LilyPadia tai jopa ATtiny85: tä, mutta käytän usein Microa, koska se on helppokäyttöinen, koska sen mukana toimitetaan käyttövalmis USB -liitin. Sekä Arduino että LED toimivat 5 V: n virralla, joten sinun on huolehdittava asianmukaisesta virrantuesta. Tämä työkalu on suunniteltu käyttämään neljää ladattavaa AAA -paristoa, koska niissä on yleensä 1,2 V ja yhdistetty 4,8 V, mikä riittää sekä Arduino- että LED -virtalähteeseen. Varo käyttämästä tavallisia AAA -paristoja, koska niissä on 1,5 V jännite ja yhdistetty jännite voi olla liikaa komponenteille ja vahingoittaa niitä. Jos haluat käyttää tavallisia paristoja, käytä vain kolmea, jännitteen pitäisi silti riittää. Käytin toista hienoa 3D -tulostettua osaa joltain muulta akkukoteloon, joka löytyy täältä: "Taivutettavat akunpitimet".

Vaihe 1: Ohjelmointi

Ensin tarvitset Arduino IDE: n ohjelmoidaksesi mikro -ohjaimen, jonka voi ladata ja käyttää ilmaiseksi. Tämä kuulostaa ensi silmäyksellä melko monimutkaiselta, mutta todella yksinkertaiselta. Ohjelmiston asentamisen jälkeen saat yksinkertaisen tekstieditori -ikkunan, jota käytetään Arduinoon ladatun luonnoksen koodaamiseen. Tämä työkalu käyttää myös FastLED -kirjastoa, joka on loistava ja helppokäyttöinen kirjasto, joka ohjaa lähes mitä tahansa ostettavaa RGB -LEDiä. Kirjaston lataamisen jälkeen sinun on asennettava sijoittamalla tiedostot Arduino IDE: n luomaan kirjastokansioon. Tämä löytyy yleensä kohdasta "C: / Users {User Name} Documents / Arduino / libraries", jos et ole muuttanut sitä. Kun olet asettanut kirjaston tähän kansioon, sinun on käynnistettävä IDE uudelleen, jos se on jo käynnissä. Nyt olemme valmiit luomaan ohjaimen koodin.

Vaihe 2: Koodi

Jotta voimme käyttää FastLED -kirjastoa, meidän on ensin sisällytettävä se koodiin. Tämä tehdään koodin yläosassa ennen mitään muuta tällä rivillä:

#sisältää

Seuraavaksi määritellään muutama vakio. Tämä tehdään, koska nämä arvot eivät muutu koodin ollessa käynnissä ja myös pitääkseen ne luettavampina. Voit laittaa nämä arvot suoraan koodiin, mutta jos sinun on muutettava jotain, sinun on käytävä läpi koko koodi ja muutettava jokainen rivi, jossa arvoa käytetään. Käyttämällä määritettyjä vakioita sinun on muutettava se vain yhdessä paikassa eikä sinun tarvitse koskea pääkoodiin. Määritä ensin tämän ohjaimen käyttämät nastat:

#define HUE_PIN A0

#define BRIGHT_PIN A1 #define LED_PIN 3 #define LIGHT_PIN 6 #define COLOR_PIN 7 #define RAINBOW_PIN 8

Numerot tai nimet ovat samat, jotka on painettu Arduinolle. Analogiset nastat tunnistetaan numerolla A numeron edessä, digitaaliset nastat käyttävät vain koodissa olevaa numeroa, mutta joskus ne merkitään taululla olevaan D -kirjaimeen.

Tapin A0 potentiometriä käytetään värisävyn säätämiseen, tapin A1 potentiometriä käytetään kirkkauden säätämiseen. Nasta D3 toimii signaalina LEDille, jotta Arduino voi lähettää tietoja värin hallitsemiseksi. Nasta D6 käytetään valon vaihtamiseen ja nasta D7 ja D8 säätimen tilan asettamiseen. Olen toteuttanut tämän ohjaimen tiloja, yksi yksinkertaisesti laittaa väripotentiometrin määrittämän värin LEDiin ja toinen häivyttää kaikki värit. Seuraavaksi tarvitsemme myös muutamia FastLED -kirjaston määritelmiä:

#define COLOR_ORDER GRB

#määrittele CHIPSET WS2811 #määritä NUM_LEDS 5

Piirisarjaa käytetään kertomaan kirjastolle, millaista LEDiä käytämme. FastLED tukee lähes kaikkia saatavilla olevia RGB -LED -valoja (kuten NeoPixel, APA106, WS2816B jne.). Käyttämäni LED myydään nimellä WS2816B, mutta näyttää olevan hieman erilainen, joten se toimii parhaiten käyttämällä WS2811 -piirisarjaa. LEDille lähetettävä tavujen järjestys värin asettamiseksi voi myös vaihdella valmistajien välillä, joten meillä on myös määritelmä tavujärjestykselle. Tässä määritelmä vain kertoo kirjastolle, että väri lähetetään vihreässä, punaisessa ja sinisessä järjestyksessä. Viimeinen määritelmä koskee kytkettyjen LEDien määrää. Voit aina käyttää vähemmän LED -valoja kuin määrität koodissa, joten asetan numeron 5, koska tällä työkalulla en suunnittele kynää, jossa on enemmän kuin 5 LEDiä. Voisit asettaa numeron paljon suuremmalle, mutta pidän sen suorituskyvyn vuoksi niin pienenä kuin tarvitsen sitä.

Pääkoodille tarvitsemme myös muutamia muuttujia:

int kirkkaus = 255;

unsigned int pot_Reading1 = 0; unsigned int pot_Reading1 = 0; allekirjoittamaton pitkä lastTick = 0; unsigned int wheel_Speed = 10;

Näitä muuttujia käytetään kirkkauteen, potentiometrien lukemiin, muistamaan koodin viimeinen suoritusaika ja kuinka nopeasti väri haalistuu.

Seuraavaksi määritämme LED -valolle taulukon, joka on helppo tapa asettaa väri. Määritettyä määrää LED -valoja käytetään taulukon koon asettamiseen tässä:

CRGB -ledit [NUM_LEDS];

Määritelmien hoitamisen jälkeen voimme nyt kirjoittaa asennustoiminnon. Tämä on melko lyhyt tälle ohjelmalle:

void setup () {

FastLED.addLeds (ledit, NUM_LEDS).setCorrection (TyypillinenLEDStrip); pinMode (LIGHT_PIN, INPUT_PULLUP); pinMode (COLOR_PIN, INPUT_PULLUP); pinMode (RAINBOW_PIN, INPUT_PULLUP); }

Ensimmäinen rivi alustaa FastLED -kirjaston käyttämällä aiemmin määrittämiämme määritelmiä. Viimeiset kolme riviä kertovat Arduinolle, että näitä nastoja käytetään tulona ja että jos niitä ei ole kytketty mihinkään, niiden jännite on asetettava korkeaksi (PULLUP). Tämä tarkoittaa, että meidän on kytkettävä nämä nastat GND: hen, jotta voimme laukaista jotain.

Nyt voimme huolehtia pääohjelmasta. Tämä tehdään silmukkafunktiossa. Ensin asetamme muuttujia ja luemme potentiometrit:

void loop () {

staattinen uint8_t sävy = 0; staattinen uint8_t wheel_Hue = 0; pot_Reading1 = analoginen luku (HUE_PIN); sävy = kartta (pot_Reading1, 0, 1023, 0, 255); pot_Reading2 = analoginen luku (BRIGHT_PIN); kirkkaus = kartta (pot_Reading2, 0, 1023, 0, 255);

Kaksi ensimmäistä riviä määrittävät muuttujia, joita käytetään myöhemmin värissä. Seuraavat kaksi lohkoa huolehtivat potentiometrin arvojen lukemisesta. Koska saat arvon väliltä 0–1023, jos luet nastan käyttämällä”analogRead” -toimintoa, mutta sävy ja kirkkaus tarvitsevat arvon välillä 0–255, käytämme”kartta” -toimintoa lukemien kääntämiseksi arvialueelta toiselle. Tämän toiminnon ensimmäinen parametri on arvo, jonka haluat kääntää, ja neljä viimeistä ovat käännöksessä käytettävien alueiden minimi- ja maksimiarvot.

Seuraavaksi arvioimme painikkeen:

if (digitalRead (LIGHT_PIN) == LOW) {

Tarkistamme lukeman LOW -arvoa vastaan, koska määritimme nastan korkealle, jos sitä ei laukaista. Joten jos painonappia painetaan, nasta yhdistetään GND: hen ja lukema on alhainen. Jos tappeja ei paineta, ei ole paljon tehtävää.

Huolehditaan ensin LEDin sytyttämisestä vain yhdellä värillä:

if (digitalRead (COLOR_PIN) == LOW) {

if (värisävy <2) {FastLED.showColor (CRGB:: White); FastLED.setBrightness (kirkkaus); } else {FastLED.showColor (CHSV (sävy, 255, kirkkaus)); FastLED.setBrightness (kirkkaus); } viive (10);

Meidän on arvioitava värinappi tietääksemme, että haluamme käyttää tätä tilaa. Sitten voimme tarkistaa, mitä väriä tarvitaan. Koska tässä käytetään HSV -värimallia, tarvitsemme vain sävyn värin määrittämiseen. Mutta tämä luo myös ongelman, että meillä ei ole tapaa asettaa väriä valkoiseksi. Koska sävy 0 ja sävy 255 muuttuvat molemmat punaisiksi, käytän tässä pientä temppua ja tarkistan, onko sävyn potentiometrin lukema pienempi kuin 2. Tämä tarkoittaa, että potentiometri on käännetty kokonaan toiselle puolelle ja voimme käyttää tätä valkoisen asettamiseen. Meillä on edelleen punainen toisella puolella, joten emme menetä mitään täällä.

Joten joko asetamme värin valkoiseksi ja sitten kirkkaudeksi tai asetamme värin värisävyn ja myös kirkkauden perusteella.

Myöhemmin lisäsin pienen viiveen, koska on paljon parempi antaa säätimelle vähän seisokkeja virran säästämiseksi, eikä 10 millisekunnin viive tunnu.

Seuraavaksi koodaamme värin haalistumista:

muuten jos (digitalRead (RAINBOW_PIN) == LOW) {

pyörän_nopeus = kartta (potin_luku1, 0, 1023, 2, 30); if (lastTick + wheel_Speed 255) {wheel_Hue = 0; } lastTick = millis (); } FastLED.showColor (CHSV (pyörän_väri, 255, kirkkaus)); }

Ensin valitaan tämän tilan vaihtotappi. Koska en halunnut lisätä kolmatta potentiometriä haalistumisen nopeuden säätämiseen ja koska sävyn potentiometriä ei käytetä tässä tilassa, voimme käyttää tätä potentiometriä nopeuden asettamiseen. Käyttämällä karttatoimintoa uudelleen voimme kääntää lukeman viiveeksi, joka muunnetaan häipymisnopeudeksi. Käytin viiveessä arvoa 2–30, koska kokemusten mukaan tämä on hyvä nopeus. Funktio "millis" palauttaa millisekuntia Arduinon käynnistyksen jälkeen, joten voimme käyttää tätä ajan mittaamiseen. Viimeinen sävyn muutos tallennetaan aiemmin määrittämäämme muuttujaan ja sitä verrataan joka kerta nähdäksemme, onko meidän tarpeen muuttaa sävyä uudelleen. Viimeinen rivi asettaa vain värin, joka on näytettävä seuraavaksi.

Lopeta koodi:

} muuta {

FastLED.showColor (CRGB:: musta); }}

Meidän tarvitsee vain sammuttaa LED, jos painiketta ei paineta asettamalla väri mustaksi ja sulkea kaikki avoimet hakasulkeet.

Kuten näette, tämä on melko lyhyt ja helppo koodi, jota voidaan käyttää moniin työkaluihin, jotka käyttävät RGB -LED -valoja.

Kun sinulla on koko koodi, voit ladata sen Arduinolle. Kytke Arduino tietokoneeseen USB -kaapelilla ja valitse Arduino -tyyppi IDE: stä.

Tässä ohjeessa käytän Arduino Pro Micro -laitetta. Kun olet asettanut Arduino -mallin, sinun on valittava portti, josta IDE löytää sen. Avaa porttivalikko ja sinun pitäisi nähdä yhdistetty Arduino.

Nyt ainoa asia on ladata koodi Arduinoon painamalla ikkunan yläosassa olevaa toisen kierroksen painiketta. IDE rakentaa koodin ja lähettää sen. Tämän onnistumisen jälkeen voit irrottaa Arduinon ja jatkaa ohjaimen kokoamista.

Vaihe 3: Ohjaimen elektroniikan kokoaminen

Koska huolehdimme Arduinon koodaamisesta, voimme nyt koota ohjaimen laitteiston. Aloitamme asettamalla komponentit kotelon sisään. Potentiometrit menevät kahteen pyöreään reikään vasemmalla, virtakytkin on alhaalla, tilan kytkin on oikeassa yläkulmassa ja Arduino menee pidikkeeseen keskellä.

Vaihe 4:

Kuva
Kuva

Aloita juottamalla punainen kaapeli virtakytkimestä Arduinon RAW -nastaan. Tämä nasta on virtalähteen nasta, koska se on kytketty jännitesäätimeen, joten vaikka jännite on yli 5 V, tätä nastaa voidaan käyttää Arduinon virransyöttöön. Seuraavaksi juota toinen punainen johto VCC -nastaan, koska tarvitsemme potentiometrin korkean jännitteen. Juotos kaksi valkoista johtoa A0- ja A1 -nastoihin, joita käytetään potentiometrin lukemiin.

Vaihe 5:

Kuva
Kuva

Laita nyt pitkä valkoinen ja pitkä vihreä johto yläreunan läpi, jota myöhemmin käytetään LED -valon kytkemiseen. Juotos vihreä nastaan 3 ja valkoinen nastaan 6 ja paina ne tasaisesti Arduinolle. Juottaa kaksi mustaa langallista Arduinon vasemmalla puolella oleviin GND -nastoihin, näitä käytetään potentiometrien matalatasoiseen jännitteeseen. Juotos kaksi sinistä johtoa nastaan 7 ja nastaan 8, joita käytetään tilakytkimessä.

Vaihe 6:

Kuva
Kuva
Kuva
Kuva

Punainen kaapeli, jonka juotimme VCC -nastaan, on nyt juotettava yhteen ensimmäisen potentiometrin ulkotapeista. Käytä toista punaista kaapelia jatkaaksesi tätä toiseen potentiometriin. Varmista, että käytät molemmilla potentiometreillä samaa puolta, joten täysi on molemmin puolin sama. Juotos kaksi mustaa kaapelia potentiometrien toiselle puolelle ja valkoiset kaapelit nastaista A0 ja A1 keskimmäiseen tappiin. Potentiometrit toimivat asettamalla keskitapin jännite ulkoisiin nastoihin syötettyjen jännitteiden väliseen jännitteeseen, joten jos kytket korkean ja matalan jännitteen, voimme saada jännitteen keskimmäisen nastan väliin. Tämä sai potentiometrien johdotuksen valmiiksi ja niitä voidaan kääntää hieman, jotta nastat ovat poissa tieltä.

Vaihe 7:

Kuva
Kuva

Juotos musta kaapeli tilakytkimen keskitappiin ja työnnä pitkä musta kaapeli virtalähteeseen johtavan aukon läpi. Vie toinen pitkä musta kaapeli yläaukon läpi LED -valon GND: ksi.

Vaihe 8:

Kuva
Kuva

Virtalähteestä tuleva musta kaapeli on juotettu toiseen mustaan johtoon, joka on kytketty Arduinon viimeiseen vapaaseen GND -nastaan. Juotos LED -valoon johtava johto ja tilakytkimen musta johto yhteen ja lopuksi kaksi paria mustia johtoja, jotka sinulla on nyt yhdessä. Eristä juotos kutisteputkella estääksesi oikosulun säätimen sisällä.

Vaihe 9:

Kuva
Kuva

Viimeisenä vaiheena voimme nyt juottaa kaksi sinistä johtoa tilakytkimeen. Nämä kytkimet toimivat yhdistämällä keskitappi johonkin ulommasta nastasta riippuen siitä, kummalla puolella kytkin on. Koska nastat 7 ja 8 on asetettu laukaisemaan, kun ne on kytketty GND: hen, voimme käyttää kytkimen ulompia tappeja nastoille ja keskimmäistä GND: lle. Tällä tavalla yksi nastoista laukeaa aina.

Laita lopuksi punainen johto virta -aukon läpi ja juota se virtakytkimen keskimmäiseen nastaan ja laita toinen pitkä punainen johto aukon läpi LED -valoon ja juota tämä samaan virtakytkimen tappiin, johon Arduino on kytketty.

Vaihe 10:

Kuva
Kuva

Juotta virtajohdot paristopidikkeeseen ja ruuvaa pidike, joka pitää LED -valoihin johtavat kaapelit. Tämä päättää ohjaimen johdotuksen.

Vaihe 11: Valokynän kokoaminen

Koska tämän työkalun on tarkoitus olla modulaarinen ja käyttää erilaisia kyniä, tarvitsemme liitännän LED -johtoihin. Käytin halpaa 4 -terminaalista molex -liitintä, joka yleensä löytyy tietokoneen tuulettimien kaapeleista. Nämä kaapelit ovat halpoja ja helppoja saada, joten ne ovat täydellisiä.

Vaihe 12:

Kuva
Kuva
Kuva
Kuva

Kun aloitin ohjaimen kytkemisen, en tarkistanut liittimien kaapeleiden värejä, joten ne ovat hieman erilaisia, mutta helposti muistettavia. Liitin mustat johdot, virta keltaiseen, vihreä vihreään ja valkoinen siniseen, mutta voit käyttää mitä tahansa yhdistelmää, muista vain muistaa se muille kynille. Muista eristää juotetut alueet kutistuvalla putkella oikosulkujen välttämiseksi.

Vaihe 13:

Kuva
Kuva
Kuva
Kuva

Vie pitkä punainen ja pitkä vihreä lanka kynän läpi ja juota mustat johdot painikkeen toiselle puolelle ja valkoinen johto toiselle puolelle. Tällaisissa painikkeissa on neljä nastaa, joista kaksi on kytketty pareittain. Näet, mitkä nastat on kytketty, katsomalla painikkeen alaosaa, kytkettyjen parien välillä on rako. Jos painat painiketta, molemmat puolet on liitetty toiseen. Valkoinen ja yksi musta johto vedetään sitten kynän päähän painikkeen aukosta alkaen. Toinen musta kaapeli vedetään eteenpäin. Varmista, että molemmilla puolilla on riittävästi kaapelia työskennelläksesi.

Vaihe 14:

Kuva
Kuva
Kuva
Kuva

Paina nappia aukkoon ja valmistele loput kaapelit. Kaapelit on parasta juottaa LED -valoon siten, että ne ovat LED -valon keskikohtaa kohti, koska kaapelit kulkevat kynän keskikohdan läpi. Juotos punainen johto 5 V: n juotoslevyyn, musta johto GND -juotoslevyyn ja vihreä johto Din -juotoslevyyn. Jos sinulla on useampi kuin yksi LED, ensimmäisen LED -valon Dout -juotoslevy on kytketty seuraavan LEDin Diniin ja niin edelleen.

Vaihe 15:

Kuva
Kuva
Kuva
Kuva

Paina nyt kynän etuosassa olevaa painiketta ja laita tippa liimaa sen taakse pitämään se paikallaan.

Nyt sinun on vain juotettava kynän päässä olevat johdot liittimen toiselle puolelle värit huomioon ottaen.

On parasta käyttää tippaa liimaa ja teippiä kynän päässä olevien kaapeleiden irrottamiseksi, jotta ne eivät rikkoutuisi.

Vaihe 16: Esimerkkejä

Esimerkkejä
Esimerkkejä
Esimerkkejä
Esimerkkejä
Esimerkkejä
Esimerkkejä
Esimerkkejä
Esimerkkejä

Lopuksi haluan näyttää teille muutamia esimerkkejä, joissa käytin tätä työkalua. Kulmikas kynä on hyvä valaisemaan graffitin viivat ja suora kynä on hyvä piirtää ja kirjoittaa asioita ilmassa (mihin minulla on vain vähän lahjakkuutta).

Tämä on tämän työkalun päätarkoitus. Kuten näette, mahdollisuudet ovat hämmästyttäviä, jos yhdistät pitkät valotukset tähän työkaluun.

Aloita tällaisella valokuvauksella yritä käyttää kameran tukemaa pienintä ISO -asetusta ja suurta aukkoa. Hyvä tapa löytää oikeat asetukset on asettaa kamera aukko -tilaan ja sulkea aukko, kunnes kamera näyttää valotusajan, joka on suunnilleen se aika, jonka haluat piirtää kuvaan. Vaihda sitten manuaaliseen ja käytä valotusaikaa tai käytä polttimo -tilaa.

Hauskaa kokeilla näitä! Se on hämmästyttävä taidemuoto.

Lisäsin tämän ohjeen keksijöiden ja epätavallisten käyttöjen haasteeseen, joten jos pidät siitä, jätä äänestys;)

Vaihe 17: Tiedostot

Lisäsin myös malleja hihnanpitimille, jotka on tarkoitettu liimattavaksi säätimen kotelon pohjalle, jotta voit kiinnittää sen käsivarteen ja kynän pidikkeen, joka voidaan liimata kanteen, kun et tarvitse kynää kädessäsi.

Saatavilla on myös hajottimen suojuksia, joiden avulla valo voidaan tasoittaa ja estää soihdut, kun kynä osoittaa suoraan kameraan.

Suositeltava: