Building My First Robot on Wheels: The Journey So Far

in GEMS2 months ago

If you’ve been following my recent posts, you know I’ve been working toward building a robot that I like to call a "robot on wheels"—not an RC car, because the ultimate goal is to make it autonomous. This is just the first prototype as I gather the tools, materials, and skills I need for the final version.

20250117_203747.png
(I'm going to use the ESP32 Camera for this project cause it is tiny and can be fit easily and also it has the capability of mounting a camera to be the eyes of my robot)

In one of my earlier posts, I shared how I controlled a DC motor from an old DVD player using two ESP32 microcontrollers and the ESP-NOW protocol. Now, I’ve taken the next step and started assembling the physical structure of the robot.

https://peakd.com/hive-163521/@hadif66/controlling-the-cms-s76-module-with-two-esp32s-and-the-esp-now-protocol

Materials and Parts

For this prototype, I’ve collected some new components and repurposed others from old electronics:

Newly purchased items: Gears, a servo motor, and shafts.
Scavenged parts: DC motors, a motor driver from an old DVD player, and some plastic frames to serve as the chassis.
(The DC motors in the first photo is for another project which is going to be a fpv drone)

20250116_175109.JPG

20250118_024529.mp4_snapshot_03.38_[2025.01.18_03.56.09].jpg

Building the Chassis and Drive System

I started with the plastic frames, drilling two holes to mount the rear shaft. In the center of the shaft, I installed a gear that meshes with another gear connected to the DC motor. This setup ensures that the motor's rotation can efficiently transfer power to the rear wheels.

20250118_024529.mp4_snapshot_00.10_[2025.01.18_03.55.41].jpg

To address the challenge of mounting the front wheels for steering, I cut the shaft into two smaller sections—one for each front wheel. These independent shafts allow the front wheels to pivot freely. I plan to link the wheels to a steering mechanism driven by a servo motor.

20250118_024938.mp4_snapshot_00.22_[2025.01.18_03.54.35].jpg

Challenges Along the Way

Challenge 1: Powering the 12V DC Motor with PWM

The DC motor I’m using requires 12V to operate, and my motor driver (scavenged from the DVD player) has only one pair of pins for both power and PWM signals. This design is problematic because the ESP32 can’t provide both PWM control and 12V power directly.

Here’s my plan to solve this:

  • Use a 2N2222 NPN transistor as an intermediate switch.
  • The ESP32 GPIO pin will send the PWM signal to the transistor’s base through a resistor.
  • The transistor will act as a switch to control the high-current 12V supply from the battery to the motor.

This way, the motor gets its required voltage and current while still being speed-controlled via PWM from the ESP32.

Challenge 2: Steering Mechanism

The front wheels need a functional steering mechanism, which I’m building from scratch. The idea is to connect each wheel to a pivoting part controlled by a servo motor. When the servo rotates, it will move the pivots, causing the front wheels to turn in the desired direction.

Since I don’t have access to professional tools for precise cuts and mounts, I’ve had to improvise. For example, I cut down shafts to the exact sizes needed for the front wheels and used basic tools to adjust the plastic frame for proper alignment.

Next Steps

Once the steering mechanism is complete, I’ll work on integrating an old PS2 controller into the project. The controller will communicate with the master ESP32 over the ESP-NOW protocol, allowing me to remotely control the robot’s speed and direction.

Closing Thoughts

This project is shaping up to be a mix of creativity, engineering, and problem-solving. While I’m still working through some technical hurdles, every step teaches me something new about robotics and electronics. I’ll continue to share updates as the robot evolves from a simple prototype into a fully functional and potentially autonomous machine.

Stay tuned for more progress, and feel free to share your thoughts or advice in the comments!

Sort:  

Great posts, Keep up the good work brother 🙌❤️