ESP32 - Auto
Een van de leukste projecten om mee te beginnen als u net start met de ESP32, is het maken van een robotauto. In deze handleiding leert u hoe u een robotauto bouwt met de ESP32 en deze bestuurt met een IR-afstandsbediening (infrarood). Wilt u de robotauto via Web (WiFi) bedienen, bekijk dan de tutorial ESP32 controls Car via Web.

Hardware Vereist
Of u kunt de volgende kits kopen:
| 1 | × | DIYables Sensorkit (30 sensoren/displays) | |
| 1 | × | DIYables Sensorkit (18 sensoren/displays) |
Over de Robotauto
In de context van de ESP32 wordt de robotauto vaak met verschillende namen aangeduid zoals robotauto, RC-auto, afstandsbediening auto, slimme auto of doe-het-zelf auto. Deze kan draadloos worden bestuurd zonder snoeren. U kunt hiervoor een speciale afstandsbediening gebruiken die infraroodlicht zendt, of een smartphone-app via Bluetooth of WiFi. De robotauto kan naar links, rechts, vooruit en achteruit bewegen.
Een 2WD (Two-Wheel Drive) auto voor ESP32 is een klein robotvoertuig dat u bouwt en bestuurt met een ESP32-board. Het bestaat doorgaans uit de volgende onderdelen:
- Chassis: De basis of het frame van de auto waarop alle andere componenten worden gemonteerd.
- Wielen: Twee wielen die de auto laten rijden. Ze zijn gekoppeld aan twee DC-motoren.
- Motoren: Twee DC-motoren die de wielen aandrijven.
- Motor Driver: De motor driver board is een essentieel onderdeel dat de verbinding vormt tussen de ESP32 en de motoren. Het ontvangt signalen van de ESP32 en levert de benodigde stroom en sturing aan de motoren.
- ESP32 Board: Het "brein" van de auto. Het leest input van sensoren en gebruikerscommando’s uit en bestuurt de motoren dienovereenkomstig.
- Stroomvoorziening: De 2WD auto heeft een stroombron nodig, meestal batterijen in een houder, om de motoren en het ESP32-board van stroom te voorzien.
- Draadloze ontvanger: een infrarood, Bluetooth of WiFi-module voor draadloze communicatie met een afstandsbediening of smartphone.
- Optionele componenten: Afhankelijk van de complexiteit van uw project kunt u extra componenten toevoegen zoals sensoren (bijvoorbeeld ultrasone sensoren voor obstakelvermijding, lijnvolgsensoren) enzovoorts.
In deze handleiding maken we het eenvoudig met:
- 2WD Auto kit (inclusief chassis, wielen, motoren, batterijhouder)
- L298N Motor Driver
- IR infrarood kit (inclusief IR-controller en IR-ontvanger)
Controleer de hardwarelijst bovenaan deze pagina.
Hoe Het Werkt

- De ESP32 is verbonden met de DC motoren van de robotauto via de L298N motor driver module.
- De ESP32 is verbonden met een IR-ontvanger.
- De batterij voorziet de ESP32, DC motoren, motor driver en IR-ontvanger van stroom.
- De gebruiker drukt op de UP/DOWN/LEFT/RIGHT/OK knoppen van de IR-afstandsbediening.
- De ESP32 ontvangt de UP/DOWN/LEFT/RIGHT/OK opdrachten via de IR-ontvanger.
- De ESP32 bestuurt de auto om VOORUIT/ACHTERUIT/RECHTS/LINKS/STOP te rijden door de DC motor te sturen via de motor driver.
Bedradingsschema

This image is created using Fritzing. Click to enlarge image

Meestal zijn er twee stroombronnen nodig:
- Één voor de motor (indirect via de L298N module).
- Één voor het ESP32-board, de L298N module en de IR-ontvanger.
Er is echter een manier om dit te vereenvoudigen door alles met één stroombron te voeden. Dit bereikt u door vier 1.5V batterijen te gebruiken (totaal 6V). Zo doet u dat:
- Sluit de batterijen aan op de L298N-module zoals getoond in het schema.
- Verwijder twee jumpers die de ENA en ENB pinnen verbinden met 5 volt op de L298N-module.
- Plaats een jumper genaamd 5VEN, deze is geel weergegeven in het schema.
- Verbind de 12V pin op de schroefklem van de L298N-module met de Vin pin van het ESP32-board. Zo krijgt de ESP32 stroom direct van de batterijen (6V).
ESP32 Code
Snelstartstappen
- Is dit de eerste keer dat u de ESP32 gebruikt? Bekijk dan hoe u de ESP32 ontwikkelomgeving opzet in Arduino IDE.
- Installeer de DIYables_IRcontroller bibliotheek in Arduino IDE volgens deze instructies.
- Maak de bedrading volgens het bovenstaande schema.
- Ontkoppel de draad van de Vin-pin op de ESP32, want we voeden de ESP32 tijdens het uploaden via de USB-kabel.
- Draai de auto ondersteboven zodat de wielen bovenaan zijn.
- Verbind het ESP32-board met uw PC via een micro USB-kabel.
- Open Arduino IDE op uw PC.
- Selecteer het juiste ESP32-board (bijvoorbeeld ESP32 Dev Module) en de juiste COM-poort.
- Kopieer de meegeleverde code en open deze in Arduino IDE.
- Klik op de Upload-knop om de code naar de ESP32 te sturen.
- Gebruik de IR-afstandsbediening om de auto vooruit, achteruit, links, rechts te laten rijden of te laten stoppen.
- Controleer of de wielen correct reageren op uw commando’s.
- Bewegen de wielen verkeerdom? Wissel dan de draden van de DC motor op de L298N-module om.
- U kunt de uitvoer ook volgen in de Seriële Monitor van Arduino IDE.
- Als alles naar wens werkt, trek dan de USB-kabel uit de ESP32 en sluit het draadje weer aan op de Vin 5V-pin. Hierdoor wordt de ESP32 via batterij gevoed.
- Zet de auto weer terug in de normale positie met de wielen op de grond.
- Veel plezier met het besturen van uw auto!
Code Uitleg
Lees de uitleg regel voor regel in de commentaarregels van de code!
U kunt meer leren over de code via deze tutorials:
- ESP32 - Infrarood Afstandsbediening tutorial
- ESP32 - DC motor tutorial
U kunt dit project uitbreiden door:
- Obstakelvermijdingssensoren toe te voegen om direct te stoppen als er een obstakel wordt gedetecteerd.
- Functionaliteit toe te voegen om de snelheid van de auto te regelen (zie ESP32 - DC motor tutorial). De geleverde code bestuurt de auto op maximale snelheid.
Video Tutorial
We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.
Bekijk onze video-tutorial voor een visuele begeleiding bij dit project! De video biedt extra inzichten en laat stap voor stap zien hoe u de ESP32 2WD auto bouwt en bestuurt met een IR-afstandsbediening.