Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Project Documentation

Arduino-Controlled Dual DC Motor Driver with Bluetooth Interface

Image of Arduino-Controlled Dual DC Motor Driver with Bluetooth Interface

Circuit Documentation

Summary

This circuit is designed to control two DC motors using an Arduino UNO microcontroller and an L298N DC motor driver. The Arduino UNO is also interfaced with an HC-05 Bluetooth module for potential wireless control capabilities. The circuit is powered by a 12V battery, which supplies power to both the motor driver and the Arduino UNO. The Arduino UNO controls the motor driver by sending signals to the input pins of the L298N, which in turn drives the motors. Ground connections are shared among the Arduino, motor driver, motors, and the battery to complete the circuit.

Component List

Arduino UNO

  • Microcontroller board based on the ATmega328P
  • It has 14 digital input/output pins, 6 analog inputs, a 16 MHz quartz crystal, a USB connection, a power jack, an ICSP header, and a reset button.

L298N DC Motor Driver

  • A dual H-bridge motor driver that can drive two DC motors or one bipolar stepper motor.
  • It has 2 input terminals for the battery, 4 output terminals for the motors, and several control pins.

Motor Amarillo Motorreductor Hobby (x2)

  • A yellow hobby gear motor that operates on a nominal voltage, typically around 5V to 6V.
  • It has two terminals: one for the power supply (Vcc) and one for the ground (GND).

Battery 12V

  • A 12V battery used to provide power to the circuit.
  • It has a positive (+) and a negative (-) terminal.

HC-05 Bluetooth Module

  • A Bluetooth module that can be used for wireless communication.
  • It has pins for enabling (EN), power supply (VCC), ground (GND), transmit (TXD), receive (RXD), and state (STATE).

Wiring Details

Arduino UNO

  • 5V connected to HC-05 VCC
  • GND connected to HC-05 GND, L298N GND, and Battery 12V -
  • Vin connected to L298N 5V
  • D5 connected to L298N IN4
  • D4 connected to L298N IN3
  • D3 connected to L298N IN2
  • D2 connected to L298N IN1
  • D1 (TX) connected to HC-05 RXD
  • D0 (RX) connected to HC-05 TXD

L298N DC Motor Driver

  • 12V connected to Battery 12V +
  • GND connected to Arduino UNO GND and Battery 12V -
  • 5V connected to Arduino UNO Vin
  • OUT1 connected to Motor Amarillo Motorreductor Hobby GND
  • OUT2 connected to Motor Amarillo Motorreductor Hobby Vcc
  • OUT3 connected to Motor Amarillo Motorreductor Hobby GND
  • OUT4 connected to Motor Amarillo Motorreductor Hobby Vcc
  • IN1 connected to Arduino UNO D2
  • IN2 connected to Arduino UNO D3
  • IN3 connected to Arduino UNO D4
  • IN4 connected to Arduino UNO D5

Motor Amarillo Motorreductor Hobby

  • One motor's GND connected to L298N OUT1
  • One motor's Vcc connected to L298N OUT2
  • The other motor's GND connected to L298N OUT3
  • The other motor's Vcc connected to L298N OUT4

Battery 12V

  • + connected to L298N 12V
  • - connected to Arduino UNO GND and L298N GND

HC-05 Bluetooth Module

  • VCC connected to Arduino UNO 5V
  • GND connected to Arduino UNO GND
  • RXD connected to Arduino UNO D1 (TX)
  • TXD connected to Arduino UNO D0 (RX)

Documented Code

Arduino UNO Code (sketch.ino)

void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

Note: The code provided for the Arduino UNO is a template with empty setup and loop functions. This code needs to be filled in with the logic to control the motors via the L298N motor driver and to handle Bluetooth communication with the HC-05 module.