Multiplexing Dual PID Controller Outputs to a Single Analog Output in SIMATIC PCS 7 CFC
To connect the manipulated value (MV) outputs of two independent PID controllers (PIDConL) to a single control valve analog output driver (Pcs7AnOu) in SIMATIC PCS 7 CFC, insert the APL analog signal selection block SelA02In. Connect PIDConL_Temp.MV to SelA02In.In1 and PIDConL_Flow.MV to SelA02In.In2, and connect SelA02In.Out to Pcs7AnOu.PV_In. To guarantee bumpless transfer when toggling the selector switch (SelIn), configure the inactive controller's tracking input (MV_Trk = Pcs7AnOu.PV_In and MV_TrkOn = 1) to prevent integral windup while inactive.
Table of Contents
- Process Architecture: Shared Final Control Elements
- CFC Block Selection: SelA02In Analog Multiplexer
- Preventing Integral Windup via Tracking (MV_Trk and MV_TrkOn)
- Step-by-Step CFC Interconnection and Sizing Workflow
- Comparison of Multi-Controller Selection Techniques
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Process Architecture: Shared Final Control Elements
In industrial pilot plants and batch chemical reactors, a single physical control valve often serves multiple operating modes. For example, during heating phases the valve regulates fluid outlet temperature, while during transfer phases the identical valve regulates volumetric outlet flow.
In SIMATIC PCS 7 Continuous Function Chart (CFC), the analog output driver block Pcs7AnOu expects a single process variable interconnection on its PV_In input pin. Wiring outputs from multiple PIDConL blocks directly to a single pin is strictly prohibited by the CFC compiler.
CFC Block Selection: SelA02In Analog Multiplexer
The Siemens Advanced Process Library (APL) provides the dedicated block SelA02In (2-Input Analog Selector):
SelA02Inroutes one of two analog input structures (In1orIn2, containing both real values and IEEE quality codes) to its output structureOut.- Selection is controlled by the binary input pin
SelIn: SelIn = 0:Out = In1(e.g. Temperature Controller).SelIn = 1:Out = In2(e.g. Flow Controller).- The block propagates the correct signal status (Quality Code
16#80Good) downstream toPcs7AnOu.
Preventing Integral Windup via Tracking (MV_Trk and MV_TrkOn)
A critical control stability hazard arises when an inactive PID controller continues integrating error while its output is disconnected from the physical valve (integral windup):
- If the temperature controller integrates up to 100% while flow control is active, switching control back to temperature causes the valve to instantly spike to 100%, causing severe thermal shock or pipe rupture.
- Bumpless Tracking Solution:
- Connect the actual valve position feedback (or
Pcs7AnOu.PV_In/SelA02In.Out) to the tracking value inputMV_Trkon bothPIDConLblocks. - Wire the inverted selector signal to
PIDConL_Temp.MV_TrkOnand the direct selector signal toPIDConL_Flow.MV_TrkOn. - When a controller is inactive, its internal integrator tracks the actual valve position. Upon switching, control transfers smoothly without any process bump.
Step-by-Step CFC Interconnection and Sizing Workflow
Implement the control strategy in CFC following this wiring structure:
- Instantiate Blocks: In the CFC chart, place
PIDConL(Temp),PIDConL(Flow),SelA02In, andPcs7AnOu. - Connect Manipulated Values:
- WirePIDConL_Temp.MV->SelA02In.In1.
- WirePIDConL_Flow.MV->SelA02In.In2.
- WireSelA02In.Out->Pcs7AnOu.PV_In. - Wire Tracking Logic:
- WireSelA02In.Out->PIDConL_Temp.MV_TrkandPIDConL_Flow.MV_Trk.
- Connect mode selection flag (ModeSel) toSelA02In.SelIn.
- WireModeSel->PIDConL_Flow.MV_TrkOn(inactive when ModeSel = 0).
- InvertModeSelvia anINV_Bor negated pin toPIDConL_Temp.MV_TrkOn(inactive when ModeSel = 1).
Comparison of Multi-Controller Selection Techniques
The table below contrasts strategies for shared actuator control in PCS 7:
SelA02InMV_Trk wiringMin08 / Max08GainSchedSplRangeVerification
Verify bumpless controller switching in runtime:
- Open CFC online and monitor both
PIDConLblocks andSelA02In. - Put Temperature control active (
SelIn = 0); adjust temperature setpoint and confirm valve output follows. - Inspect Flow controller: confirm
MV_TrkOn = 1and verifyPIDConL_Flow.MVmatches actual valve position. - Toggle
SelIn = 1to engage Flow control; confirm the valve position does not jump or bump. - Verify that
Pcs7AnOushows good signal status (16#80) across all switching transitions.
Limitations and Operational Precautions
Observe the following safeguards when multiplexing PID loops:
- Scale Normalization: Ensure both
PIDConLblocks output manipulated values in the identical engineering units (typically 0.0 to 100.0% valve opening) matching thePcs7AnOuinput scaling (Scale.LowtoScale.High). - Direct Negation: In CFC, pin inversions on Boolean tracking inputs must be clearly documented to prevent logic reversal.
- Alarm Management: Suppress nuisance tracking alarms on the inactive controller using message disable inputs (
MsgLock).
Engineer FAQ
What happens if I don't configure tracking on the inactive PID controller?
The inactive controller continues integrating process error. When control is switched back, its output will have drifted to 0% or 100%, causing the control valve to violently slam open or shut.
Can I use SelA02In for digital signals as well?
No. SelA02In is specifically for analog structures (value + status). For digital binary signals, use the APL block SelD02In.
How does SelA02In handle signal quality codes?
SelA02In passes the complete IEEE float structure including the quality code (ST) of the selected input directly to its Out parameter, ensuring channel drivers receive authentic diagnostics.
Technical References
- SIMATIC PCS 7 Advanced Process Library (APL) Function Manual: https://support.industry.siemens.com/cs/ww/en/view/109780765
- Process Control System PCS 7 - Control Strategies and Advanced Process Control: https://support.industry.siemens.com/cs/ww/en/view/102601737
- SIMATIC CFC for S7 / PCS 7 Configuration Guide: https://support.industry.siemens.com/cs/ww/en/view/109756486
Related Articles
- Configuring Normalization Range on CTRL_PID with Thermocouple Inputs in SIMATIC PCS 7
- Preserving Motor Command States and Operating Modes After Fault Reset in APL MotSpdCl
- Operating Principle of WarnAct and Pre-Warning Times in APL MotorL
Related Tags
- PIDConL
- SelA02In
- Pcs7AnOu
- Bumpless Transfer
- Integral Windup
- CFC Architecture