WinCC Flexible Multi-HMI Shared Alarm Ack Bit Configuration

David Krause12 min read
HMI / SCADASiemensTutorial / How-to
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

Problem Definition: Multi-HMI Alarm Acknowledgment Synchronization

When a single WinCC Flexible (or WinCC Unified) project is distributed across multiple HMI panels connected to one PLC, alarm acknowledgment must remain consistent across every panel. The canonical scenario:

  • One main HMI with full functionality.
  • Up to five additional remote HMIs with reduced screens (two mimic views plus alarm view).
  • A single alarm class with a shared acknowledge tag such as DB9.DBX1.1.
  • Up to 512 alarms configured in the project.

The architectural question is: if HMI #1 writes 1 to the ACK tag of a discrete alarm, do HMI #2 through HMI #6 automatically recognize that bit as acknowledged? In a default WinCC Flexible configuration the answer is no. Each HMI evaluates its own internal ACK state; only the PLC sees the unified value. To synchronize acknowledgment state, the PLC must arbitrate the ACK bit and broadcast the consolidated result back to every HMI.

The Siemens support entry on PLC-driven ACK confirms that the safe pattern is to drive the ACK tag from the PLC, not from each HMI independently.

Prerequisites

Item Specification
Engineering software WinCC Flexible 2008 SP5 or later; TIA Portal V15 to V20 for WinCC Comfort / Advanced / Professional migration
HMI panels SIMATIC Comfort Panels (TP700 to TP2200) or WinCC Runtime Advanced / Professional on PC
PLC SIMATIC S7-300 / S7-400 / S7-1200 / S7-1500 with PROFINET or MPI / PROFIBUS connection
Connection budget One HMI connection per panel; verify PLC connection resource limits (S7-300 up to 16, S7-1500 up to 128 depending on CPU)
Optional license Sm@rtAccess option (article number 6AV2107-...; consult Siemens Industry Mall for the current option code per panel family)
Network Shared PROFINET subnet; each HMI assigned a unique IP within the same subnet

Architecture Options Compared

Three viable architectures exist for multi-HMI alarm acknowledgement. Choose based on panel count, license cost, and engineering effort.

Option Mechanism Engineering Effort License Cost Synchronization Latency
A. PLC-arbitrated ACK bit Each HMI sets a dedicated ACK request bit; PLC ORs them into a single ACK tag and pulses clear Medium: ladder logic per alarm group None (uses existing tags) 1 PLC scan plus HMI poll, typically 250 to 500 ms
B. Sm@rtAccess remote control Main panel runs the active project; remote panels mirror the main through Sm@rtAccess Low: configure one Sm@rtAccess session Sm@rtAccess option per panel Network-dependent, typically 100 to 300 ms
C. WinCC Unified multi-device load (TIA V20) Single TIA project with multiple HMI devices compiled and loaded independently Medium: maintain two HMI device objects None for WinCC Unified PC RT Same as Option A, still PLC-arbitrated

When to choose each option

  • Option A: best when remote panels must operate independently (one fails, the others continue) and Sm@rtAccess licensing is undesirable.
  • Option B: best when remote panels are simple view-only stations and centralized screen logic on the main panel is acceptable.
  • Option C: best when you have already migrated to TIA Portal V20 and run WinCC Unified PC Runtime.

Option A: PLC-Arbitrated Alarm Acknowledge Bit (Step-by-Step)

Step 1 - Create one ACK tag per HMI and one shared ACK tag in the PLC

In the PLC DB (for example DB9), create the following structure:


DB9.DBX 0.0  // HMI_1 ACK request (set by HMI_1 on ACK button)
DB9.DBX 0.1  // HMI_2 ACK request
DB9.DBX 0.2  // HMI_3 ACK request
DB9.DBX 0.3  // HMI_4 ACK request
DB9.DBX 0.4  // HMI_5 ACK request
DB9.DBX 0.5  // HMI_6 ACK request
DB9.DBX 1.0  // ACK_Alarm_Group_A  (consolidated, read by all HMIs)
DB9.DBX 1.1  // ACK_Alarm_Group_B  (consolidated)
... (one consolidated bit per alarm group)

Step 2 - Configure the alarm class ACK tag in each HMI

In WinCC Flexible under Alarms -> Alarm Classes, or in TIA Portal under HMI Tags -> Alarm settings, set the acknowledgment tag to the PLC tag (for example DB9.DBX1.1). All six panels point to the same tag. The HMI only reads the bit; it never writes to it.

Step 3 - Configure each HMI ACK button to set its own request bit

On the alarm view ACK button event (WinCC Flexible: Events -> Press -> SetBit), use SetBit("DB9.DBX0.0", 1) for HMI_1, SetBit("DB9.DBX0.1", 1) for HMI_2, and so on. Do not point every HMI at the consolidated bit; that would cause every HMI to see a self-acknowledgment and propagate errors.

Step 4 - PLC arbitration ladder logic

The PLC scans the six request bits every cycle and sets the consolidated ACK tag when at least one is true, then clears the request bits after a configurable pulse.


// S7-1200 / S7-1500 STL or LADDER equivalent
A "DB9".DBX 0.0
O "DB9".DBX 0.1
O "DB9".DBX 0.2
O "DB9".DBX 0.3
O "DB9".DBX 0.4
O "DB9".DBX 0.5
= "DB9".DBX 1.1   // Consolidated ACK for alarm group B

// Clear request bits after 200 ms pulse
A "DB9".DBX 1.1
L S5T#200MS
SD "T10"
A "T10"
R "DB9".DBX 0.0
R "DB9".DBX 0.1
R "DB9".DBX 0.2
R "DB9".DBX 0.3
R "DB9".DBX 0.4
R "DB9".DBX 0.5
Pulse width must exceed the HMI poll cycle (default WinCC Flexible acquisition cycle 250 ms; configurable up to several seconds) so the consolidated bit is sampled at least once before clearing. 200 ms works for fast networks; increase to 500 ms if you observe intermittent missed acknowledgments.

Step 5 - Group alarms by ACK tag to scale beyond 512 alarms

For 512 alarms, do not create 512 individual ACK tags. Group alarms by category (Process, System, Drive, Safety) and assign one ACK tag per group. Four to eight groups are typical. The PLC then consolidates per-group ACK requests and broadcasts per-group consolidated bits.

Option B: Sm@rtAccess Configuration

Sm@rtAccess is a Siemens HMI runtime option that allows a remote panel (or PC) to take control of a main panel's active project. When the remote panel is in Sm@rtAccess mode, alarm acknowledgments performed on the remote are routed to the main panel's runtime, which in turn writes them to the PLC. Because only one runtime executes the project, the ACK state is inherently synchronized.

Step-by-step

  1. Install the Sm@rtAccess option on the main panel (license key transferred via ProSave or TIA Portal).
  2. In the main project, enable Sm@rtAccess under HMI device settings -> Runtime properties.
  3. Configure the IP address of the main panel as the Sm@rtServer in the remote panel's project.
  4. Set the remote panel's start screen to the Sm@rtAccess connection screen.
  5. Operator presses Connect on the remote panel; the main panel's project appears.

Trade-offs

  • If the main panel fails, all remote panels lose alarm visibility. Option A is more fault-tolerant.
  • Sm@rtAccess consumes the main panel's connection slot; on Comfort Panels this typically limits the number of simultaneous remotes to four or fewer.
  • Network bandwidth: each remote screen change streams pixel data over the network. With two mimic screens and an alarm view the load is modest, typically under 500 kbit/s.

Option C: WinCC Unified Multi-Device Loading (TIA Portal V20)

In TIA Portal V20 with WinCC Unified PC Runtime, a single project can contain multiple HMI device objects. Each device compiles to its own runtime image and loads independently to its target PC. The official Siemens documentation describes the multi-device loading procedure:

  1. Compile each HMI device individually (right-click -> Compile -> Software only).
  2. Select all HMI devices in the project tree.
  3. Right-click -> Load to File System or Load to Device.
  4. If the wizard detects another HMI is loading, select Cancel and load sequentially, or allow parallel load when network bandwidth permits.

See the TIA Portal V20 documentation: Loading projects of multiple HMI devices simultaneously (RT Unified).

Even with multi-device loading, the ACK synchronization problem is unchanged: each runtime independently evaluates its ACK tag. You still need the PLC arbitration pattern from Option A, or a shared OPC UA server aggregating ACK state.

Project Structure: One Project vs Two HMI Devices

The SiePortal thread "One project on two HMIs" (sieportal.siemens.com/.../one-project-on-two-hmis/138812) confirms the standard pattern: create HMI_1, complete its connection and tags, then use Add new device -> HMI to insert HMI_2 with its own IP. Tag references can be shared by exporting the HMI tag table as a CSV and re-importing, or by referencing the same PLC tags symbolically in TIA Portal.

The SiePortal thread "Same Screens, Multiple HMI's" (sieportal.siemens.com/.../same-screens-multiple-hmi-s/212827) reinforces that each HMI requires its own connection entry because the IP address of the PLC connection is per-device. In WinCC Flexible you cannot have one HMI device object serving two physical panels with different IPs; you must create two devices and maintain them as siblings.

Start-Up Page Routing: MAIN vs MINOR

The original requirement was to use a single project but vary the start page per panel. Three patterns work:

  1. Project-level tag plus schedule: Read HMI_Role tag at startup and use a screen-by-tag-value tag-multiplex. Set HMI_Role to 0 for main, 1 for remote.
  2. Two projects, shared tag table: One project for main with full screens, one project for remote with only the two mimic and alarm screens. Both reference the same PLC tags. Maintenance doubles, but the runtime footprint halves on remote panels.
  3. Sm@rtAccess: One project, remote panels connect via Sm@rtAccess and inherit the main's screens automatically.

Acquisition Cycle and Poll Timing

WinCC Flexible polls PLC tags on a configurable acquisition cycle. For alarm ACK tags, 250 ms is the typical default and is short enough to feel responsive when paired with a 200 to 500 ms PLC clear pulse. For WinCC Unified PC Runtime, the polling model is event-driven on tag change rather than cyclic, but you can still enforce a 100 ms minimum refresh in the HMI tag properties.

Platform Default Acquisition Cycle Recommended for Alarm ACK
WinCC Flexible 2008 1000 ms (adjustable) 250 ms
WinCC Comfort / Advanced (TIA) 500 ms (adjustable) 250 ms
WinCC Professional / Unified Event-driven 100 ms minimum
Reducing the acquisition cycle below 100 ms increases PROFINET load. On a 6-panel network with 64 shared tags each, expect approximately 3.8 kbit/s of additional PROFINET traffic per panel per cycle.

Verification Checklist

Check Expected Result
Acknowledge alarm on HMI_1 only Alarm clears from HMI_1 and HMI_2 through HMI_6 within 1 s
Acknowledge alarm on HMI_6 only Alarm clears from HMI_1 through HMI_6 within 1 s
Simultaneous ACK from HMI_1 and HMI_3 Single ACK; request bits cleared by PLC pulse
Disconnect HMI_3 from network Remaining panels continue to acknowledge; ACK state remains consistent
Power-cycle main panel Remote panels show last-known alarm state from PLC; new ACKs still work
PLC in STOP HMIs show No connection to PLC but do not lock out alarm view navigation

Troubleshooting Matrix

Symptom Likely Cause Resolution
ACK on HMI_1 does not clear alarm on HMI_2 Each HMI uses its own ACK tag rather than the consolidated PLC bit Re-point every HMI's alarm class ACK tag to the PLC consolidated bit, for example DB9.DBX1.1
Alarm oscillates ACK / un-ACK rapidly PLC clears the consolidated bit faster than the HMI polls it Increase pulse timer from 200 ms to 500 ms or 1 s; reduce HMI acquisition cycle to 100 ms
Multiple ACKs recorded for one operator action Each HMI button writes directly to the consolidated bit, then PLC ORs it again Buttons write only to per-HMI request bits; only the PLC writes to the consolidated bit
ACK works for one alarm group but not another Alarm class ACK tag misconfigured for one group Verify each alarm class points to the correct PLC tag; export alarm configuration as CSV and audit
Sm@rtAccess remote shows Connection failed Main panel Sm@rtAccess option not licensed, or firewall blocking ports 102 / 443 Verify license with ProSave -> License Manager; check Windows Firewall on main panel PC
WinCC Unified multi-device load fails halfway Parallel load exceeds PG / PC interface bandwidth Load devices sequentially; see TIA V20 multi-device loading
Remote panel shows stale alarm state Acquisition cycle too long for the alarm group Reduce acquisition cycle in HMI tag properties to 250 ms or less
Operator must ACK twice on a single panel PLC clear pulse ended before the HMI re-read the bit Extend PLC pulse timer to at least 2x the HMI acquisition cycle

Best Practices Summary

  • Always arbitrate ACK in the PLC. HMIs should only signal ACK intent; the PLC owns the canonical state.
  • One ACK bit per alarm group, not per alarm. 512 alarms collapse to 4 to 8 ACK tags.
  • Pulse-clear the request bits in the PLC with a timer greater than the HMI poll cycle.
  • Never let an HMI write to the consolidated ACK tag; that creates the self-ACK feedback loop.
  • Separate the engineering project from the runtime topology: in WinCC Flexible and TIA, create one HMI device per physical panel; share the PLC tag database.
  • If using Sm@rtAccess, document the failover behavior: main panel loss equals all remotes lose visibility.
  • For TIA Portal V20 / WinCC Unified, follow the multi-device loading procedure documented at TIA Portal V20 cloud docs.

Does an acknowledgment on one WinCC Flexible HMI automatically appear on the other five?

Only if all six HMIs read the same PLC ACK tag and the PLC arbitrates the consolidated bit. By default each HMI evaluates its own internal ACK state, so without PLC arbitration the ACK on HMI #1 is not visible on HMI #2 through HMI #6.

What is the minimum ladder logic to share ACK bits for 512 alarms?

Group the 512 alarms into four to eight categories. Each category uses one PLC bit as the consolidated ACK tag. The PLC scans six HMI request bits, ORs them into the category bit, then pulses clear. One network of six OR instructions and one timer handles all 512 alarms.

Is Sm@rtAccess required for multi-HMI alarm synchronization?

No. Sm@rtAccess is one of three viable architectures. The PLC-arbitrated ACK-bit pattern (Option A) achieves synchronization without Sm@rtAccess and without additional licensing, and is more fault-tolerant because each panel operates independently.

Can one WinCC Flexible project contain two HMI devices with different IPs?

Yes. Add a second HMI device under the project, configure its PROFINET / IP address, and define a separate connection to the PLC. Tag references and screens can be reused, but each device maintains its own runtime image. This is confirmed in the SiePortal thread One project on two HMIs.

What HMI acquisition cycle is recommended for alarm ACK synchronization?

250 ms is typical for WinCC Flexible and is short enough to feel responsive when paired with a 200 to 500 ms PLC clear pulse. For WinCC Unified reduce to 100 ms if the network and PLC scan time permit; otherwise stay at 250 ms to avoid unnecessary PROFINET load.

Back to blog