Differentiable Control for a Robot Arm Challenge
ISEF Category: Engineering Technology: Statics and Dynamics
Ready to Turn This Idea Into a Real Project?
This guide was put together with the help of AI research tools to give you a solid starting point. But a competitive science fair project lives in the details: refining your research question, fine-tuning your variables, analyzing your data, and presenting your findings like a seasoned scientist.
For next steps tailored to your interests, skill level, and timeline, work one-on-one with a MehtA+ mentor. Learn more about MehtA+ Science & Engineering Research Mentorship →
Subcategory: Control Theory · Difficulty: Advanced · Setup: University Lab · Time: Full Year
The Hook
A small change in control can turn a wobbly robot arm into a stable one. That is the whole game here. You can test whether a controller that learns through gradients beats a hand-tuned one. If you like robots, math, and systems that almost fail, this project has real teeth.
What Is It?
This project studies how a robot arm can keep a swinging load under control. Your setup has a two-link printed arm and a passive double pendulum, which means two connected segments that move without their own motors. The control system has to react fast and send the right motor commands before the swing grows too large.
Differentiable MPC means model predictive control that can be trained with gradients. A gradient tells you which direction improves performance, kind of like finding the steepest path downhill on a map. Instead of tuning control gains by trial and error, you let the task loss push changes back through the model and into the controller settings.
LQR stands for linear quadratic regulator. It is a classic control method that picks actions by balancing error and effort. Your project compares a learned controller against a hand-tuned LQR baseline, so you can ask which one handles the same robot and same disturbance better.
Why This Is a Good Topic
This is a strong science fair topic because you can measure real behavior, compare two clear control strategies, and change one design choice at a time. It connects to robotics, automation, and balancing systems used in manufacturing, prosthetics, and mobile robots. You can learn modeling, optimization, feedback control, and data analysis, which makes the project deep without turning vague.
Research Questions
- How does differentiable MPC compare with hand-tuned LQR on maximum pendulum angle before failure?
- What is the effect of adding model mismatch on the tracking error of differentiable MPC?
- Does training the controller on task loss improve recovery after a disturbance compared with fixed-gain control?
- To what extent does the quality of the dynamics model change the final control performance?
- Which cost function terms most reduce overshoot while keeping motor effort low?
- How does controller performance change when the second pendulum link starts from different initial angles?
Basic Materials
- Printed two-link robotic arm with a passive double pendulum attachment.
- Microcontroller or single-board computer for motor control.
- Motor drivers matched to the actuators.
- Joint angle sensors, such as encoders or potentiometers.
- Rigid mounting frame or tabletop rig.
- Emergency stop switch.
- Laptop for coding, logging, and analysis.
- Calipers or ruler for measuring link geometry.
- Digital scale for checking mass properties.
- Power supply sized for the motors.
Advanced Materials
- Access to a university-style robotics bench or motion test rig.
- High-resolution rotary encoders for each joint.
- Torque sensing or current sensing hardware.
- Motion capture system or high-speed camera for state estimation.
- Precision 3D printer or machined arm components.
- Oscilloscope or logic analyzer for motor signal debugging.
- Real-time controller hardware.
- Calibration masses for identifying inertial parameters.
- Vibration isolation mount.
- Safety shield or enclosure.
Software & Tools
- Python: Runs simulation, optimization, logging, and analysis scripts.
- PyTorch: Supports automatic differentiation for end-to-end gradient flow.
- NumPy: Handles matrix math for dynamics and controller calculations.
- Matplotlib: Plots angle, error, and control effort over time.
- ImageJ: Measures motion from video if you estimate angles from footage.
Experiment Steps
- Define the control goal, the failure condition, and the exact state you will measure.
- Build a simple dynamics model and decide which parameters you will estimate from your arm.
- Choose the baseline controller first, then set a fair tuning rule for LQR and differentiable MPC.
- Plan a training loop that sends task loss back through the model and into controller gains.
- Design a test matrix that varies initial angle, load, and disturbance while keeping the comparison fair.
- Select metrics that capture stability, energy use, and recovery time, then predefine how you will analyze them.
Common Pitfalls
- Using a model that ignores friction or motor limits, which makes the learned controller look better in simulation than on hardware.
- Comparing differentiable MPC and LQR with different state sensors, which breaks the fairness of the test.
- Letting encoder noise or video-based angle estimates drift, which blurs the true control error.
- Training on one initial pose only, which makes the controller fragile when the pendulum starts somewhere else.
- Tuning the reward or loss after seeing the results, which turns the comparison into a moving target.
What Makes This Competitive
A competitive version of this project needs more than a working robot. You need a clean comparison, a careful model, and a test set that includes conditions the controller never saw during tuning. Strong entries often show why one method wins, not just which one wins. If you can quantify failure modes and connect them to model error, sensor noise, or actuation limits, your project gets much stronger.
Project Variations
- Swap the passive double pendulum for a single swinging load and compare whether the controller still learns faster.
- Test camera-based state estimation instead of encoder-only feedback to see how sensor quality changes closed-loop stability.
- Replace LQR with PID or a simple MPC baseline to compare modern learning-based control against a classic classroom controller.
Learn More
- MIT OpenCourseWare: Search for free robotics and control systems lectures, notes, and problem sets that cover feedback, state-space models, and optimal control.
- NASA Technical Reports Server: Search for free papers on robotic manipulation, control, and system identification.
- PubMed: Search for review articles on human-safe robotic control and adaptive control methods.
- arXiv: Search for preprints on differentiable control, model predictive control, and neural system identification.
- IEEE Transactions on Control Systems Technology: Search recent articles for applied control methods, comparison studies, and evaluation metrics.
Engineering Technology: Statics and Dynamics Category Guide
How to Do Real Engineering Technology Research at Home: A High School Student’s Guide to Free Tools, Affordable Kits, and Public Databases →For next steps tailored to your interests, skill level, and timeline, work one-on-one with a MehtA+ mentor. Learn more about MehtA+ Science & Engineering Research Mentorship →
To discover more projects, visit the MehtA+ Science Fair Hub →
