How to Build a Remote-Controlled Car with a Dual Motor System

Building Remote-Controlled Cars / Visits:4

The thrill of controlling a powerful, agile machine with your fingertips never gets old. While many hobbyists start with pre-built RC cars, there’s an unparalleled satisfaction in building one from the ground up, especially when you incorporate precision engineering. Today, we’re diving deep into constructing a nimble, responsive remote-controlled car powered by a dual motor system for drive and a micro servo motor for expert steering control. This combination unlocks a new level of performance and is a fantastic project for intermediate makers looking to understand the marriage of power and precision.

Why a Dual Motor System with a Micro Servo?

Before we turn a single screw, let's understand the "why." A standard single-motor car often uses a differential and a simple servo for steering. Our build is different.

  • Dual Motors for Drive: We'll place a separate DC motor at each rear wheel (or each front wheel for a front-wheel drive setup). This provides independent control over each side of the car. Why is this cool? It allows for incredibly tight turns, even tank-style spins in place, and better traction management. It’s the foundation for a highly maneuverable platform.
  • The Micro Servo Motor Star: This is where precision lives. The steering mechanism on most RC cars isn't powered by a simple DC motor spinning freely. It uses a servo motor—a device that rotates to a specific angular position based on a control signal. The "micro" size is perfect for our compact build, offering high torque in a tiny, lightweight package. Unlike a standard motor, a servo has built-in gears, a control circuit, and a potentiometer to know its exact position, allowing for accurate, repeatable steering angles commanded by your transmitter. It’s the brain of our steering.

Part 1: Gathering Your Arsenal

You can’t build a castle without bricks. Here’s a detailed list of what you’ll need.

Core Chassis & Drive Components

  • Chassis: A lightweight, sturdy base. Aluminum or reinforced plastic is ideal. You can design and 3D-print one for ultimate customization.
  • Dual DC Gear Motors: (2x) Look for motors with a gearbox attached. They provide more torque at the wheel at a manageable speed. 200-300 RPM at 6V is a good starting point.
  • Micro Servo Motor: This is critical. A standard 9g micro servo (like the SG90 or MG90S) is perfect. Key specs: Operating Voltage: (typically 4.8V-6V), Torque: (e.g., 1.8 kg/cm at 4.8V), Speed: (e.g., 0.12 sec/60°).
  • Wheels & Tires: (4x) Two wheels will connect directly to your DC motor shafts. You’ll need a free-rolling front axle system for the steered wheels.
  • Motor Mounts & Servo Mount: To securely attach your motors and servo to the chassis. These often come with the chassis or servo.

Electronics & Control

  • Microcontroller: The heart of the operation. An Arduino Uno or Nano is excellent for this project due to its simplicity and vast community support.
  • Motor Driver Module: You cannot power two motors directly from the Arduino. An L298N or L293D Dual H-Bridge module is essential to control the speed and direction of both DC motors independently.
  • Radio Control System: A 2.4GHz Transmitter and Receiver pair (at least 3-channel). Channel 1 will go to the servo, Channels 2 & 3 can be mixed for tank-style control of the dual motors.
  • Power:
    • Servo Power: Your micro servo will typically run on 5V. It can often be powered directly from the Arduino’s 5V pin for a single servo, but for reliability, a separate 5V UBEC (Voltage Regulator) is recommended.
    • Drive Motor Power: A separate 7.2V NiMH or 7.4V LiPo battery pack. This connects to the motor driver module to provide the high current needed for the drive motors.
    • Arduino Power: Can be powered via the USB during programming, and from the motor driver's 5V output or the receiver's power during operation.

Tools & Miscellaneous

  • Soldering iron and solder
  • Jumper wires (male-to-male, male-to-female)
  • Double-sided tape, zip ties, and screws
  • Wire strippers/cutters
  • A basic understanding of patience and excitement!

Part 2: Mechanical Assembly – Frame, Drive, and Steer

Step 1: Chassis Preparation

Mount your chassis plate. If you’re 3D printing, ensure all mounting holes for the motors, servo, and electronics are clear. Plan your layout: rear for drive motors, front for steering linkage, center for battery and electronics.

Step 2: Installing the Dual Drive Motors

Secure your two DC gear motors to the rear of the chassis using their mounts. Ensure their shafts are aligned and the wheels can be attached cleanly. Attach the rear wheels directly. These motors will provide all the forward, reverse, and turning power.

Step 3: The Micro Servo Steering Mechanism

This is the precision engineering core.

  1. Servo Mounting: Fix your micro servo to the front of the chassis. It is usually mounted on its side, with the rotating horn facing forward.
  2. Creating the Steering Linkage: You’ll need a servo horn (comes with the servo) and a track rod (or tie rod). The servo horn attaches to the servo’s output shaft. The track rod connects the servo horn to the steering knuckles on your front wheels.
  3. Front Axle Assembly: Your front wheels need to be on a pivoting axle. A simple but effective method is to use a caster plate for each wheel, which is then connected to the ends of the track rod. As the micro servo rotates, it pushes or pulls the track rod, which simultaneously turns both front wheels.
  4. Centering and Alignment: Before final tightening, center your servo using the Arduino (we'll program this later). Attach the servo horn so that the wheels are pointing straight ahead. This ensures your car drives straight when the servo is at its 90-degree position.

Part 3: Wiring & Electronics – The Nervous System

Step 1: Connecting the Dual Motor Driver

  • Connect the wires from Motor A on the L298N module to your left rear DC motor.
  • Connect the wires from Motor B to your right rear DC motor.
  • Connect the motor driver’s power terminals to your drive battery (7.4V LiPo).
  • Connect the motor driver’s logic pins to the Arduino:
    • ENA & IN1, IN2 for Motor A (e.g., pins 5, 6, 7)
    • ENB & IN3, IN4 for Motor B (e.g., pins 10, 8, 9)
  • Crucially: Connect the 5V output and GND from the motor driver to the Arduino's 5V and GND. This powers the Arduino from the drive battery via the driver's regulator. Disconnect this if you are using a separate UBEC.

Step 2: Integrating the Micro Servo

  • The micro servo has three wires: Brown/Black (GND), Red (VCC +5V), Orange/Yellow (Signal).
  • Connect the Servo GND and VCC to a clean 5V power source. For simplicity and stability in this build, use a dedicated 5V UBEC connected to your main drive battery. Connect the UBEC's output to a breadboard or distribution block, then to the servo.
  • Connect the Servo Signal wire directly to an Arduino digital pin with PWM capability, such as Pin 3.

Step 3: Hooking Up the Radio Receiver

  • Your 2.4GHz receiver needs power (typically 5V). Connect its VCC and GND to the same 5V/GND bus as your servo.
  • Connect the receiver’s Channel 1 signal pin (steering) to Arduino Pin 2 (an interrupt pin is helpful for reading signals).
  • Connect the receiver’s Channel 2 signal pin (throttle) to Arduino Pin A0.

Part 4: Programming the Brain – Arduino Code Essentials

The code brings it all to life. The logic reads the signals from the radio receiver and translates them into commands for the motor driver and the micro servo.

Core Logic Breakdown

  1. Signal Reading: Use the pulseIn() function to read the PWM signal length (usually 1000-2000 microseconds) from the receiver channels.
  2. Servo Control: Map the value from Channel 1 (e.g., 1000-2000µs) to a servo angle (e.g., 0-180 degrees). Use the Arduino Servo.h library for smooth, precise control. cpp #include <Servo.h> Servo steeringServo; int servoSignal = pulseIn(ch1Pin, HIGH, 25000); int servoAngle = map(servoSignal, 1000, 2000, 0, 180); steeringServo.write(servoAngle);
  3. Dual Motor Control: Map the value from Channel 2 (throttle) and combine it with a turning bias from Channel 1 to create "tank" or "mixed" steering. For example, when you turn, you slow down the motor on the inside of the turn. This is where the dual-motor system shines. cpp // Simplified tank-style logic int throttle = pulseIn(ch2Pin, HIGH, 25000); int baseSpeed = map(throttle, 1000, 2000, -255, 255); // Speed range

    // Add turning bias based on servo signal int turnBias = map(servoSignal, 1000, 2000, 50, -50); int leftMotorSpeed = constrain(baseSpeed + turnBias, -255, 255); int rightMotorSpeed = constrain(baseSpeed - turnBias, -255, 255);

    // Use analogWrite() on ENA/ENB and digital writes on IN pins to set speed/direction.

Calibration and Testing

Upload your code in stages. First, write a simple sketch to center the servo and ensure it moves left and right with a potentiometer. Then, test each DC motor independently. Finally, integrate the radio control and fine-tune the mapping and turning logic for smooth, responsive handling.


Part 5: Fine-Tuning and Taking It to the Next Level

Once your car moves and steers, the real fun begins: optimization.

  • Servo Performance: Is your micro servo jittering? Ensure it has a clean, dedicated 5V power supply. Add a capacitor (100-470µF) across its power pins near the servo to smooth any current spikes.
  • Handling: Adjust the physical position of the servo horn or the length of the track rod to change the steering ratio. Less throw for high-speed stability, more throw for aggressive, low-speed turns.
  • Upgrades:
    • Suspension: Add simple spring shocks to the front steering knuckles and rear motor mounts.
    • 4WD: Ambitious? Use a four-motor system with a skid-steer setup, freeing the micro servo for a camera gimbal or other accessory!
    • Sensors: Use an ultrasonic sensor with the Arduino for obstacle avoidance. The micro servo could even be used to pan the sensor.

Building this dual-motor RC car is more than a weekend project; it’s a hands-on journey into embedded systems, mechanical design, and real-time control. The humble micro servo motor is the unsung hero, transforming a digital command into precise physical movement, proving that in the world of robotics and RC, sometimes the smallest components make the biggest difference in performance. Now, power up your transmitter and enjoy the drive

Copyright Statement:

Author: Micro Servo Motor

Link: https://microservomotor.com/building-remote-controlled-cars/rc-car-dual-motor.htm

Source: Micro Servo Motor

The copyright of this article belongs to the author. Reproduction is not allowed without permission.

About Us

Lucas Bennett avatar
Lucas Bennett
Welcome to my blog!

Tags