Modifying PCS 7 V7.1 Faceplates Online Without OS Shutdown

David Krause10 min read
SiemensTutorial / How-toWinCC
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Overview

Siemens SIMATIC PCS 7 V7.1 uses WinCC as the OS layer, where operator faceplates are stored as .pdl (Picture Declaration Language) files inside the project GraCS folder. Engineers frequently need to update these faceplates - add a status indicator, change a color, expose an additional tag - while the plant continues running. The challenge is propagating those modifications to OS Server A (master), OS Server B (standby), and all OS clients without stopping the OS Runtime and without producing a mismatch between what PCS 7 thinks is deployed and what is actually on disk.

This procedure covers two distinct change categories:

  1. Picture-only changes - cosmetic edits to an existing .pdl with no new tag wiring. Can be hot-patched by file copy.
  2. CFC-driven changes - adding blocks, new I/O tags, or new alarm classes in CFC/SFC that the OS must regenerate. Requires a controlled compile + delta download.

The technique below is documented for PCS 7 V7.1 SPx but applies conceptually to V7.0 through V8.2 with minor differences in the OS Project Editor path and the Download dialog.

PCS 7 V7.1 OS Architecture Recap

Before editing, confirm which OS role each node plays. The default PCS 7 V7.1 template installs a redundant OS Server pair plus one or more OS clients:

Node Role WinCC Project Type Runtime Behavior
ES (Engineering Station) Engineering / source of truth Multi-project, master database Editor only - no Runtime
OS Server A Preferred / master Server project (redundant) Active Runtime, archives, alarms
OS Server B Standby / redundant Server project (redundant) Hot standby, takes over if A fails
OS Client 1..n Operator stations Client project Connects to Server A (falls back to B)

The redundant OS Server pair uses WinCC Redundancy: Server A and Server B maintain synchronized archives, messages, and user archives. Any .pdl modification must reach both servers identically; otherwise clients see inconsistent faceplates after a failover.

Critical: Never edit .pdl files directly on a live OS Server while WinCC Runtime is running unless you understand that the file is read once at picture-open time. Plan your maintenance window or use the GraCS copy method described below.

Prerequisites

  • PCS 7 V7.1 ES with the matching Service Pack installed on both the ES and the OS Servers (mixed SP levels cause FWL version errors on download).
  • Administrator account on OS Server A, OS Server B, and ES. Domain user with the SIMATIC HMI group membership is mandatory for Runtime access.
  • WinCC Explorer installed on ES (component of PCS 7 ES).
  • Plant in stable operation - no active download, no SFC step transitions in critical loops.
  • Backup of the existing GraCS folder from both OS Server A and B before any file copy.
  • Document the current @-prefixed tag list (used for online tag renaming) and the current picture tree path of the faceplate being modified.

Locating the Faceplate .pdl File

All WinCC graphics live under <ProjectPath>\GraCS\. The default PCS 7 path on a WinCC Server project is:

C:\Program Files\Siemens\Automation\WinCC\WinCCProjects\<OSProjectName>\GraCS\

Within GraCS, files are organized by purpose:

File Type Example Purpose
Process pictures Overview.pdl, Unit_1.pdl Operator area / unit overview
Faceplates MotSped.pdl, ValveAna.pdl Pop-up detail views for block icons
Library pictures @<vendor>.pdl Reusable picture modules
Block icons Icons\@MOT_SPED.PDL Symbols shown on overview pictures
Status displays Status\*.pdl Aggregate status views

The faceplate file you modify is typically found in the GraCS root or under Pictures. Open WinCC Explorer on the ES, expand Graphics in the left tree, and locate the picture by name. Right-click -> Open launches the Graphics Designer with the matching file loaded from GraCS.

Scenario A: Picture-Only Modification (No CFC Changes)

Use this procedure when the edit is purely cosmetic - changing a label, color, geometry, or moving a field - and does not add new tags, blocks, or alarm classes.

Step-by-Step Procedure

  1. Edit on the ES: In WinCC Explorer (ES), open the target .pdl via Graphics Designer. Make the modification. Do not save through WinCC Explorer Download - that would require a full OS download.
  2. Close the file in Graphics Designer so the file handle is released.
  3. Locate the modified file in the ES project GraCS folder, e.g. ES_Project\GraCS\MotSped.pdl.
  4. Copy the file from the ES GraCS to a temporary staging folder shared between ES and OS Servers (for example \\PLANT\Patches\Faceplate_Update_2024\).
  5. Deploy to OS Server A: Log in to OS Server A. Stop the WinCC Runtime only if you cannot rely on WinCC's hot-reload behavior. In V7.1 SP3+, WinCC re-reads .pdl files from disk when a picture is re-opened. Stop the CCEServer process briefly if needed: net stop "S7DOS" is not required for picture swaps, only for tag database changes.
  6. Copy the .pdl file to C:\Program Files\Siemens\Automation\WinCC\WinCCProjects\<OSServer_A>\GraCS\MotSped.pdl, overwriting the existing file.
  7. Repeat for OS Server B using the same source file. Both servers must have byte-identical copies; otherwise failover will show the old faceplate.
  8. Refresh clients: On each OS client, the picture updates the next time an operator opens it. To force an immediate refresh without closing the picture tree, open the modified picture twice - WinCC detects the file timestamp change and reloads.

Why This Works Without OS Shutdown

WinCC loads a .pdl into memory when an operator first opens the picture. The file on disk is not held under an exclusive lock. When WinCC detects that the file's modification timestamp has changed since the last load, it discards the cached picture and re-reads from disk on the next open. This is the mechanism that makes the GraCS copy path viable for cosmetic changes.

File-system note: Always copy with Windows Explorer or Robocopy, not with the PCS 7 OS Download dialog. The OS Download dialog tracks the deployed picture set in its project database; bypassing it is the reason the next delta download will fail (see Troubleshooting below).

Scenario B: CFC Changes That Require an OS Recompile

If you add a new block (e.g. a CTRL_PID, MOT_SPED, VALVE_ANA, or any APL block) in the CFC chart, or add a new tag to an existing block that must be visible on the faceplate, the OS must regenerate the tag list and the picture's block-icon mappings. This requires the full PCS 7 compile-then-download cycle.

Step-by-Step Procedure

  1. Modify the CFC chart in the ES (CFC Editor). Add the new block instance, wire the I/O, and download the chart changes to the AS first: chart -> right-click -> Download -> Changes only to the target AS.
  2. Compile the OS: In the plant view or component view, right-click the OS server -> Compile OS. Select Scope = Entire OS if multiple charts changed, or Scope = Changes only for surgical updates. This regenerates Project.xml, the tag database, message configuration, and picture scripts.
  3. Verify the compile log in C:\Program Files\Siemens\Automation\WinCC\WinCCProjects\<OSProject>\OS_Compile_Log.txt. Search for WARN and ERROR entries. Common entries: "Tag X is not connected" or "Block icon cannot be assigned".
  4. Stop WinCC Runtime on OS Server A only. Right-click the WinCC Explorer -> Stop Runtime. Wait for the Runtime stopped tray notification.
  5. Trigger the OS download from the ES. In the OS project editor, select the OS Server target -> Download -> Changes only for delta propagation, or Full download if the manual GraCS copy was previously performed (see Troubleshooting).
  6. Start Runtime on OS Server A and verify picture refresh.
  7. Repeat steps 4-6 on OS Server B. In V7.1, the redundant pair does not auto-sync a delta download - both servers must be updated manually or via the Download to all OS servers group action.
  8. Push clients: Clients pick up changes automatically on next picture open. For force-refresh, restart CCClient on each client workstation.

Compile Scope Decision Table

Change Type Compile Scope Download Type
Color / label / geometry on faceplate only None (manual .pdl copy) None
New block added in CFC Entire OS Changes only
New tag wired to existing block icon Changes only Changes only
New alarm class added Entire OS Changes only
User archive schema changed Entire OS Full download
SFC chart added/changed Entire OS Changes only

Maintaining Server A/B Consistency

OS Server redundancy in PCS 7 V7.1 is not automatic for picture files. The redundancy monitor (RM) syncs runtime data (tag values, messages, archives) but it does not sync .pdl files unless they arrive through a proper OS download. Therefore:

  • After any GraCS copy, manually replicate the file to Server B via the same Robocopy or shared folder method.
  • Verify file hashes match: CertUtil -hashfile MotSped.pdl SHA256 on both servers.
  • Schedule the modification during a low-load shift when both servers are healthy and no failover is imminent.

Verification Procedure

After deploying, confirm the modification is live without disrupting operators:

  1. Open WinCC Explorer on the ES in Reference mode (read-only) and compare the picture hash to the deployed file.
  2. Open an OS client that is logged in but idle. Navigate to the modified picture. Visually confirm the change.
  3. Check the WinCC diagnostics window: Start -> SIMATIC -> WinCC -> Tools -> WinCC Diagnosis. Look for Picture cache entries confirming the picture was reloaded from disk.
  4. On OS Server A and B, check the Windows Event Viewer -> Siemens Automation log for picture-load errors with event IDs in the range 1000-1099.
  5. Failover test (optional, during maintenance): force Server A into stop and verify Server B's faceplate matches.

Troubleshooting Matrix

Symptom Likely Cause Resolution
Picture does not refresh on client after copy Picture still cached from previous load Close and re-open the picture; or restart CCClient
OS Download fails with "Server has unexpected changes" Manual GraCS copy bypassed PCS 7 tracking Perform a full OS download to reconcile the database
Block icon does not show new tag value OS not recompiled after CFC change Compile OS (Scope: Entire OS), then Changes only download
Compile error: "Tag X not found in AS" CFC downloaded to AS but OS compile sees old version Re-download CFC to AS, wait for AS to be online, recompile OS
Server A and Server B show different faceplates File copied to only one server Copy file to both servers; verify SHA256 hash match
Facesplate buttons inactive after edit Script object (VB or C) reference broken Open in Graphics Designer, re-link script action, save
Runtime stops on Server B during failover Picture file mismatch triggers WinCC internal error Restore matched file from backup, restart Runtime

Safety and Operational Considerations

  • Never modify a faceplate whose underlying block controls a critical interlock (e.g. ESD, fire & gas) while the plant is in production. Even a cosmetic change can introduce a typo that misleads operators.
  • Before any Runtime change, confirm with operations that no SFC is mid-transition. A restart of WinCC Runtime on a server will not interrupt AS execution but will momentarily freeze the operator display.
  • Keep a versioned archive of GraCS folder diffs using Robocopy /MIR or a Git repository. PCS 7's own versioning is limited to project-level snapshots.
  • If the project uses APL (Advanced Process Library) blocks, do not edit @APL_*.pdl files. They are regenerated by the OS compile from the master APL picture library.

FAQ

Can I edit a PCS 7 V7.1 faceplate .pdl file directly on the OS Server while Runtime is running?

Yes for cosmetic changes only. WinCC re-reads the file when the picture is re-opened. Do not change the underlying tag wiring without first recompiling the OS; otherwise Runtime will display stale data or fault the picture.

Why does the next OS Download fail after a manual GraCS copy?

PCS 7 maintains its own database of which picture versions are deployed. When you bypass the download dialog and copy the file manually, PCS 7 still believes the old file is in place. The next delta download detects the timestamp mismatch and errors out. Perform a full OS Download to reconcile.

Do I have to compile and download the OS if I only changed CFC tags?

Yes. Any CFC change that adds a new tag, block, or alarm requires OS compile (Scope: Changes only or Entire OS) followed by a Changes only Download to the OS Server A and B. The AS download alone updates the PLC but leaves the HMI blind to the new tag.

How do I keep OS Server A and OS Server B faceplate files synchronized?

Manually replicate the .pdl file to both servers using the same shared staging folder. Verify with CertUtil SHA256 hash comparison. The PCS 7 redundancy monitor syncs runtime data but not picture files.

Can OS clients pick up faceplate changes automatically?

Yes on the next picture open. WinCC detects the file timestamp change on the connected server and reloads. For an immediate forced refresh across all clients, restart the CCClient service or use the WinCC project editor's "Transfer changes to clients" action.

Back to blog