Buzzer – Zvono u Arduinu
Želite li malo buke s Arduinom? Možda jednostavan ton alarma, možda zvučni signal koji vas upozorava kada ste ispunili uslov u vašem projektu?
U ovoj lekciji naučit ćemo koristiti zvučni signal (ili piezo zvučnik) s Arduinom, a
također ćemo naučiti i kako koristiti tone() i noTone() funkcija.
U ovoj lekciji ćemo objasniti:
- Šta je to buzzer ili zvučnik?
- Šema povezivanja i kod za kontrolu buzzera ,
- Specifikacija materijala
Šta je to buzzer ili zvučnik:
Buzzeri ili zvučnici se mogu pronaći u alarmnim uređajima, računarima, tajmerima i mnogim drugim uređajima, a najčešće imaju ulogu alarma ili upozorenja.
Što se tiče buzzera, u njemu se nalazi mala zavojnica i magnet. Kada struja poteče kroz zavojnicu, ona se magnetizira i povlači prema magnetu. Jasno nam je da će taj efekt izazvati mali “klik”. Kako se to ponavlja nekoliko hiljada puta u sekundi, “klik” postaje zvuk. Što je veći broj klikova, tj. što je veća frekvencija, to je veći zvuk.
Šema povezivanja i kod za kontrolu buzzera:
Kao što možete vidjeti na slici povezivanje Arduino Uno sa buzzerom je vrlo jednostavno.
Povežite sljedećim redoslijedom:
OUT – digitalni pin 13
GND – gnd (-)
Nakon što smo izvršili povezivanje elemenata kao na slici pređimo na programiranje.
Kao što možete vidjeti u kodu pin 13 smo koristili kao izlazni pin tj. pin koji će upravljati buzzerom.
Syntax
tone(pin, frequency)
Naš primjer:
tone(buzzer, 1000)
U slučaju da Vam je zvuk prejak možete probati ubaciti otpornik od 100Ω. Bitno je naglasiti da u slučaju pogrešnog povezivanja polariteta buzzer neće raditi.
Crvena žica obično označava plus (+) ili signal, a crna označava negativan ili minus (-).
Tone biblioteka se već nalazi u Arduino IDE te istu nije potrebno instalirati. Mi smo u našem projektu buzzer povezali na digitalni pin, čime ćemo imati uvijek isti intenzitet zvuka i uvijek ćemo istu frekvenciju koristiti. Ako bi htjeli promijeniti melodiju zvuka morali bi unijeti vremenske intervale određene frekvencije.
U ovom primjeru bez komande noTone, buzzer će imati beskonačno isti intenzitet zvuka iako smo koristili komandu delay. U slučaju da ne želimo uvijek imati isti intenzitet zvuka, tj. zelimo postići isprekidani zvuk moramo ići redoslijedom:
tone (pin, frekvencija)
delay(vrijeme trajanja)
noTone(pin)
delay(vrijeme trajanja)
Specifikacija materijala:
- 1x Arduino Uno
- 1x Breadboard
- Arduino Mini Zvučnik – Buzzer
- 2x komunikacijski kablovi
- 1x Otpornik 100Ω (po potrebi)
U ovoj lekciji naučili smo kako se koristi buzzer ili zvono koje radi uvijek istim intenzitetom. U prethodnim lekcijama naučili smo i kako se koristi uslov if. Kako bi počeli sa sve zahtjevnijim projektima u sljedećoj lekciji objasnit ćemo kako se koristi Arduino Laser transmitter modul (KY- 008) i Arduino Laser receiver modul. Kao rezultat digitalnog očitanja laserske niti (u slučaju da prekinemo optičku nit), buzzer će nam raditi kao pravi alarm sa ograničenjem trajanja.
Dodatnih detalja možete naći i na oficijelnoj Arduino stranici :
https://www.arduino.cc/reference/en/language/functions/advanced-io/tone/