Obsah:

Illuminated Presents: 5 krokov (s obrázkami)
Illuminated Presents: 5 krokov (s obrázkami)

Video: Illuminated Presents: 5 krokov (s obrázkami)

Video: Illuminated Presents: 5 krokov (s obrázkami)
Video: Какого числа от 1 до 31, родился человек, такая у него и вся жизнь 2024, November
Anonim
Osvetlené darčeky
Osvetlené darčeky

Doma máme dva svetelné darčeky, ktoré sa používajú počas vianočných sviatkov. Jedná sa o jednoduché osvetlené darčeky pomocou 2-farebnej červeno-zelenej diódy LED, ktorá náhodne mení farbu, ktorá sa zoslabuje a mizne. Zariadenie je napájané 3 -voltovou gombíkovou bunkou. To bol dôvod tohto projektu, pretože batéria sa vybíja veľmi rýchlo, keď sú darčeky dlhšie zapnuté.

Aby sa zabránilo použitiu veľkého množstva gombíkových batérií, navrhol som svoju vlastnú verziu s použitím troch nabíjateľných batérií AAA. Táto verzia používa RGB LED, takže je možná aj modrá, ale to nebolo súčasťou pôvodného dizajnu. Moja verzia má nasledujúce funkcie:

  • Ovládanie 2 sa prezentuje súčasne pomocou jedného mikrokontroléra PIC12F617. Softvér mikrokontroléra bol napísaný v programovacom jazyku JAL.
  • Súčasnosť zapínajte a vypínajte pomocou tlačidla. Pôvodná verzia na tento účel používala spínač, ale používanie tlačidla bolo jednoduchšie.
  • Náhodne zmeňte farbu darčekov vyblednutím a vyblednutím farieb červenej a zelenej.
  • Keď napätie batérie klesne pod 3,0 V, darčeky vypnite. Zabráni sa tým prílišnému vybitiu nabíjateľných batérií.

Po vyblednutí jednej farby zostane dióda LED zapnutá približne 3 až 20 sekúnd. Pretože som stále mal nepoužívanú modrú LED, pridal som funkciu, že oba balíky zmodrejú, keď je doba zapnutia presne 10 sekúnd. To sa nestáva veľmi často, pretože náhodný čas sa generuje v časovačoch 40 milisekúnd, ako bude popísané neskôr.

Krok 1: Trochu teórie o vyblednutí a vyblednutí pomocou modulácie šírky impulzu

Najlepší spôsob, ako zmeniť jas LED, nie je zmena prúdu, ktorý preteká LED diódou, ale zmena času, kedy je LED dióda zapnutá, v určitom časovom intervale. Tento spôsob ovládania jasu LED sa nazýva modulácia šírky impulzu (PWM), ktorá bola na internete už viackrát popísaná, napr. Wikipedia.

PIC a Arduino majú na doske špeciálny hardvér PWM, ktorý uľahčuje generovanie tohto signálu PWM, ale často na to majú jeden výstup, takže môžete ovládať iba jednu diódu LED. Pre túto verziu som potreboval ovládať 5 LED (2 červené, 2 zelené a 1 kombinované modré), takže PWM bolo potrebné vykonať v softvéri pomocou časovača, ktorý generuje frekvenciu PWM aj pracovný cyklus PWM.

PIC12F617 má vstavaný časovač s funkciami automatického nabíjania. To znamená, že akonáhle nastavíte hodnotu opätovného načítania časovača, bude túto hodnotu používať vždy, keď uplynie časový limit, a tak časovač pracuje samostatne na určenej frekvencii. Pretože načasovanie je kritické pre stabilný signál PWM, časovač pracuje na základe prerušenia, nie je ovplyvnený časom, ktorý hlavný program potrebuje na ovládanie a určenie náhodného času zapnutia diód LED.

Frekvencia PWM musí byť dostatočne vysoká, aby sa zabránilo blikaniu, a preto som vybral frekvenciu PWM 100 Hz. Na dosiahnutie efektu stmievania a stmievania potrebujeme zmeniť pracovný cyklus a tým aj jas LED diódy. Rozhodol som sa použiť krokový prírastok 5 na zvýšenie alebo zníženie jasu, aby sa dosiahol efekt stmievania a stmievania, a pretože časovač používa pre pracovný cyklus rozsah 0 až 255, časovač musí bežať na 255 / 5 = 51 -násobok normálnej frekvencie alebo 5100 Hz. Výsledkom je prerušenie časovača každých 196 nás.

Krok 2: Mechanická práca

Mechanická práca
Mechanická práca
Mechanická práca
Mechanická práca
Mechanická práca
Mechanická práca

Na výrobu darčekov som použil mliečny biely akrylový plast a na zvyšok zostavy som použil MDF. Aby sa zabránilo tomu, že uvidíte tvar diódy LED v balení, keď je dióda LED zapnutá, dal som na vrch diód LED kryt, ktorý rozptyľuje svetlo z diódy LED. Tento kryt pochádza z niektorých starých elektronických sviečok, ktoré som mal, ale kryt môžete vytvoriť aj pomocou rovnakého akrylového plastu. Na obrázkoch vidíte, čo som použil ako zariadenie a materiál.

Krok 3: Elektronika

Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika

Schematický diagram zobrazuje potrebné elektronické súčiastky. Ako už bolo spomenuté, 5 LED diód je ovládaných nezávisle od seba, kde je kombinovaná modrá LED dióda. Pretože PIC nemôže napájať dve LED diódy na jednom pine portu, pridal som tranzistor na ovládanie kombinovaných modrých LED diód. Elektronika je napájaná 3 nabíjateľnými batériami AAA a dá sa zapnúť alebo vypnúť stlačením vypínača.

Na tento projekt potrebujete nasledujúce elektronické súčiastky:

  • 1 PIC mikrokontrolér 12F617 so zásuvkou
  • 2 keramické kondenzátory: 2 * 100nF
  • Rezistory: 1 * 33k, 1 * 4k7, 2 * 68 Ohm, 4 * 22 Ohm
  • 2 RGB LED diódy, vysoký jas
  • 1 tranzistor BC557 alebo ekvivalent
  • 1 spínač s tlačidlom

Obvod môžete postaviť na doske a nevyžaduje veľa miesta, ako je vidieť na obrázku. Môžete sa čudovať, prečo sú hodnoty rezistorov na ovládanie maximálneho prúdu pomocou LED diód tak nízke. Dôvodom je nízke napájacie napätie 3,6 voltu v kombinácii s poklesom napätia, ktoré má každá LED dióda, čo závisí od farby na jednu diódu LED, pozri tiež Wikepedia. Výsledkom hodnôt odporu je maximálny prúd okolo 15 mA na LED, kde je maximálny prúd celého systému okolo 30 mA.

Krok 4: Softvér

Softvér vykonáva nasledujúce úlohy:

Keď sa zariadenie resetuje tlačidlom, zapne sa, ak bolo vypnuté, alebo vypne zariadenie, ak bolo zapnuté. Vypnuté znamená prepnutie PIC12F617 do režimu spánku, v ktorom takmer nespotrebúva žiadnu energiu.

Generujte signál PWM na ovládanie jasu diód LED. To sa vykonáva pomocou časovača a rutiny servisu prerušenia, ktorá ovláda piny PIC12F617, ktoré zapínajú a vypínajú LED diódy.

Stmievajte a zhasínajte diódy LED a nechajte ich zapnuté náhodne 3 až 20 sekúnd. Ak sa náhodný čas rovná 10 sekundám, obidve diódy LED sa na 10 sekúnd zmenia na modré, potom sa použije normálny červeno-zelený vzor stmievania a stmievania.

Počas prevádzky bude PIC merať napájacie napätie pomocou zabudovaného analógovo-digitálneho prevodníka (ADC). Akonáhle toto napätie klesne pod 3,0 V, vypne LED diódy a opäť uvedie PIC do režimu spánku. PIC môže stále fungovať dobre pri napätí 3,0 V, ale nie je dobré, aby sa nabíjacie batérie úplne vybili.

Ako bolo uvedené vyššie, signál PWM sa vytvára pomocou časovača, ktorý používa rutinu služby prerušenia na udržanie stabilného signálu PWM. Stmievanie a zhasínanie LED diód, vrátane času, kedy sú LED diódy zapnuté, je riadené hlavným programom. Tento hlavný program používa časový spínač 40 milisekúnd, odvodený od rovnakého časovača, ktorý vytvára signál PWM.

Pretože som pre tento projekt tentokrát nepoužil žiadne konkrétne knižnice JAL, musel som vytvoriť náhodný generátor pomocou posuvného registra lineárnej spätnej väzby na generovanie náhodného času zapnutia a náhodného času vypnutia diód LED.

Krok 5: Konečný výsledok

Image
Image
Konečný výsledok
Konečný výsledok

Existujú 2 videá, ktoré ukazujú priebežný výsledok. Moja žena stále potrebuje zmeniť kocky na skutočné darčeky. Jedno video ukazuje detailný záber na výsledok, kde druhé video ukazuje pôvodný darček, ktorý viedol k tomuto projektu.

Ako si môžete myslieť, keď si myslíte, že ste skončili, vyskakujú nové požiadavky. Moja žena sa pýta, či sa môže jas LED diód líšiť aj po ich vyblednutí. To je samozrejme možné, pretože som použil iba polovicu programovej pamäte PIC12F617.

Priložený je zdrojový súbor JAL a súbor Intel Hex na programovanie PIC. Ak máte záujem o používanie mikrokontroléra PIC s programovacím jazykom JAL - Pascal - navštívte webovú stránku JAL.

Bavte sa pri tvorbe tohto návodu a tešíme sa na vaše reakcie a výsledky.

Odporúča: