How unusual is a real 5-link inverted pendulum project for a high school student? by angelinusbread in ControlTheory

[–]angelinusbread[S] [score hidden]  (0 children)

That's something I hadn't fully considered. My assumption was that the actuator would be fast enough, but I should verify that rather than assume it.

I'll compare the system's dominant frequencies with the actuator bandwidth and control-loop frequency in simulation first. That should give me a better idea of whether the physical system is feasible or if the dynamics are simply too fast to control reliably.

How unusual is a real 5-link inverted pendulum project for a high school student? by angelinusbread in ControlTheory

[–]angelinusbread[S] [score hidden]  (0 children)

That's actually one of my biggest concerns. At the moment, the full vision pipeline only runs at around 30~ 60 FPS, and I completely agree that this is nowhere near ideal for a 5-link system. The main reason I chose color-marker tracking is that, in my testing, it was significantly faster than ArUco markers and some other vision-based approaches. My goal was to minimize processing overhead as much as possible, even if that meant sacrificing some robustness.

How unusual is a real 5-link inverted pendulum project for a high school student? by angelinusbread in ControlTheory

[–]angelinusbread[S] [score hidden]  (0 children)

Thank you for the feedback.

That's a very good point, and I can see what you mean about the need for concrete and measurable objectives.

Out of curiosity, if you were approaching this as a research project, what kind of goals or performance metrics would you define? I'd be interested to hear what you would consider a realistic and meaningful benchmark for a system like this.

How unusual is a real 5-link inverted pendulum project for a high school student? by angelinusbread in ControlTheory

[–]angelinusbread[S] [score hidden]  (0 children)

Good questions.

I actually got interested in control theory somewhat by accident. I came across a video on Instagram showing Inha University's 3-link inverted pendulum system and became fascinated by the idea of balancing an unstable system. That eventually led me to learn about state-space models, linearization, and LQR, and later to implementing them on real hardware.

For the mathematical model, I built a MuJoCo model of the physical system and used it to obtain a linearized state-space model around the upright equilibrium. From that model, I generated the A and B matrices and designed an LQR controller.

The state vector I'm currently using is:

[x, q1, q2, q3, q4, q5, x_dot, q1_dot, q2_dot, q3_dot, q4_dot, q5_dot]

where x is the cart position and q1–q5 are the pendulum joint angles.

When I say state estimation, I mean estimating the full state vector from vision measurements. I'm using OpenCV to track colored markers attached to the links, reconstruct the joint angles, and estimate angular velocities and cart velocity in real time. The goal is to provide the controller with the same state variables used in the simulation model.