Harold the Robotic Arm EJ08 ECE342-W24

Python
3D Printing
Arduino
PCB
FPGA
Enclosure
Robotics
Hardware Verification
Documentation
Hardware
Problem Solving
Junior Design

The two-axis robotic arm project is designed to automate drawing on a sheet of paper, combining speed, accuracy, and versatility. It achieves high accuracy and speed in executing patterns specified by users through G-code commands. The project adopts a SCARA topology for its mechanical design, which includes two rotating joints powered by Arduino-controlled motors. This ensures smooth and precise movement of the arms. Motor drivers are utilized to control the arm's speed and position, while Python scripts interpret G-code for operational commands. Another key technology implemented in this project is the automatic tool-switching. This utensil can achieve a fully automatic switching function. It can automatically switch between a crayon, pen, or pencil and increase the efficiency of robotic arms. The most notable accomplishments for the project are speed and accuracy requirements and the development of tool-switching feature. The biggest challenge is optimizing the tool-switching mechanism to increase speed, and determining whether the pen pressure is enough. In the future, the system's drawing accuracy can be improved on a wider range of patterns and the software can be enhanced to handle complex images.

2 Lifts 

Artifacts

Name Description
Voltage Regulator PCB This artifact includes the process from design to fabrication of the 5v Voltage Regulator PCB. The bill of materials for the PCB is also included.   Download
3d Model of Arm A 3d render of the arm and utensil switcher. Included within are eight models which will need to be assembled after being printed.   Link
Code Repository This GitHub repository contains code for (1) the Python GUI, (2) the GCode command interpreter, (3) the inverse kinematics line algorithm, and (4) some files for unit testing stepper motors and servos.   Link
L293D Motor Driver Shield This is a board that enables an Arduino microcontroller to drive and control stepper motor.   Download
Base Design Process This shows the progression from the first to the final base design. The base is made out of particle board. Pages 1-3 are associated with the first base design. Pages 4-6 are associated with the second base design. Pages 7-9 are associated with the final base design.   Download
Project Summary An overview of our goals, design process, timeline, and lessons learned. This is intended for anyone interested in a bird's-eye view of the project, or a team looking to learn from our mistakes   Download
Project Summary Video Our team's presentation video for this project, including goals, challenges, and overviews of the mechanical, electrical, and code elements of the project.   Link
Recommended Programming Resources Stuck on where to start with programming your own SCARA robotic arm? Here are the libraries and guides we used to help us get started.   Link