Obsah:

Illuminated Presents: 5 kroků (s obrázky)
Illuminated Presents: 5 kroků (s obrázky)

Video: Illuminated Presents: 5 kroků (s obrázky)

Video: Illuminated Presents: 5 kroků (s obrázky)
Video: HOW TO DRAW A CUTE CHRISTMAS SNOW GLOBE 2024, Červenec
Anonim
Osvětlené dárky
Osvětlené dárky

Doma máme dva osvětlené dárky, které se používají během vánočních svátků. Jedná se o jednoduché osvětlené dárky využívající 2barevnou červeno-zelenou LED, která náhodně mění barvu, která mizí a mizí. Zařízení je napájeno 3voltovou tlačítkovou buňkou. Ten byl důvodem tohoto projektu, protože baterie se vybíjí velmi rychle, když jsou dárky zapnuty na delší dobu.

Aby se zabránilo používání velkého množství knoflíkových baterií, navrhl jsem vlastní verzi pomocí tří dobíjecích baterií AAA. Tato verze používá RGB LED, takže je možná i modrá, ale to nebylo součástí původního návrhu. Moje verze má následující funkce:

  • Ovládání 2 se prezentuje současně pomocí jednoho mikrokontroléru PIC12F617. Software mikrokontroléru byl napsán v programovacím jazyce JAL.
  • Přítomnost zapínáte a vypínáte tlačítkem. Původní verze pro tento účel používala přepínač, ale použití tlačítka bylo jednodušší.
  • Náhodně změňte barvu dárků vyblednutím a vyblednutím červené a zelené barvy.
  • Vypněte dárky, když napětí baterie klesne pod 3,0 V. Zabráníte tím přílišnému vybití dobíjecích baterií.

Po vyblednutí jedné barvy LED dioda zůstane svítit po dobu 3 až 20 sekund. Protože jsem měl stále nepoužitou modrou LED, přidal jsem funkci, že oba balíčky zmodrají, když je doba zapnutí přesně 10 sekund. To se nestává příliš často, protože náhodný čas je generován v časovači 40 milisekund, jak bude popsáno dále.

Krok 1: Nějaká teorie o vyblednutí a vyblednutí pomocí modulace šířky pulsu

Nejlepší způsob, jak změnit jas LED, není změna proudu, který protéká LED, ale změnou času, kdy LED svítí v určitém časovém intervalu. Tento způsob ovládání jasu LED se nazývá Pulse Width Modulation (PWM), který byl na internetu již několikrát popsán, např. Wikipedie.

PIC a Arduino mají na desce speciální hardware PWM, který usnadňuje generování tohoto signálu PWM, ale často pro to mají jeden výstup, takže můžete ovládat pouze jednu LED. Pro tuto verzi jsem potřeboval ovládat 5 LED diod (2 červené, 2 zelené a 1 kombinovanou modrou), takže PWM bylo nutné provést v softwaru pomocí časovače, který generuje jak frekvenci PWM, tak pracovní cyklus PWM.

PIC12F617 má vestavěný časovač s možností automatického načtení. To znamená, že jakmile nastavíte hodnotu opětovného načtení časovače, použije tuto hodnotu pokaždé, když uplynul časový limit, a tak časovač pracuje samostatně na zadané frekvenci. Protože je pro stabilní signál PWM rozhodující načasování, časovač pracuje na základě přerušení, aniž by byl ovlivněn časem, který hlavní program potřebuje k ovládání a určení náhodného času zapnutí diod LED.

Frekvence PWM musí být dostatečně vysoká, aby se zabránilo blikání, a proto jsem zvolil frekvenci PWM 100 Hz. Pro efekt fade-in a fade-out potřebujeme změnit pracovní cyklus a tím i jas LED. Rozhodl jsem se použít krokový přírůstek 5 ke zvýšení nebo snížení jasu, aby se dosáhlo efektu zeslabení a vyblednutí, a protože časovač používá pro pracovní cyklus rozsah 0 až 255, musí časovač běžet na 255 / 5 = 51násobek normální frekvence nebo 5100 Hz. To má za následek přerušení časovače každých 196 us.

Krok 2: Mechanická práce

Mechanická práce
Mechanická práce
Mechanická práce
Mechanická práce
Mechanická práce
Mechanická práce

Na výrobu dárků jsem použil mléčný bílý akrylový plast a na zbytek instalace jsem použil MDF. Aby se zabránilo tomu, že uvidíte tvar LED v balení, když LED svítí, dal jsem na LED diodu kryt, který rozptyluje světlo z LED. Tento kryt pochází z některých starých elektronických svíček, které jsem měl, ale můžete si také vytvořit kryt pomocí stejného akrylového plastu. Na obrázcích vidíte, co jsem použil jako vybavení a materiál.

Krok 3: Elektronika

Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika

Schematický diagram ukazuje potřebné elektronické součástky. Jak již bylo zmíněno dříve, 5 LED diod je ovládáno nezávisle, kde je kombinována modrá LED. Protože PIC nemůže napájet dvě LED diody na jednom pinu portu, přidal jsem tranzistor pro ovládání kombinovaných modrých LED. Elektronika je napájena 3 dobíjecími bateriemi AAA a lze ji zapnout nebo vypnout stisknutím vypínače.

Pro tento projekt potřebujete následující elektronické součástky:

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

Obvod můžete postavit na prkénko a nevyžaduje mnoho místa, jak je vidět na obrázku. Možná se divíte, proč jsou hodnoty odporů pro ovládání maximálního proudu LED diodami tak nízké. Důvodem je nízké napájecí napětí 3,6 V v kombinaci s poklesem napětí, který má každá LED, což závisí na barvě na LED, viz také Wikepedia. Hodnoty odporu vedou k maximálnímu proudu kolem 15 mA na LED, kde je maximální proud celého systému kolem 30 mA.

Krok 4: Software

Software provádí následující úkoly:

Když je zařízení resetováno tlačítkem, zapne se zařízení, pokud bylo vypnuté, nebo vypne zařízení, pokud bylo zapnuté. Vypnuto znamená přepnutí PIC12F617 do režimu spánku, ve kterém téměř nespotřebovává žádnou energii.

Generujte signál PWM pro ovládání jasu LED diod. To se provádí pomocí časovače a rutiny služby přerušení, která ovládá piny PIC12F617, které zapínají a vypínají LED diody.

Rozsvítí a zhasne LED diody a ponechá je rozsvícené po dobu 3 až 20 sekund. Pokud se náhodný čas rovná 10 sekundám, obě LED diody se na 10 sekund rozsvítí modře, poté se použije normální červeno-zelený vzor prolínání a vyblednutí.

Během provozu bude PIC měřit napájecí napětí pomocí integrovaného převodníku analogového signálu na digitální (ADC). Když toto napětí klesne pod 3,0 V, vypne LED diody a znovu přepne PIC do režimu spánku. PIC by mohl stále fungovat dobře při 3,0 V, ale není dobré, aby se nabíjecí baterie úplně vybily.

Jak již bylo zmíněno dříve, signál PWM je vytvářen pomocí časovače, který používá rutinu služby přerušení, aby udržel stabilní signál PWM. Roztmívání a zhasínání LED diod včetně doby, kdy LED diody svítí, je řízeno hlavním programem. Tento hlavní program používá časovač 40 milisekund, odvozený od stejného časovače, který vytváří signál PWM.

Protože jsem pro tento projekt tentokrát nepoužil žádné konkrétní knihovny JAL, musel jsem vytvořit generátor náhodných hodnot pomocí posuvného registru lineární zpětné vazby pro generování náhodného času zapnutí a náhodného vypnutí LED.

Krok 5: Konečný výsledek

Image
Image
Konečný výsledek
Konečný výsledek

K dispozici jsou 2 videa, která ukazují průběžný výsledek. Moje žena ještě potřebuje změnit kostky na skutečné dárky. Jedno video ukazuje detailní záběr výsledku, kde druhé video ukazuje původní dárek, který vedl k tomuto projektu.

Jak můžete očekávat, když si myslíte, že jste hotovi, objeví se nové požadavky. Moje žena se ptala, zda se může měnit i jas LED diod poté, co jsou vybledlé. To je samozřejmě možné, protože jsem použil pouze polovinu programové paměti PIC12F617.

Připojen je zdrojový soubor JAL a soubor Intel Hex pro programování PIC. Pokud vás zajímá používání mikrokontroléru PIC s JAL - programovacím jazykem jako Pascal - navštivte webové stránky JAL.

Bavte se dělat tento návod a těšíme se na vaše reakce a výsledky.

Doporučuje: