How can I modify the manipulated variable properties in a MPC block in Simulink?

I'm developing the MPC controller for ventilator.
Plant model consist of 3 inputs and 1 output.
Three inputs are ventilator on/off(manipulated variable), occupancy sch. (measured disturbance 1) and outdoor co2 (measured disturbance 2).
One output is indoor co2 (measured output).
I want to control the ventiltor to only the on/off (0, 1).
I set the minimum and maximum constraints of manipulated variable(vantiltor on/off), It is 0 and 1 respectively.
And I set the max down rate and max up rate. it is -1 and 1 respectively.
However, the calculated result of manipulated variable include values between 0 and 1.
How could I fix this problem?
Thanks.

1 Kommentar

Hi,
Have you find a solution to your problem?
I am trying to implement an MPC for a bang-bang control output.
Thank you!

Melden Sie sich an, um zu kommentieren.

Antworten (2)

Ryan G
Ryan G am 16 Okt. 2012
I don't know if I would normally use a MPC control for a bang-bang (on/off) control scheme, but then again I'm not really that familiar with MPC.
Try using a quantizer on the output and set the interval to 1.
Azzi Abdelmalek
Azzi Abdelmalek am 16 Okt. 2012
Bearbeitet: Azzi Abdelmalek am 16 Okt. 2012
pass your input signal through a zoh (zero order hold) block from simulink/discret. or set your signal source datype to logical

Kategorien

Gefragt:

am 16 Okt. 2012

Kommentiert:

am 16 Okt. 2018

Community Treasure Hunt

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

Start Hunting!

Translated by