How to apply the range control with Model Predictive Control in Simulink?

Hi Sirs/Madams,
I have ideal to apply the range control method into MPC in simullink but i dont know whether MPC tool is supportted and how to use it?
example:
Ideal 1:
if operating point is in its min/max range, then MPC will do optimization duty and opposite if operating point is out of its min/max range then MPC will take control again.
Ideal 2:
I have 3 controller to control a process variable ( MISO ), i will make priority of 03 these controllers with higher/lower/lowest order. When highest controller reached its limit then next controller will take control.
I hope everyone have experience in MPC to give solution. Thank you very much in advance.
Best regards.

Answers (1)

4 Comments

Hi Mr. Emmanouil,
Thank you very much for your help and shares.
I tested the examples which you shared, however it did not reach my goal. I shared my programs to you for detail with some explanation as below to help you have more information:
I want to control outlet temp of primary reformer by fuel gas variable ( primary). Outlet Temp will be impacted if steam or natural gas inlet ( as predicted disturbance ). Steam will control ratio Steam/Carbon ( higher priority), and beside of it, steam may be control outlet temp of Primary reformer as lower priority. I built 2 controller:
  1. 01 SISO (Fuel controller) for controlling outlet temp by fuel. ( if success, i will add more disturbance of NG and Steam).
  2. 01 SIMO controller ( steam controller) is to control ratio of steam/carbon and outet temp with priority:
  • higher priority: is to control main ratio of steam/carbon.
  • lower priority: is to control outlet temp when fuel controller reached its control range ( MV high/low limit) and ratio of steam/carbon is within its allowable range ( PV range or output range ).
These above control strategy is applied to real system by honeywell, however i want to test it on matlab.
I hope that your help will make me to find solution to do it well.
Thank you.
Hi Mr. Emmanouil,
One more thing as attached picture, for MPC controller, I think that we can determine :
  1. MV and Output at next move step
  2. MV and output at steady state
I can not determine them by MPC block in simullink, however i can determine them by using mpcmove and how to do it?
My system is applying advance process control APC interface with DCS system with control interval of1 minute. APC will send setpoint to DCS at 1 minute.
Thank you very much for your help.
Best regards.
I am attaching a version that seems to do what you mentioned at the beginning. I believe there were a few connections that were not properly connected in the Simulink model and also the controller weights needed some tuning.
Hi Mr. Emmanouil,
Thank you very much. Yeah, I mistaken with some few connection were not connected properly.
Could you help me the solution to solve this problem: I am trying to get two target value as below:
  1. MV and Output at next move step: when i changed input, i can determine output at one step ahaed?
  2. MV and output at steady state: when i changed input, i can estimate the output at steady state.
I can not determine them by MPC block in simullink, however i can determine them by using mpcmove and how to do it?
Thank you very much in advance for your help.

Sign in to comment.

Asked:

on 4 Apr 2020

Commented:

on 17 May 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!