Overview
Siemens SIMATIC HMI panels and WinCC Unified Engineering V17 expose analog dial, gauge, slider, and bar objects whose visible scale is automatically derived from the connected tag's configured value range. A common commissioning question is why the colored scale bands of an analog dial do not appear to align with the limit values (LL, L, H, HH) configured on the tag or on the dial object during the engineering phase. The scale appears "wrong" in the editor canvas but renders correctly once the project is loaded onto the panel and the runtime starts. This is expected behavior, not a configuration defect, and is documented in the SIMATIC HMI WinCC Unified Engineering V17 manual (article ID 109794204). This reference explains the engineering-versus-runtime rendering model, how to configure the four configurable limit values, how to map color bands, and how the same engineering concept maps onto AVEVA InTouch, AutomationDirect C-more, and Rockwell PanelView Plus analog objects for comparison.
Background: HMI Analog Dial Architecture
An analog dial on a Siemens HMI is composed of three decoupled layers:
- Value source — an HMI tag or PLC process tag that supplies a numeric value (INT, REAL, DINT, WORD). Tag scaling (raw low / raw high → engineering low / engineering high) is performed at the tag, not at the dial.
- Range mapping — the dial object's minimum and maximum display range, used to position the needle and to scale the visible arc.
- Limit / band rendering — up to four configurable limit values (Upper 2, Upper 1, Lower 1, Lower 2) that subdivide the range into five zones, each independently colorable.
The WinCC Unified runtime computes the needle angle and the colored arc segments on every tag update using the current PLC value. The engineering canvas, by contrast, has no live value to display when the editor is closed; it shows a neutral preview of the dial geometry, often with the default full range (0 to 100 % or 0 to 27648 for raw tags). This is the root cause of the apparent mismatch reported by integrators on first commissioning.
Configuring Dial Range Limits in WinCC Unified V17
The dial (and the slider, bar, and trend companion controls) live under Controls → Display and Visualization → Gauge in the WinCC Unified toolbox. Once placed on a screen, the properties relevant to range and color are grouped in three categories in the Properties pane:
| Property group | Property | Default | Meaning |
|---|---|---|---|
| Miscellaneous | Minimum value | 0 | Lower needle stop; arc starts here. |
| Miscellaneous | Maximum value | 100 | Upper needle stop; arc ends here. |
| Miscellaneous | Upper 2 limit | 90 | High-high alarm threshold; red zone upper bound. |
| Miscellaneous | Upper 1 limit | 75 | High alarm threshold; amber/yellow zone. |
| Miscellaneous | Lower 1 limit | 25 | Low alarm threshold; amber/yellow zone. |
| Miscellaneous | Lower 2 limit | 10 | Low-low alarm threshold; red zone lower bound. |
| Appearance | Color (Upper 2 zone) | Red | Arc fill between Upper 1 and Upper 2. |
| Appearance | Color (Upper 1 zone) | Yellow | Arc fill between Lower 1 (or Min) and Upper 1. |
| Appearance | Color (Normal zone) | Green | Arc fill between Lower 1 and Upper 1. |
| Appearance | Color (Lower 1 zone) | Yellow | Arc fill between Lower 2 and Lower 1. |
| Appearance | Color (Lower 2 zone) | Red | Arc fill between Min (or Lower 2) and Lower 2. |
Per the WinCC Unified Engineering V17 manual (article ID 109794204), "You configure four limit values that limit the value range. Using the limits Upper 2 and Lower 2, you specify the maximum and minimum value for the value range." Limits are inclusive at the lower edge and exclusive at the upper edge. The order Lower 2 ≤ Lower 1 ≤ Upper 1 ≤ Upper 2 must be maintained; WinCC Unified will not auto-sort out-of-range entries, it will silently clamp the value to the closest valid bound.
Engineering View vs Runtime Rendering Behavior
This is the core of the apparent bug. WinCC Unified's editor previews the dial geometry using static defaults to keep the canvas responsive — it does not simulate the runtime color mapping for limits that have not yet been compiled into the runtime database. As a result:
- Editor preview: the arc is drawn as a single neutral color (typically gray or default palette). The limit values are present in the Properties pane but are not visualized on the dial face until the project is built and downloaded.
- Runtime (RT) on the panel or in RT simulation: the limit values, the arc segment boundaries, and the per-zone colors are all read from the compiled screen and re-rendered on every value change. This is the only point at which the colored scale becomes "correct."
If the colors still do not appear correctly after the runtime starts, the most common causes are:
- The Color scheme is set to Dark or to a custom scheme in which the configured zone colors are overridden by theme tokens.
- The tag has an additional scaling transformation that compresses the runtime value into a sub-range of the dial's configured min/max, pushing the needle outside the colored zones.
- The PLC tag is in an error state (substituted value or quality code Bad) so the dial holds the last valid position; a fresh download resolves this.
- The Auto Range equivalent checkbox on the connected trend (used in tandem with a dial/trend pair) is enabled, which overrides the manual minimum/maximum on the dial companion object.
Limit Value Color Bands Across Vendor Platforms
The same engineering-versus-runtime pattern appears across all major HMI suites. Knowing the equivalent property names reduces commissioning time when porting screens between platforms.
| Platform | Analog object | Min / Max property | Limit / band property | Live in editor? |
|---|---|---|---|---|
| Siemens WinCC Unified V17 | Gauge / Slider / Bar | Minimum value / Maximum value | Upper 2, Upper 1, Lower 1, Lower 2 | No — only at runtime |
| Siemens TIA Portal WinCC Comfort/Advanced | Gauge (under Controls) | Min / Max in Properties → Limits | Alarm limits via tag or "Appearance" color ranges | No — only at runtime |
| AVEVA InTouch HMI | Slider / Hist/Trend | Min / Max under Trend Properties → Range (auto-range toggle) | Pen color, threshold lines | Partial — trend area updates when Min/Max changed |
| AutomationDirect C-more EA9 | Numeric Entry / Bar Graph / Meter | Min Value / Max Value per object | Object color zones (High / Low band) | No — only at runtime |
| Rockwell PanelView Plus / FactoryTalk View | Numeric / Gauge (ME) | Min / Max under Configuration → Scale | Alarm thresholds via tag; color via Appearance | No — only at runtime |
The AVEVA InTouch manual page on range configuration states: "If the Auto Range checkbox is not selected, you can change the minimum and maximum range. The trend area will update the scale and the trend …" — confirming the same engineering-time vs runtime-time split. AutomationDirect's C-more object property dialog similarly exposes per-object Min and Max entry bounds, but the visible band positions update only when the screen is downloaded to the panel.
ISA-101.01 HMI Style Guidance for Range Indicators
ISA-101.01 (Human-Machine Interfaces for Process Automation Systems) provides normative guidance on how ranges, limits, and alarm thresholds should be displayed. The Rockwell Automation Process HMI Style Guide (publication PROCES-WP023) summarizes the standard's intent: "ISA 101.01 defines specifics of the HMI design process: an HMI philosophy, HMI style guide, and HMI toolkit … limit, range, or control and alarm thresholds." Key practical points to apply when designing a Siemens analog dial:
- Use color sparingly. Reserve red for the high-high / low-low band only. Amber is preferred for the warning bands. Green should dominate the normal operating range.
- Display the engineering unit on or near the dial face. Siemens allows the unit string to be bound to a text field next to the gauge.
- Show the live numeric value alongside the dial. ISA-101 calls this the "level of detail" principle — the operator should never have to read the needle to a precision the underlying measurement does not support.
- Match the dial range to the tag's engineering range exactly. If the tag is scaled 0 to 250 °C, the dial minimum and maximum must also be 0 and 250. Mismatches introduce a non-linear zone distortion that the runtime will faithfully render and that the operator will misread.
Step-by-Step: Configure a 0–250 °C Process Dial with Multi-Band Colors
The following procedure uses the example of a reactor temperature tag named ReactorTemp, scaled 0–250 °C, with the following process limits:
| Limit | Value | Meaning | Color band |
|---|---|---|---|
| Upper 2 (HH) | 230 °C | High-high trip threshold | Red |
| Upper 1 (H) | 210 °C | High alarm threshold | Amber |
| Lower 1 (L) | 40 °C | Low alarm threshold | Amber |
| Lower 2 (LL) | 20 °C | Low-low trip threshold | Red |
Prerequisites
- TIA Portal V17 or WinCC Unified Engineering V17 installed.
- HMI device configured (Comfort Panel, Unified Comfort Panel, or PC Runtime).
- PLC tag
ReactorTempof type REAL with scaling 0.0 → 0 °C, 250.0 → 250 °C already created in the HMI tag table. - Alarm classes for HH, H, L, LL already configured under HMI alarms → Analog alarms.
Procedure
- Open the screen editor and drag a Gauge control from Toolbox → Controls → Display and Visualization onto the canvas.
- In the Properties pane, expand Miscellaneous. Set Minimum value = 0 and Maximum value = 250. The dial preview arc will still appear neutral; this is expected.
- Bind the Process value property to the HMI tag
ReactorTemp. Confirm the binding by clicking the magnifier icon and selecting the tag from the dropdown. - Set Upper 2 limit = 230, Upper 1 limit = 210, Lower 1 limit = 40, Lower 2 limit = 20.
- Under Appearance, expand the Colors subsection. Assign:
- Upper 2 zone color:
#C00000(Siemens alarm red) - Upper 1 zone color:
#E97132(ISA-101 amber) - Normal zone color:
#00B050(ISA-101 green) - Lower 1 zone color:
#E97132(ISA-101 amber) - Lower 2 zone color:
#C00000(Siemens alarm red)
- Upper 2 zone color:
- Add a static text field next to the dial with content
°Cand bind its value to the sameReactorTemptag with one decimal place. - Compile the project (Project tree → HMI device → Compile → Software (all)).
- Click Start Runtime (F5). The simulator opens. Force
ReactorTempto 215 °C via the tag simulator; the needle should park in the amber upper band and the arc between 210 and 230 should render amber.
Verification Procedure
After downloading to the panel or running the simulator, perform the following checks before signing off the screen.
- Mid-scale test: force the tag to (Min + Max) / 2. The needle should center and the arc color in the normal zone should dominate.
- Upper 1 boundary: force the tag exactly to the Upper 1 limit. The needle should sit on the boundary between the green and amber zones. Increasing the value by the engineering unit's smallest increment must visibly shift the needle into amber.
- Upper 2 boundary: repeat at Upper 2 limit. The needle should sit on the green→amber→red boundary, with red filling the upper band.
- Below Lower 1, above Lower 2: confirm the lower amber band renders.
- Tag quality code: disconnect the PLC or force a bad quality on the tag. The dial must show the configured Quality bad state (typically grayed out) and must not freeze the needle in the last valid band — this is an ISA-101 requirement.
- Color-blindness check: using the operator's color-blindness profile (typically protanopia or deuteranopia simulators in the editor's accessibility tool), verify that the limit zones are still distinguishable. If they collapse to the same color, supplement with a text label (e.g., "HH", "H", "L", "LL") next to the dial.
Troubleshooting Matrix
| Symptom | Likely root cause | Diagnostic | Corrective action |
|---|---|---|---|
| Colored scale appears neutral in the engineering canvas | Editor preview does not simulate runtime limit rendering | Compare editor view with the same screen started in Runtime (F5) | No action needed — design-time preview is informational only |
| Colored scale appears neutral in Runtime | Compile error on the screen; runtime is using cached screen | Check the diagnostics buffer for compile warnings on the affected screen | Recompile the screen (right-click → Compile → Screen) and redownload |
| All zones render the same color | Color scheme is overriding the configured zone colors | Open the screen's Style → Color scheme property and check for Dark or custom theme | Switch to Light scheme or explicitly bind the zone colors in Appearance → Colors |
| Needle parks outside the colored zones | Tag scaling differs from dial min/max | Inspect tag scaling vs Minimum value / Maximum value | Align tag engineering low/high to dial minimum/maximum exactly |
| Lower 1 limit > Upper 1 limit accepted without warning | Editor silently clamps out-of-order entries | Export the screen XML and inspect the <Limits> node ordering | Re-enter limits in ascending order and recompile |
| Limit values not applied to a Trend companion | Trend Auto Range is enabled | Open the trend's Properties → Range dialog | Disable Auto Range and enter Min/Max manually — see AVEVA InTouch guidance on min/max range configuration for the equivalent pattern |
| Dial freezes after a network glitch | Tag quality went Bad, runtime holds last value | Inspect tag quality in HMI tag diagnostics | Configure the Substitute value behavior for Bad quality and add a connection-watchdog tag |
| Color changes when switching themes | Zone colors not bound, only configured by theme token | Inspect Appearance → Colors binding source | Bind each zone color to a constant color expression instead of a theme token |
Best Practices for Range Limit Configuration
- Bind the four limits to constants, not literal numbers. Define ReactorTemp_HH, ReactorTemp_H, ReactorTemp_L, ReactorTemp_LL as internal HMI tags. This lets you change thresholds without editing every screen and keeps the alarm classes synchronized.
- Keep dial min/max equal to the tag engineering range. A common error is configuring the dial to 0–100 % while the underlying tag is 0–250 °C. The runtime will faithfully render the band colors but the needle will saturate at 100, masking process excursions above 100 °C.
- Make limits inclusive at the lower edge only. Document this in the HMI philosophy so that operators understand that a value exactly at Upper 1 limit is still in the green band but a value one engineering unit above is in amber.
- Run a color-blindness audit on every screen. Per ISA-101, color is supplementary — the textual alarm state (HH/H/L/LL) on the dial or its adjacent numeric display is the primary cue.
- Test the screen in Runtime, not in the editor. Set up a screen-test checklist that explicitly states "verify limit color in Runtime with simulated tag value X."
- Document the editor-preview limitation in your HMI style guide. Many first-time integrators raise the same defect ticket. A single line in the style guide — "Analog dial color bands are rendered only at runtime — see WinCC Unified Engineering V17 manual, article ID 109794204" — eliminates recurring questions.
Cross-Platform Porting Notes
When migrating a screen from Siemens WinCC Unified to another platform, translate the limit properties as follows:
| WinCC Unified V17 property | AVEVA InTouch equivalent | AutomationDirect C-more equivalent | Rockwell FactoryTalk View ME equivalent |
|---|---|---|---|
| Minimum value | Trend Min / Slider Min | Object Min Value | Scale Min |
| Maximum value | Trend Max / Slider Max | Object Max Value | Scale Max |
| Upper 2 / Upper 1 / Lower 1 / Lower 2 | Threshold lines (up to 4) on the trend | Hi-Hi / Hi / Lo / Lo-Lo color band settings | Alarm limits on the tag + Gauge pen color |
| Zone color | Pen color on the threshold line | Color zone property | Pen color in Appearance |
The AutomationDirect C-more numeric entry object's Min/Max behavior is documented in the C-more object property reference. The same editor-versus-runtime gap applies: configured limits update the panel display only after the project is downloaded.
FAQ
Why does my Siemens HMI analog dial show a flat gray scale in the editor even though I set Upper 2, Upper 1, Lower 1, and Lower 2 limits?
The WinCC Unified editor previews the dial geometry but does not simulate runtime limit rendering. Start the runtime (F5) or download to the panel and the configured color bands will appear. See the SIMATIC HMI WinCC Unified Engineering V17 manual, article ID 109794204.
How do I bind the four limit values so I do not have to edit every screen when a threshold changes?
Create four internal HMI tags (e.g., ReactorTemp_HH, ReactorTemp_H, ReactorTemp_L, ReactorTemp_LL) under HMI tags → Default tag table, then bind each dial's Upper 2 / Upper 1 / Lower 1 / Lower 2 limit property to the corresponding tag. Change the tag value once and every screen updates after a recompile.
My dial's needle parks outside the colored zones after I set Min = 0 and Max = 250. What is wrong?
The PLC tag is probably scaled differently (for example 0–100 % or 0–27648 raw). WinCC Unified displays the raw value, so a tag at 90 % will appear as 90 on a 0–250 dial — the needle sits at 36 % of the arc, well below the Lower 1 zone. Set the dial's Minimum value and Maximum value to match the tag's engineering low and high exactly.
Do the four limit colors change when I switch the screen color scheme between Light and Dark?
Yes, if the colors are bound to theme tokens rather than explicit color constants. To prevent theme-dependent shifts, open Appearance → Colors and bind each zone color to a literal RGB value (for example #C00000 for the HH red band). Constant bindings survive theme switches.
Is the colored scale on a Siemens dial acceptable as the primary operator cue for an HH trip?
No. ISA-101.01 treats color as a supplementary cue only. Always pair the colored band with a text label ("HH", "H", "L", "LL"), an audible alarm, and a hard-wired PLC interlock for functional safety. The Rockwell Automation Process HMI Style Guide (publication PROCES-WP023) summarizes this guidance.