Multivariable Control of a 2-Rod Inverted Pendulum

Part of ECE 488: Multivariable Control Systems — Major Project

Goal

The task was to design and implement controllers to control both a two- and three-degree-of-freedom inverted pendulum system using SISO and MIMO strategies. Performance specifications were to be met. Additionally, the performance limitations of the system were to be analyzed.

Method

I first explored the system by looking at it as a one-degree-of-freedom 1-rod system and implementing a controller using SISO techniques.

To control the two-degree-of-freedom 1-rod inverted pendulum, I approximated the MIMO plant as two decoupled SISO systems. I used PID control methods, Youla Parameterization, root locus plots, and Bode plots to design controllers. I tested this system on the real, coupled plant to ensure stability and performance.

To control the three-degree-of-freedom 2-rod inverted pendulum, I built a MIMO control system using state space methods. I implemented plain-state feedback control with integral action and pole placement to reach the required performance.

I analyzed the performance limitations of the system using the Bode Sensitivity Integral, Small Gain Theorem, and the Poisson Integral. I evaluated the impact of uncertainty on phase margin and robustness. I verified controllability of the system.

All of this project was done using Matlab.

Results

  • Achieved all the design specifications.
  • Settling time of 0.37s.
  • 0 steady-state error.
  • Achieved successful control of the 1-rod and 2-rod inverted pendulum. See the image and videos on the right for the MIMO step response and visualizations of the system.