Arduino – gramy!

Długa cisza na blogu zostaje właśnie przerwana! Ostatnie parę miesięcy byłem mocno zaangażowane w projekty nie związane z Arduino, cały czas jaki mogłem przeznaczyć na Arduino pochłaniało prowadzenie sklepu z modułami – obsługa klientów, poszukiwania nowych dostawców, itp.

Teraz pojawiło się trochę czasu, który mogę przeznaczyć na dokumentowanie eksperymentów z Arduino, dlatego mam nadzieję, że uda mi się w najbliższym czasie dodać kilka przykładów na Starter Kicie.

Ciszo, idź precz!

Jako, że mamy przerwać ciszę, więc zacznijmy od obsługi przez Arduino tzw. buzzera – maleńkiego głośniczka zdolnego wydawać niezbyt głośne (ale jednak) dźwięki.  Zacznijmy od produktu finalnego:

Arduino buzzer from Starter Kit on Vimeo.

Buzzer jest sterowany przez Arduino, wygrywający prostą melodyjkę. Prędkość odtwarzania zależy od odczytu z fotorezystora (im jaśniej tym wolniej  gra).

Jak to jest zrobione?

Jak odczytywać wartości z fotorezystora pisałem w jednym z wcześniejszych postów. Buzzer jest pobudzany przez odpowiednie przykładanie napięcia niskiego i wysokiego. Dla bezpieczeństwa (portu wyjściowego Arduino) dokładamy rezystor 220 Ohm, aby ograniczyć prąd jaki może przez niego przejść.

Na szczęście Arduino jest open source i dzięki temu w sieci można znaleźć mnóstwo gotowych elementów. I tak kwestia odgrywania melodyjki (nutki) jest opisana w tutorialu Melody. My z niego skorzystamy i dodamy tylko element odczytu wartości napięcia  z fotorezystora i przełożenie tego na odpowiednie opóźnienie.

Jedyna modyfikacja tutorialu Melody to (poza ustawianiem początkowym w setup) linia w loop:

 tempo=analogRead(analog)/3+100;

Czyli odczyt napięcia dzielmy na 3 i dodajemy 100. Uzyskamy wartość z przedziału od 100 do 1023/3+100=441. Oryginalne tempo to było opóźnienie 300. Pozostaje do dodania schemat:

Schemat układu
Schemat układu

Dla początkujących – szczegółowe info jak podłączyć kabelki:

Fizyczne połączenia
Fizyczne połączenia

Szczegółowa lista części (Fritzing ma w podstawowej bibliotece tylko głośniczek piezo, więc on jest używany na schematach) :

Fritzing Bill of Materials

Sketch: 	buzzer.fz
Date: 	Tue Sep 29 01:11:59 2009

Arduino1      Arduino Diecimila
Breadboard1   Tiny Breadboard
J1            Piezo Speaker
R1            220 Ω Resistor
R2            10k Ω Resistor
R3            Basic Photo-Resistor (Photocell)

Shopping List

Quantity	Part

1		10k Ω Resistor
1		220 Ω Resistor
1		Arduino Diecimila
1		Basic Photo-Resistor (Photocell)
1		Piezo Speaker
1		Tiny Bre

No i na koniec – kod użyty w przykładzie: melody.pde

PS
Jak się wam podobają schematy i obrazki zrobione w Friztingu? Jak dla mnie kapitalny software do dokumentowania eksperymentów z Arduino. Polecam – sprawdźcie go.