Using Controller Elements
Controller elements allow you to more easily simulate feedback control systems. The goal of a feedback control system is to control the value of a state variable The output of an element in GoldSim whose value is computed based on the historical value of the element’s inputs (as opposed to only being a function of the current value of the element’s inputs). State variables have well-defined initial conditions. Feedback loops can only be created if they contain at least one state variable. (e.g., volume in a pond, heat in a house) or a proxy for that variable (e.g., water level in a pond, temperature in a house) by actively adjusting additions (inflows) or withdrawals (outflows) with the goal of smoothly approaching and/or dynamically maintaining a desired target value.
Feedback control systems can be found in many industrial processes, financial/business systems and even biological systems (e.g., many biological processes are naturally controlled in this way).
For example:
- You might want to control the water level in a pond (that is receiving rainfall and is evaporating) by turning on and off pumps that add or subtract water from the pond.
- You might want to control the temperature in a house by turning on and off the furnace (i.e., a thermostat is an example of a Controller).
- You might want to maintain a particular inventory level of some item by modifying the production rate up or down.
In some systems (e.g., a chemical plant), the system is fully automated (and adjustments are essentially continuous). That is, the controller is electronic and automatically (and near continuously) adjusts inflows/outflows (e.g., by changing a pumping rate or controlling a valve) in response to the current value of the input signal. Biological feedback control systems can also be thought of “automated”, in that they are continuously adjusting to new levels (e.g., to maintain a target concentration of some chemical). In other systems, however, the system is not actually automated. Instead, what we are doing when we simulate the feedback system is representing the various manual decisions and actions that are taking place in order to control the system (e.g., manually turning pumps on and off; increasing or decreasing productions rates). These decisions/actions are often actually discrete (as opposed to continuous). In some cases, we may indeed want to represent those discrete actions as “events” (and one type of Controller specifically does this). In others cases, however, what we are doing is representing the “lumped” effect of multiple discrete actions of the system’s operators (people) such that it actually is treated in the model as a continuous response.
While control systems can be represented in GoldSim using basic GoldSim elements, the Controller element An element that allows you to simulate feedback control systems in which a process variable is adjusted towards a target. makes it much easier to build and represent such systems while also enforcing a consistent methodology and removing difficulties users can face when building the logic from scratch with basic elements.
Learn more
- Understanding Controllers
- Basic Controller Inputs
- Defining a Deadband Controller
- Defining a Proportional Controller
- Defining a Proportional Integral Derivative (PID) Controller
- Defining a Target that Represents an Upper or Lower Limit
- Comparing the Different Methods: Which Type of Controller Should I Use?
- Turning a Controller On and Off
- Using a Proxy for the Process Variable When Defining a Controller
- Controlling a Process Using Multiple Controllers
- Constraints on the Output of Controllers
- Browser View of a Controller
- Understanding State Variables in GoldSim