Diagnosing Contradictory Position Inputs (Pos0Aut - Pos1Aut) and Invalid Signal States in APL Vlv2WayL

Diagnosing Contradictory Position Inputs (Pos0Aut - Pos1Aut) and Invalid Signal States in APL Vlv2WayL

In SIMATIC PCS 7 Advanced Process Library (APL), when a two-way valve block like Vlv2WayL receives contradictory automatic commands—specifically when both Pos0Aut = 1 (command to Position 0) and Pos1Aut = 1 (command to Position 1) are active simultaneously in Auto mode—the block intentionally does NOT generate an operator alarm in WinCC Alarm Logging. Instead, the APL algorithm treats this as an 'Invalid Input Signal', outputs an error code (ErrorNum = 51), and displays the visual banner 'Invalid signal' in the faceplate standard view. The block neutralizes the contradictory commands by holding its current position or driving to a defined neutral state.

Table of Contents

Executive Summary

The Advanced Process Library (APL) in SIMATIC PCS 7 implements sophisticated signal validation and error-handling hierarchies to prevent contradictory control inputs from damaging physical process equipment. When developing sequencing logic in CFC for two-position or two-way control valves using Vlv2WayL (or standard VlvL), control engineers sometimes write interlock or automatic sequencing logic that accidentally asserts both position commands (Pos0Aut = 1 and Pos1Aut = 1) at the same time. A frequent question arises: why does the WinCC alarm horn remain silent and why does no alarm record appear in the message list? This article explains the APL error handling concept, details the ErrorNum parameter behavior, and demonstrates how to handle invalid input signals at both the AS and OS layers.

Architecture and Fundamental Mechanics

APL Error Handling Hierarchy, Invalid Signal Suppression, and Vlv2WayL Control Mechanics:

  • APL Error Handling Philosophy (Section 2.1.6 of APL Manual):
  • The APL categorizes runtime anomalies into distinct classes:
    1. Process Alarms: Genuine physical process deviations (e.g. High Pressure, High Vibration) recorded in WinCC Alarm Logging.
    2. Control System Faults: Feedback monitoring errors (e.g. valve failed to open within MonTiDynamic), generating alarms.
    3. Invalid Input Signals: Logical contradictions originating from user programming in CFC (e.g. simultaneous Open and Close commands).
  • Design Rationale: Contradictory automatic commands are engineering programming defects, not physical plant emergencies. Flooding WinCC Alarm Logging with programming errors would distract operators during upsets. Therefore, APL handles these errors locally on the block interface.

  • Behavioral Mechanics of Vlv2WayL Under Contradictory Inputs:

  • Inputs: Pos0Aut (Command to Position 0 / Closed), Pos1Aut (Command to Position 1 / Open), Pos2Aut (Position 2 if 3-way).
  • When Pos0Aut = 1 AND Pos1Aut = 1 while in Automatic mode (ModLiOp = 1 and AutModLi = 1):

    1. The block's internal validation algorithm trips.
    2. It sets the integer output ErrorNum = 51 (Invalid signal combination).
    3. It suppresses command execution: the valve does NOT toggle or chatter. Depending on the Feature bit configuration, the valve holds its current position or drives to the safety position.
    4. On the WinCC APL faceplate standard view (@pg_vlv2wayl_standard.pdl), the block outputs the explicit text: 'Invalid signal'.
  • Generating WinCC Alarms for Invalid Signals (If Required):

  • If operational procedures mandate alerting the operator whenever an invalid automation command occurs, the engineer must evaluate ErrorNum in CFC and route it to an external message block (EventTs or block input ExtMsg1).

Step-by-Step Implementation Procedure

  1. Inspect the Vlv2WayL Block in CFC Online Test Mode:
    * Open the CFC chart containing the Vlv2WayL block instance.
    * Switch to Test Mode (Ctrl+F).
    * Inspect pins Pos0Aut and Pos1Aut: observe that both are TRUE.
    * Inspect output parameter ErrorNum: verify it reads 51.
    * Observe that the physical control outputs (Ctrl0, Ctrl1) hold a safe state rather than chattering.

  2. Inspect the WinCC Faceplate Display:
    * In WinCC Runtime, click on the valve block icon.
    * In the standard view of the faceplate, look at the status bar.
    * Verify that the text Invalid signal is displayed, alerting the operator that automatic logic is contradictory.

  3. Correct the Upstream CFC Interconnection Logic:
    * In CFC, trace the signals feeding Pos0Aut and Pos1Aut.
    * Ensure that interlock logic or flip-flops (RS_FF) prevent both signals from asserting simultaneously.
    * Insert an interlock block (e.g. Intlk02) or mutual exclusion logic so that Pos0Aut is forced FALSE whenever Pos1Aut is TRUE.

  4. Optional: Route ErrorNum to an Alarm Message:
    * If an explicit alarm is required in the WinCC Alarm Logging list:
    * Insert a comparison block (CompInt): check if ErrorNum == 51.
    * Interconnect the output of CompInt to input ExtMsg1 on Vlv2WayL (or an EventTs block).
    * Configure the message text in the block properties: 'Valve Contradictory Position Command Error'.

Verification

  1. In CFC test mode, clear the contradictory condition so only Pos1Aut = 1 and Pos0Aut = 0.
  2. Verify that ErrorNum resets from 51 to 0.
  3. Confirm that the faceplate status 'Invalid signal' clears immediately.
  4. Verify that the valve drives smoothly to Position 1 and asserts the corresponding control output (Ctrl1 = 1).

Limitations and Operational Precautions

Different APL blocks utilize different ErrorNum values (e.g. motors utilize specific error codes for simultaneous start/stop). Never rely on the block's internal invalid signal suppression as a replacement for proper interlock engineering; always implement hardware interlocks and mutually exclusive software logic.

Engineer FAQ

Why doesn't Vlv2WayL trigger an alarm when Pos0Aut and Pos1Aut are both 1?

Because APL treats contradictory commands as 'Invalid Input Signals' rather than process alarms, outputting ErrorNum = 51 and displaying 'Invalid signal' on the faceplate instead of alarming.

What does ErrorNum = 51 mean on Vlv2WayL?

It signifies an invalid signal combination, specifically that contradictory position commands are asserted simultaneously in Auto mode.

What happens to the physical valve when both position commands are active?

The block suppresses actuator commands, holding its current position or transitioning to the configured safe position without chattering.

Where is the 'Invalid signal' message displayed?

In the standard view of the APL faceplate directly above the valve status graphic.

How can I generate an alarm in WinCC for ErrorNum = 51?

Evaluate ErrorNum == 51 using a comparison block in CFC and route the boolean output to ExtMsg1 on the valve block.

Technical References

Related Articles

Related Tags

  • Vlv2WayL
  • APL
  • ErrorNum
  • Invalid Signal
  • Pos0Aut
  • Pos1Aut
  • Valve Control
  • PCS 7 V9.0
20 respuestas