Model Predictive Control

Job ID: 32510910

Budget: $15 – $25 USD

Need to Implement Model Predictive Aeration Control for a wastewater treatment aeration system.
Our system now is a blower driven by motor with VFD (acts as a flow control) it blows air into a wastewater basin our control variable is to measure dissolved O [DO], we have a setpoint for amount of DO in wastewater and accordingly adjust VFD speed via 4-20mA analog to achieve DO setpoint.

We do not have a model of the current process system
We need to implement the job in three steps:
1. Identification process to find a model for system which has perfect performance to fit the real system.
2. Design a Suitable MPAC for system and check it performanceNeed to Implement Model Predictive Control for a wastewater treatment aeration system.
Our system now is a blower driven by motor with VFD (acts as a flow control) it blows air into a wastewater basin our control variable is to measure dissolved O [DO], we have a setpoint for amount of DO in wastewater and accordingly adjust VFD speed via 4-20mA analog to achieve DO setpoint.
We do not have a model of the current process system
We need to implement the job in three steps:
1. Identification process to find a model for system which has perfect performance to fit the real system.
2. Design a Suitable MPC for system and check it performance
3. Implement a real-time controller for system and solve any practical issues
Here are some different methods for identification process:
1. Continuous
2. Discrete
Also for discrete we have many types of models,
1. OE, 2. ARX, 3. ARMAX, 4. BJ and so on.

We will collect some data as input for different identification processes to check which one is better.
First Order, Second order, or higher order model may be needed. All of these must be checked in identification process. Multi-model may be an option for better performance
For identification process, there are some useful toolbox in MATLAB. it is suitable to do identification with MATLAB. But we can use Python if needed.

For design the MPC and check performance with simulation in MATLAB.

Once we have a good performance then implement the C++ / C# code to use in real-time system.

So:
1. Identification: MATLAB, Python
2. Simulation and initial design: MATLAB, Python
3. Real-time: C++
System log data of open-loop system will be provided
3. Implement a real-time controller for system and solve any practical issues
Here are some different methods for identification process:
1. Continuous
2. Discrete
Also for discrete we have many types of models,
1. OE, 2. ARX, 3. ARMAX, 4. BJ and so on.

We will collect some data as input for different identification processes to check which one is better.
First Order, Second order, or higher order model may be needed. All of these must be checked in identification process. Multi-model may be an option for better performance
For identification process, there are some useful toolbox in MATLAB. it is suitable to do identification with MATLAB. But we can use Python if needed.

For design the MPC and check performance with simulation in MATLAB.

Once we have a good performance then implement the C++ / C# code to use in real-time system.

So:
1. Identification: MATLAB, Python
2. Simulation and initial design: MATLAB, Python
3. Real-time: C++
System log data of open-loop system will be provided

I have attached a sample paper as attached not exact as to what we need but covers most of it, this will be a long term project few months so I am looking for serious candidate experience with Matlab