Control Expert · Track 13 · Harmony HMI

The Face of the Modicon

Schneider's operator story: Harmony panels (the family once called Magelis) designed in Vijeo Designer or its successor EcoStruxure Operator Terminal Expert, talking to the Modicon over Modbus TCP. The defining habit of this world: the HMI reads located registers%MW addresses — so the PLC's register map IS the contract between program and screen.

🖥️ Harmony ST6🧰 Vijeo / EOTE🔢 %MW over Modbus
01 · A Harmony panel, live

The screen reads registers, the PLC owns the logic

A Harmony ST6 screen for a mix tank. Hold START — the panel writes %MW20.0, the Modicon's seal-in logic latches the pump, and the level in %MW10 climbs. Past 85 % the PLC raises the alarm bit and the banner takes over. Then flip to 🔧 Design mode and see what every widget really is: a graphic bound to a register address.

MIX TANK 3--:--
▮ %MW10 (rTankLevel ×10)
32.0 % # %MW10 · scale ÷10
PUMP RUNNING ● %MW21.0 (bPumpRun)
⬓ momentary → %MW20.0 / %MW20.1
HARMONY ST6 · 10" · MODBUS TCP → M340

Modicon M340 · located registers (the HMI contract)

%MW20.0bHMI_StartPB0
%MW20.1bHMI_StopPB0
%MW21.0bPumpRun0
%MW10iTankLevel_x10320
%MW30.0bALM_HiLevel0

Note %MW10 = 320 for 32.0 %: Modbus carries integers, so the PLC publishes level ×10 and the panel divides by 10 for display. The scaling convention is part of the contract — document it or suffer.

runtime — press the buttons drain valve is always open a little — stop the pump and the level falls

Why the register map matters: unlike tag-based ecosystems, a classic Modbus HMI knows nothing about your program's variables — only addresses. In Control Expert you locate the variables that face the HMI (bPumpRun AT %MW21.0… style declarations or the data editor's Address column), freeze that map, and treat changes to it like API changes. Modern escape hatch: enable the M580's data dictionary and EOTE/SCADA can browse symbolic names directly — the map ritual disappears, at the cost of CPU memory and a newer toolchain.

02 · The Schneider map

Panels, tools & the rules of good screens

🖥️ Harmony panels (ex-Magelis). The hardware family: GTO/STO basic, ST6/STW6 current touch panels, GTU modular high-end. One panel, one machine, runtime downloaded from the design tool.

🧰 Vijeo Designer → EOTE. Vijeo Designer is the long-serving design tool; EcoStruxure Operator Terminal Expert is its successor for ST6/STW6 with vector graphics and symbolic variable import. Plant-wide SCADA is a different product tier (AVEVA / Plant SCADA / Citect).

🔢 The %MW contract. Locate HMI-facing variables at fixed %MW addresses, group them in blocks (inputs from HMI, status to HMI, alarms), and never reshuffle a shipped map. Modbus has no types — booleans are word-bits, reals are 2-word conventions, scaling is yours to define.

Logic lives in the PLC. Same law as every brand: the panel's momentary buttons pulse bits; the seal-in, the alarm compare, the interlocks live in Control Expert. If comms drop, the Modicon must decide — never the screen. And safety functions never ride the HMI at all.

03 · Check yourself

The level reads 3200 %

A new panel shows the tank at 3200 %. The PLC's %MW10 holds 320, and the old panel displayed 32.0 %. What happened?