Projekt Arduino Jak vyrobit honosné ozdoby na vánoční osvětlení

  • Joseph Goodman
  • 0
  • 1099
  • 328
reklama

Toto je další část naší výuky Arduino série a tentokrát se budeme učit a používat Pole vyrobit malou ozdobu vánočního stromu s různými blikajícími sekvencemi. To by byl ideální projekt, jak udržet děti obsazené, pokud byste je chtěli naučit základnímu pájení - stačí namontovat LED diody na kus karty a můžete získat energii ze standardní 9V baterie.

Je to také klíčová lekce v programování Arduino pro začátečníky, i když pokud to neplánujete používat jako ozdobu, rozhodně bych ji doporučil rozmělnit.

Poznámka: Toto je výuka pro začátečníky a určitě se nám nepodaří překonat žádnou novou půdu - je to? jen zařízení, které učí koncepty používání Pole a Pro smyčky vypořádat se s velké množství LED (nebo jiná výstupní zařízení).

Pokud jste to ještě neudělali, nyní by bylo vhodné sledovat spolu s dalšími články ze série:

  • Co je Arduino a co s ním můžete dělat Co je to Arduino a co s ním můžete dělat? Co je Arduino a co s ním můžete dělat? Arduino je pozoruhodné malé elektronické zařízení, ale pokud jste ho nikdy předtím nepoužívali, tak co přesně jsou a co s ním můžete dělat? ?
  • Co je Arduino Starter Kit a co obsahuje? Co je součástí sady Arduino Starter Kit? [MakeUseOf vysvětluje] Co je zahrnuto v Arduino Starter Kit? [MakeUseOf vysvětluje] Předtím jsem zde na MakeUseOf představil open-source hardware Arduino, ale budete potřebovat více než jen samotného Arduina, abyste z něj něco vytvořili a abyste mohli začít. Arduino „startovací sady“ jsou…
  • Více cool komponentů ke koupi se startovací sadou 8 Více cool komponentů pro vaše projekty Arduino 8 více cool komponentů pro vaše Arduino projekty Takže uvažujete o získání startovací sady Arduino, ale přemýšlíte, jestli budou nějaké základní LED diody a rezistory natolik, aby vás zaměstnával celý víkend? Asi ne. Zde je dalších 8…
  • Začínáme se sadou Arduino Starter Kit? Instalace ovladačů a nastavení desky a portu Začínáme se sadou Arduino Starter Kit - Instalace ovladačů a nastavení desky a portu Začínáme se sadou Arduino Starter Kit - Instalace ovladačů a nastavení desky a portu Takže jste si zakoupili sami Arduino startovací sada a možná nějaké další náhodné cool komponenty - co teď? Jak vlastně začnete s programováním této věci Arduino? Jak to nastavíte ...
  • Fritzing, bezplatný nástroj pro kreslení schémat zapojení Fritzing - konečný nástroj pro skicování elektronických projektů [Cross Platform] Fritzing - konečný nástroj pro skicování elektronických projektů [Cross Platform] Fritzing je ve skutečnosti neuvěřitelný kousek bezplatný software, který můžete použít k vytváření schémat obvodů a součástí pro použití s ​​elektronickými deskami s rychle se vyvíjejícími prototypy, jako je fantastický open-source Arduino…
  • Bližší pohled na strukturu aplikace Arduino a příklad Blink Program První kroky s Arduino: Bližší pohled na obvodovou desku & Struktura programu První kroky s Arduino: Bližší pohled na obvodovou desku a strukturu O programu Naposledy jsem vás nechal nastavit Arduino pro práci s Mac nebo Windows a nahrál jednoduchou testovací aplikaci, která blikala na palubní LED. Dnes budu vysvětlovat kód ...

Pro tento projekt budete potřebovat alespoň 8 nebo 9 LED v červené nebo zelené, odpor pro každou z nich; prkénko a některé propojovací dráty. Startovací sada od společnosti Ooomlout, kterou jsem si nedávno koupila a která je na tomto tutoriálu zobrazena, nabízí velkou hodnotu za peníze a má více LED a odporů, než jste kdy potřebovali, a také přichází s úhlednou prkénko a krabičkou Arduino, aby věci zůstaly uklidit.

Zde je poslední věc:

A video z toho v akci.

Zde je pohled na zapojení od Fritzing. Je to velmi základní - stačí připojit kladný vodič LED k pinům 2-> cokoli (až ke kolíku 13) a připojte záporné nohy k inline s odporem. Hodnota, kterou jsem zde použil, je 560 Ohmů. To je pro zapojení.

Na softwarové straně přemýšlejte o tom, jak byste mohli zapsat všechny tyto diody LED v kódu. Dalo by se to takhle:

int led1 = 2; // první LED na pinu 2 int led2 = 3; // sekunda na pin 3 // atd. atd. void loop () digitalWrite (led1, HIGH); zpoždění (100); digitalWrite (led1, LOW); zpoždění (100); digitalWrite (led2, HIGH); // atd 

Měli byste být schopni vidět, že s 9 LED diodami se to rychle unaví. Odpověď leží Pole, co když si nepamatujete naše Programování 101 o základních datových typech Základy počítačového programování 101 - Proměnné a datové typy Základy počítačového programování 101 - Proměnné a datové typy Po představení a mluvení o objektově orientovaném programování dříve a odkud pochází jeho jmenovec „Myslel jsem, že je čas, abychom prošli absolutními základy programování jiným způsobem než jazykem. Tyto… - jsou v podstatě pouze seznamy.

Syntaxe vypadá takto (umístěte ji jako první řádek v kódu):

int leds [] = 2,3,4,5,6,7,8,9,10;

Hranaté závorky označují, že? proměnná bude Pole. Kudrnaté složené závorky uzavírají seznam čísel pinů, které naše pole bude držet.

Nyní, abychom mohli použít pole, musíme ji adresovat indexovým číslem. index začíná na 0, a vždy proto půjde až o 1 méně, než je celkový počet věcí v něm (takže s 9 položkami by poslední položka měla index 8).

Píšete to takto:

leds [0]

Který v našem případě by získal číslo 2, protože to je to, co je v indexu 0 v našem poli.

Po tak daleko? Skvělý. To samo o sobě pro nás však nestačí - potřebujeme také nějaký způsob, jak iterovat každý prvek našeho pole LED. K tomu použijeme pro smyčku. Syntaxe, která se má provést, je následující:

pro (počáteční proměnná; podmínka, za níž se opakujeme znovu; změna na proměnnou každou iteraci)

Například:

pro (int i = 0; i<9; i++)

Což říká

  • začněte tuto smyčku s proměnnou, i, který má hodnotu nula
  • pokračovat v opakování, pouze když jsem méně než 9?(tak: 0,1,2,3,4,5,6,7,8)
  • pokaždé, přidat 1 k i (i ++ je krátký způsob, jak říci i = i + 1)

Takže v podstatě se smyčka bude opakovat tolikrát, kolikrát máme LED, a pokaždé, když se opakuje, budeme mít proměnnou, i, které můžeme použít, jak se nám však líbí.

Tuto strukturu začneme používat dvakrát. Jakmile je uvnitř funkce nastavení, aby se všechny naše kolíky přepnuly ​​do výstupního režimu, například:

void setup () for (int i = 0; i< 9;i++) pinMode(leds[i],OUTPUT);  

Vidíš, co jsme tam udělali? Namísto psaní 9 řádků kódu pro deklarování každého jednotlivého pin jako výstupu, vytvoříme smyčku „for“, která se opakuje 9krát, pokaždé, když nastavíme jiný pin.

Nyní byste měli být schopni vidět, jak bychom mohli udělat totéž v hlavní programové smyčce a postupně zapínat každou LED diodu:

void loop () for (int i = 0; i< 9;i++) digitalWrite(leds[i],HIGH); delay(100); digitalWrite(leds[i],LOW);  

Zkus to. Zde si můžete stáhnout celý kód pro dnešní projekt, pokud jej raději znovu nevypíšete (i když vás doporučuji, protože to pomáhá procesu učení).

Dobře, takže teď máme docela nudnou světelnou sekvenci. Naprogramujme další. Jen pro zábavu, udělejme to úplně náhodně. Nahraďte kód hlavní smyčky tímto:

void loop () int randomLed = random (0,8); digitalWrite (leds [randomLed], HIGH); zpoždění (50); randomLed = náhodný (0,8); digitalWrite (leds [randomLed], LOW); 

Namísto použití smyčky „for“ pro iteraci přes každou LED, místo toho vybereme náhodné číslo od 0 do 9 a blikneme na.

Nechám to tam dnes, protože teď byste měli být vyzbrojeni dostatečnými znalostmi, abyste mohli naprogramovat všechny nové sekvence a experimentovat se smyčkami. Abych dokázal, jak je to snadné, vyzval jsem svou ženu, aby vymyslela sekvenci, kterou by ráda viděla, a pak jsem se dostala?ji naprogramovat sama, pouze kód a lekce, které jste dosud měli. Přišla s tím, takže uvidíme, jestli to dokážete u domácích úkolů!

Dotazy, návrhy, problémy - prosím kontaktujte nás v komentářích.




Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.

O moderní technologii, jednoduché a cenově dostupné.
Váš průvodce ve světě moderních technologií. Naučte se, jak používat technologie a pomůcky, které nás každý den obklopují, a naučte se, jak objevovat na internetu zajímavé věci.