Deploying custom HMIs with the right development tool

Selecting an HMI development tool with the right features helps developers speed up their process and minimize errors.

By Daniel Hong July 9, 2024
Courtesy: Aerotech

 

Learning Objectives

  • Understand how custom human-machine interfaces (HMIs) can improve with the right development tool.
  • Learn about HMI flexibility and the different aspects it involves.
  • Understand how security and monitoring user access are critical.

HMI design insights

  • Selecting an HMI tool with the right features speeds up development, minimizes errors, and meets varied user needs effectively.
  • Modular HMI tools allow developers to focus on specific areas, facilitating changes without introducing system errors.

Creating custom human-machine interfaces (HMIs) for precision automation and motion control systems allows developers to deliver the most targeted and specific user experience. Unfortunately, building custom HMIs from scratch can be tedious and time-consuming. When hard deadlines are a real concern, it can seem necessary to compromise and settle for a more general “one size fits all” development tool solution. This often results in an interface that is ill-suited to individual users and challenging for new users who are onboarding. Fortunately, as HMI development tools evolve their increased capabilities mean compromise is not always necessary. By selecting an HMI development tool with the right features, developers can speed up their process and minimize errors while meeting the needs of various end users.

Speeding up HMI creation time

Certain HMI tool features can speed up development. When the tool is tightly integrated with the user’s preferred automation or motion control environment, users save time by quickly accessing “baked in” controller features. These features often include error handling or callbacks from the controller to the application layer. Other controller programming features that can add power to the developer’s machine control include libraries, functions with returns, structures, complex arrays and the ability to protect the developer’s intellectual property. Accessing these programming capabilities from HMI features like software pushbuttons and other operator inputs is key to delivering a powerful solution. In addition, HMI development tools designed for precision automation and motion control applications may offer benefits such as direct control of motion axes, inspection and visualization of data system generated data, I/O status monitoring and simply integration of other automation devices like cameras and sensors.

Choosing tools that take a modular approach can also save development time.  The modular approach is a powerful and familiar one for developers. Modular approaches allow users to focus on specific areas and features of their HMI one by one. Developers can make changes in specific parts of the HMI without introducing errors in other parts of the system. Although some HMI development tools tout module quantity, it is important to investigate how well the supplied modules meet an application’s needs. In addition, the tool’s available preconfigured layouts will define the variety of HMI layouts that can be delivered to users and how quickly that can be done. This is another case where complete flexibility can introduce confusion and a poor user experience. It is best to find a tool that enables clean, easy-to-understand HMI layouts rather than crowded, confusing ones. Figure 1 shows an example of an easy-to-use, drag-and-drop approach to building an HMI.

Figure 1: A custom drag-and-drop module approach in Aerotech’s Automation1 MachineApps. MachineApp HMI development environment is integrated with the Automation1 controller to issue real-time level commands.

Figure 1: A custom drag-and-drop module approach in Aerotech’s Automation1 MachineApps. MachineApp HMI development environment is integrated with the Automation1 controller to issue real-time level commands. Courtesy: Aerotech

Applying a brand standard can take time. Some tools make it easy to add a color scheme, icons and background graphics, which speeds up creation time for HMIs that promote the user’s brand. Saving this time allows developers to focus on other critical parts of the development process.

Having flexibility to deploy the right HMI solution

Some developers have not adopted a more structured HMI development tool because they’re concerned about losing flexibility. However, that concern might be misplaced. What matters most is whether a tool has the features and flexibility to deliver the required HMI. An increase in variety and toolsets among more structured HMI tools has increased the likelihood that a better solution is available. Because tools will be focused on different markets and applications, developers should look for an HMI development solution that includes the right set of modules and module configurations. For precision automation and motion control applications, machines and systems often require cameras, data visualization, I/O monitoring and a series of custom functions often accessed by operators through simple pushbuttons and message input boxes. User communication also is important in this application, so the ability to display messages, warnings and other custom indicators is desirable in an HMI. Therefore, a preferred tool for precision automation and motion control will have standard modules for items such as camera integration, 3D plotting, I/O monitoring, programmable buttons and operator indication.

Each module’s flexibility with access also is important.

For example, it might be necessary to restrict operator access for certain program functions. An HMI mostly made up of pushbuttons and a restricted data visualization tool may work in this scenario (Figure 2).

Figure 2: A custom HMI for a general operator. Restricting functionality reduces overall onboarding time by simplifying the process and decreases users’ opportunities to make errors.

Figure 2: A custom HMI for a general operator. Restricting functionality reduces overall onboarding time by simplifying the process and decreases users’ opportunities to make errors. Courtesy: Aerotech

A power user, however, may require a different HMI with more features and functionality. An example HMI for this user might include the ability to access programming modules, edit data visualization tool views, track I/O and jog the machine axes (Figure 3).

Figure 3: A custom HMI for a power user. A user with access to this HMI page would be expected to run and debug several processes on the machine.

Figure 3: A custom HMI for a power user. A user with access to this HMI page would be expected to run and debug several processes on the machine. Courtesy: Aerotech

Module customizations add another key benefit by restricting what users can do and guiding them to the right actions. Tools like this give developers the flexibility to deploy different module and HMI configurations — such as data visualizers that only show certain types of feedback or jog pads restricted to specific axes — to different operator roles.

For example, developers can create an HMI that guides users down the intended path specific to the needs of the user — such as turning parts of the HMI on or off under certain conditions. With customizable buttons and indicators, developers can enable functionality specific to the needs of the user at any given state in their process.

HMI developers’ needs are broad and while pre-canned modules are one possible way to fill them, a hybrid interface of custom modules and standard modules may be more useful. HMI tools that allow developers to write custom modules give another layer of flexibility without sacrificing the HMI tool’s other benefits. Those custom modules can be delivered in various ways. In the most flexible approach, the developer creates modules in .NET — enabling full customization. When comparing HMI tools, it is worth researching how customizations are handled — some tools only include pre-canned software tools that may not enable integration of third-party tools.

Restrict HMI access to users based on their operational role

While tools such as state-based control and editable modules allow developers to guide users to the correct method of operating a machine, they are unable to prevent users from meddling with tools they should not be accessing. Even without malicious intent, users with unnecessary power can take actions that lead to catastrophic results. When evaluating the strength of an HMI tool’s access control capabilities, developers should consider whether they can restrict their HMI users to specific HMI capabilities based on their focus area, as this mitigates risks (Figure 4).

Figure 4: Access Control within Automation1. This interface is password protected and allows administrators to restrict which MachineApps HMI pages are visible to others.

Figure 4: Access Control within Automation1. This interface is password protected and allows administrators to restrict which MachineApps HMI pages are visible to others. Courtesy: Aerotech

Access control may take on the form of password protection, ID verification or third-party authentication applications. Restricting proper access helps developers prevent machine downtime and decrease the likelihood of technical experts having to get involved due to a preventable user error.

Custom HMIs made faster, simpler

Engineering teams can manage design and development tradeoffs by using HMI development tools that take advantage of custom modules and access control. Machine builders should not give up on having a custom HMI for each machine or system they deploy. With the right tools, it is possible to improve a machine’s HMI and help end users reduce errors and work faster.

Daniel Hong is a controls product manager at Aerotech. Edited by Chris Vavra, senior editor, Control Engineering, WTWH Media, cvavra@wtwhmedia.com.

MORE ANSWERS

Keywords: human-machine interface, HMI, custom HMI

ONLINE

See additional HMI, OI stories.

CONSIDER THIS

How can custom HMIs improve your operations management?


Author Bio: Daniel Hong is a controls product manager at Aerotech. His experience in mechanical and software engineering includes roles in marketing and operations for a machine learning NLP startup and consulting for Hopkins Hospital and NATO. Hong earned his master’s degree in engineering management and a bachelor’s degree in mechanical engineering from Johns Hopkins University.