Szukaj kodu

Samouczek ESP32 32/55 - Ostrzeganie o odległości podczas cofania samochodu z wyświetlaczem LCD i brzęczykiem | Zestaw do nauki IoT od SunFounder

Samouczek ESP32 32/55 - Ostrzeganie o odległości podczas cofania samochodu z wyświetlaczem LCD i brzęczykiem | Zestaw do nauki IoT od SunFounder

W tym samouczku stworzymy system asystenta cofania wykorzystujący mikrokontroler ESP32, czujnik odległości ultradźwiękowy, wyświetlacz LCD i brzęczyk. Ten projekt będzie ostrzegał Cię o odległości od przeszkód podczas cofania, a częstotliwość dźwięku brzęczyka będzie się zmieniać w zależności od tego, jak blisko znajduje się przeszkoda. Nauczysz się, jak podłączyć komponenty, napisać kod i oczekiwać, że system będzie działał skutecznie w Twoim pojeździe.

Projekt asystenta cofania ESP32

Podczas implementacji tego projektu ESP32 będzie obsługiwać odczyty z czujnika oraz sterować brzęczykiem i wyświetlaczem LCD. Czujnik ultradźwiękowy zmierzy odległość do przeszkód, a brzęczyk zapewni sygnał dźwiękowy na podstawie tej odległości. Wyświetlacz LCD pokaże zmierzoną odległość, umożliwiając obserwację odczytów w czasie rzeczywistym. Aby lepiej zrozumieć konfigurację, obejrzyj wideo (na wideo w 00:00).

Wyjaśnienie sprzętu

Kluczowe komponenty w tym projekcie to mikrokontroler ESP32, czujnik odległości ultradźwiękowy, wyświetlacz LCD i brzęczyk. ESP32 to wydajny mikrokontroler z wbudowaną obsługą Wi-Fi i Bluetooth, co czyni go idealnym do projektów IoT. Czujnik ultradźwiękowy mierzy odległości, emitując fale dźwiękowe i obliczając czas potrzebny na powrót echa. Wyświetlacz LCD pokaże zmierzoną odległość, a brzęczyk zapewni sygnały dźwiękowe w zależności od bliskości.

Każdy komponent odgrywa kluczową rolę w zapewnieniu prawidłowego działania asystenta cofania. Zrozumienie, jak te części współpracują ze sobą, pomoże Ci rozwiązać wszelkie problemy, które mogą pojawić się podczas budowy. Projekt wykorzystuje moc obliczeniową ESP32 do zarządzania danymi z czujnika i skutecznego sterowania wyjściami.

Szczegóły z karty katalogowej

Producent Espressif Systems
Numer części ESP32
Napięcie logiczne/IO 3,3 V
Napięcie zasilania 5 V (maks.)
Prąd wyjściowy (na kanał) 40 mA
Prąd szczytowy (na kanał) 160 mA
Zalecana częstotliwość PWM 1 kHz - 40 kHz
Progi logiczne wejściowe 0,3 VCC (niski), 0,7 VCC (wysoki)
Spadek napięcia / RDS(on) / nasycenie 0,2 V (typ.)
Limity termiczne Temperatura pracy: -40°C do 85°C
Obudowa QFN48
Uwagi / warianty Dostępne różne moduły ESP32

 

  • Zapewnij odpowiednie zasilanie, aby uniknąć uszkodzeń.
  • Użyj rezystora z brzęczykiem, aby ograniczyć prąd.
  • Trzymaj przewody sygnałowe krótko, aby zmniejszyć zakłócenia.
  • W razie potrzeby użyj rezystorów podciągających dla wejść cyfrowych.
  • Uważaj na maksymalny zasięg czujnika ultradźwiękowego.

Instrukcje podłączenia

ESP32-32-Reversing-aid-wriing

Aby podłączyć komponenty do projektu, zacznij od podłączenia czujnika ultradźwiękowego. Podłącz pin VCC czujnika do linii zasilania 5 V, a pin GND do masy. Pin Trig powinien być podłączony do pinu 26 na ESP32, a pin Echo do pinu 25.

Schemat asystenta cofania ESP32-32

Następnie podłącz brzęczyk, łącząc jego dodatni przewód z pinem 14 na ESP32, a ujemny przewód z masą. Dla wyświetlacza LCD podłącz pin VCC do linii 5 V, a pin GND do masy. Piny SDA i SCL wyświetlacza LCD powinny być podłączone odpowiednio do pinów 21 i 22. Upewnij się, że wszystkie połączenia są pewne, aby uniknąć rozłączeń podczas pracy.

Przykłady kodu i omówienie

W kodzie znajdziesz kluczowe identyfikatory, takie jak distance, który przechowuje zmierzoną odległość z czujnika ultradźwiękowego. Ta zmienna jest aktualizowana w pętli, aby odzwierciedlać bieżącą odległość. Pin brzęczyka jest zdefiniowany jako buzzerPin, co umożliwia łatwą kontrolę jego stanu.

const int triggerPin = 26; // Pin trigger dla czujnika ultradźwiękowego
const int echoPin = 25;    // Pin echo dla czujnika ultradźwiękowego
const int buzzerPin = 14;  // Pin brzęczyka

Te stałe są zdefiniowane na początku kodu dla jasności i łatwości regulacji. Piny trigger i echo służą do komunikacji z czujnikiem ultradźwiękowym, a pin brzęczyka kontroluje wyjście dźwiękowe.

void setup() {
  pinMode(triggerPin, OUTPUT); // Ustaw pin trigger jako wyjście
  pinMode(echoPin, INPUT);      // Ustaw pin echo jako wejście
  pinMode(buzzerPin, OUTPUT);    // Ustaw pin brzęczyka jako wyjście
}

W funkcji setup() konfigurujemy tryby pinów dla czujnika ultradźwiękowego i brzęczyka. Zapewnia to, że ESP32 może poprawnie współpracować z komponentami sprzętowymi podczas pracy.

void loop() {
  distance = readDistance();  // Wywołaj funkcję do odczytu odległości
  if (distance <= 10) {
    beep(100); // Szybki sygnał dla bliskiej odległości
  } else if (distance <= 20) {
    beep(500); // Średni sygnał dla umiarkowanej odległości
  } else {
    beep(2000); // Wolny sygnał dla bezpiecznej odległości
  }
}

Funkcja loop() w sposób ciągły odczytuje odległość i dostosowuje częstotliwość dźwięku brzęczyka na podstawie wartości. Funkcja beep() jest wywoływana z różnymi interwałami w zależności od tego, jak blisko znajduje się przeszkoda.

Demonstracja / Czego się spodziewać

Po podłączeniu wszystkich elementów i wgraniu kodu można oczekiwać, że system będzie wydawać dźwięki w różnych odstępach czasu w zależności od odległości od przeszkody. Gdy odległość jest mniejsza niż 10 cm, brzęczyk będzie piszczeć szybko, natomiast odległości większe niż 50 cm spowodują wolne piszczenie. Przetestuj system, umieszczając dłoń przed czujnikiem ultradźwiękowym, aby zobaczyć zmiany w odczytach odległości i odpowiadające im tempo dźwięków (na filmie o 12:30).

Znaczniki czasu w filmie

  • 00:00 Start
  • 2:08 Wprowadzenie i dokumentacja
  • 4:12 Wyjaśnienie podłączeń
  • 13:17 Kod Arduino
  • 21:01 Wybór płyty ESP32 i portu COM w Arduino IDE
  • 22:48 Demonstracja w laboratorium
  • 24:54 Demonstracja na samochodzie

Obrazy

ESP32-32-Reversing-aid-wriing
ESP32-32-Reversing-aid-wriing
ESP32 reversing aid project
ESP32 reversing aid project
ESP32-32-Reversing-aid-schematic
ESP32-32-Reversing-aid-schematic
Brak załączonego kodu.

Rzeczy, których możesz potrzebować

Zasoby i odniesienia

Pliki📁

Plik Fritzing