CE432 2022 Fall
Lab 3
Name:
Braden Morrow
Email: bdmorrow@fortlewis.edu

1. Lab 3 - Video Streaming Web Server and Robot Car

2. Introduction
The purpose of this tutorial was to stream a live video feed to the web server, get data from a sensor to output to the web server, and control a robot car using the ESP-32 Cam via the web server.

3. Results

Task 1:
This task asked us to have the ESP-32 Cam stream a live video feed to the web server. The code for this task is in the Tutorial3 -> task1 folder.


Figure 1. Results from ESP-32 Cam Live Video Feed

Task 2:
This task asked us to have the ESP-32 Cam stream a live video feed to the web server while outputting results from reading a BMP180 sensor. The code for this task is in the Tutorial3 -> task2 folder.
 

Figure 2. Results from ESP-32 Cam Live Video Feed with Sensor Input

Task 3:
This task asked us to have the ESP-32 Cam wired on a proto-board to control a robot car. Figure 3 shows the wired car, the video showing the car working is shown in Task 4. The code for this task is in the Tutorial3 -> task3 folder.


Figure 3. Results from ESP-32 Cam Proto-Board Soldering

Task 4:
This task asked us to have the ESP-32 Cam  controlled robot car accelrate slowly as the buttons were pushed, and rotating the video feed so it was the right side up on the monitor. Figure 4 shows the car driving with an acceleration function built in and the video feed flipped to teh correct orientation. The code for this task is in the Tutorial3 -> task3 folder.

Figure 4. Results from ESP-32 Cam Controlled Robot Car


5. Discussion

This was a good lesson in the ESP32-CAM's advanced functionality. Controlling the robot car via a web server was awesome and coming up with an acceleration function for DC motors without PWM pins was a good challenge. This was also a good chance to refresh our soldering skills so we didn't end up burning out a voltage controller or the ESP-32 Cam itself.