
Pentru a realiza proiecte cu Arduino, nu este nevoie să aveți experiență în electronică ; trebuie doar să vă puneți pe treabă pentru a vă familiariza cu lumea respectivă și, în special, cu IDE-ul Arduino , unde lipiți codul, adică instrucțiunile pe care doriți să fie executate.
O modalitate excelentă de a îmbunătăți unele proiecte Arduino este adăugarea de sunet folosind un buzzer sau un difuzor pasiv . Sunt foarte ușor de utilizat și poți reda tot felul de sunete sau melodii.
Având în vedere acest lucru, în această postare vă vom învăța cum să redați sunete cu un Arduino și un buzzer sau difuzor pasiv , folosind un ghid pas cu pas. În plus, veți descoperi trei idei de proiecte interesante și ușor de realizat singuri și pe care le puteți pune în practică.
Ce este un buzzer și cum funcționează în Arduino?
Un buzzer sau difuzor pasiv este pur și simplu un dispozitiv care transformă un semnal electric într-o undă sonoră . Este important de menționat că acestea nu au componente electronice interne, așa că trebuie alimentate cu un semnal electric pentru a produce sunetul dorit.
Mai simplu spus, un buzzer pasiv produce un sunet atunci când primește energie. Este ideal pentru integrarea cu Arduino , deoarece permite crearea unui sunet de alertă sau notificare atunci când are loc un anumit eveniment. Utilizatorul programează apoi microcontrolerul să trimită un semnal către buzzer atunci când are loc acel eveniment, astfel încât acesta să poată emite o alertă.
Un exemplu foarte practic este atunci când folosești un senzor de temperatură și vrei să fii notificat când aceasta depășește 100 de grade Celsius . Când senzorul detectează acest nivel de temperatură, buzzerul va emite o alertă. Pe lângă acestea, există multe alte aplicații în care această componentă poate fi utilă cu Arduino. Acest lucru îți permite să-ți dezlănțui imaginația și să dezvolți tot felul de proiecte interesante.
Învață pas cu pas cum să redați sunete cu un buzzer sau un difuzor folosind Arduino
Redarea sunetelor cu un buzzer obișnuit sau un modul Arduino pasiv este mai ușoară decât pare. Trebuie doar să îl conectezi și să scrii un cod simplu în IDE-ul Arduino (deși reține că codul de bază va depinde de ceea ce dorești să obții). Arduino are două funcții principale care ajută utilizatorul să genereze cu ușurință semnale electrice pentru a le converti în sunet, totul prin oricare dintre ieșirile digitale disponibile. Aceste funcții sunt `tone()` și `noTone()`.
După cum indică și numele lor, acestea sunt responsabile pentru generarea sau oprirea semnalului tonal pe un pin:
tone(pin, frecuencia): Activa un ton de o anumită frecvență pe un pin datnoTone(pin): opriri tonul de pe ac
Este demn de remarcat faptul că, datorită funcției tone(), este posibil să se specifice durata sunetului generat:
tone(pin, frequencia, duracion): activează un ton a frecvenței și duratei determinate pe un pin dat
Totuși, trebuie să luați în considerare faptul că, datorită simplității sale, atunci când utilizați funcțiile pentru generarea tonului, există anumite limitări importante pe care le indicăm mai jos:
- Ton folosește Temporizator 2Adică, în timp ce funcționează Ieșirile PWM nu pot fi utilizate pe pinul 3 și 11 en ArduinoNano y Arduino Uno (pinii 9 și 10 pe Arduino Mega).
- Funcția tone() nu poate fi utilizată simultan pe doi pini.În aceste cazuri, trebuie să dezactivați tonul de apel utilizând funcția. notTone() înainte de a-l utiliza pe un alt pin.
- Gamele care pot fi utilizate în funcția de ton sunt de 31 Hz până la 65535 Hz.
Pentru a face explicația mult mai clară, am inclus câteva exemple simple de cod în care se aplică funcțiile specificate mai sus:
Exemplu 1
Cu acest cod pe care vi-l vom arăta, buzzerul va emite un sunet timp de 1 secundă și apoi se va opri.
Apoi, produce din nou 1 secundă și așa mai departe:
/* Program simplu pentru a emite bipuri intermitente de 1 secundă */ const int buzzer = 9; // Buzzerul este conectat la pinul 9 void setup(){ pinMode(buzzer, OUTPUT); // Pinul 9 declarat ca ieșire } void loop(){ tone(buzzer, 50); // Trimite un semnal de 1kHz către buzzer delay(1000); noTone(buzzer); // Oprește delay(1000) buzzerului; // Așteaptă o secundă și repetă bucla }
Exemplu 2
În acest al doilea caz , buzzerul sau difuzorul conectat la Pinul 9 este utilizat pentru a genera o funcție de 440Hz timp de o secundă , a o opri timp de 500ms și în final a produce un ton de 523Hz timp de 300ms.
Apoi repetați programul după o pauză de 500 ms:
const int pinBuzzer = 9; void setup() { } void loop() { //generează un ton de 440Hz timp de 1000ms tone(pinBuzzer, 440); delay(1000); //oprește tonul timp de 500ms noTone(pinBuzzer); delay(500); //generează un ton de 523Hz timp de 500ms și îl oprește timp de 500ms. tone(pinBuzzer, 523, 300); delay(500); }
Exemplu 3
Această ultimă opțiune folosește o matrice cu frecvențe parcurse secvențial pentru a efectua o baleiere care aproximează diferitele note muzicale.
Să vedem:
const int pinBuzzer = 9; const int tones[] = {261, 277, 294, 311, 330, 349, 370, 392, 415, 440, 466, 494}; const int countTones = 10; void setup() { } void loop() { for (int iTone = 0; iTone < countTones; iTone++) { tone(pinBuzzer, tones[iTone]); delay(1000); } noTone(pinBuzzer); }
Listă cu cele mai bune proiecte Arduino cu buzere pe care le poți face singur pentru exersare
Proiectele Arduino oferă un spațiu amplu pentru imaginație , permițând utilizatorilor să încorporeze diverse componente pe placă pentru a crea tot felul de lucruri. Aceasta include adăugarea de senzori, buzzere și alte elemente în scopuri specifice. Iată trei idei principale pe care le puteți dezvolta pentru a le exersa și a vă familiariza mai mult cu acest mediu.
În toate cazurile, veți avea nevoie de cel puțin o placă Arduino și un buzzer:
Alarmă sau ceasuri deșteptătoare de bază
Știai că îți poți crea propriul ceas deșteptător? Nu este atât de dificil pe cât pare. Cu ajutorul unei plăci Arduino, a unui buzzer și a altor câteva componente , poți crea acasă un ceas deșteptător care să îți spună când să te trezești sau să programezi sunete pentru anumite momente ale zilei.
Senzori cu sunet
O altă utilizare foarte interesantă a unui buzzer cu Arduino este încorporarea acestuia în dispozitive care au anumiți senzori . De exemplu, dacă creați un senzor de gaz și doriți să fiți notificat când acesta depășește o limită setată, utilizarea unui difuzor va produce un sunet atunci când se întâmplă acest lucru.
Pe lângă asta, există un alt exemplu practic în care un senzor de sunet poate fi foarte util . De exemplu, dacă vrei să detectezi apropierea obiectelor sau a persoanelor și să emiti un sunet atunci când acestea se află într-o anumită rază.
Melodist
În cele din urmă, cu un buzzer pasiv și un Arduino, puteți crea un dispozitiv care produce anumite melodii bine-cunoscute, cum ar fi cele din „Războiul Stelelor” sau „Pirații din Caraibe ” . Pentru a realiza acest lucru, trebuie să îl programați să producă diferite intensități, frecvențe și durate ale sunetului.
Prin urmare, puteți crea orice melodii doriți . În aceste cazuri, trebuie să declarați pinul 9 ca ieșire (fără a fi nevoie să-l denumiți) și apoi să utilizați structura funcției „ton (pin, frecvență, durată)”. Această structură definește cei trei parametri separați prin virgule , creând astfel tot felul de note în orice moment și pentru orice melodie. Rețineți că, dacă aveți cunoștințe muzicale, vă puteți crea propriile melodii.



















Comentariile sunt închise.