Search Code

ESP32 Tutorijal 13/55 - Arduino bip sa aktivnim zujalicom | SunFounder-ov ESP32 IoT komplet za učenje

ESP32 Tutorijal 13/55 - Arduino bip sa aktivnim zujalicom | SunFounder-ov ESP32 IoT komplet za učenje

U ovom tutorijalu naučit ćemo kako kontrolisati aktivni zujalicu koristeći ESP32 mikrokontroler i tranzistor. Projekat uključuje uključivanje i isključivanje zujalice, stvarajući zvuk pištanja. Sa ugrađenim Wi-Fi i Bluetooth mogućnostima ESP32-a, ovaj projekat možete proširiti u složenije IoT aplikacije u budućnosti.

Komponente koje ćemo koristiti uključuju ESP32 ploču, aktivnu zujalicu, tranzistor (S8050) i otpornik. Pravilnim povezivanjem ovih komponenti, možemo kontrolisati zvuk zujalice putem ESP32-a. Dodatno, pružit ćemo kratak pregled povezivanja i koda potrebnog za pokretanje ovog projekta. Za dodatna pojašnjenja, svakako pogledajte video koji prati ovaj tutorijal (u videu na 00:00).

S87050_transistor

Objašnjenje hardvera

Glavne komponente ovog projekta uključuju ESP32 mikrokontroler, aktivnu zujalicu i S8050 tranzistor. ESP32 je moćan mikrokontroler koji posjeduje i Wi-Fi i Bluetooth, omogućavajući širok spektar IoT projekata. Aktivna zujalica generiše zvuk kada se primijeni napon, dok S8050 tranzistor djeluje kao prekidač za kontrolu zujalice pomoću niskonaponskog signala sa ESP32-a.

Tranzistor ima tri pina: kolektor, bazu i emiter. Kada se napon primijeni na bazu kroz otpornik, omogućava protok struje od kolektora do emitera, čime se napaja zujalica. Ova postavka osigurava da možemo sigurno kontrolisati zujalicu bez preopterećenja GPIO pinova ESP32-a.

ESP32-13-buzzer-schematic

Detalji iz tehničke dokumentacije

Proizvođač SunFounder
Broj dijela TMBB 12 A05
Radni napon 3–8 V
Nazivni napon 5 V
Maksimalna struja 30 mA
Frekvencija oscilovanja 2700 ± 300 Hz

 

  • Koristite otpornik od 1 kΩ da ograničite struju do baze tranzistora.
  • Provjerite da je aktivna zujalica pravilno spojena sa pozitivnim i negativnim terminalima.
  • Dvaput provjerite spojeve pinova kako biste spriječili kratke spojeve.
  • Koristite breadboard za lakše povezivanje i podešavanja.
  • Zujalica može raditi na 3.3V i 5V, ali je napajajte prema potrebama vašeg kola.

Upute za povezivanje

ESP32-13-buzzer-wriing

Da biste povezali komponente, počnite umetanjem aktivne zujalice u breadboard. Spojite pozitivni terminal zujalice na 3.3V pin na ESP32-u. Negativni terminal zujalice treba spojiti na kolektor pin S8050 tranzistora. Zatim umetnite S8050 tranzistor u breadboard, pazeći da je ravna strana okrenuta prema vama. Lijevi pin (kolektor) spaja se na negativni terminal zujalice, srednji pin (baza) spaja se na otpornik od 1 kΩ, a desni pin (emiter) spaja se na masu.

Sada uzmite drugi kraj otpornika od 1 kΩ i spojite ga na GPIO pin 14 na ESP32-u. Na kraju, spojite emiter pin tranzistora na masu (ground rail) na breadboardu. Provjerite da su svi spojevi sigurni i dvaput provjerite poravnanje pinova prije nego što uključite kolo.

Primjeri koda i objašnjenje

Evo kratkog pregleda koda koji kontroliše zujalicu. Prvo definišemo pin spojen na zujalicu:

const int buzzerPin = 14; // pin zujalice

Ova linija postavlja varijablu buzzerPin da se odnosi na pin 14 na ESP32-u, koji se koristi za kontrolu zujalice.

Zatim postavljamo pin zujalice kao izlaz u setup() funkciji:

void setup()
{
  pinMode(buzzerPin, OUTPUT); // Postavi kao izlaz
}

Ovo osigurava da ESP32 zna da koristi pin 14 za slanje signala za uključivanje i isključivanje zujalice.

U loop() funkciji, kreiramo for petlju za aktiviranje zujalice više puta:

for (int i = 0; i < 50; i++) // Petlja 50 puta i svaki put svira kratki ton
{
  digitalWrite(buzzerPin, HIGH); // Postavi na HIGH da zujalica zazvuči
  delay(3); // Čekaj 3 milisekunde
  digitalWrite(buzzerPin, LOW); // LOW za isključivanje zujalice
  delay(3); // 
}

Ova petlja će učiniti da zujalica pišti 50 puta, pri čemu svako pištanje traje 3 milisekunde. Nakon završetka petlje, slijedi pauza od 1 sekunde prije ponavljanja.

Demonstracija / Šta očekivati

Kada su povezivanje i kod pravilno postavljeni, uključivanje ESP32-a trebalo bi aktivirati zujalicu, proizvodeći niz pištanja. Ako zujalica ne zazvuči, provjerite spojeve, posebno orijentaciju tranzistora i otpornika. Provjerite da se koristi ispravan GPIO pin u kodu i da je napajanje adekvatno (u videu na 01:30).

Vremenske oznake videa

  • 00:00 Početak
  • 1:45 Uvod u program zujalice
  • 5:57 Povezivanje zujalice i S8050 tranzistora
  • 9:57 Arduino kod za ESP32 zujalicu
  • 12:52 Odabir ESP32 ploče i COM porta
  • 14:05 3.1 Demonstracija projekta zujalice

Images

ESP32-13-buzzer-wriing
ESP32-13-buzzer-wriing
ESP32-13-buzzer-schematic
ESP32-13-buzzer-schematic
SunFounder-ESP32-Lesson-13-Beep.mp4_snapshot_07.43.463
SunFounder-ESP32-Lesson-13-Beep.mp4_snapshot_07.43.463
S87050_transistor
S87050_transistor
812-ESP32 Tutorial 13/55- Arduino code for controlling buzzer
Language: 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
}

Resources & references

Files📁

Datasheet (pdf)