Cashigarkani, waxaan baran doonnaa sida loo xakameeyo qalabka buunka ee firfircoon iyadoo la adeegsanayo kontoroolka ESP32 iyo transistor. Mashruucu wuxuu ku lug leeyahay shidista iyo daminta buunka, abuurista dhawaq buun ah. Iyadoo la adeegsanayo awoodaha Wi-Fi iyo Bluetooth ee ku dhex jira ESP32, waxaad mustaqbalka ballaarin kartaa mashruucan si aad uga dhigtid codsiyo IoT oo kakan.
Qaybaha aan isticmaali doonaa waxaa ka mid ah guddiga ESP32, buun firfircoon, transistor (S8050), iyo resistor. Adigoo si sax ah ugu xira qaybahan, waxaan xakameyn karnaa dhawaqa buunka iyadoo loo marayo ESP32. Intaa waxaa dheer, waxaan siin doonaa dulmar kooban oo ku saabsan xidhiidhka iyo koodhka lagama maarmaanka u ah in mashruucan la bilaabo. Si aad u hesho caddayn dheeri ah, hubi inaad daawato fiidiyowga la socda casharkan (fiidiyowga 00:00).
S87050_transistor
Qaybaha Qalabka La Sharaxay
Qaybaha ugu muhiimsan ee mashruucan waxaa ka mid ah kontoroolka ESP32, buunka firfircoon, iyo transistor-ka S8050. ESP32 waa kontorool awood badan leh oo leh Wi-Fi iyo Bluetooth labadaba, taasoo u oggolaanaysa mashruucyo IoT oo kala duwan. Buunka firfircoon wuxuu dhaliyaa dhawaq marka koronto la saaro, halka transistor-ka S8050 uu u shaqeeyo sidii fure si uu u xakameeyo buunka iyadoo la adeegsanayo signal koronto oo hooseeya oo ka yimaada ESP32.
Transistor-ku wuxuu leeyahay saddex biin: collector, base, iyo emitter. Marka koronto la saaro biinka base iyadoo loo marayo resistor, waxay u oggolaanaysaa in korontadu ka socoto collector una socoto emitter, taasoo ku shidayso buunka. Qaabkani wuxuu hubinayaa inaan si badbaado leh u xakameyn karno buunka iyada oo aan culeys lagu ridin biinanka GPIO ee ESP32.
ESP32-13-buzzer-schematic
Faahfaahinta Xogta
Soo saaraha
SunFounder
Nambarka qaybta
TMBB 12 A05
Korontada shaqada
3–8 V
Korontada la qiimeeyay
5 V
Korontada ugu badan
30 mA
Soo noqnoqoshada gariirka
2700 ± 300 Hz
Isticmaal resistor 1 kΩ si aad u xaddiddo korontada ku socota base-ka transistor-ka.
Hubi in buunka firfircoon si sax ah loogu xiro biinanka togan iyo taban.
Labo jeer hubi xidhiidhada biinanka si aad uga hortagto wareegyada gaaban.
Isticmaal guddiga breadboard si aad u fududaato xidhiidhada iyo hagaajinta.
Buunku wuxuu ku shaqeyn karaa 3.3V iyo 5V labadaba, laakiin ku shido si waafaqsan baahida wareeggaaga.
Tilmaamaha Xidhiidhka
ESP32-13-buzzer-wriing
Si aad u xidho qaybaha, ka bilow adigoo gelinaya buunka firfircoon guddiga breadboard. Ku xir biinka togan ee buunka biinka 3.3V ee ESP32. Biinka taban ee buunka waa inuu ku xirmaa biinka collector ee transistor-ka S8050. Marka xigta, geli transistor-ka S8050 guddiga breadboard, adigoo hubinaya in dhinaca fidsan uu ku soo jeedo adiga. Biinka bidix (collector) wuxuu ku xirmaa biinka taban ee buunka, biinka dhexe (base) wuxuu ku xirmaa resistor 1 kΩ, iyo biinka midig (emitter) wuxuu ku xirmaa dhulka.
Hadda, qaad dhamaadka kale ee resistor-ka 1 kΩ oo ku xir biinka GPIO 14 ee ESP32. Ugu dambayntii, ku xir biinka emitter ee transistor-ka raadka dhulka ee guddiga breadboard. Hubi in dhammaan xidhiidhada ay adag yihiin oo labo jeer hubi toosnaanta biinanka ka hor intaadan shidin wareegga.
Tusaalooyinka Koodhka & Sharaxaad
Waa kuwan dulmar kooban oo ku saabsan koodhka xakameynaya buunka. Marka hore, waxaan qeexaynaa biinka ku xiran buunka:
const int buzzerPin = 14; // biinka buunka
Sadarkan wuxuu dejinayaa doorsoome buzzerPin si uu u tixraaco biinka 14 ee ESP32, kaas oo loo isticmaalo in lagu xakameeyo buunka.
Marka xigta, waxaan u dejinaynaa biinka buunka sidii wax soo saar shaqada setup():
void setup()
{
pinMode(buzzerPin, OUTPUT); // U deji sidii wax soo saar
}
Tani waxay hubinaysaa in ESP32 uu ogaado inuu isticmaalo biinka 14 si uu u diro signals si uu u shido oo uu u damiyo buunka.
Shaqada loop(), waxaan abuuraynaa loop ah si aan u kiciyo buunka dhowr jeer:
for (int i = 0; i < 50; i++) // Loop 50 jeer oo ciyaar dhawaq gaaban mar kasta
{
digitalWrite(buzzerPin, HIGH); // U deji HIGH si buunku u dhawaaqo
delay(3); // Sug 3 milliseconds
digitalWrite(buzzerPin, LOW); // LOW si loo damiyo buunka
delay(3); //
}
Loop-kani wuxuu buunka ka dhigi doonaa inuu buunyo 50 jeer, iyadoo buun kasta uu qaadanayo 3 milliseconds. Ka dib marka loop-ka la dhammaystiro, waxaa jira 1 ilbiriqsi oo sugid ah ka hor inta aan la celin.
Muuujin / Waxa Laga Filan Karo
Marka xidhiidhka iyo koodhka si sax ah loo dejiyo, shidista ESP32 waa inay kicisaa buunka, soo saarta taxane buunyo ah. Haddii buunku uusan dhawaaqin, hubi xidhiidhada, gaar ahaan jihada transistor-ka iyo resistor-ka. Hubi in biinka GPIO saxda ah lagu isticmaalayo koodhka iyo in korontada ay ku filan tahay (fiidiyowga 01:30).
812-ESP32 Tutorial 13/55- Arduino code for controlling buzzer
Luqadda: C++
const int buzzerPin = 14; // the buzzer pin
void setup()
{
pinMode(buzzerPin, OUTPUT); // Set as output
}
void loop()
{
for (int i = 0; i < 50; i++) // Loop 50 times and play a short tone each time
{
digitalWrite(buzzerPin, HIGH); // Set to HIGH to make the buzzer sound
delay(3); // Wait for 3 milliseconds
digitalWrite(buzzerPin, LOW); // LOW to turn off the buzzer
delay(3); //
}
delay(1000); // Wait for 1s before starting the next loop
}