This project focuses on the development and testing of an advanced control strategy known as Model Predictive Control (MPC). As modern industrial systems become increasingly complex, traditional controllers such as PID are often no longer sufficient — especially when systems involve multiple variables, constraints, or the need to optimize performance. MPC provides a powerful alternative by using a dynamic model of the system to predict future behavior and compute control actions in a way that balances performance with real-world limitations. The goal of our work was to implement and evaluate MPC in a simulated environment, with an emphasis on understanding how it behaves under various conditions.

To test the controller, we used a simplified physical model — a double integrator system, which can be thought of as a basic representation of a moving vehicle, where acceleration is the input, and the states are velocity and position. The simulation environment allowed us to gradually build and test different elements of the controller while maintaining full control over the setup.

We began by formulating the predictive control problem. This involved defining a cost function to guide the controller’s decisions, along with constraints on inputs and states to ensure the system stayed within realistic physical limits. An important part of the setup was the creation of custom visualization tools to track the system’s behavior, which proved invaluable not only for analysis but also for debugging and tuning the controller.

As the project progressed, we added further complexity. We introduced measurement noise to simulate the imperfections found in real-world sensors and observed how well the controller could maintain stability and meet constraints despite uncertainty in the data. The results confirmed the robustness of the MPC design.

In the final stage, we implemented two critical features for real-world applications. First was reference tracking, allowing the system to follow a desired trajectory rather than just stabilizing at zero. This made the control task more dynamic and better suited to practical use cases. The second was the inclusion of input rate constraints, which limit how fast the control signal can change. These constraints are important in systems with actuators that cannot respond instantaneously and helped ensure smoother, more realistic control actions.

At this stage, the controller is fully functional in simulation. It can stabilize the system, follow time-varying references, and respect both physical and actuator constraints — all while reacting to uncertainty. The next step will be to apply this controller in a laboratory setting, where we can further evaluate its performance in real-time on physical hardware.

Overall, the project has provided valuable insight into both the theoretical and practical aspects of Model Predictive Control. It demonstrated not only how MPC can be implemented effectively but also how it can be adapted to meet the needs of more realistic, constrained, and uncertain environments. We are looking forward to continuing this work and exploring the full potential of MPC in practice.

Categories: Uncategorized