Zujalica i zvučnik

Aktivna i pasivna zujalica i zvučnik: kako nastaje zvuk, kako ih razlikovati, tone() na Arduinu, melodija i zašto zvučnik treba tranzistor ili pojačalo.

Zvuk
Pet crnih okruglih zujalica s dvije nožice, dvije okrenute naopako, jedna zalivena crnom masom, a druga sa zelenom pločicom, i mali zvučnik iz kojeg izlaze narančasti zvučni valovi

Kako nastaje zvuk?

Zvuk je titranje zraka. Kad tanka pločica brzo titra naprijed-natrag, gura zrak, a titraji zraka stignu do našeg uha. Što pločica titra brže, to je ton viši. Broj titraja u jednoj sekundi zove se frekvencija i mjeri se u hercima (Hz). Ton od 440 Hz znači 440 titraja u sekundi. Ljudsko uho čuje otprilike od 20 Hz do 20 000 Hz.

Zujalica i zvučnik pretvaraju električnu struju u takvo titranje:

  • Zujalica je mala, glasna i jednostavna. Dobra je za kratke zvukove: pištanje, upozorenje, jednostavnu melodiju.
  • Zvučnik je veći i može svirati glazbu i govor, ali mu treba mnogo više struje.

Aktivna i pasivna zujalica

Zujalice izgledaju gotovo isto, a rade različito. To je najčešća zabuna s njima:

  • Aktivna zujalica u sebi ima mali sklop koji sam proizvodi ton. Kad dobije napon, zuji, uvijek istim tonom.
  • Pasivna zujalica nema taj sklop. Kad dobije stalan napon, samo jednom klikne. Da bi svirala, napon se mora vrlo brzo paliti i gasiti, a to, na primjer, radi Arduino. Zato može svirati bilo koji ton i melodiju.
Lijevo aktivna zujalica sa strane i odozdo: crni valjak s oznakom plus i dvije nožice, od kojih je lijeva dulja, a odozdo zalivena crnom masom. Do nje pasivna zujalica, malo niža, a odozdo se vidi zelena pločica sa sklopom. U sredini mali zvučnik od 8 oma sa strane: papirnati stožac, magnet i dvije žice. Desno simboli zujalice i zvučnika

Kako ih razlikovati:

  • Odozdo: aktivna je zalivena crnom masom, a kod pasivne se vidi zelena pločica.
  • Visina: aktivna je obično malo viša.
  • Multimetrom: na mjerenju otpora pasivna zujalica pokaže mali otpor, desetak do nekoliko desetaka oma, jer je u njoj samo zavojnica. Aktivna pokaže mnogo veći ili nestalan broj, jer je u njoj sklop.

Obje imaju plus i minus. Nožica + je dulja, a oznaka + je i na gornjoj strani kućišta.

Na simbolu zujalica je polukrug na crti, a zvučnik mali pravokutnik s ljevkom.

Što je u zujalici?

Magnetska zujalica prerezana po sredini. Brojevi: 1 otvor na vrhu kućišta, 2 metalna membrana sa željeznim diskom u sredini, 3 zavojnica oko željezne jezgre, 4 magnet u obliku prstena, 5 pločica sa sklopom na dnu, 6 nožice
  1. Otvor kroz koji izlazi zvuk.
  2. Metalna membrana: tanka okrugla pločica sa željeznim diskom u sredini. Ona titra.
  3. Zavojnica: tanka bakrena žica namotana oko željezne jezgre. Kad kroz nju teče struja, postane elektromagnet i privuče membranu.
  4. Magnet u obliku prstena, na kojem leži membrana. Stalno je malo privlači, pa membrana jače titra.
  5. Sklop koji pali i gasi struju kroz zavojnicu. Ima ga samo aktivna zujalica.
  6. Nožice.

Kad struja poteče, zavojnica privuče membranu. Kad struja stane, membrana skoči natrag. Ako se to ponavlja 2000 puta u sekundi, membrana titra 2000 puta u sekundi i čujemo ton od 2000 Hz. Postoje i piezo zujalice, u kojima nema zavojnice: tanka keramička pločica sama se savije kad dobije napon.

Zvučnik radi slično, samo je sve veće: zavojnica je zalijepljena na papirnati ili plastični stožac i sjedi u procjepu snažnog magneta. Veći stožac gura više zraka, pa je zvuk glasniji i puniji.

Gdje ih koristimo?

  • Na micro:bit radionici zvukove sviraju blokovi iz kategorije Music. Micro:bit V2 ima ugrađeni zvučnik, a robot Maqueen i svoju zujalicu.
  • Na Arduino radionici aktivna zujalica javlja pješacima zeleno u lekciji Semafor za automobile i pješake i daje zvukove u Igri reakcije.
  • U projektu Sound Lab Arduino stvara zvuk, a pojačalo LM386 pokreće zvučnik. Fliper svira kroz zvučnike modulom DFPlayer.

Zujalice su glasne

Zujalicu ne drži uz uho. Kad u učionici zuji mnogo zujalica odjednom, preko otvora zalijepi komadić ljepljive trake, a dok mijenjaš program, izvuci njezinu žicu iz pina.

Zujalica i zvučnik na Arduino radionici

Od ovog mjesta stranica je za Arduino radionicu.

Naredba tone()

tone(pin, frekvencija) pali i gasi pin zadani broj puta u sekundi, sve dok ga noTone(pin) ne zaustavi. tone(pin, frekvencija, trajanje) sam stane nakon zadanog broja milisekundi. Graf pokazuje napon na pinu D8 s 440 Hz i s 880 Hz:

Dva grafa napona na D8 kroz 10 ms. Gore 440 Hz: pin je 1,14 ms na 5 V i 1,14 ms na 0 V, a jedan titraj traje 2,27 ms. Dolje 880 Hz: dvostruko brže, jedan titraj traje 1,14 ms
Jedan titraj od 440 Hz traje 1 / 440 s = 2,27 ms: pola tog vremena pin je HIGH, a pola LOW. Ton od 880 Hz titra dvostruko brže i zvuči za oktavu više.

Što još treba znati o tone():

  • tone() zvuk samo pokrene i ne čeka da završi. Ako pozoveš drugi tone() prije nego što prvi završi, novi zamijeni stari, kao u Igri reakcije. Arduino Uno svira samo jedan ton odjednom.
  • Na Unu tone() koristi brojač vremena Timer2, pa dok zvuk svira, analogWrite() ne radi na pinovima 3 i 11.

Zvuk tipki na telefonu

Kad na telefonu pritisneš tipku, čuješ kratki zvuk. To je tonsko biranje (engleski DTMF): svaka tipka svira dva tona odjednom, jedan za svoj red i jedan za svoj stupac na tipkovnici. Telefonska centrala iz ta dva tona zna koju si tipku pritisnuo. Dva tona umjesto jednoga biraju se zato da govor ili glazba u slušalici ne bi slučajno birali broj.

1209 Hz1336 Hz1477 Hz
697 Hz123
770 Hz456
852 Hz789
941 Hz*0#

Tipka 5, na primjer, svira 770 Hz i 1336 Hz istodobno. Postoji i četvrti stupac, 1633 Hz, za tipke A, B, C i D, koje obični telefoni nemaju. Isti tonovi i danas putuju kad ti automatska poruka kaže za informacije pritisnite 1. Arduino Uno s tone() svira samo jedan ton odjednom, pa zvuk telefonske tipke ne može odsvirati.

Aktivna zujalica i tone()

Aktivna zujalica sama zuji svojim tonom. Kad je tone() pali i gasi, čujemo mješavinu njezina tona i tona koji smo zadali. Zato je zvuk hrapav, kao na pješačkom semaforu. Za prave tonove i melodije treba pasivna zujalica.

Program: melodija

Pasivnu zujalicu spoji na D8 preko otpornika od 150 Ω, a drugu nožicu na GND. Njezina zavojnica ima mali otpor, pa bez otpornika pin ne bi preživio. Sa 150 Ω struja je najviše 5 V / 150 Ω ≈ 33 mA, kolik god bio otpor zavojnice. To je ispod 40 mA, koliko pin najviše smije dati, a budući da je pin pola vremena LOW, u prosjeku teče upola manje.

// C++
const int zujalica = 8;                // pasivna zujalica (ili zvučnik preko tranzistora)

// Oda radosti: visina svakog tona (Hz) i koliko traje (ms)
const int tonovi[] = {330, 330, 349, 392, 392, 349, 330, 294,
                      262, 262, 294, 330, 330, 294, 294};
const int trajanja[] = {400, 400, 400, 400, 400, 400, 400, 400,
                        400, 400, 400, 400, 600, 200, 800};
const int BROJ_TONOVA = sizeof(tonovi) / sizeof(tonovi[0]);

void setup() {
  pinMode(zujalica, OUTPUT);
}

void loop() {
  for (int i = 0; i < BROJ_TONOVA; i++) {
    tone(zujalica, tonovi[i], trajanja[i] * 9 / 10);  // ton je malo kraći, pa se tonovi ne stapaju
    delay(trajanja[i]);                               // tone() ne čeka, zato čekamo mi
  }
  delay(2000);                         // stanka prije ponavljanja
}

Tonovi su u nizu tonovi, a njihova trajanja u nizu trajanja, na istim mjestima. Petlja for svira jedan po jedan. Ton traje 90 % svog vremena, pa između dva ista tona ostane kratka tišina i čujemo ih odvojeno. Tonovi su redom E, E, F, G, G, F, E, D, C, C, D, E, E, D, D: početak Ode radosti.

Tonovi i frekvencije

Svaki ton ljestvice ima svoju frekvenciju. Ton A, prema kojem glazbenici štimaju instrumente, ima točno 440 Hz. Tablica pokazuje tonove C-dura u tri oktave, zaokružene na cijele herce, kakve traži tone(). Brojevi su u hercima. U hrvatskom se sedmi ton zove H, a u engleskom B.

CDEFGAHC
oktava niže131147165175196220247262
srednja oktava262294330349392440494523
oktava više5235876596987848809881047
Klavijatura od tri oktave, od C sa 131 Hz do C sa 1047 Hz, s frekvencijom na svakoj bijeloj tipki. Srednja oktava je žuta, a srednji C ima narančastu točku. Iznad klavijature je crtovlje s violinskim i bas ključem, a iznad svake bijele tipke njezina nota: note se penju s tonovima, srednji C je na pomoćnoj crti ispod violinskog ključa, a note C su narančaste. Na crnoj tipki iza srednjeg C piše 277

Na crtežu je iznad svake bijele tipke njezina nota u crtovlju, s violinskim ključem gore i bas ključem dolje. Prvi C srednje oktave (262 Hz) zove se srednji C i nalazi se otprilike na sredini klavira. Pogledaj tonove A: 220, 440 i 880 Hz. Ton za oktavu viši ima dvostruko veću frekvenciju, a ton za oktavu niži upola manju. Između nekih tonova su i polutonovi, crne tipke na klaviru, kao Cis (277 Hz) između C i D. Svaki polutonski korak povisi frekvenciju za oko 6 %.

Program iz ovog odjeljka svira tonove srednje oktave: 262 je C, 294 D, 330 E, 349 F, a 392 G.

Zvučnik treba tranzistor ili pojačalo

Mali zvučnik ima otpor od 8 Ω. Izravno na pinu povukao bi 5 V / 8 Ω ≈ 625 mA, tridesetak puta više nego što pin smije dati (zabluda 25). Zato zvučnik pali tranzistor:

Shema: pin D8 preko otpornika od 1 kΩ na bazu tranzistora 2N2222. Od +5 V zvučnik od 8 oma i otpornik od 47 oma u nizu idu na kolektor, a emiter je na masi. Dioda 1N4007 spojena je preko zvučnika, katodom prema +5 V. Dok je D8 HIGH, kroz zvučnik teče 87 mA

  • Pin daje u bazu samo 4,3 mA, a kroz zvučnik teče 87 mA iz napajanja od 5 V.
  • Otpornik od 47 Ω ograničava struju. Bez njega bi kroz zvučnik teklo 600 mA i on bi dobivao oko 1,4 W, previše za mali zvučnik od 0,5 W. S njim zvučnik dobiva 0,03 W, a otpornik 0,18 W, što otpornik od 0,25 W podnosi.
  • Dioda je tu jer je zvučnik zavojnica. Kad tranzistor isključi struju, zavojnica na trenutak napravi visok napon, a dioda ga ugasi. Zašto, objašnjava stranica Dioda.

Tranzistor zvučnik samo pali i gasi, pa zvuk ima isti oštar oblik kao signal na grafu iznad. Za glazbu i govor treba pojačalo, koje pojača i blage promjene napona. Takvo je LM386 u projektu Sound Lab. Modul DFPlayer, koji svira MP3 datoteke s memorijske kartice, ima pojačalo ugrađeno, pa mali zvučnik spajamo izravno na njega.

Što smo naučili?

  • Zvuk je titranje zraka. Frekvencija u hercima kaže koliko titraja ima u sekundi: veća frekvencija je viši ton.
  • Aktivna zujalica sama zuji jednim tonom. Pasivna treba signal koji se pali i gasi, a zauzvrat svira bilo koji ton.
  • Aktivnu zujalicu prepoznaješ po crnoj masi odozdo, a pasivnu po zelenoj pločici.
  • tone(pin, frekvencija, trajanje) ne čeka da zvuk završi, a Uno svira jedan ton odjednom.
  • Zvučnik ne spajamo izravno na pin, nego preko tranzistora ili pojačala.

Mali kviz

1. Koliko puta u sekundi titra membrana koja svira ton od 1000 Hz?
1000 puta. Herc znači jedan titraj u sekundi.
2. Zujalica je na pinu preko otpornika od 150 Ω. Kad pin staviš na HIGH, zujalica samo klikne. Kakva je?
Pasivna. Ona nema sklop koji sam stvara ton, pa joj Arduino mora slati signal koji se pali i gasi, na primjer s tone().
3. Kako zujalice razlikuješ bez programa?
Pogledaj ih odozdo. Aktivna je zalivena crnom masom, a kod pasivne se vidi zelena pločica sa sklopom. Aktivna je obično i malo viša. Multimetar na pasivnoj pokaže mali otpor zavojnice.
4. Koliko traje jedan titraj tona od 500 Hz i koliko je od toga pin HIGH?
1 / 500 s = 2 ms. Pin je 1 ms HIGH i 1 ms LOW.
5. Program zove tone(8, 400, 100), a odmah zatim tone(8, 800, 100). Što čujemo?
Samo ton od 800 Hz. tone() ne čeka da prvi zvuk završi, pa ga drugi poziv odmah zamijeni. Između njih treba delay(100).
6. Zašto zvučnik od 8 Ω ne spajamo izravno na pin Arduina?
Povukao bi oko 625 mA, a pin smije dati oko 20 mA. Pin bi se oštetio. Zvučnik spajamo preko tranzistora ili pojačala, a struju dobiva iz napajanja.