Obsah:

Wildfire: 7 krokov
Wildfire: 7 krokov

Video: Wildfire: 7 krokov

Video: Wildfire: 7 krokov
Video: ОБУЧЕНИЕ ЧПУ - УРОК 4 - ЯЗЫКИ ПРОГРАММИРОВАНИЯ / Программирование станков с ЧПУ и работа в CAD/CAM 2024, Júl
Anonim
Image
Image

Tento projekt bol inšpirovaný mystickým požiarom v Game of Thrones, zelenkavej tekutine, ktorá po zapálení explodovala v zelených plameňoch. Projekt sa zameriava na používanie LED pásov RGB SMD5050 na prispôsobenie farebných efektov. Tri sklenené objekty sú vybavené pásom šiestich RGB LED diód. Arduino Uno vytvára pre svetlá ako mihotavý vzor. RGB LED diódy sú potrebné na vytvorenie gradientného farebného vzoru od tmavozelenej cez jasne zelenú až po najjasnejšiu bielu. Jednoduchá zelená LED nestačí, potrebuje červené a modré komponenty na vytvorenie žiarivo bielej farby. Ako bonus môže tento hardvér vytvárať akékoľvek iné farby. Sklenené predmety sú potrebné na lámanie svetla a maskovanie skutočného zdroja svetla, tj. Malých, veľmi technicky vyzerajúcich pásikov RGB SMD5050 LED.

Myšlienku je možné rozšíriť na ľubovoľný počet požadovaných objektov a akékoľvek dynamické farebné schémy. Tento návod popisuje, ako som implementoval nastavenie s tromi sklenenými objektmi s nasledujúcimi farebnými schémami. Schéma požiaru je videná v úvodnom videu. Ostatné schémy sú zobrazené vo videu na stránke Krok 6 tohto návodu.

  • Požiar. Hra o tróny inšpirovala oheň ako podívanú.
  • Unicorn Attractor. Predstavenie, ktoré mizne v dúhových farbách.
  • Blikať. Náhodná zmena farby v dvoch rôznych rýchlostiach.
  • Fade. Plynulá zmena náhodných farieb v dvoch rôznych rýchlostiach.
  • Živé farby. Vyfarbite svoje objekty svetlom, ktoré jemne kmitá okolo jednej zvláštnej farby.
  • Sviečky. Nechajte svoje LED diódy napodobňovať prírodný plameň sviečky.

Nastavenie

V základnom nastavení postupujete cez šesť farebných schém jediným kliknutím na tlačidlo. Dvojité kliknutie prejde v rámci jednej farebnej schémy z jedného nastavenia do druhého, ak je k dispozícii. Farebné nastavenia je možné pridať úpravou programu Arduino.

V budúcej rozšírenej verzii bude tlačidlo nahradené doskou ESP8266, ktorá bude prepojená s webovou stránkou, ktorá bude ovládať farebné schémy. Webovú stránku je možné zase ovládať pomocou prehliadača mobilného zariadenia. To dáva oveľa väčšiu rozmanitosť pri úprave vecí:

  • nastaviť rýchlosť a smer zmeny
  • nastavte farbu pre blikajúce sviečky
  • nastavte jas a sýtosť farieb

Tento návod sa zameriava na základné nastavenie, ktoré ako používateľské rozhranie obsahuje iba tlačidlo.

Krok 1: Čo potrebujete

Čo potrebuješ
Čo potrebuješ
Čo potrebuješ
Čo potrebuješ
  • Lacný RGB LED pás, ktorý môžete nastrihať na kratšie pásy
  • Napájacia jednotka, najlepšie 12 V 1,5, ktorá je súčasťou RGB LED pásu
  • Arduino UNO alebo podobné
  • Dva ULN2803AP IC: s
  • Jednoduché stlačenie tlačidla
  • Doska na chlieb Perma-Proto
  • Drôt
  • Krabica na elektroniku
  • Niektoré sklenené predmety sa majú rozsvietiť pásmi RGB LED
  • Náradie (odizolovačka, spájkovačka, spájkovačka …)

LED pás

Kúpil som lacný LED pásik, ktorý sa skladá z nejakých 90 RGB SMD LED diód. Malá jednotka poháňa LED diódy a mení ich farbu. Jednotka je diaľkovo ovládaná a pásik môže meniť farby rôznymi spôsobmi. Ale celý pás má rovnakú farbu. Zábavné je, že pásik môžete nastrihať na malé prúžky obsahujúce v každom páse iba tri RGB žiarovky. Každý pás, bez ohľadu na to, aký je dlhý, má byť napájaný 12 V. Každá časť troch RGB LED diód má svoju vlastnú sadu odporov, ktoré sa starajú o pokles napätia pre LED diódy. Musíte poskytnúť iba 12 V a dostatok ampérov, dobre, miliampérov. Na tento projekt používam tri pásy LED pásika, v každom 6 jednotiek, a 12 V 1,0 A napájaciu jednotku. Riadiaca jednotka a diaľkový ovládač nie sú potrebné.

ULN2803AP

Jedna LED dióda potrebuje iba malý prúd. Obvykle môžete LED diódu zapáliť priamo z dátového kolíka Arduino, pokiaľ máte odpor, ktorý prepína dátový kolík 5 V na približne 3 V pre diódu. Jedna RGB LED SMD5050 LED sa však skladá z troch LED diód, červenej, žiarovky a modrej. A pre tento projekt používam pásy 6 diód LED RGB SMD5050. Jeden dátový kolík Arduino Uno ovláda 6 LED diód. Iba to by pripilo dátový kolík, ak by sila na rozsvietenie diód pochádzala z dátového kolíka. Ale takýchto dátových pinov bude celkovo deväť a to bude pre Arduino určite príliš aktuálne. Preto nastupuje ULN2803AP. ULN2803AP je integrovaný čip s 8 darlingtonovými tranzistormi. Potrebujem 9, takže používam iba dva čipy ULN2803AP. Ak teda chcem projekt rozšíriť na päť objektov, zostane mi 7 náhradných tranzistorov.

Jedna jediná dióda vo vnútri LED RGB SMD5050 odoberá 20 mA. Šesť z nich by znamenalo 120 mA. Jeden pin (jeden darlingtonový tranzistor) v ULN2803 môže potopiť 500 mA. Ale celý čip zvládne maximálne 1,44 W tepla vyrobeného prúdom. 120 mA produkuje 0,144 W. Na jeden z čipov ULN2803 dávam päť riadkov a na druhý štyri riadky. To bude 0,72 W na jednom čipe a 0,58 W na druhom čipe. Takže by som mal byť v poriadku. Použitím všetkých 8 riadkov ULN2803 s 120 mA na každom by sa čip zahrial na 1,2 W. Zahrial by sa, ale stále by to toleroval.

Jednoducho vysvetlené, LED pásik RGB SMD získava 12 V zo zdroja energie. Z LED pásika prúd z každej z troch farebných LED diód smeruje na vlastný pin v ULN2803AP a ďalej do GND. Obvod je uzavretý a LED dióda sa rozsvieti. ULN2803AP sa však zapína/vypína pomocou 5 V dátových signálov z Arduina. Tieto signály budú čerpať iba niekoľko miliampérov z Arduina.

Sklenené predmety a LED pásy

Mal som tieto podivné sklenené predmety, ktoré sú určené na čajové sviečky. Odrezal som taniere z brezovej guľatiny, aby sa na ne postavili a aby mali na čo nalepiť LED pásy. V pásoch som urobil niekoľko záhybov, aby z nich boli prstene, kde jednotlivé jednotky LED smerovali nahor. Dávajte pozor na záhyby, aby ste neprerušili čiary.

Krok 2: Pokyny pre používateľa

Zariadenie bude mať jednoduché používateľské rozhranie. Zapína sa zapojením zdroja energie do sieťovej zásuvky a začína prvou farebnou schémou, ktorou je Wildfire. Vypína sa odpojením zo zásuvky. Kliknutím na tlačidlo prejdete na ďalšiu farebnú schému. Dvojitým kliknutím postúpite pod schémami každej farebnej schémy. Implementujem nasledujúce farebné schémy:

  1. Požiar. Hra o tróny inšpirovala oheň ako podívaná, kde zelené plamene putujú od jedného skleneného predmetu k druhému. Tento efekt bude vyzerať najokázalejšie, keď sú sklenené objekty umiestnené zvisle k sebe. Realizujú sa tri rôzne čiastkové schémy s rôznym tempom plameňov.
  2. Unicorn Attractor. Predstavenie, ktoré vybledne dúhovými farbami. K vyblednutiu dochádza rotujúcim spôsobom, pretože každá farba sa pohybuje od jedného skleneného predmetu k ďalšiemu. Subchemy budú mať rôzne rýchlosti vyblednutia.
  3. Blikať. Náhodná zmena farby v dvoch rôznych rýchlostiach. Subschemes budú mať rôzne palety (iba plne sýte farby, napoly sýte farby, farby iba z polovice farebného kruhu)
  4. Fade. Plynulá zmena náhodných farieb v dvoch rôznych rýchlostiach. Podobné podskupiny ako v #3.
  5. Živé farby. Vyfarbite svoje objekty svetlom, ktoré jemne kmitá okolo jednej partikulárnej farby. Subchemy nastavia farby na červenú, oranžovú, žltú, zelenú, modrú, indigovú alebo purpurovú. Kmitanie prebieha vo vnútri 10 -stupňového sektora okolo zvolenej farby. Tri sklenené objekty majú rovnakú zvolenú farbu, ale každý predmet má svoju náhodne sa meniacu frekvenciu kmitania, aby celá zostava získala živú živú farbu.
  6. Sviečky. Nechajte svoje LED diódy napodobňovať prírodný plameň sviečky. Tri podchemiky:

    1. „čo najpokojnejší“
    2. „niekde otvorené okno“
    3. „bola temná a búrlivá noc“

Krok 3: Niekoľko slov o farbách RGB

V tejto časti diskutujem o svojom pohľade na farebný priestor RGB. Túto sekciu môžete celkom dobre preskočiť. Len uvádzam nejaké pozadie, prečo sa správam k farbám RGB LED ako ja.

RGB LED má teda iba červené, zelené a modré svetlo. Ich zmiešaním vytvoríte všetky farby, ktoré ľudské oko dokáže rozpoznať (takmer). Množstvo každej časti - červenej, zelenej alebo modrej - je v digitálnom svete zvyčajne definovaných číslom od 0 do 255. Plne nasýtená farba potrebuje, aby jedna z farebných zložiek bola nulová a jedna farebná zložka mala hodnotu 255. V tomto prípade zmysel, že v našom digitálnom svete máme iba 1530 rôznych úplne sýtych farieb.

Jeden zo spôsobov modelovania priestoru RGB je kocka. Jeden vrchol kocky je čierny. Z tohto vrcholu môžeme cestovať po červenom, modrom alebo zelenom okraji. Akýkoľvek bod v kocke je farba definovaná jej červenou, zelenou a modrou súradnicou. Cestou do najvzdialenejšieho vrcholu od čierneho vrcholu sa dostávame k bielemu vrcholu. So zameraním na šesť vrcholov okrem čierneho a bieleho môžeme vytvoriť cestu, ktorá prechádza všetkými šiestimi vrcholmi sledovaním okrajov. Každý okraj má 256 bodov alebo farieb. Každý vrchol je zdieľaný dvoma hranami, takže celkový počet bodov je 6 * 255 = 1530. Po tejto ceste sa prechádza všetkými 1530 plne sýtymi farbami vo farebnom spektre. Alebo dúha. Vrcholy predstavujú farby červenú, žltú, zelenú, azúrovú, modrú a purpurovú.

Akýkoľvek iný bod v kocke predstavuje farbu, ktorá nie je úplne nasýtená.

  • Buď je bod vo vnútri kocky, to znamená, že červená, zelená a modrá súradnica sa líšia od nuly. Uhlopriečku od čierneho vrcholu k bielemu vrcholu si predstavte ako čiaru všetkých odtieňov šedej. A všetky „nie úplne sýte farby“vo vnútri kocky miznú od úplného nasýtenia na okraji smerom k tejto uhlopriečke „nulovej sýtosti“.
  • Alebo bod leží na jednej z troch rovinných plôch kocky, ktoré sa dotýkajú čierneho vrcholu. Takúto farbu je možné považovať za úplne nasýtenú, ale stmavnutú. Čím viac ho stmavíte, tým viac stráca vnímanú sýtosť farieb.

Namiesto toho, aby sme mali šesť okrajových dráh okolo kocky popisujúcich všetky plne sýte farby, môžeme týchto 1530 farieb umiestniť do kruhu, kde máme 255 rôznych farieb v 60 -stupňovom sektore - napríklad pri vyblednutí z červenej na žltú pridaním zelenej farby.. Beh všetkými farbami vo farebnom kruhu je ako posúvanie troch farebných ovládačov, jeden po druhom, zatiaľ čo ostatné dva sú vo väčšine úplne opačných pozícií. Pretože v niektorých farebných schémach použijem farebný kruh alebo dúhové spektrum, definujem farbu (odtieň) ako bod v kruhu pomocou vlastnej stupnice 1530:

Stupnica 1530 štandardná stupnica 360

============================== červená 0 0 oranžová 128 30 žltá 256 60 zelená 512 120 tyrkysová 768 180 modrá 1024 240 indigo 1152 270 fialová 1280 300 ružová 1408 330

Táto stupnica 1530 zjednodušuje prevod farieb dúhy na hodnoty pre LED diódy RGB.

Prečo 255 farieb v každej sekcii? Prečo nie 256? 256. farba jedného sektora je prvou farbou nasledujúceho sektora. Túto farbu nemôžete spočítať dvakrát.

Napriek tomu pár slov o PWM

Typická dióda LED je navrhnutá tak, aby pri danom napätí jasne svietila. Zníženie tohto napätia môže spôsobiť zníženie jasu, ale samotná LED dióda nie je navrhnutá tak, aby bolo možné ju stmievať iba znížením napätia. Pri polovičnom napätí sa dokonca nemusí vôbec zapnúť. Namiesto toho sa stmievanie dosiahne prepnutím medzi plným a nulovým napätím. Čím rýchlejšie je prepínanie, tým menšie blikanie ľudské oko dokáže rozpoznať. Ak je dióda LED polovične zapnutá a polovične vypnutá, ľudské oko svetlo vníma, ako keby svietilo s polovičným efektom plne jasnej diódy LED. Úprava pomeru medzi časom plného účinku a časom nulového účinku je to, o čom je stmievanie LED diódy. Ide o moduláciu PWM alebo šírku impulzu.

Lacný LED pás RGB SMD, ktorý som kúpil pre tento projekt, obsahuje zariadenie, ktoré sa stará o PWM. V tomto projekte namiesto toho vytváram PWM s Arduino UNO. Farebný priestor RGB, ako je obvykle implementovaný na obrazovke počítača, je teoretická štruktúra, kde si každý predstaví každý farebný kanál s hodnotou od 0 do 255 a svietivosť kanála by lineárne sledovala hodnotu. Grafická karta počítača môže kompenzovať akúkoľvek skratku z tohto lineárneho očakávania, ktoré môžu mať skutočné LED diódy. Bez ohľadu na to, či LED diódy SMD použité v tomto projekte lineárne nasledujú použité hodnoty PWM, nie je v rozsahu tohto projektu. Hodnota PWM 255 vytvára najjasnejšie svetlo. Ale hodnota 128 nemusí byť jas vnímaný ako polovica jasu 255. A 192 nemusí byť vnímaný ako jas presne v strede 255 a 128.

Krok 4: Schémy

Schémy
Schémy

Tu uvádzam schému elektroniky. Fotografia ukazuje, ako moje spojenie vyzerá. Čipy, vodiče a tlačidlo som spájkoval na dosku proto perma. Komponenty sú zatiaľ len prepojené s drôtmi, ale nechám na vás, aby ste navrhli, ako ich zmestiť do peknej škatule a ako nakresliť vodiče k LED pásom. Ak nájdete 4 -žilový plochý kábel, použite ho, pretože jeden pásik LED potrebuje 4 vodiče. Mal som iba 3žilový plochý kábel, takže som potreboval ďalší vodič, vďaka ktorému to vyzeralo trochu škaredo.

Krok 5: Kód

Kód je napísaný pre Arduino Uno. Uno má iba 6 pinov schopných PWM, ale ja ich potrebujem 9. Používam teda špeciálnu knižnicu PWM, ktorú napísal Brett Hagman. Toto musí byť nainštalované vo vašom Arduino IDE.

wildfire.ino je hlavný súbor projektu, ktorý obsahuje funkcie setup () a loop (), ako aj niektoré ďalšie bežné funkcie pre všetky schémy.

wildfire.h je bežný hlavičkový súbor.

Rôzne súbory schém je možné prilepiť do projektu ako samostatné karty.

Krok 6: V akcii

Image
Image

Krok 7: Ďalší vývoj

  • Vymeňte rozhranie s jedným tlačidlom za ESP8266, aby ste umožnili bezdrôtový kontakt s telefónom s Androidom, kde je používateľským rozhraním webová stránka na ovládanie schém.
  • V páse ešte zostáva použiť asi 70 RGB SMD LED diód. To je 24 pásikov s 3 v každom. Ďalších 24 kanálov potrebuje nový prístup. Potrebovalo by to Arduino Mega 2560 a niekoľko ďalších čipov ULN2803AP, alternatívne dve 16 -kanálové servopohony, ktoré sa často používajú pre diódy LED.
  • Nepoužité sú tiež diaľkové ovládače pre pôvodný LED pásik, ako aj jeho prijímač. Prijímač som ešte neotvoril, ale možno by sa to dalo nejako znova použiť. Dalo by sa nechať Arduino uniesť jeho logiku a nechať ho doručiť číselné údaje do Arduina na ovládanie svetelnej show.

Odporúča: