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

Arduino-Controlled NRF24L01 Wireless DC Motor Driver System

Image of Arduino-Controlled NRF24L01 Wireless DC Motor Driver System

Circuit Documentation

Summary

This circuit is designed to control a set of DC motors using an Arduino UNO microcontroller and an L298N DC motor driver. It also includes an NRF24L01 module for wireless communication. The power supply for the motor driver is provided by a 18650 Li-Ion battery, and the Arduino UNO is powered by a separate 18650 battery holder. The circuit is intended for applications where remote control of motors is required, such as robotics or automated systems.

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 module capable of driving two DC motors or one stepper motor.
  • It has an onboard 5V regulator which can be enabled using a jumper.

NRF24L01

  • A 2.4GHz wireless transceiver module.
  • It has configurable data rates and low power consumption modes.

18650 Li-Ion Battery

  • A rechargeable battery providing a nominal voltage typically around 3.7V.

DC Motor

  • A simple electric motor that runs on direct current (DC) power.

18650 Battery Holder

  • A holder for an 18650 Li-Ion battery, providing easy connection points for VCC and GND.

Wiring Details

Arduino UNO

  • 3.3V connected to NRF24L01 VCC (3V)
  • 5V connected to 18650 battery holder VCC
  • GND connected to 18650 battery holder GND and NRF24L01 GND
  • D13 connected to NRF24L01 SCK
  • D12 connected to NRF24L01 MISO
  • D11 connected to NRF24L01 MOSI
  • D8 connected to NRF24L01 CSN
  • D7 connected to NRF24L01 CE
  • D5 connected to L298N DC motor driver IN4
  • D4 connected to L298N DC motor driver IN3
  • D3 connected to L298N DC motor driver IN2
  • D2 connected to L298N DC motor driver IN1

L298N DC Motor Driver

  • OUT1 connected to two DC Motors (pin 1)
  • OUT2 connected to the same two DC Motors (pin 2)
  • OUT3 connected to another two DC Motors (pin 1)
  • OUT4 connected to the same two DC Motors (pin 2)
  • 12V connected to 18650 Li-Ion battery Positive
  • GND connected to 18650 Li-Ion battery Negative

NRF24L01

  • VCC (3V) connected to Arduino UNO 3.3V
  • GND connected to Arduino UNO GND
  • CE connected to Arduino UNO D7
  • CSN connected to Arduino UNO D8
  • SCK connected to Arduino UNO D13
  • MISO connected to Arduino UNO D12
  • MOSI connected to Arduino UNO D11

18650 Li-Ion Battery

  • Positive connected to L298N DC motor driver 12V
  • Negative connected to L298N DC motor driver GND

DC Motor

  • Four DC Motors connected to L298N DC motor driver OUT1, OUT2, OUT3, and OUT4 respectively.

18650 Battery Holder

  • VCC connected to Arduino UNO 5V
  • GND connected to Arduino UNO GND

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:

}

The provided code is a template with empty setup and loop functions. The setup function is intended to initialize settings, while the loop function will contain the main logic that the Arduino will execute repeatedly. Specific functionality needs to be implemented based on the requirements of the application.