Skip to content

Seven 3-DOF Robotic Arm

A 3-DOF Arduino-controlled robotic arm built from 3D-printed parts and SG90 servos, supporting manual joint control, inverse kinematics, gripper control and waypoint programming.

  • Robot arm
  • Open source
  • arduino
  • 3D printable

Suggested by Robotheca, created by @elevenMiles (opens in a new tab), from github.com/elevenMiles/Robotic_Arm_Seven (opens in a new tab). Pinned to commit 9d28cc9 (opens in a new tab).

Photo and 3D model

Seven 3-DOF Robotic Arm, photo from its repository
Photo:@elevenMiles (opens in a new tab)MITsource file (opens in a new tab)

3D preview converted from github.com/elevenMiles/Robotic_Arm_Seven at 9d28cc9, under MIT. View the original files from GitHub (636 KB) (opens in a new tab)

Degrees of freedom
3
Power
25 W
Reach
24 cm

What it can do

Written by Robotheca from the project's documents.

  • Moves a 3-DOF arm built with 3D-printed parts and SG90 servos, controlled over serial from an Arduino Uno.
  • Manual joint control by setting base, shoulder and elbow angles directly.
  • Inverse kinematics: moves the end effector to a given X, Y, Z coordinate in centimeters.
  • Directional moves of the end effector up, down, left, right, forward or backward by a set distance.
  • Gripper open and close, with saved calibration for custom open and close angles.
  • Records up to 25 waypoints and replays them in a loop.
  • Handshake mode lets external software synchronize with the arm over serial.
  • Calibration offsets and gripper angles are stored in EEPROM and persist across power cycles.

Bill of materials

This repository has no parts list Robotheca can read yet.

Build guide

The creator's steps, each with its instructions.

  1. 13D print the arm parts from the STL files using Hyper PLA
  2. 2Assemble the frame and servo joints with 2mm x 10mm screws
  3. 3Wire the four SG90 servos to Arduino pins 6, 9, 10 and 11
  4. 4Build the custom USB power supply and connect its GND to the Arduino GND
  5. 5Upload the test sketch and verify each servo
  6. 6Upload the main sketch and calibrate the joints and gripper

The guide appears here as you scroll.

Guide by @elevenMiles (README.md), under MIT.

Wiring and electronics

Notes written by Robotheca from the project's documents.

Main parts

  • Arduino Uno or equivalent board.
  • Four SG90 servo motors for base, shoulder, elbow and gripper.
  • Large breadboard used for power distribution.
  • USB-A cable stripped to supply power, with a USB-A to USB-C adapter.
  • 5V DC USB wall adapter rated at least 3.0A, recommended a branded 25W PD charger.

Connections

  • Base servo signal connects to Arduino digital pin 6.
  • Shoulder servo signal connects to Arduino digital pin 9.
  • Elbow servo signal connects to Arduino digital pin 10.
  • Gripper servo signal connects to Arduino digital pin 11.
  • Servo power (5V and GND) runs through the breadboard, powered by the external USB adapter.
  • The adapter's negative (GND) wire must connect to an Arduino GND pin to form a common ground.

Schematics, boards and diagrams