A Control Loop defines a PID (or other) control strategy for continuous process control. Control loops manage setpoints, tuning parameters, modes, failure behavior, and phase interaction — providing a complete specification for how a process variable is controlled.
💡 In pharmaceutical terms: Control loops are the backbone of automated process control. They continuously regulate critical parameters like temperature during SIP sterilization, flow rate during CIP circulation, or pressure during product transfer. A well-defined control loop ensures your process stays within validated ranges.
📋 Properties
Identity
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Name |
Text |
— |
Unique identifier (e.g., "TIC-101", "FIC-201") |
|
Description |
Text |
— |
Detailed description of the loop's purpose |
|
Loop Number |
Text |
— |
Loop number/tag for identification |
|
Criticality |
Selection |
Non-Critical |
See table below |
|
Pattern |
Selection |
Basic PID |
See table below |
🎯 Criticality Levels
|
Criticality |
What It Means |
Verification Required |
|---|---|---|
|
Quality-Critical (Critical Process Parameter) |
This loop controls a parameter that directly impacts product quality — highest verification level |
Full qualification (IQ/OQ/PQ), periodic re-verification |
|
Safety-Critical |
This loop controls a parameter that impacts personnel or equipment safety |
Safety integrity verification, redundancy assessment |
|
Non-Critical |
This loop controls a parameter that does not directly impact quality or safety |
Standard commissioning |
📊 Process Variable (PV)
|
Property |
Type |
Description |
|---|---|---|
|
PV Instrument Tag |
Text |
Tag name of the measuring instrument |
|
PV Units |
Text |
Measurement units (e.g., "°C", "bar") |
|
PV Range Low |
Decimal |
Lower range of the PV |
|
PV Range High |
Decimal |
Upper range of the PV |
|
PV Filter Expression |
Text |
Optional signal filter expression |
|
Bad PV Behavior |
Text |
What to do when PV signal is bad |
🎚️ Setpoint Sources
Each loop can have multiple setpoint source configurations, one per operating mode:
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Mode |
Selection |
— |
Which mode this source applies to (Auto, Manual, Cascade, Remote SP) |
|
Source Type |
Selection |
Operator |
Where the setpoint comes from (see below) |
|
Default SP |
Decimal |
— |
Default setpoint value |
|
SP Range Low |
Decimal |
— |
Minimum setpoint limit |
|
SP Range High |
Decimal |
— |
Maximum setpoint limit |
|
Ramp Rate |
Decimal |
— |
Setpoint ramp rate |
|
Notes |
Text |
— |
Additional notes |
Setpoint Source Types:
|
Source Type |
What It Means |
|---|---|
|
Operator |
Setpoint entered by the operator via HMI |
|
Recipe |
Setpoint comes from the recipe/phase parameter |
|
Engineering |
Fixed engineering value (not changeable during operation) |
|
Remote Loop |
Setpoint received from an external system |
|
Master Loop |
Setpoint driven by the output of a cascade master loop |
🔧 Controller
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Algorithm |
Selection |
PID |
P (proportional only), PI (proportional + integral), PID (full PID), or On/Off (two-position) |
|
Action |
Selection |
Reverse |
See table below |
|
Action Rationale |
Text |
— |
Explanation for the control action choice |
|
Derivative on PV |
Yes/No |
Yes |
Whether derivative acts on PV (not error) |
|
Scan Time (ms) |
Decimal |
250 |
Controller scan time in milliseconds |
Control Actions:
|
Action |
What It Means |
Typical Use |
|---|---|---|
|
Direct acting (output increases with error) |
When the process variable rises above setpoint, the output increases |
Cooling applications — more cooling when temperature rises |
|
Reverse acting (output decreases with error) |
When the process variable drops below setpoint, the output increases |
Heating applications — more steam when temperature drops |
📤 Output
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Output Range Low |
Decimal |
0 |
Lower output range |
|
Output Range High |
Decimal |
100 |
Upper output range |
|
Output Limit Low |
Decimal |
0 |
Lower output limit |
|
Output Limit High |
Decimal |
100 |
Upper output limit |
|
Output Rate Limit |
Decimal |
— |
Maximum output change rate |
🏭 Final Control Elements
Each loop can control one or more Final Control Elements (valves/instruments):
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Valve Name |
Text |
— |
Name of the controlled valve/instrument |
|
Split Range Low |
Decimal |
0 |
Lower split range boundary |
|
Split Range High |
Decimal |
100 |
Upper split range boundary |
|
Overlap Deadband |
Text |
— |
Overlap/deadband for split range |
🔄 Mode Handling
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Allowed Modes |
List |
Auto, Manual |
Available modes: Auto, Manual, Cascade, Remote SP |
|
Default Mode |
Selection |
Auto |
Initial mode when loop starts |
|
Bumpless Transfer Enabled |
Yes/No |
Yes |
Whether bumpless transfer is active |
|
Bumpless Transfer Method |
Text |
— |
Method description |
⚠️ Failure Behavior
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
On Bad PV |
Selection |
Hold last output |
What to do when the process variable signal is bad |
|
On Communication Loss |
Selection |
Hold last output |
What to do when communication with the instrument is lost |
|
On Device Fault |
Selection |
Force manual mode |
What to do when the final control element has a fault |
Failure Response Options:
|
Response |
What It Means |
|---|---|
|
Hold last output |
Keep the output at its last known good value |
|
Drive to safe position |
Move the output to a predefined safe value |
|
Force manual mode |
Switch the loop to manual mode for operator control |
|
Trigger interlock |
Fire an associated Interlock for safety response |
🔗 Phase Interaction
|
Property |
Type |
Description |
|---|---|---|
|
Phase Interaction Notes |
Text |
General notes on how the loop interacts with phases |
|
On Phase Start |
Text |
What the loop does when a phase starts |
|
During Phase Run |
Text |
Behavior during phase execution |
|
On Phase Hold/Abort |
Text |
Behavior on phase hold or abort |
📡 Demand and Ownership
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Default Demand Source |
Selection |
Manual/Operator |
Where the demand comes from: Manual/Operator (HMI), Sequence/Phase (ISA-88 phase), or Control Loop (automatic) |
|
Ownership Arbitration Notes |
Text |
— |
Notes on ownership arbitration |
🖥️ HMI
|
Property |
Type |
Description |
|---|---|---|
|
HMI Faceplate Requirements |
Text |
Faceplate display requirements |
|
Operator Permissions |
Text |
Permission requirements for operator actions |
🧪 Testing
|
Property |
Type |
Description |
|---|---|---|
|
Loop Alarm Notes |
Text |
Alarm configuration notes for this loop |
|
Acceptance Criteria |
Text |
Acceptance criteria for loop commissioning |
|
Test Note |
Text |
Testing notes |
🤝 How an Instrument Controls a Valve, Step by Step
Beyond the formal Control Loop record above, AseptSoft lets you express control directly on the drawing: you point an instrument at one or more valves and declare, per step, whether that instrument is actively driving those valves or merely watching them. This is the live, step-aware picture of control that drives the colours on your P&ID and the cells of the Valve Phase Matrix.
💡 The mental model is per-step: "In this step PIT-101 drives XV-101 and XV-102; in that step it only watches; in another step it drives a different pair entirely." The control picture is allowed to differ from one step to the next, because that is how real recipes behave.
⚖️ One Valve, One Truth Per Step
For any given step, a valve is in exactly one of two situations — never both at once:
|
Situation |
What It Means |
Example |
|---|---|---|
|
Manual state |
You have hand-assigned the valve a state such as Open or Closed for this step. The valve sits exactly where you put it. |
XV-107 (Product Inlet Block) set to Closed throughout a CIP cycle |
|
Under instrument control |
An instrument is actively driving the valve in this step. The valve no longer carries a hand-picked Open/Closed — its state is "under control". |
CV-202 driven by FIT-203 during the Caustic Wash step |
⚠️ A valve cannot be both manually set and under control in the same step. The moment an instrument takes the driving role over a valve in a step, that valve's state for that step becomes one of the two control states described below. If you later hand-pick a plain Open or Closed for that valve in that step, the control relationship for that step is released — the two pictures can never contradict each other.
🎛️ The Two Control States
When a valve is under instrument control, the state it shows is one of two named control states. Which one is used depends on the kind of valve:
|
Control State |
Default Name |
Used For |
Meaning |
|---|---|---|---|
|
Binary control |
Under control |
Ordinary on/off valves driven by a setpoint |
The instrument opens or closes the valve to hold a target — the valve itself is not modulating |
|
Modulating control |
PID control |
Intrinsic control valves (a true modulating final control element) |
The instrument continuously throttles the valve position via a PID loop |
Both control states keep the fluid path open in simulations — a controlled segment stays traversable so your fluid-flow analysis still works.
🏷️ Controlling vs. Monitoring
An instrument's relationship to its valves carries a role that is set independently in each step:
|
Role |
What the Instrument Does |
Effect on the Valve |
|---|---|---|
|
Controlling |
Actively drives the paired valves in this step |
Each driven valve's state becomes Under control / PID control |
|
Monitoring |
Only reads the process in this step — does not move any valve |
No valve is claimed; valves keep their own manual states |
|
Inactive |
The instrument plays no role in this step |
No effect |
📋 Monitoring is purely an instrument attribute. A monitoring instrument has no valve relationship in that step — it simply observes. This mirrors how control practice describes a measurement that informs the operator or the sequence without taking action. Only the Controlling role turns valves into the under-control states.
🔄 A Different Valve Set in Every Step
The valves an instrument drives are chosen per step, so the same instrument can manage a completely different group of valves as the recipe advances:
-
Pre-Rinse — FIT-203 controls XV-101 and XV-102 (the rinse-supply pair)
-
Caustic Wash — FIT-203 monitors only (flow is held by the pump; no valve is claimed)
-
Acid Wash — FIT-203 controls CV-202 and CV-203 (the dosing pair)
-
Drain — FIT-203 is inactive
Picking valves while you are positioned in a given step edits only that step's set. Choosing valves in the Acid Wash step never disturbs the Pre-Rinse selection, so divergent control between steps is expressed exactly as you intend.
📖 How To: Put a Valve Under Instrument Control for a Step
-
Make the target step active — Select the step (phase) you want to configure, e.g. Caustic Wash, so your edits land in the right column.
-
Open the instrument's popup — Hover the controlling instrument (e.g. FIT-203) on the drawing to bring up its control popup.
-
Set the role to Controlling — Choose the Controlling role for the active step. (Choose Monitoring instead if the instrument should only watch.)
-
Pick the valves to drive — Select the valves this instrument should drive in this step (e.g. CV-202). The picker writes to the active step only.
-
Confirm the valves switched to a control state — Each driven valve now reads Under control (ordinary valves) or PID control (intrinsic control valves) for this step, instead of a hand-picked Open/Closed.
-
Move to the next step and repeat — Advance to the following step and set a new role and valve set as needed; earlier steps keep their own configuration.
⚙️ Customizing the Control-State Names and Cell Text
Different sites use different vocabulary for "a valve under control" — Under control, AUTO, PID, CV control, Under PLC control. The display of these control states is configurable for the whole environment so everyone reads the same words.
|
Setting |
What It Controls |
Default |
|---|---|---|
|
Separator character |
The token shown between the state name and the controller tag in composed cells |
⚙ |
|
Show controller tag |
Whether to append the controlling instrument's tag (e.g. PIT-501) to the cell |
On |
|
Show XX source name |
Whether to also append the linked variable/parameter name after the controller |
Off |
|
Binary-controlled state name |
The name shown when an ordinary valve is under control via a setpoint |
Under control |
|
Modulating state name |
The name shown when an intrinsic control valve is under control via PID |
PID control |
With the controller tag enabled, a controlled cell composes as a single readable identifier — for example PID control ⚙ FCV-203, or with the XX source switched on, PID control ⚙ FCV-203 / Setpoint. This same composed text is what appears in the Valve Phase Matrix and in Excel exports, and it round-trips back on import.
To change the control-state display
-
Open the AseptSoft Settings and choose Under-Control Cell Display.
-
Set the separator character, toggle the controller tag and XX source on or off, and rename the binary and modulating states to match your site vocabulary.
-
Save. The names persist immediately and every surface that shows control states — the matrix, Excel cells, the data grid — adopts the new wording.
✅ One name, end to end. Because the composed cell uses the same names everywhere, what you see in the matrix is exactly what lands in Excel and exactly what is understood again on import — no translation, no drift.
📐 Loop Patterns
|
Pattern |
What It Means |
Example |
|---|---|---|
|
Basic PID |
Standard feedback control — one sensor, one controller, one output |
Temperature control with one thermocouple and one steam valve |
|
Cascade |
Master loop output drives the setpoint of a slave loop — tighter control |
Temperature cascade: master on product temp, slave on jacket temp |
|
Ratio |
Setpoint is computed as a ratio of another measurement |
Chemical dosing proportional to flow rate |
|
Split Range |
One controller output drives two or more final elements across different output ranges |
Heating/cooling with a single temperature controller driving both steam and coolant valves |
|
Override |
Constraint/selector control — high/low select between multiple controllers |
Primary flow control with high-pressure override protection |
|
On/Off |
Simple two-position bang-bang control — fully on or fully off |
Level switch controlling an on/off pump |
Cascade-Specific Properties
|
Property |
Type |
Description |
|---|---|---|
|
Master Loop Name |
Text |
Reference to the master loop |
|
Slave Loop Name |
Text |
Reference to the slave loop |
|
Slave SP Limit Low / High |
Decimal |
Setpoint limits for the slave loop |
|
Slave Saturation Behavior |
Text |
What happens when the slave saturates |
Ratio-Specific Properties
|
Property |
Type |
Description |
|---|---|---|
|
Ratio Base Tag |
Text |
The base measurement tag |
|
Ratio Value |
Decimal |
The ratio multiplier |
|
Ratio Range Low / High |
Decimal |
Allowable ratio range |
|
Ratio Base Bad Behavior |
Text |
Behavior when the base measurement is bad |
Override-Specific Properties
|
Property |
Type |
Description |
|---|---|---|
|
Primary Controller Description |
Text |
Description of the primary controller |
|
Constraint Controller Description |
Text |
Description of the constraint controller |
|
Selector Type |
Text |
"High Select" or "Low Select" |
📖 How To: Define a Temperature Control Loop for SIP
-
Open Module Data — Navigate to the Data panel in the Module Ribbon and open the Module Data window.
-
Go to the Control Loops tab — Select the Control Loops section.
-
Create a new Control Loop — Name it (e.g., "TIC-201") and provide a description ("SIP steam temperature control").
-
Set the pattern — Choose "Basic PID" for a standard temperature loop.
-
Set the criticality — For SIP sterilization, choose "Quality-Critical (Critical Process Parameter)" since temperature directly impacts sterility assurance.
-
Configure the Process Variable — Set the PV instrument tag (e.g., TT-201), units (°C), and range (0–150 °C).
-
Configure the Setpoint — Set the default setpoint (e.g., 121 °C for SIP), range, and source type ("Recipe" for batch-driven or "Operator" for manual entry).
-
Set the Controller — Choose PID algorithm, "Reverse acting" (output increases when temperature drops), and a scan time of 250 ms.
-
Define the Final Control Element — Set the steam valve (e.g., TV-201) as the final element.
-
Configure Failure Behavior — Set "On Bad PV" to "Drive to safe position" (close steam valve) for safety.
-
Add Phase Interaction — Define what the loop does on phase start (set SP from recipe, switch to Auto), during run (maintain SP), and on hold/abort (hold last output or drive safe).
🏭 Example: SIP Temperature Control Loop
|
Property |
Value |
|---|---|
|
Name |
TIC-201 |
|
Description |
SIP steam temperature control — maintains sterilization temperature |
|
Loop Number |
201 |
|
Pattern |
Basic PID |
|
Criticality |
Quality-Critical (Critical Process Parameter) |
|
PV Instrument |
TT-201 (Temperature Transmitter) |
|
PV Range |
0–150 °C |
|
Algorithm |
PID |
|
Action |
Reverse acting (increase steam output when temperature drops below SP) |
|
Scan Time |
250 ms |
|
Final Element |
TV-201 (Steam Control Valve) |
|
Default Mode |
Auto |
|
On Bad PV |
Drive to safe position (close steam valve) |
|
On Communication Loss |
Hold last output |
|
Phase Start |
Set SP from recipe parameter (121 °C), switch to Auto |
|
Phase Hold |
Hold last output, maintain temperature |
|
Phase Abort |
Drive to safe position (close steam valve) |
🏭 Pharma context: During SIP sterilization, the temperature must be maintained at ≥121 °C for the validated hold time (typically 20–30 minutes at the coldest point). The control loop must respond quickly to temperature deviations and drive the steam valve to maintain the setpoint. If the temperature transmitter fails, the loop must safely close the steam valve to prevent overheating.
🏭 Example: CIP Flow Rate Control Loop
|
Property |
Value |
|---|---|
|
Name |
FIC-101 |
|
Description |
CIP circulation flow rate control |
|
Pattern |
Basic PID |
|
Criticality |
Non-Critical |
|
PV Instrument |
FT-101 (Flow Transmitter) |
|
PV Range |
0–10000 L/h |
|
Final Element |
FV-101 (Flow Control Valve) or VSD on CIP Pump |
|
Default SP |
5000 L/h |
|
Action |
Reverse acting |
|
On Bad PV |
Hold last output |
🔗 Related Pages
-
📋 Module Data — All module data types
-
📊 Valve Phase Matrix — The grid where per-step control states are shown and exported
-
🚨 Alarm — Alarm definitions that may relate to control loops
-
🛡️ Interlock — Safety interlocks that interact with control loops
-
📏 Parameter — Parameters used as setpoint sources
-
Engineering Item — Instruments and valves referenced by control loops
-
🧠 Algorithm Design — Condition logic that interacts with control loops