matlab-build-industrial-hmi

Build ISA-101-aligned SCADA/HMI dashboards in MATLAB App Designer for industrial process monitoring.

995|122|Updated Apr 3, 2026
One-click install
npx skills add https://github.com/matlab/matlab-agentic-toolkit --skill matlab-build-industrial-hmi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: matlab-build-industrial-hmi
Source: https://github.com/matlab/matlab-agentic-toolkit/tree/main/skills-catalog/test-and-measurement/matlab-build-industrial-hmi
Command: npx skills add https://github.com/matlab/matlab-agentic-toolkit --skill matlab-build-industrial-hmi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Wrapping OPC UA, Modbus, MQTT, or OSI PI monitoring scripts into an operator-facing dashboard requires deep knowledge of industrial HMI conventions (ISA-101 gray-field design, alarm management, write safeguards) that general-purpose app builders do not enforce, leading to unsafe or unreadable operator screens.

Core Features & Use Cases

  • ISA-101-compliant dashboard generation: Produces gray-field App Designer apps with alarms shown at the data source, persistent alarm banners, latched acknowledge states, fixed-range trends, and confirm-before-write safeguards on every setpoint.
  • Multi-protocol live data wiring: Connects widgets to OPC UA subscriptions, Modbus polling timers, MQTT callbacks, and OSI/AVEVA PI Data Archive or PI Asset Framework clients using correct, release-aware API shapes.
  • Real App Designer output: Hands serialization to the matlab-build-app skill to emit a genuine .mlapp file, with a programmatic .m fallback when that skill is unavailable.
  • Use Case: An engineer has an OPC UA Explorer-generated script monitoring welding robot temperatures and asks for a plant dashboard; the skill classifies each node, picks gauges and trends, wires subscriptions, adds alarm bands and write confirmations, and produces a runnable operator app.

Quick Start

Ask your AI agent to wrap your OPC UA or Modbus monitoring script into a SCADA operator dashboard with alarms, trends, and setpoint controls using this skill.

Frequently Asked Questions about matlab-build-industrial-hmi

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a SCADA dashboard in MATLAB?

Use this skill to wrap an OPC UA, Modbus, MQTT, or PI monitoring script into an App Designer HMI. It classifies each node, selects widgets like linear gauges and animatedline trends, wires live data subscriptions, and produces a real .mlapp file or a programmatic .m app.

How do I connect an OPC UA script to a live MATLAB dashboard?

The skill uses the OPC UA subscribe() function with a data-change callback to push live node values into gauges, lamps, and trends. It handles both self-written 2-argument callbacks and the 3-argument vectorized callbacks generated by the OPC UA Explorer app.

Does this skill support OSIsoft PI or PI Asset Framework data?

Yes, it uses piclient for PI Data Archive (R2022a+) and afclient for PI Asset Framework (R2026a+) from Industrial Communication Toolbox. Trends are driven by polling timers since PI has no subscribe API, and writes route through the PI tag rather than AF attributes.

Why does my MATLAB HMI show dark widgets on a gray figure?

On a dark-themed MATLAB desktop, child widgets like gauges and tables inherit dark defaults even when the figure Color is set. The fix is constructing the uifigure with both Color set to the gray-field value and Theme set to light.

What MATLAB version and toolboxes are required for this HMI skill?

MATLAB R2023b or later is required because the core OPC UA pattern uses subscribe(), plus Industrial Communication Toolbox for OPC UA, Modbus, MQTT, and PI clients. Real .mlapp output via matlab-build-app needs R2025a or later.

When should I not use this industrial HMI skill?

Do not use it for general App Designer mechanics, consumer apps, lab utilities, or scientific GUIs, since its conventions target plant operators monitoring physical processes. For discovering OPC UA servers and browsing namespaces for the first time, use the matlab-use-opcua-client skill instead.