Physik  |  Technik

 

Remi Gerber, 2008 | Obernau , LU
Andrin Winzap, 2008 | Luzern, LU

 

This project documents the development of a 6 Degree of Freedom robotic arm built entirely from scratch. The mechanical design features custom gearboxes based on a variant of eccentric drives, alongside a differential wrist and toolchanger, as well as a detachable gripper. Electronics include three custom PCB designs and are built around dedicated microcontrollers for each joint. We developed a complete software control stack based on ROS 2 with micro-ROS on the microcontrollers. Forward and inverse kinematics were derived analytically to enable trajectory planning in Cartesian space, complemented by velocity control through the Jacobian matrix. The result is a functional and extensible platform with a Python programming interface, real-time visualization, and a graphical user interface enabling manual control via keyboard or gamepad as well as parameter configuration.

Introduction

How can a fully functional 6-DoF robotic arm be developed from the ground up, combining mechanical design, electronics, mathematics and software control? Several key questions are: Which reduction mechanisms and actuators are suitable for a 3D-printed arm? How can analytical inverse kinematics be implemented? What electrical system needs to be employed to ensure a stable overall system?

Methods

Development required multiple disciplines. All custom parts were designed in Onshape and manufactured primarily using 3D printing with PLA. The first four joints use stepper motors combined with custom eccentric drive gearboxes, while the wrist uses DC motors with a differential gear mechanism. A custom PCB designed in KiCad holds ESP32 microcontrollers to interface with motor drivers and sensors which provide position feedback. A stepper motor backpack PCB and a revised control PCB were developed to improve sensor communication reliability and signal integrity. The software stack is built on ROS 2 with micro-ROS running on the microcontrollers. Forward kinematics were derived using Denavit-Hartenberg parameters. For inverse kinematics, a geometric analytical solution was implemented. Velocity control in Cartesian space is achieved by mapping end-effector velocities to joint velocities through a pseudo-inverse of the Jacobian matrix. A Python API provides a simple interface for programming and operating the robot in both joint and Cartesian space, including a graphical user interface for manual control and parameter configuration.

Results

The robotic arm executes coordinated motion across all six joints and achieves a maximum range of 500 mm, payload of up to 1.5 kg, maximum linear end-effector velocity of 250 mm/s, absolute positioning accuracy around 20 mm, and a repeatability of 10 mm according to our tests at ideal conditions. The toolchanger enables automatic end-effector swapping, and the gripper operates reliably. The most significant technical challenge was electromagnetic interference from the stepper motors disrupting I2C communication with the position sensors. This was resolved through multiple improvements, namely physically separating power and signal lines, removing the motor wires from the cable tree and utilizing ethernet cables, which was enabled by the replacement of the original control PCB. This also brought improvements to the signal integrity, power integrity and electromagnetic compatibility of the PCB.

Discussion

The project demonstrates that a functional 6-DoF robotic arm can be realized using affordable parts and simple manufacturing methods. The decision to adopt ROS 2 proved correct and should have been adopted from the outset, as an initial attempt to develop the software from scratch consumed valuable time. Mechanically, belt drives would have offered less backlash and simpler fabrication compared to the custom eccentric gearboxes. Using a differential bus protocol such as CAN instead of I2C would have avoided the electromagnetic interference problems entirely, although the final solution adopting ethernet cables successfully resolved the issues. Time management repeatedly proved a great difficulty, as unexpected integration efforts can lead to delays.

Conclusions

The robotic arm functions as a complete, extensible platform and demonstrates that mechanics, electronics, and software can be successfully integrated into a coordinated motion system. The core goals of forward kinematics, analytical inverse kinematics, reliable electronics, and Python-based control were all achieved. Future efforts could focus on exploring computer vision and adaptive trajectory planning and creating more end-effectors.

 

 

Würdigung durch den Experten

Prof. Heinz Domeisen

Andrin Winzap und Remi Gerber wollten einen funktionsfähigen Roboterarm selber entwickeln und dabei breite Erfahrungen sammeln. Sie arbeiteten sich in die Theorie der inversen Kinematik ein, stellten die benötigten Teile im 3D-Druck her und optimierten das PCB-Layout und die Programmsteuerung mehrfach. Probleme wie z.B. Störungen bei der Signalübertragung spornten sie bei der Lösungssuche an bis der Roboterarm ihre Anforderungen erfüllte. Es ist ihnen gelungen, Theorie und Praxis zu verbinden und zu zeigen, dass mit Beharrlichkeit auch multidisziplinäre Problemstellungen gelöst werden können.

Prädikat:

Silber

Sonderpreis «Unternehmer*in werden» gestiftet von Alfred Advisory

 

 

 

Kantonsschule Alpenquai Luzern
Lehrer: Pascal Basler