Controllers

Controllers indirectly control a regulator in order to achieve a defined setpoint. The following types of controller are available:

Adaptive Pump Controls

An adaptive pump controller controls the operation of a fixed capacity pump by choosing the switch-on and switch-off times based on the length of time of the previous run cycle.

You must define the following variables:

The pump control uses the following rules:

idle time x max run time = max idle time x (max run time - run time)

If the calculated idle time is less than the minimum idle time, the minimum is used.

If the sump is not empty after the maximum running time, then the model starts another pump to assist the process.

To set up an adaptive pump control:

  1. Define a Range record containing the adaptive pump control settings.
  2. Define a Rule record referencing the adaptive pump control range.

Incremental Controllers

Incremental controllers increase the regulator setting by one increment when the measured value in the network is higher than the setpoint and decrease the setting by one increment when the measured value is lower than the setpoint.

To set up an incremental controller:

  1. Define a Range record to measure the required variable (for example you may wish to maintain a steady flow at a certain point in the system).
  2. Define a Controller record (specifying INC as the controller type).
  3. Define a Rule record referencing the controller.

PID Controllers

PID controllers take into account the rate of change of the measured variable to calculate the increase or decrease in the regulator setting. These controllers use Proportional, Integral and Differential (PID) coefficients to adjust the change made by the regulator.

A PID controller is defined as follows:

 

 

where:

Kp       Proportional coefficient

Ki Integral coefficient

Kd Differential coefficient

E Error signal from the sensor

 

E = (Vobs - Vset)/Range

 

where:

Vobs   Observed value (possibly filtered)

Vset    Setpoint

Range Sensor Range

To set up a PID controller:

  1. Define a Range record to act as a sensor to measure the required variable (for example, you may wish to maintain a steady flow at a certain point in the system).
  2. Define a Controller record (specifying PID as the controller type).
  3. Define a Rule record referencing the controller.

FUZZY Controllers

Fuzzy controllers use member functions and fuzzy rules to determine the operation of a variable sluice gate. The purpose of the control is to protect a flooding location downstream of the gate.

To set up a FUZZY controller:

  1. Ensure that a variable sluice gate is included in the InfoWorks network.
  2. Use the Insert Regulator option to add the sluice gate in the RTC Editor at the Regulator or Global level.
  3. Define two Range records:
    • the flooding protection location downstream of the gate
    • a node location directly upstream of the gate

    Typically the flooding location range will be set to have a minimum level equivalent to the level at which the gate is first desired to become active and implement the fuzzy logic. The gate level will also be defined to have a minimum level; one at which it is desired for the fuzzy logic to become active.

  4. Define an OR Logic statement. This provides the ability to reference either the flood location or the gate location exceedance of minimums becoming true.
  5. Define the Membership functions for each input and output of the fuzzy logic control algorithm.
  6. Define the Fuzzy rules. These use the member functions defined in the previous step as input.
  7. Define a Controller record (specifying FUZZY as the controller type).
  8. Define two Rules records:
    • The default rule for when the FUZZY controller is not active. This is a POS rule that sets the gate to its fully open position.
    • The controller rule. Its condition is the logic definition defined in step 4.