Как спроектировать промышленный HMI
Промышленный HMI должен помогать оператору понять состояние машины, выполнить действие без двусмысленности и правильно отреагировать на отклонение. Большой сенсорный экран сам по себе не делает интерфейс удобным, а физическая кнопка не гарантирует безопасность. Нужны контекст работы, перчатки, освещение, вибрация, загрязнение, аварийные сценарии и последствия ошибочного касания. Хороший HMI отделяет обычное управление от safety-функций, показывает причинно-следственную картину и сохраняет работоспособность при частичных отказах. Проектирование начинают с задач оператора, а не с графического макета.
Наблюдайте реальную работу
Опишите роли: оператор, наладчик, сервис, технолог. Для каждой — частые действия, редкие критичные операции, требуемые параметры и ответственность. Понаблюдайте за рабочим местом: расстояние до панели, угол обзора, перчатки, шум, освещение, доступ одной рукой и возможность остановить машину.
Сценарий «изменить уставку раз в смену» отличается от ручного jog каждую минуту. Частые моторные действия заслуживают физического органа или устойчивой dedicated zone, а редкие настройки можно оставить в меню.
Сенсорный экран или физические кнопки
Touch удобен для гибкой навигации, графиков и контекстных функций. Он позволяет обновлять интерфейс без изменения панели. Недостатки — отсутствие тактильной обратной связи, зависимость от загрязнения/воды/перчаток и риск промаха при вибрации.
Физические кнопки дают ощущаемый ход, могут использоваться вслепую и имеют фиксированное назначение. Они подходят для start/stop, jog, acknowledge и часто используемых действий. Комбинированная панель обычно надёжнее: экран для информации, кнопки/переключатели — для критичных частых команд.
Аварийный останов — не экранная кнопка
E-stop относится к safety circuit и должен работать независимо от UI software. Красная зона на touchscreen не заменяет механическое устройство с требуемыми свойствами. HMI может показать причину остановки и инструкцию восстановления, но не является единственным защитным каналом.
Обычный stop тоже стоит отделить от reset и start. После аварии восстановление не должно автоматически запускать движение.
Выберите сенсорную технологию
Резистивный экран реагирует на давление и работает со многими перчатками/стилусом, но имеет меньшую прозрачность и ресурс поверхности. Projected capacitive поддерживает мультитач и яркое стекло, однако вода, толстые перчатки и EMI требуют настройки контроллера и electrode design.
Проверьте touch через фактическое cover glass, толщину, клей и перчатку. Grounding, display noise и charger/DC/DC могут создавать ghost touches. Тест проводят при воде, конденсате и разных положениях руки.
Размер элементов и предотвращение ошибки
Touch targets рассчитывают для расстояния и перчаток, оставляют separation между противоположными действиями. Опасное действие требует подтверждения, hold-to-activate или hardware interlock в зависимости от риска. Не размещайте «Пуск» и «Стоп» как одинаковые маленькие кнопки рядом.
Показывайте результат команды: нажатие, принято контроллером, выполнено механизмом — три разных состояния. Spinner не доказывает движение, а зелёная подсветка кнопки должна иметь однозначный смысл.
Цвет, форма и текст
Не кодируйте состояние только цветом: добавляйте иконку, текст и форму. Учитывайте color vision deficiency и монохромные условия. Красный резервируют для опасности/аварии, жёлтый — предупреждения, зелёный — нормального/разрешённого состояния в соответствии с принятой системой.
Текст должен называть объект и действие: «Низкое давление масла насоса P-12» лучше «Ошибка 37». Код полезен для сервиса, но не вместо объяснения оператору.
Иерархия тревог
Alarm должен требовать реакции. Если система выдаёт сотни повторов, оператор перестаёт различать важное. Для каждой тревоги задайте priority, cause, consequence, recommended action, latching и acknowledgement. Событие, предупреждение и авария — разные категории.
Подавляйте производные alarms, когда известна корневая причина. При отключении общего питания десятки датчиков не должны затмить сообщение о потере шины. История хранит время появления, acknowledgement и возврата.
Обзорный экран
Первый экран показывает состояние процесса, ключевые отклонения и доступ к деталям, а не логотип и декоративную анимацию. Используйте position и grouping для структуры установки. Постоянно движущиеся элементы привлекают внимание и должны быть оправданы.
Тренды показывают контекст до/после alarm. Для аналогового параметра полезны current value, units, normal range, limits и quality flag.
Работа при отказе связи
UI должен отличать ноль от недоступного значения. При timeout показывайте stale/unknown, timestamp последнего обновления и affected scope. Нельзя оставлять старое зелёное состояние без маркировки.
Команды имеют unique ID/sequence и подтверждение PLC. После восстановления связи HMI не должен повторять старую команду самопроизвольно.
Роли, вход и журнал
Оператору доступно управление, технологу — уставки, сервису — диагностика. Используйте least privilege, timeouts и audit log изменений. Общий пароль на наклейке не обеспечивает accountability.
Критичные уставки проверяют по диапазону и требуют отображения прежнего/нового значения. Если устройство offline, UI не должен создавать иллюзию применения настройки.
Аппаратная среда
Проверьте IP фронта, UV, химические вещества, температуру, condensation, удар и вибрацию. Кабель touch/display, разъём и sealing входят в system IP. Яркость выбирают по освещению; ночной режим не должен ослеплять.
EMC-тест включает touch false activation, display corruption и reset. Watchdog/recovery должны вернуть HMI без потери безопасного состояния машины.
Проведите сценарное юзабилити-тестирование
Подготовьте задания, а не вопросы о вкусе: найти причину остановки, изменить уставку, восстановить связь, выполнить ручной jog и передать смену. Наблюдайте время, ошибки, возвраты назад и подсказки между операторами. Тестируйте новичков и опытных, в рабочих перчатках, при шуме и ограниченном освещении. Интерфейс, понятный автору, может быть непонятен пользователю без контекста.
Для alarm flood воспроизведите каскад из десятков событий и проверьте, находит ли оператор корневую причину за заданное время. Для destructive action моделируйте двойное касание, удержание и потерю связи после команды. Результаты превращают в measurable acceptance criteria.
Версии и удалённая поддержка
HMI project, PLC tag map, translations и graphic assets выпускают одной версией. Несовместимая версия не должна silently отображать неверные tags. Remote access включают по ролям, журналируют и отделяют от safety logic. Screenshot/log экспорт должен скрывать секреты, но сохранять timestamps, alarm history и software versions для диагностики.
Практический пример
Панель упаковочной машины имеет экран 7 дюймов, физические Start/Stop/Reset, selector Auto/Manual и отдельный E-stop. Экран показывает overview линии, очередь alarms и контекстные настройки. Jog доступен только в manual mode и требует удержания физической кнопки при безопасных условиях.
В water/glove test проверяют touch, а при потере PLC все process values становятся серыми с отметкой «нет связи»; команды блокируются. Alarm test моделирует каскад отказов и проверяет, что корневая причина остаётся первой.
Примеры из каталога ChipBaza
TSC2007IPWR — пример контроллера четырёхпроводного резистивного touch screen. BBT30-ABLFS-K06 и pbn-aela-1g-220 — примеры панельных органов управления/индикации из ранее проверенной выдачи. Они иллюстрируют комбинированный HMI; конкретные оператор, контактный блок и напряжение подсветки проверяются отдельно.
Контроллер touch не определяет качество всей панели: нужны sensor stack, дисплей, cover, firmware calibration и environmental tests.
Что закрепить в спецификации панели
Фиксируйте display brightness/temperature/lifetime, touch technology/controller/firmware, cover glass/coating, sealing, кнопки/контактные блоки и supply. Для каждой аппаратной кнопки храните electrical category и function mapping. Alternate display/touch проходит optical, glove/water, EMC и UI timing tests; совпадение диагонали/разъёма недостаточно. Производственный тест проверяет все touch zones, stuck/ghost touches, подсветку, buttons/indicators и связь с контроллером.
Отдельно задайте допустимые dead pixels, равномерность подсветки, minimum luminance после старения и readable contrast при целевом освещении. Переводы проходят проверку на обрезку текста и однозначность терминов. Сервисная запасная панель должна содержать совместимую версию проекта или безопасно загрузить её при установке; иначе одинаковая механика может показать неверные теги PLC.
Проверка выполняется для каждой поддерживаемой локализации и роли пользователя.
Типовые ошибки
- переносить safety-функцию на touch screen;
- проектировать без перчаток, воды и вибрации;
- кодировать состояние только цветом;
- показывать старое значение как актуальное при потере связи;
- использовать alarm для каждого события;
- объединять reset и start;
- менять уставку без audit trail;
- тестировать только happy path на столе.
Чек-лист HMI
- роли и ключевые задачи подтверждены наблюдением;
- частые/критичные команды получили подходящий физический control;
- touch испытан через серийное стекло и перчатки;
- alarms имеют priority, cause и action;
- unknown/stale state визуально отличается;
- команды подтверждаются контроллером;
- роли, timeout и журнал изменений настроены;
- проведены environmental, EMC и fault-recovery тесты.
Источники для технической проверки
Параметры и ограничения сверяйте с актуальной документацией производителя для полного артикула и нужного исполнения.
Следующий шаг
Проверьте артикулы и количество до отправки заявки
Загрузите спецификацию в BOM-сервис или пришлите полный код производителя менеджеру. Если точное совпадение не доказано, позиция останется на ручной проверке.