Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
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).*

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages