HMI screens design

L

Thread Starter

Luca Gallina

After arguing with a manufacturer about what imho was a bad HMI design, I wonder if there are any practical design guidelines applied to simple automation HMIs (not DCS, not large SCADA screens)

my questions:
- how do you differentiate a data input field from a pure display field (e.g. box border/not border, different font/background color)

- how do you differentiate states (off/on/warning/alarm)

- when do you use light/dark backgroud, high/low contrast colors

a reasonable (to my eyes) design:
- numeric read-only fields = no border

- numeric read/write fields = boxed with a border

- numeric read-only values not relevant for the operator but useful for troubleshooting = black on gray background

- values or states relevant for the operator (normal data entry) = black on white background

- devices or I/O OFF/ON states = gray and green

- non-blocking abnormal states/values/conditions (machine is still allowed to run) = yellow

- blocking alarms/conditions = red

personally I find also interesting aviation glass-cockpit colors, where roughly:
- background is dark
- magenta are setpoints
- green are feedbacks
- cyan are states/selections
- white are information
- yellow are warnings
- red are alarms

your valuable opinions are welcome ;-)
 
B

Bruce Durdle

It doesn't really matter what the application is - the basic rules for HMI are much the same.

1. Be consistent - use the same colours/flashing/other features for the same meanings throughout (including other connected systems).

2. Be economical - use the minimum number of colours (and don't forget to allow for colour blindness).

3. The background of the display should be similar in overall luminosity to the environment it is being viewed against.

4. Data entry or operator adjustment points need to be clearly distinguished from data items that are not adjustable.

5. A healthy system should give a clean screen with no flashing, moving, or other distracting features, and relatively neutral colours.

6. If the operator can't do anything with the data, don't display it - in your context, use a separate window for the maintenance stuff.
 
Top