← Back to Projects

Modular Serial Manipulator (Capstone)

Modular Design 6‑DoF Kinematics Controls ESP32
View Repository →
6‑DoF modular manipulator configuration
6‑DoF configuration (representative image)

Watch on YouTube: link.

Watch on YouTube: link.

Watch on YouTube: link.

Modular Serial Manipulator Platform for Educational Robotics

This capstone project at Worcester Polytechnic Institute (WPI) focused on designing a modular robotic arm system for affordable, hands-on robotics education. The platform enables students to assemble, configure, and program manipulators ranging from 2R to 6-DoF, with full mechanical, electrical, and software modularity.

Overview

Many educational robots are limited by cost, fragility, and fixed configurations that discourage experimentation. The goal of this project was to create a low-cost, reconfigurable serial manipulator kit capable of self-identifying its configuration and generating the appropriate kinematic and dynamic models automatically. The system was developed from the ground up, including hardware, electronics, and control software. My primary contributions centered on dynamic modeling and control design.

My Role: Dynamic Kinematics and Control

I implemented a generalized Euler–Lagrange formulation capable of automatically deriving the dynamic equations of motion for an n-link serial manipulator. This provided a modular backbone for the control layer, allowing each new configuration to inherit the correct mass, inertia, and coupling terms without manual derivation.

From these equations, I designed and implemented a Feedback Linearization controller in Python and C++, validated first in PyBullet simulation. Feedback linearization was selected for its ability to handle nonlinear, coupled systems by transforming the manipulator dynamics into a linearized form suitable for standard PID-style control. This ensured accurate trajectory tracking even with varying payloads and link configurations.

M(q) q̈ + C(q, q̇) q̇ + g(q)

Here, M(q) is the inertia matrix, C(q, q̇) represents Coriolis and centrifugal effects, and g(q) is the gravity vector. Solving these terms symbolically and numerically for arbitrary link parameters produced consistent and stable tracking performance across multiple configurations.

System Architecture

Each joint module contained its own ESP32 microcontroller for local control, forming a distributed actuator network connected by a custom UART protocol. I also contributed to the middleware layer that synchronized joint states and commands between the base and modules, ensuring real-time execution of the controller.

A Python interface built with DearPyGUI and integrated with the Peter Corke Robotics Toolbox provided live visualization, joint-space and task-space control, and torque/velocity feedback plots. The feedback linearization control loop was fully integrated for parameter tuning and dynamic analysis.

Results

Simulation results showed strong correspondence between commanded and actual trajectories, with low overshoot and negligible steady-state error. Although physical implementation of the controller was still in progress, its simulation performance confirmed dynamic stability and robustness to model changes. The automated dynamic derivation significantly accelerated testing of new configurations, enabling both 3-DoF and 6-DoF setups to operate under the same software architecture.

Impact

The project produced a $500 modular educational manipulator that combined accessible hardware with advanced control theory. My contributions in dynamic modeling and feedback linearization control established a scalable foundation for future teams to extend toward adaptive and learning-based controllers.