Configuring PCS 7 VlvL Block Messages in SIMATIC Manager
SIMATIC PCS 7 valve blocks such as VlvL, VlvAnL, and MotL ship with a fixed message architecture built on SFB/FB 35 (ALARM_8P) and a set of predefined event slots (SIG1 through SIG8). When the default slot labels do not match your plant text, or when you need to add a new event that the type does not expose, you must rewire the message text and event source through the SIMATIC Manager message configuration dialog. This article explains the message model used by the APL VlvL type, how to remap SIG1 and SIG2, how to trigger SIG3–SIG5 through the ExtMsg1–ExtMsg3 inputs, why SIG6–SIG8 cannot be used without source access, and how to add unlimited custom events through an MonAnL/MonDiL monitoring block. The procedure is valid for PCS 7 V9.0 SP2 through V9.1 with SIMATIC Manager V5.7 (no TIA Portal migration) and assumes that the operator station already runs WinCC Runtime with the standard message summary views.
VlvL from PCS 7 APL V9.0 or later. Equivalent behavior is found on VlvS, VlvM, MotSpdL, MotL, and AnL blocks; the eight-slot message model is identical across the family.Prerequisites
- PCS 7 Engineering Station with SIMATIC Manager V5.7 (ES V9.0 SP2 minimum, V9.1 recommended) installed.
- The S7 Program containing the
VlvLinstance has been compiled at least once with Generate module drivers off so that CFC/SFC charts are consistent. - Operator Station (OS) project in the same multiproject; WinCC Explorer is reachable from the ES via terminal bus or project remote access.
- Operator authorization Configuring messages on the target OS (right-click OS → Properties → Operator authorization).
- Standard PCS 7 message classes loaded from the master data library
PCS7_MsgClassLib. If you use user-defined message classes, activate them per the procedure in the Siemens Knowledge Base entry ID 109812497 – Configuring the message system with user-configurable message classes.
Understanding the VlvL Message Architecture
The VlvL type contains a single ALARM_8P instance inside its runtime code. That call exposes up to eight message slots, addressed in the message configuration as SIG1 through SIG8. Each slot is bound to a Boolean condition in the block and, by default, carries a PCS 7–supplied text such as Close command, Open command, Feedback closed, or External fault. The mapping is hard-coded inside the protected type (the F-source is not delivered with the standard PCS 7 installation), which means that the source of the event cannot be changed by wiring inputs on the block — only the text, the message class, the acknowledgement behavior, and the priority can be edited.
| Slot | Default event | Trigger source | Configurable in SIMATIC Manager? |
|---|---|---|---|
| SIG1 | Close command output | Internal (CmdClose) | Yes — text, class, ack |
| SIG2 | Open command output | Internal (CmdOpen) | Yes — text, class, ack |
| SIG3 | External message 1 | ExtMsg1 input | Yes — text, class, ack + external wiring |
| SIG4 | External message 2 | ExtMsg2 input | Yes — text, class, ack + external wiring |
| SIG5 | External message 3 | ExtMsg3 input | Yes — text, class, ack + external wiring |
| SIG6 | Not used (reserved) | No internal source | No — no trigger, no source code |
| SIG7 | Not used (reserved) | No internal source | No — no trigger, no source code |
| SIG8 | Not used (reserved) | No internal source | No — no trigger, no source code |
Configuring Internal Messages SIG1 and SIG2
SIG1 and SIG2 fire automatically when the corresponding command output of the valve (CmdClose or CmdOpen) goes high. You cannot rewire the trigger, but you can re-text the event and re-class the message so that the operator sees the wording you want.
- Open the S7 Program in SIMATIC Manager and double-click the CFC chart that holds the
VlvLinstance. - Right-click the
VlvLblock → Message configuration… (German: Meldungskonfiguration…). - The dialog opens with the eight slots listed on the left. Select
SIG1and click Edit. - In the Message text field, type the operator text, e.g.
"Valve V-101 commanded to close". You can use the placeholders@%d@,@%s@, or@1@…@9@to embed associated value placeholders (process tags). - From the Message class drop-down, select a class such as Valve – Operation or a user-defined class.
- Click OK and repeat for
SIG2.
Triggering External Messages SIG3, SIG4, SIG5
Slots SIG3, SIG4, and SIG5 are deliberately wired to the block's ExtMsg1, ExtMsg2, and ExtMsg3 Boolean inputs. They are the recommended path for any custom event that is not one of the two hard-wired commands.
Example: trigger a Feedback closed received message from the existing output FbkClose of the VlvL block.
- In the CFC chart, draw a connection from the output pin
FbkCloseof theVlvLblock to the input pinExtMsg1on the same block (or on a different block if you want to consolidate feedback events). - Right-click the
VlvLblock → Message configuration…. - Select
SIG3and click Edit. - Enter the event text, e.g.
"Valve V-101 feedback closed received". - Set the message class. If you do not want the operator to acknowledge the event, scroll to the right, uncheck With acknowledgement, and on the left side set the class to Operational message – without acknowledgement.
- Confirm with OK.
The Boolean state of ExtMsg1 is sampled inside the block's ALARM_8P call on every cycle. The event is logged with the rising edge (TRUE) and cleared on the falling edge (FALSE) unless the message class is configured as latching. Always verify the polarity on the OS by manually toggling ExtMsg1 via the CFC debug or via the faceplate's simulation mode.
SIG6, SIG7, SIG8 — Why You Cannot Use Them
The standard VlvL type does not provide any runtime condition that calls the ALARM_8P for slots 6, 7, and 8. The block ships only with the F-source enabled in encrypted form; the VlvL block's source is not delivered with the standard PCS 7 media. Without the source, there is no way to wire a new trigger into SIG6 through the engineering interface. The only legal paths are:
- Use
SIG3–SIG5for up to three custom Boolean events perVlvL. - For additional custom events, add a separate
MonAnLorMonDiLmonitoring block as described in the next section. - If the project uses the optional User-configurable message classes feature, follow the procedure in Siemens ID 109812497 to define a project-wide class that suppresses unwanted default messages from
SIG1/SIG2if you only want the external events to surface.
Using a Monitoring Block for Additional Custom Messages
The PCS 7 APL contains dedicated monitoring blocks for analog and digital signals: MonAnL (analog with limit), MonDiL (digital with edge), MonAnS, MonDiS, and the higher-level MonDi8L. They expose up to 16 message slots each and are the recommended approach when the application requires more than three custom events on a valve. A typical use case is a 4–20 mA position-feedback signal that must generate a warning between 60 % and 80 % and a high alarm above 80 %.
- Open the CFC chart that holds the
VlvLinstance. - From the Libraries pane, drag the
MonAnLblock (catalog: PCS7 APL V9.x > Blocks+Templates > Monitoring) into the chart. - Connect the
VlvLoutputActPostoMonAnLinputPV_In. - Open the
MonAnLblock and setHH_Lim= 80.0,H_Lim= 80.0,L_Lim= 60.0,LL_Lim= 0.0,MsgEn= TRUE, andMsgLock= FALSE. - Right-click the
MonAnLblock → Message configuration… and customize the text onMSG_LIM_HH(e.g. Valve V-101 position above 80 %) andMSG_LIM_H(e.g. Valve V-101 position above 60 %). - Uncheck Create block icon in the block's Object properties > Block icon dialog if you do not want the monitoring block to appear as a faceplate on the OS overview. The messages will still arrive in the common WinCC message summary, but the block icon will be hidden.
For a project that requires 12 such messages, instantiate 12 MonAnL blocks, wire each PV_In to the relevant process tag, and tune the limits. MonAnL consumes one alarm-8P resource (8 message slots) and, if the eight default HH/H/L/LL plus auxiliary slots are not enough, can be cascaded with a MonDi8L for digital outputs of an upstream OR logic.
Compiling and Downloading the OS
Message text and class changes only reach the operator station after a full OS compile and download. SIMATIC Manager will keep the changes inside the S7 program source, but the WinCC database and the OS runtime DLLs are not touched until you run the OS compiler.
- In SIMATIC Manager, right-click the Operator Station in the component view → Compile OS.
- In the dialog, leave Scope = Complete for a first compile; subsequent iterations can use Changes only to reduce compile time.
- Click Compile. The output window should end with OS compile completed – 0 errors, 0 warnings.
- Right-click the OS → Download to target system. Choose Entire OS on a first deployment, or Changes only for hot updates that do not require a WinCC restart.
- Wait for the OS runtime to come back online and log in as the Process operator role to verify the new messages.
VlvL.Verification Checklist
| Step | Expected result | How to confirm |
|---|---|---|
| Force close command on the faceplate | Message on SIG1 with new text appears in OS summary | WinCC Explorer → Message overview filter on block name |
Drive FbkClose to TRUE on the AS |
SIG3 message with custom text appears | Use CFC online → force output → observe summary |
Force ExtMsg1 FALSE |
Message leaves the summary (operational class) or is latched (alarm class) | OS message line clears or stays pending depending on class |
| Exceed 80 % on the analog position tag | MonAnL MSG_LIM_HH message appears; the VlvL block icon stays untouched |
OS summary shows new entry, no extra faceplate icon in the plant overview |
| Power-cycle the OS | All four messages are still visible in the archive | WinCC long-term archive query by date range |
Troubleshooting Matrix
| Symptom | Likely cause | Corrective action |
|---|---|---|
| Message text in OS shows the default @%s@ placeholder | OS compile not run after edit | Right-click OS → Compile OS → Complete → Download |
No SIG3 message even though ExtMsg1 is forced TRUE |
Message class is operating message and the OS faceplate filters it out | Change class to operational message or alarm |
| SIG6 slot returns No trigger assigned in the dialog | Slot not used by the block type | Move event to MonAnL/MonDiL or to SIG3–SIG5 |
| Type check fails after manual block import | Type version mismatch between ES and OS | Update PCS 7 APL on the OS, re-import the type, recompile |
| Message arrives but is duplicated | Both ExtMsg1 on VlvL and a parallel MonDiL trigger the same event |
Decide on a single source of truth; remove the redundant wiring |
| Message is acknowledged but reappears after restart | Symbol-related message configured as project-wide and the tag was renamed | Re-anchor the message in the symbol editor, or switch to CPU-wide |
Field-Proven Caveats
-
Edge vs level semantics.
ALARM_8Plogs on the rising edge of the SIG input. IfFbkCloseis wired directly toExtMsg1and the actual feedback in the field chatters (e.g. limit-switch bounce), a single valve close will produce a burst of messages. Insert a one-shot or a debounce block in the CFC, or use a digital monitoring block with a configurable minimum dwell time. - Priority collision. Two SIGs on the same block with the same priority (e.g. both priority 5) will not sort cleanly in the message summary. Assign distinct priorities: Command = 5, External info = 8, External warning = 4, External fault = 1.
- OS compile cost. A full OS compile of a 50,000-tag project can take 30–60 minutes. Use Compile changes only for message-text edits to stay inside the 2–5 minute window.
-
Type approval. Do not replace the APL
VlvLtype with a derived customer type that adds newALARM_8Pcalls without first performing a PCS 7 type approval. PCS 7 V9.x will reject non-approved types on download with Type not found in the master data library. - Authority. The OS only allows acknowledgement and the Hide action if the logged-in operator carries the Process operator authorization. Configure the authorization in the OS user administration before commissioning.
FAQ
Why does the message configuration dialog list SIG1 through SIG8 when SIG6–SIG8 have no source?
The PCS 7 APL VlvL type calls a single ALARM_8P instance, which exposes eight message slots at the engineering interface. The dialog always shows the full eight-slot view, but only SIG1, SIG2, SIG3, SIG4, and SIG5 are wired to runtime conditions inside the block. SIG6, SIG7, and SIG8 cannot be triggered without the encrypted F-source.
Can I add more than three external Boolean events to a single VlvL block?
No, the block exposes only ExtMsg1, ExtMsg2, and ExtMsg3. For additional events, add a MonDiL (digital) or MonAnL (analog) monitoring block to the same CFC chart and configure its message slots independently. Each monitoring block adds up to 16 message slots.
What is the difference between an operational message and an operating message?
An operational message (Prozessmeldung) is a process event that the operator should see in the standard message summary, optionally with acknowledgement. An operating message (Betriebsmeldung) is informational only and is often filtered out of the standard summary view. Use operational messages for feedback and command tracking; reserve operating messages for pure status indications that do not require operator action.
Do I have to compile and download the OS after every message text change?
Yes. SIMATIC Manager keeps the text inside the S7 program source, but the WinCC message database and the runtime DLLs on the operator station are updated only by the OS compile step. Use Compile changes only to keep the cycle under five minutes for text-only edits.
Can I configure the VlvL messages in TIA Portal instead of SIMATIC Manager?
No. PCS 7 V9.0 and V9.1 are SIMATIC Manager–only. TIA Portal hosts the SIMATIC S7-1500 / ET 200MP family, which uses a different message model (program-message blocks, Program_Alarm). For a PCS 7 valve block, you must use the SIMATIC Manager message configuration dialog described in this article.