Arduino UNO Joystick-Controlled Dual Motor System with BTS7960 Drivers
View and Edit Project In Cirkit Designer
Circuit Documentation
Summary
This circuit is designed to control two 250W 12V DC motors using an Arduino UNO, two BTS7960 motor drivers, and a joystick module. The Arduino UNO reads the joystick inputs and controls the motor drivers accordingly. The motor drivers are powered by a 12V battery.
Component List
Arduino UNO
- Description: A microcontroller board based on the ATmega328P.
- Pins: UNUSED, IOREF, Reset, 3.3V, 5V, GND, Vin, A0, A1, A2, A3, A4, A5, SCL, SDA, AREF, D13, D12, D11, D10, D9, D8, D7, D6, D5, D4, D3, D2, D1, D0
BTS7960 Motor Driver (2 units)
- Description: A high-current motor driver module.
- Pins: Pin 1, Pin 2, Pin 3, Pin 4, Pin 5, Pin 6, Pin 7, Pin 8, Pin 9, Pin 10, Pin 11, Pin 12
Joystick Module
- Description: A joystick module with two potentiometers and a switch.
- Pins: SW, VRY, VRX, VCC, GND
250W 12V Electric Motor Brush Motor DC (2 units)
- Description: A 250W 12V DC motor.
- Pins: POSITIF, NEGATIF
12V Battery
- Description: A 12V battery for powering the motor drivers.
- Pins: VCC, GND
Wiring Details
Arduino UNO
- GND: Connected to GND of Joystick Module, Pin 1 of both BTS7960 Motor Drivers
- 3.3V: Connected to VCC of Joystick Module, Pin 5 of both BTS7960 Motor Drivers
- A0: Connected to VRX of Joystick Module
- A1: Connected to VRY of Joystick Module
- D9: Connected to Pin 4 of BTS7960 Motor Driver (1st unit)
- D6: Connected to Pin 8 of BTS7960 Motor Driver (1st unit)
- D5: Connected to Pin 4 of BTS7960 Motor Driver (2nd unit)
- D3: Connected to Pin 8 of BTS7960 Motor Driver (2nd unit)
BTS7960 Motor Driver (1st unit)
- Pin 1: Connected to GND of Arduino UNO, GND of Joystick Module
- Pin 4: Connected to D9 of Arduino UNO
- Pin 5: Connected to 3.3V of Arduino UNO, VCC of Joystick Module
- Pin 8: Connected to D6 of Arduino UNO
- Pin 9: Connected to POSITIF of 250W 12V Electric Motor (1st unit)
- Pin 10: Connected to NEGATIF of 250W 12V Electric Motor (1st unit)
- Pin 11: Connected to VCC of 12V Battery
- Pin 12: Connected to GND of 12V Battery
BTS7960 Motor Driver (2nd unit)
- Pin 1: Connected to GND of Arduino UNO, GND of Joystick Module
- Pin 4: Connected to D5 of Arduino UNO
- Pin 5: Connected to 3.3V of Arduino UNO, VCC of Joystick Module
- Pin 8: Connected to D3 of Arduino UNO
- Pin 9: Connected to POSITIF of 250W 12V Electric Motor (2nd unit)
- Pin 10: Connected to NEGATIF of 250W 12V Electric Motor (2nd unit)
- Pin 11: Connected to VCC of 12V Battery
- Pin 12: Connected to GND of 12V Battery
Joystick Module
- GND: Connected to GND of Arduino UNO, Pin 1 of both BTS7960 Motor Drivers
- VCC: Connected to 3.3V of Arduino UNO, Pin 5 of both BTS7960 Motor Drivers
- VRX: Connected to A0 of Arduino UNO
- VRY: Connected to A1 of Arduino UNO
250W 12V Electric Motor Brush Motor DC (1st unit)
- POSITIF: Connected to Pin 9 of BTS7960 Motor Driver (1st unit)
- NEGATIF: Connected to Pin 10 of BTS7960 Motor Driver (1st unit)
250W 12V Electric Motor Brush Motor DC (2nd unit)
- POSITIF: Connected to Pin 9 of BTS7960 Motor Driver (2nd unit)
- NEGATIF: Connected to Pin 10 of BTS7960 Motor Driver (2nd unit)
12V Battery
- VCC: Connected to Pin 11 of both BTS7960 Motor Drivers
- GND: Connected to Pin 12 of both BTS7960 Motor Drivers
Code Documentation
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:
}
Additional Documentation (documentation.txt)