3-joint-robotic-arm

3-Joint Robotic Arm

BlueStamp Engineering student portfolio


Project Description

This project is a three-joint robotic arm controlled by an Arduino Nano. The arm uses multiple servo motors to create movement across three joints and a claw for gripping objects. User command is easily provided through a joystick controller, allowing the arm to move in multiple directions and manipulate small objects. Through this project, I am developing skills in electronics, programming, robotics, and mechanical design while exploring my overall interest in aerospace engineering.

Aayan Kar Waubonsie Valley High School Aerospace Engineering 10th Grade

Photo on 6-22-26 at 12 41 PM

Milestone 1: Complete First 5 lessons on the GitHub guide

What I Accomplished:

For this project, I will be building a three-joint robotic arm controlled by an Arduino Nano using servo motors and a joystick input system. For my first milestone, I completed the first five lessons from the Cokoino robotic arm guide. These lessons introduced me to the Arduino Nano, Arduino IDE, Nano Shield, joystick module, servo motors, and buzzer system that will be used throughout the project.

I successfully installed and configured the Arduino IDE, uploaded programs to the Arduino Nano, and learned how code can be transferred from a computer to a microcontroller. I also tested the Nano Shield and verified that all hardware connections were functioning properly.

Screenshot 2026-06-12 at 1 51 02 PM

Next, I tested the joystick module and observed how analog inputs are converted into numerical values that can be used to control movement. Finally, I programmed and tested the servo motors, learning how PWM signals can precisely control motor position and movement.

Challenges & Takeaways:

One challenge I had involved the buzzer in Lesson 3. The original code caused the buzzer to continue sounding indefinitely after activation. Rather than leaving the behavior unchanged, I analyzed the code and modified it by implementing a three-second timer that automatically turns the buzzer off.

Screenshot 2026-06-14 at 2 26 50 PM

This was my first experience making changes beyond the provided instructions. Through this process, I learned how to troubleshoot Arduino programs, understand timing functions, and test modifications until the system behaved as intended.

This milestone gave me a strong foundation in Arduino programming, hardware integration, and engineering problem-solving, which will be essential as I begin assembling and controlling the robotic arm in the next phase of the project.

Milestone 1 Video

Milestone 2 (Final Milestone): Build the Project

What I Accomplished:

The goal of this milestone was to assemble the robotic arm by following Lesson 6 of the Cokoino guide. During this phase, I transformed the individual components that I tested in Milestone 1 into a complete robotic system.

Before beginning assembly, I calibrated each servo motor to a 90-degree position. This ensured that the servos would be properly aligned when installed into the robotic arm and helped prevent positioning errors during future operation.

calibrated servos

After calibrating the servos, I assembled the robotic arm frame using the acrylic components and hardware provided in the kit. I carefully followed the guide to ensure that each part was installed in the correct orientation.

assembled acrylic frame

Once the frame was assembled, I mounted the servo motors into the arm’s joints and connected the necessary electronic components. This allowed me to better understand how the mechanical structure and electrical systems work together to create movement.

finished assembly

By the end of the milestone, I had successfully assembled the robotic arm and verified that all major components were securely installed and connected.

Challenges & Takeaways:

One challenge during assembly was ensuring that every servo and structural component was installed in the correct position. Since the arm contains multiple moving joints, even a small alignment error could affect performance later when programming movement.

To avoid mistakes, I frequently compared my progress to the guide’s reference images and double-checked the orientation of each component before moving on to the next step.

This milestone taught me the importance of precision, patience, and attention to detail when assembling engineering systems. It also gave me a better understanding of how mechanical and electrical components interact within a robotic platform.

System Schematic

As part of this project, I reviewed the robotic arm’s schematic to better understand how the electrical components are connected. The schematic illustrates the relationships between the Arduino Nano, Nano Shield, servo motors, joystick module, and other components used throughout the system.

wiring diagram image

Studying the schematic helped me visualize how signals and power flow through the robotic arm. It also gave me a clearer understanding of how the hardware components interact and provided a useful reference for troubleshooting and future modifications.

Milestone 2 (Final Milestone) Video

Bill of Materials

Part Notes Price Link
Arduino Nano Main microcontroller used to run the program $10 Arduino Nano
Nano Shield Simplifies wiring between components and Arduino $8 Nano Shield
Servo Motors (x4) Controls movement of robotic arm joints and claw $3–5 each Servo Motors
Joystick Module Provides user control input for the robotic arm $5 Joystick Module
Acrylic Robotic Arm Kit Mechanical structure of the robot $25–40 Arm kit
Jumper Wires Used for electrical connections between components $5 Wires
USB Cable Used to upload code to Arduino Nano $3 USB cable
9V Alkaline Battery Powers the system (USB or external battery) $5–10 9V Alkaline Battery

Final Project Reflection

Through this project, I gained hands-on experience with Arduino programming, servo motor control, circuit wiring, mechanical assembly, and robotics. One of the most valuable lessons was learning how software and hardware work together to create a functional robotic system.

I also developed problem-solving skills by troubleshooting issues such as the buzzer continuously sounding and modifying the code so that it automatically stopped after three seconds. This experience showed me that engineering often involves identifying problems, testing solutions, and making improvements beyond the original design.

Reviewing the robotic arm schematic also helped me better understand how the Arduino Nano, Nano Shield, servo motors, and joystick module interact within the system. This gave me a clearer understanding of how signals and power are distributed throughout the robotic arm.

Overall, this project strengthened my interest in robotics and aerospace engineering while providing practical experience with both mechanical and electrical systems. It gave me valuable experience in programming, troubleshooting, assembly, and understanding how multiple engineering disciplines come together to create a working robotic system.