Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
# Water Level Control of a Non-linear Tank System **Linear Control Systems Project | Fall 2025** **Supervised by: Dr. H. R. Taghirad** ## 1. Project Overview This project focuses on designing and simulating a robust PID controller for a non-linear water tank system. The primary goal is to maintain the water level at a specific setpoint (5m) while satisfying strict performance metrics in the presence of noise and disturbances. ### Performance Targets: - **Settling Time (Ts):** < 5 seconds (2% Criterion) - **Overshoot (OS):** 10% - 20% - **Steady-state Error:** Zero (Achieved via Integral Action) ## 2. Key Features - **Non-linear Dynamics:** Real-world modeling of tank outflow. - **Anti-Windup Logic:** Prevents integrator windup during valve saturation (0-100%). - **Stability Analysis:** Includes Bode plots, Nyquist diagrams, and Pole-Zero maps. - **Robustness:** Performance verified under Gaussian sensor noise and pulse disturbances. ## 3. Repository Structure - `/Codes`: MATLAB scripts (`main_run.m`, `setup_params.m`, `tank_model.m`). - `/Report`: Technical report (PDF). - `/Presentation`: PowerPoint slides for project defense. ## 4. How to Run 1. Open MATLAB and navigate to the project directory. 2. Run `main_run.m` to execute the simulation and view results. ## 5. References 1. **MathWorks Documentation.** *PID Tuner and Non-linear ODE Solvers (ode45).* 2. **Dorf, R. C., & Bishop, R. H. (2016).** *Modern Control Systems.* Pearson Education. 3. **Ogata, K. (2010).** *Modern Control Engineering.* 5th Edition, Prentice Hall. --- *Developed for the Linear Control Systems Course (K. N. Toosi University of Technology).*