MaxK
Member
I get all that. But OP also said the total flow could be selected by the operator.
Assuming that means there is some feedback control of total flow, e.g. perhaps via a VFD, and the sum of the 8 vessels' measured flows is the PV to that total flow feedback control.
So the goals are
That being the case, sum of the 8 vessels' measured flow rates should be the same as the total flow rate PV, and since the total flow rate is under feedback control, that sum will also be the same as the total flow rate SP when that control is working. So the SPs for the individual vessels' flow valves should be 1/8 of the total flow rate SP.
- run the selected total flow i.e. total flow SP,
- run the VFD to meet that total flow SP with the minimum power requirement such that
- the flow rate through each vessel is the same as the flow rate through all other vessels.
Do I understand correctly that you are proposing to add feedback control of total flow, via a VFD (i.e. pump)?
Let the initial total inflow be 100 l/s. Setpoints for PID controllers of vessels / valves 12.5 l / s.
You change the total inflow setpoint to 200 l/s. The pump starts to increase flow but the flow through the vessels/valve rises so the vessel/valve PIDs start to close the valves.
If I understood the OP correctly, we cannot control the total inflow, i.e. it is disturbance.
I applied the following "function":
If abs(70 – max(Valve1_position,… Valve8_position) > 0,5 then
SP := SP + 0,5 * dt * (70 – max(Valve1_position,… Valve8_position)
else
SP := SP
Curves below shows result
Qv1 – Vessel 1 flow (1/resistance = 0.1)
Qv2 – Vessel 2 flow (1/resistance = 0.2)
Qv8 – Vessel 8 flow (1/resistance = 0.8)
Q – total flow
SP – vessel/valve PIDs setpoint (Qv1-Qv8 curves almost covered by SP curves)
Valve1(2)_pos - Valve1(2) position