Overview
SIMATIC PCS 7 multi-user engineering allows a team of automation engineers to develop a single process control project from separate Engineering Stations (ES) without corrupting the database or duplicating work. In a typical brownfield migration or a large greenfield plant, the project is stored on a central Engineering Server and accessed by 2-6 ES workstations over the plant LAN. Before PCS 7 V7.0 SP1 this configuration was considered unstable due to S7 program file locking, CFC/SFC chart locking, and S7 user administration issues. From V7.0 SP1 onward Siemens introduced dedicated multi-user features that make parallel editing practical for production engineering teams.
This reference covers the canonical PCS 7 multi-user workflow: shared project storage, ES-side configuration, the Typicals library approach used to avoid FC/FB regeneration conflicts, and the manual references for STEP 7 V5.4 multi-user configuration. It is written for commissioning engineers and PCS 7 project leads who need a defensible, repeatable procedure.
Prerequisites
- SIMATIC PCS 7 V7.0 SP1 or later (V7.1, V8.0, V8.1, V8.2, V9.0 supported; V9.0 uses TIA Portal but the multi-user concept carries over).
- STEP 7 V5.4 SPx installed on every ES (the SIMATIC Manager component is mandatory even on V9.0 mixed estates where legacy projects are still edited).
- Optional: CFC, SFC, S7-PLCSIM, S7-SCL authorization licenses per ES, or a floating license server.
- Identical PCS 7 option package set on every ES. Missing options (e.g., PCS 7 APL, Industry Library, PID Self-Tuner) cause opening a project to fail with "Software not installed" prompts.
- Windows XP SP3 with the same language locale (legacy V7.x installations), or Windows 7 SP1 / Windows Server 2008 R2 for V8.x, or Windows 10 LTSC / Server 2016 for V9.0.
- Plant LAN with 1 Gbit/s backbone and a dedicated VLAN for engineering traffic. WAN-based editing is not supported.
- Anti-virus exclusions for the project directory, the SIMATIC Manager working folder, and the
S7projtree. - Domain or workgroup accounts consistent across all ES stations; mismatched Windows accounts generate Access denied on
*.s7pand*.s7ffiles.
Multi-User Engineering Architecture in PCS 7
The PCS 7 multi-user model is built on the multi-project object in SIMATIC Manager. A multi-project bundles multiple sub-projects (typically one AS project, one OS project per server, plus a master data library). All sub-projects share a single storage location; PCS 7 coordinates compilation, cross-references, and OS download through this shared root.
| Component | Role in Multi-User Setup | Storage Path Example |
|---|---|---|
Master Project (*.s7p) |
Container for sub-projects, holds the S7 program name list and cross-AS references | \\ES-SERVER\PCS7\Plant_2024\Plant_2024.s7p |
| AS Sub-Project | One *.s7p per S7-400 / S7-410 station; contains CFC, SFC, HW Config |
\\ES-SERVER\PCS7\Plant_2024\AS01\AS01.s7p |
| OS Sub-Project | WinCC pictures, tag database, alarm logs | \\ES-SERVER\PCS7\Plant_2024\OS01\OS01.s7p |
| Master Data Library | Plant-wide CFC/SFC templates, APL blocks, typified charts | \\ES-SERVER\PCS7\Plant_2024\Master_Lib\Master_Lib.s7l |
| Typicals Library | User-built reusable CFC/SFC instances for team coordination | \\ES-SERVER\PCS7\Plant_2024\Typicals\Typicals.s7l |
All engineers read/write against the same UNC path. The first user to open a chart acquires a write lock at the file level; other users see the chart as read-only until the lock is released. This is the source of the "two engineers generated the same FC/FB" problem solved by the Typicals approach.
Configuring Shared Project Storage on the Engineering Server
- Create a dedicated NTFS volume or folder on the ES server, for example
D:\PCS7_Projects\. Do not use the system drive. - Share the folder with Change permissions for the engineering group (e.g.,
DOMAIN\PCS7_Engineers). Grant Full Control to the project administrator account only. - Disable Opportunistic Locking (oplock) on the SMB share for the project folder. On Windows Server, run
fsutil behavior set disablelastaccess 0and configure File Server Resource Manager screen-off. For older Windows XP ES servers, edit the registry:HKLM\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\EnableOplocks = 0. - Add the project root, all
*.s7pparents, the SIMATIC Manager working directory (%USERPROFILE%\Documents\Siemens\Automationon Vista+, orC:\Documents and Settings\<user>\My Documents\Siemens\Automationon XP) to the anti-virus real-time scan exclusion list. On-access scanning is the single most common cause of chart corruption. - Map a network drive identically on every ES, e.g.,
net use P: \\ES-SERVER\PCS7_Projects /persistent:yes. The drive letter must match across all stations; SIMATIC Manager stores absolute paths in the project file. - Open SIMATIC Manager once as administrator on each ES, choose File > Open > User Projects, and verify the multi-project opens. This populates the working directory cache.
Engineering Workstation Configuration
On each ES workstation, complete the following steps to make the shared multi-project behave as a local project.
- Install PCS 7 with the same option set and the same SP level. Use the Setup.exe from the same media kit; mixing DVD and download images can yield DLL version mismatches (e.g.,
s7otbxdx.dll5.4.x vs 5.5.x) that break CFC. - Apply the same hotfix rollup. Siemens released incremental hotfixes (HF7, HF8, ...) that must match across all ES to avoid the "Project is newer than installation" error.
- Set SIMATIC Manager > Options > Customize > General > Working directory to a local path, not the network share. The working directory is for swap/temp files; placing it on the share can deadlock the SMB session.
- Disable Windows Indexing Service on the project path. Indexer conflicts with the file lock mechanism and produces Sharing Violation errors on
*.s7ffiles. - Configure the SIMATIC Logon Service with identical settings. From PCS 7 V8.0 onward, the Logon role-based access control list (ACL) is stored in
SECURITYsubfolder; inconsistent ACLs cause "You do not have permission to edit this chart" errors on some ES only. - Synchronize the workstation clock via NTP. PCS 7 uses file modification time to detect external changes; clock skew > 2 s will mark a chart as modified externally and force a reload prompt.
Version Requirements and Compatibility Matrix
| PCS 7 Version | Multi-User Stability | Required STEP 7 Base | Supported Windows | Notes |
|---|---|---|---|---|
| V6.1 SP3 | Limited (single user recommended) | V5.3 SP3 | XP SP2 / Server 2003 | Use sequential editing only; chart lock fragile. |
| V7.0 | Acceptable for < 2 concurrent users | V5.4 SP2 | XP SP2 / Server 2003 | First version with documented multi-user chapter. |
| V7.0 SP1 | Stable (production proven) | V5.4 SP3 | XP SP3 / Server 2003 R2 | Recommended minimum for team engineering. |
| V7.1 SP3 | Stable | V5.4 SP5 | XP SP3 / Win7 | Improved SFC diagnostics, APL V7.1. |
| V8.0 SP2 | Stable | V5.5 SP3 | Win7 SP1 / Server 2008 R2 | New multi-user chapter in primary manual. |
| V8.1 | Stable | V5.5 SP4 | Win7 SP1 / Server 2008 R2 | APLV8, typed S7-1500R/H support. |
| V8.2 | Stable | V5.6 | Win7 SP1 / Win10 LTSB | Adds parallel engineering for SIMATIC PDM. |
| V9.0 | Stable (TIA Portal) | TIA V15.1 | Win10 LTSC / Server 2016 | Server project is auto-saved; manual merge for parallel branches. |
| V9.1 | Stable (TIA Portal) | TIA V16 | Win10 LTSC / Server 2019 | Multi-user branch/merge UI integrated. |
The Typicals Library Workflow
The Typicals library is the canonical PCS 7 mechanism for letting multiple engineers contribute function blocks and function calls into a single AS program without colliding on the S7 source tree. A typical is a fully configured CFC or SFC chart with bound parameters, IO symbols, and OS picture references, stored as a reusable template.
-
Create the Typicals library. In SIMATIC Manager: File > New > Library. Name it
Typicals.s7land place it in the shared project root. - Build a typical once. In a development sub-project, create a CFC chart (e.g., Motor_3ph_DOL), wire APL blocks MOT_SPEED, MOT_SPED, and the associated OS faceplate. Test compile and download to a test AS.
- Export the chart to the Typicals library. Right-click the CFC > Chart > Export to Typicals. The export stores a versioned copy of the chart, the S7 source, the WinCC picture, and the OS faceplate tag.
- Each engineer works in their own local sub-project copy (or on a dedicated branch chart). They instantiate the typical and modify only the I/O wiring and instance parameters. The underlying FB/FC is the same across all instances.
- Periodic merge. At an agreed cadence (typically once per shift or once per day), the lead engineer imports all updated typicals from the team folders back into the master project. Use Options > Typicals > Update Instances to propagate any FB signature changes.
- Compile and download. From the master project only. Each engineer's local copy is not compiled, only edited.
Preventing FC/FB Generation Conflicts
When two engineers open the same S7 program container and both insert a CFC chart, the second insertion overwrites the chart instance counter and yields duplicate block numbers in the symbol table. Symptoms include compile error SF011 "Block number already assigned" and OS download warning W:3120 "Tag duplicate".
| Error Code | Source | Meaning | Resolution |
|---|---|---|---|
| SF011 | S7 Compiler | Duplicate FB/FC number | Reassign the offending block; use Typicals to enforce single source of truth. |
| W:3120 | WinCC Tag Manager | Duplicate tag name | Rename instance in CFC, recompile OS. |
| E:4900 | CFC Editor | Chart write-locked by another user | Open chart read-only, or wait for lock release. |
| E:4502 | SFC Editor | SFC transition already exists | Check the team SFC for the active editor; merge via Typicals. |
| E:8001 | HW Config | Symbol table write conflict | Refresh from master, reconcile, save with Save with Read-Only flag cleared. |
Enforce these rules across the team:
- Only one engineer owns the S7 program
S7 Program(1)at a time. The OS and AS are separated by sub-project precisely so that OS engineers and AS engineers do not collide on the symbol table. - Use CFC chart references instead of copying CFC charts. A chart reference points to the original chart in the library; the original can be updated centrally.
- Reserve block number ranges per engineer if you must work on the same program. In SIMATIC Manager, Options > Block Number Range: e.g., Engineer A uses FB 100-199, Engineer B uses FB 200-299.
- Disable auto-save on CFC charts if your version supports it. Auto-save re-acquires the write lock on every tick and can cause spurious Sharing Violation on the LAN.
STEP 7 V5.4 Multi-User Configuration Reference
The definitive Siemens reference is the manual "Configuring Hardware and Communication Connections with STEP 7 V5.4", chapter "Working with Multi-User Projects". This chapter documents the supported multi-user topology, the storage model, the role of the Global Library, and the supported concurrency model (one editor per chart, multiple readers). It also lists the unsupported operations: simultaneous HW Config edits, simultaneous NetPro edits, and simultaneous Symbol Table edits on the same S7 program.
For PCS 7 V7.x and V8.x, the equivalent chapter is in the manual "PCS 7 Engineering System Configuration", section "Multi-User Engineering". For PCS 7 V9.0 and later in TIA Portal, refer to the TIA Portal help under "Multi-user engineering" and the TIA Portal Multi-User Commissioning Manual.
Key citations from the STEP 7 V5.4 chapter:
- "Only one user at a time can edit a chart or a program. Other users can open the chart in read-only mode."
- "Multi-user projects must be stored on a file server that supports SMB file locking."
- "The S7 user administration is not designed for parallel modification. Apply the changes to the user administration on one ES only, then distribute."
- "A simultaneous rename of the S7 program name from two ES will lead to database corruption. Avoid this by SOP."
Verification and Commissioning Procedure
Before declaring the multi-user setup production-ready, run this checklist.
- Open test multi-project from ES-01, ES-02, and ES-03 simultaneously. All three should see the same chart list and the same S7 program structure.
- Lock test. Open a CFC chart on ES-01, then attempt to open the same chart on ES-02. ES-02 should open the chart in read-only with the message "Chart is being edited by <user>".
- Save and reload. Modify a chart parameter on ES-01, save, close. On ES-02, press F5 (refresh). The new value should appear.
- Typical instantiation. From the Typicals library, drop a Valve_ANA typical into a chart on ES-02. Verify that the FB instance number is unique and that the OS picture reference resolves.
- Compile and download from ES-01 only. Verify that the S7 program downloads cleanly to the test AS and the OS downloads cleanly to the test OS server.
- Backup test. Run the PCS 7 project archive (File > Archive) from the master project. Restore to a separate path and confirm open is error-free.
-
Antivirus verification. Open a chart, modify, save. Check the anti-virus log on the ES server: the
*.s7ffile modification timestamp should match the save time, with no repaired or quarantined entries. - Concurrent user test. With 4 ES logged in, have each engineer create a new CFC in their assigned block range, save, and re-open. Confirm no SF011 or E:4900 errors.
Troubleshooting Matrix
| Symptom | Likely Root Cause | Diagnostic Step | Corrective Action |
|---|---|---|---|
| Chart opens read-only on a single ES | Stale file lock from a crashed ES | Check *.lck files in the chart folder |
Delete the .lck file; verify the crashed ES is rebooted |
| Compile error SF011 duplicate FB number | Two engineers inserted the same chart type | Compare S7 Program symbol table on both ES |
Reassign FB numbers, adopt Typicals for new blocks |
| "Software <X> is not installed" on open | Mismatched PCS 7 option packages | Compare installed software list across ES (Start > SIMATIC > Information > Installed Software) | Install missing options to match the reference ES |
| Project opens but charts are blank | Working directory on the network share, SMB timeout | Move working directory to local disk | Set Options > Customize > Working directory to C:\...
|
| OS download warns duplicate tag | Two CFC instances generated the same tag name | Run Options > OS > Compile OS with verbose log | Rename the second instance, recompile |
| Project corruption after network outage | Anti-virus repaired a partially written *.s7f
|
Check AV log for repair events | Restore from archive; add *.s7* to AV exclusion |
| Slow chart open (> 30 s) | Indexer scanning the project root | Disable Windows Search service | Stop and disable WSearch, rebuild without index |
| Engineering works on LAN, fails on WAN | SMB latency > 50 ms, lock retries exhausted | Ping ES server, measure round trip | Use terminal services / RDP to a local ES; do not edit over WAN |
| User administration edit lost | Two ES edited the SECURITY folder | Compare SECURITY timestamp |
Adopt SOP: one ES owns user admin |
Engineering SOP Recommendations
Document the following in the project quality plan and the engineering kickoff meeting:
- Single master editor per S7 program. One engineer is named the program owner for the day; all block-numbering changes go through them.
- Daily merge window. All local edits merged into the master at a fixed time (e.g., 17:00). The master is archived immediately after.
- Chart references over chart copies. New code goes into a Typicals library, not a copy-paste of an existing chart.
- Block number range allocation. Publish a range table; update it in the team chat on every change.
- Read-only Friday. On the last working day of the week, the master is opened read-only, archived to the time-stamped backup volume, and not edited again until Monday morning.
- Test AS gate. Any change to a typical or a new FB must be downloaded to the test AS, exercised for 24 h, then promoted to production typicals.
Migration Note: From V7.x to TIA Portal V9.0
If you are planning to move an established multi-user PCS 7 V8.2 project into the TIA Portal V9.0 environment, the multi-user model changes. TIA Portal uses a server project on a TIA Portal multi-user server with a local local session per engineering station. Concurrent edits of the same chart are blocked at the server level, and merge is performed through the TIA Portal Compare & Merge editor. The Typicals library concept is preserved as Master Copies Library, but the export/import workflow is different and the FB signature is propagated automatically.
Recommended path:
- Build a parallel TIA Portal project on a dedicated engineering subnet.
- Use the PCS 7 Migration Tool to convert V8.2 multi-project to V9.0 single project, then re-attach OS sub-projects.
- Validate the migrated project on the test AS for 7 days before decommissioning the V8.2 master.
- Do not run V8.2 and V9.0 in parallel against the same production AS.
Summary
PCS 7 multi-user project editing is reliable from V7.0 SP1 onward when the team follows three rules: store the project on an SMB server with oplocks disabled, exclude the project path from real-time antivirus and indexing, and use the Typicals library to coordinate FC/FB generation. Direct chart-level collaboration is supported only as read-only access for non-owning engineers; the canonical collaboration primitive is the Typicals library export/import cycle. Treat the S7 program as a single-writer object and the AS-OS split as a multi-writer object, and the workflow scales to teams of six or more without database corruption.
Frequently Asked Questions
What is the minimum PCS 7 version for stable multi-user project editing?
SIMATIC PCS 7 V7.0 SP1 with STEP 7 V5.4 SP3 on Windows XP SP3. Prior versions (V6.1, V7.0 without SP1) are documented as single-user with the multi-user feature marked "not recommended for production".
How do I prevent two engineers from generating the same FC/FB number?
Use the SIMATIC Manager block number range editor to allocate disjoint FB/FC ranges per engineer (e.g., 100-199 / 200-299), and enforce that all new reusable blocks are exported to a Typicals library so the canonical source exists in one place only.
Can PCS 7 multi-user projects be edited across a WAN?
No. Siemens requires the ES workstations to be on the same LAN as the project server. SMB file locking depends on sub-50 ms round-trip time; WAN latency breaks the lock retry mechanism and causes chart open failures.
Where is the multi-user configuration documented in Siemens manuals?
In STEP 7 V5.4, see the chapter "Working with Multi-User Projects" in the manual "Configuring Hardware and Communication Connections with STEP 7 V5.4". In PCS 7 V8.x, see "Multi-User Engineering" in the PCS 7 Engineering System Configuration manual. In TIA Portal V9.0, search the help for "multi-user engineering" and "server project".
Why does my chart open read-only on one ES only?
A previous editor session crashed without releasing the chart's *.lck lock file. Delete the .lck file in the chart folder on the file server and reboot the affected ES. If the issue recurs, check that the ES is not being put to sleep (which holds file locks open).