Arduino and ESP32 CAM-Based Wi-Fi Controlled Robotic Arm with Battery Power
View and Edit Project In Cirkit Designer
Circuit Documentation
Summary
This document provides a detailed overview of a circuit design that includes an Arduino UNO+WiFi R3, multiple DC motor drivers, a 16-Channel PWM Servo Driver, an ESP32 CAM, and various other components. The circuit is designed to control multiple motors and servos, read inputs from a rotary encoder, and interface with a camera module. Power is managed using LiPo batteries and DC Buck Step-down converters.
Component List
Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G
- Description: Microcontroller board with integrated WiFi.
- Pins: KORF, RST, 3.5v, 5.0v, GND, VIN, A0, A1, A2, A3, A4, A5, SCL, SDA, ARET, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, TX, RX
XL4015 5A DC Buck Step-down
- Description: DC-DC step-down converter.
- Pins: Output +, Output -, Input +, Input -
L298N DC Motor Driver
- Description: Dual H-Bridge motor driver.
- Pins: OUT1, OUT2, 12V, GND, 5V, OUT3, OUT4, 5V-ENA-JMP-I, 5V-ENA-JMP-O, +5V-J1, +5V-J2, ENA, IN1, IN2, IN3, IN4, ENB
LiPo Battery 2200mAH 30C
- Description: Rechargeable lithium polymer battery.
- Pins: VCC, GND
ESP32 CAM
- Description: Camera module with integrated ESP32.
- Pins: 5V, GND, GPIO12, GPIO13, GPIO15, GPIO14, GPIO2, GPIO4, 3.3V, GPIO16, GPIO0, 3.3V / 5V / P_OUT, GPIO3 / RX, GPIO1 / TX
Servo Motor MG996R
- Description: High-torque servo motor.
- Pins: PMW, VCC 5V, GND
Hobby Gearmotor with 48:1 Gearbox
- Description: Small DC motor with gearbox.
- Pins: pin 1, pin 2
16-Channel PWM Servo Driver
- Description: PWM driver for controlling multiple servos.
- Pins: V+, VCC, SDA, SCL, OE, GND, Vin+, Vin-, PWM1, PWM2, PWM3, PWM4, PWM5, PWM6, PWM7, PWM8, PWM9, PWM10, PWM11, PWM12, PWM13, PWM14, PWM15, PWM16
Rotary Encoder
- Description: Rotary encoder for position sensing.
- Pins: GND, +, SW, DT, CLK
Wiring Details
Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G
- 5.0v connected to 16-Channel PWM Servo Driver VCC
- GND connected to 16-Channel PWM Servo Driver GND
- A1 connected to 16-Channel PWM Servo Driver SDA
- A2 connected to 16-Channel PWM Servo Driver SCL
- A4 connected to Rotary Encoder +
- A5 connected to Rotary Encoder GND
- 13 connected to L298N DC Motor Driver ENA
- 12 connected to L298N DC Motor Driver ENB
- 11 connected to L298N DC Motor Driver IN4
- 10 connected to L298N DC Motor Driver IN3
- 9 connected to L298N DC Motor Driver IN2
- 8 connected to L298N DC Motor Driver IN1
- 7 connected to L298N DC Motor Driver ENB
- 6 connected to Rotary Encoder CLK
- 5 connected to L298N DC Motor Driver IN4
- 4 connected to L298N DC Motor Driver IN3
- 3 connected to L298N DC Motor Driver IN2
- 2 connected to L298N DC Motor Driver ENA
- 1 connected to L298N DC Motor Driver IN1
- 0 connected to Rotary Encoder DT
XL4015 5A DC Buck Step-down
- Output + connected to ESP32 CAM 3.3V / 5V / P_OUT
- Output - connected to ESP32 CAM GND
- Input + connected to LiPo Battery 2200mAH 30C VCC
- Input - connected to LiPo Battery 2200mAH 30C GND
- Output + connected to 16-Channel PWM Servo Driver Vin+
- Output - connected to 16-Channel PWM Servo Driver Vin-
L298N DC Motor Driver
- OUT1 connected to Hobby Gearmotor with 48:1 Gearbox pin 1
- OUT2 connected to Hobby Gearmotor with 48:1 Gearbox pin 2
- 12V connected to LiPo Battery 2200mAH 30C VCC
- GND connected to LiPo Battery 2200mAH 30C GND
- OUT3 connected to Hobby Gearmotor with 48:1 Gearbox pin 2
- OUT4 connected to Hobby Gearmotor with 48:1 Gearbox pin 1
ESP32 CAM
- 3.3V / 5V / P_OUT connected to XL4015 5A DC Buck Step-down Output +
- GND connected to XL4015 5A DC Buck Step-down Output -
16-Channel PWM Servo Driver
- VCC connected to Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G 5.0v
- GND connected to Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G GND
- SDA connected to Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G A1
- SCL connected to Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G A2
- Vin+ connected to XL4015 5A DC Buck Step-down Output +
- Vin- connected to XL4015 5A DC Buck Step-down Output -
- PWM16 connected to Servo Motor MG996R PMW
- V+ connected to Servo Motor MG996R VCC 5V
- GND connected to Servo Motor MG996R GND
- PWM8 connected to Servo Motor MG996R PMW
- PWM10 connected to Servo Motor MG996R PMW
- PWM12 connected to Servo Motor MG996R PMW
- PWM14 connected to Servo Motor MG996R PMW
- PWM15 connected to Servo Motor MG996R PMW
Servo Motor MG996R
- PMW connected to 16-Channel PWM Servo Driver PWM16
- VCC 5V connected to 16-Channel PWM Servo Driver V+
- GND connected to 16-Channel PWM Servo Driver GND
Rotary Encoder
- + connected to Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G A4
- GND connected to Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G A5
- CLK connected to Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G 6
- DT connected to Arduino UNO+WiFi R3 ATmega328P+Node MCU ESP8266 CH340G 0
Documented Code
No code was provided for this circuit.
This document provides a comprehensive overview of the circuit design, including a detailed list of components and their interconnections. This should serve as a useful reference for building and troubleshooting the circuit.