Day 2: Motor Driver Wiring & Testing

Day 2: Motor Driver Wiring & GPIO Testing

Before using ROS, we validate hardware. If motors fail here — ROS will never fix it.


1. Motor Driver Used

  • L298N / L293D
  • 4 DC Motors

2. GPIO Pin Mapping

MotorGPIO
ENAGPIO18
IN1GPIO17
IN2GPIO27
ENBGPIO13
IN3GPIO22
IN4GPIO23

3. Motor Test Script (Python)


import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)

ENA, IN1, IN2 = 18, 17, 27
ENB, IN3, IN4 = 13, 22, 23

GPIO.setup([ENA, IN1, IN2, ENB, IN3, IN4], GPIO.OUT)

GPIO.output(IN1, GPIO.HIGH)
GPIO.output(IN2, GPIO.LOW)
GPIO.output(IN3, GPIO.HIGH)
GPIO.output(IN4, GPIO.LOW)

time.sleep(2)
GPIO.cleanup()

4. Run Test

python3 motor_test.py

Expected: Robot moves forward.


Next → Day 3: ROS motor driver node

Comments