Three tools for rapid HMI/SCADA development

Templates, user-defined types (UDTs) and parameterized pop-ups are three tools that can help build HMI/SCADA projects as swiftly as possible.

By Jennifer Faylor May 12, 2023
Courtesy: Inductive Automation

HMI and SCADA insights

  • The three tools for HMI/SCADA systems are templates, UDTs and parameterized pop-ups.
  • Use these tools to create projects with more precision and help future-proof their applications.
  • Deliver projects faster and meet urgent deadlines with time to spare.

Time is one of the most valuable resources in the world, and it is a major factor when it comes to building HMI and SCADA systems. There are helpful tools that speed up development so you can deliver projects faster and meet urgent deadlines with time to spare.

Templates, user-defined types (UDTs) and parameterized pop-ups are three powerful ways to save both time and effort during the initial HMI/SCADA development phase, as well as when making changes to a system later on. These tools can help you create projects with more precision and help future-proof your applications. Let’s dive into what these tools are and in which situations you’d use them.

Benefits of using templates

A template is a component’s graphic that you build once, and you can make instances of it to represent components that look the same but are driven by different data. The master template is the original template where you define the graphics. Template instances are the individual uses of that master template. When you modify the master template, it automatically modifies all template instances as well.

Three common types of templates are static templates, variable templates and indirect templates.

1. Static templates

This is the most basic kind of template. Static templates are unchanging, always doing the same exact thing, so they’re usually not parameterized. Parameterization is the process of exposing variables in the definition of an object (such as a template or a UDT), so that it can be more generic or universal while the variables (parameters) let you specialize the object as needed, enabling its reuse.

You only need to configure a static template once, and then you can use it repeatedly throughout different areas of your project. A static template is a great choice if you want to define a graphical display in one location for a single function, and it doesn’t need any data behind it.

If you need a button to navigate to your project’s home screen, for example, you could create a simple button with a static template and use it as many times as you like. In the future if you want to modify that button to alter its color,  you’d make the change in one location, and its color would change everywhere it appears in the project.

2. Variable templates

Variable templates offer more functionality compared to static templates, as they allow you to create custom components. These templates are most often graphics with only one parameter and they expose a simple property that can link to any source of data. You can link them to a query or a calculation through an expression for instance. With a variable template, you can create a component and use it in any way imaginable.

This type of template is a good choice if you want a graphic to display a value that fluctuates (like temperature, for example). And thanks to the versatility of variable templates, with the ability to link into anything at all, they’re a good pick if you don’t know exactly how you will use the template.

3. Indirect templates

This type of template points indirectly to a set of tags via indirect binding. One method of making a template indirect is to use simple parameters, like a string or an integer. These templates come in handy when you need to make a specific thing that you’d like to use indirect linking on. It’s important to note that for indirect templates to function properly, consistency is key – you need to structure data the same way every time.

Indirect templates are the right choice when you know exactly how you will be using the template, or when you want to make something specific that requires a consistent data structure. With indirect linking, you can have a single template for all your sensors.

Replicate structures with UDTs

UDT are also known as complex tags. This time-saving tool enables an object-oriented approach, and you can use them to quickly create robust systems. UDTs are best with repetitive structures, and you should use them when you plan on having multiple instances.

If you have numerous compressors with similar values, for example, you can create a UDT definition for a compressor with all those shared tags. Whenever you need to add another compressor, you simply have to pass in the compressor number, making it fast and easy to scale out a project.

UDTs are a way to make a parameterized data template. Once you’ve defined the tag structure, you can create an instance as if it were a single tag. Every instance of a UDT will conform to the UDT’s structure, and if you make a change to the definition, all instances automatically inherit it. You can customize each instance by overriding values from the definition.

Parameterized pop-up benefits

One final tool for quickly developing projects is parameterized pop-ups. Parameterized pop-ups allow you to pass parameters from a window into a pop-up window. The pop-up window can display relevant data using whichever parameters you pass in.

You might use parameterized pop-ups if you have multiple pieces of equipment, say several different valves, and want to display their diagnostic information in a pop-up window. You can create one single pop-up window to show data from different valves, depending on which is selected at the time. In order to make this magic happen, though, the pop-up window needs to have custom properties that receive the parameters. By passing in parameters, you can change what the pop-up window does or what it points to.

Every control systems engineer should have these three tools in their toolbox to build HMI/SCADA projects as swiftly as possible. With the countless hours you’ll save using templates, UDTs, and parameterized pop-ups, you’ll have more time to spend on things like artfully designing your SCADA system instead.

– Inductive Automation is a CFE Media and Technology content partner.

Original content can be found at Inductive Automation.

Author Bio: Jennifer Faylor is a content writer at Inductive Automation, the creator of the Ignition industrial application platform for SCADA, HMI, IIoT and more.