Koyarwar ESP32 27/55 - Auna Nisa da Na'urar Ultrasonic | Kayan Koyon IoT na SunFounder ESP32
A cikin wannan koyawa, za mu koyi yadda ake amfani da na'urar auna nisa ta ultrasonic tare da ESP32 don auna nisa da kuma nuna sakamakon akan allo. Za mu kuma bincika yadda ake kunna buzzer lokacin da aka gano abu a cikin wani takamaiman kewayon. Wannan aikin yana nuna iyawar ESP32 microcontroller, wanda ya haɗa da damar Wi-Fi da Bluetooth, yana sa ya dace da aikace-aikacen IoT daban-daban.
A cikin wannan jagorar, za ku sami bayanin kayan aikin hardware, umarnin wayoyi, da kuma guntun lambar da za su taimaka muku aiwatar da aikin cikin nasara. Don ƙarin haske, da fatan za a koma ga bidiyon (a cikin bidiyo a 00:00).
Bayanin Hardware
Abubuwan farko na wannan aikin sun haɗa da ESP32 microcontroller, na'urar ultrasonic (HC-SR04), da buzzer. Na'urar ultrasonic ta ƙunshi manyan sassa biyu: mai watsawa wanda ke fitar da raƙuman ultrasonic da mai karɓa wanda ke sauraron raƙuman da aka mayar. Ta hanyar auna lokacin da raƙuman ke ɗauka don dawowa, za mu iya ƙididdige nisa zuwa abu.
ESP32 yana aiki a matsayin mai sarrafawa na tsakiya, yana sarrafa bayanai daga na'urar ultrasonic da sarrafa buzzer bisa ga nisan da aka auna. Buzzer zai yi sauti lokacin da nisan da aka gano ya kasance ƙasa da ƙayyadaddun iyaka, yana nuna cewa abu ya yi kusa sosai.
Cikakkun Bayanai na Datasheet
| Manufacturer | HC-SR04 |
|---|---|
| Part number | HC-SR04 |
| Logic/IO voltage | 5 V |
| Supply voltage | 5 V |
| Output current (per channel) | 16 mA |
| Peak current (per channel) | … |
| PWM frequency guidance | … |
| Input logic thresholds | … |
| Voltage drop / RDS(on) / saturation | … |
| Thermal limits | … |
| Package | … |
| Notes / variants | Measuring range: 2 cm to 400 cm |
- Tabbatar da samar da wutar lantarki mai kyau na 5 V don na'urar.
- Kiyaye hanya mai haske don raƙuman ultrasonic don guje wa tsangwama.
- Yi amfani da gajerun wayoyi don rage jinkirin sigina da hayaniya.
- Tabbatar da haɗin pin daidai don guje wa rashin fahimta.
- Gwada na'urar a wurare daban-daban don duba daidaito.
Umarnin Wayoyi

Don haɗa na'urar ultrasonic zuwa ESP32, haɗa pin VCC na na'urar zuwa pin 5V akan ESP32. Na gaba, haɗa pin GND na na'urar zuwa ɗaya daga cikin pins na ƙasa (GND) akan ESP32. Pin trigger (Trig) daga na'urar ya kamata a haɗa shi zuwa GPIO 26 akan ESP32, yayin da pin echo (Echo) ya kamata a haɗa shi zuwa GPIO 25. Wannan saitin yana ba da damar ESP32 ya aika sigina zuwa na'urar kuma ya karɓi siginar echo don ƙididdige nisa.
Don buzzer, haɗa ƙafar mai kyau (doguwa) zuwa GPIO 12 akan ESP32 da ƙafar mara kyau (gajera) zuwa GND. Tabbatar cewa duk haɗin suna da aminci don hana kowane waya mara kyau yayin aiki. Idan kuna amfani da breadboard, daidaita haɗin buzzer da kyau don guje wa kuskuren wayoyi. Tabbatar da koma ga bidiyon don tabbatar da wayoyi (a cikin bidiyo a 05:12).
Misalan Lamba & Bayani
Lambar tana fara pins don na'urar ultrasonic kuma tana saita sadarwar serial. Babban aiki, readSensorData(), shine ke da alhakin aika siginar trigger da auna lokacin amsawa daga pin echo.
const int echoPin = 25;
const int trigPin = 26;
void setup() {
Serial.begin(115200);
pinMode(echoPin, INPUT);
pinMode(trigPin, OUTPUT);
Serial.println("Ultrasonic sensor:");
}
Lambar tana ayyana echoPin da trigPin a matsayin masu ɗorewa don pins da aka haɗa zuwa na'urar ultrasonic. A cikin aikin setup(), muna fara sadarwar serial kuma mu saita yanayin pins daidai.
float readSensorData() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
unsigned long microsecond = pulseIn(echoPin, HIGH);
float distance = microsecond / 29.00 / 2;
return distance;
}
Wannan ɓangaren yana nuna aikin readSensorData(), wanda ke aika bugun 10-microsecond zuwa pin trigger. Sannan yana auna lokacin da pin echo ya ɗauka don karɓar siginar baya, ya ƙididdige nisa, kuma ya mayar da wannan ƙimar.
A ƙarshe, aikin loop yana ci gaba da karanta nisa kuma yana buga shi zuwa serial monitor. Idan nisa ya kasance ƙasa da 20 cm, buzzer za a kunna.
Nuni / Abin da za ku Yi Tsammani
Lokacin da kuke gudanar da shirin, ESP32 zai nuna nisan da aka auna a santimita akan serial monitor. Idan abu ya shiga cikin 20 cm na na'urar, buzzer zai yi sauti. Ana iya gwada wannan hali ta hanyar sanya abubuwa a nisa daban-daban a gaban na'urar. Yi hattara da jujjuyawar polarity kuma tabbatar da cewa an yi haɗin kamar yadda aka ƙayyade don guje wa kowane matsala yayin aiki (a cikin bidiyo a 08:00).
Lokutan Bidiyo
- 00:00 Fara
- 1:46 Gabatarwa ga Ultrasonic Sensor
- 6:02 Bayanin haɗin wayoyi
- 7:37 Bayanin lambar ESP32 Arduino
- 11:33 Zaɓin allon ESP32 da tashar COM a cikin Arduino IDE
- 13:15 Nunin auna nisa
- 16:43 Aikin ɗaukar mataki da nisa: buzzer
// Define pins for the ultrasonic sensor
const int echoPin = 25;
const int trigPin = 26;
// Function prototype for reading sensor data
float readSensorData();
void setup() {
// Begin serial communication at 115200 baud rate
Serial.begin(115200);
// Set echoPin as input and trigPin as output
pinMode(echoPin, INPUT);
pinMode(trigPin, OUTPUT);
// Print sensor information to the serial monitor
Serial.println("Ultrasonic sensor:");
}
void loop() {
// Read distance from the ultrasonic sensor
float distance = readSensorData();
// Print the measured distance to the serial monitor
Serial.print(distance);
Serial.println(" cm");
// Delay between readings
delay(200);
}
// Function to read data from the ultrasonic sensor
float readSensorData() {
// Trigger a low signal before sending a high signal
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Send a 10-microsecond high signal to the trigPin
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
// Return to low signal
digitalWrite(trigPin, LOW);
// Measure the duration of the high signal on the echoPin
unsigned long microsecond = pulseIn(echoPin, HIGH);
// Calculate the distance using the speed of sound (29.00µs per centimeter)
float distance = microsecond / 29.00 / 2;
// Return the calculated distance
return distance;
}
Common Course Links
Common Course Files
Abin da zaka iya bukata
-
eBay
-
BanggoodPurchase HC-SR04 Ultrasonic Sensor from Banggoodbanggood.com
Albarkatun da kuma shafukan da za a duba
-
TakarduESP32 Tutorial 27/55- SunFounder doc page for Ultrasonic distance sensordocs.sunfounder.com
-
WajeHC-SR04 Ultrasonic Library from the Arduino official websiteplayground.arduino.cc
Fayiloli📁
Babu fayiloli da ake da su.