Back to project list

4-DOF Robot Arm

Published on: December 15, 2024
4-DOF Robot Arm
Robotics CAD Mechanical Design

Overview

A 4-DOF robotic arm built to learn custom PCB design, closed-loop motor control, and mechanical robotics design. The system uses a custom PCB with motor drivers, a wireless web GUI, and encoder feedback to enable real-time joint control.

Key Features

  • 4 degrees of freedom with belt-driven joints
  • Custom-designed motor control PCB
  • Wireless web-based control interface
  • Magnetic absolute encoders on each joint

Electronics & Control

Robot Arm PCB Schematics
Physical Robot Arm PCB

This custom PCB uses a ESP 32 microcontroller as it’s brain. It also uses TMC2209 stepper drivers to drive the NEMA 17 motors and a TB6600 stepper driver to drive the NEMA 23 motor. It includes an I2C multiplexer to allow for multiple encoders to be connected. It also includes a PolyFuse, capacitors to reduce noise, and a buck convertor to convert from 24v to 5v for the low power items. The PCB runs off 24v DC input.

Software / UI

Robot Arm Software

View at: Robot Arm Control Software

The web-based UI communicates via Web Sockets to the ESP 32. This allows for real time control of each individual joint with encoder feedback. As each joint moves, encoder values are displayed on the UI. The robot also has step correction so it uses encoder data to make sure it’s at the target value.

Results

I successfully assembled and tested joint motion for all four degrees of freedom. I demonstrated wireless control of individual joints with real-time feedback. I’m designing a V2 that uses custom cylcoidal gearboxes instead of gears and pulleys to include modularity and torque.